diff --git a/AUTHORS b/AUTHORS new file mode 100644 index 0000000..5da1e46 --- /dev/null +++ b/AUTHORS @@ -0,0 +1,3 @@ +The SF-team +Grupo formado en españa +www.soldiersatforum.com diff --git a/COPYING b/COPYING new file mode 100644 index 0000000..322cb19 --- /dev/null +++ b/COPYING @@ -0,0 +1 @@ +See LICENSE. diff --git a/ChangeLog b/ChangeLog new file mode 100644 index 0000000..533d6b9 --- /dev/null +++ b/ChangeLog @@ -0,0 +1,2 @@ +sfteam version 2.0.0 +10.09.2014 \ No newline at end of file diff --git a/GlobalActions.py b/GlobalActions.py new file mode 100644 index 0000000..4c5d05d --- /dev/null +++ b/GlobalActions.py @@ -0,0 +1,4 @@ +from Components.ActionMap import ActionMap + +globalActionMap = ActionMap( ["GlobalActions"] ) +globalActionMap.execBegin() diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..d511905 --- /dev/null +++ b/LICENSE @@ -0,0 +1,339 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Lesser General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + , 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. diff --git a/LICENSE.GPLv2 b/LICENSE.GPLv2 new file mode 100644 index 0000000..3912109 --- /dev/null +++ b/LICENSE.GPLv2 @@ -0,0 +1,340 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc. + 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Library General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + , 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Library General +Public License instead of this License. diff --git a/Makefile.am b/Makefile.am new file mode 100644 index 0000000..c01394c --- /dev/null +++ b/Makefile.am @@ -0,0 +1,21 @@ +SUBDIRS = include lib main data po tools + +ACLOCAL_AMFLAGS = -I m4 + +installdir = $(pkglibdir)/python +install_PYTHON = \ + Navigation.py NavigationInstance.py RecordTimer.py ServiceReference.py \ + keyids.py keymapparser.py mytest.py skin.py timer.py GlobalActions.py \ + e2reactor.py + +pkgconfigdir = $(libdir)/pkgconfig +pkgconfig_DATA = enigma2.pc + +metadir = $(datadir)/meta +meta_DATA = index-enigma2.xml +CLEANFILES = index-enigma2.xml + +EXTRA_DIST = lamedb + +index-enigma2.xml: $(top_srcdir)/tools/genmetaindex.py $(top_srcdir)/lib/python/Plugins/*/*/meta/plugin_*.xml + $(AM_V_GEN)$(PYTHON) $^ > $@ diff --git a/NEWS b/NEWS new file mode 100644 index 0000000..79280d0 --- /dev/null +++ b/NEWS @@ -0,0 +1,2 @@ +SF_TEAM +www.soldiersatforum.com \ No newline at end of file diff --git a/Navigation.py b/Navigation.py new file mode 100644 index 0000000..cb57ffe --- /dev/null +++ b/Navigation.py @@ -0,0 +1,147 @@ +from enigma import eServiceCenter, eServiceReference, eTimer, pNavigation, getBestPlayableServiceReference, iPlayableService, eActionMap +from Components.ParentalControl import parentalControl +from Components.config import config, configfile +from Tools.BoundFunction import boundFunction +from Tools.StbHardware import setFPWakeuptime, getFPWakeuptime, getFPWasTimerWakeup +from Tools import Notifications +from time import time, localtime +import RecordTimer +import Screens.Standby +import NavigationInstance +import ServiceReference +from Screens.InfoBar import InfoBar +from sys import maxint + +# TODO: remove pNavgation, eNavigation and rewrite this stuff in python. +class Navigation: + def __init__(self): + if NavigationInstance.instance is not None: + raise NavigationInstance.instance + + NavigationInstance.instance = self + self.ServiceHandler = eServiceCenter.getInstance() + + import Navigation as Nav + Nav.navcore = self + + self.pnav = pNavigation() + self.pnav.m_event.get().append(self.dispatchEvent) + self.pnav.m_record_event.get().append(self.dispatchRecordEvent) + self.event = [ ] + self.record_event = [ ] + self.currentlyPlayingServiceReference = None + self.currentlyPlayingServiceOrGroup = None + self.currentlyPlayingService = None + self.RecordTimer = RecordTimer.RecordTimer() + self.__wasTimerWakeup = getFPWasTimerWakeup() + if self.__wasTimerWakeup: + RecordTimer.RecordTimerEntry.setWasInDeepStandby() + if config.misc.RestartUI.value: + config.misc.RestartUI.value = False + config.misc.RestartUI.save() + configfile.save() + elif config.usage.startup_to_standby.value or self.__wasTimerWakeup: + Notifications.AddNotification(Screens.Standby.Standby) + + def wasTimerWakeup(self): + return self.__wasTimerWakeup + + def dispatchEvent(self, i): + for x in self.event: + x(i) + if i == iPlayableService.evEnd: + self.currentlyPlayingServiceReference = None + self.currentlyPlayingServiceOrGroup = None + self.currentlyPlayingService = None + + def dispatchRecordEvent(self, rec_service, event): +# print "record_event", rec_service, event + for x in self.record_event: + x(rec_service, event) + + def playService(self, ref, checkParentalControl=True, forceRestart=False, adjust=True): + oldref = self.currentlyPlayingServiceOrGroup + if ref and oldref and ref == oldref and not forceRestart: + print "ignore request to play already running service(1)" + return 1 + print "playing", ref and ref.toString() + if ref is None: + self.stopService() + return 0 + from Components.ServiceEventTracker import InfoBarCount + InfoBarInstance = InfoBarCount == 1 and InfoBar.instance + if not checkParentalControl or parentalControl.isServicePlayable(ref, boundFunction(self.playService, checkParentalControl=False, forceRestart=forceRestart, adjust=adjust)): + if ref.flags & eServiceReference.isGroup: + oldref = self.currentlyPlayingServiceReference or eServiceReference() + playref = getBestPlayableServiceReference(ref, oldref) + print "playref", playref + if playref and oldref and playref == oldref and not forceRestart: + print "ignore request to play already running service(2)" + return 1 + if not playref or (checkParentalControl and not parentalControl.isServicePlayable(playref, boundFunction(self.playService, checkParentalControl = False))): + self.stopService() + return 0 + else: + playref = ref + if self.pnav: + self.pnav.stopService() + self.currentlyPlayingServiceReference = playref + self.currentlyPlayingServiceOrGroup = ref + if InfoBarInstance and InfoBarInstance.servicelist.servicelist.setCurrent(ref, adjust): + self.currentlyPlayingServiceOrGroup = InfoBarInstance.servicelist.servicelist.getCurrent() + if self.pnav.playService(playref): + print "Failed to start", playref + self.currentlyPlayingServiceReference = None + self.currentlyPlayingServiceOrGroup = None + return 0 + elif oldref and InfoBarInstance and InfoBarInstance.servicelist.servicelist.setCurrent(oldref, adjust): + self.currentlyPlayingServiceOrGroup = InfoBarInstance.servicelist.servicelist.getCurrent() + return 1 + + def getCurrentlyPlayingServiceReference(self): + return self.currentlyPlayingServiceReference + + def getCurrentlyPlayingServiceOrGroup(self): + return self.currentlyPlayingServiceOrGroup + + def recordService(self, ref, simulate=False): + service = None + if not simulate: print "recording service: %s" % (str(ref)) + if isinstance(ref, ServiceReference.ServiceReference): + ref = ref.ref + if ref: + if ref.flags & eServiceReference.isGroup: + ref = getBestPlayableServiceReference(ref, eServiceReference(), simulate) + service = ref and self.pnav and self.pnav.recordService(ref, simulate) + if service is None: + print "record returned non-zero" + return service + + def stopRecordService(self, service): + ret = self.pnav and self.pnav.stopRecordService(service) + return ret + + def getRecordings(self, simulate=False): + return self.pnav and self.pnav.getRecordings(simulate) + + def getCurrentService(self): + if not self.currentlyPlayingService: + self.currentlyPlayingService = self.pnav and self.pnav.getCurrentService() + return self.currentlyPlayingService + + def stopService(self): + if self.pnav: + self.pnav.stopService() + self.currentlyPlayingServiceReference = None + self.currentlyPlayingServiceOrGroup = None + + def pause(self, p): + return self.pnav and self.pnav.pause(p) + + def shutdown(self): + self.RecordTimer.shutdown() + self.ServiceHandler = None + self.pnav = None + + def stopUserServices(self): + self.stopService() diff --git a/NavigationInstance.py b/NavigationInstance.py new file mode 100644 index 0000000..d2cc8a9 --- /dev/null +++ b/NavigationInstance.py @@ -0,0 +1,2 @@ + +instance = None diff --git a/README b/README new file mode 100644 index 0000000..bd8556c --- /dev/null +++ b/README @@ -0,0 +1,4 @@ +SF_TEAM +Grupo Español De Investigacion + +www.soldiersatforum.com \ No newline at end of file diff --git a/RecordTimer.py b/RecordTimer.py new file mode 100644 index 0000000..4b89947 --- /dev/null +++ b/RecordTimer.py @@ -0,0 +1,1003 @@ +import os +from enigma import eEPGCache, getBestPlayableServiceReference, \ + eServiceReference, iRecordableService, quitMainloop, eActionMap, setPreferredTuner + +from Components.config import config +from Components.UsageConfig import defaultMoviePath +from Components.TimerSanityCheck import TimerSanityCheck + +from Screens.MessageBox import MessageBox +import Screens.Standby +from Tools import Directories, Notifications, ASCIItranslit, Trashcan +from Tools.XMLTools import stringToXML + +import timer +import xml.etree.cElementTree +import NavigationInstance +from ServiceReference import ServiceReference + +from time import localtime, strftime, ctime, time +from bisect import insort +from sys import maxint + +# ok, for descriptions etc we have: +# service reference (to get the service name) +# name (title) +# description (description) +# event data (ONLY for time adjustments etc.) + + +# parses an event, and gives out a (begin, end, name, duration, eit)-tuple. +# begin and end will be corrected +def parseEvent(ev, description = True): + if description: + name = ev.getEventName() + description = ev.getShortDescription() + if description == "": + description = ev.getExtendedDescription() + else: + name = "" + description = "" + begin = ev.getBeginTime() + end = begin + ev.getDuration() + eit = ev.getEventId() + begin -= config.recording.margin_before.value * 60 + end += config.recording.margin_after.value * 60 + return (begin, end, name, description, eit) + +class AFTEREVENT: + NONE = 0 + STANDBY = 1 + DEEPSTANDBY = 2 + AUTO = 3 + +def findSafeRecordPath(dirname): + if not dirname: + return None + from Components import Harddisk + dirname = os.path.realpath(dirname) + mountpoint = Harddisk.findMountPoint(dirname) + if mountpoint in ('/', '/media'): + print '[RecordTimer] media is not mounted:', dirname + return None + if not os.path.isdir(dirname): + try: + os.makedirs(dirname) + except Exception, ex: + print '[RecordTimer] Failed to create dir "%s":' % dirname, ex + return None + return dirname + +def checkForRecordings(): + if NavigationInstance.instance.getRecordings(): + return True + rec_time = NavigationInstance.instance.RecordTimer.getNextTimerTime(isWakeup=True) + return rec_time > 0 and (rec_time - time()) < 360 + +# please do not translate log messages +class RecordTimerEntry(timer.TimerEntry, object): +######### the following static methods and members are only in use when the box is in (soft) standby + wasInStandby = False + wasInDeepStandby = False + receiveRecordEvents = False + + @staticmethod + def keypress(key=None, flag=1): + if flag and (RecordTimerEntry.wasInStandby or RecordTimerEntry.wasInDeepStandby): + RecordTimerEntry.wasInStandby = False + RecordTimerEntry.wasInDeepStandby = False + eActionMap.getInstance().unbindAction('', RecordTimerEntry.keypress) + + @staticmethod + def setWasInDeepStandby(): + RecordTimerEntry.wasInDeepStandby = True + eActionMap.getInstance().bindAction('', -maxint - 1, RecordTimerEntry.keypress) + + @staticmethod + def setWasInStandby(): + if not RecordTimerEntry.wasInStandby: + if not RecordTimerEntry.wasInDeepStandby: + eActionMap.getInstance().bindAction('', -maxint - 1, RecordTimerEntry.keypress) + RecordTimerEntry.wasInDeepStandby = False + RecordTimerEntry.wasInStandby = True + + @staticmethod + def shutdown(): + quitMainloop(1) + + @staticmethod + def staticGotRecordEvent(recservice, event): + if event == iRecordableService.evEnd: + print "RecordTimer.staticGotRecordEvent(iRecordableService.evEnd)" + if not checkForRecordings(): + print "No recordings busy of sceduled within 6 minutes so shutdown" + RecordTimerEntry.shutdown() # immediate shutdown + elif event == iRecordableService.evStart: + print "RecordTimer.staticGotRecordEvent(iRecordableService.evStart)" + + @staticmethod + def stopTryQuitMainloop(): + print "RecordTimer.stopTryQuitMainloop" + NavigationInstance.instance.record_event.remove(RecordTimerEntry.staticGotRecordEvent) + RecordTimerEntry.receiveRecordEvents = False + + @staticmethod + def TryQuitMainloop(): + if not RecordTimerEntry.receiveRecordEvents and Screens.Standby.inStandby: + print "RecordTimer.TryQuitMainloop" + NavigationInstance.instance.record_event.append(RecordTimerEntry.staticGotRecordEvent) + RecordTimerEntry.receiveRecordEvents = True + # send fake event.. to check if another recordings are running or + # other timers start in a few seconds + RecordTimerEntry.staticGotRecordEvent(None, iRecordableService.evEnd) +################################################################# + + def __init__(self, serviceref, begin, end, name, description, eit, disabled = False, justplay = False, afterEvent = AFTEREVENT.AUTO, checkOldTimers = False, dirname = None, tags = None, descramble = True, record_ecm = False, always_zap = False, zap_wakeup = "always"): + timer.TimerEntry.__init__(self, int(begin), int(end)) + + if checkOldTimers == True: + if self.begin < time() - 1209600: + self.begin = int(time()) + + if self.end < self.begin: + self.end = self.begin + + assert isinstance(serviceref, ServiceReference) + + if serviceref and serviceref.isRecordable(): + self.service_ref = serviceref + else: + self.service_ref = ServiceReference(None) + self.eit = eit + self.dontSave = False + self.name = name + self.description = description + self.disabled = disabled + self.timer = None + self.__record_service = None + self.start_prepare = 0 + self.justplay = justplay + self.always_zap = always_zap + self.zap_wakeup = zap_wakeup + self.afterEvent = afterEvent + self.dirname = dirname + self.dirnameHadToFallback = False + self.autoincrease = False + self.autoincreasetime = 3600 * 24 # 1 day + self.tags = tags or [] + self.descramble = descramble + self.record_ecm = record_ecm + self.needChangePriorityFrontend = config.usage.recording_frontend_priority.value != "-2" and config.usage.recording_frontend_priority.value != config.usage.frontend_priority.value + self.change_frontend = False + self.log_entries = [] + self.resetState() + + def __repr__(self): + return "RecordTimerEntry(name=%s, begin=%s, serviceref=%s, justplay=%s)" % (self.name, ctime(self.begin), self.service_ref, self.justplay) + + def log(self, code, msg): + self.log_entries.append((int(time()), code, msg)) + print "[TIMER]", msg + + def calculateFilename(self): + service_name = self.service_ref.getServiceName() + begin_date = strftime("%Y%m%d %H%M", localtime(self.begin)) + + print "begin_date: ", begin_date + print "service_name: ", service_name + print "name:", self.name + print "description: ", self.description + + filename = begin_date + " - " + service_name + if self.name: + if config.recording.filename_composition.value == "short": + filename = strftime("%Y%m%d", localtime(self.begin)) + " - " + self.name + elif config.recording.filename_composition.value == "long": + filename += " - " + self.name + " - " + self.description + else: + filename += " - " + self.name # standard + + if config.recording.ascii_filenames.value: + filename = ASCIItranslit.legacyEncode(filename) + + + if not self.dirname: + dirname = findSafeRecordPath(defaultMoviePath()) + else: + dirname = findSafeRecordPath(self.dirname) + if dirname is None: + dirname = findSafeRecordPath(defaultMoviePath()) + self.dirnameHadToFallback = True + if not dirname: + return None + self.Filename = Directories.getRecordingFilename(filename, dirname) + self.log(0, "Filename calculated as: '%s'" % self.Filename) + return self.Filename + + def tryPrepare(self): + if self.justplay: + return True + else: + if not self.calculateFilename(): + self.do_backoff() + self.start_prepare = time() + self.backoff + return False + rec_ref = self.service_ref and self.service_ref.ref + if rec_ref and rec_ref.flags & eServiceReference.isGroup: + rec_ref = getBestPlayableServiceReference(rec_ref, eServiceReference()) + if not rec_ref: + self.log(1, "'get best playable service for group... record' failed") + return False + self.setRecordingPreferredTuner() + self.record_service = rec_ref and NavigationInstance.instance.recordService(rec_ref) + + if not self.record_service: + self.log(1, "'record service' failed") + self.setRecordingPreferredTuner(setdefault=True) + return False + + if self.repeated: + epgcache = eEPGCache.getInstance() + queryTime=self.begin+(self.end-self.begin)/2 + evt = epgcache.lookupEventTime(rec_ref, queryTime) + if evt: + self.description = evt.getShortDescription() + if self.description == "": + self.description = evt.getExtendedDescription() + event_id = evt.getEventId() + else: + event_id = -1 + else: + event_id = self.eit + if event_id is None: + event_id = -1 + + prep_res=self.record_service.prepare(self.Filename + ".ts", self.begin, self.end, event_id, self.name.replace("\n", ""), self.description.replace("\n", ""), ' '.join(self.tags), self.descramble, self.record_ecm) + if prep_res: + if prep_res == -255: + self.log(4, "failed to write meta information") + else: + self.log(2, "'prepare' failed: error %d" % prep_res) + + # we must calc nur start time before stopRecordService call because in Screens/Standby.py TryQuitMainloop tries to get + # the next start time in evEnd event handler... + self.do_backoff() + self.start_prepare = time() + self.backoff + + NavigationInstance.instance.stopRecordService(self.record_service) + self.record_service = None + self.setRecordingPreferredTuner(setdefault=True) + return False + return True + + def do_backoff(self): + if self.backoff == 0: + self.backoff = 5 + else: + self.backoff *= 2 + if self.backoff > 100: + self.backoff = 100 + self.log(10, "backoff: retry in %d seconds" % self.backoff) + + def activate(self): + next_state = self.state + 1 + self.log(5, "activating state %d" % next_state) + + if next_state == 1: + if self.always_zap: + if Screens.Standby.inStandby: + self.log(5, "wakeup and zap to recording service") + RecordTimerEntry.setWasInStandby() + #set service to zap after standby + Screens.Standby.inStandby.prev_running_service = self.service_ref.ref + Screens.Standby.inStandby.paused_service = None + #wakeup standby + Screens.Standby.inStandby.Power() + else: + if RecordTimerEntry.wasInDeepStandby: + RecordTimerEntry.setWasInStandby() + cur_zap_ref = NavigationInstance.instance.getCurrentlyPlayingServiceReference() + if cur_zap_ref and not cur_zap_ref.getPath():# we do not zap away if it is no live service + Notifications.AddNotification(MessageBox, _("In order to record a timer, the TV was switched to the recording service!\n"), type=MessageBox.TYPE_INFO, timeout=20) + self.setRecordingPreferredTuner() + self.failureCB(True) + self.log(5, "zap to recording service") + + if next_state == self.StatePrepared: + if self.tryPrepare(): + self.log(6, "prepare ok, waiting for begin") + # create file to "reserve" the filename + # because another recording at the same time on another service can try to record the same event + # i.e. cable / sat.. then the second recording needs an own extension... when we create the file + # here than calculateFilename is happy + if not self.justplay: + open(self.Filename + ".ts", "w").close() + # Give the Trashcan a chance to clean up + try: + Trashcan.instance.cleanIfIdle(self.Filename) + except Exception, e: + print "[TIMER] Failed to call Trashcan.instance.cleanIfIdle()" + print "[TIMER] Error:", e + # fine. it worked, resources are allocated. + self.next_activation = self.begin + self.backoff = 0 + return True + + self.log(7, "prepare failed") + if self.first_try_prepare: + self.first_try_prepare = False + cur_ref = NavigationInstance.instance.getCurrentlyPlayingServiceReference() + if cur_ref and not cur_ref.getPath(): + if Screens.Standby.inStandby: + self.setRecordingPreferredTuner() + self.failureCB(True) + elif not config.recording.asktozap.value: + self.log(8, "asking user to zap away") + Notifications.AddNotificationWithCallback(self.failureCB, MessageBox, _("A timer failed to record!\nDisable TV and try again?\n"), timeout=20, default=True) + else: # zap without asking + self.log(9, "zap without asking") + Notifications.AddNotification(MessageBox, _("In order to record a timer, the TV was switched to the recording service!\n"), type=MessageBox.TYPE_INFO, timeout=20) + self.setRecordingPreferredTuner() + self.failureCB(True) + elif cur_ref: + self.log(8, "currently running service is not a live service.. so stop it makes no sense") + else: + self.log(8, "currently no service running... so we dont need to stop it") + return False + + elif next_state == self.StateRunning: + # if this timer has been cancelled, just go to "end" state. + if self.cancelled: + return True + if self.justplay: + if Screens.Standby.inStandby: + if RecordTimerEntry.wasInDeepStandby and self.zap_wakeup in ("always", "from_deep_standby") or self.zap_wakeup in ("always", "from_standby"): + self.log(11, "wakeup and zap") + RecordTimerEntry.setWasInStandby() + #set service to zap after standby + Screens.Standby.inStandby.prev_running_service = self.service_ref.ref + Screens.Standby.inStandby.paused_service = None + #wakeup standby + Screens.Standby.inStandby.Power() + else: + if RecordTimerEntry.wasInDeepStandby: + RecordTimerEntry.setWasInStandby() + self.log(11, "zapping") + NavigationInstance.instance.playService(self.service_ref.ref) + return True + else: + self.log(11, "start recording") + + if RecordTimerEntry.wasInDeepStandby: + RecordTimerEntry.keypress() + if Screens.Standby.inStandby: #In case some plugin did put the receiver already in standby + config.misc.standbyCounter.value = 0 + else: + Notifications.AddNotification(Screens.Standby.Standby, StandbyCounterIncrease=False) + record_res = self.record_service.start() + self.setRecordingPreferredTuner(setdefault=True) + if record_res: + self.log(13, "start record returned %d" % record_res) + self.do_backoff() + # retry + self.begin = time() + self.backoff + return False + + # Tell the trashcan we started recording. The trashcan gets events, + # but cannot tell what the associated path is. + Trashcan.instance.markDirty(self.Filename) + + return True + + elif next_state == self.StateEnded: + old_end = self.end + if self.setAutoincreaseEnd(): + self.log(12, "autoincrase recording %d minute(s)" % int((self.end - old_end)/60)) + self.state -= 1 + return True + self.log(12, "stop recording") + if not self.justplay: + NavigationInstance.instance.stopRecordService(self.record_service) + self.record_service = None + if not checkForRecordings(): + if self.afterEvent == AFTEREVENT.DEEPSTANDBY or self.afterEvent == AFTEREVENT.AUTO and (Screens.Standby.inStandby or RecordTimerEntry.wasInStandby) and not config.misc.standbyCounter.value: + if not Screens.Standby.inTryQuitMainloop: + if Screens.Standby.inStandby: + RecordTimerEntry.TryQuitMainloop() + else: + Notifications.AddNotificationWithCallback(self.sendTryQuitMainloopNotification, MessageBox, _("A finished record timer wants to shut down\nyour receiver. Shutdown now?"), timeout=20, default=True) + elif self.afterEvent == AFTEREVENT.STANDBY or self.afterEvent == AFTEREVENT.AUTO and RecordTimerEntry.wasInStandby: + if not Screens.Standby.inStandby: + Notifications.AddNotificationWithCallback(self.sendStandbyNotification, MessageBox, _("A finished record timer wants to set your\nreceiver to standby. Do that now?"), timeout=20, default=True) + else: + RecordTimerEntry.keypress() + return True + + def setAutoincreaseEnd(self, entry = None): + if not self.autoincrease: + return False + if entry is None: + new_end = int(time()) + self.autoincreasetime + else: + new_end = entry.begin - 30 + + dummyentry = RecordTimerEntry(self.service_ref, self.begin, new_end, self.name, self.description, self.eit, disabled=True, justplay = self.justplay, afterEvent = self.afterEvent, dirname = self.dirname, tags = self.tags) + dummyentry.disabled = self.disabled + timersanitycheck = TimerSanityCheck(NavigationInstance.instance.RecordTimer.timer_list, dummyentry) + if not timersanitycheck.check(): + simulTimerList = timersanitycheck.getSimulTimerList() + if simulTimerList is not None and len(simulTimerList) > 1: + new_end = simulTimerList[1].begin + new_end -= 30 # 30 Sekunden Prepare-Zeit lassen + if new_end <= time(): + return False + self.end = new_end + return True + + def setRecordingPreferredTuner(self, setdefault=False): + if self.needChangePriorityFrontend: + elem = None + if not self.change_frontend and not setdefault: + elem = config.usage.recording_frontend_priority.value + self.change_frontend = True + elif self.change_frontend and setdefault: + elem = config.usage.frontend_priority.value + self.change_frontend = False + if elem is not None: + setPreferredTuner(int(elem)) + + def sendStandbyNotification(self, answer): + RecordTimerEntry.keypress() + if answer: + Notifications.AddNotification(Screens.Standby.Standby) + + def sendTryQuitMainloopNotification(self, answer): + RecordTimerEntry.keypress() + if answer: + Notifications.AddNotification(Screens.Standby.TryQuitMainloop, 1) + + def getNextActivation(self): + if self.state == self.StateEnded: + return self.end + + next_state = self.state + 1 + + return {self.StatePrepared: self.start_prepare, + self.StateRunning: self.begin, + self.StateEnded: self.end }[next_state] + + def failureCB(self, answer): + if answer == True: + self.log(13, "ok, zapped away") + #NavigationInstance.instance.stopUserServices() + NavigationInstance.instance.playService(self.service_ref.ref) + else: + self.log(14, "user didn't want to zap away, record will probably fail") + + def timeChanged(self): + old_prepare = self.start_prepare + self.start_prepare = self.begin - self.prepare_time + self.backoff = 0 + + if int(old_prepare) != int(self.start_prepare): + self.log(15, "record time changed, start prepare is now: %s" % ctime(self.start_prepare)) + + def gotRecordEvent(self, record, event): + # TODO: this is not working (never true), please fix. (comparing two swig wrapped ePtrs) + if self.__record_service.__deref__() != record.__deref__(): + return + self.log(16, "record event %d" % event) + if event == iRecordableService.evRecordWriteError: + print "WRITE ERROR on recording, disk full?" + # show notification. the 'id' will make sure that it will be + # displayed only once, even if more timers are failing at the + # same time. (which is very likely in case of disk fullness) + Notifications.AddPopup(text = _("Write error while recording. Disk full?\n"), type = MessageBox.TYPE_ERROR, timeout = 0, id = "DiskFullMessage") + # ok, the recording has been stopped. we need to properly note + # that in our state, with also keeping the possibility to re-try. + # TODO: this has to be done. + elif event == iRecordableService.evStart: + text = _("A record has been started:\n%s") % self.name + notify = config.usage.show_message_when_recording_starts.value and not Screens.Standby.inStandby + if self.dirnameHadToFallback: + text = '\n'.join((text, _("Please note that the previously selected media could not be accessed and therefore the default directory is being used instead."))) + notify = True + if notify: + Notifications.AddPopup(text = text, type = MessageBox.TYPE_INFO, timeout = 3) + elif event == iRecordableService.evRecordAborted: + NavigationInstance.instance.RecordTimer.removeEntry(self) + + # we have record_service as property to automatically subscribe to record service events + def setRecordService(self, service): + if self.__record_service is not None: + print "[remove callback]" + NavigationInstance.instance.record_event.remove(self.gotRecordEvent) + + self.__record_service = service + + if self.__record_service is not None: + print "[add callback]" + NavigationInstance.instance.record_event.append(self.gotRecordEvent) + + record_service = property(lambda self: self.__record_service, setRecordService) + +def createTimer(xml): + begin = int(xml.get("begin")) + end = int(xml.get("end")) + serviceref = ServiceReference(xml.get("serviceref").encode("utf-8")) + description = xml.get("description").encode("utf-8") + repeated = xml.get("repeated").encode("utf-8") + disabled = long(xml.get("disabled") or "0") + justplay = long(xml.get("justplay") or "0") + always_zap = long(xml.get("always_zap") or "0") + zap_wakeup = str(xml.get("zap_wakeup") or "always") + afterevent = str(xml.get("afterevent") or "nothing") + afterevent = { + "nothing": AFTEREVENT.NONE, + "standby": AFTEREVENT.STANDBY, + "deepstandby": AFTEREVENT.DEEPSTANDBY, + "auto": AFTEREVENT.AUTO + }[afterevent] + eit = xml.get("eit") + if eit and eit != "None": + eit = long(eit) + else: + eit = None + location = xml.get("location") + if location and location != "None": + location = location.encode("utf-8") + else: + location = None + tags = xml.get("tags") + if tags and tags != "None": + tags = tags.encode("utf-8").split(' ') + else: + tags = None + descramble = int(xml.get("descramble") or "1") + record_ecm = int(xml.get("record_ecm") or "0") + + name = xml.get("name").encode("utf-8") + #filename = xml.get("filename").encode("utf-8") + entry = RecordTimerEntry(serviceref, begin, end, name, description, eit, disabled, justplay, afterevent, dirname = location, tags = tags, descramble = descramble, record_ecm = record_ecm, always_zap = always_zap, zap_wakeup = zap_wakeup) + entry.repeated = int(repeated) + + for l in xml.findall("log"): + time = int(l.get("time")) + code = int(l.get("code")) + msg = l.text.strip().encode("utf-8") + entry.log_entries.append((time, code, msg)) + + return entry + +class RecordTimer(timer.Timer): + def __init__(self): + timer.Timer.__init__(self) + + self.Filename = Directories.resolveFilename(Directories.SCOPE_CONFIG, "timers.xml") + + try: + self.loadTimer() + except IOError: + print "unable to load timers from file!" + + def doActivate(self, w): + # when activating a timer which has already passed, + # simply abort the timer. don't run trough all the stages. + if w.shouldSkip(): + w.state = RecordTimerEntry.StateEnded + else: + # when active returns true, this means "accepted". + # otherwise, the current state is kept. + # the timer entry itself will fix up the delay then. + if w.activate(): + w.state += 1 + + self.timer_list.remove(w) + + # did this timer reached the last state? + if w.state < RecordTimerEntry.StateEnded: + # no, sort it into active list + insort(self.timer_list, w) + else: + # yes. Process repeated, and re-add. + if w.repeated: + w.processRepeated() + w.state = RecordTimerEntry.StateWaiting + w.first_try_prepare = True + self.addTimerEntry(w) + else: + # Remove old timers as set in config + self.cleanupDaily(config.recording.keep_timers.value) + insort(self.processed_timers, w) + self.stateChanged(w) + + def isRecording(self): + for timer in self.timer_list: + if timer.isRunning() and not timer.justplay: + return True + return False + + def loadTimer(self): + # TODO: PATH! + if not Directories.fileExists(self.Filename): + return + try: + doc = xml.etree.cElementTree.parse(self.Filename) + except SyntaxError: + from Tools.Notifications import AddPopup + from Screens.MessageBox import MessageBox + + AddPopup(_("The timer file (timers.xml) is corrupt and could not be loaded."), type = MessageBox.TYPE_ERROR, timeout = 0, id = "TimerLoadFailed") + + print "timers.xml failed to load!" + try: + import os + os.rename(self.Filename, self.Filename + "_old") + except (IOError, OSError): + print "renaming broken timer failed" + return + except IOError: + print "timers.xml not found!" + return + + root = doc.getroot() + + # put out a message when at least one timer overlaps + checkit = True + for timer in root.findall("timer"): + newTimer = createTimer(timer) + if (self.record(newTimer, True, dosave=False) is not None) and (checkit == True): + from Tools.Notifications import AddPopup + from Screens.MessageBox import MessageBox + AddPopup(_("Timer overlap in timers.xml detected!\nPlease recheck it!"), type = MessageBox.TYPE_ERROR, timeout = 0, id = "TimerLoadFailed") + checkit = False # at moment it is enough when the message is displayed one time + + def saveTimer(self): + #root_element = xml.etree.cElementTree.Element('timers') + #root_element.text = "\n" + + #for timer in self.timer_list + self.processed_timers: + # some timers (instant records) don't want to be saved. + # skip them + #if timer.dontSave: + #continue + #t = xml.etree.cElementTree.SubElement(root_element, 'timers') + #t.set("begin", str(int(timer.begin))) + #t.set("end", str(int(timer.end))) + #t.set("serviceref", str(timer.service_ref)) + #t.set("repeated", str(timer.repeated)) + #t.set("name", timer.name) + #t.set("description", timer.description) + #t.set("afterevent", str({ + # AFTEREVENT.NONE: "nothing", + # AFTEREVENT.STANDBY: "standby", + # AFTEREVENT.DEEPSTANDBY: "deepstandby", + # AFTEREVENT.AUTO: "auto"})) + #if timer.eit is not None: + # t.set("eit", str(timer.eit)) + #if timer.dirname is not None: + # t.set("location", str(timer.dirname)) + #t.set("disabled", str(int(timer.disabled))) + #t.set("justplay", str(int(timer.justplay))) + #t.text = "\n" + #t.tail = "\n" + + #for time, code, msg in timer.log_entries: + #l = xml.etree.cElementTree.SubElement(t, 'log') + #l.set("time", str(time)) + #l.set("code", str(code)) + #l.text = str(msg) + #l.tail = "\n" + + #doc = xml.etree.cElementTree.ElementTree(root_element) + #doc.write(self.Filename) + + list = [] + + list.append('\n') + list.append('\n') + + for timer in self.timer_list + self.processed_timers: + if timer.dontSave: + continue + + list.append('\n') + + if config.recording.debug.value: + for time, code, msg in timer.log_entries: + list.append('') + list.append(str(stringToXML(msg))) + list.append('\n') + + list.append('\n') + + list.append('\n') + + file = open(self.Filename + ".writing", "w") + for x in list: + file.write(x) + file.flush() + + import os + os.fsync(file.fileno()) + file.close() + os.rename(self.Filename + ".writing", self.Filename) + + def getNextZapTime(self, isWakeup=False): + now = time() + for timer in self.timer_list: + if not timer.justplay or timer.begin < now or isWakeup and timer.zap_wakeup in ("from_standby", "never"): + continue + return timer.begin + return -1 + + def getNextRecordingTime(self): + now = time() + for timer in self.timer_list: + next_act = timer.getNextActivation() + if timer.justplay or next_act < now: + continue + return next_act + return -1 + + def getNextTimerTime(self, isWakeup=False): + now = time() + for timer in self.timer_list: + next_act = timer.getNextActivation() + if next_act < now or isWakeup and timer.justplay and timer.zap_wakeup in ("from_standby", "never"): + continue + return next_act + return -1 + + def isNextRecordAfterEventActionAuto(self): + now = time() + t = None + for timer in self.timer_list: + if timer.justplay or timer.begin < now: + continue + if t is None or t.begin == timer.begin: + t = timer + if t.afterEvent == AFTEREVENT.AUTO: + return True + return False + + def record(self, entry, ignoreTSC=False, dosave=True): # wird von loadTimer mit dosave=False aufgerufen + timersanitycheck = TimerSanityCheck(self.timer_list,entry) + if not timersanitycheck.check(): + if ignoreTSC != True: + print "timer conflict detected!" + print timersanitycheck.getSimulTimerList() + return timersanitycheck.getSimulTimerList() + else: + print "ignore timer conflict" + elif timersanitycheck.doubleCheck(): + print "ignore double timer" + return None + entry.timeChanged() + print "[Timer] Record " + str(entry) + entry.Timer = self + self.addTimerEntry(entry) + if dosave: + self.saveTimer() + return None + + def isInTimer(self, eventid, begin, duration, service): + returnValue = None + type = 0 + time_match = 0 + bt = None + check_offset_time = not config.recording.margin_before.value and not config.recording.margin_after.value + end = begin + duration + refstr = ':'.join(service.split(':')[:11]) + for x in self.timer_list: + check = ':'.join(x.service_ref.ref.toString().split(':')[:11]) == refstr + if not check: + sref = x.service_ref.ref + parent_sid = sref.getUnsignedData(5) + parent_tsid = sref.getUnsignedData(6) + if parent_sid and parent_tsid: + # check for subservice + sid = sref.getUnsignedData(1) + tsid = sref.getUnsignedData(2) + sref.setUnsignedData(1, parent_sid) + sref.setUnsignedData(2, parent_tsid) + sref.setUnsignedData(5, 0) + sref.setUnsignedData(6, 0) + check = sref.toCompareString() == refstr + num = 0 + if check: + check = False + event = eEPGCache.getInstance().lookupEventId(sref, eventid) + num = event and event.getNumOfLinkageServices() or 0 + sref.setUnsignedData(1, sid) + sref.setUnsignedData(2, tsid) + sref.setUnsignedData(5, parent_sid) + sref.setUnsignedData(6, parent_tsid) + for cnt in range(num): + subservice = event.getLinkageService(sref, cnt) + if sref.toCompareString() == subservice.toCompareString(): + check = True + break + if check: + timer_end = x.end + timer_begin = x.begin + type_offset = 0 + if not x.repeated and check_offset_time: + if 0 < end - timer_end <= 59: + timer_end = end + elif 0 < timer_begin - begin <= 59: + timer_begin = begin + if x.justplay: + type_offset = 5 + if (timer_end - x.begin) <= 1: + timer_end += 60 + if x.always_zap: + type_offset = 10 + + if x.repeated != 0: + if bt is None: + bt = localtime(begin) + bday = bt.tm_wday + begin2 = 1440 + bt.tm_hour * 60 + bt.tm_min + end2 = begin2 + duration / 60 + xbt = localtime(x.begin) + xet = localtime(timer_end) + offset_day = False + checking_time = x.begin < begin or begin <= x.begin <= end + if xbt.tm_yday != xet.tm_yday: + oday = bday - 1 + if oday == -1: oday = 6 + offset_day = x.repeated & (1 << oday) + xbegin = 1440 + xbt.tm_hour * 60 + xbt.tm_min + xend = xbegin + ((timer_end - x.begin) / 60) + if xend < xbegin: + xend += 1440 + if x.repeated & (1 << bday) and checking_time: + if begin2 < xbegin <= end2: + if xend < end2: + # recording within event + time_match = (xend - xbegin) * 60 + type = type_offset + 3 + else: + # recording last part of event + time_match = (end2 - xbegin) * 60 + type = type_offset + 1 + elif xbegin <= begin2 <= xend: + if xend < end2: + # recording first part of event + time_match = (xend - begin2) * 60 + type = type_offset + 4 + else: + # recording whole event + time_match = (end2 - begin2) * 60 + type = type_offset + 2 + elif offset_day: + xbegin -= 1440 + xend -= 1440 + if begin2 < xbegin <= end2: + if xend < end2: + # recording within event + time_match = (xend - xbegin) * 60 + type = type_offset + 3 + else: + # recording last part of event + time_match = (end2 - xbegin) * 60 + type = type_offset + 1 + elif xbegin <= begin2 <= xend: + if xend < end2: + # recording first part of event + time_match = (xend - begin2) * 60 + type = type_offset + 4 + else: + # recording whole event + time_match = (end2 - begin2) * 60 + type = type_offset + 2 + elif offset_day and checking_time: + xbegin -= 1440 + xend -= 1440 + if begin2 < xbegin <= end2: + if xend < end2: + # recording within event + time_match = (xend - xbegin) * 60 + type = type_offset + 3 + else: + # recording last part of event + time_match = (end2 - xbegin) * 60 + type = type_offset + 1 + elif xbegin <= begin2 <= xend: + if xend < end2: + # recording first part of event + time_match = (xend - begin2) * 60 + type = type_offset + 4 + else: + # recording whole event + time_match = (end2 - begin2) * 60 + type = type_offset + 2 + else: + if begin < timer_begin <= end: + if timer_end < end: + # recording within event + time_match = timer_end - timer_begin + type = type_offset + 3 + else: + # recording last part of event + time_match = end - timer_begin + type = type_offset + 1 + elif timer_begin <= begin <= timer_end: + if timer_end < end: + # recording first part of event + time_match = timer_end - begin + type = type_offset + 4 + else: + # recording whole event + time_match = end - begin + type = type_offset + 2 + if time_match: + if type in (2,7,12): + # When full recording do not look further + returnValue = (time_match, [type]) + break + elif returnValue: + if type not in returnValue[1]: + returnValue[1].append(type) + else: + returnValue = (time_match, [type]) + + return returnValue + + def removeEntry(self, entry): + print "[Timer] Remove " + str(entry) + + # avoid re-enqueuing + entry.repeated = False + + # abort timer. + # this sets the end time to current time, so timer will be stopped. + entry.autoincrease = False + entry.abort() + + if entry.state != entry.StateEnded: + self.timeChanged(entry) + + print "state: ", entry.state + print "in processed: ", entry in self.processed_timers + print "in running: ", entry in self.timer_list + # autoincrease instanttimer if possible + if not entry.dontSave: + for x in self.timer_list: + if x.setAutoincreaseEnd(): + self.timeChanged(x) + # now the timer should be in the processed_timers list. remove it from there. + self.processed_timers.remove(entry) + self.saveTimer() + + def shutdown(self): + self.saveTimer() diff --git a/ServiceReference.py b/ServiceReference.py new file mode 100644 index 0000000..1625542 --- /dev/null +++ b/ServiceReference.py @@ -0,0 +1,59 @@ +from enigma import eServiceReference, eServiceCenter, getBestPlayableServiceReference +import NavigationInstance + +class ServiceReference(eServiceReference): + def __init__(self, ref, reftype = eServiceReference.idInvalid, flags = 0, path = ''): + if reftype != eServiceReference.idInvalid: + self.ref = eServiceReference(reftype, flags, path) + elif not isinstance(ref, eServiceReference): + self.ref = eServiceReference(ref or "") + else: + self.ref = ref + self.serviceHandler = eServiceCenter.getInstance() + + def __str__(self): + return self.ref.toString() + + def getServiceName(self): + info = self.info() + return info and info.getName(self.ref) or "" + + def info(self): + return self.serviceHandler.info(self.ref) + + def list(self): + return self.serviceHandler.list(self.ref) + + def getType(self): + return self.ref.type + + def getPath(self): + return self.ref.getPath() + + def getFlags(self): + return self.ref.flags + + def isRecordable(self): + ref = self.ref + return ref.flags & eServiceReference.isGroup or (ref.type == eServiceReference.idDVB or ref.type == eServiceReference.idDVB + 0x100 or ref.type == 0x2000) + +def getPlayingref(ref): + playingref = None + if NavigationInstance.instance: + playingref = NavigationInstance.instance.getCurrentlyPlayingServiceReference() + if not playingref: + playingref = eServiceReference() + return playingref + +def isPlayableForCur(ref): + info = eServiceCenter.getInstance().info(ref) + return not not (info and info.isPlayable(ref, getPlayingref(ref))) + +def resolveAlternate(ref): + nref = None + if ref.flags & eServiceReference.isGroup: + nref = getBestPlayableServiceReference(ref, getPlayingref(ref)) + if not nref: + nref = getBestPlayableServiceReference(ref, + eServiceReference(), True) + return nref diff --git a/autogen.sh b/autogen.sh new file mode 100644 index 0000000..68f4a17 --- /dev/null +++ b/autogen.sh @@ -0,0 +1,2 @@ +#!/bin/sh +autoreconf -i diff --git a/configure.ac b/configure.ac new file mode 100644 index 0000000..f0ab1b8 --- /dev/null +++ b/configure.ac @@ -0,0 +1,255 @@ +AC_INIT([enigma2],[3.0.0],[enigma2-devel@lists.elitedvb.net]) +AM_INIT_AUTOMAKE([dist-bzip2 no-define tar-pax -Wno-portability]) +AC_CONFIG_HEADERS([enigma2_config.h]) + +# Silent rules are available since 1.11, but older versions +# are still in use. So don't use them unconditionally. +m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) + +AC_USE_SYSTEM_EXTENSIONS +AC_SYS_LARGEFILE + +AC_PROG_CC +AC_PROG_CXX +m4_ifdef([LT_INIT], [LT_INIT], [AC_PROG_LIBTOOL]) +AC_CONFIG_MACRO_DIR([m4]) +AC_OPENMP() + +AC_PATH_PROG(MSGFMT, msgfmt, AC_MSG_ERROR(Could not find msgfmt)) + +AM_PATH_PYTHON +AX_PYTHON_DEVEL +AX_PKG_SWIG +AX_SWIG_ENABLE_CXX +AX_SWIG_PYTHON +AX_PTHREAD + +TUXBOX_APPS_DVB + +AM_CONDITIONAL(HAVE_GIT_DIR, test -d "$srcdir/.git") +AM_CONDITIONAL(HAVE_FAKE_GIT_DIR, test -f "$srcdir/.git/last_commit_info") + +dnl versions of gstreamer and plugins-base +AC_ARG_WITH(gstversion, + AS_HELP_STRING([--with-gstversion],[use gstreamer version (major.minor)]), + [GST_MAJORMINOR=$withval],[GST_MAJORMINOR=0.10]) + +PKG_CHECK_MODULES(BASE, [freetype2 fribidi gstreamer-$GST_MAJORMINOR gstreamer-pbutils-$GST_MAJORMINOR libdvbsi++ libpng libxml-2.0 sigc++-1.2 libssl libcrypto]) +PKG_CHECK_MODULES(LIBDDVD, libdreamdvd, HAVE_LIBDDVD="yes", HAVE_LIBDDVD="no") +AM_CONDITIONAL(HAVE_LIBDDVD, test "$HAVE_LIBDDVD" = "yes") + +AC_CHECK_LIB([dl], [dlopen], [LIBDL_LIBS="-ldl"], [AC_MSG_ERROR([Could not find libdl])]) +AC_SUBST(LIBDL_LIBS) +AC_CHECK_LIB([jpeg], [jpeg_set_defaults], [LIBJPEG_LIBS="-ljpeg"], [AC_MSG_ERROR([Could not find libjpeg])]) +AC_SUBST(LIBJPEG_LIBS) +AC_CHECK_LIB([ungif], [DGifOpen], [LIBGIF_LIBS="-lungif"], [AC_CHECK_LIB([gif], [DGifOpen], [LIBGIF_LIBS="-lgif"], [AC_MSG_ERROR([Could not find libgif or libungif])])]) +AC_SUBST(LIBGIF_LIBS) + +AC_LANG_PUSH([C++]) +AC_CHECK_LIB([xmlccwrap], [exit], [LIBXMLCCWRAP_LIBS="-lxmlccwrap"], [AC_MSG_ERROR([Could not find libxmlccwrap])]) +AC_SUBST(LIBXMLCCWRAP_LIBS) +AC_LANG_POP + +AC_ARG_WITH(boxtype, + [ --with-boxtype=NAME box type [[none,dm7025,dm800...]]], + [BOXTYPE="$withval"],[BOXTYPE="dm800"]) +AC_SUBST(BOXTYPE) +AC_DEFINE_UNQUOTED(BOXTYPE,"$BOXTYPE",[box type]) + +AM_CONDITIONAL(DREAMBOX, test `echo "$BOXTYPE" | cut -b 1-2` == "dm") +AM_CONDITIONAL(HAVE_TEMPFANCONTROL, test "$BOXTYPE" == dm8000 -o "$BOXTYPE" == dm800se -o "$BOXTYPE" == dm500hd) +if test `echo "$BOXTYPE" | cut -b 1-2` == "dm"; then + AC_DEFINE(DREAMBOX, 1, [Dreambox hardware]) + AC_DEFINE(KEY_PLAY_ACTUALLY_IS_KEY_PLAYPAUSE, 1,[define when rc sends a KEY_PLAY event for its KEY_PLAYPAUSE key]) +fi +if test "$BOXTYPE" == "vusolo2" -o "$BOXTYPE" == "vuduo2"; then + AC_DEFINE(VUPLUS_RC_WORKAROUND, 1, [workaround for problem with vusolo2/vuduo2 event/rc driver]) +fi + +AC_ARG_WITH(textlcd, + AC_HELP_STRING([--with-textlcd], [use ascii based lcd, yes or no]), + [[withtextlcd=$withval]], + [[withtextlcd=no]] +) +if test x"$withtextlcd" != xno ; then + AC_DEFINE(HAVE_TEXTLCD, 1,[Define when using an ascii based lcd device]) +fi +AM_CONDITIONAL(HAVE_TEXTLCD, test x"$withtextlcd" != xno) + +AC_ARG_WITH(colorlcd, + AC_HELP_STRING([--with-colorlcd], [use 96x64 16bpp color display, yes or no]), + [[withcolorlcd=$withval]], + [[withcolorlcd=no]] +) +if test x"$withcolorlcd" != xno ; then + AC_DEFINE(HAVE_COLORLCD, 1,[Define when using a 96x64 color display device]) +fi +AM_CONDITIONAL(HAVE_COLORLCD, test x"$withcolorlcd" != xno) + + +AC_ARG_WITH(oldpvr, + AC_HELP_STRING([--with-oldpvr], [use /dev/misc/pvr instead of /dev/dvb/adapterX/dvrX, yes or no]), + [[witholdpvr=$withval]], + [[witholdpvr=no]] +) +if test x"$witholdpvr" != xno ; then + AC_DEFINE(HAVE_OLDPVR, 1,[Define when using /dev/misc/pvr]) +fi +AM_CONDITIONAL(HAVE_OLDPVR, test x"$witholdpvr" != xno) + +if test `echo "$BOXTYPE" | cut -b 1-2` == "vu"; then + AC_DEFINE(FORCE_NO_BLENDING_ACCELERATION, 1,[define when the framebuffer acceleration does not have alphablending support, though the autodetection might indicate that it does]) + AC_DEFINE(FORCE_NO_FILL_ACCELERATION, 1,[define when the framebuffer acceleration does not have fill support]) + AC_DEFINE(FORCE_ADVANCED_REMOTE, 1,[define to fixup the input device identification when the remote control is actually an 'advanced' remote (with play/forward/rewind keys)]) +fi + +AC_ARG_WITH(libsdl, + AS_HELP_STRING([--with-libsdl],[use libsdl, yes or no]), + [with_libsdl=$withval],[with_libsdl=no]) +if test "$with_libsdl" = "yes"; then + PKG_CHECK_MODULES(LIBSDL, sdl) +fi +AM_CONDITIONAL(HAVE_LIBSDL, test "$with_libsdl" = "yes") + +AC_ARG_WITH(libxine, + AS_HELP_STRING([--with-libxine],[use libxine, yes or no]), + [with_libxine=$withval],[with_libxine=no]) +if test "$with_libxine" = "yes"; then + PKG_CHECK_MODULES(LIBXINE, libxine) + AC_DEFINE([WITH_XINE],[1],[Define to 1 if you have libxine]) +fi +AM_CONDITIONAL(HAVE_LIBXINE, test "$with_libxine" = "yes") + +AC_ARG_WITH(debug, + AS_HELP_STRING([--without-debug],[disable debugging code]), + [with_debug="$withval"],[with_debug="yes"]) +if test "$with_debug" = "yes"; then + DEBUG_CFLAGS="-ggdb3" + AC_DEFINE([DEBUG],[1],[Define to 1 to enable debugging code]) +fi + +AC_ARG_WITH(memcheck, + AS_HELP_STRING([--with-memcheck],[enable memory leak checks]), + [with_memcheck="$withval"],[with_memcheck="no"]) +if test "$with_memcheck" = "yes"; then + AC_DEFINE([MEMLEAK_CHECK],[1],[Define to 1 to enable memory leak checks]) +fi + +AC_ARG_WITH(po, + AS_HELP_STRING([--with-po],[enable updating of po files]), + [with_po="$withval"],[with_po="no"]) +if test "$with_po" = "yes"; then + AC_PATH_PROG(MSGINIT, msginit) + AC_PATH_PROG(MSGMERGE, msgmerge) + AC_PATH_PROG(MSGUNIQ, msguniq) + AC_PATH_PROG(XGETTEXT, xgettext) + if test -z "$MSGINIT" -o -z "$MSGMERGE" -o -z "$MSGUNIQ" -o -z "$XGETTEXT"; then + AC_MSG_ERROR([Could not find required gettext tools]) + fi +fi +AM_CONDITIONAL(UPDATE_PO, test "$with_po" = "yes") + +ENIGMA2_CFLAGS="-fno-rtti -fno-exceptions" +AC_SUBST(ENIGMA2_CFLAGS) + +CPPFLAGS="$CPPFLAGS $PYTHON_CPPFLAGS" +CFLAGS="$CFLAGS $DEBUG_CFLAGS -Wall" +CXXFLAGS="$CXXFLAGS $DEBUG_CFLAGS -Wall $BASE_CFLAGS $ENIGMA2_CFLAGS $PTHREAD_CFLAGS $OPENMP_CFLAGS" + +AC_CONFIG_FILES([ +Makefile +data/Makefile +data/fonts/Makefile +data/countries/Makefile +data/extensions/Makefile +data/keymaps/Makefile +data/hw_info/Makefile +data/rc_models/Makefile +data/skin_default/Makefile +data/skin_default/menu/Makefile +data/skin_default/icons/Makefile +data/skin_default/buttons/Makefile +data/skin_default/spinner/Makefile +data/skin_default/LCDIcons/Makefile +include/Makefile +lib/Makefile +lib/base/eenv.cpp +lib/python/Makefile +lib/python/Components/Makefile +lib/python/Components/Converter/Makefile +lib/python/Components/Renderer/Makefile +lib/python/Components/Sources/Makefile +lib/python/Screens/Makefile +lib/python/Plugins/Makefile +lib/python/Plugins/SystemPlugins/CableScan/Makefile +lib/python/Plugins/SystemPlugins/FastScan/Makefile +lib/python/Plugins/SystemPlugins/OSDPositionSetup/Makefile +lib/python/Plugins/SystemPlugins/OSD3DSetup/Makefile +lib/python/Plugins/SystemPlugins/HdmiCEC/Makefile +lib/python/Plugins/SystemPlugins/VideoClippingSetup/Makefile +lib/python/Plugins/Extensions/CutListEditor/Makefile +lib/python/Plugins/Extensions/CutListEditor/meta/Makefile +lib/python/Plugins/Extensions/DVDBurn/Makefile +lib/python/Plugins/Extensions/DVDBurn/meta/Makefile +lib/python/Plugins/Extensions/DVDPlayer/Makefile +lib/python/Plugins/Extensions/DVDPlayer/meta/Makefile +lib/python/Plugins/Extensions/GraphMultiEPG/Makefile +lib/python/Plugins/Extensions/GraphMultiEPG/meta/Makefile +lib/python/Plugins/Extensions/Makefile +lib/python/Plugins/Extensions/MediaPlayer/Makefile +lib/python/Plugins/Extensions/MediaPlayer/meta/Makefile +lib/python/Plugins/Extensions/MediaScanner/Makefile +lib/python/Plugins/Extensions/MediaScanner/meta/Makefile +lib/python/Plugins/Extensions/Modem/Makefile +lib/python/Plugins/Extensions/PicturePlayer/Makefile +lib/python/Plugins/Extensions/PicturePlayer/meta/Makefile +lib/python/Plugins/Extensions/PicturePlayer/data/Makefile +lib/python/Plugins/Extensions/SocketMMI/Makefile +lib/python/Plugins/Extensions/SocketMMI/meta/Makefile +lib/python/Plugins/Extensions/SocketMMI/src/Makefile +lib/python/Plugins/Extensions/TuxboxPlugins/Makefile +lib/python/Plugins/Extensions/TuxboxPlugins/meta/Makefile +lib/python/Plugins/PLi/Makefile +lib/python/Plugins/SystemPlugins/CommonInterfaceAssignment/Makefile +lib/python/Plugins/SystemPlugins/CommonInterfaceAssignment/meta/Makefile +lib/python/Plugins/SystemPlugins/DefaultServicesScanner/Makefile +lib/python/Plugins/SystemPlugins/DefaultServicesScanner/meta/Makefile +lib/python/Plugins/SystemPlugins/DiseqcTester/Makefile +lib/python/Plugins/SystemPlugins/DiseqcTester/meta/Makefile +lib/python/Plugins/SystemPlugins/FrontprocessorUpgrade/Makefile +lib/python/Plugins/SystemPlugins/FrontprocessorUpgrade/meta/Makefile +lib/python/Plugins/SystemPlugins/Hotplug/Makefile +lib/python/Plugins/SystemPlugins/Hotplug/meta/Makefile +lib/python/Plugins/SystemPlugins/Makefile +lib/python/Plugins/SystemPlugins/TempFanControl/Makefile +lib/python/Plugins/SystemPlugins/TempFanControl/meta/Makefile +lib/python/Plugins/SystemPlugins/NetworkWizard/Makefile +lib/python/Plugins/SystemPlugins/NetworkWizard/meta/Makefile +lib/python/Plugins/SystemPlugins/NFIFlash/Makefile +lib/python/Plugins/SystemPlugins/NFIFlash/meta/Makefile +lib/python/Plugins/SystemPlugins/PositionerSetup/Makefile +lib/python/Plugins/SystemPlugins/PositionerSetup/meta/Makefile +lib/python/Plugins/SystemPlugins/SatelliteEquipmentControl/Makefile +lib/python/Plugins/SystemPlugins/SatelliteEquipmentControl/meta/Makefile +lib/python/Plugins/SystemPlugins/Satfinder/Makefile +lib/python/Plugins/SystemPlugins/Satfinder/meta/Makefile +lib/python/Plugins/SystemPlugins/SkinSelector/Makefile +lib/python/Plugins/SystemPlugins/SkinSelector/meta/Makefile +lib/python/Plugins/SystemPlugins/SoftwareManager/Makefile +lib/python/Plugins/SystemPlugins/SoftwareManager/meta/Makefile +lib/python/Plugins/SystemPlugins/VideoEnhancement/Makefile +lib/python/Plugins/SystemPlugins/VideoEnhancement/meta/Makefile +lib/python/Plugins/SystemPlugins/VideoTune/Makefile +lib/python/Plugins/SystemPlugins/VideoTune/meta/Makefile +lib/python/Plugins/SystemPlugins/Videomode/Makefile +lib/python/Plugins/SystemPlugins/Videomode/meta/Makefile +lib/python/Plugins/SystemPlugins/WirelessLan/Makefile +lib/python/Plugins/SystemPlugins/WirelessLan/meta/Makefile +lib/python/Tools/Makefile +po/Makefile +main/Makefile +tools/Makefile +tools/enigma2.sh +enigma2.pc +]) +AC_OUTPUT diff --git a/data/Makefile.am b/data/Makefile.am new file mode 100644 index 0000000..bc7bc61 --- /dev/null +++ b/data/Makefile.am @@ -0,0 +1,31 @@ +SUBDIRS = countries fonts extensions keymaps skin_default rc_models hw_info + +dist_pkgdata_DATA = \ + encoding.conf \ + keymap.xml \ + menu.xml \ + prev.png \ + radio.mvi \ + black.mvi \ + rcpositions.xml \ + setup.xml \ + skin_default.xml \ + skin_subtitles.xml \ + skin.xml \ + startwizard.xml \ + freesat.t1 \ + freesat.t2 \ + unicable.xml + +if HAVE_TEXTLCD +dist_pkgdata_DATA += skin_text.xml +else +if HAVE_COLORLCD +dist_pkgdata_DATA += skin_display96.xml +else +dist_pkgdata_DATA += skin_display.xml +endif +endif + +skin_display.xml: $(srcdir)/skin_display_default.xml + test -f $(srcdir)/skin_display_$(BOXTYPE).xml && cp $(srcdir)/skin_display_$(BOXTYPE).xml skin_display.xml || cp $(srcdir)/skin_display_default.xml skin_display.xml diff --git a/data/black.mvi b/data/black.mvi new file mode 100644 index 0000000..8475412 Binary files /dev/null and b/data/black.mvi differ diff --git a/data/countries/Makefile.am b/data/countries/Makefile.am new file mode 100644 index 0000000..fdd4210 --- /dev/null +++ b/data/countries/Makefile.am @@ -0,0 +1,40 @@ +installdir = $(pkgdatadir)/countries + +dist_install_DATA = \ + ad.png \ + ae.png \ + bg.png \ + br.png \ + cz.png \ + de.png \ + dk.png \ + en.png \ + es.png \ + ee.png \ + fi.png \ + fr.png \ + gr.png \ + hr.png \ + hu.png \ + il.png \ + ir.png \ + is.png \ + it.png \ + ku.png \ + lt.png \ + lv.png \ + missing.png \ + nl.png \ + no.png \ + pl.png \ + pt.png \ + ro.png \ + ru.png \ + se.png \ + si.png \ + sk.png \ + th.png \ + tr.png \ + ua.png \ + fy_NL.png \ + yu.png diff --git a/data/countries/ad.png b/data/countries/ad.png new file mode 100644 index 0000000..37bc6d2 Binary files /dev/null and b/data/countries/ad.png differ diff --git a/data/countries/ae.png b/data/countries/ae.png new file mode 100644 index 0000000..cdd96ad Binary files /dev/null and b/data/countries/ae.png differ diff --git a/data/countries/bg.png b/data/countries/bg.png new file mode 100644 index 0000000..4bd2f3f Binary files /dev/null and b/data/countries/bg.png differ diff --git a/data/countries/br.png b/data/countries/br.png new file mode 100644 index 0000000..448c5cc Binary files /dev/null and b/data/countries/br.png differ diff --git a/data/countries/cz.png b/data/countries/cz.png new file mode 100644 index 0000000..13f2fc8 Binary files /dev/null and b/data/countries/cz.png differ diff --git a/data/countries/de.png b/data/countries/de.png new file mode 100644 index 0000000..7d7824e Binary files /dev/null and b/data/countries/de.png differ diff --git a/data/countries/dk.png b/data/countries/dk.png new file mode 100644 index 0000000..bb4d049 Binary files /dev/null and b/data/countries/dk.png differ diff --git a/data/countries/ee.png b/data/countries/ee.png new file mode 100644 index 0000000..9a97398 Binary files /dev/null and b/data/countries/ee.png differ diff --git a/data/countries/en.png b/data/countries/en.png new file mode 100644 index 0000000..5fd3f8b Binary files /dev/null and b/data/countries/en.png differ diff --git a/data/countries/es.png b/data/countries/es.png new file mode 100644 index 0000000..0e7f0c8 Binary files /dev/null and b/data/countries/es.png differ diff --git a/data/countries/fi.png b/data/countries/fi.png new file mode 100644 index 0000000..a5c7b0b Binary files /dev/null and b/data/countries/fi.png differ diff --git a/data/countries/fr.png b/data/countries/fr.png new file mode 100644 index 0000000..2ce75a5 Binary files /dev/null and b/data/countries/fr.png differ diff --git a/data/countries/fy_NL.png b/data/countries/fy_NL.png new file mode 100644 index 0000000..ac32ca2 Binary files /dev/null and b/data/countries/fy_NL.png differ diff --git a/data/countries/gr.png b/data/countries/gr.png new file mode 100644 index 0000000..9e83170 Binary files /dev/null and b/data/countries/gr.png differ diff --git a/data/countries/hr.png b/data/countries/hr.png new file mode 100644 index 0000000..eb8e6d4 Binary files /dev/null and b/data/countries/hr.png differ diff --git a/data/countries/hu.png b/data/countries/hu.png new file mode 100644 index 0000000..ba2e0f9 Binary files /dev/null and b/data/countries/hu.png differ diff --git a/data/countries/il.png b/data/countries/il.png new file mode 100644 index 0000000..a8c7e52 Binary files /dev/null and b/data/countries/il.png differ diff --git a/data/countries/ir.png b/data/countries/ir.png new file mode 100644 index 0000000..6ca3403 Binary files /dev/null and b/data/countries/ir.png differ diff --git a/data/countries/is.png b/data/countries/is.png new file mode 100644 index 0000000..dc7c165 Binary files /dev/null and b/data/countries/is.png differ diff --git a/data/countries/it.png b/data/countries/it.png new file mode 100644 index 0000000..9583b58 Binary files /dev/null and b/data/countries/it.png differ diff --git a/data/countries/ku.png b/data/countries/ku.png new file mode 100644 index 0000000..4bd8fc8 Binary files /dev/null and b/data/countries/ku.png differ diff --git a/data/countries/lt.png b/data/countries/lt.png new file mode 100644 index 0000000..e5a352d Binary files /dev/null and b/data/countries/lt.png differ diff --git a/data/countries/lv.png b/data/countries/lv.png new file mode 100644 index 0000000..1e4a6fe Binary files /dev/null and b/data/countries/lv.png differ diff --git a/data/countries/missing.png b/data/countries/missing.png new file mode 100644 index 0000000..2bdff00 Binary files /dev/null and b/data/countries/missing.png differ diff --git a/data/countries/nl.png b/data/countries/nl.png new file mode 100644 index 0000000..ee2909d Binary files /dev/null and b/data/countries/nl.png differ diff --git a/data/countries/no.png b/data/countries/no.png new file mode 100644 index 0000000..3bde318 Binary files /dev/null and b/data/countries/no.png differ diff --git a/data/countries/pl.png b/data/countries/pl.png new file mode 100644 index 0000000..6b24f8b Binary files /dev/null and b/data/countries/pl.png differ diff --git a/data/countries/pt.png b/data/countries/pt.png new file mode 100644 index 0000000..b968f40 Binary files /dev/null and b/data/countries/pt.png differ diff --git a/data/countries/ro.png b/data/countries/ro.png new file mode 100644 index 0000000..d2234dc Binary files /dev/null and b/data/countries/ro.png differ diff --git a/data/countries/ru.png b/data/countries/ru.png new file mode 100644 index 0000000..929dac3 Binary files /dev/null and b/data/countries/ru.png differ diff --git a/data/countries/se.png b/data/countries/se.png new file mode 100644 index 0000000..54ac176 Binary files /dev/null and b/data/countries/se.png differ diff --git a/data/countries/si.png b/data/countries/si.png new file mode 100644 index 0000000..bfde71f Binary files /dev/null and b/data/countries/si.png differ diff --git a/data/countries/sk.png b/data/countries/sk.png new file mode 100644 index 0000000..a68e6f1 Binary files /dev/null and b/data/countries/sk.png differ diff --git a/data/countries/th.png b/data/countries/th.png new file mode 100644 index 0000000..5c32556 Binary files /dev/null and b/data/countries/th.png differ diff --git a/data/countries/tr.png b/data/countries/tr.png new file mode 100644 index 0000000..47a423c Binary files /dev/null and b/data/countries/tr.png differ diff --git a/data/countries/ua.png b/data/countries/ua.png new file mode 100644 index 0000000..a6ec948 Binary files /dev/null and b/data/countries/ua.png differ diff --git a/data/countries/yu.png b/data/countries/yu.png new file mode 100644 index 0000000..50f0488 Binary files /dev/null and b/data/countries/yu.png differ diff --git a/data/encoding.conf b/data/encoding.conf new file mode 100644 index 0000000..6d39e6d --- /dev/null +++ b/data/encoding.conf @@ -0,0 +1,81 @@ +#Fallback encoding when in dvb-text no encoding table is given +#Countycode ISO8859-X or ISO6937 +ara ISO8859-6 +tur ISO8859-9 +gre ISO8859-7 +ell ISO8859-7 +pol ISO8859-2 +rus ISO8859-5 +bul ISO8859-5 +tha ISO8859-11 +cze ISO6937 +ces ISO6937 +slo ISO6937 +slk ISO6937 +#Sorry for that.. in DVB Spec this is the default behavior +#when no other encoding is given in dvb-texts.. +#but this breaks too much providers yet.. +#so our default is ISO8859-1 without two char byte encoding +#So all transponders which needs this must be listed here +#TSID ONID +0x447 0x1 # Astra 19.2E 12.304 H - UPC Direct +0x427 0x1 # Astra 19.2E 10.920 H - UPC Direct +0x44b 0x1 # Astra 19.2E 12.382 H - UPC Direct +0x4ff 0x1 # Astra 19.2E 11.992 H - UPC Direct +0x407 0x1 # Astra 19.2E 11.671 H - UPC Direct +0x436 0x1 # Astra 19.2E 11.973 V - MTV Networks Europe +0x42a 0x1 # Astra 19.2E 11.739 V - MTV Networks Europe +0xc23 0x3 # Astra 23.5E 10.803 H - CS Link / SkyLink +0xc85 0x3 # Astra 23.5E 11.797 H - CS Link / SkyLink +0xc89 0x3 # Astra 23.5E 11.876 H - CS Link / SkyLink +0xc8f 0x3 # Astra 23.5E 11.992 H - CS Link / SkyLink +0xc93 0x3 # Astra 23.5E 12.070 H - CS Link / SkyLink +0xc95 0x3 # Astra 23.5E 12.109 H - SkyLink +0xc9a 0x3 # Astra 23.5E 12.207 V - SkyLink +0xbc6 0x3 # Astra 23.5E 12.525 V - CS Link / SkyLink +0xbc7 0x3 # Astra 23.5E 12.565 H - SkyLink +200 318 #Hotbird Eutelsat (Eurosport) +300 318 #Hotbird Eutelsat (Eurosport, Animal Pl.HD) +400 318 #Hotbird 13.0 Cyfra+ +700 318 #Hotbird 13.0 Cyfrowy Polsat +1000 318 #Hotbird 13.0 Grupa ITI +1100 318 #Hotbird 13.0 Cyfra+ +1500 318 #Hotbird 13.0 Cyfra+ +1600 318 #Hotbird 13.0 Cyfra+ +2800 318 #Hotbird 13.0 MTV Networks (Comedy Central) +7400 113 #Hotbird 13.0 Cyfrowy Polsat +7800 113 #Hotbird 13.0 Cyfrowy Polsat +7900 113 #Hotbird 13.0 Cyfrowy Polsat +8100 113 #Hotbird 13.0 Universal (Cyfra+) +8100 318 #Hotbird 13.0 Eutelsat (Universal) +11000 318 #Hotbird 13.0 Cyfra+ +11400 318 #Hotbird 13.0 Cyfra+ +11600 318 #Hotbird 13.0 BBC HD, ITI +11700 318 #Hotbird 13.0 Eurosport2 +11900 318 #Hotbird 13.0 Cyfra+ +12200 318 #Hotbird 13.0 Disney Channel Polska and other +12800 318 #Hotbird 13.0 Viacom ... MTV / VH1 Polska +13000 318 #Hotbird 13.0 BBC Polska and other +13100 318 #Hotbird 13.0 Crime and Investigation +13200 113 #Hotbird 13.0 Cyfrowy Polsat +15700 318 #Hotbird 13.0 Belgium Satellite Services - TV DISCO +#Fallback encoding table for single transponders +#ISO6937 also enables two byte char encoding +#TSID ONID ISO8859-X +20600 126 ISO8859-9 # Digital Platform 7E +20700 126 ISO8859-9 # Digital Platform 7E +20800 126 ISO8859-9 # Digital Platform 7E +20900 126 ISO8859-9 # Digital Platform 7E +21000 126 ISO8859-9 # Digital Platform 7E +21100 126 ISO8859-9 # Digital Platform 7E +41200 126 ISO8859-9 # Digital Platform 7E +50100 126 ISO8859-9 # Digital Platform 7E +50200 126 ISO8859-9 # Digital Platform 7E +50300 126 ISO8859-9 # Digital Platform 7E +50400 126 ISO8859-9 # Digital Platform 7E +50500 126 ISO8859-9 # Digital Platform 7E +50600 126 ISO8859-9 # Digital Platform 7E +50700 126 ISO8859-9 # Digital Platform 7E +50800 126 ISO8859-9 # Digital Platform 7E +50900 126 ISO8859-9 # Digital Platform 7E +51000 126 ISO8859-9 # Digital Platform 7E diff --git a/data/extensions/Makefile.am b/data/extensions/Makefile.am new file mode 100644 index 0000000..c142de3 --- /dev/null +++ b/data/extensions/Makefile.am @@ -0,0 +1,7 @@ +installdir = $(pkgdatadir)/extensions + +dist_install_DATA = \ + directory.png \ + movie.png \ + music.png \ + picture.png diff --git a/data/extensions/directory.png b/data/extensions/directory.png new file mode 100644 index 0000000..aad23c4 Binary files /dev/null and b/data/extensions/directory.png differ diff --git a/data/extensions/movie.png b/data/extensions/movie.png new file mode 100644 index 0000000..7f6ba12 Binary files /dev/null and b/data/extensions/movie.png differ diff --git a/data/extensions/music.png b/data/extensions/music.png new file mode 100644 index 0000000..9e15fc2 Binary files /dev/null and b/data/extensions/music.png differ diff --git a/data/extensions/picture.png b/data/extensions/picture.png new file mode 100644 index 0000000..b5c0fd2 Binary files /dev/null and b/data/extensions/picture.png differ diff --git a/data/fonts/DroidSans-Bold.ttf b/data/fonts/DroidSans-Bold.ttf new file mode 100644 index 0000000..6eea486 Binary files /dev/null and b/data/fonts/DroidSans-Bold.ttf differ diff --git a/data/fonts/Makefile.am b/data/fonts/Makefile.am new file mode 100644 index 0000000..84cc6db --- /dev/null +++ b/data/fonts/Makefile.am @@ -0,0 +1,8 @@ +installdir = $(datadir)/fonts + +dist_install_DATA = \ + ae_AlMateen.ttf \ + andale.ttf \ + lcd.ttf \ + md_khmurabi_10.ttf \ + nmsbd.ttf diff --git a/data/fonts/ae_AlMateen.license b/data/fonts/ae_AlMateen.license new file mode 100644 index 0000000..024d0d5 --- /dev/null +++ b/data/fonts/ae_AlMateen.license @@ -0,0 +1,2 @@ +This font is merged from the http://www.arabeyes.org/ project, and licensed as "GPL", +into it were merged the "DroidSans-Bold" glyphs to render Thai characters as well. diff --git a/data/fonts/ae_AlMateen.ttf b/data/fonts/ae_AlMateen.ttf new file mode 100644 index 0000000..4ee6566 Binary files /dev/null and b/data/fonts/ae_AlMateen.ttf differ diff --git a/data/fonts/andale.ttf b/data/fonts/andale.ttf new file mode 100644 index 0000000..db308df Binary files /dev/null and b/data/fonts/andale.ttf differ diff --git a/data/fonts/lcd.ttf b/data/fonts/lcd.ttf new file mode 100644 index 0000000..c84a993 Binary files /dev/null and b/data/fonts/lcd.ttf differ diff --git a/data/fonts/md_khmurabi_10.ttf b/data/fonts/md_khmurabi_10.ttf new file mode 100644 index 0000000..2e8af5f Binary files /dev/null and b/data/fonts/md_khmurabi_10.ttf differ diff --git a/data/fonts/nmsbd.ttf b/data/fonts/nmsbd.ttf new file mode 100644 index 0000000..73b27b3 Binary files /dev/null and b/data/fonts/nmsbd.ttf differ diff --git a/data/fonts/tuxtxt.ttf b/data/fonts/tuxtxt.ttf new file mode 100644 index 0000000..9be6547 Binary files /dev/null and b/data/fonts/tuxtxt.ttf differ diff --git a/data/freesat.t1 b/data/freesat.t1 new file mode 100644 index 0000000..282f85f --- /dev/null +++ b/data/freesat.t1 @@ -0,0 +1,6081 @@ +START:00:T: +START:010:B: +START:1000:C: +START:1001:I: +START:1101:S: +START:01100:L: +START:01110:D: +START:01111:H: +START:10100:R: +START:10101:N: +START:10110:E: +START:11000:F: +START:11001:A: +START:11100:M: +START:11101:P: +START:11110:W: +START:011011:Q: +START:101111:G: +START:111110:J: +START:0110100:K: +START:1011101:U: +START:1111110:O: +START:01101010:6: +START:01101011:.: +START:10111000:V: +START:11111110:Y: +START:101110011:2: +START:111111111:X: +START:1011100100:Z: +START:1111111100:8: +START:10111001010:1: +START:10111001011:3: +START:111111110100:4: +START:111111110101:': +START:111111110111: : +START:11111111011000:5: +START:11111111011011:0: +START:111111110110011:m: +START:1111111101100100:c: +START:1111111101101000:9: +START:1111111101101010:a: +START:1111111101101011:d: +START:11111111011001010:s: +START:11111111011001011:p: +START:11111111011010010:(: +START:111111110110100110:t: +START:1111111101101001110:7: +START:11111111011010011110:ESCAPE: +START:11111111011010011111:l: +ESCAPE:0:ESCAPE: +ESCAPE:1:ESCAPE: +STOP:0:ESCAPE: +STOP:1:ESCAPE: +0x03:0:ESCAPE: +0x03:1:ESCAPE: +0x04:0:ESCAPE: +0x04:1:ESCAPE: +0x05:0:ESCAPE: +0x05:1:ESCAPE: +0x06:0:ESCAPE: +0x06:1:ESCAPE: +0x07:0:ESCAPE: +0x07:1:ESCAPE: +0x08:0:ESCAPE: +0x08:1:ESCAPE: +0x09:0:ESCAPE: +0x09:1:ESCAPE: +0x0a:0:ESCAPE: +0x0a:1:ESCAPE: +0x0b:0:ESCAPE: +0x0b:1:ESCAPE: +0x0c:0:ESCAPE: +0x0c:1:ESCAPE: +0x0d:0:ESCAPE: +0x0d:1:ESCAPE: +0x0e:0:ESCAPE: +0x0e:1:ESCAPE: +0x0f:0:ESCAPE: +0x0f:1:ESCAPE: +0x10:0:ESCAPE: +0x10:1:ESCAPE: +0x11:0:ESCAPE: +0x11:1:ESCAPE: +0x12:0:ESCAPE: +0x12:1:ESCAPE: +0x13:0:ESCAPE: +0x13:1:ESCAPE: +0x14:0:ESCAPE: +0x14:1:ESCAPE: +0x15:0:ESCAPE: +0x15:1:ESCAPE: +0x16:0:ESCAPE: +0x16:1:ESCAPE: +0x17:0:ESCAPE: +0x17:1:ESCAPE: +0x18:0:ESCAPE: +0x18:1:ESCAPE: +0x19:0:ESCAPE: +0x19:1:ESCAPE: +0x1a:0:ESCAPE: +0x1a:1:ESCAPE: +0x1b:0:ESCAPE: +0x1b:1:ESCAPE: +0x1c:0:ESCAPE: +0x1c:1:ESCAPE: +0x1d:0:ESCAPE: +0x1d:1:ESCAPE: +0x1e:0:ESCAPE: +0x1e:1:ESCAPE: +0x1f:0:ESCAPE: +0x1f:1:ESCAPE: + :0000:W: + :0011:M: + :0100:C: + :0101:B: + :0111:P: + :1001:T: + :1100:N: + :1111:S: + :00011:I: + :00100:G: + :01100:H: + :01101:D: + :10000:o: + :10001:A: + :10100:t: + :10110:a: + :10111:F: + :11010:L: + :11011:R: + :001011:U: + :101011:O: + :111001:J: + :111010:E: + :0001000:f: + :0001001:Q: + :0001011:V: + :0010100:STOP: + :0010101:w: + :1110000:2: + :1110001:K: + :1110110:Y: + :1110111:i: + :00010100:-: + :10101001:1: + :101010000:&: + :101010101:X: + :0001010101:r: + :1010100010:5: + :1010100011:Z: + :1010101001:9: + :1010101101:s: + :1010101110:4: + :1010101111:3: + :00010101000:7: + :00010101100:b: + :00010101110:y: + :10101010000:': + :10101011000:6: + :000101011010:v: + :000101011011:d: + :000101011110:(: + :101010100010: : + :101010100011:0: + :101010110010:n: + :101010110011:8: + :0001010100110:g: + :0001010111110:u: + :00010101001000:+: + :00010101001001:.: + :00010101001010:ESCAPE: + :00010101001011:l: + :00010101001111:m: + :00010101111110:p: + :000101010011100:\: + :000101010011101:/: + :000101011111111:e: + :0001010111111101:": + :00010101111111001:c: + :000101011111110000:k: + :000101011111110001:h: +!:1:STOP: +!:01: : +!:001:.: +!:0001:!: +!:00001:": +!:000000:ESCAPE: +!:000001:0x3a: +":0: : +":10:ESCAPE: +":11:I: +#:0:ESCAPE: +#:1:ESCAPE: +$:0:ESCAPE: +$:1:ESCAPE: +%:1: : +%:00:ESCAPE: +%:01:STOP: +&:1: : +&:01:B: +&:000:ESCAPE: +&:001:.: +':1:s: +':000:m: +':010:C: +':0010:t: +':0011: : +':01100:d: +':01110:v: +':011011:r: +':011111:A: +':0110101:n: +':01101000:G: +':01111001:l: +':011010011:D: +':011110000:B: +':011110001:e: +':011110101:i: +':011110110:6: +':0110100100:L: +':0111101001:STOP: +':0111101111:w: +':01101001010:O: +':01111010000:S: +':01111010001:E: +':01111011101:N: +':011110111001:R: +':0110100101100:a: +':0110100101101:M: +':0110100101110:K: +':0110100101111:F: +':0111101110000:0: +':01111011100010:ESCAPE: +':01111011100011:c: +(:1:c: +(:000:1: +(:0010:M: +(:0011:U: +(:0100:R: +(:0101:D: +(:0110:H: +(:01110:S: +(:011110:F: +(:0111110:G: +(:01111110:ESCAPE: +(:01111111:Y: +):1:STOP: +):00:ESCAPE: +):01: : +*:0:*: +*:101: : +*:1000:d: +*:1100:m: +*:1101:t: +*:1111:s: +*:10010:e: +*:11100:g: +*:11101:k: +*:100110:ESCAPE: +*:100111:y: ++:0:ESCAPE: ++:1: : +,:1: : +,:01:0: +,:000:ESCAPE: +,:001:.: +-:11: : +-:011:S: +-:100:G: +-:101:O: +-:0011:T: +-:0100:U: +-:00000:E: +-:00010:D: +-:000010:m: +-:000110:0: +-:000111:I: +-:001010:6: +-:010100:F: +-:010101:o: +-:0000110:L: +-:0000111:C: +-:0010001:A: +-:0010010:t: +-:0010011:Y: +-:0010111:2: +-:0101100:B: +-:0101101:.: +-:00100000:P: +-:00100001:Z: +-:01011100:8: +-:01011101:i: +-:01011110:d: +-:01011111:H: +-:001011001:N: +-:001011011:R: +-:0010110000:1: +-:0010110001:W: +-:00101101001:c: +-:00101101010:a: +-:00101101011:M: +-:001011010000:ESCAPE: +-:001011010001:Q: +.:1:.: +.:01:STOP: +.:0010: : +.:00000:I: +.:00001:T: +.:00010:C: +.:00110:p: +.:00111:0: +.:000111:H: +.:00011010:W: +.:000110001:S: +.:000110110:3: +.:000110111:B: +.:0001100000:1: +.:0001100001:M: +.:0001100110:c: +.:00011001000:t: +.:00011001001:R: +.:00011001010:F: +.:00011001110:E: +.:00011001111:A: +.:0001100101100:ESCAPE: +.:0001100101101:l: +.:0001100101110:d: +.:0001100101111:U: +/:00:1: +/:10:7: +/:010:4: +/:011:2: +/:110:3: +/:1110:5: +/:111100:6: +/:111110:C: +/:1111010:9: +/:1111011: : +/:1111110:8: +/:11111111:U: +/:1111111000:G: +/:1111111010:0: +/:11111110010:ESCAPE: +/:11111110011:W: +/:11111110110:V: +/:11111110111:S: +0:00:6: +0:01: : +0:11:0: +0:1001:p: +0:1010:STOP: +0:10000:1: +0:10001:a: +0:10111:7: +0:1011000:-: +0:1011010:s: +0:10110011:4: +0:10110110:t: +0:101101111:%: +0:1011001000:8: +0:1011001001:0x3a: +0:1011001010:5: +0:1011001011:2: +0:1011011100:/: +0:10110111011:U: +0:101101110101:,: +0:1011011101000:.: +0:10110111010010:ESCAPE: +0:10110111010011:l: +1:01:STOP: +1:000:.: +1:101:0: +1:111:1: +1:0010:2: +1:0011: : +1:1101:/: +1:10010:8: +1:11000:3: +1:100000:5: +1:100001:s: +1:100010:6: +1:100011:0x3a: +1:100110:': +1:110010:X: +1:110011:9: +1:1001111:4: +1:10011101:-: +1:100111001:7: +1:1001110000:): +1:10011100010:ESCAPE: +1:10011100011:,: +2:0:0: +2:11:4: +2:101:STOP: +2:1001: : +2:10000:0x3a: +2:1000101:5: +2:1000111:/: +2:10001000:.: +2:10001001:1: +2:10001100:W: +2:100011011:7: +2:10001101001:3: +2:10001101011:Z: +2:100011010000:n: +2:100011010001:6: +2:100011010101:': +2:1000110101000:ESCAPE: +2:1000110101001:s: +3:0: : +3:10:STOP: +3:1100:r: +3:1101:/: +3:1111:B: +3:11100:0: +3:1110100:0x3a: +3:1110110:-: +3:11101010:1: +3:11101011:8: +3:11101111:4: +3:1110111000:6: +3:1110111011:9: +3:11101110011:t: +3:11101110100:3: +3:111011100100:ESCAPE: +3:111011100101:e: +3:111011101010:7: +3:111011101011:5: +4:0:STOP: +4:11: : +4:1001:0x3a: +4:1011:/: +4:10001:8: +4:10101:.: +4:100000:9: +4:101000:0: +4:1010010:M: +4:10000101:I: +4:10000110:): +4:10100110:R: +4:10100111:-: +4:100001000:W: +4:100001110:P: +4:100001111:5: +4:1000010011:2: +4:10000100100:ESCAPE: +4:10000100101:': +5:0:STOP: +5:11: : +5:101:0: +5:1001:/: +5:100001:-: +5:100011:0x3a: +5:1000001:t: +5:1000100:3: +5:1000101:1: +5:10000000:ESCAPE: +5:10000001:a: +6:00:STOP: +6:01: : +6:10:0: +6:111:0x3a: +6:11001:.: +6:11011:i: +6:110000:-: +6:110101:a: +6:1100011:4: +6:1101000:8: +6:1101001:/: +6:11000100:6: +6:110001011:9: +6:1100010100:3: +6:11000101010:ESCAPE: +6:11000101011:t: +7:1:STOP: +7:01: : +7:000:0: +7:0011:.: +7:00101:/: +7:0010000:1: +7:0010010:5: +7:00100010:ESCAPE: +7:00100011:4: +7:00100110:3: +7:00100111:2: +8:1: : +8:00:0: +8:010:0x3a: +8:01101:STOP: +8:011000:t: +8:011001:p: +8:011101:8: +8:011110:.: +8:011111:6: +8:0111000:5: +8:01110010:9: +8:011100110:M: +8:0111001110:F: +8:01110011110:ESCAPE: +8:01110011111:c: +9:0:1: +9:11:STOP: +9:1000:9: +9:1010:.: +9:10011:0: +9:100100: : +9:100101:8: +9:101100:7: +9:101101:/: +9:101110:6: +9:1011111:0x3a: +9:10111101:4: +9:101111000:ESCAPE: +9:101111001:3: +0x3a:1: : +0x3a:00:0: +0x3a:011:.: +0x3a:0100:2: +0x3a:01010:1: +0x3a:010111:3: +0x3a:0101101:C: +0x3a:01011000:ESCAPE: +0x3a:01011001:T: +;:1: : +;:00:ESCAPE: +;:01:.: +<:0:ESCAPE: +<:1:ESCAPE: +=:0:ESCAPE: +=:1:ESCAPE: +>:0:ESCAPE: +>:1:ESCAPE: +?:1:STOP: +?:01: : +?:001:0x3a: +?:0000:ESCAPE: +?:0001:.: +@:0:ESCAPE: +@:1:H: +A:001:r: +A:010: : +A:100:l: +A:110:n: +A:0000:m: +A:0111:g: +A:1111:d: +A:00010:w: +A:01100:T: +A:01101:c: +A:10101:t: +A:10110:f: +A:10111:i: +A:11100:s: +A:000110:u: +A:000111:STOP: +A:101001:R: +A:111010:b: +A:1010001:v: +A:1110110:p: +A:10100000:S: +A:11101110:M: +A:101000011:P: +A:111011111:.: +A:10100001000:e: +A:10100001001:B: +A:10100001010:1: +A:11101111011:-: +A:101000010110:k: +A:101000010111:h: +A:111011110000:a: +A:111011110100:y: +A:111011110101:*: +A:1110111100010:x: +A:1110111100011:': +A:1110111100100:N: +A:1110111100110:2: +A:11101111001010:0x3a: +A:11101111001111:z: +A:111011110010110:L: +A:111011110010111:F: +A:111011110011100:D: +A:1110111100111010:ESCAPE: +A:1110111100111011:q: +B:00:C: +B:01:B: +B:101:r: +B:1001:i: +B:1100:o: +B:1101:u: +B:1110:a: +B:1111:e: +B:10001:l: +B:1000000:STOP: +B:1000010:y: +B:10000010:O: +B:10000110:3: +B:100000111:A: +B:100001110:S: +B:1000001101:0x3a: +B:10000011000:.: +B:10000011001:w: +B:10000111101:h: +B:10000111110:*: +B:10000111111: : +B:100001111001:R: +B:1000011110000:': +B:10000111100011:T: +B:100001111000100:ESCAPE: +B:100001111000101:4: +C:00:o: +C:01: : +C:100:l: +C:110:h: +C:1010:r: +C:1110:a: +C:10110:i: +C:10111:e: +C:111100:u: +C:111101:B: +C:1111100:y: +C:1111110:!: +C:11111011:.: +C:111110100:w: +C:111111100:STOP: +C:111111110:S: +C:111111111:T: +C:1111101011:2: +C:1111111011:I: +C:11111010100:4: +C:11111010101:*: +C:11111110101:D: +C:111111101000:U: +C:1111111010010:': +C:11111110100110:n: +C:111111101001110:z: +C:11111110100111100:O: +C:11111110100111101:E: +C:11111110100111110:A: +C:111111101001111110:ESCAPE: +C:111111101001111111:s: +D:01:o: +D:10:a: +D:000:r: +D:110:e: +D:111:i: +D:00100:t: +D:00111:u: +D:001011: : +D:0010101:J: +D:0011000:y: +D:0011010:STOP: +D:0011011:I: +D:00110011:0x3a: +D:001010001:*: +D:001010010:-: +D:001010011:&: +D:001100100:': +D:0010100000:A: +D:0010100001:h: +D:00110010101:N: +D:00110010110:V: +D:001100101110:D: +D:001100101111:w: +D:0011001010000:O: +D:0011001010001:E: +D:0011001010011:d: +D:00110010100100:ESCAPE: +D:00110010100101:T: +E:00:m: +E:011:v: +E:101:n: +E:111:a: +E:0100:E: +E:1000:STOP: +E:1101:x: +E:10011:d: +E:11001:l: +E:010100:4: +E:010101:y: +E:010110:u: +E:100100:r: +E:110000:i: +E:0101111:s: +E:1001010:F: +E:1100010:X: +E:10010110:R: +E:11000111: : +E:010111010:g: +E:100101111:0x3a: +E:110001100:T: +E:110001101:': +E:0101110001:c: +E:0101110011:q: +E:0101110110:e: +E:0101110111:C: +E:1001011100:p: +E:01011100000:-: +E:01011100101:Z: +E:10010111011:t: +E:010111000010:S: +E:010111000011:.: +E:100101110101:W: +E:0101110010000:!: +E:1001011101000:o: +E:01011100100010:f: +E:01011100100011:U: +E:01011100100100:N: +E:01011100100101:M: +E:01011100100110:L: +E:01011100100111:A: +E:10010111010011:D: +E:100101110100100:ESCAPE: +E:100101110100101:w: +F:00:i: +F:10:a: +F:011:r: +F:110:u: +F:111:o: +F:0100:e: +F:01011:l: +F:0101000:A: +F:0101010:O: +F:01010010: : +F:010100110:h: +F:010100111:t: +F:010101101:f: +F:010101111:L: +F:0101011001:STOP: +F:01010111000:j: +F:01010111001:I: +F:01010111010:.: +F:01010111011:1: +F:010101100000:M: +F:010101100010:*: +F:010101100011:K: +F:0101011000010:y: +F:01010110000111:H: +F:010101100001100:ESCAPE: +F:010101100001101:!: +G:10:r: +G:001:M: +G:010:a: +G:011:o: +G:110:i: +G:111:e: +G:00001:u: +G:00010:X: +G:000001:h: +G:000111:l: +G:0000001:y: +G:0001100:w: +G:00000000:0x3a: +G:00011011:C: +G:000000011:STOP: +G:000110100:-: +G:0001101010:P: +G:0001101011: : +G:00000001000:': +G:00000001010:A: +G:000000010010:U: +G:000000010110:T: +G:000000010111:4: +G:0000000100110:ESCAPE: +G:0000000100111:Y: +H:0:o: +H:100:a: +H:101:i: +H:110:e: +H:1110:u: +H:11110:R: +H:111110:A: +H:1111110:.: +H:111111101:y: +H:111111110:S: +H:1111111110:E: +H:1111111111:r: +H:11111110000:STOP: +H:11111110010:L: +H:11111110011:M: +H:111111100011:w: +H:1111111000101:D: +H:11111110001000:ESCAPE: +H:11111110001001:I: +I:0:T: +I:100:s: +I:101:n: +I:1101:t: +I:11001: : +I:11101:': +I:11111:r: +I:110000:I: +I:110001:STOP: +I:111001:m: +I:1110000:d: +I:1110001:N: +I:1111001:z: +I:1111010:.: +I:11110000:a: +I:11110001:Y: +I:111101100:S: +I:111101110:c: +I:11110110101:D: +I:11110110110:f: +I:11110111100:l: +I:11110111111:y: +I:111101101000:V: +I:111101101110:o: +I:111101111011:F: +I:1111011010010:,: +I:1111011010011:A: +I:1111011011110:O: +I:1111011110101:g: +I:1111011111000:C: +I:1111011111001:0x3a: +I:1111011111011:v: +I:11110110111110:p: +I:11110110111111:E: +I:11110111101000:B: +I:11110111110100:k: +I:11110111110101:b: +I:1111011110100100:ESCAPE: +I:1111011110100101:R: +I:1111011110100110:L: +I:1111011110100111:G: +J:00:a: +J:01:u: +J:11:e: +J:101:o: +J:1001:i: +J:10000: : +J:100010:K: +J:1000111:STOP: +J:100011001:s: +J:100011010:F: +J:1000110000:V: +J:1000110001:': +J:1000110111:f: +J:10001101101:G: +J:100011011000:ESCAPE: +J:100011011001:D: +K:01:i: +K:11:y: +K:001:e: +K:101: : +K:0000:a: +K:1000:o: +K:00010:STOP: +K:00011:r: +K:100101:t: +K:100110:n: +K:100111:S: +K:10010011:G: +K:100100000:-: +K:100100011:O: +K:100100100:h: +K:100100101:w: +K:1001000010:1: +K:1001000011:': +K:10010001011:u: +K:100100010000:T: +K:100100010001:N: +K:100100010010:0x3a: +K:100100010011:.: +K:100100010100:,: +K:1001000101010:ESCAPE: +K:1001000101011:l: +L:00:a: +L:10:o: +L:11:i: +L:010:e: +L:0111:u: +L:01101:K: +L:0110000:l: +L:0110010:A: +L:0110011: : +L:01100011:y: +L:0110001000:L: +L:0110001001:I: +L:01100010100:C: +L:01100010101:.: +L:01100010111:STOP: +L:011000101101:': +L:0110001011000:E: +L:01100010110010:ESCAPE: +L:01100010110011:Y: +M:01:a: +M:10:o: +M:000:e: +M:111:i: +M:0010:T: +M:1100:y: +M:1101:u: +M:00110:STOP: +M:001111:c: +M:00111001:r: +M:00111010:E: +M:001110111:F: +M:0011100001:Z: +M:0011100011: : +M:0011101100:1: +M:0011101101:I: +M:00111000001:h: +M:00111000100:C: +M:001110000001:Q: +M:001110001010:K: +M:0011100010110:P: +M:00111000000000:0x3a: +M:00111000000001:.: +M:00111000000010:': +M:00111000101110:M: +M:001110000000110:ESCAPE: +M:001110000000111:w: +M:001110001011110:S: +M:001110001011111:R: +N:1:e: +N:00:o: +N:011:i: +N:0101:a: +N:01001:u: +N:010000:C: +N:01000100:E: +N:01000110:F: +N:010001110:B: +N:010001111:H: +N:0100010110:Y: +N:01000101000:G: +N:01000101001:': +N:01000101011:I: +N:01000101110:A: +N:010001010100:M: +N:010001011110: : +N:010001011111:STOP: +N:0100010101010:T: +N:01000101010110:.: +N:010001010101110:ESCAPE: +N:010001010101111:Z: +O:000:': +O:010:f: +O:110:u: +O:111:n: +O:0010:M: +O:0011:l: +O:1001:m: +O:01101:r: +O:01110:d: +O:10000:p: +O:10100:h: +O:10110:STOP: +O:011001:S: +O:011110:z: +O:011111:b: +O:100011:v: +O:101010:w: +O:101011:U: +O:1011100:T: +O:1011101:O: +O:1011110:K: +O:01100001:C: +O:01100010:x: +O:01100011:.: +O:10001001:t: +O:10001011: : +O:10111110:s: +O:10111111:N: +O:011000001:g: +O:100010000:-: +O:100010101:a: +O:1000100010:i: +O:1000100011:e: +O:1000101001:o: +O:01100000000:A: +O:01100000001:j: +O:01100000010:c: +O:10001010000:2: +O:011000000111:R: +O:100010100010:P: +O:100010100011:0x3a: +O:0110000001100:E: +O:01100000011010:ESCAPE: +O:01100000011011:L: +P:01:r: +P:10:l: +P:000:e: +P:001:a: +P:111:o: +P:1101:i: +P:110000:D: +P:110001:u: +P:110011:h: +P:11001000: : +P:11001010:2: +P:110010010:H: +P:110010011:M: +P:110010110:S: +P:11001011100:0x3a: +P:11001011101:*: +P:110010111101:s: +P:1100101111001:I: +P:1100101111100:STOP: +P:1100101111101:G: +P:1100101111110:': +P:11001011111110:y: +P:110010111100000:Y: +P:110010111100001:L: +P:110010111100010:C: +P:110010111100011:ESCAPE: +P:110010111111110:O: +P:110010111111111:.: +Q:1:u: +Q:000:I: +Q:001:STOP: +Q:010:V: +Q:0111: : +Q:01101:C: +Q:011000:ESCAPE: +Q:011001:': +R:00:a: +R:01:o: +R:11:e: +R:100:i: +R:1011:u: +R:10101:E: +R:101000:D: +R:1010011:STOP: +R:10100101:h: +R:1010010000:I: +R:1010010010:y: +R:1010010011:n: +R:101001000110: : +R:1010010001000:': +R:1010010001011:S: +R:1010010001110:N: +R:10100100010010:B: +R:10100100010011:.: +R:10100100010100:&: +R:10100100011110:T: +R:10100100011111:1: +R:101001000101010:ESCAPE: +R:101001000101011:C: +S:001:o: +S:010:p: +S:011:u: +S:110:h: +S:111:t: +S:0001:a: +S:1001:e: +S:1011:c: +S:00000:n: +S:10001:i: +S:10101:k: +S:000011:w: +S:101000:m: +S:0000101:A: +S:1000010:l: +S:1010010:q: +S:1010011:M: +S:00001000:2: +S:00001001:P: +S:10000000:O: +S:10000010:I: +S:10000011: : +S:10000111:STOP: +S:100000010:y: +S:100001100:E: +S:1000000111:?: +S:1000011011:H: +S:10000001100:B: +S:10000110100:g: +S:100000011011:r: +S:100001101010:*: +S:1000011010110:3: +S:1000011010111:.: +S:10000001101000:5: +S:10000001101010:0x3a: +S:10000001101011:1: +S:100000011010010:C: +S:1000000110100110:ESCAPE: +S:1000000110100111:Y: +T:0:h: +T:101:o: +T:111:V: +T:1000:e: +T:1001:r: +T:11000:a: +T:11010:w: +T:110011:i: +T:1101101:O: +T:1101111:H: +T:11001001:y: +T:11001010:M: +T:11011000:.: +T:11011100:u: +T:11011101:W: +T:110010001:P: +T:110010110:0x3a: +T:110010111:4: +T:110110011:I: +T:1101100100: : +T:1101100101:STOP: +T:11001000010:X: +T:11001000011:s: +T:110010000000:T: +T:110010000001:S: +T:110010000010:B: +T:1100100000110:U: +T:11001000001110:A: +T:1100100000111100:C: +T:1100100000111101:*: +T:1100100000111111:N: +T:11001000001111100:ESCAPE: +T:11001000001111101:Y: +U:0:n: +U:10:p: +U:1101:K: +U:1111:l: +U:11000:R: +U:11100:S: +U:110011:E: +U:111011:s: +U:1100101:g: +U:1110101:T: +U:11001001: : +U:110010000:-: +U:110010001:r: +U:111010000:2: +U:111010001:m: +U:111010011:STOP: +U:1110100100:.: +U:11101001010:c: +U:111010010110:k: +U:11101001011100:ESCAPE: +U:11101001011101:z: +U:11101001011110:t: +U:11101001011111:B: +V:1: : +V:000:0x3a: +V:011:i: +V:0010:e: +V:0011:a: +V:0100:3: +V:010101:C: +V:010111:STOP: +V:0101000:': +V:0101001:4: +V:0101101:o: +V:01011001:I: +V:0101100000:s: +V:0101100001:D: +V:0101100010:.: +V:01011000110:8: +V:0101100011101:u: +V:0101100011110:r: +V:0101100011111:B: +V:01011000111000:ESCAPE: +V:01011000111001:E: +W:01:o: +W:11:e: +W:001:h: +W:100:a: +W:101:i: +W:00000:.: +W:00010:O: +W:00011:r: +W:000011:y: +W:0000100:u: +W:00001010:STOP: +W:000010111:A: +W:00001011001:Y: +W:00001011010:T: +W:00001011011: : +W:000010110000:I: +W:0000101100010:ESCAPE: +W:0000101100011:l: +X:00:STOP: +X:10: : +X:11:t: +X:010:T: +X:0111:c: +X:01101:m: +X:011001:U: +X:01100000:a: +X:01100001:X: +X:01100010:-: +X:011000110:x: +X:0110001111:9: +X:01100011100:ESCAPE: +X:01100011101:i: +Y:1:o: +Y:01:e: +Y:000:u: +Y:0011: : +Y:00100:v: +Y:001010:a: +Y:00101110:P: +Y:00101111:': +Y:001011000:n: +Y:001011011:r: +Y:0010110010:D: +Y:00101100110:w: +Y:00101100111:s: +Y:00101101000:R: +Y:00101101001:L: +Y:00101101010:STOP: +Y:001011010110:C: +Y:0010110101110:ESCAPE: +Y:0010110101111:N: +Z:1:o: +Z:00:a: +Z:010:i: +Z:01100:O: +Z:01101:u: +Z:01110:e: +Z:011110: : +Z:0111111:STOP: +Z:01111101:0x3a: +Z:011111000:ESCAPE: +Z:011111001:-: +[:0:ESCAPE: +[:1:ESCAPE: +\:0:ESCAPE: +\:1:x: +]:0:ESCAPE: +]:1:ESCAPE: +^:0:ESCAPE: +^:1:ESCAPE: +_:0:ESCAPE: +_:1:ESCAPE: +`:0:ESCAPE: +`:1:ESCAPE: +a:001:r: +a:011:t: +a:100:l: +a:110:n: +a:0001:m: +a:0100:c: +a:1010:s: +a:1110:y: +a:10110: : +a:10111:d: +a:11110:i: +a:11111:k: +a:000010:b: +a:000011:STOP: +a:010110:p: +a:010111:g: +a:0000000:e: +a:0000001:': +a:0000011:w: +a:0101001:u: +a:0101010:z: +a:0101011:v: +a:00000101:f: +a:01010001:h: +a:000001001:0x3a: +a:0000010000:!: +a:0101000000:o: +a:0101000001:x: +a:00000100010:-: +a:00000100011:a: +a:01010000101:.: +a:01010000110:N: +a:01010000111:,: +a:010100001000:q: +a:0101000010010:j: +a:01010000100111:?: +a:010100001001101:J: +a:0101000010011000:ESCAPE: +a:0101000010011001:U: +b:000:r: +b:001:o: +b:010:e: +b:011:a: +b:100:i: +b:1011:u: +b:1100:y: +b:1101:l: +b:1111: : +b:10101:s: +b:11100:b: +b:11101:STOP: +b:101000:h: +b:1010010:3: +b:10100111:': +b:1010011001:t: +b:1010011010:j: +b:10100110000:n: +b:10100110001:d: +b:10100110111:w: +b:101001101101:m: +b:1010011011001:.: +b:10100110110000:ESCAPE: +b:10100110110001:0x3a: +c:00:k: +c:010:o: +c:100:h: +c:110:t: +c:111:e: +c:0111:r: +c:10100: : +c:10110:i: +c:10111:a: +c:011000:l: +c:011001:y: +c:011010:s: +c:011011:STOP: +c:1010100:c: +c:1010111:u: +c:10101010:0x3a: +c:10101011:P: +c:101011001:D: +c:1010110100:G: +c:1010110110:b: +c:10101100000:L: +c:10101100001:K: +c:10101100011:A: +c:10101101010:q: +c:10101101110:.: +c:10101101111:C: +c:101011000100:n: +c:101011000101:': +c:1010110101100:B: +c:1010110101101:I: +c:10101101011101:f: +c:10101101011110:8: +c:101011010111000:M: +c:101011010111001:ESCAPE: +c:101011010111111:F: +c:1010110101111100:w: +c:1010110101111101:Q: +d:11: : +d:001:e: +d:100:STOP: +d:101:a: +d:0001:y: +d:0100:i: +d:0110:s: +d:00000:o: +d:01010:d: +d:000011:u: +d:010110:r: +d:010111:l: +d:011101:v: +d:011110:g: +d:0000100:': +d:0111111:.: +d:00001010:0x3a: +d:00001011:h: +d:01110000:c: +d:01110010:n: +d:01110011:w: +d:011100010:?: +d:011111000:!: +d:011111001:-: +d:011111010:f: +d:0111000111:m: +d:0111110110:,: +d:01111101110:t: +d:01111101111:b: +d:011100011001:): +d:011100011010:/: +d:011100011011:k: +d:0111000110001:p: +d:01110001100001:z: +d:011100011000000:ESCAPE: +d:011100011000001:4: +e:01: : +e:000:s: +e:101:r: +e:0010:t: +e:1001:n: +e:1100:STOP: +e:1110:a: +e:1111:w: +e:10000:l: +e:11011:e: +e:001110:m: +e:100010:c: +e:100011:d: +e:0011010:i: +e:0011011:p: +e:0011110:b: +e:1101000:v: +e:1101011:y: +e:00110000:g: +e:00110001:f: +e:00110010:x: +e:00111110:k: +e:00111111:0x3a: +e:11010011:o: +e:11010100:': +e:001100111:h: +e:110100101:.: +e:0011001100:P: +e:0011001101:B: +e:1101001000:,: +e:1101010100:V: +e:1101010101:z: +e:1101010111:j: +e:11010010010:4: +e:11010010011:?: +e:11010101101:u: +e:110101011001:-: +e:1101010110001:!: +e:11010101100001:q: +e:110101011000001:G: +e:1101010110000000:ESCAPE: +e:1101010110000001:S: +f:0: : +f:101:o: +f:1001:t: +f:1100:a: +f:1101:i: +f:1111:e: +f:10000:.: +f:11100:r: +f:11101:f: +f:100010:STOP: +f:10001101:y: +f:10001111:u: +f:100011000:': +f:100011101:l: +f:1000110011:n: +f:1000111000:g: +f:10001100100:c: +f:10001110010:-: +f:100011001010:,: +f:100011001011:s: +f:100011100111:0x3a: +f:1000111001101:k: +f:10001110011000:ESCAPE: +f:10001110011001:b: +g:00:h: +g:10: : +g:010:STOP: +g:011:e: +g:1100:i: +g:11100:0x3a: +g:11101:r: +g:11111:a: +g:110100:s: +g:110111:l: +g:111101:u: +g:1101011:b: +g:1101100:g: +g:1101101:o: +g:1111001:n: +g:11010100:2: +g:11110000:!: +g:111100011:d: +g:1101010100:.: +g:1101010101:,: +g:1101010110:': +g:1101010111:t: +g:1111000101:y: +g:11110001000:w: +g:111100010011:m: +g:11110001001011:?: +g:111100010010000:p: +g:111100010010001:f: +g:111100010010010:@: +g:111100010010011:-: +g:111100010010101:;: +g:1111000100101000:ESCAPE: +g:1111000100101001:z: +h:0:e: +h:101:o: +h:1001:i: +h:1100:a: +h:1110: : +h:1111:t: +h:11010:r: +h:11011:STOP: +h:100000:b: +h:100001:u: +h:10001000:w: +h:10001001:d: +h:10001010:n: +h:10001011:y: +h:10001100:!: +h:10001101:l: +h:10001111:.: +h:100011100:': +h:1000111010:s: +h:10001110110:m: +h:100011101111:0x3a: +h:10001110111000:f: +h:10001110111001:?: +h:10001110111010:c: +h:1000111011101100:v: +h:1000111011101101:q: +h:1000111011101110:g: +h:100011101110111100:h: +h:100011101110111101:ESCAPE: +h:100011101110111110:,: +h:100011101110111111:*: +i:01:n: +i:000:c: +i:1001:o: +i:1010:l: +i:1100:g: +i:1101:s: +i:1110:t: +i:1111:e: +i:00101:a: +i:00110:v: +i:10000:r: +i:10001:d: +i:10110:m: +i:001000:p: +i:001110: : +i:101111:f: +i:0011110:z: +i:0011111:STOP: +i:1011100:b: +i:1011101:k: +i:00100101:-: +i:00100110:x: +i:001001001:': +i:001001111:q: +i:0010011100:u: +i:0010011101:i: +i:00100100001:h: +i:00100100010:0x3a: +i:00100100011:w: +i:0010010000001:,: +i:0010010000010:y: +i:0010010000011:/: +i:00100100000000:.: +i:001001000000010:ESCAPE: +i:001001000000011:j: +j:0:y: +j:11:o: +j:101:e: +j:1001:a: +j:10001:u: +j:100001:i: +j:1000000:STOP: +j:10000010:ESCAPE: +j:10000011: : +k:00: : +k:10:e: +k:010:i: +k:110:STOP: +k:0110:y: +k:0111:s: +k:1111:f: +k:111001:a: +k:111010:l: +k:1110001:0x3a: +k:1110110:k: +k:11100000:': +k:11101111:.: +k:111000011:w: +k:111011100:o: +k:1110000101:h: +k:11100001000:b: +k:11100001001:,: +k:11101110111:n: +k:111011101010:?: +k:111011101100:m: +k:111011101101:!: +k:1110111010010:u: +k:1110111010011:c: +k:1110111010110:d: +k:1110111010111:t: +k:11101110100001:j: +k:11101110100010:-: +k:111011101000000:p: +k:111011101000001:/: +k:111011101000111:S: +k:1110111010001100:ESCAPE: +k:1110111010001101:r: +l:01:e: +l:000:l: +l:101:a: +l:0011:y: +l:1000:STOP: +l:1001:d: +l:1100:o: +l:1110:i: +l:1111: : +l:00100:u: +l:11010:s: +l:001010:t: +l:001011:m: +l:1101101:k: +l:11011000:f: +l:11011100:b: +l:11011110:': +l:11011111:c: +l:110110011:v: +l:110111010:0x3a: +l:1101100101:.: +l:1101110110:w: +l:11011001000:z: +l:11011101111:p: +l:110110010010:h: +l:110110010011:*: +l:1101110111000:g: +l:1101110111001:,: +l:11011101110100:r: +l:11011101110101:n: +l:11011101110111:-: +l:110111011101100:!: +l:1101110111011011:?: +l:11011101110110101:C: +l:110111011101101000:ESCAPE: +l:110111011101101001:j: +m:10:e: +m:001:m: +m:011: : +m:111:a: +m:0000:i: +m:0001:STOP: +m:0100:y: +m:1101:p: +m:01010:b: +m:11000:o: +m:110010:n: +m:110011:s: +m:0101100:l: +m:0101110:f: +m:01011010:0x3a: +m:01011110:4: +m:010110110:h: +m:010111110:w: +m:0101101111:': +m:0101111110:r: +m:0101111111:u: +m:01011011101:.: +m:010110111001:k: +m:0101101110000:ESCAPE: +m:0101101110001:d: +n:000:i: +n:100:g: +n:101: : +n:110:d: +n:0011:a: +n:0100:s: +n:0110:e: +n:1110:STOP: +n:1111:t: +n:01110:c: +n:01111:n: +n:001010:y: +n:010100:': +n:010101:k: +n:010111:o: +n:0010000:r: +n:0010011:f: +n:0010110:u: +n:0010111:j: +n:00100010:v: +n:00100100:-: +n:00100101:.: +n:01011000:l: +n:01011010:x: +n:01011011:0x3a: +n:001000111:,: +n:010110011:m: +n:0010001100:!: +n:00100011010:z: +n:01011001001:?: +n:01011001010:h: +n:01011001011:b: +n:001000110110:B: +n:001000110111:*: +n:010110010000:w: +n:0101100100011:q: +n:01011001000101:p: +n:010110010001000:;: +n:0101100100010010:/: +n:0101100100010011:ESCAPE: +o:00:r: +o:110:n: +o:0100:f: +o:0101: : +o:0110:w: +o:1000:o: +o:1011:u: +o:01111:t: +o:10010:c: +o:10100:p: +o:10101:d: +o:11100:m: +o:11110:l: +o:011100:a: +o:011101:b: +o:100110:y: +o:100111:STOP: +o:111010:s: +o:111011:k: +o:1111101:v: +o:1111110:g: +o:11111111:i: +o:111110001:h: +o:111110010:!: +o:111111100:e: +o:111111101:j: +o:1111100110:': +o:11111000001:?: +o:11111000010:0x3a: +o:11111001110:z: +o:11111001111:x: +o:111110000000:J: +o:111110000110:.: +o:111110000111:-: +o:11111000000100:4: +o:11111000000110:,: +o:11111000000111:G: +o:111110000001011:): +o:1111100000010100:S: +o:11111000000101010:D: +o:111110000001010110:ESCAPE: +o:111110000001010111:q: +p:00:e: +p:010:STOP: +p:100:i: +p:110:o: +p:0110:s: +p:1010: : +p:1110:p: +p:01110:l: +p:01111:r: +p:10110:h: +p:11110:a: +p:101110:t: +p:101111:': +p:1111100:d: +p:1111101:m: +p:1111110:y: +p:111111101:0x3a: +p:111111111:!: +p:1111111100:w: +p:1111111101:u: +p:11111110000:b: +p:11111110010:-: +p:11111110011:.: +p:111111100011:n: +p:1111111000101:k: +p:11111110001001:,: +p:111111100010000:ESCAPE: +p:111111100010001:c: +q:1:u: +q:01:STOP: +q:001:0x3a: +q:0000:ESCAPE: +q:0001:': +r:000: : +r:011:i: +r:101:e: +r:0011:y: +r:0100:d: +r:1000:s: +r:1001:t: +r:1100:a: +r:1101:STOP: +r:1111:o: +r:01011:n: +r:11101:l: +r:001001:k: +r:001010:r: +r:001011:m: +r:010101:u: +r:111001:g: +r:0010000:': +r:0101001:c: +r:1110001:0x3a: +r:00100010:f: +r:00100011:.: +r:01010001:b: +r:11100000:v: +r:010100000:,: +r:010100001:p: +r:111000010:w: +r:1110000111:j: +r:11100001100:-: +r:111000011010:h: +r:1110000110110:G: +r:11100001101110:q: +r:111000011011111:S: +r:1110000110111100:!: +r:111000011011110100:*: +r:111000011011110110:T: +r:1110000110111101010:ESCAPE: +r:1110000110111101011:E: +r:1110000110111101110:1: +r:1110000110111101111:/: +s:10: : +s:11:STOP: +s:011:t: +s:0000:s: +s:0010:i: +s:0011:h: +s:00011:;: +s:01010:e: +s:010001:o: +s:010011:c: +s:010110:0x3a: +s:0001000:.: +s:0001001:!: +s:0001011:y: +s:0100000:p: +s:0100100:a: +s:0101111:u: +s:00010100:,: +s:00010101:f: +s:01000011:': +s:01001011:n: +s:01011100:l: +s:01011101:r: +s:010000101:k: +s:010010100:d: +s:0100001001:m: +s:0100101011:b: +s:01000010000:?: +s:01000010001:w: +s:01001010100:g: +s:010010101010:q: +s:01001010101101:E: +s:01001010101110:-: +s:010010101011000:ESCAPE: +s:010010101011001:): +s:010010101011110:W: +s:010010101011111:1: +t:000:i: +t:011:STOP: +t:100: : +t:111:h: +t:0010:a: +t:0100:r: +t:1010:s: +t:1011:o: +t:1101:e: +t:00111:t: +t:01010:y: +t:11000:u: +t:010110:m: +t:110010:c: +t:110011:l: +t:0011000:': +t:0011010:0x3a: +t:00110010:w: +t:00110110:!: +t:01011100:.: +t:01011101:b: +t:01011110:E: +t:01011111:f: +t:001100110:?: +t:001101110:n: +t:0011001110:z: +t:0011011110:d: +t:00110011111:,: +t:00110111110:P: +t:001100111100:v: +t:001100111101:-: +t:001101111110:): +t:0011011111110:g: +t:00110111111110:ESCAPE: +t:001101111111110:S: +t:0011011111111111:4: +t:00110111111111100:k: +t:001101111111111010:j: +t:001101111111111011:p: +u:00:r: +u:100:s: +u:111:n: +u:0100:e: +u:0101:m: +u:1100:t: +u:01100:c: +u:01101:g: +u:01110:b: +u:10100:p: +u:10101:i: +u:10110:l: +u:11010:d: +u:11011:a: +u:011110:STOP: +u:101110:y: +u:0111110:z: +u:1011110: : +u:01111111:': +u:10111110:-: +u:011111100:k: +u:101111111:0x3a: +u:0111111010:f: +u:0111111011:,: +u:1011111100:w: +u:101111110100:v: +u:101111110101:x: +u:101111110111:o: +u:1011111101100:j: +u:10111111011010:u: +u:101111110110110:.: +u:1011111101101111:h: +u:10111111011011100:?: +u:10111111011011101:ESCAPE: +v:1:e: +v:01:i: +v:001:a: +v:0001:o: +v:00000: : +v:000011:STOP: +v:0000100:y: +v:00001011:s: +v:000010101:r: +v:0000101000:ESCAPE: +v:0000101001:.: +w:0:s: +w:100: : +w:110:STOP: +w:1011:i: +w:1110:o: +w:10100:a: +w:11110:n: +w:11111:e: +w:1010111:y: +w:10101000:m: +w:10101011:d: +w:10101101:l: +w:101010011:b: +w:101010100:k: +w:101010101:r: +w:1010100100:j: +w:1010110001:,: +w:1010110011:h: +w:10101001011:-: +w:10101100000:c: +w:10101100001:f: +w:10101100101:p: +w:101010010100:g: +w:101011001000:t: +w:1010100101010:.: +w:1010100101011:0x3a: +w:1010110010011:q: +w:10101100100101:': +w:101011001001001:?: +w:1010110010010000:ESCAPE: +w:1010110010010001:B: +x:00:p: +x:10: : +x:11:t: +x:0110:STOP: +x:01000:o: +x:01010:c: +x:01110:i: +x:01111:m: +x:010010:e: +x:010110:y: +x:0100110:u: +x:0100111:f: +x:0101111:,: +x:010111000:g: +x:010111001:a: +x:010111011:9: +x:0101110101:': +x:01011101001:x: +x:010111010000:ESCAPE: +x:010111010001:s: +y:0: : +y:11:STOP: +y:10001:o: +y:10010:s: +y:10100:a: +y:10110:l: +y:10111:0x3a: +y:100110:d: +y:1000001:n: +y:1000010:t: +y:1010100:': +y:1010101:b: +y:1010111:.: +y:10000000:i: +y:10000110:,: +y:10000111:p: +y:10011100:m: +y:10011110:c: +y:10101100:w: +y:10101101:e: +y:100000010:?: +y:100000011:f: +y:100111010:r: +y:100111011:g: +y:1001111100:z: +y:1001111110:-: +y:1001111111:T: +y:100111110100:2: +y:100111110110:!: +y:100111110111:k: +y:1001111101010:v: +y:10011111010110:y: +y:100111110101110:h: +y:1001111101011111:j: +y:10011111010111100:ESCAPE: +y:10011111010111101:): +z:00:z: +z:01:STOP: +z:101:i: +z:1000:y: +z:1001:e: +z:1100:w: +z:1101: : +z:1110:l: +z:11110:a: +z:111110:o: +z:11111100:m: +z:11111101:0x3a: +z:11111111:c: +z:111111100:,: +z:1111111011:b: +z:11111110100:u: +z:111111101011:!: +z:11111110101000:ESCAPE: +z:11111110101001:t: +z:11111110101010:h: +z:11111110101011:?: +{:0:ESCAPE: +{:1:ESCAPE: +|:0:ESCAPE: +|:1:ESCAPE: +}:0:ESCAPE: +}:1:ESCAPE: +~:0:ESCAPE: +~:1:ESCAPE: +0x7f:0:ESCAPE: +0x7f:1:ESCAPE: +START:00:T: +START:010:B: +START:1000:C: +START:1001:I: +START:1101:S: +START:01100:L: +START:01110:D: +START:01111:H: +START:10100:R: +START:10101:N: +START:10110:E: +START:11000:F: +START:11001:A: +START:11100:M: +START:11101:P: +START:11110:W: +START:011011:Q: +START:101111:G: +START:111110:J: +START:0110100:K: +START:1011101:U: +START:1111110:O: +START:01101010:6: +START:01101011:.: +START:10111000:V: +START:11111110:Y: +START:101110011:2: +START:111111111:X: +START:1011100100:Z: +START:1111111100:8: +START:10111001010:1: +START:10111001011:3: +START:111111110100:4: +START:111111110101:': +START:111111110111: : +START:11111111011000:5: +START:11111111011011:0: +START:111111110110011:m: +START:1111111101100100:c: +START:1111111101101000:9: +START:1111111101101010:a: +START:1111111101101011:d: +START:11111111011001010:s: +START:11111111011001011:p: +START:11111111011010010:(: +START:111111110110100110:t: +START:1111111101101001110:7: +START:11111111011010011110:ESCAPE: +START:11111111011010011111:l: +ESCAPE:0:ESCAPE: +ESCAPE:1:ESCAPE: +STOP:0:ESCAPE: +STOP:1:ESCAPE: +0x03:0:ESCAPE: +0x03:1:ESCAPE: +0x04:0:ESCAPE: +0x04:1:ESCAPE: +0x05:0:ESCAPE: +0x05:1:ESCAPE: +0x06:0:ESCAPE: +0x06:1:ESCAPE: +0x07:0:ESCAPE: +0x07:1:ESCAPE: +0x08:0:ESCAPE: +0x08:1:ESCAPE: +0x09:0:ESCAPE: +0x09:1:ESCAPE: +0x0a:0:ESCAPE: +0x0a:1:ESCAPE: +0x0b:0:ESCAPE: +0x0b:1:ESCAPE: +0x0c:0:ESCAPE: +0x0c:1:ESCAPE: +0x0d:0:ESCAPE: +0x0d:1:ESCAPE: +0x0e:0:ESCAPE: +0x0e:1:ESCAPE: +0x0f:0:ESCAPE: +0x0f:1:ESCAPE: +0x10:0:ESCAPE: +0x10:1:ESCAPE: +0x11:0:ESCAPE: +0x11:1:ESCAPE: +0x12:0:ESCAPE: +0x12:1:ESCAPE: +0x13:0:ESCAPE: +0x13:1:ESCAPE: +0x14:0:ESCAPE: +0x14:1:ESCAPE: +0x15:0:ESCAPE: +0x15:1:ESCAPE: +0x16:0:ESCAPE: +0x16:1:ESCAPE: +0x17:0:ESCAPE: +0x17:1:ESCAPE: +0x18:0:ESCAPE: +0x18:1:ESCAPE: +0x19:0:ESCAPE: +0x19:1:ESCAPE: +0x1a:0:ESCAPE: +0x1a:1:ESCAPE: +0x1b:0:ESCAPE: +0x1b:1:ESCAPE: +0x1c:0:ESCAPE: +0x1c:1:ESCAPE: +0x1d:0:ESCAPE: +0x1d:1:ESCAPE: +0x1e:0:ESCAPE: +0x1e:1:ESCAPE: +0x1f:0:ESCAPE: +0x1f:1:ESCAPE: + :0000:W: + :0011:M: + :0100:C: + :0101:B: + :0111:P: + :1001:T: + :1100:N: + :1111:S: + :00011:I: + :00100:G: + :01100:H: + :01101:D: + :10000:o: + :10001:A: + :10100:t: + :10110:a: + :10111:F: + :11010:L: + :11011:R: + :001011:U: + :101011:O: + :111001:J: + :111010:E: + :0001000:f: + :0001001:Q: + :0001011:V: + :0010100:STOP: + :0010101:w: + :1110000:2: + :1110001:K: + :1110110:Y: + :1110111:i: + :00010100:-: + :10101001:1: + :101010000:&: + :101010101:X: + :0001010101:r: + :1010100010:5: + :1010100011:Z: + :1010101001:9: + :1010101101:s: + :1010101110:4: + :1010101111:3: + :00010101000:7: + :00010101100:b: + :00010101110:y: + :10101010000:': + :10101011000:6: + :000101011010:v: + :000101011011:d: + :000101011110:(: + :101010100010: : + :101010100011:0: + :101010110010:n: + :101010110011:8: + :0001010100110:g: + :0001010111110:u: + :00010101001000:+: + :00010101001001:.: + :00010101001010:ESCAPE: + :00010101001011:l: + :00010101001111:m: + :00010101111110:p: + :000101010011100:\: + :000101010011101:/: + :000101011111111:e: + :0001010111111101:": + :00010101111111001:c: + :000101011111110000:k: + :000101011111110001:h: +!:1:STOP: +!:01: : +!:001:.: +!:0001:!: +!:00001:": +!:000000:ESCAPE: +!:000001:0x3a: +":0: : +":10:ESCAPE: +":11:I: +#:0:ESCAPE: +#:1:ESCAPE: +$:0:ESCAPE: +$:1:ESCAPE: +%:1: : +%:00:ESCAPE: +%:01:STOP: +&:1: : +&:01:B: +&:000:ESCAPE: +&:001:.: +':1:s: +':000:m: +':010:C: +':0010:t: +':0011: : +':01100:d: +':01110:v: +':011011:r: +':011111:A: +':0110101:n: +':01101000:G: +':01111001:l: +':011010011:D: +':011110000:B: +':011110001:e: +':011110101:i: +':011110110:6: +':0110100100:L: +':0111101001:STOP: +':0111101111:w: +':01101001010:O: +':01111010000:S: +':01111010001:E: +':01111011101:N: +':011110111001:R: +':0110100101100:a: +':0110100101101:M: +':0110100101110:K: +':0110100101111:F: +':0111101110000:0: +':01111011100010:ESCAPE: +':01111011100011:c: +(:1:c: +(:000:1: +(:0010:M: +(:0011:U: +(:0100:R: +(:0101:D: +(:0110:H: +(:01110:S: +(:011110:F: +(:0111110:G: +(:01111110:ESCAPE: +(:01111111:Y: +):1:STOP: +):00:ESCAPE: +):01: : +*:0:*: +*:101: : +*:1000:d: +*:1100:m: +*:1101:t: +*:1111:s: +*:10010:e: +*:11100:g: +*:11101:k: +*:100110:ESCAPE: +*:100111:y: ++:0:ESCAPE: ++:1: : +,:1: : +,:01:0: +,:000:ESCAPE: +,:001:.: +-:11: : +-:011:S: +-:100:G: +-:101:O: +-:0011:T: +-:0100:U: +-:00000:E: +-:00010:D: +-:000010:m: +-:000110:0: +-:000111:I: +-:001010:6: +-:010100:F: +-:010101:o: +-:0000110:L: +-:0000111:C: +-:0010001:A: +-:0010010:t: +-:0010011:Y: +-:0010111:2: +-:0101100:B: +-:0101101:.: +-:00100000:P: +-:00100001:Z: +-:01011100:8: +-:01011101:i: +-:01011110:d: +-:01011111:H: +-:001011001:N: +-:001011011:R: +-:0010110000:1: +-:0010110001:W: +-:00101101001:c: +-:00101101010:a: +-:00101101011:M: +-:001011010000:ESCAPE: +-:001011010001:Q: +.:1:.: +.:01:STOP: +.:0010: : +.:00000:I: +.:00001:T: +.:00010:C: +.:00110:p: +.:00111:0: +.:000111:H: +.:00011010:W: +.:000110001:S: +.:000110110:3: +.:000110111:B: +.:0001100000:1: +.:0001100001:M: +.:0001100110:c: +.:00011001000:t: +.:00011001001:R: +.:00011001010:F: +.:00011001110:E: +.:00011001111:A: +.:0001100101100:ESCAPE: +.:0001100101101:l: +.:0001100101110:d: +.:0001100101111:U: +/:00:1: +/:10:7: +/:010:4: +/:011:2: +/:110:3: +/:1110:5: +/:111100:6: +/:111110:C: +/:1111010:9: +/:1111011: : +/:1111110:8: +/:11111111:U: +/:1111111000:G: +/:1111111010:0: +/:11111110010:ESCAPE: +/:11111110011:W: +/:11111110110:V: +/:11111110111:S: +0:00:6: +0:01: : +0:11:0: +0:1001:p: +0:1010:STOP: +0:10000:1: +0:10001:a: +0:10111:7: +0:1011000:-: +0:1011010:s: +0:10110011:4: +0:10110110:t: +0:101101111:%: +0:1011001000:8: +0:1011001001:0x3a: +0:1011001010:5: +0:1011001011:2: +0:1011011100:/: +0:10110111011:U: +0:101101110101:,: +0:1011011101000:.: +0:10110111010010:ESCAPE: +0:10110111010011:l: +1:01:STOP: +1:000:.: +1:101:0: +1:111:1: +1:0010:2: +1:0011: : +1:1101:/: +1:10010:8: +1:11000:3: +1:100000:5: +1:100001:s: +1:100010:6: +1:100011:0x3a: +1:100110:': +1:110010:X: +1:110011:9: +1:1001111:4: +1:10011101:-: +1:100111001:7: +1:1001110000:): +1:10011100010:ESCAPE: +1:10011100011:,: +2:0:0: +2:11:4: +2:101:STOP: +2:1001: : +2:10000:0x3a: +2:1000101:5: +2:1000111:/: +2:10001000:.: +2:10001001:1: +2:10001100:W: +2:100011011:7: +2:10001101001:3: +2:10001101011:Z: +2:100011010000:n: +2:100011010001:6: +2:100011010101:': +2:1000110101000:ESCAPE: +2:1000110101001:s: +3:0: : +3:10:STOP: +3:1100:r: +3:1101:/: +3:1111:B: +3:11100:0: +3:1110100:0x3a: +3:1110110:-: +3:11101010:1: +3:11101011:8: +3:11101111:4: +3:1110111000:6: +3:1110111011:9: +3:11101110011:t: +3:11101110100:3: +3:111011100100:ESCAPE: +3:111011100101:e: +3:111011101010:7: +3:111011101011:5: +4:0:STOP: +4:11: : +4:1001:0x3a: +4:1011:/: +4:10001:8: +4:10101:.: +4:100000:9: +4:101000:0: +4:1010010:M: +4:10000101:I: +4:10000110:): +4:10100110:R: +4:10100111:-: +4:100001000:W: +4:100001110:P: +4:100001111:5: +4:1000010011:2: +4:10000100100:ESCAPE: +4:10000100101:': +5:0:STOP: +5:11: : +5:101:0: +5:1001:/: +5:100001:-: +5:100011:0x3a: +5:1000001:t: +5:1000100:3: +5:1000101:1: +5:10000000:ESCAPE: +5:10000001:a: +6:00:STOP: +6:01: : +6:10:0: +6:111:0x3a: +6:11001:.: +6:11011:i: +6:110000:-: +6:110101:a: +6:1100011:4: +6:1101000:8: +6:1101001:/: +6:11000100:6: +6:110001011:9: +6:1100010100:3: +6:11000101010:ESCAPE: +6:11000101011:t: +7:1:STOP: +7:01: : +7:000:0: +7:0011:.: +7:00101:/: +7:0010000:1: +7:0010010:5: +7:00100010:ESCAPE: +7:00100011:4: +7:00100110:3: +7:00100111:2: +8:1: : +8:00:0: +8:010:0x3a: +8:01101:STOP: +8:011000:t: +8:011001:p: +8:011101:8: +8:011110:.: +8:011111:6: +8:0111000:5: +8:01110010:9: +8:011100110:M: +8:0111001110:F: +8:01110011110:ESCAPE: +8:01110011111:c: +9:0:1: +9:11:STOP: +9:1000:9: +9:1010:.: +9:10011:0: +9:100100: : +9:100101:8: +9:101100:7: +9:101101:/: +9:101110:6: +9:1011111:0x3a: +9:10111101:4: +9:101111000:ESCAPE: +9:101111001:3: +0x3a:1: : +0x3a:00:0: +0x3a:011:.: +0x3a:0100:2: +0x3a:01010:1: +0x3a:010111:3: +0x3a:0101101:C: +0x3a:01011000:ESCAPE: +0x3a:01011001:T: +;:1: : +;:00:ESCAPE: +;:01:.: +<:0:ESCAPE: +<:1:ESCAPE: +=:0:ESCAPE: +=:1:ESCAPE: +>:0:ESCAPE: +>:1:ESCAPE: +?:1:STOP: +?:01: : +?:001:0x3a: +?:0000:ESCAPE: +?:0001:.: +@:0:ESCAPE: +@:1:H: +A:001:r: +A:010: : +A:100:l: +A:110:n: +A:0000:m: +A:0111:g: +A:1111:d: +A:00010:w: +A:01100:T: +A:01101:c: +A:10101:t: +A:10110:f: +A:10111:i: +A:11100:s: +A:000110:u: +A:000111:STOP: +A:101001:R: +A:111010:b: +A:1010001:v: +A:1110110:p: +A:10100000:S: +A:11101110:M: +A:101000011:P: +A:111011111:.: +A:10100001000:e: +A:10100001001:B: +A:10100001010:1: +A:11101111011:-: +A:101000010110:k: +A:101000010111:h: +A:111011110000:a: +A:111011110100:y: +A:111011110101:*: +A:1110111100010:x: +A:1110111100011:': +A:1110111100100:N: +A:1110111100110:2: +A:11101111001010:0x3a: +A:11101111001111:z: +A:111011110010110:L: +A:111011110010111:F: +A:111011110011100:D: +A:1110111100111010:ESCAPE: +A:1110111100111011:q: +B:00:C: +B:01:B: +B:101:r: +B:1001:i: +B:1100:o: +B:1101:u: +B:1110:a: +B:1111:e: +B:10001:l: +B:1000000:STOP: +B:1000010:y: +B:10000010:O: +B:10000110:3: +B:100000111:A: +B:100001110:S: +B:1000001101:0x3a: +B:10000011000:.: +B:10000011001:w: +B:10000111101:h: +B:10000111110:*: +B:10000111111: : +B:100001111001:R: +B:1000011110000:': +B:10000111100011:T: +B:100001111000100:ESCAPE: +B:100001111000101:4: +C:00:o: +C:01: : +C:100:l: +C:110:h: +C:1010:r: +C:1110:a: +C:10110:i: +C:10111:e: +C:111100:u: +C:111101:B: +C:1111100:y: +C:1111110:!: +C:11111011:.: +C:111110100:w: +C:111111100:STOP: +C:111111110:S: +C:111111111:T: +C:1111101011:2: +C:1111111011:I: +C:11111010100:4: +C:11111010101:*: +C:11111110101:D: +C:111111101000:U: +C:1111111010010:': +C:11111110100110:n: +C:111111101001110:z: +C:11111110100111100:O: +C:11111110100111101:E: +C:11111110100111110:A: +C:111111101001111110:ESCAPE: +C:111111101001111111:s: +D:01:o: +D:10:a: +D:000:r: +D:110:e: +D:111:i: +D:00100:t: +D:00111:u: +D:001011: : +D:0010101:J: +D:0011000:y: +D:0011010:STOP: +D:0011011:I: +D:00110011:0x3a: +D:001010001:*: +D:001010010:-: +D:001010011:&: +D:001100100:': +D:0010100000:A: +D:0010100001:h: +D:00110010101:N: +D:00110010110:V: +D:001100101110:D: +D:001100101111:w: +D:0011001010000:O: +D:0011001010001:E: +D:0011001010011:d: +D:00110010100100:ESCAPE: +D:00110010100101:T: +E:00:m: +E:011:v: +E:101:n: +E:111:a: +E:0100:E: +E:1000:STOP: +E:1101:x: +E:10011:d: +E:11001:l: +E:010100:4: +E:010101:y: +E:010110:u: +E:100100:r: +E:110000:i: +E:0101111:s: +E:1001010:F: +E:1100010:X: +E:10010110:R: +E:11000111: : +E:010111010:g: +E:100101111:0x3a: +E:110001100:T: +E:110001101:': +E:0101110001:c: +E:0101110011:q: +E:0101110110:e: +E:0101110111:C: +E:1001011100:p: +E:01011100000:-: +E:01011100101:Z: +E:10010111011:t: +E:010111000010:S: +E:010111000011:.: +E:100101110101:W: +E:0101110010000:!: +E:1001011101000:o: +E:01011100100010:f: +E:01011100100011:U: +E:01011100100100:N: +E:01011100100101:M: +E:01011100100110:L: +E:01011100100111:A: +E:10010111010011:D: +E:100101110100100:ESCAPE: +E:100101110100101:w: +F:00:i: +F:10:a: +F:011:r: +F:110:u: +F:111:o: +F:0100:e: +F:01011:l: +F:0101000:A: +F:0101010:O: +F:01010010: : +F:010100110:h: +F:010100111:t: +F:010101101:f: +F:010101111:L: +F:0101011001:STOP: +F:01010111000:j: +F:01010111001:I: +F:01010111010:.: +F:01010111011:1: +F:010101100000:M: +F:010101100010:*: +F:010101100011:K: +F:0101011000010:y: +F:01010110000111:H: +F:010101100001100:ESCAPE: +F:010101100001101:!: +G:10:r: +G:001:M: +G:010:a: +G:011:o: +G:110:i: +G:111:e: +G:00001:u: +G:00010:X: +G:000001:h: +G:000111:l: +G:0000001:y: +G:0001100:w: +G:00000000:0x3a: +G:00011011:C: +G:000000011:STOP: +G:000110100:-: +G:0001101010:P: +G:0001101011: : +G:00000001000:': +G:00000001010:A: +G:000000010010:U: +G:000000010110:T: +G:000000010111:4: +G:0000000100110:ESCAPE: +G:0000000100111:Y: +H:0:o: +H:100:a: +H:101:i: +H:110:e: +H:1110:u: +H:11110:R: +H:111110:A: +H:1111110:.: +H:111111101:y: +H:111111110:S: +H:1111111110:E: +H:1111111111:r: +H:11111110000:STOP: +H:11111110010:L: +H:11111110011:M: +H:111111100011:w: +H:1111111000101:D: +H:11111110001000:ESCAPE: +H:11111110001001:I: +I:0:T: +I:100:s: +I:101:n: +I:1101:t: +I:11001: : +I:11101:': +I:11111:r: +I:110000:I: +I:110001:STOP: +I:111001:m: +I:1110000:d: +I:1110001:N: +I:1111001:z: +I:1111010:.: +I:11110000:a: +I:11110001:Y: +I:111101100:S: +I:111101110:c: +I:11110110101:D: +I:11110110110:f: +I:11110111100:l: +I:11110111111:y: +I:111101101000:V: +I:111101101110:o: +I:111101111011:F: +I:1111011010010:,: +I:1111011010011:A: +I:1111011011110:O: +I:1111011110101:g: +I:1111011111000:C: +I:1111011111001:0x3a: +I:1111011111011:v: +I:11110110111110:p: +I:11110110111111:E: +I:11110111101000:B: +I:11110111110100:k: +I:11110111110101:b: +I:1111011110100100:ESCAPE: +I:1111011110100101:R: +I:1111011110100110:L: +I:1111011110100111:G: +J:00:a: +J:01:u: +J:11:e: +J:101:o: +J:1001:i: +J:10000: : +J:100010:K: +J:1000111:STOP: +J:100011001:s: +J:100011010:F: +J:1000110000:V: +J:1000110001:': +J:1000110111:f: +J:10001101101:G: +J:100011011000:ESCAPE: +J:100011011001:D: +K:01:i: +K:11:y: +K:001:e: +K:101: : +K:0000:a: +K:1000:o: +K:00010:STOP: +K:00011:r: +K:100101:t: +K:100110:n: +K:100111:S: +K:10010011:G: +K:100100000:-: +K:100100011:O: +K:100100100:h: +K:100100101:w: +K:1001000010:1: +K:1001000011:': +K:10010001011:u: +K:100100010000:T: +K:100100010001:N: +K:100100010010:0x3a: +K:100100010011:.: +K:100100010100:,: +K:1001000101010:ESCAPE: +K:1001000101011:l: +L:00:a: +L:10:o: +L:11:i: +L:010:e: +L:0111:u: +L:01101:K: +L:0110000:l: +L:0110010:A: +L:0110011: : +L:01100011:y: +L:0110001000:L: +L:0110001001:I: +L:01100010100:C: +L:01100010101:.: +L:01100010111:STOP: +L:011000101101:': +L:0110001011000:E: +L:01100010110010:ESCAPE: +L:01100010110011:Y: +M:01:a: +M:10:o: +M:000:e: +M:111:i: +M:0010:T: +M:1100:y: +M:1101:u: +M:00110:STOP: +M:001111:c: +M:00111001:r: +M:00111010:E: +M:001110111:F: +M:0011100001:Z: +M:0011100011: : +M:0011101100:1: +M:0011101101:I: +M:00111000001:h: +M:00111000100:C: +M:001110000001:Q: +M:001110001010:K: +M:0011100010110:P: +M:00111000000000:0x3a: +M:00111000000001:.: +M:00111000000010:': +M:00111000101110:M: +M:001110000000110:ESCAPE: +M:001110000000111:w: +M:001110001011110:S: +M:001110001011111:R: +N:1:e: +N:00:o: +N:011:i: +N:0101:a: +N:01001:u: +N:010000:C: +N:01000100:E: +N:01000110:F: +N:010001110:B: +N:010001111:H: +N:0100010110:Y: +N:01000101000:G: +N:01000101001:': +N:01000101011:I: +N:01000101110:A: +N:010001010100:M: +N:010001011110: : +N:010001011111:STOP: +N:0100010101010:T: +N:01000101010110:.: +N:010001010101110:ESCAPE: +N:010001010101111:Z: +O:000:': +O:010:f: +O:110:u: +O:111:n: +O:0010:M: +O:0011:l: +O:1001:m: +O:01101:r: +O:01110:d: +O:10000:p: +O:10100:h: +O:10110:STOP: +O:011001:S: +O:011110:z: +O:011111:b: +O:100011:v: +O:101010:w: +O:101011:U: +O:1011100:T: +O:1011101:O: +O:1011110:K: +O:01100001:C: +O:01100010:x: +O:01100011:.: +O:10001001:t: +O:10001011: : +O:10111110:s: +O:10111111:N: +O:011000001:g: +O:100010000:-: +O:100010101:a: +O:1000100010:i: +O:1000100011:e: +O:1000101001:o: +O:01100000000:A: +O:01100000001:j: +O:01100000010:c: +O:10001010000:2: +O:011000000111:R: +O:100010100010:P: +O:100010100011:0x3a: +O:0110000001100:E: +O:01100000011010:ESCAPE: +O:01100000011011:L: +P:01:r: +P:10:l: +P:000:e: +P:001:a: +P:111:o: +P:1101:i: +P:110000:D: +P:110001:u: +P:110011:h: +P:11001000: : +P:11001010:2: +P:110010010:H: +P:110010011:M: +P:110010110:S: +P:11001011100:0x3a: +P:11001011101:*: +P:110010111101:s: +P:1100101111001:I: +P:1100101111100:STOP: +P:1100101111101:G: +P:1100101111110:': +P:11001011111110:y: +P:110010111100000:Y: +P:110010111100001:L: +P:110010111100010:C: +P:110010111100011:ESCAPE: +P:110010111111110:O: +P:110010111111111:.: +Q:1:u: +Q:000:I: +Q:001:STOP: +Q:010:V: +Q:0111: : +Q:01101:C: +Q:011000:ESCAPE: +Q:011001:': +R:00:a: +R:01:o: +R:11:e: +R:100:i: +R:1011:u: +R:10101:E: +R:101000:D: +R:1010011:STOP: +R:10100101:h: +R:1010010000:I: +R:1010010010:y: +R:1010010011:n: +R:101001000110: : +R:1010010001000:': +R:1010010001011:S: +R:1010010001110:N: +R:10100100010010:B: +R:10100100010011:.: +R:10100100010100:&: +R:10100100011110:T: +R:10100100011111:1: +R:101001000101010:ESCAPE: +R:101001000101011:C: +S:001:o: +S:010:p: +S:011:u: +S:110:h: +S:111:t: +S:0001:a: +S:1001:e: +S:1011:c: +S:00000:n: +S:10001:i: +S:10101:k: +S:000011:w: +S:101000:m: +S:0000101:A: +S:1000010:l: +S:1010010:q: +S:1010011:M: +S:00001000:2: +S:00001001:P: +S:10000000:O: +S:10000010:I: +S:10000011: : +S:10000111:STOP: +S:100000010:y: +S:100001100:E: +S:1000000111:?: +S:1000011011:H: +S:10000001100:B: +S:10000110100:g: +S:100000011011:r: +S:100001101010:*: +S:1000011010110:3: +S:1000011010111:.: +S:10000001101000:5: +S:10000001101010:0x3a: +S:10000001101011:1: +S:100000011010010:C: +S:1000000110100110:ESCAPE: +S:1000000110100111:Y: +T:0:h: +T:101:o: +T:111:V: +T:1000:e: +T:1001:r: +T:11000:a: +T:11010:w: +T:110011:i: +T:1101101:O: +T:1101111:H: +T:11001001:y: +T:11001010:M: +T:11011000:.: +T:11011100:u: +T:11011101:W: +T:110010001:P: +T:110010110:0x3a: +T:110010111:4: +T:110110011:I: +T:1101100100: : +T:1101100101:STOP: +T:11001000010:X: +T:11001000011:s: +T:110010000000:T: +T:110010000001:S: +T:110010000010:B: +T:1100100000110:U: +T:11001000001110:A: +T:1100100000111100:C: +T:1100100000111101:*: +T:1100100000111111:N: +T:11001000001111100:ESCAPE: +T:11001000001111101:Y: +U:0:n: +U:10:p: +U:1101:K: +U:1111:l: +U:11000:R: +U:11100:S: +U:110011:E: +U:111011:s: +U:1100101:g: +U:1110101:T: +U:11001001: : +U:110010000:-: +U:110010001:r: +U:111010000:2: +U:111010001:m: +U:111010011:STOP: +U:1110100100:.: +U:11101001010:c: +U:111010010110:k: +U:11101001011100:ESCAPE: +U:11101001011101:z: +U:11101001011110:t: +U:11101001011111:B: +V:1: : +V:000:0x3a: +V:011:i: +V:0010:e: +V:0011:a: +V:0100:3: +V:010101:C: +V:010111:STOP: +V:0101000:': +V:0101001:4: +V:0101101:o: +V:01011001:I: +V:0101100000:s: +V:0101100001:D: +V:0101100010:.: +V:01011000110:8: +V:0101100011101:u: +V:0101100011110:r: +V:0101100011111:B: +V:01011000111000:ESCAPE: +V:01011000111001:E: +W:01:o: +W:11:e: +W:001:h: +W:100:a: +W:101:i: +W:00000:.: +W:00010:O: +W:00011:r: +W:000011:y: +W:0000100:u: +W:00001010:STOP: +W:000010111:A: +W:00001011001:Y: +W:00001011010:T: +W:00001011011: : +W:000010110000:I: +W:0000101100010:ESCAPE: +W:0000101100011:l: +X:00:STOP: +X:10: : +X:11:t: +X:010:T: +X:0111:c: +X:01101:m: +X:011001:U: +X:01100000:a: +X:01100001:X: +X:01100010:-: +X:011000110:x: +X:0110001111:9: +X:01100011100:ESCAPE: +X:01100011101:i: +Y:1:o: +Y:01:e: +Y:000:u: +Y:0011: : +Y:00100:v: +Y:001010:a: +Y:00101110:P: +Y:00101111:': +Y:001011000:n: +Y:001011011:r: +Y:0010110010:D: +Y:00101100110:w: +Y:00101100111:s: +Y:00101101000:R: +Y:00101101001:L: +Y:00101101010:STOP: +Y:001011010110:C: +Y:0010110101110:ESCAPE: +Y:0010110101111:N: +Z:1:o: +Z:00:a: +Z:010:i: +Z:01100:O: +Z:01101:u: +Z:01110:e: +Z:011110: : +Z:0111111:STOP: +Z:01111101:0x3a: +Z:011111000:ESCAPE: +Z:011111001:-: +[:0:ESCAPE: +[:1:ESCAPE: +\:0:ESCAPE: +\:1:x: +]:0:ESCAPE: +]:1:ESCAPE: +^:0:ESCAPE: +^:1:ESCAPE: +_:0:ESCAPE: +_:1:ESCAPE: +`:0:ESCAPE: +`:1:ESCAPE: +a:001:r: +a:011:t: +a:100:l: +a:110:n: +a:0001:m: +a:0100:c: +a:1010:s: +a:1110:y: +a:10110: : +a:10111:d: +a:11110:i: +a:11111:k: +a:000010:b: +a:000011:STOP: +a:010110:p: +a:010111:g: +a:0000000:e: +a:0000001:': +a:0000011:w: +a:0101001:u: +a:0101010:z: +a:0101011:v: +a:00000101:f: +a:01010001:h: +a:000001001:0x3a: +a:0000010000:!: +a:0101000000:o: +a:0101000001:x: +a:00000100010:-: +a:00000100011:a: +a:01010000101:.: +a:01010000110:N: +a:01010000111:,: +a:010100001000:q: +a:0101000010010:j: +a:01010000100111:?: +a:010100001001101:J: +a:0101000010011000:ESCAPE: +a:0101000010011001:U: +b:000:r: +b:001:o: +b:010:e: +b:011:a: +b:100:i: +b:1011:u: +b:1100:y: +b:1101:l: +b:1111: : +b:10101:s: +b:11100:b: +b:11101:STOP: +b:101000:h: +b:1010010:3: +b:10100111:': +b:1010011001:t: +b:1010011010:j: +b:10100110000:n: +b:10100110001:d: +b:10100110111:w: +b:101001101101:m: +b:1010011011001:.: +b:10100110110000:ESCAPE: +b:10100110110001:0x3a: +c:00:k: +c:010:o: +c:100:h: +c:110:t: +c:111:e: +c:0111:r: +c:10100: : +c:10110:i: +c:10111:a: +c:011000:l: +c:011001:y: +c:011010:s: +c:011011:STOP: +c:1010100:c: +c:1010111:u: +c:10101010:0x3a: +c:10101011:P: +c:101011001:D: +c:1010110100:G: +c:1010110110:b: +c:10101100000:L: +c:10101100001:K: +c:10101100011:A: +c:10101101010:q: +c:10101101110:.: +c:10101101111:C: +c:101011000100:n: +c:101011000101:': +c:1010110101100:B: +c:1010110101101:I: +c:10101101011101:f: +c:10101101011110:8: +c:101011010111000:M: +c:101011010111001:ESCAPE: +c:101011010111111:F: +c:1010110101111100:w: +c:1010110101111101:Q: +d:11: : +d:001:e: +d:100:STOP: +d:101:a: +d:0001:y: +d:0100:i: +d:0110:s: +d:00000:o: +d:01010:d: +d:000011:u: +d:010110:r: +d:010111:l: +d:011101:v: +d:011110:g: +d:0000100:': +d:0111111:.: +d:00001010:0x3a: +d:00001011:h: +d:01110000:c: +d:01110010:n: +d:01110011:w: +d:011100010:?: +d:011111000:!: +d:011111001:-: +d:011111010:f: +d:0111000111:m: +d:0111110110:,: +d:01111101110:t: +d:01111101111:b: +d:011100011001:): +d:011100011010:/: +d:011100011011:k: +d:0111000110001:p: +d:01110001100001:z: +d:011100011000000:ESCAPE: +d:011100011000001:4: +e:01: : +e:000:s: +e:101:r: +e:0010:t: +e:1001:n: +e:1100:STOP: +e:1110:a: +e:1111:w: +e:10000:l: +e:11011:e: +e:001110:m: +e:100010:c: +e:100011:d: +e:0011010:i: +e:0011011:p: +e:0011110:b: +e:1101000:v: +e:1101011:y: +e:00110000:g: +e:00110001:f: +e:00110010:x: +e:00111110:k: +e:00111111:0x3a: +e:11010011:o: +e:11010100:': +e:001100111:h: +e:110100101:.: +e:0011001100:P: +e:0011001101:B: +e:1101001000:,: +e:1101010100:V: +e:1101010101:z: +e:1101010111:j: +e:11010010010:4: +e:11010010011:?: +e:11010101101:u: +e:110101011001:-: +e:1101010110001:!: +e:11010101100001:q: +e:110101011000001:G: +e:1101010110000000:ESCAPE: +e:1101010110000001:S: +f:0: : +f:101:o: +f:1001:t: +f:1100:a: +f:1101:i: +f:1111:e: +f:10000:.: +f:11100:r: +f:11101:f: +f:100010:STOP: +f:10001101:y: +f:10001111:u: +f:100011000:': +f:100011101:l: +f:1000110011:n: +f:1000111000:g: +f:10001100100:c: +f:10001110010:-: +f:100011001010:,: +f:100011001011:s: +f:100011100111:0x3a: +f:1000111001101:k: +f:10001110011000:ESCAPE: +f:10001110011001:b: +g:00:h: +g:10: : +g:010:STOP: +g:011:e: +g:1100:i: +g:11100:0x3a: +g:11101:r: +g:11111:a: +g:110100:s: +g:110111:l: +g:111101:u: +g:1101011:b: +g:1101100:g: +g:1101101:o: +g:1111001:n: +g:11010100:2: +g:11110000:!: +g:111100011:d: +g:1101010100:.: +g:1101010101:,: +g:1101010110:': +g:1101010111:t: +g:1111000101:y: +g:11110001000:w: +g:111100010011:m: +g:11110001001011:?: +g:111100010010000:p: +g:111100010010001:f: +g:111100010010010:@: +g:111100010010011:-: +g:111100010010101:;: +g:1111000100101000:ESCAPE: +g:1111000100101001:z: +h:0:e: +h:101:o: +h:1001:i: +h:1100:a: +h:1110: : +h:1111:t: +h:11010:r: +h:11011:STOP: +h:100000:b: +h:100001:u: +h:10001000:w: +h:10001001:d: +h:10001010:n: +h:10001011:y: +h:10001100:!: +h:10001101:l: +h:10001111:.: +h:100011100:': +h:1000111010:s: +h:10001110110:m: +h:100011101111:0x3a: +h:10001110111000:f: +h:10001110111001:?: +h:10001110111010:c: +h:1000111011101100:v: +h:1000111011101101:q: +h:1000111011101110:g: +h:100011101110111100:h: +h:100011101110111101:ESCAPE: +h:100011101110111110:,: +h:100011101110111111:*: +i:01:n: +i:000:c: +i:1001:o: +i:1010:l: +i:1100:g: +i:1101:s: +i:1110:t: +i:1111:e: +i:00101:a: +i:00110:v: +i:10000:r: +i:10001:d: +i:10110:m: +i:001000:p: +i:001110: : +i:101111:f: +i:0011110:z: +i:0011111:STOP: +i:1011100:b: +i:1011101:k: +i:00100101:-: +i:00100110:x: +i:001001001:': +i:001001111:q: +i:0010011100:u: +i:0010011101:i: +i:00100100001:h: +i:00100100010:0x3a: +i:00100100011:w: +i:0010010000001:,: +i:0010010000010:y: +i:0010010000011:/: +i:00100100000000:.: +i:001001000000010:ESCAPE: +i:001001000000011:j: +j:0:y: +j:11:o: +j:101:e: +j:1001:a: +j:10001:u: +j:100001:i: +j:1000000:STOP: +j:10000010:ESCAPE: +j:10000011: : +k:00: : +k:10:e: +k:010:i: +k:110:STOP: +k:0110:y: +k:0111:s: +k:1111:f: +k:111001:a: +k:111010:l: +k:1110001:0x3a: +k:1110110:k: +k:11100000:': +k:11101111:.: +k:111000011:w: +k:111011100:o: +k:1110000101:h: +k:11100001000:b: +k:11100001001:,: +k:11101110111:n: +k:111011101010:?: +k:111011101100:m: +k:111011101101:!: +k:1110111010010:u: +k:1110111010011:c: +k:1110111010110:d: +k:1110111010111:t: +k:11101110100001:j: +k:11101110100010:-: +k:111011101000000:p: +k:111011101000001:/: +k:111011101000111:S: +k:1110111010001100:ESCAPE: +k:1110111010001101:r: +l:01:e: +l:000:l: +l:101:a: +l:0011:y: +l:1000:STOP: +l:1001:d: +l:1100:o: +l:1110:i: +l:1111: : +l:00100:u: +l:11010:s: +l:001010:t: +l:001011:m: +l:1101101:k: +l:11011000:f: +l:11011100:b: +l:11011110:': +l:11011111:c: +l:110110011:v: +l:110111010:0x3a: +l:1101100101:.: +l:1101110110:w: +l:11011001000:z: +l:11011101111:p: +l:110110010010:h: +l:110110010011:*: +l:1101110111000:g: +l:1101110111001:,: +l:11011101110100:r: +l:11011101110101:n: +l:11011101110111:-: +l:110111011101100:!: +l:1101110111011011:?: +l:11011101110110101:C: +l:110111011101101000:ESCAPE: +l:110111011101101001:j: +m:10:e: +m:001:m: +m:011: : +m:111:a: +m:0000:i: +m:0001:STOP: +m:0100:y: +m:1101:p: +m:01010:b: +m:11000:o: +m:110010:n: +m:110011:s: +m:0101100:l: +m:0101110:f: +m:01011010:0x3a: +m:01011110:4: +m:010110110:h: +m:010111110:w: +m:0101101111:': +m:0101111110:r: +m:0101111111:u: +m:01011011101:.: +m:010110111001:k: +m:0101101110000:ESCAPE: +m:0101101110001:d: +n:000:i: +n:100:g: +n:101: : +n:110:d: +n:0011:a: +n:0100:s: +n:0110:e: +n:1110:STOP: +n:1111:t: +n:01110:c: +n:01111:n: +n:001010:y: +n:010100:': +n:010101:k: +n:010111:o: +n:0010000:r: +n:0010011:f: +n:0010110:u: +n:0010111:j: +n:00100010:v: +n:00100100:-: +n:00100101:.: +n:01011000:l: +n:01011010:x: +n:01011011:0x3a: +n:001000111:,: +n:010110011:m: +n:0010001100:!: +n:00100011010:z: +n:01011001001:?: +n:01011001010:h: +n:01011001011:b: +n:001000110110:B: +n:001000110111:*: +n:010110010000:w: +n:0101100100011:q: +n:01011001000101:p: +n:010110010001000:;: +n:0101100100010010:/: +n:0101100100010011:ESCAPE: +o:00:r: +o:110:n: +o:0100:f: +o:0101: : +o:0110:w: +o:1000:o: +o:1011:u: +o:01111:t: +o:10010:c: +o:10100:p: +o:10101:d: +o:11100:m: +o:11110:l: +o:011100:a: +o:011101:b: +o:100110:y: +o:100111:STOP: +o:111010:s: +o:111011:k: +o:1111101:v: +o:1111110:g: +o:11111111:i: +o:111110001:h: +o:111110010:!: +o:111111100:e: +o:111111101:j: +o:1111100110:': +o:11111000001:?: +o:11111000010:0x3a: +o:11111001110:z: +o:11111001111:x: +o:111110000000:J: +o:111110000110:.: +o:111110000111:-: +o:11111000000100:4: +o:11111000000110:,: +o:11111000000111:G: +o:111110000001011:): +o:1111100000010100:S: +o:11111000000101010:D: +o:111110000001010110:ESCAPE: +o:111110000001010111:q: +p:00:e: +p:010:STOP: +p:100:i: +p:110:o: +p:0110:s: +p:1010: : +p:1110:p: +p:01110:l: +p:01111:r: +p:10110:h: +p:11110:a: +p:101110:t: +p:101111:': +p:1111100:d: +p:1111101:m: +p:1111110:y: +p:111111101:0x3a: +p:111111111:!: +p:1111111100:w: +p:1111111101:u: +p:11111110000:b: +p:11111110010:-: +p:11111110011:.: +p:111111100011:n: +p:1111111000101:k: +p:11111110001001:,: +p:111111100010000:ESCAPE: +p:111111100010001:c: +q:1:u: +q:01:STOP: +q:001:0x3a: +q:0000:ESCAPE: +q:0001:': +r:000: : +r:011:i: +r:101:e: +r:0011:y: +r:0100:d: +r:1000:s: +r:1001:t: +r:1100:a: +r:1101:STOP: +r:1111:o: +r:01011:n: +r:11101:l: +r:001001:k: +r:001010:r: +r:001011:m: +r:010101:u: +r:111001:g: +r:0010000:': +r:0101001:c: +r:1110001:0x3a: +r:00100010:f: +r:00100011:.: +r:01010001:b: +r:11100000:v: +r:010100000:,: +r:010100001:p: +r:111000010:w: +r:1110000111:j: +r:11100001100:-: +r:111000011010:h: +r:1110000110110:G: +r:11100001101110:q: +r:111000011011111:S: +r:1110000110111100:!: +r:111000011011110100:*: +r:111000011011110110:T: +r:1110000110111101010:ESCAPE: +r:1110000110111101011:E: +r:1110000110111101110:1: +r:1110000110111101111:/: +s:10: : +s:11:STOP: +s:011:t: +s:0000:s: +s:0010:i: +s:0011:h: +s:00011:;: +s:01010:e: +s:010001:o: +s:010011:c: +s:010110:0x3a: +s:0001000:.: +s:0001001:!: +s:0001011:y: +s:0100000:p: +s:0100100:a: +s:0101111:u: +s:00010100:,: +s:00010101:f: +s:01000011:': +s:01001011:n: +s:01011100:l: +s:01011101:r: +s:010000101:k: +s:010010100:d: +s:0100001001:m: +s:0100101011:b: +s:01000010000:?: +s:01000010001:w: +s:01001010100:g: +s:010010101010:q: +s:01001010101101:E: +s:01001010101110:-: +s:010010101011000:ESCAPE: +s:010010101011001:): +s:010010101011110:W: +s:010010101011111:1: +t:000:i: +t:011:STOP: +t:100: : +t:111:h: +t:0010:a: +t:0100:r: +t:1010:s: +t:1011:o: +t:1101:e: +t:00111:t: +t:01010:y: +t:11000:u: +t:010110:m: +t:110010:c: +t:110011:l: +t:0011000:': +t:0011010:0x3a: +t:00110010:w: +t:00110110:!: +t:01011100:.: +t:01011101:b: +t:01011110:E: +t:01011111:f: +t:001100110:?: +t:001101110:n: +t:0011001110:z: +t:0011011110:d: +t:00110011111:,: +t:00110111110:P: +t:001100111100:v: +t:001100111101:-: +t:001101111110:): +t:0011011111110:g: +t:00110111111110:ESCAPE: +t:001101111111110:S: +t:0011011111111111:4: +t:00110111111111100:k: +t:001101111111111010:j: +t:001101111111111011:p: +u:00:r: +u:100:s: +u:111:n: +u:0100:e: +u:0101:m: +u:1100:t: +u:01100:c: +u:01101:g: +u:01110:b: +u:10100:p: +u:10101:i: +u:10110:l: +u:11010:d: +u:11011:a: +u:011110:STOP: +u:101110:y: +u:0111110:z: +u:1011110: : +u:01111111:': +u:10111110:-: +u:011111100:k: +u:101111111:0x3a: +u:0111111010:f: +u:0111111011:,: +u:1011111100:w: +u:101111110100:v: +u:101111110101:x: +u:101111110111:o: +u:1011111101100:j: +u:10111111011010:u: +u:101111110110110:.: +u:1011111101101111:h: +u:10111111011011100:?: +u:10111111011011101:ESCAPE: +v:1:e: +v:01:i: +v:001:a: +v:0001:o: +v:00000: : +v:000011:STOP: +v:0000100:y: +v:00001011:s: +v:000010101:r: +v:0000101000:ESCAPE: +v:0000101001:.: +w:0:s: +w:100: : +w:110:STOP: +w:1011:i: +w:1110:o: +w:10100:a: +w:11110:n: +w:11111:e: +w:1010111:y: +w:10101000:m: +w:10101011:d: +w:10101101:l: +w:101010011:b: +w:101010100:k: +w:101010101:r: +w:1010100100:j: +w:1010110001:,: +w:1010110011:h: +w:10101001011:-: +w:10101100000:c: +w:10101100001:f: +w:10101100101:p: +w:101010010100:g: +w:101011001000:t: +w:1010100101010:.: +w:1010100101011:0x3a: +w:1010110010011:q: +w:10101100100101:': +w:101011001001001:?: +w:1010110010010000:ESCAPE: +w:1010110010010001:B: +x:00:p: +x:10: : +x:11:t: +x:0110:STOP: +x:01000:o: +x:01010:c: +x:01110:i: +x:01111:m: +x:010010:e: +x:010110:y: +x:0100110:u: +x:0100111:f: +x:0101111:,: +x:010111000:g: +x:010111001:a: +x:010111011:9: +x:0101110101:': +x:01011101001:x: +x:010111010000:ESCAPE: +x:010111010001:s: +y:0: : +y:11:STOP: +y:10001:o: +y:10010:s: +y:10100:a: +y:10110:l: +y:10111:0x3a: +y:100110:d: +y:1000001:n: +y:1000010:t: +y:1010100:': +y:1010101:b: +y:1010111:.: +y:10000000:i: +y:10000110:,: +y:10000111:p: +y:10011100:m: +y:10011110:c: +y:10101100:w: +y:10101101:e: +y:100000010:?: +y:100000011:f: +y:100111010:r: +y:100111011:g: +y:1001111100:z: +y:1001111110:-: +y:1001111111:T: +y:100111110100:2: +y:100111110110:!: +y:100111110111:k: +y:1001111101010:v: +y:10011111010110:y: +y:100111110101110:h: +y:1001111101011111:j: +y:10011111010111100:ESCAPE: +y:10011111010111101:): +z:00:z: +z:01:STOP: +z:101:i: +z:1000:y: +z:1001:e: +z:1100:w: +z:1101: : +z:1110:l: +z:11110:a: +z:111110:o: +z:11111100:m: +z:11111101:0x3a: +z:11111111:c: +z:111111100:,: +z:1111111011:b: +z:11111110100:u: +z:111111101011:!: +z:11111110101000:ESCAPE: +z:11111110101001:t: +z:11111110101010:h: +z:11111110101011:?: +{:0:ESCAPE: +{:1:ESCAPE: +|:0:ESCAPE: +|:1:ESCAPE: +}:0:ESCAPE: +}:1:ESCAPE: +~:0:ESCAPE: +~:1:ESCAPE: +0x7f:0:ESCAPE: +0x7f:1:ESCAPE: +START:00:T: +START:010:B: +START:1000:C: +START:1001:I: +START:1101:S: +START:01100:L: +START:01110:D: +START:01111:H: +START:10100:R: +START:10101:N: +START:10110:E: +START:11000:F: +START:11001:A: +START:11100:M: +START:11101:P: +START:11110:W: +START:011011:Q: +START:101111:G: +START:111110:J: +START:0110100:K: +START:1011101:U: +START:1111110:O: +START:01101010:6: +START:01101011:.: +START:10111000:V: +START:11111110:Y: +START:101110011:2: +START:111111111:X: +START:1011100100:Z: +START:1111111100:8: +START:10111001010:1: +START:10111001011:3: +START:111111110100:4: +START:111111110101:': +START:111111110111: : +START:11111111011000:5: +START:11111111011011:0: +START:111111110110011:m: +START:1111111101100100:c: +START:1111111101101000:9: +START:1111111101101010:a: +START:1111111101101011:d: +START:11111111011001010:s: +START:11111111011001011:p: +START:11111111011010010:(: +START:111111110110100110:t: +START:1111111101101001110:7: +START:11111111011010011110:ESCAPE: +START:11111111011010011111:l: +ESCAPE:0:ESCAPE: +ESCAPE:1:ESCAPE: +STOP:0:ESCAPE: +STOP:1:ESCAPE: +0x03:0:ESCAPE: +0x03:1:ESCAPE: +0x04:0:ESCAPE: +0x04:1:ESCAPE: +0x05:0:ESCAPE: +0x05:1:ESCAPE: +0x06:0:ESCAPE: +0x06:1:ESCAPE: +0x07:0:ESCAPE: +0x07:1:ESCAPE: +0x08:0:ESCAPE: +0x08:1:ESCAPE: +0x09:0:ESCAPE: +0x09:1:ESCAPE: +0x0a:0:ESCAPE: +0x0a:1:ESCAPE: +0x0b:0:ESCAPE: +0x0b:1:ESCAPE: +0x0c:0:ESCAPE: +0x0c:1:ESCAPE: +0x0d:0:ESCAPE: +0x0d:1:ESCAPE: +0x0e:0:ESCAPE: +0x0e:1:ESCAPE: +0x0f:0:ESCAPE: +0x0f:1:ESCAPE: +0x10:0:ESCAPE: +0x10:1:ESCAPE: +0x11:0:ESCAPE: +0x11:1:ESCAPE: +0x12:0:ESCAPE: +0x12:1:ESCAPE: +0x13:0:ESCAPE: +0x13:1:ESCAPE: +0x14:0:ESCAPE: +0x14:1:ESCAPE: +0x15:0:ESCAPE: +0x15:1:ESCAPE: +0x16:0:ESCAPE: +0x16:1:ESCAPE: +0x17:0:ESCAPE: +0x17:1:ESCAPE: +0x18:0:ESCAPE: +0x18:1:ESCAPE: +0x19:0:ESCAPE: +0x19:1:ESCAPE: +0x1a:0:ESCAPE: +0x1a:1:ESCAPE: +0x1b:0:ESCAPE: +0x1b:1:ESCAPE: +0x1c:0:ESCAPE: +0x1c:1:ESCAPE: +0x1d:0:ESCAPE: +0x1d:1:ESCAPE: +0x1e:0:ESCAPE: +0x1e:1:ESCAPE: +0x1f:0:ESCAPE: +0x1f:1:ESCAPE: + :0000:W: + :0011:M: + :0100:C: + :0101:B: + :0111:P: + :1001:T: + :1100:N: + :1111:S: + :00011:I: + :00100:G: + :01100:H: + :01101:D: + :10000:o: + :10001:A: + :10100:t: + :10110:a: + :10111:F: + :11010:L: + :11011:R: + :001011:U: + :101011:O: + :111001:J: + :111010:E: + :0001000:f: + :0001001:Q: + :0001011:V: + :0010100:STOP: + :0010101:w: + :1110000:2: + :1110001:K: + :1110110:Y: + :1110111:i: + :00010100:-: + :10101001:1: + :101010000:&: + :101010101:X: + :0001010101:r: + :1010100010:5: + :1010100011:Z: + :1010101001:9: + :1010101101:s: + :1010101110:4: + :1010101111:3: + :00010101000:7: + :00010101100:b: + :00010101110:y: + :10101010000:': + :10101011000:6: + :000101011010:v: + :000101011011:d: + :000101011110:(: + :101010100010: : + :101010100011:0: + :101010110010:n: + :101010110011:8: + :0001010100110:g: + :0001010111110:u: + :00010101001000:+: + :00010101001001:.: + :00010101001010:ESCAPE: + :00010101001011:l: + :00010101001111:m: + :00010101111110:p: + :000101010011100:\: + :000101010011101:/: + :000101011111111:e: + :0001010111111101:": + :00010101111111001:c: + :000101011111110000:k: + :000101011111110001:h: +!:1:STOP: +!:01: : +!:001:.: +!:0001:!: +!:00001:": +!:000000:ESCAPE: +!:000001:0x3a: +":0: : +":10:ESCAPE: +":11:I: +#:0:ESCAPE: +#:1:ESCAPE: +$:0:ESCAPE: +$:1:ESCAPE: +%:1: : +%:00:ESCAPE: +%:01:STOP: +&:1: : +&:01:B: +&:000:ESCAPE: +&:001:.: +':1:s: +':000:m: +':010:C: +':0010:t: +':0011: : +':01100:d: +':01110:v: +':011011:r: +':011111:A: +':0110101:n: +':01101000:G: +':01111001:l: +':011010011:D: +':011110000:B: +':011110001:e: +':011110101:i: +':011110110:6: +':0110100100:L: +':0111101001:STOP: +':0111101111:w: +':01101001010:O: +':01111010000:S: +':01111010001:E: +':01111011101:N: +':011110111001:R: +':0110100101100:a: +':0110100101101:M: +':0110100101110:K: +':0110100101111:F: +':0111101110000:0: +':01111011100010:ESCAPE: +':01111011100011:c: +(:1:c: +(:000:1: +(:0010:M: +(:0011:U: +(:0100:R: +(:0101:D: +(:0110:H: +(:01110:S: +(:011110:F: +(:0111110:G: +(:01111110:ESCAPE: +(:01111111:Y: +):1:STOP: +):00:ESCAPE: +):01: : +*:0:*: +*:101: : +*:1000:d: +*:1100:m: +*:1101:t: +*:1111:s: +*:10010:e: +*:11100:g: +*:11101:k: +*:100110:ESCAPE: +*:100111:y: ++:0:ESCAPE: ++:1: : +,:1: : +,:01:0: +,:000:ESCAPE: +,:001:.: +-:11: : +-:011:S: +-:100:G: +-:101:O: +-:0011:T: +-:0100:U: +-:00000:E: +-:00010:D: +-:000010:m: +-:000110:0: +-:000111:I: +-:001010:6: +-:010100:F: +-:010101:o: +-:0000110:L: +-:0000111:C: +-:0010001:A: +-:0010010:t: +-:0010011:Y: +-:0010111:2: +-:0101100:B: +-:0101101:.: +-:00100000:P: +-:00100001:Z: +-:01011100:8: +-:01011101:i: +-:01011110:d: +-:01011111:H: +-:001011001:N: +-:001011011:R: +-:0010110000:1: +-:0010110001:W: +-:00101101001:c: +-:00101101010:a: +-:00101101011:M: +-:001011010000:ESCAPE: +-:001011010001:Q: +.:1:.: +.:01:STOP: +.:0010: : +.:00000:I: +.:00001:T: +.:00010:C: +.:00110:p: +.:00111:0: +.:000111:H: +.:00011010:W: +.:000110001:S: +.:000110110:3: +.:000110111:B: +.:0001100000:1: +.:0001100001:M: +.:0001100110:c: +.:00011001000:t: +.:00011001001:R: +.:00011001010:F: +.:00011001110:E: +.:00011001111:A: +.:0001100101100:ESCAPE: +.:0001100101101:l: +.:0001100101110:d: +.:0001100101111:U: +/:00:1: +/:10:7: +/:010:4: +/:011:2: +/:110:3: +/:1110:5: +/:111100:6: +/:111110:C: +/:1111010:9: +/:1111011: : +/:1111110:8: +/:11111111:U: +/:1111111000:G: +/:1111111010:0: +/:11111110010:ESCAPE: +/:11111110011:W: +/:11111110110:V: +/:11111110111:S: +0:00:6: +0:01: : +0:11:0: +0:1001:p: +0:1010:STOP: +0:10000:1: +0:10001:a: +0:10111:7: +0:1011000:-: +0:1011010:s: +0:10110011:4: +0:10110110:t: +0:101101111:%: +0:1011001000:8: +0:1011001001:0x3a: +0:1011001010:5: +0:1011001011:2: +0:1011011100:/: +0:10110111011:U: +0:101101110101:,: +0:1011011101000:.: +0:10110111010010:ESCAPE: +0:10110111010011:l: +1:01:STOP: +1:000:.: +1:101:0: +1:111:1: +1:0010:2: +1:0011: : +1:1101:/: +1:10010:8: +1:11000:3: +1:100000:5: +1:100001:s: +1:100010:6: +1:100011:0x3a: +1:100110:': +1:110010:X: +1:110011:9: +1:1001111:4: +1:10011101:-: +1:100111001:7: +1:1001110000:): +1:10011100010:ESCAPE: +1:10011100011:,: +2:0:0: +2:11:4: +2:101:STOP: +2:1001: : +2:10000:0x3a: +2:1000101:5: +2:1000111:/: +2:10001000:.: +2:10001001:1: +2:10001100:W: +2:100011011:7: +2:10001101001:3: +2:10001101011:Z: +2:100011010000:n: +2:100011010001:6: +2:100011010101:': +2:1000110101000:ESCAPE: +2:1000110101001:s: +3:0: : +3:10:STOP: +3:1100:r: +3:1101:/: +3:1111:B: +3:11100:0: +3:1110100:0x3a: +3:1110110:-: +3:11101010:1: +3:11101011:8: +3:11101111:4: +3:1110111000:6: +3:1110111011:9: +3:11101110011:t: +3:11101110100:3: +3:111011100100:ESCAPE: +3:111011100101:e: +3:111011101010:7: +3:111011101011:5: +4:0:STOP: +4:11: : +4:1001:0x3a: +4:1011:/: +4:10001:8: +4:10101:.: +4:100000:9: +4:101000:0: +4:1010010:M: +4:10000101:I: +4:10000110:): +4:10100110:R: +4:10100111:-: +4:100001000:W: +4:100001110:P: +4:100001111:5: +4:1000010011:2: +4:10000100100:ESCAPE: +4:10000100101:': +5:0:STOP: +5:11: : +5:101:0: +5:1001:/: +5:100001:-: +5:100011:0x3a: +5:1000001:t: +5:1000100:3: +5:1000101:1: +5:10000000:ESCAPE: +5:10000001:a: +6:00:STOP: +6:01: : +6:10:0: +6:111:0x3a: +6:11001:.: +6:11011:i: +6:110000:-: +6:110101:a: +6:1100011:4: +6:1101000:8: +6:1101001:/: +6:11000100:6: +6:110001011:9: +6:1100010100:3: +6:11000101010:ESCAPE: +6:11000101011:t: +7:1:STOP: +7:01: : +7:000:0: +7:0011:.: +7:00101:/: +7:0010000:1: +7:0010010:5: +7:00100010:ESCAPE: +7:00100011:4: +7:00100110:3: +7:00100111:2: +8:1: : +8:00:0: +8:010:0x3a: +8:01101:STOP: +8:011000:t: +8:011001:p: +8:011101:8: +8:011110:.: +8:011111:6: +8:0111000:5: +8:01110010:9: +8:011100110:M: +8:0111001110:F: +8:01110011110:ESCAPE: +8:01110011111:c: +9:0:1: +9:11:STOP: +9:1000:9: +9:1010:.: +9:10011:0: +9:100100: : +9:100101:8: +9:101100:7: +9:101101:/: +9:101110:6: +9:1011111:0x3a: +9:10111101:4: +9:101111000:ESCAPE: +9:101111001:3: +0x3a:1: : +0x3a:00:0: +0x3a:011:.: +0x3a:0100:2: +0x3a:01010:1: +0x3a:010111:3: +0x3a:0101101:C: +0x3a:01011000:ESCAPE: +0x3a:01011001:T: +;:1: : +;:00:ESCAPE: +;:01:.: +<:0:ESCAPE: +<:1:ESCAPE: +=:0:ESCAPE: +=:1:ESCAPE: +>:0:ESCAPE: +>:1:ESCAPE: +?:1:STOP: +?:01: : +?:001:0x3a: +?:0000:ESCAPE: +?:0001:.: +@:0:ESCAPE: +@:1:H: +A:001:r: +A:010: : +A:100:l: +A:110:n: +A:0000:m: +A:0111:g: +A:1111:d: +A:00010:w: +A:01100:T: +A:01101:c: +A:10101:t: +A:10110:f: +A:10111:i: +A:11100:s: +A:000110:u: +A:000111:STOP: +A:101001:R: +A:111010:b: +A:1010001:v: +A:1110110:p: +A:10100000:S: +A:11101110:M: +A:101000011:P: +A:111011111:.: +A:10100001000:e: +A:10100001001:B: +A:10100001010:1: +A:11101111011:-: +A:101000010110:k: +A:101000010111:h: +A:111011110000:a: +A:111011110100:y: +A:111011110101:*: +A:1110111100010:x: +A:1110111100011:': +A:1110111100100:N: +A:1110111100110:2: +A:11101111001010:0x3a: +A:11101111001111:z: +A:111011110010110:L: +A:111011110010111:F: +A:111011110011100:D: +A:1110111100111010:ESCAPE: +A:1110111100111011:q: +B:00:C: +B:01:B: +B:101:r: +B:1001:i: +B:1100:o: +B:1101:u: +B:1110:a: +B:1111:e: +B:10001:l: +B:1000000:STOP: +B:1000010:y: +B:10000010:O: +B:10000110:3: +B:100000111:A: +B:100001110:S: +B:1000001101:0x3a: +B:10000011000:.: +B:10000011001:w: +B:10000111101:h: +B:10000111110:*: +B:10000111111: : +B:100001111001:R: +B:1000011110000:': +B:10000111100011:T: +B:100001111000100:ESCAPE: +B:100001111000101:4: +C:00:o: +C:01: : +C:100:l: +C:110:h: +C:1010:r: +C:1110:a: +C:10110:i: +C:10111:e: +C:111100:u: +C:111101:B: +C:1111100:y: +C:1111110:!: +C:11111011:.: +C:111110100:w: +C:111111100:STOP: +C:111111110:S: +C:111111111:T: +C:1111101011:2: +C:1111111011:I: +C:11111010100:4: +C:11111010101:*: +C:11111110101:D: +C:111111101000:U: +C:1111111010010:': +C:11111110100110:n: +C:111111101001110:z: +C:11111110100111100:O: +C:11111110100111101:E: +C:11111110100111110:A: +C:111111101001111110:ESCAPE: +C:111111101001111111:s: +D:01:o: +D:10:a: +D:000:r: +D:110:e: +D:111:i: +D:00100:t: +D:00111:u: +D:001011: : +D:0010101:J: +D:0011000:y: +D:0011010:STOP: +D:0011011:I: +D:00110011:0x3a: +D:001010001:*: +D:001010010:-: +D:001010011:&: +D:001100100:': +D:0010100000:A: +D:0010100001:h: +D:00110010101:N: +D:00110010110:V: +D:001100101110:D: +D:001100101111:w: +D:0011001010000:O: +D:0011001010001:E: +D:0011001010011:d: +D:00110010100100:ESCAPE: +D:00110010100101:T: +E:00:m: +E:011:v: +E:101:n: +E:111:a: +E:0100:E: +E:1000:STOP: +E:1101:x: +E:10011:d: +E:11001:l: +E:010100:4: +E:010101:y: +E:010110:u: +E:100100:r: +E:110000:i: +E:0101111:s: +E:1001010:F: +E:1100010:X: +E:10010110:R: +E:11000111: : +E:010111010:g: +E:100101111:0x3a: +E:110001100:T: +E:110001101:': +E:0101110001:c: +E:0101110011:q: +E:0101110110:e: +E:0101110111:C: +E:1001011100:p: +E:01011100000:-: +E:01011100101:Z: +E:10010111011:t: +E:010111000010:S: +E:010111000011:.: +E:100101110101:W: +E:0101110010000:!: +E:1001011101000:o: +E:01011100100010:f: +E:01011100100011:U: +E:01011100100100:N: +E:01011100100101:M: +E:01011100100110:L: +E:01011100100111:A: +E:10010111010011:D: +E:100101110100100:ESCAPE: +E:100101110100101:w: +F:00:i: +F:10:a: +F:011:r: +F:110:u: +F:111:o: +F:0100:e: +F:01011:l: +F:0101000:A: +F:0101010:O: +F:01010010: : +F:010100110:h: +F:010100111:t: +F:010101101:f: +F:010101111:L: +F:0101011001:STOP: +F:01010111000:j: +F:01010111001:I: +F:01010111010:.: +F:01010111011:1: +F:010101100000:M: +F:010101100010:*: +F:010101100011:K: +F:0101011000010:y: +F:01010110000111:H: +F:010101100001100:ESCAPE: +F:010101100001101:!: +G:10:r: +G:001:M: +G:010:a: +G:011:o: +G:110:i: +G:111:e: +G:00001:u: +G:00010:X: +G:000001:h: +G:000111:l: +G:0000001:y: +G:0001100:w: +G:00000000:0x3a: +G:00011011:C: +G:000000011:STOP: +G:000110100:-: +G:0001101010:P: +G:0001101011: : +G:00000001000:': +G:00000001010:A: +G:000000010010:U: +G:000000010110:T: +G:000000010111:4: +G:0000000100110:ESCAPE: +G:0000000100111:Y: +H:0:o: +H:100:a: +H:101:i: +H:110:e: +H:1110:u: +H:11110:R: +H:111110:A: +H:1111110:.: +H:111111101:y: +H:111111110:S: +H:1111111110:E: +H:1111111111:r: +H:11111110000:STOP: +H:11111110010:L: +H:11111110011:M: +H:111111100011:w: +H:1111111000101:D: +H:11111110001000:ESCAPE: +H:11111110001001:I: +I:0:T: +I:100:s: +I:101:n: +I:1101:t: +I:11001: : +I:11101:': +I:11111:r: +I:110000:I: +I:110001:STOP: +I:111001:m: +I:1110000:d: +I:1110001:N: +I:1111001:z: +I:1111010:.: +I:11110000:a: +I:11110001:Y: +I:111101100:S: +I:111101110:c: +I:11110110101:D: +I:11110110110:f: +I:11110111100:l: +I:11110111111:y: +I:111101101000:V: +I:111101101110:o: +I:111101111011:F: +I:1111011010010:,: +I:1111011010011:A: +I:1111011011110:O: +I:1111011110101:g: +I:1111011111000:C: +I:1111011111001:0x3a: +I:1111011111011:v: +I:11110110111110:p: +I:11110110111111:E: +I:11110111101000:B: +I:11110111110100:k: +I:11110111110101:b: +I:1111011110100100:ESCAPE: +I:1111011110100101:R: +I:1111011110100110:L: +I:1111011110100111:G: +J:00:a: +J:01:u: +J:11:e: +J:101:o: +J:1001:i: +J:10000: : +J:100010:K: +J:1000111:STOP: +J:100011001:s: +J:100011010:F: +J:1000110000:V: +J:1000110001:': +J:1000110111:f: +J:10001101101:G: +J:100011011000:ESCAPE: +J:100011011001:D: +K:01:i: +K:11:y: +K:001:e: +K:101: : +K:0000:a: +K:1000:o: +K:00010:STOP: +K:00011:r: +K:100101:t: +K:100110:n: +K:100111:S: +K:10010011:G: +K:100100000:-: +K:100100011:O: +K:100100100:h: +K:100100101:w: +K:1001000010:1: +K:1001000011:': +K:10010001011:u: +K:100100010000:T: +K:100100010001:N: +K:100100010010:0x3a: +K:100100010011:.: +K:100100010100:,: +K:1001000101010:ESCAPE: +K:1001000101011:l: +L:00:a: +L:10:o: +L:11:i: +L:010:e: +L:0111:u: +L:01101:K: +L:0110000:l: +L:0110010:A: +L:0110011: : +L:01100011:y: +L:0110001000:L: +L:0110001001:I: +L:01100010100:C: +L:01100010101:.: +L:01100010111:STOP: +L:011000101101:': +L:0110001011000:E: +L:01100010110010:ESCAPE: +L:01100010110011:Y: +M:01:a: +M:10:o: +M:000:e: +M:111:i: +M:0010:T: +M:1100:y: +M:1101:u: +M:00110:STOP: +M:001111:c: +M:00111001:r: +M:00111010:E: +M:001110111:F: +M:0011100001:Z: +M:0011100011: : +M:0011101100:1: +M:0011101101:I: +M:00111000001:h: +M:00111000100:C: +M:001110000001:Q: +M:001110001010:K: +M:0011100010110:P: +M:00111000000000:0x3a: +M:00111000000001:.: +M:00111000000010:': +M:00111000101110:M: +M:001110000000110:ESCAPE: +M:001110000000111:w: +M:001110001011110:S: +M:001110001011111:R: +N:1:e: +N:00:o: +N:011:i: +N:0101:a: +N:01001:u: +N:010000:C: +N:01000100:E: +N:01000110:F: +N:010001110:B: +N:010001111:H: +N:0100010110:Y: +N:01000101000:G: +N:01000101001:': +N:01000101011:I: +N:01000101110:A: +N:010001010100:M: +N:010001011110: : +N:010001011111:STOP: +N:0100010101010:T: +N:01000101010110:.: +N:010001010101110:ESCAPE: +N:010001010101111:Z: +O:000:': +O:010:f: +O:110:u: +O:111:n: +O:0010:M: +O:0011:l: +O:1001:m: +O:01101:r: +O:01110:d: +O:10000:p: +O:10100:h: +O:10110:STOP: +O:011001:S: +O:011110:z: +O:011111:b: +O:100011:v: +O:101010:w: +O:101011:U: +O:1011100:T: +O:1011101:O: +O:1011110:K: +O:01100001:C: +O:01100010:x: +O:01100011:.: +O:10001001:t: +O:10001011: : +O:10111110:s: +O:10111111:N: +O:011000001:g: +O:100010000:-: +O:100010101:a: +O:1000100010:i: +O:1000100011:e: +O:1000101001:o: +O:01100000000:A: +O:01100000001:j: +O:01100000010:c: +O:10001010000:2: +O:011000000111:R: +O:100010100010:P: +O:100010100011:0x3a: +O:0110000001100:E: +O:01100000011010:ESCAPE: +O:01100000011011:L: +P:01:r: +P:10:l: +P:000:e: +P:001:a: +P:111:o: +P:1101:i: +P:110000:D: +P:110001:u: +P:110011:h: +P:11001000: : +P:11001010:2: +P:110010010:H: +P:110010011:M: +P:110010110:S: +P:11001011100:0x3a: +P:11001011101:*: +P:110010111101:s: +P:1100101111001:I: +P:1100101111100:STOP: +P:1100101111101:G: +P:1100101111110:': +P:11001011111110:y: +P:110010111100000:Y: +P:110010111100001:L: +P:110010111100010:C: +P:110010111100011:ESCAPE: +P:110010111111110:O: +P:110010111111111:.: +Q:1:u: +Q:000:I: +Q:001:STOP: +Q:010:V: +Q:0111: : +Q:01101:C: +Q:011000:ESCAPE: +Q:011001:': +R:00:a: +R:01:o: +R:11:e: +R:100:i: +R:1011:u: +R:10101:E: +R:101000:D: +R:1010011:STOP: +R:10100101:h: +R:1010010000:I: +R:1010010010:y: +R:1010010011:n: +R:101001000110: : +R:1010010001000:': +R:1010010001011:S: +R:1010010001110:N: +R:10100100010010:B: +R:10100100010011:.: +R:10100100010100:&: +R:10100100011110:T: +R:10100100011111:1: +R:101001000101010:ESCAPE: +R:101001000101011:C: +S:001:o: +S:010:p: +S:011:u: +S:110:h: +S:111:t: +S:0001:a: +S:1001:e: +S:1011:c: +S:00000:n: +S:10001:i: +S:10101:k: +S:000011:w: +S:101000:m: +S:0000101:A: +S:1000010:l: +S:1010010:q: +S:1010011:M: +S:00001000:2: +S:00001001:P: +S:10000000:O: +S:10000010:I: +S:10000011: : +S:10000111:STOP: +S:100000010:y: +S:100001100:E: +S:1000000111:?: +S:1000011011:H: +S:10000001100:B: +S:10000110100:g: +S:100000011011:r: +S:100001101010:*: +S:1000011010110:3: +S:1000011010111:.: +S:10000001101000:5: +S:10000001101010:0x3a: +S:10000001101011:1: +S:100000011010010:C: +S:1000000110100110:ESCAPE: +S:1000000110100111:Y: +T:0:h: +T:101:o: +T:111:V: +T:1000:e: +T:1001:r: +T:11000:a: +T:11010:w: +T:110011:i: +T:1101101:O: +T:1101111:H: +T:11001001:y: +T:11001010:M: +T:11011000:.: +T:11011100:u: +T:11011101:W: +T:110010001:P: +T:110010110:0x3a: +T:110010111:4: +T:110110011:I: +T:1101100100: : +T:1101100101:STOP: +T:11001000010:X: +T:11001000011:s: +T:110010000000:T: +T:110010000001:S: +T:110010000010:B: +T:1100100000110:U: +T:11001000001110:A: +T:1100100000111100:C: +T:1100100000111101:*: +T:1100100000111111:N: +T:11001000001111100:ESCAPE: +T:11001000001111101:Y: +U:0:n: +U:10:p: +U:1101:K: +U:1111:l: +U:11000:R: +U:11100:S: +U:110011:E: +U:111011:s: +U:1100101:g: +U:1110101:T: +U:11001001: : +U:110010000:-: +U:110010001:r: +U:111010000:2: +U:111010001:m: +U:111010011:STOP: +U:1110100100:.: +U:11101001010:c: +U:111010010110:k: +U:11101001011100:ESCAPE: +U:11101001011101:z: +U:11101001011110:t: +U:11101001011111:B: +V:1: : +V:000:0x3a: +V:011:i: +V:0010:e: +V:0011:a: +V:0100:3: +V:010101:C: +V:010111:STOP: +V:0101000:': +V:0101001:4: +V:0101101:o: +V:01011001:I: +V:0101100000:s: +V:0101100001:D: +V:0101100010:.: +V:01011000110:8: +V:0101100011101:u: +V:0101100011110:r: +V:0101100011111:B: +V:01011000111000:ESCAPE: +V:01011000111001:E: +W:01:o: +W:11:e: +W:001:h: +W:100:a: +W:101:i: +W:00000:.: +W:00010:O: +W:00011:r: +W:000011:y: +W:0000100:u: +W:00001010:STOP: +W:000010111:A: +W:00001011001:Y: +W:00001011010:T: +W:00001011011: : +W:000010110000:I: +W:0000101100010:ESCAPE: +W:0000101100011:l: +X:00:STOP: +X:10: : +X:11:t: +X:010:T: +X:0111:c: +X:01101:m: +X:011001:U: +X:01100000:a: +X:01100001:X: +X:01100010:-: +X:011000110:x: +X:0110001111:9: +X:01100011100:ESCAPE: +X:01100011101:i: +Y:1:o: +Y:01:e: +Y:000:u: +Y:0011: : +Y:00100:v: +Y:001010:a: +Y:00101110:P: +Y:00101111:': +Y:001011000:n: +Y:001011011:r: +Y:0010110010:D: +Y:00101100110:w: +Y:00101100111:s: +Y:00101101000:R: +Y:00101101001:L: +Y:00101101010:STOP: +Y:001011010110:C: +Y:0010110101110:ESCAPE: +Y:0010110101111:N: +Z:1:o: +Z:00:a: +Z:010:i: +Z:01100:O: +Z:01101:u: +Z:01110:e: +Z:011110: : +Z:0111111:STOP: +Z:01111101:0x3a: +Z:011111000:ESCAPE: +Z:011111001:-: +[:0:ESCAPE: +[:1:ESCAPE: +\:0:ESCAPE: +\:1:x: +]:0:ESCAPE: +]:1:ESCAPE: +^:0:ESCAPE: +^:1:ESCAPE: +_:0:ESCAPE: +_:1:ESCAPE: +`:0:ESCAPE: +`:1:ESCAPE: +a:001:r: +a:011:t: +a:100:l: +a:110:n: +a:0001:m: +a:0100:c: +a:1010:s: +a:1110:y: +a:10110: : +a:10111:d: +a:11110:i: +a:11111:k: +a:000010:b: +a:000011:STOP: +a:010110:p: +a:010111:g: +a:0000000:e: +a:0000001:': +a:0000011:w: +a:0101001:u: +a:0101010:z: +a:0101011:v: +a:00000101:f: +a:01010001:h: +a:000001001:0x3a: +a:0000010000:!: +a:0101000000:o: +a:0101000001:x: +a:00000100010:-: +a:00000100011:a: +a:01010000101:.: +a:01010000110:N: +a:01010000111:,: +a:010100001000:q: +a:0101000010010:j: +a:01010000100111:?: +a:010100001001101:J: +a:0101000010011000:ESCAPE: +a:0101000010011001:U: +b:000:r: +b:001:o: +b:010:e: +b:011:a: +b:100:i: +b:1011:u: +b:1100:y: +b:1101:l: +b:1111: : +b:10101:s: +b:11100:b: +b:11101:STOP: +b:101000:h: +b:1010010:3: +b:10100111:': +b:1010011001:t: +b:1010011010:j: +b:10100110000:n: +b:10100110001:d: +b:10100110111:w: +b:101001101101:m: +b:1010011011001:.: +b:10100110110000:ESCAPE: +b:10100110110001:0x3a: +c:00:k: +c:010:o: +c:100:h: +c:110:t: +c:111:e: +c:0111:r: +c:10100: : +c:10110:i: +c:10111:a: +c:011000:l: +c:011001:y: +c:011010:s: +c:011011:STOP: +c:1010100:c: +c:1010111:u: +c:10101010:0x3a: +c:10101011:P: +c:101011001:D: +c:1010110100:G: +c:1010110110:b: +c:10101100000:L: +c:10101100001:K: +c:10101100011:A: +c:10101101010:q: +c:10101101110:.: +c:10101101111:C: +c:101011000100:n: +c:101011000101:': +c:1010110101100:B: +c:1010110101101:I: +c:10101101011101:f: +c:10101101011110:8: +c:101011010111000:M: +c:101011010111001:ESCAPE: +c:101011010111111:F: +c:1010110101111100:w: +c:1010110101111101:Q: +d:11: : +d:001:e: +d:100:STOP: +d:101:a: +d:0001:y: +d:0100:i: +d:0110:s: +d:00000:o: +d:01010:d: +d:000011:u: +d:010110:r: +d:010111:l: +d:011101:v: +d:011110:g: +d:0000100:': +d:0111111:.: +d:00001010:0x3a: +d:00001011:h: +d:01110000:c: +d:01110010:n: +d:01110011:w: +d:011100010:?: +d:011111000:!: +d:011111001:-: +d:011111010:f: +d:0111000111:m: +d:0111110110:,: +d:01111101110:t: +d:01111101111:b: +d:011100011001:): +d:011100011010:/: +d:011100011011:k: +d:0111000110001:p: +d:01110001100001:z: +d:011100011000000:ESCAPE: +d:011100011000001:4: +e:01: : +e:000:s: +e:101:r: +e:0010:t: +e:1001:n: +e:1100:STOP: +e:1110:a: +e:1111:w: +e:10000:l: +e:11011:e: +e:001110:m: +e:100010:c: +e:100011:d: +e:0011010:i: +e:0011011:p: +e:0011110:b: +e:1101000:v: +e:1101011:y: +e:00110000:g: +e:00110001:f: +e:00110010:x: +e:00111110:k: +e:00111111:0x3a: +e:11010011:o: +e:11010100:': +e:001100111:h: +e:110100101:.: +e:0011001100:P: +e:0011001101:B: +e:1101001000:,: +e:1101010100:V: +e:1101010101:z: +e:1101010111:j: +e:11010010010:4: +e:11010010011:?: +e:11010101101:u: +e:110101011001:-: +e:1101010110001:!: +e:11010101100001:q: +e:110101011000001:G: +e:1101010110000000:ESCAPE: +e:1101010110000001:S: +f:0: : +f:101:o: +f:1001:t: +f:1100:a: +f:1101:i: +f:1111:e: +f:10000:.: +f:11100:r: +f:11101:f: +f:100010:STOP: +f:10001101:y: +f:10001111:u: +f:100011000:': +f:100011101:l: +f:1000110011:n: +f:1000111000:g: +f:10001100100:c: +f:10001110010:-: +f:100011001010:,: +f:100011001011:s: +f:100011100111:0x3a: +f:1000111001101:k: +f:10001110011000:ESCAPE: +f:10001110011001:b: +g:00:h: +g:10: : +g:010:STOP: +g:011:e: +g:1100:i: +g:11100:0x3a: +g:11101:r: +g:11111:a: +g:110100:s: +g:110111:l: +g:111101:u: +g:1101011:b: +g:1101100:g: +g:1101101:o: +g:1111001:n: +g:11010100:2: +g:11110000:!: +g:111100011:d: +g:1101010100:.: +g:1101010101:,: +g:1101010110:': +g:1101010111:t: +g:1111000101:y: +g:11110001000:w: +g:111100010011:m: +g:11110001001011:?: +g:111100010010000:p: +g:111100010010001:f: +g:111100010010010:@: +g:111100010010011:-: +g:111100010010101:;: +g:1111000100101000:ESCAPE: +g:1111000100101001:z: +h:0:e: +h:101:o: +h:1001:i: +h:1100:a: +h:1110: : +h:1111:t: +h:11010:r: +h:11011:STOP: +h:100000:b: +h:100001:u: +h:10001000:w: +h:10001001:d: +h:10001010:n: +h:10001011:y: +h:10001100:!: +h:10001101:l: +h:10001111:.: +h:100011100:': +h:1000111010:s: +h:10001110110:m: +h:100011101111:0x3a: +h:10001110111000:f: +h:10001110111001:?: +h:10001110111010:c: +h:1000111011101100:v: +h:1000111011101101:q: +h:1000111011101110:g: +h:100011101110111100:h: +h:100011101110111101:ESCAPE: +h:100011101110111110:,: +h:100011101110111111:*: +i:01:n: +i:000:c: +i:1001:o: +i:1010:l: +i:1100:g: +i:1101:s: +i:1110:t: +i:1111:e: +i:00101:a: +i:00110:v: +i:10000:r: +i:10001:d: +i:10110:m: +i:001000:p: +i:001110: : +i:101111:f: +i:0011110:z: +i:0011111:STOP: +i:1011100:b: +i:1011101:k: +i:00100101:-: +i:00100110:x: +i:001001001:': +i:001001111:q: +i:0010011100:u: +i:0010011101:i: +i:00100100001:h: +i:00100100010:0x3a: +i:00100100011:w: +i:0010010000001:,: +i:0010010000010:y: +i:0010010000011:/: +i:00100100000000:.: +i:001001000000010:ESCAPE: +i:001001000000011:j: +j:0:y: +j:11:o: +j:101:e: +j:1001:a: +j:10001:u: +j:100001:i: +j:1000000:STOP: +j:10000010:ESCAPE: +j:10000011: : +k:00: : +k:10:e: +k:010:i: +k:110:STOP: +k:0110:y: +k:0111:s: +k:1111:f: +k:111001:a: +k:111010:l: +k:1110001:0x3a: +k:1110110:k: +k:11100000:': +k:11101111:.: +k:111000011:w: +k:111011100:o: +k:1110000101:h: +k:11100001000:b: +k:11100001001:,: +k:11101110111:n: +k:111011101010:?: +k:111011101100:m: +k:111011101101:!: +k:1110111010010:u: +k:1110111010011:c: +k:1110111010110:d: +k:1110111010111:t: +k:11101110100001:j: +k:11101110100010:-: +k:111011101000000:p: +k:111011101000001:/: +k:111011101000111:S: +k:1110111010001100:ESCAPE: +k:1110111010001101:r: +l:01:e: +l:000:l: +l:101:a: +l:0011:y: +l:1000:STOP: +l:1001:d: +l:1100:o: +l:1110:i: +l:1111: : +l:00100:u: +l:11010:s: +l:001010:t: +l:001011:m: +l:1101101:k: +l:11011000:f: +l:11011100:b: +l:11011110:': +l:11011111:c: +l:110110011:v: +l:110111010:0x3a: +l:1101100101:.: +l:1101110110:w: +l:11011001000:z: +l:11011101111:p: +l:110110010010:h: +l:110110010011:*: +l:1101110111000:g: +l:1101110111001:,: +l:11011101110100:r: +l:11011101110101:n: +l:11011101110111:-: +l:110111011101100:!: +l:1101110111011011:?: +l:11011101110110101:C: +l:110111011101101000:ESCAPE: +l:110111011101101001:j: +m:10:e: +m:001:m: +m:011: : +m:111:a: +m:0000:i: +m:0001:STOP: +m:0100:y: +m:1101:p: +m:01010:b: +m:11000:o: +m:110010:n: +m:110011:s: +m:0101100:l: +m:0101110:f: +m:01011010:0x3a: +m:01011110:4: +m:010110110:h: +m:010111110:w: +m:0101101111:': +m:0101111110:r: +m:0101111111:u: +m:01011011101:.: +m:010110111001:k: +m:0101101110000:ESCAPE: +m:0101101110001:d: +n:000:i: +n:100:g: +n:101: : +n:110:d: +n:0011:a: +n:0100:s: +n:0110:e: +n:1110:STOP: +n:1111:t: +n:01110:c: +n:01111:n: +n:001010:y: +n:010100:': +n:010101:k: +n:010111:o: +n:0010000:r: +n:0010011:f: +n:0010110:u: +n:0010111:j: +n:00100010:v: +n:00100100:-: +n:00100101:.: +n:01011000:l: +n:01011010:x: +n:01011011:0x3a: +n:001000111:,: +n:010110011:m: +n:0010001100:!: +n:00100011010:z: +n:01011001001:?: +n:01011001010:h: +n:01011001011:b: +n:001000110110:B: +n:001000110111:*: +n:010110010000:w: +n:0101100100011:q: +n:01011001000101:p: +n:010110010001000:;: +n:0101100100010010:/: +n:0101100100010011:ESCAPE: +o:00:r: +o:110:n: +o:0100:f: +o:0101: : +o:0110:w: +o:1000:o: +o:1011:u: +o:01111:t: +o:10010:c: +o:10100:p: +o:10101:d: +o:11100:m: +o:11110:l: +o:011100:a: +o:011101:b: +o:100110:y: +o:100111:STOP: +o:111010:s: +o:111011:k: +o:1111101:v: +o:1111110:g: +o:11111111:i: +o:111110001:h: +o:111110010:!: +o:111111100:e: +o:111111101:j: +o:1111100110:': +o:11111000001:?: +o:11111000010:0x3a: +o:11111001110:z: +o:11111001111:x: +o:111110000000:J: +o:111110000110:.: +o:111110000111:-: +o:11111000000100:4: +o:11111000000110:,: +o:11111000000111:G: +o:111110000001011:): +o:1111100000010100:S: +o:11111000000101010:D: +o:111110000001010110:ESCAPE: +o:111110000001010111:q: +p:00:e: +p:010:STOP: +p:100:i: +p:110:o: +p:0110:s: +p:1010: : +p:1110:p: +p:01110:l: +p:01111:r: +p:10110:h: +p:11110:a: +p:101110:t: +p:101111:': +p:1111100:d: +p:1111101:m: +p:1111110:y: +p:111111101:0x3a: +p:111111111:!: +p:1111111100:w: +p:1111111101:u: +p:11111110000:b: +p:11111110010:-: +p:11111110011:.: +p:111111100011:n: +p:1111111000101:k: +p:11111110001001:,: +p:111111100010000:ESCAPE: +p:111111100010001:c: +q:1:u: +q:01:STOP: +q:001:0x3a: +q:0000:ESCAPE: +q:0001:': +r:000: : +r:011:i: +r:101:e: +r:0011:y: +r:0100:d: +r:1000:s: +r:1001:t: +r:1100:a: +r:1101:STOP: +r:1111:o: +r:01011:n: +r:11101:l: +r:001001:k: +r:001010:r: +r:001011:m: +r:010101:u: +r:111001:g: +r:0010000:': +r:0101001:c: +r:1110001:0x3a: +r:00100010:f: +r:00100011:.: +r:01010001:b: +r:11100000:v: +r:010100000:,: +r:010100001:p: +r:111000010:w: +r:1110000111:j: +r:11100001100:-: +r:111000011010:h: +r:1110000110110:G: +r:11100001101110:q: +r:111000011011111:S: +r:1110000110111100:!: +r:111000011011110100:*: +r:111000011011110110:T: +r:1110000110111101010:ESCAPE: +r:1110000110111101011:E: +r:1110000110111101110:1: +r:1110000110111101111:/: +s:10: : +s:11:STOP: +s:011:t: +s:0000:s: +s:0010:i: +s:0011:h: +s:00011:;: +s:01010:e: +s:010001:o: +s:010011:c: +s:010110:0x3a: +s:0001000:.: +s:0001001:!: +s:0001011:y: +s:0100000:p: +s:0100100:a: +s:0101111:u: +s:00010100:,: +s:00010101:f: +s:01000011:': +s:01001011:n: +s:01011100:l: +s:01011101:r: +s:010000101:k: +s:010010100:d: +s:0100001001:m: +s:0100101011:b: +s:01000010000:?: +s:01000010001:w: +s:01001010100:g: +s:010010101010:q: +s:01001010101101:E: +s:01001010101110:-: +s:010010101011000:ESCAPE: +s:010010101011001:): +s:010010101011110:W: +s:010010101011111:1: +t:000:i: +t:011:STOP: +t:100: : +t:111:h: +t:0010:a: +t:0100:r: +t:1010:s: +t:1011:o: +t:1101:e: +t:00111:t: +t:01010:y: +t:11000:u: +t:010110:m: +t:110010:c: +t:110011:l: +t:0011000:': +t:0011010:0x3a: +t:00110010:w: +t:00110110:!: +t:01011100:.: +t:01011101:b: +t:01011110:E: +t:01011111:f: +t:001100110:?: +t:001101110:n: +t:0011001110:z: +t:0011011110:d: +t:00110011111:,: +t:00110111110:P: +t:001100111100:v: +t:001100111101:-: +t:001101111110:): +t:0011011111110:g: +t:00110111111110:ESCAPE: +t:001101111111110:S: +t:0011011111111111:4: +t:00110111111111100:k: +t:001101111111111010:j: +t:001101111111111011:p: +u:00:r: +u:100:s: +u:111:n: +u:0100:e: +u:0101:m: +u:1100:t: +u:01100:c: +u:01101:g: +u:01110:b: +u:10100:p: +u:10101:i: +u:10110:l: +u:11010:d: +u:11011:a: +u:011110:STOP: +u:101110:y: +u:0111110:z: +u:1011110: : +u:01111111:': +u:10111110:-: +u:011111100:k: +u:101111111:0x3a: +u:0111111010:f: +u:0111111011:,: +u:1011111100:w: +u:101111110100:v: +u:101111110101:x: +u:101111110111:o: +u:1011111101100:j: +u:10111111011010:u: +u:101111110110110:.: +u:1011111101101111:h: +u:10111111011011100:?: +u:10111111011011101:ESCAPE: +v:1:e: +v:01:i: +v:001:a: +v:0001:o: +v:00000: : +v:000011:STOP: +v:0000100:y: +v:00001011:s: +v:000010101:r: +v:0000101000:ESCAPE: +v:0000101001:.: +w:0:s: +w:100: : +w:110:STOP: +w:1011:i: +w:1110:o: +w:10100:a: +w:11110:n: +w:11111:e: +w:1010111:y: +w:10101000:m: +w:10101011:d: +w:10101101:l: +w:101010011:b: +w:101010100:k: +w:101010101:r: +w:1010100100:j: +w:1010110001:,: +w:1010110011:h: +w:10101001011:-: +w:10101100000:c: +w:10101100001:f: +w:10101100101:p: +w:101010010100:g: +w:101011001000:t: +w:1010100101010:.: +w:1010100101011:0x3a: +w:1010110010011:q: +w:10101100100101:': +w:101011001001001:?: +w:1010110010010000:ESCAPE: +w:1010110010010001:B: +x:00:p: +x:10: : +x:11:t: +x:0110:STOP: +x:01000:o: +x:01010:c: +x:01110:i: +x:01111:m: +x:010010:e: +x:010110:y: +x:0100110:u: +x:0100111:f: +x:0101111:,: +x:010111000:g: +x:010111001:a: +x:010111011:9: +x:0101110101:': +x:01011101001:x: +x:010111010000:ESCAPE: +x:010111010001:s: +y:0: : +y:11:STOP: +y:10001:o: +y:10010:s: +y:10100:a: +y:10110:l: +y:10111:0x3a: +y:100110:d: +y:1000001:n: +y:1000010:t: +y:1010100:': +y:1010101:b: +y:1010111:.: +y:10000000:i: +y:10000110:,: +y:10000111:p: +y:10011100:m: +y:10011110:c: +y:10101100:w: +y:10101101:e: +y:100000010:?: +y:100000011:f: +y:100111010:r: +y:100111011:g: +y:1001111100:z: +y:1001111110:-: +y:1001111111:T: +y:100111110100:2: +y:100111110110:!: +y:100111110111:k: +y:1001111101010:v: +y:10011111010110:y: +y:100111110101110:h: +y:1001111101011111:j: +y:10011111010111100:ESCAPE: +y:10011111010111101:): +z:00:z: +z:01:STOP: +z:101:i: +z:1000:y: +z:1001:e: +z:1100:w: +z:1101: : +z:1110:l: +z:11110:a: +z:111110:o: +z:11111100:m: +z:11111101:0x3a: +z:11111111:c: +z:111111100:,: +z:1111111011:b: +z:11111110100:u: +z:111111101011:!: +z:11111110101000:ESCAPE: +z:11111110101001:t: +z:11111110101010:h: +z:11111110101011:?: +{:0:ESCAPE: +{:1:ESCAPE: +|:0:ESCAPE: +|:1:ESCAPE: +}:0:ESCAPE: +}:1:ESCAPE: +~:0:ESCAPE: +~:1:ESCAPE: +0x7f:0:ESCAPE: +0x7f:1:ESCAPE: diff --git a/data/freesat.t2 b/data/freesat.t2 new file mode 100644 index 0000000..ea79ecc --- /dev/null +++ b/data/freesat.t2 @@ -0,0 +1,9480 @@ +START:010:A: +START:100:C: +START:111:T: +START:0001:J: +START:0011:D: +START:1010:S: +START:00000:H: +START:00100:I: +START:00101:R: +START:01101:F: +START:01110:.: +START:01111:W: +START:10111:M: +START:11000:B: +START:11001:P: +START:11011:N: +START:000010:O: +START:011001:[: +START:101101:L: +START:110101:E: +START:0000110:K: +START:1101000:Y: +START:1101001:G: +START:00001110:2: +START:01100000:p: +START:01100001:b: +START:01100010:U: +START:01100011:(: +START:10110000:1: +START:10110011:V: +START:000011110:Q: +START:101100010:3: +START:0000111110:9: +START:0000111111:8: +START:1011000110:6: +START:1011000111:5: +START:1011001000:Z: +START:1011001001:7: +START:1011001010:4: +START:101100101110:X: +START:101100101111: : +START:1011001011001:w: +START:1011001011010:': +START:1011001011011:": +START:10110010110000:t: +START:101100101100010:a: +START:1011001011000110:`: +START:10110010110001110:ESCAPE: +START:10110010110001111:m: +ESCAPE:0:ESCAPE: +ESCAPE:1:ESCAPE: +STOP:0:ESCAPE: +STOP:1:ESCAPE: +0x03:0:ESCAPE: +0x03:1:ESCAPE: +0x04:0:ESCAPE: +0x04:1:ESCAPE: +0x05:0:ESCAPE: +0x05:1:ESCAPE: +0x06:0:ESCAPE: +0x06:1:ESCAPE: +0x07:0:ESCAPE: +0x07:1:ESCAPE: +0x08:0:ESCAPE: +0x08:1:ESCAPE: +0x09:0:ESCAPE: +0x09:1:ESCAPE: +0x0a:0:ESCAPE: +0x0a:1:ESCAPE: +0x0b:0:ESCAPE: +0x0b:1:ESCAPE: +0x0c:0:ESCAPE: +0x0c:1:ESCAPE: +0x0d:0:ESCAPE: +0x0d:1:ESCAPE: +0x0e:0:ESCAPE: +0x0e:1:ESCAPE: +0x0f:0:ESCAPE: +0x0f:1:ESCAPE: +0x10:0:ESCAPE: +0x10:1:ESCAPE: +0x11:0:ESCAPE: +0x11:1:ESCAPE: +0x12:0:ESCAPE: +0x12:1:ESCAPE: +0x13:0:ESCAPE: +0x13:1:ESCAPE: +0x14:0:ESCAPE: +0x14:1:ESCAPE: +0x15:0:ESCAPE: +0x15:1:ESCAPE: +0x16:0:ESCAPE: +0x16:1:ESCAPE: +0x17:0:ESCAPE: +0x17:1:ESCAPE: +0x18:0:ESCAPE: +0x18:1:ESCAPE: +0x19:0:ESCAPE: +0x19:1:ESCAPE: +0x1a:0:ESCAPE: +0x1a:1:ESCAPE: +0x1b:0:ESCAPE: +0x1b:1:ESCAPE: +0x1c:0:ESCAPE: +0x1c:1:ESCAPE: +0x1d:0:ESCAPE: +0x1d:1:ESCAPE: +0x1e:0:ESCAPE: +0x1e:1:ESCAPE: +0x1f:0:ESCAPE: +0x1f:1:ESCAPE: + :010:a: + :100:t: + :0001:o: + :0010:s: + :00110:d: + :01100:[: + :01111:p: + :10101:b: + :11001:c: + :11010:h: + :11100:w: + :11101:i: + :11111:f: + :000000:A: + :000011:M: + :001111:e: + :011100:B: + :011101:C: + :101000:T: + :101101:S: + :101110:g: + :110000:r: + :110110:n: + :110111:l: + :111101:m: + :0000011:v: + :0000100:G: + :0000101:N: + :0011101:y: + :0110101:H: + :0110111:L: + :1010010:J: + :1010011:F: + :1011001:R: + :1011110:u: + :1100010:D: + :1100011:W: + :1111001:P: + :00000100:k: + :00000101:O: + :01101000:-: + :01101101:1: + :10110001:K: + :10111110:j: + :11110000:I: + :11110001:E: + :001110010:q: + :001110011:U: + :011010010:V: + :011011000:Y: + :011011001: : + :101100001:2: + :101111110:STOP: + :0011100000:3: + :0011100001:8: + :0011100010:6: + :0110100111:5: + :1011000000:(: + :1011111110:7: + :00111000110:0: + :01101001100:': + :01101001101:9: + :10110000010:Z: + :10111111110:4: + :10111111111:Q: + :001110001111:X: + :1011000001100:ESCAPE: + :1011000001101:.: + :1011000001110:&: + :00111000111000:\: + :00111000111010:@: + :00111000111011:`: + :10110000011110:": + :10110000011111:z: + :001110001110011:$: + :0011100011100100:+: + :00111000111001011:x: + :001110001110010101:]: + :0011100011100101000:/: + :0011100011100101001:?: +!:1: : +!:01:STOP: +!:001:.: +!:0000:0x3a: +!:00011:[: +!:0001001:": +!:0001010:/: +!:0001011:!: +!:00010000:): +!:000100010:': +!:0001000111:?: +!:00010001100:ESCAPE: +!:00010001101:]: +":11: : +":001:.: +":0000:p: +":0101:B: +":0111:T: +":1000:i: +":00010:f: +":00011:W: +":01000:S: +":01100:t: +":01101:C: +":10100:STOP: +":10111:,: +":010010:J: +":100100:m: +":101010:n: +":101011:I: +":0100110:E: +":0100111:D: +":1001010:w: +":1001011:g: +":1001100:b: +":1001101:L: +":1001110:-: +":1011000:c: +":1011001:H: +":10011110:P: +":10110100:r: +":10110111:K: +":100111111:l: +":101101010:Y: +":101101011:Q: +":101101100:G: +":101101101:A: +":1001111100:ESCAPE: +":1001111101:a: +#:0:ESCAPE: +#:1:ESCAPE: +$:0:1: +$:11:3: +$:100:4: +$:1011:2: +$:10101:7: +$:101001:5: +$:1010000:ESCAPE: +$:1010001:9: +%:1: : +%:00:ESCAPE: +%:01:,: +&:1: : +&:01:w: +&:001:B: +&:0000:E: +&:000100:2: +&:000110:A: +&:000111:R: +&:00010100:O: +&:00010101:4: +&:00010111:J: +&:000101100:ESCAPE: +&:000101101:P: +':1:s: +':001:t: +':010: : +':0000:l: +':01101:r: +':000100:n: +':000101:.: +':000110:C: +':011000:B: +':011101:A: +':0111000:d: +':0111100:v: +':00011100:S: +':00011111:p: +':01100101:D: +':01111011:i: +':01111100:c: +':01111101:m: +':01111111:,: +':000111010:f: +':000111011:g: +':011001000:F: +':011001001:h: +':011001101:H: +':011001110:N: +':011100101:R: +':011100110:STOP: +':011100111:T: +':011110101:G: +':011111101:L: +':0001111000:o: +':0001111001:K: +':0001111011:a: +':0110011001:u: +':0110011111:O: +':0111001001:I: +':0111101000:w: +':0111101001:b: +':0111111001:e: +':00011110101:?: +':01100110000:E: +':01100110001:7: +':01110010000:P: +':000111101001:W: +':011001111001:0x3a: +':011001111010:!: +':011100100011:J: +':011111100001:q: +':011111100011:M: +':0001111010001:V: +':0110011110001:9: +':0110011110111:y: +':0111001000100:8: +':0111001000101:5: +':0111111000000:6: +':0111111000101:k: +':00011110100000:2: +':00011110100001:0: +':01100111100001:Y: +':01100111101100:): +':01111110000010:j: +':01111110000011:Q: +':011001111000000:-: +':011001111000001:': +':011001111011011:z: +':011111100010000:X: +':011111100010001:U: +':011111100010010:4: +':011111100010011:3: +':0110011110110100:ESCAPE: +':0110011110110101:1: +(:01:1: +(:000:P: +(:101:t: +(:1000:2: +(:1101:5: +(:1110:N: +(:00111:T: +(:10010:p: +(:11111:c: +(:001001:a: +(:001010:S: +(:001100:R: +(:100111:e: +(:111100:J: +(:111101:A: +(:0010110:D: +(:0011011:K: +(:1001100:v: +(:1001101:s: +(:1100000:b: +(:1100010:G: +(:1100011:8: +(:1100100:M: +(:1100101:H: +(:1100110:C: +(:00100000:m: +(:00100010:o: +(:00100011:E: +(:00101110:W: +(:11000011:g: +(:11001110:L: +(:001000010:d: +(:001011111:U: +(:001101000:F: +(:001101010:f: +(:110000100:w: +(:110000101:B: +(:110011111:n: +(:0010000110:l: +(:0010000111:9: +(:0010111100:4: +(:0010111101:I: +(:0011010010:3: +(:0011010111:h: +(:1100111101:i: +(:00110100110:Z: +(:00110100111:V: +(:00110101100: : +(:11001111000:k: +(:001101011011:O: +(:110011110010:': +(:0011010110100:ESCAPE: +(:0011010110101:u: +(:1100111100110:X: +(:1100111100111:7: +):0: : +):11:.: +):101:STOP: +):1001:,: +):10000:0x3a: +):100011:;: +):1000101:!: +):10001001:(: +):1000100000:ESCAPE: +):1000100001:o: +):1000100010:?: +):1000100011:): +*:0:*: +*:100:s: +*:101: : +*:1100:m: +*:1110:t: +*:11010:g: +*:11011:k: +*:11111:d: +*:111101:y: +*:1111001:e: +*:11110000:i: +*:111100010:ESCAPE: +*:111100011:n: ++:1:n: ++:00:ESCAPE: ++:01: : +,:1: : +,:01:S: +,:001:0: +,:0001:A: +,:00000:5: +,:0000110:b: +,:0000111:3: +,:00001000:2: +,:00001001:": +,:00001011:1: +,:0000101000:Q: +,:0000101010:': +,:00001010111:4: +,:000010100100:T: +,:000010100101:B: +,:000010100110:7: +,:000010100111:6: +,:000010101100:STOP: +,:0000101011010:ESCAPE: +,:0000101011011:i: +-:00: : +-:0100:t: +-:0101:b: +-:0110:w: +-:0111:u: +-:1001:o: +-:1010:s: +-:1011:f: +-:10000:c: +-:11011:l: +-:11101:d: +-:100010:9: +-:110000:h: +-:110010:1: +-:110011:y: +-:110101:r: +-:111000:a: +-:111100:m: +-:111110:p: +-:1000110:S: +-:1101000:e: +-:1101001:i: +-:1111011:n: +-:10001110:C: +-:11000101:W: +-:11000111:g: +-:11100101:J: +-:11100110:D: +-:11110101:2: +-:11111100:7: +-:11111110:G: +-:11111111:O: +-:100011111:H: +-:110001000:A: +-:110001100:6: +-:110001101:B: +-:111001111:M: +-:111101000:E: +-:111101001:L: +-:111111010:U: +-:111111011:k: +-:1000111100:F: +-:1100010010:j: +-:1100010011:P: +-:1110010001:q: +-:1110010010:5: +-:1110010011:T: +-:1110011101:I: +-:10001111011:K: +-:11100100000:v: +-:11100100001:Z: +-:11100111001:N: +-:100011110101:R: +-:111001110001:Y: +-:1000111101001:0: +-:10001111010000:4: +-:10001111010001:z: +-:11100111000001:V: +-:11100111000010:3: +-:11100111000011:8: +-:111001110000001:Q: +-:1110011100000000:': +-:11100111000000010:ESCAPE: +-:11100111000000011:x: +.:1: : +.:01:STOP: +.:0011:.: +.:00010:i: +.:00100:0: +.:00101:c: +.:000001:u: +.:0000000:a: +.:0000001:[: +.:0001101:3: +.:00001000:4: +.:00001110:H: +.:00011000:S: +.:00011001:W: +.:00011100:o: +.:00011110:1: +.:000010100:5: +.:000010101:L: +.:000010111:p: +.:000011000:T: +.:000011001:A: +.:000011010:M: +.:000011110:C: +.:000011111:2: +.:000111011:D: +.:000111110:B: +.:0000100100:N: +.:0000100110:t: +.:0000100111:J: +.:0000101101:R: +.:0000110111:P: +.:0001110101:s: +.:0001111111:I: +.:00001011000:r: +.:00001101100:V: +.:00011101000:w: +.:00011101001:F: +.:00011111101:G: +.:000010010100:E: +.:000010010101:0x3a: +.:000010110010:h: +.:000011011010:,: +.:000111111000:': +.:0000100101101:b: +.:0000100101110:K: +.:0000100101111:Y: +.:0000101100111:O: +.:0000110110110:-: +.:0001111110010:f: +.:0001111110011:(: +.:00001011001100:": +.:00001101101110:y: +.:000010010110000:?: +.:000010010110001:m: +.:000010010110010:Q: +.:000011011011110:*: +.:000011011011111:&: +.:0000100101100110:U: +.:0000100101100111:;: +.:0000101100110100:8: +.:0000101100110101:6: +.:0000101100110111:k: +.:00001011001101100:d: +.:000010110011011010:ESCAPE: +.:000010110011011011:n: +/:01:c: +/:110:1: +/:111:e: +/:0000:5: +/:0010:8: +/:00010:T: +/:00011:f: +/:00110:B: +/:00111:2: +/:10001:3: +/:10010:7: +/:10100:6: +/:10110:a: +/:101111:4: +/:1000000:F: +/:1000010:s: +/:1000011:M: +/:1001100:H: +/:1001110:D: +/:1001111:A: +/:1010101:S: +/:10000011:m: +/:10011010:W: +/:10101000:G: +/:10101001:U: +/:10101100:d: +/:10101101:O: +/:10101110:N: +/:10111001:C: +/:10111011:P: +/:100110110:L: +/:101011110: : +/:101011111:I: +/:101110000:E: +/:101110001:R: +/:101110100:K: +/:101110101:t: +/:1000001001:J: +/:1000001011:9: +/:10000010000:v: +/:10000010001:p: +/:10000010100:h: +/:10011011101:o: +/:10011011110:Q: +/:10011011111:0: +/:100000101010:l: +/:100000101011:i: +/:100110111000:V: +/:1001101110011:y: +/:10011011100100:ESCAPE: +/:10011011100101:g: +0:0:0: +0:111: : +0:1001:a: +0:1011:p: +0:10001:s: +0:11000:.: +0:11001:8: +0:11011:,: +0:100000:4: +0:100001:t: +0:101001:5: +0:110100:6: +0:1010000:3: +0:1010001:7: +0:1010101:]: +0:1010110:-: +0:1010111:1: +0:10101000:): +0:10101001:/: +0:11010100:STOP: +0:11010101:9: +0:11010111:2: +0:110101100:%: +0:1101011010:0x3a: +0:110101101101:f: +0:110101101111:m: +0:1101011011100:y: +0:11010110110001:l: +0:11010110110010:;: +0:11010110110011:': +0:11010110111010:k: +0:11010110111011:!: +0:110101101100000:C: +0:1101011011000010:ESCAPE: +0:1101011011000011:J: +1:00:9: +1:100:1: +1:111:0: +1:0101: : +1:0111:2: +1:1011:.: +1:1100:5: +1:01000:6: +1:01001:8: +1:01101:/: +1:10100:]: +1:11010:3: +1:011001:7: +1:110110:4: +1:0110000:STOP: +1:0110001:-: +1:1010100:): +1:1010110:0x3a: +1:1010111:s: +1:1101110:,: +1:1101111:x: +1:10101010:': +1:101010110:X: +1:10101011110:t: +1:10101011111:R: +1:101010111011:;: +1:1010101110000:p: +1:1010101110001:m: +1:1010101110010:!: +1:1010101110101:&: +1:10101011100110:e: +1:101010111001110:b: +1:101010111001111:a: +1:101010111010000:D: +1:101010111010001:C: +1:101010111010010:%: +1:1010101110100110:ESCAPE: +1:1010101110100111:o: +2:11:0: +2:000: : +2:010:.: +2:100:5: +2:0011:/: +2:1011:,: +2:00100:]: +2:00101:p: +2:01101:1: +2:10101:4: +2:011000:6: +2:011001:2: +2:011100:0x3a: +2:011101:-: +2:011111:): +2:1010000:STOP: +2:1010010:8: +2:1010011:9: +2:01111000:D: +2:01111001:3: +2:01111010:t: +2:01111011:7: +2:10100010:n: +2:101000110:a: +2:1010001110:': +2:10100011111:;: +2:101000111100:s: +2:1010001111010:": +2:101000111101100:ESCAPE: +2:101000111101101:i: +2:101000111101110:W: +2:101000111101111:L: +3:00: : +3:10:0: +3:110:.: +3:1110:/: +3:01000:2: +3:01001:1: +3:01010:): +3:01100:0x3a: +3:01110:-: +3:11111:]: +3:010110:D: +3:011010:4: +3:011011:STOP: +3:011111:5: +3:111100:,: +3:0101110:7: +3:0101111:3: +3:0111101:6: +3:1111011:t: +3:01111001:B: +3:11110100:8: +3:111101010:9: +3:0111100001:;: +3:1111010110:r: +3:1111010111:s: +3:01111000000:n: +3:01111000101:b: +3:01111000110:': +3:01111000111:A: +3:011110000010:p: +3:011110000011:e: +3:0111100010000:a: +3:0111100010001:&: +3:0111100010010:%: +3:01111000100110:ESCAPE: +3:01111000100111:k: +4:01: : +4:000:4: +4:100:.: +4:110:0: +4:0010:/: +4:1010:5: +4:1011:-: +4:00110:1: +4:11101:]: +4:11110:,: +4:001110:2: +4:111001:8: +4:111110:): +4:0011110:0x3a: +4:0011111:': +4:1110000:t: +4:1110001:3: +4:1111111:STOP: +4:11111101:6: +4:1111110000:9: +4:1111110010:7: +4:11111100011:C: +4:11111100110:;: +4:111111000101:x: +4:1111110011101:m: +4:1111110011110:I: +4:11111100010000:f: +4:11111100010001:e: +4:11111100010010:b: +4:11111100010011:L: +4:11111100111000:%: +4:11111100111110:p: +4:11111100111111:c: +4:111111001110010:ESCAPE: +4:111111001110011:i: +5:00:0: +5:10: : +5:010:.: +5:0111:p: +5:1100:5: +5:01100:/: +5:11010:a: +5:11011:-: +5:11101:6: +5:011010:3: +5:111100:2: +5:111110:8: +5:111111:]: +5:0110110:0x3a: +5:1110000:): +5:1110001:s: +5:1110011:,: +5:1111010:7: +5:1111011:9: +5:01101110:4: +5:11100100:STOP: +5:11100101:t: +5:0110111110:c: +5:0110111111:1: +5:01101111001:;: +5:01101111011:m: +5:011011110000:e: +5:011011110001:': +5:011011110101:k: +5:0110111101001:l: +5:01101111010000:ESCAPE: +5:01101111010001:f: +6:00: : +6:10:.: +6:111:0: +6:0101:]: +6:01001:1: +6:01100:7: +6:01110:): +6:11000:,: +6:11001:0x3a: +6:11010:/: +6:010001:-: +6:011010:5: +6:011011:4: +6:011111:8: +6:110111:t: +6:0100000:6: +6:0111100:3: +6:0111101:2: +6:1101101:9: +6:01000010:STOP: +6:01000011:+: +6:11011000:': +6:1101100101:a: +6:1101100110:?: +6:11011001000:m: +6:11011001001:e: +6:11011001110:;: +6:1101100111100:f: +6:1101100111101:b: +6:1101100111110:M: +6:11011001111110:": +6:110110011111110:ESCAPE: +6:110110011111111:i: +7:11:.: +7:001: : +7:011:0: +7:101:-: +7:0000:8: +7:0100:7: +7:1001:]: +7:01010:/: +7:000101:6: +7:000110:2: +7:000111:1: +7:010111:t: +7:100000:9: +7:100010:): +7:100011:5: +7:0001001:3: +7:0101101:,: +7:1000010:a: +7:1000011:4: +7:00010000:STOP: +7:01011000:0x3a: +7:01011001:p: +7:0001000101:R: +7:0001000110:;: +7:00010001000:': +7:00010001111:m: +7:000100010011:f: +7:000100011100:A: +7:000100011101:?: +7:0001000100100:ESCAPE: +7:0001000100101:s: +8:01: : +8:000:4: +8:110:.: +8:0011:0: +8:1000:9: +8:1001:7: +8:1011:8: +8:1110:1: +8:00100:/: +8:10100:3: +8:11110:5: +8:101010:): +8:111110:6: +8:111111:]: +8:0010100:0x3a: +8:0010101:,: +8:1010111:t: +8:00101100:p: +8:00101101:-: +8:00101111:a: +8:10101100:c: +8:10101101:2: +8:001011101:STOP: +8:0010111001:;: +8:001011100000:l: +8:001011100001:': +8:0010111000100:f: +8:0010111000101:D: +8:0010111000110:A: +8:00101110001110:ESCAPE: +8:00101110001111:i: +9:000:5: +9:001:]: +9:111:9: +9:0101:0: +9:0110:.: +9:0111:-: +9:1000:4: +9:1001:8: +9:1011:6: +9:1100: : +9:1101:7: +9:01000:2: +9:10100:3: +9:010010:1: +9:010011:/: +9:101010:t: +9:1010111:): +9:10101100:0x3a: +9:101011010:,: +9:10101101100:p: +9:10101101101:;: +9:10101101111:STOP: +9:1010110111000:n: +9:1010110111001:m: +9:1010110111010:a: +9:10101101110111:e: +9:101011011101100:ESCAPE: +9:101011011101101:k: +0x3a:1: : +0x3a:01:0: +0x3a:001:3: +0x3a:00001:1: +0x3a:00010:T: +0x3a:00011:C: +0x3a:000001:4: +0x3a:0000000:ESCAPE: +0x3a:0000001:5: +;:0:ESCAPE: +;:1: : +<:0:ESCAPE: +<:1:ESCAPE: +=:0:ESCAPE: +=:1:ESCAPE: +>:0:ESCAPE: +>:1:ESCAPE: +?:1: : +?:01:STOP: +?:000:0x3a: +?:00100:!: +?:00110:[: +?:00111:.: +?:001010:;: +?:0010110:': +?:00101111:,: +?:001011101:/: +?:0010111000:ESCAPE: +?:0010111001:Q: +@:0:k: +@:10: : +@:111:T: +@:1101:b: +@:11000:ESCAPE: +@:11001:H: +A:01: : +A:110:D: +A:111:n: +A:0000:s: +A:0001:m: +A:0010:d: +A:1000:r: +A:1011:l: +A:00110:c: +A:10010:u: +A:10100:g: +A:001111:b: +A:100111:t: +A:101011:f: +A:1010100:w: +A:1010101:i: +A:10011001:v: +A:10011011:p: +A:001110010:h: +A:001110100:.: +A:001110111:B: +A:100110100:q: +A:0011100000:C: +A:0011100010:,: +A:0011100110:y: +A:0011101010:S: +A:0011101100:k: +A:0011101101:T: +A:1001100001:R: +A:1001100010:F: +A:1001100011:z: +A:1001101011:a: +A:00111000010:P: +A:00111000110:-: +A:00111010110:A: +A:00111010111:I: +A:10011000001:e: +A:10011010100:N: +A:10011010101:x: +A:001110000110:X: +A:001110000111:K: +A:001110001110:3: +A:001110001111:&: +A:001110011101:M: +A:001110011111:Y: +A:0011100111000:L: +A:0011100111001:W: +A:0011100111100:*: +A:1001100000000:o: +A:1001100000001:1: +A:1001100000010:': +A:1001100000011:0x3a: +A:00111001111010:j: +A:001110011110110:G: +A:0011100111101110:O: +A:00111001111011110:4: +A:001110011110111110:ESCAPE: +A:001110011110111111:E: +B:00:C: +B:010:a: +B:101:r: +B:110:e: +B:111:B: +B:0111:i: +B:1000:u: +B:1001:o: +B:01101:l: +B:01100000:T: +B:01100001:.: +B:01100011:y: +B:01100100:I: +B:01100110:h: +B:01100111: : +B:011000100:A: +B:0110001010:O: +B:01100010110:0x3a: +B:01100101000:&: +B:01100101001:3: +B:01100101010:j: +B:01100101011:M: +B:01100101110:D: +B:011000101111:W: +B:011001011000:*: +B:011001011010:,: +B:011001011011:1: +B:011001011110:ESCAPE: +B:011001011111:P: +B:0110001011100:E: +B:0110010110011:R: +B:01100010111011:w: +B:011000101110100:-: +B:011001011001001:U: +B:011001011001010:S: +B:011001011001011:F: +B:0110001011101010:X: +B:0110001011101011:V: +B:0110010110010000:Q: +B:0110010110010001:4: +C:00:h: +C:011:B: +C:100:a: +C:110:o: +C:0101:r: +C:1010:.: +C:1110: : +C:1111:l: +C:01000:': +C:10111:i: +C:010011:e: +C:101101:u: +C:0100101:y: +C:1011001:,: +C:01001001:I: +C:010010000:A: +C:1011000000:C: +C:1011000001:D: +C:1011000011:STOP: +C:1011000100:S: +C:1011000101:T: +C:1011000111:G: +C:01001000100:*: +C:01001000111:w: +C:10110001101:J: +C:010010001010:R: +C:010010001100:2: +C:010010001101:U: +C:101100001000:?: +C:101100001010:O: +C:101100001011:H: +C:101100011000:E: +C:0100100010110:z: +C:1011000010011:-: +C:1011000110011:s: +C:01001000101111:1: +C:10110000100101:!: +C:10110001100100:P: +C:010010001011101:n: +C:101100001001000:K: +C:101100001001001:7: +C:101100011001011:4: +C:0100100010111000:0x3a: +C:1011000110010100:F: +C:1011000110010101:): +C:01001000101110010:ESCAPE: +C:01001000101110011:b: +D:00:a: +D:01:,: +D:100:r: +D:101:o: +D:110:e: +D:1110:i: +D:111111:u: +D:1111001: : +D:1111011:': +D:11110000:.: +D:11110001:]: +D:11111010:y: +D:111101010:w: +D:111101011:W: +D:111110001:N: +D:111110010:C: +D:111110111:J: +D:1111010010:h: +D:1111100000:t: +D:1111100111:I: +D:1111101101:0x3a: +D:11110100001:M: +D:11110100010:&: +D:11110100011:V: +D:11111000010:-: +D:11111000011:G: +D:11111001100:O: +D:11111001101:A: +D:11111011001:S: +D:111101000000:F: +D:111101001100:*: +D:111101001101:s: +D:111101001111:d: +D:111110110000:v: +D:1111010011100:m: +D:1111010011101:j: +D:1111101100010:ESCAPE: +D:1111101100011:T: +D:11110100000110:9: +D:111101000001000:): +D:111101000001011:E: +D:111101000001110:8: +D:111101000001111:7: +D:1111010000010010:U: +D:1111010000010011:R: +D:1111010000010100:B: +D:1111010000010101:4: +E:000:p: +E:010:a: +E:011:n: +E:110:l: +E:1001:m: +E:1010:x: +E:1110:v: +E:1111:d: +E:00100:s: +E:00110:r: +E:00111:u: +E:10000:E: +E:10001: : +E:001010:.: +E:001011:i: +E:101101:0x3a: +E:1011000:y: +E:1011001:t: +E:1011100:g: +E:1011110:4: +E:101110110:w: +E:101111100:c: +E:101111110:b: +E:1011101010:R: +E:1011101011:F: +E:1011101111:C: +E:10111010001:k: +E:10111010010:f: +E:10111010011:o: +E:10111011100:U: +E:10111011101:L: +E:10111110101:e: +E:10111110110:N: +E:10111111100:h: +E:10111111101:I: +E:10111111111:D: +E:101111101000:M: +E:101111101111:': +E:101111111100:2: +E:101111111101:-: +E:1011101000011:q: +E:1011111010010:O: +E:1011111010011:A: +E:1011111011101:Z: +E:10111010000000:W: +E:10111010000001:S: +E:10111010000010:H: +E:10111010000011:9: +E:10111010000100:): +E:10111110111000:T: +E:10111110111001:,: +E:101110100001010:P: +E:1011101000010110:ESCAPE: +E:1011101000010111:z: +F:00:o: +F:10:r: +F:010:e: +F:110:i: +F:111:a: +F:0110:l: +F:01110:u: +F:0111100: : +F:0111101:O: +F:01111101:A: +F:01111111:B: +F:011111100:f: +F:0111110000:.: +F:0111110011:L: +F:01111100010:M: +F:01111100011:E: +F:01111100101:T: +F:01111110101:C: +F:01111110110:W: +F:011111001000:0x3a: +F:011111101000:U: +F:011111101001:': +F:011111101111:1: +F:0111110010010:y: +F:0111110010011:,: +F:01111110111000:-: +F:01111110111010:I: +F:011111101110011:h: +F:0111111011100100:*: +F:0111111011100101:K: +F:0111111011101100:F: +F:0111111011101101:ESCAPE: +F:01111110111011100:X: +F:01111110111011101:R: +F:01111110111011110:;: +F:01111110111011111:4: +G:00:r: +G:01:a: +G:101:o: +G:110:e: +G:1001:u: +G:1111:i: +G:10001:n: +G:11101:l: +G:100000:X: +G:1110000:y: +G:1110001: : +G:1110011:w: +G:10000101:4: +G:10000111:P: +G:11100101:h: +G:100001000:-: +G:100001100:C: +G:111001001:M: +G:1000011010:B: +G:1110010000:.: +G:1110010001:I: +G:10000100100:;: +G:10000100101:,: +G:10000100110:A: +G:10000100111:N: +G:10000110111:0x3a: +G:1000011011000:O: +G:1000011011001:L: +G:10000110110110:b: +G:100001101101000:K: +G:100001101101001:2: +G:100001101101010:1: +G:100001101101011:': +G:1000011011011100:ESCAPE: +G:1000011011011101:m: +G:1000011011011110:T: +G:1000011011011111:S: +H:00:e: +H:01:a: +H:10:o: +H:110:i: +H:1111:u: +H:11100:R: +H:1110100:P: +H:1110110:y: +H:11101011:I: +H:111011100:Q: +H:111011101:M: +H:111011110:A: +H:111011111: : +H:1110101000:S: +H:1110101001:.: +H:11101010101:G: +H:11101010110:): +H:111010101001:E: +H:1110101011100:O: +H:1110101011101:L: +H:11101010100000:1: +H:11101010100001:&: +H:11101010111100:H: +H:11101010111101:w: +H:11101010111110:v: +H:111010101000100:X: +H:111010101000101:W: +H:111010101000110:D: +H:111010101111110:s: +H:111010101111111:F: +H:1110101010001110:ESCAPE: +H:1110101010001111:r: +I:0:n: +I:110:t: +I:1001:s: +I:1111:r: +I:10000:T: +I:10101:a: +I:11100: : +I:100010:c: +I:101001:m: +I:101100:z: +I:101101:.: +I:101111:d: +I:111011:I: +I:1000111:': +I:1011101:l: +I:10100000:A: +I:10100001:v: +I:10111001:V: +I:11101001:f: +I:11101011:o: +I:100011001:C: +I:100011010:P: +I:101000100:w: +I:101000110:0x3a: +I:101110000:p: +I:111010000:R: +I:111010001:,: +I:111010101:Y: +I:1000110000:E: +I:1000110001:6: +I:1000110111:q: +I:1010001011:y: +I:1010001110:M: +I:1110101000:g: +I:1110101001:D: +I:10001101100:e: +I:10001101101:5: +I:10100010100:S: +I:10100010101:9: +I:10100011111:F: +I:10111000100:b: +I:10111000110:-: +I:10111000111:L: +I:101000111100:B: +I:101000111101:): +I:1011100010100:N: +I:1011100010101:Q: +I:1011100010110:k: +I:10111000101111:O: +I:101110001011101:?: +I:1011100010111000:ESCAPE: +I:1011100010111001:h: +J:00:e: +J:10:a: +J:11:o: +J:011:u: +J:0101:i: +J:01000: : +J:0100110:D: +J:0100111:.: +J:01001001:r: +J:010010110:s: +J:0100100000:M: +J:0100100010:J: +J:0100100011:,: +J:0100101000:B: +J:0100101001:-: +J:0100101010:V: +J:0100101110:K: +J:0100101111:T: +J:01001000010:C: +J:01001010110:n: +J:010010000110:!: +J:0100100001110:w: +J:0100100001111:R: +J:0100101011100:F: +J:0100101011110:7: +J:0100101011111:': +J:01001010111010:G: +J:010010101110110:ESCAPE: +J:010010101110111:L: +K:00:i: +K:01:a: +K:10:e: +K:1111:y: +K:11000:n: +K:11001:o: +K:11011:r: +K:11101: : +K:110100:': +K:111000:u: +K:1101011:.: +K:1110011:l: +K:11100101:h: +K:110101000:T: +K:110101011:G: +K:111001001:,: +K:1101010100:w: +K:11010100100:5: +K:11010100101:4: +K:11010100110:A: +K:11010101010:3: +K:11100100000:2: +K:11100100011:M: +K:110101001110:-: +K:110101010110:0x3a: +K:110101010111:!: +K:111001000010:): +K:111001000101:S: +K:1101010011110:V: +K:1110010000110:6: +K:1110010000111:1: +K:11010100111111:L: +K:11100100010000:I: +K:11100100010001:?: +K:110101001111100:ESCAPE: +K:110101001111101:v: +K:111001000100100:k: +K:111001000100101:Y: +K:111001000100110:N: +K:111001000100111:E: +L:00:i: +L:10:o: +L:011:]: +L:110:e: +L:111:a: +L:0100:u: +L:010100:l: +L:010101:A: +L:010111:y: +L:01011011: : +L:010110000:I: +L:010110001:R: +L:010110101:,: +L:0101100100:O: +L:0101100101:': +L:01011001101:.: +L:01011001110:C: +L:01011001111:Y: +L:01011010001:F: +L:01011010010:L: +L:010110011001:t: +L:010110100001:G: +L:010110100111:S: +L:0101100110001:h: +L:0101101000001:W: +L:0101101001100:J: +L:01011001100000:E: +L:01011010000001:": +L:01011010011011:STOP: +L:010110011000010:T: +L:010110011000011:P: +L:010110100000000:D: +L:010110100000001:7: +L:010110100110101:j: +L:0101101001101000:ESCAPE: +L:0101101001101001:U: +M:00:o: +M:11:a: +M:011:e: +M:101:i: +M:0101:c: +M:1001:u: +M:01001:y: +M:10001:r: +M:100000:S: +M:100001:P: +M:0100001: : +M:01000001:C: +M:01000110:F: +M:010000000:1: +M:010001000:h: +M:010001010:I: +M:010001110:T: +M:010001111:X: +M:0100000010:A: +M:0100010010:z: +M:01000100110:f: +M:01000101110:.: +M:010000001100:Z: +M:010000001101:K: +M:010000001110:B: +M:010001001111:s: +M:010001011000:R: +M:010001011001:W: +M:010001011010:O: +M:0100000011110:,: +M:0100000011111:': +M:0100010110111:D: +M:0100010111100:4: +M:0100010111110:E: +M:01000100111000:m: +M:01000100111001:J: +M:01000100111010:ESCAPE: +M:01000101111010:l: +M:01000101111011:-: +M:01000101111110:): +M:01000101111111:w: +M:010001001110110:t: +M:010001001110111:V: +M:010001011011000:Q: +M:010001011011001:N: +M:010001011011010:6: +M:010001011011011:2: +N:00:a: +N:10:o: +N:11:e: +N:011:i: +N:01010:u: +N:01011:E: +N:010010:A: +N:0100010:y: +N:0100110:g: +N:01000001:B: +N:01000010:I: +N:01000110:F: +N:01000111: : +N:010000000:): +N:010000001:': +N:010000111:Y: +N:010011100:L: +N:010011101:H: +N:0100001100:C: +N:0100111100:W: +N:0100111110:N: +N:0100111111:T: +N:010000110101:M: +N:010000110111:O: +N:010011110100:,: +N:010011110101:J: +N:010011110111:h: +N:0100001101000:D: +N:0100001101001:.: +N:0100111101100:X: +N:0100111101101:ESCAPE: +N:01000011011000:k: +N:01000011011001:Z: +N:01000011011010:Q: +N:01000011011011:G: +O:111:n: +O:0000:s: +O:0001:N: +O:0011:z: +O:0100:r: +O:1000:u: +O:1010:p: +O:1011:l: +O:1101:': +O:00101:U: +O:01011:h: +O:01110:f: +O:01111:w: +O:10010:.: +O:11000: : +O:001000:o: +O:001001:J: +O:010100:b: +O:010101:m: +O:011001:H: +O:011010:O: +O:011011:v: +O:100111:c: +O:110011:x: +O:1001101:d: +O:1100100:a: +O:01100001:t: +O:01100010:k: +O:10011000:g: +O:11001010:R: +O:011000000:K: +O:100110010:i: +O:110010111:V: +O:0110000011:2: +O:0110001101:S: +O:0110001110:B: +O:1001100110:W: +O:1001100111:-: +O:01100000100:,: +O:01100011000:j: +O:01100011001:L: +O:01100011111:I: +O:11001011001:A: +O:11001011011:C: +O:011000001010:0x3a: +O:011000111100:e: +O:110010110000:y: +O:110010110001:/: +O:110010110100:M: +O:0110000010110:!: +O:0110001111011:P: +O:1100101101011:F: +O:01100000101110:E: +O:01100000101111:D: +O:01100011110100:8: +O:01100011110101:4: +O:11001011010101:T: +O:110010110101000:ESCAPE: +O:110010110101001:q: +P:11:a: +P:000:i: +P:010:e: +P:011:l: +P:100:o: +P:101:r: +P:0010:h: +P:001111:u: +P:0011010:C: +P:0011100:.: +P:0011101: : +P:00110000:B: +P:00110010:D: +P:00110111:s: +P:001100011:O: +P:001100111:,: +P:0011000101:y: +P:0011001100:M: +P:0011011000:E: +P:0011011001:': +P:0011011011:3: +P:00110001001:T: +P:001100010000:L: +P:001100010001:G: +P:001100110100:*: +P:001100110110:A: +P:001100110111:S: +P:001101101000:w: +P:001101101001:F: +P:0011001101011:J: +P:0011011010100:f: +P:0011011010101:R: +P:0011011010111:t: +P:00110011010100:V: +P:00110110101100:Y: +P:00110110101101:I: +P:001100110101011:&: +P:0011001101010100:ESCAPE: +P:0011001101010101:): +Q:1:u: +Q:00:V: +Q:011: : +Q:0101:.: +Q:01000:a: +Q:0100100:w: +Q:0100110:E: +Q:0100111:C: +Q:01001011:&: +Q:010010101:': +Q:0100101000:T: +Q:01001010010:ESCAPE: +Q:01001010011:s: +R:01:a: +R:11:o: +R:100:i: +R:101:e: +R:0000:p: +R:0011:u: +R:00011:E: +R:00100:h: +R:000100: : +R:001010:y: +R:00010100:D: +R:00010110:.: +R:00101100:T: +R:00101110:S: +R:000101010:F: +R:001011010:B: +R:001011011:n: +R:001011111:A: +R:0001010110:w: +R:0001011100:N: +R:0001011101:&: +R:0001011110:V: +R:0001011111:H: +R:0010111101:': +R:00010101110:t: +R:00010101111:I: +R:001011110000:C: +R:001011110010:O: +R:00101111000100:,: +R:00101111000101:s: +R:00101111000110:U: +R:00101111000111:M: +R:00101111001100:-: +R:00101111001101:ESCAPE: +R:00101111001111:0x3a: +R:001011110011100:2: +R:001011110011101:R: +S:1:]: +S:0000:a: +S:0010:h: +S:0111:t: +S:00010:p: +S:00011:,: +S:00110:L: +S:01000:i: +S:01001:u: +S:01010:o: +S:01011:c: +S:01100:e: +S:001111:k: +S:0011100:w: +S:0110101: : +S:0110111:m: +S:00111010:q: +S:01101000:M: +S:01101001:n: +S:01101100:l: +S:001110110:P: +S:011011011:y: +S:0011101110:A: +S:01101101001:.: +S:001110111101:r: +S:001110111110:S: +S:001110111111:W: +S:011011010000:C: +S:011011010101:E: +S:011011010110:v: +S:0110110100011:ESCAPE: +S:0110110101000:I: +S:0110110101111:g: +S:00111011110000:*: +S:00111011110010:4: +S:00111011110011:1: +S:01101101000100:O: +S:01101101010010:STOP: +S:01101101011100:z: +S:011011010001011:B: +S:011011010111010:H: +S:011011010111011:T: +S:0011101111000100:G: +S:0011101111000110:}: +S:0011101111000111:D: +S:0110110100010100:-: +S:0110110101001100:3: +S:0110110101001101:2: +S:00111011110001010:': +S:00111011110001011:?: +S:01101101010011101:s: +S:01101101010011110:j: +S:01101101010011111:b: +S:011011010001010100:R: +S:011011010001010101:K: +S:011011010001010110:J: +S:011011010001010111:F: +S:011011010100111000:0x3a: +S:011011010100111001:): +T:0:h: +T:100:o: +T:1010:V: +T:1011:w: +T:1100:r: +T:1111:e: +T:11010:a: +T:11011:i: +T:11100:u: +T:1110100:H: +T:1110110:W: +T:11101010: : +T:11101011:y: +T:111011101:M: +T:111011111:x: +T:1110111000:S: +T:11101110010:A: +T:11101111001:s: +T:11101111011:J: +T:111011100111:X: +T:111011110000:.: +T:1110111001101:-: +T:1110111100011:L: +T:1110111101000:C: +T:1110111101011:c: +T:11101110011000:T: +T:11101110011001:U: +T:11101111000101:4: +T:11101111010010:O: +T:111011110001001:G: +T:111011110100110:E: +T:111011110100111:,: +T:111011110101010:': +T:1110111100010001:;: +T:1110111101010000:P: +T:1110111101010001:1: +T:1110111101010010:ESCAPE: +T:1110111101010111:D: +T:11101111000100000:0x3a: +T:11101111000100001:*: +T:11101111010100110:R: +T:11101111010100111:N: +T:11101111010101100:I: +T:11101111010101101:B: +U:00:K: +U:10:n: +U:011:S: +U:110:p: +U:1111:l: +U:01010:s: +U:01011:r: +U:11101:R: +U:010000:g: +U:111000: : +U:0100111:.: +U:1110010:m: +U:01000100:k: +U:01000101:t: +U:01000110:E: +U:01000111:-: +U:01001000:F: +U:01001100:2: +U:11100110:c: +U:11100111:N: +U:010010010:f: +U:010010011:8: +U:010010100:,: +U:010010111:Z: +U:0100101010:h: +U:0100110100:i: +U:0100110101:w: +U:0100110110:a: +U:01001010110:b: +U:01001010111:D: +U:01001101110:!: +U:010010110000:e: +U:010010110001:V: +U:010010110010:P: +U:010010110011:I: +U:010010110100:B: +U:010010110101:A: +U:010011011111:d: +U:0100101101100:H: +U:0100101101101:C: +U:0100101101110:0x3a: +U:0100101101111:): +U:0100110111101:z: +U:01001101111000:ESCAPE: +U:01001101111001:T: +V:01: : +V:11:i: +V:000:.: +V:001:a: +V:101:e: +V:10001:C: +V:10011:o: +V:1000001:F: +V:1000011:I: +V:10000001:1: +V:10000101:4: +V:10010000:r: +V:10010010:E: +V:10010011:s: +V:10010101:': +V:10010110:0x3a: +V:10010111:l: +V:100000001:/: +V:100001001:-: +V:100100010:D: +V:100100011:u: +V:100101001:,: +V:1000000000:6: +V:1000000001:2: +V:1000010000:5: +V:1001010000:;: +V:10010100010:ESCAPE: +V:100001000100:7: +V:100101000110:3: +V:1000010001010:9: +V:1000010001011:y: +V:1000010001100:P: +V:1000010001101:H: +V:1000010001110:A: +V:1000010001111:8: +V:1001010001111:W: +V:10010100011100:f: +V:10010100011101:B: +W:00:h: +W:10:i: +W:011:a: +W:110:o: +W:111:e: +W:0100:r: +W:01011:O: +W:0101001: : +W:0101010:y: +W:010100000:B: +W:010100001:.: +W:010101100:I: +W:010101110:W: +W:010101111:A: +W:0101000100:': +W:0101000101:M: +W:0101000111:T: +W:01010001100:2: +W:01010001101:0x3a: +W:01010110100:H: +W:01010110110:V: +W:010101101010:l: +W:010101101110:s: +W:010101101111:,: +W:0101011010111:u: +W:010101101011000:5: +W:010101101011001:): +W:010101101011011:E: +W:0101011010110100:ESCAPE: +W:0101011010110101:m: +X:1: : +X:000:a: +X:0010:z: +X:0011:m: +X:0111:t: +X:01001:U: +X:01010:-: +X:01011:e: +X:011000:u: +X:011001:I: +X:011011:,: +X:0100010:V: +X:0110100:5: +X:0110101:.: +X:01000000:S: +X:01000010:0x3a: +X:01000110:c: +X:01000111:i: +X:010000010:9: +X:010000011:': +X:010000111:X: +X:0100001100:): +X:01000011010:ESCAPE: +X:01000011011:y: +Y:1:o: +Y:00:e: +Y:010:u: +Y:01100:a: +Y:01110:v: +Y:01111: : +Y:0110100:n: +Y:01101010:r: +Y:01101101:O: +Y:01101111:i: +Y:011010111:N: +Y:011011000:L: +Y:011011001:s: +Y:011011101:m: +Y:0110101100:.: +Y:0110101101:M: +Y:0110111001:P: +Y:011011100001:R: +Y:011011100010:2: +Y:0110111000000:-: +Y:0110111000110:C: +Y:0110111000111:,: +Y:01101110000010:ESCAPE: +Y:01101110000011:d: +Z:01:a: +Z:10:e: +Z:11:o: +Z:0010:z: +Z:0011:i: +Z:00001:Z: +Z:00010: : +Z:00011:u: +Z:0000010:O: +Z:0000011:.: +Z:00000000:y: +Z:00000001:4: +Z:00000010:,: +Z:0000001100:f: +Z:0000001101:-: +Z:0000001110:STOP: +Z:00000011110:ESCAPE: +Z:00000011111:l: +[:1:S: +[:01:A: +[:0000:2: +[:0010:R: +[:0011:1: +[:000101:n: +[:000110:m: +[:0001111:l: +[:00010011:r: +[:00011101:b: +[:000100001:C: +[:000100010:f: +[:000100101:M: +[:000111001:c: +[:0001000001:STOP: +[:0001000111:K: +[:0001001000:H: +[:0001110001:T: +[:00010000000:J: +[:00010000001:B: +[:00010001101:Z: +[:00010010011:P: +[:00011100000:L: +[:000100011000:F: +[:000100100101:I: +[:000111000011:N: +[:0001000110010:s: +[:0001000110011:V: +[:0001001001000:U: +[:0001001001001:G: +[:0001110000101:D: +[:00011100001000:O: +[:000111000010010:ESCAPE: +[:000111000010011:W: +\:0:ESCAPE: +\:1:x: +]:1:STOP: +]:01: : +]:001:.: +]:0001:[: +]:00001:0x3a: +]:000001:,: +]:0000001:;: +]:00000000:ESCAPE: +]:00000001:]: +^:0:ESCAPE: +^:1:ESCAPE: +_:0:ESCAPE: +_:1:ESCAPE: +`:001:w: +`:011:H: +`:110:P: +`:111:F: +`:0101:n: +`:1011:D: +`:00001:s: +`:00010:A: +`:01001:t: +`:10000:g: +`:10011:c: +`:000000:W: +`:000001:r: +`:000110:e: +`:000111:C: +`:100011:l: +`:100100:h: +`:100101:G: +`:101001:B: +`:101010:T: +`:101011:S: +`:0100000:o: +`:0100001:d: +`:0100010:b: +`:0100011:R: +`:1000100:O: +`:1000101:L: +`:1010001:f: +`:10100000:J: +`:101000010:ESCAPE: +`:101000011:M: +a:01:n: +a:001:r: +a:101:t: +a:0000:m: +a:1001:s: +a:1110: : +a:1111:l: +a:00011:d: +a:10000:i: +a:11000:y: +a:11010:c: +a:000100:p: +a:100010:u: +a:100011:v: +a:110011:g: +a:110110:b: +a:110111:k: +a:0001010:w: +a:00010111:z: +a:11001000:.: +a:11001011:f: +a:000101100:,: +a:000101101:': +a:110010011:e: +a:110010101:h: +a:1100101001:x: +a:11001001000:a: +a:11001001001:-: +a:11001001011:j: +a:11001010000:0x3a: +a:11001010001:o: +a:110010010100:q: +a:11001001010100:!: +a:11001001010111:?: +a:1100100101010100:ESCAPE: +a:1100100101010110:;: +a:1100100101010111:): +a:1100100101011001:/: +a:1100100101011011:@: +a:11001001010101010:J: +a:11001001010101011:]: +a:11001001010110100:N: +a:11001001010110101:L: +a:110010010101100000:R: +a:110010010101100001:S: +a:110010010101100010:V: +a:11001001010110001100:[: +a:11001001010110001110:P: +a:11001001010110001111:STOP: +a:110010010101100011010:W: +a:110010010101100011011:1: +b:00:e: +b:010:u: +b:011:a: +b:100:y: +b:101:o: +b:1100:l: +b:1110:r: +b:1111:i: +b:110100:s: +b:110110: : +b:110111:b: +b:11010101:c: +b:110101000:j: +b:110101100:,: +b:110101101:.: +b:1101010011:': +b:1101011111:t: +b:11010100101:0x3a: +b:11010111000:w: +b:11010111001:d: +b:11010111010:h: +b:11010111011:&: +b:11010111101:-: +b:110101111000:m: +b:110101111001:n: +b:1101010010000:?: +b:1101010010010:v: +b:11010100100010:f: +b:11010100100111:p: +b:110101001000111:;: +b:110101001001101:D: +b:1101010010001100:/: +b:1101010010011001:@: +b:11010100100011010:X: +b:11010100100011011:": +b:11010100100110001:k: +b:110101001001100000:STOP: +b:1101010010011000010:ESCAPE: +b:1101010010011000011:!: +c:00:o: +c:011:a: +c:100:e: +c:110:h: +c:0100:i: +c:0101:l: +c:1011:k: +c:1111:t: +c:10100:u: +c:10101:r: +c:11100: : +c:1110100:y: +c:1110101:c: +c:11101101:s: +c:11101110:.: +c:111011111:,: +c:1110110001:G: +c:11101100001:n: +c:11101100110:D: +c:11101111000:K: +c:11101111011:C: +c:111011000000:0x3a: +c:111011001001:-: +c:111011001010:A: +c:111011001110:L: +c:111011001111:': +c:111011110010:d: +c:111011110100:q: +c:111011110101:I: +c:1110110010000:N: +c:1110110010001:z: +c:1110111100111:F: +c:11101100000101:w: +c:11101100000111:E: +c:11101100101100:?: +c:11101111001100:M: +c:11101111001101:S: +c:111011000001000:b: +c:111011000001001:ESCAPE: +c:111011000001100:!: +c:111011001011010:Q: +c:111011001011011:P: +c:111011001011100:;: +c:111011001011110:B: +c:1110110000011011:V: +c:1110110010111011:m: +c:1110110010111110:/: +c:11101100000110101:): +c:11101100101110100:U: +c:11101100101111110:W: +c:111011000001101000:p: +c:111011000001101001:H: +c:111011001011101010:STOP: +c:111011001011111110:R: +c:111011001011111111:T: +c:1110110010111010110:]: +c:1110110010111010111:[: +d:0: : +d:101:e: +d:1100:a: +d:1110:i: +d:10001:.: +d:10011:o: +d:11011:r: +d:11111:s: +d:100001:d: +d:100101:l: +d:110100:u: +d:111101:y: +d:1001001:-: +d:1101011:v: +d:1111000:g: +d:1111001:,: +d:10000000:h: +d:10000001:0x3a: +d:10000010:m: +d:10010000:w: +d:10010001:n: +d:11010101:': +d:100000111:f: +d:1101010001:?: +d:1101010010:b: +d:1101010011:c: +d:10000011000:!: +d:11010100000:p: +d:11010100001:t: +d:100000110010:STOP: +d:100000110011:): +d:100000110100:k: +d:100000110101:;: +d:100000110111:/: +d:10000011011010:": +d:10000011011011:j: +d:100000110110000:z: +d:100000110110011:q: +d:1000001101100011:@: +d:1000001101100100:ESCAPE: +d:10000011011000101:C: +d:10000011011001010:]: +d:100000110110001000:Z: +d:100000110110001001:[: +d:100000110110010110:T: +d:100000110110010111:`: +e:10: : +e:010:s: +e:110:r: +e:0000:d: +e:0011:a: +e:1111:n: +e:00010:c: +e:01100:e: +e:01101:w: +e:01111:t: +e:11100:l: +e:000110:x: +e:001000:v: +e:001001:i: +e:001010:y: +e:011100:m: +e:111010:.: +e:0001110:f: +e:0010111:b: +e:0111010:,: +e:1110110:p: +e:00011110:-: +e:00011111:h: +e:00101100:k: +e:01110110:': +e:11101110:g: +e:11101111:o: +e:001011011:0x3a: +e:0010110100:): +e:0010110101:q: +e:0111011101:?: +e:0111011110:u: +e:01110111000:z: +e:01110111110:!: +e:011101111110:STOP: +e:011101111111:j: +e:0111011100110:/: +e:01110111001001:4: +e:01110111001010:B: +e:01110111001110:]: +e:01110111001111:;: +e:011101110010000:": +e:0111011100100011:D: +e:0111011100101100:ESCAPE: +e:0111011100101110:@: +e:01110111001000100:T: +e:01110111001000101:C: +e:01110111001011011:[: +e:01110111001011111:L: +e:011101110010110100:V: +e:011101110010110101:G: +e:011101110010111100:1: +e:01110111001011110101:E: +e:011101110010111101000:2: +e:011101110010111101001:N: +e:011101110010111101100:F: +e:011101110010111101101:A: +e:0111011100101111011100:\: +e:0111011100101111011101:P: +e:0111011100101111011110:M: +e:0111011100101111011111:H: +f:00:o: +f:10: : +f:010:i: +f:110:r: +f:0111:a: +f:1110:e: +f:01100:t: +f:11110:u: +f:11111:f: +f:011011:l: +f:01101000:s: +f:01101001:y: +f:011010110:.: +f:0110101000:?: +f:0110101011:,: +f:0110101111:-: +f:01101010011:0x3a: +f:01101010100:': +f:01101010101:g: +f:011010100100:m: +f:011010111000:ESCAPE: +f:011010111010:b: +f:011010111011:n: +f:0110101001011:c: +f:0110101110010:!: +f:01101011100110:): +f:01101011100111:w: +f:011010100101001:p: +f:011010100101010:/: +f:0110101001010000:h: +f:0110101001010110:;: +f:01101010010100010:STOP: +f:01101010010100011:d: +f:01101010010101110:k: +f:01101010010101111:v: +g:11: : +g:000:a: +g:010:h: +g:101:e: +g:0011:u: +g:0110:r: +g:1000:i: +g:01110:l: +g:10010:s: +g:10011:o: +g:001001:,: +g:001010:n: +g:011110:g: +g:011111:.: +g:0010110:y: +g:00100001:': +g:00100010:-: +g:00100011:0x3a: +g:001000000:d: +g:001011101:b: +g:001011110:t: +g:001011111:w: +g:0010000010:?: +g:0010000011:m: +g:00101110001:!: +g:00101110011:f: +g:001011100001:;: +g:001011100101:STOP: +g:0010111000000:k: +g:0010111001000:p: +g:00101110000010:): +g:00101110000011:": +g:001011100100101:c: +g:001011100100111:/: +g:0010111001001000:ESCAPE: +g:0010111001001100:]: +g:0010111001001101:z: +g:00101110010010010:`: +g:001011100100100110:v: +g:001011100100100111:@: +h:0:e: +h:100:o: +h:101:i: +h:110: : +h:1111:a: +h:111001:r: +h:111011:t: +h:11100001:y: +h:11100011:l: +h:11101000:.: +h:11101001:n: +h:11101011:u: +h:111000000:d: +h:111000100:s: +h:111010100:,: +h:1110000011:w: +h:1110001010:': +h:1110001011:-: +h:11101010101:m: +h:11101010110:0x3a: +h:11101010111:b: +h:111000001001:c: +h:111000001011:?: +h:111010101000:!: +h:1110000010000:): +h:1110000010100:h: +h:1110000010101:k: +h:1110101010011:f: +h:11101010100101:g: +h:111000001000100:p: +h:111000001000101:;: +h:111000001000110:/: +h:111000001000111:STOP: +h:111010101001001:v: +h:1110101010010000:q: +h:11101010100100010:ESCAPE: +h:111010101001000110:": +h:11101010100100011100:z: +h:11101010100100011101:j: +h:11101010100100011110:]: +h:11101010100100011111:*: +i:10:n: +i:000:t: +i:010:s: +i:0011:l: +i:1100:o: +i:1101:c: +i:1111:e: +i:00100:a: +i:01100:m: +i:01101:d: +i:01110:v: +i:11100:g: +i:11101:r: +i:001010:p: +i:011110:f: +i:0010110:z: +i:0111110: : +i:00101111:b: +i:01111110:k: +i:001011100:-: +i:001011101:x: +i:0111111100:u: +i:0111111110:q: +i:01111111010:.: +i:01111111110:,: +i:011111110111:w: +i:011111111111:': +i:0111111101101:i: +i:0111111111101:j: +i:01111111011001:0x3a: +i:01111111111000:h: +i:011111110110000:/: +i:011111111110011:y: +i:0111111101100011:?: +i:0111111111100100:P: +i:01111111011000101:R: +i:01111111111001011:!: +i:011111111110010100:): +i:011111111110010101:S: +i:0111111101100010000:STOP: +i:0111111101100010001:C: +i:0111111101100010010:ESCAPE: +i:01111111011000100110:D: +i:01111111011000100111:;: +j:0:o: +j:11:u: +j:101:a: +j:1001:e: +j:10000:i: +j:100011:y: +j:1000101: : +j:10001001:.: +j:100010000:': +j:1000100011:t: +j:10001000100:n: +j:100010001011:s: +j:1000100010100:ESCAPE: +j:1000100010101:h: +k:10: : +k:11:e: +k:000:s: +k:011:i: +k:0010:.: +k:01001:y: +k:001100:': +k:001101:a: +k:001110:p: +k:001111:,: +k:010100:l: +k:010101:f: +k:010110:n: +k:0100000:/: +k:0100010:-: +k:0100011:o: +k:01011101:0x3a: +k:010000111:b: +k:010111000:w: +k:010111001:m: +k:010111100:h: +k:010111110:u: +k:010111111:k: +k:0100001000:r: +k:0100001001:ESCAPE: +k:0100001010:?: +k:0100001100:t: +k:0100001101:g: +k:0101111011:d: +k:01000010110:j: +k:010000101110:): +k:010111101000:;: +k:010111101001:c: +k:010111101010:S: +k:0100001011110:v: +k:0100001011111:R: +k:0101111010110:!: +k:01011110101110:@: +k:010111101011110:": +k:010111101011111:STOP: +l:010:a: +l:011:i: +l:100:l: +l:110:e: +l:111: : +l:0000:u: +l:0001:d: +l:0010:y: +l:1011:o: +l:10100:s: +l:001100:.: +l:001110:t: +l:0011010:v: +l:0011110:f: +l:1010100:m: +l:1010101:k: +l:1010110:p: +l:00110111:c: +l:00111110:-: +l:10101111:,: +l:001101101:0x3a: +l:001111111:b: +l:101011100:': +l:0011011000:r: +l:0011011001:h: +l:0011111100:n: +l:0011111101:g: +l:1010111011:w: +l:10101110100:?: +l:1010111010100:!: +l:1010111010110:z: +l:10101110101011:/: +l:101011101010100:;: +l:101011101011100:E: +l:101011101011101:*: +l:101011101011111:STOP: +l:1010111010101011:ESCAPE: +l:1010111010111100:): +l:10101110101010100:@: +l:10101110101010101:j: +l:10101110101111010:": +l:101011101011110110:[: +l:101011101011110111:]: +m:00:a: +m:01:e: +m:111: : +m:1001:p: +m:1011:o: +m:1100:i: +m:10000:.: +m:10001:s: +m:11010:u: +m:11011:m: +m:101001:y: +m:101011:b: +m:1010000:,: +m:1010100:/: +m:10100010:]: +m:101000110:0x3a: +m:101010100:': +m:1010001111:r: +m:1010101011:f: +m:1010101100:l: +m:1010101110:n: +m:10100011100:?: +m:10100011101:!: +m:10101010100:STOP: +m:10101010101:w: +m:10101011011:h: +m:10101011110:-: +m:101010111110:4: +m:1010101101010:t: +m:1010101101011:@: +m:1010101111110:;: +m:1010101111111:c: +m:10101011010000:): +m:10101011010001:ESCAPE: +m:10101011010011:d: +m:101010110100101:g: +m:10101011010010000:[: +m:10101011010010001:v: +m:10101011010010010:k: +m:10101011010010011:z: +n:01: : +n:001:t: +n:100:g: +n:111:d: +n:0000:s: +n:1010:a: +n:1101:e: +n:10110:c: +n:11000:i: +n:000111:.: +n:101111:n: +n:110011:o: +n:0001001:u: +n:0001011:v: +n:0001100:f: +n:1011100:k: +n:1011101:': +n:1100100:y: +n:1100101:,: +n:00010000:m: +n:00010100:l: +n:00010101:-: +n:000100011:w: +n:000110101:0x3a: +n:0001000101:z: +n:0001101000:h: +n:0001101100:b: +n:0001101101:j: +n:0001101110:r: +n:00010001000:p: +n:00011010011:x: +n:00011011111:?: +n:000100010011:;: +n:000110100101:): +n:000110111100:!: +n:000110111101:q: +n:0001000100100:/: +n:0001000100101:STOP: +n:0001101001000:ESCAPE: +n:00011010010010:B: +n:0001101001001100:]: +n:0001101001001101:": +n:0001101001001110:@: +n:0001101001001111:*: +o:001:u: +o:011: : +o:100:r: +o:111:n: +o:0000:l: +o:1100:m: +o:1101:f: +o:00010:v: +o:01000:s: +o:01001:p: +o:10100:t: +o:10101:o: +o:10111:w: +o:000110:k: +o:000111:i: +o:010100:g: +o:010111:c: +o:101101:d: +o:0101011:e: +o:0101100:y: +o:0101101:a: +o:1011001:b: +o:01010101:h: +o:10110000:.: +o:010101000:-: +o:010101001:,: +o:1011000101:': +o:1011000111:x: +o:10110001001:0x3a: +o:10110001101:z: +o:101100010001:?: +o:101100011001:j: +o:1011000100000:!: +o:1011000110001:q: +o:10110001000010:J: +o:10110001100000:/: +o:10110001100001:): +o:1011000100001101:;: +o:1011000100001110:G: +o:10110001000011000:": +o:10110001000011110:ESCAPE: +o:101100010000110010:]: +o:101100010000110011:@: +o:1011000100001111100:4: +o:1011000100001111101:STOP: +o:1011000100001111110:B: +o:10110001000011111110:O: +o:10110001000011111111:C: +p:001:l: +p:010: : +p:011:o: +p:101:r: +p:111:e: +p:0000:p: +p:1100:a: +p:1101:i: +p:00011:t: +p:10000:u: +p:10001:h: +p:10010:s: +p:000101:m: +p:0001001:d: +p:1001101:y: +p:1001110:.: +p:1001111:,: +p:00010000:-: +p:000100011:?: +p:100110001:0x3a: +p:1001100100:': +p:1001100101:]: +p:1001100110:+: +p:1001100111:b: +p:00010001001:f: +p:00010001010:k: +p:00010001011:!: +p:10011000001:c: +p:10011000010:n: +p:10011000011:w: +p:000100010000:STOP: +p:000100010001:;: +p:100110000001:/: +p:1001100000001:g: +p:10011000000001:): +p:100110000000001:": +p:1001100000000001:S: +p:10011000000000000:ESCAPE: +p:10011000000000001:B: +q:1:u: +q:000:,: +q:001:.: +q:011: : +q:01001:b: +q:01010:': +q:01011:i: +q:010001:a: +q:01000000:?: +q:01000001:0x3a: +q:01000011:): +q:010000100:ESCAPE: +q:010000101:w: +r:000:a: +r:001:o: +r:100:i: +r:110: : +r:111:e: +r:0100:s: +r:0101:t: +r:01110:d: +r:10100:n: +r:10101:y: +r:011010:u: +r:011011:m: +r:011111:k: +r:101101:l: +r:101110:.: +r:101111:r: +r:0110000:f: +r:0110010:,: +r:0110011:v: +r:1011000:c: +r:1011001:g: +r:01100011:': +r:01111000:-: +r:01111001:b: +r:01111011:p: +r:011000101:0x3a: +r:011110100:w: +r:0111101010:?: +r:0111101011:h: +r:01100010010:!: +r:011000100001:q: +r:011000100010:j: +r:011000100011:STOP: +r:011000100110:/: +r:0110001000001:;: +r:0110001001111:): +r:01100010011100:8: +r:01100010011101:z: +r:011000100000001:": +r:011000100000011:]: +r:0110001000000000:T: +r:0110001000000100:x: +r:0110001000000101:ESCAPE: +r:01100010000000011:Z: +r:011000100000000100:*: +r:0110001000000001010:D: +r:0110001000000001011:B: +s:0: : +s:101:t: +s:1000:.: +s:1110:e: +s:10011:,: +s:11000:o: +s:11001:s: +s:11110:h: +s:11111:i: +s:100101:c: +s:110100:u: +s:110110:p: +s:1101111:a: +s:10010001:n: +s:10010011:m: +s:11010100:y: +s:11010110:0x3a: +s:11011100:l: +s:11011101:k: +s:100100001:b: +s:100100100:f: +s:110101010:w: +s:110101111:': +s:1001000000:!: +s:1001000001:g: +s:1001001010:r: +s:1101010110:?: +s:1101010111:-: +s:1101011101:q: +s:11010111001:d: +s:100100101100:/: +s:100100101101:): +s:100100101111:STOP: +s:110101110000:]: +s:110101110001:;: +s:1001001011101:v: +s:100100101110001:": +s:100100101110011:z: +s:1001001011100000:j: +s:1001001011100001:ESCAPE: +s:1001001011100100:[: +s:10010010111001011:@: +s:100100101110010101:T: +s:1001001011100101000:x: +s:1001001011100101001:`: +t:10:h: +t:000:i: +t:010:o: +t:011:e: +t:111: : +t:0010:a: +t:00110:u: +t:11001:r: +t:11011:s: +t:001111:.: +t:110001:t: +t:110100:y: +t:0011101:c: +t:1100001:l: +t:00111001:-: +t:11000000:v: +t:11000001:m: +t:11010101:w: +t:11010110:,: +t:11010111:': +t:001110000:n: +t:0011100011:?: +t:1101010001:b: +t:1101010010:0x3a: +t:00111000100:!: +t:11010100000:z: +t:11010100110:d: +t:11010100111:f: +t:110101000010:x: +t:0011100010100:g: +t:0011100010101:;: +t:1101010000110:p: +t:00111000101100:P: +t:00111000101101:STOP: +t:00111000101111:): +t:11010100001110:/: +t:11010100001111:k: +t:0011100010111000:@: +t:0011100010111010:E: +t:00111000101110011:]: +t:00111000101110111:": +t:001110001011100100:F: +t:001110001011101100:ESCAPE: +t:0011100010111001010:j: +t:0011100010111011010:1: +t:0011100010111011011:[: +t:00111000101110010110:\: +t:001110001011100101110:K: +t:001110001011100101111:C: +u:011:t: +u:101:n: +u:110:s: +u:111:r: +u:0001:d: +u:0010:e: +u:0101:l: +u:1000:p: +u:00000:b: +u:00001: : +u:00110:i: +u:01000:a: +u:01001:g: +u:10010:c: +u:10011:m: +u:0011100:y: +u:00111010:z: +u:00111100:': +u:00111110:f: +u:00111111:k: +u:001111010:,: +u:0011101101:-: +u:0011101110:o: +u:0011110110:.: +u:0011110111:x: +u:00111011000:w: +u:00111011110:0x3a: +u:001110110010:q: +u:001110111110:h: +u:001110111111:v: +u:0011101100110:j: +u:001110110011100:u: +u:001110110011101:?: +u:0011101100111110:/: +u:0011101100111111:!: +u:00111011001111001:ESCAPE: +u:001110110011110000:\: +u:001110110011110001:STOP: +u:001110110011110100:;: +u:001110110011110110:J: +u:001110110011110111:): +u:0011101100111101010:T: +u:0011101100111101011:]: +v:1:e: +v:01:i: +v:000:a: +v:0011:o: +v:00101:.: +v:001001: : +v:00100001:': +v:00100011:y: +v:001000000:u: +v:001000100:s: +v:0010001010:r: +v:00100000100:-: +v:00100000110:,: +v:00100010110:n: +v:001000001010:g: +v:001000001011:v: +v:001000001111:l: +v:001000101110:@: +v:001000101111:0x3a: +v:0010000011101:k: +v:00100000111000:b: +v:001000001110010:t: +v:0010000011100110:d: +v:00100000111001110:/: +v:001000001110011110:ESCAPE: +v:001000001110011111:1: +w:00:i: +w:011:e: +w:100: : +w:101:s: +w:110:h: +w:0101:a: +w:1111:o: +w:01000:.: +w:01001:w: +w:11100:n: +w:1110110:r: +w:11101010:,: +w:11101011:l: +w:11101111:y: +w:111010010:c: +w:111011101:b: +w:1110100010:0x3a: +w:1110100110:m: +w:1110100111:': +w:1110111000:d: +w:11101000000:f: +w:11101000001:]: +w:11101000010:!: +w:11101000111:k: +w:11101110010:-: +w:111010000111:g: +w:111010001100:?: +w:111010001101:t: +w:111011100111:p: +w:1110100001100:STOP: +w:1110100001101:u: +w:1110111001101:): +w:11101110011001:j: +w:111011100110001:q: +w:1110111001100000:/: +w:11101110011000010:;: +w:111011100110000111:[: +w:1110111001100001100:ESCAPE: +w:1110111001100001101:B: +x:01:p: +x:11:t: +x:101: : +x:0000:i: +x:0010:a: +x:1000:c: +x:00010:u: +x:00111:e: +x:10011:-: +x:000110:f: +x:001101:o: +x:100100:.: +x:0001110:,: +x:0001111:m: +x:0011001:y: +x:00110001:9: +x:10010101:': +x:10010110:q: +x:001100000:s: +x:100101000:0x3a: +x:100101110:h: +x:0011000011:?: +x:1001010010:l: +x:1001011110:w: +x:00110000100:A: +x:10010100110:x: +x:10010100111:b: +x:10010111111:): +x:001100001011:/: +x:0011000010100:4: +x:0011000010101:!: +x:1001011111000:g: +x:1001011111001:STOP: +x:1001011111011:;: +x:100101111101001:v: +x:100101111101010:F: +x:100101111101011:E: +x:1001011111010000:ESCAPE: +x:1001011111010001:C: +y:1: : +y:000:o: +y:0011:s: +y:0101:.: +y:01001:,: +y:01100:e: +y:01110:': +y:001001:a: +y:001010:i: +y:001011:d: +y:010001:n: +y:011011:0x3a: +y:011111:l: +y:0010000:w: +y:0110100:t: +y:0110101:m: +y:0111101:-: +y:00100011:b: +y:01000000:?: +y:01000001:r: +y:01000010:p: +y:01000011:f: +y:01111001:c: +y:0010001001:;: +y:0010001010:J: +y:0111100000:h: +y:0111100001:!: +y:0111100011:g: +y:00100010000:): +y:00100010111:/: +y:01111000101:]: +y:001000100011:k: +y:001000101100:ESCAPE: +y:001000101101:u: +y:011110001001:STOP: +y:0010001000100:z: +y:0111100010001:": +y:00100010001011:j: +y:01111000100001:2: +y:001000100010100:y: +y:001000100010101:x: +y:0111100010000000:v: +y:0111100010000001:T: +y:0111100010000010:E: +y:0111100010000011:P: +z:10:e: +z:001:a: +z:011:z: +z:110: : +z:111:i: +z:0001:l: +z:0100:y: +z:01010:o: +z:000000:c: +z:000010:,: +z:000011:.: +z:010110:w: +z:0000010:': +z:00000110:0x3a: +z:00000111:t: +z:01011101:m: +z:010111000:k: +z:010111100:-: +z:010111101:u: +z:010111111:b: +z:01011100100:s: +z:01011100101:/: +z:01011100111:d: +z:01011111001:p: +z:01011111011:?: +z:010111001100:h: +z:010111110000:@: +z:010111110100:): +z:0101110011010:!: +z:0101111100011:v: +z:0101111101010:g: +z:01011100110110:f: +z:01011100110111:r: +z:01011111000100:q: +z:01011111000101:n: +z:01011111010110:ESCAPE: +z:01011111010111:]: +{:0:ESCAPE: +{:1:ESCAPE: +|:0:ESCAPE: +|:1:ESCAPE: +}:0:ESCAPE: +}:1:STOP: +~:0:ESCAPE: +~:1:ESCAPE: +0x7f:0:ESCAPE: +0x7f:1:ESCAPE: +START:010:A: +START:100:C: +START:111:T: +START:0001:J: +START:0011:D: +START:1010:S: +START:00000:H: +START:00100:I: +START:00101:R: +START:01101:F: +START:01110:.: +START:01111:W: +START:10111:M: +START:11000:B: +START:11001:P: +START:11011:N: +START:000010:O: +START:011001:[: +START:101101:L: +START:110101:E: +START:0000110:K: +START:1101000:Y: +START:1101001:G: +START:00001110:2: +START:01100000:p: +START:01100001:b: +START:01100010:U: +START:01100011:(: +START:10110000:1: +START:10110011:V: +START:000011110:Q: +START:101100010:3: +START:0000111110:9: +START:0000111111:8: +START:1011000110:6: +START:1011000111:5: +START:1011001000:Z: +START:1011001001:7: +START:1011001010:4: +START:101100101110:X: +START:101100101111: : +START:1011001011001:w: +START:1011001011010:': +START:1011001011011:": +START:10110010110000:t: +START:101100101100010:a: +START:1011001011000110:`: +START:10110010110001110:ESCAPE: +START:10110010110001111:m: +ESCAPE:0:ESCAPE: +ESCAPE:1:ESCAPE: +STOP:0:ESCAPE: +STOP:1:ESCAPE: +0x03:0:ESCAPE: +0x03:1:ESCAPE: +0x04:0:ESCAPE: +0x04:1:ESCAPE: +0x05:0:ESCAPE: +0x05:1:ESCAPE: +0x06:0:ESCAPE: +0x06:1:ESCAPE: +0x07:0:ESCAPE: +0x07:1:ESCAPE: +0x08:0:ESCAPE: +0x08:1:ESCAPE: +0x09:0:ESCAPE: +0x09:1:ESCAPE: +0x0a:0:ESCAPE: +0x0a:1:ESCAPE: +0x0b:0:ESCAPE: +0x0b:1:ESCAPE: +0x0c:0:ESCAPE: +0x0c:1:ESCAPE: +0x0d:0:ESCAPE: +0x0d:1:ESCAPE: +0x0e:0:ESCAPE: +0x0e:1:ESCAPE: +0x0f:0:ESCAPE: +0x0f:1:ESCAPE: +0x10:0:ESCAPE: +0x10:1:ESCAPE: +0x11:0:ESCAPE: +0x11:1:ESCAPE: +0x12:0:ESCAPE: +0x12:1:ESCAPE: +0x13:0:ESCAPE: +0x13:1:ESCAPE: +0x14:0:ESCAPE: +0x14:1:ESCAPE: +0x15:0:ESCAPE: +0x15:1:ESCAPE: +0x16:0:ESCAPE: +0x16:1:ESCAPE: +0x17:0:ESCAPE: +0x17:1:ESCAPE: +0x18:0:ESCAPE: +0x18:1:ESCAPE: +0x19:0:ESCAPE: +0x19:1:ESCAPE: +0x1a:0:ESCAPE: +0x1a:1:ESCAPE: +0x1b:0:ESCAPE: +0x1b:1:ESCAPE: +0x1c:0:ESCAPE: +0x1c:1:ESCAPE: +0x1d:0:ESCAPE: +0x1d:1:ESCAPE: +0x1e:0:ESCAPE: +0x1e:1:ESCAPE: +0x1f:0:ESCAPE: +0x1f:1:ESCAPE: + :010:a: + :100:t: + :0001:o: + :0010:s: + :00110:d: + :01100:[: + :01111:p: + :10101:b: + :11001:c: + :11010:h: + :11100:w: + :11101:i: + :11111:f: + :000000:A: + :000011:M: + :001111:e: + :011100:B: + :011101:C: + :101000:T: + :101101:S: + :101110:g: + :110000:r: + :110110:n: + :110111:l: + :111101:m: + :0000011:v: + :0000100:G: + :0000101:N: + :0011101:y: + :0110101:H: + :0110111:L: + :1010010:J: + :1010011:F: + :1011001:R: + :1011110:u: + :1100010:D: + :1100011:W: + :1111001:P: + :00000100:k: + :00000101:O: + :01101000:-: + :01101101:1: + :10110001:K: + :10111110:j: + :11110000:I: + :11110001:E: + :001110010:q: + :001110011:U: + :011010010:V: + :011011000:Y: + :011011001: : + :101100001:2: + :101111110:STOP: + :0011100000:3: + :0011100001:8: + :0011100010:6: + :0110100111:5: + :1011000000:(: + :1011111110:7: + :00111000110:0: + :01101001100:': + :01101001101:9: + :10110000010:Z: + :10111111110:4: + :10111111111:Q: + :001110001111:X: + :1011000001100:ESCAPE: + :1011000001101:.: + :1011000001110:&: + :00111000111000:\: + :00111000111010:@: + :00111000111011:`: + :10110000011110:": + :10110000011111:z: + :001110001110011:$: + :0011100011100100:+: + :00111000111001011:x: + :001110001110010101:]: + :0011100011100101000:/: + :0011100011100101001:?: +!:1: : +!:01:STOP: +!:001:.: +!:0000:0x3a: +!:00011:[: +!:0001001:": +!:0001010:/: +!:0001011:!: +!:00010000:): +!:000100010:': +!:0001000111:?: +!:00010001100:ESCAPE: +!:00010001101:]: +":11: : +":001:.: +":0000:p: +":0101:B: +":0111:T: +":1000:i: +":00010:f: +":00011:W: +":01000:S: +":01100:t: +":01101:C: +":10100:STOP: +":10111:,: +":010010:J: +":100100:m: +":101010:n: +":101011:I: +":0100110:E: +":0100111:D: +":1001010:w: +":1001011:g: +":1001100:b: +":1001101:L: +":1001110:-: +":1011000:c: +":1011001:H: +":10011110:P: +":10110100:r: +":10110111:K: +":100111111:l: +":101101010:Y: +":101101011:Q: +":101101100:G: +":101101101:A: +":1001111100:ESCAPE: +":1001111101:a: +#:0:ESCAPE: +#:1:ESCAPE: +$:0:1: +$:11:3: +$:100:4: +$:1011:2: +$:10101:7: +$:101001:5: +$:1010000:ESCAPE: +$:1010001:9: +%:1: : +%:00:ESCAPE: +%:01:,: +&:1: : +&:01:w: +&:001:B: +&:0000:E: +&:000100:2: +&:000110:A: +&:000111:R: +&:00010100:O: +&:00010101:4: +&:00010111:J: +&:000101100:ESCAPE: +&:000101101:P: +':1:s: +':001:t: +':010: : +':0000:l: +':01101:r: +':000100:n: +':000101:.: +':000110:C: +':011000:B: +':011101:A: +':0111000:d: +':0111100:v: +':00011100:S: +':00011111:p: +':01100101:D: +':01111011:i: +':01111100:c: +':01111101:m: +':01111111:,: +':000111010:f: +':000111011:g: +':011001000:F: +':011001001:h: +':011001101:H: +':011001110:N: +':011100101:R: +':011100110:STOP: +':011100111:T: +':011110101:G: +':011111101:L: +':0001111000:o: +':0001111001:K: +':0001111011:a: +':0110011001:u: +':0110011111:O: +':0111001001:I: +':0111101000:w: +':0111101001:b: +':0111111001:e: +':00011110101:?: +':01100110000:E: +':01100110001:7: +':01110010000:P: +':000111101001:W: +':011001111001:0x3a: +':011001111010:!: +':011100100011:J: +':011111100001:q: +':011111100011:M: +':0001111010001:V: +':0110011110001:9: +':0110011110111:y: +':0111001000100:8: +':0111001000101:5: +':0111111000000:6: +':0111111000101:k: +':00011110100000:2: +':00011110100001:0: +':01100111100001:Y: +':01100111101100:): +':01111110000010:j: +':01111110000011:Q: +':011001111000000:-: +':011001111000001:': +':011001111011011:z: +':011111100010000:X: +':011111100010001:U: +':011111100010010:4: +':011111100010011:3: +':0110011110110100:ESCAPE: +':0110011110110101:1: +(:01:1: +(:000:P: +(:101:t: +(:1000:2: +(:1101:5: +(:1110:N: +(:00111:T: +(:10010:p: +(:11111:c: +(:001001:a: +(:001010:S: +(:001100:R: +(:100111:e: +(:111100:J: +(:111101:A: +(:0010110:D: +(:0011011:K: +(:1001100:v: +(:1001101:s: +(:1100000:b: +(:1100010:G: +(:1100011:8: +(:1100100:M: +(:1100101:H: +(:1100110:C: +(:00100000:m: +(:00100010:o: +(:00100011:E: +(:00101110:W: +(:11000011:g: +(:11001110:L: +(:001000010:d: +(:001011111:U: +(:001101000:F: +(:001101010:f: +(:110000100:w: +(:110000101:B: +(:110011111:n: +(:0010000110:l: +(:0010000111:9: +(:0010111100:4: +(:0010111101:I: +(:0011010010:3: +(:0011010111:h: +(:1100111101:i: +(:00110100110:Z: +(:00110100111:V: +(:00110101100: : +(:11001111000:k: +(:001101011011:O: +(:110011110010:': +(:0011010110100:ESCAPE: +(:0011010110101:u: +(:1100111100110:X: +(:1100111100111:7: +):0: : +):11:.: +):101:STOP: +):1001:,: +):10000:0x3a: +):100011:;: +):1000101:!: +):10001001:(: +):1000100000:ESCAPE: +):1000100001:o: +):1000100010:?: +):1000100011:): +*:0:*: +*:100:s: +*:101: : +*:1100:m: +*:1110:t: +*:11010:g: +*:11011:k: +*:11111:d: +*:111101:y: +*:1111001:e: +*:11110000:i: +*:111100010:ESCAPE: +*:111100011:n: ++:1:n: ++:00:ESCAPE: ++:01: : +,:1: : +,:01:S: +,:001:0: +,:0001:A: +,:00000:5: +,:0000110:b: +,:0000111:3: +,:00001000:2: +,:00001001:": +,:00001011:1: +,:0000101000:Q: +,:0000101010:': +,:00001010111:4: +,:000010100100:T: +,:000010100101:B: +,:000010100110:7: +,:000010100111:6: +,:000010101100:STOP: +,:0000101011010:ESCAPE: +,:0000101011011:i: +-:00: : +-:0100:t: +-:0101:b: +-:0110:w: +-:0111:u: +-:1001:o: +-:1010:s: +-:1011:f: +-:10000:c: +-:11011:l: +-:11101:d: +-:100010:9: +-:110000:h: +-:110010:1: +-:110011:y: +-:110101:r: +-:111000:a: +-:111100:m: +-:111110:p: +-:1000110:S: +-:1101000:e: +-:1101001:i: +-:1111011:n: +-:10001110:C: +-:11000101:W: +-:11000111:g: +-:11100101:J: +-:11100110:D: +-:11110101:2: +-:11111100:7: +-:11111110:G: +-:11111111:O: +-:100011111:H: +-:110001000:A: +-:110001100:6: +-:110001101:B: +-:111001111:M: +-:111101000:E: +-:111101001:L: +-:111111010:U: +-:111111011:k: +-:1000111100:F: +-:1100010010:j: +-:1100010011:P: +-:1110010001:q: +-:1110010010:5: +-:1110010011:T: +-:1110011101:I: +-:10001111011:K: +-:11100100000:v: +-:11100100001:Z: +-:11100111001:N: +-:100011110101:R: +-:111001110001:Y: +-:1000111101001:0: +-:10001111010000:4: +-:10001111010001:z: +-:11100111000001:V: +-:11100111000010:3: +-:11100111000011:8: +-:111001110000001:Q: +-:1110011100000000:': +-:11100111000000010:ESCAPE: +-:11100111000000011:x: +.:1: : +.:01:STOP: +.:0011:.: +.:00010:i: +.:00100:0: +.:00101:c: +.:000001:u: +.:0000000:a: +.:0000001:[: +.:0001101:3: +.:00001000:4: +.:00001110:H: +.:00011000:S: +.:00011001:W: +.:00011100:o: +.:00011110:1: +.:000010100:5: +.:000010101:L: +.:000010111:p: +.:000011000:T: +.:000011001:A: +.:000011010:M: +.:000011110:C: +.:000011111:2: +.:000111011:D: +.:000111110:B: +.:0000100100:N: +.:0000100110:t: +.:0000100111:J: +.:0000101101:R: +.:0000110111:P: +.:0001110101:s: +.:0001111111:I: +.:00001011000:r: +.:00001101100:V: +.:00011101000:w: +.:00011101001:F: +.:00011111101:G: +.:000010010100:E: +.:000010010101:0x3a: +.:000010110010:h: +.:000011011010:,: +.:000111111000:': +.:0000100101101:b: +.:0000100101110:K: +.:0000100101111:Y: +.:0000101100111:O: +.:0000110110110:-: +.:0001111110010:f: +.:0001111110011:(: +.:00001011001100:": +.:00001101101110:y: +.:000010010110000:?: +.:000010010110001:m: +.:000010010110010:Q: +.:000011011011110:*: +.:000011011011111:&: +.:0000100101100110:U: +.:0000100101100111:;: +.:0000101100110100:8: +.:0000101100110101:6: +.:0000101100110111:k: +.:00001011001101100:d: +.:000010110011011010:ESCAPE: +.:000010110011011011:n: +/:01:c: +/:110:1: +/:111:e: +/:0000:5: +/:0010:8: +/:00010:T: +/:00011:f: +/:00110:B: +/:00111:2: +/:10001:3: +/:10010:7: +/:10100:6: +/:10110:a: +/:101111:4: +/:1000000:F: +/:1000010:s: +/:1000011:M: +/:1001100:H: +/:1001110:D: +/:1001111:A: +/:1010101:S: +/:10000011:m: +/:10011010:W: +/:10101000:G: +/:10101001:U: +/:10101100:d: +/:10101101:O: +/:10101110:N: +/:10111001:C: +/:10111011:P: +/:100110110:L: +/:101011110: : +/:101011111:I: +/:101110000:E: +/:101110001:R: +/:101110100:K: +/:101110101:t: +/:1000001001:J: +/:1000001011:9: +/:10000010000:v: +/:10000010001:p: +/:10000010100:h: +/:10011011101:o: +/:10011011110:Q: +/:10011011111:0: +/:100000101010:l: +/:100000101011:i: +/:100110111000:V: +/:1001101110011:y: +/:10011011100100:ESCAPE: +/:10011011100101:g: +0:0:0: +0:111: : +0:1001:a: +0:1011:p: +0:10001:s: +0:11000:.: +0:11001:8: +0:11011:,: +0:100000:4: +0:100001:t: +0:101001:5: +0:110100:6: +0:1010000:3: +0:1010001:7: +0:1010101:]: +0:1010110:-: +0:1010111:1: +0:10101000:): +0:10101001:/: +0:11010100:STOP: +0:11010101:9: +0:11010111:2: +0:110101100:%: +0:1101011010:0x3a: +0:110101101101:f: +0:110101101111:m: +0:1101011011100:y: +0:11010110110001:l: +0:11010110110010:;: +0:11010110110011:': +0:11010110111010:k: +0:11010110111011:!: +0:110101101100000:C: +0:1101011011000010:ESCAPE: +0:1101011011000011:J: +1:00:9: +1:100:1: +1:111:0: +1:0101: : +1:0111:2: +1:1011:.: +1:1100:5: +1:01000:6: +1:01001:8: +1:01101:/: +1:10100:]: +1:11010:3: +1:011001:7: +1:110110:4: +1:0110000:STOP: +1:0110001:-: +1:1010100:): +1:1010110:0x3a: +1:1010111:s: +1:1101110:,: +1:1101111:x: +1:10101010:': +1:101010110:X: +1:10101011110:t: +1:10101011111:R: +1:101010111011:;: +1:1010101110000:p: +1:1010101110001:m: +1:1010101110010:!: +1:1010101110101:&: +1:10101011100110:e: +1:101010111001110:b: +1:101010111001111:a: +1:101010111010000:D: +1:101010111010001:C: +1:101010111010010:%: +1:1010101110100110:ESCAPE: +1:1010101110100111:o: +2:11:0: +2:000: : +2:010:.: +2:100:5: +2:0011:/: +2:1011:,: +2:00100:]: +2:00101:p: +2:01101:1: +2:10101:4: +2:011000:6: +2:011001:2: +2:011100:0x3a: +2:011101:-: +2:011111:): +2:1010000:STOP: +2:1010010:8: +2:1010011:9: +2:01111000:D: +2:01111001:3: +2:01111010:t: +2:01111011:7: +2:10100010:n: +2:101000110:a: +2:1010001110:': +2:10100011111:;: +2:101000111100:s: +2:1010001111010:": +2:101000111101100:ESCAPE: +2:101000111101101:i: +2:101000111101110:W: +2:101000111101111:L: +3:00: : +3:10:0: +3:110:.: +3:1110:/: +3:01000:2: +3:01001:1: +3:01010:): +3:01100:0x3a: +3:01110:-: +3:11111:]: +3:010110:D: +3:011010:4: +3:011011:STOP: +3:011111:5: +3:111100:,: +3:0101110:7: +3:0101111:3: +3:0111101:6: +3:1111011:t: +3:01111001:B: +3:11110100:8: +3:111101010:9: +3:0111100001:;: +3:1111010110:r: +3:1111010111:s: +3:01111000000:n: +3:01111000101:b: +3:01111000110:': +3:01111000111:A: +3:011110000010:p: +3:011110000011:e: +3:0111100010000:a: +3:0111100010001:&: +3:0111100010010:%: +3:01111000100110:ESCAPE: +3:01111000100111:k: +4:01: : +4:000:4: +4:100:.: +4:110:0: +4:0010:/: +4:1010:5: +4:1011:-: +4:00110:1: +4:11101:]: +4:11110:,: +4:001110:2: +4:111001:8: +4:111110:): +4:0011110:0x3a: +4:0011111:': +4:1110000:t: +4:1110001:3: +4:1111111:STOP: +4:11111101:6: +4:1111110000:9: +4:1111110010:7: +4:11111100011:C: +4:11111100110:;: +4:111111000101:x: +4:1111110011101:m: +4:1111110011110:I: +4:11111100010000:f: +4:11111100010001:e: +4:11111100010010:b: +4:11111100010011:L: +4:11111100111000:%: +4:11111100111110:p: +4:11111100111111:c: +4:111111001110010:ESCAPE: +4:111111001110011:i: +5:00:0: +5:10: : +5:010:.: +5:0111:p: +5:1100:5: +5:01100:/: +5:11010:a: +5:11011:-: +5:11101:6: +5:011010:3: +5:111100:2: +5:111110:8: +5:111111:]: +5:0110110:0x3a: +5:1110000:): +5:1110001:s: +5:1110011:,: +5:1111010:7: +5:1111011:9: +5:01101110:4: +5:11100100:STOP: +5:11100101:t: +5:0110111110:c: +5:0110111111:1: +5:01101111001:;: +5:01101111011:m: +5:011011110000:e: +5:011011110001:': +5:011011110101:k: +5:0110111101001:l: +5:01101111010000:ESCAPE: +5:01101111010001:f: +6:00: : +6:10:.: +6:111:0: +6:0101:]: +6:01001:1: +6:01100:7: +6:01110:): +6:11000:,: +6:11001:0x3a: +6:11010:/: +6:010001:-: +6:011010:5: +6:011011:4: +6:011111:8: +6:110111:t: +6:0100000:6: +6:0111100:3: +6:0111101:2: +6:1101101:9: +6:01000010:STOP: +6:01000011:+: +6:11011000:': +6:1101100101:a: +6:1101100110:?: +6:11011001000:m: +6:11011001001:e: +6:11011001110:;: +6:1101100111100:f: +6:1101100111101:b: +6:1101100111110:M: +6:11011001111110:": +6:110110011111110:ESCAPE: +6:110110011111111:i: +7:11:.: +7:001: : +7:011:0: +7:101:-: +7:0000:8: +7:0100:7: +7:1001:]: +7:01010:/: +7:000101:6: +7:000110:2: +7:000111:1: +7:010111:t: +7:100000:9: +7:100010:): +7:100011:5: +7:0001001:3: +7:0101101:,: +7:1000010:a: +7:1000011:4: +7:00010000:STOP: +7:01011000:0x3a: +7:01011001:p: +7:0001000101:R: +7:0001000110:;: +7:00010001000:': +7:00010001111:m: +7:000100010011:f: +7:000100011100:A: +7:000100011101:?: +7:0001000100100:ESCAPE: +7:0001000100101:s: +8:01: : +8:000:4: +8:110:.: +8:0011:0: +8:1000:9: +8:1001:7: +8:1011:8: +8:1110:1: +8:00100:/: +8:10100:3: +8:11110:5: +8:101010:): +8:111110:6: +8:111111:]: +8:0010100:0x3a: +8:0010101:,: +8:1010111:t: +8:00101100:p: +8:00101101:-: +8:00101111:a: +8:10101100:c: +8:10101101:2: +8:001011101:STOP: +8:0010111001:;: +8:001011100000:l: +8:001011100001:': +8:0010111000100:f: +8:0010111000101:D: +8:0010111000110:A: +8:00101110001110:ESCAPE: +8:00101110001111:i: +9:000:5: +9:001:]: +9:111:9: +9:0101:0: +9:0110:.: +9:0111:-: +9:1000:4: +9:1001:8: +9:1011:6: +9:1100: : +9:1101:7: +9:01000:2: +9:10100:3: +9:010010:1: +9:010011:/: +9:101010:t: +9:1010111:): +9:10101100:0x3a: +9:101011010:,: +9:10101101100:p: +9:10101101101:;: +9:10101101111:STOP: +9:1010110111000:n: +9:1010110111001:m: +9:1010110111010:a: +9:10101101110111:e: +9:101011011101100:ESCAPE: +9:101011011101101:k: +0x3a:1: : +0x3a:01:0: +0x3a:001:3: +0x3a:00001:1: +0x3a:00010:T: +0x3a:00011:C: +0x3a:000001:4: +0x3a:0000000:ESCAPE: +0x3a:0000001:5: +;:0:ESCAPE: +;:1: : +<:0:ESCAPE: +<:1:ESCAPE: +=:0:ESCAPE: +=:1:ESCAPE: +>:0:ESCAPE: +>:1:ESCAPE: +?:1: : +?:01:STOP: +?:000:0x3a: +?:00100:!: +?:00110:[: +?:00111:.: +?:001010:;: +?:0010110:': +?:00101111:,: +?:001011101:/: +?:0010111000:ESCAPE: +?:0010111001:Q: +@:0:k: +@:10: : +@:111:T: +@:1101:b: +@:11000:ESCAPE: +@:11001:H: +A:01: : +A:110:D: +A:111:n: +A:0000:s: +A:0001:m: +A:0010:d: +A:1000:r: +A:1011:l: +A:00110:c: +A:10010:u: +A:10100:g: +A:001111:b: +A:100111:t: +A:101011:f: +A:1010100:w: +A:1010101:i: +A:10011001:v: +A:10011011:p: +A:001110010:h: +A:001110100:.: +A:001110111:B: +A:100110100:q: +A:0011100000:C: +A:0011100010:,: +A:0011100110:y: +A:0011101010:S: +A:0011101100:k: +A:0011101101:T: +A:1001100001:R: +A:1001100010:F: +A:1001100011:z: +A:1001101011:a: +A:00111000010:P: +A:00111000110:-: +A:00111010110:A: +A:00111010111:I: +A:10011000001:e: +A:10011010100:N: +A:10011010101:x: +A:001110000110:X: +A:001110000111:K: +A:001110001110:3: +A:001110001111:&: +A:001110011101:M: +A:001110011111:Y: +A:0011100111000:L: +A:0011100111001:W: +A:0011100111100:*: +A:1001100000000:o: +A:1001100000001:1: +A:1001100000010:': +A:1001100000011:0x3a: +A:00111001111010:j: +A:001110011110110:G: +A:0011100111101110:O: +A:00111001111011110:4: +A:001110011110111110:ESCAPE: +A:001110011110111111:E: +B:00:C: +B:010:a: +B:101:r: +B:110:e: +B:111:B: +B:0111:i: +B:1000:u: +B:1001:o: +B:01101:l: +B:01100000:T: +B:01100001:.: +B:01100011:y: +B:01100100:I: +B:01100110:h: +B:01100111: : +B:011000100:A: +B:0110001010:O: +B:01100010110:0x3a: +B:01100101000:&: +B:01100101001:3: +B:01100101010:j: +B:01100101011:M: +B:01100101110:D: +B:011000101111:W: +B:011001011000:*: +B:011001011010:,: +B:011001011011:1: +B:011001011110:ESCAPE: +B:011001011111:P: +B:0110001011100:E: +B:0110010110011:R: +B:01100010111011:w: +B:011000101110100:-: +B:011001011001001:U: +B:011001011001010:S: +B:011001011001011:F: +B:0110001011101010:X: +B:0110001011101011:V: +B:0110010110010000:Q: +B:0110010110010001:4: +C:00:h: +C:011:B: +C:100:a: +C:110:o: +C:0101:r: +C:1010:.: +C:1110: : +C:1111:l: +C:01000:': +C:10111:i: +C:010011:e: +C:101101:u: +C:0100101:y: +C:1011001:,: +C:01001001:I: +C:010010000:A: +C:1011000000:C: +C:1011000001:D: +C:1011000011:STOP: +C:1011000100:S: +C:1011000101:T: +C:1011000111:G: +C:01001000100:*: +C:01001000111:w: +C:10110001101:J: +C:010010001010:R: +C:010010001100:2: +C:010010001101:U: +C:101100001000:?: +C:101100001010:O: +C:101100001011:H: +C:101100011000:E: +C:0100100010110:z: +C:1011000010011:-: +C:1011000110011:s: +C:01001000101111:1: +C:10110000100101:!: +C:10110001100100:P: +C:010010001011101:n: +C:101100001001000:K: +C:101100001001001:7: +C:101100011001011:4: +C:0100100010111000:0x3a: +C:1011000110010100:F: +C:1011000110010101:): +C:01001000101110010:ESCAPE: +C:01001000101110011:b: +D:00:a: +D:01:,: +D:100:r: +D:101:o: +D:110:e: +D:1110:i: +D:111111:u: +D:1111001: : +D:1111011:': +D:11110000:.: +D:11110001:]: +D:11111010:y: +D:111101010:w: +D:111101011:W: +D:111110001:N: +D:111110010:C: +D:111110111:J: +D:1111010010:h: +D:1111100000:t: +D:1111100111:I: +D:1111101101:0x3a: +D:11110100001:M: +D:11110100010:&: +D:11110100011:V: +D:11111000010:-: +D:11111000011:G: +D:11111001100:O: +D:11111001101:A: +D:11111011001:S: +D:111101000000:F: +D:111101001100:*: +D:111101001101:s: +D:111101001111:d: +D:111110110000:v: +D:1111010011100:m: +D:1111010011101:j: +D:1111101100010:ESCAPE: +D:1111101100011:T: +D:11110100000110:9: +D:111101000001000:): +D:111101000001011:E: +D:111101000001110:8: +D:111101000001111:7: +D:1111010000010010:U: +D:1111010000010011:R: +D:1111010000010100:B: +D:1111010000010101:4: +E:000:p: +E:010:a: +E:011:n: +E:110:l: +E:1001:m: +E:1010:x: +E:1110:v: +E:1111:d: +E:00100:s: +E:00110:r: +E:00111:u: +E:10000:E: +E:10001: : +E:001010:.: +E:001011:i: +E:101101:0x3a: +E:1011000:y: +E:1011001:t: +E:1011100:g: +E:1011110:4: +E:101110110:w: +E:101111100:c: +E:101111110:b: +E:1011101010:R: +E:1011101011:F: +E:1011101111:C: +E:10111010001:k: +E:10111010010:f: +E:10111010011:o: +E:10111011100:U: +E:10111011101:L: +E:10111110101:e: +E:10111110110:N: +E:10111111100:h: +E:10111111101:I: +E:10111111111:D: +E:101111101000:M: +E:101111101111:': +E:101111111100:2: +E:101111111101:-: +E:1011101000011:q: +E:1011111010010:O: +E:1011111010011:A: +E:1011111011101:Z: +E:10111010000000:W: +E:10111010000001:S: +E:10111010000010:H: +E:10111010000011:9: +E:10111010000100:): +E:10111110111000:T: +E:10111110111001:,: +E:101110100001010:P: +E:1011101000010110:ESCAPE: +E:1011101000010111:z: +F:00:o: +F:10:r: +F:010:e: +F:110:i: +F:111:a: +F:0110:l: +F:01110:u: +F:0111100: : +F:0111101:O: +F:01111101:A: +F:01111111:B: +F:011111100:f: +F:0111110000:.: +F:0111110011:L: +F:01111100010:M: +F:01111100011:E: +F:01111100101:T: +F:01111110101:C: +F:01111110110:W: +F:011111001000:0x3a: +F:011111101000:U: +F:011111101001:': +F:011111101111:1: +F:0111110010010:y: +F:0111110010011:,: +F:01111110111000:-: +F:01111110111010:I: +F:011111101110011:h: +F:0111111011100100:*: +F:0111111011100101:K: +F:0111111011101100:F: +F:0111111011101101:ESCAPE: +F:01111110111011100:X: +F:01111110111011101:R: +F:01111110111011110:;: +F:01111110111011111:4: +G:00:r: +G:01:a: +G:101:o: +G:110:e: +G:1001:u: +G:1111:i: +G:10001:n: +G:11101:l: +G:100000:X: +G:1110000:y: +G:1110001: : +G:1110011:w: +G:10000101:4: +G:10000111:P: +G:11100101:h: +G:100001000:-: +G:100001100:C: +G:111001001:M: +G:1000011010:B: +G:1110010000:.: +G:1110010001:I: +G:10000100100:;: +G:10000100101:,: +G:10000100110:A: +G:10000100111:N: +G:10000110111:0x3a: +G:1000011011000:O: +G:1000011011001:L: +G:10000110110110:b: +G:100001101101000:K: +G:100001101101001:2: +G:100001101101010:1: +G:100001101101011:': +G:1000011011011100:ESCAPE: +G:1000011011011101:m: +G:1000011011011110:T: +G:1000011011011111:S: +H:00:e: +H:01:a: +H:10:o: +H:110:i: +H:1111:u: +H:11100:R: +H:1110100:P: +H:1110110:y: +H:11101011:I: +H:111011100:Q: +H:111011101:M: +H:111011110:A: +H:111011111: : +H:1110101000:S: +H:1110101001:.: +H:11101010101:G: +H:11101010110:): +H:111010101001:E: +H:1110101011100:O: +H:1110101011101:L: +H:11101010100000:1: +H:11101010100001:&: +H:11101010111100:H: +H:11101010111101:w: +H:11101010111110:v: +H:111010101000100:X: +H:111010101000101:W: +H:111010101000110:D: +H:111010101111110:s: +H:111010101111111:F: +H:1110101010001110:ESCAPE: +H:1110101010001111:r: +I:0:n: +I:110:t: +I:1001:s: +I:1111:r: +I:10000:T: +I:10101:a: +I:11100: : +I:100010:c: +I:101001:m: +I:101100:z: +I:101101:.: +I:101111:d: +I:111011:I: +I:1000111:': +I:1011101:l: +I:10100000:A: +I:10100001:v: +I:10111001:V: +I:11101001:f: +I:11101011:o: +I:100011001:C: +I:100011010:P: +I:101000100:w: +I:101000110:0x3a: +I:101110000:p: +I:111010000:R: +I:111010001:,: +I:111010101:Y: +I:1000110000:E: +I:1000110001:6: +I:1000110111:q: +I:1010001011:y: +I:1010001110:M: +I:1110101000:g: +I:1110101001:D: +I:10001101100:e: +I:10001101101:5: +I:10100010100:S: +I:10100010101:9: +I:10100011111:F: +I:10111000100:b: +I:10111000110:-: +I:10111000111:L: +I:101000111100:B: +I:101000111101:): +I:1011100010100:N: +I:1011100010101:Q: +I:1011100010110:k: +I:10111000101111:O: +I:101110001011101:?: +I:1011100010111000:ESCAPE: +I:1011100010111001:h: +J:00:e: +J:10:a: +J:11:o: +J:011:u: +J:0101:i: +J:01000: : +J:0100110:D: +J:0100111:.: +J:01001001:r: +J:010010110:s: +J:0100100000:M: +J:0100100010:J: +J:0100100011:,: +J:0100101000:B: +J:0100101001:-: +J:0100101010:V: +J:0100101110:K: +J:0100101111:T: +J:01001000010:C: +J:01001010110:n: +J:010010000110:!: +J:0100100001110:w: +J:0100100001111:R: +J:0100101011100:F: +J:0100101011110:7: +J:0100101011111:': +J:01001010111010:G: +J:010010101110110:ESCAPE: +J:010010101110111:L: +K:00:i: +K:01:a: +K:10:e: +K:1111:y: +K:11000:n: +K:11001:o: +K:11011:r: +K:11101: : +K:110100:': +K:111000:u: +K:1101011:.: +K:1110011:l: +K:11100101:h: +K:110101000:T: +K:110101011:G: +K:111001001:,: +K:1101010100:w: +K:11010100100:5: +K:11010100101:4: +K:11010100110:A: +K:11010101010:3: +K:11100100000:2: +K:11100100011:M: +K:110101001110:-: +K:110101010110:0x3a: +K:110101010111:!: +K:111001000010:): +K:111001000101:S: +K:1101010011110:V: +K:1110010000110:6: +K:1110010000111:1: +K:11010100111111:L: +K:11100100010000:I: +K:11100100010001:?: +K:110101001111100:ESCAPE: +K:110101001111101:v: +K:111001000100100:k: +K:111001000100101:Y: +K:111001000100110:N: +K:111001000100111:E: +L:00:i: +L:10:o: +L:011:]: +L:110:e: +L:111:a: +L:0100:u: +L:010100:l: +L:010101:A: +L:010111:y: +L:01011011: : +L:010110000:I: +L:010110001:R: +L:010110101:,: +L:0101100100:O: +L:0101100101:': +L:01011001101:.: +L:01011001110:C: +L:01011001111:Y: +L:01011010001:F: +L:01011010010:L: +L:010110011001:t: +L:010110100001:G: +L:010110100111:S: +L:0101100110001:h: +L:0101101000001:W: +L:0101101001100:J: +L:01011001100000:E: +L:01011010000001:": +L:01011010011011:STOP: +L:010110011000010:T: +L:010110011000011:P: +L:010110100000000:D: +L:010110100000001:7: +L:010110100110101:j: +L:0101101001101000:ESCAPE: +L:0101101001101001:U: +M:00:o: +M:11:a: +M:011:e: +M:101:i: +M:0101:c: +M:1001:u: +M:01001:y: +M:10001:r: +M:100000:S: +M:100001:P: +M:0100001: : +M:01000001:C: +M:01000110:F: +M:010000000:1: +M:010001000:h: +M:010001010:I: +M:010001110:T: +M:010001111:X: +M:0100000010:A: +M:0100010010:z: +M:01000100110:f: +M:01000101110:.: +M:010000001100:Z: +M:010000001101:K: +M:010000001110:B: +M:010001001111:s: +M:010001011000:R: +M:010001011001:W: +M:010001011010:O: +M:0100000011110:,: +M:0100000011111:': +M:0100010110111:D: +M:0100010111100:4: +M:0100010111110:E: +M:01000100111000:m: +M:01000100111001:J: +M:01000100111010:ESCAPE: +M:01000101111010:l: +M:01000101111011:-: +M:01000101111110:): +M:01000101111111:w: +M:010001001110110:t: +M:010001001110111:V: +M:010001011011000:Q: +M:010001011011001:N: +M:010001011011010:6: +M:010001011011011:2: +N:00:a: +N:10:o: +N:11:e: +N:011:i: +N:01010:u: +N:01011:E: +N:010010:A: +N:0100010:y: +N:0100110:g: +N:01000001:B: +N:01000010:I: +N:01000110:F: +N:01000111: : +N:010000000:): +N:010000001:': +N:010000111:Y: +N:010011100:L: +N:010011101:H: +N:0100001100:C: +N:0100111100:W: +N:0100111110:N: +N:0100111111:T: +N:010000110101:M: +N:010000110111:O: +N:010011110100:,: +N:010011110101:J: +N:010011110111:h: +N:0100001101000:D: +N:0100001101001:.: +N:0100111101100:X: +N:0100111101101:ESCAPE: +N:01000011011000:k: +N:01000011011001:Z: +N:01000011011010:Q: +N:01000011011011:G: +O:111:n: +O:0000:s: +O:0001:N: +O:0011:z: +O:0100:r: +O:1000:u: +O:1010:p: +O:1011:l: +O:1101:': +O:00101:U: +O:01011:h: +O:01110:f: +O:01111:w: +O:10010:.: +O:11000: : +O:001000:o: +O:001001:J: +O:010100:b: +O:010101:m: +O:011001:H: +O:011010:O: +O:011011:v: +O:100111:c: +O:110011:x: +O:1001101:d: +O:1100100:a: +O:01100001:t: +O:01100010:k: +O:10011000:g: +O:11001010:R: +O:011000000:K: +O:100110010:i: +O:110010111:V: +O:0110000011:2: +O:0110001101:S: +O:0110001110:B: +O:1001100110:W: +O:1001100111:-: +O:01100000100:,: +O:01100011000:j: +O:01100011001:L: +O:01100011111:I: +O:11001011001:A: +O:11001011011:C: +O:011000001010:0x3a: +O:011000111100:e: +O:110010110000:y: +O:110010110001:/: +O:110010110100:M: +O:0110000010110:!: +O:0110001111011:P: +O:1100101101011:F: +O:01100000101110:E: +O:01100000101111:D: +O:01100011110100:8: +O:01100011110101:4: +O:11001011010101:T: +O:110010110101000:ESCAPE: +O:110010110101001:q: +P:11:a: +P:000:i: +P:010:e: +P:011:l: +P:100:o: +P:101:r: +P:0010:h: +P:001111:u: +P:0011010:C: +P:0011100:.: +P:0011101: : +P:00110000:B: +P:00110010:D: +P:00110111:s: +P:001100011:O: +P:001100111:,: +P:0011000101:y: +P:0011001100:M: +P:0011011000:E: +P:0011011001:': +P:0011011011:3: +P:00110001001:T: +P:001100010000:L: +P:001100010001:G: +P:001100110100:*: +P:001100110110:A: +P:001100110111:S: +P:001101101000:w: +P:001101101001:F: +P:0011001101011:J: +P:0011011010100:f: +P:0011011010101:R: +P:0011011010111:t: +P:00110011010100:V: +P:00110110101100:Y: +P:00110110101101:I: +P:001100110101011:&: +P:0011001101010100:ESCAPE: +P:0011001101010101:): +Q:1:u: +Q:00:V: +Q:011: : +Q:0101:.: +Q:01000:a: +Q:0100100:w: +Q:0100110:E: +Q:0100111:C: +Q:01001011:&: +Q:010010101:': +Q:0100101000:T: +Q:01001010010:ESCAPE: +Q:01001010011:s: +R:01:a: +R:11:o: +R:100:i: +R:101:e: +R:0000:p: +R:0011:u: +R:00011:E: +R:00100:h: +R:000100: : +R:001010:y: +R:00010100:D: +R:00010110:.: +R:00101100:T: +R:00101110:S: +R:000101010:F: +R:001011010:B: +R:001011011:n: +R:001011111:A: +R:0001010110:w: +R:0001011100:N: +R:0001011101:&: +R:0001011110:V: +R:0001011111:H: +R:0010111101:': +R:00010101110:t: +R:00010101111:I: +R:001011110000:C: +R:001011110010:O: +R:00101111000100:,: +R:00101111000101:s: +R:00101111000110:U: +R:00101111000111:M: +R:00101111001100:-: +R:00101111001101:ESCAPE: +R:00101111001111:0x3a: +R:001011110011100:2: +R:001011110011101:R: +S:1:]: +S:0000:a: +S:0010:h: +S:0111:t: +S:00010:p: +S:00011:,: +S:00110:L: +S:01000:i: +S:01001:u: +S:01010:o: +S:01011:c: +S:01100:e: +S:001111:k: +S:0011100:w: +S:0110101: : +S:0110111:m: +S:00111010:q: +S:01101000:M: +S:01101001:n: +S:01101100:l: +S:001110110:P: +S:011011011:y: +S:0011101110:A: +S:01101101001:.: +S:001110111101:r: +S:001110111110:S: +S:001110111111:W: +S:011011010000:C: +S:011011010101:E: +S:011011010110:v: +S:0110110100011:ESCAPE: +S:0110110101000:I: +S:0110110101111:g: +S:00111011110000:*: +S:00111011110010:4: +S:00111011110011:1: +S:01101101000100:O: +S:01101101010010:STOP: +S:01101101011100:z: +S:011011010001011:B: +S:011011010111010:H: +S:011011010111011:T: +S:0011101111000100:G: +S:0011101111000110:}: +S:0011101111000111:D: +S:0110110100010100:-: +S:0110110101001100:3: +S:0110110101001101:2: +S:00111011110001010:': +S:00111011110001011:?: +S:01101101010011101:s: +S:01101101010011110:j: +S:01101101010011111:b: +S:011011010001010100:R: +S:011011010001010101:K: +S:011011010001010110:J: +S:011011010001010111:F: +S:011011010100111000:0x3a: +S:011011010100111001:): +T:0:h: +T:100:o: +T:1010:V: +T:1011:w: +T:1100:r: +T:1111:e: +T:11010:a: +T:11011:i: +T:11100:u: +T:1110100:H: +T:1110110:W: +T:11101010: : +T:11101011:y: +T:111011101:M: +T:111011111:x: +T:1110111000:S: +T:11101110010:A: +T:11101111001:s: +T:11101111011:J: +T:111011100111:X: +T:111011110000:.: +T:1110111001101:-: +T:1110111100011:L: +T:1110111101000:C: +T:1110111101011:c: +T:11101110011000:T: +T:11101110011001:U: +T:11101111000101:4: +T:11101111010010:O: +T:111011110001001:G: +T:111011110100110:E: +T:111011110100111:,: +T:111011110101010:': +T:1110111100010001:;: +T:1110111101010000:P: +T:1110111101010001:1: +T:1110111101010010:ESCAPE: +T:1110111101010111:D: +T:11101111000100000:0x3a: +T:11101111000100001:*: +T:11101111010100110:R: +T:11101111010100111:N: +T:11101111010101100:I: +T:11101111010101101:B: +U:00:K: +U:10:n: +U:011:S: +U:110:p: +U:1111:l: +U:01010:s: +U:01011:r: +U:11101:R: +U:010000:g: +U:111000: : +U:0100111:.: +U:1110010:m: +U:01000100:k: +U:01000101:t: +U:01000110:E: +U:01000111:-: +U:01001000:F: +U:01001100:2: +U:11100110:c: +U:11100111:N: +U:010010010:f: +U:010010011:8: +U:010010100:,: +U:010010111:Z: +U:0100101010:h: +U:0100110100:i: +U:0100110101:w: +U:0100110110:a: +U:01001010110:b: +U:01001010111:D: +U:01001101110:!: +U:010010110000:e: +U:010010110001:V: +U:010010110010:P: +U:010010110011:I: +U:010010110100:B: +U:010010110101:A: +U:010011011111:d: +U:0100101101100:H: +U:0100101101101:C: +U:0100101101110:0x3a: +U:0100101101111:): +U:0100110111101:z: +U:01001101111000:ESCAPE: +U:01001101111001:T: +V:01: : +V:11:i: +V:000:.: +V:001:a: +V:101:e: +V:10001:C: +V:10011:o: +V:1000001:F: +V:1000011:I: +V:10000001:1: +V:10000101:4: +V:10010000:r: +V:10010010:E: +V:10010011:s: +V:10010101:': +V:10010110:0x3a: +V:10010111:l: +V:100000001:/: +V:100001001:-: +V:100100010:D: +V:100100011:u: +V:100101001:,: +V:1000000000:6: +V:1000000001:2: +V:1000010000:5: +V:1001010000:;: +V:10010100010:ESCAPE: +V:100001000100:7: +V:100101000110:3: +V:1000010001010:9: +V:1000010001011:y: +V:1000010001100:P: +V:1000010001101:H: +V:1000010001110:A: +V:1000010001111:8: +V:1001010001111:W: +V:10010100011100:f: +V:10010100011101:B: +W:00:h: +W:10:i: +W:011:a: +W:110:o: +W:111:e: +W:0100:r: +W:01011:O: +W:0101001: : +W:0101010:y: +W:010100000:B: +W:010100001:.: +W:010101100:I: +W:010101110:W: +W:010101111:A: +W:0101000100:': +W:0101000101:M: +W:0101000111:T: +W:01010001100:2: +W:01010001101:0x3a: +W:01010110100:H: +W:01010110110:V: +W:010101101010:l: +W:010101101110:s: +W:010101101111:,: +W:0101011010111:u: +W:010101101011000:5: +W:010101101011001:): +W:010101101011011:E: +W:0101011010110100:ESCAPE: +W:0101011010110101:m: +X:1: : +X:000:a: +X:0010:z: +X:0011:m: +X:0111:t: +X:01001:U: +X:01010:-: +X:01011:e: +X:011000:u: +X:011001:I: +X:011011:,: +X:0100010:V: +X:0110100:5: +X:0110101:.: +X:01000000:S: +X:01000010:0x3a: +X:01000110:c: +X:01000111:i: +X:010000010:9: +X:010000011:': +X:010000111:X: +X:0100001100:): +X:01000011010:ESCAPE: +X:01000011011:y: +Y:1:o: +Y:00:e: +Y:010:u: +Y:01100:a: +Y:01110:v: +Y:01111: : +Y:0110100:n: +Y:01101010:r: +Y:01101101:O: +Y:01101111:i: +Y:011010111:N: +Y:011011000:L: +Y:011011001:s: +Y:011011101:m: +Y:0110101100:.: +Y:0110101101:M: +Y:0110111001:P: +Y:011011100001:R: +Y:011011100010:2: +Y:0110111000000:-: +Y:0110111000110:C: +Y:0110111000111:,: +Y:01101110000010:ESCAPE: +Y:01101110000011:d: +Z:01:a: +Z:10:e: +Z:11:o: +Z:0010:z: +Z:0011:i: +Z:00001:Z: +Z:00010: : +Z:00011:u: +Z:0000010:O: +Z:0000011:.: +Z:00000000:y: +Z:00000001:4: +Z:00000010:,: +Z:0000001100:f: +Z:0000001101:-: +Z:0000001110:STOP: +Z:00000011110:ESCAPE: +Z:00000011111:l: +[:1:S: +[:01:A: +[:0000:2: +[:0010:R: +[:0011:1: +[:000101:n: +[:000110:m: +[:0001111:l: +[:00010011:r: +[:00011101:b: +[:000100001:C: +[:000100010:f: +[:000100101:M: +[:000111001:c: +[:0001000001:STOP: +[:0001000111:K: +[:0001001000:H: +[:0001110001:T: +[:00010000000:J: +[:00010000001:B: +[:00010001101:Z: +[:00010010011:P: +[:00011100000:L: +[:000100011000:F: +[:000100100101:I: +[:000111000011:N: +[:0001000110010:s: +[:0001000110011:V: +[:0001001001000:U: +[:0001001001001:G: +[:0001110000101:D: +[:00011100001000:O: +[:000111000010010:ESCAPE: +[:000111000010011:W: +\:0:ESCAPE: +\:1:x: +]:1:STOP: +]:01: : +]:001:.: +]:0001:[: +]:00001:0x3a: +]:000001:,: +]:0000001:;: +]:00000000:ESCAPE: +]:00000001:]: +^:0:ESCAPE: +^:1:ESCAPE: +_:0:ESCAPE: +_:1:ESCAPE: +`:001:w: +`:011:H: +`:110:P: +`:111:F: +`:0101:n: +`:1011:D: +`:00001:s: +`:00010:A: +`:01001:t: +`:10000:g: +`:10011:c: +`:000000:W: +`:000001:r: +`:000110:e: +`:000111:C: +`:100011:l: +`:100100:h: +`:100101:G: +`:101001:B: +`:101010:T: +`:101011:S: +`:0100000:o: +`:0100001:d: +`:0100010:b: +`:0100011:R: +`:1000100:O: +`:1000101:L: +`:1010001:f: +`:10100000:J: +`:101000010:ESCAPE: +`:101000011:M: +a:01:n: +a:001:r: +a:101:t: +a:0000:m: +a:1001:s: +a:1110: : +a:1111:l: +a:00011:d: +a:10000:i: +a:11000:y: +a:11010:c: +a:000100:p: +a:100010:u: +a:100011:v: +a:110011:g: +a:110110:b: +a:110111:k: +a:0001010:w: +a:00010111:z: +a:11001000:.: +a:11001011:f: +a:000101100:,: +a:000101101:': +a:110010011:e: +a:110010101:h: +a:1100101001:x: +a:11001001000:a: +a:11001001001:-: +a:11001001011:j: +a:11001010000:0x3a: +a:11001010001:o: +a:110010010100:q: +a:11001001010100:!: +a:11001001010111:?: +a:1100100101010100:ESCAPE: +a:1100100101010110:;: +a:1100100101010111:): +a:1100100101011001:/: +a:1100100101011011:@: +a:11001001010101010:J: +a:11001001010101011:]: +a:11001001010110100:N: +a:11001001010110101:L: +a:110010010101100000:R: +a:110010010101100001:S: +a:110010010101100010:V: +a:11001001010110001100:[: +a:11001001010110001110:P: +a:11001001010110001111:STOP: +a:110010010101100011010:W: +a:110010010101100011011:1: +b:00:e: +b:010:u: +b:011:a: +b:100:y: +b:101:o: +b:1100:l: +b:1110:r: +b:1111:i: +b:110100:s: +b:110110: : +b:110111:b: +b:11010101:c: +b:110101000:j: +b:110101100:,: +b:110101101:.: +b:1101010011:': +b:1101011111:t: +b:11010100101:0x3a: +b:11010111000:w: +b:11010111001:d: +b:11010111010:h: +b:11010111011:&: +b:11010111101:-: +b:110101111000:m: +b:110101111001:n: +b:1101010010000:?: +b:1101010010010:v: +b:11010100100010:f: +b:11010100100111:p: +b:110101001000111:;: +b:110101001001101:D: +b:1101010010001100:/: +b:1101010010011001:@: +b:11010100100011010:X: +b:11010100100011011:": +b:11010100100110001:k: +b:110101001001100000:STOP: +b:1101010010011000010:ESCAPE: +b:1101010010011000011:!: +c:00:o: +c:011:a: +c:100:e: +c:110:h: +c:0100:i: +c:0101:l: +c:1011:k: +c:1111:t: +c:10100:u: +c:10101:r: +c:11100: : +c:1110100:y: +c:1110101:c: +c:11101101:s: +c:11101110:.: +c:111011111:,: +c:1110110001:G: +c:11101100001:n: +c:11101100110:D: +c:11101111000:K: +c:11101111011:C: +c:111011000000:0x3a: +c:111011001001:-: +c:111011001010:A: +c:111011001110:L: +c:111011001111:': +c:111011110010:d: +c:111011110100:q: +c:111011110101:I: +c:1110110010000:N: +c:1110110010001:z: +c:1110111100111:F: +c:11101100000101:w: +c:11101100000111:E: +c:11101100101100:?: +c:11101111001100:M: +c:11101111001101:S: +c:111011000001000:b: +c:111011000001001:ESCAPE: +c:111011000001100:!: +c:111011001011010:Q: +c:111011001011011:P: +c:111011001011100:;: +c:111011001011110:B: +c:1110110000011011:V: +c:1110110010111011:m: +c:1110110010111110:/: +c:11101100000110101:): +c:11101100101110100:U: +c:11101100101111110:W: +c:111011000001101000:p: +c:111011000001101001:H: +c:111011001011101010:STOP: +c:111011001011111110:R: +c:111011001011111111:T: +c:1110110010111010110:]: +c:1110110010111010111:[: +d:0: : +d:101:e: +d:1100:a: +d:1110:i: +d:10001:.: +d:10011:o: +d:11011:r: +d:11111:s: +d:100001:d: +d:100101:l: +d:110100:u: +d:111101:y: +d:1001001:-: +d:1101011:v: +d:1111000:g: +d:1111001:,: +d:10000000:h: +d:10000001:0x3a: +d:10000010:m: +d:10010000:w: +d:10010001:n: +d:11010101:': +d:100000111:f: +d:1101010001:?: +d:1101010010:b: +d:1101010011:c: +d:10000011000:!: +d:11010100000:p: +d:11010100001:t: +d:100000110010:STOP: +d:100000110011:): +d:100000110100:k: +d:100000110101:;: +d:100000110111:/: +d:10000011011010:": +d:10000011011011:j: +d:100000110110000:z: +d:100000110110011:q: +d:1000001101100011:@: +d:1000001101100100:ESCAPE: +d:10000011011000101:C: +d:10000011011001010:]: +d:100000110110001000:Z: +d:100000110110001001:[: +d:100000110110010110:T: +d:100000110110010111:`: +e:10: : +e:010:s: +e:110:r: +e:0000:d: +e:0011:a: +e:1111:n: +e:00010:c: +e:01100:e: +e:01101:w: +e:01111:t: +e:11100:l: +e:000110:x: +e:001000:v: +e:001001:i: +e:001010:y: +e:011100:m: +e:111010:.: +e:0001110:f: +e:0010111:b: +e:0111010:,: +e:1110110:p: +e:00011110:-: +e:00011111:h: +e:00101100:k: +e:01110110:': +e:11101110:g: +e:11101111:o: +e:001011011:0x3a: +e:0010110100:): +e:0010110101:q: +e:0111011101:?: +e:0111011110:u: +e:01110111000:z: +e:01110111110:!: +e:011101111110:STOP: +e:011101111111:j: +e:0111011100110:/: +e:01110111001001:4: +e:01110111001010:B: +e:01110111001110:]: +e:01110111001111:;: +e:011101110010000:": +e:0111011100100011:D: +e:0111011100101100:ESCAPE: +e:0111011100101110:@: +e:01110111001000100:T: +e:01110111001000101:C: +e:01110111001011011:[: +e:01110111001011111:L: +e:011101110010110100:V: +e:011101110010110101:G: +e:011101110010111100:1: +e:01110111001011110101:E: +e:011101110010111101000:2: +e:011101110010111101001:N: +e:011101110010111101100:F: +e:011101110010111101101:A: +e:0111011100101111011100:\: +e:0111011100101111011101:P: +e:0111011100101111011110:M: +e:0111011100101111011111:H: +f:00:o: +f:10: : +f:010:i: +f:110:r: +f:0111:a: +f:1110:e: +f:01100:t: +f:11110:u: +f:11111:f: +f:011011:l: +f:01101000:s: +f:01101001:y: +f:011010110:.: +f:0110101000:?: +f:0110101011:,: +f:0110101111:-: +f:01101010011:0x3a: +f:01101010100:': +f:01101010101:g: +f:011010100100:m: +f:011010111000:ESCAPE: +f:011010111010:b: +f:011010111011:n: +f:0110101001011:c: +f:0110101110010:!: +f:01101011100110:): +f:01101011100111:w: +f:011010100101001:p: +f:011010100101010:/: +f:0110101001010000:h: +f:0110101001010110:;: +f:01101010010100010:STOP: +f:01101010010100011:d: +f:01101010010101110:k: +f:01101010010101111:v: +g:11: : +g:000:a: +g:010:h: +g:101:e: +g:0011:u: +g:0110:r: +g:1000:i: +g:01110:l: +g:10010:s: +g:10011:o: +g:001001:,: +g:001010:n: +g:011110:g: +g:011111:.: +g:0010110:y: +g:00100001:': +g:00100010:-: +g:00100011:0x3a: +g:001000000:d: +g:001011101:b: +g:001011110:t: +g:001011111:w: +g:0010000010:?: +g:0010000011:m: +g:00101110001:!: +g:00101110011:f: +g:001011100001:;: +g:001011100101:STOP: +g:0010111000000:k: +g:0010111001000:p: +g:00101110000010:): +g:00101110000011:": +g:001011100100101:c: +g:001011100100111:/: +g:0010111001001000:ESCAPE: +g:0010111001001100:]: +g:0010111001001101:z: +g:00101110010010010:`: +g:001011100100100110:v: +g:001011100100100111:@: +h:0:e: +h:100:o: +h:101:i: +h:110: : +h:1111:a: +h:111001:r: +h:111011:t: +h:11100001:y: +h:11100011:l: +h:11101000:.: +h:11101001:n: +h:11101011:u: +h:111000000:d: +h:111000100:s: +h:111010100:,: +h:1110000011:w: +h:1110001010:': +h:1110001011:-: +h:11101010101:m: +h:11101010110:0x3a: +h:11101010111:b: +h:111000001001:c: +h:111000001011:?: +h:111010101000:!: +h:1110000010000:): +h:1110000010100:h: +h:1110000010101:k: +h:1110101010011:f: +h:11101010100101:g: +h:111000001000100:p: +h:111000001000101:;: +h:111000001000110:/: +h:111000001000111:STOP: +h:111010101001001:v: +h:1110101010010000:q: +h:11101010100100010:ESCAPE: +h:111010101001000110:": +h:11101010100100011100:z: +h:11101010100100011101:j: +h:11101010100100011110:]: +h:11101010100100011111:*: +i:10:n: +i:000:t: +i:010:s: +i:0011:l: +i:1100:o: +i:1101:c: +i:1111:e: +i:00100:a: +i:01100:m: +i:01101:d: +i:01110:v: +i:11100:g: +i:11101:r: +i:001010:p: +i:011110:f: +i:0010110:z: +i:0111110: : +i:00101111:b: +i:01111110:k: +i:001011100:-: +i:001011101:x: +i:0111111100:u: +i:0111111110:q: +i:01111111010:.: +i:01111111110:,: +i:011111110111:w: +i:011111111111:': +i:0111111101101:i: +i:0111111111101:j: +i:01111111011001:0x3a: +i:01111111111000:h: +i:011111110110000:/: +i:011111111110011:y: +i:0111111101100011:?: +i:0111111111100100:P: +i:01111111011000101:R: +i:01111111111001011:!: +i:011111111110010100:): +i:011111111110010101:S: +i:0111111101100010000:STOP: +i:0111111101100010001:C: +i:0111111101100010010:ESCAPE: +i:01111111011000100110:D: +i:01111111011000100111:;: +j:0:o: +j:11:u: +j:101:a: +j:1001:e: +j:10000:i: +j:100011:y: +j:1000101: : +j:10001001:.: +j:100010000:': +j:1000100011:t: +j:10001000100:n: +j:100010001011:s: +j:1000100010100:ESCAPE: +j:1000100010101:h: +k:10: : +k:11:e: +k:000:s: +k:011:i: +k:0010:.: +k:01001:y: +k:001100:': +k:001101:a: +k:001110:p: +k:001111:,: +k:010100:l: +k:010101:f: +k:010110:n: +k:0100000:/: +k:0100010:-: +k:0100011:o: +k:01011101:0x3a: +k:010000111:b: +k:010111000:w: +k:010111001:m: +k:010111100:h: +k:010111110:u: +k:010111111:k: +k:0100001000:r: +k:0100001001:ESCAPE: +k:0100001010:?: +k:0100001100:t: +k:0100001101:g: +k:0101111011:d: +k:01000010110:j: +k:010000101110:): +k:010111101000:;: +k:010111101001:c: +k:010111101010:S: +k:0100001011110:v: +k:0100001011111:R: +k:0101111010110:!: +k:01011110101110:@: +k:010111101011110:": +k:010111101011111:STOP: +l:010:a: +l:011:i: +l:100:l: +l:110:e: +l:111: : +l:0000:u: +l:0001:d: +l:0010:y: +l:1011:o: +l:10100:s: +l:001100:.: +l:001110:t: +l:0011010:v: +l:0011110:f: +l:1010100:m: +l:1010101:k: +l:1010110:p: +l:00110111:c: +l:00111110:-: +l:10101111:,: +l:001101101:0x3a: +l:001111111:b: +l:101011100:': +l:0011011000:r: +l:0011011001:h: +l:0011111100:n: +l:0011111101:g: +l:1010111011:w: +l:10101110100:?: +l:1010111010100:!: +l:1010111010110:z: +l:10101110101011:/: +l:101011101010100:;: +l:101011101011100:E: +l:101011101011101:*: +l:101011101011111:STOP: +l:1010111010101011:ESCAPE: +l:1010111010111100:): +l:10101110101010100:@: +l:10101110101010101:j: +l:10101110101111010:": +l:101011101011110110:[: +l:101011101011110111:]: +m:00:a: +m:01:e: +m:111: : +m:1001:p: +m:1011:o: +m:1100:i: +m:10000:.: +m:10001:s: +m:11010:u: +m:11011:m: +m:101001:y: +m:101011:b: +m:1010000:,: +m:1010100:/: +m:10100010:]: +m:101000110:0x3a: +m:101010100:': +m:1010001111:r: +m:1010101011:f: +m:1010101100:l: +m:1010101110:n: +m:10100011100:?: +m:10100011101:!: +m:10101010100:STOP: +m:10101010101:w: +m:10101011011:h: +m:10101011110:-: +m:101010111110:4: +m:1010101101010:t: +m:1010101101011:@: +m:1010101111110:;: +m:1010101111111:c: +m:10101011010000:): +m:10101011010001:ESCAPE: +m:10101011010011:d: +m:101010110100101:g: +m:10101011010010000:[: +m:10101011010010001:v: +m:10101011010010010:k: +m:10101011010010011:z: +n:01: : +n:001:t: +n:100:g: +n:111:d: +n:0000:s: +n:1010:a: +n:1101:e: +n:10110:c: +n:11000:i: +n:000111:.: +n:101111:n: +n:110011:o: +n:0001001:u: +n:0001011:v: +n:0001100:f: +n:1011100:k: +n:1011101:': +n:1100100:y: +n:1100101:,: +n:00010000:m: +n:00010100:l: +n:00010101:-: +n:000100011:w: +n:000110101:0x3a: +n:0001000101:z: +n:0001101000:h: +n:0001101100:b: +n:0001101101:j: +n:0001101110:r: +n:00010001000:p: +n:00011010011:x: +n:00011011111:?: +n:000100010011:;: +n:000110100101:): +n:000110111100:!: +n:000110111101:q: +n:0001000100100:/: +n:0001000100101:STOP: +n:0001101001000:ESCAPE: +n:00011010010010:B: +n:0001101001001100:]: +n:0001101001001101:": +n:0001101001001110:@: +n:0001101001001111:*: +o:001:u: +o:011: : +o:100:r: +o:111:n: +o:0000:l: +o:1100:m: +o:1101:f: +o:00010:v: +o:01000:s: +o:01001:p: +o:10100:t: +o:10101:o: +o:10111:w: +o:000110:k: +o:000111:i: +o:010100:g: +o:010111:c: +o:101101:d: +o:0101011:e: +o:0101100:y: +o:0101101:a: +o:1011001:b: +o:01010101:h: +o:10110000:.: +o:010101000:-: +o:010101001:,: +o:1011000101:': +o:1011000111:x: +o:10110001001:0x3a: +o:10110001101:z: +o:101100010001:?: +o:101100011001:j: +o:1011000100000:!: +o:1011000110001:q: +o:10110001000010:J: +o:10110001100000:/: +o:10110001100001:): +o:1011000100001101:;: +o:1011000100001110:G: +o:10110001000011000:": +o:10110001000011110:ESCAPE: +o:101100010000110010:]: +o:101100010000110011:@: +o:1011000100001111100:4: +o:1011000100001111101:STOP: +o:1011000100001111110:B: +o:10110001000011111110:O: +o:10110001000011111111:C: +p:001:l: +p:010: : +p:011:o: +p:101:r: +p:111:e: +p:0000:p: +p:1100:a: +p:1101:i: +p:00011:t: +p:10000:u: +p:10001:h: +p:10010:s: +p:000101:m: +p:0001001:d: +p:1001101:y: +p:1001110:.: +p:1001111:,: +p:00010000:-: +p:000100011:?: +p:100110001:0x3a: +p:1001100100:': +p:1001100101:]: +p:1001100110:+: +p:1001100111:b: +p:00010001001:f: +p:00010001010:k: +p:00010001011:!: +p:10011000001:c: +p:10011000010:n: +p:10011000011:w: +p:000100010000:STOP: +p:000100010001:;: +p:100110000001:/: +p:1001100000001:g: +p:10011000000001:): +p:100110000000001:": +p:1001100000000001:S: +p:10011000000000000:ESCAPE: +p:10011000000000001:B: +q:1:u: +q:000:,: +q:001:.: +q:011: : +q:01001:b: +q:01010:': +q:01011:i: +q:010001:a: +q:01000000:?: +q:01000001:0x3a: +q:01000011:): +q:010000100:ESCAPE: +q:010000101:w: +r:000:a: +r:001:o: +r:100:i: +r:110: : +r:111:e: +r:0100:s: +r:0101:t: +r:01110:d: +r:10100:n: +r:10101:y: +r:011010:u: +r:011011:m: +r:011111:k: +r:101101:l: +r:101110:.: +r:101111:r: +r:0110000:f: +r:0110010:,: +r:0110011:v: +r:1011000:c: +r:1011001:g: +r:01100011:': +r:01111000:-: +r:01111001:b: +r:01111011:p: +r:011000101:0x3a: +r:011110100:w: +r:0111101010:?: +r:0111101011:h: +r:01100010010:!: +r:011000100001:q: +r:011000100010:j: +r:011000100011:STOP: +r:011000100110:/: +r:0110001000001:;: +r:0110001001111:): +r:01100010011100:8: +r:01100010011101:z: +r:011000100000001:": +r:011000100000011:]: +r:0110001000000000:T: +r:0110001000000100:x: +r:0110001000000101:ESCAPE: +r:01100010000000011:Z: +r:011000100000000100:*: +r:0110001000000001010:D: +r:0110001000000001011:B: +s:0: : +s:101:t: +s:1000:.: +s:1110:e: +s:10011:,: +s:11000:o: +s:11001:s: +s:11110:h: +s:11111:i: +s:100101:c: +s:110100:u: +s:110110:p: +s:1101111:a: +s:10010001:n: +s:10010011:m: +s:11010100:y: +s:11010110:0x3a: +s:11011100:l: +s:11011101:k: +s:100100001:b: +s:100100100:f: +s:110101010:w: +s:110101111:': +s:1001000000:!: +s:1001000001:g: +s:1001001010:r: +s:1101010110:?: +s:1101010111:-: +s:1101011101:q: +s:11010111001:d: +s:100100101100:/: +s:100100101101:): +s:100100101111:STOP: +s:110101110000:]: +s:110101110001:;: +s:1001001011101:v: +s:100100101110001:": +s:100100101110011:z: +s:1001001011100000:j: +s:1001001011100001:ESCAPE: +s:1001001011100100:[: +s:10010010111001011:@: +s:100100101110010101:T: +s:1001001011100101000:x: +s:1001001011100101001:`: +t:10:h: +t:000:i: +t:010:o: +t:011:e: +t:111: : +t:0010:a: +t:00110:u: +t:11001:r: +t:11011:s: +t:001111:.: +t:110001:t: +t:110100:y: +t:0011101:c: +t:1100001:l: +t:00111001:-: +t:11000000:v: +t:11000001:m: +t:11010101:w: +t:11010110:,: +t:11010111:': +t:001110000:n: +t:0011100011:?: +t:1101010001:b: +t:1101010010:0x3a: +t:00111000100:!: +t:11010100000:z: +t:11010100110:d: +t:11010100111:f: +t:110101000010:x: +t:0011100010100:g: +t:0011100010101:;: +t:1101010000110:p: +t:00111000101100:P: +t:00111000101101:STOP: +t:00111000101111:): +t:11010100001110:/: +t:11010100001111:k: +t:0011100010111000:@: +t:0011100010111010:E: +t:00111000101110011:]: +t:00111000101110111:": +t:001110001011100100:F: +t:001110001011101100:ESCAPE: +t:0011100010111001010:j: +t:0011100010111011010:1: +t:0011100010111011011:[: +t:00111000101110010110:\: +t:001110001011100101110:K: +t:001110001011100101111:C: +u:011:t: +u:101:n: +u:110:s: +u:111:r: +u:0001:d: +u:0010:e: +u:0101:l: +u:1000:p: +u:00000:b: +u:00001: : +u:00110:i: +u:01000:a: +u:01001:g: +u:10010:c: +u:10011:m: +u:0011100:y: +u:00111010:z: +u:00111100:': +u:00111110:f: +u:00111111:k: +u:001111010:,: +u:0011101101:-: +u:0011101110:o: +u:0011110110:.: +u:0011110111:x: +u:00111011000:w: +u:00111011110:0x3a: +u:001110110010:q: +u:001110111110:h: +u:001110111111:v: +u:0011101100110:j: +u:001110110011100:u: +u:001110110011101:?: +u:0011101100111110:/: +u:0011101100111111:!: +u:00111011001111001:ESCAPE: +u:001110110011110000:\: +u:001110110011110001:STOP: +u:001110110011110100:;: +u:001110110011110110:J: +u:001110110011110111:): +u:0011101100111101010:T: +u:0011101100111101011:]: +v:1:e: +v:01:i: +v:000:a: +v:0011:o: +v:00101:.: +v:001001: : +v:00100001:': +v:00100011:y: +v:001000000:u: +v:001000100:s: +v:0010001010:r: +v:00100000100:-: +v:00100000110:,: +v:00100010110:n: +v:001000001010:g: +v:001000001011:v: +v:001000001111:l: +v:001000101110:@: +v:001000101111:0x3a: +v:0010000011101:k: +v:00100000111000:b: +v:001000001110010:t: +v:0010000011100110:d: +v:00100000111001110:/: +v:001000001110011110:ESCAPE: +v:001000001110011111:1: +w:00:i: +w:011:e: +w:100: : +w:101:s: +w:110:h: +w:0101:a: +w:1111:o: +w:01000:.: +w:01001:w: +w:11100:n: +w:1110110:r: +w:11101010:,: +w:11101011:l: +w:11101111:y: +w:111010010:c: +w:111011101:b: +w:1110100010:0x3a: +w:1110100110:m: +w:1110100111:': +w:1110111000:d: +w:11101000000:f: +w:11101000001:]: +w:11101000010:!: +w:11101000111:k: +w:11101110010:-: +w:111010000111:g: +w:111010001100:?: +w:111010001101:t: +w:111011100111:p: +w:1110100001100:STOP: +w:1110100001101:u: +w:1110111001101:): +w:11101110011001:j: +w:111011100110001:q: +w:1110111001100000:/: +w:11101110011000010:;: +w:111011100110000111:[: +w:1110111001100001100:ESCAPE: +w:1110111001100001101:B: +x:01:p: +x:11:t: +x:101: : +x:0000:i: +x:0010:a: +x:1000:c: +x:00010:u: +x:00111:e: +x:10011:-: +x:000110:f: +x:001101:o: +x:100100:.: +x:0001110:,: +x:0001111:m: +x:0011001:y: +x:00110001:9: +x:10010101:': +x:10010110:q: +x:001100000:s: +x:100101000:0x3a: +x:100101110:h: +x:0011000011:?: +x:1001010010:l: +x:1001011110:w: +x:00110000100:A: +x:10010100110:x: +x:10010100111:b: +x:10010111111:): +x:001100001011:/: +x:0011000010100:4: +x:0011000010101:!: +x:1001011111000:g: +x:1001011111001:STOP: +x:1001011111011:;: +x:100101111101001:v: +x:100101111101010:F: +x:100101111101011:E: +x:1001011111010000:ESCAPE: +x:1001011111010001:C: +y:1: : +y:000:o: +y:0011:s: +y:0101:.: +y:01001:,: +y:01100:e: +y:01110:': +y:001001:a: +y:001010:i: +y:001011:d: +y:010001:n: +y:011011:0x3a: +y:011111:l: +y:0010000:w: +y:0110100:t: +y:0110101:m: +y:0111101:-: +y:00100011:b: +y:01000000:?: +y:01000001:r: +y:01000010:p: +y:01000011:f: +y:01111001:c: +y:0010001001:;: +y:0010001010:J: +y:0111100000:h: +y:0111100001:!: +y:0111100011:g: +y:00100010000:): +y:00100010111:/: +y:01111000101:]: +y:001000100011:k: +y:001000101100:ESCAPE: +y:001000101101:u: +y:011110001001:STOP: +y:0010001000100:z: +y:0111100010001:": +y:00100010001011:j: +y:01111000100001:2: +y:001000100010100:y: +y:001000100010101:x: +y:0111100010000000:v: +y:0111100010000001:T: +y:0111100010000010:E: +y:0111100010000011:P: +z:10:e: +z:001:a: +z:011:z: +z:110: : +z:111:i: +z:0001:l: +z:0100:y: +z:01010:o: +z:000000:c: +z:000010:,: +z:000011:.: +z:010110:w: +z:0000010:': +z:00000110:0x3a: +z:00000111:t: +z:01011101:m: +z:010111000:k: +z:010111100:-: +z:010111101:u: +z:010111111:b: +z:01011100100:s: +z:01011100101:/: +z:01011100111:d: +z:01011111001:p: +z:01011111011:?: +z:010111001100:h: +z:010111110000:@: +z:010111110100:): +z:0101110011010:!: +z:0101111100011:v: +z:0101111101010:g: +z:01011100110110:f: +z:01011100110111:r: +z:01011111000100:q: +z:01011111000101:n: +z:01011111010110:ESCAPE: +z:01011111010111:]: +{:0:ESCAPE: +{:1:ESCAPE: +|:0:ESCAPE: +|:1:ESCAPE: +}:0:ESCAPE: +}:1:STOP: +~:0:ESCAPE: +~:1:ESCAPE: +0x7f:0:ESCAPE: +0x7f:1:ESCAPE: +START:010:A: +START:100:C: +START:111:T: +START:0001:J: +START:0011:D: +START:1010:S: +START:00000:H: +START:00100:I: +START:00101:R: +START:01101:F: +START:01110:.: +START:01111:W: +START:10111:M: +START:11000:B: +START:11001:P: +START:11011:N: +START:000010:O: +START:011001:[: +START:101101:L: +START:110101:E: +START:0000110:K: +START:1101000:Y: +START:1101001:G: +START:00001110:2: +START:01100000:p: +START:01100001:b: +START:01100010:U: +START:01100011:(: +START:10110000:1: +START:10110011:V: +START:000011110:Q: +START:101100010:3: +START:0000111110:9: +START:0000111111:8: +START:1011000110:6: +START:1011000111:5: +START:1011001000:Z: +START:1011001001:7: +START:1011001010:4: +START:101100101110:X: +START:101100101111: : +START:1011001011001:w: +START:1011001011010:': +START:1011001011011:": +START:10110010110000:t: +START:101100101100010:a: +START:1011001011000110:`: +START:10110010110001110:ESCAPE: +START:10110010110001111:m: +ESCAPE:0:ESCAPE: +ESCAPE:1:ESCAPE: +STOP:0:ESCAPE: +STOP:1:ESCAPE: +0x03:0:ESCAPE: +0x03:1:ESCAPE: +0x04:0:ESCAPE: +0x04:1:ESCAPE: +0x05:0:ESCAPE: +0x05:1:ESCAPE: +0x06:0:ESCAPE: +0x06:1:ESCAPE: +0x07:0:ESCAPE: +0x07:1:ESCAPE: +0x08:0:ESCAPE: +0x08:1:ESCAPE: +0x09:0:ESCAPE: +0x09:1:ESCAPE: +0x0a:0:ESCAPE: +0x0a:1:ESCAPE: +0x0b:0:ESCAPE: +0x0b:1:ESCAPE: +0x0c:0:ESCAPE: +0x0c:1:ESCAPE: +0x0d:0:ESCAPE: +0x0d:1:ESCAPE: +0x0e:0:ESCAPE: +0x0e:1:ESCAPE: +0x0f:0:ESCAPE: +0x0f:1:ESCAPE: +0x10:0:ESCAPE: +0x10:1:ESCAPE: +0x11:0:ESCAPE: +0x11:1:ESCAPE: +0x12:0:ESCAPE: +0x12:1:ESCAPE: +0x13:0:ESCAPE: +0x13:1:ESCAPE: +0x14:0:ESCAPE: +0x14:1:ESCAPE: +0x15:0:ESCAPE: +0x15:1:ESCAPE: +0x16:0:ESCAPE: +0x16:1:ESCAPE: +0x17:0:ESCAPE: +0x17:1:ESCAPE: +0x18:0:ESCAPE: +0x18:1:ESCAPE: +0x19:0:ESCAPE: +0x19:1:ESCAPE: +0x1a:0:ESCAPE: +0x1a:1:ESCAPE: +0x1b:0:ESCAPE: +0x1b:1:ESCAPE: +0x1c:0:ESCAPE: +0x1c:1:ESCAPE: +0x1d:0:ESCAPE: +0x1d:1:ESCAPE: +0x1e:0:ESCAPE: +0x1e:1:ESCAPE: +0x1f:0:ESCAPE: +0x1f:1:ESCAPE: + :010:a: + :100:t: + :0001:o: + :0010:s: + :00110:d: + :01100:[: + :01111:p: + :10101:b: + :11001:c: + :11010:h: + :11100:w: + :11101:i: + :11111:f: + :000000:A: + :000011:M: + :001111:e: + :011100:B: + :011101:C: + :101000:T: + :101101:S: + :101110:g: + :110000:r: + :110110:n: + :110111:l: + :111101:m: + :0000011:v: + :0000100:G: + :0000101:N: + :0011101:y: + :0110101:H: + :0110111:L: + :1010010:J: + :1010011:F: + :1011001:R: + :1011110:u: + :1100010:D: + :1100011:W: + :1111001:P: + :00000100:k: + :00000101:O: + :01101000:-: + :01101101:1: + :10110001:K: + :10111110:j: + :11110000:I: + :11110001:E: + :001110010:q: + :001110011:U: + :011010010:V: + :011011000:Y: + :011011001: : + :101100001:2: + :101111110:STOP: + :0011100000:3: + :0011100001:8: + :0011100010:6: + :0110100111:5: + :1011000000:(: + :1011111110:7: + :00111000110:0: + :01101001100:': + :01101001101:9: + :10110000010:Z: + :10111111110:4: + :10111111111:Q: + :001110001111:X: + :1011000001100:ESCAPE: + :1011000001101:.: + :1011000001110:&: + :00111000111000:\: + :00111000111010:@: + :00111000111011:`: + :10110000011110:": + :10110000011111:z: + :001110001110011:$: + :0011100011100100:+: + :00111000111001011:x: + :001110001110010101:]: + :0011100011100101000:/: + :0011100011100101001:?: +!:1: : +!:01:STOP: +!:001:.: +!:0000:0x3a: +!:00011:[: +!:0001001:": +!:0001010:/: +!:0001011:!: +!:00010000:): +!:000100010:': +!:0001000111:?: +!:00010001100:ESCAPE: +!:00010001101:]: +":11: : +":001:.: +":0000:p: +":0101:B: +":0111:T: +":1000:i: +":00010:f: +":00011:W: +":01000:S: +":01100:t: +":01101:C: +":10100:STOP: +":10111:,: +":010010:J: +":100100:m: +":101010:n: +":101011:I: +":0100110:E: +":0100111:D: +":1001010:w: +":1001011:g: +":1001100:b: +":1001101:L: +":1001110:-: +":1011000:c: +":1011001:H: +":10011110:P: +":10110100:r: +":10110111:K: +":100111111:l: +":101101010:Y: +":101101011:Q: +":101101100:G: +":101101101:A: +":1001111100:ESCAPE: +":1001111101:a: +#:0:ESCAPE: +#:1:ESCAPE: +$:0:1: +$:11:3: +$:100:4: +$:1011:2: +$:10101:7: +$:101001:5: +$:1010000:ESCAPE: +$:1010001:9: +%:1: : +%:00:ESCAPE: +%:01:,: +&:1: : +&:01:w: +&:001:B: +&:0000:E: +&:000100:2: +&:000110:A: +&:000111:R: +&:00010100:O: +&:00010101:4: +&:00010111:J: +&:000101100:ESCAPE: +&:000101101:P: +':1:s: +':001:t: +':010: : +':0000:l: +':01101:r: +':000100:n: +':000101:.: +':000110:C: +':011000:B: +':011101:A: +':0111000:d: +':0111100:v: +':00011100:S: +':00011111:p: +':01100101:D: +':01111011:i: +':01111100:c: +':01111101:m: +':01111111:,: +':000111010:f: +':000111011:g: +':011001000:F: +':011001001:h: +':011001101:H: +':011001110:N: +':011100101:R: +':011100110:STOP: +':011100111:T: +':011110101:G: +':011111101:L: +':0001111000:o: +':0001111001:K: +':0001111011:a: +':0110011001:u: +':0110011111:O: +':0111001001:I: +':0111101000:w: +':0111101001:b: +':0111111001:e: +':00011110101:?: +':01100110000:E: +':01100110001:7: +':01110010000:P: +':000111101001:W: +':011001111001:0x3a: +':011001111010:!: +':011100100011:J: +':011111100001:q: +':011111100011:M: +':0001111010001:V: +':0110011110001:9: +':0110011110111:y: +':0111001000100:8: +':0111001000101:5: +':0111111000000:6: +':0111111000101:k: +':00011110100000:2: +':00011110100001:0: +':01100111100001:Y: +':01100111101100:): +':01111110000010:j: +':01111110000011:Q: +':011001111000000:-: +':011001111000001:': +':011001111011011:z: +':011111100010000:X: +':011111100010001:U: +':011111100010010:4: +':011111100010011:3: +':0110011110110100:ESCAPE: +':0110011110110101:1: +(:01:1: +(:000:P: +(:101:t: +(:1000:2: +(:1101:5: +(:1110:N: +(:00111:T: +(:10010:p: +(:11111:c: +(:001001:a: +(:001010:S: +(:001100:R: +(:100111:e: +(:111100:J: +(:111101:A: +(:0010110:D: +(:0011011:K: +(:1001100:v: +(:1001101:s: +(:1100000:b: +(:1100010:G: +(:1100011:8: +(:1100100:M: +(:1100101:H: +(:1100110:C: +(:00100000:m: +(:00100010:o: +(:00100011:E: +(:00101110:W: +(:11000011:g: +(:11001110:L: +(:001000010:d: +(:001011111:U: +(:001101000:F: +(:001101010:f: +(:110000100:w: +(:110000101:B: +(:110011111:n: +(:0010000110:l: +(:0010000111:9: +(:0010111100:4: +(:0010111101:I: +(:0011010010:3: +(:0011010111:h: +(:1100111101:i: +(:00110100110:Z: +(:00110100111:V: +(:00110101100: : +(:11001111000:k: +(:001101011011:O: +(:110011110010:': +(:0011010110100:ESCAPE: +(:0011010110101:u: +(:1100111100110:X: +(:1100111100111:7: +):0: : +):11:.: +):101:STOP: +):1001:,: +):10000:0x3a: +):100011:;: +):1000101:!: +):10001001:(: +):1000100000:ESCAPE: +):1000100001:o: +):1000100010:?: +):1000100011:): +*:0:*: +*:100:s: +*:101: : +*:1100:m: +*:1110:t: +*:11010:g: +*:11011:k: +*:11111:d: +*:111101:y: +*:1111001:e: +*:11110000:i: +*:111100010:ESCAPE: +*:111100011:n: ++:1:n: ++:00:ESCAPE: ++:01: : +,:1: : +,:01:S: +,:001:0: +,:0001:A: +,:00000:5: +,:0000110:b: +,:0000111:3: +,:00001000:2: +,:00001001:": +,:00001011:1: +,:0000101000:Q: +,:0000101010:': +,:00001010111:4: +,:000010100100:T: +,:000010100101:B: +,:000010100110:7: +,:000010100111:6: +,:000010101100:STOP: +,:0000101011010:ESCAPE: +,:0000101011011:i: +-:00: : +-:0100:t: +-:0101:b: +-:0110:w: +-:0111:u: +-:1001:o: +-:1010:s: +-:1011:f: +-:10000:c: +-:11011:l: +-:11101:d: +-:100010:9: +-:110000:h: +-:110010:1: +-:110011:y: +-:110101:r: +-:111000:a: +-:111100:m: +-:111110:p: +-:1000110:S: +-:1101000:e: +-:1101001:i: +-:1111011:n: +-:10001110:C: +-:11000101:W: +-:11000111:g: +-:11100101:J: +-:11100110:D: +-:11110101:2: +-:11111100:7: +-:11111110:G: +-:11111111:O: +-:100011111:H: +-:110001000:A: +-:110001100:6: +-:110001101:B: +-:111001111:M: +-:111101000:E: +-:111101001:L: +-:111111010:U: +-:111111011:k: +-:1000111100:F: +-:1100010010:j: +-:1100010011:P: +-:1110010001:q: +-:1110010010:5: +-:1110010011:T: +-:1110011101:I: +-:10001111011:K: +-:11100100000:v: +-:11100100001:Z: +-:11100111001:N: +-:100011110101:R: +-:111001110001:Y: +-:1000111101001:0: +-:10001111010000:4: +-:10001111010001:z: +-:11100111000001:V: +-:11100111000010:3: +-:11100111000011:8: +-:111001110000001:Q: +-:1110011100000000:': +-:11100111000000010:ESCAPE: +-:11100111000000011:x: +.:1: : +.:01:STOP: +.:0011:.: +.:00010:i: +.:00100:0: +.:00101:c: +.:000001:u: +.:0000000:a: +.:0000001:[: +.:0001101:3: +.:00001000:4: +.:00001110:H: +.:00011000:S: +.:00011001:W: +.:00011100:o: +.:00011110:1: +.:000010100:5: +.:000010101:L: +.:000010111:p: +.:000011000:T: +.:000011001:A: +.:000011010:M: +.:000011110:C: +.:000011111:2: +.:000111011:D: +.:000111110:B: +.:0000100100:N: +.:0000100110:t: +.:0000100111:J: +.:0000101101:R: +.:0000110111:P: +.:0001110101:s: +.:0001111111:I: +.:00001011000:r: +.:00001101100:V: +.:00011101000:w: +.:00011101001:F: +.:00011111101:G: +.:000010010100:E: +.:000010010101:0x3a: +.:000010110010:h: +.:000011011010:,: +.:000111111000:': +.:0000100101101:b: +.:0000100101110:K: +.:0000100101111:Y: +.:0000101100111:O: +.:0000110110110:-: +.:0001111110010:f: +.:0001111110011:(: +.:00001011001100:": +.:00001101101110:y: +.:000010010110000:?: +.:000010010110001:m: +.:000010010110010:Q: +.:000011011011110:*: +.:000011011011111:&: +.:0000100101100110:U: +.:0000100101100111:;: +.:0000101100110100:8: +.:0000101100110101:6: +.:0000101100110111:k: +.:00001011001101100:d: +.:000010110011011010:ESCAPE: +.:000010110011011011:n: +/:01:c: +/:110:1: +/:111:e: +/:0000:5: +/:0010:8: +/:00010:T: +/:00011:f: +/:00110:B: +/:00111:2: +/:10001:3: +/:10010:7: +/:10100:6: +/:10110:a: +/:101111:4: +/:1000000:F: +/:1000010:s: +/:1000011:M: +/:1001100:H: +/:1001110:D: +/:1001111:A: +/:1010101:S: +/:10000011:m: +/:10011010:W: +/:10101000:G: +/:10101001:U: +/:10101100:d: +/:10101101:O: +/:10101110:N: +/:10111001:C: +/:10111011:P: +/:100110110:L: +/:101011110: : +/:101011111:I: +/:101110000:E: +/:101110001:R: +/:101110100:K: +/:101110101:t: +/:1000001001:J: +/:1000001011:9: +/:10000010000:v: +/:10000010001:p: +/:10000010100:h: +/:10011011101:o: +/:10011011110:Q: +/:10011011111:0: +/:100000101010:l: +/:100000101011:i: +/:100110111000:V: +/:1001101110011:y: +/:10011011100100:ESCAPE: +/:10011011100101:g: +0:0:0: +0:111: : +0:1001:a: +0:1011:p: +0:10001:s: +0:11000:.: +0:11001:8: +0:11011:,: +0:100000:4: +0:100001:t: +0:101001:5: +0:110100:6: +0:1010000:3: +0:1010001:7: +0:1010101:]: +0:1010110:-: +0:1010111:1: +0:10101000:): +0:10101001:/: +0:11010100:STOP: +0:11010101:9: +0:11010111:2: +0:110101100:%: +0:1101011010:0x3a: +0:110101101101:f: +0:110101101111:m: +0:1101011011100:y: +0:11010110110001:l: +0:11010110110010:;: +0:11010110110011:': +0:11010110111010:k: +0:11010110111011:!: +0:110101101100000:C: +0:1101011011000010:ESCAPE: +0:1101011011000011:J: +1:00:9: +1:100:1: +1:111:0: +1:0101: : +1:0111:2: +1:1011:.: +1:1100:5: +1:01000:6: +1:01001:8: +1:01101:/: +1:10100:]: +1:11010:3: +1:011001:7: +1:110110:4: +1:0110000:STOP: +1:0110001:-: +1:1010100:): +1:1010110:0x3a: +1:1010111:s: +1:1101110:,: +1:1101111:x: +1:10101010:': +1:101010110:X: +1:10101011110:t: +1:10101011111:R: +1:101010111011:;: +1:1010101110000:p: +1:1010101110001:m: +1:1010101110010:!: +1:1010101110101:&: +1:10101011100110:e: +1:101010111001110:b: +1:101010111001111:a: +1:101010111010000:D: +1:101010111010001:C: +1:101010111010010:%: +1:1010101110100110:ESCAPE: +1:1010101110100111:o: +2:11:0: +2:000: : +2:010:.: +2:100:5: +2:0011:/: +2:1011:,: +2:00100:]: +2:00101:p: +2:01101:1: +2:10101:4: +2:011000:6: +2:011001:2: +2:011100:0x3a: +2:011101:-: +2:011111:): +2:1010000:STOP: +2:1010010:8: +2:1010011:9: +2:01111000:D: +2:01111001:3: +2:01111010:t: +2:01111011:7: +2:10100010:n: +2:101000110:a: +2:1010001110:': +2:10100011111:;: +2:101000111100:s: +2:1010001111010:": +2:101000111101100:ESCAPE: +2:101000111101101:i: +2:101000111101110:W: +2:101000111101111:L: +3:00: : +3:10:0: +3:110:.: +3:1110:/: +3:01000:2: +3:01001:1: +3:01010:): +3:01100:0x3a: +3:01110:-: +3:11111:]: +3:010110:D: +3:011010:4: +3:011011:STOP: +3:011111:5: +3:111100:,: +3:0101110:7: +3:0101111:3: +3:0111101:6: +3:1111011:t: +3:01111001:B: +3:11110100:8: +3:111101010:9: +3:0111100001:;: +3:1111010110:r: +3:1111010111:s: +3:01111000000:n: +3:01111000101:b: +3:01111000110:': +3:01111000111:A: +3:011110000010:p: +3:011110000011:e: +3:0111100010000:a: +3:0111100010001:&: +3:0111100010010:%: +3:01111000100110:ESCAPE: +3:01111000100111:k: +4:01: : +4:000:4: +4:100:.: +4:110:0: +4:0010:/: +4:1010:5: +4:1011:-: +4:00110:1: +4:11101:]: +4:11110:,: +4:001110:2: +4:111001:8: +4:111110:): +4:0011110:0x3a: +4:0011111:': +4:1110000:t: +4:1110001:3: +4:1111111:STOP: +4:11111101:6: +4:1111110000:9: +4:1111110010:7: +4:11111100011:C: +4:11111100110:;: +4:111111000101:x: +4:1111110011101:m: +4:1111110011110:I: +4:11111100010000:f: +4:11111100010001:e: +4:11111100010010:b: +4:11111100010011:L: +4:11111100111000:%: +4:11111100111110:p: +4:11111100111111:c: +4:111111001110010:ESCAPE: +4:111111001110011:i: +5:00:0: +5:10: : +5:010:.: +5:0111:p: +5:1100:5: +5:01100:/: +5:11010:a: +5:11011:-: +5:11101:6: +5:011010:3: +5:111100:2: +5:111110:8: +5:111111:]: +5:0110110:0x3a: +5:1110000:): +5:1110001:s: +5:1110011:,: +5:1111010:7: +5:1111011:9: +5:01101110:4: +5:11100100:STOP: +5:11100101:t: +5:0110111110:c: +5:0110111111:1: +5:01101111001:;: +5:01101111011:m: +5:011011110000:e: +5:011011110001:': +5:011011110101:k: +5:0110111101001:l: +5:01101111010000:ESCAPE: +5:01101111010001:f: +6:00: : +6:10:.: +6:111:0: +6:0101:]: +6:01001:1: +6:01100:7: +6:01110:): +6:11000:,: +6:11001:0x3a: +6:11010:/: +6:010001:-: +6:011010:5: +6:011011:4: +6:011111:8: +6:110111:t: +6:0100000:6: +6:0111100:3: +6:0111101:2: +6:1101101:9: +6:01000010:STOP: +6:01000011:+: +6:11011000:': +6:1101100101:a: +6:1101100110:?: +6:11011001000:m: +6:11011001001:e: +6:11011001110:;: +6:1101100111100:f: +6:1101100111101:b: +6:1101100111110:M: +6:11011001111110:": +6:110110011111110:ESCAPE: +6:110110011111111:i: +7:11:.: +7:001: : +7:011:0: +7:101:-: +7:0000:8: +7:0100:7: +7:1001:]: +7:01010:/: +7:000101:6: +7:000110:2: +7:000111:1: +7:010111:t: +7:100000:9: +7:100010:): +7:100011:5: +7:0001001:3: +7:0101101:,: +7:1000010:a: +7:1000011:4: +7:00010000:STOP: +7:01011000:0x3a: +7:01011001:p: +7:0001000101:R: +7:0001000110:;: +7:00010001000:': +7:00010001111:m: +7:000100010011:f: +7:000100011100:A: +7:000100011101:?: +7:0001000100100:ESCAPE: +7:0001000100101:s: +8:01: : +8:000:4: +8:110:.: +8:0011:0: +8:1000:9: +8:1001:7: +8:1011:8: +8:1110:1: +8:00100:/: +8:10100:3: +8:11110:5: +8:101010:): +8:111110:6: +8:111111:]: +8:0010100:0x3a: +8:0010101:,: +8:1010111:t: +8:00101100:p: +8:00101101:-: +8:00101111:a: +8:10101100:c: +8:10101101:2: +8:001011101:STOP: +8:0010111001:;: +8:001011100000:l: +8:001011100001:': +8:0010111000100:f: +8:0010111000101:D: +8:0010111000110:A: +8:00101110001110:ESCAPE: +8:00101110001111:i: +9:000:5: +9:001:]: +9:111:9: +9:0101:0: +9:0110:.: +9:0111:-: +9:1000:4: +9:1001:8: +9:1011:6: +9:1100: : +9:1101:7: +9:01000:2: +9:10100:3: +9:010010:1: +9:010011:/: +9:101010:t: +9:1010111:): +9:10101100:0x3a: +9:101011010:,: +9:10101101100:p: +9:10101101101:;: +9:10101101111:STOP: +9:1010110111000:n: +9:1010110111001:m: +9:1010110111010:a: +9:10101101110111:e: +9:101011011101100:ESCAPE: +9:101011011101101:k: +0x3a:1: : +0x3a:01:0: +0x3a:001:3: +0x3a:00001:1: +0x3a:00010:T: +0x3a:00011:C: +0x3a:000001:4: +0x3a:0000000:ESCAPE: +0x3a:0000001:5: +;:0:ESCAPE: +;:1: : +<:0:ESCAPE: +<:1:ESCAPE: +=:0:ESCAPE: +=:1:ESCAPE: +>:0:ESCAPE: +>:1:ESCAPE: +?:1: : +?:01:STOP: +?:000:0x3a: +?:00100:!: +?:00110:[: +?:00111:.: +?:001010:;: +?:0010110:': +?:00101111:,: +?:001011101:/: +?:0010111000:ESCAPE: +?:0010111001:Q: +@:0:k: +@:10: : +@:111:T: +@:1101:b: +@:11000:ESCAPE: +@:11001:H: +A:01: : +A:110:D: +A:111:n: +A:0000:s: +A:0001:m: +A:0010:d: +A:1000:r: +A:1011:l: +A:00110:c: +A:10010:u: +A:10100:g: +A:001111:b: +A:100111:t: +A:101011:f: +A:1010100:w: +A:1010101:i: +A:10011001:v: +A:10011011:p: +A:001110010:h: +A:001110100:.: +A:001110111:B: +A:100110100:q: +A:0011100000:C: +A:0011100010:,: +A:0011100110:y: +A:0011101010:S: +A:0011101100:k: +A:0011101101:T: +A:1001100001:R: +A:1001100010:F: +A:1001100011:z: +A:1001101011:a: +A:00111000010:P: +A:00111000110:-: +A:00111010110:A: +A:00111010111:I: +A:10011000001:e: +A:10011010100:N: +A:10011010101:x: +A:001110000110:X: +A:001110000111:K: +A:001110001110:3: +A:001110001111:&: +A:001110011101:M: +A:001110011111:Y: +A:0011100111000:L: +A:0011100111001:W: +A:0011100111100:*: +A:1001100000000:o: +A:1001100000001:1: +A:1001100000010:': +A:1001100000011:0x3a: +A:00111001111010:j: +A:001110011110110:G: +A:0011100111101110:O: +A:00111001111011110:4: +A:001110011110111110:ESCAPE: +A:001110011110111111:E: +B:00:C: +B:010:a: +B:101:r: +B:110:e: +B:111:B: +B:0111:i: +B:1000:u: +B:1001:o: +B:01101:l: +B:01100000:T: +B:01100001:.: +B:01100011:y: +B:01100100:I: +B:01100110:h: +B:01100111: : +B:011000100:A: +B:0110001010:O: +B:01100010110:0x3a: +B:01100101000:&: +B:01100101001:3: +B:01100101010:j: +B:01100101011:M: +B:01100101110:D: +B:011000101111:W: +B:011001011000:*: +B:011001011010:,: +B:011001011011:1: +B:011001011110:ESCAPE: +B:011001011111:P: +B:0110001011100:E: +B:0110010110011:R: +B:01100010111011:w: +B:011000101110100:-: +B:011001011001001:U: +B:011001011001010:S: +B:011001011001011:F: +B:0110001011101010:X: +B:0110001011101011:V: +B:0110010110010000:Q: +B:0110010110010001:4: +C:00:h: +C:011:B: +C:100:a: +C:110:o: +C:0101:r: +C:1010:.: +C:1110: : +C:1111:l: +C:01000:': +C:10111:i: +C:010011:e: +C:101101:u: +C:0100101:y: +C:1011001:,: +C:01001001:I: +C:010010000:A: +C:1011000000:C: +C:1011000001:D: +C:1011000011:STOP: +C:1011000100:S: +C:1011000101:T: +C:1011000111:G: +C:01001000100:*: +C:01001000111:w: +C:10110001101:J: +C:010010001010:R: +C:010010001100:2: +C:010010001101:U: +C:101100001000:?: +C:101100001010:O: +C:101100001011:H: +C:101100011000:E: +C:0100100010110:z: +C:1011000010011:-: +C:1011000110011:s: +C:01001000101111:1: +C:10110000100101:!: +C:10110001100100:P: +C:010010001011101:n: +C:101100001001000:K: +C:101100001001001:7: +C:101100011001011:4: +C:0100100010111000:0x3a: +C:1011000110010100:F: +C:1011000110010101:): +C:01001000101110010:ESCAPE: +C:01001000101110011:b: +D:00:a: +D:01:,: +D:100:r: +D:101:o: +D:110:e: +D:1110:i: +D:111111:u: +D:1111001: : +D:1111011:': +D:11110000:.: +D:11110001:]: +D:11111010:y: +D:111101010:w: +D:111101011:W: +D:111110001:N: +D:111110010:C: +D:111110111:J: +D:1111010010:h: +D:1111100000:t: +D:1111100111:I: +D:1111101101:0x3a: +D:11110100001:M: +D:11110100010:&: +D:11110100011:V: +D:11111000010:-: +D:11111000011:G: +D:11111001100:O: +D:11111001101:A: +D:11111011001:S: +D:111101000000:F: +D:111101001100:*: +D:111101001101:s: +D:111101001111:d: +D:111110110000:v: +D:1111010011100:m: +D:1111010011101:j: +D:1111101100010:ESCAPE: +D:1111101100011:T: +D:11110100000110:9: +D:111101000001000:): +D:111101000001011:E: +D:111101000001110:8: +D:111101000001111:7: +D:1111010000010010:U: +D:1111010000010011:R: +D:1111010000010100:B: +D:1111010000010101:4: +E:000:p: +E:010:a: +E:011:n: +E:110:l: +E:1001:m: +E:1010:x: +E:1110:v: +E:1111:d: +E:00100:s: +E:00110:r: +E:00111:u: +E:10000:E: +E:10001: : +E:001010:.: +E:001011:i: +E:101101:0x3a: +E:1011000:y: +E:1011001:t: +E:1011100:g: +E:1011110:4: +E:101110110:w: +E:101111100:c: +E:101111110:b: +E:1011101010:R: +E:1011101011:F: +E:1011101111:C: +E:10111010001:k: +E:10111010010:f: +E:10111010011:o: +E:10111011100:U: +E:10111011101:L: +E:10111110101:e: +E:10111110110:N: +E:10111111100:h: +E:10111111101:I: +E:10111111111:D: +E:101111101000:M: +E:101111101111:': +E:101111111100:2: +E:101111111101:-: +E:1011101000011:q: +E:1011111010010:O: +E:1011111010011:A: +E:1011111011101:Z: +E:10111010000000:W: +E:10111010000001:S: +E:10111010000010:H: +E:10111010000011:9: +E:10111010000100:): +E:10111110111000:T: +E:10111110111001:,: +E:101110100001010:P: +E:1011101000010110:ESCAPE: +E:1011101000010111:z: +F:00:o: +F:10:r: +F:010:e: +F:110:i: +F:111:a: +F:0110:l: +F:01110:u: +F:0111100: : +F:0111101:O: +F:01111101:A: +F:01111111:B: +F:011111100:f: +F:0111110000:.: +F:0111110011:L: +F:01111100010:M: +F:01111100011:E: +F:01111100101:T: +F:01111110101:C: +F:01111110110:W: +F:011111001000:0x3a: +F:011111101000:U: +F:011111101001:': +F:011111101111:1: +F:0111110010010:y: +F:0111110010011:,: +F:01111110111000:-: +F:01111110111010:I: +F:011111101110011:h: +F:0111111011100100:*: +F:0111111011100101:K: +F:0111111011101100:F: +F:0111111011101101:ESCAPE: +F:01111110111011100:X: +F:01111110111011101:R: +F:01111110111011110:;: +F:01111110111011111:4: +G:00:r: +G:01:a: +G:101:o: +G:110:e: +G:1001:u: +G:1111:i: +G:10001:n: +G:11101:l: +G:100000:X: +G:1110000:y: +G:1110001: : +G:1110011:w: +G:10000101:4: +G:10000111:P: +G:11100101:h: +G:100001000:-: +G:100001100:C: +G:111001001:M: +G:1000011010:B: +G:1110010000:.: +G:1110010001:I: +G:10000100100:;: +G:10000100101:,: +G:10000100110:A: +G:10000100111:N: +G:10000110111:0x3a: +G:1000011011000:O: +G:1000011011001:L: +G:10000110110110:b: +G:100001101101000:K: +G:100001101101001:2: +G:100001101101010:1: +G:100001101101011:': +G:1000011011011100:ESCAPE: +G:1000011011011101:m: +G:1000011011011110:T: +G:1000011011011111:S: +H:00:e: +H:01:a: +H:10:o: +H:110:i: +H:1111:u: +H:11100:R: +H:1110100:P: +H:1110110:y: +H:11101011:I: +H:111011100:Q: +H:111011101:M: +H:111011110:A: +H:111011111: : +H:1110101000:S: +H:1110101001:.: +H:11101010101:G: +H:11101010110:): +H:111010101001:E: +H:1110101011100:O: +H:1110101011101:L: +H:11101010100000:1: +H:11101010100001:&: +H:11101010111100:H: +H:11101010111101:w: +H:11101010111110:v: +H:111010101000100:X: +H:111010101000101:W: +H:111010101000110:D: +H:111010101111110:s: +H:111010101111111:F: +H:1110101010001110:ESCAPE: +H:1110101010001111:r: +I:0:n: +I:110:t: +I:1001:s: +I:1111:r: +I:10000:T: +I:10101:a: +I:11100: : +I:100010:c: +I:101001:m: +I:101100:z: +I:101101:.: +I:101111:d: +I:111011:I: +I:1000111:': +I:1011101:l: +I:10100000:A: +I:10100001:v: +I:10111001:V: +I:11101001:f: +I:11101011:o: +I:100011001:C: +I:100011010:P: +I:101000100:w: +I:101000110:0x3a: +I:101110000:p: +I:111010000:R: +I:111010001:,: +I:111010101:Y: +I:1000110000:E: +I:1000110001:6: +I:1000110111:q: +I:1010001011:y: +I:1010001110:M: +I:1110101000:g: +I:1110101001:D: +I:10001101100:e: +I:10001101101:5: +I:10100010100:S: +I:10100010101:9: +I:10100011111:F: +I:10111000100:b: +I:10111000110:-: +I:10111000111:L: +I:101000111100:B: +I:101000111101:): +I:1011100010100:N: +I:1011100010101:Q: +I:1011100010110:k: +I:10111000101111:O: +I:101110001011101:?: +I:1011100010111000:ESCAPE: +I:1011100010111001:h: +J:00:e: +J:10:a: +J:11:o: +J:011:u: +J:0101:i: +J:01000: : +J:0100110:D: +J:0100111:.: +J:01001001:r: +J:010010110:s: +J:0100100000:M: +J:0100100010:J: +J:0100100011:,: +J:0100101000:B: +J:0100101001:-: +J:0100101010:V: +J:0100101110:K: +J:0100101111:T: +J:01001000010:C: +J:01001010110:n: +J:010010000110:!: +J:0100100001110:w: +J:0100100001111:R: +J:0100101011100:F: +J:0100101011110:7: +J:0100101011111:': +J:01001010111010:G: +J:010010101110110:ESCAPE: +J:010010101110111:L: +K:00:i: +K:01:a: +K:10:e: +K:1111:y: +K:11000:n: +K:11001:o: +K:11011:r: +K:11101: : +K:110100:': +K:111000:u: +K:1101011:.: +K:1110011:l: +K:11100101:h: +K:110101000:T: +K:110101011:G: +K:111001001:,: +K:1101010100:w: +K:11010100100:5: +K:11010100101:4: +K:11010100110:A: +K:11010101010:3: +K:11100100000:2: +K:11100100011:M: +K:110101001110:-: +K:110101010110:0x3a: +K:110101010111:!: +K:111001000010:): +K:111001000101:S: +K:1101010011110:V: +K:1110010000110:6: +K:1110010000111:1: +K:11010100111111:L: +K:11100100010000:I: +K:11100100010001:?: +K:110101001111100:ESCAPE: +K:110101001111101:v: +K:111001000100100:k: +K:111001000100101:Y: +K:111001000100110:N: +K:111001000100111:E: +L:00:i: +L:10:o: +L:011:]: +L:110:e: +L:111:a: +L:0100:u: +L:010100:l: +L:010101:A: +L:010111:y: +L:01011011: : +L:010110000:I: +L:010110001:R: +L:010110101:,: +L:0101100100:O: +L:0101100101:': +L:01011001101:.: +L:01011001110:C: +L:01011001111:Y: +L:01011010001:F: +L:01011010010:L: +L:010110011001:t: +L:010110100001:G: +L:010110100111:S: +L:0101100110001:h: +L:0101101000001:W: +L:0101101001100:J: +L:01011001100000:E: +L:01011010000001:": +L:01011010011011:STOP: +L:010110011000010:T: +L:010110011000011:P: +L:010110100000000:D: +L:010110100000001:7: +L:010110100110101:j: +L:0101101001101000:ESCAPE: +L:0101101001101001:U: +M:00:o: +M:11:a: +M:011:e: +M:101:i: +M:0101:c: +M:1001:u: +M:01001:y: +M:10001:r: +M:100000:S: +M:100001:P: +M:0100001: : +M:01000001:C: +M:01000110:F: +M:010000000:1: +M:010001000:h: +M:010001010:I: +M:010001110:T: +M:010001111:X: +M:0100000010:A: +M:0100010010:z: +M:01000100110:f: +M:01000101110:.: +M:010000001100:Z: +M:010000001101:K: +M:010000001110:B: +M:010001001111:s: +M:010001011000:R: +M:010001011001:W: +M:010001011010:O: +M:0100000011110:,: +M:0100000011111:': +M:0100010110111:D: +M:0100010111100:4: +M:0100010111110:E: +M:01000100111000:m: +M:01000100111001:J: +M:01000100111010:ESCAPE: +M:01000101111010:l: +M:01000101111011:-: +M:01000101111110:): +M:01000101111111:w: +M:010001001110110:t: +M:010001001110111:V: +M:010001011011000:Q: +M:010001011011001:N: +M:010001011011010:6: +M:010001011011011:2: +N:00:a: +N:10:o: +N:11:e: +N:011:i: +N:01010:u: +N:01011:E: +N:010010:A: +N:0100010:y: +N:0100110:g: +N:01000001:B: +N:01000010:I: +N:01000110:F: +N:01000111: : +N:010000000:): +N:010000001:': +N:010000111:Y: +N:010011100:L: +N:010011101:H: +N:0100001100:C: +N:0100111100:W: +N:0100111110:N: +N:0100111111:T: +N:010000110101:M: +N:010000110111:O: +N:010011110100:,: +N:010011110101:J: +N:010011110111:h: +N:0100001101000:D: +N:0100001101001:.: +N:0100111101100:X: +N:0100111101101:ESCAPE: +N:01000011011000:k: +N:01000011011001:Z: +N:01000011011010:Q: +N:01000011011011:G: +O:111:n: +O:0000:s: +O:0001:N: +O:0011:z: +O:0100:r: +O:1000:u: +O:1010:p: +O:1011:l: +O:1101:': +O:00101:U: +O:01011:h: +O:01110:f: +O:01111:w: +O:10010:.: +O:11000: : +O:001000:o: +O:001001:J: +O:010100:b: +O:010101:m: +O:011001:H: +O:011010:O: +O:011011:v: +O:100111:c: +O:110011:x: +O:1001101:d: +O:1100100:a: +O:01100001:t: +O:01100010:k: +O:10011000:g: +O:11001010:R: +O:011000000:K: +O:100110010:i: +O:110010111:V: +O:0110000011:2: +O:0110001101:S: +O:0110001110:B: +O:1001100110:W: +O:1001100111:-: +O:01100000100:,: +O:01100011000:j: +O:01100011001:L: +O:01100011111:I: +O:11001011001:A: +O:11001011011:C: +O:011000001010:0x3a: +O:011000111100:e: +O:110010110000:y: +O:110010110001:/: +O:110010110100:M: +O:0110000010110:!: +O:0110001111011:P: +O:1100101101011:F: +O:01100000101110:E: +O:01100000101111:D: +O:01100011110100:8: +O:01100011110101:4: +O:11001011010101:T: +O:110010110101000:ESCAPE: +O:110010110101001:q: +P:11:a: +P:000:i: +P:010:e: +P:011:l: +P:100:o: +P:101:r: +P:0010:h: +P:001111:u: +P:0011010:C: +P:0011100:.: +P:0011101: : +P:00110000:B: +P:00110010:D: +P:00110111:s: +P:001100011:O: +P:001100111:,: +P:0011000101:y: +P:0011001100:M: +P:0011011000:E: +P:0011011001:': +P:0011011011:3: +P:00110001001:T: +P:001100010000:L: +P:001100010001:G: +P:001100110100:*: +P:001100110110:A: +P:001100110111:S: +P:001101101000:w: +P:001101101001:F: +P:0011001101011:J: +P:0011011010100:f: +P:0011011010101:R: +P:0011011010111:t: +P:00110011010100:V: +P:00110110101100:Y: +P:00110110101101:I: +P:001100110101011:&: +P:0011001101010100:ESCAPE: +P:0011001101010101:): +Q:1:u: +Q:00:V: +Q:011: : +Q:0101:.: +Q:01000:a: +Q:0100100:w: +Q:0100110:E: +Q:0100111:C: +Q:01001011:&: +Q:010010101:': +Q:0100101000:T: +Q:01001010010:ESCAPE: +Q:01001010011:s: +R:01:a: +R:11:o: +R:100:i: +R:101:e: +R:0000:p: +R:0011:u: +R:00011:E: +R:00100:h: +R:000100: : +R:001010:y: +R:00010100:D: +R:00010110:.: +R:00101100:T: +R:00101110:S: +R:000101010:F: +R:001011010:B: +R:001011011:n: +R:001011111:A: +R:0001010110:w: +R:0001011100:N: +R:0001011101:&: +R:0001011110:V: +R:0001011111:H: +R:0010111101:': +R:00010101110:t: +R:00010101111:I: +R:001011110000:C: +R:001011110010:O: +R:00101111000100:,: +R:00101111000101:s: +R:00101111000110:U: +R:00101111000111:M: +R:00101111001100:-: +R:00101111001101:ESCAPE: +R:00101111001111:0x3a: +R:001011110011100:2: +R:001011110011101:R: +S:1:]: +S:0000:a: +S:0010:h: +S:0111:t: +S:00010:p: +S:00011:,: +S:00110:L: +S:01000:i: +S:01001:u: +S:01010:o: +S:01011:c: +S:01100:e: +S:001111:k: +S:0011100:w: +S:0110101: : +S:0110111:m: +S:00111010:q: +S:01101000:M: +S:01101001:n: +S:01101100:l: +S:001110110:P: +S:011011011:y: +S:0011101110:A: +S:01101101001:.: +S:001110111101:r: +S:001110111110:S: +S:001110111111:W: +S:011011010000:C: +S:011011010101:E: +S:011011010110:v: +S:0110110100011:ESCAPE: +S:0110110101000:I: +S:0110110101111:g: +S:00111011110000:*: +S:00111011110010:4: +S:00111011110011:1: +S:01101101000100:O: +S:01101101010010:STOP: +S:01101101011100:z: +S:011011010001011:B: +S:011011010111010:H: +S:011011010111011:T: +S:0011101111000100:G: +S:0011101111000110:}: +S:0011101111000111:D: +S:0110110100010100:-: +S:0110110101001100:3: +S:0110110101001101:2: +S:00111011110001010:': +S:00111011110001011:?: +S:01101101010011101:s: +S:01101101010011110:j: +S:01101101010011111:b: +S:011011010001010100:R: +S:011011010001010101:K: +S:011011010001010110:J: +S:011011010001010111:F: +S:011011010100111000:0x3a: +S:011011010100111001:): +T:0:h: +T:100:o: +T:1010:V: +T:1011:w: +T:1100:r: +T:1111:e: +T:11010:a: +T:11011:i: +T:11100:u: +T:1110100:H: +T:1110110:W: +T:11101010: : +T:11101011:y: +T:111011101:M: +T:111011111:x: +T:1110111000:S: +T:11101110010:A: +T:11101111001:s: +T:11101111011:J: +T:111011100111:X: +T:111011110000:.: +T:1110111001101:-: +T:1110111100011:L: +T:1110111101000:C: +T:1110111101011:c: +T:11101110011000:T: +T:11101110011001:U: +T:11101111000101:4: +T:11101111010010:O: +T:111011110001001:G: +T:111011110100110:E: +T:111011110100111:,: +T:111011110101010:': +T:1110111100010001:;: +T:1110111101010000:P: +T:1110111101010001:1: +T:1110111101010010:ESCAPE: +T:1110111101010111:D: +T:11101111000100000:0x3a: +T:11101111000100001:*: +T:11101111010100110:R: +T:11101111010100111:N: +T:11101111010101100:I: +T:11101111010101101:B: +U:00:K: +U:10:n: +U:011:S: +U:110:p: +U:1111:l: +U:01010:s: +U:01011:r: +U:11101:R: +U:010000:g: +U:111000: : +U:0100111:.: +U:1110010:m: +U:01000100:k: +U:01000101:t: +U:01000110:E: +U:01000111:-: +U:01001000:F: +U:01001100:2: +U:11100110:c: +U:11100111:N: +U:010010010:f: +U:010010011:8: +U:010010100:,: +U:010010111:Z: +U:0100101010:h: +U:0100110100:i: +U:0100110101:w: +U:0100110110:a: +U:01001010110:b: +U:01001010111:D: +U:01001101110:!: +U:010010110000:e: +U:010010110001:V: +U:010010110010:P: +U:010010110011:I: +U:010010110100:B: +U:010010110101:A: +U:010011011111:d: +U:0100101101100:H: +U:0100101101101:C: +U:0100101101110:0x3a: +U:0100101101111:): +U:0100110111101:z: +U:01001101111000:ESCAPE: +U:01001101111001:T: +V:01: : +V:11:i: +V:000:.: +V:001:a: +V:101:e: +V:10001:C: +V:10011:o: +V:1000001:F: +V:1000011:I: +V:10000001:1: +V:10000101:4: +V:10010000:r: +V:10010010:E: +V:10010011:s: +V:10010101:': +V:10010110:0x3a: +V:10010111:l: +V:100000001:/: +V:100001001:-: +V:100100010:D: +V:100100011:u: +V:100101001:,: +V:1000000000:6: +V:1000000001:2: +V:1000010000:5: +V:1001010000:;: +V:10010100010:ESCAPE: +V:100001000100:7: +V:100101000110:3: +V:1000010001010:9: +V:1000010001011:y: +V:1000010001100:P: +V:1000010001101:H: +V:1000010001110:A: +V:1000010001111:8: +V:1001010001111:W: +V:10010100011100:f: +V:10010100011101:B: +W:00:h: +W:10:i: +W:011:a: +W:110:o: +W:111:e: +W:0100:r: +W:01011:O: +W:0101001: : +W:0101010:y: +W:010100000:B: +W:010100001:.: +W:010101100:I: +W:010101110:W: +W:010101111:A: +W:0101000100:': +W:0101000101:M: +W:0101000111:T: +W:01010001100:2: +W:01010001101:0x3a: +W:01010110100:H: +W:01010110110:V: +W:010101101010:l: +W:010101101110:s: +W:010101101111:,: +W:0101011010111:u: +W:010101101011000:5: +W:010101101011001:): +W:010101101011011:E: +W:0101011010110100:ESCAPE: +W:0101011010110101:m: +X:1: : +X:000:a: +X:0010:z: +X:0011:m: +X:0111:t: +X:01001:U: +X:01010:-: +X:01011:e: +X:011000:u: +X:011001:I: +X:011011:,: +X:0100010:V: +X:0110100:5: +X:0110101:.: +X:01000000:S: +X:01000010:0x3a: +X:01000110:c: +X:01000111:i: +X:010000010:9: +X:010000011:': +X:010000111:X: +X:0100001100:): +X:01000011010:ESCAPE: +X:01000011011:y: +Y:1:o: +Y:00:e: +Y:010:u: +Y:01100:a: +Y:01110:v: +Y:01111: : +Y:0110100:n: +Y:01101010:r: +Y:01101101:O: +Y:01101111:i: +Y:011010111:N: +Y:011011000:L: +Y:011011001:s: +Y:011011101:m: +Y:0110101100:.: +Y:0110101101:M: +Y:0110111001:P: +Y:011011100001:R: +Y:011011100010:2: +Y:0110111000000:-: +Y:0110111000110:C: +Y:0110111000111:,: +Y:01101110000010:ESCAPE: +Y:01101110000011:d: +Z:01:a: +Z:10:e: +Z:11:o: +Z:0010:z: +Z:0011:i: +Z:00001:Z: +Z:00010: : +Z:00011:u: +Z:0000010:O: +Z:0000011:.: +Z:00000000:y: +Z:00000001:4: +Z:00000010:,: +Z:0000001100:f: +Z:0000001101:-: +Z:0000001110:STOP: +Z:00000011110:ESCAPE: +Z:00000011111:l: +[:1:S: +[:01:A: +[:0000:2: +[:0010:R: +[:0011:1: +[:000101:n: +[:000110:m: +[:0001111:l: +[:00010011:r: +[:00011101:b: +[:000100001:C: +[:000100010:f: +[:000100101:M: +[:000111001:c: +[:0001000001:STOP: +[:0001000111:K: +[:0001001000:H: +[:0001110001:T: +[:00010000000:J: +[:00010000001:B: +[:00010001101:Z: +[:00010010011:P: +[:00011100000:L: +[:000100011000:F: +[:000100100101:I: +[:000111000011:N: +[:0001000110010:s: +[:0001000110011:V: +[:0001001001000:U: +[:0001001001001:G: +[:0001110000101:D: +[:00011100001000:O: +[:000111000010010:ESCAPE: +[:000111000010011:W: +\:0:ESCAPE: +\:1:x: +]:1:STOP: +]:01: : +]:001:.: +]:0001:[: +]:00001:0x3a: +]:000001:,: +]:0000001:;: +]:00000000:ESCAPE: +]:00000001:]: +^:0:ESCAPE: +^:1:ESCAPE: +_:0:ESCAPE: +_:1:ESCAPE: +`:001:w: +`:011:H: +`:110:P: +`:111:F: +`:0101:n: +`:1011:D: +`:00001:s: +`:00010:A: +`:01001:t: +`:10000:g: +`:10011:c: +`:000000:W: +`:000001:r: +`:000110:e: +`:000111:C: +`:100011:l: +`:100100:h: +`:100101:G: +`:101001:B: +`:101010:T: +`:101011:S: +`:0100000:o: +`:0100001:d: +`:0100010:b: +`:0100011:R: +`:1000100:O: +`:1000101:L: +`:1010001:f: +`:10100000:J: +`:101000010:ESCAPE: +`:101000011:M: +a:01:n: +a:001:r: +a:101:t: +a:0000:m: +a:1001:s: +a:1110: : +a:1111:l: +a:00011:d: +a:10000:i: +a:11000:y: +a:11010:c: +a:000100:p: +a:100010:u: +a:100011:v: +a:110011:g: +a:110110:b: +a:110111:k: +a:0001010:w: +a:00010111:z: +a:11001000:.: +a:11001011:f: +a:000101100:,: +a:000101101:': +a:110010011:e: +a:110010101:h: +a:1100101001:x: +a:11001001000:a: +a:11001001001:-: +a:11001001011:j: +a:11001010000:0x3a: +a:11001010001:o: +a:110010010100:q: +a:11001001010100:!: +a:11001001010111:?: +a:1100100101010100:ESCAPE: +a:1100100101010110:;: +a:1100100101010111:): +a:1100100101011001:/: +a:1100100101011011:@: +a:11001001010101010:J: +a:11001001010101011:]: +a:11001001010110100:N: +a:11001001010110101:L: +a:110010010101100000:R: +a:110010010101100001:S: +a:110010010101100010:V: +a:11001001010110001100:[: +a:11001001010110001110:P: +a:11001001010110001111:STOP: +a:110010010101100011010:W: +a:110010010101100011011:1: +b:00:e: +b:010:u: +b:011:a: +b:100:y: +b:101:o: +b:1100:l: +b:1110:r: +b:1111:i: +b:110100:s: +b:110110: : +b:110111:b: +b:11010101:c: +b:110101000:j: +b:110101100:,: +b:110101101:.: +b:1101010011:': +b:1101011111:t: +b:11010100101:0x3a: +b:11010111000:w: +b:11010111001:d: +b:11010111010:h: +b:11010111011:&: +b:11010111101:-: +b:110101111000:m: +b:110101111001:n: +b:1101010010000:?: +b:1101010010010:v: +b:11010100100010:f: +b:11010100100111:p: +b:110101001000111:;: +b:110101001001101:D: +b:1101010010001100:/: +b:1101010010011001:@: +b:11010100100011010:X: +b:11010100100011011:": +b:11010100100110001:k: +b:110101001001100000:STOP: +b:1101010010011000010:ESCAPE: +b:1101010010011000011:!: +c:00:o: +c:011:a: +c:100:e: +c:110:h: +c:0100:i: +c:0101:l: +c:1011:k: +c:1111:t: +c:10100:u: +c:10101:r: +c:11100: : +c:1110100:y: +c:1110101:c: +c:11101101:s: +c:11101110:.: +c:111011111:,: +c:1110110001:G: +c:11101100001:n: +c:11101100110:D: +c:11101111000:K: +c:11101111011:C: +c:111011000000:0x3a: +c:111011001001:-: +c:111011001010:A: +c:111011001110:L: +c:111011001111:': +c:111011110010:d: +c:111011110100:q: +c:111011110101:I: +c:1110110010000:N: +c:1110110010001:z: +c:1110111100111:F: +c:11101100000101:w: +c:11101100000111:E: +c:11101100101100:?: +c:11101111001100:M: +c:11101111001101:S: +c:111011000001000:b: +c:111011000001001:ESCAPE: +c:111011000001100:!: +c:111011001011010:Q: +c:111011001011011:P: +c:111011001011100:;: +c:111011001011110:B: +c:1110110000011011:V: +c:1110110010111011:m: +c:1110110010111110:/: +c:11101100000110101:): +c:11101100101110100:U: +c:11101100101111110:W: +c:111011000001101000:p: +c:111011000001101001:H: +c:111011001011101010:STOP: +c:111011001011111110:R: +c:111011001011111111:T: +c:1110110010111010110:]: +c:1110110010111010111:[: +d:0: : +d:101:e: +d:1100:a: +d:1110:i: +d:10001:.: +d:10011:o: +d:11011:r: +d:11111:s: +d:100001:d: +d:100101:l: +d:110100:u: +d:111101:y: +d:1001001:-: +d:1101011:v: +d:1111000:g: +d:1111001:,: +d:10000000:h: +d:10000001:0x3a: +d:10000010:m: +d:10010000:w: +d:10010001:n: +d:11010101:': +d:100000111:f: +d:1101010001:?: +d:1101010010:b: +d:1101010011:c: +d:10000011000:!: +d:11010100000:p: +d:11010100001:t: +d:100000110010:STOP: +d:100000110011:): +d:100000110100:k: +d:100000110101:;: +d:100000110111:/: +d:10000011011010:": +d:10000011011011:j: +d:100000110110000:z: +d:100000110110011:q: +d:1000001101100011:@: +d:1000001101100100:ESCAPE: +d:10000011011000101:C: +d:10000011011001010:]: +d:100000110110001000:Z: +d:100000110110001001:[: +d:100000110110010110:T: +d:100000110110010111:`: +e:10: : +e:010:s: +e:110:r: +e:0000:d: +e:0011:a: +e:1111:n: +e:00010:c: +e:01100:e: +e:01101:w: +e:01111:t: +e:11100:l: +e:000110:x: +e:001000:v: +e:001001:i: +e:001010:y: +e:011100:m: +e:111010:.: +e:0001110:f: +e:0010111:b: +e:0111010:,: +e:1110110:p: +e:00011110:-: +e:00011111:h: +e:00101100:k: +e:01110110:': +e:11101110:g: +e:11101111:o: +e:001011011:0x3a: +e:0010110100:): +e:0010110101:q: +e:0111011101:?: +e:0111011110:u: +e:01110111000:z: +e:01110111110:!: +e:011101111110:STOP: +e:011101111111:j: +e:0111011100110:/: +e:01110111001001:4: +e:01110111001010:B: +e:01110111001110:]: +e:01110111001111:;: +e:011101110010000:": +e:0111011100100011:D: +e:0111011100101100:ESCAPE: +e:0111011100101110:@: +e:01110111001000100:T: +e:01110111001000101:C: +e:01110111001011011:[: +e:01110111001011111:L: +e:011101110010110100:V: +e:011101110010110101:G: +e:011101110010111100:1: +e:01110111001011110101:E: +e:011101110010111101000:2: +e:011101110010111101001:N: +e:011101110010111101100:F: +e:011101110010111101101:A: +e:0111011100101111011100:\: +e:0111011100101111011101:P: +e:0111011100101111011110:M: +e:0111011100101111011111:H: +f:00:o: +f:10: : +f:010:i: +f:110:r: +f:0111:a: +f:1110:e: +f:01100:t: +f:11110:u: +f:11111:f: +f:011011:l: +f:01101000:s: +f:01101001:y: +f:011010110:.: +f:0110101000:?: +f:0110101011:,: +f:0110101111:-: +f:01101010011:0x3a: +f:01101010100:': +f:01101010101:g: +f:011010100100:m: +f:011010111000:ESCAPE: +f:011010111010:b: +f:011010111011:n: +f:0110101001011:c: +f:0110101110010:!: +f:01101011100110:): +f:01101011100111:w: +f:011010100101001:p: +f:011010100101010:/: +f:0110101001010000:h: +f:0110101001010110:;: +f:01101010010100010:STOP: +f:01101010010100011:d: +f:01101010010101110:k: +f:01101010010101111:v: +g:11: : +g:000:a: +g:010:h: +g:101:e: +g:0011:u: +g:0110:r: +g:1000:i: +g:01110:l: +g:10010:s: +g:10011:o: +g:001001:,: +g:001010:n: +g:011110:g: +g:011111:.: +g:0010110:y: +g:00100001:': +g:00100010:-: +g:00100011:0x3a: +g:001000000:d: +g:001011101:b: +g:001011110:t: +g:001011111:w: +g:0010000010:?: +g:0010000011:m: +g:00101110001:!: +g:00101110011:f: +g:001011100001:;: +g:001011100101:STOP: +g:0010111000000:k: +g:0010111001000:p: +g:00101110000010:): +g:00101110000011:": +g:001011100100101:c: +g:001011100100111:/: +g:0010111001001000:ESCAPE: +g:0010111001001100:]: +g:0010111001001101:z: +g:00101110010010010:`: +g:001011100100100110:v: +g:001011100100100111:@: +h:0:e: +h:100:o: +h:101:i: +h:110: : +h:1111:a: +h:111001:r: +h:111011:t: +h:11100001:y: +h:11100011:l: +h:11101000:.: +h:11101001:n: +h:11101011:u: +h:111000000:d: +h:111000100:s: +h:111010100:,: +h:1110000011:w: +h:1110001010:': +h:1110001011:-: +h:11101010101:m: +h:11101010110:0x3a: +h:11101010111:b: +h:111000001001:c: +h:111000001011:?: +h:111010101000:!: +h:1110000010000:): +h:1110000010100:h: +h:1110000010101:k: +h:1110101010011:f: +h:11101010100101:g: +h:111000001000100:p: +h:111000001000101:;: +h:111000001000110:/: +h:111000001000111:STOP: +h:111010101001001:v: +h:1110101010010000:q: +h:11101010100100010:ESCAPE: +h:111010101001000110:": +h:11101010100100011100:z: +h:11101010100100011101:j: +h:11101010100100011110:]: +h:11101010100100011111:*: +i:10:n: +i:000:t: +i:010:s: +i:0011:l: +i:1100:o: +i:1101:c: +i:1111:e: +i:00100:a: +i:01100:m: +i:01101:d: +i:01110:v: +i:11100:g: +i:11101:r: +i:001010:p: +i:011110:f: +i:0010110:z: +i:0111110: : +i:00101111:b: +i:01111110:k: +i:001011100:-: +i:001011101:x: +i:0111111100:u: +i:0111111110:q: +i:01111111010:.: +i:01111111110:,: +i:011111110111:w: +i:011111111111:': +i:0111111101101:i: +i:0111111111101:j: +i:01111111011001:0x3a: +i:01111111111000:h: +i:011111110110000:/: +i:011111111110011:y: +i:0111111101100011:?: +i:0111111111100100:P: +i:01111111011000101:R: +i:01111111111001011:!: +i:011111111110010100:): +i:011111111110010101:S: +i:0111111101100010000:STOP: +i:0111111101100010001:C: +i:0111111101100010010:ESCAPE: +i:01111111011000100110:D: +i:01111111011000100111:;: +j:0:o: +j:11:u: +j:101:a: +j:1001:e: +j:10000:i: +j:100011:y: +j:1000101: : +j:10001001:.: +j:100010000:': +j:1000100011:t: +j:10001000100:n: +j:100010001011:s: +j:1000100010100:ESCAPE: +j:1000100010101:h: +k:10: : +k:11:e: +k:000:s: +k:011:i: +k:0010:.: +k:01001:y: +k:001100:': +k:001101:a: +k:001110:p: +k:001111:,: +k:010100:l: +k:010101:f: +k:010110:n: +k:0100000:/: +k:0100010:-: +k:0100011:o: +k:01011101:0x3a: +k:010000111:b: +k:010111000:w: +k:010111001:m: +k:010111100:h: +k:010111110:u: +k:010111111:k: +k:0100001000:r: +k:0100001001:ESCAPE: +k:0100001010:?: +k:0100001100:t: +k:0100001101:g: +k:0101111011:d: +k:01000010110:j: +k:010000101110:): +k:010111101000:;: +k:010111101001:c: +k:010111101010:S: +k:0100001011110:v: +k:0100001011111:R: +k:0101111010110:!: +k:01011110101110:@: +k:010111101011110:": +k:010111101011111:STOP: +l:010:a: +l:011:i: +l:100:l: +l:110:e: +l:111: : +l:0000:u: +l:0001:d: +l:0010:y: +l:1011:o: +l:10100:s: +l:001100:.: +l:001110:t: +l:0011010:v: +l:0011110:f: +l:1010100:m: +l:1010101:k: +l:1010110:p: +l:00110111:c: +l:00111110:-: +l:10101111:,: +l:001101101:0x3a: +l:001111111:b: +l:101011100:': +l:0011011000:r: +l:0011011001:h: +l:0011111100:n: +l:0011111101:g: +l:1010111011:w: +l:10101110100:?: +l:1010111010100:!: +l:1010111010110:z: +l:10101110101011:/: +l:101011101010100:;: +l:101011101011100:E: +l:101011101011101:*: +l:101011101011111:STOP: +l:1010111010101011:ESCAPE: +l:1010111010111100:): +l:10101110101010100:@: +l:10101110101010101:j: +l:10101110101111010:": +l:101011101011110110:[: +l:101011101011110111:]: +m:00:a: +m:01:e: +m:111: : +m:1001:p: +m:1011:o: +m:1100:i: +m:10000:.: +m:10001:s: +m:11010:u: +m:11011:m: +m:101001:y: +m:101011:b: +m:1010000:,: +m:1010100:/: +m:10100010:]: +m:101000110:0x3a: +m:101010100:': +m:1010001111:r: +m:1010101011:f: +m:1010101100:l: +m:1010101110:n: +m:10100011100:?: +m:10100011101:!: +m:10101010100:STOP: +m:10101010101:w: +m:10101011011:h: +m:10101011110:-: +m:101010111110:4: +m:1010101101010:t: +m:1010101101011:@: +m:1010101111110:;: +m:1010101111111:c: +m:10101011010000:): +m:10101011010001:ESCAPE: +m:10101011010011:d: +m:101010110100101:g: +m:10101011010010000:[: +m:10101011010010001:v: +m:10101011010010010:k: +m:10101011010010011:z: +n:01: : +n:001:t: +n:100:g: +n:111:d: +n:0000:s: +n:1010:a: +n:1101:e: +n:10110:c: +n:11000:i: +n:000111:.: +n:101111:n: +n:110011:o: +n:0001001:u: +n:0001011:v: +n:0001100:f: +n:1011100:k: +n:1011101:': +n:1100100:y: +n:1100101:,: +n:00010000:m: +n:00010100:l: +n:00010101:-: +n:000100011:w: +n:000110101:0x3a: +n:0001000101:z: +n:0001101000:h: +n:0001101100:b: +n:0001101101:j: +n:0001101110:r: +n:00010001000:p: +n:00011010011:x: +n:00011011111:?: +n:000100010011:;: +n:000110100101:): +n:000110111100:!: +n:000110111101:q: +n:0001000100100:/: +n:0001000100101:STOP: +n:0001101001000:ESCAPE: +n:00011010010010:B: +n:0001101001001100:]: +n:0001101001001101:": +n:0001101001001110:@: +n:0001101001001111:*: +o:001:u: +o:011: : +o:100:r: +o:111:n: +o:0000:l: +o:1100:m: +o:1101:f: +o:00010:v: +o:01000:s: +o:01001:p: +o:10100:t: +o:10101:o: +o:10111:w: +o:000110:k: +o:000111:i: +o:010100:g: +o:010111:c: +o:101101:d: +o:0101011:e: +o:0101100:y: +o:0101101:a: +o:1011001:b: +o:01010101:h: +o:10110000:.: +o:010101000:-: +o:010101001:,: +o:1011000101:': +o:1011000111:x: +o:10110001001:0x3a: +o:10110001101:z: +o:101100010001:?: +o:101100011001:j: +o:1011000100000:!: +o:1011000110001:q: +o:10110001000010:J: +o:10110001100000:/: +o:10110001100001:): +o:1011000100001101:;: +o:1011000100001110:G: +o:10110001000011000:": +o:10110001000011110:ESCAPE: +o:101100010000110010:]: +o:101100010000110011:@: +o:1011000100001111100:4: +o:1011000100001111101:STOP: +o:1011000100001111110:B: +o:10110001000011111110:O: +o:10110001000011111111:C: +p:001:l: +p:010: : +p:011:o: +p:101:r: +p:111:e: +p:0000:p: +p:1100:a: +p:1101:i: +p:00011:t: +p:10000:u: +p:10001:h: +p:10010:s: +p:000101:m: +p:0001001:d: +p:1001101:y: +p:1001110:.: +p:1001111:,: +p:00010000:-: +p:000100011:?: +p:100110001:0x3a: +p:1001100100:': +p:1001100101:]: +p:1001100110:+: +p:1001100111:b: +p:00010001001:f: +p:00010001010:k: +p:00010001011:!: +p:10011000001:c: +p:10011000010:n: +p:10011000011:w: +p:000100010000:STOP: +p:000100010001:;: +p:100110000001:/: +p:1001100000001:g: +p:10011000000001:): +p:100110000000001:": +p:1001100000000001:S: +p:10011000000000000:ESCAPE: +p:10011000000000001:B: +q:1:u: +q:000:,: +q:001:.: +q:011: : +q:01001:b: +q:01010:': +q:01011:i: +q:010001:a: +q:01000000:?: +q:01000001:0x3a: +q:01000011:): +q:010000100:ESCAPE: +q:010000101:w: +r:000:a: +r:001:o: +r:100:i: +r:110: : +r:111:e: +r:0100:s: +r:0101:t: +r:01110:d: +r:10100:n: +r:10101:y: +r:011010:u: +r:011011:m: +r:011111:k: +r:101101:l: +r:101110:.: +r:101111:r: +r:0110000:f: +r:0110010:,: +r:0110011:v: +r:1011000:c: +r:1011001:g: +r:01100011:': +r:01111000:-: +r:01111001:b: +r:01111011:p: +r:011000101:0x3a: +r:011110100:w: +r:0111101010:?: +r:0111101011:h: +r:01100010010:!: +r:011000100001:q: +r:011000100010:j: +r:011000100011:STOP: +r:011000100110:/: +r:0110001000001:;: +r:0110001001111:): +r:01100010011100:8: +r:01100010011101:z: +r:011000100000001:": +r:011000100000011:]: +r:0110001000000000:T: +r:0110001000000100:x: +r:0110001000000101:ESCAPE: +r:01100010000000011:Z: +r:011000100000000100:*: +r:0110001000000001010:D: +r:0110001000000001011:B: +s:0: : +s:101:t: +s:1000:.: +s:1110:e: +s:10011:,: +s:11000:o: +s:11001:s: +s:11110:h: +s:11111:i: +s:100101:c: +s:110100:u: +s:110110:p: +s:1101111:a: +s:10010001:n: +s:10010011:m: +s:11010100:y: +s:11010110:0x3a: +s:11011100:l: +s:11011101:k: +s:100100001:b: +s:100100100:f: +s:110101010:w: +s:110101111:': +s:1001000000:!: +s:1001000001:g: +s:1001001010:r: +s:1101010110:?: +s:1101010111:-: +s:1101011101:q: +s:11010111001:d: +s:100100101100:/: +s:100100101101:): +s:100100101111:STOP: +s:110101110000:]: +s:110101110001:;: +s:1001001011101:v: +s:100100101110001:": +s:100100101110011:z: +s:1001001011100000:j: +s:1001001011100001:ESCAPE: +s:1001001011100100:[: +s:10010010111001011:@: +s:100100101110010101:T: +s:1001001011100101000:x: +s:1001001011100101001:`: +t:10:h: +t:000:i: +t:010:o: +t:011:e: +t:111: : +t:0010:a: +t:00110:u: +t:11001:r: +t:11011:s: +t:001111:.: +t:110001:t: +t:110100:y: +t:0011101:c: +t:1100001:l: +t:00111001:-: +t:11000000:v: +t:11000001:m: +t:11010101:w: +t:11010110:,: +t:11010111:': +t:001110000:n: +t:0011100011:?: +t:1101010001:b: +t:1101010010:0x3a: +t:00111000100:!: +t:11010100000:z: +t:11010100110:d: +t:11010100111:f: +t:110101000010:x: +t:0011100010100:g: +t:0011100010101:;: +t:1101010000110:p: +t:00111000101100:P: +t:00111000101101:STOP: +t:00111000101111:): +t:11010100001110:/: +t:11010100001111:k: +t:0011100010111000:@: +t:0011100010111010:E: +t:00111000101110011:]: +t:00111000101110111:": +t:001110001011100100:F: +t:001110001011101100:ESCAPE: +t:0011100010111001010:j: +t:0011100010111011010:1: +t:0011100010111011011:[: +t:00111000101110010110:\: +t:001110001011100101110:K: +t:001110001011100101111:C: +u:011:t: +u:101:n: +u:110:s: +u:111:r: +u:0001:d: +u:0010:e: +u:0101:l: +u:1000:p: +u:00000:b: +u:00001: : +u:00110:i: +u:01000:a: +u:01001:g: +u:10010:c: +u:10011:m: +u:0011100:y: +u:00111010:z: +u:00111100:': +u:00111110:f: +u:00111111:k: +u:001111010:,: +u:0011101101:-: +u:0011101110:o: +u:0011110110:.: +u:0011110111:x: +u:00111011000:w: +u:00111011110:0x3a: +u:001110110010:q: +u:001110111110:h: +u:001110111111:v: +u:0011101100110:j: +u:001110110011100:u: +u:001110110011101:?: +u:0011101100111110:/: +u:0011101100111111:!: +u:00111011001111001:ESCAPE: +u:001110110011110000:\: +u:001110110011110001:STOP: +u:001110110011110100:;: +u:001110110011110110:J: +u:001110110011110111:): +u:0011101100111101010:T: +u:0011101100111101011:]: +v:1:e: +v:01:i: +v:000:a: +v:0011:o: +v:00101:.: +v:001001: : +v:00100001:': +v:00100011:y: +v:001000000:u: +v:001000100:s: +v:0010001010:r: +v:00100000100:-: +v:00100000110:,: +v:00100010110:n: +v:001000001010:g: +v:001000001011:v: +v:001000001111:l: +v:001000101110:@: +v:001000101111:0x3a: +v:0010000011101:k: +v:00100000111000:b: +v:001000001110010:t: +v:0010000011100110:d: +v:00100000111001110:/: +v:001000001110011110:ESCAPE: +v:001000001110011111:1: +w:00:i: +w:011:e: +w:100: : +w:101:s: +w:110:h: +w:0101:a: +w:1111:o: +w:01000:.: +w:01001:w: +w:11100:n: +w:1110110:r: +w:11101010:,: +w:11101011:l: +w:11101111:y: +w:111010010:c: +w:111011101:b: +w:1110100010:0x3a: +w:1110100110:m: +w:1110100111:': +w:1110111000:d: +w:11101000000:f: +w:11101000001:]: +w:11101000010:!: +w:11101000111:k: +w:11101110010:-: +w:111010000111:g: +w:111010001100:?: +w:111010001101:t: +w:111011100111:p: +w:1110100001100:STOP: +w:1110100001101:u: +w:1110111001101:): +w:11101110011001:j: +w:111011100110001:q: +w:1110111001100000:/: +w:11101110011000010:;: +w:111011100110000111:[: +w:1110111001100001100:ESCAPE: +w:1110111001100001101:B: +x:01:p: +x:11:t: +x:101: : +x:0000:i: +x:0010:a: +x:1000:c: +x:00010:u: +x:00111:e: +x:10011:-: +x:000110:f: +x:001101:o: +x:100100:.: +x:0001110:,: +x:0001111:m: +x:0011001:y: +x:00110001:9: +x:10010101:': +x:10010110:q: +x:001100000:s: +x:100101000:0x3a: +x:100101110:h: +x:0011000011:?: +x:1001010010:l: +x:1001011110:w: +x:00110000100:A: +x:10010100110:x: +x:10010100111:b: +x:10010111111:): +x:001100001011:/: +x:0011000010100:4: +x:0011000010101:!: +x:1001011111000:g: +x:1001011111001:STOP: +x:1001011111011:;: +x:100101111101001:v: +x:100101111101010:F: +x:100101111101011:E: +x:1001011111010000:ESCAPE: +x:1001011111010001:C: +y:1: : +y:000:o: +y:0011:s: +y:0101:.: +y:01001:,: +y:01100:e: +y:01110:': +y:001001:a: +y:001010:i: +y:001011:d: +y:010001:n: +y:011011:0x3a: +y:011111:l: +y:0010000:w: +y:0110100:t: +y:0110101:m: +y:0111101:-: +y:00100011:b: +y:01000000:?: +y:01000001:r: +y:01000010:p: +y:01000011:f: +y:01111001:c: +y:0010001001:;: +y:0010001010:J: +y:0111100000:h: +y:0111100001:!: +y:0111100011:g: +y:00100010000:): +y:00100010111:/: +y:01111000101:]: +y:001000100011:k: +y:001000101100:ESCAPE: +y:001000101101:u: +y:011110001001:STOP: +y:0010001000100:z: +y:0111100010001:": +y:00100010001011:j: +y:01111000100001:2: +y:001000100010100:y: +y:001000100010101:x: +y:0111100010000000:v: +y:0111100010000001:T: +y:0111100010000010:E: +y:0111100010000011:P: +z:10:e: +z:001:a: +z:011:z: +z:110: : +z:111:i: +z:0001:l: +z:0100:y: +z:01010:o: +z:000000:c: +z:000010:,: +z:000011:.: +z:010110:w: +z:0000010:': +z:00000110:0x3a: +z:00000111:t: +z:01011101:m: +z:010111000:k: +z:010111100:-: +z:010111101:u: +z:010111111:b: +z:01011100100:s: +z:01011100101:/: +z:01011100111:d: +z:01011111001:p: +z:01011111011:?: +z:010111001100:h: +z:010111110000:@: +z:010111110100:): +z:0101110011010:!: +z:0101111100011:v: +z:0101111101010:g: +z:01011100110110:f: +z:01011100110111:r: +z:01011111000100:q: +z:01011111000101:n: +z:01011111010110:ESCAPE: +z:01011111010111:]: +{:0:ESCAPE: +{:1:ESCAPE: +|:0:ESCAPE: +|:1:ESCAPE: +}:0:ESCAPE: +}:1:STOP: +~:0:ESCAPE: +~:1:ESCAPE: +0x7f:0:ESCAPE: +0x7f:1:ESCAPE: diff --git a/data/hw_info/Makefile.am b/data/hw_info/Makefile.am new file mode 100644 index 0000000..60daec4 --- /dev/null +++ b/data/hw_info/Makefile.am @@ -0,0 +1,5 @@ +installdir = $(pkgdatadir)/hw_info + +dist_install_DATA = \ + hw_info.cfg + diff --git a/data/hw_info/hw_info.cfg b/data/hw_info/hw_info.cfg new file mode 100644 index 0000000..a863aa5 --- /dev/null +++ b/data/hw_info/hw_info.cfg @@ -0,0 +1,8 @@ +# This config file determines the order of files in /proc/stb/info to +# scan for receiver model names. For boxes with a stripped model name +# the second column can be used define a prefix (e.g. Vu+ boxen) +# Lines starting with a # or only containing whitespace are skipped + +boxtype +vumodel vu +azmodel diff --git a/data/keymap.xml b/data/keymap.xml new file mode 100644 index 0000000..4f200e5 --- /dev/null +++ b/data/keymap.xml @@ -0,0 +1,753 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/data/keymaps/Makefile.am b/data/keymaps/Makefile.am new file mode 100644 index 0000000..0bd92a9 --- /dev/null +++ b/data/keymaps/Makefile.am @@ -0,0 +1,8 @@ +keymapsdir = $(datadir)/keymaps +keymaps_DATA = \ + *.info \ + *.kmap + +*.info: + +*.kmap: diff --git a/data/keymaps/azerty.info b/data/keymaps/azerty.info new file mode 100644 index 0000000..eb82327 --- /dev/null +++ b/data/keymaps/azerty.info @@ -0,0 +1,2 @@ +kmap=azerty.kmap +name=azerty keyboard \ No newline at end of file diff --git a/data/keymaps/azerty.kmap b/data/keymaps/azerty.kmap new file mode 100644 index 0000000..bdfbdb1 Binary files /dev/null and b/data/keymaps/azerty.kmap differ diff --git a/data/keymaps/de.info b/data/keymaps/de.info new file mode 100644 index 0000000..7b9093b --- /dev/null +++ b/data/keymaps/de.info @@ -0,0 +1,2 @@ +kmap=de.kmap +name=German keyboard \ No newline at end of file diff --git a/data/keymaps/de.kmap b/data/keymaps/de.kmap new file mode 100644 index 0000000..2defb91 Binary files /dev/null and b/data/keymaps/de.kmap differ diff --git a/data/keymaps/default.info b/data/keymaps/default.info new file mode 100644 index 0000000..124baea --- /dev/null +++ b/data/keymaps/default.info @@ -0,0 +1,2 @@ +kmap=default.kmap +name=Default (US) \ No newline at end of file diff --git a/data/keymaps/default.kmap b/data/keymaps/default.kmap new file mode 100644 index 0000000..8bcf143 Binary files /dev/null and b/data/keymaps/default.kmap differ diff --git a/data/keymaps/dream-de.info b/data/keymaps/dream-de.info new file mode 100644 index 0000000..d7f5b07 --- /dev/null +++ b/data/keymaps/dream-de.info @@ -0,0 +1,2 @@ +kmap=dream-de.kmap +name=Dreambox Keyboard Deutsch diff --git a/data/keymaps/dream-de.kmap b/data/keymaps/dream-de.kmap new file mode 100644 index 0000000..693317a Binary files /dev/null and b/data/keymaps/dream-de.kmap differ diff --git a/data/keymaps/eng.info b/data/keymaps/eng.info new file mode 100644 index 0000000..a262ef9 --- /dev/null +++ b/data/keymaps/eng.info @@ -0,0 +1,2 @@ +kmap=eng.kmap +name=Dreambox Keyboard English diff --git a/data/keymaps/eng.kmap b/data/keymaps/eng.kmap new file mode 100644 index 0000000..15a722f Binary files /dev/null and b/data/keymaps/eng.kmap differ diff --git a/data/menu.xml b/data/menu.xml new file mode 100644 index 0000000..0cffe2c --- /dev/null +++ b/data/menu.xml @@ -0,0 +1,86 @@ + + + + + self.session.scart.VCRSbChanged(3) + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +from Screens.FactoryReset import FactoryReset +def msgClosed(ret): + if ret: + from os import system, _exit + system("rm -R /etc/enigma2") + _exit(0) +self.session.openWithCallback(msgClosed, FactoryReset) + + + + + + + + + 2 + 3 + 1 + 1 + + diff --git a/data/prev.png b/data/prev.png new file mode 100644 index 0000000..6a91cb5 Binary files /dev/null and b/data/prev.png differ diff --git a/data/radio-hd.mvi b/data/radio-hd.mvi new file mode 100644 index 0000000..6c6f6aa Binary files /dev/null and b/data/radio-hd.mvi differ diff --git a/data/radio-sd.mvi b/data/radio-sd.mvi new file mode 100644 index 0000000..8475412 Binary files /dev/null and b/data/radio-sd.mvi differ diff --git a/data/radio.mvi b/data/radio.mvi new file mode 100644 index 0000000..6c6f6aa Binary files /dev/null and b/data/radio.mvi differ diff --git a/data/rc_models/Makefile.am b/data/rc_models/Makefile.am new file mode 100644 index 0000000..8a2c774 --- /dev/null +++ b/data/rc_models/Makefile.am @@ -0,0 +1,8 @@ +installdir = $(pkgdatadir)/rc_models + +dist_install_DATA = \ + rc_models.cfg \ + dmmadv.png et4x00.png et8000.png et9x00.png vu.png xp1000.png \ + dmm.png et6x00.png et9500.png gigablue.png vuduo2.png vuultimo.png \ + dmmadv.xml et4x00.xml et8000.xml et9x00.xml vuultimo.xml xp1000.xml \ + dmm.xml et6x00.xml et9500.xml gigablue.xml vuduo2.xml vu.xml diff --git a/data/rc_models/dmm.png b/data/rc_models/dmm.png new file mode 100644 index 0000000..3c608ab Binary files /dev/null and b/data/rc_models/dmm.png differ diff --git a/data/rc_models/dmm.xml b/data/rc_models/dmm.xml new file mode 100644 index 0000000..f5836a0 --- /dev/null +++ b/data/rc_models/dmm.xml @@ -0,0 +1,43 @@ + + + \n') + if menu_count > 1: + authorxml.append(' \n') + if menu_count < job.nr_menus: + authorxml.append(' \n') + menuoutputfilename = job.workspace+"/dvdmenu"+str(menu_count)+".mpg" + authorxml.append(' \n') + authorxml.append(' \n') + authorxml.append(' \n') + authorxml.append(' \n') + for i in range( nr_titles ): + chapters = ','.join(job.project.titles[i].getChapterMarks()) + title_no = i+1 + title_filename = job.workspace + "/dvd_title_%d.mpg" % (title_no) + if job.menupreview: + LinkTS(job, job.project.settings.vmgm.getValue(), title_filename) + else: + MakeFifoNode(job, title_no) + if mode.endswith("linked") and title_no < nr_titles: + post_tag = "jump title %d;" % ( title_no+1 ) + elif mode.startswith("menu"): + post_tag = "call vmgm menu 1;" + else: post_tag = "" + + authorxml.append(' \n') + authorxml.append(' \n') + authorxml.append(' ' + post_tag + ' \n') + authorxml.append(' \n') + + authorxml.append(' \n') + authorxml.append(' \n') + authorxml.append(' \n') + f = open(job.workspace+"/dvdauthor.xml", "w") + for x in authorxml: + f.write(x) + f.close() + +def CreateAuthoringXML_multiset(job): + nr_titles = len(job.project.titles) + mode = job.project.settings.authormode.getValue() + authorxml = [] + authorxml.append('\n') + authorxml.append(' \n') + authorxml.append(' \n') + authorxml.append(' \n') + authorxml.append(' \n') + authorxml.append(' \n') + + for i in range( nr_titles ): + title = job.project.titles[i] + authorxml.append(' \n') + authorxml.append(' \n') + authorxml.append(' \n') + authorxml.append('
\n')
+		authorxml.append('      jump vmgm menu entry title;\n')
+		authorxml.append('     
\n') + authorxml.append('
\n') + authorxml.append('
\n') + authorxml.append(' \n') + for audiotrack in title.properties.audiotracks: + active = audiotrack.active.getValue() + if active: + format = audiotrack.format.getValue() + language = audiotrack.language.getValue() + audio_tag = ' \n') + authorxml.append('
\n') + authorxml.append('
\n') + f = open(job.workspace+"/dvdauthor.xml", "w") + for x in authorxml: + f.write(x) + f.close() + +def getISOfilename(isopath, volName): + from Tools.Directories import fileExists + i = 0 + filename = isopath+'/'+volName+".iso" + while fileExists(filename): + i = i+1 + filename = isopath+'/'+volName + str(i).zfill(3) + ".iso" + return filename + +class DVDJob(Job): + def __init__(self, project, menupreview=False): + Job.__init__(self, "DVDBurn Job") + self.project = project + from time import strftime + from Tools.Directories import SCOPE_HDD, resolveFilename, createDir + new_workspace = resolveFilename(SCOPE_HDD) + "tmp/" + strftime("%Y%m%d%H%M%S") + createDir(new_workspace, True) + self.workspace = new_workspace + self.project.workspace = self.workspace + self.menupreview = menupreview + self.conduct() + + def conduct(self): + CheckDiskspaceTask(self) + if self.project.settings.authormode.getValue().startswith("menu") or self.menupreview: + Menus(self) + if self.project.settings.titlesetmode.getValue() == "multi": + CreateAuthoringXML_multiset(self) + else: + CreateAuthoringXML_singleset(self) + + DVDAuthorTask(self) + + nr_titles = len(self.project.titles) + + if self.menupreview: + PreviewTask(self, self.workspace + "/dvd/VIDEO_TS/") + else: + hasProjectX = os.path.exists('/usr/bin/projectx') + print "[DVDJob] hasProjectX=", hasProjectX + for self.i in range(nr_titles): + self.title = self.project.titles[self.i] + link_name = self.workspace + "/source_title_%d.ts" % (self.i+1) + title_filename = self.workspace + "/dvd_title_%d.mpg" % (self.i+1) + LinkTS(self, self.title.inputfile, link_name) + if not hasProjectX: + ReplexTask(self, outputfile=title_filename, inputfile=link_name).end = self.estimateddvdsize + else: + demux = DemuxTask(self, link_name) + self.mplextask = MplexTask(self, outputfile=title_filename, demux_task=demux) + self.mplextask.end = self.estimateddvdsize + RemoveESFiles(self, demux) + WaitForResidentTasks(self) + PreviewTask(self, self.workspace + "/dvd/VIDEO_TS/") + output = self.project.settings.output.getValue() + volName = self.project.settings.name.getValue() + if output == "dvd": + self.name = _("Burn DVD") + tool = "growisofs" + burnargs = [ "-Z", "/dev/" + harddiskmanager.getCD(), "-dvd-compat" ] + if self.project.size/(1024*1024) > self.project.MAX_SL: + burnargs += [ "-use-the-force-luke=4gms", "-speed=1", "-R" ] + elif output == "iso": + self.name = _("Create DVD-ISO") + tool = "genisoimage" + isopathfile = getISOfilename(self.project.settings.isopath.getValue(), volName) + burnargs = [ "-o", isopathfile ] + burnargs += [ "-dvd-video", "-publisher", "Dreambox", "-V", volName, self.workspace + "/dvd" ] + BurnTask(self, burnargs, tool) + RemoveDVDFolder(self) + +class DVDdataJob(Job): + def __init__(self, project): + Job.__init__(self, "Data DVD Burn") + self.project = project + from time import strftime + from Tools.Directories import SCOPE_HDD, resolveFilename, createDir + new_workspace = resolveFilename(SCOPE_HDD) + "tmp/" + strftime("%Y%m%d%H%M%S") + "/dvd/" + createDir(new_workspace, True) + self.workspace = new_workspace + self.project.workspace = self.workspace + self.conduct() + + def conduct(self): + if self.project.settings.output.getValue() == "iso": + CheckDiskspaceTask(self) + nr_titles = len(self.project.titles) + for self.i in range(nr_titles): + title = self.project.titles[self.i] + filename = title.inputfile.rstrip("/").rsplit("/",1)[1] + link_name = self.workspace + filename + LinkTS(self, title.inputfile, link_name) + CopyMeta(self, title.inputfile) + + output = self.project.settings.output.getValue() + volName = self.project.settings.name.getValue() + tool = "growisofs" + if output == "dvd": + self.name = _("Burn DVD") + burnargs = [ "-Z", "/dev/" + harddiskmanager.getCD(), "-dvd-compat" ] + if self.project.size/(1024*1024) > self.project.MAX_SL: + burnargs += [ "-use-the-force-luke=4gms", "-speed=1", "-R" ] + elif output == "iso": + tool = "genisoimage" + self.name = _("Create DVD-ISO") + isopathfile = getISOfilename(self.project.settings.isopath.getValue(), volName) + burnargs = [ "-o", isopathfile ] + if self.project.settings.dataformat.getValue() == "iso9660_1": + burnargs += ["-iso-level", "1" ] + elif self.project.settings.dataformat.getValue() == "iso9660_4": + burnargs += ["-iso-level", "4", "-allow-limited-size" ] + elif self.project.settings.dataformat.getValue() == "udf": + burnargs += ["-udf", "-allow-limited-size" ] + burnargs += [ "-publisher", "Dreambox", "-V", volName, "-follow-links", self.workspace ] + BurnTask(self, burnargs, tool) + RemoveDVDFolder(self) + +class DVDisoJob(Job): + def __init__(self, project, imagepath): + Job.__init__(self, _("Burn DVD")) + self.project = project + self.menupreview = False + from Tools.Directories import getSize + if imagepath.endswith(".iso"): + PreviewTask(self, imagepath) + burnargs = [ "-Z", "/dev/" + harddiskmanager.getCD() + '='+imagepath, "-dvd-compat" ] + if getSize(imagepath)/(1024*1024) > self.project.MAX_SL: + burnargs += [ "-use-the-force-luke=4gms", "-speed=1", "-R" ] + else: + PreviewTask(self, imagepath + "/VIDEO_TS/") + volName = self.project.settings.name.getValue() + burnargs = [ "-Z", "/dev/" + harddiskmanager.getCD(), "-dvd-compat" ] + if getSize(imagepath)/(1024*1024) > self.project.MAX_SL: + burnargs += [ "-use-the-force-luke=4gms", "-speed=1", "-R" ] + burnargs += [ "-dvd-video", "-publisher", "Dreambox", "-V", volName, imagepath ] + tool = "growisofs" + BurnTask(self, burnargs, tool) diff --git a/lib/python/Plugins/Extensions/DVDBurn/ProjectSettings.py b/lib/python/Plugins/Extensions/DVDBurn/ProjectSettings.py new file mode 100644 index 0000000..110e471 --- /dev/null +++ b/lib/python/Plugins/Extensions/DVDBurn/ProjectSettings.py @@ -0,0 +1,251 @@ +from Screens.Screen import Screen +from Screens.ChoiceBox import ChoiceBox +from Screens.InputBox import InputBox +from Screens.MessageBox import MessageBox +from Screens.HelpMenu import HelpableScreen +from Components.ActionMap import HelpableActionMap, ActionMap +from Components.Sources.List import List +from Components.Sources.StaticText import StaticText +from Components.Sources.Progress import Progress +from Components.FileList import FileList +from Tools.Directories import fileExists, resolveFilename, SCOPE_PLUGINS, SCOPE_FONTS, SCOPE_HDD +from Components.config import config, getConfigListEntry +from Components.ConfigList import ConfigListScreen + +class FileBrowser(Screen, HelpableScreen): + + def __init__(self, session, scope, configRef): + Screen.__init__(self, session) + # for the skin: first try FileBrowser_DVDBurn, then FileBrowser, this allows individual skinning + self.skinName = ["FileBrowser_DVDBurn", "FileBrowser" ] + + HelpableScreen.__init__(self) + self.scope = scope + pattern = "" + self.configRef = configRef + currDir = "/" + if self.scope == "project": + currDir = self.getDir() + pattern = "(?i)^.*\.(ddvdp\.xml)" + elif self.scope == "menutemplate": + currDir = self.getDir() + pattern = "(?i)^.*\.(ddvdm\.xml)" + if self.scope == "menubg": + currDir = self.getDir(configRef.getValue()) + pattern = "(?i)^.*\.(jpeg|jpg|jpe|png|bmp)" + elif self.scope == "menuaudio": + currDir = self.getDir(configRef.getValue()) + pattern = "(?i)^.*\.(mp2|m2a|ac3)" + elif self.scope == "vmgm": + currDir = self.getDir(configRef.getValue()) + pattern = "(?i)^.*\.(mpg|mpeg)" + elif self.scope == "font_face": + currDir = self.getDir(configRef.getValue(), resolveFilename(SCOPE_FONTS)) + pattern = "(?i)^.*\.(ttf)" + elif self.scope == "isopath": + currDir = configRef.getValue() + elif self.scope == "image": + currDir = resolveFilename(SCOPE_HDD) + pattern = "(?i)^.*\.(iso)" + + self.filelist = FileList(currDir, matchingPattern=pattern) + self["filelist"] = self.filelist + + self["FilelistActions"] = ActionMap(["SetupActions"], + { + "save": self.ok, + "ok": self.ok, + "cancel": self.exit + }) + self["key_red"] = StaticText(_("Cancel")) + self["key_green"] = StaticText(_("OK")) + self.onLayoutFinish.append(self.layoutFinished) + + def layoutFinished(self): + self.setTitle(_("DVD file browser")) + + def getDir(self, currentVal=None, defaultDir=None): + if currentVal: + return (currentVal.rstrip("/").rsplit("/",1))[0] + return defaultDir or (resolveFilename(SCOPE_PLUGINS)+"Extensions/DVDBurn/") + + def ok(self): + if self.filelist.canDescent(): + self.filelist.descent() + if self.scope == "image": + path = self["filelist"].getCurrentDirectory() or "" + if fileExists(path+"VIDEO_TS"): + self.close(path,self.scope,self.configRef) + else: + ret = self["filelist"].getCurrentDirectory() + '/' + self["filelist"].getFilename() + self.close(ret,self.scope,self.configRef) + + def exit(self): + if self.scope == "isopath": + self.close(self["filelist"].getCurrentDirectory(),self.scope,self.configRef) + self.close(None,False,None) + +class ProjectSettings(Screen,ConfigListScreen): + skin = """ + + + + + + + + + + + + + """ + + def __init__(self, session, project = None): + Screen.__init__(self, session) + self.project = project + + self["key_red"] = StaticText(_("Cancel")) + self["key_green"] = StaticText(_("OK")) + self["key_yellow"] = StaticText(_("Load")) + if config.usage.setup_level.index >= 2: # expert+ + self["key_blue"] = StaticText(_("Save")) + else: + self["key_blue"] = StaticText() + + if config.usage.setup_level.index >= 2: # expert+ + infotext = _("Available format variables") + ":\n$i=" + _("Track") + ", $t=" + _("Title") + ", $d=" + _("Description") + ", $l=" + _("length") + ", $c=" + _("chapters") + ",\n" + _("Record") + " $T=" + _("Begin time") + ", $Y=" + _("Year") + ", $M=" + _("month") + ", $D=" + _("day") + ",\n$A=" + _("audio tracks") + ", $C=" + _("Channel") + ", $f=" + _("filename") + else: + infotext = "" + self["info"] = StaticText(infotext) + + self.keydict = {} + self.settings = project.settings + ConfigListScreen.__init__(self, []) + self.initConfigList() + + self["setupActions"] = ActionMap(["SetupActions", "ColorActions"], + { + "green": self.exit, + "red": self.cancel, + "blue": self.saveProject, + "yellow": self.loadProject, + "cancel": self.cancel, + "ok": self.ok, + }, -2) + self.onLayoutFinish.append(self.layoutFinished) + + def layoutFinished(self): + self.setTitle(_("Collection settings")) + + def changedConfigList(self): + key = self.keydict[self["config"].getCurrent()[1]] + if key == "authormode" or key == "output": + self.initConfigList() + + def initConfigList(self): + authormode = self.settings.authormode.getValue() + output = self.settings.output.getValue() + self.list = [] + self.list.append(getConfigListEntry(_("Collection name"), self.settings.name)) + self.list.append(getConfigListEntry(_("Authoring mode"), self.settings.authormode)) + self.list.append(getConfigListEntry(_("Output"), self.settings.output)) + if output == "iso": + self.list.append(getConfigListEntry(_("ISO path"), self.settings.isopath)) + if authormode.startswith("menu"): + self.list.append(getConfigListEntry(_("Menu")+' '+_("template file"), self.settings.menutemplate)) + if config.usage.setup_level.index >= 2: # expert+ + self.list.append(getConfigListEntry(_("Menu")+' '+_("Title"), self.project.menutemplate.settings.titleformat)) + self.list.append(getConfigListEntry(_("Menu")+' '+_("Subtitles"), self.project.menutemplate.settings.subtitleformat)) + self.list.append(getConfigListEntry(_("Menu")+' '+_("background image"), self.project.menutemplate.settings.menubg)) + self.list.append(getConfigListEntry(_("Menu")+' '+_("Language selection"), self.project.menutemplate.settings.menulang)) + #self.list.append(getConfigListEntry(_("Menu")+' '+_("headline")+' '+_("color"), self.settings.color_headline)) + #self.list.append(getConfigListEntry(_("Menu")+' '+_("text")+' '+_("color"), self.settings.color_button)) + #self.list.append(getConfigListEntry(_("Menu")+' '+_("highlighted button")+' '+_("color"), self.settings.color_highlight)) + #self.list.append(getConfigListEntry(_("Menu")+' '+_("font face"), self.settings.font_face)) + #self.list.append(getConfigListEntry(_("Font size")+' ('+_("headline")+', '+_("Title")+', '+_("Subtitles")+')', self.settings.font_size)) + #self.list.append(getConfigListEntry(_("Menu")+' '+_("spaces (top, between rows, left)"), self.settings.space)) + #self.list.append(getConfigListEntry(_("Menu")+' '+_("Audio"), self.settings.menuaudio)) + if config.usage.setup_level.index >= 2: # expert+ + if authormode != "data_ts": + self.list.append(getConfigListEntry(_("Titleset mode"), self.settings.titlesetmode)) + if self.settings.titlesetmode.getValue() == "single" or authormode == "just_linked": + self.list.append(getConfigListEntry(_("VMGM (intro trailer)"), self.settings.vmgm)) + else: + self.list.append(getConfigListEntry(_("DVD data format"), self.settings.dataformat)) + + self["config"].setList(self.list) + self.keydict = {} + for key, val in self.settings.dict().iteritems(): + self.keydict[val] = key + for key, val in self.project.menutemplate.settings.dict().iteritems(): + self.keydict[val] = key + + def keyLeft(self): + ConfigListScreen.keyLeft(self) + key = self.keydict[self["config"].getCurrent()[1]] + if key == "authormode" or key == "output" or key=="titlesetmode": + self.initConfigList() + + def keyRight(self): + ConfigListScreen.keyRight(self) + key = self.keydict[self["config"].getCurrent()[1]] + if key == "authormode" or key == "output" or key=="titlesetmode": + self.initConfigList() + + def exit(self): + self.applySettings() + self.close(True) + + def applySettings(self): + for x in self["config"].list: + x[1].save() + + def ok(self): + key = self.keydict[self["config"].getCurrent()[1]] + from DVDProject import ConfigFilename + if type(self["config"].getCurrent()[1]) == ConfigFilename: + self.session.openWithCallback(self.FileBrowserClosed, FileBrowser, key, self["config"].getCurrent()[1]) + + def cancel(self): + self.close(False) + + def loadProject(self): + self.session.openWithCallback(self.FileBrowserClosed, FileBrowser, "project", self.settings) + + def saveProject(self): + if config.usage.setup_level.index >= 2: # expert+ + self.applySettings() + ret = self.project.saveProject(resolveFilename(SCOPE_PLUGINS)+"Extensions/DVDBurn/") + if ret.startswith: + text = _("Save")+' '+_('OK')+':\n'+ret + self.session.open(MessageBox,text,type = MessageBox.TYPE_INFO) + else: + text = _("Save")+' '+_('Error') + self.session.open(MessageBox,text,type = MessageBox.TYPE_ERROR) + + def FileBrowserClosed(self, path, scope, configRef): + if scope == "menutemplate": + if self.project.menutemplate.loadTemplate(path): + print "[ProjectSettings] menu template loaded" + configRef.setValue(path) + self.initConfigList() + else: + self.session.open(MessageBox,self.project.error,MessageBox.TYPE_ERROR) + elif scope == "project": + self.path = path + print "len(self.titles)", len(self.project.titles) + if len(self.project.titles): + self.session.openWithCallback(self.askLoadCB, MessageBox,text = _("Your current collection will get lost!") + "\n" + _("Do you want to restore your settings?"), type = MessageBox.TYPE_YESNO) + else: + self.askLoadCB(True) + elif scope: + configRef.setValue(path) + self.initConfigList() + + def askLoadCB(self, answer): + if answer is not None and answer: + if self.project.loadProject(self.path): + self.initConfigList() + else: + self.session.open(MessageBox,self.project.error,MessageBox.TYPE_ERROR) \ No newline at end of file diff --git a/lib/python/Plugins/Extensions/DVDBurn/Text_menu_boat.ddvdm.xml b/lib/python/Plugins/Extensions/DVDBurn/Text_menu_boat.ddvdm.xml new file mode 100644 index 0000000..bf6356a --- /dev/null +++ b/lib/python/Plugins/Extensions/DVDBurn/Text_menu_boat.ddvdm.xml @@ -0,0 +1,35 @@ + + + + diff --git a/lib/python/Plugins/Extensions/DVDBurn/Thumbs_menu_clouds.ddvdm.xml b/lib/python/Plugins/Extensions/DVDBurn/Thumbs_menu_clouds.ddvdm.xml new file mode 100644 index 0000000..074f203 --- /dev/null +++ b/lib/python/Plugins/Extensions/DVDBurn/Thumbs_menu_clouds.ddvdm.xml @@ -0,0 +1,35 @@ + + + + diff --git a/lib/python/Plugins/Extensions/DVDBurn/TitleCutter.py b/lib/python/Plugins/Extensions/DVDBurn/TitleCutter.py new file mode 100644 index 0000000..abaa9c1 --- /dev/null +++ b/lib/python/Plugins/Extensions/DVDBurn/TitleCutter.py @@ -0,0 +1,88 @@ +from Plugins.Extensions.CutListEditor.ui import CutListEditor +from Components.ServiceEventTracker import ServiceEventTracker +from enigma import iPlayableService, iServiceInformation +from Tools.Directories import fileExists + +class TitleCutter(CutListEditor): + def __init__(self, session, t): + CutListEditor.__init__(self, session, t.source) + self.skin = CutListEditor.skin + self.session = session + self.t = t + self.__event_tracker = ServiceEventTracker(screen=self, eventmap= + { + iPlayableService.evUpdatedInfo: self.getPMTInfo, + iPlayableService.evCuesheetChanged: self.refillList + }) + self.onExecBegin.remove(self.showTutorial) + + def getPMTInfo(self): + service = self.session.nav.getCurrentService() + audio = service and service.audioTracks() + n = audio and audio.getNumberOfTracks() or 0 + if n > 0: + from DVDTitle import ConfigFixedText + from TitleProperties import languageChoices + from Components.config import config, ConfigSubsection, ConfigSubList, ConfigSelection, ConfigYesNo + self.t.properties.audiotracks = ConfigSubList() + for x in range(n): + i = audio.getTrackInfo(x) + DVB_lang = i.getLanguage() + description = i.getDescription() + pid = str(i.getPID()) + if description == "MPEG": + description = "MP2" + print "[audiotrack] pid:", pid, "description:", description, "language:", DVB_lang, "count:", x, "active:", (x < 8) + self.t.properties.audiotracks.append(ConfigSubsection()) + self.t.properties.audiotracks[-1].active = ConfigYesNo(default = (x < 8)) + self.t.properties.audiotracks[-1].format = ConfigFixedText(description) + self.t.properties.audiotracks[-1].language = ConfigSelection(choices = languageChoices.choices, default=languageChoices.getLanguage(DVB_lang)) + self.t.properties.audiotracks[-1].pid = ConfigFixedText(pid) + self.t.properties.audiotracks[-1].DVB_lang = ConfigFixedText(DVB_lang) + sAspect = service.info().getInfo(iServiceInformation.sAspect) + if sAspect in ( 1, 2, 5, 6, 9, 0xA, 0xD, 0xE ): + aspect = "4:3" + else: + aspect = "16:9" + self.t.properties.aspect.setValue(aspect) + self.t.VideoType = service.info().getInfo(iServiceInformation.sVideoType) + + def checkAndGrabThumb(self): + if not fileExists(self.t.inputfile.rsplit('.',1)[0] + ".png"): + CutListEditor.grabFrame(self) + + def exit(self): + if self.t.VideoType == -1: + self.getPMTInfo() + self.checkAndGrabThumb() + self.session.nav.stopService() + self.close(self.cut_list[:]) + +class CutlistReader(TitleCutter): + skin = """ + + + + + + + {"template": [ + MultiContentEntryText(text = 1), + MultiContentEntryText(text = 2) + ], + "fonts": [gFont("Regular", 18)], + "itemHeight": 20 + } + + + + """ + + def __init__(self, session, t): + TitleCutter.__init__(self, session, t) + self.skin = CutlistReader.skin + + def getPMTInfo(self): + TitleCutter.getPMTInfo(self) + TitleCutter.checkAndGrabThumb(self) + self.close(self.cut_list[:]) diff --git a/lib/python/Plugins/Extensions/DVDBurn/TitleList.py b/lib/python/Plugins/Extensions/DVDBurn/TitleList.py new file mode 100644 index 0000000..608f3a2 --- /dev/null +++ b/lib/python/Plugins/Extensions/DVDBurn/TitleList.py @@ -0,0 +1,384 @@ +import DVDProject, TitleList, TitleCutter, TitleProperties, ProjectSettings, DVDToolbox, Process +from Screens.Screen import Screen +from Screens.ChoiceBox import ChoiceBox +from Screens.InputBox import InputBox +from Screens.MessageBox import MessageBox +from Screens.HelpMenu import HelpableScreen +from Screens.TaskView import JobView +from Components.Task import job_manager +from Components.ActionMap import HelpableActionMap, ActionMap +from Components.Sources.List import List +from Components.Sources.StaticText import StaticText +from Components.Sources.Progress import Progress +from Components.MultiContent import MultiContentEntryText +from Components.Label import MultiColorLabel +from enigma import gFont, RT_HALIGN_LEFT, RT_HALIGN_RIGHT +from Tools.Directories import resolveFilename, SCOPE_PLUGINS + +class TitleList(Screen, HelpableScreen): + skin = """ + + + + + + + + + + + + + + {"template": [ + MultiContentEntryText(pos = (0, 0), size = (360, 20), font = 0, flags = RT_HALIGN_LEFT, text = 1), # index 1 Title, + MultiContentEntryText(pos = (0, 20), size = (360, 17), font = 1, flags = RT_HALIGN_LEFT, text = 2), # index 2 description, + MultiContentEntryText(pos = (366, 6), size = (152, 20), font = 1, flags = RT_HALIGN_RIGHT, text = 3), # index 3 channel, + MultiContentEntryText(pos = (366, 20), size = (102, 17), font = 1, flags = RT_HALIGN_RIGHT, text = 4), # index 4 begin time, + MultiContentEntryText(pos = (470, 20), size = (48, 20), font = 1, flags = RT_HALIGN_RIGHT, text = 5), # index 5 duration, + ], + "fonts": [gFont("Regular", 20), gFont("Regular", 14)], + "itemHeight": 37 + } + + + + + + + + + + + + """ + + def __init__(self, session, project = None): + Screen.__init__(self, session) + HelpableScreen.__init__(self) + + self["titleactions"] = HelpableActionMap(self, "DVDTitleList", + { + "addTitle": (self.addTitle, _("Add a new title"), _("Add title")), + "titleProperties": (self.titleProperties, _("Properties of current title"), _("Title properties")), + "removeCurrentTitle": (self.removeCurrentTitle, _("Remove currently selected title"), _("Remove title")), + "settings": (self.settings, _("Collection settings"), _("Settings")), + "burnProject": (self.askBurnProject, _("Burn DVD"), _("Burn DVD")), + }) + + self["MovieSelectionActions"] = HelpableActionMap(self, "MovieSelectionActions", + { + "contextMenu": (self.showMenu, _("menu")), + }) + + self["actions"] = ActionMap(["OkCancelActions"], + { + "cancel": self.leave + }) + + self["key_red"] = StaticText() + self["key_green"] = StaticText(_("Add title")) + self["key_yellow"] = StaticText() + self["key_blue"] = StaticText(_("Settings")) + + self["title_label"] = StaticText() + self["error_label"] = StaticText() + self["space_label_single"] = StaticText() + self["space_label_dual"] = StaticText() + self["hint"] = StaticText(_("Advanced options")) + self["medium_label"] = MultiColorLabel() + self["space_bar_single"] = Progress() + self["space_bar_dual"] = Progress() + + self["titles"] = List([]) + self.previous_size = 0 + if project is not None: + self.project = project + else: + self.newProject() + self.onLayoutFinish.append(self.layoutFinished) + + def layoutFinished(self): + self.setTitle(_("DVD titlelist")) + + def checkBackgroundJobs(self): + for job in job_manager.getPendingJobs(): + print "type(job):", type(job) + print "Process.DVDJob:", Process.DVDJob + if type(job) == Process.DVDJob: + self.backgroundJob = job + return + self.backgroundJob = None + + def showMenu(self): + menu = [] + self.checkBackgroundJobs() + if self.backgroundJob: + j = self.backgroundJob + menu.append(("%s: %s (%d%%)" % (j.getStatustext(), j.name, int(100*j.progress/float(j.end))), self.showBackgroundJob)) + menu.append((_("DVD media toolbox"), self.toolbox)) + if self.project.settings.output.getValue() == "dvd": + if len(self["titles"].list): + menu.append((_("Burn DVD"), self.burnProject)) + elif self.project.settings.output.getValue() == "iso": + menu.append((_("Create DVD-ISO"), self.burnProject)) + menu.append((_("Burn existing image to DVD"), self.selectImage)) + if len(self["titles"].list): + menu.append((_("Preview menu"), self.previewMenu)) + menu.append((_("Edit chapters of current title"), self.editTitle)) + menu.append((_("Reset and renumerate title names"), self.resetTitles)) + menu.append((_("Exit"), self.leave)) + self.session.openWithCallback(self.menuCallback, ChoiceBox, title="", list=menu) + + def menuCallback(self, choice): + if choice: + choice[1]() + + def showBackgroundJob(self): + job_manager.in_background = False + self.session.openWithCallback(self.JobViewCB, JobView, self.backgroundJob) + self.backgroundJob = None + + def titleProperties(self): + if self.getCurrentTitle(): + self.session.openWithCallback(self.updateTitleList, TitleProperties.TitleProperties, self, self.project, self["titles"].getIndex()) + + def selectImage(self): + self.session.openWithCallback(self.burnISO, ProjectSettings.FileBrowser, "image", self.project.settings) + + def newProject(self): + self.project = DVDProject.DVDProject() + if self.loadTemplate(): + self.project.session = self.session + self.settingsCB() + + def addTitle(self): + from Screens.MovieSelection import MovieSelection + from Components.ActionMap import HelpableActionMap + class DVDMovieSelection(MovieSelection): + skin = """ + + + + + + + + + + + ShortDescription + + + Duration + AsLength + + + RecordServiceName + + + ExtendedDescription + + + """ + def __init__(self, session): + MovieSelection.__init__(self, session) + self["key_red"] = StaticText(_("Close")) + self["key_green"] = StaticText(_("Add")) + self["key_yellow"] = StaticText(_("Edit title")) + self["ColorActions"] = HelpableActionMap(self, "ColorActions", + { + "red": (self.close, _("Close title selection")), + "green": (self.insertWithoutEdit, ("insert without cutlist editor")), + "yellow": (self.movieSelected, _("Add a new title")) + }) + def updateTags(self): + pass + def doContext(self): + print "context menu forbidden inside DVDBurn to prevent calling multiple instances" + def updateButtons(self): + # the original will hide red/green, and crash... + pass + def insertWithoutEdit(self): + current = self.getCurrent() + if current is not None: + current.edit = False + self.close(current) + def movieSelected(self): + current = self.getCurrent() + if current is not None: + current.edit = True + self.close(current) + self.session.openWithCallback(self.selectedSource, DVDMovieSelection) + + def selectedSource(self, source = None): + if source is None: + return None + if not source.getPath().endswith(".ts"): + self.session.open(MessageBox,text = _("You can only burn receiver recordings!"), type = MessageBox.TYPE_ERROR) + return None + t = self.project.addService(source) + try: + editor = source.edit + except AttributeError: + editor = True + self.editTitle(t, editor) + + def removeCurrentTitle(self): + title = self.getCurrentTitle() + self.removeTitle(title) + + def removeTitle(self, title): + if title is not None: + self.project.titles.remove(title) + self.updateTitleList() + + def toolbox(self): + self.session.open(DVDToolbox.DVDToolbox) + + def settings(self): + self.session.openWithCallback(self.settingsCB, ProjectSettings.ProjectSettings, self.project) + + def settingsCB(self, update=True): + if not update: + return + self.updateTitleList() + + def loadTemplate(self): + filename = resolveFilename(SCOPE_PLUGINS)+"Extensions/DVDBurn/DreamboxDVD.ddvdp.xml" + if self.project.load(filename): + self["error_label"].setText("") + return True + else: + self["error_label"].setText(self.project.error) + return False + + def askBurnProject(self): + if len(self["titles"].list): + self.session.openWithCallback(self.burnProject,MessageBox,text = _("Do you want to burn this collection to DVD medium?"), type = MessageBox.TYPE_YESNO) + + def burnProject(self, answer=True): + if not answer: + return + if self.project.settings.authormode.getValue() == "data_ts": + job = Process.DVDdataJob(self.project) + job_manager.AddJob(job) + job_manager.in_background = False + self.session.openWithCallback(self.JobViewCB, JobView, job) + else: + job = Process.DVDJob(self.project) + job_manager.AddJob(job) + job_manager.in_background = False + self.session.openWithCallback(self.JobViewCB, JobView, job) + + def burnISO(self, path, scope, configRef): + if path: + job = Process.DVDisoJob(self.project, path) + job_manager.AddJob(job) + job_manager.in_background = False + self.session.openWithCallback(self.JobViewCB, JobView, job) + + def JobViewCB(self, in_background): + job_manager.in_background = in_background + + def previewMenu(self): + job = Process.DVDJob(self.project, menupreview=True) + job_manager.in_background = False + job_manager.AddJob(job) + + def updateTitleList(self): + list = [ ] + for title in self.project.titles: + list.append((title, title.properties.menutitle.getValue(), title.properties.menusubtitle.getValue(), title.DVBchannel, title.formatDVDmenuText("$D.$M.$Y, $T", 0), title.formatDVDmenuText("$l", 0))) + self["titles"].list = list + self.updateSize() + if len(list): + self["key_red"].text = _("Remove title") + self["key_yellow"].text = _("Title properties") + self["title_label"].text = _("Table of contents for collection") + " \"" + self.project.settings.name.getValue() + "\":" + else: + self["key_red"].text = "" + self["key_yellow"].text = "" + self["title_label"].text = _("Please add titles to the compilation.") + + def updateSize(self): + size = self.project.size/(1024*1024) + MAX_DL = self.project.MAX_DL-100 + MAX_SL = self.project.MAX_SL-100 + print "updateSize:", size, "MAX_DL:", MAX_DL, "MAX_SL:", MAX_SL + if size > MAX_DL: + percent = 100 * size / float(MAX_DL) + self["space_label_dual"].text = "%d MB (%.2f%%)" % (size, percent) + self["space_bar_dual"].value = int(percent) + self["space_bar_single"].value = 100 + self["space_label_single"].text = "" + self["medium_label"].setText(_("Exceeds dual layer medium!")) + self["medium_label"].setForegroundColorNum(2) + if self.previous_size < MAX_DL: + self.session.open(MessageBox,text = _("Exceeds dual layer medium!"), type = MessageBox.TYPE_ERROR) + elif size > MAX_SL: + percent = 100 * size / float(MAX_DL) + self["space_label_dual"].text = "%d MB (%.2f%%)" % (size, percent) + self["space_bar_dual"].value = int(percent) + self["space_bar_single"].value = 100 + self["space_label_single"].text = "" + self["medium_label"].setText(_("Required medium type:") + " " + _("DUAL LAYER DVD") + ", %d MB " % (MAX_DL - size) + _("free")) + self["medium_label"].setForegroundColorNum(1) + if self.previous_size < MAX_SL: + self.session.open(MessageBox, text = _("Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!"), timeout = 10, type = MessageBox.TYPE_INFO) + elif size < MAX_SL: + percent = 100 * size / float(MAX_SL) + self["space_label_single"].text = "%d MB (%.2f%%)" % (size, percent) + self["space_bar_single"].value = int(percent) + self["space_bar_dual"].value = 0 + self["space_label_dual"].text = "" + self["medium_label"].setText(_("Required medium type:") + " " + _("SINGLE LAYER DVD") + ", %d MB " % (MAX_SL - size) + _("free")) + self["medium_label"].setForegroundColorNum(0) + self.previous_size = size + + def getCurrentTitle(self): + t = self["titles"].getCurrent() + return t and t[0] + + def editTitle(self, title = None, editor = True): + t = title or self.getCurrentTitle() + if t is not None: + self.current_edit_title = t + if editor: + self.session.openWithCallback(self.titleEditDone, TitleCutter.TitleCutter, t) + else: + self.session.openWithCallback(self.titleEditDone, TitleCutter.CutlistReader, t) + + def titleEditDone(self, cutlist): + t = self.current_edit_title + t.titleEditDone(cutlist) + if t.VideoType != 0: + self.session.openWithCallback(self.DVDformatCB,MessageBox,text = _("The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?"), type = MessageBox.TYPE_YESNO) + else: + self.updateTitleList() + + def resetTitles(self): + count = 0 + for title in self.project.titles: + count += 1 + title.initDVDmenuText(count) + self.updateTitleList() + + def DVDformatCB(self, answer): + t = self.current_edit_title + if answer == True: + self.project.settings.authormode.setValue("data_ts") + self.updateTitleList() + else: + self.removeTitle(t) + + def leave(self, close = False): + if not len(self["titles"].list) or close: + self.close() + else: + self.session.openWithCallback(self.exitCB, MessageBox,text = _("Your current collection will get lost!") + "\n" + _("Do you really want to exit?"), type = MessageBox.TYPE_YESNO) + + def exitCB(self, answer): + print "exitCB", answer + if answer is not None and answer: + self.close() diff --git a/lib/python/Plugins/Extensions/DVDBurn/TitleProperties.py b/lib/python/Plugins/Extensions/DVDBurn/TitleProperties.py new file mode 100644 index 0000000..20bf6d5 --- /dev/null +++ b/lib/python/Plugins/Extensions/DVDBurn/TitleProperties.py @@ -0,0 +1,193 @@ +from Screens.Screen import Screen +from Screens.ChoiceBox import ChoiceBox +from Screens.InputBox import InputBox +from Screens.MessageBox import MessageBox +from Screens.HelpMenu import HelpableScreen +from Components.ActionMap import HelpableActionMap, ActionMap +from Components.Sources.List import List +from Components.Sources.StaticText import StaticText +from Components.Sources.Progress import Progress +from Components.FileList import FileList +from Components.Pixmap import Pixmap +from enigma import ePicLoad +from Tools.Directories import fileExists, resolveFilename, SCOPE_PLUGINS, SCOPE_FONTS, SCOPE_HDD +from Components.config import config, getConfigListEntry, ConfigInteger, ConfigSubsection, ConfigSelection +from Components.ConfigList import ConfigListScreen +from Components.AVSwitch import AVSwitch +import DVDTitle + +class TitleProperties(Screen,ConfigListScreen): + skin = """ + + + + + + + + + + + + + """ + + def __init__(self, session, parent, project, title_idx): + Screen.__init__(self, session) + self.parent = parent + self.project = project + self.title_idx = title_idx + + self["key_red"] = StaticText(_("Cancel")) + self["key_green"] = StaticText(_("OK")) + self["key_yellow"] = StaticText(_("Edit title")) + self["key_blue"] = StaticText() + self["serviceinfo"] = StaticText() + + self["thumbnail"] = Pixmap() + self.picload = ePicLoad() + self.picload.PictureData.get().append(self.paintThumbPixmapCB) + + self.properties = project.titles[title_idx].properties + ConfigListScreen.__init__(self, []) + self.properties.crop = DVDTitle.ConfigFixedText("crop") + self.properties.autochapter.addNotifier(self.initConfigList) + self.properties.aspect.addNotifier(self.initConfigList) + for audiotrack in self.properties.audiotracks: + audiotrack.active.addNotifier(self.initConfigList) + + self["setupActions"] = ActionMap(["SetupActions", "ColorActions"], + { + "green": self.exit, + "red": self.cancel, + "yellow": self.editTitle, + "cancel": self.cancel, + "ok": self.ok, + }, -2) + + self.onShown.append(self.update) + self.onLayoutFinish.append(self.layoutFinished) + + def layoutFinished(self): + self.setTitle(_("Properties of current title")) + + def initConfigList(self, element=None): + try: + self.properties.position = ConfigInteger(default = self.title_idx+1, limits = (1, len(self.project.titles))) + title = self.project.titles[self.title_idx] + self.list = [] + self.list.append(getConfigListEntry("DVD " + _("Track"), self.properties.position)) + self.list.append(getConfigListEntry("DVD " + _("Title"), self.properties.menutitle)) + self.list.append(getConfigListEntry("DVD " + _("Description"), self.properties.menusubtitle)) + if config.usage.setup_level.index >= 2: # expert+ + for audiotrack in self.properties.audiotracks: + DVB_aud = audiotrack.DVB_lang.getValue() or audiotrack.pid.getValue() + self.list.append(getConfigListEntry(_("Burn audio track (%s)") % DVB_aud, audiotrack.active)) + if audiotrack.active.getValue(): + self.list.append(getConfigListEntry(_("Audio track (%s) format") % DVB_aud, audiotrack.format)) + self.list.append(getConfigListEntry(_("Audio track (%s) language") % DVB_aud, audiotrack.language)) + + self.list.append(getConfigListEntry("DVD " + _("Aspect ratio"), self.properties.aspect)) + if self.properties.aspect.getValue() == "16:9": + self.list.append(getConfigListEntry("DVD " + "widescreen", self.properties.widescreen)) + else: + self.list.append(getConfigListEntry("DVD " + "widescreen", self.properties.crop)) + if len(title.chaptermarks) == 0: + self.list.append(getConfigListEntry(_("Auto chapter split every ? minutes (0=never)"), self.properties.autochapter)) + infotext = "DVB " + _("Title") + ': ' + title.DVBname + "\n" + _("Description") + ': ' + title.DVBdescr + "\n" + _("Channel") + ': ' + title.DVBchannel + '\n' + _("Start time") + title.formatDVDmenuText(": $D.$M.$Y, $T\n", self.title_idx+1) + chaptermarks = title.getChapterMarks(template="$h:$m:$s") + chapters_count = len(chaptermarks) + if chapters_count >= 1: + infotext += str(chapters_count+1) + ' ' + _("chapters") + ': ' + infotext += ' / '.join(chaptermarks) + self["serviceinfo"].setText(infotext) + self["config"].setList(self.list) + except AttributeError: + pass + + def editTitle(self): + self.parent.editTitle() + + def update(self): + print "[onShown]" + self.initConfigList() + self.loadThumb() + + def loadThumb(self): + thumbfile = self.project.titles[self.title_idx].inputfile.rsplit('.',1)[0] + ".png" + sc = AVSwitch().getFramebufferScale() + self.picload.setPara((self["thumbnail"].instance.size().width(), self["thumbnail"].instance.size().height(), sc[0], sc[1], False, 1, "#00000000")) + self.picload.startDecode(thumbfile) + + def paintThumbPixmapCB(self, picInfo=None): + ptr = self.picload.getData() + if ptr != None: + self["thumbnail"].instance.setPixmap(ptr.__deref__()) + + def changedConfigList(self): + self.initConfigList() + + def exit(self): + self.applySettings() + self.close() + + def applySettings(self): + for x in self["config"].list: + x[1].save() + current_pos = self.title_idx+1 + new_pos = self.properties.position.getValue() + if new_pos != current_pos: + print "title got repositioned from ", current_pos, "to", new_pos + swaptitle = self.project.titles.pop(current_pos-1) + self.project.titles.insert(new_pos-1, swaptitle) + + def ok(self): + #key = self.keydict[self["config"].getCurrent()[1]] + #if key in self.project.filekeys: + #self.session.openWithCallback(self.FileBrowserClosed, FileBrowser, key, self.settings) + pass + + def cancel(self): + self.close() + +from Tools.ISO639 import LanguageCodes +class LanguageChoices(): + def __init__(self): + from Components.Language import language as syslanguage + syslang = syslanguage.getLanguage()[:2] + self.langdict = { } + self.choices = [] + for key, val in LanguageCodes.iteritems(): + if len(key) == 2: + self.langdict[key] = val[0] + for key, val in self.langdict.iteritems(): + if key not in (syslang, 'en'): + self.langdict[key] = val + self.choices.append((key, val)) + self.choices.sort() + self.choices.insert(0,("nolang", ("unspecified"))) + self.choices.insert(1,(syslang, self.langdict[syslang])) + if syslang != "en": + self.choices.insert(2,("en", self.langdict["en"])) + + def getLanguage(self, DVB_lang): + DVB_lang = DVB_lang.lower() + for word in ("stereo", "audio", "description", "2ch", "dolby digital"): + DVB_lang = DVB_lang.replace(word,"").strip() + for key, val in LanguageCodes.iteritems(): + if DVB_lang.find(key.lower()) == 0: + if len(key) == 2: + return key + else: + DVB_lang = (LanguageCodes[key])[0] + elif DVB_lang.find(val[0].lower()) > -1: + if len(key) == 2: + return key + else: + DVB_lang = (LanguageCodes[key])[0] + for key, val in self.langdict.iteritems(): + if val == DVB_lang: + return key + return "nolang" + +languageChoices = LanguageChoices() diff --git a/lib/python/Plugins/Extensions/DVDBurn/__init__.py b/lib/python/Plugins/Extensions/DVDBurn/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lib/python/Plugins/Extensions/DVDBurn/dreamdvd_boat.jpg b/lib/python/Plugins/Extensions/DVDBurn/dreamdvd_boat.jpg new file mode 100644 index 0000000..a5256e2 Binary files /dev/null and b/lib/python/Plugins/Extensions/DVDBurn/dreamdvd_boat.jpg differ diff --git a/lib/python/Plugins/Extensions/DVDBurn/dreamdvd_clouds.jpg b/lib/python/Plugins/Extensions/DVDBurn/dreamdvd_clouds.jpg new file mode 100644 index 0000000..aacf25d Binary files /dev/null and b/lib/python/Plugins/Extensions/DVDBurn/dreamdvd_clouds.jpg differ diff --git a/lib/python/Plugins/Extensions/DVDBurn/dvdburn.png b/lib/python/Plugins/Extensions/DVDBurn/dvdburn.png new file mode 100644 index 0000000..7e7adea Binary files /dev/null and b/lib/python/Plugins/Extensions/DVDBurn/dvdburn.png differ diff --git a/lib/python/Plugins/Extensions/DVDBurn/keymap.xml b/lib/python/Plugins/Extensions/DVDBurn/keymap.xml new file mode 100644 index 0000000..e8bc104 --- /dev/null +++ b/lib/python/Plugins/Extensions/DVDBurn/keymap.xml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/lib/python/Plugins/Extensions/DVDBurn/meta/Makefile.am b/lib/python/Plugins/Extensions/DVDBurn/meta/Makefile.am new file mode 100644 index 0000000..1a823b7 --- /dev/null +++ b/lib/python/Plugins/Extensions/DVDBurn/meta/Makefile.am @@ -0,0 +1,5 @@ +installdir = $(datadir)/meta + +dist_install_DATA = plugin_dvdburn.xml + +EXTRA_DIST = dvdburn_de.jpg dvdburn_en.jpg diff --git a/lib/python/Plugins/Extensions/DVDBurn/meta/dvdburn_de.jpg b/lib/python/Plugins/Extensions/DVDBurn/meta/dvdburn_de.jpg new file mode 100644 index 0000000..4472971 Binary files /dev/null and b/lib/python/Plugins/Extensions/DVDBurn/meta/dvdburn_de.jpg differ diff --git a/lib/python/Plugins/Extensions/DVDBurn/meta/dvdburn_en.jpg b/lib/python/Plugins/Extensions/DVDBurn/meta/dvdburn_en.jpg new file mode 100644 index 0000000..509816d Binary files /dev/null and b/lib/python/Plugins/Extensions/DVDBurn/meta/dvdburn_en.jpg differ diff --git a/lib/python/Plugins/Extensions/DVDBurn/meta/plugin_dvdburn.xml b/lib/python/Plugins/Extensions/DVDBurn/meta/plugin_dvdburn.xml new file mode 100644 index 0000000..9abe8a2 --- /dev/null +++ b/lib/python/Plugins/Extensions/DVDBurn/meta/plugin_dvdburn.xml @@ -0,0 +1,20 @@ + + + + + + + Dream Multimedia + DVDBurn + enigma2-plugin-extensions-dvdburn + Burn your recordings to DVD + With DVDBurn you can make compilations of records from your receivers hard drive.\n + Optionally you can add customizable menus. You can record the compilation to a standard-compliant DVD that can be played on conventinal DVD players.\n + HDTV recordings can only be burned in proprietary format. + + + + + + + diff --git a/lib/python/Plugins/Extensions/DVDBurn/plugin.py b/lib/python/Plugins/Extensions/DVDBurn/plugin.py new file mode 100644 index 0000000..ca15597 --- /dev/null +++ b/lib/python/Plugins/Extensions/DVDBurn/plugin.py @@ -0,0 +1,17 @@ +from Plugins.Plugin import PluginDescriptor + +def main(session, **kwargs): + import TitleList + import DVDProject + #project = DVDProject.DVDProject() + #project.addService(service) + return session.open(TitleList.TitleList) + +def main_add(session, service, **kwargs): + dvdburn = main(session, **kwargs) + dvdburn.selectedSource(service) + +def Plugins(**kwargs): + descr = _("Burn to DVD") + return [PluginDescriptor(name="DVD Burn", description=descr, where = PluginDescriptor.WHERE_MOVIELIST, needsRestart = True, fnc=main_add, icon="dvdburn.png"), + PluginDescriptor(name="DVD Burn", description=descr, where = PluginDescriptor.WHERE_PLUGINMENU, needsRestart = True, fnc=main, icon="dvdburn.png") ] diff --git a/lib/python/Plugins/Extensions/DVDBurn/silence.mp2 b/lib/python/Plugins/Extensions/DVDBurn/silence.mp2 new file mode 100644 index 0000000..e8a817f Binary files /dev/null and b/lib/python/Plugins/Extensions/DVDBurn/silence.mp2 differ diff --git a/lib/python/Plugins/Extensions/DVDBurn/vmgmblank.mpg b/lib/python/Plugins/Extensions/DVDBurn/vmgmblank.mpg new file mode 100644 index 0000000..8e66168 Binary files /dev/null and b/lib/python/Plugins/Extensions/DVDBurn/vmgmblank.mpg differ diff --git a/lib/python/Plugins/Extensions/DVDBurn/vmgmdream.mpg b/lib/python/Plugins/Extensions/DVDBurn/vmgmdream.mpg new file mode 100644 index 0000000..4797986 Binary files /dev/null and b/lib/python/Plugins/Extensions/DVDBurn/vmgmdream.mpg differ diff --git a/lib/python/Plugins/Extensions/DVDPlayer/Makefile.am b/lib/python/Plugins/Extensions/DVDPlayer/Makefile.am new file mode 100644 index 0000000..b98642b --- /dev/null +++ b/lib/python/Plugins/Extensions/DVDPlayer/Makefile.am @@ -0,0 +1,5 @@ +installdir = $(pkglibdir)/python/Plugins/Extensions/DVDPlayer + +install_PYTHON = \ + __init__.py \ + plugin.py \ No newline at end of file diff --git a/lib/python/Plugins/Extensions/DVDPlayer/__init__.py b/lib/python/Plugins/Extensions/DVDPlayer/__init__.py new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/lib/python/Plugins/Extensions/DVDPlayer/__init__.py @@ -0,0 +1 @@ + diff --git a/lib/python/Plugins/Extensions/DVDPlayer/meta/Makefile.am b/lib/python/Plugins/Extensions/DVDPlayer/meta/Makefile.am new file mode 100644 index 0000000..aa22b99 --- /dev/null +++ b/lib/python/Plugins/Extensions/DVDPlayer/meta/Makefile.am @@ -0,0 +1,5 @@ +installdir = $(datadir)/meta + +dist_install_DATA = plugin_dvdplayer.xml + +EXTRA_DIST = dvdplayer.jpg \ No newline at end of file diff --git a/lib/python/Plugins/Extensions/DVDPlayer/meta/dvdplayer.jpg b/lib/python/Plugins/Extensions/DVDPlayer/meta/dvdplayer.jpg new file mode 100644 index 0000000..92d8b8a Binary files /dev/null and b/lib/python/Plugins/Extensions/DVDPlayer/meta/dvdplayer.jpg differ diff --git a/lib/python/Plugins/Extensions/DVDPlayer/meta/plugin_dvdplayer.xml b/lib/python/Plugins/Extensions/DVDPlayer/meta/plugin_dvdplayer.xml new file mode 100644 index 0000000..4896407 --- /dev/null +++ b/lib/python/Plugins/Extensions/DVDPlayer/meta/plugin_dvdplayer.xml @@ -0,0 +1,16 @@ + + + + + + Dream Multimedia + DVDPlayer + enigma2-plugin-extensions-dvdplayer + DVDPlayer plays your DVDs on your receiver + DVDPlayer plays your DVDs on your receiver.\nWith the DVDPlayer you can play your DVDs on your receiver from a DVD or even from an iso file or video_ts folder on your harddisc or network. + + + + + + diff --git a/lib/python/Plugins/Extensions/DVDPlayer/plugin.py b/lib/python/Plugins/Extensions/DVDPlayer/plugin.py new file mode 100644 index 0000000..e9d53dc --- /dev/null +++ b/lib/python/Plugins/Extensions/DVDPlayer/plugin.py @@ -0,0 +1,96 @@ +import os +from Components.config import config +from Tools.Directories import pathExists, fileExists +from Plugins.Plugin import PluginDescriptor +from Components.Harddisk import harddiskmanager + +detected_DVD = None + +def main(session, **kwargs): + from Screens import DVD + session.open(DVD.DVDPlayer) + +def play(session, **kwargs): + from Screens import DVD + session.open(DVD.DVDPlayer, dvd_device=harddiskmanager.getAutofsMountpoint(harddiskmanager.getCD())) + +def DVDPlayer(*args, **kwargs): + # for backward compatibility with plugins that do "from DVDPlayer.plugin import DVDPlayer" + from Screens import DVD + return DVD.DVDPlayer(*args, **kwargs) + +def DVDOverlay(*args, **kwargs): + # for backward compatibility with plugins that do "from DVDPlayer.plugin import DVDOverlay" + from Screens import DVD + return DVD.DVDOverlay(*args, **kwargs) + +def filescan_open(list, session, **kwargs): + from Screens import DVD + if len(list) == 1 and list[0].mimetype == "video/x-dvd": + splitted = list[0].path.split('/') + print "splitted", splitted + if len(splitted) > 2: + if splitted[1] == 'autofs': + session.open(DVD.DVDPlayer, dvd_device="/dev/%s" %(splitted[2])) + return + else: + print "splitted[0]", splitted[1] + else: + dvd_filelist = [] + for x in list: + if x.mimetype == "video/x-dvd-iso": + dvd_filelist.append(x.path) + if x.mimetype == "video/x-dvd": + dvd_filelist.append(x.path.rsplit('/',1)[0]) + session.open(DVD.DVDPlayer, dvd_filelist=dvd_filelist) + +def filescan(**kwargs): + from Components.Scanner import Scanner, ScanPath + + # Overwrite checkFile to only detect local + class LocalScanner(Scanner): + def checkFile(self, file): + return fileExists(file.path) + + return [ + LocalScanner(mimetypes = ["video/x-dvd","video/x-dvd-iso"], + paths_to_scan = + [ + ScanPath(path = "video_ts", with_subdirs = False), + ScanPath(path = "VIDEO_TS", with_subdirs = False), + ScanPath(path = "", with_subdirs = False), + ], + name = "DVD", + description = _("Play DVD"), + openfnc = filescan_open, + )] + +def onPartitionChange(action, partition): + print "[@] onPartitionChange", action, partition + if partition != harddiskmanager.getCD(): + global detected_DVD + if action == 'remove': + print "[@] DVD removed" + detected_DVD = False + elif action == 'add': + print "[@] DVD Inserted" + detected_DVD = None + +def menu(menuid, **kwargs): + if menuid == "mainmenu": + global detected_DVD + if detected_DVD is None: + cd = harddiskmanager.getCD() + if cd and os.path.exists(os.path.join(harddiskmanager.getAutofsMountpoint(harddiskmanager.getCD()), "VIDEO_TS")): + detected_DVD = True + else: + detected_DVD = False + if onPartitionChange not in harddiskmanager.on_partition_list_change: + harddiskmanager.on_partition_list_change.append(onPartitionChange) + if detected_DVD: + return [(_("DVD player"), play, "dvd_player", 46)] + return [] + +def Plugins(**kwargs): + return [PluginDescriptor(where = PluginDescriptor.WHERE_FILESCAN, needsRestart = False, fnc = filescan), + PluginDescriptor(name = "DVDPlayer", description = "Play DVDs", where = PluginDescriptor.WHERE_MENU, needsRestart = False, fnc = menu)] diff --git a/lib/python/Plugins/Extensions/GraphMultiEPG/GraphMultiEpg.py b/lib/python/Plugins/Extensions/GraphMultiEPG/GraphMultiEpg.py new file mode 100644 index 0000000..19fdf27 --- /dev/null +++ b/lib/python/Plugins/Extensions/GraphMultiEPG/GraphMultiEpg.py @@ -0,0 +1,1174 @@ +from skin import parseColor, parseFont, parseSize +from Components.config import config, ConfigClock, ConfigInteger, ConfigSubsection, ConfigYesNo, ConfigSelection, ConfigSelectionNumber +from Components.Pixmap import Pixmap +from Components.Button import Button +from Components.ActionMap import HelpableActionMap +from Components.HTMLComponent import HTMLComponent +from Components.GUIComponent import GUIComponent +from Components.EpgList import Rect +from Components.Sources.Event import Event +from Components.MultiContent import MultiContentEntryText, MultiContentEntryPixmapAlphaTest +from Components.TimerList import TimerList +from Components.Renderer.Picon import getPiconName +from Components.Sources.ServiceEvent import ServiceEvent +from Screens.Screen import Screen +from Screens.HelpMenu import HelpableScreen +from Screens.EventView import EventViewEPGSelect +from Screens.TimeDateInput import TimeDateInput +from Screens.TimerEntry import TimerEntry +from Screens.EpgSelection import EPGSelection +from Screens.TimerEdit import TimerSanityConflict, TimerEditList +from Screens.MessageBox import MessageBox +from Screens.ChoiceBox import ChoiceBox +from Tools.Directories import resolveFilename, SCOPE_CURRENT_SKIN +from RecordTimer import RecordTimerEntry, parseEvent, AFTEREVENT +from ServiceReference import ServiceReference, isPlayableForCur +from Tools.LoadPixmap import LoadPixmap +from Tools.Alternatives import CompareWithAlternatives +from Tools import Notifications +from enigma import eEPGCache, eListbox, gFont, eListboxPythonMultiContent, RT_HALIGN_LEFT, RT_HALIGN_RIGHT, RT_HALIGN_CENTER,\ + RT_VALIGN_CENTER, RT_WRAP, BT_SCALE, BT_KEEP_ASPECT_RATIO, eSize, eRect, eTimer, getBestPlayableServiceReference, loadPNG +from GraphMultiEpgSetup import GraphMultiEpgSetup +from time import localtime, time, strftime +from Components.PluginComponent import plugins +from Plugins.Plugin import PluginDescriptor +from Tools.BoundFunction import boundFunction + +MAX_TIMELINES = 6 + +config.misc.graph_mepg = ConfigSubsection() +config.misc.graph_mepg.prev_time = ConfigClock(default = time()) +config.misc.graph_mepg.prev_time_period = ConfigInteger(default = 120, limits = (60, 300)) +config.misc.graph_mepg.ev_fontsize = ConfigSelectionNumber(default = 0, stepwidth = 1, min = -8, max = 8, wraparound = True) +config.misc.graph_mepg.items_per_page = ConfigSelectionNumber(min = 3, max = 40, stepwidth = 1, default = 6, wraparound = True) +config.misc.graph_mepg.items_per_page_listscreen = ConfigSelectionNumber(min = 3, max = 60, stepwidth = 1, default = 12, wraparound = True) +config.misc.graph_mepg.default_mode = ConfigYesNo(default = False) +config.misc.graph_mepg.overjump = ConfigYesNo(default = True) +config.misc.graph_mepg.center_timeline = ConfigYesNo(default = False) +config.misc.graph_mepg.servicetitle_mode = ConfigSelection(default = "picon+servicename", choices = [ + ("servicename", _("Service name")), + ("picon", _("Picon")), + ("picon+servicename", _("Picon and service name")) ]) +config.misc.graph_mepg.roundTo = ConfigSelection(default = "900", choices = [("900", _("%d minutes") % 15), ("1800", _("%d minutes") % 30), ("3600", _("%d minutes") % 60)]) +config.misc.graph_mepg.OKButton = ConfigSelection(default = "info", choices = [("info", _("Show detailed event info")), ("zap", _("Zap to selected channel"))]) +possibleAlignmentChoices = [ + ( str(RT_HALIGN_LEFT | RT_VALIGN_CENTER ) , _("left")), + ( str(RT_HALIGN_CENTER | RT_VALIGN_CENTER ) , _("centered")), + ( str(RT_HALIGN_RIGHT | RT_VALIGN_CENTER ) , _("right")), + ( str(RT_HALIGN_LEFT | RT_VALIGN_CENTER | RT_WRAP) , _("left, wrapped")), + ( str(RT_HALIGN_CENTER | RT_VALIGN_CENTER | RT_WRAP) , _("centered, wrapped")), + ( str(RT_HALIGN_RIGHT | RT_VALIGN_CENTER | RT_WRAP) , _("right, wrapped"))] +config.misc.graph_mepg.event_alignment = ConfigSelection(default = possibleAlignmentChoices[0][0], choices = possibleAlignmentChoices) +config.misc.graph_mepg.servicename_alignment = ConfigSelection(default = possibleAlignmentChoices[0][0], choices = possibleAlignmentChoices) +config.misc.graph_mepg.extension_menu = ConfigYesNo(default = False) + +listscreen = config.misc.graph_mepg.default_mode.value + +class EPGList(HTMLComponent, GUIComponent): + def __init__(self, selChangedCB = None, timer = None, time_epoch = 120, overjump_empty = True): + GUIComponent.__init__(self) + self.cur_event = None + self.cur_service = None + self.offs = 0 + self.timer = timer + self.last_time = time() + self.onSelChanged = [ ] + if selChangedCB is not None: + self.onSelChanged.append(selChangedCB) + self.l = eListboxPythonMultiContent() + self.l.setBuildFunc(self.buildEntry) + self.setOverjump_Empty(overjump_empty) + self.epgcache = eEPGCache.getInstance() + self.clocks = [ LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_SKIN, 'skin_default/icons/epgclock_add.png')), + LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_SKIN, 'skin_default/icons/epgclock_pre.png')), + LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_SKIN, 'skin_default/icons/epgclock.png')), + LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_SKIN, 'skin_default/icons/epgclock_prepost.png')), + LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_SKIN, 'skin_default/icons/epgclock_post.png')), + LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_SKIN, 'skin_default/icons/zapclock_add.png')), + LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_SKIN, 'skin_default/icons/zapclock_pre.png')), + LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_SKIN, 'skin_default/icons/zapclock.png')), + LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_SKIN, 'skin_default/icons/zapclock_prepost.png')), + LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_SKIN, 'skin_default/icons/zapclock_post.png')), + LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_SKIN, 'skin_default/icons/zaprecclock_add.png')), + LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_SKIN, 'skin_default/icons/zaprecclock_pre.png')), + LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_SKIN, 'skin_default/icons/zaprecclock.png')), + LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_SKIN, 'skin_default/icons/zaprecclock_prepost.png')), + LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_SKIN, 'skin_default/icons/zaprecclock_post.png')) ] + self.time_base = None + self.time_epoch = time_epoch + self.list = None + self.select_rect = None + self.event_rect = None + self.service_rect = None + self.picon_size = None + self.currentlyPlaying = None + self.showPicon = False + self.showServiceTitle = True + self.nowEvPix = None + self.othEvPix = None + self.selEvPix = None + self.recEvPix = None + self.curSerPix = None + + self.foreColor = 0xffffff + self.foreColorSelected = 0xffc000 + self.borderColor = 0x464445 + self.backColor = 0x595959 + self.backColorSelected = 0x808080 + self.foreColorService = 0xffffff + self.foreColorServiceSelected = 0xffffff + self.backColorService = 0x000000 + self.backColorServiceSelected = 0x508050 + self.borderColorService = 0x000000 + self.foreColorNow = 0xffffff + self.backColorNow = 0x505080 + self.foreColorRec = 0xffffff + self.backColorRec = 0x805050 + self.serviceFont = gFont("Regular", 20) + self.entryFontName = "Regular" + self.entryFontSize = 18 + + self.listHeight = None + self.listWidth = None + self.serviceBorderWidth = 1 + self.serviceNamePadding = 0 + self.eventBorderWidth = 1 + self.eventNamePadding = 0 + + def applySkin(self, desktop, screen): + if self.skinAttributes is not None: + attribs = [ ] + for (attrib, value) in self.skinAttributes: + if attrib == "EntryForegroundColor": + self.foreColor = parseColor(value).argb() + elif attrib == "EntryForegroundColorSelected": + self.foreColorSelected = parseColor(value).argb() + elif attrib == "EntryBackgroundColor": + self.backColor = parseColor(value).argb() + elif attrib == "EntryBackgroundColorSelected": + self.backColorSelected = parseColor(value).argb() + elif attrib == "EntryBorderColor": + self.borderColor = parseColor(value).argb() + elif attrib == "EntryFont": + font = parseFont(value, ((1,1),(1,1)) ) + self.entryFontName = font.family + self.entryFontSize = font.pointSize + elif attrib == "ServiceForegroundColor" or attrib == "ServiceNameForegroundColor": + self.foreColorService = parseColor(value).argb() + elif attrib == "ServiceForegroundColorSelected": + self.foreColorServiceSelected = parseColor(value).argb() + elif attrib == "ServiceBackgroundColor" or attrib == "ServiceNameBackgroundColor": + self.backColorService = parseColor(value).argb() + elif attrib == "ServiceBackgroundColorSelected": + self.backColorServiceSelected = parseColor(value).argb() + elif attrib == "ServiceBackgroundColorRecording" or attrib == "ServiceNameBackgroundColor": + self.backColorRec = parseColor(value).argb() + elif attrib == "ServiceForegroundColorRecording": + self.foreColorRec = parseColor(value).argb() + elif attrib == "ServiceBorderColor": + self.borderColorService = parseColor(value).argb() + elif attrib == "ServiceFont": + self.serviceFont = parseFont(value, ((1,1),(1,1)) ) + elif attrib == "EntryBackgroundColorNow": + self.backColorNow = parseColor(value).argb() + elif attrib == "EntryForegroundColorNow": + self.foreColorNow = parseColor(value).argb() + elif attrib == "ServiceBorderWidth": + self.serviceBorderWidth = int(value) + elif attrib == "ServiceNamePadding": + self.serviceNamePadding = int(value) + elif attrib == "EventBorderWidth": + self.eventBorderWidth = int(value) + elif attrib == "EventNamePadding": + self.eventNamePadding = int(value) + else: + attribs.append((attrib,value)) + self.skinAttributes = attribs + self.l.setFont(0, self.serviceFont) + self.setEventFontsize() + rc = GUIComponent.applySkin(self, desktop, screen) + # now we know our size and can safely set items per page + self.listHeight = self.instance.size().height() + self.listWidth = self.instance.size().width() + self.setItemsPerPage() + return rc + + def isSelectable(self, service, service_name, events, picon): + return (events and len(events) and True) or False + + def setShowServiceMode(self, value): + self.showServiceTitle = "servicename" in value + self.showPicon = "picon" in value + self.recalcEntrySize() + self.selEntry(0) #Select entry again so that the clipping region gets updated if needed + + def setOverjump_Empty(self, overjump_empty): + if overjump_empty: + self.l.setSelectableFunc(self.isSelectable) + else: + self.l.setSelectableFunc(None) + + def setEpoch(self, epoch): + self.offs = 0 + self.time_epoch = epoch + self.fillMultiEPG(None) # refill + + def setCurrentlyPlaying(self, serviceref): + self.currentlyPlaying = serviceref + + def getEventFromId(self, service, eventid): + event = None + if self.epgcache is not None and eventid is not None: + event = self.epgcache.lookupEventId(service.ref, eventid) + return event + + def getIndexFromService(self, serviceref): + if serviceref is not None: + for x in range(len(self.list)): + if CompareWithAlternatives(self.list[x][0], serviceref.toString()): + return x + return None + + def moveToService(self, serviceref): + newIdx = self.getIndexFromService(serviceref) + if newIdx is None: + newIdx = 0 + self.setCurrentIndex(newIdx) + + def setCurrentIndex(self, index): + if self.instance is not None: + self.instance.moveSelectionTo(index) + + def moveTo(self, dir): + if self.instance is not None: + self.instance.moveSelection(dir) + + def getCurrent(self): + if self.cur_service is None: + return (None, None) + old_service = self.cur_service #(service, service_name, events, picon) + events = self.cur_service[2] + refstr = self.cur_service[0] + if self.cur_event is None or not events or not len(events): + return (None, ServiceReference(refstr)) + event = events[self.cur_event] #(event_id, event_title, begin_time, duration) + eventid = event[0] + service = ServiceReference(refstr) + event = self.getEventFromId(service, eventid) # get full event info + return (event, service) + + def connectSelectionChanged(func): + if not self.onSelChanged.count(func): + self.onSelChanged.append(func) + + def disconnectSelectionChanged(func): + self.onSelChanged.remove(func) + + def serviceChanged(self): + cur_sel = self.l.getCurrentSelection() + if cur_sel: + self.findBestEvent() + + def findBestEvent(self): + old_service = self.cur_service #(service, service_name, events, picon) + cur_service = self.cur_service = self.l.getCurrentSelection() + time_base = self.getTimeBase() + now = time() + if old_service and self.cur_event is not None: + events = old_service[2] + cur_event = events[self.cur_event] #(event_id, event_title, begin_time, duration) + if self.last_time < cur_event[2] or cur_event[2]+cur_event[3] < self.last_time: + self.last_time = cur_event[2] + if now > self.last_time: + self.last_time = now + if cur_service: + self.cur_event = None + events = cur_service[2] + if events and len(events): + self.cur_event = idx = 0 + for event in events: #iterate all events + if event[2] <= self.last_time and event[2]+event[3] > self.last_time: + self.cur_event = idx + break + idx += 1 + self.selEntry(0) + + def selectionChanged(self): + for x in self.onSelChanged: + if x is not None: + x() + + GUI_WIDGET = eListbox + + def setItemsPerPage(self): + global listscreen + if self.listHeight > 0: + if listscreen: + itemHeight = self.listHeight / config.misc.graph_mepg.items_per_page_listscreen.getValue() + else: + itemHeight = self.listHeight / config.misc.graph_mepg.items_per_page.getValue() + else: + itemHeight = 54 # some default (270/5) + if listscreen: + self.instance.resize(eSize(self.listWidth, itemHeight * config.misc.graph_mepg.items_per_page_listscreen.getValue())) + else: + self.instance.resize(eSize(self.listWidth, itemHeight * config.misc.graph_mepg.items_per_page.getValue())) + self.l.setItemHeight(itemHeight) + + self.nowEvPix = loadPNG(resolveFilename(SCOPE_CURRENT_SKIN, 'epg/CurrentEvent.png')) + self.othEvPix = loadPNG(resolveFilename(SCOPE_CURRENT_SKIN, 'epg/OtherEvent.png')) + self.selEvPix = loadPNG(resolveFilename(SCOPE_CURRENT_SKIN, 'epg/SelectedEvent.png')) + self.recEvPix = loadPNG(resolveFilename(SCOPE_CURRENT_SKIN, 'epg/RecordingEvent.png')) + self.curSerPix = loadPNG(resolveFilename(SCOPE_CURRENT_SKIN, 'epg/CurrentService.png')) + + def setEventFontsize(self): + self.l.setFont(1, gFont(self.entryFontName, self.entryFontSize + config.misc.graph_mepg.ev_fontsize.getValue())) + + def postWidgetCreate(self, instance): + instance.setWrapAround(True) + instance.selectionChanged.get().append(self.serviceChanged) + instance.setContent(self.l) + self.l.setSelectionClip(eRect(0, 0, 0, 0), False) + + def preWidgetRemove(self, instance): + instance.selectionChanged.get().remove(self.serviceChanged) + instance.setContent(None) + + def recalcEntrySize(self): + esize = self.l.getItemSize() + width = esize.width() + height = esize.height() + if self.showServiceTitle: + w = width / 10 * 2; + else: # if self.showPicon: # this must be set if showServiceTitle is None + w = 2 * height - 2 * self.serviceBorderWidth # FIXME: could do better... + self.service_rect = Rect(0, 0, w, height) + self.event_rect = Rect(w, 0, width - w, height) + piconHeight = height - 2 * self.serviceBorderWidth + piconWidth = 2 * piconHeight # FIXME: could do better... + if piconWidth > w - 2 * self.serviceBorderWidth: + piconWidth = w - 2 * self.serviceBorderWidth + self.picon_size = eSize(piconWidth, piconHeight) + + def calcEntryPosAndWidthHelper(self, stime, duration, start, end, width): + xpos = (stime - start) * width / (end - start) + ewidth = (stime + duration - start) * width / (end - start) + ewidth -= xpos; + if xpos < 0: + ewidth += xpos; + xpos = 0; + if (xpos + ewidth) > width: + ewidth = width - xpos + return xpos, ewidth + + def calcEntryPosAndWidth(self, event_rect, time_base, time_epoch, ev_start, ev_duration): + xpos, width = self.calcEntryPosAndWidthHelper(ev_start, ev_duration, time_base, time_base + time_epoch * 60, event_rect.width()) + return xpos + event_rect.left(), width + + def buildEntry(self, service, service_name, events, picon): + r1 = self.service_rect + r2 = self.event_rect + selected = self.cur_service[0] == service + + # Picon and Service name + if CompareWithAlternatives(service, self.currentlyPlaying and self.currentlyPlaying.toString()): + serviceForeColor = self.foreColorServiceSelected + serviceBackColor = self.backColorServiceSelected + bgpng = self.curSerPix or self.nowEvPix + currentservice = True + else: + serviceForeColor = self.foreColorService + serviceBackColor = self.backColorService + bgpng = self.othEvPix + currentservice = False + + res = [ None ] + if bgpng is not None: # bacground for service rect + res.append(MultiContentEntryPixmapAlphaTest( + pos = (r1.x + self.serviceBorderWidth, r1.y + self.serviceBorderWidth), + size = (r1.w - 2 * self.serviceBorderWidth, r1.h - 2 * self.serviceBorderWidth), + png = bgpng, + flags = BT_SCALE)) + else: + res.append(MultiContentEntryText( + pos = (r1.x, r1.y), + size = (r1.w, r1.h), + font = 0, flags = RT_HALIGN_LEFT | RT_VALIGN_CENTER, + text = "", + color = serviceForeColor, color_sel = serviceForeColor, + backcolor = serviceBackColor, backcolor_sel = serviceBackColor)) + + displayPicon = None + if self.showPicon: + if picon is None: # go find picon and cache its location + picon = getPiconName(service) + curIdx = self.l.getCurrentSelectionIndex() + self.list[curIdx] = (service, service_name, events, picon) + piconWidth = self.picon_size.width() + piconHeight = self.picon_size.height() + if picon != "": + displayPicon = loadPNG(picon) + if displayPicon is not None: + res.append(MultiContentEntryPixmapAlphaTest( + pos = (r1.x + self.serviceBorderWidth, r1.y + self.serviceBorderWidth), + size = (piconWidth, piconHeight), + png = displayPicon, + backcolor = None, backcolor_sel = None, flags = BT_SCALE | BT_KEEP_ASPECT_RATIO)) + elif not self.showServiceTitle: + # no picon so show servicename anyway in picon space + namefont = 1 + namefontflag = int(config.misc.graph_mepg.servicename_alignment.value) + namewidth = piconWidth + piconWidth = 0 + else: + piconWidth = 0 + + if self.showServiceTitle: # we have more space so reset parms + namefont = 0 + namefontflag = int(config.misc.graph_mepg.servicename_alignment.value) + namewidth = r1.w - piconWidth + + if self.showServiceTitle or displayPicon is None: + res.append(MultiContentEntryText( + pos = (r1.x + piconWidth + self.serviceBorderWidth + self.serviceNamePadding, + r1.y + self.serviceBorderWidth), + size = (namewidth - 2 * (self.serviceBorderWidth + self.serviceNamePadding), + r1.h - 2 * self.serviceBorderWidth), + font = namefont, flags = namefontflag, + text = service_name, + color = serviceForeColor, color_sel = serviceForeColor, + backcolor = None, backcolor_sel = None)) + + # Events for service + backColorSel = self.backColorSelected + if events: + start = self.time_base + self.offs * self.time_epoch * 60 + end = start + self.time_epoch * 60 + left = r2.x + top = r2.y + width = r2.w + height = r2.h + + now = time() + for ev in events: #(event_id, event_title, begin_time, duration) + stime = ev[2] + duration = ev[3] + xpos, ewidth = self.calcEntryPosAndWidthHelper(stime, duration, start, end, width) + rec = self.timer.isInTimer(ev[0], stime, duration, service) + + # event box background + foreColorSelected = foreColor = self.foreColor + if stime <= now and now < stime + duration: + backColor = self.backColorNow + if isPlayableForCur(ServiceReference(service).ref): + foreColor = self.foreColorNow + foreColorSelected = self.foreColorSelected + else: + backColor = self.backColor + + if selected and self.select_rect.x == xpos + left and self.selEvPix: + bgpng = self.selEvPix + backColorSel = None + elif rec is not None and rec[1][-1] in (2, 12): + bgpng = self.recEvPix + foreColor = self.foreColorRec + backColor = self.backColorRec + elif stime <= now and now < stime + duration: + bgpng = self.nowEvPix + elif currentservice: + bgpng = self.curSerPix or self.othEvPix + backColor = self.backColorServiceSelected + else: + bgpng = self.othEvPix + + if bgpng is not None: + res.append(MultiContentEntryPixmapAlphaTest( + pos = (left + xpos + self.eventBorderWidth, top + self.eventBorderWidth), + size = (ewidth - 2 * self.eventBorderWidth, height - 2 * self.eventBorderWidth), + png = bgpng, + flags = BT_SCALE)) + else: + res.append(MultiContentEntryText( + pos = (left + xpos, top), size = (ewidth, height), + font = 1, flags = int(config.misc.graph_mepg.event_alignment.value), + text = "", color = None, color_sel = None, + backcolor = backColor, backcolor_sel = backColorSel)) + + # event text + evX = left + xpos + self.eventBorderWidth + self.eventNamePadding + evY = top + self.eventBorderWidth + evW = ewidth - 2 * (self.eventBorderWidth + self.eventNamePadding) + evH = height - 2 * self.eventBorderWidth + if evW > 0: + res.append(MultiContentEntryText( + pos = (evX, evY), + size = (evW, evH), + font = 1, + flags = int(config.misc.graph_mepg.event_alignment.value), + text = ev[1], + color = foreColor, + color_sel = foreColorSelected)) + # recording icons + if rec is not None: + for i in range(len(rec[1])): + if ewidth < (i + 1) * 22: + break + res.append(MultiContentEntryPixmapAlphaTest( + pos = (left + xpos + ewidth - (i + 1) * 22, top + height - 22), size = (21, 21), + png = self.clocks[rec[1][len(rec[1]) - 1 - i]])) + + else: + if selected and self.selEvPix: + res.append(MultiContentEntryPixmapAlphaTest( + pos = (r2.x + self.eventBorderWidth, r2.y + self.eventBorderWidth), + size = (r2.w - 2 * self.eventBorderWidth, r2.h - 2 * self.eventBorderWidth), + png = self.selEvPix, + flags = BT_SCALE)) + return res + + def selEntry(self, dir, visible = True): + cur_service = self.cur_service #(service, service_name, events, picon) + self.recalcEntrySize() + valid_event = self.cur_event is not None + if cur_service: + update = True + entries = cur_service[2] + if dir == 0: #current + update = False + elif dir == +1: #next + if valid_event and self.cur_event + 1 < len(entries): + self.cur_event += 1 + else: + self.offs += 1 + self.fillMultiEPG(None) # refill + return True + elif dir == -1: #prev + if valid_event and self.cur_event - 1 >= 0: + self.cur_event -= 1 + elif self.offs > 0: + self.offs -= 1 + self.fillMultiEPG(None) # refill + return True + elif dir == +2: #next page + self.offs += 1 + self.fillMultiEPG(None) # refill + return True + elif dir == -2: #prev + if self.offs > 0: + self.offs -= 1 + self.fillMultiEPG(None) # refill + return True + elif dir == +3: #next day + self.offs += 60 * 24 / self.time_epoch + self.fillMultiEPG(None) # refill + return True + elif dir == -3: #prev day + self.offs -= 60 * 24 / self.time_epoch + if self.offs < 0: + self.offs = 0; + self.fillMultiEPG(None) # refill + return True + if cur_service and valid_event: + entry = entries[self.cur_event] #(event_id, event_title, begin_time, duration) + time_base = self.time_base + self.offs*self.time_epoch * 60 + xpos, width = self.calcEntryPosAndWidth(self.event_rect, time_base, self.time_epoch, entry[2], entry[3]) + self.select_rect = Rect(xpos ,0, width, self.event_rect.height) + self.l.setSelectionClip(eRect(xpos, 0, width, self.event_rect.h), visible and update) + else: + self.select_rect = self.event_rect + self.l.setSelectionClip(eRect(self.event_rect.x, self.event_rect.y, self.event_rect.w, self.event_rect.h), False) + self.selectionChanged() + return False + + def fillMultiEPG(self, services, stime = None): + if stime is not None: + self.time_base = int(stime) + if services is None: + time_base = self.time_base + self.offs * self.time_epoch * 60 + test = [ (service[0], 0, time_base, self.time_epoch) for service in self.list ] + serviceList = self.list + piconIdx = 3 + else: + self.cur_event = None + self.cur_service = None + test = [ (service.ref.toString(), 0, self.time_base, self.time_epoch) for service in services ] + serviceList = services + piconIdx = 0 + + test.insert(0, 'XRnITBD') #return record, service ref, service name, event id, event title, begin time, duration + epg_data = [] if self.epgcache is None else self.epgcache.lookupEvent(test) + self.list = [ ] + tmp_list = None + service = "" + sname = "" + + serviceIdx = 0 + for x in epg_data: + if service != x[0]: + if tmp_list is not None: + picon = None if piconIdx == 0 else serviceList[serviceIdx][piconIdx] + self.list.append((service, sname, tmp_list[0][0] is not None and tmp_list or None, picon)) + serviceIdx += 1 + service = x[0] + sname = x[1] + tmp_list = [ ] + tmp_list.append((x[2], x[3], x[4], x[5])) #(event_id, event_title, begin_time, duration) + if tmp_list and len(tmp_list): + picon = None if piconIdx == 0 else serviceList[serviceIdx][piconIdx] + self.list.append((service, sname, tmp_list[0][0] is not None and tmp_list or None, picon)) + serviceIdx += 1 + + self.l.setList(self.list) + self.findBestEvent() + + def getEventRect(self): + rc = self.event_rect + return Rect( rc.left() + (self.instance and self.instance.position().x() or 0), rc.top(), rc.width(), rc.height() ) + + def getServiceRect(self): + rc = self.service_rect + return Rect( rc.left() + (self.instance and self.instance.position().x() or 0), rc.top(), rc.width(), rc.height() ) + + def getTimeEpoch(self): + return self.time_epoch + + def getTimeBase(self): + return self.time_base + (self.offs * self.time_epoch * 60) + + def resetOffset(self): + self.offs = 0 + +class TimelineText(HTMLComponent, GUIComponent): + def __init__(self): + GUIComponent.__init__(self) + self.l = eListboxPythonMultiContent() + self.l.setSelectionClip(eRect(0, 0, 0, 0)) + self.l.setItemHeight(25); + self.foreColor = 0xffc000 + self.backColor = 0x000000 + self.time_base = 0 + self.time_epoch = 0 + self.font = gFont("Regular", 20) + + GUI_WIDGET = eListbox + + def applySkin(self, desktop, screen): + if self.skinAttributes is not None: + attribs = [ ] + for (attrib, value) in self.skinAttributes: + if attrib == "foregroundColor": + self.foreColor = parseColor(value).argb() + elif attrib == "backgroundColor": + self.backColor = parseColor(value).argb() + elif attrib == "font": + self.font = parseFont(value, ((1, 1), (1, 1)) ) + else: + attribs.append((attrib,value)) + self.skinAttributes = attribs + self.l.setFont(0, self.font) + return GUIComponent.applySkin(self, desktop, screen) + + def postWidgetCreate(self, instance): + instance.setContent(self.l) + + def setDateFormat(self, value): + if "servicename" in value: + self.datefmt = _("%A %d %B") + elif "picon" in value: + self.datefmt = _("%d-%m") + + def setEntries(self, l, timeline_now, time_lines, force): + event_rect = l.getEventRect() + time_epoch = l.getTimeEpoch() + time_base = l.getTimeBase() + + if event_rect is None or time_epoch is None or time_base is None: + return + + eventLeft = event_rect.left() + res = [ None ] + + # Note: event_rect and service_rect are relative to the timeline_text position + # while the time lines are relative to the GraphEPG screen position! + if self.time_base != time_base or self.time_epoch != time_epoch or force: + service_rect = l.getServiceRect() + itemHeight = self.l.getItemSize().height() + time_steps = 60 if time_epoch > 180 else 30 + num_lines = time_epoch / time_steps + timeStepsCalc = time_steps * 60 + incWidth = event_rect.width() / num_lines + if int(config.misc.graph_mepg.center_timeline.value): + tlMove = incWidth / 2 + tlFlags = RT_HALIGN_CENTER | RT_VALIGN_CENTER + else: + tlMove = 0 + tlFlags = RT_HALIGN_LEFT | RT_VALIGN_CENTER + + res.append( MultiContentEntryText( + pos = (0, 0), + size = (service_rect.width(), itemHeight), + font = 0, flags = RT_HALIGN_LEFT | RT_VALIGN_CENTER, + text = strftime(self.datefmt, localtime(time_base)), + color = self.foreColor, color_sel = self.foreColor, + backcolor = self.backColor, backcolor_sel = self.backColor) ) + + xpos = 0 # eventLeft + for x in range(0, num_lines): + res.append( MultiContentEntryText( + pos = (service_rect.width() + xpos-tlMove, 0), + size = (incWidth, itemHeight), + font = 0, flags = tlFlags, + text = strftime("%H:%M", localtime( time_base + x*timeStepsCalc )), + color = self.foreColor, color_sel = self.foreColor, + backcolor = self.backColor, backcolor_sel = self.backColor) ) + line = time_lines[x] + old_pos = line.position + line.setPosition(xpos + eventLeft, old_pos[1]) + line.visible = True + xpos += incWidth + for x in range(num_lines, MAX_TIMELINES): + time_lines[x].visible = False + self.l.setList([res]) + self.time_base = time_base + self.time_epoch = time_epoch + + now = time() + if now >= time_base and now < (time_base + time_epoch * 60): + xpos = int((((now - time_base) * event_rect.width()) / (time_epoch * 60)) - (timeline_now.instance.size().width() / 2)) + old_pos = timeline_now.position + new_pos = (xpos + eventLeft, old_pos[1]) + if old_pos != new_pos: + timeline_now.setPosition(new_pos[0], new_pos[1]) + timeline_now.visible = True + else: + timeline_now.visible = False + +class GraphMultiEPG(Screen, HelpableScreen): + EMPTY = 0 + ADD_TIMER = 1 + REMOVE_TIMER = 2 + + ZAP = 1 + + def __init__(self, session, services, zapFunc=None, bouquetChangeCB=None, bouquetname=""): + Screen.__init__(self, session) + self.bouquetChangeCB = bouquetChangeCB + now = time() - config.epg.histminutes.getValue() * 60 + self.ask_time = now - now % int(config.misc.graph_mepg.roundTo.getValue()) + self["key_red"] = Button("") + self["key_green"] = Button("") + + global listscreen + if listscreen: + self["key_yellow"] = Button(_("Normal mode")) + self.skinName="GraphMultiEPGList" + else: + self["key_yellow"] = Button(_("List mode")) + + self["key_blue"] = Button(_("Goto")) + + self.key_green_choice = self.EMPTY + self.key_red_choice = self.EMPTY + self["timeline_text"] = TimelineText() + self["Service"] = ServiceEvent() + self["Event"] = Event() + self.time_lines = [ ] + for x in range(0, MAX_TIMELINES): + pm = Pixmap() + self.time_lines.append(pm) + self["timeline%d"%(x)] = pm + self["timeline_now"] = Pixmap() + self.services = services + self.zapFunc = zapFunc + if bouquetname != "": + Screen.setTitle(self, bouquetname) + + self["list"] = EPGList( selChangedCB = self.onSelectionChanged, + timer = self.session.nav.RecordTimer, + time_epoch = config.misc.graph_mepg.prev_time_period.value, + overjump_empty = config.misc.graph_mepg.overjump.value) + + HelpableScreen.__init__(self) + self["okactions"] = HelpableActionMap(self, "OkCancelActions", + { + "cancel": (self.closeScreen, _("Exit EPG")), + "ok": (self.eventSelected, _("Zap to selected channel, or show detailed event info (depends on configuration)")) + }, -1) + self["okactions"].csel = self + self["epgactions"] = HelpableActionMap(self, "EPGSelectActions", + { + "timerAdd": (self.timerAdd, _("Add/remove change timer for current event")), + "info": (self.infoKeyPressed, _("Show detailed event info")), + "red": (self.zapTo, _("Zap to selected channel")), + "yellow": (self.swapMode, _("Switch between normal mode and list mode")), + "blue": (self.enterDateTime, _("Goto specific date/time")), + "menu": (self.furtherOptions, _("Further Options")), + "nextBouquet": (self.nextBouquet, _("Show bouquet selection menu")), + "prevBouquet": (self.prevBouquet, _("Show bouquet selection menu")), + "nextService": (self.nextPressed, _("Goto next page of events")), + "prevService": (self.prevPressed, _("Goto previous page of events")), + "preview": (self.preview, _("Preview selected channel")), + "nextDay": (self.nextDay, _("Goto next day of events")), + "prevDay": (self.prevDay, _("Goto previous day of events")) + }, -1) + self["epgactions"].csel = self + + self["inputactions"] = HelpableActionMap(self, "InputActions", + { + "left": (self.leftPressed, _("Go to previous event")), + "right": (self.rightPressed, _("Go to next event")), + "1": (self.key1, _("Set time window to 1 hour")), + "2": (self.key2, _("Set time window to 2 hours")), + "3": (self.key3, _("Set time window to 3 hours")), + "4": (self.key4, _("Set time window to 4 hours")), + "5": (self.key5, _("Set time window to 5 hours")), + "6": (self.key6, _("Set time window to 6 hours")), + "7": (self.prevPage, _("Go to previous page of service")), + "9": (self.nextPage, _("Go to next page of service")), + "8": (self.toTop, _("Go to first service")), + "0": (self.toEnd, _("Go to last service")) + }, -1) + self["inputactions"].csel = self + + self.updateTimelineTimer = eTimer() + self.updateTimelineTimer.callback.append(self.moveTimeLines) + self.updateTimelineTimer.start(60 * 1000) + self.onLayoutFinish.append(self.onCreate) + self.previousref = self.session.nav.getCurrentlyPlayingServiceOrGroup() + + def prevPage(self): + self["list"].moveTo(eListbox.pageUp) + + def nextPage(self): + self["list"].moveTo(eListbox.pageDown) + + def toTop(self): + self["list"].moveTo(eListbox.moveTop) + + def toEnd(self): + self["list"].moveTo(eListbox.moveEnd) + + def prevPressed(self): + self.updEvent(-2) + + def nextPressed(self): + self.updEvent(+2) + + def leftPressed(self): + self.updEvent(-1) + + def rightPressed(self): + self.updEvent(+1) + + def prevDay(self): + self.updEvent(-3) + + def nextDay(self): + self.updEvent(+3) + + def updEvent(self, dir, visible = True): + ret = self["list"].selEntry(dir, visible) + if ret: + self.moveTimeLines(True) + + def updEpoch(self, mins): + self["list"].setEpoch(mins) + config.misc.graph_mepg.prev_time_period.value = mins + self.moveTimeLines() + + def key1(self): + self.updEpoch(60) + + def key2(self): + self.updEpoch(120) + + def key3(self): + self.updEpoch(180) + + def key4(self): + self.updEpoch(240) + + def key5(self): + self.updEpoch(300) + + def key6(self): + self.updEpoch(360) + + def nextBouquet(self): + if self.bouquetChangeCB: + self.bouquetChangeCB(1, self) + + def prevBouquet(self): + if self.bouquetChangeCB: + self.bouquetChangeCB(-1, self) + + def enterDateTime(self): + t = localtime(time()) + config.misc.graph_mepg.prev_time.value = [t.tm_hour, t.tm_min] + self.session.openWithCallback(self.onDateTimeInputClosed, TimeDateInput, config.misc.graph_mepg.prev_time) + + def onDateTimeInputClosed(self, ret): + if len(ret) > 1: + if ret[0]: + now = time() - config.epg.histminutes.getValue() * 60 + self.ask_time = ret[1] if ret[1] >= now else now + self.ask_time = self.ask_time - self.ask_time % int(config.misc.graph_mepg.roundTo.getValue()) + l = self["list"] + l.resetOffset() + l.fillMultiEPG(None, self.ask_time) + self.moveTimeLines(True) + + def showSetup(self): + self.session.openWithCallback(self.onSetupClose, GraphMultiEpgSetup) + + def onSetupClose(self, ignore = -1): + l = self["list"] + l.setItemsPerPage() + l.setEventFontsize() + l.setEpoch(config.misc.graph_mepg.prev_time_period.value) + l.setOverjump_Empty(config.misc.graph_mepg.overjump.value) + l.setShowServiceMode(config.misc.graph_mepg.servicetitle_mode.value) + now = time() - config.epg.histminutes.getValue() * 60 + self.ask_time = now - now % int(config.misc.graph_mepg.roundTo.getValue()) + self["timeline_text"].setDateFormat(config.misc.graph_mepg.servicetitle_mode.value) + l.fillMultiEPG(None, self.ask_time) + self.moveTimeLines(True) + + def closeScreen(self): + self.zapFunc(None, zapback = True) + config.misc.graph_mepg.save() + self.close(False) + + def furtherOptions(self): + menu = [] + text = _("Select action") + event = self["list"].getCurrent()[0] + if event: + menu = [(p.name, boundFunction(self.runPlugin, p)) for p in plugins.getPlugins(where = PluginDescriptor.WHERE_EVENTINFO) \ + if 'selectedevent' in p.__call__.func_code.co_varnames] + if menu: + text += _(": %s") % event.getEventName() + menu.append((_("Timer Overview"), self.openTimerOverview)) + menu.append((_("Setup menu"), self.showSetup)) + if len(menu) == 1: + menu and menu[0][1]() + elif len(menu) > 1: + def boxAction(choice): + if choice: + choice[1]() + self.session.openWithCallback(boxAction, ChoiceBox, title=text, list=menu) + + def runPlugin(self, plugin): + event = self["list"].getCurrent() + plugin(session=self.session, selectedevent=event) + + def openTimerOverview(self): + self.session.open(TimerEditList) + + def infoKeyPressed(self): + cur = self["list"].getCurrent() + event = cur[0] + service = cur[1] + if event is not None: + self.session.open(EventViewEPGSelect, event, service, self.eventViewCallback, self.openSingleServiceEPG, self.openMultiServiceEPG, self.openSimilarList) + + def openSimilarList(self, eventid, refstr): + self.session.open(EPGSelection, refstr, None, eventid) + + def openSingleServiceEPG(self): + ref = self["list"].getCurrent()[1].ref.toString() + if ref: + self.session.open(EPGSelection, ref) + + def openMultiServiceEPG(self): + if self.services: + self.session.openWithCallback(self.doRefresh, EPGSelection, self.services, self.zapFunc, None, self.bouquetChangeCB) + + def setServices(self, services): + self.services = services + self.onCreate() + + def doRefresh(self, answer): + serviceref = self.session.nav.getCurrentlyPlayingServiceOrGroup() + l = self["list"] + l.moveToService(serviceref) + l.setCurrentlyPlaying(serviceref) + self.moveTimeLines() + + def onCreate(self): + serviceref = self.session.nav.getCurrentlyPlayingServiceOrGroup() + l = self["list"] + l.setShowServiceMode(config.misc.graph_mepg.servicetitle_mode.value) + self["timeline_text"].setDateFormat(config.misc.graph_mepg.servicetitle_mode.value) + l.fillMultiEPG(self.services, self.ask_time) + l.moveToService(serviceref) + l.setCurrentlyPlaying(serviceref) + self.moveTimeLines() + + def eventViewCallback(self, setEvent, setService, val): + l = self["list"] + old = l.getCurrent() + self.updEvent(val, False) + cur = l.getCurrent() + if cur[0] is None and cur[1].ref != old[1].ref: + self.eventViewCallback(setEvent, setService, val) + else: + setService(cur[1]) + setEvent(cur[0]) + + def preview(self): + ref = self["list"].getCurrent()[1] + if ref: + self.zapFunc(ref.ref, preview = True) + self["list"].setCurrentlyPlaying(ref.ref) + self["list"].l.invalidate() + + def zapTo(self): + if self.zapFunc and self.key_red_choice == self.ZAP: + ref = self["list"].getCurrent()[1] + if ref: + from Components.ServiceEventTracker import InfoBarCount + preview = InfoBarCount > 1 + self.zapFunc(ref.ref, preview) + if self.previousref and self.previousref == ref.ref and not preview: + config.misc.graph_mepg.save() + self.close(True) + self.previousref = ref.ref + self["list"].setCurrentlyPlaying(ref.ref) + self["list"].l.invalidate() + + def swapMode(self): + global listscreen + listscreen = not listscreen + self.close(None) + + def eventSelected(self): + if config.misc.graph_mepg.OKButton.value == "info": + self.infoKeyPressed() + else: + self.zapTo() + + def removeTimer(self, timer): + timer.afterEvent = AFTEREVENT.NONE + self.session.nav.RecordTimer.removeEntry(timer) + self["key_green"].setText(_("Add timer")) + self.key_green_choice = self.ADD_TIMER + + def disableTimer(self, timer): + timer.disable() + self.session.nav.RecordTimer.timeChanged(timer) + self["key_green"].setText(_("Add timer")) + self.key_green_choice = self.ADD_TIMER + + def timerAdd(self): + cur = self["list"].getCurrent() + event = cur[0] + if event is None: + return + eventid = event.getEventId() + serviceref = cur[1] + refstr = ':'.join(serviceref.ref.toString().split(':')[:11]) + for timer in self.session.nav.RecordTimer.timer_list: + if timer.eit == eventid and ':'.join(timer.service_ref.ref.toString().split(':')[:11]) == refstr: + menu = [(_("Delete timer"), "delete"),(_("Edit timer"), "edit")] + buttons = ["red", "green"] + if not timer.isRunning(): + menu.append((_("Disable timer"), "disable")) + buttons.append("yellow") + menu.append((_("Timer Overview"), "timereditlist")) + def timerAction(choice): + if choice is not None: + if choice[1] == "delete": + self.removeTimer(timer) + elif choice[1] == "edit": + self.session.open(TimerEntry, timer) + elif choice[1] == "disable": + self.disableTimer(timer) + elif choice[1] == "timereditlist": + self.session.open(TimerEditList) + self.session.openWithCallback(timerAction, ChoiceBox, title=_("Select action for timer %s:") % event.getEventName(), list=menu, keys=buttons) + break + else: + newEntry = RecordTimerEntry(serviceref, checkOldTimers = True, *parseEvent(event)) + self.session.openWithCallback(self.finishedTimerAdd, TimerEntry, newEntry) + + def finishedTimerAdd(self, answer): + print "finished add" + if answer[0]: + entry = answer[1] + simulTimerList = self.session.nav.RecordTimer.record(entry) + if simulTimerList is not None: + for x in simulTimerList: + if x.setAutoincreaseEnd(entry): + self.session.nav.RecordTimer.timeChanged(x) + simulTimerList = self.session.nav.RecordTimer.record(entry) + if simulTimerList is not None: + if not entry.repeated and not config.recording.margin_before.value and not config.recording.margin_after.value and len(simulTimerList) > 1: + change_time = False + conflict_begin = simulTimerList[1].begin + conflict_end = simulTimerList[1].end + if conflict_begin == entry.end: + entry.end -= 30 + change_time = True + elif entry.begin == conflict_end: + entry.begin += 30 + change_time = True + if change_time: + simulTimerList = self.session.nav.RecordTimer.record(entry) + if simulTimerList is not None: + self.session.openWithCallback(self.finishSanityCorrection, TimerSanityConflict, simulTimerList) + self["key_green"].setText(_("Change timer")) + self.key_green_choice = self.REMOVE_TIMER + else: + self["key_green"].setText(_("Add timer")) + self.key_green_choice = self.ADD_TIMER + print "Timeredit aborted" + + def finishSanityCorrection(self, answer): + self.finishedTimerAdd(answer) + + def onSelectionChanged(self): + cur = self["list"].getCurrent() + event = cur[0] + self["Event"].newEvent(event) + + if cur[1] is None or cur[1].getServiceName() == "": + if self.key_green_choice != self.EMPTY: + self["key_green"].setText("") + self.key_green_choice = self.EMPTY + if self.key_red_choice != self.EMPTY: + self["key_red"].setText("") + self.key_red_choice = self.EMPTY + return + + servicerefref = cur[1].ref + self["Service"].newService(servicerefref) + + if self.key_red_choice != self.ZAP: + self["key_red"].setText(_("Zap")) + self.key_red_choice = self.ZAP + + if not event: + if self.key_green_choice != self.EMPTY: + self["key_green"].setText("") + self.key_green_choice = self.EMPTY + return + + eventid = event.getEventId() + refstr = ':'.join(servicerefref.toString().split(':')[:11]) + isRecordEvent = False + for timer in self.session.nav.RecordTimer.timer_list: + if timer.eit == eventid and ':'.join(timer.service_ref.ref.toString().split(':')[:11]) == refstr: + isRecordEvent = True + break + if isRecordEvent and self.key_green_choice != self.REMOVE_TIMER: + self["key_green"].setText(_("Change timer")) + self.key_green_choice = self.REMOVE_TIMER + elif not isRecordEvent and self.key_green_choice != self.ADD_TIMER: + self["key_green"].setText(_("Add timer")) + self.key_green_choice = self.ADD_TIMER + + def moveTimeLines(self, force=False): + self.updateTimelineTimer.start((60 - (int(time()) % 60)) * 1000) #keep syncronised + self["timeline_text"].setEntries(self["list"], self["timeline_now"], self.time_lines, force) + self["list"].l.invalidate() # not needed when the zPosition in the skin is correct! ????? diff --git a/lib/python/Plugins/Extensions/GraphMultiEPG/GraphMultiEpgSetup.py b/lib/python/Plugins/Extensions/GraphMultiEPG/GraphMultiEpgSetup.py new file mode 100644 index 0000000..779ea55 --- /dev/null +++ b/lib/python/Plugins/Extensions/GraphMultiEPG/GraphMultiEpgSetup.py @@ -0,0 +1,67 @@ +from Screens.Screen import Screen +from Screens.MessageBox import MessageBox +from Screens.Console import Console +from Components.ActionMap import ActionMap, NumberActionMap +from Components.Pixmap import Pixmap +from Components.Label import Label +from Components.MenuList import MenuList +from Components.PluginComponent import plugins +from Components.config import config, ConfigSubsection, ConfigInteger, ConfigSelection, ConfigText, ConfigEnableDisable, KEY_LEFT, KEY_RIGHT, KEY_0, getConfigListEntry, ConfigNumber +from Components.ConfigList import ConfigList, ConfigListScreen + +from Tools.Directories import * + +class GraphMultiEpgSetup(Screen, ConfigListScreen): + skin = """ + + + + + + + + + """ + + def __init__(self, session, args = None): + Screen.__init__(self, session) + self.setTitle(_("GraphMultiEpg Settings")) + + self["oktext"] = Label(_("OK")) + self["canceltext"] = Label(_("Cancel")) + + self["actions"] = ActionMap(["SetupActions", "MenuActions"], + { + "ok": self.keySave, + "save": self.keySave, + "cancel": self.keyCancel, + "menu": self.closeRecursive, + }, -1) + + self.onChangedEntry = [ ] + self.session = session + self.list = [] + ConfigListScreen.__init__(self, self.list, session = self.session) + self.createSetup() + + def createSetup(self): + print "Creating Graph Epg Setup" + self.list = [ ] + self.list.append(getConfigListEntry(_("Event font size (relative to skin size)"), config.misc.graph_mepg.ev_fontsize)) + self.list.append(getConfigListEntry(_("Time scale"), config.misc.graph_mepg.prev_time_period)) + self.list.append(getConfigListEntry(_("Items per page "), config.misc.graph_mepg.items_per_page)) + self.list.append(getConfigListEntry(_("Items per page for list screen"), config.misc.graph_mepg.items_per_page_listscreen)) + self.list.append(getConfigListEntry(_("Start with list screen"), config.misc.graph_mepg.default_mode)) + self.list.append(getConfigListEntry(_("Skip empty services"), config.misc.graph_mepg.overjump)) + self.list.append(getConfigListEntry(_("Service title mode"), config.misc.graph_mepg.servicetitle_mode)) + self.list.append(getConfigListEntry(_("Round start time on"), config.misc.graph_mepg.roundTo)) + self.list.append(getConfigListEntry(_("Function of OK button"), config.misc.graph_mepg.OKButton)) + self.list.append(getConfigListEntry(_("Alignment of service names"), config.misc.graph_mepg.servicename_alignment)) + self.list.append(getConfigListEntry(_("Alignment of events"), config.misc.graph_mepg.event_alignment)) + self.list.append(getConfigListEntry(_("Center time-labels and remove date"), config.misc.graph_mepg.center_timeline)) + self.list.append(getConfigListEntry(_("Show in extensions menu"), config.misc.graph_mepg.extension_menu)) + + config.misc.graph_mepg.extension_menu.addNotifier(plugins.reloadPlugins) + + self["config"].list = self.list + self["config"].l.setList(self.list) diff --git a/lib/python/Plugins/Extensions/GraphMultiEPG/Makefile.am b/lib/python/Plugins/Extensions/GraphMultiEPG/Makefile.am new file mode 100644 index 0000000..24ec8ec --- /dev/null +++ b/lib/python/Plugins/Extensions/GraphMultiEPG/Makefile.am @@ -0,0 +1,11 @@ +installdir = $(pkglibdir)/python/Plugins/Extensions/GraphMultiEPG + +SUBDIRS = meta + +install_PYTHON = \ + __init__.py \ + plugin.py \ + GraphMultiEpg.py \ + GraphMultiEpgSetup.py + + diff --git a/lib/python/Plugins/Extensions/GraphMultiEPG/__init__.py b/lib/python/Plugins/Extensions/GraphMultiEPG/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lib/python/Plugins/Extensions/GraphMultiEPG/meta/Makefile.am b/lib/python/Plugins/Extensions/GraphMultiEPG/meta/Makefile.am new file mode 100644 index 0000000..a11d35d --- /dev/null +++ b/lib/python/Plugins/Extensions/GraphMultiEPG/meta/Makefile.am @@ -0,0 +1,5 @@ +installdir = $(datadir)/meta + +dist_install_DATA = plugin_graphmultiepg.xml + +EXTRA_DIST = graphmultiepg_de.jpg graphmultiepg_en.jpg diff --git a/lib/python/Plugins/Extensions/GraphMultiEPG/meta/graphmultiepg_de.jpg b/lib/python/Plugins/Extensions/GraphMultiEPG/meta/graphmultiepg_de.jpg new file mode 100644 index 0000000..b68d095 Binary files /dev/null and b/lib/python/Plugins/Extensions/GraphMultiEPG/meta/graphmultiepg_de.jpg differ diff --git a/lib/python/Plugins/Extensions/GraphMultiEPG/meta/graphmultiepg_en.jpg b/lib/python/Plugins/Extensions/GraphMultiEPG/meta/graphmultiepg_en.jpg new file mode 100644 index 0000000..6953f27 Binary files /dev/null and b/lib/python/Plugins/Extensions/GraphMultiEPG/meta/graphmultiepg_en.jpg differ diff --git a/lib/python/Plugins/Extensions/GraphMultiEPG/meta/plugin_graphmultiepg.xml b/lib/python/Plugins/Extensions/GraphMultiEPG/meta/plugin_graphmultiepg.xml new file mode 100644 index 0000000..d3a2edf --- /dev/null +++ b/lib/python/Plugins/Extensions/GraphMultiEPG/meta/plugin_graphmultiepg.xml @@ -0,0 +1,17 @@ + + + + + + + Dream Multimedia + GraphMultiEPG + enigma2-plugin-extensions-graphmultiepg + GraphMultiEPG shows a graphical timeline EPG + GraphMultiEPG shows a graphical timeline EPG.\nShows a nice overview of all running und upcoming tv shows. + + + + + + diff --git a/lib/python/Plugins/Extensions/GraphMultiEPG/plugin.py b/lib/python/Plugins/Extensions/GraphMultiEPG/plugin.py new file mode 100644 index 0000000..0b33c4a --- /dev/null +++ b/lib/python/Plugins/Extensions/GraphMultiEPG/plugin.py @@ -0,0 +1,162 @@ +from Plugins.Plugin import PluginDescriptor +from GraphMultiEpg import GraphMultiEPG +from Screens.ChannelSelection import BouquetSelector +from enigma import eServiceCenter, eServiceReference +from ServiceReference import ServiceReference +from Screens.Screen import Screen +from Components.ActionMap import ActionMap +from Components.MenuList import MenuList +from Components.config import config + +Session = None +Servicelist = None +bouquetSel = None +epg_bouquet = None +epg = None + +class SelectBouquet(Screen): + skin = """ + + """ + + def __init__(self, session, bouquets, curbouquet, direction, enableWrapAround=True): + Screen.__init__(self, session) + + self["actions"] = ActionMap(["OkCancelActions", "EPGSelectActions"], + { + "ok": self.okbuttonClick, + "cancel": self.cancelClick, + "nextBouquet": self.up, + "prevBouquet": self.down + }) + entrys = [ (x[0], x[1]) for x in bouquets ] + self["menu"] = MenuList(entrys, enableWrapAround) + idx = 0 + for x in bouquets: + if x[1] == curbouquet: + break + idx += 1 + self.idx = idx + self.dir = direction + self.onShow.append(self.__onShow) + + def __onShow(self): + self["menu"].moveToIndex(self.idx) + if self.dir == -1: + self.down() + else: + self.up() + + def getCurrent(self): + cur = self["menu"].getCurrent() + return cur and cur[1] + + def okbuttonClick(self): + self.close(self.getCurrent()) + + def up(self): + self["menu"].up() + + def down(self): + self["menu"].down() + + def cancelClick(self): + self.close(None) + +def zapToService(service, preview = False, zapback = False): + if Servicelist.startServiceRef is None: + Servicelist.startServiceRef = Session.nav.getCurrentlyPlayingServiceReference() + if not service is None: + if not preview and not zapback: + if Servicelist.getRoot() != epg_bouquet: + Servicelist.clearPath() + if Servicelist.bouquet_root != epg_bouquet: + Servicelist.enterPath(Servicelist.bouquet_root) + Servicelist.enterPath(epg_bouquet) + Servicelist.setCurrentSelection(service) + if not zapback or preview: + Servicelist.zap(not preview, preview) + if (Servicelist.dopipzap or zapback) and not preview: + Servicelist.zapBack() + if not preview: + Servicelist.startServiceRef = None + Servicelist.startRoot = None + +def getBouquetServices(bouquet): + services = [ ] + Servicelist = eServiceCenter.getInstance().list(bouquet) + if not Servicelist is None: + while True: + service = Servicelist.getNext() + if not service.valid(): #check if end of list + break + if service.flags & (eServiceReference.isDirectory | eServiceReference.isMarker): #ignore non playable services + continue + services.append(ServiceReference(service)) + return services + +def cleanup(): + global Session + Session = None + global Servicelist + Servicelist = None + global bouquets + bouquets = None + global epg_bouquet + epg_bouquet = None + global epg + epg = None + +def closed(ret=False): + cleanup() + +def onSelectBouquetClose(bouquet): + if not bouquet is None: + services = getBouquetServices(bouquet) + if len(services): + global epg_bouquet + epg_bouquet = bouquet + epg.setServices(services) + epg.setTitle(ServiceReference(epg_bouquet).getServiceName()) + +def changeBouquetCB(direction, epgcall): + global epg + epg = epgcall + Session.openWithCallback(onSelectBouquetClose, SelectBouquet, bouquets, epg_bouquet, direction) + +def main(session, servicelist = None, **kwargs): + global Session + Session = session + global Servicelist + Servicelist = servicelist + global bouquets + bouquets = Servicelist and Servicelist.getBouquetList() + global epg_bouquet + epg_bouquet = Servicelist and Servicelist.getRoot() + runGraphMultiEpg() + +def runGraphMultiEpg(): + global Servicelist + global bouquets + global epg_bouquet + if epg_bouquet is not None: + if len(bouquets) > 1 : + cb = changeBouquetCB + else: + cb = None + services = getBouquetServices(epg_bouquet) + Session.openWithCallback(reopen, GraphMultiEPG, services, zapToService, cb, ServiceReference(epg_bouquet).getServiceName()) + +def reopen(answer): + if answer is None: + runGraphMultiEpg() + else: + closed(answer) + +def Plugins(**kwargs): + name = _("Graphical Multi EPG") + descr = _("A graphical EPG for all services of an specific bouquet") + list = [(PluginDescriptor(name=name, description=descr, where = PluginDescriptor.WHERE_EVENTINFO, needsRestart = False, fnc=main))] + if config.misc.graph_mepg.extension_menu.value: + list.append(PluginDescriptor(name=name, description=descr, where = PluginDescriptor.WHERE_EXTENSIONSMENU, needsRestart = False, fnc=main)) + return list diff --git a/lib/python/Plugins/Extensions/Makefile.am b/lib/python/Plugins/Extensions/Makefile.am new file mode 100644 index 0000000..7a3a9be --- /dev/null +++ b/lib/python/Plugins/Extensions/Makefile.am @@ -0,0 +1,10 @@ +installdir = $(pkglibdir)/python/Plugins/Extensions + +SUBDIRS = TuxboxPlugins CutListEditor PicturePlayer MediaScanner MediaPlayer GraphMultiEPG SocketMMI DVDBurn Modem + +if HAVE_LIBDDVD +SUBDIRS += DVDPlayer +endif + +install_PYTHON = \ + __init__.py diff --git a/lib/python/Plugins/Extensions/MediaPlayer/Makefile.am b/lib/python/Plugins/Extensions/MediaPlayer/Makefile.am new file mode 100644 index 0000000..b99b29e --- /dev/null +++ b/lib/python/Plugins/Extensions/MediaPlayer/Makefile.am @@ -0,0 +1,6 @@ +installdir = $(pkglibdir)/python/Plugins/Extensions/MediaPlayer + +SUBDIRS = meta + +install_PYTHON = \ + __init__.py plugin.py settings.py diff --git a/lib/python/Plugins/Extensions/MediaPlayer/__init__.py b/lib/python/Plugins/Extensions/MediaPlayer/__init__.py new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/lib/python/Plugins/Extensions/MediaPlayer/__init__.py @@ -0,0 +1 @@ + diff --git a/lib/python/Plugins/Extensions/MediaPlayer/meta/Makefile.am b/lib/python/Plugins/Extensions/MediaPlayer/meta/Makefile.am new file mode 100644 index 0000000..e17f0bf --- /dev/null +++ b/lib/python/Plugins/Extensions/MediaPlayer/meta/Makefile.am @@ -0,0 +1,5 @@ +installdir = $(datadir)/meta + +dist_install_DATA = plugin_mediaplayer.xml + +EXTRA_DIST = mediaplayer_de.jpg mediaplayer_en.jpg diff --git a/lib/python/Plugins/Extensions/MediaPlayer/meta/mediaplayer_de.jpg b/lib/python/Plugins/Extensions/MediaPlayer/meta/mediaplayer_de.jpg new file mode 100644 index 0000000..41a67c2 Binary files /dev/null and b/lib/python/Plugins/Extensions/MediaPlayer/meta/mediaplayer_de.jpg differ diff --git a/lib/python/Plugins/Extensions/MediaPlayer/meta/mediaplayer_en.jpg b/lib/python/Plugins/Extensions/MediaPlayer/meta/mediaplayer_en.jpg new file mode 100644 index 0000000..6bfbbc5 Binary files /dev/null and b/lib/python/Plugins/Extensions/MediaPlayer/meta/mediaplayer_en.jpg differ diff --git a/lib/python/Plugins/Extensions/MediaPlayer/meta/plugin_mediaplayer.xml b/lib/python/Plugins/Extensions/MediaPlayer/meta/plugin_mediaplayer.xml new file mode 100644 index 0000000..ffbb8e8 --- /dev/null +++ b/lib/python/Plugins/Extensions/MediaPlayer/meta/plugin_mediaplayer.xml @@ -0,0 +1,16 @@ + + + + + + Dream Multimedia + MediaPlayer + enigma2-plugin-extensions-mediaplayer + Plays your favorite music and videos + Mediaplayer plays your favorite music and videos.\nPlay all your favorite music and video files, organize them in playlists, view cover and album information. + + + + + + diff --git a/lib/python/Plugins/Extensions/MediaPlayer/plugin.py b/lib/python/Plugins/Extensions/MediaPlayer/plugin.py new file mode 100644 index 0000000..34fc4df --- /dev/null +++ b/lib/python/Plugins/Extensions/MediaPlayer/plugin.py @@ -0,0 +1,1128 @@ +import os +from time import strftime +from enigma import iPlayableService, eTimer, eServiceCenter, iServiceInformation, ePicLoad +from ServiceReference import ServiceReference +from Screens.Screen import Screen +from Screens.HelpMenu import HelpableScreen +from Screens.MessageBox import MessageBox +from Screens.InputBox import InputBox +from Screens.ChoiceBox import ChoiceBox +from Screens.InfoBar import InfoBar +from Screens.InfoBarGenerics import InfoBarSeek, InfoBarScreenSaver, InfoBarAudioSelection, InfoBarCueSheetSupport, InfoBarNotifications, InfoBarSubtitleSupport +from Components.ActionMap import NumberActionMap, HelpableActionMap +from Components.Label import Label +from Components.Pixmap import Pixmap,MultiPixmap +from Components.FileList import FileList +from Components.MediaPlayer import PlayList +from Components.MovieList import AUDIO_EXTENSIONS +from Components.ServicePosition import ServicePositionGauge +from Components.ServiceEventTracker import ServiceEventTracker, InfoBarBase +from Components.Playlist import PlaylistIOInternal, PlaylistIOM3U, PlaylistIOPLS +from Components.AVSwitch import AVSwitch +from Components.Harddisk import harddiskmanager +from Components.config import config +from Tools.Directories import fileExists, pathExists, resolveFilename, SCOPE_CONFIG, SCOPE_PLAYLIST, SCOPE_CURRENT_SKIN +from Tools.BoundFunction import boundFunction +from settings import MediaPlayerSettings +import random + +class MyPlayList(PlayList): + def __init__(self): + PlayList.__init__(self) + + def PlayListShuffle(self): + random.shuffle(self.list) + self.l.setList(self.list) + self.currPlaying = -1 + self.oldCurrPlaying = -1 + +class MediaPixmap(Pixmap): + def __init__(self): + Pixmap.__init__(self) + self.coverArtFileName = "" + self.picload = ePicLoad() + self.picload.PictureData.get().append(self.paintCoverArtPixmapCB) + self.coverFileNames = ["folder.png", "folder.jpg"] + + def applySkin(self, desktop, screen): + from Tools.LoadPixmap import LoadPixmap + noCoverFile = None + if self.skinAttributes is not None: + for (attrib, value) in self.skinAttributes: + if attrib == "pixmap": + noCoverFile = value + break + if noCoverFile is None: + noCoverFile = resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/no_coverArt.png") + self.noCoverPixmap = LoadPixmap(noCoverFile) + return Pixmap.applySkin(self, desktop, screen) + + def onShow(self): + Pixmap.onShow(self) + sc = AVSwitch().getFramebufferScale() + #0=Width 1=Height 2=Aspect 3=use_cache 4=resize_type 5=Background(#AARRGGBB) + self.picload.setPara((self.instance.size().width(), self.instance.size().height(), sc[0], sc[1], False, 1, "#00000000")) + + def paintCoverArtPixmapCB(self, picInfo=None): + ptr = self.picload.getData() + if ptr != None: + self.instance.setPixmap(ptr.__deref__()) + + def updateCoverArt(self, path): + while not path.endswith("/"): + path = path[:-1] + new_coverArtFileName = None + for filename in self.coverFileNames: + if fileExists(path + filename): + new_coverArtFileName = path + filename + if self.coverArtFileName != new_coverArtFileName: + self.coverArtFileName = new_coverArtFileName + if new_coverArtFileName: + self.picload.startDecode(self.coverArtFileName) + else: + self.showDefaultCover() + + def showDefaultCover(self): + self.instance.setPixmap(self.noCoverPixmap) + + def embeddedCoverArt(self): + print "[embeddedCoverArt] found" + self.coverArtFileName = "/tmp/.id3coverart" + self.picload.startDecode(self.coverArtFileName) + +class MediaPlayerInfoBar(Screen): + + def __init__(self, session): + Screen.__init__(self, session) + self.skinName = "MoviePlayer" + +class MediaPlayer(Screen, InfoBarBase, InfoBarScreenSaver, InfoBarSeek, InfoBarAudioSelection, InfoBarCueSheetSupport, InfoBarNotifications, InfoBarSubtitleSupport, HelpableScreen): + ALLOW_SUSPEND = True + ENABLE_RESUME_SUPPORT = True + + def __init__(self, session, args = None): + Screen.__init__(self, session) + InfoBarAudioSelection.__init__(self) + InfoBarCueSheetSupport.__init__(self, actionmap = "MediaPlayerCueSheetActions") + InfoBarNotifications.__init__(self) + InfoBarBase.__init__(self) + InfoBarScreenSaver.__init__(self) + InfoBarSubtitleSupport.__init__(self) + HelpableScreen.__init__(self) + self.summary = None + self.oldService = self.session.nav.getCurrentlyPlayingServiceReference() + self.session.nav.stopService() + + self.playlistparsers = {} + self.addPlaylistParser(PlaylistIOM3U, "m3u") + self.addPlaylistParser(PlaylistIOPLS, "pls") + self.addPlaylistParser(PlaylistIOInternal, "e2pls") + + # 'None' is magic to start at the list of mountpoints + defaultDir = config.mediaplayer.defaultDir.getValue() + self.filelist = FileList(defaultDir, matchingPattern = "(?i)^.*\.(mp2|mp3|ogg|ts|mts|m2ts|wav|wave|m3u|pls|e2pls|mpg|vob|avi|divx|m4v|mkv|mp4|m4a|dat|flac|flv|mov|dts|3gp|3g2|asf|wmv|wma)", useServiceRef = True, additionalExtensions = "4098:m3u 4098:e2pls 4098:pls") + self["filelist"] = self.filelist + + self.playlist = MyPlayList() + self.is_closing = False + self.delname = "" + self.playlistname = "" + self["playlist"] = self.playlist + + self["PositionGauge"] = ServicePositionGauge(self.session.nav) + + self["currenttext"] = Label("") + + self["artisttext"] = Label(_("Artist")+':') + self["artist"] = Label("") + self["titletext"] = Label(_("Title")+':') + self["title"] = Label("") + self["albumtext"] = Label(_("Album")+':') + self["album"] = Label("") + self["yeartext"] = Label(_("Year")+':') + self["year"] = Label("") + self["genretext"] = Label(_("Genre")+':') + self["genre"] = Label("") + self["coverArt"] = MediaPixmap() + self["repeat"] = MultiPixmap() + + self.seek_target = None + + try: + from Plugins.SystemPlugins.Hotplug.plugin import hotplugNotifier + hotplugNotifier.append(self.hotplugCB) + except Exception, ex: + print "[MediaPlayer] No hotplug support", ex + + class MoviePlayerActionMap(NumberActionMap): + def __init__(self, player, contexts = [ ], actions = { }, prio=0): + NumberActionMap.__init__(self, contexts, actions, prio) + self.player = player + + def action(self, contexts, action): + self.player.show() + return NumberActionMap.action(self, contexts, action) + + self["OkCancelActions"] = HelpableActionMap(self, "OkCancelActions", + { + "ok": (self.ok, _("Add file to playlist")), + "cancel": (self.exit, _("Exit mediaplayer")), + }, -2) + + self["MediaPlayerActions"] = HelpableActionMap(self, "MediaPlayerActions", + { + "play": (self.xplayEntry, _("Play entry")), + "pause": (self.pauseEntry, _("Pause")), + "stop": (self.stopEntry, _("Stop entry")), + "previous": (self.previousMarkOrEntry, _("Play from previous mark or playlist entry")), + "next": (self.nextMarkOrEntry, _("Play from next mark or playlist entry")), + "menu": (self.showMenu, _("Menu")), + "skipListbegin": (self.skip_listbegin, _("Jump to beginning of list")), + "skipListend": (self.skip_listend, _("Jump to end of list")), + "prevBouquet": (self.switchLists, _("Switch between filelist/playlist")), + "nextBouquet": (self.switchLists, _("Switch between filelist/playlist")), + "delete": (self.deletePlaylistEntry, _("Delete playlist entry")), + "shift_stop": (self.clear_playlist, _("Clear playlist")), + "shift_record": (self.playlist.PlayListShuffle, _("Shuffle playlist")), + "subtitles": (self.subtitleSelection, _("Subtitle selection")), + }, -2) + + self["InfobarEPGActions"] = HelpableActionMap(self, "InfobarEPGActions", + { + "showEventInfo": (self.showEventInformation, _("show event details")), + }) + + self["actions"] = MoviePlayerActionMap(self, ["DirectionActions"], + { + "right": self.rightDown, + "rightRepeated": self.doNothing, + "rightUp": self.rightUp, + "left": self.leftDown, + "leftRepeated": self.doNothing, + "leftUp": self.leftUp, + + "up": self.up, + "upRepeated": self.up, + "upUp": self.doNothing, + "down": self.down, + "downRepeated": self.down, + "downUp": self.doNothing, + }, -2) + + InfoBarSeek.__init__(self, actionmap = "MediaPlayerSeekActions") + + self.mediaPlayerInfoBar = self.session.instantiateDialog(MediaPlayerInfoBar) + + self.onClose.append(self.delMPTimer) + self.onClose.append(self.__onClose) + self.onShow.append(self.timerHideMediaPlayerInfoBar) + + self.righttimer = False + self.rightKeyTimer = eTimer() + self.rightKeyTimer.callback.append(self.rightTimerFire) + + self.lefttimer = False + self.leftKeyTimer = eTimer() + self.leftKeyTimer.callback.append(self.leftTimerFire) + + self.hideMediaPlayerInfoBar = eTimer() + self.hideMediaPlayerInfoBar.callback.append(self.timerHideMediaPlayerInfoBar) + + self.currList = "filelist" + self.isAudioCD = False + self.ext = None + self.AudioCD_albuminfo = {} + self.cdAudioTrackFiles = [] + self.onShown.append(self.applySettings) + + self.playlistIOInternal = PlaylistIOInternal() + list = self.playlistIOInternal.open(resolveFilename(SCOPE_CONFIG, "playlist.e2pls")) + if list: + for x in list: + self.playlist.addFile(x.ref) + self.playlist.updateList() + + self.__event_tracker = ServiceEventTracker(screen=self, eventmap= + { + iPlayableService.evUpdatedInfo: self.__evUpdatedInfo, + iPlayableService.evUser+10: self.__evAudioDecodeError, + iPlayableService.evUser+11: self.__evVideoDecodeError, + iPlayableService.evUser+12: self.__evPluginError, + iPlayableService.evUser+13: self["coverArt"].embeddedCoverArt + }) + + def hideAndInfoBar(self): + self.hide() + self.mediaPlayerInfoBar.show() + if config.mediaplayer.alwaysHideInfoBar.value or self.ext not in AUDIO_EXTENSIONS and not self.isAudioCD: + self.hideMediaPlayerInfoBar.start(5000, True) + + def timerHideMediaPlayerInfoBar(self): + self.hideMediaPlayerInfoBar.stop() + self.mediaPlayerInfoBar.hide() + + def doNothing(self): + pass + + def createSummary(self): + return MediaPlayerLCDScreen + + def exit(self): + if self.mediaPlayerInfoBar.shown: + self.timerHideMediaPlayerInfoBar() + else: + self.session.openWithCallback(self.exitCallback, MessageBox, _("Exit media player?"), simple = not self.shown) + + def exitCallback(self, answer): + if answer: + self.playlistIOInternal.clear() + for x in self.playlist.list: + self.playlistIOInternal.addService(ServiceReference(x[0])) + if self.savePlaylistOnExit: + try: + self.playlistIOInternal.save(resolveFilename(SCOPE_CONFIG, "playlist.e2pls")) + except IOError: + print "couldn't save playlist.e2pls" + if config.mediaplayer.saveDirOnExit.getValue(): + config.mediaplayer.defaultDir.setValue(self.filelist.getCurrentDirectory()) + config.mediaplayer.defaultDir.save() + try: + from Plugins.SystemPlugins.Hotplug.plugin import hotplugNotifier + hotplugNotifier.remove(self.hotplugCB) + except: + pass + del self["coverArt"].picload + self.close() + + def checkSkipShowHideLock(self): + self.updatedSeekState() + + def doEofInternal(self, playing): + if playing: + self.nextEntry() + else: + self.show() + + def __onClose(self): + self.mediaPlayerInfoBar.doClose() + self.session.nav.playService(self.oldService) + + def __evUpdatedInfo(self): + currPlay = self.session.nav.getCurrentService() + sTagTrackNumber = currPlay.info().getInfo(iServiceInformation.sTagTrackNumber) + sTagTrackCount = currPlay.info().getInfo(iServiceInformation.sTagTrackCount) + sTagTitle = currPlay.info().getInfoString(iServiceInformation.sTagTitle) + print "[__evUpdatedInfo] title %d of %d (%s)" % (sTagTrackNumber, sTagTrackCount, sTagTitle) + self.readTitleInformation() + + def __evAudioDecodeError(self): + currPlay = self.session.nav.getCurrentService() + sTagAudioCodec = currPlay.info().getInfoString(iServiceInformation.sTagAudioCodec) + print "[__evAudioDecodeError] audio-codec %s can't be decoded by hardware" % (sTagAudioCodec) + self.session.open(MessageBox, _("This receiver cannot decode %s streams!") % sTagAudioCodec, type = MessageBox.TYPE_INFO,timeout = 20 ) + + def __evVideoDecodeError(self): + currPlay = self.session.nav.getCurrentService() + sTagVideoCodec = currPlay.info().getInfoString(iServiceInformation.sTagVideoCodec) + print "[__evVideoDecodeError] video-codec %s can't be decoded by hardware" % (sTagVideoCodec) + self.session.open(MessageBox, _("This receiver cannot decode %s streams!") % sTagVideoCodec, type = MessageBox.TYPE_INFO,timeout = 20 ) + + def __evPluginError(self): + currPlay = self.session.nav.getCurrentService() + message = currPlay.info().getInfoString(iServiceInformation.sUser+12) + print "[__evPluginError]" , message + self.session.open(MessageBox, message, type = MessageBox.TYPE_INFO,timeout = 20 ) + + def delMPTimer(self): + del self.rightKeyTimer + del self.leftKeyTimer + + def readTitleInformation(self): + currPlay = self.session.nav.getCurrentService() + if currPlay is not None: + sTitle = currPlay.info().getInfoString(iServiceInformation.sTagTitle) + sAlbum = currPlay.info().getInfoString(iServiceInformation.sTagAlbum) + sGenre = currPlay.info().getInfoString(iServiceInformation.sTagGenre) + sArtist = currPlay.info().getInfoString(iServiceInformation.sTagArtist) + sYear = currPlay.info().getInfoString(iServiceInformation.sTagDate) + + if sTitle == "": + if not self.isAudioCD: + sTitle = currPlay.info().getName().split('/')[-1] + else: + sTitle = self.playlist.getServiceRefList()[self.playlist.getCurrentIndex()].getName() + + if self.AudioCD_albuminfo: + if sAlbum == "" and "title" in self.AudioCD_albuminfo: + sAlbum = self.AudioCD_albuminfo["title"] + if sGenre == "" and "genre" in self.AudioCD_albuminfo: + sGenre = self.AudioCD_albuminfo["genre"] + if sArtist == "" and "artist" in self.AudioCD_albuminfo: + sArtist = self.AudioCD_albuminfo["artist"] + if "year" in self.AudioCD_albuminfo: + sYear = self.AudioCD_albuminfo["year"] + + self.updateMusicInformation( sArtist, sTitle, sAlbum, sYear, sGenre, clear = True ) + else: + self.updateMusicInformation() + + def updateMusicInformation(self, artist = "", title = "", album = "", year = "", genre = "", clear = False): + self.updateSingleMusicInformation("artist", artist, clear) + self.updateSingleMusicInformation("title", title, clear) + self.updateSingleMusicInformation("album", album, clear) + self.updateSingleMusicInformation("year", year, clear) + self.updateSingleMusicInformation("genre", genre, clear) + + def updateSingleMusicInformation(self, name, info, clear): + if info != "" or clear: + if self[name].getText() != info: + self[name].setText(info) + + def leftDown(self): + self.lefttimer = True + self.leftKeyTimer.start(1000) + + def rightDown(self): + self.righttimer = True + self.rightKeyTimer.start(1000) + + def leftUp(self): + if self.lefttimer: + self.leftKeyTimer.stop() + self.lefttimer = False + self[self.currList].pageUp() + self.updateCurrentInfo() + + def rightUp(self): + if self.righttimer: + self.rightKeyTimer.stop() + self.righttimer = False + self[self.currList].pageDown() + self.updateCurrentInfo() + + def leftTimerFire(self): + self.leftKeyTimer.stop() + self.lefttimer = False + self.switchToFileList() + + def rightTimerFire(self): + self.rightKeyTimer.stop() + self.righttimer = False + self.switchToPlayList() + + def switchLists(self): + if self.currList == "filelist": + self.switchToPlayList() + return + self.switchToFileList() + + def switchToFileList(self): + self.currList = "filelist" + self.filelist.selectionEnabled(1) + self.playlist.selectionEnabled(0) + self.updateCurrentInfo() + + def switchToPlayList(self): + if len(self.playlist) != 0: + self.currList = "playlist" + self.filelist.selectionEnabled(0) + self.playlist.selectionEnabled(1) + self.updateCurrentInfo() + + def up(self): + self[self.currList].up() + self.updateCurrentInfo() + + def down(self): + self[self.currList].down() + self.updateCurrentInfo() + + def showAfterSeek(self): + if not self.shown: + self.hideAndInfoBar() + + def showAfterCuesheetOperation(self): + self.show() + + def hideAfterResume(self): + self.hideAndInfoBar() + + def getIdentifier(self, ref): + if self.isAudioCD: + return ref.getName() + else: + text = ref.getPath() + return text.split('/')[-1] + + # FIXME: maybe this code can be optimized + def updateCurrentInfo(self): + text = "" + if self.currList == "filelist": + idx = self.filelist.getSelectionIndex() + r = self.filelist.list[idx] + text = r[1][7] + if r[0][1] == True: + if len(text) < 2: + text += " " + if text[:2] != "..": + text = "/" + text + self.summaries.setText(text,1) + + idx += 1 + if idx < len(self.filelist.list): + r = self.filelist.list[idx] + text = r[1][7] + if r[0][1] == True: + text = "/" + text + self.summaries.setText(text,3) + else: + self.summaries.setText(" ",3) + + idx += 1 + if idx < len(self.filelist.list): + r = self.filelist.list[idx] + text = r[1][7] + if r[0][1] == True: + text = "/" + text + self.summaries.setText(text,4) + else: + self.summaries.setText(" ",4) + + text = "" + if not self.filelist.canDescent(): + r = self.filelist.getServiceRef() + if r is None: + return + text = r.getPath() + self["currenttext"].setText(os.path.basename(text)) + + if self.currList == "playlist": + t = self.playlist.getSelection() + if t is None: + return + #display current selected entry on LCD + text = self.getIdentifier(t) + self.summaries.setText(text,1) + self["currenttext"].setText(text) + idx = self.playlist.getSelectionIndex() + idx += 1 + if idx < len(self.playlist): + currref = self.playlist.getServiceRefList()[idx] + text = self.getIdentifier(currref) + self.summaries.setText(text,3) + else: + self.summaries.setText(" ",3) + + idx += 1 + if idx < len(self.playlist): + currref = self.playlist.getServiceRefList()[idx] + text = self.getIdentifier(currref) + self.summaries.setText(text,4) + else: + self.summaries.setText(" ",4) + + def ok(self): + if self.currList == "filelist": + if self.filelist.canDescent(): + self.filelist.descent() + self.updateCurrentInfo() + else: + self.copyFile() + + if self.currList == "playlist": + if self.playlist.getCurrentIndex() == self.playlist.getSelectionIndex() and not self.playlist.isStopped(): + if self.shown: + self.hideAndInfoBar() + elif self.mediaPlayerInfoBar.shown: + self.mediaPlayerInfoBar.hide() + self.hideMediaPlayerInfoBar.stop() + if self.ext in AUDIO_EXTENSIONS or self.isAudioCD: + self.show() + else: + self.mediaPlayerInfoBar.show() + else: + self.changeEntry(self.playlist.getSelectionIndex()) + + def showMenu(self): + menu = [] + if len(self.cdAudioTrackFiles): + menu.insert(0,(_("Play audio-CD..."), "audiocd")) + if self.currList == "filelist": + if self.filelist.canDescent(): + menu.append((_("Add directory to playlist"), "copydir")) + else: + menu.append((_("Add files to playlist"), "copyfiles")) + menu.append((_("Switch to playlist"), "playlist")) + if config.usage.setup_level.index >= 1: # intermediate+ + menu.append((_("Delete file"), "deletefile")) + else: + menu.append((_("Switch to filelist"), "filelist")) + menu.append((_("Clear playlist"), "clear")) + menu.append((_("Delete entry"), "deleteentry")) + if config.usage.setup_level.index >= 1: # intermediate+ + menu.append((_("Shuffle playlist"), "shuffle")) + menu.append((_("Hide player"), "hide")); + menu.append((_("Load playlist"), "loadplaylist")); + if config.usage.setup_level.index >= 1: # intermediate+ + menu.append((_("Save playlist"), "saveplaylist")); + menu.append((_("Delete saved playlist"), "deleteplaylist")); + menu.append((_("Edit settings"), "settings")) + self.timerHideMediaPlayerInfoBar() + self.session.openWithCallback(self.menuCallback, ChoiceBox, title="", list=menu) + + def menuCallback(self, choice): + self.show() + if choice is None: + return + + if choice[1] == "copydir": + self.copyDirectory(self.filelist.getSelection()[0]) + elif choice[1] == "copyfiles": + self.copyDirectory(os.path.dirname(self.filelist.getSelection()[0].getPath()) + "/", recursive = False) + elif choice[1] == "playlist": + self.switchToPlayList() + elif choice[1] == "filelist": + self.switchToFileList() + elif choice[1] == "deleteentry": + if self.playlist.getSelectionIndex() == self.playlist.getCurrentIndex(): + self.stopEntry() + self.deleteEntry() + elif choice[1] == "clear": + self.clear_playlist() + elif choice[1] == "hide": + self.hideAndInfoBar() + elif choice[1] == "saveplaylist": + self.save_playlist() + elif choice[1] == "loadplaylist": + self.load_playlist() + elif choice[1] == "deleteplaylist": + self.delete_saved_playlist() + elif choice[1] == "shuffle": + self.playlist.PlayListShuffle() + elif choice[1] == "deletefile": + self.deleteFile() + elif choice[1] == "settings": + self.session.openWithCallback(self.applySettings, MediaPlayerSettings, self) + elif choice[1] == "audiocd": + self.playAudioCD() + + def playAudioCD(self): + from enigma import eServiceReference + if len(self.cdAudioTrackFiles): + self.playlist.clear() + self.savePlaylistOnExit = False + self.isAudioCD = True + for file in self.cdAudioTrackFiles: + ref = eServiceReference(4097, 0, file) + self.playlist.addFile(ref) + try: + from Plugins.Extensions.CDInfo.plugin import Query + cdinfo = Query(self) + cdinfo.scan() + except ImportError: + pass # we can live without CDInfo + self.changeEntry(0) + self.switchToPlayList() + + def applySettings(self): + self.savePlaylistOnExit = config.mediaplayer.savePlaylistOnExit.getValue() + if config.mediaplayer.repeat.getValue() == True: + self["repeat"].setPixmapNum(1) + else: + self["repeat"].setPixmapNum(0) + + def showEventInformation(self): + from Screens.EventView import EventViewSimple + from ServiceReference import ServiceReference + evt = self[self.currList].getCurrentEvent() + if evt: + self.session.open(EventViewSimple, evt, ServiceReference(self.getCurrent())) + + # also works on filelist (?) + def getCurrent(self): + return self["playlist"].getCurrent() + + def deletePlaylistEntry(self): + if self.currList == "playlist": + if self.playlist.getSelectionIndex() == self.playlist.getCurrentIndex(): + self.stopEntry() + self.deleteEntry() + + def skip_listbegin(self): + if self.currList == "filelist": + self.filelist.moveToIndex(0) + else: + self.playlist.moveToIndex(0) + self.updateCurrentInfo() + + def skip_listend(self): + if self.currList == "filelist": + idx = len(self.filelist.list) + self.filelist.moveToIndex(idx - 1) + else: + self.playlist.moveToIndex(len(self.playlist)-1) + self.updateCurrentInfo() + + def save_playlist(self): + self.session.openWithCallback(self.save_playlist2,InputBox, title=_("Please enter filename (empty = use current date)"),windowTitle = _("Save playlist"), text=self.playlistname) + + def save_playlist2(self, name): + if name is not None: + name = name.strip() + if name == "": + name = strftime("%y%m%d_%H%M%S") + self.playlistname = name + name += ".e2pls" + self.playlistIOInternal.clear() + for x in self.playlist.list: + self.playlistIOInternal.addService(ServiceReference(x[0])) + self.playlistIOInternal.save(resolveFilename(SCOPE_PLAYLIST) + name) + + def load_playlist(self): + listpath = [] + playlistdir = resolveFilename(SCOPE_PLAYLIST) + try: + for i in os.listdir(playlistdir): + listpath.append((i,playlistdir + i)) + except IOError,e: + print "Error while scanning subdirs ",e + if config.mediaplayer.sortPlaylists.value: + listpath.sort() + self.session.openWithCallback(self.PlaylistSelected, ChoiceBox, title=_("Please select a playlist..."), list = listpath) + + def PlaylistSelected(self,path): + if path is not None: + self.playlistname = path[0].rsplit('.',1)[-2] + self.clear_playlist() + extension = path[0].rsplit('.',1)[-1] + if self.playlistparsers.has_key(extension): + playlist = self.playlistparsers[extension]() + list = playlist.open(path[1]) + for x in list: + self.playlist.addFile(x.ref) + self.playlist.updateList() + + def delete_saved_playlist(self): + listpath = [] + playlistdir = resolveFilename(SCOPE_PLAYLIST) + try: + for i in os.listdir(playlistdir): + listpath.append((i,playlistdir + i)) + except IOError,e: + print "Error while scanning subdirs ",e + if config.mediaplayer.sortPlaylists.value: + listpath.sort() + self.session.openWithCallback(self.DeletePlaylistSelected, ChoiceBox, title=_("Please select a playlist to delete..."), list = listpath) + + def DeletePlaylistSelected(self,path): + if path is not None: + self.delname = path[1] + self.session.openWithCallback(self.deleteConfirmed, MessageBox, _("Do you really want to delete %s?") % (path[1])) + + def deleteConfirmed(self, confirmed): + if confirmed: + try: + os.remove(self.delname) + except OSError,e: + print "delete failed:", e + self.session.open(MessageBox, _("Delete failed!"), MessageBox.TYPE_ERROR) + + def clear_playlist(self): + self.isAudioCD = False + self.stopEntry() + self.playlist.clear() + self.switchToFileList() + + def copyDirectory(self, directory, recursive = True): + print "copyDirectory", directory + if directory == '/': + print "refusing to operate on /" + return + filelist = FileList(directory, useServiceRef = True, showMountpoints = False, isTop = True) + + for x in filelist.getFileList(): + if x[0][1] == True: #isDir + if recursive: + if x[0][0] != directory: + self.copyDirectory(x[0][0]) + elif filelist.getServiceRef() and filelist.getServiceRef().type == 4097: + self.playlist.addFile(x[0][0]) + self.playlist.updateList() + + def deleteFile(self): + if self.currList == "filelist": + self.service = self.filelist.getServiceRef() + else: + self.service = self.playlist.getSelection() + if self.service is None: + return + if self.service.type != 4098 and self.session.nav.getCurrentlyPlayingServiceReference() is not None: + if self.service == self.session.nav.getCurrentlyPlayingServiceReference(): + self.stopEntry() + + serviceHandler = eServiceCenter.getInstance() + offline = serviceHandler.offlineOperations(self.service) + info = serviceHandler.info(self.service) + name = info and info.getName(self.service) + result = False + if offline is not None: + # simulate first + if not offline.deleteFromDisk(1): + result = True + if result == True: + self.session.openWithCallback(self.deleteConfirmed_offline, MessageBox, _("Do you really want to delete %s?") % (name)) + else: + self.session.openWithCallback(self.close, MessageBox, _("You cannot delete this!"), MessageBox.TYPE_ERROR) + + def deleteConfirmed_offline(self, confirmed): + if confirmed: + serviceHandler = eServiceCenter.getInstance() + offline = serviceHandler.offlineOperations(self.service) + result = False + if offline is not None: + # really delete! + if not offline.deleteFromDisk(0): + result = True + if result == False: + self.session.open(MessageBox, _("Delete failed!"), MessageBox.TYPE_ERROR) + else: + self.removeListEntry() + + def removeListEntry(self): + currdir = self.filelist.getCurrentDirectory() + self.filelist.changeDir(currdir) + deleteend = False + while not deleteend: + index = 0 + deleteend = True + if len(self.playlist) > 0: + for x in self.playlist.list: + if self.service == x[0]: + self.playlist.deleteFile(index) + deleteend = False + break + index += 1 + self.playlist.updateList() + if self.currList == "playlist": + if len(self.playlist) == 0: + self.switchToFileList() + + def copyFile(self): + if self.filelist.getServiceRef().type == 4098: # playlist + ServiceRef = self.filelist.getServiceRef() + extension = ServiceRef.getPath()[ServiceRef.getPath().rfind('.') + 1:] + if self.playlistparsers.has_key(extension): + playlist = self.playlistparsers[extension]() + list = playlist.open(ServiceRef.getPath()) + for x in list: + self.playlist.addFile(x.ref) + self.playlist.updateList() + else: + self.playlist.addFile(self.filelist.getServiceRef()) + self.playlist.updateList() + if len(self.playlist) == 1: + self.changeEntry(0) + + def addPlaylistParser(self, parser, extension): + self.playlistparsers[extension] = parser + + def nextEntry(self): + next = self.playlist.getCurrentIndex() + 1 + if next < len(self.playlist): + self.changeEntry(next) + elif ( len(self.playlist) > 0 ) and ( config.mediaplayer.repeat.getValue() == True ): + self.stopEntry() + self.changeEntry(0) + elif ( len(self.playlist) > 0 ): + self.stopEntry() + + def nextMarkOrEntry(self): + if not self.jumpPreviousNextMark(lambda x: x): + next = self.playlist.getCurrentIndex() + 1 + if next < len(self.playlist): + self.changeEntry(next) + else: + self.doSeek(-1) + + def previousMarkOrEntry(self): + if not self.jumpPreviousNextMark(lambda x: -x-5*90000, start=True): + next = self.playlist.getCurrentIndex() - 1 + if next >= 0: + self.changeEntry(next) + + def deleteEntry(self): + self.playlist.deleteFile(self.playlist.getSelectionIndex()) + self.playlist.updateList() + if len(self.playlist) == 0: + self.switchToFileList() + + def changeEntry(self, index): + self.playlist.setCurrentPlaying(index) + self.playEntry() + + def playServiceRefEntry(self, serviceref): + serviceRefList = self.playlist.getServiceRefList() + for count in range(len(serviceRefList)): + if serviceRefList[count] == serviceref: + self.changeEntry(count) + break + + def xplayEntry(self): + if self.currList == "playlist": + self.playEntry() + else: + self.stopEntry() + self.playlist.clear() + self.isAudioCD = False + sel = self.filelist.getSelection() + if sel: + if sel[1]: # can descent + # add directory to playlist + self.copyDirectory(sel[0]) + else: + # add files to playlist + self.copyDirectory(os.path.dirname(sel[0].getPath()) + "/", recursive = False) + if len(self.playlist) > 0: + self.changeEntry(0) + + def playEntry(self): + if len(self.playlist.getServiceRefList()): + needsInfoUpdate = False + currref = self.playlist.getServiceRefList()[self.playlist.getCurrentIndex()] + if self.session.nav.getCurrentlyPlayingServiceReference() is None or currref != self.session.nav.getCurrentlyPlayingServiceReference() or self.playlist.isStopped(): + self.session.nav.playService(self.playlist.getServiceRefList()[self.playlist.getCurrentIndex()]) + info = eServiceCenter.getInstance().info(currref) + description = info and info.getInfoString(currref, iServiceInformation.sDescription) or "" + self["title"].setText(description) + # display just playing musik on LCD + idx = self.playlist.getCurrentIndex() + currref = self.playlist.getServiceRefList()[idx] + text = self.getIdentifier(currref) + self.ext = os.path.splitext(text)[1].lower() + text = ">"+text + # FIXME: the information if the service contains video (and we should hide our window) should com from the service instead + if self.ext not in AUDIO_EXTENSIONS and not self.isAudioCD: + self.hideAndInfoBar() + else: + needsInfoUpdate = True + self.summaries.setText(text,1) + + # get the next two entries + idx += 1 + if idx < len(self.playlist): + currref = self.playlist.getServiceRefList()[idx] + text = self.getIdentifier(currref) + self.summaries.setText(text,3) + else: + self.summaries.setText(" ",3) + + idx += 1 + if idx < len(self.playlist): + currref = self.playlist.getServiceRefList()[idx] + text = self.getIdentifier(currref) + self.summaries.setText(text,4) + else: + self.summaries.setText(" ",4) + else: + idx = self.playlist.getCurrentIndex() + currref = self.playlist.getServiceRefList()[idx] + text = currref.getPath() + ext = os.path.splitext(text)[1].lower() + if self.ext not in AUDIO_EXTENSIONS and not self.isAudioCD: + self.hideAndInfoBar() + else: + needsInfoUpdate = True + + self.unPauseService() + if needsInfoUpdate == True: + path = self.playlist.getServiceRefList()[self.playlist.getCurrentIndex()].getPath() + self["coverArt"].updateCoverArt(path) + else: + self["coverArt"].showDefaultCover() + self.readTitleInformation() + + def updatedSeekState(self): + if self.seekstate == self.SEEK_STATE_PAUSE: + self.playlist.pauseFile() + elif self.seekstate == self.SEEK_STATE_PLAY: + self.playlist.playFile() + elif self.isStateForward(self.seekstate): + self.playlist.forwardFile() + elif self.isStateBackward(self.seekstate): + self.playlist.rewindFile() + + def pauseEntry(self): + self.pauseService() + if self.seekstate == self.SEEK_STATE_PAUSE: + self.show() + else: + self.hideAndInfoBar() + + def stopEntry(self): + self.playlist.stopFile() + self.session.nav.playService(None) + self.updateMusicInformation(clear=True) + self.show() + + def unPauseService(self): + self.setSeekState(self.SEEK_STATE_PLAY) + + def subtitleSelection(self): + from Screens.AudioSelection import SubtitleSelection + self.session.open(SubtitleSelection, self) + + def hotplugCB(self, dev, media_state): + if dev == harddiskmanager.getCD(): + if media_state == "1": + from Components.Scanner import scanDevice + devpath = harddiskmanager.getAutofsMountpoint(harddiskmanager.getCD()) + self.cdAudioTrackFiles = [] + res = scanDevice(devpath) + list = [ (r.description, r, res[r], self.session) for r in res ] + if list: + (desc, scanner, files, session) = list[0] + for file in files: + if file.mimetype == "audio/x-cda": + self.cdAudioTrackFiles.append(file.path) + else: + self.cdAudioTrackFiles = [] + if self.isAudioCD: + self.clear_playlist() + +class MediaPlayerLCDScreen(Screen): + skin = ( + """ + + + + """, + """ + + + + """) + + def __init__(self, session, parent): + Screen.__init__(self, session) + self["text1"] = Label("Media player") + self["text3"] = Label("") + self["text4"] = Label("") + + def setText(self, text, line): + if len(text) > 10: + if text[-4:] == ".mp3": + text = text[:-4] + textleer = " " + text = text + textleer*10 + if line == 1: + self["text1"].setText(text) + elif line == 3: + self["text3"].setText(text) + elif line == 4: + self["text4"].setText(text) + +def mainCheckTimeshiftCallback(session, answer): + if answer: + session.open(MediaPlayer) + +def main(session, **kwargs): + InfoBar.instance.checkTimeshiftRunning(boundFunction(mainCheckTimeshiftCallback, session)) + +def menu(menuid, **kwargs): + if menuid == "mainmenu" and config.mediaplayer.onMainMenu.getValue(): + return [(_("Media player"), main, "media_player", 45)] + return [] + +def filescan_open(list, session, **kwargs): + from enigma import eServiceReference + + mp = session.open(MediaPlayer) + mp.playlist.clear() + mp.savePlaylistOnExit = False + + for file in list: + if file.mimetype == "video/MP2T": + stype = 1 + else: + stype = 4097 + ref = eServiceReference(stype, 0, file.path) + mp.playlist.addFile(ref) + + mp.changeEntry(0) + mp.switchToPlayList() + +def audioCD_open(list, session, **kwargs): + from enigma import eServiceReference + + mp = session.open(MediaPlayer) + mp.cdAudioTrackFiles = [f.path for f in list] + mp.playAudioCD() + +def movielist_open(list, session, **kwargs): + if not list: + # sanity + return + from enigma import eServiceReference + from Screens.InfoBar import InfoBar + f = list[0] + if f.mimetype == "video/MP2T": + stype = 1 + else: + stype = 4097 + if InfoBar.instance: + path = os.path.split(f.path)[0] + if not path.endswith('/'): + path += '/' + config.movielist.last_videodir.value = path + InfoBar.instance.showMovies(eServiceReference(stype, 0, f.path)) + +def filescan(**kwargs): + from Components.Scanner import Scanner, ScanPath + return [ + Scanner(mimetypes = ["video/mpeg", "video/MP2T", "video/x-msvideo", "video/mkv"], + paths_to_scan = + [ + ScanPath(path = "", with_subdirs = False), + ScanPath(path = "PRIVATE/AVCHD/BDMV/STREAM", with_subdirs = False), + ], + name = "Movie", + description = _("Watch movies..."), + openfnc = movielist_open, + ), + Scanner(mimetypes = ["video/x-vcd"], + paths_to_scan = + [ + ScanPath(path = "mpegav", with_subdirs = False), + ScanPath(path = "MPEGAV", with_subdirs = False), + ], + name = "Video CD", + description = _("View video CD..."), + openfnc = filescan_open, + ), + Scanner(mimetypes = ["audio/mpeg", "audio/x-wav", "application/ogg", "audio/x-flac"], + paths_to_scan = + [ + ScanPath(path = "", with_subdirs = False), + ], + name = "Music", + description = _("Play music..."), + openfnc = filescan_open, + ), + Scanner(mimetypes = ["audio/x-cda"], + paths_to_scan = + [ + ScanPath(path = "", with_subdirs = False), + ], + name = "Audio-CD", + description = _("Play audio-CD..."), + openfnc = audioCD_open, + ), + ] + +from Plugins.Plugin import PluginDescriptor +def Plugins(**kwargs): + return [ + PluginDescriptor(name = _("Media player"), description = _("Play back media files"), where = PluginDescriptor.WHERE_PLUGINMENU, needsRestart = False, fnc = main), + PluginDescriptor(name = _("Media player"), where = PluginDescriptor.WHERE_FILESCAN, needsRestart = False, fnc = filescan), + PluginDescriptor(name = _("Media player"), description = _("Play back media files"), where = PluginDescriptor.WHERE_MENU, needsRestart = False, fnc = menu) + ] diff --git a/lib/python/Plugins/Extensions/MediaPlayer/settings.py b/lib/python/Plugins/Extensions/MediaPlayer/settings.py new file mode 100644 index 0000000..0728dc0 --- /dev/null +++ b/lib/python/Plugins/Extensions/MediaPlayer/settings.py @@ -0,0 +1,140 @@ +from Screens.Screen import Screen +from Screens.HelpMenu import HelpableScreen +from Components.FileList import FileList +from Components.Sources.StaticText import StaticText +from Components.MediaPlayer import PlayList +from Components.config import config, getConfigListEntry, ConfigSubsection, configfile, ConfigText, ConfigYesNo, ConfigDirectory +from Components.ConfigList import ConfigListScreen +from Components.ActionMap import ActionMap + +config.mediaplayer = ConfigSubsection() +config.mediaplayer.repeat = ConfigYesNo(default=False) +config.mediaplayer.savePlaylistOnExit = ConfigYesNo(default=True) +config.mediaplayer.saveDirOnExit = ConfigYesNo(default=False) +config.mediaplayer.defaultDir = ConfigDirectory() +config.mediaplayer.useAlternateUserAgent = ConfigYesNo(default=False) +config.mediaplayer.alternateUserAgent = ConfigText(default="") +config.mediaplayer.sortPlaylists = ConfigYesNo(default=False) +config.mediaplayer.alwaysHideInfoBar = ConfigYesNo(default=True) +config.mediaplayer.onMainMenu = ConfigYesNo(default=False) + +class DirectoryBrowser(Screen, HelpableScreen): + + def __init__(self, session, currDir): + Screen.__init__(self, session) + # for the skin: first try MediaPlayerDirectoryBrowser, then FileBrowser, this allows individual skinning + self.skinName = ["MediaPlayerDirectoryBrowser", "FileBrowser" ] + + HelpableScreen.__init__(self) + + self["key_red"] = StaticText(_("Cancel")) + self["key_green"] = StaticText(_("Use")) + + self.filelist = FileList(currDir, matchingPattern="") + self["filelist"] = self.filelist + + self["FilelistActions"] = ActionMap(["SetupActions", "ColorActions"], + { + "green": self.use, + "red": self.exit, + "ok": self.ok, + "cancel": self.exit + }) + self.onLayoutFinish.append(self.layoutFinished) + + def layoutFinished(self): + self.setTitle(_("Directory browser")) + + def ok(self): + if self.filelist.canDescent(): + self.filelist.descent() + + def use(self): + if self["filelist"].getCurrentDirectory() is not None: + if self.filelist.canDescent() and self["filelist"].getFilename() and len(self["filelist"].getFilename()) > len(self["filelist"].getCurrentDirectory()): + self.filelist.descent() + self.close(self["filelist"].getCurrentDirectory()) + else: + self.close(self["filelist"].getFilename()) + + def exit(self): + self.close(False) + +class MediaPlayerSettings(Screen,ConfigListScreen): + + def __init__(self, session, parent): + Screen.__init__(self, session) + # for the skin: first try MediaPlayerSettings, then Setup, this allows individual skinning + self.skinName = ["MediaPlayerSettings", "Setup" ] + self.setup_title = _("Edit settings") + self.onChangedEntry = [ ] + + self["key_red"] = StaticText(_("Cancel")) + self["key_green"] = StaticText(_("Save")) + + ConfigListScreen.__init__(self, [], session = session, on_change = self.changedEntry) + self.parent = parent + self.initConfigList() + config.mediaplayer.saveDirOnExit.addNotifier(self.initConfigList) + + self["setupActions"] = ActionMap(["SetupActions", "ColorActions"], + { + "green": self.save, + "red": self.cancel, + "cancel": self.cancel, + "ok": self.ok, + }, -2) + + def layoutFinished(self): + self.setTitle(self.setup_title) + + def initConfigList(self, element=None): + print "[initConfigList]", element + try: + self.list = [] + self.list.append(getConfigListEntry(_("repeat playlist"), config.mediaplayer.repeat)) + self.list.append(getConfigListEntry(_("save playlist on exit"), config.mediaplayer.savePlaylistOnExit)) + self.list.append(getConfigListEntry(_("save last directory on exit"), config.mediaplayer.saveDirOnExit)) + if not config.mediaplayer.saveDirOnExit.getValue(): + self.list.append(getConfigListEntry(_("start directory"), config.mediaplayer.defaultDir)) + self.list.append(getConfigListEntry(_("sorting of playlists"), config.mediaplayer.sortPlaylists)) + self.list.append(getConfigListEntry(_("Always hide infobar"), config.mediaplayer.alwaysHideInfoBar)) + self.list.append(getConfigListEntry(_("show mediaplayer on mainmenu"), config.mediaplayer.onMainMenu)) + self["config"].setList(self.list) + except KeyError: + print "keyError" + + def changedConfigList(self): + self.initConfigList() + + def ok(self): + if self["config"].getCurrent()[1] == config.mediaplayer.defaultDir: + self.session.openWithCallback(self.DirectoryBrowserClosed, DirectoryBrowser, self.parent.filelist.getCurrentDirectory()) + + def DirectoryBrowserClosed(self, path): + print "PathBrowserClosed:" + str(path) + if path != False: + config.mediaplayer.defaultDir.setValue(path) + + def save(self): + for x in self["config"].list: + x[1].save() + self.close() + + def cancel(self): + self.close() + + # for summary: + def changedEntry(self): + for x in self.onChangedEntry: + x() + + def getCurrentEntry(self): + return self["config"].getCurrent()[0] + + def getCurrentValue(self): + return str(self["config"].getCurrent()[1].getText()) + + def createSummary(self): + from Screens.Setup import SetupSummary + return SetupSummary diff --git a/lib/python/Plugins/Extensions/MediaScanner/Makefile.am b/lib/python/Plugins/Extensions/MediaScanner/Makefile.am new file mode 100644 index 0000000..2e98fe3 --- /dev/null +++ b/lib/python/Plugins/Extensions/MediaScanner/Makefile.am @@ -0,0 +1,7 @@ +installdir = $(pkglibdir)/python/Plugins/Extensions/MediaScanner + +SUBDIRS = meta + +install_PYTHON = \ + __init__.py \ + plugin.py diff --git a/lib/python/Plugins/Extensions/MediaScanner/__init__.py b/lib/python/Plugins/Extensions/MediaScanner/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lib/python/Plugins/Extensions/MediaScanner/meta/Makefile.am b/lib/python/Plugins/Extensions/MediaScanner/meta/Makefile.am new file mode 100644 index 0000000..c4ab27d --- /dev/null +++ b/lib/python/Plugins/Extensions/MediaScanner/meta/Makefile.am @@ -0,0 +1,5 @@ +installdir = $(datadir)/meta + +dist_install_DATA = plugin_mediascanner.xml + +EXTRA_DIST = mediascanner_de.jpg mediascanner_en.jpg diff --git a/lib/python/Plugins/Extensions/MediaScanner/meta/mediascanner_de.jpg b/lib/python/Plugins/Extensions/MediaScanner/meta/mediascanner_de.jpg new file mode 100644 index 0000000..e6a191c Binary files /dev/null and b/lib/python/Plugins/Extensions/MediaScanner/meta/mediascanner_de.jpg differ diff --git a/lib/python/Plugins/Extensions/MediaScanner/meta/mediascanner_en.jpg b/lib/python/Plugins/Extensions/MediaScanner/meta/mediascanner_en.jpg new file mode 100644 index 0000000..b9561c2 Binary files /dev/null and b/lib/python/Plugins/Extensions/MediaScanner/meta/mediascanner_en.jpg differ diff --git a/lib/python/Plugins/Extensions/MediaScanner/meta/plugin_mediascanner.xml b/lib/python/Plugins/Extensions/MediaScanner/meta/plugin_mediascanner.xml new file mode 100644 index 0000000..eb9de1b --- /dev/null +++ b/lib/python/Plugins/Extensions/MediaScanner/meta/plugin_mediascanner.xml @@ -0,0 +1,16 @@ + + + + + + Dream Multimedia + MediaScanner + enigma2-plugin-extensions-mediascanner + Scan devices for playable media files + MediaScanner scans devices for playable media files and displays a menu with possible actions like viewing pictures or playing movies. + + + + + + diff --git a/lib/python/Plugins/Extensions/MediaScanner/plugin.py b/lib/python/Plugins/Extensions/MediaScanner/plugin.py new file mode 100644 index 0000000..bd8b8cc --- /dev/null +++ b/lib/python/Plugins/Extensions/MediaScanner/plugin.py @@ -0,0 +1,91 @@ +from Plugins.Plugin import PluginDescriptor +from Components.Scanner import scanDevice +from Screens.InfoBar import InfoBar +import os + +def execute(option): + print "execute", option + if option is None: + return + + (_, scanner, files, session) = option + scanner.open(files, session) + +def mountpoint_choosen(option): + if option is None: + return + + from Screens.ChoiceBox import ChoiceBox + + print "scanning", option + (description, mountpoint, session) = option + res = scanDevice(mountpoint) + + list = [ (r.description, r, res[r], session) for r in res ] + + if not list: + from Screens.MessageBox import MessageBox + if os.access(mountpoint, os.F_OK|os.R_OK): + session.open(MessageBox, _("No displayable files on this medium found!"), MessageBox.TYPE_ERROR, simple = True, timeout = 5) + else: + print "ignore", mountpoint, "because its not accessible" + return + + session.openWithCallback(execute, ChoiceBox, + title = _("The following files were found..."), + list = list) + +def scan(session): + from Screens.ChoiceBox import ChoiceBox + parts = [ (r.tabbedDescription(), r.mountpoint, session) for r in harddiskmanager.getMountedPartitions(onlyhotplug = False) if os.access(r.mountpoint, os.F_OK|os.R_OK) ] + parts.append( (_("Memory") + "\t/tmp", "/tmp", session) ) + session.openWithCallback(mountpoint_choosen, ChoiceBox, title = _("Please select medium to be scanned"), list = parts) + +def main(session, **kwargs): + scan(session) + +def menuEntry(*args): + mountpoint_choosen(args) + +from Components.Harddisk import harddiskmanager + +def menuHook(menuid): + if menuid != "mainmenu": + return [ ] + from Tools.BoundFunction import boundFunction + return [(("%s (files)") % r.description, boundFunction(menuEntry, r.description, r.mountpoint), "hotplug_%s" % r.mountpoint, None) for r in harddiskmanager.getMountedPartitions(onlyhotplug = True)] + +global_session = None + +def partitionListChanged(action, device): + if InfoBar.instance: + if InfoBar.instance.execing: + if action == 'add' and device.is_hotplug: + print "mountpoint", device.mountpoint + print "description", device.description + print "force_mounted", device.force_mounted + mountpoint_choosen((device.description, device.mountpoint, global_session)) + else: + print "main infobar is not execing... so we ignore hotplug event!" + else: + print "hotplug event.. but no infobar" + +def sessionstart(reason, session): + global global_session + global_session = session + +def autostart(reason, **kwargs): + global global_session + if reason == 0: + harddiskmanager.on_partition_list_change.append(partitionListChanged) + elif reason == 1: + harddiskmanager.on_partition_list_change.remove(partitionListChanged) + global_session = None + +def Plugins(**kwargs): + return [ + PluginDescriptor(name=_("Media scanner"), description=_("Scan files..."), where = PluginDescriptor.WHERE_PLUGINMENU, needsRestart = True, fnc=main), +# PluginDescriptor(where = PluginDescriptor.WHERE_MENU, fnc=menuHook), + PluginDescriptor(where = PluginDescriptor.WHERE_SESSIONSTART, needsRestart = True, fnc = sessionstart), + PluginDescriptor(where = PluginDescriptor.WHERE_AUTOSTART, needsRestart = True, fnc = autostart) + ] diff --git a/lib/python/Plugins/Extensions/Modem/Makefile.am b/lib/python/Plugins/Extensions/Modem/Makefile.am new file mode 100644 index 0000000..91bf3a9 --- /dev/null +++ b/lib/python/Plugins/Extensions/Modem/Makefile.am @@ -0,0 +1,7 @@ +installdir = $(pkglibdir)/python/Plugins/Extensions/Modem + +install_PYTHON = \ + __init__.py \ + plugin.py + +dist_install_DATA = keymap.xml \ No newline at end of file diff --git a/lib/python/Plugins/Extensions/Modem/__init__.py b/lib/python/Plugins/Extensions/Modem/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lib/python/Plugins/Extensions/Modem/keymap.xml b/lib/python/Plugins/Extensions/Modem/keymap.xml new file mode 100644 index 0000000..1f1bdfc --- /dev/null +++ b/lib/python/Plugins/Extensions/Modem/keymap.xml @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/lib/python/Plugins/Extensions/Modem/plugin.py b/lib/python/Plugins/Extensions/Modem/plugin.py new file mode 100644 index 0000000..0b397c1 --- /dev/null +++ b/lib/python/Plugins/Extensions/Modem/plugin.py @@ -0,0 +1,283 @@ +def getDefaultGateway(): + f = open("/proc/net/route", "r") + if f: + for line in f.readlines(): + tokens = line.split('\t') + if tokens[1] == '00000000': #dest 0.0.0.0 + return int(tokens[2], 16) + return None + +def getTelephone(): + f = open("/etc/ppp/options", "r") + if f: + for line in f.readlines(): + if line.find('connect') == 0: + line = line[line.find(' ')+1:] + line = line[line.find(' ')+1:] + line = line[:line.find('"')] + return line + return "" + +def setOptions(tel, user): + f = open("/etc/ppp/options", "r+") + if f: + lines = f.readlines() + f.seek(0) + for line in lines: + if line.find('connect') == 0: + p = line.find(' ') + p = line.find(' ', p+1) + line = line[:p+1] + f.write(line+tel+'"\n') + elif line.find('user') == 0: + f.write('user '+user+'\n') + else: + f.write(line) + +def getSecretString(): + f = open("/etc/ppp/pap-secrets", "r") + if f: + for line in f.readlines(): + if line[0] == '#' or line.find('*') == -1: + continue + for ch in (' ', '\t', '\n', '"'): + line = line.replace(ch, '') + return line + return None + +def setSecretString(secret): + f = open("/etc/ppp/pap-secrets", 'r+') + if f: + lines = f.readlines() + f.seek(0) + for line in lines: + if line[0] == '#' or line.find('*') == -1: + f.write(line) + continue + f.write(secret+'\n') + +from Screens.Screen import Screen +from Plugins.Plugin import PluginDescriptor +from enigma import eConsoleAppContainer, eTimer +from Components.Label import Label +from Components.Button import Button +from Components.ConfigList import ConfigList +from Components.config import ConfigText, ConfigPassword, KEY_LEFT, KEY_RIGHT, KEY_0, KEY_DELETE, KEY_BACKSPACE +from Components.ActionMap import NumberActionMap, ActionMap +from os import system + +NONE = 0 +CONNECT = 1 +ABORT = 2 +DISCONNECT = 3 + +gateway = None + +def pppdClosed(ret): + global gateway + print "modem disconnected", ret + if gateway: + #FIXMEEE... hardcoded for little endian!! + system("route add default gw %d.%d.%d.%d" %(gateway&0xFF, (gateway>>8)&0xFF, (gateway>>16)&0xFF, (gateway>>24)&0xFF)) + +connected = False +conn = eConsoleAppContainer() +conn.appClosed.append(pppdClosed) + +class ModemSetup(Screen): + skin = """ + + + + + + + + """ + + def nothing(self): + print "nothing!" + + def __init__(self, session, args = None): + global connected + global conn + self.skin = ModemSetup.skin + secret = getSecretString() + user = secret[:secret.find('*')] + password = secret[secret.find('*')+1:] + self.username = ConfigText(user, fixed_size=False) + self.password = ConfigPassword(password, fixed_size=False) + self.phone = ConfigText(getTelephone(), fixed_size=False) + self.phone.setUseableChars(u"0123456789") + lst = [ (_("Username"), self.username), + (_("Password"), self.password), + (_("Phone number"), self.phone) ] + self["list"] = ConfigList(lst) + self["key_green"] = Button("") + self["key_red"] = Button("") + self["state"] = Label("") + self["actions"] = NumberActionMap(["ModemActions"], + { + "cancel": self.close, + "left": self.keyLeft, + "right": self.keyRight, + "connect": self.connect, + "disconnect": self.disconnect, + "deleteForward": self.deleteForward, + "deleteBackward": self.deleteBackward, + "0": self.keyNumber, + "1": self.keyNumber, + "2": self.keyNumber, + "3": self.keyNumber, + "4": self.keyNumber, + "5": self.keyNumber, + "6": self.keyNumber, + "7": self.keyNumber, + "8": self.keyNumber, + "9": self.keyNumber + }, -1) + + self["ListActions"] = ActionMap(["ListboxDisableActions"], + { + "moveUp": self.nothing, + "moveDown": self.nothing, + "moveTop": self.nothing, + "moveEnd": self.nothing, + "pageUp": self.nothing, + "pageDown": self.nothing + }, -1) + + self.stateTimer = eTimer() + self.stateTimer.callback.append(self.stateLoop) + + conn.appClosed.append(self.pppdClosed) + conn.dataAvail.append(self.dataAvail) + + Screen.__init__(self, session) + self.onClose.append(self.__closed) + self.onLayoutFinish.append(self.__layoutFinished) + + def __layoutFinished(self): + global conn + if conn.running(): + self["state"].setText(_("Connected!")); + self.green_function = NONE + self.red_function = DISCONNECT + else: + self.green_function = CONNECT + self.red_function = NONE + self.updateGui() + + def __closed(self): + global connected + conn.appClosed.remove(self.pppdClosed) + conn.dataAvail.remove(self.dataAvail) + if not connected: + conn.sendCtrlC() + setOptions(self.phone.getText(), self.username.getText()) + setSecretString(self.username.getText() + ' * ' + self.password.getText()) + + def stateLoop(self): + txt = self["state"].getText() + txt += '.' + self["state"].setText(txt) + + def connect(self): + if self.green_function == CONNECT: + global gateway + gateway = getDefaultGateway() + self["state"].setText(_("Dialing:")) + system("route del default") + system("modprobe ppp_async"); + self.stateTimer.start(1000,False) + setOptions(self.phone.getText(), self.username.getText()) + setSecretString(self.username.getText() + ' * ' + self.password.getText()) + ret = conn.execute("pppd", "pppd", "-d", "-detach") + if ret: + print "execute pppd failed!" + self.pppdClosed(ret) + pppdClosed(ret) + self.green_function = NONE + self.red_function = ABORT + self.updateGui() + + def disconnect(self): + conn.sendCtrlC() + self.red_function = NONE + self.updateGui() + + def keyLeft(self): + if self.green_function == CONNECT: + self["list"].handleKey(KEY_LEFT) + + def keyRight(self): + if self.green_function == CONNECT: + self["list"].handleKey(KEY_RIGHT) + + def keyNumber(self, number): + if self.green_function == CONNECT: + self["list"].handleKey(KEY_0 + number) + + def deleteForward(self): + if self.green_function == CONNECT: + self["list"].handleKey(KEY_DELETE) + + def deleteBackward(self): + if self.green_function == CONNECT: + self["list"].handleKey(KEY_BACKSPACE) + + def pppdClosed(self, retval): + global connected + self.stateTimer.stop() + self.red_function = NONE + self.green_function = CONNECT + self["state"].setText("") + self.updateGui() + connected = False + + def dataAvail(self, text): + if text.find("Serial connection established") != -1: + tmp = self["state"].getText() + tmp += "OK\nLogin:" + self["state"].setText(tmp) + if text.find("PAP authentication succeeded") != -1: + tmp = self["state"].getText() + tmp += "OK\n"; + self["state"].setText(tmp) + self.stateTimer.stop() + if text.find("ip-up finished") != -1: + global connected + tmp = self["state"].getText() + tmp += "Connected :)\n" + self["state"].setText(tmp) + self.red_function = DISCONNECT + connected=True + if text.find("Connect script failed") != -1: + tmp = self["state"].getText() + tmp += "FAILED\n" + self["state"].setText(tmp) + self.stateTimer.stop() + self.red_function = NONE + self.green_function = CONNECT + self.updateGui() + + def updateGui(self): + if self.red_function == NONE: + self["key_red"].setText("") + elif self.red_function == DISCONNECT: + self["key_red"].setText(_("Disconnect")) + elif self.red_function == ABORT: + self["key_red"].setText(_("Abort")) + if self.green_function == NONE: + self["key_green"].setText("") + elif self.green_function == CONNECT: + self["key_green"].setText(_("Connect")) + focus_enabled = self.green_function == CONNECT + self["list"].instance.setSelectionEnable(focus_enabled) + self["ListActions"].setEnabled(not focus_enabled) + +def main(session, **kwargs): + session.open(ModemSetup) + +def Plugins(**kwargs): + return PluginDescriptor(name="Modem", description="plugin to connect to internet via builtin modem", where = PluginDescriptor.WHERE_PLUGINMENU, needsRestart = False, fnc=main) diff --git a/lib/python/Plugins/Extensions/PicturePlayer/Makefile.am b/lib/python/Plugins/Extensions/PicturePlayer/Makefile.am new file mode 100644 index 0000000..481d0cc --- /dev/null +++ b/lib/python/Plugins/Extensions/PicturePlayer/Makefile.am @@ -0,0 +1,11 @@ +SUBDIRS = data meta + +installdir = $(pkglibdir)/python/Plugins/Extensions/PicturePlayer + +install_PYTHON = \ + __init__.py \ + plugin.py \ + ui.py \ + pictureplayer.png + + diff --git a/lib/python/Plugins/Extensions/PicturePlayer/__init__.py b/lib/python/Plugins/Extensions/PicturePlayer/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lib/python/Plugins/Extensions/PicturePlayer/data/Makefile.am b/lib/python/Plugins/Extensions/PicturePlayer/data/Makefile.am new file mode 100644 index 0000000..3e2b362 --- /dev/null +++ b/lib/python/Plugins/Extensions/PicturePlayer/data/Makefile.am @@ -0,0 +1,2 @@ +dist_pkgdata_DATA = \ + pic_frame.png diff --git a/lib/python/Plugins/Extensions/PicturePlayer/data/pic_frame.png b/lib/python/Plugins/Extensions/PicturePlayer/data/pic_frame.png new file mode 100644 index 0000000..a9db961 Binary files /dev/null and b/lib/python/Plugins/Extensions/PicturePlayer/data/pic_frame.png differ diff --git a/lib/python/Plugins/Extensions/PicturePlayer/meta/Makefile.am b/lib/python/Plugins/Extensions/PicturePlayer/meta/Makefile.am new file mode 100644 index 0000000..e501fb6 --- /dev/null +++ b/lib/python/Plugins/Extensions/PicturePlayer/meta/Makefile.am @@ -0,0 +1,5 @@ +installdir = $(datadir)/meta + +dist_install_DATA = plugin_pictureplayer.xml + +EXTRA_DIST = pictureplayer.jpg \ No newline at end of file diff --git a/lib/python/Plugins/Extensions/PicturePlayer/meta/pictureplayer.jpg b/lib/python/Plugins/Extensions/PicturePlayer/meta/pictureplayer.jpg new file mode 100644 index 0000000..631d80e Binary files /dev/null and b/lib/python/Plugins/Extensions/PicturePlayer/meta/pictureplayer.jpg differ diff --git a/lib/python/Plugins/Extensions/PicturePlayer/meta/plugin_pictureplayer.xml b/lib/python/Plugins/Extensions/PicturePlayer/meta/plugin_pictureplayer.xml new file mode 100644 index 0000000..16e2ec9 --- /dev/null +++ b/lib/python/Plugins/Extensions/PicturePlayer/meta/plugin_pictureplayer.xml @@ -0,0 +1,16 @@ + + + + + + Dream Multimedia + PicturePlayer + enigma2-plugin-extensions-pictureplayer + Display your photos on the TV + The PicturePlayer displays your photos on the TV.\nYou can view them as thumbnails or slideshow. + + + + + + diff --git a/lib/python/Plugins/Extensions/PicturePlayer/pictureplayer.png b/lib/python/Plugins/Extensions/PicturePlayer/pictureplayer.png new file mode 100644 index 0000000..02febaa Binary files /dev/null and b/lib/python/Plugins/Extensions/PicturePlayer/pictureplayer.png differ diff --git a/lib/python/Plugins/Extensions/PicturePlayer/plugin.py b/lib/python/Plugins/Extensions/PicturePlayer/plugin.py new file mode 100644 index 0000000..86e7aaf --- /dev/null +++ b/lib/python/Plugins/Extensions/PicturePlayer/plugin.py @@ -0,0 +1,47 @@ +from Plugins.Plugin import PluginDescriptor + +#------------------------------------------------------------------------------------------ + +def Pic_Thumb(*args, **kwa): + import ui + return ui.Pic_Thumb(*args, **kwa) + +def picshow(*args, **kwa): + import ui + return ui.picshow(*args, **kwa) + +def main(session, **kwargs): + from ui import picshow + session.open(picshow) + +def filescan_open(list, session, **kwargs): + # Recreate List as expected by PicView + filelist = [((file.path, False), None) for file in list] + from ui import Pic_Full_View + session.open(Pic_Full_View, filelist, 0, file.path) + +def filescan(**kwargs): + from Components.Scanner import Scanner, ScanPath + import os + + # Overwrite checkFile to only detect local + class LocalScanner(Scanner): + def checkFile(self, file): + return os.path.exists(file.path) + + return \ + LocalScanner(mimetypes = ["image/jpeg", "image/png", "image/gif", "image/bmp"], + paths_to_scan = + [ + ScanPath(path = "DCIM", with_subdirs = True), + ScanPath(path = "", with_subdirs = False), + ], + name = "Pictures", + description = _("View photos..."), + openfnc = filescan_open, + ) + +def Plugins(**kwargs): + return \ + [PluginDescriptor(name=_("Picture player"), description=_("fileformats (BMP, PNG, JPG, GIF)"), icon="pictureplayer.png", where = PluginDescriptor.WHERE_PLUGINMENU, needsRestart = False, fnc=main), + PluginDescriptor(name=_("Picture player"), where = PluginDescriptor.WHERE_FILESCAN, needsRestart = False, fnc = filescan)] diff --git a/lib/python/Plugins/Extensions/PicturePlayer/ui.py b/lib/python/Plugins/Extensions/PicturePlayer/ui.py new file mode 100644 index 0000000..bbc0f44 --- /dev/null +++ b/lib/python/Plugins/Extensions/PicturePlayer/ui.py @@ -0,0 +1,605 @@ +from enigma import ePicLoad, eTimer, getDesktop, gMainDC, eSize + +from Screens.Screen import Screen +from Tools.Directories import resolveFilename, pathExists, SCOPE_MEDIA + +from Components.Pixmap import Pixmap, MovingPixmap +from Components.ActionMap import ActionMap, NumberActionMap +from Components.Sources.StaticText import StaticText +from Components.FileList import FileList +from Components.AVSwitch import AVSwitch +from Components.Sources.List import List +from Components.ConfigList import ConfigList, ConfigListScreen + +from Components.config import config, ConfigSubsection, ConfigInteger, ConfigSelection, ConfigText, ConfigYesNo, KEY_LEFT, KEY_RIGHT, KEY_0, getConfigListEntry + +def getScale(): + return AVSwitch().getFramebufferScale() + +config.pic = ConfigSubsection() +config.pic.framesize = ConfigInteger(default=30, limits=(5, 99)) +config.pic.slidetime = ConfigInteger(default=10, limits=(1, 60)) +config.pic.resize = ConfigSelection(default="1", choices = [("0", _("simple")), ("1", _("better"))]) +config.pic.cache = ConfigYesNo(default=True) +config.pic.lastDir = ConfigText(default=resolveFilename(SCOPE_MEDIA)) +config.pic.infoline = ConfigYesNo(default=True) +config.pic.loop = ConfigYesNo(default=True) +config.pic.bgcolor = ConfigSelection(default="#00000000", choices = [("#00000000", _("black")),("#009eb9ff", _("blue")),("#00ff5a51", _("red")), ("#00ffe875", _("yellow")), ("#0038FF48", _("green"))]) +config.pic.textcolor = ConfigSelection(default="#0038FF48", choices = [("#00000000", _("black")),("#009eb9ff", _("blue")),("#00ff5a51", _("red")), ("#00ffe875", _("yellow")), ("#0038FF48", _("green"))]) +config.pic.fullview_resolution = ConfigSelection(default = None, choices = [(None, _("Same resolution as skin")), ("(720, 576)","720x576"), ("(1280, 720)", "1280x720"), ("(1920, 1080)", "1920x1080")]) + +class picshow(Screen): + skin = """ + + + + + + + + + + + """ + + def __init__(self, session): + Screen.__init__(self, session) + + self["actions"] = ActionMap(["OkCancelActions", "ColorActions", "DirectionActions", "MenuActions"], + { + "cancel": self.KeyExit, + "red": self.KeyExit, + "green": self.KeyGreen, + "yellow": self.KeyYellow, + "menu": self.KeyMenu, + "ok": self.KeyOk + }, -1) + + self["key_red"] = StaticText(_("Close")) + self["key_green"] = StaticText(_("Thumbnails")) + self["key_yellow"] = StaticText("") + self["label"] = StaticText("") + self["thn"] = Pixmap() + + currDir = config.pic.lastDir.value + if not pathExists(currDir): + currDir = "/" + + self.filelist = FileList(currDir, matchingPattern = "(?i)^.*\.(jpeg|jpg|jpe|png|bmp|gif)") + self["filelist"] = self.filelist + self["filelist"].onSelectionChanged.append(self.selectionChanged) + + self.ThumbTimer = eTimer() + self.ThumbTimer.callback.append(self.showThumb) + + self.picload = ePicLoad() + self.picload.PictureData.get().append(self.showPic) + + self.onLayoutFinish.append(self.setConf) + + def showPic(self, picInfo=""): + ptr = self.picload.getData() + if ptr != None: + self["thn"].instance.setPixmap(ptr.__deref__()) + self["thn"].show() + + text = picInfo.split('\n',1) + self["label"].setText(text[1]) + self["key_yellow"].setText(_("Exif")) + + def showThumb(self): + if not self.filelist.canDescent(): + if self.filelist.getCurrentDirectory() and self.filelist.getFilename(): + if self.picload.getThumbnail(self.filelist.getCurrentDirectory() + self.filelist.getFilename()) == 1: + self.ThumbTimer.start(500, True) + + def selectionChanged(self): + if not self.filelist.canDescent(): + self.ThumbTimer.start(500, True) + else: + self["label"].setText("") + self["thn"].hide() + self["key_yellow"].setText("") + + def KeyGreen(self): + #if not self.filelist.canDescent(): + self.session.openWithCallback(self.callbackView, Pic_Thumb, self.filelist.getFileList(), self.filelist.getSelectionIndex(), self.filelist.getCurrentDirectory()) + + def KeyYellow(self): + if not self.filelist.canDescent(): + self.session.open(Pic_Exif, self.picload.getInfo(self.filelist.getCurrentDirectory() + self.filelist.getFilename())) + + def KeyMenu(self): + self.session.openWithCallback(self.setConf ,Pic_Setup) + + def KeyOk(self): + if self.filelist.canDescent(): + self.filelist.descent() + else: + self.session.openWithCallback(self.callbackView, Pic_Full_View, self.filelist.getFileList(), self.filelist.getSelectionIndex(), self.filelist.getCurrentDirectory()) + + def setConf(self, retval=None): + self.setTitle(_("Picture player")) + sc = getScale() + #0=Width 1=Height 2=Aspect 3=use_cache 4=resize_type 5=Background(#AARRGGBB) + self.picload.setPara((self["thn"].instance.size().width(), self["thn"].instance.size().height(), sc[0], sc[1], config.pic.cache.value, int(config.pic.resize.value), "#00000000")) + + def callbackView(self, val=0): + if val > 0: + self.filelist.moveToIndex(val) + + def KeyExit(self): + del self.picload + + if self.filelist.getCurrentDirectory() is None: + config.pic.lastDir.value = "/" + else: + config.pic.lastDir.value = self.filelist.getCurrentDirectory() + + config.pic.save() + self.close() + +#------------------------------------------------------------------------------------------ + +class Pic_Setup(Screen, ConfigListScreen): + + def __init__(self, session): + Screen.__init__(self, session) + # for the skin: first try MediaPlayerSettings, then Setup, this allows individual skinning + self.skinName = ["PicturePlayerSetup", "Setup"] + self.setup_title = _("Settings") + self.onChangedEntry = [] + self.session = session + ConfigListScreen.__init__(self, [], session = session, on_change = self.changedEntry) + self["actions"] = ActionMap(["SetupActions", "MenuActions"], + { + "cancel": self.keyCancel, + "save": self.keySave, + "ok": self.keySave, + "menu": self.closeRecursive, + }, -2) + self["key_red"] = StaticText(_("Cancel")) + self["key_green"] = StaticText(_("OK")) + self.createSetup() + self.onLayoutFinish.append(self.layoutFinished) + + def layoutFinished(self): + self.setTitle(self.setup_title) + + def createSetup(self): + setup_list = [ + getConfigListEntry(_("Slide show interval (sec.)"), config.pic.slidetime), + getConfigListEntry(_("Scaling mode"), config.pic.resize), + getConfigListEntry(_("Cache thumbnails"), config.pic.cache), + getConfigListEntry(_("Show info line"), config.pic.infoline), + getConfigListEntry(_("Frame size in full view"), config.pic.framesize), + getConfigListEntry(_("Slide picture in loop"), config.pic.loop), + getConfigListEntry(_("Background color"), config.pic.bgcolor), + getConfigListEntry(_("Text color"), config.pic.textcolor), + getConfigListEntry(_("Fulview resulution"), config.pic.fullview_resolution), + ] + self["config"].list = setup_list + self["config"].l.setList(setup_list) + + def keyLeft(self): + ConfigListScreen.keyLeft(self) + + def keyRight(self): + ConfigListScreen.keyRight(self) + + # for summary: + def changedEntry(self): + for x in self.onChangedEntry: + x() + + def getCurrentEntry(self): + return self["config"].getCurrent()[0] + + def getCurrentValue(self): + return str(self["config"].getCurrent()[1].getText()) + + def createSummary(self): + from Screens.Setup import SetupSummary + return SetupSummary + +#--------------------------------------------------------------------------- + +class Pic_Exif(Screen): + skin = """ + + + + + + { + "template": [ MultiContentEntryText(pos = (5, 5), size = (250, 30), flags = RT_HALIGN_LEFT, text = 0), MultiContentEntryText(pos = (260, 5), size = (290, 30), flags = RT_HALIGN_LEFT, text = 1)], + "fonts": [gFont("Regular", 20)], + "itemHeight": 30 + } + + + """ + + def __init__(self, session, exiflist): + Screen.__init__(self, session) + + self["actions"] = ActionMap(["SetupActions", "ColorActions"], + { + "cancel": self.close + }, -1) + + self["key_red"] = StaticText(_("Close")) + + exifdesc = [_("filename")+':', "EXIF-Version:", "Make:", "Camera:", "Date/Time:", "Width / Height:", "Flash used:", "Orientation:", "User Comments:", "Metering Mode:", "Exposure Program:", "Light Source:", "CompressedBitsPerPixel:", "ISO Speed Rating:", "X-Resolution:", "Y-Resolution:", "Resolution Unit:", "Brightness:", "Exposure Time:", "Exposure Bias:", "Distance:", "CCD-Width:", "ApertureFNumber:"] + list = [] + + for x in range(len(exiflist)): + if x>0: + list.append((exifdesc[x], exiflist[x])) + else: + name = exiflist[x].split('/')[-1] + list.append((exifdesc[x], name)) + self["menu"] = List(list) + self.onLayoutFinish.append(self.layoutFinished) + + def layoutFinished(self): + self.setTitle(_("Info")) + +#---------------------------------------------------------------------------------------- + +T_INDEX = 0 +T_FRAME_POS = 1 +T_PAGE = 2 +T_NAME = 3 +T_FULL = 4 + +class Pic_Thumb(Screen): + def __init__(self, session, piclist, lastindex, path): + + self.textcolor = config.pic.textcolor.value + self.color = config.pic.bgcolor.value + textsize = 20 + self.spaceX = 35 + self.picX = 190 + self.spaceY = 30 + self.picY = 200 + + size_w = getDesktop(0).size().width() + size_h = getDesktop(0).size().height() + self.thumbsX = size_w / (self.spaceX + self.picX) # thumbnails in X + self.thumbsY = size_h / (self.spaceY + self.picY) # thumbnails in Y + self.thumbsC = self.thumbsX * self.thumbsY # all thumbnails + + self.positionlist = [] + skincontent = "" + + posX = -1 + for x in range(self.thumbsC): + posY = x / self.thumbsX + posX += 1 + if posX >= self.thumbsX: + posX = 0 + + absX = self.spaceX + (posX*(self.spaceX + self.picX)) + absY = self.spaceY + (posY*(self.spaceY + self.picY)) + self.positionlist.append((absX, absY)) + skincontent += "" + skincontent += "" + + # Screen, backgroundlabel and MovingPixmap + self.skin = " \ + " + skincontent + "" + + Screen.__init__(self, session) + + self["actions"] = ActionMap(["OkCancelActions", "ColorActions", "DirectionActions", "MovieSelectionActions"], + { + "cancel": self.Exit, + "ok": self.KeyOk, + "left": self.key_left, + "right": self.key_right, + "up": self.key_up, + "down": self.key_down, + "showEventInfo": self.StartExif, + }, -1) + + self["frame"] = MovingPixmap() + for x in range(self.thumbsC): + self["label"+str(x)] = StaticText() + self["thumb"+str(x)] = Pixmap() + + self.Thumbnaillist = [] + self.filelist = [] + self.currPage = -1 + self.dirlistcount = 0 + self.path = path + + index = 0 + framePos = 0 + Page = 0 + for x in piclist: + if x[0][1] == False: + self.filelist.append((index, framePos, Page, x[0][0], path + x[0][0])) + index += 1 + framePos += 1 + if framePos > (self.thumbsC -1): + framePos = 0 + Page += 1 + else: + self.dirlistcount += 1 + + self.maxentry = len(self.filelist)-1 + self.index = lastindex - self.dirlistcount + if self.index < 0: + self.index = 0 + + self.picload = ePicLoad() + self.picload.PictureData.get().append(self.showPic) + + self.onLayoutFinish.append(self.setPicloadConf) + + self.ThumbTimer = eTimer() + self.ThumbTimer.callback.append(self.showPic) + + def setPicloadConf(self): + sc = getScale() + self.picload.setPara([self["thumb0"].instance.size().width(), self["thumb0"].instance.size().height(), sc[0], sc[1], config.pic.cache.value, int(config.pic.resize.value), self.color]) + self.paintFrame() + + def paintFrame(self): + #print "index=" + str(self.index) + if self.maxentry < self.index or self.index < 0: + return + + pos = self.positionlist[self.filelist[self.index][T_FRAME_POS]] + self["frame"].moveTo( pos[0], pos[1], 1) + self["frame"].startMoving() + + if self.currPage != self.filelist[self.index][T_PAGE]: + self.currPage = self.filelist[self.index][T_PAGE] + self.newPage() + + def newPage(self): + self.Thumbnaillist = [] + #clear Labels and Thumbnail + for x in range(self.thumbsC): + self["label"+str(x)].setText("") + self["thumb"+str(x)].hide() + #paint Labels and fill Thumbnail-List + for x in self.filelist: + if x[T_PAGE] == self.currPage: + self["label"+str(x[T_FRAME_POS])].setText("(" + str(x[T_INDEX]+1) + ") " + x[T_NAME]) + self.Thumbnaillist.append([0, x[T_FRAME_POS], x[T_FULL]]) + + #paint Thumbnail start + self.showPic() + + def showPic(self, picInfo=""): + for x in range(len(self.Thumbnaillist)): + if self.Thumbnaillist[x][0] == 0: + if self.picload.getThumbnail(self.Thumbnaillist[x][2]) == 1: #zu tun probier noch mal + self.ThumbTimer.start(500, True) + else: + self.Thumbnaillist[x][0] = 1 + break + elif self.Thumbnaillist[x][0] == 1: + self.Thumbnaillist[x][0] = 2 + ptr = self.picload.getData() + if ptr != None: + self["thumb" + str(self.Thumbnaillist[x][1])].instance.setPixmap(ptr.__deref__()) + self["thumb" + str(self.Thumbnaillist[x][1])].show() + + def key_left(self): + self.index -= 1 + if self.index < 0: + self.index = self.maxentry + self.paintFrame() + + def key_right(self): + self.index += 1 + if self.index > self.maxentry: + self.index = 0 + self.paintFrame() + + def key_up(self): + self.index -= self.thumbsX + if self.index < 0: + self.index =self.maxentry + self.paintFrame() + + def key_down(self): + self.index += self.thumbsX + if self.index > self.maxentry: + self.index = 0 + self.paintFrame() + + def StartExif(self): + if self.maxentry < 0: + return + self.session.open(Pic_Exif, self.picload.getInfo(self.filelist[self.index][T_FULL])) + + def KeyOk(self): + if self.maxentry < 0: + return + self.old_index = self.index + self.session.openWithCallback(self.callbackView, Pic_Full_View, self.filelist, self.index, self.path) + + def callbackView(self, val=0): + self.index = val + if self.old_index != self.index: + self.paintFrame() + def Exit(self): + del self.picload + self.close(self.index + self.dirlistcount) + +#--------------------------------------------------------------------------- + +class Pic_Full_View(Screen): + def __init__(self, session, filelist, index, path): + + self.textcolor = config.pic.textcolor.value + self.bgcolor = config.pic.bgcolor.value + space = config.pic.framesize.value + + self.size_w = size_w = getDesktop(0).size().width() + self.size_h = size_h = getDesktop(0).size().height() + + if config.pic.fullview_resolution.value and (size_w, size_h) != eval(config.pic.fullview_resolution.value): + (size_w, size_h) = eval(config.pic.fullview_resolution.value) + gMainDC.getInstance().setResolution(size_w, size_h) + getDesktop(0).resize(eSize(size_w, size_h)) + + self.skin = " \ + \ + \ + \ + " + + Screen.__init__(self, session) + + self["actions"] = ActionMap(["OkCancelActions", "ColorActions", "DirectionActions", "MovieSelectionActions"], + { + "cancel": self.Exit, + "green": self.PlayPause, + "yellow": self.PlayPause, + "blue": self.nextPic, + "red": self.prevPic, + "left": self.prevPic, + "right": self.nextPic, + "showEventInfo": self.StartExif, + }, -1) + + self["point"] = Pixmap() + self["pic"] = Pixmap() + self["play_icon"] = Pixmap() + self["file"] = StaticText(_("please wait, loading picture...")) + + self.old_index = 0 + self.filelist = [] + self.lastindex = index + self.currPic = [] + self.shownow = True + self.dirlistcount = 0 + + for x in filelist: + if len(filelist[0]) == 3: #orig. filelist + if x[0][1] == False: + self.filelist.append(path + x[0][0]) + else: + self.dirlistcount += 1 + elif len(filelist[0]) == 2: #scanlist + if x[0][1] == False: + self.filelist.append(x[0][0]) + else: + self.dirlistcount += 1 + else: # thumbnaillist + self.filelist.append(x[T_FULL]) + + self.maxentry = len(self.filelist)-1 + self.index = index - self.dirlistcount + if self.index < 0: + self.index = 0 + + self.picload = ePicLoad() + self.picload.PictureData.get().append(self.finish_decode) + + self.slideTimer = eTimer() + self.slideTimer.callback.append(self.slidePic) + + if self.maxentry >= 0: + self.onLayoutFinish.append(self.setPicloadConf) + + def setPicloadConf(self): + sc = getScale() + self.picload.setPara([self["pic"].instance.size().width(), self["pic"].instance.size().height(), sc[0], sc[1], 0, int(config.pic.resize.value), self.bgcolor]) + + self["play_icon"].hide() + if config.pic.infoline.value == False: + self["file"].setText("") + self.start_decode() + + def ShowPicture(self): + if self.shownow and len(self.currPic): + self.shownow = False + if config.pic.infoline.value: + self["file"].setText(self.currPic[0]) + else: + self["file"].setText("") + self.lastindex = self.currPic[1] + self["pic"].instance.setPixmap(self.currPic[2].__deref__()) + self.currPic = [] + + self.next() + self.start_decode() + + def finish_decode(self, picInfo=""): + self["point"].hide() + ptr = self.picload.getData() + if ptr != None: + text = "" + try: + text = picInfo.split('\n',1) + text = "(" + str(self.index+1) + "/" + str(self.maxentry+1) + ") " + text[0].split('/')[-1] + except: + pass + self.currPic = [] + self.currPic.append(text) + self.currPic.append(self.index) + self.currPic.append(ptr) + self.ShowPicture() + + def start_decode(self): + self.picload.startDecode(self.filelist[self.index]) + self["point"].show() + + def next(self): + self.index += 1 + if self.index > self.maxentry: + self.index = 0 + + def prev(self): + self.index -= 1 + if self.index < 0: + self.index = self.maxentry + + def slidePic(self): + print "slide to next Picture index=" + str(self.lastindex) + if config.pic.loop.value==False and self.lastindex == self.maxentry: + self.PlayPause() + self.shownow = True + self.ShowPicture() + + def PlayPause(self): + if self.slideTimer.isActive(): + self.slideTimer.stop() + self["play_icon"].hide() + else: + self.slideTimer.start(config.pic.slidetime.value*1000) + self["play_icon"].show() + self.nextPic() + + def prevPic(self): + self.currPic = [] + self.index = self.lastindex + self.prev() + self.start_decode() + self.shownow = True + + def nextPic(self): + self.shownow = True + self.ShowPicture() + + def StartExif(self): + if self.maxentry < 0: + return + self.session.open(Pic_Exif, self.picload.getInfo(self.filelist[self.lastindex])) + + def Exit(self): + del self.picload + + if config.pic.fullview_resolution.value and (self.size_w, self.size_h) != eval(config.pic.fullview_resolution.value): + gMainDC.getInstance().setResolution(self.size_w, self.size_h) + getDesktop(0).resize(eSize(self.size_w, self.size_h)) + + self.close(self.lastindex + self.dirlistcount) + diff --git a/lib/python/Plugins/Extensions/SocketMMI/Makefile.am b/lib/python/Plugins/Extensions/SocketMMI/Makefile.am new file mode 100644 index 0000000..7263738 --- /dev/null +++ b/lib/python/Plugins/Extensions/SocketMMI/Makefile.am @@ -0,0 +1,8 @@ +SUBDIRS = src meta + +installdir = $(pkglibdir)/python/Plugins/Extensions/SocketMMI + +install_PYTHON = \ + __init__.py \ + plugin.py \ + SocketMMI.py diff --git a/lib/python/Plugins/Extensions/SocketMMI/SocketMMI.py b/lib/python/Plugins/Extensions/SocketMMI/SocketMMI.py new file mode 100644 index 0000000..65142e3 --- /dev/null +++ b/lib/python/Plugins/Extensions/SocketMMI/SocketMMI.py @@ -0,0 +1,33 @@ +from Screens.Ci import MMIDialog +import socketmmi + +class SocketMMIMessageHandler: + def __init__(self): + self.session = None + self.dlgs = { } + socketmmi.getSocketStateChangedCallbackList().append(self.socketStateChanged) + + def setSession(self, session): + self.session = session + + def connected(self): + return socketmmi.getState(0) + + def getName(self): + return socketmmi.getName(0) + + def startMMI(self): + slot = 0 + self.dlgs[slot] = self.session.openWithCallback(self.dlgClosed, MMIDialog, slot, 2, socketmmi, _("wait for mmi...")) + + def socketStateChanged(self, slot): + if slot in self.dlgs: + self.dlgs[slot].ciStateChanged() + elif socketmmi.availableMMI(slot) == 1: + if self.session: + self.dlgs[slot] = self.session.openWithCallback(self.dlgClosed, MMIDialog, slot, 3, socketmmi, _("wait for mmi...")) + + def dlgClosed(self, slot): + if slot in self.dlgs: + del self.dlgs[slot] + diff --git a/lib/python/Plugins/Extensions/SocketMMI/__init__.py b/lib/python/Plugins/Extensions/SocketMMI/__init__.py new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/lib/python/Plugins/Extensions/SocketMMI/__init__.py @@ -0,0 +1 @@ + diff --git a/lib/python/Plugins/Extensions/SocketMMI/meta/Makefile.am b/lib/python/Plugins/Extensions/SocketMMI/meta/Makefile.am new file mode 100644 index 0000000..67388bc --- /dev/null +++ b/lib/python/Plugins/Extensions/SocketMMI/meta/Makefile.am @@ -0,0 +1,3 @@ +installdir = $(datadir)/meta + +dist_install_DATA = plugin_socketmmi.xml diff --git a/lib/python/Plugins/Extensions/SocketMMI/meta/plugin_socketmmi.xml b/lib/python/Plugins/Extensions/SocketMMI/meta/plugin_socketmmi.xml new file mode 100644 index 0000000..3eaf8fc --- /dev/null +++ b/lib/python/Plugins/Extensions/SocketMMI/meta/plugin_socketmmi.xml @@ -0,0 +1,15 @@ + + + + + + Dream Multimedia + SocketMMI + enigma2-plugin-extensions-socketmmi + Frontend for /tmp/mmi.socket + Python frontend for /tmp/mmi.socket. + + + + + diff --git a/lib/python/Plugins/Extensions/SocketMMI/plugin.py b/lib/python/Plugins/Extensions/SocketMMI/plugin.py new file mode 100644 index 0000000..568cde2 --- /dev/null +++ b/lib/python/Plugins/Extensions/SocketMMI/plugin.py @@ -0,0 +1,28 @@ +from Plugins.Plugin import PluginDescriptor +from SocketMMI import SocketMMIMessageHandler + +socketHandler = None + +def main(session, **kwargs): + socketHandler.startMMI() + +def menu(menuid, **kwargs): + if menuid == "setup" and socketHandler and socketHandler.connected(): + return [(socketHandler.getName(), main, "socket_mmi", 0)] + return [ ] + +def sessionstart(reason, session): + socketHandler.setSession(session) + +def autostart(reason, **kwargs): + global socketHandler + if reason == 1: + socketHandler = None + else: + socketHandler = SocketMMIMessageHandler() + +def Plugins(**kwargs): + return [ PluginDescriptor(name = "SocketMMI", description = _("Python frontend for /tmp/mmi.socket"), where = PluginDescriptor.WHERE_MENU, needsRestart = True, fnc = menu), + PluginDescriptor(where = PluginDescriptor.WHERE_SESSIONSTART, needsRestart = True, fnc = sessionstart), + PluginDescriptor(where = PluginDescriptor.WHERE_AUTOSTART, needsRestart = True, fnc = autostart) ] + diff --git a/lib/python/Plugins/Extensions/SocketMMI/src/Makefile.am b/lib/python/Plugins/Extensions/SocketMMI/src/Makefile.am new file mode 100644 index 0000000..5ce7d03 --- /dev/null +++ b/lib/python/Plugins/Extensions/SocketMMI/src/Makefile.am @@ -0,0 +1,15 @@ +AM_CPPFLAGS = \ + -I$(top_srcdir) \ + -I$(top_srcdir)/include \ + -include Python.h \ + -include $(top_builddir)/enigma2_config.h + +plugindir = $(pkglibdir)/python/Plugins/Extensions/SocketMMI + +plugin_LTLIBRARIES = socketmmi.la + +socketmmi_la_SOURCES = \ + socket_mmi.cpp \ + socket_mmi.h + +socketmmi_la_LDFLAGS = -avoid-version -module diff --git a/lib/python/Plugins/Extensions/SocketMMI/src/socket_mmi.cpp b/lib/python/Plugins/Extensions/SocketMMI/src/socket_mmi.cpp new file mode 100644 index 0000000..9a69de3 --- /dev/null +++ b/lib/python/Plugins/Extensions/SocketMMI/src/socket_mmi.cpp @@ -0,0 +1,479 @@ +#include "socket_mmi.h" + +#include +#include +#include + +#include +#include +#include +#include +#include +#include + +#define MAX_LENGTH_BYTES 4 +#define MIN_LENGTH_BYTES 1 +//#define MMIDEBUG + +eSocket_UI *eSocket_UI::instance; + +eSocket_UI::eSocket_UI() + :eMMI_UI(1) +{ + ASSERT(!instance); + instance = this; + CONNECT(handler.mmi_progress, eMMI_UI::processMMIData); +} + +eSocket_UI *eSocket_UI::getInstance() +{ + return instance; +} + +void eSocket_UI::setInit(int) +{ + //NYI +} + +void eSocket_UI::setReset(int) +{ + //NYI +} + +int eSocket_UI::startMMI(int) +{ + unsigned char buf[]={0x9F,0x80,0x22,0x00}; // ENTER MMI + if (handler.send_to_mmisock( buf, 4 )) + { + eDebug("eSocket_UI::startMMI failed"); + return -1; + } + return 0; +} + +int eSocket_UI::stopMMI(int) +{ + unsigned char buf[]={0x9F,0x88,0x00,0x00}; // CLOSE MMI + if (handler.send_to_mmisock( buf, 4 )) + { + eDebug("eSocket_UI::stopMMI failed"); + return -1; + } + return 0; +} + +int eSocket_UI::answerMenu(int, int answer) +{ + unsigned char data[]={0x9f,0x88,0x0B,0x01,0x00}; + data[4] = answer & 0xff; + if (handler.send_to_mmisock( data, 5 )) + { + eDebug("eSocket_UI::answerMenu failed"); + return -1; + } + return 0; +} + +int eSocket_UI::answerEnq(int, char *answer) +{ + unsigned int len = strlen(answer); + unsigned char data[4+len+MAX_LENGTH_BYTES]; + data[0] = 0x9f; + data[1] = 0x88; + data[2] = 0x08; + int LengthBytes=eDVBCISession::buildLengthField(data+3, len+1); + data[3+LengthBytes] = 0x01; + memcpy(data+4+LengthBytes, answer, len); + if (handler.send_to_mmisock( data, len+4+LengthBytes )) + { + eDebug("eSocket_UI::answerEnq failed"); + return -1; + } + return 0; +} + +int eSocket_UI::cancelEnq(int) +{ + unsigned char data[]={0x9f,0x88,0x08,0x01,0x00}; + if (handler.send_to_mmisock( data, 5 )) + { + eDebug("eSocket_UI::cancelEnq failed"); + return -1; + } + return 0; +} + +int eSocket_UI::getState(int) +{ + return handler.connected() ? 2 : 0; +} + +int eSocket_UI::getMMIState(int) +{ + return handler.connected(); +} + +//FIXME: correct "run/startlevel" +eAutoInitP0 init_socketui(eAutoInitNumbers::rc, "Socket MMI"); + +int eSocketMMIHandler::send_to_mmisock( void* buf, size_t len) +{ + ssize_t ret = write(connfd, buf, len); + if ( ret < 0 ) + eDebug("[eSocketMMIHandler] write (%m)"); + else if ( (size_t)ret != len ) + eDebug("[eSocketMMIHandler] only %zd bytes sent.. %zu bytes should be sent", ret, len ); + else + return 0; + return ret; +} + +eSocketMMIHandler::eSocketMMIHandler() + :buffer(512), connfd(-1), sockname("/tmp/mmi.socket"), name(0) +{ + memset(&servaddr, 0, sizeof(struct sockaddr_un)); + servaddr.sun_family = AF_UNIX; + unlink(sockname); + strcpy(servaddr.sun_path, sockname); + clilen = sizeof(servaddr.sun_family) + strlen(servaddr.sun_path); + if ((listenfd = socket(AF_UNIX, SOCK_STREAM, 0)) < 0) + { + eDebug("[eSocketMMIHandler] socket (%m)"); + return; + } + + int val = 1; + if (setsockopt(listenfd, SOL_SOCKET, SO_REUSEADDR, &val, sizeof(val)) == -1) + eDebug("[eSocketMMIHandler] SO_REUSEADDR (%m)"); + else if ((val = fcntl(listenfd, F_GETFL)) == -1) + eDebug("[eSocketMMIHandler] F_GETFL (%m)"); + else if (fcntl(listenfd, F_SETFL, val | O_NONBLOCK) == -1) + eDebug("[eSocketMMIHandler] F_SETFL (%m)"); + else if (bind(listenfd, (struct sockaddr *) &servaddr, clilen) == -1) + eDebug("[eSocketMMIHandler] bind (%m)"); + else if (listen(listenfd, 0) == -1) + eDebug("[eSocketMMIHandler] listen (%m)"); + else { + listensn = eSocketNotifier::create( eApp, listenfd, POLLIN ); + listensn->start(); + CONNECT( listensn->activated, eSocketMMIHandler::listenDataAvail ); + eDebug("[eSocketMMIHandler] created successfully"); + return; + } + + close(listenfd); + listenfd = -1; +} + +#define CMD_SET_NAME "\x01\x02\x03\x04" + +void eSocketMMIHandler::listenDataAvail(int what) +{ + if (what & POLLIN) { + if ( connsn ) { + eDebug("[eSocketMMIHandler] connsn != NULL"); + return; + } + connfd = accept(listenfd, (struct sockaddr *) &servaddr, (socklen_t *) &clilen); + if (connfd == -1) { + eDebug("[eSocketMMIHandler] accept (%m)"); + return; + } + + int val; + if ((val = fcntl(connfd, F_GETFL)) == -1) + eDebug("[eSocketMMIHandler] F_GETFL (%m)"); + else if (fcntl(connfd, F_SETFL, val | O_NONBLOCK) == -1) + eDebug("[eSocketMMIHandler] F_SETFL (%m)"); + else { + connsn = eSocketNotifier::create( eApp, connfd, POLLIN|POLLHUP|POLLERR ); + CONNECT( connsn->activated, eSocketMMIHandler::connDataAvail ); + return; + } + + close(connfd); + connfd = -1; + } +} + +void eSocketMMIHandler::connDataAvail(int what) +{ + if (what & (POLLIN | POLLPRI | POLLRDNORM | POLLRDBAND)) { + char msgbuffer[4096]; + ssize_t length = read(connfd, msgbuffer, sizeof(msgbuffer)); + + if (length == -1) { + if (errno != EAGAIN && errno != EINTR && errno != EBUSY) { + eDebug("[eSocketMMIHandler] read (%m)"); + what |= POLLERR; + } + } else if (length == 0){ + what |= POLLHUP; + } else if ((!name) && (length > 4) && (!memcmp(msgbuffer, CMD_SET_NAME, 4))) { + length -= 4; + delete [] name; + name = new char[length + 1]; + memcpy(name, &msgbuffer[4], length); + name[length] = '\0'; + eDebug("MMI NAME %s", name); + } else { + int len = length; + unsigned char *data = (unsigned char*)msgbuffer; + int clear = 1; + // If a new message starts, then the previous message + // should already have been processed. Otherwise the + // previous message was incomplete and should therefore + // be deleted. + if ((len >= 1) && (data[0] != 0x9f)) + clear = 0; + if ((len >= 2) && (data[1] != 0x88)) + clear = 0; + if (clear) + { + buffer.clear(); +#ifdef MMIDEBUG + eDebug("clear buffer"); +#endif + } +#ifdef MMIDEBUG + eDebug("Put to buffer:"); + for (int i=0; i < len; ++i) + eDebugNoNewLine("%02x ", data[i]); + eDebug("\n--------"); +#endif + buffer.write( data, len ); + + while ( buffer.size() >= (3 + MIN_LENGTH_BYTES) ) + { + unsigned char tmp[3+MAX_LENGTH_BYTES]; + buffer.peek(tmp, 3+MIN_LENGTH_BYTES); + if (tmp[0] != 0x9f || tmp[1] != 0x88) + { + buffer.skip(1); +#ifdef MMIDEBUG + eDebug("skip %02x", tmp[0]); +#endif + continue; + } + if (tmp[3] & 0x80) { + int peekLength = (tmp[3] & 0x7f) + 4; + if (buffer.size() < peekLength) + continue; + buffer.peek(tmp, peekLength); + } + int size=0; + int LengthBytes=eDVBCISession::parseLengthField(tmp+3, size); + int messageLength = 3+LengthBytes+size; + if ( buffer.size() >= messageLength ) + { + unsigned char dest[messageLength]; + buffer.read(dest, messageLength); +#ifdef MMIDEBUG + eDebug("dump mmi:"); + for (int i=0; i < messageLength; ++i) + eDebugNoNewLine("%02x ", dest[i]); + eDebug("\n--------"); +#endif + /*emit*/ mmi_progress(0, dest, (const void*)(dest+3+LengthBytes), messageLength-3-LengthBytes); + } + } + } + } + + if (what & (POLLERR | POLLHUP)) { + eDebug("pollhup/pollerr"); + closeConn(); + /*emit*/ mmi_progress(0, (const unsigned char*)"\x9f\x88\x00", "\x00", 1); + } +} + +void eSocketMMIHandler::closeConn() +{ + if ( connfd != -1 ) + { + close(connfd); + connfd=-1; + } + connsn=0; + if ( name ) + { + delete [] name; + name=0; + } +} + +eSocketMMIHandler::~eSocketMMIHandler() +{ + closeConn(); + unlink(sockname); +} + +extern "C" { + +static PyObject * +socketmmi_get_socket_state_changed_cb_list(PyObject *self) +{ + return eSocket_UI::getInstance()->socketStateChanged.get(); +} + +static PyObject * +socketmmi_set_init(PyObject *self, PyObject *args) +{ + int slot; + if (PyTuple_Size(args) != 1 || !PyArg_ParseTuple(args, "i", &slot)) + return NULL; + eSocket_UI::getInstance()->setInit(slot); + Py_RETURN_NONE; +} + +static PyObject * +socketmmi_set_reset(PyObject *self, PyObject *args) +{ + int slot; + if (PyTuple_Size(args) != 1 || !PyArg_ParseTuple(args, "i", &slot)) + return NULL; + eSocket_UI::getInstance()->setReset(slot); + Py_RETURN_NONE; +} + +static PyObject * +socketmmi_available_mmi(PyObject *self, PyObject *args) +{ + int slot; + if (PyTuple_Size(args) != 1 || !PyArg_ParseTuple(args, "i", &slot)) + return NULL; + return PyInt_FromLong(eSocket_UI::getInstance()->availableMMI(slot)); +} + +static PyObject * +socketmmi_get_mmi_screen(PyObject *self, PyObject *args) +{ + int slot; + if (PyTuple_Size(args) != 1 || !PyArg_ParseTuple(args, "i", &slot)) + return NULL; + return eSocket_UI::getInstance()->getMMIScreen(slot); +} + +static PyObject * +socketmmi_start_mmi(PyObject *self, PyObject *args) +{ + int slot; + if (PyTuple_Size(args) != 1 || !PyArg_ParseTuple(args, "i", &slot)) + return NULL; + return PyInt_FromLong(eSocket_UI::getInstance()->startMMI(slot)); +} + +static PyObject * +socketmmi_stop_mmi(PyObject *self, PyObject *args) +{ + int slot; + if (PyTuple_Size(args) != 1 || !PyArg_ParseTuple(args, "i", &slot)) + return NULL; + return PyInt_FromLong(eSocket_UI::getInstance()->stopMMI(slot)); +} + +static PyObject * +socketmmi_answer_menu(PyObject *self, PyObject *args) +{ + int slot, answer; + if (PyTuple_Size(args) != 2 || !PyArg_ParseTuple(args, "ii", &slot, &answer)) + return NULL; + return PyInt_FromLong(eSocket_UI::getInstance()->answerMenu(slot, answer)); +} + +static PyObject * +socketmmi_answer_enq(PyObject *self, PyObject *args) +{ + int slot; + char *answer; + if (PyTuple_Size(args) != 2 || !PyArg_ParseTuple(args, "is", &slot, &answer)) + return NULL; + return PyInt_FromLong(eSocket_UI::getInstance()->answerEnq(slot, answer)); +} + +static PyObject * +socketmmi_cancel_enq(PyObject *self, PyObject *args) +{ + int slot; + if (PyTuple_Size(args) != 1 || !PyArg_ParseTuple(args, "i", &slot)) + return NULL; + return PyInt_FromLong(eSocket_UI::getInstance()->cancelEnq(slot)); +} + +static PyObject * +socketmmi_get_state(PyObject *self, PyObject *args) +{ + int slot; + if (PyTuple_Size(args) != 1 || !PyArg_ParseTuple(args, "i", &slot)) + return NULL; + return PyInt_FromLong(eSocket_UI::getInstance()->getState(slot)); +} + +static PyObject * +socketmmi_get_mmi_state(PyObject *self, PyObject *args) +{ + int slot; + if (PyTuple_Size(args) != 1 || !PyArg_ParseTuple(args, "i", &slot)) + return NULL; + return PyInt_FromLong(eSocket_UI::getInstance()->getMMIState(slot)); +} + +static PyObject * +socketmmi_get_name(PyObject *self, PyObject *args) +{ + int slot; + if (PyTuple_Size(args) != 1 || !PyArg_ParseTuple(args, "i", &slot)) + return NULL; + return PyString_FromString(eSocket_UI::getInstance()->getName(slot)); +} + +static PyMethodDef module_methods[] = { + {"getSocketStateChangedCallbackList", (PyCFunction)socketmmi_get_socket_state_changed_cb_list, METH_NOARGS, + "get socket state change callback list" + }, + {"setInit", (PyCFunction)socketmmi_set_init, METH_VARARGS, + "set init" + }, + {"setReset", (PyCFunction)socketmmi_set_reset, METH_VARARGS, + "set reset" + }, + {"availableMMI", (PyCFunction)socketmmi_available_mmi, METH_VARARGS, + "available mmi" + }, + {"getMMIScreen", (PyCFunction)socketmmi_get_mmi_screen, METH_VARARGS, + "get mmi screen" + }, + {"startMMI", (PyCFunction)socketmmi_start_mmi, METH_VARARGS, + "start mmi" + }, + {"stopMMI", (PyCFunction)socketmmi_stop_mmi, METH_VARARGS, + "start mmi" + }, + {"answerMenu", (PyCFunction)socketmmi_answer_menu, METH_VARARGS, + "answer menu" + }, + {"answerEnq", (PyCFunction)socketmmi_answer_enq, METH_VARARGS, + "answer enq" + }, + {"cancelEnq", (PyCFunction)socketmmi_cancel_enq, METH_VARARGS, + "cancel enq" + }, + {"getState", (PyCFunction)socketmmi_get_state, METH_VARARGS, + "get state of socket" + }, + {"getMMIState", (PyCFunction)socketmmi_get_mmi_state, METH_VARARGS, + "get state of mmi" + }, + {"getName", (PyCFunction)socketmmi_get_name, METH_VARARGS, + "get name of socket user" + }, + {NULL, NULL, 0, NULL} /* Sentinel */ +}; + +PyMODINIT_FUNC +initsocketmmi(void) +{ + Py_InitModule3("socketmmi", module_methods, + "Module that implements mmi via unix domain socket."); +} +}; diff --git a/lib/python/Plugins/Extensions/SocketMMI/src/socket_mmi.h b/lib/python/Plugins/Extensions/SocketMMI/src/socket_mmi.h new file mode 100644 index 0000000..063e1d5 --- /dev/null +++ b/lib/python/Plugins/Extensions/SocketMMI/src/socket_mmi.h @@ -0,0 +1,62 @@ +#ifndef __socket_mmi_h +#define __socket_mmi_h + +#include +#include +#include + +#ifndef SWIG +#include +#include +#include +#include +#include +class eSocketMMIHandler: public Object +{ + eIOBuffer buffer; + int listenfd, connfd, clilen; + struct sockaddr_un servaddr; + ePtr listensn, connsn; + void listenDataAvail(int what); + void connDataAvail(int what); + void closeConn(); + const char *sockname; + char *name; +public: + const char *getName() const { return name; } + Signal4 mmi_progress; + int send_to_mmisock( void *, size_t ); + bool connected() { return !!connsn; } + eSocketMMIHandler(); + ~eSocketMMIHandler(); +}; +#endif + +class eSocket_UI: public eMMI_UI +{ + eSocketMMIHandler handler; + static eSocket_UI *instance; +#ifdef SWIG + eSocket_UI(); + ~eSocket_UI(); +#endif + void stateChanged(int val) { socketStateChanged(val); } +public: + PSignal1 socketStateChanged; +#ifndef SWIG + eSocket_UI(); +#endif + static eSocket_UI *getInstance(); + void setInit(int slot); + void setReset(int slot); + int startMMI(int slot); + int stopMMI(int slot); + int answerMenu(int slot, int answer); + int answerEnq(int slot, char *val); + int cancelEnq(int slot); + int getState(int slot); + int getMMIState(int slot); + const char *getName(int) const { return handler.getName() ? handler.getName() : "MMI Socket"; } +}; + +#endif diff --git a/lib/python/Plugins/Extensions/TuxboxPlugins/Makefile.am b/lib/python/Plugins/Extensions/TuxboxPlugins/Makefile.am new file mode 100644 index 0000000..d87702f --- /dev/null +++ b/lib/python/Plugins/Extensions/TuxboxPlugins/Makefile.am @@ -0,0 +1,11 @@ +installdir = $(pkglibdir)/python/Plugins/Extensions/TuxboxPlugins + +SUBDIRS = meta + +install_PYTHON = \ + __init__.py \ + plugin.py \ + pluginrunner.py \ + tuxbox.png + + diff --git a/lib/python/Plugins/Extensions/TuxboxPlugins/__init__.py b/lib/python/Plugins/Extensions/TuxboxPlugins/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lib/python/Plugins/Extensions/TuxboxPlugins/meta/Makefile.am b/lib/python/Plugins/Extensions/TuxboxPlugins/meta/Makefile.am new file mode 100644 index 0000000..1ab8aee --- /dev/null +++ b/lib/python/Plugins/Extensions/TuxboxPlugins/meta/Makefile.am @@ -0,0 +1,3 @@ +installdir = $(datadir)/meta + +dist_install_DATA = plugin_tuxboxplugins.xml diff --git a/lib/python/Plugins/Extensions/TuxboxPlugins/meta/plugin_tuxboxplugins.xml b/lib/python/Plugins/Extensions/TuxboxPlugins/meta/plugin_tuxboxplugins.xml new file mode 100644 index 0000000..7ca1082 --- /dev/null +++ b/lib/python/Plugins/Extensions/TuxboxPlugins/meta/plugin_tuxboxplugins.xml @@ -0,0 +1,15 @@ + + + + + + Dream Multimedia + TuxboxPlugins + TuxboxPlugins + Execute TuxboxPlugins + Allows the execution of TuxboxPlugins. + + + + + diff --git a/lib/python/Plugins/Extensions/TuxboxPlugins/plugin.py b/lib/python/Plugins/Extensions/TuxboxPlugins/plugin.py new file mode 100644 index 0000000..91dd992 --- /dev/null +++ b/lib/python/Plugins/Extensions/TuxboxPlugins/plugin.py @@ -0,0 +1,43 @@ +# must be fixed for the new plugin interface +from Tools.BoundFunction import boundFunction +from Tools.Directories import pathExists +from Plugins.Plugin import PluginDescriptor +from pluginrunner import PluginRunner + +from os import listdir + +TUXBOX_PLUGINS_PATH = "/usr/lib/tuxbox/plugins/" + +def getPlugins(): + pluginlist = [] + + if pathExists(TUXBOX_PLUGINS_PATH): + dir = listdir(TUXBOX_PLUGINS_PATH) + + for x in dir: + if x[-3:] == "cfg": + params = getPluginParams(x) + pluginlist.append(PluginDescriptor(name=params["name"], description=params["desc"], where = PluginDescriptor.WHERE_PLUGINMENU, icon="tuxbox.png", needsRestart = True, fnc=boundFunction(main, plugin=x))) + + return pluginlist + +def getPluginParams(file): + params = {} + try: + file = open(TUXBOX_PLUGINS_PATH + file, "r") + for x in file.readlines(): + split = x.split("=") + params[split[0]] = split[1] + file.close() + except IOError: + print "no tuxbox plugins found" + + return params + +def main(session, plugin, **kwargs): + print "Running plugin " + plugin[:-4] + ".so with config file", plugin + print getPluginParams(plugin) + session.open(PluginRunner, plugin[:-4].split(".so")[0]) + +def Plugins(**kwargs): + return getPlugins() diff --git a/lib/python/Plugins/Extensions/TuxboxPlugins/pluginrunner.py b/lib/python/Plugins/Extensions/TuxboxPlugins/pluginrunner.py new file mode 100644 index 0000000..829fc6a --- /dev/null +++ b/lib/python/Plugins/Extensions/TuxboxPlugins/pluginrunner.py @@ -0,0 +1,37 @@ +from enigma import eDBoxLCD, eRCInput, fbClass, eConsoleAppContainer +from Screens.Screen import Screen +from Screens.MessageBox import MessageBox + +class PluginRunner(Screen): + skin = """ + + """ + def __init__(self, session, pluginname, args = None): + self.skin = PluginRunner.skin + Screen.__init__(self, session) + self.container = eConsoleAppContainer() + self.container.appClosed.append(self.finishedExecution) + self.runPlugin(pluginname) + + def runPlugin(self, pluginname): + eDBoxLCD.getInstance().lock() + eRCInput.getInstance().lock() + fbClass.getInstance().lock() + print "executing:", ("pluginlauncher -x %s" % pluginname) + if self.container.execute("pluginlauncher -x %s" % pluginname): + self.finishedExecution(None) + + def finishedExecution(self, retval = 1): + print "PluginRunner retval:", retval + fbClass.getInstance().unlock() + eRCInput.getInstance().unlock() + eDBoxLCD.getInstance().unlock() + + if retval is None or retval != 1: + self.session.openWithCallback( + self.finishedExecution, + MessageBox, + _("Error executing plugin") % (param) + ) + else: + self.close() diff --git a/lib/python/Plugins/Extensions/TuxboxPlugins/tuxbox.png b/lib/python/Plugins/Extensions/TuxboxPlugins/tuxbox.png new file mode 100644 index 0000000..3c2feee Binary files /dev/null and b/lib/python/Plugins/Extensions/TuxboxPlugins/tuxbox.png differ diff --git a/lib/python/Plugins/Extensions/__init__.py b/lib/python/Plugins/Extensions/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lib/python/Plugins/Makefile.am b/lib/python/Plugins/Makefile.am new file mode 100644 index 0000000..ff561aa --- /dev/null +++ b/lib/python/Plugins/Makefile.am @@ -0,0 +1,7 @@ +installdir = $(pkglibdir)/python/Plugins + +SUBDIRS = Extensions SystemPlugins PLi + +install_PYTHON = \ + __init__.py Plugin.py + diff --git a/lib/python/Plugins/PLi/Makefile.am b/lib/python/Plugins/PLi/Makefile.am new file mode 100644 index 0000000..2195de3 --- /dev/null +++ b/lib/python/Plugins/PLi/Makefile.am @@ -0,0 +1,4 @@ +installdir = $(pkglibdir)/python/Plugins/PLi + +install_PYTHON = __init__.py + diff --git a/lib/python/Plugins/PLi/__init__.py b/lib/python/Plugins/PLi/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lib/python/Plugins/Plugin.py b/lib/python/Plugins/Plugin.py new file mode 100644 index 0000000..7ca376b --- /dev/null +++ b/lib/python/Plugins/Plugin.py @@ -0,0 +1,123 @@ +from Components.config import ConfigSubsection, config +import os + +config.plugins = ConfigSubsection() + +class PluginDescriptor: + """An object to describe a plugin.""" + + # where to list the plugin. Note that there are different call arguments, + # so you might not be able to combine them. + + # supported arguments are: + # session + # servicereference + # reason + + # you have to ignore unknown kwargs! + + # argument: session + WHERE_EXTENSIONSMENU = 0 + WHERE_MAINMENU = 1 + WHERE_PLUGINMENU = 2 + # argument: session, serviceref (currently selected) + WHERE_MOVIELIST = 3 + # argument: menuid. Fnc must return list with menuitems (4-tuple of name, fnc to call, entryid or None, weight or None) + WHERE_MENU = 4 + + # reason (0: start, 1: end) + WHERE_AUTOSTART = 5 + + # start as wizard. In that case, fnc must be tuple (priority,class) with class being a screen class! + WHERE_WIZARD = 6 + + # like autostart, but for a session. currently, only session starts are + # delivered, and only on pre-loaded plugins + WHERE_SESSIONSTART = 7 + + # start as teletext plugin. arguments: session, serviceref + WHERE_TELETEXT = 8 + + # file-scanner, fnc must return a list of Scanners + WHERE_FILESCAN = 9 + + # fnc must take an interface name as parameter and return None if the plugin supports an extended setup + # or return a function which is called with session and the interface name for extended setup of this interface + WHERE_NETWORKSETUP = 10 + + # show up this plugin (or a choicebox with all of them) for long INFO keypress + # or return a function which is called with session and the interface name for extended setup of this interface + WHERE_EVENTINFO = 11 + + # reason (True: Networkconfig read finished, False: Networkconfig reload initiated ) + WHERE_NETWORKCONFIG_READ = 12 + + WHERE_AUDIOMENU = 13 + + # fnc 'SoftwareSupported' or 'AdvancedSoftwareSupported' must take a parameter and return None + # if the plugin should not be displayed inside Softwaremanger or return a function which is called with session + # and 'None' as parameter to call the plugin from the Softwaremanager menus. "menuEntryName" and "menuEntryDescription" + # should be provided to name and describe the new menu entry. + WHERE_SOFTWAREMANAGER = 14 + + + def __init__(self, name = "Plugin", where = [ ], description = "", icon = None, fnc = None, wakeupfnc = None, needsRestart = None, internal = False, weight = 0): + self.name = name + self.internal = internal + self.needsRestart = needsRestart + self.path = None + if isinstance(where, list): + self.where = where + else: + self.where = [ where ] + self.description = description + + if icon is None or isinstance(icon, str): + self.iconstr = icon + self._icon = None + else: + self.iconstr = None + self._icon = icon + + self.weight = weight + + self.wakeupfnc = wakeupfnc + + self.__call__ = fnc + + def updateIcon(self, path): + self.path = path + + def getWakeupTime(self): + return self.wakeupfnc and self.wakeupfnc() or -1 + + @property + def icon(self): + if self.iconstr: + from Tools.LoadPixmap import LoadPixmap + return LoadPixmap(os.path.join(self.path, self.iconstr)) + else: + return self._icon + + def __eq__(self, other): + return self.__call__ == other.__call__ + + def __ne__(self, other): + return self.__call__ != other.__call__ + + def __lt__(self, other): + if self.weight < other.weight: + return True + elif self.weight == other.weight: + return self.name < other.name + else: + return False + + def __gt__(self, other): + return other + + + + """ + + def __init__(self, session, scanTuner, scanNetwork, scanFrequency, scanSymbolRate, scanModulation, keepNumbers, hdList): + Screen.__init__(self, session) + self.scanTuner = scanTuner + self.scanNetwork = scanNetwork + self.scanFrequency = scanFrequency + self.scanSymbolRate = scanSymbolRate + self.scanModulation = scanModulation + self.keepNumbers = keepNumbers + self.hdList = hdList + + self["frontend"] = Pixmap() + self["scan_progress"] = ProgressBar() + self["scan_state"] = Label(_("scan state")) + + self.prevservice = self.session.nav.getCurrentlyPlayingServiceReference() + self.session.nav.stopService() + + self["actions"] = ActionMap(["OkCancelActions"], + { + "ok": self.ok, + "cancel": self.cancel + }) + + self.onFirstExecBegin.append(self.doServiceScan) + + def doServiceScan(self): + self["scan"] = CableScan(self["scan_state"], self["scan_progress"], self.scanTuner, self.scanNetwork, self.scanFrequency, self.scanSymbolRate, self.scanModulation, self.keepNumbers, self.hdList) + + def restoreService(self): + if self.prevservice: + self.session.nav.playService(self.prevservice) + + def ok(self): + if self["scan"].isDone(): + self.restoreService() + self.close() + + def cancel(self): + self.restoreService() + self.close() + +config.plugins.CableScan = ConfigSubsection() +config.plugins.CableScan.keepnumbering = ConfigYesNo(default = False) +config.plugins.CableScan.hdlist = ConfigYesNo(default = False) +config.plugins.CableScan.frequency = ConfigInteger(default = 323, limits = (1, 999)) +config.plugins.CableScan.symbolrate = ConfigInteger(default = 6875, limits = (1, 9999)) +config.plugins.CableScan.networkid = ConfigInteger(default = 0, limits = (0, 99999)) +config.plugins.CableScan.modulation = ConfigSelection( + choices = + [(str(eDVBFrontendParametersCable.Modulation_QAM16), "QAM16"), + (str(eDVBFrontendParametersCable.Modulation_QAM32), "QAM32"), + (str(eDVBFrontendParametersCable.Modulation_QAM64), "QAM64"), + (str(eDVBFrontendParametersCable.Modulation_QAM128), "QAM128"), + (str(eDVBFrontendParametersCable.Modulation_QAM256), "QAM256")], + default = str(eDVBFrontendParametersCable.Modulation_QAM64)) + +class CableScanScreen(ConfigListScreen, Screen): + skin = """ + + + + """ + + def __init__(self, session): + Screen.__init__(self, session) + + self["actions"] = ActionMap(["SetupActions", "MenuActions"], + { + "ok": self.keyGo, + "cancel": self.keyCancel, + "menu": self.closeRecursive, + }, -2) + + nimlist = nimmanager.getNimListOfType("DVB-C") + nim_list = [] + for x in nimlist: + nim_list.append((nimmanager.nim_slots[x].slot, nimmanager.nim_slots[x].friendly_full_description)) + + self.scan_nims = ConfigSelection(choices = nim_list) + + self.list = [] + self.list.append(getConfigListEntry(_("Tuner"), self.scan_nims)) + + self.list.append(getConfigListEntry(_('Frequency'), config.plugins.CableScan.frequency)) + self.list.append(getConfigListEntry(_('Symbol rate'), config.plugins.CableScan.symbolrate)) + self.list.append(getConfigListEntry(_('Modulation'), config.plugins.CableScan.modulation)) + self.list.append(getConfigListEntry(_('Network ID'), config.plugins.CableScan.networkid)) + self.list.append(getConfigListEntry(_("Use official channel numbering"), config.plugins.CableScan.keepnumbering)) + self.list.append(getConfigListEntry(_("HD list"), config.plugins.CableScan.hdlist)) + + ConfigListScreen.__init__(self, self.list) + self["config"].list = self.list + self["config"].l.setList(self.list) + + self.finished_cb = None + + self["introduction"] = Label(_("Configure your network settings, and press OK to start the scan")) + + def keyGo(self): + config.plugins.CableScan.save() + self.startScan() + + def startScan(self): + self.session.open(CableScanStatus, scanTuner = int(self.scan_nims.value), scanNetwork = config.plugins.CableScan.networkid.value, scanFrequency = config.plugins.CableScan.frequency.value * 1000, scanSymbolRate = config.plugins.CableScan.symbolrate.value * 1000, scanModulation = int(config.plugins.CableScan.modulation.value), keepNumbers = config.plugins.CableScan.keepnumbering.value, hdList = config.plugins.CableScan.hdlist.value) + + def keyCancel(self): + self.close() + +def CableScanMain(session, **kwargs): + nims = nimmanager.getNimListOfType("DVB-C") + + nimList = [] + for x in nims: + nimList.append(x) + + if len(nimList) == 0: + session.open(MessageBox, _("No cable tuner found!"), MessageBox.TYPE_ERROR) + else: + if session.nav.RecordTimer.isRecording(): + session.open(MessageBox, _("A recording is currently running. Please stop the recording before trying to scan."), MessageBox.TYPE_ERROR) + else: + session.open(CableScanScreen) + +def CableScanStart(menuid, **kwargs): + if menuid == "scan": + return [(_("Cable Scan"), CableScanMain, "cablescan", None)] + else: + return [] + +def Plugins(**kwargs): + if (nimmanager.hasNimType("DVB-C")): + return PluginDescriptor(name=_("Cable Scan"), description="Scan cable provider channels", where = PluginDescriptor.WHERE_MENU, fnc=CableScanStart) + else: + return [] diff --git a/lib/python/Plugins/SystemPlugins/CommonInterfaceAssignment/Makefile.am b/lib/python/Plugins/SystemPlugins/CommonInterfaceAssignment/Makefile.am new file mode 100644 index 0000000..943d360 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/CommonInterfaceAssignment/Makefile.am @@ -0,0 +1,8 @@ +installdir = $(pkglibdir)/python/Plugins/SystemPlugins/CommonInterfaceAssignment + +SUBDIRS = meta + +install_PYTHON = \ + __init__.py \ + plugin.py + diff --git a/lib/python/Plugins/SystemPlugins/CommonInterfaceAssignment/__init__.py b/lib/python/Plugins/SystemPlugins/CommonInterfaceAssignment/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lib/python/Plugins/SystemPlugins/CommonInterfaceAssignment/meta/Makefile.am b/lib/python/Plugins/SystemPlugins/CommonInterfaceAssignment/meta/Makefile.am new file mode 100644 index 0000000..e0ce313 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/CommonInterfaceAssignment/meta/Makefile.am @@ -0,0 +1,5 @@ +installdir = $(datadir)/meta + +dist_install_DATA = plugin_commoninterfaceassignment.xml + +EXTRA_DIST = ciassignment.jpg diff --git a/lib/python/Plugins/SystemPlugins/CommonInterfaceAssignment/meta/ciassignment.jpg b/lib/python/Plugins/SystemPlugins/CommonInterfaceAssignment/meta/ciassignment.jpg new file mode 100644 index 0000000..75771f9 Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/CommonInterfaceAssignment/meta/ciassignment.jpg differ diff --git a/lib/python/Plugins/SystemPlugins/CommonInterfaceAssignment/meta/plugin_commoninterfaceassignment.xml b/lib/python/Plugins/SystemPlugins/CommonInterfaceAssignment/meta/plugin_commoninterfaceassignment.xml new file mode 100644 index 0000000..21c3891 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/CommonInterfaceAssignment/meta/plugin_commoninterfaceassignment.xml @@ -0,0 +1,21 @@ + + + + + + + + Dream Multimedia + CommonInterfaceAssignment + enigma2-plugin-systemplugins-commoninterfaceassignment + Assigning providers/services/caids to a CI module + With the CommonInterfaceAssignment plugin it is possible to use different + CI modules in your receiver and assign dedicated providers/services or caids to each of them.\n + This allows watching a scrambled service while recording another one. + + + + + + + diff --git a/lib/python/Plugins/SystemPlugins/CommonInterfaceAssignment/plugin.py b/lib/python/Plugins/SystemPlugins/CommonInterfaceAssignment/plugin.py new file mode 100644 index 0000000..b89056c --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/CommonInterfaceAssignment/plugin.py @@ -0,0 +1,645 @@ +from Screens.Screen import Screen +from Screens.ChannelSelection import * +from Components.ActionMap import HelpableActionMap, ActionMap, NumberActionMap +from Components.Sources.List import List +from Components.Sources.StaticText import StaticText +from Components.config import ConfigNothing +from Components.ConfigList import ConfigList +from Components.Label import Label +from Components.SelectionList import SelectionList +from Components.MenuList import MenuList +from ServiceReference import ServiceReference +from Plugins.Plugin import PluginDescriptor +from xml.etree.cElementTree import parse as ci_parse +from Tools.XMLTools import elementsWithTag, mergeText, stringToXML +from enigma import eDVBCI_UI, eDVBCIInterfaces, eEnv + +from os import system, path as os_path + +class CIselectMainMenu(Screen): + skin = """ + + + + + + + """ + + def __init__(self, session, args = 0): + + Screen.__init__(self, session) + + self["key_red"] = StaticText(_("Close")) + self["key_green"] = StaticText(_("Edit")) + + self["actions"] = ActionMap(["ColorActions","SetupActions"], + { + "green": self.greenPressed, + "red": self.close, + "ok": self.greenPressed, + "cancel": self.close + }, -1) + + NUM_CI=eDVBCIInterfaces.getInstance().getNumOfSlots() + + print "[CI_Wizzard] FOUND %d CI Slots " % NUM_CI + + self.dlg = None + self.state = { } + self.list = [ ] + if NUM_CI > 0: + for slot in range(NUM_CI): + state = eDVBCI_UI.getInstance().getState(slot) + if state == 0: + appname = _("Slot %d") %(slot+1) + " - " + _("no module found") + elif state == 1: + appname = _("Slot %d") %(slot+1) + " - " + _("init modules") + elif state == 2: + appname = _("Slot %d") %(slot+1) + " - " + eDVBCI_UI.getInstance().getAppName(slot) + self.list.append( (appname, ConfigNothing(), 0, slot) ) + else: + self.list.append( (_("no CI slots found") , ConfigNothing(), 1, -1) ) + + menuList = ConfigList(self.list) + menuList.list = self.list + menuList.l.setList(self.list) + self["CiList"] = menuList + self.onShown.append(self.setWindowTitle) + + def setWindowTitle(self): + self.setTitle(_("CI assignment")) + + def greenPressed(self): + cur = self["CiList"].getCurrent() + if cur and len(cur) > 2: + action = cur[2] + slot = cur[3] + if action == 1: + print "[CI_Wizzard] there is no CI Slot in your receiver" + else: + print "[CI_Wizzard] selected CI Slot : %d" % slot + if config.usage.setup_level.index > 1: # advanced + self.session.open(CIconfigMenu, slot) + else: + self.session.open(easyCIconfigMenu, slot) + + """def yellowPressed(self): # unused + NUM_CI=eDVBCIInterfaces.getInstance().getNumOfSlots() + print "[CI_Check] FOUND %d CI Slots " % NUM_CI + if NUM_CI > 0: + for ci in range(NUM_CI): + print eDVBCIInterfaces.getInstance().getDescrambleRules(ci)""" + + +class CIconfigMenu(Screen): + skin = """ + + + + + + + + + + + + + + + + """ + + def __init__(self, session, ci_slot="9"): + + Screen.__init__(self, session) + self.ci_slot=ci_slot + self.filename = eEnv.resolve("${sysconfdir}/enigma2/ci") + str(self.ci_slot) + ".xml" + + self["key_red"] = StaticText(_("Delete")) + self["key_green"] = StaticText(_("Add service")) + self["key_yellow"] = StaticText(_("Add provider")) + self["key_blue"] = StaticText(_("Select CAId")) + self["CAidList_desc"] = StaticText(_("Assigned CAIds:")) + self["CAidList"] = StaticText() + self["ServiceList_desc"] = StaticText(_("Assigned services/provider:")) + self["ServiceList_info"] = StaticText() + + self["actions"] = ActionMap(["ColorActions","SetupActions"], + { + "green": self.greenPressed, + "red": self.redPressed, + "yellow": self.yellowPressed, + "blue": self.bluePressed, + "cancel": self.cancel + }, -1) + + print "[CI_Wizzard_Config] Configuring CI Slots : %d " % self.ci_slot + + i=0 + self.caidlist=[] + print eDVBCIInterfaces.getInstance().readCICaIds(self.ci_slot) + for caid in eDVBCIInterfaces.getInstance().readCICaIds(self.ci_slot): + i+=1 + self.caidlist.append((str(hex(int(caid))),str(caid),i)) + + print "[CI_Wizzard_Config_CI%d] read following CAIds from CI: %s" %(self.ci_slot, self.caidlist) + + self.selectedcaid = [] + self.servicelist = [] + self.caids = "" + + serviceList = ConfigList(self.servicelist) + serviceList.list = self.servicelist + serviceList.l.setList(self.servicelist) + self["ServiceList"] = serviceList + + self.loadXML() + # if config mode !=advanced autoselect any caid + if config.usage.setup_level.index <= 1: # advanced + self.selectedcaid=self.caidlist + self.finishedCAidSelection(self.selectedcaid) + self.onShown.append(self.setWindowTitle) + + def setWindowTitle(self): + self.setTitle(_("CI assignment")) + + def redPressed(self): + self.delete() + + def greenPressed(self): + self.session.openWithCallback( self.finishedChannelSelection, myChannelSelection, None) + + def yellowPressed(self): + self.session.openWithCallback( self.finishedProviderSelection, myProviderSelection, None) + + def bluePressed(self): + self.session.openWithCallback(self.finishedCAidSelection, CAidSelect, self.caidlist, self.selectedcaid) + + def cancel(self): + self.saveXML() + activate_all(self) + self.close() + + def setServiceListInfo(self): + if len(self.servicelist): + self["ServiceList_info"].setText("") + else: + self["ServiceList_info"].setText(_("No services/providers selected")) + + def delete(self): + cur = self["ServiceList"].getCurrent() + if cur and len(cur) > 2: + self.servicelist.remove(cur) + self["ServiceList"].l.setList(self.servicelist) + self.setServiceListInfo() + + def finishedChannelSelection(self, *args): + if len(args): + ref=args[0] + service_ref = ServiceReference(ref) + service_name = service_ref.getServiceName() + if find_in_list(self.servicelist, service_name, 0)==False: + split_ref=service_ref.ref.toString().split(":") + if split_ref[0] == "1":#== dvb service und nicht muell von None + self.servicelist.append( (service_name , ConfigNothing(), 0, service_ref.ref.toString()) ) + self["ServiceList"].l.setList(self.servicelist) + self.setServiceListInfo() + + def finishedProviderSelection(self, *args): + if len(args)>1: # bei nix selected kommt nur 1 arg zurueck (==None) + name=args[0] + dvbnamespace=args[1] + if find_in_list(self.servicelist, name, 0)==False: + self.servicelist.append( (name , ConfigNothing(), 1, dvbnamespace) ) + self["ServiceList"].l.setList(self.servicelist) + self.setServiceListInfo() + + def finishedCAidSelection(self, *args): + if len(args): + self.selectedcaid=args[0] + self.caids="" + if len(self.selectedcaid): + for item in self.selectedcaid: + if len(self.caids): + self.caids+= ", " + item[0] + else: + self.caids=item[0] + else: + self.selectedcaid=[] + self.caids=_("no CAId selected") + else: + self.selectedcaid=[] + self.caids=_("no CAId selected") + self["CAidList"].setText(self.caids) + + def saveXML(self): + try: + fp = file(self.filename, 'w') + fp.write("\n") + fp.write("\n") + fp.write("\t\n") + fp.write("\t\t%s\n" % self.ci_slot) + for item in self.selectedcaid: + if len(self.selectedcaid): + fp.write("\t\t\n" % item[0]) + for item in self.servicelist: + if len(self.servicelist): + if item[2]==1: + fp.write("\t\t\n" % (item[0], item[3])) + else: + fp.write("\t\t\n" % (item[0], item[3])) + fp.write("\t\n") + fp.write("\n") + fp.close() + except: + print "[CI_Config_CI%d] xml not written" %self.ci_slot + os.unlink(self.filename) + + def loadXML(self): + if not os_path.exists(self.filename): + return + + def getValue(definitions, default): + ret = "" + Len = len(definitions) + return Len > 0 and definitions[Len-1].text or default + + try: + tree = ci_parse(self.filename).getroot() + self.read_services=[] + self.read_providers=[] + self.usingcaid=[] + self.ci_config=[] + for slot in tree.findall("slot"): + read_slot = getValue(slot.findall("id"), False).encode("UTF-8") + print "ci " + read_slot + + i=0 + for caid in slot.findall("caid"): + read_caid = caid.get("id").encode("UTF-8") + self.selectedcaid.append((str(read_caid),str(read_caid),i)) + self.usingcaid.append(long(read_caid,16)) + i+=1 + + for service in slot.findall("service"): + read_service_name = service.get("name").encode("UTF-8") + read_service_ref = service.get("ref").encode("UTF-8") + self.read_services.append (read_service_ref) + + for provider in slot.findall("provider"): + read_provider_name = provider.get("name").encode("UTF-8") + read_provider_dvbname = provider.get("dvbnamespace").encode("UTF-8") + self.read_providers.append((read_provider_name,read_provider_dvbname)) + + self.ci_config.append((int(read_slot), (self.read_services, self.read_providers, self.usingcaid))) + except: + print "[CI_Config_CI%d] error parsing xml..." %self.ci_slot + + for item in self.read_services: + if len(item): + self.finishedChannelSelection(item) + + for item in self.read_providers: + if len(item): + self.finishedProviderSelection(item[0],item[1]) + + print self.ci_config + self.finishedCAidSelection(self.selectedcaid) + self["ServiceList"].l.setList(self.servicelist) + self.setServiceListInfo() + + +class easyCIconfigMenu(CIconfigMenu): + skin = """ + + + + + + + + + + + """ + + def __init__(self, session, ci_slot="9"): + + ci=ci_slot + CIconfigMenu.__init__(self, session, ci_slot) + + self["actions"] = ActionMap(["ColorActions","SetupActions"], + { + "green": self.greenPressed, + "red": self.redPressed, + "yellow": self.yellowPressed, + "cancel": self.cancel + }) + + +class CAidSelect(Screen): + skin = """ + + + + + + + + + """ + + def __init__(self, session, list, selected_caids): + + Screen.__init__(self, session) + + self.list = SelectionList() + self["list"] = self.list + + for listindex in range(len(list)): + if find_in_list(selected_caids,list[listindex][0],0): + self.list.addSelection(list[listindex][0], list[listindex][1], listindex, True) + else: + self.list.addSelection(list[listindex][0], list[listindex][1], listindex, False) + + self["key_red"] = StaticText(_("Cancel")) + self["key_green"] = StaticText(_("Save")) + self["introduction"] = StaticText(_("Press OK to select/deselect a CAId.")) + + self["actions"] = ActionMap(["ColorActions","SetupActions"], + { + "ok": self.list.toggleSelection, + "cancel": self.cancel, + "green": self.greenPressed, + "red": self.cancel + }, -1) + self.onShown.append(self.setWindowTitle) + + def setWindowTitle(self): + self.setTitle(_("select CAId's")) + + def greenPressed(self): + list = self.list.getSelectionsList() + print list + self.close(list) + + def cancel(self): + self.close() + +class myProviderSelection(ChannelSelectionBase): + skin = """ + + + + + + + + + + """ + + def __init__(self, session, title): + ChannelSelectionBase.__init__(self, session) + self.onShown.append(self.__onExecCallback) + + self["actions"] = ActionMap(["OkCancelActions", "ChannelSelectBaseActions"], + { + "showFavourites": self.doNothing, + "showAllServices": self.cancel, + "showProviders": self.doNothing, + "showSatellites": self.doNothing, + "cancel": self.cancel, + "ok": self.channelSelected + }) + self["key_red"] = StaticText(_("Close")) + self["key_green"] = StaticText() + self["key_yellow"] = StaticText() + self["key_blue"] = StaticText() + self["introduction"] = StaticText(_("Press OK to select a provider.")) + + def doNothing(self): + pass + + def __onExecCallback(self): + self.showSatellites() + self.setTitle(_("Select provider to add...")) + + def channelSelected(self): # just return selected service + ref = self.getCurrentSelection() + splited_ref=ref.toString().split(":") + if ref.flags == 7 and splited_ref[6] != "0": + self.dvbnamespace=splited_ref[6] + self.enterPath(ref) + else: + self.close(ref.getName(), self.dvbnamespace) + + def showSatellites(self): + if not self.pathChangeDisabled: + refstr = '%s FROM SATELLITES ORDER BY satellitePosition'%(self.service_types) + if not self.preEnterPath(refstr): + ref = eServiceReference(refstr) + justSet=False + prev = None + + if self.isBasePathEqual(ref): + if self.isPrevPathEqual(ref): + justSet=True + prev = self.pathUp(justSet) + else: + currentRoot = self.getRoot() + if currentRoot is None or currentRoot != ref: + justSet=True + self.clearPath() + self.enterPath(ref, True) + if justSet: + serviceHandler = eServiceCenter.getInstance() + servicelist = serviceHandler.list(ref) + if not servicelist is None: + while True: + service = servicelist.getNext() + if not service.valid(): #check if end of list + break + unsigned_orbpos = service.getUnsignedData(4) >> 16 + orbpos = service.getData(4) >> 16 + if orbpos < 0: + orbpos += 3600 + if service.getPath().find("FROM PROVIDER") != -1: + service_type = _("Providers") + try: + # why we need this cast? + service_name = str(nimmanager.getSatDescription(orbpos)) + except: + if unsigned_orbpos == 0xFFFF: #Cable + service_name = _("Cable") + elif unsigned_orbpos == 0xEEEE: #Terrestrial + service_name = _("Terrestrial") + else: + if orbpos > 1800: # west + orbpos = 3600 - orbpos + h = _("W") + else: + h = _("E") + service_name = ("%d.%d" + h) % (orbpos / 10, orbpos % 10) + service.setName("%s - %s" % (service_name, service_type)) + self.servicelist.addService(service) + self.servicelist.finishFill() + if prev is not None: + self.setCurrentSelection(prev) + + def cancel(self): + self.close(None) + +class myChannelSelection(ChannelSelectionBase): + skin = """ + + + + + + + + + + + + """ + + def __init__(self, session, title): + ChannelSelectionBase.__init__(self, session) + self.onShown.append(self.__onExecCallback) + + self["actions"] = ActionMap(["OkCancelActions", "TvRadioActions", "ChannelSelectBaseActions"], + { + "showProviders": self.doNothing, + "showSatellites": self.showAllServices, + "showAllServices": self.cancel, + "cancel": self.cancel, + "ok": self.channelSelected, + "keyRadio": self.setModeRadio, + "keyTV": self.setModeTv + }) + + self["key_red"] = StaticText(_("Close")) + self["key_green"] = StaticText(_("All")) + self["key_yellow"] = StaticText() + self["key_blue"] = StaticText(_("Favourites")) + self["introduction"] = StaticText(_("Press OK to select a provider.")) + + def __onExecCallback(self): + self.setModeTv() + self.setTitle(_("Select service to add...")) + + def doNothing(self): + pass + + def channelSelected(self): # just return selected service + ref = self.getCurrentSelection() + if (ref.flags & 7) == 7: + self.enterPath(ref) + elif not (ref.flags & eServiceReference.isMarker): + ref = self.getCurrentSelection() + self.close(ref) + + def setModeTv(self): + self.setTvMode() + self.showFavourites() + + def setModeRadio(self): + self.setRadioMode() + self.showFavourites() + + def cancel(self): + self.close(None) + +def activate_all(session): + NUM_CI=eDVBCIInterfaces.getInstance().getNumOfSlots() + print "[CI_Activate] FOUND %d CI Slots " % NUM_CI + if NUM_CI > 0: + ci_config=[] + def getValue(definitions, default): + # Initialize Output + ret = "" + # How many definitions are present + Len = len(definitions) + return Len > 0 and definitions[Len-1].text or default + + for ci in range(NUM_CI): + filename = eEnv.resolve("${sysconfdir}/enigma2/ci") + str(ci) + ".xml" + + if not os_path.exists(filename): + print "[CI_Activate_Config_CI%d] no config file found" %ci + + try: + tree = ci_parse(filename).getroot() + read_services=[] + read_providers=[] + usingcaid=[] + for slot in tree.findall("slot"): + read_slot = getValue(slot.findall("id"), False).encode("UTF-8") + + for caid in slot.findall("caid"): + read_caid = caid.get("id").encode("UTF-8") + usingcaid.append(long(read_caid,16)) + + for service in slot.findall("service"): + read_service_ref = service.get("ref").encode("UTF-8") + read_services.append (read_service_ref) + + for provider in slot.findall("provider"): + read_provider_name = provider.get("name").encode("UTF-8") + read_provider_dvbname = provider.get("dvbnamespace").encode("UTF-8") + read_providers.append((read_provider_name,long(read_provider_dvbname,16))) + + ci_config.append((int(read_slot), (read_services, read_providers, usingcaid))) + except: + print "[CI_Activate_Config_CI%d] error parsing xml..." %ci + + for item in ci_config: + print "[CI_Activate] activate CI%d with following settings:" %item[0] + print item[0] + print item[1] + try: + eDVBCIInterfaces.getInstance().setDescrambleRules(item[0],item[1]) + except: + print "[CI_Activate_Config_CI%d] error setting DescrambleRules..." %item[0] + +def find_in_list(list, search, listpos=0): + for item in list: + if item[listpos]==search: + return True + return False + +global_session = None + +def sessionstart(reason, session): + global global_session + global_session = session + +def autostart(reason, **kwargs): + global global_session + if reason == 0: + print "[CI_Assignment] activating ci configs:" + activate_all(global_session) + elif reason == 1: + global_session = None + +def main(session, **kwargs): + session.open(CIselectMainMenu) + +def menu(menuid, **kwargs): + if menuid == "setup" and eDVBCIInterfaces.getInstance().getNumOfSlots(): + return [(_("Common Interface assignment"), main, "ci_assign", 11)] + return [ ] + +def Plugins(**kwargs): + if config.usage.setup_level.index > 1: + return [PluginDescriptor( where = PluginDescriptor.WHERE_SESSIONSTART, needsRestart = False, fnc = sessionstart ), + PluginDescriptor( where = PluginDescriptor.WHERE_AUTOSTART, needsRestart = False, fnc = autostart ), + PluginDescriptor( name = _("Common Interface assignment"), description = _("a gui to assign services/providers/caids to common interface modules"), where = PluginDescriptor.WHERE_MENU, needsRestart = False, fnc = menu )] + else: + return [PluginDescriptor( where = PluginDescriptor.WHERE_SESSIONSTART, needsRestart = False, fnc = sessionstart ), + PluginDescriptor( where = PluginDescriptor.WHERE_AUTOSTART, needsRestart = False, fnc = autostart ), + PluginDescriptor( name = _("Common Interface assignment"), description = _("a gui to assign services/providers to common interface modules"), where = PluginDescriptor.WHERE_MENU, needsRestart = False, fnc = menu )] diff --git a/lib/python/Plugins/SystemPlugins/DefaultServicesScanner/Makefile.am b/lib/python/Plugins/SystemPlugins/DefaultServicesScanner/Makefile.am new file mode 100644 index 0000000..ebb1ca7 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/DefaultServicesScanner/Makefile.am @@ -0,0 +1,8 @@ +installdir = $(pkglibdir)/python/Plugins/SystemPlugins/DefaultServicesScanner + +SUBDIRS = meta + +install_PYTHON = \ + __init__.py \ + plugin.py + diff --git a/lib/python/Plugins/SystemPlugins/DefaultServicesScanner/__init__.py b/lib/python/Plugins/SystemPlugins/DefaultServicesScanner/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lib/python/Plugins/SystemPlugins/DefaultServicesScanner/meta/Makefile.am b/lib/python/Plugins/SystemPlugins/DefaultServicesScanner/meta/Makefile.am new file mode 100644 index 0000000..5e2d194 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/DefaultServicesScanner/meta/Makefile.am @@ -0,0 +1,5 @@ +installdir = $(datadir)/meta + +dist_install_DATA = plugin_defaultservicesscanner.xml + +EXTRA_DIST = defaultservicescanner.jpg diff --git a/lib/python/Plugins/SystemPlugins/DefaultServicesScanner/meta/defaultservicescanner.jpg b/lib/python/Plugins/SystemPlugins/DefaultServicesScanner/meta/defaultservicescanner.jpg new file mode 100644 index 0000000..f4d0a1e Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/DefaultServicesScanner/meta/defaultservicescanner.jpg differ diff --git a/lib/python/Plugins/SystemPlugins/DefaultServicesScanner/meta/plugin_defaultservicesscanner.xml b/lib/python/Plugins/SystemPlugins/DefaultServicesScanner/meta/plugin_defaultservicesscanner.xml new file mode 100644 index 0000000..74b7886 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/DefaultServicesScanner/meta/plugin_defaultservicesscanner.xml @@ -0,0 +1,20 @@ + + + + + + + Dream Multimedia + DefaultServicesScanner + enigma2-plugin-systemplugins-defaultservicesscanner + Scans default lamedbs sorted by satellite + With the DefaultServicesScanner plugin you can scan default lamedbs sorted by satellite with a connected dish positioner. + + + + + + + + + diff --git a/lib/python/Plugins/SystemPlugins/DefaultServicesScanner/plugin.py b/lib/python/Plugins/SystemPlugins/DefaultServicesScanner/plugin.py new file mode 100644 index 0000000..a27cc12 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/DefaultServicesScanner/plugin.py @@ -0,0 +1,137 @@ +#from Components.ActionMap import ActionMap, NumberActionMap +#from Components.Input import Input +#from Components.Ipkg import IpkgComponent +#from Components.Label import Label +#from Components.MenuList import MenuList +#from Components.Slider import Slider +from Components.NimManager import nimmanager +from Plugins.Plugin import PluginDescriptor +from Screens.ScanSetup import ScanSetup +from Screens.ServiceScan import ServiceScan +from Screens.MessageBox import MessageBox +from Tools.Directories import resolveFilename, SCOPE_CONFIG, copyfile +#from Screens.Screen import Screen +from os import unlink +from enigma import eTimer, eDVBDB + +class DefaultServiceScan(ServiceScan): + skin = """ + + + TYPE + 0,0 + + + + TYPE + 1,1 + + + + TYPE + 2,2 + + + + + + + + + """ + + def __init__(self, session, scanList): + try: + unlink(resolveFilename(SCOPE_CONFIG) + "/lamedb"); + except OSError: + pass + db = eDVBDB.getInstance() + db.reloadServicelist() + ServiceScan.__init__(self, session, scanList) + self.timer = eTimer() + self.timer.callback.append(self.ok) + self.timer.start(1000) + +class DefaultServicesScannerPlugin(ScanSetup): + skin = """ + + + + """ + + def __init__(self, session, args = None): + ScanSetup.__init__(self, session) + # backup lamedb + confdir = resolveFilename(SCOPE_CONFIG) + copyfile(confdir + "/lamedb", confdir + "/lamedb.backup") + self.scan_type.value = "multisat" + self.createSetup() + self.scanIndex = 0 + self.selectSat(0) + self.onFirstExecBegin.append(self.runScan) + + def selectSat(self, index): + for satindex in range(len(self.multiscanlist)): + if satindex != index: + self.multiscanlist[satindex][1].value = False + else: + self.multiscanlist[satindex][1].value = True + + def runScan(self): + print "runScan" + self.keyGo() + + def startScan(self, tlist, flags, feid, networkid = 0): + print "startScan" + if len(tlist): + # flags |= eComponentScan.scanSearchBAT + self.session.openWithCallback(self.scanFinished, DefaultServiceScan, [{"transponders": tlist, "feid": feid, "flags": flags, "networkid": networkid}]) + else: + self.session.openWithCallback(self.scanFinished, MessageBox, _("Nothing to scan!\nPlease setup your tuner settings before you start a service scan."), MessageBox.TYPE_ERROR) + + def scanFinished(self, value = None): + print "finished" + print "self.scanIndex:", self.scanIndex + db = eDVBDB.getInstance() + print "self.multiscanlist:", self.multiscanlist + if len(self.multiscanlist) - 1 >= self.scanIndex and len(self.multiscanlist[self.scanIndex]) > 0: + satint = self.multiscanlist[self.scanIndex][0] + print "scanned sat:", satint + db.saveServicelist("/tmp/lamedb." + str(satint)) + file = open("/tmp/sat" + str(satint) + ".info", "w") + xml = """ + + + + + + + + %s + %s + + + + + + +""" % (satint, "OpenPli", nimmanager.getSatDescription(satint), satint) + file.write(xml) + file.close() + + self.scanIndex += 1 + if self.scanIndex + 1 >= len(self.multiscanlist): + print "no more sats to scan" + confdir = resolveFilename(SCOPE_CONFIG) + copyfile(confdir + "/lamedb.backup", confdir + "/lamedb") + db.reloadServicelist() + self.close() + else: + self.selectSat(self.scanIndex) + self.keyGo() + +def DefaultServicesScannerMain(session, **kwargs): + session.open(DefaultServicesScannerPlugin) + +def Plugins(**kwargs): + return PluginDescriptor(name="Default Services Scanner", description=_("Scans default lamedbs sorted by satellite with a connected dish positioner"), where = PluginDescriptor.WHERE_PLUGINMENU, needsRestart = False, fnc=DefaultServicesScannerMain) diff --git a/lib/python/Plugins/SystemPlugins/DiseqcTester/Makefile.am b/lib/python/Plugins/SystemPlugins/DiseqcTester/Makefile.am new file mode 100644 index 0000000..18f4c1f --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/DiseqcTester/Makefile.am @@ -0,0 +1,7 @@ +installdir = $(pkglibdir)/python/Plugins/SystemPlugins/DiseqcTester + +SUBDIRS = meta + +install_PYTHON = \ + __init__.py \ + plugin.py \ No newline at end of file diff --git a/lib/python/Plugins/SystemPlugins/DiseqcTester/__init__.py b/lib/python/Plugins/SystemPlugins/DiseqcTester/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lib/python/Plugins/SystemPlugins/DiseqcTester/meta/Makefile.am b/lib/python/Plugins/SystemPlugins/DiseqcTester/meta/Makefile.am new file mode 100644 index 0000000..92a5473 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/DiseqcTester/meta/Makefile.am @@ -0,0 +1,5 @@ +installdir = $(datadir)/meta + +dist_install_DATA = plugin_diseqctester.xml + +EXTRA_DIST = diseqctester_de.jpg diseqctester_en.jpg diff --git a/lib/python/Plugins/SystemPlugins/DiseqcTester/meta/diseqctester_de.jpg b/lib/python/Plugins/SystemPlugins/DiseqcTester/meta/diseqctester_de.jpg new file mode 100644 index 0000000..5a6e153 Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/DiseqcTester/meta/diseqctester_de.jpg differ diff --git a/lib/python/Plugins/SystemPlugins/DiseqcTester/meta/diseqctester_en.jpg b/lib/python/Plugins/SystemPlugins/DiseqcTester/meta/diseqctester_en.jpg new file mode 100644 index 0000000..43dad76 Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/DiseqcTester/meta/diseqctester_en.jpg differ diff --git a/lib/python/Plugins/SystemPlugins/DiseqcTester/meta/plugin_diseqctester.xml b/lib/python/Plugins/SystemPlugins/DiseqcTester/meta/plugin_diseqctester.xml new file mode 100644 index 0000000..567618b --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/DiseqcTester/meta/plugin_diseqctester.xml @@ -0,0 +1,20 @@ + + + + + + + Dream Multimedia + DiseqcTester + enigma2-plugin-systemplugins-diseqctester + Test your DiSEqC equipment + With the DiseqcTester plugin you can test your satellite equipment for DiSEqC compatibility and errors. + + + + + + + + + diff --git a/lib/python/Plugins/SystemPlugins/DiseqcTester/plugin.py b/lib/python/Plugins/SystemPlugins/DiseqcTester/plugin.py new file mode 100644 index 0000000..f4bb672 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/DiseqcTester/plugin.py @@ -0,0 +1,684 @@ +from Screens.Satconfig import NimSelection +from Screens.Screen import Screen +from Screens.TextBox import TextBox +from Screens.MessageBox import MessageBox + +from Plugins.Plugin import PluginDescriptor + +from Components.ActionMap import ActionMap, NumberActionMap +from Components.NimManager import nimmanager +from Components.ResourceManager import resourcemanager +from Components.Sources.FrontendStatus import FrontendStatus +from Components.TuneTest import TuneTest +from Components.Sources.List import List +from Components.Sources.Progress import Progress +from Components.Sources.StaticText import StaticText +from Components.ConfigList import ConfigListScreen +from Components.config import getConfigListEntry, ConfigSelection, ConfigYesNo +from Components.Harddisk import harddiskmanager + +import random + +# always use: +# setResultType(type) +# setResultParameter(parameter) +# getTextualResult() +class ResultParser: + def __init__(self): + pass + + TYPE_BYORBPOS = 0 + TYPE_BYINDEX = 1 + TYPE_ALL = 2 + def setResultType(self, type): + self.type = type + + def setResultParameter(self, parameter): + if self.type == self.TYPE_BYORBPOS: + self.orbpos = parameter + elif self.type == self.TYPE_BYINDEX: + self.index = parameter + + def getTextualResultForIndex(self, index, logfulltransponders = False): + text = "" + text += "%s:\n" % self.getTextualIndexRepresentation(index) + + failed, successful = self.results[index]["failed"], self.results[index]["successful"] + countfailed = len(failed) + countsuccessful = len(successful) + countall = countfailed + countsuccessful + percentfailed = round(countfailed / float(countall + 0.0001) * 100) + percentsuccessful = round(countsuccessful / float(countall + 0.0001) * 100) + text += "Tested %d transponders\n%d (%d %%) transponders succeeded\n%d (%d %%) transponders failed\n" % (countall, countsuccessful, percentsuccessful, countfailed, percentfailed) + reasons = {} + completelist = [] + if countfailed > 0: + for transponder in failed: + completelist.append({"transponder": transponder[0], "fedata": transponder[-1]}) + reasons[transponder[2]] = reasons.get(transponder[2], []) + reasons[transponder[2]].append(transponder) + if transponder[2] == "pids_failed": + print transponder[2], "-", transponder[3] + + text += "The %d unsuccessful tuning attempts failed for the following reasons:\n" % countfailed + + for reason in reasons.keys(): + text += "%s: %d transponders failed\n" % (reason, len(reasons[reason])) + + for reason in reasons.keys(): + text += "\n" + text += "%s previous planes:\n" % reason + for transponder in reasons[reason]: + if transponder[1] is not None: + text += self.getTextualIndexRepresentation(self.getIndexForTransponder(transponder[1])) + else: + text += "No transponder tuned" + text += " ==> " + self.getTextualIndexRepresentation(self.getIndexForTransponder(transponder[0])) + text += "\n" + if logfulltransponders: + text += str(transponder[1]) + text += " ==> " + text += str(transponder[0]) + text += "\n" + if reason == "pids_failed": + text += "(tsid, onid): " + text += str(transponder[3]['real']) + text += "(read from sat) != " + text += str(transponder[3]['expected']) + text += "(read from file)" + text += "\n" + text += "\n" + if countsuccessful > 0: + text += "\n" + text += "Successfully tuned transponders' previous planes:\n" + for transponder in successful: + completelist.append({"transponder": transponder[0], "fedata": transponder[-1]}) + if transponder[1] is not None: + text += self.getTextualIndexRepresentation(self.getIndexForTransponder(transponder[1])) + else: + text += "No transponder tuned" + text += " ==> " + self.getTextualIndexRepresentation(self.getIndexForTransponder(transponder[0])) + text += "\n" + + text += "------------------------------------------------\n" + text += "complete transponderlist:\n" + for entry in completelist: + text += str(entry["transponder"]) + " -- " + str(entry["fedata"]) + "\n" + return text + + def getTextualResult(self): + text = "" + if self.type == self.TYPE_BYINDEX: + text += self.getTextualResultForIndex(self.index) + elif self.type == self.TYPE_BYORBPOS: + for index in self.results.keys(): + if index[2] == self.orbpos: + text += self.getTextualResultForIndex(index) + text += "\n-----------------------------------------------------\n" + elif self.type == self.TYPE_ALL: + orderedResults = {} + for index in self.results.keys(): + orbpos = index[2] + orderedResults[orbpos] = orderedResults.get(orbpos, []) + orderedResults[orbpos].append(index) + ordered_orbpos = orderedResults.keys() + ordered_orbpos.sort() + for orbpos in ordered_orbpos: + text += "\n*****************************************\n" + text += "Orbital position %s:" % str(orbpos) + text += "\n*****************************************\n" + for index in orderedResults[orbpos]: + text += self.getTextualResultForIndex(index, logfulltransponders = True) + text += "\n-----------------------------------------------------\n" + + + return text + +class DiseqcTester(Screen, TuneTest, ResultParser): + skin = """ + + + + + {"template": [ + MultiContentEntryText(pos = (10, 0), size = (330, 25), flags = RT_HALIGN_LEFT, text = 1), # index 1 is the index name, + MultiContentEntryText(pos = (330, 0), size = (150, 25), flags = RT_HALIGN_RIGHT, text = 2) # index 2 is the status, + ], + "fonts": [gFont("Regular", 20)], + "itemHeight": 25 + } + + + + + + + + + + + + + + + + + + + + + """ + + TEST_TYPE_QUICK = 0 + TEST_TYPE_RANDOM = 1 + TEST_TYPE_COMPLETE = 2 + def __init__(self, session, feid, test_type = TEST_TYPE_QUICK, loopsfailed = 3, loopssuccessful = 1, log = False): + Screen.__init__(self, session) + self.feid = feid + self.test_type = test_type + self.loopsfailed = loopsfailed + self.loopssuccessful = loopssuccessful + self.log = log + + self["actions"] = NumberActionMap(["SetupActions"], + { + "ok": self.select, + "cancel": self.keyCancel, + }, -2) + + TuneTest.__init__(self, feid, stopOnSuccess = self.loopssuccessful, stopOnError = self.loopsfailed) + #self["Frontend"] = FrontendStatus(frontend_source = lambda : self.frontend, update_interval = 100) + self["overall_progress"] = Progress() + self["sub_progress"] = Progress() + + self["failed_counter"] = StaticText("0") + self["succeeded_counter"] = StaticText("0") + self["witherrors_counter"] = StaticText("0") + self["untestable_counter"] = StaticText("0") + + self.list = [] + self["progress_list"] = List(self.list) + self["progress_list"].onSelectionChanged.append(self.selectionChanged) + + self["CmdText"] = StaticText(_("Please wait while scanning is in progress...")) + + self.indexlist = {} + self.readTransponderList() + + self.running = False + + self.results = {} + self.resultsstatus = {} + + self.onLayoutFinish.append(self.go) + + def getProgressListComponent(self, index, status): + return (index, self.getTextualIndexRepresentation(index), status) + + def clearProgressList(self): + self.list = [] + self["progress_list"].list = self.list + + def addProgressListItem(self, index): + if index in self.indexlist: + for entry in self.list: + if entry[0] == index: + self.changeProgressListStatus(index, "working") + return + self.list.append(self.getProgressListComponent(index, _("working"))) + self["progress_list"].list = self.list + self["progress_list"].setIndex(len(self.list) - 1) + + def changeProgressListStatus(self, index, status): + self.newlist = [] + count = 0 + indexpos = 0 + for entry in self.list: + if entry[0] == index: + self.newlist.append(self.getProgressListComponent(index, status)) + indexpos = count + else: + self.newlist.append(entry) + count += 1 + self.list = self.newlist + self["progress_list"].list = self.list + self["progress_list"].setIndex(indexpos) + + def readTransponderList(self): + for sat in nimmanager.getSatListForNim(self.feid): + for transponder in nimmanager.getTransponders(sat[0]): + #print transponder + mytransponder = (transponder[1] / 1000, transponder[2] / 1000, transponder[3], transponder[4], transponder[7], sat[0], transponder[5], transponder[6], transponder[8], transponder[9], transponder[10], transponder[11]) + self.analyseTransponder(mytransponder) + + def getIndexForTransponder(self, transponder): + + if transponder[0] < 11700: + band = 1 # low + else: + band = 0 # high + + polarisation = transponder[2] + + sat = transponder[5] + + index = (band, polarisation, sat) + return index + + # sort the transponder into self.transponderlist + def analyseTransponder(self, transponder): + index = self.getIndexForTransponder(transponder) + if index not in self.indexlist: + self.indexlist[index] = [] + self.indexlist[index].append(transponder) + #print "self.indexlist:", self.indexlist + + # returns a string for the user representing a human readable output for index + def getTextualIndexRepresentation(self, index): + print "getTextualIndexRepresentation:", index + text = "" + + text += nimmanager.getSatDescription(index[2]) + ", " + + if index[0] == 1: + text += "Low Band, " + else: + text += "High Band, " + + if index[1] == 0: + text += "H" + else: + text += "V" + return text + + def fillTransponderList(self): + self.clearTransponder() + print "----------- fillTransponderList" + print "index:", self.currentlyTestedIndex + keys = self.indexlist.keys() + if self.getContinueScanning(): + print "index:", self.getTextualIndexRepresentation(self.currentlyTestedIndex) + for transponder in self.indexlist[self.currentlyTestedIndex]: + self.addTransponder(transponder) + print "transponderList:", self.transponderlist + return True + else: + return False + + def progressCallback(self, progress): + if progress[0] != self["sub_progress"].getRange(): + self["sub_progress"].setRange(progress[0]) + self["sub_progress"].setValue(progress[1]) + + # logic for scanning order of transponders + # on go getFirstIndex is called + def getFirstIndex(self): + # TODO use other function to scan more randomly + if self.test_type == self.TEST_TYPE_QUICK: + self.myindex = 0 + keys = self.indexlist.keys() + keys.sort(key = lambda a: a[2]) # sort by orbpos + self["overall_progress"].setRange(len(keys)) + self["overall_progress"].setValue(self.myindex) + return keys[0] + elif self.test_type == self.TEST_TYPE_RANDOM: + self.randomkeys = self.indexlist.keys() + random.shuffle(self.randomkeys) + self.myindex = 0 + self["overall_progress"].setRange(len(self.randomkeys)) + self["overall_progress"].setValue(self.myindex) + return self.randomkeys[0] + elif self.test_type == self.TEST_TYPE_COMPLETE: + keys = self.indexlist.keys() + print "keys:", keys + successorindex = {} + for index in keys: + successorindex[index] = [] + for otherindex in keys: + if otherindex != index: + successorindex[index].append(otherindex) + random.shuffle(successorindex[index]) + self.keylist = [] + stop = False + currindex = None + while not stop: + if currindex is None or len(successorindex[currindex]) == 0: + oldindex = currindex + for index in successorindex.keys(): + if len(successorindex[index]) > 0: + currindex = index + self.keylist.append(currindex) + break + if currindex == oldindex: + stop = True + else: + currindex = successorindex[currindex].pop() + self.keylist.append(currindex) + print "self.keylist:", self.keylist + self.myindex = 0 + self["overall_progress"].setRange(len(self.keylist)) + self["overall_progress"].setValue(self.myindex) + return self.keylist[0] + + + # after each index is finished, getNextIndex is called to get the next index to scan + def getNextIndex(self): + # TODO use other function to scan more randomly + if self.test_type == self.TEST_TYPE_QUICK: + self.myindex += 1 + keys = self.indexlist.keys() + keys.sort(key = lambda a: a[2]) # sort by orbpos + + self["overall_progress"].setValue(self.myindex) + if self.myindex < len(keys): + return keys[self.myindex] + else: + return None + elif self.test_type == self.TEST_TYPE_RANDOM: + self.myindex += 1 + keys = self.randomkeys + + self["overall_progress"].setValue(self.myindex) + if self.myindex < len(keys): + return keys[self.myindex] + else: + return None + elif self.test_type == self.TEST_TYPE_COMPLETE: + self.myindex += 1 + keys = self.keylist + + self["overall_progress"].setValue(self.myindex) + if self.myindex < len(keys): + return keys[self.myindex] + else: + return None + + # after each index is finished and the next index is returned by getNextIndex + # the algorithm checks, if we should continue scanning + def getContinueScanning(self): + if self.test_type == self.TEST_TYPE_QUICK or self.test_type == self.TEST_TYPE_RANDOM: + return (self.myindex < len(self.indexlist.keys())) + elif self.test_type == self.TEST_TYPE_COMPLETE: + return (self.myindex < len(self.keylist)) + + def addResult(self, index, status, failedTune, successfullyTune): + self.results[index] = self.results.get(index, {"failed": [], "successful": [], "status": None, "internalstatus": None}) + self.resultsstatus[status] = self.resultsstatus.get(status, []) + + oldstatus = self.results[index]["internalstatus"] + if oldstatus is None: + self.results[index]["status"] = status + elif oldstatus == "successful": + if status == "failed": + self.results[index]["status"] = "with_errors" + elif status == "successful": + self.results[index]["status"] = oldstatus + elif status == "with_errors": + self.results[index]["status"] = "with_errors" + elif status == "not_tested": + self.results[index]["status"] = oldstatus + elif oldstatus == "failed": + if status == "failed": + self.results[index]["status"] = oldstatus + elif status == "successful": + self.results[index]["status"] = "with_errors" + elif status == "with_errors": + self.results[index]["status"] = "with_errors" + elif status == "not_tested": + self.results[index]["status"] = oldstatus + elif oldstatus == "with_errors": + if status == "failed": + self.results[index]["status"] = oldstatus + elif status == "successful": + self.results[index]["status"] = oldstatus + elif status == "with_errors": + self.results[index]["status"] = oldstatus + elif status == "not_tested": + self.results[index]["status"] = oldstatus + elif oldstatus == "not_tested": + self.results[index]["status"] = status + + if self.results[index]["status"] != "working": + self.results[index]["internalstatus"] = self.results[index]["status"] + self.results[index]["failed"] = failedTune + self.results[index]["failed"] + self.results[index]["successful"] = successfullyTune + self.results[index]["successful"] + + self.resultsstatus[status].append(index) + + def finishedChecking(self): + print "finishedChecking" + TuneTest.finishedChecking(self) + + if not self.results.has_key(self.currentlyTestedIndex): + self.results[self.currentlyTestedIndex] = {"failed": [], "successful": [], "status": None, "internalstatus": None} + + if len(self.failedTune) > 0 and len(self.successfullyTune) > 0: + self.changeProgressListStatus(self.currentlyTestedIndex, "with errors") + self["witherrors_counter"].setText(str(int(self["witherrors_counter"].getText()) + 1)) + self.addResult(self.currentlyTestedIndex, "with_errors", self.failedTune, self.successfullyTune) + elif len(self.failedTune) == 0 and len(self.successfullyTune) == 0: + self.changeProgressListStatus(self.currentlyTestedIndex, "not tested") + self["untestable_counter"].setText(str(int(self["untestable_counter"].getText()) + 1)) + self.addResult(self.currentlyTestedIndex, "untestable", self.failedTune, self.successfullyTune) + elif len(self.failedTune) > 0: + self.changeProgressListStatus(self.currentlyTestedIndex, "failed") + #self["failed_counter"].setText(str(int(self["failed_counter"].getText()) + len(self.failedTune))) + self["failed_counter"].setText(str(int(self["failed_counter"].getText()) + 1)) + self.addResult(self.currentlyTestedIndex, "failed", self.failedTune, self.successfullyTune) + else: + self.changeProgressListStatus(self.currentlyTestedIndex, "successful") + #self["succeeded_counter"].setText(str(int(self["succeeded_counter"].getText()) + len(self.successfullyTune))) + self["succeeded_counter"].setText(str(int(self["succeeded_counter"].getText()) + 1)) + self.addResult(self.currentlyTestedIndex, "successful", self.failedTune, self.successfullyTune) + + + #self["failed_counter"].setText(str(int(self["failed_counter"].getText()) + len(self.failedTune))) + #self["succeeded_counter"].setText(str(int(self["succeeded_counter"].getText()) + len(self.successfullyTune))) + #if len(self.failedTune) == 0 and len(self.successfullyTune) == 0: + #self["untestable_counter"].setText(str(int(self["untestable_counter"].getText()) + 1)) + + self.currentlyTestedIndex = self.getNextIndex() + self.addProgressListItem(self.currentlyTestedIndex) + + if self.fillTransponderList(): + self.run() + else: + self.running = False + self["progress_list"].setIndex(0) + print "results:", self.results + print "resultsstatus:", self.resultsstatus + if self.log: + file = open("/media/hdd/diseqctester.log", "w") + self.setResultType(ResultParser.TYPE_ALL) + file.write(self.getTextualResult()) + file.close() + self.session.open(MessageBox, text=_("The results have been written to %s.") % "/media/hdd/diseqctester.log", type = MessageBox.TYPE_INFO) + + def go(self): + self.running = True + self["failed_counter"].setText("0") + self["succeeded_counter"].setText("0") + self["untestable_counter"].setText("0") + self.currentlyTestedIndex = self.getFirstIndex() + + self.clearProgressList() + self.addProgressListItem(self.currentlyTestedIndex) + + if self.fillTransponderList(): + self.run() + + def keyCancel(self): + self.close() + + def select(self): + print "selectedIndex:", self["progress_list"].getCurrent()[0] + if not self.running: + index = self["progress_list"].getCurrent()[0] + #self.setResultType(ResultParser.TYPE_BYORBPOS) + #self.setResultParameter(index[2]) + self.setResultType(ResultParser.TYPE_BYINDEX) + self.setResultParameter(index) + #self.setResultType(ResultParser.TYPE_ALL) + self.session.open(TextBox, self.getTextualResult()) + + def selectionChanged(self): + print "selection changed" + if len(self.list) > 0 and not self.running: + self["CmdText"].setText(_("Press OK to get further details for %s") % str(self["progress_list"].getCurrent()[1])) + +class DiseqcTesterTestTypeSelection(Screen, ConfigListScreen): + + def __init__(self, session, feid): + Screen.__init__(self, session) + # for the skin: first try MediaPlayerSettings, then Setup, this allows individual skinning + self.skinName = ["DiseqcTesterTestTypeSelection", "Setup" ] + self.setup_title = _("DiSEqC-tester settings") + self.onChangedEntry = [ ] + self.feid = feid + + self.list = [] + ConfigListScreen.__init__(self, self.list, session = self.session, on_change = self.changedEntry) + + self["actions"] = ActionMap(["SetupActions", "MenuActions"], + { + "cancel": self.keyCancel, + "save": self.keyOK, + "ok": self.keyOK, + "menu": self.closeRecursive, + }, -2) + + self["key_red"] = StaticText(_("Cancel")) + self["key_green"] = StaticText(_("OK")) + + self.createSetup() + self.onLayoutFinish.append(self.layoutFinished) + + def layoutFinished(self): + self.setTitle(self.setup_title) + + def createSetup(self): + self.testtype = ConfigSelection(choices={"quick": _("Quick"), "random": _("Random"), "complete": _("Complete")}, default = "quick") + self.testtypeEntry = getConfigListEntry(_("Test type"), self.testtype) + self.list.append(self.testtypeEntry) + + self.loopsfailed = ConfigSelection(choices={"-1": "Every known", "1": "1", "2": "2", "3": "3", "4": "4", "5": "5", "6": "6", "7": "7", "8": "8"}, default = "3") + self.loopsfailedEntry = getConfigListEntry(_("Stop testing plane after # failed transponders"), self.loopsfailed) + self.list.append(self.loopsfailedEntry) + + self.loopssuccessful = ConfigSelection(choices={"-1": "Every known", "1": "1", "2": "2", "3": "3", "4": "4", "5": "5", "6": "6", "7": "7", "8": "8"}, default = "1") + self.loopssuccessfulEntry = getConfigListEntry(_("Stop testing plane after # successful transponders"), self.loopssuccessful) + self.list.append(self.loopssuccessfulEntry) + + self.log = ConfigYesNo(False) + if harddiskmanager.HDDCount() > 0: + self.logEntry = getConfigListEntry(_("Log results to harddisk"), self.log) + self.list.append(self.logEntry) + + self["config"].list = self.list + self["config"].l.setList(self.list) + + def keyOK(self): + print self.testtype.getValue() + testtype = DiseqcTester.TEST_TYPE_QUICK + if self.testtype.getValue() == "quick": + testtype = DiseqcTester.TEST_TYPE_QUICK + elif self.testtype.getValue() == "random": + testtype = DiseqcTester.TEST_TYPE_RANDOM + elif self.testtype.getValue() == "complete": + testtype = DiseqcTester.TEST_TYPE_COMPLETE + self.session.open(DiseqcTester, feid = self.feid, test_type = testtype, loopsfailed = int(self.loopsfailed.value), loopssuccessful = int(self.loopssuccessful.value), log = self.log.value) + + def keyCancel(self): + self.close() + + # for summary: + def changedEntry(self): + for x in self.onChangedEntry: + x() + + def getCurrentEntry(self): + return self["config"].getCurrent()[0] + + def getCurrentValue(self): + return str(self["config"].getCurrent()[1].getText()) + + def createSummary(self): + from Screens.Setup import SetupSummary + return SetupSummary + +class DiseqcTesterNimSelection(NimSelection): + skin = """ + + + + {"template": [ + MultiContentEntryText(pos = (10, 5), size = (360, 30), flags = RT_HALIGN_LEFT, text = 1), # index 1 is the nim name, + MultiContentEntryText(pos = (50, 30), size = (320, 30), font = 1, flags = RT_HALIGN_LEFT, text = 2), # index 2 is a description of the nim settings, + ], + "fonts": [gFont("Regular", 20), gFont("Regular", 15)], + "itemHeight": 70 + } + + + """ + + def __init__(self, session, args = None): + NimSelection.__init__(self, session) + + def setResultClass(self): + #self.resultclass = DiseqcTester + self.resultclass = DiseqcTesterTestTypeSelection + + def showNim(self, nim): + nimConfig = nimmanager.getNimConfig(nim.slot) + if nim.isCompatible("DVB-S"): + if nimConfig.configMode.value in ("loopthrough", "equal", "satposdepends", "nothing"): + return False + if nimConfig.configMode.value == "simple": + if nimConfig.diseqcMode.value == "positioner": + return True + return True + return False + +def DiseqcTesterMain(session, **kwargs): + session.open(DiseqcTesterNimSelection) + +def autostart(reason, **kwargs): + resourcemanager.addResource("DiseqcTester", DiseqcTesterMain) + +def Plugins(**kwargs): + return [ PluginDescriptor(name="DiSEqC Tester", description=_("Test DiSEqC settings"), where = PluginDescriptor.WHERE_PLUGINMENU, needsRestart = False, fnc=DiseqcTesterMain), + PluginDescriptor(where = PluginDescriptor.WHERE_AUTOSTART, needsRestart = False, fnc = autostart)] diff --git a/lib/python/Plugins/SystemPlugins/FastScan/Makefile.am b/lib/python/Plugins/SystemPlugins/FastScan/Makefile.am new file mode 100644 index 0000000..bc63d3b --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/FastScan/Makefile.am @@ -0,0 +1,6 @@ +installdir = $(pkglibdir)/python/Plugins/SystemPlugins/FastScan + +install_PYTHON = \ + __init__.py \ + plugin.py + diff --git a/lib/python/Plugins/SystemPlugins/FastScan/__init__.py b/lib/python/Plugins/SystemPlugins/FastScan/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lib/python/Plugins/SystemPlugins/FastScan/plugin.py b/lib/python/Plugins/SystemPlugins/FastScan/plugin.py new file mode 100644 index 0000000..3155989 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/FastScan/plugin.py @@ -0,0 +1,345 @@ +# -*- coding: utf-8 -*- +from os import path as os_path, walk as os_walk, unlink as os_unlink + +from Plugins.Plugin import PluginDescriptor + +from Screens.Screen import Screen +from Screens.MessageBox import MessageBox +from Components.config import config, ConfigSelection, ConfigYesNo, getConfigListEntry, ConfigSubsection, ConfigText +from Components.ConfigList import ConfigListScreen +from Components.NimManager import nimmanager +from Components.Label import Label +from Components.Pixmap import Pixmap +from Components.ProgressBar import ProgressBar +from Components.ServiceList import refreshServiceList +from Components.ActionMap import ActionMap + +from enigma import eFastScan, eDVBFrontendParametersSatellite, eTimer + +config.misc.fastscan = ConfigSubsection() +config.misc.fastscan.last_configuration = ConfigText(default = "()") +config.misc.fastscan.auto = ConfigYesNo(default = True) + +class FastScanStatus(Screen): + skin = """ + + + + + """ + + def __init__(self, session, scanTuner=0, transponderParameters=None, scanPid=900, keepNumbers=False, keepSettings=False, providerName='Favorites'): + Screen.__init__(self, session) + self.scanPid = scanPid + self.scanTuner = scanTuner + self.transponderParameters = transponderParameters + self.keepNumbers = keepNumbers + self.keepSettings = keepSettings + self.providerName = providerName + self.isDone = False + + self.onClose.append(self.__onClose) + + self["frontend"] = Pixmap() + self["scan_progress"] = ProgressBar() + self["scan_state"] = Label(_("scan state")) + + if self.session.pipshown: + from Screens.InfoBar import InfoBar + InfoBar.instance and hasattr(InfoBar.instance, "showPiP") and InfoBar.instance.showPiP() + + self.prevservice = self.session.nav.getCurrentlyPlayingServiceReference() + self.session.nav.stopService() + + self["actions"] = ActionMap(["OkCancelActions"], + { + "ok": self.ok, + "cancel": self.cancel + }) + + self.onFirstExecBegin.append(self.doServiceScan) + + def __onClose(self): + self.scan.scanCompleted.get().remove(self.scanCompleted) + self.scan.scanProgress.get().remove(self.scanProgress) + del self.scan + + def doServiceScan(self): + self["scan_state"].setText(_('Scanning %s...') % (self.providerName)) + self["scan_progress"].setValue(0) + self.scan = eFastScan(self.scanPid, self.providerName, self.transponderParameters, self.keepNumbers, self.keepSettings) + self.scan.scanCompleted.get().append(self.scanCompleted) + self.scan.scanProgress.get().append(self.scanProgress) + fstfile = None + fntfile = None + for root, dirs, files in os_walk('/tmp/'): + for f in files: + if f.endswith('.bin'): + if '_FST' in f: + fstfile = os_path.join(root, f) + elif '_FNT' in f: + fntfile = os_path.join(root, f) + if fstfile and fntfile: + self.scan.startFile(fntfile, fstfile) + os_unlink(fstfile) + os_unlink(fntfile) + else: + self.scan.start(self.scanTuner) + + def scanProgress(self, progress): + self["scan_progress"].setValue(progress) + + def scanCompleted(self, result): + self.isDone = True + if result < 0: + self["scan_state"].setText(_('Scanning failed!')) + else: + self["scan_state"].setText(ngettext('List version %d, found %d channel', 'List version %d, found %d channels', result) % (self.scan.getVersion(), result)) + + def restoreService(self): + if self.prevservice: + self.session.nav.playService(self.prevservice) + + def ok(self): + if self.isDone: + self.cancel() + + def cancel(self): + if self.isDone: + refreshServiceList() + self.restoreService() + self.close() + +class FastScanScreen(ConfigListScreen, Screen): + skin = """ + + + + """ + + providers = [ + ('Canal Digitaal', (1, 900, True)), + ('TV Vlaanderen', (1, 910, True)), + ('TéléSAT', (0, 920, True)), + ('HD Austria', (0, 950, False)), + ('Skylink Czech Republic', (1, 30, False)), + ('Skylink Slovak Republic', (1, 31, False)), + ('AustriaSat Magyarország Eutelsat 9E', (2, 951, False)), + ('AustriaSat Magyarország Astra 3', (1, 951, False)), + ('TéléSAT Astra3', (1, 920, True)), + ('HD Austria Astra3', (1, 950, False)), + ('Canal Digitaal Astra 1', (0, 900, True)), + ('TV Vlaanderen Astra 1', (0, 910, True))] + + transponders = ((12515000, 22000000, eDVBFrontendParametersSatellite.FEC_5_6, 192, + eDVBFrontendParametersSatellite.Polarisation_Horizontal, eDVBFrontendParametersSatellite.Inversion_Unknown, + eDVBFrontendParametersSatellite.System_DVB_S, eDVBFrontendParametersSatellite.Modulation_QPSK, + eDVBFrontendParametersSatellite.RollOff_alpha_0_35, eDVBFrontendParametersSatellite.Pilot_Off), + (12070000, 27500000, eDVBFrontendParametersSatellite.FEC_3_4, 235, + eDVBFrontendParametersSatellite.Polarisation_Horizontal, eDVBFrontendParametersSatellite.Inversion_Unknown, + eDVBFrontendParametersSatellite.System_DVB_S, eDVBFrontendParametersSatellite.Modulation_QPSK, + eDVBFrontendParametersSatellite.RollOff_alpha_0_35, eDVBFrontendParametersSatellite.Pilot_Off), + (12074000, 27500000, eDVBFrontendParametersSatellite.FEC_3_4, 90, + eDVBFrontendParametersSatellite.Polarisation_Vertical, eDVBFrontendParametersSatellite.Inversion_Unknown, + eDVBFrontendParametersSatellite.System_DVB_S2, eDVBFrontendParametersSatellite.Modulation_8PSK, + eDVBFrontendParametersSatellite.RollOff_alpha_0_35, eDVBFrontendParametersSatellite.Pilot_On)) + + def __init__(self, session, nimList): + Screen.__init__(self, session) + + self["actions"] = ActionMap(["SetupActions", "MenuActions"], + { + "ok": self.keyGo, + "save": self.keySave, + "cancel": self.keyCancel, + "menu": self.closeRecursive, + }, -2) + + providerList = list(x[0] for x in self.providers) + + lastConfiguration = eval(config.misc.fastscan.last_configuration.value) + if not lastConfiguration or not tuple(x for x in self.providers if x[0] == lastConfiguration[1]): + lastConfiguration = (nimList[0][0], providerList[0], True, True, False) + + self.scan_nims = ConfigSelection(default = lastConfiguration[0], choices = nimList) + self.scan_provider = ConfigSelection(default = lastConfiguration[1], choices = providerList) + self.scan_hd = ConfigYesNo(default = lastConfiguration[2]) + self.scan_keepnumbering = ConfigYesNo(default = lastConfiguration[3]) + self.scan_keepsettings = ConfigYesNo(default = lastConfiguration[4]) + + self.list = [] + self.tunerEntry = getConfigListEntry(_("Tuner"), self.scan_nims) + self.list.append(self.tunerEntry) + + self.scanProvider = getConfigListEntry(_("Provider"), self.scan_provider) + self.list.append(self.scanProvider) + + self.scanHD = getConfigListEntry(_("HD list"), self.scan_hd) + self.list.append(self.scanHD) + + self.list.append(getConfigListEntry(_("Use fastscan channel numbering"), self.scan_keepnumbering)) + self.list.append(getConfigListEntry(_("Use fastscan channel names"), self.scan_keepsettings)) + self.list.append(getConfigListEntry(_("Enable auto fast scan"), config.misc.fastscan.auto)) + + ConfigListScreen.__init__(self, self.list) + self["config"].list = self.list + self["config"].l.setList(self.list) + + self.finished_cb = None + + self["introduction"] = Label(_("Select your provider, and press OK to start the scan")) + + def saveConfiguration(self): + config.misc.fastscan.last_configuration.value = `(self.scan_nims.value, self.scan_provider.value, self.scan_hd.value, self.scan_keepnumbering.value, self.scan_keepsettings.value)` + config.misc.fastscan.save() + + def keySave(self): + self.saveConfiguration() + self.close() + + def keyGo(self): + self.saveConfiguration() + self.startScan() + + def getTransponderParameters(self, number): + transponderParameters = eDVBFrontendParametersSatellite() + transponderParameters.frequency = self.transponders[number][0] + transponderParameters.symbol_rate = self.transponders[number][1] + transponderParameters.fec = self.transponders[number][2] + transponderParameters.orbital_position = self.transponders[number][3] + transponderParameters.polarisation = self.transponders[number][4] + transponderParameters.inversion = self.transponders[number][5] + transponderParameters.system = self.transponders[number][6] + transponderParameters.modulation = self.transponders[number][7] + transponderParameters.rolloff = self.transponders[number][8] + transponderParameters.pilot = self.transponders[number][9] + return transponderParameters + + def startScan(self): + parameters = tuple(x[1] for x in self.providers if x[0] == self.scan_provider.value)[0] + pid = parameters[1] + if self.scan_hd.value and parameters[2]: + pid += 1 + if self.scan_nims.value: + self.session.open(FastScanStatus, scanTuner = int(self.scan_nims.value), + transponderParameters = self.getTransponderParameters(parameters[0]), + scanPid = pid, keepNumbers = self.scan_keepnumbering.value, keepSettings = self.scan_keepsettings.value, + providerName = self.scan_provider.getText()) + + def keyCancel(self): + self.close() + +class FastScanAutoScreen(FastScanScreen): + + def __init__(self, session, lastConfiguration): + print "[AutoFastScan] start" + Screen.__init__(self, session) + self.skinName="Standby" + + self["actions"] = ActionMap( [ "StandbyActions" ], + { + "power": self.Power, + "discrete_on": self.Power + }, -1) + + self.onClose.append(self.__onClose) + + parameters = tuple(x[1] for x in self.providers if x[0] == lastConfiguration[1]) + if parameters: + parameters = parameters[0] + pid = parameters[1] + if lastConfiguration[2] and parameters[2]: + pid += 1 + self.scan = eFastScan(pid, lastConfiguration[1], self.getTransponderParameters(parameters[0]), lastConfiguration[3], lastConfiguration[4]) + self.scan.scanCompleted.get().append(self.scanCompleted) + self.scan.start(int(lastConfiguration[0])) + else: + self.scan = None + self.close(True) + + def __onClose(self): + if self.scan: + self.scan.scanCompleted.get().remove(self.scanCompleted) + del self.scan + + def scanCompleted(self, result): + print "[AutoFastScan] completed result = ", result + refreshServiceList() + self.close(result>0) + + def Power(self): + from Screens.Standby import inStandby + inStandby.Power() + print "[AutoFastScan] aborted due to power button pressed" + self.close(True) + + def createSummary(self): + from Screens.Standby import StandbySummary + return StandbySummary + +def FastScanMain(session, **kwargs): + if session.nav.RecordTimer.isRecording(): + session.open(MessageBox, _("A recording is currently running. Please stop the recording before trying to scan."), MessageBox.TYPE_ERROR) + else: + nimList = [] + # collect all nims which are *not* set to "nothing" + for n in nimmanager.nim_slots: + if not n.isCompatible("DVB-S"): + continue + if n.config_mode == "nothing": + continue + if n.config_mode in ("loopthrough", "satposdepends"): + root_id = nimmanager.sec.getRoot(n.slot_id, int(n.config.connectedTo.value)) + if n.type == nimmanager.nim_slots[root_id].type: # check if connected from a DVB-S to DVB-S2 Nim or vice versa + continue + nimList.append((str(n.slot), n.friendly_full_description)) + if nimList: + session.open(FastScanScreen, nimList) + else: + session.open(MessageBox, _("No suitable sat tuner found!"), MessageBox.TYPE_ERROR) + +Session = None +FastScanAutoStartTimer = eTimer() + +def restartScanAutoStartTimer(reply=False): + if not reply: + print "[AutoFastScan] Scan was not succesfully retry in one hour" + FastScanAutoStartTimer.startLongTimer(3600) + else: + FastScanAutoStartTimer.startLongTimer(86400) + +def FastScanAuto(): + lastConfiguration = eval(config.misc.fastscan.last_configuration.value) + if not lastConfiguration or Session.nav.RecordTimer.isRecording(): + restartScanAutoStartTimer() + else: + Session.openWithCallback(restartScanAutoStartTimer, FastScanAutoScreen, lastConfiguration) + +FastScanAutoStartTimer.callback.append(FastScanAuto) + +def leaveStandby(): + FastScanAutoStartTimer.stop() + +def standbyCountChanged(value): + if config.misc.fastscan.auto.value: + from Screens.Standby import inStandby + inStandby.onClose.append(leaveStandby) + FastScanAutoStartTimer.startLongTimer(90) + +def startSession(session, **kwargs): + global Session + Session = session + config.misc.standbyCounter.addNotifier(standbyCountChanged, initial_call=False) + +def FastScanStart(menuid, **kwargs): + if menuid == "scan": + return [(_("Fast Scan"), FastScanMain, "fastscan", None)] + else: + return [] + +def Plugins(**kwargs): + if (nimmanager.hasNimType("DVB-S")): + return [PluginDescriptor(name=_("Fast Scan"), description="Scan Dutch/Belgian sat provider", where = PluginDescriptor.WHERE_MENU, fnc=FastScanStart), + PluginDescriptor(where=[PluginDescriptor.WHERE_SESSIONSTART], fnc=startSession)] + else: + return [] diff --git a/lib/python/Plugins/SystemPlugins/FrontprocessorUpgrade/Makefile.am b/lib/python/Plugins/SystemPlugins/FrontprocessorUpgrade/Makefile.am new file mode 100644 index 0000000..78b2843 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/FrontprocessorUpgrade/Makefile.am @@ -0,0 +1,8 @@ +installdir = $(pkglibdir)/python/Plugins/SystemPlugins/FrontprocessorUpgrade + +SUBDIRS = meta + +install_PYTHON = \ + __init__.py \ + plugin.py + diff --git a/lib/python/Plugins/SystemPlugins/FrontprocessorUpgrade/__init__.py b/lib/python/Plugins/SystemPlugins/FrontprocessorUpgrade/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lib/python/Plugins/SystemPlugins/FrontprocessorUpgrade/meta/Makefile.am b/lib/python/Plugins/SystemPlugins/FrontprocessorUpgrade/meta/Makefile.am new file mode 100644 index 0000000..5ab313a --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/FrontprocessorUpgrade/meta/Makefile.am @@ -0,0 +1,3 @@ +installdir = $(datadir)/meta + +dist_install_DATA = plugin_frontprocessorupgrade.xml diff --git a/lib/python/Plugins/SystemPlugins/FrontprocessorUpgrade/meta/plugin_frontprocessorupgrade.xml b/lib/python/Plugins/SystemPlugins/FrontprocessorUpgrade/meta/plugin_frontprocessorupgrade.xml new file mode 100644 index 0000000..7b6fdca --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/FrontprocessorUpgrade/meta/plugin_frontprocessorupgrade.xml @@ -0,0 +1,20 @@ + + + + + + + Dream Multimedia + FrontprocessorUpgrade + enigma2-plugin-systemplugins-frontprocessorupgrade + internal + Internal firmware updater + This system tool is internally used to program the hardware with firmware updates. + + + + + + + + diff --git a/lib/python/Plugins/SystemPlugins/FrontprocessorUpgrade/plugin.py b/lib/python/Plugins/SystemPlugins/FrontprocessorUpgrade/plugin.py new file mode 100644 index 0000000..eec53e3 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/FrontprocessorUpgrade/plugin.py @@ -0,0 +1,87 @@ +from Screens.Screen import Screen +from Components.ActionMap import ActionMap +from Components.Label import Label +from Plugins.Plugin import PluginDescriptor + +def getUpgradeVersion(): + import os + try: + r = os.popen("fpupgrade --version").read() + except IOError: + return None + if r[:16] != "FP update tool v": + return None + else: + return int(r[16:17]) + +class FPUpgrade(Screen): + skin = """ + + + + + + + """ + def __init__(self, session): + self.skin = FPUpgrade.skin + Screen.__init__(self, session) + + from Tools.StbHardware import getFPVersion + version = str(getFPVersion() or "N/A") + newversion = str(getUpgradeVersion() or "N/A") + + self["text"] = Label(_("Your frontprocessor firmware must be upgraded.\nPress OK to start upgrade.")) + self["oldversion_label"] = Label(_("Current version:")) + self["newversion_label"] = Label(_("New version:")) + + self["oldversion"] = Label(version) + self["newversion"] = Label(newversion) + + self["actions"] = ActionMap(["OkCancelActions"], + { + "ok": self.ok, + "cancel": self.close, + }) + + def ok(self): + self.close(4) + +class SystemMessage(Screen): + skin = """ + + + + """ + def __init__(self, session, message): + from Components.Sources.StaticText import StaticText + + Screen.__init__(self, session) + + self["text"] = StaticText(message) + + self["actions"] = ActionMap(["OkCancelActions"], + { + "cancel": self.ok, + }) + + def ok(self): + self.close() + +def Plugins(**kwargs): + from Tools.StbHardware import getFPVersion + from Screens.MessageBox import MessageBox + + version = getFPVersion() + newversion = getUpgradeVersion() or 0 + list = [] + if version is not None and version < newversion: + list.append(PluginDescriptor(name="FP Upgrade", where = PluginDescriptor.WHERE_WIZARD, needsRestart = True, fnc=(8, FPUpgrade))) + + try: + msg = open("/proc/stb/message").read() + list.append(PluginDescriptor(name="System Message Check", where = PluginDescriptor.WHERE_WIZARD, needsRestart = True, fnc=(9, SystemMessage, msg))) + except: + pass + + return list diff --git a/lib/python/Plugins/SystemPlugins/HdmiCEC/Makefile.am b/lib/python/Plugins/SystemPlugins/HdmiCEC/Makefile.am new file mode 100644 index 0000000..81e44ce --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/HdmiCEC/Makefile.am @@ -0,0 +1,5 @@ +installdir = $(pkglibdir)/python/Plugins/SystemPlugins/HdmiCEC + +install_PYTHON = \ + __init__.py \ + plugin.py diff --git a/lib/python/Plugins/SystemPlugins/HdmiCEC/__init__.py b/lib/python/Plugins/SystemPlugins/HdmiCEC/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lib/python/Plugins/SystemPlugins/HdmiCEC/plugin.py b/lib/python/Plugins/SystemPlugins/HdmiCEC/plugin.py new file mode 100644 index 0000000..e5996cb --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/HdmiCEC/plugin.py @@ -0,0 +1,118 @@ +from Screens.Screen import Screen +from Components.ConfigList import ConfigListScreen +from Components.config import config, getConfigListEntry +from Components.Sources.StaticText import StaticText + +class HdmiCECSetupScreen(Screen, ConfigListScreen): + skin = """ + + + + + + + + + + + + + """ + + def __init__(self, session): + self.skin = HdmiCECSetupScreen.skin + Screen.__init__(self, session) + + from Components.ActionMap import ActionMap + from Components.Button import Button + + self["key_red"] = StaticText(_("Cancel")) + self["key_green"] = StaticText(_("OK")) + self["key_yellow"] = StaticText(_("Set fixed")) + self["key_blue"] = StaticText(_("Clear fixed")) + self["current_address"] = StaticText() + self["fixed_address"] = StaticText() + + self["actions"] = ActionMap(["SetupActions", "ColorActions", "MenuActions"], + { + "ok": self.keyGo, + "save": self.keyGo, + "cancel": self.keyCancel, + "green": self.keyGo, + "red": self.keyCancel, + "yellow": self.setFixedAddress, + "blue": self.clearFixedAddress, + "menu": self.closeRecursive, + }, -2) + + self.list = [] + ConfigListScreen.__init__(self, self.list, session = self.session) + + self.list.append(getConfigListEntry(_("Enabled"), config.hdmicec.enabled)) + self.list.append(getConfigListEntry(_("Put TV in standby"), config.hdmicec.control_tv_standby)) + self.list.append(getConfigListEntry(_("Wakeup TV from standby"), config.hdmicec.control_tv_wakeup)) + self.list.append(getConfigListEntry(_("Regard deep standby as standby"), config.hdmicec.handle_deepstandby_events)) + self.list.append(getConfigListEntry(_("Switch TV to correct input"), config.hdmicec.report_active_source)) + self.list.append(getConfigListEntry(_("Use TV remote control"), config.hdmicec.report_active_menu)) + self.list.append(getConfigListEntry(_("Handle standby from TV"), config.hdmicec.handle_tv_standby)) + self.list.append(getConfigListEntry(_("Handle wakeup from TV"), config.hdmicec.handle_tv_wakeup)) + self.list.append(getConfigListEntry(_("Wakeup signal from TV"), config.hdmicec.tv_wakeup_detection)) + self.list.append(getConfigListEntry(_("Forward volume keys"), config.hdmicec.volume_forwarding)) + self.list.append(getConfigListEntry(_("Put receiver in standby"), config.hdmicec.control_receiver_standby)) + self.list.append(getConfigListEntry(_("Wakeup receiver from standby"), config.hdmicec.control_receiver_wakeup)) + self.list.append(getConfigListEntry(_("Minimum send interval"), config.hdmicec.minimum_send_interval)) + self["config"].list = self.list + self["config"].l.setList(self.list) + + self.updateAddress() + + def keyLeft(self): + ConfigListScreen.keyLeft(self) + + def keyRight(self): + ConfigListScreen.keyRight(self) + + def keyGo(self): + for x in self["config"].list: + x[1].save() + self.close() + + def keyCancel(self): + for x in self["config"].list: + x[1].cancel() + self.close() + + def setFixedAddress(self): + import Components.HdmiCec + Components.HdmiCec.hdmi_cec.setFixedPhysicalAddress(Components.HdmiCec.hdmi_cec.getPhysicalAddress()) + self.updateAddress() + + def clearFixedAddress(self): + import Components.HdmiCec + Components.HdmiCec.hdmi_cec.setFixedPhysicalAddress("0.0.0.0") + self.updateAddress() + + def updateAddress(self): + import Components.HdmiCec + self["current_address"].setText(_("Current CEC address") + ": " + Components.HdmiCec.hdmi_cec.getPhysicalAddress()) + if config.hdmicec.fixed_physical_address.value == "0.0.0.0": + fixedaddresslabel = "" + else: + fixedaddresslabel = _("Using fixed address") + ": " + config.hdmicec.fixed_physical_address.value + self["fixed_address"].setText(fixedaddresslabel) + +def main(session, **kwargs): + session.open(HdmiCECSetupScreen) + +def startSetup(menuid): + if menuid == "system": + return [(_("HDMI-CEC setup"), main, "hdmi_cec_setup", 0)] + return [] + +def Plugins(**kwargs): + from os import path + if path.exists("/dev/hdmi_cec") or path.exists("/dev/misc/hdmi_cec0"): + import Components.HdmiCec + from Plugins.Plugin import PluginDescriptor + return [PluginDescriptor(where = PluginDescriptor.WHERE_MENU, fnc = startSetup)] + return [] diff --git a/lib/python/Plugins/SystemPlugins/Hotplug/Makefile.am b/lib/python/Plugins/SystemPlugins/Hotplug/Makefile.am new file mode 100644 index 0000000..ab47ec5 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/Hotplug/Makefile.am @@ -0,0 +1,8 @@ +installdir = $(pkglibdir)/python/Plugins/SystemPlugins/Hotplug + +SUBDIRS = meta + +install_PYTHON = \ + __init__.py \ + plugin.py + diff --git a/lib/python/Plugins/SystemPlugins/Hotplug/__init__.py b/lib/python/Plugins/SystemPlugins/Hotplug/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lib/python/Plugins/SystemPlugins/Hotplug/meta/Makefile.am b/lib/python/Plugins/SystemPlugins/Hotplug/meta/Makefile.am new file mode 100644 index 0000000..cf5608b --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/Hotplug/meta/Makefile.am @@ -0,0 +1,3 @@ +installdir = $(datadir)/meta + +dist_install_DATA = plugin_hotplug.xml diff --git a/lib/python/Plugins/SystemPlugins/Hotplug/meta/plugin_hotplug.xml b/lib/python/Plugins/SystemPlugins/Hotplug/meta/plugin_hotplug.xml new file mode 100644 index 0000000..610dfee --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/Hotplug/meta/plugin_hotplug.xml @@ -0,0 +1,18 @@ + + + + + + Dream Multimedia + Hotplug + enigma2-plugin-systemplugins-hotplug + Hotplugging for removeable devices + The Hotplug plugin notifies your system of newly added or removed devices. + + + + + + + + diff --git a/lib/python/Plugins/SystemPlugins/Hotplug/plugin.py b/lib/python/Plugins/SystemPlugins/Hotplug/plugin.py new file mode 100644 index 0000000..97ba058 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/Hotplug/plugin.py @@ -0,0 +1,67 @@ +from Plugins.Plugin import PluginDescriptor +from Components.Harddisk import harddiskmanager +from twisted.internet.protocol import Protocol, Factory + +hotplugNotifier = [] + +def processHotplugData(self, v): + print "hotplug:", v + action = v.get("ACTION") + device = v.get("DEVPATH") + physdevpath = v.get("PHYSDEVPATH") + media_state = v.get("X_E2_MEDIA_STATUS") + + dev = device.split('/')[-1] + + if action == "add": + error, blacklisted, removable, is_cdrom, partitions, medium_found = harddiskmanager.addHotplugPartition(dev, physdevpath) + elif action == "remove": + harddiskmanager.removeHotplugPartition(dev) + elif media_state is not None: + if media_state == '1': + harddiskmanager.removeHotplugPartition(dev) + harddiskmanager.addHotplugPartition(dev, physdevpath) + elif media_state == '0': + harddiskmanager.removeHotplugPartition(dev) + + for callback in hotplugNotifier: + try: + callback(dev, action or media_state) + except AttributeError: + hotplugNotifier.remove(callback) + +class Hotplug(Protocol): + def connectionMade(self): + print "HOTPLUG connection!" + self.received = "" + + def dataReceived(self, data): + print "hotplug:", data + self.received += data + print "complete", self.received + + def connectionLost(self, reason): + print "HOTPLUG connection lost!" + data = self.received.split('\0')[:-1] + v = {} + for x in data: + i = x.find('=') + var, val = x[:i], x[i+1:] + v[var] = val + processHotplugData(self, v) + +def autostart(reason, **kwargs): + if reason == 0: + print "starting hotplug handler" + from twisted.internet import reactor + import os + try: + os.remove("/tmp/hotplug.socket") + except OSError: + pass + factory = Factory() + factory.protocol = Hotplug + reactor.listenUNIX("/tmp/hotplug.socket", factory) + +def Plugins(**kwargs): + return PluginDescriptor(name = "Hotplug", description = "listens to hotplug events", where = PluginDescriptor.WHERE_AUTOSTART, needsRestart = True, fnc = autostart) diff --git a/lib/python/Plugins/SystemPlugins/Makefile.am b/lib/python/Plugins/SystemPlugins/Makefile.am new file mode 100644 index 0000000..888a480 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/Makefile.am @@ -0,0 +1,18 @@ +installdir = $(pkglibdir)/python/Plugins/SystemPlugins + +SUBDIRS = SoftwareManager PositionerSetup Satfinder \ + SkinSelector SatelliteEquipmentControl Videomode VideoTune Hotplug \ + DefaultServicesScanner DiseqcTester CommonInterfaceAssignment \ + CableScan FastScan OSDPositionSetup OSD3DSetup HdmiCEC VideoClippingSetup \ + VideoEnhancement WirelessLan NetworkWizard + +if HAVE_TEMPFANCONTROL +SUBDIRS += TempFanControl +endif + +if DREAMBOX +SUBDIRS += FrontprocessorUpgrade NFIFlash +endif + +install_PYTHON = \ + __init__.py diff --git a/lib/python/Plugins/SystemPlugins/NFIFlash/Makefile.am b/lib/python/Plugins/SystemPlugins/NFIFlash/Makefile.am new file mode 100644 index 0000000..aa2c56a --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/NFIFlash/Makefile.am @@ -0,0 +1,9 @@ +installdir = $(pkglibdir)/python/Plugins/SystemPlugins/NFIFlash + +SUBDIRS = meta + +install_PYTHON = __init__.py plugin.py downloader.py flasher.py + +#install_SCRIPTS = mywritenand dm8000_writenand + +dist_install_DATA = flash.png diff --git a/lib/python/Plugins/SystemPlugins/NFIFlash/__init__.py b/lib/python/Plugins/SystemPlugins/NFIFlash/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lib/python/Plugins/SystemPlugins/NFIFlash/downloader.py b/lib/python/Plugins/SystemPlugins/NFIFlash/downloader.py new file mode 100644 index 0000000..74b65b0 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/NFIFlash/downloader.py @@ -0,0 +1,814 @@ +# -*- coding: utf-8 -*- +from Plugins.SystemPlugins.Hotplug.plugin import hotplugNotifier +from Screens.Screen import Screen +from Screens.MessageBox import MessageBox +from Screens.ChoiceBox import ChoiceBox +from Screens.HelpMenu import HelpableScreen +from Screens.TaskView import JobView +from Components.About import about +from Components.ActionMap import ActionMap +from Components.Sources.StaticText import StaticText +from Components.Sources.List import List +from Components.Label import Label +from Components.FileList import FileList +from Components.MenuList import MenuList +from Components.MultiContent import MultiContentEntryText +from Components.ScrollLabel import ScrollLabel +from Components.Harddisk import harddiskmanager +from Components.Task import Task, Job, job_manager, Condition +from Tools.Directories import fileExists, isMount, resolveFilename, SCOPE_HDD, SCOPE_MEDIA +from Tools.HardwareInfo import HardwareInfo +from Tools.Downloader import downloadWithProgress +from enigma import eConsoleAppContainer, gFont, RT_HALIGN_LEFT, RT_HALIGN_CENTER, RT_VALIGN_CENTER, RT_WRAP, eTimer +from os import system, path, access, stat, remove, W_OK, R_OK +from twisted.web import client +from twisted.internet import reactor, defer +from twisted.python import failure +import re + +class ImageDownloadJob(Job): + def __init__(self, url, filename, device=None, mountpoint="/"): + Job.__init__(self, _("Download .NFI-files for USB-flasher")) + if device: + if isMount(mountpoint): + UmountTask(self, mountpoint) + MountTask(self, device, mountpoint) + ImageDownloadTask(self, url, mountpoint+filename) + ImageDownloadTask(self, url[:-4]+".nfo", mountpoint+filename[:-4]+".nfo") + #if device: + #UmountTask(self, mountpoint) + + def retry(self): + self.tasks[0].args += self.tasks[0].retryargs + Job.retry(self) + +class MountTask(Task): + def __init__(self, job, device, mountpoint): + Task.__init__(self, job, ("mount")) + self.setTool("mount") + options = "rw,sync" + self.mountpoint = mountpoint + self.args += [ device, mountpoint, "-o"+options ] + self.weighting = 1 + + def processOutput(self, data): + print "[MountTask] output:", data + +class UmountTask(Task): + def __init__(self, job, mountpoint): + Task.__init__(self, job, ("mount")) + self.setTool("umount") + self.args += [mountpoint] + self.weighting = 1 + +class DownloaderPostcondition(Condition): + def check(self, task): + return task.returncode == 0 + + def getErrorMessage(self, task): + return self.error_message + +class ImageDownloadTask(Task): + def __init__(self, job, url, path): + Task.__init__(self, job, _("Downloading")) + self.postconditions.append(DownloaderPostcondition()) + self.job = job + self.url = url + self.path = path + self.error_message = "" + self.last_recvbytes = 0 + self.error_message = None + self.download = None + self.aborted = False + + def run(self, callback): + self.callback = callback + self.download = downloadWithProgress(self.url,self.path) + self.download.addProgress(self.download_progress) + self.download.start().addCallback(self.download_finished).addErrback(self.download_failed) + print "[ImageDownloadTask] downloading", self.url, "to", self.path + + def abort(self): + print "[ImageDownloadTask] aborting", self.url + if self.download: + self.download.stop() + self.aborted = True + + def download_progress(self, recvbytes, totalbytes): + #print "[update_progress] recvbytes=%d, totalbytes=%d" % (recvbytes, totalbytes) + if ( recvbytes - self.last_recvbytes ) > 10000: # anti-flicker + self.progress = int(100*(float(recvbytes)/float(totalbytes))) + self.name = _("Downloading") + ' ' + "%d of %d kBytes" % (recvbytes/1024, totalbytes/1024) + self.last_recvbytes = recvbytes + + def download_failed(self, failure_instance=None, error_message=""): + self.error_message = error_message + if error_message == "" and failure_instance is not None: + self.error_message = failure_instance.getErrorMessage() + Task.processFinished(self, 1) + + def download_finished(self, string=""): + if self.aborted: + self.finish(aborted = True) + else: + Task.processFinished(self, 0) + +class StickWizardJob(Job): + def __init__(self, path): + Job.__init__(self, _("USB stick wizard")) + self.path = path + self.device = path + while self.device[-1:] == "/" or self.device[-1:].isdigit(): + self.device = self.device[:-1] + + box = HardwareInfo().get_device_name() + url = "http://www.dreamboxupdate.com/download/opendreambox/dreambox-nfiflasher-%s.tar.bz2" % box + self.downloadfilename = "/tmp/dreambox-nfiflasher-%s.tar.bz2" % box + self.imagefilename = "/tmp/nfiflash_%s.img" % box + #UmountTask(self, device) + PartitionTask(self) + ImageDownloadTask(self, url, self.downloadfilename) + UnpackTask(self) + CopyTask(self) + +class PartitionTaskPostcondition(Condition): + def check(self, task): + return task.returncode == 0 + + def getErrorMessage(self, task): + return { + task.ERROR_BLKRRPART: ("Device or resource busy"), + task.ERROR_UNKNOWN: (task.errormsg) + }[task.error] + +class PartitionTask(Task): + ERROR_UNKNOWN, ERROR_BLKRRPART = range(2) + def __init__(self, job): + Task.__init__(self, job, ("partitioning")) + self.postconditions.append(PartitionTaskPostcondition()) + self.job = job + self.setTool("sfdisk") + self.args += [self.job.device] + self.weighting = 10 + self.initial_input = "0 - 0x6 *\n;\n;\n;\ny" + self.errormsg = "" + + def run(self, callback): + Task.run(self, callback) + + def processOutput(self, data): + print "[PartitionTask] output:", data + if data.startswith("BLKRRPART:"): + self.error = self.ERROR_BLKRRPART + else: + self.error = self.ERROR_UNKNOWN + self.errormsg = data + +class UnpackTask(Task): + def __init__(self, job): + Task.__init__(self, job, ("Unpacking USB flasher image...")) + self.job = job + self.setTool("tar") + self.args += ["-xjvf", self.job.downloadfilename] + self.weighting = 80 + self.end = 80 + self.delayTimer = eTimer() + self.delayTimer.callback.append(self.progress_increment) + + def run(self, callback): + Task.run(self, callback) + self.delayTimer.start(950, False) + + def progress_increment(self): + self.progress += 1 + + def processOutput(self, data): + print "[UnpackTask] output: \'%s\'" % data + self.job.imagefilename = data + + def afterRun(self): + self.delayTimer.callback.remove(self.progress_increment) + +class CopyTask(Task): + def __init__(self, job): + Task.__init__(self, job, ("Copying USB flasher boot image to stick...")) + self.job = job + self.setTool("dd") + self.args += ["if=%s" % self.job.imagefilename, "of=%s1" % self.job.device] + self.weighting = 20 + self.end = 20 + self.delayTimer = eTimer() + self.delayTimer.callback.append(self.progress_increment) + + def run(self, callback): + Task.run(self, callback) + self.delayTimer.start(100, False) + + def progress_increment(self): + self.progress += 1 + + def processOutput(self, data): + print "[CopyTask] output:", data + + def afterRun(self): + self.delayTimer.callback.remove(self.progress_increment) + +class NFOViewer(Screen): + skin = """ + + + """ + + def __init__(self, session, nfo): + Screen.__init__(self, session) + self["changelog"] = ScrollLabel(nfo) + + self["ViewerActions"] = ActionMap(["SetupActions", "ColorActions", "DirectionActions"], + { + "green": self.exit, + "red": self.exit, + "ok": self.exit, + "cancel": self.exit, + "down": self.pageDown, + "up": self.pageUp + }) + def pageUp(self): + self["changelog"].pageUp() + + def pageDown(self): + self["changelog"].pageDown() + + def exit(self): + self.close(False) + +class feedDownloader: + def __init__(self, feed_base, box, OE_vers): + print "[feedDownloader::init] feed_base=%s, box=%s" % (feed_base, box) + self.feed_base = feed_base + self.OE_vers = OE_vers + self.box = box + + def getList(self, callback, errback): + self.urlbase = "%s/%s/%s/images/" % (self.feed_base, self.OE_vers, self.box) + print "[getList]", self.urlbase + self.callback = callback + self.errback = errback + client.getPage(self.urlbase).addCallback(self.feed_finished).addErrback(self.feed_failed) + + def feed_failed(self, failure_instance): + print "[feed_failed]", str(failure_instance) + self.errback(failure_instance.getErrorMessage()) + + def feed_finished(self, feedhtml): + print "[feed_finished]" + fileresultmask = re.compile(".*?)[\'\"]>(?P.*?.nfi)", re.DOTALL) + searchresults = fileresultmask.finditer(feedhtml) + fileresultlist = [] + if searchresults: + for x in searchresults: + url = x.group("url") + if url[0:7] != "http://": + url = self.urlbase + x.group("url") + name = x.group("name") + entry = (name, url) + fileresultlist.append(entry) + self.callback(fileresultlist, self.OE_vers) + +class DeviceBrowser(Screen, HelpableScreen): + skin = """ + + + + + + + + """ + + def __init__(self, session, startdir, message="", showDirectories = True, showFiles = True, showMountpoints = True, matchingPattern = "", useServiceRef = False, inhibitDirs = False, inhibitMounts = False, isTop = False, enableWrapAround = False, additionalExtensions = None): + Screen.__init__(self, session) + + HelpableScreen.__init__(self) + + self["key_red"] = StaticText(_("Cancel")) + self["key_green"] = StaticText() + self["message"] = StaticText(message) + + self.filelist = FileList(startdir, showDirectories = showDirectories, showFiles = showFiles, showMountpoints = showMountpoints, matchingPattern = matchingPattern, useServiceRef = useServiceRef, inhibitDirs = inhibitDirs, inhibitMounts = inhibitMounts, isTop = isTop, enableWrapAround = enableWrapAround, additionalExtensions = additionalExtensions) + self["filelist"] = self.filelist + + self["FilelistActions"] = ActionMap(["SetupActions", "ColorActions"], + { + "green": self.use, + "red": self.exit, + "ok": self.ok, + "cancel": self.exit + }) + + hotplugNotifier.append(self.hotplugCB) + self.onShown.append(self.updateButton) + self.onClose.append(self.removeHotplug) + + def hotplugCB(self, dev, action): + print "[hotplugCB]", dev, action + self.updateButton() + + def updateButton(self): + + if self["filelist"].getFilename() or self["filelist"].getCurrentDirectory(): + self["key_green"].text = _("Use") + else: + self["key_green"].text = "" + + def removeHotplug(self): + print "[removeHotplug]" + hotplugNotifier.remove(self.hotplugCB) + + def ok(self): + if self.filelist.canDescent(): + if self["filelist"].showMountpoints == True and self["filelist"].showDirectories == False: + self.use() + else: + self.filelist.descent() + + def use(self): + print "[use]", self["filelist"].getCurrentDirectory(), self["filelist"].getFilename() + if self["filelist"].getCurrentDirectory() is not None: + if self.filelist.canDescent() and self["filelist"].getFilename() and len(self["filelist"].getFilename()) > len(self["filelist"].getCurrentDirectory()): + self.filelist.descent() + self.close(self["filelist"].getCurrentDirectory()) + elif self["filelist"].getFilename(): + self.close(self["filelist"].getFilename()) + + def exit(self): + self.close(False) + +(ALLIMAGES, RELEASE, EXPERIMENTAL, STICK_WIZARD, START) = range(5) + +class NFIDownload(Screen): + skin = """ + + + + + + + + + + + + + {"templates": + {"default": (25, [ + MultiContentEntryText(pos = (2, 2), size = (330, 24), flags = RT_HALIGN_LEFT, text = 1), # index 0 is the MenuText, + ], True, "showOnDemand") + }, + "fonts": [gFont("Regular", 22)], + "itemHeight": 25 + } + + + + + {"templates": + {"default": (300, [ + MultiContentEntryText(pos = (2, 2), size = (240, 300), flags = RT_HALIGN_CENTER|RT_VALIGN_CENTER|RT_WRAP, text = 2), # index 2 is the Description, + ], False, "showNever") + }, + "fonts": [gFont("Regular", 22)], + "itemHeight": 300 + } + + + + """ + + def __init__(self, session, destdir=None): + Screen.__init__(self, session) + #self.skin_path = plugin_path + #self.menu = args + + self.box = HardwareInfo().get_device_name() + self.feed_base = "http://www.dreamboxupdate.com/opendreambox" #/1.5/%s/images/" % self.box + self.usbmountpoint = resolveFilename(SCOPE_MEDIA)+"usb/" + + self.menulist = [] + + self["menu"] = List(self.menulist) + self["key_red"] = StaticText(_("Close")) + self["key_green"] = StaticText() + self["key_yellow"] = StaticText() + self["key_blue"] = StaticText() + + self["status"] = StaticText(_("Please wait... Loading list...")) + + self["shortcuts"] = ActionMap(["OkCancelActions", "ColorActions", "ShortcutActions", "DirectionActions"], + { + "ok": self.keyOk, + "green": self.keyOk, + "red": self.keyRed, + "blue": self.keyBlue, + "up": self.keyUp, + "upRepeated": self.keyUp, + "downRepeated": self.keyDown, + "down": self.keyDown, + "cancel": self.close, + }, -1) + self.onShown.append(self.go) + self.feedlists = [[],[],[]] + self.branch = START + self.container = eConsoleAppContainer() + self.container.dataAvail.append(self.tool_avail) + self.taskstring = "" + self.image_idx = 0 + self.nfofilename = "" + self.nfo = "" + self.target_dir = None + + def tool_avail(self, string): + print "[tool_avail]" + string + self.taskstring += string + + def go(self): + self.onShown.remove(self.go) + self.umountCallback = self.getMD5 + self.umount() + + def getMD5(self): + url = "http://www.dreamboxupdate.com/download/opendreambox/dreambox-nfiflasher-%s-md5sums" % self.box + client.getPage(url).addCallback(self.md5sums_finished).addErrback(self.feed_failed) + + def md5sums_finished(self, data): + print "[md5sums_finished]", data + self.stickimage_md5 = data + self.checkUSBStick() + + def keyRed(self): + if self.branch == START: + self.close() + else: + self.branch = START + self["menu"].setList(self.menulist) + #elif self.branch == ALLIMAGES or self.branch == STICK_WIZARD: + + def keyBlue(self): + if self.nfo != "": + self.session.open(NFOViewer, self.nfo) + + def keyOk(self): + print "[keyOk]", self["menu"].getCurrent() + current = self["menu"].getCurrent() + if current: + if self.branch == START: + currentEntry = current[0] + if currentEntry == RELEASE: + self.image_idx = 0 + self.branch = RELEASE + self.askDestination() + elif currentEntry == EXPERIMENTAL: + self.image_idx = 0 + self.branch = EXPERIMENTAL + self.askDestination() + elif currentEntry == ALLIMAGES: + self.branch = ALLIMAGES + self.listImages() + elif currentEntry == STICK_WIZARD: + self.askStartWizard() + elif self.branch == ALLIMAGES: + self.image_idx = self["menu"].getIndex() + self.askDestination() + self.updateButtons() + + def keyUp(self): + self["menu"].selectPrevious() + self.updateButtons() + + def keyDown(self): + self["menu"].selectNext() + self.updateButtons() + + def updateButtons(self): + current = self["menu"].getCurrent() + if current: + if self.branch == START: + self["key_red"].text = _("Close") + currentEntry = current[0] + if currentEntry in (RELEASE, EXPERIMENTAL): + self.nfo_download(currentEntry, 0) + self["key_green"].text = _("Download") + else: + self.nfofilename = "" + self.nfo = "" + self["key_blue"].text = "" + self["key_green"].text = _("continue") + + elif self.branch == ALLIMAGES: + self["key_red"].text = _("Back") + self["key_green"].text = _("Download") + self.nfo_download(ALLIMAGES, self["menu"].getIndex()) + + def listImages(self): + print "[listImages]" + imagelist = [] + mask = re.compile("%s/(?P1\.\d)/%s/images/(?P.*?)-%s_(?P.*?).nfi" % (self.feed_base, self.box, self.box), re.DOTALL) + for name, url in self.feedlists[ALLIMAGES]: + result = mask.match(url) + if result: + if result.group("version").startswith("20"): + version = ( result.group("version")[:4]+'-'+result.group("version")[4:6]+'-'+result.group("version")[6:8] ) + else: + version = result.group("version") + description = "\nOpendreambox %s\n%s image\n%s\n" % (result.group("OE_vers"), result.group("branch"), version) + imagelist.append((url, name, _("Download %s from server" ) % description, None)) + self["menu"].setList(imagelist) + + def getUSBPartitions(self): + allpartitions = [ (r.description, r.mountpoint) for r in harddiskmanager.getMountedPartitions(onlyhotplug = True)] + print "[getUSBPartitions]", allpartitions + usbpartition = [] + for x in allpartitions: + print x, x[1] == '/', x[0].find("USB"), access(x[1], R_OK) + if x[1] != '/' and x[0].find("USB") > -1: # and access(x[1], R_OK) is True: + usbpartition.append(x) + return usbpartition + + def askDestination(self): + usbpartition = self.getUSBPartitions() + if len(usbpartition) == 1: + self.target_dir = usbpartition[0][1] + self.ackDestinationDevice(device_description=usbpartition[0][0]) + else: + self.openDeviceBrowser() + + def openDeviceBrowser(self): + self.session.openWithCallback(self.DeviceBrowserClosed, DeviceBrowser, None, showDirectories=True, showMountpoints=True, inhibitMounts=["/autofs/sr0/"]) + + def DeviceBrowserClosed(self, path): + print "[DeviceBrowserClosed]", str(path) + self.target_dir = path + if path: + self.ackDestinationDevice() + else: + self.keyRed() + + def ackDestinationDevice(self, device_description=None): + if device_description == None: + dev = self.target_dir + else: + dev = device_description + message = _("Do you want to download the image to %s ?") % (dev) + choices = [(_("Yes"), self.ackedDestination), (_("List of storage devices"),self.openDeviceBrowser), (_("Cancel"),self.keyRed)] + self.session.openWithCallback(self.ackDestination_query, ChoiceBox, title=message, list=choices) + + def ackDestination_query(self, choice): + print "[ackDestination_query]", choice + if isinstance(choice, tuple): + choice[1]() + else: + self.keyRed() + + def ackedDestination(self): + print "[ackedDestination]", self.branch, self.target_dir + self.container.setCWD(resolveFilename(SCOPE_MEDIA)+"usb/") + if self.target_dir[:8] == "/autofs/": + self.target_dir = "/dev/" + self.target_dir[8:-1] + + if self.branch == STICK_WIZARD: + job = StickWizardJob(self.target_dir) + job.afterEvent = "close" + job_manager.AddJob(job) + job_manager.failed_jobs = [] + self.session.openWithCallback(self.StickWizardCB, JobView, job, afterEventChangeable = False) + + elif self.branch != STICK_WIZARD: + url = self.feedlists[self.branch][self.image_idx][1] + filename = self.feedlists[self.branch][self.image_idx][0] + print "[getImage] start downloading %s to %s" % (url, filename) + if self.target_dir.startswith("/dev/"): + job = ImageDownloadJob(url, filename, self.target_dir, self.usbmountpoint) + else: + job = ImageDownloadJob(url, filename, None, self.target_dir) + job.afterEvent = "close" + job_manager.AddJob(job) + job_manager.failed_jobs = [] + self.session.openWithCallback(self.ImageDownloadCB, JobView, job, afterEventChangeable = False) + + def StickWizardCB(self, ret=None): + print "[StickWizardCB]", ret +# print job_manager.active_jobs, job_manager.failed_jobs, job_manager.job_classes, job_manager.in_background, job_manager.active_job + if len(job_manager.failed_jobs) == 0: + self.session.open(MessageBox, _("The USB stick was prepared to be bootable.\nNow you can download an NFI image file!"), type = MessageBox.TYPE_INFO) + if len(self.feedlists[ALLIMAGES]) == 0: + self.getFeed() + else: + self.setMenu() + else: + self.umountCallback = self.checkUSBStick + self.umount() + + def ImageDownloadCB(self, ret): + print "[ImageDownloadCB]", ret +# print job_manager.active_jobs, job_manager.failed_jobs, job_manager.job_classes, job_manager.in_background, job_manager.active_job + if len(job_manager.failed_jobs) == 0: + self.session.openWithCallback(self.askBackupCB, MessageBox, _("The wizard can backup your current settings. Do you want to do a backup now?"), MessageBox.TYPE_YESNO) + else: + self.umountCallback = self.keyRed + self.umount() + + def askBackupCB(self, ret): + if ret: + from Plugins.SystemPlugins.SoftwareManager.BackupRestore import BackupScreen + + class USBBackupScreen(BackupScreen): + def __init__(self, session, usbmountpoint): + BackupScreen.__init__(self, session, runBackup = True) + self.backuppath = usbmountpoint + self.fullbackupfilename = self.backuppath + "/" + self.backupfile + + self.session.openWithCallback(self.showHint, USBBackupScreen, self.usbmountpoint) + else: + self.showHint() + + def showHint(self, ret=None): + self.session.open(MessageBox, _("To update your receiver firmware, please follow these steps:\n1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n3) Wait for bootup and follow instructions of the wizard."), type = MessageBox.TYPE_INFO) + self.umountCallback = self.keyRed + self.umount() + + def getFeed(self): + self.feedDownloader15 = feedDownloader(self.feed_base, self.box, OE_vers="1.5") + self.feedDownloader16 = feedDownloader(self.feed_base, self.box, OE_vers="1.6") + self.feedlists = [[],[],[]] + self.feedDownloader15.getList(self.gotFeed, self.feed_failed) + self.feedDownloader16.getList(self.gotFeed, self.feed_failed) + + def feed_failed(self, message=""): + self["status"].text = _("Could not connect to receiver .NFI image feed server:") + "\n" + str(message) + "\n" + _("Please check your network settings!") + + def gotFeed(self, feedlist, OE_vers): + print "[gotFeed]", OE_vers + releaselist = [] + experimentallist = [] + + for name, url in feedlist: + if name.find("release") > -1: + releaselist.append((name, url)) + if name.find("experimental") > -1: + experimentallist.append((name, url)) + self.feedlists[ALLIMAGES].append((name, url)) + + if OE_vers == "1.6": + self.feedlists[RELEASE] = releaselist + self.feedlists[RELEASE] + self.feedlists[EXPERIMENTAL] = experimentallist + self.feedlists[RELEASE] + elif OE_vers == "1.5": + self.feedlists[RELEASE] = self.feedlists[RELEASE] + releaselist + self.feedlists[EXPERIMENTAL] = self.feedlists[EXPERIMENTAL] + experimentallist + + self.setMenu() + + def checkUSBStick(self): + self.target_dir = None + allpartitions = [ (r.description, r.mountpoint) for r in harddiskmanager.getMountedPartitions(onlyhotplug = True)] + print "[checkUSBStick] found partitions:", allpartitions + usbpartition = [] + for x in allpartitions: + print x, x[1] == '/', x[0].find("USB"), access(x[1], R_OK) + if x[1] != '/' and x[0].find("USB") > -1: # and access(x[1], R_OK) is True: + usbpartition.append(x) + + print usbpartition + if len(usbpartition) == 1: + self.target_dir = usbpartition[0][1] + self.md5_passback = self.getFeed + self.md5_failback = self.askStartWizard + self.md5verify(self.stickimage_md5, self.target_dir) + elif usbpartition == []: + print "[NFIFlash] needs to create usb flasher stick first!" + self.askStartWizard() + else: + self.askStartWizard() + + def askStartWizard(self): + self.branch = STICK_WIZARD + message = _("""This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection. +First, a USB stick needs to be prepared so that it becomes bootable. +In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick. +If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!""") + self.session.openWithCallback(self.wizardDeviceBrowserClosed, DeviceBrowser, None, message, showDirectories=True, showMountpoints=True, inhibitMounts=["/","/autofs/sr0/","/autofs/sda1/","/media/hdd/","/media/net/",self.usbmountpoint,"/media/dvd/"]) + + def wizardDeviceBrowserClosed(self, path): + print "[wizardDeviceBrowserClosed]", path + self.target_dir = path + if path: + self.md5_passback = self.getFeed + self.md5_failback = self.wizardQuery + self.md5verify(self.stickimage_md5, self.target_dir) + else: + self.close() + + def wizardQuery(self): + print "[wizardQuery]" + description = self.target_dir + for name, dev in self.getUSBPartitions(): + if dev == self.target_dir: + description = name + message = _("You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased.") + "\n" + message += _("The following device was found:\n\n%s\n\nDo you want to write the USB flasher to this stick?") % description + choices = [(_("Yes"), self.ackedDestination), (_("List of storage devices"),self.askStartWizard), (_("Cancel"),self.close)] + self.session.openWithCallback(self.ackDestination_query, ChoiceBox, title=message, list=choices) + + def setMenu(self): + self.menulist = [] + try: + latest_release = "Release %s (Opendreambox 1.5)" % self.feedlists[RELEASE][0][0][-9:-4] + self.menulist.append((RELEASE, _("Get latest release image"), _("Download %s from server" ) % latest_release, None)) + except IndexError: + pass + + try: + dat = self.feedlists[EXPERIMENTAL][0][0][-12:-4] + latest_experimental = "Experimental %s-%s-%s (Opendreambox 1.6)" % (dat[:4], dat[4:6], dat[6:]) + self.menulist.append((EXPERIMENTAL, _("Get latest experimental image"), _("Download %s from server") % latest_experimental, None)) + except IndexError: + pass + + self.menulist.append((ALLIMAGES, _("Select an image to be downloaded"), _("Select desired image from feed list" ), None)) + self.menulist.append((STICK_WIZARD, _("USB stick wizard"), _("Prepare another USB stick for image flashing" ), None)) + self["menu"].setList(self.menulist) + self["status"].text = _("Currently installed image") + ": %s" % (about.getImageVersionString()) + self.branch = START + self.updateButtons() + + def nfo_download(self, branch, idx): + nfourl = (self.feedlists[branch][idx][1])[:-4]+".nfo" + self.nfofilename = (self.feedlists[branch][idx][0])[:-4]+".nfo" + print "[check_for_NFO]", nfourl + client.getPage(nfourl).addCallback(self.nfo_finished).addErrback(self.nfo_failed) + + def nfo_failed(self, failure_instance): + print "[nfo_failed] " + str(failure_instance) + self["key_blue"].text = "" + self.nfofilename = "" + self.nfo = "" + + def nfo_finished(self,nfodata=""): + print "[nfo_finished] " + str(nfodata) + self["key_blue"].text = _("Changelog") + self.nfo = nfodata + + def md5verify(self, md5, path): + cmd = "md5sum -c -s" + print "[verify_md5]", md5, path, cmd + self.container.setCWD(path) + self.container.appClosed.append(self.md5finished) + self.container.execute(cmd) + self.container.write(md5) + self.container.dataSent.append(self.md5ready) + + def md5ready(self, retval): + self.container.sendEOF() + + def md5finished(self, retval): + print "[md5finished]", str(retval) + self.container.appClosed.remove(self.md5finished) + self.container.dataSent.remove(self.md5ready) + if retval==0: + print "check passed! calling", repr(self.md5_passback) + self.md5_passback() + else: + print "check failed! calling", repr(self.md5_failback) + self.md5_failback() + + def umount(self): + cmd = "umount " + self.usbmountpoint + print "[umount]", cmd + self.container.setCWD('/') + self.container.appClosed.append(self.umountFinished) + self.container.execute(cmd) + + def umountFinished(self, retval): + print "[umountFinished]", str(retval) + self.container.appClosed.remove(self.umountFinished) + self.umountCallback() + +def main(session, **kwargs): + session.open(NFIDownload,resolveFilename(SCOPE_HDD)) + +def filescan_open(list, session, **kwargs): + dev = "/dev/" + (list[0].path).rsplit('/',1)[0][7:] + print "mounting device " + dev + " to /media/usb..." + usbmountpoint = resolveFilename(SCOPE_MEDIA)+"usb/" + system("mount %s %s -o rw,sync" % (dev, usbmountpoint)) + session.open(NFIDownload,usbmountpoint) + +def filescan(**kwargs): + from Components.Scanner import Scanner, ScanPath + return \ + Scanner(mimetypes = ["application/x-dream-image"], + paths_to_scan = + [ + ScanPath(path = "", with_subdirs = False), + ], + name = "NFI", + description = (_("Download .NFI-files for USB-flasher")+"..."), + openfnc = filescan_open, ) diff --git a/lib/python/Plugins/SystemPlugins/NFIFlash/flash.png b/lib/python/Plugins/SystemPlugins/NFIFlash/flash.png new file mode 100644 index 0000000..83c2d32 Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/NFIFlash/flash.png differ diff --git a/lib/python/Plugins/SystemPlugins/NFIFlash/flasher.py b/lib/python/Plugins/SystemPlugins/NFIFlash/flasher.py new file mode 100644 index 0000000..8fcb79e --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/NFIFlash/flasher.py @@ -0,0 +1,229 @@ +from Screens.Screen import Screen +from Screens.MessageBox import MessageBox +from Screens.ChoiceBox import ChoiceBox +from Screens.Standby import TryQuitMainloop +from Screens.Console import Console +from Components.ActionMap import ActionMap +from Components.Sources.StaticText import StaticText +from Components.Sources.Progress import Progress +from Components.Sources.Boolean import Boolean +from Components.Label import Label +from Components.FileList import FileList +from Components.Task import Task, Job, job_manager, Condition +from Screens.TaskView import JobView +from Tools.Directories import fileExists +from Tools.HardwareInfo import HardwareInfo +from os import system +from enigma import eConsoleAppContainer, quitMainloop, eEnv +from Components.About import about + +class md5Postcondition(Condition): + def check(self, task): + print "md5Postcondition::check", task.returncode + return task.returncode == 0 + + def getErrorMessage(self, task): + if task.returncode == 1: + return _("The md5sum validation failed, the file may be corrupted!") + return "md5 error" + +class md5verify(Task): + def __init__(self, job, path, md5): + Task.__init__(self, job, "md5sum") + self.postconditions.append(md5Postcondition()) + self.weighting = 5 + self.cwd = path + self.setTool("md5sum") + self.args += ["-c", "-s"] + self.initial_input = md5 + + def writeInput(self, input): + self.container.dataSent.append(self.md5ready) + print "[writeInput]", input + Task.writeInput(self, input) + + def md5ready(self, retval): + self.container.sendEOF() + + def processOutput(self, data): + print "[md5sum]", + +class writeNAND(Task): + def __init__(self, job, param, box): + Task.__init__(self,job, ("Writing image file to NAND Flash")) + self.setTool(eEnv.resolve("${libdir}/enigma2/python/Plugins/SystemPlugins/NFIFlash/writenfi-mipsel-2.6.18-r1")) + if box == "dm7025": + self.end = 256 + elif box[:5] == "dm800": + self.end = 512 + self.args += param + self.weighting = 95 + + def processOutput(self, data): + print "[writeNand] " + data + if data == "." or data.endswith(" ."): + self.progress += 1 + elif data.find("*** done!") > 0: + print "data.found done" + self.setProgress(self.end) + else: + self.output_line = data + +class NFIFlash(Screen): + skin = """ + + + + + + + + + + + + + + """ + + def __init__(self, session, destdir=None): + Screen.__init__(self, session) + + self.box = HardwareInfo().get_device_name() + self.usbmountpoint = "/mnt/usb/" + + self["key_red"] = StaticText() + self["key_green"] = StaticText() + self["key_yellow"] = StaticText() + self["key_blue"] = StaticText() + self.filelist = FileList(self.usbmountpoint, matchingPattern = "^.*\.(nfi|NFI)", showDirectories = False, showMountpoints = False) + self["filelist"] = self.filelist + self["infolabel"] = StaticText() + + self["status"] = StaticText(_("Please select an NFI file and press green key to flash!") + '\n' + _("currently installed image: %s") % (about.getImageVersionString())) + self.job = None + + self["shortcuts"] = ActionMap(["OkCancelActions", "ColorActions", "ShortcutActions", "DirectionActions"], + { + "ok": self.keyOk, + "green": self.keyOk, + "up": self.keyUp, + "upRepeated": self.keyUp, + "downRepeated": self.keyDown, + "down": self.keyDown, + "left": self.keyLeft, + "yellow": self.reboot, + "right": self.keyRight + }, -1) + self.md5sum = "" + self.onShown.append(self.autostart) + + def autostart(self): + self.onShown.remove(self.autostart) + self.check_for_NFO() + print "[[layoutFinished]]", len(self["filelist"].getFileList()) + if len(self["filelist"].getFileList()) == 1: + print "==1" + self.keyOk() + + def keyUp(self): + self["filelist"].up() + self.check_for_NFO() + + def keyDown(self): + self["filelist"].down() + self.check_for_NFO() + + def keyRight(self): + self["filelist"].pageDown() + self.check_for_NFO() + + def keyLeft(self): + self["filelist"].pageUp() + self.check_for_NFO() + + def keyOk(self): + if self.job is None or self.job.status is not self.job.IN_PROGRESS: + if self["filelist"].canDescent(): # isDir + self["filelist"].descent() + self.check_for_NFO() + elif self["filelist"].getFilename(): + self.session.openWithCallback(self.queryCB, MessageBox, _("Shall the USB stick wizard proceed and program the image file %s into flash memory?" % self.nfifile.rsplit('/',1)[-1]), MessageBox.TYPE_YESNO) + + def check_for_NFO(self, nfifile=None): + print "check_for_NFO", self["filelist"].getFilename(), self["filelist"].getCurrentDirectory() + self["infolabel"].text = "" + self["key_green"].text = "" + + if nfifile is None: + if self["filelist"].getFilename() is None: + return + if self["filelist"].getCurrentDirectory() is not None: + self.nfifile = self["filelist"].getCurrentDirectory()+self["filelist"].getFilename() + else: + self.nfifile = nfifile + + if self.nfifile.upper().endswith(".NFI"): + self["key_green"].text = _("Flash") + nfofilename = self.nfifile[0:-3]+"nfo" + print nfofilename, fileExists(nfofilename) + if fileExists(nfofilename): + nfocontent = open(nfofilename, "r").read() + print "nfocontent:", nfocontent + self["infolabel"].text = nfocontent + pos = nfocontent.find("MD5:") + if pos > 0: + self.md5sum = nfocontent[pos+5:pos+5+32] + " " + self.nfifile + else: + self.md5sum = "" + else: + self["infolabel"].text = _("No details for this image file") + (self["filelist"].getFilename() or "") + self.md5sum = "" + + def queryCB(self, answer): + if answer == True: + self.createJob() + + def createJob(self): + self.job = Job("Image flashing job") + self.job.afterEvent = "close" + cwd = self["filelist"].getCurrentDirectory() + md5verify(self.job, cwd, self.md5sum) + writeNAND(self.job, [self.nfifile], self.box) + self["key_blue"].text = "" + self["key_yellow"].text = "" + self["key_green"].text = "" + job_manager.AddJob(self.job) + self.session.openWithCallback(self.flashed, JobView, self.job, cancelable = False, backgroundable = False, afterEventChangeable = False) + + def flashed(self, bg): + print "[flashed]" + if self.job.status == self.job.FINISHED: + self["status"].text = _("NFI image flashing completed. Press Yellow to Reboot!") + filename = self.usbmountpoint+'enigma2settingsbackup.tar.gz' + if fileExists(filename): + import os.path, time + date = time.ctime(os.path.getmtime(filename)) + self.session.openWithCallback(self.askRestoreCB, MessageBox, _("The wizard found a configuration backup. Do you want to restore your old settings from %s?") % date, MessageBox.TYPE_YESNO) + else: + self.unlockRebootButton() + else: + self["status"].text = _("Flashing failed") + + def askRestoreCB(self, ret): + if ret: + from Plugins.SystemPlugins.SoftwareManager.BackupRestore import getBackupFilename + restorecmd = ["tar -xzvf " + self.usbmountpoint + getBackupFilename() + " -C /"] + self.session.openWithCallback(self.unlockRebootButton, Console, title = _("Restore is running..."), cmdlist = restorecmd, closeOnSuccess = True) + else: + self.unlockRebootButton() + + def unlockRebootButton(self, retval = None): + if self.job.status == self.job.FINISHED: + self["key_yellow"].text = _("Reboot") + + def reboot(self, ret=None): + if self.job.status == self.job.FINISHED: + self["status"].text = ("rebooting...") + from os import system + system(eEnv.resolve("${libdir}/enigma2/python/Plugins/SystemPlugins/NFIFlash/kill_e2_reboot.sh")) diff --git a/lib/python/Plugins/SystemPlugins/NFIFlash/meta/Makefile.am b/lib/python/Plugins/SystemPlugins/NFIFlash/meta/Makefile.am new file mode 100644 index 0000000..598c071 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/NFIFlash/meta/Makefile.am @@ -0,0 +1,5 @@ +installdir = $(datadir)/meta + +dist_install_DATA = plugin_nfiflash.xml + +EXTRA_DIST = nfiflash_de.jpg nfiflash_en.jpg diff --git a/lib/python/Plugins/SystemPlugins/NFIFlash/meta/nfiflash_de.jpg b/lib/python/Plugins/SystemPlugins/NFIFlash/meta/nfiflash_de.jpg new file mode 100644 index 0000000..fec93f4 Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/NFIFlash/meta/nfiflash_de.jpg differ diff --git a/lib/python/Plugins/SystemPlugins/NFIFlash/meta/nfiflash_en.jpg b/lib/python/Plugins/SystemPlugins/NFIFlash/meta/nfiflash_en.jpg new file mode 100644 index 0000000..32a9967 Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/NFIFlash/meta/nfiflash_en.jpg differ diff --git a/lib/python/Plugins/SystemPlugins/NFIFlash/meta/plugin_nfiflash.xml b/lib/python/Plugins/SystemPlugins/NFIFlash/meta/plugin_nfiflash.xml new file mode 100644 index 0000000..f93f5c5 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/NFIFlash/meta/plugin_nfiflash.xml @@ -0,0 +1,21 @@ + + + + + + + Dream Multimedia + NFIFlash + enigma2-plugin-systemplugins-nfiflash + Restore your Dreambox with a USB stick + With the NFIFlash plugin it is possible to prepare a USB stick with an Dreambox image.\n + It is then possible to flash your Dreambox with the image on that stick. + + + + + + + + + diff --git a/lib/python/Plugins/SystemPlugins/NFIFlash/plugin.py b/lib/python/Plugins/SystemPlugins/NFIFlash/plugin.py new file mode 100644 index 0000000..2171bb5 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/NFIFlash/plugin.py @@ -0,0 +1,26 @@ +from Plugins.Plugin import PluginDescriptor +from Tools.HardwareInfo import HardwareInfo +from Tools.Directories import fileExists +from downloader import NFIDownload, filescan +from flasher import NFIFlash + +def NFIFlasherMain(session, tmp = None, **kwargs): + session.open(NFIDownload, "/home/root" ) + +def NFICallFnc(tmp = None): + return NFIFlasherMain + +def Plugins(**kwargs): + # currently only available for DM8000 + if HardwareInfo().get_device_name() != "dm8000": + return [PluginDescriptor()] + #return [PluginDescriptor(where = PluginDescriptor.WHERE_WIZARD, fnc = (9,NFIFlash))] + # it's not possible to rewrite the flash memory with a system currently booted from it + return [PluginDescriptor(name=_("NFI image flashing"), + description=_("Download .NFI-files for USB-flasher"), + icon = "flash.png", + where = PluginDescriptor.WHERE_SOFTWAREMANAGER, + needsRestart = False, + fnc={"SoftwareSupported": NFICallFnc, "menuEntryName": lambda x: _("NFI image flashing"), + "menuEntryDescription": lambda x: _("Download .NFI-files for USB-flasher")}), + PluginDescriptor(name="nfi", where = PluginDescriptor.WHERE_FILESCAN, needsRestart = False, fnc = filescan)] diff --git a/lib/python/Plugins/SystemPlugins/NetworkWizard/Makefile.am b/lib/python/Plugins/SystemPlugins/NetworkWizard/Makefile.am new file mode 100644 index 0000000..b40f8ab --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/NetworkWizard/Makefile.am @@ -0,0 +1,11 @@ +installdir = $(pkglibdir)/python/Plugins/SystemPlugins/NetworkWizard + +SUBDIRS = meta + +install_PYTHON = \ + __init__.py \ + NetworkWizard.py \ + plugin.py + +dist_install_DATA = \ + networkwizard.xml \ No newline at end of file diff --git a/lib/python/Plugins/SystemPlugins/NetworkWizard/NetworkWizard.py b/lib/python/Plugins/SystemPlugins/NetworkWizard/NetworkWizard.py new file mode 100644 index 0000000..9d2a75d --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/NetworkWizard/NetworkWizard.py @@ -0,0 +1,378 @@ +from Screens.Wizard import wizardManager, WizardSummary +from Screens.WizardLanguage import WizardLanguage +from Screens.Rc import Rc +from Screens.MessageBox import MessageBox +from Components.Pixmap import Pixmap, MovingPixmap, MultiPixmap +from Components.Sources.Boolean import Boolean +from Components.Network import iNetwork +from Tools.Directories import resolveFilename, SCOPE_PLUGINS, SCOPE_SKIN_IMAGE +from enigma import eTimer +from os import system + +class NetworkWizard(WizardLanguage, Rc): + skin = """ + + + + + + + + + + + + + + + + + + + """ + def __init__(self, session, interface = None): + self.xmlfile = resolveFilename(SCOPE_PLUGINS, "SystemPlugins/NetworkWizard/networkwizard.xml") + WizardLanguage.__init__(self, session, showSteps = False, showStepSlider = False) + Rc.__init__(self) + self.session = session + self["wizard"] = Pixmap() + self["HelpWindow"] = Pixmap() + self["HelpWindow"].hide() + self["VKeyIcon"] = Boolean(False) + + self.InstalledInterfaceCount = None + self.Adapterlist = None + self.InterfaceState = None + self.isInterfaceUp = None + self.WlanPluginInstalled = False + self.ap = None + self.w = None + if interface is not None: + self.selectedInterface = interface + else: + self.selectedInterface = None + self.NextStep = None + self.resetRef = None + self.checkRef = None + self.AdapterRef = None + self.APList = None + self.newAPlist = None + self.oldlist = None + + self.originalInterfaceState = {} + self.originalInterfaceStateChanged = False + self.Text = None + self.rescanTimer = eTimer() + self.rescanTimer.callback.append(self.rescanTimerFired) + self.getInstalledInterfaceCount() + self.isWlanPluginInstalled() + + def exitWizardQuestion(self, ret = False): + if (ret): + self.markDone() + self.close() + + def markDone(self): + self.stopScan() + del self.rescanTimer + self.checkOldInterfaceState() + pass + + def back(self): + self.stopScan() + self.ap = None + WizardLanguage.back(self) + + def stopScan(self): + self.rescanTimer.stop() + if self.w is not None: + from Plugins.SystemPlugins.WirelessLan.Wlan import iWlan + iWlan.stopGetNetworkList() + self.w = None + + def getInstalledInterfaceCount(self): + self.originalInterfaceState = {} + self.Adapterlist = iNetwork.getAdapterList() + self.InstalledInterfaceCount = len(self.Adapterlist) + if self.Adapterlist is not None: + if self.InstalledInterfaceCount == 1 and self.selectedInterface is None: + self.selectedInterface = self.Adapterlist[0] + for interface in iNetwork.getAdapterList(): + self.originalInterfaceState[interface] = {} + self.originalInterfaceState[interface]["up"] = iNetwork.getAdapterAttribute(interface, 'up') + + def selectInterface(self): + self.InterfaceState = None + if self.selectedInterface is None: + if self.InstalledInterfaceCount <= 1: + if not iNetwork.isWirelessInterface(self.selectedInterface): + self.NextStep = 'nwconfig' + else: + self.NextStep = 'asknetworktype' + self.checkInterface(self.selectedInterface) + else: + self.NextStep = 'selectinterface' + self.currStep = self.getStepWithID(self.NextStep) + self.afterAsyncCode() + else: + if not iNetwork.isWirelessInterface(self.selectedInterface): + self.NextStep = 'nwconfig' + else: + self.NextStep = 'asknetworktype' + self.checkInterface(self.selectedInterface) + + def checkOldInterfaceState(self): + # disable up interface if it was originally down and config is unchanged. + if self.originalInterfaceStateChanged is False: + for interface in self.originalInterfaceState.keys(): + if interface == self.selectedInterface: + if self.originalInterfaceState[interface]["up"] is False: + if iNetwork.checkforInterface(interface) is True: + system("ifconfig " + interface + " down") + + def listInterfaces(self): + self.checkOldInterfaceState() + list = [(iNetwork.getFriendlyAdapterName(x),x) for x in iNetwork.getAdapterList()] + list.append((_("Exit network wizard"), "end")) + return list + + def InterfaceSelectionMade(self, index): + self.selectedInterface = index + self.InterfaceSelect(index) + + def InterfaceSelect(self, index): + if index == 'end': + self.NextStep = 'end' + elif index == 'eth0': + self.NextStep = 'nwconfig' + else: + self.NextStep = 'asknetworktype' + + def InterfaceSelectionMoved(self): + self.InterfaceSelect(self.selection) + + def checkInterface(self,iface): + self.stopScan() + if self.Adapterlist is None: + self.Adapterlist = iNetwork.getAdapterList() + if self.NextStep is not 'end': + if len(self.Adapterlist) == 0: + #Reset Network to defaults if network broken + iNetwork.resetNetworkConfig('lan', self.resetNetworkConfigCB) + self.resetRef = self.session.openWithCallback(self.resetNetworkConfigFinished, MessageBox, _("Please wait while we prepare your network interfaces..."), type = MessageBox.TYPE_INFO, enable_input = False) + if iface in iNetwork.getInstalledAdapters(): + if iface in iNetwork.configuredNetworkAdapters and len(iNetwork.configuredNetworkAdapters) == 1: + if iNetwork.getAdapterAttribute(iface, 'up') is True: + self.isInterfaceUp = True + else: + self.isInterfaceUp = False + self.currStep = self.getStepWithID(self.NextStep) + self.afterAsyncCode() + else: + self.isInterfaceUp = iNetwork.checkforInterface(iface) + self.currStep = self.getStepWithID(self.NextStep) + self.afterAsyncCode() + else: + self.resetNetworkConfigFinished(False) + + def resetNetworkConfigFinished(self,data): + if data is True: + self.currStep = self.getStepWithID(self.NextStep) + self.afterAsyncCode() + else: + self.currStep = self.getStepWithID(self.NextStep) + self.afterAsyncCode() + + def resetNetworkConfigCB(self,callback,iface): + if callback is not None: + if callback is True: + iNetwork.getInterfaces(self.getInterfacesFinished) + + def getInterfacesFinished(self, data): + if data is True: + if iNetwork.getAdapterAttribute(self.selectedInterface, 'up') is True: + self.isInterfaceUp = True + else: + self.isInterfaceUp = False + self.resetRef.close(True) + else: + print "we should never come here!" + + def AdapterSetupEnd(self, iface): + self.originalInterfaceStateChanged = True + if iNetwork.getAdapterAttribute(iface, "dhcp") is True: + iNetwork.checkNetworkState(self.AdapterSetupEndFinished) + self.AdapterRef = self.session.openWithCallback(self.AdapterSetupEndCB, MessageBox, _("Please wait while we test your network..."), type = MessageBox.TYPE_INFO, enable_input = False) + else: + self.currStep = self.getStepWithID("confdns") + self.afterAsyncCode() + + def AdapterSetupEndCB(self,data): + if data is True: + if iNetwork.isWirelessInterface(self.selectedInterface): + if self.WlanPluginInstalled == True: + from Plugins.SystemPlugins.WirelessLan.Wlan import iStatus + iStatus.getDataForInterface(self.selectedInterface,self.checkWlanStateCB) + else: + self.currStep = self.getStepWithID("checklanstatusend") + self.afterAsyncCode() + else: + self.currStep = self.getStepWithID("checklanstatusend") + self.afterAsyncCode() + + def AdapterSetupEndFinished(self,data): + if data <= 2: + self.InterfaceState = True + else: + self.InterfaceState = False + self.AdapterRef.close(True) + + def checkWlanStateCB(self,data,status): + if data is not None: + if data is True: + if status is not None: + text1 = _("Your receiver is now ready to be used.\n\nYour internet connection is working.\n\n") + text2 = _('Accesspoint:') + "\t" + str(status[self.selectedInterface]["accesspoint"]) + "\n" + text3 = _('SSID:') + "\t" + str(status[self.selectedInterface]["essid"]) + "\n" + text4 = _('Link quality:') + "\t" + str(status[self.selectedInterface]["quality"])+ "\n" + text5 = _('Signal strength:') + "\t" + str(status[self.selectedInterface]["signal"]) + "\n" + text6 = _('Bitrate:') + "\t" + str(status[self.selectedInterface]["bitrate"]) + "\n" + text7 = _('Encryption:') + " " + str(status[self.selectedInterface]["encryption"]) + "\n" + text8 = _("Please press OK to continue.") + infotext = text1 + text2 + text3 + text4 + text5 + text7 +"\n" + text8 + self.currStep = self.getStepWithID("checkWlanstatusend") + self.Text = infotext + if str(status[self.selectedInterface]["accesspoint"]) == "Not-Associated": + self.InterfaceState = False + self.afterAsyncCode() + + def checkNetwork(self): + iNetwork.checkNetworkState(self.checkNetworkStateCB) + self.checkRef = self.session.openWithCallback(self.checkNetworkCB, MessageBox, _("Please wait while we test your network..."), type = MessageBox.TYPE_INFO, enable_input = False) + + def checkNetworkCB(self,data): + if data is True: + if iNetwork.isWirelessInterface(self.selectedInterface): + if self.WlanPluginInstalled == True: + from Plugins.SystemPlugins.WirelessLan.Wlan import iStatus + iStatus.getDataForInterface(self.selectedInterface,self.checkWlanStateCB) + else: + self.currStep = self.getStepWithID("checklanstatusend") + self.afterAsyncCode() + else: + self.currStep = self.getStepWithID("checklanstatusend") + self.afterAsyncCode() + + def checkNetworkStateCB(self,data): + if data <= 2: + self.InterfaceState = True + else: + self.InterfaceState = False + self.checkRef.close(True) + + def rescanTimerFired(self): + self.rescanTimer.stop() + self.updateAPList() + + def updateAPList(self): + self.oldlist = self.APList + self.newAPlist = [] + newList = [] + newListIndex = None + currentListEntry = None + newList = self.listAccessPoints() + + for oldentry in self.oldlist: + if oldentry not in newList: + newList.append(oldentry) + + for newentry in newList: + self.newAPlist.append(newentry) + + if len(self.newAPlist): + if (self.wizard[self.currStep].has_key("dynamiclist")): + currentListEntry = self["list"].getCurrent() + if currentListEntry is not None: + idx = 0 + for entry in self.newAPlist: + if entry == currentListEntry: + newListIndex = idx + idx +=1 + self.wizard[self.currStep]["evaluatedlist"] = self.newAPlist + self['list'].setList(self.newAPlist) + if newListIndex is not None: + self["list"].setIndex(newListIndex) + self["list"].updateList(self.newAPlist) + + def listAccessPoints(self): + self.APList = [] + if self.WlanPluginInstalled is False: + self.APList.append( ( _("No networks found"), None ) ) + else: + from Plugins.SystemPlugins.WirelessLan.Wlan import iWlan + iWlan.setInterface(self.selectedInterface) + self.w = iWlan.getInterface() + aps = iWlan.getNetworkList() + if aps is not None: + print "[NetworkWizard.py] got Accespoints!" + tmplist = [] + complist = [] + for ap in aps: + a = aps[ap] + if a['active']: + tmplist.append( (a['bssid'], a['essid']) ) + complist.append( (a['bssid'], a['essid']) ) + + for entry in tmplist: + if entry[1] == "": + for compentry in complist: + if compentry[0] == entry[0]: + complist.remove(compentry) + for entry in complist: + self.APList.append( (entry[1], entry[1]) ) + if not len(aps): + self.APList.append( ( _("No networks found"), None ) ) + + self.rescanTimer.start(4000) + return self.APList + + + def AccessPointsSelectionMoved(self): + self.ap = self.selection + self.NextStep = 'wlanconfig' + + def checkWlanSelection(self): + self.stopScan() + self.currStep = self.getStepWithID(self.NextStep) + + def isWlanPluginInstalled(self): + try: + from Plugins.SystemPlugins.WirelessLan.Wlan import iWlan + except ImportError: + self.WlanPluginInstalled = False + else: + self.WlanPluginInstalled = True + + def listChoices(self): + self.stopScan() + list = [] + if self.WlanPluginInstalled == True: + list.append((_("Configure your wireless LAN again"), "scanwlan")) + list.append((_("Configure your internal LAN"), "nwconfig")) + list.append((_("Exit network wizard"), "end")) + return list + + def ChoicesSelectionMade(self, index): + self.ChoicesSelect(index) + + def ChoicesSelect(self, index): + if index == 'end': + self.NextStep = 'end' + elif index == 'nwconfig': + self.selectedInterface = "eth0" + self.NextStep = 'nwconfig' + else: + self.NextStep = 'asknetworktype' + + def ChoicesSelectionMoved(self): + pass diff --git a/lib/python/Plugins/SystemPlugins/NetworkWizard/__init__.py b/lib/python/Plugins/SystemPlugins/NetworkWizard/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lib/python/Plugins/SystemPlugins/NetworkWizard/meta/Makefile.am b/lib/python/Plugins/SystemPlugins/NetworkWizard/meta/Makefile.am new file mode 100644 index 0000000..db985bf --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/NetworkWizard/meta/Makefile.am @@ -0,0 +1,5 @@ +installdir = $(datadir)/meta + +dist_install_DATA = plugin_networkwizard.xml + +EXTRA_DIST = networkwizard_en.jpg networkwizard_de.jpg diff --git a/lib/python/Plugins/SystemPlugins/NetworkWizard/meta/networkwizard_de.jpg b/lib/python/Plugins/SystemPlugins/NetworkWizard/meta/networkwizard_de.jpg new file mode 100644 index 0000000..3999a41 Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/NetworkWizard/meta/networkwizard_de.jpg differ diff --git a/lib/python/Plugins/SystemPlugins/NetworkWizard/meta/networkwizard_en.jpg b/lib/python/Plugins/SystemPlugins/NetworkWizard/meta/networkwizard_en.jpg new file mode 100644 index 0000000..0a0434a Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/NetworkWizard/meta/networkwizard_en.jpg differ diff --git a/lib/python/Plugins/SystemPlugins/NetworkWizard/meta/plugin_networkwizard.xml b/lib/python/Plugins/SystemPlugins/NetworkWizard/meta/plugin_networkwizard.xml new file mode 100644 index 0000000..9e40548 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/NetworkWizard/meta/plugin_networkwizard.xml @@ -0,0 +1,19 @@ + + + + + + + Dream Multimedia + NetworkWizard + enigma2-plugin-systemplugins-networkwizard + Step by step network configuration + With the network wizard you can easily configure your network step by step. + + + + + + + + diff --git a/lib/python/Plugins/SystemPlugins/NetworkWizard/networkwizard.xml b/lib/python/Plugins/SystemPlugins/NetworkWizard/networkwizard.xml new file mode 100644 index 0000000..01e1fd8 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/NetworkWizard/networkwizard.xml @@ -0,0 +1,218 @@ + + + + + +self.clearSelectedKeys() +self.selectKey("OK") + + +self.selectInterface() + + + + + + + + +self.clearSelectedKeys() +self.selectKey("OK") +self.selectKey("UP") +self.selectKey("DOWN") + + +self.checkInterface(self.selectedInterface) + + + + + + + +self.clearSelectedKeys() +self.selectKey("OK") +self.selectKey("UP") +self.selectKey("DOWN") +self.selectKey("LEFT") +self.selectKey("RIGHT") + + +self.AdapterSetupEnd(self.selectedInterface) + + + + + + + +self.clearSelectedKeys() +self.selectKey("OK") + + +self.checkNetwork() + + + + +self.condition = (self.InterfaceState == True ) + + + + +self.clearSelectedKeys() +self.selectKey("OK") + + +currStep = self.numSteps +self.wizard[currStep]["nextstep"] = None +self.markDone() +self.close() + + + + +self.condition = (self.InterfaceState == False ) + + + + +self.clearSelectedKeys() +self.selectKey("OK") +self.selectKey("UP") +self.selectKey("DOWN") + + + + + + + + + +self.condition = (self.isInterfaceUp == True and self.WlanPluginInstalled == True) + + + + +self.clearSelectedKeys() +self.selectKey("OK") +self.selectKey("UP") +self.selectKey("DOWN") + + + + + + + + + + +self.condition = (self.isInterfaceUp == True and self.WlanPluginInstalled == True) + + + + + +self.clearSelectedKeys() +self.selectKey("OK") +self.selectKey("UP") +self.selectKey("DOWN") +self.selectKey("LEFT") +self.selectKey("RIGHT") + + +self.checkWlanSelection() + + + + +self.condition = (self.isInterfaceUp == False and self.WlanPluginInstalled == True) + + + + + +self.clearSelectedKeys() +self.selectKey("OK") +self.selectKey("UP") +self.selectKey("DOWN") + + + + +self.condition = (self.isInterfaceUp == True and self.WlanPluginInstalled == False) + + + + + + +self.clearSelectedKeys() +self.selectKey("OK") +self.selectKey("UP") +self.selectKey("DOWN") + + + + + + + +self.clearSelectedKeys() +self.selectKey("OK") +self.selectKey("UP") +self.selectKey("DOWN") +self.selectKey("LEFT") +self.selectKey("RIGHT") + + +self.AdapterSetupEnd(self.selectedInterface) + + + + +self.condition = (self.InterfaceState == True ) + + + + +self.clearSelectedKeys() +self.selectKey("OK") +self["text"].setText(self.Text) + + +currStep = self.numSteps +self.wizard[currStep]["nextstep"] = None +self.markDone() +self.close() + + + + +self.condition = (self.InterfaceState == False ) + + + + +self.clearSelectedKeys() +self.selectKey("OK") +self.selectKey("UP") +self.selectKey("DOWN") + + + + + + + + + + +self.clearSelectedKeys() +self.selectKey("OK") + + + + diff --git a/lib/python/Plugins/SystemPlugins/NetworkWizard/plugin.py b/lib/python/Plugins/SystemPlugins/NetworkWizard/plugin.py new file mode 100644 index 0000000..0fcc74e --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/NetworkWizard/plugin.py @@ -0,0 +1,24 @@ +from Screens.Screen import Screen +from Plugins.Plugin import PluginDescriptor +from Components.config import getConfigListEntry, config, ConfigBoolean + +config.misc.firstrun = ConfigBoolean(default = True) + +def NetworkWizardMain(session, **kwargs): + session.open(NetworkWizard) + +def startSetup(menuid): + if menuid != "system": + return [ ] + + return [(_("Network wizard"), NetworkWizardMain, "nw_wizard", 40)] + +def NetworkWizard(*args, **kwargs): + from NetworkWizard import NetworkWizard + return NetworkWizard(*args, **kwargs) + +def Plugins(**kwargs): + list = [] + if config.misc.firstrun.value: + list.append(PluginDescriptor(name=_("Network wizard"), where = PluginDescriptor.WHERE_WIZARD, needsRestart = False, fnc=(25, NetworkWizard))) + return list diff --git a/lib/python/Plugins/SystemPlugins/OSD3DSetup/Makefile.am b/lib/python/Plugins/SystemPlugins/OSD3DSetup/Makefile.am new file mode 100644 index 0000000..d1ecd72 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/OSD3DSetup/Makefile.am @@ -0,0 +1,5 @@ +installdir = $(pkglibdir)/python/Plugins/SystemPlugins/OSD3DSetup + +install_PYTHON = \ + __init__.py \ + plugin.py diff --git a/lib/python/Plugins/SystemPlugins/OSD3DSetup/__init__.py b/lib/python/Plugins/SystemPlugins/OSD3DSetup/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lib/python/Plugins/SystemPlugins/OSD3DSetup/plugin.py b/lib/python/Plugins/SystemPlugins/OSD3DSetup/plugin.py new file mode 100644 index 0000000..fe99b0d --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/OSD3DSetup/plugin.py @@ -0,0 +1,124 @@ +from Screens.Screen import Screen +from Components.ConfigList import ConfigListScreen +from Components.config import config, ConfigSubsection, ConfigInteger, ConfigSelection, ConfigSlider, getConfigListEntry + +modelist = {"off": _("Off"), "auto": _("Auto"), "sidebyside": _("Side by side"), "topandbottom": _("Top and bottom")} + +config.plugins.OSD3DSetup = ConfigSubsection() +config.plugins.OSD3DSetup.mode = ConfigSelection(choices = modelist, default = "auto") +config.plugins.OSD3DSetup.znorm = ConfigInteger(default = 0) + +PROC_ET_3DMODE = "/proc/stb/fb/3dmode" +PROC_ET_ZNORM = "/proc/stb/fb/znorm" + +PROC_DM_3DMODE = "/proc/stb/fb/primary/3d" +PROC_DM_ZNORM = "/proc/stb/fb/primary/zoffset" + +class OSD3DSetupScreen(Screen, ConfigListScreen): + skin = """ + + + + + + + """ + + def __init__(self, session): + self.skin = OSD3DSetupScreen.skin + Screen.__init__(self, session) + + from Components.ActionMap import ActionMap + from Components.Button import Button + + self["ok"] = Button(_("OK")) + self["cancel"] = Button(_("Cancel")) + + self["actions"] = ActionMap(["SetupActions", "ColorActions", "MenuActions"], + { + "ok": self.keyGo, + "save": self.keyGo, + "cancel": self.keyCancel, + "green": self.keyGo, + "red": self.keyCancel, + "menu": self.closeRecursive, + }, -2) + + self.list = [] + ConfigListScreen.__init__(self, self.list, session = self.session) + + mode = config.plugins.OSD3DSetup.mode.value + znorm = config.plugins.OSD3DSetup.znorm.value + + self.mode = ConfigSelection(choices = modelist, default = mode) + self.znorm = ConfigSlider(default = znorm + 50, increment = 1, limits = (0, 100)) + self.list.append(getConfigListEntry(_("3d mode"), self.mode)) + self.list.append(getConfigListEntry(_("Depth"), self.znorm)) + self["config"].list = self.list + self["config"].l.setList(self.list) + + def keyLeft(self): + ConfigListScreen.keyLeft(self) + self.setPreviewSettings() + + def keyRight(self): + ConfigListScreen.keyRight(self) + self.setPreviewSettings() + + def setPreviewSettings(self): + applySettings(self.mode.value, int(self.znorm.value) - 50) + + def keyGo(self): + config.plugins.OSD3DSetup.mode.value = self.mode.value + config.plugins.OSD3DSetup.znorm.value = int(self.znorm.value) - 50 + config.plugins.OSD3DSetup.save() + self.close() + + def keyCancel(self): + setConfiguredSettings() + self.close() + +def applySettings(mode, znorm): + path_mode = "" + path_znorm = "" + from os import path + if path.exists(PROC_ET_3DMODE): + path_mode = PROC_ET_3DMODE + path_znorm = PROC_ET_ZNORM + elif path.exists(PROC_DM_3DMODE): + path_mode = PROC_DM_3DMODE + path_znorm = PROC_DM_ZNORM + if mode == 'sidebyside': + mode = 'sbs' + elif mode == 'topandbottom': + mode = 'tab' + else: + mode = 'off' + else: + return + try: + file = open(path_mode, "w") + file.write(mode) + file.close() + file = open(path_znorm, "w") + file.write('%d' % znorm) + file.close() + except: + return + +def setConfiguredSettings(): + applySettings(config.plugins.OSD3DSetup.mode.value, int(config.plugins.OSD3DSetup.znorm.value)) + +def main(session, **kwargs): + session.open(OSD3DSetupScreen) + +def startup(reason, **kwargs): + setConfiguredSettings() + +def Plugins(**kwargs): + from os import path + if path.exists(PROC_ET_3DMODE) or path.exists(PROC_DM_3DMODE): + from Plugins.Plugin import PluginDescriptor + return [PluginDescriptor(name = "OSD 3D setup", description = _("Adjust 3D settings"), where = PluginDescriptor.WHERE_PLUGINMENU, fnc = main), + PluginDescriptor(name = "OSD 3D setup", description = "", where = PluginDescriptor.WHERE_SESSIONSTART, fnc = startup)] + return [] diff --git a/lib/python/Plugins/SystemPlugins/OSDPositionSetup/Makefile.am b/lib/python/Plugins/SystemPlugins/OSDPositionSetup/Makefile.am new file mode 100644 index 0000000..2b505b2 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/OSDPositionSetup/Makefile.am @@ -0,0 +1,5 @@ +installdir = $(pkglibdir)/python/Plugins/SystemPlugins/OSDPositionSetup + +install_PYTHON = \ + __init__.py \ + plugin.py diff --git a/lib/python/Plugins/SystemPlugins/OSDPositionSetup/__init__.py b/lib/python/Plugins/SystemPlugins/OSDPositionSetup/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lib/python/Plugins/SystemPlugins/OSDPositionSetup/plugin.py b/lib/python/Plugins/SystemPlugins/OSDPositionSetup/plugin.py new file mode 100644 index 0000000..96a427c --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/OSDPositionSetup/plugin.py @@ -0,0 +1,119 @@ +from Screens.Screen import Screen +from Components.ConfigList import ConfigListScreen +from Components.config import config, ConfigSubsection, ConfigInteger, ConfigSlider, getConfigListEntry + +config.plugins.OSDPositionSetup = ConfigSubsection() +config.plugins.OSDPositionSetup.dst_left = ConfigInteger(default = 0) +config.plugins.OSDPositionSetup.dst_width = ConfigInteger(default = 720) +config.plugins.OSDPositionSetup.dst_top = ConfigInteger(default = 0) +config.plugins.OSDPositionSetup.dst_height = ConfigInteger(default = 576) + +class OSDScreenPosition(Screen, ConfigListScreen): + skin = """ + + + + + + + """ + + def __init__(self, session): + self.skin = OSDScreenPosition.skin + Screen.__init__(self, session) + + from Components.ActionMap import ActionMap + from Components.Button import Button + + self["ok"] = Button(_("OK")) + self["cancel"] = Button(_("Cancel")) + + self["actions"] = ActionMap(["SetupActions", "ColorActions", "MenuActions"], + { + "ok": self.keyGo, + "save": self.keyGo, + "cancel": self.keyCancel, + "green": self.keyGo, + "red": self.keyCancel, + "menu": self.closeRecursive, + }, -2) + + self.list = [] + ConfigListScreen.__init__(self, self.list, session = self.session) + + left = config.plugins.OSDPositionSetup.dst_left.value + width = config.plugins.OSDPositionSetup.dst_width.value + top = config.plugins.OSDPositionSetup.dst_top.value + height = config.plugins.OSDPositionSetup.dst_height.value + + self.dst_left = ConfigSlider(default = left, increment = 1, limits = (0, 720)) + self.dst_width = ConfigSlider(default = width, increment = 1, limits = (0, 720)) + self.dst_top = ConfigSlider(default = top, increment = 1, limits = (0, 576)) + self.dst_height = ConfigSlider(default = height, increment = 1, limits = (0, 576)) + self.list.append(getConfigListEntry(_("left"), self.dst_left)) + self.list.append(getConfigListEntry(_("width"), self.dst_width)) + self.list.append(getConfigListEntry(_("top"), self.dst_top)) + self.list.append(getConfigListEntry(_("height"), self.dst_height)) + self["config"].list = self.list + self["config"].l.setList(self.list) + + def keyLeft(self): + ConfigListScreen.keyLeft(self) + self.setPreviewPosition() + + def keyRight(self): + ConfigListScreen.keyRight(self) + self.setPreviewPosition() + + def setPreviewPosition(self): + setPosition(int(self.dst_left.value), int(self.dst_width.value), int(self.dst_top.value), int(self.dst_height.value)) + + def keyGo(self): + config.plugins.OSDPositionSetup.dst_left.value = self.dst_left.value + config.plugins.OSDPositionSetup.dst_width.value = self.dst_width.value + config.plugins.OSDPositionSetup.dst_top.value = self.dst_top.value + config.plugins.OSDPositionSetup.dst_height.value = self.dst_height.value + config.plugins.OSDPositionSetup.save() + self.close() + + def keyCancel(self): + setConfiguredPosition() + self.close() + +def setPosition(dst_left, dst_width, dst_top, dst_height): + if dst_left + dst_width > 720: + dst_width = 720 - dst_left + if dst_top + dst_height > 576: + dst_height = 576 - dst_top + try: + file = open("/proc/stb/fb/dst_left", "w") + file.write('%X' % dst_left) + file.close() + file = open("/proc/stb/fb/dst_width", "w") + file.write('%X' % dst_width) + file.close() + file = open("/proc/stb/fb/dst_top", "w") + file.write('%X' % dst_top) + file.close() + file = open("/proc/stb/fb/dst_height", "w") + file.write('%X' % dst_height) + file.close() + except: + return + +def setConfiguredPosition(): + setPosition(int(config.plugins.OSDPositionSetup.dst_left.value), int(config.plugins.OSDPositionSetup.dst_width.value), int(config.plugins.OSDPositionSetup.dst_top.value), int(config.plugins.OSDPositionSetup.dst_height.value)) + +def main(session, **kwargs): + session.open(OSDScreenPosition) + +def startup(reason, **kwargs): + setConfiguredPosition() + +def Plugins(**kwargs): + from os import path + if path.exists("/proc/stb/fb/dst_left"): + from Plugins.Plugin import PluginDescriptor + return [PluginDescriptor(name = "OSD position setup", description = "Compensate for overscan", where = PluginDescriptor.WHERE_PLUGINMENU, fnc = main), + PluginDescriptor(name = "OSD position setup", description = "", where = PluginDescriptor.WHERE_SESSIONSTART, fnc = startup)] + return [] diff --git a/lib/python/Plugins/SystemPlugins/PositionerSetup/Makefile.am b/lib/python/Plugins/SystemPlugins/PositionerSetup/Makefile.am new file mode 100644 index 0000000..0d67b32 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/PositionerSetup/Makefile.am @@ -0,0 +1,9 @@ +installdir = $(pkglibdir)/python/Plugins/SystemPlugins/PositionerSetup + +SUBDIRS = meta + +install_PYTHON = \ + __init__.py \ + plugin.py log.py rotor_calc.py + + diff --git a/lib/python/Plugins/SystemPlugins/PositionerSetup/PositionerSetup.pdf b/lib/python/Plugins/SystemPlugins/PositionerSetup/PositionerSetup.pdf new file mode 100644 index 0000000..7d815ee Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/PositionerSetup/PositionerSetup.pdf differ diff --git a/lib/python/Plugins/SystemPlugins/PositionerSetup/__init__.py b/lib/python/Plugins/SystemPlugins/PositionerSetup/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lib/python/Plugins/SystemPlugins/PositionerSetup/log.py b/lib/python/Plugins/SystemPlugins/PositionerSetup/log.py new file mode 100644 index 0000000..47995bf --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/PositionerSetup/log.py @@ -0,0 +1,53 @@ +# logging for XMLTV importer +# +# One can simply use +# import log +# print>>log, "Some text" +# because the log unit looks enough like a file! + +import sys +from cStringIO import StringIO +import threading + +logfile = None +# Need to make our operations thread-safe. +mutex = None + +size = None + +def open(buffersize = 16384): + global logfile, mutex, size + if logfile is None: + logfile = StringIO() + mutex = threading.Lock() + size = buffersize + +def write(data): + global logfile, mutex + mutex.acquire() + try: + if logfile.tell() > size: + # Do a sort of 16k round robin + logfile.reset() + logfile.write(data) + finally: + mutex.release() + sys.stdout.write(data) + +def getvalue(): + global logfile, mutex + mutex.acquire() + try: + pos = logfile.tell() + head = logfile.read() + logfile.reset() + tail = logfile.read(pos) + finally: + mutex.release() + return head + tail + +def close(): + global logfile + if logfile: + logfile.close() + logfile = None diff --git a/lib/python/Plugins/SystemPlugins/PositionerSetup/meta/Makefile.am b/lib/python/Plugins/SystemPlugins/PositionerSetup/meta/Makefile.am new file mode 100644 index 0000000..a6b296c --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/PositionerSetup/meta/Makefile.am @@ -0,0 +1,5 @@ +installdir = $(datadir)/meta + +dist_install_DATA = plugin_positionersetup.xml + +EXTRA_DIST = positionersetup.jpg diff --git a/lib/python/Plugins/SystemPlugins/PositionerSetup/meta/plugin_positionersetup.xml b/lib/python/Plugins/SystemPlugins/PositionerSetup/meta/plugin_positionersetup.xml new file mode 100644 index 0000000..5e1db7b --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/PositionerSetup/meta/plugin_positionersetup.xml @@ -0,0 +1,20 @@ + + + + + + + Dream Multimedia + PositionerSetup + enigma2-plugin-systemplugins-positionersetup + PositionerSetup helps you installing a motorized dish + With the PositionerSetup plugin it is easy to install and configure a motorized dish. + + + + + + + + + diff --git a/lib/python/Plugins/SystemPlugins/PositionerSetup/meta/positionersetup.jpg b/lib/python/Plugins/SystemPlugins/PositionerSetup/meta/positionersetup.jpg new file mode 100644 index 0000000..7f8d8d2 Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/PositionerSetup/meta/positionersetup.jpg differ diff --git a/lib/python/Plugins/SystemPlugins/PositionerSetup/plugin.py b/lib/python/Plugins/SystemPlugins/PositionerSetup/plugin.py new file mode 100644 index 0000000..f3efecb --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/PositionerSetup/plugin.py @@ -0,0 +1,1350 @@ +from enigma import eTimer, eDVBSatelliteEquipmentControl, eDVBResourceManager, \ + eDVBDiseqcCommand, eDVBFrontendParametersSatellite, eDVBFrontendParameters,\ + iDVBFrontend + +from Screens.Screen import Screen +from Screens.MessageBox import MessageBox +from Plugins.Plugin import PluginDescriptor + +from Components.Label import Label +from Components.Button import Button +from Components.ConfigList import ConfigList +from Components.ConfigList import ConfigListScreen +from Components.TunerInfo import TunerInfo +from Components.ActionMap import NumberActionMap, ActionMap +from Components.NimManager import nimmanager +from Components.MenuList import MenuList +from Components.ScrollLabel import ScrollLabel +from Components.config import config, ConfigSatlist, ConfigNothing, ConfigSelection, \ + ConfigSubsection, ConfigInteger, ConfigFloat, KEY_LEFT, KEY_RIGHT, KEY_0, getConfigListEntry +from Components.TuneTest import Tuner +from Tools.Transponder import ConvertToHumanReadable + +from time import sleep +from operator import mul as mul +from random import SystemRandom as SystemRandom +from threading import Thread as Thread +from threading import Event as Event + +import log +import rotor_calc + +class PositionerSetup(Screen): + + @staticmethod + def satposition2metric(position): + if position > 1800: + position = 3600 - position + orientation = "west" + else: + orientation = "east" + return (position, orientation) + + @staticmethod + def orbital2metric(position, orientation): + if orientation == "west": + position = 360 - position + if orientation == "south": + position = - position + return position + + @staticmethod + def longitude2orbital(position): + if position >= 180: + return 360 - position, "west" + else: + return position, "east" + + @staticmethod + def latitude2orbital(position): + if position >= 0: + return position, "north" + else: + return -position, "south" + + UPDATE_INTERVAL = 50 # milliseconds + STATUS_MSG_TIMEOUT = 2 # seconds + LOG_SIZE = 16 * 1024 # log buffer size + + def __init__(self, session, feid): + self.session = session + Screen.__init__(self, session) + self.feid = feid + self.oldref = None + log.open(self.LOG_SIZE) + if config.Nims[self.feid].configMode.value == 'advanced': + self.advanced = True + self.advancedconfig = config.Nims[self.feid].advanced + self.advancedsats = self.advancedconfig.sat + self.availablesats = map(lambda x: x[0], nimmanager.getRotorSatListForNim(self.feid)) + else: + self.advanced = False + + cur = { } + if not self.openFrontend(): + self.oldref = session.nav.getCurrentlyPlayingServiceReference() + service = session.nav.getCurrentService() + feInfo = service and service.frontendInfo() + if feInfo: + cur = feInfo.getTransponderData(True) + del feInfo + del service + session.nav.stopService() # try to disable foreground service + if not self.openFrontend(): + if session.pipshown: # try to disable pip + service = self.session.pip.pipservice + feInfo = service and service.frontendInfo() + if feInfo: + cur = feInfo.getTransponderData(True) + del feInfo + del service + from Screens.InfoBar import InfoBar + InfoBar.instance and hasattr(InfoBar.instance, "showPiP") and InfoBar.instance.showPiP() + if not self.openFrontend(): + self.frontend = None # in normal case this should not happen + if hasattr(self, 'raw_channel'): + del self.raw_channel + + self.frontendStatus = { } + self.diseqc = Diseqc(self.frontend) + # True means we dont like that the normal sec stuff sends commands to the rotor! + self.tuner = Tuner(self.frontend, ignore_rotor = True) + + tp = ( cur.get("frequency", 0) / 1000, + cur.get("symbol_rate", 0) / 1000, + cur.get("polarization", eDVBFrontendParametersSatellite.Polarisation_Horizontal), + cur.get("fec_inner", eDVBFrontendParametersSatellite.FEC_Auto), + cur.get("inversion", eDVBFrontendParametersSatellite.Inversion_Unknown), + cur.get("orbital_position", 0), + cur.get("system", eDVBFrontendParametersSatellite.System_DVB_S), + cur.get("modulation", eDVBFrontendParametersSatellite.Modulation_QPSK), + cur.get("rolloff", eDVBFrontendParametersSatellite.RollOff_alpha_0_35), + cur.get("pilot", eDVBFrontendParametersSatellite.Pilot_Unknown)) + + self.tuner.tune(tp) + self.isMoving = False + self.stopOnLock = False + + self.red = Button("") + self["key_red"] = self.red + self.green = Button("") + self["key_green"] = self.green + self.yellow = Button("") + self["key_yellow"] = self.yellow + self.blue = Button("") + self["key_blue"] = self.blue + + self.list = [] + self["list"] = ConfigList(self.list) + + self["snr_db"] = TunerInfo(TunerInfo.SNR_DB, statusDict = self.frontendStatus) + self["snr_percentage"] = TunerInfo(TunerInfo.SNR_PERCENTAGE, statusDict = self.frontendStatus) + self["ber_value"] = TunerInfo(TunerInfo.BER_VALUE, statusDict = self.frontendStatus) + self["snr_bar"] = TunerInfo(TunerInfo.SNR_BAR, statusDict = self.frontendStatus) + self["ber_bar"] = TunerInfo(TunerInfo.BER_BAR, statusDict = self.frontendStatus) + self["lock_state"] = TunerInfo(TunerInfo.LOCK_STATE, statusDict = self.frontendStatus) + + self["frequency_value"] = Label("") + self["symbolrate_value"] = Label("") + self["fec_value"] = Label("") + self["polarisation"] = Label("") + self["status_bar"] = Label("") + self.statusMsgTimeoutTicks = 0 + self.statusMsgBlinking = False + self.statusMsgBlinkCount = 0 + self.statusMsgBlinkRate = 500 / self.UPDATE_INTERVAL # milliseconds + self.tuningChangedTo(tp) + + self["actions"] = NumberActionMap(["DirectionActions", "OkCancelActions", "ColorActions", "TimerEditActions", "InputActions"], + { + "ok": self.keyOK, + "cancel": self.keyCancel, + "up": self.keyUp, + "down": self.keyDown, + "left": self.keyLeft, + "right": self.keyRight, + "red": self.redKey, + "green": self.greenKey, + "yellow": self.yellowKey, + "blue": self.blueKey, + "log": self.showLog, + "1": self.keyNumberGlobal, + "2": self.keyNumberGlobal, + "3": self.keyNumberGlobal, + "4": self.keyNumberGlobal, + "5": self.keyNumberGlobal, + "6": self.keyNumberGlobal, + "7": self.keyNumberGlobal, + "8": self.keyNumberGlobal, + "9": self.keyNumberGlobal, + "0": self.keyNumberGlobal + }, -1) + + self.updateColors("tune") + + self.statusTimer = eTimer() + self.statusTimer.callback.append(self.updateStatus) + self.collectingStatistics = False + self.statusTimer.start(self.UPDATE_INTERVAL, True) + self.dataAvailable = Event() + self.onClose.append(self.__onClose) + + self.createConfig() + self.createSetup() + + def __onClose(self): + self.statusTimer.stop() + log.close(); + self.session.nav.playService(self.oldref) + + def restartPrevService(self, yesno): + if yesno: + if self.frontend: + self.frontend = None + del self.raw_channel + else: + self.oldref=None + self.close(None) + + def keyCancel(self): + if self.oldref: + self.session.openWithCallback(self.restartPrevService, MessageBox, _("Zap back to service before positioner setup?"), MessageBox.TYPE_YESNO) + else: + self.restartPrevService(False) + + def openFrontend(self): + res_mgr = eDVBResourceManager.getInstance() + if res_mgr: + self.raw_channel = res_mgr.allocateRawChannel(self.feid) + if self.raw_channel: + self.frontend = self.raw_channel.getFrontend() + if self.frontend: + return True + else: + print "getFrontend failed" + else: + print "getRawChannel failed" + else: + print "getResourceManager instance failed" + return False + + def setLNB(self, lnb): + try: + self.sitelon = lnb.longitude.float + self.longitudeOrientation = lnb.longitudeOrientation.value + self.sitelat = lnb.latitude.float + self.latitudeOrientation = lnb.latitudeOrientation.value + self.tuningstepsize = lnb.tuningstepsize.float + self.rotorPositions = lnb.rotorPositions.value + self.turningspeedH = lnb.turningspeedH.float + self.turningspeedV = lnb.turningspeedV.float + except: # some reasonable defaults from NimManager + self.sitelon = 5.1 + self.longitudeOrientation = 'east' + self.sitelat = 50.767 + self.latitudeOrientation = 'north' + self.tuningstepsize = 0.36 + self.rotorPositions = 99 + self.turningspeedH = 2.3 + self.turningspeedV = 1.7 + self.sitelat = PositionerSetup.orbital2metric(self.sitelat, self.latitudeOrientation) + self.sitelon = PositionerSetup.orbital2metric(self.sitelon, self.longitudeOrientation) + + def getLNBfromConfig(self, orb_pos): + lnb = None + if orb_pos in self.availablesats: + lnbnum = int(self.advancedsats[orb_pos].lnb.value) + if not lnbnum: + for allsats in range(3601, 3607): + lnbnum = int(self.advancedsats[allsats].lnb.value) + if lnbnum: + break + if lnbnum: + self.printMsg(_("Using LNB %d") % lnbnum) + lnb = self.advancedconfig.lnb[lnbnum] + if not lnb: + self.logMsg(_("Warning: no LNB; using factory defaults."), timeout = 4) + return lnb + + def createConfig(self): + rotorposition = 1 + orb_pos = 0 + self.printMsg(_("Using tuner %s") % chr(0x41 + self.feid)) + if not self.advanced: + self.printMsg(_("Configuration mode: %s") % _("simple")) + nim = config.Nims[self.feid] + self.sitelon = nim.longitude.float + self.longitudeOrientation = nim.longitudeOrientation.value + self.sitelat = nim.latitude.float + self.latitudeOrientation = nim.latitudeOrientation.value + self.sitelat = PositionerSetup.orbital2metric(self.sitelat, self.latitudeOrientation) + self.sitelon = PositionerSetup.orbital2metric(self.sitelon, self.longitudeOrientation) + self.tuningstepsize = nim.tuningstepsize.float + self.rotorPositions = nim.rotorPositions.value + self.turningspeedH = nim.turningspeedH.float + self.turningspeedV = nim.turningspeedV.float + else: # it is advanced + self.printMsg(_("Configuration mode: %s") % _("advanced")) + fe_data = { } + self.frontend.getFrontendData(fe_data) + self.frontend.getTransponderData(fe_data, True) + orb_pos = fe_data.get("orbital_position", None) + if orb_pos in self.availablesats: + rotorposition = int(self.advancedsats[orb_pos].rotorposition.value) + self.setLNB(self.getLNBfromConfig(orb_pos)) + self.positioner_tune = ConfigNothing() + self.positioner_move = ConfigNothing() + self.positioner_finemove = ConfigNothing() + self.positioner_limits = ConfigNothing() + self.positioner_storage = ConfigInteger(default = rotorposition, limits = (1, self.rotorPositions)) + self.allocatedIndices = [] + m = PositionerSetup.satposition2metric(orb_pos) + self.orbitalposition = ConfigFloat(default = [int(m[0] / 10), m[0] % 10], limits = [(0,180),(0,9)]) + self.orientation = ConfigSelection([("east", _("East")), ("west", _("West"))], m[1]) + + def createSetup(self): + self.list.append((_("Tune and focus"), self.positioner_tune, "tune")) + self.list.append((_("Movement"), self.positioner_move, "move")) + self.list.append((_("Fine movement"), self.positioner_finemove, "finemove")) + self.list.append((_("Set limits"), self.positioner_limits, "limits")) + self.list.append((_("Memory index"), self.positioner_storage, "storage")) + self.list.append((_("Goto"), self.orbitalposition, "goto")) + self.list.append((" ", self.orientation, "goto")) + self["list"].l.setList(self.list) + + def keyOK(self): + pass + + def getCurrentConfigPath(self): + return self["list"].getCurrent()[2] + + def keyUp(self): + if not self.isMoving: + self["list"].instance.moveSelection(self["list"].instance.moveUp) + self.updateColors(self.getCurrentConfigPath()) + + def keyDown(self): + if not self.isMoving: + self["list"].instance.moveSelection(self["list"].instance.moveDown) + self.updateColors(self.getCurrentConfigPath()) + + def keyNumberGlobal(self, number): + self["list"].handleKey(KEY_0 + number) + + def keyLeft(self): + self["list"].handleKey(KEY_LEFT) + + def keyRight(self): + self["list"].handleKey(KEY_RIGHT) + + def updateColors(self, entry): + if entry == "tune": + self.red.setText(_("Tune")) + self.green.setText(_("Auto focus")) + self.yellow.setText(_("Calibrate")) + self.blue.setText(_("Calculate")) + elif entry == "move": + if self.isMoving: + self.red.setText(_("Stop")) + self.green.setText(_("Stop")) + self.yellow.setText(_("Stop")) + self.blue.setText(_("Stop")) + else: + self.red.setText(_("Move west")) + self.green.setText(_("Search west")) + self.yellow.setText(_("Search east")) + self.blue.setText(_("Move east")) + elif entry == "finemove": + self.red.setText("") + self.green.setText(_("Step west")) + self.yellow.setText(_("Step east")) + self.blue.setText("") + elif entry == "limits": + self.red.setText(_("Limits off")) + self.green.setText(_("Limit west")) + self.yellow.setText(_("Limit east")) + self.blue.setText(_("Limits on")) + elif entry == "storage": + self.red.setText("") + self.green.setText(_("Store position")) + self.yellow.setText(_("Goto position")) + if self.advanced: + self.blue.setText(_("Allocate")) + else: + self.blue.setText("") + elif entry == "goto": + self.red.setText("") + self.green.setText(_("Goto 0")) + self.yellow.setText(_("Goto X")) + self.blue.setText("") + else: + self.red.setText("") + self.green.setText("") + self.yellow.setText("") + self.blue.setText("") + + def printMsg(self, msg): + print msg + print>>log, msg + + def stopMoving(self): + self.printMsg(_("Stop")) + self.diseqccommand("stop") + self.isMoving = False + self.stopOnLock = False + self.statusMsg(_("Stopped"), timeout = self.STATUS_MSG_TIMEOUT) + + def redKey(self): + entry = self.getCurrentConfigPath() + if entry == "move": + if self.isMoving: + self.stopMoving() + else: + self.printMsg(_("Move west")) + self.diseqccommand("moveWest", 0) + self.isMoving = True + self.statusMsg(_("Moving west ..."), blinking = True) + self.updateColors("move") + elif entry == "limits": + self.printMsg(_("Limits off")) + self.diseqccommand("limitOff") + self.statusMsg(_("Limits cancelled"), timeout = self.STATUS_MSG_TIMEOUT) + elif entry == "tune": + fe_data = { } + self.frontend.getFrontendData(fe_data) + self.frontend.getTransponderData(fe_data, True) + feparm = self.tuner.lastparm.getDVBS() + fe_data["orbital_position"] = feparm.orbital_position + self.statusTimer.stop() + self.session.openWithCallback(self.tune, TunerScreen, self.feid, fe_data) + + def greenKey(self): + entry = self.getCurrentConfigPath() + if entry == "tune": + # Auto focus + self.printMsg(_("Auto focus")) + print>>log, (_("Site latitude") + " : %5.1f %s") % PositionerSetup.latitude2orbital(self.sitelat) + print>>log, (_("Site longitude") + " : %5.1f %s") % PositionerSetup.longitude2orbital(self.sitelon) + Thread(target = self.autofocus).start() + elif entry == "move": + if self.isMoving: + self.stopMoving() + else: + self.printMsg(_("Search west")) + self.isMoving = True + self.stopOnLock = True + self.diseqccommand("moveWest", 0) + self.statusMsg(_("Searching west ..."), blinking = True) + self.updateColors("move") + elif entry == "finemove": + self.printMsg(_("Step west")) + self.diseqccommand("moveWest", 0xFF) # one step + self.statusMsg(_("Stepped west"), timeout = self.STATUS_MSG_TIMEOUT) + elif entry == "storage": + self.printMsg(_("Store at index")) + index = int(self.positioner_storage.value) + self.diseqccommand("store", index) + self.statusMsg((_("Position stored at index") + " %2d") % index, timeout = self.STATUS_MSG_TIMEOUT) + elif entry == "limits": + self.printMsg(_("Limit west")) + self.diseqccommand("limitWest") + self.statusMsg(_("West limit set"), timeout = self.STATUS_MSG_TIMEOUT) + elif entry == "goto": + self.printMsg(_("Goto 0")) + self.diseqccommand("moveTo", 0) + self.statusMsg(_("Moved to position 0"), timeout = self.STATUS_MSG_TIMEOUT) + + def yellowKey(self): + entry = self.getCurrentConfigPath() + if entry == "move": + if self.isMoving: + self.stopMoving() + else: + self.printMsg(_("Move east")) + self.isMoving = True + self.stopOnLock = True + self.diseqccommand("moveEast", 0) + self.statusMsg(_("Searching east ..."), blinking = True) + self.updateColors("move") + elif entry == "finemove": + self.printMsg(_("Step east")) + self.diseqccommand("moveEast", 0xFF) # one step + self.statusMsg(_("Stepped east"), timeout = self.STATUS_MSG_TIMEOUT) + elif entry == "storage": + self.printMsg(_("Goto index position")) + index = int(self.positioner_storage.value) + self.diseqccommand("moveTo", index) + self.statusMsg((_("Moved to position at index") + " %2d") % index, timeout = self.STATUS_MSG_TIMEOUT) + elif entry == "limits": + self.printMsg(_("Limit east")) + self.diseqccommand("limitEast") + self.statusMsg(_("East limit set"), timeout = self.STATUS_MSG_TIMEOUT) + elif entry == "goto": + self.printMsg(_("Move to position X")) + satlon = self.orbitalposition.float + position = ("%5.1f %s") % (satlon, self.orientation.value) + print>>log, (_("Satellite longitude:") + " %s") % position + satlon = PositionerSetup.orbital2metric(satlon, self.orientation.value) + self.statusMsg((_("Moving to position") + " %s") % position, timeout = self.STATUS_MSG_TIMEOUT) + self.gotoX(satlon) + elif entry == "tune": + # Start USALS calibration + self.printMsg(_("USALS calibration")) + print>>log, (_("Site latitude") + " : %5.1f %s") % PositionerSetup.latitude2orbital(self.sitelat) + print>>log, (_("Site longitude") + " : %5.1f %s") % PositionerSetup.longitude2orbital(self.sitelon) + Thread(target = self.gotoXcalibration).start() + + def blueKey(self): + entry = self.getCurrentConfigPath() + if entry == "move": + if self.isMoving: + self.stopMoving() + else: + self.printMsg(_("Move east")) + self.diseqccommand("moveEast", 0) + self.isMoving = True + self.statusMsg(_("Moving east ..."), blinking = True) + self.updateColors("move") + elif entry == "limits": + self.printMsg(_("Limits on")) + self.diseqccommand("limitOn") + self.statusMsg(_("Limits enabled"), timeout = self.STATUS_MSG_TIMEOUT) + elif entry == "tune": + # Start (re-)calculate + self.session.openWithCallback(self.recalcConfirmed, MessageBox, _("This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\nAre you sure?"), MessageBox.TYPE_YESNO, default = False, timeout = 10) + elif entry == "storage": + if self.advanced: + self.printMsg(_("Allocate unused memory index")) + while(True): + if not len(self.allocatedIndices): + for sat in self.availablesats: + current_index = int(self.advancedsats[sat].rotorposition.value) + if current_index not in self.allocatedIndices: + self.allocatedIndices.append(current_index) + if len(self.allocatedIndices) == self.rotorPositions: + self.statusMsg(_("No free index available"), timeout = self.STATUS_MSG_TIMEOUT) + break + index = 1 + if len(self.allocatedIndices): + for i in sorted(self.allocatedIndices): + if i != index: + break + index += 1 + if index <= self.rotorPositions: + self.positioner_storage.value = index + self["list"].invalidateCurrent() + self.allocatedIndices.append(index) + self.statusMsg((_("Index allocated:") + " %2d") % index, timeout = self.STATUS_MSG_TIMEOUT) + break + else: + self.allocatedIndices = [] + + def recalcConfirmed(self, yesno): + if yesno: + self.printMsg(_("Calculate all positions")) + print>>log, (_("Site latitude") + " : %5.1f %s") % PositionerSetup.latitude2orbital(self.sitelat) + print>>log, (_("Site longitude") + " : %5.1f %s") % PositionerSetup.longitude2orbital(self.sitelon) + lon = self.sitelon + if lon >= 180: + lon -= 360 + if lon < -30: # americas, make unsigned binary west positive polarity + lon = -lon + lon = int(round(lon)) & 0xFF + lat = int(round(self.sitelat)) & 0xFF + index = int(self.positioner_storage.value) & 0xFF + self.diseqccommand("calc", (((index << 8) | lon) << 8) | lat) + self.statusMsg(_("Calculation complete"), timeout = self.STATUS_MSG_TIMEOUT) + + def showLog(self): + self.session.open(PositionerSetupLog) + + def diseqccommand(self, cmd, param = 0): + print>>log, "Diseqc(%s, %X)" % (cmd, param) + self.diseqc.command(cmd, param) + self.tuner.retune() + + def tune(self, transponder): + # re-start the update timer + self.statusTimer.start(self.UPDATE_INTERVAL, True) + if transponder is not None: + self.tuner.tune(transponder) + self.tuningChangedTo(transponder) + feparm = self.tuner.lastparm.getDVBS() + orb_pos = feparm.orbital_position + m = PositionerSetup.satposition2metric(orb_pos) + self.orbitalposition.value = [int(m[0] / 10), m[0] % 10] + self.orientation.value = m[1] + if self.advanced: + if orb_pos in self.availablesats: + rotorposition = int(self.advancedsats[orb_pos].rotorposition.value) + self.positioner_storage.value = rotorposition + self.allocatedIndices = [] + self.setLNB(self.getLNBfromConfig(orb_pos)) + + def isLocked(self): + return self.frontendStatus.get("tuner_locked", 0) == 1 + + def statusMsg(self, msg, blinking = False, timeout = 0): # timeout in seconds + self.statusMsgBlinking = blinking + if not blinking: + self["status_bar"].visible = True + self["status_bar"].setText(msg) + self.statusMsgTimeoutTicks = (timeout * 1000 + self.UPDATE_INTERVAL / 2) / self.UPDATE_INTERVAL + + def updateStatus(self): + self.statusTimer.start(self.UPDATE_INTERVAL, True) + if self.frontend: + self.frontend.getFrontendStatus(self.frontendStatus) + self["snr_db"].update() + self["snr_percentage"].update() + self["ber_value"].update() + self["snr_bar"].update() + self["ber_bar"].update() + self["lock_state"].update() + if self.statusMsgBlinking: + self.statusMsgBlinkCount += 1 + if self.statusMsgBlinkCount == self.statusMsgBlinkRate: + self.statusMsgBlinkCount = 0 + self["status_bar"].visible = not self["status_bar"].visible + if self.statusMsgTimeoutTicks > 0: + self.statusMsgTimeoutTicks -= 1 + if self.statusMsgTimeoutTicks == 0: + self["status_bar"].setText("") + self.statusMsgBlinking = False + self["status_bar"].visible = True + if self.isLocked() and self.isMoving and self.stopOnLock: + self.stopMoving() + self.updateColors(self.getCurrentConfigPath()) + if self.collectingStatistics: + self.low_rate_adapter_count += 1 + if self.low_rate_adapter_count == self.MAX_LOW_RATE_ADAPTER_COUNT: + self.low_rate_adapter_count = 0 + self.snr_percentage += self["snr_percentage"].getValue(TunerInfo.SNR) + self.lock_count += self["lock_state"].getValue(TunerInfo.LOCK) + self.stat_count += 1 + if self.stat_count == self.max_count: + self.collectingStatistics = False + count = float(self.stat_count) + self.lock_count /= count + self.snr_percentage *= 100.0 / 0x10000 / count + self.dataAvailable.set() + + def tuningChangedTo(self, tp): + + def setLowRateAdapterCount(symbolrate): + # change the measurement time and update interval in case of low symbol rate, + # since more time is needed for the front end in that case. + # It is an heuristic determination without any pretence. For symbol rates + # of 5000 the interval is multiplied by 3 until 15000 which is seen + # as a high symbol rate. Linear interpolation elsewhere. + return max(int(round((3 - 1) * (symbolrate - 15000) / (5000 - 15000) + 1)), 1) + + self.symbolrate = tp[1] + self.polarisation = tp[2] + self.MAX_LOW_RATE_ADAPTER_COUNT = setLowRateAdapterCount(self.symbolrate) + transponderdata = ConvertToHumanReadable(self.tuner.getTransponderData(), "DVB-S") + frequency = transponderdata.get("frequency") + if frequency: + frequency_text = str(frequency / 1000) + else: + frequency_text = "" + self["frequency_value"].setText(frequency_text) + symbolrate = transponderdata.get("symbol_rate") + if symbolrate: + symbolrate_text = str(symbolrate / 1000) + else: + symbolrate_text = "" + self["symbolrate_value"].setText(symbolrate_text) + fec_inner = transponderdata.get("fec_inner") + if fec_inner: + fec_text = str(fec_inner) + else: + fec_text = "" + self["fec_value"].setText(fec_text) + polarisation = transponderdata.get("polarization") + if polarisation: + polarisation_text = str(polarisation) + else: + polarisation_text = "" + self["polarisation"].setText(polarisation_text) + + @staticmethod + def rotorCmd2Step(rotorCmd, stepsize): + return round(float(rotorCmd & 0xFFF) / 0x10 / stepsize) * (1 - ((rotorCmd & 0x1000) >> 11)) + + @staticmethod + def gotoXcalc(satlon, sitelat, sitelon): + def azimuth2Rotorcode(angle): + gotoXtable = (0x00, 0x02, 0x03, 0x05, 0x06, 0x08, 0x0A, 0x0B, 0x0D, 0x0E) + a = int(round(abs(angle) * 10.0)) + return ((a / 10) << 4) + gotoXtable[a % 10] + + satHourAngle = rotor_calc.calcSatHourangle(satlon, sitelat, sitelon) + if sitelat >= 0: # Northern Hemisphere + rotorCmd = azimuth2Rotorcode(180 - satHourAngle) + if satHourAngle <= 180: # the east + rotorCmd |= 0xE000 + else: # west + rotorCmd |= 0xD000 + else: # Southern Hemisphere + if satHourAngle <= 180: # the east + rotorCmd = azimuth2Rotorcode(satHourAngle) | 0xD000 + else: # west + rotorCmd = azimuth2Rotorcode(360 - satHourAngle) | 0xE000 + return rotorCmd + + def gotoX(self, satlon): + rotorCmd = PositionerSetup.gotoXcalc(satlon, self.sitelat, self.sitelon) + self.diseqccommand("gotoX", rotorCmd) + x = PositionerSetup.rotorCmd2Step(rotorCmd, self.tuningstepsize) + print>>log, (_("Rotor step position:") + " %4d") % x + return x + + def getTurningspeed(self): + if self.polarisation == eDVBFrontendParametersSatellite.Polarisation_Horizontal: + turningspeed = self.turningspeedH + else: + turningspeed = self.turningspeedV + return max(turningspeed, 0.1) + + TURNING_START_STOP_DELAY = 1.600 # seconds + MAX_SEARCH_ANGLE = 12.0 # degrees + MAX_FOCUS_ANGLE = 6.0 # degrees + LOCK_LIMIT = 0.1 # ratio + MEASURING_TIME = 2.500 # seconds + + def measure(self, time = MEASURING_TIME): # time in seconds + self.snr_percentage = 0.0 + self.lock_count = 0.0 + self.stat_count = 0 + self.low_rate_adapter_count = 0 + self.max_count = max(int((time * 1000 + self.UPDATE_INTERVAL / 2)/ self.UPDATE_INTERVAL), 1) + self.collectingStatistics = True + self.dataAvailable.clear() + self.dataAvailable.wait() + + def logMsg(self, msg, timeout = 0): + self.statusMsg(msg, timeout = timeout) + self.printMsg(msg) + + def sync(self): + self.lock_count = 0.0 + n = 0 + while self.lock_count < (1 - self.LOCK_LIMIT) and n < 5: + self.measure(time = 0.500) + n += 1 + if self.lock_count < (1 - self.LOCK_LIMIT): + return False + return True + + randomGenerator = None + def randomBool(self): + if self.randomGenerator is None: + self.randomGenerator = SystemRandom() + return self.randomGenerator.random() >= 0.5 + + def gotoXcalibration(self): + + def move(x): + z = self.gotoX(x + satlon) + time = int(abs(x - prev_pos) / turningspeed + 2 * self.TURNING_START_STOP_DELAY) + sleep(time * self.MAX_LOW_RATE_ADAPTER_COUNT) + return z + + def reportlevels(pos, level, lock): + print>>log, (_("Signal quality") + " %5.1f" + chr(176) + " : %6.2f") % (pos, level) + print>>log, (_("Lock ratio") + " %5.1f" + chr(176) + " : %6.2f") % (pos, lock) + + def optimise(readings): + xi = readings.keys() + yi = map(lambda (x, y) : x, readings.values()) + x0 = sum(map(mul, xi, yi)) / sum(yi) + xm = xi[yi.index(max(yi))] + return (x0, xm) + + def toGeopos(x): + if x < 0: + return _("W") + else: + return _("E") + + def toGeoposEx(x): + if x < 0: + return _("west") + else: + return _("east") + + self.logMsg(_("GotoX calibration")) + satlon = self.orbitalposition.float + print>>log, (_("Satellite longitude:") + " %5.1f" + chr(176) + " %s") % (satlon, self.orientation.value) + satlon = PositionerSetup.orbital2metric(satlon, self.orientation.value) + prev_pos = 0.0 # previous relative position w.r.t. satlon + turningspeed = self.getTurningspeed() + + x = 0.0 # relative position w.r.t. satlon + dir = 1 + if self.randomBool(): + dir = -dir + while abs(x) < self.MAX_SEARCH_ANGLE: + if self.sync(): + break + x += (1.0 * dir) # one degree east/west + self.statusMsg((_("Searching") + " " + toGeoposEx(dir) + " %2d" + chr(176)) % abs(x), blinking = True) + move(x) + prev_pos = x + else: + x = 0.0 + dir = -dir + while abs(x) < self.MAX_SEARCH_ANGLE: + x += (1.0 * dir) # one degree east/west + self.statusMsg((_("Searching") + " " + toGeoposEx(dir) + " %2d" + chr(176)) % abs(x), blinking = True) + move(x) + prev_pos = x + if self.sync(): + break + else: + msg = _("Cannot find any signal ..., aborting !") + self.printMsg(msg) + self.statusMsg("") + self.session.open(MessageBox, msg, MessageBox.TYPE_ERROR, timeout = 5) + return + x = round(x / self.tuningstepsize) * self.tuningstepsize + move(x) + prev_pos = x + measurements = {} + self.measure() + print>>log, (_("Initial signal quality") + " %5.1f" + chr(176) + ": %6.2f") % (x, self.snr_percentage) + print>>log, (_("Initial lock ratio") + " %5.1f" + chr(176) + ": %6.2f") % (x, self.lock_count) + measurements[x] = (self.snr_percentage, self.lock_count) + + start_pos = x + x = 0.0 + dir = 1 + if self.randomBool(): + dir = -dir + while x < self.MAX_FOCUS_ANGLE: + x += self.tuningstepsize * dir # one step east/west + self.statusMsg((_("Moving") + " " + toGeoposEx(dir) + " %5.1f" + chr(176)) % abs(x + start_pos), blinking = True) + move(x + start_pos) + prev_pos = x + start_pos + self.measure() + measurements[x + start_pos] = (self.snr_percentage, self.lock_count) + reportlevels(x + start_pos, self.snr_percentage, self.lock_count) + if self.lock_count < self.LOCK_LIMIT: + break + else: + msg = _("Cannot determine") + " " + toGeoposEx(dir) + " " + _("limit ..., aborting !") + self.printMsg(msg) + self.statusMsg("") + self.session.open(MessageBox, msg, MessageBox.TYPE_ERROR, timeout = 5) + return + x = 0.0 + dir = -dir + self.statusMsg((_("Moving") + " " + toGeoposEx(dir) + " %5.1f" + chr(176)) % abs(start_pos), blinking = True) + move(start_pos) + prev_pos = start_pos + if not self.sync(): + msg = _("Sync failure moving back to origin !") + self.printMsg(msg) + self.statusMsg("") + self.session.open(MessageBox, msg, MessageBox.TYPE_ERROR, timeout = 5) + return + while abs(x) < self.MAX_FOCUS_ANGLE: + x += self.tuningstepsize * dir # one step west/east + self.statusMsg((_("Moving") + " " + toGeoposEx(dir) + " %5.1f" + chr(176)) % abs(x + start_pos), blinking = True) + move(x + start_pos) + prev_pos = x + start_pos + self.measure() + measurements[x + start_pos] = (self.snr_percentage, self.lock_count) + reportlevels(x + start_pos, self.snr_percentage, self.lock_count) + if self.lock_count < self.LOCK_LIMIT: + break + else: + msg = _("Cannot determine") + " " + toGeoposEx(dir) + " " + _("limit ..., aborting !") + self.printMsg(msg) + self.statusMsg("") + self.session.open(MessageBox, msg, MessageBox.TYPE_ERROR, timeout = 5) + return + (x0, xm) = optimise(measurements) + x = move(x0) + if satlon > 180: + satlon -= 360 + x0 += satlon + xm += satlon + print>>log, (_("Weighted position") + " : %5.1f" + chr(176) + " %s") % (abs(x0), toGeopos(x0)) + print>>log, (_("Strongest position") + " : %5.1f" + chr(176) + " %s") % (abs(xm), toGeopos(xm)) + self.logMsg((_("Final position at") + " %5.1f" + chr(176) + " %s / %d; " + _("offset is") + " %4.1f" + chr(176)) % (abs(x0), toGeopos(x0), x, x0 - satlon), timeout = 10) + + def autofocus(self): + + def move(x): + if x > 0: + self.diseqccommand("moveEast", (-x) & 0xFF) + elif x < 0: + self.diseqccommand("moveWest", x & 0xFF) + if x != 0: + time = int(abs(x) * self.tuningstepsize / turningspeed + 2 * self.TURNING_START_STOP_DELAY) + sleep(time * self.MAX_LOW_RATE_ADAPTER_COUNT) + + def reportlevels(pos, level, lock): + print>>log, (_("Signal quality") + " [%2d] : %6.2f") % (pos, level) + print>>log, (_("Lock ratio") + " [%2d] : %6.2f") % (pos, lock) + + def optimise(readings): + xi = readings.keys() + yi = map(lambda (x, y) : x, readings.values()) + x0 = int(round(sum(map(mul, xi, yi)) / sum(yi))) + xm = xi[yi.index(max(yi))] + return (x0, xm) + + def toGeoposEx(x): + if x < 0: + return _("west") + else: + return _("east") + + self.logMsg(_("Auto focus commencing ...")) + turningspeed = self.getTurningspeed() + measurements = {} + maxsteps = max(min(round(self.MAX_FOCUS_ANGLE / self.tuningstepsize), 0x1F), 3) + self.measure() + print>>log, (_("Initial signal quality:") + " %6.2f") % self.snr_percentage + print>>log, (_("Initial lock ratio") + " : %6.2f") % self.lock_count + if self.lock_count < 1 - self.LOCK_LIMIT: + msg = _("There is no signal to lock on !") + self.printMsg(msg) + self.statusMsg("") + self.session.open(MessageBox, msg, MessageBox.TYPE_ERROR, timeout = 5) + return + print>>log, _("Signal OK, proceeding") + x = 0 + dir = 1 + if self.randomBool(): + dir = -dir + measurements[x] = (self.snr_percentage, self.lock_count) + nsteps = 0 + while nsteps < maxsteps: + x += dir + self.statusMsg((_("Moving") + " " + toGeoposEx(dir) + " %2d") % abs(x), blinking = True) + move(dir) # one step + self.measure() + measurements[x] = (self.snr_percentage, self.lock_count) + reportlevels(x, self.snr_percentage, self.lock_count) + if self.lock_count < self.LOCK_LIMIT: + break + nsteps += 1 + else: + msg = _("Cannot determine") + " " + toGeoposEx(dir) + " " + _("limit ..., aborting !") + self.printMsg(msg) + self.statusMsg("") + self.session.open(MessageBox, msg, MessageBox.TYPE_ERROR, timeout = 5) + return + dir = -dir + self.statusMsg(_("Moving") + " " + toGeoposEx(dir) + " 0", blinking = True) + move(-x) + if not self.sync(): + msg = _("Sync failure moving back to origin !") + self.printMsg(msg) + self.statusMsg("") + self.session.open(MessageBox, msg, MessageBox.TYPE_ERROR, timeout = 5) + return + x = 0 + nsteps = 0 + while nsteps < maxsteps: + x += dir + self.statusMsg((_("Moving") + " " + toGeoposEx(dir) + " %2d") % abs(x), blinking = True) + move(dir) # one step + self.measure() + measurements[x] = (self.snr_percentage, self.lock_count) + reportlevels(x, self.snr_percentage, self.lock_count) + if self.lock_count < self.LOCK_LIMIT: + break + nsteps += 1 + else: + msg = _("Cannot determine") + " " + toGeoposEx(dir) + " " + _("limit ..., aborting !") + self.printMsg(msg) + self.statusMsg("") + self.session.open(MessageBox, msg, MessageBox.TYPE_ERROR, timeout = 5) + return + (x0, xm) = optimise(measurements) + print>>log, (_("Weighted position") + " : %2d") % x0 + print>>log, (_("Strongest position") + " : %2d") % xm + self.logMsg((_("Final position at index") + " %2d (%5.1f" + chr(176) + ")") % (x0, x0 * self.tuningstepsize), timeout = 6) + move(x0 - x) + +class Diseqc: + def __init__(self, frontend): + self.frontend = frontend + + def command(self, what, param = 0): + if self.frontend: + cmd = eDVBDiseqcCommand() + if what == "moveWest": + string = 'E03169' + ("%02X" % param) + elif what == "moveEast": + string = 'E03168' + ("%02X" % param) + elif what == "moveTo": + string = 'E0316B' + ("%02X" % param) + elif what == "store": + string = 'E0316A' + ("%02X" % param) + elif what == "gotoX": + string = 'E0316E' + ("%04X" % param) + elif what == "calc": + string = 'E0316F' + ("%06X" % param) + elif what == "limitOn": + string = 'E0316A00' + elif what == "limitOff": + string = 'E03163' + elif what == "limitEast": + string = 'E03166' + elif what == "limitWest": + string = 'E03167' + else: + string = 'E03160' #positioner stop + + print "diseqc command:", + print string + cmd.setCommandString(string) + self.frontend.setTone(iDVBFrontend.toneOff) + sleep(0.015) # wait 15msec after disable tone + self.frontend.sendDiseqc(cmd) + if string == 'E03160': #positioner stop + sleep(0.050) + self.frontend.sendDiseqc(cmd) # send 2nd time + +class PositionerSetupLog(Screen): + skin = """ + + + + + + + + + + + + + + Default + + +""" + def __init__(self, session): + self.session = session + Screen.__init__(self, session) + self["key_red"] = Button(_("Clear")) + self["key_green"] = Button() + self["key_yellow"] = Button() + self["key_blue"] = Button(_("Save")) + self["list"] = ScrollLabel(log.getvalue()) + self["actions"] = ActionMap(["DirectionActions", "OkCancelActions", "ColorActions"], + { + "red": self.clear, + "green": self.cancel, + "yellow": self.cancel, + "save": self.save, + "blue": self.save, + "cancel": self.cancel, + "ok": self.cancel, + "left": self["list"].pageUp, + "right": self["list"].pageDown, + "up": self["list"].pageUp, + "down": self["list"].pageDown, + "pageUp": self["list"].pageUp, + "pageDown": self["list"].pageDown + }, -2) + + def save(self): + try: + f = open('/tmp/positionersetup.log', 'w') + f.write(log.getvalue()) + f.close() + except Exception, e: + self["list"].setText(_("Failed to write /tmp/positionersetup.log: ") + str(e)) + self.close(True) + + def cancel(self): + self.close(False) + + def clear(self): + log.logfile.reset() + log.logfile.truncate() + self.close(False) + +class TunerScreen(ConfigListScreen, Screen): + skin = """ + + + + """ + + def __init__(self, session, feid, fe_data): + self.feid = feid + self.fe_data = fe_data + Screen.__init__(self, session) + ConfigListScreen.__init__(self, None) + self.createConfig(fe_data) + self.initialSetup() + self.createSetup() + self.tuning.sat.addNotifier(self.tuningSatChanged) + self.tuning.type.addNotifier(self.tuningTypeChanged) + self.scan_sat.system.addNotifier(self.systemChanged) + + self["actions"] = NumberActionMap(["SetupActions"], + { + "ok": self.keyGo, + "cancel": self.keyCancel, + }, -2) + + def createConfig(self, frontendData): + satlist = nimmanager.getRotorSatListForNim(self.feid) + orb_pos = self.fe_data.get("orbital_position", None) + orb_pos_str = str(orb_pos) + self.tuning = ConfigSubsection() + self.tuning.type = ConfigSelection( + default = "manual_transponder", + choices = { "manual_transponder" : _("Manual transponder"), + "predefined_transponder" : _("Predefined transponder") } ) + self.tuning.sat = ConfigSatlist(list = satlist) + if orb_pos is not None: + for sat in satlist: + if sat[0] == orb_pos and self.tuning.sat.value != orb_pos_str: + self.tuning.sat.value = orb_pos_str + self.updateTransponders() + + defaultSat = { + "orbpos": 192, + "system": eDVBFrontendParametersSatellite.System_DVB_S, + "frequency": 11836, + "inversion": eDVBFrontendParametersSatellite.Inversion_Unknown, + "symbolrate": 27500, + "polarization": eDVBFrontendParametersSatellite.Polarisation_Horizontal, + "fec": eDVBFrontendParametersSatellite.FEC_Auto, + "fec_s2": eDVBFrontendParametersSatellite.FEC_9_10, + "modulation": eDVBFrontendParametersSatellite.Modulation_QPSK } + if frontendData is not None: + ttype = frontendData.get("tuner_type", "UNKNOWN") + defaultSat["system"] = frontendData.get("system", eDVBFrontendParametersSatellite.System_DVB_S) + defaultSat["frequency"] = frontendData.get("frequency", 0) / 1000 + defaultSat["inversion"] = frontendData.get("inversion", eDVBFrontendParametersSatellite.Inversion_Unknown) + defaultSat["symbolrate"] = frontendData.get("symbol_rate", 0) / 1000 + defaultSat["polarization"] = frontendData.get("polarization", eDVBFrontendParametersSatellite.Polarisation_Horizontal) + if defaultSat["system"] == eDVBFrontendParametersSatellite.System_DVB_S2: + defaultSat["fec_s2"] = frontendData.get("fec_inner", eDVBFrontendParametersSatellite.FEC_Auto) + defaultSat["rolloff"] = frontendData.get("rolloff", eDVBFrontendParametersSatellite.RollOff_alpha_0_35) + defaultSat["pilot"] = frontendData.get("pilot", eDVBFrontendParametersSatellite.Pilot_Unknown) + else: + defaultSat["fec"] = frontendData.get("fec_inner", eDVBFrontendParametersSatellite.FEC_Auto) + defaultSat["modulation"] = frontendData.get("modulation", eDVBFrontendParametersSatellite.Modulation_QPSK) + defaultSat["orbpos"] = frontendData.get("orbital_position", 0) + + self.scan_sat = ConfigSubsection() + self.scan_sat.system = ConfigSelection(default = defaultSat["system"], choices = [ + (eDVBFrontendParametersSatellite.System_DVB_S, _("DVB-S")), + (eDVBFrontendParametersSatellite.System_DVB_S2, _("DVB-S2"))]) + self.scan_sat.frequency = ConfigInteger(default = defaultSat["frequency"], limits = (1, 99999)) + self.scan_sat.inversion = ConfigSelection(default = defaultSat["inversion"], choices = [ + (eDVBFrontendParametersSatellite.Inversion_Off, _("Off")), + (eDVBFrontendParametersSatellite.Inversion_On, _("On")), + (eDVBFrontendParametersSatellite.Inversion_Unknown, _("Auto"))]) + self.scan_sat.symbolrate = ConfigInteger(default = defaultSat["symbolrate"], limits = (1, 99999)) + self.scan_sat.polarization = ConfigSelection(default = defaultSat["polarization"], choices = [ + (eDVBFrontendParametersSatellite.Polarisation_Horizontal, _("horizontal")), + (eDVBFrontendParametersSatellite.Polarisation_Vertical, _("vertical")), + (eDVBFrontendParametersSatellite.Polarisation_CircularLeft, _("circular left")), + (eDVBFrontendParametersSatellite.Polarisation_CircularRight, _("circular right"))]) + self.scan_sat.fec = ConfigSelection(default = defaultSat["fec"], choices = [ + (eDVBFrontendParametersSatellite.FEC_Auto, _("Auto")), + (eDVBFrontendParametersSatellite.FEC_1_2, "1/2"), + (eDVBFrontendParametersSatellite.FEC_2_3, "2/3"), + (eDVBFrontendParametersSatellite.FEC_3_4, "3/4"), + (eDVBFrontendParametersSatellite.FEC_5_6, "5/6"), + (eDVBFrontendParametersSatellite.FEC_7_8, "7/8"), + (eDVBFrontendParametersSatellite.FEC_None, _("None"))]) + self.scan_sat.fec_s2 = ConfigSelection(default = defaultSat["fec_s2"], choices = [ + (eDVBFrontendParametersSatellite.FEC_1_2, "1/2"), + (eDVBFrontendParametersSatellite.FEC_2_3, "2/3"), + (eDVBFrontendParametersSatellite.FEC_3_4, "3/4"), + (eDVBFrontendParametersSatellite.FEC_3_5, "3/5"), + (eDVBFrontendParametersSatellite.FEC_4_5, "4/5"), + (eDVBFrontendParametersSatellite.FEC_5_6, "5/6"), + (eDVBFrontendParametersSatellite.FEC_7_8, "7/8"), + (eDVBFrontendParametersSatellite.FEC_8_9, "8/9"), + (eDVBFrontendParametersSatellite.FEC_9_10, "9/10")]) + self.scan_sat.modulation = ConfigSelection(default = defaultSat["modulation"], choices = [ + (eDVBFrontendParametersSatellite.Modulation_QPSK, "QPSK"), + (eDVBFrontendParametersSatellite.Modulation_8PSK, "8PSK")]) + self.scan_sat.rolloff = ConfigSelection(default = defaultSat.get("rolloff", eDVBFrontendParametersSatellite.RollOff_alpha_0_35), choices = [ + (eDVBFrontendParametersSatellite.RollOff_alpha_0_35, "0.35"), + (eDVBFrontendParametersSatellite.RollOff_alpha_0_25, "0.25"), + (eDVBFrontendParametersSatellite.RollOff_alpha_0_20, "0.20"), + (eDVBFrontendParametersSatellite.RollOff_auto, _("Auto"))]) + self.scan_sat.pilot = ConfigSelection(default = defaultSat.get("pilot", eDVBFrontendParametersSatellite.Pilot_Unknown), choices = [ + (eDVBFrontendParametersSatellite.Pilot_Off, _("Off")), + (eDVBFrontendParametersSatellite.Pilot_On, _("On")), + (eDVBFrontendParametersSatellite.Pilot_Unknown, _("Auto"))]) + + def initialSetup(self): + currtp = self.transponderToString([None, self.scan_sat.frequency.value, self.scan_sat.symbolrate.value, self.scan_sat.polarization.value]) + if currtp in self.tuning.transponder.choices: + self.tuning.type.value = "predefined_transponder" + else: + self.tuning.type.value = "manual_transponder" + + def createSetup(self): + self.list = [] + self.list.append(getConfigListEntry(_('Tune'), self.tuning.type)) + self.list.append(getConfigListEntry(_('Satellite'), self.tuning.sat)) + nim = nimmanager.nim_slots[self.feid] + + if self.tuning.type.value == "manual_transponder": + if nim.isCompatible("DVB-S2"): + self.list.append(getConfigListEntry(_('System'), self.scan_sat.system)) + else: + # downgrade to dvb-s, in case a -s2 config was active + self.scan_sat.system.value = eDVBFrontendParametersSatellite.System_DVB_S + self.list.append(getConfigListEntry(_('Frequency'), self.scan_sat.frequency)) + self.list.append(getConfigListEntry(_("Polarisation"), self.scan_sat.polarization)) + self.list.append(getConfigListEntry(_('Symbol rate'), self.scan_sat.symbolrate)) + if self.scan_sat.system.value == eDVBFrontendParametersSatellite.System_DVB_S: + self.list.append(getConfigListEntry(_("FEC"), self.scan_sat.fec)) + self.list.append(getConfigListEntry(_('Inversion'), self.scan_sat.inversion)) + elif self.scan_sat.system.value == eDVBFrontendParametersSatellite.System_DVB_S2: + self.list.append(getConfigListEntry(_("FEC"), self.scan_sat.fec_s2)) + self.list.append(getConfigListEntry(_('Inversion'), self.scan_sat.inversion)) + self.modulationEntry = getConfigListEntry(_('Modulation'), self.scan_sat.modulation) + self.list.append(self.modulationEntry) + self.list.append(getConfigListEntry(_('Roll-off'), self.scan_sat.rolloff)) + self.list.append(getConfigListEntry(_('Pilot'), self.scan_sat.pilot)) + else: # "predefined_transponder" + self.list.append(getConfigListEntry(_("Transponder"), self.tuning.transponder)) + currtp = self.transponderToString([None, self.scan_sat.frequency.value, self.scan_sat.symbolrate.value, self.scan_sat.polarization.value]) + self.tuning.transponder.setValue(currtp) + self["config"].list = self.list + self["config"].l.setList(self.list) + + def tuningSatChanged(self, *parm): + self.updateTransponders() + self.createSetup() + + def tuningTypeChanged(self, *parm): + self.createSetup() + + def systemChanged(self, *parm): + self.createSetup() + + def transponderToString(self, tr, scale = 1): + if tr[3] == 0: + pol = "H" + elif tr[3] == 1: + pol = "V" + elif tr[3] == 2: + pol = "CL" + elif tr[3] == 3: + pol = "CR" + else: + pol = "??" + return str(tr[1] / scale) + "," + pol + "," + str(tr[2] / scale) + + def updateTransponders(self): + if len(self.tuning.sat.choices): + transponderlist = nimmanager.getTransponders(int(self.tuning.sat.value)) + tps = [] + for transponder in transponderlist: + tps.append(self.transponderToString(transponder, scale = 1000)) + self.tuning.transponder = ConfigSelection(choices = tps) + + def keyLeft(self): + ConfigListScreen.keyLeft(self) + + def keyRight(self): + ConfigListScreen.keyRight(self) + + def keyGo(self): + returnvalue = (0, 0, 0, 0, 0, 0, 0, 0, 0, 0) + satpos = int(self.tuning.sat.value) + if self.tuning.type.value == "manual_transponder": + if self.scan_sat.system.value == eDVBFrontendParametersSatellite.System_DVB_S2: + fec = self.scan_sat.fec_s2.value + else: + fec = self.scan_sat.fec.value + returnvalue = ( + self.scan_sat.frequency.value, + self.scan_sat.symbolrate.value, + self.scan_sat.polarization.value, + fec, + self.scan_sat.inversion.value, + satpos, + self.scan_sat.system.value, + self.scan_sat.modulation.value, + self.scan_sat.rolloff.value, + self.scan_sat.pilot.value) + elif self.tuning.type.value == "predefined_transponder": + transponder = nimmanager.getTransponders(satpos)[self.tuning.transponder.index] + returnvalue = (transponder[1] / 1000, transponder[2] / 1000, + transponder[3], transponder[4], 2, satpos, transponder[5], transponder[6], transponder[8], transponder[9]) + self.close(returnvalue) + + def keyCancel(self): + self.close(None) + +class RotorNimSelection(Screen): + skin = """ + + + """ + + def __init__(self, session): + Screen.__init__(self, session) + + nimlist = nimmanager.getNimListOfType("DVB-S") + nimMenuList = [] + for x in nimlist: + if len(nimmanager.getRotorSatListForNim(x)) != 0: + nimMenuList.append((nimmanager.nim_slots[x].friendly_full_description, x)) + + self["nimlist"] = MenuList(nimMenuList) + + self["actions"] = ActionMap(["OkCancelActions"], + { + "ok": self.okbuttonClick , + "cancel": self.close + }, -1) + + def okbuttonClick(self): + selection = self["nimlist"].getCurrent() + self.session.open(PositionerSetup, selection[1]) + +def PositionerMain(session, **kwargs): + nimList = nimmanager.getNimListOfType("DVB-S") + if len(nimList) == 0: + session.open(MessageBox, _("No positioner capable frontend found."), MessageBox.TYPE_ERROR) + else: + if session.nav.RecordTimer.isRecording(): + session.open(MessageBox, _("A recording is currently running. Please stop the recording before trying to configure the positioner."), MessageBox.TYPE_ERROR) + else: + usableNims = [] + for x in nimList: + configured_rotor_sats = nimmanager.getRotorSatListForNim(x) + if len(configured_rotor_sats) != 0: + usableNims.append(x) + if len(usableNims) == 1: + session.open(PositionerSetup, usableNims[0]) + elif len(usableNims) > 1: + session.open(RotorNimSelection) + else: + session.open(MessageBox, _("No tuner is configured for use with a diseqc positioner!"), MessageBox.TYPE_ERROR) + +def PositionerSetupStart(menuid, **kwargs): + if menuid == "scan": + return [(_("Positioner setup"), PositionerMain, "positioner_setup", None)] + else: + return [] + +def Plugins(**kwargs): + if (nimmanager.hasNimType("DVB-S")): + return PluginDescriptor(name=_("Positioner setup"), description = _("Setup your positioner"), where = PluginDescriptor.WHERE_MENU, needsRestart = False, fnc = PositionerSetupStart) + else: + return [] diff --git a/lib/python/Plugins/SystemPlugins/PositionerSetup/rotor_calc.py b/lib/python/Plugins/SystemPlugins/PositionerSetup/rotor_calc.py new file mode 100644 index 0000000..74923a5 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/PositionerSetup/rotor_calc.py @@ -0,0 +1,102 @@ +import math + +f = 1.00 / 298.257 # Earth flattning factor +r_sat = 42164.57 # Distance from earth centre to satellite +r_eq = 6378.14 # Earth radius + +def calcElevation(SatLon, SiteLat, SiteLon, Height_over_ocean = 0): + a0 = 0.58804392 + a1 = -0.17941557 + a2 = 0.29906946E-1 + a3 = -0.25187400E-2 + a4 = 0.82622101E-4 + + sinRadSiteLat = math.sin(math.radians(SiteLat)) + cosRadSiteLat = math.cos(math.radians(SiteLat)) + + Rstation = r_eq / (math.sqrt( 1.00 - f * (2.00 - f) * sinRadSiteLat **2)) + + Ra = (Rstation + Height_over_ocean) * cosRadSiteLat + Rz = Rstation * (1.00 - f) * (1.00 - f) * sinRadSiteLat + + alfa_rx = r_sat * math.cos(math.radians(SatLon - SiteLon)) - Ra + alfa_ry = r_sat * math.sin(math.radians(SatLon - SiteLon)) + alfa_rz = -Rz + + alfa_r_north = -alfa_rx * sinRadSiteLat + alfa_rz * cosRadSiteLat + alfa_r_zenith = alfa_rx * cosRadSiteLat + alfa_rz * sinRadSiteLat + + den = alfa_r_north **2 + alfa_ry **2 + if den > 0: + El_geometric = math.degrees(math.atan(alfa_r_zenith / math.sqrt(den))) + else: + El_geometric = 90 + + x = math.fabs(El_geometric + 0.589) + refraction = math.fabs(a0 + (a1 + (a2 + (a3 + a4 * x) * x) * x) * x) + + if El_geometric > 10.2: + El_observed = El_geometric + 0.01617 * (math.cos(math.radians(math.fabs(El_geometric)))/math.sin(math.radians(math.fabs(El_geometric))) ) + else: + El_observed = El_geometric + refraction + + if alfa_r_zenith < -3000: + El_observed = -99 + + return El_observed + +def calcAzimuth(SatLon, SiteLat, SiteLon, Height_over_ocean = 0): + + def rev(number): + return number - math.floor(number / 360.0) * 360 + + sinRadSiteLat = math.sin(math.radians(SiteLat)) + cosRadSiteLat = math.cos(math.radians(SiteLat)) + + Rstation = r_eq / (math.sqrt(1 - f * (2 - f) * sinRadSiteLat **2)) + Ra = (Rstation + Height_over_ocean) * cosRadSiteLat + Rz = Rstation * (1 - f) ** 2 * sinRadSiteLat + + alfa_rx = r_sat * math.cos(math.radians(SatLon - SiteLon)) - Ra + alfa_ry = r_sat * math.sin(math.radians(SatLon - SiteLon)) + alfa_rz = -Rz + + alfa_r_north = -alfa_rx * sinRadSiteLat + alfa_rz * cosRadSiteLat + + if alfa_r_north < 0: + Azimuth = 180 + math.degrees(math.atan(alfa_ry / alfa_r_north)) + elif alfa_r_north > 0: + Azimuth = rev(360 + math.degrees(math.atan(alfa_ry / alfa_r_north))) + else: + Azimuth = 0 + return Azimuth + +def calcDeclination(SiteLat, Azimuth, Elevation): + return math.degrees(math.asin(math.sin(math.radians(Elevation)) * \ + math.sin(math.radians(SiteLat)) + \ + math.cos(math.radians(Elevation)) * \ + math.cos(math.radians(SiteLat)) + \ + math.cos(math.radians(Azimuth)) \ + )) + +def calcSatHourangle(SatLon, SiteLat, SiteLon): + Azimuth = calcAzimuth(SatLon, SiteLat, SiteLon ) + Elevation = calcElevation(SatLon, SiteLat, SiteLon) + + a = - math.cos(math.radians(Elevation)) * math.sin(math.radians(Azimuth)) + b = math.sin(math.radians(Elevation)) * math.cos(math.radians(SiteLat)) - \ + math.cos(math.radians(Elevation)) * math.sin(math.radians(SiteLat)) * \ + math.cos(math.radians(Azimuth)) + + # Works for all azimuths (northern & southern hemisphere) + returnvalue = 180 + math.degrees(math.atan(a / b)) + + if Azimuth > 270: + returnvalue += 180 + if returnvalue > 360: + returnvalue = 720 - returnvalue + + if Azimuth < 90: + returnvalue = 180 - returnvalue + + return returnvalue diff --git a/lib/python/Plugins/SystemPlugins/SatelliteEquipmentControl/Makefile.am b/lib/python/Plugins/SystemPlugins/SatelliteEquipmentControl/Makefile.am new file mode 100644 index 0000000..e6b9a05 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/SatelliteEquipmentControl/Makefile.am @@ -0,0 +1,7 @@ +installdir = $(pkglibdir)/python/Plugins/SystemPlugins/SatelliteEquipmentControl + +SUBDIRS = meta + +install_PYTHON = \ + __init__.py \ + plugin.py diff --git a/lib/python/Plugins/SystemPlugins/SatelliteEquipmentControl/__init__.py b/lib/python/Plugins/SystemPlugins/SatelliteEquipmentControl/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lib/python/Plugins/SystemPlugins/SatelliteEquipmentControl/meta/Makefile.am b/lib/python/Plugins/SystemPlugins/SatelliteEquipmentControl/meta/Makefile.am new file mode 100644 index 0000000..5dfb239 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/SatelliteEquipmentControl/meta/Makefile.am @@ -0,0 +1,5 @@ +installdir = $(datadir)/meta + +dist_install_DATA = plugin_satelliteequipmentcontrol.xml + +EXTRA_DIST = satcontrol.jpg diff --git a/lib/python/Plugins/SystemPlugins/SatelliteEquipmentControl/meta/plugin_satelliteequipmentcontrol.xml b/lib/python/Plugins/SystemPlugins/SatelliteEquipmentControl/meta/plugin_satelliteequipmentcontrol.xml new file mode 100644 index 0000000..904f9a2 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/SatelliteEquipmentControl/meta/plugin_satelliteequipmentcontrol.xml @@ -0,0 +1,21 @@ + + + + + + + Dream Multimedia + SatelliteEquipmentControl + SatelliteEquipmentControl + enigma2-plugin-systemplugins-satelliteequipmentcontrol + SatelliteEquipmentControl allows you to fine-tune DiSEqC-settings + With the SatelliteEquipmentControl plugin it is possible to fine-tune DiSEqC-settings. + + + + + + + + + diff --git a/lib/python/Plugins/SystemPlugins/SatelliteEquipmentControl/meta/satcontrol.jpg b/lib/python/Plugins/SystemPlugins/SatelliteEquipmentControl/meta/satcontrol.jpg new file mode 100644 index 0000000..703650e Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/SatelliteEquipmentControl/meta/satcontrol.jpg differ diff --git a/lib/python/Plugins/SystemPlugins/SatelliteEquipmentControl/plugin.py b/lib/python/Plugins/SystemPlugins/SatelliteEquipmentControl/plugin.py new file mode 100644 index 0000000..8362c49 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/SatelliteEquipmentControl/plugin.py @@ -0,0 +1,77 @@ +from Screens.Screen import Screen +from Screens.MessageBox import MessageBox +from Plugins.Plugin import PluginDescriptor + +from Components.ConfigList import ConfigListScreen +from Components.ActionMap import ActionMap +from Components.config import config +from Components.NimManager import nimmanager as nimmgr + +class SecParameterSetup(Screen, ConfigListScreen): + skin = """ + + + """ + def __init__(self, session): + self.skin = SecParameterSetup.skin + + self["actions"] = ActionMap(["SetupActions", "MenuActions"], + { + "ok": self.keySave, + "cancel": self.keyCancel, + "menu": self.closeRecursive, + }, -2) + + Screen.__init__(self, session) + list = [ + ("Delay after diseqc reset command", config.sec.delay_after_diseqc_reset_cmd), + ("Delay after diseqc peripherial poweron command", config.sec.delay_after_diseqc_peripherial_poweron_cmd), + ("Delay after continuous tone disable before diseqc", config.sec.delay_after_continuous_tone_disable_before_diseqc), + ("Delay after final continuous tone change", config.sec.delay_after_final_continuous_tone_change), + ("Delay after last voltage change", config.sec.delay_after_final_voltage_change), + ("Delay between diseqc commands", config.sec.delay_between_diseqc_repeats), + ("Delay after last diseqc command", config.sec.delay_after_last_diseqc_command), + ("Delay after toneburst", config.sec.delay_after_toneburst), + ("Delay after change voltage before switch command", config.sec.delay_after_change_voltage_before_switch_command), + ("Delay after enable voltage before switch command", config.sec.delay_after_enable_voltage_before_switch_command), + ("Delay between switch and motor command", config.sec.delay_between_switch_and_motor_command), + ("Delay after set voltage before measure motor power", config.sec.delay_after_voltage_change_before_measure_idle_inputpower), + ("Delay after enable voltage before motor command", config.sec.delay_after_enable_voltage_before_motor_command), + ("Delay after motor stop command", config.sec.delay_after_motor_stop_command), + ("Delay after voltage change before motor command", config.sec.delay_after_voltage_change_before_motor_command), + ("Delay before sequence repeat", config.sec.delay_before_sequence_repeat), + ("Motor running timeout", config.sec.motor_running_timeout), + ("Motor command retries", config.sec.motor_command_retries) ] + ConfigListScreen.__init__(self, list) + +session = None + +def confirmed(answer): + global session + if answer: + session.open(SecParameterSetup) + +def SecSetupMain(Session, **kwargs): + global session + session = Session + session.openWithCallback(confirmed, MessageBox, _("Please do not change any values unless you know what you are doing!"), MessageBox.TYPE_INFO) + +def SecSetupStart(menuid): + show = False + + # other menu than "scan"? + if menuid != "scan": + return [ ] + + # only show if DVB-S frontends are available + for slot in nimmgr.nim_slots: + if slot.isCompatible("DVB-S"): + return [(_("Satellite equipment setup"), SecSetupMain, "satellite_equipment_setup", None)] + + return [ ] + +def Plugins(**kwargs): + if (nimmgr.hasNimType("DVB-S")): + return PluginDescriptor(name=_("Satellite equipment setup"), description=_("Setup your satellite equipment"), where = PluginDescriptor.WHERE_MENU, needsRestart = False, fnc=SecSetupStart) + else: + return [] diff --git a/lib/python/Plugins/SystemPlugins/Satfinder/Makefile.am b/lib/python/Plugins/SystemPlugins/Satfinder/Makefile.am new file mode 100644 index 0000000..6ef8f96 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/Satfinder/Makefile.am @@ -0,0 +1,7 @@ +installdir = $(pkglibdir)/python/Plugins/SystemPlugins/Satfinder + +SUBDIRS = meta + +install_PYTHON = \ + __init__.py \ + plugin.py diff --git a/lib/python/Plugins/SystemPlugins/Satfinder/__init__.py b/lib/python/Plugins/SystemPlugins/Satfinder/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lib/python/Plugins/SystemPlugins/Satfinder/meta/Makefile.am b/lib/python/Plugins/SystemPlugins/Satfinder/meta/Makefile.am new file mode 100644 index 0000000..23499a4 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/Satfinder/meta/Makefile.am @@ -0,0 +1,5 @@ +installdir = $(datadir)/meta + +dist_install_DATA = plugin_satfinder.xml + +EXTRA_DIST = satfinder.jpg diff --git a/lib/python/Plugins/SystemPlugins/Satfinder/meta/plugin_satfinder.xml b/lib/python/Plugins/SystemPlugins/Satfinder/meta/plugin_satfinder.xml new file mode 100644 index 0000000..fe0c901 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/Satfinder/meta/plugin_satfinder.xml @@ -0,0 +1,20 @@ + + + + + + + Dream Multimedia + Satfinder + enigma2-plugin-systemplugins-satfinder + Satfinder helps you to align your dish + The Satfinder plugin helps you to align your dish.\n + It shows you informations about signal rate and errors. + + + + + + + + diff --git a/lib/python/Plugins/SystemPlugins/Satfinder/meta/satfinder.jpg b/lib/python/Plugins/SystemPlugins/Satfinder/meta/satfinder.jpg new file mode 100644 index 0000000..44f0981 Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/Satfinder/meta/satfinder.jpg differ diff --git a/lib/python/Plugins/SystemPlugins/Satfinder/plugin.py b/lib/python/Plugins/SystemPlugins/Satfinder/plugin.py new file mode 100644 index 0000000..48d107e --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/Satfinder/plugin.py @@ -0,0 +1,277 @@ +from enigma import eDVBResourceManager,\ + eDVBFrontendParametersSatellite, eDVBFrontendParameters + +from Screens.Screen import Screen +from Screens.ScanSetup import ScanSetup +from Screens.ServiceScan import ServiceScan +from Screens.MessageBox import MessageBox +from Plugins.Plugin import PluginDescriptor + +from Components.Label import Label +from Components.Sources.FrontendStatus import FrontendStatus +from Components.ActionMap import ActionMap +from Components.NimManager import nimmanager, getConfigSatlist +from Components.MenuList import MenuList +from Components.config import ConfigSelection, getConfigListEntry +from Components.TuneTest import Tuner + +class Satfinder(ScanSetup, ServiceScan): + def __init__(self, session): + self.initcomplete = False + self.frontendData = None + service = session and session.nav.getCurrentService() + feinfo = service and service.frontendInfo() + self.frontendData = feinfo and feinfo.getAll(True) + del feinfo + del service + + ScanSetup.__init__(self, session) + self.setTitle(_("Satfinder")) + self["introduction"].setText(_("Press OK to scan")) + self["Frontend"] = FrontendStatus(frontend_source = lambda : self.frontend, update_interval = 100) + + self["actions"] = ActionMap(["SetupActions"], + { + "save": self.keyGoScan, + "ok": self.keyGoScan, + "cancel": self.keyCancel, + }, -3) + + self.initcomplete = True + self.session.postScanService = self.session.nav.getCurrentlyPlayingServiceOrGroup() + self.onClose.append(self.__onClose) + self.onShow.append(self.prepareFrontend) + + def openFrontend(self): + res_mgr = eDVBResourceManager.getInstance() + if res_mgr: + self.raw_channel = res_mgr.allocateRawChannel(self.feid) + if self.raw_channel: + self.frontend = self.raw_channel.getFrontend() + if self.frontend: + return True + return False + + def prepareFrontend(self): + self.frontend = None + if not self.openFrontend(): + self.session.nav.stopService() + if not self.openFrontend(): + if self.session.pipshown: + from Screens.InfoBar import InfoBar + InfoBar.instance and hasattr(InfoBar.instance, "showPiP") and InfoBar.instance.showPiP() + if not self.openFrontend(): + self.frontend = None # in normal case this should not happen + self.tuner = Tuner(self.frontend) + self.retune(None) + + def __onClose(self): + self.session.nav.playService(self.session.postScanService) + + def createSetup(self): + self.list = [] + self.satfinderTunerEntry = getConfigListEntry(_("Tuner"), self.satfinder_scan_nims) + self.list.append(self.satfinderTunerEntry) + self.tuning_sat = self.scan_satselection[self.getSelectedSatIndex(self.feid)] + self.satEntry = getConfigListEntry(_('Satellite'), self.tuning_sat) + self.list.append(self.satEntry) + self.updatePreDefTransponders() + self.typeOfTuningEntry = getConfigListEntry(_('Tune'), self.tuning_type) + self.list.append(self.typeOfTuningEntry) + + nim = nimmanager.nim_slots[self.feid] + + if self.tuning_type.value == "manual_transponder": + if nim.isCompatible("DVB-S2"): + self.systemEntry = getConfigListEntry(_('System'), self.scan_sat.system) + self.list.append(self.systemEntry) + else: + # downgrade to dvb-s, in case a -s2 config was active + self.scan_sat.system.value = eDVBFrontendParametersSatellite.System_DVB_S + self.list.append(getConfigListEntry(_('Frequency'), self.scan_sat.frequency)) + self.list.append(getConfigListEntry(_('Polarization'), self.scan_sat.polarization)) + self.list.append(getConfigListEntry(_('Symbol rate'), self.scan_sat.symbolrate)) + self.list.append(getConfigListEntry(_('Inversion'), self.scan_sat.inversion)) + if self.scan_sat.system.value == eDVBFrontendParametersSatellite.System_DVB_S: + self.list.append(getConfigListEntry(_("FEC"), self.scan_sat.fec)) + elif self.scan_sat.system.value == eDVBFrontendParametersSatellite.System_DVB_S2: + self.list.append(getConfigListEntry(_("FEC"), self.scan_sat.fec_s2)) + self.modulationEntry = getConfigListEntry(_('Modulation'), self.scan_sat.modulation) + self.list.append(self.modulationEntry) + self.list.append(getConfigListEntry(_('Roll-off'), self.scan_sat.rolloff)) + self.list.append(getConfigListEntry(_('Pilot'), self.scan_sat.pilot)) + elif self.preDefTransponders and self.tuning_type.value == "predefined_transponder": + self.list.append(getConfigListEntry(_("Transponder"), self.preDefTransponders)) + self["config"].list = self.list + self["config"].l.setList(self.list) + self.retune(None) + + def newConfig(self): + cur = self["config"].getCurrent() + if cur in (self.typeOfTuningEntry, self.systemEntry): + self.createSetup() + elif cur == self.satfinderTunerEntry: + self.feid = int(self.satfinder_scan_nims.value) + self.prepareFrontend() + self.createSetup() + elif cur == self.satEntry: + self.createSetup() + + def retune(self, configElement): + returnvalue = (0, 0, 0, 0, 0, 0, 0, 0, 0, 0) + if not self.tuning_sat.value: + return + satpos = int(self.tuning_sat.value) + if self.tuning_type.value == "manual_transponder": + if self.scan_sat.system.value == eDVBFrontendParametersSatellite.System_DVB_S2: + fec = self.scan_sat.fec_s2.value + else: + fec = self.scan_sat.fec.value + returnvalue = ( + self.scan_sat.frequency.value, + self.scan_sat.symbolrate.value, + self.scan_sat.polarization.value, + fec, + self.scan_sat.inversion.value, + satpos, + self.scan_sat.system.value, + self.scan_sat.modulation.value, + self.scan_sat.rolloff.value, + self.scan_sat.pilot.value) + self.tune(returnvalue) + elif self.tuning_type.value == "predefined_transponder": + tps = nimmanager.getTransponders(satpos) + l = len(tps) + if l > self.preDefTransponders.index: + transponder = tps[self.preDefTransponders.index] + returnvalue = (transponder[1] / 1000, transponder[2] / 1000, + transponder[3], transponder[4], 2, satpos, transponder[5], transponder[6], transponder[8], transponder[9]) + self.tune(returnvalue) + + def createConfig(self, foo): + self.preDefTransponders = None + self.tuning_type = ConfigSelection(choices = [("manual_transponder", _("User defined transponder")), ("predefined_transponder", _("Predefined transponder"))]) + self.orbital_position = 192 + if self.frontendData and self.frontendData.has_key('orbital_position'): + self.orbital_position = self.frontendData['orbital_position'] + ScanSetup.createConfig(self, self.frontendData) + + for x in (self.tuning_type, self.scan_sat.frequency, + self.scan_sat.inversion, self.scan_sat.symbolrate, + self.scan_sat.polarization, self.scan_sat.fec, self.scan_sat.pilot, + self.scan_sat.fec_s2, self.scan_sat.fec, self.scan_sat.modulation, + self.scan_sat.rolloff, self.scan_sat.system): + x.addNotifier(self.retune, initial_call = False) + + satfinder_nim_list = [] + for n in nimmanager.nim_slots: + if not n.isCompatible("DVB-S"): + continue + if n.config_mode in ("loopthrough", "satposdepends", "nothing"): + continue + if n.config_mode == "advanced" and len(nimmanager.getSatListForNim(n.slot)) < 1: + continue + satfinder_nim_list.append((str(n.slot), n.friendly_full_description)) + self.satfinder_scan_nims = ConfigSelection(choices = satfinder_nim_list) + self.feid = int(self.satfinder_scan_nims.value) + + self.satList = [] + self.scan_satselection = [] + for slot in nimmanager.nim_slots: + if slot.isCompatible("DVB-S"): + self.satList.append(nimmanager.getSatListForNim(slot.slot)) + self.scan_satselection.append(getConfigSatlist(self.orbital_position, self.satList[slot.slot])) + else: + self.satList.append(None) + + def getSelectedSatIndex(self, v): + index = 0 + none_cnt = 0 + for n in self.satList: + if self.satList[index] == None: + none_cnt = none_cnt + 1 + if index == int(v): + return (index-none_cnt) + index = index + 1 + return -1 + + def updatePreDefTransponders(self): + ScanSetup.predefinedTranspondersList(self, self.tuning_sat.orbital_position) + if self.preDefTransponders: + self.preDefTransponders.addNotifier(self.retune, initial_call=False) + + def keyGoScan(self): + self.frontend = None + del self.raw_channel + tlist = [] + self.addSatTransponder(tlist, + self.transponder[0], # frequency + self.transponder[1], # sr + self.transponder[2], # pol + self.transponder[3], # fec + self.transponder[4], # inversion + self.tuning_sat.orbital_position, + self.transponder[6], # system + self.transponder[7], # modulation + self.transponder[8], # rolloff + self.transponder[9] # pilot + ) + self.startScan(tlist, self.feid) + + def startScan(self, tlist, feid): + flags = 0 + networkid = 0 + self.session.openWithCallback(self.startScanCallback, ServiceScan, [{"transponders": tlist, "feid": feid, "flags": flags, "networkid": networkid}]) + + def startScanCallback(self, answer): + if answer: + self.doCloseRecursive() + + def keyCancel(self): + if self.session.postScanService and self.frontend: + self.frontend = None + del self.raw_channel + self.close(False) + + def doCloseRecursive(self): + if self.session.postScanService and self.frontend: + self.frontend = None + del self.raw_channel + self.close(True) + + def tune(self, transponder): + if self.initcomplete: + if transponder is not None: + self.tuner.tune(transponder) + self.transponder = transponder + +def SatfinderMain(session, close=None, **kwargs): + nims = nimmanager.getNimListOfType("DVB-S") + + nimList = [] + for x in nims: + if nimmanager.getNimConfig(x).configMode.value in ("loopthrough", "satposdepends", "nothing"): + continue + if nimmanager.getNimConfig(x).configMode.value == "advanced" and len(nimmanager.getSatListForNim(x)) < 1: + continue + nimList.append(x) + + if len(nimList) == 0: + session.open(MessageBox, _("No satellites configured. Plese check your tuner setup."), MessageBox.TYPE_ERROR) + else: + if session.nav.RecordTimer.isRecording(): + session.open(MessageBox, _("A recording is currently running. Please stop the recording before trying to start the satfinder."), MessageBox.TYPE_ERROR) + else: + session.openWithCallback(close, Satfinder) + +def SatfinderStart(menuid, **kwargs): + if menuid == "scan": + return [(_("Satfinder"), SatfinderMain, "satfinder", None)] + else: + return [] + +def Plugins(**kwargs): + if (nimmanager.hasNimType("DVB-S")): + return PluginDescriptor(name=_("Satfinder"), description=_("Helps setting up your dish"), where = PluginDescriptor.WHERE_MENU, needsRestart = False, fnc=SatfinderStart) + else: + return [] diff --git a/lib/python/Plugins/SystemPlugins/SkinSelector/Makefile.am b/lib/python/Plugins/SystemPlugins/SkinSelector/Makefile.am new file mode 100644 index 0000000..cfb1005 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/SkinSelector/Makefile.am @@ -0,0 +1,8 @@ +installdir = $(pkglibdir)/python/Plugins/SystemPlugins/SkinSelector + +SUBDIRS = meta + +install_PYTHON = \ + __init__.py \ + plugin.py \ + noprev.png diff --git a/lib/python/Plugins/SystemPlugins/SkinSelector/__init__.py b/lib/python/Plugins/SystemPlugins/SkinSelector/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lib/python/Plugins/SystemPlugins/SkinSelector/meta/Makefile.am b/lib/python/Plugins/SystemPlugins/SkinSelector/meta/Makefile.am new file mode 100644 index 0000000..992f4b0 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/SkinSelector/meta/Makefile.am @@ -0,0 +1,5 @@ +installdir = $(datadir)/meta + +dist_install_DATA = plugin_skinselector.xml + +EXTRA_DIST = skinselector_de.jpg skinselector_en.jpg diff --git a/lib/python/Plugins/SystemPlugins/SkinSelector/meta/plugin_skinselector.xml b/lib/python/Plugins/SystemPlugins/SkinSelector/meta/plugin_skinselector.xml new file mode 100644 index 0000000..6d021f0 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/SkinSelector/meta/plugin_skinselector.xml @@ -0,0 +1,21 @@ + + + + + + + Dream Multimedia + SkinSelector + enigma2-plugin-systemplugins-skinselector + SkinSelector shows a menu with selectable skins + The SkinSelector shows a menu with selectable skins.\n + It's now easy to change the look and feel of your receiver. + + + + + + + + + diff --git a/lib/python/Plugins/SystemPlugins/SkinSelector/meta/skinselector_de.jpg b/lib/python/Plugins/SystemPlugins/SkinSelector/meta/skinselector_de.jpg new file mode 100644 index 0000000..3b40708 Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/SkinSelector/meta/skinselector_de.jpg differ diff --git a/lib/python/Plugins/SystemPlugins/SkinSelector/meta/skinselector_en.jpg b/lib/python/Plugins/SystemPlugins/SkinSelector/meta/skinselector_en.jpg new file mode 100644 index 0000000..b9f0bd3 Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/SkinSelector/meta/skinselector_en.jpg differ diff --git a/lib/python/Plugins/SystemPlugins/SkinSelector/noprev.png b/lib/python/Plugins/SystemPlugins/SkinSelector/noprev.png new file mode 100644 index 0000000..1329941 Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/SkinSelector/noprev.png differ diff --git a/lib/python/Plugins/SystemPlugins/SkinSelector/plugin.py b/lib/python/Plugins/SystemPlugins/SkinSelector/plugin.py new file mode 100644 index 0000000..f320699 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/SkinSelector/plugin.py @@ -0,0 +1,136 @@ +# -*- coding: iso-8859-1 -*- +# (c) 2006 Stephan Reichholf +# This Software is Free, use it where you want, when you want for whatever you want and modify it if you want but don't remove my copyright! +from Screens.Screen import Screen +from Screens.Standby import TryQuitMainloop +from Screens.MessageBox import MessageBox +from Components.ActionMap import NumberActionMap +from Components.Pixmap import Pixmap +from Components.Sources.StaticText import StaticText +from Components.MenuList import MenuList +from Plugins.Plugin import PluginDescriptor +from Components.config import config +from Tools.Directories import resolveFilename, SCOPE_PLUGINS +from enigma import eEnv +import os + +SKINXML = "skin.xml" +DEFAULTSKIN = "" + +class SkinSelector(Screen): + # for i18n: + # _("Choose your Skin") + skinlist = [] + root = os.path.join(eEnv.resolve("${datadir}"),"enigma2") + + def __init__(self, session, args = None): + + Screen.__init__(self, session) + + self.skinlist = [] + self.previewPath = "" + if os.path.exists(os.path.join(self.root, SKINXML)): + self.skinlist.append(DEFAULTSKIN) + for root, dirs, files in os.walk(self.root, followlinks=True): + for subdir in dirs: + dir = os.path.join(root,subdir) + if os.path.exists(os.path.join(dir,SKINXML)): + self.skinlist.append(subdir) + dirs = [] + + self["key_red"] = StaticText(_("Close")) + self["introduction"] = StaticText(_("Press OK to activate the selected skin.")) + self.skinlist.sort() + self["SkinList"] = MenuList(self.skinlist) + self["Preview"] = Pixmap() + + self["actions"] = NumberActionMap(["WizardActions", "InputActions", "EPGSelectActions"], + { + "ok": self.ok, + "back": self.close, + "red": self.close, + "up": self.up, + "down": self.down, + "left": self.left, + "right": self.right, + "info": self.info, + }, -1) + + self.onLayoutFinish.append(self.layoutFinished) + + def layoutFinished(self): + tmp = config.skin.primary_skin.value.find("/"+SKINXML) + if tmp != -1: + tmp = config.skin.primary_skin.value[:tmp] + idx = 0 + for skin in self.skinlist: + if skin == tmp: + break + idx += 1 + if idx < len(self.skinlist): + self["SkinList"].moveToIndex(idx) + self.loadPreview() + + def up(self): + self["SkinList"].up() + self.loadPreview() + + def down(self): + self["SkinList"].down() + self.loadPreview() + + def left(self): + self["SkinList"].pageUp() + self.loadPreview() + + def right(self): + self["SkinList"].pageDown() + self.loadPreview() + + def info(self): + aboutbox = self.session.open(MessageBox,_("Enigma2 skin selector"), MessageBox.TYPE_INFO) + aboutbox.setTitle(_("About...")) + + def ok(self): + if self["SkinList"].getCurrent() == DEFAULTSKIN: + skinfile = "." + else: + skinfile = self["SkinList"].getCurrent() + skinfile = os.path.join(skinfile, SKINXML) + + print "Skinselector: Selected Skin: "+self.root+skinfile + config.skin.primary_skin.value = skinfile + config.skin.primary_skin.save() + restartbox = self.session.openWithCallback(self.restartGUI,MessageBox,_("GUI needs a restart to apply a new skin\nDo you want to restart the GUI now?"), MessageBox.TYPE_YESNO) + restartbox.setTitle(_("Restart GUI now?")) + + def loadPreview(self): + if self["SkinList"].getCurrent() == DEFAULTSKIN: + pngpath = "." + else: + pngpath = self["SkinList"].getCurrent() + pngpath = os.path.join(os.path.join(self.root, pngpath), "prev.png") + + if not os.path.exists(pngpath): + pngpath = resolveFilename(SCOPE_PLUGINS, "SystemPlugins/SkinSelector/noprev.png") + + if self.previewPath != pngpath: + self.previewPath = pngpath + + self["Preview"].instance.setPixmapFromFile(self.previewPath) + + def restartGUI(self, answer): + if answer is True: + self.session.open(TryQuitMainloop, 3) + +def SkinSelMain(session, **kwargs): + session.open(SkinSelector) + +def SkinSelSetup(menuid, **kwargs): + if menuid == "system": + return [(_("Skin"), SkinSelMain, "skin_selector", None)] + else: + return [] + +def Plugins(**kwargs): + return PluginDescriptor(name="Skinselector", description="Select Your Skin", where = PluginDescriptor.WHERE_MENU, needsRestart = False, fnc=SkinSelSetup) diff --git a/lib/python/Plugins/SystemPlugins/SoftwareManager/BackupRestore.py b/lib/python/Plugins/SystemPlugins/SoftwareManager/BackupRestore.py new file mode 100644 index 0000000..c9b8ea0 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/SoftwareManager/BackupRestore.py @@ -0,0 +1,332 @@ +from Screens.Screen import Screen +from Screens.MessageBox import MessageBox +from Screens.Console import Console +from Components.ActionMap import ActionMap, NumberActionMap +from Components.Pixmap import Pixmap +from Components.Label import Label +from Components.Sources.StaticText import StaticText +from Components.MenuList import MenuList +from Components.config import getConfigListEntry, configfile, ConfigSelection, ConfigSubsection, ConfigText, ConfigLocations +from Components.config import config +from Components.ConfigList import ConfigList,ConfigListScreen +from Components.FileList import MultiFileSelectList +from Plugins.Plugin import PluginDescriptor +from enigma import eTimer, eEnv +from Tools.Directories import * +from os import popen, path, makedirs, listdir, access, stat, rename, remove, W_OK, R_OK +from time import gmtime, strftime, localtime +from datetime import date + +config.plugins.configurationbackup = ConfigSubsection() +config.plugins.configurationbackup.backuplocation = ConfigText(default = '/media/hdd/', visible_width = 50, fixed_size = False) +config.plugins.configurationbackup.backupdirs = ConfigLocations(default=[eEnv.resolve('${sysconfdir}/enigma2/'), '/etc/network/interfaces', '/etc/wpa_supplicant.conf', '/etc/wpa_supplicant.ath0.conf', '/etc/wpa_supplicant.wlan0.conf', '/etc/resolv.conf', '/etc/default_gw', '/etc/hostname']) + +def getBackupPath(): + backuppath = config.plugins.configurationbackup.backuplocation.value + if backuppath.endswith('/'): + return backuppath + 'backup' + else: + return backuppath + '/backup' + +def getBackupFilename(): + return "enigma2settingsbackup.tar.gz" + + +class BackupScreen(Screen, ConfigListScreen): + skin = """ + + + """ + + def __init__(self, session, runBackup = False): + Screen.__init__(self, session) + self.session = session + self.runBackup = runBackup + self["actions"] = ActionMap(["WizardActions", "DirectionActions"], + { + "ok": self.close, + "back": self.close, + "cancel": self.close, + }, -1) + self.finished_cb = None + self.backuppath = getBackupPath() + self.backupfile = getBackupFilename() + self.fullbackupfilename = self.backuppath + "/" + self.backupfile + self.list = [] + ConfigListScreen.__init__(self, self.list) + self.onLayoutFinish.append(self.layoutFinished) + if self.runBackup: + self.onShown.append(self.doBackup) + + def layoutFinished(self): + self.setWindowTitle() + + def setWindowTitle(self): + self.setTitle(_("Backup is running...")) + + def doBackup(self): + configfile.save() + try: + if (path.exists(self.backuppath) == False): + makedirs(self.backuppath) + self.backupdirs = ' '.join( config.plugins.configurationbackup.backupdirs.value ) + if path.exists(self.fullbackupfilename): + dt = str(date.fromtimestamp(stat(self.fullbackupfilename).st_ctime)) + self.newfilename = self.backuppath + "/" + dt + '-' + self.backupfile + if path.exists(self.newfilename): + remove(self.newfilename) + rename(self.fullbackupfilename,self.newfilename) + if self.finished_cb: + self.session.openWithCallback(self.finished_cb, Console, title = _("Backup is running..."), cmdlist = ["tar -czvf " + self.fullbackupfilename + " " + self.backupdirs],finishedCallback = self.backupFinishedCB,closeOnSuccess = True) + else: + self.session.open(Console, title = _("Backup is running..."), cmdlist = ["tar -czvf " + self.fullbackupfilename + " " + self.backupdirs],finishedCallback = self.backupFinishedCB, closeOnSuccess = True) + except OSError: + if self.finished_cb: + self.session.openWithCallback(self.finished_cb, MessageBox, _("Sorry, your backup destination is not writeable.\nPlease select a different one."), MessageBox.TYPE_INFO, timeout = 10 ) + else: + self.session.openWithCallback(self.backupErrorCB,MessageBox, _("Sorry, your backup destination is not writeable.\nPlease select a different one."), MessageBox.TYPE_INFO, timeout = 10 ) + + def backupFinishedCB(self,retval = None): + self.close(True) + + def backupErrorCB(self,retval = None): + self.close(False) + + def runAsync(self, finished_cb): + self.finished_cb = finished_cb + self.doBackup() + + +class BackupSelection(Screen): + skin = """ + + + + + + + + + """ + + def __init__(self, session): + Screen.__init__(self, session) + self["key_red"] = StaticText(_("Cancel")) + self["key_green"] = StaticText(_("Save")) + self["key_yellow"] = StaticText() + + self.selectedFiles = config.plugins.configurationbackup.backupdirs.value + defaultDir = '/' + inhibitDirs = ["/bin", "/boot", "/dev", "/autofs", "/lib", "/proc", "/sbin", "/sys", "/hdd", "/tmp", "/mnt", "/media"] + self.filelist = MultiFileSelectList(self.selectedFiles, defaultDir, inhibitDirs = inhibitDirs ) + self["checkList"] = self.filelist + + self["actions"] = ActionMap(["DirectionActions", "OkCancelActions", "ShortcutActions"], + { + "cancel": self.exit, + "red": self.exit, + "yellow": self.changeSelectionState, + "green": self.saveSelection, + "ok": self.okClicked, + "left": self.left, + "right": self.right, + "down": self.down, + "up": self.up + }, -1) + if not self.selectionChanged in self["checkList"].onSelectionChanged: + self["checkList"].onSelectionChanged.append(self.selectionChanged) + self.onLayoutFinish.append(self.layoutFinished) + + def layoutFinished(self): + idx = 0 + self["checkList"].moveToIndex(idx) + self.setWindowTitle() + self.selectionChanged() + + def setWindowTitle(self): + self.setTitle(_("Select files/folders to backup")) + + def selectionChanged(self): + current = self["checkList"].getCurrent()[0] + if current[2] is True: + self["key_yellow"].setText(_("Deselect")) + else: + self["key_yellow"].setText(_("Select")) + + def up(self): + self["checkList"].up() + + def down(self): + self["checkList"].down() + + def left(self): + self["checkList"].pageUp() + + def right(self): + self["checkList"].pageDown() + + def changeSelectionState(self): + self["checkList"].changeSelectionState() + self.selectedFiles = self["checkList"].getSelectedList() + + def saveSelection(self): + self.selectedFiles = self["checkList"].getSelectedList() + config.plugins.configurationbackup.backupdirs.value = self.selectedFiles + config.plugins.configurationbackup.backupdirs.save() + config.plugins.configurationbackup.save() + config.save() + self.close(None) + + def exit(self): + self.close(None) + + def okClicked(self): + if self.filelist.canDescent(): + self.filelist.descent() + + +class RestoreMenu(Screen): + skin = """ + + + + + + + + + """ + + def __init__(self, session, plugin_path): + Screen.__init__(self, session) + self.skin_path = plugin_path + + self["key_red"] = StaticText(_("Cancel")) + self["key_green"] = StaticText(_("Restore")) + self["key_yellow"] = StaticText(_("Delete")) + + self.sel = [] + self.val = [] + self.entry = False + self.exe = False + + self.path = "" + + self["actions"] = NumberActionMap(["SetupActions"], + { + "ok": self.KeyOk, + "cancel": self.keyCancel + }, -1) + + self["shortcuts"] = ActionMap(["ShortcutActions"], + { + "red": self.keyCancel, + "green": self.KeyOk, + "yellow": self.deleteFile, + }) + self.flist = [] + self["filelist"] = MenuList(self.flist) + self.fill_list() + self.onLayoutFinish.append(self.layoutFinished) + + def layoutFinished(self): + self.setWindowTitle() + + def setWindowTitle(self): + self.setTitle(_("Restore backups")) + + + def fill_list(self): + self.flist = [] + self.path = getBackupPath() + if (path.exists(self.path) == False): + makedirs(self.path) + for file in listdir(self.path): + if (file.endswith(".tar.gz")): + self.flist.append((file)) + self.entry = True + self.flist.sort(reverse=True) + self["filelist"].l.setList(self.flist) + + def KeyOk(self): + if (self.exe == False) and (self.entry == True): + self.sel = self["filelist"].getCurrent() + if self.sel: + self.val = self.path + "/" + self.sel + self.session.openWithCallback(self.startRestore, MessageBox, _("Are you sure you want to restore\nthe following backup:\n%s\nYour receiver will restart after the backup has been restored!") % (self.sel)) + + def keyCancel(self): + self.close() + + def startRestore(self, ret = False): + if (ret == True): + self.exe = True + self.session.open(Console, title = _("Restoring..."), cmdlist = ["tar -xzvf " + self.path + "/" + self.sel + " -C /", "killall -9 enigma2"]) + + def deleteFile(self): + if (self.exe == False) and (self.entry == True): + self.sel = self["filelist"].getCurrent() + if self.sel: + self.val = self.path + "/" + self.sel + self.session.openWithCallback(self.startDelete, MessageBox, _("Are you sure you want to delete\nthe following backup:\n") + self.sel) + + def startDelete(self, ret = False): + if (ret == True): + self.exe = True + print "removing:",self.val + if (path.exists(self.val) == True): + remove(self.val) + self.exe = False + self.fill_list() + +class RestoreScreen(Screen, ConfigListScreen): + skin = """ + + + """ + + def __init__(self, session, runRestore = False): + Screen.__init__(self, session) + self.session = session + self.runRestore = runRestore + self["actions"] = ActionMap(["WizardActions", "DirectionActions"], + { + "ok": self.close, + "back": self.close, + "cancel": self.close, + }, -1) + self.finished_cb = None + self.backuppath = getBackupPath() + self.backupfile = getBackupFilename() + self.fullbackupfilename = self.backuppath + "/" + self.backupfile + self.list = [] + ConfigListScreen.__init__(self, self.list) + self.onLayoutFinish.append(self.layoutFinished) + if self.runRestore: + self.onShown.append(self.doRestore) + + def layoutFinished(self): + self.setWindowTitle() + + def setWindowTitle(self): + self.setTitle(_("Restoring...")) + + def doRestore(self): + if path.exists("/proc/stb/vmpeg/0/dst_width"): + restorecmdlist = ["tar -xzvf " + self.fullbackupfilename + " -C /", "echo 0 > /proc/stb/vmpeg/0/dst_height", "echo 0 > /proc/stb/vmpeg/0/dst_left", "echo 0 > /proc/stb/vmpeg/0/dst_top", "echo 0 > /proc/stb/vmpeg/0/dst_width", "killall -9 enigma2"] + else: + restorecmdlist = ["tar -xzvf " + self.fullbackupfilename + " -C /", "killall -9 enigma2"] + if self.finished_cb: + self.session.openWithCallback(self.finished_cb, Console, title = _("Restoring..."), cmdlist = restorecmdlist) + else: + self.session.open(Console, title = _("Restoring..."), cmdlist = restorecmdlist) + + def backupFinishedCB(self,retval = None): + self.close(True) + + def backupErrorCB(self,retval = None): + self.close(False) + + def runAsync(self, finished_cb): + self.finished_cb = finished_cb + self.doRestore() diff --git a/lib/python/Plugins/SystemPlugins/SoftwareManager/ImageWizard.py b/lib/python/Plugins/SystemPlugins/SoftwareManager/ImageWizard.py new file mode 100644 index 0000000..877401b --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/SoftwareManager/ImageWizard.py @@ -0,0 +1,122 @@ +from Screens.Wizard import WizardSummary +from Screens.WizardLanguage import WizardLanguage +from Screens.Wizard import wizardManager +from Screens.Rc import Rc +from Components.Label import Label +from Components.MenuList import MenuList +from Components.PluginComponent import plugins +from Plugins.Plugin import PluginDescriptor +from Tools.Directories import fileExists, resolveFilename, SCOPE_PLUGINS, SCOPE_SKIN_IMAGE +from Components.Pixmap import Pixmap, MovingPixmap, MultiPixmap +from os import popen, path, makedirs, listdir, access, stat, rename, remove, W_OK, R_OK +from enigma import eEnv + +from Components.config import config, getConfigListEntry, ConfigSubsection, ConfigText, ConfigLocations, ConfigBoolean +from Components.Harddisk import harddiskmanager + +config.misc.firstrun = ConfigBoolean(default = True) +config.plugins.configurationbackup = ConfigSubsection() +config.plugins.configurationbackup.backuplocation = ConfigText(default = '/media/hdd/', visible_width = 50, fixed_size = False) +config.plugins.configurationbackup.backupdirs = ConfigLocations(default=[eEnv.resolve('${sysconfdir}/enigma2/'), '/etc/network/interfaces', '/etc/wpa_supplicant.conf', '/etc/wpa_supplicant.ath0.conf', '/etc/wpa_supplicant.wlan0.conf', '/etc/resolv.conf', '/etc/default_gw', '/etc/hostname']) + + +backupfile = "enigma2settingsbackup.tar.gz" + +def checkConfigBackup(): + parts = [ (r.description, r.mountpoint) for r in harddiskmanager.getMountedPartitions(onlyhotplug = False)] + for x in parts: + if x[1] == '/': + parts.remove(x) + if len(parts): + for x in parts: + if x[1].endswith('/'): + fullbackupfile = x[1] + 'backup/' + backupfile + if fileExists(fullbackupfile): + config.plugins.configurationbackup.backuplocation.value = str(x[1]) + config.plugins.configurationbackup.backuplocation.save() + config.plugins.configurationbackup.save() + return x + else: + fullbackupfile = x[1] + '/backup/' + backupfile + if fileExists(fullbackupfile): + config.plugins.configurationbackup.backuplocation.value = str(x[1]) + config.plugins.configurationbackup.backuplocation.save() + config.plugins.configurationbackup.save() + return x + return None + +def checkBackupFile(): + backuplocation = config.plugins.configurationbackup.backuplocation.value + if backuplocation.endswith('/'): + fullbackupfile = backuplocation + 'backup/' + backupfile + if fileExists(fullbackupfile): + return True + else: + return False + else: + fullbackupfile = backuplocation + '/backup/' + backupfile + if fileExists(fullbackupfile): + return True + else: + return False + +if checkConfigBackup() is None: + backupAvailable = 0 +else: + backupAvailable = 1 + +class ImageWizard(WizardLanguage, Rc): + skin = """ + + + + + + + + + + + + + + + """ + def __init__(self, session): + self.xmlfile = resolveFilename(SCOPE_PLUGINS, "SystemPlugins/SoftwareManager/imagewizard.xml") + WizardLanguage.__init__(self, session, showSteps = False, showStepSlider = False) + Rc.__init__(self) + self.session = session + self["wizard"] = Pixmap() + self.selectedDevice = None + + def markDone(self): + pass + + def listDevices(self): + list = [ (r.description, r.mountpoint) for r in harddiskmanager.getMountedPartitions(onlyhotplug = False)] + for x in list: + result = access(x[1], W_OK) and access(x[1], R_OK) + if result is False or x[1] == '/': + list.remove(x) + for x in list: + if x[1].startswith('/autofs/'): + list.remove(x) + return list + + def deviceSelectionMade(self, index): + self.deviceSelect(index) + + def deviceSelectionMoved(self): + self.deviceSelect(self.selection) + + def deviceSelect(self, device): + self.selectedDevice = device + config.plugins.configurationbackup.backuplocation.value = self.selectedDevice + config.plugins.configurationbackup.backuplocation.save() + config.plugins.configurationbackup.save() + + +if config.misc.firstrun.value: + wizardManager.registerWizard(ImageWizard, backupAvailable, priority = 10) + diff --git a/lib/python/Plugins/SystemPlugins/SoftwareManager/Makefile.am b/lib/python/Plugins/SystemPlugins/SoftwareManager/Makefile.am new file mode 100644 index 0000000..2267b81 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/SoftwareManager/Makefile.am @@ -0,0 +1,21 @@ +installdir = $(pkglibdir)/python/Plugins/SystemPlugins/SoftwareManager + +SUBDIRS = meta + +install_PYTHON = \ + __init__.py \ + plugin.py \ + BackupRestore.py \ + ImageWizard.py \ + SoftwareTools.py + +dist_install_DATA = \ + imagewizard.xml \ + installable.png \ + installed.png \ + install.png \ + noprev.png \ + remove.png \ + update.png \ + upgradeable.png \ + upgrade.png diff --git a/lib/python/Plugins/SystemPlugins/SoftwareManager/SoftwareTools.py b/lib/python/Plugins/SystemPlugins/SoftwareManager/SoftwareTools.py new file mode 100644 index 0000000..821bcfe --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/SoftwareManager/SoftwareTools.py @@ -0,0 +1,279 @@ +# -*- coding: iso-8859-1 -*- +from enigma import eConsoleAppContainer +from Components.Console import Console +from Components.About import about +from Components.PackageInfo import PackageInfoHandler +from Components.Language import language +from Components.Sources.List import List +from Components.Ipkg import IpkgComponent +from Components.Network import iNetwork +from Tools.Directories import pathExists, fileExists, resolveFilename, SCOPE_METADIR +from Tools.HardwareInfo import HardwareInfo +from time import time + + +class SoftwareTools(PackageInfoHandler): + lastDownloadDate = None + NetworkConnectionAvailable = None + list_updating = False + available_updates = 0 + available_updatelist = [] + available_packetlist = [] + installed_packetlist = {} + + + def __init__(self): + aboutInfo = about.getImageVersionString() + if aboutInfo.startswith("dev-"): + self.ImageVersion = 'Experimental' + else: + self.ImageVersion = 'Stable' + self.language = language.getLanguage()[:2] # getLanguage returns e.g. "fi_FI" for "language_country" + PackageInfoHandler.__init__(self, self.statusCallback, blocking = False, neededTag = 'ALL_TAGS', neededFlag = self.ImageVersion) + self.directory = resolveFilename(SCOPE_METADIR) + self.list = List([]) + self.NotifierCallback = None + self.Console = Console() + self.UpdateConsole = Console() + self.cmdList = [] + self.unwanted_extensions = ('-dbg', '-dev', '-doc', '-staticdev', '-src') + self.ipkg = IpkgComponent() + self.ipkg.addCallback(self.ipkgCallback) + + def statusCallback(self, status, progress): + pass + + def startSoftwareTools(self, callback = None): + if callback is not None: + self.NotifierCallback = callback + iNetwork.checkNetworkState(self.checkNetworkCB) + + def checkNetworkCB(self,data): + if data is not None: + if data <= 2: + self.NetworkConnectionAvailable = True + self.getUpdates() + else: + self.NetworkConnectionAvailable = False + self.getUpdates() + + def getUpdates(self, callback = None): + if self.lastDownloadDate is None: + if self.NetworkConnectionAvailable == True: + self.lastDownloadDate = time() + if self.list_updating is False and callback is None: + self.list_updating = True + self.ipkg.startCmd(IpkgComponent.CMD_UPDATE) + elif self.list_updating is False and callback is not None: + self.list_updating = True + self.NotifierCallback = callback + self.ipkg.startCmd(IpkgComponent.CMD_UPDATE) + elif self.list_updating is True and callback is not None: + self.NotifierCallback = callback + else: + self.list_updating = False + if callback is not None: + callback(False) + elif self.NotifierCallback is not None: + self.NotifierCallback(False) + else: + if self.NetworkConnectionAvailable == True: + self.lastDownloadDate = time() + if self.list_updating is False and callback is None: + self.list_updating = True + self.ipkg.startCmd(IpkgComponent.CMD_UPDATE) + elif self.list_updating is False and callback is not None: + self.list_updating = True + self.NotifierCallback = callback + self.ipkg.startCmd(IpkgComponent.CMD_UPDATE) + elif self.list_updating is True and callback is not None: + self.NotifierCallback = callback + else: + if self.list_updating and callback is not None: + self.NotifierCallback = callback + self.startIpkgListAvailable() + else: + self.list_updating = False + if callback is not None: + callback(False) + elif self.NotifierCallback is not None: + self.NotifierCallback(False) + + def ipkgCallback(self, event, param): + if event == IpkgComponent.EVENT_ERROR: + self.list_updating = False + if self.NotifierCallback is not None: + self.NotifierCallback(False) + elif event == IpkgComponent.EVENT_DONE: + if self.list_updating: + self.startIpkgListAvailable() + pass + + def startIpkgListAvailable(self, callback = None): + if callback is not None: + self.list_updating = True + if self.list_updating: + if not self.UpdateConsole: + self.UpdateConsole = Console() + cmd = self.ipkg.ipkg + " list" + self.UpdateConsole.ePopen(cmd, self.IpkgListAvailableCB, callback) + + def IpkgListAvailableCB(self, result, retval, extra_args = None): + (callback) = extra_args + if result: + if self.list_updating: + self.available_packetlist = [] + for x in result.splitlines(): + tokens = x.split(' - ') + name = tokens[0].strip() + if not any(name.endswith(x) for x in self.unwanted_extensions): + l = len(tokens) + version = l > 1 and tokens[1].strip() or "" + descr = l > 2 and tokens[2].strip() or "" + self.available_packetlist.append([name, version, descr]) + if callback is None: + self.startInstallMetaPackage() + else: + if self.UpdateConsole: + if len(self.UpdateConsole.appContainers) == 0: + callback(True) + else: + self.list_updating = False + if self.UpdateConsole: + if len(self.UpdateConsole.appContainers) == 0: + if callback is not None: + callback(False) + + def startInstallMetaPackage(self, callback = None): + if callback is not None: + self.list_updating = True + if self.list_updating: + if self.NetworkConnectionAvailable == True: + if not self.UpdateConsole: + self.UpdateConsole = Console() + cmd = self.ipkg.ipkg + " install enigma2-meta enigma2-plugins-meta enigma2-skins-meta" + self.UpdateConsole.ePopen(cmd, self.InstallMetaPackageCB, callback) + else: + self.InstallMetaPackageCB(True) + + def InstallMetaPackageCB(self, result, retval = None, extra_args = None): + (callback) = extra_args + if result: + self.fillPackagesIndexList() + if callback is None: + self.startIpkgListInstalled() + else: + if self.UpdateConsole: + if len(self.UpdateConsole.appContainers) == 0: + callback(True) + else: + self.list_updating = False + if self.UpdateConsole: + if len(self.UpdateConsole.appContainers) == 0: + if callback is not None: + callback(False) + + def startIpkgListInstalled(self, callback = None): + if callback is not None: + self.list_updating = True + if self.list_updating: + if not self.UpdateConsole: + self.UpdateConsole = Console() + cmd = self.ipkg.ipkg + " list_installed" + self.UpdateConsole.ePopen(cmd, self.IpkgListInstalledCB, callback) + + def IpkgListInstalledCB(self, result, retval, extra_args = None): + (callback) = extra_args + if result: + self.installed_packetlist = {} + for x in result.splitlines(): + tokens = x.split(' - ') + name = tokens[0].strip() + if not any(name.endswith(x) for x in self.unwanted_extensions): + l = len(tokens) + version = l > 1 and tokens[1].strip() or "" + self.installed_packetlist[name] = version + for package in self.packagesIndexlist[:]: + if not self.verifyPrerequisites(package[0]["prerequisites"]): + self.packagesIndexlist.remove(package) + for package in self.packagesIndexlist[:]: + attributes = package[0]["attributes"] + if attributes.has_key("packagetype"): + if attributes["packagetype"] == "internal": + self.packagesIndexlist.remove(package) + if callback is None: + self.countUpdates() + else: + if self.UpdateConsole: + if len(self.UpdateConsole.appContainers) == 0: + callback(True) + else: + self.list_updating = False + if self.UpdateConsole: + if len(self.UpdateConsole.appContainers) == 0: + if callback is not None: + callback(False) + + def countUpdates(self, callback = None): + self.available_updates = 0 + self.available_updatelist = [] + for package in self.packagesIndexlist[:]: + attributes = package[0]["attributes"] + packagename = attributes["packagename"] + for x in self.available_packetlist: + if x[0] == packagename: + if self.installed_packetlist.has_key(packagename): + if self.installed_packetlist[packagename] != x[1]: + self.available_updates +=1 + self.available_updatelist.append([packagename]) + + self.list_updating = False + if self.UpdateConsole: + if len(self.UpdateConsole.appContainers) == 0: + if callback is not None: + callback(True) + callback = None + elif self.NotifierCallback is not None: + self.NotifierCallback(True) + self.NotifierCallback = None + + def startIpkgUpdate(self, callback = None): + if not self.Console: + self.Console = Console() + cmd = self.ipkg.ipkg + " update" + self.Console.ePopen(cmd, self.IpkgUpdateCB, callback) + + def IpkgUpdateCB(self, result, retval, extra_args = None): + (callback) = extra_args + if result: + if self.Console: + if len(self.Console.appContainers) == 0: + if callback is not None: + callback(True) + callback = None + + def cleanupSoftwareTools(self): + self.list_updating = False + if self.NotifierCallback is not None: + self.NotifierCallback = None + self.ipkg.stop() + if self.Console is not None: + if len(self.Console.appContainers): + for name in self.Console.appContainers.keys(): + self.Console.kill(name) + if self.UpdateConsole is not None: + if len(self.UpdateConsole.appContainers): + for name in self.UpdateConsole.appContainers.keys(): + self.UpdateConsole.kill(name) + + def verifyPrerequisites(self, prerequisites): + if prerequisites.has_key("hardware"): + hardware_found = False + for hardware in prerequisites["hardware"]: + if hardware == HardwareInfo().device_name: + hardware_found = True + if not hardware_found: + return False + return True + +iSoftwareTools = SoftwareTools() diff --git a/lib/python/Plugins/SystemPlugins/SoftwareManager/__init__.py b/lib/python/Plugins/SystemPlugins/SoftwareManager/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lib/python/Plugins/SystemPlugins/SoftwareManager/imagewizard.xml b/lib/python/Plugins/SystemPlugins/SoftwareManager/imagewizard.xml new file mode 100644 index 0000000..6f25769 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/SoftwareManager/imagewizard.xml @@ -0,0 +1,102 @@ + + + +from Plugins.SystemPlugins.SoftwareManager.ImageWizard import checkConfigBackup +self.backuppath = checkConfigBackup() +self.condition = (self.backuppath is not None and config.misc.firstrun.value) + + + + + + + +self.clearSelectedKeys() +self.selectKey("OK") + + + + + + + + + + + + + + + + + + + + + + + + + + + + +self.currStep = self.getStepWithID('backupresult') +self.afterAsyncCode() + + + + + +from Plugins.SystemPlugins.SoftwareManager.ImageWizard import checkBackupFile +self.backuppath = checkBackupFile() +self.condition = (self.backuppath is True) + + + + + + +from Plugins.SystemPlugins.SoftwareManager.ImageWizard import checkBackupFile +self.backuppath = checkBackupFile() +self.condition = (self.backuppath is False) + + + + + + + + + + + + + + + + + + + + + + + + + + + +from enigma import quitMainloop +quitMainloop(1) + + + + + + +self.condition = self.isLastWizard + + + + diff --git a/lib/python/Plugins/SystemPlugins/SoftwareManager/install.png b/lib/python/Plugins/SystemPlugins/SoftwareManager/install.png new file mode 100644 index 0000000..1287c35 Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/SoftwareManager/install.png differ diff --git a/lib/python/Plugins/SystemPlugins/SoftwareManager/installable.png b/lib/python/Plugins/SystemPlugins/SoftwareManager/installable.png new file mode 100644 index 0000000..09baa81 Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/SoftwareManager/installable.png differ diff --git a/lib/python/Plugins/SystemPlugins/SoftwareManager/installed.png b/lib/python/Plugins/SystemPlugins/SoftwareManager/installed.png new file mode 100644 index 0000000..75dfc4f Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/SoftwareManager/installed.png differ diff --git a/lib/python/Plugins/SystemPlugins/SoftwareManager/meta/Makefile.am b/lib/python/Plugins/SystemPlugins/SoftwareManager/meta/Makefile.am new file mode 100644 index 0000000..bf064c2 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/SoftwareManager/meta/Makefile.am @@ -0,0 +1,5 @@ +installdir = $(datadir)/meta + +dist_install_DATA = plugin_softwaremanager.xml + +EXTRA_DIST = softwaremanager_en.jpg softwaremanager_de.jpg diff --git a/lib/python/Plugins/SystemPlugins/SoftwareManager/meta/plugin_softwaremanager.xml b/lib/python/Plugins/SystemPlugins/SoftwareManager/meta/plugin_softwaremanager.xml new file mode 100644 index 0000000..5561f4c --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/SoftwareManager/meta/plugin_softwaremanager.xml @@ -0,0 +1,21 @@ + + + + + + + Dream Multimedia + SoftwareManager + enigma2-plugin-systemplugins-softwaremanager + Software manager manages your receiver software + The software manager manages your receiver's software.\n + It's easy to update your receiver's software, install or remove plugins or even backup and restore your system settings. + + + + + + + + + diff --git a/lib/python/Plugins/SystemPlugins/SoftwareManager/meta/softwaremanager_de.jpg b/lib/python/Plugins/SystemPlugins/SoftwareManager/meta/softwaremanager_de.jpg new file mode 100644 index 0000000..54e6419 Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/SoftwareManager/meta/softwaremanager_de.jpg differ diff --git a/lib/python/Plugins/SystemPlugins/SoftwareManager/meta/softwaremanager_en.jpg b/lib/python/Plugins/SystemPlugins/SoftwareManager/meta/softwaremanager_en.jpg new file mode 100644 index 0000000..0832f0a Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/SoftwareManager/meta/softwaremanager_en.jpg differ diff --git a/lib/python/Plugins/SystemPlugins/SoftwareManager/noprev.png b/lib/python/Plugins/SystemPlugins/SoftwareManager/noprev.png new file mode 100644 index 0000000..0a7cf2b Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/SoftwareManager/noprev.png differ diff --git a/lib/python/Plugins/SystemPlugins/SoftwareManager/plugin.py b/lib/python/Plugins/SystemPlugins/SoftwareManager/plugin.py new file mode 100644 index 0000000..ef42508 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/SoftwareManager/plugin.py @@ -0,0 +1,1935 @@ +from Plugins.Plugin import PluginDescriptor +from Screens.Console import Console +from Screens.ChoiceBox import ChoiceBox +from Screens.MessageBox import MessageBox +from Screens.Screen import Screen +from Screens.Standby import TryQuitMainloop +from Screens.Ipkg import Ipkg +from Screens.SoftwareUpdate import UpdatePlugin +from Components.ActionMap import ActionMap, NumberActionMap +from Components.Input import Input +from Components.Ipkg import IpkgComponent +from Components.Sources.StaticText import StaticText +from Components.ScrollLabel import ScrollLabel +from Components.Pixmap import Pixmap +from Components.MenuList import MenuList +from Components.Sources.List import List +from Components.Slider import Slider +from Components.Harddisk import harddiskmanager +from Components.config import config,getConfigListEntry, ConfigSubsection, ConfigText, ConfigLocations, ConfigYesNo, ConfigSelection +from Components.ConfigList import ConfigListScreen +from Components.Console import Console +from Components.MultiContent import MultiContentEntryText, MultiContentEntryPixmapAlphaTest +from Components.SelectionList import SelectionList +from Components.PluginComponent import plugins +from Components.About import about +from Components.PackageInfo import PackageInfoHandler +from Components.Language import language +from Components.AVSwitch import AVSwitch +from Components.Task import job_manager +from Tools.Directories import pathExists, fileExists, resolveFilename, SCOPE_PLUGINS, SCOPE_CURRENT_PLUGIN, SCOPE_CURRENT_SKIN, SCOPE_METADIR +from Tools.LoadPixmap import LoadPixmap +from Tools.NumericalTextInput import NumericalTextInput +from enigma import eTimer, RT_HALIGN_LEFT, RT_VALIGN_CENTER, eListboxPythonMultiContent, eListbox, gFont, getDesktop, ePicLoad, eRCInput, getPrevAsciiCode, eEnv, iRecordableService +from cPickle import dump, load +from os import path as os_path, system as os_system, unlink, stat, mkdir, popen, makedirs, listdir, access, rename, remove, W_OK, R_OK, F_OK +from time import time, gmtime, strftime, localtime +from stat import ST_MTIME +from datetime import date +from twisted.web import client +from twisted.internet import reactor + +from ImageWizard import ImageWizard +from BackupRestore import BackupSelection, RestoreMenu, BackupScreen, RestoreScreen, getBackupPath, getBackupFilename +from SoftwareTools import iSoftwareTools + +config.plugins.configurationbackup = ConfigSubsection() +config.plugins.configurationbackup.backuplocation = ConfigText(default = '/media/hdd/', visible_width = 50, fixed_size = False) +config.plugins.configurationbackup.backupdirs = ConfigLocations(default=[eEnv.resolve('${sysconfdir}/enigma2/'), '/etc/network/interfaces', '/etc/wpa_supplicant.conf', '/etc/wpa_supplicant.ath0.conf', '/etc/wpa_supplicant.wlan0.conf', '/etc/resolv.conf', '/etc/default_gw', '/etc/hostname']) + +config.plugins.softwaremanager = ConfigSubsection() +config.plugins.softwaremanager.overwriteConfigFiles = ConfigSelection( + [ + ("Y", _("Yes, always")), + ("N", _("No, never")), + ("ask", _("Always ask")) + ], "Y") +config.plugins.softwaremanager.onSetupMenu = ConfigYesNo(default=False) +config.plugins.softwaremanager.onBlueButton = ConfigYesNo(default=False) + +def write_cache(cache_file, cache_data): + #Does a cPickle dump + if not os_path.isdir( os_path.dirname(cache_file) ): + try: + mkdir( os_path.dirname(cache_file) ) + except OSError: + print os_path.dirname(cache_file), 'is a file' + fd = open(cache_file, 'w') + dump(cache_data, fd, -1) + fd.close() + +def valid_cache(cache_file, cache_ttl): + #See if the cache file exists and is still living + try: + mtime = stat(cache_file)[ST_MTIME] + except: + return 0 + curr_time = time() + if (curr_time - mtime) > cache_ttl: + return 0 + else: + return 1 + +def load_cache(cache_file): + #Does a cPickle load + fd = open(cache_file) + cache_data = load(fd) + fd.close() + return cache_data + + +class UpdatePluginMenu(Screen): + skin = """ + + + + + + + {"template": [ + MultiContentEntryText(pos = (2, 2), size = (330, 24), flags = RT_HALIGN_LEFT, text = 1), # index 0 is the MenuText, + ], + "fonts": [gFont("Regular", 22)], + "itemHeight": 25 + } + + + + + {"template": [ + MultiContentEntryText(pos = (2, 2), size = (240, 300), flags = RT_HALIGN_CENTER|RT_VALIGN_CENTER|RT_WRAP, text = 2), # index 2 is the Description, + ], + "fonts": [gFont("Regular", 22)], + "itemHeight": 300 + } + + + + """ + + def __init__(self, session, args = 0): + Screen.__init__(self, session) + self.skin_path = plugin_path + self.menu = args + self.list = [] + self.oktext = _("\nPress OK on your remote control to continue.") + self.menutext = _("Press MENU on your remote control for additional options.") + self.infotext = _("Press INFO on your remote control for additional information.") + self.text = "" + self.backupdirs = ' '.join( config.plugins.configurationbackup.backupdirs.value ) + if self.menu == 0: + print "building menu entries" + self.list.append(("install-extensions", _("Manage extensions"), _("\nManage extensions or plugins for your receiver" ) + self.oktext, None)) + self.list.append(("software-update", _("Software update"), _("\nOnline update of your receiver software." ) + self.oktext, None)) + self.list.append(("software-restore", _("Software restore"), _("\nRestore your receiver with a new firmware." ) + self.oktext, None)) + self.list.append(("system-backup", _("Backup system settings"), _("\nBackup your receiver settings." ) + self.oktext + "\n\n" + self.infotext, None)) + self.list.append(("system-restore",_("Restore system settings"), _("\nRestore your receiver settings." ) + self.oktext, None)) + self.list.append(("ipkg-install", _("Install local extension"), _("\nScan for local extensions and install them." ) + self.oktext, None)) + for p in plugins.getPlugins(PluginDescriptor.WHERE_SOFTWAREMANAGER): + if p.__call__.has_key("SoftwareSupported"): + callFnc = p.__call__["SoftwareSupported"](None) + if callFnc is not None: + if p.__call__.has_key("menuEntryName"): + menuEntryName = p.__call__["menuEntryName"](None) + else: + menuEntryName = _('Extended Software') + if p.__call__.has_key("menuEntryDescription"): + menuEntryDescription = p.__call__["menuEntryDescription"](None) + else: + menuEntryDescription = _('Extended Software Plugin') + self.list.append(('default-plugin', menuEntryName, menuEntryDescription + self.oktext, callFnc)) + if config.usage.setup_level.index >= 2: # expert+ + self.list.append(("advanced", _("Advanced options"), _("\nAdvanced options and settings." ) + self.oktext, None)) + elif self.menu == 1: + self.list.append(("advancedrestore", _("Advanced restore"), _("\nRestore your backups by date." ) + self.oktext, None)) + self.list.append(("backuplocation", _("Select backup location"), _("\nSelect your backup device.\nCurrent device: " ) + config.plugins.configurationbackup.backuplocation.value + self.oktext, None)) + self.list.append(("backupfiles", _("Select backup files"), _("Select files for backup.") + self.oktext + "\n\n" + self.infotext, None)) + if config.usage.setup_level.index >= 2: # expert+ + self.list.append(("ipkg-manager", _("Packet management"), _("\nView, install and remove available or installed packages." ) + self.oktext, None)) + self.list.append(("ipkg-source",_("Select upgrade source"), _("\nEdit the upgrade source address." ) + self.oktext, None)) + for p in plugins.getPlugins(PluginDescriptor.WHERE_SOFTWAREMANAGER): + if p.__call__.has_key("AdvancedSoftwareSupported"): + callFnc = p.__call__["AdvancedSoftwareSupported"](None) + if callFnc is not None: + if p.__call__.has_key("menuEntryName"): + menuEntryName = p.__call__["menuEntryName"](None) + else: + menuEntryName = _('Advanced software') + if p.__call__.has_key("menuEntryDescription"): + menuEntryDescription = p.__call__["menuEntryDescription"](None) + else: + menuEntryDescription = _('Advanced software plugin') + self.list.append(('advanced-plugin', menuEntryName, menuEntryDescription + self.oktext, callFnc)) + + self["menu"] = List(self.list) + self["key_red"] = StaticText(_("Close")) + self["status"] = StaticText(self.menutext) + + self["shortcuts"] = NumberActionMap(["ShortcutActions", "WizardActions", "InfobarEPGActions", "MenuActions", "NumberActions"], + { + "ok": self.go, + "back": self.close, + "red": self.close, + "menu": self.handleMenu, + "showEventInfo": self.handleInfo, + "1": self.go, + "2": self.go, + "3": self.go, + "4": self.go, + "5": self.go, + "6": self.go, + "7": self.go, + "8": self.go, + "9": self.go, + }, -1) + self.onLayoutFinish.append(self.layoutFinished) + self.backuppath = getBackupPath() + self.backupfile = getBackupFilename() + self.fullbackupfilename = self.backuppath + "/" + self.backupfile + self.onShown.append(self.setWindowTitle) + self.onChangedEntry = [] + self["menu"].onSelectionChanged.append(self.selectionChanged) + + def createSummary(self): + from Screens.PluginBrowser import PluginBrowserSummary + return PluginBrowserSummary + + def selectionChanged(self): + item = self["menu"].getCurrent() + if item: + name = item[1] + desc = item[2] + else: + name = "-" + desc = "" + for cb in self.onChangedEntry: + cb(name, desc) + + def layoutFinished(self): + idx = 0 + self["menu"].index = idx + + def setWindowTitle(self): + self.setTitle(_("Software management")) + + def cleanup(self): + iSoftwareTools.cleanupSoftwareTools() + + def getUpdateInfos(self): + if iSoftwareTools.NetworkConnectionAvailable is True: + if iSoftwareTools.available_updates is not 0: + self.text = _("There are at least %s updates available.") % (str(iSoftwareTools.available_updates)) + else: + self.text = "" #_("There are no updates available.") + if iSoftwareTools.list_updating is True: + self.text += "\n" + _("A search for available updates is currently in progress.") + else: + self.text = _("No network connection available.") + self["status"].setText(self.text) + + def handleMenu(self): + self.session.open(SoftwareManagerSetup) + + def handleInfo(self): + current = self["menu"].getCurrent() + if current: + currentEntry = current[0] + if currentEntry in ("system-backup","backupfiles"): + self.session.open(SoftwareManagerInfo, mode = "backupinfo") + + def go(self, num = None): + if num is not None: + num -= 1 + if not num < self["menu"].count(): + return + self["menu"].setIndex(num) + current = self["menu"].getCurrent() + if current: + currentEntry = current[0] + if self.menu == 0: + if (currentEntry == "software-update"): + self.session.open(UpdatePlugin, self.skin_path) + elif (currentEntry == "software-restore"): + self.session.open(ImageWizard) + elif (currentEntry == "install-extensions"): + self.session.open(PluginManager, self.skin_path) + elif (currentEntry == "system-backup"): + self.session.openWithCallback(self.backupDone,BackupScreen, runBackup = True) + elif (currentEntry == "system-restore"): + if os_path.exists(self.fullbackupfilename): + self.session.openWithCallback(self.startRestore, MessageBox, _("Are you sure you want to restore the backup?\nYour receiver will restart after the backup has been restored!")) + else: + self.session.open(MessageBox, _("Sorry, no backups found!"), MessageBox.TYPE_INFO, timeout = 10) + elif (currentEntry == "ipkg-install"): + try: + from Plugins.Extensions.MediaScanner.plugin import main + main(self.session) + except: + self.session.open(MessageBox, _("Sorry, %s has not been installed!") % ("MediaScanner"), MessageBox.TYPE_INFO, timeout = 10) + elif (currentEntry == "default-plugin"): + self.extended = current[3] + self.extended(self.session, None) + elif (currentEntry == "advanced"): + self.session.open(UpdatePluginMenu, 1) + elif self.menu == 1: + if (currentEntry == "ipkg-manager"): + self.session.open(PacketManager, self.skin_path) + elif (currentEntry == "backuplocation"): + parts = [ (r.description, r.mountpoint, self.session) for r in harddiskmanager.getMountedPartitions(onlyhotplug = False)] + for x in parts: + if not access(x[1], F_OK|R_OK|W_OK) or x[1] == '/': + parts.remove(x) + if len(parts): + self.session.openWithCallback(self.backuplocation_choosen, ChoiceBox, title = _("Please select medium to use as backup location"), list = parts) + elif (currentEntry == "backupfiles"): + self.session.openWithCallback(self.backupfiles_choosen,BackupSelection) + elif (currentEntry == "advancedrestore"): + self.session.open(RestoreMenu, self.skin_path) + elif (currentEntry == "ipkg-source"): + self.session.open(IPKGMenu, self.skin_path) + elif (currentEntry == "advanced-plugin"): + self.extended = current[3] + self.extended(self.session, None) + + def backupfiles_choosen(self, ret): + self.backupdirs = ' '.join( config.plugins.configurationbackup.backupdirs.value ) + config.plugins.configurationbackup.backupdirs.save() + config.plugins.configurationbackup.save() + config.save() + + def backuplocation_choosen(self, option): + oldpath = config.plugins.configurationbackup.backuplocation.getValue() + if option is not None: + config.plugins.configurationbackup.backuplocation.value = str(option[1]) + config.plugins.configurationbackup.backuplocation.save() + config.plugins.configurationbackup.save() + config.save() + newpath = config.plugins.configurationbackup.backuplocation.getValue() + if newpath != oldpath: + self.createBackupfolders() + + def createBackupfolders(self): + print "Creating backup folder if not already there..." + self.backuppath = getBackupPath() + try: + if (os_path.exists(self.backuppath) == False): + makedirs(self.backuppath) + except OSError: + self.session.open(MessageBox, _("Sorry, your backup destination is not writeable.\nPlease select a different one."), MessageBox.TYPE_INFO, timeout = 10) + + def backupDone(self,retval = None): + if retval is True: + self.session.open(MessageBox, _("Backup completed."), MessageBox.TYPE_INFO, timeout = 10) + else: + self.session.open(MessageBox, _("Backup failed."), MessageBox.TYPE_INFO, timeout = 10) + + def startRestore(self, ret = False): + if (ret == True): + self.exe = True + self.session.open(RestoreScreen, runRestore = True) + +class SoftwareManagerSetup(Screen, ConfigListScreen): + + skin = """ + + + + + + + + + + + + + """ + + def __init__(self, session, skin_path = None): + Screen.__init__(self, session) + self.session = session + self.skin_path = skin_path + if self.skin_path == None: + self.skin_path = resolveFilename(SCOPE_CURRENT_PLUGIN, "SystemPlugins/SoftwareManager") + + self.onChangedEntry = [ ] + self.setup_title = _("Software manager setup") + self.overwriteConfigfilesEntry = None + + self.list = [ ] + ConfigListScreen.__init__(self, self.list, session = session, on_change = self.changedEntry) + + self["actions"] = ActionMap(["SetupActions", "MenuActions"], + { + "cancel": self.keyCancel, + "save": self.apply, + "menu": self.closeRecursive, + }, -2) + + self["key_red"] = StaticText(_("Cancel")) + self["key_green"] = StaticText(_("OK")) + self["key_yellow"] = StaticText() + self["key_blue"] = StaticText() + self["introduction"] = StaticText() + + self.createSetup() + self.onLayoutFinish.append(self.layoutFinished) + + def layoutFinished(self): + self.setTitle(self.setup_title) + + def createSetup(self): + self.list = [ ] + self.overwriteConfigfilesEntry = getConfigListEntry(_("Overwrite configuration files?"), config.plugins.softwaremanager.overwriteConfigFiles) + self.list.append(self.overwriteConfigfilesEntry) + self.list.append(getConfigListEntry(_("show softwaremanager in setup menu"), config.plugins.softwaremanager.onSetupMenu)) + self.list.append(getConfigListEntry(_("show softwaremanager on blue button"), config.plugins.softwaremanager.onBlueButton)) + + self["config"].list = self.list + self["config"].l.setSeperation(400) + self["config"].l.setList(self.list) + if not self.selectionChanged in self["config"].onSelectionChanged: + self["config"].onSelectionChanged.append(self.selectionChanged) + self.selectionChanged() + + def selectionChanged(self): + if self["config"].getCurrent() == self.overwriteConfigfilesEntry: + self["introduction"].setText(_("Overwrite configuration files during software upgrade?")) + else: + self["introduction"].setText("") + + def newConfig(self): + pass + + def keyLeft(self): + ConfigListScreen.keyLeft(self) + + def keyRight(self): + ConfigListScreen.keyRight(self) + + def confirm(self, confirmed): + if not confirmed: + print "not confirmed" + return + else: + self.keySave() + plugins.clearPluginList() + plugins.readPluginList(resolveFilename(SCOPE_PLUGINS)) + + def apply(self): + self.session.openWithCallback(self.confirm, MessageBox, _("Use these settings?"), MessageBox.TYPE_YESNO, timeout = 20, default = True) + + def cancelConfirm(self, result): + if not result: + return + for x in self["config"].list: + x[1].cancel() + self.close() + + def keyCancel(self): + if self["config"].isChanged(): + self.session.openWithCallback(self.cancelConfirm, MessageBox, _("Really close without saving settings?"), MessageBox.TYPE_YESNO, timeout = 20, default = True) + else: + self.close() + + # for summary: + def changedEntry(self): + for x in self.onChangedEntry: + x() + self.selectionChanged() + + def getCurrentEntry(self): + return self["config"].getCurrent()[0] + + def getCurrentValue(self): + return str(self["config"].getCurrent()[1].value) + + def createSummary(self): + from Screens.Setup import SetupSummary + return SetupSummary + + +class SoftwareManagerInfo(Screen): + skin = """ + + + + + + + + + + + + {"template": [ + MultiContentEntryText(pos = (5, 0), size = (540, 26), font=0, flags = RT_HALIGN_LEFT | RT_HALIGN_CENTER, text = 0), # index 0 is the name + ], + "fonts": [gFont("Regular", 24),gFont("Regular", 22)], + "itemHeight": 26 + } + + + + + """ + + def __init__(self, session, skin_path = None, mode = None): + Screen.__init__(self, session) + self.session = session + self.mode = mode + self.skin_path = skin_path + if self.skin_path == None: + self.skin_path = resolveFilename(SCOPE_CURRENT_PLUGIN, "SystemPlugins/SoftwareManager") + + self["actions"] = ActionMap(["ShortcutActions", "WizardActions"], + { + "back": self.close, + "red": self.close, + }, -2) + + self.list = [] + self["list"] = List(self.list) + + self["key_red"] = StaticText(_("Close")) + self["key_green"] = StaticText() + self["key_yellow"] = StaticText() + self["key_blue"] = StaticText() + self["introduction"] = StaticText() + + self.onLayoutFinish.append(self.layoutFinished) + + def layoutFinished(self): + self.setTitle(_("Softwaremanager information")) + if self.mode is not None: + self.showInfos() + + def showInfos(self): + if self.mode == "backupinfo": + self.list = [] + backupfiles = config.plugins.configurationbackup.backupdirs.value + for entry in backupfiles: + self.list.append((entry,)) + self['list'].setList(self.list) + + +class PluginManager(Screen, PackageInfoHandler): + + skin = """ + + + + + + + + + + + + {"templates": + {"default": (51,[ + MultiContentEntryText(pos = (0, 1), size = (470, 24), font=0, flags = RT_HALIGN_LEFT, text = 0), # index 0 is the name + MultiContentEntryText(pos = (0, 25), size = (470, 24), font=1, flags = RT_HALIGN_LEFT, text = 2), # index 2 is the description + MultiContentEntryPixmapAlphaTest(pos = (475, 0), size = (48, 48), png = 5), # index 5 is the status pixmap + MultiContentEntryPixmapAlphaTest(pos = (0, 49), size = (550, 2), png = 6), # index 6 is the div pixmap + ]), + "category": (40,[ + MultiContentEntryText(pos = (30, 0), size = (500, 22), font=0, flags = RT_HALIGN_LEFT, text = 0), # index 0 is the name + MultiContentEntryText(pos = (30, 22), size = (500, 16), font=2, flags = RT_HALIGN_LEFT, text = 1), # index 1 is the description + MultiContentEntryPixmapAlphaTest(pos = (0, 38), size = (550, 2), png = 3), # index 3 is the div pixmap + ]) + }, + "fonts": [gFont("Regular", 22),gFont("Regular", 20),gFont("Regular", 16)], + "itemHeight": 52 + } + + + + """ + + def __init__(self, session, plugin_path = None, args = None): + Screen.__init__(self, session) + self.session = session + self.skin_path = plugin_path + if self.skin_path == None: + self.skin_path = resolveFilename(SCOPE_CURRENT_PLUGIN, "SystemPlugins/SoftwareManager") + + self["shortcuts"] = ActionMap(["ShortcutActions", "WizardActions", "InfobarEPGActions", "HelpActions" ], + { + "ok": self.handleCurrent, + "back": self.exit, + "red": self.exit, + "green": self.handleCurrent, + "yellow": self.handleSelected, + "showEventInfo": self.handleSelected, + "displayHelp": self.handleHelp, + }, -1) + + self.list = [] + self.statuslist = [] + self.selectedFiles = [] + self.categoryList = [] + self.packetlist = [] + self["list"] = List(self.list) + self["key_red"] = StaticText(_("Close")) + self["key_green"] = StaticText("") + self["key_yellow"] = StaticText("") + self["key_blue"] = StaticText("") + self["status"] = StaticText("") + + self.cmdList = [] + self.oktext = _("\nAfter pressing OK, please wait!") + if not self.selectionChanged in self["list"].onSelectionChanged: + self["list"].onSelectionChanged.append(self.selectionChanged) + + self.currList = "" + self.currentSelectedTag = None + self.currentSelectedIndex = None + self.currentSelectedPackage = None + self.saved_currentSelectedPackage = None + self.restartRequired = False + + self.onShown.append(self.setWindowTitle) + self.onLayoutFinish.append(self.getUpdateInfos) + + def setWindowTitle(self): + self.setTitle(_("Extensions management")) + + def exit(self): + if self.currList == "packages": + self.currList = "category" + self.currentSelectedTag = None + self["list"].style = "category" + self['list'].setList(self.categoryList) + self["list"].setIndex(self.currentSelectedIndex) + self["list"].updateList(self.categoryList) + self.selectionChanged() + else: + iSoftwareTools.cleanupSoftwareTools() + self.prepareInstall() + if len(self.cmdList): + self.session.openWithCallback(self.runExecute, PluginManagerInfo, self.skin_path, self.cmdList) + else: + self.close() + + def handleHelp(self): + if self.currList != "status": + self.session.open(PluginManagerHelp, self.skin_path) + + def setState(self,status = None): + if status: + self.currList = "status" + self.statuslist = [] + self["key_green"].setText("") + self["key_blue"].setText("") + self["key_yellow"].setText("") + divpng = LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/div-h.png")) + if status == 'update': + statuspng = LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_PLUGIN, "SystemPlugins/SoftwareManager/upgrade.png")) + self.statuslist.append(( _("Updating software catalog"), '', _("Searching for available updates. Please wait..." ),'', '', statuspng, divpng, None, '' )) + elif status == 'sync': + statuspng = LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_PLUGIN, "SystemPlugins/SoftwareManager/upgrade.png")) + self.statuslist.append(( _("Package list update"), '', _("Searching for new installed or removed packages. Please wait..." ),'', '', statuspng, divpng, None, '' )) + elif status == 'error': + self["key_green"].setText(_("Continue")) + statuspng = LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_PLUGIN, "SystemPlugins/SoftwareManager/remove.png")) + self.statuslist.append(( _("Error"), '', _("An error occurred while downloading the packetlist. Please try again." ),'', '', statuspng, divpng, None, '' )) + self["list"].style = "default" + self['list'].setList(self.statuslist) + + + def getUpdateInfos(self): + if (iSoftwareTools.lastDownloadDate is not None and iSoftwareTools.NetworkConnectionAvailable is False): + self.rebuildList() + else: + self.setState('update') + iSoftwareTools.startSoftwareTools(self.getUpdateInfosCB) + + def getUpdateInfosCB(self, retval = None): + if retval is not None: + if retval is True: + if iSoftwareTools.available_updates is not 0: + self["status"].setText(_("There are at least ") + str(iSoftwareTools.available_updates) + _(" updates available.")) + else: + self["status"].setText(_("There are no updates available.")) + self.rebuildList() + elif retval is False: + if iSoftwareTools.lastDownloadDate is None: + self.setState('error') + if iSoftwareTools.NetworkConnectionAvailable: + self["status"].setText(_("Updatefeed not available.")) + else: + self["status"].setText(_("No network connection available.")) + else: + iSoftwareTools.lastDownloadDate = time() + iSoftwareTools.list_updating = True + self.setState('update') + iSoftwareTools.getUpdates(self.getUpdateInfosCB) + + def rebuildList(self, retval = None): + if self.currentSelectedTag is None: + self.buildCategoryList() + else: + self.buildPacketList(self.currentSelectedTag) + + def selectionChanged(self): + current = self["list"].getCurrent() + self["status"].setText("") + if current: + if self.currList == "packages": + self["key_red"].setText(_("Back")) + if current[4] == 'installed': + self["key_green"].setText(_("Uninstall")) + elif current[4] == 'installable': + self["key_green"].setText(_("Install")) + if iSoftwareTools.NetworkConnectionAvailable is False: + self["key_green"].setText("") + elif current[4] == 'remove': + self["key_green"].setText(_("Undo uninstall")) + elif current[4] == 'install': + self["key_green"].setText(_("Undo install")) + if iSoftwareTools.NetworkConnectionAvailable is False: + self["key_green"].setText("") + self["key_yellow"].setText(_("View details")) + self["key_blue"].setText("") + if len(self.selectedFiles) == 0 and iSoftwareTools.available_updates is not 0: + self["status"].setText(_("There are at least ") + str(iSoftwareTools.available_updates) + _(" updates available.")) + elif len(self.selectedFiles) is not 0: + self["status"].setText(str(len(self.selectedFiles)) + _(" packages selected.")) + else: + self["status"].setText(_("There are currently no outstanding actions.")) + elif self.currList == "category": + self["key_red"].setText(_("Close")) + self["key_green"].setText("") + self["key_yellow"].setText("") + self["key_blue"].setText("") + if len(self.selectedFiles) == 0 and iSoftwareTools.available_updates is not 0: + self["status"].setText(_("There are at least ") + str(iSoftwareTools.available_updates) + _(" updates available.")) + self["key_yellow"].setText(_("Update")) + elif len(self.selectedFiles) is not 0: + self["status"].setText(str(len(self.selectedFiles)) + _(" packages selected.")) + self["key_yellow"].setText(_("Process")) + else: + self["status"].setText(_("There are currently no outstanding actions.")) + + def getSelectionState(self, detailsFile): + for entry in self.selectedFiles: + if entry[0] == detailsFile: + return True + return False + + def handleCurrent(self): + current = self["list"].getCurrent() + if current: + if self.currList == "category": + self.currentSelectedIndex = self["list"].index + selectedTag = current[2] + self.buildPacketList(selectedTag) + elif self.currList == "packages": + if current[7] is not '': + idx = self["list"].getIndex() + detailsFile = self.list[idx][1] + if self.list[idx][7] == True: + for entry in self.selectedFiles: + if entry[0] == detailsFile: + self.selectedFiles.remove(entry) + else: + alreadyinList = False + for entry in self.selectedFiles: + if entry[0] == detailsFile: + alreadyinList = True + if not alreadyinList: + if (iSoftwareTools.NetworkConnectionAvailable is False and current[4] in ('installable','install')): + pass + else: + self.selectedFiles.append((detailsFile,current[4],current[3])) + self.currentSelectedPackage = ((detailsFile,current[4],current[3])) + if current[4] == 'installed': + self.list[idx] = self.buildEntryComponent(current[0], current[1], current[2], current[3], 'remove', True) + elif current[4] == 'installable': + if iSoftwareTools.NetworkConnectionAvailable: + self.list[idx] = self.buildEntryComponent(current[0], current[1], current[2], current[3], 'install', True) + elif current[4] == 'remove': + self.list[idx] = self.buildEntryComponent(current[0], current[1], current[2], current[3], 'installed', False) + elif current[4] == 'install': + if iSoftwareTools.NetworkConnectionAvailable: + self.list[idx] = self.buildEntryComponent(current[0], current[1], current[2], current[3], 'installable',False) + self["list"].setList(self.list) + self["list"].setIndex(idx) + self["list"].updateList(self.list) + self.selectionChanged() + elif self.currList == "status": + iSoftwareTools.lastDownloadDate = time() + iSoftwareTools.list_updating = True + self.setState('update') + iSoftwareTools.getUpdates(self.getUpdateInfosCB) + + def handleSelected(self): + current = self["list"].getCurrent() + if current: + if self.currList == "packages": + if current[7] is not '': + detailsfile = iSoftwareTools.directory[0] + "/" + current[1] + if (os_path.exists(detailsfile) == True): + self.saved_currentSelectedPackage = self.currentSelectedPackage + self.session.openWithCallback(self.detailsClosed, PluginDetails, self.skin_path, current) + else: + self.session.open(MessageBox, _("Sorry, no details available!"), MessageBox.TYPE_INFO, timeout = 10) + elif self.currList == "category": + self.prepareInstall() + if len(self.cmdList): + self.session.openWithCallback(self.runExecute, PluginManagerInfo, self.skin_path, self.cmdList) + + def detailsClosed(self, result = None): + if result is not None: + if result is not False: + self.setState('sync') + iSoftwareTools.lastDownloadDate = time() + for entry in self.selectedFiles: + if entry == self.saved_currentSelectedPackage: + self.selectedFiles.remove(entry) + iSoftwareTools.startIpkgListInstalled(self.rebuildList) + + def buildEntryComponent(self, name, details, description, packagename, state, selected = False): + divpng = LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/div-h.png")) + installedpng = LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_PLUGIN, "SystemPlugins/SoftwareManager/installed.png")) + installablepng = LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_PLUGIN, "SystemPlugins/SoftwareManager/installable.png")) + removepng = LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_PLUGIN, "SystemPlugins/SoftwareManager/remove.png")) + installpng = LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_PLUGIN, "SystemPlugins/SoftwareManager/install.png")) + if state == 'installed': + return((name, details, description, packagename, state, installedpng, divpng, selected)) + elif state == 'installable': + return((name, details, description, packagename, state, installablepng, divpng, selected)) + elif state == 'remove': + return((name, details, description, packagename, state, removepng, divpng, selected)) + elif state == 'install': + return((name, details, description, packagename, state, installpng, divpng, selected)) + + def buildPacketList(self, categorytag = None): + if categorytag is not None: + self.currList = "packages" + self.currentSelectedTag = categorytag + self.packetlist = [] + for package in iSoftwareTools.packagesIndexlist[:]: + prerequisites = package[0]["prerequisites"] + if prerequisites.has_key("tag"): + for foundtag in prerequisites["tag"]: + if categorytag == foundtag: + attributes = package[0]["attributes"] + if attributes.has_key("packagetype"): + if attributes["packagetype"] == "internal": + continue + self.packetlist.append([attributes["name"], attributes["details"], attributes["shortdescription"], attributes["packagename"]]) + else: + self.packetlist.append([attributes["name"], attributes["details"], attributes["shortdescription"], attributes["packagename"]]) + self.list = [] + for x in self.packetlist: + status = "" + name = x[0].strip() + details = x[1].strip() + description = x[2].strip() + if not description: + description = "No description available." + packagename = x[3].strip() + selectState = self.getSelectionState(details) + if iSoftwareTools.installed_packetlist.has_key(packagename): + if selectState == True: + status = "remove" + else: + status = "installed" + self.list.append(self.buildEntryComponent(name, _(details), _(description), packagename, status, selected = selectState)) + else: + if selectState == True: + status = "install" + else: + status = "installable" + self.list.append(self.buildEntryComponent(name, _(details), _(description), packagename, status, selected = selectState)) + if len(self.list): + self.list.sort(key=lambda x: x[0]) + self["list"].style = "default" + self['list'].setList(self.list) + self["list"].updateList(self.list) + self.selectionChanged() + + def buildCategoryList(self): + self.currList = "category" + self.categories = [] + self.categoryList = [] + for package in iSoftwareTools.packagesIndexlist[:]: + prerequisites = package[0]["prerequisites"] + if prerequisites.has_key("tag"): + for foundtag in prerequisites["tag"]: + attributes = package[0]["attributes"] + if foundtag not in self.categories: + self.categories.append(foundtag) + self.categoryList.append(self.buildCategoryComponent(foundtag)) + self.categoryList.sort(key=lambda x: x[0]) + self["list"].style = "category" + self['list'].setList(self.categoryList) + self["list"].updateList(self.categoryList) + self.selectionChanged() + + def buildCategoryComponent(self, tag = None): + divpng = LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/div-h.png")) + if tag is not None: + if tag == 'System': + return(( _("System"), _("View list of available system extensions" ), tag, divpng )) + elif tag == 'Skin': + return(( _("Skins"), _("View list of available skins" ), tag, divpng )) + elif tag == 'Recording': + return(( _("Recordings"), _("View list of available recording extensions" ), tag, divpng )) + elif tag == 'Network': + return(( _("Network"), _("View list of available networking extensions" ), tag, divpng )) + elif tag == 'CI': + return(( _("Common Interface"), _("View list of available CommonInterface extensions" ), tag, divpng )) + elif tag == 'Default': + return(( _("Default settings"), _("View list of available default settings" ), tag, divpng )) + elif tag == 'SAT': + return(( _("Satellite equipment"), _("View list of available Satellite equipment extensions." ), tag, divpng )) + elif tag == 'Software': + return(( _("Software"), _("View list of available software extensions" ), tag, divpng )) + elif tag == 'Multimedia': + return(( _("Multimedia"), _("View list of available multimedia extensions." ), tag, divpng )) + elif tag == 'Display': + return(( _("Display and userinterface"), _("View list of available display and userinterface extensions." ), tag, divpng )) + elif tag == 'EPG': + return(( _("Electronic Program Guide"), _("View list of available EPG extensions." ), tag, divpng )) + elif tag == 'Communication': + return(( _("Communication"), _("View list of available communication extensions." ), tag, divpng )) + else: # dynamically generate non existent tags + return(( str(tag), _("View list of available ") + str(tag) + _(" extensions." ), tag, divpng )) + + def prepareInstall(self): + self.cmdList = [] + if iSoftwareTools.available_updates > 0: + self.cmdList.append((IpkgComponent.CMD_UPGRADE, { "test_only": False })) + if self.selectedFiles and len(self.selectedFiles): + for plugin in self.selectedFiles: + detailsfile = iSoftwareTools.directory[0] + "/" + plugin[0] + if (os_path.exists(detailsfile) == True): + iSoftwareTools.fillPackageDetails(plugin[0]) + self.package = iSoftwareTools.packageDetails[0] + if self.package[0].has_key("attributes"): + self.attributes = self.package[0]["attributes"] + if self.attributes.has_key("needsRestart"): + self.restartRequired = True + if self.attributes.has_key("package"): + self.packagefiles = self.attributes["package"] + if plugin[1] == 'installed': + if self.packagefiles: + for package in self.packagefiles[:]: + self.cmdList.append((IpkgComponent.CMD_REMOVE, { "package": package["name"] })) + else: + self.cmdList.append((IpkgComponent.CMD_REMOVE, { "package": plugin[2] })) + else: + if self.packagefiles: + for package in self.packagefiles[:]: + self.cmdList.append((IpkgComponent.CMD_INSTALL, { "package": package["name"] })) + else: + self.cmdList.append((IpkgComponent.CMD_INSTALL, { "package": plugin[2] })) + else: + if plugin[1] == 'installed': + self.cmdList.append((IpkgComponent.CMD_REMOVE, { "package": plugin[2] })) + else: + self.cmdList.append((IpkgComponent.CMD_INSTALL, { "package": plugin[2] })) + + def runExecute(self, result = None): + if result is not None: + if result[0] is True: + self.session.openWithCallback(self.runExecuteFinished, Ipkg, cmdList = self.cmdList) + elif result[0] is False: + self.cmdList = result[1] + self.session.openWithCallback(self.runExecuteFinished, Ipkg, cmdList = self.cmdList) + else: + self.close() + + def runExecuteFinished(self): + self.reloadPluginlist() + if plugins.restartRequired or self.restartRequired: + self.session.openWithCallback(self.ExecuteReboot, MessageBox, _("Installation or removal has completed.") + "\n" +_("Do you want to reboot your receiver?"), MessageBox.TYPE_YESNO) + else: + self.selectedFiles = [] + self.restartRequired = False + self.detailsClosed(True) + + def ExecuteReboot(self, result): + if result: + self.session.open(TryQuitMainloop,retvalue=3) + else: + self.selectedFiles = [] + self.restartRequired = False + self.detailsClosed(True) + + def reloadPluginlist(self): + plugins.readPluginList(resolveFilename(SCOPE_PLUGINS)) + + +class PluginManagerInfo(Screen): + skin = """ + + + + + + + + {"template": [ + MultiContentEntryText(pos = (50, 0), size = (150, 26), font=0, flags = RT_HALIGN_LEFT, text = 0), # index 0 is the name + MultiContentEntryText(pos = (50, 27), size = (540, 23), font=1, flags = RT_HALIGN_LEFT, text = 1), # index 1 is the state + MultiContentEntryPixmapAlphaTest(pos = (0, 1), size = (48, 48), png = 2), # index 2 is the status pixmap + MultiContentEntryPixmapAlphaTest(pos = (0, 48), size = (550, 2), png = 3), # index 3 is the div pixmap + ], + "fonts": [gFont("Regular", 24),gFont("Regular", 22)], + "itemHeight": 50 + } + + + + + """ + + def __init__(self, session, plugin_path, cmdlist = None): + Screen.__init__(self, session) + self.session = session + self.skin_path = plugin_path + self.cmdlist = cmdlist + + self["shortcuts"] = ActionMap(["ShortcutActions", "WizardActions"], + { + "ok": self.process_all, + "back": self.exit, + "red": self.exit, + "green": self.process_extensions, + }, -1) + + self.list = [] + self["list"] = List(self.list) + self["key_red"] = StaticText(_("Cancel")) + self["key_green"] = StaticText(_("Only extensions.")) + self["status"] = StaticText(_("Following tasks will be done after you press OK!")) + + self.onShown.append(self.setWindowTitle) + self.onLayoutFinish.append(self.rebuildList) + + def setWindowTitle(self): + self.setTitle(_("Plugin manager activity information")) + + def rebuildList(self): + self.list = [] + if self.cmdlist is not None: + for entry in self.cmdlist: + action = "" + info = "" + cmd = entry[0] + if cmd == 0: + action = 'install' + elif cmd == 2: + action = 'remove' + else: + action = 'upgrade' + args = entry[1] + if cmd == 0: + info = args['package'] + elif cmd == 2: + info = args['package'] + else: + info = _("receiver software because updates are available.") + + self.list.append(self.buildEntryComponent(action,info)) + self['list'].setList(self.list) + self['list'].updateList(self.list) + + def buildEntryComponent(self, action,info): + divpng = LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/div-h.png")) + upgradepng = LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_PLUGIN, "SystemPlugins/SoftwareManager/upgrade.png")) + installpng = LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_PLUGIN, "SystemPlugins/SoftwareManager/install.png")) + removepng = LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_PLUGIN, "SystemPlugins/SoftwareManager/remove.png")) + if action == 'install': + return(( _('Installing'), info, installpng, divpng)) + elif action == 'remove': + return(( _('Removing'), info, removepng, divpng)) + else: + return(( _('Upgrading'), info, upgradepng, divpng)) + + def exit(self): + self.close() + + def process_all(self): + self.close((True,None)) + + def process_extensions(self): + self.list = [] + if self.cmdlist is not None: + for entry in self.cmdlist: + cmd = entry[0] + if entry[0] in (0,2): + self.list.append((entry)) + self.close((False,self.list)) + + +class PluginManagerHelp(Screen): + skin = """ + + + + + + {"template": [ + MultiContentEntryText(pos = (50, 0), size = (540, 26), font=0, flags = RT_HALIGN_LEFT, text = 0), # index 0 is the name + MultiContentEntryText(pos = (50, 27), size = (540, 23), font=1, flags = RT_HALIGN_LEFT, text = 1), # index 1 is the state + MultiContentEntryPixmapAlphaTest(pos = (0, 1), size = (48, 48), png = 2), # index 2 is the status pixmap + MultiContentEntryPixmapAlphaTest(pos = (0, 48), size = (550, 2), png = 3), # index 3 is the div pixmap + ], + "fonts": [gFont("Regular", 24),gFont("Regular", 22)], + "itemHeight": 50 + } + + + + + """ + + def __init__(self, session, plugin_path): + Screen.__init__(self, session) + self.session = session + self.skin_path = plugin_path + + self["shortcuts"] = ActionMap(["ShortcutActions", "WizardActions"], + { + "back": self.exit, + "red": self.exit, + }, -1) + + self.list = [] + self["list"] = List(self.list) + self["key_red"] = StaticText(_("Close")) + self["status"] = StaticText(_("A small overview of the available icon states and actions.")) + + self.onShown.append(self.setWindowTitle) + self.onLayoutFinish.append(self.rebuildList) + + def setWindowTitle(self): + self.setTitle(_("Plugin manager help")) + + def rebuildList(self): + self.list = [] + self.list.append(self.buildEntryComponent('install')) + self.list.append(self.buildEntryComponent('installable')) + self.list.append(self.buildEntryComponent('installed')) + self.list.append(self.buildEntryComponent('remove')) + self['list'].setList(self.list) + self['list'].updateList(self.list) + + def buildEntryComponent(self, state): + divpng = LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/div-h.png")) + installedpng = LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_PLUGIN, "SystemPlugins/SoftwareManager/installed.png")) + installablepng = LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_PLUGIN, "SystemPlugins/SoftwareManager/installable.png")) + removepng = LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_PLUGIN, "SystemPlugins/SoftwareManager/remove.png")) + installpng = LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_PLUGIN, "SystemPlugins/SoftwareManager/install.png")) + + if state == 'installed': + return(( _('This plugin is installed.'), _('You can remove this plugin.'), installedpng, divpng)) + elif state == 'installable': + return(( _('This plugin is not installed.'), _('You can install this plugin.'), installablepng, divpng)) + elif state == 'install': + return(( _('This plugin will be installed.'), _('You can cancel the installation.'), installpng, divpng)) + elif state == 'remove': + return(( _('This plugin will be removed.'), _('You can cancel the removal.'), removepng, divpng)) + + def exit(self): + self.close() + + +class PluginDetails(Screen, PackageInfoHandler): + skin = """ + + + + + + + + + + + """ + def __init__(self, session, plugin_path, packagedata = None): + Screen.__init__(self, session) + self.skin_path = plugin_path + self.language = language.getLanguage()[:2] # getLanguage returns e.g. "fi_FI" for "language_country" + self.attributes = None + PackageInfoHandler.__init__(self, self.statusCallback, blocking = False) + self.directory = resolveFilename(SCOPE_METADIR) + if packagedata: + self.pluginname = packagedata[0] + self.details = packagedata[1] + self.pluginstate = packagedata[4] + self.statuspicinstance = packagedata[5] + self.divpicinstance = packagedata[6] + self.fillPackageDetails(self.details) + + self.thumbnail = "" + + self["shortcuts"] = ActionMap(["ShortcutActions", "WizardActions"], + { + "back": self.exit, + "red": self.exit, + "green": self.go, + "up": self.pageUp, + "down": self.pageDown, + "left": self.pageUp, + "right": self.pageDown, + }, -1) + + self["key_red"] = StaticText(_("Close")) + self["key_green"] = StaticText("") + self["author"] = StaticText() + self["statuspic"] = Pixmap() + self["divpic"] = Pixmap() + self["screenshot"] = Pixmap() + self["detailtext"] = ScrollLabel() + + self["statuspic"].hide() + self["screenshot"].hide() + self["divpic"].hide() + + self.package = self.packageDetails[0] + if self.package[0].has_key("attributes"): + self.attributes = self.package[0]["attributes"] + self.restartRequired = False + self.cmdList = [] + self.oktext = _("\nAfter pressing OK, please wait!") + self.picload = ePicLoad() + self.picload.PictureData.get().append(self.paintScreenshotPixmapCB) + self.onShown.append(self.setWindowTitle) + self.onLayoutFinish.append(self.setInfos) + + def setWindowTitle(self): + self.setTitle(_("Details for plugin: ") + self.pluginname ) + + def exit(self): + self.close(False) + + def pageUp(self): + self["detailtext"].pageUp() + + def pageDown(self): + self["detailtext"].pageDown() + + def statusCallback(self, status, progress): + pass + + def setInfos(self): + if self.attributes.has_key("screenshot"): + self.loadThumbnail(self.attributes) + + if self.attributes.has_key("name"): + self.pluginname = self.attributes["name"] + else: + self.pluginname = _("unknown") + + if self.attributes.has_key("author"): + self.author = self.attributes["author"] + else: + self.author = _("unknown") + + if self.attributes.has_key("description"): + self.description = _(self.attributes["description"].replace("\\n", "\n")) + else: + self.description = _("No description available.") + + self["author"].setText(_("Author: ") + self.author) + self["detailtext"].setText(_(self.description)) + if self.pluginstate in ('installable', 'install'): + if iSoftwareTools.NetworkConnectionAvailable: + self["key_green"].setText(_("Install")) + else: + self["key_green"].setText("") + else: + self["key_green"].setText(_("Remove")) + + def loadThumbnail(self, entry): + thumbnailUrl = None + if entry.has_key("screenshot"): + thumbnailUrl = entry["screenshot"] + if self.language == "de": + if thumbnailUrl[-7:] == "_en.jpg": + thumbnailUrl = thumbnailUrl[:-7] + "_de.jpg" + + if thumbnailUrl is not None: + self.thumbnail = "/tmp/" + thumbnailUrl.split('/')[-1] + print "[PluginDetails] downloading screenshot " + thumbnailUrl + " to " + self.thumbnail + if iSoftwareTools.NetworkConnectionAvailable: + client.downloadPage(thumbnailUrl,self.thumbnail).addCallback(self.setThumbnail).addErrback(self.fetchFailed) + else: + self.setThumbnail(noScreenshot = True) + else: + self.setThumbnail(noScreenshot = True) + + def setThumbnail(self, noScreenshot = False): + if not noScreenshot: + filename = self.thumbnail + else: + filename = resolveFilename(SCOPE_CURRENT_PLUGIN, "SystemPlugins/SoftwareManager/noprev.png") + + sc = AVSwitch().getFramebufferScale() + self.picload.setPara((self["screenshot"].instance.size().width(), self["screenshot"].instance.size().height(), sc[0], sc[1], False, 1, "#00000000")) + self.picload.startDecode(filename) + + if self.statuspicinstance != None: + self["statuspic"].instance.setPixmap(self.statuspicinstance.__deref__()) + self["statuspic"].show() + if self.divpicinstance != None: + self["divpic"].instance.setPixmap(self.divpicinstance.__deref__()) + self["divpic"].show() + + def paintScreenshotPixmapCB(self, picInfo=None): + ptr = self.picload.getData() + if ptr != None: + self["screenshot"].instance.setPixmap(ptr.__deref__()) + self["screenshot"].show() + else: + self.setThumbnail(noScreenshot = True) + + def go(self): + if self.attributes.has_key("package"): + self.packagefiles = self.attributes["package"] + if self.attributes.has_key("needsRestart"): + self.restartRequired = True + self.cmdList = [] + if self.pluginstate in ('installed', 'remove'): + if self.packagefiles: + for package in self.packagefiles[:]: + self.cmdList.append((IpkgComponent.CMD_REMOVE, { "package": package["name"] })) + if len(self.cmdList): + self.session.openWithCallback(self.runRemove, MessageBox, _("Do you want to remove the package:\n") + self.pluginname + "\n" + self.oktext) + else: + if iSoftwareTools.NetworkConnectionAvailable: + if self.packagefiles: + for package in self.packagefiles[:]: + self.cmdList.append((IpkgComponent.CMD_INSTALL, { "package": package["name"] })) + if len(self.cmdList): + self.session.openWithCallback(self.runUpgrade, MessageBox, _("Do you want to install the package:\n") + self.pluginname + "\n" + self.oktext) + + def runUpgrade(self, result): + if result: + self.session.openWithCallback(self.runUpgradeFinished, Ipkg, cmdList = self.cmdList) + + def runUpgradeFinished(self): + self.reloadPluginlist() + if plugins.restartRequired or self.restartRequired: + self.session.openWithCallback(self.UpgradeReboot, MessageBox, _("Installation has completed.") + "\n" + _("Do you want to reboot your receiver?"), MessageBox.TYPE_YESNO) + else: + self.close(True) + def UpgradeReboot(self, result): + if result: + self.session.open(TryQuitMainloop,retvalue=3) + self.close(True) + + def runRemove(self, result): + if result: + self.session.openWithCallback(self.runRemoveFinished, Ipkg, cmdList = self.cmdList) + + def runRemoveFinished(self): + self.close(True) + + def reloadPluginlist(self): + plugins.readPluginList(resolveFilename(SCOPE_PLUGINS)) + + def fetchFailed(self,string): + self.setThumbnail(noScreenshot = True) + print "[PluginDetails] fetch failed " + string.getErrorMessage() + +class IPKGMenu(Screen): + skin = """ + + + + + + + """ + + def __init__(self, session, plugin_path): + Screen.__init__(self, session) + self.skin_path = plugin_path + + self["key_red"] = StaticText(_("Close")) + self["key_green"] = StaticText(_("Edit")) + + self.sel = [] + self.val = [] + self.entry = False + self.exe = False + + self.path = "" + + self["actions"] = NumberActionMap(["SetupActions"], + { + "ok": self.KeyOk, + "cancel": self.keyCancel + }, -1) + + self["shortcuts"] = ActionMap(["ShortcutActions"], + { + "red": self.keyCancel, + "green": self.KeyOk, + }) + self["filelist"] = MenuList([]) + self.fill_list() + self.onLayoutFinish.append(self.layoutFinished) + + def layoutFinished(self): + self.setWindowTitle() + + def setWindowTitle(self): + self.setTitle(_("Select upgrade source to edit.")) + + def fill_list(self): + flist = [] + self.path = '/etc/opkg/' + if (os_path.exists(self.path) == False): + self.entry = False + return + for file in listdir(self.path): + if file.endswith(".conf"): + if file not in ('arch.conf', 'opkg.conf'): + flist.append((file)) + self.entry = True + self["filelist"].l.setList(flist) + + def KeyOk(self): + if (self.exe == False) and (self.entry == True): + self.sel = self["filelist"].getCurrent() + self.val = self.path + self.sel + self.session.open(IPKGSource, self.val) + + def keyCancel(self): + self.close() + + def Exit(self): + self.close() + + +class IPKGSource(Screen): + skin = """ + + + + + + + """ + + def __init__(self, session, configfile = None): + Screen.__init__(self, session) + self.session = session + self.configfile = configfile + text = "" + if self.configfile: + try: + fp = file(configfile, 'r') + sources = fp.readlines() + if sources: + text = sources[0] + fp.close() + except IOError: + pass + + desk = getDesktop(0) + x= int(desk.size().width()) + y= int(desk.size().height()) + + self["key_red"] = StaticText(_("Cancel")) + self["key_green"] = StaticText(_("Save")) + + if (y>=720): + self["text"] = Input(text, maxSize=False, type=Input.TEXT) + else: + self["text"] = Input(text, maxSize=False, visible_width = 55, type=Input.TEXT) + + self["actions"] = NumberActionMap(["WizardActions", "InputActions", "TextEntryActions", "KeyboardInputActions","ShortcutActions"], + { + "ok": self.go, + "back": self.close, + "red": self.close, + "green": self.go, + "left": self.keyLeft, + "right": self.keyRight, + "home": self.keyHome, + "end": self.keyEnd, + "deleteForward": self.keyDeleteForward, + "deleteBackward": self.keyDeleteBackward, + "1": self.keyNumberGlobal, + "2": self.keyNumberGlobal, + "3": self.keyNumberGlobal, + "4": self.keyNumberGlobal, + "5": self.keyNumberGlobal, + "6": self.keyNumberGlobal, + "7": self.keyNumberGlobal, + "8": self.keyNumberGlobal, + "9": self.keyNumberGlobal, + "0": self.keyNumberGlobal + }, -1) + + self.onLayoutFinish.append(self.layoutFinished) + + def layoutFinished(self): + self.setWindowTitle() + self["text"].right() + + def setWindowTitle(self): + self.setTitle(_("Edit upgrade source url.")) + + def go(self): + text = self["text"].getText() + if text: + fp = file(self.configfile, 'w') + fp.write(text) + fp.write("\n") + fp.close() + self.close() + + def keyLeft(self): + self["text"].left() + + def keyRight(self): + self["text"].right() + + def keyHome(self): + self["text"].home() + + def keyEnd(self): + self["text"].end() + + def keyDeleteForward(self): + self["text"].delete() + + def keyDeleteBackward(self): + self["text"].deleteBackward() + + def keyNumberGlobal(self, number): + self["text"].number(number) + + +class PacketManager(Screen, NumericalTextInput): + skin = """ + + + + + + + + {"template": [ + MultiContentEntryText(pos = (5, 1), size = (440, 28), font=0, flags = RT_HALIGN_LEFT, text = 0), # index 0 is the name + MultiContentEntryText(pos = (5, 26), size = (440, 20), font=1, flags = RT_HALIGN_LEFT, text = 2), # index 2 is the description + MultiContentEntryPixmapAlphaTest(pos = (445, 2), size = (48, 48), png = 4), # index 4 is the status pixmap + MultiContentEntryPixmapAlphaTest(pos = (5, 50), size = (510, 2), png = 5), # index 4 is the div pixmap + ], + "fonts": [gFont("Regular", 22),gFont("Regular", 14)], + "itemHeight": 52 + } + + + """ + + def __init__(self, session, plugin_path, args = None): + Screen.__init__(self, session) + NumericalTextInput.__init__(self) + self.session = session + self.skin_path = plugin_path + + self.setUseableChars(u'1234567890abcdefghijklmnopqrstuvwxyz') + + self["shortcuts"] = NumberActionMap(["ShortcutActions", "WizardActions", "NumberActions", "InputActions", "InputAsciiActions", "KeyboardInputActions" ], + { + "ok": self.go, + "back": self.exit, + "red": self.exit, + "green": self.reload, + "gotAsciiCode": self.keyGotAscii, + "1": self.keyNumberGlobal, + "2": self.keyNumberGlobal, + "3": self.keyNumberGlobal, + "4": self.keyNumberGlobal, + "5": self.keyNumberGlobal, + "6": self.keyNumberGlobal, + "7": self.keyNumberGlobal, + "8": self.keyNumberGlobal, + "9": self.keyNumberGlobal, + "0": self.keyNumberGlobal + }, -1) + + self.list = [] + self.statuslist = [] + self["list"] = List(self.list) + self["key_red"] = StaticText(_("Close")) + self["key_green"] = StaticText(_("Reload")) + + self.list_updating = True + self.packetlist = [] + self.installed_packetlist = {} + self.upgradeable_packages = {} + self.Console = Console() + self.cmdList = [] + self.cachelist = [] + self.cache_ttl = 86400 #600 is default, 0 disables, Seconds cache is considered valid (24h should be ok for caching ipkgs) + self.cache_file = eEnv.resolve('${libdir}/enigma2/python/Plugins/SystemPlugins/SoftwareManager/packetmanager.cache') #Path to cache directory + self.oktext = _("\nAfter pressing OK, please wait!") + self.unwanted_extensions = ('-dbg', '-dev', '-doc', '-staticdev', '-src', 'busybox') + + self.ipkg = IpkgComponent() + self.ipkg.addCallback(self.ipkgCallback) + self.onShown.append(self.setWindowTitle) + self.onLayoutFinish.append(self.rebuildList) + + rcinput = eRCInput.getInstance() + rcinput.setKeyboardMode(rcinput.kmAscii) + + def keyNumberGlobal(self, val): + key = self.getKey(val) + if key is not None: + keyvalue = key.encode("utf-8") + if len(keyvalue) == 1: + self.setNextIdx(keyvalue[0]) + + def keyGotAscii(self): + keyvalue = unichr(getPrevAsciiCode()).encode("utf-8") + if len(keyvalue) == 1: + self.setNextIdx(keyvalue[0]) + + def setNextIdx(self,char): + if char in ("0", "1", "a"): + self["list"].setIndex(0) + else: + idx = self.getNextIdx(char) + if idx and idx <= self["list"].count: + self["list"].setIndex(idx) + + def getNextIdx(self,char): + for idx, i in enumerate(self["list"].list): + if i[0] and (i[0][0] == char): + return idx + + def exit(self): + self.ipkg.stop() + if self.Console is not None: + if len(self.Console.appContainers): + for name in self.Console.appContainers.keys(): + self.Console.kill(name) + rcinput = eRCInput.getInstance() + rcinput.setKeyboardMode(rcinput.kmNone) + self.close() + + def reload(self): + if (os_path.exists(self.cache_file) == True): + remove(self.cache_file) + self.list_updating = True + self.rebuildList() + + def setWindowTitle(self): + self.setTitle(_("Packet manager")) + + def setStatus(self,status = None): + if status: + self.statuslist = [] + divpng = LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/div-h.png")) + if status == 'update': + statuspng = LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_PLUGIN, "SystemPlugins/SoftwareManager/upgrade.png")) + self.statuslist.append(( _("Package list update"), '', _("Trying to download a new packetlist. Please wait..." ),'',statuspng, divpng )) + self['list'].setList(self.statuslist) + elif status == 'error': + statuspng = LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_PLUGIN, "SystemPlugins/SoftwareManager/remove.png")) + self.statuslist.append(( _("Error"), '', _("An error occurred while downloading the packetlist. Please try again." ),'',statuspng, divpng )) + self['list'].setList(self.statuslist) + + def rebuildList(self): + self.setStatus('update') + self.inv_cache = 0 + self.vc = valid_cache(self.cache_file, self.cache_ttl) + if self.cache_ttl > 0 and self.vc != 0: + try: + self.buildPacketList() + except: + self.inv_cache = 1 + if self.cache_ttl == 0 or self.inv_cache == 1 or self.vc == 0: + self.run = 0 + self.ipkg.startCmd(IpkgComponent.CMD_UPDATE) + + def go(self, returnValue = None): + cur = self["list"].getCurrent() + if cur: + status = cur[3] + package = cur[0] + self.cmdList = [] + if status == 'installed': + self.cmdList.append((IpkgComponent.CMD_REMOVE, { "package": package })) + if len(self.cmdList): + self.session.openWithCallback(self.runRemove, MessageBox, _("Do you want to remove the package:\n") + package + "\n" + self.oktext) + elif status == 'upgradeable': + self.cmdList.append((IpkgComponent.CMD_INSTALL, { "package": package })) + if len(self.cmdList): + self.session.openWithCallback(self.runUpgrade, MessageBox, _("Do you want to upgrade the package:\n") + package + "\n" + self.oktext) + elif status == "installable": + self.cmdList.append((IpkgComponent.CMD_INSTALL, { "package": package })) + if len(self.cmdList): + self.session.openWithCallback(self.runUpgrade, MessageBox, _("Do you want to install the package:\n") + package + "\n" + self.oktext) + + def runRemove(self, result): + if result: + self.session.openWithCallback(self.runRemoveFinished, Ipkg, cmdList = self.cmdList) + + def runRemoveFinished(self): + self.session.openWithCallback(self.RemoveReboot, MessageBox, _("Removal has completed.") + "\n" + _("Do you want to reboot your receiver?"), MessageBox.TYPE_YESNO) + + def RemoveReboot(self, result): + if result is None: + return + if result is False: + cur = self["list"].getCurrent() + if cur: + item = self['list'].getIndex() + self.list[item] = self.buildEntryComponent(cur[0], cur[1], cur[2], 'installable') + self.cachelist[item] = [cur[0], cur[1], cur[2], 'installable'] + self['list'].setList(self.list) + write_cache(self.cache_file, self.cachelist) + self.reloadPluginlist() + if result: + self.session.open(TryQuitMainloop,retvalue=3) + + def runUpgrade(self, result): + if result: + self.session.openWithCallback(self.runUpgradeFinished, Ipkg, cmdList = self.cmdList) + + def runUpgradeFinished(self): + self.session.openWithCallback(self.UpgradeReboot, MessageBox, _("Update has completed.") + "\n" +_("Do you want to reboot your receiver?"), MessageBox.TYPE_YESNO) + + def UpgradeReboot(self, result): + if result is None: + return + if result is False: + cur = self["list"].getCurrent() + if cur: + item = self['list'].getIndex() + self.list[item] = self.buildEntryComponent(cur[0], cur[1], cur[2], 'installed') + self.cachelist[item] = [cur[0], cur[1], cur[2], 'installed'] + self['list'].setList(self.list) + write_cache(self.cache_file, self.cachelist) + self.reloadPluginlist() + if result: + self.session.open(TryQuitMainloop,retvalue=3) + + def ipkgCallback(self, event, param): + if event == IpkgComponent.EVENT_ERROR: + self.list_updating = False + self.setStatus('error') + elif event == IpkgComponent.EVENT_DONE: + if self.list_updating: + self.list_updating = False + if not self.Console: + self.Console = Console() + cmd = self.ipkg.ipkg + " list" + self.Console.ePopen(cmd, self.IpkgList_Finished) + pass + + def IpkgList_Finished(self, result, retval, extra_args = None): + if result: + self.packetlist = [] + last_name = "" + for x in result.splitlines(): + tokens = x.split(' - ') + name = tokens[0].strip() + if not any(name.endswith(x) for x in self.unwanted_extensions): + l = len(tokens) + version = l > 1 and tokens[1].strip() or "" + descr = l > 2 and tokens[2].strip() or "" + if name == last_name: + continue + last_name = name + self.packetlist.append([name, version, descr]) + + if not self.Console: + self.Console = Console() + cmd = self.ipkg.ipkg + " list_installed" + self.Console.ePopen(cmd, self.IpkgListInstalled_Finished) + + def IpkgListInstalled_Finished(self, result, retval, extra_args = None): + if result: + self.installed_packetlist = {} + for x in result.splitlines(): + tokens = x.split(' - ') + name = tokens[0].strip() + if not any(name.endswith(x) for x in self.unwanted_extensions): + l = len(tokens) + version = l > 1 and tokens[1].strip() or "" + self.installed_packetlist[name] = version + if not self.Console: + self.Console = Console() + cmd = "opkg list-upgradable" + self.Console.ePopen(cmd, self.OpkgListUpgradeable_Finished) + + def OpkgListUpgradeable_Finished(self, result, retval, extra_args = None): + if result: + self.upgradeable_packages = {} + for x in result.splitlines(): + tokens = x.split(' - ') + name = tokens[0].strip() + if not any(name.endswith(x) for x in self.unwanted_extensions): + l = len(tokens) + version = l > 2 and tokens[2].strip() or "" + self.upgradeable_packages[name] = version + self.buildPacketList() + + def buildEntryComponent(self, name, version, description, state): + divpng = LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/div-h.png")) + if not description: + description = "No description available." + if state == 'installed': + installedpng = LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_PLUGIN, "SystemPlugins/SoftwareManager/installed.png")) + return((name, version, _(description), state, installedpng, divpng)) + elif state == 'upgradeable': + upgradeablepng = LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_PLUGIN, "SystemPlugins/SoftwareManager/upgradeable.png")) + return((name, version, _(description), state, upgradeablepng, divpng)) + else: + installablepng = LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_PLUGIN, "SystemPlugins/SoftwareManager/installable.png")) + return((name, version, _(description), state, installablepng, divpng)) + + def buildPacketList(self): + self.list = [] + self.cachelist = [] + if self.cache_ttl > 0 and self.vc != 0: + print 'Loading packagelist cache from ',self.cache_file + try: + self.cachelist = load_cache(self.cache_file) + if len(self.cachelist) > 0: + for x in self.cachelist: + self.list.append(self.buildEntryComponent(x[0], x[1], x[2], x[3])) + self['list'].setList(self.list) + except: + self.inv_cache = 1 + + if self.cache_ttl == 0 or self.inv_cache == 1 or self.vc == 0: + print 'rebuilding fresh package list' + for x in self.packetlist: + status = "" + if self.installed_packetlist.has_key(x[0]): + if self.upgradeable_packages.has_key(x[0]): + status = "upgradeable" + else: + status = "installed" + else: + status = "installable" + self.list.append(self.buildEntryComponent(x[0], x[1], x[2], status)) + self.cachelist.append([x[0], x[1], x[2], status]) + write_cache(self.cache_file, self.cachelist) + self['list'].setList(self.list) + + def reloadPluginlist(self): + plugins.readPluginList(resolveFilename(SCOPE_PLUGINS)) + + +class IpkgInstaller(Screen): + skin = """ + + + + + + + + + + + + + """ + + def __init__(self, session, list): + Screen.__init__(self, session) + + self.list = SelectionList() + self["list"] = self.list + + p = 0 + if len(list): + p = list[0].rfind("/") + title = list[0][:p] + self.title = ("%s %s %s") % (_("Install extensions"), _("from"), title) + + for listindex in range(len(list)): + self.list.addSelection(list[listindex][p+1:], list[listindex], listindex, False) + self.list.sort() + + self["key_red"] = StaticText(_("Close")) + self["key_green"] = StaticText(_("Install")) + self["key_yellow"] = StaticText() + self["key_blue"] = StaticText(_("Invert")) + self["introduction"] = StaticText(_("Press OK to toggle the selection.")) + + self["actions"] = ActionMap(["OkCancelActions", "ColorActions"], + { + "ok": self.list.toggleSelection, + "cancel": self.close, + "red": self.close, + "green": self.install, + "blue": self.list.toggleAllSelection + }, -1) + + def install(self): + list = self.list.getSelectionsList() + cmdList = [] + for item in list: + cmdList.append((IpkgComponent.CMD_INSTALL, { "package": item[1] })) + self.session.open(Ipkg, cmdList = cmdList) + + +def filescan_open(list, session, **kwargs): + filelist = [x.path for x in list] + session.open(IpkgInstaller, filelist) # list + +def filescan(**kwargs): + from Components.Scanner import Scanner, ScanPath + return \ + Scanner(mimetypes = ["application/x-debian-package"], + paths_to_scan = + [ + ScanPath(path = "ipk", with_subdirs = True), + ScanPath(path = "", with_subdirs = False), + ], + name = "Ipkg", + description = _("Install extensions."), + openfnc = filescan_open, ) + +def UpgradeMain(session, **kwargs): + session.open(UpdatePluginMenu) + +def startSetup(menuid): + if menuid == "setup" and config.plugins.softwaremanager.onSetupMenu.value: + return [(_("Software management"), UpgradeMain, "software_manager", 50)] + return [ ] + + +def Plugins(path, **kwargs): + global plugin_path + plugin_path = path + list = [ + PluginDescriptor(name=_("Software management"), description=_("Manage your receiver's software"), where = PluginDescriptor.WHERE_MENU, needsRestart = False, fnc=startSetup), + PluginDescriptor(name=_("Ipkg"), where = PluginDescriptor.WHERE_FILESCAN, needsRestart = False, fnc = filescan) + ] + if not config.plugins.softwaremanager.onSetupMenu.value and not config.plugins.softwaremanager.onBlueButton.value: + list.append(PluginDescriptor(name=_("Software management"), description=_("Manage your receiver's software"), where = PluginDescriptor.WHERE_PLUGINMENU, needsRestart = False, fnc=UpgradeMain)) + if config.plugins.softwaremanager.onBlueButton.value: + list.append(PluginDescriptor(name=_("Software management"), description=_("Manage your receiver's software"), where = PluginDescriptor.WHERE_EXTENSIONSMENU, needsRestart = False, fnc=UpgradeMain)) + return list diff --git a/lib/python/Plugins/SystemPlugins/SoftwareManager/remove.png b/lib/python/Plugins/SystemPlugins/SoftwareManager/remove.png new file mode 100644 index 0000000..4d00781 Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/SoftwareManager/remove.png differ diff --git a/lib/python/Plugins/SystemPlugins/SoftwareManager/update.png b/lib/python/Plugins/SystemPlugins/SoftwareManager/update.png new file mode 100644 index 0000000..0ece6c7 Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/SoftwareManager/update.png differ diff --git a/lib/python/Plugins/SystemPlugins/SoftwareManager/upgrade.png b/lib/python/Plugins/SystemPlugins/SoftwareManager/upgrade.png new file mode 100644 index 0000000..1350584 Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/SoftwareManager/upgrade.png differ diff --git a/lib/python/Plugins/SystemPlugins/SoftwareManager/upgradeable.png b/lib/python/Plugins/SystemPlugins/SoftwareManager/upgradeable.png new file mode 100644 index 0000000..1702177 Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/SoftwareManager/upgradeable.png differ diff --git a/lib/python/Plugins/SystemPlugins/TempFanControl/Makefile.am b/lib/python/Plugins/SystemPlugins/TempFanControl/Makefile.am new file mode 100644 index 0000000..cb2f67d --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/TempFanControl/Makefile.am @@ -0,0 +1,7 @@ +installdir = $(pkglibdir)/python/Plugins/SystemPlugins/TempFanControl + +SUBDIRS = meta + +install_PYTHON = \ + __init__.py \ + plugin.py diff --git a/lib/python/Plugins/SystemPlugins/TempFanControl/__init__.py b/lib/python/Plugins/SystemPlugins/TempFanControl/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lib/python/Plugins/SystemPlugins/TempFanControl/meta/Makefile.am b/lib/python/Plugins/SystemPlugins/TempFanControl/meta/Makefile.am new file mode 100644 index 0000000..da7be24 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/TempFanControl/meta/Makefile.am @@ -0,0 +1,3 @@ +installdir = $(datadir)/meta + +dist_install_DATA = plugin_tempfancontrol.xml diff --git a/lib/python/Plugins/SystemPlugins/TempFanControl/meta/plugin_tempfancontrol.xml b/lib/python/Plugins/SystemPlugins/TempFanControl/meta/plugin_tempfancontrol.xml new file mode 100644 index 0000000..5c6565a --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/TempFanControl/meta/plugin_tempfancontrol.xml @@ -0,0 +1,20 @@ + + + + + + + + + + Dream Multimedia + TempFanControl + enigma2-plugin-systemplugins-tempfancontrol + Control your system fan + Control your internal system fan. + + + + + + diff --git a/lib/python/Plugins/SystemPlugins/TempFanControl/plugin.py b/lib/python/Plugins/SystemPlugins/TempFanControl/plugin.py new file mode 100644 index 0000000..3132420 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/TempFanControl/plugin.py @@ -0,0 +1,171 @@ +from Components.ActionMap import ActionMap +from Components.Sensors import sensors +from Components.Sources.Sensor import SensorSource +from Components.Sources.StaticText import StaticText +from Components.ConfigList import ConfigListScreen +from Components.config import getConfigListEntry + +from Screens.Screen import Screen + +from Plugins.Plugin import PluginDescriptor +from Components.FanControl import fancontrol + +class TempFanControl(Screen, ConfigListScreen): + skin = """ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + """ + + def __init__(self, session, args = None): + Screen.__init__(self, session) + + templist = sensors.getSensorsList(sensors.TYPE_TEMPERATURE) + tempcount = len(templist) + fanlist = sensors.getSensorsList(sensors.TYPE_FAN_RPM) + fancount = len(fanlist) + + self["red"] = StaticText(_("Cancel")) + self["green"] = StaticText(_("OK")) + self["yellow"] = StaticText("") + self["blue"] = StaticText("") + + for count in range(8): + if count < tempcount: + id = templist[count] + self["SensorTempText%d" % count] = StaticText(sensors.getSensorName(id)) + self["SensorTemp%d" % count] = SensorSource(sensorid = id) + else: + self["SensorTempText%d" % count] = StaticText("") + self["SensorTemp%d" % count] = SensorSource() + + if count < fancount: + id = fanlist[count] + self["SensorFanText%d" % count] = StaticText(sensors.getSensorName(id)) + self["SensorFan%d" % count] = SensorSource(sensorid = id) + else: + self["SensorFanText%d" % count] = StaticText("") + self["SensorFan%d" % count] = SensorSource() + + self.list = [] + for count in range(fancontrol.getFanCount()): + self.list.append(getConfigListEntry(_("Fan %d voltage") % (count + 1), fancontrol.getConfig(count).vlt)) + self.list.append(getConfigListEntry(_("Fan %d PWM") % (count + 1), fancontrol.getConfig(count).pwm)) + self.list.append(getConfigListEntry(_("Standby fan %d voltage") % (count + 1), fancontrol.getConfig(count).vlt_standby)) + self.list.append(getConfigListEntry(_("Standby fan %d PWM") % (count + 1), fancontrol.getConfig(count).pwm_standby)) + + ConfigListScreen.__init__(self, self.list, session = self.session) + #self["config"].list = self.list + #self["config"].setList(self.list) + self["config"].l.setSeperation(300) + + self["actions"] = ActionMap(["OkCancelActions", "ColorActions", "MenuActions"], + { + "ok": self.save, + "cancel": self.revert, + "red": self.revert, + "green": self.save, + "menu": self.closeRecursive, + }, -1) + + def save(self): + for count in range(fancontrol.getFanCount()): + fancontrol.getConfig(count).vlt.save() + fancontrol.getConfig(count).pwm.save() + fancontrol.getConfig(count).vlt_standby.save() + fancontrol.getConfig(count).pwm_standby.save() + self.close() + + def revert(self): + for count in range(fancontrol.getFanCount()): + fancontrol.getConfig(count).vlt.load() + fancontrol.getConfig(count).pwm.load() + fancontrol.getConfig(count).vlt_standby.load() + fancontrol.getConfig(count).pwm_standby.load() + self.close() + +def main(session, **kwargs): + session.open(TempFanControl) + +def startMenu(menuid): + if menuid != "system": + return [] + return [(_("Temperature and fan control"), main, "tempfancontrol", 80)] + +def Plugins(**kwargs): + return PluginDescriptor(name = _("Temperature and fan control"), description = _("Temperature and fan control"), where = PluginDescriptor.WHERE_MENU, needsRestart = False, fnc = startMenu) + diff --git a/lib/python/Plugins/SystemPlugins/VideoClippingSetup/Makefile.am b/lib/python/Plugins/SystemPlugins/VideoClippingSetup/Makefile.am new file mode 100644 index 0000000..af16d3c --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/VideoClippingSetup/Makefile.am @@ -0,0 +1,5 @@ +installdir = $(pkglibdir)/python/Plugins/SystemPlugins/VideoClippingSetup + +install_PYTHON = \ + __init__.py \ + plugin.py diff --git a/lib/python/Plugins/SystemPlugins/VideoClippingSetup/__init__.py b/lib/python/Plugins/SystemPlugins/VideoClippingSetup/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lib/python/Plugins/SystemPlugins/VideoClippingSetup/plugin.py b/lib/python/Plugins/SystemPlugins/VideoClippingSetup/plugin.py new file mode 100644 index 0000000..53d4c04 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/VideoClippingSetup/plugin.py @@ -0,0 +1,129 @@ +from Screens.Screen import Screen +from Components.ConfigList import ConfigListScreen +from Components.config import config, ConfigSubsection, ConfigInteger, ConfigSlider, getConfigListEntry + +config.plugins.VideoClippingSetup = ConfigSubsection() +config.plugins.VideoClippingSetup.clip_left = ConfigInteger(default = 0) +config.plugins.VideoClippingSetup.clip_width = ConfigInteger(default = 720) +config.plugins.VideoClippingSetup.clip_top = ConfigInteger(default = 0) +config.plugins.VideoClippingSetup.clip_height = ConfigInteger(default = 576) + +class VideoClippingCoordinates(Screen, ConfigListScreen): + skin = """ + + + + + + + """ + + def __init__(self, session): + self.skin = VideoClippingCoordinates.skin + Screen.__init__(self, session) + + from Components.ActionMap import ActionMap + from Components.Button import Button + + self["ok"] = Button(_("OK")) + self["cancel"] = Button(_("Cancel")) + + self["actions"] = ActionMap(["SetupActions", "ColorActions", "MenuActions"], + { + "ok": self.keyGo, + "save": self.keyGo, + "cancel": self.keyCancel, + "green": self.keyGo, + "red": self.keyCancel, + "menu": self.closeRecursive, + }, -2) + + self.list = [] + ConfigListScreen.__init__(self, self.list, session = self.session) + + left = config.plugins.VideoClippingSetup.clip_left.value + width = config.plugins.VideoClippingSetup.clip_width.value + top = config.plugins.VideoClippingSetup.clip_top.value + height = config.plugins.VideoClippingSetup.clip_height.value + + self.clip_step = ConfigSlider(default = 1, increment = 1, limits = (1, 20)) + self.clip_left = ConfigSlider(default = left, increment = self.clip_step.value, limits = (0, 720)) + self.clip_width = ConfigSlider(default = width, increment = self.clip_step.value, limits = (0, 720)) + self.clip_top = ConfigSlider(default = top, increment = self.clip_step.value, limits = (0, 576)) + self.clip_height = ConfigSlider(default = height, increment = self.clip_step.value, limits = (0, 576)) + self.list.append(getConfigListEntry(_("stepsize"), self.clip_step)) + self.list.append(getConfigListEntry(_("left"), self.clip_left)) + self.list.append(getConfigListEntry(_("width"), self.clip_width)) + self.list.append(getConfigListEntry(_("top"), self.clip_top)) + self.list.append(getConfigListEntry(_("height"), self.clip_height)) + self["config"].list = self.list + self["config"].l.setList(self.list) + + def adjustStep(self): + self.clip_left.increment = self.clip_step.value + self.clip_width.increment = self.clip_step.value + self.clip_top.increment = self.clip_step.value + self.clip_height.increment = self.clip_step.value + + def keyLeft(self): + ConfigListScreen.keyLeft(self) + self.adjustStep() + self.setPreviewPosition() + + def keyRight(self): + ConfigListScreen.keyRight(self) + self.adjustStep() + self.setPreviewPosition() + + def setPreviewPosition(self): + setPosition(int(self.clip_left.value), int(self.clip_width.value), int(self.clip_top.value), int(self.clip_height.value)) + + def keyGo(self): + config.plugins.VideoClippingSetup.clip_left.value = self.clip_left.value + config.plugins.VideoClippingSetup.clip_width.value = self.clip_width.value + config.plugins.VideoClippingSetup.clip_top.value = self.clip_top.value + config.plugins.VideoClippingSetup.clip_height.value = self.clip_height.value + config.plugins.VideoClippingSetup.save() + self.close() + + def keyCancel(self): + setConfiguredPosition() + self.close() + +def setPosition(clip_left, clip_width, clip_top, clip_height): + if clip_left + clip_width > 720: + clip_width = 720 - clip_left + if clip_top + clip_height > 576: + clip_height = 576 - clip_top + try: + file = open("/proc/stb/vmpeg/0/clip_left", "w") + file.write('%X' % clip_left) + file.close() + file = open("/proc/stb/vmpeg/0/clip_width", "w") + file.write('%X' % clip_width) + file.close() + file = open("/proc/stb/vmpeg/0/clip_top", "w") + file.write('%X' % clip_top) + file.close() + file = open("/proc/stb/vmpeg/0/clip_height", "w") + file.write('%X' % clip_height) + file.close() + except: + return + +def setConfiguredPosition(): + setPosition(int(config.plugins.VideoClippingSetup.clip_left.value), int(config.plugins.VideoClippingSetup.clip_width.value), int(config.plugins.VideoClippingSetup.clip_top.value), int(config.plugins.VideoClippingSetup.clip_height.value)) + +def main(session, **kwargs): + session.open(VideoClippingCoordinates) + +def startup(reason, **kwargs): + setConfiguredPosition() + +def Plugins(**kwargs): + from os import path + if path.exists("/proc/stb/vmpeg/0/clip_left"): + from Plugins.Plugin import PluginDescriptor + return [PluginDescriptor(name = "Video clipping setup", description = "clip overscan / letterbox borders", where = PluginDescriptor.WHERE_PLUGINMENU, fnc = main), + PluginDescriptor(name = "Video clipping setup", description = "", where = PluginDescriptor.WHERE_SESSIONSTART, fnc = startup)] + return [] diff --git a/lib/python/Plugins/SystemPlugins/VideoEnhancement/Makefile.am b/lib/python/Plugins/SystemPlugins/VideoEnhancement/Makefile.am new file mode 100644 index 0000000..159a68b --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/VideoEnhancement/Makefile.am @@ -0,0 +1,8 @@ +installdir = $(pkglibdir)/python/Plugins/SystemPlugins/VideoEnhancement + +SUBDIRS = meta + +install_PYTHON = \ + __init__.py \ + plugin.py \ + VideoEnhancement.py diff --git a/lib/python/Plugins/SystemPlugins/VideoEnhancement/VideoEnhancement.py b/lib/python/Plugins/SystemPlugins/VideoEnhancement/VideoEnhancement.py new file mode 100644 index 0000000..4ba4958 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/VideoEnhancement/VideoEnhancement.py @@ -0,0 +1,273 @@ +from Components.config import config, ConfigSubsection, ConfigSlider, ConfigSelection, ConfigNothing, NoSave +from Tools.CList import CList +from os import path as os_path +# The "VideoEnhancement" is the interface to /proc/stb/vmpeg/0. + +class VideoEnhancement: + firstRun = True + + def __init__(self): + self.last_modes_preferred = [ ] + self.createConfig() + + def createConfig(self, *args): + config.pep = ConfigSubsection() + config.pep.configsteps = NoSave(ConfigSelection(choices=[1, 5, 10, 25], default = 1)) + + if os_path.exists("/proc/stb/vmpeg/0/pep_contrast"): + def setContrast(config): + myval = int(config.value*256) + try: + print "--> setting contrast to: %0.8X" % myval + open("/proc/stb/vmpeg/0/pep_contrast", "w").write("%0.8X" % myval) + except IOError: + print "couldn't write pep_contrast." + + if not VideoEnhancement.firstRun: + self.setConfiguredValues() + + config.pep.contrast = ConfigSlider(default=128, limits=(0,256)) + config.pep.contrast.addNotifier(setContrast) + else: + config.pep.contrast = NoSave(ConfigNothing()) + + if os_path.exists("/proc/stb/vmpeg/0/pep_saturation"): + def setSaturation(config): + myval = int(config.value*256) + try: + print "--> setting saturation to: %0.8X" % myval + open("/proc/stb/vmpeg/0/pep_saturation", "w").write("%0.8X" % myval) + except IOError: + print "couldn't write pep_saturaion." + + if not VideoEnhancement.firstRun: + self.setConfiguredValues() + + config.pep.saturation = ConfigSlider(default=128, limits=(0,256)) + config.pep.saturation.addNotifier(setSaturation) + else: + config.pep.saturation = NoSave(ConfigNothing()) + + if os_path.exists("/proc/stb/vmpeg/0/pep_hue"): + def setHue(config): + myval = int(config.value*256) + try: + print "--> setting hue to: %0.8X" % myval + open("/proc/stb/vmpeg/0/pep_hue", "w").write("%0.8X" % myval) + except IOError: + print "couldn't write pep_hue." + + if not VideoEnhancement.firstRun: + self.setConfiguredValues() + + config.pep.hue = ConfigSlider(default=128, limits=(0,256)) + config.pep.hue.addNotifier(setHue) + else: + config.pep.hue = NoSave(ConfigNothing()) + + if os_path.exists("/proc/stb/vmpeg/0/pep_brightness"): + def setBrightness(config): + myval = int(config.value*256) + try: + print "--> setting brightness to: %0.8X" % myval + open("/proc/stb/vmpeg/0/pep_brightness", "w").write("%0.8X" % myval) + except IOError: + print "couldn't write pep_brightness." + + if not VideoEnhancement.firstRun: + self.setConfiguredValues() + + config.pep.brightness = ConfigSlider(default=128, limits=(0,256)) + config.pep.brightness.addNotifier(setBrightness) + else: + config.pep.brightness = NoSave(ConfigNothing()) + + if os_path.exists("/proc/stb/vmpeg/0/pep_block_noise_reduction"): + def setBlock_noise_reduction(config): + myval = int(config.value) + try: + print "--> setting block_noise_reduction to: %0.8X" % myval + open("/proc/stb/vmpeg/0/pep_block_noise_reduction", "w").write("%0.8X" % myval) + except IOError: + print "couldn't write pep_block_noise_reduction." + + if not VideoEnhancement.firstRun: + self.setConfiguredValues() + + config.pep.block_noise_reduction = ConfigSlider(default=0, limits=(0,5)) + config.pep.block_noise_reduction.addNotifier(setBlock_noise_reduction) + else: + config.pep.block_noise_reduction = NoSave(ConfigNothing()) + + if os_path.exists("/proc/stb/vmpeg/0/pep_mosquito_noise_reduction"): + def setMosquito_noise_reduction(config): + myval = int(config.value) + try: + print "--> setting mosquito_noise_reduction to: %0.8X" % myval + open("/proc/stb/vmpeg/0/pep_mosquito_noise_reduction", "w").write("%0.8X" % myval) + except IOError: + print "couldn't write pep_mosquito_noise_reduction." + + if not VideoEnhancement.firstRun: + self.setConfiguredValues() + + config.pep.mosquito_noise_reduction = ConfigSlider(default=0, limits=(0,5)) + config.pep.mosquito_noise_reduction.addNotifier(setMosquito_noise_reduction) + else: + config.pep.mosquito_noise_reduction = NoSave(ConfigNothing()) + + if os_path.exists("/proc/stb/vmpeg/0/pep_digital_contour_removal"): + def setDigital_contour_removal(config): + myval = int(config.value) + try: + print "--> setting digital_contour_removal to: %0.8X" % myval + open("/proc/stb/vmpeg/0/pep_digital_contour_removal", "w").write("%0.8X" % myval) + except IOError: + print "couldn't write pep_digital_contour_removal." + + if not VideoEnhancement.firstRun: + self.setConfiguredValues() + + config.pep.digital_contour_removal = ConfigSlider(default=0, limits=(0,5)) + config.pep.digital_contour_removal.addNotifier(setDigital_contour_removal) + else: + config.pep.digital_contour_removal = NoSave(ConfigNothing()) + + if os_path.exists("/proc/stb/vmpeg/0/pep_split"): + def setSplitMode(config): + try: + print "--> setting splitmode to:",str(config.value) + open("/proc/stb/vmpeg/0/pep_split", "w").write(str(config.value)) + except IOError: + print "couldn't write pep_split." + + if not VideoEnhancement.firstRun: + self.setConfiguredValues() + + config.pep.split = ConfigSelection(choices={ + "off": _("Off"), + "left": _("Left"), + "right": _("Right")}, + default = "off") + config.pep.split.addNotifier(setSplitMode) + else: + config.pep.split = NoSave(ConfigNothing()) + + if os_path.exists("/proc/stb/vmpeg/0/pep_sharpness"): + def setSharpness(config): + myval = int(config.value*256) + try: + print "--> setting sharpness to: %0.8X" % myval + open("/proc/stb/vmpeg/0/pep_sharpness", "w").write("%0.8X" % myval) + except IOError: + print "couldn't write pep_sharpness." + + if not VideoEnhancement.firstRun: + self.setConfiguredValues() + + config.pep.sharpness = ConfigSlider(default=0, limits=(0,256)) + config.pep.sharpness.addNotifier(setSharpness) + else: + config.pep.sharpness = NoSave(ConfigNothing()) + + if os_path.exists("/proc/stb/vmpeg/0/pep_auto_flesh"): + def setAutoflesh(config): + myval = int(config.value) + try: + print "--> setting auto_flesh to: %0.8X" % myval + open("/proc/stb/vmpeg/0/pep_auto_flesh", "w").write("%0.8X" % myval) + except IOError: + print "couldn't write pep_auto_flesh." + + if not VideoEnhancement.firstRun: + self.setConfiguredValues() + + config.pep.auto_flesh = ConfigSlider(default=0, limits=(0,4)) + config.pep.auto_flesh.addNotifier(setAutoflesh) + else: + config.pep.auto_flesh = NoSave(ConfigNothing()) + + if os_path.exists("/proc/stb/vmpeg/0/pep_green_boost"): + def setGreenboost(config): + myval = int(config.value) + try: + print "--> setting green_boost to: %0.8X" % myval + open("/proc/stb/vmpeg/0/pep_green_boost", "w").write("%0.8X" % myval) + except IOError: + print "couldn't write pep_green_boost." + + if not VideoEnhancement.firstRun: + self.setConfiguredValues() + + config.pep.green_boost = ConfigSlider(default=0, limits=(0,4)) + config.pep.green_boost.addNotifier(setGreenboost) + else: + config.pep.green_boost = NoSave(ConfigNothing()) + + if os_path.exists("/proc/stb/vmpeg/0/pep_blue_boost"): + def setBlueboost(config): + myval = int(config.value) + try: + print "--> setting blue_boost to: %0.8X" % myval + open("/proc/stb/vmpeg/0/pep_blue_boost", "w").write("%0.8X" % myval) + except IOError: + print "couldn't write pep_blue_boost." + + if not VideoEnhancement.firstRun: + self.setConfiguredValues() + + config.pep.blue_boost = ConfigSlider(default=0, limits=(0,4)) + config.pep.blue_boost.addNotifier(setBlueboost) + else: + config.pep.blue_boost = NoSave(ConfigNothing()) + + if os_path.exists("/proc/stb/vmpeg/0/pep_dynamic_contrast"): + def setDynamic_contrast(config): + myval = int(config.value) + try: + print "--> setting dynamic_contrast to: %0.8X" % myval + open("/proc/stb/vmpeg/0/pep_dynamic_contrast", "w").write("%0.8X" % myval) + except IOError: + print "couldn't write pep_dynamic_contrast." + + if not VideoEnhancement.firstRun: + self.setConfiguredValues() + + config.pep.dynamic_contrast = ConfigSlider(default=0, limits=(0,256)) + config.pep.dynamic_contrast.addNotifier(setDynamic_contrast) + else: + config.pep.dynamic_contrast = NoSave(ConfigNothing()) + + try: + x = config.av.scaler_sharpness.value + except KeyError: + if os_path.exists("/proc/stb/vmpeg/0/pep_scaler_sharpness"): + def setScaler_sharpness(config): + myval = int(config.value) + try: + print "--> setting scaler_sharpness to: %0.8X" % myval + open("/proc/stb/vmpeg/0/pep_scaler_sharpness", "w").write("%0.8X" % myval) + except IOError: + print "couldn't write pep_scaler_sharpness." + + if not VideoEnhancement.firstRun: + self.setConfiguredValues() + + config.av.scaler_sharpness = ConfigSlider(default=13, limits=(0,26)) + config.av.scaler_sharpness.addNotifier(setScaler_sharpness) + else: + config.av.scaler_sharpness = NoSave(ConfigNothing()) + + if VideoEnhancement.firstRun: + self.setConfiguredValues() + + VideoEnhancement.firstRun = False + + def setConfiguredValues(self): + try: + print "--> applying pep values" + open("/proc/stb/vmpeg/0/pep_apply", "w").write("1") + except IOError: + print "couldn't apply pep values." + +VideoEnhancement() diff --git a/lib/python/Plugins/SystemPlugins/VideoEnhancement/__init__.py b/lib/python/Plugins/SystemPlugins/VideoEnhancement/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lib/python/Plugins/SystemPlugins/VideoEnhancement/meta/Makefile.am b/lib/python/Plugins/SystemPlugins/VideoEnhancement/meta/Makefile.am new file mode 100644 index 0000000..d08de4a --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/VideoEnhancement/meta/Makefile.am @@ -0,0 +1,5 @@ +installdir = $(datadir)/meta + +dist_install_DATA = plugin_videoenhancement.xml + +EXTRA_DIST = videoenhancement_en.jpg videoenhancement_de.jpg diff --git a/lib/python/Plugins/SystemPlugins/VideoEnhancement/meta/plugin_videoenhancement.xml b/lib/python/Plugins/SystemPlugins/VideoEnhancement/meta/plugin_videoenhancement.xml new file mode 100644 index 0000000..f52b4da --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/VideoEnhancement/meta/plugin_videoenhancement.xml @@ -0,0 +1,24 @@ + + + + + + + + + + + + Dream Multimedia + VideoEnhancement + enigma2-plugin-systemplugins-videoenhancement + VideoEnhancement provides advanced video enhancement settings + The VideoEnhancement plugin provides advanced video enhancement settings. + + + + + + + + diff --git a/lib/python/Plugins/SystemPlugins/VideoEnhancement/meta/videoenhancement_de.jpg b/lib/python/Plugins/SystemPlugins/VideoEnhancement/meta/videoenhancement_de.jpg new file mode 100644 index 0000000..ecf0161 Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/VideoEnhancement/meta/videoenhancement_de.jpg differ diff --git a/lib/python/Plugins/SystemPlugins/VideoEnhancement/meta/videoenhancement_en.jpg b/lib/python/Plugins/SystemPlugins/VideoEnhancement/meta/videoenhancement_en.jpg new file mode 100644 index 0000000..a97a7a3 Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/VideoEnhancement/meta/videoenhancement_en.jpg differ diff --git a/lib/python/Plugins/SystemPlugins/VideoEnhancement/plugin.py b/lib/python/Plugins/SystemPlugins/VideoEnhancement/plugin.py new file mode 100644 index 0000000..f37296a --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/VideoEnhancement/plugin.py @@ -0,0 +1,399 @@ +from Plugins.Plugin import PluginDescriptor +from Components.ConfigList import ConfigListScreen +from Components.config import getConfigListEntry, config, ConfigNothing, ConfigSelection +from Components.ActionMap import ActionMap +from Components.Sources.StaticText import StaticText +from Screens.Screen import Screen +from Screens.MessageBox import MessageBox +import VideoEnhancement +from os import path as os_path + +class VideoEnhancementSetup(Screen, ConfigListScreen): + + skin = """ + + + + + + + + + + + + + """ + + def __init__(self, session): + Screen.__init__(self, session) + + self.session = session + self.onChangedEntry = [ ] + self.setup_title = "Videoenhancement" + + self.list = [ ] + self.xtdlist = [ ] + ConfigListScreen.__init__(self, self.list, session = self.session, on_change = self.changedEntry) + + self["actions"] = ActionMap(["SetupActions", "ColorActions", "MenuActions"], + { + "cancel": self.keyCancel, + "save": self.apply, + "yellow": self.keyYellow, + "blue": self.keyBlue, + "menu": self.closeRecursive, + }, -2) + + self["key_red"] = StaticText(_("Cancel")) + self["key_green"] = StaticText(_("OK")) + self["key_yellow"] = StaticText(_("Last config")) + self["key_blue"] = StaticText(_("Default")) + self["introduction"] = StaticText() + + self.createSetup() + self.rememberOldSettings() + self.onLayoutFinish.append(self.layoutFinished) + + def layoutFinished(self): + self.setTitle(_("Video enhancement setup")) + + def rememberOldSettings(self): + self.oldContrast = config.pep.contrast.value + self.oldSaturation = config.pep.saturation.value + self.oldHue = config.pep.hue.value + self.oldBrightness = config.pep.brightness.value + self.oldBlock_noise = config.pep.block_noise_reduction.value + self.oldMosquito_noise = config.pep.mosquito_noise_reduction.value + self.oldDigital_contour = config.pep.digital_contour_removal.value + self.oldScaler_sharpness = config.av.scaler_sharpness.value + self.oldSplit = config.pep.split.value + self.oldSharpness = config.pep.sharpness.value + self.oldAuto_flesh = config.pep.auto_flesh.value + self.oldGreen_boost = config.pep.green_boost.value + self.oldBlue_boost = config.pep.blue_boost.value + self.oldDynamic_contrast = config.pep.dynamic_contrast.value + + def addToConfigList(self, description, configEntry, add_to_xtdlist=False): + if isinstance(configEntry, ConfigNothing): + return None + entry = getConfigListEntry(description, configEntry) + self.list.append(entry); + if add_to_xtdlist: + self.xtdlist.append(entry) + return entry + + def createSetup(self): + self.list = [] + self.xtdlist = [] + addToConfigList = self.addToConfigList + self.contrastEntry = addToConfigList(_("Contrast"), config.pep.contrast) + self.saturationEntry = addToConfigList(_("Saturation"), config.pep.saturation) + self.hueEntry = addToConfigList(_("Hue"), config.pep.hue) + self.brightnessEntry = addToConfigList(_("Brightness"), config.pep.brightness) + self.scaler_sharpnessEntry = addToConfigList(_("Scaler sharpness"), config.av.scaler_sharpness) + self.splitEntry = addToConfigList(_("Split preview mode"), config.pep.split, True) + add_to_xtdlist = self.splitEntry is not None + self.sharpnessEntry = addToConfigList(_("Sharpness"), config.pep.sharpness, add_to_xtdlist) + self.auto_fleshEntry = addToConfigList(_("Auto flesh"), config.pep.auto_flesh, add_to_xtdlist) + self.green_boostEntry = addToConfigList(_("Green boost"), config.pep.green_boost, add_to_xtdlist) + self.blue_boostEntry = addToConfigList(_("Blue boost"), config.pep.blue_boost, add_to_xtdlist) + self.dynamic_contrastEntry = addToConfigList(_("Dynamic contrast"), config.pep.dynamic_contrast, add_to_xtdlist) + self.block_noise_reductionEntry = addToConfigList(_("Block noise reduction"), config.pep.block_noise_reduction, add_to_xtdlist) + self.mosquito_noise_reductionEntry = addToConfigList(_("Mosquito noise reduction"), config.pep.mosquito_noise_reduction, add_to_xtdlist) + self.digital_contour_removalEntry = addToConfigList(_("Digital contour removal"), config.pep.digital_contour_removal, add_to_xtdlist) + + self["config"].list = self.list + self["config"].l.setSeperation(300) + self["config"].l.setList(self.list) + if not self.selectionChanged in self["config"].onSelectionChanged: + self["config"].onSelectionChanged.append(self.selectionChanged) + self.selectionChanged() + + def selectionChanged(self): + self["introduction"].setText(_("Current value: ") + self.getCurrentValue()) + + def PreviewClosed(self): + self["config"].invalidate(self["config"].getCurrent()) + self.createSetup() + + def keyLeft(self): + current = self["config"].getCurrent() + if current == self.splitEntry: + ConfigListScreen.keyLeft(self) + elif current != self.splitEntry and current in self.xtdlist: + self.previewlist = [ + current, + self.splitEntry + ] + maxvalue = current[1].max + self.session.openWithCallback(self.PreviewClosed, VideoEnhancementPreview, configEntry = self.previewlist, oldSplitMode = config.pep.split.value, maxValue = maxvalue) + else: + self.previewlist = [ + current + ] + maxvalue = current[1].max + self.session.openWithCallback(self.PreviewClosed, VideoEnhancementPreview, configEntry = self.previewlist, oldSplitMode = None, maxValue = maxvalue) + + def keyRight(self): + current = self["config"].getCurrent() + if current == self.splitEntry: + ConfigListScreen.keyRight(self) + elif current != self.splitEntry and current in self.xtdlist: + self.previewlist = [ + current, + self.splitEntry + ] + maxvalue = current[1].max + self.session.openWithCallback(self.PreviewClosed, VideoEnhancementPreview, configEntry = self.previewlist, oldSplitMode = config.pep.split.value, maxValue = maxvalue ) + else: + self.previewlist = [ + current + ] + maxvalue = current[1].max + self.session.openWithCallback(self.PreviewClosed, VideoEnhancementPreview, configEntry = self.previewlist, oldSplitMode = None, maxValue = maxvalue) + + def confirm(self, confirmed): + if not confirmed: + print "not confirmed" + else: + if self.splitEntry is not None: + config.pep.split.setValue('off') + self.keySave() + + def apply(self): + self.session.openWithCallback(self.confirm, MessageBox, _("Use this video enhancement settings?"), MessageBox.TYPE_YESNO, timeout = 20, default = False) + + def cancelConfirm(self, result): + if not result: + return + self.keyYellowConfirm(True) + self.close() + + def keyCancel(self): + if self["config"].isChanged(): + self.session.openWithCallback(self.cancelConfirm, MessageBox, _("Really close without saving settings?")) + else: + self.close() + + def keyYellowConfirm(self, confirmed): + if not confirmed: + print "not confirmed" + else: + if self.contrastEntry is not None: + config.pep.contrast.setValue(self.oldContrast) + if self.saturationEntry is not None: + config.pep.saturation.setValue(self.oldSaturation) + if self.hueEntry is not None: + config.pep.hue.setValue(self.oldHue) + if self.brightnessEntry is not None: + config.pep.brightness.setValue(self.oldBrightness) + if self.block_noise_reductionEntry is not None: + config.pep.block_noise_reduction.setValue(self.oldBlock_noise) + if self.mosquito_noise_reductionEntry is not None: + config.pep.mosquito_noise_reduction.setValue(self.oldMosquito_noise) + if self.digital_contour_removalEntry is not None: + config.pep.digital_contour_removal.setValue(self.oldDigital_contour) + if self.scaler_sharpnessEntry is not None: + config.av.scaler_sharpness.setValue(self.oldScaler_sharpness) + if self.splitEntry is not None: + config.pep.split.setValue('off') + if self.sharpnessEntry is not None: + config.pep.sharpness.setValue(self.oldSharpness) + if self.auto_fleshEntry is not None: + config.pep.auto_flesh.setValue(self.oldAuto_flesh) + if self.green_boostEntry is not None: + config.pep.green_boost.setValue(self.oldGreen_boost) + if self.blue_boostEntry is not None: + config.pep.blue_boost.setValue(self.oldBlue_boost) + if self.dynamic_contrastEntry is not None: + config.pep.dynamic_contrast.setValue(self.oldDynamic_contrast) + self.keySave() + + def keyYellow(self): + self.session.openWithCallback(self.keyYellowConfirm, MessageBox, _("Reset video enhancement settings to your last configuration?"), MessageBox.TYPE_YESNO, timeout = 20, default = False) + + def keyBlueConfirm(self, confirmed): + if not confirmed: + print "not confirmed" + else: + if self.contrastEntry is not None: + config.pep.contrast.setValue(128) + if self.saturationEntry is not None: + config.pep.saturation.setValue(128) + if self.hueEntry is not None: + config.pep.hue.setValue(128) + if self.brightnessEntry is not None: + config.pep.brightness.setValue(128) + if self.block_noise_reductionEntry is not None: + config.pep.block_noise_reduction.setValue(0) + if self.mosquito_noise_reductionEntry is not None: + config.pep.mosquito_noise_reduction.setValue(0) + if self.digital_contour_removalEntry is not None: + config.pep.digital_contour_removal.setValue(0) + if self.scaler_sharpnessEntry is not None: + config.av.scaler_sharpness.setValue(13) + if self.splitEntry is not None: + config.pep.split.setValue('off') + if self.sharpnessEntry is not None: + config.pep.sharpness.setValue(0) + if self.auto_fleshEntry is not None: + config.pep.auto_flesh.setValue(0) + if self.green_boostEntry is not None: + config.pep.green_boost.setValue(0) + if self.blue_boostEntry is not None: + config.pep.blue_boost.setValue(0) + if self.dynamic_contrastEntry is not None: + config.pep.dynamic_contrast.setValue(0) + self.keySave() + + def keyBlue(self): + self.session.openWithCallback(self.keyBlueConfirm, MessageBox, _("Reset video enhancement settings to system defaults?"), MessageBox.TYPE_YESNO, timeout = 20, default = False) + + # for summary: + def changedEntry(self): + for x in self.onChangedEntry: + x() + self.selectionChanged() + + def getCurrentEntry(self): + return self["config"].getCurrent()[0] + + def getCurrentValue(self): + return str(self["config"].getCurrent()[1].getText()) + + def createSummary(self): + from Screens.Setup import SetupSummary + return SetupSummary + + +class VideoEnhancementPreview(Screen, ConfigListScreen): + + skin = """ + + + + + + + + + """ + + def __init__(self, session, configEntry = None, oldSplitMode = None, maxValue = None): + Screen.__init__(self, session) + + self.onChangedEntry = [ ] + self.setup_title = "Videoenhancement" + self.oldSplitMode = oldSplitMode + self.maxValue = maxValue + self.configStepsEntry = None + self.isStepSlider = None + + self.list = [ ] + self.configEntry = configEntry + ConfigListScreen.__init__(self, self.list, session = session, on_change = self.changedEntry) + + self["actions"] = ActionMap(["SetupActions"], + { + "cancel": self.keyCancel, + "save": self.keySave, + }, -2) + + self["key_red"] = StaticText(_("Cancel")) + self["key_green"] = StaticText(_("OK")) + self["introduction"] = StaticText() + + self.createSetup() + self.onLayoutFinish.append(self.layoutFinished) + + def layoutFinished(self): + self.setTitle(_("Video enhancement preview")) + + def createSetup(self): + self.list = [ ] + if self.maxValue == 256: + self.configStepsEntry = getConfigListEntry(_("Change step size"), config.pep.configsteps) + + if self.configEntry is not None: + self.list = self.configEntry + if self.maxValue == 256: + self.list.append(self.configStepsEntry) + + self["config"].list = self.list + self["config"].l.setSeperation(300) + self["config"].l.setList(self.list) + if not self.selectionChanged in self["config"].onSelectionChanged: + self["config"].onSelectionChanged.append(self.selectionChanged) + self.selectionChanged() + + def selectionChanged(self): + self["introduction"].setText(_("Current value: ") + self.getCurrentValue()) + try: + max_avail=self["config"].getCurrent()[1].max + if max_avail == 256: + self.isStepSlider = True + else: + self.isStepSlider = False + except AttributeError: + print "no max value" + + def keyLeft(self): + if self.isStepSlider is True: + self["config"].getCurrent()[1].increment = config.pep.configsteps.value + ConfigListScreen.keyLeft(self) + + def keyRight(self): + if self.isStepSlider is True: + self["config"].getCurrent()[1].increment = config.pep.configsteps.value + ConfigListScreen.keyRight(self) + + def keySave(self): + if self.oldSplitMode is not None: + currentSplitMode = config.pep.split.value + if self.oldSplitMode == 'off' and currentSplitMode != 'off': + config.pep.split.setValue('off') + else: + pass + self.close() + + def keyCancel(self): + for x in self["config"].list: + x[1].cancel() + if self.oldSplitMode is not None: + currentSplitMode = config.pep.split.value + if self.oldSplitMode == 'off' and currentSplitMode != 'off': + config.pep.split.setValue('off') + else: + pass + self.close() + + # for summary: + def changedEntry(self): + for x in self.onChangedEntry: + x() + self.selectionChanged() + + def getCurrentEntry(self): + return self["config"].getCurrent()[0] + + def getCurrentValue(self): + return str(self["config"].getCurrent()[1].getText()) + + def createSummary(self): + from Screens.Setup import SetupSummary + return SetupSummary + +def videoEnhancementSetupMain(session, **kwargs): + session.open(VideoEnhancementSetup) + +def startSetup(menuid): + if menuid != "system": + return [ ] + return [(_("Video enhancement settings") , videoEnhancementSetupMain, "videoenhancement_setup", 41)] + +def Plugins(**kwargs): + list = [] + if config.usage.setup_level.index >= 2 and os_path.exists("/proc/stb/vmpeg/0/pep_apply"): + list.append(PluginDescriptor(name=_("Video enhancement setup"), description=_("Advanced video enhancement setup"), where = PluginDescriptor.WHERE_MENU, needsRestart = False, fnc=startSetup)) + return list diff --git a/lib/python/Plugins/SystemPlugins/VideoTune/Makefile.am b/lib/python/Plugins/SystemPlugins/VideoTune/Makefile.am new file mode 100644 index 0000000..24fc838 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/VideoTune/Makefile.am @@ -0,0 +1,7 @@ +installdir = $(pkglibdir)/python/Plugins/SystemPlugins/VideoTune + +SUBDIRS = meta + +install_PYTHON = \ + __init__.py \ + plugin.py VideoFinetune.py diff --git a/lib/python/Plugins/SystemPlugins/VideoTune/VideoFinetune.py b/lib/python/Plugins/SystemPlugins/VideoTune/VideoFinetune.py new file mode 100644 index 0000000..a7dc46f --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/VideoTune/VideoFinetune.py @@ -0,0 +1,348 @@ +from Screens.Screen import Screen +from Components.Sources.CanvasSource import CanvasSource +from Components.ActionMap import ActionMap, NumberActionMap +from Tools.Directories import fileExists +from enigma import gFont, getDesktop, gMainDC, eSize, RT_HALIGN_RIGHT, RT_WRAP + +def RGB(r,g,b): + return (r<<16)|(g<<8)|b + +class OverscanTestScreen(Screen): + skin = """ + + + """ + + def __init__(self, session, xres=1280, yres=720): + Screen.__init__(self, session) + + self.xres, self.yres = getDesktop(0).size().width(), getDesktop(0).size().height() + + if (self.xres, self.yres) != (xres, yres): + gMainDC.getInstance().setResolution(xres, yres) + getDesktop(0).resize(eSize(xres, yres)) + self.onClose.append(self.__close) + + self["actions"] = NumberActionMap(["InputActions", "OkCancelActions"], + { + "1": self.keyNumber, + "2": self.keyNumber, + "3": self.keyNumber, + "4": self.keyNumber, + "5": self.keyNumber, + "7": self.keyNumber, + "ok": self.ok, + "cancel": self.cancel + }) + + def __close(self): + gMainDC.getInstance().setResolution(self.xres, self.yres) + getDesktop(0).resize(eSize(self.xres, self.yres)) + + def ok(self): + self.close(True) + + def cancel(self): + self.close(False) + + def keyNumber(self, key): + self.close(key) + +class FullHDTestScreen(OverscanTestScreen): + skin = """ + + + """ + + def __init__(self, session): + OverscanTestScreen.__init__(self, session, 1920, 1080) + + self["actions"] = NumberActionMap(["InputActions", "OkCancelActions"], + { + "1": self.keyNumber, + "2": self.keyNumber, + "3": self.keyNumber, + "4": self.keyNumber, + "5": self.keyNumber, + "6": self.keyNumber, + "ok": self.ok, + "cancel": self.cancel + }) + +class VideoFinetune(Screen): + skin = """ + + + """ + + def __init__(self, session): + Screen.__init__(self, session) + self["Canvas"] = CanvasSource() + + self.basic_colors = [RGB(255, 255, 255), RGB(255, 255, 0), RGB(0, 255, 255), RGB(0, 255, 0), RGB(255, 0, 255), RGB(255, 0, 0), RGB(0, 0, 255), RGB(0, 0, 0)] + + if fileExists("/proc/stb/fb/dst_left"): + self.left = open("/proc/stb/fb/dst_left", "r").read() + self.width = open("/proc/stb/fb/dst_width", "r").read() + self.top = open("/proc/stb/fb/dst_top", "r").read() + self.height = open("/proc/stb/fb/dst_height", "r").read() + open("/proc/stb/fb/dst_left", "w").write("00000000") + open("/proc/stb/fb/dst_width", "w").write("000002d0") + open("/proc/stb/fb/dst_top", "w").write("00000000") + open("/proc/stb/fb/dst_height", "w").write("0000000240") + self.onClose.append(self.__close) + + self["actions"] = NumberActionMap(["InputActions", "OkCancelActions"], + { + "1": self.keyNumber, + "2": self.keyNumber, + "3": self.keyNumber, + "4": self.keyNumber, + "5": self.keyNumber, + "6": self.keyNumber, + "7": self.keyNumber, + "ok": self.callNext, + "cancel": self.close, + }) + self.testpic_brightness() + + def __close(self): + open("/proc/stb/fb/dst_left", "w").write(self.left) + open("/proc/stb/fb/dst_width", "w").write(self.width) + open("/proc/stb/fb/dst_top", "w").write(self.top) + open("/proc/stb/fb/dst_height", "w").write(self.height) + + def keyNumber(self, key): + (self.testpic_brightness, self.testpic_contrast, self.testpic_colors, self.testpic_filter, self.testpic_gamma, self.testpic_overscan, self.testpic_fullhd)[key-1]() + + def callNext(self): + if self.next: + self.next() + + def bbox(self, x, y, width, height, col, xx, yy): + c = self["Canvas"] + c.fill(x, y, xx, yy, col) + c.fill(x + width - xx, y, xx, yy, col) + c.fill(x, y + height - yy, xx, yy, col) + c.fill(x + width - xx, y + height - yy, xx, yy, col) + + def testpic_brightness(self): + self.next = self.testpic_contrast + self.show() + + c = self["Canvas"] + + xres, yres = getDesktop(0).size().width(), getDesktop(0).size().height() + + bbw, bbh = xres / 192, yres / 192 + c.fill(0, 0, xres, yres, RGB(0,0,0)) + + for i in range(15): + col = i * 116 / 14 + height = yres / 3 + eh = height / 8 + offset = yres/6 + eh * i + x = xres * 2 / 3 + width = yres / 6 + + c.fill(x, offset, width, eh, RGB(col, col, col)) + if col == 0 or col == 16 or col == 116: + c.fill(x, offset, width, 2, RGB(255, 255, 255)) + if i < 2: + c.writeText(x + width, offset, width, eh, RGB(255, 255, 255), RGB(0,0,0), gFont("Regular", 20), "%d." % (i+1)) + + c.writeText(xres / 10, yres / 6 - 40, xres * 3 / 5, 40, RGB(128,255,255), RGB(0,0,0), gFont("Regular", 40), + _("Brightness")) + c.writeText(xres / 10, yres / 6, xres / 2, yres * 4 / 6, RGB(255,255,255), RGB(0,0,0), gFont("Regular", 20), + _("If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", " + "set it to standard. Adjust the backlight level to a value suiting your taste. " + "Turn down contrast on your TV as much as possible.\nThen turn the brightness setting as " + "low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" + "Do not care about the bright shades now. They will be set up in the next step.\n" + "If you are happy with the result, press OK."), + RT_WRAP) + + c.flush() + + def testpic_contrast(self): + self.next = self.testpic_colors + self.show() + + c = self["Canvas"] + + xres, yres = getDesktop(0).size().width(), getDesktop(0).size().height() + + bbw, bbh = xres / 192, yres / 192 + c.fill(0, 0, xres, yres, RGB(0,0,0)) + + bbw = xres / 192 + bbh = yres / 192 + c.fill(0, 0, xres, yres, RGB(255,255,255)) + + for i in range(15): + col = 185 + i * 5 + height = yres / 3 + eh = height / 8 + offset = yres/6 + eh * i + x = xres * 2 / 3 + width = yres / 6 + + c.fill(x, offset, width, eh, RGB(col, col, col)) + if col == 185 or col == 235 or col == 255: + c.fill(x, offset, width, 2, RGB(0,0,0)) + if i >= 13: + c.writeText(x + width, offset, width, eh, RGB(0, 0, 0), RGB(255, 255, 255), gFont("Regular", 20), "%d." % (i-13+1)) + + c.writeText(xres / 10, yres / 6 - 40, xres * 3 / 5, 40, RGB(128,0,0), RGB(255,255,255), gFont("Regular", 40), + _("Contrast")) + c.writeText(xres / 10, yres / 6, xres / 2, yres * 4 / 6, RGB(0,0,0), RGB(255,255,255), gFont("Regular", 20), + _("Now, use the contrast setting to turn up the brightness of the background as much as possible, " + "but make sure that you can still see the difference between the two brightest levels of shades." + "If you have done that, press OK."), + RT_WRAP) + + c.flush() + + def testpic_colors(self): + self.next = self.testpic_filter + self.show() + + c = self["Canvas"] + + xres, yres = getDesktop(0).size().width(), getDesktop(0).size().height() + + bbw = xres / 192 + bbh = yres / 192 + c.fill(0, 0, xres, yres, RGB(255,255,255)) + + for i in range(33): + col = i * 255 / 32; + width = xres - xres/5; + ew = width / 33; + offset = xres/10 + ew * i; + y = yres * 2 / 3; + height = yres / 20; + o = yres / 60; + + if i < 16: + c1 = 0xFF; + c2 = 0xFF - (0xFF * i / 16); + else: + c1 = 0xFF - (0xFF * (i - 16) / 16); + c2 = 0; + + c.fill(offset, y, ew, height, RGB(c1, c2, c2)) + c.fill(offset, y + (height + o) * 1, ew, height, RGB(c2, c1, c2)) + c.fill(offset, y + (height + o) * 2, ew, height, RGB(c2, c2, c1)) + c.fill(offset, y + (height + o) * 3, ew, height, RGB(col, col, col)) + + if i == 0: + self.bbox(offset, y, ew, height, RGB(0,0,0), bbw, bbh); + self.bbox(offset, y + (height + o) * 1, ew, height, RGB(0,0,0), bbw, bbh); + self.bbox(offset, y + (height + o) * 2, ew, height, RGB(0,0,0), bbw, bbh); + + for i in range(8): + height = yres / 3; + eh = height / 8; + offset = yres/6 + eh * i; + x = xres * 2 / 3; + width = yres / 6; + + c.fill(x, offset, width, eh, self.basic_colors[i]) + if i == 0: + self.bbox(x, offset, width, eh, RGB(0,0,0), bbw, bbh) + + c.writeText(xres / 10, yres / 6 - 40, xres * 3 / 5, 40, RGB(128,0,0), RGB(255,255,255), gFont("Regular", 40), + ("Color")) + c.writeText(xres / 10, yres / 6, xres / 2, yres * 4 / 6, RGB(0,0,0), RGB(255,255,255), gFont("Regular", 20), + _("Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. " + "If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens."), + RT_WRAP) + + c.flush() + + def testpic_filter(self): + self.next = self.testpic_gamma + self.show() + + c = self["Canvas"] + + xres, yres = getDesktop(0).size().width(), getDesktop(0).size().height() + + c.fill(0, 0, xres, yres, RGB(64, 64, 64)) + + width = xres - xres/5 + offset = xres/10 + yb = yres * 2 / 3 + height = yres / 20 + o = yres / 60 + border = xres / 60 + + g1 = 255 + g2 = 128 + + c.fill(offset - border, yb - border, border * 2 + width, border * 2 + (height * 3 + o * 2), RGB(g1, g1, g1)) + + for x in xrange(0, width, 2): + c.fill(offset + x, yb, 1, height, RGB(g2,g2,g2)) + + for x in xrange(0, width, 4): + c.fill(offset + x, yb + (o + height), 2, height, RGB(g2,g2,g2)) + + for x in xrange(0, width, 8): + c.fill(offset + x, yb + (o + height) * 2, 4, height, RGB(g2,g2,g2)) + + c.flush() + + def testpic_gamma(self): + self.next = self.testpic_overscan + self.show() + + c = self["Canvas"] + + xres, yres = getDesktop(0).size().width(), getDesktop(0).size().height() + + c.fill(0, 0, xres, yres, RGB(0, 0, 0)) + + width = xres - xres/5 + offset_x = xres/10 + + height = yres - yres/5 + offset_y = yres/10 + + for y in xrange(0, height, 4): + c.fill(offset_x, offset_y + y, width/2, 2, RGB(255,255,255)) + + l = 0 + fnt = gFont("Regular", height / 14) + import math + for i in xrange(1, 15): + y = i * height / 14 + h = y - l + gamma = 0.6 + i * 0.2 + col = int(math.pow(.5, 1.0/gamma) * 256.0) + c.fill(offset_x + width/2, offset_y + l, width/2, h, RGB(col,col,col)) + + c.writeText(offset_x + width/2, offset_y + l, width/2, h, RGB(0,0,0), RGB(col,col,col), fnt, "%1.2f" % gamma, RT_WRAP|RT_HALIGN_RIGHT) + l = y + + c.flush() + + def testpic_overscan(self): + self.next = self.testpic_fullhd + self.hide() + self.session.openWithCallback(self.testpicCallback, OverscanTestScreen) + + def testpic_fullhd(self): + self.next = self.testpic_brightness + self.hide() + self.session.openWithCallback(self.testpicCallback, FullHDTestScreen) + + def testpicCallback(self, key): + if key: + if key == True: + self.next() + else: + self.keyNumber(key) + else: + self.close() diff --git a/lib/python/Plugins/SystemPlugins/VideoTune/__init__.py b/lib/python/Plugins/SystemPlugins/VideoTune/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lib/python/Plugins/SystemPlugins/VideoTune/meta/Makefile.am b/lib/python/Plugins/SystemPlugins/VideoTune/meta/Makefile.am new file mode 100644 index 0000000..a864905 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/VideoTune/meta/Makefile.am @@ -0,0 +1,5 @@ +installdir = $(datadir)/meta + +dist_install_DATA = plugin_videotune.xml + +EXTRA_DIST = videotune.jpg \ No newline at end of file diff --git a/lib/python/Plugins/SystemPlugins/VideoTune/meta/plugin_videotune.xml b/lib/python/Plugins/SystemPlugins/VideoTune/meta/plugin_videotune.xml new file mode 100644 index 0000000..78b170a --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/VideoTune/meta/plugin_videotune.xml @@ -0,0 +1,17 @@ + + + + + + + Dream Multimedia + VideoTune + enigma2-plugin-systemplugins-videotune + VideoTune helps fine-tuning your tv display + The VideoTune helps fine-tuning your tv display.\nYou can control brightness and contrast of your tv. + + + + + + diff --git a/lib/python/Plugins/SystemPlugins/VideoTune/meta/videotune.jpg b/lib/python/Plugins/SystemPlugins/VideoTune/meta/videotune.jpg new file mode 100644 index 0000000..e966479 Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/VideoTune/meta/videotune.jpg differ diff --git a/lib/python/Plugins/SystemPlugins/VideoTune/plugin.py b/lib/python/Plugins/SystemPlugins/VideoTune/plugin.py new file mode 100644 index 0000000..74694b1 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/VideoTune/plugin.py @@ -0,0 +1,14 @@ +from Plugins.Plugin import PluginDescriptor + +def videoFinetuneMain(session, **kwargs): + from VideoFinetune import VideoFinetune + session.open(VideoFinetune) + +def startSetup(menuid): + if menuid != "system": + return [ ] + + return [(_("Video fine tuning"), videoFinetuneMain, "video_finetune", None)] + +def Plugins(**kwargs): + return PluginDescriptor(name=_("Video fine tuning"), description=_("fine-tune your display"), where = PluginDescriptor.WHERE_MENU, needsRestart = False, fnc=startSetup) diff --git a/lib/python/Plugins/SystemPlugins/Videomode/11DVI.png b/lib/python/Plugins/SystemPlugins/Videomode/11DVI.png new file mode 100644 index 0000000..168d7ab Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/Videomode/11DVI.png differ diff --git a/lib/python/Plugins/SystemPlugins/Videomode/DVI.png b/lib/python/Plugins/SystemPlugins/Videomode/DVI.png new file mode 100644 index 0000000..0a98851 Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/Videomode/DVI.png differ diff --git a/lib/python/Plugins/SystemPlugins/Videomode/HDMI.png b/lib/python/Plugins/SystemPlugins/Videomode/HDMI.png new file mode 100644 index 0000000..0a98851 Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/Videomode/HDMI.png differ diff --git a/lib/python/Plugins/SystemPlugins/Videomode/Makefile.am b/lib/python/Plugins/SystemPlugins/Videomode/Makefile.am new file mode 100644 index 0000000..b78a299 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/Videomode/Makefile.am @@ -0,0 +1,20 @@ +installdir = $(pkglibdir)/python/Plugins/SystemPlugins/Videomode + +SUBDIRS = meta + +install_PYTHON = \ + __init__.py \ + plugin.py \ + VideoHardware.py \ + VideoWizard.py + +dist_install_DATA = \ + DVI.png \ + lcd_DVI.png \ + lcd_Scart.png \ + lcd_YPbPr.png \ + Scart.png \ + videowizard.xml \ + YPbPr.png \ + HDMI.png \ + lcd_HDMI.png diff --git a/lib/python/Plugins/SystemPlugins/Videomode/Scart.png b/lib/python/Plugins/SystemPlugins/Videomode/Scart.png new file mode 100644 index 0000000..c3f487e Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/Videomode/Scart.png differ diff --git a/lib/python/Plugins/SystemPlugins/Videomode/VideoHardware.py b/lib/python/Plugins/SystemPlugins/Videomode/VideoHardware.py new file mode 100644 index 0000000..7f39456 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/Videomode/VideoHardware.py @@ -0,0 +1,340 @@ +from enigma import eTimer +from Components.config import config, ConfigSelection, ConfigSubDict, ConfigYesNo + +from Tools.CList import CList +from Tools.HardwareInfo import HardwareInfo +from os import path + +# The "VideoHardware" is the interface to /proc/stb/video. +# It generates hotplug events, and gives you the list of +# available and preferred modes, as well as handling the currently +# selected mode. No other strict checking is done. +class VideoHardware: + rates = { } # high-level, use selectable modes. + + modes = { } # a list of (high-level) modes for a certain port. + + rates["PAL"] = { "50Hz": { 50: "pal" }, + "60Hz": { 60: "pal60" }, + "multi": { 50: "pal", 60: "pal60" } } + + rates["NTSC"] = { "60Hz": { 60: "ntsc" } } + + rates["Multi"] = { "multi": { 50: "pal", 60: "ntsc" } } + + rates["480i"] = { "60Hz": { 60: "480i" } } + + rates["576i"] = { "50Hz": { 50: "576i" } } + + rates["480p"] = { "60Hz": { 60: "480p" } } + + rates["576p"] = { "50Hz": { 50: "576p" } } + + rates["720p"] = { "50Hz": { 50: "720p50" }, + "60Hz": { 60: "720p" }, + "multi": { 50: "720p50", 60: "720p" } } + + rates["1080i"] = { "50Hz": { 50: "1080i50" }, + "60Hz": { 60: "1080i" }, + "multi": { 50: "1080i50", 60: "1080i" } } + + rates["1080p"] = { "50Hz": { 50: "1080p50" }, + "60Hz": { 60: "1080p" }, + "multi": { 50: "1080p50", 60: "1080p" } } + + rates["PC"] = { + "1024x768": { 60: "1024x768" }, # not possible on DM7025 + "800x600" : { 60: "800x600" }, # also not possible + "720x480" : { 60: "720x480" }, + "720x576" : { 60: "720x576" }, + "1280x720": { 60: "1280x720" }, + "1280x720 multi": { 50: "1280x720_50", 60: "1280x720" }, + "1920x1080": { 60: "1920x1080"}, + "1920x1080 multi": { 50: "1920x1080", 60: "1920x1080_50" }, + "1280x1024" : { 60: "1280x1024"}, + "1366x768" : { 60: "1366x768"}, + "1366x768 multi" : { 50: "1366x768", 60: "1366x768_50" }, + "1280x768": { 60: "1280x768" }, + "640x480" : { 60: "640x480" } + } + + modes["Scart"] = ["PAL", "NTSC", "Multi"] + modes["YPbPr"] = ["720p", "1080i", "576p", "480p", "576i", "480i"] + modes["DVI"] = ["720p", "1080p", "1080i", "576p", "480p", "576i", "480i"] + modes["DVI-PC"] = ["PC"] + + def getOutputAspect(self): + ret = (16,9) + port = config.av.videoport.value + if port not in config.av.videomode: + print "current port not available in getOutputAspect!!! force 16:9" + else: + mode = config.av.videomode[port].value + force_widescreen = self.isWidescreenMode(port, mode) + is_widescreen = force_widescreen or config.av.aspect.value in ("16_9", "16_10") + is_auto = config.av.aspect.value == "auto" + if is_widescreen: + if force_widescreen: + pass + else: + aspect = {"16_9": "16:9", "16_10": "16:10"}[config.av.aspect.value] + if aspect == "16:10": + ret = (16,10) + elif is_auto: + try: + aspect_str = open("/proc/stb/vmpeg/0/aspect", "r").read() + if aspect_str == "1": # 4:3 + ret = (4,3) + except IOError: + pass + else: # 4:3 + ret = (4,3) + return ret + + def __init__(self): + self.last_modes_preferred = [ ] + self.on_hotplug = CList() + self.current_mode = None + self.current_port = None + + self.readAvailableModes() + + if self.modes.has_key("DVI-PC") and not self.getModeList("DVI-PC"): + print "remove DVI-PC because of not existing modes" + del self.modes["DVI-PC"] + + self.createConfig() + self.readPreferredModes() + + portlist = self.getPortList() + has1080p50 = False + for port in portlist: + if port == 'DVI' and HardwareInfo().has_hdmi(): + if "1080p50" in self.modes_available: + has1080p50 = True + + if has1080p50: + self.widescreen_modes = set(["720p", "1080i", "1080p"]) + else: + self.widescreen_modes = set(["720p", "1080i"]) + + # take over old AVSwitch component :) + from Components.AVSwitch import AVSwitch + config.av.aspectratio.notifiers = [ ] + config.av.tvsystem.notifiers = [ ] + config.av.wss.notifiers = [ ] + AVSwitch.getOutputAspect = self.getOutputAspect + + config.av.aspect.addNotifier(self.updateAspect) + config.av.wss.addNotifier(self.updateAspect) + config.av.policy_169.addNotifier(self.updateAspect) + config.av.policy_43.addNotifier(self.updateAspect) + + def readAvailableModes(self): + try: + modes = open("/proc/stb/video/videomode_choices").read()[:-1] + except IOError: + print "couldn't read available videomodes." + self.modes_available = [ ] + return + self.modes_available = modes.split(' ') + + def readPreferredModes(self): + try: + modes = open("/proc/stb/video/videomode_preferred").read()[:-1] + self.modes_preferred = modes.split(' ') + except IOError: + print "reading preferred modes failed, using all modes" + self.modes_preferred = self.modes_available + + if self.modes_preferred != self.last_modes_preferred: + self.last_modes_preferred = self.modes_preferred + print "hotplug on dvi" + self.on_hotplug("DVI") # must be DVI + + # check if a high-level mode with a given rate is available. + def isModeAvailable(self, port, mode, rate): + rate = self.rates[mode][rate] + for mode in rate.values(): + if mode not in self.modes_available: + return False + return True + + def isWidescreenMode(self, port, mode): + return mode in self.widescreen_modes + + def setMode(self, port, mode, rate, force = None): + print "setMode - port:", port, "mode:", mode, "rate:", rate + # we can ignore "port" + self.current_mode = mode + self.current_port = port + modes = self.rates[mode][rate] + + mode_50 = modes.get(50) + mode_60 = modes.get(60) + if mode_50 is None or force == 60: + mode_50 = mode_60 + if mode_60 is None or force == 50: + mode_60 = mode_50 + + try: + open("/proc/stb/video/videomode_50hz", "w").write(mode_50) + open("/proc/stb/video/videomode_60hz", "w").write(mode_60) + except IOError: + try: + # fallback if no possibility to setup 50/60 hz mode + open("/proc/stb/video/videomode", "w").write(mode_50) + except IOError: + print "setting videomode failed." + + try: + open("/etc/videomode", "w").write(mode_50) # use 50Hz mode (if available) for booting + except IOError: + print "writing initial videomode to /etc/videomode failed." + + self.updateAspect(None) + + def saveMode(self, port, mode, rate): + print "saveMode", port, mode, rate + config.av.videoport.value = port + config.av.videoport.save() + if port in config.av.videomode: + config.av.videomode[port].value = mode + config.av.videomode[port].save() + if mode in config.av.videorate: + config.av.videorate[mode].value = rate + config.av.videorate[mode].save() + + def isPortAvailable(self, port): + # fixme + return True + + def isPortUsed(self, port): + if port == "DVI": + self.readPreferredModes() + return len(self.modes_preferred) != 0 + else: + return True + + def getPortList(self): + return [port for port in self.modes if self.isPortAvailable(port)] + + # get a list with all modes, with all rates, for a given port. + def getModeList(self, port): + print "getModeList for port", port + res = [ ] + for mode in self.modes[port]: + # list all rates which are completely valid + rates = [rate for rate in self.rates[mode] if self.isModeAvailable(port, mode, rate)] + + # if at least one rate is ok, add this mode + if len(rates): + res.append( (mode, rates) ) + return res + + def createConfig(self, *args): + has_hdmi = HardwareInfo().has_hdmi() + lst = [] + + config.av.videomode = ConfigSubDict() + config.av.videorate = ConfigSubDict() + + # create list of output ports + portlist = self.getPortList() + for port in portlist: + descr = port + if descr == 'DVI' and has_hdmi: + descr = 'HDMI' + elif descr == 'DVI-PC' and has_hdmi: + descr = 'HDMI-PC' + lst.append((port, descr)) + + # create list of available modes + modes = self.getModeList(port) + if len(modes): + config.av.videomode[port] = ConfigSelection(choices = [mode for (mode, rates) in modes]) + for (mode, rates) in modes: + config.av.videorate[mode] = ConfigSelection(choices = rates) + config.av.videoport = ConfigSelection(choices = lst) + + def setConfiguredMode(self): + port = config.av.videoport.value + if port not in config.av.videomode: + print "current port not available, not setting videomode" + return + + mode = config.av.videomode[port].value + + if mode not in config.av.videorate: + print "current mode not available, not setting videomode" + return + + rate = config.av.videorate[mode].value + self.setMode(port, mode, rate) + + def updateAspect(self, cfgelement): + # determine aspect = {any,4:3,16:9,16:10} + # determine policy = {bestfit,letterbox,panscan,nonlinear} + + # based on; + # config.av.videoport.value: current video output device + # Scart: + # config.av.aspect: + # 4_3: use policy_169 + # 16_9,16_10: use policy_43 + # auto always "bestfit" + # config.av.policy_169 + # letterbox use letterbox + # panscan use panscan + # scale use bestfit + # config.av.policy_43 + # pillarbox use panscan + # panscan use letterbox ("panscan" is just a bad term, it's inverse-panscan) + # nonlinear use nonlinear + # scale use bestfit + + port = config.av.videoport.value + if port not in config.av.videomode: + print "current port not available, not setting videomode" + return + mode = config.av.videomode[port].value + + force_widescreen = self.isWidescreenMode(port, mode) + + is_widescreen = force_widescreen or config.av.aspect.value in ("16_9", "16_10") + is_auto = config.av.aspect.value == "auto" + policy2 = "policy" # use main policy + + if is_widescreen: + if force_widescreen: + aspect = "16:9" + else: + aspect = {"16_9": "16:9", "16_10": "16:10"}[config.av.aspect.value] + policy_choices = {"pillarbox": "panscan", "panscan": "letterbox", "nonlinear": "nonlinear", "scale": "bestfit", "auto": "bestfit"} + policy = policy_choices[config.av.policy_43.value] + policy2_choices = {"letterbox": "letterbox", "panscan": "panscan", "scale": "bestfit", "auto": "bestfit"} + policy2 = policy2_choices[config.av.policy_169.value] + elif is_auto: + aspect = "any" + policy = "bestfit" + else: + aspect = "4:3" + policy = {"letterbox": "letterbox", "panscan": "panscan", "scale": "bestfit", "auto": "bestfit"}[config.av.policy_169.value] + + if not config.av.wss.value: + wss = "auto(4:3_off)" + else: + wss = "auto" + + print "-> setting aspect, policy, policy2, wss", aspect, policy, policy2, wss + open("/proc/stb/video/aspect", "w").write(aspect) + open("/proc/stb/video/policy", "w").write(policy) + open("/proc/stb/denc/0/wss", "w").write(wss) + try: + open("/proc/stb/video/policy2", "w").write(policy2) + except IOError: + pass + +config.av.edid_override = ConfigYesNo(default = False) +video_hw = VideoHardware() +video_hw.setConfiguredMode() diff --git a/lib/python/Plugins/SystemPlugins/Videomode/VideoWizard.py b/lib/python/Plugins/SystemPlugins/Videomode/VideoWizard.py new file mode 100644 index 0000000..c04f34d --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/Videomode/VideoWizard.py @@ -0,0 +1,191 @@ +from Screens.Wizard import WizardSummary +from Screens.WizardLanguage import WizardLanguage +from Screens.Rc import Rc +from VideoHardware import video_hw + +from Components.Pixmap import Pixmap, MovingPixmap, MultiPixmap +from Components.config import config, ConfigBoolean, configfile + +from Tools.Directories import resolveFilename, SCOPE_PLUGINS +from Tools.HardwareInfo import HardwareInfo + +config.misc.showtestcard = ConfigBoolean(default = False) + +class VideoWizardSummary(WizardSummary): + def __init__(self, session, parent): + WizardSummary.__init__(self, session, parent) + + def setLCDPicCallback(self): + self.parent.setLCDTextCallback(self.setText) + + def setLCDPic(self, file): + self["pic"].instance.setPixmapFromFile(file) + +class VideoWizard(WizardLanguage, Rc): + skin = """ + + + + + + + + + + + + + + + + + + + + + """ + + def __init__(self, session): + # FIXME anyone knows how to use relative paths from the plugin's directory? + self.xmlfile = resolveFilename(SCOPE_PLUGINS, "SystemPlugins/Videomode/videowizard.xml") + self.hw = video_hw + + WizardLanguage.__init__(self, session, showSteps = False, showStepSlider = False) + Rc.__init__(self) + self["wizard"] = Pixmap() + self["portpic"] = Pixmap() + + self.port = None + self.mode = None + self.rate = None + + + def createSummary(self): + print "++++++++++++***++**** VideoWizard-createSummary" + from Screens.Wizard import WizardSummary + return VideoWizardSummary + + def markDone(self): + self.hw.saveMode(self.port, self.mode, self.rate) + config.misc.videowizardenabled.value = 0 + config.misc.videowizardenabled.save() + configfile.save() + + def listInputChannels(self): + hw_type = HardwareInfo().get_device_name() + has_hdmi = HardwareInfo().has_hdmi() + list = [] + + for port in self.hw.getPortList(): + if self.hw.isPortUsed(port): + descr = port + if descr == 'DVI' and has_hdmi: + descr = 'HDMI' + if port != "DVI-PC": + list.append((descr,port)) + list.sort(key = lambda x: x[0]) + print "listInputChannels:", list + return list + + def inputSelectionMade(self, index): + print "inputSelectionMade:", index + self.port = index + self.inputSelect(index) + + def inputSelectionMoved(self): + hw_type = HardwareInfo().get_device_name() + has_hdmi = HardwareInfo().has_hdmi() + print "input selection moved:", self.selection + self.inputSelect(self.selection) + if self["portpic"].instance is not None: + picname = self.selection + if picname == 'DVI' and has_hdmi: + picname = "HDMI" + self["portpic"].instance.setPixmapFromFile(resolveFilename(SCOPE_PLUGINS, "SystemPlugins/Videomode/" + picname + ".png")) + + def inputSelect(self, port): + print "inputSelect:", port + modeList = self.hw.getModeList(self.selection) + print "modeList:", modeList + self.port = port + if (len(modeList) > 0): + ratesList = self.listRates(modeList[0][0]) + self.hw.setMode(port = port, mode = modeList[0][0], rate = ratesList[0][0]) + + def listModes(self): + list = [] + print "modes for port", self.port + for mode in self.hw.getModeList(self.port): + #if mode[0] != "PC": + list.append((mode[0], mode[0])) + print "modeslist:", list + return list + + def modeSelectionMade(self, index): + print "modeSelectionMade:", index + self.mode = index + self.modeSelect(index) + + def modeSelectionMoved(self): + print "mode selection moved:", self.selection + self.modeSelect(self.selection) + + def modeSelect(self, mode): + ratesList = self.listRates(mode) + print "ratesList:", ratesList + if self.port == "DVI" and mode in ("720p", "1080i", "1080p"): + self.rate = "multi" + self.hw.setMode(port = self.port, mode = mode, rate = "multi") + else: + self.hw.setMode(port = self.port, mode = mode, rate = ratesList[0][0]) + + def listRates(self, querymode = None): + if querymode is None: + querymode = self.mode + list = [] + print "modes for port", self.port, "and mode", querymode + for mode in self.hw.getModeList(self.port): + print mode + if mode[0] == querymode: + for rate in mode[1]: + if self.port == "DVI-PC": + print "rate:", rate + if rate == "640x480": + list.insert(0, (rate, rate)) + continue + list.append((rate, rate)) + return list + + def rateSelectionMade(self, index): + print "rateSelectionMade:", index + self.rate = index + self.rateSelect(index) + + def rateSelectionMoved(self): + print "rate selection moved:", self.selection + self.rateSelect(self.selection) + + def rateSelect(self, rate): + self.hw.setMode(port = self.port, mode = self.mode, rate = rate) + + def showTestCard(self, selection = None): + if selection is None: + selection = self.selection + print "set config.misc.showtestcard to", {'yes': True, 'no': False}[selection] + if selection == "yes": + config.misc.showtestcard.value = True + else: + config.misc.showtestcard.value = False + + def keyNumberGlobal(self, number): + if number in (1,2,3): + if number == 1: + self.hw.saveMode("DVI", "720p", "multi") + elif number == 2: + self.hw.saveMode("DVI", "1080i", "multi") + elif number == 3: + self.hw.saveMode("Scart", "Multi", "multi") + self.hw.setConfiguredMode() + self.close() + + WizardLanguage.keyNumberGlobal(self, number) diff --git a/lib/python/Plugins/SystemPlugins/Videomode/YPbPr.png b/lib/python/Plugins/SystemPlugins/Videomode/YPbPr.png new file mode 100644 index 0000000..c70cf52 Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/Videomode/YPbPr.png differ diff --git a/lib/python/Plugins/SystemPlugins/Videomode/__init__.py b/lib/python/Plugins/SystemPlugins/Videomode/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lib/python/Plugins/SystemPlugins/Videomode/lcd_DVI.png b/lib/python/Plugins/SystemPlugins/Videomode/lcd_DVI.png new file mode 100644 index 0000000..88222f9 Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/Videomode/lcd_DVI.png differ diff --git a/lib/python/Plugins/SystemPlugins/Videomode/lcd_HDMI.png b/lib/python/Plugins/SystemPlugins/Videomode/lcd_HDMI.png new file mode 100644 index 0000000..c6be2c1 Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/Videomode/lcd_HDMI.png differ diff --git a/lib/python/Plugins/SystemPlugins/Videomode/lcd_Scart.png b/lib/python/Plugins/SystemPlugins/Videomode/lcd_Scart.png new file mode 100644 index 0000000..7a07385 Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/Videomode/lcd_Scart.png differ diff --git a/lib/python/Plugins/SystemPlugins/Videomode/lcd_YPbPr.png b/lib/python/Plugins/SystemPlugins/Videomode/lcd_YPbPr.png new file mode 100644 index 0000000..fff860a Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/Videomode/lcd_YPbPr.png differ diff --git a/lib/python/Plugins/SystemPlugins/Videomode/meta/Makefile.am b/lib/python/Plugins/SystemPlugins/Videomode/meta/Makefile.am new file mode 100644 index 0000000..ddcc18c --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/Videomode/meta/Makefile.am @@ -0,0 +1,5 @@ +installdir = $(datadir)/meta + +dist_install_DATA = plugin_videomode.xml + +EXTRA_DIST = videomode_en.jpg videomode_de.jpg diff --git a/lib/python/Plugins/SystemPlugins/Videomode/meta/plugin_videomode.xml b/lib/python/Plugins/SystemPlugins/Videomode/meta/plugin_videomode.xml new file mode 100644 index 0000000..e16a7dc --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/Videomode/meta/plugin_videomode.xml @@ -0,0 +1,19 @@ + + + + + + + Dream Multimedia + Videomode + enigma2-plugin-systemplugins-videomode + Videomode provides advanced video mode settings + The Videomode plugin provides advanced video mode settings. + + + + + + + + diff --git a/lib/python/Plugins/SystemPlugins/Videomode/meta/videomode_de.jpg b/lib/python/Plugins/SystemPlugins/Videomode/meta/videomode_de.jpg new file mode 100644 index 0000000..00b7ac7 Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/Videomode/meta/videomode_de.jpg differ diff --git a/lib/python/Plugins/SystemPlugins/Videomode/meta/videomode_en.jpg b/lib/python/Plugins/SystemPlugins/Videomode/meta/videomode_en.jpg new file mode 100644 index 0000000..1f4288b Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/Videomode/meta/videomode_en.jpg differ diff --git a/lib/python/Plugins/SystemPlugins/Videomode/plugin.py b/lib/python/Plugins/SystemPlugins/Videomode/plugin.py new file mode 100644 index 0000000..c16a1c1 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/Videomode/plugin.py @@ -0,0 +1,239 @@ +from Screens.Screen import Screen +from Plugins.Plugin import PluginDescriptor +from Components.SystemInfo import SystemInfo +from Components.ConfigList import ConfigListScreen +from Components.config import getConfigListEntry, config, ConfigBoolean, ConfigNothing, ConfigSlider +from Components.Label import Label +from Components.Sources.StaticText import StaticText + +from VideoHardware import video_hw + +config.misc.videowizardenabled = ConfigBoolean(default = True) + +class VideoSetup(Screen, ConfigListScreen): + + def __init__(self, session, hw): + Screen.__init__(self, session) + # for the skin: first try VideoSetup, then Setup, this allows individual skinning + self.skinName = ["VideoSetup", "Setup" ] + self.setup_title = _("A/V settings") + self.hw = hw + self.onChangedEntry = [ ] + + # handle hotplug by re-creating setup + self.onShow.append(self.startHotplug) + self.onHide.append(self.stopHotplug) + + self.list = [ ] + ConfigListScreen.__init__(self, self.list, session = session, on_change = self.changedEntry) + + from Components.ActionMap import ActionMap + self["actions"] = ActionMap(["SetupActions", "MenuActions"], + { + "cancel": self.keyCancel, + "save": self.apply, + "menu": self.closeRecursive, + }, -2) + + self["key_red"] = StaticText(_("Cancel")) + self["key_green"] = StaticText(_("OK")) + self["description"] = Label("") + + self.createSetup() + self.grabLastGoodMode() + self.onLayoutFinish.append(self.layoutFinished) + + def layoutFinished(self): + self.setTitle(self.setup_title) + + def startHotplug(self): + self.hw.on_hotplug.append(self.createSetup) + + def stopHotplug(self): + self.hw.on_hotplug.remove(self.createSetup) + + def createSetup(self): + level = config.usage.setup_level.index + + self.list = [ + getConfigListEntry(_("Video output"), config.av.videoport, _("Configures which video output connector will be used.")) + ] + + # if we have modes for this port: + if config.av.videoport.value in config.av.videomode: + # add mode- and rate-selection: + self.list.append(getConfigListEntry(pgettext("Video output mode", "Mode"), config.av.videomode[config.av.videoport.value], _("Configure the video output mode (or resolution)."))) + if config.av.videomode[config.av.videoport.value].value == 'PC': + self.list.append(getConfigListEntry(_("Resolution"), config.av.videorate[config.av.videomode[config.av.videoport.value].value], _("Configure the screen resolution in PC output mode."))) + else: + self.list.append(getConfigListEntry(_("Refresh rate"), config.av.videorate[config.av.videomode[config.av.videoport.value].value], _("Configure the refresh rate of the screen."))) + + port = config.av.videoport.value + if port not in config.av.videomode: + mode = None + else: + mode = config.av.videomode[port].value + + # some modes (720p, 1080i) are always widescreen. Don't let the user select something here, "auto" is not what he wants. + force_wide = self.hw.isWidescreenMode(port, mode) + + if not force_wide: + self.list.append(getConfigListEntry(_("Aspect ratio"), config.av.aspect, _("Configure the aspect ratio of the screen."))) + + if force_wide or config.av.aspect.value in ("16_9", "16_10"): + self.list.extend(( + getConfigListEntry(_("Display 4:3 content as"), config.av.policy_43, _("When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture.")), + getConfigListEntry(_("Display >16:9 content as"), config.av.policy_169, _("When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture.")) + )) + elif config.av.aspect.value == "4_3": + self.list.append(getConfigListEntry(_("Display 16:9 content as"), config.av.policy_169, _("When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture."))) + +# if config.av.videoport.value == "DVI": +# self.list.append(getConfigListEntry(_("Allow Unsupported Modes"), config.av.edid_override)) + if config.av.videoport.value == "Scart": + self.list.append(getConfigListEntry(_("Color format"), config.av.colorformat, _("Configure which color format should be used on the SCART output."))) + if level >= 1: + self.list.append(getConfigListEntry(_("WSS on 4:3"), config.av.wss, _("When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen."))) + if SystemInfo["ScartSwitch"]: + self.list.append(getConfigListEntry(_("Auto scart switching"), config.av.vcrswitch, _("When enabled, your receiver will detect activity on the VCR SCART input."))) + + if level >= 1: + if SystemInfo["CanDownmixAC3"]: + self.list.append(getConfigListEntry(_("AC3/DTS downmix"), config.av.downmix_ac3, _("Configure whether multi channel sound tracks should be downmixed to stereo."))) + self.list.extend(( + getConfigListEntry(_("General AC3 delay"), config.av.generalAC3delay, _("Configure the general audio delay of Dolby Digital sound tracks.")), + getConfigListEntry(_("General PCM delay"), config.av.generalPCMdelay, _("Configure the general audio delay of stereo sound tracks.")) + )) + + if SystemInfo["CanChangeOsdAlpha"]: + self.list.append(getConfigListEntry(_("OSD transparency"), config.av.osd_alpha, _("Configure the transparency of the OSD."))) + + if not isinstance(config.av.scaler_sharpness, ConfigNothing): + self.list.append(getConfigListEntry(_("Scaler sharpness"), config.av.scaler_sharpness, _("Configure the sharpness of the video scaling."))) + + self["config"].list = self.list + self["config"].l.setList(self.list) + + def keyLeft(self): + ConfigListScreen.keyLeft(self) + self.createSetup() + + def keyRight(self): + ConfigListScreen.keyRight(self) + self.createSetup() + + def confirm(self, confirmed): + if not confirmed: + config.av.videoport.value = self.last_good[0] + config.av.videomode[self.last_good[0]].value = self.last_good[1] + config.av.videorate[self.last_good[1]].value = self.last_good[2] + self.hw.setMode(*self.last_good) + else: + self.keySave() + + def grabLastGoodMode(self): + port = config.av.videoport.value + mode = config.av.videomode[port].value + rate = config.av.videorate[mode].value + self.last_good = (port, mode, rate) + + def apply(self): + port = config.av.videoport.value + mode = config.av.videomode[port].value + rate = config.av.videorate[mode].value + if (port, mode, rate) != self.last_good: + self.hw.setMode(port, mode, rate) + from Screens.MessageBox import MessageBox + self.session.openWithCallback(self.confirm, MessageBox, _("Is this video mode ok?"), MessageBox.TYPE_YESNO, timeout = 20, default = False) + else: + self.keySave() + + # for summary: + def changedEntry(self): + for x in self.onChangedEntry: + x() + + def getCurrentEntry(self): + return self["config"].getCurrent()[0] + + def getCurrentValue(self): + return str(self["config"].getCurrent()[1].getText()) + + def getCurrentDescription(self): + return self["config"].getCurrent() and len(self["config"].getCurrent()) > 2 and self["config"].getCurrent()[2] or "" + + def createSummary(self): + from Screens.Setup import SetupSummary + return SetupSummary + +class VideomodeHotplug: + def __init__(self, hw): + self.hw = hw + + def start(self): + self.hw.on_hotplug.append(self.hotplug) + + def stop(self): + self.hw.on_hotplug.remove(self.hotplug) + + def hotplug(self, what): + print "hotplug detected on port '%s'" % (what) + port = config.av.videoport.value + mode = config.av.videomode[port].value + rate = config.av.videorate[mode].value + + if not self.hw.isModeAvailable(port, mode, rate): + print "mode %s/%s/%s went away!" % (port, mode, rate) + modelist = self.hw.getModeList(port) + if not len(modelist): + print "sorry, no other mode is available (unplug?). Doing nothing." + return + mode = modelist[0][0] + rate = modelist[0][1] + print "setting %s/%s/%s" % (port, mode, rate) + self.hw.setMode(port, mode, rate) + +hotplug = None + +def startHotplug(): + global hotplug, video_hw + hotplug = VideomodeHotplug(video_hw) + hotplug.start() + +def stopHotplug(): + global hotplug + hotplug.stop() + + +def autostart(reason, session = None, **kwargs): + if session is not None: + global my_global_session + my_global_session = session + return + + if reason == 0: + startHotplug() + elif reason == 1: + stopHotplug() + +def videoSetupMain(session, **kwargs): + session.open(VideoSetup, video_hw) + +def startSetup(menuid): + if menuid != "system": + return [ ] + + return [(_("A/V settings"), videoSetupMain, "av_setup", 40)] + +def VideoWizard(*args, **kwargs): + from VideoWizard import VideoWizard + return VideoWizard(*args, **kwargs) + +def Plugins(**kwargs): + list = [ +# PluginDescriptor(where = [PluginDescriptor.WHERE_SESSIONSTART, PluginDescriptor.WHERE_AUTOSTART], fnc = autostart), + PluginDescriptor(name=_("Video setup"), description=_("Advanced video setup"), where = PluginDescriptor.WHERE_MENU, needsRestart = False, fnc=startSetup) + ] + if config.misc.videowizardenabled.value: + list.append(PluginDescriptor(name=_("Video wizard"), where = PluginDescriptor.WHERE_WIZARD, needsRestart = False, fnc=(0, VideoWizard))) + return list diff --git a/lib/python/Plugins/SystemPlugins/Videomode/videowizard.xml b/lib/python/Plugins/SystemPlugins/Videomode/videowizard.xml new file mode 100644 index 0000000..bc2c3f8 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/Videomode/videowizard.xml @@ -0,0 +1,36 @@ + + + + + + +self["portpic"].show() +self.clearSelectedKeys() +self.selectKey("OK") + + + + + + + +self.clearSelectedKeys() +self.selectKey("UP") +self.selectKey("DOWN") +self["portpic"].hide() + + + + +self.condition = (self.port != "DVI" or self.mode == "PC") + + + + + +self.clearSelectedKeys() +self.selectKey("UP") +self.selectKey("DOWN") + + + diff --git a/lib/python/Plugins/SystemPlugins/WirelessLan/Makefile.am b/lib/python/Plugins/SystemPlugins/WirelessLan/Makefile.am new file mode 100644 index 0000000..e929d05 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/WirelessLan/Makefile.am @@ -0,0 +1,8 @@ +installdir = $(pkglibdir)/python/Plugins/SystemPlugins/WirelessLan + +SUBDIRS = meta + +install_PYTHON = \ + __init__.py \ + plugin.py \ + Wlan.py diff --git a/lib/python/Plugins/SystemPlugins/WirelessLan/Wlan.py b/lib/python/Plugins/SystemPlugins/WirelessLan/Wlan.py new file mode 100644 index 0000000..fc91e95 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/WirelessLan/Wlan.py @@ -0,0 +1,370 @@ +from Components.config import config, ConfigYesNo, NoSave, ConfigSubsection, ConfigText, ConfigSelection, ConfigPassword +from Components.Console import Console +from Components.Network import iNetwork + +from os import system, path as os_path +from string import maketrans, strip +import sys +import types +from re import compile as re_compile, search as re_search, escape as re_escape +from pythonwifi.iwlibs import getNICnames, Wireless, Iwfreq, getWNICnames +from pythonwifi import flags as wififlags + +list = [] +list.append("Unencrypted") +list.append("WEP") +list.append("WPA") +list.append("WPA/WPA2") +list.append("WPA2") + +weplist = [] +weplist.append("ASCII") +weplist.append("HEX") + +config.plugins.wlan = ConfigSubsection() +config.plugins.wlan.essid = NoSave(ConfigText(default = "", fixed_size = False)) +config.plugins.wlan.hiddenessid = NoSave(ConfigYesNo(default = False)) +config.plugins.wlan.encryption = NoSave(ConfigSelection(list, default = "WPA2")) +config.plugins.wlan.wepkeytype = NoSave(ConfigSelection(weplist, default = "ASCII")) +config.plugins.wlan.psk = NoSave(ConfigPassword(default = "", fixed_size = False)) + + +def getWlanConfigName(iface): + return '/etc/wpa_supplicant.' + iface + '.conf' + +class Wlan: + def __init__(self, iface = None): + self.iface = iface + self.oldInterfaceState = None + + a = ''; b = '' + for i in range(0, 255): + a = a + chr(i) + if i < 32 or i > 127: + b = b + ' ' + else: + b = b + chr(i) + + self.asciitrans = maketrans(a, b) + + def asciify(self, str): + return str.translate(self.asciitrans) + + def getWirelessInterfaces(self): + return getWNICnames() + + def setInterface(self, iface = None): + self.iface = iface + + def getInterface(self): + return self.iface + + def getNetworkList(self): + if self.oldInterfaceState is None: + self.oldInterfaceState = iNetwork.getAdapterAttribute(self.iface, "up") + if self.oldInterfaceState is False: + if iNetwork.getAdapterAttribute(self.iface, "up") is False: + iNetwork.setAdapterAttribute(self.iface, "up", True) + system("ifconfig "+self.iface+" up") + + ifobj = Wireless(self.iface) # a Wireless NIC Object + + try: + scanresults = ifobj.scan() + except: + scanresults = None + print "[Wlan.py] No wireless networks could be found" + aps = {} + if scanresults is not None: + (num_channels, frequencies) = ifobj.getChannelInfo() + index = 1 + for result in scanresults: + bssid = result.bssid + + if result.encode.flags & wififlags.IW_ENCODE_DISABLED > 0: + encryption = False + elif result.encode.flags & wififlags.IW_ENCODE_NOKEY > 0: + encryption = True + else: + encryption = None + + signal = str(result.quality.siglevel-0x100) + " dBm" + quality = "%s/%s" % (result.quality.quality,ifobj.getQualityMax().quality) + + extra = [] + for element in result.custom: + element = element.encode() + extra.append( strip(self.asciify(element)) ) + for element in extra: + if 'SignalStrength' in element: + signal = element[element.index('SignalStrength')+15:element.index(',L')] + if 'LinkQuality' in element: + quality = element[element.index('LinkQuality')+12:len(element)] + + aps[bssid] = { + 'active' : True, + 'bssid': result.bssid, + 'channel': frequencies.index(ifobj._formatFrequency(result.frequency.getFrequency())) + 1, + 'encrypted': encryption, + 'essid': strip(self.asciify(result.essid)), + 'iface': self.iface, + 'maxrate' : ifobj._formatBitrate(result.rate[-1][-1]), + 'noise' : '',#result.quality.nlevel-0x100, + 'quality' : str(quality), + 'signal' : str(signal), + 'custom' : extra, + } + + index = index + 1 + return aps + + def stopGetNetworkList(self): + if self.oldInterfaceState is not None: + if self.oldInterfaceState is False: + iNetwork.setAdapterAttribute(self.iface, "up", False) + system("ifconfig "+self.iface+" down") + self.oldInterfaceState = None + self.iface = None + +iWlan = Wlan() + +class wpaSupplicant: + def __init__(self): + pass + + def writeConfig(self, iface): + essid = config.plugins.wlan.essid.value + hiddenessid = config.plugins.wlan.hiddenessid.value + encryption = config.plugins.wlan.encryption.value + wepkeytype = config.plugins.wlan.wepkeytype.value + psk = config.plugins.wlan.psk.value + fp = file(getWlanConfigName(iface), 'w') + fp.write('#WPA Supplicant Configuration by enigma2\n') + fp.write('ctrl_interface=/var/run/wpa_supplicant\n') + fp.write('eapol_version=1\n') + fp.write('fast_reauth=1\n') + fp.write('ap_scan=1\n') + fp.write('network={\n') + fp.write('\tssid="'+essid+'"\n') + if hiddenessid: + fp.write('\tscan_ssid=1\n') + else: + fp.write('\tscan_ssid=0\n') + if encryption in ('WPA', 'WPA2', 'WPA/WPA2'): + fp.write('\tkey_mgmt=WPA-PSK\n') + if encryption == 'WPA': + fp.write('\tproto=WPA\n') + fp.write('\tpairwise=TKIP\n') + fp.write('\tgroup=TKIP\n') + elif encryption == 'WPA2': + fp.write('\tproto=RSN\n') + fp.write('\tpairwise=CCMP\n') + fp.write('\tgroup=CCMP\n') + else: + fp.write('\tproto=WPA RSN\n') + fp.write('\tpairwise=CCMP TKIP\n') + fp.write('\tgroup=CCMP TKIP\n') + fp.write('\tpsk="'+psk+'"\n') + elif encryption == 'WEP': + fp.write('\tkey_mgmt=NONE\n') + if wepkeytype == 'ASCII': + fp.write('\twep_key0="'+psk+'"\n') + else: + fp.write('\twep_key0='+psk+'\n') + else: + fp.write('\tkey_mgmt=NONE\n') + fp.write('}') + fp.write('\n') + fp.close() + #system('cat ' + getWlanConfigName(iface)) + + def loadConfig(self,iface): + configfile = getWlanConfigName(iface) + if not os_path.exists(configfile): + configfile = '/etc/wpa_supplicant.conf' + try: + #parse the wpasupplicant configfile + print "[Wlan.py] parsing configfile: ",configfile + fp = file(configfile, 'r') + supplicant = fp.readlines() + fp.close() + essid = None + encryption = "Unencrypted" + + for s in supplicant: + split = s.strip().split('=',1) + if split[0] == 'scan_ssid': + if split[1] == '1': + config.plugins.wlan.hiddenessid.value = True + else: + config.plugins.wlan.hiddenessid.value = False + + elif split[0] == 'ssid': + essid = split[1][1:-1] + config.plugins.wlan.essid.value = essid + + elif split[0] == 'proto': + if split[1] == 'WPA' : + mode = 'WPA' + if split[1] == 'RSN': + mode = 'WPA2' + if split[1] in ('WPA RSN', 'WPA WPA2'): + mode = 'WPA/WPA2' + encryption = mode + + elif split[0] == 'wep_key0': + encryption = 'WEP' + if split[1].startswith('"') and split[1].endswith('"'): + config.plugins.wlan.wepkeytype.value = 'ASCII' + config.plugins.wlan.psk.value = split[1][1:-1] + else: + config.plugins.wlan.wepkeytype.value = 'HEX' + config.plugins.wlan.psk.value = split[1] + + elif split[0] == 'psk': + config.plugins.wlan.psk.value = split[1][1:-1] + else: + pass + + config.plugins.wlan.encryption.value = encryption + + wsconfig = { + 'hiddenessid': config.plugins.wlan.hiddenessid.value, + 'ssid': config.plugins.wlan.essid.value, + 'encryption': config.plugins.wlan.encryption.value, + 'wepkeytype': config.plugins.wlan.wepkeytype.value, + 'key': config.plugins.wlan.psk.value, + } + + for (key, item) in wsconfig.items(): + if item is "None" or item is "": + if key == 'hiddenessid': + wsconfig['hiddenessid'] = False + if key == 'ssid': + wsconfig['ssid'] = "" + if key == 'encryption': + wsconfig['encryption'] = "WPA2" + if key == 'wepkeytype': + wsconfig['wepkeytype'] = "ASCII" + if key == 'key': + wsconfig['key'] = "" + except: + print "[Wlan.py] Error parsing ",configfile + wsconfig = { + 'hiddenessid': False, + 'ssid': "", + 'encryption': "WPA2", + 'wepkeytype': "ASCII", + 'key': "", + } + #print "[Wlan.py] WS-CONFIG-->",wsconfig + return wsconfig + + +class Status: + def __init__(self): + self.wlaniface = {} + self.backupwlaniface = {} + self.statusCallback = None + self.WlanConsole = Console() + + def stopWlanConsole(self): + if self.WlanConsole is not None: + print "[iStatus] killing self.WlanConsole" + self.WlanConsole.killAll() + self.WlanConsole = None + + def getDataForInterface(self, iface, callback = None): + self.WlanConsole = Console() + cmd = "iwconfig " + iface + if callback is not None: + self.statusCallback = callback + self.WlanConsole.ePopen(cmd, self.iwconfigFinished, iface) + + def iwconfigFinished(self, result, retval, extra_args): + iface = extra_args + data = { 'essid': False, 'frequency': False, 'accesspoint': False, 'bitrate': False, 'encryption': False, 'quality': False, 'signal': False } + for line in result.splitlines(): + line = line.strip() + if "ESSID" in line: + if "off/any" in line: + ssid = "off" + else: + if "Nickname" in line: + ssid=(line[line.index('ESSID')+7:line.index('" Nickname')]) + else: + ssid=(line[line.index('ESSID')+7:len(line)-1]) + if ssid is not None: + data['essid'] = ssid + if "Frequency" in line: + frequency = line[line.index('Frequency')+10 :line.index(' GHz')] + if frequency is not None: + data['frequency'] = frequency + if "Access Point" in line: + if "Sensitivity" in line: + ap=line[line.index('Access Point')+14:line.index(' Sensitivity')] + else: + ap=line[line.index('Access Point')+14:len(line)] + if ap is not None: + data['accesspoint'] = ap + if "Bit Rate" in line: + if "kb" in line: + br = line[line.index('Bit Rate')+9 :line.index(' kb/s')] + else: + br = line[line.index('Bit Rate')+9 :line.index(' Mb/s')] + if br is not None: + data['bitrate'] = br + if "Encryption key" in line: + if ":off" in line: + enc = "off" + elif "Security" in line: + enc = line[line.index('Encryption key')+15 :line.index(' Security')] + if enc is not None: + enc = "on" + else: + enc = line[line.index('Encryption key')+15 :len(line)] + if enc is not None: + enc = "on" + if enc is not None: + data['encryption'] = enc + if 'Quality' in line: + if "/100" in line: + qual = line[line.index('Quality')+8:line.index(' Signal')] + else: + qual = line[line.index('Quality')+8:line.index('Sig')] + if qual is not None: + data['quality'] = qual + if 'Signal level' in line: + if "dBm" in line: + signal = line[line.index('Signal level')+13 :line.index(' dBm')] + " dBm" + elif "/100" in line: + if "Noise" in line: + signal = line[line.index('Signal level')+13:line.index(' Noise')] + else: + signal = line[line.index('Signal level')+13:len(line)] + else: + if "Noise" in line: + signal = line[line.index('Signal level')+13:line.index(' Noise')] + else: + signal = line[line.index('Signal level')+13:len(line)] + if signal is not None: + data['signal'] = signal + + self.wlaniface[iface] = data + self.backupwlaniface = self.wlaniface + + if self.WlanConsole is not None: + if len(self.WlanConsole.appContainers) == 0: + print "[Wlan.py] self.wlaniface after loading:", self.wlaniface + if self.statusCallback is not None: + self.statusCallback(True,self.wlaniface) + self.statusCallback = None + + def getAdapterAttribute(self, iface, attribute): + self.iface = iface + if self.wlaniface.has_key(self.iface): + if self.wlaniface[self.iface].has_key(attribute): + return self.wlaniface[self.iface][attribute] + return None + +iStatus = Status() diff --git a/lib/python/Plugins/SystemPlugins/WirelessLan/__init__.py b/lib/python/Plugins/SystemPlugins/WirelessLan/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lib/python/Plugins/SystemPlugins/WirelessLan/meta/Makefile.am b/lib/python/Plugins/SystemPlugins/WirelessLan/meta/Makefile.am new file mode 100644 index 0000000..692d91a --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/WirelessLan/meta/Makefile.am @@ -0,0 +1,5 @@ +installdir = $(datadir)/meta + +dist_install_DATA = plugin_wirelesslan.xml + +EXTRA_DIST = wirelesslan_de.jpg wirelesslan_en.jpg diff --git a/lib/python/Plugins/SystemPlugins/WirelessLan/meta/plugin_wirelesslan.xml b/lib/python/Plugins/SystemPlugins/WirelessLan/meta/plugin_wirelesslan.xml new file mode 100644 index 0000000..6d43263 --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/WirelessLan/meta/plugin_wirelesslan.xml @@ -0,0 +1,19 @@ + + + + + + + Dream Multimedia + WirelessLan + enigma2-plugin-systemplugins-wirelesslan + Configure your WLAN network interface + The wireless lan plugin helps you configuring your WLAN network interface. + + + + + + + + diff --git a/lib/python/Plugins/SystemPlugins/WirelessLan/meta/wirelesslan_de.jpg b/lib/python/Plugins/SystemPlugins/WirelessLan/meta/wirelesslan_de.jpg new file mode 100644 index 0000000..3869541 Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/WirelessLan/meta/wirelesslan_de.jpg differ diff --git a/lib/python/Plugins/SystemPlugins/WirelessLan/meta/wirelesslan_en.jpg b/lib/python/Plugins/SystemPlugins/WirelessLan/meta/wirelesslan_en.jpg new file mode 100644 index 0000000..fe4fa97 Binary files /dev/null and b/lib/python/Plugins/SystemPlugins/WirelessLan/meta/wirelesslan_en.jpg differ diff --git a/lib/python/Plugins/SystemPlugins/WirelessLan/plugin.py b/lib/python/Plugins/SystemPlugins/WirelessLan/plugin.py new file mode 100644 index 0000000..e0d3b4a --- /dev/null +++ b/lib/python/Plugins/SystemPlugins/WirelessLan/plugin.py @@ -0,0 +1,403 @@ +from enigma import eTimer, eEnv +from Screens.Screen import Screen +from Components.ActionMap import ActionMap, NumberActionMap +from Components.Pixmap import Pixmap,MultiPixmap +from Components.Label import Label +from Components.Sources.StaticText import StaticText +from Components.Sources.List import List +from Components.MenuList import MenuList +from Components.config import config, getConfigListEntry, ConfigYesNo, NoSave, ConfigSubsection, ConfigText, ConfigSelection, ConfigPassword +from Components.ConfigList import ConfigListScreen +from Components.Network import iNetwork +from Components.Console import Console +from Plugins.Plugin import PluginDescriptor +from os import system, path as os_path, listdir +from Tools.Directories import resolveFilename, SCOPE_PLUGINS, SCOPE_SKIN_IMAGE +from Tools.LoadPixmap import LoadPixmap +from Wlan import iWlan, wpaSupplicant, iStatus, getWlanConfigName +from time import time +from os import system +from re import escape as re_escape + +plugin_path = eEnv.resolve("${libdir}/enigma2/python/Plugins/SystemPlugins/WirelessLan") + + +list = [] +list.append("Unencrypted") +list.append("WEP") +list.append("WPA") +list.append("WPA/WPA2") +list.append("WPA2") + +weplist = [] +weplist.append("ASCII") +weplist.append("HEX") + +config.plugins.wlan = ConfigSubsection() +config.plugins.wlan.essid = NoSave(ConfigText(default = "", fixed_size = False)) +config.plugins.wlan.hiddenessid = NoSave(ConfigYesNo(default = False)) +config.plugins.wlan.encryption = NoSave(ConfigSelection(list, default = "WPA2")) +config.plugins.wlan.wepkeytype = NoSave(ConfigSelection(weplist, default = "ASCII")) +config.plugins.wlan.psk = NoSave(ConfigPassword(default = "", fixed_size = False)) + + + +class WlanStatus(Screen): + skin = """ + + + + + + + + + + + + + + + + + + + + + + + """ + + def __init__(self, session, iface): + Screen.__init__(self, session) + self.session = session + self.iface = iface + + self["LabelBSSID"] = StaticText(_('Accesspoint:')) + self["LabelESSID"] = StaticText(_('SSID:')) + self["LabelQuality"] = StaticText(_('Link quality:')) + self["LabelSignal"] = StaticText(_('Signal strength:')) + self["LabelBitrate"] = StaticText(_('Bitrate:')) + self["LabelEnc"] = StaticText(_('Encryption:')) + + self["BSSID"] = StaticText() + self["ESSID"] = StaticText() + self["quality"] = StaticText() + self["signal"] = StaticText() + self["bitrate"] = StaticText() + self["enc"] = StaticText() + + self["IFtext"] = StaticText() + self["IF"] = StaticText() + self["Statustext"] = StaticText() + self["statuspic"] = MultiPixmap() + self["statuspic"].hide() + self["key_red"] = StaticText(_("Close")) + + self.resetList() + self.updateStatusbar() + + self["actions"] = NumberActionMap(["WizardActions", "InputActions", "EPGSelectActions", "ShortcutActions"], + { + "ok": self.exit, + "back": self.exit, + "red": self.exit, + }, -1) + self.timer = eTimer() + self.timer.timeout.get().append(self.resetList) + self.onShown.append(lambda: self.timer.start(8000)) + self.onLayoutFinish.append(self.layoutFinished) + self.onClose.append(self.cleanup) + + def cleanup(self): + iStatus.stopWlanConsole() + + def layoutFinished(self): + self.setTitle(_("Wireless network state")) + + def resetList(self): + iStatus.getDataForInterface(self.iface,self.getInfoCB) + + def getInfoCB(self,data,status): + if data is not None: + if data is True: + if status is not None: + if status[self.iface]["essid"] == "off": + essid = _("No Connection") + else: + essid = status[self.iface]["essid"] + if status[self.iface]["accesspoint"] == "Not-Associated": + accesspoint = _("Not associated") + essid = _("No Connection") + else: + accesspoint = status[self.iface]["accesspoint"] + if self.has_key("BSSID"): + self["BSSID"].setText(accesspoint) + if self.has_key("ESSID"): + self["ESSID"].setText(essid) + + quality = status[self.iface]["quality"] + if self.has_key("quality"): + self["quality"].setText(quality) + + if status[self.iface]["bitrate"] == '0': + bitrate = _("Unsupported") + else: + bitrate = str(status[self.iface]["bitrate"]) + " Mb/s" + if self.has_key("bitrate"): + self["bitrate"].setText(bitrate) + + signal = status[self.iface]["signal"] + if self.has_key("signal"): + self["signal"].setText(signal) + + if status[self.iface]["encryption"] == "off": + if accesspoint == "Not-Associated": + encryption = _("Disabled") + else: + encryption = _("Unsupported") + else: + encryption = _("Enabled") + if self.has_key("enc"): + self["enc"].setText(encryption) + self.updateStatusLink(status) + + def exit(self): + self.timer.stop() + self.close(True) + + def updateStatusbar(self): + wait_txt = _("Please wait...") + self["BSSID"].setText(wait_txt) + self["ESSID"].setText(wait_txt) + self["quality"].setText(wait_txt) + self["signal"].setText(wait_txt) + self["bitrate"].setText(wait_txt) + self["enc"].setText(wait_txt) + self["IFtext"].setText(_("Network:")) + self["IF"].setText(iNetwork.getFriendlyAdapterName(self.iface)) + self["Statustext"].setText(_("Link:")) + + def updateStatusLink(self,status): + if status is not None: + if status[self.iface]["essid"] == "off" or status[self.iface]["accesspoint"] == "Not-Associated" or status[self.iface]["accesspoint"] == False: + self["statuspic"].setPixmapNum(1) + else: + self["statuspic"].setPixmapNum(0) + self["statuspic"].show() + + +class WlanScan(Screen): + skin = """ + + + + + + + + + + {"template": [ + MultiContentEntryText(pos = (0, 0), size = (550, 30), font=0, flags = RT_HALIGN_LEFT, text = 0), # index 0 is the essid + MultiContentEntryText(pos = (0, 30), size = (175, 20), font=1, flags = RT_HALIGN_LEFT, text = 5), # index 5 is the interface + MultiContentEntryText(pos = (175, 30), size = (175, 20), font=1, flags = RT_HALIGN_LEFT, text = 4), # index 0 is the encryption + MultiContentEntryText(pos = (350, 0), size = (200, 20), font=1, flags = RT_HALIGN_LEFT, text = 2), # index 0 is the signal + MultiContentEntryText(pos = (350, 30), size = (200, 20), font=1, flags = RT_HALIGN_LEFT, text = 3), # index 0 is the maxrate + MultiContentEntryPixmapAlphaTest(pos = (0, 52), size = (550, 2), png = 6), # index 6 is the div pixmap + ], + "fonts": [gFont("Regular", 28),gFont("Regular", 18)], + "itemHeight": 54 + } + + + + + """ + + def __init__(self, session, iface): + Screen.__init__(self, session) + self.session = session + self.iface = iface + self.skin_path = plugin_path + self.oldInterfaceState = iNetwork.getAdapterAttribute(self.iface, "up") + self.APList = None + self.newAPList = None + self.WlanList = None + self.cleanList = None + self.oldlist = {} + self.listLength = None + self.divpng = LoadPixmap(path=resolveFilename(SCOPE_SKIN_IMAGE, "skin_default/div-h.png")) + + self.rescanTimer = eTimer() + self.rescanTimer.callback.append(self.rescanTimerFired) + + self["info"] = StaticText() + + self.list = [] + self["list"] = List(self.list) + + self["key_red"] = StaticText(_("Close")) + self["key_green"] = StaticText(_("Connect")) + self["key_yellow"] = StaticText() + + self["actions"] = NumberActionMap(["WizardActions", "InputActions", "EPGSelectActions"], + { + "ok": self.select, + "back": self.cancel, + }, -1) + + self["shortcuts"] = ActionMap(["ShortcutActions"], + { + "red": self.cancel, + "green": self.select, + }) + iWlan.setInterface(self.iface) + self.w = iWlan.getInterface() + self.onLayoutFinish.append(self.layoutFinished) + self.getAccessPoints(refresh = False) + + def layoutFinished(self): + self.setTitle(_("Select a wireless network")) + + def select(self): + cur = self["list"].getCurrent() + if cur is not None: + iWlan.stopGetNetworkList() + self.rescanTimer.stop() + del self.rescanTimer + if cur[0] is not None: + self.close(cur[0]) + else: + self.close(None) + else: + iWlan.stopGetNetworkList() + self.rescanTimer.stop() + del self.rescanTimer + self.close(None) + + def cancel(self): + iWlan.stopGetNetworkList() + self.rescanTimer.stop() + del self.rescanTimer + self.close(None) + + def rescanTimerFired(self): + self.rescanTimer.stop() + self.updateAPList() + + def buildEntryComponent(self, essid, bssid, encrypted, iface, maxrate, signal): + encryption = encrypted and _("Yes") or _("No") + return((essid, bssid, _("Signal: ") + str(signal), _("Max. bitrate: ") + str(maxrate), _("Encrypted: ") + encryption, _("Interface: ") + str(iface), self.divpng)) + + def updateAPList(self): + newList = [] + newList = self.getAccessPoints(refresh = True) + self.newAPList = [] + tmpList = [] + newListIndex = None + currentListEntry = None + currentListIndex = None + + for ap in self.oldlist.keys(): + data = self.oldlist[ap]['data'] + if data is not None: + tmpList.append(data) + + if len(tmpList): + for entry in tmpList: + self.newAPList.append(self.buildEntryComponent( entry[0], entry[1], entry[2], entry[3], entry[4], entry[5] )) + + currentListEntry = self["list"].getCurrent() + if currentListEntry is not None: + idx = 0 + for entry in self.newAPList: + if entry[0] == currentListEntry[0]: + newListIndex = idx + idx +=1 + self['list'].setList(self.newAPList) + if newListIndex is not None: + self["list"].setIndex(newListIndex) + self["list"].updateList(self.newAPList) + self.listLength = len(self.newAPList) + self.buildWlanList() + self.setInfo() + + def getAccessPoints(self, refresh = False): + self.APList = [] + self.cleanList = [] + aps = iWlan.getNetworkList() + if aps is not None: + print "[WirelessLan.py] got Accespoints!" + tmpList = [] + compList = [] + for ap in aps: + a = aps[ap] + if a['active']: + tmpList.append( (a['essid'], a['bssid']) ) + compList.append( (a['essid'], a['bssid'], a['encrypted'], a['iface'], a['maxrate'], a['signal']) ) + + for entry in tmpList: + if entry[0] == "": + for compentry in compList: + if compentry[1] == entry[1]: + compList.remove(compentry) + for entry in compList: + self.cleanList.append( ( entry[0], entry[1], entry[2], entry[3], entry[4], entry[5] ) ) + if not self.oldlist.has_key(entry[0]): + self.oldlist[entry[0]] = { 'data': entry } + else: + self.oldlist[entry[0]]['data'] = entry + + for entry in self.cleanList: + self.APList.append(self.buildEntryComponent( entry[0], entry[1], entry[2], entry[3], entry[4], entry[5] )) + + if refresh is False: + self['list'].setList(self.APList) + self.listLength = len(self.APList) + self.setInfo() + self.rescanTimer.start(5000) + return self.cleanList + + def setInfo(self): + length = self.getLength() + if length == 0: + self["info"].setText(_("No wireless networks found! Searching...")) + else: + self["info"].setText(ngettext("%d wireless network found!", "%d wireless networks found!", length) % length) + + def buildWlanList(self): + self.WlanList = [] + for entry in self['list'].list: + self.WlanList.append( (entry[0], entry[0]) ) + + def getLength(self): + return self.listLength + + def getWlanList(self): + if self.WlanList is None: + self.buildWlanList() + return self.WlanList + + +def WlanStatusScreenMain(session, iface): + session.open(WlanStatus, iface) + +def callFunction(iface): + iWlan.setInterface(iface) + i = iWlan.getWirelessInterfaces() + if iface in i or iNetwork.isWirelessInterface(iface): + return WlanStatusScreenMain + return None + +def configStrings(iface): + driver = iNetwork.detectWlanModule(iface) + ret = "" + if driver == 'madwifi' and config.plugins.wlan.hiddenessid.value: + ret += "\tpre-up iwconfig " + iface + " essid \"" + re_escape(config.plugins.wlan.essid.value) + "\" || true\n" + ret += "\tpre-up wpa_supplicant -i" + iface + " -c" + getWlanConfigName(iface) + " -B -dd -D" + driver + " || true\n" + ret += "\tpre-down wpa_cli -i" + iface + " terminate || true\n" + return ret + +def Plugins(**kwargs): + return PluginDescriptor(name=_("Wireless LAN"), description=_("Connect to a wireless network"), where = PluginDescriptor.WHERE_NETWORKSETUP, needsRestart = False, fnc={"ifaceSupported": callFunction, "configStrings": configStrings, "WlanPluginEntry": lambda x: _("Wireless network configuration...")}) diff --git a/lib/python/Plugins/SystemPlugins/__init__.py b/lib/python/Plugins/SystemPlugins/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lib/python/Plugins/__init__.py b/lib/python/Plugins/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lib/python/Plugins/newplugin.py b/lib/python/Plugins/newplugin.py new file mode 100644 index 0000000..4a7d978 --- /dev/null +++ b/lib/python/Plugins/newplugin.py @@ -0,0 +1,146 @@ +#!/usr/bin/python + +import os + +os.system("clear") +internalname = raw_input("Internal plugin name (no whitespaces, plugin directory): ") +name = raw_input("Visible plugin name: ") +print + +os.system("clear") +dirlist = [] +count = 0 +print "Plugin categories:" +for dir in os.listdir("."): + if os.path.isdir(dir): + count += 1 + dirlist.append(dir) + print count, dir + +category = raw_input("Select plugin category: ") +category = dirlist[int(category) - 1] + +def add_where_extensionsmenu(name, fnc): + description = raw_input("Plugin description: ") + return 'PluginDescriptor(name = "%s", description = _("%s"), where = PluginDescriptor.WHERE_EXTENSIONSMENU, fnc = %s)' % (name, description, fnc) + +def add_where_pluginmenu(name, fnc): + description = raw_input("Plugin description: ") + icon = raw_input("Icon (default: 'plugin.png': ") + if icon == "": + icon = "plugin.png" + return 'PluginDescriptor(name = "%s", description = _("%s"), icon = "%s", where = PluginDescriptor.WHERE_PLUGINMENU, fnc = %s)' % (name, description, icon, fnc) + +wherelist = [] +wherelist.append(("WHERE_EXTENSIONSMENU", add_where_extensionsmenu)) +wherelist.append(("WHERE_PLUGINMENU", add_where_pluginmenu)) + +targetlist = [] + +stop = False + +while not stop: + os.system("clear") + print "selected targets:" + for where in targetlist: + print where[0] + + print + print "available targets:" + count = 0 + for where in wherelist: + count += 1 + print count, where[0] + print "x break" + + target = raw_input("Select WHERE-target: ") + if target == "x": + stop = True + else: + if wherelist[int(target) - 1] not in targetlist: + targetlist.append(wherelist[int(target) - 1]) + else: + targetlist.remove(wherelist[int(target) - 1]) + + +pluginpath = category + "/" + internalname +os.mkdir(pluginpath) + +makefile = open(category + "/Makefile.am", "r") +lines = makefile.readlines() +lines = ''.join(lines) +lines = lines.strip() +lines += " " + internalname +makefile.close() + +makefile = open(category + "/Makefile.am", "w") +makefile.write(lines) +makefile.close() + +lines = [] +print "open" +configure = open("../../../configure.ac", "r") +while True: + line = configure.readline() + if not line: + break + lines.append(line) + if line.strip() == "lib/python/Plugins/" + category + "/Makefile": + lines.append("lib/python/Plugins/" + pluginpath + "/Makefile\n") +configure.close() +print "close" + +configure = open("../../../configure.ac", "w") +configure.writelines(lines) +configure.close() + +file = open(pluginpath + "/plugin.py", "w") + +importlist = [] +for where in targetlist: + importlist.append(where[0]) + +file.write("""from Screens.Screen import Screen +from Plugins.Plugin import PluginDescriptor +""") + +mainlist = [] +for count in range(len(targetlist)): + if count == 0: + mainlist.append("main") + else: + mainlist.append("main" + str(count)) + +for main in mainlist: + file.write(""" +def %s(session, **kwargs): + pass +""" % main) + +descriptorlist = [] +for count in range(len(targetlist)): + os.system("clear") + where = targetlist[count] + print "Options for target %s" % where[0] + descriptorlist.append(where[1](name, mainlist[count])) + +if len(descriptorlist) == 1: + descriptorlist = descriptorlist[0] +else: + descriptorlist = "[" + ', '.join(descriptorlist) + "]" + +file.write(""" +def Plugins(**kwargs): + return %s + """ % descriptorlist) + +file.close() + +makefile = open(pluginpath + "/Makefile.am", "w") +makefile.write("""installdir = $(pkglibdir)/python/Plugins/%s/%s + +install_PYTHON = \\ + __init__.py \\ + plugin.py +""" % (category, internalname)) +makefile.close() diff --git a/lib/python/Screens/About.py b/lib/python/Screens/About.py new file mode 100644 index 0000000..caca9d8 --- /dev/null +++ b/lib/python/Screens/About.py @@ -0,0 +1,192 @@ +from Screen import Screen +from Components.ActionMap import ActionMap +from Components.Sources.StaticText import StaticText +from Components.Harddisk import harddiskmanager +from Components.NimManager import nimmanager +from Components.About import about +from Components.ScrollLabel import ScrollLabel +from Components.Button import Button + +from Tools.StbHardware import getFPVersion +from enigma import eTimer + +class About(Screen): + def __init__(self, session): + Screen.__init__(self, session) + + + AboutText = _("Hardware: ") + about.getHardwareTypeString() + "\n" + AboutText += _("Image: ") + about.getImageTypeString() + "\n" + AboutText += _("Kernel version: ") + about.getKernelVersionString() + "\n" + + EnigmaVersion = "Enigma: " + about.getEnigmaVersionString() + self["EnigmaVersion"] = StaticText(EnigmaVersion) + AboutText += EnigmaVersion + "\n" + + ImageVersion = _("Last upgrade: ") + about.getImageVersionString() + self["ImageVersion"] = StaticText(ImageVersion) + AboutText += ImageVersion + "\n" + + fp_version = getFPVersion() + if fp_version is None: + fp_version = "" + else: + fp_version = _("Frontprocessor version: %d") % fp_version + AboutText += fp_version + "\n" + + self["FPVersion"] = StaticText(fp_version) + + self["TunerHeader"] = StaticText(_("Detected NIMs:")) + AboutText += "\n" + _("Detected NIMs:") + "\n" + + nims = nimmanager.nimList() + for count in range(len(nims)): + if count < 4: + self["Tuner" + str(count)] = StaticText(nims[count]) + else: + self["Tuner" + str(count)] = StaticText("") + AboutText += nims[count] + "\n" + + self["HDDHeader"] = StaticText(_("Detected HDD:")) + AboutText += "\n" + _("Detected HDD:") + "\n" + + hddlist = harddiskmanager.HDDList() + hddinfo = "" + if hddlist: + for count in range(len(hddlist)): + if hddinfo: + hddinfo += "\n" + hdd = hddlist[count][1] + if int(hdd.free()) > 1024: + hddinfo += "%s\n(%s, %d GB %s)" % (hdd.model(), hdd.capacity(), hdd.free()/1024, _("free")) + else: + hddinfo += "%s\n(%s, %d MB %s)" % (hdd.model(), hdd.capacity(), hdd.free(), _("free")) + else: + hddinfo = _("none") + self["hddA"] = StaticText(hddinfo) + AboutText += hddinfo + self["AboutScrollLabel"] = ScrollLabel(AboutText) + self["key_green"] = Button(_("Translations")) + self["key_red"] = Button(_("Latest Commits")) + + self["actions"] = ActionMap(["ColorActions", "SetupActions", "DirectionActions"], + { + "cancel": self.close, + "ok": self.close, + "red": self.showCommits, + "green": self.showTranslationInfo, + "up": self["AboutScrollLabel"].pageUp, + "down": self["AboutScrollLabel"].pageDown + }) + + def showTranslationInfo(self): + self.session.open(TranslationInfo) + + def showCommits(self): + self.session.open(CommitInfo) + +class TranslationInfo(Screen): + def __init__(self, session): + Screen.__init__(self, session) + # don't remove the string out of the _(), or it can't be "translated" anymore. + + # TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) + info = _("TRANSLATOR_INFO") + + if info == "TRANSLATOR_INFO": + info = "(N/A)" + + infolines = _("").split("\n") + infomap = {} + for x in infolines: + l = x.split(': ') + if len(l) != 2: + continue + (type, value) = l + infomap[type] = value + print infomap + + self["TranslationInfo"] = StaticText(info) + + translator_name = infomap.get("Language-Team", "none") + if translator_name == "none": + translator_name = infomap.get("Last-Translator", "") + + self["TranslatorName"] = StaticText(translator_name) + + self["actions"] = ActionMap(["SetupActions"], + { + "cancel": self.close, + "ok": self.close, + }) + +class CommitInfo(Screen): + def __init__(self, session): + Screen.__init__(self, session) + self.skinName = ["CommitInfo", "About"] + self["AboutScrollLabel"] = ScrollLabel(_("Please wait")) + + self["actions"] = ActionMap(["SetupActions", "DirectionActions"], + { + "cancel": self.close, + "ok": self.close, + "up": self["AboutScrollLabel"].pageUp, + "down": self["AboutScrollLabel"].pageDown, + "left": self.left, + "right": self.right + }) + + self.project = 0 + self.projects = [ + ("enigma2", "Enigma2"), + ("openpli-oe-core", "Openpli Oe Core"), + ("enigma2-plugins", "Enigma2 Plugins"), + ("aio-grab", "Aio Grab"), + ("gst-plugin-dvbmediasink", "Gst Plugin Dvbmediasink"), + ("openembedded", "Openembedded"), + ("plugin-xmltvimport", "Plugin Xmltvimport"), + ("plugins-enigma2", "Plugins Enigma2"), + ("skin-magic", "Skin Magic"), + ("tuxtxt", "Tuxtxt") + ] + self.cachedProjects = {} + self.Timer = eTimer() + self.Timer.callback.append(self.readCommitLogs) + self.Timer.start(50, True) + + def readCommitLogs(self): + url = 'http://sourceforge.net/p/openpli/%s/feed' % self.projects[self.project][0] + commitlog = "" + from urllib2 import urlopen + try: + commitlog += 80 * '-' + '\n' + commitlog += url.split('/')[-2] + '\n' + commitlog += 80 * '-' + '\n' + for x in urlopen(url, timeout=5).read().split('')[2:]: + for y in x.split("><"): + if '</title' in y: + title = y[:-7] + if '</dc:creator' in y: + creator = y.split('>')[1].split('<')[0] + if '</pubDate' in y: + date = y.split('>')[1].split('<')[0][:-6] + commitlog += date + ' ' + creator + '\n' + title + 2 * '\n' + self.cachedProjects[self.projects[self.project][1]] = commitlog + except: + commitlog = _("Currently the commit log cannot be retrieved - please try later again") + self["AboutScrollLabel"].setText(commitlog) + + def updateCommitLogs(self): + if self.cachedProjects.has_key(self.projects[self.project][1]): + self["AboutScrollLabel"].setText(self.cachedProjects[self.projects[self.project][1]]) + else: + self["AboutScrollLabel"].setText(_("Please wait")) + self.Timer.start(50, True) + + def left(self): + self.project = self.project == 0 and len(self.projects) - 1 or self.project - 1 + self.updateCommitLogs() + + def right(self): + self.project = self.project != len(self.projects) - 1 and self.project + 1 or 0 + self.updateCommitLogs() \ No newline at end of file diff --git a/lib/python/Screens/AudioSelection.py b/lib/python/Screens/AudioSelection.py new file mode 100644 index 0000000..35d201e --- /dev/null +++ b/lib/python/Screens/AudioSelection.py @@ -0,0 +1,473 @@ +from Screen import Screen +from Screens.Setup import getConfigMenuItem, Setup +from Components.ServiceEventTracker import ServiceEventTracker +from Components.ActionMap import NumberActionMap +from Components.ConfigList import ConfigListScreen +from Components.ChoiceList import ChoiceList, ChoiceEntryComponent +from Components.config import config, ConfigSubsection, getConfigListEntry, ConfigNothing, ConfigSelection, ConfigOnOff +from Components.Label import Label +from Components.MultiContent import MultiContentEntryText +from Components.Sources.List import List +from Components.Sources.Boolean import Boolean +from Components.SystemInfo import SystemInfo +from Components.VolumeControl import VolumeControl + +from enigma import iPlayableService, eTimer + +from Tools.ISO639 import LanguageCodes +from Tools.BoundFunction import boundFunction +FOCUS_CONFIG, FOCUS_STREAMS = range(2) +[PAGE_AUDIO, PAGE_SUBTITLES] = ["audio", "subtitles"] + +class AudioSelection(Screen, ConfigListScreen): + def __init__(self, session, infobar=None, page=PAGE_AUDIO): + Screen.__init__(self, session) + + self["streams"] = List([], enableWrapAround=True) + self["key_red"] = Boolean(False) + self["key_green"] = Boolean(False) + self["key_yellow"] = Boolean(True) + self["key_blue"] = Boolean(False) + + ConfigListScreen.__init__(self, []) + self.infobar = infobar or self.session.infobar + + self.__event_tracker = ServiceEventTracker(screen=self, eventmap= + { + iPlayableService.evUpdatedInfo: self.__updatedInfo + }) + self.cached_subtitle_checked = False + self.__selected_subtitle = None + + self["actions"] = NumberActionMap(["AudioSelectionActions", "SetupActions", "DirectionActions", "MenuActions"], + { + "red": self.keyRed, + "green": self.keyGreen, + "yellow": self.keyYellow, + "blue": self.keyBlue, + "ok": self.keyOk, + "cancel": self.cancel, + "up": self.keyUp, + "down": self.keyDown, + "volumeUp": self.volumeUp, + "volumeDown": self.volumeDown, + "volumeMute": self.volumeMute, + "menu": self.openAutoLanguageSetup, + "1": self.keyNumberGlobal, + "2": self.keyNumberGlobal, + "3": self.keyNumberGlobal, + "4": self.keyNumberGlobal, + "5": self.keyNumberGlobal, + "6": self.keyNumberGlobal, + "7": self.keyNumberGlobal, + "8": self.keyNumberGlobal, + "9": self.keyNumberGlobal, + }, -2) + + self.settings = ConfigSubsection() + choicelist = [(PAGE_AUDIO,""), (PAGE_SUBTITLES,"")] + self.settings.menupage = ConfigSelection(choices = choicelist, default=page) + self.onLayoutFinish.append(self.__layoutFinished) + + def __layoutFinished(self): + self["config"].instance.setSelectionEnable(False) + self.focus = FOCUS_STREAMS + self.settings.menupage.addNotifier(self.fillList) + + def fillList(self, arg=None): + streams = [] + conflist = [] + selectedidx = 0 + + self["key_blue"].setBoolean(False) + + service = self.session.nav.getCurrentService() + self.audioTracks = audio = service and service.audioTracks() + n = audio and audio.getNumberOfTracks() or 0 + + subtitlelist = self.getSubtitleList() + + if self.settings.menupage.getValue() == PAGE_AUDIO: + self.setTitle(_("Select audio track")) + service = self.session.nav.getCurrentService() + self.audioTracks = audio = service and service.audioTracks() + n = audio and audio.getNumberOfTracks() or 0 + if SystemInfo["CanDownmixAC3"]: + self.settings.downmix = ConfigOnOff(default=config.av.downmix_ac3.value) + self.settings.downmix.addNotifier(self.changeAC3Downmix, initial_call = False) + conflist.append(getConfigListEntry(_("AC3/DTS downmix"), self.settings.downmix)) + self["key_red"].setBoolean(True) + + if n > 0: + self.audioChannel = service.audioChannel() + if self.audioChannel: + choicelist = [("0",_("left")), ("1",_("stereo")), ("2", _("right"))] + self.settings.channelmode = ConfigSelection(choices = choicelist, default = str(self.audioChannel.getCurrentChannel())) + self.settings.channelmode.addNotifier(self.changeMode, initial_call = False) + conflist.append(getConfigListEntry(_("Channel"), self.settings.channelmode)) + self["key_green"].setBoolean(True) + else: + conflist.append(('',)) + self["key_green"].setBoolean(False) + selectedAudio = self.audioTracks.getCurrentTrack() + for x in range(n): + number = str(x + 1) + i = audio.getTrackInfo(x) + languages = i.getLanguage().split('/') + description = i.getDescription() or "" + selected = "" + language = "" + + if selectedAudio == x: + selected = "X" + selectedidx = x + + cnt = 0 + for lang in languages: + if cnt: + language += ' / ' + if LanguageCodes.has_key(lang): + language += LanguageCodes[lang][0] + elif lang == "und": + "" + else: + language += lang + cnt += 1 + + streams.append((x, "", number, description, language, selected)) + + else: + streams = [] + conflist.append(('',)) + self["key_green"].setBoolean(False) + + if subtitlelist: + self["key_yellow"].setBoolean(True) + conflist.append(getConfigListEntry(_("To subtitle selection"), self.settings.menupage)) + else: + self["key_yellow"].setBoolean(False) + conflist.append(('',)) + + from Components.PluginComponent import plugins + from Plugins.Plugin import PluginDescriptor + + if hasattr(self.infobar, "runPlugin"): + class PluginCaller: + def __init__(self, fnc, *args): + self.fnc = fnc + self.args = args + def __call__(self, *args, **kwargs): + self.fnc(*self.args) + + Plugins = [ (p.name, PluginCaller(self.infobar.runPlugin, p)) for p in plugins.getPlugins(where = PluginDescriptor.WHERE_AUDIOMENU) ] + + if len(Plugins): + self["key_blue"].setBoolean(True) + conflist.append(getConfigListEntry(Plugins[0][0], ConfigNothing())) + self.plugincallfunc = Plugins[0][1] + if len(Plugins) > 1: + print "plugin(s) installed but not displayed in the dialog box:", Plugins[1:] + + elif self.settings.menupage.getValue() == PAGE_SUBTITLES: + + self.setTitle(_("Subtitle selection")) + conflist.append(('',)) + conflist.append(('',)) + self["key_red"].setBoolean(False) + self["key_green"].setBoolean(False) + + idx = 0 + + for x in subtitlelist: + number = str(x[1]) + description = "?" + language = "" + selected = "" + + if self.selectedSubtitle and x[:4] == self.selectedSubtitle[:4]: + selected = "X" + selectedidx = idx + + try: + if x[4] != "und": + if LanguageCodes.has_key(x[4]): + language = LanguageCodes[x[4]][0] + else: + language = x[4] + except: + language = "" + + if x[0] == 0: + description = "DVB" + number = "%x" % (x[1]) + + elif x[0] == 1: + description = "teletext" + number = "%x%02x" %(x[3] and x[3] or 8, x[2]) + + elif x[0] == 2: + types = ("unknown", "embedded", "SSA file", "ASS file", + "SRT file", "VOB file", "PGS file") + try: + description = types[x[2]] + except: + description = _("unknown") + ": %s" % x[2] + number = str(int(number) + 1) + + streams.append((x, "", number, description, language, selected)) + idx += 1 + + conflist.append(getConfigListEntry(_("To audio selection"), self.settings.menupage)) + + if self.infobar.selected_subtitle and self.infobar.selected_subtitle != (0,0,0,0) and not ".DVDPlayer'>" in `self.infobar`: + self["key_blue"].setBoolean(True) + conflist.append(getConfigListEntry(_("Subtitle Quickmenu"), ConfigNothing())) + + self["config"].list = conflist + self["config"].l.setList(conflist) + + self["streams"].list = streams + self["streams"].setIndex(selectedidx) + + def __updatedInfo(self): + self.fillList() + + def getSubtitleList(self): + service = self.session.nav.getCurrentService() + subtitle = service and service.subtitle() + subtitlelist = subtitle and subtitle.getSubtitleList() + self.selectedSubtitle = None + if self.subtitlesEnabled(): + self.selectedSubtitle = self.infobar.selected_subtitle + if self.selectedSubtitle and self.selectedSubtitle[:4] == (0,0,0,0): + self.selectedSubtitle = None + elif self.selectedSubtitle and not self.selectedSubtitle[:4] in (x[:4] for x in subtitlelist): + subtitlelist.append(self.selectedSubtitle) + return subtitlelist + + def subtitlesEnabled(self): + try: + return self.infobar.subtitle_window.shown + except: + return False + + def enableSubtitle(self, subtitle): + if self.infobar.selected_subtitle != subtitle: + self.infobar.enableSubtitle(subtitle) + + def changeAC3Downmix(self, downmix): + if downmix.getValue() == True: + config.av.downmix_ac3.value = True + else: + config.av.downmix_ac3.value = False + config.av.downmix_ac3.save() + + def changeMode(self, mode): + if mode is not None and self.audioChannel: + self.audioChannel.selectChannel(int(mode.getValue())) + + def changeAudio(self, audio): + track = int(audio) + if isinstance(track, int): + if self.session.nav.getCurrentService().audioTracks().getNumberOfTracks() > track: + self.audioTracks.selectTrack(track) + + def keyLeft(self): + if self.focus == FOCUS_CONFIG: + ConfigListScreen.keyLeft(self) + elif self.focus == FOCUS_STREAMS: + self["streams"].setIndex(0) + + def keyRight(self, config = False): + if config or self.focus == FOCUS_CONFIG: + if self["config"].getCurrentIndex() < 3: + ConfigListScreen.keyRight(self) + elif self["config"].getCurrentIndex() == 3: + if self.settings.menupage.getValue() == PAGE_AUDIO and hasattr(self, "plugincallfunc"): + self.plugincallfunc() + elif self.settings.menupage.getValue() == PAGE_SUBTITLES and self.infobar.selected_subtitle and self.infobar.selected_subtitle != (0,0,0,0): + self.session.open(QuickSubtitlesConfigMenu, self.infobar) + if self.focus == FOCUS_STREAMS and self["streams"].count() and config == False: + self["streams"].setIndex(self["streams"].count()-1) + + def keyRed(self): + if self["key_red"].getBoolean(): + self.colorkey(0) + else: + return 0 + + def keyGreen(self): + if self["key_green"].getBoolean(): + self.colorkey(1) + else: + return 0 + + def keyYellow(self): + if self["key_yellow"].getBoolean(): + self.colorkey(2) + else: + return 0 + + def keyBlue(self): + if self["key_blue"].getBoolean(): + self.colorkey(3) + else: + return 0 + + def colorkey(self, idx): + self["config"].setCurrentIndex(idx) + self.keyRight(True) + + def keyUp(self): + if self.focus == FOCUS_CONFIG: + self["config"].instance.moveSelection(self["config"].instance.moveUp) + elif self.focus == FOCUS_STREAMS: + if self["streams"].getIndex() == 0: + self["config"].instance.setSelectionEnable(True) + self["streams"].style = "notselected" + self["config"].setCurrentIndex(len(self["config"].getList())-1) + self.focus = FOCUS_CONFIG + else: + self["streams"].selectPrevious() + + def keyDown(self): + if self.focus == FOCUS_CONFIG: + if self["config"].getCurrentIndex() < len(self["config"].getList())-1: + self["config"].instance.moveSelection(self["config"].instance.moveDown) + else: + self["config"].instance.setSelectionEnable(False) + self["streams"].style = "default" + self.focus = FOCUS_STREAMS + elif self.focus == FOCUS_STREAMS: + self["streams"].selectNext() + + def volumeUp(self): + VolumeControl.instance and VolumeControl.instance.volUp() + + def volumeDown(self): + VolumeControl.instance and VolumeControl.instance.volDown() + + def volumeMute(self): + VolumeControl.instance and VolumeControl.instance.volMute() + + def keyNumberGlobal(self, number): + if number <= len(self["streams"].list): + self["streams"].setIndex(number-1) + self.keyOk() + + def keyOk(self): + if self.focus == FOCUS_STREAMS and self["streams"].list: + cur = self["streams"].getCurrent() + if self.settings.menupage.getValue() == PAGE_AUDIO and cur[0] is not None: + self.changeAudio(cur[0]) + self.__updatedInfo() + if self.settings.menupage.getValue() == PAGE_SUBTITLES and cur[0] is not None: + if self.infobar.selected_subtitle and self.infobar.selected_subtitle[:4] == cur[0][:4]: + self.enableSubtitle(None) + selectedidx = self["streams"].getIndex() + self.__updatedInfo() + self["streams"].setIndex(selectedidx) + else: + self.enableSubtitle(cur[0][:5]) + self.__updatedInfo() + self.close(0) + elif self.focus == FOCUS_CONFIG: + self.keyRight() + + def openAutoLanguageSetup(self): + self.session.open(Setup, "autolanguagesetup") + + def cancel(self): + self.close(0) + +class SubtitleSelection(AudioSelection): + def __init__(self, session, infobar=None): + AudioSelection.__init__(self, session, infobar, page=PAGE_SUBTITLES) + self.skinName = ["AudioSelection"] + +class QuickSubtitlesConfigMenu(ConfigListScreen, Screen): + skin = """ + <screen position="50,50" size="480,255" title="Subtitle settings" backgroundColor="#7f000000" flags="wfNoBorder"> + <widget name="config" position="5,5" size="470,225" font="Regular;18" zPosition="1" transparent="1" selectionPixmap="PLi-HD/buttons/sel.png" valign="center" /> + <widget name="videofps" position="5,230" size="470,20" backgroundColor="secondBG" transparent="1" zPosition="1" font="Regular;16" valign="center" halign="left" foregroundColor="blue"/> + </screen>""" + + def __init__(self, session, infobar): + Screen.__init__(self, session) + self.skin = QuickSubtitlesConfigMenu.skin + self.infobar = infobar or self.session.infobar + + self.wait = eTimer() + self.wait.timeout.get().append(self.resyncSubtitles) + + self["videofps"] = Label("") + + sub = self.infobar.selected_subtitle + if sub[0] == 0: # dvb + menu = [ + getConfigMenuItem("config.subtitles.dvb_subtitles_yellow"), + getConfigMenuItem("config.subtitles.dvb_subtitles_centered"), + getConfigMenuItem("config.subtitles.dvb_subtitles_backtrans"), + getConfigMenuItem("config.subtitles.dvb_subtitles_original_position"), + getConfigMenuItem("config.subtitles.subtitle_position"), + getConfigMenuItem("config.subtitles.subtitle_bad_timing_delay"), + getConfigMenuItem("config.subtitles.subtitle_noPTSrecordingdelay"), + ] + elif sub[0] == 1: # teletext + menu = [ + getConfigMenuItem("config.subtitles.ttx_subtitle_colors"), + getConfigMenuItem("config.subtitles.ttx_subtitle_original_position"), + getConfigMenuItem("config.subtitles.subtitle_fontsize"), + getConfigMenuItem("config.subtitles.subtitle_position"), + getConfigMenuItem("config.subtitles.subtitle_rewrap"), + getConfigMenuItem("config.subtitles.subtitle_borderwidth"), + getConfigMenuItem("config.subtitles.subtitle_alignment"), + getConfigMenuItem("config.subtitles.subtitle_bad_timing_delay"), + getConfigMenuItem("config.subtitles.subtitle_noPTSrecordingdelay"), + ] + else: # pango + menu = [ + getConfigMenuItem("config.subtitles.pango_subtitles_delay"), + getConfigMenuItem("config.subtitles.pango_subtitle_colors"), + getConfigMenuItem("config.subtitles.subtitle_fontsize"), + getConfigMenuItem("config.subtitles.subtitle_position"), + getConfigMenuItem("config.subtitles.subtitle_alignment"), + getConfigMenuItem("config.subtitles.subtitle_rewrap"), + getConfigMenuItem("config.subtitles.subtitle_borderwidth"), + getConfigMenuItem("config.subtitles.pango_subtitles_fps"), + ] + self["videofps"].setText(_("Video: %s fps") % (self.getFps().rstrip(".000"))) + + ConfigListScreen.__init__(self, menu, self.session, on_change = self.changedEntry) + + self["actions"] = NumberActionMap(["SetupActions"], + { + "cancel": self.cancel, + "ok": self.ok, + },-2) + + def changedEntry(self): + if self["config"].getCurrent() in [getConfigMenuItem("config.subtitles.pango_subtitles_delay"),getConfigMenuItem("config.subtitles.pango_subtitles_fps")]: + self.wait.start(500, True) + + def resyncSubtitles(self): + self.infobar.setSeekState(self.infobar.SEEK_STATE_PAUSE) + self.infobar.setSeekState(self.infobar.SEEK_STATE_PLAY) + + def getFps(self): + from enigma import iServiceInformation + service = self.session.nav.getCurrentService() + info = service and service.info() + if not info: + return "" + fps = info.getInfo(iServiceInformation.sFrameRate) + if fps > 0: + return "%6.3f" % (fps/1000.) + return "" + + def cancel(self): + self.close() + + def ok(self): + config.subtitles.save() + self.close() diff --git a/lib/python/Screens/AutoDiseqc.py b/lib/python/Screens/AutoDiseqc.py new file mode 100644 index 0000000..7946a86 --- /dev/null +++ b/lib/python/Screens/AutoDiseqc.py @@ -0,0 +1,298 @@ +from Screens.Screen import Screen +from Components.ConfigList import ConfigListScreen, ConfigList +from Components.ActionMap import ActionMap +from Components.Sources.FrontendStatus import FrontendStatus +from Components.Sources.StaticText import StaticText +from Components.config import config, configfile, getConfigListEntry +from Components.NimManager import nimmanager, InitNimManager +from Components.TuneTest import Tuner +from enigma import eDVBFrontendParametersSatellite, eDVBResourceManager, eTimer + + +class AutoDiseqc(Screen, ConfigListScreen): + skin = """ + <screen position="c-250,c-100" size="500,250" title=" "> + <widget source="statusbar" render="Label" position="10,5" zPosition="10" size="e-10,60" halign="center" valign="center" font="Regular;22" transparent="1" shadowColor="black" shadowOffset="-1,-1" /> + <widget source="tunerstatusbar" render="Label" position="10,60" zPosition="10" size="e-10,30" halign="center" valign="center" font="Regular;22" transparent="1" shadowColor="black" shadowOffset="-1,-1" /> + <widget name="config" position="10,100" size="e-10,100" scrollbarMode="showOnDemand" /> + <ePixmap pixmap="skin_default/buttons/red.png" position="c-140,e-45" size="140,40" alphatest="on" /> + <widget source="key_red" render="Label" position="c-140,e-45" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#9f1313" transparent="1" /> + </screen>""" + + diseqc_ports = [ + "A", "B", "C", "D" + ] + + sat_frequencies = [ + # astra 192 zdf + ( 11953, 27500, \ + eDVBFrontendParametersSatellite.Polarisation_Horizontal, eDVBFrontendParametersSatellite.FEC_3_4, \ + eDVBFrontendParametersSatellite.Inversion_Off, 192, \ + eDVBFrontendParametersSatellite.System_DVB_S, eDVBFrontendParametersSatellite.Modulation_Auto, \ + eDVBFrontendParametersSatellite.RollOff_auto, eDVBFrontendParametersSatellite.Pilot_Unknown, \ + 1079, 1, "Astra 1 19.2e"), + + # astra 235 astra ses + ( 12168, 27500, \ + eDVBFrontendParametersSatellite.Polarisation_Vertical, eDVBFrontendParametersSatellite.FEC_3_4, \ + eDVBFrontendParametersSatellite.Inversion_Off, 235, \ + eDVBFrontendParametersSatellite.System_DVB_S, eDVBFrontendParametersSatellite.Modulation_Auto, \ + eDVBFrontendParametersSatellite.RollOff_auto, eDVBFrontendParametersSatellite.Pilot_Unknown, \ + 3224, 3, "Astra 3 23.5e"), + + # astra 282 bbc + ( 10773, 22000, \ + eDVBFrontendParametersSatellite.Polarisation_Horizontal, eDVBFrontendParametersSatellite.FEC_5_6, \ + eDVBFrontendParametersSatellite.Inversion_Off, 282, \ + eDVBFrontendParametersSatellite.System_DVB_S, eDVBFrontendParametersSatellite.Modulation_Auto, \ + eDVBFrontendParametersSatellite.RollOff_auto, eDVBFrontendParametersSatellite.Pilot_Unknown, \ + 2045, 2, "Astra 2 28.2e"), + + # hotbird 130 rai + ( 10992, 27500, \ + eDVBFrontendParametersSatellite.Polarisation_Vertical, eDVBFrontendParametersSatellite.FEC_2_3, \ + eDVBFrontendParametersSatellite.Inversion_Off, 130, \ + eDVBFrontendParametersSatellite.System_DVB_S, eDVBFrontendParametersSatellite.Modulation_Auto, \ + eDVBFrontendParametersSatellite.RollOff_auto, eDVBFrontendParametersSatellite.Pilot_Unknown, \ + 12400, 318, "Hotbird 13.0e"), + ] + + SAT_TABLE_FREQUENCY = 0 + SAT_TABLE_SYMBOLRATE = 1 + SAT_TABLE_POLARISATION = 2 + SAT_TABLE_FEC = 3 + SAT_TABLE_INVERSION = 4 + SAT_TABLE_ORBPOS = 5 + SAT_TABLE_SYSTEM = 6 + SAT_TABLE_MODULATION = 7 + SAT_TABLE_ROLLOFF = 8 + SAT_TABLE_PILOT = 9 + SAT_TABLE_TSID = 10 + SAT_TABLE_ONID = 11 + SAT_TABLE_NAME = 12 + + def __init__(self, session, feid, nr_of_ports, simple_tone, simple_sat_change): + self.skin = AutoDiseqc.skin + Screen.__init__(self, session) + + self["statusbar"] = StaticText(" ") + self["tunerstatusbar"] = StaticText(" ") + + self.list = [] + ConfigListScreen.__init__(self, self.list, session = self.session) + + self["config"].list = self.list + self["config"].l.setList(self.list) + + self["key_red"] = StaticText(_("Abort")) + + self.index = 0 + self.port_index = 0 + self.feid = feid + self.nr_of_ports = nr_of_ports + self.simple_tone = simple_tone + self.simple_sat_change = simple_sat_change + self.found_sats = [] + + if not self.openFrontend(): + self.oldref = self.session.nav.getCurrentlyPlayingServiceOrGroup() + self.session.nav.stopService() + if not self.openFrontend(): + if self.session.pipshown: + if hasattr(self.session, 'infobar'): + if self.session.infobar.servicelist and self.session.infobar.servicelist.dopipzap: + self.session.infobar.servicelist.togglePipzap() + if hasattr(self.session, 'pip'): + del self.session.pip + self.session.pipshown = False + if not self.openFrontend(): + self.frontend = None + self.raw_channel = None + + if self.raw_channel: + self.raw_channel.receivedTsidOnid.get().append(self.gotTsidOnid) + + self["actions"] = ActionMap(["SetupActions"], + { + "cancel": self.keyCancel, + }, -2) + + self.count = 0 + self.state = 0 + self.abort = False + + self.statusTimer = eTimer() + self.statusTimer.callback.append(self.statusCallback) + self.tunerStatusTimer = eTimer() + self.tunerStatusTimer.callback.append(self.tunerStatusCallback) + self.startStatusTimer() + self.onClose.append(self.__onClose) + + def __onClose(self): + if self.raw_channel: + self.raw_channel.receivedTsidOnid.get().remove(self.gotTsidOnid) + + def keyCancel(self): + self.abort = True + + def keyOK(self): + return + + def keyLeft(self): + return + + def keyRight(self): + return + + def openFrontend(self): + res_mgr = eDVBResourceManager.getInstance() + if res_mgr: + self.raw_channel = res_mgr.allocateRawChannel(self.feid) + if self.raw_channel: + self.frontend = self.raw_channel.getFrontend() + if self.frontend: + return True + return False + + def statusCallback(self): + if self.state == 0: + if self.port_index == 0: + self.clearNimEntries() + config.Nims[self.feid].diseqcA.value = "%d" % (self.sat_frequencies[self.index][self.SAT_TABLE_ORBPOS]) + elif self.port_index == 1: + self.clearNimEntries() + config.Nims[self.feid].diseqcB.value = "%d" % (self.sat_frequencies[self.index][self.SAT_TABLE_ORBPOS]) + elif self.port_index == 2: + self.clearNimEntries() + config.Nims[self.feid].diseqcC.value = "%d" % (self.sat_frequencies[self.index][self.SAT_TABLE_ORBPOS]) + elif self.port_index == 3: + self.clearNimEntries() + config.Nims[self.feid].diseqcD.value = "%d" % (self.sat_frequencies[self.index][self.SAT_TABLE_ORBPOS]) + + if self.nr_of_ports == 4: + config.Nims[self.feid].diseqcMode.value = "diseqc_a_b_c_d" + elif self.nr_of_ports == 2: + config.Nims[self.feid].diseqcMode.value = "diseqc_a_b" + else: + config.Nims[self.feid].diseqcMode.value = "single" + + config.Nims[self.feid].configMode.value = "simple" + config.Nims[self.feid].simpleDiSEqCSetVoltageTone = self.simple_tone + config.Nims[self.feid].simpleDiSEqCOnlyOnSatChange = self.simple_sat_change + + self.saveAndReloadNimConfig() + self.state += 1 + + elif self.state == 1: + InitNimManager(nimmanager) + + self.tuner = Tuner(self.frontend) + if self.raw_channel: + self.raw_channel.requestTsidOnid() + self.tuner.tune(self.sat_frequencies[self.index]) + + self["statusbar"].setText(_("Checking tuner %d\nDiSEqC port %s for %s") % (self.feid, self.diseqc_ports[self.port_index], self.sat_frequencies[self.index][self.SAT_TABLE_NAME])) + self["tunerstatusbar"].setText(" ") + + self.count = 0 + self.state = 0 + + self.startTunerStatusTimer() + return + + self.startStatusTimer() + + def startStatusTimer(self): + self.statusTimer.start(100, True) + + def setupSave(self): + self.clearNimEntries() + for x in self.found_sats: + if x[0] == "A": + config.Nims[self.feid].diseqcA.value = "%d" % (x[1]) + elif x[0] == "B": + config.Nims[self.feid].diseqcB.value = "%d" % (x[1]) + elif x[0] == "C": + config.Nims[self.feid].diseqcC.value = "%d" % (x[1]) + elif x[0] == "D": + config.Nims[self.feid].diseqcD.value = "%d" % (x[1]) + self.saveAndReloadNimConfig() + + def setupClear(self): + self.clearNimEntries() + self.saveAndReloadNimConfig() + + def clearNimEntries(self): + config.Nims[self.feid].diseqcA.value = "3601" + config.Nims[self.feid].diseqcB.value = "3601" + config.Nims[self.feid].diseqcC.value = "3601" + config.Nims[self.feid].diseqcD.value = "3601" + + def saveAndReloadNimConfig(self): + config.Nims[self.feid].save() + configfile.save() + configfile.load() + nimmanager.sec.update() + + def tunerStatusCallback(self): + dict = {} + if self.frontend: + self.frontend.getFrontendStatus(dict) + else: + self.tunerStopScan(False) + return + self["tunerstatusbar"].setText(_("Tuner status %s") % (dict["tuner_state"])) + + if dict["tuner_state"] == "LOSTLOCK" or dict["tuner_state"] == "FAILED": + self.tunerStopScan(False) + return + + self.count += 1 + if self.count > 10: + self.tunerStopScan(False) + else: + self.startTunerStatusTimer() + + def startTunerStatusTimer(self): + self.tunerStatusTimer.start(1000, True) + + def gotTsidOnid(self, tsid, onid): + self.tunerStatusTimer.stop() + if tsid == self.sat_frequencies[self.index][self.SAT_TABLE_TSID] and onid == self.sat_frequencies[self.index][self.SAT_TABLE_ONID]: + self.tunerStopScan(True) + else: + self.tunerStopScan(False) + + def tunerStopScan(self, result): + if self.abort: + self.setupClear() + self.close(False) + return + if result: + self.found_sats.append((self.diseqc_ports[self.port_index], self.sat_frequencies[self.index][self.SAT_TABLE_ORBPOS], self.sat_frequencies[self.index][self.SAT_TABLE_NAME])) + self.index = 0 + self.port_index += 1 + else: + self.index += 1 + if len(self.sat_frequencies) == self.index: + self.index = 0 + self.port_index += 1 + + if len(self.found_sats) > 0: + self.list = [] + for x in self.found_sats: + self.list.append(getConfigListEntry((_("DiSEqC port %s: %s") % (x[0], x[2])))) + self["config"].l.setList(self.list) + + if self.nr_of_ports == self.port_index: + self.state = 99 + self.setupSave() + self.close(len(self.found_sats) > 0) + return + + for x in self.found_sats: + if x[1] == self.sat_frequencies[self.index][self.SAT_TABLE_ORBPOS]: + self.tunerStopScan(False) + return + + self.startStatusTimer() diff --git a/lib/python/Screens/ChannelSelection.py b/lib/python/Screens/ChannelSelection.py new file mode 100644 index 0000000..ab00b5c --- /dev/null +++ b/lib/python/Screens/ChannelSelection.py @@ -0,0 +1,2087 @@ +from Tools.Profile import profile + +from Screen import Screen +import Screens.InfoBar +import Components.ParentalControl +from Components.Button import Button +from Components.ServiceList import ServiceList, refreshServiceList +from Components.ActionMap import NumberActionMap, ActionMap, HelpableActionMap +from Components.MenuList import MenuList +from Components.ServiceEventTracker import ServiceEventTracker, InfoBarBase +from Components.SystemInfo import SystemInfo +profile("ChannelSelection.py 1") +from EpgSelection import EPGSelection +from enigma import eServiceReference, eEPGCache, eServiceCenter, eRCInput, eTimer, eDVBDB, iPlayableService, iServiceInformation, getPrevAsciiCode, eEnv +from Components.config import config, configfile, ConfigSubsection, ConfigText +from Tools.NumericalTextInput import NumericalTextInput +profile("ChannelSelection.py 2") +from Components.NimManager import nimmanager +profile("ChannelSelection.py 2.1") +from Components.Sources.RdsDecoder import RdsDecoder +profile("ChannelSelection.py 2.2") +from Components.Sources.ServiceEvent import ServiceEvent +from Components.Sources.Event import Event +profile("ChannelSelection.py 2.3") +from Components.Input import Input +profile("ChannelSelection.py 3") +from Components.ChoiceList import ChoiceList, ChoiceEntryComponent +from Components.SystemInfo import SystemInfo +from Screens.InputBox import PinInput +from Screens.VirtualKeyBoard import VirtualKeyBoard +from Screens.MessageBox import MessageBox +from Screens.ServiceInfo import ServiceInfo +profile("ChannelSelection.py 4") +from Screens.PictureInPicture import PictureInPicture +from Screens.RdsDisplay import RassInteractive +from ServiceReference import ServiceReference +from Tools.BoundFunction import boundFunction +from Tools import Notifications +from Tools.Alternatives import CompareWithAlternatives +from os import remove +profile("ChannelSelection.py after imports") + +FLAG_SERVICE_NEW_FOUND = 64 #define in lib/dvb/idvb.h as dxNewFound = 64 + +class BouquetSelector(Screen): + def __init__(self, session, bouquets, selectedFunc, enableWrapAround=True): + Screen.__init__(self, session) + + self.selectedFunc=selectedFunc + + self["actions"] = ActionMap(["OkCancelActions"], + { + "ok": self.okbuttonClick, + "cancel": self.cancelClick + }) + entrys = [ (x[0], x[1]) for x in bouquets ] + self["menu"] = MenuList(entrys, enableWrapAround) + + def getCurrent(self): + cur = self["menu"].getCurrent() + return cur and cur[1] + + def okbuttonClick(self): + self.selectedFunc(self.getCurrent()) + + def up(self): + self["menu"].up() + + def down(self): + self["menu"].down() + + def cancelClick(self): + self.close(False) + +class SilentBouquetSelector: + def __init__(self, bouquets, enableWrapAround=False, current=0): + self.bouquets = [b[1] for b in bouquets] + self.pos = current + self.count = len(bouquets) + self.enableWrapAround = enableWrapAround + + def up(self): + if self.pos > 0 or self.enableWrapAround: + self.pos = (self.pos - 1) % self.count + + def down(self): + if self.pos < (self.count - 1) or self.enableWrapAround: + self.pos = (self.pos + 1) % self.count + + def getCurrent(self): + return self.bouquets[self.pos] + +# csel.bouquet_mark_edit values +OFF = 0 +EDIT_BOUQUET = 1 +EDIT_ALTERNATIVES = 2 + +def append_when_current_valid(current, menu, args, level=0, key=""): + if current and current.valid() and level <= config.usage.setup_level.index: + menu.append(ChoiceEntryComponent(key, args)) + +class ChannelContextMenu(Screen): + def __init__(self, session, csel): + + Screen.__init__(self, session) + #raise Exception("we need a better summary screen here") + self.csel = csel + self.bsel = None + + self["actions"] = ActionMap(["OkCancelActions", "ColorActions", "NumberActions", "MenuActions"], + { + "ok": self.okbuttonClick, + "cancel": self.cancelClick, + "blue": self.showServiceInPiP, + "red": self.playMain, + "menu": self.openSetup, + "2": self.renameEntry, + "3": self.findCurrentlyPlayed, + "5": self.addServiceToBouquetOrAlternative, + "6": self.toggleMoveModeSelect, + "8": self.removeEntry + }) + menu = [ ] + + self.removeFunction = False + self.addFunction = False + current = csel.getCurrentSelection() + current_root = csel.getRoot() + current_sel_path = current.getPath() + current_sel_flags = current.flags + inBouquetRootList = current_root and 'FROM BOUQUET "bouquets.' in current_root.getPath() #FIXME HACK + inAlternativeList = current_root and 'FROM BOUQUET "alternatives' in current_root.getPath() + self.inBouquet = csel.getMutableList() is not None + haveBouquets = config.usage.multibouquet.value + from Components.ParentalControl import parentalControl + self.parentalControl = parentalControl + self.parentalControlEnabled = config.ParentalControl.configured.value and config.ParentalControl.servicepinactive.value + if not (current_sel_path or current_sel_flags & (eServiceReference.isDirectory|eServiceReference.isMarker)): + append_when_current_valid(current, menu, (_("show transponder info"), self.showServiceInformations), level=2) + if csel.bouquet_mark_edit == OFF and not csel.movemode: + if not inBouquetRootList: + isPlayable = not (current_sel_flags & (eServiceReference.isMarker|eServiceReference.isDirectory)) + if isPlayable: + if config.servicelist.startupservice.value == self.csel.getCurrentSelection().toString(): + append_when_current_valid(current, menu, (_("stop using as startup service"), self.unsetStartupService), level=0) + else: + append_when_current_valid(current, menu, (_("set as startup service"), self.setStartupService), level=0) + if self.parentalControlEnabled: + if self.parentalControl.getProtectionLevel(csel.getCurrentSelection().toCompareString()) == -1: + append_when_current_valid(current, menu, (_("add to parental protection"), boundFunction(self.addParentalProtection, csel.getCurrentSelection())), level=0) + else: + append_when_current_valid(current, menu, (_("remove from parental protection"), boundFunction(self.removeParentalProtection, csel.getCurrentSelection())), level=0) + if haveBouquets: + bouquets = self.csel.getBouquetList() + if bouquets is None: + bouquetCnt = 0 + else: + bouquetCnt = len(bouquets) + if not self.inBouquet or bouquetCnt > 1: + append_when_current_valid(current, menu, (_("add service to bouquet"), self.addServiceToBouquetSelected), level=0, key="5") + self.addFunction = self.addServiceToBouquetSelected + else: + if not self.inBouquet: + append_when_current_valid(current, menu, (_("add service to favourites"), self.addServiceToBouquetSelected), level=0, key="5") + self.addFunction = self.addServiceToBouquetSelected + if SystemInfo["PIPAvailable"]: + if not self.parentalControlEnabled or self.parentalControl.getProtectionLevel(csel.getCurrentSelection().toCompareString()) == -1: + if self.csel.dopipzap: + append_when_current_valid(current, menu, (_("play in mainwindow"), self.playMain), level=0, key="red") + else: + append_when_current_valid(current, menu, (_("play as picture in picture"), self.showServiceInPiP), level=0, key="blue") + append_when_current_valid(current, menu, (_("find currently played service"), self.findCurrentlyPlayed), level=0, key="3") + else: + if 'FROM SATELLITES' in current_root.getPath(): + append_when_current_valid(current, menu, (_("remove selected satellite"), self.removeSatelliteServices), level=0) + if haveBouquets: + if not self.inBouquet and not "PROVIDERS" in current_sel_path: + append_when_current_valid(current, menu, (_("copy to bouquets"), self.copyCurrentToBouquetList), level=0) + if ("flags == %d" %(FLAG_SERVICE_NEW_FOUND)) in current_sel_path: + append_when_current_valid(current, menu, (_("remove all new found flags"), self.removeAllNewFoundFlags), level=0) + if self.inBouquet: + append_when_current_valid(current, menu, (_("rename entry"), self.renameEntry), level=0, key="2") + if not inAlternativeList: + append_when_current_valid(current, menu, (_("remove entry"), self.removeCurrentService), level=0, key="8") + self.removeFunction = self.removeCurrentService + if current_root and ("flags == %d" %(FLAG_SERVICE_NEW_FOUND)) in current_root.getPath(): + append_when_current_valid(current, menu, (_("remove new found flag"), self.removeNewFoundFlag), level=0) + else: + menu.append(ChoiceEntryComponent(text=(_("add bouquet"), self.showBouquetInputBox))) + append_when_current_valid(current, menu, (_("rename entry"), self.renameEntry), level=0, key="2") + append_when_current_valid(current, menu, (_("remove entry"), self.removeBouquet), level=0, key="8") + self.removeFunction = self.removeBouquet + if self.inBouquet: # current list is editable? + if csel.bouquet_mark_edit == OFF: + if not csel.movemode: + append_when_current_valid(current, menu, (_("enable move mode"), self.toggleMoveMode), level=1, key="6") + if not inBouquetRootList and current_root and not (current_root.flags & eServiceReference.isGroup): + if current.type != -1: + menu.append(ChoiceEntryComponent(text=(_("add marker"), self.showMarkerInputBox))) + if haveBouquets: + append_when_current_valid(current, menu, (_("enable bouquet edit"), self.bouquetMarkStart), level=0) + else: + append_when_current_valid(current, menu, (_("enable favourite edit"), self.bouquetMarkStart), level=0) + if current_sel_flags & eServiceReference.isGroup: + append_when_current_valid(current, menu, (_("edit alternatives"), self.editAlternativeServices), level=2) + append_when_current_valid(current, menu, (_("show alternatives"), self.showAlternativeServices), level=2) + append_when_current_valid(current, menu, (_("remove all alternatives"), self.removeAlternativeServices), level=2) + elif not current_sel_flags & eServiceReference.isMarker: + append_when_current_valid(current, menu, (_("add alternatives"), self.addAlternativeServices), level=2) + else: + append_when_current_valid(current, menu, (_("disable move mode"), self.toggleMoveMode), level=0, key="6") + else: + if csel.bouquet_mark_edit == EDIT_BOUQUET: + if haveBouquets: + append_when_current_valid(current, menu, (_("end bouquet edit"), self.bouquetMarkEnd), level=0) + append_when_current_valid(current, menu, (_("abort bouquet edit"), self.bouquetMarkAbort), level=0) + else: + append_when_current_valid(current, menu, (_("end favourites edit"), self.bouquetMarkEnd), level=0) + append_when_current_valid(current, menu, (_("abort favourites edit"), self.bouquetMarkAbort), level=0) + if current_sel_flags & eServiceReference.isMarker: + append_when_current_valid(current, menu, (_("rename entry"), self.renameEntry), level=0, key="2") + append_when_current_valid(current, menu, (_("remove entry"), self.removeCurrentService), level=0, key="8") + self.removeFunction = self.removeCurrentService + else: + append_when_current_valid(current, menu, (_("end alternatives edit"), self.bouquetMarkEnd), level=0) + append_when_current_valid(current, menu, (_("abort alternatives edit"), self.bouquetMarkAbort), level=0) + + menu.append(ChoiceEntryComponent("menu", (_("Configuration..."), self.openSetup))) + self["menu"] = ChoiceList(menu) + + def addServiceToBouquetOrAlternative(self): + if self.addFunction: + self.addFunction() + else: + return 0 + + def removeEntry(self): + if self.removeFunction and self.csel.servicelist.getCurrent() and self.csel.servicelist.getCurrent().valid(): + self.removeFunction() + else: + return 0 + + def playMain(self): + sel = self.csel.getCurrentSelection() + if sel and sel.valid() and self.csel.dopipzap and (not self.parentalControlEnabled or self.parentalControl.getProtectionLevel(self.csel.getCurrentSelection().toCompareString()) == -1): + self.csel.zap() + self.csel.setCurrentSelection(sel) + self.close(True) + else: + return 0 + + def okbuttonClick(self): + self["menu"].getCurrent()[0][1]() + + def openSetup(self): + from Screens.Setup import Setup + self.session.openWithCallback(self.cancelClick, Setup, "userinterface") + + def cancelClick(self, dummy=False): + self.close(False) + + def showServiceInformations(self): + self.session.open( ServiceInfo, self.csel.getCurrentSelection() ) + + def setStartupService(self): + config.servicelist.startupservice.value = self.csel.getCurrentSelection().toString() + path = ';'.join([i.toString() for i in self.csel.servicePath]) + config.servicelist.startuproot.value = path + config.servicelist.startupmode.value = config.servicelist.lastmode.value + config.servicelist.save() + configfile.save() + self.close() + + def unsetStartupService(self): + config.servicelist.startupservice.value = '' + config.servicelist.save() + configfile.save() + self.close() + + def showBouquetInputBox(self): + self.session.openWithCallback(self.bouquetInputCallback, VirtualKeyBoard, title=_("Please enter a name for the new bouquet"), text="bouquetname", maxSize=False, visible_width=56, type=Input.TEXT) + + def bouquetInputCallback(self, bouquet): + if bouquet is not None: + self.csel.addBouquet(bouquet, None) + self.close() + + def addParentalProtection(self, service): + self.parentalControl.protectService(service.toCompareString()) + self.close() + + def removeParentalProtection(self, service): + self.session.openWithCallback(boundFunction(self.pinEntered, service.toCompareString()), PinInput, pinList=[config.ParentalControl.servicepin[0].value], triesEntry=config.ParentalControl.retries.servicepin, title=_("Enter the service pin"), windowTitle=_("Change pin code")) + + def pinEntered(self, service, result): + if result: + self.parentalControl.unProtectService(service) + self.close() + else: + self.session.openWithCallback(self.close, MessageBox, _("The pin code you entered is wrong."), MessageBox.TYPE_ERROR) + + def showServiceInPiP(self): + if self.csel.dopipzap or (self.parentalControlEnabled and not self.parentalControl.getProtectionLevel(self.csel.getCurrentSelection().toCompareString()) == -1): + return 0 + if self.session.pipshown: + del self.session.pip + self.session.pip = self.session.instantiateDialog(PictureInPicture) + self.session.pip.show() + newservice = self.csel.servicelist.getCurrent() + if newservice and newservice.valid(): + if self.session.pip.playService(newservice): + self.session.pipshown = True + self.session.pip.servicePath = self.csel.getCurrentServicePath() + self.close(True) + else: + self.session.pipshown = False + del self.session.pip + self.session.openWithCallback(self.close, MessageBox, _("Could not open Picture in Picture"), MessageBox.TYPE_ERROR) + else: + return 0 + + def addServiceToBouquetSelected(self): + bouquets = self.csel.getBouquetList() + if bouquets is None: + cnt = 0 + else: + cnt = len(bouquets) + if cnt > 1: # show bouquet list + self.bsel = self.session.openWithCallback(self.bouquetSelClosed, BouquetSelector, bouquets, self.addCurrentServiceToBouquet) + elif cnt == 1: # add to only one existing bouquet + self.addCurrentServiceToBouquet(bouquets[0][1], closeBouquetSelection=False) + + def bouquetSelClosed(self, recursive): + self.bsel = None + if recursive: + self.close(False) + + def removeSatelliteServices(self): + curpath = self.csel.getCurrentSelection().getPath() + idx = curpath.find("satellitePosition == ") + if idx != -1: + tmp = curpath[idx+21:] + idx = tmp.find(')') + if idx != -1: + satpos = int(tmp[:idx]) + eDVBDB.getInstance().removeServices(-1, -1, -1, satpos) + self.close() + + def copyCurrentToBouquetList(self): + self.csel.copyCurrentToBouquetList() + self.close() + + + def removeBouquet(self): + if self.csel.servicelist.getCurrent() and self.csel.servicelist.getCurrent().valid() and not self.csel.movemode: + self.session.openWithCallback(self.removeBouquetCallback, MessageBox, _("Are you sure to remove this entry?")) + else: + return 0 + + def removeBouquetCallback(self, answer): + if answer: + self.csel.removeBouquet() + eDVBDB.getInstance().reloadBouquets() + self.close() + + def showMarkerInputBox(self): + self.session.openWithCallback(self.markerInputCallback, VirtualKeyBoard, title=_("Please enter a name for the new marker"), text="markername", maxSize=False, visible_width=56, type=Input.TEXT) + + def markerInputCallback(self, marker): + if marker is not None: + self.csel.addMarker(marker) + self.close() + + def addCurrentServiceToBouquet(self, dest, closeBouquetSelection=True): + self.csel.addServiceToBouquet(dest) + if self.bsel is not None: + self.bsel.close(True) + else: + self.close(closeBouquetSelection) # close bouquet selection + + def removeCurrentService(self): + if self.csel.servicelist.getCurrent() and self.csel.servicelist.getCurrent().valid() and not self.csel.movemode: + self.session.openWithCallback(self.removeCurrentServiceCallback, MessageBox, _("Are you sure to remove this entry?")) + else: + return 0 + + def removeCurrentServiceCallback(self, answer): + if answer: + self.csel.removeCurrentService() + self.close() + + def renameEntry(self): + if self.inBouquet and self.csel.servicelist.getCurrent() and self.csel.servicelist.getCurrent().valid() and not self.csel.movemode: + self.csel.renameEntry() + self.close() + else: + return 0 + + def toggleMoveMode(self): + if self.inBouquet and self.csel.servicelist.getCurrent() and self.csel.servicelist.getCurrent().valid(): + self.csel.toggleMoveMode() + self.close() + else: + return 0 + + def toggleMoveModeSelect(self): + if self.inBouquet and self.csel.servicelist.getCurrent() and self.csel.servicelist.getCurrent().valid(): + self.csel.toggleMoveMode(True) + self.close() + else: + return 0 + + def bouquetMarkStart(self): + self.csel.startMarkedEdit(EDIT_BOUQUET) + self.close() + + def bouquetMarkEnd(self): + self.csel.endMarkedEdit(abort=False) + self.close() + + def bouquetMarkAbort(self): + self.csel.endMarkedEdit(abort=True) + self.close() + + def removeNewFoundFlag(self): + eDVBDB.getInstance().removeFlag(self.csel.getCurrentSelection(), FLAG_SERVICE_NEW_FOUND) + self.close() + + def removeAllNewFoundFlags(self): + curpath = self.csel.getCurrentSelection().getPath() + idx = curpath.find("satellitePosition == ") + if idx != -1: + tmp = curpath[idx+21:] + idx = tmp.find(')') + if idx != -1: + satpos = int(tmp[:idx]) + eDVBDB.getInstance().removeFlags(FLAG_SERVICE_NEW_FOUND, -1, -1, -1, satpos) + self.close() + + def editAlternativeServices(self): + self.csel.startMarkedEdit(EDIT_ALTERNATIVES) + self.close() + + def showAlternativeServices(self): + self.csel["Service"].editmode = True + self.csel.enterPath(self.csel.getCurrentSelection()) + self.close() + + def removeAlternativeServices(self): + self.csel.removeAlternativeServices() + self.close() + + def addAlternativeServices(self): + self.csel.addAlternativeServices() + self.csel.startMarkedEdit(EDIT_ALTERNATIVES) + self.close() + + def findCurrentlyPlayed(self): + sel = self.csel.getCurrentSelection() + if sel and sel.valid() and not self.csel.movemode: + currentPlayingService = (hasattr(self.csel, "dopipzap") and self.csel.dopipzap) and self.session.pip.getCurrentService() or self.session.nav.getCurrentlyPlayingServiceOrGroup() + self.csel.servicelist.setCurrent(currentPlayingService, adjust=False) + if self.csel.getCurrentSelection() != currentPlayingService: + self.csel.setCurrentSelection(sel) + self.close() + else: + return 0 + +class SelectionEventInfo: + def __init__(self): + self["Service"] = self["ServiceEvent"] = ServiceEvent() + self["Event"] = Event() + self.servicelist.connectSelChanged(self.__selectionChanged) + self.timer = eTimer() + self.timer.callback.append(self.updateEventInfo) + self.onShown.append(self.__selectionChanged) + + def __selectionChanged(self): + if self.execing: + self.timer.start(100, True) + + def updateEventInfo(self): + cur = self.getCurrentSelection() + service = self["Service"] + service.newService(cur) + self["Event"].newEvent(service.event) + +class ChannelSelectionEPG: + def __init__(self): + self["ChannelSelectEPGActions"] = ActionMap(["ChannelSelectEPGActions"], + { + "showEPGList": self.showEPGList, + }) + self.epg_bouquet = None + + def showEPGList(self): + ref=self.getCurrentSelection() + if ref: + self.epg_bouquet = self.servicelist.getRoot() + self.savedService = ref + self.session.openWithCallback(self.SingleServiceEPGClosed, EPGSelection, ref, self.zapToService, serviceChangeCB=self.changeServiceCB) + + def SingleServiceEPGClosed(self, ret=False): + if ret: + service = self.getCurrentSelection() + if service is not None: + self.close() + else: + self.setCurrentSelection(self.savedService) + + def changeServiceCB(self, direction, epg): + beg = self.getCurrentSelection() + while True: + if direction > 0: + self.moveDown() + else: + self.moveUp() + cur = self.getCurrentSelection() + if cur == beg or not (cur.flags & eServiceReference.isMarker): + break + epg.setService(ServiceReference(self.getCurrentSelection())) + + def zapToService(self, service, preview=False, zapback=False): + if self.startServiceRef is None: + self.startServiceRef = self.session.nav.getCurrentlyPlayingServiceOrGroup() + if service is not None: + if self.servicelist.getRoot() != self.epg_bouquet: + self.servicelist.clearPath() + if self.servicelist.bouquet_root != self.epg_bouquet: + self.servicelist.enterPath(self.servicelist.bouquet_root) + self.servicelist.enterPath(self.epg_bouquet) + self.servicelist.setCurrent(service) + if not zapback or preview: + self.zap(enable_pipzap=True) + if (self.dopipzap or zapback) and not preview: + self.zapBack() + if not preview: + self.startServiceRef = None + self.startRoot = None + +class ChannelSelectionEdit: + def __init__(self): + self.entry_marked = False + self.movemode = False + self.bouquet_mark_edit = OFF + self.mutableList = None + self.__marked = [ ] + self.saved_title = None + self.saved_root = None + self.current_ref = None + + class ChannelSelectionEditActionMap(ActionMap): + def __init__(self, csel, contexts=[ ], actions={ }, prio=0): + ActionMap.__init__(self, contexts, actions, prio) + self.csel = csel + + def action(self, contexts, action): + if action == "cancel": + self.csel.handleEditCancel() + return 0 # fall-trough + elif action == "ok": + return 0 # fall-trough + else: + return ActionMap.action(self, contexts, action) + + self["ChannelSelectEditActions"] = ChannelSelectionEditActionMap(self, ["ChannelSelectEditActions", "OkCancelActions"], + { + "contextMenu": self.doContext, + }) + + def getMutableList(self, root=eServiceReference()): + if not self.mutableList is None: + return self.mutableList + serviceHandler = eServiceCenter.getInstance() + if not root.valid(): + root=self.getRoot() + list = root and serviceHandler.list(root) + if list is not None: + return list.startEdit() + return None + + def buildBouquetID(self, str): + tmp = str.lower() + name = '' + for c in tmp: + if (c >= 'a' and c <= 'z') or (c >= '0' and c <= '9'): + name += c + else: + name += '_' + return name + + def renameEntry(self): + cur = self.getCurrentSelection() + if cur and cur.valid(): + name = eServiceCenter.getInstance().info(cur).getName(cur) or ServiceReference(cur).getServiceName() or "" + name.replace('\xc2\x86', '').replace('\xc2\x87', '') + if name: + self.session.openWithCallback(self.renameEntryCallback, VirtualKeyBoard, title=_("Please enter new name:"), text=name) + else: + return 0 + + def renameEntryCallback(self, name): + if name: + mutableList = self.getMutableList() + if mutableList: + current = self.servicelist.getCurrent() + current.setName(name) + index = self.servicelist.getCurrentIndex() + mutableList.removeService(current) + mutableList.addService(current) + mutableList.moveService(current, index) + mutableList.flushChanges() + self.servicelist.addService(current, True) + self.servicelist.removeCurrent() + if not self.servicelist.atEnd(): + self.servicelist.moveUp() + + def addMarker(self, name): + current = self.servicelist.getCurrent() + mutableList = self.getMutableList() + cnt = 0 + while mutableList: + str = '1:64:%d:0:0:0:0:0:0:0::%s'%(cnt, name) + ref = eServiceReference(str) + if current and current.valid(): + if not mutableList.addService(ref, current): + self.servicelist.addService(ref, True) + mutableList.flushChanges() + break + elif not mutableList.addService(ref): + self.servicelist.addService(ref, True) + mutableList.flushChanges() + break + cnt+=1 + + def addAlternativeServices(self): + cur_service = ServiceReference(self.getCurrentSelection()) + root = self.getRoot() + cur_root = root and ServiceReference(root) + mutableBouquet = cur_root.list().startEdit() + if mutableBouquet: + name = cur_service.getServiceName() + print "NAME", name + if self.mode == MODE_TV: + str = '1:134:1:0:0:0:0:0:0:0:FROM BOUQUET \"alternatives.%s.tv\" ORDER BY bouquet'%(self.buildBouquetID(name)) + else: + str = '1:134:2:0:0:0:0:0:0:0:FROM BOUQUET \"alternatives.%s.radio\" ORDER BY bouquet'%(self.buildBouquetID(name)) + new_ref = ServiceReference(str) + if not mutableBouquet.addService(new_ref.ref, cur_service.ref): + mutableBouquet.removeService(cur_service.ref) + mutableBouquet.flushChanges() + eDVBDB.getInstance().reloadBouquets() + mutableAlternatives = new_ref.list().startEdit() + if mutableAlternatives: + mutableAlternatives.setListName(name) + if mutableAlternatives.addService(cur_service.ref): + print "add", cur_service.ref.toString(), "to new alternatives failed" + mutableAlternatives.flushChanges() + self.servicelist.addService(new_ref.ref, True) + self.servicelist.removeCurrent() + if not self.atEnd(): + self.servicelist.moveUp() + if cur_service.ref.toString() == self.lastservice.value: + self.saveChannel(new_ref.ref) + if self.startServiceRef and cur_service.ref == self.startServiceRef: + self.startServiceRef = new_ref.ref + else: + print "get mutable list for new created alternatives failed" + else: + print "add", str, "to", cur_root.getServiceName(), "failed" + else: + print "bouquetlist is not editable" + + def addBouquet(self, bName, services): + serviceHandler = eServiceCenter.getInstance() + mutableBouquetList = serviceHandler.list(self.bouquet_root).startEdit() + if mutableBouquetList: + if self.mode == MODE_TV: + bName += _(" (TV)") + str = '1:7:1:0:0:0:0:0:0:0:FROM BOUQUET \"userbouquet.%s.tv\" ORDER BY bouquet'%(self.buildBouquetID(bName)) + else: + bName += _(" (Radio)") + str = '1:7:2:0:0:0:0:0:0:0:FROM BOUQUET \"userbouquet.%s.radio\" ORDER BY bouquet'%(self.buildBouquetID(bName)) + new_bouquet_ref = eServiceReference(str) + if not mutableBouquetList.addService(new_bouquet_ref): + mutableBouquetList.flushChanges() + eDVBDB.getInstance().reloadBouquets() + mutableBouquet = serviceHandler.list(new_bouquet_ref).startEdit() + if mutableBouquet: + mutableBouquet.setListName(bName) + if services is not None: + for service in services: + if mutableBouquet.addService(service): + print "add", service.toString(), "to new bouquet failed" + mutableBouquet.flushChanges() + else: + print "get mutable list for new created bouquet failed" + # do some voodoo to check if current_root is equal to bouquet_root + cur_root = self.getRoot(); + str1 = cur_root and cur_root.toString() + pos1 = str1 and str1.find("FROM BOUQUET") or -1 + pos2 = self.bouquet_rootstr.find("FROM BOUQUET") + if pos1 != -1 and pos2 != -1 and str1[pos1:] == self.bouquet_rootstr[pos2:]: + self.servicelist.addService(new_bouquet_ref) + self.servicelist.resetRoot() + else: + print "add", str, "to bouquets failed" + else: + print "bouquetlist is not editable" + + def copyCurrentToBouquetList(self): + provider = ServiceReference(self.getCurrentSelection()) + providerName = provider.getServiceName() + serviceHandler = eServiceCenter.getInstance() + services = serviceHandler.list(provider.ref) + self.addBouquet(providerName, services and services.getContent('R', True)) + + def removeAlternativeServices(self): + cur_service = ServiceReference(self.getCurrentSelection()) + end = self.atEnd() + root = self.getRoot() + cur_root = root and ServiceReference(root) + list = cur_service.list() + first_in_alternative = list and list.getNext() + if first_in_alternative: + edit_root = cur_root and cur_root.list().startEdit() + if edit_root: + if not edit_root.addService(first_in_alternative, cur_service.ref): + self.servicelist.addService(first_in_alternative, True) + if cur_service.ref.toString() == self.lastservice.value: + self.saveChannel(first_in_alternative) + if self.startServiceRef and cur_service.ref == self.startServiceRef: + self.startServiceRef = first_in_alternative + else: + print "couldn't add first alternative service to current root" + else: + print "couldn't edit current root!!" + else: + print "remove empty alternative list !!" + self.removeBouquet() + if not end: + self.servicelist.moveUp() + + def removeBouquet(self): + refstr = self.getCurrentSelection().toString() + print "removeBouquet", refstr + pos = refstr.find('FROM BOUQUET "') + filename = None + if pos != -1: + refstr = refstr[pos+14:] + pos = refstr.find('"') + if pos != -1: + filename = eEnv.resolve('${sysconfdir}/enigma2/') + refstr[:pos] + self.removeCurrentService(bouquet=True) + try: + if filename is not None: + remove(filename) + except OSError: + print "error during remove of", filename + +# multiple marked entry stuff ( edit mode, later multiepg selection ) + def startMarkedEdit(self, type): + self.savedPath = self.servicePath[:] + if type == EDIT_ALTERNATIVES: + self.current_ref = self.getCurrentSelection() + self.enterPath(self.current_ref) + self.mutableList = self.getMutableList() + # add all services from the current list to internal marked set in listboxservicecontent + self.clearMarks() # this clears the internal marked set in the listboxservicecontent + self.saved_title = self.getTitle() + pos = self.saved_title.find(')') + new_title = self.saved_title[:pos+1] + if type == EDIT_ALTERNATIVES: + self.bouquet_mark_edit = EDIT_ALTERNATIVES + new_title += ' ' + _("[alternative edit]") + else: + self.bouquet_mark_edit = EDIT_BOUQUET + if config.usage.multibouquet.value: + new_title += ' ' + _("[bouquet edit]") + else: + new_title += ' ' + _("[favourite edit]") + self.setTitle(new_title) + self.__marked = self.servicelist.getRootServices() + for x in self.__marked: + self.servicelist.addMarked(eServiceReference(x)) + self["Service"].editmode = True + + def endMarkedEdit(self, abort): + if not abort and self.mutableList is not None: + new_marked = set(self.servicelist.getMarked()) + old_marked = set(self.__marked) + removed = old_marked - new_marked + added = new_marked - old_marked + changed = False + for x in removed: + changed = True + self.mutableList.removeService(eServiceReference(x)) + for x in added: + changed = True + self.mutableList.addService(eServiceReference(x)) + if changed: + if self.bouquet_mark_edit == EDIT_ALTERNATIVES and not new_marked and self.__marked: + self.mutableList.addService(eServiceReference(self.__marked[0])) + self.mutableList.flushChanges() + self.__marked = [] + self.clearMarks() + self.bouquet_mark_edit = OFF + self.mutableList = None + self.setTitle(self.saved_title) + self.saved_title = None + # self.servicePath is just a reference to servicePathTv or Radio... + # so we never ever do use the asignment operator in self.servicePath + del self.servicePath[:] # remove all elements + self.servicePath += self.savedPath # add saved elements + del self.savedPath + self.setRoot(self.servicePath[-1]) + if self.current_ref: + self.setCurrentSelection(self.current_ref) + self.current_ref = None + + def clearMarks(self): + self.servicelist.clearMarks() + + def doMark(self): + ref = self.servicelist.getCurrent() + if self.servicelist.isMarked(ref): + self.servicelist.removeMarked(ref) + else: + self.servicelist.addMarked(ref) + + def removeCurrentService(self, bouquet=False): + ref = self.servicelist.getCurrent() + mutableList = self.getMutableList() + if ref.valid() and mutableList is not None: + if not mutableList.removeService(ref): + mutableList.flushChanges() #FIXME dont flush on each single removed service + self.servicelist.removeCurrent() + self.servicelist.resetRoot() + if not bouquet and ref == self.session.nav.getCurrentlyPlayingServiceOrGroup(): + self.channelSelected(doClose=False) + + def addServiceToBouquet(self, dest, service=None): + mutableList = self.getMutableList(dest) + if not mutableList is None: + if service is None: #use current selected service + service = self.servicelist.getCurrent() + if not mutableList.addService(service): + mutableList.flushChanges() + # do some voodoo to check if current_root is equal to dest + cur_root = self.getRoot(); + str1 = cur_root and cur_root.toString() or -1 + str2 = dest.toString() + pos1 = str1.find("FROM BOUQUET") + pos2 = str2.find("FROM BOUQUET") + if pos1 != -1 and pos2 != -1 and str1[pos1:] == str2[pos2:]: + self.servicelist.addService(service) + self.servicelist.resetRoot() + + def toggleMoveMode(self, select=False): + if self.movemode: + if self.entry_marked: + self.toggleMoveMarked() # unmark current entry + self.movemode = False + self.pathChangeDisabled = False # re-enable path change + self.mutableList.flushChanges() # FIXME add check if changes was made + self.mutableList = None + self.setTitle(self.saved_title) + self.saved_title = None + self.servicelist.resetRoot() + else: + self.mutableList = self.getMutableList() + self.movemode = True + select and self.toggleMoveMarked() + self.pathChangeDisabled = True # no path change allowed in movemode + self.saved_title = self.getTitle() + pos = self.saved_title.find(')') + self.setTitle(self.saved_title[:pos+1] + ' ' + _("[move mode]") + self.saved_title[pos+1:]); + self["Service"].editmode = True + + def handleEditCancel(self): + if self.movemode: #movemode active? + self.toggleMoveMode() # disable move mode + elif self.bouquet_mark_edit != OFF: + self.endMarkedEdit(True) # abort edit mode + + def toggleMoveMarked(self): + if self.entry_marked: + self.servicelist.setCurrentMarked(False) + self.entry_marked = False + else: + self.servicelist.setCurrentMarked(True) + self.entry_marked = True + + def doContext(self): + self.session.openWithCallback(self.exitContext, ChannelContextMenu, self) + + def exitContext(self, close=False): + if close: + self.cancel() + +MODE_TV = 0 +MODE_RADIO = 1 + +# type 1 = digital television service +# type 4 = nvod reference service (NYI) +# type 17 = MPEG-2 HD digital television service +# type 22 = advanced codec SD digital television +# type 24 = advanced codec SD NVOD reference service (NYI) +# type 25 = advanced codec HD digital television +# type 27 = advanced codec HD NVOD reference service (NYI) +# type 2 = digital radio sound service +# type 10 = advanced codec digital radio sound service + +service_types_tv = '1:7:1:0:0:0:0:0:0:0:(type == 1) || (type == 17) || (type == 22) || (type == 25) || (type == 134) || (type == 195)' +service_types_radio = '1:7:2:0:0:0:0:0:0:0:(type == 2) || (type == 10)' + +class ChannelSelectionBase(Screen): + def __init__(self, session): + Screen.__init__(self, session) + + self["key_red"] = Button(_("All")) + self["key_green"] = Button(_("Satellites")) + self["key_yellow"] = Button(_("Provider")) + self["key_blue"] = Button(_("Favourites")) + + self["list"] = ServiceList(self) + self.servicelist = self["list"] + + self.numericalTextInput = NumericalTextInput(handleTimeout=False) + self.numericalTextInput.setUseableChars(u'1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ') + + self.servicePathTV = [ ] + self.servicePathRadio = [ ] + self.servicePath = [ ] + self.history = [ ] + self.rootChanged = False + self.startRoot = None + self.zapNumber = "" + self.clearZapNumberTimer = eTimer() + self.clearZapNumberTimer.callback.append(self.clearZapNumber) + + self.mode = MODE_TV + self.dopipzap = False + + self.pathChangeDisabled = False + + self["ChannelSelectBaseActions"] = NumberActionMap(["ChannelSelectBaseActions", "NumberActions", "InputAsciiActions"], + { + "showFavourites": self.showFavourites, + "showAllServices": self.showAllServices, + "showProviders": self.showProviders, + "showSatellites": self.showSatellites, + "nextBouquet": self.nextBouquet, + "prevBouquet": self.prevBouquet, + "nextMarker": self.nextMarker, + "prevMarker": self.prevMarker, + "gotAsciiCode": self.keyAsciiCode, + "keyLeft": self.keyLeft, + "keyRight": self.keyRight, + "1": self.keyNumberGlobal, + "2": self.keyNumberGlobal, + "3": self.keyNumberGlobal, + "4": self.keyNumberGlobal, + "5": self.keyNumberGlobal, + "6": self.keyNumberGlobal, + "7": self.keyNumberGlobal, + "8": self.keyNumberGlobal, + "9": self.keyNumberGlobal, + "0": self.keyNumber0 + }, -2) + self.maintitle = _("Channel selection") + self.recallBouquetMode() + + def getBouquetNumOffset(self, bouquet): + if not config.usage.multibouquet.value: + return 0 + str = bouquet.toString() + offset = 0 + if 'userbouquet.' in bouquet.toCompareString(): + serviceHandler = eServiceCenter.getInstance() + servicelist = serviceHandler.list(bouquet) + if not servicelist is None: + while True: + serviceIterator = servicelist.getNext() + if not serviceIterator.valid(): #check if end of list + break + number = serviceIterator.getChannelNum() + if number > 0: + offset = number - 1 + break + return offset + + def recallBouquetMode(self): + if self.mode == MODE_TV: + self.service_types = service_types_tv + if config.usage.multibouquet.value: + self.bouquet_rootstr = '1:7:1:0:0:0:0:0:0:0:FROM BOUQUET "bouquets.tv" ORDER BY bouquet' + else: + self.bouquet_rootstr = '%s FROM BOUQUET "userbouquet.favourites.tv" ORDER BY bouquet'%(self.service_types) + else: + self.service_types = service_types_radio + if config.usage.multibouquet.value: + self.bouquet_rootstr = '1:7:1:0:0:0:0:0:0:0:FROM BOUQUET "bouquets.radio" ORDER BY bouquet' + else: + self.bouquet_rootstr = '%s FROM BOUQUET "userbouquet.favourites.radio" ORDER BY bouquet'%(self.service_types) + self.bouquet_root = eServiceReference(self.bouquet_rootstr) + + def setTvMode(self): + self.mode = MODE_TV + self.servicePath = self.servicePathTV + self.recallBouquetMode() + title = self.maintitle + pos = title.find(" (") + if pos != -1: + title = title[:pos] + title += _(" (TV)") + self.setTitle(title) + + def setRadioMode(self): + self.mode = MODE_RADIO + self.servicePath = self.servicePathRadio + self.recallBouquetMode() + title = self.maintitle + pos = title.find(" (") + if pos != -1: + title = title[:pos] + title += _(" (Radio)") + self.setTitle(title) + + def setRoot(self, root, justSet=False): + if self.startRoot is None: + self.startRoot = self.getRoot() + path = root.getPath() + isBouquet = 'FROM BOUQUET' in path and (root.flags & eServiceReference.isDirectory) + inBouquetRootList = 'FROM BOUQUET "bouquets.' in path #FIXME HACK + if not inBouquetRootList and isBouquet: + self.servicelist.setMode(ServiceList.MODE_FAVOURITES) + else: + self.servicelist.setMode(ServiceList.MODE_NORMAL) + self.servicelist.setRoot(root, justSet) + self.rootChanged = True + self.buildTitleString() + + def removeModeStr(self, str): + if self.mode == MODE_TV: + pos = str.find(_(" (TV)")) + else: + pos = str.find(_(" (Radio)")) + if pos != -1: + return str[:pos] + return str + + def getServiceName(self, ref): + str = self.removeModeStr(ServiceReference(ref).getServiceName()) + if 'User - bouquets' in str: + return _("User - bouquets") + if not str: + pathstr = ref.getPath() + if 'FROM PROVIDERS' in pathstr: + return _("Provider") + if 'FROM SATELLITES' in pathstr: + return _("Satellites") + if ') ORDER BY name' in pathstr: + return _("All") + return str + + def buildTitleString(self): + titleStr = self.getTitle() + pos = titleStr.find(']') + if pos == -1: + pos = titleStr.find(')') + if pos != -1: + titleStr = titleStr[:pos+1] + Len = len(self.servicePath) + if Len > 0: + base_ref = self.servicePath[0] + if Len > 1: + end_ref = self.servicePath[Len-1] + else: + end_ref = None + nameStr = self.getServiceName(base_ref) + titleStr += ' - ' + nameStr + if end_ref is not None: + if Len > 2: + titleStr += '/../' + else: + titleStr += '/' + nameStr = self.getServiceName(end_ref) + titleStr += nameStr + self.setTitle(titleStr) + + def moveUp(self): + self.servicelist.moveUp() + + def moveDown(self): + self.servicelist.moveDown() + + def clearPath(self): + del self.servicePath[:] + + def enterPath(self, ref, justSet=False): + self.servicePath.append(ref) + self.setRoot(ref, justSet) + + def enterUserbouquet(self, root, save_root=True): + self.clearPath() + self.recallBouquetMode() + if self.bouquet_root: + self.enterPath(self.bouquet_root) + self.enterPath(root) + self.startRoot = None + if save_root: + self.saveRoot() + + def pathUp(self, justSet=False): + prev = self.servicePath.pop() + if self.servicePath: + current = self.servicePath[-1] + self.setRoot(current, justSet) + if not justSet: + self.setCurrentSelection(prev) + return prev + + def isBasePathEqual(self, ref): + if len(self.servicePath) > 1 and self.servicePath[0] == ref: + return True + return False + + def isPrevPathEqual(self, ref): + length = len(self.servicePath) + if length > 1 and self.servicePath[length-2] == ref: + return True + return False + + def preEnterPath(self, refstr): + return False + + def showAllServices(self): + if not self.pathChangeDisabled: + refstr = '%s ORDER BY name'%(self.service_types) + if not self.preEnterPath(refstr): + ref = eServiceReference(refstr) + currentRoot = self.getRoot() + if currentRoot is None or currentRoot != ref: + self.clearPath() + self.enterPath(ref) + self.setCurrentSelectionAlternative(self.session.nav.getCurrentlyPlayingServiceOrGroup()) + + def showSatellites(self): + if not self.pathChangeDisabled: + refstr = '%s FROM SATELLITES ORDER BY satellitePosition'%(self.service_types) + if not self.preEnterPath(refstr): + ref = eServiceReference(refstr) + justSet=False + prev = None + + if self.isBasePathEqual(ref): + if self.isPrevPathEqual(ref): + justSet=True + prev = self.pathUp(justSet) + else: + currentRoot = self.getRoot() + if currentRoot is None or currentRoot != ref: + justSet=True + self.clearPath() + self.enterPath(ref, True) + if justSet: + serviceHandler = eServiceCenter.getInstance() + servicelist = serviceHandler.list(ref) + if not servicelist is None: + while True: + service = servicelist.getNext() + if not service.valid(): #check if end of list + break + unsigned_orbpos = service.getUnsignedData(4) >> 16 + orbpos = service.getData(4) >> 16 + if orbpos < 0: + orbpos += 3600 + if "FROM PROVIDER" in service.getPath(): + service_type = _("Providers") + elif ("flags == %d" %(FLAG_SERVICE_NEW_FOUND)) in service.getPath(): + service_type = _("New") + else: + service_type = _("Services") + try: + # why we need this cast? + service_name = str(nimmanager.getSatDescription(orbpos)) + except: + if unsigned_orbpos == 0xFFFF: #Cable + service_name = _("Cable") + elif unsigned_orbpos == 0xEEEE: #Terrestrial + service_name = _("Terrestrial") + else: + if orbpos > 1800: # west + orbpos = 3600 - orbpos + h = _("W") + else: + h = _("E") + service_name = ("%d.%d" + h) % (orbpos / 10, orbpos % 10) + service.setName("%s - %s" % (service_name, service_type)) + self.servicelist.addService(service) + cur_ref = self.session.nav.getCurrentlyPlayingServiceReference() + if cur_ref: + pos = self.service_types.rfind(':') + refstr = '%s (channelID == %08x%04x%04x) && %s ORDER BY name' %(self.service_types[:pos+1], + cur_ref.getUnsignedData(4), # NAMESPACE + cur_ref.getUnsignedData(2), # TSID + cur_ref.getUnsignedData(3), # ONID + self.service_types[pos+1:]) + ref = eServiceReference(refstr) + ref.setName(_("Current transponder")) + self.servicelist.addService(ref) + self.servicelist.finishFill() + if prev is not None: + self.setCurrentSelection(prev) + elif cur_ref: + refstr = cur_ref.toString() + op = "".join(refstr.split(':', 10)[6:7]) + if len(op) >= 4: + hop = int(op[:-4],16) + if len(op) >= 7 and not op.endswith('0000'): + op = op[:-4] + '0000' + refstr = '1:7:0:0:0:0:%s:0:0:0:(satellitePosition == %s) && %s ORDER BY name' % (op, hop, self.service_types[self.service_types.rfind(':')+1:]) + self.setCurrentSelectionAlternative(eServiceReference(refstr)) + + def showProviders(self): + if not self.pathChangeDisabled: + refstr = '%s FROM PROVIDERS ORDER BY name'%(self.service_types) + if not self.preEnterPath(refstr): + ref = eServiceReference(refstr) + if self.isBasePathEqual(ref): + self.pathUp() + else: + currentRoot = self.getRoot() + if currentRoot is None or currentRoot != ref: + self.clearPath() + self.enterPath(ref) + service = self.session.nav.getCurrentService() + if service: + info = service.info() + if info: + provider = info.getInfoString(iServiceInformation.sProvider) + refstr = '1:7:0:0:0:0:0:0:0:0:(provider == \"%s\") && %s ORDER BY name:%s' % (provider, self.service_types[self.service_types.rfind(':')+1:],provider) + self.setCurrentSelectionAlternative(eServiceReference(refstr)) + + def changeBouquet(self, direction): + if not self.pathChangeDisabled: + if len(self.servicePath) > 1: + #when enter satellite root list we must do some magic stuff.. + ref = eServiceReference('%s FROM SATELLITES ORDER BY satellitePosition'%(self.service_types)) + if self.isBasePathEqual(ref): + self.showSatellites() + else: + self.pathUp() + if direction < 0: + self.moveUp() + else: + self.moveDown() + ref = self.getCurrentSelection() + self.enterPath(ref) + + def inBouquet(self): + if self.servicePath and self.servicePath[0] == self.bouquet_root: + return True + return False + + def atBegin(self): + return self.servicelist.atBegin() + + def atEnd(self): + return self.servicelist.atEnd() + + def nextBouquet(self): + if self.shown and config.usage.oldstyle_channel_select_controls.value: + self.servicelist.instance.moveSelection(self.servicelist.instance.pageUp) + elif "reverseB" in config.usage.servicelist_cursor_behavior.value: + self.changeBouquet(-1) + else: + self.changeBouquet(+1) + + def prevBouquet(self): + if self.shown and config.usage.oldstyle_channel_select_controls.value: + self.servicelist.instance.moveSelection(self.servicelist.instance.pageDown) + elif "reverseB" in config.usage.servicelist_cursor_behavior.value: + self.changeBouquet(+1) + else: + self.changeBouquet(-1) + + def keyLeft(self): + if config.usage.oldstyle_channel_select_controls.value: + self.changeBouquet(-1) + else: + self.servicelist.instance.moveSelection(self.servicelist.instance.pageUp) + + def keyRight(self): + if config.usage.oldstyle_channel_select_controls.value: + self.changeBouquet(+1) + else: + self.servicelist.instance.moveSelection(self.servicelist.instance.pageDown) + + def showFavourites(self): + if not self.pathChangeDisabled: + if not self.preEnterPath(self.bouquet_rootstr): + if self.isBasePathEqual(self.bouquet_root): + self.pathUp() + else: + currentRoot = self.getRoot() + if currentRoot is None or currentRoot != self.bouquet_root: + self.clearPath() + self.enterPath(self.bouquet_root) + + def keyNumber0(self, number): + if len(self.servicePath) > 1 and not self.zapNumber: + self.keyGoUp() + else: + self.keyNumberGlobal(number) + + def keyNumberGlobal(self, number): + if self.isBasePathEqual(self.bouquet_root): + self.numberZapActions(number) + else: + current_root = self.getRoot() + if current_root and 'FROM BOUQUET "bouquets.' in current_root.getPath(): + self.numberZapActions(number) + else: + unichar = self.numericalTextInput.getKey(number) + charstr = unichar.encode("utf-8") + if len(charstr) == 1: + self.servicelist.moveToChar(charstr[0]) + + def numberZapActions(self, number): + if not self.movemode: + if len(self.zapNumber)>4: + self.clearZapNumber() + self.zapNumber = self.zapNumber + str(number) + ref, bouquet = Screens.InfoBar.InfoBar.instance.searchNumber(int(self.zapNumber), bouquet=self.getRoot()) + if ref: + if not ref.flags & eServiceReference.isMarker: + self.enterUserbouquet(bouquet, save_root=False) + self.servicelist.setCurrent(ref) + self.clearZapNumberTimer.start(1000, True) + else: + self.clearZapNumber() + + def clearZapNumber(self): + self.clearZapNumberTimer.stop() + self.zapNumber = "" + + def keyAsciiCode(self): + unichar = unichr(getPrevAsciiCode()) + charstr = unichar.encode("utf-8") + if len(charstr) == 1: + self.servicelist.moveToChar(charstr[0]) + + def getRoot(self): + return self.servicelist.getRoot() + + def getCurrentSelection(self): + return self.servicelist.getCurrent() + + def setCurrentSelection(self, service): + if service: + self.servicelist.setCurrent(service, adjust=False) + + def setCurrentSelectionAlternative(self, ref): + if self.bouquet_mark_edit == EDIT_ALTERNATIVES and not (ref.flags & eServiceReference.isDirectory): + for markedService in self.servicelist.getMarked(): + markedService = eServiceReference(markedService) + self.setCurrentSelection(markedService) + if markedService == self.getCurrentSelection(): + return + self.setCurrentSelection(ref) + + def getBouquetList(self): + bouquets = [ ] + serviceHandler = eServiceCenter.getInstance() + if config.usage.multibouquet.value: + list = serviceHandler.list(self.bouquet_root) + if list: + while True: + s = list.getNext() + if not s.valid(): + break + if s.flags & eServiceReference.isDirectory: + info = serviceHandler.info(s) + if info: + bouquets.append((info.getName(s), s)) + return bouquets + else: + info = serviceHandler.info(self.bouquet_root) + if info: + bouquets.append((info.getName(self.bouquet_root), self.bouquet_root)) + return bouquets + return None + + def keyGoUp(self): + if len(self.servicePath) > 1: + if self.isBasePathEqual(self.bouquet_root): + self.showFavourites() + else: + ref = eServiceReference('%s FROM SATELLITES ORDER BY satellitePosition'%(self.service_types)) + if self.isBasePathEqual(ref): + self.showSatellites() + else: + ref = eServiceReference('%s FROM PROVIDERS ORDER BY name'%(self.service_types)) + if self.isBasePathEqual(ref): + self.showProviders() + else: + self.showAllServices() + + def nextMarker(self): + self.servicelist.moveToNextMarker() + + def prevMarker(self): + self.servicelist.moveToPrevMarker() + + def gotoCurrentServiceOrProvider(self, ref): + str = ref.toString() + if _("Providers") in str: + service = self.session.nav.getCurrentService() + if service: + info = service.info() + if info: + provider = info.getInfoString(iServiceInformation.sProvider) + op = int(self.session.nav.getCurrentlyPlayingServiceOrGroup().toString().split(':')[6][:-4] or "0",16) + refstr = '1:7:0:0:0:0:0:0:0:0:(provider == \"%s\") && (satellitePosition == %s) && %s ORDER BY name:%s' % (provider, op, self.service_types[self.service_types.rfind(':')+1:],provider) + self.servicelist.setCurrent(eServiceReference(refstr)) + elif not self.isBasePathEqual(self.bouquet_root) or self.bouquet_mark_edit == EDIT_ALTERNATIVES: + self.setCurrentSelectionAlternative(self.session.nav.getCurrentlyPlayingServiceOrGroup()) + +HISTORYSIZE = 20 + +#config for lastservice +config.tv = ConfigSubsection() +config.tv.lastservice = ConfigText() +config.tv.lastroot = ConfigText() +config.radio = ConfigSubsection() +config.radio.lastservice = ConfigText() +config.radio.lastroot = ConfigText() +config.servicelist = ConfigSubsection() +config.servicelist.lastmode = ConfigText(default = "tv") +config.servicelist.startupservice = ConfigText() +config.servicelist.startuproot = ConfigText() +config.servicelist.startupmode = ConfigText(default = "tv") + +class ChannelSelection(ChannelSelectionBase, ChannelSelectionEdit, ChannelSelectionEPG, SelectionEventInfo): + def __init__(self, session): + ChannelSelectionBase.__init__(self,session) + ChannelSelectionEdit.__init__(self) + ChannelSelectionEPG.__init__(self) + SelectionEventInfo.__init__(self) + + self["actions"] = ActionMap(["OkCancelActions", "TvRadioActions"], + { + "cancel": self.cancel, + "ok": self.channelSelected, + "keyRadio": self.doRadioButton, + "keyTV": self.doTVButton, + }) + + self.__event_tracker = ServiceEventTracker(screen=self, eventmap= + { + iPlayableService.evStart: self.__evServiceStart, + iPlayableService.evEnd: self.__evServiceEnd + }) + + self.startServiceRef = None + + self.history = [ ] + self.history_pos = 0 + + if config.servicelist.startupservice.value and config.servicelist.startuproot.value: + config.servicelist.lastmode.value = config.servicelist.startupmode.value + if config.servicelist.lastmode.value == "tv": + config.tv.lastservice.value = config.servicelist.startupservice.value + config.tv.lastroot.value = config.servicelist.startuproot.value + elif config.servicelist.lastmode.value == "radio": + config.radio.lastservice.value = config.servicelist.startupservice.value + config.radio.lastroot.value = config.servicelist.startuproot.value + + self.lastservice = config.tv.lastservice + self.lastroot = config.tv.lastroot + self.revertMode = None + config.usage.multibouquet.addNotifier(self.multibouquet_config_changed) + self.new_service_played = False + self.dopipzap = False + self.onExecBegin.append(self.asciiOn) + self.mainScreenMode = None + self.mainScreenRoot = None + + self.lastChannelRootTimer = eTimer() + self.lastChannelRootTimer.callback.append(self.__onCreate) + self.lastChannelRootTimer.start(100,True) + self.pipzaptimer = eTimer() + + def asciiOn(self): + rcinput = eRCInput.getInstance() + rcinput.setKeyboardMode(rcinput.kmAscii) + + def asciiOff(self): + rcinput = eRCInput.getInstance() + rcinput.setKeyboardMode(rcinput.kmNone) + + def multibouquet_config_changed(self, val): + self.recallBouquetMode() + + def __evServiceStart(self): + if self.dopipzap and hasattr(self.session, 'pip'): + self.servicelist.setPlayableIgnoreService(self.session.pip.getCurrentServiceReference() or eServiceReference()) + else: + service = self.session.nav.getCurrentService() + if service: + info = service.info() + if info: + refstr = info.getInfoString(iServiceInformation.sServiceref) + self.servicelist.setPlayableIgnoreService(eServiceReference(refstr)) + + def __evServiceEnd(self): + self.servicelist.setPlayableIgnoreService(eServiceReference()) + + def setMode(self): + self.rootChanged = True + self.restoreRoot() + lastservice = eServiceReference(self.lastservice.value) + if lastservice.valid(): + self.setCurrentSelection(lastservice) + + def doTVButton(self): + if self.mode == MODE_TV: + self.channelSelected(doClose = False) + else: + self.setModeTv() + + def setModeTv(self): + if self.revertMode is None: + self.revertMode = self.mode + self.lastservice = config.tv.lastservice + self.lastroot = config.tv.lastroot + config.servicelist.lastmode.value = "tv" + self.setTvMode() + self.setMode() + + def doRadioButton(self): + if self.mode == MODE_RADIO: + self.channelSelected(doClose=False) + else: + self.setModeRadio() + + def setModeRadio(self): + if self.revertMode is None: + self.revertMode = self.mode + if config.usage.e1like_radio_mode.value: + self.lastservice = config.radio.lastservice + self.lastroot = config.radio.lastroot + config.servicelist.lastmode.value = "radio" + self.setRadioMode() + self.setMode() + + def __onCreate(self): + if config.usage.e1like_radio_mode.value: + if config.servicelist.lastmode.value == "tv": + self.setModeTv() + else: + self.setModeRadio() + else: + self.setModeTv() + lastservice = eServiceReference(self.lastservice.value) + if lastservice.valid(): + self.zap() + + def channelSelected(self, doClose = True): + if self.startServiceRef is None and not doClose: + self.startServiceRef = self.session.nav.getCurrentlyPlayingServiceOrGroup() + ref = self.getCurrentSelection() + if self.movemode: + self.toggleMoveMarked() + elif (ref.flags & eServiceReference.flagDirectory) == eServiceReference.flagDirectory: + self.enterPath(ref) + self.gotoCurrentServiceOrProvider(ref) + elif self.bouquet_mark_edit != OFF: + if not (self.bouquet_mark_edit == EDIT_ALTERNATIVES and ref.flags & eServiceReference.isGroup): + self.doMark() + elif not (ref.flags & eServiceReference.isMarker or ref.type == -1): + root = self.getRoot() + if not root or not (root.flags & eServiceReference.isGroup): + self.zap(enable_pipzap=doClose, preview_zap=not doClose) + self.asciiOff() + if doClose: + if self.dopipzap: + self.zapBack() + self.startServiceRef = None + self.startRoot = None + self.correctChannelNumber() + self.close(ref) + + def togglePipzap(self): + assert(self.session.pip) + title = self.instance.getTitle() + pos = title.find(" (") + if pos != -1: + title = title[:pos] + if self.dopipzap: + # Mark PiP as inactive and effectively deactivate pipzap + self.hidePipzapMessage() + self.dopipzap = False + + # Disable PiP if not playing a service + if self.session.pip.pipservice is None: + self.session.pipshown = False + del self.session.pip + self.__evServiceStart() + # Move to playing service + lastservice = eServiceReference(self.lastservice.value) + if lastservice.valid() and self.getCurrentSelection() != lastservice: + self.setCurrentSelection(lastservice) + + title += _(" (TV)") + else: + # Mark PiP as active and effectively active pipzap + self.showPipzapMessage() + self.dopipzap = True + self.__evServiceStart() + # Move to service playing in pip (will not work with subservices) + self.setCurrentSelection(self.session.pip.getCurrentService()) + + title += _(" (PiP)") + self.setTitle(title) + self.buildTitleString() + + def showPipzapMessage(self): + time = config.usage.infobar_timeout.index + if time: + self.pipzaptimer.callback.append(self.hidePipzapMessage) + self.pipzaptimer.startLongTimer(time) + self.session.pip.active() + + def hidePipzapMessage(self): + if self.pipzaptimer.isActive(): + self.pipzaptimer.callback.remove(self.hidePipzapMessage) + self.pipzaptimer.stop() + self.session.pip.inactive() + + #called from infoBar and channelSelected + def zap(self, enable_pipzap=False, preview_zap=False, checkParentalControl=True, ref=None): + self.curRoot = self.startRoot + nref = ref or self.getCurrentSelection() + ref = self.session.nav.getCurrentlyPlayingServiceOrGroup() + if enable_pipzap and self.dopipzap: + ref = self.session.pip.getCurrentService() + if ref is None or ref != nref: + nref = self.session.pip.resolveAlternatePipService(nref) + if nref and (not checkParentalControl or Components.ParentalControl.parentalControl.isServicePlayable(nref, boundFunction(self.zap, enable_pipzap=True, checkParentalControl=False))): + self.session.pip.playService(nref) + self.__evServiceStart() + self.showPipzapMessage() + else: + self.setStartRoot(self.curRoot) + self.setCurrentSelection(ref) + elif ref is None or ref != nref: + Screens.InfoBar.InfoBar.instance.checkTimeshiftRunning(boundFunction(self.zapCheckTimeshiftCallback, enable_pipzap, preview_zap, nref)) + elif not preview_zap: + self.saveRoot() + self.saveChannel(nref) + config.servicelist.lastmode.save() + self.setCurrentSelection(nref) + if self.startServiceRef is None or nref != self.startServiceRef: + self.addToHistory(nref) + self.rootChanged = False + self.revertMode = None + + def zapCheckTimeshiftCallback(self, enable_pipzap, preview_zap, nref, answer): + if answer: + self.new_service_played = True + self.session.nav.playService(nref) + if not preview_zap: + self.saveRoot() + self.saveChannel(nref) + config.servicelist.lastmode.save() + if self.startServiceRef is None or nref != self.startServiceRef: + self.addToHistory(nref) + if self.dopipzap: + self.setCurrentSelection(self.session.pip.getCurrentService()) + else: + self.mainScreenMode = config.servicelist.lastmode.value + self.mainScreenRoot = self.getRoot() + self.revertMode = None + else: + Notifications.RemovePopup("Parental control") + self.setCurrentSelection(nref) + else: + self.setStartRoot(self.curRoot) + self.setCurrentSelection(self.session.nav.getCurrentlyPlayingServiceOrGroup()) + if not preview_zap: + self.hide() + + def newServicePlayed(self): + ret = self.new_service_played + self.new_service_played = False + return ret + + def addToHistory(self, ref): + if self.servicePath is not None: + tmp=self.servicePath[:] + tmp.append(ref) + try: + del self.history[self.history_pos+1:] + except: + pass + self.history.append(tmp) + hlen = len(self.history) + if hlen > HISTORYSIZE: + del self.history[0] + hlen -= 1 + self.history_pos = hlen-1 + + def historyBack(self): + hlen = len(self.history) + currentPlayedRef = self.session.nav.getCurrentlyPlayingServiceOrGroup() + if hlen > 0 and self.history[self.history_pos][-1] != currentPlayedRef: + self.addToHistory(currentPlayedRef) + hlen = len(self.history) + if hlen > 1 and self.history_pos > 0: + self.history_pos -= 1 + self.setHistoryPath() + + def historyNext(self): + hlen = len(self.history) + if hlen > 1 and self.history_pos < (hlen-1): + self.history_pos += 1 + self.setHistoryPath() + + def setHistoryPath(self, doZap=True): + path = self.history[self.history_pos][:] + ref = path.pop() + del self.servicePath[:] + self.servicePath += path + self.saveRoot() + root = path[-1] + cur_root = self.getRoot() + if cur_root and cur_root != root: + self.setRoot(root) + if doZap: + self.session.nav.playService(ref) + if self.dopipzap: + self.setCurrentSelection(self.session.pip.getCurrentService()) + else: + self.setCurrentSelection(ref) + self.saveChannel(ref) + + def saveRoot(self): + path = '' + for i in self.servicePath: + path += i.toString() + path += ';' + if path and path != self.lastroot.value: + if self.mode == MODE_RADIO and 'FROM BOUQUET "bouquets.tv"' in path: + self.setModeTv() + elif 'FROM BOUQUET "bouquets.radio"' in path: + self.setModeRadio() + self.lastroot.value = path + self.lastroot.save() + + def restoreRoot(self): + tmp = [x for x in self.lastroot.value.split(';') if x != ''] + current = [x.toString() for x in self.servicePath] + if tmp != current or self.rootChanged: + self.clearPath() + cnt = 0 + for i in tmp: + self.servicePath.append(eServiceReference(i)) + cnt += 1 + if cnt: + path = self.servicePath.pop() + self.enterPath(path) + else: + self.showFavourites() + self.saveRoot() + self.rootChanged = False + + def preEnterPath(self, refstr): + if self.servicePath and self.servicePath[0] != eServiceReference(refstr): + pathstr = self.lastroot.value + if pathstr is not None and refstr in pathstr: + self.restoreRoot() + lastservice = eServiceReference(self.lastservice.value) + if lastservice.valid(): + self.setCurrentSelection(lastservice) + return True + return False + + def saveChannel(self, ref): + if ref is not None: + refstr = ref.toString() + else: + refstr = "" + if refstr != self.lastservice.value: + self.lastservice.value = refstr + self.lastservice.save() + + def setCurrentServicePath(self, path, doZap=True): + if self.history: + self.history[self.history_pos] = path + else: + self.history.append(path) + self.setHistoryPath(doZap) + + def getCurrentServicePath(self): + if self.history: + return self.history[self.history_pos] + return None + + def recallPrevService(self): + hlen = len(self.history) + currentPlayedRef = self.session.nav.getCurrentlyPlayingServiceOrGroup() + if hlen > 0 and self.history[self.history_pos][-1] != currentPlayedRef: + self.addToHistory(currentPlayedRef) + hlen = len(self.history) + if hlen > 1: + if self.history_pos == hlen-1: + tmp = self.history[self.history_pos] + self.history[self.history_pos] = self.history[self.history_pos-1] + self.history[self.history_pos-1] = tmp + else: + tmp = self.history[self.history_pos+1] + self.history[self.history_pos+1] = self.history[self.history_pos] + self.history[self.history_pos] = tmp + self.setHistoryPath() + + def cancel(self): + if self.revertMode is None: + self.restoreRoot() + if self.dopipzap: + # This unfortunately won't work with subservices + self.setCurrentSelection(self.session.pip.getCurrentService()) + else: + lastservice = eServiceReference(self.lastservice.value) + if lastservice.valid() and self.getCurrentSelection() != lastservice: + self.setCurrentSelection(lastservice) + self.asciiOff() + self.zapBack() + self.correctChannelNumber() + self.close(None) + + def zapBack(self): + if self.startServiceRef and self.session.nav.getCurrentlyPlayingServiceOrGroup() != self.startServiceRef: + self.setStartRoot(self.startRoot) + self.new_service_played = True + self.session.nav.playService(self.startServiceRef) + self.saveChannel(self.startServiceRef) + self.startServiceRef = None + self.startRoot = None + if self.dopipzap: + # This unfortunately won't work with subservices + self.setCurrentSelection(self.session.pip.getCurrentService()) + + def setStartRoot(self, root): + if root: + if self.revertMode == MODE_TV: + self.setModeTv() + elif self.revertMode == MODE_RADIO: + self.setModeRadio() + self.revertMode = None + self.enterUserbouquet(root) + + def correctChannelNumber(self): + current_ref = self.session.nav.getCurrentlyPlayingServiceOrGroup() + if self.dopipzap: + tmp_mode = config.servicelist.lastmode.value + tmp_root = self.getRoot() + tmp_ref = self.getCurrentSelection() + if self.mainScreenMode == "tv": + self.setModeTv() + elif self.mainScreenMode == "radio": + self.setModeRadio() + if self.mainScreenRoot: + self.setRoot(self.mainScreenRoot) + self.setCurrentSelection(current_ref) + selected_ref = self.getCurrentSelection() + if selected_ref and current_ref and selected_ref.getChannelNum() != current_ref.getChannelNum(): + oldref = self.session.nav.currentlyPlayingServiceReference + if oldref and selected_ref == oldref or (oldref != current_ref and selected_ref == current_ref): + self.session.nav.currentlyPlayingServiceOrGroup = selected_ref + from Components.Renderer.ChannelNumber import doRenumber + doRenumber() + if self.dopipzap: + if tmp_mode == "tv": + self.setModeTv() + elif tmp_mode == "radio": + self.setModeRadio() + self.enterUserbouquet(tmp_root) + pip_ref = self.session.pip.getCurrentService() + if tmp_ref and pip_ref and tmp_ref.getChannelNum() != pip_ref.getChannelNum(): + self.session.pip.currentService = tmp_ref + self.setCurrentSelection(tmp_ref) + +class RadioInfoBar(Screen): + def __init__(self, session): + Screen.__init__(self, session) + self["RdsDecoder"] = RdsDecoder(self.session.nav) + +class ChannelSelectionRadio(ChannelSelectionBase, ChannelSelectionEdit, ChannelSelectionEPG, InfoBarBase): + ALLOW_SUSPEND = True + + def __init__(self, session, infobar): + ChannelSelectionBase.__init__(self, session) + ChannelSelectionEdit.__init__(self) + ChannelSelectionEPG.__init__(self) + InfoBarBase.__init__(self) + self.infobar = infobar + self.startServiceRef = None + self.onLayoutFinish.append(self.onCreate) + + self.info = session.instantiateDialog(RadioInfoBar) # our simple infobar + + self["actions"] = ActionMap(["OkCancelActions", "TvRadioActions"], + { + "keyTV": self.cancel, + "keyRadio": self.cancel, + "cancel": self.cancel, + "ok": self.channelSelected, + }) + + self.__event_tracker = ServiceEventTracker(screen=self, eventmap= + { + iPlayableService.evStart: self.__evServiceStart, + iPlayableService.evEnd: self.__evServiceEnd + }) + +########## RDS Radiotext / Rass Support BEGIN + self.infobar = infobar # reference to real infobar (the one and only) + self["RdsDecoder"] = self.info["RdsDecoder"] + self["RdsActions"] = HelpableActionMap(self, "InfobarRdsActions", + { + "startRassInteractive": (self.startRassInteractive, _("View Rass interactive...")) + },-1) + self["RdsActions"].setEnabled(False) + infobar.rds_display.onRassInteractivePossibilityChanged.append(self.RassInteractivePossibilityChanged) + self.onClose.append(self.__onClose) + self.onExecBegin.append(self.__onExecBegin) + self.onExecEnd.append(self.__onExecEnd) + + def __onClose(self): + lastservice = eServiceReference(config.tv.lastservice.value) + self.session.nav.playService(lastservice) + + def startRassInteractive(self): + self.info.hide(); + self.infobar.rass_interactive = self.session.openWithCallback(self.RassInteractiveClosed, RassInteractive) + + def RassInteractiveClosed(self): + self.info.show() + self.infobar.rass_interactive = None + self.infobar.RassSlidePicChanged() + + def RassInteractivePossibilityChanged(self, state): + self["RdsActions"].setEnabled(state) +########## RDS Radiotext / Rass Support END + + def __onExecBegin(self): + self.info.show() + + def __onExecEnd(self): + self.info.hide() + + def cancel(self): + self.infobar.rds_display.onRassInteractivePossibilityChanged.remove(self.RassInteractivePossibilityChanged) + self.info.hide() + #set previous tv service + self.close(None) + + def __evServiceStart(self): + service = self.session.nav.getCurrentService() + if service: + info = service.info() + if info: + refstr = info.getInfoString(iServiceInformation.sServiceref) + self.servicelist.setPlayableIgnoreService(eServiceReference(refstr)) + + def __evServiceEnd(self): + self.servicelist.setPlayableIgnoreService(eServiceReference()) + + def saveRoot(self): + path = '' + for i in self.servicePathRadio: + path += i.toString() + path += ';' + if path and path != config.radio.lastroot.value: + config.radio.lastroot.value = path + config.radio.lastroot.save() + + def restoreRoot(self): + tmp = [x for x in config.radio.lastroot.value.split(';') if x != ''] + current = [x.toString() for x in self.servicePath] + if tmp != current or self.rootChanged: + cnt = 0 + for i in tmp: + self.servicePathRadio.append(eServiceReference(i)) + cnt += 1 + if cnt: + path = self.servicePathRadio.pop() + self.enterPath(path) + else: + self.showFavourites() + self.saveRoot() + self.rootChanged = False + + def preEnterPath(self, refstr): + if self.servicePathRadio and self.servicePathRadio[0] != eServiceReference(refstr): + pathstr = config.radio.lastroot.value + if pathstr is not None and refstr in pathstr: + self.restoreRoot() + lastservice = eServiceReference(config.radio.lastservice.value) + if lastservice.valid(): + self.setCurrentSelection(lastservice) + return True + return False + + def onCreate(self): + self.setRadioMode() + self.restoreRoot() + lastservice = eServiceReference(config.radio.lastservice.value) + if lastservice.valid(): + self.servicelist.setCurrent(lastservice) + self.session.nav.playService(lastservice) + else: + self.session.nav.stopService() + self.info.show() + + def channelSelected(self, doClose=False): # just return selected service + ref = self.getCurrentSelection() + if self.movemode: + self.toggleMoveMarked() + elif (ref.flags & eServiceReference.flagDirectory) == eServiceReference.flagDirectory: + self.enterPath(ref) + self.gotoCurrentServiceOrProvider(ref) + elif self.bouquet_mark_edit != OFF: + if not (self.bouquet_mark_edit == EDIT_ALTERNATIVES and ref.flags & eServiceReference.isGroup): + self.doMark() + elif not (ref.flags & eServiceReference.isMarker): # no marker + cur_root = self.getRoot() + if not cur_root or not (cur_root.flags & eServiceReference.isGroup): + playingref = self.session.nav.getCurrentlyPlayingServiceOrGroup() + if playingref is None or playingref != ref: + self.session.nav.playService(ref) + config.radio.lastservice.value = ref.toString() + config.radio.lastservice.save() + self.saveRoot() + + def zapBack(self): + self.channelSelected() + +class SimpleChannelSelection(ChannelSelectionBase): + def __init__(self, session, title): + ChannelSelectionBase.__init__(self, session) + self["actions"] = ActionMap(["OkCancelActions", "TvRadioActions"], + { + "cancel": self.close, + "ok": self.channelSelected, + "keyRadio": self.setModeRadio, + "keyTV": self.setModeTv, + }) + self.bouquet_mark_edit = OFF + self.title = title + self.onLayoutFinish.append(self.layoutFinished) + + def layoutFinished(self): + self.setModeTv() + + def saveRoot(self): + pass + + def channelSelected(self): # just return selected service + ref = self.getCurrentSelection() + if (ref.flags & eServiceReference.flagDirectory) == eServiceReference.flagDirectory: + self.enterPath(ref) + self.gotoCurrentServiceOrProvider(ref) + elif not (ref.flags & eServiceReference.isMarker): + ref = self.getCurrentSelection() + self.close(ref) + + def setModeTv(self): + self.setTvMode() + self.showFavourites() + + def setModeRadio(self): + self.setRadioMode() + self.showFavourites() diff --git a/lib/python/Screens/ChoiceBox.py b/lib/python/Screens/ChoiceBox.py new file mode 100644 index 0000000..373a39c --- /dev/null +++ b/lib/python/Screens/ChoiceBox.py @@ -0,0 +1,162 @@ +from Screens.Screen import Screen +from Components.ActionMap import NumberActionMap +from Components.Label import Label +from Components.ChoiceList import ChoiceEntryComponent, ChoiceList +from Components.Sources.StaticText import StaticText +import enigma + +class ChoiceBox(Screen): + def __init__(self, session, title = "", list = [], keys = None, selection = 0, skin_name = []): + Screen.__init__(self, session) + + if isinstance(skin_name, str): + skin_name = [skin_name] + self.skinName = skin_name + ["ChoiceBox"] + + self["text"] = Label(title) + self.list = [] + self.summarylist = [] + if keys is None: + self.__keys = [ "1", "2", "3", "4", "5", "6", "7", "8", "9", "0", "red", "green", "yellow", "blue" ] + (len(list) - 10) * [""] + else: + self.__keys = keys + (len(list) - len(keys)) * [""] + + self.keymap = {} + pos = 0 + for x in list: + strpos = str(self.__keys[pos]) + self.list.append(ChoiceEntryComponent(key = strpos, text = x)) + if self.__keys[pos] != "": + self.keymap[self.__keys[pos]] = list[pos] + self.summarylist.append((self.__keys[pos],x[0])) + pos += 1 + self["list"] = ChoiceList(list = self.list, selection = selection) + self["summary_list"] = StaticText() + self["summary_selection"] = StaticText() + self.updateSummary(selection) + + self["actions"] = NumberActionMap(["WizardActions", "InputActions", "ColorActions", "DirectionActions"], + { + "ok": self.go, + "back": self.cancel, + "1": self.keyNumberGlobal, + "2": self.keyNumberGlobal, + "3": self.keyNumberGlobal, + "4": self.keyNumberGlobal, + "5": self.keyNumberGlobal, + "6": self.keyNumberGlobal, + "7": self.keyNumberGlobal, + "8": self.keyNumberGlobal, + "9": self.keyNumberGlobal, + "0": self.keyNumberGlobal, + "red": self.keyRed, + "green": self.keyGreen, + "yellow": self.keyYellow, + "blue": self.keyBlue, + "up": self.up, + "down": self.down + }, -1) + + def autoResize(self): + orgwidth = self.instance.size().width() + orgpos = self.instance.position() + textsize = self["text"].getSize() + count = len(self.list) + if count > 10: + count = 10 + offset = 25 * count + wsizex = textsize[0] + 60 + wsizey = textsize[1] + offset + if (520 > wsizex): + wsizex = 520 + wsize = (wsizex, wsizey) + # resize + self.instance.resize(enigma.eSize(*wsize)) + # resize label + self["text"].instance.resize(enigma.eSize(*textsize)) + # move list + listsize = (wsizex, 25 * count) + self["list"].instance.move(enigma.ePoint(0, textsize[1])) + self["list"].instance.resize(enigma.eSize(*listsize)) + # center window + newwidth = wsize[0] + self.instance.move(enigma.ePoint((720-wsizex)/2, (576-wsizey)/(count > 7 and 2 or 3))) + + def keyLeft(self): + pass + + def keyRight(self): + pass + + def up(self): + if len(self["list"].list) > 0: + while 1: + self["list"].instance.moveSelection(self["list"].instance.moveUp) + self.updateSummary(self["list"].l.getCurrentSelectionIndex()) + if self["list"].l.getCurrentSelection()[0][0] != "--" or self["list"].l.getCurrentSelectionIndex() == 0: + break + + def down(self): + if len(self["list"].list) > 0: + while 1: + self["list"].instance.moveSelection(self["list"].instance.moveDown) + self.updateSummary(self["list"].l.getCurrentSelectionIndex()) + if self["list"].l.getCurrentSelection()[0][0] != "--" or self["list"].l.getCurrentSelectionIndex() == len(self["list"].list) - 1: + break + + # runs a number shortcut + def keyNumberGlobal(self, number): + self.goKey(str(number)) + + # runs the current selected entry + def go(self): + cursel = self["list"].l.getCurrentSelection() + if cursel: + self.goEntry(cursel[0]) + else: + self.cancel() + + # runs a specific entry + def goEntry(self, entry): + if len(entry) > 2 and isinstance(entry[1], str) and entry[1] == "CALLFUNC": + # CALLFUNC wants to have the current selection as argument + arg = self["list"].l.getCurrentSelection()[0] + entry[2](arg) + else: + self.close(entry) + + # lookups a key in the keymap, then runs it + def goKey(self, key): + if self.keymap.has_key(key): + entry = self.keymap[key] + self.goEntry(entry) + + # runs a color shortcut + def keyRed(self): + self.goKey("red") + + def keyGreen(self): + self.goKey("green") + + def keyYellow(self): + self.goKey("yellow") + + def keyBlue(self): + self.goKey("blue") + + def updateSummary(self, curpos=0): + pos = 0 + summarytext = "" + for entry in self.summarylist: + if pos > curpos-2 and pos < curpos+5: + if pos == curpos: + summarytext += ">" + self["summary_selection"].setText(entry[1]) + else: + summarytext += entry[0] + summarytext += ' ' + entry[1] + '\n' + pos += 1 + self["summary_list"].setText(summarytext) + + def cancel(self): + self.close(None) diff --git a/lib/python/Screens/Ci.py b/lib/python/Screens/Ci.py new file mode 100644 index 0000000..04d13b7 --- /dev/null +++ b/lib/python/Screens/Ci.py @@ -0,0 +1,395 @@ +from Screen import Screen +from Components.ActionMap import ActionMap +from Components.ActionMap import NumberActionMap +from Components.Label import Label + +from Components.config import config, ConfigSubsection, ConfigSelection, ConfigSubList, getConfigListEntry, KEY_LEFT, KEY_RIGHT, KEY_0, ConfigNothing, ConfigPIN +from Components.ConfigList import ConfigList + +from Components.SystemInfo import SystemInfo + +from enigma import eTimer, eDVBCI_UI, eDVBCIInterfaces + +MAX_NUM_CI = 4 + +def setCIBitrate(configElement): + if configElement.value == "no": + eDVBCI_UI.getInstance().setClockRate(configElement.slotid, eDVBCI_UI.rateNormal) + else: + eDVBCI_UI.getInstance().setClockRate(configElement.slotid, eDVBCI_UI.rateHigh) + +def InitCiConfig(): + config.ci = ConfigSubList() + for slot in range(MAX_NUM_CI): + config.ci.append(ConfigSubsection()) + config.ci[slot].canDescrambleMultipleServices = ConfigSelection(choices = [("auto", _("Auto")), ("no", _("No")), ("yes", _("Yes"))], default = "auto") + if SystemInfo["CommonInterfaceSupportsHighBitrates"]: + config.ci[slot].canHandleHighBitrates = ConfigSelection(choices = [("no", _("No")), ("yes", _("Yes"))], default = "yes") + config.ci[slot].canHandleHighBitrates.slotid = slot + config.ci[slot].canHandleHighBitrates.addNotifier(setCIBitrate) + +class MMIDialog(Screen): + def __init__(self, session, slotid, action, handler = eDVBCI_UI.getInstance(), wait_text = _("wait for ci...") ): + Screen.__init__(self, session) + + print "MMIDialog with action" + str(action) + + self.mmiclosed = False + self.tag = None + self.slotid = slotid + + self.timer = eTimer() + self.timer.callback.append(self.keyCancel) + + #else the skins fails + self["title"] = Label("") + self["subtitle"] = Label("") + self["bottom"] = Label("") + self["entries"] = ConfigList([ ]) + + self["actions"] = NumberActionMap(["SetupActions"], + { + "ok": self.okbuttonClick, + "cancel": self.keyCancel, + #for PIN + "left": self.keyLeft, + "right": self.keyRight, + "1": self.keyNumberGlobal, + "2": self.keyNumberGlobal, + "3": self.keyNumberGlobal, + "4": self.keyNumberGlobal, + "5": self.keyNumberGlobal, + "6": self.keyNumberGlobal, + "7": self.keyNumberGlobal, + "8": self.keyNumberGlobal, + "9": self.keyNumberGlobal, + "0": self.keyNumberGlobal + }, -1) + + self.action = action + + self.handler = handler + self.wait_text = wait_text + + if action == 2: #start MMI + handler.startMMI(self.slotid) + self.showWait() + elif action == 3: #mmi already there (called from infobar) + self.showScreen() + + def addEntry(self, list, entry): + if entry[0] == "TEXT": #handle every item (text / pin only?) + list.append( (entry[1], ConfigNothing(), entry[2]) ) + if entry[0] == "PIN": + pinlength = entry[1] + if entry[3] == 1: + # masked pins: + x = ConfigPIN(0, len = pinlength, censor = "*") + else: + # unmasked pins: + x = ConfigPIN(0, len = pinlength) + x.addEndNotifier(self.pinEntered) + self["subtitle"].setText(entry[2]) + list.append( getConfigListEntry("", x) ) + self["bottom"].setText(_("please press OK when ready")) + + def pinEntered(self, value): + self.okbuttonClick() + + def okbuttonClick(self): + self.timer.stop() + if not self.tag: + return + if self.tag == "WAIT": + print "do nothing - wait" + elif self.tag == "MENU": + print "answer MENU" + cur = self["entries"].getCurrent() + if cur: + self.handler.answerMenu(self.slotid, cur[2]) + else: + self.handler.answerMenu(self.slotid, 0) + self.showWait() + elif self.tag == "LIST": + print "answer LIST" + self.handler.answerMenu(self.slotid, 0) + self.showWait() + elif self.tag == "ENQ": + cur = self["entries"].getCurrent() + answer = str(cur[1].value) + length = len(answer) + while length < cur[1].getLength(): + answer = '0'+answer + length+=1 + self.handler.answerEnq(self.slotid, answer) + self.showWait() + + def closeMmi(self): + self.timer.stop() + self.close(self.slotid) + + def keyCancel(self): + self.timer.stop() + if not self.tag or self.mmiclosed: + self.closeMmi() + elif self.tag == "WAIT": + self.handler.stopMMI(self.slotid) + self.closeMmi() + elif self.tag in ( "MENU", "LIST" ): + print "cancel list" + self.handler.answerMenu(self.slotid, 0) + self.showWait() + elif self.tag == "ENQ": + print "cancel enq" + self.handler.cancelEnq(self.slotid) + self.showWait() + else: + print "give cancel action to ci" + + def keyConfigEntry(self, key): + self.timer.stop() + try: + self["entries"].handleKey(key) + except: + pass + + def keyNumberGlobal(self, number): + self.timer.stop() + self.keyConfigEntry(KEY_0 + number) + + def keyLeft(self): + self.timer.stop() + self.keyConfigEntry(KEY_LEFT) + + def keyRight(self): + self.timer.stop() + self.keyConfigEntry(KEY_RIGHT) + + def updateList(self, list): + List = self["entries"] + try: + List.instance.moveSelectionTo(0) + except: + pass + List.l.setList(list) + + def showWait(self): + self.tag = "WAIT" + self["title"].setText("") + self["subtitle"].setText("") + self["bottom"].setText("") + list = [ ] + list.append( (self.wait_text, ConfigNothing()) ) + self.updateList(list) + + def showScreen(self): + screen = self.handler.getMMIScreen(self.slotid) + + list = [ ] + + self.timer.stop() + if len(screen) > 0 and screen[0][0] == "CLOSE": + timeout = screen[0][1] + self.mmiclosed = True + if timeout > 0: + self.timer.start(timeout*1000, True) + else: + self.keyCancel() + else: + self.mmiclosed = False + self.tag = screen[0][0] + for entry in screen: + if entry[0] == "PIN": + self.addEntry(list, entry) + else: + if entry[0] == "TITLE": + self["title"].setText(entry[1]) + elif entry[0] == "SUBTITLE": + self["subtitle"].setText(entry[1]) + elif entry[0] == "BOTTOM": + self["bottom"].setText(entry[1]) + elif entry[0] == "TEXT": + self.addEntry(list, entry) + self.updateList(list) + + def ciStateChanged(self): + do_close = False + if self.action == 0: #reset + do_close = True + if self.action == 1: #init + do_close = True + + #module still there ? + if self.handler.getState(self.slotid) != 2: + do_close = True + + #mmi session still active ? + if self.handler.getMMIState(self.slotid) != 1: + do_close = True + + if do_close: + self.closeMmi() + elif self.action > 1 and self.handler.availableMMI(self.slotid) == 1: + self.showScreen() + + #FIXME: check for mmi-session closed + +class CiMessageHandler: + def __init__(self): + self.session = None + self.ci = { } + self.dlgs = { } + eDVBCI_UI.getInstance().ciStateChanged.get().append(self.ciStateChanged) + SystemInfo["CommonInterface"] = eDVBCIInterfaces.getInstance().getNumOfSlots() > 0 + try: + file = open("/proc/stb/tsmux/ci0_tsclk", "r") + file.close() + SystemInfo["CommonInterfaceSupportsHighBitrates"] = True + except: + SystemInfo["CommonInterfaceSupportsHighBitrates"] = False + + def setSession(self, session): + self.session = session + + def ciStateChanged(self, slot): + if slot in self.ci: + self.ci[slot](slot) + else: + if slot in self.dlgs: + self.dlgs[slot].ciStateChanged() + elif eDVBCI_UI.getInstance().availableMMI(slot) == 1: + if self.session and not config.usage.hide_ci_messages.value: + self.dlgs[slot] = self.session.openWithCallback(self.dlgClosed, MMIDialog, slot, 3) + + def dlgClosed(self, slot): + if slot in self.dlgs: + del self.dlgs[slot] + + def registerCIMessageHandler(self, slot, func): + self.unregisterCIMessageHandler(slot) + self.ci[slot] = func + + def unregisterCIMessageHandler(self, slot): + if slot in self.ci: + del self.ci[slot] + +CiHandler = CiMessageHandler() + +class CiSelection(Screen): + def __init__(self, session): + Screen.__init__(self, session) + self["actions"] = ActionMap(["OkCancelActions", "CiSelectionActions"], + { + "left": self.keyLeft, + "right": self.keyLeft, + "ok": self.okbuttonClick, + "cancel": self.cancel + },-1) + + self.dlg = None + self.state = { } + self.list = [ ] + + for slot in range(MAX_NUM_CI): + state = eDVBCI_UI.getInstance().getState(slot) + if state != -1: + self.appendEntries(slot, state) + CiHandler.registerCIMessageHandler(slot, self.ciStateChanged) + + menuList = ConfigList(self.list) + menuList.list = self.list + menuList.l.setList(self.list) + self["entries"] = menuList + self["entries"].onSelectionChanged.append(self.selectionChanged) + self["text"] = Label(_("Slot %d")%(1)) + + def selectionChanged(self): + cur_idx = self["entries"].getCurrentIndex() + self["text"].setText(_("Slot %d")%((cur_idx / 5)+1)) + + def keyConfigEntry(self, key): + try: + self["entries"].handleKey(key) + self["entries"].getCurrent()[1].save() + except: + pass + + def keyLeft(self): + self.keyConfigEntry(KEY_LEFT) + + def keyRight(self): + self.keyConfigEntry(KEY_RIGHT) + + def appendEntries(self, slot, state): + self.state[slot] = state + self.list.append( (_("Reset"), ConfigNothing(), 0, slot) ) + self.list.append( (_("Init"), ConfigNothing(), 1, slot) ) + + if self.state[slot] == 0: #no module + self.list.append( (_("no module found"), ConfigNothing(), 2, slot) ) + elif self.state[slot] == 1: #module in init + self.list.append( (_("init module"), ConfigNothing(), 2, slot) ) + elif self.state[slot] == 2: #module ready + #get appname + appname = eDVBCI_UI.getInstance().getAppName(slot) + self.list.append( (appname, ConfigNothing(), 2, slot) ) + + self.list.append(getConfigListEntry(_("Multiple service support"), config.ci[slot].canDescrambleMultipleServices)) + if SystemInfo["CommonInterfaceSupportsHighBitrates"]: + self.list.append(getConfigListEntry(_("High bitrate support"), config.ci[slot].canHandleHighBitrates)) + + def updateState(self, slot): + state = eDVBCI_UI.getInstance().getState(slot) + self.state[slot] = state + + slotidx=0 + while len(self.list[slotidx]) < 3 or self.list[slotidx][3] != slot: + slotidx += 1 + + slotidx += 1 # do not change Reset + slotidx += 1 # do not change Init + + if state == 0: #no module + self.list[slotidx] = (_("no module found"), ConfigNothing(), 2, slot) + elif state == 1: #module in init + self.list[slotidx] = (_("init module"), ConfigNothing(), 2, slot) + elif state == 2: #module ready + #get appname + appname = eDVBCI_UI.getInstance().getAppName(slot) + self.list[slotidx] = (appname, ConfigNothing(), 2, slot) + + lst = self["entries"] + lst.list = self.list + lst.l.setList(self.list) + + def ciStateChanged(self, slot): + if self.dlg: + self.dlg.ciStateChanged() + else: + state = eDVBCI_UI.getInstance().getState(slot) + if self.state[slot] != state: + #print "something happens" + self.state[slot] = state + self.updateState(slot) + + def dlgClosed(self, slot): + self.dlg = None + + def okbuttonClick(self): + cur = self["entries"].getCurrent() + if cur and len(cur) > 2: + action = cur[2] + slot = cur[3] + if action == 0: #reset + eDVBCI_UI.getInstance().setReset(slot) + elif action == 1: #init + eDVBCI_UI.getInstance().setInit(slot) + elif self.state[slot] == 2: + self.dlg = self.session.openWithCallback(self.dlgClosed, MMIDialog, slot, action) + + def cancel(self): + for slot in range(MAX_NUM_CI): + state = eDVBCI_UI.getInstance().getState(slot) + if state != -1: + CiHandler.unregisterCIMessageHandler(slot) + self.close() diff --git a/lib/python/Screens/ClockDisplay.py b/lib/python/Screens/ClockDisplay.py new file mode 100644 index 0000000..cc9c6ce --- /dev/null +++ b/lib/python/Screens/ClockDisplay.py @@ -0,0 +1,15 @@ +from Screen import Screen + +# a clock display dialog +class ClockDisplay(Screen): + def okbutton(self): + self.session.close() + + def __init__(self, session, clock): + Screen.__init__(self, session) + self["theClock"] = clock + b = Button("bye") + b.onClick = [ self.okbutton ] + self["okbutton"] = b + self["title"] = Header("clock dialog: here you see the current uhrzeit!") + diff --git a/lib/python/Screens/ConfigMenu.py b/lib/python/Screens/ConfigMenu.py new file mode 100644 index 0000000..809efc1 --- /dev/null +++ b/lib/python/Screens/ConfigMenu.py @@ -0,0 +1,37 @@ +from Screen import Screen +from Components.ConfigList import ConfigList +from Components.config import config +from Components.ActionMap import ActionMap + +class ConfigMenu(Screen): + #create a generic class for view/edit settings + #all stuff come from xml file + #configtype / datasource / validate-call / ... + + def __init__(self, session): + Screen.__init__(self, session) + + self["actions"] = ActionMap(["OkCancelActions"], + { + "ok": self.okbuttonClick, + "cancel": self.close + }) + +class configTest(Screen): + + def __init__(self, session): + Screen.__init__(self, session) + + + self["config"] = ConfigList( + [ + configEntry("HKEY_LOCAL_ENIGMA/IMPORTANT/USER_ANNOYING_STUFF/SDTV/FLASHES/GREEN"), + configEntry("HKEY_LOCAL_ENIGMA/IMPORTANT/USER_ANNOYING_STUFF/HDTV/FLASHES/GREEN"), + ]) + + self["actions"] = ActionMap(["OkCancelActions"], + { + "ok": self["config"].toggle, + "cancel": self.close + }) + diff --git a/lib/python/Screens/Console.py b/lib/python/Screens/Console.py new file mode 100644 index 0000000..1da510b --- /dev/null +++ b/lib/python/Screens/Console.py @@ -0,0 +1,78 @@ +from enigma import eConsoleAppContainer +from Screens.Screen import Screen +from Components.ActionMap import ActionMap +from Components.ScrollLabel import ScrollLabel + +class Console(Screen): + #TODO move this to skin.xml + skin = """ + <screen position="100,100" size="550,400" title="Command execution..." > + <widget name="text" position="0,0" size="550,400" font="Console;14" /> + </screen>""" + + def __init__(self, session, title = "Console", cmdlist = None, finishedCallback = None, closeOnSuccess = False): + Screen.__init__(self, session) + + self.finishedCallback = finishedCallback + self.closeOnSuccess = closeOnSuccess + self.errorOcurred = False + + self["text"] = ScrollLabel("") + self["actions"] = ActionMap(["WizardActions", "DirectionActions"], + { + "ok": self.cancel, + "back": self.cancel, + "up": self["text"].pageUp, + "down": self["text"].pageDown + }, -1) + + self.cmdlist = cmdlist + self.newtitle = title + + self.onShown.append(self.updateTitle) + + self.container = eConsoleAppContainer() + self.run = 0 + self.container.appClosed.append(self.runFinished) + self.container.dataAvail.append(self.dataAvail) + self.onLayoutFinish.append(self.startRun) # dont start before gui is finished + + def updateTitle(self): + self.setTitle(self.newtitle) + + def startRun(self): + self["text"].setText(_("Execution progress:") + "\n\n") + print "Console: executing in run", self.run, " the command:", self.cmdlist[self.run] + if self.container.execute(self.cmdlist[self.run]): #start of container application failed... + self.runFinished(-1) # so we must call runFinished manual + + def runFinished(self, retval): + if retval: + self.errorOcurred = True + self.run += 1 + if self.run != len(self.cmdlist): + if self.container.execute(self.cmdlist[self.run]): #start of container application failed... + self.runFinished(-1) # so we must call runFinished manual + else: + lastpage = self["text"].isAtLastPage() + str = self["text"].getText() + str += _("Execution finished!!"); + self["text"].setText(str) + if lastpage: + self["text"].lastPage() + if self.finishedCallback is not None: + self.finishedCallback() + if not self.errorOcurred and self.closeOnSuccess: + self.cancel() + + def cancel(self): + if self.run == len(self.cmdlist): + self.close() + self.container.appClosed.remove(self.runFinished) + self.container.dataAvail.remove(self.dataAvail) + + def dataAvail(self, str): + lastpage = self["text"].isAtLastPage() + self["text"].setText(self["text"].getText() + str) + if lastpage: + self["text"].lastPage() diff --git a/lib/python/Screens/CopyFiles.py b/lib/python/Screens/CopyFiles.py new file mode 100644 index 0000000..e1aacd8 --- /dev/null +++ b/lib/python/Screens/CopyFiles.py @@ -0,0 +1,86 @@ +import os +import Components.Task +from twisted.internet import reactor, threads, task + +class FailedPostcondition(Components.Task.Condition): + def __init__(self, exception): + self.exception = exception + def getErrorMessage(self, task): + return str(self.exception) + def check(self, task): + return self.exception is None + +class CopyFileTask(Components.Task.PythonTask): + def openFiles(self, fileList): + self.callback = None + self.fileList = fileList + self.handles = [(open(fn[0], 'rb', buffering=0), open(fn[1], 'wb', buffering=0)) for fn in fileList] + self.end = 0 + for src,dst in fileList: + try: + self.end += os.stat(src).st_size + except: + print "Failed to stat", src + if not self.end: + self.end = 1 + print "[CopyFileTask] size:", self.end + def work(self): + print "[CopyFileTask] handles ", len(self.handles) + try: + bs = 65536 + d = bytearray(bs) + for src, dst in self.handles: + while 1: + if self.aborted: + print "[CopyFileTask] aborting" + raise Exception, "Aborted" + l = src.readinto(d) + if l < bs: + if not l: + # EOF + src.close() + dst.close() + break + dst.write(buffer(d, 0, l)) + else: + dst.write(d) + self.pos += l + except: + # In any event, close all handles + for src, dst in self.handles: + src.close() + dst.close() + for s,d in self.fileList: + # Remove incomplete data. + try: + os.unlink(d) + except: + pass + raise + +class MoveFileTask(CopyFileTask): + def work(self): + CopyFileTask.work(self) + print "[MoveFileTask]: delete source files" + errors = [] + for s,d in self.fileList: + try: + os.unlink(s) + except Exception, e: + errors.append(e) + if errors: + raise errors[0] + +def copyFiles(fileList, name): + name = _("Copy") + " " + name + job = Components.Task.Job(name) + task = CopyFileTask(job, name) + task.openFiles(fileList) + Components.Task.job_manager.AddJob(job) + +def moveFiles(fileList, name): + name = _("Move") + " " + name + job = Components.Task.Job(name) + task = MoveFileTask(job, name) + task.openFiles(fileList) + Components.Task.job_manager.AddJob(job) diff --git a/lib/python/Screens/DVD.py b/lib/python/Screens/DVD.py new file mode 100644 index 0000000..5bfd84c --- /dev/null +++ b/lib/python/Screens/DVD.py @@ -0,0 +1,669 @@ +import os +from enigma import eTimer, iPlayableService, iServiceInformation, eServiceReference, iServiceKeys, getDesktop +from Screens.Screen import Screen +from Screens.MessageBox import MessageBox +from Screens.ChoiceBox import ChoiceBox +from Screens.HelpMenu import HelpableScreen +from Screens.InfoBarGenerics import InfoBarSeek, InfoBarPVRState, InfoBarCueSheetSupport, InfoBarShowHide, InfoBarNotifications, InfoBarAudioSelection, InfoBarSubtitleSupport +from Components.ActionMap import ActionMap, NumberActionMap, HelpableActionMap +from Components.Label import Label +from Components.Sources.StaticText import StaticText +from Components.Pixmap import Pixmap +from Components.MenuList import MenuList +from Components.ServiceEventTracker import ServiceEventTracker, InfoBarBase +from Components.config import config +from Tools.Directories import pathExists, fileExists +from Components.Harddisk import harddiskmanager + +lastpath = "" + +class DVDSummary(Screen): + def __init__(self, session, parent): + Screen.__init__(self, session, parent) + self["Title"] = Label("") + self["Time"] = Label("") + self["Chapter"] = Label("") + + def updateChapter(self, chapter): + self["Chapter"].setText(chapter) + + def setTitle(self, title): + self["Title"].setText(title) + +class DVDOverlay(Screen): + def __init__(self, session, args = None, height = None): + desktop_size = getDesktop(0).size() + w = desktop_size.width() + h = desktop_size.height() + if height is not None: + h = height + DVDOverlay.skin = """<screen name="DVDOverlay" position="0,0" size="%d,%d" flags="wfNoBorder" zPosition="-1" backgroundColor="transparent" />""" %(w, h) + Screen.__init__(self, session) + +class ChapterZap(Screen): + skin = """ + <screen name="ChapterZap" position="235,255" size="250,60" title="Chapter" > + <widget name="chapter" position="35,15" size="110,25" font="Regular;23" /> + <widget name="number" position="145,15" size="80,25" halign="right" font="Regular;23" /> + </screen>""" + + def quit(self): + self.Timer.stop() + self.close(0) + + def keyOK(self): + self.Timer.stop() + self.close(int(self["number"].getText())) + + def keyNumberGlobal(self, number): + self.Timer.start(3000, True) #reset timer + self.field = self.field + str(number) + self["number"].setText(self.field) + if len(self.field) >= 4: + self.keyOK() + + def __init__(self, session, number): + Screen.__init__(self, session) + self.field = str(number) + + self["chapter"] = Label(_("Chapter:")) + + self["number"] = Label(self.field) + + self["actions"] = NumberActionMap( [ "SetupActions" ], + { + "cancel": self.quit, + "ok": self.keyOK, + "1": self.keyNumberGlobal, + "2": self.keyNumberGlobal, + "3": self.keyNumberGlobal, + "4": self.keyNumberGlobal, + "5": self.keyNumberGlobal, + "6": self.keyNumberGlobal, + "7": self.keyNumberGlobal, + "8": self.keyNumberGlobal, + "9": self.keyNumberGlobal, + "0": self.keyNumberGlobal + }) + + self.Timer = eTimer() + self.Timer.callback.append(self.keyOK) + self.Timer.start(3000, True) + +class DVDPlayer(Screen, InfoBarBase, InfoBarNotifications, InfoBarSeek, InfoBarPVRState, InfoBarShowHide, HelpableScreen, InfoBarCueSheetSupport, InfoBarAudioSelection, InfoBarSubtitleSupport): + ALLOW_SUSPEND = Screen.SUSPEND_PAUSES + ENABLE_RESUME_SUPPORT = True + + skin = """ + <screen name="DVDPlayer" flags="wfNoBorder" position="0,380" size="720,160" title="Info bar" backgroundColor="transparent" > + <!-- Background --> + <ePixmap position="0,0" zPosition="-2" size="720,160" pixmap="skin_default/info-bg_mp.png" alphatest="off" /> + <ePixmap position="29,40" zPosition="0" size="665,104" pixmap="skin_default/screws_mp.png" alphatest="on" transparent="1" /> + <!-- colorbuttons --> + <ePixmap position="48,70" zPosition="0" size="108,13" pixmap="skin_default/icons/mp_buttons.png" alphatest="on" /> + <!-- Servicename --> + <ePixmap pixmap="skin_default/icons/icon_event.png" position="207,78" zPosition="1" size="15,10" alphatest="on" /> + <widget source="session.CurrentService" render="Label" position="230,73" size="300,22" font="Regular;20" backgroundColor="#263c59" shadowColor="#1d354c" shadowOffset="-1,-1" transparent="1" noWrap="1"> + <convert type="ServiceName">Name</convert> + </widget> + <!-- Chapter info --> + <widget name="chapterLabel" position="230,96" size="360,22" font="Regular;20" foregroundColor="#c3c3c9" backgroundColor="#263c59" transparent="1" /> + <!-- Audio track info --> + <ePixmap pixmap="skin_default/icons/icon_dolby.png" position="540,60" zPosition="1" size="26,16" alphatest="on"/> + <widget name="audioLabel" position="570,60" size="130,22" font="Regular;18" backgroundColor="#263c59" shadowColor="#1d354c" shadowOffset="-1,-1" transparent="1" /> + <!-- Subtitle track info --> + <widget source="session.CurrentService" render="Pixmap" pixmap="skin_default/icons/icon_txt.png" position="540,83" zPosition="1" size="26,16" alphatest="on" > + <convert type="ServiceInfo">HasTelext</convert> + <convert type="ConditionalShowHide" /> + </widget> + <widget name="subtitleLabel" position="570,83" size="130,22" font="Regular;18" backgroundColor="#263c59" shadowColor="#1d354c" shadowOffset="-1,-1" transparent="1" /> + <!-- Angle info --> + <widget name="anglePix" pixmap="skin_default/icons/icon_view.png" position="540,106" size="26,16" alphatest="on" /> + <widget name="angleLabel" position="570,106" size="130,22" font="Regular;18" backgroundColor="#263c59" shadowColor="#1d354c" shadowOffset="-1,-1" transparent="1" /> + <!-- Elapsed time --> + <widget source="session.CurrentService" render="Label" position="205,129" size="100,20" font="Regular;18" halign="center" valign="center" backgroundColor="#06224f" shadowColor="#1d354c" shadowOffset="-1,-1" transparent="1" > + <convert type="ServicePosition">Position,ShowHours</convert> + </widget> + <!-- Progressbar (movie position)--> + <widget source="session.CurrentService" render="PositionGauge" position="300,133" size="270,10" zPosition="2" pointer="skin_default/position_pointer.png:540,0" transparent="1" > + <convert type="ServicePosition">Gauge</convert> + </widget> + <!-- Remaining time --> + <widget source="session.CurrentService" render="Label" position="576,129" size="100,20" font="Regular;18" halign="center" valign="center" backgroundColor="#06224f" shadowColor="#1d354c" shadowOffset="-1,-1" transparent="1" > + <convert type="ServicePosition">Remaining,Negate,ShowHours</convert> + </widget> + </screen>""" + + def save_infobar_seek_config(self): + self.saved_config_speeds_forward = config.seek.speeds_forward.value + self.saved_config_speeds_backward = config.seek.speeds_backward.value + self.saved_config_enter_forward = config.seek.enter_forward.value + self.saved_config_enter_backward = config.seek.enter_backward.value + self.saved_config_seek_on_pause = config.seek.on_pause.value + self.saved_config_seek_speeds_slowmotion = config.seek.speeds_slowmotion.value + + def change_infobar_seek_config(self): + config.seek.speeds_forward.value = [2, 4, 6, 8, 16, 32, 64] + config.seek.speeds_backward.value = [2, 4, 6, 8, 16, 32, 64] + config.seek.speeds_slowmotion.value = [ 2, 3, 4, 6 ] + config.seek.enter_forward.value = "2" + config.seek.enter_backward.value = "2" + config.seek.on_pause.value = "play" + + def restore_infobar_seek_config(self): + config.seek.speeds_forward.value = self.saved_config_speeds_forward + config.seek.speeds_backward.value = self.saved_config_speeds_backward + config.seek.speeds_slowmotion.value = self.saved_config_seek_speeds_slowmotion + config.seek.enter_forward.value = self.saved_config_enter_forward + config.seek.enter_backward.value = self.saved_config_enter_backward + config.seek.on_pause.value = self.saved_config_seek_on_pause + + def __init__(self, session, dvd_device = None, dvd_filelist = [ ], args = None): + Screen.__init__(self, session) + InfoBarBase.__init__(self) + InfoBarNotifications.__init__(self) + InfoBarCueSheetSupport.__init__(self, actionmap = "MediaPlayerCueSheetActions") + InfoBarShowHide.__init__(self) + InfoBarAudioSelection.__init__(self) + InfoBarSubtitleSupport.__init__(self) + HelpableScreen.__init__(self) + self.save_infobar_seek_config() + self.change_infobar_seek_config() + InfoBarSeek.__init__(self) + InfoBarPVRState.__init__(self) + + self.oldService = self.session.nav.getCurrentlyPlayingServiceOrGroup() + self.session.nav.stopService() + self["audioLabel"] = Label("n/a") + self["subtitleLabel"] = Label("") + self["angleLabel"] = Label("") + self["chapterLabel"] = Label("") + self["anglePix"] = Pixmap() + self["anglePix"].hide() + self.last_audioTuple = None + self.last_subtitleTuple = None + self.last_angleTuple = None + self.totalChapters = 0 + self.currentChapter = 0 + self.totalTitles = 0 + self.currentTitle = 0 + + self.__event_tracker = ServiceEventTracker(screen=self, eventmap= + { + iPlayableService.evStopped: self.__serviceStopped, + iPlayableService.evUser: self.__timeUpdated, + iPlayableService.evUser+1: self.__statePlay, + iPlayableService.evUser+2: self.__statePause, + iPlayableService.evUser+3: self.__osdFFwdInfoAvail, + iPlayableService.evUser+4: self.__osdFBwdInfoAvail, + iPlayableService.evUser+5: self.__osdStringAvail, + iPlayableService.evUser+6: self.__osdAudioInfoAvail, + iPlayableService.evUser+7: self.__osdSubtitleInfoAvail, + iPlayableService.evUser+8: self.__chapterUpdated, + iPlayableService.evUser+9: self.__titleUpdated, + iPlayableService.evUser+11: self.__menuOpened, + iPlayableService.evUser+12: self.__menuClosed, + iPlayableService.evUser+13: self.__osdAngleInfoAvail + }) + + self["DVDPlayerDirectionActions"] = ActionMap(["DirectionActions"], + { + #MENU KEY DOWN ACTIONS + "left": self.keyLeft, + "right": self.keyRight, + "up": self.keyUp, + "down": self.keyDown, + + #MENU KEY REPEATED ACTIONS + "leftRepeated": self.doNothing, + "rightRepeated": self.doNothing, + "upRepeated": self.doNothing, + "downRepeated": self.doNothing, + + #MENU KEY UP ACTIONS + "leftUp": self.doNothing, + "rightUp": self.doNothing, + "upUp": self.doNothing, + "downUp": self.doNothing, + }) + + self["OkCancelActions"] = ActionMap(["OkCancelActions"], + { + "ok": self.keyOk, + "cancel": self.keyCancel, + }) + + self["DVDPlayerPlaybackActions"] = HelpableActionMap(self, "DVDPlayerActions", + { + #PLAYER ACTIONS + "dvdMenu": (self.enterDVDMenu, _("show DVD main menu")), + "toggleInfo": (self.toggleInfo, _("toggle time, chapter, audio, subtitle info")), + "nextChapter": (self.nextChapter, _("forward to the next chapter")), + "prevChapter": (self.prevChapter, _("rewind to the previous chapter")), + "nextTitle": (self.nextTitle, _("jump forward to the next title")), + "prevTitle": (self.prevTitle, _("jump back to the previous title")), + "tv": (self.askLeavePlayer, _("exit DVD player or return to file browser")), + "dvdAudioMenu": (self.enterDVDAudioMenu, _("(show optional DVD audio menu)")), + "AudioSelection": (self.enterAudioSelection, _("Select audio track")), + "nextAudioTrack": (self.nextAudioTrack, _("switch to the next audio track")), + "nextSubtitleTrack": (self.nextSubtitleTrack, _("switch to the next subtitle language")), + "nextAngle": (self.nextAngle, _("switch to the next angle")), + "seekBeginning": self.seekBeginning, + }, -2) + + self["NumberActions"] = NumberActionMap( [ "NumberActions"], + { + "1": self.keyNumberGlobal, + "2": self.keyNumberGlobal, + "3": self.keyNumberGlobal, + "4": self.keyNumberGlobal, + "5": self.keyNumberGlobal, + "6": self.keyNumberGlobal, + "7": self.keyNumberGlobal, + "8": self.keyNumberGlobal, + "9": self.keyNumberGlobal, + "0": self.keyNumberGlobal, + }) + + self.onClose.append(self.__onClose) + + try: + from Plugins.SystemPlugins.Hotplug.plugin import hotplugNotifier + hotplugNotifier.append(self.hotplugCB) + except: + pass + + self.autoplay = dvd_device or dvd_filelist + + if dvd_device: + self.physicalDVD = True + else: + self.scanHotplug() + + self.dvd_filelist = dvd_filelist + self.onFirstExecBegin.append(self.opened) + self.service = None + self.in_menu = False + + def keyNumberGlobal(self, number): + print "You pressed number " + str(number) + self.session.openWithCallback(self.numberEntered, ChapterZap, number) + + def numberEntered(self, retval): +# print self.servicelist + if retval > 0: + self.zapToNumber(retval) + + def getServiceInterface(self, iface): + service = self.service + if service: + attr = getattr(service, iface, None) + if callable(attr): + return attr() + return None + + def __serviceStopped(self): + self.dvdScreen.hide() + subs = self.getServiceInterface("subtitle") + if subs: + subs.disableSubtitles(self.session.current_dialog.instance) + + def serviceStarted(self): #override InfoBarShowHide function + self.dvdScreen.show() + + def doEofInternal(self, playing): + if self.in_menu: + self.hide() + + def __menuOpened(self): + self.hide() + self.in_menu = True + self["NumberActions"].setEnabled(False) + + def __menuClosed(self): + self.show() + self.in_menu = False + self["NumberActions"].setEnabled(True) + + def setChapterLabel(self): + chapterLCD = "Menu" + chapterOSD = "DVD Menu" + if self.currentTitle > 0: + chapterLCD = "%s %d" % (_("Chap."), self.currentChapter) + chapterOSD = "DVD %s %d/%d" % (_("Chapter"), self.currentChapter, self.totalChapters) + chapterOSD += " (%s %d/%d)" % (_("Title"), self.currentTitle, self.totalTitles) + self["chapterLabel"].setText(chapterOSD) + try: + self.session.summary.updateChapter(chapterLCD) + except: + pass + + def doNothing(self): + pass + + def toggleInfo(self): + if not self.in_menu: + self.toggleShow() + print "toggleInfo" + + def __timeUpdated(self): + print "timeUpdated" + + def __statePlay(self): + print "statePlay" + + def __statePause(self): + print "statePause" + + def __osdFFwdInfoAvail(self): + self.setChapterLabel() + print "FFwdInfoAvail" + + def __osdFBwdInfoAvail(self): + self.setChapterLabel() + print "FBwdInfoAvail" + + def __osdStringAvail(self): + print "StringAvail" + + def __osdAudioInfoAvail(self): + info = self.getServiceInterface("info") + audioTuple = info and info.getInfoObject(iServiceInformation.sUser+6) + print "AudioInfoAvail ", repr(audioTuple) + if audioTuple: + audioString = "%d: %s (%s)" % (audioTuple[0],audioTuple[1],audioTuple[2]) + self["audioLabel"].setText(audioString) + if audioTuple != self.last_audioTuple and not self.in_menu: + self.doShow() + self.last_audioTuple = audioTuple + + def __osdSubtitleInfoAvail(self): + info = self.getServiceInterface("info") + subtitleTuple = info and info.getInfoObject(iServiceInformation.sUser+7) + print "SubtitleInfoAvail ", repr(subtitleTuple) + if subtitleTuple: + subtitleString = "" + if subtitleTuple[0] is not 0: + subtitleString = "%d: %s" % (subtitleTuple[0],subtitleTuple[1]) + self["subtitleLabel"].setText(subtitleString) + if subtitleTuple != self.last_subtitleTuple and not self.in_menu: + self.doShow() + self.last_subtitleTuple = subtitleTuple + + def __osdAngleInfoAvail(self): + info = self.getServiceInterface("info") + angleTuple = info and info.getInfoObject(iServiceInformation.sUser+8) + print "AngleInfoAvail ", repr(angleTuple) + if angleTuple: + angleString = "" + if angleTuple[1] > 1: + angleString = "%d / %d" % (angleTuple[0],angleTuple[1]) + self["anglePix"].show() + else: + self["anglePix"].hide() + self["angleLabel"].setText(angleString) + if angleTuple != self.last_angleTuple and not self.in_menu: + self.doShow() + self.last_angleTuple = angleTuple + + def __chapterUpdated(self): + info = self.getServiceInterface("info") + if info: + self.currentChapter = info.getInfo(iServiceInformation.sCurrentChapter) + self.totalChapters = info.getInfo(iServiceInformation.sTotalChapters) + self.setChapterLabel() + print "__chapterUpdated: %d/%d" % (self.currentChapter, self.totalChapters) + + def __titleUpdated(self): + info = self.getServiceInterface("info") + if info: + self.currentTitle = info.getInfo(iServiceInformation.sCurrentTitle) + self.totalTitles = info.getInfo(iServiceInformation.sTotalTitles) + self.setChapterLabel() + print "__titleUpdated: %d/%d" % (self.currentTitle, self.totalTitles) + if not self.in_menu: + self.doShow() + + def askLeavePlayer(self): + if self.autoplay: + self.exitCB((None,"exit")) + return + choices = [(_("Exit"), "exit"), (_("Continue playing"), "play")] + if self.physicalDVD: + cur = self.session.nav.getCurrentlyPlayingServiceOrGroup() + if cur and not cur.toString().endswith(harddiskmanager.getAutofsMountpoint(harddiskmanager.getCD())): + choices.insert(0,(_("Play DVD"), "playPhysical" )) + self.session.openWithCallback(self.exitCB, ChoiceBox, title=_("Leave DVD player?"), list = choices) + + def sendKey(self, key): + keys = self.getServiceInterface("keys") + if keys: + keys.keyPressed(key) + return keys + + def enterAudioSelection(self): + self.audioSelection() + + def nextAudioTrack(self): + self.sendKey(iServiceKeys.keyUser) + + def nextSubtitleTrack(self): + self.sendKey(iServiceKeys.keyUser+1) + + def enterDVDAudioMenu(self): + self.sendKey(iServiceKeys.keyUser+2) + + def nextChapter(self): + self.sendKey(iServiceKeys.keyUser+3) + + def prevChapter(self): + self.sendKey(iServiceKeys.keyUser+4) + + def nextTitle(self): + self.sendKey(iServiceKeys.keyUser+5) + + def prevTitle(self): + self.sendKey(iServiceKeys.keyUser+6) + + def enterDVDMenu(self): + self.sendKey(iServiceKeys.keyUser+7) + + def nextAngle(self): + self.sendKey(iServiceKeys.keyUser+8) + + def seekBeginning(self): + if self.service: + seekable = self.getSeek() + if seekable: + seekable.seekTo(0) + + def zapToNumber(self, number): + if self.service: + seekable = self.getSeek() + if seekable: + print "seek to chapter %d" % number + seekable.seekChapter(number) + +# MENU ACTIONS + def keyRight(self): + self.sendKey(iServiceKeys.keyRight) + + def keyLeft(self): + self.sendKey(iServiceKeys.keyLeft) + + def keyUp(self): + self.sendKey(iServiceKeys.keyUp) + + def keyDown(self): + self.sendKey(iServiceKeys.keyDown) + + def keyOk(self): + if self.sendKey(iServiceKeys.keyOk) and not self.in_menu: + self.toggleInfo() + + def keyCancel(self): + self.askLeavePlayer() + + def opened(self): + if self.autoplay and self.dvd_filelist: + # opened via autoplay + self.FileBrowserClosed(self.dvd_filelist[0]) + elif self.autoplay and self.physicalDVD: + self.playPhysicalCB(True) + elif self.physicalDVD: + # opened from menu with dvd in drive + self.session.openWithCallback(self.playPhysicalCB, MessageBox, text=_("Do you want to play DVD in drive?"), timeout=5 ) + + def playPhysicalCB(self, answer): + if answer == True: + harddiskmanager.setDVDSpeed(harddiskmanager.getCD(), 1) + self.FileBrowserClosed(harddiskmanager.getAutofsMountpoint(harddiskmanager.getCD())) + + def FileBrowserClosed(self, val): + curref = self.session.nav.getCurrentlyPlayingServiceOrGroup() + print "FileBrowserClosed", val + if val is None: + self.askLeavePlayer() + else: + isopathname = "/VIDEO_TS.ISO" + if os.path.exists(val + isopathname): + val += isopathname + newref = eServiceReference(4369, 0, val) + print "play", newref.toString() + if curref is None or curref != newref: + if newref.toString().endswith("/VIDEO_TS") or newref.toString().endswith("/"): + names = newref.toString().rsplit("/",3) + if names[2].startswith("Disk ") or names[2].startswith("DVD "): + name = str(names[1]) + " - " + str(names[2]) + else: + name = names[2] + print "setting name to: ", self.service + newref.setName(str(name)) + +# Construct a path for the IFO header assuming it exists + ifofilename = val + if not ifofilename.upper().endswith("/VIDEO_TS"): + ifofilename += "/VIDEO_TS" + files = [("/VIDEO_TS.IFO", 0x100), ("/VTS_01_0.IFO", 0x100), ("/VTS_01_0.IFO", 0x200)] # ( filename, offset ) + for name in files: + (status, isNTSC, isLowResolution) = self.readVideoAtributes( ifofilename, name ) + if status: + break + height = getDesktop(0).size().height() + print "[DVD] height:", height + if isNTSC: + height = height * 576 / 480 + print "[DVD] NTSC height:", height + if isLowResolution: + height *= 2 + print "[DVD] LowResolution:", height + self.dvdScreen = self.session.instantiateDialog(DVDOverlay, height=height) + self.session.nav.playService(newref) + self.service = self.session.nav.getCurrentService() + print "self.service", self.service + print "cur_dlg", self.session.current_dialog + subs = self.getServiceInterface("subtitle") + if subs: + subs.enableSubtitles(self.dvdScreen.instance, None) + + def readVideoAtributes(self, isofilename, checked_file): + (name, offset) = checked_file + isofilename += name + + print "[DVD] file", name + + status = False + isNTSC = False + isLowResolution = False + + ifofile = None + try: +# Try to read the IFO header to determine PAL/NTSC format and the resolution + ifofile = open(isofilename, "r") + ifofile.seek(offset) + video_attr_high = ord(ifofile.read(1)) + if video_attr_high != 0: + status = True + video_attr_low = ord(ifofile.read(1)) + print "[DVD] %s: video_attr_high = %x" % ( name, video_attr_high ), "video_attr_low = %x" % ( video_attr_low ) + isNTSC = (video_attr_high & 0x10 == 0) + isLowResolution = (video_attr_low & 0x18 == 0x18) + except: +# If the service is an .iso or .img file we assume it is PAL +# Sorry we cannot open image files here. + print "[DVD] Cannot read file or is ISO/IMG" + finally: + if ifofile is not None: + ifofile.close() + return ( status, isNTSC, isLowResolution ) + + def exitCB(self, answer): + if answer is not None: + if answer[1] == "exit": + if self.service: + self.service = None + self.close() + elif answer[1] == "playPhysical": + if self.service: + self.service = None + self.playPhysicalCB(True) + else: + pass + + def __onClose(self): + self.restore_infobar_seek_config() + self.session.nav.playService(self.oldService) + try: + from Plugins.SystemPlugins.Hotplug.plugin import hotplugNotifier + hotplugNotifier.remove(self.hotplugCB) + except: + pass + + def playLastCB(self, answer): # overwrite infobar cuesheet function + print "playLastCB", answer, self.resume_point + if self.service: + if answer == True: + seekable = self.getSeek() + if seekable: + seekable.seekTo(self.resume_point) + pause = self.service.pause() + pause.unpause() + self.hideAfterResume() + + def showAfterCuesheetOperation(self): + if not self.in_menu: + self.show() + + def createSummary(self): + return DVDSummary + +#override some InfoBarSeek functions + def doEof(self): + self.setSeekState(self.SEEK_STATE_PLAY) + + def calcRemainingTime(self): + return 0 + + def hotplugCB(self, dev, media_state): + print "[hotplugCB]", dev, media_state + if dev == harddiskmanager.getCD(): + if media_state == "1": + self.scanHotplug() + else: + self.physicalDVD = False + + def scanHotplug(self): + devicepath = harddiskmanager.getAutofsMountpoint(harddiskmanager.getCD()) + if pathExists(devicepath): + from Components.Scanner import scanDevice + res = scanDevice(devicepath) + list = [ (r.description, r, res[r], self.session) for r in res ] + if list: + (desc, scanner, files, session) = list[0] + for file in files: + print file + if file.mimetype == "video/x-dvd": + print "physical dvd found:", devicepath + self.physicalDVD = True + return + self.physicalDVD = False diff --git a/lib/python/Screens/Dish.py b/lib/python/Screens/Dish.py new file mode 100644 index 0000000..c7dc960 --- /dev/null +++ b/lib/python/Screens/Dish.py @@ -0,0 +1,228 @@ +# -*- coding: utf-8 -*- +from Screen import Screen +from Components.BlinkingPixmap import BlinkingPixmapConditional +from Components.Pixmap import Pixmap +from Components.config import config, ConfigInteger +from Components.Sources.Boolean import Boolean +from Components.Label import Label +from Components.ProgressBar import ProgressBar +from Components.ServiceEventTracker import ServiceEventTracker +from enigma import eDVBSatelliteEquipmentControl, eTimer, iPlayableService +from enigma import eServiceCenter, iServiceInformation +from ServiceReference import ServiceReference + +INVALID_POSITION = 9999 +config.misc.lastrotorposition = ConfigInteger(INVALID_POSITION) + +class Dish(Screen): + STATE_HIDDEN = 0 + STATE_SHOWN = 1 + skin = """ + <screen name="Dish" flags="wfNoBorder" position="86,100" size="130,220" title="Dish" zPosition="1" backgroundColor="#11396D" > + <widget name="Dishpixmap" position="0,0" size="130,160" zPosition="-1" pixmap="skin_default/icons/dish.png" transparent="1" alphatest="on" /> + <widget name="turnTime" position="5,0" size="120,20" zPosition="1" font="Regular;20" halign="right" shadowColor="black" shadowOffset="-2,-2" transparent="1" /> + <widget name="From" position="5,162" size="50,17" zPosition="1" font="Regular;17" halign="left" shadowColor="black" shadowOffset="-2,-1" transparent="1" /> + <widget name="posFrom" position="57,160" size="70,20" zPosition="1" font="Regular;20" halign="left" shadowColor="black" shadowOffset="-2,-2" transparent="1" /> + <widget name="Goto" position="5,182" size="50,17" zPosition="1" font="Regular;17" halign="left" shadowColor="black" shadowOffset="-2,-1" transparent="1" /> + <widget name="posGoto" position="57,180" size="70,20" zPosition="1" font="Regular;20" halign="left" shadowColor="black" shadowOffset="-2,-2" transparent="1" /> + <widget name="tunerName" position="5,144" size="90,16" zPosition="2" font="Regular;14" halign="left" shadowColor="black" shadowOffset="-2,-1" transparent="1" /> + <widget name="turnSpeed" position="75,95" size="50,16" zPosition="2" font="Regular;14" halign="right" shadowColor="black" shadowOffset="-2,-1" transparent="1" /> + <widget source="session.FrontendStatus" render="Progress" position="5,205" size="120,10" pixmap="skin_default/bar_snr.png" zPosition="2" borderWidth="2" borderColor="#cccccc"> + <convert type="FrontendInfo">SNR</convert> + </widget> + </screen>""" + + def __init__(self, session): + self.skin = Dish.skin + Screen.__init__(self, session) + + self["Dishpixmap"] = Pixmap() + self["turnTime"] = Label("") + self["posFrom"] = Label("") + self["posGoto"] = Label("") + self["From"] = Label(_("From :")) + self["Goto"] = Label(_("Goto :")) + self["tunerName"] = Label("") + self["turnSpeed"] = Label("") + + self.rotorTimer = eTimer() + self.rotorTimer.callback.append(self.updateRotorMovingState) + self.turnTimer = eTimer() + self.turnTimer.callback.append(self.turnTimerLoop) + self.timeoutTimer = eTimer() + self.timeoutTimer.callback.append(self.testIsTuned) + + config.usage.showdish.addNotifier(self.configChanged) + self.configChanged(config.usage.showdish) + + self.rotor_pos = self.cur_orbpos = config.misc.lastrotorposition.value + self.turn_time = self.total_time = self.pmt_timeout = self.close_timeout = None + self.cur_polar = 0 + self.__state = self.STATE_HIDDEN + + self.onShow.append(self.__onShow) + self.onHide.append(self.__onHide) + + self.__event_tracker = ServiceEventTracker(screen=self, + eventmap= { + iPlayableService.evStart: self.__serviceStarted, + iPlayableService.evTunedIn: self.__serviceTunedIn, + }) + + def updateRotorMovingState(self): + moving = eDVBSatelliteEquipmentControl.getInstance().isRotorMoving() + if moving: + if self.cur_orbpos != INVALID_POSITION and self.cur_orbpos != config.misc.lastrotorposition.value: + config.misc.lastrotorposition.value = self.cur_orbpos + config.misc.lastrotorposition.save() + if self.__state == self.STATE_HIDDEN: + self.show() + + def turnTimerLoop(self): + if self.total_time: + self.turn_time -= 1 + self["turnTime"].setText(self.FormatTurnTime(self.turn_time)) + self.close_timeout -=1 + if self.close_timeout < 0: + print "[Dish] timeout!" + self.__toHide() + + def __onShow(self): + self.__state = self.STATE_SHOWN + + prev_rotor_pos = self.rotor_pos + self.rotor_pos = self.cur_orbpos + self.total_time = self.getTurnTime(prev_rotor_pos, self.rotor_pos, self.cur_polar) + self.turn_time = self.total_time + self.close_timeout = round(self.total_time * 1.25) # aded 25% + + self["posFrom"].setText(self.OrbToStr(prev_rotor_pos)) + self["posGoto"].setText(self.OrbToStr(self.rotor_pos)) + self["tunerName"].setText(self.getTunerName()) + if self.total_time == 0: + self["turnTime"].setText("") + self["turnSpeed"].setText("") + else: + self["turnTime"].setText(self.FormatTurnTime(self.turn_time)) + self["turnSpeed"].setText(str(self.getTurningSpeed(self.cur_polar)) + chr(176) + _("/s")) + + self.turnTimer.start(1000, False) + + def __onHide(self): + self.__state = self.STATE_HIDDEN + self.turnTimer.stop() + + def __serviceStarted(self): + if self.__state == self.STATE_SHOWN: + self.hide() + if not self.showdish: + return + + service = self.session.nav.getCurrentService() + info = service and service.info() + data = info and info.getInfoObject(iServiceInformation.sTransponderData) + if not data or data == -1: + return + + tuner_type = data.get("tuner_type") + if tuner_type and "DVB-S" in tuner_type: + self.cur_orbpos = data.get("orbital_position", INVALID_POSITION) + self.cur_polar = data.get("polarization", 0) + self.rotorTimer.start(500, False) + + def __toHide(self): + self.rotorTimer.stop() + self.timeoutTimer.stop() + if self.__state == self.STATE_SHOWN: + self.hide() + + def __serviceTunedIn(self): + self.pmt_timeout = self.close_timeout + self.timeoutTimer.start(500, False) + + def testIsTuned(self): + if self.pmt_timeout >= 0: + service = self.session.nav.getCurrentService() + info = service and service.info() + pmt = info and info.getInfo(iServiceInformation.sPMTPID) + if pmt >= 0: + print "[Dish] tuned, closing..." + self.__toHide() + else: + self.pmt_timeout -= 0.5 + else: + self.__toHide() + print "[Dish] tuning failed" + + def dishState(self): + return self.__state + + def configChanged(self, configElement): + self.showdish = configElement.value + + def getTurnTime(self, start, end, pol=0): + mrt = abs(start - end) if start and end else 0 + if mrt > 0: + if (mrt > 1800): + mrt = 3600 - mrt + if (mrt % 10): + mrt += 10 + mrt = round((mrt * 1000 / self.getTurningSpeed(pol) ) / 10000) + 3 + return mrt + + def getTurningSpeed(self, pol=0): + tuner = self.getCurrentTuner() + if tuner is not None: + from Components.NimManager import nimmanager + nimConfig = nimmanager.getNimConfig(tuner) + if nimConfig.configMode.value == "simple": + if "positioner" in nimConfig.diseqcMode.value: + nim = config.Nims[tuner] + if pol in (1, 3): # vertical + return nim.turningspeedV.float + return nim.turningspeedH.float + elif nimConfig.configMode.value == "advanced": + if self.cur_orbpos != INVALID_POSITION: + satlist = nimConfig.advanced.sat.keys() + if self.cur_orbpos in satlist: + currSat = nimConfig.advanced.sat[self.cur_orbpos] + lnbnum = int(currSat.lnb.value) + currLnb = lnbnum and nimConfig.advanced.lnb[lnbnum] + diseqcmode = currLnb and currLnb.diseqcMode.value or "" + if diseqcmode == "1_2": + if pol in (1, 3): # vertical + return currLnb.turningspeedV.float + return currLnb.turningspeedH.float + if pol in (1, 3): + return 1.0 + return 1.5 + + def getCurrentTuner(self): + service = self.session.nav.getCurrentService() + feinfo = service and service.frontendInfo() + tuner = feinfo and feinfo.getFrontendData() + if tuner is not None: + return tuner.get("tuner_number") + return None + + def getTunerName(self): + nr = self.getCurrentTuner() + if nr is not None: + from Components.NimManager import nimmanager + nims = nimmanager.nimList() + if nr < 4: + return "".join(nims[nr].split(':')[:1]) + return " ".join((_("Tuner"),str(nr))) + return "" + + def OrbToStr(self, orbpos): + if orbpos == INVALID_POSITION: + return "N/A" + if orbpos > 1800: + orbpos = 3600 - orbpos + return "%d.%d°W" % (orbpos/10, orbpos%10) + return "%d.%d°E" % (orbpos/10, orbpos%10) + + def FormatTurnTime(self, time): + t = abs(time) + return "%s%02d:%02d" % (time < 0 and "- " or "", t/60%60, t%60) diff --git a/lib/python/Screens/EpgSelection.py b/lib/python/Screens/EpgSelection.py new file mode 100644 index 0000000..8bf5e4d --- /dev/null +++ b/lib/python/Screens/EpgSelection.py @@ -0,0 +1,465 @@ +from Screen import Screen +from Components.config import config, ConfigClock +from Components.Button import Button +from Components.Pixmap import Pixmap +from Components.Label import Label +from Components.EpgList import EPGList, EPG_TYPE_SINGLE, EPG_TYPE_SIMILAR, EPG_TYPE_MULTI +from Components.ActionMap import ActionMap +from Components.TimerSanityCheck import TimerSanityCheck +from Components.UsageConfig import preferredTimerPath +from Components.Sources.ServiceEvent import ServiceEvent +from Components.Sources.Event import Event +from Screens.ChoiceBox import ChoiceBox +from Screens.TimerEdit import TimerSanityConflict, TimerEditList +from Screens.EventView import EventViewSimple +from Screens.MessageBox import MessageBox +from TimeDateInput import TimeDateInput +from enigma import eServiceReference +from RecordTimer import RecordTimerEntry, parseEvent, AFTEREVENT +from TimerEntry import TimerEntry +from ServiceReference import ServiceReference +from time import localtime, time +from Components.PluginComponent import plugins +from Plugins.Plugin import PluginDescriptor +from Tools.BoundFunction import boundFunction + +mepg_config_initialized = False + +class EPGSelection(Screen): + EMPTY = 0 + ADD_TIMER = 1 + REMOVE_TIMER = 2 + + ZAP = 1 + + def __init__(self, session, service, zapFunc=None, eventid=None, bouquetChangeCB=None, serviceChangeCB=None): + Screen.__init__(self, session) + self.bouquetChangeCB = bouquetChangeCB + self.serviceChangeCB = serviceChangeCB + self.ask_time = -1 #now + self["key_red"] = Button("") + self.closeRecursive = False + self.saved_title = None + self["Service"] = ServiceEvent() + self["Event"] = Event() + self.session = session + if isinstance(service, str) and eventid != None: + self.type = EPG_TYPE_SIMILAR + self["key_yellow"] = Button() + self["key_blue"] = Button() + self["key_red"] = Button() + self.currentService=service + self.eventid = eventid + self.zapFunc = None + elif isinstance(service, eServiceReference) or isinstance(service, str): + self.type = EPG_TYPE_SINGLE + self["key_yellow"] = Button() + self["key_blue"] = Button() + self.currentService=ServiceReference(service) + self.zapFunc = zapFunc + self.sort_type = 0 + self.setSortDescription() + else: + self.skinName = "EPGSelectionMulti" + self.type = EPG_TYPE_MULTI + self["key_yellow"] = Button(pgettext("button label, 'previous screen'", "Prev")) + self["key_blue"] = Button(pgettext("button label, 'next screen'", "Next")) + self["now_button"] = Pixmap() + self["next_button"] = Pixmap() + self["more_button"] = Pixmap() + self["now_button_sel"] = Pixmap() + self["next_button_sel"] = Pixmap() + self["more_button_sel"] = Pixmap() + self["now_text"] = Label() + self["next_text"] = Label() + self["more_text"] = Label() + self["date"] = Label() + self.services = service + self.zapFunc = zapFunc + + self["key_green"] = Button(_("Add timer")) + self.key_green_choice = self.ADD_TIMER + self.key_red_choice = self.EMPTY + self["list"] = EPGList(type = self.type, selChangedCB = self.onSelectionChanged, timer = session.nav.RecordTimer) + + self["actions"] = ActionMap(["EPGSelectActions", "OkCancelActions"], + { + "cancel": self.closeScreen, + "ok": self.eventSelected, + "timerAdd": self.timerAdd, + "yellow": self.yellowButtonPressed, + "blue": self.blueButtonPressed, + "info": self.infoKeyPressed, + "red": self.zapTo, + "menu": self.furtherOptions, + "nextBouquet": self.nextBouquet, # just used in multi epg yet + "prevBouquet": self.prevBouquet, # just used in multi epg yet + "nextService": self.nextService, # just used in single epg yet + "prevService": self.prevService, # just used in single epg yet + "preview": self.eventPreview, + }) + self["actions"].csel = self + self.onLayoutFinish.append(self.onCreate) + + def nextBouquet(self): + if self.bouquetChangeCB: + self.bouquetChangeCB(1, self) + + def prevBouquet(self): + if self.bouquetChangeCB: + self.bouquetChangeCB(-1, self) + + def nextService(self): + if self.serviceChangeCB: + self.serviceChangeCB(1, self) + + def prevService(self): + if self.serviceChangeCB: + self.serviceChangeCB(-1, self) + + def enterDateTime(self): + if self.type == EPG_TYPE_MULTI: + global mepg_config_initialized + if not mepg_config_initialized: + config.misc.prev_mepg_time=ConfigClock(default = time()) + mepg_config_initialized = True + self.session.openWithCallback(self.onDateTimeInputClosed, TimeDateInput, config.misc.prev_mepg_time ) + + def furtherOptions(self): + menu = [] + text = _("Select action") + event = self["list"].getCurrent()[0] + if event: + menu = [(p.name, boundFunction(self.runPlugin, p)) for p in plugins.getPlugins(where = PluginDescriptor.WHERE_EVENTINFO) \ + if 'selectedevent' in p.__call__.func_code.co_varnames] + if menu: + text += _(": %s") % event.getEventName() + if self.type == EPG_TYPE_MULTI: + menu.append((_("Goto specific date/time"),self.enterDateTime)) + menu.append((_("Timer Overview"), self.openTimerOverview)) + if len(menu) == 1: + menu and menu[0][1]() + elif len(menu) > 1: + def boxAction(choice): + if choice: + choice[1]() + self.session.openWithCallback(boxAction, ChoiceBox, title=text, list=menu) + + def runPlugin(self, plugin): + event = self["list"].getCurrent() + plugin(session=self.session, selectedevent=event) + + def openTimerOverview(self): + self.session.open(TimerEditList) + + def onDateTimeInputClosed(self, ret): + if len(ret) > 1: + if ret[0]: + self.ask_time=ret[1] + self["list"].fillMultiEPG(self.services, ret[1]) + + def closeScreen(self): + if self.zapFunc: + self.zapFunc(None, zapback = True) + self.close(self.closeRecursive) + + def infoKeyPressed(self): + cur = self["list"].getCurrent() + event = cur[0] + service = cur[1] + if event is not None: + if self.type != EPG_TYPE_SIMILAR: + self.session.open(EventViewSimple, event, service, self.eventViewCallback, self.openSimilarList) + else: + self.session.open(EventViewSimple, event, service, self.eventViewCallback) + + def openSimilarList(self, eventid, refstr): + self.session.open(EPGSelection, refstr, None, eventid) + + def setServices(self, services): + self.services = services + self.onCreate() + + def setService(self, service): + self.currentService = service + self.onCreate() + + #just used in multipeg + def onCreate(self): + l = self["list"] + l.recalcEntrySize() + if self.type == EPG_TYPE_MULTI: + l.fillMultiEPG(self.services, self.ask_time) + l.moveToService(self.session.nav.getCurrentlyPlayingServiceOrGroup()) + elif self.type == EPG_TYPE_SINGLE: + service = self.currentService + self["Service"].newService(service.ref) + if self.saved_title is None: + self.saved_title = self.instance.getTitle() + title = self.saved_title + ' - ' + service.getServiceName() + self.instance.setTitle(title) + l.fillSingleEPG(service) + else: + l.fillSimilarList(self.currentService, self.eventid) + + def eventViewCallback(self, setEvent, setService, val): + l = self["list"] + old = l.getCurrent() + if val == -1: + self.moveUp() + elif val == +1: + self.moveDown() + cur = l.getCurrent() + if self.type == EPG_TYPE_MULTI and cur[0] is None and cur[1].ref != old[1].ref: + self.eventViewCallback(setEvent, setService, val) + else: + setService(cur[1]) + setEvent(cur[0]) + + def zapTo(self): + if self.key_red_choice == self.ZAP and self.zapFunc: + self.closeRecursive = True + from Components.ServiceEventTracker import InfoBarCount + if InfoBarCount > 1: + self.eventPreview() + else: + self.zapSelectedService() + self.close(self.closeRecursive) + + def zapSelectedService(self, prev=False): + lst = self["list"] + count = lst.getCurrentChangeCount() + if count == 0: + ref = lst.getCurrent()[1] + if ref is not None: + self.zapFunc(ref.ref, preview = prev) + + def eventPreview(self): + if self.zapFunc: + # if enabled, then closed whole EPG with EXIT: + # self.closeRecursive = True + self.zapSelectedService(True) + + def eventSelected(self): + if self.skinName == "EPGSelectionMulti": + cur = self["list"].getCurrent() + event = cur[0] + ref = cur[1] and cur[1].ref.toString() + if ref and event: + self.session.open(EPGSelection, ref) + else: + self.infoKeyPressed() + + def yellowButtonPressed(self): + if self.type == EPG_TYPE_MULTI: + self["list"].updateMultiEPG(-1) + elif self.type == EPG_TYPE_SINGLE: + if self.sort_type == 0: + self.sort_type = 1 + else: + self.sort_type = 0 + self["list"].sortSingleEPG(self.sort_type) + self.setSortDescription() + + def setSortDescription(self): + if self.sort_type == 1: + # TRANSLATORS: This must fit into the header button in the EPG-List + self["key_yellow"].setText(_("Sort time")) + else: + # TRANSLATORS: This must fit into the header button in the EPG-List + self["key_yellow"].setText(_("Sort A-Z")) + + def blueButtonPressed(self): + if self.type == EPG_TYPE_MULTI: + self["list"].updateMultiEPG(1) + + def removeTimer(self, timer): + timer.afterEvent = AFTEREVENT.NONE + self.session.nav.RecordTimer.removeEntry(timer) + self["key_green"].setText(_("Add timer")) + self.key_green_choice = self.ADD_TIMER + + def disableTimer(self, timer): + timer.disable() + self.session.nav.RecordTimer.timeChanged(timer) + self["key_green"].setText(_("Add timer")) + self.key_green_choice = self.ADD_TIMER + + def timerAdd(self): + cur = self["list"].getCurrent() + event = cur[0] + serviceref = cur[1] + if event is None: + return + eventid = event.getEventId() + refstr = ':'.join(serviceref.ref.toString().split(':')[:11]) + for timer in self.session.nav.RecordTimer.timer_list: + if timer.eit == eventid and ':'.join(timer.service_ref.ref.toString().split(':')[:11]) == refstr: + menu = [(_("Delete timer"), "delete"),(_("Edit timer"), "edit")] + buttons = ["red", "green"] + if not timer.isRunning(): + menu.append((_("Disable timer"), "disable")) + buttons.append("yellow") + menu.append((_("Timer Overview"), "timereditlist")) + def timerAction(choice): + if choice is not None: + if choice[1] == "delete": + self.removeTimer(timer) + elif choice[1] == "edit": + self.session.open(TimerEntry, timer) + elif choice[1] == "disable": + self.disableTimer(timer) + elif choice[1] == "timereditlist": + self.session.open(TimerEditList) + self.session.openWithCallback(timerAction, ChoiceBox, title=_("Select action for timer %s:") % event.getEventName(), list=menu, keys=buttons) + break + else: + newEntry = RecordTimerEntry(serviceref, checkOldTimers = True, dirname = preferredTimerPath(), *parseEvent(event)) + self.session.openWithCallback(self.finishedAdd, TimerEntry, newEntry) + + def finishedAdd(self, answer): + print "finished add" + if answer[0]: + entry = answer[1] + simulTimerList = self.session.nav.RecordTimer.record(entry) + if simulTimerList is not None: + for x in simulTimerList: + if x.setAutoincreaseEnd(entry): + self.session.nav.RecordTimer.timeChanged(x) + simulTimerList = self.session.nav.RecordTimer.record(entry) + if simulTimerList is not None: + if not entry.repeated and not config.recording.margin_before.value and not config.recording.margin_after.value and len(simulTimerList) > 1: + change_time = False + conflict_begin = simulTimerList[1].begin + conflict_end = simulTimerList[1].end + if conflict_begin == entry.end: + entry.end -= 30 + change_time = True + elif entry.begin == conflict_end: + entry.begin += 30 + change_time = True + if change_time: + simulTimerList = self.session.nav.RecordTimer.record(entry) + if simulTimerList is not None: + self.session.openWithCallback(self.finishSanityCorrection, TimerSanityConflict, simulTimerList) + self["key_green"].setText(_("Change timer")) + self.key_green_choice = self.REMOVE_TIMER + else: + self["key_green"].setText(_("Add timer")) + self.key_green_choice = self.ADD_TIMER + print "Timeredit aborted" + + def finishSanityCorrection(self, answer): + self.finishedAdd(answer) + + def moveUp(self): + self["list"].moveUp() + + def moveDown(self): + self["list"].moveDown() + + def applyButtonState(self, state): + if state == 0: + self["now_button"].hide() + self["now_button_sel"].hide() + self["next_button"].hide() + self["next_button_sel"].hide() + self["more_button"].hide() + self["more_button_sel"].hide() + self["now_text"].hide() + self["next_text"].hide() + self["more_text"].hide() + self["key_red"].setText("") + else: + if state == 1: + self["now_button_sel"].show() + self["now_button"].hide() + else: + self["now_button"].show() + self["now_button_sel"].hide() + + if state == 2: + self["next_button_sel"].show() + self["next_button"].hide() + else: + self["next_button"].show() + self["next_button_sel"].hide() + + if state == 3: + self["more_button_sel"].show() + self["more_button"].hide() + else: + self["more_button"].show() + self["more_button_sel"].hide() + + def onSelectionChanged(self): + cur = self["list"].getCurrent() + if cur is None: + if self.key_green_choice != self.EMPTY: + self["key_green"].setText("") + self.key_green_choice = self.EMPTY + if self.key_red_choice != self.EMPTY: + self["key_red"].setText("") + self.key_red_choice = self.EMPTY + return + event = cur[0] + self["Event"].newEvent(event) + if self.type == EPG_TYPE_MULTI: + count = self["list"].getCurrentChangeCount() + if self.ask_time != -1: + self.applyButtonState(0) + elif count > 1: + self.applyButtonState(3) + elif count > 0: + self.applyButtonState(2) + else: + self.applyButtonState(1) + days = [ _("Mon"), _("Tue"), _("Wed"), _("Thu"), _("Fri"), _("Sat"), _("Sun") ] + datestr = "" + if event is not None: + now = time() + beg = event.getBeginTime() + nowTime = localtime(now) + begTime = localtime(beg) + if nowTime[2] != begTime[2]: + datestr = '%s %d.%d.'%(days[begTime[6]], begTime[2], begTime[1]) + else: + datestr = '%s %d.%d.'%(_("Today"), begTime[2], begTime[1]) + self["date"].setText(datestr) + if cur[1] is None: + self["Service"].newService(None) + else: + self["Service"].newService(cur[1].ref) + + if cur[1] is None or cur[1].getServiceName() == "": + if self.key_green_choice != self.EMPTY: + self["key_green"].setText("") + self.key_green_choice = self.EMPTY + if self.key_red_choice != self.EMPTY: + self["key_red"].setText("") + self.key_red_choice = self.EMPTY + return + elif self.key_red_choice != self.ZAP and self.zapFunc is not None: + self["key_red"].setText(_("Zap")) + self.key_red_choice = self.ZAP + + if event is None: + if self.key_green_choice != self.EMPTY: + self["key_green"].setText("") + self.key_green_choice = self.EMPTY + return + + serviceref = cur[1] + eventid = event.getEventId() + refstr = ':'.join(serviceref.ref.toString().split(':')[:11]) + isRecordEvent = False + for timer in self.session.nav.RecordTimer.timer_list: + if timer.eit == eventid and ':'.join(timer.service_ref.ref.toString().split(':')[:11]) == refstr: + isRecordEvent = True + break + if isRecordEvent and self.key_green_choice != self.REMOVE_TIMER: + self["key_green"].setText(_("Change timer")) + self.key_green_choice = self.REMOVE_TIMER + elif not isRecordEvent and self.key_green_choice != self.ADD_TIMER: + self["key_green"].setText(_("Add timer")) + self.key_green_choice = self.ADD_TIMER diff --git a/lib/python/Screens/EventView.py b/lib/python/Screens/EventView.py new file mode 100644 index 0000000..6463594 --- /dev/null +++ b/lib/python/Screens/EventView.py @@ -0,0 +1,290 @@ +from Screen import Screen +from Screens.TimerEdit import TimerSanityConflict +from Screens.MessageBox import MessageBox +from Screens.ChoiceBox import ChoiceBox +from Components.ActionMap import ActionMap +from Components.Button import Button +from Components.Label import Label +from Components.ScrollLabel import ScrollLabel +from Components.PluginComponent import plugins +from Components.MenuList import MenuList +from Components.TimerList import TimerList +from Components.UsageConfig import preferredTimerPath +from Components.Sources.ServiceEvent import ServiceEvent +from Components.Sources.Event import Event +from enigma import eEPGCache, eTimer, eServiceReference +from RecordTimer import RecordTimerEntry, parseEvent, AFTEREVENT +from TimerEntry import TimerEntry +from Plugins.Plugin import PluginDescriptor +from Tools.BoundFunction import boundFunction +from time import localtime +from Components.config import config + +class EventViewBase: + ADD_TIMER = 0 + REMOVE_TIMER = 1 + + def __init__(self, event, Ref, callback=None, similarEPGCB=None): + self.similarEPGCB = similarEPGCB + self.cbFunc = callback + self.currentService=Ref + self.isRecording = (not Ref.ref.flags & eServiceReference.isGroup) and Ref.ref.getPath() + self.event = event + self["Service"] = ServiceEvent() + self["Event"] = Event() + self["epg_description"] = ScrollLabel() + self["FullDescription"] = ScrollLabel() + self["datetime"] = Label() + self["channel"] = Label() + self["duration"] = Label() + self["key_red"] = Button("") + if similarEPGCB is not None: + self.SimilarBroadcastTimer = eTimer() + self.SimilarBroadcastTimer.callback.append(self.getSimilarEvents) + else: + self.SimilarBroadcastTimer = None + self.key_green_choice = self.ADD_TIMER + if self.isRecording: + self["key_green"] = Button("") + else: + self["key_green"] = Button(_("Add timer")) + self["key_yellow"] = Button("") + self["key_blue"] = Button("") + self["actions"] = ActionMap(["OkCancelActions", "EventViewActions"], + { + "cancel": self.close, + "ok": self.close, + "pageUp": self.pageUp, + "pageDown": self.pageDown, + "prevEvent": self.prevEvent, + "nextEvent": self.nextEvent, + "timerAdd": self.timerAdd, + "openSimilarList": self.openSimilarList, + "contextMenu": self.doContext, + }) + self.onShown.append(self.onCreate) + + def onCreate(self): + self.setService(self.currentService) + self.setEvent(self.event) + + def prevEvent(self): + if self.cbFunc is not None: + self.cbFunc(self.setEvent, self.setService, -1) + + def nextEvent(self): + if self.cbFunc is not None: + self.cbFunc(self.setEvent, self.setService, +1) + + def removeTimer(self, timer): + timer.afterEvent = AFTEREVENT.NONE + self.session.nav.RecordTimer.removeEntry(timer) + self["key_green"].setText(_("Add timer")) + self.key_green_choice = self.ADD_TIMER + + def timerAdd(self): + if self.isRecording: + return + event = self.event + serviceref = self.currentService + if event is None: + return + eventid = event.getEventId() + refstr = ':'.join(serviceref.ref.toString().split(':')[:11]) + for timer in self.session.nav.RecordTimer.timer_list: + if timer.eit == eventid and ':'.join(timer.service_ref.ref.toString().split(':')[:11]) == refstr: + menu = [(_("Delete timer"), "delete"),(_("Edit timer"), "edit")] + buttons = ["red", "green"] + def timerAction(choice): + if choice is not None: + if choice[1] == "delete": + self.removeTimer(timer) + elif choice[1] == "edit": + self.session.open(TimerEntry, timer) + self.session.openWithCallback(timerAction, ChoiceBox, title=_("Select action for timer %s:") % event.getEventName(), list=menu, keys=buttons) + break + else: + newEntry = RecordTimerEntry(self.currentService, checkOldTimers = True, dirname = preferredTimerPath(), *parseEvent(self.event)) + self.session.openWithCallback(self.finishedAdd, TimerEntry, newEntry) + + def finishedAdd(self, answer): + print "finished add" + if answer[0]: + entry = answer[1] + simulTimerList = self.session.nav.RecordTimer.record(entry) + if simulTimerList is not None: + for x in simulTimerList: + if x.setAutoincreaseEnd(entry): + self.session.nav.RecordTimer.timeChanged(x) + simulTimerList = self.session.nav.RecordTimer.record(entry) + if simulTimerList is not None: + if not entry.repeated and not config.recording.margin_before.value and not config.recording.margin_after.value and len(simulTimerList) > 1: + change_time = False + conflict_begin = simulTimerList[1].begin + conflict_end = simulTimerList[1].end + if conflict_begin == entry.end: + entry.end -= 30 + change_time = True + elif entry.begin == conflict_end: + entry.begin += 30 + change_time = True + if change_time: + simulTimerList = self.session.nav.RecordTimer.record(entry) + if simulTimerList is not None: + self.session.openWithCallback(self.finishSanityCorrection, TimerSanityConflict, simulTimerList) + self["key_green"].setText(_("Change timer")) + self.key_green_choice = self.REMOVE_TIMER + else: + self["key_green"].setText(_("Add timer")) + self.key_green_choice = self.ADD_TIMER + print "Timeredit aborted" + + def finishSanityCorrection(self, answer): + self.finishedAdd(answer) + + def setService(self, service): + self.currentService=service + self["Service"].newService(service.ref) + if self.isRecording: + self["channel"].setText(_("Recording")) + else: + name = service.getServiceName() + if name is not None: + self["channel"].setText(name) + else: + self["channel"].setText(_("unknown service")) + + def sort_func(self,x,y): + if x[1] < y[1]: + return -1 + elif x[1] == y[1]: + return 0 + else: + return 1 + + def setEvent(self, event): + self.event = event + self["Event"].newEvent(event) + if event is None: + return + text = event.getEventName() + short = event.getShortDescription() + ext = event.getExtendedDescription() + if short == text: + short = "" + if short and ext: + ext = short + "\n\n" + ext + elif short: + ext = short + + if text and ext: + text += "\n\n" + text += ext + + self.setTitle(event.getEventName()) + self["epg_description"].setText(text) + self["FullDescription"].setText(ext) + self["datetime"].setText(event.getBeginTimeString()) + self["duration"].setText(_("%d min")%(event.getDuration()/60)) + self["key_red"].setText("") + if self.SimilarBroadcastTimer is not None: + self.SimilarBroadcastTimer.start(400,True) + + serviceref = self.currentService + eventid = self.event.getEventId() + refstr = ':'.join(serviceref.ref.toString().split(':')[:11]) + isRecordEvent = False + for timer in self.session.nav.RecordTimer.timer_list: + if timer.eit == eventid and ':'.join(timer.service_ref.ref.toString().split(':')[:11]) == refstr: + isRecordEvent = True + break + if isRecordEvent and self.key_green_choice != self.REMOVE_TIMER: + self["key_green"].setText(_("Change timer")) + self.key_green_choice = self.REMOVE_TIMER + elif not isRecordEvent and self.key_green_choice != self.ADD_TIMER: + self["key_green"].setText(_("Add timer")) + self.key_green_choice = self.ADD_TIMER + + + def pageUp(self): + self["epg_description"].pageUp() + self["FullDescription"].pageUp() + + def pageDown(self): + self["epg_description"].pageDown() + self["FullDescription"].pageDown() + + def getSimilarEvents(self): + # search similar broadcastings + if not self.event: + return + refstr = str(self.currentService) + id = self.event.getEventId() + epgcache = eEPGCache.getInstance() + ret = epgcache.search(('NB', 100, eEPGCache.SIMILAR_BROADCASTINGS_SEARCH, refstr, id)) + if ret is not None: + text = '\n\n' + _('Similar broadcasts:') + ret.sort(self.sort_func) + for x in ret: + t = localtime(x[1]) + text += '\n%d.%d.%d, %2d:%02d - %s'%(t[2], t[1], t[0], t[3], t[4], x[0]) + descr = self["epg_description"] + descr.setText(descr.getText()+text) + descr = self["FullDescription"] + descr.setText(descr.getText()+text) + self["key_red"].setText(_("Similar")) + + def openSimilarList(self): + if self.similarEPGCB is not None and self["key_red"].getText(): + id = self.event and self.event.getEventId() + refstr = str(self.currentService) + if id is not None: + self.similarEPGCB(id, refstr) + + def doContext(self): + if self.event: + text = _("Select action") + menu = [(p.name, boundFunction(self.runPlugin, p)) for p in plugins.getPlugins(where = PluginDescriptor.WHERE_EVENTINFO) \ + if 'servicelist' not in p.__call__.func_code.co_varnames \ + if 'selectedevent' not in p.__call__.func_code.co_varnames ] + if len(menu) == 1: + menu and menu[0][1]() + elif len(menu) > 1: + def boxAction(choice): + if choice: + choice[1]() + text += _(": %s") % self.event.getEventName() + self.session.openWithCallback(boxAction, ChoiceBox, title=text, list=menu) + + def runPlugin(self, plugin): + plugin(session=self.session, service=self.currentService, event=self.event, eventName=self.event.getEventName()) + +class EventViewSimple(Screen, EventViewBase): + def __init__(self, session, Event, Ref, callback=None, similarEPGCB=None): + Screen.__init__(self, session) + self.skinName = "EventView" + EventViewBase.__init__(self, Event, Ref, callback, similarEPGCB) + +class EventViewEPGSelect(Screen, EventViewBase): + def __init__(self, session, Event, Ref, callback=None, singleEPGCB=None, multiEPGCB=None, similarEPGCB=None): + Screen.__init__(self, session) + self.skinName = "EventView" + EventViewBase.__init__(self, Event, Ref, callback, similarEPGCB) + self["key_yellow"].setText(_("Single EPG")) + self["key_blue"].setText(_("Multi EPG")) + self["epgactions"] = ActionMap(["EventViewEPGActions"], + { + "openSingleServiceEPG": singleEPGCB, + "openMultiServiceEPG": multiEPGCB, + }) + +class EventViewRecording(Screen, EventViewBase): + def __init__(self, session, Event, Ref, callback=None, multiEPGCB=None, similarEPGCB=None): + Screen.__init__(self, session) + self.skinName = "EventView" + EventViewBase.__init__(self, Event, Ref, callback, similarEPGCB) + self["key_blue"].setText(_("Multi EPG")) + self["epgactions"] = ActionMap(["EventViewEPGActions"], + { + "openMultiServiceEPG": multiEPGCB, + }) diff --git a/lib/python/Screens/FactoryReset.py b/lib/python/Screens/FactoryReset.py new file mode 100644 index 0000000..ce5aaeb --- /dev/null +++ b/lib/python/Screens/FactoryReset.py @@ -0,0 +1,9 @@ +from Screens.MessageBox import MessageBox + +class FactoryReset(MessageBox): + def __init__(self, session): + MessageBox.__init__(self, session, _("When you do a factory reset, you will lose ALL your configuration data\n" + "(including bouquets, services, satellite data ...)\n" + "After completion of factory reset, your receiver will restart automatically!\n\n" + "Really do a factory reset?"), MessageBox.TYPE_YESNO) + self.skinName = "MessageBox" \ No newline at end of file diff --git a/lib/python/Screens/FixedMenu.py b/lib/python/Screens/FixedMenu.py new file mode 100644 index 0000000..97c2af0 --- /dev/null +++ b/lib/python/Screens/FixedMenu.py @@ -0,0 +1,23 @@ +from Screen import Screen +from Components.Sources.List import List +from Components.ActionMap import ActionMap +from Components.Sources.StaticText import StaticText + +class FixedMenu(Screen): + def okbuttonClick(self): + selection = self["menu"].getCurrent() + if selection and len(selection) > 1: + selection[1]() + + def __init__(self, session, title, list): + Screen.__init__(self, session) + + self["menu"] = List(list) + + self["actions"] = ActionMap(["OkCancelActions"], + { + "ok": self.okbuttonClick, + "cancel": self.close + }) + + self["title"] = StaticText(title) diff --git a/lib/python/Screens/Globals.py b/lib/python/Screens/Globals.py new file mode 100644 index 0000000..9ae1002 --- /dev/null +++ b/lib/python/Screens/Globals.py @@ -0,0 +1,7 @@ +from Screens.Screen import Screen +from Components.Sources.Clock import Clock + +class Globals(Screen): + def __init__(self): + Screen.__init__(self, None) + self["CurrentTime"] = Clock() diff --git a/lib/python/Screens/HarddiskSetup.py b/lib/python/Screens/HarddiskSetup.py new file mode 100644 index 0000000..83db088 --- /dev/null +++ b/lib/python/Screens/HarddiskSetup.py @@ -0,0 +1,83 @@ +from Screen import Screen +from Components.ActionMap import ActionMap +from Components.Harddisk import harddiskmanager +from Components.MenuList import MenuList +from Components.Label import Label +from Components.Pixmap import Pixmap +from Screens.MessageBox import MessageBox + +class HarddiskSetup(Screen): + def __init__(self, session, hdd, action, text, question): + Screen.__init__(self, session) + self.action = action + self.question = question + self["model"] = Label(_("Model: ") + hdd.model()) + self["capacity"] = Label(_("Capacity: ") + hdd.capacity()) + self["bus"] = Label(_("Bus: ") + hdd.bus()) + self["initialize"] = Pixmap() + self["initializetext"] = Label(text) + self["actions"] = ActionMap(["OkCancelActions"], + { + "ok": self.hddQuestion, + "cancel": self.close + }) + self["shortcuts"] = ActionMap(["ShortcutActions"], + { + "red": self.hddQuestion + }) + + def hddQuestion(self): + message = self.question + "\n" + _("You can continue watching TV etc. while this is running.") + self.session.openWithCallback(self.hddConfirmed, MessageBox, message) + + def hddConfirmed(self, confirmed): + if not confirmed: + return + from Components.Task import job_manager + try: + job_manager.AddJob(self.action(), onSuccess=job_manager.popupTaskView) + except Exception, ex: + self.session.open(MessageBox, str(ex), type=MessageBox.TYPE_ERROR, timeout=10) + self.close() + +class HarddiskSelection(Screen): + def __init__(self, session): + Screen.__init__(self, session) + self.skinName = "HarddiskSelection" # For derived classes + if harddiskmanager.HDDCount() == 0: + tlist = [] + tlist.append((_("no storage devices found"), 0)) + self["hddlist"] = MenuList(tlist) + else: + self["hddlist"] = MenuList(harddiskmanager.HDDList()) + self["actions"] = ActionMap(["OkCancelActions"], + { + "ok": self.okbuttonClick, + "cancel": self.close + }) + + def doIt(self, selection): + self.session.openWithCallback(self.close, HarddiskSetup, selection, + action=selection.createInitializeJob, + text=_("Initialize"), + question=_("Do you really want to initialize the device?\nAll data on the disk will be lost!")) + + def okbuttonClick(self): + selection = self["hddlist"].getCurrent() + if selection[1] != 0: + self.doIt(selection[1]) + +# This is actually just HarddiskSelection but with correct type +class HarddiskFsckSelection(HarddiskSelection): + def doIt(self, selection): + self.session.openWithCallback(self.close, HarddiskSetup, selection, + action=selection.createCheckJob, + text=_("Check"), + question=_("Do you really want to check the filesystem?\nThis could take lots of time!")) + +class HarddiskConvertExt4Selection(HarddiskSelection): + def doIt(self, selection): + self.session.openWithCallback(self.close, HarddiskSetup, selection, + action=selection.createExt4ConversionJob, + text=_("Convert ext3 to ext4"), + question=_("Do you really want to convert the filesystem?\nYou cannot go back!")) diff --git a/lib/python/Screens/HelpMenu.py b/lib/python/Screens/HelpMenu.py new file mode 100644 index 0000000..6494860 --- /dev/null +++ b/lib/python/Screens/HelpMenu.py @@ -0,0 +1,61 @@ +from Screen import Screen +from Components.Pixmap import Pixmap, MovingPixmap +from Components.Label import Label +from Components.ActionMap import ActionMap +from Components.HelpMenuList import HelpMenuList +from Screens.Rc import Rc + +class HelpMenu(Screen, Rc): + def __init__(self, session, list): + Screen.__init__(self, session) + self.onSelChanged = [ ] + self["list"] = HelpMenuList(list, self.close) + self["list"].onSelChanged.append(self.SelectionChanged) + Rc.__init__(self) + self["long_key"] = Label("") + + self["actions"] = ActionMap(["WizardActions"], + { + "ok": self["list"].ok, + "back": self.close, + }, -1) + + self.onLayoutFinish.append(self.SelectionChanged) + + def SelectionChanged(self): + self.clearSelectedKeys() + selection = self["list"].getCurrent() + if selection: + selection = selection[3] + #arrow = self["arrowup"] + print "selection:", selection + + longText = "" + if selection and len(selection) > 1: + if selection[1] == "SHIFT": + self.selectKey("SHIFT") + elif selection[1] == "long": + longText = _("Long key press") + self["long_key"].setText(longText) + + self.selectKey(selection[0]) + #if selection is None: + print "select arrow" + # arrow.moveTo(selection[1], selection[2], 1) + # arrow.startMoving() + # arrow.show() + +class HelpableScreen: + def __init__(self): + self["helpActions"] = ActionMap( [ "HelpActions" ], + { + "displayHelp": self.showHelp, + }) + + def showHelp(self): + self.session.openWithCallback(self.callHelpAction, HelpMenu, self.helpList) + + def callHelpAction(self, *args): + if args: + (actionmap, context, action) = args + actionmap.action(context, action) diff --git a/lib/python/Screens/InfoBar.py b/lib/python/Screens/InfoBar.py new file mode 100644 index 0000000..8b3ddfa --- /dev/null +++ b/lib/python/Screens/InfoBar.py @@ -0,0 +1,518 @@ +from Tools.Profile import profile +from Tools.BoundFunction import boundFunction +from enigma import eServiceReference + +# workaround for required config entry dependencies. +import Screens.MovieSelection + +from Screen import Screen +from Screens.MessageBox import MessageBox + +profile("LOAD:enigma") +import enigma + +profile("LOAD:InfoBarGenerics") +from Screens.InfoBarGenerics import InfoBarShowHide, \ + InfoBarNumberZap, InfoBarChannelSelection, InfoBarMenu, InfoBarRdsDecoder, \ + InfoBarEPG, InfoBarSeek, InfoBarInstantRecord, InfoBarRedButton, InfoBarTimerButton, InfoBarVmodeButton, \ + InfoBarAudioSelection, InfoBarAdditionalInfo, InfoBarNotifications, InfoBarDish, InfoBarUnhandledKey, \ + InfoBarSubserviceSelection, InfoBarShowMovies, InfoBarTimeshift, \ + InfoBarServiceNotifications, InfoBarPVRState, InfoBarCueSheetSupport, \ + InfoBarSummarySupport, InfoBarMoviePlayerSummarySupport, InfoBarTimeshiftState, InfoBarTeletextPlugin, InfoBarExtensions, \ + InfoBarSubtitleSupport, InfoBarPiP, InfoBarPlugins, InfoBarServiceErrorPopupSupport, InfoBarJobman, InfoBarPowersaver, \ + InfoBarHDMI, setResumePoint, delResumePoint + +profile("LOAD:InitBar_Components") +from Components.ActionMap import HelpableActionMap +from Components.config import config +from Components.ServiceEventTracker import ServiceEventTracker, InfoBarBase + +profile("LOAD:HelpableScreen") +from Screens.HelpMenu import HelpableScreen + +class InfoBar(InfoBarBase, InfoBarShowHide, + InfoBarNumberZap, InfoBarChannelSelection, InfoBarMenu, InfoBarEPG, InfoBarRdsDecoder, + InfoBarInstantRecord, InfoBarAudioSelection, InfoBarRedButton, InfoBarTimerButton, InfoBarVmodeButton, + HelpableScreen, InfoBarAdditionalInfo, InfoBarNotifications, InfoBarDish, InfoBarUnhandledKey, + InfoBarSubserviceSelection, InfoBarTimeshift, InfoBarSeek, InfoBarCueSheetSupport, + InfoBarSummarySupport, InfoBarTimeshiftState, InfoBarTeletextPlugin, InfoBarExtensions, + InfoBarPiP, InfoBarPlugins, InfoBarSubtitleSupport, InfoBarServiceErrorPopupSupport, InfoBarJobman, InfoBarPowersaver, + InfoBarHDMI, Screen): + + ALLOW_SUSPEND = True + instance = None + + def __init__(self, session): + Screen.__init__(self, session) + self["actions"] = HelpableActionMap(self, "InfobarActions", + { + "showMovies": (self.showMovies, _("Play recorded movies...")), + "showRadio": (self.showRadio, _("Show the radio player...")), + "showTv": (self.showTv, _("Show the tv player...")), + }, prio=2) + + self.allowPiP = True + + for x in HelpableScreen, \ + InfoBarBase, InfoBarShowHide, \ + InfoBarNumberZap, InfoBarChannelSelection, InfoBarMenu, InfoBarEPG, InfoBarRdsDecoder, \ + InfoBarInstantRecord, InfoBarAudioSelection, InfoBarRedButton, InfoBarTimerButton, InfoBarUnhandledKey, InfoBarVmodeButton,\ + InfoBarAdditionalInfo, InfoBarNotifications, InfoBarDish, InfoBarSubserviceSelection, \ + InfoBarTimeshift, InfoBarSeek, InfoBarCueSheetSupport, InfoBarSummarySupport, InfoBarTimeshiftState, \ + InfoBarTeletextPlugin, InfoBarExtensions, InfoBarPiP, InfoBarSubtitleSupport, InfoBarJobman, InfoBarPowersaver, \ + InfoBarPlugins, InfoBarServiceErrorPopupSupport, InfoBarHDMI: + x.__init__(self) + + self.helpList.append((self["actions"], "InfobarActions", [("showMovies", _("Watch recordings..."))])) + self.helpList.append((self["actions"], "InfobarActions", [("showRadio", _("Listen to the radio..."))])) + + self.__event_tracker = ServiceEventTracker(screen=self, eventmap= + { + enigma.iPlayableService.evUpdatedEventInfo: self.__eventInfoChanged + }) + + self.current_begin_time=0 + assert InfoBar.instance is None, "class InfoBar is a singleton class and just one instance of this class is allowed!" + InfoBar.instance = self + + def __onClose(self): + InfoBar.instance = None + + def __eventInfoChanged(self): + if self.execing: + service = self.session.nav.getCurrentService() + old_begin_time = self.current_begin_time + info = service and service.info() + ptr = info and info.getEvent(0) + self.current_begin_time = ptr and ptr.getBeginTime() or 0 + if config.usage.show_infobar_on_event_change.value: + if old_begin_time and old_begin_time != self.current_begin_time: + self.doShow() + + def __checkServiceStarted(self): + self.__serviceStarted(True) + self.onExecBegin.remove(self.__checkServiceStarted) + + def serviceStarted(self): #override from InfoBarShowHide + new = self.servicelist.newServicePlayed() + if self.execing: + InfoBarShowHide.serviceStarted(self) + self.current_begin_time=0 + elif not self.__checkServiceStarted in self.onShown and new: + self.onShown.append(self.__checkServiceStarted) + + def __checkServiceStarted(self): + self.serviceStarted() + self.onShown.remove(self.__checkServiceStarted) + + def showTv(self): + self.showTvChannelList(True) + + def showRadio(self): + if config.usage.e1like_radio_mode.value: + self.showRadioChannelList(True) + else: + self.rds_display.hide() # in InfoBarRdsDecoder + from Screens.ChannelSelection import ChannelSelectionRadio + self.session.openWithCallback(self.ChannelSelectionRadioClosed, ChannelSelectionRadio, self) + + def ChannelSelectionRadioClosed(self, *arg): + self.rds_display.show() # in InfoBarRdsDecoder + self.servicelist.correctChannelNumber() + + def showMovies(self, defaultRef=None): + self.lastservice = self.session.nav.getCurrentlyPlayingServiceOrGroup() + self.session.openWithCallback(self.movieSelected, Screens.MovieSelection.MovieSelection, defaultRef or eServiceReference(config.usage.last_movie_played.value), timeshiftEnabled = self.timeshiftEnabled()) + + def movieSelected(self, service): + ref = self.lastservice + del self.lastservice + if service is None: + if ref and not self.session.nav.getCurrentlyPlayingServiceOrGroup(): + self.session.nav.playService(ref) + else: + self.session.open(MoviePlayer, service, slist=self.servicelist, lastservice=ref, infobar=self) + +class MoviePlayer(InfoBarBase, InfoBarShowHide, InfoBarMenu, InfoBarSeek, InfoBarShowMovies, InfoBarInstantRecord, + InfoBarAudioSelection, HelpableScreen, InfoBarNotifications, InfoBarServiceNotifications, InfoBarPVRState, + InfoBarCueSheetSupport, InfoBarMoviePlayerSummarySupport, InfoBarSubtitleSupport, Screen, InfoBarTeletextPlugin, + InfoBarServiceErrorPopupSupport, InfoBarExtensions, InfoBarPlugins, InfoBarPiP, InfoBarHDMI): + + ENABLE_RESUME_SUPPORT = True + ALLOW_SUSPEND = True + + def __init__(self, session, service, slist=None, lastservice=None, infobar=None): + Screen.__init__(self, session) + + self["actions"] = HelpableActionMap(self, "MoviePlayerActions", + { + "InfoButtonPressed": (self.openEventView, _("open Info...")), + "EPGButtonPressed": (self.showDefaultEPG, _("open EPG...")), + "InfoButtonPressedLong": (self.showEventInfoPlugins, _("select Info...")), + "EPGButtonPressedLong": (self.showEventGuidePlugins, _("select EPG...")), + "leavePlayer": (self.leavePlayer, _("leave movie player...")), + "leavePlayerOnExit": (self.leavePlayerOnExit, _("leave movie player...")), + "channelUp": (self.channelUp, _("when PiPzap enabled zap channel up...")), + "channelDown": (self.channelDown, _("when PiPzap enabled zap channel down...")), + }) + + self["DirectionActions"] = HelpableActionMap(self, "DirectionActions", + { + "left": self.left, + "right": self.right + }, prio = -2) + + self.allowPiP = True + + for x in HelpableScreen, InfoBarShowHide, InfoBarMenu, \ + InfoBarBase, InfoBarSeek, InfoBarShowMovies, InfoBarInstantRecord, \ + InfoBarAudioSelection, InfoBarNotifications, \ + InfoBarServiceNotifications, InfoBarPVRState, InfoBarCueSheetSupport, \ + InfoBarMoviePlayerSummarySupport, InfoBarSubtitleSupport, \ + InfoBarTeletextPlugin, InfoBarServiceErrorPopupSupport, InfoBarExtensions, \ + InfoBarPlugins, InfoBarPiP, InfoBarHDMI: + x.__init__(self) + + self.servicelist = slist + self.infobar = infobar + self.lastservice = lastservice or session.nav.getCurrentlyPlayingServiceOrGroup() + session.nav.playService(service) + self.cur_service = service + self.returning = False + self.onClose.append(self.__onClose) + + def __onClose(self): + from Screens.MovieSelection import playlist + del playlist[:] + if not config.movielist.stop_service.value: + Screens.InfoBar.InfoBar.instance.callServiceStarted() + self.session.nav.playService(self.lastservice) + config.usage.last_movie_played.value = self.cur_service.toString() + config.usage.last_movie_played.save() + + def handleLeave(self, how): + self.is_closing = True + if how == "ask": + if config.usage.setup_level.index < 2: # -expert + list = ( + (_("Yes"), "quit"), + (_("No"), "continue") + ) + else: + list = ( + (_("Yes"), "quit"), + (_("Yes, returning to movie list"), "movielist"), + (_("Yes, and delete this movie"), "quitanddelete"), + (_("Yes, delete this movie and return to movie list"), "deleteandmovielist"), + (_("No"), "continue"), + (_("No, but restart from begin"), "restart") + ) + + from Screens.ChoiceBox import ChoiceBox + self.session.openWithCallback(self.leavePlayerConfirmed, ChoiceBox, title=_("Stop playing this movie?"), list = list) + else: + self.leavePlayerConfirmed([True, how]) + + def leavePlayer(self): + setResumePoint(self.session) + self.handleLeave(config.usage.on_movie_stop.value) + + def leavePlayerOnExit(self): + if self.shown: + self.hide() + elif self.session.pipshown and "popup" in config.usage.pip_hideOnExit.value: + if config.usage.pip_hideOnExit.value == "popup": + self.session.openWithCallback(self.hidePipOnExitCallback, MessageBox, _("Disable Picture in Picture"), simple=True) + else: + self.hidePipOnExitCallback(True) + elif config.usage.leave_movieplayer_onExit.value == "popup": + self.session.openWithCallback(self.leavePlayerOnExitCallback, MessageBox, _("Exit movie player?"), simple=True) + elif config.usage.leave_movieplayer_onExit.value == "without popup": + self.leavePlayerOnExitCallback(True) + + def leavePlayerOnExitCallback(self, answer): + if answer == True: + setResumePoint(self.session) + self.handleLeave("quit") + + def hidePipOnExitCallback(self, answer): + if answer == True: + self.showPiP() + + def deleteConfirmed(self, answer): + if answer: + self.leavePlayerConfirmed((True, "quitanddeleteconfirmed")) + + def deleteAndMovielistConfirmed(self, answer): + if answer: + self.leavePlayerConfirmed((True, "deleteandmovielistconfirmed")) + + def movielistAgain(self): + from Screens.MovieSelection import playlist + del playlist[:] + self.leavePlayerConfirmed((True, "movielist")) + + def leavePlayerConfirmed(self, answer): + answer = answer and answer[1] + if answer is None: + return + if answer in ("quitanddelete", "quitanddeleteconfirmed", "deleteandmovielist", "deleteandmovielistconfirmed"): + ref = self.session.nav.getCurrentlyPlayingServiceOrGroup() + serviceHandler = enigma.eServiceCenter.getInstance() + if answer in ("quitanddelete", "deleteandmovielist"): + msg = '' + if config.usage.movielist_trashcan.value: + import Tools.Trashcan + try: + trash = Tools.Trashcan.createTrashFolder(ref.getPath()) + Screens.MovieSelection.moveServiceFiles(ref, trash) + # Moved to trash, okay + if answer == "quitanddelete": + self.close() + else: + self.movielistAgain() + return + except Exception, e: + print "[InfoBar] Failed to move to .Trash folder:", e + msg = _("Cannot move to trash can") + "\n" + str(e) + "\n" + info = serviceHandler.info(ref) + name = info and info.getName(ref) or _("this recording") + msg += _("Do you really want to delete %s?") % name + if answer == "quitanddelete": + self.session.openWithCallback(self.deleteConfirmed, MessageBox, msg) + elif answer == "deleteandmovielist": + self.session.openWithCallback(self.deleteAndMovielistConfirmed, MessageBox, msg) + return + + elif answer in ("quitanddeleteconfirmed", "deleteandmovielistconfirmed"): + offline = serviceHandler.offlineOperations(ref) + if offline.deleteFromDisk(0): + self.session.openWithCallback(self.close, MessageBox, _("You cannot delete this!"), MessageBox.TYPE_ERROR) + if answer == "deleteandmovielistconfirmed": + self.movielistAgain() + return + + if answer in ("quit", "quitanddeleteconfirmed"): + self.close() + elif answer in ("movielist", "deleteandmovielistconfirmed"): + ref = self.session.nav.getCurrentlyPlayingServiceOrGroup() + self.returning = True + self.session.openWithCallback(self.movieSelected, Screens.MovieSelection.MovieSelection, ref) + self.session.nav.stopService() + if not config.movielist.stop_service.value: + self.session.nav.playService(self.lastservice) + elif answer == "restart": + self.doSeek(0) + self.setSeekState(self.SEEK_STATE_PLAY) + elif answer in ("playlist","playlistquit","loop"): + ( next_service, item , lenght ) = self.getPlaylistServiceInfo(self.cur_service) + if next_service is not None: + if config.usage.next_movie_msg.value: + self.displayPlayedName(next_service, item, lenght) + self.session.nav.playService(next_service) + self.cur_service = next_service + else: + if answer == "playlist": + self.leavePlayerConfirmed([True,"movielist"]) + elif answer == "loop" and lenght > 0: + self.leavePlayerConfirmed([True,"loop"]) + else: + self.leavePlayerConfirmed([True,"quit"]) + elif answer in ("repeatcurrent"): + if config.usage.next_movie_msg.value: + (item, lenght) = self.getPlaylistServiceInfo(self.cur_service) + self.displayPlayedName(self.cur_service, item, lenght) + self.session.nav.stopService() + self.session.nav.playService(self.cur_service) + + def doEofInternal(self, playing): + if not self.execing: + return + if not playing : + return + ref = self.session.nav.getCurrentlyPlayingServiceOrGroup() + if ref: + delResumePoint(ref) + self.handleLeave(config.usage.on_movie_eof.value) + + def up(self): + slist = self.servicelist + if self.servicelist and self.servicelist.dopipzap: + if config.usage.oldstyle_zap_controls.value: + self.zapDown() + else: + self.switchChannelUp() + else: + self.showMovies() + + def down(self): + if self.servicelist and self.servicelist.dopipzap: + if config.usage.oldstyle_zap_controls.value: + self.zapUp() + else: + self.switchChannelDown() + else: + self.showMovies() + + def right(self): + if self.servicelist and self.servicelist.dopipzap: + if config.usage.oldstyle_zap_controls.value: + self.switchChannelDown() + else: + self.zapDown() + else: + InfoBarSeek.seekFwd(self) + + def left(self): + if self.servicelist and self.servicelist.dopipzap: + if config.usage.oldstyle_zap_controls.value: + self.switchChannelUp() + else: + self.zapUp() + else: + InfoBarSeek.seekBack(self) + + def channelUp(self): + if config.usage.zap_with_ch_buttons.value and self.servicelist.dopipzap: + self.zapDown() + else: + return 0 + + def channelDown(self): + if config.usage.zap_with_ch_buttons.value and self.servicelist.dopipzap: + self.zapUp() + else: + return 0 + + def switchChannelDown(self): + if "keep" not in config.usage.servicelist_cursor_behavior.value: + self.servicelist.moveDown() + self.session.execDialog(self.servicelist) + + def switchChannelUp(self): + if "keep" not in config.usage.servicelist_cursor_behavior.value: + self.servicelist.moveUp() + self.session.execDialog(self.servicelist) + + def zapUp(self): + slist = self.servicelist + if slist.inBouquet(): + prev = slist.getCurrentSelection() + if prev: + prev = prev.toString() + while True: + if config.usage.quickzap_bouquet_change.value: + if slist.atBegin(): + slist.prevBouquet() + slist.moveUp() + cur = slist.getCurrentSelection() + if cur: + playable = not (cur.flags & (64|8)) and hasattr(self.session, "pip") and self.session.pip.isPlayableForPipService(cur) + if cur.toString() == prev or playable: + break + else: + slist.moveUp() + slist.zap(enable_pipzap = True) + + def zapDown(self): + slist = self.servicelist + if slist.inBouquet(): + prev = slist.getCurrentSelection() + if prev: + prev = prev.toString() + while True: + if config.usage.quickzap_bouquet_change.value and slist.atEnd(): + slist.nextBouquet() + else: + slist.moveDown() + cur = slist.getCurrentSelection() + if cur: + playable = not (cur.flags & (64|8)) and hasattr(self.session, "pip") and self.session.pip.isPlayableForPipService(cur) + if cur.toString() == prev or playable: + break + else: + slist.moveDown() + slist.zap(enable_pipzap = True) + + def showPiP(self): + slist = self.servicelist + if self.session.pipshown: + if slist and slist.dopipzap: + slist.togglePipzap() + if self.session.pipshown: + del self.session.pip + self.session.pipshown = False + else: + from Screens.PictureInPicture import PictureInPicture + self.session.pip = self.session.instantiateDialog(PictureInPicture) + self.session.pip.show() + if self.session.pip.playService(slist.getCurrentSelection()): + self.session.pipshown = True + self.session.pip.servicePath = slist.getCurrentServicePath() + else: + self.session.pipshown = False + del self.session.pip + + def movePiP(self): + if self.session.pipshown: + InfoBarPiP.movePiP(self) + + def swapPiP(self): + pass + + def showDefaultEPG(self): + if self.infobar: + self.infobar.showMultiEPG() + + def openEventView(self): + if self.infobar: + self.infobar.showDefaultEPG() + + def showEventInfoPlugins(self): + if self.infobar: + self.infobar.showEventInfoPlugins() + + def showEventGuidePlugins(self): + if self.infobar: + self.infobar.showEventGuidePlugins() + + def showMovies(self): + ref = self.session.nav.getCurrentlyPlayingServiceOrGroup() + self.playingservice = ref # movie list may change the currently playing + self.session.openWithCallback(self.movieSelected, Screens.MovieSelection.MovieSelection, ref) + + def movieSelected(self, service): + if service is not None: + self.cur_service = service + self.is_closing = False + self.session.nav.playService(service) + self.returning = False + elif self.returning: + self.close() + else: + self.is_closing = False + ref = self.playingservice + del self.playingservice + # no selection? Continue where we left off + if ref and not self.session.nav.getCurrentlyPlayingServiceOrGroup(): + self.session.nav.playService(ref) + + def getPlaylistServiceInfo(self, service): + from MovieSelection import playlist + for i, item in enumerate(playlist): + if item == service: + if config.usage.on_movie_eof.value == "repeatcurrent": + return (i+1, len(playlist)) + i += 1 + if i < len(playlist): + return (playlist[i], i+1, len(playlist)) + elif config.usage.on_movie_eof.value == "loop": + return (playlist[0], 1, len(playlist)) + return ( None, 0, 0 ) + + def displayPlayedName(self, ref, index, n): + from Tools import Notifications + Notifications.AddPopup(text = _("%s/%s: %s") % (index, n, self.ref2HumanName(ref)), type = MessageBox.TYPE_INFO, timeout = 5) + + def ref2HumanName(self, ref): + return enigma.eServiceCenter.getInstance().info(ref).getName(ref) diff --git a/lib/python/Screens/InfoBarGenerics.py b/lib/python/Screens/InfoBarGenerics.py new file mode 100644 index 0000000..0ea0863 --- /dev/null +++ b/lib/python/Screens/InfoBarGenerics.py @@ -0,0 +1,3187 @@ +from ChannelSelection import ChannelSelection, BouquetSelector, SilentBouquetSelector + +from Components.ActionMap import ActionMap, HelpableActionMap +from Components.ActionMap import NumberActionMap +from Components.Harddisk import harddiskmanager +from Components.Input import Input +from Components.Label import Label +from Components.MovieList import AUDIO_EXTENSIONS, MOVIE_EXTENSIONS, DVD_EXTENSIONS +from Components.PluginComponent import plugins +from Components.ServiceEventTracker import ServiceEventTracker +from Components.Sources.Boolean import Boolean +from Components.config import config, ConfigBoolean, ConfigClock +from Components.SystemInfo import SystemInfo +from Components.UsageConfig import preferredInstantRecordPath, defaultMoviePath, ConfigSelection +from Components.Sources.StaticText import StaticText +from EpgSelection import EPGSelection +from Plugins.Plugin import PluginDescriptor + +from Screen import Screen +from Screens import ScreenSaver +from Screens import Standby +from Screens.ChoiceBox import ChoiceBox +from Screens.Dish import Dish +from Screens.EventView import EventViewEPGSelect, EventViewSimple, EventViewRecording +from Screens.InputBox import InputBox +from Screens.MessageBox import MessageBox +from Screens.MinuteInput import MinuteInput +from Screens.TimerSelection import TimerSelection +from Screens.PictureInPicture import PictureInPicture +import Screens.Standby +from Screens.SubtitleDisplay import SubtitleDisplay +from Screens.RdsDisplay import RdsInfoDisplay, RassInteractive +from Screens.TimeDateInput import TimeDateInput +from Screens.UnhandledKey import UnhandledKey +from ServiceReference import ServiceReference, isPlayableForCur + +from Tools import Notifications, ASCIItranslit +from Tools.Directories import fileExists, getRecordingFilename, moveFiles + +from enigma import eTimer, eServiceCenter, eDVBServicePMTHandler, iServiceInformation, \ + iPlayableService, eServiceReference, eEPGCache, eActionMap + +from time import time, localtime, strftime +from os import stat as os_stat +from os import rename as os_rename +import os +from bisect import insort +from sys import maxint + +from RecordTimer import RecordTimerEntry, RecordTimer, findSafeRecordPath + +# hack alert! +from Menu import MainMenu, mdom + +def isStandardInfoBar(self): + return self.__class__.__name__ == "InfoBar" + +def setResumePoint(session): + global resumePointCache, resumePointCacheLast + service = session.nav.getCurrentService() + ref = session.nav.getCurrentlyPlayingServiceOrGroup() + if (service is not None) and (ref is not None): # and (ref.type != 1): + # ref type 1 has its own memory... + seek = service.seek() + if seek: + pos = seek.getPlayPosition() + if not pos[0]: + key = ref.toString() + lru = int(time()) + l = seek.getLength() + if l: + l = l[1] + else: + l = None + resumePointCache[key] = [lru, pos[1], l] + if len(resumePointCache) > 50: + candidate = key + for k,v in resumePointCache.items(): + if v[0] < lru: + candidate = k + del resumePointCache[candidate] + if lru - resumePointCacheLast > 3600: + saveResumePoints() + +def delResumePoint(ref): + global resumePointCache, resumePointCacheLast + try: + del resumePointCache[ref.toString()] + except KeyError: + pass + if int(time()) - resumePointCacheLast > 3600: + saveResumePoints() + +def getResumePoint(session): + global resumePointCache + ref = session.nav.getCurrentlyPlayingServiceOrGroup() + if (ref is not None) and (ref.type != 1): + try: + entry = resumePointCache[ref.toString()] + entry[0] = int(time()) # update LRU timestamp + return entry[1] + except KeyError: + return None + +def saveResumePoints(): + global resumePointCache, resumePointCacheLast + import cPickle + try: + f = open('/home/root/resumepoints.pkl', 'wb') + cPickle.dump(resumePointCache, f, cPickle.HIGHEST_PROTOCOL) + except Exception, ex: + print "[InfoBar] Failed to write resumepoints:", ex + resumePointCacheLast = int(time()) + +def loadResumePoints(): + import cPickle + try: + return cPickle.load(open('/home/root/resumepoints.pkl', 'rb')) + except Exception, ex: + print "[InfoBar] Failed to load resumepoints:", ex + return {} + +resumePointCache = loadResumePoints() +resumePointCacheLast = int(time()) + +class InfoBarDish: + def __init__(self): + self.dishDialog = self.session.instantiateDialog(Dish) + +class InfoBarUnhandledKey: + def __init__(self): + self.unhandledKeyDialog = self.session.instantiateDialog(UnhandledKey) + self.hideUnhandledKeySymbolTimer = eTimer() + self.hideUnhandledKeySymbolTimer.callback.append(self.unhandledKeyDialog.hide) + self.checkUnusedTimer = eTimer() + self.checkUnusedTimer.callback.append(self.checkUnused) + self.onLayoutFinish.append(self.unhandledKeyDialog.hide) + eActionMap.getInstance().bindAction('', -maxint -1, self.actionA) #highest prio + eActionMap.getInstance().bindAction('', maxint, self.actionB) #lowest prio + self.flags = (1<<1) + self.uflags = 0 + + #this function is called on every keypress! + def actionA(self, key, flag): + self.unhandledKeyDialog.hide() + if flag != 4: + if self.flags & (1<<1): + self.flags = self.uflags = 0 + self.flags |= (1<<flag) + if flag == 1: # break + self.checkUnusedTimer.start(0, True) + return 0 + + #this function is only called when no other action has handled this key + def actionB(self, key, flag): + if flag != 4: + self.uflags |= (1<<flag) + + def checkUnused(self): + if self.flags == self.uflags: + self.unhandledKeyDialog.show() + self.hideUnhandledKeySymbolTimer.start(2000, True) + +class InfoBarScreenSaver: + def __init__(self): + self.onExecBegin.append(self.__onExecBegin) + self.onExecEnd.append(self.__onExecEnd) + self.screenSaverTimer = eTimer() + self.screenSaverTimer.callback.append(self.screensaverTimeout) + self.screensaver = self.session.instantiateDialog(ScreenSaver.Screensaver) + self.onLayoutFinish.append(self.__layoutFinished) + + def __layoutFinished(self): + self.screensaver.hide() + + def __onExecBegin(self): + self.ScreenSaverTimerStart() + + def __onExecEnd(self): + if self.screensaver.shown: + self.screensaver.hide() + eActionMap.getInstance().unbindAction('', self.keypressScreenSaver) + self.screenSaverTimer.stop() + + def ScreenSaverTimerStart(self): + time = int(config.usage.screen_saver.value) + flag = self.seekstate[0] + if not flag: + ref = self.session.nav.getCurrentlyPlayingServiceOrGroup() + if ref and not (hasattr(self.session, "pipshown") and self.session.pipshown): + ref = ref.toString().split(":") + flag = ref[2] == "2" or os.path.splitext(ref[10])[1].lower() in AUDIO_EXTENSIONS + if time and flag: + self.screenSaverTimer.startLongTimer(time) + else: + self.screenSaverTimer.stop() + + def screensaverTimeout(self): + if self.execing and not Standby.inStandby and not Standby.inTryQuitMainloop: + self.hide() + if hasattr(self, "pvrStateDialog"): + self.pvrStateDialog.hide() + self.screensaver.show() + eActionMap.getInstance().bindAction('', -maxint - 1, self.keypressScreenSaver) + + def keypressScreenSaver(self, key, flag): + if flag: + self.screensaver.hide() + self.show() + self.ScreenSaverTimerStart() + eActionMap.getInstance().unbindAction('', self.keypressScreenSaver) + +class SecondInfoBar(Screen): + + def __init__(self, session): + Screen.__init__(self, session) + self.skin = None + +class InfoBarShowHide(InfoBarScreenSaver): + """ InfoBar show/hide control, accepts toggleShow and hide actions, might start + fancy animations. """ + STATE_HIDDEN = 0 + STATE_HIDING = 1 + STATE_SHOWING = 2 + STATE_SHOWN = 3 + + def __init__(self): + self["ShowHideActions"] = ActionMap( ["InfobarShowHideActions"] , + { + "toggleShow": self.okButtonCheck, + "hide": self.keyHide, + }, 1) # lower prio to make it possible to override ok and cancel.. + + self.__event_tracker = ServiceEventTracker(screen=self, eventmap= + { + iPlayableService.evStart: self.serviceStarted, + }) + + InfoBarScreenSaver.__init__(self) + self.__state = self.STATE_SHOWN + self.__locked = 0 + + self.hideTimer = eTimer() + self.hideTimer.callback.append(self.doTimerHide) + self.hideTimer.start(5000, True) + + self.onShow.append(self.__onShow) + self.onHide.append(self.__onHide) + + self.onShowHideNotifiers = [] + + self.secondInfoBarScreen = "" + if isStandardInfoBar(self): + self.secondInfoBarScreen = self.session.instantiateDialog(SecondInfoBar) + self.secondInfoBarScreen.show() + + self.onLayoutFinish.append(self.__layoutFinished) + + def __layoutFinished(self): + if self.secondInfoBarScreen: + self.secondInfoBarScreen.hide() + + def __onShow(self): + self.__state = self.STATE_SHOWN + for x in self.onShowHideNotifiers: + x(True) + self.startHideTimer() + + def __onHide(self): + self.__state = self.STATE_HIDDEN + if self.secondInfoBarScreen: + self.secondInfoBarScreen.hide() + for x in self.onShowHideNotifiers: + x(False) + + def keyHide(self): + if self.__state == self.STATE_HIDDEN and self.session.pipshown and "popup" in config.usage.pip_hideOnExit.value: + if config.usage.pip_hideOnExit.value == "popup": + self.session.openWithCallback(self.hidePipOnExitCallback, MessageBox, _("Disable Picture in Picture"), simple=True) + else: + self.hidePipOnExitCallback(True) + elif config.usage.ok_is_channelselection.value and hasattr(self, "openServiceList"): + self.toggleShow() + elif self.__state == self.STATE_SHOWN: + self.hide() + + def hidePipOnExitCallback(self, answer): + if answer == True: + self.showPiP() + + def connectShowHideNotifier(self, fnc): + if not fnc in self.onShowHideNotifiers: + self.onShowHideNotifiers.append(fnc) + + def disconnectShowHideNotifier(self, fnc): + if fnc in self.onShowHideNotifiers: + self.onShowHideNotifiers.remove(fnc) + + def serviceStarted(self): + if self.execing: + if config.usage.show_infobar_on_zap.value: + self.doShow() + + def startHideTimer(self): + if self.__state == self.STATE_SHOWN and not self.__locked: + self.hideTimer.stop() + if self.secondInfoBarScreen and self.secondInfoBarScreen.shown: + idx = config.usage.show_second_infobar.index - 1 + else: + idx = config.usage.infobar_timeout.index + if idx: + self.hideTimer.startLongTimer(idx) + + def doShow(self): + self.show() + self.startHideTimer() + + def doTimerHide(self): + self.hideTimer.stop() + if self.__state == self.STATE_SHOWN: + self.hide() + + def okButtonCheck(self): + if config.usage.ok_is_channelselection.value and hasattr(self, "openServiceList"): + self.openServiceList() + else: + self.toggleShow() + + def toggleShow(self): + if self.__state == self.STATE_HIDDEN: + self.show() + if self.secondInfoBarScreen: + self.secondInfoBarScreen.hide() + elif isStandardInfoBar(self) and config.usage.show_second_infobar.value == "EPG": + self.showDefaultEPG() + elif self.secondInfoBarScreen and config.usage.show_second_infobar.value and not self.secondInfoBarScreen.shown: + self.secondInfoBarScreen.show() + self.startHideTimer() + else: + self.hide() + self.hideTimer.stop() + + def lockShow(self): + self.__locked = self.__locked + 1 + if self.execing: + self.show() + self.hideTimer.stop() + + def unlockShow(self): + self.__locked = self.__locked - 1 + if self.execing: + self.startHideTimer() + +# def startShow(self): +# self.instance.m_animation.startMoveAnimation(ePoint(0, 600), ePoint(0, 380), 100) +# self.__state = self.STATE_SHOWN +# +# def startHide(self): +# self.instance.m_animation.startMoveAnimation(ePoint(0, 380), ePoint(0, 600), 100) +# self.__state = self.STATE_HIDDEN + +class NumberZap(Screen): + def quit(self): + self.Timer.stop() + self.close() + + def keyOK(self): + self.Timer.stop() + self.close(self.service, self.bouquet) + + def handleServiceName(self): + if self.searchNumber: + self.service, self.bouquet = self.searchNumber(int(self["number"].getText())) + self["servicename"].text = self["servicename_summary"].text = ServiceReference(self.service).getServiceName() + if not self.startBouquet: + self.startBouquet = self.bouquet + + def keyBlue(self): + self.Timer.start(3000, True) + if self.searchNumber: + if self.startBouquet == self.bouquet: + self.service, self.bouquet = self.searchNumber(int(self["number"].getText()), firstBouquetOnly = True) + else: + self.service, self.bouquet = self.searchNumber(int(self["number"].getText())) + self["servicename"].text = self["servicename_summary"].text = ServiceReference(self.service).getServiceName() + + def keyNumberGlobal(self, number): + self.Timer.start(1000, True) + self.numberString = self.numberString + str(number) + self["number"].text = self["number_summary"].text = self.numberString + + self.handleServiceName() + + if len(self.numberString) >= 5: + self.keyOK() + + def __init__(self, session, number, searchNumberFunction = None): + Screen.__init__(self, session) + self.numberString = str(number) + self.searchNumber = searchNumberFunction + self.startBouquet = None + + self["channel"] = Label(_("Channel:")) + self["number"] = Label(self.numberString) + self["servicename"] = Label() + self["channel_summary"] = StaticText(_("Channel:")) + self["number_summary"] = StaticText(self.numberString) + self["servicename_summary"] = StaticText() + + self.handleServiceName() + + self["actions"] = NumberActionMap( [ "SetupActions", "ShortcutActions" ], + { + "cancel": self.quit, + "ok": self.keyOK, + "blue": self.keyBlue, + "1": self.keyNumberGlobal, + "2": self.keyNumberGlobal, + "3": self.keyNumberGlobal, + "4": self.keyNumberGlobal, + "5": self.keyNumberGlobal, + "6": self.keyNumberGlobal, + "7": self.keyNumberGlobal, + "8": self.keyNumberGlobal, + "9": self.keyNumberGlobal, + "0": self.keyNumberGlobal + }) + + self.Timer = eTimer() + self.Timer.callback.append(self.keyOK) + self.Timer.start(3000, True) + +class InfoBarNumberZap: + """ Handles an initial number for NumberZapping """ + def __init__(self): + self["NumberActions"] = NumberActionMap( [ "NumberActions"], + { + "1": self.keyNumberGlobal, + "2": self.keyNumberGlobal, + "3": self.keyNumberGlobal, + "4": self.keyNumberGlobal, + "5": self.keyNumberGlobal, + "6": self.keyNumberGlobal, + "7": self.keyNumberGlobal, + "8": self.keyNumberGlobal, + "9": self.keyNumberGlobal, + "0": self.keyNumberGlobal, + }) + + def keyNumberGlobal(self, number): + if number == 0: + if isinstance(self, InfoBarPiP) and self.pipHandles0Action(): + self.pipDoHandle0Action() + elif len(self.servicelist.history) > 1: + self.checkTimeshiftRunning(self.recallPrevService) + else: + if self.has_key("TimeshiftActions") and self.timeshiftEnabled(): + ts = self.getTimeshift() + if ts and ts.isTimeshiftActive(): + return + self.session.openWithCallback(self.numberEntered, NumberZap, number, self.searchNumber) + + def recallPrevService(self, reply): + if reply: + self.servicelist.recallPrevService() + + def numberEntered(self, service = None, bouquet = None): + if service: + self.selectAndStartService(service, bouquet) + + def searchNumberHelper(self, serviceHandler, num, bouquet): + servicelist = serviceHandler.list(bouquet) + if servicelist: + serviceIterator = servicelist.getNext() + while serviceIterator.valid(): + if num == serviceIterator.getChannelNum(): + return serviceIterator + serviceIterator = servicelist.getNext() + return None + + def searchNumber(self, number, firstBouquetOnly=False, bouquet=None): + bouquet = bouquet or self.servicelist.getRoot() + service = None + serviceHandler = eServiceCenter.getInstance() + if not firstBouquetOnly: + service = self.searchNumberHelper(serviceHandler, number, bouquet) + if config.usage.multibouquet.value and not service: + bouquet = self.servicelist.bouquet_root + bouquetlist = serviceHandler.list(bouquet) + if bouquetlist: + bouquet = bouquetlist.getNext() + while bouquet.valid(): + if bouquet.flags & eServiceReference.isDirectory: + service = self.searchNumberHelper(serviceHandler, number, bouquet) + if service: + playable = not (service.flags & (eServiceReference.isMarker|eServiceReference.isDirectory)) or (service.flags & eServiceReference.isNumberedMarker) + if not playable: + service = None + break + if config.usage.alternative_number_mode.value or firstBouquetOnly: + break + bouquet = bouquetlist.getNext() + return service, bouquet + + def selectAndStartService(self, service, bouquet): + if service and not service.flags & eServiceReference.isMarker: + if self.servicelist.getRoot() != bouquet: #already in correct bouquet? + self.servicelist.clearPath() + if self.servicelist.bouquet_root != bouquet: + self.servicelist.enterPath(self.servicelist.bouquet_root) + self.servicelist.enterPath(bouquet) + self.servicelist.setCurrentSelection(service) #select the service in servicelist + self.servicelist.zap(enable_pipzap = True) + self.servicelist.correctChannelNumber() + self.servicelist.startRoot = None + + def zapToNumber(self, number): + service, bouquet = self.searchNumber(number) + self.selectAndStartService(service, bouquet) + +config.misc.initialchannelselection = ConfigBoolean(default = True) + +class InfoBarChannelSelection: + """ ChannelSelection - handles the channelSelection dialog and the initial + channelChange actions which open the channelSelection dialog """ + def __init__(self): + #instantiate forever + self.servicelist = self.session.instantiateDialog(ChannelSelection) + + if config.misc.initialchannelselection.value: + self.onShown.append(self.firstRun) + + self["ChannelSelectActions"] = HelpableActionMap(self, "InfobarChannelSelection", + { + "keyUp": (self.keyUpCheck, self.getKeyUpHelptext), + "keyDown": (self.keyDownCheck, self.getKeyDownHelpText), + "keyLeft": (self.keyLeftCheck, self.getKeyLeftHelptext), + "keyRight": (self.keyRightCheck, self.getKeyRightHelptext), + "historyBack": (self.historyBack, _("Switch to previous channel in history")), + "historyNext": (self.historyNext, _("Switch to next channel in history")), + "keyChannelUp": (self.keyChannelUpCheck, self.getKeyChannelUpHelptext), + "keyChannelDown": (self.keyChannelDownCheck, self.getKeyChannelDownHelptext), + }) + + def showTvChannelList(self, zap=False): + self.servicelist.setModeTv() + if zap: + self.servicelist.zap() + + def showRadioChannelList(self, zap=False): + self.servicelist.setModeRadio() + if zap: + self.servicelist.zap() + + def firstRun(self): + self.onShown.remove(self.firstRun) + config.misc.initialchannelselection.value = False + config.misc.initialchannelselection.save() + self.switchChannelDown() + + def historyBack(self): + self.checkTimeshiftRunning(self.historyBackCheckTimeshiftCallback) + + def historyBackCheckTimeshiftCallback(self, answer): + if answer: + self.servicelist.historyBack() + + def historyNext(self): + self.checkTimeshiftRunning(self.historyNextCheckTimeshiftCallback) + + def historyNextCheckTimeshiftCallback(self, answer): + if answer: + self.servicelist.historyNext() + + def keyUpCheck(self): + if config.usage.oldstyle_zap_controls.value: + self.zapDown() + else: + self.switchChannelUp() + + def keyDownCheck(self): + if config.usage.oldstyle_zap_controls.value: + self.zapUp() + else: + self.switchChannelDown() + + def keyLeftCheck(self): + if config.usage.oldstyle_zap_controls.value: + self.switchChannelUp() + else: + self.zapUp() + + def keyRightCheck(self): + if config.usage.oldstyle_zap_controls.value: + self.switchChannelDown() + else: + self.zapDown() + + def keyChannelUpCheck(self): + if config.usage.zap_with_ch_buttons.value: + self.zapDown() + else: + self.openServiceList() + + def keyChannelDownCheck(self): + if config.usage.zap_with_ch_buttons.value: + self.zapUp() + else: + self.openServiceList() + + def getKeyUpHelptext(self): + if config.usage.oldstyle_zap_controls.value: + value = _("Switch to next channel") + else: + value = _("Open service list") + if not "keep" in config.usage.servicelist_cursor_behavior.value: + value += " " + _("and select previous channel") + return value + + def getKeyDownHelpText(self): + if config.usage.oldstyle_zap_controls.value: + value = _("Switch to previous channel") + else: + value = _("Open service list") + if not "keep" in config.usage.servicelist_cursor_behavior.value: + value += " " + _("and select next channel") + return value + + def getKeyLeftHelptext(self): + if config.usage.oldstyle_zap_controls.value: + value = _("Open service list") + if not "keep" in config.usage.servicelist_cursor_behavior.value: + value += " " + _("and select previous channel") + else: + value = _("Switch to previous channel") + return value + + def getKeyRightHelptext(self): + if config.usage.oldstyle_zap_controls.value: + value = _("Open service list") + if not "keep" in config.usage.servicelist_cursor_behavior.value: + value += " " + _("and select next channel") + else: + value = _("Switch to next channel") + return value + + def getKeyChannelUpHelptext(self): + return config.usage.zap_with_ch_buttons.value and _("Switch to next channel") or _("Open service list") + + def getKeyChannelDownHelptext(self): + return config.usage.zap_with_ch_buttons.value and _("Switch to previous channel") or _("Open service list") + + def switchChannelUp(self): + if "keep" not in config.usage.servicelist_cursor_behavior.value: + self.servicelist.moveUp() + self.session.execDialog(self.servicelist) + + def switchChannelDown(self): + if "keep" not in config.usage.servicelist_cursor_behavior.value: + self.servicelist.moveDown() + self.session.execDialog(self.servicelist) + + def zapUp(self): + if self.servicelist.inBouquet(): + prev = self.servicelist.getCurrentSelection() + if prev: + prev = prev.toString() + while True: + if config.usage.quickzap_bouquet_change.value: + if self.servicelist.atBegin(): + self.servicelist.prevBouquet() + self.servicelist.moveUp() + cur = self.servicelist.getCurrentSelection() + if cur: + if self.servicelist.dopipzap: + isPlayable = self.session.pip.isPlayableForPipService(cur) + else: + isPlayable = isPlayableForCur(cur) + if cur and (cur.toString() == prev or isPlayable): + break + else: + self.servicelist.moveUp() + self.servicelist.zap(enable_pipzap = True) + + def zapDown(self): + if self.servicelist.inBouquet(): + prev = self.servicelist.getCurrentSelection() + if prev: + prev = prev.toString() + while True: + if config.usage.quickzap_bouquet_change.value and self.servicelist.atEnd(): + self.servicelist.nextBouquet() + else: + self.servicelist.moveDown() + cur = self.servicelist.getCurrentSelection() + if cur: + if self.servicelist.dopipzap: + isPlayable = self.session.pip.isPlayableForPipService(cur) + else: + isPlayable = isPlayableForCur(cur) + if cur and (cur.toString() == prev or isPlayable): + break + else: + self.servicelist.moveDown() + self.servicelist.zap(enable_pipzap = True) + + def openServiceList(self): + self.session.execDialog(self.servicelist) + +class InfoBarMenu: + """ Handles a menu action, to open the (main) menu """ + def __init__(self): + self["MenuActions"] = HelpableActionMap(self, "InfobarMenuActions", + { + "mainMenu": (self.mainMenu, _("Enter main menu...")), + }) + self.session.infobar = None + + def mainMenu(self): + print "loading mainmenu XML..." + menu = mdom.getroot() + assert menu.tag == "menu", "root element in menu must be 'menu'!" + + self.session.infobar = self + # so we can access the currently active infobar from screens opened from within the mainmenu + # at the moment used from the SubserviceSelection + + self.session.openWithCallback(self.mainMenuClosed, MainMenu, menu) + + def mainMenuClosed(self, *val): + self.session.infobar = None + +class InfoBarSimpleEventView: + """ Opens the Eventview for now/next """ + def __init__(self): + self["EPGActions"] = HelpableActionMap(self, "InfobarEPGActions", + { + "showEventInfo": (self.openEventView, _("Show event details")), + "showEventInfoSingleEPG": (self.openEventView, _("Show event details")), + "showInfobarOrEpgWhenInfobarAlreadyVisible": self.showEventInfoWhenNotVisible, + }) + + def showEventInfoWhenNotVisible(self): + if self.shown: + self.openEventView() + else: + self.toggleShow() + return 1 + + def openEventView(self): + epglist = [ ] + self.epglist = epglist + service = self.session.nav.getCurrentService() + ref = self.session.nav.getCurrentlyPlayingServiceOrGroup() + info = service.info() + ptr=info.getEvent(0) + if ptr: + epglist.append(ptr) + ptr=info.getEvent(1) + if ptr: + epglist.append(ptr) + if epglist: + self.session.open(EventViewSimple, epglist[0], ServiceReference(ref), self.eventViewCallback) + + def eventViewCallback(self, setEvent, setService, val): #used for now/next displaying + epglist = self.epglist + if len(epglist) > 1: + tmp = epglist[0] + epglist[0] = epglist[1] + epglist[1] = tmp + setEvent(epglist[0]) + +class SimpleServicelist: + def __init__(self, services): + self.services = services + self.length = len(services) + self.current = 0 + + def selectService(self, service): + if not self.length: + self.current = -1 + return False + else: + self.current = 0 + while self.services[self.current].ref != service: + self.current += 1 + if self.current >= self.length: + return False + return True + + def nextService(self): + if not self.length: + return + if self.current+1 < self.length: + self.current += 1 + else: + self.current = 0 + + def prevService(self): + if not self.length: + return + if self.current-1 > -1: + self.current -= 1 + else: + self.current = self.length - 1 + + def currentService(self): + if not self.length or self.current >= self.length: + return None + return self.services[self.current] + +class InfoBarEPG: + """ EPG - Opens an EPG list when the showEPGList action fires """ + def __init__(self): + self.is_now_next = False + self.dlg_stack = [ ] + self.bouquetSel = None + self.eventView = None + self.epglist = [] + self.defaultEPGType = self.getDefaultEPGtype() + self.defaultGuideType = self.getDefaultGuidetype() + self.__event_tracker = ServiceEventTracker(screen=self, eventmap= + { + iPlayableService.evUpdatedEventInfo: self.__evEventInfoChanged, + }) + + self["EPGActions"] = HelpableActionMap(self, "InfobarEPGActions", + { + "showEventInfo": (self.showDefaultEPG, _("Show EPG...")), + "showEventInfoSingleEPG": (self.showSingleEPG, _("Show single service EPG")), + "showEventInfoMultiEPG": (self.showMultiEPG, _("Show multi channel EPG")), + "showEventInfoPlugin": (self.showEventInfoPlugins, _("List EPG functions...")), + "showEventGuidePlugin": (self.showEventGuidePlugins, _("List EPG functions...")), + "showInfobarOrEpgWhenInfobarAlreadyVisible": self.showEventInfoWhenNotVisible, + }) + + def getEPGPluginList(self, getAll=False): + pluginlist = [(p.name, boundFunction(self.runPlugin, p)) for p in plugins.getPlugins(where = PluginDescriptor.WHERE_EVENTINFO) \ + if 'selectedevent' not in p.__call__.func_code.co_varnames] + if pluginlist: + from Components.ServiceEventTracker import InfoBarCount + if getAll or InfoBarCount == 1: + pluginlist.append((_("Show EPG for current channel..."), self.openSingleServiceEPG)) + pluginlist.append((_("Multi EPG"), self.openMultiServiceEPG)) + pluginlist.append((_("Current event EPG"), self.openEventView)) + return pluginlist + + def getDefaultEPGtype(self): + pluginlist = self.getEPGPluginList() + config.usage.defaultEPGType=ConfigSelection(default = "None", choices = pluginlist) + for plugin in pluginlist: + if plugin[0] == config.usage.defaultEPGType.value: + return plugin[1] + return None + + def getDefaultGuidetype(self): + pluginlist = self.getEPGPluginList() + config.usage.defaultGuideType=ConfigSelection(default = "None", choices = pluginlist) + for plugin in pluginlist: + if plugin[0] == config.usage.defaultGuideType.value: + return plugin[1] + return None + + def showEventInfoWhenNotVisible(self): + if self.shown: + self.openEventView() + else: + self.toggleShow() + return 1 + + def zapToService(self, service, preview = False, zapback = False): + if self.servicelist.startServiceRef is None: + self.servicelist.startServiceRef = self.session.nav.getCurrentlyPlayingServiceOrGroup() + if service is not None: + if self.servicelist.getRoot() != self.epg_bouquet: #already in correct bouquet? + self.servicelist.clearPath() + if self.servicelist.bouquet_root != self.epg_bouquet: + self.servicelist.enterPath(self.servicelist.bouquet_root) + self.servicelist.enterPath(self.epg_bouquet) + self.servicelist.setCurrentSelection(service) #select the service in servicelist + if not zapback or preview: + self.servicelist.zap(enable_pipzap = True) + if (self.servicelist.dopipzap or zapback) and not preview: + self.servicelist.zapBack() + if not preview: + self.servicelist.startServiceRef = None + self.servicelist.startRoot = None + + def getBouquetServices(self, bouquet): + services = [ ] + servicelist = eServiceCenter.getInstance().list(bouquet) + if not servicelist is None: + while True: + service = servicelist.getNext() + if not service.valid(): #check if end of list + break + if service.flags & (eServiceReference.isDirectory | eServiceReference.isMarker): #ignore non playable services + continue + services.append(ServiceReference(service)) + return services + + def openBouquetEPG(self, bouquet, withCallback=True): + services = self.getBouquetServices(bouquet) + if services: + self.epg_bouquet = bouquet + if withCallback: + self.dlg_stack.append(self.session.openWithCallback(self.closed, EPGSelection, services, self.zapToService, None, self.changeBouquetCB)) + else: + self.session.open(EPGSelection, services, self.zapToService, None, self.changeBouquetCB) + + def changeBouquetCB(self, direction, epg): + if self.bouquetSel: + if direction > 0: + self.bouquetSel.down() + else: + self.bouquetSel.up() + bouquet = self.bouquetSel.getCurrent() + services = self.getBouquetServices(bouquet) + if services: + self.epg_bouquet = bouquet + epg.setServices(services) + + def closed(self, ret=False): + closedScreen = self.dlg_stack.pop() + if self.bouquetSel and closedScreen == self.bouquetSel: + self.bouquetSel = None + elif self.eventView and closedScreen == self.eventView: + self.eventView = None + if ret: + dlgs=len(self.dlg_stack) + if dlgs > 0: + self.dlg_stack[dlgs-1].close(dlgs > 1) + + def openMultiServiceEPG(self, withCallback=True): + bouquets = self.servicelist.getBouquetList() + if bouquets is None: + cnt = 0 + else: + cnt = len(bouquets) + if config.usage.multiepg_ask_bouquet.value: + self.openMultiServiceEPGAskBouquet(bouquets, cnt, withCallback) + else: + self.openMultiServiceEPGSilent(bouquets, cnt, withCallback) + + def openMultiServiceEPGAskBouquet(self, bouquets, cnt, withCallback): + if cnt > 1: # show bouquet list + if withCallback: + self.bouquetSel = self.session.openWithCallback(self.closed, BouquetSelector, bouquets, self.openBouquetEPG, enableWrapAround=True) + self.dlg_stack.append(self.bouquetSel) + else: + self.bouquetSel = self.session.open(BouquetSelector, bouquets, self.openBouquetEPG, enableWrapAround=True) + elif cnt == 1: + self.openBouquetEPG(bouquets[0][1], withCallback) + + def openMultiServiceEPGSilent(self, bouquets, cnt, withCallback): + root = self.servicelist.getRoot() + rootstr = root.toCompareString() + current = 0 + for bouquet in bouquets: + if bouquet[1].toCompareString() == rootstr: + break + current += 1 + if current >= cnt: + current = 0 + if cnt > 1: # create bouquet list for bouq+/- + self.bouquetSel = SilentBouquetSelector(bouquets, True, self.servicelist.getBouquetNumOffset(root)) + if cnt >= 1: + self.openBouquetEPG(root, withCallback) + + def changeServiceCB(self, direction, epg): + if self.serviceSel: + if direction > 0: + self.serviceSel.nextService() + else: + self.serviceSel.prevService() + epg.setService(self.serviceSel.currentService()) + + def SingleServiceEPGClosed(self, ret=False): + self.serviceSel = None + + def openSingleServiceEPG(self): + from Components.ServiceEventTracker import InfoBarCount + if InfoBarCount > 1: + self.openMultiServiceEPG(False) + else: + ref = self.session.nav.getCurrentlyPlayingServiceOrGroup() + if ref: + if self.servicelist.getMutableList() is not None: # bouquet in channellist + current_path = self.servicelist.getRoot() + services = self.getBouquetServices(current_path) + self.serviceSel = SimpleServicelist(services) + if self.serviceSel.selectService(ref): + self.epg_bouquet = current_path + self.session.openWithCallback(self.SingleServiceEPGClosed, EPGSelection, ref, self.zapToService, serviceChangeCB = self.changeServiceCB) + else: + self.session.openWithCallback(self.SingleServiceEPGClosed, EPGSelection, ref) + else: + self.session.open(EPGSelection, ref) + + def runPlugin(self, plugin): + plugin(session = self.session, servicelist = self.servicelist) + + def showEventInfoPlugins(self): + pluginlist = self.getEPGPluginList() + if pluginlist: + pluginlist.append((_("Select default EPG type..."), self.SelectDefaultInfoPlugin)) + self.session.openWithCallback(self.EventInfoPluginChosen, ChoiceBox, title=_("Please choose an extension..."), list = pluginlist, skin_name = "EPGExtensionsList") + else: + self.openSingleServiceEPG() + + def EventInfoPluginChosen(self, answer): + if answer is not None: + answer[1]() + + def SelectDefaultInfoPlugin(self): + self.session.openWithCallback(self.DefaultInfoPluginChosen, ChoiceBox, title=_("Please select a default EPG type..."), list = self.getEPGPluginList(True), skin_name = "EPGExtensionsList") + + def DefaultInfoPluginChosen(self, answer): + if answer is not None: + self.defaultEPGType = answer[1] + config.usage.defaultEPGType.value = answer[0] + config.usage.defaultEPGType.save() + + def showEventGuidePlugins(self): + pluginlist = self.getEPGPluginList() + if pluginlist: + pluginlist.append((_("Select default EPG type..."), self.SelectDefaultGuidePlugin)) + self.session.openWithCallback(self.EventGuidePluginChosen, ChoiceBox, title=_("Please choose an extension..."), list = pluginlist, skin_name = "EPGExtensionsList") + else: + self.openSingleServiceEPG() + + def EventGuidePluginChosen(self, answer): + if answer is not None: + answer[1]() + + def SelectDefaultGuidePlugin(self): + self.session.openWithCallback(self.DefaultGuidePluginChosen, ChoiceBox, title=_("Please select a default EPG type..."), list = self.getEPGPluginList(True), skin_name = "EPGExtensionsList") + + def DefaultGuidePluginChosen(self, answer): + if answer is not None: + self.defaultGuideType = answer[1] + config.usage.defaultGuideType.value = answer[0] + config.usage.defaultGuideType.save() + + def openSimilarList(self, eventid, refstr): + self.session.open(EPGSelection, refstr, None, eventid) + + def getNowNext(self): + epglist = [ ] + service = self.session.nav.getCurrentService() + info = service and service.info() + ptr = info and info.getEvent(0) + if ptr: + epglist.append(ptr) + ptr = info and info.getEvent(1) + if ptr: + epglist.append(ptr) + self.epglist = epglist + + def __evEventInfoChanged(self): + if self.is_now_next and len(self.dlg_stack) == 1: + self.getNowNext() + if self.eventView and self.epglist: + self.eventView.setEvent(self.epglist[0]) + + def showDefaultEPG(self): + if self.defaultEPGType is not None: + self.defaultEPGType() + return + self.openEventView() + + def showSingleEPG(self): + if self.defaultGuideType is not None: + self.defaultGuideType() + return + pluginlist = self.getEPGPluginList() + self.openSingleServiceEPG() + + def showMultiEPG(self): + if self.defaultGuideType is not None: + self.defaultGuideType() + return + pluginlist = self.getEPGPluginList() + self.openMultiServiceEPG() + + def openEventView(self): + from Components.ServiceEventTracker import InfoBarCount + if InfoBarCount > 1: + epglist = [ ] + self.epglist = epglist + service = self.session.nav.getCurrentService() + ref = self.session.nav.getCurrentlyPlayingServiceOrGroup() + info = service.info() + ptr=info.getEvent(0) + if ptr: + epglist.append(ptr) + ptr=info.getEvent(1) + if ptr: + epglist.append(ptr) + if epglist: + self.session.open(EventViewRecording, epglist[0], ServiceReference(ref), self.eventViewCallback, self.openMultiServiceEPG, self.openSimilarList) + else: + ref = self.session.nav.getCurrentlyPlayingServiceOrGroup() + self.getNowNext() + epglist = self.epglist + if not epglist: + self.is_now_next = False + epg = eEPGCache.getInstance() + ptr = ref and ref.valid() and epg.lookupEventTime(ref, -1) + if ptr: + epglist.append(ptr) + ptr = epg.lookupEventTime(ref, ptr.getBeginTime(), +1) + if ptr: + epglist.append(ptr) + else: + self.is_now_next = True + if epglist: + self.eventView = self.session.openWithCallback(self.closed, EventViewEPGSelect, epglist[0], ServiceReference(ref), self.eventViewCallback, self.openSingleServiceEPG, self.openMultiServiceEPG, self.openSimilarList) + self.dlg_stack.append(self.eventView) + if not epglist: + print "no epg for the service avail.. so we show multiepg instead of eventinfo" + self.openMultiServiceEPG(False) + + def eventViewCallback(self, setEvent, setService, val): #used for now/next displaying + epglist = self.epglist + if len(epglist) > 1: + tmp = epglist[0] + epglist[0]=epglist[1] + epglist[1]=tmp + setEvent(epglist[0]) + +class InfoBarRdsDecoder: + """provides RDS and Rass support/display""" + def __init__(self): + self.rds_display = self.session.instantiateDialog(RdsInfoDisplay) + self.session.instantiateSummaryDialog(self.rds_display) + self.rass_interactive = None + + self.__event_tracker = ServiceEventTracker(screen=self, eventmap= + { + iPlayableService.evEnd: self.__serviceStopped, + iPlayableService.evUpdatedRassSlidePic: self.RassSlidePicChanged + }) + + self["RdsActions"] = ActionMap(["InfobarRdsActions"], + { + "startRassInteractive": self.startRassInteractive + },-1) + + self["RdsActions"].setEnabled(False) + + self.onLayoutFinish.append(self.rds_display.show) + self.rds_display.onRassInteractivePossibilityChanged.append(self.RassInteractivePossibilityChanged) + + def RassInteractivePossibilityChanged(self, state): + self["RdsActions"].setEnabled(state) + + def RassSlidePicChanged(self): + if not self.rass_interactive: + service = self.session.nav.getCurrentService() + decoder = service and service.rdsDecoder() + if decoder: + decoder.showRassSlidePicture() + + def __serviceStopped(self): + if self.rass_interactive is not None: + rass_interactive = self.rass_interactive + self.rass_interactive = None + rass_interactive.close() + + def startRassInteractive(self): + self.rds_display.hide() + self.rass_interactive = self.session.openWithCallback(self.RassInteractiveClosed, RassInteractive) + + def RassInteractiveClosed(self, *val): + if self.rass_interactive is not None: + self.rass_interactive = None + self.RassSlidePicChanged() + self.rds_display.show() + +class InfoBarSeek: + """handles actions like seeking, pause""" + + SEEK_STATE_PLAY = (0, 0, 0, ">") + SEEK_STATE_PAUSE = (1, 0, 0, "||") + SEEK_STATE_EOF = (1, 0, 0, "END") + + def __init__(self, actionmap = "InfobarSeekActions"): + self.__event_tracker = ServiceEventTracker(screen=self, eventmap= + { + iPlayableService.evSeekableStatusChanged: self.__seekableStatusChanged, + iPlayableService.evStart: self.__serviceStarted, + iPlayableService.evEOF: self.__evEOF, + iPlayableService.evSOF: self.__evSOF, + }) + self.fast_winding_hint_message_showed = False + + class InfoBarSeekActionMap(HelpableActionMap): + def __init__(self, screen, *args, **kwargs): + HelpableActionMap.__init__(self, screen, *args, **kwargs) + self.screen = screen + + def action(self, contexts, action): + print "action:", action + if action[:5] == "seek:": + time = int(action[5:]) + self.screen.doSeekRelative(time * 90000) + return 1 + elif action[:8] == "seekdef:": + key = int(action[8:]) + time = (-config.seek.selfdefined_13.value, False, config.seek.selfdefined_13.value, + -config.seek.selfdefined_46.value, False, config.seek.selfdefined_46.value, + -config.seek.selfdefined_79.value, False, config.seek.selfdefined_79.value)[key-1] + self.screen.doSeekRelative(time * 90000) + return 1 + else: + return HelpableActionMap.action(self, contexts, action) + + self["SeekActions"] = InfoBarSeekActionMap(self, actionmap, + { + "playpauseService": (self.playpauseService, _("Pauze/Continue playback")), + "pauseService": (self.pauseService, _("Pause playback")), + "unPauseService": (self.unPauseService, _("Continue playback")), + "okButton": (self.okButton, _("Continue playback")), + "seekFwd": (self.seekFwd, _("Seek forward")), + "seekFwdManual": (self.seekFwdManual, _("Seek forward (enter time)")), + "seekBack": (self.seekBack, _("Seek backward")), + "seekBackManual": (self.seekBackManual, _("Seek backward (enter time)")), + "jumpPreviousMark": (self.seekPreviousMark, _("Jump to previous marked position")), + "jumpNextMark": (self.seekNextMark, _("Jump to next marked position")), + }, prio=-1) + # give them a little more priority to win over color buttons + + self["SeekActions"].setEnabled(False) + + self.seekstate = self.SEEK_STATE_PLAY + self.lastseekstate = self.SEEK_STATE_PLAY + + self.onPlayStateChanged = [ ] + + self.lockedBecauseOfSkipping = False + + self.__seekableStatusChanged() + + def makeStateForward(self, n): + return (0, n, 0, ">> %dx" % n) + + def makeStateBackward(self, n): + return (0, -n, 0, "<< %dx" % n) + + def makeStateSlowMotion(self, n): + return (0, 0, n, "/%d" % n) + + def isStateForward(self, state): + return state[1] > 1 + + def isStateBackward(self, state): + return state[1] < 0 + + def isStateSlowMotion(self, state): + return state[1] == 0 and state[2] > 1 + + def getHigher(self, n, lst): + for x in lst: + if x > n: + return x + return False + + def getLower(self, n, lst): + lst = lst[:] + lst.reverse() + for x in lst: + if x < n: + return x + return False + + def showAfterSeek(self): + if isinstance(self, InfoBarShowHide): + self.doShow() + + def up(self): + pass + + def down(self): + pass + + def getSeek(self): + service = self.session.nav.getCurrentService() + if service is None: + return None + + seek = service.seek() + + if seek is None or not seek.isCurrentlySeekable(): + return None + + return seek + + def isSeekable(self): + if self.getSeek() is None or (isStandardInfoBar(self) and not self.timeshiftEnabled()): + return False + return True + + def __seekableStatusChanged(self): +# print "seekable status changed!" + if not self.isSeekable(): + self["SeekActions"].setEnabled(False) +# print "not seekable, return to play" + self.setSeekState(self.SEEK_STATE_PLAY) + else: + self["SeekActions"].setEnabled(True) +# print "seekable" + + def __serviceStarted(self): + self.fast_winding_hint_message_showed = False + self.setSeekState(self.SEEK_STATE_PLAY) + self.__seekableStatusChanged() + + def setSeekState(self, state): + service = self.session.nav.getCurrentService() + + if service is None: + return False + + if not self.isSeekable(): + if state not in (self.SEEK_STATE_PLAY, self.SEEK_STATE_PAUSE): + state = self.SEEK_STATE_PLAY + + pauseable = service.pause() + + if pauseable is None: + print "not pauseable." + state = self.SEEK_STATE_PLAY + + self.seekstate = state + + if pauseable is not None: + if self.seekstate[0]: + print "resolved to PAUSE" + pauseable.pause() + elif self.seekstate[1]: + if not pauseable.setFastForward(self.seekstate[1]): + print "resolved to FAST FORWARD" + else: + self.seekstate = self.SEEK_STATE_PLAY + print "FAST FORWARD not possible: resolved to PLAY" + elif self.seekstate[2]: + if not pauseable.setSlowMotion(self.seekstate[2]): + print "resolved to SLOW MOTION" + else: + self.seekstate = self.SEEK_STATE_PAUSE + print "SLOW MOTION not possible: resolved to PAUSE" + else: + print "resolved to PLAY" + pauseable.unpause() + + for c in self.onPlayStateChanged: + c(self.seekstate) + + self.checkSkipShowHideLock() + + if hasattr(self, "ScreenSaverTimerStart"): + self.ScreenSaverTimerStart() + + return True + + def playpauseService(self): + if self.seekstate != self.SEEK_STATE_PLAY: + self.unPauseService() + else: + self.pauseService() + + def okButton(self): + if self.seekstate == self.SEEK_STATE_PLAY: + return 0 + elif self.seekstate == self.SEEK_STATE_PAUSE: + self.pauseService() + else: + self.unPauseService() + + def pauseService(self): + if self.seekstate == self.SEEK_STATE_PAUSE: + if config.seek.on_pause.value == "play": + self.unPauseService() + elif config.seek.on_pause.value == "step": + self.doSeekRelative(1) + elif config.seek.on_pause.value == "last": + self.setSeekState(self.lastseekstate) + self.lastseekstate = self.SEEK_STATE_PLAY + else: + if self.seekstate != self.SEEK_STATE_EOF: + self.lastseekstate = self.seekstate + self.setSeekState(self.SEEK_STATE_PAUSE) + + def unPauseService(self): + print "unpause" + if self.seekstate == self.SEEK_STATE_PLAY: + return 0 + self.setSeekState(self.SEEK_STATE_PLAY) + + def doSeek(self, pts): + seekable = self.getSeek() + if seekable is None: + return + seekable.seekTo(pts) + + def doSeekRelative(self, pts): + seekable = self.getSeek() + if seekable is None: + return + prevstate = self.seekstate + + if self.seekstate == self.SEEK_STATE_EOF: + if prevstate == self.SEEK_STATE_PAUSE: + self.setSeekState(self.SEEK_STATE_PAUSE) + else: + self.setSeekState(self.SEEK_STATE_PLAY) + seekable.seekRelative(pts<0 and -1 or 1, abs(pts)) + if abs(pts) > 100 and config.usage.show_infobar_on_skip.value: + self.showAfterSeek() + + def seekFwd(self): + seek = self.getSeek() + if seek and not (seek.isCurrentlySeekable() & 2): + if not self.fast_winding_hint_message_showed and (seek.isCurrentlySeekable() & 1): + self.session.open(MessageBox, _("No fast winding possible yet.. but you can use the number buttons to skip forward/backward!"), MessageBox.TYPE_INFO, timeout=10) + self.fast_winding_hint_message_showed = True + return + return 0 # trade as unhandled action + if self.seekstate == self.SEEK_STATE_PLAY: + self.setSeekState(self.makeStateForward(int(config.seek.enter_forward.value))) + elif self.seekstate == self.SEEK_STATE_PAUSE: + if len(config.seek.speeds_slowmotion.value): + self.setSeekState(self.makeStateSlowMotion(config.seek.speeds_slowmotion.value[-1])) + else: + self.setSeekState(self.makeStateForward(int(config.seek.enter_forward.value))) + elif self.seekstate == self.SEEK_STATE_EOF: + pass + elif self.isStateForward(self.seekstate): + speed = self.seekstate[1] + if self.seekstate[2]: + speed /= self.seekstate[2] + speed = self.getHigher(speed, config.seek.speeds_forward.value) or config.seek.speeds_forward.value[-1] + self.setSeekState(self.makeStateForward(speed)) + elif self.isStateBackward(self.seekstate): + speed = -self.seekstate[1] + if self.seekstate[2]: + speed /= self.seekstate[2] + speed = self.getLower(speed, config.seek.speeds_backward.value) + if speed: + self.setSeekState(self.makeStateBackward(speed)) + else: + self.setSeekState(self.SEEK_STATE_PLAY) + elif self.isStateSlowMotion(self.seekstate): + speed = self.getLower(self.seekstate[2], config.seek.speeds_slowmotion.value) or config.seek.speeds_slowmotion.value[0] + self.setSeekState(self.makeStateSlowMotion(speed)) + + def seekBack(self): + seek = self.getSeek() + if seek and not (seek.isCurrentlySeekable() & 2): + if not self.fast_winding_hint_message_showed and (seek.isCurrentlySeekable() & 1): + self.session.open(MessageBox, _("No fast winding possible yet.. but you can use the number buttons to skip forward/backward!"), MessageBox.TYPE_INFO, timeout=10) + self.fast_winding_hint_message_showed = True + return + return 0 # trade as unhandled action + seekstate = self.seekstate + if seekstate == self.SEEK_STATE_PLAY: + self.setSeekState(self.makeStateBackward(int(config.seek.enter_backward.value))) + elif seekstate == self.SEEK_STATE_EOF: + self.setSeekState(self.makeStateBackward(int(config.seek.enter_backward.value))) + self.doSeekRelative(-6) + elif seekstate == self.SEEK_STATE_PAUSE: + self.doSeekRelative(-1) + elif self.isStateForward(seekstate): + speed = seekstate[1] + if seekstate[2]: + speed /= seekstate[2] + speed = self.getLower(speed, config.seek.speeds_forward.value) + if speed: + self.setSeekState(self.makeStateForward(speed)) + else: + self.setSeekState(self.SEEK_STATE_PLAY) + elif self.isStateBackward(seekstate): + speed = -seekstate[1] + if seekstate[2]: + speed /= seekstate[2] + speed = self.getHigher(speed, config.seek.speeds_backward.value) or config.seek.speeds_backward.value[-1] + self.setSeekState(self.makeStateBackward(speed)) + elif self.isStateSlowMotion(seekstate): + speed = self.getHigher(seekstate[2], config.seek.speeds_slowmotion.value) + if speed: + self.setSeekState(self.makeStateSlowMotion(speed)) + else: + self.setSeekState(self.SEEK_STATE_PAUSE) + + def seekFwdManual(self): + self.session.openWithCallback(self.fwdSeekTo, MinuteInput) + + def fwdSeekTo(self, minutes): + print "Seek", minutes, "minutes forward" + self.doSeekRelative(minutes * 60 * 90000) + + def seekBackManual(self): + self.session.openWithCallback(self.rwdSeekTo, MinuteInput) + + def rwdSeekTo(self, minutes): + print "rwdSeekTo" + self.doSeekRelative(-minutes * 60 * 90000) + + def checkSkipShowHideLock(self): + wantlock = self.seekstate != self.SEEK_STATE_PLAY + + if config.usage.show_infobar_on_skip.value: + if self.lockedBecauseOfSkipping and not wantlock: + self.unlockShow() + self.lockedBecauseOfSkipping = False + + if wantlock and not self.lockedBecauseOfSkipping: + self.lockShow() + self.lockedBecauseOfSkipping = True + + def calcRemainingTime(self): + seekable = self.getSeek() + if seekable is not None: + len = seekable.getLength() + try: + tmp = self.cueGetEndCutPosition() + if tmp: + len = (False, tmp) + except: + pass + pos = seekable.getPlayPosition() + speednom = self.seekstate[1] or 1 + speedden = self.seekstate[2] or 1 + if not len[0] and not pos[0]: + if len[1] <= pos[1]: + return 0 + time = (len[1] - pos[1])*speedden/(90*speednom) + return time + return False + + def __evEOF(self): + if self.seekstate == self.SEEK_STATE_EOF: + return + + # if we are seeking forward, we try to end up ~1s before the end, and pause there. + seekstate = self.seekstate + if self.seekstate != self.SEEK_STATE_PAUSE: + self.setSeekState(self.SEEK_STATE_EOF) + + if seekstate not in (self.SEEK_STATE_PLAY, self.SEEK_STATE_PAUSE): # if we are seeking + seekable = self.getSeek() + if seekable is not None: + seekable.seekTo(-1) + if seekstate == self.SEEK_STATE_PLAY: # regular EOF + self.doEofInternal(True) + else: + self.doEofInternal(False) + + def doEofInternal(self, playing): + pass # Defined in subclasses + + def __evSOF(self): + self.setSeekState(self.SEEK_STATE_PLAY) + self.doSeek(0) + + # This is needed, because some Mediaplayer use InfoBarSeek but not InfoBarCueSheetSupport + def seekPreviousMark(self): + if isinstance(self, InfoBarCueSheetSupport): + self.jumpPreviousMark() + + def seekNextMark(self): + if isinstance(self, InfoBarCueSheetSupport): + self.jumpNextMark() + +from Screens.PVRState import PVRState, TimeshiftState + +class InfoBarPVRState: + def __init__(self, screen=PVRState, force_show = False): + self.onPlayStateChanged.append(self.__playStateChanged) + self.pvrStateDialog = self.session.instantiateDialog(screen) + self.onShow.append(self._mayShow) + self.onHide.append(self.pvrStateDialog.hide) + self.force_show = force_show + + def _mayShow(self): + if self.shown and self.seekstate != self.SEEK_STATE_PLAY: + self.pvrStateDialog.show() + + def __playStateChanged(self, state): + playstateString = state[3] + self.pvrStateDialog["state"].setText(playstateString) + + # if we return into "PLAY" state, ensure that the dialog gets hidden if there will be no infobar displayed + if not config.usage.show_infobar_on_skip.value and self.seekstate == self.SEEK_STATE_PLAY and not self.force_show: + self.pvrStateDialog.hide() + else: + self._mayShow() + +class TimeshiftLive(Screen): + def __init__(self, session): + Screen.__init__(self, session) + +class InfoBarTimeshiftState(InfoBarPVRState): + def __init__(self): + InfoBarPVRState.__init__(self, screen=TimeshiftState, force_show = True) + self.timeshiftLiveScreen = self.session.instantiateDialog(TimeshiftLive) + self.onHide.append(self.timeshiftLiveScreen.hide) + self.secondInfoBarScreen and self.secondInfoBarScreen.onShow.append(self.timeshiftLiveScreen.hide) + self.timeshiftLiveScreen.hide() + self.__hideTimer = eTimer() + self.__hideTimer.callback.append(self.__hideTimeshiftState) + self.onFirstExecBegin.append(self.pvrStateDialog.show) + + def _mayShow(self): + if self.timeshiftEnabled(): + if self.secondInfoBarScreen and self.secondInfoBarScreen.shown: + self.secondInfoBarScreen.hide() + if self.timeshiftActivated(): + self.pvrStateDialog.show() + self.timeshiftLiveScreen.hide() + elif self.showTimeshiftState: + self.pvrStateDialog.hide() + self.timeshiftLiveScreen.show() + self.showTimeshiftState = False + if self.seekstate == self.SEEK_STATE_PLAY and config.usage.infobar_timeout.index and (self.pvrStateDialog.shown or self.timeshiftLiveScreen.shown): + self.__hideTimer.startLongTimer(config.usage.infobar_timeout.index) + else: + self.__hideTimeshiftState() + + def __hideTimeshiftState(self): + self.pvrStateDialog.hide() + self.timeshiftLiveScreen.hide() + +class InfoBarShowMovies: + + # i don't really like this class. + # it calls a not further specified "movie list" on up/down/movieList, + # so this is not more than an action map + def __init__(self): + self["MovieListActions"] = HelpableActionMap(self, "InfobarMovieListActions", + { + "movieList": (self.showMovies, _("Open the movie list")), + "up": (self.up, _("Open the movie list")), + "down": (self.down, _("Open the movie list")) + }) + +# InfoBarTimeshift requires InfoBarSeek, instantiated BEFORE! + +# Hrmf. +# +# Timeshift works the following way: +# demux0 demux1 "TimeshiftActions" "TimeshiftActivateActions" "SeekActions" +# - normal playback TUNER unused PLAY enable disable disable +# - user presses "yellow" button. FILE record PAUSE enable disable enable +# - user presess pause again FILE record PLAY enable disable enable +# - user fast forwards FILE record FF enable disable enable +# - end of timeshift buffer reached TUNER record PLAY enable enable disable +# - user backwards FILE record BACK # !! enable disable enable +# + +# in other words: +# - when a service is playing, pressing the "timeshiftStart" button ("yellow") enables recording ("enables timeshift"), +# freezes the picture (to indicate timeshift), sets timeshiftMode ("activates timeshift") +# now, the service becomes seekable, so "SeekActions" are enabled, "TimeshiftEnableActions" are disabled. +# - the user can now PVR around +# - if it hits the end, the service goes into live mode ("deactivates timeshift", it's of course still "enabled") +# the service looses it's "seekable" state. It can still be paused, but just to activate timeshift right +# after! +# the seek actions will be disabled, but the timeshiftActivateActions will be enabled +# - if the user rewinds, or press pause, timeshift will be activated again + +# note that a timeshift can be enabled ("recording") and +# activated (currently time-shifting). + +class InfoBarTimeshift: + def __init__(self): + self["TimeshiftActions"] = HelpableActionMap(self, "InfobarTimeshiftActions", + { + "timeshiftStart": (self.startTimeshift, _("Start timeshift")), # the "yellow key" + "timeshiftStop": (self.stopTimeshift, _("Stop timeshift")) # currently undefined :), probably 'TV' + }, prio=1) + self["TimeshiftActivateActions"] = ActionMap(["InfobarTimeshiftActivateActions"], + { + "timeshiftActivateEnd": self.activateTimeshiftEnd, # something like "rewind key" + "timeshiftActivateEndAndPause": self.activateTimeshiftEndAndPause # something like "pause key" + }, prio=-1) # priority over record + + self["TimeshiftActivateActions"].setEnabled(False) + self.ts_rewind_timer = eTimer() + self.ts_rewind_timer.callback.append(self.rewindService) + self.ts_start_delay_timer = eTimer() + self.ts_start_delay_timer.callback.append(self.startTimeshiftWithoutPause) + self.save_timeshift_file = False + self.timeshift_was_activated = False + self.showTimeshiftState = False + + self.__event_tracker = ServiceEventTracker(screen=self, eventmap= + { + iPlayableService.evStart: self.__serviceStarted, + iPlayableService.evSeekableStatusChanged: self.__seekableStatusChanged, + iPlayableService.evEnd: self.__serviceEnd + }) + + def getTimeshift(self): + service = self.session.nav.getCurrentService() + return service and service.timeshift() + + def timeshiftEnabled(self): + ts = self.getTimeshift() + return ts and ts.isTimeshiftEnabled() + + def timeshiftActivated(self): + ts = self.getTimeshift() + return ts and ts.isTimeshiftActive() + + def startTimeshift(self, pauseService = True): + print "enable timeshift" + ts = self.getTimeshift() + if ts is None: + if not pauseService and not int(config.usage.timeshift_start_delay.value): + self.session.open(MessageBox, _("Timeshift not possible!"), MessageBox.TYPE_ERROR, simple = True) + print "no ts interface" + return 0 + + if ts.isTimeshiftEnabled(): + print "hu, timeshift already enabled?" + else: + if not ts.startTimeshift(): + # we remove the "relative time" for now. + #self.pvrStateDialog["timeshift"].setRelative(time.time()) + + if pauseService: + # PAUSE. + #self.setSeekState(self.SEEK_STATE_PAUSE) + self.activateTimeshiftEnd(False) + self.showTimeshiftState = True + else: + self.showTimeshiftState = False + + # enable the "TimeshiftEnableActions", which will override + # the startTimeshift actions + self.__seekableStatusChanged() + + # get current timeshift filename and calculate new + self.save_timeshift_file = False + self.save_timeshift_in_movie_dir = False + self.current_timeshift_filename = ts.getTimeshiftFilename() + self.new_timeshift_filename = self.generateNewTimeshiftFileName() + else: + print "timeshift failed" + + def startTimeshiftWithoutPause(self): + self.startTimeshift(False) + + def stopTimeshift(self): + ts = self.getTimeshift() + if ts and ts.isTimeshiftEnabled(): + if int(config.usage.timeshift_start_delay.value): + ts.switchToLive() + else: + self.checkTimeshiftRunning(self.stopTimeshiftcheckTimeshiftRunningCallback) + else: + return 0 + + def stopTimeshiftcheckTimeshiftRunningCallback(self, answer): + ts = self.getTimeshift() + if answer and ts: + ts.stopTimeshift() + self.pvrStateDialog.hide() + + # disable actions + self.__seekableStatusChanged() + + # activates timeshift, and seeks to (almost) the end + def activateTimeshiftEnd(self, back = True): + self.showTimeshiftState = True + ts = self.getTimeshift() + print "activateTimeshiftEnd" + + if ts is None: + return + + if ts.isTimeshiftActive(): + print "!! activate timeshift called - but shouldn't this be a normal pause?" + self.pauseService() + else: + print "play, ..." + ts.activateTimeshift() # activate timeshift will automatically pause + self.setSeekState(self.SEEK_STATE_PAUSE) + seekable = self.getSeek() + if seekable is not None: + seekable.seekTo(-90000) # seek approx. 1 sec before end + self.timeshift_was_activated = True + if back: + self.ts_rewind_timer.start(200, 1) + + def rewindService(self): + self.setSeekState(self.makeStateBackward(int(config.seek.enter_backward.value))) + + # generates only filename without path + def generateNewTimeshiftFileName(self): + name = "timeshift record" + info = { } + self.getProgramInfoAndEvent(info, name) + + serviceref = info["serviceref"] + + service_name = "" + if isinstance(serviceref, eServiceReference): + service_name = ServiceReference(serviceref).getServiceName() + begin_date = strftime("%Y%m%d %H%M", localtime(time())) + filename = begin_date + " - " + service_name + + if config.recording.filename_composition.value == "short": + filename = strftime("%Y%m%d", localtime(time())) + " - " + info["name"] + elif config.recording.filename_composition.value == "long": + filename += " - " + info["name"] + " - " + info["description"] + else: + filename += " - " + info["name"] # standard + + if config.recording.ascii_filenames.value: + filename = ASCIItranslit.legacyEncode(filename) + + print "New timeshift filename: ", filename + return filename + + # same as activateTimeshiftEnd, but pauses afterwards. + def activateTimeshiftEndAndPause(self): + print "activateTimeshiftEndAndPause" + #state = self.seekstate + self.activateTimeshiftEnd(False) + + def callServiceStarted(self): + self.__serviceStarted() + + def __seekableStatusChanged(self): + self["TimeshiftActivateActions"].setEnabled(not self.isSeekable() and self.timeshiftEnabled()) + state = self.getSeek() is not None and self.timeshiftEnabled() + self["SeekActions"].setEnabled(state) + if not state: + self.setSeekState(self.SEEK_STATE_PLAY) + self.restartSubtitle() + + def __serviceStarted(self): + self.pvrStateDialog.hide() + self.__seekableStatusChanged() + if self.ts_start_delay_timer.isActive(): + self.ts_start_delay_timer.stop() + if int(config.usage.timeshift_start_delay.value): + self.ts_start_delay_timer.start(int(config.usage.timeshift_start_delay.value) * 1000, True) + + def checkTimeshiftRunning(self, returnFunction): + if self.timeshiftEnabled() and config.usage.check_timeshift.value and self.timeshift_was_activated: + message = _("Stop timeshift?") + if not self.save_timeshift_file: + choice = [(_("yes"), "stop"), (_("no"), "continue"), (_("Yes and save"), "save"), (_("Yes and save in movie dir"), "save_movie")] + else: + choice = [(_("yes"), "stop"), (_("no"), "continue")] + message += "\n" + _("Reminder, you have chosen to save timeshift file.") + self.session.openWithCallback(boundFunction(self.checkTimeshiftRunningCallback, returnFunction), MessageBox, message, simple = True, list = choice) + else: + returnFunction(True) + + def checkTimeshiftRunningCallback(self, returnFunction, answer): + if answer: + if "movie" in answer: + self.save_timeshift_in_movie_dir = True + if "save" in answer: + self.save_timeshift_file = True + ts = self.getTimeshift() + if ts: + ts.saveTimeshiftFile() + del ts + if "continue" not in answer: + self.saveTimeshiftFiles() + returnFunction(answer and answer != "continue") + + # renames/moves timeshift files if requested + def __serviceEnd(self): + self.saveTimeshiftFiles() + self.timeshift_was_activated = False + + def saveTimeshiftFiles(self): + if self.save_timeshift_file and self.current_timeshift_filename and self.new_timeshift_filename: + if config.usage.timeshift_path.value and not self.save_timeshift_in_movie_dir: + dirname = config.usage.timeshift_path.value + else: + dirname = defaultMoviePath() + filename = getRecordingFilename(self.new_timeshift_filename, dirname) + ".ts" + + fileList = [] + fileList.append((self.current_timeshift_filename, filename)) + if fileExists(self.current_timeshift_filename + ".sc"): + fileList.append((self.current_timeshift_filename + ".sc", filename + ".sc")) + if fileExists(self.current_timeshift_filename + ".cuts"): + fileList.append((self.current_timeshift_filename + ".cuts", filename + ".cuts")) + + moveFiles(fileList) + self.save_timeshift_file = False + +from Screens.PiPSetup import PiPSetup + +class InfoBarExtensions: + EXTENSION_SINGLE = 0 + EXTENSION_LIST = 1 + + def __init__(self): + self.list = [] + + self["InstantExtensionsActions"] = HelpableActionMap(self, "InfobarExtensions", + { + "extensions": (self.showExtensionSelection, _("Show extensions...")), + }, 1) # lower priority + + def addExtension(self, extension, key = None, type = EXTENSION_SINGLE): + self.list.append((type, extension, key)) + + def updateExtension(self, extension, key = None): + self.extensionsList.append(extension) + if key is not None: + if self.extensionKeys.has_key(key): + key = None + + if key is None: + for x in self.availableKeys: + if not self.extensionKeys.has_key(x): + key = x + break + + if key is not None: + self.extensionKeys[key] = len(self.extensionsList) - 1 + + def updateExtensions(self): + self.extensionsList = [] + self.availableKeys = [ "1", "2", "3", "4", "5", "6", "7", "8", "9", "0", "red", "green", "yellow", "blue" ] + self.extensionKeys = {} + for x in self.list: + if x[0] == self.EXTENSION_SINGLE: + self.updateExtension(x[1], x[2]) + else: + for y in x[1](): + self.updateExtension(y[0], y[1]) + + def showExtensionSelection(self): + self.updateExtensions() + extensionsList = self.extensionsList[:] + keys = [] + list = [] + for x in self.availableKeys: + if self.extensionKeys.has_key(x): + entry = self.extensionKeys[x] + extension = self.extensionsList[entry] + if extension[2](): + name = str(extension[0]()) + list.append((extension[0](), extension)) + keys.append(x) + extensionsList.remove(extension) + else: + extensionsList.remove(extension) + list.extend([(x[0](), x) for x in extensionsList]) + + keys += [""] * len(extensionsList) + self.session.openWithCallback(self.extensionCallback, ChoiceBox, title=_("Please choose an extension..."), list = list, keys = keys, skin_name = "ExtensionsList") + + def extensionCallback(self, answer): + if answer is not None: + answer[1][1]() + +from Tools.BoundFunction import boundFunction +import inspect + +# depends on InfoBarExtensions + +class InfoBarPlugins: + def __init__(self): + self.addExtension(extension = self.getPluginList, type = InfoBarExtensions.EXTENSION_LIST) + + def getPluginName(self, name): + return name + + def getPluginList(self): + l = [] + for p in plugins.getPlugins(where = PluginDescriptor.WHERE_EXTENSIONSMENU): + args = inspect.getargspec(p.__call__)[0] + if len(args) == 1 or len(args) == 2 and isinstance(self, InfoBarChannelSelection): + l.append(((boundFunction(self.getPluginName, p.name), boundFunction(self.runPlugin, p), lambda: True), None, p.name)) + l.sort(key = lambda e: e[2]) # sort by name + return l + + def runPlugin(self, plugin): + if isinstance(self, InfoBarChannelSelection): + plugin(session = self.session, servicelist = self.servicelist) + else: + plugin(session = self.session) + +from Components.Task import job_manager +class InfoBarJobman: + def __init__(self): + self.addExtension(extension = self.getJobList, type = InfoBarExtensions.EXTENSION_LIST) + + def getJobList(self): + return [((boundFunction(self.getJobName, job), boundFunction(self.showJobView, job), lambda: True), None) for job in job_manager.getPendingJobs()] + + def getJobName(self, job): + return "%s: %s (%d%%)" % (job.getStatustext(), job.name, int(100*job.progress/float(job.end))) + + def showJobView(self, job): + from Screens.TaskView import JobView + job_manager.in_background = False + self.session.openWithCallback(self.JobViewCB, JobView, job) + + def JobViewCB(self, in_background): + job_manager.in_background = in_background + +# depends on InfoBarExtensions +class InfoBarPiP: + def __init__(self): + try: + self.session.pipshown + except: + self.session.pipshown = False + + self.lastPiPService = None + + if SystemInfo["PIPAvailable"]: + self["PiPActions"] = HelpableActionMap(self, "InfobarPiPActions", + { + "activatePiP": (self.activePiP, self.activePiPName), + }) + if (self.allowPiP): + self.addExtension((self.getShowHideName, self.showPiP, lambda: True), "blue") + self.addExtension((self.getMoveName, self.movePiP, self.pipShown), "green") + self.addExtension((self.getSwapName, self.swapPiP, self.pipShown), "yellow") + self.addExtension((self.getTogglePipzapName, self.togglePipzap, lambda: True), "red") + else: + self.addExtension((self.getShowHideName, self.showPiP, self.pipShown), "blue") + self.addExtension((self.getMoveName, self.movePiP, self.pipShown), "green") + + self.lastPiPServiceTimeoutTimer = eTimer() + self.lastPiPServiceTimeoutTimer.callback.append(self.clearLastPiPService) + + def pipShown(self): + return self.session.pipshown + + def pipHandles0Action(self): + return self.pipShown() and config.usage.pip_zero_button.value != "standard" + + def getShowHideName(self): + if self.session.pipshown: + return _("Disable Picture in Picture") + else: + return _("Activate Picture in Picture") + + def getSwapName(self): + return _("Swap services") + + def getMoveName(self): + return _("Move Picture in Picture") + + def getTogglePipzapName(self): + slist = self.servicelist + if slist and slist.dopipzap: + return _("Zap focus to main screen") + return _("Zap focus to Picture in Picture") + + def togglePipzap(self): + if not self.session.pipshown: + self.showPiP() + slist = self.servicelist + if slist and self.session.pipshown: + slist.togglePipzap() + if slist.dopipzap: + currentServicePath = slist.getCurrentServicePath() + self.servicelist.setCurrentServicePath(self.session.pip.servicePath, doZap=False) + self.session.pip.servicePath = currentServicePath + + def showPiP(self): + self.lastPiPServiceTimeoutTimer.stop() + if self.session.pipshown: + slist = self.servicelist + if slist and slist.dopipzap: + self.togglePipzap() + if self.session.pipshown: + lastPiPServiceTimeout = int(config.usage.pip_last_service_timeout.value) + if lastPiPServiceTimeout >= 0: + self.lastPiPService = self.session.pip.getCurrentServiceReference() + if lastPiPServiceTimeout: + self.lastPiPServiceTimeoutTimer.startLongTimer(lastPiPServiceTimeout) + del self.session.pip + self.session.pipshown = False + if hasattr(self, "ScreenSaverTimerStart"): + self.ScreenSaverTimerStart() + else: + self.session.pip = self.session.instantiateDialog(PictureInPicture) + self.session.pip.show() + newservice = self.lastPiPService or self.session.nav.getCurrentlyPlayingServiceReference() or self.servicelist.servicelist.getCurrent() + if self.session.pip.playService(newservice): + self.session.pipshown = True + self.session.pip.servicePath = self.servicelist.getCurrentServicePath() + else: + newservice = self.session.nav.getCurrentlyPlayingServiceReference() or self.servicelist.servicelist.getCurrent() + if self.session.pip.playService(newservice): + self.session.pipshown = True + self.session.pip.servicePath = self.servicelist.getCurrentServicePath() + else: + self.session.pipshown = False + del self.session.pip + if self.session.pipshown and hasattr(self, "screenSaverTimer"): + self.screenSaverTimer.stop() + self.lastPiPService = None + + def clearLastPiPService(self): + self.lastPiPService = None + + def activePiP(self): + if self.servicelist and self.servicelist.dopipzap or not self.session.pipshown: + self.showPiP() + else: + self.togglePipzap() + + def activePiPName(self): + if self.servicelist and self.servicelist.dopipzap: + return _("Disable Picture in Picture") + if self.session.pipshown: + return _("Zap focus to Picture in Picture") + else: + return _("Activate Picture in Picture") + + def swapPiP(self): + swapservice = self.session.nav.getCurrentlyPlayingServiceOrGroup() + pipref = self.session.pip.getCurrentService() + if swapservice and pipref and pipref.toString() != swapservice.toString(): + currentServicePath = self.servicelist.getCurrentServicePath() + self.servicelist.setCurrentServicePath(self.session.pip.servicePath, doZap=False) + self.session.pip.playService(swapservice) + self.session.nav.playService(pipref, checkParentalControl=False, adjust=False) + self.session.pip.servicePath = currentServicePath + if self.servicelist.dopipzap: + # This unfortunately won't work with subservices + self.servicelist.setCurrentSelection(self.session.pip.getCurrentService()) + + def movePiP(self): + self.session.open(PiPSetup, pip = self.session.pip) + + def pipDoHandle0Action(self): + use = config.usage.pip_zero_button.value + if "swap" == use: + self.swapPiP() + elif "swapstop" == use: + self.swapPiP() + self.showPiP() + elif "stop" == use: + self.showPiP() + +from RecordTimer import parseEvent, RecordTimerEntry + +class InfoBarInstantRecord: + """Instant Record - handles the instantRecord action in order to + start/stop instant records""" + def __init__(self): + self["InstantRecordActions"] = HelpableActionMap(self, "InfobarInstantRecord", + { + "instantRecord": (self.instantRecord, _("Instant recording...")), + }) + if isStandardInfoBar(self): + self.recording = [] + else: + from Screens.InfoBar import InfoBar + InfoBarInstance = InfoBar.instance + if InfoBarInstance: + self.recording = InfoBarInstance.recording + + def stopCurrentRecording(self, entry = -1): + if entry is not None and entry != -1: + self.session.nav.RecordTimer.removeEntry(self.recording[entry]) + self.recording.remove(self.recording[entry]) + + def getProgramInfoAndEvent(self, info, name): + info["serviceref"] = self.session.nav.getCurrentlyPlayingServiceOrGroup() + + # try to get event info + event = None + try: + service = self.session.nav.getCurrentService() + epg = eEPGCache.getInstance() + event = epg.lookupEventTime(info["serviceref"], -1, 0) + if event is None: + event = service.info().getEvent(0) + except: + pass + + info["event"] = event + info["name"] = name + info["description"] = "" + info["eventid"] = None + + if event is not None: + curEvent = parseEvent(event) + info["name"] = curEvent[2] + info["description"] = curEvent[3] + info["eventid"] = curEvent[4] + info["end"] = curEvent[1] + + + def startInstantRecording(self, limitEvent = False): + begin = int(time()) + end = begin + 3600 # dummy + name = "instant record" + info = { } + + self.getProgramInfoAndEvent(info, name) + serviceref = info["serviceref"] + event = info["event"] + + if event is not None: + if limitEvent: + end = info["end"] + else: + if limitEvent: + self.session.open(MessageBox, _("No event info found, recording indefinitely."), MessageBox.TYPE_INFO) + + if isinstance(serviceref, eServiceReference): + serviceref = ServiceReference(serviceref) + + recording = RecordTimerEntry(serviceref, begin, end, info["name"], info["description"], info["eventid"], dirname = preferredInstantRecordPath()) + recording.dontSave = True + + if event is None or limitEvent == False: + recording.autoincrease = True + recording.setAutoincreaseEnd() + + simulTimerList = self.session.nav.RecordTimer.record(recording) + + if simulTimerList is None: # no conflict + recording.autoincrease = False + self.recording.append(recording) + else: + if len(simulTimerList) > 1: # with other recording + name = simulTimerList[1].name + name_date = ' '.join((name, strftime('%F %T', localtime(simulTimerList[1].begin)))) + print "[TIMER] conflicts with", name_date + recording.autoincrease = True # start with max available length, then increment + if recording.setAutoincreaseEnd(): + self.session.nav.RecordTimer.record(recording) + self.recording.append(recording) + self.session.open(MessageBox, _("Record time limited due to conflicting timer %s") % name_date, MessageBox.TYPE_INFO) + else: + self.session.open(MessageBox, _("Could not record due to conflicting timer %s") % name, MessageBox.TYPE_INFO) + else: + self.session.open(MessageBox, _("Could not record due to invalid service %s") % serviceref, MessageBox.TYPE_INFO) + recording.autoincrease = False + + def isInstantRecordRunning(self): + print "self.recording:", self.recording + if self.recording: + for x in self.recording: + if x.isRunning(): + return True + return False + + def recordQuestionCallback(self, answer): + print "pre:\n", self.recording + + if answer is None or answer[1] == "no": + return + list = [] + recording = self.recording[:] + for x in recording: + if not x in self.session.nav.RecordTimer.timer_list: + self.recording.remove(x) + elif x.dontSave and x.isRunning(): + list.append((x, False)) + + if answer[1] == "changeduration": + if len(self.recording) == 1: + self.changeDuration(0) + else: + self.session.openWithCallback(self.changeDuration, TimerSelection, list) + elif answer[1] == "changeendtime": + if len(self.recording) == 1: + self.setEndtime(0) + else: + self.session.openWithCallback(self.setEndtime, TimerSelection, list) + elif answer[1] == "timer": + import TimerEdit + self.session.open(TimerEdit.TimerEditList) + elif answer[1] == "stop": + self.session.openWithCallback(self.stopCurrentRecording, TimerSelection, list) + elif answer[1] in ( "indefinitely" , "manualduration", "manualendtime", "event"): + self.startInstantRecording(limitEvent = answer[1] in ("event", "manualendtime") or False) + if answer[1] == "manualduration": + self.changeDuration(len(self.recording)-1) + elif answer[1] == "manualendtime": + self.setEndtime(len(self.recording)-1) + elif "timeshift" in answer[1]: + ts = self.getTimeshift() + if ts: + ts.saveTimeshiftFile() + self.save_timeshift_file = True + if "movie" in answer[1]: + self.save_timeshift_in_movie_dir = True + print "after:\n", self.recording + + def setEndtime(self, entry): + if entry is not None and entry >= 0: + self.selectedEntry = entry + self.endtime=ConfigClock(default = self.recording[self.selectedEntry].end) + dlg = self.session.openWithCallback(self.TimeDateInputClosed, TimeDateInput, self.endtime) + dlg.setTitle(_("Please change recording endtime")) + + def TimeDateInputClosed(self, ret): + if len(ret) > 1: + if ret[0]: + print "stopping recording at", strftime("%F %T", localtime(ret[1])) + if self.recording[self.selectedEntry].end != ret[1]: + self.recording[self.selectedEntry].autoincrease = False + self.recording[self.selectedEntry].end = ret[1] + self.session.nav.RecordTimer.timeChanged(self.recording[self.selectedEntry]) + + def changeDuration(self, entry): + if entry is not None and entry >= 0: + self.selectedEntry = entry + self.session.openWithCallback(self.inputCallback, InputBox, title=_("How many minutes do you want to record?"), text="5", maxSize=False, type=Input.NUMBER) + + def inputCallback(self, value): + if value is not None: + print "stopping recording after", int(value), "minutes." + entry = self.recording[self.selectedEntry] + if int(value) != 0: + entry.autoincrease = False + entry.end = int(time()) + 60 * int(value) + self.session.nav.RecordTimer.timeChanged(entry) + + def isTimerRecordRunning(self): + identical = timers = 0 + for timer in self.session.nav.RecordTimer.timer_list: + if timer.isRunning() and not timer.justplay: + timers += 1 + if self.recording: + for x in self.recording: + if x.isRunning() and x == timer: + identical += 1 + return timers > identical + + def instantRecord(self): + pirr = preferredInstantRecordPath() + if not findSafeRecordPath(pirr) and not findSafeRecordPath(defaultMoviePath()): + if not pirr: + pirr = "" + self.session.open(MessageBox, _("Missing ") + "\n" + pirr + + "\n" + _("No HDD found or HDD not initialized!"), MessageBox.TYPE_ERROR) + return + + if isStandardInfoBar(self): + common = ((_("Add recording (stop after current event)"), "event"), + (_("Add recording (indefinitely)"), "indefinitely"), + (_("Add recording (enter recording duration)"), "manualduration"), + (_("Add recording (enter recording endtime)"), "manualendtime"),) + else: + common = () + if self.isInstantRecordRunning(): + title =_("A recording is currently running.\nWhat do you want to do?") + list = ((_("Stop recording"), "stop"),) + common + \ + ((_("Change recording (duration)"), "changeduration"), + (_("Change recording (endtime)"), "changeendtime"),) + if self.isTimerRecordRunning(): + list += ((_("Stop timer recording"), "timer"),) + list += ((_("Do nothing"), "no"),) + else: + title=_("Start recording?") + list = common + if self.isTimerRecordRunning(): + list += ((_("Stop timer recording"), "timer"),) + if isStandardInfoBar(self): + list += ((_("Do not record"), "no"),) + if isStandardInfoBar(self) and self.timeshiftEnabled(): + list = list + ((_("Save timeshift file"), "timeshift"), + (_("Save timeshift file in movie directory"), "timeshift_movie")) + if list: + self.session.openWithCallback(self.recordQuestionCallback, ChoiceBox, title=title, list=list) + else: + return 0 + +from Tools.ISO639 import LanguageCodes + +class InfoBarAudioSelection: + def __init__(self): + self["AudioSelectionAction"] = HelpableActionMap(self, "InfobarAudioSelectionActions", + { + "audioSelection": (self.audioSelection, _("Audio options...")), + }) + + def audioSelection(self): + from Screens.AudioSelection import AudioSelection + self.session.openWithCallback(self.audioSelected, AudioSelection, infobar=self) + + def audioSelected(self, ret=None): + print "[infobar::audioSelected]", ret + +class InfoBarSubserviceSelection: + def __init__(self): + self["SubserviceSelectionAction"] = HelpableActionMap(self, "InfobarSubserviceSelectionActions", + { + "subserviceSelection": (self.subserviceSelection, _("Subservice list...")), + }) + + self["SubserviceQuickzapAction"] = HelpableActionMap(self, "InfobarSubserviceQuickzapActions", + { + "nextSubservice": (self.nextSubservice, _("Switch to next sub service")), + "prevSubservice": (self.prevSubservice, _("Switch to previous sub service")) + }, -1) + self["SubserviceQuickzapAction"].setEnabled(False) + + self.__event_tracker = ServiceEventTracker(screen=self, eventmap= + { + iPlayableService.evUpdatedEventInfo: self.checkSubservicesAvail + }) + self.onClose.append(self.__removeNotifications) + + self.bsel = None + + def __removeNotifications(self): + self.session.nav.event.remove(self.checkSubservicesAvail) + + def checkSubservicesAvail(self): + service = self.session.nav.getCurrentService() + subservices = service and service.subServices() + if not subservices or subservices.getNumberOfSubservices() == 0: + self["SubserviceQuickzapAction"].setEnabled(False) + + def nextSubservice(self): + self.changeSubservice(+1) + + def prevSubservice(self): + self.changeSubservice(-1) + + def changeSubservice(self, direction): + service = self.session.nav.getCurrentService() + subservices = service and service.subServices() + n = subservices and subservices.getNumberOfSubservices() + if n and n > 0: + selection = -1 + ref = self.session.nav.getCurrentlyPlayingServiceOrGroup() + idx = 0 + while idx < n: + if subservices.getSubservice(idx).toString() == ref.toString(): + selection = idx + break + idx += 1 + if selection != -1: + selection += direction + if selection >= n: + selection=0 + elif selection < 0: + selection=n-1 + newservice = subservices.getSubservice(selection) + if newservice.valid(): + del subservices + del service + self.session.nav.playService(newservice, False) + + def subserviceSelection(self): + service = self.session.nav.getCurrentService() + subservices = service and service.subServices() + self.bouquets = self.servicelist.getBouquetList() + n = subservices and subservices.getNumberOfSubservices() + selection = 0 + if n and n > 0: + ref = self.session.nav.getCurrentlyPlayingServiceOrGroup() + tlist = [] + idx = 0 + while idx < n: + i = subservices.getSubservice(idx) + if i.toString() == ref.toString(): + selection = idx + tlist.append((i.getName(), i)) + idx += 1 + + if self.bouquets and len(self.bouquets): + keys = ["red", "blue", "", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9" ] + [""] * n + if config.usage.multibouquet.value: + tlist = [(_("Quick zap"), "quickzap", service.subServices()), (_("Add to bouquet"), "CALLFUNC", self.addSubserviceToBouquetCallback), ("--", "")] + tlist + else: + tlist = [(_("Quick zap"), "quickzap", service.subServices()), (_("Add to favourites"), "CALLFUNC", self.addSubserviceToBouquetCallback), ("--", "")] + tlist + selection += 3 + else: + tlist = [(_("Quick zap"), "quickzap", service.subServices()), ("--", "")] + tlist + keys = ["red", "", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9" ] + [""] * n + selection += 2 + + self.session.openWithCallback(self.subserviceSelected, ChoiceBox, title=_("Please select a sub service..."), list = tlist, selection = selection, keys = keys, skin_name = "SubserviceSelection") + + def subserviceSelected(self, service): + del self.bouquets + if not service is None: + if isinstance(service[1], str): + if service[1] == "quickzap": + from Screens.SubservicesQuickzap import SubservicesQuickzap + self.session.open(SubservicesQuickzap, service[2]) + else: + self["SubserviceQuickzapAction"].setEnabled(True) + self.session.nav.playService(service[1], False) + + def addSubserviceToBouquetCallback(self, service): + if len(service) > 1 and isinstance(service[1], eServiceReference): + self.selectedSubservice = service + if self.bouquets is None: + cnt = 0 + else: + cnt = len(self.bouquets) + if cnt > 1: # show bouquet list + self.bsel = self.session.openWithCallback(self.bouquetSelClosed, BouquetSelector, self.bouquets, self.addSubserviceToBouquet) + elif cnt == 1: # add to only one existing bouquet + self.addSubserviceToBouquet(self.bouquets[0][1]) + self.session.open(MessageBox, _("Service has been added to the favourites."), MessageBox.TYPE_INFO) + + def bouquetSelClosed(self, confirmed): + self.bsel = None + del self.selectedSubservice + if confirmed: + self.session.open(MessageBox, _("Service has been added to the selected bouquet."), MessageBox.TYPE_INFO) + + def addSubserviceToBouquet(self, dest): + self.servicelist.addServiceToBouquet(dest, self.selectedSubservice[1]) + if self.bsel: + self.bsel.close(True) + else: + del self.selectedSubservice + +class InfoBarRedButton: + def __init__(self): + self["RedButtonActions"] = HelpableActionMap(self, "InfobarRedButtonActions", + { + "activateRedButton": (self.activateRedButton, _("Red button...")), + }) + self.onHBBTVActivation = [ ] + self.onRedButtonActivation = [ ] + + def activateRedButton(self): + service = self.session.nav.getCurrentService() + info = service and service.info() + if info and info.getInfoString(iServiceInformation.sHBBTVUrl) != "": + for x in self.onHBBTVActivation: + x() + elif False: # TODO: other red button services + for x in self.onRedButtonActivation: + x() + +class InfoBarTimerButton: + def __init__(self): + self["TimerButtonActions"] = HelpableActionMap(self, "InfobarTimerButtonActions", + { + "timerSelection": (self.timerSelection, _("Timer selection...")), + }) + + def timerSelection(self): + from Screens.TimerEdit import TimerEditList + self.session.open(TimerEditList) + +class InfoBarVmodeButton: + def __init__(self): + self["VmodeButtonActions"] = HelpableActionMap(self, "InfobarVmodeButtonActions", + { + "vmodeSelection": (self.vmodeSelection, _("Letterbox zoom")), + }) + + def vmodeSelection(self): + self.session.open(VideoMode) + +class VideoMode(Screen): + def __init__(self,session): + Screen.__init__(self, session) + self["videomode"] = Label() + + self["actions"] = NumberActionMap( [ "InfobarVmodeButtonActions" ], + { + "vmodeSelection": self.selectVMode + }) + + self.Timer = eTimer() + self.Timer.callback.append(self.quit) + self.selectVMode() + + def selectVMode(self): + policy = config.av.policy_43 + if self.isWideScreen(): + policy = config.av.policy_169 + idx = policy.choices.index(policy.value) + idx = (idx + 1) % len(policy.choices) + policy.value = policy.choices[idx] + self["videomode"].setText(policy.value) + self.Timer.start(1000, True) + + def isWideScreen(self): + from Components.Converter.ServiceInfo import WIDESCREEN + service = self.session.nav.getCurrentService() + info = service and service.info() + return info.getInfo(iServiceInformation.sAspect) in WIDESCREEN + + def quit(self): + self.Timer.stop() + self.close() + +class InfoBarAdditionalInfo: + def __init__(self): + + self["RecordingPossible"] = Boolean(fixed=harddiskmanager.HDDCount() > 0) + self["TimeshiftPossible"] = self["RecordingPossible"] + self["ExtensionsAvailable"] = Boolean(fixed=1) + # TODO: these properties should be queried from the input device keymap + self["ShowTimeshiftOnYellow"] = Boolean(fixed=0) + self["ShowAudioOnYellow"] = Boolean(fixed=0) + self["ShowRecordOnRed"] = Boolean(fixed=0) + +class InfoBarNotifications: + def __init__(self): + self.onExecBegin.append(self.checkNotifications) + Notifications.notificationAdded.append(self.checkNotificationsIfExecing) + self.onClose.append(self.__removeNotification) + + def __removeNotification(self): + Notifications.notificationAdded.remove(self.checkNotificationsIfExecing) + + def checkNotificationsIfExecing(self): + if self.execing: + self.checkNotifications() + + def checkNotifications(self): + notifications = Notifications.notifications + if notifications: + n = notifications[0] + + del notifications[0] + cb = n[0] + + if n[3].has_key("onSessionOpenCallback"): + n[3]["onSessionOpenCallback"]() + del n[3]["onSessionOpenCallback"] + + if cb: + dlg = self.session.openWithCallback(cb, n[1], *n[2], **n[3]) + elif not Notifications.current_notifications and n[4] == "ZapError": + if n[3].has_key("timeout"): + del n[3]["timeout"] + n[3]["enable_input"] = False + dlg = self.session.instantiateDialog(n[1], *n[2], **n[3]) + self.hide() + dlg.show() + self.notificationDialog = dlg + eActionMap.getInstance().bindAction('', -maxint - 1, self.keypressNotification) + else: + dlg = self.session.open(n[1], *n[2], **n[3]) + + # remember that this notification is currently active + d = (n[4], dlg) + Notifications.current_notifications.append(d) + dlg.onClose.append(boundFunction(self.__notificationClosed, d)) + + def closeNotificationInstantiateDialog(self): + if hasattr(self, "notificationDialog"): + self.session.deleteDialog(self.notificationDialog) + del self.notificationDialog + eActionMap.getInstance().unbindAction('', self.keypressNotification) + + def keypressNotification(self, key, flag): + if flag: + self.closeNotificationInstantiateDialog() + + def __notificationClosed(self, d): + Notifications.current_notifications.remove(d) + +class InfoBarServiceNotifications: + def __init__(self): + self.__event_tracker = ServiceEventTracker(screen=self, eventmap= + { + iPlayableService.evEnd: self.serviceHasEnded + }) + + def serviceHasEnded(self): + print "service end!" + + try: + self.setSeekState(self.SEEK_STATE_PLAY) + except: + pass + +class InfoBarCueSheetSupport: + CUT_TYPE_IN = 0 + CUT_TYPE_OUT = 1 + CUT_TYPE_MARK = 2 + CUT_TYPE_LAST = 3 + + ENABLE_RESUME_SUPPORT = False + + def __init__(self, actionmap = "InfobarCueSheetActions"): + self["CueSheetActions"] = HelpableActionMap(self, actionmap, + { + "jumpPreviousMark": (self.jumpPreviousMark, _("Jump to previous marked position")), + "jumpNextMark": (self.jumpNextMark, _("Jump to next marked position")), + "toggleMark": (self.toggleMark, _("Toggle a cut mark at the current position")) + }, prio=1) + + self.cut_list = [ ] + self.is_closing = False + self.__event_tracker = ServiceEventTracker(screen=self, eventmap= + { + iPlayableService.evStart: self.__serviceStarted, + iPlayableService.evCuesheetChanged: self.downloadCuesheet, + }) + + def __serviceStarted(self): + if self.is_closing: + return + print "new service started! trying to download cuts!" + self.downloadCuesheet() + + if self.ENABLE_RESUME_SUPPORT: + for (pts, what) in self.cut_list: + if what == self.CUT_TYPE_LAST: + last = pts + break + else: + last = getResumePoint(self.session) + if last is None: + return + # only resume if at least 10 seconds ahead, or <10 seconds before the end. + seekable = self.__getSeekable() + if seekable is None: + return # Should not happen? + length = seekable.getLength() or (None,0) + print "seekable.getLength() returns:", length + # Hmm, this implies we don't resume if the length is unknown... + if (last > 900000) and (not length[1] or (last < length[1] - 900000)): + self.resume_point = last + l = last / 90000 + if config.usage.on_movie_start.value == "ask" or not length[1]: + Notifications.AddNotificationWithCallback(self.playLastCB, MessageBox, _("Do you want to resume this playback?") + "\n" + (_("Resume position at %s") % ("%d:%02d:%02d" % (l/3600, l%3600/60, l%60))), timeout=10) + elif config.usage.on_movie_start.value == "resume": +# TRANSLATORS: The string "Resuming playback" flashes for a moment +# TRANSLATORS: at the start of a movie, when the user has selected +# TRANSLATORS: "Resume from last position" as start behavior. +# TRANSLATORS: The purpose is to notify the user that the movie starts +# TRANSLATORS: in the middle somewhere and not from the beginning. +# TRANSLATORS: (Some translators seem to have interpreted it as a +# TRANSLATORS: question or a choice, but it is a statement.) + Notifications.AddNotificationWithCallback(self.playLastCB, MessageBox, _("Resuming playback"), timeout=2, type=MessageBox.TYPE_INFO) + + def playLastCB(self, answer): + if answer == True: + self.doSeek(self.resume_point) + self.hideAfterResume() + + def hideAfterResume(self): + if isinstance(self, InfoBarShowHide): + self.hide() + + def __getSeekable(self): + service = self.session.nav.getCurrentService() + if service is None: + return None + return service.seek() + + def cueGetCurrentPosition(self): + seek = self.__getSeekable() + if seek is None: + return None + r = seek.getPlayPosition() + if r[0]: + return None + return long(r[1]) + + def cueGetEndCutPosition(self): + ret = False + isin = True + for cp in self.cut_list: + if cp[1] == self.CUT_TYPE_OUT: + if isin: + isin = False + ret = cp[0] + elif cp[1] == self.CUT_TYPE_IN: + isin = True + return ret + + def jumpPreviousNextMark(self, cmp, start=False): + current_pos = self.cueGetCurrentPosition() + if current_pos is None: + return False + mark = self.getNearestCutPoint(current_pos, cmp=cmp, start=start) + if mark is not None: + pts = mark[0] + else: + return False + + self.doSeek(pts) + return True + + def jumpPreviousMark(self): + # we add 5 seconds, so if the play position is <5s after + # the mark, the mark before will be used + self.jumpPreviousNextMark(lambda x: -x-5*90000, start=True) + + def jumpNextMark(self): + if not self.jumpPreviousNextMark(lambda x: x-90000): + self.doSeek(-1) + + def getNearestCutPoint(self, pts, cmp=abs, start=False): + # can be optimized + beforecut = True + nearest = None + bestdiff = -1 + instate = True + if start: + bestdiff = cmp(0 - pts) + if bestdiff >= 0: + nearest = [0, False] + for cp in self.cut_list: + if beforecut and cp[1] in (self.CUT_TYPE_IN, self.CUT_TYPE_OUT): + beforecut = False + if cp[1] == self.CUT_TYPE_IN: # Start is here, disregard previous marks + diff = cmp(cp[0] - pts) + if start and diff >= 0: + nearest = cp + bestdiff = diff + else: + nearest = None + bestdiff = -1 + if cp[1] == self.CUT_TYPE_IN: + instate = True + elif cp[1] == self.CUT_TYPE_OUT: + instate = False + elif cp[1] in (self.CUT_TYPE_MARK, self.CUT_TYPE_LAST): + diff = cmp(cp[0] - pts) + if instate and diff >= 0 and (nearest is None or bestdiff > diff): + nearest = cp + bestdiff = diff + return nearest + + def toggleMark(self, onlyremove=False, onlyadd=False, tolerance=5*90000, onlyreturn=False): + current_pos = self.cueGetCurrentPosition() + if current_pos is None: + print "not seekable" + return + + nearest_cutpoint = self.getNearestCutPoint(current_pos) + + if nearest_cutpoint is not None and abs(nearest_cutpoint[0] - current_pos) < tolerance: + if onlyreturn: + return nearest_cutpoint + if not onlyadd: + self.removeMark(nearest_cutpoint) + elif not onlyremove and not onlyreturn: + self.addMark((current_pos, self.CUT_TYPE_MARK)) + + if onlyreturn: + return None + + def addMark(self, point): + insort(self.cut_list, point) + self.uploadCuesheet() + self.showAfterCuesheetOperation() + + def removeMark(self, point): + self.cut_list.remove(point) + self.uploadCuesheet() + self.showAfterCuesheetOperation() + + def showAfterCuesheetOperation(self): + if isinstance(self, InfoBarShowHide): + self.doShow() + + def __getCuesheet(self): + service = self.session.nav.getCurrentService() + if service is None: + return None + return service.cueSheet() + + def uploadCuesheet(self): + cue = self.__getCuesheet() + + if cue is None: + print "upload failed, no cuesheet interface" + return + cue.setCutList(self.cut_list) + + def downloadCuesheet(self): + cue = self.__getCuesheet() + + if cue is None: + print "download failed, no cuesheet interface" + self.cut_list = [ ] + else: + self.cut_list = cue.getCutList() + +class InfoBarSummary(Screen): + skin = """ + <screen position="0,0" size="132,64"> + <widget source="global.CurrentTime" render="Label" position="62,46" size="82,18" font="Regular;16" > + <convert type="ClockToText">WithSeconds</convert> + </widget> + <widget source="session.RecordState" render="FixedLabel" text=" " position="62,46" size="82,18" zPosition="1" > + <convert type="ConfigEntryTest">config.usage.blinking_display_clock_during_recording,True,CheckSourceBoolean</convert> + <convert type="ConditionalShowHide">Blink</convert> + </widget> + <widget source="session.CurrentService" render="Label" position="6,4" size="120,42" font="Regular;18" > + <convert type="ServiceName">Name</convert> + </widget> + <widget source="session.Event_Now" render="Progress" position="6,46" size="46,18" borderWidth="1" > + <convert type="EventTime">Progress</convert> + </widget> + </screen>""" + +# for picon: (path="piconlcd" will use LCD picons) +# <widget source="session.CurrentService" render="Picon" position="6,0" size="120,64" path="piconlcd" > +# <convert type="ServiceName">Reference</convert> +# </widget> + +class InfoBarSummarySupport: + def __init__(self): + pass + + def createSummary(self): + return InfoBarSummary + +class InfoBarMoviePlayerSummary(Screen): + skin = """ + <screen position="0,0" size="132,64"> + <widget source="global.CurrentTime" render="Label" position="62,46" size="64,18" font="Regular;16" halign="right" > + <convert type="ClockToText">WithSeconds</convert> + </widget> + <widget source="session.RecordState" render="FixedLabel" text=" " position="62,46" size="64,18" zPosition="1" > + <convert type="ConfigEntryTest">config.usage.blinking_display_clock_during_recording,True,CheckSourceBoolean</convert> + <convert type="ConditionalShowHide">Blink</convert> + </widget> + <widget source="session.CurrentService" render="Label" position="6,4" size="120,42" font="Regular;18" > + <convert type="ServiceName">Name</convert> + </widget> + <widget source="session.CurrentService" render="Progress" position="6,46" size="56,18" borderWidth="1" > + <convert type="ServicePosition">Position</convert> + </widget> + </screen>""" + +class InfoBarMoviePlayerSummarySupport: + def __init__(self): + pass + + def createSummary(self): + return InfoBarMoviePlayerSummary + +class InfoBarTeletextPlugin: + def __init__(self): + self.teletext_plugin = None + + for p in plugins.getPlugins(PluginDescriptor.WHERE_TELETEXT): + self.teletext_plugin = p + + if self.teletext_plugin is not None: + self["TeletextActions"] = HelpableActionMap(self, "InfobarTeletextActions", + { + "startTeletext": (self.startTeletext, _("View teletext...")) + }) + else: + print "no teletext plugin found!" + + def startTeletext(self): + self.teletext_plugin(session=self.session, service=self.session.nav.getCurrentService()) + +class InfoBarSubtitleSupport(object): + def __init__(self): + object.__init__(self) + self["SubtitleSelectionAction"] = HelpableActionMap(self, "InfobarSubtitleSelectionActions", + { + "subtitleSelection": (self.subtitleSelection, _("Subtitle selection...")), + }) + + self.selected_subtitle = None + + if isStandardInfoBar(self): + self.subtitle_window = self.session.instantiateDialog(SubtitleDisplay) + else: + from Screens.InfoBar import InfoBar + self.subtitle_window = InfoBar.instance.subtitle_window + + self.subtitle_window.hide() + + self.__event_tracker = ServiceEventTracker(screen=self, eventmap= + { + iPlayableService.evStart: self.__serviceChanged, + iPlayableService.evEnd: self.__serviceChanged, + iPlayableService.evUpdatedInfo: self.__updatedInfo + }) + + def getCurrentServiceSubtitle(self): + service = self.session.nav.getCurrentService() + return service and service.subtitle() + + def subtitleSelection(self): + subtitle = self.getCurrentServiceSubtitle() + subtitlelist = subtitle and subtitle.getSubtitleList() + if self.selected_subtitle or subtitlelist and len(subtitlelist)>0: + from Screens.AudioSelection import SubtitleSelection + self.session.open(SubtitleSelection, self) + else: + return 0 + + def __serviceChanged(self): + if self.selected_subtitle: + self.selected_subtitle = None + self.subtitle_window.hide() + + def __updatedInfo(self): + if not self.selected_subtitle: + subtitle = self.getCurrentServiceSubtitle() + cachedsubtitle = subtitle.getCachedSubtitle() + if cachedsubtitle: + self.enableSubtitle(cachedsubtitle) + + def enableSubtitle(self, selectedSubtitle): + subtitle = self.getCurrentServiceSubtitle() + self.selected_subtitle = selectedSubtitle + if subtitle and self.selected_subtitle: + subtitle.enableSubtitles(self.subtitle_window.instance, self.selected_subtitle) + self.subtitle_window.show() + else: + if subtitle: + subtitle.disableSubtitles(self.subtitle_window.instance) + self.subtitle_window.hide() + + def restartSubtitle(self): + if self.selected_subtitle: + self.enableSubtitle(self.selected_subtitle) + +class InfoBarServiceErrorPopupSupport: + def __init__(self): + self.__event_tracker = ServiceEventTracker(screen=self, eventmap= + { + iPlayableService.evTuneFailed: self.__tuneFailed, + iPlayableService.evTunedIn: self.__serviceStarted, + iPlayableService.evStart: self.__serviceStarted + }) + self.__serviceStarted() + + def __serviceStarted(self): + self.closeNotificationInstantiateDialog() + self.last_error = None + Notifications.RemovePopup(id = "ZapError") + + def __tuneFailed(self): + if not config.usage.hide_zap_errors.value: + service = self.session.nav.getCurrentService() + info = service and service.info() + error = info and info.getInfo(iServiceInformation.sDVBState) + + if error == self.last_error: + error = None + else: + self.last_error = error + + error = { + eDVBServicePMTHandler.eventNoResources: _("No free tuner!"), + eDVBServicePMTHandler.eventTuneFailed: _("Tune failed!"), + eDVBServicePMTHandler.eventNoPAT: _("No data on transponder!\n(Timeout reading PAT)"), + eDVBServicePMTHandler.eventNoPATEntry: _("Service not found!\n(SID not found in PAT)"), + eDVBServicePMTHandler.eventNoPMT: _("Service invalid!\n(Timeout reading PMT)"), + eDVBServicePMTHandler.eventNewProgramInfo: None, + eDVBServicePMTHandler.eventTuned: None, + eDVBServicePMTHandler.eventSOF: None, + eDVBServicePMTHandler.eventEOF: None, + eDVBServicePMTHandler.eventMisconfiguration: _("Service unavailable!\nCheck tuner configuration!"), + }.get(error) #this returns None when the key not exist in the dict + + if error: + self.closeNotificationInstantiateDialog() + if hasattr(self, "dishDialog") and not self.dishDialog.dishState(): + Notifications.AddPopup(text = error, type = MessageBox.TYPE_ERROR, timeout = 5, id = "ZapError") + +class InfoBarPowersaver: + def __init__(self): + self.inactivityTimer = eTimer() + self.inactivityTimer.callback.append(self.inactivityTimeout) + self.restartInactiveTimer() + self.sleepTimer = eTimer() + self.sleepStartTime = 0 + self.sleepTimer.callback.append(self.sleepTimerTimeout) + eActionMap.getInstance().bindAction('', -maxint - 1, self.keypress) + + def keypress(self, key, flag): + if flag: + self.restartInactiveTimer() + + def restartInactiveTimer(self): + time = abs(int(config.usage.inactivity_timer.value)) + if time: + self.inactivityTimer.startLongTimer(time) + else: + self.inactivityTimer.stop() + + def inactivityTimeout(self): + if config.usage.inactivity_timer_blocktime.value: + curtime = localtime(time()) + if curtime.tm_year > 1970: #check if the current time is valid + curtime = (curtime.tm_hour, curtime.tm_min, curtime.tm_sec) + begintime = tuple(config.usage.inactivity_timer_blocktime_begin.value) + endtime = tuple(config.usage.inactivity_timer_blocktime_end.value) + if begintime <= endtime and (curtime >= begintime and curtime < endtime) or begintime > endtime and (curtime >= begintime or curtime < endtime): + duration = (endtime[0]*3600 + endtime[1]*60) - (curtime[0]*3600 + curtime[1]*60 + curtime[2]) + if duration: + if duration < 0: + duration += 24*3600 + self.inactivityTimer.startLongTimer(duration) + return + if Screens.Standby.inStandby: + self.inactivityTimeoutCallback(True) + else: + message = _("Your receiver will got to standby due to inactivity.") + "\n" + _("Do you want this?") + self.session.openWithCallback(self.inactivityTimeoutCallback, MessageBox, message, timeout=60, simple=True, default=False, timeout_default=True) + + def inactivityTimeoutCallback(self, answer): + if answer: + self.goStandby() + else: + print "[InfoBarPowersaver] abort" + + def sleepTimerState(self): + if self.sleepTimer.isActive(): + return (self.sleepStartTime - time()) / 60 + return 0 + + def setSleepTimer(self, sleepTime): + print "[InfoBarPowersaver] set sleeptimer", sleepTime + if sleepTime: + m = abs(sleepTime / 60) + message = _("The sleep timer has been activated.") + "\n" + _("And will put your receiver in standby over ") + ngettext("%d minute", "%d minutes", m) % m + self.sleepTimer.startLongTimer(sleepTime) + self.sleepStartTime = time() + sleepTime + else: + message = _("The sleep timer has been disabled.") + self.sleepTimer.stop() + Notifications.AddPopup(message, type = MessageBox.TYPE_INFO, timeout = 5) + + def sleepTimerTimeout(self): + if not Screens.Standby.inStandby: + list = [ (_("Yes"), True), (_("Extend sleeptimer 15 minutes"), "extend"), (_("No"), False) ] + message = _("Your receiver will got to stand by due to the sleeptimer.") + message += "\n" + _("Do you want this?") + self.session.openWithCallback(self.sleepTimerTimeoutCallback, MessageBox, message, timeout=60, simple=True, list=list, default=False, timeout_default=True) + + def sleepTimerTimeoutCallback(self, answer): + if answer == "extend": + print "[InfoBarPowersaver] extend sleeptimer" + self.setSleepTimer(900) + elif answer: + self.goStandby() + else: + print "[InfoBarPowersaver] abort" + self.setSleepTimer(0) + + def goStandby(self): + if not Screens.Standby.inStandby: + print "[InfoBarPowersaver] goto standby" + self.session.open(Screens.Standby.Standby) + +class InfoBarHDMI: + def __init__(self): + self["HDMIActions"] = HelpableActionMap(self, "InfobarHDMIActions", + { + "HDMIin":(self.HDMIIn, _("Switch to HDMI in mode")), + }, prio=2) + + def HDMIIn(self): + slist = self.servicelist + if slist.dopipzap: + curref = self.session.pip.getCurrentService() + if curref and curref.type != 8192: + self.session.pip.playService(eServiceReference('8192:0:1:0:0:0:0:0:0:0:')) + else: + self.session.pip.playService(slist.servicelist.getCurrent()) + else: + curref = self.session.nav.getCurrentlyPlayingServiceOrGroup() + if curref and curref.type != 8192: + if curref and curref.type != -1 and os.path.splitext(curref.toString().split(":")[10])[1].lower() in AUDIO_EXTENSIONS.union(MOVIE_EXTENSIONS, DVD_EXTENSIONS): + setResumePoint(self.session) + self.session.nav.playService(eServiceReference('8192:0:1:0:0:0:0:0:0:0:')) + elif isStandardInfoBar(self): + self.session.nav.playService(slist.servicelist.getCurrent()) + else: + self.session.nav.playService(self.cur_service) diff --git a/lib/python/Screens/InputBox.py b/lib/python/Screens/InputBox.py new file mode 100644 index 0000000..a439aba --- /dev/null +++ b/lib/python/Screens/InputBox.py @@ -0,0 +1,175 @@ +from enigma import eRCInput, getPrevAsciiCode +from Screens.Screen import Screen +from Screens.MessageBox import MessageBox +from Components.ActionMap import NumberActionMap +from Components.Label import Label +from Components.Input import Input +from Tools.BoundFunction import boundFunction +from Tools.Notifications import AddPopup +from time import time + +class InputBox(Screen): + def __init__(self, session, title = "", windowTitle = _("Input"), useableChars = None, **kwargs): + Screen.__init__(self, session) + + self["text"] = Label(title) + self["input"] = Input(**kwargs) + self.onShown.append(boundFunction(self.setTitle, windowTitle)) + if useableChars is not None: + self["input"].setUseableChars(useableChars) + + self["actions"] = NumberActionMap(["WizardActions", "InputBoxActions", "InputAsciiActions", "KeyboardInputActions"], + { + "gotAsciiCode": self.gotAsciiCode, + "ok": self.go, + "back": self.cancel, + "left": self.keyLeft, + "right": self.keyRight, + "home": self.keyHome, + "end": self.keyEnd, + "deleteForward": self.keyDelete, + "deleteBackward": self.keyBackspace, + "tab": self.keyTab, + "toggleOverwrite": self.keyInsert, + "1": self.keyNumberGlobal, + "2": self.keyNumberGlobal, + "3": self.keyNumberGlobal, + "4": self.keyNumberGlobal, + "5": self.keyNumberGlobal, + "6": self.keyNumberGlobal, + "7": self.keyNumberGlobal, + "8": self.keyNumberGlobal, + "9": self.keyNumberGlobal, + "0": self.keyNumberGlobal + }, -1) + + if self["input"].type == Input.TEXT: + self.onExecBegin.append(self.setKeyboardModeAscii) + else: + self.onExecBegin.append(self.setKeyboardModeNone) + + def gotAsciiCode(self): + self["input"].handleAscii(getPrevAsciiCode()) + + def keyLeft(self): + self["input"].left() + + def keyRight(self): + self["input"].right() + + def keyNumberGlobal(self, number): + self["input"].number(number) + + def keyDelete(self): + self["input"].delete() + + def go(self): + self.close(self["input"].getText()) + + def cancel(self): + self.close(None) + + def keyHome(self): + self["input"].home() + + def keyEnd(self): + self["input"].end() + + def keyBackspace(self): + self["input"].deleteBackward() + + def keyTab(self): + self["input"].tab() + + def keyInsert(self): + self["input"].toggleOverwrite() + +class PinInput(InputBox): + def __init__(self, session, service = "", triesEntry = None, pinList = [], popup = False, *args, **kwargs): + InputBox.__init__(self, session = session, text = " ", maxSize = True, type = Input.PIN, *args, **kwargs) + + self.waitTime = 15 + self.triesEntry = triesEntry + self.pinList = pinList + self["service"] = Label(service) + + if service: + self.skinName = "PinInputPopup" + + if self.getTries() == 0: + if (self.triesEntry.time.value + (self.waitTime * 60)) > time(): + remaining = (self.triesEntry.time.value + (self.waitTime * 60)) - time() + remainingMinutes = int(remaining / 60) + remainingSeconds = int(remaining % 60) + messageText = _("You have to wait %s!") % (str(remainingMinutes) + " " + _("minutes") + ", " + str(remainingSeconds) + " " + _("seconds")) + if service: + AddPopup(messageText, type = MessageBox.TYPE_ERROR, timeout = 3) + self.closePinCancel() + else: + self.onFirstExecBegin.append(boundFunction(self.session.openWithCallback, self.closePinCancel, MessageBox, messageText, MessageBox.TYPE_ERROR, timeout = 3)) + else: + self.setTries(3) + + self["tries"] = Label("") + self.onShown.append(self.showTries) + + def gotAsciiCode(self): + if self["input"].currPos == len(self["input"]) - 1: + InputBox.gotAsciiCode(self) + self.go() + else: + InputBox.gotAsciiCode(self) + + def keyNumberGlobal(self, number): + if self["input"].currPos == len(self["input"]) - 1: + InputBox.keyNumberGlobal(self, number) + self.go() + else: + InputBox.keyNumberGlobal(self, number) + + def checkPin(self, pin): + if pin is not None and " " not in pin and int(pin) in self.pinList: + return True + return False + + def go(self): + self.triesEntry.time.value = int(time()) + self.triesEntry.time.save() + if self.checkPin(self["input"].getText()): + self.setTries(3) + self.closePinCorrect() + else: + self.keyHome() + self.decTries() + if self.getTries() == 0: + self.closePinWrong() + else: + pass + + def closePinWrong(self, *args): + print "args:", args + self.close(False) + + def closePinCorrect(self, *args): + self.setTries(3) + self.close(True) + + def closePinCancel(self, *args): + self.close(None) + + def cancel(self): + self.closePinCancel() + + def getTries(self): + return self.triesEntry.tries.value + + def decTries(self): + self.setTries(self.triesEntry.tries.value - 1) + self.showTries() + + def setTries(self, tries): + self.triesEntry.tries.value = tries + self.triesEntry.tries.save() + + def showTries(self): + self["tries"].setText(_("Tries left:") + " " + str(self.getTries())) diff --git a/lib/python/Screens/InputDeviceSetup.py b/lib/python/Screens/InputDeviceSetup.py new file mode 100644 index 0000000..3bd6bec --- /dev/null +++ b/lib/python/Screens/InputDeviceSetup.py @@ -0,0 +1,381 @@ +from Screen import Screen +from Screens.HelpMenu import HelpableScreen +from Screens.MessageBox import MessageBox +from Components.InputDevice import iInputDevices, iRcTypeControl +from Components.Sources.StaticText import StaticText +from Components.Sources.List import List +from Components.config import config, ConfigYesNo, getConfigListEntry, ConfigSelection +from Components.ConfigList import ConfigListScreen +from Components.ActionMap import ActionMap, HelpableActionMap +from Tools.Directories import resolveFilename, SCOPE_CURRENT_SKIN +from Tools.LoadPixmap import LoadPixmap + +class InputDeviceSelection(Screen,HelpableScreen): + skin = """ + <screen name="InputDeviceSelection" position="center,center" size="560,400" title="Select input device"> + <ePixmap pixmap="skin_default/buttons/red.png" position="0,0" size="140,40" alphatest="on"/> + <ePixmap pixmap="skin_default/buttons/green.png" position="140,0" size="140,40" alphatest="on"/> + <ePixmap pixmap="skin_default/buttons/yellow.png" position="280,0" size="140,40" alphatest="on"/> + <ePixmap pixmap="skin_default/buttons/blue.png" position="420,0" size="140,40" alphatest="on"/> + <widget source="key_red" render="Label" position="0,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#9f1313" transparent="1"/> + <widget source="key_green" render="Label" position="140,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#1f771f" transparent="1"/> + <widget source="key_yellow" render="Label" position="280,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#a08500" transparent="1"/> + <widget source="key_blue" render="Label" position="420,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#18188b" transparent="1"/> + <widget source="list" render="Listbox" position="5,50" size="550,280" zPosition="10" scrollbarMode="showOnDemand"> + <convert type="TemplatedMultiContent"> + <!-- device, description, devicepng, divpng --> + {"template": [ + MultiContentEntryPixmapAlphaTest(pos = (2, 8), size = (54, 54), png = 2), # index 3 is the interface pixmap + MultiContentEntryText(pos = (65, 6), size = (450, 54), font=0, flags = RT_HALIGN_LEFT|RT_VALIGN_CENTER|RT_WRAP, text = 1), # index 1 is the interfacename + ], + "fonts": [gFont("Regular", 28),gFont("Regular", 20)], + "itemHeight": 70 + } + </convert> + </widget> + <ePixmap pixmap="skin_default/div-h.png" position="0,340" zPosition="1" size="560,2"/> + <widget source="introduction" render="Label" position="0,350" size="560,50" zPosition="10" font="Regular;21" halign="center" valign="center" backgroundColor="#25062748" transparent="1"/> + </screen>""" + + + def __init__(self, session): + Screen.__init__(self, session) + HelpableScreen.__init__(self) + + self.edittext = _("Press OK to edit the settings.") + + self["key_red"] = StaticText(_("Close")) + self["key_green"] = StaticText(_("Select")) + self["key_yellow"] = StaticText("") + self["key_blue"] = StaticText("") + self["introduction"] = StaticText(self.edittext) + + self.devices = [(iInputDevices.getDeviceName(x),x) for x in iInputDevices.getDeviceList()] + print "[InputDeviceSelection] found devices :->", len(self.devices),self.devices + + self["OkCancelActions"] = HelpableActionMap(self, "OkCancelActions", + { + "cancel": (self.close, _("Exit input device selection.")), + "ok": (self.okbuttonClick, _("Select input device.")), + }, -2) + + self["ColorActions"] = HelpableActionMap(self, "ColorActions", + { + "red": (self.close, _("Exit input device selection.")), + "green": (self.okbuttonClick, _("Select input device.")), + }, -2) + + self.currentIndex = 0 + self.list = [] + self["list"] = List(self.list) + self.updateList() + self.onLayoutFinish.append(self.layoutFinished) + self.onClose.append(self.cleanup) + + def layoutFinished(self): + self.setTitle(_("Select input device")) + + def cleanup(self): + self.currentIndex = 0 + + def buildInterfaceList(self, device, description, type, isinputdevice = True): + divpng = LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/div-h.png")) + activepng = None + devicepng = None + enabled = iInputDevices.getDeviceAttribute(device, 'enabled') + + if type == 'remote': + if config.misc.rcused.value == 0: + if enabled: + devicepng = LoadPixmap(resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/icons/input_rcnew-configured.png")) + else: + devicepng = LoadPixmap(resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/icons/input_rcnew.png")) + else: + if enabled: + devicepng = LoadPixmap(resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/icons/input_rcold-configured.png")) + else: + devicepng = LoadPixmap(resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/icons/input_rcold.png")) + elif type == 'keyboard': + if enabled: + devicepng = LoadPixmap(resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/icons/input_keyboard-configured.png")) + else: + devicepng = LoadPixmap(resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/icons/input_keyboard.png")) + elif type == 'mouse': + if enabled: + devicepng = LoadPixmap(resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/icons/input_mouse-configured.png")) + else: + devicepng = LoadPixmap(resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/icons/input_mouse.png")) + elif isinputdevice: + devicepng = LoadPixmap(resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/icons/input_rcnew.png")) + return ((device, description, devicepng, divpng)) + + def updateList(self): + self.list = [] + + if iRcTypeControl.multipleRcSupported(): + self.list.append(self.buildInterfaceList('rctype', _('Configure remote control type'), None, False)) + + for x in self.devices: + dev_type = iInputDevices.getDeviceAttribute(x[1], 'type') + self.list.append(self.buildInterfaceList(x[1],_(x[0]), dev_type)) + + self["list"].setList(self.list) + self["list"].setIndex(self.currentIndex) + + def okbuttonClick(self): + selection = self["list"].getCurrent() + self.currentIndex = self["list"].getIndex() + if selection is not None: + if selection[0] == 'rctype': + self.session.open(RemoteControlType) + else: + self.session.openWithCallback(self.DeviceSetupClosed, InputDeviceSetup, selection[0]) + + def DeviceSetupClosed(self, *ret): + self.updateList() + + +class InputDeviceSetup(Screen, ConfigListScreen): + + skin = """ + <screen name="InputDeviceSetup" position="center,center" size="560,440" title="Input device setup"> + <ePixmap pixmap="skin_default/buttons/red.png" position="0,0" size="140,40" alphatest="on" /> + <ePixmap pixmap="skin_default/buttons/green.png" position="140,0" size="140,40" alphatest="on" /> + <ePixmap pixmap="skin_default/buttons/yellow.png" position="280,0" size="140,40" alphatest="on" /> + <ePixmap pixmap="skin_default/buttons/blue.png" position="420,0" size="140,40" alphatest="on" /> + <widget source="key_red" render="Label" position="0,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#9f1313" transparent="1" /> + <widget source="key_green" render="Label" position="140,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#1f771f" transparent="1" /> + <widget source="key_yellow" render="Label" position="280,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#a08500" transparent="1" /> + <widget source="key_blue" render="Label" position="420,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#18188b" transparent="1" /> + <widget name="config" position="5,50" size="550,350" scrollbarMode="showOnDemand" /> + <ePixmap pixmap="skin_default/div-h.png" position="0,400" zPosition="1" size="560,2" /> + <widget source="introduction" render="Label" position="5,410" size="550,30" zPosition="10" font="Regular;21" halign="center" valign="center" backgroundColor="#25062748" transparent="1" /> + </screen>""" + + def __init__(self, session, device): + Screen.__init__(self, session) + self.inputDevice = device + iInputDevices.currentDevice = self.inputDevice + self.onChangedEntry = [ ] + self.setup_title = _("Input device setup") + self.isStepSlider = None + self.enableEntry = None + self.repeatEntry = None + self.delayEntry = None + self.nameEntry = None + self.enableConfigEntry = None + + self.list = [ ] + ConfigListScreen.__init__(self, self.list, session = session, on_change = self.changedEntry) + + self["actions"] = ActionMap(["SetupActions", "MenuActions"], + { + "cancel": self.keyCancel, + "save": self.apply, + "menu": self.closeRecursive, + }, -2) + + self["key_red"] = StaticText(_("Cancel")) + self["key_green"] = StaticText(_("OK")) + self["key_yellow"] = StaticText() + self["key_blue"] = StaticText() + self["introduction"] = StaticText() + + self.createSetup() + self.onLayoutFinish.append(self.layoutFinished) + self.onClose.append(self.cleanup) + + def layoutFinished(self): + self.setTitle(self.setup_title) + listWidth = self["config"].l.getItemSize().width() + # use 20% of list width for sliders + self["config"].l.setSeperation(int(listWidth*.8)) + + def cleanup(self): + iInputDevices.currentDevice = "" + + def createSetup(self): + self.list = [ ] + label = _("Change repeat and delay settings?") + cmd = "self.enableEntry = getConfigListEntry(label, config.inputDevices." + self.inputDevice + ".enabled)" + exec (cmd) + label = _("Interval between keys when repeating:") + cmd = "self.repeatEntry = getConfigListEntry(label, config.inputDevices." + self.inputDevice + ".repeat)" + exec (cmd) + label = _("Delay before key repeat starts:") + cmd = "self.delayEntry = getConfigListEntry(label, config.inputDevices." + self.inputDevice + ".delay)" + exec (cmd) + label = _("Devicename:") + cmd = "self.nameEntry = getConfigListEntry(label, config.inputDevices." + self.inputDevice + ".name)" + exec (cmd) + if self.enableEntry: + if isinstance(self.enableEntry[1], ConfigYesNo): + self.enableConfigEntry = self.enableEntry[1] + + self.list.append(self.enableEntry) + if self.enableConfigEntry: + if self.enableConfigEntry.value is True: + self.list.append(self.repeatEntry) + self.list.append(self.delayEntry) + else: + self.repeatEntry[1].setValue(self.repeatEntry[1].default) + self["config"].invalidate(self.repeatEntry) + self.delayEntry[1].setValue(self.delayEntry[1].default) + self["config"].invalidate(self.delayEntry) + self.nameEntry[1].setValue(self.nameEntry[1].default) + self["config"].invalidate(self.nameEntry) + + self["config"].list = self.list + self["config"].l.setList(self.list) + if not self.selectionChanged in self["config"].onSelectionChanged: + self["config"].onSelectionChanged.append(self.selectionChanged) + self.selectionChanged() + + def selectionChanged(self): + if self["config"].getCurrent() == self.enableEntry: + self["introduction"].setText(_("Current device: ") + str(iInputDevices.getDeviceAttribute(self.inputDevice, 'name')) ) + else: + self["introduction"].setText(_("Current value: ") + self.getCurrentValue() + _(" ms")) + + def newConfig(self): + current = self["config"].getCurrent() + if current: + if current == self.enableEntry: + self.createSetup() + + def keyLeft(self): + ConfigListScreen.keyLeft(self) + self.newConfig() + + def keyRight(self): + ConfigListScreen.keyRight(self) + self.newConfig() + + def confirm(self, confirmed): + if not confirmed: + print "not confirmed" + return + else: + self.nameEntry[1].setValue(iInputDevices.getDeviceAttribute(self.inputDevice, 'name')) + cmd = "config.inputDevices." + self.inputDevice + ".name.save()" + exec (cmd) + self.keySave() + + def apply(self): + self.session.openWithCallback(self.confirm, MessageBox, _("Use these input device settings?"), MessageBox.TYPE_YESNO, timeout=20, default=True) + + def cancelConfirm(self, result): + if not result: + return + for x in self["config"].list: + x[1].cancel() + self.close() + + def keyCancel(self): + if self["config"].isChanged(): + self.session.openWithCallback(self.cancelConfirm, MessageBox, _("Really close without saving settings?"), MessageBox.TYPE_YESNO, timeout=20, default=True) + else: + self.close() + # for summary: + def changedEntry(self): + for x in self.onChangedEntry: + x() + self.selectionChanged() + + def getCurrentEntry(self): + return self["config"].getCurrent()[0] + + def getCurrentValue(self): + return str(self["config"].getCurrent()[1].value) + + def createSummary(self): + from Screens.Setup import SetupSummary + return SetupSummary + + +class RemoteControlType(Screen, ConfigListScreen): + rcList = [ + ("0", _("Default")), + ("4", _("DMM normal")), ("6", _("DMM advanced")), + ("11", "et9x00/6500"), ("7", "et5000/6000"), ("13", "et4000"), ("9", "et8000/et10000"), + ("14", "xp1000"), + ("8", "VU+"), + ] + + defaultRcList = [ + ("et4000", 13), + ("et5000", 7), + ("et6000", 7), + ("et6500", 11), + ("et8000", 9), + ("et9000", 11), + ("et9200", 11), + ("et9500", 11), + ("et10000", 9), + ("xp1000", 14), + ] + + def __init__(self, session): + Screen.__init__(self, session) + self.skinName = ["RemoteControlType", "Setup" ] + + self["actions"] = ActionMap(["SetupActions"], + { + "cancel": self.keyCancel, + "save": self.keySave, + }, -1) + + self["key_green"] = StaticText(_("Save")) + self["key_red"] = StaticText(_("Cancel")) + + self.list = [] + ConfigListScreen.__init__(self, self.list, session = self.session) + + rctype = config.plugins.remotecontroltype.rctype.value + self.rctype = ConfigSelection(choices = self.rcList, default = str(rctype)) + self.list.append(getConfigListEntry(_("Remote control type"), self.rctype)) + self["config"].list = self.list + + self.defaultRcType = None + self.getDefaultRcType() + + def getDefaultRcType(self): + data = iRcTypeControl.getBoxType() + for x in self.defaultRcList: + if x[0] in data: + self.defaultRcType = x[1] + break + + def setDefaultRcType(self): + iRcTypeControl.writeRcType(self.defaultRcType) + + def keySave(self): + if config.plugins.remotecontroltype.rctype.value == int(self.rctype.value): + self.close() + else: + self.setNewSetting() + self.session.openWithCallback(self.keySaveCallback, MessageBox, _("Is this setting ok?"), MessageBox.TYPE_YESNO, timeout=20, default=True, timeout_default=False) + + def keySaveCallback(self, answer): + if answer is False: + self.restoreOldSetting() + else: + config.plugins.remotecontroltype.rctype.value = int(self.rctype.value) + config.plugins.remotecontroltype.save() + self.close() + + def restoreOldSetting(self): + if config.plugins.remotecontroltype.rctype.value == 0: + self.setDefaultRcType() + else: + iRcTypeControl.writeRcType(config.plugins.remotecontroltype.rctype.value) + + def setNewSetting(self): + if int(self.rctype.value) == 0: + self.setDefaultRcType() + else: + iRcTypeControl.writeRcType(int(self.rctype.value)) + + def keyCancel(self): + self.restoreOldSetting() + self.close() diff --git a/lib/python/Screens/InstallWizard.py b/lib/python/Screens/InstallWizard.py new file mode 100644 index 0000000..a922624 --- /dev/null +++ b/lib/python/Screens/InstallWizard.py @@ -0,0 +1,216 @@ +from Screens.Screen import Screen +from Components.ConfigList import ConfigListScreen, ConfigList +from Components.ActionMap import ActionMap +from Components.Sources.StaticText import StaticText +from Components.config import config, ConfigSubsection, ConfigBoolean, getConfigListEntry, ConfigSelection, ConfigYesNo, ConfigIP +from Components.Network import iNetwork +from Components.Ipkg import IpkgComponent +from enigma import eDVBDB + +config.misc.installwizard = ConfigSubsection() +config.misc.installwizard.hasnetwork = ConfigBoolean(default = False) +config.misc.installwizard.ipkgloaded = ConfigBoolean(default = False) +config.misc.installwizard.channellistdownloaded = ConfigBoolean(default = False) + + +class InstallWizard(Screen, ConfigListScreen): + + STATE_UPDATE = 0 + STATE_CHOISE_CHANNELLIST = 1 + STATE_CHOISE_SOFTCAM = 2 + STATE_CHOISE_PICONS = 3 + STATE_CHOISE_TDT = 4 + STATE_CHOISE_EPG = 5 + STATE_CHOISE_CACHE = 6 + + def __init__(self, session, args = None): + Screen.__init__(self, session) + + self.index = args + self.list = [] + ConfigListScreen.__init__(self, self.list) + + if self.index == self.STATE_UPDATE: + config.misc.installwizard.hasnetwork.value = False + config.misc.installwizard.ipkgloaded.value = False + modes = {0: " "} + self.enabled = ConfigSelection(choices = modes, default = 0) + self.adapters = [(iNetwork.getFriendlyAdapterName(x),x) for x in iNetwork.getAdapterList()] + is_found = False + for x in self.adapters: + if x[1] == 'eth0': + if iNetwork.getAdapterAttribute(x[1], 'up'): + self.ipConfigEntry = ConfigIP(default = iNetwork.getAdapterAttribute(x[1], "ip")) + iNetwork.checkNetworkState(self.checkNetworkCB) + if_found = True + else: + iNetwork.restartNetwork(self.checkNetworkLinkCB) + break + if is_found is False: + self.createMenu() + elif self.index == self.STATE_CHOISE_CHANNELLIST: + self.enabled = ConfigYesNo(default = True) + modes = {"19e": "Astra 1", "23e": "Astra 3", "19e-23e": "Astra 1 Astra 3", "19e-23e-28e": "Astra 1 Astra 2 Astra 3", "13e-19e-23e-28e": "Astra 1 Astra 2 Astra 3 Hotbird"} + self.channellist_type = ConfigSelection(choices = modes, default = "19e") + self.createMenu() + + elif self.index == self.STATE_CHOISE_PICONS: + self.enabled = ConfigYesNo(default = True) + modes = {"19e": "Astra 19e", "23e": "Astra 3", "19e-23e": "Astra 1 Astra 3", "19e-23e-28e": "Astra 1 Astra 2 Astra 3", "13e-19e-23e-28e": "Astra 1 Astra 2 Astra 3 Hotbird"} + self.picons_type = ConfigSelection(choices = modes, default = "19e") + self.createMenu() + + elif self.index == self.STATE_CHOISE_EPG: + self.enabled = ConfigYesNo(default = True) + modes = {"xmltvimport": "Xmltvimport", "crossepg": "CrossEPG"} + self.epg_type = ConfigSelection(choices = modes, default = "xmltvimport") + self.createMenu() + + elif self.index == self.STATE_CHOISE_TDT: + self.enabled = ConfigYesNo(default = True) + modes = {"siano": "Siano", "Volar Black": "Hauppauge"} + self.tdt_type = ConfigSelection(choices = modes, default = "siano") + self.createMenu() + + elif self.index == self.STATE_CHOISE_SOFTCAM: + self.enabled = ConfigYesNo(default = True) + modes = {"cccam": "CCcam", "oscam": "Oscam"} + self.softcam_type = ConfigSelection(choices = modes, default = "cccam") + self.createMenu() + + elif self.index == self.STATE_CHOISE_CACHE: + self.enabled = ConfigYesNo(default = True) + modes = {"multics": "MultiCS"} + self.cache_type = ConfigSelection(choices = modes, default = "multics") + self.createMenu() + + def checkNetworkCB(self, data): + if data < 3: + config.misc.installwizard.hasnetwork.value = True + self.createMenu() + + def checkNetworkLinkCB(self, retval): + if retval: + iNetwork.checkNetworkState(self.checkNetworkCB) + else: + self.createMenu() + + def createMenu(self): + try: + test = self.index + except: + return + self.list = [] + if self.index == self.STATE_UPDATE: + if config.misc.installwizard.hasnetwork.value: + self.list.append(getConfigListEntry(_("Your internet connection is working (ip: %s)") % (self.ipConfigEntry.getText()), self.enabled)) + else: + self.list.append(getConfigListEntry(_("Your receiver does not have an internet connection"), self.enabled)) + elif self.index == self.STATE_CHOISE_CHANNELLIST: + self.list.append(getConfigListEntry(_("Install channel list"), self.enabled)) + if self.enabled.value: + self.list.append(getConfigListEntry(_("Channel list type"), self.channellist_type)) + + elif self.index == self.STATE_CHOISE_PICONS: + self.list.append(getConfigListEntry(_("Install picons"), self.enabled)) + if self.enabled.value: + self.list.append(getConfigListEntry(_("Picons list type"), self.picons_type)) +# self["config"].list = self.list +# self["config"].l.setList(self.list) + + elif self.index == self.STATE_CHOISE_TDT: + self.list.append(getConfigListEntry(_("Install usb tdt "), self.enabled)) + if self.enabled.value: + self.list.append(getConfigListEntry(_("Tdt list type"), self.tdt_type)) + + elif self.index == self.STATE_CHOISE_EPG: + self.list.append(getConfigListEntry(_("Install epg manager"), self.enabled)) + if self.enabled.value: + self.list.append(getConfigListEntry(_("Epg manager type"), self.epg_type)) + + elif self.index == self.STATE_CHOISE_SOFTCAM: + self.list.append(getConfigListEntry(_("Install softcam"), self.enabled)) + if self.enabled.value: + self.list.append(getConfigListEntry(_("Softcam type"), self.softcam_type)) + + elif self.index == self.STATE_CHOISE_CACHE: + self.list.append(getConfigListEntry(_("Install cache server"), self.enabled)) + if self.enabled.value: + self.list.append(getConfigListEntry(_("Cache Server type"), self.cache_type)) + + self["config"].list = self.list + self["config"].l.setList(self.list) + + def keyLeft(self): + if self.index == 0: + return + ConfigListScreen.keyLeft(self) + self.createMenu() + + def keyRight(self): + if self.index == 0: + return + ConfigListScreen.keyRight(self) + self.createMenu() + + def run(self): + if self.index == self.STATE_UPDATE: + if config.misc.installwizard.hasnetwork.value: + self.session.open(InstallWizardIpkgUpdater, self.index, _('Please wait (updating packages)'), IpkgComponent.CMD_UPDATE) + elif self.index == self.STATE_CHOISE_CHANNELLIST and self.enabled.value: + self.session.open(InstallWizardIpkgUpdater, self.index, _('Please wait (downloading channel list)'), IpkgComponent.CMD_REMOVE, {'package': 'enigma2-plugin-settings-sfteam-' + self.channellist_type.value}) + + elif self.index == self.STATE_CHOISE_PICONS and self.enabled.value: + self.session.open(InstallWizardIpkgUpdater, self.index, _('Please wait (downloading picons)'), IpkgComponent.CMD_INSTALL, {'package': 'enigma2-plugin-picons-sfteam-' + self.picons_type.value}) + + elif self.index == self.STATE_CHOISE_TDT and self.enabled.value: + self.session.open(InstallWizardIpkgUpdater, self.index, _('Please wait (downloading driver)'), IpkgComponent.CMD_INSTALL, {'package': 'enigma2-plugin-drivers-dvb-usb-' + self.tdt_type.value}) + + elif self.index == self.STATE_CHOISE_EPG and self.enabled.value: + self.session.open(InstallWizardIpkgUpdater, self.index, _('Please wait (downloading epg manager)'), IpkgComponent.CMD_INSTALL, {'package': 'enigma2-plugin-extensions-' + self.epg_type.value}) + + elif self.index == self.STATE_CHOISE_SOFTCAM and self.enabled.value: + self.session.open(InstallWizardIpkgUpdater, self.index, _('Please wait (downloading softcam)'), IpkgComponent.CMD_INSTALL, {'package': 'enigma2-plugin-softcams-sfteam-' + self.softcam_type.value}) + + elif self.index == self.STATE_CHOISE_CACHE and self.enabled.value: + self.session.open(InstallWizardIpkgUpdater, self.index, _('Please wait (downloading cache server)'), IpkgComponent.CMD_INSTALL, {'package': 'enigma2-plugin-cache-sfteam-' + self.cache_type.value}) + return + +class InstallWizardIpkgUpdater(Screen): + skin = """ + <screen position="c-300,c-25" size="600,50" title=" "> + <widget source="statusbar" render="Label" position="10,5" zPosition="10" size="e-10,30" halign="center" valign="center" font="Regular;22" transparent="1" shadowColor="black" shadowOffset="-1,-1" /> + </screen>""" + + def __init__(self, session, index, info, cmd, pkg = None): + self.skin = InstallWizardIpkgUpdater.skin + Screen.__init__(self, session) + + self["statusbar"] = StaticText(info) + + self.pkg = pkg + self.index = index + self.state = 0 + + self.ipkg = IpkgComponent() + self.ipkg.addCallback(self.ipkgCallback) + + if self.index == InstallWizard.STATE_CHOISE_CHANNELLIST: + self.ipkg.startCmd(cmd, {'package': 'enigma2-plugin-settings-*'}) + else: + self.ipkg.startCmd(cmd, pkg) + + def ipkgCallback(self, event, param): + if event == IpkgComponent.EVENT_DONE: + if self.index == InstallWizard.STATE_UPDATE: + config.misc.installwizard.ipkgloaded.value = True + elif self.index == InstallWizard.STATE_CHOISE_CHANNELLIST: + if self.state == 0: + self.ipkg.startCmd(IpkgComponent.CMD_INSTALL, self.pkg) + self.state = 1 + return + else: + config.misc.installwizard.channellistdownloaded.value = True + eDVBDB.getInstance().reloadBouquets() + eDVBDB.getInstance().reloadServicelist() + self.close() diff --git a/lib/python/Screens/Ipkg.py b/lib/python/Screens/Ipkg.py new file mode 100644 index 0000000..2900d53 --- /dev/null +++ b/lib/python/Screens/Ipkg.py @@ -0,0 +1,123 @@ +from Components.ActionMap import ActionMap +from Components.Ipkg import IpkgComponent +from Components.Label import Label +from Components.Slider import Slider +from Screens.Screen import Screen +from Screens.MessageBox import MessageBox +from enigma import eTimer + +class Ipkg(Screen): + def __init__(self, session, cmdList = []): + Screen.__init__(self, session) + + self.cmdList = cmdList + + self.sliderPackages = {} + + self.slider = Slider(0, len(cmdList)) + self["slider"] = self.slider + self.activityslider = Slider(0, 100) + self["activityslider"] = self.activityslider + self.status = Label(_("Preparing... Please wait")) + self["status"] = self.status + self.package = Label() + self["package"] = self.package + + self.packages = 0 + self.error = 0 + self.processed_packages = [] + + self.activity = 0 + self.activityTimer = eTimer() + self.activityTimer.callback.append(self.doActivityTimer) + #self.activityTimer.start(100, False) + + self.ipkg = IpkgComponent() + self.ipkg.addCallback(self.ipkgCallback) + + self.runningCmd = None + self.runNextCmd() + + self["actions"] = ActionMap(["WizardActions"], + { + "ok": self.exit, + "back": self.exit + }, -1) + + def runNextCmd(self): + if self.runningCmd is None: + self.runningCmd = 0 + else: + self.runningCmd += 1 + print len(self.cmdList), self.runningCmd + if len(self.cmdList) - 1 < self.runningCmd: + self.activityslider.setValue(0) + self.slider.setValue(len(self.cmdList)) + + self.package.setText("") + self.status.setText(ngettext("Done - Installed, upgraded or removed %d package (%s)", "Done - Installed, upgraded or removed %d packages (%s)", self.packages) % (self.packages, ngettext("with %d error", "with %d errors", self.error) % self.error)) + return False + else: + cmd = self.cmdList[self.runningCmd] + self.slider.setValue(self.runningCmd) + self.ipkg.startCmd(cmd[0], args = cmd[1]) + self.startActivityTimer() + + def doActivityTimer(self): + if not self.ipkg.isRunning(): + self.stopActivityTimer() + else: + self.activity += 1 + if self.activity == 100: + self.activity = 0 + self.activityslider.setValue(self.activity) + + def startActivityTimer(self): + self.activityTimer.start(100, False) + + def stopActivityTimer(self): + self.activityTimer.stop() + + def ipkgCallback(self, event, param): + if event == IpkgComponent.EVENT_DOWNLOAD: + self.status.setText(_("Downloading")) + elif event == IpkgComponent.EVENT_UPGRADE: + if self.sliderPackages.has_key(param): + self.slider.setValue(self.sliderPackages[param]) + self.package.setText(param) + self.status.setText(_("Upgrading")) + if not param in self.processed_packages: + self.processed_packages.append(param) + self.packages += 1 + elif event == IpkgComponent.EVENT_INSTALL: + self.package.setText(param) + self.status.setText(_("Installing")) + if not param in self.processed_packages: + self.processed_packages.append(param) + self.packages += 1 + elif event == IpkgComponent.EVENT_REMOVE: + self.package.setText(param) + self.status.setText(_("Removing")) + if not param in self.processed_packages: + self.processed_packages.append(param) + self.packages += 1 + elif event == IpkgComponent.EVENT_CONFIGURING: + self.package.setText(param) + self.status.setText(_("Configuring")) + elif event == IpkgComponent.EVENT_ERROR: + self.error += 1 + elif event == IpkgComponent.EVENT_DONE: + self.runNextCmd() + elif event == IpkgComponent.EVENT_MODIFIED: + self.session.openWithCallback( + self.modificationCallback, + MessageBox, + _("A configuration file (%s) was modified since Installation.\nDo you want to keep your version?") % (param) + ) + + def modificationCallback(self, res): + self.ipkg.write(res and "N" or "Y") + + def exit(self): + if not self.ipkg.isRunning(): + self.close() diff --git a/lib/python/Screens/LanguageSelection.py b/lib/python/Screens/LanguageSelection.py new file mode 100644 index 0000000..019bc44 --- /dev/null +++ b/lib/python/Screens/LanguageSelection.py @@ -0,0 +1,99 @@ +import gettext +from Screen import Screen +from Components.ActionMap import ActionMap +from Components.Language import language +from Components.config import config +from Components.Sources.List import List +from Components.Label import Label +from Components.Pixmap import Pixmap +from Screens.InfoBar import InfoBar +from Screens.Rc import Rc +from Tools.Directories import resolveFilename, SCOPE_CURRENT_SKIN, SCOPE_LANGUAGE +from Tools.LoadPixmap import LoadPixmap +import enigma + +def LanguageEntryComponent(file, name, index): + png = LoadPixmap(resolveFilename(SCOPE_CURRENT_SKIN, "countries/" + index + ".png")) + if png == None: + png = LoadPixmap(resolveFilename(SCOPE_CURRENT_SKIN, "countries/" + file + ".png")) + if png == None: + png = LoadPixmap(resolveFilename(SCOPE_CURRENT_SKIN, "countries/missing.png")) + res = (index, name, png) + return res + +class LanguageSelection(Screen): + def __init__(self, session): + Screen.__init__(self, session) + + self.oldActiveLanguage = language.getActiveLanguage() + + self.list = [] + self["languages"] = List(self.list) + + self.updateList() + self.onLayoutFinish.append(self.selectActiveLanguage) + + self["actions"] = ActionMap(["OkCancelActions"], + { + "ok": self.save, + "cancel": self.cancel, + }, -1) + + def selectActiveLanguage(self): + self.setTitle(_("Language selection")) + pos = 0 + for pos, x in enumerate(self.list): + if x[0] == self.oldActiveLanguage: + self["languages"].index = pos + break + + def save(self): + self.commit(self.run()) + if InfoBar.instance and self.oldActiveLanguage != config.osd.language.value: + self.close(True) + else: + self.close() + + def cancel(self): + language.activateLanguage(self.oldActiveLanguage) + self.close() + + def run(self): + print "updating language..." + lang = self["languages"].getCurrent()[0] + if lang != config.osd.language.value: + config.osd.language.value = lang + config.osd.language.save() + return lang + + def commit(self, lang): + print "commit language" + language.activateLanguage(lang) + config.misc.languageselected.value = 0 + config.misc.languageselected.save() + + def updateList(self): + languageList = language.getLanguageList() + if not languageList: # no language available => display only english + list = [ LanguageEntryComponent("es", "Spanish", "es_ES") ] + else: + list = [ LanguageEntryComponent(file = x[1][2].lower(), name = x[1][0], index = x[0]) for x in languageList] + self.list = list + self["languages"].list = list + +class LanguageWizard(LanguageSelection, Rc): + def __init__(self, session): + LanguageSelection.__init__(self, session) + Rc.__init__(self) + self.onLayoutFinish.append(self.selectKeys) + self["wizard"] = Pixmap() + self["text"] = Label() + self.setText() + + def selectKeys(self): + self.clearSelectedKeys() + self.selectKey("UP") + self.selectKey("DOWN") + + def setText(self): + self["text"].setText(_("Please use the UP and DOWN keys to select your language. Afterwards press the OK button.")) diff --git a/lib/python/Screens/LocationBox.py b/lib/python/Screens/LocationBox.py new file mode 100644 index 0000000..051a4f5 --- /dev/null +++ b/lib/python/Screens/LocationBox.py @@ -0,0 +1,539 @@ +# +# Generic Screen to select a path/filename combination +# + +# GUI (Screens) +from Screens.Screen import Screen +from Screens.MessageBox import MessageBox +from Screens.InputBox import InputBox +from Screens.HelpMenu import HelpableScreen +from Screens.ChoiceBox import ChoiceBox + +# Generic +from Tools.BoundFunction import boundFunction +from Tools.Directories import * +from Components.config import config +import os + +# Quickselect +from Tools.NumericalTextInput import NumericalTextInput + +# GUI (Components) +from Components.ActionMap import NumberActionMap, HelpableActionMap +from Components.Label import Label +from Components.Pixmap import Pixmap +from Components.Button import Button +from Components.FileList import FileList +from Components.MenuList import MenuList + +# Timer +from enigma import eTimer + +defaultInhibitDirs = ["/bin", "/boot", "/dev", "/etc", "/lib", "/proc", "/sbin", "/sys", "/usr", "/var"] + +class LocationBox(Screen, NumericalTextInput, HelpableScreen): + """Simple Class similar to MessageBox / ChoiceBox but used to choose a folder/pathname combination""" + + skin = """<screen name="LocationBox" position="100,75" size="540,460" > + <widget name="text" position="0,2" size="540,22" font="Regular;22" /> + <widget name="target" position="0,23" size="540,22" valign="center" font="Regular;22" /> + <widget name="filelist" position="0,55" zPosition="1" size="540,210" scrollbarMode="showOnDemand" selectionDisabled="1" /> + <widget name="textbook" position="0,272" size="540,22" font="Regular;22" /> + <widget name="booklist" position="5,302" zPosition="2" size="535,100" scrollbarMode="showOnDemand" /> + <widget name="red" position="0,415" zPosition="1" size="135,40" pixmap="skin_default/buttons/red.png" transparent="1" alphatest="on" /> + <widget name="key_red" position="0,415" zPosition="2" size="135,40" halign="center" valign="center" font="Regular;22" transparent="1" shadowColor="black" shadowOffset="-1,-1" /> + <widget name="green" position="135,415" zPosition="1" size="135,40" pixmap="skin_default/buttons/green.png" transparent="1" alphatest="on" /> + <widget name="key_green" position="135,415" zPosition="2" size="135,40" halign="center" valign="center" font="Regular;22" transparent="1" shadowColor="black" shadowOffset="-1,-1" /> + <widget name="yellow" position="270,415" zPosition="1" size="135,40" pixmap="skin_default/buttons/yellow.png" transparent="1" alphatest="on" /> + <widget name="key_yellow" position="270,415" zPosition="2" size="135,40" halign="center" valign="center" font="Regular;22" transparent="1" shadowColor="black" shadowOffset="-1,-1" /> + <widget name="blue" position="405,415" zPosition="1" size="135,40" pixmap="skin_default/buttons/blue.png" transparent="1" alphatest="on" /> + <widget name="key_blue" position="405,415" zPosition="2" size="135,40" halign="center" valign="center" font="Regular;22" transparent="1" shadowColor="black" shadowOffset="-1,-1" /> + </screen>""" + + def __init__(self, session, text = "", filename = "", currDir = None, bookmarks = None, userMode = False, windowTitle = _("Select location"), minFree = None, autoAdd = False, editDir = False, inhibitDirs = [], inhibitMounts = []): + # Init parents + Screen.__init__(self, session) + NumericalTextInput.__init__(self, handleTimeout = False) + HelpableScreen.__init__(self) + + # Set useable chars + self.setUseableChars(u'1234567890abcdefghijklmnopqrstuvwxyz') + + # Quickselect Timer + self.qs_timer = eTimer() + self.qs_timer.callback.append(self.timeout) + self.qs_timer_type = 0 + + # Initialize Quickselect + self.curr_pos = -1 + self.quickselect = "" + + # Set Text + self["text"] = Label(text) + self["textbook"] = Label(_("Bookmarks")) + + # Save parameters locally + self.text = text + self.filename = filename + self.minFree = minFree + self.realBookmarks = bookmarks + self.bookmarks = bookmarks and bookmarks.value[:] or [] + self.userMode = userMode + self.autoAdd = autoAdd + self.editDir = editDir + self.inhibitDirs = inhibitDirs + + # Initialize FileList + self["filelist"] = FileList(currDir, showDirectories = True, showFiles = False, inhibitMounts = inhibitMounts, inhibitDirs = inhibitDirs) + + # Initialize BookList + self["booklist"] = MenuList(self.bookmarks) + + # Buttons + self["key_green"] = Button(_("OK")) + self["key_yellow"] = Button(_("Rename")) + self["key_blue"] = Button(_("Remove bookmark")) + self["key_red"] = Button(_("Cancel")) + + # Background for Buttons + self["green"] = Pixmap() + self["yellow"] = Pixmap() + self["blue"] = Pixmap() + self["red"] = Pixmap() + + # Initialize Target + self["target"] = Label() + + if self.userMode: + self.usermodeOn() + + # Custom Action Handler + class LocationBoxActionMap(HelpableActionMap): + def __init__(self, parent, context, actions = { }, prio=0): + HelpableActionMap.__init__(self, parent, context, actions, prio) + self.box = parent + + def action(self, contexts, action): + # Reset Quickselect + self.box.timeout(force = True) + + return HelpableActionMap.action(self, contexts, action) + + # Actions that will reset quickselect + self["WizardActions"] = LocationBoxActionMap(self, "WizardActions", + { + "left": self.left, + "right": self.right, + "up": self.up, + "down": self.down, + "ok": (self.ok, _("select")), + "back": (self.cancel, _("Cancel")), + }, -2) + + self["ColorActions"] = LocationBoxActionMap(self, "ColorActions", + { + "red": self.cancel, + "green": self.select, + "yellow": self.changeName, + "blue": self.addRemoveBookmark, + }, -2) + + self["EPGSelectActions"] = LocationBoxActionMap(self, "EPGSelectActions", + { + "prevBouquet": (self.switchToBookList, _("switch to bookmarks")), + "nextBouquet": (self.switchToFileList, _("switch to filelist")), + }, -2) + + self["MenuActions"] = LocationBoxActionMap(self, "MenuActions", + { + "menu": (self.showMenu, _("menu")), + }, -2) + + # Actions used by quickselect + self["NumberActions"] = NumberActionMap(["NumberActions"], + { + "1": self.keyNumberGlobal, + "2": self.keyNumberGlobal, + "3": self.keyNumberGlobal, + "4": self.keyNumberGlobal, + "5": self.keyNumberGlobal, + "6": self.keyNumberGlobal, + "7": self.keyNumberGlobal, + "8": self.keyNumberGlobal, + "9": self.keyNumberGlobal, + "0": self.keyNumberGlobal + }) + + # Run some functions when shown + self.onShown.extend(( + boundFunction(self.setTitle, windowTitle), + self.updateTarget, + self.showHideRename, + )) + + self.onLayoutFinish.append(self.switchToFileListOnStart) + + # Make sure we remove our callback + self.onClose.append(self.disableTimer) + + def switchToFileListOnStart(self): + if self.realBookmarks and self.realBookmarks.value: + self.currList = "booklist" + currDir = self["filelist"].current_directory + if currDir in self.bookmarks: + self["booklist"].moveToIndex(self.bookmarks.index(currDir)) + else: + self.switchToFileList() + + def disableTimer(self): + self.qs_timer.callback.remove(self.timeout) + + def showHideRename(self): + # Don't allow renaming when filename is empty + if self.filename == "": + self["key_yellow"].hide() + + def switchToFileList(self): + if not self.userMode: + self.currList = "filelist" + self["filelist"].selectionEnabled(1) + self["booklist"].selectionEnabled(0) + self["key_blue"].text = _("Add bookmark") + self.updateTarget() + + def switchToBookList(self): + self.currList = "booklist" + self["filelist"].selectionEnabled(0) + self["booklist"].selectionEnabled(1) + self["key_blue"].text = _("Remove bookmark") + self.updateTarget() + + def addRemoveBookmark(self): + if self.currList == "filelist": + # add bookmark + folder = self["filelist"].getSelection()[0] + if folder is not None and not folder in self.bookmarks: + self.bookmarks.append(folder) + self.bookmarks.sort() + self["booklist"].setList(self.bookmarks) + else: + # remove bookmark + if not self.userMode: + name = self["booklist"].getCurrent() + self.session.openWithCallback( + boundFunction(self.removeBookmark, name), + MessageBox, + _("Do you really want to remove your bookmark of %s?") % (name), + ) + + def removeBookmark(self, name, ret): + if not ret: + return + if name in self.bookmarks: + self.bookmarks.remove(name) + self["booklist"].setList(self.bookmarks) + + def createDir(self): + if self["filelist"].current_directory != None: + self.session.openWithCallback( + self.createDirCallback, + InputBox, + title = _("Please enter name of the new directory"), + text = "" + ) + + def createDirCallback(self, res): + if res: + path = os.path.join(self["filelist"].current_directory, res) + if not pathExists(path): + if not createDir(path): + self.session.open( + MessageBox, + _("Creating directory %s failed.") % (path), + type = MessageBox.TYPE_ERROR, + timeout = 5 + ) + self["filelist"].refresh() + else: + self.session.open( + MessageBox, + _("The path %s already exists.") % (path), + type = MessageBox.TYPE_ERROR, + timeout = 5 + ) + + def removeDir(self): + sel = self["filelist"].getSelection() + if sel and pathExists(sel[0]): + self.session.openWithCallback( + boundFunction(self.removeDirCallback, sel[0]), + MessageBox, + _("Do you really want to remove directory %s from the disk?") % (sel[0]), + type = MessageBox.TYPE_YESNO + ) + else: + self.session.open( + MessageBox, + _("Invalid directory selected: %s") % (sel[0]), + type = MessageBox.TYPE_ERROR, + timeout = 5 + ) + + def removeDirCallback(self, name, res): + if res: + if not removeDir(name): + self.session.open( + MessageBox, + _("Removing directory %s failed. (Maybe not empty.)") % (name), + type = MessageBox.TYPE_ERROR, + timeout = 5 + ) + else: + self["filelist"].refresh() + self.removeBookmark(name, True) + val = self.realBookmarks and self.realBookmarks.value + if val and name in val: + val.remove(name) + self.realBookmarks.value = val + self.realBookmarks.save() + + def up(self): + self[self.currList].up() + self.updateTarget() + + def down(self): + self[self.currList].down() + self.updateTarget() + + def left(self): + self[self.currList].pageUp() + self.updateTarget() + + def right(self): + self[self.currList].pageDown() + self.updateTarget() + + def ok(self): + if self.currList == "filelist": + if self["filelist"].canDescent(): + self["filelist"].descent() + self.updateTarget() + else: + self.select() + + def cancel(self): + self.close(None) + + def getPreferredFolder(self): + if self.currList == "filelist": + # XXX: We might want to change this for parent folder... + return self["filelist"].getSelection()[0] + else: + return self["booklist"].getCurrent() + + def selectConfirmed(self, ret): + if ret: + ret = ''.join((self.getPreferredFolder(), self.filename)) + if self.realBookmarks: + if self.autoAdd and not ret in self.bookmarks: + self.bookmarks.append(self.getPreferredFolder()) + self.bookmarks.sort() + + if self.bookmarks != self.realBookmarks.value: + self.realBookmarks.value = self.bookmarks + self.realBookmarks.save() + self.close(ret) + + def select(self): + currentFolder = self.getPreferredFolder() + # Do nothing unless current Directory is valid + if currentFolder is not None: + # Check if we need to have a minimum of free Space available + if self.minFree is not None: + # Try to read fs stats + try: + s = os.statvfs(currentFolder) + if (s.f_bavail * s.f_bsize) / 1000000 > self.minFree: + # Automatically confirm if we have enough free disk Space available + return self.selectConfirmed(True) + except OSError: + pass + + # Ask User if he really wants to select this folder + self.session.openWithCallback( + self.selectConfirmed, + MessageBox, + _("There might not be enough Space on the selected Partition.\nDo you really want to continue?"), + type = MessageBox.TYPE_YESNO + ) + # No minimum free Space means we can safely close + else: + self.selectConfirmed(True) + + def changeName(self): + if self.filename != "": + # TODO: Add Information that changing extension is bad? disallow? + self.session.openWithCallback( + self.nameChanged, + InputBox, + title = _("Please enter a new filename"), + text = self.filename + ) + + def nameChanged(self, res): + if res is not None: + if len(res): + self.filename = res + self.updateTarget() + else: + self.session.open( + MessageBox, + _("An empty filename is illegal."), + type = MessageBox.TYPE_ERROR, + timeout = 5 + ) + + def updateTarget(self): + # Write Combination of Folder & Filename when Folder is valid + currFolder = self.getPreferredFolder() + if currFolder is not None: + self["target"].setText(''.join((currFolder, self.filename))) + # Display a Warning otherwise + else: + self["target"].setText(_("Invalid location")) + + def showMenu(self): + if not self.userMode and self.realBookmarks: + if self.currList == "filelist": + menu = [ + (_("switch to bookmarks"), self.switchToBookList), + (_("add bookmark"), self.addRemoveBookmark) + ] + if self.editDir: + menu.extend(( + (_("create directory"), self.createDir), + (_("remove directory"), self.removeDir) + )) + else: + menu = ( + (_("switch to filelist"), self.switchToFileList), + (_("remove bookmark"), self.addRemoveBookmark) + ) + + self.session.openWithCallback( + self.menuCallback, + ChoiceBox, + title = "", + list = menu + ) + + def menuCallback(self, choice): + if choice: + choice[1]() + + def usermodeOn(self): + self.switchToBookList() + self["filelist"].hide() + self["key_blue"].hide() + + def keyNumberGlobal(self, number): + # Cancel Timeout + self.qs_timer.stop() + + # See if another key was pressed before + if number != self.lastKey: + # Reset lastKey again so NumericalTextInput triggers its keychange + self.nextKey() + + # Try to select what was typed + self.selectByStart() + + # Increment position + self.curr_pos += 1 + + # Get char and append to text + char = self.getKey(number) + self.quickselect = self.quickselect[:self.curr_pos] + unicode(char) + + # Start Timeout + self.qs_timer_type = 0 + self.qs_timer.start(1000, 1) + + def selectByStart(self): + # Don't do anything on initial call + if not self.quickselect: + return + + # Don't select if no dir + if self["filelist"].getCurrentDirectory(): + # TODO: implement proper method in Components.FileList + files = self["filelist"].getFileList() + + # Initialize index + idx = 0 + + # We select by filename which is absolute + lookfor = self["filelist"].getCurrentDirectory() + self.quickselect + + # Select file starting with generated text + for file in files: + if file[0][0] and file[0][0].lower().startswith(lookfor): + self["filelist"].instance.moveSelectionTo(idx) + break + idx += 1 + + def timeout(self, force = False): + # Timeout Key + if not force and self.qs_timer_type == 0: + # Try to select what was typed + self.selectByStart() + + # Reset Key + self.lastKey = -1 + + # Change type + self.qs_timer_type = 1 + + # Start timeout again + self.qs_timer.start(1000, 1) + # Timeout Quickselect + else: + # Eventually stop Timer + self.qs_timer.stop() + + # Invalidate + self.lastKey = -1 + self.curr_pos = -1 + self.quickselect = "" + + def __repr__(self): + return str(type(self)) + "(" + self.text + ")" + +def MovieLocationBox(session, text, dir, minFree = None): + return LocationBox(session, text = text, currDir = dir, bookmarks = config.movielist.videodirs, autoAdd = True, editDir = True, inhibitDirs = defaultInhibitDirs, minFree = minFree) + +class TimeshiftLocationBox(LocationBox): + def __init__(self, session): + LocationBox.__init__( + self, + session, + text = _("Where to save temporary timeshift recordings?"), + currDir = config.usage.timeshift_path.value, + bookmarks = config.usage.allowed_timeshift_paths, + autoAdd = True, + editDir = True, + inhibitDirs = defaultInhibitDirs, + minFree = 1024 # the same requirement is hardcoded in servicedvb.cpp + ) + self.skinName = "LocationBox" + + def cancel(self): + config.usage.timeshift_path.cancel() + LocationBox.cancel(self) + + def selectConfirmed(self, ret): + if ret: + config.usage.timeshift_path.value = self.getPreferredFolder() + config.usage.timeshift_path.save() + LocationBox.selectConfirmed(self, ret) + diff --git a/lib/python/Screens/Makefile.am b/lib/python/Screens/Makefile.am new file mode 100644 index 0000000..ca546be --- /dev/null +++ b/lib/python/Screens/Makefile.am @@ -0,0 +1,19 @@ +installdir = $(pkglibdir)/python/Screens + +install_PYTHON = \ + AudioSelection.py ChannelSelection.py ClockDisplay.py ConfigMenu.py CopyFiles.py InfoBar.py \ + Menu.py MessageBox.py Screen.py ServiceScan.py TimerEdit.py \ + MovieSelection.py Setup.py About.py HarddiskSetup.py FixedMenu.py \ + Satconfig.py ScanSetup.py NetworkSetup.py Ci.py TimerEntry.py Volume.py \ + EpgSelection.py EventView.py Mute.py Standby.py ServiceInfo.py \ + InfoBarGenerics.py HelpMenu.py Wizard.py __init__.py \ + Dish.py LanguageSelection.py StartWizard.py PiPSetup.py \ + PluginBrowser.py MinuteInput.py Scart.py PVRState.py \ + Console.py InputBox.py ChoiceBox.py SimpleSummary.py \ + TimerSelection.py PictureInPicture.py TimeDateInput.py \ + SubtitleDisplay.py SubservicesQuickzap.py ParentalControlSetup.py NumericalTextInputHelpDialog.py \ + SleepTimerEdit.py Ipkg.py RdsDisplay.py Globals.py \ + SessionGlobals.py LocationBox.py WizardLanguage.py TaskView.py Rc.py VirtualKeyBoard.py \ + TextBox.py FactoryReset.py RecordPaths.py UnhandledKey.py ServiceStopScreen.py \ + InputDeviceSetup.py DVD.py SoftwareUpdate.py AutoDiseqc.py InstallWizard.py ScreenSaver.py + diff --git a/lib/python/Screens/Menu.py b/lib/python/Screens/Menu.py new file mode 100644 index 0000000..4fe9abc --- /dev/null +++ b/lib/python/Screens/Menu.py @@ -0,0 +1,249 @@ +from Screen import Screen +from Components.Sources.List import List +from Components.ActionMap import NumberActionMap +from Components.Sources.StaticText import StaticText +from Components.config import configfile +from Components.PluginComponent import plugins +from Components.config import config +from Components.SystemInfo import SystemInfo + +from Tools.BoundFunction import boundFunction +from Tools.Directories import resolveFilename, SCOPE_SKIN + +import xml.etree.cElementTree + +from Screens.Setup import Setup, getSetupTitle + +# read the menu +mdom = xml.etree.cElementTree.parse(resolveFilename(SCOPE_SKIN, 'menu.xml')) + +class MenuUpdater: + def __init__(self): + self.updatedMenuItems = {} + + def addMenuItem(self, id, pos, text, module, screen, weight): + if not self.updatedMenuAvailable(id): + self.updatedMenuItems[id] = [] + self.updatedMenuItems[id].append([text, pos, module, screen, weight]) + + def delMenuItem(self, id, pos, text, module, screen, weight): + self.updatedMenuItems[id].remove([text, pos, module, screen, weight]) + + def updatedMenuAvailable(self, id): + return self.updatedMenuItems.has_key(id) + + def getUpdatedMenu(self, id): + return self.updatedMenuItems[id] + +menuupdater = MenuUpdater() + +class MenuSummary(Screen): + pass + +class Menu(Screen): + ALLOW_SUSPEND = True + + def okbuttonClick(self): + print "okbuttonClick" + selection = self["menu"].getCurrent() + if selection is not None: + selection[1]() + + def execText(self, text): + exec text + + def runScreen(self, arg): + # arg[0] is the module (as string) + # arg[1] is Screen inside this module + # plus possible arguments, as + # string (as we want to reference + # stuff which is just imported) + # FIXME. somehow + if arg[0] != "": + exec "from " + arg[0] + " import *" + + self.openDialog(*eval(arg[1])) + + def nothing(self): #dummy + pass + + def openDialog(self, *dialog): # in every layer needed + self.session.openWithCallback(self.menuClosed, *dialog) + + def openSetup(self, dialog): + self.session.openWithCallback(self.menuClosed, Setup, dialog) + + def addMenu(self, destList, node): + requires = node.get("requires") + if requires: + if requires[0] == '!': + if SystemInfo.get(requires[1:], False): + return + elif not SystemInfo.get(requires, False): + return + MenuTitle = _(node.get("text", "??").encode("UTF-8")) + entryID = node.get("entryID", "undefined") + weight = node.get("weight", 50) + x = node.get("flushConfigOnClose") + if x: + a = boundFunction(self.session.openWithCallback, self.menuClosedWithConfigFlush, Menu, node) + else: + a = boundFunction(self.session.openWithCallback, self.menuClosed, Menu, node) + #TODO add check if !empty(node.childNodes) + destList.append((MenuTitle, a, entryID, weight)) + + def menuClosedWithConfigFlush(self, *res): + configfile.save() + self.menuClosed(*res) + + def menuClosed(self, *res): + if res and res[0]: + self.close(True) + + def addItem(self, destList, node): + requires = node.get("requires") + if requires: + if requires[0] == '!': + if SystemInfo.get(requires[1:], False): + return + elif not SystemInfo.get(requires, False): + return + configCondition = node.get("configcondition") + if configCondition and not eval(configCondition + ".value"): + return + item_text = node.get("text", "").encode("UTF-8") + entryID = node.get("entryID", "undefined") + weight = node.get("weight", 50) + for x in node: + if x.tag == 'screen': + module = x.get("module") + screen = x.get("screen") + + if screen is None: + screen = module + + print module, screen + if module: + module = "Screens." + module + else: + module = "" + + # check for arguments. they will be appended to the + # openDialog call + args = x.text or "" + screen += ", " + args + + destList.append((_(item_text or "??"), boundFunction(self.runScreen, (module, screen)), entryID, weight)) + return + elif x.tag == 'code': + destList.append((_(item_text or "??"), boundFunction(self.execText, x.text), entryID, weight)) + return + elif x.tag == 'setup': + id = x.get("id") + if item_text == "": + item_text = _(getSetupTitle(id)) + else: + item_text = _(item_text) + destList.append((item_text, boundFunction(self.openSetup, id), entryID, weight)) + return + destList.append((item_text, self.nothing, entryID, weight)) + + + def __init__(self, session, parent): + Screen.__init__(self, session) + + list = [] + + menuID = None + for x in parent: #walk through the actual nodelist + if not x.tag: + continue + if x.tag == 'item': + item_level = int(x.get("level", 0)) + if item_level <= config.usage.setup_level.index: + self.addItem(list, x) + count += 1 + elif x.tag == 'menu': + self.addMenu(list, x) + count += 1 + elif x.tag == "id": + menuID = x.get("val") + count = 0 + + if menuID is not None: + # menuupdater? + if menuupdater.updatedMenuAvailable(menuID): + for x in menuupdater.getUpdatedMenu(menuID): + if x[1] == count: + list.append((x[0], boundFunction(self.runScreen, (x[2], x[3] + ", ")), x[4])) + count += 1 + + if menuID is not None: + # plugins + for l in plugins.getPluginsForMenu(menuID): + # check if a plugin overrides an existing menu + plugin_menuid = l[2] + for x in list: + if x[2] == plugin_menuid: + list.remove(x) + break + list.append((l[0], boundFunction(l[1], self.session, close=self.close), l[2], l[3] or 50)) + + # for the skin: first try a menu_<menuID>, then Menu + self.skinName = [ ] + if menuID is not None: + self.skinName.append("menu_" + menuID) + self.skinName.append("Menu") + + # Sort by Weight + list.sort(key=lambda x: int(x[3])) + + self["menu"] = List(list) + + self["actions"] = NumberActionMap(["OkCancelActions", "MenuActions", "NumberActions"], + { + "ok": self.okbuttonClick, + "cancel": self.closeNonRecursive, + "menu": self.closeRecursive, + "1": self.keyNumberGlobal, + "2": self.keyNumberGlobal, + "3": self.keyNumberGlobal, + "4": self.keyNumberGlobal, + "5": self.keyNumberGlobal, + "6": self.keyNumberGlobal, + "7": self.keyNumberGlobal, + "8": self.keyNumberGlobal, + "9": self.keyNumberGlobal + }) + + a = parent.get("title", "").encode("UTF-8") or None + a = a and _(a) + if a is None: + a = _(parent.get("text", "").encode("UTF-8")) + self["title"] = StaticText(a) + self.menu_title = a + + def keyNumberGlobal(self, number): + print "menu keyNumber:", number + # Calculate index + number -= 1 + + if len(self["menu"].list) > number: + self["menu"].setIndex(number) + self.okbuttonClick() + + def closeNonRecursive(self): + self.close(False) + + def closeRecursive(self): + self.close(True) + + def createSummary(self): + return MenuSummary + +class MainMenu(Menu): + #add file load functions for the xml-file + + def __init__(self, *x): + self.skinName = "Menu" + Menu.__init__(self, *x) diff --git a/lib/python/Screens/MessageBox.py b/lib/python/Screens/MessageBox.py new file mode 100644 index 0000000..bfd510b --- /dev/null +++ b/lib/python/Screens/MessageBox.py @@ -0,0 +1,163 @@ +from Screen import Screen +from Components.ActionMap import ActionMap +from Components.Label import Label +from Components.Pixmap import Pixmap +from Components.Sources.StaticText import StaticText +from Components.MenuList import MenuList +from enigma import eTimer + +class MessageBox(Screen): + TYPE_YESNO = 0 + TYPE_INFO = 1 + TYPE_WARNING = 2 + TYPE_ERROR = 3 + + def __init__(self, session, text, type=TYPE_YESNO, timeout=-1, close_on_any_key=False, default=True, enable_input=True, msgBoxID=None, picon=None, simple=False, list=[], timeout_default=None): + self.type = type + Screen.__init__(self, session) + + if simple: + self.skinName="MessageBoxSimple" + + self.msgBoxID = msgBoxID + + self["text"] = Label(text) + self["Text"] = StaticText(text) + self["selectedChoice"] = StaticText() + + self.text = text + self.close_on_any_key = close_on_any_key + self.timeout_default = timeout_default + + self["ErrorPixmap"] = Pixmap() + self["QuestionPixmap"] = Pixmap() + self["InfoPixmap"] = Pixmap() + self.timerRunning = False + self.initTimeout(timeout) + + picon = picon or type + if picon != self.TYPE_ERROR: + self["ErrorPixmap"].hide() + if picon != self.TYPE_YESNO: + self["QuestionPixmap"].hide() + if picon != self.TYPE_INFO: + self["InfoPixmap"].hide() + + if type == self.TYPE_YESNO: + if list: + self.list = list + elif default == True: + self.list = [ (_("yes"), True), (_("no"), False) ] + else: + self.list = [ (_("no"), False), (_("yes"), True) ] + else: + self.list = [] + + self["list"] = MenuList(self.list) + if self.list: + self["selectedChoice"].setText(self.list[0][0]) + else: + self["list"].hide() + + if enable_input: + self["actions"] = ActionMap(["MsgBoxActions", "DirectionActions"], + { + "cancel": self.cancel, + "ok": self.ok, + "alwaysOK": self.alwaysOK, + "up": self.up, + "down": self.down, + "left": self.left, + "right": self.right, + "upRepeated": self.up, + "downRepeated": self.down, + "leftRepeated": self.left, + "rightRepeated": self.right + }, -1) + + self.onLayoutFinish.append(self.layoutFinished) + + def layoutFinished(self): + self.setTitle(_(self.title)) + + def initTimeout(self, timeout): + self.timeout = timeout + if timeout > 0: + self.timer = eTimer() + self.timer.callback.append(self.timerTick) + self.onExecBegin.append(self.startTimer) + self.origTitle = None + if self.execing: + self.timerTick() + else: + self.onShown.append(self.__onShown) + self.timerRunning = True + else: + self.timerRunning = False + + def __onShown(self): + self.onShown.remove(self.__onShown) + self.timerTick() + + def startTimer(self): + self.timer.start(1000) + + def stopTimer(self): + if self.timerRunning: + del self.timer + self.onExecBegin.remove(self.startTimer) + self.setTitle(self.origTitle) + self.timerRunning = False + + def timerTick(self): + if self.execing: + self.timeout -= 1 + if self.origTitle is None: + self.origTitle = self.instance.getTitle() + self.setTitle(self.origTitle + " (" + str(self.timeout) + ")") + if self.timeout == 0: + self.timer.stop() + self.timerRunning = False + self.timeoutCallback() + + def timeoutCallback(self): + print "Timeout!" + if self.timeout_default is not None: + self.close(self.timeout_default) + else: + self.ok() + + def cancel(self): + self.close(False) + + def ok(self): + if self.list: + self.close(self["list"].getCurrent()[1]) + else: + self.close(True) + + def alwaysOK(self): + self.close(True) + + def up(self): + self.move(self["list"].instance.moveUp) + + def down(self): + self.move(self["list"].instance.moveDown) + + def left(self): + self.move(self["list"].instance.pageUp) + + def right(self): + self.move(self["list"].instance.pageDown) + + def move(self, direction): + if self.close_on_any_key: + self.close(True) + self["list"].instance.moveSelection(direction) + if self.list: + self["selectedChoice"].setText(self["list"].getCurrent()[0]) + self.stopTimer() + + def __repr__(self): + return str(type(self)) + "(" + self.text + ")" diff --git a/lib/python/Screens/MinuteInput.py b/lib/python/Screens/MinuteInput.py new file mode 100644 index 0000000..fb276d9 --- /dev/null +++ b/lib/python/Screens/MinuteInput.py @@ -0,0 +1,67 @@ +from Screen import Screen +from Components.ActionMap import NumberActionMap +from Components.Input import Input + +class MinuteInput(Screen): + def __init__(self, session, basemins = 5): + Screen.__init__(self, session) + + self["minutes"] = Input(str(basemins), type=Input.NUMBER) + + self["actions"] = NumberActionMap([ "InputActions" , "MinuteInputActions", "TextEntryActions", "KeyboardInputActions" ], + { + "1": self.keyNumberGlobal, + "2": self.keyNumberGlobal, + "3": self.keyNumberGlobal, + "4": self.keyNumberGlobal, + "5": self.keyNumberGlobal, + "6": self.keyNumberGlobal, + "7": self.keyNumberGlobal, + "8": self.keyNumberGlobal, + "9": self.keyNumberGlobal, + "0": self.keyNumberGlobal, + "left": self.left, + "right": self.right, + "home": self.home, + "end": self.end, + "deleteForward": self.deleteForward, + "deleteBackward": self.deleteBackward, + "up": self.up, + "down": self.down, + "ok": self.ok, + "cancel": self.cancel + }) + + def keyNumberGlobal(self, number): + self["minutes"].number(number) + pass + + def left(self): + self["minutes"].left() + + def right(self): + self["minutes"].right() + + def home(self): + self["minutes"].home() + + def end(self): + self["minutes"].end() + + def deleteForward(self): + self["minutes"].delete() + + def deleteBackward(self): + self["minutes"].deleteBackward() + + def up(self): + self["minutes"].up() + + def down(self): + self["minutes"].down() + + def ok(self): + self.close(int(self["minutes"].getText())) + + def cancel(self): + self.close(0) \ No newline at end of file diff --git a/lib/python/Screens/MovieSelection.py b/lib/python/Screens/MovieSelection.py new file mode 100644 index 0000000..c7a9171 --- /dev/null +++ b/lib/python/Screens/MovieSelection.py @@ -0,0 +1,1906 @@ +from Screen import Screen +from Components.Button import Button +from Components.ActionMap import HelpableActionMap, ActionMap, NumberActionMap +from Components.MenuList import MenuList +from Components.MovieList import MovieList, resetMoviePlayState, AUDIO_EXTENSIONS, DVD_EXTENSIONS, IMAGE_EXTENSIONS +from Components.DiskInfo import DiskInfo +from Components.Pixmap import Pixmap, MultiPixmap +from Components.Label import Label +from Components.PluginComponent import plugins +from Components.config import config, ConfigSubsection, ConfigText, ConfigInteger, ConfigLocations, ConfigSet, ConfigYesNo, ConfigSelection, getConfigListEntry +from Components.ConfigList import ConfigListScreen +from Components.ServiceEventTracker import ServiceEventTracker, InfoBarBase +from Components.Sources.ServiceEvent import ServiceEvent +from Components.Sources.StaticText import StaticText +import Components.Harddisk +from Components.UsageConfig import preferredTimerPath + +from Plugins.Plugin import PluginDescriptor + +from Screens.MessageBox import MessageBox +from Screens.ChoiceBox import ChoiceBox +from Screens.LocationBox import MovieLocationBox +from Screens.HelpMenu import HelpableScreen +import Screens.InfoBar + +from Tools import NumericalTextInput +from Tools.Directories import resolveFilename, SCOPE_HDD +from Tools.BoundFunction import boundFunction +import Tools.Trashcan +import NavigationInstance +import RecordTimer + +from enigma import eServiceReference, eServiceCenter, eTimer, eSize, iPlayableService, iServiceInformation, getPrevAsciiCode, eRCInput +import os +import time +import cPickle as pickle + +config.movielist = ConfigSubsection() +config.movielist.moviesort = ConfigInteger(default=MovieList.SORT_RECORDED) +config.movielist.listtype = ConfigInteger(default=MovieList.LISTTYPE_MINIMAL) +config.movielist.description = ConfigInteger(default=MovieList.SHOW_DESCRIPTION) +config.movielist.last_videodir = ConfigText(default=resolveFilename(SCOPE_HDD)) +config.movielist.last_timer_videodir = ConfigText(default=resolveFilename(SCOPE_HDD)) +config.movielist.videodirs = ConfigLocations(default=[resolveFilename(SCOPE_HDD)]) +config.movielist.last_selected_tags = ConfigSet([], default=[]) +config.movielist.play_audio_internal = ConfigYesNo(default=True) +config.movielist.settings_per_directory = ConfigYesNo(default=True) +config.movielist.root = ConfigSelection(default="/media", choices=["/","/media","/media/hdd","/media/hdd/movie","/media/usb","/media/usb/movie"]) +config.movielist.hide_extensions = ConfigYesNo(default=False) +config.movielist.stop_service = ConfigYesNo(default=True) + +userDefinedButtons = None +last_selected_dest = [] +preferredTagEditor = None + +# this kludge is needed because ConfigSelection only takes numbers +# and someone appears to be fascinated by 'enums'. +l_moviesort = [(str(MovieList.SORT_RECORDED), _("by date"), '03/02/01'), + (str(MovieList.SORT_ALPHANUMERIC), _("alphabetic"), 'A-Z'), + (str(MovieList.SORT_ALPHANUMERIC_FLAT), _("flat alphabetic"), 'A-Z Flat'), + (str(MovieList.SHUFFLE), _("shuffle"), '?'), + (str(MovieList.SORT_RECORDED_REVERSE), _("reverse by date"), '01/02/03'), + (str(MovieList.SORT_ALPHANUMERIC_REVERSE), _("alphabetic reverse"), 'Z-A'), + (str(MovieList.SORT_ALPHANUMERIC_FLAT_REVERSE), _("flat alphabetic reverse"), 'Z-A Flat')] +l_listtype = [(str(MovieList.LISTTYPE_ORIGINAL), _("list style default")), + (str(MovieList.LISTTYPE_COMPACT_DESCRIPTION), _("list style compact with description")), + (str(MovieList.LISTTYPE_COMPACT), _("list style compact")), + (str(MovieList.LISTTYPE_MINIMAL), _("list style single line"))] + +def defaultMoviePath(): + result = config.usage.default_path.value + if not os.path.isdir(result): + from Tools import Directories + return Directories.defaultRecordingLocation() + return result + +def setPreferredTagEditor(te): + global preferredTagEditor + if preferredTagEditor is None: + preferredTagEditor = te + print "Preferred tag editor changed to", preferredTagEditor + else: + print "Preferred tag editor already set to", preferredTagEditor, "ignoring", te + +def getPreferredTagEditor(): + global preferredTagEditor + return preferredTagEditor + +def isTrashFolder(ref): + if not config.usage.movielist_trashcan.value or not ref.flags & eServiceReference.mustDescent: + return False + path = os.path.realpath(ref.getPath()) + return path.endswith('.Trash') and path.startswith(Tools.Trashcan.getTrashFolder(path)) + +def isInTrashFolder(ref): + if not config.usage.movielist_trashcan.value or not ref.flags & eServiceReference.mustDescent: + return False + path = os.path.realpath(ref.getPath()) + return path.startswith(Tools.Trashcan.getTrashFolder(path)) + +def isSimpleFile(item): + if not item: + return False + if not item[0] or not item[1]: + return False + return (item[0].flags & eServiceReference.mustDescent) == 0 + +def isFolder(item): + if not item: + return False + if not item[0] or not item[1]: + return False + return (item[0].flags & eServiceReference.mustDescent) != 0 + + +def canMove(item): + if not item: + return False + if not item[0] or not item[1]: + return False + if item[0].flags & eServiceReference.mustDescent: + return not isTrashFolder(item[0]) + return True + +canDelete = canMove + +def canCopy(item): + if not item: + return False + if not item[0] or not item[1]: + return False + if item[0].flags & eServiceReference.mustDescent: + return False + return True + +def createMoveList(serviceref, dest): + #normpath is to remove the trailing '/' from directories + src = os.path.normpath(serviceref.getPath()) + srcPath, srcName = os.path.split(src) + if os.path.normpath(srcPath) == dest: + # move file to itself is allowed, so we have to check it + raise Exception, "Refusing to move to the same directory" + # Make a list of items to move + moveList = [(src, os.path.join(dest, srcName))] + if not serviceref.flags & eServiceReference.mustDescent: + # Real movie, add extra files... + srcBase = os.path.splitext(src)[0] + baseName = os.path.split(srcBase)[1] + eitName = srcBase + '.eit' + if os.path.exists(eitName): + moveList.append((eitName, os.path.join(dest, baseName+'.eit'))) + baseName = os.path.split(src)[1] + for ext in ('.ap', '.cuts', '.meta', '.sc'): + candidate = src + ext + if os.path.exists(candidate): + moveList.append((candidate, os.path.join(dest, baseName+ext))) + return moveList + +def moveServiceFiles(serviceref, dest, name=None, allowCopy=True): + moveList = createMoveList(serviceref, dest) + # Try to "atomically" move these files + movedList = [] + try: + try: + for item in moveList: + os.rename(item[0], item[1]) + movedList.append(item) + except OSError, e: + if e.errno == 18 and allowCopy: + print "[MovieSelection] cannot rename across devices, trying slow move" + import CopyFiles + # start with the smaller files, do the big one later. + moveList.reverse() + if name is None: + name = os.path.split(moveList[-1][0])[1] + CopyFiles.moveFiles(moveList, name) + print "[MovieSelection] Moving in background..." + else: + raise + except Exception, e: + print "[MovieSelection] Failed move:", e + for item in movedList: + try: + os.rename(item[1], item[0]) + except: + print "[MovieSelection] Failed to undo move:", item + # rethrow exception + raise + +def copyServiceFiles(serviceref, dest, name=None): + # current should be 'ref' type, dest a simple path string + moveList = createMoveList(serviceref, dest) + # Try to "atomically" move these files + movedList = [] + try: + for item in moveList: + os.link(item[0], item[1]) + movedList.append(item) + # this worked, we're done + return + except Exception, e: + print "[MovieSelection] Failed copy using link:", e + for item in movedList: + try: + os.unlink(item[1]) + except: + print "[MovieSelection] Failed to undo copy:", item + #Link failed, really copy. + import CopyFiles + # start with the smaller files, do the big one later. + moveList.reverse() + if name is None: + name = os.path.split(moveList[-1][0])[1] + CopyFiles.copyFiles(moveList, name) + print "[MovieSelection] Copying in background..." + +class MovieBrowserConfiguration(ConfigListScreen,Screen): + skin = """ +<screen position="center,center" size="560,400" title="Movie Browser Configuration" > + <ePixmap name="red" position="0,0" zPosition="2" size="140,40" pixmap="skin_default/buttons/red.png" transparent="1" alphatest="on" /> + <ePixmap name="green" position="140,0" zPosition="2" size="140,40" pixmap="skin_default/buttons/green.png" transparent="1" alphatest="on" /> + + <widget name="key_red" position="0,0" size="140,40" valign="center" halign="center" zPosition="4" foregroundColor="white" font="Regular;20" transparent="1" shadowColor="background" shadowOffset="-2,-2" /> + <widget name="key_green" position="140,0" size="140,40" valign="center" halign="center" zPosition="4" foregroundColor="white" font="Regular;20" transparent="1" shadowColor="background" shadowOffset="-2,-2" /> + <widget name="config" position="10,40" size="540,340" scrollbarMode="showOnDemand" /> + + <ePixmap alphatest="on" pixmap="skin_default/icons/clock.png" position="480,383" size="14,14" zPosition="3"/> + <widget font="Regular;18" halign="left" position="505,380" render="Label" size="55,20" source="global.CurrentTime" transparent="1" valign="center" zPosition="3"> + <convert type="ClockToText">Default</convert> + </widget> +</screen>""" + + def __init__(self, session, args = 0): + self.session = session + self.setup_title = _("Movie list configuration") + Screen.__init__(self, session) + cfg = ConfigSubsection() + self.cfg = cfg + cfg.moviesort = ConfigSelection(default=str(config.movielist.moviesort.value), choices = l_moviesort) + cfg.listtype = ConfigSelection(default=str(config.movielist.listtype.value), choices = l_listtype) + cfg.description = ConfigYesNo(default=(config.movielist.description.value != MovieList.HIDE_DESCRIPTION)) + configList = [ + getConfigListEntry(_("Sort"), cfg.moviesort), + getConfigListEntry(_("Show extended description"), cfg.description), + getConfigListEntry(_("Type"), cfg.listtype), + getConfigListEntry(_("Use individual settings for each directory"), config.movielist.settings_per_directory), + getConfigListEntry(_("Behavior when a movie reaches the end"), config.usage.on_movie_eof), + getConfigListEntry(_("Stop service on return to movie list"), config.movielist.stop_service), + getConfigListEntry(_("Load length of movies in movie list"), config.usage.load_length_of_movies_in_moviellist), + getConfigListEntry(_("Show status icons in movie list"), config.usage.show_icons_in_movielist), + getConfigListEntry(_("Show icon for new/unseen items"), config.usage.movielist_unseen), + getConfigListEntry(_("Play audio in background"), config.movielist.play_audio_internal), + getConfigListEntry(_("Root directory"), config.movielist.root), + getConfigListEntry(_("Hide known extensions"), config.movielist.hide_extensions), + ] + for btn in ('red', 'green', 'yellow', 'blue', 'TV', 'Radio', 'Text'): + configList.append(getConfigListEntry(_(btn), userDefinedButtons[btn])) + ConfigListScreen.__init__(self, configList, session=session, on_change = self.changedEntry) + self["key_red"] = Button(_("Cancel")) + self["key_green"] = Button(_("Ok")) + self["setupActions"] = ActionMap(["SetupActions", "ColorActions"], + { + "red": self.cancel, + "green": self.save, + "save": self.save, + "cancel": self.cancel, + "ok": self.save, + }, -2) + self.onChangedEntry = [] + + # for summary: + def changedEntry(self): + for x in self.onChangedEntry: + x() + def getCurrentEntry(self): + return self["config"].getCurrent()[0] + def getCurrentValue(self): + return str(self["config"].getCurrent()[1].getText()) + def createSummary(self): + from Screens.Setup import SetupSummary + return SetupSummary + + def save(self): + self.saveAll() + cfg = self.cfg + config.movielist.moviesort.value = int(cfg.moviesort.value) + config.movielist.listtype.value = int(cfg.listtype.value) + if cfg.description.value: + config.movielist.description.value = MovieList.SHOW_DESCRIPTION + else: + config.movielist.description.value = MovieList.HIDE_DESCRIPTION + if not config.movielist.settings_per_directory.value: + config.movielist.moviesort.save() + config.movielist.listtype.save() + config.movielist.description.save() + config.usage.on_movie_eof.save() + self.close(True) + + def cancel(self): + for x in self["config"].list: + x[1].cancel() + self.close(False) + +class MovieContextMenuSummary(Screen): + def __init__(self, session, parent): + Screen.__init__(self, session, parent = parent) + self["selected"] = StaticText("") + self.onShow.append(self.__onShow) + self.onHide.append(self.__onHide) + + def __onShow(self): + self.parent["menu"].onSelectionChanged.append(self.selectionChanged) + self.selectionChanged() + + def __onHide(self): + self.parent["menu"].onSelectionChanged.remove(self.selectionChanged) + + def selectionChanged(self): + item = self.parent["menu"].getCurrent() + self["selected"].text = item[0] + + +class MovieContextMenu(Screen): + # Contract: On OK returns a callable object (e.g. delete) + def __init__(self, session, csel, service): + Screen.__init__(self, session) + + self["actions"] = ActionMap(["OkCancelActions", "ColorActions"], + { + "ok": self.okbuttonClick, + "cancel": self.cancelClick, + "yellow": csel.showNetworkSetup, + "blue": csel.configure + }) + + self["key_yellow"] = Button(_("Network") + "...") + self["key_blue"] = Button(_("Settings") + "...") + + menu = [] + if service: + if (service.flags & eServiceReference.mustDescent): + if isTrashFolder(service): + menu.append((_("Permanently remove all deleted items"), csel.purgeAll)) + else: + menu.append((_("Delete"), csel.do_delete)) + menu.append((_("Move"), csel.do_move)) + menu.append((_("Rename"), csel.do_rename)) + else: + menu = [(_("Delete"), csel.do_delete), + (_("Move"), csel.do_move), + (_("Copy"), csel.do_copy), + (_("Reset playback position"), csel.do_reset), + (_("Rename"), csel.do_rename), + (_("Start offline decode"), csel.do_decode), + ] + # Plugins expect a valid selection, so only include them if we selected a non-dir + menu.extend([(p.description, boundFunction(p, session, service)) for p in plugins.getPlugins(PluginDescriptor.WHERE_MOVIELIST)]) + + menu.append((_("Add bookmark"), csel.do_addbookmark)) + menu.append((_("create directory"), csel.do_createdir)) + menu.append((_("Sort by") + "...", csel.selectSortby)) + menu.append((_("Network") + "...", csel.showNetworkSetup)) + menu.append((_("Settings") + "...", csel.configure)) + self["menu"] = MenuList(menu) + + def createSummary(self): + return MovieContextMenuSummary + + def okbuttonClick(self): + self.close(self["menu"].getCurrent()[1]) + + def cancelClick(self): + self.close(None) + +class SelectionEventInfo: + def __init__(self): + self["Service"] = ServiceEvent() + self.list.connectSelChanged(self.__selectionChanged) + self.timer = eTimer() + self.timer.callback.append(self.updateEventInfo) + self.onShown.append(self.__selectionChanged) + + def __selectionChanged(self): + if self.execing and self.settings["description"] == MovieList.SHOW_DESCRIPTION: + self.timer.start(100, True) + + def updateEventInfo(self): + serviceref = self.getCurrent() + self["Service"].newService(serviceref) + +class MovieSelectionSummary(Screen): + # Kludgy component to display current selection on LCD. Should use + # parent.Service as source for everything, but that seems to have a + # performance impact as the MovieSelection goes through hoops to prevent + # this when the info is not selected + def __init__(self, session, parent): + Screen.__init__(self, session, parent = parent) + self["name"] = StaticText("") + self.onShow.append(self.__onShow) + self.onHide.append(self.__onHide) + + def __onShow(self): + self.parent.list.connectSelChanged(self.selectionChanged) + self.selectionChanged() + + def __onHide(self): + self.parent.list.disconnectSelChanged(self.selectionChanged) + + def selectionChanged(self): + item = self.parent.getCurrentSelection() + if item and item[0]: + data = item[3] + if (data is not None) and (data != -1): + name = data.txt + elif not item[1]: + # special case, one up + name = ".." + else: + name = item[1].getName(item[0]) + if (item[0].flags & eServiceReference.mustDescent): + if len(name) > 12: + name = os.path.split(os.path.normpath(name))[1] + name = "> " + name + self["name"].text = name + else: + self["name"].text = "" + +class MovieSelection(Screen, HelpableScreen, SelectionEventInfo, InfoBarBase): + # SUSPEND_PAUSES actually means "please call my pauseService()" + ALLOW_SUSPEND = Screen.SUSPEND_PAUSES + + def __init__(self, session, selectedmovie = None, timeshiftEnabled = False): + Screen.__init__(self, session) + HelpableScreen.__init__(self) + if not timeshiftEnabled: + InfoBarBase.__init__(self) # For ServiceEventTracker + self.initUserDefinedActions() + self.tags = {} + if selectedmovie: + self.selected_tags = config.movielist.last_selected_tags.value + else: + self.selected_tags = None + self.selected_tags_ele = None + self.nextInBackground = None + + self.movemode = False + self.bouquet_mark_edit = False + + self.feedbackTimer = None + self.pathselectEnabled = False + + self.numericalTextInput = NumericalTextInput.NumericalTextInput(mapping=NumericalTextInput.MAP_SEARCH_UPCASE) + self["chosenletter"] = Label("") + self["chosenletter"].visible = False + + self["waitingtext"] = Label(_("Please wait... Loading list...")) + + # create optional description border and hide immediately + self["DescriptionBorder"] = Pixmap() + self["DescriptionBorder"].hide() + + if not os.path.isdir(config.movielist.last_videodir.value): + config.movielist.last_videodir.value = defaultMoviePath() + config.movielist.last_videodir.save() + self.setCurrentRef(config.movielist.last_videodir.value) + + self.settings = {\ + "listtype": config.movielist.listtype.value, + "moviesort": config.movielist.moviesort.value, + "description": config.movielist.description.value, + "movieoff": config.usage.on_movie_eof.value + } + self.movieOff = self.settings["movieoff"] + + self["list"] = MovieList(None, list_type=self.settings["listtype"], sort_type=self.settings["moviesort"], descr_state=self.settings["description"]) + + self.loadLocalSettings() + + self.list = self["list"] + self.selectedmovie = selectedmovie + + self.playGoTo = None #1 - preview next item / -1 - preview previous + + title = _("Movie selection") + self.setTitle(title) + + # Need list for init + SelectionEventInfo.__init__(self) + + self["key_red"] = Button("") + self["key_green"] = Button("") + self["key_yellow"] = Button("") + self["key_blue"] = Button("") + self._updateButtonTexts() + + self["movie_off"] = MultiPixmap() + self["movie_off"].hide() + + self["movie_sort"] = MultiPixmap() + self["movie_sort"].hide() + + self["freeDiskSpace"] = self.diskinfo = DiskInfo(config.movielist.last_videodir.value, DiskInfo.FREE, update=False) + + self["InfobarActions"] = HelpableActionMap(self, "InfobarActions", + { + "showMovies": (self.doPathSelect, _("Select the movie path")), + "showRadio": (self.btn_radio, "?"), + "showTv": (self.btn_tv, _("Home")), + "showText": (self.btn_text, _("On end of movie")), + }) + + self["NumberActions"] = NumberActionMap(["NumberActions", "InputAsciiActions"], + { + "gotAsciiCode": self.keyAsciiCode, + "0": self.keyNumberGlobal, + "1": self.keyNumberGlobal, + "2": self.keyNumberGlobal, + "3": self.keyNumberGlobal, + "4": self.keyNumberGlobal, + "5": self.keyNumberGlobal, + "6": self.keyNumberGlobal, + "7": self.keyNumberGlobal, + "8": self.keyNumberGlobal, + "9": self.keyNumberGlobal + }) + + self["playbackActions"] = HelpableActionMap(self, "MoviePlayerActions", + { + "leavePlayer": (self.playbackStop, _("Stop")), + "moveNext": (self.playNext, _("Play next")), + "movePrev": (self.playPrev, _("Play previous")), + "channelUp": (self.moveToFirstOrFirstFile, _("Go to first movie or top of list")), + "channelDown": (self.moveToLastOrFirstFile, _("Go to first movie or last item")), + }) + self["MovieSelectionActions"] = HelpableActionMap(self, "MovieSelectionActions", + { + "contextMenu": (self.doContext, _("Menu")), + "showEventInfo": (self.showEventInformation, _("Show event details")), + }) + + self["ColorActions"] = HelpableActionMap(self, "ColorActions", + { + "red": (self.btn_red, _("Delete...")), + "green": (self.btn_green, _("Move to other directory")), + "yellow": (self.btn_yellow, _("Select the movie path")), + "blue": (self.btn_blue, _("Show tag menu")), + }) + self["OkCancelActions"] = HelpableActionMap(self, "OkCancelActions", + { + "cancel": (self.abort, _("Exit movie list")), + "ok": (self.itemSelected, _("Select movie")), + }) + self["DirectionActions"] = HelpableActionMap(self, "DirectionActions", + { + "up": (self.keyUp, _("Go up the list")), + "down": (self.keyDown, _("Go down the list")) + }, prio = -2) + + tPreview = _("Preview") + tFwd = _("skip forward") + " (" + tPreview +")" + tBack= _("skip backward") + " (" + tPreview +")" + sfwd = lambda: self.seekRelative(1, config.seek.selfdefined_46.value * 90000) + ssfwd = lambda: self.seekRelative(1, config.seek.selfdefined_79.value * 90000) + sback = lambda: self.seekRelative(-1, config.seek.selfdefined_46.value * 90000) + ssback = lambda: self.seekRelative(-1, config.seek.selfdefined_79.value * 90000) + self["SeekActions"] = HelpableActionMap(self, "InfobarSeekActions", + { + "playpauseService": (self.preview, _("Preview")), + "seekFwd": (sfwd, tFwd), + "seekFwdManual": (ssfwd, tFwd), + "seekBack": (sback, tBack), + "seekBackManual": (ssback, tBack), + }, prio=5) + self.onShown.append(self.onFirstTimeShown) + self.onLayoutFinish.append(self.saveListsize) + self.list.connectSelChanged(self.updateButtons) + self.onClose.append(self.__onClose) + NavigationInstance.instance.RecordTimer.on_state_change.append(self.list.updateRecordings) + self.__event_tracker = ServiceEventTracker(screen=self, eventmap= + { + #iPlayableService.evSeekableStatusChanged: self.__seekableStatusChanged, + iPlayableService.evStart: self.__serviceStarted, + iPlayableService.evEOF: self.__evEOF, + #iPlayableService.evSOF: self.__evSOF, + }) + self.onExecBegin.append(self.asciiOn) + + def asciiOn(self): + rcinput = eRCInput.getInstance() + rcinput.setKeyboardMode(rcinput.kmAscii) + + def asciiOff(self): + rcinput = eRCInput.getInstance() + rcinput.setKeyboardMode(rcinput.kmNone) + + def initUserDefinedActions(self): + global userDefinedButtons, userDefinedActions, config + if userDefinedButtons is None: + userDefinedActions = { + 'delete': _("Delete"), + 'move': _("Move"), + 'copy': _("Copy"), + 'reset': _("Reset"), + 'tags': _("Tags"), + 'addbookmark': _("Add bookmark"), + 'bookmarks': _("Location"), + 'rename': _("Rename"), + 'gohome': _("Home"), + 'sort': _("Sort"), + 'sortby': _("Sort by"), + 'listtype': _("List type"), + 'preview': _("Preview"), + 'movieoff': _("On end of movie"), + 'movieoff_menu': _("On end of movie (as menu)") + } + for p in plugins.getPlugins(PluginDescriptor.WHERE_MOVIELIST): + userDefinedActions['@' + p.name] = p.description + config.movielist.btn_red = ConfigSelection(default='delete', choices=userDefinedActions) + config.movielist.btn_green = ConfigSelection(default='move', choices=userDefinedActions) + config.movielist.btn_yellow = ConfigSelection(default='bookmarks', choices=userDefinedActions) + config.movielist.btn_blue = ConfigSelection(default='sort', choices=userDefinedActions) + config.movielist.btn_radio = ConfigSelection(default='tags', choices=userDefinedActions) + config.movielist.btn_tv = ConfigSelection(default='gohome', choices=userDefinedActions) + config.movielist.btn_text = ConfigSelection(default='movieoff', choices=userDefinedActions) + userDefinedButtons ={ + 'red': config.movielist.btn_red, + 'green': config.movielist.btn_green, + 'yellow': config.movielist.btn_yellow, + 'blue': config.movielist.btn_blue, + 'Radio': config.movielist.btn_radio, + 'TV': config.movielist.btn_tv, + 'Text': config.movielist.btn_text, + } + + def _callButton(self, name): + if name.startswith('@'): + item = self.getCurrentSelection() + if isSimpleFile(item): + name = name[1:] + for p in plugins.getPlugins(PluginDescriptor.WHERE_MOVIELIST): + if name == p.name: + p(self.session, item[0]) + return + try: + a = getattr(self, 'do_' + name) + except Exception: + # Undefined action + return + a() + + def btn_red(self): + self._callButton(config.movielist.btn_red.value) + def btn_green(self): + self._callButton(config.movielist.btn_green.value) + def btn_yellow(self): + self._callButton(config.movielist.btn_yellow.value) + def btn_blue(self): + self._callButton(config.movielist.btn_blue.value) + def btn_radio(self): + self._callButton(config.movielist.btn_radio.value) + def btn_tv(self): + self._callButton(config.movielist.btn_tv.value) + def btn_text(self): + self._callButton(config.movielist.btn_text.value) + + def keyUp(self): + if self["list"].getCurrentIndex() < 1: + self["list"].moveToLast() + else: + self["list"].moveUp() + + def keyDown(self): + if self["list"].getCurrentIndex() == len(self["list"]) - 1: + self["list"].moveToFirst() + else: + self["list"].moveDown() + + def moveToFirstOrFirstFile(self): + if self.list.getCurrentIndex() <= self.list.firstFileEntry: #selection above or on first movie + if self.list.getCurrentIndex() < 1: + self.list.moveToLast() + else: + self.list.moveToFirst() + else: + self.list.moveToFirstMovie() + + def moveToLastOrFirstFile(self): + if self.list.getCurrentIndex() >= self.list.firstFileEntry or self.list.firstFileEntry == len(self.list): #selection below or on first movie or no files + if self.list.getCurrentIndex() == len(self.list) - 1: + self.list.moveToFirst() + else: + self.list.moveToLast() + else: + self.list.moveToFirstMovie() + + def keyNumberGlobal(self, number): + unichar = self.numericalTextInput.getKey(number) + charstr = unichar.encode("utf-8") + if len(charstr) == 1: + self.list.moveToChar(charstr[0], self["chosenletter"]) + + def keyAsciiCode(self): + unichar = unichr(getPrevAsciiCode()) + charstr = unichar.encode("utf-8") + if len(charstr) == 1: + self.list.moveToString(charstr[0], self["chosenletter"]) + + def isItemPlayable(self, index): + item = self.list.getItem(index) + if item: + path = item.getPath() + if not item.flags & eServiceReference.mustDescent: + ext = os.path.splitext(path)[1].lower() + if ext in IMAGE_EXTENSIONS: + return False + else: + return True + return False + + def goToPlayingService(self): + service = self.session.nav.getCurrentlyPlayingServiceOrGroup() + if service: + path = service.getPath() + if path: + path = os.path.split(os.path.normpath(path))[0] + if not path.endswith('/'): + path += '/' + self.gotFilename(path, selItem = service) + return True + return False + + def playNext(self): + if self.list.playInBackground: + if self.list.moveTo(self.list.playInBackground): + if self.isItemPlayable(self.list.getCurrentIndex() + 1): + self.list.moveDown() + self.callLater(self.preview) + else: + self.playGoTo = 1 + self.goToPlayingService() + else: + self.preview() + + def playPrev(self): + if self.list.playInBackground: + if self.list.moveTo(self.list.playInBackground): + if self.isItemPlayable(self.list.getCurrentIndex() - 1): + self.list.moveUp() + self.callLater(self.preview) + else: + self.playGoTo = -1 + self.goToPlayingService() + + def __onClose(self): + try: + NavigationInstance.instance.RecordTimer.on_state_change.remove(self.list.updateRecordings) + except Exception, e: + print "[ML] failed to unsubscribe:", e + pass + + def createSummary(self): + return MovieSelectionSummary + + def updateDescription(self): + if self.settings["description"] == MovieList.SHOW_DESCRIPTION: + self["DescriptionBorder"].show() + self["list"].instance.resize(eSize(self.listWidth, self.listHeight-self["DescriptionBorder"].instance.size().height())) + else: + self["Service"].newService(None) + self["DescriptionBorder"].hide() + self["list"].instance.resize(eSize(self.listWidth, self.listHeight)) + + def pauseService(self): + # Called when pressing Power button (go to standby) + self.playbackStop() + self.session.nav.stopService() + + def unPauseService(self): + # When returning from standby. It might have been a while, so + # reload the list. + self.reloadList() + + def can_delete(self, item): + if not item: + return False + return canDelete(item) or isTrashFolder(item[0]) + def can_move(self, item): + return canMove(item) + def can_default(self, item): + # returns whether item is a regular file + return isSimpleFile(item) + def can_sort(self, item): + return True + def can_listtype(self, item): + return True + def can_preview(self, item): + return isSimpleFile(item) + + def _updateButtonTexts(self): + for k in ('red', 'green', 'yellow', 'blue'): + btn = userDefinedButtons[k] + self['key_' + k].setText(userDefinedActions[btn.value]) + + def updateButtons(self): + item = self.getCurrentSelection() + for name in ('red', 'green', 'yellow', 'blue'): + action = userDefinedButtons[name].value + if action.startswith('@'): + check = self.can_default + else: + try: + check = getattr(self, 'can_' + action) + except: + check = self.can_default + gui = self["key_" + name] + if check(item): + gui.show() + else: + gui.hide() + + def showEventInformation(self): + from Screens.EventView import EventViewSimple + from ServiceReference import ServiceReference + evt = self["list"].getCurrentEvent() + if evt: + self.session.open(EventViewSimple, evt, ServiceReference(self.getCurrent())) + + def saveListsize(self): + listsize = self["list"].instance.size() + self.listWidth = listsize.width() + self.listHeight = listsize.height() + self.updateDescription() + + def onFirstTimeShown(self): + self.onShown.remove(self.onFirstTimeShown) # Just once, not after returning etc. + self.show() + self.reloadList(self.selectedmovie, home=True) + del self.selectedmovie + + def getCurrent(self): + # Returns selected serviceref (may be None) + return self["list"].getCurrent() + + def getCurrentSelection(self): + # Returns None or (serviceref, info, begin, len) + return self["list"].l.getCurrentSelection() + + def playAsDVD(self, path): + try: + from Screens import DVD + if path.endswith('VIDEO_TS/'): + # strip away VIDEO_TS/ part + path = os.path.split(path.rstrip('/'))[0] + self.session.open(DVD.DVDPlayer, dvd_filelist=[path]) + return True + except Exception, e: + print "[ML] DVD Player not installed:", e + + def __serviceStarted(self): + if not self.list.playInBackground: + return + ref = self.session.nav.getCurrentService() + cue = ref.cueSheet() + if not cue: + return + # disable writing the stop position + cue.setCutListEnable(2) + # find "resume" position + cuts = cue.getCutList() + if not cuts: + return + for (pts, what) in cuts: + if what == 3: + last = pts + break + else: + # no resume, jump to start of program (first marker) + last = cuts[0][0] + self.doSeekTo = last + self.callLater(self.doSeek) + + def doSeek(self, pts = None): + if pts is None: + pts = self.doSeekTo + seekable = self.getSeek() + if seekable is None: + return + seekable.seekTo(pts) + + def getSeek(self): + service = self.session.nav.getCurrentService() + if service is None: + return None + seek = service.seek() + if seek is None or not seek.isCurrentlySeekable(): + return None + return seek + + def callLater(self, function): + self.previewTimer = eTimer() + self.previewTimer.callback.append(function) + self.previewTimer.start(10, True) + + def __evEOF(self): + playInBackground = self.list.playInBackground + if not playInBackground: + print "Not playing anything in background" + return + self.session.nav.stopService() + self.list.playInBackground = None + if config.movielist.play_audio_internal.value: + index = self.list.findService(playInBackground) + if index is None: + return # Not found? + next = self.list.getItem(index + 1) + if not next: + return + path = next.getPath() + ext = os.path.splitext(path)[1].lower() + print "Next up:", path + if ext in AUDIO_EXTENSIONS: + self.nextInBackground = next + self.callLater(self.preview) + self["list"].moveToIndex(index+1) + + def preview(self): + current = self.getCurrent() + if current is not None: + path = current.getPath() + if current.flags & eServiceReference.mustDescent: + self.gotFilename(path) + else: + Screens.InfoBar.InfoBar.instance.checkTimeshiftRunning(self.previewCheckTimeshiftCallback) + + def startPreview(self): + if self.nextInBackground is not None: + current = self.nextInBackground + self.nextInBackground = None + else: + current = self.getCurrent() + playInBackground = self.list.playInBackground + if playInBackground: + self.list.playInBackground = None + self.session.nav.stopService() + if playInBackground != current: + # come back to play the new one + self.callLater(self.preview) + else: + self.list.playInBackground = current + self.session.nav.playService(current) + + def previewCheckTimeshiftCallback(self, answer): + if answer: + self.startPreview() + + def seekRelative(self, direction, amount): + if self.list.playInBackground: + seekable = self.getSeek() + if seekable is None: + return + seekable.seekRelative(direction, amount) + + def playbackStop(self): + if self.list.playInBackground: + self.list.playInBackground = None + self.session.nav.stopService() + + def itemSelected(self, answer = True): + current = self.getCurrent() + if current is not None: + path = current.getPath() + if current.flags & eServiceReference.mustDescent: + if path.endswith("VIDEO_TS/") or os.path.exists(os.path.join(path, 'VIDEO_TS.IFO')): + #force a DVD extention + Screens.InfoBar.InfoBar.instance.checkTimeshiftRunning(boundFunction(self.itemSelectedCheckTimeshiftCallback, ".iso", path)) + return + self.gotFilename(path) + else: + ext = os.path.splitext(path)[1].lower() + if config.movielist.play_audio_internal.value and (ext in AUDIO_EXTENSIONS): + self.preview() + return + if self.list.playInBackground: + # Stop preview, come back later + self.session.nav.stopService() + self.list.playInBackground = None + self.callLater(self.itemSelected) + return + if ext in IMAGE_EXTENSIONS: + try: + from Plugins.Extensions.PicturePlayer import ui + # Build the list for the PicturePlayer UI + filelist = [] + index = 0 + for item in self.list.list: + p = item[0].getPath() + if p == path: + index = len(filelist) + if os.path.splitext(p)[1].lower() in IMAGE_EXTENSIONS: + filelist.append(((p,False), None)) + self.session.open(ui.Pic_Full_View, filelist, index, path) + except Exception, ex: + print "[ML] Cannot display", str(ex) + return + Screens.InfoBar.InfoBar.instance.checkTimeshiftRunning(boundFunction(self.itemSelectedCheckTimeshiftCallback, ext, path)) + + def itemSelectedCheckTimeshiftCallback(self, ext, path, answer): + if answer: + if ext in DVD_EXTENSIONS: + if self.playAsDVD(path): + return + self.movieSelected() + + # Note: DVDBurn overrides this method, hence the itemSelected indirection. + def movieSelected(self): + current = self.getCurrent() + if current is not None: + self.saveconfig() + self.close(current) + + def doContext(self): + current = self.getCurrent() + if current is not None: + self.session.openWithCallback(self.doneContext, MovieContextMenu, self, current) + + def doneContext(self, action): + if action is not None: + action() + + def saveLocalSettings(self): + if config.movielist.settings_per_directory.value: + try: + path = os.path.join(config.movielist.last_videodir.value, ".e2settings.pkl") + pickle.dump(self.settings, open(path, "wb")) + except Exception, e: + print "Failed to save settings to %s: %s" % (path, e) + # Also set config items, in case the user has a read-only disk + config.movielist.moviesort.value = self.settings["moviesort"] + config.movielist.listtype.value = self.settings["listtype"] + config.movielist.description.value = self.settings["description"] + config.usage.on_movie_eof.value = self.settings["movieoff"] + # save moviesort and movieeof values for using by hotkeys + config.movielist.moviesort.save() + config.usage.on_movie_eof.save() + + def loadLocalSettings(self): + 'Load settings, called when entering a directory' + if config.movielist.settings_per_directory.value: + try: + path = os.path.join(config.movielist.last_videodir.value, ".e2settings.pkl") + updates = pickle.load(open(path, "rb")) + self.applyConfigSettings(updates) + except IOError, e: + updates = { + "listtype": config.movielist.listtype.default, + "moviesort": config.movielist.moviesort.default, + "description": config.movielist.description.default, + "movieoff": config.usage.on_movie_eof.default + } + self.applyConfigSettings(updates) + pass # ignore fail to open errors + except Exception, e: + print "Failed to load settings from %s: %s" % (path, e) + else: + updates = { + "listtype": config.movielist.listtype.value, + "moviesort": config.movielist.moviesort.value, + "description": config.movielist.description.value, + "movieoff": config.usage.on_movie_eof.value + } + self.applyConfigSettings(updates) + + def applyConfigSettings(self, updates): + needUpdate = ("description" in updates) and (updates["description"] != self.settings["description"]) + self.settings.update(updates) + if needUpdate: + self["list"].setDescriptionState(self.settings["description"]) + self.updateDescription() + if self.settings["listtype"] != self["list"].list_type: + self["list"].setListType(self.settings["listtype"]) + needUpdate = True + if self.settings["moviesort"] != self["list"].sort_type: + self["list"].setSortType(self.settings["moviesort"]) + needUpdate = True + if self.settings["movieoff"] != self.movieOff: + self.movieOff = self.settings["movieoff"] + needUpdate = True + config.movielist.moviesort.value = self.settings["moviesort"] + config.movielist.listtype.value = self.settings["listtype"] + config.movielist.description.value = self.settings["description"] + config.usage.on_movie_eof.value = self.settings["movieoff"] + return needUpdate + + def sortBy(self, newType): + self.settings["moviesort"] = newType + self.saveLocalSettings() + self.setSortType(newType) + self.reloadList() + + def listType(self, newType): + self.settings["listtype"] = newType + self.saveLocalSettings() + self.setListType(newType) + self.reloadList() + + def showDescription(self, newType): + self.settings["description"] = newType + self.saveLocalSettings() + self.setDescriptionState(newType) + self.updateDescription() + + def abort(self): + global playlist + del playlist[:] + if self.list.playInBackground: + self.list.playInBackground = None + self.session.nav.stopService() + self.callLater(self.abort) + return + self.saveconfig() + self.close(None) + + def saveconfig(self): + config.movielist.last_selected_tags.value = self.selected_tags + + def configure(self): + self.session.openWithCallback(self.configureDone, MovieBrowserConfiguration) + + def configureDone(self, result): + if result: + self.applyConfigSettings({\ + "listtype": config.movielist.listtype.value, + "moviesort": config.movielist.moviesort.value, + "description": config.movielist.description.value, + "movieoff": config.usage.on_movie_eof.value}) + self.saveLocalSettings() + self._updateButtonTexts() + self.reloadList() + + def can_sortby(self, item): + return True + + def do_sortby(self): + self.selectSortby() + + def selectSortby(self): + menu = [] + index = 0 + used = 0 + for x in l_moviesort: + if int(x[0]) == int(config.movielist.moviesort.value): + used = index + menu.append((_(x[1]), x[0], "%d" % index)) + index += 1 + self.session.openWithCallback(self.sortbyMenuCallback, ChoiceBox, title=_("Sort list:"), list=menu, selection = used) + + def sortbyMenuCallback(self, choice): + if choice is None: + return + self.sortBy(int(choice[1])) + self["movie_sort"].setPixmapNum(int(choice[1])-1) + + def getTagDescription(self, tag): + # TODO: access the tag database + return tag + + def updateTags(self): + # get a list of tags available in this list + self.tags = self["list"].tags + + def setListType(self, type): + self["list"].setListType(type) + + def setDescriptionState(self, val): + self["list"].setDescriptionState(val) + + def setSortType(self, type): + self["list"].setSortType(type) + + def setCurrentRef(self, path): + self.current_ref = eServiceReference("2:0:1:0:0:0:0:0:0:0:" + path) + # Magic: this sets extra things to show + self.current_ref.setName('16384:jpg 16384:png 16384:gif 16384:bmp') + + def reloadList(self, sel = None, home = False): + self.reload_sel = sel + self.reload_home = home + self["waitingtext"].visible = True + self.pathselectEnabled = False + self.callLater(self.reloadWithDelay) + + def reloadWithDelay(self): + if not os.path.isdir(config.movielist.last_videodir.value): + path = defaultMoviePath() + config.movielist.last_videodir.value = path + config.movielist.last_videodir.save() + self.setCurrentRef(path) + self["freeDiskSpace"].path = path + if self.reload_sel is None: + self.reload_sel = self.getCurrent() + self["list"].reload(self.current_ref, self.selected_tags) + self.updateTags() + title = _("Recorded files...") + if config.usage.setup_level.index >= 2: # expert+ + title += " " + config.movielist.last_videodir.value + if self.selected_tags is not None: + title += " - " + ','.join(self.selected_tags) + self.setTitle(title) + self.displayMovieOffStatus() + self.displaySortStatus() + if not (self.reload_sel and self["list"].moveTo(self.reload_sel)): + if self.reload_home: + self["list"].moveToFirstMovie() + self["freeDiskSpace"].update() + self["waitingtext"].visible = False + self.createPlaylist() + if self.playGoTo: + if self.isItemPlayable(self.list.getCurrentIndex() + 1): + if self.playGoTo > 0: + self.list.moveDown() + else: + self.list.moveUp() + self.playGoTo = None + self.callLater(self.preview) + self.callLater(self.enablePathSelect) + + def enablePathSelect(self): + self.pathselectEnabled = True + + def doPathSelect(self): + if self.pathselectEnabled: + self.session.openWithCallback( + self.gotFilename, + MovieLocationBox, + _("Please select the movie path..."), + config.movielist.last_videodir.value + ) + + def gotFilename(self, res, selItem = None): + if not res: + return + # serviceref must end with / + if not res.endswith('/'): + res += '/' + currentDir = config.movielist.last_videodir.value + if res != currentDir: + if os.path.isdir(res): + config.movielist.last_videodir.value = res + config.movielist.last_videodir.save() + self.loadLocalSettings() + self.setCurrentRef(res) + self["freeDiskSpace"].path = res + if selItem: + self.reloadList(home = True, sel = selItem) + else: + self.reloadList(home = True, sel = eServiceReference("2:0:1:0:0:0:0:0:0:0:" + currentDir)) + else: + self.session.open( + MessageBox, + _("Directory %s does not exist.") % (res), + type = MessageBox.TYPE_ERROR, + timeout = 5 + ) + + def showAll(self): + self.selected_tags_ele = None + self.selected_tags = None + self.reloadList(home = True) + + def showTagsN(self, tagele): + if not self.tags: + self.showTagWarning() + elif not tagele or (self.selected_tags and tagele.value in self.selected_tags) or not tagele.value in self.tags: + self.showTagsMenu(tagele) + else: + self.selected_tags_ele = tagele + self.selected_tags = self.tags[tagele.value] + self.reloadList(home = True) + + def showTagsFirst(self): + self.showTagsN(config.movielist.first_tags) + + def showTagsSecond(self): + self.showTagsN(config.movielist.second_tags) + + def can_tags(self, item): + return self.tags + def do_tags(self): + self.showTagsN(None) + + def tagChosen(self, tag): + if tag is not None: + if tag[1] is None: # all + self.showAll() + return + # TODO: Some error checking maybe, don't wanna crash on KeyError + self.selected_tags = self.tags[tag[0]] + if self.selected_tags_ele: + self.selected_tags_ele.value = tag[0] + self.selected_tags_ele.save() + self.reloadList(home = True) + + def showTagsMenu(self, tagele): + self.selected_tags_ele = tagele + lst = [(_("show all tags"), None)] + [(tag, self.getTagDescription(tag)) for tag in self.tags] + self.session.openWithCallback(self.tagChosen, ChoiceBox, title=_("Please select tag to filter..."), list = lst) + + def showTagWarning(self): + self.session.open(MessageBox, _("No tags are set on these movies."), MessageBox.TYPE_ERROR) + + def selectMovieLocation(self, title, callback): + bookmarks = [("("+_("Other")+"...)", None)] + inlist = [] + for d in config.movielist.videodirs.value: + d = os.path.normpath(d) + bookmarks.append((d,d)) + inlist.append(d) + for p in Components.Harddisk.harddiskmanager.getMountedPartitions(): + d = os.path.normpath(p.mountpoint) + if d in inlist: + # improve shortcuts to mountpoints + try: + bookmarks[bookmarks.index((d,d))] = (p.tabbedDescription(), d) + except: + pass # When already listed as some "friendly" name + else: + bookmarks.append((p.tabbedDescription(), d)) + inlist.append(d) + for d in last_selected_dest: + if d not in inlist: + bookmarks.append((d,d)) + self.onMovieSelected = callback + self.movieSelectTitle = title + self.session.openWithCallback(self.gotMovieLocation, ChoiceBox, title=title, list = bookmarks) + + def gotMovieLocation(self, choice): + if not choice: + # cancelled + self.onMovieSelected(None) + del self.onMovieSelected + return + if isinstance(choice, tuple): + if choice[1] is None: + # Display full browser, which returns string + self.session.openWithCallback( + self.gotMovieLocation, + MovieLocationBox, + self.movieSelectTitle, + config.movielist.last_videodir.value + ) + return + choice = choice[1] + choice = os.path.normpath(choice) + self.rememberMovieLocation(choice) + self.onMovieSelected(choice) + del self.onMovieSelected + + def rememberMovieLocation(self, where): + if where in last_selected_dest: + last_selected_dest.remove(where) + last_selected_dest.insert(0, where) + if len(last_selected_dest) > 5: + del last_selected_dest[-1] + + def can_bookmarks(self, item): + return True + def do_bookmarks(self): + self.selectMovieLocation(title=_("Please select the movie path..."), callback=self.gotFilename) + + def can_addbookmark(self, item): + return True + def do_addbookmark(self): + path = config.movielist.last_videodir.value + if path in config.movielist.videodirs.value: + if len(path) > 40: + path = '...' + path[-40:] + self.session.openWithCallback(self.removeBookmark, MessageBox, _("Do you really want to remove your bookmark of %s?") % path) + else: + config.movielist.videodirs.value += [path] + config.movielist.videodirs.save() + def removeBookmark(self, yes): + if not yes: + return + path = config.movielist.last_videodir.value + bookmarks = config.movielist.videodirs.value + bookmarks.remove(path) + config.movielist.videodirs.value = bookmarks + config.movielist.videodirs.save() + + def can_createdir(self, item): + return True + def do_createdir(self): + from Screens.VirtualKeyBoard import VirtualKeyBoard + self.session.openWithCallback(self.createDirCallback, VirtualKeyBoard, + title = _("Please enter name of the new directory"), + text = "") + def createDirCallback(self, name): + if not name: + return + msg = None + try: + path = os.path.join(config.movielist.last_videodir.value, name) + os.mkdir(path) + if not path.endswith('/'): + path += '/' + self.reloadList(sel = eServiceReference("2:0:1:0:0:0:0:0:0:0:" + path)) + except OSError, e: + print "Error %s:" % e.errno, e + if e.errno == 17: + msg = _("The path %s already exists.") % name + else: + msg = _("Error") + '\n' + str(e) + except Exception, e: + print "[ML] Unexpected error:", e + msg = _("Error") + '\n' + str(e) + if msg: + self.session.open(MessageBox, msg, type = MessageBox.TYPE_ERROR, timeout = 5) + + def can_rename(self, item): + return canMove(item) + def do_rename(self): + item = self.getCurrentSelection() + if not canMove(item): + return + if isFolder(item): + p = os.path.split(item[0].getPath()) + if not p[1]: + # if path ends in '/', p is blank. + p = os.path.split(p[0]) + name = p[1] + else: + info = item[1] + name = info.getName(item[0]) + from Screens.VirtualKeyBoard import VirtualKeyBoard + self.session.openWithCallback(self.renameCallback, VirtualKeyBoard, + title = _("Rename"), + text = name) + + def do_decode(self): + from ServiceReference import ServiceReference + item = self.getCurrentSelection() + info = item[1] + serviceref = ServiceReference(None, reftype = eServiceReference.idDVB, path = item[0].getPath()) + name = info.getName(item[0]) + ' - decoded' + description = info.getInfoString(item[0], iServiceInformation.sDescription) + recording = RecordTimer.RecordTimerEntry(serviceref, int(time.time()), int(time.time()) + 3600, name, description, 0, dirname = preferredTimerPath()) + recording.dontSave = True + recording.autoincrease = True + recording.setAutoincreaseEnd() + self.session.nav.RecordTimer.record(recording, ignoreTSC = True) + + def renameCallback(self, name): + if not name: + return + name = name.strip() + item = self.getCurrentSelection() + if item and item[0]: + try: + path = item[0].getPath().rstrip('/') + meta = path + '.meta' + if os.path.isfile(meta): + metafile = open(meta, "r+") + sid = metafile.readline() + oldtitle = metafile.readline() + rest = metafile.read() + metafile.seek(0) + metafile.write("%s%s\n%s" %(sid, name, rest)) + metafile.truncate() + metafile.close() + index = self.list.getCurrentIndex() + info = self.list.list[index] + if hasattr(info[3], 'txt'): + info[3].txt = name + else: + self.list.invalidateCurrentItem() + return + pathname,filename = os.path.split(path) + newpath = os.path.join(pathname, name) + msg = None + print "[ML] rename", path, "to", newpath + os.rename(path, newpath) + self.reloadList(sel = eServiceReference("2:0:1:0:0:0:0:0:0:0:" + newpath)) + except OSError, e: + print "Error %s:" % e.errno, e + if e.errno == 17: + msg = _("The path %s already exists.") % name + else: + msg = _("Error") + '\n' + str(e) + except Exception, e: + import traceback + print "[ML] Unexpected error:", e + traceback.print_exc() + msg = _("Error") + '\n' + str(e) + if msg: + self.session.open(MessageBox, msg, type = MessageBox.TYPE_ERROR, timeout = 5) + + def do_reset(self): + current = self.getCurrent() + if current: + resetMoviePlayState(current.getPath() + ".cuts", current) + self["list"].invalidateCurrentItem() # trigger repaint + + def do_move(self): + item = self.getCurrentSelection() + if canMove(item): + current = item[0] + info = item[1] + if info is None: + # Special case + return + name = info and info.getName(current) or _("this recording") + path = os.path.normpath(current.getPath()) + # show a more limited list of destinations, no point + # in showing mountpoints. + title = _("Select destination for:") + " " + name + bookmarks = [("("+_("Other")+"...)", None)] + inlist = [] + # Subdirs + try: + base = os.path.split(path)[0] + for fn in os.listdir(base): + if not fn.startswith('.'): # Skip hidden things + d = os.path.join(base, fn) + if os.path.isdir(d) and (d not in inlist): + bookmarks.append((fn,d)) + inlist.append(d) + except Exception, e : + print "[MovieSelection]", e + # Last favourites + for d in last_selected_dest: + if d not in inlist: + bookmarks.append((d,d)) + # Other favourites + for d in config.movielist.videodirs.value: + d = os.path.normpath(d) + bookmarks.append((d,d)) + inlist.append(d) + for p in Components.Harddisk.harddiskmanager.getMountedPartitions(): + d = os.path.normpath(p.mountpoint) + if d not in inlist: + bookmarks.append((p.description, d)) + inlist.append(d) + self.onMovieSelected = self.gotMoveMovieDest + self.movieSelectTitle = title + self.session.openWithCallback(self.gotMovieLocation, ChoiceBox, title=title, list=bookmarks) + + def gotMoveMovieDest(self, choice): + if not choice: + return + dest = os.path.normpath(choice) + try: + item = self.getCurrentSelection() + current = item[0] + if item[1] is None: + name = None + else: + name = item[1].getName(current) + moveServiceFiles(current, dest, name) + self["list"].removeService(current) + except Exception, e: + self.session.open(MessageBox, str(e), MessageBox.TYPE_ERROR) + + def can_copy(self, item): + return canCopy(item) + def do_copy(self): + item = self.getCurrentSelection() + if canMove(item): + current = item[0] + info = item[1] + if info is None: + # Special case + return + name = info and info.getName(current) or _("this recording") + self.selectMovieLocation(title=_("Select copy destination for:") + " " + name, callback=self.gotCopyMovieDest) + + def gotCopyMovieDest(self, choice): + if not choice: + return + dest = os.path.normpath(choice) + try: + item = self.getCurrentSelection() + current = item[0] + if item[1] is None: + name = None + else: + name = item[1].getName(current) + copyServiceFiles(current, dest, name) + except Exception, e: + self.session.open(MessageBox, str(e), MessageBox.TYPE_ERROR) + + def stopTimer(self, timer): + if timer.isRunning(): + if timer.repeated: + timer.enable() + timer.processRepeated(findRunningEvent = False) + self.session.nav.RecordTimer.doActivate(timer) + else: + timer.afterEvent = RecordTimer.AFTEREVENT.NONE + NavigationInstance.instance.RecordTimer.removeEntry(timer) + + def onTimerChoice(self, choice): + if isinstance(choice, tuple) and choice[1]: + choice, timer = choice[1] + if not choice: + # cancel + return + if "s" in choice: + self.stopTimer(timer) + if "d" in choice: + self.delete(True) + + def do_delete(self): + self.delete() + + def delete(self, *args): + if args and (not args[0]): + # cancelled by user (passing any arg means it's a dialog return) + return + item = self.getCurrentSelection() + if not canDelete(item): + if item and isTrashFolder(item[0]): + # Red button to empty trashcan... + self.purgeAll() + return + current = item[0] + info = item[1] + cur_path = os.path.realpath(current.getPath()) + st = os.stat(cur_path) + name = info and info.getName(current) or _("this recording") + are_you_sure = _("Do you really want to delete %s?") % (name) + if current.flags & eServiceReference.mustDescent: + files = 0 + subdirs = 0 + if args: + # already confirmed... + # but not implemented yet... + msg = '' + if config.usage.movielist_trashcan.value: + try: + # Move the files to the trash can in a way that their CTIME is + # set to "now". A simple move would not correctly update the + # ctime, and hence trigger a very early purge. + trash = Tools.Trashcan.createTrashFolder(cur_path) + trash = os.path.join(trash, os.path.split(cur_path)[1]) + os.mkdir(trash) + for root, dirnames, filenames in os.walk(cur_path): + trashroot = os.path.join(trash, root[len(cur_path)+1:]) + for fn in filenames: + print "Move %s -> %s" % (os.path.join(root, fn), os.path.join(trashroot, fn)) + os.rename(os.path.join(root, fn), os.path.join(trashroot, fn)) + for dn in dirnames: + print "MkDir", os.path.join(trashroot, dn) + os.mkdir(os.path.join(trashroot, dn)) + # second pass to remove the empty directories + for root, dirnames, filenames in os.walk(cur_path, topdown=False): + for dn in dirnames: + print "rmdir", os.path.join(trashroot, dn) + os.rmdir(os.path.join(root, dn)) + os.rmdir(cur_path) + self["list"].removeService(current) + self.showActionFeedback(_("Deleted") + " " + name) + # Files were moved to .Trash, ok. + return + except OSError, e: + print "[MovieSelection] Cannot move to trash", e + if e.errno == 18: + # This occurs when moving across devices + msg = _("Cannot move files on a different disk or system to the trash can") + ". " + else: + msg = _("Cannot move to trash can") + ".\n" + str(e) + "\n" + except Exception, e: + print "[MovieSelection] Weird error moving to trash", e + # Failed to create trash or move files. + msg = _("Cannot move to trash can") + "\n" + str(e) + "\n" + msg += _("Sorry, deleting directories can (for now) only be done through the trash can.") + self.session.open(MessageBox, msg, MessageBox.TYPE_ERROR) + return + for fn in os.listdir(cur_path): + if (fn != '.') and (fn != '..'): + ffn = os.path.join(cur_path, fn) + if os.path.isdir(ffn): + subdirs += 1 + else: + files += 1 + if files or subdirs: + msg = _("Directory contains %s and %s.") % (ngettext("%d file", "%d files", files) % files, ngettext("%d subdirectory", "%d subdirectories", subdirs) % subdirs) + '\n' + are_you_sure + if isInTrashFolder(current): + # Red button to empty trashcan item or subdir + msg = _("Deleted items") + "\n" + msg + callback = self.purgeConfirmed + else: + callback = self.delete + self.session.openWithCallback(callback, MessageBox, msg) + return + else: + try: + os.rmdir(cur_path) + except Exception, e: + print "[MovieSelection] Failed delete", e + self.session.open(MessageBox, _("Delete failed!") + "\n" + str(e), MessageBox.TYPE_ERROR) + else: + self["list"].removeService(current) + self.showActionFeedback(_("Deleted") + " " + name) + else: + if not args: + rec_filename = os.path.split(current.getPath())[1] + if rec_filename.endswith(".ts"): rec_filename = rec_filename[:-3] + for timer in NavigationInstance.instance.RecordTimer.timer_list: + if timer.isRunning() and not timer.justplay and rec_filename in timer.Filename: + choices = [ + (_("Cancel"), None), + (_("Stop recording"), ("s", timer)), + (_("Stop recording and delete"), ("sd", timer))] + self.session.openWithCallback(self.onTimerChoice, ChoiceBox, title=_("Recording in progress") + ":\n%s" % name, list=choices) + return + if time.time() - st.st_mtime < 5: + if not args: + self.session.openWithCallback(self.delete, MessageBox, _("File appears to be busy.\n") + are_you_sure) + return + if config.usage.movielist_trashcan.value: + try: + trash = Tools.Trashcan.createTrashFolder(cur_path) + # Also check whether we're INSIDE the trash, then it's a purge. + if cur_path.startswith(trash): + msg = _("Deleted items") + "\n" + else: + moveServiceFiles(current, trash, name, allowCopy=False) + self["list"].removeService(current) + # Files were moved to .Trash, ok. + from Screens.InfoBarGenerics import delResumePoint + delResumePoint(current) + self.showActionFeedback(_("Deleted") + " " + name) + return + except OSError, e: + print "[MovieSelection] Cannot move to trash", e + if e.errno == 18: + # This occurs when moving across devices + msg = _("Cannot move files on a different disk or system to the trash can") + ". " + else: + msg = _("Cannot move to trash can") + ".\n" + str(e) + "\n" + except Exception, e: + print "[MovieSelection] Weird error moving to trash", e + # Failed to create trash or move files. + msg = _("Cannot move to trash can") + "\n" + str(e) + "\n" + else: + msg = '' + self.session.openWithCallback(self.deleteConfirmed, MessageBox, msg + are_you_sure) + + def deleteConfirmed(self, confirmed): + if not confirmed: + return + item = self.getCurrentSelection() + if item is None: + return # huh? + current = item[0] + info = item[1] + name = info and info.getName(current) or _("this recording") + serviceHandler = eServiceCenter.getInstance() + offline = serviceHandler.offlineOperations(current) + try: + if offline is None: + from enigma import eBackgroundFileEraser + eBackgroundFileEraser.getInstance().erase(os.path.realpath(current.getPath())) + else: + if offline.deleteFromDisk(0): + raise Exception, "Offline delete failed" + self["list"].removeService(current) + from Screens.InfoBarGenerics import delResumePoint + delResumePoint(current) + self.showActionFeedback(_("Deleted") + " " + name) + except Exception, ex: + self.session.open(MessageBox, _("Delete failed!") + "\n" + name + "\n" + str(ex), MessageBox.TYPE_ERROR) + + + def purgeAll(self): + recordings = self.session.nav.getRecordings() + next_rec_time = -1 + msg = _("Permanently delete all recordings in the trash can?") + if not recordings: + next_rec_time = self.session.nav.RecordTimer.getNextRecordingTime() + if recordings or (next_rec_time > 0 and (next_rec_time - time.time()) < 120): + msg += "\n" + _("Recording(s) are in progress or coming up in few seconds!") + self.session.openWithCallback(self.purgeConfirmed, MessageBox, msg) + + def purgeConfirmed(self, confirmed): + if not confirmed: + return + item = self.getCurrentSelection() + current = item[0] + cur_path = os.path.realpath(current.getPath()) + Tools.Trashcan.cleanAll(cur_path) + + def showNetworkSetup(self): + import NetworkSetup + self.session.open(NetworkSetup.NetworkAdapterSelection) + + def showActionFeedback(self, text): + if self.feedbackTimer is None: + self.feedbackTimer = eTimer() + self.feedbackTimer.callback.append(self.hideActionFeedback) + else: + self.feedbackTimer.stop() + self.feedbackTimer.start(3000, 1) + self.diskinfo.setText(text) + + def hideActionFeedback(self): + print "[ML] hide feedback" + self.diskinfo.update() + + def can_gohome(self, item): + return True + + def do_gohome(self): + self.gotFilename(defaultMoviePath()) + + def do_sort(self): + index = 0 + for index, item in enumerate(l_moviesort): + if int(item[0]) == int(config.movielist.moviesort.value): + break + if index >= len(l_moviesort) - 1: + index = 0 + else: + index += 1 + #descriptions in native languages too long... + sorttext = l_moviesort[index][2] + if config.movielist.btn_red.value == "sort": self['key_red'].setText(sorttext) + if config.movielist.btn_green.value == "sort": self['key_green'].setText(sorttext) + if config.movielist.btn_yellow.value == "sort": self['key_yellow'].setText(sorttext) + if config.movielist.btn_blue.value == "sort": self['key_blue'].setText(sorttext) + self.sorttimer = eTimer() + self.sorttimer.callback.append(self._updateButtonTexts) + self.sorttimer.start(1500, True) #time for displaying sorting type just applied + self.sortBy(int(l_moviesort[index][0])) + self["movie_sort"].setPixmapNum(int(l_moviesort[index][0])-1) + + def do_listtype(self): + index = 0 + for index, item in enumerate(l_listtype): + if int(item[0]) == int(config.movielist.listtype.value): + break + if index >= len(l_listtype) - 1: + index = 0 + else: + index += 1 + self.listType(int(l_listtype[index][0])) + + def do_preview(self): + self.preview() + + def displaySortStatus(self): + self["movie_sort"].setPixmapNum(int(config.movielist.moviesort.value)-1) + self["movie_sort"].show() + + def can_movieoff(self, item): + return True + + def do_movieoff(self): + self.setNextMovieOffStatus() + self.displayMovieOffStatus() + + def displayMovieOffStatus(self): + self["movie_off"].setPixmapNum(config.usage.on_movie_eof.getIndex()) + self["movie_off"].show() + + def setNextMovieOffStatus(self): + config.usage.on_movie_eof.selectNext() + self.settings["movieoff"] = config.usage.on_movie_eof.value + self.saveLocalSettings() + + def can_movieoff_menu(self, item): + return True + + def do_movieoff_menu(self): + current_movie_eof = config.usage.on_movie_eof.value + menu = [] + for x in config.usage.on_movie_eof.choices: + config.usage.on_movie_eof.value = x + menu.append((config.usage.on_movie_eof.getText(), x)) + config.usage.on_movie_eof.value = current_movie_eof + used = config.usage.on_movie_eof.getIndex() + self.session.openWithCallback(self.movieoffMenuCallback, ChoiceBox, title = _("On end of movie"), list = menu, selection = used) + + def movieoffMenuCallback(self, choice): + if choice is None: + return + self.settings["movieoff"] = choice[1] + self.saveLocalSettings() + self.displayMovieOffStatus() + + def createPlaylist(self): + global playlist + items = playlist + del items[:] + for index, item in enumerate(self["list"]): + if item: + item = item[0] + path = item.getPath() + if not item.flags & eServiceReference.mustDescent: + ext = os.path.splitext(path)[1].lower() + if ext in IMAGE_EXTENSIONS: + continue + else: + items.append(item) + +playlist = [] diff --git a/lib/python/Screens/Mute.py b/lib/python/Screens/Mute.py new file mode 100644 index 0000000..f80267a --- /dev/null +++ b/lib/python/Screens/Mute.py @@ -0,0 +1,5 @@ +from Screen import Screen + +class Mute(Screen): + pass + diff --git a/lib/python/Screens/NetworkSetup.py b/lib/python/Screens/NetworkSetup.py new file mode 100644 index 0000000..d63ca69 --- /dev/null +++ b/lib/python/Screens/NetworkSetup.py @@ -0,0 +1,1401 @@ +from Screens.Screen import Screen +from Screens.MessageBox import MessageBox +from Screens.InputBox import InputBox +from Screens.Standby import * +from Screens.VirtualKeyBoard import VirtualKeyBoard +from Screens.HelpMenu import HelpableScreen +from Components.Network import iNetwork +from Components.Sources.StaticText import StaticText +from Components.Sources.Boolean import Boolean +from Components.Sources.List import List +from Components.Label import Label,MultiColorLabel +from Components.Pixmap import Pixmap,MultiPixmap +from Components.MenuList import MenuList +from Components.config import config, ConfigYesNo, ConfigIP, NoSave, ConfigText, ConfigPassword, ConfigSelection, getConfigListEntry, ConfigNothing, ConfigBoolean +from Components.ConfigList import ConfigListScreen +from Components.PluginComponent import plugins +from Components.MultiContent import MultiContentEntryText, MultiContentEntryPixmapAlphaTest +from Components.ActionMap import ActionMap, NumberActionMap, HelpableActionMap +from Tools.Directories import resolveFilename, SCOPE_PLUGINS, SCOPE_CURRENT_SKIN +from Tools.LoadPixmap import LoadPixmap +from Plugins.Plugin import PluginDescriptor +from enigma import eTimer, ePoint, eSize, RT_HALIGN_LEFT, eListboxPythonMultiContent, gFont +from os import path as os_path, system as os_system, unlink +from re import compile as re_compile, search as re_search + + +class NetworkAdapterSelection(Screen,HelpableScreen): + def __init__(self, session): + Screen.__init__(self, session) + HelpableScreen.__init__(self) + + self.wlan_errortext = _("No working wireless network adapter found.\nPlease verify that you have attached a compatible WLAN device and your network is configured correctly.") + self.lan_errortext = _("No working local network adapter found.\nPlease verify that you have attached a network cable and your network is configured correctly.") + self.oktext = _("Press OK on your remote control to continue.") + self.edittext = _("Press OK to edit the settings.") + self.defaulttext = _("Press yellow to set this interface as default interface.") + self.restartLanRef = None + + self["key_red"] = StaticText(_("Close")) + self["key_green"] = StaticText(_("Select")) + self["key_yellow"] = StaticText("") + self["key_blue"] = StaticText("") + self["introduction"] = StaticText(self.edittext) + + self["OkCancelActions"] = HelpableActionMap(self, "OkCancelActions", + { + "cancel": (self.close, _("Exit network interface list")), + "ok": (self.okbuttonClick, _("Select interface")), + }) + + self["ColorActions"] = HelpableActionMap(self, "ColorActions", + { + "red": (self.close, _("Exit network interface list")), + "green": (self.okbuttonClick, _("Select interface")), + "blue": (self.openNetworkWizard, _("Use the network wizard to configure selected network adapter")), + }) + + self["DefaultInterfaceAction"] = HelpableActionMap(self, "ColorActions", + { + "yellow": (self.setDefaultInterface, [_("Set interface as default Interface"),_("* Only available if more than one interface is active.")] ), + }) + + self.adapters = [(iNetwork.getFriendlyAdapterName(x),x) for x in iNetwork.getAdapterList()] + + if not self.adapters: + self.adapters = [(iNetwork.getFriendlyAdapterName(x),x) for x in iNetwork.getConfiguredAdapters()] + + if len(self.adapters) == 0: + self.adapters = [(iNetwork.getFriendlyAdapterName(x),x) for x in iNetwork.getInstalledAdapters()] + + self.list = [] + self["list"] = List(self.list) + self.updateList() + + if len(self.adapters) == 1: + self.onFirstExecBegin.append(self.okbuttonClick) + self.onClose.append(self.cleanup) + + def buildInterfaceList(self,iface,name,default,active ): + divpng = LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/div-h.png")) + defaultpng = None + activepng = None + description = None + interfacepng = None + + if not iNetwork.isWirelessInterface(iface): + if active is True: + interfacepng = LoadPixmap(resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/icons/network_wired-active.png")) + elif active is False: + interfacepng = LoadPixmap(resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/icons/network_wired-inactive.png")) + else: + interfacepng = LoadPixmap(resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/icons/network_wired.png")) + elif iNetwork.isWirelessInterface(iface): + if active is True: + interfacepng = LoadPixmap(resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/icons/network_wireless-active.png")) + elif active is False: + interfacepng = LoadPixmap(resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/icons/network_wireless-inactive.png")) + else: + interfacepng = LoadPixmap(resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/icons/network_wireless.png")) + + num_configured_if = len(iNetwork.getConfiguredAdapters()) + if num_configured_if >= 2: + if default is True: + defaultpng = LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/buttons/button_blue.png")) + elif default is False: + defaultpng = LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/buttons/button_blue_off.png")) + if active is True: + activepng = LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/icons/lock_on.png")) + elif active is False: + activepng = LoadPixmap(cached=True, path=resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/icons/lock_error.png")) + + description = iNetwork.getFriendlyAdapterDescription(iface) + + return((iface, name, description, interfacepng, defaultpng, activepng, divpng)) + + def updateList(self): + self.list = [] + default_gw = None + num_configured_if = len(iNetwork.getConfiguredAdapters()) + if num_configured_if >= 2: + self["key_yellow"].setText(_("Default")) + self["introduction"].setText(self.defaulttext) + self["DefaultInterfaceAction"].setEnabled(True) + else: + self["key_yellow"].setText("") + self["introduction"].setText(self.edittext) + self["DefaultInterfaceAction"].setEnabled(False) + + if num_configured_if < 2 and os_path.exists("/etc/default_gw"): + unlink("/etc/default_gw") + + if os_path.exists("/etc/default_gw"): + fp = file('/etc/default_gw', 'r') + result = fp.read() + fp.close() + default_gw = result + + for x in self.adapters: + if x[1] == default_gw: + default_int = True + else: + default_int = False + if iNetwork.getAdapterAttribute(x[1], 'up') is True: + active_int = True + else: + active_int = False + self.list.append(self.buildInterfaceList(x[1],_(x[0]),default_int,active_int )) + + if os_path.exists(resolveFilename(SCOPE_PLUGINS, "SystemPlugins/NetworkWizard/networkwizard.xml")): + self["key_blue"].setText(_("Network wizard")) + self["list"].setList(self.list) + + def setDefaultInterface(self): + selection = self["list"].getCurrent() + num_if = len(self.list) + old_default_gw = None + num_configured_if = len(iNetwork.getConfiguredAdapters()) + if os_path.exists("/etc/default_gw"): + fp = open('/etc/default_gw', 'r') + old_default_gw = fp.read() + fp.close() + if num_configured_if > 1 and (not old_default_gw or old_default_gw != selection[0]): + fp = open('/etc/default_gw', 'w+') + fp.write(selection[0]) + fp.close() + self.restartLan() + elif old_default_gw and num_configured_if < 2: + unlink("/etc/default_gw") + self.restartLan() + + def okbuttonClick(self): + selection = self["list"].getCurrent() + if selection is not None: + self.session.openWithCallback(self.AdapterSetupClosed, AdapterSetupConfiguration, selection[0]) + + def AdapterSetupClosed(self, *ret): + if len(self.adapters) == 1: + self.close() + else: + self.updateList() + + def cleanup(self): + iNetwork.stopLinkStateConsole() + iNetwork.stopRestartConsole() + iNetwork.stopGetInterfacesConsole() + + def restartLan(self): + iNetwork.restartNetwork(self.restartLanDataAvail) + self.restartLanRef = self.session.openWithCallback(self.restartfinishedCB, MessageBox, _("Please wait while we configure your network..."), type = MessageBox.TYPE_INFO, enable_input = False) + + def restartLanDataAvail(self, data): + if data is True: + iNetwork.getInterfaces(self.getInterfacesDataAvail) + + def getInterfacesDataAvail(self, data): + if data is True: + self.restartLanRef.close(True) + + def restartfinishedCB(self,data): + if data is True: + self.updateList() + self.session.open(MessageBox, _("Finished configuring your network"), type = MessageBox.TYPE_INFO, timeout = 10, default = False) + + def openNetworkWizard(self): + if os_path.exists(resolveFilename(SCOPE_PLUGINS, "SystemPlugins/NetworkWizard/networkwizard.xml")): + try: + from Plugins.SystemPlugins.NetworkWizard.NetworkWizard import NetworkWizard + except ImportError: + self.session.open(MessageBox, _("The network wizard extension is not installed!\nPlease install it."), type = MessageBox.TYPE_INFO,timeout = 10 ) + else: + selection = self["list"].getCurrent() + if selection is not None: + self.session.openWithCallback(self.AdapterSetupClosed, NetworkWizard, selection[0]) + + +class NameserverSetup(Screen, ConfigListScreen, HelpableScreen): + def __init__(self, session): + Screen.__init__(self, session) + HelpableScreen.__init__(self) + self.backupNameserverList = iNetwork.getNameserverList()[:] + print "backup-list:", self.backupNameserverList + + self["key_red"] = StaticText(_("Cancel")) + self["key_green"] = StaticText(_("Add")) + self["key_yellow"] = StaticText(_("Delete")) + + self["introduction"] = StaticText(_("Press OK to activate the settings.")) + self.createConfig() + + self["OkCancelActions"] = HelpableActionMap(self, "OkCancelActions", + { + "cancel": (self.cancel, _("Exit nameserver configuration")), + "ok": (self.ok, _("Activate current configuration")), + }) + + self["ColorActions"] = HelpableActionMap(self, "ColorActions", + { + "red": (self.cancel, _("Exit nameserver configuration")), + "green": (self.add, _("Add a nameserver entry")), + "yellow": (self.remove, _("Remove a nameserver entry")), + }) + + self["actions"] = NumberActionMap(["SetupActions"], + { + "ok": self.ok, + }, -2) + + self.list = [] + ConfigListScreen.__init__(self, self.list) + self.createSetup() + + def createConfig(self): + self.nameservers = iNetwork.getNameserverList() + self.nameserverEntries = [ NoSave(ConfigIP(default=nameserver)) for nameserver in self.nameservers] + + def createSetup(self): + self.list = [] + + i = 1 + for x in self.nameserverEntries: + self.list.append(getConfigListEntry(_("Nameserver %d") % (i), x)) + i += 1 + + self["config"].list = self.list + self["config"].l.setList(self.list) + + def ok(self): + iNetwork.clearNameservers() + for nameserver in self.nameserverEntries: + iNetwork.addNameserver(nameserver.value) + iNetwork.writeNameserverConfig() + self.close() + + def run(self): + self.ok() + + def cancel(self): + iNetwork.clearNameservers() + print "backup-list:", self.backupNameserverList + for nameserver in self.backupNameserverList: + iNetwork.addNameserver(nameserver) + self.close() + + def add(self): + iNetwork.addNameserver([0,0,0,0]) + self.createConfig() + self.createSetup() + + def remove(self): + print "currentIndex:", self["config"].getCurrentIndex() + index = self["config"].getCurrentIndex() + if index < len(self.nameservers): + iNetwork.removeNameserver(self.nameservers[index]) + self.createConfig() + self.createSetup() + + +class AdapterSetup(Screen, ConfigListScreen, HelpableScreen): + def __init__(self, session, networkinfo, essid=None): + Screen.__init__(self, session) + HelpableScreen.__init__(self) + self.session = session + if isinstance(networkinfo, (list, tuple)): + self.iface = networkinfo[0] + self.essid = networkinfo[1] + else: + self.iface = networkinfo + self.essid = essid + + self.extended = None + self.applyConfigRef = None + self.finished_cb = None + self.oktext = _("Press OK on your remote control to continue.") + self.oldInterfaceState = iNetwork.getAdapterAttribute(self.iface, "up") + + self.createConfig() + + self["OkCancelActions"] = HelpableActionMap(self, "OkCancelActions", + { + "cancel": (self.keyCancel, _("exit network adapter configuration")), + "ok": (self.keySave, _("activate network adapter configuration")), + }) + + self["ColorActions"] = HelpableActionMap(self, "ColorActions", + { + "red": (self.keyCancel, _("exit network adapter configuration")), + "blue": (self.KeyBlue, _("open nameserver configuration")), + }) + + self["actions"] = NumberActionMap(["SetupActions"], + { + "ok": self.keySave, + }, -2) + + self.list = [] + ConfigListScreen.__init__(self, self.list,session = self.session) + self.createSetup() + self.onLayoutFinish.append(self.layoutFinished) + self.onClose.append(self.cleanup) + + self["DNS1text"] = StaticText(_("Primary DNS")) + self["DNS2text"] = StaticText(_("Secondary DNS")) + self["DNS1"] = StaticText() + self["DNS2"] = StaticText() + self["introduction"] = StaticText(_("Current settings:")) + + self["IPtext"] = StaticText(_("IP address")) + self["Netmasktext"] = StaticText(_("Netmask")) + self["Gatewaytext"] = StaticText(_("Gateway")) + + self["IP"] = StaticText() + self["Mask"] = StaticText() + self["Gateway"] = StaticText() + + self["Adaptertext"] = StaticText(_("Network:")) + self["Adapter"] = StaticText() + self["introduction2"] = StaticText(_("Press OK to activate the settings.")) + self["key_red"] = StaticText(_("Cancel")) + self["key_blue"] = StaticText(_("Edit DNS")) + + self["VKeyIcon"] = Boolean(False) + self["HelpWindow"] = Pixmap() + self["HelpWindow"].hide() + + def layoutFinished(self): + self["DNS1"].setText(self.primaryDNS.getText()) + self["DNS2"].setText(self.secondaryDNS.getText()) + if self.ipConfigEntry.getText() is not None: + if self.ipConfigEntry.getText() == "0.0.0.0": + self["IP"].setText(_("N/A")) + else: + self["IP"].setText(self.ipConfigEntry.getText()) + else: + self["IP"].setText(_("N/A")) + if self.netmaskConfigEntry.getText() is not None: + if self.netmaskConfigEntry.getText() == "0.0.0.0": + self["Mask"].setText(_("N/A")) + else: + self["Mask"].setText(self.netmaskConfigEntry.getText()) + else: + self["IP"].setText(_("N/A")) + if iNetwork.getAdapterAttribute(self.iface, "gateway"): + if self.gatewayConfigEntry.getText() == "0.0.0.0": + self["Gatewaytext"].setText(_("Gateway")) + self["Gateway"].setText(_("N/A")) + else: + self["Gatewaytext"].setText(_("Gateway")) + self["Gateway"].setText(self.gatewayConfigEntry.getText()) + else: + self["Gateway"].setText("") + self["Gatewaytext"].setText("") + self["Adapter"].setText(iNetwork.getFriendlyAdapterName(self.iface)) + + def createConfig(self): + self.InterfaceEntry = None + self.dhcpEntry = None + self.gatewayEntry = None + self.hiddenSSID = None + self.wlanSSID = None + self.encryption = None + self.encryptionType = None + self.encryptionKey = None + self.encryptionlist = None + self.weplist = None + self.wsconfig = None + self.default = None + + if iNetwork.isWirelessInterface(self.iface): + from Plugins.SystemPlugins.WirelessLan.Wlan import wpaSupplicant + self.ws = wpaSupplicant() + self.encryptionlist = [] + self.encryptionlist.append(("Unencrypted", _("Unencrypted"))) + self.encryptionlist.append(("WEP", _("WEP"))) + self.encryptionlist.append(("WPA", _("WPA"))) + self.encryptionlist.append(("WPA/WPA2", _("WPA or WPA2"))) + self.encryptionlist.append(("WPA2", _("WPA2"))) + self.weplist = [] + self.weplist.append("ASCII") + self.weplist.append("HEX") + + self.wsconfig = self.ws.loadConfig(self.iface) + if self.essid is None: + self.essid = self.wsconfig['ssid'] + + config.plugins.wlan.hiddenessid = NoSave(ConfigYesNo(default = self.wsconfig['hiddenessid'])) + config.plugins.wlan.essid = NoSave(ConfigText(default = self.essid, visible_width = 50, fixed_size = False)) + config.plugins.wlan.encryption = NoSave(ConfigSelection(self.encryptionlist, default = self.wsconfig['encryption'] )) + config.plugins.wlan.wepkeytype = NoSave(ConfigSelection(self.weplist, default = self.wsconfig['wepkeytype'] )) + config.plugins.wlan.psk = NoSave(ConfigPassword(default = self.wsconfig['key'], visible_width = 50, fixed_size = False)) + + self.activateInterfaceEntry = NoSave(ConfigYesNo(default=iNetwork.getAdapterAttribute(self.iface, "up") or False)) + self.dhcpConfigEntry = NoSave(ConfigYesNo(default=iNetwork.getAdapterAttribute(self.iface, "dhcp") or False)) + self.ipConfigEntry = NoSave(ConfigIP(default=iNetwork.getAdapterAttribute(self.iface, "ip")) or [0,0,0,0]) + self.netmaskConfigEntry = NoSave(ConfigIP(default=iNetwork.getAdapterAttribute(self.iface, "netmask") or [255,0,0,0])) + if iNetwork.getAdapterAttribute(self.iface, "gateway"): + self.dhcpdefault=True + else: + self.dhcpdefault=False + self.hasGatewayConfigEntry = NoSave(ConfigYesNo(default=self.dhcpdefault or False)) + self.gatewayConfigEntry = NoSave(ConfigIP(default=iNetwork.getAdapterAttribute(self.iface, "gateway") or [0,0,0,0])) + nameserver = (iNetwork.getNameserverList() + [[0,0,0,0]] * 2)[0:2] + self.primaryDNS = NoSave(ConfigIP(default=nameserver[0])) + self.secondaryDNS = NoSave(ConfigIP(default=nameserver[1])) + + def createSetup(self): + self.list = [] + self.InterfaceEntry = getConfigListEntry(_("Use interface"), self.activateInterfaceEntry) + + self.list.append(self.InterfaceEntry) + if self.activateInterfaceEntry.value: + self.dhcpEntry = getConfigListEntry(_("Use DHCP"), self.dhcpConfigEntry) + self.list.append(self.dhcpEntry) + if not self.dhcpConfigEntry.value: + self.list.append(getConfigListEntry(_('IP address'), self.ipConfigEntry)) + self.list.append(getConfigListEntry(_('Netmask'), self.netmaskConfigEntry)) + self.gatewayEntry = getConfigListEntry(_('Use a gateway'), self.hasGatewayConfigEntry) + self.list.append(self.gatewayEntry) + if self.hasGatewayConfigEntry.value: + self.list.append(getConfigListEntry(_('Gateway'), self.gatewayConfigEntry)) + if SystemInfo["WakeOnLAN"] and self.iface == 'eth0': + self.list.append(getConfigListEntry(_('Enable Wake On LAN'), config.usage.wakeOnLAN)) + + self.extended = None + self.configStrings = None + for p in plugins.getPlugins(PluginDescriptor.WHERE_NETWORKSETUP): + callFnc = p.__call__["ifaceSupported"](self.iface) + if callFnc is not None: + if p.__call__.has_key("WlanPluginEntry"): # internally used only for WLAN Plugin + self.extended = callFnc + if p.__call__.has_key("configStrings"): + self.configStrings = p.__call__["configStrings"] + + self.hiddenSSID = getConfigListEntry(_("Hidden network"), config.plugins.wlan.hiddenessid) + self.list.append(self.hiddenSSID) + self.wlanSSID = getConfigListEntry(_("Network name (SSID)"), config.plugins.wlan.essid) + self.list.append(self.wlanSSID) + self.encryption = getConfigListEntry(_("Encryption"), config.plugins.wlan.encryption) + self.list.append(self.encryption) + + self.encryptionType = getConfigListEntry(_("Encryption key type"), config.plugins.wlan.wepkeytype) + self.encryptionKey = getConfigListEntry(_("Encryption key"), config.plugins.wlan.psk) + + if config.plugins.wlan.encryption.value != "Unencrypted": + if config.plugins.wlan.encryption.value == 'WEP': + self.list.append(self.encryptionType) + self.list.append(self.encryptionKey) + self["config"].list = self.list + self["config"].l.setList(self.list) + + def KeyBlue(self): + self.session.openWithCallback(self.NameserverSetupClosed, NameserverSetup) + + def newConfig(self): + if self["config"].getCurrent() == self.InterfaceEntry: + self.createSetup() + if self["config"].getCurrent() == self.dhcpEntry: + self.createSetup() + if self["config"].getCurrent() == self.gatewayEntry: + self.createSetup() + if iNetwork.isWirelessInterface(self.iface): + if self["config"].getCurrent() == self.encryption: + self.createSetup() + + def keyLeft(self): + ConfigListScreen.keyLeft(self) + self.newConfig() + + def keyRight(self): + ConfigListScreen.keyRight(self) + self.newConfig() + + def keySave(self): + if SystemInfo["WakeOnLAN"]: + config.usage.wakeOnLAN.save() + self.hideInputHelp() + if self["config"].isChanged(): + self.session.openWithCallback(self.keySaveConfirm, MessageBox, (_("Are you sure you want to activate this network configuration?\n\n") + self.oktext ) ) + else: + if self.finished_cb: + self.finished_cb() + else: + self.close('cancel') + + def keySaveConfirm(self, ret = False): + if (ret == True): + num_configured_if = len(iNetwork.getConfiguredAdapters()) + if num_configured_if >= 1: + if self.iface in iNetwork.getConfiguredAdapters(): + self.applyConfig(True) + else: + self.session.openWithCallback(self.secondIfaceFoundCB, MessageBox, _("A second configured interface has been found.\n\nDo you want to disable the second network interface?"), default = True) + else: + self.applyConfig(True) + else: + self.keyCancel() + + def secondIfaceFoundCB(self,data): + if data is False: + self.applyConfig(True) + else: + configuredInterfaces = iNetwork.getConfiguredAdapters() + for interface in configuredInterfaces: + if interface == self.iface: + continue + iNetwork.setAdapterAttribute(interface, "up", False) + iNetwork.deactivateInterface(configuredInterfaces,self.deactivateSecondInterfaceCB) + + def deactivateSecondInterfaceCB(self, data): + if data is True: + self.applyConfig(True) + + def applyConfig(self, ret = False): + if (ret == True): + self.applyConfigRef = None + iNetwork.setAdapterAttribute(self.iface, "up", self.activateInterfaceEntry.value) + iNetwork.setAdapterAttribute(self.iface, "dhcp", self.dhcpConfigEntry.value) + iNetwork.setAdapterAttribute(self.iface, "ip", self.ipConfigEntry.value) + iNetwork.setAdapterAttribute(self.iface, "netmask", self.netmaskConfigEntry.value) + if self.hasGatewayConfigEntry.value: + iNetwork.setAdapterAttribute(self.iface, "gateway", self.gatewayConfigEntry.value) + else: + iNetwork.removeAdapterAttribute(self.iface, "gateway") + + if (self.extended is not None and self.configStrings is not None): + iNetwork.setAdapterAttribute(self.iface, "configStrings", self.configStrings(self.iface)) + self.ws.writeConfig(self.iface) + + if self.activateInterfaceEntry.value is False: + iNetwork.deactivateInterface(self.iface,self.deactivateInterfaceCB) + iNetwork.writeNetworkConfig() + self.applyConfigRef = self.session.openWithCallback(self.applyConfigfinishedCB, MessageBox, _("Please wait for activation of your network configuration..."), type = MessageBox.TYPE_INFO, enable_input = False) + else: + if self.oldInterfaceState is False: + iNetwork.activateInterface(self.iface,self.deactivateInterfaceCB) + else: + iNetwork.deactivateInterface(self.iface,self.activateInterfaceCB) + iNetwork.writeNetworkConfig() + self.applyConfigRef = self.session.openWithCallback(self.applyConfigfinishedCB, MessageBox, _("Please wait for activation of your network configuration..."), type = MessageBox.TYPE_INFO, enable_input = False) + else: + self.keyCancel() + + def deactivateInterfaceCB(self, data): + if data is True: + self.applyConfigDataAvail(True) + + def activateInterfaceCB(self, data): + if data is True: + iNetwork.activateInterface(self.iface,self.applyConfigDataAvail) + + def applyConfigDataAvail(self, data): + if data is True: + iNetwork.getInterfaces(self.getInterfacesDataAvail) + + def getInterfacesDataAvail(self, data): + if data is True: + self.applyConfigRef.close(True) + + def applyConfigfinishedCB(self,data): + if data is True: + if self.finished_cb: + self.session.openWithCallback(lambda x : self.finished_cb(), MessageBox, _("Your network configuration has been activated."), type = MessageBox.TYPE_INFO, timeout = 10) + else: + self.session.openWithCallback(self.ConfigfinishedCB, MessageBox, _("Your network configuration has been activated."), type = MessageBox.TYPE_INFO, timeout = 10) + + def ConfigfinishedCB(self,data): + if data is not None: + if data is True: + self.close('ok') + + def keyCancelConfirm(self, result): + if not result: + return + if self.oldInterfaceState is False: + iNetwork.deactivateInterface(self.iface,self.keyCancelCB) + else: + self.close('cancel') + + def keyCancel(self): + self.hideInputHelp() + if self["config"].isChanged(): + self.session.openWithCallback(self.keyCancelConfirm, MessageBox, _("Really close without saving settings?")) + else: + self.close('cancel') + + def keyCancelCB(self,data): + if data is not None: + if data is True: + self.close('cancel') + + def runAsync(self, finished_cb): + self.finished_cb = finished_cb + self.keySave() + + def NameserverSetupClosed(self, *ret): + iNetwork.loadNameserverConfig() + nameserver = (iNetwork.getNameserverList() + [[0,0,0,0]] * 2)[0:2] + self.primaryDNS = NoSave(ConfigIP(default=nameserver[0])) + self.secondaryDNS = NoSave(ConfigIP(default=nameserver[1])) + self.createSetup() + self.layoutFinished() + + def cleanup(self): + iNetwork.stopLinkStateConsole() + + def hideInputHelp(self): + current = self["config"].getCurrent() + if current == self.wlanSSID: + if current[1].help_window.instance is not None: + current[1].help_window.instance.hide() + elif current == self.encryptionKey and config.plugins.wlan.encryption.value is not "Unencrypted": + if current[1].help_window.instance is not None: + current[1].help_window.instance.hide() + + +class AdapterSetupConfiguration(Screen, HelpableScreen): + def __init__(self, session,iface): + Screen.__init__(self, session) + HelpableScreen.__init__(self) + self.session = session + self.iface = iface + self.restartLanRef = None + self.LinkState = None + self.mainmenu = self.genMainMenu() + self["menulist"] = MenuList(self.mainmenu) + self["key_red"] = StaticText(_("Close")) + self["description"] = StaticText() + self["IFtext"] = StaticText() + self["IF"] = StaticText() + self["Statustext"] = StaticText() + self["statuspic"] = MultiPixmap() + self["statuspic"].hide() + + self.oktext = _("Press OK on your remote control to continue.") + self.reboottext = _("Your receiver will restart after pressing OK on your remote control.") + self.errortext = _("No working wireless network interface found.\n Please verify that you have attached a compatible WLAN device or enable your local network interface.") + self.missingwlanplugintxt = _("The wireless LAN plugin is not installed!\nPlease install it.") + + self["WizardActions"] = HelpableActionMap(self, "WizardActions", + { + "up": (self.up, _("move up to previous entry")), + "down": (self.down, _("move down to next entry")), + "left": (self.left, _("move up to first entry")), + "right": (self.right, _("move down to last entry")), + }) + + self["OkCancelActions"] = HelpableActionMap(self, "OkCancelActions", + { + "cancel": (self.close, _("exit networkadapter setup menu")), + "ok": (self.ok, _("select menu entry")), + }) + + self["ColorActions"] = HelpableActionMap(self, "ColorActions", + { + "red": (self.close, _("exit networkadapter setup menu")), + }) + + self["actions"] = NumberActionMap(["WizardActions","ShortcutActions"], + { + "ok": self.ok, + "back": self.close, + "up": self.up, + "down": self.down, + "red": self.close, + "left": self.left, + "right": self.right, + }, -2) + + self.updateStatusbar() + self.onLayoutFinish.append(self.layoutFinished) + self.onClose.append(self.cleanup) + + + def queryWirelessDevice(self,iface): + try: + from pythonwifi.iwlibs import Wireless + import errno + except ImportError: + return False + else: + try: + ifobj = Wireless(iface) # a Wireless NIC Object + wlanresponse = ifobj.getAPaddr() + except IOError, (error_no, error_str): + if error_no in (errno.EOPNOTSUPP, errno.ENODEV, errno.EPERM): + return False + else: + print "error: ",error_no,error_str + return True + else: + return True + + def ok(self): + self.cleanup() + if self["menulist"].getCurrent()[1] == 'edit': + if iNetwork.isWirelessInterface(self.iface): + try: + from Plugins.SystemPlugins.WirelessLan.plugin import WlanScan + except ImportError: + self.session.open(MessageBox, self.missingwlanplugintxt, type = MessageBox.TYPE_INFO,timeout = 10 ) + else: + if self.queryWirelessDevice(self.iface): + self.session.openWithCallback(self.AdapterSetupClosed, AdapterSetup,self.iface) + else: + self.showErrorMessage() # Display Wlan not available Message + else: + self.session.openWithCallback(self.AdapterSetupClosed, AdapterSetup,self.iface) + if self["menulist"].getCurrent()[1] == 'test': + self.session.open(NetworkAdapterTest,self.iface) + if self["menulist"].getCurrent()[1] == 'dns': + self.session.open(NameserverSetup) + if self["menulist"].getCurrent()[1] == 'scanwlan': + try: + from Plugins.SystemPlugins.WirelessLan.plugin import WlanScan + except ImportError: + self.session.open(MessageBox, self.missingwlanplugintxt, type = MessageBox.TYPE_INFO,timeout = 10 ) + else: + if self.queryWirelessDevice(self.iface): + self.session.openWithCallback(self.WlanScanClosed, WlanScan, self.iface) + else: + self.showErrorMessage() # Display Wlan not available Message + if self["menulist"].getCurrent()[1] == 'wlanstatus': + try: + from Plugins.SystemPlugins.WirelessLan.plugin import WlanStatus + except ImportError: + self.session.open(MessageBox, self.missingwlanplugintxt, type = MessageBox.TYPE_INFO,timeout = 10 ) + else: + if self.queryWirelessDevice(self.iface): + self.session.openWithCallback(self.WlanStatusClosed, WlanStatus,self.iface) + else: + self.showErrorMessage() # Display Wlan not available Message + if self["menulist"].getCurrent()[1] == 'lanrestart': + self.session.openWithCallback(self.restartLan, MessageBox, (_("Are you sure you want to restart your network interfaces?\n\n") + self.oktext ) ) + if self["menulist"].getCurrent()[1] == 'openwizard': + from Plugins.SystemPlugins.NetworkWizard.NetworkWizard import NetworkWizard + self.session.openWithCallback(self.AdapterSetupClosed, NetworkWizard, self.iface) + if self["menulist"].getCurrent()[1][0] == 'extendedSetup': + self.extended = self["menulist"].getCurrent()[1][2] + self.extended(self.session, self.iface) + + def up(self): + self["menulist"].up() + self.loadDescription() + + def down(self): + self["menulist"].down() + self.loadDescription() + + def left(self): + self["menulist"].pageUp() + self.loadDescription() + + def right(self): + self["menulist"].pageDown() + self.loadDescription() + + def layoutFinished(self): + idx = 0 + self["menulist"].moveToIndex(idx) + self.loadDescription() + + def loadDescription(self): + if self["menulist"].getCurrent()[1] == 'edit': + self["description"].setText(_("Edit the network configuration of your receiver.\n" ) + self.oktext ) + if self["menulist"].getCurrent()[1] == 'test': + self["description"].setText(_("Test the network configuration of your receiver.\n" ) + self.oktext ) + if self["menulist"].getCurrent()[1] == 'dns': + self["description"].setText(_("Edit the nameserver configuration of your receiver.\n" ) + self.oktext ) + if self["menulist"].getCurrent()[1] == 'scanwlan': + self["description"].setText(_("Scan your network for wireless access points and connect to them using your selected wireless device.\n" ) + self.oktext ) + if self["menulist"].getCurrent()[1] == 'wlanstatus': + self["description"].setText(_("Shows the state of your wireless LAN connection.\n" ) + self.oktext ) + if self["menulist"].getCurrent()[1] == 'lanrestart': + self["description"].setText(_("Restart your network connection and interfaces.\n" ) + self.oktext ) + if self["menulist"].getCurrent()[1] == 'openwizard': + self["description"].setText(_("Use the network wizard to configure your network\n" ) + self.oktext ) + if self["menulist"].getCurrent()[1][0] == 'extendedSetup': + self["description"].setText(_(self["menulist"].getCurrent()[1][1]) + self.oktext ) + + def updateStatusbar(self, data = None): + self.mainmenu = self.genMainMenu() + self["menulist"].l.setList(self.mainmenu) + self["IFtext"].setText(_("Network:")) + self["IF"].setText(iNetwork.getFriendlyAdapterName(self.iface)) + self["Statustext"].setText(_("Link:")) + + if iNetwork.isWirelessInterface(self.iface): + try: + from Plugins.SystemPlugins.WirelessLan.Wlan import iStatus + except: + self["statuspic"].setPixmapNum(1) + self["statuspic"].show() + else: + iStatus.getDataForInterface(self.iface,self.getInfoCB) + else: + iNetwork.getLinkState(self.iface,self.dataAvail) + + def doNothing(self): + pass + + def genMainMenu(self): + menu = [] + menu.append((_("Adapter settings"), "edit")) + menu.append((_("Nameserver settings"), "dns")) + menu.append((_("Network test"), "test")) + menu.append((_("Restart network"), "lanrestart")) + + self.extended = None + self.extendedSetup = None + for p in plugins.getPlugins(PluginDescriptor.WHERE_NETWORKSETUP): + callFnc = p.__call__["ifaceSupported"](self.iface) + if callFnc is not None: + self.extended = callFnc + if p.__call__.has_key("WlanPluginEntry"): # internally used only for WLAN Plugin + menu.append((_("Scan wireless networks"), "scanwlan")) + if iNetwork.getAdapterAttribute(self.iface, "up"): + menu.append((_("Show WLAN status"), "wlanstatus")) + else: + if p.__call__.has_key("menuEntryName"): + menuEntryName = p.__call__["menuEntryName"](self.iface) + else: + menuEntryName = _('Extended setup...') + if p.__call__.has_key("menuEntryDescription"): + menuEntryDescription = p.__call__["menuEntryDescription"](self.iface) + else: + menuEntryDescription = _('Extended network setup plugin...') + self.extendedSetup = ('extendedSetup',menuEntryDescription, self.extended) + menu.append((menuEntryName,self.extendedSetup)) + + if os_path.exists(resolveFilename(SCOPE_PLUGINS, "SystemPlugins/NetworkWizard/networkwizard.xml")): + menu.append((_("Network wizard"), "openwizard")) + + return menu + + def AdapterSetupClosed(self, *ret): + if ret is not None and len(ret): + if ret[0] == 'ok' and (iNetwork.isWirelessInterface(self.iface) and iNetwork.getAdapterAttribute(self.iface, "up") is True): + try: + from Plugins.SystemPlugins.WirelessLan.plugin import WlanStatus + except ImportError: + self.session.open(MessageBox, self.missingwlanplugintxt, type = MessageBox.TYPE_INFO,timeout = 10 ) + else: + if self.queryWirelessDevice(self.iface): + self.session.openWithCallback(self.WlanStatusClosed, WlanStatus,self.iface) + else: + self.showErrorMessage() # Display Wlan not available Message + else: + self.updateStatusbar() + else: + self.updateStatusbar() + + def WlanStatusClosed(self, *ret): + if ret is not None and len(ret): + from Plugins.SystemPlugins.WirelessLan.Wlan import iStatus + iStatus.stopWlanConsole() + self.updateStatusbar() + + def WlanScanClosed(self,*ret): + if ret[0] is not None: + self.session.openWithCallback(self.AdapterSetupClosed, AdapterSetup, self.iface,ret[0]) + else: + from Plugins.SystemPlugins.WirelessLan.Wlan import iStatus + iStatus.stopWlanConsole() + self.updateStatusbar() + + def restartLan(self, ret = False): + if (ret == True): + iNetwork.restartNetwork(self.restartLanDataAvail) + self.restartLanRef = self.session.openWithCallback(self.restartfinishedCB, MessageBox, _("Please wait while your network is restarting..."), type = MessageBox.TYPE_INFO, enable_input = False) + + def restartLanDataAvail(self, data): + if data is True: + iNetwork.getInterfaces(self.getInterfacesDataAvail) + + def getInterfacesDataAvail(self, data): + if data is True: + self.restartLanRef.close(True) + + def restartfinishedCB(self,data): + if data is True: + self.updateStatusbar() + self.session.open(MessageBox, _("Finished restarting your network"), type = MessageBox.TYPE_INFO, timeout = 10, default = False) + + def dataAvail(self,data): + self.LinkState = None + for line in data.splitlines(): + line = line.strip() + if 'Link detected:' in line: + if "yes" in line: + self.LinkState = True + else: + self.LinkState = False + if self.LinkState == True: + iNetwork.checkNetworkState(self.checkNetworkCB) + else: + self["statuspic"].setPixmapNum(1) + self["statuspic"].show() + + def showErrorMessage(self): + self.session.open(MessageBox, self.errortext, type = MessageBox.TYPE_INFO,timeout = 10 ) + + def cleanup(self): + iNetwork.stopLinkStateConsole() + iNetwork.stopDeactivateInterfaceConsole() + iNetwork.stopActivateInterfaceConsole() + iNetwork.stopPingConsole() + try: + from Plugins.SystemPlugins.WirelessLan.Wlan import iStatus + except ImportError: + pass + else: + iStatus.stopWlanConsole() + + def getInfoCB(self,data,status): + self.LinkState = None + if data is not None: + if data is True: + if status is not None: + if status[self.iface]["essid"] == "off" or status[self.iface]["accesspoint"] == "Not-Associated" or status[self.iface]["accesspoint"] == False: + self.LinkState = False + self["statuspic"].setPixmapNum(1) + self["statuspic"].show() + else: + self.LinkState = True + iNetwork.checkNetworkState(self.checkNetworkCB) + + def checkNetworkCB(self,data): + if iNetwork.getAdapterAttribute(self.iface, "up") is True: + if self.LinkState is True: + if data <= 2: + self["statuspic"].setPixmapNum(0) + else: + self["statuspic"].setPixmapNum(1) + self["statuspic"].show() + else: + self["statuspic"].setPixmapNum(1) + self["statuspic"].show() + else: + self["statuspic"].setPixmapNum(1) + self["statuspic"].show() + + +class NetworkAdapterTest(Screen): + def __init__(self, session,iface): + Screen.__init__(self, session) + self.iface = iface + self.oldInterfaceState = iNetwork.getAdapterAttribute(self.iface, "up") + self.setLabels() + self.onClose.append(self.cleanup) + self.onHide.append(self.cleanup) + + self["updown_actions"] = NumberActionMap(["WizardActions","ShortcutActions"], + { + "ok": self.KeyOK, + "blue": self.KeyOK, + "up": lambda: self.updownhandler('up'), + "down": lambda: self.updownhandler('down'), + + }, -2) + + self["shortcuts"] = ActionMap(["ShortcutActions","WizardActions"], + { + "red": self.cancel, + "back": self.cancel, + }, -2) + self["infoshortcuts"] = ActionMap(["ShortcutActions","WizardActions"], + { + "red": self.closeInfo, + "back": self.closeInfo, + }, -2) + self["shortcutsgreen"] = ActionMap(["ShortcutActions"], + { + "green": self.KeyGreen, + }, -2) + self["shortcutsgreen_restart"] = ActionMap(["ShortcutActions"], + { + "green": self.KeyGreenRestart, + }, -2) + self["shortcutsyellow"] = ActionMap(["ShortcutActions"], + { + "yellow": self.KeyYellow, + }, -2) + + self["shortcutsgreen_restart"].setEnabled(False) + self["updown_actions"].setEnabled(False) + self["infoshortcuts"].setEnabled(False) + self.onClose.append(self.delTimer) + self.onLayoutFinish.append(self.layoutFinished) + self.steptimer = False + self.nextstep = 0 + self.activebutton = 0 + self.nextStepTimer = eTimer() + self.nextStepTimer.callback.append(self.nextStepTimerFire) + + def cancel(self): + if self.oldInterfaceState is False: + iNetwork.setAdapterAttribute(self.iface, "up", self.oldInterfaceState) + iNetwork.deactivateInterface(self.iface) + self.close() + + def closeInfo(self): + self["shortcuts"].setEnabled(True) + self["infoshortcuts"].setEnabled(False) + self["InfoText"].hide() + self["InfoTextBorder"].hide() + self["key_red"].setText(_("Close")) + + def delTimer(self): + del self.steptimer + del self.nextStepTimer + + def nextStepTimerFire(self): + self.nextStepTimer.stop() + self.steptimer = False + self.runTest() + + def updownhandler(self,direction): + if direction == 'up': + if self.activebutton >=2: + self.activebutton -= 1 + else: + self.activebutton = 6 + self.setActiveButton(self.activebutton) + if direction == 'down': + if self.activebutton <=5: + self.activebutton += 1 + else: + self.activebutton = 1 + self.setActiveButton(self.activebutton) + + def setActiveButton(self,button): + if button == 1: + self["EditSettingsButton"].setPixmapNum(0) + self["EditSettings_Text"].setForegroundColorNum(0) + self["NetworkInfo"].setPixmapNum(0) + self["NetworkInfo_Text"].setForegroundColorNum(1) + self["AdapterInfo"].setPixmapNum(1) # active + self["AdapterInfo_Text"].setForegroundColorNum(2) # active + if button == 2: + self["AdapterInfo_Text"].setForegroundColorNum(1) + self["AdapterInfo"].setPixmapNum(0) + self["DhcpInfo"].setPixmapNum(0) + self["DhcpInfo_Text"].setForegroundColorNum(1) + self["NetworkInfo"].setPixmapNum(1) # active + self["NetworkInfo_Text"].setForegroundColorNum(2) # active + if button == 3: + self["NetworkInfo"].setPixmapNum(0) + self["NetworkInfo_Text"].setForegroundColorNum(1) + self["IPInfo"].setPixmapNum(0) + self["IPInfo_Text"].setForegroundColorNum(1) + self["DhcpInfo"].setPixmapNum(1) # active + self["DhcpInfo_Text"].setForegroundColorNum(2) # active + if button == 4: + self["DhcpInfo"].setPixmapNum(0) + self["DhcpInfo_Text"].setForegroundColorNum(1) + self["DNSInfo"].setPixmapNum(0) + self["DNSInfo_Text"].setForegroundColorNum(1) + self["IPInfo"].setPixmapNum(1) # active + self["IPInfo_Text"].setForegroundColorNum(2) # active + if button == 5: + self["IPInfo"].setPixmapNum(0) + self["IPInfo_Text"].setForegroundColorNum(1) + self["EditSettingsButton"].setPixmapNum(0) + self["EditSettings_Text"].setForegroundColorNum(0) + self["DNSInfo"].setPixmapNum(1) # active + self["DNSInfo_Text"].setForegroundColorNum(2) # active + if button == 6: + self["DNSInfo"].setPixmapNum(0) + self["DNSInfo_Text"].setForegroundColorNum(1) + self["EditSettingsButton"].setPixmapNum(1) # active + self["EditSettings_Text"].setForegroundColorNum(2) # active + self["AdapterInfo"].setPixmapNum(0) + self["AdapterInfo_Text"].setForegroundColorNum(1) + + def runTest(self): + next = self.nextstep + if next == 0: + self.doStep1() + elif next == 1: + self.doStep2() + elif next == 2: + self.doStep3() + elif next == 3: + self.doStep4() + elif next == 4: + self.doStep5() + elif next == 5: + self.doStep6() + self.nextstep += 1 + + def doStep1(self): + self.steptimer = True + self.nextStepTimer.start(300) + self["key_yellow"].setText(_("Stop test")) + + def doStep2(self): + self["Adapter"].setText(iNetwork.getFriendlyAdapterName(self.iface)) + self["Adapter"].setForegroundColorNum(2) + self["Adaptertext"].setForegroundColorNum(1) + self["AdapterInfo_Text"].setForegroundColorNum(1) + self["AdapterInfo_OK"].show() + self.steptimer = True + self.nextStepTimer.start(300) + + def doStep3(self): + self["Networktext"].setForegroundColorNum(1) + self["Network"].setText(_("Please wait...")) + self.getLinkState(self.iface) + self["NetworkInfo_Text"].setForegroundColorNum(1) + self.steptimer = True + self.nextStepTimer.start(1000) + + def doStep4(self): + self["Dhcptext"].setForegroundColorNum(1) + if iNetwork.getAdapterAttribute(self.iface, 'dhcp') is True: + self["Dhcp"].setForegroundColorNum(2) + self["Dhcp"].setText(_("enabled")) + self["DhcpInfo_Check"].setPixmapNum(0) + else: + self["Dhcp"].setForegroundColorNum(1) + self["Dhcp"].setText(_("disabled")) + self["DhcpInfo_Check"].setPixmapNum(1) + self["DhcpInfo_Check"].show() + self["DhcpInfo_Text"].setForegroundColorNum(1) + self.steptimer = True + self.nextStepTimer.start(1000) + + def doStep5(self): + self["IPtext"].setForegroundColorNum(1) + self["IP"].setText(_("Please wait...")) + iNetwork.checkNetworkState(self.NetworkStatedataAvail) + + def doStep6(self): + self.steptimer = False + self.nextStepTimer.stop() + self["DNStext"].setForegroundColorNum(1) + self["DNS"].setText(_("Please wait...")) + iNetwork.checkDNSLookup(self.DNSLookupdataAvail) + + def KeyGreen(self): + self["shortcutsgreen"].setEnabled(False) + self["shortcutsyellow"].setEnabled(True) + self["updown_actions"].setEnabled(False) + self["key_yellow"].setText("") + self["key_green"].setText("") + self.steptimer = True + self.nextStepTimer.start(1000) + + def KeyGreenRestart(self): + self.nextstep = 0 + self.layoutFinished() + self["Adapter"].setText(("")) + self["Network"].setText(("")) + self["Dhcp"].setText(("")) + self["IP"].setText(("")) + self["DNS"].setText(("")) + self["AdapterInfo_Text"].setForegroundColorNum(0) + self["NetworkInfo_Text"].setForegroundColorNum(0) + self["DhcpInfo_Text"].setForegroundColorNum(0) + self["IPInfo_Text"].setForegroundColorNum(0) + self["DNSInfo_Text"].setForegroundColorNum(0) + self["shortcutsgreen_restart"].setEnabled(False) + self["shortcutsgreen"].setEnabled(False) + self["shortcutsyellow"].setEnabled(True) + self["updown_actions"].setEnabled(False) + self["key_yellow"].setText("") + self["key_green"].setText("") + self.steptimer = True + self.nextStepTimer.start(1000) + + def KeyOK(self): + self["infoshortcuts"].setEnabled(True) + self["shortcuts"].setEnabled(False) + if self.activebutton == 1: # Adapter Check + self["InfoText"].setText(_("This test detects your configured LAN adapter.")) + self["InfoTextBorder"].show() + self["InfoText"].show() + self["key_red"].setText(_("Back")) + if self.activebutton == 2: #LAN Check + self["InfoText"].setText(_("This test checks whether a network cable is connected to your LAN adapter.\nIf you get a \"disconnected\" message:\n- verify that a network cable is attached\n- verify that the cable is not broken")) + self["InfoTextBorder"].show() + self["InfoText"].show() + self["key_red"].setText(_("Back")) + if self.activebutton == 3: #DHCP Check + self["InfoText"].setText(_("This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\nIf you get a \"disabled\" message:\n - then your LAN adapter is configured for manual IP setup\n- verify thay you have entered correct IP informations in the adapter setup dialog.\nIf you get an \"enabeld\" message:\n-verify that you have a configured and working DHCP server in your network.")) + self["InfoTextBorder"].show() + self["InfoText"].show() + self["key_red"].setText(_("Back")) + if self.activebutton == 4: # IP Check + self["InfoText"].setText(_("This test checks whether a valid IP address is found for your LAN adapter.\nIf you get a \"unconfirmed\" message:\n- no valid IP address was found\n- please check your DHCP, cabling and adapter setup")) + self["InfoTextBorder"].show() + self["InfoText"].show() + self["key_red"].setText(_("Back")) + if self.activebutton == 5: # DNS Check + self["InfoText"].setText(_("This test checks for configured nameservers.\nIf you get a \"unconfirmed\" message:\n- please check your DHCP, cabling and adapter setup\n- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration")) + self["InfoTextBorder"].show() + self["InfoText"].show() + self["key_red"].setText(_("Back")) + if self.activebutton == 6: # Edit Settings + self.session.open(AdapterSetup,self.iface) + + def KeyYellow(self): + self.nextstep = 0 + self["shortcutsgreen_restart"].setEnabled(True) + self["shortcutsgreen"].setEnabled(False) + self["shortcutsyellow"].setEnabled(False) + self["key_green"].setText(_("Restart test")) + self["key_yellow"].setText("") + self.steptimer = False + self.nextStepTimer.stop() + + def layoutFinished(self): + self.setTitle(_("Network test: ") + iNetwork.getFriendlyAdapterName(self.iface) ) + self["shortcutsyellow"].setEnabled(False) + self["AdapterInfo_OK"].hide() + self["NetworkInfo_Check"].hide() + self["DhcpInfo_Check"].hide() + self["IPInfo_Check"].hide() + self["DNSInfo_Check"].hide() + self["EditSettings_Text"].hide() + self["EditSettingsButton"].hide() + self["InfoText"].hide() + self["InfoTextBorder"].hide() + self["key_yellow"].setText("") + + def setLabels(self): + self["Adaptertext"] = MultiColorLabel(_("LAN adapter")) + self["Adapter"] = MultiColorLabel() + self["AdapterInfo"] = MultiPixmap() + self["AdapterInfo_Text"] = MultiColorLabel(_("Show info")) + self["AdapterInfo_OK"] = Pixmap() + + if self.iface in iNetwork.wlan_interfaces: + self["Networktext"] = MultiColorLabel(_("Wireless network")) + else: + self["Networktext"] = MultiColorLabel(_("Local network")) + + self["Network"] = MultiColorLabel() + self["NetworkInfo"] = MultiPixmap() + self["NetworkInfo_Text"] = MultiColorLabel(_("Show info")) + self["NetworkInfo_Check"] = MultiPixmap() + + self["Dhcptext"] = MultiColorLabel(_("DHCP")) + self["Dhcp"] = MultiColorLabel() + self["DhcpInfo"] = MultiPixmap() + self["DhcpInfo_Text"] = MultiColorLabel(_("Show info")) + self["DhcpInfo_Check"] = MultiPixmap() + + self["IPtext"] = MultiColorLabel(_("IP address")) + self["IP"] = MultiColorLabel() + self["IPInfo"] = MultiPixmap() + self["IPInfo_Text"] = MultiColorLabel(_("Show info")) + self["IPInfo_Check"] = MultiPixmap() + + self["DNStext"] = MultiColorLabel(_("Nameserver")) + self["DNS"] = MultiColorLabel() + self["DNSInfo"] = MultiPixmap() + self["DNSInfo_Text"] = MultiColorLabel(_("Show info")) + self["DNSInfo_Check"] = MultiPixmap() + + self["EditSettings_Text"] = MultiColorLabel(_("Edit settings")) + self["EditSettingsButton"] = MultiPixmap() + + self["key_red"] = StaticText(_("Close")) + self["key_green"] = StaticText(_("Start test")) + self["key_yellow"] = StaticText(_("Stop test")) + + self["InfoTextBorder"] = Pixmap() + self["InfoText"] = Label() + + def getLinkState(self,iface): + if iface in iNetwork.wlan_interfaces: + try: + from Plugins.SystemPlugins.WirelessLan.Wlan import iStatus + except: + self["Network"].setForegroundColorNum(1) + self["Network"].setText(_("disconnected")) + self["NetworkInfo_Check"].setPixmapNum(1) + self["NetworkInfo_Check"].show() + else: + iStatus.getDataForInterface(self.iface,self.getInfoCB) + else: + iNetwork.getLinkState(iface,self.LinkStatedataAvail) + + def LinkStatedataAvail(self,data): + for item in data.splitlines(): + if "Link detected:" in item: + if "yes" in item: + self["Network"].setForegroundColorNum(2) + self["Network"].setText(_("connected")) + self["NetworkInfo_Check"].setPixmapNum(0) + else: + self["Network"].setForegroundColorNum(1) + self["Network"].setText(_("disconnected")) + self["NetworkInfo_Check"].setPixmapNum(1) + break + else: + self["Network"].setText(_("unknown")) + self["NetworkInfo_Check"].show() + + def NetworkStatedataAvail(self,data): + if data <= 2: + self["IP"].setForegroundColorNum(2) + self["IP"].setText(_("confirmed")) + self["IPInfo_Check"].setPixmapNum(0) + else: + self["IP"].setForegroundColorNum(1) + self["IP"].setText(_("unconfirmed")) + self["IPInfo_Check"].setPixmapNum(1) + self["IPInfo_Check"].show() + self["IPInfo_Text"].setForegroundColorNum(1) + self.steptimer = True + self.nextStepTimer.start(300) + + def DNSLookupdataAvail(self,data): + if data <= 2: + self["DNS"].setForegroundColorNum(2) + self["DNS"].setText(_("confirmed")) + self["DNSInfo_Check"].setPixmapNum(0) + else: + self["DNS"].setForegroundColorNum(1) + self["DNS"].setText(_("unconfirmed")) + self["DNSInfo_Check"].setPixmapNum(1) + self["DNSInfo_Check"].show() + self["DNSInfo_Text"].setForegroundColorNum(1) + self["EditSettings_Text"].show() + self["EditSettingsButton"].setPixmapNum(1) + self["EditSettings_Text"].setForegroundColorNum(2) # active + self["EditSettingsButton"].show() + self["key_yellow"].setText("") + self["key_green"].setText(_("Restart test")) + self["shortcutsgreen"].setEnabled(False) + self["shortcutsgreen_restart"].setEnabled(True) + self["shortcutsyellow"].setEnabled(False) + self["updown_actions"].setEnabled(True) + self.activebutton = 6 + + def getInfoCB(self,data,status): + if data is not None: + if data is True: + if status is not None: + if status[self.iface]["essid"] == "off" or status[self.iface]["accesspoint"] == "Not-Associated" or status[self.iface]["accesspoint"] == False: + self["Network"].setForegroundColorNum(1) + self["Network"].setText(_("disconnected")) + self["NetworkInfo_Check"].setPixmapNum(1) + self["NetworkInfo_Check"].show() + else: + self["Network"].setForegroundColorNum(2) + self["Network"].setText(_("connected")) + self["NetworkInfo_Check"].setPixmapNum(0) + self["NetworkInfo_Check"].show() + + def cleanup(self): + iNetwork.stopLinkStateConsole() + iNetwork.stopDNSConsole() + try: + from Plugins.SystemPlugins.WirelessLan.Wlan import iStatus + except ImportError: + pass + else: + iStatus.stopWlanConsole() + diff --git a/lib/python/Screens/NumericalTextInputHelpDialog.py b/lib/python/Screens/NumericalTextInputHelpDialog.py new file mode 100644 index 0000000..de8e8d6 --- /dev/null +++ b/lib/python/Screens/NumericalTextInputHelpDialog.py @@ -0,0 +1,18 @@ +from Screen import Screen +from Components.Label import Label + +class NumericalTextInputHelpDialog(Screen): + def __init__(self, session, textinput): + Screen.__init__(self, session) + self["help1"] = Label(text="<") + self["help2"] = Label(text=">") + for x in (1, 2, 3, 4, 5, 6, 7, 8, 9, 0): + self["key%d" % x] = Label(text=textinput.mapping[x].encode("utf-8")) + self.last_marked = 0 + + def update(self, textinput): + if 0 <= self.last_marked <= 9: + self["key%d" % self.last_marked].setMarkedPos(-1) + if 0 <= textinput.lastKey <= 9: + self["key%d" % textinput.lastKey].setMarkedPos(textinput.pos) + self.last_marked = textinput.lastKey diff --git a/lib/python/Screens/PVRState.py b/lib/python/Screens/PVRState.py new file mode 100644 index 0000000..891379c --- /dev/null +++ b/lib/python/Screens/PVRState.py @@ -0,0 +1,12 @@ +from Screen import Screen + +from Components.Label import Label + +class PVRState(Screen): + def __init__(self, session): + Screen.__init__(self, session) + self["state"] = Label(text="") + +class TimeshiftState(PVRState): + pass + diff --git a/lib/python/Screens/ParentalControlSetup.py b/lib/python/Screens/ParentalControlSetup.py new file mode 100644 index 0000000..3278554 --- /dev/null +++ b/lib/python/Screens/ParentalControlSetup.py @@ -0,0 +1,385 @@ +from Screen import Screen +from Components.ConfigList import ConfigListScreen +from Components.ActionMap import NumberActionMap +from Components.config import config, getConfigListEntry, ConfigNothing, NoSave, ConfigPIN, configfile +from Components.ParentalControlList import ParentalControlEntryComponent, ParentalControlList + +from Components.Sources.StaticText import StaticText +from Screens.ChoiceBox import ChoiceBox +from Screens.MessageBox import MessageBox +from Screens.InputBox import PinInput +from Screens.ChannelSelection import service_types_tv +from Tools.BoundFunction import boundFunction +from enigma import eServiceCenter, eTimer, eServiceReference +from operator import itemgetter + +class ProtectedScreen: + def __init__(self): + if self.isProtected(): + self.onFirstExecBegin.append(boundFunction(self.session.openWithCallback, self.pinEntered, PinInput, pinList = [self.protectedWithPin()], triesEntry = self.getTriesEntry(), title = self.getPinText(), windowTitle = _("Enter pin code"))) + + def getTriesEntry(self): + return config.ParentalControl.retries.setuppin + + def getPinText(self): + return _("Please enter the correct pin code") + + def isProtected(self): + return True + + def protectedWithPin(self): + return config.ParentalControl.setuppin.value + + def pinEntered(self, result): + if result is None: + self.close() + elif not result: + self.session.openWithCallback(self.close, MessageBox, _("The pin code you entered is wrong."), MessageBox.TYPE_ERROR) + +class ParentalControlSetup(Screen, ConfigListScreen, ProtectedScreen): + def __init__(self, session): + Screen.__init__(self, session) + ProtectedScreen.__init__(self) + # for the skin: first try ParentalControlSetup, then Setup, this allows individual skinning + self.skinName = ["ParentalControlSetup", "Setup" ] + self.setup_title = _("Parental control setup") + self.onChangedEntry = [ ] + + self.list = [] + ConfigListScreen.__init__(self, self.list, session = self.session, on_change = self.changedEntry) + self.createSetup() + + self["actions"] = NumberActionMap(["SetupActions", "MenuActions"], + { + "cancel": self.keyCancel, + "save": self.keySave, + "menu": self.closeRecursive, + }, -2) + self["key_red"] = StaticText(_("Cancel")) + self["key_green"] = StaticText(_("Save")) + self.recursive = False + self.onLayoutFinish.append(self.layoutFinished) + + def layoutFinished(self): + self.setTitle(self.setup_title) + + def isProtected(self): + return config.ParentalControl.setuppinactive.value and config.ParentalControl.configured.value + + def createSetup(self): + self.editListEntry = None + self.changePin = None + self.changeSetupPin = None + + self.list = [] + self.list.append(getConfigListEntry(_("Enable parental control"), config.ParentalControl.configured)) + self.editBouquetListEntry = -1 + self.reloadLists = -1 + if config.ParentalControl.configured.value: + #self.list.append(getConfigListEntry(_("Configuration mode"), config.ParentalControl.mode)) + self.list.append(getConfigListEntry(_("Protect setup"), config.ParentalControl.setuppinactive)) + if config.ParentalControl.setuppinactive.value: + self.changeSetupPin = getConfigListEntry(_("Change setup PIN"), NoSave(ConfigNothing())) + self.list.append(self.changeSetupPin) + self.list.append(getConfigListEntry(_("Protect services"), config.ParentalControl.servicepinactive)) + if config.ParentalControl.servicepinactive.value: + self.list.append(getConfigListEntry(_("Parental control type"), config.ParentalControl.type)) + if config.ParentalControl.mode.value == "complex": + self.changePin = getConfigListEntry(_("Change service PINs"), NoSave(ConfigNothing())) + self.list.append(self.changePin) + elif config.ParentalControl.mode.value == "simple": + self.changePin = getConfigListEntry(_("Change service PIN"), NoSave(ConfigNothing())) + self.list.append(self.changePin) + #Added Option to remember the service pin + self.list.append(getConfigListEntry(_("Remember service PIN"), config.ParentalControl.storeservicepin)) + self.editListEntry = getConfigListEntry(_("Edit services list"), NoSave(ConfigNothing())) + self.list.append(self.editListEntry) + #New funtion: Possibility to add Bouquets to whitelist / blacklist + self.editBouquetListEntry = getConfigListEntry(_("Edit bouquets list"), NoSave(ConfigNothing())) + self.list.append(self.editBouquetListEntry) + #New option to reload service lists (for example if bouquets have changed) + self.reloadLists = getConfigListEntry(_("Reload black-/white lists"), NoSave(ConfigNothing())) + self.list.append(self.reloadLists) + + self["config"].list = self.list + self["config"].setList(self.list) + + def keyOK(self): + if self["config"].l.getCurrentSelection() == self.editListEntry: + self.session.open(ParentalControlEditor) + elif self["config"].l.getCurrentSelection() == self.editBouquetListEntry: + self.session.open(ParentalControlBouquetEditor) + elif self["config"].l.getCurrentSelection() == self.changePin: + if config.ParentalControl.mode.value == "complex": + pass + else: + self.session.open(ParentalControlChangePin, config.ParentalControl.servicepin[0], _("service PIN")) + elif self["config"].l.getCurrentSelection() == self.changeSetupPin: + self.session.open(ParentalControlChangePin, config.ParentalControl.setuppin, _("setup PIN")) + elif self["config"].l.getCurrentSelection() == self.reloadLists: + from Components.ParentalControl import parentalControl + parentalControl.open() + self.session.open(MessageBox, _("Lists reloaded!"), MessageBox.TYPE_INFO, timeout=3) + else: + ConfigListScreen.keyRight(self) + self.createSetup() + + def keyLeft(self): + ConfigListScreen.keyLeft(self) + self.createSetup() + + def keyRight(self): + ConfigListScreen.keyRight(self) + self.createSetup() + + def SetupPinMessageCallback(self, value): + if value: + self.session.openWithCallback(self.cancelCB, ParentalControlChangePin, config.ParentalControl.setuppin, _("setup PIN")) + else: + config.ParentalControl.setuppinactive.value = False + self.keySave() + + def ServicePinMessageCallback(self, value): + if value: + self.session.openWithCallback(self.cancelCB, ParentalControlChangePin, config.ParentalControl.servicepin[0], _("service PIN")) + else: + config.ParentalControl.servicepinactive.value = False + self.keySave() + + def cancelCB(self,value): + self.keySave() + + def keyCancel(self): + for x in self["config"].list: + x[1].cancel() + self.close() + + def keySave(self): + if config.ParentalControl.configured.value and config.ParentalControl.setuppinactive.value and config.ParentalControl.setuppin.value == 'aaaa': + self.session.openWithCallback(self.SetupPinMessageCallback, MessageBox, _("No valid setup PIN found!\nDo you like to change the setup PIN now?\nWhen you say 'No' here the setup protection stay disabled!"), MessageBox.TYPE_YESNO) + elif config.ParentalControl.configured.value and config.ParentalControl.servicepinactive.value and config.ParentalControl.servicepin[0].value == 'aaaa': + self.session.openWithCallback(self.ServicePinMessageCallback, MessageBox, _("No valid service PIN found!\nDo you like to change the service PIN now?\nWhen you say 'No' here the service protection stay disabled!"), MessageBox.TYPE_YESNO) + else: + if config.ParentalControl.configured.value and not config.ParentalControl.setuppinactive.value and not config.ParentalControl.servicepinactive.value: + config.ParentalControl.configured.value = False + for x in self["config"].list: + x[1].save() + configfile.save() + self.close(self.recursive) + + def closeRecursive(self): + self.recursive = True + self.keySave() + + def keyNumberGlobal(self, number): + pass + + # for summary: + def changedEntry(self): + for x in self.onChangedEntry: + x() + + def getCurrentEntry(self): + return self["config"].getCurrent()[0] + + def getCurrentValue(self): + return str(self["config"].getCurrent()[1].getText()) + + def createSummary(self): + from Screens.Setup import SetupSummary + return SetupSummary + +SPECIAL_CHAR = 96 +class ParentalControlEditor(Screen): + def __init__(self, session): + Screen.__init__(self, session) + self.list = [] + self.servicelist = ParentalControlList(self.list) + self["servicelist"] = self.servicelist; + self.currentLetter = chr(SPECIAL_CHAR) + self.readServiceList() + self.chooseLetterTimer = eTimer() + self.chooseLetterTimer.callback.append(self.chooseLetter) + self.onLayoutFinish.append(self.LayoutFinished) + + self["actions"] = NumberActionMap(["DirectionActions", "ColorActions", "OkCancelActions", "NumberActions"], + { + "ok": self.select, + "cancel": self.cancel, + "1": self.keyNumberGlobal, + "2": self.keyNumberGlobal, + "3": self.keyNumberGlobal, + "4": self.keyNumberGlobal, + "5": self.keyNumberGlobal, + "6": self.keyNumberGlobal, + "7": self.keyNumberGlobal, + "8": self.keyNumberGlobal, + "9": self.keyNumberGlobal, + "0": self.keyNumberGlobal + }, -1) + + def LayoutFinished(self): + self.chooseLetterTimer.start(0, True) + + def cancel(self): + self.chooseLetter() + + def select(self): + self.servicelist.toggleSelectedLock() + + def keyNumberGlobal(self, number): + pass + + def readServiceList(self): + serviceHandler = eServiceCenter.getInstance() + refstr = '%s ORDER BY name' % (service_types_tv) + self.root = eServiceReference(refstr) + self.servicesList = {} + list = serviceHandler.list(self.root) + if list is not None: + services = list.getContent("CN", True) #(servicecomparestring, name) + for s in services: + key = s[1].lower()[0] + if key < 'a' or key > 'z': + key = chr(SPECIAL_CHAR) + #key = str(key) + if not self.servicesList.has_key(key): + self.servicesList[key] = [] + self.servicesList[key].append(s) + + def chooseLetter(self): + mylist = [] + for x in self.servicesList.keys(): + if x == chr(SPECIAL_CHAR): + x = (_("special characters"), x) + else: + x = (x, x) + mylist.append(x) + mylist.sort(key=itemgetter(1)) + sel = ord(self.currentLetter) - SPECIAL_CHAR + self.session.openWithCallback(self.letterChosen, ChoiceBox, title=_("Show services beginning with"), list=mylist, keys = [], selection = sel) + + def letterChosen(self, result): + from Components.ParentalControl import parentalControl + if result is not None: + self.currentLetter = result[1] + #Replace getProtectionLevel by new getProtectionType + self.list = [ParentalControlEntryComponent(x[0], x[1], parentalControl.getProtectionType(x[0])) for x in self.servicesList[result[1]]] + self.servicelist.setList(self.list) + else: + parentalControl.save() + self.close() + +class ParentalControlBouquetEditor(Screen): + #This new class allows adding complete bouquets to black- and whitelists + #The servicereference that is stored for bouquets is their refstr as listed in bouquets.tv + def __init__(self, session): + Screen.__init__(self, session) + self.skinName = "ParentalControlEditor" + self.list = [] + self.bouquetslist = ParentalControlList(self.list) + self["servicelist"] = self.bouquetslist; + self.readBouquetList() + self.onLayoutFinish.append(self.selectBouquet) + + self["actions"] = NumberActionMap(["DirectionActions", "ColorActions", "OkCancelActions"], + { + "ok": self.select, + "cancel": self.cancel + }, -1) + + def cancel(self): + from Components.ParentalControl import parentalControl + parentalControl.save() + self.close() + + def select(self): + self.bouquetslist.toggleSelectedLock() + + def readBouquetList(self): + serviceHandler = eServiceCenter.getInstance() + refstr = '1:134:1:0:0:0:0:0:0:0:FROM BOUQUET \"bouquets.tv\" ORDER BY bouquet' + bouquetroot = eServiceReference(refstr) + self.bouquetlist = {} + list = serviceHandler.list(bouquetroot) + if list is not None: + self.bouquetlist = list.getContent("CN", True) + + def selectBouquet(self): + from Components.ParentalControl import parentalControl + self.list = [ParentalControlEntryComponent(x[0], x[1], parentalControl.getProtectionType(x[0])) for x in self.bouquetlist] + self.bouquetslist.setList(self.list) + +class ParentalControlChangePin(Screen, ConfigListScreen, ProtectedScreen): + def __init__(self, session, pin, pinname): + Screen.__init__(self, session) + # for the skin: first try ParentalControlChangePin, then Setup, this allows individual skinning + self.skinName = ["ParentalControlChangePin", "Setup" ] + self.setup_title = _("Change pin code") + self.onChangedEntry = [ ] + + self.pin = pin + self.list = [] + self.pin1 = ConfigPIN(default = 1111, censor = "*") + self.pin2 = ConfigPIN(default = 1112, censor = "*") + self.pin1.addEndNotifier(boundFunction(self.valueChanged, 1)) + self.pin2.addEndNotifier(boundFunction(self.valueChanged, 2)) + self.list.append(getConfigListEntry(_("New PIN"), NoSave(self.pin1))) + self.list.append(getConfigListEntry(_("Reenter new PIN"), NoSave(self.pin2))) + ConfigListScreen.__init__(self, self.list) + ProtectedScreen.__init__(self) + + self["actions"] = NumberActionMap(["DirectionActions", "ColorActions", "OkCancelActions", "MenuActions"], + { + "cancel": self.keyCancel, + "red": self.keyCancel, + "save": self.keyOK, + "menu": self.closeRecursive, + }, -1) + self["key_red"] = StaticText(_("Cancel")) + self["key_green"] = StaticText(_("OK")) + self.onLayoutFinish.append(self.layoutFinished) + + def layoutFinished(self): + self.setTitle(self.setup_title) + + def valueChanged(self, pin, value): + if pin == 1: + self["config"].setCurrentIndex(1) + elif pin == 2: + self.keyOK() + + def getPinText(self): + return _("Please enter the old PIN code") + + def isProtected(self): + return (self.pin.value != 'aaaa') + + def protectedWithPin(self): + return self.pin.value + + def keyOK(self): + if self.pin1.value == self.pin2.value: + self.pin.value = self.pin1.value + self.pin.save() + self.session.openWithCallback(self.close, MessageBox, _("The PIN code has been changed successfully."), MessageBox.TYPE_INFO) + else: + self.session.open(MessageBox, _("The PIN codes you entered are different."), MessageBox.TYPE_ERROR) + + def keyNumberGlobal(self, number): + ConfigListScreen.keyNumberGlobal(self, number) + + # for summary: + def changedEntry(self): + for x in self.onChangedEntry: + x() + + def getCurrentEntry(self): + return self["config"].getCurrent()[0] + + def getCurrentValue(self): + return str(self["config"].getCurrent()[1].getText()) + + def createSummary(self): + from Screens.Setup import SetupSummary + return SetupSummary diff --git a/lib/python/Screens/PiPSetup.py b/lib/python/Screens/PiPSetup.py new file mode 100644 index 0000000..80e788b --- /dev/null +++ b/lib/python/Screens/PiPSetup.py @@ -0,0 +1,148 @@ +from Screens.Screen import Screen +from Components.ActionMap import NumberActionMap +from Components.SystemInfo import SystemInfo +from Components.Label import Label +from Components.config import config + +# this is not so great. +MAX_X = 720 +MAX_Y = 576 +MAX_W = MAX_X * 3 / 4 +MAX_H = MAX_Y * 3 / 4 +MIN_W = MAX_X / 8 +MIN_H = MAX_Y / 8 + +def clip(val, min, max): + if min <= val <= max: + return val + if min <= val: + return max + return min + +class PiPSetup(Screen): + def __init__(self, session, pip): + Screen.__init__(self, session) + + self.pip = pip + + self.pos = (config.av.pip.value[0], config.av.pip.value[1]) + self.size = (config.av.pip.value[2], config.av.pip.value[3]) + self.mode = self.pip.getMode() + + self.orgpos = self.pos + self.orgsize = self.size + self.orgmode = self.mode + + self.resize = 100 + + self.helptext = _("Please use direction keys to move the PiP window.\nPress Bouquet +/- to resize the window.\nPress OK to go back to the TV mode or EXIT to cancel the moving.") + if SystemInfo["VideoDestinationConfigurable"] or SystemInfo["HasExternalPIP"]: + self.helptext += "\n" + _("Press '0' to toggle PiP mode") + self.modetext = _("Current mode: %s \n") + + self["text"] = Label((self.modetext % self.pip.getModeName()) + self.helptext) + + self["actions"] = NumberActionMap(["PiPSetupActions", "NumberActions"], + { + "ok": self.go, + "cancel": self.cancel, + "up": self.up, + "down": self.down, + "left": self.left, + "right": self.right, + "size+": self.bigger, + "size-": self.smaller, + "1": self.keyNumberGlobal, + "2": self.keyNumberGlobal, + "3": self.keyNumberGlobal, + "4": self.keyNumberGlobal, + "5": self.keyNumberGlobal, + "6": self.keyNumberGlobal, + "7": self.keyNumberGlobal, + "8": self.keyNumberGlobal, + "9": self.keyNumberGlobal, + "0": self.keyNumberGlobal + }, -1) + + def go(self): + self.close() + + def cancel(self): + self.pos = self.orgpos + self.size = self.orgsize + self.mode = self.orgmode + self.pip.setMode(self.mode) + self.setPiPPosition() + self.close() + + def setPiPPosition(self): + self.pip.resize(self.size[0], self.size[1]) + self.pip.move(self.pos[0], self.pos[1]) + + def resizePiP(self, resize): + resize += 100 # resize is in percent, so resize=+20 means: 120% + + oldsize = self.size + if self.mode != "split": + w = clip(self.size[0] * resize / 100, MIN_W, MAX_W) + h = clip(self.size[1] * resize / 100, MIN_H, MAX_H) + else: + w = clip(self.size[0] * resize / 100, MAX_X / 2, MAX_X) + h = clip(self.size[1] * resize / 100, MAX_Y / 2, MAX_Y) + + # calculate offset from center + mx = (oldsize[0] - w) / 2 + my = (oldsize[1] - h) / 2 + + self.size = (w, h) + # reclip, account for new center + self.moveRelative(x=mx, y=my) + + def moveRelative(self, x=0, y=0): + self.pos = (clip(self.pos[0] + x, 0, MAX_X - self.size[0]), clip(self.pos[1] + y, 0, MAX_Y - self.size[1])) + self.setPiPPosition() + + def up(self): + if self.mode == "standard": + self.moveRelative(y=-32) + + def down(self): + if self.mode == "standard": + self.moveRelative(y=+32) + + def left(self): + if self.mode == "standard": + self.moveRelative(x=-24) + + def right(self): + if self.mode == "standard": + self.moveRelative(x=+24) + + def bigger(self): + if self.mode in "cascade standard": + self.resizePiP(+10) + + def smaller(self): + if self.mode in "cascade standard": + self.resizePiP(-10) + + def keyNumberGlobal(self, number): + if number > 0 and self.mode == "standard": + colsize = MAX_X / 3 + rowsize = MAX_Y / 3 + col = (number-1) % 3 + row = (number-1) / 3 + + self.size = (180, 135) + + # offset to keep center + ox = (colsize - self.size[0]) / 2 + oy = (rowsize - self.size[1]) / 2 + + self.pos = (col * colsize + ox, row * rowsize + oy) + elif number == 0: + self.pip.togglePiPMode() + self.mode = self.pip.getMode() + self["text"].setText((self.modetext % self.pip.getModeName()) + self.helptext) + # reclip + self.moveRelative() diff --git a/lib/python/Screens/PictureInPicture.py b/lib/python/Screens/PictureInPicture.py new file mode 100644 index 0000000..8ea230d --- /dev/null +++ b/lib/python/Screens/PictureInPicture.py @@ -0,0 +1,216 @@ +from Screens.Screen import Screen +from enigma import ePoint, eSize, eRect, eServiceCenter, getBestPlayableServiceReference, eServiceReference, eTimer +from Components.SystemInfo import SystemInfo +from Components.VideoWindow import VideoWindow +from Components.config import config, ConfigPosition, ConfigYesNo, ConfigSelection +from Tools import Notifications +from Screens.MessageBox import MessageBox +from os import access, W_OK + +MAX_X = 720 +MAX_Y = 576 +pip_config_initialized = False +PipPigModeEnabled = False +PipPigModeTimer = eTimer() + +def timedStopPipPigMode(): + from Screens.InfoBar import InfoBar + if InfoBar.instance and InfoBar.instance.session: + if SystemInfo["hasPIPVisibleProc"]: + open(SystemInfo["hasPIPVisibleProc"], "w").write("1") + elif hasattr(InfoBar.instance.session, "pip"): + InfoBar.instance.session.pip.playService(InfoBar.instance.session.pip.currentService) + global PipPigModeEnabled + PipPigModeEnabled = False + +PipPigModeTimer.callback.append(timedStopPipPigMode) + +def PipPigMode(value): + from Screens.InfoBar import InfoBar + if InfoBar.instance and InfoBar.instance.session and hasattr(InfoBar.instance.session, "pip") and config.av.pip_mode.value != "external": + if value: + PipPigModeTimer.stop() + global PipPigModeEnabled + if not PipPigModeEnabled: + if SystemInfo["hasPIPVisibleProc"]: + open(SystemInfo["hasPIPVisibleProc"], "w").write("0") + else: + InfoBar.instance.session.pip.pipservice = False + PipPigModeEnabled = True + else: + PipPigModeTimer.start(100, True) + +class PictureInPictureZapping(Screen): + skin = """<screen name="PictureInPictureZapping" flags="wfNoBorder" position="50,50" size="90,26" title="PiPZap" zPosition="-1"> + <eLabel text="PiP-Zap" position="0,0" size="90,26" foregroundColor="#00ff66" font="Regular;26" /> + </screen>""" + +class PictureInPicture(Screen): + def __init__(self, session): + global pip_config_initialized + Screen.__init__(self, session) + self["video"] = VideoWindow() + self.pipActive = session.instantiateDialog(PictureInPictureZapping) + self.currentService = None + self.currentServiceReference = None + + self.choicelist = [("standard", _("Standard"))] + if SystemInfo["VideoDestinationConfigurable"]: + self.choicelist.append(("cascade", _("Cascade PiP"))) + self.choicelist.append(("split", _("Splitscreen"))) + self.choicelist.append(("byside", _("Side by side"))) + self.choicelist.append(("bigpig", _("Big PiP"))) + if SystemInfo["HasExternalPIP"]: + self.choicelist.append(("external", _("External PiP"))) + + if not pip_config_initialized: + config.av.pip = ConfigPosition(default=[510, 28, 180, 135], args = (MAX_X, MAX_Y, MAX_X, MAX_Y)) + config.av.pip_mode = ConfigSelection(default="standard", choices=self.choicelist) + pip_config_initialized = True + + self.onLayoutFinish.append(self.LayoutFinished) + + def __del__(self): + del self.pipservice + self.setExternalPiP(False) + self.setSizePosMainWindow() + + def relocate(self): + x = config.av.pip.value[0] + y = config.av.pip.value[1] + w = config.av.pip.value[2] + h = config.av.pip.value[3] + self.move(x, y) + self.resize(w, h) + + def LayoutFinished(self): + self.onLayoutFinish.remove(self.LayoutFinished) + self.relocate() + self.setExternalPiP(config.av.pip_mode.value == "external") + + def move(self, x, y): + config.av.pip.value[0] = x + config.av.pip.value[1] = y + w = config.av.pip.value[2] + h = config.av.pip.value[3] + if config.av.pip_mode.value == "cascade": + x = MAX_X - w + y = 0 + elif config.av.pip_mode.value == "split": + x = MAX_X / 2 + y = 0 + elif config.av.pip_mode.value == "byside": + x = MAX_X / 2 + y = MAX_Y / 4 + elif config.av.pip_mode.value in "bigpig external": + x = 0 + y = 0 + config.av.pip.save() + self.instance.move(ePoint(x, y)) + + def resize(self, w, h): + config.av.pip.value[2] = w + config.av.pip.value[3] = h + config.av.pip.save() + if config.av.pip_mode.value == "standard": + self.instance.resize(eSize(*(w, h))) + self["video"].instance.resize(eSize(*(w, h))) + self.setSizePosMainWindow() + elif config.av.pip_mode.value == "cascade": + self.instance.resize(eSize(*(w, h))) + self["video"].instance.resize(eSize(*(w, h))) + self.setSizePosMainWindow(0, h, MAX_X - w, MAX_Y - h) + elif config.av.pip_mode.value == "split": + self.instance.resize(eSize(*(MAX_X/2, MAX_Y ))) + self["video"].instance.resize(eSize(*(MAX_X/2, MAX_Y))) + self.setSizePosMainWindow(0, 0, MAX_X/2, MAX_Y) + elif config.av.pip_mode.value == "byside": + self.instance.resize(eSize(*(MAX_X/2, MAX_Y/2 ))) + self["video"].instance.resize(eSize(*(MAX_X/2, MAX_Y/2))) + self.setSizePosMainWindow(0, MAX_Y/4, MAX_X/2, MAX_Y/2) + elif config.av.pip_mode.value in "bigpig external": + self.instance.resize(eSize(*(MAX_X, MAX_Y))) + self["video"].instance.resize(eSize(*(MAX_X, MAX_Y))) + self.setSizePosMainWindow() + + def setSizePosMainWindow(self, x = 0, y = 0, w = 0, h = 0): + if SystemInfo["VideoDestinationConfigurable"]: + self["video"].instance.setFullScreenPosition(eRect(x, y, w, h)) + + def setExternalPiP(self, onoff): + if SystemInfo["HasExternalPIP"]: + open(SystemInfo["HasExternalPIP"], "w").write(onoff and "on" or "off") + + def active(self): + self.pipActive.show() + + def inactive(self): + self.pipActive.hide() + + def getPosition(self): + return self.instance.position().x(), self.instance.position().y() + + def getSize(self): + return self.instance.size().width(), self.instance.size().height() + + def togglePiPMode(self): + self.setMode(config.av.pip_mode.choices[(config.av.pip_mode.index + 1) % len(config.av.pip_mode.choices)]) + + def setMode(self, mode): + config.av.pip_mode.value = mode + config.av.pip_mode.save() + self.setExternalPiP(config.av.pip_mode.value == "external") + self.relocate() + + def getMode(self): + return config.av.pip_mode.value + + def getModeName(self): + return self.choicelist[config.av.pip_mode.index][1] + + def playService(self, service): + if service is None: + return False + ref = self.resolveAlternatePipService(service) + if ref: + if self.isPlayableForPipService(ref): + print "playing pip service", ref and ref.toString() + else: + if not config.usage.hide_zap_errors.value: + Notifications.AddPopup(text = _("No free tuner!"), type = MessageBox.TYPE_ERROR, timeout = 5, id = "ZapPipError") + return False + self.pipservice = eServiceCenter.getInstance().play(ref) + if self.pipservice and not self.pipservice.setTarget(1): + self.pipservice.start() + self.currentService = service + self.currentServiceReference = ref + return True + else: + self.pipservice = None + self.currentService = None + self.currentServiceReference = None + if not config.usage.hide_zap_errors.value: + Notifications.AddPopup(text = _("Incorrect type service for PiP!"), type = MessageBox.TYPE_ERROR, timeout = 5, id = "ZapPipError") + return False + + def getCurrentService(self): + return self.currentService + + def getCurrentServiceReference(self): + return self.currentServiceReference + + def isPlayableForPipService(self, service): + playingref = self.session.nav.getCurrentlyPlayingServiceReference() + if playingref is None or service == playingref: + return True + info = eServiceCenter.getInstance().info(service) + oldref = self.currentServiceReference or eServiceReference() + if info and info.isPlayable(service, oldref): + return True + return False + + def resolveAlternatePipService(self, service): + if service and (service.flags & eServiceReference.isGroup): + oldref = self.currentServiceReference or eServiceReference() + return getBestPlayableServiceReference(service, oldref) + return service diff --git a/lib/python/Screens/PluginBrowser.py b/lib/python/Screens/PluginBrowser.py new file mode 100644 index 0000000..421a30d --- /dev/null +++ b/lib/python/Screens/PluginBrowser.py @@ -0,0 +1,411 @@ +from Screen import Screen +from enigma import eConsoleAppContainer, eDVBDB + +from Components.ActionMap import ActionMap +from Components.PluginComponent import plugins +from Components.PluginList import * +from Components.Label import Label +from Components.Language import language +from Components.Harddisk import harddiskmanager +from Components.Sources.StaticText import StaticText +from Components import Ipkg +from Screens.MessageBox import MessageBox +from Screens.ChoiceBox import ChoiceBox +from Screens.Console import Console +from Plugins.Plugin import PluginDescriptor +from Tools.Directories import resolveFilename, SCOPE_PLUGINS, SCOPE_SKIN_IMAGE +from Tools.LoadPixmap import LoadPixmap + +from time import time +import os + +language.addCallback(plugins.reloadPlugins) + +class PluginBrowserSummary(Screen): + def __init__(self, session, parent): + Screen.__init__(self, session, parent = parent) + self["entry"] = StaticText("") + self["desc"] = StaticText("") + self.onShow.append(self.addWatcher) + self.onHide.append(self.removeWatcher) + + def addWatcher(self): + self.parent.onChangedEntry.append(self.selectionChanged) + self.parent.selectionChanged() + + def removeWatcher(self): + self.parent.onChangedEntry.remove(self.selectionChanged) + + def selectionChanged(self, name, desc): + self["entry"].text = name + self["desc"].text = desc + + +class PluginBrowser(Screen): + def __init__(self, session): + Screen.__init__(self, session) + + self.firsttime = True + + self["key_red"] = self["red"] = Label(_("Remove plugins")) + self["key_green"] = self["green"] = Label(_("Download plugins")) + + self.list = [] + self["list"] = PluginList(self.list) + + self["actions"] = ActionMap(["WizardActions"], + { + "ok": self.save, + "back": self.close, + }) + self["PluginDownloadActions"] = ActionMap(["ColorActions"], + { + "red": self.delete, + "green": self.download + }) + + self.onFirstExecBegin.append(self.checkWarnings) + self.onShown.append(self.updateList) + self.onChangedEntry = [] + self["list"].onSelectionChanged.append(self.selectionChanged) + self.onLayoutFinish.append(self.saveListsize) + + def saveListsize(self): + listsize = self["list"].instance.size() + self.listWidth = listsize.width() + self.listHeight = listsize.height() + + def createSummary(self): + return PluginBrowserSummary + + def selectionChanged(self): + item = self["list"].getCurrent() + if item: + p = item[0] + name = p.name + desc = p.description + else: + name = "-" + desc = "" + for cb in self.onChangedEntry: + cb(name, desc) + + def checkWarnings(self): + if len(plugins.warnings): + text = _("Some plugins are not available:\n") + for (pluginname, error) in plugins.warnings: + text += _("%s (%s)\n") % (pluginname, error) + plugins.resetWarnings() + self.session.open(MessageBox, text = text, type = MessageBox.TYPE_WARNING) + + def save(self): + self.run() + + def run(self): + plugin = self["list"].l.getCurrentSelection()[0] + plugin(session=self.session) + + def updateList(self): + self.pluginlist = plugins.getPlugins(PluginDescriptor.WHERE_PLUGINMENU) + self.list = [PluginEntryComponent(plugin, self.listWidth) for plugin in self.pluginlist] + self["list"].l.setList(self.list) + + def delete(self): + self.session.openWithCallback(self.PluginDownloadBrowserClosed, PluginDownloadBrowser, PluginDownloadBrowser.REMOVE) + + def download(self): + self.session.openWithCallback(self.PluginDownloadBrowserClosed, PluginDownloadBrowser, PluginDownloadBrowser.DOWNLOAD, self.firsttime) + self.firsttime = False + + def PluginDownloadBrowserClosed(self): + self.updateList() + self.checkWarnings() + + def openExtensionmanager(self): + if fileExists(resolveFilename(SCOPE_PLUGINS, "SystemPlugins/SoftwareManager/plugin.py")): + try: + from Plugins.SystemPlugins.SoftwareManager.plugin import PluginManager + except ImportError: + self.session.open(MessageBox, _("The software management extension is not installed!\nPlease install it."), type = MessageBox.TYPE_INFO,timeout = 10 ) + else: + self.session.openWithCallback(self.PluginDownloadBrowserClosed, PluginManager) + +class PluginDownloadBrowser(Screen): + DOWNLOAD = 0 + REMOVE = 1 + PLUGIN_PREFIX = 'enigma2-plugin-' + lastDownloadDate = None + + def __init__(self, session, type = 0, needupdate = True): + Screen.__init__(self, session) + + self.type = type + self.needupdate = needupdate + + self.container = eConsoleAppContainer() + self.container.appClosed.append(self.runFinished) + self.container.dataAvail.append(self.dataAvail) + self.onLayoutFinish.append(self.startRun) + self.onShown.append(self.setWindowTitle) + + self.list = [] + self["list"] = PluginList(self.list) + self.pluginlist = [] + self.expanded = [] + self.installedplugins = [] + self.plugins_changed = False + self.reload_settings = False + self.check_settings = False + self.install_settings_name = '' + self.remove_settings_name = '' + + if self.type == self.DOWNLOAD: + self["text"] = Label(_("Downloading plugin information. Please wait...")) + elif self.type == self.REMOVE: + self["text"] = Label(_("Getting plugin information. Please wait...")) + + self.run = 0 + self.remainingdata = "" + self["actions"] = ActionMap(["WizardActions"], + { + "ok": self.go, + "back": self.requestClose, + }) + if os.path.isfile('/usr/bin/opkg'): + self.ipkg = '/usr/bin/opkg' + self.ipkg_install = self.ipkg + ' install' + self.ipkg_remove = self.ipkg + ' remove --autoremove' + else: + self.ipkg = 'ipkg' + self.ipkg_install = 'ipkg install -force-defaults' + self.ipkg_remove = self.ipkg + ' remove' + + def go(self): + sel = self["list"].l.getCurrentSelection() + + if sel is None: + return + + sel = sel[0] + if isinstance(sel, str): # category + if sel in self.expanded: + self.expanded.remove(sel) + else: + self.expanded.append(sel) + self.updateList() + else: + if self.type == self.DOWNLOAD: + self.session.openWithCallback(self.runInstall, MessageBox, _("Do you really want to download\nthe plugin \"%s\"?") % sel.name) + elif self.type == self.REMOVE: + self.session.openWithCallback(self.runInstall, MessageBox, _("Do you really want to remove\nthe plugin \"%s\"?") % sel.name) + + def requestClose(self): + if self.plugins_changed: + plugins.readPluginList(resolveFilename(SCOPE_PLUGINS)) + if self.reload_settings: + self["text"].setText(_("Reloading bouquets and services...")) + eDVBDB.getInstance().reloadBouquets() + eDVBDB.getInstance().reloadServicelist() + plugins.readPluginList(resolveFilename(SCOPE_PLUGINS)) + self.container.appClosed.remove(self.runFinished) + self.container.dataAvail.remove(self.dataAvail) + self.close() + + def resetPostInstall(self): + try: + del self.postInstallCall + except: + pass + + def installDestinationCallback(self, result): + if result is not None: + dest = result[1] + if dest.startswith('/'): + # Custom install path, add it to the list too + dest = os.path.normpath(dest) + extra = '--add-dest %s:%s -d %s' % (dest,dest,dest) + Ipkg.opkgAddDestination(dest) + else: + extra = '-d ' + dest + self.doInstall(self.installFinished, self["list"].l.getCurrentSelection()[0].name + ' ' + extra) + else: + self.resetPostInstall() + + def runInstall(self, val): + if val: + if self.type == self.DOWNLOAD: + if self["list"].l.getCurrentSelection()[0].name.startswith("picons-"): + supported_filesystems = frozenset(('ext4', 'ext3', 'ext2', 'reiser', 'reiser4', 'jffs2', 'ubifs', 'rootfs')) + candidates = [] + import Components.Harddisk + mounts = Components.Harddisk.getProcMounts() + for partition in harddiskmanager.getMountedPartitions(False, mounts): + if partition.filesystem(mounts) in supported_filesystems: + candidates.append((partition.description, partition.mountpoint)) + if candidates: + from Components.Renderer import Picon + self.postInstallCall = Picon.initPiconPaths + self.session.openWithCallback(self.installDestinationCallback, ChoiceBox, title=_("Install picons on"), list=candidates) + return + self.install_settings_name = self["list"].l.getCurrentSelection()[0].name + if self["list"].l.getCurrentSelection()[0].name.startswith('settings-'): + self.check_settings = True + self.startIpkgListInstalled(self.PLUGIN_PREFIX + 'settings-*') + else: + self.runSettingsInstall() + elif self.type == self.REMOVE: + self.doRemove(self.installFinished, self["list"].l.getCurrentSelection()[0].name) + + def doRemove(self, callback, pkgname): + self.session.openWithCallback(callback, Console, cmdlist = [self.ipkg_remove + Ipkg.opkgExtraDestinations() + " " + self.PLUGIN_PREFIX + pkgname, "sync"], closeOnSuccess = True) + + def doInstall(self, callback, pkgname): + self.session.openWithCallback(callback, Console, cmdlist = [self.ipkg_install + " " + self.PLUGIN_PREFIX + pkgname, "sync"], closeOnSuccess = True) + + def runSettingsRemove(self, val): + if val: + self.doRemove(self.runSettingsInstall, self.remove_settings_name) + + def runSettingsInstall(self): + self.doInstall(self.installFinished, self.install_settings_name) + + def setWindowTitle(self): + if self.type == self.DOWNLOAD: + self.setTitle(_("Downloadable new plugins")) + elif self.type == self.REMOVE: + self.setTitle(_("Remove plugins")) + + def startIpkgListInstalled(self, pkgname = PLUGIN_PREFIX + '*'): + self.container.execute(self.ipkg + Ipkg.opkgExtraDestinations() + " list_installed '%s'" % pkgname) + + def startIpkgListAvailable(self): + self.container.execute(self.ipkg + Ipkg.opkgExtraDestinations() + " list '" + self.PLUGIN_PREFIX + "*'") + + def startRun(self): + listsize = self["list"].instance.size() + self["list"].instance.hide() + self.listWidth = listsize.width() + self.listHeight = listsize.height() + if self.type == self.DOWNLOAD: + if self.needupdate and not PluginDownloadBrowser.lastDownloadDate or (time() - PluginDownloadBrowser.lastDownloadDate) > 3600: + # Only update from internet once per hour + self.container.execute(self.ipkg + " update") + PluginDownloadBrowser.lastDownloadDate = time() + else: + self.run = 1 + self.startIpkgListInstalled() + elif self.type == self.REMOVE: + self.run = 1 + self.startIpkgListInstalled() + + def installFinished(self): + if hasattr(self, 'postInstallCall'): + try: + self.postInstallCall() + except Exception, ex: + print "[PluginBrowser] postInstallCall failed:", ex + self.resetPostInstall() + try: + os.unlink('/tmp/opkg.conf') + except: + pass + for plugin in self.pluginlist: + if plugin[3] == self["list"].l.getCurrentSelection()[0].name: + self.pluginlist.remove(plugin) + break + self.plugins_changed = True + if self["list"].l.getCurrentSelection()[0].name.startswith("settings-"): + self.reload_settings = True + self.expanded = [] + self.updateList() + self["list"].moveToIndex(0) + + def runFinished(self, retval): + if self.check_settings: + self.check_settings = False + self.runSettingsInstall() + return + self.remainingdata = "" + if self.run == 0: + self.run = 1 + if self.type == self.DOWNLOAD: + self.startIpkgListInstalled() + elif self.run == 1 and self.type == self.DOWNLOAD: + self.run = 2 + from Components import opkg + pluginlist = [] + self.pluginlist = pluginlist + for plugin in opkg.enumPlugins(self.PLUGIN_PREFIX): + if plugin[0] not in self.installedplugins: + pluginlist.append(plugin + (plugin[0][15:],)) + if pluginlist: + pluginlist.sort() + self.updateList() + self["list"].instance.show() + else: + self["text"].setText(_("No new plugins found")) + else: + if self.pluginlist: + self.updateList() + self["list"].instance.show() + else: + self["text"].setText(_("No new plugins found")) + + def dataAvail(self, str): + #prepend any remaining data from the previous call + str = self.remainingdata + str + #split in lines + lines = str.split('\n') + #'str' should end with '\n', so when splitting, the last line should be empty. If this is not the case, we received an incomplete line + if len(lines[-1]): + #remember this data for next time + self.remainingdata = lines[-1] + lines = lines[0:-1] + else: + self.remainingdata = "" + + if self.check_settings: + self.check_settings = False + self.remove_settings_name = str.split(' - ')[0].replace(self.PLUGIN_PREFIX, '') + self.session.openWithCallback(self.runSettingsRemove, MessageBox, _('You already have a channel list installed,\nwould you like to remove\n"%s"?') % self.remove_settings_name) + return + + if self.run == 1: + for x in lines: + plugin = x.split(" - ", 2) + # 'opkg list_installed' only returns name + version, no description field + if len(plugin) >= 2: + if not plugin[0].endswith('-dev') and not plugin[0].endswith('-staticdev') and not plugin[0].endswith('-dbg') and not plugin[0].endswith('-doc') and not plugin[0].endswith('-src'): + if plugin[0] not in self.installedplugins: + if self.type == self.DOWNLOAD: + self.installedplugins.append(plugin[0]) + else: + if len(plugin) == 2: + plugin.append('') + plugin.append(plugin[0][15:]) + self.pluginlist.append(plugin) + + def updateList(self): + list = [] + expandableIcon = LoadPixmap(resolveFilename(SCOPE_SKIN_IMAGE, "skin_default/expandable-plugins.png")) + expandedIcon = LoadPixmap(resolveFilename(SCOPE_SKIN_IMAGE, "skin_default/expanded-plugins.png")) + verticallineIcon = LoadPixmap(resolveFilename(SCOPE_SKIN_IMAGE, "skin_default/verticalline-plugins.png")) + + self.plugins = {} + for x in self.pluginlist: + split = x[3].split('-', 1) + if len(split) < 2: + continue + if not self.plugins.has_key(split[0]): + self.plugins[split[0]] = [] + + self.plugins[split[0]].append((PluginDescriptor(name = x[3], description = x[2], icon = verticallineIcon), split[1], x[1])) + + for x in self.plugins.keys(): + if x in self.expanded: + list.append(PluginCategoryComponent(x, expandedIcon, self.listWidth)) + list.extend([PluginDownloadComponent(plugin[0], plugin[1], plugin[2], self.listWidth) for plugin in self.plugins[x]]) + else: + list.append(PluginCategoryComponent(x, expandableIcon, self.listWidth)) + self.list = list + self["list"].l.setList(list) diff --git a/lib/python/Screens/Rc.py b/lib/python/Screens/Rc.py new file mode 100644 index 0000000..ee75e7c --- /dev/null +++ b/lib/python/Screens/Rc.py @@ -0,0 +1,94 @@ +from Components.Pixmap import MovingPixmap, MultiPixmap +from Tools.Directories import resolveFilename, SCOPE_SKIN +from xml.etree.ElementTree import ElementTree +from Components.config import config, ConfigInteger +from Components.RcModel import rc_model + +config.misc.rcused = ConfigInteger(default = 1) + +class Rc: + def __init__(self): + self["rc"] = MultiPixmap() + self["arrowdown"] = MovingPixmap() + self["arrowdown2"] = MovingPixmap() + self["arrowup"] = MovingPixmap() + self["arrowup2"] = MovingPixmap() + + config.misc.rcused = ConfigInteger(default = 1) + self.isDefaultRc = rc_model.rcIsDefault() + self.rcheight = 500 + self.rcheighthalf = 250 + + self.selectpics = [] + self.selectpics.append((self.rcheighthalf, ["arrowdown", "arrowdown2"], (-18,-70))) + self.selectpics.append((self.rcheight, ["arrowup", "arrowup2"], (-18,0))) + + self.readPositions() + self.clearSelectedKeys() + self.onShown.append(self.initRc) + + def initRc(self): + if self.isDefaultRc: + self["rc"].setPixmapNum(config.misc.rcused.value) + else: + self["rc"].setPixmapNum(0) + + def readPositions(self): + if self.isDefaultRc: + target = resolveFilename(SCOPE_SKIN, "rcpositions.xml") + else: + target = rc_model.getRcPositions() + tree = ElementTree(file = target) + rcs = tree.getroot() + self.rcs = {} + for rc in rcs: + id = int(rc.attrib["id"]) + self.rcs[id] = {} + for key in rc: + name = key.attrib["name"] + pos = key.attrib["pos"].split(",") + self.rcs[id][name] = (int(pos[0]), int(pos[1])) + + def getSelectPic(self, pos): + for selectPic in self.selectpics: + if pos[1] <= selectPic[0]: + return (selectPic[1], selectPic[2]) + return None + + def hideRc(self): + self["rc"].hide() + self.hideSelectPics() + + def showRc(self): + self["rc"].show() + + def selectKey(self, key): + if self.isDefaultRc: + rc = self.rcs[config.misc.rcused.value] + else: + rc = self.rcs[2] + if rc.has_key(key): + rcpos = self["rc"].getPosition() + pos = rc[key] + selectPics = self.getSelectPic(pos) + selectPic = None + for x in selectPics[0]: + if x not in self.selectedKeys: + selectPic = x + break + if selectPic is not None: + print "selectPic:", selectPic + self[selectPic].moveTo(rcpos[0] + pos[0] + selectPics[1][0], rcpos[1] + pos[1] + selectPics[1][1], 1) + self[selectPic].startMoving() + self[selectPic].show() + self.selectedKeys.append(selectPic) + + def clearSelectedKeys(self): + self.showRc() + self.selectedKeys = [] + self.hideSelectPics() + + def hideSelectPics(self): + for selectPic in self.selectpics: + for pic in selectPic[1]: + self[pic].hide() diff --git a/lib/python/Screens/RdsDisplay.py b/lib/python/Screens/RdsDisplay.py new file mode 100644 index 0000000..d9f65c6 --- /dev/null +++ b/lib/python/Screens/RdsDisplay.py @@ -0,0 +1,296 @@ +from enigma import iPlayableService, iRdsDecoder +from Screens.Screen import Screen +from Components.ActionMap import NumberActionMap +from Components.ServiceEventTracker import ServiceEventTracker +from Components.Pixmap import Pixmap +from Components.Label import Label +from Components.Sources.StaticText import StaticText +from Tools.Directories import resolveFilename, SCOPE_CURRENT_SKIN +from Tools.LoadPixmap import LoadPixmap + +class RdsInfoDisplaySummary(Screen): + def __init__(self, session, parent): + Screen.__init__(self, session, parent = parent) + self["message"] = StaticText("") + self.parent.onText.append(self.onText) + + def onText(self, message): + self["message"].text = message + if message and len(message): + self.show() + else: + self.hide() + +class RdsInfoDisplay(Screen): + ALLOW_SUSPEND = True + + def __init__(self, session): + Screen.__init__(self, session) + + self.__event_tracker = ServiceEventTracker(screen=self, eventmap= + { + iPlayableService.evEnd: self.__serviceStopped, + iPlayableService.evUpdatedRadioText: self.RadioTextChanged, + iPlayableService.evUpdatedRtpText: self.RtpTextChanged, + iPlayableService.evUpdatedRassInteractivePicMask: self.RassInteractivePicMaskChanged, + }) + + self["RadioText"] = Label() + self["RtpText"] = Label() + self["RassLogo"] = Pixmap() + + self.onLayoutFinish.append(self.hideWidgets) + self.rassInteractivePossible=False + self.onRassInteractivePossibilityChanged = [ ] + self.onText = [ ] + + def createSummary(self): + return RdsInfoDisplaySummary + + def hideWidgets(self): + for x in (self["RadioText"],self["RtpText"],self["RassLogo"]): + x.hide() + for x in self.onText: + x('') + + def RadioTextChanged(self): + service = self.session.nav.getCurrentService() + decoder = service and service.rdsDecoder() + rdsText = decoder and decoder.getText(iRdsDecoder.RadioText) + if rdsText and len(rdsText): + self["RadioText"].setText(rdsText) + self["RadioText"].show() + else: + self["RadioText"].hide() + for x in self.onText: + x(rdsText) + + def RtpTextChanged(self): + service = self.session.nav.getCurrentService() + decoder = service and service.rdsDecoder() + rtpText = decoder and decoder.getText(iRdsDecoder.RtpText) + if rtpText and len(rtpText): + self["RtpText"].setText(rtpText) + self["RtpText"].show() + else: + self["RtpText"].hide() + for x in self.onText: + x(rtpText) + + def RassInteractivePicMaskChanged(self): + if not self.rassInteractivePossible: + service = self.session.nav.getCurrentService() + decoder = service and service.rdsDecoder() + mask = decoder and decoder.getRassInteractiveMask() + if mask[0] & 1: #rass interactive index page available + self["RassLogo"].show() + self.rassInteractivePossible = True + for x in self.onRassInteractivePossibilityChanged: + x(True) + + def __serviceStopped(self): + self.hideWidgets() + if self.rassInteractivePossible: + self.rassInteractivePossible = False + for x in self.onRassInteractivePossibilityChanged: + x(False) + +class RassInteractive(Screen): + def __init__(self, session): + Screen.__init__(self, session) + + self["actions"] = NumberActionMap( [ "NumberActions", "RassInteractiveActions" ], + { + "exit": self.close, + "0": lambda x : self.numPressed(0), + "1": lambda x : self.numPressed(1), + "2": lambda x : self.numPressed(2), + "3": lambda x : self.numPressed(3), + "4": lambda x : self.numPressed(4), + "5": lambda x : self.numPressed(5), + "6": lambda x : self.numPressed(6), + "7": lambda x : self.numPressed(7), + "8": lambda x : self.numPressed(8), + "9": lambda x : self.numPressed(9), + "nextPage": self.nextPage, + "prevPage": self.prevPage, + "nextSubPage": self.nextSubPage, + "prevSubPage": self.prevSubPage + }) + + self.__event_tracker = ServiceEventTracker(screen=self, eventmap= + { + iPlayableService.evUpdatedRassInteractivePicMask: self.recvRassInteractivePicMaskChanged + }) + + self["subpages_1"] = Pixmap() + self["subpages_2"] = Pixmap() + self["subpages_3"] = Pixmap() + self["subpages_4"] = Pixmap() + self["subpages_5"] = Pixmap() + self["subpages_6"] = Pixmap() + self["subpages_7"] = Pixmap() + self["subpages_8"] = Pixmap() + self["subpages_9"] = Pixmap() + self["Marker"] = Label(">") + + self.subpage = { + 1 : self["subpages_1"], + 2 : self["subpages_2"], + 3 : self["subpages_3"], + 4 : self["subpages_4"], + 5 : self["subpages_5"], + 6 : self["subpages_6"], + 7 : self["subpages_7"], + 8 : self["subpages_8"], + 9 : self["subpages_9"] } + + self.subpage_png = { + 1 : LoadPixmap(resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/icons/rass_page1.png")), + 2 : LoadPixmap(resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/icons/rass_page2.png")), + 3 : LoadPixmap(resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/icons/rass_page3.png")), + 4 : LoadPixmap(resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/icons/rass_page4.png")) } + + self.current_page=0; + self.current_subpage=0; + self.showRassPage(0,0) + self.onLayoutFinish.append(self.updateSubPagePixmaps) + + def updateSubPagePixmaps(self): + service = self.session.nav.getCurrentService() + decoder = service and service.rdsDecoder() + if not decoder: # this should never happen + print "NO RDS DECODER in showRassPage" + else: + mask = decoder.getRassInteractiveMask() + page = 1 + while page < 10: + subpage_cnt = self.countAvailSubpages(page, mask) + subpage = self.subpage[page] + if subpage_cnt > 0: + if subpage.instance: + png = self.subpage_png[subpage_cnt] + if png: + subpage.instance.setPixmap(png) + subpage.show() + else: + print "rass png missing" + else: + subpage.hide() + page += 1 + + def recvRassInteractivePicMaskChanged(self): + self.updateSubPagePixmaps() + + def showRassPage(self, page, subpage): + service = self.session.nav.getCurrentService() + decoder = service and service.rdsDecoder() + if not decoder: # this should never happen + print "NO RDS DECODER in showRassPage" + else: + decoder.showRassInteractivePic(page, subpage) + page_diff = page - self.current_page + self.current_page = page + if page_diff: + current_pos = self["Marker"].getPosition() + y = current_pos[1] + y += page_diff * 25 + self["Marker"].setPosition(current_pos[0],y) + + def getMaskForPage(self, page, masks=None): + if not masks: + service = self.session.nav.getCurrentService() + decoder = service and service.rdsDecoder() + if not decoder: # this should never happen + print "NO RDS DECODER in getMaskForPage" + masks = decoder.getRassInteractiveMask() + if masks: + mask = masks[(page*4)/8] + if page % 2: + mask >>= 4 + else: + mask &= 0xF + return mask + + def countAvailSubpages(self, page, masks): + mask = self.getMaskForPage(page, masks) + cnt = 0 + while mask: + if mask & 1: + cnt += 1 + mask >>= 1 + return cnt + + def nextPage(self): + mask = 0 + page = self.current_page + while mask == 0: + page += 1 + if page > 9: + page = 0 + mask = self.getMaskForPage(page) + self.numPressed(page) + + def prevPage(self): + mask = 0 + page = self.current_page + while mask == 0: + if page > 0: + page -= 1 + else: + page = 9 + mask = self.getMaskForPage(page) + self.numPressed(page) + + def nextSubPage(self): + self.numPressed(self.current_page) + + def prevSubPage(self): + num = self.current_page + mask = self.getMaskForPage(num) + cur_bit = 1 << self.current_subpage + tmp = cur_bit + while True: + if tmp == 1: + tmp = 8 + else: + tmp >>= 1 + if tmp == cur_bit: # no other subpage avail + return + if mask & tmp: # next subpage found + subpage = 0 + while tmp > 1: # convert bit to subpage + subpage += 1 + tmp >>= 1 + self.current_subpage = subpage + self.showRassPage(num, subpage) + return + + def numPressed(self, num): + mask = self.getMaskForPage(num) + if self.current_page == num: + self.skip = 0 + cur_bit = 1 << self.current_subpage + tmp = cur_bit + else: + self.skip = 1 + cur_bit = 16 + tmp = 1 + while True: + if not self.skip: + if tmp == 8 and cur_bit < 16: + tmp = 1 + else: + tmp <<= 1 + else: + self.skip = 0 + if tmp == cur_bit: # no other subpage avail + return + if mask & tmp: # next subpage found + subpage = 0 + while tmp > 1: # convert bit to subpage + subpage += 1 + tmp >>= 1 + self.current_subpage = subpage + self.showRassPage(num, subpage) + return diff --git a/lib/python/Screens/RecordPaths.py b/lib/python/Screens/RecordPaths.py new file mode 100644 index 0000000..f98fbf4 --- /dev/null +++ b/lib/python/Screens/RecordPaths.py @@ -0,0 +1,191 @@ +from Screens.Screen import Screen +from Screens.LocationBox import MovieLocationBox, TimeshiftLocationBox +from Screens.MessageBox import MessageBox +from Components.Label import Label +from Components.config import config, ConfigSelection, getConfigListEntry, configfile +from Components.ConfigList import ConfigListScreen +from Components.ActionMap import ActionMap +from Tools.Directories import fileExists +from Components.UsageConfig import preferredPath + +class RecordPathsSettings(Screen,ConfigListScreen): + skin = """ + <screen name="RecordPathsSettings" position="160,150" size="450,200" title="Recording paths"> + <ePixmap pixmap="skin_default/buttons/red.png" position="10,0" size="140,40" alphatest="on" /> + <ePixmap pixmap="skin_default/buttons/green.png" position="300,0" size="140,40" alphatest="on" /> + <widget source="key_red" render="Label" position="10,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#9f1313" transparent="1" /> + <widget source="key_green" render="Label" position="300,0" zPosition="1" size="140,40" font="Regular;20" halign="center" valign="center" backgroundColor="#1f771f" transparent="1" /> + <widget name="config" position="10,44" size="430,146" /> + </screen>""" + + def __init__(self, session): + from Components.Sources.StaticText import StaticText + Screen.__init__(self, session) + self["key_red"] = StaticText(_("Cancel")) + self["key_green"] = StaticText(_("Save")) + + ConfigListScreen.__init__(self, []) + self.initConfigList() + + self["setupActions"] = ActionMap(["SetupActions", "ColorActions", "MenuActions"], + { + "green": self.save, + "red": self.keyCancel, + "cancel": self.keyCancel, + "ok": self.ok, + "menu": self.closeRecursive, + }, -2) + + def checkReadWriteDir(self, configele): + print "checkReadWrite: ", configele.value + if configele.value in [x[0] for x in self.styles] or fileExists(configele.value, "w"): + configele.last_value = configele.value + return True + else: + dir = configele.value + configele.value = configele.last_value + self.session.open( + MessageBox, + _("The directory %s is not writable.\nMake sure you select a writable directory instead.")%dir, + type = MessageBox.TYPE_ERROR + ) + return False + + def initConfigList(self): + self.styles = [ ("<default>", _("<Default movie location>")), ("<current>", _("<Current movielist location>")), ("<timer>", _("<Last timer location>")) ] + styles_keys = [x[0] for x in self.styles] + tmp = config.movielist.videodirs.value + default = config.usage.default_path.value + if default not in tmp: + tmp = tmp[:] + tmp.append(default) + print "DefaultPath: ", default, tmp + self.default_dirname = ConfigSelection(default = default, choices = tmp) + tmp = config.movielist.videodirs.value + default = config.usage.timer_path.value + if default not in tmp and default not in styles_keys: + tmp = tmp[:] + tmp.append(default) + print "TimerPath: ", default, tmp + self.timer_dirname = ConfigSelection(default = default, choices = self.styles+tmp) + tmp = config.movielist.videodirs.value + default = config.usage.instantrec_path.value + if default not in tmp and default not in styles_keys: + tmp = tmp[:] + tmp.append(default) + print "InstantrecPath: ", default, tmp + self.instantrec_dirname = ConfigSelection(default = default, choices = self.styles+tmp) + default = config.usage.timeshift_path.value + tmp = config.usage.allowed_timeshift_paths.value + if default not in tmp: + tmp = tmp[:] + tmp.append(default) + print "TimeshiftPath: ", default, tmp + self.timeshift_dirname = ConfigSelection(default = default, choices = tmp) + self.default_dirname.addNotifier(self.checkReadWriteDir, initial_call=False, immediate_feedback=False) + self.timer_dirname.addNotifier(self.checkReadWriteDir, initial_call=False, immediate_feedback=False) + self.instantrec_dirname.addNotifier(self.checkReadWriteDir, initial_call=False, immediate_feedback=False) + self.timeshift_dirname.addNotifier(self.checkReadWriteDir, initial_call=False, immediate_feedback=False) + + self.list = [] + if config.usage.setup_level.index >= 2: + self.default_entry = getConfigListEntry(_("Default movie location"), self.default_dirname) + self.list.append(self.default_entry) + self.timer_entry = getConfigListEntry(_("Timer recording location"), self.timer_dirname) + self.list.append(self.timer_entry) + self.instantrec_entry = getConfigListEntry(_("Instant recording location"), self.instantrec_dirname) + self.list.append(self.instantrec_entry) + else: + self.default_entry = getConfigListEntry(_("Movie location"), self.default_dirname) + self.list.append(self.default_entry) + self.timeshift_entry = getConfigListEntry(_("Timeshift location"), self.timeshift_dirname) + self.list.append(self.timeshift_entry) + self["config"].setList(self.list) + + def ok(self): + currentry = self["config"].getCurrent() + self.lastvideodirs = config.movielist.videodirs.value + self.lasttimeshiftdirs = config.usage.allowed_timeshift_paths.value + if config.usage.setup_level.index >= 2: + txt = _("Default movie location") + else: + txt = _("Movie location") + if currentry == self.default_entry: + self.entrydirname = self.default_dirname + self.session.openWithCallback( + self.dirnameSelected, + MovieLocationBox, + txt, + preferredPath(self.default_dirname.value) + ) + elif currentry == self.timer_entry: + self.entrydirname = self.timer_dirname + self.session.openWithCallback( + self.dirnameSelected, + MovieLocationBox, + _("Initial location in new timers"), + preferredPath(self.timer_dirname.value) + ) + elif currentry == self.instantrec_entry: + self.entrydirname = self.instantrec_dirname + self.session.openWithCallback( + self.dirnameSelected, + MovieLocationBox, + _("Location for instant recordings"), + preferredPath(self.instantrec_dirname.value) + ) + elif currentry == self.timeshift_entry: + self.entrydirname = self.timeshift_dirname + config.usage.timeshift_path.value = self.timeshift_dirname.value + self.session.openWithCallback( + self.dirnameSelected, + TimeshiftLocationBox + ) + + def dirnameSelected(self, res): + if res is not None: + self.entrydirname.value = res + if config.movielist.videodirs.value != self.lastvideodirs: + styles_keys = [x[0] for x in self.styles] + tmp = config.movielist.videodirs.value + default = self.default_dirname.value + if default not in tmp: + tmp = tmp[:] + tmp.append(default) + self.default_dirname.setChoices(tmp, default=default) + tmp = config.movielist.videodirs.value + default = self.timer_dirname.value + if default not in tmp and default not in styles_keys: + tmp = tmp[:] + tmp.append(default) + self.timer_dirname.setChoices(self.styles+tmp, default=default) + tmp = config.movielist.videodirs.value + default = self.instantrec_dirname.value + if default not in tmp and default not in styles_keys: + tmp = tmp[:] + tmp.append(default) + self.instantrec_dirname.setChoices(self.styles+tmp, default=default) + self.entrydirname.value = res + if config.usage.allowed_timeshift_paths.value != self.lasttimeshiftdirs: + tmp = config.usage.allowed_timeshift_paths.value + default = self.instantrec_dirname.value + if default not in tmp: + tmp = tmp[:] + tmp.append(default) + self.timeshift_dirname.setChoices(tmp, default=default) + self.entrydirname.value = res + if self.entrydirname.last_value != res: + self.checkReadWriteDir(self.entrydirname) + + def save(self): + currentry = self["config"].getCurrent() + if self.checkReadWriteDir(currentry[1]): + config.usage.default_path.value = self.default_dirname.value + config.usage.timer_path.value = self.timer_dirname.value + config.usage.instantrec_path.value = self.instantrec_dirname.value + config.usage.timeshift_path.value = self.timeshift_dirname.value + config.usage.default_path.save() + config.usage.timer_path.save() + config.usage.instantrec_path.save() + config.usage.timeshift_path.save() + self.close() diff --git a/lib/python/Screens/Satconfig.py b/lib/python/Screens/Satconfig.py new file mode 100644 index 0000000..5e276ab --- /dev/null +++ b/lib/python/Screens/Satconfig.py @@ -0,0 +1,730 @@ +from enigma import eDVBDB +from Screen import Screen +from Components.SystemInfo import SystemInfo +from Components.ActionMap import ActionMap +from Components.ConfigList import ConfigListScreen +from Components.MenuList import MenuList +from Components.NimManager import nimmanager +from Components.Button import Button +from Components.Label import Label +from Components.SelectionList import SelectionList, SelectionEntryComponent +from Components.config import getConfigListEntry, config, ConfigNothing, ConfigSelection, updateConfigElement, ConfigSatlist, ConfigYesNo +from Components.Sources.List import List +from Screens.MessageBox import MessageBox +from Screens.ChoiceBox import ChoiceBox +from Screens.ServiceStopScreen import ServiceStopScreen +from Screens.AutoDiseqc import AutoDiseqc +from Tools.BoundFunction import boundFunction + +from time import mktime, localtime +from datetime import datetime + +class NimSetup(Screen, ConfigListScreen, ServiceStopScreen): + def createSimpleSetup(self, list, mode): + nim = self.nimConfig + + if mode == "single": + list.append(getConfigListEntry(_("Satellite"), nim.diseqcA)) + else: + list.append(getConfigListEntry(_("Port A"), nim.diseqcA)) + + if mode in ("toneburst_a_b", "diseqc_a_b", "diseqc_a_b_c_d"): + list.append(getConfigListEntry(_("Port B"), nim.diseqcB)) + if mode == "diseqc_a_b_c_d": + list.append(getConfigListEntry(_("Port C"), nim.diseqcC)) + list.append(getConfigListEntry(_("Port D"), nim.diseqcD)) + if mode != "toneburst_a_b": + list.append(getConfigListEntry(_("Set voltage and 22KHz"), nim.simpleDiSEqCSetVoltageTone)) + list.append(getConfigListEntry(_("Send DiSEqC only on satellite change"), nim.simpleDiSEqCOnlyOnSatChange)) + + def createPositionerSetup(self, list): + nim = self.nimConfig + if nim.diseqcMode.value == "positioner_select": + self.selectSatsEntry = getConfigListEntry(_("Press OK to select satellites"), self.nimConfig.pressOKtoList) + list.append(self.selectSatsEntry) + list.append(getConfigListEntry(_("Longitude"), nim.longitude)) + list.append(getConfigListEntry(" ", nim.longitudeOrientation)) + list.append(getConfigListEntry(_("Latitude"), nim.latitude)) + list.append(getConfigListEntry(" ", nim.latitudeOrientation)) + if SystemInfo["CanMeasureFrontendInputPower"]: + self.advancedPowerMeasurement = getConfigListEntry(_("Use power measurement"), nim.powerMeasurement) + list.append(self.advancedPowerMeasurement) + if nim.powerMeasurement.value: + list.append(getConfigListEntry(_("Power threshold in mA"), nim.powerThreshold)) + self.turningSpeed = getConfigListEntry(_("Rotor turning speed"), nim.turningSpeed) + list.append(self.turningSpeed) + if nim.turningSpeed.value == "fast epoch": + self.turnFastEpochBegin = getConfigListEntry(_("Begin time"), nim.fastTurningBegin) + self.turnFastEpochEnd = getConfigListEntry(_("End time"), nim.fastTurningEnd) + list.append(self.turnFastEpochBegin) + list.append(self.turnFastEpochEnd) + else: + if nim.powerMeasurement.value: + nim.powerMeasurement.value = False + nim.powerMeasurement.save() + if not hasattr(self, 'additionalMotorOptions'): + self.additionalMotorOptions = ConfigYesNo(False) + self.showAdditionalMotorOptions = getConfigListEntry(_("Extra motor options"), self.additionalMotorOptions) + self.list.append(self.showAdditionalMotorOptions) + if self.additionalMotorOptions.value: + self.list.append(getConfigListEntry(" " + _("Horizontal turning speed") + " [" + chr(176) + "/sec]", nim.turningspeedH)) + self.list.append(getConfigListEntry(" " + _("Vertical turning speed") + " [" + chr(176) + "/sec]", nim.turningspeedV)) + self.list.append(getConfigListEntry(" " + _("Turning step size") + " [" + chr(176) + "]", nim.tuningstepsize)) + self.list.append(getConfigListEntry(" " + _("Max memory positions"), nim.rotorPositions)) + + def createConfigMode(self): + if self.nim.isCompatible("DVB-S"): + choices = {"nothing": _("Not configured"), + "simple": _("Simple"), + "advanced": _("Advanced")} + if len(nimmanager.canEqualTo(self.slotid)) > 0: + choices["equal"] = _("Equal to") + if len(nimmanager.canDependOn(self.slotid)) > 0: + choices["satposdepends"] = _("Second cable of motorized LNB") + if len(nimmanager.canConnectTo(self.slotid)) > 0: + choices["loopthrough"] = _("Loop through to") + self.nimConfig.configMode.setChoices(choices, default = "simple") + + def createSetup(self): + print "Creating setup" + self.list = [ ] + + self.multiType = None + self.configMode = None + self.diseqcModeEntry = None + self.advancedSatsEntry = None + self.advancedLnbsEntry = None + self.advancedDiseqcMode = None + self.advancedUsalsEntry = None + self.advancedLof = None + self.advancedPowerMeasurement = None + self.turningSpeed = None + self.turnFastEpochBegin = None + self.turnFastEpochEnd = None + self.toneburst = None + self.committedDiseqcCommand = None + self.uncommittedDiseqcCommand = None + self.commandOrder = None + self.cableScanType = None + self.have_advanced = False + self.advancedUnicable = None + self.advancedType = None + self.advancedManufacturer = None + self.advancedSCR = None + self.advancedConnected = None + self.showAdditionalMotorOptions = None + self.selectSatsEntry = None + self.advancedSelectSatsEntry = None + + if self.nim.isMultiType(): + multiType = self.nimConfig.multiType + self.multiType = getConfigListEntry(_("Tuner type"), multiType) + self.list.append(self.multiType) + + if self.nim.isCompatible("DVB-S"): + self.configMode = getConfigListEntry(_("Configuration mode"), self.nimConfig.configMode) + self.list.append(self.configMode) + + if self.nimConfig.configMode.value == "simple": #simple setup + self.diseqcModeEntry = getConfigListEntry(pgettext("Satellite configuration mode", "Mode"), self.nimConfig.diseqcMode) + self.list.append(self.diseqcModeEntry) + if self.nimConfig.diseqcMode.value in ("single", "toneburst_a_b", "diseqc_a_b", "diseqc_a_b_c_d"): + self.createSimpleSetup(self.list, self.nimConfig.diseqcMode.value) + if self.nimConfig.diseqcMode.value in ("positioner", "positioner_select"): + self.createPositionerSetup(self.list) + elif self.nimConfig.configMode.value == "equal": + choices = [] + nimlist = nimmanager.canEqualTo(self.nim.slot) + for id in nimlist: + choices.append((str(id), nimmanager.getNimDescription(id))) + self.nimConfig.connectedTo.setChoices(choices) + self.list.append(getConfigListEntry(_("Tuner"), self.nimConfig.connectedTo)) + elif self.nimConfig.configMode.value == "satposdepends": + choices = [] + nimlist = nimmanager.canDependOn(self.nim.slot) + for id in nimlist: + choices.append((str(id), nimmanager.getNimDescription(id))) + self.nimConfig.connectedTo.setChoices(choices) + self.list.append(getConfigListEntry(_("Tuner"), self.nimConfig.connectedTo)) + elif self.nimConfig.configMode.value == "loopthrough": + choices = [] + print "connectable to:", nimmanager.canConnectTo(self.slotid) + connectable = nimmanager.canConnectTo(self.slotid) + for id in connectable: + choices.append((str(id), nimmanager.getNimDescription(id))) + self.nimConfig.connectedTo.setChoices(choices) + self.list.append(getConfigListEntry(_("Connected to"), self.nimConfig.connectedTo)) + elif self.nimConfig.configMode.value == "nothing": + pass + elif self.nimConfig.configMode.value == "advanced": # advanced + # SATs + self.advancedSatsEntry = getConfigListEntry(_("Satellite"), self.nimConfig.advanced.sats) + self.list.append(self.advancedSatsEntry) + current_config_sats = self.nimConfig.advanced.sats.value + if current_config_sats in ("3605", "3606"): + self.advancedSelectSatsEntry = getConfigListEntry(_("Press OK to select satellites"), self.nimConfig.pressOKtoList) + self.list.append(self.advancedSelectSatsEntry) + self.fillListWithAdvancedSatEntrys(self.nimConfig.advanced.sat[int(current_config_sats)]) + else: + cur_orb_pos = self.nimConfig.advanced.sats.orbital_position + satlist = self.nimConfig.advanced.sat.keys() + if cur_orb_pos is not None: + if cur_orb_pos not in satlist: + cur_orb_pos = satlist[0] + self.fillListWithAdvancedSatEntrys(self.nimConfig.advanced.sat[cur_orb_pos]) + self.have_advanced = True + if self.nim.description == "Alps BSBE2" and config.usage.setup_level.index >= 2: # expert + self.list.append(getConfigListEntry(_("Tone amplitude"), self.nimConfig.toneAmplitude)) + elif self.nim.isCompatible("DVB-C"): + self.configMode = getConfigListEntry(_("Configuration mode"), self.nimConfig.configMode) + self.list.append(self.configMode) + if self.nimConfig.configMode.value == "enabled": + self.list.append(getConfigListEntry(_("Network ID"), self.nimConfig.cable.scan_networkid)) + self.cableScanType=getConfigListEntry(_("Used service scan type"), self.nimConfig.cable.scan_type) + self.list.append(self.cableScanType) + if self.nimConfig.cable.scan_type.value == "provider": + self.list.append(getConfigListEntry(_("Provider to scan"), self.nimConfig.cable.scan_provider)) + else: + if self.nimConfig.cable.scan_type.value == "bands": + # TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' + self.list.append(getConfigListEntry(_("Scan %s band") % ("EU VHF I"), self.nimConfig.cable.scan_band_EU_VHF_I)) + self.list.append(getConfigListEntry(_("Scan %s band") % ("EU MID"), self.nimConfig.cable.scan_band_EU_MID)) + self.list.append(getConfigListEntry(_("Scan %s band") % ("EU VHF III"), self.nimConfig.cable.scan_band_EU_VHF_III)) + self.list.append(getConfigListEntry(_("Scan %s band") % ("EU UHF IV"), self.nimConfig.cable.scan_band_EU_UHF_IV)) + self.list.append(getConfigListEntry(_("Scan %s band") % ("EU UHF V"), self.nimConfig.cable.scan_band_EU_UHF_V)) + self.list.append(getConfigListEntry(_("Scan %s band") % ("EU SUPER"), self.nimConfig.cable.scan_band_EU_SUPER)) + self.list.append(getConfigListEntry(_("Scan %s band") % ("EU HYPER"), self.nimConfig.cable.scan_band_EU_HYPER)) + self.list.append(getConfigListEntry(_("Scan %s band") % ("US LOW"), self.nimConfig.cable.scan_band_US_LOW)) + self.list.append(getConfigListEntry(_("Scan %s band") % ("US MID"), self.nimConfig.cable.scan_band_US_MID)) + self.list.append(getConfigListEntry(_("Scan %s band") % ("US HIGH"), self.nimConfig.cable.scan_band_US_HIGH)) + self.list.append(getConfigListEntry(_("Scan %s band") % ("US SUPER"), self.nimConfig.cable.scan_band_US_SUPER)) + self.list.append(getConfigListEntry(_("Scan %s band") % ("US HYPER"), self.nimConfig.cable.scan_band_US_HYPER)) + elif self.nimConfig.cable.scan_type.value == "steps": + self.list.append(getConfigListEntry(_("Frequency scan step size(khz)"), self.nimConfig.cable.scan_frequency_steps)) + # TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' + self.list.append(getConfigListEntry(_("Scan %s") % ("QAM16"), self.nimConfig.cable.scan_mod_qam16)) + self.list.append(getConfigListEntry(_("Scan %s") % ("QAM32"), self.nimConfig.cable.scan_mod_qam32)) + self.list.append(getConfigListEntry(_("Scan %s") % ("QAM64"), self.nimConfig.cable.scan_mod_qam64)) + self.list.append(getConfigListEntry(_("Scan %s") % ("QAM128"), self.nimConfig.cable.scan_mod_qam128)) + self.list.append(getConfigListEntry(_("Scan %s") % ("QAM256"), self.nimConfig.cable.scan_mod_qam256)) + self.list.append(getConfigListEntry(_("Scan %s") % ("SR6900"), self.nimConfig.cable.scan_sr_6900)) + self.list.append(getConfigListEntry(_("Scan %s") % ("SR6875"), self.nimConfig.cable.scan_sr_6875)) + self.list.append(getConfigListEntry(_("Scan additional SR"), self.nimConfig.cable.scan_sr_ext1)) + self.list.append(getConfigListEntry(_("Scan additional SR"), self.nimConfig.cable.scan_sr_ext2)) + self.have_advanced = False + elif self.nim.isCompatible("DVB-T"): + self.configMode = getConfigListEntry(_("Configuration mode"), self.nimConfig.configMode) + self.list.append(self.configMode) + self.have_advanced = False + if self.nimConfig.configMode.value == "enabled": + self.list.append(getConfigListEntry(_("Terrestrial provider"), self.nimConfig.terrestrial)) + self.list.append(getConfigListEntry(_("Enable 5V for active antenna"), self.nimConfig.terrestrial_5V)) + else: + self.have_advanced = False + self["config"].list = self.list + self["config"].l.setList(self.list) + + def newConfig(self): + self.setTextKeyBlue() + checkList = (self.configMode, self.diseqcModeEntry, self.advancedSatsEntry, \ + self.advancedLnbsEntry, self.advancedDiseqcMode, self.advancedUsalsEntry, \ + self.advancedLof, self.advancedPowerMeasurement, self.turningSpeed, \ + self.advancedType, self.advancedSCR, self.advancedManufacturer, self.advancedUnicable, self.advancedConnected, \ + self.toneburst, self.committedDiseqcCommand, self.uncommittedDiseqcCommand, \ + self.commandOrder, self.showAdditionalMotorOptions, self.cableScanType, self.multiType) + if self["config"].getCurrent() == self.multiType: + from Components.NimManager import InitNimManager + InitNimManager(nimmanager) + self.nim = nimmanager.nim_slots[self.slotid] + self.nimConfig = self.nim.config + + for x in checkList: + if self["config"].getCurrent() == x: + self.createSetup() + break + + def run(self): + if self.nimConfig.configMode.value == "simple": + autodiseqc_ports = 0 + if self.nimConfig.diseqcMode.value == "single": + if self.nimConfig.diseqcA.orbital_position == 3600: + autodiseqc_ports = 1 + elif self.nimConfig.diseqcMode.value == "diseqc_a_b": + if self.nimConfig.diseqcA.orbital_position == 3600 or self.nimConfig.diseqcB.orbital_position == 3600: + autodiseqc_ports = 2 + elif self.nimConfig.diseqcMode.value == "diseqc_a_b_c_d": + if self.nimConfig.diseqcA.orbital_position == 3600 or self.nimConfig.diseqcB.orbital_position == 3600 or self.nimConfig.diseqcC.orbital_position == 3600 or self.nimConfig.diseqcD.orbital_position == 3600: + autodiseqc_ports = 4 + if autodiseqc_ports: + self.autoDiseqcRun(autodiseqc_ports) + return False + if self.have_advanced and self.nim.config_mode == "advanced": + self.fillAdvancedList() + for x in self.list: + if x in (self.turnFastEpochBegin, self.turnFastEpochEnd): + # workaround for storing only hour*3600+min*60 value in configfile + # not really needed.. just for cosmetics.. + tm = localtime(x[1].value) + dt = datetime(1970, 1, 1, tm.tm_hour, tm.tm_min) + x[1].value = int(mktime(dt.timetuple())) + x[1].save() + nimmanager.sec.update() + self.saveAll() + return True + + def autoDiseqcRun(self, ports): + self.session.openWithCallback(self.autoDiseqcCallback, AutoDiseqc, self.slotid, ports, self.nimConfig.simpleDiSEqCSetVoltageTone, self.nimConfig.simpleDiSEqCOnlyOnSatChange) + + def autoDiseqcCallback(self, result): + from Screens.Wizard import Wizard + if Wizard.instance is not None: + Wizard.instance.back() + else: + self.createSetup() + + def fillListWithAdvancedSatEntrys(self, Sat): + lnbnum = int(Sat.lnb.value) + currLnb = self.nimConfig.advanced.lnb[lnbnum] + + if isinstance(currLnb, ConfigNothing): + currLnb = None + + # LNBs + self.advancedLnbsEntry = getConfigListEntry(_("LNB"), Sat.lnb) + self.list.append(self.advancedLnbsEntry) + + if currLnb: + self.list.append(getConfigListEntry(_("Priority"), currLnb.prio)) + self.advancedLof = getConfigListEntry("LOF", currLnb.lof) + self.list.append(self.advancedLof) + if currLnb.lof.value == "user_defined": + self.list.append(getConfigListEntry("LOF/L", currLnb.lofl)) + self.list.append(getConfigListEntry("LOF/H", currLnb.lofh)) + self.list.append(getConfigListEntry(_("Threshold"), currLnb.threshold)) + + if currLnb.lof.value == "unicable": + self.advancedUnicable = getConfigListEntry("Unicable "+_("Configuration mode"), currLnb.unicable) + self.list.append(self.advancedUnicable) + if currLnb.unicable.value == "unicable_user": + self.advancedSCR = getConfigListEntry(_("Channel"), currLnb.satcruser) + self.list.append(self.advancedSCR) + self.list.append(getConfigListEntry(_("Frequency"), currLnb.satcrvcouser[currLnb.satcruser.index])) + self.list.append(getConfigListEntry("LOF/L", currLnb.lofl)) + self.list.append(getConfigListEntry("LOF/H", currLnb.lofh)) + self.list.append(getConfigListEntry(_("Threshold"), currLnb.threshold)) + elif currLnb.unicable.value == "unicable_matrix": + manufacturer_name = currLnb.unicableMatrixManufacturer.value + manufacturer = currLnb.unicableMatrix[manufacturer_name] + product_name = manufacturer.product.value + self.advancedManufacturer = getConfigListEntry(_("Manufacturer"), currLnb.unicableMatrixManufacturer) + self.advancedType = getConfigListEntry(_("Type"), manufacturer.product) + self.advancedSCR = getConfigListEntry(_("Channel"), manufacturer.scr[product_name]) + self.list.append(self.advancedManufacturer) + self.list.append(self.advancedType) + self.list.append(self.advancedSCR) + self.list.append(getConfigListEntry(_("Frequency"), manufacturer.vco[product_name][manufacturer.scr[product_name].index])) + elif currLnb.unicable.value == "unicable_lnb": + manufacturer_name = currLnb.unicableLnbManufacturer.value + manufacturer = currLnb.unicableLnb[manufacturer_name] + product_name = manufacturer.product.value + self.advancedManufacturer = getConfigListEntry(_("Manufacturer"), currLnb.unicableLnbManufacturer) + self.advancedType = getConfigListEntry(_("Type"), manufacturer.product) + self.advancedSCR = getConfigListEntry(_("Channel"), manufacturer.scr[product_name]) + self.list.append(self.advancedManufacturer) + self.list.append(self.advancedType) + self.list.append(self.advancedSCR) + self.list.append(getConfigListEntry(_("Frequency"), manufacturer.vco[product_name][manufacturer.scr[product_name].index])) + + choices = [] + connectable = nimmanager.canConnectTo(self.slotid) + for id in connectable: + choices.append((str(id), nimmanager.getNimDescription(id))) + if len(choices): + self.advancedConnected = getConfigListEntry(_("connected"), self.nimConfig.advanced.unicableconnected) + self.list.append(self.advancedConnected) + if self.nimConfig.advanced.unicableconnected.value == True: + self.nimConfig.advanced.unicableconnectedTo.setChoices(choices) + self.list.append(getConfigListEntry(_("Connected to"),self.nimConfig.advanced.unicableconnectedTo)) + + else: #kein Unicable + self.list.append(getConfigListEntry(_("Voltage mode"), Sat.voltage)) + self.list.append(getConfigListEntry(_("Increased voltage"), currLnb.increased_voltage)) + self.list.append(getConfigListEntry(_("Tone mode"), Sat.tonemode)) + + if lnbnum < 65: + self.advancedDiseqcMode = getConfigListEntry(_("DiSEqC mode"), currLnb.diseqcMode) + self.list.append(self.advancedDiseqcMode) + if currLnb.diseqcMode.value != "none": + self.list.append(getConfigListEntry(_("Fast DiSEqC"), currLnb.fastDiseqc)) + self.toneburst = getConfigListEntry(_("Toneburst"), currLnb.toneburst) + self.list.append(self.toneburst) + self.committedDiseqcCommand = getConfigListEntry(_("DiSEqC 1.0 command"), currLnb.commitedDiseqcCommand) + self.list.append(self.committedDiseqcCommand) + if currLnb.diseqcMode.value == "1_0": + if currLnb.toneburst.index and currLnb.commitedDiseqcCommand.index: + self.list.append(getConfigListEntry(_("Command order"), currLnb.commandOrder1_0)) + else: + self.uncommittedDiseqcCommand = getConfigListEntry(_("DiSEqC 1.1 command"), currLnb.uncommittedDiseqcCommand) + self.list.append(self.uncommittedDiseqcCommand) + if currLnb.uncommittedDiseqcCommand.index: + if currLnb.commandOrder.value == "ct": + currLnb.commandOrder.value = "cut" + elif currLnb.commandOrder.value == "tc": + currLnb.commandOrder.value = "tcu" + else: + if currLnb.commandOrder.index & 1: + currLnb.commandOrder.value = "tc" + else: + currLnb.commandOrder.value = "ct" + self.commandOrder = getConfigListEntry(_("Command order"), currLnb.commandOrder) + if 1 < ((1 if currLnb.uncommittedDiseqcCommand.index else 0) + (1 if currLnb.commitedDiseqcCommand.index else 0) + (1 if currLnb.toneburst.index else 0)): + self.list.append(self.commandOrder) + if currLnb.uncommittedDiseqcCommand.index: + self.list.append(getConfigListEntry(_("DiSEqC 1.1 repeats"), currLnb.diseqcRepeats)) + self.list.append(getConfigListEntry(_("Sequence repeat"), currLnb.sequenceRepeat)) + if currLnb.diseqcMode.value == "1_2": + if SystemInfo["CanMeasureFrontendInputPower"]: + self.advancedPowerMeasurement = getConfigListEntry(_("Use power measurement"), currLnb.powerMeasurement) + self.list.append(self.advancedPowerMeasurement) + if currLnb.powerMeasurement.value: + self.list.append(getConfigListEntry(_("Power threshold in mA"), currLnb.powerThreshold)) + self.turningSpeed = getConfigListEntry(_("Rotor turning speed"), currLnb.turningSpeed) + self.list.append(self.turningSpeed) + if currLnb.turningSpeed.value == "fast epoch": + self.turnFastEpochBegin = getConfigListEntry(_("Begin time"), currLnb.fastTurningBegin) + self.turnFastEpochEnd = getConfigListEntry(_("End time"), currLnb.fastTurningEnd) + self.list.append(self.turnFastEpochBegin) + self.list.append(self.turnFastEpochEnd) + else: + if currLnb.powerMeasurement.value: + currLnb.powerMeasurement.value = False + currLnb.powerMeasurement.save() + self.advancedUsalsEntry = getConfigListEntry(_("Use USALS for this sat"), Sat.usals) + if lnbnum < 65: + self.list.append(self.advancedUsalsEntry) + if Sat.usals.value: + self.list.append(getConfigListEntry(_("Longitude"), currLnb.longitude)) + self.list.append(getConfigListEntry(" ", currLnb.longitudeOrientation)) + self.list.append(getConfigListEntry(_("Latitude"), currLnb.latitude)) + self.list.append(getConfigListEntry(" ", currLnb.latitudeOrientation)) + else: + self.list.append(getConfigListEntry(_("Stored position"), Sat.rotorposition)) + if not hasattr(self, 'additionalMotorOptions'): + self.additionalMotorOptions = ConfigYesNo(False) + self.showAdditionalMotorOptions = getConfigListEntry(_("Extra motor options"), self.additionalMotorOptions) + self.list.append(self.showAdditionalMotorOptions) + if self.additionalMotorOptions.value: + self.list.append(getConfigListEntry(" " + _("Horizontal turning speed") + " [" + chr(176) + "/sec]", currLnb.turningspeedH)) + self.list.append(getConfigListEntry(" " + _("Vertical turning speed") + " [" + chr(176) + "/sec]", currLnb.turningspeedV)) + self.list.append(getConfigListEntry(" " + _("Turning step size") + " [" + chr(176) + "]", currLnb.tuningstepsize)) + self.list.append(getConfigListEntry(" " + _("Max memory positions"), currLnb.rotorPositions)) + + def fillAdvancedList(self): + self.list = [ ] + self.configMode = getConfigListEntry(_("Configuration mode"), self.nimConfig.configMode) + self.list.append(self.configMode) + self.advancedSatsEntry = getConfigListEntry(_("Satellite"), self.nimConfig.advanced.sats) + self.list.append(self.advancedSatsEntry) + for x in self.nimConfig.advanced.sat.keys(): + Sat = self.nimConfig.advanced.sat[x] + self.fillListWithAdvancedSatEntrys(Sat) + self["config"].list = self.list + + def keyOk(self): + if self["config"].getCurrent() == self.advancedSelectSatsEntry: + conf = self.nimConfig.advanced.sat[int(self.nimConfig.advanced.sats.value)].userSatellitesList + self.session.openWithCallback(boundFunction(self.updateConfUserSatellitesList, conf), SelectSatsEntryScreen, userSatlist=conf.value) + elif self["config"].getCurrent() == self.selectSatsEntry: + conf = self.nimConfig.userSatellitesList + self.session.openWithCallback(boundFunction(self.updateConfUserSatellitesList, conf), SelectSatsEntryScreen, userSatlist=conf.value) + else: + self.keySave() + + def updateConfUserSatellitesList(self, conf, val=None): + if val is not None: + conf.value = val + conf.save() + + def keySave(self): + old_configured_sats = nimmanager.getConfiguredSats() + if not self.run(): + return + new_configured_sats = nimmanager.getConfiguredSats() + self.unconfed_sats = old_configured_sats - new_configured_sats + self.satpos_to_remove = None + self.deleteConfirmed((None, "no")) + + def deleteConfirmed(self, confirmed): + if confirmed is None: + confirmed = (None, "no") + + if confirmed[1] == "yes" or confirmed[1] == "yestoall": + eDVBDB.getInstance().removeServices(-1, -1, -1, self.satpos_to_remove) + + if self.satpos_to_remove is not None: + self.unconfed_sats.remove(self.satpos_to_remove) + + self.satpos_to_remove = None + for orbpos in self.unconfed_sats: + self.satpos_to_remove = orbpos + orbpos = self.satpos_to_remove + try: + # why we need this cast? + sat_name = str(nimmanager.getSatDescription(orbpos)) + except: + if orbpos > 1800: # west + orbpos = 3600 - orbpos + h = _("W") + else: + h = _("E") + sat_name = ("%d.%d" + h) % (orbpos / 10, orbpos % 10) + + if confirmed[1] == "yes" or confirmed[1] == "no": + # TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. + self.session.openWithCallback(self.deleteConfirmed, ChoiceBox, _("%s is no longer used. Should it be deleted?") % sat_name, [(_("Yes"), "yes"), (_("No"), "no"), (_("Yes to all"), "yestoall"), (_("No to all"), "notoall")], None, 1) + if confirmed[1] == "yestoall" or confirmed[1] == "notoall": + self.deleteConfirmed(confirmed) + break + else: + self.restoreService(_("Zap back to service before tuner setup?")) + + def __init__(self, session, slotid): + Screen.__init__(self, session) + self.list = [ ] + ServiceStopScreen.__init__(self) + self.stopService() + ConfigListScreen.__init__(self, self.list) + + self["key_red"] = Label(_("Cancel")) + self["key_green"] = Label(_("Save")) + self["key_yellow"] = Label(_("Configuration mode")) + self["key_blue"] = Label() + self["actions"] = ActionMap(["SetupActions", "SatlistShortcutAction"], + { + "ok": self.keyOk, + "save": self.keySave, + "cancel": self.keyCancel, + "changetype": self.changeConfigurationMode, + "nothingconnected": self.nothingConnectedShortcut + }, -2) + + self.slotid = slotid + self.nim = nimmanager.nim_slots[slotid] + self.nimConfig = self.nim.config + self.createConfigMode() + self.createSetup() + + def keyLeft(self): + ConfigListScreen.keyLeft(self) + self.newConfig() + + def setTextKeyBlue(self): + self["key_blue"].setText("") + if self["config"].isChanged(): + self["key_blue"].setText(_("Set default")) + + def keyRight(self): + ConfigListScreen.keyRight(self) + self.newConfig() + + def handleKeyFileCallback(self, answer): + ConfigListScreen.handleKeyFileCallback(self, answer) + self.newConfig() + + def keyCancel(self): + if self["config"].isChanged(): + self.session.openWithCallback(self.cancelConfirm, MessageBox, _("Really close without saving settings?")) + else: + self.restoreService(_("Zap back to service before tuner setup?")) + + def saveAll(self): + if self.nim.isCompatible("DVB-S"): + # reset connectedTo to all choices to properly store the default value + choices = [] + nimlist = nimmanager.getNimListOfType("DVB-S", self.slotid) + for id in nimlist: + choices.append((str(id), nimmanager.getNimDescription(id))) + self.nimConfig.connectedTo.setChoices(choices) + for x in self["config"].list: + x[1].save() + + def cancelConfirm(self, result): + if not result: + return + + for x in self["config"].list: + x[1].cancel() + # we need to call saveAll to reset the connectedTo choices + self.saveAll() + self.restoreService(_("Zap back to service before tuner setup?")) + + def changeConfigurationMode(self): + if self.configMode: + self.nimConfig.configMode.selectNext() + self["config"].invalidate(self.configMode) + self.setTextKeyBlue() + self.createSetup() + + def nothingConnectedShortcut(self): + if self["config"].isChanged(): + for x in self["config"].list: + x[1].cancel() + self.setTextKeyBlue() + self.createSetup() + +class NimSelection(Screen): + def __init__(self, session): + Screen.__init__(self, session) + + self.list = [None] * nimmanager.getSlotCount() + self["nimlist"] = List(self.list) + self.updateList() + + self.setResultClass() + + self["actions"] = ActionMap(["OkCancelActions"], + { + "ok": self.okbuttonClick , + "cancel": self.close + }, -2) + + def setResultClass(self): + self.resultclass = NimSetup + + def okbuttonClick(self): + nim = self["nimlist"].getCurrent() + nim = nim and nim[3] + if nim is not None and not nim.empty and nim.isSupported(): + self.session.openWithCallback(self.updateList, self.resultclass, nim.slot) + + def showNim(self, nim): + return True + + def updateList(self): + self.list = [ ] + for x in nimmanager.nim_slots: + slotid = x.slot + nimConfig = nimmanager.getNimConfig(x.slot) + text = nimConfig.configMode.value + if self.showNim(x): + if x.isCompatible("DVB-S"): + if nimConfig.configMode.value in ("loopthrough", "equal", "satposdepends"): + text = { "loopthrough": _("Loop through to"), + "equal": _("Equal to"), + "satposdepends": _("Second cable of motorized LNB") } [nimConfig.configMode.value] + text += " " + _("Tuner") + " " + ["A", "B", "C", "D"][int(nimConfig.connectedTo.value)] + elif nimConfig.configMode.value == "nothing": + text = _("not configured") + elif nimConfig.configMode.value == "simple": + if nimConfig.diseqcMode.value in ("single", "toneburst_a_b", "diseqc_a_b", "diseqc_a_b_c_d"): + text = {"single": _("Single"), "toneburst_a_b": _("Toneburst A/B"), "diseqc_a_b": _("DiSEqC A/B"), "diseqc_a_b_c_d": _("DiSEqC A/B/C/D")}[nimConfig.diseqcMode.value] + "\n" + text += _("Sats") + ": " + satnames = [] + if nimConfig.diseqcA.orbital_position < 3600: + satnames.append(nimmanager.getSatName(int(nimConfig.diseqcA.value))) + if nimConfig.diseqcMode.value in ("toneburst_a_b", "diseqc_a_b", "diseqc_a_b_c_d"): + if nimConfig.diseqcB.orbital_position < 3600: + satnames.append(nimmanager.getSatName(int(nimConfig.diseqcB.value))) + if nimConfig.diseqcMode.value == "diseqc_a_b_c_d": + if nimConfig.diseqcC.orbital_position < 3600: + satnames.append(nimmanager.getSatName(int(nimConfig.diseqcC.value))) + if nimConfig.diseqcD.orbital_position < 3600: + satnames.append(nimmanager.getSatName(int(nimConfig.diseqcD.value))) + if len(satnames) <= 2: + text += ", ".join(satnames) + elif len(satnames) > 2: + # we need a newline here, since multi content lists don't support automtic line wrapping + text += ", ".join(satnames[:2]) + ",\n" + text += " " + ", ".join(satnames[2:]) + elif nimConfig.diseqcMode.value in ("positioner", "positioner_select"): + text = {"positioner": _("Positioner"), "positioner_select": _("Positioner (selecting satellites)")}[nimConfig.diseqcMode.value] + text += ":" + if nimConfig.positionerMode.value == "usals": + text += "USALS" + elif nimConfig.positionerMode.value == "manual": + text += _("Manual") + else: + text = _("Simple") + elif nimConfig.configMode.value == "advanced": + text = _("Advanced") + elif x.isCompatible("DVB-T") or x.isCompatible("DVB-C"): + if nimConfig.configMode.value == "nothing": + text = _("Nothing connected") + elif nimConfig.configMode.value == "enabled": + text = _("Enabled") + if x.isMultiType(): + text = _("Switchable tuner types:") + "(" + ','.join(x.getMultiTypeList().values()) + ")" + "\n" + text + if not x.isSupported(): + text = _("Tuner is not supported") + + self.list.append((slotid, x.friendly_full_description, text, x)) + self["nimlist"].setList(self.list) + self["nimlist"].updateList(self.list) + +class SelectSatsEntryScreen(Screen): + skin = """ + <screen name="SelectSatsEntryScreen" position="center,center" size="560,410" title="Select Sats Entry" > + <ePixmap name="red" position="0,0" zPosition="2" size="140,40" pixmap="skin_default/buttons/red.png" transparent="1" alphatest="on" /> + <ePixmap name="green" position="140,0" zPosition="2" size="140,40" pixmap="skin_default/buttons/green.png" transparent="1" alphatest="on" /> + <ePixmap name="yellow" position="280,0" zPosition="2" size="140,40" pixmap="skin_default/buttons/yellow.png" transparent="1" alphatest="on" /> + <ePixmap name="blue" position="420,0" zPosition="2" size="140,40" pixmap="skin_default/buttons/blue.png" transparent="1" alphatest="on" /> + <widget name="key_red" position="0,0" size="140,40" valign="center" halign="center" zPosition="4" foregroundColor="white" font="Regular;17" transparent="1" shadowColor="background" shadowOffset="-2,-2" /> + <widget name="key_green" position="140,0" size="140,40" valign="center" halign="center" zPosition="4" foregroundColor="white" font="Regular;17" transparent="1" shadowColor="background" shadowOffset="-2,-2" /> + <widget name="key_yellow" position="280,0" size="140,40" valign="center" halign="center" zPosition="4" foregroundColor="white" font="Regular;17" transparent="1" shadowColor="background" shadowOffset="-2,-2" /> + <widget name="key_blue" position="420,0" size="140,40" valign="center" halign="center" zPosition="4" foregroundColor="white" font="Regular;17" transparent="1" shadowColor="background" shadowOffset="-2,-2" /> + <widget name="list" position="10,40" size="540,330" scrollbarMode="showNever" /> + <ePixmap pixmap="skin_default/div-h.png" position="0,375" zPosition="1" size="540,2" transparent="1" alphatest="on" /> + <widget name="hint" position="10,380" size="540,25" font="Regular;19" halign="center" transparent="1" /> + </screen>""" + def __init__(self, session, userSatlist=[]): + Screen.__init__(self, session) + self["key_red"] = Button(_("Cancel")) + self["key_green"] = Button(_("Save")) + self["key_yellow"] = Button(_("Sort by")) + self["key_blue"] = Button(_("Select all")) + self["hint"] = Label(_("Press OK to toggle the selection")) + SatList = [] + for sat in nimmanager.getSatList(): + selected = False + if isinstance(userSatlist, str) and str(sat[0]) in userSatlist: + selected = True + SatList.append((sat[0], sat[1], sat[2], selected)) + sat_list = [SelectionEntryComponent(x[1], x[0], x[2], x[3]) for x in SatList] + self["list"] = SelectionList(sat_list, enableWrapAround=True) + self["setupActions"] = ActionMap(["SetupActions", "ColorActions"], + { + "red": self.cancel, + "green": self.save, + "yellow": self.sortBy, + "blue": self["list"].toggleAllSelection, + "save": self.save, + "cancel": self.cancel, + "ok": self["list"].toggleSelection, + }, -2) + self.setTitle(_("Select satellites")) + + def save(self): + val = [x[0][1] for x in self["list"].list if x[0][3]] + self.close(str(val)) + + def cancel(self): + self.close(None) + + def sortBy(self): + lst = self["list"].list + if len(lst) > 1: + menu = [(_("Reverse list"), "2"), (_("Standart list"), "1")] + connected_sat = [x[0][1] for x in lst if x[0][3]] + if len(connected_sat) > 0: + menu.insert(0,(_("Connected satellites"), "3")) + def sortAction(choice): + if choice: + reverse_flag = False + sort_type = int(choice[1]) + if choice[1] == "2": + sort_type = reverse_flag = 1 + elif choice[1] == "3": + reverse_flag = not reverse_flag + self["list"].sort(sortType=sort_type, flag=reverse_flag) + self["list"].moveToIndex(0) + self.session.openWithCallback(sortAction, ChoiceBox, title= _("Select sort method:"), list=menu) diff --git a/lib/python/Screens/ScanSetup.py b/lib/python/Screens/ScanSetup.py new file mode 100644 index 0000000..91de742 --- /dev/null +++ b/lib/python/Screens/ScanSetup.py @@ -0,0 +1,1237 @@ +from Screen import Screen +from ServiceScan import ServiceScan +from Components.config import config, ConfigSubsection, ConfigSelection, ConfigYesNo, ConfigInteger, getConfigListEntry, ConfigSlider, ConfigEnableDisable +from Components.ActionMap import NumberActionMap, ActionMap +from Components.ConfigList import ConfigListScreen +from Components.NimManager import nimmanager, getConfigSatlist +from Components.Label import Label +from Components.Sources.StaticText import StaticText +from Tools.HardwareInfo import HardwareInfo +from Screens.InfoBar import InfoBar +from Screens.MessageBox import MessageBox +from enigma import eTimer, eDVBFrontendParametersSatellite, eComponentScan, eDVBFrontendParametersTerrestrial, eDVBFrontendParametersCable, eConsoleAppContainer, eDVBResourceManager +from Components.Converter.ChannelNumbers import channelnumbers + +def buildTerTransponder(frequency, + inversion=2, bandwidth = 7000000, fechigh = 6, feclow = 6, + modulation = 2, transmission = 2, guard = 4, + hierarchy = 4, system = 0, plpid = 0): +# print "freq", frequency, "inv", inversion, "bw", bandwidth, "fech", fechigh, "fecl", feclow, "mod", modulation, "tm", transmission, "guard", guard, "hierarchy", hierarchy + parm = eDVBFrontendParametersTerrestrial() + parm.frequency = frequency + parm.inversion = inversion + parm.bandwidth = bandwidth + parm.code_rate_HP = fechigh + parm.code_rate_LP = feclow + parm.modulation = modulation + parm.transmission_mode = transmission + parm.guard_interval = guard + parm.hierarchy = hierarchy + parm.system = system + parm.plpid = plpid + return parm + +def getInitialTransponderList(tlist, pos): + list = nimmanager.getTransponders(pos) + for x in list: + if x[0] == 0: #SAT + parm = eDVBFrontendParametersSatellite() + parm.frequency = x[1] + parm.symbol_rate = x[2] + parm.polarisation = x[3] + parm.fec = x[4] + parm.inversion = x[7] + parm.orbital_position = pos + parm.system = x[5] + parm.modulation = x[6] + parm.rolloff = x[8] + parm.pilot = x[9] + tlist.append(parm) + +def getInitialCableTransponderList(tlist, nim): + list = nimmanager.getTranspondersCable(nim) + for x in list: + if x[0] == 1: #CABLE + parm = eDVBFrontendParametersCable() + parm.frequency = x[1] + parm.symbol_rate = x[2] + parm.modulation = x[3] + parm.fec_inner = x[4] + parm.inversion = x[5] + parm.system = x[6] + tlist.append(parm) + +def getInitialTerrestrialTransponderList(tlist, region): + list = nimmanager.getTranspondersTerrestrial(region) + + #self.transponders[self.parsedTer].append((2,freq,bw,const,crh,crl,guard,transm,hierarchy,inv)) + + #def buildTerTransponder(frequency, inversion = 2, bandwidth = 3, fechigh = 6, feclow = 6, + #modulation = 2, transmission = 2, guard = 4, hierarchy = 4): + + for x in list: + if x[0] == 2: #TERRESTRIAL + parm = buildTerTransponder(x[1], x[9], x[2], x[4], x[5], x[3], x[7], x[6], x[8], x[10], x[11]) + tlist.append(parm) + +def getRegionTerrestrialTransponderList(region): + tlist = [] + for x in nimmanager.getTranspondersTerrestrial(region): + if x[0] == 2: #TERRESTRIAL + parm = buildTerTransponder(x[1], x[9], x[2], x[4], x[5], x[3], x[7], x[6], x[8], x[10], x[11]) + tlist.append((parm, str(x[1] / 1000))) + return tlist + +cable_bands = { + "DVBC_BAND_EU_VHF_I" : 1 << 0, + "DVBC_BAND_EU_MID" : 1 << 1, + "DVBC_BAND_EU_VHF_III" : 1 << 2, + "DVBC_BAND_EU_SUPER" : 1 << 3, + "DVBC_BAND_EU_HYPER" : 1 << 4, + "DVBC_BAND_EU_UHF_IV" : 1 << 5, + "DVBC_BAND_EU_UHF_V" : 1 << 6, + "DVBC_BAND_US_LO" : 1 << 7, + "DVBC_BAND_US_MID" : 1 << 8, + "DVBC_BAND_US_HI" : 1 << 9, + "DVBC_BAND_US_SUPER" : 1 << 10, + "DVBC_BAND_US_HYPER" : 1 << 11, +} + +class CableTransponderSearchSupport: +# def setCableTransponderSearchResult(self, tlist): +# pass + +# def cableTransponderSearchFinished(self): +# pass + + def __init__(self): + pass + + def tryGetRawFrontend(self, feid): + res_mgr = eDVBResourceManager.getInstance() + if res_mgr: + raw_channel = res_mgr.allocateRawChannel(self.feid) + if raw_channel: + frontend = raw_channel.getFrontend() + if frontend: + frontend.closeFrontend() # immediate close... + del frontend + del raw_channel + return True + return False + + def cableTransponderSearchSessionClosed(self, *val): + print "cableTransponderSearchSessionClosed, val", val + self.cable_search_container.appClosed.remove(self.cableTransponderSearchClosed) + self.cable_search_container.dataAvail.remove(self.getCableTransponderData) + if val and len(val): + if val[0]: + self.setCableTransponderSearchResult(self.__tlist) + else: + self.cable_search_container.sendCtrlC() + self.setCableTransponderSearchResult(None) + self.cable_search_container = None + self.cable_search_session = None + self.__tlist = None + self.cableTransponderSearchFinished() + + def cableTransponderSearchClosed(self, retval): + print "cableTransponderSearch finished", retval + self.cable_search_session.close(True) + + def getCableTransponderData(self, str): + #prepend any remaining data from the previous call + str = self.remainingdata + str + #split in lines + lines = str.split('\n') + #'str' should end with '\n', so when splitting, the last line should be empty. If this is not the case, we received an incomplete line + if len(lines[-1]): + #remember this data for next time + self.remainingdata = lines[-1] + lines = lines[0:-1] + else: + self.remainingdata = "" + + for line in lines: + data = line.split() + if len(data): + if data[0] == 'OK': + print str + parm = eDVBFrontendParametersCable() + qam = { "QAM16" : parm.Modulation_QAM16, + "QAM32" : parm.Modulation_QAM32, + "QAM64" : parm.Modulation_QAM64, + "QAM128" : parm.Modulation_QAM128, + "QAM256" : parm.Modulation_QAM256 } + inv = { "INVERSION_OFF" : parm.Inversion_Off, + "INVERSION_ON" : parm.Inversion_On, + "INVERSION_AUTO" : parm.Inversion_Unknown } + fec = { "FEC_AUTO" : parm.FEC_Auto, + "FEC_1_2" : parm.FEC_1_2, + "FEC_2_3" : parm.FEC_2_3, + "FEC_3_4" : parm.FEC_3_4, + "FEC_5_6" : parm.FEC_5_6, + "FEC_7_8" : parm.FEC_7_8, + "FEC_8_9" : parm.FEC_8_9, + "FEC_3_5" : parm.FEC_3_5, + "FEC_4_5" : parm.FEC_4_5, + "FEC_9_10" : parm.FEC_9_10, + "FEC_NONE" : parm.FEC_None } + parm.frequency = int(data[1]) + parm.symbol_rate = int(data[2]) + parm.fec_inner = fec[data[3]] + parm.modulation = qam[data[4]] + parm.inversion = inv[data[5]] + self.__tlist.append(parm) + tmpstr = _("Try to find used transponders in cable network.. please wait...") + tmpstr += "\n\n" + tmpstr += data[1].isdigit() and "%s MHz " % (int(data[1]) / 1000.) or data[1] + tmpstr += data[0] + self.cable_search_session["text"].setText(tmpstr) + + def startCableTransponderSearch(self, nim_idx): + def GetCommand(nimIdx): + _supportNimType = { 'SSH108':'ssh108' } + _nimSocket = {} + fp = file('/proc/bus/nim_sockets') + + sNo, sName = -1, "" + for line in fp: + line = line.strip() + if line.startswith('NIM Socket'): + try: sNo = line.split()[2][:-1] + except: sNo = -1 + elif line.startswith('Name:'): + try: sName = line.split()[3][4:-1] + except: sName = "" + if sNo >= 0 and sName != "": + _nimSocket[sNo] = sName + sNo, sName = -1, '' + fp.close() + print 'parsed nim_sockets :', _nimSocket + + try: + sName = _nimSocket[str(nimIdx)] + sType = _supportNimType[sName] + return sType + except: pass + return 'tda1002x' + + if not self.tryGetRawFrontend(nim_idx): + self.session.nav.stopService() + if not self.tryGetRawFrontend(nim_idx): + if self.session.pipshown: + self.session.infobar.showPiP() + if not self.tryGetRawFrontend(nim_idx): + self.cableTransponderSearchFinished() + return + self.__tlist = [ ] + self.remainingdata = "" + self.cable_search_container = eConsoleAppContainer() + self.cable_search_container.appClosed.append(self.cableTransponderSearchClosed) + self.cable_search_container.dataAvail.append(self.getCableTransponderData) + cableConfig = config.Nims[nim_idx].cable + tunername = nimmanager.getNimName(nim_idx) + try: + bus = nimmanager.getI2CDevice(nim_idx) + if bus is None: + print "ERROR: could not get I2C device for nim", nim_idx, "for cable transponder search" + bus = 2 + except: + # older API + if nim_idx < 2: + if HardwareInfo().get_device_name() == "dm500hd": + bus = 2 + else: + bus = nim_idx + else: + if nim_idx == 2: + bus = 2 # DM8000 first nim is /dev/i2c/2 + else: + bus = 4 # DM8000 second num is /dev/i2c/4 + + if tunername == "CXD1981": + bin_name = "CXD1981" + cmd = "cxd1978 --init --scan --verbose --wakeup --inv 2 --bus %d" % bus + elif tunername.startswith("Sundtek"): + bin_name = "mediaclient" + cmd = "/opt/bin/mediaclient --blindscan %d" % nim_idx + else: + bin_name = GetCommand(nim_idx) + cmd = "%(BIN_NAME)s --init --scan --verbose --wakeup --inv 2 --bus %(BUS)d" % {'BIN_NAME':bin_name , 'BUS':bus} + + if cableConfig.scan_type.value == "bands": + cmd += " --scan-bands " + bands = 0 + if cableConfig.scan_band_EU_VHF_I.value: + bands |= cable_bands["DVBC_BAND_EU_VHF_I"] + if cableConfig.scan_band_EU_MID.value: + bands |= cable_bands["DVBC_BAND_EU_MID"] + if cableConfig.scan_band_EU_VHF_III.value: + bands |= cable_bands["DVBC_BAND_EU_VHF_III"] + if cableConfig.scan_band_EU_UHF_IV.value: + bands |= cable_bands["DVBC_BAND_EU_UHF_IV"] + if cableConfig.scan_band_EU_UHF_V.value: + bands |= cable_bands["DVBC_BAND_EU_UHF_V"] + if cableConfig.scan_band_EU_SUPER.value: + bands |= cable_bands["DVBC_BAND_EU_SUPER"] + if cableConfig.scan_band_EU_HYPER.value: + bands |= cable_bands["DVBC_BAND_EU_HYPER"] + if cableConfig.scan_band_US_LOW.value: + bands |= cable_bands["DVBC_BAND_US_LO"] + if cableConfig.scan_band_US_MID.value: + bands |= cable_bands["DVBC_BAND_US_MID"] + if cableConfig.scan_band_US_HIGH.value: + bands |= cable_bands["DVBC_BAND_US_HI"] + if cableConfig.scan_band_US_SUPER.value: + bands |= cable_bands["DVBC_BAND_US_SUPER"] + if cableConfig.scan_band_US_HYPER.value: + bands |= cable_bands["DVBC_BAND_US_HYPER"] + cmd += str(bands) + else: + cmd += " --scan-stepsize " + cmd += str(cableConfig.scan_frequency_steps.value) + if cableConfig.scan_mod_qam16.value: + cmd += " --mod 16" + if cableConfig.scan_mod_qam32.value: + cmd += " --mod 32" + if cableConfig.scan_mod_qam64.value: + cmd += " --mod 64" + if cableConfig.scan_mod_qam128.value: + cmd += " --mod 128" + if cableConfig.scan_mod_qam256.value: + cmd += " --mod 256" + if cableConfig.scan_sr_6900.value: + cmd += " --sr 6900000" + if cableConfig.scan_sr_6875.value: + cmd += " --sr 6875000" + if cableConfig.scan_sr_ext1.value > 450: + cmd += " --sr " + cmd += str(cableConfig.scan_sr_ext1.value) + cmd += "000" + if cableConfig.scan_sr_ext2.value > 450: + cmd += " --sr " + cmd += str(cableConfig.scan_sr_ext2.value) + cmd += "000" + print bin_name, " CMD is", cmd + + self.cable_search_container.execute(cmd) + tmpstr = _("Try to find used transponders in cable network.. please wait...") + tmpstr += "\n\n..." + self.cable_search_session = self.session.openWithCallback(self.cableTransponderSearchSessionClosed, MessageBox, tmpstr, MessageBox.TYPE_INFO) + +class ScanSetup(ConfigListScreen, Screen, CableTransponderSearchSupport): + def __init__(self, session): + Screen.__init__(self, session) + Screen.setTitle(self, _("Manual Scan")) + + self.finished_cb = None + self.updateSatList() + self.service = session.nav.getCurrentService() + self.feinfo = None + self.networkid = 0 + frontendData = None + if self.service is not None: + self.feinfo = self.service.frontendInfo() + frontendData = self.feinfo and self.feinfo.getAll(True) + + self.ter_channel_input = False + self.ter_tnumber = None + self.createConfig(frontendData) + + del self.feinfo + del self.service + + self.session.postScanService = session.nav.getCurrentlyPlayingServiceOrGroup() + + self["key_red"] = StaticText(_("Close")) + self["key_green"] = StaticText(_("Scan")) + + self["actions"] = NumberActionMap(["SetupActions", "MenuActions", "ColorActions"], + { + "ok": self.keyGo, + "save": self.keyGo, + "cancel": self.keyCancel, + "red": self.keyCancel, + "green": self.keyGo, + "menu": self.doCloseRecursive, + }, -2) + + self.statusTimer = eTimer() + self.statusTimer.callback.append(self.updateStatus) + #self.statusTimer.start(5000, True) + + self.list = [] + ConfigListScreen.__init__(self, self.list) + self["header"] = Label(_("Manual Scan")) + if not self.scan_nims.value == "": + self.createSetup() + self["introduction"] = Label(_("Press OK to start the scan")) + else: + self["introduction"] = Label(_("Nothing to scan!\nPlease setup your tuner settings before you start a service scan.")) + + def runAsync(self, finished_cb): + self.finished_cb = finished_cb + self.keyGo() + + def updateSatList(self): + self.satList = [] + for slot in nimmanager.nim_slots: + if slot.isCompatible("DVB-S"): + self.satList.append(nimmanager.getSatListForNim(slot.slot)) + else: + self.satList.append(None) + + def createSetup(self): + self.list = [] + self.multiscanlist = [] + index_to_scan = int(self.scan_nims.value) + print "ID: ", index_to_scan + + self.tunerEntry = getConfigListEntry(_("Tuner"), self.scan_nims) + self.list.append(self.tunerEntry) + + if self.scan_nims == [ ]: + return + + self.typeOfScanEntry = None + self.typeOfInputEntry = None + self.systemEntry = None + self.modulationEntry = None + self.preDefSatList = None + self.TerrestrialTransponders = None + nim = nimmanager.nim_slots[index_to_scan] + if nim.isCompatible("DVB-S"): + self.typeOfScanEntry = getConfigListEntry(_("Type of scan"), self.scan_type) + self.list.append(self.typeOfScanEntry) + elif nim.isCompatible("DVB-C"): + self.typeOfScanEntry = getConfigListEntry(_("Type of scan"), self.scan_typecable) + self.list.append(self.typeOfScanEntry) + elif nim.isCompatible("DVB-T"): + self.typeOfScanEntry = getConfigListEntry(_("Type of scan"), self.scan_typeterrestrial) + self.list.append(self.typeOfScanEntry) + if self.scan_typeterrestrial.value == "single_transponder": + self.typeOfInputEntry = getConfigListEntry(_("Use frequency or channel"), self.scan_input_as) + if self.ter_channel_input: + self.list.append(self.typeOfInputEntry) + else: + self.scan_input_as.value = self.scan_input_as.choices[0] + + self.scan_networkScan.value = False + if nim.isCompatible("DVB-S"): + if self.scan_type.value == "single_transponder": + self.updateSatList() + if nim.isCompatible("DVB-S2"): + self.systemEntry = getConfigListEntry(_('System'), self.scan_sat.system) + self.list.append(self.systemEntry) + else: + # downgrade to dvb-s, in case a -s2 config was active + self.scan_sat.system.value = eDVBFrontendParametersSatellite.System_DVB_S + self.list.append(getConfigListEntry(_('Satellite'), self.scan_satselection[index_to_scan])) + self.list.append(getConfigListEntry(_('Frequency'), self.scan_sat.frequency)) + self.list.append(getConfigListEntry(_('Inversion'), self.scan_sat.inversion)) + self.list.append(getConfigListEntry(_('Symbol rate'), self.scan_sat.symbolrate)) + self.list.append(getConfigListEntry(_('Polarization'), self.scan_sat.polarization)) + if self.scan_sat.system.value == eDVBFrontendParametersSatellite.System_DVB_S: + self.list.append(getConfigListEntry(_("FEC"), self.scan_sat.fec)) + elif self.scan_sat.system.value == eDVBFrontendParametersSatellite.System_DVB_S2: + self.list.append(getConfigListEntry(_("FEC"), self.scan_sat.fec_s2)) + self.modulationEntry = getConfigListEntry(_('Modulation'), self.scan_sat.modulation) + self.list.append(self.modulationEntry) + self.list.append(getConfigListEntry(_('Roll-off'), self.scan_sat.rolloff)) + self.list.append(getConfigListEntry(_('Pilot'), self.scan_sat.pilot)) + elif self.scan_type.value == "predefined_transponder" and self.satList[index_to_scan]: + self.updateSatList() + self.preDefSatList = getConfigListEntry(_('Satellite'), self.scan_satselection[index_to_scan]) + self.list.append(self.preDefSatList) + sat = self.satList[index_to_scan][self.scan_satselection[index_to_scan].index] + self.predefinedTranspondersList(sat[0]) + self.list.append(getConfigListEntry(_('Transponder'), self.preDefTransponders)) + elif self.scan_type.value == "single_satellite": + self.updateSatList() + print self.scan_satselection[index_to_scan] + self.list.append(getConfigListEntry(_("Satellite"), self.scan_satselection[index_to_scan])) + self.scan_networkScan.value = True + elif "multisat" in self.scan_type.value: + tlist = [] + SatList = nimmanager.getSatListForNim(index_to_scan) + for x in SatList: + if self.Satexists(tlist, x[0]) == 0: + tlist.append(x[0]) + sat = ConfigEnableDisable(default = "_yes" in self.scan_type.value and True or False) + configEntry = getConfigListEntry(nimmanager.getSatDescription(x[0]), sat) + self.list.append(configEntry) + self.multiscanlist.append((x[0], sat)) + self.scan_networkScan.value = True + elif nim.isCompatible("DVB-C"): + if self.scan_typecable.value == "single_transponder": + self.list.append(getConfigListEntry(_("Frequency"), self.scan_cab.frequency)) + self.list.append(getConfigListEntry(_("Inversion"), self.scan_cab.inversion)) + self.list.append(getConfigListEntry(_("Symbol rate"), self.scan_cab.symbolrate)) + self.list.append(getConfigListEntry(_("Modulation"), self.scan_cab.modulation)) + self.list.append(getConfigListEntry(_("FEC"), self.scan_cab.fec)) + if config.Nims[index_to_scan].cable.scan_networkid.value: + self.networkid = config.Nims[index_to_scan].cable.scan_networkid.value + self.scan_networkScan.value = True + elif nim.isCompatible("DVB-T"): + if self.scan_typeterrestrial.value == "single_transponder": + if nim.isCompatible("DVB-T2"): + self.systemEntry = getConfigListEntry(_('System'), self.scan_ter.system) + self.list.append(self.systemEntry) + else: + self.scan_ter.system.value = eDVBFrontendParametersTerrestrial.System_DVB_T + if self.ter_channel_input and self.scan_input_as.value == "channel": + channel = channelnumbers.getChannelNumber(self.scan_ter.frequency.value*1000, self.ter_tnumber) + if channel: + self.scan_ter.channel.value = int(channel.replace("+","").replace("-","")) + self.list.append(getConfigListEntry(_("Channel"), self.scan_ter.channel)) + else: + prev_val = self.scan_ter.frequency.value + self.scan_ter.frequency.value = channelnumbers.channel2frequency(self.scan_ter.channel.value, self.ter_tnumber)/1000 + if self.scan_ter.frequency.value == 474000: + self.scan_ter.frequency.value = prev_val + self.list.append(getConfigListEntry(_("Frequency"), self.scan_ter.frequency)) + self.list.append(getConfigListEntry(_("Inversion"), self.scan_ter.inversion)) + self.list.append(getConfigListEntry(_("Bandwidth"), self.scan_ter.bandwidth)) + self.list.append(getConfigListEntry(_("Code rate HP"), self.scan_ter.fechigh)) + self.list.append(getConfigListEntry(_("Code rate LP"), self.scan_ter.feclow)) + self.list.append(getConfigListEntry(_("Modulation"), self.scan_ter.modulation)) + self.list.append(getConfigListEntry(_("Transmission mode"), self.scan_ter.transmission)) + self.list.append(getConfigListEntry(_("Guard interval"), self.scan_ter.guard)) + self.list.append(getConfigListEntry(_("Hierarchy info"), self.scan_ter.hierarchy)) + if self.scan_ter.system.value == eDVBFrontendParametersTerrestrial.System_DVB_T2: + self.list.append(getConfigListEntry(_('PLP ID'), self.scan_ter.plp_id)) + elif self.scan_typeterrestrial.value == "predefined_transponder": + tp_list = getRegionTerrestrialTransponderList(nimmanager.getTerrestrialDescription(index_to_scan)) + if tp_list: + self.TerrestrialTransponders = ConfigSelection(choices=tp_list) + self.list.append(getConfigListEntry(_('Transponder'), self.TerrestrialTransponders)) + self.list.append(getConfigListEntry(_("Network scan"), self.scan_networkScan)) + self.list.append(getConfigListEntry(_("Clear before scan"), self.scan_clearallservices)) + self.list.append(getConfigListEntry(_("Only free scan"), self.scan_onlyfree)) + self["config"].list = self.list + self["config"].l.setList(self.list) + + def Satexists(self, tlist, pos): + for x in tlist: + if x == pos: + return 1 + return 0 + + def newConfig(self): + cur = self["config"].getCurrent() + print "cur is", cur + if cur == self.typeOfScanEntry or \ + cur == self.typeOfInputEntry or \ + cur == self.tunerEntry or \ + cur == self.systemEntry or \ + cur == self.preDefSatList or \ + (self.modulationEntry and self.systemEntry[1].value == eDVBFrontendParametersSatellite.System_DVB_S2 and cur == self.modulationEntry): + self.createSetup() + + def createConfig(self, frontendData): + defaultSat = { + "orbpos": 192, + "system": eDVBFrontendParametersSatellite.System_DVB_S, + "frequency": 11836, + "inversion": eDVBFrontendParametersSatellite.Inversion_Unknown, + "symbolrate": 27500, + "polarization": eDVBFrontendParametersSatellite.Polarisation_Horizontal, + "fec": eDVBFrontendParametersSatellite.FEC_Auto, + "fec_s2": eDVBFrontendParametersSatellite.FEC_9_10, + "modulation": eDVBFrontendParametersSatellite.Modulation_QPSK } + defaultCab = { + "frequency": 466, + "inversion": eDVBFrontendParametersCable.Inversion_Unknown, + "modulation": eDVBFrontendParametersCable.Modulation_QAM64, + "fec": eDVBFrontendParametersCable.FEC_Auto, + "symbolrate": 6900, + "system": eDVBFrontendParametersCable.System_DVB_C_ANNEX_A } + defaultTer = { + "frequency" : 474000, + "inversion" : eDVBFrontendParametersTerrestrial.Inversion_Unknown, + "bandwidth" : 8000000, + "fechigh" : eDVBFrontendParametersTerrestrial.FEC_Auto, + "feclow" : eDVBFrontendParametersTerrestrial.FEC_Auto, + "modulation" : eDVBFrontendParametersTerrestrial.Modulation_Auto, + "transmission_mode" : eDVBFrontendParametersTerrestrial.TransmissionMode_Auto, + "guard_interval" : eDVBFrontendParametersTerrestrial.GuardInterval_Auto, + "hierarchy": eDVBFrontendParametersTerrestrial.Hierarchy_Auto, + "system": eDVBFrontendParametersTerrestrial.System_DVB_T, + "plp_id": 0 } + + if frontendData is not None: + ttype = frontendData.get("tuner_type", "UNKNOWN") + if ttype == "DVB-S": + defaultSat["system"] = frontendData.get("system", eDVBFrontendParametersSatellite.System_DVB_S) + defaultSat["frequency"] = frontendData.get("frequency", 0) / 1000 + defaultSat["inversion"] = frontendData.get("inversion", eDVBFrontendParametersSatellite.Inversion_Unknown) + defaultSat["symbolrate"] = frontendData.get("symbol_rate", 0) / 1000 + defaultSat["polarization"] = frontendData.get("polarization", eDVBFrontendParametersSatellite.Polarisation_Horizontal) + if defaultSat["system"] == eDVBFrontendParametersSatellite.System_DVB_S2: + defaultSat["fec_s2"] = frontendData.get("fec_inner", eDVBFrontendParametersSatellite.FEC_Auto) + defaultSat["rolloff"] = frontendData.get("rolloff", eDVBFrontendParametersSatellite.RollOff_alpha_0_35) + defaultSat["pilot"] = frontendData.get("pilot", eDVBFrontendParametersSatellite.Pilot_Unknown) + else: + defaultSat["fec"] = frontendData.get("fec_inner", eDVBFrontendParametersSatellite.FEC_Auto) + defaultSat["modulation"] = frontendData.get("modulation", eDVBFrontendParametersSatellite.Modulation_QPSK) + defaultSat["orbpos"] = frontendData.get("orbital_position", 0) + elif ttype == "DVB-C": + defaultCab["frequency"] = frontendData.get("frequency", 0) / 1000 + defaultCab["symbolrate"] = frontendData.get("symbol_rate", 0) / 1000 + defaultCab["inversion"] = frontendData.get("inversion", eDVBFrontendParametersCable.Inversion_Unknown) + defaultCab["fec"] = frontendData.get("fec_inner", eDVBFrontendParametersCable.FEC_Auto) + defaultCab["modulation"] = frontendData.get("modulation", eDVBFrontendParametersCable.Modulation_QAM16) + defaultCab["system"] = frontendData.get("system", eDVBFrontendParametersCable.System_DVB_C_ANNEX_A) + elif ttype == "DVB-T": + defaultTer["frequency"] = frontendData.get("frequency", 47400000) / 1000 + defaultTer["inversion"] = frontendData.get("inversion", eDVBFrontendParametersTerrestrial.Inversion_Unknown) + defaultTer["bandwidth"] = frontendData.get("bandwidth", 8000000) + defaultTer["fechigh"] = frontendData.get("code_rate_hp", eDVBFrontendParametersTerrestrial.FEC_Auto) + defaultTer["feclow"] = frontendData.get("code_rate_lp", eDVBFrontendParametersTerrestrial.FEC_Auto) + defaultTer["modulation"] = frontendData.get("constellation", eDVBFrontendParametersTerrestrial.Modulation_Auto) + defaultTer["transmission_mode"] = frontendData.get("transmission_mode", eDVBFrontendParametersTerrestrial.TransmissionMode_Auto) + defaultTer["guard_interval"] = frontendData.get("guard_interval", eDVBFrontendParametersTerrestrial.GuardInterval_Auto) + defaultTer["hierarchy"] = frontendData.get("hierarchy_information", eDVBFrontendParametersTerrestrial.Hierarchy_Auto) + defaultTer["system"] = frontendData.get("system", eDVBFrontendParametersTerrestrial.System_DVB_T) + defaultTer["plp_id"] = frontendData.get("plp_id", 0) + + self.scan_sat = ConfigSubsection() + self.scan_cab = ConfigSubsection() + self.scan_ter = ConfigSubsection() + + nim_list = [] + # collect all nims which are *not* set to "nothing" + for n in nimmanager.nim_slots: + if n.config_mode == "nothing": + continue + if n.config_mode == "advanced" and len(nimmanager.getSatListForNim(n.slot)) < 1: + continue + if n.config_mode in ("loopthrough", "satposdepends"): + root_id = nimmanager.sec.getRoot(n.slot_id, int(n.config.connectedTo.value)) + if n.type == nimmanager.nim_slots[root_id].type: # check if connected from a DVB-S to DVB-S2 Nim or vice versa + continue + nim_list.append((str(n.slot), n.friendly_full_description)) + + self.scan_nims = ConfigSelection(choices = nim_list) + if frontendData is not None and len(nim_list) > 0: + self.scan_nims.setValue(str(frontendData.get("tuner_number", nim_list[0][0]))) + + for slot in nimmanager.nim_slots: + if slot.isCompatible("DVB-T"): + self.ter_tnumber = slot.slot + if self.ter_tnumber is not None: + self.ter_channel_input = channelnumbers.supportedChannels(self.ter_tnumber) + + # status + self.scan_snr = ConfigSlider() + self.scan_snr.enabled = False + self.scan_agc = ConfigSlider() + self.scan_agc.enabled = False + self.scan_ber = ConfigSlider() + self.scan_ber.enabled = False + + # sat + self.scan_sat.system = ConfigSelection(default = defaultSat["system"], choices = [ + (eDVBFrontendParametersSatellite.System_DVB_S, _("DVB-S")), + (eDVBFrontendParametersSatellite.System_DVB_S2, _("DVB-S2"))]) + self.scan_sat.frequency = ConfigInteger(default = defaultSat["frequency"], limits = (1, 99999)) + self.scan_sat.inversion = ConfigSelection(default = defaultSat["inversion"], choices = [ + (eDVBFrontendParametersSatellite.Inversion_Off, _("Off")), + (eDVBFrontendParametersSatellite.Inversion_On, _("On")), + (eDVBFrontendParametersSatellite.Inversion_Unknown, _("Auto"))]) + self.scan_sat.symbolrate = ConfigInteger(default = defaultSat["symbolrate"], limits = (1, 99999)) + self.scan_sat.polarization = ConfigSelection(default = defaultSat["polarization"], choices = [ + (eDVBFrontendParametersSatellite.Polarisation_Horizontal, _("horizontal")), + (eDVBFrontendParametersSatellite.Polarisation_Vertical, _("vertical")), + (eDVBFrontendParametersSatellite.Polarisation_CircularLeft, _("circular left")), + (eDVBFrontendParametersSatellite.Polarisation_CircularRight, _("circular right"))]) + self.scan_sat.fec = ConfigSelection(default = defaultSat["fec"], choices = [ + (eDVBFrontendParametersSatellite.FEC_Auto, _("Auto")), + (eDVBFrontendParametersSatellite.FEC_1_2, "1/2"), + (eDVBFrontendParametersSatellite.FEC_2_3, "2/3"), + (eDVBFrontendParametersSatellite.FEC_3_4, "3/4"), + (eDVBFrontendParametersSatellite.FEC_5_6, "5/6"), + (eDVBFrontendParametersSatellite.FEC_7_8, "7/8"), + (eDVBFrontendParametersSatellite.FEC_None, _("None"))]) + self.scan_sat.fec_s2 = ConfigSelection(default = defaultSat["fec_s2"], choices = [ + (eDVBFrontendParametersSatellite.FEC_1_2, "1/2"), + (eDVBFrontendParametersSatellite.FEC_2_3, "2/3"), + (eDVBFrontendParametersSatellite.FEC_3_4, "3/4"), + (eDVBFrontendParametersSatellite.FEC_3_5, "3/5"), + (eDVBFrontendParametersSatellite.FEC_4_5, "4/5"), + (eDVBFrontendParametersSatellite.FEC_5_6, "5/6"), + (eDVBFrontendParametersSatellite.FEC_7_8, "7/8"), + (eDVBFrontendParametersSatellite.FEC_8_9, "8/9"), + (eDVBFrontendParametersSatellite.FEC_9_10, "9/10")]) + self.scan_sat.modulation = ConfigSelection(default = defaultSat["modulation"], choices = [ + (eDVBFrontendParametersSatellite.Modulation_QPSK, "QPSK"), + (eDVBFrontendParametersSatellite.Modulation_8PSK, "8PSK")]) + self.scan_sat.rolloff = ConfigSelection(default = defaultSat.get("rolloff", eDVBFrontendParametersSatellite.RollOff_alpha_0_35), choices = [ + (eDVBFrontendParametersSatellite.RollOff_alpha_0_35, "0.35"), + (eDVBFrontendParametersSatellite.RollOff_alpha_0_25, "0.25"), + (eDVBFrontendParametersSatellite.RollOff_alpha_0_20, "0.20"), + (eDVBFrontendParametersSatellite.RollOff_auto, _("Auto"))]) + self.scan_sat.pilot = ConfigSelection(default = defaultSat.get("pilot", eDVBFrontendParametersSatellite.Pilot_Unknown), choices = [ + (eDVBFrontendParametersSatellite.Pilot_Off, _("Off")), + (eDVBFrontendParametersSatellite.Pilot_On, _("On")), + (eDVBFrontendParametersSatellite.Pilot_Unknown, _("Auto"))]) + + # cable + self.scan_cab.frequency = ConfigInteger(default = defaultCab["frequency"], limits = (50, 999)) + self.scan_cab.inversion = ConfigSelection(default = defaultCab["inversion"], choices = [ + (eDVBFrontendParametersCable.Inversion_Off, _("Off")), + (eDVBFrontendParametersCable.Inversion_On, _("On")), + (eDVBFrontendParametersCable.Inversion_Unknown, _("Auto"))]) + self.scan_cab.modulation = ConfigSelection(default = defaultCab["modulation"], choices = [ + (eDVBFrontendParametersCable.Modulation_QAM16, "16-QAM"), + (eDVBFrontendParametersCable.Modulation_QAM32, "32-QAM"), + (eDVBFrontendParametersCable.Modulation_QAM64, "64-QAM"), + (eDVBFrontendParametersCable.Modulation_QAM128, "128-QAM"), + (eDVBFrontendParametersCable.Modulation_QAM256, "256-QAM")]) + self.scan_cab.fec = ConfigSelection(default = defaultCab["fec"], choices = [ + (eDVBFrontendParametersCable.FEC_Auto, _("Auto")), + (eDVBFrontendParametersCable.FEC_1_2, "1/2"), + (eDVBFrontendParametersCable.FEC_2_3, "2/3"), + (eDVBFrontendParametersCable.FEC_3_4, "3/4"), + (eDVBFrontendParametersCable.FEC_5_6, "5/6"), + (eDVBFrontendParametersCable.FEC_7_8, "7/8"), + (eDVBFrontendParametersCable.FEC_8_9, "8/9"), + (eDVBFrontendParametersCable.FEC_3_5, "3/5"), + (eDVBFrontendParametersCable.FEC_4_5, "4/5"), + (eDVBFrontendParametersCable.FEC_9_10, "9/10"), + (eDVBFrontendParametersCable.FEC_None, _("None"))]) + self.scan_cab.symbolrate = ConfigInteger(default = defaultCab["symbolrate"], limits = (1, 99999)) + self.scan_cab.system = ConfigSelection(default = defaultCab["system"], choices = [ + (eDVBFrontendParametersCable.System_DVB_C_ANNEX_A, _("DVB-C")), + (eDVBFrontendParametersCable.System_DVB_C_ANNEX_C, _("DVB-C ANNEX C"))]) + + # terrestial + self.scan_ter.frequency = ConfigInteger(default = defaultTer["frequency"], limits = (50000, 999000)) + self.scan_ter.channel = ConfigInteger(default = 21, limits = (1, 99)) + self.scan_ter.inversion = ConfigSelection(default = defaultTer["inversion"], choices = [ + (eDVBFrontendParametersTerrestrial.Inversion_Off, _("Off")), + (eDVBFrontendParametersTerrestrial.Inversion_On, _("On")), + (eDVBFrontendParametersTerrestrial.Inversion_Unknown, _("Auto"))]) + # WORKAROUND: we can't use BW-auto + self.scan_ter.bandwidth = ConfigSelection(default = defaultTer["bandwidth"], choices = [ + (1712000, "1.712MHz"), + (5000000, "5MHz"), + (6000000, "6MHz"), + (7000000, "7MHz"), + (8000000, "8MHz"), + (10000000, "10MHz") + ]) + #, (eDVBFrontendParametersTerrestrial.Bandwidth_Auto, _("Auto")))) + self.scan_ter.fechigh = ConfigSelection(default = defaultTer["fechigh"], choices = [ + (eDVBFrontendParametersTerrestrial.FEC_1_2, "1/2"), + (eDVBFrontendParametersTerrestrial.FEC_2_3, "2/3"), + (eDVBFrontendParametersTerrestrial.FEC_3_4, "3/4"), + (eDVBFrontendParametersTerrestrial.FEC_5_6, "5/6"), + (eDVBFrontendParametersTerrestrial.FEC_6_7, "6/7"), + (eDVBFrontendParametersTerrestrial.FEC_7_8, "7/8"), + (eDVBFrontendParametersTerrestrial.FEC_8_9, "8/9"), + (eDVBFrontendParametersTerrestrial.FEC_Auto, _("Auto"))]) + self.scan_ter.feclow = ConfigSelection(default = defaultTer["feclow"], choices = [ + (eDVBFrontendParametersTerrestrial.FEC_1_2, "1/2"), + (eDVBFrontendParametersTerrestrial.FEC_2_3, "2/3"), + (eDVBFrontendParametersTerrestrial.FEC_3_4, "3/4"), + (eDVBFrontendParametersTerrestrial.FEC_5_6, "5/6"), + (eDVBFrontendParametersTerrestrial.FEC_6_7, "6/7"), + (eDVBFrontendParametersTerrestrial.FEC_7_8, "7/8"), + (eDVBFrontendParametersTerrestrial.FEC_8_9, "8/9"), + (eDVBFrontendParametersTerrestrial.FEC_Auto, _("Auto"))]) + self.scan_ter.modulation = ConfigSelection(default = defaultTer["modulation"], choices = [ + (eDVBFrontendParametersTerrestrial.Modulation_QPSK, "QPSK"), + (eDVBFrontendParametersTerrestrial.Modulation_QAM16, "QAM16"), + (eDVBFrontendParametersTerrestrial.Modulation_QAM64, "QAM64"), + (eDVBFrontendParametersTerrestrial.Modulation_QAM256, "QAM256"), + (eDVBFrontendParametersTerrestrial.Modulation_Auto, _("Auto"))]) + self.scan_ter.transmission = ConfigSelection(default = defaultTer["transmission_mode"], choices = [ + (eDVBFrontendParametersTerrestrial.TransmissionMode_1k, "1K"), + (eDVBFrontendParametersTerrestrial.TransmissionMode_2k, "2K"), + (eDVBFrontendParametersTerrestrial.TransmissionMode_4k, "4K"), + (eDVBFrontendParametersTerrestrial.TransmissionMode_8k, "8K"), + (eDVBFrontendParametersTerrestrial.TransmissionMode_16k, "16K"), + (eDVBFrontendParametersTerrestrial.TransmissionMode_32k, "32K"), + (eDVBFrontendParametersTerrestrial.TransmissionMode_Auto, _("Auto"))]) + self.scan_ter.guard = ConfigSelection(default = defaultTer["guard_interval"], choices = [ + (eDVBFrontendParametersTerrestrial.GuardInterval_1_32, "1/32"), + (eDVBFrontendParametersTerrestrial.GuardInterval_1_16, "1/16"), + (eDVBFrontendParametersTerrestrial.GuardInterval_1_8, "1/8"), + (eDVBFrontendParametersTerrestrial.GuardInterval_1_4, "1/4"), + (eDVBFrontendParametersTerrestrial.GuardInterval_1_128, "1/128"), + (eDVBFrontendParametersTerrestrial.GuardInterval_19_128, "19/128"), + (eDVBFrontendParametersTerrestrial.GuardInterval_19_256, "19/256"), + (eDVBFrontendParametersTerrestrial.GuardInterval_Auto, _("Auto"))]) + self.scan_ter.hierarchy = ConfigSelection(default = defaultTer["hierarchy"], choices = [ + (eDVBFrontendParametersTerrestrial.Hierarchy_None, _("None")), + (eDVBFrontendParametersTerrestrial.Hierarchy_1, "1"), + (eDVBFrontendParametersTerrestrial.Hierarchy_2, "2"), + (eDVBFrontendParametersTerrestrial.Hierarchy_4, "4"), + (eDVBFrontendParametersTerrestrial.Hierarchy_Auto, _("Auto"))]) + self.scan_ter.system = ConfigSelection(default = defaultTer["system"], choices = [ + (eDVBFrontendParametersTerrestrial.System_DVB_T, _("DVB-T")), + (eDVBFrontendParametersTerrestrial.System_DVB_T2, _("DVB-T2"))]) + self.scan_ter.plp_id = ConfigInteger(default = defaultTer["plp_id"], limits = (0, 255)) + + if frontendData is not None and ttype == "DVB-S" and self.predefinedTranspondersList(defaultSat["orbpos"]) is not None: + defaultSatSearchType = "predefined_transponder" + else: + defaultSatSearchType = "single_transponder" + + self.scan_type = ConfigSelection(default = defaultSatSearchType, choices = [("single_transponder", _("User defined transponder")), ("predefined_transponder", _("Predefined transponder")), ("single_satellite", _("Single satellite")), ("multisat", _("Multisat")), ("multisat_yes", _("Multisat"))]) + self.scan_typecable = ConfigSelection(default = "single_transponder", choices = [("single_transponder", _("Single transponder")), ("complete", _("Complete"))]) + self.scan_typeterrestrial = ConfigSelection(default = "single_transponder", choices = [("single_transponder", _("Single transponder")), ("complete", _("Complete"))]) + self.scan_input_as = ConfigSelection(default = "channel", choices = [("frequency", _("Frequency")), ("channel", _("Channel"))]) + self.scan_clearallservices = ConfigSelection(default = "no", choices = [("no", _("no")), ("yes", _("yes")), ("yes_hold_feeds", _("yes (keep feeds)"))]) + self.scan_onlyfree = ConfigYesNo(default = False) + self.scan_networkScan = ConfigYesNo(default = False) + + self.scan_scansat = {} + for sat in nimmanager.satList: + #print sat[1] + self.scan_scansat[sat[0]] = ConfigYesNo(default = False) + + self.scan_satselection = [] + for slot in nimmanager.nim_slots: + if slot.isCompatible("DVB-S"): + self.scan_satselection.append(getConfigSatlist(defaultSat["orbpos"], self.satList[slot.slot])) + else: + self.scan_satselection.append(None) + + return True + + def keyLeft(self): + ConfigListScreen.keyLeft(self) + self.newConfig() + + def keyRight(self): + ConfigListScreen.keyRight(self) + self.newConfig() + + def handleKeyFileCallback(self, answer): + ConfigListScreen.handleKeyFileCallback(self, answer) + self.newConfig() + + def updateStatus(self): + print "updatestatus" + + def addSatTransponder(self, tlist, frequency, symbol_rate, polarisation, fec, inversion, orbital_position, system, modulation, rolloff, pilot): + print "Add Sat: frequ: " + str(frequency) + " symbol: " + str(symbol_rate) + " pol: " + str(polarisation) + " fec: " + str(fec) + " inversion: " + str(inversion) + " modulation: " + str(modulation) + " system: " + str(system) + " rolloff" + str(rolloff) + " pilot" + str(pilot) + print "orbpos: " + str(orbital_position) + parm = eDVBFrontendParametersSatellite() + parm.modulation = modulation + parm.system = system + parm.frequency = frequency * 1000 + parm.symbol_rate = symbol_rate * 1000 + parm.polarisation = polarisation + parm.fec = fec + parm.inversion = inversion + parm.orbital_position = orbital_position + parm.rolloff = rolloff + parm.pilot = pilot + tlist.append(parm) + + def addCabTransponder(self, tlist, frequency, symbol_rate, modulation, fec, inversion): + print "Add Cab: frequ: " + str(frequency) + " symbol: " + str(symbol_rate) + " pol: " + str(modulation) + " fec: " + str(fec) + " inversion: " + str(inversion) + parm = eDVBFrontendParametersCable() + parm.frequency = frequency * 1000 + parm.symbol_rate = symbol_rate * 1000 + parm.modulation = modulation + parm.fec = fec + parm.inversion = inversion + tlist.append(parm) + + def addTerTransponder(self, tlist, *args, **kwargs): + tlist.append(buildTerTransponder(*args, **kwargs)) + + def keyGo(self): + infoBarInstance = InfoBar.instance + if infoBarInstance: + infoBarInstance.checkTimeshiftRunning(self.keyGoCheckTimeshiftCallback) + else: + self.keyGoCheckTimeshiftCallback(True) + + def keyGoCheckTimeshiftCallback(self, answer): + if not answer or self.scan_nims.value == "": + return + tlist = [] + flags = None + startScan = True + removeAll = True + index_to_scan = int(self.scan_nims.value) + + if self.scan_nims == [ ]: + self.session.open(MessageBox, _("No tuner is enabled!\nPlease setup your tuner settings before you start a service scan."), MessageBox.TYPE_ERROR) + return + + nim = nimmanager.nim_slots[index_to_scan] + print "nim", nim.slot + if nim.isCompatible("DVB-S"): + print "is compatible with DVB-S" + if self.scan_type.value == "single_transponder": + # these lists are generated for each tuner, so this has work. + assert len(self.satList) > index_to_scan + assert len(self.scan_satselection) > index_to_scan + + nimsats = self.satList[index_to_scan] + selsatidx = self.scan_satselection[index_to_scan].index + + # however, the satList itself could be empty. in that case, "index" is 0 (for "None"). + if len(nimsats): + orbpos = nimsats[selsatidx][0] + if self.scan_sat.system.value == eDVBFrontendParametersSatellite.System_DVB_S: + fec = self.scan_sat.fec.value + else: + fec = self.scan_sat.fec_s2.value + print "add sat transponder" + self.addSatTransponder(tlist, self.scan_sat.frequency.value, + self.scan_sat.symbolrate.value, + self.scan_sat.polarization.value, + fec, + self.scan_sat.inversion.value, + orbpos, + self.scan_sat.system.value, + self.scan_sat.modulation.value, + self.scan_sat.rolloff.value, + self.scan_sat.pilot.value) + removeAll = False + elif self.scan_type.value == "predefined_transponder": + nimsats = self.satList[index_to_scan] + selsatidx = self.scan_satselection[index_to_scan].index + if len(nimsats): + orbpos = nimsats[selsatidx][0] + tps = nimmanager.getTransponders(orbpos) + if len(tps) and len(tps) > self.preDefTransponders.index : + tp = tps[self.preDefTransponders.index] + self.addSatTransponder(tlist, tp[1] / 1000, tp[2] / 1000, tp[3], tp[4], tp[7], orbpos, tp[5], tp[6], tp[8], tp[9]) + removeAll = False + elif self.scan_type.value == "single_satellite": + sat = self.satList[index_to_scan][self.scan_satselection[index_to_scan].index] + getInitialTransponderList(tlist, sat[0]) + elif "multisat" in self.scan_type.value: + SatList = nimmanager.getSatListForNim(index_to_scan) + for x in self.multiscanlist: + if x[1].value: + print " " + str(x[0]) + getInitialTransponderList(tlist, x[0]) + + elif nim.isCompatible("DVB-C"): + if self.scan_typecable.value == "single_transponder": + self.addCabTransponder(tlist, self.scan_cab.frequency.value, + self.scan_cab.symbolrate.value, + self.scan_cab.modulation.value, + self.scan_cab.fec.value, + self.scan_cab.inversion.value) + removeAll = False + elif self.scan_typecable.value == "complete": + if config.Nims[index_to_scan].cable.scan_type.value == "provider": + getInitialCableTransponderList(tlist, index_to_scan) + else: + startScan = False + + elif nim.isCompatible("DVB-T"): + if self.scan_typeterrestrial.value == "single_transponder": + if self.scan_input_as.value == "channel": + frequency = channelnumbers.channel2frequency(self.scan_ter.channel.value, self.ter_tnumber) + else: + frequency = self.scan_ter.frequency.value * 1000 + self.addTerTransponder(tlist, + frequency, + inversion = self.scan_ter.inversion.value, + bandwidth = self.scan_ter.bandwidth.value, + fechigh = self.scan_ter.fechigh.value, + feclow = self.scan_ter.feclow.value, + modulation = self.scan_ter.modulation.value, + transmission = self.scan_ter.transmission.value, + guard = self.scan_ter.guard.value, + hierarchy = self.scan_ter.hierarchy.value, + system = self.scan_ter.system.value, + plpid = self.scan_ter.plp_id.value) + removeAll = False + elif self.scan_typeterrestrial.value == "predefined_transponder": + if self.TerrestrialTransponders is not None: + tlist = [self.TerrestrialTransponders.value] + removeAll = False + elif self.scan_typeterrestrial.value == "complete": + getInitialTerrestrialTransponderList(tlist, nimmanager.getTerrestrialDescription(index_to_scan)) + + flags = self.scan_networkScan.value and eComponentScan.scanNetworkSearch or 0 + + tmp = self.scan_clearallservices.value + if tmp == "yes": + flags |= eComponentScan.scanRemoveServices + elif tmp == "yes_hold_feeds": + flags |= eComponentScan.scanRemoveServices + flags |= eComponentScan.scanDontRemoveFeeds + + if tmp != "no" and not removeAll: + flags |= eComponentScan.scanDontRemoveUnscanned + + if self.scan_onlyfree.value: + flags |= eComponentScan.scanOnlyFree + + for x in self["config"].list: + x[1].save() + + if startScan: + self.startScan(tlist, flags, index_to_scan, self.networkid) + else: + self.flags = flags + self.feid = index_to_scan + self.tlist = [] + self.startCableTransponderSearch(self.feid) + + def setCableTransponderSearchResult(self, tlist): + self.tlist = tlist + + def cableTransponderSearchFinished(self): + if self.tlist is None: + self.tlist = [] + else: + self.startScan(self.tlist, self.flags, self.feid) + + def predefinedTranspondersList(self, orbpos): + default = None + if orbpos is not None: + list = [] + if self.scan_sat.system.value == eDVBFrontendParametersSatellite.System_DVB_S2: + fec = self.scan_sat.fec_s2.value + else: + fec = self.scan_sat.fec.value + compare = [0, self.scan_sat.frequency.value, self.scan_sat.symbolrate.value, self.scan_sat.polarization.value, fec] + i = 0 + tps = nimmanager.getTransponders(orbpos) + for tp in tps: + if tp[0] == 0: + if default is None and self.compareTransponders(tp, compare): + default = str(i) + list.append((str(i), self.humanReadableTransponder(tp))) + i += 1 + self.preDefTransponders = ConfigSelection(choices = list, default = default) + return default + + def humanReadableTransponder(self, tp): + if tp[3] in range (4) and tp[4] in range (11): + pol_list = ['H','V','L','R'] + fec_list = ['Auto','1/2','2/3','3/4','5/6','7/8','8/9','3/5','4/5','9/10','None'] + return str(tp[1] / 1000) + " " + pol_list[tp[3]] + " " + str(tp[2] / 1000) + " " + fec_list[tp[4]] + return _("Invalid transponder data") + + def compareTransponders(self, tp, compare): + return abs(tp[1] / 1000 - compare[1]) <= 2 and abs(tp[2] / 1000 - compare[2]) <= 10 and tp[3] == compare[3] and (not tp[4] or tp[4] == compare[4]) + + def startScan(self, tlist, flags, feid, networkid = 0): + if len(tlist): + # flags |= eComponentScan.scanSearchBAT + if self.finished_cb: + self.session.openWithCallback(self.finished_cb, ServiceScan, [{"transponders": tlist, "feid": feid, "flags": flags, "networkid": networkid}]) + else: + self.session.openWithCallback(self.startScanCallback, ServiceScan, [{"transponders": tlist, "feid": feid, "flags": flags, "networkid": networkid}]) + else: + if self.finished_cb: + self.session.openWithCallback(self.finished_cb, MessageBox, _("Nothing to scan!\nPlease setup your tuner settings before you start a service scan."), MessageBox.TYPE_ERROR) + else: + self.session.open(MessageBox, _("Nothing to scan!\nPlease setup your tuner settings before you start a service scan."), MessageBox.TYPE_ERROR) + + def startScanCallback(self, answer=True): + if answer: + self.doCloseRecursive() + + def keyCancel(self): + self.session.nav.playService(self.session.postScanService) + for x in self["config"].list: + x[1].cancel() + self.close() + + def doCloseRecursive(self): + self.session.nav.playService(self.session.postScanService) + self.closeRecursive() + +class ScanSimple(ConfigListScreen, Screen, CableTransponderSearchSupport): + def getNetworksForNim(self, nim): + if nim.isCompatible("DVB-S"): + networks = nimmanager.getSatListForNim(nim.slot) + elif not nim.empty: + networks = [ nim.type ] # "DVB-C" or "DVB-T". TODO: seperate networks for different C/T tuners, if we want to support that. + else: + # empty tuners provide no networks. + networks = [ ] + return networks + + def __init__(self, session): + Screen.__init__(self, session) + Screen.setTitle(self, _("Automatic Scan")) + + self["key_red"] = StaticText(_("Close")) + self["key_green"] = StaticText(_("Scan")) + + self["actions"] = ActionMap(["SetupActions", "MenuActions", "ColorActions"], + { + "ok": self.keyGo, + "save": self.keyGo, + "cancel": self.keyCancel, + "menu": self.doCloseRecursive, + "red": self.keyCancel, + "green": self.keyGo, + }, -2) + + self.session.postScanService = session.nav.getCurrentlyPlayingServiceOrGroup() + + self.list = [] + tlist = [] + + known_networks = [ ] + nims_to_scan = [ ] + self.finished_cb = None + + for nim in nimmanager.nim_slots: + # collect networks provided by this tuner + + need_scan = False + networks = self.getNetworksForNim(nim) + + print "nim %d provides" % nim.slot, networks + print "known:", known_networks + + # we only need to scan on the first tuner which provides a network. + # this gives the first tuner for each network priority for scanning. + for x in networks: + if x not in known_networks: + need_scan = True + print x, "not in ", known_networks + known_networks.append(x) + + # don't offer to scan nims if nothing is connected + if not nimmanager.somethingConnected(nim.slot): + need_scan = False + + if need_scan: + nims_to_scan.append(nim) + + # we save the config elements to use them on keyGo + self.nim_enable = [ ] + + if len(nims_to_scan): + self.scan_clearallservices = ConfigSelection(default = "yes", choices = [("no", _("no")), ("yes", _("yes")), ("yes_hold_feeds", _("yes (keep feeds)"))]) + self.list.append(getConfigListEntry(_("Clear before scan"), self.scan_clearallservices)) + + for nim in nims_to_scan: + nimconfig = ConfigYesNo(default = True) + nimconfig.nim_index = nim.slot + self.nim_enable.append(nimconfig) + self.list.append(getConfigListEntry(_("Scan ") + nim.slot_name + " (" + nim.friendly_type + ")", nimconfig)) + + ConfigListScreen.__init__(self, self.list) + self["header"] = Label(_("Automatic scan")) + self["footer"] = Label(_("Press OK to scan")) + + def runAsync(self, finished_cb): + self.finished_cb = finished_cb + self.keyGo() + + def keyGo(self): + InfoBarInstance = InfoBar.instance + if InfoBarInstance: + InfoBarInstance.checkTimeshiftRunning(self.keyGoCheckTimeshiftCallback) + else: + self.keyGoCheckTimeshiftCallback(True) + + def keyGoCheckTimeshiftCallback(self, answer): + if answer: + self.scanList = [] + self.known_networks = set() + self.nim_iter=0 + self.buildTransponderList() + + def buildTransponderList(self): # this method is called multiple times because of asynchronous stuff + APPEND_NOW = 0 + SEARCH_CABLE_TRANSPONDERS = 1 + action = APPEND_NOW + + n = self.nim_iter < len(self.nim_enable) and self.nim_enable[self.nim_iter] or None + self.nim_iter += 1 + if n: + if n.value: # check if nim is enabled + flags = 0 + nim = nimmanager.nim_slots[n.nim_index] + networks = set(self.getNetworksForNim(nim)) + networkid = 0 + + # don't scan anything twice + networks.discard(self.known_networks) + + tlist = [ ] + if nim.isCompatible("DVB-S"): + # get initial transponders for each satellite to be scanned + for sat in networks: + getInitialTransponderList(tlist, sat[0]) + elif nim.isCompatible("DVB-C"): + if config.Nims[nim.slot].cable.scan_type.value == "provider": + getInitialCableTransponderList(tlist, nim.slot) + else: + action = SEARCH_CABLE_TRANSPONDERS + networkid = config.Nims[nim.slot].cable.scan_networkid.value + elif nim.isCompatible("DVB-T"): + getInitialTerrestrialTransponderList(tlist, nimmanager.getTerrestrialDescription(nim.slot)) + else: + assert False + + flags |= eComponentScan.scanNetworkSearch #FIXMEEE.. use flags from cables / satellites / terrestrial.xml + tmp = self.scan_clearallservices.value + if tmp == "yes": + flags |= eComponentScan.scanRemoveServices + elif tmp == "yes_hold_feeds": + flags |= eComponentScan.scanRemoveServices + flags |= eComponentScan.scanDontRemoveFeeds + + if action == APPEND_NOW: + self.scanList.append({"transponders": tlist, "feid": nim.slot, "flags": flags}) + elif action == SEARCH_CABLE_TRANSPONDERS: + self.flags = flags + self.feid = nim.slot + self.networkid = networkid + self.startCableTransponderSearch(nim.slot) + return + else: + assert False + + self.buildTransponderList() # recursive call of this function !!! + return + # when we are here, then the recursion is finished and all enabled nims are checked + # so we now start the real transponder scan + self.startScan(self.scanList) + + def startScan(self, scanList): + if len(scanList): + if self.finished_cb: + self.session.openWithCallback(self.finished_cb, ServiceScan, scanList = scanList) + else: + self.session.open(ServiceScan, scanList = scanList) + else: + if self.finished_cb: + self.session.openWithCallback(self.finished_cb, MessageBox, _("Nothing to scan!\nPlease setup your tuner settings before you start a service scan."), MessageBox.TYPE_ERROR) + else: + self.session.open(MessageBox, _("Nothing to scan!\nPlease setup your tuner settings before you start a service scan."), MessageBox.TYPE_ERROR) + + def setCableTransponderSearchResult(self, tlist): + if tlist is not None: + self.scanList.append({"transponders": tlist, "feid": self.feid, "flags": self.flags}) + + def cableTransponderSearchFinished(self): + self.buildTransponderList() + + def keyCancel(self): + self.session.nav.playService(self.session.postScanService) + self.close() + + def doCloseRecursive(self): + self.session.nav.playService(self.session.postScanService) + self.closeRecursive() + + def Satexists(self, tlist, pos): + for x in tlist: + if x == pos: + return 1 + return 0 diff --git a/lib/python/Screens/Scart.py b/lib/python/Screens/Scart.py new file mode 100644 index 0000000..e937ef2 --- /dev/null +++ b/lib/python/Screens/Scart.py @@ -0,0 +1,53 @@ +from Screen import Screen +from MessageBox import MessageBox +from Components.AVSwitch import AVSwitch +from Tools import Notifications + +class Scart(Screen): + def __init__(self, session, start_visible=True): + Screen.__init__(self, session) + self.msgBox = None + self.notificationVisible = None + + self.avswitch = AVSwitch() + + if start_visible: + self.onExecBegin.append(self.showMessageBox) + self.msgVisible = None + else: + self.msgVisible = False + + def showMessageBox(self): + if self.msgVisible is None: + self.onExecBegin.remove(self.showMessageBox) + self.msgVisible = False + + if not self.msgVisible: + self.msgVisible = True + self.avswitch.setInput("SCART") + if not self.session.in_exec: + self.notificationVisible = True + Notifications.AddNotificationWithCallback(self.MsgBoxClosed, MessageBox, _("If you see this, something is wrong with\nyour scart connection. Press OK to return."), MessageBox.TYPE_ERROR, msgBoxID = "scart_msgbox") + else: + self.msgBox = self.session.openWithCallback(self.MsgBoxClosed, MessageBox, _("If you see this, something is wrong with\nyour scart connection. Press OK to return."), MessageBox.TYPE_ERROR) + + def MsgBoxClosed(self, *val): + self.msgBox = None + self.switchToTV() + + def switchToTV(self, *val): + if self.msgVisible: + if self.msgBox: + self.msgBox.close() # ... MsgBoxClosed -> switchToTV again.. + return + self.avswitch.setInput("ENCODER") + self.msgVisible = False + if self.notificationVisible: + self.avswitch.setInput("ENCODER") + self.notificationVisible = False + for notification in Notifications.current_notifications: + try: + if notification[1].msgBoxID == "scart_msgbox": + notification[1].close() + except: + print "other notification is open. try another one." diff --git a/lib/python/Screens/Screen.py b/lib/python/Screens/Screen.py new file mode 100644 index 0000000..49f8be5 --- /dev/null +++ b/lib/python/Screens/Screen.py @@ -0,0 +1,182 @@ +from Tools.Profile import profile + +profile("LOAD:GUISkin") +from Components.GUISkin import GUISkin +profile("LOAD:Source") +from Components.Sources.Source import Source +profile("LOAD:GUIComponent") +from Components.GUIComponent import GUIComponent +profile("LOAD:eRCInput") +from enigma import eRCInput + +class Screen(dict, GUISkin): + + False, SUSPEND_STOPS, SUSPEND_PAUSES = range(3) + ALLOW_SUSPEND = False + + global_screen = None + + def __init__(self, session, parent = None): + dict.__init__(self) + self.skinName = self.__class__.__name__ + self.session = session + self.parent = parent + GUISkin.__init__(self) + + self.onClose = [ ] + self.onFirstExecBegin = [ ] + self.onExecBegin = [ ] + self.onExecEnd = [ ] + self.onShown = [ ] + + self.onShow = [ ] + self.onHide = [ ] + + self.execing = False + + self.shown = True + # already shown is false until the screen is really shown (after creation) + self.already_shown = False + + self.renderer = [ ] + + # in order to support screens *without* a help, + # we need the list in every screen. how ironic. + self.helpList = [ ] + + self.close_on_next_exec = None + + # stand alone screens (for example web screens) + # don't care about having or not having focus. + self.stand_alone = False + self.keyboardMode = None + + def saveKeyboardMode(self): + rcinput = eRCInput.getInstance() + self.keyboardMode = rcinput.getKeyboardMode() + + def setKeyboardModeAscii(self): + rcinput = eRCInput.getInstance() + rcinput.setKeyboardMode(rcinput.kmAscii) + + def setKeyboardModeNone(self): + rcinput = eRCInput.getInstance() + rcinput.setKeyboardMode(rcinput.kmNone) + + def restoreKeyboardMode(self): + rcinput = eRCInput.getInstance() + if self.keyboardMode is not None: + rcinput.setKeyboardMode(self.keyboardMode) + + def execBegin(self): + self.active_components = [ ] + if self.close_on_next_exec is not None: + tmp = self.close_on_next_exec + self.close_on_next_exec = None + self.execing = True + self.close(*tmp) + else: + single = self.onFirstExecBegin + self.onFirstExecBegin = [] + for x in self.onExecBegin + single: + x() + if not self.stand_alone and self.session.current_dialog != self: + return + +# assert self.session == None, "a screen can only exec once per time" +# self.session = session + + for val in self.values() + self.renderer: + val.execBegin() + if not self.stand_alone and self.session.current_dialog != self: + return + self.active_components.append(val) + + self.execing = True + + for x in self.onShown: + x() + + def execEnd(self): + active_components = self.active_components +# for (name, val) in self.items(): + self.active_components = None + for val in active_components: + val.execEnd() +# assert self.session != None, "execEnd on non-execing screen!" +# self.session = None + self.execing = False + for x in self.onExecEnd: + x() + + # never call this directly - it will be called from the session! + def doClose(self): + self.hide() + for x in self.onClose: + x() + + # fixup circular references + del self.helpList + GUISkin.close(self) + + # first disconnect all render from their sources. + # we might split this out into a "unskin"-call, + # but currently we destroy the screen afterwards + # anyway. + for val in self.renderer: + val.disconnectAll() # disconnected converter/sources and probably destroy them. Sources will not be destroyed. + + del self.session + for (name, val) in self.items(): + val.destroy() + del self[name] + + self.renderer = [ ] + + # really delete all elements now + self.__dict__.clear() + + def close(self, *retval): + if not self.execing: + self.close_on_next_exec = retval + else: + self.session.close(self, *retval) + + def setFocus(self, o): + self.instance.setFocus(o.instance) + + def show(self): + if (self.shown and self.already_shown) or not self.instance: + return + self.shown = True + self.already_shown = True + self.instance.show() + for x in self.onShow: + x() + for val in self.values() + self.renderer: + if isinstance(val, GUIComponent) or isinstance(val, Source): + val.onShow() + + def hide(self): + if not self.shown or not self.instance: + return + self.shown = False + self.instance.hide() + for x in self.onHide: + x() + for val in self.values() + self.renderer: + if isinstance(val, GUIComponent) or isinstance(val, Source): + val.onHide() + + def __repr__(self): + return str(type(self)) + + def getRelatedScreen(self, name): + if name == "session": + return self.session.screen + elif name == "parent": + return self.parent + elif name == "global": + return self.global_screen + else: + return None diff --git a/lib/python/Screens/ScreenSaver.py b/lib/python/Screens/ScreenSaver.py new file mode 100644 index 0000000..5190774 --- /dev/null +++ b/lib/python/Screens/ScreenSaver.py @@ -0,0 +1,57 @@ +from Screens.Screen import Screen +from Components.MovieList import AUDIO_EXTENSIONS +from Components.ServiceEventTracker import ServiceEventTracker +from Components.Pixmap import Pixmap +from enigma import ePoint, eTimer, iPlayableService +import os, random + +class Screensaver(Screen): + def __init__(self, session): + + self.skin = """ + <screen name="Screensaver" position="fill" flags="wfNoBorder"> + <eLabel position="fill" backgroundColor="#54111112" zPosition="0"/> + <widget name="picture" pixmap="skin_default/anniversaryOpenPLi.png" position="0,0" size="145,135" alphatest="blend" backgroundColor="secondBG" transparent="1" zPosition="1"/> + </screen>""" + + Screen.__init__(self, session) + + self.moveLogoTimer = eTimer() + self.moveLogoTimer.callback.append(self.doMovePicture) + self.onShow.append(self.__onShow) + self.onHide.append(self.__onHide) + + self.__event_tracker = ServiceEventTracker(screen=self, eventmap= + { + iPlayableService.evStart: self.serviceStarted + }) + + self["picture"] = Pixmap() + + self.onLayoutFinish.append(self.layoutFinished) + + def layoutFinished(self): + picturesize = self["picture"].getSize() + self.maxx = self.instance.size().width() - picturesize[0] + self.maxy = self.instance.size().height() - picturesize[1] + self.doMovePicture() + + def __onHide(self): + self.moveLogoTimer.stop() + + def __onShow(self): + self.moveLogoTimer.startLongTimer(5) + + def serviceStarted(self): + if self.shown: + ref = self.session.nav.getCurrentlyPlayingServiceOrGroup() + if ref: + ref = ref.toString().split(":") + if not os.path.splitext(ref[10])[1].lower() in AUDIO_EXTENSIONS: + self.hide() + + def doMovePicture(self): + self.posx = random.randint(1,self.maxx) + self.posy = random.randint(1,self.maxy) + self["picture"].instance.move(ePoint(self.posx, self.posy)) + self.moveLogoTimer.startLongTimer(5) diff --git a/lib/python/Screens/ServiceInfo.py b/lib/python/Screens/ServiceInfo.py new file mode 100644 index 0000000..d25da40 --- /dev/null +++ b/lib/python/Screens/ServiceInfo.py @@ -0,0 +1,253 @@ +from Components.HTMLComponent import HTMLComponent +from Components.GUIComponent import GUIComponent +from Screen import Screen +from Components.ActionMap import ActionMap +from Components.Label import Label +from ServiceReference import ServiceReference +from enigma import eListboxPythonMultiContent, eListbox, gFont, iServiceInformation, eServiceCenter +from Tools.Transponder import ConvertToHumanReadable +from Components.Converter.ChannelNumbers import channelnumbers + +RT_HALIGN_LEFT = 0 + +TYPE_TEXT = 0 +TYPE_VALUE_HEX = 1 +TYPE_VALUE_DEC = 2 +TYPE_VALUE_HEX_DEC = 3 +TYPE_SLIDER = 4 +TYPE_VALUE_ORBIT_DEC = 5 + +def to_unsigned(x): + return x & 0xFFFFFFFF + +def ServiceInfoListEntry(a, b, valueType=TYPE_TEXT, param=4): + print "b:", b + if not isinstance(b, str): + if valueType == TYPE_VALUE_HEX: + b = ("0x%0" + str(param) + "x") % to_unsigned(b) + elif valueType == TYPE_VALUE_DEC: + b = str(b) + elif valueType == TYPE_VALUE_HEX_DEC: + b = ("0x%0" + str(param) + "x (%dd)") % (to_unsigned(b), b) + elif valueType == TYPE_VALUE_ORBIT_DEC: + direction = 'E' + if b > 1800: + b = 3600 - b + direction = 'W' + b = ("%d.%d%s") % (b // 10, b % 10, direction) + else: + b = str(b) + + return [ + #PyObject *type, *px, *py, *pwidth, *pheight, *pfnt, *pstring, *pflags; + (eListboxPythonMultiContent.TYPE_TEXT, 0, 0, 320, 30, 0, RT_HALIGN_LEFT, ""), + (eListboxPythonMultiContent.TYPE_TEXT, 0, 0, 320, 25, 0, RT_HALIGN_LEFT, a), + (eListboxPythonMultiContent.TYPE_TEXT, 330, 0, 570, 25, 0, RT_HALIGN_LEFT, b) + ] + +class ServiceInfoList(HTMLComponent, GUIComponent): + def __init__(self, source): + GUIComponent.__init__(self) + self.l = eListboxPythonMultiContent() + self.list = source + self.l.setList(self.list) + self.l.setFont(0, gFont("Regular", 23)) + self.l.setItemHeight(25) + + GUI_WIDGET = eListbox + + def postWidgetCreate(self, instance): + self.instance.setContent(self.l) + +TYPE_SERVICE_INFO = 1 +TYPE_TRANSPONDER_INFO = 2 + +class ServiceInfo(Screen): + def __init__(self, session, serviceref=None): + Screen.__init__(self, session) + + self["actions"] = ActionMap(["OkCancelActions", "ColorActions"], + { + "ok": self.close, + "cancel": self.close, + "red": self.information, + "green": self.pids, + "yellow": self.transponder, + "blue": self.tuner + }, -1) + + if serviceref: + self.type = TYPE_TRANSPONDER_INFO + self.skinName="ServiceInfoSimple" + info = eServiceCenter.getInstance().info(serviceref) + self.transponder_info = info.getInfoObject(serviceref, iServiceInformation.sTransponderData) + # info is a iStaticServiceInformation, not a iServiceInformation + self.info = None + self.feinfo = None + else: + self.type = TYPE_SERVICE_INFO + self["key_red"] = self["red"] = Label(_("Service")) + self["key_green"] = self["green"] = Label(_("PIDs")) + self["key_yellow"] = self["yellow"] = Label(_("Multiplex")) + self["key_blue"] = self["blue"] = Label(_("Tuner status")) + service = session.nav.getCurrentService() + if service is not None: + self.info = service.info() + self.feinfo = service.frontendInfo() + else: + self.info = None + self.feinfo = None + + tlist = [ ] + + self["infolist"] = ServiceInfoList(tlist) + self.onShown.append(self.information) + + def information(self): + if self.type == TYPE_SERVICE_INFO: + if self.session.nav.getCurrentlyPlayingServiceOrGroup(): + name = ServiceReference(self.session.nav.getCurrentlyPlayingServiceReference()).getServiceName() + refstr = self.session.nav.getCurrentlyPlayingServiceReference().toString() + else: + name = _("N/A") + refstr = _("N/A") + aspect = "-" + videocodec = "-" + resolution = "-" + if self.info: + videocodec = ("MPEG2", "MPEG4", "MPEG1", "MPEG4-II", "VC1", "VC1-SM", "-" )[self.info and self.info.getInfo(iServiceInformation.sVideoType)] + width = self.info.getInfo(iServiceInformation.sVideoWidth) + height = self.info.getInfo(iServiceInformation.sVideoHeight) + if width > 0 and height > 0: + resolution = "%dx%d" % (width,height) + resolution += ("i", "p", "")[self.info.getInfo(iServiceInformation.sProgressive)] + resolution += str((self.info.getInfo(iServiceInformation.sFrameRate) + 500) / 1000) + aspect = self.getServiceInfoValue(iServiceInformation.sAspect) + if aspect in ( 1, 2, 5, 6, 9, 0xA, 0xD, 0xE ): + aspect = "4:3" + else: + aspect = "16:9" + + Labels = ( (_("Name"), name, TYPE_TEXT), + (_("Provider"), self.getServiceInfoValue(iServiceInformation.sProvider), TYPE_TEXT), + (_("Videoformat"), aspect, TYPE_TEXT), + (_("Videosize"), resolution, TYPE_TEXT), + (_("Videocodec"), videocodec, TYPE_TEXT), + (_("Namespace"), self.getServiceInfoValue(iServiceInformation.sNamespace), TYPE_VALUE_HEX, 8), + (_("Service reference"), refstr, TYPE_TEXT)) + + self.fillList(Labels) + else: + if self.transponder_info: + tp_info = ConvertToHumanReadable(self.transponder_info) + conv = { "tuner_type" : _("Transponder type"), + "system" : _("System"), + "modulation" : _("Modulation"), + "orbital_position" : _("Orbital position"), + "frequency" : _("Frequency"), + "symbol_rate" : _("Symbol rate"), + "bandwidth" : _("Bandwidth"), + "polarization" : _("Polarization"), + "inversion" : _("Inversion"), + "pilot" : _("Pilot"), + "rolloff" : _("Roll-off"), + "fec_inner" : _("FEC"), + "code_rate_lp" : _("Coderate LP"), + "code_rate_hp" : _("Coderate HP"), + "constellation" : _("Constellation"), + "transmission_mode": _("Transmission mode"), + "guard_interval" : _("Guard interval"), + "hierarchy_information": _("Hierarchy information") } + Labels = [(conv[i], tp_info[i], i == "orbital_position" and TYPE_VALUE_ORBIT_DEC or TYPE_VALUE_DEC) for i in tp_info.keys() if i in conv] + self.fillList(Labels) + + def pids(self): + if self.type == TYPE_SERVICE_INFO: + Labels = ( (_("Video PID"), self.getServiceInfoValue(iServiceInformation.sVideoPID), TYPE_VALUE_HEX_DEC, 4), + (_("Audio PID"), self.getServiceInfoValue(iServiceInformation.sAudioPID), TYPE_VALUE_HEX_DEC, 4), + (_("PCR PID"), self.getServiceInfoValue(iServiceInformation.sPCRPID), TYPE_VALUE_HEX_DEC, 4), + (_("PMT PID"), self.getServiceInfoValue(iServiceInformation.sPMTPID), TYPE_VALUE_HEX_DEC, 4), + (_("TXT PID"), self.getServiceInfoValue(iServiceInformation.sTXTPID), TYPE_VALUE_HEX_DEC, 4), + (_("TSID"), self.getServiceInfoValue(iServiceInformation.sTSID), TYPE_VALUE_HEX_DEC, 4), + (_("ONID"), self.getServiceInfoValue(iServiceInformation.sONID), TYPE_VALUE_HEX_DEC, 4), + (_("SID"), self.getServiceInfoValue(iServiceInformation.sSID), TYPE_VALUE_HEX_DEC, 4)) + self.fillList(Labels) + + def showFrontendData(self, real): + if self.type == TYPE_SERVICE_INFO: + frontendData = self.feinfo and self.feinfo.getAll(real) + Labels = self.getFEData(frontendData) + self.fillList(Labels) + + def transponder(self): + if self.type == TYPE_SERVICE_INFO: + self.showFrontendData(True) + + def tuner(self): + if self.type == TYPE_SERVICE_INFO: + self.showFrontendData(False) + + def getFEData(self, frontendDataOrg): + if frontendDataOrg and len(frontendDataOrg): + frontendData = ConvertToHumanReadable(frontendDataOrg) + if frontendDataOrg["tuner_type"] == "DVB-S": + return ((_("NIM"), chr(ord('A') + frontendData["tuner_number"]), TYPE_TEXT), + (_("Type"), frontendData["tuner_type"], TYPE_TEXT), + (_("System"), frontendData["system"], TYPE_TEXT), + (_("Modulation"), frontendData["modulation"], TYPE_TEXT), + (_("Orbital position"), frontendData["orbital_position"], TYPE_VALUE_DEC), + (_("Frequency"), frontendData["frequency"], TYPE_VALUE_DEC), + (_("Symbol rate"), frontendData["symbol_rate"], TYPE_VALUE_DEC), + (_("Polarization"), frontendData["polarization"], TYPE_TEXT), + (_("Inversion"), frontendData["inversion"], TYPE_TEXT), + (_("FEC"), frontendData["fec_inner"], TYPE_TEXT), + (_("Pilot"), frontendData.get("pilot", None), TYPE_TEXT), + (_("Roll-off"), frontendData.get("rolloff", None), TYPE_TEXT)) + elif frontendDataOrg["tuner_type"] == "DVB-C": + return ((_("NIM"), chr(ord('A') + frontendData["tuner_number"]), TYPE_TEXT), + (_("Type"), frontendData["tuner_type"], TYPE_TEXT), + (_("Modulation"), frontendData["modulation"], TYPE_TEXT), + (_("Frequency"), frontendData["frequency"], TYPE_VALUE_DEC), + (_("Symbol rate"), frontendData["symbol_rate"], TYPE_VALUE_DEC), + (_("Inversion"), frontendData["inversion"], TYPE_TEXT), + (_("FEC"), frontendData["fec_inner"], TYPE_TEXT)) + elif frontendDataOrg["tuner_type"] == "DVB-T": + return ((_("NIM"), chr(ord('A') + frontendData["tuner_number"]), TYPE_TEXT), + (_("Type"), frontendData["tuner_type"], TYPE_TEXT), + (_("Frequency"), frontendData["frequency"], TYPE_VALUE_DEC), + (_("Channel"), channelnumbers.getChannelNumber(frontendData["frequency"], frontendData["tuner_number"]), TYPE_VALUE_DEC), + (_("Inversion"), frontendData["inversion"], TYPE_TEXT), + (_("Bandwidth"), frontendData["bandwidth"], TYPE_VALUE_DEC), + (_("Code rate LP"), frontendData["code_rate_lp"], TYPE_TEXT), + (_("Code rate HP"), frontendData["code_rate_hp"], TYPE_TEXT), + (_("Constellation"), frontendData["constellation"], TYPE_TEXT), + (_("Transmission mode"), frontendData["transmission_mode"], TYPE_TEXT), + (_("Guard interval"), frontendData["guard_interval"], TYPE_TEXT), + (_("Hierarchy info"), frontendData["hierarchy_information"], TYPE_TEXT)) + return [ ] + + def fillList(self, Labels): + tlist = [ ] + + for item in Labels: + if item[1] is None: + continue; + value = item[1] + if len(item) < 4: + tlist.append(ServiceInfoListEntry(item[0]+":", value, item[2])) + else: + tlist.append(ServiceInfoListEntry(item[0]+":", value, item[2], item[3])) + + self["infolist"].l.setList(tlist) + + def getServiceInfoValue(self, what): + if self.info is None: + return "" + + v = self.info.getInfo(what) + if v == -2: + v = self.info.getInfoString(what) + elif v == -1: + v = _("N/A") + + return v diff --git a/lib/python/Screens/ServiceScan.py b/lib/python/Screens/ServiceScan.py new file mode 100644 index 0000000..095bf4b --- /dev/null +++ b/lib/python/Screens/ServiceScan.py @@ -0,0 +1,112 @@ +from Screen import Screen +from Components.ServiceScan import ServiceScan as CScan +from Components.ProgressBar import ProgressBar +from Components.Label import Label +from Components.ActionMap import ActionMap +from Components.FIFOList import FIFOList +from Components.Sources.FrontendInfo import FrontendInfo +from Components.config import config +from enigma import eServiceCenter, eServiceReference + +class ServiceScanSummary(Screen): + skin = """ + <screen position="0,0" size="132,64"> + <widget name="Title" position="6,4" size="120,42" font="Regular;16" transparent="1" /> + <widget name="scan_progress" position="6,50" zPosition="1" borderWidth="1" size="56,12" backgroundColor="dark" /> + <widget name="Service" position="6,22" size="120,26" font="Regular;12" transparent="1" /> + </screen>""" + + def __init__(self, session, parent, showStepSlider = True): + Screen.__init__(self, session, parent) + + self["Title"] = Label(parent.title or _("Service scan")) + self["Service"] = Label(_("No service")) + self["scan_progress"] = ProgressBar() + + def updateProgress(self, value): + self["scan_progress"].setValue(value) + + def updateService(self, name): + self["Service"].setText(name) + +class ServiceScan(Screen): + + def ok(self): + print "ok" + if self["scan"].isDone(): + if self.currentInfobar.__class__.__name__ == "InfoBar": + selectedService = self["servicelist"].getCurrentSelection() + if selectedService and self.currentServiceList is not None: + self.currentServiceList.setTvMode() + bouquets = self.currentServiceList.getBouquetList() + last_scanned_bouquet = bouquets and next((x[1] for x in bouquets if x[0] == "Last Scanned"), None) + if last_scanned_bouquet: + self.currentServiceList.enterUserbouquet(last_scanned_bouquet) + self.currentServiceList.setCurrentSelection(eServiceReference(selectedService[1])) + service = self.currentServiceList.getCurrentSelection() + if not self.session.postScanService or service != self.session.postScanService: + self.session.postScanService = service + self.currentServiceList.addToHistory(service) + config.servicelist.lastmode.save() + self.currentServiceList.saveChannel(service) + self.doCloseRecursive() + self.cancel() + + def cancel(self): + self.exit(False) + + def doCloseRecursive(self): + self.exit(True) + + def exit(self, returnValue): + if self.currentInfobar.__class__.__name__ == "InfoBar": + self.close(returnValue) + self.close() + + def __init__(self, session, scanList): + Screen.__init__(self, session) + + self.scanList = scanList + + if hasattr(session, 'infobar'): + self.currentInfobar = session.infobar + self.currentServiceList = self.currentInfobar.servicelist + if self.session.pipshown and self.currentServiceList: + if self.currentServiceList.dopipzap: + self.currentServiceList.togglePipzap() + if hasattr(self.session, 'pip'): + del self.session.pip + self.session.pipshown = False + else: + self.currentInfobar = None + + self.session.nav.stopService() + + self["scan_progress"] = ProgressBar() + self["scan_state"] = Label(_("scan state")) + self["network"] = Label() + self["transponder"] = Label() + + self["pass"] = Label("") + self["servicelist"] = FIFOList() + self["FrontendInfo"] = FrontendInfo() + self["key_red"] = Label(_("Cancel")) + self["key_green"] = Label(_("OK")) + + self["actions"] = ActionMap(["SetupActions", "MenuActions"], + { + "ok": self.ok, + "save": self.ok, + "cancel": self.cancel, + "menu": self.doCloseRecursive + }, -2) + + self.onFirstExecBegin.append(self.doServiceScan) + + def doServiceScan(self): + self["servicelist"].len = self["servicelist"].instance.size().height() / self["servicelist"].l.getItemSize().height() + self["scan"] = CScan(self["scan_progress"], self["scan_state"], self["servicelist"], self["pass"], self.scanList, self["network"], self["transponder"], self["FrontendInfo"], self.session.summary) + + def createSummary(self): + print "ServiceScanCreateSummary" + return ServiceScanSummary diff --git a/lib/python/Screens/ServiceStopScreen.py b/lib/python/Screens/ServiceStopScreen.py new file mode 100644 index 0000000..7f6bf31 --- /dev/null +++ b/lib/python/Screens/ServiceStopScreen.py @@ -0,0 +1,45 @@ +from Screens.MessageBox import MessageBox + +class ServiceStopScreen: + def __init__(self): + try: + self.session + except: + print "[ServiceStopScreen] ERROR: no self.session set" + self.oldref = None + self.onClose.append(self.__onClose) + + def pipAvailable(self): + # pip isn't available in every state of e2 + try: + self.session.pipshown + pipavailable = True + except: + pipavailable = False + return pipavailable + + def stopService(self): + self.oldref = self.session.nav.getCurrentlyPlayingServiceOrGroup() + self.session.nav.stopService() + if self.pipAvailable(): + if self.session.pipshown: # try to disable pip + if hasattr(self.session, 'infobar'): + if self.session.infobar.servicelist and self.session.infobar.servicelist.dopipzap: + self.session.infobar.servicelist.togglePipzap() + if hasattr(self.session, 'pip'): + del self.session.pip + self.session.pipshown = False + + def __onClose(self): + self.session.nav.playService(self.oldref) + + def restoreService(self, msg = _("Zap back to previously tuned service?")): + if self.oldref: + self.session.openWithCallback(self.restartPrevService, MessageBox, msg, MessageBox.TYPE_YESNO) + else: + self.restartPrevService(False) + + def restartPrevService(self, yesno): + if not yesno: + self.oldref=None + self.close() \ No newline at end of file diff --git a/lib/python/Screens/SessionGlobals.py b/lib/python/Screens/SessionGlobals.py new file mode 100644 index 0000000..41b8431 --- /dev/null +++ b/lib/python/Screens/SessionGlobals.py @@ -0,0 +1,49 @@ +from Screens.Screen import Screen +from Components.Sources.CurrentService import CurrentService +from Components.Sources.EventInfo import EventInfo +from Components.Sources.FrontendStatus import FrontendStatus +from Components.Sources.FrontendInfo import FrontendInfo +from Components.Sources.Source import Source +from Components.Sources.TunerInfo import TunerInfo +from Components.Sources.Boolean import Boolean +from Components.Sources.RecordState import RecordState +from Components.Converter.Combine import Combine +from Components.Renderer.FrontpanelLed import FrontpanelLed + +class SessionGlobals(Screen): + def __init__(self, session): + Screen.__init__(self, session) + self["CurrentService"] = CurrentService(session.nav) + self["Event_Now"] = EventInfo(session.nav, EventInfo.NOW) + self["Event_Next"] = EventInfo(session.nav, EventInfo.NEXT) + self["FrontendStatus"] = FrontendStatus(service_source = session.nav.getCurrentService) + self["FrontendInfo"] = FrontendInfo(navcore = session.nav) + self["VideoPicture"] = Source() + self["TunerInfo"] = TunerInfo() + self["RecordState"] = RecordState(session) + self["Standby"] = Boolean(fixed = False) + + from Components.SystemInfo import SystemInfo + + combine = Combine(func = lambda s: {(False, False): 0, (False, True): 1, (True, False): 2, (True, True): 3}[(s[0].boolean, s[1].boolean)]) + combine.connect(self["Standby"]) + combine.connect(self["RecordState"]) + + # | two leds | single led | + # recordstate standby red green + # false false off on off + # true false blnk on blnk + # false true on off off + # true true blnk off blnk + + PATTERN_ON = (20, 0xffffffff, 0xffffffff) + PATTERN_OFF = (20, 0, 0) + PATTERN_BLINK = (20, 0x55555555, 0xa7fccf7a) + + nr_leds = SystemInfo.get("NumFrontpanelLEDs", 0) + + if nr_leds == 1: + FrontpanelLed(which = 0, boolean = False, patterns = [PATTERN_OFF, PATTERN_BLINK, PATTERN_OFF, PATTERN_BLINK]).connect(combine) + elif nr_leds == 2: + FrontpanelLed(which = 0, boolean = False, patterns = [PATTERN_OFF, PATTERN_BLINK, PATTERN_ON, PATTERN_BLINK]).connect(combine) + FrontpanelLed(which = 1, boolean = False, patterns = [PATTERN_ON, PATTERN_ON, PATTERN_OFF, PATTERN_OFF]).connect(combine) diff --git a/lib/python/Screens/Setup.py b/lib/python/Screens/Setup.py new file mode 100644 index 0000000..fd69cd8 --- /dev/null +++ b/lib/python/Screens/Setup.py @@ -0,0 +1,148 @@ +from Screen import Screen +from Components.ActionMap import NumberActionMap +from Components.config import config, ConfigNothing +from Components.Label import Label +from Components.SystemInfo import SystemInfo +from Components.ConfigList import ConfigListScreen +from Components.Sources.StaticText import StaticText +from enigma import eEnv + +import xml.etree.cElementTree + +# FIXME: use resolveFile! +# read the setupmenu +try: + # first we search in the current path + setupfile = file('data/setup.xml', 'r') +except: + # if not found in the current path, we use the global datadir-path + setupfile = file(eEnv.resolve('${datadir}/enigma2/setup.xml'), 'r') +setupdom = xml.etree.cElementTree.parse(setupfile) +setupfile.close() + +def getConfigMenuItem(configElement): + for item in setupdom.getroot().findall('./setup/item/.'): + if item.text == configElement: + return _(item.attrib["text"]), eval(configElement) + return "", None + +class SetupError(Exception): + def __init__(self, message): + self.msg = message + + def __str__(self): + return self.msg + +class SetupSummary(Screen): + + def __init__(self, session, parent): + Screen.__init__(self, session, parent = parent) + self["SetupTitle"] = StaticText(_(parent.setup_title)) + self["SetupEntry"] = StaticText("") + self["SetupValue"] = StaticText("") + self.onShow.append(self.addWatcher) + self.onHide.append(self.removeWatcher) + + def addWatcher(self): + if hasattr(self.parent,"onChangedEntry"): + self.parent.onChangedEntry.append(self.selectionChanged) + self.parent["config"].onSelectionChanged.append(self.selectionChanged) + self.selectionChanged() + + def removeWatcher(self): + if hasattr(self.parent,"onChangedEntry"): + self.parent.onChangedEntry.remove(self.selectionChanged) + self.parent["config"].onSelectionChanged.remove(self.selectionChanged) + + def selectionChanged(self): + self["SetupEntry"].text = self.parent.getCurrentEntry() + self["SetupValue"].text = self.parent.getCurrentValue() + if hasattr(self.parent,"getCurrentDescription") and self.parent.has_key("description"): + self.parent["description"].text = self.parent.getCurrentDescription() + +class Setup(ConfigListScreen, Screen): + + ALLOW_SUSPEND = True + + def removeNotifier(self): + config.usage.setup_level.notifiers.remove(self.levelChanged) + + def levelChanged(self, configElement): + list = [] + self.refill(list) + self["config"].setList(list) + + def refill(self, list): + xmldata = setupdom.getroot() + for x in xmldata.findall("setup"): + if x.get("key") != self.setup: + continue + self.addItems(list, x); + self.setup_title = x.get("title", "").encode("UTF-8") + self.seperation = int(x.get('separation', '0')) + + def __init__(self, session, setup): + Screen.__init__(self, session) + # for the skin: first try a setup_<setupID>, then Setup + self.skinName = ["setup_" + setup, "Setup" ] + + self.setup = setup + list = [] + self.refill(list) + + #check for list.entries > 0 else self.close + self["key_red"] = StaticText(_("Cancel")) + self["key_green"] = StaticText(_("OK")) + self["description"] = Label("") + + self["actions"] = NumberActionMap(["SetupActions", "MenuActions"], + { + "cancel": self.keyCancel, + "save": self.keySave, + "menu": self.closeRecursive, + }, -2) + + ConfigListScreen.__init__(self, list, session = session, on_change = self.changedEntry) + + self.changedEntry() + self.onLayoutFinish.append(self.layoutFinished) + + def layoutFinished(self): + self.setTitle(_(self.setup_title)) + + def addItems(self, list, parentNode): + for x in parentNode: + if not x.tag: + continue + if x.tag == 'item': + item_level = int(x.get("level", 0)) + + if not self.levelChanged in config.usage.setup_level.notifiers: + config.usage.setup_level.notifiers.append(self.levelChanged) + self.onClose.append(self.removeNotifier) + + if item_level > config.usage.setup_level.index: + continue + + requires = x.get("requires") + if requires and not SystemInfo.get(requires, False): + continue; + + item_text = _(x.get("text", "??").encode("UTF-8")) + item_description = _(x.get("description", " ").encode("UTF-8")) + b = eval(x.text or ""); + if b == "": + continue + #add to configlist + item = b + # the first b is the item itself, ignored by the configList. + # the second one is converted to string. + if not isinstance(item, ConfigNothing): + list.append( (item_text, item, item_description) ) + +def getSetupTitle(id): + xmldata = setupdom.getroot() + for x in xmldata.findall("setup"): + if x.get("key") == id: + return x.get("title", "").encode("UTF-8") + raise SetupError("unknown setup id '%s'!" % repr(id)) diff --git a/lib/python/Screens/SimpleSummary.py b/lib/python/Screens/SimpleSummary.py new file mode 100644 index 0000000..992e343 --- /dev/null +++ b/lib/python/Screens/SimpleSummary.py @@ -0,0 +1,25 @@ +from Screens.Screen import Screen +#from Components.Sources.Source import ObsoleteSource + +class SimpleSummary(Screen): + skin = """ + <screen position="0,0" size="132,64"> + <widget source="global.CurrentTime" render="Label" position="56,46" size="82,18" font="Regular;16"> + <convert type="ClockToText">WithSeconds</convert> + </widget> + <widget source="parent.Title" render="Label" position="6,4" size="120,42" font="Regular;18" /> + </screen>""" + def __init__(self, session, parent): + + Screen.__init__(self, session, parent = parent) + + names = parent.skinName + if not isinstance(names, list): + names = [names] + + self.skinName = [ x + "_summary" for x in names ] + self.skinName.append("SimpleSummary") + + # if parent has a "skin_summary" defined, use that as default + self.skin = parent.__dict__.get("skin_summary", self.skin) + diff --git a/lib/python/Screens/SleepTimerEdit.py b/lib/python/Screens/SleepTimerEdit.py new file mode 100644 index 0000000..1df7d78 --- /dev/null +++ b/lib/python/Screens/SleepTimerEdit.py @@ -0,0 +1,137 @@ +from Screens.InfoBar import InfoBar +from Screens.Screen import Screen +from Screens.MessageBox import MessageBox +from Components.ActionMap import ActionMap +from Components.ConfigList import ConfigListScreen +from Components.Label import Label +from Components.Sources.StaticText import StaticText +from Components.config import config, getConfigListEntry +from enigma import eEPGCache +from time import time + +class SleepTimerEdit(ConfigListScreen, Screen): + def __init__(self, session): + Screen.__init__(self, session) + self.skinName = ["SleepTimerSetup", "Setup"] + self.setup_title = _("SleepTimer Configuration") + + self["key_red"] = StaticText(_("Cancel")) + self["key_green"] = StaticText(_("Save")) + self["description"] = Label("") + + self.list = [] + ConfigListScreen.__init__(self, self.list, session = session) + self.createSetup() + + self["setupActions"] = ActionMap(["SetupActions", "ColorActions"], + { + "green": self.ok, + "red": self.cancel, + "cancel": self.cancel, + "ok": self.ok, + }, -2) + + self.onLayoutFinish.append(self.layoutFinished) + + def layoutFinished(self): + self.setTitle(self.setup_title) + + def createSetup(self): + self.list = [] + if InfoBar.instance and InfoBar.instance.sleepTimer.isActive(): + statusSleeptimerText = _("(activated +%d min)") % InfoBar.instance.sleepTimerState() + else: + statusSleeptimerText = _("(not activated)") + self.list.append(getConfigListEntry(_("Sleeptimer") + " " + statusSleeptimerText, + config.usage.sleep_timer, + _("Configure the duration in minutes for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer"))) + self.list.append(getConfigListEntry(_("Inactivity Sleeptimer"), + config.usage.inactivity_timer, + _("Configure the duration in hours the receiver should go to standby when the receiver is not controlled."))) + if int(config.usage.inactivity_timer.value): + self.list.append(getConfigListEntry(_("Specify timeframe to ignore inactivity sleeptimer"), + config.usage.inactivity_timer_blocktime, + _("When enabled you can specify a timeframe were the inactivity sleeptimer is ignored. Not the detection is disabled during this timeframe but the inactivity timeout is disabled"))) + if config.usage.inactivity_timer_blocktime.value: + self.list.append(getConfigListEntry(_("Start time to ignore inactivity sleeptimer"), + config.usage.inactivity_timer_blocktime_begin, + _("Specify the start time when the inactivity sleeptimer should be ignored"))) + self.list.append(getConfigListEntry(_("End time to ignore inactivity sleeptimer"), + config.usage.inactivity_timer_blocktime_end, + _("Specify the end time until the inactivity sleeptimer should be ignored"))) + self.list.append(getConfigListEntry(_("Shutdown when in Standby"), + config.usage.standby_to_shutdown_timer, + _("Configure the duration when the receiver should go to shut down in case the receiver is in standby mode."))) + if int(config.usage.standby_to_shutdown_timer.value): + self.list.append(getConfigListEntry(_("Specify timeframe to ignore the shutdown in standby"), + config.usage.standby_to_shutdown_timer_blocktime, + _("When enabled you can specify a timeframe to ignore the shutdown timer when the receiver is in standby mode"))) + if config.usage.standby_to_shutdown_timer_blocktime.value: + self.list.append(getConfigListEntry(_("Start time to ignore shutdown in standby"), + config.usage.standby_to_shutdown_timer_blocktime_begin, + _("Specify the start time to ignore the shutdown timer when the receiver is in standby mode"))) + self.list.append(getConfigListEntry(_("End time to ignore shutdown in standby"), + config.usage.standby_to_shutdown_timer_blocktime_end, + _("Specify the end time to ignore the shutdown timer when the receiver is in standby mode"))) + self["config"].list = self.list + self["config"].l.setList(self.list) + + def ok(self): + if self["config"].isChanged(): + for x in self["config"].list: + x[1].save() + if self.getCurrentEntry().startswith(_("Sleeptimer")): + sleepTimer = config.usage.sleep_timer.value + if sleepTimer == "event_standby": + sleepTimer = self.currentEventTime() + else: + sleepTimer = int(sleepTimer) + if sleepTimer or not self.getCurrentEntry().endswith(_("(not activated)")): + InfoBar.instance.setSleepTimer(sleepTimer) + self.close(True) + self.close() + + def cancel(self, answer = None): + if answer is None: + if self["config"].isChanged(): + self.session.openWithCallback(self.cancel, MessageBox, _("Really close without saving settings?")) + else: + self.close() + elif answer: + for x in self["config"].list: + x[1].cancel() + self.close() + + def keyLeft(self): + ConfigListScreen.keyLeft(self) + self.createSetup() + + def keyRight(self): + ConfigListScreen.keyRight(self) + self.createSetup() + + def currentEventTime(self): + remaining = 0 + ref = self.session.nav.getCurrentlyPlayingServiceOrGroup() + if ref: + path = ref.getPath() + if path: # Movie + service = self.session.nav.getCurrentService() + seek = service and service.seek() + if seek: + length = seek.getLength() + position = seek.getPlayPosition() + if length and position: + remaining = length[1] - position[1] + if remaining > 0: + remaining = remaining / 90000 + else: # DVB + epg = eEPGCache.getInstance() + event = epg.lookupEventTime(ref, -1, 0) + if event: + now = int(time()) + start = event.getBeginTime() + duration = event.getDuration() + end = start + duration + remaining = end - now + return remaining + config.recording.margin_after.value * 60 diff --git a/lib/python/Screens/SoftwareUpdate.py b/lib/python/Screens/SoftwareUpdate.py new file mode 100644 index 0000000..8d250f9 --- /dev/null +++ b/lib/python/Screens/SoftwareUpdate.py @@ -0,0 +1,258 @@ +from Screens.ChoiceBox import ChoiceBox +from Screens.MessageBox import MessageBox +from Screens.Screen import Screen +from Screens.Standby import TryQuitMainloop +from Screens.About import CommitInfo +from Components.ActionMap import ActionMap, NumberActionMap +from Components.Ipkg import IpkgComponent +from Components.Sources.StaticText import StaticText +from Components.Slider import Slider +from Tools.BoundFunction import boundFunction +from enigma import eTimer, getBoxType, eDVBDB +from urllib import urlopen +import socket +import os +import re +import time + +class UpdatePlugin(Screen): + skin = """ + <screen name="UpdatePlugin" position="center,center" size="550,300"> + <widget name="activityslider" position="0,0" size="550,5" /> + <widget name="slider" position="0,150" size="550,30" /> + <widget source="package" render="Label" position="10,30" size="540,20" font="Regular;18" halign="center" valign="center" backgroundColor="#25062748" transparent="1" /> + <widget source="status" render="Label" position="10,180" size="540,100" font="Regular;20" halign="center" valign="center" backgroundColor="#25062748" transparent="1" /> + </screen>""" + + def __init__(self, session, *args): + Screen.__init__(self, session) + + self.sliderPackages = { "dreambox-dvb-modules": 1, "enigma2": 2, "tuxbox-image-info": 3 } + + self.setTitle(_("Software update")) + self.slider = Slider(0, 4) + self["slider"] = self.slider + self.activityslider = Slider(0, 100) + self["activityslider"] = self.activityslider + self.status = StaticText(_("Please wait...")) + self["status"] = self.status + self.package = StaticText(_("Package list update")) + self["package"] = self.package + self.oktext = _("Press OK on your remote control to continue.") + + self.packages = 0 + self.error = 0 + self.processed_packages = [] + self.total_packages = None + + self.channellist_only = 0 + self.channellist_name = '' + self.updating = False + self.ipkg = IpkgComponent() + self.ipkg.addCallback(self.ipkgCallback) + self.onClose.append(self.__close) + + self["actions"] = ActionMap(["WizardActions"], + { + "ok": self.exit, + "back": self.exit + }, -1) + + self.activity = 0 + self.activityTimer = eTimer() + self.activityTimer.callback.append(self.checkTraficLight) + self.activityTimer.callback.append(self.doActivityTimer) + self.activityTimer.start(100, True) + + def checkTraficLight(self): + + self.activityTimer.callback.remove(self.checkTraficLight) + self.activityTimer.start(100, False) + + currentTimeoutDefault = socket.getdefaulttimeout() + socket.setdefaulttimeout(3) + message = "" + picon = None + default = True + try: + # TODO: Use Twisted's URL fetcher, urlopen is evil. And it can + # run in parallel to the package update. + if getBoxType() in urlopen("http://openpli.org/status").read().split(','): + message = _("The current beta image might not be stable.\nFor more information see %s.") % ("www.openpli.org") + picon = MessageBox.TYPE_ERROR + default = False + except: + message = _("The status of the current beta image could not be checked because %s can not be reached.") % ("www.openpli.org") + picon = MessageBox.TYPE_ERROR + default = False + socket.setdefaulttimeout(currentTimeoutDefault) + if default: + self.startActualUpdate(True) + else: + message += "\n" + _("Do you want to update your receiver?") + self.session.openWithCallback(self.startActualUpdate, MessageBox, message, default = default, picon = picon) + + def getLatestImageTimestamp(self): + currentTimeoutDefault = socket.getdefaulttimeout() + socket.setdefaulttimeout(3) + latestImageTimestamp = "" + try: + # TODO: Use Twisted's URL fetcher, urlopen is evil. And it can + # run in parallel to the package update. + latestImageTimestamp = re.findall('<dd>(.*?)</dd>', urlopen("http://openpli.org/download/"+getBoxType()+"/").read())[0][:16] + latestImageTimestamp = time.strftime(_("%d-%b-%Y %-H:%M"), time.strptime(latestImageTimestamp, "%Y/%m/%d %H:%M")) + except: + pass + socket.setdefaulttimeout(currentTimeoutDefault) + return latestImageTimestamp + + def startActualUpdate(self,answer): + if answer: + self.updating = True + self.ipkg.startCmd(IpkgComponent.CMD_UPDATE) + else: + self.close() + + def doActivityTimer(self): + self.activity += 1 + if self.activity == 100: + self.activity = 0 + self.activityslider.setValue(self.activity) + + def showUpdateCompletedMessage(self): + self.setEndMessage(ngettext("Update completed, %d package was installed.", "Update completed, %d packages were installed.", self.packages) % self.packages) + + def ipkgCallback(self, event, param): + if event == IpkgComponent.EVENT_DOWNLOAD: + self.status.setText(_("Downloading")) + elif event == IpkgComponent.EVENT_UPGRADE: + if self.sliderPackages.has_key(param): + self.slider.setValue(self.sliderPackages[param]) + self.package.setText(param) + self.status.setText(_("Upgrading") + ": %s/%s" % (self.packages, self.total_packages)) + if not param in self.processed_packages: + self.processed_packages.append(param) + self.packages += 1 + elif event == IpkgComponent.EVENT_INSTALL: + self.package.setText(param) + self.status.setText(_("Installing")) + if not param in self.processed_packages: + self.processed_packages.append(param) + self.packages += 1 + elif event == IpkgComponent.EVENT_REMOVE: + self.package.setText(param) + self.status.setText(_("Removing")) + if not param in self.processed_packages: + self.processed_packages.append(param) + self.packages += 1 + elif event == IpkgComponent.EVENT_CONFIGURING: + self.package.setText(param) + self.status.setText(_("Configuring")) + elif event == IpkgComponent.EVENT_MODIFIED: + if config.plugins.softwaremanager.overwriteConfigFiles.value in ("N", "Y"): + self.ipkg.write(True and config.plugins.softwaremanager.overwriteConfigFiles.value) + else: + self.session.openWithCallback( + self.modificationCallback, + MessageBox, + _("A configuration file (%s) has been modified since it was installed.\nDo you want to keep your modifications?") % (param) + ) + elif event == IpkgComponent.EVENT_ERROR: + self.error += 1 + elif event == IpkgComponent.EVENT_DONE: + if self.updating: + self.updating = False + self.ipkg.startCmd(IpkgComponent.CMD_UPGRADE_LIST) + elif self.ipkg.currentCommand == IpkgComponent.CMD_UPGRADE_LIST: + self.total_packages = len(self.ipkg.getFetchedList()) + if self.total_packages: + latestImageTimestamp = self.getLatestImageTimestamp() + if latestImageTimestamp: + message = _("Do you want to update your receiver to %s?") % self.getLatestImageTimestamp() + "\n" + else: + message = _("Do you want to update your receiver?") + "\n" + message = message + "(" + (ngettext("%s updated package available", "%s updated packages available", self.total_packages) % self.total_packages) + ")" + choices = [(_("Update and reboot (recommended)"), "cold"), + (_("Update and ask to reboot"), "hot"), + (_("Update channel list only"), "channels"), + (_("Show latest commits on sourceforge"), "commits"), + (_("Cancel"), "")] + self.session.openWithCallback(self.startActualUpgrade, ChoiceBox, title=message, list=choices) + else: + self.session.openWithCallback(self.close, MessageBox, _("No updates available"), type=MessageBox.TYPE_INFO, timeout=10, close_on_any_key=True) + elif self.channellist_only > 0: + if self.channellist_only == 1: + self.setEndMessage(_("Could not find installed channel list.")) + elif self.channellist_only == 2: + self.slider.setValue(2) + self.ipkg.startCmd(IpkgComponent.CMD_REMOVE, {'package': self.channellist_name}) + self.channellist_only += 1 + elif self.channellist_only == 3: + self.slider.setValue(3) + self.ipkg.startCmd(IpkgComponent.CMD_INSTALL, {'package': self.channellist_name}) + self.channellist_only += 1 + elif self.channellist_only == 4: + self.showUpdateCompletedMessage() + eDVBDB.getInstance().reloadBouquets() + eDVBDB.getInstance().reloadServicelist() + elif self.error == 0: + self.showUpdateCompletedMessage() + else: + self.activityTimer.stop() + self.activityslider.setValue(0) + error = _("Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver.") + if self.packages == 0: + error = _("No updates available. Please try again later.") + if self.updating: + error = _("Update failed. Your receiver does not have a working internet connection.") + self.status.setText(_("Error") + " - " + error) + elif event == IpkgComponent.EVENT_LISTITEM: + if 'enigma2-plugin-settings-' in param[0] and self.channellist_only > 0: + self.channellist_name = param[0] + self.channellist_only = 2 + #print event, "-", param + pass + + def setEndMessage(self, txt): + self.slider.setValue(4) + self.activityTimer.stop() + self.activityslider.setValue(0) + self.package.setText(txt) + self.status.setText(self.oktext) + + def startActualUpgrade(self, answer): + if not answer or not answer[1]: + self.close() + return + if answer[1] == "cold": + self.session.open(TryQuitMainloop,retvalue=42) + self.close() + elif answer[1] == "channels": + self.channellist_only = 1 + self.slider.setValue(1) + self.ipkg.startCmd(IpkgComponent.CMD_LIST, args = {'installed_only': True}) + elif answer[1] == "commits": + self.session.openWithCallback(boundFunction(self.ipkgCallback, IpkgComponent.EVENT_DONE, None), CommitInfo) + else: + self.ipkg.startCmd(IpkgComponent.CMD_UPGRADE, args = {'test_only': False}) + + def modificationCallback(self, res): + self.ipkg.write(res and "N" or "Y") + + def exit(self): + if not self.ipkg.isRunning(): + if self.packages != 0 and self.error == 0 and self.channellist_only == 0: + self.session.openWithCallback(self.exitAnswer, MessageBox, _("Update completed. Do you want to reboot your receiver?")) + else: + self.close() + else: + if not self.updating: + self.close() + + def exitAnswer(self, result): + if result is not None and result: + self.session.open(TryQuitMainloop,retvalue=2) + self.close() + + def __close(self): + self.ipkg.removeCallback(self.ipkgCallback) diff --git a/lib/python/Screens/Standby.py b/lib/python/Screens/Standby.py new file mode 100644 index 0000000..6afad7a --- /dev/null +++ b/lib/python/Screens/Standby.py @@ -0,0 +1,248 @@ +from Screen import Screen +from Components.ActionMap import ActionMap +from Components.config import config +from Components.AVSwitch import AVSwitch +from Components.SystemInfo import SystemInfo +from Tools import Notifications +from GlobalActions import globalActionMap +import RecordTimer +from enigma import eDVBVolumecontrol, eTimer +from time import time, localtime + +inStandby = None + +class Standby(Screen): + def Power(self): + print "leave standby" + #set input to encoder + self.avswitch.setInput("ENCODER") + #restart last played service + #unmute adc + self.leaveMute() + #kill me + self.close(True) + + def setMute(self): + if (eDVBVolumecontrol.getInstance().isMuted()): + self.wasMuted = 1 + print "mute already active" + else: + self.wasMuted = 0 + eDVBVolumecontrol.getInstance().volumeToggleMute() + + def leaveMute(self): + if self.wasMuted == 0: + eDVBVolumecontrol.getInstance().volumeToggleMute() + + def __init__(self, session, StandbyCounterIncrease=True): + Screen.__init__(self, session) + self.avswitch = AVSwitch() + + print "enter standby" + + self["actions"] = ActionMap( [ "StandbyActions" ], + { + "power": self.Power, + "discrete_on": self.Power + }, -1) + + globalActionMap.setEnabled(False) + + self.StandbyCounterIncrease = StandbyCounterIncrease + + self.standbyTimeUnknownTimer = eTimer() + self.standbyTimeoutTimer = eTimer() + + #mute adc + self.setMute() + + self.paused_service = None + self.prev_running_service = None + + if self.session.current_dialog: + if self.session.current_dialog.ALLOW_SUSPEND == Screen.SUSPEND_STOPS: + if localtime(time()).tm_year > 1970 and self.session.nav.getCurrentlyPlayingServiceOrGroup(): + self.prev_running_service = self.session.nav.getCurrentlyPlayingServiceOrGroup() + self.session.nav.stopService() + else: + self.standbyTimeUnknownTimer.callback.append(self.stopService) + self.standbyTimeUnknownTimer.startLongTimer(60) + elif self.session.current_dialog.ALLOW_SUSPEND == Screen.SUSPEND_PAUSES: + self.paused_service = self.session.current_dialog + self.paused_service.pauseService() + if self.session.pipshown: + from Screens.InfoBar import InfoBar + InfoBar.instance and hasattr(InfoBar.instance, "showPiP") and InfoBar.instance.showPiP() + + #set input to vcr scart + if SystemInfo["ScartSwitch"]: + self.avswitch.setInput("SCART") + else: + self.avswitch.setInput("AUX") + + gotoShutdownTime = int(config.usage.standby_to_shutdown_timer.value) + if gotoShutdownTime: + self.standbyTimeoutTimer.callback.append(self.standbyTimeout) + self.standbyTimeoutTimer.startLongTimer(gotoShutdownTime) + + self.onFirstExecBegin.append(self.__onFirstExecBegin) + self.onClose.append(self.__onClose) + + def __onClose(self): + global inStandby + inStandby = None + self.standbyTimeUnknownTimer.stop() + self.standbyTimeoutTimer.stop() + if self.prev_running_service: + self.session.nav.playService(self.prev_running_service) + elif self.paused_service: + self.paused_service.unPauseService() + self.session.screen["Standby"].boolean = False + globalActionMap.setEnabled(True) + if RecordTimer.RecordTimerEntry.receiveRecordEvents: + RecordTimer.RecordTimerEntry.stopTryQuitMainloop() + + def __onFirstExecBegin(self): + global inStandby + inStandby = self + self.session.screen["Standby"].boolean = True + if self.StandbyCounterIncrease: + config.misc.standbyCounter.value += 1 + + def createSummary(self): + return StandbySummary + + def standbyTimeout(self): + if config.usage.standby_to_shutdown_timer_blocktime.value: + curtime = localtime(time()) + if curtime.tm_year > 1970: #check if the current time is valid + curtime = (curtime.tm_hour, curtime.tm_min, curtime.tm_sec) + begintime = tuple(config.usage.standby_to_shutdown_timer_blocktime_begin.value) + endtime = tuple(config.usage.standby_to_shutdown_timer_blocktime_end.value) + if begintime <= endtime and (curtime >= begintime and curtime < endtime) or begintime > endtime and (curtime >= begintime or curtime < endtime): + duration = (endtime[0]*3600 + endtime[1]*60) - (curtime[0]*3600 + curtime[1]*60 + curtime[2]) + if duration: + if duration < 0: + duration += 24*3600 + self.standbyTimeoutTimer.startLongTimer(duration) + return + if self.session.screen["TunerInfo"].tuner_use_mask: + self.standbyTimeoutTimer.startLongTimer(600) + else: + from RecordTimer import RecordTimerEntry + RecordTimerEntry.TryQuitMainloop() + + def stopService(self): + self.prev_running_service = self.session.nav.getCurrentlyPlayingServiceOrGroup() + self.session.nav.stopService() + +class StandbySummary(Screen): + skin = """ + <screen position="0,0" size="132,64"> + <widget source="global.CurrentTime" render="Label" position="0,0" size="132,64" font="Regular;40" halign="center"> + <convert type="ClockToText" /> + </widget> + <widget source="session.RecordState" render="FixedLabel" text=" " position="0,0" size="132,64" zPosition="1" > + <convert type="ConfigEntryTest">config.usage.blinking_display_clock_during_recording,True,CheckSourceBoolean</convert> + <convert type="ConditionalShowHide">Blink</convert> + </widget> + </screen>""" + +from enigma import quitMainloop, iRecordableService +from Screens.MessageBox import MessageBox +from time import time +from Components.Task import job_manager + +class QuitMainloopScreen(Screen): + + def __init__(self, session, retvalue=1): + self.skin = """<screen name="QuitMainloopScreen" position="fill" flags="wfNoBorder"> + <ePixmap pixmap="skin_default/icons/input_info.png" position="c-27,c-60" size="53,53" alphatest="on" /> + <widget name="text" position="center,c+5" size="720,100" font="Regular;22" halign="center" /> + </screen>""" + Screen.__init__(self, session) + from Components.Label import Label + text = { 1: _("Your receiver is shutting down"), + 2: _("Your receiver is rebooting"), + 3: _("The user interface of your receiver is restarting"), + 4: _("Your frontprocessor will be upgraded\nPlease wait until your receiver reboots\nThis may take a few minutes"), + 5: _("The user interface of your receiver is restarting\ndue to an error in mytest.py"), + 42: _("Unattended upgrade in progress\nPlease wait until your receiver reboots\nThis may take a few minutes") }.get(retvalue) + self["text"] = Label(text) + +inTryQuitMainloop = False + +class TryQuitMainloop(MessageBox): + def __init__(self, session, retvalue=1, timeout=-1, default_yes = False): + self.retval = retvalue + recordings = session.nav.getRecordings() + jobs = len(job_manager.getPendingJobs()) + self.connected = False + reason = "" + next_rec_time = -1 + if not recordings: + next_rec_time = session.nav.RecordTimer.getNextRecordingTime() + if recordings or (next_rec_time > 0 and (next_rec_time - time()) < 360): + reason = _("Recording(s) are in progress or coming up in few seconds!") + '\n' + if jobs: + if jobs == 1: + job = job_manager.getPendingJobs()[0] + reason += "%s: %s (%d%%)\n" % (job.getStatustext(), job.name, int(100*job.progress/float(job.end))) + else: + reason += (ngettext("%d job is running in the background!", "%d jobs are running in the background!", jobs) % jobs) + '\n' + if reason: + text = { 1: _("Really shutdown now?"), + 2: _("Really reboot now?"), + 3: _("Really restart now?"), + 4: _("Really upgrade the frontprocessor and reboot now?"), + 42: _("Really upgrade your settop box and reboot now?") }.get(retvalue) + if text: + MessageBox.__init__(self, session, reason+text, type = MessageBox.TYPE_YESNO, timeout = timeout, default = default_yes) + self.skinName = "MessageBoxSimple" + session.nav.record_event.append(self.getRecordEvent) + self.connected = True + self.onShow.append(self.__onShow) + self.onHide.append(self.__onHide) + return + self.skin = """<screen position="0,0" size="0,0"/>""" + Screen.__init__(self, session) + self.close(True) + + def getRecordEvent(self, recservice, event): + if event == iRecordableService.evEnd: + recordings = self.session.nav.getRecordings() + if not recordings: # no more recordings exist + rec_time = self.session.nav.RecordTimer.getNextRecordingTime() + if rec_time > 0 and (rec_time - time()) < 360: + self.initTimeout(360) # wait for next starting timer + self.startTimer() + else: + self.close(True) # immediate shutdown + elif event == iRecordableService.evStart: + self.stopTimer() + + def close(self, value): + if self.connected: + self.conntected=False + self.session.nav.record_event.remove(self.getRecordEvent) + if value: + self.hide() + if self.retval == 1: + config.misc.DeepStandby.value = True + elif not inStandby: + config.misc.RestartUI.value = True + config.misc.RestartUI.save() + self.session.nav.stopService() + self.quitScreen = self.session.instantiateDialog(QuitMainloopScreen,retvalue=self.retval) + self.quitScreen.show() + quitMainloop(self.retval) + else: + MessageBox.close(self, True) + + def __onShow(self): + global inTryQuitMainloop + inTryQuitMainloop = True + + def __onHide(self): + global inTryQuitMainloop + inTryQuitMainloop = False diff --git a/lib/python/Screens/StartWizard.py b/lib/python/Screens/StartWizard.py new file mode 100644 index 0000000..cb0bc05 --- /dev/null +++ b/lib/python/Screens/StartWizard.py @@ -0,0 +1,34 @@ +from Wizard import wizardManager +from Screens.WizardLanguage import WizardLanguage +from Screens.Rc import Rc +from Tools.HardwareInfo import HardwareInfo + +from Components.Pixmap import Pixmap, MovingPixmap, MultiPixmap +from Components.config import config, ConfigBoolean, configfile, ConfigSubsection + +from LanguageSelection import LanguageWizard + +config.misc.firstrun = ConfigBoolean(default = True) +config.misc.languageselected = ConfigBoolean(default = True) + +class StartWizard(WizardLanguage, Rc): + def __init__(self, session, silent = True, showSteps = False, neededTag = None): + self.xmlfile = ["startwizard.xml"] + WizardLanguage.__init__(self, session, showSteps = False) + Rc.__init__(self) + self["wizard"] = Pixmap() + + def markDone(self): + # setup remote control, all stb have same settings except dm8000 which uses a different settings + if HardwareInfo().get_device_name() == 'dm8000': + config.misc.rcused.value = 0 + else: + config.misc.rcused.value = 1 + config.misc.rcused.save() + + config.misc.firstrun.value = 0 + config.misc.firstrun.save() + configfile.save() + +wizardManager.registerWizard(LanguageWizard, config.misc.languageselected.value, priority = 5) +wizardManager.registerWizard(StartWizard, config.misc.firstrun.value, priority = 20) diff --git a/lib/python/Screens/SubservicesQuickzap.py b/lib/python/Screens/SubservicesQuickzap.py new file mode 100644 index 0000000..e38933a --- /dev/null +++ b/lib/python/Screens/SubservicesQuickzap.py @@ -0,0 +1,142 @@ +from Screens.Screen import Screen +from Components.ActionMap import NumberActionMap +from Components.Label import Label + +from Screens.ChoiceBox import ChoiceBox +from Screens.MessageBox import MessageBox +from InfoBarGenerics import InfoBarShowHide, InfoBarMenu, InfoBarInstantRecord, InfoBarTimeshift, InfoBarSeek, InfoBarTimeshiftState, InfoBarExtensions, InfoBarSubtitleSupport, InfoBarAudioSelection +from Components.ServiceEventTracker import InfoBarBase + +from enigma import eTimer + +class SubservicesQuickzap(InfoBarBase, InfoBarShowHide, InfoBarMenu, \ + InfoBarInstantRecord, InfoBarSeek, InfoBarTimeshift, \ + InfoBarTimeshiftState, InfoBarExtensions, InfoBarSubtitleSupport, \ + InfoBarAudioSelection, Screen): + + def __init__(self, session, subservices): + Screen.__init__(self, session) + for x in InfoBarBase, InfoBarShowHide, InfoBarMenu, \ + InfoBarInstantRecord, InfoBarSeek, InfoBarTimeshift, \ + InfoBarTimeshiftState, InfoBarSubtitleSupport, \ + InfoBarExtensions, InfoBarAudioSelection: + x.__init__(self) + + self.restoreService = self.session.nav.getCurrentlyPlayingServiceOrGroup() + + self["CurrentSubserviceNumber"] = Label("") + self.currentSubserviceNumberLabel = self["CurrentSubserviceNumber"] + + self.updateSubservices() + self.currentlyPlayingSubservice = 0 + + self.timer = eTimer() + self.timer.callback.append(self.playSubservice) + self.onLayoutFinish.append(self.onLayoutFinished) + + self["actions"] = NumberActionMap( [ "InfobarSubserviceQuickzapActions", "NumberActions", "DirectionActions", "ColorActions" ], + { + "up": self.showSelection, + "down": self.showSelection, + "right": self.nextSubservice, + "left": self.previousSubservice, + "green": self.showSelection, + "exit": self.quitQuestion, + "1": self.keyNumberGlobal, + "2": self.keyNumberGlobal, + "3": self.keyNumberGlobal, + "4": self.keyNumberGlobal, + "5": self.keyNumberGlobal, + "6": self.keyNumberGlobal, + "7": self.keyNumberGlobal, + "8": self.keyNumberGlobal, + "9": self.keyNumberGlobal, + "0": self.keyNumberGlobal + }, 0) + + self.onClose.append(self.__onClose) + + def __onClose(self): + self.session.nav.playService(self.restoreService, False) + + def onLayoutFinished(self): + self.timer.start(0,True) + + def updateSubservices(self): + self.service = self.session.nav.getCurrentService() + self.subservices = self.service and self.service.subServices() + self.n = self.subservices and self.subservices.getNumberOfSubservices() + + def nextSubservice(self): + self.updateSubservices() + if self.n: + if self.currentlyPlayingSubservice >= self.n - 1: + self.playSubservice(0) + else: + self.playSubservice(self.currentlyPlayingSubservice + 1) + + def previousSubservice(self): + self.updateSubservices() + if self.n: + if self.currentlyPlayingSubservice > self.n: + self.currentlyPlayingSubservice = self.n + if self.currentlyPlayingSubservice == 0: + self.playSubservice(self.n - 1) + else: + self.playSubservice(self.currentlyPlayingSubservice - 1) + + def getSubserviceIndex(self, service): + self.updateSubservices() + if self.n is None: + return -1 + for x in range(self.n): + if service == self.subservices.getSubservice(x): + return x + + def keyNumberGlobal(self, number): + print number, "pressed" + self.updateSubservices() + if number == 0: + self.playSubservice(self.lastservice) + elif self.n is not None and number <= self.n - 1: + self.playSubservice(number) + + def showSelection(self): + self.updateSubservices() + tlist = [] + n = self.n or 0 + if n: + idx = 0 + while idx < n: + i = self.subservices.getSubservice(idx) + tlist.append((i.getName(), idx)) + idx += 1 + + keys = [ "", "1", "2", "3", "4", "5", "6", "7", "8", "9" ] + [""] * n + self.session.openWithCallback(self.subserviceSelected, ChoiceBox, title=_("Please select a subservice..."), list = tlist, selection = self.currentlyPlayingSubservice, keys = keys) + + def subserviceSelected(self, service): + print "playing subservice number", service + if service is not None: + self.playSubservice(service[1]) + + def keyOK(self): + pass + + def quitQuestion(self): + self.session.openWithCallback(self.quit, MessageBox, _("Really exit the subservices quickzap?")) + + def quit(self, answer): + if answer: + self.close() + + def playSubservice(self, number = 0): + newservice = self.subservices.getSubservice(number) + if newservice.valid(): + del self.subservices + del self.service + self.lastservice = self.currentlyPlayingSubservice + self.session.nav.playService(newservice, False) + self.currentlyPlayingSubservice = number + self.currentSubserviceNumberLabel.setText(str(number)) + self.doShow() diff --git a/lib/python/Screens/SubtitleDisplay.py b/lib/python/Screens/SubtitleDisplay.py new file mode 100644 index 0000000..13ece59 --- /dev/null +++ b/lib/python/Screens/SubtitleDisplay.py @@ -0,0 +1,6 @@ +from Screens.Screen import Screen + +class SubtitleDisplay(Screen): + pass + + # not really much to do... diff --git a/lib/python/Screens/TaskView.py b/lib/python/Screens/TaskView.py new file mode 100644 index 0000000..1c9e228 --- /dev/null +++ b/lib/python/Screens/TaskView.py @@ -0,0 +1,150 @@ +from Screen import Screen +from Components.ConfigList import ConfigListScreen +from Components.config import config, ConfigSubsection, ConfigSelection, getConfigListEntry +from Components.SystemInfo import SystemInfo +from Components.Task import job_manager +from InfoBarGenerics import InfoBarNotifications +import Screens.Standby +from Tools import Notifications + +class JobView(InfoBarNotifications, Screen, ConfigListScreen): + def __init__(self, session, job, parent=None, cancelable = True, backgroundable = True, afterEventChangeable = True): + from Components.Sources.StaticText import StaticText + from Components.Sources.Progress import Progress + from Components.Sources.Boolean import Boolean + from Components.ActionMap import ActionMap + Screen.__init__(self, session, parent) + InfoBarNotifications.__init__(self) + ConfigListScreen.__init__(self, []) + self.parent = parent + self.job = job + + self["job_name"] = StaticText(job.name) + self["job_progress"] = Progress() + self["job_task"] = StaticText() + self["summary_job_name"] = StaticText(job.name) + self["summary_job_progress"] = Progress() + self["summary_job_task"] = StaticText() + self["job_status"] = StaticText() + self["finished"] = Boolean() + self["cancelable"] = Boolean(cancelable) + self["backgroundable"] = Boolean(backgroundable) + + self["key_blue"] = StaticText(_("Background")) + + self.onShow.append(self.windowShow) + self.onHide.append(self.windowHide) + + self["setupActions"] = ActionMap(["ColorActions", "SetupActions"], + { + "green": self.ok, + "red": self.abort, + "blue": self.background, + "cancel": self.ok, + "ok": self.ok, + }, -2) + + self.settings = ConfigSubsection() + if SystemInfo["DeepstandbySupport"]: + shutdownString = _("go to deep standby") + else: + shutdownString = _("shut down") + self.settings.afterEvent = ConfigSelection(choices = [("nothing", _("do nothing")), ("close", _("Close")), ("standby", _("go to standby")), ("deepstandby", shutdownString)], default = self.job.afterEvent or "nothing") + self.job.afterEvent = self.settings.afterEvent.getValue() + self.afterEventChangeable = afterEventChangeable + self.setupList() + self.state_changed() + + def setupList(self): + if self.afterEventChangeable: + self["config"].setList( [ getConfigListEntry(_("After event"), self.settings.afterEvent) ]) + else: + self["config"].hide() + self.job.afterEvent = self.settings.afterEvent.getValue() + + def keyLeft(self): + ConfigListScreen.keyLeft(self) + self.setupList() + + def keyRight(self): + ConfigListScreen.keyRight(self) + self.setupList() + + def windowShow(self): + job_manager.visible = True + self.job.state_changed.append(self.state_changed) + + def windowHide(self): + job_manager.visible = False + if len(self.job.state_changed) > 0: + self.job.state_changed.remove(self.state_changed) + + def state_changed(self): + j = self.job + self["job_progress"].range = j.end + self["summary_job_progress"].range = j.end + self["job_progress"].value = j.progress + self["summary_job_progress"].value = j.progress + #print "JobView::state_changed:", j.end, j.progress + self["job_status"].text = j.getStatustext() + if j.status == j.IN_PROGRESS: + self["job_task"].text = j.tasks[j.current_task].name + self["summary_job_task"].text = j.tasks[j.current_task].name + else: + self["job_task"].text = "" + self["summary_job_task"].text = j.getStatustext() + if j.status in (j.FINISHED, j.FAILED): + self.performAfterEvent() + self["backgroundable"].boolean = False + if j.status == j.FINISHED: + self["finished"].boolean = True + self["cancelable"].boolean = False + elif j.status == j.FAILED: + self["cancelable"].boolean = True + + def background(self): + if self["backgroundable"].boolean == True: + self.close(True) + + def ok(self): + if self.job.status in (self.job.FINISHED, self.job.FAILED): + self.close(False) + else: + self.background() + + def abort(self): + if self.job.status == self.job.NOT_STARTED: + job_manager.active_jobs.remove(self.job) + self.close(False) + elif self.job.status == self.job.IN_PROGRESS and self["cancelable"].boolean == True: + self.job.cancel() + else: + self.close(False) + + def performAfterEvent(self): + self["config"].hide() + if self.settings.afterEvent.getValue() == "nothing": + return + elif self.settings.afterEvent.getValue() == "close" and self.job.status == self.job.FINISHED: + self.close(False) + from Screens.MessageBox import MessageBox + if self.settings.afterEvent.getValue() == "deepstandby": + if not Screens.Standby.inTryQuitMainloop: + Notifications.AddNotificationWithCallback(self.sendTryQuitMainloopNotification, MessageBox, _("A sleep timer wants to shut down\nyour receiver. Shutdown now?"), timeout = 20) + elif self.settings.afterEvent.getValue() == "standby": + if not Screens.Standby.inStandby: + Notifications.AddNotificationWithCallback(self.sendStandbyNotification, MessageBox, _("A sleep timer wants to set your\nreceiver to standby. Do that now?"), timeout = 20) + + def checkNotifications(self): + InfoBarNotifications.checkNotifications(self) + if Notifications.notifications == []: + if self.settings.afterEvent.getValue() == "close" and self.job.status == self.job.FAILED: + self.close(False) + + def sendStandbyNotification(self, answer): + if answer: + Notifications.AddNotification(Screens.Standby.Standby) + + def sendTryQuitMainloopNotification(self, answer): + if answer: + Notifications.AddNotification(Screens.Standby.TryQuitMainloop, 1) diff --git a/lib/python/Screens/TextBox.py b/lib/python/Screens/TextBox.py new file mode 100644 index 0000000..30f3191 --- /dev/null +++ b/lib/python/Screens/TextBox.py @@ -0,0 +1,26 @@ +from Screens.Screen import Screen + +from Components.ActionMap import ActionMap +from Components.Sources.StaticText import StaticText +from Components.ScrollLabel import ScrollLabel + +class TextBox(Screen): + def __init__(self, session, text = ""): + Screen.__init__(self, session) + + self.text = text + self["text"] = ScrollLabel(self.text) + + self["actions"] = ActionMap(["OkCancelActions", "DirectionActions"], + { + "cancel": self.cancel, + "ok": self.ok, + "up": self["text"].pageUp, + "down": self["text"].pageDown, + }, -1) + + def ok(self): + self.close() + + def cancel(self): + self.close() diff --git a/lib/python/Screens/TimeDateInput.py b/lib/python/Screens/TimeDateInput.py new file mode 100644 index 0000000..56ccae9 --- /dev/null +++ b/lib/python/Screens/TimeDateInput.py @@ -0,0 +1,73 @@ +from Screen import Screen +from Components.config import ConfigClock, ConfigDateTime, getConfigListEntry +from Components.ActionMap import NumberActionMap +from Components.ConfigList import ConfigListScreen +from Components.Label import Label +from Components.Pixmap import Pixmap +import time +import datetime + +class TimeDateInput(Screen, ConfigListScreen): + def __init__(self, session, config_time=None, config_date=None): + Screen.__init__(self, session) + self["oktext"] = Label(_("OK")) + self["canceltext"] = Label(_("Cancel")) + self["ok"] = Pixmap() + self["cancel"] = Pixmap() + + self.createConfig(config_date, config_time) + + self["actions"] = NumberActionMap(["SetupActions"], + { + "ok": self.keySelect, + "save": self.keyGo, + "cancel": self.keyCancel, + }, -2) + + self.list = [] + ConfigListScreen.__init__(self, self.list) + self.createSetup(self["config"]) + + def createConfig(self, conf_date, conf_time): + self.save_mask = 0 + if conf_time: + self.save_mask |= 1 + else: + conf_time = ConfigClock(default = time.time()), + if conf_date: + self.save_mask |= 2 + else: + conf_date = ConfigDateTime(default = time.time(), formatstring = _("%d.%B %Y"), increment = 86400) + self.timeinput_date = conf_date + self.timeinput_time = conf_time + + def createSetup(self, configlist): + self.list = [ + getConfigListEntry(_("Date"), self.timeinput_date), + getConfigListEntry(_("Time"), self.timeinput_time) + ] + configlist.list = self.list + configlist.l.setList(self.list) + + def keySelect(self): + self.keyGo() + + def getTimestamp(self, date, mytime): + d = time.localtime(date) + dt = datetime.datetime(d.tm_year, d.tm_mon, d.tm_mday, mytime[0], mytime[1]) + return int(time.mktime(dt.timetuple())) + + def keyGo(self): + time = self.getTimestamp(self.timeinput_date.value, self.timeinput_time.value) + if self.save_mask & 1: + self.timeinput_time.save() + if self.save_mask & 2: + self.timeinput_date.save() + self.close((True, time)) + + def keyCancel(self): + if self.save_mask & 1: + self.timeinput_time.cancel() + if self.save_mask & 2: + self.timeinput_date.cancel() + self.close((False,)) diff --git a/lib/python/Screens/TimerEdit.py b/lib/python/Screens/TimerEdit.py new file mode 100644 index 0000000..5d21e8c --- /dev/null +++ b/lib/python/Screens/TimerEdit.py @@ -0,0 +1,459 @@ +from Components.ActionMap import ActionMap +from Components.Button import Button +from Components.config import config +from Components.MenuList import MenuList +from Components.TimerList import TimerList +from Components.TimerSanityCheck import TimerSanityCheck +from Components.UsageConfig import preferredTimerPath +from RecordTimer import RecordTimerEntry, parseEvent, AFTEREVENT +from Screen import Screen +from Screens.ChoiceBox import ChoiceBox +from Screens.MessageBox import MessageBox +from ServiceReference import ServiceReference +from TimerEntry import TimerEntry, TimerLog +from Tools.BoundFunction import boundFunction +from time import time +from timer import TimerEntry as RealTimerEntry + +class TimerEditList(Screen): + EMPTY = 0 + ENABLE = 1 + DISABLE = 2 + CLEANUP = 3 + DELETE = 4 + + def __init__(self, session): + Screen.__init__(self, session) + + list = [ ] + self.list = list + self.fillTimerList() + + self["timerlist"] = TimerList(list) + + self.key_red_choice = self.EMPTY + self.key_yellow_choice = self.EMPTY + self.key_blue_choice = self.EMPTY + + self["key_red"] = Button(" ") + self["key_green"] = Button(_("Add")) + self["key_yellow"] = Button(" ") + self["key_blue"] = Button(" ") + + print "key_red_choice:",self.key_red_choice + + self["actions"] = ActionMap(["OkCancelActions", "DirectionActions", "ShortcutActions", "TimerEditActions"], + { + "ok": self.openEdit, + "cancel": self.leave, + "green": self.addCurrentTimer, + "log": self.showLog, + "left": self.left, + "right": self.right, + "up": self.up, + "down": self.down + }, -1) + self.setTitle(_("Timer overview")) + self.session.nav.RecordTimer.on_state_change.append(self.onStateChange) + self.onShown.append(self.updateState) + + def up(self): + self["timerlist"].instance.moveSelection(self["timerlist"].instance.moveUp) + self.updateState() + + def down(self): + self["timerlist"].instance.moveSelection(self["timerlist"].instance.moveDown) + self.updateState() + + def left(self): + self["timerlist"].instance.moveSelection(self["timerlist"].instance.pageUp) + self.updateState() + + def right(self): + self["timerlist"].instance.moveSelection(self["timerlist"].instance.pageDown) + self.updateState() + + def toggleDisabledState(self): + cur=self["timerlist"].getCurrent() + if cur: + t = cur + if t.disabled: + print "try to ENABLE timer" + t.enable() + timersanitycheck = TimerSanityCheck(self.session.nav.RecordTimer.timer_list, cur) + if not timersanitycheck.check(): + t.disable() + print "Sanity check failed" + simulTimerList = timersanitycheck.getSimulTimerList() + if simulTimerList is not None: + self.session.openWithCallback(self.finishedEdit, TimerSanityConflict, simulTimerList) + else: + print "Sanity check passed" + if timersanitycheck.doubleCheck(): + t.disable() + else: + if t.isRunning(): + if t.repeated: + list = ( + (_("Stop current event but not coming events"), "stoponlycurrent"), + (_("Stop current event and disable coming events"), "stopall"), + (_("Don't stop current event but disable coming events"), "stoponlycoming") + ) + self.session.openWithCallback(boundFunction(self.runningEventCallback, t), ChoiceBox, title=_("Repeating event currently recording... What do you want to do?"), list = list) + else: + t.disable() + self.session.nav.RecordTimer.timeChanged(t) + self.refill() + self.updateState() + + def runningEventCallback(self, t, result): + if result is not None: + if result[1] == "stoponlycurrent" or result[1] == "stopall": + t.enable() + t.processRepeated(findRunningEvent = False) + self.session.nav.RecordTimer.doActivate(t) + if result[1] == "stoponlycoming" or result[1] == "stopall": + t.disable() + self.session.nav.RecordTimer.timeChanged(t) + self.refill() + self.updateState() + + def removeAction(self, descr): + actions = self["actions"].actions + if descr in actions: + del actions[descr] + + def updateState(self): + cur = self["timerlist"].getCurrent() + if cur: + if self.key_red_choice != self.DELETE: + self["actions"].actions.update({"red":self.removeTimerQuestion}) + self["key_red"].setText(_("Delete")) + self.key_red_choice = self.DELETE + + if cur.disabled and (self.key_yellow_choice != self.ENABLE): + self["actions"].actions.update({"yellow":self.toggleDisabledState}) + self["key_yellow"].setText(_("Enable")) + self.key_yellow_choice = self.ENABLE + elif cur.isRunning() and not cur.repeated and (self.key_yellow_choice != self.EMPTY): + self.removeAction("yellow") + self["key_yellow"].setText(" ") + self.key_yellow_choice = self.EMPTY + elif ((not cur.isRunning())or cur.repeated ) and (not cur.disabled) and (self.key_yellow_choice != self.DISABLE): + self["actions"].actions.update({"yellow":self.toggleDisabledState}) + self["key_yellow"].setText(_("Disable")) + self.key_yellow_choice = self.DISABLE + else: + if self.key_red_choice != self.EMPTY: + self.removeAction("red") + self["key_red"].setText(" ") + self.key_red_choice = self.EMPTY + if self.key_yellow_choice != self.EMPTY: + self.removeAction("yellow") + self["key_yellow"].setText(" ") + self.key_yellow_choice = self.EMPTY + + showCleanup = True + for x in self.list: + if (not x[0].disabled) and (x[1] == True): + break + else: + showCleanup = False + + if showCleanup and (self.key_blue_choice != self.CLEANUP): + self["actions"].actions.update({"blue":self.cleanupQuestion}) + self["key_blue"].setText(_("Cleanup")) + self.key_blue_choice = self.CLEANUP + elif (not showCleanup) and (self.key_blue_choice != self.EMPTY): + self.removeAction("blue") + self["key_blue"].setText(" ") + self.key_blue_choice = self.EMPTY + + def fillTimerList(self): + #helper function to move finished timers to end of list + def eol_compare(x, y): + if x[0].state != y[0].state and x[0].state == RealTimerEntry.StateEnded or y[0].state == RealTimerEntry.StateEnded: + return cmp(x[0].state, y[0].state) + return cmp(x[0].begin, y[0].begin) + + list = self.list + del list[:] + list.extend([(timer, False) for timer in self.session.nav.RecordTimer.timer_list]) + list.extend([(timer, True) for timer in self.session.nav.RecordTimer.processed_timers]) + if config.usage.timerlist_finished_timer_position.index: #end of list + list.sort(cmp = eol_compare) + else: + list.sort(key = lambda x: x[0].begin) + + def showLog(self): + cur=self["timerlist"].getCurrent() + if cur: + self.session.openWithCallback(self.finishedEdit, TimerLog, cur) + + def openEdit(self): + cur=self["timerlist"].getCurrent() + if cur: + self.session.openWithCallback(self.finishedEdit, TimerEntry, cur) + + def cleanupQuestion(self): + self.session.openWithCallback(self.cleanupTimer, MessageBox, _("Really delete done timers?")) + + def cleanupTimer(self, delete): + if delete: + self.session.nav.RecordTimer.cleanup() + self.refill() + self.updateState() + + def removeTimerQuestion(self): + cur = self["timerlist"].getCurrent() + if not cur: + return + + self.session.openWithCallback(self.removeTimer, MessageBox, _("Do you really want to delete %s?") % (cur.name)) + + def removeTimer(self, result): + if not result: + return + list = self["timerlist"] + cur = list.getCurrent() + if cur: + timer = cur + timer.afterEvent = AFTEREVENT.NONE + self.session.nav.RecordTimer.removeEntry(timer) + self.refill() + self.updateState() + + + def refill(self): + oldsize = len(self.list) + self.fillTimerList() + lst = self["timerlist"] + newsize = len(self.list) + if oldsize and oldsize != newsize: + idx = lst.getCurrentIndex() + lst.entryRemoved(idx) + else: + lst.invalidate() + + def addCurrentTimer(self): + event = None + service = self.session.nav.getCurrentService() + if service is not None: + info = service.info() + if info is not None: + event = info.getEvent(0) + + # FIXME only works if already playing a service + serviceref = ServiceReference(self.session.nav.getCurrentlyPlayingServiceOrGroup()) + + if event is None: + data = (int(time()), int(time() + 60), "", "", None) + else: + data = parseEvent(event, description = False) + + self.addTimer(RecordTimerEntry(serviceref, checkOldTimers = True, dirname = preferredTimerPath(), *data)) + + def addTimer(self, timer): + self.session.openWithCallback(self.finishedAdd, TimerEntry, timer) + + + def finishedEdit(self, answer): + print "finished edit" + + if answer[0]: + print "Edited timer" + entry = answer[1] + timersanitycheck = TimerSanityCheck(self.session.nav.RecordTimer.timer_list, entry) + success = False + if not timersanitycheck.check(): + simulTimerList = timersanitycheck.getSimulTimerList() + if simulTimerList is not None: + for x in simulTimerList: + if x.setAutoincreaseEnd(entry): + self.session.nav.RecordTimer.timeChanged(x) + if not timersanitycheck.check(): + simulTimerList = timersanitycheck.getSimulTimerList() + if simulTimerList is not None: + self.session.openWithCallback(self.finishedEdit, TimerSanityConflict, timersanitycheck.getSimulTimerList()) + else: + success = True + else: + success = True + if success: + print "Sanity check passed" + self.session.nav.RecordTimer.timeChanged(entry) + + self.fillTimerList() + self.updateState() + else: + print "Timeredit aborted" + + def finishedAdd(self, answer): + print "finished add" + if answer[0]: + entry = answer[1] + simulTimerList = self.session.nav.RecordTimer.record(entry) + if simulTimerList is not None: + for x in simulTimerList: + if x.setAutoincreaseEnd(entry): + self.session.nav.RecordTimer.timeChanged(x) + simulTimerList = self.session.nav.RecordTimer.record(entry) + if simulTimerList is not None: + self.session.openWithCallback(self.finishSanityCorrection, TimerSanityConflict, simulTimerList) + self.fillTimerList() + self.updateState() + else: + print "Timeredit aborted" + + def finishSanityCorrection(self, answer): + self.finishedAdd(answer) + + def leave(self): + self.session.nav.RecordTimer.on_state_change.remove(self.onStateChange) + self.close() + + def onStateChange(self, entry): + self.refill() + self.updateState() + +class TimerSanityConflict(Screen): + EMPTY = 0 + ENABLE = 1 + DISABLE = 2 + EDIT = 3 + + def __init__(self, session, timer): + Screen.__init__(self, session) + self.timer = timer + print "TimerSanityConflict" + + self["timer1"] = TimerList(self.getTimerList(timer[0])) + self.list = [] + self.list2 = [] + count = 0 + for x in timer: + if count != 0: + self.list.append((_("Conflicting timer") + " " + str(count), x)) + self.list2.append((timer[count], False)) + count += 1 + if count == 1: + self.list.append((_("Channel not in services list"))) + + self["list"] = MenuList(self.list) + self["timer2"] = TimerList(self.list2) + + self["key_red"] = Button(_("Edit")) + self["key_green"] = Button(" ") + self["key_yellow"] = Button(" ") + self["key_blue"] = Button(" ") + + self.key_green_choice = self.EMPTY + self.key_yellow_choice = self.EMPTY + self.key_blue_choice = self.EMPTY + + self["actions"] = ActionMap(["OkCancelActions", "DirectionActions", "ShortcutActions", "TimerEditActions"], + { + "ok": self.leave_ok, + "cancel": self.leave_cancel, + "red": self.editTimer1, + "up": self.up, + "down": self.down + }, -1) + self.setTitle(_("Timer sanity error")) + self.onShown.append(self.updateState) + + def getTimerList(self, timer): + return [(timer, False)] + + def editTimer1(self): + self.session.openWithCallback(self.finishedEdit, TimerEntry, self["timer1"].getCurrent()) + + def toggleTimer1(self): + if self.timer[0].disabled: + self.timer[0].disabled = False + self.session.nav.RecordTimer.timeChanged(self.timer[0]) + else: + if not self.timer[0].isRunning(): + self.timer[0].disabled = True + self.session.nav.RecordTimer.timeChanged(self.timer[0]) + self.finishedEdit((True, self.timer[0])) + + def editTimer2(self): + self.session.openWithCallback(self.finishedEdit, TimerEntry, self["timer2"].getCurrent()) + + def toggleTimer2(self): + x = self["list"].getSelectedIndex() + 1 # the first is the new timer so we do +1 here + if self.timer[x].disabled: + self.timer[x].disabled = False + self.session.nav.RecordTimer.timeChanged(self.timer[x]) + elif not self.timer[x].isRunning(): + self.timer[x].disabled = True + self.session.nav.RecordTimer.timeChanged(self.timer[x]) + self.finishedEdit((True, self.timer[0])) + + def finishedEdit(self, answer): + self.leave_ok() + + def leave_ok(self): + self.close((True, self.timer[0])) + + def leave_cancel(self): + self.close((False, self.timer[0])) + + def up(self): + self["list"].instance.moveSelection(self["list"].instance.moveUp) + self["timer2"].moveToIndex(self["list"].getSelectedIndex()) + + def down(self): + self["list"].instance.moveSelection(self["list"].instance.moveDown) + self["timer2"].moveToIndex(self["list"].getSelectedIndex()) + + def removeAction(self, descr): + actions = self["actions"].actions + if descr in actions: + del actions[descr] + + def updateState(self): + if self.timer[0] is not None: + if self.timer[0].disabled and self.key_green_choice != self.ENABLE: + self["actions"].actions.update({"green":self.toggleTimer1}) + self["key_green"].setText(_("Enable")) + self.key_green_choice = self.ENABLE + elif self.timer[0].isRunning() and not self.timer[0].repeated and self.key_green_choice != self.EMPTY: + self.removeAction("green") + self["key_green"].setText(" ") + self.key_green_choice = self.EMPTY + elif (not self.timer[0].isRunning() or self.timer[0].repeated ) and self.key_green_choice != self.DISABLE: + self["actions"].actions.update({"green":self.toggleTimer1}) + self["key_green"].setText(_("Disable")) + self.key_green_choice = self.DISABLE + + if len(self.timer) > 1: + x = self["list"].getSelectedIndex() + if self.timer[x] is not None: + if self.key_yellow_choice == self.EMPTY: + self["actions"].actions.update({"yellow":self.editTimer2}) + self["key_yellow"].setText(_("Edit")) + self.key_yellow_choice = self.EDIT + if self.timer[x].disabled and self.key_blue_choice != self.ENABLE: + self["actions"].actions.update({"blue":self.toggleTimer2}) + self["key_blue"].setText(_("Enable")) + self.key_blue_choice = self.ENABLE + elif self.timer[x].isRunning() and not self.timer[x].repeated and self.key_blue_choice != self.EMPTY: + self.removeAction("blue") + self["key_blue"].setText(" ") + self.key_blue_choice = self.EMPTY + elif (not self.timer[x].isRunning() or self.timer[x].repeated ) and self.key_blue_choice != self.DISABLE: + self["actions"].actions.update({"blue":self.toggleTimer2}) + self["key_blue"].setText(_("Disable")) + self.key_blue_choice = self.DISABLE + else: +#FIXME.... this doesnt hide the buttons self.... just the text + if self.key_yellow_choice != self.EMPTY: + self.removeAction("yellow") + self["key_yellow"].setText(" ") + self.key_yellow_choice = self.EMPTY + if self.key_blue_choice != self.EMPTY: + self.removeAction("blue") + self["key_blue"].setText(" ") + self.key_blue_choice = self.EMPTY diff --git a/lib/python/Screens/TimerEntry.py b/lib/python/Screens/TimerEntry.py new file mode 100644 index 0000000..c0a5d99 --- /dev/null +++ b/lib/python/Screens/TimerEntry.py @@ -0,0 +1,539 @@ +from Screen import Screen +import ChannelSelection +from ServiceReference import ServiceReference +from Components.config import config, ConfigSelection, ConfigText, ConfigSubList, ConfigDateTime, ConfigClock, ConfigYesNo, getConfigListEntry +from Components.ActionMap import NumberActionMap +from Components.ConfigList import ConfigListScreen +from Components.MenuList import MenuList +from Components.Button import Button +from Components.Label import Label +from Components.Pixmap import Pixmap +from Components.SystemInfo import SystemInfo +from Components.UsageConfig import defaultMoviePath +from Screens.MovieSelection import getPreferredTagEditor +from Screens.LocationBox import MovieLocationBox +from Screens.ChoiceBox import ChoiceBox +from Screens.MessageBox import MessageBox +from RecordTimer import AFTEREVENT +from enigma import eEPGCache, eServiceReference +from time import localtime, mktime, time, strftime +from datetime import datetime + +class TimerEntry(Screen, ConfigListScreen): + def __init__(self, session, timer): + Screen.__init__(self, session) + self.timer = timer + + self.entryDate = None + self.entryService = None + + self["oktext"] = Label(_("OK")) + self["canceltext"] = Label(_("Cancel")) + self["ok"] = Pixmap() + self["cancel"] = Pixmap() + self["key_yellow"] = Label(_("Timer type")) + self["key_blue"] = Label() + + self.createConfig() + + self["actions"] = NumberActionMap(["SetupActions", "GlobalActions", "PiPSetupActions", "ColorActions"], + { + "ok": self.keySelect, + "save": self.keyGo, + "cancel": self.keyCancel, + "volumeUp": self.incrementStart, + "volumeDown": self.decrementStart, + "size+": self.incrementEnd, + "size-": self.decrementEnd, + "yellow": self.changeTimerType, + "blue": self.changeZapWakeupType + }, -2) + + self.list = [] + ConfigListScreen.__init__(self, self.list, session = session) + self.setTitle(_("Timer entry")) + self.createSetup("config") + + def createConfig(self): + justplay = self.timer.justplay + always_zap = self.timer.always_zap + zap_wakeup = self.timer.zap_wakeup + + afterevent = { + AFTEREVENT.NONE: "nothing", + AFTEREVENT.DEEPSTANDBY: "deepstandby", + AFTEREVENT.STANDBY: "standby", + AFTEREVENT.AUTO: "auto" + }[self.timer.afterEvent] + + if self.timer.record_ecm and self.timer.descramble: + recordingtype = "descrambled+ecm" + elif self.timer.record_ecm: + recordingtype = "scrambled+ecm" + elif self.timer.descramble: + recordingtype = "normal" + + weekday_table = ("mon", "tue", "wed", "thu", "fri", "sat", "sun") + + # calculate default values + day = [] + weekday = 0 + for x in (0, 1, 2, 3, 4, 5, 6): + day.append(0) + if self.timer.repeated: # repeated + type = "repeated" + if (self.timer.repeated == 31): # Mon-Fri + repeated = "weekdays" + elif (self.timer.repeated == 127): # daily + repeated = "daily" + else: + flags = self.timer.repeated + repeated = "user" + count = 0 + for x in (0, 1, 2, 3, 4, 5, 6): + if flags == 1: # weekly + print "Set to weekday " + str(x) + weekday = x + if flags & 1 == 1: # set user defined flags + day[x] = 1 + count += 1 + else: + day[x] = 0 + flags = flags >> 1 + if count == 1: + repeated = "weekly" + else: # once + type = "once" + repeated = None + weekday = int(strftime("%u", localtime(self.timer.begin))) - 1 + day[weekday] = 1 + + self.timerentry_justplay = ConfigSelection(choices = [ + ("zap", _("zap")), ("record", _("record")), ("zap+record", _("zap and record"))], + default = {0: "record", 1: "zap", 2: "zap+record"}[justplay + 2*always_zap]) + if SystemInfo["DeepstandbySupport"]: + shutdownString = _("go to deep standby") + choicelist = [("always", _("always")), ("from_standby", _("only from standby")), ("from_deep_standby", _("only from deep standby")), ("never", _("never"))] + else: + shutdownString = _("shut down") + choicelist = [("always", _("always")), ("never", _("never"))] + self.timerentry_zapwakeup = ConfigSelection(choices = choicelist, default = zap_wakeup) + self.timerentry_afterevent = ConfigSelection(choices = [("nothing", _("do nothing")), ("standby", _("go to standby")), ("deepstandby", shutdownString), ("auto", _("auto"))], default = afterevent) + self.timerentry_recordingtype = ConfigSelection(choices = [("normal", _("normal")), ("descrambled+ecm", _("descramble and record ecm")), ("scrambled+ecm", _("don't descramble, record ecm"))], default = recordingtype) + self.timerentry_type = ConfigSelection(choices = [("once",_("once")), ("repeated", _("repeated"))], default = type) + self.timerentry_name = ConfigText(default = self.timer.name, visible_width = 50, fixed_size = False) + self.timerentry_description = ConfigText(default = self.timer.description, visible_width = 50, fixed_size = False) + self.timerentry_tags = self.timer.tags[:] + self.timerentry_tagsset = ConfigSelection(choices = [not self.timerentry_tags and "None" or " ".join(self.timerentry_tags)]) + + self.timerentry_repeated = ConfigSelection(default = repeated, choices = [("weekly", _("weekly")), ("daily", _("daily")), ("weekdays", _("Mon-Fri")), ("user", _("user defined"))]) + + self.timerentry_date = ConfigDateTime(default = self.timer.begin, formatstring = _("%d.%B %Y"), increment = 86400) + self.timerentry_starttime = ConfigClock(default = self.timer.begin) + self.timerentry_endtime = ConfigClock(default = self.timer.end) + self.timerentry_showendtime = ConfigSelection(default = ((self.timer.end - self.timer.begin) > 4), choices = [(True, _("yes")), (False, _("no"))]) + + default = self.timer.dirname or defaultMoviePath() + tmp = config.movielist.videodirs.value + if default not in tmp: + tmp.append(default) + self.timerentry_dirname = ConfigSelection(default = default, choices = tmp) + + self.timerentry_repeatedbegindate = ConfigDateTime(default = self.timer.repeatedbegindate, formatstring = _("%d.%B %Y"), increment = 86400) + + self.timerentry_weekday = ConfigSelection(default = weekday_table[weekday], choices = [("mon",_("Monday")), ("tue", _("Tuesday")), ("wed",_("Wednesday")), ("thu", _("Thursday")), ("fri", _("Friday")), ("sat", _("Saturday")), ("sun", _("Sunday"))]) + + self.timerentry_day = ConfigSubList() + for x in (0, 1, 2, 3, 4, 5, 6): + self.timerentry_day.append(ConfigYesNo(default = day[x])) + + # FIXME some service-chooser needed here + servicename = "N/A" + try: # no current service available? + servicename = str(self.timer.service_ref.getServiceName()) + except: + pass + self.timerentry_service_ref = self.timer.service_ref + self.timerentry_service = ConfigSelection([servicename]) + + def createSetup(self, widget): + self.list = [] + self.list.append(getConfigListEntry(_("Name"), self.timerentry_name)) + self.list.append(getConfigListEntry(_("Description"), self.timerentry_description)) + self.timerJustplayEntry = getConfigListEntry(_("Timer type"), self.timerentry_justplay) + self.list.append(self.timerJustplayEntry) + self.timerTypeEntry = getConfigListEntry(_("Repeat type"), self.timerentry_type) + self.list.append(self.timerTypeEntry) + + if self.timerentry_type.value == "once": + self.frequencyEntry = None + else: # repeated + self.frequencyEntry = getConfigListEntry(_("Repeats"), self.timerentry_repeated) + self.list.append(self.frequencyEntry) + self.repeatedbegindateEntry = getConfigListEntry(_("Starting on"), self.timerentry_repeatedbegindate) + self.list.append(self.repeatedbegindateEntry) + if self.timerentry_repeated.value == "daily": + pass + if self.timerentry_repeated.value == "weekdays": + pass + if self.timerentry_repeated.value == "weekly": + self.list.append(getConfigListEntry(_("Weekday"), self.timerentry_weekday)) + + if self.timerentry_repeated.value == "user": + self.list.append(getConfigListEntry(_("Monday"), self.timerentry_day[0])) + self.list.append(getConfigListEntry(_("Tuesday"), self.timerentry_day[1])) + self.list.append(getConfigListEntry(_("Wednesday"), self.timerentry_day[2])) + self.list.append(getConfigListEntry(_("Thursday"), self.timerentry_day[3])) + self.list.append(getConfigListEntry(_("Friday"), self.timerentry_day[4])) + self.list.append(getConfigListEntry(_("Saturday"), self.timerentry_day[5])) + self.list.append(getConfigListEntry(_("Sunday"), self.timerentry_day[6])) + + self.entryDate = getConfigListEntry(_("Date"), self.timerentry_date) + if self.timerentry_type.value == "once": + self.list.append(self.entryDate) + + self.entryStartTime = getConfigListEntry(_("Start time"), self.timerentry_starttime) + self.list.append(self.entryStartTime) + + self.entryShowEndTime = getConfigListEntry(_("Set end time"), self.timerentry_showendtime) + self.entryZapWakeup = getConfigListEntry(_("Wakeup receiver for start timer"), self.timerentry_zapwakeup) + if self.timerentry_justplay.value == "zap": + self.list.append(self.entryZapWakeup) + self.list.append(self.entryShowEndTime) + self["key_blue"].setText(_("Wakeup type")) + else: + self["key_blue"].setText("") + self.entryEndTime = getConfigListEntry(_("End time"), self.timerentry_endtime) + if self.timerentry_justplay.value != "zap" or self.timerentry_showendtime.value: + self.list.append(self.entryEndTime) + + self.channelEntry = getConfigListEntry(_("Channel"), self.timerentry_service) + self.list.append(self.channelEntry) + + self.dirname = getConfigListEntry(_("Location"), self.timerentry_dirname) + self.tagsSet = getConfigListEntry(_("Tags"), self.timerentry_tagsset) + if self.timerentry_justplay.value != "zap": + if config.usage.setup_level.index >= 2: # expert+ + self.list.append(self.dirname) + if getPreferredTagEditor(): + self.list.append(self.tagsSet) + self.list.append(getConfigListEntry(_("After event"), self.timerentry_afterevent)) + self.list.append(getConfigListEntry(_("Recording type"), self.timerentry_recordingtype)) + + self[widget].list = self.list + self[widget].l.setList(self.list) + + def newConfig(self): + print "newConfig", self["config"].getCurrent() + if self["config"].getCurrent() in (self.timerTypeEntry, self.timerJustplayEntry, self.frequencyEntry, self.entryShowEndTime): + self.createSetup("config") + + def keyLeft(self): + if self["config"].getCurrent() in (self.channelEntry, self.tagsSet): + self.keySelect() + else: + ConfigListScreen.keyLeft(self) + self.newConfig() + + def keyRight(self): + if self["config"].getCurrent() in (self.channelEntry, self.tagsSet): + self.keySelect() + else: + ConfigListScreen.keyRight(self) + self.newConfig() + + def handleKeyFileCallback(self, answer): + if self["config"].getCurrent() in (self.channelEntry, self.tagsSet): + self.keySelect() + else: + ConfigListScreen.handleKeyFileCallback(self, answer) + self.newConfig() + + def keySelect(self): + cur = self["config"].getCurrent() + if cur == self.channelEntry: + self.session.openWithCallback( + self.finishedChannelSelection, + ChannelSelection.SimpleChannelSelection, + _("Select channel to record from") + ) + elif config.usage.setup_level.index >= 2 and cur == self.dirname: + self.session.openWithCallback( + self.pathSelected, + MovieLocationBox, + _("Select target folder"), + self.timerentry_dirname.value, + minFree = 100 # We require at least 100MB free space + ) + elif getPreferredTagEditor() and cur == self.tagsSet: + self.session.openWithCallback( + self.tagEditFinished, + getPreferredTagEditor(), + self.timerentry_tags + ) + else: + self.keyGo() + + def finishedChannelSelection(self, *args): + if args: + self.timerentry_service_ref = ServiceReference(args[0]) + self.timerentry_service.setCurrentText(self.timerentry_service_ref.getServiceName()) + self["config"].invalidate(self.channelEntry) + + def getTimestamp(self, date, mytime): + d = localtime(date) + dt = datetime(d.tm_year, d.tm_mon, d.tm_mday, mytime[0], mytime[1]) + return int(mktime(dt.timetuple())) + + def getBeginEnd(self): + date = self.timerentry_date.value + endtime = self.timerentry_endtime.value + starttime = self.timerentry_starttime.value + + begin = self.getTimestamp(date, starttime) + end = self.getTimestamp(date, endtime) + + # if the endtime is less than the starttime, add 1 day. + if end < begin: + end += 86400 + return begin, end + + def selectChannelSelector(self, *args): + self.session.openWithCallback( + self.finishedChannelSelectionCorrection, + ChannelSelection.SimpleChannelSelection, + _("Select channel to record from") + ) + + def finishedChannelSelectionCorrection(self, *args): + if args: + self.finishedChannelSelection(*args) + self.keyGo() + + def keyGo(self, result = None): + if not self.timerentry_service_ref.isRecordable(): + self.session.openWithCallback(self.selectChannelSelector, MessageBox, _("You didn't select a channel to record from."), MessageBox.TYPE_ERROR) + return + self.timer.name = self.timerentry_name.value + self.timer.description = self.timerentry_description.value + self.timer.justplay = self.timerentry_justplay.value == "zap" + self.timer.always_zap = self.timerentry_justplay.value == "zap+record" + self.timer.zap_wakeup = self.timerentry_zapwakeup.value + if self.timerentry_justplay.value == "zap": + if not self.timerentry_showendtime.value: + self.timerentry_endtime.value = self.timerentry_starttime.value + self.timerentry_afterevent.value = "nothing" + self.timer.resetRepeated() + self.timer.afterEvent = { + "nothing": AFTEREVENT.NONE, + "deepstandby": AFTEREVENT.DEEPSTANDBY, + "standby": AFTEREVENT.STANDBY, + "auto": AFTEREVENT.AUTO + }[self.timerentry_afterevent.value] + self.timer.descramble = { + "normal": True, + "descrambled+ecm": True, + "scrambled+ecm": False, + }[self.timerentry_recordingtype.value] + self.timer.record_ecm = { + "normal": False, + "descrambled+ecm": True, + "scrambled+ecm": True, + }[self.timerentry_recordingtype.value] + self.timer.service_ref = self.timerentry_service_ref + self.timer.tags = self.timerentry_tags + + if self.timer.dirname or self.timerentry_dirname.value != defaultMoviePath(): + self.timer.dirname = self.timerentry_dirname.value + config.movielist.last_timer_videodir.value = self.timer.dirname + config.movielist.last_timer_videodir.save() + + if self.timerentry_type.value == "once": + self.timer.begin, self.timer.end = self.getBeginEnd() + if self.timerentry_type.value == "repeated": + if self.timerentry_repeated.value == "daily": + for x in (0, 1, 2, 3, 4, 5, 6): + self.timer.setRepeated(x) + + if self.timerentry_repeated.value == "weekly": + self.timer.setRepeated(self.timerentry_weekday.index) + + if self.timerentry_repeated.value == "weekdays": + for x in (0, 1, 2, 3, 4): + self.timer.setRepeated(x) + + if self.timerentry_repeated.value == "user": + for x in (0, 1, 2, 3, 4, 5, 6): + if self.timerentry_day[x].value: + self.timer.setRepeated(x) + + self.timer.repeatedbegindate = self.getTimestamp(self.timerentry_repeatedbegindate.value, self.timerentry_starttime.value) + if self.timer.repeated: + self.timer.begin = self.getTimestamp(self.timerentry_repeatedbegindate.value, self.timerentry_starttime.value) + self.timer.end = self.getTimestamp(self.timerentry_repeatedbegindate.value, self.timerentry_endtime.value) + else: + self.timer.begin = self.getTimestamp(time.time(), self.timerentry_starttime.value) + self.timer.end = self.getTimestamp(time.time(), self.timerentry_endtime.value) + + # when a timer end is set before the start, add 1 day + if self.timer.end < self.timer.begin: + self.timer.end += 86400 + + if self.timer.eit is not None: + event = eEPGCache.getInstance().lookupEventId(self.timer.service_ref.ref, self.timer.eit) + if event: + n = event.getNumOfLinkageServices() + if n > 1: + tlist = [] + ref = self.session.nav.getCurrentlyPlayingServiceOrGroup() + parent = self.timer.service_ref.ref + selection = 0 + for x in range(n): + i = event.getLinkageService(parent, x) + if i.toString() == ref.toString(): + selection = x + tlist.append((i.getName(), i)) + self.session.openWithCallback(self.subserviceSelected, ChoiceBox, title=_("Please select a subservice to record..."), list = tlist, selection = selection) + return + elif n > 0: + parent = self.timer.service_ref.ref + self.timer.service_ref = ServiceReference(event.getLinkageService(parent, 0)) + self.saveTimer() + self.close((True, self.timer)) + + def changeTimerType(self): + self.timerentry_justplay.selectNext() + self.timerJustplayEntry = getConfigListEntry(_("Timer type"), self.timerentry_justplay) + self["config"].invalidate(self.timerJustplayEntry) + self.createSetup("config") + + def changeZapWakeupType(self): + if self.timerentry_justplay.value == "zap": + self.timerentry_zapwakeup.selectNext() + self["config"].invalidate(self.entryZapWakeup) + + def incrementStart(self): + self.timerentry_starttime.increment() + self["config"].invalidate(self.entryStartTime) + if self.timerentry_type.value == "once" and self.timerentry_starttime.value == [0, 0]: + self.timerentry_date.value = self.timerentry_date.value + 86400 + self["config"].invalidate(self.entryDate) + + def decrementStart(self): + self.timerentry_starttime.decrement() + self["config"].invalidate(self.entryStartTime) + if self.timerentry_type.value == "once" and self.timerentry_starttime.value == [23, 59]: + self.timerentry_date.value = self.timerentry_date.value - 86400 + self["config"].invalidate(self.entryDate) + + def incrementEnd(self): + if self.entryEndTime is not None: + self.timerentry_endtime.increment() + self["config"].invalidate(self.entryEndTime) + + def decrementEnd(self): + if self.entryEndTime is not None: + self.timerentry_endtime.decrement() + self["config"].invalidate(self.entryEndTime) + + def subserviceSelected(self, service): + if not service is None: + self.timer.service_ref = ServiceReference(service[1]) + self.saveTimer() + self.close((True, self.timer)) + + def saveTimer(self): + self.session.nav.RecordTimer.saveTimer() + + def keyCancel(self): + self.close((False,)) + + def pathSelected(self, res): + if res is not None: + if config.movielist.videodirs.value != self.timerentry_dirname.choices: + self.timerentry_dirname.setChoices(config.movielist.videodirs.value, default=res) + self.timerentry_dirname.value = res + + def tagEditFinished(self, ret): + if ret is not None: + self.timerentry_tags = ret + self.timerentry_tagsset.setChoices([not ret and "None" or " ".join(ret)]) + self["config"].invalidate(self.tagsSet) + +class TimerLog(Screen): + def __init__(self, session, timer): + Screen.__init__(self, session) + self.timer = timer; + self.log_entries = self.timer.log_entries[:] + + self.fillLogList() + + self["loglist"] = MenuList(self.list) + self["logentry"] = Label() + + self["key_red"] = Button(_("Delete entry")) + self["key_green"] = Button() + self["key_yellow"] = Button("") + self["key_blue"] = Button(_("Clear log")) + + self.onShown.append(self.updateText) + + self["actions"] = NumberActionMap(["OkCancelActions", "DirectionActions", "ColorActions"], + { + "ok": self.keyClose, + "cancel": self.keyClose, + "up": self.up, + "down": self.down, + "left": self.left, + "right": self.right, + "red": self.deleteEntry, + "blue": self.clearLog + }, -1) + self.setTitle(_("Timer log")) + + def deleteEntry(self): + cur = self["loglist"].getCurrent() + if cur is None: + return + self.log_entries.remove(cur[1]) + self.fillLogList() + self["loglist"].l.setList(self.list) + self.updateText() + + def fillLogList(self): + self.list = [(str(strftime("%Y-%m-%d %H-%M", localtime(x[0])) + " - " + x[2]), x) for x in self.log_entries] + + def clearLog(self): + self.log_entries = [] + self.fillLogList() + self["loglist"].l.setList(self.list) + self.updateText() + + def keyClose(self): + if self.timer.log_entries != self.log_entries: + self.timer.log_entries = self.log_entries + self.close((True, self.timer)) + else: + self.close((False,)) + + def up(self): + self["loglist"].instance.moveSelection(self["loglist"].instance.moveUp) + self.updateText() + + def down(self): + self["loglist"].instance.moveSelection(self["loglist"].instance.moveDown) + self.updateText() + + def left(self): + self["loglist"].instance.moveSelection(self["loglist"].instance.pageUp) + self.updateText() + + def right(self): + self["loglist"].instance.moveSelection(self["loglist"].instance.pageDown) + self.updateText() + + def updateText(self): + if self.list: + self["logentry"].setText(str(self["loglist"].getCurrent()[1][2])) + else: + self["logentry"].setText("") diff --git a/lib/python/Screens/TimerSelection.py b/lib/python/Screens/TimerSelection.py new file mode 100644 index 0000000..64de776 --- /dev/null +++ b/lib/python/Screens/TimerSelection.py @@ -0,0 +1,25 @@ +from Screen import Screen +from Components.TimerList import TimerList +from Components.ActionMap import ActionMap + +class TimerSelection(Screen): + def __init__(self, session, list): + Screen.__init__(self, session) + self.setTitle(_("Timer selection")) + + self.list = list + + self["timerlist"] = TimerList(self.list) + + self["actions"] = ActionMap(["OkCancelActions"], + { + "ok": self.selected, + "cancel": self.leave, + }, -1) + + + def leave(self): + self.close(None) + + def selected(self): + self.close(self["timerlist"].getCurrentIndex()) diff --git a/lib/python/Screens/UnhandledKey.py b/lib/python/Screens/UnhandledKey.py new file mode 100644 index 0000000..63bfed5 --- /dev/null +++ b/lib/python/Screens/UnhandledKey.py @@ -0,0 +1,7 @@ +from Screen import Screen +from Components.Pixmap import Pixmap + +class UnhandledKey(Screen): + def __init__(self, session): + Screen.__init__(self, session) + self["UnhandledKeyPixmap"] = Pixmap() diff --git a/lib/python/Screens/VirtualKeyBoard.py b/lib/python/Screens/VirtualKeyBoard.py new file mode 100644 index 0000000..ca0978d --- /dev/null +++ b/lib/python/Screens/VirtualKeyBoard.py @@ -0,0 +1,418 @@ +# -*- coding: UTF-8 -*- +from enigma import eListboxPythonMultiContent, gFont, RT_HALIGN_CENTER, RT_VALIGN_CENTER, getPrevAsciiCode +from Screen import Screen +from Components.Language import language +from Components.ActionMap import NumberActionMap +from Components.Sources.StaticText import StaticText +from Components.Input import Input +from Components.Label import Label +from Components.Pixmap import Pixmap +from Components.MenuList import MenuList +from Components.MultiContent import MultiContentEntryText, MultiContentEntryPixmapAlphaTest +from Tools.Directories import resolveFilename, SCOPE_CURRENT_SKIN +from Tools.LoadPixmap import LoadPixmap +from Tools.NumericalTextInput import NumericalTextInput + +class VirtualKeyBoardList(MenuList): + def __init__(self, list, enableWrapAround=False): + MenuList.__init__(self, list, enableWrapAround, eListboxPythonMultiContent) + self.l.setFont(0, gFont("Regular", 28)) + self.l.setItemHeight(45) + +class VirtualKeyBoardEntryComponent: + pass + +class VirtualKeyBoard(Screen): + + def __init__(self, session, title="", **kwargs): + Screen.__init__(self, session) + self.keys_list = [] + self.shiftkeys_list = [] + self.lang = language.getLanguage() + self.nextLang = None + self.shiftMode = False + self.selectedKey = 0 + self.smsChar = None + self.sms = NumericalTextInput(self.smsOK) + + self.key_bg = LoadPixmap(path=resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/vkey_bg.png")) + self.key_sel = LoadPixmap(path=resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/vkey_sel.png")) + self.key_backspace = LoadPixmap(path=resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/vkey_backspace.png")) + self.key_all = LoadPixmap(path=resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/vkey_all.png")) + self.key_clr = LoadPixmap(path=resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/vkey_clr.png")) + self.key_esc = LoadPixmap(path=resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/vkey_esc.png")) + self.key_ok = LoadPixmap(path=resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/vkey_ok.png")) + self.key_shift = LoadPixmap(path=resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/vkey_shift.png")) + self.key_shift_sel = LoadPixmap(path=resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/vkey_shift_sel.png")) + self.key_space = LoadPixmap(path=resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/vkey_space.png")) + self.key_left = LoadPixmap(path=resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/vkey_left.png")) + self.key_right = LoadPixmap(path=resolveFilename(SCOPE_CURRENT_SKIN, "skin_default/vkey_right.png")) + + self.keyImages = { + "BACKSPACE": self.key_backspace, + "ALL": self.key_all, + "EXIT": self.key_esc, + "OK": self.key_ok, + "SHIFT": self.key_shift, + "SPACE": self.key_space, + "LEFT": self.key_left, + "RIGHT": self.key_right + } + self.keyImagesShift = { + "BACKSPACE": self.key_backspace, + "CLEAR": self.key_clr, + "EXIT": self.key_esc, + "OK": self.key_ok, + "SHIFT": self.key_shift_sel, + "SPACE": self.key_space, + "LEFT": self.key_left, + "RIGHT": self.key_right + } + + self["country"] = StaticText("") + self["header"] = Label(title) + self["text"] = Input(currPos=len(kwargs.get("text", "").decode("utf-8",'ignore')), allMarked=False, **kwargs) + self["list"] = VirtualKeyBoardList([]) + + self["actions"] = NumberActionMap(["OkCancelActions", "WizardActions", "ColorActions", "KeyboardInputActions", "InputBoxActions", "InputAsciiActions"], + { + "gotAsciiCode": self.keyGotAscii, + "ok": self.okClicked, + "cancel": self.exit, + "left": self.left, + "right": self.right, + "up": self.up, + "down": self.down, + "red": self.exit, + "green": self.ok, + "yellow": self.switchLang, + "blue": self.shiftClicked, + "deleteBackward": self.backClicked, + "deleteForward": self.forwardClicked, + "back": self.exit, + "pageUp": self.cursorRight, + "pageDown": self.cursorLeft, + "1": self.keyNumberGlobal, + "2": self.keyNumberGlobal, + "3": self.keyNumberGlobal, + "4": self.keyNumberGlobal, + "5": self.keyNumberGlobal, + "6": self.keyNumberGlobal, + "7": self.keyNumberGlobal, + "8": self.keyNumberGlobal, + "9": self.keyNumberGlobal, + "0": self.keyNumberGlobal, + }, -2) + self.setLang() + self.onExecBegin.append(self.setKeyboardModeAscii) + self.onLayoutFinish.append(self.buildVirtualKeyBoard) + self.onClose.append(self.__onClose) + + def __onClose(self): + self.sms.timer.stop() + + def switchLang(self): + self.lang = self.nextLang + self.setLang() + self.buildVirtualKeyBoard() + + def setLang(self): + if self.lang == 'de_DE': + self.keys_list = [ + [u"EXIT", u"1", u"2", u"3", u"4", u"5", u"6", u"7", u"8", u"9", u"0", u"BACKSPACE"], + [u"q", u"w", u"e", u"r", u"t", u"z", u"u", u"i", u"o", u"p", u"ü", u"+"], + [u"a", u"s", u"d", u"f", u"g", u"h", u"j", u"k", u"l", u"ö", u"ä", u"#"], + [u"<", u"y", u"x", u"c", u"v", u"b", u"n", u"m", u",", ".", u"-", u"ALL"], + [u"SHIFT", u"SPACE", u"@", u"ß", u"OK", u"LEFT", u"RIGHT"]] + self.shiftkeys_list = [ + [u"EXIT", u"!", u'"', u"§", u"$", u"%", u"&", u"/", u"(", u")", u"=", u"BACKSPACE"], + [u"Q", u"W", u"E", u"R", u"T", u"Z", u"U", u"I", u"O", u"P", u"Ü", u"*"], + [u"A", u"S", u"D", u"F", u"G", u"H", u"J", u"K", u"L", u"Ö", u"Ä", u"'"], + [u">", u"Y", u"X", u"C", u"V", u"B", u"N", u"M", u";", u":", u"_", u"CLEAR"], + [u"SHIFT", u"SPACE", u"?", u"\\", u"OK", u"LEFT", u"RIGHT"]] + self.nextLang = 'es_ES' + elif self.lang == 'es_ES': + #still missing keys (u"ùÙ") + self.keys_list = [ + [u"EXIT", u"1", u"2", u"3", u"4", u"5", u"6", u"7", u"8", u"9", u"0", u"BACKSPACE"], + [u"q", u"w", u"e", u"r", u"t", u"z", u"u", u"i", u"o", u"p", u"ú", u"+"], + [u"a", u"s", u"d", u"f", u"g", u"h", u"j", u"k", u"l", u"ó", u"á", u"#"], + [u"<", u"y", u"x", u"c", u"v", u"b", u"n", u"m", u",", ".", u"-", u"ALL"], + [u"SHIFT", u"SPACE", u"@", u"Ł", u"ŕ", u"é", u"č", u"í", u"ě", u"ń", u"ň", u"OK"]] + self.shiftkeys_list = [ + [u"EXIT", u"!", u'"', u"§", u"$", u"%", u"&", u"/", u"(", u")", u"=", u"BACKSPACE"], + [u"Q", u"W", u"E", u"R", u"T", u"Z", u"U", u"I", u"O", u"P", u"Ú", u"*"], + [u"A", u"S", u"D", u"F", u"G", u"H", u"J", u"K", u"L", u"Ó", u"Á", u"'"], + [u">", u"Y", u"X", u"C", u"V", u"B", u"N", u"M", u";", u":", u"_", u"CLEAR"], + [u"SHIFT", u"SPACE", u"?", u"\\", u"Ŕ", u"É", u"Č", u"Í", u"Ě", u"Ń", u"Ň", u"OK"]] + self.nextLang = 'fi_FI' + elif self.lang == 'fi_FI': + self.keys_list = [ + [u"EXIT", u"1", u"2", u"3", u"4", u"5", u"6", u"7", u"8", u"9", u"0", u"BACKSPACE"], + [u"q", u"w", u"e", u"r", u"t", u"z", u"u", u"i", u"o", u"p", u"é", u"+"], + [u"a", u"s", u"d", u"f", u"g", u"h", u"j", u"k", u"l", u"ö", u"ä", u"#"], + [u"<", u"y", u"x", u"c", u"v", u"b", u"n", u"m", u",", ".", u"-", u"ALL"], + [u"SHIFT", u"SPACE", u"@", u"ß", u"ĺ", u"OK", u"LEFT", u"RIGHT"]] + self.shiftkeys_list = [ + [u"EXIT", u"!", u'"', u"§", u"$", u"%", u"&", u"/", u"(", u")", u"=", u"BACKSPACE"], + [u"Q", u"W", u"E", u"R", u"T", u"Z", u"U", u"I", u"O", u"P", u"É", u"*"], + [u"A", u"S", u"D", u"F", u"G", u"H", u"J", u"K", u"L", u"Ö", u"Ä", u"'"], + [u">", u"Y", u"X", u"C", u"V", u"B", u"N", u"M", u";", u":", u"_", u"CLEAR"], + [u"SHIFT", u"SPACE", u"?", u"\\", u"Ĺ", u"OK", u"LEFT", u"RIGHT"]] + self.nextLang = 'ru_RU' + elif self.lang == 'ru_RU': + self.keys_list = [ + [u"EXIT", u"1", u"2", u"3", u"4", u"5", u"6", u"7", u"8", u"9", u"0", u"BACKSPACE"], + [u"а", u"б", u"в", u"г", u"д", u"е", u"ё", u"ж", u"з", u"и", u"й", u"+"], + [u"к", u"л", u"м", u"н", u"о", u"п", u"р", u"с", u"т", u"у", u"ф", u"#"], + [u"<", u"х", u"ц", u"ч", u"ш", u"щ", u"ъ", u"ы", u",", u".", u"-", u"ALL"], + [u"SHIFT", u"SPACE", u"@", u"ь", u"э", u"ю", u"я", u"OK", u"LEFT", u"RIGHT"]] + self.shiftkeys_list = [ + [u"EXIT", u"!", u'"', u"§", u"$", u"%", u"&", u"/", u"(", u")", u"=", u"BACKSPACE"], + [u"А", u"Б", u"В", u"Г", u"Д", u"Е", u"Ё", u"Ж", u"З", u"И", u"Й", u"*"], + [u"К", u"Л", u"М", u"Н", u"О", u"П", u"Р", u"С", u"Т", u"У", u"Ф", u"'"], + [u">", u"Х", u"Ц", u"Ч", u"Ш", u"Щ", u"Ъ", u"Ы", u";", u":", u"_", u"CLEAR"], + [u"SHIFT", u"SPACE", u"?", u"\\", u"Ь", u"Э", u"Ю", u"Я", u"OK", u"LEFT", u"RIGHT"]] + self.nextLang = 'sv_SE' + elif self.lang == 'sv_SE': + self.keys_list = [ + [u"EXIT", u"1", u"2", u"3", u"4", u"5", u"6", u"7", u"8", u"9", u"0", u"BACKSPACE"], + [u"q", u"w", u"e", u"r", u"t", u"z", u"u", u"i", u"o", u"p", u"é", u"+"], + [u"a", u"s", u"d", u"f", u"g", u"h", u"j", u"k", u"l", u"ö", u"ä", u"#"], + [u"<", u"y", u"x", u"c", u"v", u"b", u"n", u"m", u",", ".", u"-", u"ALL"], + [u"SHIFT", u"SPACE", u"@", u"ß", u"ĺ", u"OK", u"LEFT", u"RIGHT"]] + self.shiftkeys_list = [ + [u"EXIT", u"!", u'"', u"§", u"$", u"%", u"&", u"/", u"(", u")", u"=", u"BACKSPACE"], + [u"Q", u"W", u"E", u"R", u"T", u"Z", u"U", u"I", u"O", u"P", u"É", u"*"], + [u"A", u"S", u"D", u"F", u"G", u"H", u"J", u"K", u"L", u"Ö", u"Ä", u"'"], + [u">", u"Y", u"X", u"C", u"V", u"B", u"N", u"M", u";", u":", u"_", u"CLEAR"], + [u"SHIFT", u"SPACE", u"?", u"\\", u"Ĺ", u"OK", u"LEFT", u"RIGHT"]] + self.nextLang = 'sk_SK' + elif self.lang =='sk_SK': + self.keys_list = [ + [u"EXIT", u"1", u"2", u"3", u"4", u"5", u"6", u"7", u"8", u"9", u"0", u"BACKSPACE"], + [u"q", u"w", u"e", u"r", u"t", u"z", u"u", u"i", u"o", u"p", u"ú", u"+"], + [u"a", u"s", u"d", u"f", u"g", u"h", u"j", u"k", u"l", u"ľ", u"@", u"#"], + [u"<", u"y", u"x", u"c", u"v", u"b", u"n", u"m", u",", ".", u"-", u"ALL"], + [u"SHIFT", u"SPACE", u"š", u"č", u"ž", u"ý", u"á", u"í", u"é", u"OK", u"LEFT", u"RIGHT"]] + self.shiftkeys_list = [ + [u"EXIT", u"!", u'"', u"§", u"$", u"%", u"&", u"/", u"(", u")", u"=", u"BACKSPACE"], + [u"Q", u"W", u"E", u"R", u"T", u"Z", u"U", u"I", u"O", u"P", u"ť", u"*"], + [u"A", u"S", u"D", u"F", u"G", u"H", u"J", u"K", u"L", u"ň", u"ď", u"'"], + [u"Á", u"É", u"Ď", u"Í", u"Ý", u"Ó", u"Ú", u"Ž", u"Š", u"Č", u"Ť", u"Ň"], + [u">", u"Y", u"X", u"C", u"V", u"B", u"N", u"M", u";", u":", u"_", u"CLEAR"], + [u"SHIFT", u"SPACE", u"?", u"\\", u"ä", u"ö", u"ü", u"ô", u"ŕ", u"ĺ", u"OK"]] + self.nextLang = 'cs_CZ' + elif self.lang == 'cs_CZ': + self.keys_list = [ + [u"EXIT", u"1", u"2", u"3", u"4", u"5", u"6", u"7", u"8", u"9", u"0", u"BACKSPACE"], + [u"q", u"w", u"e", u"r", u"t", u"z", u"u", u"i", u"o", u"p", u"ú", u"+"], + [u"a", u"s", u"d", u"f", u"g", u"h", u"j", u"k", u"l", u"ů", u"@", u"#"], + [u"<", u"y", u"x", u"c", u"v", u"b", u"n", u"m", u",", ".", u"-", u"ALL"], + [u"SHIFT", u"SPACE", u"ě", u"š", u"č", u"ř", u"ž", u"ý", u"á", u"í", u"é", u"OK"]] + self.shiftkeys_list = [ + [u"EXIT", u"!", u'"', u"§", u"$", u"%", u"&", u"/", u"(", u")", u"=", u"BACKSPACE"], + [u"Q", u"W", u"E", u"R", u"T", u"Z", u"U", u"I", u"O", u"P", u"ť", u"*"], + [u"A", u"S", u"D", u"F", u"G", u"H", u"J", u"K", u"L", u"ň", u"ď", u"'"], + [u">", u"Y", u"X", u"C", u"V", u"B", u"N", u"M", u";", u":", u"_", u"CLEAR"], + [u"SHIFT", u"SPACE", u"?", u"\\", u"Č", u"Ř", u"Š", u"Ž", u"Ú", u"Á", u"É", u"OK"]] + self.nextLang = 'el_GR' + elif self.lang == 'el_GR': + self.keys_list = [ + [u"EXIT", u"1", u"2", u"3", u"4", u"5", u"6", u"7", u"8", u"9", u"0", u"BACKSPACE"], + [u"=", u"ς", u"ε", u"ρ", u"τ", u"υ", u"θ", u"ι", u"ο", u"π", u"[", u"]"], + [u"α", u"σ", u"δ", u"φ", u"γ", u"η", u"ξ", u"κ", u"λ", u";", u"'", u"-"], + [u"\\", u"ζ", u"χ", u"ψ", u"ω", u"β", u"ν", u"μ", u",", ".", u"/", u"ALL"], + [u"SHIFT", u"SPACE", u"ά", u"έ", u"ή", u"ί", u"ό", u"ύ", u"ώ", u"ϊ", u"ϋ", u"OK"]] + self.shiftkeys_list = [ + [u"EXIT", u"!", u"@", u"#", u"$", u"%", u"^", u"&", u"*", u"(", u")", u"BACKSPACE"], + [u"+", u"€", u"Ε", u"Ρ", u"Τ", u"Υ", u"Θ", u"Ι", u"Ο", u"Π", u"{", u"}"], + [u"Α", u"Σ", u"Δ", u"Φ", u"Γ", u"Η", u"Ξ", u"Κ", u"Λ", u":", u'"', u"_"], + [u"|", u"Ζ", u"Χ", u"Ψ", u"Ω", u"Β", u"Ν", u"Μ", u"<", u">", u"?", u"CLEAR"], + [u"SHIFT", u"SPACE", u"Ά", u"Έ", u"Ή", u"Ί", u"Ό", u"Ύ", u"Ώ", u"Ϊ", u"Ϋ", u"OK"]] + self.nextLang = 'pl_PL' + elif self.lang == 'pl_PL': + self.keys_list = [ + [u"EXIT", u"1", u"2", u"3", u"4", u"5", u"6", u"7", u"8", u"9", u"0", u"BACKSPACE"], + [u"q", u"w", u"e", u"r", u"t", u"y", u"u", u"i", u"o", u"p", u"-", u"["], + [u"a", u"s", u"d", u"f", u"g", u"h", u"j", u"k", u"l", u";", u"'", u"\\"], + [u"<", u"z", u"x", u"c", u"v", u"b", u"n", u"m", u",", ".", u"/", u"ALL"], + [u"SHIFT", u"SPACE", u"ą", u"ć", u"ę", u"ł", u"ń", u"ó", u"ś", u"ź", u"ż", u"OK"]] + self.shiftkeys_list = [ + [u"EXIT", u"!", u"@", u"#", u"$", u"%", u"^", u"&", u"(", u")", u"=", u"BACKSPACE"], + [u"Q", u"W", u"E", u"R", u"T", u"Y", u"U", u"I", u"O", u"P", u"*", u"]"], + [u"A", u"S", u"D", u"F", u"G", u"H", u"J", u"K", u"L", u"?", u'"', u"|"], + [u">", u"Z", u"X", u"C", u"V", u"B", u"N", u"M", u";", u":", u"_", u"CLEAR"], + [u"SHIFT", u"SPACE", u"Ą", u"Ć", u"Ę", u"Ł", u"Ń", u"Ó", u"Ś", u"Ź", u"Ż", u"OK"]] + self.nextLang = 'en_EN' + else: + self.keys_list = [ + [u"EXIT", u"1", u"2", u"3", u"4", u"5", u"6", u"7", u"8", u"9", u"0", u"BACKSPACE"], + [u"q", u"w", u"e", u"r", u"t", u"y", u"u", u"i", u"o", u"p", u"-", u"["], + [u"a", u"s", u"d", u"f", u"g", u"h", u"j", u"k", u"l", u";", u"'", u"\\"], + [u"<", u"z", u"x", u"c", u"v", u"b", u"n", u"m", u",", ".", u"/", u"ALL"], + [u"SHIFT", u"SPACE", u"OK", u"LEFT", u"RIGHT", u"*"]] + self.shiftkeys_list = [ + [u"EXIT", u"!", u"@", u"#", u"$", u"%", u"^", u"&", u"(", u")", u"=", u"BACKSPACE"], + [u"Q", u"W", u"E", u"R", u"T", u"Y", u"U", u"I", u"O", u"P", u"+", u"]"], + [u"A", u"S", u"D", u"F", u"G", u"H", u"J", u"K", u"L", u"?", u'"', u"|"], + [u">", u"Z", u"X", u"C", u"V", u"B", u"N", u"M", u";", u":", u"_", u"CLEAR"], + [u"SHIFT", u"SPACE", u"OK", u"LEFT", u"RIGHT", u"~"]] + self.lang = 'en_EN' + self.nextLang = 'de_DE' + self["country"].setText(self.lang) + self.max_key=47+len(self.keys_list[4]) + + def virtualKeyBoardEntryComponent(self, keys): + key_bg_width = self.key_bg and self.key_bg.size().width() or 45 + key_images = self.shiftMode and self.keyImagesShift or self.keyImages + res = [(keys)] + text = [] + x = 0 + for key in keys: + png = key_images.get(key, None) + if png: + width = png.size().width() + res.append(MultiContentEntryPixmapAlphaTest(pos=(x, 0), size=(width, 45), png=png)) + else: + width = key_bg_width + res.append(MultiContentEntryPixmapAlphaTest(pos=(x, 0), size=(width, 45), png=self.key_bg)) + text.append(MultiContentEntryText(pos=(x, 0), size=(width, 45), font=0, text=key.encode("utf-8"), flags=RT_HALIGN_CENTER | RT_VALIGN_CENTER)) + x += width + return res + text + + def buildVirtualKeyBoard(self): + self.previousSelectedKey = None + self.list = [] + for keys in self.shiftMode and self.shiftkeys_list or self.keys_list: + self.list.append(self.virtualKeyBoardEntryComponent(keys)) + self.markSelectedKey() + + def markSelectedKey(self): + if self.previousSelectedKey is not None: + self.list[self.previousSelectedKey /12] = self.list[self.previousSelectedKey /12][:-1] + width = self.key_sel.size().width() + x = self.list[self.selectedKey/12][self.selectedKey % 12 + 1][1] + self.list[self.selectedKey / 12].append(MultiContentEntryPixmapAlphaTest(pos=(x, 0), size=(width, 45), png=self.key_sel)) + self.previousSelectedKey = self.selectedKey + self["list"].setList(self.list) + + def backClicked(self): + self["text"].deleteBackward() + + def forwardClicked(self): + self["text"].deleteForward() + + def shiftClicked(self): + self.smsChar = None + self.shiftMode = not self.shiftMode + self.buildVirtualKeyBoard() + + def okClicked(self): + self.smsChar = None + text = (self.shiftMode and self.shiftkeys_list or self.keys_list)[self.selectedKey / 12][self.selectedKey % 12].encode("UTF-8") + + if text == "EXIT": + self.close(None) + + elif text == "BACKSPACE": + self["text"].deleteBackward() + + elif text == "ALL": + self["text"].markAll() + + elif text == "CLEAR": + self["text"].deleteAllChars() + self["text"].update() + + elif text == "SHIFT": + self.shiftClicked() + + elif text == "SPACE": + self["text"].char(" ".encode("UTF-8")) + + elif text == "OK": + self.close(self["text"].getText().encode("UTF-8")) + + elif text == "LEFT": + self["text"].left() + + elif text == "RIGHT": + self["text"].right() + + else: + self["text"].char(text) + + def ok(self): + self.close(self["text"].getText().encode("UTF-8")) + + def exit(self): + self.close(None) + + def cursorRight(self): + self["text"].right() + + def cursorLeft(self): + self["text"].left() + + def left(self): + self.smsChar = None + self.selectedKey = self.selectedKey / 12 * 12 + (self.selectedKey + 11) % 12 + if self.selectedKey > self.max_key: + self.selectedKey = self.max_key + self.markSelectedKey() + + def right(self): + self.smsChar = None + self.selectedKey = self.selectedKey / 12 * 12 + (self.selectedKey + 1) % 12 + if self.selectedKey > self.max_key: + self.selectedKey = self.selectedKey / 12 * 12 + self.markSelectedKey() + + def up(self): + self.smsChar = None + self.selectedKey -= 12 + if self.selectedKey < 0: + self.selectedKey = self.max_key / 12 * 12 + self.selectedKey % 12 + if self.selectedKey > self.max_key: + self.selectedKey -= 12 + self.markSelectedKey() + + def down(self): + self.smsChar = None + self.selectedKey += 12 + if self.selectedKey > self.max_key: + self.selectedKey = self.selectedKey % 12 + self.markSelectedKey() + + def keyNumberGlobal(self, number): + self.smsChar = self.sms.getKey(number) + self.selectAsciiKey(self.smsChar) + + def smsOK(self): + if self.smsChar and self.selectAsciiKey(self.smsChar): + print "pressing ok now" + self.okClicked() + + def keyGotAscii(self): + self.smsChar = None + if self.selectAsciiKey(str(unichr(getPrevAsciiCode()).encode('utf-8'))): + self.okClicked() + + def selectAsciiKey(self, char): + if char == " ": + char = "SPACE" + for keyslist in (self.shiftkeys_list, self.keys_list): + selkey = 0 + for keys in keyslist: + for key in keys: + if key == char: + self.selectedKey = selkey + if self.shiftMode != (keyslist is self.shiftkeys_list): + self.shiftMode = not self.shiftMode + self.buildVirtualKeyBoard() + else: + self.markSelectedKey() + return True + selkey += 1 + return False diff --git a/lib/python/Screens/Volume.py b/lib/python/Screens/Volume.py new file mode 100644 index 0000000..12e03d1 --- /dev/null +++ b/lib/python/Screens/Volume.py @@ -0,0 +1,14 @@ +from Screen import Screen +from Components.VolumeBar import VolumeBar + +class Volume(Screen): + def __init__(self, session): + Screen.__init__(self, session) + + self.volumeBar = VolumeBar() + + self["Volume"] = self.volumeBar + + def setValue(self, vol): + print "setValue", vol + self.volumeBar.setValue(vol) diff --git a/lib/python/Screens/Wizard.py b/lib/python/Screens/Wizard.py new file mode 100644 index 0000000..0091631 --- /dev/null +++ b/lib/python/Screens/Wizard.py @@ -0,0 +1,678 @@ +from Screen import Screen +from Screens.HelpMenu import HelpableScreen +from Screens.MessageBox import MessageBox +from Components.config import config, ConfigText, ConfigPassword, KEY_LEFT, KEY_RIGHT, KEY_HOME, KEY_END, KEY_0, KEY_DELETE, KEY_BACKSPACE, KEY_OK, KEY_TOGGLEOW, KEY_ASCII, KEY_TIMEOUT, KEY_NUMBERS + +from Components.Label import Label +from Components.Sources.StaticText import StaticText +from Components.Slider import Slider +from Components.ActionMap import NumberActionMap +from Components.MenuList import MenuList +from Components.ConfigList import ConfigList +from Components.Sources.List import List +from enigma import eTimer, eEnv + +from xml.sax import make_parser +from xml.sax.handler import ContentHandler + +class WizardSummary(Screen): + def __init__(self, session, parent): + Screen.__init__(self, session, parent) + self["text"] = StaticText("") + self.onShow.append(self.setCallback) + + def setCallback(self): + self.parent.setLCDTextCallback(self.setText) + + def setText(self, text): + self["text"].setText(text) + +class Wizard(Screen): + instance = None + + def createSummary(self): + print "WizardCreateSummary" + return WizardSummary + + class parseWizard(ContentHandler): + def __init__(self, wizard): + self.isPointsElement, self.isReboundsElement = 0, 0 + self.wizard = wizard + self.currContent = "" + self.lastStep = 0 + + def startElement(self, name, attrs): + #print "startElement", name + self.currContent = name + if (name == "step"): + self.lastStep += 1 + if attrs.has_key('id'): + id = str(attrs.get('id')) + else: + id = "" + #print "id:", id + if attrs.has_key('nextstep'): + nextstep = str(attrs.get('nextstep')) + else: + nextstep = None + if attrs.has_key('timeout'): + timeout = int(attrs.get('timeout')) + else: + timeout = None + if attrs.has_key('timeoutaction'): + timeoutaction = str(attrs.get('timeoutaction')) + else: + timeoutaction = 'nextpage' + + if attrs.has_key('timeoutstep'): + timeoutstep = str(attrs.get('timeoutstep')) + else: + timeoutstep = '' + self.wizard[self.lastStep] = {"id": id, "condition": "", "text": "", "timeout": timeout, "timeoutaction": timeoutaction, "timeoutstep": timeoutstep, "list": [], "config": {"screen": None, "args": None, "type": "" }, "code": "", "codeafter": "", "code_async": "", "codeafter_async": "", "nextstep": nextstep} + if attrs.has_key('laststep'): + self.wizard[self.lastStep]["laststep"] = str(attrs.get('laststep')) + elif (name == "text"): + self.wizard[self.lastStep]["text"] = str(attrs.get('value')).replace("\\n", "\n") + elif (name == "displaytext"): + self.wizard[self.lastStep]["displaytext"] = str(attrs.get('value')).replace("\\n", "\n") + elif (name == "list"): + if (attrs.has_key('type')): + if attrs["type"] == "dynamic": + self.wizard[self.lastStep]["dynamiclist"] = attrs.get("source") + #self.wizard[self.lastStep]["list"].append(("Hallo", "test")) + if (attrs.has_key("evaluation")): + #print "evaluation" + self.wizard[self.lastStep]["listevaluation"] = attrs.get("evaluation") + if (attrs.has_key("onselect")): + self.wizard[self.lastStep]["onselect"] = attrs.get("onselect") + elif (name == "listentry"): + self.wizard[self.lastStep]["list"].append((str(attrs.get('caption')), str(attrs.get('step')))) + elif (name == "config"): + type = str(attrs.get('type')) + self.wizard[self.lastStep]["config"]["type"] = type + if type == "ConfigList" or type == "standalone": + try: + exec "from Screens." + str(attrs.get('module')) + " import *" + except: + exec "from " + str(attrs.get('module')) + " import *" + + self.wizard[self.lastStep]["config"]["screen"] = eval(str(attrs.get('screen'))) + if (attrs.has_key('args')): + #print "has args" + self.wizard[self.lastStep]["config"]["args"] = str(attrs.get('args')) + elif type == "dynamic": + self.wizard[self.lastStep]["config"]["source"] = str(attrs.get('source')) + if (attrs.has_key('evaluation')): + self.wizard[self.lastStep]["config"]["evaluation"] = str(attrs.get('evaluation')) + elif (name == "code"): + self.async_code = attrs.has_key('async') and str(attrs.get('async')) == "yes" + if attrs.has_key('pos') and str(attrs.get('pos')) == "after": + self.codeafter = True + else: + self.codeafter = False + elif (name == "condition"): + pass + + def endElement(self, name): + self.currContent = "" + if name == 'code': + if self.async_code: + if self.codeafter: + self.wizard[self.lastStep]["codeafter_async"] = self.wizard[self.lastStep]["codeafter_async"].strip() + else: + self.wizard[self.lastStep]["code_async"] = self.wizard[self.lastStep]["code_async"].strip() + else: + if self.codeafter: + self.wizard[self.lastStep]["codeafter"] = self.wizard[self.lastStep]["codeafter"].strip() + else: + self.wizard[self.lastStep]["code"] = self.wizard[self.lastStep]["code"].strip() + elif name == 'condition': + self.wizard[self.lastStep]["condition"] = self.wizard[self.lastStep]["condition"].strip() + elif name == 'step': + #print "Step number", self.lastStep, ":", self.wizard[self.lastStep] + pass + + def characters(self, ch): + if self.currContent == "code": + if self.async_code: + if self.codeafter: + self.wizard[self.lastStep]["codeafter_async"] = self.wizard[self.lastStep]["codeafter_async"] + ch + else: + self.wizard[self.lastStep]["code_async"] = self.wizard[self.lastStep]["code_async"] + ch + else: + if self.codeafter: + self.wizard[self.lastStep]["codeafter"] = self.wizard[self.lastStep]["codeafter"] + ch + else: + self.wizard[self.lastStep]["code"] = self.wizard[self.lastStep]["code"] + ch + elif self.currContent == "condition": + self.wizard[self.lastStep]["condition"] = self.wizard[self.lastStep]["condition"] + ch + + def __init__(self, session, showSteps = True, showStepSlider = True, showList = True, showConfig = True): + Screen.__init__(self, session) + + self.isLastWizard = False # can be used to skip a "goodbye"-screen in a wizard + + self.stepHistory = [] + + self.wizard = {} + parser = make_parser() + if not isinstance(self.xmlfile, list): + self.xmlfile = [self.xmlfile] + print "Reading ", self.xmlfile + wizardHandler = self.parseWizard(self.wizard) + parser.setContentHandler(wizardHandler) + for xmlfile in self.xmlfile: + if xmlfile[0] != '/': + parser.parse(eEnv.resolve('${datadir}/enigma2/') + xmlfile) + else: + parser.parse(xmlfile) + + self.showSteps = showSteps + self.showStepSlider = showStepSlider + self.showList = showList + self.showConfig = showConfig + + self.numSteps = len(self.wizard) + self.currStep = self.getStepWithID("start") + 1 + + self.timeoutTimer = eTimer() + self.timeoutTimer.callback.append(self.timeoutCounterFired) + + self["text"] = Label() + + if showConfig: + self["config"] = ConfigList([], session = session) + + if self.showSteps: + self["step"] = Label() + + if self.showStepSlider: + self["stepslider"] = Slider(1, self.numSteps) + + if self.showList: + self.list = [] + self["list"] = List(self.list, enableWrapAround = True) + self["list"].onSelectionChanged.append(self.selChanged) + #self["list"] = MenuList(self.list, enableWrapAround = True) + + self.onShown.append(self.updateValues) + + self.configInstance = None + self.currentConfigIndex = None + + Wizard.instance = self + + self.lcdCallbacks = [] + + self.disableKeys = False + + self["actions"] = NumberActionMap(["WizardActions", "NumberActions", "ColorActions", "SetupActions", "InputAsciiActions", "KeyboardInputActions"], + { + "gotAsciiCode": self.keyGotAscii, + "ok": self.ok, + "back": self.back, + "left": self.left, + "right": self.right, + "up": self.up, + "down": self.down, + "red": self.red, + "green": self.green, + "yellow": self.yellow, + "blue":self.blue, + "deleteBackward": self.deleteBackward, + "deleteForward": self.deleteForward, + "1": self.keyNumberGlobal, + "2": self.keyNumberGlobal, + "3": self.keyNumberGlobal, + "4": self.keyNumberGlobal, + "5": self.keyNumberGlobal, + "6": self.keyNumberGlobal, + "7": self.keyNumberGlobal, + "8": self.keyNumberGlobal, + "9": self.keyNumberGlobal, + "0": self.keyNumberGlobal + }, -1) + + self["VirtualKB"] = NumberActionMap(["VirtualKeyboardActions"], + { + "showVirtualKeyboard": self.KeyText, + }, -2) + + self["VirtualKB"].setEnabled(False) + + def red(self): + print "red" + pass + + def green(self): + print "green" + pass + + def yellow(self): + print "yellow" + pass + + def blue(self): + print "blue" + pass + + def deleteForward(self): + self.resetCounter() + if (self.wizard[self.currStep]["config"]["screen"] != None): + self.configInstance.keyDelete() + elif (self.wizard[self.currStep]["config"]["type"] == "dynamic"): + self["config"].handleKey(KEY_DELETE) + print "deleteForward" + + def deleteBackward(self): + self.resetCounter() + if (self.wizard[self.currStep]["config"]["screen"] != None): + self.configInstance.keyBackspace() + elif (self.wizard[self.currStep]["config"]["type"] == "dynamic"): + self["config"].handleKey(KEY_BACKSPACE) + print "deleteBackward" + + def setLCDTextCallback(self, callback): + self.lcdCallbacks.append(callback) + + def back(self): + if self.disableKeys: + return + print "getting back..." + print "stepHistory:", self.stepHistory + if len(self.stepHistory) > 1: + self.currStep = self.stepHistory[-2] + self.stepHistory = self.stepHistory[:-2] + else: + self.session.openWithCallback(self.exitWizardQuestion, MessageBox, (_("Are you sure you want to exit this wizard?") ) ) + if self.currStep < 1: + self.currStep = 1 + print "currStep:", self.currStep + print "new stepHistory:", self.stepHistory + self.updateValues() + print "after updateValues stepHistory:", self.stepHistory + + def exitWizardQuestion(self, ret = False): + if (ret): + self.markDone() + self.exit() + + def markDone(self): + pass + + def exit(self): + Wizard.instance = None + self.close() + + def getStepWithID(self, id): + print "getStepWithID:", id + count = 0 + for x in self.wizard.keys(): + if self.wizard[x]["id"] == id: + print "result:", count + return count + count += 1 + print "result: nothing" + return 0 + + def finished(self, gotoStep = None, *args, **kwargs): + print "finished" + currStep = self.currStep + + if self.updateValues not in self.onShown: + self.onShown.append(self.updateValues) + + if self.showConfig: + if self.wizard[currStep]["config"]["type"] == "dynamic": + eval("self." + self.wizard[currStep]["config"]["evaluation"])() + + if self.showList: + if (len(self.wizard[currStep]["evaluatedlist"]) > 0): + print "current:", self["list"].current + nextStep = self["list"].current[1] + if (self.wizard[currStep].has_key("listevaluation")): + exec("self." + self.wizard[self.currStep]["listevaluation"] + "('" + nextStep + "')") + else: + self.currStep = self.getStepWithID(nextStep) + + print_now = True + if ((currStep == self.numSteps and self.wizard[currStep]["nextstep"] is None) or self.wizard[currStep]["id"] == "end"): # wizard finished + print "wizard finished" + self.markDone() + self.exit() + else: + self.codeafter = True + self.runCode(self.wizard[currStep]["codeafter"]) + self.prevStep = currStep + self.gotoStep = gotoStep + if not self.runCode(self.wizard[currStep]["codeafter_async"]): + self.afterAsyncCode() + else: + if self.updateValues in self.onShown: + self.onShown.remove(self.updateValues) + + if print_now: + print "Now: " + str(self.currStep) + + def ok(self): + print "OK" + if self.disableKeys: + return + currStep = self.currStep + + if self.showConfig: + if (self.wizard[currStep]["config"]["screen"] != None): + # TODO: don't die, if no run() is available + # there was a try/except here, but i can't see a reason + # for this. If there is one, please do a more specific check + # and/or a comment in which situation there is no run() + if callable(getattr(self.configInstance, "runAsync", None)): + if self.updateValues in self.onShown: + self.onShown.remove(self.updateValues) + self.configInstance.runAsync(self.finished) + return + else: + self.configInstance.run() + self.finished() + + def keyNumberGlobal(self, number): + if (self.wizard[self.currStep]["config"]["screen"] != None): + self.configInstance.keyNumberGlobal(number) + elif (self.wizard[self.currStep]["config"]["type"] == "dynamic"): + self["config"].handleKey(KEY_0 + number) + + def keyGotAscii(self): + if (self.wizard[self.currStep]["config"]["screen"] != None): + self["config"].handleKey(KEY_ASCII) + elif (self.wizard[self.currStep]["config"]["type"] == "dynamic"): + self["config"].handleKey(KEY_ASCII) + + def left(self): + self.resetCounter() + if (self.wizard[self.currStep]["config"]["screen"] != None): + self.configInstance.keyLeft() + elif (self.wizard[self.currStep]["config"]["type"] == "dynamic"): + self["config"].handleKey(KEY_LEFT) + print "left" + + def right(self): + self.resetCounter() + if (self.wizard[self.currStep]["config"]["screen"] != None): + self.configInstance.keyRight() + elif (self.wizard[self.currStep]["config"]["type"] == "dynamic"): + self["config"].handleKey(KEY_RIGHT) + print "right" + + def up(self): + self.resetCounter() + if (self.showConfig and self.wizard[self.currStep]["config"]["screen"] != None or self.wizard[self.currStep]["config"]["type"] == "dynamic"): + self["config"].instance.moveSelection(self["config"].instance.moveUp) + self.handleInputHelpers() + elif (self.showList and len(self.wizard[self.currStep]["evaluatedlist"]) > 0): + self["list"].selectPrevious() + if self.wizard[self.currStep].has_key("onselect"): + print "current:", self["list"].current + self.selection = self["list"].current[-1] + #self.selection = self.wizard[self.currStep]["evaluatedlist"][self["list"].l.getCurrentSelectionIndex()][1] + exec("self." + self.wizard[self.currStep]["onselect"] + "()") + print "up" + + def down(self): + self.resetCounter() + if (self.showConfig and self.wizard[self.currStep]["config"]["screen"] != None or self.wizard[self.currStep]["config"]["type"] == "dynamic"): + self["config"].instance.moveSelection(self["config"].instance.moveDown) + self.handleInputHelpers() + elif (self.showList and len(self.wizard[self.currStep]["evaluatedlist"]) > 0): + #self["list"].instance.moveSelection(self["list"].instance.moveDown) + self["list"].selectNext() + if self.wizard[self.currStep].has_key("onselect"): + print "current:", self["list"].current + #self.selection = self.wizard[self.currStep]["evaluatedlist"][self["list"].l.getCurrentSelectionIndex()][1] + #exec("self." + self.wizard[self.currStep]["onselect"] + "()") + self.selection = self["list"].current[-1] + #self.selection = self.wizard[self.currStep]["evaluatedlist"][self["list"].l.getCurrentSelectionIndex()][1] + exec("self." + self.wizard[self.currStep]["onselect"] + "()") + print "down" + + def selChanged(self): + self.resetCounter() + + if (self.showConfig and self.wizard[self.currStep]["config"]["screen"] != None): + self["config"].instance.moveSelection(self["config"].instance.moveUp) + elif (self.showList and len(self.wizard[self.currStep]["evaluatedlist"]) > 0): + if self.wizard[self.currStep].has_key("onselect"): + self.selection = self["list"].current[-1] + print "self.selection:", self.selection + exec("self." + self.wizard[self.currStep]["onselect"] + "()") + + def resetCounter(self): + self.timeoutCounter = self.wizard[self.currStep]["timeout"] + + def runCode(self, code): + if code != "": + print "code", code + exec(code) + return True + return False + + def getTranslation(self, text): + return _(text) + + def updateText(self, firstset = False): + text = self.getTranslation(self.wizard[self.currStep]["text"]) + if "[timeout]" in text: + text = text.replace("[timeout]", str(self.timeoutCounter)) + self["text"].setText(text) + else: + if firstset: + self["text"].setText(text) + + def updateValues(self): + print "Updating values in step " + str(self.currStep) + # calling a step which doesn't exist can only happen if the condition in the last step is not fulfilled + # if a non-existing step is called, end the wizard + if self.currStep > len(self.wizard): + self.markDone() + self.exit() + return + + self.timeoutTimer.stop() + + if self.configInstance is not None: + # remove callbacks + self.configInstance["config"].onSelectionChanged = [] + del self.configInstance["config"] + self.configInstance.doClose() + self.configInstance = None + + self.condition = True + exec (self.wizard[self.currStep]["condition"]) + if not self.condition: + print "keys*******************:", self.wizard[self.currStep].keys() + if self.wizard[self.currStep].has_key("laststep"): # exit wizard, if condition of laststep doesn't hold + self.markDone() + self.exit() + return + else: + self.currStep += 1 + self.updateValues() + else: + if self.wizard[self.currStep].has_key("displaytext"): + displaytext = self.wizard[self.currStep]["displaytext"] + print "set LCD text" + for x in self.lcdCallbacks: + x(displaytext) + if len(self.stepHistory) == 0 or self.stepHistory[-1] != self.currStep: + self.stepHistory.append(self.currStep) + print "wizard step:", self.wizard[self.currStep] + + if self.showSteps: + self["step"].setText(self.getTranslation("Step ") + str(self.currStep) + "/" + str(self.numSteps)) + if self.showStepSlider: + self["stepslider"].setValue(self.currStep) + + if self.wizard[self.currStep]["timeout"] is not None: + self.resetCounter() + self.timeoutTimer.start(1000) + + print "wizard text", self.getTranslation(self.wizard[self.currStep]["text"]) + self.updateText(firstset = True) + if self.wizard[self.currStep].has_key("displaytext"): + displaytext = self.wizard[self.currStep]["displaytext"] + print "set LCD text" + for x in self.lcdCallbacks: + x(displaytext) + + self.codeafter=False + self.runCode(self.wizard[self.currStep]["code"]) + if self.runCode(self.wizard[self.currStep]["code_async"]): + if self.updateValues in self.onShown: + self.onShown.remove(self.updateValues) + else: + self.afterAsyncCode() + + def afterAsyncCode(self): + if not self.updateValues in self.onShown: + self.onShown.append(self.updateValues) + + if self.codeafter: + if self.wizard[self.prevStep]["nextstep"] is not None: + self.currStep = self.getStepWithID(self.wizard[self.prevStep]["nextstep"]) + if self.gotoStep is not None: + self.currStep = self.getStepWithID(self.gotoStep) + self.currStep += 1 + self.updateValues() + print "Now: " + str(self.currStep) + else: + if self.showList: + print "showing list,", self.currStep + for renderer in self.renderer: + rootrenderer = renderer + while renderer.source is not None: + print "self.list:", self["list"] + if renderer.source is self["list"]: + print "setZPosition" + rootrenderer.instance.setZPosition(1) + renderer = renderer.source + + #self["list"].instance.setZPosition(1) + self.list = [] + if (self.wizard[self.currStep].has_key("dynamiclist")): + print "dynamic list, calling", self.wizard[self.currStep]["dynamiclist"] + newlist = eval("self." + self.wizard[self.currStep]["dynamiclist"] + "()") + #self.wizard[self.currStep]["evaluatedlist"] = [] + for entry in newlist: + #self.wizard[self.currStep]["evaluatedlist"].append(entry) + self.list.append(entry) + #del self.wizard[self.currStep]["dynamiclist"] + if (len(self.wizard[self.currStep]["list"]) > 0): + #self["list"].instance.setZPosition(2) + for x in self.wizard[self.currStep]["list"]: + self.list.append((self.getTranslation(x[0]), x[1])) + self.wizard[self.currStep]["evaluatedlist"] = self.list + self["list"].list = self.list + self["list"].index = 0 + else: + self["list"].hide() + + if self.showConfig: + print "showing config" + self["config"].instance.setZPosition(1) + if self.wizard[self.currStep]["config"]["type"] == "dynamic": + print "config type is dynamic" + self["config"].instance.setZPosition(2) + self["config"].l.setList(eval("self." + self.wizard[self.currStep]["config"]["source"])()) + elif (self.wizard[self.currStep]["config"]["screen"] != None): + if self.wizard[self.currStep]["config"]["type"] == "standalone": + print "Type is standalone" + self.session.openWithCallback(self.ok, self.wizard[self.currStep]["config"]["screen"]) + else: + self["config"].instance.setZPosition(2) + print "wizard screen", self.wizard[self.currStep]["config"]["screen"] + if self.wizard[self.currStep]["config"]["args"] == None: + self.configInstance = self.session.instantiateDialog(self.wizard[self.currStep]["config"]["screen"]) + else: + self.configInstance = self.session.instantiateDialog(self.wizard[self.currStep]["config"]["screen"], eval(self.wizard[self.currStep]["config"]["args"])) + self["config"].l.setList(self.configInstance["config"].list) + callbacks = self.configInstance["config"].onSelectionChanged + self.configInstance["config"].destroy() + print "clearConfigList", self.configInstance["config"], self["config"] + self.configInstance["config"] = self["config"] + self.configInstance["config"].onSelectionChanged = callbacks + print "clearConfigList", self.configInstance["config"], self["config"] + else: + self["config"].l.setList([]) + self.handleInputHelpers() + + + else: + if self.has_key("config"): + self["config"].hide() + + def timeoutCounterFired(self): + self.timeoutCounter -= 1 + print "timeoutCounter:", self.timeoutCounter + if self.timeoutCounter == 0: + if self.wizard[self.currStep]["timeoutaction"] == "selectnext": + print "selection next item" + self.down() + else: + if self.wizard[self.currStep]["timeoutaction"] == "changestep": + self.finished(gotoStep = self.wizard[self.currStep]["timeoutstep"]) + self.updateText() + + def handleInputHelpers(self): + if self["config"].getCurrent() is not None: + if isinstance(self["config"].getCurrent()[1], ConfigText) or isinstance(self["config"].getCurrent()[1], ConfigPassword): + if self.has_key("VKeyIcon"): + self["VirtualKB"].setEnabled(True) + self["VKeyIcon"].boolean = True + if self.has_key("HelpWindow"): + if self["config"].getCurrent()[1].help_window.instance is not None: + helpwindowpos = self["HelpWindow"].getPosition() + from enigma import ePoint + self["config"].getCurrent()[1].help_window.instance.move(ePoint(helpwindowpos[0],helpwindowpos[1])) + else: + if self.has_key("VKeyIcon"): + self["VirtualKB"].setEnabled(False) + self["VKeyIcon"].boolean = False + else: + if self.has_key("VKeyIcon"): + self["VirtualKB"].setEnabled(False) + self["VKeyIcon"].boolean = False + + def KeyText(self): + from Screens.VirtualKeyBoard import VirtualKeyBoard + self.currentConfigIndex = self["config"].getCurrentIndex() + self.session.openWithCallback(self.VirtualKeyBoardCallback, VirtualKeyBoard, title = self["config"].getCurrent()[0], text = self["config"].getCurrent()[1].getValue()) + + def VirtualKeyBoardCallback(self, callback = None): + if callback is not None and len(callback): + if isinstance(self["config"].getCurrent()[1], ConfigText) or isinstance(self["config"].getCurrent()[1], ConfigPassword): + if self.has_key("HelpWindow"): + if self["config"].getCurrent()[1].help_window.instance is not None: + helpwindowpos = self["HelpWindow"].getPosition() + from enigma import ePoint + self["config"].getCurrent()[1].help_window.instance.move(ePoint(helpwindowpos[0],helpwindowpos[1])) + self["config"].instance.moveSelectionTo(self.currentConfigIndex) + self["config"].setCurrentIndex(self.currentConfigIndex) + self["config"].getCurrent()[1].setValue(callback) + self["config"].invalidate(self["config"].getCurrent()) + + +class WizardManager: + def __init__(self): + self.wizards = [] + + def registerWizard(self, wizard, precondition, priority = 0): + self.wizards.append((wizard, precondition, priority)) + + def getWizards(self): + # x[1] is precondition + for wizard in self.wizards: + wizard[0].isLastWizard = False + if len(self.wizards) > 0: + self.wizards[-1][0].isLastWizard = True + return [(x[2], x[0]) for x in self.wizards if x[1] == 1] + +wizardManager = WizardManager() diff --git a/lib/python/Screens/WizardLanguage.py b/lib/python/Screens/WizardLanguage.py new file mode 100644 index 0000000..918da60 --- /dev/null +++ b/lib/python/Screens/WizardLanguage.py @@ -0,0 +1,31 @@ +from Wizard import Wizard +from Components.Label import Label +from Components.Language import language + +class WizardLanguage(Wizard): + def __init__(self, session, showSteps = True, showStepSlider = True, showList = True, showConfig = True): + Wizard.__init__(self, session, showSteps, showStepSlider, showList, showConfig) + self["languagetext"] = Label() + self.updateLanguageDescription() + + def red(self): + self.resetCounter() + self.languageSelect() + + def languageSelect(self): + print "languageSelect" + newlanguage = language.getActiveLanguageIndex() + 1 + if newlanguage >= len(language.getLanguageList()): + newlanguage = 0 + language.activateLanguageIndex(newlanguage) + self.updateTexts() + + def updateLanguageDescription(self): + print language.getLanguageList()[language.getActiveLanguageIndex()] + self["languagetext"].setText(self.getTranslation(language.getLanguageList()[language.getActiveLanguageIndex()][1][0])) + + def updateTexts(self): + print "updateTexts" + self.updateText(firstset = True) + self.updateValues() + self.updateLanguageDescription() diff --git a/lib/python/Screens/__init__.py b/lib/python/Screens/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lib/python/Tools/ASCIItranslit.py b/lib/python/Tools/ASCIItranslit.py new file mode 100644 index 0000000..a24d34c --- /dev/null +++ b/lib/python/Tools/ASCIItranslit.py @@ -0,0 +1,271 @@ +# -*- coding:utf-8 -*- + +ASCIItranslit = { \ +0x0022: "''", \ +0x002A: "_", \ +0x002F: "_", \ +0x003A: "_", \ +0x003C: "_", \ +0x003D: "_", \ +0x003E: "_", \ +0x003F: "_", \ +0x005C: "_", \ +0x007C: "_", \ +0x007F: "", \ +0x00A0: "_", \ +0x00A1: "!", \ +0x00A2: "c", \ +0x00A3: "lb", \ +0x00A4: "", \ +0x00A5: "yen", \ +0x00A6: "I", \ +0x00A7: "SS", \ +0x00A8: "'", \ +0x00A9: "(c)", \ +0x00AA: "a", \ +0x00AB: "<<", \ +0x00AC: "not", \ +0x00AD: "-", \ +0x00AE: "(R)", \ +0x00AF: "", \ +0x00B0: "^0", \ +0x00B1: "+-", \ +0x00B2: "^2", \ +0x00B3: "^3", \ +0x00B4: "'", \ +0x00B5: "u", \ +0x00B6: "P", \ +0x00B7: ".", \ +0x00B8: ",", \ +0x00B9: "^1", \ +0x00BA: "o", \ +0x00BB: ">>", \ +0x00BC: "1_4 ", \ +0x00BD: "1_2 ", \ +0x00BE: "3_4 ", \ +0x00BF: "_", \ +0x00C0: "`A", \ +0x00C1: "'A", \ +0x00C2: "^A", \ +0x00C3: "~A", \ +0x00C4: "Ae", \ +0x00C5: "A", \ +0x00C6: "AE", \ +0x00C7: "C", \ +0x00C8: "`E", \ +0x00C9: "'E", \ +0x00CA: "^E", \ +0x00CB: "E", \ +0x00CC: "`I", \ +0x00CD: "'I", \ +0x00CE: "^I", \ +0x00CF: "I", \ +0x00D0: "D", \ +0x00D1: "~N", \ +0x00D2: "`O", \ +0x00D3: "'O", \ +0x00D4: "^O", \ +0x00D5: "~O", \ +0x00D6: "Oe", \ +0x00D7: "x", \ +0x00D8: "O", \ +0x00D9: "`U", \ +0x00DA: "'U", \ +0x00DB: "^U", \ +0x00DC: "Ue", \ +0x00DD: "'Y", \ +0x00DE: "Th", \ +0x00DF: "ss", \ +0x00E0: "`a", \ +0x00E1: "'a", \ +0x00E2: "^a", \ +0x00E3: "~a", \ +0x00E4: "AE", \ +0x00E5: "a", \ +0x00E6: "ae", \ +0x00E7: "c", \ +0x00E8: "`e", \ +0x00E9: "'e", \ +0x00EA: "^e", \ +0x00EB: "e", \ +0x00EC: "`i", \ +0x00ED: "'i", \ +0x00EE: "^i", \ +0x00EF: "i", \ +0x00F0: "d", \ +0x00F1: "~n", \ +0x00F2: "`o", \ +0x00F3: "'o", \ +0x00F4: "^o", \ +0x00F5: "~o", \ +0x00F6: "oe", \ +0x00F7: "_", \ +0x00F8: "o", \ +0x00F9: "`u", \ +0x00FA: "'u", \ +0x00FB: "^u", \ +0x00FC: "ue", \ +0x00FD: "'y", \ +0x00FE: "th", \ +0x00FF: "Y", \ +0x0100: "A", \ +0x0101: "a", \ +0x0102: "A", \ +0x0103: "a", \ +0x0104: "A", \ +0x0105: "a", \ +0x0106: "'C", \ +0x0107: "'c", \ +0x0108: "^C", \ +0x0109: "^c", \ +0x010A: "C", \ +0x010B: "c", \ +0x010C: "C", \ +0x010D: "c", \ +0x010E: "D", \ +0x010F: "d", \ +0x0110: "D", \ +0x0111: "d", \ +0x0112: "E", \ +0x0113: "e", \ +0x0114: "E", \ +0x0115: "e", \ +0x0116: "E", \ +0x0117: "e", \ +0x0118: "E", \ +0x0119: "e", \ +0x011A: "E", \ +0x011B: "e", \ +0x011C: "^G", \ +0x011D: "^g", \ +0x011E: "G", \ +0x011F: "g", \ +0x0120: "G", \ +0x0121: "g", \ +0x0122: "G", \ +0x0123: "g", \ +0x0124: "^H", \ +0x0125: "^h", \ +0x0126: "H", \ +0x0127: "h", \ +0x0128: "~I", \ +0x0129: "~i", \ +0x012A: "I", \ +0x012B: "i", \ +0x012C: "I", \ +0x012D: "i", \ +0x012E: "I", \ +0x012F: "i", \ +0x0130: "I", \ +0x0131: "i", \ +0x0132: "IJ", \ +0x0133: "ij", \ +0x0134: "^J", \ +0x0135: "^j", \ +0x0136: "K", \ +0x0137: "k", \ +0x0138: "", \ +0x0139: "L", \ +0x013A: "l", \ +0x013B: "L", \ +0x013C: "l", \ +0x013D: "L", \ +0x013E: "l", \ +0x013F: "L", \ +0x0140: "l", \ +0x0141: "L", \ +0x0142: "l", \ +0x0143: "'N", \ +0x0144: "'n", \ +0x0145: "N", \ +0x0146: "n", \ +0x0147: "N", \ +0x0148: "n", \ +0x0149: "n", \ +0x014A: "_", \ +0x014B: "_", \ +0x014C: "O", \ +0x014D: "o", \ +0x014E: "O", \ +0x014F: "o", \ +0x0150: "''o", \ +0x0152: "OE", \ +0x0153: "oe", \ +0x0154: "'R", \ +0x0155: "'r", \ +0x0156: "R", \ +0x0157: "r", \ +0x0158: "R", \ +0x0159: "r", \ +0x015A: "'s", \ +0x015B: "'s", \ +0x015C: "^S", \ +0x015D: "^s", \ +0x015E: "S", \ +0x015F: "s", \ +0x0160: "S", \ +0x0161: "s", \ +0x0162: "T", \ +0x0163: "t", \ +0x0164: "T", \ +0x0165: "t", \ +0x0166: "T", \ +0x0167: "t", \ +0x0168: "~U", \ +0x0169: "~u", \ +0x016A: "U", \ +0x016B: "u", \ +0x016C: "U", \ +0x016D: "u", \ +0x016E: "U", \ +0x016F: "u", \ +0x0170: "''u", \ +0x0172: "U", \ +0x0173: "u", \ +0x0174: "^W", \ +0x0175: "^w", \ +0x0176: "^Y", \ +0x0177: "^y", \ +0x0178: "Y", \ +0x0179: "'Z", \ +0x017A: "'z", \ +0x017B: "Z", \ +0x017C: "z", \ +0x017D: "Z", \ +0x017E: "z", \ +0x017F: "s", \ +0x018F: "_", \ +0x0192: "f", \ +0x01C4: "DZ", \ +0x01C5: "DZ", \ +0x01C6: "DZ", \ +0x01C7: "LJ", \ +0x01C8: "Lj", \ +0x01C9: "lj", \ +0x01CA: "NJ", \ +0x01CB: "Nj", \ +0x01CC: "nj", \ +0x01F1: "DZ", \ +0x01F2: "Dz", \ +0x01F3: "dz", \ +0x0218: "S", \ +0x0219: "s", \ +0x021A: "T", \ +0x021B: "t", \ +0x0259: "_", \ +0x20AC: "EUR" } + +def legacyEncode(string): + string2 = "" + for z, char in enumerate(string.decode("utf-8")): + i = ord(char) + if i < 33: + string2 += "_" + elif i in ASCIItranslit: + string2 += ASCIItranslit[i] + else: + try: + string2 += char.encode('ascii', 'strict') + except: + string2 += "_" + return string2.upper() diff --git a/lib/python/Tools/Alternatives.py b/lib/python/Tools/Alternatives.py new file mode 100644 index 0000000..25913f2 --- /dev/null +++ b/lib/python/Tools/Alternatives.py @@ -0,0 +1,18 @@ +from enigma import eServiceCenter, eServiceReference + +def getAlternativeChannels(service): + alternativeServices = eServiceCenter.getInstance().list(eServiceReference(service)) + return alternativeServices and alternativeServices.getContent("S", True) + +def CompareWithAlternatives(serviceA, serviceB): + return serviceA and serviceB and (\ + serviceA == serviceB or\ + serviceA.startswith('1:134:') and serviceB in getAlternativeChannels(serviceA) or\ + serviceB.startswith('1:134:') and serviceA in getAlternativeChannels(serviceB)) + +def GetWithAlternative(service): + if service.startswith('1:134:'): + channels = getAlternativeChannels(service) + if channels: + return channels[0] + return service \ No newline at end of file diff --git a/lib/python/Tools/BoundFunction.py b/lib/python/Tools/BoundFunction.py new file mode 100644 index 0000000..c84a3c8 --- /dev/null +++ b/lib/python/Tools/BoundFunction.py @@ -0,0 +1,9 @@ +class boundFunction: + def __init__(self, fnc, *args, **kwargs): + self.fnc = fnc + self.args = args + self.kwargs = kwargs + def __call__(self, *args, **kwargs): + newkwargs = self.kwargs + newkwargs.update(kwargs) + return self.fnc(*self.args + args, **newkwargs) diff --git a/lib/python/Tools/CList.py b/lib/python/Tools/CList.py new file mode 100644 index 0000000..aa0c6e8 --- /dev/null +++ b/lib/python/Tools/CList.py @@ -0,0 +1,7 @@ +class CList(list): + def __getattr__(self, attr): + return CList([getattr(a, attr) for a in self]) + + def __call__(self, *args, **kwargs): + for x in self: + x(*args, **kwargs) diff --git a/lib/python/Tools/Directories.py b/lib/python/Tools/Directories.py new file mode 100644 index 0000000..2e84926 --- /dev/null +++ b/lib/python/Tools/Directories.py @@ -0,0 +1,370 @@ +# -*- coding: utf-8 -*- +import os +from os import mkdir, rmdir, system, walk, stat as os_stat, listdir, readlink, makedirs, error as os_error, symlink, access, F_OK, R_OK, W_OK, rename as os_rename +from stat import S_IMODE +from re import compile +from enigma import eEnv + +try: + from os import chmod + have_chmod = True +except: + have_chmod = False + +try: + from os import utime + have_utime = True +except: + have_utime = False + +SCOPE_TRANSPONDERDATA = 0 +SCOPE_SYSETC = 1 +SCOPE_FONTS = 2 +SCOPE_SKIN = 3 +SCOPE_SKIN_IMAGE = 4 +SCOPE_USERETC = 5 +SCOPE_CONFIG = 6 +SCOPE_LANGUAGE = 7 +SCOPE_HDD = 8 +SCOPE_PLUGINS = 9 +SCOPE_MEDIA = 10 +SCOPE_PLAYLIST = 11 +SCOPE_CURRENT_SKIN = 12 +SCOPE_METADIR = 16 +SCOPE_CURRENT_PLUGIN = 17 + +PATH_CREATE = 0 +PATH_DONTCREATE = 1 +PATH_FALLBACK = 2 +defaultPaths = { + SCOPE_TRANSPONDERDATA: (eEnv.resolve("${sysconfdir}/"), PATH_DONTCREATE), + SCOPE_SYSETC: (eEnv.resolve("${sysconfdir}/"), PATH_DONTCREATE), + SCOPE_FONTS: (eEnv.resolve("${datadir}/fonts/"), PATH_DONTCREATE), + SCOPE_CONFIG: (eEnv.resolve("${sysconfdir}/enigma2/"), PATH_CREATE), + SCOPE_PLUGINS: (eEnv.resolve("${libdir}/enigma2/python/Plugins/"), PATH_CREATE), + + SCOPE_LANGUAGE: (eEnv.resolve("${datadir}/enigma2/po/"), PATH_DONTCREATE), + + SCOPE_SKIN: (eEnv.resolve("${datadir}/enigma2/"), PATH_DONTCREATE), + SCOPE_SKIN_IMAGE: (eEnv.resolve("${datadir}/enigma2/"), PATH_DONTCREATE), + SCOPE_HDD: ("/hdd/movie/", PATH_DONTCREATE), + SCOPE_MEDIA: ("/media/", PATH_DONTCREATE), + SCOPE_PLAYLIST: (eEnv.resolve("${sysconfdir}/enigma2/playlist/"), PATH_CREATE), + + SCOPE_USERETC: ("", PATH_DONTCREATE), # user home directory + + SCOPE_METADIR: (eEnv.resolve("${datadir}/meta"), PATH_CREATE), + } + +FILE_COPY = 0 # copy files from fallback dir to the basedir +FILE_MOVE = 1 # move files +PATH_COPY = 2 # copy the complete fallback dir to the basedir +PATH_MOVE = 3 # move the fallback dir to the basedir (can be used for changes in paths) +fallbackPaths = { + SCOPE_CONFIG: [("/home/root/", FILE_MOVE), + (eEnv.resolve("${datadir}/enigma2/defaults/"), FILE_COPY)], + SCOPE_HDD: [("/hdd/movies", PATH_MOVE)] + } + +def resolveFilename(scope, base = "", path_prefix = None): + if base.startswith("~/"): + # you can only use the ~/ if we have a prefix directory + assert path_prefix is not None + base = os.path.join(path_prefix, base[2:]) + + # don't resolve absolute paths + if base.startswith('/'): + return base + + if scope == SCOPE_CURRENT_SKIN: + from Components.config import config + # allow files in the config directory to replace skin files + tmp = defaultPaths[SCOPE_CONFIG][0] + if base and pathExists(tmp + base): + path = tmp + else: + tmp = defaultPaths[SCOPE_SKIN][0] + pos = config.skin.primary_skin.value.rfind('/') + if pos != -1: + #if basefile is not available use default skin path as fallback + tmpfile = tmp+config.skin.primary_skin.value[:pos+1] + base + if pathExists(tmpfile): + path = tmp+config.skin.primary_skin.value[:pos+1] + else: + path = tmp + else: + path = tmp + + elif scope == SCOPE_CURRENT_PLUGIN: + tmp = defaultPaths[SCOPE_PLUGINS] + from Components.config import config + skintmp = defaultPaths[SCOPE_SKIN] + pos = config.skin.primary_skin.value.rfind('/') + if pos != -1: + #if basefile is not available inside current skin path, use the original provided file as fallback + skintmpfile = skintmp[0]+config.skin.primary_skin.value[:pos+1] + base + if fileExists(skintmpfile): + path = skintmp[0]+config.skin.primary_skin.value[:pos+1] + else: + path = tmp[0] + else: + path = tmp[0] + else: + tmp = defaultPaths[scope] + path = tmp[0] + + flags = tmp[1] + + if flags == PATH_CREATE: + if not pathExists(path): + try: + mkdir(path) + except OSError: + print "resolveFilename: Couldn't create %s" % path + return None + + fallbackPath = fallbackPaths.get(scope) + + if fallbackPath and not fileExists(path + base): + for x in fallbackPath: + try: + if x[1] == FILE_COPY: + if fileExists(x[0] + base): + try: + os.link(x[0] + base, path + base) + except: + system("cp " + x[0] + base + " " + path + base) + break + elif x[1] == FILE_MOVE: + if fileExists(x[0] + base): + os.rename(x[0] + base, path + base) + break + elif x[1] == PATH_COPY: + if pathExists(x[0]): + if not pathExists(defaultPaths[scope][0]): + mkdir(path) + system("cp -a " + x[0] + "* " + path) + break + elif x[1] == PATH_MOVE: + if pathExists(x[0]): + os.rename(x[0], path + base) + break + except Exception, e: + print "[D] Failed to recover %s:" % (path+base), e + + # FIXME: we also have to handle DATADIR etc. here. + return path + base + # this is only the BASE - an extension must be added later. + +pathExists = os.path.exists +isMount = os.path.ismount + +def defaultRecordingLocation(candidate=None): + if candidate and os.path.exists(candidate): + return candidate + # First, try whatever /hdd points to, or /media/hdd + try: + path = os.readlink('/hdd') + except: + path = '/media/hdd' + if not os.path.exists(path): + path = '' + # Find the largest local disk + from Components import Harddisk + mounts = [m for m in Harddisk.getProcMounts() if m[1].startswith('/media/')] + biggest = 0 + havelocal = False + for candidate in mounts: + try: + islocal = candidate[1].startswith('/dev/') # Good enough + stat = os.statvfs(candidate[1]) + # Free space counts double + size = (stat.f_blocks + stat.f_bavail) * stat.f_bsize + if (islocal and not havelocal) or ((islocal or not havelocal) and (size > biggest)): + path = candidate[1] + havelocal = islocal + biggest = size + except Exception, e: + print "[DRL]", e + if path: + # If there's a movie subdir, we'd probably want to use that. + movie = os.path.join(path, 'movie') + if os.path.isdir(movie): + path = movie + if not path.endswith('/'): + path += '/' # Bad habits die hard, old code relies on this + return path + + +def createDir(path, makeParents = False): + try: + if makeParents: + makedirs(path) + else: + mkdir(path) + except: + return 0 + else: + return 1 + +def removeDir(path): + try: + rmdir(path) + except: + return 0 + else: + return 1 + +def fileExists(f, mode='r'): + if mode == 'r': + acc_mode = R_OK + elif mode == 'w': + acc_mode = W_OK + else: + acc_mode = F_OK + return access(f, acc_mode) + +def fileCheck(f, mode='r'): + return fileExists(f, mode) and f + +def getRecordingFilename(basename, dirname = None): + # filter out non-allowed characters + non_allowed_characters = "/.\\:*?<>|\"" + filename = "" + + basename = basename.replace('\xc2\x86', '').replace('\xc2\x87', '') + + for c in basename: + if c in non_allowed_characters or ord(c) < 32: + c = "_" + filename += c + + # max filename length for ext4 is 255 (minus 8 characters for .ts.meta) + filename = filename[:247] + + if dirname is not None: + if not dirname.startswith('/'): + dirname = os.path.join(defaultRecordingLocation(), dirname) + else: + dirname = defaultRecordingLocation() + filename = os.path.join(dirname, filename) + + i = 0 + while True: + path = filename + if i > 0: + path += "_%03d" % i + try: + open(path + ".ts") + i += 1 + except IOError: + return path + +# this is clearly a hack: +def InitFallbackFiles(): + resolveFilename(SCOPE_CONFIG, "userbouquet.favourites.tv") + resolveFilename(SCOPE_CONFIG, "bouquets.tv") + resolveFilename(SCOPE_CONFIG, "userbouquet.favourites.radio") + resolveFilename(SCOPE_CONFIG, "bouquets.radio") + +# returns a list of tuples containing pathname and filename matching the given pattern +# example-pattern: match all txt-files: ".*\.txt$" +def crawlDirectory(directory, pattern): + list = [] + if directory: + expression = compile(pattern) + for root, dirs, files in walk(directory): + for file in files: + if expression.match(file) is not None: + list.append((root, file)) + return list + +def copyfile(src, dst): + try: + f1 = open(src, "rb") + if os.path.isdir(dst): + dst = os.path.join(dst, os.path.basename(src)) + f2 = open(dst, "w+b") + while True: + buf = f1.read(16*1024) + if not buf: + break + f2.write(buf) + st = os_stat(src) + mode = S_IMODE(st.st_mode) + if have_chmod: + chmod(dst, mode) + if have_utime: + utime(dst, (st.st_atime, st.st_mtime)) + except: + print "copy", src, "to", dst, "failed!" + return -1 + return 0 + +def copytree(src, dst, symlinks=False): + names = listdir(src) + if os.path.isdir(dst): + dst = os.path.join(dst, os.path.basename(src)) + if not os.path.isdir(dst): + mkdir(dst) + else: + makedirs(dst) + for name in names: + srcname = os.path.join(src, name) + dstname = os.path.join(dst, name) + try: + if symlinks and os.path.islink(srcname): + linkto = readlink(srcname) + symlink(linkto, dstname) + elif os.path.isdir(srcname): + copytree(srcname, dstname, symlinks) + else: + copyfile(srcname, dstname) + except: + print "dont copy srcname (no file or link or folder)" + try: + st = os_stat(src) + mode = S_IMODE(st.st_mode) + if have_chmod: + chmod(dst, mode) + if have_utime: + utime(dst, (st.st_atime, st.st_mtime)) + except: + print "copy stats for", src, "failed!" + +# Renames files or if source and destination are on different devices moves them in background +# input list of (source, destination) +def moveFiles(fileList): + movedList = [] + try: + try: + for item in fileList: + os_rename(item[0], item[1]) + movedList.append(item) + except OSError, e: + if e.errno == 18: + print "[Directories] cannot rename across devices, trying slow move" + import Screens.CopyFiles + Screens.CopyFiles.moveFiles(fileList, item[0]) + print "[Directories] Moving in background..." + else: + raise + except Exception, e: + print "[Directories] Failed move:", e + for item in movedList: + try: + os_rename(item[1], item[0]) + except: + print "[Directories] Failed to undo move:", item + raise + +def getSize(path, pattern=".*"): + path_size = 0 + if os.path.isdir(path): + files = crawlDirectory(path, pattern) + for file in files: + filepath = os.path.join(file[0], file[1]) + path_size += os.path.getsize(filepath) + elif os.path.isfile(path): + path_size = os.path.getsize(path) + return path_size diff --git a/lib/python/Tools/Downloader.py b/lib/python/Tools/Downloader.py new file mode 100644 index 0000000..7649cf9 --- /dev/null +++ b/lib/python/Tools/Downloader.py @@ -0,0 +1,53 @@ +from twisted.web import client +from twisted.internet import reactor, defer +from twisted.python import failure + +class HTTPProgressDownloader(client.HTTPDownloader): + def __init__(self, url, outfile, headers=None): + client.HTTPDownloader.__init__(self, url, outfile, headers=headers, agent="STB HTTP Downloader") + self.status = None + self.progress_callback = None + self.deferred = defer.Deferred() + + def noPage(self, reason): + if self.status == "304": + print reason.getErrorMessage() + client.HTTPDownloader.page(self, "") + else: + client.HTTPDownloader.noPage(self, reason) + + def gotHeaders(self, headers): + if self.status == "200": + if headers.has_key("content-length"): + self.totalbytes = int(headers["content-length"][0]) + else: + self.totalbytes = 0 + self.currentbytes = 0.0 + return client.HTTPDownloader.gotHeaders(self, headers) + + def pagePart(self, packet): + if self.status == "200": + self.currentbytes += len(packet) + if self.totalbytes and self.progress_callback: + self.progress_callback(self.currentbytes, self.totalbytes) + return client.HTTPDownloader.pagePart(self, packet) + + def pageEnd(self): + return client.HTTPDownloader.pageEnd(self) + +class downloadWithProgress: + def __init__(self, url, outputfile, contextFactory=None, *args, **kwargs): + scheme, host, port, path = client._parse(url) + self.factory = HTTPProgressDownloader(url, outputfile, *args, **kwargs) + self.connection = reactor.connectTCP(host, port, self.factory) + + def start(self): + return self.factory.deferred + + def stop(self): + print "[stop]" + self.connection.disconnect() + + def addProgress(self, progress_callback): + print "[addProgress]" + self.factory.progress_callback = progress_callback diff --git a/lib/python/Tools/Event.py b/lib/python/Tools/Event.py new file mode 100644 index 0000000..bf0d111 --- /dev/null +++ b/lib/python/Tools/Event.py @@ -0,0 +1,23 @@ + +class Event: + def __init__(self, start = None, stop = None): + self.list = [ ] + self.start = start + self.stop = stop + + def __call__(self, *args, **kwargs): + for x in self.list: + x(*args, **kwargs) + + def listen(self, fnc): + was_empty = len(self.list) == 0 + self.list.append(fnc) + if was_empty: + if self.start: + self.start() + + def unlisten(self, fnc): + self.list.remove(fnc) + if len(self.list) == 0: + if self.stop: + self.stop() diff --git a/lib/python/Tools/FuzzyDate.py b/lib/python/Tools/FuzzyDate.py new file mode 100644 index 0000000..6a09986 --- /dev/null +++ b/lib/python/Tools/FuzzyDate.py @@ -0,0 +1,41 @@ +from time import localtime, time + + +def FuzzyTime(t, inPast = False): + d = localtime(t) + nt = time() + n = localtime() + dayOfWeek = (_("Mon"), _("Tue"), _("Wed"), _("Thu"), _("Fri"), _("Sat"), _("Sun")) + + if d[:3] == n[:3]: + # same day + date = _("Today") + elif d[0] == n[0] and d[7] == n[7] - 1 and inPast: + # won't work on New Year's day + date = _("Yesterday") + elif ((t - nt) < 7*86400) and (nt < t) and not inPast: + # same week (must be future) + date = dayOfWeek[d[6]] + elif d[0] == n[0]: + # same year + if inPast: + # I want the day in the movielist + date = "%s %d.%d" % (dayOfWeek[d[6]], d[2], d[1]) + else: + date = "%d.%d" % (d[2], d[1]) + else: + date = "%d.%d.%d" % (d[2], d[1], d[0]) + + timeres = "%d:%02d" % (d[3], d[4]) + + return (date, timeres) + + + +if __name__ == "__main__": + def _(x): return x + print "now: %s %s" % FuzzyTime(time()) + for i in range(1, 14): + print "+%2s day(s): %s " % (i, FuzzyTime(time() + 86400 * i)) + for i in range(1, 14): + print "-%2s day(s): %s " % (i, FuzzyTime(time() - 86400 * i, True)) diff --git a/lib/python/Tools/GetEcmInfo.py b/lib/python/Tools/GetEcmInfo.py new file mode 100644 index 0000000..616767e --- /dev/null +++ b/lib/python/Tools/GetEcmInfo.py @@ -0,0 +1,136 @@ +import os +import time + +ECM_INFO = '/tmp/ecm.info' +EMPTY_ECM_INFO = '','0','0','0' + +old_ecm_time = time.time() +info = {} +ecm = '' +data = EMPTY_ECM_INFO + +class GetEcmInfo: + def pollEcmData(self): + global data + global old_ecm_time + global info + global ecm + try: + ecm_time = os.stat(ECM_INFO).st_mtime + except: + ecm_time = old_ecm_time + data = EMPTY_ECM_INFO + info = {} + ecm = '' + if ecm_time != old_ecm_time: + oecmi1 = info.get('ecminterval1','') + oecmi0 = info.get('ecminterval0','') + info = {} + info['ecminterval2'] = oecmi1 + info['ecminterval1'] = oecmi0 + old_ecm_time = ecm_time + try: + ecm = open(ECM_INFO, 'rb').readlines() + except: + ecm = '' + for line in ecm: + d = line.split(':', 1) + if len(d) > 1: + info[d[0].strip()] = d[1].strip() + data = self.getText() + return True + else: + info['ecminterval0'] = int(time.time()-ecm_time+0.5) + + def getEcm(self): + return (self.pollEcmData(), ecm) + + def getEcmData(self): + self.pollEcmData() + return data + + def getInfo(self, member, ifempty = ''): + self.pollEcmData() + return str(info.get(member, ifempty)) + + def getText(self): + global ecm + try: + # info is dictionary + using = info.get('using', '') + if using: + # CCcam + if using == 'fta': + self.textvalue = _("FTA") + elif using == 'emu': + self.textvalue = "EMU (%ss)" % (info.get('ecm time', '?')) + else: + hops = info.get('hops', None) + if hops and hops != '0': + hops = ' @' + hops + else: + hops = '' + self.textvalue = info.get('address', '?') + hops + " (%ss)" % info.get('ecm time', '?') + else: + decode = info.get('decode', None) + if decode: + # gbox (untested) + if info['decode'] == 'Network': + cardid = 'id:' + info.get('prov', '') + try: + share = open('/tmp/share.info', 'rb').readlines() + for line in share: + if cardid in line: + self.textvalue = line.strip() + break + else: + self.textvalue = cardid + except: + self.textvalue = decode + else: + self.textvalue = decode + if ecm[1].startswith('SysID'): + info['prov'] = ecm[1].strip()[6:] + if info['response'] and 'CaID 0x' in ecm[0] and 'pid 0x' in ecm[0]: + self.textvalue = self.textvalue + " (0.%ss)" % info['response'] + info['caid'] = ecm[0][ecm[0].find('CaID 0x')+7:ecm[0].find(',')] + info['pid'] = ecm[0][ecm[0].find('pid 0x')+6:ecm[0].find(' =')] + info['provid'] = info.get('prov', '0')[:4] + else: + source = info.get('source', None) + if source: + # MGcam + info['caid'] = info['caid'][2:] + info['pid'] = info['pid'][2:] + info['provid'] = info['prov'][2:] + time = "" + for line in ecm: + if 'msec' in line: + line = line.split(' ') + if line[0]: + time = " (%ss)" % (float(line[0])/1000) + continue + self.textvalue = source + time + else: + reader = info.get('reader', '') + if reader: + hops = info.get('hops', None) + if hops and hops != '0': + hops = ' @' + hops + else: + hops = '' + self.textvalue = reader + hops + " (%ss)" % info.get('ecm time', '?') + else: + self.textvalue = "" + decCI = info.get('caid', '0') + provid = info.get('provid', '0') + if provid == '0': + provid = info.get('prov', '0') + ecmpid = info.get('pid', '0') + except: + ecm = '' + self.textvalue = "" + decCI='0' + provid='0' + ecmpid='0' + return self.textvalue,decCI,provid,ecmpid diff --git a/lib/python/Tools/HardwareInfo.py b/lib/python/Tools/HardwareInfo.py new file mode 100644 index 0000000..3455e16 --- /dev/null +++ b/lib/python/Tools/HardwareInfo.py @@ -0,0 +1,95 @@ +import os +from Tools.Directories import SCOPE_SKIN, resolveFilename + +hw_info = None + +class HardwareInfo: + device_name = _("unavailable") + device_model = None + device_version = "" + device_revision = "" + device_hdmi = False + + def __init__(self): + global hw_info + if hw_info is not None: +# print "using cached result" + return + hw_info = self + + print "Scanning hardware info" + # Version + if os.path.exists("/proc/stb/info/version"): + self.device_version = open("/proc/stb/info/version").read().strip() + + # Revision + if os.path.exists("/proc/stb/info/board_revision"): + self.device_revision = open("/proc/stb/info/board_revision").read().strip() + + # Name ... bit odd, but history prevails + if os.path.exists("/proc/stb/info/model"): + self.device_name = open("/proc/stb/info/model").read().strip() + else: + print "----------------" + print "you should upgrade to new drivers for the hardware detection to work properly" + print "----------------" + print "fallback to detect hardware via /proc/cpuinfo!!" + try: + rd = open("/proc/cpuinfo", "r").read() + if "Brcm4380 V4.2" in rd: + self.device_name = "dm8000" + elif "Brcm7401 V0.0" in rd: + self.device_name = "dm800" + elif "MIPS 4KEc V4.8" in rd: + self.device_name = "dm7025" + rd.close(); + except: + pass + + # Model + for line in open((resolveFilename(SCOPE_SKIN, 'hw_info/hw_info.cfg')), 'r'): + if not line.startswith('#') and not line.isspace(): + l = line.strip().replace('\t', ' ') + if l.find(' ') != -1: + infoFname, prefix = l.split() + else: + infoFname = l + prefix = "" + if os.path.exists("/proc/stb/info/" + infoFname): + self.device_model = prefix + open("/proc/stb/info/" + infoFname).read().strip() + break + + if self.device_model is None: + self.device_model = self.device_name + + # HDMI capbility + self.device_hdmi = ( self.device_name == 'dm7020hd' or + self.device_name == 'dm800se' or + self.device_name == 'dm500hd' or + (self.device_name == 'dm8000' and self.device_version != None)) + + print "Detected: " + self.get_device_string() + + + def get_device_name(self): + return hw_info.device_name + + def get_device_model(self): + return hw_info.device_model + + def get_device_version(self): + return hw_info.device_version + + def get_device_revision(self): + return hw_info.device_revision + + def get_device_string(self): + s = hw_info.device_model + if hw_info.device_revision != "": + s += " (" + hw_info.device_revision + "-" + hw_info.device_version + ")" + elif hw_info.device_version != "": + s += " (" + hw_info.device_version + ")" + return s + + def has_hdmi(self): + return hw_info.device_hdmi diff --git a/lib/python/Tools/ISO639.py b/lib/python/Tools/ISO639.py new file mode 100644 index 0000000..444e04f --- /dev/null +++ b/lib/python/Tools/ISO639.py @@ -0,0 +1,436 @@ +# -*- coding: iso-8859-2 -*- +LanguageCodes = { } + +LanguageCodes["aar"] = LanguageCodes["aa"] = ("Afar", "Hamitic") +LanguageCodes["abk"] = LanguageCodes["ab"] = ("Abkhazian", "Ibero-caucasian") +LanguageCodes["ace"] = ("Achinese", "") +LanguageCodes["ach"] = ("Acoli", "") +LanguageCodes["ada"] = ("Adangme", "") +LanguageCodes["afa"] = ("Afro-Asiatic (Other)", "") +LanguageCodes["afh"] = ("Afrihili", "") +LanguageCodes["afr"] = LanguageCodes["af"] = ("Afrikaans", "Germanic") +LanguageCodes["aka"] = ("Akan", "") +LanguageCodes["akk"] = ("Akkadian", "") +LanguageCodes["ale"] = ("Aleut", "") +LanguageCodes["alg"] = ("Algonquian languages", "") +LanguageCodes["amh"] = LanguageCodes["am"] = ("Amharic", "Semitic") +LanguageCodes["ang"] = ("English, Old (ca. 450-1100)", "") +LanguageCodes["apa"] = ("Apache languages", "") +LanguageCodes["ara"] = LanguageCodes["ar"] = ("Arabic", "Semitic") +LanguageCodes["arc"] = ("Aramaic", "") +LanguageCodes["arn"] = ("Araucanian", "") +LanguageCodes["arp"] = ("Arapaho", "") +LanguageCodes["art"] = ("Artificial (Other)", "") +LanguageCodes["arw"] = ("Arawak", "") +LanguageCodes["asm"] = LanguageCodes["as"] = ("Assamese", "Indian") +LanguageCodes["ath"] = ("Athapascan languages", "") +LanguageCodes["aus"] = ("Australian languages", "") +LanguageCodes["ava"] = ("Avaric", "") +LanguageCodes["ave"] = LanguageCodes["ae"] = ("Avestan", "") +LanguageCodes["awa"] = ("Awadhi", "") +LanguageCodes["aym"] = LanguageCodes["ay"] = ("Aymara", "Amerindian") +LanguageCodes["aze"] = LanguageCodes["az"] = ("Azerbaijani", "Turkic/altaic") +LanguageCodes["bad"] = ("Banda", "") +LanguageCodes["bai"] = ("Bamileke languages", "") +LanguageCodes["bak"] = LanguageCodes["ba"] = ("Bashkir", "Turkic/altaic") +LanguageCodes["bal"] = ("Baluchi", "") +LanguageCodes["bam"] = ("Bambara", "") +LanguageCodes["ban"] = ("Balinese", "") +LanguageCodes["bas"] = ("Basa", "") +LanguageCodes["bat"] = ("Baltic (Other)", "") +LanguageCodes["bej"] = ("Beja", "") +LanguageCodes["bel"] = LanguageCodes["be"] = ("Belarusian", "Slavic") +LanguageCodes["bem"] = ("Bemba", "") +LanguageCodes["ben"] = LanguageCodes["bn"] = ("Bengali", "Indian") +LanguageCodes["ber"] = ("Berber (Other)", "") +LanguageCodes["bho"] = ("Bhojpuri", "") +LanguageCodes["bih"] = LanguageCodes["bh"] = ("Bihari", "Indian") +LanguageCodes["bik"] = ("Bikol", "") +LanguageCodes["bin"] = ("Bini", "") +LanguageCodes["bis"] = LanguageCodes["bi"] = ("Bislama", "") +LanguageCodes["bla"] = ("Siksika", "") +LanguageCodes["bnt"] = ("Bantu (Other)", "") +LanguageCodes["bod"] = LanguageCodes["tib"] = LanguageCodes["bo"] = ("Tibetan", "Asian") +LanguageCodes["bos"] = LanguageCodes["bs"] = ("Bosnian", "") +LanguageCodes["bra"] = ("Braj", "") +LanguageCodes["bre"] = LanguageCodes["br"] = ("Breton", "Celtic") +LanguageCodes["btk"] = ("Batak (Indonesia)", "") +LanguageCodes["bua"] = ("Buriat", "") +LanguageCodes["bug"] = ("Buginese", "") +LanguageCodes["bul"] = LanguageCodes["bg"] = ("Bulgarian", "Slavic") +LanguageCodes["cad"] = ("Caddo", "") +LanguageCodes["cai"] = ("Central American Indian (Other)", "") +LanguageCodes["car"] = ("Carib", "") +LanguageCodes["cat"] = LanguageCodes["ca"] = ("Catalan", "Romance") +LanguageCodes["cau"] = ("Caucasian (Other)", "") +LanguageCodes["ceb"] = ("Cebuano", "") +LanguageCodes["cel"] = ("Celtic (Other)", "") +LanguageCodes["ces"] = LanguageCodes["cze"] = LanguageCodes["cs"] = ("Czech", "Slavic") +LanguageCodes["cha"] = LanguageCodes["ch"] = ("Chamorro", "") +LanguageCodes["chb"] = ("Chibcha", "") +LanguageCodes["che"] = LanguageCodes["ce"] = ("Chechen", "") +LanguageCodes["chg"] = ("Chagatai", "") +LanguageCodes["chk"] = ("Chuukese", "") +LanguageCodes["chm"] = ("Mari", "") +LanguageCodes["chn"] = ("Chinook jargon", "") +LanguageCodes["cho"] = ("Choctaw", "") +LanguageCodes["chp"] = ("Chipewyan", "") +LanguageCodes["chr"] = ("Cherokee", "") +LanguageCodes["chu"] = LanguageCodes["cu"] = ("Church Slavic", "") +LanguageCodes["chv"] = LanguageCodes["cv"] = ("Chuvash", "") +LanguageCodes["chy"] = ("Cheyenne", "") +LanguageCodes["cmc"] = ("Chamic languages", "") +LanguageCodes["cop"] = ("Coptic", "") +LanguageCodes["cor"] = LanguageCodes["kw"] = ("Cornish", "") +LanguageCodes["cos"] = LanguageCodes["co"] = ("Corsican", "Romance") +LanguageCodes["cpe"] = ("Creoles and pidgins, English based (Other)", "") +LanguageCodes["cpf"] = ("Creoles and pidgins, French-based (Other)", "") +LanguageCodes["cpp"] = ("Creoles and pidgins, Portuguese-based (Other)", "") +LanguageCodes["cre"] = ("Cree", "") +LanguageCodes["crp"] = ("Creoles and pidgins (Other)", "") +LanguageCodes["cus"] = ("Cushitic (Other)", "") +LanguageCodes["cym"] = LanguageCodes["wel"] = LanguageCodes["cy"] = ("Welsh", "Celtic") +LanguageCodes["dak"] = ("Dakota", "") +LanguageCodes["dan"] = LanguageCodes["da"] = ("Danish", "Germanic") +LanguageCodes["day"] = ("Dayak", "") +LanguageCodes["del"] = ("Delaware", "") +LanguageCodes["den"] = ("Slave (Athapascan)", "") +LanguageCodes["deu"] = LanguageCodes["ger"] = LanguageCodes["de"] = ("German", "Germanic") +LanguageCodes["dgr"] = ("Dogrib", "") +LanguageCodes["din"] = ("Dinka", "") +LanguageCodes["div"] = ("Divehi", "") +LanguageCodes["doi"] = ("Dogri", "") +LanguageCodes["dra"] = ("Dravidian (Other)", "") +LanguageCodes["dua"] = ("Duala", "") +LanguageCodes["dum"] = ("Dutch, Middle (ca. 1050-1350)", "") +LanguageCodes["dyu"] = ("Dyula", "") +LanguageCodes["dzo"] = LanguageCodes["dz"] = ("Dzongkha", "Asian") +LanguageCodes["efi"] = ("Efik", "") +LanguageCodes["egy"] = ("Egyptian (Ancient)", "") +LanguageCodes["eka"] = ("Ekajuk", "") +LanguageCodes["ell"] = LanguageCodes["gre"] = LanguageCodes["el"] = ("Greek, Modern (1453-)", "Latin/greek") +LanguageCodes["elx"] = ("Elamite", "") +LanguageCodes["eng"] = LanguageCodes["en"] = ("English", "Germanic") +LanguageCodes["enm"] = ("English, Middle (1100-1500)", "") +LanguageCodes["epo"] = LanguageCodes["eo"] = ("Esperanto", "International aux.") +LanguageCodes["est"] = LanguageCodes["et"] = ("Estonian", "Finno-ugric") +LanguageCodes["eus"] = LanguageCodes["baq"] = LanguageCodes["eu"] = ("Basque", "Basque") +LanguageCodes["ewe"] = ("Ewe", "") +LanguageCodes["ewo"] = ("Ewondo", "") +LanguageCodes["fan"] = ("Fang", "") +LanguageCodes["fao"] = LanguageCodes["fo"] = ("Faroese", "Germanic") +LanguageCodes["fas"] = LanguageCodes["per"] = LanguageCodes["fa"] = ("Persian", "") +LanguageCodes["fat"] = ("Fanti", "") +LanguageCodes["fij"] = LanguageCodes["fj"] = ("Fijian", "Oceanic/indonesian") +LanguageCodes["fin"] = LanguageCodes["fi"] = ("Finnish", "Finno-ugric") +LanguageCodes["fiu"] = ("Finno-Ugrian (Other)", "") +LanguageCodes["fon"] = ("Fon", "") +LanguageCodes["fra"] = LanguageCodes["fre"] = LanguageCodes["fr"] = ("French", "Romance") +LanguageCodes["frm"] = ("French, Middle (ca. 1400-1600)", "") +LanguageCodes["fro"] = ("French, Old (842-ca. 1400)", "") +LanguageCodes["fry"] = LanguageCodes["fy"] = ("Frisian", "Germanic") +LanguageCodes["ful"] = ("Fulah", "") +LanguageCodes["fur"] = ("Friulian", "") +LanguageCodes["gaa"] = ("Ga", "") +LanguageCodes["gay"] = ("Gayo", "") +LanguageCodes["gba"] = ("Gbaya", "") +LanguageCodes["gem"] = ("Germanic (Other)", "") +LanguageCodes["gez"] = ("Geez", "") +LanguageCodes["gil"] = ("Gilbertese", "") +LanguageCodes["gla"] = LanguageCodes["gd"] = ("Gaelic (Scots)", "Celtic") +LanguageCodes["gle"] = LanguageCodes["ga"] = ("Irish", "Celtic") +LanguageCodes["glg"] = LanguageCodes["gl"] = ("Gallegan", "Romance") +LanguageCodes["glv"] = LanguageCodes["gv"] = ("Manx", "") +LanguageCodes["gmh"] = ("German, Middle High (ca. 1050-1500)", "") +LanguageCodes["goh"] = ("German, Old High (ca. 750-1050)", "") +LanguageCodes["gon"] = ("Gondi", "") +LanguageCodes["gor"] = ("Gorontalo", "") +LanguageCodes["got"] = ("Gothic", "") +LanguageCodes["grb"] = ("Grebo", "") +LanguageCodes["grc"] = ("Greek, Ancient (to 1453)", "") +LanguageCodes["grn"] = LanguageCodes["gn"] = ("Guarani", "Amerindian") +LanguageCodes["guj"] = LanguageCodes["gu"] = ("Gujarati", "Indian") +LanguageCodes["gwi"] = ("Gwichin", "") +LanguageCodes["hai"] = ("Haida", "") +LanguageCodes["hau"] = LanguageCodes["ha"] = ("Hausa", "Negro-african") +LanguageCodes["haw"] = ("Hawaiian", "") +LanguageCodes["heb"] = LanguageCodes["he"] = ("Hebrew", "") +LanguageCodes["her"] = LanguageCodes["hz"] = ("Herero", "") +LanguageCodes["hil"] = ("Hiligaynon", "") +LanguageCodes["him"] = ("Himachali", "") +LanguageCodes["hin"] = LanguageCodes["hi"] = ("Hindi", "Indian") +LanguageCodes["hit"] = ("Hittite", "") +LanguageCodes["hmn"] = ("Hmong", "") +LanguageCodes["hmo"] = LanguageCodes["ho"] = ("Hiri Motu", "") +LanguageCodes["hrv"] = LanguageCodes["scr"] = LanguageCodes["hr"] = ("Croatian", "Slavic") +LanguageCodes["hun"] = LanguageCodes["hu"] = ("Hungarian", "Finno-ugric") +LanguageCodes["hup"] = ("Hupa", "") +LanguageCodes["hye"] = LanguageCodes["arm"] = LanguageCodes["hy"] = ("Armenian", "Indo-european (other)") +LanguageCodes["iba"] = ("Iban", "") +LanguageCodes["ibo"] = ("Igbo", "") +LanguageCodes["ijo"] = ("Ijo", "") +LanguageCodes["iku"] = LanguageCodes["iu"] = ("Inuktitut", "") +LanguageCodes["ile"] = LanguageCodes["ie"] = ("Interlingue", "International aux.") +LanguageCodes["ilo"] = ("Iloko", "") +LanguageCodes["ina"] = LanguageCodes["ia"] = ("Interlingua (International Auxiliary Language Association)", "International aux.") +LanguageCodes["inc"] = ("Indic (Other)", "") +LanguageCodes["ind"] = LanguageCodes["id"] = ("Indonesian", "") +LanguageCodes["ine"] = ("Indo-European (Other)", "") +LanguageCodes["ipk"] = LanguageCodes["ik"] = ("Inupiaq", "Eskimo") +LanguageCodes["ira"] = ("Iranian (Other)", "") +LanguageCodes["iro"] = ("Iroquoian languages", "") +LanguageCodes["isl"] = LanguageCodes["ice"] = LanguageCodes["is"] = ("Icelandic", "Germanic") +LanguageCodes["ita"] = LanguageCodes["it"] = ("Italian", "Romance") +LanguageCodes["jaw"] = LanguageCodes["jav"] = LanguageCodes["jw"] = ("Javanese", "") +LanguageCodes["jpn"] = LanguageCodes["ja"] = ("Japanese", "Asian") +LanguageCodes["jpr"] = ("Judeo-Persian", "") +LanguageCodes["kaa"] = ("Kara-Kalpak", "") +LanguageCodes["kab"] = ("Kabyle", "") +LanguageCodes["kac"] = ("Kachin", "") +LanguageCodes["kal"] = LanguageCodes["kl"] = ("Kalaallisut", "Eskimo") +LanguageCodes["kam"] = ("Kamba", "") +LanguageCodes["kan"] = LanguageCodes["kn"] = ("Kannada", "Dravidian") +LanguageCodes["kar"] = ("Karen", "") +LanguageCodes["kas"] = LanguageCodes["ks"] = ("Kashmiri", "Indian") +LanguageCodes["kat"] = LanguageCodes["geo"] = LanguageCodes["ka"] = ("Georgian", "Ibero-caucasian") +LanguageCodes["kau"] = ("Kanuri", "") +LanguageCodes["kaw"] = ("Kawi", "") +LanguageCodes["kaz"] = LanguageCodes["kk"] = ("Kazakh", "Turkic/altaic") +LanguageCodes["kha"] = ("Khasi", "") +LanguageCodes["khi"] = ("Khoisan (Other)", "") +LanguageCodes["khm"] = LanguageCodes["km"] = ("Khmer", "Asian") +LanguageCodes["kho"] = ("Khotanese", "") +LanguageCodes["kik"] = LanguageCodes["ki"] = ("Kikuyu", "") +LanguageCodes["kin"] = LanguageCodes["rw"] = ("Kinyarwanda", "Negro-african") +LanguageCodes["kir"] = LanguageCodes["ky"] = ("Kirghiz", "Turkic/altaic") +LanguageCodes["kmb"] = ("Kimbundu", "") +LanguageCodes["kok"] = ("Konkani", "") +LanguageCodes["kom"] = LanguageCodes["kv"] = ("Komi", "") +LanguageCodes["kon"] = ("Kongo", "") +LanguageCodes["kor"] = LanguageCodes["ko"] = ("Korean", "Asian") +LanguageCodes["kos"] = ("Kosraean", "") +LanguageCodes["kpe"] = ("Kpelle", "") +LanguageCodes["kro"] = ("Kru", "") +LanguageCodes["kru"] = ("Kurukh", "") +LanguageCodes["kum"] = ("Kumyk", "") +LanguageCodes["kur"] = LanguageCodes["ku"] = ("Kurdish", "Iranian") +LanguageCodes["kut"] = ("Kutenai", "") +LanguageCodes["lad"] = ("Ladino", "") +LanguageCodes["lah"] = ("Lahnda", "") +LanguageCodes["lam"] = ("Lamba", "") +LanguageCodes["lao"] = LanguageCodes["lo"] = ("Lao", "Asian") +LanguageCodes["lat"] = LanguageCodes["la"] = ("Latin", "Latin/greek") +LanguageCodes["lav"] = LanguageCodes["lv"] = ("Latvian", "Baltic") +LanguageCodes["lez"] = ("Lezghian", "") +LanguageCodes["lin"] = LanguageCodes["ln"] = ("Lingala", "Negro-african") +LanguageCodes["lit"] = LanguageCodes["lt"] = ("Lithuanian", "Baltic") +LanguageCodes["lol"] = ("Mongo", "") +LanguageCodes["loz"] = ("Lozi", "") +LanguageCodes["ltz"] = LanguageCodes["lb"] = ("Letzeburgesch", "") +LanguageCodes["lua"] = ("Luba-Lulua", "") +LanguageCodes["lub"] = ("Luba-Katanga", "") +LanguageCodes["lug"] = ("Ganda", "") +LanguageCodes["lui"] = ("Luiseno", "") +LanguageCodes["lun"] = ("Lunda", "") +LanguageCodes["luo"] = ("Luo (Kenya and Tanzania)", "") +LanguageCodes["lus"] = ("lushai", "") +LanguageCodes["mad"] = ("Madurese", "") +LanguageCodes["mag"] = ("Magahi", "") +LanguageCodes["mah"] = LanguageCodes["mh"] = ("Marshall", "") +LanguageCodes["mai"] = ("Maithili", "") +LanguageCodes["mak"] = ("Makasar", "") +LanguageCodes["mal"] = LanguageCodes["ml"] = ("Malayalam", "Dravidian") +LanguageCodes["man"] = ("Mandingo", "") +LanguageCodes["map"] = ("Austronesian (Other)", "") +LanguageCodes["mar"] = LanguageCodes["mr"] = ("Marathi", "Indian") +LanguageCodes["mas"] = ("Masai", "") +LanguageCodes["mdr"] = ("Mandar", "") +LanguageCodes["men"] = ("Mende", "") +LanguageCodes["mga"] = ("Irish, Middle (900-1200)", "") +LanguageCodes["mic"] = ("Micmac", "") +LanguageCodes["min"] = ("Minangkabau", "") +LanguageCodes["mis"] = ("Miscellaneous languages", "") +LanguageCodes["mkd"] = LanguageCodes["mac"] = LanguageCodes["mk"] = ("Macedonian", "Slavic") +LanguageCodes["mkh"] = ("Mon-Khmer (Other)", "") +LanguageCodes["mlg"] = LanguageCodes["mg"] = ("Malagasy", "Oceanic/indonesian") +LanguageCodes["mlt"] = LanguageCodes["mt"] = ("Maltese", "Semitic") +LanguageCodes["mnc"] = ("Manchu", "") +LanguageCodes["mni"] = ("Manipuri", "") +LanguageCodes["mno"] = ("Manobo languages", "") +LanguageCodes["moh"] = ("Mohawk", "") +LanguageCodes["mol"] = LanguageCodes["mo"] = ("Moldavian", "Romance") +LanguageCodes["mon"] = LanguageCodes["mn"] = ("Mongolian", "") +LanguageCodes["mos"] = ("Mossi", "") +LanguageCodes["mri"] = LanguageCodes["mao"] = LanguageCodes["mi"] = ("Maori", "Oceanic/indonesian") +LanguageCodes["msa"] = LanguageCodes["may"] = LanguageCodes["ms"] = ("Malay", "Oceanic/indonesian") +LanguageCodes["mul"] = ("Multiple languages", "") +LanguageCodes["mun"] = ("Munda languages", "") +LanguageCodes["mus"] = ("Creek", "") +LanguageCodes["mwr"] = ("Marwari", "") +LanguageCodes["mya"] = LanguageCodes["bur"] = LanguageCodes["my"] = ("Burmese", "Asian") +LanguageCodes["myn"] = ("Mayan languages", "") +LanguageCodes["nah"] = ("Nahuatl", "") +LanguageCodes["nai"] = ("North American Indian", "") +LanguageCodes["nau"] = LanguageCodes["na"] = ("Nauru", "") +LanguageCodes["nav"] = LanguageCodes["nv"] = ("Navajo", "") +LanguageCodes["nbl"] = LanguageCodes["nr"] = ("Ndebele, South", "") +LanguageCodes["nde"] = LanguageCodes["nd"] = ("Ndebele, North", "") +LanguageCodes["ndo"] = LanguageCodes["ng"] = ("Ndonga", "") +LanguageCodes["nds"] = ("Low German; Low Saxon; German, Low; Saxon, Low", "") +LanguageCodes["nep"] = LanguageCodes["ne"] = ("Nepali", "Indian") +LanguageCodes["new"] = ("Newari", "") +LanguageCodes["nia"] = ("Nias", "") +LanguageCodes["nic"] = ("Niger-Kordofanian (Other)", "") +LanguageCodes["niu"] = ("Niuean", "") +LanguageCodes["nld"] = LanguageCodes["dut"] = LanguageCodes["nl"] = ("Dutch", "Germanic") +LanguageCodes["nno"] = LanguageCodes["nn"] = ("Norwegian Nynorsk", "") +LanguageCodes["nob"] = LanguageCodes["nb"] = ("Norwegian Bokml", "") +LanguageCodes["non"] = ("Norse, Old", "") +LanguageCodes["nor"] = LanguageCodes["no"] = ("Norwegian", "Germanic") +LanguageCodes["nso"] = ("Sotho, Northern", "") +LanguageCodes["nub"] = ("Nubian languages", "") +LanguageCodes["nya"] = LanguageCodes["ny"] = ("Chichewa; Nyanja", "") +LanguageCodes["nym"] = ("Nyamwezi", "") +LanguageCodes["nyn"] = ("Nyankole", "") +LanguageCodes["nyo"] = ("Nyoro", "") +LanguageCodes["nzi"] = ("Nzima", "") +LanguageCodes["oci"] = LanguageCodes["oc"] = ("Occitan (post 1500); Provenal", "Romance") +LanguageCodes["oji"] = ("Ojibwa", "") +LanguageCodes["ori"] = LanguageCodes["or"] = ("Oriya", "Indian") +LanguageCodes["orm"] = LanguageCodes["om"] = ("Oromo", "Hamitic") +LanguageCodes["osa"] = ("Osage", "") +LanguageCodes["oss"] = LanguageCodes["os"] = ("Ossetian; Ossetic", "") +LanguageCodes["ota"] = ("Turkish, Ottoman (1500-1928)", "") +LanguageCodes["oto"] = ("Otomian languages", "") +LanguageCodes["paa"] = ("Papuan (Other)", "") +LanguageCodes["pag"] = ("Pangasinan", "") +LanguageCodes["pal"] = ("Pahlavi", "") +LanguageCodes["pam"] = ("Pampanga", "") +LanguageCodes["pan"] = LanguageCodes["pa"] = ("Panjabi", "Indian") +LanguageCodes["pap"] = ("Papiamento", "") +LanguageCodes["pau"] = ("Palauan", "") +LanguageCodes["peo"] = ("Persian, Old (ca. 600-400 b.c.)", "") +LanguageCodes["phi"] = ("Philippine (Other)", "") +LanguageCodes["pli"] = LanguageCodes["pi"] = ("Pali", "") +LanguageCodes["pol"] = LanguageCodes["pl"] = ("Polish", "Slavic") +LanguageCodes["pon"] = ("Pohnpeian", "") +LanguageCodes["por"] = LanguageCodes["pt"] = ("Portuguese", "Romance") +LanguageCodes["pra"] = ("Prakrit languages", "") +LanguageCodes["pro"] = ("Provenal, Old (to 1500)", "") +LanguageCodes["pus"] = LanguageCodes["ps"] = ("Pushto", "Iranian") +LanguageCodes["que"] = LanguageCodes["qu"] = ("Quechua", "Amerindian") +LanguageCodes["raj"] = ("Rajasthani", "") +LanguageCodes["rap"] = ("Rapanui", "") +LanguageCodes["rar"] = ("Rarotongan", "") +LanguageCodes["roa"] = ("Romance (Other)", "") +LanguageCodes["rom"] = ("Romany", "") +LanguageCodes["ron"] = LanguageCodes["rum"] = LanguageCodes["ro"] = ("Romanian", "Romance") +LanguageCodes["run"] = LanguageCodes["rn"] = ("Rundi", "Negro-african") +LanguageCodes["rus"] = LanguageCodes["ru"] = ("Russian", "Slavic") +LanguageCodes["sad"] = ("Sandawe", "") +LanguageCodes["sag"] = LanguageCodes["sg"] = ("Sango", "Negro-african") +LanguageCodes["sah"] = ("Yakut", "") +LanguageCodes["sai"] = ("South American Indian (Other)", "") +LanguageCodes["sal"] = ("Salishan languages", "") +LanguageCodes["sam"] = ("Samaritan Aramaic", "") +LanguageCodes["san"] = LanguageCodes["sa"] = ("Sanskrit", "Indian") +LanguageCodes["sas"] = ("Sasak", "") +LanguageCodes["sat"] = ("Santali", "") +LanguageCodes["sco"] = ("Scots", "") +LanguageCodes["sel"] = ("Selkup", "") +LanguageCodes["sem"] = ("Semitic (Other)", "") +LanguageCodes["sga"] = ("Irish, Old (to 900)", "") +LanguageCodes["sgn"] = ("Sign Languages", "") +LanguageCodes["shn"] = ("Shan", "") +LanguageCodes["sid"] = ("Sidamo", "") +LanguageCodes["sin"] = LanguageCodes["si"] = ("Sinhalese", "Indian") +LanguageCodes["sio"] = ("Siouan languages", "") +LanguageCodes["sit"] = ("Sino-Tibetan (Other)", "") +LanguageCodes["sla"] = ("Slavic (Other)", "") +LanguageCodes["slk"] = LanguageCodes["slo"] = LanguageCodes["sk"] = ("Slovak", "Slavic") +LanguageCodes["slv"] = LanguageCodes["sl"] = ("Slovenian", "Slavic") +LanguageCodes["sme"] = LanguageCodes["se"] = ("Northern Sami", "") +LanguageCodes["smi"] = ("Sami languages (Other)", "") +LanguageCodes["smo"] = LanguageCodes["sm"] = ("Samoan", "Oceanic/indonesian") +LanguageCodes["sna"] = LanguageCodes["sn"] = ("Shona", "Negro-african") +LanguageCodes["snd"] = LanguageCodes["sd"] = ("Sindhi", "Indian") +LanguageCodes["snk"] = ("Soninke", "") +LanguageCodes["sog"] = ("Sogdian", "") +LanguageCodes["som"] = LanguageCodes["so"] = ("Somali", "Hamitic") +LanguageCodes["son"] = ("Songhai", "") +LanguageCodes["sot"] = LanguageCodes["st"] = ("Sotho, Southern", "Negro-african") +LanguageCodes["esl"] = LanguageCodes["spa"] = LanguageCodes["es"] = ("Spanish", "Romance") +LanguageCodes["sqi"] = LanguageCodes["alb"] = LanguageCodes["sq"] = ("Albanian", "Indo-european (other)") +LanguageCodes["srd"] = LanguageCodes["sc"] = ("Sardinian", "") +LanguageCodes["srp"] = LanguageCodes["scc"] = LanguageCodes["sr"] = ("Serbian", "Slavic") +LanguageCodes["srr"] = ("Serer", "") +LanguageCodes["ssa"] = ("Nilo-Saharan (Other)", "") +LanguageCodes["ssw"] = LanguageCodes["ss"] = ("Swati", "Negro-african") +LanguageCodes["suk"] = ("Sukuma", "") +LanguageCodes["sun"] = LanguageCodes["su"] = ("Sundanese", "Oceanic/indonesian") +LanguageCodes["sus"] = ("Susu", "") +LanguageCodes["sux"] = ("Sumerian", "") +LanguageCodes["swa"] = LanguageCodes["sw"] = ("Swahili", "Negro-african") +LanguageCodes["swe"] = LanguageCodes["sv"] = ("Swedish", "Germanic") +LanguageCodes["syr"] = ("Syriac", "") +LanguageCodes["tah"] = LanguageCodes["ty"] = ("Tahitian", "") +LanguageCodes["tai"] = ("Tai (Other)", "") +LanguageCodes["tam"] = LanguageCodes["ta"] = ("Tamil", "Dravidian") +LanguageCodes["tat"] = LanguageCodes["tt"] = ("Tatar", "Turkic/altaic") +LanguageCodes["tel"] = LanguageCodes["te"] = ("Telugu", "Dravidian") +LanguageCodes["tem"] = ("Timne", "") +LanguageCodes["ter"] = ("Tereno", "") +LanguageCodes["tet"] = ("Tetum", "") +LanguageCodes["tgk"] = LanguageCodes["tg"] = ("Tajik", "Iranian") +LanguageCodes["tgl"] = LanguageCodes["tl"] = ("Tagalog", "Oceanic/indonesian") +LanguageCodes["tha"] = LanguageCodes["th"] = ("Thai", "Asian") +LanguageCodes["tig"] = ("Tigre", "") +LanguageCodes["tir"] = LanguageCodes["ti"] = ("Tigrinya", "Semitic") +LanguageCodes["tiv"] = ("Tiv", "") +LanguageCodes["tkl"] = ("Tokelau", "") +LanguageCodes["tli"] = ("Tlingit", "") +LanguageCodes["tmh"] = ("Tamashek", "") +LanguageCodes["tog"] = ("Tonga (Nyasa)", "") +LanguageCodes["ton"] = LanguageCodes["to"] = ("Tonga (Tonga Islands)", "Oceanic/indonesian") +LanguageCodes["tpi"] = ("Tok Pisin", "") +LanguageCodes["tsi"] = ("Tsimshian", "") +LanguageCodes["tsn"] = LanguageCodes["tn"] = ("Tswana", "Negro-african") +LanguageCodes["tso"] = LanguageCodes["ts"] = ("Tsonga", "Negro-african") +LanguageCodes["tuk"] = LanguageCodes["tk"] = ("Turkmen", "Turkic/altaic") +LanguageCodes["tum"] = ("Tumbuka", "") +LanguageCodes["tur"] = LanguageCodes["tr"] = ("Turkish", "Turkic/altaic") +LanguageCodes["tut"] = ("Altaic (Other)", "") +LanguageCodes["tvl"] = ("Tuvalu", "") +LanguageCodes["twi"] = LanguageCodes["tw"] = ("Twi", "Negro-african") +LanguageCodes["tyv"] = ("Tuvinian", "") +LanguageCodes["uga"] = ("Ugaritic", "") +LanguageCodes["uig"] = LanguageCodes["ug"] = ("Uighur", "") +LanguageCodes["ukr"] = LanguageCodes["uk"] = ("Ukrainian", "Slavic") +LanguageCodes["umb"] = ("Umbundu", "") +LanguageCodes["und"] = ("Undetermined", "") +LanguageCodes["urd"] = LanguageCodes["ur"] = ("Urdu", "Indian") +LanguageCodes["uzb"] = LanguageCodes["uz"] = ("Uzbek", "Turkic/altaic") +LanguageCodes["vai"] = ("Vai", "") +LanguageCodes["ven"] = ("Venda", "") +LanguageCodes["vie"] = LanguageCodes["vi"] = ("Vietnamese", "Asian") +LanguageCodes["vol"] = LanguageCodes["vo"] = ("Volapk", "International aux.") +LanguageCodes["vot"] = ("Votic", "") +LanguageCodes["wak"] = ("Wakashan languages", "") +LanguageCodes["wal"] = ("Walamo", "") +LanguageCodes["war"] = ("Waray", "") +LanguageCodes["was"] = ("Washo", "") +LanguageCodes["wen"] = ("Sorbian languages", "") +LanguageCodes["wol"] = LanguageCodes["wo"] = ("Wolof", "Negro-african") +LanguageCodes["xho"] = LanguageCodes["xh"] = ("Xhosa", "Negro-african") +LanguageCodes["yao"] = ("Yao", "") +LanguageCodes["yap"] = ("Yapese", "") +LanguageCodes["yid"] = LanguageCodes["yi"] = ("Yiddish", "") +LanguageCodes["yor"] = LanguageCodes["yo"] = ("Yoruba", "Negro-african") +LanguageCodes["ypk"] = ("Yupik languages", "") +LanguageCodes["zap"] = ("Zapotec", "") +LanguageCodes["zen"] = ("Zenaga", "") +LanguageCodes["zha"] = LanguageCodes["za"] = ("Zhuang", "") +LanguageCodes["zho"] = LanguageCodes["chi"] = LanguageCodes["zh"] = ("Chinese", "Asian") +LanguageCodes["znd"] = ("Zande", "") +LanguageCodes["zul"] = LanguageCodes["zu"] = ("Zulu", "Negro-african") +LanguageCodes["zun"] = ("Zuni", "") diff --git a/lib/python/Tools/Import.py b/lib/python/Tools/Import.py new file mode 100644 index 0000000..a46e1d3 --- /dev/null +++ b/lib/python/Tools/Import.py @@ -0,0 +1,6 @@ +def my_import(name): + mod = __import__(name) + components = name.split('.') + for comp in components[1:]: + mod = getattr(mod, comp) + return mod diff --git a/lib/python/Tools/KeyBindings.py b/lib/python/Tools/KeyBindings.py new file mode 100644 index 0000000..77df2e4 --- /dev/null +++ b/lib/python/Tools/KeyBindings.py @@ -0,0 +1,157 @@ + +keyBindings = { } + +from keyids import KEYIDS +from Components.config import config +from Components.RcModel import rc_model + +keyDescriptions = [{ + KEYIDS["BTN_0"]: ("UP", "fp"), + KEYIDS["BTN_1"]: ("DOWN", "fp"), + KEYIDS["KEY_OK"]: ("OK", ""), + KEYIDS["KEY_UP"]: ("UP",), + KEYIDS["KEY_DOWN"]: ("DOWN",), + KEYIDS["KEY_POWER"]: ("POWER",), + KEYIDS["KEY_RED"]: ("RED",), + KEYIDS["KEY_BLUE"]: ("BLUE",), + KEYIDS["KEY_GREEN"]: ("GREEN",), + KEYIDS["KEY_YELLOW"]: ("YELLOW",), + KEYIDS["KEY_MENU"]: ("MENU",), + KEYIDS["KEY_LEFT"]: ("LEFT",), + KEYIDS["KEY_RIGHT"]: ("RIGHT",), + KEYIDS["KEY_VIDEO"]: ("PVR",), + KEYIDS["KEY_INFO"]: ("INFO",), + KEYIDS["KEY_AUDIO"]: ("YELLOW",), + KEYIDS["KEY_TV"]: ("TV",), + KEYIDS["KEY_RADIO"]: ("RADIO",), + KEYIDS["KEY_TEXT"]: ("TEXT",), + KEYIDS["KEY_NEXT"]: ("ARROWRIGHT",), + KEYIDS["KEY_PREVIOUS"]: ("ARROWLEFT",), + KEYIDS["KEY_PREVIOUSSONG"]: ("REWIND",), + KEYIDS["KEY_PLAYPAUSE"]: ("PLAYPAUSE",), + KEYIDS["KEY_PLAY"]: ("PLAYPAUSE",), + KEYIDS["KEY_NEXTSONG"]: ("FASTFORWARD",), + KEYIDS["KEY_CHANNELUP"]: ("BOUQUET+",), + KEYIDS["KEY_CHANNELDOWN"]: ("BOUQUET-",), + KEYIDS["KEY_0"]: ("0",), + KEYIDS["KEY_1"]: ("1",), + KEYIDS["KEY_2"]: ("2",), + KEYIDS["KEY_3"]: ("3",), + KEYIDS["KEY_4"]: ("4",), + KEYIDS["KEY_5"]: ("5",), + KEYIDS["KEY_6"]: ("6",), + KEYIDS["KEY_7"]: ("7",), + KEYIDS["KEY_8"]: ("8",), + KEYIDS["KEY_9"]: ("9",), + KEYIDS["KEY_EXIT"]: ("EXIT",), + KEYIDS["KEY_STOP"]: ("STOP",), + KEYIDS["KEY_RECORD"]: ("RECORD",) + }, + { + KEYIDS["BTN_0"]: ("UP", "fp"), + KEYIDS["BTN_1"]: ("DOWN", "fp"), + KEYIDS["KEY_OK"]: ("OK", ""), + KEYIDS["KEY_UP"]: ("UP",), + KEYIDS["KEY_DOWN"]: ("DOWN",), + KEYIDS["KEY_POWER"]: ("POWER",), + KEYIDS["KEY_RED"]: ("RED",), + KEYIDS["KEY_BLUE"]: ("BLUE",), + KEYIDS["KEY_GREEN"]: ("GREEN",), + KEYIDS["KEY_YELLOW"]: ("YELLOW",), + KEYIDS["KEY_MENU"]: ("MENU",), + KEYIDS["KEY_LEFT"]: ("LEFT",), + KEYIDS["KEY_RIGHT"]: ("RIGHT",), + KEYIDS["KEY_VIDEO"]: ("VIDEO",), + KEYIDS["KEY_INFO"]: ("INFO",), + KEYIDS["KEY_AUDIO"]: ("AUDIO",), + KEYIDS["KEY_TV"]: ("TV",), + KEYIDS["KEY_RADIO"]: ("RADIO",), + KEYIDS["KEY_TEXT"]: ("TEXT",), + KEYIDS["KEY_NEXT"]: ("ARROWRIGHT",), + KEYIDS["KEY_PREVIOUS"]: ("ARROWLEFT",), + KEYIDS["KEY_PREVIOUSSONG"]: ("RED", "SHIFT"), + KEYIDS["KEY_PLAYPAUSE"]: ("YELLOW", "SHIFT"), + KEYIDS["KEY_PLAY"]: ("GREEN", "SHIFT"), + KEYIDS["KEY_NEXTSONG"]: ("BLUE", "SHIFT"), + KEYIDS["KEY_CHANNELUP"]: ("BOUQUET+",), + KEYIDS["KEY_CHANNELDOWN"]: ("BOUQUET-",), + KEYIDS["KEY_0"]: ("0",), + KEYIDS["KEY_1"]: ("1",), + KEYIDS["KEY_2"]: ("2",), + KEYIDS["KEY_3"]: ("3",), + KEYIDS["KEY_4"]: ("4",), + KEYIDS["KEY_5"]: ("5",), + KEYIDS["KEY_6"]: ("6",), + KEYIDS["KEY_7"]: ("7",), + KEYIDS["KEY_8"]: ("8",), + KEYIDS["KEY_9"]: ("9",), + KEYIDS["KEY_EXIT"]: ("EXIT",), + KEYIDS["KEY_STOP"]: ("TV", "SHIFT"), + KEYIDS["KEY_RECORD"]: ("RADIO", "SHIFT") + }, + { + KEYIDS["BTN_0"]: ("UP", "fp"), + KEYIDS["BTN_1"]: ("DOWN", "fp"), + KEYIDS["KEY_OK"]: ("OK", ""), + KEYIDS["KEY_UP"]: ("UP",), + KEYIDS["KEY_DOWN"]: ("DOWN",), + KEYIDS["KEY_POWER"]: ("POWER",), + KEYIDS["KEY_RED"]: ("RED",), + KEYIDS["KEY_BLUE"]: ("BLUE",), + KEYIDS["KEY_GREEN"]: ("GREEN",), + KEYIDS["KEY_YELLOW"]: ("YELLOW",), + KEYIDS["KEY_MENU"]: ("MENU",), + KEYIDS["KEY_LEFT"]: ("LEFT",), + KEYIDS["KEY_RIGHT"]: ("RIGHT",), + KEYIDS["KEY_VIDEO"]: ("PVR",), + KEYIDS["KEY_INFO"]: ("INFO",), + KEYIDS["KEY_AUDIO"]: ("AUDIO",), + KEYIDS["KEY_TV"]: ("TV",), + KEYIDS["KEY_RADIO"]: ("RADIO",), + KEYIDS["KEY_TEXT"]: ("TEXT",), + KEYIDS["KEY_NEXT"]: ("ARROWRIGHT",), + KEYIDS["KEY_PREVIOUS"]: ("ARROWLEFT",), + KEYIDS["KEY_PREVIOUSSONG"]: ("REWIND",), + KEYIDS["KEY_PLAYPAUSE"]: ("PAUSE",), + KEYIDS["KEY_PLAY"]: ("PLAY",), + KEYIDS["KEY_NEXTSONG"]: ("FASTFORWARD",), + KEYIDS["KEY_CHANNELUP"]: ("BOUQUET+",), + KEYIDS["KEY_CHANNELDOWN"]: ("BOUQUET-",), + KEYIDS["KEY_0"]: ("0",), + KEYIDS["KEY_1"]: ("1",), + KEYIDS["KEY_2"]: ("2",), + KEYIDS["KEY_3"]: ("3",), + KEYIDS["KEY_4"]: ("4",), + KEYIDS["KEY_5"]: ("5",), + KEYIDS["KEY_6"]: ("6",), + KEYIDS["KEY_7"]: ("7",), + KEYIDS["KEY_8"]: ("8",), + KEYIDS["KEY_9"]: ("9",), + KEYIDS["KEY_EXIT"]: ("EXIT",), + KEYIDS["KEY_STOP"]: ("STOP",), + KEYIDS["KEY_RECORD"]: ("RECORD",) + }, +] + +def addKeyBinding(domain, key, context, action, flags): + keyBindings.setdefault((context, action), []).append((key, domain, flags)) + +# returns a list of (key, flags) for a specified action +def queryKeyBinding(context, action): + if (context, action) in keyBindings: + return [(x[0], x[2]) for x in keyBindings[(context, action)]] + else: + return [ ] + +def getKeyDescription(key): + if rc_model.rcIsDefault(): + idx = config.misc.rcused.value + else: + idx = 2 + if key in keyDescriptions[idx]: + return keyDescriptions[idx].get(key, [ ]) + +def removeKeyBindings(domain): + # remove all entries of domain 'domain' + for x in keyBindings: + keyBindings[x] = filter(lambda e: e[1] != domain, keyBindings[x]) diff --git a/lib/python/Tools/LXMLTools.py b/lib/python/Tools/LXMLTools.py new file mode 100644 index 0000000..279b2a8 --- /dev/null +++ b/lib/python/Tools/LXMLTools.py @@ -0,0 +1,26 @@ + +def elementsWithTag(el, tag): + + """filters all elements of childNode with the specified function + example: nodes = elementsWithTag(childNodes, lambda x: x == "bla")""" + + # fiiixme! (works but isn't nice) + if isinstance(tag, str): + s = tag + tag = lambda x: x == s + + for x in el: + if not x.tag: + continue + if tag(x.tag): + yield x + +def mergeText(nodelist): + rc = "" + for node in nodelist: + if node.text: + rc = rc + node.text + return rc + +def stringToXML(text): + return text.replace('&', '&').replace('<', '<').replace('>', '>').replace("'", ''').replace('"', '"') diff --git a/lib/python/Tools/LoadPixmap.py b/lib/python/Tools/LoadPixmap.py new file mode 100644 index 0000000..cb8d77b --- /dev/null +++ b/lib/python/Tools/LoadPixmap.py @@ -0,0 +1,15 @@ +from enigma import loadPNG, loadJPG + +def LoadPixmap(path, desktop = None, cached = False): + if path[-4:] == ".png": + ptr = loadPNG(path) + elif path[-4:] == ".jpg": + ptr = loadJPG(path) + elif path[-1:] == ".": + alpha = loadPNG(path + "a.png") + ptr = loadJPG(path + "rgb.jpg", alpha) + else: + raise Exception("neither .png nor .jpg, please fix file extension") + if ptr and desktop: + desktop.makeCompatiblePixmap(ptr) + return ptr diff --git a/lib/python/Tools/Makefile.am b/lib/python/Tools/Makefile.am new file mode 100644 index 0000000..1528d60 --- /dev/null +++ b/lib/python/Tools/Makefile.am @@ -0,0 +1,8 @@ +installdir = $(pkglibdir)/python/Tools + +install_PYTHON = \ + FuzzyDate.py XMLTools.py LXMLTools.py Directories.py NumericalTextInput.py \ + KeyBindings.py BoundFunction.py ISO639.py Notifications.py __init__.py \ + RedirectOutput.py StbHardware.py Import.py Event.py CList.py \ + LoadPixmap.py Profile.py HardwareInfo.py Transponder.py ASCIItranslit.py \ + Downloader.py Trashcan.py GetEcmInfo.py Alternatives.py diff --git a/lib/python/Tools/Notifications.py b/lib/python/Tools/Notifications.py new file mode 100644 index 0000000..68c6f63 --- /dev/null +++ b/lib/python/Tools/Notifications.py @@ -0,0 +1,51 @@ + +notifications = [ ] + +notificationAdded = [ ] + +# notifications which are currently on screen (and might be closed by similiar notifications) +current_notifications = [ ] + +def __AddNotification(fnc, screen, id, *args, **kwargs): + if ".MessageBox'>" in `screen`: + kwargs["simple"] = True + notifications.append((fnc, screen, args, kwargs, id)) + for x in notificationAdded: + x() + +def AddNotification(screen, *args, **kwargs): + AddNotificationWithCallback(None, screen, *args, **kwargs) + +def AddNotificationWithCallback(fnc, screen, *args, **kwargs): + __AddNotification(fnc, screen, None, *args, **kwargs) + +def AddNotificationParentalControl(fnc, screen, *args, **kwargs): + RemovePopup("Parental control") + __AddNotification(fnc, screen, "Parental control", *args, **kwargs) + +def AddNotificationWithID(id, screen, *args, **kwargs): + __AddNotification(None, screen, id, *args, **kwargs) + +# we don't support notifications with callback and ID as this +# would require manually calling the callback on cancelled popups. + +def RemovePopup(id): + # remove similiar notifications + print "RemovePopup, id =", id + for x in notifications: + if x[4] and x[4] == id: + print "(found in notifications)" + notifications.remove(x) + + for x in current_notifications: + if x[0] == id: + print "(found in current notifications)" + x[1].close() + +from Screens.MessageBox import MessageBox + +def AddPopup(text, type, timeout, id = None): + if id is not None: + RemovePopup(id) + print "AddPopup, id =", id + AddNotificationWithID(id, MessageBox, text = text, type = type, timeout = timeout, close_on_any_key = True) diff --git a/lib/python/Tools/NumericalTextInput.py b/lib/python/Tools/NumericalTextInput.py new file mode 100644 index 0000000..48530bc --- /dev/null +++ b/lib/python/Tools/NumericalTextInput.py @@ -0,0 +1,182 @@ +# -*- coding: UTF-8 -*- +from enigma import eTimer +from Components.Language import language + +# Dict languageCode -> array of strings +MAP_SEARCH = ( + u"%_0", + u" 1", + u"abc2", + u"def3", + u"ghi4", + u"jkl5", + u"mno6", + u"pqrs7", + u"tuv8", + u"wxyz9", + ) +MAP_SEARCH_UPCASE = ( + U"0%_", + U"1 ", + U"ABC2", + U"DEF3", + U"GHI4", + U"JKL5", + U"MNO6", + U"PQRS7", + U"TUV8", + U"WXYZ9", + ) +MAP_DEFAULT = ( + u"0,?!&@=*'+\"()$~%", + u" 1.:;/-_", + u"abc2ABC", + u"def3DEF", + u"ghi4GHI", + u"jkl5JKL", + u"mno6MNO", + u"pqrs7PQRS", + u"tuv8TUV", + u"wxyz9WXYZ", + ) +MAP_DE = ( + u"0,?!&@=*'+\"()$~%", + u" 1.:;/-_", + u"abcä2ABCÄ", + u"def3DEF", + u"ghi4GHI", + u"jkl5JKL", + u"mnoö6MNOÖ", + u"pqrsß7PQRSß", + u"tuvü8TUVÜ", + u"wxyz9WXYZ", + ) +MAP_ES = ( + u"0,?!&@=*'+\"()$~%", + u" 1.:;/-_", + u"abcáà2ABCÁÀ", + u"deéèf3DEFÉÈ", + u"ghiíì4GHIÍÌ", + u"jkl5JKL", + u"mnñoóò6MNÑOÓÒ", + u"pqrs7PQRS", + u"tuvúù8TUVÚÙ", + u"wxyz9WXYZ", + ) +MAP_SE = ( + u"0,?!&@=*'+\"()$~%", + u" 1.:;/-_", + u"abcåä2ABCÅÄ", + u"defé3DEFÉ", + u"ghi4GHI", + u"jkl5JKL", + u"mnoö6MNOÖ", + u"pqrs7PQRS", + u"tuv8TUV", + u"wxyz9WXYZ", + ) +MAP_CZ = ( + u"0,?'+\"()@$!=&*%", + u" 1.:;/-_", + u"abc2áäčABCÁÄČ", + u"def3ďéěDEFĎÉĚ", + u"ghi4íGHIÍ", + u"jkl5ľĺJKLĽĹ", + u"mno6ňóöôMNOŇÓÖÔ", + u"pqrs7řŕšPQRSŘŔŠ", + u"tuv8ťúůüTUVŤÚŮÜ", + u"wxyz9ýžWXYZÝŽ", + ) +MAP_PL = ( + u"0,?'+\"()@$!=&*%", + u" 1.:;/-_", + u"abcąć2ABCĄĆ", + u"defę3DEFĘ", + u"ghi4GHI", + u"jklł5JKLŁ", + u"mnońó6MNOŃÓ", + u"pqrsś7PQRSŚ", + u"tuv8TUV", + u"wxyzźż9WXYZŹŻ", + ) +MAP_RU = ( + u"0,?'+\"()@$!=&*%", + u" 1.:;/-_", + u"abcабвг2ABCАБВГ", + u"defдежз3DEFДЕЖЗ", + u"ghiийкл4GHIИЙКЛ", + u"jklмноп5JKLМНОП", + u"mnoрсту6MNOРСТУ", + u"pqrsфхцч7PQRSФХЦЧ", + u"tuvшщьы8TUVШЩЬЫ", + u"wxyzъэюя9WXYZЪЭЮЯ", + ) +MAPPINGS = { + 'de_DE': MAP_DE, + 'es_ES': MAP_ES, + 'sv_SE': MAP_SE, + 'fi_FI': MAP_SE, + 'cs_CZ': MAP_CZ, + 'sk_SK': MAP_CZ, + 'pl_PL': MAP_PL, + 'ru_RU': MAP_RU, + } + +class NumericalTextInput: + def __init__(self, nextFunc=None, handleTimeout = True, search = False, mapping = None): + self.useableChars=None + self.nextFunction=nextFunc + if handleTimeout: + self.timer = eTimer() + self.timer.callback.append(self.timeout) + else: + self.timer = None + self.lastKey = -1 + self.pos = -1 + if mapping is not None: + self.mapping = mapping + elif search: + self.mapping = MAP_SEARCH + else: + self.mapping = MAPPINGS.get(language.getLanguage(), MAP_DEFAULT) + + def setUseableChars(self, useable): + self.useableChars = unicode(useable) + + def getKey(self, num): + cnt=0 + if self.lastKey != num: + if self.lastKey != -1: + self.nextChar() + self.lastKey = num + self.pos = -1 + if self.timer is not None: + self.timer.start(1000, True) + while True: + self.pos += 1 + if len(self.mapping[num]) <= self.pos: + self.pos = 0 + if self.useableChars: + pos = self.useableChars.find(self.mapping[num][self.pos]) + if pos == -1: + cnt += 1 + if cnt < len(self.mapping[num]): + continue + else: + return None + break + return self.mapping[num][self.pos] + + def nextKey(self): + if self.timer is not None: + self.timer.stop() + self.lastKey = -1 + + def nextChar(self): + self.nextKey() + if self.nextFunction: + self.nextFunction() + + def timeout(self): + if self.lastKey != -1: + self.nextChar() diff --git a/lib/python/Tools/Profile.py b/lib/python/Tools/Profile.py new file mode 100644 index 0000000..667c43e --- /dev/null +++ b/lib/python/Tools/Profile.py @@ -0,0 +1,51 @@ +# the implementation here is a bit crappy. +import time +from Directories import resolveFilename, SCOPE_CONFIG + +PERCENTAGE_START = 0 +PERCENTAGE_END = 100 + +profile_start = time.time() + +profile_data = {} +total_time = 1 +profile_file = None + +try: + profile_old = open(resolveFilename(SCOPE_CONFIG, "profile"), "r").readlines() + + t = None + for line in profile_old: + (t, id) = line[:-1].split('\t') + t = float(t) + total_time = t + profile_data[id] = t +except: + print "no profile data available" + +try: + profile_file = open(resolveFilename(SCOPE_CONFIG, "profile"), "w") +except IOError: + print "WARNING: couldn't open profile file!" + +def profile(id): + now = time.time() - profile_start + if profile_file: + profile_file.write("%7.3f\t%s\n" % (now, id)) + + if id in profile_data: + t = profile_data[id] + if total_time: + perc = t * (PERCENTAGE_END - PERCENTAGE_START) / total_time + PERCENTAGE_START + else: + perc = PERCENTAGE_START + try: + open("/proc/progress", "w").write("%d \n" % perc) + except IOError: + pass + +def profile_final(): + global profile_file + if profile_file is not None: + profile_file.close() + profile_file = None diff --git a/lib/python/Tools/RedirectOutput.py b/lib/python/Tools/RedirectOutput.py new file mode 100644 index 0000000..d03a1d9 --- /dev/null +++ b/lib/python/Tools/RedirectOutput.py @@ -0,0 +1,13 @@ +import sys +from enigma import ePythonOutput + +class EnigmaOutput: + def write(self, data): + if isinstance(data, unicode): + data = data.encode("UTF-8") + ePythonOutput(data) + + def flush(): + pass + +sys.stdout = sys.stderr = EnigmaOutput() diff --git a/lib/python/Tools/StbHardware.py b/lib/python/Tools/StbHardware.py new file mode 100644 index 0000000..ad2a26e --- /dev/null +++ b/lib/python/Tools/StbHardware.py @@ -0,0 +1,76 @@ +from fcntl import ioctl +from struct import pack, unpack + +def getFPVersion(): + ret = None + try: + ret = long(open("/proc/stb/fp/version", "r").read()) + except IOError: + try: + fp = open("/dev/dbox/fp0") + ret = ioctl(fp.fileno(),0) + except IOError: + print "getFPVersion failed!" + return ret + +def setFPWakeuptime(wutime): + try: + open("/proc/stb/fp/wakeup_time", "w").write(str(wutime)) + except IOError: + try: + fp = open("/dev/dbox/fp0") + ioctl(fp.fileno(), 6, pack('L', wutime)) # set wake up + except IOError: + print "setFPWakeupTime failed!" + +def setRTCtime(wutime): + try: + open("/proc/stb/fp/rtc", "w").write(str(wutime)) + except IOError: + try: + fp = open("/dev/dbox/fp0") + ioctl(fp.fileno(), 0x101, pack('L', wutime)) # set wake up + except IOError: + print "setRTCtime failed!" + +def getFPWakeuptime(): + ret = 0 + try: + ret = long(open("/proc/stb/fp/wakeup_time", "r").read()) + except IOError: + try: + fp = open("/dev/dbox/fp0") + ret = unpack('L', ioctl(fp.fileno(), 5, ' '))[0] # get wakeuptime + except IOError: + print "getFPWakeupTime failed!" + return ret + +wasTimerWakeup = None + +def getFPWasTimerWakeup(): + global wasTimerWakeup + if wasTimerWakeup is not None: + return wasTimerWakeup + wasTimerWakeup = False + try: + wasTimerWakeup = int(open("/proc/stb/fp/was_timer_wakeup", "r").read()) and True or False + except: + try: + fp = open("/dev/dbox/fp0") + wasTimerWakeup = unpack('B', ioctl(fp.fileno(), 9, ' '))[0] and True or False + except IOError: + print "wasTimerWakeup failed!" + if wasTimerWakeup: + # clear hardware status + clearFPWasTimerWakeup() + return wasTimerWakeup + +def clearFPWasTimerWakeup(): + try: + open("/proc/stb/fp/was_timer_wakeup", "w").write('0') + except: + try: + fp = open("/dev/dbox/fp0") + ioctl(fp.fileno(), 10) + except IOError: + print "clearFPWasTimerWakeup failed!" diff --git a/lib/python/Tools/Transponder.py b/lib/python/Tools/Transponder.py new file mode 100644 index 0000000..d6ae277 --- /dev/null +++ b/lib/python/Tools/Transponder.py @@ -0,0 +1,172 @@ +from enigma import eDVBFrontendParametersSatellite, eDVBFrontendParametersCable, eDVBFrontendParametersTerrestrial +from Components.NimManager import nimmanager + +def ConvertToHumanReadable(tp, type = None): + ret = { } + if type is None: + type = tp.get("tuner_type", "None") + if type == "DVB-S": + ret["tuner_type"] = _("Satellite") + ret["inversion"] = { + eDVBFrontendParametersSatellite.Inversion_Unknown : _("Auto"), + eDVBFrontendParametersSatellite.Inversion_On : _("On"), + eDVBFrontendParametersSatellite.Inversion_Off : _("Off")}.get(tp.get("inversion")) + ret["fec_inner"] = { + eDVBFrontendParametersSatellite.FEC_None : _("None"), + eDVBFrontendParametersSatellite.FEC_Auto : _("Auto"), + eDVBFrontendParametersSatellite.FEC_1_2 : "1/2", + eDVBFrontendParametersSatellite.FEC_2_3 : "2/3", + eDVBFrontendParametersSatellite.FEC_3_4 : "3/4", + eDVBFrontendParametersSatellite.FEC_5_6 : "5/6", + eDVBFrontendParametersSatellite.FEC_6_7 : "6/7", + eDVBFrontendParametersSatellite.FEC_7_8 : "7/8", + eDVBFrontendParametersSatellite.FEC_3_5 : "3/5", + eDVBFrontendParametersSatellite.FEC_4_5 : "4/5", + eDVBFrontendParametersSatellite.FEC_8_9 : "8/9", + eDVBFrontendParametersSatellite.FEC_9_10 : "9/10"}.get(tp.get("fec_inner")) + ret["modulation"] = { + eDVBFrontendParametersSatellite.Modulation_Auto : _("Auto"), + eDVBFrontendParametersSatellite.Modulation_QPSK : "QPSK", + eDVBFrontendParametersSatellite.Modulation_QAM16 : "QAM16", + eDVBFrontendParametersSatellite.Modulation_8PSK : "8PSK"}.get(tp.get("modulation")) + ret["orbital_position"] = nimmanager.getSatName(int(tp.get("orbital_position"))) + ret["polarization"] = { + eDVBFrontendParametersSatellite.Polarisation_Horizontal : _("Horizontal"), + eDVBFrontendParametersSatellite.Polarisation_Vertical : _("Vertical"), + eDVBFrontendParametersSatellite.Polarisation_CircularLeft : _("Circular left"), + eDVBFrontendParametersSatellite.Polarisation_CircularRight : _("Circular right")}.get(tp.get("polarization")) + ret["polarization_abbreviation"] = { + eDVBFrontendParametersSatellite.Polarisation_Horizontal : "H", + eDVBFrontendParametersSatellite.Polarisation_Vertical : "V", + eDVBFrontendParametersSatellite.Polarisation_CircularLeft : "L", + eDVBFrontendParametersSatellite.Polarisation_CircularRight : "R"}.get(tp.get("polarization")) + ret["system"] = { + eDVBFrontendParametersSatellite.System_DVB_S : "DVB-S", + eDVBFrontendParametersSatellite.System_DVB_S2 : "DVB-S2"}.get(tp.get("system")) + if ret["system"] == "DVB-S2": + ret["rolloff"] = { + eDVBFrontendParametersSatellite.RollOff_alpha_0_35 : "0.35", + eDVBFrontendParametersSatellite.RollOff_alpha_0_25 : "0.25", + eDVBFrontendParametersSatellite.RollOff_alpha_0_20 : "0.20", + eDVBFrontendParametersSatellite.RollOff_auto : _("Auto")}.get(tp.get("rolloff")) + ret["pilot"] = { + eDVBFrontendParametersSatellite.Pilot_Unknown : _("Auto"), + eDVBFrontendParametersSatellite.Pilot_On : _("On"), + eDVBFrontendParametersSatellite.Pilot_Off : _("Off")}.get(tp.get("pilot")) + elif type == "DVB-C": + ret["tuner_type"] = _("Cable") + ret["modulation"] = { + eDVBFrontendParametersCable.Modulation_Auto: _("Auto"), + eDVBFrontendParametersCable.Modulation_QAM16 : "QAM16", + eDVBFrontendParametersCable.Modulation_QAM32 : "QAM32", + eDVBFrontendParametersCable.Modulation_QAM64 : "QAM64", + eDVBFrontendParametersCable.Modulation_QAM128 : "QAM128", + eDVBFrontendParametersCable.Modulation_QAM256 : "QAM256"}.get(tp.get("modulation")) + ret["inversion"] = { + eDVBFrontendParametersCable.Inversion_Unknown : _("Auto"), + eDVBFrontendParametersCable.Inversion_On : _("On"), + eDVBFrontendParametersCable.Inversion_Off : _("Off")}.get(tp.get("inversion")) + ret["fec_inner"] = { + eDVBFrontendParametersCable.FEC_None : _("None"), + eDVBFrontendParametersCable.FEC_Auto : _("Auto"), + eDVBFrontendParametersCable.FEC_1_2 : "1/2", + eDVBFrontendParametersCable.FEC_2_3 : "2/3", + eDVBFrontendParametersCable.FEC_3_4 : "3/4", + eDVBFrontendParametersCable.FEC_5_6 : "5/6", + eDVBFrontendParametersCable.FEC_7_8 : "7/8", + eDVBFrontendParametersCable.FEC_8_9 : "8/9", + eDVBFrontendParametersCable.FEC_3_5 : "3/5", + eDVBFrontendParametersCable.FEC_4_5 : "4/5", + eDVBFrontendParametersCable.FEC_9_10 : "9/10"}.get(tp.get("fec_inner")) + ret["system"] = { + eDVBFrontendParametersCable.System_DVB_C_ANNEX_A : "DVB-C", + eDVBFrontendParametersCable.System_DVB_C_ANNEX_C : "DVB-C ANNEX C"}.get(tp.get("system")) + elif type == "DVB-T": + ret["tuner_type"] = _("Terrestrial") + ret["bandwidth"] = { + 0 : _("Auto"), + 10000000 : "10 MHz", + 8000000 : "8 MHz", + 7000000 : "7 MHz", + 6000000 : "6 MHz", + 5000000 : "5 MHz", + 1712000 : "1.712 MHz"}.get(tp.get("bandwidth")) + ret["code_rate_lp"] = { + eDVBFrontendParametersTerrestrial.FEC_Auto : _("Auto"), + eDVBFrontendParametersTerrestrial.FEC_1_2 : "1/2", + eDVBFrontendParametersTerrestrial.FEC_2_3 : "2/3", + eDVBFrontendParametersTerrestrial.FEC_3_4 : "3/4", + eDVBFrontendParametersTerrestrial.FEC_5_6 : "5/6", + eDVBFrontendParametersTerrestrial.FEC_6_7 : "6/7", + eDVBFrontendParametersTerrestrial.FEC_7_8 : "7/8", + eDVBFrontendParametersTerrestrial.FEC_8_9 : "8/9"}.get(tp.get("code_rate_lp")) + ret["code_rate_hp"] = { + eDVBFrontendParametersTerrestrial.FEC_Auto : _("Auto"), + eDVBFrontendParametersTerrestrial.FEC_1_2 : "1/2", + eDVBFrontendParametersTerrestrial.FEC_2_3 : "2/3", + eDVBFrontendParametersTerrestrial.FEC_3_4 : "3/4", + eDVBFrontendParametersTerrestrial.FEC_5_6 : "5/6", + eDVBFrontendParametersTerrestrial.FEC_6_7 : "6/7", + eDVBFrontendParametersTerrestrial.FEC_7_8 : "7/8", + eDVBFrontendParametersTerrestrial.FEC_8_9 : "8/9"}.get(tp.get("code_rate_hp")) + ret["constellation"] = { + eDVBFrontendParametersTerrestrial.Modulation_Auto : _("Auto"), + eDVBFrontendParametersTerrestrial.Modulation_QPSK : "QPSK", + eDVBFrontendParametersTerrestrial.Modulation_QAM16 : "QAM16", + eDVBFrontendParametersTerrestrial.Modulation_QAM64 : "QAM64", + eDVBFrontendParametersTerrestrial.Modulation_QAM256 : "QAM256"}.get(tp.get("constellation")) + ret["transmission_mode"] = { + eDVBFrontendParametersTerrestrial.TransmissionMode_Auto : _("Auto"), + eDVBFrontendParametersTerrestrial.TransmissionMode_1k : "1k", + eDVBFrontendParametersTerrestrial.TransmissionMode_2k : "2k", + eDVBFrontendParametersTerrestrial.TransmissionMode_4k : "4k", + eDVBFrontendParametersTerrestrial.TransmissionMode_8k : "8k", + eDVBFrontendParametersTerrestrial.TransmissionMode_16k : "16k", + eDVBFrontendParametersTerrestrial.TransmissionMode_32k : "32k"}.get(tp.get("transmission_mode")) + ret["guard_interval"] = { + eDVBFrontendParametersTerrestrial.GuardInterval_Auto : _("Auto"), + eDVBFrontendParametersTerrestrial.GuardInterval_19_256 : "19/256", + eDVBFrontendParametersTerrestrial.GuardInterval_19_128 : "19/128", + eDVBFrontendParametersTerrestrial.GuardInterval_1_128 : "1/128", + eDVBFrontendParametersTerrestrial.GuardInterval_1_32 : "1/32", + eDVBFrontendParametersTerrestrial.GuardInterval_1_16 : "1/16", + eDVBFrontendParametersTerrestrial.GuardInterval_1_8 : "1/8", + eDVBFrontendParametersTerrestrial.GuardInterval_1_4 : "1/4"}.get(tp.get("guard_interval")) + ret["hierarchy_information"] = { + eDVBFrontendParametersTerrestrial.Hierarchy_Auto : _("Auto"), + eDVBFrontendParametersTerrestrial.Hierarchy_None : _("None"), + eDVBFrontendParametersTerrestrial.Hierarchy_1 : "1", + eDVBFrontendParametersTerrestrial.Hierarchy_2 : "2", + eDVBFrontendParametersTerrestrial.Hierarchy_4 : "4"}.get(tp.get("hierarchy_information")) + ret["inversion"] = { + eDVBFrontendParametersTerrestrial.Inversion_Unknown : _("Auto"), + eDVBFrontendParametersTerrestrial.Inversion_On : _("On"), + eDVBFrontendParametersTerrestrial.Inversion_Off : _("Off")}.get(tp.get("inversion")) + ret["system"] = { + eDVBFrontendParametersTerrestrial.System_DVB_T_T2 : "DVB-T/T2", + eDVBFrontendParametersTerrestrial.System_DVB_T : "DVB-T", + eDVBFrontendParametersTerrestrial.System_DVB_T2 : "DVB-T2"}.get(tp.get("system")) + elif type == "ATSC": + ret["tuner_type"] = "ATSC" + ret["modulation"] = { + eDVBFrontendParametersATSC.Modulation_Auto: _("Auto"), + eDVBFrontendParametersATSC.Modulation_QAM16 : "QAM16", + eDVBFrontendParametersATSC.Modulation_QAM32 : "QAM32", + eDVBFrontendParametersATSC.Modulation_QAM64 : "QAM64", + eDVBFrontendParametersATSC.Modulation_QAM128 : "QAM128", + eDVBFrontendParametersATSC.Modulation_QAM256 : "QAM256", + eDVBFrontendParametersATSC.Modulation_VSB_8 : "VSB_8", + eDVBFrontendParametersATSC.Modulation_VSB_16 : "VSB_16"}.get(tp.get("modulation")) + ret["inversion"] = { + eDVBFrontendParametersATSC.Inversion_Unknown : _("Auto"), + eDVBFrontendParametersATSC.Inversion_On : _("On"), + eDVBFrontendParametersATSC.Inversion_Off : _("Off")}.get(tp.get("inversion")) + ret["system"] = { + eDVBFrontendParametersATSC.System_ATSC : "ATSC", + eDVBFrontendParametersATSC.System_DVB_C_ANNEX_B : "DVB-C ANNEX B"}.get(tp.get("system")) + elif type != "None": + print "ConvertToHumanReadable: no or unknown type in tpdata dict for type:", type + for k,v in tp.items(): + if k not in ret: + ret[k] = v + return ret diff --git a/lib/python/Tools/Trashcan.py b/lib/python/Tools/Trashcan.py new file mode 100644 index 0000000..1c00c79 --- /dev/null +++ b/lib/python/Tools/Trashcan.py @@ -0,0 +1,161 @@ +import time +import os +import enigma +from Components.config import config +from Components import Harddisk +from twisted.internet import threads + +def getTrashFolder(path): + # Returns trash folder without symlinks. Path may be file or directory or whatever. + mountpoint = Harddisk.findMountPoint(os.path.realpath(path)) + movie = os.path.join(mountpoint, 'movie') + if os.path.isdir(movie): + mountpoint = movie + return os.path.join(mountpoint, ".Trash") + +def createTrashFolder(path): + # Create and return trash folder for given file or dir + trash = getTrashFolder(path) + if not os.path.isdir(trash): + print "[Trashcan] create:", trash + os.mkdir(trash) + return trash + +def enumTrashFolders(): + # Walk through all Trash folders. This may access network + # drives and similar, so might block for minutes. + for mount in Harddisk.getProcMounts(): + if mount[1].startswith('/media/'): + mountpoint = mount[1] + movie = os.path.join(mountpoint, 'movie') + if os.path.isdir(movie): + mountpoint = movie + result = os.path.join(mountpoint, ".Trash") + if os.path.isdir(result): + yield result + +class Trashcan: + def __init__(self): + self.isCleaning = False + self.session = None + self.dirty = set() + + def init(self, session): + self.session = session + session.nav.record_event.append(self.gotRecordEvent) + + def markDirty(self, path): + # Marks a path for purging, for when a recording on that + # device starts or ends. + if not path: + return + trash = getTrashFolder(path) + self.dirty.add(trash) + + def gotRecordEvent(self, service, event): + if (event == enigma.iRecordableService.evEnd): + self.cleanIfIdle() + + def destroy(self): + if self.session is not None: + self.session.nav.record_event.remove(self.gotRecordEvent) + self.session = None + + def __del__(self): + self.destroy() + + def cleanIfIdle(self, path=None): + # RecordTimer calls this when preparing a recording. That is a + # nice moment to clean up. It also mentions the path, so mark + # it as dirty. + self.markDirty(path) + if not self.dirty: + return + if self.isCleaning: + print "[Trashcan] Cleanup already running" + return + if (self.session is not None) and self.session.nav.getRecordings(): + return + self.isCleaning = True + ctimeLimit = time.time() - (config.usage.movielist_trashcan_days.value * 3600 * 24) + reserveBytes = 1024*1024*1024 * int(config.usage.movielist_trashcan_reserve.value) + cleanset = self.dirty + self.dirty = set() + threads.deferToThread(purge, cleanset, ctimeLimit, reserveBytes).addCallbacks(self.cleanReady, self.cleanFail) + + def cleanReady(self, result=None): + self.isCleaning = False + # schedule another clean loop if needed (so we clean up all devices, not just one) + self.cleanIfIdle() + + def cleanFail(self, failure): + print "[Trashcan] ERROR in clean:", failure + self.isCleaning = False + +def purge(cleanset, ctimeLimit, reserveBytes): + # Remove expired items from trash, and attempt to have + # reserveBytes of free disk space. + for trash in cleanset: + if not os.path.isdir(trash): + print "[Trashcan] No trash.", trash + return 0 + diskstat = os.statvfs(trash) + free = diskstat.f_bfree * diskstat.f_bsize + bytesToRemove = reserveBytes - free + candidates = [] + print "[Trashcan] bytesToRemove", bytesToRemove, trash + size = 0 + for root, dirs, files in os.walk(trash, topdown=False): + for name in files: + try: + fn = os.path.join(root, name) + st = os.stat(fn) + if st.st_ctime < ctimeLimit: + print "[Trashcan] Too old:", name, st.st_ctime + enigma.eBackgroundFileEraser.getInstance().erase(fn) + bytesToRemove -= st.st_size + else: + candidates.append((st.st_ctime, fn, st.st_size)) + size += st.st_size + except Exception, e: + print "[Trashcan] Failed to stat %s:"% name, e + # Remove empty directories if possible + for name in dirs: + try: + os.rmdir(os.path.join(root, name)) + except: + pass + candidates.sort() + # Now we have a list of ctime, candidates, size. Sorted by ctime (=deletion time) + print "[Trashcan] Bytes to remove remaining:", bytesToRemove, trash + for st_ctime, fn, st_size in candidates: + if bytesToRemove < 0: + break + enigma.eBackgroundFileEraser.getInstance().erase(fn) + bytesToRemove -= st_size + size -= st_size + print "[Trashcan] Size after purging:", size, trash + +def cleanAll(trash): + if not os.path.isdir(trash): + print "[Trashcan] No trash.", trash + return 0 + for root, dirs, files in os.walk(trash, topdown=False): + for name in files: + fn = os.path.join(root, name) + try: + enigma.eBackgroundFileEraser.getInstance().erase(fn) + except Exception, e: + print "[Trashcan] Failed to erase %s:"% name, e + # Remove empty directories if possible + for name in dirs: + try: + os.rmdir(os.path.join(root, name)) + except: + pass + +def init(session): + global instance + instance.init(session) + +instance = Trashcan() diff --git a/lib/python/Tools/XMLTools.py b/lib/python/Tools/XMLTools.py new file mode 100644 index 0000000..0789db8 --- /dev/null +++ b/lib/python/Tools/XMLTools.py @@ -0,0 +1,26 @@ + +def elementsWithTag(el, tag): + """filters all elements of childNode with the specified function + example: nodes = elementsWithTag(childNodes, lambda x: x == "bla")""" + + import xml.dom.minidom + # fiiixme! (works but isn't nice) + if isinstance(tag, str): + s = tag + tag = lambda x: x == s + + for x in el: + if x.nodeType != xml.dom.minidom.Element.nodeType: + continue + if tag(x.tagName): + yield x + +def mergeText(nodelist): + rc = "" + for node in nodelist: + if node.nodeType == node.TEXT_NODE: + rc = rc + node.data + return rc + +def stringToXML(text): + return text.replace('&', '&').replace('<', '<').replace('>', '>').replace("'", ''').replace('"', '"') diff --git a/lib/python/Tools/__init__.py b/lib/python/Tools/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/lib/python/connections.cpp b/lib/python/connections.cpp new file mode 100644 index 0000000..c0d38f8 --- /dev/null +++ b/lib/python/connections.cpp @@ -0,0 +1,40 @@ +#include <lib/python/connections.h> + +PSignal::PSignal() +{ +} + +PSignal::~PSignal() +{ + Py_XDECREF(m_list); +} + +void PSignal::callPython(ePyObject tuple) +{ + int size = PyList_Size(m_list); + int i; + for (i=0; i<size; ++i) + { + ePyObject b = PyList_GET_ITEM(m_list, i); + ePython::call(b, tuple); + } +} + +PyObject *PSignal::get() +{ + if (!m_list) + m_list = PyList_New(0); + Py_INCREF(m_list); + return m_list; +} + +PyObject *PSignal::getSteal(bool clear) +{ + if (clear) + { + ePyObject ret = m_list; + m_list = (PyObject*)0; + return ret; + } + return m_list; +} diff --git a/lib/python/connections.h b/lib/python/connections.h new file mode 100644 index 0000000..374749a --- /dev/null +++ b/lib/python/connections.h @@ -0,0 +1,102 @@ +#ifndef __lib_python_connections_h +#define __lib_python_connections_h + +#include <libsig_comp.h> + +#include <lib/python/python.h> + +class PSignal +{ +protected: + ePyObject m_list; +public: + PSignal(); + ~PSignal(); + void callPython(SWIG_PYOBJECT(ePyObject) tuple); +#ifndef SWIG + PyObject *getSteal(bool clear=false); +#endif + PyObject *get(); +}; + +inline PyObject *PyFrom(int v) +{ + return PyInt_FromLong(v); +} + +inline PyObject *PyFrom(const char *c) +{ + return PyString_FromString(c); +} + +template <class R> +class PSignal0: public PSignal, public Signal0<R> +{ +public: + R operator()() + { + if (m_list) + { + PyObject *pArgs = PyTuple_New(0); + callPython(pArgs); + Org_Py_DECREF(pArgs); + } + return Signal0<R>::operator()(); + } +}; + +template <class R, class V0> +class PSignal1: public PSignal, public Signal1<R,V0> +{ +public: + R operator()(V0 a0) + { + if (m_list) + { + PyObject *pArgs = PyTuple_New(1); + PyTuple_SET_ITEM(pArgs, 0, PyFrom(a0)); + callPython(pArgs); + Org_Py_DECREF(pArgs); + } + return Signal1<R,V0>::operator()(a0); + } +}; + +template <class R, class V0, class V1> +class PSignal2: public PSignal, public Signal2<R,V0,V1> +{ +public: + R operator()(V0 a0, V1 a1) + { + if (m_list) + { + PyObject *pArgs = PyTuple_New(2); + PyTuple_SET_ITEM(pArgs, 0, PyFrom(a0)); + PyTuple_SET_ITEM(pArgs, 1, PyFrom(a1)); + callPython(pArgs); + Org_Py_DECREF(pArgs); + } + return Signal2<R,V0,V1>::operator()(a0, a1); + } +}; + +template <class R, class V0, class V1, class V2> +class PSignal3: public PSignal, public Signal3<R,V0,V1,V2> +{ +public: + R operator()(V0 a0, V1 a1, V2 a2) + { + if (m_list) + { + PyObject *pArgs = PyTuple_New(3); + PyTuple_SET_ITEM(pArgs, 0, PyFrom(a0)); + PyTuple_SET_ITEM(pArgs, 1, PyFrom(a1)); + PyTuple_SET_ITEM(pArgs, 2, PyFrom(a2)); + callPython(pArgs); + Org_Py_DECREF(pArgs); + } + return Signal3<R,V0,V1,V2>::operator()(a0, a1, a2); + } +}; + +#endif diff --git a/lib/python/enigma_py_patcher.py b/lib/python/enigma_py_patcher.py new file mode 100644 index 0000000..0a93bfc --- /dev/null +++ b/lib/python/enigma_py_patcher.py @@ -0,0 +1,32 @@ +#read the comment to this file in lib/service/iservice.h !! +import sys +import os + +filename = sys.argv[1] +os.rename(filename, filename + ".org") + +source=open(filename + ".org", "r") +dest=open(filename, "w") + +for line, str in enumerate(source): + oldstr = str[:] + str = str.replace('_ENUMS)', ')') + + pos = str.find('_ENUMS') + if pos != -1: + spacepos = pos + while spacepos > 0 and str[spacepos] != ' ': + spacepos -= 1 + tmpstr = str[spacepos:pos] + if '_enigma.' not in tmpstr: + str = str[:pos]+str[pos+6:] + + if oldstr != str: + print "!!! Patch enigma.py line %d\n%s\n%s" %(line, oldstr[:len(oldstr)-1], str) + + dest.write(str) + +del source +del dest +os.remove(filename + ".org") + diff --git a/lib/python/enigma_python.i b/lib/python/enigma_python.i new file mode 100644 index 0000000..ef7a911 --- /dev/null +++ b/lib/python/enigma_python.i @@ -0,0 +1,422 @@ +/* + NOTE: you have two options when adding classes so that + they are callable *from* python. + + - either you %include the header file + - or you re-declare it + + In both cases, you must #include the required + header file (i.e. the header file itself), otherwise + enigma_python_wrap.cxx won't build. + + In case you import the whole header file, + please make sure that no unimportant stuff + is wrapped, as this makes the wrapper stuff + much more complex and it can probably break + very easily because of missing typemaps etc. + + you could make use of dizzy macros to ensure + that some stuff is left out when parsed as SWIG + definitions, but be sure to not modify the binary + representation. DON'T USE #ifdef SWIG_COMPILE + for leaving out stuff (unless you *really* know + what you are doing,of course!). you WILL break it. + + The better way (with more work) is to re-declare + the class. It won't be compiled, so you can + leave out stuff as you like. + + + +Oh, things like "operator= is private in this context" etc. +is usually caused by not marking PSignals as immutable. +*/ + +%module enigma +%{ + +#define SWIG_COMPILE +#include <lib/base/ebase.h> +#include <lib/base/smartptr.h> +#include <lib/base/eenv.h> +#include <lib/base/eerror.h> +#include <lib/base/etpm.h> +#include <lib/base/message.h> +#include <lib/driver/rc.h> +#include <lib/driver/rcinput_swig.h> +#include <lib/service/event.h> +#include <lib/service/iservice.h> +#include <lib/service/service.h> +#include <lib/service/servicedvb.h> +#include <lib/gdi/fb.h> +#include <lib/gdi/font.h> +#include <lib/gdi/gpixmap.h> +#include <lib/gdi/gfbdc.h> +#include <lib/gdi/grc.h> +#include <lib/gdi/gmaindc.h> +#include <lib/gui/ewidget.h> +#include <lib/gui/elabel.h> +#include <lib/gui/einput.h> +#include <lib/gui/einputstring.h> +#include <lib/gui/einputnumber.h> +#include <lib/gui/epixmap.h> +#include <lib/gui/ebutton.h> +#include <lib/gui/ewindow.h> +#include <lib/gui/ewidgetdesktop.h> +#include <lib/gui/ewindowstyle.h> +#include <lib/gui/ewindowstyleskinned.h> +#include <lib/gui/ewidgetanimation.h> +#include <lib/gui/eslider.h> +#include <lib/gui/epositiongauge.h> +#include <lib/gui/evideo.h> +#include <lib/gui/ecanvas.h> +#include <lib/python/connections.h> +#include <lib/python/pythonconfig.h> +#include <lib/gui/elistbox.h> +#include <lib/gui/elistboxcontent.h> +#include <lib/gui/esubtitle.h> +#include <lib/service/listboxservice.h> +#include <lib/nav/pcore.h> +#include <lib/actions/action.h> +#include <lib/gdi/gfont.h> +#include <lib/gdi/epng.h> +#include <lib/dvb/db.h> +#include <lib/dvb/frontendparms.h> +#include <lib/dvb/idvb.h> +#include <lib/dvb/dvb.h> +#include <lib/dvb/frontend.h> +#include <lib/dvb/volume.h> +#include <lib/dvb/sec.h> +#include <lib/dvb/epgcache.h> +#include <lib/dvb/dvbtime.h> +#include <lib/dvb/pmt.h> +#include <lib/dvb/cahandler.h> +#include <lib/dvb/fastscan.h> +#include <lib/dvb/cablescan.h> +#include <lib/components/scan.h> +#include <lib/components/file_eraser.h> +#include <lib/components/tuxtxtapp.h> +#include <lib/driver/avswitch.h> +#include <lib/driver/hdmi_cec.h> +#include <lib/driver/rfmod.h> +#include <lib/driver/misc_options.h> +#include <lib/driver/etimezone.h> +#include <lib/gdi/lcd.h> +#include <lib/mmi/mmi_ui.h> +#include <lib/dvb_ci/dvbci.h> +#include <lib/dvb_ci/dvbci_ui.h> +#include <lib/python/python.h> +#include <lib/python/python_helpers.h> +#include <lib/gdi/picload.h> +%} + +%feature("ref") iObject "$this->AddRef(); /* eDebug(\"AddRef (%s:%d)!\", __FILE__, __LINE__); */ " +%feature("unref") iObject "$this->Release(); /* eDebug(\"Release! %s:%d\", __FILE__, __LINE__); */ " + +/* this magic allows smartpointer to be used as OUTPUT arguments, i.e. call-by-reference-styled return value. */ + +%define %typemap_output_simple(Type) + %typemap(in,numinputs=0) Type *OUTPUT ($*1_ltype temp), + Type &OUTPUT ($*1_ltype temp) + "$1 = new Type;"; + %fragment("t_out_helper"{Type},"header", + fragment="t_output_helper") {} + %typemap(argout,fragment="t_out_helper"{Type}) Type *OUTPUT, Type &OUTPUT + "$result = t_output_helper($result, (SWIG_NewPointerObj((void*)($1), $1_descriptor, 1)));" +%enddef + +%define %typemap_output_ptr(Type) + %typemap(in,numinputs=0) Type *OUTPUT ($*1_ltype temp), + Type &OUTPUT ($*1_ltype temp) + "$1 = new Type;"; + %fragment("t_out_helper"{Type},"header", + fragment="t_output_helper") {} + %typemap(argout,fragment="t_out_helper"{Type}) Type *OUTPUT, Type &OUTPUT + // generate None if smartpointer is NULL + "$result = t_output_helper($result, ((*$1) ? SWIG_NewPointerObj((void*)($1), $1_descriptor, 1) : (delete $1, Py_INCREF(Py_None), Py_None)));" +%enddef + + +#define DEBUG +typedef long time_t; +%include "typemaps.i" +%include "std_string.i" +%include <lib/python/swig.h> +%include <lib/base/object.h> +%include <lib/base/eenv.h> +%include <lib/base/eerror.h> + +%include <lib/python/python_dvb.i> +%include <lib/python/python_service.i> +%include <lib/python/python_pmt.i> +%include <lib/python/python_pcore.i> + +%immutable eSocketNotifier::activated; +%include <lib/base/ebase.h> +%include <lib/base/smartptr.h> +%include <lib/service/event.h> +%include <lib/service/iservice.h> +%include <lib/service/service.h> + +// TODO: embed these... +%immutable ePicLoad::PictureData; +%immutable eButton::selected; +%immutable eInput::changed; +%immutable eComponentScan::statusChanged; +%immutable eComponentScan::newService; +%immutable eFastScan::scanProgress; +%immutable eFastScan::scanCompleted; +%immutable eCableScan::scanProgress; +%immutable eCableScan::scanCompleted; +%immutable pNavigation::m_event; +%immutable pNavigation::m_record_event; +%immutable eListbox::selectionChanged; +%immutable eDVBCI_UI::ciStateChanged; +%immutable eSocket_UI::socketStateChanged; +%immutable eDVBResourceManager::frontendUseMaskChanged; +%immutable eAVSwitch::vcr_sb_notifier; +%immutable eHdmiCEC::messageReceived; +%immutable eHdmiCEC::addressChanged; +%immutable ePythonMessagePump::recv_msg; +%immutable eDVBLocalTimeHandler::m_timeUpdated; +%immutable iCryptoInfo::clientname; +%immutable iCryptoInfo::clientinfo; +%immutable iCryptoInfo::verboseinfo; +%immutable iCryptoInfo::usedcaid; +%immutable iCryptoInfo::decodetime; +%immutable iCryptoInfo::usedcardid; +%immutable eTuxtxtApp::appClosed; +%immutable iDVBChannel::receivedTsidOnid; +%include <lib/base/message.h> +%include <lib/base/etpm.h> +%include <lib/driver/rc.h> +%include <lib/driver/rcinput_swig.h> +%include <lib/gdi/fb.h> +%include <lib/gdi/font.h> +%include <lib/gdi/gpixmap.h> +%include <lib/gdi/gmaindc.h> +%include <lib/gdi/epoint.h> +%include <lib/gdi/erect.h> +%include <lib/gdi/esize.h> +%include <lib/gui/ewidget.h> +%include <lib/gui/elabel.h> +%include <lib/gui/einput.h> +%include <lib/gui/einputstring.h> +%include <lib/gui/einputnumber.h> +%include <lib/gui/epixmap.h> +%include <lib/gui/ecanvas.h> +%include <lib/gui/ebutton.h> +%include <lib/gui/ewindow.h> +%include <lib/gui/eslider.h> +%include <lib/gui/epositiongauge.h> +%include <lib/gui/ewidgetdesktop.h> +%include <lib/gui/elistbox.h> +%include <lib/gui/elistboxcontent.h> +%include <lib/gui/ewindowstyle.h> +%include <lib/gui/ewindowstyleskinned.h> +%include <lib/gui/ewidgetanimation.h> +%include <lib/gui/evideo.h> +%include <lib/gui/esubtitle.h> +%include <lib/service/listboxservice.h> +%include <lib/nav/pcore.h> +%include <lib/actions/action.h> +%include <lib/gdi/gfont.h> +%include <lib/gdi/epng.h> +%include <lib/dvb/volume.h> +%include <lib/dvb/sec.h> +%include <lib/dvb/epgcache.h> +%include <lib/dvb/frontendparms.h> +%include <lib/dvb/dvbtime.h> +%include <lib/dvb/idvb.h> +%include <lib/dvb/dvb.h> +%include <lib/dvb/frontend.h> +%include <lib/dvb/pmt.h> +%include <lib/dvb/cahandler.h> +%include <lib/dvb/fastscan.h> +%include <lib/dvb/cablescan.h> +%include <lib/components/scan.h> +%include <lib/components/file_eraser.h> +%include <lib/components/tuxtxtapp.h> +%include <lib/driver/avswitch.h> +%include <lib/driver/hdmi_cec.h> +%include <lib/driver/rfmod.h> +%include <lib/driver/misc_options.h> +%include <lib/driver/etimezone.h> +%include <lib/gdi/lcd.h> +%include <lib/mmi/mmi_ui.h> +%include <lib/dvb_ci/dvbci.h> +%include <lib/dvb_ci/dvbci_ui.h> +%include <lib/dvb/db.h> +%include <lib/python/python.h> +%include <lib/python/pythonconfig.h> +%include <lib/gdi/picload.h> +/************** eptr **************/ + +/************** signals **************/ + +template<class R> class PSignal0 +{ +public: + PyObject *get(); +}; + +%template(PSignal0V) PSignal0<void>; + +%typemap(out) PSignal0V { + $1 = $input->get(); +} + +template<class R, class P0> class PSignal1 +{ +public: + PyObject *get(); +}; + +%template(PSignal1VI) PSignal1<void,int>; +%template(PSignal1VS) PSignal1<void,const char *c>; + +%typemap(out) PSignal1VI { + $1 = $input->get(); +} + +%typemap(out) PSignal1VS { + $1 = $input->get(); +} + +%template(PSignal1VoidICECMessage) PSignal1<void,ePtr<iCECMessage>&>; + +%typemap(out) PSignal1VoidICECMessage { + $1 = $input->get(); +} + +template<class R, class P0, class P1> class PSignal2 +{ +public: + PyObject *get(); +}; + +%template(PSignal2VoidIRecordableServiceInt) PSignal2<void,ePtr<iRecordableService>&,int>; + +%typemap(out) PSignal2VoidIRecordableServiceInt { + $1 = $input->get(); +} + +%template(PSignal2VII) PSignal2<void,int,int>; + +%typemap(out) PSignal2VII { + $1 = $input->get(); +} + +%{ +RESULT SwigFromPython(ePtr<gPixmap> &result, PyObject *obj) +{ + ePtr<gPixmap> *res; + + res = 0; + result = 0; +#ifndef SWIGTYPE_p_ePtrT_gPixmap_t +#define SWIGTYPE_p_ePtrT_gPixmap_t SWIGTYPE_p_ePtrTgPixmap_t +#endif + if (SWIG_Python_ConvertPtr(obj, (void **)&res, SWIGTYPE_p_ePtrT_gPixmap_t, SWIG_POINTER_EXCEPTION | 0)) + return -1; + if (!res) + return -1; + result = *res; + return 0; +} +PyObject *New_eServiceReference(const eServiceReference &ref) +{ + eServiceReference *result = new eServiceReference(ref); + return SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_eServiceReference, 1); +} +PyObject *New_iRecordableServicePtr(const ePtr<iRecordableService> &ptr) +{ + ePtr<iRecordableService> *result = new ePtr<iRecordableService>(ptr); +#ifndef SWIGTYPE_p_ePtrT_iRecordableService_t +#define SWIGTYPE_p_ePtrT_iRecordableService_t SWIGTYPE_p_ePtrTiRecordableService_t +#endif + return SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_ePtrT_iRecordableService_t, 1); +} +PyObject *New_iCECMessagePtr(const ePtr<iCECMessage> &ptr) +{ + ePtr<iCECMessage> *result = new ePtr<iCECMessage>(ptr); +#ifndef SWIGTYPE_p_ePtrT_iCECMessage_t +#define SWIGTYPE_p_ePtrT_iCECMessage_t SWIGTYPE_p_ePtrTiCECMessage_t +#endif + return SWIG_NewPointerObj((void*)(result), SWIGTYPE_p_ePtrT_iCECMessage_t, 1); +} +%} + +/* needed for service groups */ + +PyObject *getBestPlayableServiceReference(const eServiceReference &bouquet_ref, const eServiceReference &ignore, bool simulate=false); +%{ +PyObject *getBestPlayableServiceReference(const eServiceReference &bouquet_ref, const eServiceReference &ignore, bool simulate=false) +{ + eStaticServiceDVBBouquetInformation info; + if (info.isPlayable(bouquet_ref, ignore, simulate)) + return New_eServiceReference(info.getPlayableService()); + Py_INCREF(Py_None); + return Py_None; +} +%} + +void setTunerTypePriorityOrder(int); +%{ +void setTunerTypePriorityOrder(int order) +{ + eDVBFrontend::setTypePriorityOrder(order); +} +%} + +void setPreferredTuner(int); +%{ +void setPreferredTuner(int index) +{ + eDVBFrontend::setPreferredFrontend(index); +} +%} + +void setSpinnerOnOff(int); +%{ +void setSpinnerOnOff(int onoff) +{ + gRC *rc = gRC::getInstance(); + if (rc) rc->setSpinnerOnOff(onoff); +} +%} + +void setEnableTtCachingOnOff(int); +%{ +void setEnableTtCachingOnOff(int onoff) +{ + eTuxtxtApp *tt = eTuxtxtApp::getInstance(); + if (tt) tt->setEnableTtCachingOnOff(onoff); +} +%} + +/************** temp *****************/ + + /* need a better place for this, i agree. */ +%{ +extern void runMainloop(); +extern void quitMainloop(int exit_code); +extern eApplication *getApplication(); +extern int getPrevAsciiCode(); +extern void addFont(const char *filename, const char *alias, int scale_factor, int is_replacement, int renderflags = 0); +extern const char *getEnigmaVersionString(); +extern const char *getBoxType(); +extern void dump_malloc_stats(void); +%} + +extern void addFont(const char *filename, const char *alias, int scale_factor, int is_replacement, int renderflags = 0); +extern int getPrevAsciiCode(); +extern void runMainloop(); +extern void quitMainloop(int exit_code); +extern eApplication *getApplication(); +extern const char *getEnigmaVersionString(); +extern const char *getBoxType(); +extern void dump_malloc_stats(void); + +%include <lib/python/python_console.i> +%include <lib/python/python_base.i> diff --git a/lib/python/python.cpp b/lib/python/python.cpp new file mode 100644 index 0000000..c5fc191 --- /dev/null +++ b/lib/python/python.cpp @@ -0,0 +1,239 @@ +#include <lib/base/eerror.h> + /* avoid warnigs :) */ +#undef _POSIX_C_SOURCE +#define _POSIX_C_SOURCE 200112L +extern "C" void init_enigma(); +extern "C" void eBaseInit(void); +extern "C" void eConsoleInit(void); +extern void bsodFatal(const char *component); +extern void quitMainloop(int exitCode); + +#define SKIP_PART2 +#include <lib/python/python.h> +#undef SKIP_PART2 + +#ifdef PYTHON_REFCOUNT_DEBUG +ePyObject &ePyObject::operator=(PyObject *ob) +{ + m_ob=ob; + m_file=0; + m_line=0; + m_from=m_to=0; + m_erased=false; + return *this; +} + +ePyObject &ePyObject::operator=(const ePyObject &ob) +{ + m_ob=ob.m_ob; + m_file=ob.m_file; + m_line=ob.m_line; + m_from=ob.m_from; + m_to=ob.m_to; + m_erased=ob.m_erased; + return *this; +} + +ePyObject::operator PyObject*() +{ + if (m_ob) + { + if (!m_erased && m_ob->ob_refcnt > 0) + return m_ob; + eDebug("invalid access PyObject %s with refcount <= 0 %d", + m_erased ? "deleted" : "undeleted", m_ob->ob_refcnt); + if (m_file) + eDebug("last modified in file %s line %d from %d to %d", + m_file, m_line, m_from, m_to); + bsodFatal("enigma2, refcnt"); + } + return 0; +} + +void ePyObject::incref(const char *file, int line) +{ + if (!m_ob) + { + eDebug("invalid incref python object with null pointer %s %d!!!", file, line); + if (m_file) + eDebug("last modified in file %s line %d from %d to %d", + m_file, m_line, m_from, m_to); + bsodFatal("enigma2, refcnt"); + } + if (m_erased || m_ob->ob_refcnt <= 0) + { + eDebug("invalid incref %s python object with refcounting value %d in file %s line %d!!!", + m_erased ? "deleted" : "undeleted", m_ob->ob_refcnt, file, line); + if (m_file) + eDebug("last modified in file %s line %d from %d to %d", + m_file, m_line, m_from, m_to); + bsodFatal("enigma2, refcnt"); + } + if (m_ob->ob_refcnt == 0x7FFFFFFF) + { + eDebug("invalid incref %s python object with refcounting value %d (MAX_INT!!!) in file %s line %d!!!", + m_erased ? "deleted" : "undeleted", m_ob->ob_refcnt, file, line); + if (m_file) + eDebug("last modified in file %s line %d from %d to %d", + m_file, m_line, m_from, m_to); + bsodFatal("enigma2, refcnt"); + } + m_file = file; + m_line = line; + m_from = m_ob->ob_refcnt; + m_to = m_from+1; + Py_INCREF(m_ob); +} + +void ePyObject::decref(const char *file, int line) +{ + if (!m_ob) + { + eDebug("invalid decref python object with null pointer %s %d!!!", file, line); + if (m_file) + eDebug("last modified in file %s line %d from %d to %d", + m_file, m_line, m_from, m_to); + bsodFatal("enigma2, refcnt"); + } + if (m_erased || m_ob->ob_refcnt <= 0) + { + eDebug("invalid decref %s python object with refcounting value %d in file %s line %d!!!", + m_erased ? "deleted" : "undeleted", m_ob->ob_refcnt, file, line); + if (m_file) + eDebug("last modified in file %s line %d from %d to %d", + m_file, m_line, m_from, m_to); + bsodFatal("enigma2, refcnt"); + } + m_file = file; + m_line = line; + m_from = m_ob->ob_refcnt; + m_to = m_from-1; + m_erased = !m_to; + Py_DECREF(m_ob); +} +#endif // PYTHON_REFCOUNT_DEBUG + +#define SKIP_PART1 +#include <lib/python/python.h> +#undef SKIP_PART1 + +ePython::ePython() +{ +// Py_VerboseFlag = 1; + +// Py_OptimizeFlag = 1; + + Py_Initialize(); + PyEval_InitThreads(); + + init_enigma(); + eBaseInit(); + eConsoleInit(); +} + +ePython::~ePython() +{ +// This appears to hang, sorry. +// Py_Finalize(); +} + +int ePython::execFile(const char *file) +{ + FILE *fp = fopen(file, "r"); + if (!fp) + return -ENOENT; + int ret = PyRun_SimpleFile(fp, file); + fclose(fp); + return ret; +} + +int ePython::execute(const std::string &pythonfile, const std::string &funcname) +{ + ePyObject pName, pModule, pDict, pFunc, pArgs, pValue; + pName = PyString_FromString(pythonfile.c_str()); + + pModule = PyImport_Import(pName); + Py_DECREF(pName); + + if (pModule) + { + pDict = PyModule_GetDict(pModule); + + pFunc = PyDict_GetItemString(pDict, funcname.c_str()); + + if (pFunc && PyCallable_Check(pFunc)) + { + pArgs = PyTuple_New(0); + // implement arguments.. + pValue = PyObject_CallObject(pFunc, pArgs); + Py_DECREF(pArgs); + if (pValue) + { + printf("Result of call: %ld\n", PyInt_AsLong(pValue)); + Py_DECREF(pValue); + } else + { + Py_DECREF(pModule); + PyErr_Print(); + return 1; + } + } + } else + { + if (PyErr_Occurred()) + PyErr_Print(); + return 1; + } + return 0; +} + +int ePython::call(ePyObject pFunc, ePyObject pArgs) +{ + int res = -1; + ePyObject pValue; + if (pFunc && PyCallable_Check(pFunc)) + { + pValue = PyObject_CallObject(pFunc, pArgs); + if (pValue) + { + if (PyInt_Check(pValue)) + res = PyInt_AsLong(pValue); + else + res = 0; + Py_DECREF(pValue); + } else + { + PyErr_Print(); + ePyObject FuncStr = PyObject_Str(pFunc); + ePyObject ArgStr = PyObject_Str(pArgs); + eDebug("(PyObject_CallObject(%s,%s) failed)", PyString_AS_STRING(FuncStr), PyString_AS_STRING(ArgStr)); + Py_DECREF(FuncStr); + Py_DECREF(ArgStr); + /* immediately show BSOD, so we have the actual error at the bottom */ + bsodFatal(0); + /* and make sure we quit (which would also eventually cause a bsod, but with useless termination messages) */ + quitMainloop(5); + } + } + return res; +} + +ePyObject ePython::resolve(const std::string &pythonfile, const std::string &funcname) +{ + ePyObject pName, pModule, pDict, pFunc; + + pName = PyString_FromString(pythonfile.c_str()); + + pModule = PyImport_Import(pName); + Py_DECREF(pName); + + if (pModule) + { + pDict = PyModule_GetDict(pModule); + pFunc = PyDict_GetItemString(pDict, funcname.c_str()); + Py_XINCREF(pFunc); + Py_DECREF(pModule); + } else if (PyErr_Occurred()) + PyErr_Print(); + return pFunc; +} diff --git a/lib/python/python.h b/lib/python/python.h new file mode 100644 index 0000000..f5b6e4d --- /dev/null +++ b/lib/python/python.h @@ -0,0 +1,427 @@ +#ifndef __lib_python_python_class_h + +#ifndef SKIP_PART2 + #define __lib_python_python_class_h +#endif + +#include <string> +#include <lib/base/object.h> + +#if !defined(SKIP_PART1) && !defined(SWIG) +class ePyObject +{ + PyObject *m_ob; +#ifdef PYTHON_REFCOUNT_DEBUG + const char *m_file; + int m_line, m_from, m_to; + bool m_erased; +#endif +public: + inline ePyObject(); + inline ePyObject(const ePyObject &ob); + inline ePyObject(PyObject *ob); +#ifdef PYTHON_REFCOUNT_DEBUG + inline ePyObject(PyObject *ob, const char *file, int line); +#endif + inline ePyObject(PyVarObject *ob); + inline ePyObject(PyDictObject *ob); + inline ePyObject(PyTupleObject *ob); + inline ePyObject(PyListObject *ob); + inline ePyObject(PyStringObject *ob); + operator bool() const { return !!m_ob; } + operator bool() { return !!m_ob; } + ePyObject &operator=(const ePyObject &); + ePyObject &operator=(PyObject *); + ePyObject &operator=(PyVarObject *ob) { return operator=((PyObject*)ob); } + ePyObject &operator=(PyDictObject *ob) { return operator=((PyObject*)ob); } + ePyObject &operator=(PyTupleObject *ob) { return operator=((PyObject*)ob); } + ePyObject &operator=(PyListObject *ob) { return operator=((PyObject*)ob); } + ePyObject &operator=(PyStringObject *ob) { return operator=((PyObject*)ob); } + operator PyObject*(); + operator PyVarObject*() { return (PyVarObject*)operator PyVarObject*(); } + operator PyTupleObject*() { return (PyTupleObject*)operator PyObject*(); } + operator PyListObject*() { return (PyListObject*)operator PyObject*(); } + operator PyStringObject*() { return (PyStringObject*)operator PyObject*(); } + operator PyDictObject*() { return (PyDictObject*)operator PyObject*(); } + PyObject *operator->() { return operator PyObject*(); } +#ifdef PYTHON_REFCOUNT_DEBUG + void incref(const char *file, int line); + void decref(const char *file, int line); +#else + void incref(); + void decref(); +#endif +}; + +inline ePyObject::ePyObject() + :m_ob(0) +#ifdef PYTHON_REFCOUNT_DEBUG + ,m_file(0), m_line(0), m_from(0), m_to(0), m_erased(false) +#endif +{ +} + +inline ePyObject::ePyObject(const ePyObject &ob) + :m_ob(ob.m_ob) +#ifdef PYTHON_REFCOUNT_DEBUG + ,m_file(ob.m_file), m_line(ob.m_line) + ,m_from(ob.m_from), m_to(ob.m_to), m_erased(ob.m_erased) +#endif +{ +} + +inline ePyObject::ePyObject(PyObject *ob) + :m_ob(ob) +#ifdef PYTHON_REFCOUNT_DEBUG + ,m_file(0), m_line(0), m_from(0), m_to(0), m_erased(false) +#endif +{ +} + +#ifdef PYTHON_REFCOUNT_DEBUG +inline ePyObject::ePyObject(PyObject *ob, const char* file, int line) + :m_ob(ob) + ,m_file(file), m_line(line), m_from(ob->ob_refcnt), m_to(ob->ob_refcnt), m_erased(false) +{ +} +#endif + +inline ePyObject::ePyObject(PyVarObject *ob) + :m_ob((PyObject*)ob) +#ifdef PYTHON_REFCOUNT_DEBUG + ,m_file(0), m_line(0), m_from(0), m_to(0), m_erased(false) +#endif +{ +} + +inline ePyObject::ePyObject(PyDictObject *ob) + :m_ob((PyObject*)ob) +#ifdef PYTHON_REFCOUNT_DEBUG + ,m_file(0), m_line(0), m_from(0), m_to(0), m_erased(false) +#endif +{ +} + +inline ePyObject::ePyObject(PyTupleObject *ob) + :m_ob((PyObject*)ob) +#ifdef PYTHON_REFCOUNT_DEBUG + ,m_file(0), m_line(0), m_from(0), m_to(0), m_erased(false) +#endif +{ +} + +inline ePyObject::ePyObject(PyListObject *ob) + :m_ob((PyObject*)ob) +#ifdef PYTHON_REFCOUNT_DEBUG + ,m_file(0), m_line(0), m_from(0), m_to(0), m_erased(false) +#endif +{ +} + +inline ePyObject::ePyObject(PyStringObject *ob) + :m_ob((PyObject*)ob) +#ifdef PYTHON_REFCOUNT_DEBUG + ,m_file(0), m_line(0), m_from(0), m_to(0), m_erased(false) +#endif +{ +} + +#ifndef PYTHON_REFCOUNT_DEBUG +inline ePyObject &ePyObject::operator=(PyObject *ob) +{ + m_ob=ob; + return *this; +} + +inline ePyObject &ePyObject::operator=(const ePyObject &ob) +{ + m_ob=ob.m_ob; + return *this; +} + +inline ePyObject::operator PyObject*() +{ + return m_ob; +} + +inline void ePyObject::incref() +{ + Py_INCREF(m_ob); +} + +inline void ePyObject::decref() +{ + Py_DECREF(m_ob); +} + +class ePyObjectWrapper +{ + ePyObject m_obj; +public: + ePyObjectWrapper(const ePyObjectWrapper &wrapper) + :m_obj(wrapper.m_obj) + { + Py_INCREF(m_obj); + } + ePyObjectWrapper(const ePyObject &obj) + :m_obj(obj) + { + Py_INCREF(m_obj); + } + ~ePyObjectWrapper() + { + Py_DECREF(m_obj); + } + ePyObjectWrapper &operator=(const ePyObjectWrapper &wrapper) + { + Py_DECREF(m_obj); + m_obj = wrapper.m_obj; + Py_INCREF(m_obj); + return *this; + } + operator PyObject*() + { + return m_obj; + } + operator ePyObject() + { + return m_obj; + } +}; + +#endif // ! PYTHON_REFCOUNT_DEBUG + +#endif // !SWIG && !SKIP_PART1 + +#ifndef SKIP_PART2 +#ifndef SWIG +#ifdef PYTHON_REFCOUNT_DEBUG +inline void Impl_Py_DECREF(const char* file, int line, const ePyObject &obj) +{ + ((ePyObject*)(&obj))->decref(file, line); +} + +inline void Impl_Py_INCREF(const char* file, int line, const ePyObject &obj) +{ + ((ePyObject*)(&obj))->incref(file, line); +} + +inline void Impl_Py_XDECREF(const char* file, int line, const ePyObject &obj) +{ + if (obj) + ((ePyObject*)(&obj))->decref(file, line); +} + +inline void Impl_Py_XINCREF(const char* file, int line, const ePyObject &obj) +{ + if (obj) + ((ePyObject*)(&obj))->incref(file, line); +} + +inline ePyObject Impl_PyTuple_New(const char* file, int line, int elements=0) +{ + return ePyObject(PyTuple_New(elements), file, line); +} + +inline ePyObject Impl_PyList_New(const char* file, int line, int elements=0) +{ + return ePyObject(PyList_New(elements), file, line); +} + +inline ePyObject Impl_PyDict_New(const char* file, int line) +{ + return ePyObject(PyDict_New(), file, line); +} + +inline ePyObject Impl_PyString_FromString(const char* file, int line, const char *str) +{ + return ePyObject(PyString_FromString(str), file, line); +} + +inline ePyObject Impl_PyString_FromFormat(const char* file, int line, const char *fmt, ...) +{ + va_list ap; + va_start(ap, fmt); + PyObject *ob = PyString_FromFormatV(fmt, ap); + va_end(ap); + return ePyObject(ob, file, line); +} + +inline ePyObject Impl_PyInt_FromLong(const char* file, int line, long val) +{ + return ePyObject(PyInt_FromLong(val), file, line); +} + +inline ePyObject Impl_PyLong_FromLong(const char* file, int line, long val) +{ + return ePyObject(PyLong_FromLong(val), file, line); +} + +inline ePyObject Impl_PyLong_FromUnsignedLong(const char* file, int line, unsigned long val) +{ + return ePyObject(PyLong_FromUnsignedLong(val), file, line); +} + +inline ePyObject Impl_PyLong_FromLongLong(const char* file, int line, long long val) +{ + return ePyObject(PyLong_FromLongLong(val), file, line); +} + +inline ePyObject Impl_PyList_GET_ITEM(const char *file, int line, ePyObject list, unsigned int pos) +{ + return ePyObject(PyList_GET_ITEM(list, pos), file, line); +} + +inline ePyObject Impl_PyTuple_GET_ITEM(const char *file, int line, ePyObject list, unsigned int pos) +{ + return ePyObject(PyTuple_GET_ITEM(list, pos), file, line); +} +#else +inline void Impl_Py_DECREF(const ePyObject &obj) +{ + ((ePyObject*)(&obj))->decref(); +} + +inline void Impl_Py_INCREF(const ePyObject &obj) +{ + ((ePyObject*)(&obj))->incref(); +} + +inline void Impl_Py_XDECREF(const ePyObject &obj) +{ + if (obj) + ((ePyObject*)(&obj))->decref(); +} + +inline void Impl_Py_XINCREF(const ePyObject &obj) +{ + if (obj) + ((ePyObject*)(&obj))->incref(); +} + +inline ePyObject Impl_PyTuple_New(int elements=0) +{ + return PyTuple_New(elements); +} + +inline ePyObject Impl_PyList_New(int elements=0) +{ + return PyList_New(elements); +} + +inline ePyObject Impl_PyDict_New() +{ + return PyDict_New(); +} + +inline ePyObject Impl_PyString_FromString(const char *str) +{ + return PyString_FromString(str); +} + +inline ePyObject Impl_PyString_FromFormat(const char *fmt, ...) +{ + va_list ap; + va_start(ap, fmt); + PyObject *ob = PyString_FromFormatV(fmt, ap); + va_end(ap); + return ePyObject(ob); +} + +inline ePyObject Impl_PyInt_FromLong(long val) +{ + return PyInt_FromLong(val); +} + +inline ePyObject Impl_PyLong_FromLong(long val) +{ + return PyLong_FromLong(val); +} + +inline ePyObject Impl_PyLong_FromUnsignedLong(unsigned long val) +{ + return PyLong_FromUnsignedLong(val); +} + +inline ePyObject Impl_PyLong_FromLongLong(long long val) +{ + return PyLong_FromLongLong(val); +} + +inline ePyObject Impl_PyList_GET_ITEM(ePyObject list, unsigned int pos) +{ + return PyList_GET_ITEM(list, pos); +} + +inline ePyObject Impl_PyTuple_GET_ITEM(ePyObject list, unsigned int pos) +{ + return PyTuple_GET_ITEM(list, pos); +} +#endif + +inline void Impl_INCREF(PyObject *ob) +{ + Py_INCREF(ob); +} + +inline void Impl_DECREF(PyObject *ob) +{ + Py_DECREF(ob); +} +#define Org_Py_INCREF(obj) Impl_INCREF(obj) +#define Org_Py_DECREF(obj) Impl_DECREF(obj) +#undef Py_DECREF +#undef Py_XDECREF +#undef Py_INCREF +#undef Py_XINCREF +#undef PyList_GET_ITEM +#undef PyTuple_GET_ITEM +#ifdef PYTHON_REFCOUNT_DEBUG +#define Py_DECREF(obj) Impl_Py_DECREF(__FILE__, __LINE__, obj) +#define Py_XDECREF(obj) Impl_Py_XDECREF(__FILE__, __LINE__, obj) +#define Py_INCREF(obj) Impl_Py_INCREF(__FILE__, __LINE__, obj) +#define Py_XINCREF(obj) Impl_Py_XINCREF(__FILE__, __LINE__, obj) +#define PyList_New(args...) Impl_PyList_New(__FILE__, __LINE__, args) +#define PyTuple_New(args...) Impl_PyTuple_New(__FILE__, __LINE__, args) +#define PyDict_New(...) Impl_PyDict_New(__FILE__, __LINE__) +#define PyString_FromString(str) Impl_PyString_FromString(__FILE__, __LINE__, str) +#define PyString_FromFormat(str, args...) Impl_PyString_FromFormat(__FILE__, __LINE__, str, args) +#define PyInt_FromLong(val) Impl_PyInt_FromLong(__FILE__, __LINE__, val) +#define PyLong_FromLong(val) Impl_PyLong_FromLong(__FILE__, __LINE__, val) +#define PyLong_FromUnsignedLong(val) Impl_PyLong_FromUnsignedLong(__FILE__, __LINE__, val) +#define PyLong_FromLongLong(val) Impl_PyLong_FromLongLong(__FILE__, __LINE__, val) +#define PyList_GET_ITEM(list, pos) Impl_PyList_GET_ITEM(__FILE__, __LINE__, list, pos) +#define PyTuple_GET_ITEM(list, pos) Impl_PyTuple_GET_ITEM(__FILE__, __LINE__, list, pos) +#else +#define Py_DECREF(obj) Impl_Py_DECREF(obj) +#define Py_XDECREF(obj) Impl_Py_XDECREF(obj) +#define Py_INCREF(obj) Impl_Py_INCREF(obj) +#define Py_XINCREF(obj) Impl_Py_XINCREF(obj) +#define PyList_New(args...) Impl_PyList_New(args) +#define PyTuple_New(args...) Impl_PyTuple_New(args) +#define PyDict_New(...) Impl_PyDict_New() +#define PyString_FromString(str) Impl_PyString_FromString(str) +#define PyString_FromFormat(str, args...) Impl_PyString_FromFormat(str, args) +#define PyInt_FromLong(val) Impl_PyInt_FromLong(val) +#define PyLong_FromLong(val) Impl_PyLong_FromLong(val) +#define PyLong_FromUnsignedLong(val) Impl_PyLong_FromUnsignedLong(val) +#define PyLong_FromLongLong(val) Impl_PyLong_FromLongLong(val) +#define PyList_GET_ITEM(list, pos) Impl_PyList_GET_ITEM(list, pos) +#define PyTuple_GET_ITEM(list, pos) Impl_PyTuple_GET_ITEM(list, pos) +#endif + +class ePython +{ +public: + ePython(); + ~ePython(); + int execFile(const char *file); + int execute(const std::string &pythonfile, const std::string &funcname); + static int call(ePyObject pFunc, ePyObject args); + static ePyObject resolve(const std::string &pythonfile, const std::string &funcname); +private: +}; + +#endif // SWIG +#endif // SKIP_PART2 +#endif // __lib_python_python_class_h diff --git a/lib/python/python_base.i b/lib/python/python_base.i new file mode 100644 index 0000000..34eea08 --- /dev/null +++ b/lib/python/python_base.i @@ -0,0 +1,425 @@ +%{ +#include <lib/base/ebase.h> +#include "structmember.h" + +extern "C" { + +// eTimer replacement + +struct eTimerPy +{ + PyObject_HEAD + eTimer *tm; + PyObject *in_weakreflist; /* List of weak references */ +}; + +static int +eTimerPy_traverse(eTimerPy *self, visitproc visit, void *arg) +{ + PyObject *obj = self->tm->timeout.getSteal(); + if (obj) { + Py_VISIT(obj); + } + return 0; +} + +static int +eTimerPy_clear(eTimerPy *self) +{ + PyObject *obj = self->tm->timeout.getSteal(true); + if (obj) + Py_CLEAR(obj); + return 0; +} + +static void +eTimerPy_dealloc(eTimerPy* self) +{ + if (self->in_weakreflist != NULL) + PyObject_ClearWeakRefs((PyObject *) self); + eTimerPy_clear(self); + self->tm->Release(); + self->ob_type->tp_free((PyObject*)self); +} + +static PyObject * +eTimerPy_new(PyTypeObject *type, PyObject *args, PyObject *kwds) +{ + eTimerPy *self = (eTimerPy *)type->tp_alloc(type, 0); + self->tm = eTimer::create(eApp); + self->tm->AddRef(); + self->in_weakreflist = NULL; + return (PyObject *)self; +} + +static PyObject * +eTimerPy_is_active(eTimerPy* self) +{ + PyObject *ret = NULL; + ret = self->tm->isActive() ? Py_True : Py_False; + Org_Py_INCREF(ret); + return ret; +} + +static PyObject * +eTimerPy_start(eTimerPy* self, PyObject *args) +{ + long v=0; + long singleShot=0; + if (PyTuple_Size(args) > 1) + { + if (!PyArg_ParseTuple(args, "ll", &v, &singleShot)) // when 2nd arg is a value + { + PyObject *obj=0; + if (!PyArg_ParseTuple(args, "lO", &v, &obj)) // get 2nd arg as python object + return NULL; + else if (obj == Py_True) + singleShot=1; + else if (obj != Py_False) + return NULL; + } + } + else if (!PyArg_ParseTuple(args, "l", &v)) + return NULL; + self->tm->start(v, singleShot); + Py_RETURN_NONE; +} + +static PyObject * +eTimerPy_start_long(eTimerPy* self, PyObject *args) +{ + int v=0; + if (!PyArg_ParseTuple(args, "i", &v)) { + return NULL; + } + self->tm->startLongTimer(v); + Py_RETURN_NONE; +} + +static PyObject * +eTimerPy_change_interval(eTimerPy* self, PyObject *args) +{ + long v=0; + if (!PyArg_ParseTuple(args, "l", &v)) { + return NULL; + } + self->tm->changeInterval(v); + Py_RETURN_NONE; +} + +static PyObject * +eTimerPy_stop(eTimerPy* self) +{ + self->tm->stop(); + Py_RETURN_NONE; +} + +static PyObject * +eTimerPy_get_callback_list(eTimerPy *self) +{ //used for compatibilty with the old eTimer + return self->tm->timeout.get(); +} + +static PyMethodDef eTimerPy_methods[] = { + {"isActive", (PyCFunction)eTimerPy_is_active, METH_NOARGS, + "returns the timer state" + }, + {"start", (PyCFunction)eTimerPy_start, METH_VARARGS, + "start timer with interval in msecs" + }, + {"startLongTimer", (PyCFunction)eTimerPy_start_long, METH_VARARGS, + "start timer with interval in secs" + }, + {"changeInterval", (PyCFunction)eTimerPy_change_interval, METH_VARARGS, + "change interval of a timer (in msecs)" + }, + {"stop", (PyCFunction)eTimerPy_stop, METH_NOARGS, + "stops the timer" + }, + //used for compatibilty with the old eTimer + {"get", (PyCFunction)eTimerPy_get_callback_list, METH_NOARGS, + "get timeout callback list" + }, + {NULL} /* Sentinel */ +}; + +static PyObject * +eTimerPy_get_cb_list(eTimerPy *self, void *closure) +{ + return self->tm->timeout.get(); +} + +static PyObject * +eTimerPy_timeout(eTimerPy *self, void *closure) +{ //used for compatibilty with the old eTimer + Org_Py_INCREF((PyObject*)self); + return (PyObject*)self; +} + +static PyGetSetDef eTimerPy_getseters[] = { + {"callback", + (getter)eTimerPy_get_cb_list, (setter)0, + "returns the callback python list", + NULL}, + + {"timeout", //used for compatibilty with the old eTimer + (getter)eTimerPy_timeout, (setter)0, + "synonym for our self", + NULL}, + + {NULL} /* Sentinel */ +}; + +static PyTypeObject eTimerPyType = { + PyObject_HEAD_INIT(NULL) + 0, /*ob_size*/ + "eBaseImpl.eTimer", /*tp_name*/ + sizeof(eTimerPy), /*tp_basicsize*/ + 0, /*tp_itemsize*/ + (destructor)eTimerPy_dealloc, /*tp_dealloc*/ + 0, /*tp_print*/ + 0, /*tp_getattr*/ + 0, /*tp_setattr*/ + 0, /*tp_compare*/ + 0, /*tp_repr*/ + 0, /*tp_as_number*/ + 0, /*tp_as_sequence*/ + 0, /*tp_as_mapping*/ + 0, /*tp_hash */ + 0, /*tp_call*/ + 0, /*tp_str*/ + 0, /*tp_getattro*/ + 0, /*tp_setattro*/ + 0, /*tp_as_buffer*/ + Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC, /*tp_flags*/ + "eTimer objects", /* tp_doc */ + (traverseproc)eTimerPy_traverse, /* tp_traverse */ + (inquiry)eTimerPy_clear, /* tp_clear */ + 0, /* tp_richcompare */ + offsetof(eTimerPy, in_weakreflist), /* tp_weaklistoffset */ + 0, /* tp_iter */ + 0, /* tp_iternext */ + eTimerPy_methods, /* tp_methods */ + 0, /* tp_members */ + eTimerPy_getseters, /* tp_getset */ + 0, /* tp_base */ + 0, /* tp_dict */ + 0, /* tp_descr_get */ + 0, /* tp_descr_set */ + 0, /* tp_dictoffset */ + 0, /* tp_init */ + 0, /* tp_alloc */ + eTimerPy_new, /* tp_new */ +}; + +// eSocketNotifier replacement + +struct eSocketNotifierPy +{ + PyObject_HEAD + eSocketNotifier *sn; + PyObject *in_weakreflist; /* List of weak references */ +}; + +static int +eSocketNotifierPy_traverse(eSocketNotifierPy *self, visitproc visit, void *arg) +{ + PyObject *obj = self->sn->activated.getSteal(); + if (obj) + Py_VISIT(obj); + return 0; +} + +static int +eSocketNotifierPy_clear(eSocketNotifierPy *self) +{ + PyObject *obj = self->sn->activated.getSteal(true); + if (obj) + Py_CLEAR(obj); + return 0; +} + +static void +eSocketNotifierPy_dealloc(eSocketNotifierPy* self) +{ + if (self->in_weakreflist != NULL) + PyObject_ClearWeakRefs((PyObject *) self); + eSocketNotifierPy_clear(self); + self->sn->Release(); + self->ob_type->tp_free((PyObject*)self); +} + +static PyObject * +eSocketNotifierPy_new(PyTypeObject *type, PyObject *args, PyObject *kwds) +{ + eSocketNotifierPy *self = (eSocketNotifierPy *)type->tp_alloc(type, 0); + int fd, req, immediate_start = 1, size = PyTuple_Size(args); + if (size > 2) + { + if (!PyArg_ParseTuple(args, "iii", &fd, &req, &immediate_start)) + { + PyObject *obj = NULL; + if (!PyArg_ParseTuple(args, "iiO", &fd, &req, &immediate_start)) + return NULL; + if (obj == Py_False) + immediate_start = 0; + else if (obj != Py_True) + return NULL; + } + } + else if (size < 2 || !PyArg_ParseTuple(args, "ii", &fd, &req)) + return NULL; + self->sn = eSocketNotifier::create(eApp, fd, req, immediate_start); + self->sn->AddRef(); + self->in_weakreflist = NULL; + return (PyObject *)self; +} + +static PyObject * +eSocketNotifierPy_is_running(eSocketNotifierPy* self) +{ + PyObject *ret = self->sn->isRunning() ? Py_True : Py_False; + Org_Py_INCREF(ret); + return ret; +} + +static PyObject * +eSocketNotifierPy_start(eSocketNotifierPy* self) +{ + self->sn->start(); + Py_RETURN_NONE; +} + +static PyObject * +eSocketNotifierPy_stop(eSocketNotifierPy* self) +{ + self->sn->stop(); + Py_RETURN_NONE; +} + +static PyObject * +eSocketNotifierPy_get_fd(eSocketNotifierPy* self) +{ + return PyInt_FromLong(self->sn->getFD()); +} + +static PyObject * +eSocketNotifierPy_get_requested(eSocketNotifierPy* self) +{ + return PyInt_FromLong(self->sn->getRequested()); +} + +static PyObject * +eSocketNotifierPy_set_requested(eSocketNotifierPy* self, PyObject *args) +{ + int req; + if (PyTuple_Size(args) != 1 || !PyArg_ParseTuple(args, "i", &req)) + return NULL; + self->sn->setRequested(req); + Py_RETURN_NONE; +} + +static PyMethodDef eSocketNotifierPy_methods[] = { + {"isRunning", (PyCFunction)eSocketNotifierPy_is_running, METH_NOARGS, + "returns the running state" + }, + {"start", (PyCFunction)eSocketNotifierPy_start, METH_NOARGS, + "start the sn" + }, + {"stop", (PyCFunction)eSocketNotifierPy_stop, METH_NOARGS, + "stops the sn" + }, + {"getFD", (PyCFunction)eSocketNotifierPy_get_fd, METH_NOARGS, + "get file descriptor" + }, + {"getRequested", (PyCFunction)eSocketNotifierPy_get_requested, METH_NOARGS, + "get requested" + }, + {"setRequested", (PyCFunction)eSocketNotifierPy_set_requested, METH_VARARGS, + "set requested" + }, + {NULL} /* Sentinel */ +}; + +static PyObject * +eSocketNotifierPy_get_cb_list(eSocketNotifierPy *self, void *closure) +{ + return self->sn->activated.get(); +} + +static PyGetSetDef eSocketNotifierPy_getseters[] = { + {"callback", + (getter)eSocketNotifierPy_get_cb_list, (setter)0, + "returns the callback python list", + NULL}, + {NULL} /* Sentinel */ +}; + +static PyTypeObject eSocketNotifierPyType = { + PyObject_HEAD_INIT(NULL) + 0, /*ob_size*/ + "eBaseImpl.eSocketNotifier", /*tp_name*/ + sizeof(eSocketNotifierPy), /*tp_basicsize*/ + 0, /*tp_itemsize*/ + (destructor)eSocketNotifierPy_dealloc, /*tp_dealloc*/ + 0, /*tp_print*/ + 0, /*tp_getattr*/ + 0, /*tp_setattr*/ + 0, /*tp_compare*/ + 0, /*tp_repr*/ + 0, /*tp_as_number*/ + 0, /*tp_as_sequence*/ + 0, /*tp_as_mapping*/ + 0, /*tp_hash */ + 0, /*tp_call*/ + 0, /*tp_str*/ + 0, /*tp_getattro*/ + 0, /*tp_setattro*/ + 0, /*tp_as_buffer*/ + Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC, /*tp_flags*/ + "eTimer objects", /* tp_doc */ + (traverseproc)eSocketNotifierPy_traverse, /* tp_traverse */ + (inquiry)eSocketNotifierPy_clear, /* tp_clear */ + 0, /* tp_richcompare */ + offsetof(eSocketNotifierPy, in_weakreflist), /* tp_weaklistoffset */ + 0, /* tp_iter */ + 0, /* tp_iternext */ + eSocketNotifierPy_methods, /* tp_methods */ + 0, /* tp_members */ + eSocketNotifierPy_getseters, /* tp_getset */ + 0, /* tp_base */ + 0, /* tp_dict */ + 0, /* tp_descr_get */ + 0, /* tp_descr_set */ + 0, /* tp_dictoffset */ + 0, /* tp_init */ + 0, /* tp_alloc */ + eSocketNotifierPy_new, /* tp_new */ +}; + +static PyMethodDef base_module_methods[] = { + {NULL} /* Sentinel */ +}; + +void eBaseInit(void) +{ + PyObject* m = Py_InitModule3("eBaseImpl", base_module_methods, + "Module that implements some enigma classes with working cyclic garbage collection."); + + if (m == NULL) + return; + + if (!PyType_Ready(&eTimerPyType)) + { + Org_Py_INCREF((PyObject*)&eTimerPyType); + PyModule_AddObject(m, "eTimer", (PyObject*)&eTimerPyType); + } + if (!PyType_Ready(&eSocketNotifierPyType)) + { + Org_Py_INCREF((PyObject*)&eSocketNotifierPyType); + PyModule_AddObject(m, "eSocketNotifier", (PyObject*)&eSocketNotifierPyType); + } +} +} + +%} diff --git a/lib/python/python_console.i b/lib/python/python_console.i new file mode 100644 index 0000000..ea22b86 --- /dev/null +++ b/lib/python/python_console.i @@ -0,0 +1,385 @@ +%{ +#include <lib/base/console.h> +#include "structmember.h" + +extern "C" { + +struct eConsolePy +{ + PyObject_HEAD + eConsoleAppContainer *cont; + PyObject *in_weakreflist; /* List of weak references */ +}; + +static PyObject * +eConsolePy_dataAvail(eConsolePy *self, void *closure) +{ + return self->cont->dataAvail.get(); +} + +static PyObject * +eConsolePy_stdoutAvail(eConsolePy *self, void *closure) +{ + return self->cont->stdoutAvail.get(); +} + +static PyObject * +eConsolePy_stderrAvail(eConsolePy *self, void *closure) +{ + return self->cont->stderrAvail.get(); +} + +static PyObject * +eConsolePy_dataSent(eConsolePy *self, void *closure) +{ + return self->cont->dataSent.get(); +} + +static PyObject * +eConsolePy_appClosed(eConsolePy *self, void *closure) +{ + return self->cont->appClosed.get(); +} + +static PyGetSetDef eConsolePy_getseters[] = { + {"dataAvail", + (getter)eConsolePy_dataAvail, (setter)0, + "dataAvail callback list", + NULL}, + {"stdoutAvail", + (getter)eConsolePy_stdoutAvail, (setter)0, + "stdoutAvail callback list", + NULL}, + {"stderrAvail", + (getter)eConsolePy_stderrAvail, (setter)0, + "stderrAvail callback list", + NULL}, + {"dataSent", + (getter)eConsolePy_dataSent, (setter)0, + "dataSent callback list", + NULL}, + {"appClosed", + (getter)eConsolePy_appClosed, (setter)0, + "appClosed callback list", + NULL}, + {NULL} /* Sentinel */ +}; + +static int +eConsolePy_traverse(eConsolePy *self, visitproc visit, void *arg) +{ + PyObject *obj = self->cont->dataAvail.getSteal(); + if (obj) { + Py_VISIT(obj); + } + obj = self->cont->stdoutAvail.getSteal(); + if (obj) { + Py_VISIT(obj); + } + obj = self->cont->stderrAvail.getSteal(); + if (obj) { + Py_VISIT(obj); + } + obj = self->cont->dataSent.getSteal(); + if (obj) { + Py_VISIT(obj); + } + obj = self->cont->appClosed.getSteal(); + if (obj) { + Py_VISIT(obj); + } + return 0; +} + +static int +eConsolePy_clear(eConsolePy *self) +{ + PyObject *obj = self->cont->dataAvail.getSteal(true); + if (obj) { + Py_CLEAR(obj); + } + obj = self->cont->stdoutAvail.getSteal(true); + if (obj) { + Py_CLEAR(obj); + } + obj = self->cont->stderrAvail.getSteal(true); + if (obj) { + Py_CLEAR(obj); + } + obj = self->cont->dataSent.getSteal(true); + if (obj) { + Py_CLEAR(obj); + } + obj = self->cont->appClosed.getSteal(true); + if (obj) { + Py_CLEAR(obj); + } + return 0; +} + +static void +eConsolePy_dealloc(eConsolePy* self) +{ + if (self->in_weakreflist != NULL) + PyObject_ClearWeakRefs((PyObject *) self); + eConsolePy_clear(self); + self->cont->Release(); + self->ob_type->tp_free((PyObject*)self); +} + +static PyObject * +eConsolePy_new(PyTypeObject *type, PyObject *args, PyObject *kwds) +{ + eConsolePy *self = (eConsolePy *)type->tp_alloc(type, 0); + self->cont = new eConsoleAppContainer(); + self->cont->AddRef(); + self->in_weakreflist = NULL; + return (PyObject *)self; +} + +static PyObject * +eConsolePy_running(eConsolePy* self) +{ + PyObject *ret = NULL; + ret = self->cont->running() ? Py_True : Py_False; + Org_Py_INCREF(ret); + return ret; +} + +static PyObject * +eConsolePy_execute(eConsolePy* self, PyObject *argt) +{ + Py_ssize_t argc = PyTuple_Size(argt); + if (argc > 1) + { + const char *argv[argc + 1]; + int argpos=0; + while(argpos < argc) + { + PyObject *arg = PyTuple_GET_ITEM(argt, argpos); + if (!PyString_Check(arg)) + { + char err[255]; + if (argpos) + snprintf(err, 255, "arg %d is not a string", argpos); + else + snprintf(err, 255, "cmd is not a string!"); + PyErr_SetString(PyExc_TypeError, err); + return NULL; + } + argv[argpos++] = PyString_AsString(arg); + } + argv[argpos] = 0; + return PyInt_FromLong(self->cont->execute(argv[0], argv+1)); + } + else + { + const char *str; + if (PyArg_ParseTuple(argt, "s", &str)) + return PyInt_FromLong(self->cont->execute(str)); + PyErr_SetString(PyExc_TypeError, + "cmd is not a string!"); + } + return NULL; +} + +static PyObject * +eConsolePy_write(eConsolePy* self, PyObject *args) +{ + char *data; + int data_len; + int len = -1; + if (!PyArg_ParseTuple(args, "s#|i", &data, &data_len, &len)) + { + PyErr_SetString(PyExc_TypeError, + "1st arg must be a string, optionaly 2nd arg can be the string length"); + return NULL; + } + if (len < 0) + len = data_len; + self->cont->write(data, len); + Py_RETURN_NONE; +} + +static PyObject * +eConsolePy_getPID(eConsolePy* self) +{ + return PyInt_FromLong(self->cont->getPID()); +} + +static PyObject * +eConsolePy_setCWD(eConsolePy* self, PyObject *args) +{ + const char *path=0; + if (!PyArg_ParseTuple(args, "s", &path)) + return NULL; + self->cont->setCWD(path); + Py_RETURN_NONE; +} + +static PyObject * +eConsolePy_kill(eConsolePy* self) +{ + self->cont->kill(); + Py_RETURN_NONE; +} + +static PyObject * +eConsolePy_sendCtrlC(eConsolePy* self) +{ + self->cont->sendCtrlC(); + Py_RETURN_NONE; +} + +static PyObject * +eConsolePy_sendEOF(eConsolePy* self) +{ + self->cont->sendEOF(); + Py_RETURN_NONE; +} + +static PyObject * +eConsolePy_dumpToFile(eConsolePy* self, PyObject *args) +{ + char *filename; + if (!PyArg_ParseTuple(args, "s", &filename)) + { + PyErr_SetString(PyExc_TypeError, + "arg must be a string (filename)"); + return NULL; + } + else + { + int fd = open(filename, O_WRONLY|O_CREAT|O_TRUNC, 0644); + self->cont->setFileFD(1, fd); + eDebug("eConsoleAppContainer::dumpToFile open(%s, O_WRONLY|O_CREAT|O_TRUNC, 0644)=%d", filename, fd); + } + Py_RETURN_NONE; +} + +static PyObject * +eConsolePy_readFromFile(eConsolePy* self, PyObject *args) +{ + char *filename; + if (!PyArg_ParseTuple(args, "s", &filename)) + { + PyErr_SetString(PyExc_TypeError, + "arg must be a string (filename)"); + return NULL; + } + else + { + int fd = open(filename, O_RDONLY); + if (fd >= 0) + { + char readbuf[32*1024]; + int rsize = read(fd, readbuf, 32*1024); + self->cont->setFileFD(0, fd); + eDebug("eConsoleAppContainer::readFromFile open(%s, O_RDONLY)=%d, read: %d", filename, fd, rsize); + self->cont->write(readbuf, rsize); + } + else + { + eDebug("eConsoleAppContainer::readFromFile %s not exist!", filename); + self->cont->setFileFD(0, -1); + } + } + Py_RETURN_NONE; +} + +static PyMethodDef eConsolePy_methods[] = { + {"setCWD", (PyCFunction)eConsolePy_setCWD, METH_VARARGS, + "set working dir" + }, + {"execute", (PyCFunction)eConsolePy_execute, METH_VARARGS, + "execute command" + }, + {"dumpToFile", (PyCFunction)eConsolePy_dumpToFile, METH_VARARGS, + "set output file" + }, + {"readFromFile", (PyCFunction)eConsolePy_readFromFile, METH_VARARGS, + "set input file" + }, + {"getPID", (PyCFunction)eConsolePy_getPID, METH_NOARGS, + "execute command" + }, + {"kill", (PyCFunction)eConsolePy_kill, METH_NOARGS, + "kill application" + }, + {"sendCtrlC", (PyCFunction)eConsolePy_sendCtrlC, METH_NOARGS, + "send Ctrl-C to application" + }, + {"sendEOF", (PyCFunction)eConsolePy_sendEOF, METH_NOARGS, + "send EOF to application" + }, + {"write", (PyCFunction)eConsolePy_write, METH_VARARGS, + "write data to application" + }, + {"running", (PyCFunction)eConsolePy_running, METH_NOARGS, + "returns the running state" + }, + {NULL} /* Sentinel */ +}; + +static PyTypeObject eConsolePyType = { + PyObject_HEAD_INIT(NULL) + 0, /*ob_size*/ + "eConsoleImpl.eConsoleAppContainer", /*tp_name*/ + sizeof(eConsolePy), /*tp_basicsize*/ + 0, /*tp_itemsize*/ + (destructor)eConsolePy_dealloc, /*tp_dealloc*/ + 0, /*tp_print*/ + 0, /*tp_getattr*/ + 0, /*tp_setattr*/ + 0, /*tp_compare*/ + 0, /*tp_repr*/ + 0, /*tp_as_number*/ + 0, /*tp_as_sequence*/ + 0, /*tp_as_mapping*/ + 0, /*tp_hash */ + 0, /*tp_call*/ + 0, /*tp_str*/ + 0, /*tp_getattro*/ + 0, /*tp_setattro*/ + 0, /*tp_as_buffer*/ + Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC, /*tp_flags*/ + "eConsoleAppContainer objects", /* tp_doc */ + (traverseproc)eConsolePy_traverse, /* tp_traverse */ + (inquiry)eConsolePy_clear, /* tp_clear */ + 0, /* tp_richcompare */ + offsetof(eConsolePy, in_weakreflist), /* tp_weaklistoffset */ + 0, /* tp_iter */ + 0, /* tp_iternext */ + eConsolePy_methods, /* tp_methods */ + 0, /* tp_members */ + eConsolePy_getseters, /* tp_getset */ + 0, /* tp_base */ + 0, /* tp_dict */ + 0, /* tp_descr_get */ + 0, /* tp_descr_set */ + 0, /* tp_dictoffset */ + 0, /* tp_init */ + 0, /* tp_alloc */ + eConsolePy_new, /* tp_new */ +}; + +static PyMethodDef console_module_methods[] = { + {NULL} /* Sentinel */ +}; + +void eConsoleInit(void) +{ + PyObject* m = Py_InitModule3("eConsoleImpl", console_module_methods, + "Module that implements eConsoleAppContainer with working cyclic garbage collection."); + + if (m == NULL) + return; + + if (!PyType_Ready(&eConsolePyType)) + { + Org_Py_INCREF((PyObject*)&eConsolePyType); + PyModule_AddObject(m, "eConsoleAppContainer", (PyObject*)&eConsolePyType); + } +} +} +%} diff --git a/lib/python/python_dvb.i b/lib/python/python_dvb.i new file mode 100644 index 0000000..9b6ae08 --- /dev/null +++ b/lib/python/python_dvb.i @@ -0,0 +1,47 @@ +%{ +#include <lib/python/swig.h> +#include <lib/python/python_helpers.h> +%} + +%extend iDVBFrontend { +void getFrontendStatus(PyObject *dest) +{ + ePyObject ret = dest; + ePtr<iDVBFrontendStatus> status; + self->getFrontendStatus(status); + if (status) + { + frontendStatusToDict(ret, status); + } +} + +void getTransponderData(PyObject *dest, bool original) +{ + ePyObject ret = dest; + ePtr<iDVBTransponderData> data; + self->getTransponderData(data, original); + if (data) + { + transponderDataToDict(ret, data); + } +} + +void getFrontendData(PyObject *dest) +{ + ePyObject ret = dest; + ePtr<iDVBFrontendData> data; + self->getFrontendData(data); + if (data) + { + frontendDataToDict(ret, data); + } +} +}; + +%ignore iDVBFrontend::getFrontendStatus; +%ignore iDVBFrontend::getTransponderData; +%ignore iDVBFrontend::getFrontendData; + +%ignore iDVBFrontendStatus; +%ignore iDVBTransponderData; +%ignore iDVBFrontendData; diff --git a/lib/python/python_helpers.cpp b/lib/python/python_helpers.cpp new file mode 100644 index 0000000..6883a56 --- /dev/null +++ b/lib/python/python_helpers.cpp @@ -0,0 +1,169 @@ +#include <lib/python/python_helpers.h> + +void PutToDict(ePyObject &dict, const char *key, long value) +{ + ePyObject item = PyInt_FromLong(value); + if (item) + { + if (PyDict_SetItemString(dict, key, item)) + eDebug("put %s to dict failed", key); + Py_DECREF(item); + } + else + eDebug("could not create PyObject for %s", key); +} + +void PutToDict(ePyObject &dict, const char *key, ePyObject item) +{ + if (item) + { + if (PyDict_SetItemString(dict, key, item)) + eDebug("put %s to dict failed", key); + Py_DECREF(item); + } + else + eDebug("invalid PyObject for %s", key); +} + +void PutToDict(ePyObject &dict, const char *key, const char *value) +{ + ePyObject item = PyString_FromString(value); + if (item) + { + if (PyDict_SetItemString(dict, key, item)) + eDebug("put %s to dict failed", key); + Py_DECREF(item); + } + else + eDebug("could not create PyObject for %s", key); +} + +static PyObject *createTuple(int pid, const char *type) +{ + PyObject *r = PyTuple_New(2); + PyTuple_SET_ITEM(r, 0, PyInt_FromLong(pid)); + PyTuple_SET_ITEM(r, 1, PyString_FromString(type)); + return r; +} + +static inline void PyList_AppendSteal(PyObject *list, PyObject *item) +{ + PyList_Append(list, item); + Py_DECREF(item); +} + +void frontendDataToDict(ePyObject &dest, ePtr<iDVBFrontendData> data) +{ + if (dest && PyDict_Check(dest)) + { + PutToDict(dest, "tuner_number", data->getNumber()); + PutToDict(dest, "tuner_type", data->getTypeDescription().c_str()); + } +} + +void frontendStatusToDict(ePyObject &dest, ePtr<iDVBFrontendStatus> status) +{ + if (dest && PyDict_Check(dest)) + { + PutToDict(dest, "tuner_state", status->getStateDescription().c_str()); + PutToDict(dest, "tuner_locked", status->getLocked()); + PutToDict(dest, "tuner_synced", status->getSynced()); + PutToDict(dest, "tuner_bit_error_rate", status->getBER()); + PutToDict(dest, "tuner_signal_quality", status->getSNR()); + int snrdb = status->getSNRdB(); + if (snrdb >= 0) PutToDict(dest, "tuner_signal_quality_db", snrdb); + PutToDict(dest, "tuner_signal_power", status->getSignalPower()); + } +} + +void transponderDataToDict(ePyObject &dest, ePtr<iDVBTransponderData> data) +{ + if (dest && PyDict_Check(dest)) + { + int value; + PutToDict(dest, "tuner_type", data->getTunerType().c_str()); + PutToDict(dest, "frequency", data->getFrequency()); + value = data->getSymbolRate(); + if (value > 0) PutToDict(dest, "symbol_rate", value); + value = data->getOrbitalPosition(); + if (value >= 0) PutToDict(dest, "orbital_position", value); + value = data->getInversion(); + if (value >= 0) PutToDict(dest, "inversion", value); + value = data->getFecInner(); + if (value >= 0) PutToDict(dest, "fec_inner", value); + value = data->getModulation(); + if (value >= 0) PutToDict(dest, "modulation", value); + value = data->getPolarization(); + if (value >= 0) PutToDict(dest, "polarization", value); + value = data->getRolloff(); + if (value >= 0) PutToDict(dest, "rolloff", value); + value = data->getPilot(); + if (value >= 0) PutToDict(dest, "pilot", value); + value = data->getSystem(); + if (value >= 0) PutToDict(dest, "system", value); + + /* additional terrestrial fields */ + value = data->getBandwidth(); + if (value >= 0) PutToDict(dest, "bandwidth", value); + value = data->getCodeRateLp(); + if (value >= 0) PutToDict(dest, "code_rate_lp", value); + value = data->getCodeRateHp(); + if (value >= 0) PutToDict(dest, "code_rate_hp", value); + value = data->getConstellation(); + if (value >= 0) PutToDict(dest, "constellation", value); + value = data->getTransmissionMode(); + if (value >= 0) PutToDict(dest, "transmission_mode", value); + value = data->getGuardInterval(); + if (value >= 0) PutToDict(dest, "guard_interval", value); + value = data->getHierarchyInformation(); + if (value >= 0) PutToDict(dest, "hierarchy_information", value); + value = data->getPlpId(); + if (value >= 0) PutToDict(dest, "plp_id", value); + } +} + +void streamingDataToDict(ePyObject &dest, ePtr<iStreamData> data) +{ + if (dest && PyDict_Check(dest)) + { + int pmt, pcr, txt, adapter, demux; + std::vector<int> video, audio, subtitle; + unsigned int i; + ePyObject l = PyList_New(0); + PyList_AppendSteal(l, createTuple(0, "pat")); + + data->getPmtPid(pmt); + if (pmt != -1) + PyList_AppendSteal(l, createTuple(pmt, "pmt")); + + data->getVideoPids(video); + for (i = 0; i < video.size(); i++) + { + PyList_AppendSteal(l, createTuple(video[i], "video")); + } + data->getAudioPids(audio); + for (i = 0; i < audio.size(); i++) + { + PyList_AppendSteal(l, createTuple(audio[i], "audio")); + } + data->getSubtitlePids(subtitle); + for (i = 0; i < subtitle.size(); i++) + { + PyList_AppendSteal(l, createTuple(subtitle[i], "subtitle")); + } + + data->getPcrPid(pcr); + PyList_AppendSteal(l, createTuple(pcr, "pcr")); + + data->getTxtPid(txt); + if (txt != -1) + PyList_AppendSteal(l, createTuple(txt, "text")); + + PutToDict(dest, "pids", l); + + data->getAdapterId(adapter); + PutToDict(dest, "adapter", adapter); + data->getDemuxId(demux); + PutToDict(dest, "demux", demux); + } +} diff --git a/lib/python/python_helpers.h b/lib/python/python_helpers.h new file mode 100644 index 0000000..df6b259 --- /dev/null +++ b/lib/python/python_helpers.h @@ -0,0 +1,17 @@ +#ifndef _python_helpers +#define _python_helpers + +#include <lib/python/python.h> +#include <lib/dvb/idvb.h> +#include <lib/service/iservice.h> + +void PutToDict(ePyObject &dict, const char *key, long value); +void PutToDict(ePyObject &dict, const char *key, ePyObject item); +void PutToDict(ePyObject &dict, const char *key, const char *value); + +void frontendDataToDict(ePyObject &dest, ePtr<iDVBFrontendData> data); +void frontendStatusToDict(ePyObject &dest, ePtr<iDVBFrontendStatus> status); +void transponderDataToDict(ePyObject &dest, ePtr<iDVBTransponderData> data); +void streamingDataToDict(ePyObject &dest, ePtr<iStreamData> data); + +#endif diff --git a/lib/python/python_pcore.i b/lib/python/python_pcore.i new file mode 100644 index 0000000..38b6548 --- /dev/null +++ b/lib/python/python_pcore.i @@ -0,0 +1,13 @@ +%extend pNavigation { +PyObject *getRecordings(bool simulate) +{ + std::vector<ePtr<iRecordableService> > recordings; + self->getRecordings(recordings, simulate); + ePyObject result = PyList_New(recordings.size()); + for (unsigned int i = 0; i < recordings.size(); i++) + PyList_SET_ITEM(result, i, NEW_iRecordableServicePtr(recordings[i])); + return result; +} +}; + +%ignore pNavigation::getRecordings; diff --git a/lib/python/python_pmt.i b/lib/python/python_pmt.i new file mode 100644 index 0000000..57e359b --- /dev/null +++ b/lib/python/python_pmt.i @@ -0,0 +1,30 @@ +%extend eDVBServicePMTHandler { +PyObject *eDVBServicePMTHandler::getCaIds(bool pair) +{ + ePyObject ret; + std::vector<int> caids, ecmpids; + self->getCaIds(caids, ecmpids); + int cnt = caids.size(); + + ret = PyList_New(cnt); + + for (unsigned int i = 0; i < cnt; i++) + { + if (pair) + { + ePyObject tuple = PyTuple_New(2); + PyTuple_SET_ITEM(tuple, 0, PyInt_FromLong(caids[i])); + PyTuple_SET_ITEM(tuple, 1, PyInt_FromLong(ecmpids[i])); + PyList_SET_ITEM(ret, i, tuple); + } + else + { + PyList_SET_ITEM(ret, i, PyInt_FromLong(caids[i])); + } + } + + return ret; +} +}; + +%ignore eDVBServicePMTHandler::getCaIds; diff --git a/lib/python/python_service.i b/lib/python/python_service.i new file mode 100644 index 0000000..22a59c7 --- /dev/null +++ b/lib/python/python_service.i @@ -0,0 +1,410 @@ +%{ +#include <lib/python/swig.h> +#include <lib/python/python_helpers.h> +%} + +%extend iServiceInformation { +PyObject *getInfoObject(int w) +{ + switch (w) + { + case iServiceInformation::sTransponderData: + { + ePyObject ret = PyDict_New(); + if (ret) + { + ePtr<iDVBTransponderData> data = self->getTransponderData(); + if (data) + { + transponderDataToDict(ret, data); + } + } + return ret; + } + case iServiceInformation::sFileSize: + return PyLong_FromLongLong(self->getFileSize()); + case iServiceInformation::sCAIDs: + { + ePyObject ret; + std::vector<int> caids, ecmpids; + self->getCaIds(caids, ecmpids); + int cnt = caids.size(); + + ret = PyList_New(cnt); + + for (unsigned int i = 0; i < cnt; i++) + { + PyList_SET_ITEM(ret, i, PyInt_FromLong(caids[i])); + } + return ret; + } + case iServiceInformation::sCAIDPIDs: + { + ePyObject ret; + std::vector<int> caids, ecmpids; + self->getCaIds(caids, ecmpids); + int cnt = caids.size(); + + ret = PyList_New(cnt); + + for (unsigned int i = 0; i < cnt; i++) + { + ePyObject tuple = PyTuple_New(2); + PyTuple_SET_ITEM(tuple, 0, PyInt_FromLong(caids[i])); + PyTuple_SET_ITEM(tuple, 1, PyInt_FromLong(ecmpids[i])); + PyList_SET_ITEM(ret, i, tuple); + } + return ret; + } + case iServiceInformation::sUser + 6: /* DVD audio info */ + { + ePyObject tuple = PyTuple_New(3); + if (tuple) + { + ePtr<iServiceInfoContainer> info = self->getInfoObject(w); + if (info) + { + PyTuple_SetItem(tuple, 0, PyInt_FromLong(info->getInteger(0))); + PyTuple_SetItem(tuple, 1, PyString_FromString(info->getString(0).c_str())); + PyTuple_SetItem(tuple, 2, PyString_FromString(info->getString(1).c_str())); + } + } + return tuple; + } + case iServiceInformation::sUser + 7: /* DVD subtitle info */ + { + ePyObject tuple = PyTuple_New(2); + if (tuple) + { + ePtr<iServiceInfoContainer> info = self->getInfoObject(w); + if (info) + { + PyTuple_SetItem(tuple, 0, PyInt_FromLong(info->getInteger(0))); + PyTuple_SetItem(tuple, 1, PyString_FromString(info->getString(0).c_str())); + } + } + return tuple; + } + case iServiceInformation::sUser + 8: /* DVD angle info */ + { + ePyObject tuple = PyTuple_New(2); + if (tuple) + { + ePtr<iServiceInfoContainer> info = self->getInfoObject(w); + if (info) + { + PyTuple_SetItem(tuple, 0, PyInt_FromLong(info->getInteger(0))); + PyTuple_SetItem(tuple, 1, PyInt_FromLong(info->getInteger(1))); + } + } + return tuple; + } + default: /* servicemp3 objects, either buffer or double */ + { + ePtr<iServiceInfoContainer> info = self->getInfoObject(w); + if (info) + { + unsigned char *data; + unsigned int size; + data = info->getBuffer(size); + if (data && size) + { + return PyBuffer_FromMemory(data, size); + } + else + { + return PyFloat_FromDouble(info->getDouble(0)); + } + } + break; + } + } + Py_INCREF(Py_None); + return Py_None; +} + +PyObject *getAITApplications() +{ + ePyObject tuple = PyTuple_New(2); + std::map<int, std::string> aitlist; + self->getAITApplications(aitlist); + if (!aitlist.empty()) + { + ePyObject l = PyList_New(0); + for (std::map<int, std::string>::iterator it=aitlist.begin(); it!=aitlist.end(); ++it) + { + ePyObject tuple = PyTuple_New(2); + PyTuple_SET_ITEM(tuple, 0, PyInt_FromLong(it->first)); + PyTuple_SET_ITEM(tuple, 1, PyString_FromString(it->second.c_str())); + PyList_Append(l, tuple); + Py_DECREF(tuple); + } + return l; + } + Py_INCREF(Py_None); + return Py_None; +} +}; + +%ignore iServiceInformation::getInfoObject; + +%extend iStaticServiceInformation { +PyObject *getInfoObject(const eServiceReference &ref, int w) +{ + switch (w) + { + case iServiceInformation::sTransponderData: + { + ePyObject ret = PyDict_New(); + if (ret) + { + ePtr<iDVBTransponderData> data = self->getTransponderData(ref); + if (data) + { + transponderDataToDict(ret, data); + } + } + return ret; + } + case iServiceInformation::sFileSize: + return PyLong_FromLongLong(self->getFileSize(ref)); + } + Py_INCREF(Py_None); + return Py_None; +} +}; + +%ignore iStaticServiceInformation::getInfoObject; + +%extend iStreamableService { +PyObject *getStreamingData() +{ + ePtr<iStreamData> data = self->getStreamingData(); + if (data) + { + ePyObject ret = PyDict_New(); + streamingDataToDict(ret, data); + return ret; + } + Py_INCREF(Py_None); + return Py_None; +} +}; + +%ignore iStreamableService::getStreamingData; + +%extend iFrontendInformation { +PyObject *getFrontendData() +{ + ePyObject ret = PyDict_New(); + if (ret) + { + ePtr<iDVBFrontendData> data = self->getFrontendData(); + if (data) + { + frontendDataToDict(ret, data); + } + } + return ret; +} + +PyObject *getFrontendStatus() +{ + ePyObject ret = PyDict_New(); + if (ret) + { + ePtr<iDVBFrontendStatus> status = self->getFrontendStatus(); + if (status) + { + frontendStatusToDict(ret, status); + } + } + return ret; +} + +PyObject *getTransponderData(bool original) +{ + ePyObject ret = PyDict_New(); + if (ret) + { + ePtr<iDVBTransponderData> data = self->getTransponderData(original); + if (data) + { + transponderDataToDict(ret, data); + } + } + return ret; +} + +PyObject *getAll(bool original) +{ + ePyObject ret = PyDict_New(); + if (ret) + { + ePtr<iDVBFrontendData> data = self->getFrontendData(); + if (data) + { + frontendDataToDict(ret, data); + } + ePtr<iDVBFrontendStatus> status = self->getFrontendStatus(); + if (status) + { + frontendStatusToDict(ret, status); + } + ePtr<iDVBTransponderData> tpdata = self->getTransponderData(original); + if (tpdata) + { + transponderDataToDict(ret, tpdata); + } + } + return ret; +} +}; + +%ignore iFrontendInformation::getFrontendData; +%ignore iFrontendInformation::getFrontendStatus; +%ignore iFrontendInformation::getTransponderData; +%ignore iFrontendInformation::getAll; + +%extend iStreamedService { +PyObject *getBufferCharge() +{ + ePyObject tuple = PyTuple_New(5); + if (tuple) + { + ePtr<iStreamBufferInfo> info = self->getBufferCharge(); + if (info) + { + PyTuple_SET_ITEM(tuple, 0, PyInt_FromLong(info->getBufferPercentage())); + PyTuple_SET_ITEM(tuple, 1, PyInt_FromLong(info->getAverageInputRate())); + PyTuple_SET_ITEM(tuple, 2, PyInt_FromLong(info->getAverageOutputRate())); + PyTuple_SET_ITEM(tuple, 3, PyInt_FromLong(info->getBufferSpace())); + PyTuple_SET_ITEM(tuple, 4, PyInt_FromLong(info->getBufferSize())); + } + } + return tuple; +} +}; + +%ignore iStreamedService::getBufferCharge; + +%extend iSubtitleOutput { +RESULT enableSubtitles(eWidget *parent, PyObject *tuple) +{ + eSubtitleWidget *widget = NULL; + struct iSubtitleOutput::SubtitleTrack track; + track.type = 0; + track.pid = -1; + track.page_number = 0; + track.magazine_number = 0; + track.language_code = "und"; + + if (PyTuple_Check(tuple)) + { + ePyObject entry; + int tuplesize = PyTuple_Size(tuple); + if (tuplesize < 1) + goto error_out; + + entry = PyTuple_GET_ITEM(tuple, 0); + + if (!PyInt_Check(entry)) + goto error_out; + + track.type = PyInt_AsLong(entry); + + entry = PyTuple_GET_ITEM(tuple, 1); + if (!PyInt_Check(entry)) + goto error_out; + track.pid = PyInt_AsLong(entry); + + entry = PyTuple_GET_ITEM(tuple, 2); + if (PyInt_Check(entry)) + { + track.page_number = PyInt_AsLong(entry); + } + + entry = PyTuple_GET_ITEM(tuple, 3); + if (PyInt_Check(entry)) + { + track.magazine_number = PyInt_AsLong(entry); + } + if (tuplesize==5){ + entry = PyTuple_GET_ITEM(tuple, 4); + if (PyString_Check(entry)) + { + track.language_code = PyString_AsString(entry); + } + } + } + + widget = new eSubtitleWidget(parent); + widget->resize(parent->size()); /* full size */ + + if (self->enableSubtitles(widget, track) >= 0) + { + return 0; + } +error_out: + return -1; +} + +RESULT disableSubtitles(eWidget *parent) +{ + return self->disableSubtitles(); +} + +PyObject *getSubtitleList() +{ + std::vector<struct iSubtitleOutput::SubtitleTrack> subtitlelist; + if (self->getSubtitleList(subtitlelist) >= 0) + { + ePyObject l = PyList_New(0); + for (unsigned int i = 0; i < subtitlelist.size(); i++) + { + ePyObject tuple = PyTuple_New(5); + PyTuple_SET_ITEM(tuple, 0, PyInt_FromLong(subtitlelist[i].type)); + PyTuple_SET_ITEM(tuple, 1, PyInt_FromLong(subtitlelist[i].pid)); + PyTuple_SET_ITEM(tuple, 2, PyInt_FromLong(subtitlelist[i].page_number)); + PyTuple_SET_ITEM(tuple, 3, PyInt_FromLong(subtitlelist[i].magazine_number)); + PyTuple_SET_ITEM(tuple, 4, PyString_FromString(subtitlelist[i].language_code.c_str())); + PyList_Append(l, tuple); + Py_DECREF(tuple); + } + return l; + } + Py_INCREF(Py_None); + return Py_None; +} + +PyObject *getCachedSubtitle() +{ + struct iSubtitleOutput::SubtitleTrack track; + if (self->getCachedSubtitle(track) >= 0) + { + ePyObject tuple = PyTuple_New(5); + PyTuple_SET_ITEM(tuple, 0, PyInt_FromLong(track.type)); + PyTuple_SET_ITEM(tuple, 1, PyInt_FromLong(track.pid)); + PyTuple_SET_ITEM(tuple, 2, PyInt_FromLong(track.page_number)); + PyTuple_SET_ITEM(tuple, 3, PyInt_FromLong(track.magazine_number)); + PyTuple_SET_ITEM(tuple, 4, PyString_FromString(track.language_code.c_str())); + return tuple; + } + Py_INCREF(Py_None); + return Py_None; +} +}; + +%ignore iSubtitleOutput::enableSubtitles; +%ignore iSubtitleOutput::disableSubtitles; +%ignore iSubtitleOutput::getSubtitleList; +%ignore iSubtitleOutput::getCachedSubtitle; +%ignore iSubtitleOutput::SubtitleTrack; + +%ignore iStreamData; +%ignore iServiceInfoContainer; +%ignore iDVBFrontendStatus; +%ignore iDVBTransponderData; +%ignore iDVBFrontendData; +%ignore iStreamBufferInfo; +%ignore iSubtitleUser; diff --git a/lib/python/pythonconfig.cpp b/lib/python/pythonconfig.cpp new file mode 100644 index 0000000..8cd92ed --- /dev/null +++ b/lib/python/pythonconfig.cpp @@ -0,0 +1,42 @@ +#include <lib/python/pythonconfig.h> +#include <lib/python/python.h> + +ePyObject ePythonConfigQuery::m_queryFunc; + +void ePythonConfigQuery::setQueryFunc(ePyObject queryFunc) +{ + if (m_queryFunc) + Py_DECREF(m_queryFunc); + m_queryFunc = queryFunc; + if (m_queryFunc) + Py_INCREF(m_queryFunc); +} + +RESULT ePythonConfigQuery::getConfigValue(const char *key, std::string &value) +{ + if (key && PyCallable_Check(m_queryFunc)) + { + ePyObject pArgs = PyTuple_New(1); + PyTuple_SET_ITEM(pArgs, 0, PyString_FromString(key)); + ePyObject pRet = PyObject_CallObject(m_queryFunc, pArgs); + Py_DECREF(pArgs); + if (pRet) + { + if (PyString_Check(pRet)) + { + value.assign(PyString_AS_STRING(pRet)); + Py_DECREF(pRet); + return 0; + } + Py_DECREF(pRet); + } + } + return -1; +} + +std::string ePythonConfigQuery::getConfig(const char *key) +{ + std::string value; + getConfigValue(key, value); + return value; +} diff --git a/lib/python/pythonconfig.h b/lib/python/pythonconfig.h new file mode 100644 index 0000000..46e544d --- /dev/null +++ b/lib/python/pythonconfig.h @@ -0,0 +1,20 @@ +#ifndef __lib_python_pythonconfig_h_ +#define __lib_python_pythonconfig_h_ + +#include <lib/base/nconfig.h> +#include <lib/python/python.h> + +class ePythonConfigQuery : public eConfigManager +{ + static ePyObject m_queryFunc; +#ifndef SWIG + RESULT getConfigValue(const char *key, std::string &value); + std::string getConfig(const char *key); +#endif +public: + ePythonConfigQuery() {} + ~ePythonConfigQuery() {} + static void setQueryFunc(SWIG_PYOBJECT(ePyObject) func); +}; + +#endif // __lib_python_pythonconfig_h_ diff --git a/lib/python/swig.h b/lib/python/swig.h new file mode 100644 index 0000000..370c6ab --- /dev/null +++ b/lib/python/swig.h @@ -0,0 +1,26 @@ +#ifndef __lib_python_swig_h +#define __lib_python_swig_h + +#ifdef SWIG +#define SWIG_IGNORE(x) %ignore x +#define SWIG_EXTEND(x, code) %extend x { code } +#define SWIG_TEMPLATE_TYPEDEF(x, y) %template(y) x; %typemap_output_ptr(x) +#define SWIG_ALLOW_OUTPUT_SIMPLE(x) %typemap_output_simple(x) +#define SWIG_INPUT INPUT +#define SWIG_OUTPUT OUTPUT +#define SWIG_NAMED_OUTPUT(x) OUTPUT +#define SWIG_VOID(x) void +#define SWIG_PYOBJECT(x) PyObject* +#else +#define SWIG_IGNORE(x) +#define SWIG_EXTEND(x, code) +#define SWIG_TEMPLATE_TYPEDEF(x, y) +#define SWIG_ALLOW_OUTPUT_SIMPLE(x) +#define SWIG_INPUT +#define SWIG_OUTPUT +#define SWIG_NAMED_OUTPUT(x) x +#define SWIG_VOID(x) x +#define SWIG_PYOBJECT(x) x +#endif // SWIG + +#endif // __lib_python_swig_h diff --git a/lib/service/Makefile.inc b/lib/service/Makefile.inc new file mode 100644 index 0000000..55c2e33 --- /dev/null +++ b/lib/service/Makefile.inc @@ -0,0 +1,44 @@ +noinst_LIBRARIES += service/libenigma_service.a + +service_libenigma_service_a_CXXFLAGS = \ + $(LIBXINE_CFLAGS) + +service_libenigma_service_a_SOURCES = \ + service/event.cpp \ + service/listboxservice.cpp \ + service/service.cpp \ + service/servicedvb.cpp \ + service/servicedvbrecord.cpp \ + service/servicefs.cpp \ + service/servicemp3.cpp \ + service/servicem2ts.cpp \ + service/servicedvbstream.cpp \ + service/servicehdmi.cpp + +serviceincludedir = $(pkgincludedir)/lib/service +serviceinclude_HEADERS = \ + service/event.h \ + service/iservice.h \ + service/listboxservice.h \ + service/service.h \ + service/servicedvb.h \ + service/servicedvbrecord.h \ + service/servicefs.h \ + service/servicemp3.h \ + service/servicem2ts.h \ + service/servicedvbstream.h \ + service/servicehdmi.h + +if HAVE_LIBXINE +service_libenigma_service_a_SOURCES += \ + service/servicexine.cpp +serviceinclude_HEADERS += \ + service/servicexine.h +endif + +if HAVE_LIBDDVD +service_libenigma_service_a_SOURCES += \ + service/servicedvd.cpp +serviceinclude_HEADERS += \ + service/servicedvd.h +endif \ No newline at end of file diff --git a/lib/service/event.cpp b/lib/service/event.cpp new file mode 100644 index 0000000..8ca16c7 --- /dev/null +++ b/lib/service/event.cpp @@ -0,0 +1,350 @@ +#include <lib/service/event.h> +#include <lib/base/estring.h> +#include <lib/base/encoding.h> +#include <lib/dvb/dvbtime.h> +#include <lib/dvb/idvb.h> +#include <dvbsi++/event_information_section.h> +#include <dvbsi++/short_event_descriptor.h> +#include <dvbsi++/extended_event_descriptor.h> +#include <dvbsi++/linkage_descriptor.h> +#include <dvbsi++/component_descriptor.h> +#include <dvbsi++/content_descriptor.h> +#include <dvbsi++/parental_rating_descriptor.h> +#include <dvbsi++/descriptor_tag.h> + +#include <sys/types.h> +#include <fcntl.h> + +// static members / methods +std::string eServiceEvent::m_language = "---"; +std::string eServiceEvent::m_language_alternative = "---"; + +/////////////////////////// + +DEFINE_REF(eServiceEvent); +DEFINE_REF(eComponentData); +DEFINE_REF(eGenreData); +DEFINE_REF(eParentalData); + +/* search for the presence of language from given EIT event descriptors*/ +bool eServiceEvent::loadLanguage(Event *evt, const std::string &lang, int tsidonid) +{ + bool retval=0; + std::string language = lang; + for (DescriptorConstIterator desc = evt->getDescriptors()->begin(); desc != evt->getDescriptors()->end(); ++desc) + { + switch ((*desc)->getTag()) + { + case LINKAGE_DESCRIPTOR: + m_linkage_services.clear(); + break; + case SHORT_EVENT_DESCRIPTOR: + { + const ShortEventDescriptor *sed = (ShortEventDescriptor*)*desc; + std::string cc = sed->getIso639LanguageCode(); + std::transform(cc.begin(), cc.end(), cc.begin(), tolower); + int table=encodingHandler.getCountryCodeDefaultMapping(cc); + if (language == "---" || language.find(cc) != std::string::npos) + { + /* stick to this language, avoid merging or mixing descriptors of different languages */ + language = cc; + m_event_name += replace_all(replace_all(convertDVBUTF8(sed->getEventName(), table, tsidonid), "\n", " "), "\t", " "); + m_short_description += convertDVBUTF8(sed->getText(), table, tsidonid); + retval=1; + } + break; + } + case EXTENDED_EVENT_DESCRIPTOR: + { + const ExtendedEventDescriptor *eed = (ExtendedEventDescriptor*)*desc; + std::string cc = eed->getIso639LanguageCode(); + std::transform(cc.begin(), cc.end(), cc.begin(), tolower); + int table=encodingHandler.getCountryCodeDefaultMapping(cc); + if (language == "---" || language.find(cc) != std::string::npos) + { + /* stick to this language, avoid merging or mixing descriptors of different languages */ + language = cc; + /* + * Bit of a hack, some providers put the event description partly in the short descriptor, + * and the remainder in extended event descriptors. + * In that case, we cannot really treat short/extended description as separate descriptions. + * Unfortunately we cannot recognise this, but we'll use the length of the short description + * to guess whether we should concatenate both descriptions (without any spaces) + */ + if (m_extended_description.empty() && m_short_description.size() >= 180) + { + m_extended_description = m_short_description; + m_short_description = ""; + } + m_extended_description += convertDVBUTF8(eed->getText(), table, tsidonid); + retval=1; + } +#if 0 + const ExtendedEventList *itemlist = eed->getItems(); + for (ExtendedEventConstIterator it = itemlist->begin(); it != itemlist->end(); ++it) + { + m_extended_description += '\n'; + m_extended_description += convertDVBUTF8((*it)->getItemDescription()); + m_extended_description += ' '; + m_extended_description += convertDVBUTF8((*it)->getItem()); + } +#endif + break; + } + default: + break; + } + } + if ( retval == 1 ) + { + for (DescriptorConstIterator desc = evt->getDescriptors()->begin(); desc != evt->getDescriptors()->end(); ++desc) + { + switch ((*desc)->getTag()) + { + case COMPONENT_DESCRIPTOR: + { + const ComponentDescriptor *cp = (ComponentDescriptor*)*desc; + eComponentData data; + data.m_streamContent = cp->getStreamContent(); + data.m_componentType = cp->getComponentType(); + data.m_componentTag = cp->getComponentTag(); + data.m_iso639LanguageCode = cp->getIso639LanguageCode(); + std::transform(data.m_iso639LanguageCode.begin(), data.m_iso639LanguageCode.end(), data.m_iso639LanguageCode.begin(), tolower); + int table=encodingHandler.getCountryCodeDefaultMapping(data.m_iso639LanguageCode); + data.m_text = convertDVBUTF8(cp->getText(),table,tsidonid); + m_component_data.push_back(data); + break; + } + case LINKAGE_DESCRIPTOR: + { + const LinkageDescriptor *ld = (LinkageDescriptor*)*desc; + if ( ld->getLinkageType() == 0xB0 ) + { + eServiceReferenceDVB dvb_ref; + dvb_ref.type = eServiceReference::idDVB; + dvb_ref.setServiceType(1); + dvb_ref.setTransportStreamID(ld->getTransportStreamId()); + dvb_ref.setOriginalNetworkID(ld->getOriginalNetworkId()); + dvb_ref.setServiceID(ld->getServiceId()); + const PrivateDataByteVector *privateData = ld->getPrivateDataBytes(); + dvb_ref.name = convertDVBUTF8((const unsigned char*)&((*privateData)[0]), privateData->size(), 1, tsidonid); + m_linkage_services.push_back(dvb_ref); + } + break; + } + case CONTENT_DESCRIPTOR: + { + const ContentDescriptor *cd = (ContentDescriptor *)*desc; + const ContentClassificationList *con = cd->getClassifications(); + for (ContentClassificationConstIterator it = con->begin(); it != con->end(); ++it) + { + eGenreData data; + data.m_level1 = (*it)->getContentNibbleLevel1(); + data.m_level2 = (*it)->getContentNibbleLevel2(); + data.m_user1 = (*it)->getUserNibble1(); + data.m_user2 = (*it)->getUserNibble2(); + m_genres.push_back(data); + } + break; + } + case PARENTAL_RATING_DESCRIPTOR: + { + const ParentalRatingDescriptor *prd = (ParentalRatingDescriptor *)*desc; + const ParentalRatingList *par = prd->getParentalRatings(); + for (ParentalRatingConstIterator it = par->begin(); it != par->end(); ++it) + { + eParentalData data; + + data.m_country_code = (*it)->getCountryCode(); + data.m_rating = (*it)->getRating(); + m_ratings.push_back(data); + } + break; + } + } + } + } + if ( m_extended_description.find(m_short_description) == 0 ) + m_short_description=""; + return retval; +} + +RESULT eServiceEvent::parseFrom(Event *evt, int tsidonid) +{ + uint16_t stime_mjd = evt->getStartTimeMjd(); + uint32_t stime_bcd = evt->getStartTimeBcd(); + uint32_t duration = evt->getDuration(); + m_begin = parseDVBtime( + stime_mjd >> 8, + stime_mjd&0xFF, + stime_bcd >> 16, + (stime_bcd >> 8)&0xFF, + stime_bcd & 0xFF + ); + m_event_id = evt->getEventId(); + m_duration = fromBCD(duration>>16)*3600+fromBCD(duration>>8)*60+fromBCD(duration); + if (m_language != "---" && loadLanguage(evt, m_language, tsidonid)) + return 0; + if (m_language_alternative != "---" && loadLanguage(evt, m_language_alternative, tsidonid)) + return 0; + if (loadLanguage(evt, "eng", tsidonid)) + return 0; + if (loadLanguage(evt, "---", tsidonid)) + return 0; + return 0; +} + +RESULT eServiceEvent::parseFrom(const std::string& filename, int tsidonid) +{ + if (!filename.empty()) + { + int fd = ::open( filename.c_str(), O_RDONLY ); + if ( fd > -1 ) + { + __u8 buf[4096]; + int rd = ::read(fd, buf, 4096); + ::close(fd); + if ( rd > 12 /*EIT_LOOP_SIZE*/ ) + { + Event ev(buf); + parseFrom(&ev, tsidonid); + return 0; + } + } + } + return -1; +} + +std::string eServiceEvent::getBeginTimeString() const +{ + tm t; + localtime_r(&m_begin, &t); + char tmp[13]; + snprintf(tmp, 13, "%02d.%02d, %02d:%02d", + t.tm_mday, t.tm_mon+1, + t.tm_hour, t.tm_min); + return std::string(tmp, 12); +} + +RESULT eServiceEvent::getGenreData(ePtr<eGenreData> &dest) const +{ + std::list<eGenreData>::const_iterator it = m_genres.begin(); + for(;it != m_genres.end(); ++it) { + dest = new eGenreData(*it); + // for now just return the first item on the list + return 0; + } + dest = 0; + return -1; +} + +PyObject *eServiceEvent::getGenreData() const +{ + ePyObject ret = PyList_New(m_genres.size()); + int cnt=0; + for (std::list<eGenreData>::const_iterator it(m_genres.begin()); it != m_genres.end(); ++it) + { + ePyObject tuple = PyTuple_New(4); + PyTuple_SET_ITEM(tuple, 0, PyInt_FromLong(it->getLevel1())); + PyTuple_SET_ITEM(tuple, 1, PyInt_FromLong(it->getLevel2())); + PyTuple_SET_ITEM(tuple, 2, PyInt_FromLong(it->getUser1())); + PyTuple_SET_ITEM(tuple, 3, PyInt_FromLong(it->getUser2())); + PyList_SET_ITEM(ret, cnt++, tuple); + } + return ret; +} + +RESULT eServiceEvent::getParentalData(ePtr<eParentalData> &dest) const +{ + std::list<eParentalData>::const_iterator it = m_ratings.begin(); + for(;it != m_ratings.end(); ++it) { + dest = new eParentalData(*it); + // for now just return the first item on the list + return 0; + } + dest = 0; + return -1; +} + +PyObject *eServiceEvent::getParentalData() const +{ + ePyObject ret = PyList_New(m_ratings.size()); + int cnt = 0; + for (std::list<eParentalData>::const_iterator it(m_ratings.begin()); it != m_ratings.end(); ++it) + { + ePyObject tuple = PyTuple_New(2); + PyTuple_SET_ITEM(tuple, 0, PyString_FromString(it->getCountryCode().c_str())); + PyTuple_SET_ITEM(tuple, 1, PyInt_FromLong(it->getRating())); + PyList_SET_ITEM(ret, cnt++, tuple); + } + return ret; +} + +RESULT eServiceEvent::getComponentData(ePtr<eComponentData> &dest, int tagnum) const +{ + std::list<eComponentData>::const_iterator it = + m_component_data.begin(); + for(;it != m_component_data.end(); ++it) + { + if ( it->m_componentTag == tagnum ) + { + dest=new eComponentData(*it); + return 0; + } + } + dest = 0; + return -1; +} + +PyObject *eServiceEvent::getComponentData() const +{ + ePyObject ret = PyList_New(m_component_data.size()); + int cnt = 0; + for (std::list<eComponentData>::const_iterator it(m_component_data.begin()); it != m_component_data.end(); ++it) + { + ePyObject tuple = PyTuple_New(5); + PyTuple_SET_ITEM(tuple, 0, PyInt_FromLong(it->m_componentTag)); + PyTuple_SET_ITEM(tuple, 1, PyInt_FromLong(it->m_componentType)); + PyTuple_SET_ITEM(tuple, 2, PyInt_FromLong(it->m_streamContent)); + PyTuple_SET_ITEM(tuple, 3, PyString_FromString(it->m_iso639LanguageCode.c_str())); + PyTuple_SET_ITEM(tuple, 4, PyString_FromString(it->m_text.c_str())); + PyList_SET_ITEM(ret, cnt++, tuple); + } + return ret; +} + +RESULT eServiceEvent::getLinkageService(eServiceReference &service, eServiceReference &parent, int num) const +{ + std::list<eServiceReference>::const_iterator it = + m_linkage_services.begin(); + while( it != m_linkage_services.end() && num-- ) + ++it; + if ( it != m_linkage_services.end() ) + { + service = *it; + eServiceReferenceDVB &subservice = (eServiceReferenceDVB&) service; + eServiceReferenceDVB ¤t = (eServiceReferenceDVB&) parent; + subservice.setDVBNamespace(current.getDVBNamespace()); + if ( current.getParentTransportStreamID().get() ) + { + subservice.setParentTransportStreamID( current.getParentTransportStreamID() ); + subservice.setParentServiceID( current.getParentServiceID() ); + } + else + { + subservice.setParentTransportStreamID( current.getTransportStreamID() ); + subservice.setParentServiceID( current.getServiceID() ); + } + if ( subservice.getParentTransportStreamID() == subservice.getTransportStreamID() && + subservice.getParentServiceID() == subservice.getServiceID() ) + { + subservice.setParentTransportStreamID( eTransportStreamID(0) ); + subservice.setParentServiceID( eServiceID(0) ); + } + return 0; + } + service.type = eServiceReference::idInvalid; + return -1; +} + +DEFINE_REF(eDebugClass); diff --git a/lib/service/event.h b/lib/service/event.h new file mode 100644 index 0000000..73fe200 --- /dev/null +++ b/lib/service/event.h @@ -0,0 +1,138 @@ +#ifndef __lib_service_event_h +#define __lib_service_event_h + +#ifndef SWIG +#include <time.h> +#include <list> +#include <string> +class Event; +#endif + +#include <lib/base/object.h> +#include <lib/service/iservice.h> + +SWIG_IGNORE(eComponentData); +struct eComponentData +{ + friend class eServiceEvent; + DECLARE_REF(eComponentData); + uint8_t m_streamContent; + uint8_t m_componentType; + uint8_t m_componentTag; + std::string m_iso639LanguageCode; + std::string m_text; +public: + eComponentData(const eComponentData& d) { *this = d; } + eComponentData() { m_streamContent = m_componentType = m_componentTag = 0; } + int getStreamContent(void) const { return m_streamContent; } + int getComponentType(void) const { return m_componentType; } + int getComponentTag(void) const { return m_componentTag; } + std::string getIso639LanguageCode(void) const { return m_iso639LanguageCode; } + std::string getText(void) const { return m_text; } +}; +SWIG_TEMPLATE_TYPEDEF(ePtr<eComponentData>, eComponentDataPtr); + +SWIG_IGNORE(eGenreData); +struct eGenreData +{ + friend class eServiceEvent; + DECLARE_REF(eGenreData); + uint8_t m_level1; + uint8_t m_level2; + uint8_t m_user1; + uint8_t m_user2; +public: + eGenreData(const eGenreData& d) { *this = d; } + eGenreData() { m_level1 = m_level2 = m_user1 = m_user2 = 0; } + int getLevel1(void) const { return m_level1; } + int getLevel2(void) const { return m_level2; } + int getUser1(void) const { return m_user1; } + int getUser2(void) const { return m_user2; } +}; +SWIG_TEMPLATE_TYPEDEF(ePtr<eGenreData>, eGenreDataPtr); + +SWIG_IGNORE(eParentalData); +struct eParentalData +{ + friend class eServiceEvent; + DECLARE_REF(eParentalData); + std::string m_country_code; + uint8_t m_rating; +public: + eParentalData(const eParentalData& d) { *this = d; } + eParentalData() { m_country_code = ""; m_rating = 0; } + std::string getCountryCode(void) const { return m_country_code; } + int getRating(void) const { return m_rating; } +}; +SWIG_TEMPLATE_TYPEDEF(ePtr<eParentalData>, eParentalDataPtr); + + +SWIG_ALLOW_OUTPUT_SIMPLE(eServiceReference); // needed for SWIG_OUTPUT in eServiceEvent::getLinkageService + +SWIG_IGNORE(eServiceEvent); +class eServiceEvent: public iObject +{ + DECLARE_REF(eServiceEvent); + bool loadLanguage(Event *event, const std::string &lang, int tsidonid); + std::list<eComponentData> m_component_data; + std::list<eServiceReference> m_linkage_services; + std::list<eGenreData> m_genres; + std::list<eParentalData> m_ratings; + time_t m_begin; + int m_duration; + int m_event_id; + std::string m_event_name, m_short_description, m_extended_description; + static std::string m_language, m_language_alternative; + // .. additional info +public: +#ifndef SWIG + RESULT parseFrom(Event *evt, int tsidonid=0); + RESULT parseFrom(const std::string& filename, int tsidonid=0); + static void setEPGLanguage(const std::string& language) { m_language = language; } + static void setEPGLanguageAlternative(const std::string& language) { m_language_alternative = language; } +#endif + time_t getBeginTime() const { return m_begin; } + int getDuration() const { return m_duration; } + int getEventId() const { return m_event_id; } + std::string getEventName() const { return m_event_name; } + std::string getShortDescription() const { return m_short_description; } + std::string getExtendedDescription() const { return m_extended_description; } + std::string getBeginTimeString() const; + SWIG_VOID(RESULT) getComponentData(ePtr<eComponentData> &SWIG_OUTPUT, int tagnum) const; + PyObject *getComponentData() const; + int getNumOfLinkageServices() const { return m_linkage_services.size(); } + SWIG_VOID(RESULT) getLinkageService(eServiceReference &SWIG_OUTPUT, eServiceReference &parent, int num) const; + SWIG_VOID(RESULT) getGenreData(ePtr<eGenreData> &SWIG_OUTPUT) const; + PyObject *getGenreData() const; + SWIG_VOID(RESULT) getParentalData(ePtr<eParentalData> &SWIG_OUTPUT) const; + PyObject *getParentalData() const; +}; +SWIG_TEMPLATE_TYPEDEF(ePtr<eServiceEvent>, eServiceEvent); +SWIG_EXTEND(ePtr<eServiceEvent>, + static void setEPGLanguage(const std::string& language) + { + eServiceEvent::setEPGLanguage(language); + } +); +SWIG_EXTEND(ePtr<eServiceEvent>, + static void setEPGLanguageAlternative(const std::string& language) + { + eServiceEvent::setEPGLanguageAlternative(language); + } +); + +#ifndef SWIG +SWIG_IGNORE(eDebugClass); +class eDebugClass: public iObject +{ + DECLARE_REF(eDebugClass); +public: + int x; + static void getDebug(ePtr<eDebugClass> &ptr, int x) { ptr = new eDebugClass(x); } + eDebugClass(int i) { printf("build debug class %d\n", i); x = i; } + ~eDebugClass() { printf("remove debug class %d\n", x); } +}; +SWIG_TEMPLATE_TYPEDEF(ePtr<eDebugClass>, eDebugClassPtr); +#endif + +#endif diff --git a/lib/service/iservice.h b/lib/service/iservice.h new file mode 100644 index 0000000..63e530f --- /dev/null +++ b/lib/service/iservice.h @@ -0,0 +1,1059 @@ +#ifndef __lib_dvb_iservice_h +#define __lib_dvb_iservice_h + +#include <lib/python/swig.h> +#include <lib/python/python.h> +#include <lib/base/object.h> +#include <string> +#include <connection.h> +#include <list> +#include <vector> + +class eServiceEvent; + +class eServiceReference +{ +public: + enum + { + idInvalid=-1, + idStructure, // service_id == 0 is root + idDVB, + idFile, + idUser=0x1000, + idServiceMP3=0x1001 + }; + int type; + + enum + { + isDirectory=1, // SHOULD enter (implies mustDescent) + mustDescent=2, // cannot be played directly - often used with "isDirectory" (implies canDescent) + /* + for example: + normal services have none of them - they can be fed directly into the "play"-handler. + normal directories have both of them set - you cannot play a directory directly and the UI should descent into it. + playlists have "mustDescent", but not "isDirectory" - you don't want the user to browse inside the playlist (unless he really wants) + services with sub-services have none of them, instead the have the "canDecsent" flag (as all of the above) + */ + canDescent=4, // supports enterDirectory/leaveDirectory + flagDirectory=isDirectory|mustDescent|canDescent, + shouldSort=8, // should be ASCII-sorted according to service_name. great for directories. + hasSortKey=16, // has a sort key in data[3]. not having a sort key implies 0. + sort1=32, // sort key is 1 instead of 0 + isMarker=64, // Marker + isGroup=128, // is a group of services + isNumberedMarker=256, //use together with isMarker, to force the marker to be numbered + isInvisible=512 // use to make services or markers in a list invisable + }; + int flags; // flags will NOT be compared. + + inline int getSortKey() const { return (flags & hasSortKey) ? data[3] : ((flags & sort1) ? 1 : 0); } + +#ifndef SWIG + int data[8]; + std::string path; +#endif + std::string getPath() const { return path; } + void setPath( const std::string &n ) { path=n; } + + unsigned int getUnsignedData(unsigned int num) const + { + if ( num < sizeof(data)/sizeof(int) ) + return data[num]; + return 0; + } + + int getData(unsigned int num) const + { + if ( num < sizeof(data)/sizeof(int) ) + return data[num]; + return 0; + } + + void setUnsignedData(unsigned int num, unsigned int val) + { + if ( num < sizeof(data)/sizeof(int) ) + data[num] = val; + } + + void setData(unsigned int num, int val) + { + if ( num < sizeof(data)/sizeof(int) ) + data[num] = val; + } + +// only for override service names in bouquets or to give servicerefs a name which not have a +// real existing service ( for dvb eServiceDVB ) +#ifndef SWIG + std::string name; + int number; +#endif + std::string getName() const { return name; } + void setName( const std::string &n ) { name=n; } + int getChannelNum() const { return number; } + void setChannelNum(const int n) { number = n; } + + eServiceReference() + : type(idInvalid), flags(0) + { + memset(data, 0, sizeof(data)); + number = 0; + } +#ifndef SWIG + eServiceReference(int type, int flags) + : type(type), flags(flags) + { + memset(data, 0, sizeof(data)); + number = 0; + } + eServiceReference(int type, int flags, int data0) + : type(type), flags(flags) + { + memset(data, 0, sizeof(data)); + data[0]=data0; + number = 0; + } + eServiceReference(int type, int flags, int data0, int data1) + : type(type), flags(flags) + { + memset(data, 0, sizeof(data)); + data[0]=data0; + data[1]=data1; + number = 0; + } + eServiceReference(int type, int flags, int data0, int data1, int data2) + : type(type), flags(flags) + { + memset(data, 0, sizeof(data)); + data[0]=data0; + data[1]=data1; + data[2]=data2; + number = 0; + } + eServiceReference(int type, int flags, int data0, int data1, int data2, int data3) + : type(type), flags(flags) + { + memset(data, 0, sizeof(data)); + data[0]=data0; + data[1]=data1; + data[2]=data2; + data[3]=data3; + number = 0; + } + eServiceReference(int type, int flags, int data0, int data1, int data2, int data3, int data4) + : type(type), flags(flags) + { + memset(data, 0, sizeof(data)); + data[0]=data0; + data[1]=data1; + data[2]=data2; + data[3]=data3; + data[4]=data4; + number = 0; + } + operator bool() const + { + return valid(); + } +#endif + eServiceReference(int type, int flags, const std::string &path) + : type(type), flags(flags), path(path) + { + memset(data, 0, sizeof(data)); + } + eServiceReference(const std::string &string); + std::string toString() const; + std::string toCompareString() const; + bool operator==(const eServiceReference &c) const + { + if (type != c.type) + return 0; + return (memcmp(data, c.data, sizeof(int)*8)==0) && (path == c.path); + } + bool operator!=(const eServiceReference &c) const + { + return !(*this == c); + } + bool operator<(const eServiceReference &c) const + { + if (type < c.type) + return 1; + + if (type > c.type) + return 0; + + int r=memcmp(data, c.data, sizeof(int)*8); + if (r) + return r < 0; + return path < c.path; + } + + int valid() const + { + return type != idInvalid; + } +}; + +SWIG_ALLOW_OUTPUT_SIMPLE(eServiceReference); + +extern PyObject *New_eServiceReference(const eServiceReference &ref); // defined in enigma_python.i + +#ifndef SWIG +#ifdef PYTHON_REFCOUNT_DEBUG +inline ePyObject Impl_New_eServiceReference(const char* file, int line, const eServiceReference &ref) +{ + return ePyObject(New_eServiceReference(ref), file, line); +} +#define NEW_eServiceReference(ref) Impl_New_eServiceReference(__FILE__, __LINE__, ref) +#else +inline ePyObject Impl_New_eServiceReference(const eServiceReference &ref) +{ + return New_eServiceReference(ref); +} +#define NEW_eServiceReference(ref) Impl_New_eServiceReference(ref) +#endif +#endif // SWIG + +typedef long long pts_t; + + /* the reason we have the servicereference as additional argument is + that we don't have to create one object for every entry in a possibly + large list, provided that no state information is nessesary to deliver + the required information. Anyway - ref *must* be the same as the argument + to the info() or getIServiceInformation call! */ + + /* About the usage of SWIG_VOID: + SWIG_VOID(real_returntype_t) hides a return value from swig. This is used for + the "superflouus" RESULT return values. + + Python code has to check the returned pointer against 0. This works, + as all functions returning instances in smartpointers AND having a + RESULT have to BOTH return non-zero AND set the pointer to zero. + + Python code thus can't check for the reason, but the reason isn't + user-servicable anyway. If you want to return a real reason which + goes beyong "it just doesn't work", use extra variables for this, + not the RESULT. + + Hide the result only if there is another way to check for failure! */ + +class eServiceEvent; +class iDVBTransponderData; + +class iServiceInfoContainer: public iObject +{ +public: + virtual int getInteger(unsigned int index) const { return 0; } + virtual std::string getString(unsigned int index) const { return ""; } + virtual double getDouble(unsigned int index) const { return 0.0; } + virtual unsigned char *getBuffer(unsigned int &size) const { return NULL; } +}; + +class iStaticServiceInformation: public iObject +{ +#ifdef SWIG + iStaticServiceInformation(); + ~iStaticServiceInformation(); +#endif +public: + virtual SWIG_VOID(RESULT) getName(const eServiceReference &ref, std::string &SWIG_OUTPUT)=0; + + // doesn't need to be implemented, should return -1 then. + virtual int getLength(const eServiceReference &ref); + virtual SWIG_VOID(RESULT) getEvent(const eServiceReference &ref, ePtr<eServiceEvent> &SWIG_OUTPUT, time_t start_time=-1); + // returns true when not implemented + virtual int isPlayable(const eServiceReference &ref, const eServiceReference &ignore, bool simulate=false); + + virtual int getInfo(const eServiceReference &ref, int w); + virtual std::string getInfoString(const eServiceReference &ref,int w); + virtual ePtr<iServiceInfoContainer> getInfoObject(int w); + virtual ePtr<iDVBTransponderData> getTransponderData(const eServiceReference &ref); + virtual long long getFileSize(const eServiceReference &ref); + virtual bool isCrypted(const eServiceReference &ref); + + virtual int setInfo(const eServiceReference &ref, int w, int v); + virtual int setInfoString(const eServiceReference &ref, int w, const char *v); +}; +SWIG_TEMPLATE_TYPEDEF(ePtr<iStaticServiceInformation>, iStaticServiceInformationPtr); + +class iServiceInformation_ENUMS +{ +#ifdef SWIG + iServiceInformation_ENUMS(); + ~iServiceInformation_ENUMS(); +#endif +public: + enum { + sIsCrypted, /* is encrypted (no indication if decrypt was possible) */ + sAspect, /* aspect ratio: 0=4:3, 1=16:9, 2=whatever we need */ + sFrameRate, /* frame rate */ + sProgressive, /* 0 = interlaced, 1 = progressive */ + sIsMultichannel, /* multichannel *available* (probably not selected) */ + + /* "user serviceable info" - they are not reliable. Don't use them for anything except the service menu! + that's also the reason why they are so globally defined. + again - if somebody EVER tries to use this information for anything else than simply displaying it, + i will change this to return a user-readable text like "zero x zero three three" (and change the + exact spelling in every version) to stop that! */ + + sVideoPID, + sAudioPID, + sPCRPID, + sPMTPID, + sTXTPID, + + sSID, + sONID, + sTSID, + sNamespace, + sProvider, + + sDescription, + sServiceref, + sTimeCreate, /* unix time or string */ + sFileSize, + + sCAIDs, + sCAIDPIDs, + sVideoType, /* MPEG2 MPEG4 */ + + sTags, /* space seperated list of tags */ + + sDVBState, /* states as defined in pmt handler (as events there) */ + + sVideoHeight, + sVideoWidth, + + sTransponderData, /* transponderdata as python dict */ + + sCurrentChapter, + sCurrentTitle, + sTotalChapters, + sTotalTitles, + + sTagTitle, + sTagTitleSortname, + sTagArtist, + sTagArtistSortname, + sTagAlbum, + sTagAlbumSortname, + sTagComposer, + sTagDate, + sTagGenre, + sTagComment, + sTagExtendedComment, + sTagTrackNumber, + sTagTrackCount, + sTagAlbumVolumeNumber, + sTagAlbumVolumeCount, + sTagLocation, + sTagHomepage, + sTagDescription, + sTagVersion, + sTagISRC, + sTagOrganization, + sTagCopyright, + sTagCopyrightURI, + sTagContact, + sTagLicense, + sTagLicenseURI, + sTagPerformer, + sTagCodec, + sTagVideoCodec, + sTagAudioCodec, + sTagBitrate, + sTagNominalBitrate, + sTagMinimumBitrate, + sTagMaximumBitrate, + sTagSerial, + sTagEncoder, + sTagEncoderVersion, + sTagTrackGain, + sTagTrackPeak, + sTagAlbumGain, + sTagAlbumPeak, + sTagReferenceLevel, + sTagLanguageCode, + sTagImage, + sTagPreviewImage, + sTagAttachment, + sTagBeatsPerMinute, + sTagKeywords, + sTagCRC, + sTagChannelMode, + + sTransferBPS, + + sHBBTVUrl, + sLiveStreamDemuxId, + + sUser = 0x100 + }; + enum { + resNA = -1, + resIsString = -2, + resIsPyObject = -3 + }; +}; + +/* some words to structs like struct iServiceInformation_ENUMS +For some classes we need in python just the SmartPointer Variants. +So we prevent building wrapper classes for the non smart pointer classes with the SWIG_IGNORE makro. +But now we have the problem that swig do not export enums for smart pointer classes (i dont know why). +So we move all enum's to own classes (with _ENUMS as name ending) and let our real +class inherit from the *_ENUMS class. This *_ENUMS classes are normally exportet via swig to python. +But in the python code we doesn't like to write iServiceInformation_ENUMS.sVideoType.... +we like to write iServiceInformation.sVideoType. +So until swig have no Solution for this Problem we call in lib/python/Makefile.am a python script named +enigma_py_patcher.py to remove the "_ENUMS" strings in enigma.py at all needed locations. */ + +class iServiceInformation: public iServiceInformation_ENUMS, public iObject +{ +#ifdef SWIG + iServiceInformation(); + ~iServiceInformation(); +#endif +public: + virtual SWIG_VOID(RESULT) getName(std::string &SWIG_OUTPUT)=0; + virtual SWIG_VOID(RESULT) getEvent(ePtr<eServiceEvent> &SWIG_OUTPUT, int nownext); + + virtual int getInfo(int w); + virtual std::string getInfoString(int w); + virtual ePtr<iServiceInfoContainer> getInfoObject(int w); + virtual ePtr<iDVBTransponderData> getTransponderData(); + virtual void getAITApplications(std::map<int, std::string> &aitlist) {}; + virtual void getCaIds(std::vector<int> &caids, std::vector<int> &ecmpids); + virtual long long getFileSize(); + + virtual int setInfo(int w, int v); + virtual int setInfoString(int w, const char *v); +}; +SWIG_TEMPLATE_TYPEDEF(ePtr<iServiceInformation>, iServiceInformationPtr); + +class iFrontendInformation_ENUMS +{ +#ifdef SWIG + iFrontendInformation_ENUMS(); + ~iFrontendInformation_ENUMS(); +#endif +public: + enum { + bitErrorRate, + signalPower, + signalQuality, + lockState, + syncState, + frontendNumber, + signalQualitydB, + frontendStatus, + snrValue, + frequency, + }; +}; + +class iDVBFrontendData; +class iDVBFrontendStatus; +class iDVBTransponderData; + +class iFrontendInformation: public iFrontendInformation_ENUMS, public iObject +{ +#ifdef SWIG + iFrontendInformation(); + ~iFrontendInformation(); +#endif +public: + virtual int getFrontendInfo(int w)=0; + virtual ePtr<iDVBFrontendData> getFrontendData()=0; + virtual ePtr<iDVBFrontendStatus> getFrontendStatus()=0; + virtual ePtr<iDVBTransponderData> getTransponderData(bool original)=0; + void getAll() {} +}; +SWIG_TEMPLATE_TYPEDEF(ePtr<iFrontendInformation>, iFrontendInformationPtr); + +SWIG_IGNORE(iPauseableService); +class iPauseableService: public iObject +{ +#ifdef SWIG + iPausableService(); + ~iPausableService(); +#endif +public: + + /* this will set the *state* directly. So just call a SINGLE function of those at a time. */ + virtual RESULT pause()=0; + virtual RESULT unpause()=0; + + /* hm. */ + virtual RESULT setSlowMotion(int ratio=0)=0; + virtual RESULT setFastForward(int ratio=0)=0; +}; +SWIG_TEMPLATE_TYPEDEF(ePtr<iPauseableService>, iPauseableServicePtr); + +class iSeekableService_ENUMS +{ +#ifdef SWIG + iSeekableService_ENUMS(); + ~iSeekableService_ENUMS(); +#endif +public: + enum { dirForward = +1, dirBackward = -1 }; +}; + +SWIG_IGNORE(iSeekableService); +class iSeekableService: public iSeekableService_ENUMS, public iObject +{ +#ifdef SWIG + iSeekableService(); + ~iSeekableService(); +#endif +public: + virtual RESULT getLength(pts_t &SWIG_OUTPUT)=0; + virtual RESULT seekTo(pts_t to)=0; + virtual RESULT seekRelative(int direction, pts_t to)=0; + virtual RESULT getPlayPosition(pts_t &SWIG_OUTPUT)=0; + /* if you want to do several seeks in a row, you can enable the trickmode. + audio will be switched off, sync will be disabled etc. */ + virtual RESULT setTrickmode(int trick=0)=0; + virtual RESULT isCurrentlySeekable()=0; + virtual RESULT seekChapter(int) { return -1; } + virtual RESULT seekTitle(int) { return -1; } +}; +SWIG_TEMPLATE_TYPEDEF(ePtr<iSeekableService>, iSeekableServicePtr); + +struct iAudioTrackInfo +{ +#ifndef SWIG + std::string m_description; + std::string m_language; /* iso639 */ + int m_pid; /* for association with the stream. */ +#endif + std::string getDescription() { return m_description; } + std::string getLanguage() { return m_language; } + int getPID() { return m_pid; } +}; +SWIG_ALLOW_OUTPUT_SIMPLE(iAudioTrackInfo); + +SWIG_IGNORE(iAudioTrackSelection); +class iAudioTrackSelection: public iObject +{ +#ifdef SWIG + iAudioTrackSelection(); + ~iAudioTrackSelection(); +#endif +public: + virtual int getNumberOfTracks()=0; + virtual RESULT selectTrack(unsigned int i)=0; + virtual SWIG_VOID(RESULT) getTrackInfo(struct iAudioTrackInfo &SWIG_OUTPUT, unsigned int n)=0; + virtual int getCurrentTrack()=0; +}; +SWIG_TEMPLATE_TYPEDEF(ePtr<iAudioTrackSelection>, iAudioTrackSelectionPtr); + +class iAudioChannelSelection_ENUMS +{ +#ifdef SWIG + iAudioChannelSelection_ENUMS(); + ~iAudioChannelSelection_ENUMS(); +#endif +public: + enum { LEFT, STEREO, RIGHT }; +}; + +SWIG_IGNORE(iAudioChannelSelection); +class iAudioChannelSelection: public iAudioChannelSelection_ENUMS, public iObject +{ +#ifdef SWIG + iAudioChannelSelection(); + ~iAudioChannelSelection(); +#endif +public: + virtual int getCurrentChannel()=0; + virtual RESULT selectChannel(int i)=0; +}; +SWIG_TEMPLATE_TYPEDEF(ePtr<iAudioChannelSelection>, iAudioChannelSelectionPtr); + +SWIG_IGNORE(iAudioDelay); +class iAudioDelay: public iObject +{ +#ifdef SWIG + iAudioDelay(); + ~iAudioDelay(); +#endif +public: + virtual int getAC3Delay()=0; + virtual int getPCMDelay()=0; + virtual void setAC3Delay(int)=0; + virtual void setPCMDelay(int)=0; +}; +SWIG_TEMPLATE_TYPEDEF(ePtr<iAudioDelay>, iAudioDelayPtr); + +class iRdsDecoder_ENUMS +{ +#ifdef SWIG + iRdsDecoder_ENUMS(); + ~iRdsDecoder_ENUMS(); +#endif +public: + enum { RadioText, RtpText }; +}; + +SWIG_IGNORE(iRdsDecoder); +class iRdsDecoder: public iObject, public iRdsDecoder_ENUMS +{ +#ifdef SWIG + iRdsDecoder(); + ~iRdsDecoder(); +#endif +public: + virtual std::string getText(int x=RadioText)=0; + virtual void showRassSlidePicture()=0; + virtual void showRassInteractivePic(int page, int subpage)=0; + virtual SWIG_PYOBJECT(ePyObject) getRassInteractiveMask()=0; +}; +SWIG_TEMPLATE_TYPEDEF(ePtr<iRdsDecoder>, iRdsDecoderPtr); + +SWIG_IGNORE(iSubserviceList); +class iSubserviceList: public iObject +{ +#ifdef SWIG + iSubserviceList(); + ~iSubserviceList(); +#endif +public: + virtual int getNumberOfSubservices()=0; + virtual SWIG_VOID(RESULT) getSubservice(eServiceReference &SWIG_OUTPUT, unsigned int n)=0; +}; +SWIG_TEMPLATE_TYPEDEF(ePtr<iSubserviceList>, iSubserviceListPtr); + +SWIG_IGNORE(iTimeshiftService); +class iTimeshiftService: public iObject +{ +#ifdef SWIG + iTimeshiftService(); + ~iTimeshiftService(); +#endif +public: + virtual RESULT startTimeshift()=0; + virtual RESULT stopTimeshift(bool swToLive=true)=0; + virtual RESULT setNextPlaybackFile(const char *fn)=0; // not needed by our internal timeshift.. but external plugin... + + virtual int isTimeshiftActive()=0; + virtual int isTimeshiftEnabled()=0; + /* this essentially seeks to the relative end of the timeshift buffer */ + virtual RESULT activateTimeshift()=0; + virtual RESULT saveTimeshiftFile()=0; + virtual std::string getTimeshiftFilename()=0; + virtual void switchToLive()=0; +}; +SWIG_TEMPLATE_TYPEDEF(ePtr<iTimeshiftService>, iTimeshiftServicePtr); + + /* not related to eCueSheet */ + +class iCueSheet_ENUMS +{ +#ifdef SWIG + iCueSheet_ENUMS(); + ~iCueSheet_ENUMS(); +#endif +public: + enum { cutIn = 0, cutOut = 1, cutMark = 2 }; +}; + +SWIG_IGNORE(iCueSheet); +class iCueSheet: public iCueSheet_ENUMS, public iObject +{ +#ifdef SWIG + iCueSheet(); + ~iCueSheet(); +#endif +public: + /* returns a list of (pts, what)-tuples */ + virtual PyObject *getCutList() = 0; + virtual void setCutList(SWIG_PYOBJECT(ePyObject) list) = 0; + virtual void setCutListEnable(int enable) = 0; +}; +SWIG_TEMPLATE_TYPEDEF(ePtr<iCueSheet>, iCueSheetPtr); + +class PyList; + +class eDVBTeletextSubtitlePage; +class eDVBSubtitlePage; +struct ePangoSubtitlePage; +class eRect; +struct gRegion; +struct gPixmap; + +SWIG_IGNORE(iSubtitleUser); +class iSubtitleUser +{ +public: + virtual void setPage(const eDVBTeletextSubtitlePage &p) = 0; + virtual void setPage(const eDVBSubtitlePage &p) = 0; + virtual void setPage(const ePangoSubtitlePage &p) = 0; + virtual void setPixmap(ePtr<gPixmap> &pixmap, gRegion changed, eRect dest) = 0; + virtual void destroy() = 0; +}; + +class iSubtitleOutput: public iObject +{ +public: + struct SubtitleTrack + { + int type; + int pid; + int page_number; + int magazine_number; + std::string language_code; + }; + + virtual RESULT enableSubtitles(iSubtitleUser *user, SubtitleTrack &track) = 0; + virtual RESULT disableSubtitles() = 0; + virtual RESULT getCachedSubtitle(SubtitleTrack &track) = 0; + virtual RESULT getSubtitleList(std::vector<SubtitleTrack> &subtitlelist) = 0; +}; +SWIG_TEMPLATE_TYPEDEF(ePtr<iSubtitleOutput>, iSubtitleOutputPtr); + +SWIG_IGNORE(iMutableServiceList); +class iMutableServiceList: public iObject +{ +#ifdef SWIG + iMutableServiceList(); + ~iMutableServiceList(); +#endif +public: + /* flush changes */ + virtual RESULT flushChanges()=0; + /* adds a service to a list */ + virtual RESULT addService(eServiceReference &ref, eServiceReference before=eServiceReference())=0; + /* removes a service from a list */ + virtual RESULT removeService(eServiceReference &ref)=0; + /* moves a service in a list, only if list suppports a specific sort method. */ + /* pos is the new, absolute position from 0..size-1 */ + virtual RESULT moveService(eServiceReference &ref, int pos)=0; + /* set name of list, for bouquets this is the visible bouquet name */ + virtual RESULT setListName(const std::string &name)=0; +}; +SWIG_TEMPLATE_TYPEDEF(ePtr<iMutableServiceList>, iMutableServiceListPtr); + +SWIG_IGNORE(iListableService); +class iListableService: public iObject +{ +#ifdef SWIG + iListableService(); + ~iListableService(); +#endif +public: +#ifndef SWIG + /* legacy interface: get a list */ + virtual RESULT getContent(std::list<eServiceReference> &list, bool sorted=false)=0; +#endif + virtual PyObject *getContent(const char* format, bool sorted=false)=0; + + /* new, shiny interface: streaming. */ + virtual SWIG_VOID(RESULT) getNext(eServiceReference &SWIG_OUTPUT)=0; + + /* use this for sorting. output is not sorted because of either + - performance reasons: the whole list must be buffered or + - the interface would be restricted to a list. streaming + (as well as a future "active" extension) won't be possible. + */ + virtual int compareLessEqual(const eServiceReference &, const eServiceReference &)=0; + + virtual SWIG_VOID(RESULT) startEdit(ePtr<iMutableServiceList> &SWIG_OUTPUT)=0; +}; +SWIG_TEMPLATE_TYPEDEF(ePtr<iListableService>, iListableServicePtr); + +#ifndef SWIG + /* a helper class which can be used as argument to stl's sort(). */ +class iListableServiceCompare +{ + ePtr<iListableService> m_list; +public: + iListableServiceCompare(iListableService *list): m_list(list) { } + bool operator()(const eServiceReference &a, const eServiceReference &b) + { + return m_list->compareLessEqual(a, b); + } +}; +#endif + +SWIG_IGNORE(iServiceOfflineOperations); +class iServiceOfflineOperations: public iObject +{ +#ifdef SWIG + iServiceOfflineOperations(); + ~iServiceOfflineOperations(); +#endif +public: + /* to delete a service, forever. */ + virtual RESULT deleteFromDisk(int simulate=1)=0; + + /* for transferring a service... */ + virtual SWIG_VOID(RESULT) getListOfFilenames(std::list<std::string> &SWIG_OUTPUT)=0; + + /* a blocking call to reindex a file */ + virtual int reindex() = 0; + + // TODO: additional stuff, like a conversion interface? +}; +SWIG_TEMPLATE_TYPEDEF(ePtr<iServiceOfflineOperations>, iServiceOfflineOperationsPtr); + +class iStreamData: public iObject +{ +public: + virtual SWIG_VOID(RESULT) getAllPids(std::vector<int> &result) const = 0; + virtual SWIG_VOID(RESULT) getVideoPids(std::vector<int> &result) const = 0; + virtual SWIG_VOID(RESULT) getAudioPids(std::vector<int> &result) const = 0; + virtual SWIG_VOID(RESULT) getSubtitlePids(std::vector<int> &result) const = 0; + virtual SWIG_VOID(RESULT) getPmtPid(int &result) const = 0; + virtual SWIG_VOID(RESULT) getPatPid(int &result) const = 0; + virtual SWIG_VOID(RESULT) getPcrPid(int &result) const = 0; + virtual SWIG_VOID(RESULT) getTxtPid(int &result) const = 0; + virtual SWIG_VOID(RESULT) getServiceId(int &result) const = 0; + virtual SWIG_VOID(RESULT) getAdapterId(int &result) const = 0; + virtual SWIG_VOID(RESULT) getDemuxId(int &result) const = 0; + virtual SWIG_VOID(RESULT) getCaIds(std::vector<int> &caids, std::vector<int> &ecmpids) const = 0; +}; + +class iStreamableService: public iObject +{ +#ifdef SWIG + iStreamableService(); + ~iStreamableService(); +#endif +public: + virtual ePtr<iStreamData> getStreamingData() = 0; +}; +SWIG_TEMPLATE_TYPEDEF(ePtr<iStreamableService>, iStreamableServicePtr); + +class iStreamBufferInfo: public iObject +{ +public: + virtual int getBufferPercentage() const = 0; + virtual int getAverageInputRate() const = 0; + virtual int getAverageOutputRate() const = 0; + virtual int getBufferSpace() const = 0; + virtual int getBufferSize() const = 0; +}; + +class iStreamedService: public iObject +{ +#ifdef SWIG + iStreamedService(); + ~iStreamedService(); +#endif +public: + virtual ePtr<iStreamBufferInfo> getBufferCharge()=0; + virtual int setBufferSize(int size)=0; +}; +SWIG_TEMPLATE_TYPEDEF(ePtr<iStreamedService>, iStreamedServicePtr); + +class iServiceKeys_ENUMS +{ +#ifdef SWIG + iServiceKeys_ENUMS(); + ~iServiceKeys_ENUMS(); +#endif +public: + enum { + keyLeft, + keyRight, + keyUp, + keyDown, + keyOk, + keyUser = 0x100 + }; +}; + +SWIG_IGNORE(iServiceKeys); +class iServiceKeys: public iServiceKeys_ENUMS, public iObject +{ +#ifdef SWIG + iServiceKeys(); + ~iServiceKeys(); +#endif +public: + virtual SWIG_VOID(RESULT) keyPressed(int key)=0; +}; +SWIG_TEMPLATE_TYPEDEF(ePtr<iServiceKeys>, iServiceKeysPtr); + +class iPlayableService_ENUMS +{ +#ifdef SWIG + iPlayableService_ENUMS(); + ~iPlayableService_ENUMS(); +#endif +public: + enum { + /* these first two events are magical, and should only + be generated if you know what you're doing. */ + evStart, + evEnd, + + evTunedIn, + evTuneFailed, + + /* when iServiceInformation is implemented:*/ + evUpdatedEventInfo, + evUpdatedInfo, + evNewProgramInfo, + + /* when seek() is implemented: */ + evSeekableStatusChanged, /* for example when timeshifting */ + + evEOF, + evSOF, /* bounced against start of file (when seeking backwards) */ + + /* when cueSheet is implemented */ + evCuesheetChanged, + + /* when rdsDecoder is implemented */ + evUpdatedRadioText, + evUpdatedRtpText, + + /* Radio Screenshow Support */ + evUpdatedRassSlidePic, + evUpdatedRassInteractivePicMask, + + evVideoSizeChanged, + evVideoFramerateChanged, + evVideoProgressiveChanged, + + evBuffering, + + evStopped, + + evHBBTVInfo, + + evUser = 0x100 + }; +}; + +SWIG_IGNORE(iPlayableService); +class iPlayableService: public iPlayableService_ENUMS, public iObject +{ +#ifdef SWIG + iPlayableService(); + ~iPlaybleService(); +#endif + friend class iServiceHandler; +public: +#ifndef SWIG + virtual RESULT connectEvent(const Slot2<void,iPlayableService*,int> &event, ePtr<eConnection> &connection)=0; +#endif + virtual RESULT start()=0; + virtual RESULT stop()=0; + /* might have to be changed... */ + virtual RESULT setTarget(int target)=0; + virtual SWIG_VOID(RESULT) seek(ePtr<iSeekableService> &SWIG_OUTPUT)=0; + virtual SWIG_VOID(RESULT) pause(ePtr<iPauseableService> &SWIG_OUTPUT)=0; + virtual SWIG_VOID(RESULT) info(ePtr<iServiceInformation> &SWIG_OUTPUT)=0; + virtual SWIG_VOID(RESULT) audioTracks(ePtr<iAudioTrackSelection> &SWIG_OUTPUT)=0; + virtual SWIG_VOID(RESULT) audioChannel(ePtr<iAudioChannelSelection> &SWIG_OUTPUT)=0; + virtual SWIG_VOID(RESULT) subServices(ePtr<iSubserviceList> &SWIG_OUTPUT)=0; + virtual SWIG_VOID(RESULT) frontendInfo(ePtr<iFrontendInformation> &SWIG_OUTPUT)=0; + virtual SWIG_VOID(RESULT) timeshift(ePtr<iTimeshiftService> &SWIG_OUTPUT)=0; + virtual SWIG_VOID(RESULT) cueSheet(ePtr<iCueSheet> &SWIG_OUTPUT)=0; + virtual SWIG_VOID(RESULT) subtitle(ePtr<iSubtitleOutput> &SWIG_OUTPUT)=0; + virtual SWIG_VOID(RESULT) audioDelay(ePtr<iAudioDelay> &SWIG_OUTPUT)=0; + virtual SWIG_VOID(RESULT) rdsDecoder(ePtr<iRdsDecoder> &SWIG_OUTPUT)=0; + virtual SWIG_VOID(RESULT) stream(ePtr<iStreamableService> &SWIG_OUTPUT)=0; + virtual SWIG_VOID(RESULT) streamed(ePtr<iStreamedService> &SWIG_OUTPUT)=0; + virtual SWIG_VOID(RESULT) keys(ePtr<iServiceKeys> &SWIG_OUTPUT)=0; +}; +SWIG_TEMPLATE_TYPEDEF(ePtr<iPlayableService>, iPlayableServicePtr); + +class iRecordableService_ENUMS +{ +#ifdef SWIG + iRecordableService_ENUMS(); + ~iRecordableService_ENUMS(); +#endif +public: + enum { + evStart, + evEnd, + evTunedIn, + evTuneFailed, + evRecordRunning, + evRecordStopped, + evNewProgramInfo, + evRecordFailed, + evRecordWriteError, + evNewEventInfo, + evRecordAborted, + }; + enum { + NoError=0, + errOpenRecordFile=-1, + errNoDemuxAvailable=-2, + errNoTsRecorderAvailable=-3, + errDiskFull=-4, + errTuneFailed=-255, + errMisconfiguration = -256, + errNoResources = -257, + }; +}; + +SWIG_IGNORE(iRecordableService); +class iRecordableService: public iRecordableService_ENUMS, public iObject +{ +#ifdef SWIG + iRecordableService(); + ~iRecordableService(); +#endif +public: +#ifndef SWIG + virtual RESULT connectEvent(const Slot2<void,iRecordableService*,int> &event, ePtr<eConnection> &connection)=0; +#endif + virtual SWIG_VOID(RESULT) getError(int &SWIG_OUTPUT)=0; + virtual RESULT prepare(const char *filename, time_t begTime=-1, time_t endTime=-1, int eit_event_id=-1, const char *name=0, const char *descr=0, const char *tags=0, bool descramble = true, bool recordecm = false)=0; + virtual RESULT prepareStreaming(bool descramble = true, bool includeecm = false)=0; + virtual RESULT start(bool simulate=false)=0; + virtual RESULT stop()=0; + virtual SWIG_VOID(RESULT) frontendInfo(ePtr<iFrontendInformation> &SWIG_OUTPUT)=0; + virtual SWIG_VOID(RESULT) stream(ePtr<iStreamableService> &SWIG_OUTPUT)=0; + virtual SWIG_VOID(RESULT) subServices(ePtr<iSubserviceList> &SWIG_OUTPUT)=0; +}; +SWIG_TEMPLATE_TYPEDEF(ePtr<iRecordableService>, iRecordableServicePtr); + +extern PyObject *New_iRecordableServicePtr(const ePtr<iRecordableService> &ref); // defined in enigma_python.i + +inline PyObject *PyFrom(ePtr<iRecordableService> &c) +{ + return New_iRecordableServicePtr(c); +} + +#ifndef SWIG +#ifdef PYTHON_REFCOUNT_DEBUG +inline ePyObject Impl_New_iRecordableServicePtr(const char* file, int line, const ePtr<iRecordableService> &ptr) +{ + return ePyObject(New_iRecordableServicePtr(ptr), file, line); +} +#define NEW_iRecordableServicePtr(ptr) Impl_New_iRecordableServicePtr(__FILE__, __LINE__, ptr) +#else +inline ePyObject Impl_New_iRecordableServicePtr(const ePtr<iRecordableService> &ptr) +{ + return New_iRecordableServicePtr(ptr); +} +#define NEW_iRecordableServicePtr(ptr) Impl_New_iRecordableServicePtr(ptr) +#endif +#endif // SWIG + +SWIG_IGNORE(iServiceHandler); +class iServiceHandler: public iObject +{ +#ifdef SWIG + iServiceHandler(); + ~iServiceHandler(); +#endif +public: + virtual SWIG_VOID(RESULT) play(const eServiceReference &, ePtr<iPlayableService> &SWIG_OUTPUT)=0; + virtual SWIG_VOID(RESULT) record(const eServiceReference &, ePtr<iRecordableService> &SWIG_OUTPUT)=0; + virtual SWIG_VOID(RESULT) list(const eServiceReference &, ePtr<iListableService> &SWIG_OUTPUT)=0; + virtual SWIG_VOID(RESULT) info(const eServiceReference &, ePtr<iStaticServiceInformation> &SWIG_OUTPUT)=0; + virtual SWIG_VOID(RESULT) offlineOperations(const eServiceReference &, ePtr<iServiceOfflineOperations> &SWIG_OUTPUT)=0; +}; +SWIG_TEMPLATE_TYPEDEF(ePtr<iServiceHandler>, iServiceHandlerPtr); + +#endif diff --git a/lib/service/listboxservice.cpp b/lib/service/listboxservice.cpp new file mode 100644 index 0000000..2f37ec3 --- /dev/null +++ b/lib/service/listboxservice.cpp @@ -0,0 +1,979 @@ +#include <lib/service/listboxservice.h> +#include <lib/service/service.h> +#include <lib/gdi/font.h> +#include <lib/gdi/epng.h> +#include <lib/dvb/epgcache.h> +#include <lib/dvb/db.h> +#include <lib/dvb/pmt.h> +#include <lib/nav/core.h> +#include <lib/python/connections.h> +#include <lib/python/python.h> +#include <ctype.h> + +ePyObject eListboxServiceContent::m_GetPiconNameFunc; + +void eListboxServiceContent::addService(const eServiceReference &service, bool beforeCurrent) +{ + if (beforeCurrent && m_size) + m_list.insert(m_cursor, service); + else + m_list.push_back(service); + if (m_size++) + { + ++m_cursor_number; + if (m_listbox) + m_listbox->entryAdded(cursorResolve(m_cursor_number-1)); + } + else + { + m_cursor = m_list.begin(); + m_cursor_number=0; + m_listbox->entryAdded(0); + } +} + +void eListboxServiceContent::removeCurrent() +{ + if (m_size && m_listbox) + { + if (m_cursor_number == --m_size) + { + m_list.erase(m_cursor--); + if (m_size) + { + --m_cursor_number; + m_listbox->entryRemoved(cursorResolve(m_cursor_number+1)); + } + else + m_listbox->entryRemoved(cursorResolve(m_cursor_number)); + } + else + { + m_list.erase(m_cursor++); + m_listbox->entryRemoved(cursorResolve(m_cursor_number)); + } + } +} + +void eListboxServiceContent::FillFinished() +{ + m_size = m_list.size(); + cursorHome(); + + if (m_listbox) + m_listbox->entryReset(); +} + +void eListboxServiceContent::setRoot(const eServiceReference &root, bool justSet) +{ + m_list.clear(); + m_cursor = m_list.end(); + m_root = root; + + if (justSet) + { + m_lst=0; + return; + } + ASSERT(m_service_center); + + if (m_service_center->list(m_root, m_lst)) + eDebug("no list available!"); + else if (m_lst->getContent(m_list)) + eDebug("getContent failed"); + + FillFinished(); +} + +bool eListboxServiceContent::setCurrent(const eServiceReference &ref) +{ + int index=0; + for (list::iterator i(m_list.begin()); i != m_list.end(); ++i, ++index) + { + if ( *i == ref ) + { + m_cursor = i; + m_cursor_number = index; + if (m_listbox) + { + m_listbox->moveSelectionTo(cursorResolve(index)); + return true; + } + break; + } + } + return false; +} + +void eListboxServiceContent::getCurrent(eServiceReference &ref) +{ + if (cursorValid()) + ref = *m_cursor; + else + ref = eServiceReference(); +} + +int eListboxServiceContent::getNextBeginningWithChar(char c) +{ +// printf("Char: %c\n", c); + int index=0; + for (list::iterator i(m_list.begin()); i != m_list.end(); ++i, ++index) + { + std::string text; + ePtr<iStaticServiceInformation> service_info; + m_service_center->info(*i, service_info); + service_info->getName(*i, text); +// printf("%c\n", text.c_str()[0]); + int idx=0; + int len=text.length(); + while ( idx <= len ) + { + char cc = text[idx++]; + if (isprint(cc)) + { + if (cc == c) + return index; + break; + } + } + } + return 0; +} + +int eListboxServiceContent::getPrevMarkerPos() +{ + if (!m_listbox) + return 0; + list::iterator i(m_cursor); + int index = m_cursor_number; + while (index) // Skip precending markers + { + --i; + --index; + if (!(i->flags & eServiceReference::isMarker && !(i->flags & eServiceReference::isInvisible))) + break; + } + while (index) + { + --i; + --index; + if (i->flags & eServiceReference::isMarker && !(i->flags & eServiceReference::isInvisible)) + break; + } + return cursorResolve(index); +} + +int eListboxServiceContent::getNextMarkerPos() +{ + if (!m_listbox) + return 0; + list::iterator i(m_cursor); + int index = m_cursor_number; + while (index < (m_size-1)) + { + ++i; + ++index; + if (i->flags & eServiceReference::isMarker && !(i->flags & eServiceReference::isInvisible)) + break; + } + return cursorResolve(index); +} + +void eListboxServiceContent::initMarked() +{ + m_marked.clear(); +} + +void eListboxServiceContent::addMarked(const eServiceReference &ref) +{ + m_marked.insert(ref); + if (m_listbox) + m_listbox->entryChanged(cursorResolve(lookupService(ref))); +} + +void eListboxServiceContent::removeMarked(const eServiceReference &ref) +{ + m_marked.erase(ref); + if (m_listbox) + m_listbox->entryChanged(cursorResolve(lookupService(ref))); +} + +int eListboxServiceContent::isMarked(const eServiceReference &ref) +{ + return m_marked.find(ref) != m_marked.end(); +} + +void eListboxServiceContent::markedQueryStart() +{ + m_marked_iterator = m_marked.begin(); +} + +int eListboxServiceContent::markedQueryNext(eServiceReference &ref) +{ + if (m_marked_iterator == m_marked.end()) + return -1; + ref = *m_marked_iterator++; + return 0; +} + +int eListboxServiceContent::lookupService(const eServiceReference &ref) +{ + /* shortcut for cursor */ + if (ref == *m_cursor) + return m_cursor_number; + /* otherwise, search in the list.. */ + int index = 0; + for (list::const_iterator i(m_list.begin()); i != m_list.end(); ++i, ++index); + + /* this is ok even when the index was not found. */ + return index; +} + +void eListboxServiceContent::setVisualMode(int mode) +{ + for (int i=0; i < celElements; ++i) + { + m_element_position[i] = eRect(); + m_element_font[i] = 0; + } + + m_visual_mode = mode; + + if (m_visual_mode == visModeSimple) + { + m_element_position[celServiceName] = eRect(ePoint(0, 0), m_itemsize); + m_element_font[celServiceName] = new gFont("Regular", 23); + } +} + +void eListboxServiceContent::setElementPosition(int element, eRect where) +{ + if ((element >= 0) && (element < celElements)) + m_element_position[element] = where; +} + +void eListboxServiceContent::setElementFont(int element, gFont *font) +{ + if ((element >= 0) && (element < celElements)) + m_element_font[element] = font; +} + +void eListboxServiceContent::setPixmap(int type, ePtr<gPixmap> &pic) +{ + if ((type >=0) && (type < picElements)) + m_pixmaps[type] = pic; +} + +void eListboxServiceContent::sort() +{ + if (!m_lst) + m_service_center->list(m_root, m_lst); + if (m_lst) + { + m_list.sort(iListableServiceCompare(m_lst)); + /* FIXME: is this really required or can we somehow keep the current entry? */ + cursorHome(); + if (m_listbox) + m_listbox->entryReset(); + } +} + +DEFINE_REF(eListboxServiceContent); + +eListboxServiceContent::eListboxServiceContent() + :m_visual_mode(visModeSimple), m_size(0), m_current_marked(false), m_itemheight(25), m_hide_number_marker(false), m_servicetype_icon_mode(0), m_crypto_icon_mode(0), m_column_width(0), m_progressbar_height(6), m_progressbar_border_width(2), m_record_indicator_mode(0) +{ + memset(m_color_set, 0, sizeof(m_color_set)); + cursorHome(); + eServiceCenter::getInstance(m_service_center); +} + +void eListboxServiceContent::setColor(int color, gRGB &col) +{ + if ((color >= 0) && (color < colorElements)) + { + m_color_set[color] = true; + m_color[color] = col; + } +} + +void eListboxServiceContent::swapServices(list::iterator a, list::iterator b) +{ + std::iter_swap(a, b); + int temp = a->getChannelNum(); + a->setChannelNum(b->getChannelNum()); + b->setChannelNum(temp); +} + +void eListboxServiceContent::cursorHome() +{ + if (m_current_marked && m_saved_cursor == m_list.end()) + { + if (m_cursor_number >= m_size) + { + m_cursor_number = m_size-1; + --m_cursor; + } + while (m_cursor_number) + { + swapServices(m_cursor--, m_cursor); + --m_cursor_number; + if (m_listbox && m_cursor_number) + m_listbox->entryChanged(cursorResolve(m_cursor_number)); + } + } + else + { + m_cursor = m_list.begin(); + m_cursor_number = 0; + } +} + +void eListboxServiceContent::cursorEnd() +{ + if (m_current_marked && m_saved_cursor == m_list.end()) + { + while (m_cursor != m_list.end()) + { + list::iterator prev = m_cursor++; + ++m_cursor_number; + if ( prev != m_list.end() && m_cursor != m_list.end() ) + { + swapServices(m_cursor, prev); + if ( m_listbox ) + m_listbox->entryChanged(cursorResolve(m_cursor_number)); + } + } + } + else + { + m_cursor = m_list.end(); + m_cursor_number = m_size; + } +} + +int eListboxServiceContent::setCurrentMarked(bool state) +{ + bool prev = m_current_marked; + m_current_marked = state; + + if (state != prev && m_listbox) + { + m_listbox->entryChanged(cursorResolve(m_cursor_number)); + if (!state) + { + if (!m_lst) + m_service_center->list(m_root, m_lst); + if (m_lst) + { + ePtr<iMutableServiceList> list; + if (m_lst->startEdit(list)) + eDebug("no editable list"); + else + { + eServiceReference ref; + getCurrent(ref); + if(!ref) + eDebug("no valid service selected"); + else + { + int pos = cursorGet(); + eDebugNoNewLine("move %s to %d ", ref.toString().c_str(), pos); + if (list->moveService(ref, cursorGet())) + eDebug("failed"); + else + eDebug("ok"); + } + } + } + else + eDebug("no list available!"); + } + } + + return 0; +} + +int eListboxServiceContent::cursorMove(int count) +{ + int prev = m_cursor_number, last = m_cursor_number + count; + if (count > 0) + { + while(count && m_cursor != m_list.end()) + { + list::iterator prev_it = m_cursor++; + if ( m_current_marked && m_cursor != m_list.end() && m_saved_cursor == m_list.end() ) + { + swapServices(prev_it, m_cursor); + if ( m_listbox && prev != m_cursor_number && last != m_cursor_number ) + m_listbox->entryChanged(cursorResolve(m_cursor_number)); + } + ++m_cursor_number; + if (!(m_hide_number_marker && m_cursor->flags & eServiceReference::isNumberedMarker) && !(m_cursor->flags & eServiceReference::isInvisible)) + --count; + } + } + else if (count < 0) + { + while (count && m_cursor != m_list.begin()) + { + list::iterator prev_it = m_cursor--; + if ( m_current_marked && m_cursor != m_list.end() && prev_it != m_list.end() && m_saved_cursor == m_list.end() ) + { + swapServices(prev_it, m_cursor); + if ( m_listbox && prev != m_cursor_number && last != m_cursor_number ) + m_listbox->entryChanged(cursorResolve(m_cursor_number)); + } + --m_cursor_number; + if (!(m_hide_number_marker && m_cursor->flags & eServiceReference::isNumberedMarker) && !(m_cursor->flags & eServiceReference::isInvisible)) + ++count; + } + } + return 0; +} + +int eListboxServiceContent::cursorValid() +{ + return m_cursor != m_list.end(); +} + +int eListboxServiceContent::cursorSet(int n) +{ + cursorHome(); + cursorMove(n); + return 0; +} + +int eListboxServiceContent::cursorResolve(int cursorPosition) +{ + int strippedCursor = 0; + int count = 0; + for (list::iterator i(m_list.begin()); i != m_list.end(); ++i) + { + if (count == cursorPosition) + break; + count++; + if (m_hide_number_marker && (i->flags & eServiceReference::isNumberedMarker) || (i->flags & eServiceReference::isInvisible)) + continue; + strippedCursor++; + } + return strippedCursor; +} + +int eListboxServiceContent::cursorGet() +{ + return cursorResolve(m_cursor_number); +} + +int eListboxServiceContent::currentCursorSelectable() +{ + if (cursorValid()) + { + /* don't allow markers to be selected, unless we're in edit mode (because we want to provide some method to the user to remove a marker) */ + if (m_cursor->flags & eServiceReference::isMarker && m_marked.empty()) + return 0; + else + return 1; + } + return 0; +} + +void eListboxServiceContent::cursorSave() +{ + m_saved_cursor = m_cursor; + m_saved_cursor_number = m_cursor_number; +} + +void eListboxServiceContent::cursorRestore() +{ + m_cursor = m_saved_cursor; + m_cursor_number = m_saved_cursor_number; + m_saved_cursor = m_list.end(); +} + +int eListboxServiceContent::size() +{ + int size = 0; + for (list::iterator i(m_list.begin()); i != m_list.end(); ++i) + { + if (m_hide_number_marker && (i->flags & eServiceReference::isNumberedMarker) || (i->flags & eServiceReference::isInvisible)) + continue; + size++; + } + + return size; +} + +void eListboxServiceContent::setSize(const eSize &size) +{ + m_itemsize = size; + if (m_visual_mode == visModeSimple) + setVisualMode(m_visual_mode); +} + +void eListboxServiceContent::setGetPiconNameFunc(ePyObject func) +{ + if (m_GetPiconNameFunc) + Py_DECREF(m_GetPiconNameFunc); + m_GetPiconNameFunc = func; + if (m_GetPiconNameFunc) + Py_INCREF(m_GetPiconNameFunc); +} + +void eListboxServiceContent::setIgnoreService( const eServiceReference &service ) +{ + m_is_playable_ignore=service; + if (m_listbox && m_listbox->isVisible()) + m_listbox->invalidate(); +} + +void eListboxServiceContent::setItemHeight(int height) +{ + m_itemheight = height; + if (m_listbox) + m_listbox->setItemHeight(height); +} + +bool eListboxServiceContent::checkServiceIsRecorded(eServiceReference ref) +{ + std::map<ePtr<iRecordableService>, eServiceReference, std::less<iRecordableService*> > recordedServices; + recordedServices = eNavigation::getInstance()->getRecordingsServices(); + for (std::map<ePtr<iRecordableService>, eServiceReference >::iterator it = recordedServices.begin(); it != recordedServices.end(); ++it) + { + if (ref.flags & eServiceReference::isGroup) + { + ePtr<iDVBChannelList> db; + ePtr<eDVBResourceManager> res; + eDVBResourceManager::getInstance(res); + res->getChannelList(db); + eBouquet *bouquet=0; + db->getBouquet(ref, bouquet); + for (std::list<eServiceReference>::iterator i(bouquet->m_services.begin()); i != bouquet->m_services.end(); ++it) + if (*i == it->second) + return true; + } + else if (ref == it->second) + return true; + } + return false; +} + +void eListboxServiceContent::paint(gPainter &painter, eWindowStyle &style, const ePoint &offset, int selected) +{ + painter.clip(eRect(offset, m_itemsize)); + + int marked = 0; + + if (m_current_marked && selected) + marked = 2; + else if (cursorValid() && isMarked(*m_cursor)) + { + if (selected) + marked = 2; + else + marked = 1; + } + else + style.setStyle(painter, selected ? eWindowStyle::styleListboxSelected : eWindowStyle::styleListboxNormal); + + eListboxStyle *local_style = 0; + + /* get local listbox style, if present */ + if (m_listbox) + local_style = m_listbox->getLocalStyle(); + + if (marked == 1) // marked + { + style.setStyle(painter, eWindowStyle::styleListboxMarked); + if (m_color_set[markedForeground]) + painter.setForegroundColor(m_color[markedForeground]); + if (m_color_set[markedBackground]) + painter.setBackgroundColor(m_color[markedBackground]); + } + else if (marked == 2) // marked and selected + { + style.setStyle(painter, eWindowStyle::styleListboxMarkedAndSelected); + if (m_color_set[markedForegroundSelected]) + painter.setForegroundColor(m_color[markedForegroundSelected]); + if (m_color_set[markedBackgroundSelected]) + painter.setBackgroundColor(m_color[markedBackgroundSelected]); + } + else if (local_style) + { + if (selected) + { + /* if we have a local background color set, use that. */ + if (local_style->m_background_color_selected_set) + painter.setBackgroundColor(local_style->m_background_color_selected); + /* same for foreground */ + if (local_style->m_foreground_color_selected_set) + painter.setForegroundColor(local_style->m_foreground_color_selected); + } + else + { + /* if we have a local background color set, use that. */ + if (local_style->m_background_color_set) + painter.setBackgroundColor(local_style->m_background_color); + /* same for foreground */ + if (local_style->m_foreground_color_set) + painter.setForegroundColor(local_style->m_foreground_color); + } + } + + if (!local_style || !local_style->m_transparent_background) + /* if we have no transparent background */ + { + /* blit background picture, if available (otherwise, clear only) */ + if (local_style && local_style->m_background) + painter.blit(local_style->m_background, offset, eRect(), 0); + else + painter.clear(); + } else + { + if (local_style->m_background) + painter.blit(local_style->m_background, offset, eRect(), gPainter::BT_ALPHATEST); + else if (selected && !local_style->m_selection) + painter.clear(); + } + + if (cursorValid()) + { + /* get service information */ + ePtr<iStaticServiceInformation> service_info; + m_service_center->info(*m_cursor, service_info); + eServiceReference ref = *m_cursor; + bool isMarker = ref.flags & eServiceReference::isMarker; + bool isPlayable = !(ref.flags & eServiceReference::isDirectory || isMarker); + bool isRecorded = m_record_indicator_mode && isPlayable && checkServiceIsRecorded(ref); + ePtr<eServiceEvent> evt; + bool serviceAvail = true; + + if (!marked && isPlayable && service_info && m_is_playable_ignore.valid() && !service_info->isPlayable(*m_cursor, m_is_playable_ignore)) + { + if (m_color_set[serviceNotAvail]) + painter.setForegroundColor(m_color[serviceNotAvail]); + else + painter.setForegroundColor(gRGB(0xbbbbbb)); + serviceAvail = false; + } + if (m_record_indicator_mode == 3 && isRecorded) + { + if (m_color_set[serviceRecorded]) + painter.setForegroundColor(m_color[serviceRecorded]); + else + painter.setForegroundColor(gRGB(0xb40431)); + } + + if (selected && local_style && local_style->m_selection) + painter.blit(local_style->m_selection, offset, eRect(), gPainter::BT_ALPHATEST); + + int xoffset=0; // used as offset when painting the folder/marker symbol or the serviceevent progress + time_t now = time(0); + + for (int e = 0; e != celServiceTypePixmap; ++e) + { + if (m_element_font[e]) + { + int flags=gPainter::RT_VALIGN_CENTER; + int yoffs = 0; + eRect &area = m_element_position[e]; + std::string text = "<n/a>"; + switch (e) + { + case celServiceNumber: + { + if (area.width() <= 0) + continue; // no point in going on if we won't paint anything + + if( m_cursor->getChannelNum() == 0 ) + continue; + + char buffer[15]; + snprintf(buffer, sizeof(buffer), "%d", m_cursor->getChannelNum() ); + text = buffer; + flags|=gPainter::RT_HALIGN_RIGHT; + break; + } + case celServiceName: + { + if (service_info) + service_info->getName(*m_cursor, text); + break; + } + case celServiceInfo: + { + if ( isPlayable && service_info && !service_info->getEvent(*m_cursor, evt) ) + { + std::string name = evt->getEventName(); + if (name.empty()) + continue; + text = evt->getEventName(); + if (serviceAvail) + { + if (!selected && m_color_set[eventForeground]) + painter.setForegroundColor(m_color[eventForeground]); + else if (selected && m_color_set[eventForegroundSelected]) + painter.setForegroundColor(m_color[eventForegroundSelected]); + else + painter.setForegroundColor(gRGB(0xe7b53f)); + } + break; + } + continue; + } + case celServiceEventProgressbar: + { + if (area.width() > 0 && isPlayable && service_info && !service_info->getEvent(*m_cursor, evt)) + { + char buffer[15]; + snprintf(buffer, sizeof(buffer), "%d %%", (int)(100 * (now - evt->getBeginTime()) / evt->getDuration())); + text = buffer; + flags|=gPainter::RT_HALIGN_RIGHT; + break; + } + continue; + } + } + + eRect tmp = area; + int xoffs = 0; + if (e == celServiceName) + { + xoffs = xoffset; + tmp.setWidth(((!isPlayable || !m_column_width) ? tmp.width() : m_column_width < 0 ? area.width() / 2 : m_column_width) - xoffs); + } + + eTextPara *para = new eTextPara(tmp); + para->setFont(m_element_font[e]); + para->renderString(text.c_str()); + + if (e == celServiceName) + { + eRect bbox = para->getBoundBox(); + + int servicenameWidth = ((!isPlayable || !m_column_width) ? bbox.width() : m_column_width < 0 ? area.width() / 2 : m_column_width); + m_element_position[celServiceInfo].setLeft(area.left() + servicenameWidth + 8 + xoffs); + m_element_position[celServiceInfo].setTop(area.top()); + m_element_position[celServiceInfo].setWidth(area.width() - (servicenameWidth + 8 + xoffs)); + m_element_position[celServiceInfo].setHeight(area.height()); + + if (isPlayable) + { + //picon stuff + if (PyCallable_Check(m_GetPiconNameFunc)) + { + eRect area = m_element_position[celServiceInfo]; + /* PIcons are usually about 100:60. Make it a + * bit wider in case the icons are diffently + * shaped, and to add a bit of margin between + * icon and text. */ + const int iconWidth = area.height() * 9 / 5; + m_element_position[celServiceInfo].setLeft(area.left() + iconWidth); + m_element_position[celServiceInfo].setWidth(area.width() - iconWidth); + area = m_element_position[celServiceName]; + xoffs += iconWidth; + ePyObject pArgs = PyTuple_New(1); + PyTuple_SET_ITEM(pArgs, 0, PyString_FromString(ref.toString().c_str())); + ePyObject pRet = PyObject_CallObject(m_GetPiconNameFunc, pArgs); + Py_DECREF(pArgs); + if (pRet) + { + if (PyString_Check(pRet)) + { + std::string piconFilename = PyString_AS_STRING(pRet); + if (!piconFilename.empty()) + { + ePtr<gPixmap> piconPixmap; + loadPNG(piconPixmap, piconFilename.c_str()); + if (piconPixmap) + { + area.moveBy(offset); + painter.clip(area); + painter.blitScale(piconPixmap, + eRect(area.left(), area.top(), iconWidth, area.height()), + area, + gPainter::BT_ALPHABLEND | gPainter::BT_KEEP_ASPECT_RATIO); + painter.clippop(); + } + } + } + Py_DECREF(pRet); + } + } + + //service type marker stuff + if (m_servicetype_icon_mode) + { + int orbpos = m_cursor->getUnsignedData(4) >> 16; + const char *filename = ref.path.c_str(); + ePtr<gPixmap> &pixmap = + (m_cursor->flags & eServiceReference::isGroup) ? m_pixmaps[picServiceGroup] : + (strstr(filename, "://")) ? m_pixmaps[picStream] : + (orbpos == 0xFFFF) ? m_pixmaps[picDVB_C] : + (orbpos == 0xEEEE) ? m_pixmaps[picDVB_T] : m_pixmaps[picDVB_S]; + if (pixmap) + { + eSize pixmap_size = pixmap->size(); + eRect area = m_element_position[celServiceInfo]; + m_element_position[celServiceInfo].setLeft(area.left() + pixmap_size.width() + 8); + m_element_position[celServiceInfo].setWidth(area.width() - pixmap_size.width() - 8); + int offs = 0; + if (m_servicetype_icon_mode == 1) + { + area = m_element_position[celServiceName]; + offs = xoffs; + xoffs += pixmap_size.width() + 8; + } + else if (m_crypto_icon_mode == 1 && m_pixmaps[picCrypto]) + offs = offs + m_pixmaps[picCrypto]->size().width() + 8; + int correction = (area.height() - pixmap_size.height()) / 2; + area.moveBy(offset); + painter.clip(area); + painter.blit(pixmap, ePoint(area.left() + offs, offset.y() + correction), area, gPainter::BT_ALPHATEST); + painter.clippop(); + } + } + + //crypto icon stuff + if (m_crypto_icon_mode && m_pixmaps[picCrypto]) + { + eSize pixmap_size = m_pixmaps[picCrypto]->size(); + eRect area = m_element_position[celServiceInfo]; + int offs = 0; + if (m_crypto_icon_mode == 1) + { + m_element_position[celServiceInfo].setLeft(area.left() + pixmap_size.width() + 8); + m_element_position[celServiceInfo].setWidth(area.width() - pixmap_size.width() - 8); + area = m_element_position[celServiceName]; + offs = xoffs; + xoffs += pixmap_size.width() + 8; + } + int correction = (area.height() - pixmap_size.height()) / 2; + area.moveBy(offset); + if (service_info->isCrypted(*m_cursor)) + { + if (m_crypto_icon_mode == 2) + { + m_element_position[celServiceInfo].setLeft(area.left() + pixmap_size.width() + 8); + m_element_position[celServiceInfo].setWidth(area.width() - pixmap_size.width() - 8); + } + painter.clip(area); + painter.blit(m_pixmaps[picCrypto], ePoint(area.left() + offs, offset.y() + correction), area, gPainter::BT_ALPHATEST); + painter.clippop(); + } + } + + //record icon stuff + if (isRecorded && m_record_indicator_mode < 3 && m_pixmaps[picRecord]) + { + eSize pixmap_size = m_pixmaps[picRecord]->size(); + eRect area = m_element_position[celServiceInfo]; + int offs = 0; + if (m_record_indicator_mode == 1) + { + m_element_position[celServiceInfo].setLeft(area.left() + pixmap_size.width() + 8); + m_element_position[celServiceInfo].setWidth(area.width() - pixmap_size.width() - 8); + area = m_element_position[celServiceName]; + offs = xoffs; + xoffs += pixmap_size.width() + 8; + } + int correction = (area.height() - pixmap_size.height()) / 2; + area.moveBy(offset); + if (m_record_indicator_mode == 2) + { + m_element_position[celServiceInfo].setLeft(area.left() + pixmap_size.width() + 8); + m_element_position[celServiceInfo].setWidth(area.width() - pixmap_size.width() - 8); + } + painter.clip(area); + painter.blit(m_pixmaps[picRecord], ePoint(area.left() + offs, offset.y() + correction), area, gPainter::BT_ALPHATEST); + painter.clippop(); + } + } + } + + if (flags & gPainter::RT_HALIGN_RIGHT) + para->realign(eTextPara::dirRight); + else if (flags & gPainter::RT_HALIGN_CENTER) + para->realign(eTextPara::dirCenter); + else if (flags & gPainter::RT_HALIGN_BLOCK) + para->realign(eTextPara::dirBlock); + + if (flags & gPainter::RT_VALIGN_CENTER) + { + eRect bbox = para->getBoundBox(); + yoffs = (area.height() - bbox.height()) / 2 - bbox.top(); + } + + painter.renderPara(para, offset+ePoint(xoffs, yoffs)); + } + else if ((e == celFolderPixmap && m_cursor->flags & eServiceReference::isDirectory) || + (e == celMarkerPixmap && m_cursor->flags & eServiceReference::isMarker && + !(m_cursor->flags & eServiceReference::isNumberedMarker))) + { + ePtr<gPixmap> &pixmap = + (e == celFolderPixmap) ? m_pixmaps[picFolder] : m_pixmaps[picMarker]; + if (pixmap) + { + eSize pixmap_size = pixmap->size(); + eRect area = m_element_position[e == celFolderPixmap ? celServiceName: celServiceNumber]; + int correction = (area.height() - pixmap_size.height()) / 2; + if (e == celFolderPixmap) + xoffset = pixmap_size.width() + 8; + area.moveBy(offset); + painter.clip(area); + painter.blit(pixmap, ePoint(area.left(), offset.y() + correction), area, gPainter::BT_ALPHATEST); + painter.clippop(); + } + } + } + if (selected && (!local_style || !local_style->m_selection)) + style.drawFrame(painter, eRect(offset, m_itemsize), eWindowStyle::frameListboxEntry); + + eRect area = m_element_position[celServiceEventProgressbar]; + if (area.width() > 0 && evt && !m_element_font[celServiceEventProgressbar]) + { + int pb_xpos = area.left(); + int pb_ypos = offset.y() + (m_itemsize.height() - m_progressbar_height - 2 * m_progressbar_border_width) / 2; + int pb_width = area.width()- 2 * m_progressbar_border_width; + gRGB ProgressbarBorderColor = 0xdfdfdf; + int evt_done = pb_width * (now - evt->getBeginTime()) / evt->getDuration(); + + // the progress data... + eRect tmp = eRect(pb_xpos + m_progressbar_border_width, pb_ypos + m_progressbar_border_width, evt_done, m_progressbar_height); + ePtr<gPixmap> &pixmap = m_pixmaps[picServiceEventProgressbar]; + if (pixmap) { + painter.clip(tmp); + painter.blit(pixmap, ePoint(pb_xpos + m_progressbar_border_width, pb_ypos + m_progressbar_border_width), tmp, gPainter::BT_ALPHATEST); + painter.clippop(); + } + else { + if (!selected && m_color_set[serviceEventProgressbarColor]) + painter.setForegroundColor(m_color[serviceEventProgressbarColor]); + else if (selected && m_color_set[serviceEventProgressbarColorSelected]) + painter.setForegroundColor(m_color[serviceEventProgressbarColorSelected]); + painter.fill(tmp); + } + + // the progressbar border + if (!selected) { + if (m_color_set[serviceEventProgressbarBorderColor]) + ProgressbarBorderColor = m_color[serviceEventProgressbarBorderColor]; + else if (m_color_set[eventborderForeground]) + ProgressbarBorderColor = m_color[eventborderForeground]; + } + else { /* !selected */ + if (m_color_set[serviceEventProgressbarBorderColorSelected]) + ProgressbarBorderColor = m_color[serviceEventProgressbarBorderColorSelected]; + else if (m_color_set[eventborderForegroundSelected]) + ProgressbarBorderColor = m_color[eventborderForegroundSelected]; + } + painter.setForegroundColor(ProgressbarBorderColor); + + painter.fill(eRect(pb_xpos, pb_ypos, pb_width + 2 * m_progressbar_border_width, m_progressbar_border_width)); + painter.fill(eRect(pb_xpos, pb_ypos + m_progressbar_border_width + m_progressbar_height, pb_width + 2 * m_progressbar_border_width, m_progressbar_border_width)); + painter.fill(eRect(pb_xpos, pb_ypos + m_progressbar_border_width, m_progressbar_border_width, m_progressbar_height)); + painter.fill(eRect(pb_xpos + m_progressbar_border_width + pb_width, pb_ypos + m_progressbar_border_width, m_progressbar_border_width, m_progressbar_height)); + } + } + painter.clippop(); +} diff --git a/lib/service/listboxservice.h b/lib/service/listboxservice.h new file mode 100644 index 0000000..e5dc68c --- /dev/null +++ b/lib/service/listboxservice.h @@ -0,0 +1,177 @@ +#ifndef __lib_service_listboxservice_h +#define __lib_service_listboxservice_h + +#include <lib/gdi/gpixmap.h> +#include <lib/gui/elistbox.h> +#include <lib/service/iservice.h> +#include <lib/python/python.h> +#include <set> + +class eListboxServiceContent: public virtual iListboxContent +{ + DECLARE_REF(eListboxServiceContent); + static ePyObject m_GetPiconNameFunc; +public: + eListboxServiceContent(); + + void addService(const eServiceReference &ref, bool beforeCurrent=false); + void removeCurrent(); + void FillFinished(); + + void setIgnoreService( const eServiceReference &service ); + void setRoot(const eServiceReference &ref, bool justSet=false); + void getCurrent(eServiceReference &ref); + + int getNextBeginningWithChar(char c); + int getPrevMarkerPos(); + int getNextMarkerPos(); + + /* support for marked services */ + void initMarked(); + void addMarked(const eServiceReference &ref); + void removeMarked(const eServiceReference &ref); + int isMarked(const eServiceReference &ref); + + /* this is NOT thread safe! */ + void markedQueryStart(); + int markedQueryNext(eServiceReference &ref); + + int lookupService(const eServiceReference &ref); + bool setCurrent(const eServiceReference &ref); + + enum { + visModeSimple, + visModeComplex + }; + + void setVisualMode(int mode); + + /* only in complex mode: */ + enum { + celServiceNumber, + celMarkerPixmap, + celFolderPixmap, + celServiceEventProgressbar, + celServiceName, + celServiceInfo, // "now" event + celServiceTypePixmap, + celElements + }; + + enum { + picDVB_S, + picDVB_T, + picDVB_C, + picStream, + picServiceGroup, + picFolder, + picMarker, + picServiceEventProgressbar, + picCrypto, + picRecord, + picElements + }; + + void setElementPosition(int element, eRect where); + void setElementFont(int element, gFont *font); + void setPixmap(int type, ePtr<gPixmap> &pic); + + void sort(); + + int setCurrentMarked(bool); + + int getItemHeight() { return m_itemheight; } + void setItemHeight(int height); + void setHideNumberMarker(bool doHide) { m_hide_number_marker = doHide; } + void setServiceTypeIconMode(int mode) { m_servicetype_icon_mode = mode; } + void setCryptoIconMode(int mode) { m_crypto_icon_mode = mode; } + void setRecordIndicatorMode(int mode) { m_record_indicator_mode = mode; } + void setColumnWidth(int value) { m_column_width = value; } + void setProgressbarHeight(int value) { m_progressbar_height = value; } + void setProgressbarBorderWidth(int value) { m_progressbar_border_width = value; } + + static void setGetPiconNameFunc(SWIG_PYOBJECT(ePyObject) func); + + enum { + markedForeground, + markedForegroundSelected, + markedBackground, + markedBackgroundSelected, + serviceNotAvail, + eventForeground, + eventForegroundSelected, + eventborderForeground, + eventborderForegroundSelected, + serviceEventProgressbarColor, + serviceEventProgressbarColorSelected, + serviceEventProgressbarBorderColor, + serviceEventProgressbarBorderColorSelected, + serviceRecorded, + colorElements + }; + + void setColor(int color, gRGB &col); + bool checkServiceIsRecorded(eServiceReference ref); +protected: + void cursorHome(); + void cursorEnd(); + int cursorMove(int count=1); + int cursorValid(); + int cursorSet(int n); + int cursorResolve(int); + int cursorGet(); + int currentCursorSelectable(); + + void cursorSave(); + void cursorRestore(); + int size(); + + // void setOutputDevice ? (for allocating colors, ...) .. requires some work, though + void setSize(const eSize &size); + + /* the following functions always refer to the selected item */ + void paint(gPainter &painter, eWindowStyle &style, const ePoint &offset, int selected); + + int m_visual_mode; + /* for complex mode */ + eRect m_element_position[celElements]; + ePtr<gFont> m_element_font[celElements]; + ePtr<gPixmap> m_pixmaps[picElements]; + gRGB m_color[colorElements]; + bool m_color_set[colorElements]; +private: + typedef std::list<eServiceReference> list; + + list m_list; + list::iterator m_cursor, m_saved_cursor; + + int m_cursor_number, m_saved_cursor_number; + int m_size; + + eSize m_itemsize; + ePtr<iServiceHandler> m_service_center; + ePtr<iListableService> m_lst; + + eServiceReference m_root; + + /* support for marked services */ + std::set<eServiceReference> m_marked; + std::set<eServiceReference>::const_iterator m_marked_iterator; + + /* support for movemode */ + bool m_current_marked; + void swapServices(list::iterator, list::iterator); + + eServiceReference m_is_playable_ignore; + + int m_itemheight; + bool m_hide_number_marker; + int m_servicetype_icon_mode; + int m_crypto_icon_mode; + int m_record_indicator_mode; + int m_column_width; + int m_progressbar_height; + int m_progressbar_border_width; +}; + +#endif diff --git a/lib/service/service.cpp b/lib/service/service.cpp new file mode 100644 index 0000000..51abe2d --- /dev/null +++ b/lib/service/service.cpp @@ -0,0 +1,356 @@ +#include <lib/base/eerror.h> +#include <lib/base/estring.h> +#include <lib/service/service.h> +#include <lib/base/init_num.h> +#include <lib/base/init.h> +#include <lib/dvb/idvb.h> + +static std::string encode(const std::string s) +{ + int len = s.size(); + std::string res; + int i; + for (i=0; i<len; ++i) + { + unsigned char c = s[i]; + if ((c == ':') || (c < 32) || (c == '%')) + { + res += "%"; + char hex[8]; + snprintf(hex, 8, "%02x", c); + res += hex; + } else + res += c; + } + return res; +} + +eServiceReference::eServiceReference(const std::string &string) +{ + const char *c=string.c_str(); + int pathl=0; + number = 0; + + if (!string.length()) + type = idInvalid; + else if ( sscanf(c, "%d:%d:%x:%x:%x:%x:%x:%x:%x:%x:%n", &type, &flags, &data[0], &data[1], &data[2], &data[3], &data[4], &data[5], &data[6], &data[7], &pathl) < 8 ) + { + memset( data, 0, sizeof(data) ); + eDebug("find old format eServiceReference string"); + if ( sscanf(c, "%d:%d:%x:%x:%x:%x:%n", &type, &flags, &data[0], &data[1], &data[2], &data[3], &pathl) < 2 ) + type = idInvalid; + } + + if (pathl) + { + const char *pathstr = c+pathl; + const char *namestr = strchr(pathstr, ':'); + if (namestr) + { + if (!strncmp(namestr, "://", 3)) + { + /* + * The path is a url (e.g. "http://...") + * We can expect more colons to be present + * in a url, so instead of a colon, we look + * for a space instead as url delimiter, + * after which a name may be present. + */ + namestr = strchr(namestr, ' '); + if (namestr) + { + path.assign(pathstr, namestr - pathstr); + if (*(namestr + 1)) + name = namestr + 1; + } + } + else + { + if (pathstr != namestr) + path.assign(pathstr, namestr-pathstr); + if (*(namestr+1)) + name=namestr+1; + } + } + else + { + path=pathstr; + } + } + + path = urlDecode(path); + name = urlDecode(name); +} + +std::string eServiceReference::toString() const +{ + std::string ret; + ret += getNum(type); + ret += ":"; + ret += getNum(flags); + for (unsigned int i=0; i<sizeof(data)/sizeof(*data); ++i) + ret+=":"+ getNum(data[i], 0x10); + ret+=":"+encode(path); /* we absolutely have a problem when the path contains a ':' (for example: http://). we need an encoding here. */ + if (name.length()) + ret+=":"+encode(name); + return ret; +} + +std::string eServiceReference::toCompareString() const +{ + std::string ret; + ret += getNum(type); + ret += ":0"; + for (unsigned int i=0; i<sizeof(data)/sizeof(*data); ++i) + ret+=":"+getNum(data[i], 0x10); + ret+=":"+encode(path); + return ret; +} + +eServiceCenter *eServiceCenter::instance; + +eServiceCenter::eServiceCenter() +{ + if (!instance) + { + eDebug("settings instance."); + instance = this; + } +} + +eServiceCenter::~eServiceCenter() +{ + if (instance == this) + { + eDebug("clear instance"); + instance = 0; + } +} + +DEFINE_REF(eServiceCenter); + +RESULT eServiceCenter::play(const eServiceReference &ref, ePtr<iPlayableService> &ptr) +{ + std::map<int,ePtr<iServiceHandler> >::iterator i = handler.find(ref.type); + if (i == handler.end()) + { + ptr = 0; + return -1; + } + return i->second->play(ref, ptr); +} + +RESULT eServiceCenter::record(const eServiceReference &ref, ePtr<iRecordableService> &ptr) +{ + std::map<int,ePtr<iServiceHandler> >::iterator i = handler.find(ref.type); + if (i == handler.end()) + { + ptr = 0; + return -1; + } + return i->second->record(ref, ptr); +} + +RESULT eServiceCenter::list(const eServiceReference &ref, ePtr<iListableService> &ptr) +{ + std::map<int,ePtr<iServiceHandler> >::iterator i = handler.find(ref.type); + if (i == handler.end()) + { + ptr = 0; + return -1; + } + return i->second->list(ref, ptr); +} + +RESULT eServiceCenter::info(const eServiceReference &ref, ePtr<iStaticServiceInformation> &ptr) +{ + std::map<int,ePtr<iServiceHandler> >::iterator i = handler.find(ref.type); + if (i == handler.end()) + { + ptr = 0; + return -1; + } + return i->second->info(ref, ptr); +} + +RESULT eServiceCenter::offlineOperations(const eServiceReference &ref, ePtr<iServiceOfflineOperations> &ptr) +{ + std::map<int,ePtr<iServiceHandler> >::iterator i = handler.find(ref.type); + if (i == handler.end()) + { + ptr = 0; + return -1; + } + return i->second->offlineOperations(ref, ptr); +} + +RESULT eServiceCenter::addServiceFactory(int id, iServiceHandler *hnd, std::list<std::string> &extensions) +{ + handler.insert(std::pair<int,ePtr<iServiceHandler> >(id, hnd)); + for (std::list<std::string>::const_iterator eit(extensions.begin()); eit != extensions.end(); ++eit) + { + extensions_r[*eit] = id; + } + return 0; +} + +RESULT eServiceCenter::removeServiceFactory(int id) +{ + for (std::map<std::string, int>::iterator sit(extensions_r.begin()); sit != extensions_r.end(); ) + { + if (sit->second == id) + { + extensions_r.erase(sit++); + } + else + { + ++sit; + } + } + handler.erase(id); + return 0; +} + +RESULT eServiceCenter::addFactoryExtension(int id, const char *extension) +{ + extensions_r[extension] = id; + return 0; +} + +RESULT eServiceCenter::removeFactoryExtension(int id, const char *extension) +{ + std::map<std::string,int>::iterator what = extensions_r.find(extension); + if (what == extensions_r.end()) + return -1; // not found + extensions_r.erase(what); + return 0; +} + +int eServiceCenter::getServiceTypeForExtension(const char *str) +{ + return getServiceTypeForExtension(std::string(str)); +} + +int eServiceCenter::getServiceTypeForExtension(const std::string &str) +{ + std::map<std::string,int>::const_iterator what = extensions_r.find(str); + if (what == extensions_r.end()) + return -1; // not found + return what->second; +} + + /* default handlers */ +RESULT iServiceHandler::info(const eServiceReference &, ePtr<iStaticServiceInformation> &ptr) +{ + ptr = 0; + return -1; +} + +#include <lib/service/event.h> + +RESULT iStaticServiceInformation::getEvent(const eServiceReference &ref, ePtr<eServiceEvent> &evt, time_t start_time) +{ + evt = 0; + return -1; +} + +int iStaticServiceInformation::getLength(const eServiceReference &ref) +{ + return -1; +} + +int iStaticServiceInformation::isPlayable(const eServiceReference &ref, const eServiceReference &ignore, bool simulate) +{ + return 0; +} + +RESULT iServiceInformation::getEvent(ePtr<eServiceEvent> &evt, int m_nownext) +{ + evt = 0; + return -1; +} + +int iStaticServiceInformation::getInfo(const eServiceReference &ref, int w) +{ + return -1; +} + +std::string iStaticServiceInformation::getInfoString(const eServiceReference &ref, int w) +{ + return ""; +} + +ePtr<iServiceInfoContainer> iStaticServiceInformation::getInfoObject(int w) +{ + ePtr<iServiceInfoContainer> retval; + return retval; +} + +ePtr<iDVBTransponderData> iStaticServiceInformation::getTransponderData(const eServiceReference &ref) +{ + ePtr<iDVBTransponderData> retval; + return retval; +} + +long long iStaticServiceInformation::getFileSize(const eServiceReference &ref) +{ + return 0; +} + +bool iStaticServiceInformation::isCrypted(const eServiceReference &ref) +{ + return 0; +} + +int iStaticServiceInformation::setInfo(const eServiceReference &ref, int w, int v) +{ + return -1; +} + +int iStaticServiceInformation::setInfoString(const eServiceReference &ref, int w, const char *v) +{ + return -1; +} + +int iServiceInformation::getInfo(int w) +{ + return -1; +} + +std::string iServiceInformation::getInfoString(int w) +{ + return ""; +} + +ePtr<iServiceInfoContainer> iServiceInformation::getInfoObject(int w) +{ + ePtr<iServiceInfoContainer> retval; + return retval; +} + +ePtr<iDVBTransponderData> iServiceInformation::getTransponderData() +{ + ePtr<iDVBTransponderData> retval; + return retval; +} + +void iServiceInformation::getCaIds(std::vector<int> &caids, std::vector<int> &ecmpids) +{ +} + +long long iServiceInformation::getFileSize() +{ + return 0; +} + +int iServiceInformation::setInfo(int w, int v) +{ + return -1; +} + +int iServiceInformation::setInfoString(int w, const char *v) +{ + return -1; +} + +eAutoInitPtr<eServiceCenter> init_eServiceCenter(eAutoInitNumbers::service, "eServiceCenter"); diff --git a/lib/service/service.h b/lib/service/service.h new file mode 100644 index 0000000..fddcdeb --- /dev/null +++ b/lib/service/service.h @@ -0,0 +1,49 @@ +#ifndef __service_h +#define __service_h + +#include <map> +#include <lib/base/object.h> +#include <lib/service/iservice.h> + +class eServiceCenter; + +#ifndef SWIG +typedef ePtr<eServiceCenter> eServiceCenterPtr; +#endif + +class eServiceCenter: public iServiceHandler +{ + DECLARE_REF(eServiceCenter); + std::map<int,ePtr<iServiceHandler> > handler; + std::map<std::string, int> extensions_r; + static eServiceCenter *instance; +#ifdef SWIG + eServiceCenter(); + ~eServiceCenter(); +#endif +public: +#ifndef SWIG + eServiceCenter(); + virtual ~eServiceCenter(); + + int getServiceTypeForExtension(const char *str); + int getServiceTypeForExtension(const std::string &str); + + // iServiceHandler + RESULT play(const eServiceReference &, ePtr<iPlayableService> &ptr); + RESULT record(const eServiceReference &, ePtr<iRecordableService> &ptr); + RESULT list(const eServiceReference &, ePtr<iListableService> &ptr); + RESULT info(const eServiceReference &, ePtr<iStaticServiceInformation> &ptr); + RESULT offlineOperations(const eServiceReference &, ePtr<iServiceOfflineOperations> &ptr); + + // eServiceCenter + static RESULT getPrivInstance(ePtr<eServiceCenter> &ptr) { ptr = instance; return 0; } + RESULT addServiceFactory(int id, iServiceHandler *hnd, std::list<std::string> &extensions); + RESULT removeServiceFactory(int id); + RESULT addFactoryExtension(int id, const char *extension); + RESULT removeFactoryExtension(int id, const char *extension); +#endif + static SWIG_VOID(RESULT) getInstance(ePtr<iServiceHandler> &SWIG_NAMED_OUTPUT(ptr)) { ptr = instance; return 0; } +}; + +#endif diff --git a/lib/service/servicedvb.cpp b/lib/service/servicedvb.cpp new file mode 100644 index 0000000..66306cb --- /dev/null +++ b/lib/service/servicedvb.cpp @@ -0,0 +1,3467 @@ +#include <lib/base/eerror.h> +#include <lib/base/object.h> +#include <string> +#include <lib/service/servicedvb.h> +#include <lib/service/service.h> +#include <lib/base/estring.h> +#include <lib/base/init_num.h> +#include <lib/base/init.h> +#include <lib/dvb/dvb.h> +#include <lib/dvb/db.h> +#include <lib/dvb/decoder.h> + +#include <lib/components/file_eraser.h> +#include <lib/service/servicedvbrecord.h> +#include <lib/service/event.h> +#include <lib/dvb/metaparser.h> +#include <lib/dvb/tstools.h> +#include <lib/python/python.h> +#include <lib/base/nconfig.h> // access to python config +#include <lib/base/httpstream.h> + + /* for subtitles */ +#include <lib/gui/esubtitle.h> + +#include <sys/vfs.h> +#include <sys/stat.h> + +#include <byteswap.h> +#include <netinet/in.h> + +#ifndef BYTE_ORDER +#error no byte order defined! +#endif + +class eStaticServiceDVBInformation: public iStaticServiceInformation +{ + DECLARE_REF(eStaticServiceDVBInformation); +public: + RESULT getName(const eServiceReference &ref, std::string &name); + int getLength(const eServiceReference &ref); + int isPlayable(const eServiceReference &ref, const eServiceReference &ignore, bool simulate=false); + ePtr<iDVBTransponderData> getTransponderData(const eServiceReference &ref); +}; + +DEFINE_REF(eStaticServiceDVBInformation); + +RESULT eStaticServiceDVBInformation::getName(const eServiceReference &ref, std::string &name) +{ + eServiceReferenceDVB &service = (eServiceReferenceDVB&)ref; + if ( !ref.name.empty() ) + { + if (service.getParentTransportStreamID().get()) // linkage subservice + { + ePtr<iServiceHandler> service_center; + if (!eServiceCenter::getInstance(service_center)) + { + eServiceReferenceDVB parent = service; + parent.setTransportStreamID( service.getParentTransportStreamID() ); + parent.setServiceID( service.getParentServiceID() ); + parent.setParentTransportStreamID(eTransportStreamID(0)); + parent.setParentServiceID(eServiceID(0)); + parent.name=""; + ePtr<iStaticServiceInformation> service_info; + if (!service_center->info(parent, service_info)) + { + if (!service_info->getName(parent, name)) + name=buildShortName(name) + " - "; + } + } + } + else + name=""; + name += ref.name; + return 0; + } + else + return -1; +} + +int eStaticServiceDVBInformation::getLength(const eServiceReference &ref) +{ + return -1; +} + +int eStaticServiceDVBInformation::isPlayable(const eServiceReference &ref, const eServiceReference &ignore, bool simulate) +{ + ePtr<eDVBResourceManager> res_mgr; + if ( eDVBResourceManager::getInstance( res_mgr ) ) + eDebug("isPlayable... no res manager!!"); + else + { + eDVBChannelID chid, chid_ignore; + int system; + ((const eServiceReferenceDVB&)ref).getChannelID(chid); + ((const eServiceReferenceDVB&)ignore).getChannelID(chid_ignore); + return res_mgr->canAllocateChannel(chid, chid_ignore, system); + } + return 0; +} + +ePtr<iDVBTransponderData> eStaticServiceDVBInformation::getTransponderData(const eServiceReference &r) +{ + ePtr<iDVBTransponderData> retval; + if (r.type == eServiceReference::idDVB) + { + const eServiceReferenceDVB &ref = (const eServiceReferenceDVB&)r; + ePtr<eDVBResourceManager> res; + if (!eDVBResourceManager::getInstance(res)) + { + ePtr<iDVBChannelList> db; + if (!res->getChannelList(db)) + { + eDVBChannelID chid; + ref.getChannelID(chid); + ePtr<iDVBFrontendParameters> feparm; + if (!db->getChannelFrontendData(chid, feparm)) + { + int system; + if (!feparm->getSystem(system)) + { + switch (system) + { + case iDVBFrontend::feSatellite: + { + eDVBFrontendParametersSatellite s; + feparm->getDVBS(s); + retval = new eDVBSatelliteTransponderData(NULL, 0, s, 0, true); + break; + } + case iDVBFrontend::feTerrestrial: + { + eDVBFrontendParametersTerrestrial t; + feparm->getDVBT(t); + retval = new eDVBTerrestrialTransponderData(NULL, 0, t, true); + break; + } + case iDVBFrontend::feCable: + { + eDVBFrontendParametersCable c; + feparm->getDVBC(c); + retval = new eDVBCableTransponderData(NULL, 0, c, true); + break; + } + case iDVBFrontend::feATSC: + { + eDVBFrontendParametersATSC a; + feparm->getATSC(a); + retval = new eDVBATSCTransponderData(NULL, 0, a, true); + break; + } + default: + eDebug("unknown frontend type %d", system); + break; + } + } + } + } + } + } + return retval; +} + +DEFINE_REF(eStaticServiceDVBBouquetInformation); + +RESULT eStaticServiceDVBBouquetInformation::getName(const eServiceReference &ref, std::string &name) +{ + ePtr<iDVBChannelList> db; + ePtr<eDVBResourceManager> res; + + int err; + if ((err = eDVBResourceManager::getInstance(res)) != 0) + { + eDebug("eStaticServiceDVBBouquetInformation::getName failed.. no resource manager!"); + return err; + } + if ((err = res->getChannelList(db)) != 0) + { + eDebug("eStaticServiceDVBBouquetInformation::getName failed.. no channel list!"); + return err; + } + + eBouquet *bouquet=0; + if ((err = db->getBouquet(ref, bouquet)) != 0) + { + eDebug("eStaticServiceDVBBouquetInformation::getName failed.. getBouquet failed!"); + return -1; + } + + if ( bouquet && bouquet->m_bouquet_name.length() ) + { + name = bouquet->m_bouquet_name; + return 0; + } + else + return -1; +} + +int eStaticServiceDVBBouquetInformation::isPlayable(const eServiceReference &ref, const eServiceReference &ignore, bool simulate) +{ + if (ref.flags & eServiceReference::isGroup) + { + ePtr<iDVBChannelList> db; + ePtr<eDVBResourceManager> res; + eServiceReference streamable_service; + + if (eDVBResourceManager::getInstance(res)) + { + eDebug("eStaticServiceDVBBouquetInformation::isPlayable failed.. no resource manager!"); + return 0; + } + + if (res->getChannelList(db)) + { + eDebug("eStaticServiceDVBBouquetInformation::isPlayable failed.. no channel list!"); + return 0; + } + + eBouquet *bouquet=0; + if (db->getBouquet(ref, bouquet)) + { + eDebug("eStaticServiceDVBBouquetInformation::isPlayable failed.. getBouquet failed!"); + return 0; + } + + int prio_order = eDVBFrontend::getTypePriorityOrder(); + int cur=0; + eDVBChannelID chid, chid_ignore; + ((const eServiceReferenceDVB&)ignore).getChannelID(chid_ignore); + for (std::list<eServiceReference>::iterator it(bouquet->m_services.begin()); it != bouquet->m_services.end(); ++it) + { + static unsigned char prio_map[6][3] = { + { 3, 2, 1 }, // -S -C -T + { 3, 1, 2 }, // -S -T -C + { 2, 3, 1 }, // -C -S -T + { 1, 3, 2 }, // -C -T -S + { 1, 2, 3 }, // -T -C -S + { 2, 1, 3 } // -T -S -C + }; + int system; + ((const eServiceReferenceDVB&)*it).getChannelID(chid); + int tmp = res->canAllocateChannel(chid, chid_ignore, system, simulate); + if (tmp > 0) + { + switch (system) + { + case iDVBFrontend::feTerrestrial: + tmp = prio_map[prio_order][2]; + break; + case iDVBFrontend::feCable: + tmp = prio_map[prio_order][1]; + break; + default: + case iDVBFrontend::feSatellite: + tmp = prio_map[prio_order][0]; + break; + } + } + if (tmp > cur) + { + m_playable_service = *it; + cur = tmp; + } + if (!it->path.empty()) + { + streamable_service = *it; + } + } + if (cur) + { + return cur; + } + /* fallback to stream (or pvr) service alternative */ + if (streamable_service) + { + m_playable_service = streamable_service; + return 1; + } + } + m_playable_service = eServiceReference(); + return 0; +} + +int eStaticServiceDVBBouquetInformation::getLength(const eServiceReference &ref) +{ + return -1; +} + +#include <lib/dvb/epgcache.h> + +RESULT eStaticServiceDVBBouquetInformation::getEvent(const eServiceReference &ref, ePtr<eServiceEvent> &ptr, time_t start_time) +{ + return eEPGCache::getInstance()->lookupEventTime(ref, start_time, ptr); +} + +class eStaticServiceDVBPVRInformation: public iStaticServiceInformation +{ + DECLARE_REF(eStaticServiceDVBPVRInformation); + eServiceReference m_ref; + eDVBMetaParser m_parser; +public: + eStaticServiceDVBPVRInformation(const eServiceReference &ref); + RESULT getName(const eServiceReference &ref, std::string &name); + int getLength(const eServiceReference &ref); + RESULT getEvent(const eServiceReference &ref, ePtr<eServiceEvent> &SWIG_OUTPUT, time_t start_time); + int isPlayable(const eServiceReference &ref, const eServiceReference &ignore, bool simulate) { return 1; } + int getInfo(const eServiceReference &ref, int w); + std::string getInfoString(const eServiceReference &ref,int w); + ePtr<iDVBTransponderData> getTransponderData(const eServiceReference &r); + long long getFileSize(const eServiceReference &r); +}; + +DEFINE_REF(eStaticServiceDVBPVRInformation); + +eStaticServiceDVBPVRInformation::eStaticServiceDVBPVRInformation(const eServiceReference &ref) +{ + m_ref = ref; + m_parser.parseFile(ref.path); +} + +static bool looksLikeRecording(const std::string& n) +{ + return + (n.size() > 19) && + (n[8] == ' ') && + (n[13] == ' ') && + (n[14] == '-') && + (n[15] == ' ') && + (isdigit(n[0])); +} + +RESULT eStaticServiceDVBPVRInformation::getName(const eServiceReference &ref, std::string &name) +{ + ASSERT(ref == m_ref); + if (!ref.name.empty()) + name = ref.name; + else if (!m_parser.m_name.empty()) + name = m_parser.m_name; + else + { + name = ref.path; + size_t n = name.rfind('/'); + if (n != std::string::npos) + name = name.substr(n + 1); + if (looksLikeRecording(name)) + { + // Parse recording names in 'YYYYMMDD HHMM - ... - name.ts' into name + std::size_t dash2 = name.find(" - ", 16, 3); + if (dash2 != std::string::npos) + { + struct tm stm = {0}; + if (strptime(name.c_str(), "%Y%m%d %H%M", &stm) != NULL) + { + m_parser.m_time_create = mktime(&stm); + } + name.erase(0,dash2+3); + } + if (name[name.size()-3] == '.') + { + name.erase(name.size()-3); + } + } + m_parser.m_name = name; + } + return 0; +} + +int eStaticServiceDVBPVRInformation::getLength(const eServiceReference &ref) +{ + ASSERT(ref == m_ref); + + eDVBTSTools tstools; + + if (tstools.openFile(ref.path.c_str(), 1)) + return 0; + + struct stat s; + stat(ref.path.c_str(), &s); + + /* check if cached data is still valid */ + if (m_parser.m_data_ok && (s.st_size == m_parser.m_filesize) && (m_parser.m_length)) + return m_parser.m_length / 90000; + + /* open again, this time with stream info */ + if (tstools.openFile(ref.path.c_str())) + return 0; + + /* otherwise, re-calc length and update meta file */ + pts_t len; + if (tstools.calcLen(len)) + return 0; + + if (m_parser.m_name.empty()) + { + std::string name; + getName(ref, name); // This also updates m_parser.name + } + m_parser.m_data_ok = 1; + m_parser.m_length = len; + m_parser.m_filesize = s.st_size; + m_parser.updateMeta(ref.path); + return m_parser.m_length / 90000; +} + +int eStaticServiceDVBPVRInformation::getInfo(const eServiceReference &ref, int w) +{ + switch (w) + { + case iServiceInformation::sDescription: + return iServiceInformation::resIsString; + case iServiceInformation::sServiceref: + return iServiceInformation::resIsString; + case iServiceInformation::sFileSize: + return m_parser.m_filesize; + case iServiceInformation::sTimeCreate: + if (m_parser.m_time_create) + return m_parser.m_time_create; + else + return iServiceInformation::resNA; + default: + return iServiceInformation::resNA; + } +} + +std::string eStaticServiceDVBPVRInformation::getInfoString(const eServiceReference &ref,int w) +{ + switch (w) + { + case iServiceInformation::sDescription: + return m_parser.m_description; + case iServiceInformation::sServiceref: + return m_parser.m_ref.toString(); + case iServiceInformation::sTags: + return m_parser.m_tags; + default: + return ""; + } +} + +ePtr<iDVBTransponderData> eStaticServiceDVBPVRInformation::getTransponderData(const eServiceReference &r) +{ + ePtr<iDVBTransponderData> retval; + return retval; +} + +long long eStaticServiceDVBPVRInformation::getFileSize(const eServiceReference &ref) +{ + return m_parser.m_filesize; +} + +RESULT eStaticServiceDVBPVRInformation::getEvent(const eServiceReference &ref, ePtr<eServiceEvent> &evt, time_t start_time) +{ + if (!ref.path.empty()) + { + if (ref.path.substr(0, 7) == "http://") + { + eServiceReference equivalentref(ref); + /* this might be a scrambled stream (id + 0x100), force equivalent dvb type */ + equivalentref.type = eServiceFactoryDVB::id; + equivalentref.path.clear(); + return eEPGCache::getInstance()->lookupEventTime(equivalentref, start_time, evt); + } + else + { + ePtr<eServiceEvent> event = new eServiceEvent; + std::string filename = ref.path; + filename.erase(filename.length()-2, 2); + filename+="eit"; + if (!event->parseFrom(filename, (m_parser.m_ref.getTransportStreamID().get()<<16)|m_parser.m_ref.getOriginalNetworkID().get())) + { + evt = event; + return 0; + } + } + } + evt = 0; + return -1; +} + +class eDVBPVRServiceOfflineOperations: public iServiceOfflineOperations +{ + DECLARE_REF(eDVBPVRServiceOfflineOperations); + eServiceReferenceDVB m_ref; +public: + eDVBPVRServiceOfflineOperations(const eServiceReference &ref); + + RESULT deleteFromDisk(int simulate); + RESULT getListOfFilenames(std::list<std::string> &); + RESULT reindex(); +}; + +DEFINE_REF(eDVBPVRServiceOfflineOperations); + +eDVBPVRServiceOfflineOperations::eDVBPVRServiceOfflineOperations(const eServiceReference &ref): m_ref((const eServiceReferenceDVB&)ref) +{ +} + +RESULT eDVBPVRServiceOfflineOperations::deleteFromDisk(int simulate) +{ + if (simulate) + return 0; + else + { + std::list<std::string> res; + if (getListOfFilenames(res)) + return -1; + + eBackgroundFileEraser *eraser = eBackgroundFileEraser::getInstance(); + if (!eraser) + eDebug("FATAL !! can't get background file eraser"); + + for (std::list<std::string>::iterator i(res.begin()); i != res.end(); ++i) + { + eDebug("Removing %s...", i->c_str()); + if (eraser) + eraser->erase(*i); + else + ::unlink(i->c_str()); + } + + return 0; + } +} + +RESULT eDVBPVRServiceOfflineOperations::getListOfFilenames(std::list<std::string> &res) +{ + res.clear(); + res.push_back(m_ref.path); + +// handling for old splitted recordings (enigma 1) + char buf[255]; + int slice=1; + while(true) + { + snprintf(buf, 255, "%s.%03d", m_ref.path.c_str(), slice++); + if (::access(buf, R_OK) < 0) break; + res.push_back(buf); + } + + res.push_back(m_ref.path + ".meta"); + res.push_back(m_ref.path + ".ap"); + res.push_back(m_ref.path + ".sc"); + res.push_back(m_ref.path + ".cuts"); + std::string tmp = m_ref.path; + tmp.erase(m_ref.path.length()-3); + res.push_back(tmp + ".eit"); + return 0; +} + +static int reindex_work(const std::string& filename) +{ + /* This does not work, need to call parser.setPid(pid, type) otherwise + * the parser will not actually output any data! */ + + eRawFile f; + + int err = f.open(filename.c_str()); + if (err < 0) + return err; + + eMPEGStreamParserTS parser; /* Missing packetsize, should be determined from stream? */ + + { + unsigned int i; + bool timingpidset = false; + eDVBTSTools tstools; + tstools.openFile(filename.c_str(), 1); + eDVBPMTParser::program program; + err = tstools.findPMT(program); + if (err) + { + eDebug("reindex - Failed to find PMT"); + return err; + } + for (i = 0; i < program.videoStreams.size(); i++) + { + if (timingpidset) break; + eDebug("reindex: video pid=0x%x", program.videoStreams[i].pid); + parser.setPid(program.videoStreams[i].pid, iDVBTSRecorder::video_pid, program.videoStreams[i].type); + timingpidset = true; + } + for (i = 0; i < program.audioStreams.size(); i++) + { + if (timingpidset) break; + eDebug("reindex: audio pid=0x%x", program.audioStreams[i].pid); + parser.setPid(program.audioStreams[i].pid, iDVBTSRecorder::audio_pid, program.audioStreams[i].type); + timingpidset = true; + } + } + + parser.startSave(filename); + + off_t offset = 0; + std::vector<char> buffer(188*1024); + while (1) + { + int r = f.read(offset, &buffer[0], buffer.size()); + if (!r) + break; + if (r < 0) + return r; + parser.parseData(offset, &buffer[0], r); + offset += r; + } + + parser.stopSave(); + return 0; +} + +RESULT eDVBPVRServiceOfflineOperations::reindex() +{ + int result; + /* Release global interpreter lock */ + Py_BEGIN_ALLOW_THREADS; + result = reindex_work(m_ref.path.c_str()); + Py_END_ALLOW_THREADS; + return result; +} + +DEFINE_REF(eServiceFactoryDVB) + +eServiceFactoryDVB::eServiceFactoryDVB() +{ + ePtr<eServiceCenter> sc; + + eServiceCenter::getPrivInstance(sc); + if (sc) + { + std::list<std::string> extensions; + extensions.push_back("ts"); + extensions.push_back("trp"); + sc->addServiceFactory(eServiceFactoryDVB::id, this, extensions); + /* + * User can indicate that a ts stream is scrambled, by using servicetype id + 0x100 + * This only works by specifying the servicetype, we won't allow file extension + * lookup, as we cannot map the same extensions to several service types. + */ + extensions.clear(); + sc->addServiceFactory(eServiceFactoryDVB::id + 0x100, this, extensions); + } + + m_StaticServiceDVBInfo = new eStaticServiceDVBInformation; + m_StaticServiceDVBBouquetInfo = new eStaticServiceDVBBouquetInformation; +} + +eServiceFactoryDVB::~eServiceFactoryDVB() +{ + ePtr<eServiceCenter> sc; + + eServiceCenter::getPrivInstance(sc); + if (sc) + sc->removeServiceFactory(eServiceFactoryDVB::id); +} + +DEFINE_REF(eDVBServiceList); + +eDVBServiceList::eDVBServiceList(const eServiceReference &parent): m_parent(parent) +{ +} + +eDVBServiceList::~eDVBServiceList() +{ +} + +RESULT eDVBServiceList::startQuery() +{ + ePtr<iDVBChannelList> db; + ePtr<eDVBResourceManager> res; + + int err; + if ((err = eDVBResourceManager::getInstance(res)) != 0) + { + eDebug("no resource manager"); + return err; + } + if ((err = res->getChannelList(db)) != 0) + { + eDebug("no channel list"); + return err; + } + + ePtr<eDVBChannelQuery> q; + + if (!m_parent.path.empty()) + { + eDVBChannelQuery::compile(q, m_parent.path); + if (!q) + { + eDebug("compile query failed"); + return err; + } + } + + if ((err = db->startQuery(m_query, q, m_parent)) != 0) + { + eDebug("startQuery failed"); + return err; + } + + return 0; +} + +RESULT eDVBServiceList::getContent(std::list<eServiceReference> &list, bool sorted) +{ + eServiceReferenceDVB ref; + + if (!m_query) + return -1; + + while (!m_query->getNextResult(ref)) + list.push_back(ref); + + if (sorted) + list.sort(iListableServiceCompare(this)); + + return 0; +} + +// The first argument of this function is a format string to specify the order and +// the content of the returned list +// useable format options are +// R = Service Reference (as swig object .. this is very slow) +// S = Service Reference (as python string object .. same as ref.toString()) +// C = Service Reference (as python string object .. same as ref.toCompareString()) +// N = Service Name (as python string object) +// n = Short Service Name (short name brakets used) (as python string object) +// when exactly one return value per service is selected in the format string, +// then each value is directly a list entry +// when more than one value is returned per service, then the list is a list of +// python tuples +// unknown format string chars are returned as python None values ! +PyObject *eDVBServiceList::getContent(const char* format, bool sorted) +{ + ePyObject ret; + std::list<eServiceReference> tmplist; + int retcount=1; + + if (!format || !(retcount=strlen(format))) + format = "R"; // just return service reference swig object ... + + if (!getContent(tmplist, sorted)) + { + int services=tmplist.size(); + ePtr<iStaticServiceInformation> sptr; + eServiceCenterPtr service_center; + + if (strchr(format, 'N') || strchr(format, 'n')) + eServiceCenter::getPrivInstance(service_center); + + ret = PyList_New(services); + std::list<eServiceReference>::iterator it(tmplist.begin()); + + for (int cnt=0; cnt < services; ++cnt) + { + eServiceReference &ref=*it++; + ePyObject tuple = retcount > 1 ? PyTuple_New(retcount) : ePyObject(); + for (int i=0; i < retcount; ++i) + { + ePyObject tmp; + switch(format[i]) + { + case 'R': // service reference (swig)object + tmp = NEW_eServiceReference(ref); + break; + case 'C': // service reference compare string + tmp = PyString_FromString(ref.toCompareString().c_str()); + break; + case 'S': // service reference string + tmp = PyString_FromString(ref.toString().c_str()); + break; + case 'N': // service name + if (service_center) + { + service_center->info(ref, sptr); + if (sptr) + { + std::string name; + sptr->getName(ref, name); + + // filter short name brakets + size_t pos; + while((pos = name.find("\xc2\x86")) != std::string::npos) + name.erase(pos,2); + while((pos = name.find("\xc2\x87")) != std::string::npos) + name.erase(pos,2); + + if (name.length()) + tmp = PyString_FromString(name.c_str()); + } + } + if (!tmp) + tmp = PyString_FromString("<n/a>"); + break; + case 'n': // short service name + if (service_center) + { + service_center->info(ref, sptr); + if (sptr) + { + std::string name; + sptr->getName(ref, name); + name = buildShortName(name); + if (name.length()) + tmp = PyString_FromString(name.c_str()); + } + } + if (!tmp) + tmp = PyString_FromString("<n/a>"); + break; + default: + if (tuple) + { + tmp = Py_None; + Py_INCREF(Py_None); + } + break; + } + if (tmp) + { + if (tuple) + PyTuple_SET_ITEM(tuple, i, tmp); + else + PyList_SET_ITEM(ret, cnt, tmp); + } + } + if (tuple) + PyList_SET_ITEM(ret, cnt, tuple); + } + } + return ret ? (PyObject*)ret : (PyObject*)PyList_New(0); +} + +RESULT eDVBServiceList::getNext(eServiceReference &ref) +{ + if (!m_query) + return -1; + + return m_query->getNextResult((eServiceReferenceDVB&)ref); +} + +RESULT eDVBServiceList::startEdit(ePtr<iMutableServiceList> &res) +{ + if (m_parent.flags & eServiceReference::canDescent) // bouquet + { + ePtr<iDVBChannelList> db; + ePtr<eDVBResourceManager> resm; + + if (eDVBResourceManager::getInstance(resm) || resm->getChannelList(db)) + return -1; + + if (db->getBouquet(m_parent, m_bouquet) != 0) + return -1; + + res = this; + + return 0; + } + res = 0; + return -1; +} + +RESULT eDVBServiceList::addService(eServiceReference &ref, eServiceReference before) +{ + if (!m_bouquet) + return -1; + return m_bouquet->addService(ref, before); +} + +RESULT eDVBServiceList::removeService(eServiceReference &ref) +{ + if (!m_bouquet) + return -1; + return m_bouquet->removeService(ref); +} + +RESULT eDVBServiceList::moveService(eServiceReference &ref, int pos) +{ + if (!m_bouquet) + return -1; + return m_bouquet->moveService(ref, pos); +} + +RESULT eDVBServiceList::flushChanges() +{ + if (!m_bouquet) + return -1; + return m_bouquet->flushChanges(); +} + +RESULT eDVBServiceList::setListName(const std::string &name) +{ + if (!m_bouquet) + return -1; + return m_bouquet->setListName(name); +} + +RESULT eServiceFactoryDVB::play(const eServiceReference &ref, ePtr<iPlayableService> &ptr) +{ + ePtr<eDVBService> service; + int r = lookupService(service, ref); + if (r) + service = 0; + // check resources... + ptr = new eDVBServicePlay(ref, service); + return 0; +} + +RESULT eServiceFactoryDVB::record(const eServiceReference &ref, ePtr<iRecordableService> &ptr) +{ + bool isstream = ref.path.substr(0, 7) == "http://"; + ptr = new eDVBServiceRecord((eServiceReferenceDVB&)ref, isstream); + return 0; +} + +RESULT eServiceFactoryDVB::list(const eServiceReference &ref, ePtr<iListableService> &ptr) +{ + ePtr<eDVBServiceList> list = new eDVBServiceList(ref); + if (list->startQuery()) + { + ptr = 0; + return -1; + } + + ptr = list; + return 0; +} + +RESULT eServiceFactoryDVB::info(const eServiceReference &ref, ePtr<iStaticServiceInformation> &ptr) +{ + /* is a listable service? */ + if (ref.flags & eServiceReference::canDescent) // bouquet + { + if ( !ref.name.empty() ) // satellites or providers list + ptr = m_StaticServiceDVBInfo; + else // a dvb bouquet + ptr = m_StaticServiceDVBBouquetInfo; + } + else if (!ref.path.empty()) /* do we have a PVR service? */ + ptr = new eStaticServiceDVBPVRInformation(ref); + else // normal dvb service + { + ePtr<eDVBService> service; + if (lookupService(service, ref)) // no eDVBService avail for this reference ( Linkage Services... ) + ptr = m_StaticServiceDVBInfo; + else + /* eDVBService has the iStaticServiceInformation interface, so we pass it here. */ + ptr = service; + } + return 0; +} + +RESULT eServiceFactoryDVB::offlineOperations(const eServiceReference &ref, ePtr<iServiceOfflineOperations> &ptr) +{ + if (ref.path.empty()) + { + ptr = 0; + return -1; + } else + { + ptr = new eDVBPVRServiceOfflineOperations(ref); + return 0; + } +} + +RESULT eServiceFactoryDVB::lookupService(ePtr<eDVBService> &service, const eServiceReference &ref) +{ + if (!ref.path.empty()) // playback + { + eDVBMetaParser parser; + int ret=parser.parseFile(ref.path); + service = new eDVBService; + if (!ret) + eDVBDB::getInstance()->parseServiceData(service, parser.m_service_data); + } + else + { + // TODO: handle the listing itself + // if (ref.... == -1) .. return "... bouquets ..."; + // could be also done in another serviceFactory (with seperate ID) to seperate actual services and lists + // TODO: cache + ePtr<iDVBChannelList> db; + ePtr<eDVBResourceManager> res; + + int err; + if ((err = eDVBResourceManager::getInstance(res)) != 0) + { + eDebug("no resource manager"); + return err; + } + if ((err = res->getChannelList(db)) != 0) + { + eDebug("no channel list"); + return err; + } + + /* we are sure to have a ..DVB reference as the info() call was forwarded here according to it's ID. */ + if ((err = db->getService((eServiceReferenceDVB&)ref, service)) != 0) + { +// eDebug("getService failed!"); + return err; + } + } + + return 0; +} + +eDVBServicePlay::eDVBServicePlay(const eServiceReference &ref, eDVBService *service): + m_reference(ref), + m_dvb_service(service), + m_decoder_index(0), + m_have_video_pid(0), + m_tune_state(-1), + m_is_stream(ref.path.substr(0, 7) == "http://"), + m_is_pvr(!ref.path.empty() && !m_is_stream), + m_is_paused(0), + m_timeshift_enabled(0), + m_timeshift_active(0), + m_timeshift_changed(0), + m_save_timeshift(0), + m_timeshift_fd(-1), + m_skipmode(0), + m_fastforward(0), + m_slowmotion(0), + m_cuesheet_changed(0), + m_cutlist_enabled(1), + m_subtitle_widget(0), + m_subtitle_sync_timer(eTimer::create(eApp)), + m_nownext_timer(eTimer::create(eApp)) +{ + CONNECT(m_service_handler.serviceEvent, eDVBServicePlay::serviceEvent); + CONNECT(m_service_handler_timeshift.serviceEvent, eDVBServicePlay::serviceEventTimeshift); + CONNECT(m_event_handler.m_eit_changed, eDVBServicePlay::gotNewEvent); + CONNECT(m_subtitle_sync_timer->timeout, eDVBServicePlay::checkSubtitleTiming); + CONNECT(m_nownext_timer->timeout, eDVBServicePlay::updateEpgCacheNowNext); +} + +eDVBServicePlay::~eDVBServicePlay() +{ + if (m_is_pvr) + { + eDVBMetaParser meta; + int ret=meta.parseFile(m_reference.path); + if (!ret) + { + char tmp[255]; + meta.m_service_data=""; + sprintf(tmp, "f:%x", m_dvb_service->m_flags); + meta.m_service_data += tmp; + // cached pids + for (int x=0; x < eDVBService::cacheMax; ++x) + { + int entry = m_dvb_service->getCacheEntry((eDVBService::cacheID)x); + if (entry != -1) + { + sprintf(tmp, ",c:%02d%04x", x, entry); + meta.m_service_data += tmp; + } + } + meta.updateMeta(m_reference.path); + } + } + if (m_subtitle_widget) m_subtitle_widget->destroy(); +} + +void eDVBServicePlay::gotNewEvent(int error) +{ + ePtr<eServiceEvent> event_now; + getEvent(event_now, 0); +#if 0 + // debug only + ePtr<eServiceEvent> event_next; + getEvent(event_next, 1); + + if (event_now) + eDebug("now running: %s (%d seconds :)", event_now->m_event_name.c_str(), event_now->m_duration); + if (event_next) + eDebug("next running: %s (%d seconds :)", event_next->m_event_name.c_str(), event_next->m_duration); +#endif + if (!error) + { + m_nownext_timer->stop(); + m_event((iPlayableService*)this, evUpdatedEventInfo); + } + else + { + /* our eit reader has stopped, we have to take care of our own event updates */ + updateEpgCacheNowNext(); + } + + if (m_timeshift_enabled) + { + if (!event_now) + return; + + pts_t now_pts, first_pts, fixup_pts; + if (m_record) + { + if (m_record->getCurrentPCR(now_pts)) + eDebug("getting current PTS failed!"); + else + { + if (m_record->getFirstPTS(first_pts)) + return; + if (now_pts < first_pts) + fixup_pts = now_pts + 0x200000000LL - first_pts; + else + fixup_pts = now_pts - first_pts; + m_cue_entries.insert(cueEntry(fixup_pts, 2)); + m_cuesheet_changed = 1; + eDebug("pts of eit change: %llx, fixup_pts: %llx, first_pts: %llx", now_pts, fixup_pts, first_pts); + m_event((iPlayableService*)this, evCuesheetChanged); + } + } + } +} + +void eDVBServicePlay::updateEpgCacheNowNext() +{ + bool update = false; + ePtr<eServiceEvent> next = 0; + ePtr<eServiceEvent> ptr = 0; + eServiceReferenceDVB &ref = (eServiceReferenceDVB&) m_reference; + if (eEPGCache::getInstance() && eEPGCache::getInstance()->lookupEventTime(ref, -1, ptr) >= 0) + { + ePtr<eServiceEvent> current = 0; + m_event_handler.getEvent(current, 0); + if (!current || !ptr || current->getEventId() != ptr->getEventId()) + { + update = true; + m_event_handler.inject(ptr, 0); + time_t next_time = ptr->getBeginTime() + ptr->getDuration(); + if (eEPGCache::getInstance()->lookupEventTime(ref, next_time, ptr) >= 0) + { + next = ptr; + m_event_handler.inject(ptr, 1); + } + } + } + + int refreshtime = 60; + if (!next) + { + m_event_handler.getEvent(next, 1); + } + if (next) + { + time_t now = eDVBLocalTimeHandler::getInstance()->nowTime(); + refreshtime = (int)(next->getBeginTime() - now) + 3; + if (refreshtime <= 0 || refreshtime > 60) refreshtime = 60; + } + m_nownext_timer->startLongTimer(refreshtime); + if (update) m_event((iPlayableService*)this, evUpdatedEventInfo); +} + +void eDVBServicePlay::serviceEvent(int event) +{ + m_tune_state = event; + + switch (event) + { + case eDVBServicePMTHandler::eventTuned: + { + /* fill now/next with info from the epg cache, will be replaced by EIT when it arrives */ + updateEpgCacheNowNext(); + + /* default behaviour is to start an eit reader, and wait for now/next info, unless this is disabled */ + if (eConfigManager::getConfigBoolValue("config.usage.show_eit_nownext", true)) + { + ePtr<iDVBDemux> m_demux; + if (!m_service_handler.getDataDemux(m_demux)) + { + eServiceReferenceDVB &ref = (eServiceReferenceDVB&) m_reference; + int sid = ref.getParentServiceID().get(); + if (!sid) + sid = ref.getServiceID().get(); + + if ( ref.getParentTransportStreamID().get() && + ref.getParentTransportStreamID() != ref.getTransportStreamID() ) + m_event_handler.startOther(m_demux, sid); + else + m_event_handler.start(m_demux, sid); + } + } + m_event((iPlayableService*)this, evTunedIn); + break; + } + case eDVBServicePMTHandler::eventNoResources: + case eDVBServicePMTHandler::eventNoPAT: + case eDVBServicePMTHandler::eventNoPATEntry: + case eDVBServicePMTHandler::eventNoPMT: + case eDVBServicePMTHandler::eventTuneFailed: + case eDVBServicePMTHandler::eventMisconfiguration: + { + eDebug("DVB service failed to tune - error %d", event); + m_event((iPlayableService*)this, evTuneFailed); + break; + } + case eDVBServicePMTHandler::eventNewProgramInfo: + { + eDebug("eventNewProgramInfo %d %d", m_timeshift_enabled, m_timeshift_active); + if (m_timeshift_enabled) + updateTimeshiftPids(); + if (!m_timeshift_active) + updateDecoder(); + if (m_first_program_info & 1 && m_is_pvr) + { + m_first_program_info &= ~1; + seekTo(0); + } + if (!m_timeshift_active) + m_event((iPlayableService*)this, evUpdatedInfo); + + m_event((iPlayableService*)this, evNewProgramInfo); + break; + } + case eDVBServicePMTHandler::eventPreStart: + loadCuesheet(); + break; + case eDVBServicePMTHandler::eventEOF: + m_event((iPlayableService*)this, evEOF); + break; + case eDVBServicePMTHandler::eventSOF: + m_event((iPlayableService*)this, evSOF); + break; + case eDVBServicePMTHandler::eventHBBTVInfo: + m_event((iPlayableService*)this, evHBBTVInfo); + break; + } +} + +void eDVBServicePlay::serviceEventTimeshift(int event) +{ + switch (event) + { + case eDVBServicePMTHandler::eventNewProgramInfo: + eDebug("eventNewProgramInfo TS"); + if (m_timeshift_active) + { + updateDecoder(); + if (m_first_program_info & 2) + { + if (m_slowmotion) + { + eDebug("re-apply slowmotion after timeshift file change"); + m_decoder->setSlowMotion(m_slowmotion); + } + if (m_fastforward) + { + eDebug("re-apply skip %d, ratio %d after timeshift file change", m_skipmode, m_fastforward); + if (m_skipmode) + m_cue->setSkipmode(m_skipmode * 90000); /* convert to 90000 per second */ + if (m_fastforward != 1) + m_decoder->setFastForward(m_fastforward); + else + m_decoder->setTrickmode(); + } + else + seekTo(0); + m_first_program_info &= ~2; + } + m_event((iPlayableService*)this, evUpdatedInfo); + } + break; + case eDVBServicePMTHandler::eventSOF: +#if 0 + if (!m_timeshift_file_next.empty()) + { + eDebug("timeshift SOF, switch to next file"); + m_decoder->pause(); + + m_first_program_info |= 2; + + eServiceReferenceDVB r = (eServiceReferenceDVB&)m_reference; + r.path = m_timeshift_file_next; + + /* free the timeshift service handler, we need the resources */ + m_service_handler_timeshift.free(); + resetTimeshift(1); + + if (m_skipmode < 0) + m_cue->seekTo(0, -1000); + ePtr<iTsSource> source = createTsSource(r); + m_service_handler_timeshift.tuneExt(r, 1, source, r.path.c_str(), m_cue, 0, m_dvb_service, false); /* use the decoder demux for everything */ + + m_event((iPlayableService*)this, evUser+1); + } + else +#endif + m_event((iPlayableService*)this, evSOF); + break; + case eDVBServicePMTHandler::eventEOF: + if ((!m_is_paused) && (m_skipmode >= 0)) + { + if (m_timeshift_file_next.empty()) + { + eDebug("timeshift EOF, so let's go live"); + switchToLive(); + } + else + { + eDebug("timeshift EOF, switch to next file"); + + m_first_program_info |= 2; + + eServiceReferenceDVB r = (eServiceReferenceDVB&)m_reference; + r.path = m_timeshift_file_next; + + /* free the timeshift service handler, we need the resources */ + m_service_handler_timeshift.free(); + resetTimeshift(1); + + ePtr<iTsSource> source = createTsSource(r); + m_service_handler_timeshift.tuneExt(r, 1, source, m_timeshift_file_next.c_str(), m_cue, 0, m_dvb_service, eDVBServicePMTHandler::timeshift_playback, false); /* use the decoder demux for everything */ + + m_event((iPlayableService*)this, evUser+1); + } + } + break; + } +} + +RESULT eDVBServicePlay::start() +{ + eServiceReferenceDVB service = (eServiceReferenceDVB&)m_reference; + bool scrambled = true; + int packetsize = 188; + eDVBServicePMTHandler::serviceType type = eDVBServicePMTHandler::livetv; + + /* in pvr mode, we only want to use one demux. in tv mode, we're using + two (one for decoding, one for data source), as we must be prepared + to start recording from the data demux. */ + if (m_is_pvr) + { + eDVBMetaParser meta; + if (!meta.parseFile(m_reference.path)) + { + service = meta.m_ref; + service.path = m_reference.path; + packetsize = meta.m_packet_size; + scrambled = meta.m_scrambled; + } + m_cue = new eCueSheet(); + type = eDVBServicePMTHandler::playback; + } + else + m_event(this, evStart); + + if (m_is_stream) + { + /* + * streams are considered to be descrambled by default; + * user can indicate a stream is scrambled, by using servicetype id + 0x100 + */ + scrambled = (m_reference.type == eServiceFactoryDVB::id + 0x100); + type = eDVBServicePMTHandler::streamclient; + } + + m_first_program_info = 1; + ePtr<iTsSource> source = createTsSource(service, packetsize); + m_service_handler.tuneExt(service, m_is_pvr, source, service.path.c_str(), m_cue, false, m_dvb_service, type, scrambled); + + if (m_is_pvr) + { + /* inject EIT if there is a stored one */ + std::string filename = service.path; + filename.erase(filename.length()-2, 2); + filename+="eit"; + ePtr<eServiceEvent> event = new eServiceEvent; + if (!event->parseFrom(filename, (service.getTransportStreamID().get()<<16)|service.getOriginalNetworkID().get())) + { + ePtr<eServiceEvent> empty; + m_event_handler.inject(event, 0); + m_event_handler.inject(empty, 1); + } + m_event(this, evStart); + } + return 0; +} + +RESULT eDVBServicePlay::stop() +{ + /* add bookmark for last play position */ + /* m_cutlist_enabled bit 2 is the "don't remember bit" */ + if (m_is_pvr && ((m_cutlist_enabled & 2) == 0)) + { + pts_t play_position, length; + if (!getPlayPosition(play_position)) + { + /* remove last position */ + for (std::multiset<struct cueEntry>::iterator i(m_cue_entries.begin()); i != m_cue_entries.end();) + { + if (i->what == 3) /* current play position */ + { + m_cue_entries.erase(i); + i = m_cue_entries.begin(); + continue; + } else + ++i; + } + + if (getLength(length)) + length = 0; + + if (length) + { + m_cue_entries.insert(cueEntry(play_position, 3)); /* last play position */ + } + m_cuesheet_changed = 1; + } + } + + if ((m_is_pvr || m_timeshift_enabled) && m_cuesheet_changed) + { + saveCuesheet(); + } + + stopTimeshift(); /* in case timeshift was enabled, remove buffer etc. */ + + m_service_handler_timeshift.free(); + m_service_handler.free(); + + m_nownext_timer->stop(); + m_event((iPlayableService*)this, evStopped); + return 0; +} + +RESULT eDVBServicePlay::setTarget(int target) +{ + m_decoder_index = target; + return 0; +} + +RESULT eDVBServicePlay::connectEvent(const Slot2<void,iPlayableService*,int> &event, ePtr<eConnection> &connection) +{ + connection = new eConnection((iPlayableService*)this, m_event.connect(event)); + return 0; +} + +RESULT eDVBServicePlay::pause(ePtr<iPauseableService> &ptr) +{ + /* note: we check for timeshift to be enabled, + not neccessary active. if you pause when timeshift + is not active, you should activate it when unpausing */ + if ((!m_is_pvr) && (!m_timeshift_enabled)) + { + ptr = 0; + return -1; + } + + ptr = this; + return 0; +} + +RESULT eDVBServicePlay::setSlowMotion(int ratio) +{ + int ret = 0; + ASSERT(ratio); /* The API changed: instead of calling setSlowMotion(0), call play! */ + eDebug("eDVBServicePlay::setSlowMotion(%d)", ratio); + setFastForward_internal(0); + if (m_decoder) + { + ret = m_decoder->setSlowMotion(ratio); + if (!ret) + m_slowmotion = ratio; + return ret; + } + else + return -1; +} + +RESULT eDVBServicePlay::setFastForward(int ratio) +{ + eDebug("eDVBServicePlay::setFastForward(%d)", ratio); + ASSERT(ratio); + return setFastForward_internal(ratio); +} + +RESULT eDVBServicePlay::setFastForward_internal(int ratio, bool final_seek) +{ + int skipmode, ffratio, ret = 0; + pts_t pos=0; + + if (ratio > 8) + { + skipmode = ratio; + ffratio = 1; + } else if (ratio > 0) + { + skipmode = 0; + ffratio = ratio; + } else if (!ratio) + { + skipmode = 0; + ffratio = 0; + } else // if (ratio < 0) + { + skipmode = ratio; + ffratio = 1; + } + + if (m_skipmode != skipmode) + { + eDebug("setting cue skipmode to %d", skipmode); + if (m_cue) + m_cue->setSkipmode(skipmode * 90000); /* convert to 90000 per second */ + } + + m_skipmode = skipmode; + + if (final_seek) + eDebug("trickplay stopped .. ret %d, pos %lld", getPlayPosition(pos), pos); + + m_fastforward = ffratio; + + if (!m_decoder) + return -1; + + if (ffratio == 0) + ; /* return m_decoder->play(); is done in caller*/ + else if (ffratio != 1) + ret = m_decoder->setFastForward(ffratio); + else + ret = m_decoder->setTrickmode(); + + if (pos) + eDebug("final seek after trickplay ret %d", seekTo(pos)); + + return ret; +} + +RESULT eDVBServicePlay::seek(ePtr<iSeekableService> &ptr) +{ + if (m_is_pvr || m_timeshift_enabled) + { + ptr = this; + return 0; + } + + ptr = 0; + return -1; +} + + /* TODO: when timeshift is enabled but not active, this doesn't work. */ +RESULT eDVBServicePlay::getLength(pts_t &len) +{ + ePtr<iDVBPVRChannel> pvr_channel; + + if ((m_timeshift_enabled ? m_service_handler_timeshift : m_service_handler).getPVRChannel(pvr_channel)) + return -1; + + return pvr_channel->getLength(len); +} + +RESULT eDVBServicePlay::pause() +{ + eDebug("eDVBServicePlay::pause"); + setFastForward_internal(0, m_slowmotion || m_fastforward > 1); + if (m_decoder) + { + m_slowmotion = 0; + m_is_paused = 1; + return m_decoder->pause(); + } else + return -1; +} + +RESULT eDVBServicePlay::unpause() +{ + eDebug("eDVBServicePlay::unpause"); + setFastForward_internal(0, m_slowmotion || m_fastforward > 1); + if (m_decoder) + { + m_slowmotion = 0; + m_is_paused = 0; + return m_decoder->play(); + } else + return -1; +} + +RESULT eDVBServicePlay::seekTo(pts_t to) +{ + eDebug("eDVBServicePlay::seekTo: jump %lld", to); + + if (!m_decode_demux) + return -1; + + ePtr<iDVBPVRChannel> pvr_channel; + + if ((m_timeshift_enabled ? m_service_handler_timeshift : m_service_handler).getPVRChannel(pvr_channel)) + return -1; + + if (!m_cue) + return -1; + + m_cue->seekTo(0, to); + m_dvb_subtitle_pages.clear(); + m_subtitle_pages.clear(); + + return 0; +} + +RESULT eDVBServicePlay::seekRelative(int direction, pts_t to) +{ + eDebug("eDVBServicePlay::seekRelative: jump %d, %lld", direction, to); + + if (!m_decode_demux) + return -1; + + ePtr<iDVBPVRChannel> pvr_channel; + + if ((m_timeshift_enabled ? m_service_handler_timeshift : m_service_handler).getPVRChannel(pvr_channel)) + return -1; + + int mode = 1; + + /* HACK until we have skip-AP api */ + if ((to > 0) && (to < 100)) + mode = 2; + + to *= direction; + + if (!m_cue) + return 0; + + m_cue->seekTo(mode, to); + m_dvb_subtitle_pages.clear(); + m_subtitle_pages.clear(); + return 0; +} + +RESULT eDVBServicePlay::getPlayPosition(pts_t &pos) +{ + ePtr<iDVBPVRChannel> pvr_channel; + + if (!m_decode_demux) + return -1; + + if ((m_timeshift_enabled ? m_service_handler_timeshift : m_service_handler).getPVRChannel(pvr_channel)) + return -1; + + int r = 0; + + /* if there is a decoder, use audio or video PTS */ + if (m_decoder) + { + r = m_decoder->getPTS(0, pos); + if (r) + return r; + } + + /* fixup */ + return pvr_channel->getCurrentPosition(m_decode_demux, pos, m_decoder); +} + +RESULT eDVBServicePlay::setTrickmode(int trick) +{ + /* currently unimplemented */ + return -1; +} + +RESULT eDVBServicePlay::isCurrentlySeekable() +{ + return (m_is_pvr || m_timeshift_active) ? 3 : 0; // fast forward/backward possible and seeking possible +} + +RESULT eDVBServicePlay::frontendInfo(ePtr<iFrontendInformation> &ptr) +{ + ptr = this; + return 0; +} + +RESULT eDVBServicePlay::info(ePtr<iServiceInformation> &ptr) +{ + ptr = this; + return 0; +} + +RESULT eDVBServicePlay::audioChannel(ePtr<iAudioChannelSelection> &ptr) +{ + ptr = this; + return 0; +} + +RESULT eDVBServicePlay::audioTracks(ePtr<iAudioTrackSelection> &ptr) +{ + ptr = this; + return 0; +} + +RESULT eDVBServicePlay::subServices(ePtr<iSubserviceList> &ptr) +{ + ptr = this; + return 0; +} + +RESULT eDVBServicePlay::timeshift(ePtr<iTimeshiftService> &ptr) +{ + ptr = 0; + if (m_timeshift_enabled || !m_is_pvr) + { + if (!m_timeshift_enabled) + { + /* query config path */ + std::string tspath = eConfigManager::getConfigValue("config.usage.timeshift_path"); + if(tspath == "") + { + eDebug("could not query ts path from config"); + return -4; + } + tspath.append("/"); + /* we need enough diskspace */ + struct statfs fs; + if (statfs(tspath.c_str(), &fs) < 0) + { + eDebug("statfs failed!"); + return -2; + } + + if (((off_t)fs.f_bavail) * ((off_t)fs.f_bsize) < 200*1024*1024LL) + { + eDebug("not enough diskspace for timeshift! (less than 200MB)"); + return -3; + } + } + ptr = this; + return 0; + } + return -1; +} + +RESULT eDVBServicePlay::cueSheet(ePtr<iCueSheet> &ptr) +{ + if (m_is_pvr || m_timeshift_enabled) + { + ptr = this; + return 0; + } + ptr = 0; + return -1; +} + +RESULT eDVBServicePlay::subtitle(ePtr<iSubtitleOutput> &ptr) +{ + ptr = this; + return 0; +} + +RESULT eDVBServicePlay::audioDelay(ePtr<iAudioDelay> &ptr) +{ + ptr = this; + return 0; +} + +RESULT eDVBServicePlay::rdsDecoder(ePtr<iRdsDecoder> &ptr) +{ + ptr = this; + return 0; +} + +RESULT eDVBServicePlay::streamed(ePtr<iStreamedService> &ptr) +{ + if (m_is_stream) + { + ptr = this; + return 0; + } + ptr = 0; + return -1; +} + +ePtr<iStreamBufferInfo> eDVBServicePlay::getBufferCharge() +{ + /** FIXME **/ + return 0; +} + +int eDVBServicePlay::setBufferSize(int size) +{ + /** FIXME **/ + return 0; +} + +RESULT eDVBServicePlay::getName(std::string &name) +{ + if (m_is_pvr) + { + ePtr<iStaticServiceInformation> i = new eStaticServiceDVBPVRInformation(m_reference); + return i->getName(m_reference, name); + } + else if (m_is_stream) + { + name = m_reference.name; + if (name.empty()) + { + name = m_reference.path; + } + if (name.empty()) + { + name = "(...)"; + } + } + else if (m_dvb_service) + { + m_dvb_service->getName(m_reference, name); + if (name.empty()) + name = "(...)"; + } + else if (!m_reference.name.empty()) + eStaticServiceDVBInformation().getName(m_reference, name); + else + name = "DVB service"; + return 0; +} + +RESULT eDVBServicePlay::getEvent(ePtr<eServiceEvent> &evt, int nownext) +{ + return m_event_handler.getEvent(evt, nownext); +} + +int eDVBServicePlay::getInfo(int w) +{ + eDVBServicePMTHandler::program program; + + if (w == sCAIDs || w == sCAIDPIDs) + return resIsPyObject; + + eDVBServicePMTHandler &h = m_timeshift_active ? m_service_handler_timeshift : m_service_handler; + + int no_program_info = 0; + + if (h.getProgramInfo(program)) + no_program_info = 1; + + switch (w) + { + case sVideoHeight: + if (m_decoder) + return m_decoder->getVideoHeight(); + break; + case sVideoWidth: + if (m_decoder) + return m_decoder->getVideoWidth(); + break; + case sFrameRate: + if (m_decoder) + return m_decoder->getVideoFrameRate(); + break; + case sProgressive: + if (m_decoder) + return m_decoder->getVideoProgressive(); + break; + case sAspect: + { + int aspect = -1; + if (m_decoder) + aspect = m_decoder->getVideoAspect(); + if (aspect == -1 && no_program_info) + break; + else if (aspect == -1 && !program.videoStreams.empty() && program.videoStreams[0].component_tag != -1) + { + ePtr<eServiceEvent> evt; + if (!m_event_handler.getEvent(evt, 0)) + { + ePtr<eComponentData> data; + if (!evt->getComponentData(data, program.videoStreams[0].component_tag)) + { + if ( data->getStreamContent() == 1 ) + { + switch(data->getComponentType()) + { + // SD + case 1: // 4:3 SD PAL + case 2: + case 3: // 16:9 SD PAL + case 4: // > 16:9 PAL + case 5: // 4:3 SD NTSC + case 6: + case 7: // 16:9 SD NTSC + case 8: // > 16:9 NTSC + + // HD + case 9: // 4:3 HD PAL + case 0xA: + case 0xB: // 16:9 HD PAL + case 0xC: // > 16:9 HD PAL + case 0xD: // 4:3 HD NTSC + case 0xE: + case 0xF: // 16:9 HD NTSC + case 0x10: // > 16:9 HD PAL + return data->getComponentType(); + } + } + } + } + } + else + return aspect; + break; + } + case sIsCrypted: if (no_program_info) return -1; return program.isCrypted(); + case sVideoPID: + if (m_dvb_service) + { + int vpid = m_dvb_service->getCacheEntry(eDVBService::cVPID); + if (vpid != -1) + return vpid; + } + if (no_program_info) return -1; if (program.videoStreams.empty()) return -1; return program.videoStreams[0].pid; + case sVideoType: if (no_program_info) return -1; if (program.videoStreams.empty()) return -1; return program.videoStreams[0].type; + case sAudioPID: + if (m_dvb_service) + { + int apid = m_dvb_service->getCacheEntry(eDVBService::cMPEGAPID); + if (apid != -1) + return apid; + apid = m_dvb_service->getCacheEntry(eDVBService::cAC3PID); + if (apid != -1) + return apid; + apid = m_dvb_service->getCacheEntry(eDVBService::cDDPPID); + if (apid != -1) + return apid; + apid = m_dvb_service->getCacheEntry(eDVBService::cAACHEAPID); + if (apid != -1) + return apid; + } + if (no_program_info) return -1; if (program.audioStreams.empty()) return -1; return program.audioStreams[0].pid; + case sPCRPID: + if (m_dvb_service) + { + int pcrpid = m_dvb_service->getCacheEntry(eDVBService::cPCRPID); + if (pcrpid != -1) + return pcrpid; + } + if (no_program_info) return -1; return program.pcrPid; + case sPMTPID: if (no_program_info) return -1; return program.pmtPid; + case sTXTPID: if (no_program_info) return -1; return program.textPid; + case sSID: return ((const eServiceReferenceDVB&)m_reference).getServiceID().get(); + case sONID: return ((const eServiceReferenceDVB&)m_reference).getOriginalNetworkID().get(); + case sTSID: return ((const eServiceReferenceDVB&)m_reference).getTransportStreamID().get(); + case sNamespace: return ((const eServiceReferenceDVB&)m_reference).getDVBNamespace().get(); + case sProvider: if (!m_dvb_service) return -1; return -2; + case sServiceref: return resIsString; + case sDVBState: return m_tune_state; + default: + break; + } + return -1; +} + +std::string eDVBServicePlay::getInfoString(int w) +{ + switch (w) + { + case sProvider: + if (!m_dvb_service) return ""; + return m_dvb_service->m_provider_name; + case sServiceref: + return m_reference.toString(); + case sHBBTVUrl: + { + std::string url; + eDVBServicePMTHandler &h = m_timeshift_active ? m_service_handler_timeshift : m_service_handler; + h.getHBBTVUrl(url); + return url; + } + case sLiveStreamDemuxId: + { + eDVBServicePMTHandler &h = m_timeshift_active ? m_service_handler_timeshift : m_service_handler; + std::string demux; + demux += h.getDemuxID() + '0'; + return demux; + } + default: + break; + } + return iServiceInformation::getInfoString(w); +} + +ePtr<iDVBTransponderData> eDVBServicePlay::getTransponderData() +{ + return eStaticServiceDVBInformation().getTransponderData(m_reference); +} + +void eDVBServicePlay::getAITApplications(std::map<int, std::string> &aitlist) +{ + return m_service_handler.getAITApplications(aitlist); +} + +void eDVBServicePlay::getCaIds(std::vector<int> &caids, std::vector<int> &ecmpids) +{ + m_service_handler.getCaIds(caids, ecmpids); +} + +int eDVBServicePlay::getNumberOfTracks() +{ + eDVBServicePMTHandler::program program; + eDVBServicePMTHandler &h = m_timeshift_active ? m_service_handler_timeshift : m_service_handler; + if (h.getProgramInfo(program)) + return 0; + return program.audioStreams.size(); +} + +int eDVBServicePlay::getCurrentTrack() +{ + eDVBServicePMTHandler::program program; + eDVBServicePMTHandler &h = m_timeshift_active ? m_service_handler_timeshift : m_service_handler; + if (h.getProgramInfo(program)) + return 0; + + int max = program.audioStreams.size(); + int i; + + for (i = 0; i < max; ++i) + if (program.audioStreams[i].pid == m_current_audio_pid) + return i; + + return 0; +} + +RESULT eDVBServicePlay::selectTrack(unsigned int i) +{ + int ret = selectAudioStream(i); + + if (m_decoder->set()) + return -5; + + return ret; +} + +RESULT eDVBServicePlay::getTrackInfo(struct iAudioTrackInfo &info, unsigned int i) +{ + eDVBServicePMTHandler::program program; + eDVBServicePMTHandler &h = m_timeshift_active ? m_service_handler_timeshift : m_service_handler; + + if (h.getProgramInfo(program)) + return -1; + + if (i >= program.audioStreams.size()) + return -2; + + info.m_pid = program.audioStreams[i].pid; + + if (program.audioStreams[i].type == eDVBServicePMTHandler::audioStream::atMPEG) + info.m_description = "MPEG"; + else if (program.audioStreams[i].type == eDVBServicePMTHandler::audioStream::atAC3) + info.m_description = "AC3"; + else if (program.audioStreams[i].type == eDVBServicePMTHandler::audioStream::atDDP) + info.m_description = "AC3+"; + else if (program.audioStreams[i].type == eDVBServicePMTHandler::audioStream::atAAC) + info.m_description = "AAC"; + else if (program.audioStreams[i].type == eDVBServicePMTHandler::audioStream::atAACHE) + info.m_description = "AAC-HE"; + else if (program.audioStreams[i].type == eDVBServicePMTHandler::audioStream::atDTS) + info.m_description = "DTS"; + else if (program.audioStreams[i].type == eDVBServicePMTHandler::audioStream::atDTSHD) + info.m_description = "DTS-HD"; + else + info.m_description = "???"; + + if (program.audioStreams[i].component_tag != -1) + { + ePtr<eServiceEvent> evt; + if (!m_event_handler.getEvent(evt, 0)) + { + ePtr<eComponentData> data; + if (!evt->getComponentData(data, program.audioStreams[i].component_tag)) + info.m_language = data->getText(); + } + } + + if (info.m_language.empty()) + info.m_language = program.audioStreams[i].language_code; + + return 0; +} + +int eDVBServicePlay::selectAudioStream(int i) +{ + eDVBServicePMTHandler::program program; + eDVBServicePMTHandler &h = m_timeshift_active ? m_service_handler_timeshift : m_service_handler; + pts_t position = -1; + + if (h.getProgramInfo(program)) + return -1; + + if ((i != -1) && ((unsigned int)i >= program.audioStreams.size())) + return -2; + + if (!m_decoder) + return -3; + + int stream = i; + if (stream == -1) + stream = program.defaultAudioStream; + + int apid = -1, apidtype = -1; + + if (((unsigned int)stream) < program.audioStreams.size()) + { + apid = program.audioStreams[stream].pid; + apidtype = program.audioStreams[stream].type; + } + + if (i != -1 && apid != m_current_audio_pid && (m_is_pvr || m_timeshift_active)) + eDebug("getPlayPosition ret %d, pos %lld in selectAudioStream", getPlayPosition(position), position); + + m_current_audio_pid = apid; + + if (m_decoder->setAudioPID(apid, apidtype)) + { + eDebug("set audio pid failed"); + return -4; + } + + if (position != -1) + eDebug("seekTo ret %d", seekTo(position)); + + int rdsPid = apid; + + /* if we are not in PVR mode, timeshift is not active and we are not in pip mode, check if we need to enable the rds reader */ + if (!(m_is_pvr || m_timeshift_active || m_decoder_index || m_have_video_pid)) + { + int different_pid = program.videoStreams.empty() && program.audioStreams.size() == 1 && program.audioStreams[stream].rdsPid != -1; + if (different_pid) + rdsPid = program.audioStreams[stream].rdsPid; + if (!m_rds_decoder || m_rds_decoder->getPid() != rdsPid) + { + m_rds_decoder = 0; + ePtr<iDVBDemux> data_demux; + if (!h.getDataDemux(data_demux)) + { + m_rds_decoder = new eDVBRdsDecoder(data_demux, different_pid); + m_rds_decoder->connectEvent(slot(*this, &eDVBServicePlay::rdsDecoderEvent), m_rds_decoder_event_connection); + m_rds_decoder->start(rdsPid); + } + } + } + + /* store new pid as default only when: + a.) we have an entry in the service db for the current service, + b.) we are not playing back something, + c.) we are not selecting the default entry. (we wouldn't change + anything in the best case, or destroy the default setting in + case the real default is not yet available.) + d.) we have only one audiostream (overwrite the cache to make sure + the cache contains the correct audio pid and type) + */ + if (m_dvb_service && ((i != -1) || (program.audioStreams.size() == 1) + || ((m_dvb_service->getCacheEntry(eDVBService::cMPEGAPID) == -1) + && (m_dvb_service->getCacheEntry(eDVBService::cAC3PID)== -1) + && (m_dvb_service->getCacheEntry(eDVBService::cDDPPID)== -1) + && (m_dvb_service->getCacheEntry(eDVBService::cAACHEAPID) == -1)))) + { + if (apidtype == eDVBAudio::aMPEG) + { + m_dvb_service->setCacheEntry(eDVBService::cMPEGAPID, apid); + m_dvb_service->setCacheEntry(eDVBService::cAC3PID, -1); + m_dvb_service->setCacheEntry(eDVBService::cDDPPID, -1); + m_dvb_service->setCacheEntry(eDVBService::cAACHEAPID, -1); + } + else if (apidtype == eDVBAudio::aAC3) + { + m_dvb_service->setCacheEntry(eDVBService::cMPEGAPID, -1); + m_dvb_service->setCacheEntry(eDVBService::cAC3PID, apid); + m_dvb_service->setCacheEntry(eDVBService::cDDPPID, -1); + m_dvb_service->setCacheEntry(eDVBService::cAACHEAPID, -1); + } + else if (apidtype == eDVBAudio::aDDP) + { + m_dvb_service->setCacheEntry(eDVBService::cMPEGAPID, -1); + m_dvb_service->setCacheEntry(eDVBService::cAC3PID, -1); + m_dvb_service->setCacheEntry(eDVBService::cDDPPID, apid); + m_dvb_service->setCacheEntry(eDVBService::cAACHEAPID, -1); + } + else if (apidtype == eDVBAudio::aAACHE) + { + m_dvb_service->setCacheEntry(eDVBService::cMPEGAPID, -1); + m_dvb_service->setCacheEntry(eDVBService::cAC3PID, -1); + m_dvb_service->setCacheEntry(eDVBService::cDDPPID, -1); + m_dvb_service->setCacheEntry(eDVBService::cAACHEAPID, apid); + } + else + { + m_dvb_service->setCacheEntry(eDVBService::cMPEGAPID, -1); + m_dvb_service->setCacheEntry(eDVBService::cAC3PID, -1); + m_dvb_service->setCacheEntry(eDVBService::cDDPPID, -1); + m_dvb_service->setCacheEntry(eDVBService::cAACHEAPID, -1); + } + } + + h.resetCachedProgram(); + + return 0; +} + +int eDVBServicePlay::getCurrentChannel() +{ + return m_decoder ? m_decoder->getAudioChannel() : STEREO; +} + +RESULT eDVBServicePlay::selectChannel(int i) +{ + if (i < LEFT || i > RIGHT || i == STEREO) + i = -1; // Stereo + if (m_dvb_service) + m_dvb_service->setCacheEntry(eDVBService::cACHANNEL, i); + if (m_decoder) + m_decoder->setAudioChannel(i); + return 0; +} + +std::string eDVBServicePlay::getText(int x) +{ + if (m_rds_decoder) + switch(x) + { + case RadioText: + return convertLatin1UTF8(m_rds_decoder->getRadioText()); + case RtpText: + return convertLatin1UTF8(m_rds_decoder->getRtpText()); + } + return ""; +} + +void eDVBServicePlay::rdsDecoderEvent(int what) +{ + switch(what) + { + case eDVBRdsDecoder::RadioTextChanged: + m_event((iPlayableService*)this, evUpdatedRadioText); + break; + case eDVBRdsDecoder::RtpTextChanged: + m_event((iPlayableService*)this, evUpdatedRtpText); + break; + case eDVBRdsDecoder::RassInteractivePicMaskChanged: + m_event((iPlayableService*)this, evUpdatedRassInteractivePicMask); + break; + case eDVBRdsDecoder::RecvRassSlidePic: + m_event((iPlayableService*)this, evUpdatedRassSlidePic); + break; + } +} + +void eDVBServicePlay::showRassSlidePicture() +{ + if (m_rds_decoder) + { + if (m_decoder) + { + std::string rass_slide_pic = m_rds_decoder->getRassSlideshowPicture(); + if (rass_slide_pic.length()) + m_decoder->showSinglePic(rass_slide_pic.c_str()); + else + eDebug("empty filename for rass slide picture received!!"); + } + else + eDebug("no MPEG Decoder to show iframes avail"); + } + else + eDebug("showRassSlidePicture called.. but not decoder"); +} + +void eDVBServicePlay::showRassInteractivePic(int page, int subpage) +{ + if (m_rds_decoder) + { + if (m_decoder) + { + std::string rass_interactive_pic = m_rds_decoder->getRassPicture(page, subpage); + if (rass_interactive_pic.length()) + m_decoder->showSinglePic(rass_interactive_pic.c_str()); + else + eDebug("empty filename for rass interactive picture %d/%d received!!", page, subpage); + } + else + eDebug("no MPEG Decoder to show iframes avail"); + } + else + eDebug("showRassInteractivePic called.. but not decoder"); +} + +ePyObject eDVBServicePlay::getRassInteractiveMask() +{ + if (m_rds_decoder) + return m_rds_decoder->getRassPictureMask(); + Py_RETURN_NONE; +} + +int eDVBServiceBase::getFrontendInfo(int w) +{ + eUsePtr<iDVBChannel> channel; + if(m_service_handler.getChannel(channel)) + return 0; + ePtr<iDVBFrontend> fe; + if(channel->getFrontend(fe)) + return 0; + return fe->readFrontendData(w); +} + +ePtr<iDVBFrontendData> eDVBServiceBase::getFrontendData() +{ + ePtr<iDVBFrontendData> ret; + eUsePtr<iDVBChannel> channel; + if(!m_service_handler.getChannel(channel)) + { + ePtr<iDVBFrontend> fe; + if(!channel->getFrontend(fe)) + fe->getFrontendData(ret); + } + return ret; +} + +ePtr<iDVBFrontendStatus> eDVBServiceBase::getFrontendStatus() +{ + ePtr<iDVBFrontendStatus> ret; + eUsePtr<iDVBChannel> channel; + if(!m_service_handler.getChannel(channel)) + { + ePtr<iDVBFrontend> fe; + if(!channel->getFrontend(fe)) + fe->getFrontendStatus(ret); + } + return ret; +} + +ePtr<iDVBTransponderData> eDVBServiceBase::getTransponderData(bool original) +{ + ePtr<iDVBTransponderData> ret; + eUsePtr<iDVBChannel> channel; + if(!m_service_handler.getChannel(channel)) + { + ePtr<iDVBFrontend> fe; + if(!channel->getFrontend(fe)) + fe->getTransponderData(ret, original); + } + return ret; +} + +int eDVBServicePlay::getNumberOfSubservices() +{ + ePtr<eServiceEvent> evt; + if (!m_event_handler.getEvent(evt, 0)) + return evt->getNumOfLinkageServices(); + return 0; +} + +RESULT eDVBServicePlay::getSubservice(eServiceReference &sub, unsigned int n) +{ + ePtr<eServiceEvent> evt; + if (!m_event_handler.getEvent(evt, 0)) + { + if (!evt->getLinkageService(sub, m_reference, n)) + return 0; + } + sub.type=eServiceReference::idInvalid; + return -1; +} + +RESULT eDVBServicePlay::startTimeshift() +{ + ePtr<iDVBDemux> demux; + + eDebug("Start timeshift!"); + + if (m_timeshift_enabled) + return -1; + + /* start recording with the data demux. */ + if (m_service_handler.getDataDemux(demux)) + return -2; + + demux->createTSRecorder(m_record); + if (!m_record) + return -3; + + std::string tspath = eConfigManager::getConfigValue("config.usage.timeshift_path"); + if (tspath == "") + { + eDebug("could not query ts path"); + return -5; + } + if (tspath.empty()) + { + eDebug("TS path is empty"); + return -5; + } + if (tspath[tspath.length()-1] != '/') + tspath.append("/"); + tspath.append("timeshift.XXXXXX"); + char* templ = new char[tspath.length() + 1]; + strcpy(templ, tspath.c_str()); + m_timeshift_fd = mkstemp(templ); + m_timeshift_file = std::string(templ); + eDebug("recording to %s", templ); + delete [] templ; + + if (m_timeshift_fd < 0) + { + m_record = 0; + return -4; + } + + m_record->setTargetFD(m_timeshift_fd); + m_record->setTargetFilename(m_timeshift_file); + m_record->enableAccessPoints(false); // no need for AP information during shift + m_timeshift_enabled = 1; + + updateTimeshiftPids(); + m_record->start(); + + return 0; +} + +RESULT eDVBServicePlay::stopTimeshift(bool swToLive) +{ + if (!m_timeshift_enabled) + return -1; + + if (swToLive) + switchToLive(); + + m_timeshift_enabled = 0; + + m_record->stop(); + m_record = 0; + + if (m_timeshift_fd >= 0) + { + close(m_timeshift_fd); + m_timeshift_fd = -1; + } + + if (!m_save_timeshift) + { + eDebug("remove timeshift files"); + eBackgroundFileEraser::getInstance()->erase(m_timeshift_file); + eBackgroundFileEraser::getInstance()->erase(m_timeshift_file + ".sc"); + eBackgroundFileEraser::getInstance()->erase(m_timeshift_file + ".cuts"); + } + else + { + eDebug("timeshift files not deleted"); + m_save_timeshift = 0; + } + return 0; +} + +int eDVBServicePlay::isTimeshiftActive() +{ + return m_timeshift_enabled && m_timeshift_active; +} + +int eDVBServicePlay::isTimeshiftEnabled() +{ + return m_timeshift_enabled; +} + +RESULT eDVBServicePlay::saveTimeshiftFile() +{ + if (!m_timeshift_enabled) + return -1; + + m_save_timeshift = 1; + + return 0; +} + +RESULT eDVBServicePlay::activateTimeshift() +{ + if (!m_timeshift_enabled) + return -1; + + if (!m_timeshift_active) + { + switchToTimeshift(); + return 0; + } + + return -2; +} + +std::string eDVBServicePlay::getTimeshiftFilename() +{ + if (m_timeshift_enabled) + return m_timeshift_file; + else + return ""; +} + +PyObject *eDVBServicePlay::getCutList() +{ + ePyObject list = PyList_New(0); + + for (std::multiset<struct cueEntry>::iterator i(m_cue_entries.begin()); i != m_cue_entries.end(); ++i) + { + ePyObject tuple = PyTuple_New(2); + PyTuple_SET_ITEM(tuple, 0, PyLong_FromLongLong(i->where)); + PyTuple_SET_ITEM(tuple, 1, PyInt_FromLong(i->what)); + PyList_Append(list, tuple); + Py_DECREF(tuple); + } + + return list; +} + +void eDVBServicePlay::setCutList(ePyObject list) +{ + if (!PyList_Check(list)) + return; + int size = PyList_Size(list); + int i; + + m_cue_entries.clear(); + + for (i=0; i<size; ++i) + { + ePyObject tuple = PyList_GET_ITEM(list, i); + if (!PyTuple_Check(tuple)) + { + eDebug("non-tuple in cutlist"); + continue; + } + if (PyTuple_Size(tuple) != 2) + { + eDebug("cutlist entries need to be a 2-tuple"); + continue; + } + ePyObject ppts = PyTuple_GET_ITEM(tuple, 0), ptype = PyTuple_GET_ITEM(tuple, 1); + if (!(PyLong_Check(ppts) && PyInt_Check(ptype))) + { + eDebug("cutlist entries need to be (pts, type)-tuples (%d %d)", PyLong_Check(ppts), PyInt_Check(ptype)); + continue; + } + pts_t pts = PyLong_AsLongLong(ppts); + int type = PyInt_AsLong(ptype); + m_cue_entries.insert(cueEntry(pts, type)); + eDebug("adding %08llx, %d", pts, type); + } + m_cuesheet_changed = 1; + + cutlistToCuesheet(); + m_event((iPlayableService*)this, evCuesheetChanged); +} + +void eDVBServicePlay::setCutListEnable(int enable) +{ + m_cutlist_enabled = enable; + cutlistToCuesheet(); +} + +void eDVBServicePlay::updateTimeshiftPids() +{ + if (!m_record) + return; + + eDVBServicePMTHandler::program program; + eDVBServicePMTHandler &h = m_timeshift_active ? m_service_handler_timeshift : m_service_handler; + + if (h.getProgramInfo(program)) + return; + else + { + int timing_pid = -1; + int timing_stream_type = -1; + iDVBTSRecorder::timing_pid_type timing_pid_type = iDVBTSRecorder::none; + std::set<int> pids_to_record; + pids_to_record.insert(0); // PAT + if (program.pmtPid != -1) + pids_to_record.insert(program.pmtPid); // PMT + + if (program.textPid != -1) + pids_to_record.insert(program.textPid); // Videotext + + for (std::vector<eDVBServicePMTHandler::videoStream>::const_iterator + i(program.videoStreams.begin()); + i != program.videoStreams.end(); ++i) + { + if (timing_pid == -1) + { + timing_pid = i->pid; + timing_stream_type = i->type; + timing_pid_type = iDVBTSRecorder::video_pid; + } + pids_to_record.insert(i->pid); + } + + for (std::vector<eDVBServicePMTHandler::audioStream>::const_iterator + i(program.audioStreams.begin()); + i != program.audioStreams.end(); ++i) + { + if (timing_pid == -1) + { + timing_pid = i->pid; + timing_stream_type = i->type; + timing_pid_type = iDVBTSRecorder::audio_pid; + } + pids_to_record.insert(i->pid); + } + + for (std::vector<eDVBServicePMTHandler::subtitleStream>::const_iterator + i(program.subtitleStreams.begin()); + i != program.subtitleStreams.end(); ++i) + pids_to_record.insert(i->pid); + + std::set<int> new_pids, obsolete_pids; + + std::set_difference(pids_to_record.begin(), pids_to_record.end(), + m_pids_active.begin(), m_pids_active.end(), + std::inserter(new_pids, new_pids.begin())); + + std::set_difference( + m_pids_active.begin(), m_pids_active.end(), + pids_to_record.begin(), pids_to_record.end(), + std::inserter(new_pids, new_pids.begin()) + ); + + for (std::set<int>::iterator i(new_pids.begin()); i != new_pids.end(); ++i) + m_record->addPID(*i); + + for (std::set<int>::iterator i(obsolete_pids.begin()); i != obsolete_pids.end(); ++i) + m_record->removePID(*i); + + if (timing_pid != -1) + m_record->setTimingPID(timing_pid, timing_pid_type, timing_stream_type); + } +} + +RESULT eDVBServicePlay::setNextPlaybackFile(const char *f) +{ + m_timeshift_file_next = f; + return 0; +} + +void eDVBServicePlay::switchToLive() +{ + if (!m_timeshift_active) + return; + + eDebug("SwitchToLive"); + + resetTimeshift(0); + + m_is_paused = m_skipmode = m_fastforward = m_slowmotion = 0; /* not supported in live mode */ + + /* free the timeshift service handler, we need the resources */ + m_service_handler_timeshift.free(); + + updateDecoder(true); +} + +void eDVBServicePlay::resetTimeshift(int start) +{ + m_cue = 0; + m_decode_demux = 0; + m_decoder = 0; + m_teletext_parser = 0; + m_rds_decoder = 0; + m_subtitle_parser = 0; + m_new_subtitle_stream_connection = 0; + m_new_subtitle_page_connection = 0; + m_new_dvb_subtitle_page_connection = 0; + m_rds_decoder_event_connection = 0; + m_video_event_connection = 0; + m_timeshift_changed = 1; + m_timeshift_file_next.clear(); + + if (start) + { + m_cue = new eCueSheet(); + m_timeshift_active = 1; + } + else + m_timeshift_active = 0; +} + +ePtr<iTsSource> eDVBServicePlay::createTsSource(eServiceReferenceDVB &ref, int packetsize) +{ + /* + * NOTE: we cannot use our m_is_stream status, instead we check the reference again. + * It could be that createTsSource is called to start a timeshift on a stream, + * in which case the ref passed here no longer is a url, but a timeshift file instead. + * (but m_is_stream would still be set, because of the ref which was passed to our + * constructor) + */ + if (ref.path.substr(0, 7) == "http://") + { + eHttpStream *f = new eHttpStream(); + f->open(ref.path.c_str()); + return ePtr<iTsSource>(f); + } + else + { + eRawFile *f = new eRawFile(packetsize); + f->open(ref.path.c_str()); + return ePtr<iTsSource>(f); + } +} + +void eDVBServicePlay::switchToTimeshift() +{ + if (m_timeshift_active) + return; + + resetTimeshift(1); + + eServiceReferenceDVB r = (eServiceReferenceDVB&)m_reference; + r.path = m_timeshift_file; + + m_cue->seekTo(0, -1000); + + ePtr<iTsSource> source = createTsSource(r); + m_service_handler_timeshift.tuneExt(r, 1, source, m_timeshift_file.c_str(), m_cue, 0, m_dvb_service, eDVBServicePMTHandler::timeshift_playback, false); /* use the decoder demux for everything */ + + eDebug("eDVBServicePlay::switchToTimeshift, in pause mode now."); + pause(); + updateDecoder(true); /* mainly to switch off PCR, and to set pause */ +} + +void eDVBServicePlay::updateDecoder(bool sendSeekableStateChanged) +{ + int vpid = -1, vpidtype = -1, pcrpid = -1, tpid = -1, achannel = -1, ac3_delay=-1, pcm_delay=-1; + bool mustPlay = false; + + eDVBServicePMTHandler &h = m_timeshift_active ? m_service_handler_timeshift : m_service_handler; + + eDVBServicePMTHandler::program program; + if (h.getProgramInfo(program)) + eDebug("getting program info failed."); + else + { + eDebugNoNewLine("have %zd video stream(s)", program.videoStreams.size()); + if (!program.videoStreams.empty()) + { + eDebugNoNewLine(" ("); + for (std::vector<eDVBServicePMTHandler::videoStream>::const_iterator + i(program.videoStreams.begin()); + i != program.videoStreams.end(); ++i) + { + if (vpid == -1) + { + vpid = i->pid; + vpidtype = i->type; + } + if (i != program.videoStreams.begin()) + eDebugNoNewLine(", "); + eDebugNoNewLine("%04x", i->pid); + } + eDebugNoNewLine(")"); + } + eDebugNoNewLine(", and %zd audio stream(s)", program.audioStreams.size()); + if (!program.audioStreams.empty()) + { + eDebugNoNewLine(" ("); + for (std::vector<eDVBServicePMTHandler::audioStream>::const_iterator + i(program.audioStreams.begin()); + i != program.audioStreams.end(); ++i) + { + if (i != program.audioStreams.begin()) + eDebugNoNewLine(", "); + eDebugNoNewLine("%04x", i->pid); + } + eDebugNoNewLine(")"); + } + eDebugNoNewLine(", and the pcr pid is %04x", program.pcrPid); + pcrpid = program.pcrPid; + eDebug(", and the text pid is %04x", program.textPid); + tpid = program.textPid; + } + + m_have_video_pid = 0; + + if (!m_decoder) + { + h.getDecodeDemux(m_decode_demux); + if (m_decode_demux) + { + m_decode_demux->getMPEGDecoder(m_decoder, m_decoder_index); + if (m_decoder) + m_decoder->connectVideoEvent(slot(*this, &eDVBServicePlay::video_event), m_video_event_connection); + } + if (m_cue) + m_cue->setDecodingDemux(m_decode_demux, m_decoder); + mustPlay = true; + } + + m_timeshift_changed = 0; + + if (m_decoder) + { + bool wasSeekable = m_decoder->getVideoProgressive() != -1; + if (m_dvb_service) + { + achannel = m_dvb_service->getCacheEntry(eDVBService::cACHANNEL); + ac3_delay = m_dvb_service->getCacheEntry(eDVBService::cAC3DELAY); + pcm_delay = m_dvb_service->getCacheEntry(eDVBService::cPCMDELAY); + } + else // subservice + { + eServiceReferenceDVB ref; + m_service_handler.getServiceReference(ref); + eServiceReferenceDVB parent = ref.getParentServiceReference(); + if (!parent) + parent = ref; + if (parent) + { + ePtr<eDVBResourceManager> res_mgr; + if (!eDVBResourceManager::getInstance(res_mgr)) + { + ePtr<iDVBChannelList> db; + if (!res_mgr->getChannelList(db)) + { + ePtr<eDVBService> origService; + if (!db->getService(parent, origService)) + { + ac3_delay = origService->getCacheEntry(eDVBService::cAC3DELAY); + pcm_delay = origService->getCacheEntry(eDVBService::cPCMDELAY); + } + } + } + } + } + + setAC3Delay(ac3_delay == -1 ? 0 : ac3_delay); + setPCMDelay(pcm_delay == -1 ? 0 : pcm_delay); + + m_decoder->setVideoPID(vpid, vpidtype); + m_have_video_pid = (vpid > 0 && vpid < 0x2000); + + selectAudioStream(); + + if (!(m_is_pvr || m_is_stream || m_timeshift_active)) + m_decoder->setSyncPCR(pcrpid); + else + m_decoder->setSyncPCR(-1); + + if (m_decoder_index == 0) + { + m_decoder->setTextPID(tpid); + } + + if (vpid > 0 && vpid < 0x2000) + ; + else + { + std::string value; + bool showRadioBackground = eConfigManager::getConfigBoolValue("config.misc.showradiopic", true); + std::string radio_pic; + if (showRadioBackground) + radio_pic = eConfigManager::getConfigValue("config.misc.radiopic"); + else + radio_pic = eConfigManager::getConfigValue("config.misc.blackradiopic"); + m_decoder->setRadioPic(radio_pic); + } + + if (mustPlay) + m_decoder->play(); + else + m_decoder->set(); + + m_decoder->setAudioChannel(achannel); + + if (mustPlay && m_decode_demux && m_decoder_index == 0) + { + m_teletext_parser = new eDVBTeletextParser(m_decode_demux); + m_teletext_parser->connectNewStream(slot(*this, &eDVBServicePlay::newSubtitleStream), m_new_subtitle_stream_connection); + m_teletext_parser->connectNewPage(slot(*this, &eDVBServicePlay::newSubtitlePage), m_new_subtitle_page_connection); + m_subtitle_parser = new eDVBSubtitleParser(m_decode_demux); + m_subtitle_parser->connectNewPage(slot(*this, &eDVBServicePlay::newDVBSubtitlePage), m_new_dvb_subtitle_page_connection); + if (m_timeshift_changed) + { + struct SubtitleTrack track; + if (getCachedSubtitle(track) >= 0) + { + if (track.type == 0) // dvb + m_subtitle_parser->start(track.pid, track.page_number, track.magazine_number); + else if (track.type == 1) // ttx + m_teletext_parser->setPageAndMagazine(track.page_number, track.magazine_number, track.language_code.c_str()); + } + } + m_teletext_parser->start(program.textPid); + } + + /* don't worry about non-existing services, nor pvr services */ + if (m_dvb_service) + { + /* (audio pid will be set in selectAudioTrack) */ + if (vpid >= 0) + { + m_dvb_service->setCacheEntry(eDVBService::cVPID, vpid); + m_dvb_service->setCacheEntry(eDVBService::cVTYPE, vpidtype == eDVBVideo::MPEG2 ? -1 : vpidtype); + } + if (pcrpid >= 0) m_dvb_service->setCacheEntry(eDVBService::cPCRPID, pcrpid); + if (tpid >= 0) m_dvb_service->setCacheEntry(eDVBService::cTPID, tpid); + } + if (!sendSeekableStateChanged && (m_decoder->getVideoProgressive() != -1) != wasSeekable) + sendSeekableStateChanged = true; + } + + if (sendSeekableStateChanged) + m_event((iPlayableService*)this, evSeekableStatusChanged); +} + +void eDVBServicePlay::loadCuesheet() +{ + std::string filename = m_reference.path + ".cuts"; + + m_cue_entries.clear(); + + FILE *f = fopen(filename.c_str(), "rb"); + + if (f) + { + while (1) + { + unsigned long long where; + unsigned int what; + + if (!fread(&where, sizeof(where), 1, f)) + break; + if (!fread(&what, sizeof(what), 1, f)) + break; + + where = be64toh(where); + what = ntohl(what); + + if (what > 3) + break; + + m_cue_entries.insert(cueEntry(where, what)); + } + fclose(f); + eDebug("cuts file has %zd entries", m_cue_entries.size()); + } else + eDebug("cutfile not found!"); + + m_cuesheet_changed = 0; + cutlistToCuesheet(); + m_event((iPlayableService*)this, evCuesheetChanged); +} + +void eDVBServicePlay::saveCuesheet() +{ + std::string filename = m_timeshift_enabled ? m_timeshift_file : m_reference.path; + + /* save cuesheet only when main file is accessible. */ + if (::access(filename.c_str(), R_OK) < 0) + return; + + filename.append(".cuts"); + + FILE *f = fopen(filename.c_str(), "wb"); + + if (f) + { + unsigned long long where; + int what; + + for (std::multiset<cueEntry>::iterator i(m_cue_entries.begin()); i != m_cue_entries.end(); ++i) + { + where = htobe64(i->where); + what = htonl(i->what); + fwrite(&where, sizeof(where), 1, f); + fwrite(&what, sizeof(what), 1, f); + + } + fclose(f); + } + + m_cuesheet_changed = 0; +} + +void eDVBServicePlay::cutlistToCuesheet() +{ + if (!m_cue) + { + eDebug("no cue sheet"); + return; + } + m_cue->clear(); + + if ((m_cutlist_enabled & 1) == 0) + { + m_cue->commitSpans(); + eDebug("cutlists were disabled"); + return; + } + + pts_t in = 0, out = 0, length = 0; + + getLength(length); + + std::multiset<cueEntry>::iterator i(m_cue_entries.begin()); + + int have_any_span = 0; + + while (1) + { + if (i == m_cue_entries.end()) + { + if (!have_any_span && !in) + break; + out = length; + } else { + if (i->what == 0) /* in */ + { + in = i++->where; + continue; + } else if (i->what == 1) /* out */ + out = i++->where; + else /* mark (2) or last play position (3) */ + { + i++; + continue; + } + } + + if (in < 0) + in = 0; + if (out < 0) + out = 0; + if (in > length) + in = length; + if (out > length) + out = length; + + if (in < out) + { + have_any_span = 1; + m_cue->addSourceSpan(in, out); + in = out = 0; + } + + in = length; + + if (i == m_cue_entries.end()) + break; + } + m_cue->commitSpans(); +} + +RESULT eDVBServicePlay::enableSubtitles(iSubtitleUser *user, SubtitleTrack &track) +{ + if (m_subtitle_widget) + disableSubtitles(); + + if (track.type == 1) // teletext subtitles + { + int page, magazine, pid; + std::string lang; + + if (!m_teletext_parser) + { + eDebug("enable teletext subtitles.. no parser !!!"); + return -1; + } + + pid = track.pid; + page = track.page_number; + magazine = track.magazine_number; + lang = track.language_code; + + m_subtitle_widget = user; + m_teletext_parser->setPageAndMagazine(page, magazine, lang.c_str()); + if (m_dvb_service) + { + int i, sub = 0; + for (i=0; i < m_teletext_parser->max_id; i++) + { + if (!memcmp(m_teletext_parser->my_country_codes[i], lang.c_str(), 3)) + { + sub = i; + break; + } + } + m_dvb_service->setCacheEntry(eDVBService::cSUBTITLE,((pid&0xFFFF)<<16)|((page&0xFF)<<8)|((sub&0x1F)<<3)|(magazine&0x7)); + } + } + else if (track.type == 0) + { + int pid = 0, composition_page_id = 0, ancillary_page_id = 0; + if (!m_subtitle_parser) + { + eDebug("enable dvb subtitles.. no parser !!!"); + return -1; + } + + pid = track.pid; + composition_page_id = track.page_number; + ancillary_page_id = track.magazine_number; + + m_subtitle_widget = user; + m_subtitle_parser->start(pid, composition_page_id, ancillary_page_id); + if (m_dvb_service) + m_dvb_service->setCacheEntry(eDVBService::cSUBTITLE, ((pid&0xFFFF)<<16)|((composition_page_id&0xFF)<<8)|(ancillary_page_id&0xFF)); + } + else + goto error_out; + return 0; +error_out: + eDebug("enableSubtitles needs a valid type:\n" + "for teletext subtitles (0, pid, teletext_page, teletext_magazine)\n" + "for dvb subtitles (1, pid, composition_page_id, ancillary_page_id)"); + return -1; +} + +RESULT eDVBServicePlay::disableSubtitles() +{ + if (m_subtitle_widget) m_subtitle_widget->destroy(); + m_subtitle_widget = 0; + if (m_subtitle_parser) + { + m_subtitle_parser->stop(); + m_dvb_subtitle_pages.clear(); + } + if (m_teletext_parser) + { + m_teletext_parser->setPageAndMagazine(-1, -1, "und"); + m_subtitle_pages.clear(); + } + if (m_dvb_service) + m_dvb_service->setCacheEntry(eDVBService::cSUBTITLE, 0); + return 0; +} + +RESULT eDVBServicePlay::getCachedSubtitle(struct SubtitleTrack &track) +{ + if (m_dvb_service) + { + eDVBServicePMTHandler::program program; + eDVBServicePMTHandler &h = m_timeshift_active ? m_service_handler_timeshift : m_service_handler; + if (!h.getProgramInfo(program)) + { + bool usecache = eConfigManager::getConfigBoolValue("config.autolanguage.subtitle_usecache"); + int stream=program.defaultSubtitleStream; + int tmp = m_dvb_service->getCacheEntry(eDVBService::cSUBTITLE); + + if (usecache || stream == -1) + { + if (tmp != -1 && tmp != 0) + { + unsigned int data = (unsigned int)tmp; + int pid = (data&0xFFFF0000)>>16; + if (program.textPid == pid) // teletext + track.type = 1; // type teletext + else + track.type = 0; // type dvb + track.pid = pid; // pid + track.page_number = (data >> 8) & 0xff; // composition_page / page + int k = (data >> 3) & 0x1f; + track.magazine_number = data & 0x7; // ancillary_page / magazine + track.language_code = m_teletext_parser->my_country_codes[k]; + return 0; + } + } + if (stream != -1 && (tmp != 0 || !usecache)) + { + if (program.subtitleStreams[stream].subtitling_type == 1) + { + track.type = 1; // type teletext + track.pid = program.subtitleStreams[stream].pid; + track.page_number = program.subtitleStreams[stream].teletext_page_number & 0xff; + track.magazine_number = program.subtitleStreams[stream].teletext_magazine_number & 0x07; + track.language_code = program.subtitleStreams[stream].language_code; + return 0; + } + else + { + track.type = 0; // type dvb + track.pid = program.subtitleStreams[stream].pid; + track.page_number = program.subtitleStreams[stream].composition_page_id; + track.magazine_number = program.subtitleStreams[stream].ancillary_page_id; + track.language_code = program.subtitleStreams[stream].language_code; + return 0; + } + } + } + } + return -1; +} + +RESULT eDVBServicePlay::getSubtitleList(std::vector<SubtitleTrack> &subtitlelist) +{ + if (!m_teletext_parser) + return -1; + + std::set<int> added_ttx_pages; + + std::set<eDVBServicePMTHandler::subtitleStream> &subs = + m_teletext_parser->m_found_subtitle_pages; + + eDVBServicePMTHandler &h = m_timeshift_active ? m_service_handler_timeshift : m_service_handler; + eDVBServicePMTHandler::program program; + if (h.getProgramInfo(program)) + eDebug("getting program info failed."); + else + { + for (std::vector<eDVBServicePMTHandler::subtitleStream>::iterator it(program.subtitleStreams.begin()); + it != program.subtitleStreams.end(); ++it) + { + struct SubtitleTrack track; + switch(it->subtitling_type) + { + case 0x01: // ebu teletext subtitles + { + int page_number = it->teletext_page_number & 0xFF; + int magazine_number = it->teletext_magazine_number & 7; + int hash = magazine_number << 8 | page_number; + if (added_ttx_pages.find(hash) == added_ttx_pages.end()) + { + track.type = 1; + track.pid = it->pid; + track.page_number = page_number; + track.magazine_number = magazine_number; + track.language_code = it->language_code; + subtitlelist.push_back(track); + added_ttx_pages.insert(hash); + } + break; + } + case 0x10 ... 0x13: + case 0x20 ... 0x23: // dvb subtitles + { + track.type = 0; + track.pid = it->pid; + track.page_number = it->composition_page_id; + track.magazine_number = it->ancillary_page_id; + track.language_code = it->language_code; + subtitlelist.push_back(track); + break; + } + } + } + } + + for (std::set<eDVBServicePMTHandler::subtitleStream>::iterator it(subs.begin()); + it != subs.end(); ++it) + { + int page_number = it->teletext_page_number & 0xFF; + int magazine_number = it->teletext_magazine_number & 7; + int hash = magazine_number << 8 | page_number; + if (added_ttx_pages.find(hash) == added_ttx_pages.end()) + { + struct SubtitleTrack track; + track.type = 1; + track.pid = it->pid; + track.page_number = page_number; + track.magazine_number = magazine_number; + track.language_code = "und"; + subtitlelist.push_back(track); + } + } + + return 0; +} + +void eDVBServicePlay::newSubtitleStream() +{ + m_event((iPlayableService*)this, evUpdatedInfo); +} + +void eDVBServicePlay::newSubtitlePage(const eDVBTeletextSubtitlePage &page) +{ + if (m_subtitle_widget) + { + int subtitledelay = 0; + pts_t pts; + m_decoder->getPTS(0, pts); + if (m_is_pvr || m_timeshift_enabled) + { + eDebug("Subtitle in recording/timeshift"); + subtitledelay = eConfigManager::getConfigIntValue("config.subtitles.subtitle_noPTSrecordingdelay", 315000); + } + else + { + /* check the setting for subtitle delay in live playback, either with pts, or without pts */ + subtitledelay = eConfigManager::getConfigIntValue("config.subtitles.subtitle_bad_timing_delay", 0); + } + + // eDebug("Subtitle get TTX have_pts=%d pvr=%d timeshift=%d page.pts=%lld pts=%lld delay=%d", page.m_have_pts, m_is_pvr, m_timeshift_enabled, page.m_pts, pts, subtitledelay); + eDVBTeletextSubtitlePage tmppage = page; + tmppage.m_have_pts = true; + + if (abs(tmppage.m_pts - pts) > 20*90000) + tmppage.m_pts = pts; // fix abnormal pts diffs + + tmppage.m_pts += subtitledelay; + m_subtitle_pages.push_back(tmppage); + + checkSubtitleTiming(); + } +} + +void eDVBServicePlay::checkSubtitleTiming() +{ + pts_t pos = 0; +// eDebug("checkSubtitleTiming"); + if (!m_subtitle_widget) + return; + if (m_subtitle_pages.empty() && m_dvb_subtitle_pages.empty()) + { + return; + } + if (m_decoder) + { + m_decoder->getPTS(0, pos); + } + + while (1) + { + enum { TELETEXT, DVB } type; + eDVBTeletextSubtitlePage page; + eDVBSubtitlePage dvb_page; + pts_t show_time; + if (!m_subtitle_pages.empty()) + { + page = m_subtitle_pages.front(); + type = TELETEXT; + show_time = page.m_pts; + } + else if (!m_dvb_subtitle_pages.empty()) + { + dvb_page = m_dvb_subtitle_pages.front(); + type = DVB; + show_time = dvb_page.m_show_time; + } + else + return; + + int diff = show_time - pos; +// eDebug("Subtitle show %d page.pts=%lld pts=%lld diff=%d", type, show_time, pos, diff); + + if (diff < 20*90 || diff > 1800000) + { + if (type == TELETEXT) + { + m_subtitle_widget->setPage(page); + m_subtitle_pages.pop_front(); + } + else + { + m_subtitle_widget->setPage(dvb_page); + m_dvb_subtitle_pages.pop_front(); + } + } else + { + m_subtitle_sync_timer->start(diff / 90, 1); + break; + } + } +} + +void eDVBServicePlay::newDVBSubtitlePage(const eDVBSubtitlePage &p) +{ + if (m_subtitle_widget) + { + pts_t pos = 0; + if (m_decoder) + m_decoder->getPTS(0, pos); + if ( abs(pos-p.m_show_time)>1800000 && (m_is_pvr || m_timeshift_enabled)) + { + eDebug("Subtitle without PTS and recording"); + int subtitledelay = eConfigManager::getConfigIntValue("config.subtitles.subtitle_noPTSrecordingdelay", 315000); + + eDVBSubtitlePage tmppage; + tmppage = p; + tmppage.m_show_time = pos + subtitledelay; + m_dvb_subtitle_pages.push_back(tmppage); + } + else + { + int subtitledelay = eConfigManager::getConfigIntValue("config.subtitles.subtitle_bad_timing_delay", 0); + if (subtitledelay != 0) + { + eDVBSubtitlePage tmppage; + tmppage = p; + tmppage.m_show_time += subtitledelay; + m_dvb_subtitle_pages.push_back(tmppage); + } + else + m_dvb_subtitle_pages.push_back(p); + } + checkSubtitleTiming(); + } +} + +int eDVBServicePlay::getAC3Delay() +{ + if (m_dvb_service) + return m_dvb_service->getCacheEntry(eDVBService::cAC3DELAY); + else if (m_decoder) + return m_decoder->getAC3Delay(); + else + return 0; +} + +int eDVBServicePlay::getPCMDelay() +{ + if (m_dvb_service) + return m_dvb_service->getCacheEntry(eDVBService::cPCMDELAY); + else if (m_decoder) + return m_decoder->getPCMDelay(); + else + return 0; +} + +void eDVBServicePlay::setAC3Delay(int delay) +{ + if (m_dvb_service) + m_dvb_service->setCacheEntry(eDVBService::cAC3DELAY, delay ? delay : -1); + if (m_decoder) + { + m_decoder->setAC3Delay(delay + eConfigManager::getConfigIntValue("config.av.generalAC3delay")); + } +} + +void eDVBServicePlay::setPCMDelay(int delay) +{ + if (m_dvb_service) + m_dvb_service->setCacheEntry(eDVBService::cPCMDELAY, delay ? delay : -1); + if (m_decoder) + { + m_decoder->setPCMDelay(delay + eConfigManager::getConfigIntValue("config.av.generalPCMdelay")); + } +} + +void eDVBServicePlay::video_event(struct iTSMPEGDecoder::videoEvent event) +{ + switch(event.type) { + case iTSMPEGDecoder::videoEvent::eventSizeChanged: + m_event((iPlayableService*)this, evVideoSizeChanged); + break; + case iTSMPEGDecoder::videoEvent::eventFrameRateChanged: + m_event((iPlayableService*)this, evVideoFramerateChanged); + break; + case iTSMPEGDecoder::videoEvent::eventProgressiveChanged: + m_event((iPlayableService*)this, evVideoProgressiveChanged); + break; + default: + break; + } +} + +RESULT eDVBServicePlay::stream(ePtr<iStreamableService> &ptr) +{ + ptr = this; + return 0; +} + +ePtr<iStreamData> eDVBServicePlay::getStreamingData() +{ + ePtr<iStreamData> retval; + eDVBServicePMTHandler::program program; + if (!m_service_handler.getProgramInfo(program)) + { + retval = new eDVBServicePMTHandler::eStreamData(program); + } + return retval; +} + + +DEFINE_REF(eDVBServicePlay) + +ePtr<iDVBTransponderData> eDVBService::getTransponderData(const eServiceReference &ref) +{ + return eStaticServiceDVBInformation().getTransponderData(ref); +} + +eAutoInitPtr<eServiceFactoryDVB> init_eServiceFactoryDVB(eAutoInitNumbers::service+1, "eServiceFactoryDVB"); diff --git a/lib/service/servicedvb.h b/lib/service/servicedvb.h new file mode 100644 index 0000000..641a251 --- /dev/null +++ b/lib/service/servicedvb.h @@ -0,0 +1,323 @@ +#ifndef __servicedvb_h +#define __servicedvb_h + +#include <lib/service/iservice.h> +#include <lib/dvb/idvb.h> + +#include <lib/dvb/pmt.h> +#include <lib/dvb/eit.h> +#include <lib/dvb/subtitle.h> +#include <lib/dvb/teletext.h> +#include <lib/dvb/radiotext.h> +#include <lib/base/filepush.h> + +class eStaticServiceDVBInformation; +class eStaticServiceDVBBouquetInformation; + +class eServiceFactoryDVB: public iServiceHandler +{ + DECLARE_REF(eServiceFactoryDVB); + ePtr<eStaticServiceDVBInformation> m_StaticServiceDVBInfo; + ePtr<eStaticServiceDVBBouquetInformation> m_StaticServiceDVBBouquetInfo; +public: + eServiceFactoryDVB(); + virtual ~eServiceFactoryDVB(); + enum { id = 0x1 }; + + // iServiceHandler + RESULT play(const eServiceReference &, ePtr<iPlayableService> &ptr); + RESULT record(const eServiceReference &, ePtr<iRecordableService> &ptr); + RESULT list(const eServiceReference &, ePtr<iListableService> &ptr); + RESULT info(const eServiceReference &, ePtr<iStaticServiceInformation> &ptr); + RESULT offlineOperations(const eServiceReference &, ePtr<iServiceOfflineOperations> &ptr); +private: + RESULT lookupService(ePtr<eDVBService> &ptr, const eServiceReference &ref); +}; + +class eBouquet; + +class eDVBServiceList: public iListableService, public iMutableServiceList +{ + DECLARE_REF(eDVBServiceList); +public: + virtual ~eDVBServiceList(); + PyObject *getContent(const char* formatstr, bool sorted=false); + RESULT getContent(std::list<eServiceReference> &list, bool sorted=false); + RESULT getNext(eServiceReference &ptr); + inline int compareLessEqual(const eServiceReference &a, const eServiceReference &b); + + RESULT startEdit(ePtr<iMutableServiceList> &); + RESULT flushChanges(); + RESULT addService(eServiceReference &ref, eServiceReference before); + RESULT removeService(eServiceReference &ref); + RESULT moveService(eServiceReference &ref, int pos); + RESULT setListName(const std::string &name); +private: + RESULT startQuery(); + eServiceReference m_parent; + friend class eServiceFactoryDVB; + eDVBServiceList(const eServiceReference &parent); + ePtr<iDVBChannelListQuery> m_query; + + /* for editing purposes. WARNING: lifetime issue! */ + eBouquet *m_bouquet; +}; + +inline int eDVBServiceList::compareLessEqual(const eServiceReference &a, const eServiceReference &b) +{ + return m_query->compareLessEqual((const eServiceReferenceDVB&)a, (const eServiceReferenceDVB&)b); +} + +class eDVBServiceBase: public iFrontendInformation +{ +protected: + eDVBServicePMTHandler m_service_handler; +public: + // iFrontendInformation + int getFrontendInfo(int w); + ePtr<iDVBFrontendData> getFrontendData(); + ePtr<iDVBFrontendStatus> getFrontendStatus(); + ePtr<iDVBTransponderData> getTransponderData(bool); +}; + +class eDVBServicePlay: public eDVBServiceBase, + public iPlayableService, public iPauseableService, + public iSeekableService, public Object, public iServiceInformation, + public iAudioTrackSelection, public iAudioChannelSelection, + public iSubserviceList, public iTimeshiftService, + public iCueSheet, public iSubtitleOutput, public iAudioDelay, + public iRdsDecoder, public iStreamableService, + public iStreamedService +{ + DECLARE_REF(eDVBServicePlay); +public: + virtual ~eDVBServicePlay(); + + // iPlayableService + RESULT connectEvent(const Slot2<void,iPlayableService*,int> &event, ePtr<eConnection> &connection); + RESULT start(); + RESULT stop(); + RESULT setTarget(int target); + + RESULT seek(ePtr<iSeekableService> &ptr); + RESULT pause(ePtr<iPauseableService> &ptr); + RESULT info(ePtr<iServiceInformation> &ptr); + RESULT audioChannel(ePtr<iAudioChannelSelection> &ptr); + RESULT audioTracks(ePtr<iAudioTrackSelection> &ptr); + RESULT frontendInfo(ePtr<iFrontendInformation> &ptr); + RESULT subServices(ePtr<iSubserviceList> &ptr); + RESULT timeshift(ePtr<iTimeshiftService> &ptr); + RESULT cueSheet(ePtr<iCueSheet> &ptr); + RESULT subtitle(ePtr<iSubtitleOutput> &ptr); + RESULT audioDelay(ePtr<iAudioDelay> &ptr); + RESULT rdsDecoder(ePtr<iRdsDecoder> &ptr); + RESULT keys(ePtr<iServiceKeys> &ptr) { ptr = 0; return -1; } + + // iStreamedService + RESULT streamed(ePtr<iStreamedService> &ptr); + ePtr<iStreamBufferInfo> getBufferCharge(); + int setBufferSize(int size); + + + // iPauseableService + RESULT pause(); + RESULT unpause(); + RESULT setSlowMotion(int ratio); + RESULT setFastForward(int ratio); + + // iSeekableService + RESULT getLength(pts_t &len); + RESULT seekTo(pts_t to); + RESULT seekRelative(int direction, pts_t to); + RESULT getPlayPosition(pts_t &pos); + RESULT setTrickmode(int trick=0); + RESULT isCurrentlySeekable(); + + // iServiceInformation + RESULT getName(std::string &name); + RESULT getEvent(ePtr<eServiceEvent> &evt, int nownext); + int getInfo(int w); + std::string getInfoString(int w); + ePtr<iDVBTransponderData> getTransponderData(); + void getAITApplications(std::map<int, std::string> &aitlist); + void getCaIds(std::vector<int> &caids, std::vector<int> &ecmpids); + + // iAudioTrackSelection + int getNumberOfTracks(); + RESULT selectTrack(unsigned int i); + RESULT getTrackInfo(struct iAudioTrackInfo &, unsigned int n); + int getCurrentTrack(); + + // iAudioChannelSelection + int getCurrentChannel(); + RESULT selectChannel(int i); + + // iRdsDecoder + std::string getText(int i=0); + void showRassSlidePicture(); + void showRassInteractivePic(int page, int subpage); + ePyObject getRassInteractiveMask(); + + // iSubserviceList + int getNumberOfSubservices(); + RESULT getSubservice(eServiceReference &subservice, unsigned int n); + + // iTimeshiftService + RESULT startTimeshift(); + RESULT stopTimeshift(bool swToLive=true); + int isTimeshiftActive(); + int isTimeshiftEnabled(); + RESULT activateTimeshift(); + RESULT setNextPlaybackFile(const char *fn); + RESULT saveTimeshiftFile(); + std::string getTimeshiftFilename(); + void switchToLive(); + + // iCueSheet + PyObject *getCutList(); + void setCutList(SWIG_PYOBJECT(ePyObject)); + void setCutListEnable(int enable); + + // iSubtitleOutput + RESULT enableSubtitles(iSubtitleUser *user, SubtitleTrack &track); + RESULT disableSubtitles(); + RESULT getSubtitleList(std::vector<SubtitleTrack> &sublist); + RESULT getCachedSubtitle(SubtitleTrack &track); + + // iAudioDelay + int getAC3Delay(); + int getPCMDelay(); + void setAC3Delay(int); + void setPCMDelay(int); + + // iStreamableService + RESULT stream(ePtr<iStreamableService> &ptr); + ePtr<iStreamData> getStreamingData(); + +protected: + friend class eServiceFactoryDVB; + eServiceReference m_reference; + + ePtr<eDVBService> m_dvb_service; + + ePtr<iTSMPEGDecoder> m_decoder; + int m_decoder_index; + int m_have_video_pid; + int m_tune_state; + + /* in timeshift mode, we essentially have two channels, and thus pmt handlers. */ + eDVBServicePMTHandler m_service_handler_timeshift; + eDVBServiceEITHandler m_event_handler; + int m_current_audio_pid; + + eDVBServicePlay(const eServiceReference &ref, eDVBService *service); + + /* events */ + void gotNewEvent(int error); + + void serviceEvent(int event); + void serviceEventTimeshift(int event); + Signal2<void,iPlayableService*,int> m_event; + + int m_is_stream; + + /* pvr */ + int m_is_pvr, m_is_paused, m_timeshift_enabled, m_timeshift_active, m_timeshift_changed, m_save_timeshift; + int m_first_program_info; + + std::string m_timeshift_file, m_timeshift_file_next; + int m_timeshift_fd; + ePtr<iDVBDemux> m_decode_demux; + + int m_current_audio_stream; + int selectAudioStream(int n = -1); + RESULT setFastForward_internal(int ratio, bool final_seek=false); + + /* timeshift */ + ePtr<iDVBTSRecorder> m_record; + std::set<int> m_pids_active; + + void updateTimeshiftPids(); + + void resetTimeshift(int start); + void switchToTimeshift(); + + void updateDecoder(bool sendSeekableStateChanged=false); + + int m_skipmode; + int m_fastforward; + int m_slowmotion; + + /* cuesheet */ + + ePtr<eCueSheet> m_cue; + + struct cueEntry + { + pts_t where; + unsigned int what; + + bool operator < (const struct cueEntry &o) const + { + return where < o.where; + } + cueEntry(const pts_t &where, unsigned int what) : + where(where), what(what) + { + } + }; + + std::multiset<cueEntry> m_cue_entries; + int m_cuesheet_changed, m_cutlist_enabled; + + void loadCuesheet(); + void saveCuesheet(); + + void cutlistToCuesheet(); + + iSubtitleUser *m_subtitle_widget; + + /* teletext subtitles */ + ePtr<eDVBTeletextParser> m_teletext_parser; + void newSubtitleStream(); + ePtr<eConnection> m_new_subtitle_stream_connection; + void newSubtitlePage(const eDVBTeletextSubtitlePage &p); + ePtr<eConnection> m_new_subtitle_page_connection; + std::list<eDVBTeletextSubtitlePage> m_subtitle_pages; + + /* dvb subtitles */ + ePtr<eDVBSubtitleParser> m_subtitle_parser; + void newDVBSubtitlePage(const eDVBSubtitlePage &p); + ePtr<eConnection> m_new_dvb_subtitle_page_connection; + std::list<eDVBSubtitlePage> m_dvb_subtitle_pages; + + ePtr<eTimer> m_subtitle_sync_timer; + void checkSubtitleTiming(); + + ePtr<eTimer> m_nownext_timer; + void updateEpgCacheNowNext(); + + /* radiotext */ + ePtr<eDVBRdsDecoder> m_rds_decoder; + ePtr<eConnection> m_rds_decoder_event_connection; + void rdsDecoderEvent(int); + + ePtr<eConnection> m_video_event_connection; + void video_event(struct iTSMPEGDecoder::videoEvent); + + virtual ePtr<iTsSource> createTsSource(eServiceReferenceDVB &ref, int packetsize = 188); +}; + +class eStaticServiceDVBBouquetInformation: public iStaticServiceInformation +{ + DECLARE_REF(eStaticServiceDVBBouquetInformation); + eServiceReference m_playable_service; +public: + eServiceReference &getPlayableService() { return m_playable_service; } + RESULT getName(const eServiceReference &ref, std::string &name); + int getLength(const eServiceReference &ref); + int isPlayable(const eServiceReference &ref, const eServiceReference &ignore, bool simulate); + RESULT getEvent(const eServiceReference &ref, ePtr<eServiceEvent> &ptr, time_t start_time); +}; + +#endif diff --git a/lib/service/servicedvbrecord.cpp b/lib/service/servicedvbrecord.cpp new file mode 100644 index 0000000..3e91bb1 --- /dev/null +++ b/lib/service/servicedvbrecord.cpp @@ -0,0 +1,621 @@ +#include <lib/service/servicedvbrecord.h> +#include <lib/base/eerror.h> +#include <lib/dvb/epgcache.h> +#include <lib/dvb/metaparser.h> +#include <lib/base/httpstream.h> +#include <fcntl.h> + + /* for cutlist */ +#include <byteswap.h> +#include <netinet/in.h> + + +DEFINE_REF(eDVBServiceRecord); + +eDVBServiceRecord::eDVBServiceRecord(const eServiceReferenceDVB &ref, bool isstreamclient): m_ref(ref) +{ + CONNECT(m_service_handler.serviceEvent, eDVBServiceRecord::serviceEvent); + CONNECT(m_event_handler.m_eit_changed, eDVBServiceRecord::gotNewEvent); + m_state = stateIdle; + m_want_record = 0; + m_record_ecm = false; + m_descramble = true; + m_is_stream_client = isstreamclient; + m_tuned = 0; + m_target_fd = -1; + m_error = 0; + m_streaming = 0; + m_simulate = false; + m_last_event_id = -1; +} + +void eDVBServiceRecord::serviceEvent(int event) +{ + eDebug("RECORD service event %d", event); + switch (event) + { + case eDVBServicePMTHandler::eventTuned: + { + eDebug("tuned.."); + m_tuned = 1; + + /* start feeding EIT updates */ + ePtr<iDVBDemux> m_demux; + if (!m_service_handler.getDataDemux(m_demux)) + { + eServiceReferenceDVB &ref = (eServiceReferenceDVB&) m_ref; + int sid = ref.getParentServiceID().get(); + if (!sid) + sid = ref.getServiceID().get(); + if ( ref.getParentTransportStreamID().get() && + ref.getParentTransportStreamID() != ref.getTransportStreamID() ) + m_event_handler.startOther(m_demux, sid); + else + m_event_handler.start(m_demux, sid); + } + + if (m_state == stateRecording && m_want_record) + doRecord(); + m_event((iRecordableService*)this, evTunedIn); + break; + } + case eDVBServicePMTHandler::eventTuneFailed: + { + eDebug("record failed to tune"); + m_event((iRecordableService*)this, evTuneFailed); + break; + } + case eDVBServicePMTHandler::eventNewProgramInfo: + { + if (m_state == stateIdle) + doPrepare(); + else if (m_want_record) /* doRecord can be called from Prepared and Recording state */ + doRecord(); + m_event((iRecordableService*)this, evNewProgramInfo); + break; + } + case eDVBServicePMTHandler::eventMisconfiguration: + m_error = errMisconfiguration; + m_event((iRecordableService*)this, evTuneFailed); + break; + case eDVBServicePMTHandler::eventNoResources: + m_error = errNoResources; + m_event((iRecordableService*)this, evTuneFailed); + break; + case eDVBServicePMTHandler::eventStopped: + /* recording data source has stopped, stop recording */ + stop(); + m_event((iRecordableService*)this, evRecordAborted); + break; + } +} + +RESULT eDVBServiceRecord::prepare(const char *filename, time_t begTime, time_t endTime, int eit_event_id, const char *name, const char *descr, const char *tags, bool descramble, bool recordecm) +{ + m_filename = filename; + m_streaming = 0; + m_descramble = descramble; + m_record_ecm = recordecm; + + if (m_state == stateIdle) + { + int ret = doPrepare(); + if (!ret) + { + eServiceReferenceDVB ref = m_ref.getParentServiceReference(); + ePtr<eDVBResourceManager> res_mgr; + eDVBMetaParser meta; + std::string service_data; + if (!ref.valid()) + ref = m_ref; + if (!eDVBResourceManager::getInstance(res_mgr)) + { + ePtr<iDVBChannelList> db; + if (!res_mgr->getChannelList(db)) + { + ePtr<eDVBService> service; + if (!db->getService(ref, service)) + { + char tmp[255]; + sprintf(tmp, "f:%x", service->m_flags); + service_data += tmp; + // cached pids + for (int x=0; x < eDVBService::cacheMax; ++x) + { + int entry = service->getCacheEntry((eDVBService::cacheID)x); + if (entry != -1) + { + sprintf(tmp, ",c:%02d%04x", x, entry); + service_data += tmp; + } + } + } + } + } + meta.m_time_create = begTime; + meta.m_ref = m_ref; + meta.m_data_ok = 1; + meta.m_service_data = service_data; + if (name) + meta.m_name = name; + if (descr) + meta.m_description = descr; + if (tags) + meta.m_tags = tags; + meta.m_scrambled = m_record_ecm; /* assume we will record scrambled data, when ecm will be included in the recording */ + ret = meta.updateMeta(filename) ? -255 : 0; + if (!ret) + { + const eit_event_struct *event = 0; + eEPGCache::getInstance()->Lock(); + if ( eit_event_id != -1 ) + { + eDebug("query epg event id %d", eit_event_id); + eEPGCache::getInstance()->lookupEventId(ref, eit_event_id, event); + } + if ( !event && (begTime != -1 && endTime != -1) ) + { + time_t queryTime = begTime + ((endTime-begTime)/2); + tm beg, end, query; + localtime_r(&begTime, &beg); + localtime_r(&endTime, &end); + localtime_r(&queryTime, &query); + eDebug("query stime %d:%d:%d, etime %d:%d:%d, qtime %d:%d:%d", + beg.tm_hour, beg.tm_min, beg.tm_sec, + end.tm_hour, end.tm_min, end.tm_sec, + query.tm_hour, query.tm_min, query.tm_sec); + eEPGCache::getInstance()->lookupEventTime(ref, queryTime, event); + } + if ( event ) + { + eDebug("found event.. store to disc"); + std::string fname = filename; + fname.erase(fname.length()-2, 2); + fname+="eit"; + int fd = open(fname.c_str(), O_CREAT|O_WRONLY, 0666); + if (fd>-1) + { + int evLen=HILO(event->descriptors_loop_length)+12/*EIT_LOOP_SIZE*/; + int wr = ::write( fd, (unsigned char*)event, evLen ); + if ( wr != evLen ) + eDebug("eit write error (%m)"); + ::close(fd); + } + } + eEPGCache::getInstance()->Unlock(); + } + } + return ret; + } + return -1; +} + +RESULT eDVBServiceRecord::prepareStreaming(bool descramble, bool includeecm) +{ + m_filename = ""; + m_streaming = 1; + m_descramble = descramble; + m_record_ecm = includeecm; + if (m_state == stateIdle) + return doPrepare(); + return -1; +} + +RESULT eDVBServiceRecord::start(bool simulate) +{ + m_simulate = simulate; + m_want_record = 1; + /* when tune wasn't yet successfully, doRecord stays in "prepared"-state which is fine. */ + m_event((iRecordableService*)this, evStart); + return doRecord(); +} + +RESULT eDVBServiceRecord::stop() +{ + if (!m_simulate) + eDebug("stop recording!"); + if (m_state == stateRecording) + { + if (m_record) + m_record->stop(); + if (m_target_fd >= 0) + { + ::close(m_target_fd); + m_target_fd = -1; + } + + saveCutlist(); + + m_state = statePrepared; + } else if (!m_simulate) + eDebug("(was not recording)"); + if (m_state == statePrepared) + { + m_record = 0; + m_state = stateIdle; + } + m_event((iRecordableService*)this, evRecordStopped); + return 0; +} + +int eDVBServiceRecord::doPrepare() +{ + /* allocate a ts recorder if we don't already have one. */ + if (m_state == stateIdle) + { + eDVBServicePMTHandler::serviceType servicetype; + if (m_streaming) + { + servicetype = m_record_ecm ? eDVBServicePMTHandler::scrambled_streamserver : eDVBServicePMTHandler::streamserver; + } + else + { + servicetype = m_record_ecm ? eDVBServicePMTHandler::scrambled_recording : eDVBServicePMTHandler::recording; + } + m_pids_active.clear(); + m_state = statePrepared; + ePtr<iTsSource> source; + /* + * NOTE: we do not have to create a source for simulated recordings, + * we will not get to the point where the source is going to be used + */ + if (!m_simulate && !m_ref.path.empty()) + { + if (m_is_stream_client) + { + /* + * streams are considered to be descrambled by default; + * user can indicate a stream is scrambled, by using servicetype id + 0x100 + */ + m_descramble = (m_ref.type == eServiceFactoryDVB::id + 0x100); + m_record_ecm = false; + servicetype = eDVBServicePMTHandler::streamclient; + eHttpStream *f = new eHttpStream(); + f->open(m_ref.path.c_str()); + source = ePtr<iTsSource>(f); + } + else + { + /* re-record a recording */ + servicetype = eDVBServicePMTHandler::offline; + eRawFile *f = new eRawFile(); + f->open(m_ref.path.c_str()); + source = ePtr<iTsSource>(f); + } + } + return m_service_handler.tuneExt(m_ref, 0, source, m_ref.path.c_str(), 0, m_simulate, NULL, servicetype, m_descramble); + } + return 0; +} + +int eDVBServiceRecord::doRecord() +{ + int err = doPrepare(); + if (err) + { + m_error = errTuneFailed; + m_event((iRecordableService*)this, evRecordFailed); + return err; + } + + if (!m_tuned) + return 0; /* try it again when we are tuned in */ + + if (!m_record && m_tuned && !m_streaming && !m_simulate) + { + eDebug("Recording to %s...", m_filename.c_str()); + ::remove(m_filename.c_str()); + int fd = ::open(m_filename.c_str(), O_WRONLY|O_CREAT|O_LARGEFILE, 0666); + if (fd == -1) + { + eDebug("eDVBServiceRecord - can't open recording file!"); + m_error = errOpenRecordFile; + m_event((iRecordableService*)this, evRecordFailed); + return errOpenRecordFile; + } + + ePtr<iDVBDemux> demux; + if (m_service_handler.getDataDemux(demux)) + { + eDebug("eDVBServiceRecord - NO DEMUX available!"); + m_error = errNoDemuxAvailable; + m_event((iRecordableService*)this, evRecordFailed); + return errNoDemuxAvailable; + } + demux->createTSRecorder(m_record); + if (!m_record) + { + eDebug("eDVBServiceRecord - no ts recorder available."); + m_error = errNoTsRecorderAvailable; + m_event((iRecordableService*)this, evRecordFailed); + return errNoTsRecorderAvailable; + } + m_record->setTargetFD(fd); + m_record->setTargetFilename(m_filename); + m_record->connectEvent(slot(*this, &eDVBServiceRecord::recordEvent), m_con_record_event); + + m_target_fd = fd; + } + + if (m_streaming) + { + m_state = stateRecording; + eDebug("start streaming..."); + } else + { + eDebug("start recording..."); + + eDVBServicePMTHandler::program program; + if (m_service_handler.getProgramInfo(program)) + eDebug("getting program info failed."); + else + { + std::set<int> pids_to_record; + + pids_to_record.insert(0); // PAT + + if (program.pmtPid != -1) + pids_to_record.insert(program.pmtPid); // PMT + + int timing_pid = -1, timing_stream_type = -1; + iDVBTSRecorder::timing_pid_type timing_pid_type = iDVBTSRecorder::none; + + eDebugNoNewLine("RECORD: have %zd video stream(s)", program.videoStreams.size()); + if (!program.videoStreams.empty()) + { + eDebugNoNewLine(" ("); + for (std::vector<eDVBServicePMTHandler::videoStream>::const_iterator + i(program.videoStreams.begin()); + i != program.videoStreams.end(); ++i) + { + pids_to_record.insert(i->pid); + + if (timing_pid == -1) + { + timing_pid = i->pid; + timing_stream_type = i->type; + timing_pid_type = iDVBTSRecorder::video_pid; + } + + if (i != program.videoStreams.begin()) + eDebugNoNewLine(", "); + eDebugNoNewLine("%04x", i->pid); + } + eDebugNoNewLine(")"); + } + eDebugNoNewLine(", and %zd audio stream(s)", program.audioStreams.size()); + if (!program.audioStreams.empty()) + { + eDebugNoNewLine(" ("); + for (std::vector<eDVBServicePMTHandler::audioStream>::const_iterator + i(program.audioStreams.begin()); + i != program.audioStreams.end(); ++i) + { + pids_to_record.insert(i->pid); + + if (timing_pid == -1) + { + timing_pid = i->pid; + timing_stream_type = i->type; + timing_pid_type = iDVBTSRecorder::audio_pid; + } + + if (i != program.audioStreams.begin()) + eDebugNoNewLine(", "); + eDebugNoNewLine("%04x", i->pid); + } + eDebugNoNewLine(")"); + } + if (!program.subtitleStreams.empty()) + { + eDebugNoNewLine(" ("); + for (std::vector<eDVBServicePMTHandler::subtitleStream>::const_iterator + i(program.subtitleStreams.begin()); + i != program.subtitleStreams.end(); ++i) + { + pids_to_record.insert(i->pid); + + if (i != program.subtitleStreams.begin()) + eDebugNoNewLine(", "); + eDebugNoNewLine("%04x", i->pid); + } + eDebugNoNewLine(")"); + } + eDebugNoNewLine(", and the pcr pid is %04x", program.pcrPid); + if (program.pcrPid >= 0 && program.pcrPid < 0x1fff) + pids_to_record.insert(program.pcrPid); + eDebug(", and the text pid is %04x", program.textPid); + if (program.textPid != -1) + pids_to_record.insert(program.textPid); // Videotext + + if (m_record_ecm) + { + for (std::list<eDVBServicePMTHandler::program::capid_pair>::const_iterator i(program.caids.begin()); + i != program.caids.end(); ++i) + { + if (i->capid >= 0) pids_to_record.insert(i->capid); + } + } + + /* find out which pids are NEW and which pids are obsolete.. */ + std::set<int> new_pids, obsolete_pids; + + std::set_difference(pids_to_record.begin(), pids_to_record.end(), + m_pids_active.begin(), m_pids_active.end(), + std::inserter(new_pids, new_pids.begin())); + + std::set_difference( + m_pids_active.begin(), m_pids_active.end(), + pids_to_record.begin(), pids_to_record.end(), + std::inserter(obsolete_pids, obsolete_pids.begin()) + ); + + for (std::set<int>::iterator i(new_pids.begin()); i != new_pids.end(); ++i) + { + eDebug("ADD PID: %04x", *i); + m_record->addPID(*i); + } + + for (std::set<int>::iterator i(obsolete_pids.begin()); i != obsolete_pids.end(); ++i) + { + eDebug("REMOVED PID: %04x", *i); + m_record->removePID(*i); + } + + if (timing_pid != -1) + m_record->setTimingPID(timing_pid, timing_pid_type, timing_stream_type); + + m_pids_active = pids_to_record; + + if (m_state != stateRecording) + { + m_record->start(); + m_state = stateRecording; + } + } + } + m_error = 0; + m_event((iRecordableService*)this, evRecordRunning); + return 0; +} + +RESULT eDVBServiceRecord::frontendInfo(ePtr<iFrontendInformation> &ptr) +{ + ptr = this; + return 0; +} + +RESULT eDVBServiceRecord::connectEvent(const Slot2<void,iRecordableService*,int> &event, ePtr<eConnection> &connection) +{ + connection = new eConnection((iRecordableService*)this, m_event.connect(event)); + return 0; +} + +RESULT eDVBServiceRecord::stream(ePtr<iStreamableService> &ptr) +{ + ptr = this; + return 0; +} + +ePtr<iStreamData> eDVBServiceRecord::getStreamingData() +{ + ePtr<iStreamData> retval; + eDVBServicePMTHandler::program program; + if (m_tuned && !m_service_handler.getProgramInfo(program)) + { + retval = new eDVBServicePMTHandler::eStreamData(program); + } + + return retval; +} + +void eDVBServiceRecord::recordEvent(int event) +{ + switch (event) + { + case iDVBTSRecorder::eventWriteError: + eWarning("[eDVBServiceRecord] record write error"); + stop(); + m_event((iRecordableService*)this, evRecordWriteError); + return; + default: + eDebug("unhandled record event %d", event); + } +} + +void eDVBServiceRecord::gotNewEvent(int /*error*/) +{ + ePtr<eServiceEvent> event_now; + m_event_handler.getEvent(event_now, 0); + + if (!event_now) + return; + + int event_id = event_now->getEventId(); + + pts_t p; + + if (m_record) + { + if (m_record->getCurrentPCR(p)) + eDebug("getting PCR failed!"); + else + { + m_event_timestamps[event_id] = p; + eDebug("pcr of eit change: %llx", p); + } + } + + if (event_id != m_last_event_id) + eDebug("[eDVBServiceRecord] now running: %s (%d seconds)", event_now->getEventName().c_str(), event_now->getDuration()); + + m_last_event_id = event_id; + + m_event((iRecordableService*)this, evNewEventInfo); +} + +void eDVBServiceRecord::saveCutlist() +{ + /* XXX: dupe of eDVBServicePlay::saveCuesheet, refactor plz */ + std::string filename = m_filename + ".cuts"; + + eDVBTSTools tstools; + + if (tstools.openFile(m_filename.c_str())) + { + eDebug("[eDVBServiceRecord] saving cutlist failed because tstools failed"); + return; + } + + // If a cuts file exists, append to it (who cares about sorting it) + FILE *f = fopen(filename.c_str(), "a+b"); + if (f) + { + unsigned long long where; + int what; + + for (std::map<int,pts_t>::iterator i(m_event_timestamps.begin()); i != m_event_timestamps.end(); ++i) + { + pts_t p = i->second; + off_t offset = 0; // fixme, we need to note down both + if (tstools.fixupPTS(offset, p)) + { + eDebug("[eDVBServiceRecord] fixing up PTS failed, not saving"); + continue; + } + eDebug("fixed up %llx to %llx (offset %llx)", i->second, p, offset); + where = htobe64(p); + what = htonl(2); /* mark */ + fwrite(&where, sizeof(where), 1, f); + fwrite(&what, sizeof(what), 1, f); + } + fclose(f); + } + +} + +RESULT eDVBServiceRecord::subServices(ePtr<iSubserviceList> &ptr) +{ + ptr = this; + return 0; +} + +int eDVBServiceRecord::getNumberOfSubservices() +{ + ePtr<eServiceEvent> evt; + if (!m_event_handler.getEvent(evt, 0)) + return evt->getNumOfLinkageServices(); + return 0; +} + +RESULT eDVBServiceRecord::getSubservice(eServiceReference &sub, unsigned int n) +{ + ePtr<eServiceEvent> evt; + if (!m_event_handler.getEvent(evt, 0)) + { + if (!evt->getLinkageService(sub, m_ref, n)) + return 0; + } + sub.type=eServiceReference::idInvalid; + return -1; +} diff --git a/lib/service/servicedvbrecord.h b/lib/service/servicedvbrecord.h new file mode 100644 index 0000000..5475268 --- /dev/null +++ b/lib/service/servicedvbrecord.h @@ -0,0 +1,78 @@ +#ifndef __servicedvbrecord_h +#define __servicedvbrecord_h + +#include <lib/service/iservice.h> +#include <lib/dvb/idvb.h> + +#include <lib/dvb/pmt.h> +#include <lib/dvb/eit.h> +#include <set> + +#include <lib/service/servicedvb.h> + +class eDVBServiceRecord: public eDVBServiceBase, + public iRecordableService, + public iStreamableService, + public iSubserviceList, + public Object +{ + DECLARE_REF(eDVBServiceRecord); +public: + RESULT connectEvent(const Slot2<void,iRecordableService*,int> &event, ePtr<eConnection> &connection); + RESULT prepare(const char *filename, time_t begTime, time_t endTime, int eit_event_id, const char *name, const char *descr, const char *tags, bool descramble, bool recordecm); + RESULT prepareStreaming(bool descramble, bool includeecm); + RESULT start(bool simulate=false); + RESULT stop(); + RESULT stream(ePtr<iStreamableService> &ptr); + RESULT getError(int &error) { error = m_error; return 0; } + RESULT frontendInfo(ePtr<iFrontendInformation> &ptr); + RESULT subServices(ePtr<iSubserviceList> &ptr); + + // iStreamableService + ePtr<iStreamData> getStreamingData(); + + // iSubserviceList + int getNumberOfSubservices(); + RESULT getSubservice(eServiceReference &subservice, unsigned int n); +private: + enum { stateIdle, statePrepared, stateRecording }; + bool m_simulate; + int m_state, m_want_record; + bool m_record_ecm; + bool m_descramble; + bool m_is_stream_client; + friend class eServiceFactoryDVB; + eDVBServiceRecord(const eServiceReferenceDVB &ref, bool isstreamclient = false); + + eDVBServiceEITHandler m_event_handler; + + eServiceReferenceDVB m_ref; + + ePtr<iDVBTSRecorder> m_record; + ePtr<eConnection> m_con_record_event; + + int m_recording, m_tuned, m_error; + std::set<int> m_pids_active; + std::string m_filename; + + std::map<int,pts_t> m_event_timestamps; + int m_target_fd; + int m_streaming; + int m_last_event_id; + + int doPrepare(); + int doRecord(); + + /* events */ + void serviceEvent(int event); + Signal2<void,iRecordableService*,int> m_event; + + /* recorder events */ + void recordEvent(int event); + + /* eit updates */ + void gotNewEvent(int error); + void saveCutlist(); +}; + +#endif diff --git a/lib/service/servicedvbstream.cpp b/lib/service/servicedvbstream.cpp new file mode 100644 index 0000000..c82daf3 --- /dev/null +++ b/lib/service/servicedvbstream.cpp @@ -0,0 +1,323 @@ +#include <lib/service/servicedvbstream.h> +#include <lib/base/eerror.h> +#include <lib/dvb/epgcache.h> +#include <lib/dvb/metaparser.h> +#include <lib/base/nconfig.h> +#include <fcntl.h> + +DEFINE_REF(eDVBServiceStream); + +eDVBServiceStream::eDVBServiceStream() +{ + CONNECT(m_service_handler.serviceEvent, eDVBServiceStream::serviceEvent); + CONNECT(m_event_handler.m_eit_changed, eDVBServiceStream::gotNewEvent); + m_state = stateIdle; + m_want_record = 0; + m_stream_ecm = false; + m_stream_eit = false; + m_stream_ait = false; + m_tuned = 0; + m_target_fd = -1; +} + +void eDVBServiceStream::serviceEvent(int event) +{ + eDebug("STREAM service event %d", event); + switch (event) + { + case eDVBServicePMTHandler::eventTuned: + { + eDebug("tuned.."); + m_tuned = 1; + + /* start feeding EIT updates */ + ePtr<iDVBDemux> m_demux; + if (!m_service_handler.getDataDemux(m_demux)) + { + eServiceReferenceDVB &ref = (eServiceReferenceDVB&) m_ref; + int sid = ref.getParentServiceID().get(); + if (!sid) + sid = ref.getServiceID().get(); + if ( ref.getParentTransportStreamID().get() && + ref.getParentTransportStreamID() != ref.getTransportStreamID() ) + m_event_handler.startOther(m_demux, sid); + else + m_event_handler.start(m_demux, sid); + } + + if (m_state == stateRecording && m_want_record) + doRecord(); + break; + } + case eDVBServicePMTHandler::eventTuneFailed: + { + eDebug("stream failed to tune"); + tuneFailed(); + break; + } + case eDVBServicePMTHandler::eventNewProgramInfo: + { + if (m_state == stateIdle) + doPrepare(); + else if (m_want_record) /* doRecord can be called from Prepared and Recording state */ + doRecord(); + break; + } + case eDVBServicePMTHandler::eventMisconfiguration: + tuneFailed(); + break; + case eDVBServicePMTHandler::eventNoResources: + tuneFailed(); + break; + } +} + +int eDVBServiceStream::start(const char *serviceref, int fd) +{ + if (m_state != stateIdle) return -1; + m_ref = eServiceReferenceDVB(serviceref); + if (doPrepare() < 0) return -1; + m_target_fd = fd; + m_want_record = 1; + return doRecord(); +} + +RESULT eDVBServiceStream::stop() +{ + eDebug("stop streaming"); + + if (m_state == stateRecording) + { + if (m_record) + m_record->stop(); + + m_state = statePrepared; + } + + if (m_state == statePrepared) + { + m_record = 0; + m_state = stateIdle; + } + return 0; +} + +int eDVBServiceStream::doPrepare() +{ + /* allocate a ts recorder if we don't already have one. */ + if (m_state == stateIdle) + { + m_stream_ecm = eConfigManager::getConfigBoolValue("config.streaming.stream_ecm"); + m_stream_eit = eConfigManager::getConfigBoolValue("config.streaming.stream_eit"); + m_stream_ait = eConfigManager::getConfigBoolValue("config.streaming.stream_ait"); + m_pids_active.clear(); + m_state = statePrepared; + eDVBServicePMTHandler::serviceType servicetype = m_stream_ecm ? eDVBServicePMTHandler::scrambled_streamserver : eDVBServicePMTHandler::streamserver; + bool descramble = eConfigManager::getConfigBoolValue("config.streaming.descramble", true); + return m_service_handler.tune(m_ref, 0, 0, 0, NULL, servicetype, descramble); + } + return 0; +} + +int eDVBServiceStream::doRecord() +{ + int err = doPrepare(); + if (err) + { + return err; + } + + if (!m_tuned) + return 0; /* try it again when we are tuned in */ + + if (!m_record && m_tuned) + { + ePtr<iDVBDemux> demux; + if (m_service_handler.getDataDemux(demux)) + { + eDebug("eDVBServiceStream - NO DEMUX available"); + return -1; + } + demux->createTSRecorder(m_record, /*packetsize*/ 188, /*streaming*/ true); + if (!m_record) + { + eDebug("eDVBServiceStream - no ts recorder available."); + return -1; + } + m_record->setTargetFD(m_target_fd); + m_record->connectEvent(slot(*this, &eDVBServiceStream::recordEvent), m_con_record_event); + } + + eDebug("start streaming..."); + + eDVBServicePMTHandler::program program; + if (m_service_handler.getProgramInfo(program)) + { + eDebug("getting program info failed."); + } + else + { + std::set<int> pids_to_record; + + pids_to_record.insert(0); // PAT + + if (program.pmtPid != -1) + pids_to_record.insert(program.pmtPid); // PMT + + int timing_pid = -1, timing_stream_type = -1; + iDVBTSRecorder::timing_pid_type timing_pid_type = iDVBTSRecorder::none; + + eDebugNoNewLine("STREAM: have %zd video stream(s)", program.videoStreams.size()); + if (!program.videoStreams.empty()) + { + eDebugNoNewLine(" ("); + for (std::vector<eDVBServicePMTHandler::videoStream>::const_iterator + i(program.videoStreams.begin()); + i != program.videoStreams.end(); ++i) + { + pids_to_record.insert(i->pid); + + if (timing_pid == -1) + { + timing_pid = i->pid; + timing_stream_type = i->type; + timing_pid_type = iDVBTSRecorder::video_pid; + } + + if (i != program.videoStreams.begin()) + eDebugNoNewLine(", "); + eDebugNoNewLine("%04x", i->pid); + } + eDebugNoNewLine(")"); + } + eDebugNoNewLine(", and %zd audio stream(s)", program.audioStreams.size()); + if (!program.audioStreams.empty()) + { + eDebugNoNewLine(" ("); + for (std::vector<eDVBServicePMTHandler::audioStream>::const_iterator + i(program.audioStreams.begin()); + i != program.audioStreams.end(); ++i) + { + pids_to_record.insert(i->pid); + + if (timing_pid == -1) + { + timing_pid = i->pid; + timing_stream_type = i->type; + timing_pid_type = iDVBTSRecorder::audio_pid; + } + + if (i != program.audioStreams.begin()) + eDebugNoNewLine(", "); + eDebugNoNewLine("%04x", i->pid); + } + eDebugNoNewLine(")"); + } + if (!program.subtitleStreams.empty()) + { + eDebugNoNewLine(" ("); + for (std::vector<eDVBServicePMTHandler::subtitleStream>::const_iterator + i(program.subtitleStreams.begin()); + i != program.subtitleStreams.end(); ++i) + { + pids_to_record.insert(i->pid); + + if (i != program.subtitleStreams.begin()) + eDebugNoNewLine(", "); + eDebugNoNewLine("%04x", i->pid); + } + eDebugNoNewLine(")"); + } + eDebugNoNewLine(", and the pcr pid is %04x", program.pcrPid); + if (program.pcrPid >= 0 && program.pcrPid < 0x1fff) + pids_to_record.insert(program.pcrPid); + eDebug(", and the text pid is %04x", program.textPid); + if (program.textPid != -1) + pids_to_record.insert(program.textPid); // Videotext + + if (m_stream_ecm) + { + for (std::list<eDVBServicePMTHandler::program::capid_pair>::const_iterator i(program.caids.begin()); + i != program.caids.end(); ++i) + { + if (i->capid >= 0) pids_to_record.insert(i->capid); + } + } + + if (m_stream_ait) + { + if (program.aitPid >= 0) pids_to_record.insert(program.aitPid); + } + + if (m_stream_eit) + { + pids_to_record.insert(0x12); + } + + /* include TDT pid, really low bandwidth, should not hurt anyone */ + pids_to_record.insert(0x14); + + /* find out which pids are NEW and which pids are obsolete.. */ + std::set<int> new_pids, obsolete_pids; + + std::set_difference(pids_to_record.begin(), pids_to_record.end(), + m_pids_active.begin(), m_pids_active.end(), + std::inserter(new_pids, new_pids.begin())); + + std::set_difference( + m_pids_active.begin(), m_pids_active.end(), + pids_to_record.begin(), pids_to_record.end(), + std::inserter(obsolete_pids, obsolete_pids.begin()) + ); + + for (std::set<int>::iterator i(new_pids.begin()); i != new_pids.end(); ++i) + { + eDebug("ADD PID: %04x", *i); + m_record->addPID(*i); + } + + for (std::set<int>::iterator i(obsolete_pids.begin()); i != obsolete_pids.end(); ++i) + { + eDebug("REMOVED PID: %04x", *i); + m_record->removePID(*i); + } + + if (timing_pid != -1) + m_record->setTimingPID(timing_pid, timing_pid_type, timing_stream_type); + + m_pids_active = pids_to_record; + + if (m_state != stateRecording) + { + m_record->start(); + m_state = stateRecording; + } + } + + return 0; +} + +void eDVBServiceStream::recordEvent(int event) +{ + switch (event) + { + case iDVBTSRecorder::eventWriteError: + eWarning("[eDVBServiceStream] stream write error"); + streamStopped(); + break; + default: + eDebug("unhandled record event %d", event); + break; + } +} + +void eDVBServiceStream::gotNewEvent(int /*error*/) +{ + ePtr<eServiceEvent> event_now; + m_event_handler.getEvent(event_now, 0); + + if (!event_now) + return; + + /* TODO: inject EIT section into the stream */ +} diff --git a/lib/service/servicedvbstream.h b/lib/service/servicedvbstream.h new file mode 100644 index 0000000..608f381 --- /dev/null +++ b/lib/service/servicedvbstream.h @@ -0,0 +1,53 @@ +#ifndef __servicedvbstream_h +#define __servicedvbstream_h + +#include <lib/dvb/idvb.h> + +#include <lib/dvb/pmt.h> +#include <lib/dvb/eit.h> +#include <set> + +#include <lib/service/servicedvb.h> + +class eDVBServiceStream: public eDVBServiceBase, public Object +{ + DECLARE_REF(eDVBServiceStream); +public: + eDVBServiceStream(); + int start(const char *serviceref, int fd); + int stop(); + +private: + enum { stateIdle, statePrepared, stateRecording }; + int m_state, m_want_record; + bool m_stream_ecm, m_stream_eit, m_stream_ait; + + eDVBServiceEITHandler m_event_handler; + + eServiceReferenceDVB m_ref; + + ePtr<iDVBTSRecorder> m_record; + ePtr<eConnection> m_con_record_event; + + int m_recording, m_tuned; + std::set<int> m_pids_active; + + int m_target_fd; + + int doPrepare(); + int doRecord(); + + /* events */ + void serviceEvent(int event); + + /* recorder events */ + void recordEvent(int event); + + /* eit updates */ + void gotNewEvent(int error); + + virtual void streamStopped() {} + virtual void tuneFailed() {} +}; + +#endif diff --git a/lib/service/servicedvd.cpp b/lib/service/servicedvd.cpp new file mode 100644 index 0000000..16c972e --- /dev/null +++ b/lib/service/servicedvd.cpp @@ -0,0 +1,1045 @@ +/* yes, it's dvd */ +#include <lib/base/eerror.h> +#include <lib/base/object.h> +#include <lib/base/ebase.h> +#include <lib/base/nconfig.h> +#include <string> +#include <lib/service/service.h> +#include <lib/base/init_num.h> +#include <lib/base/init.h> +#include <lib/gui/esubtitle.h> +#include <lib/gdi/gpixmap.h> + +#include <byteswap.h> +#include <netinet/in.h> +#ifndef BYTE_ORDER +#error no byte order defined! +#endif + +extern "C" { +#include <dreamdvd/ddvdlib.h> +} +#include "servicedvd.h" + +// eServiceFactoryDVD + +eServiceFactoryDVD::eServiceFactoryDVD() +{ + ePtr<eServiceCenter> sc; + + eServiceCenter::getPrivInstance(sc); + if (sc) + { + std::list<std::string> extensions; + extensions.push_back("iso"); + extensions.push_back("img"); + sc->addServiceFactory(eServiceFactoryDVD::id, this, extensions); + } +} + +eServiceFactoryDVD::~eServiceFactoryDVD() +{ + ePtr<eServiceCenter> sc; + + eServiceCenter::getPrivInstance(sc); + if (sc) + sc->removeServiceFactory(eServiceFactoryDVD::id); +} + +DEFINE_REF(eServiceFactoryDVD) + + // iServiceHandler +RESULT eServiceFactoryDVD::play(const eServiceReference &ref, ePtr<iPlayableService> &ptr) +{ + // check resources... + ptr = new eServiceDVD(ref); + return 0; +} + +RESULT eServiceFactoryDVD::record(const eServiceReference &/*ref*/, ePtr<iRecordableService> &ptr) +{ + ptr=0; + return -1; +} + +RESULT eServiceFactoryDVD::list(const eServiceReference &, ePtr<iListableService> &ptr) +{ + ptr=0; + return -1; +} + + +RESULT eServiceFactoryDVD::info(const eServiceReference &/*ref*/, ePtr<iStaticServiceInformation> &ptr) +{ + ptr=0; + return -1; +} + +RESULT eServiceFactoryDVD::offlineOperations(const eServiceReference &, ePtr<iServiceOfflineOperations> &ptr) +{ + ptr = 0; + return -1; +} + +DEFINE_REF(eServiceDVDInfoContainer); + +int eServiceDVDInfoContainer::getInteger(unsigned int index) const +{ + if (index >= integerValues.size()) return -1; + return integerValues[index]; +} + +std::string eServiceDVDInfoContainer::getString(unsigned int index) const +{ + if (index >= stringValues.size()) return ""; + return stringValues[index]; +} + +void eServiceDVDInfoContainer::addInteger(int value) +{ + integerValues.push_back(value); +} + +void eServiceDVDInfoContainer::addString(const char *value) +{ + stringValues.push_back(value); +} + + +// eServiceDVD + +DEFINE_REF(eServiceDVD); + +eServiceDVD::eServiceDVD(eServiceReference ref): + m_ref(ref), m_ddvdconfig(ddvd_create()), m_subtitle_widget(0), m_state(stIdle), + m_current_trick(0), m_pump(eApp, 1), m_width(-1), m_height(-1), + m_aspect(-1), m_framerate(-1), m_progressive(-1) +{ + int aspect = DDVD_16_9; + int policy = DDVD_PAN_SCAN; + int policy2 = DDVD_PAN_SCAN; + + char tmp[255]; + ssize_t rd; + + m_sn = eSocketNotifier::create(eApp, ddvd_get_messagepipe_fd(m_ddvdconfig), eSocketNotifier::Read|eSocketNotifier::Priority|eSocketNotifier::Error|eSocketNotifier::Hungup); + eDebug("SERVICEDVD construct!"); + // create handle + ddvd_set_dvd_path(m_ddvdconfig, ref.path.c_str()); + ddvd_set_ac3thru(m_ddvdconfig, 0); + + std::string ddvd_language = eConfigManager::getConfigValue("config.osd.language"); + if (ddvd_language != "") + ddvd_set_language(m_ddvdconfig, (ddvd_language.substr(0,2)).c_str()); + + int fd = open("/proc/stb/video/aspect", O_RDONLY); + if (fd > -1) + { + rd = read(fd, tmp, 255); + if (rd > 2 && !strncmp(tmp, "4:3", 3)) + aspect = DDVD_4_3; + else if (rd > 4 && !strncmp(tmp, "16:10", 5)) + aspect = DDVD_16_10; + close(fd); + } + + fd = open("/proc/stb/video/policy", O_RDONLY); + if (fd > -1) + { + rd = read(fd, tmp, 255); + if (rd > 6 && !strncmp(tmp, "bestfit", 7)) + policy = DDVD_JUSTSCALE; + else if (rd > 8 && !strncmp(tmp, "letterbox", 9)) + policy = DDVD_LETTERBOX; + close(fd); + } + +#ifdef DDVD_SUPPORTS_16_10_SCALING + fd = open("/proc/stb/video/policy2", O_RDONLY); + if (fd > -1) + { + rd = read(fd, tmp, 255); + if (rd > 6 && !strncmp(tmp, "bestfit", 7)) + policy2 = DDVD_JUSTSCALE; + else if (rd > 8 && !strncmp(tmp, "letterbox", 9)) + policy2 = DDVD_LETTERBOX; + close(fd); + } + ddvd_set_video_ex(m_ddvdconfig, aspect, policy, policy2, DDVD_PAL /*unused*/); +#else + ddvd_set_video(m_ddvdconfig, aspect, policy, DDVD_PAL /*unused*/); +#warning please update libdreamdvd for 16:10 scaling support! +#endif + + CONNECT(m_sn->activated, eServiceDVD::gotMessage); + CONNECT(m_pump.recv_msg, eServiceDVD::gotThreadMessage); + strcpy(m_ddvd_titlestring,""); + m_cue_pts = 0; + pause(); +} + +void eServiceDVD::gotThreadMessage(const int &msg) +{ + switch(msg) + { + case 1: // thread stopped + m_state = stStopped; + m_event(this, evStopped); + break; + } +} + +void eServiceDVD::gotMessage(int /*what*/) +{ + switch(ddvd_get_next_message(m_ddvdconfig,1)) + { + case DDVD_COLORTABLE_UPDATE: + { +/* + struct ddvd_color ctmp[4]; + ddvd_get_last_colortable(ddvdconfig, ctmp); + int i=0; + while (i < 4) + { + rd1[252+i]=ctmp[i].red; + bl1[252+i]=ctmp[i].blue; + gn1[252+i]=ctmp[i].green; + tr1[252+i]=ctmp[i].trans; + i++; + } + if(ioctl(fb, FBIOPUTCMAP, &colormap) == -1) + { + printf("Framebuffer: <FBIOPUTCMAP failed>\n"); + return 1; + } +*/ + eDebug("no support for 8bpp framebuffer in dvdplayer yet!"); + break; + } + case DDVD_SCREEN_UPDATE: + eDebug("DVD_SCREEN_UPDATE!"); + if (m_subtitle_widget) { + int x1,x2,y1,y2; + ddvd_get_last_blit_area(m_ddvdconfig, &x1, &x2, &y1, &y2); + + int x_offset = 0, y_offset = 0, width = 720, height = 576; + +#ifdef DDVD_SUPPORTS_GET_BLIT_DESTINATION + ddvd_get_blit_destination(m_ddvdconfig, &x_offset, &y_offset, &width, &height); + eDebug("values got from ddvd: %d %d %d %d", x_offset, y_offset, width, height); + y_offset = -y_offset; + width -= x_offset * 2; + height -= y_offset * 2; +#endif + eRect dest(x_offset, y_offset, width, height); + + if (dest.width() && dest.height()) + m_subtitle_widget->setPixmap(m_pixmap, eRect(x1, y1, (x2-x1)+1, (y2-y1)+1), dest); + } + break; + case DDVD_SHOWOSD_STATE_PLAY: + { + eDebug("DVD_SHOWOSD_STATE_PLAY!"); + m_current_trick = 0; + m_event(this, evUser+1); + break; + } + case DDVD_SHOWOSD_STATE_PAUSE: + { + eDebug("DVD_SHOWOSD_STATE_PAUSE!"); + m_event(this, evUser+2); + break; + } + case DDVD_SHOWOSD_STATE_FFWD: + { + eDebug("DVD_SHOWOSD_STATE_FFWD!"); + m_event(this, evUser+3); + break; + } + case DDVD_SHOWOSD_STATE_FBWD: + { + eDebug("DVD_SHOWOSD_STATE_FBWD!"); + m_event(this, evUser+4); + break; + } + case DDVD_SHOWOSD_STRING: + { + eDebug("DVD_SHOWOSD_STRING!"); + m_event(this, evUser+5); + break; + } + case DDVD_SHOWOSD_AUDIO: + { + eDebug("DVD_SHOWOSD_AUDIO!"); + m_event(this, evUser+6); + break; + } + case DDVD_SHOWOSD_SUBTITLE: + { + eDebug("DVD_SHOWOSD_SUBTITLE!"); + m_event((iPlayableService*)this, evUpdatedInfo); + m_event(this, evUser+7); + break; + } + case DDVD_EOF_REACHED: + eDebug("DVD_EOF_REACHED!"); + m_event(this, evEOF); + break; + case DDVD_SOF_REACHED: + eDebug("DVD_SOF_REACHED!"); + m_event(this, evSOF); + break; + case DDVD_SHOWOSD_ANGLE: + { + int current, num; + ddvd_get_angle_info(m_ddvdconfig, ¤t, &num); + eDebug("DVD_ANGLE_INFO: %d / %d", current, num); + m_event(this, evUser+13); + break; + } + case DDVD_SHOWOSD_TIME: + { + static struct ddvd_time last_info; + struct ddvd_time info; +// eDebug("DVD_SHOWOSD_TIME!"); + ddvd_get_last_time(m_ddvdconfig, &info); + if ( info.pos_chapter != last_info.pos_chapter ) + m_event(this, evUser+8); // chapterUpdated + if ( info.pos_title != last_info.pos_title ) + m_event(this, evUser+9); // titleUpdated + memcpy(&last_info, &info, sizeof(struct ddvd_time)); + break; + } + case DDVD_SHOWOSD_TITLESTRING: + { + ddvd_get_title_string(m_ddvdconfig, m_ddvd_titlestring); + eDebug("DDVD_SHOWOSD_TITLESTRING: %s",m_ddvd_titlestring); + loadCuesheet(); + if (!m_cue_pts) + unpause(); + m_event(this, evStart); + break; + } + case DDVD_MENU_OPENED: + eDebug("DVD_MENU_OPENED!"); + m_state = stMenu; + m_event(this, evSeekableStatusChanged); + m_event(this, evUser+11); + break; + case DDVD_MENU_CLOSED: + eDebug("DVD_MENU_CLOSED!"); + m_state = stRunning; + m_event(this, evSeekableStatusChanged); + m_event(this, evUser+12); + break; +#ifdef DDVD_SUPPORTS_PICTURE_INFO + case DDVD_SIZE_CHANGED: + { + int changed = m_width != -1 && m_height != -1 && m_aspect != -1; + ddvd_get_last_size(m_ddvdconfig, &m_width, &m_height, &m_aspect); + if (changed) + m_event((iPlayableService*)this, evVideoSizeChanged); + break; + } + case DDVD_PROGRESSIVE_CHANGED: + { + int changed = m_progressive != -1; + ddvd_get_last_progressive(m_ddvdconfig, &m_progressive); + if (changed) + m_event((iPlayableService*)this, evVideoProgressiveChanged); + break; + } + case DDVD_FRAMERATE_CHANGED: + { + int changed = m_framerate != -1; + ddvd_get_last_framerate(m_ddvdconfig, &m_framerate); + if (changed) + m_event((iPlayableService*)this, evVideoFramerateChanged); + break; + } +#endif + default: + break; + } +} + +eServiceDVD::~eServiceDVD() +{ + eDebug("SERVICEDVD destruct!"); + kill(); + saveCuesheet(); + ddvd_close(m_ddvdconfig); + disableSubtitles(); +} + +RESULT eServiceDVD::connectEvent(const Slot2<void,iPlayableService*,int> &event, ePtr<eConnection> &connection) +{ + connection = new eConnection((iPlayableService*)this, m_event.connect(event)); + return 0; +} + +RESULT eServiceDVD::start() +{ + ASSERT(m_state == stIdle); + m_state = stRunning; + eDebug("eServiceDVD starting"); +// m_event(this, evStart); + return 0; +} + +RESULT eServiceDVD::stop() +{ + ASSERT(m_state != stIdle); + if (m_state == stStopped) + return -1; + eDebug("DVD: stop %s", m_ref.path.c_str()); + m_state = stStopped; + ddvd_send_key(m_ddvdconfig, DDVD_KEY_EXIT); + + return 0; +} + +RESULT eServiceDVD::setTarget(int /*target*/) +{ + return -1; +} + +RESULT eServiceDVD::pause(ePtr<iPauseableService> &ptr) +{ + ptr=this; + return 0; +} + +RESULT eServiceDVD::seek(ePtr<iSeekableService> &ptr) +{ + ptr=this; + return 0; +} + +RESULT eServiceDVD::subtitle(ePtr<iSubtitleOutput> &ptr) +{ + ptr=this; + return 0; +} + +RESULT eServiceDVD::audioTracks(ePtr<iAudioTrackSelection> &ptr) +{ + ptr = this; + return 0; +} + +int eServiceDVD::getNumberOfTracks() +{ + int i = 0; + ddvd_get_audio_count(m_ddvdconfig, &i); + return i; +} + +int eServiceDVD::getCurrentTrack() +{ + int audio_id,audio_type; + uint16_t audio_lang; + ddvd_get_last_audio(m_ddvdconfig, &audio_id, &audio_lang, &audio_type); + return audio_id; +} + +RESULT eServiceDVD::selectTrack(unsigned int i) +{ + ddvd_set_audio(m_ddvdconfig, i); + return 0; +} + +RESULT eServiceDVD::getTrackInfo(struct iAudioTrackInfo &info, unsigned int audio_id) +{ + int audio_type; + uint16_t audio_lang; + ddvd_get_audio_byid(m_ddvdconfig, audio_id, &audio_lang, &audio_type); + char audio_string[3]={audio_lang >> 8, audio_lang, 0}; + info.m_pid = audio_id+1; + info.m_language = audio_string; + switch(audio_type) + { + case DDVD_MPEG: + info.m_description = "MPEG"; + break; + case DDVD_AC3: + info.m_description = "AC3"; + break; + case DDVD_DTS: + info.m_description = "DTS"; + break; + case DDVD_LPCM: + info.m_description = "LPCM"; + break; + default: + info.m_description = "und"; + } + return 0; +} + +RESULT eServiceDVD::keys(ePtr<iServiceKeys> &ptr) +{ + ptr=this; + return 0; +} + + // iPausableService +RESULT eServiceDVD::setSlowMotion(int ratio) +{ + eDebug("setSlowmode(%d)", ratio); + // pass ratio as repeat factor. + // ratio=2 means 1/2 speed + // ratio=3 means 1/3 speed + ddvd_send_key(m_ddvdconfig, ratio < 0 ? DDVD_KEY_SLOWBWD : DDVD_KEY_SLOWFWD); + ddvd_send_key(m_ddvdconfig, ratio); + return 0; +} + +RESULT eServiceDVD::setFastForward(int trick) +{ + eDebug("setTrickmode(%d)", trick); + ddvd_send_key(m_ddvdconfig, trick < 0 ? DDVD_KEY_FASTBWD : DDVD_KEY_FASTFWD); + ddvd_send_key(m_ddvdconfig, trick); + return 0; +} + +RESULT eServiceDVD::pause() +{ + eDebug("set pause!\n"); + ddvd_send_key(m_ddvdconfig, DDVD_KEY_PAUSE); + return 0; +} + +RESULT eServiceDVD::unpause() +{ + eDebug("set unpause!\n"); + ddvd_send_key(m_ddvdconfig, DDVD_KEY_PLAY); + return 0; +} + +void eServiceDVD::thread() +{ + eDebug("eServiceDVD dvd thread started"); + hasStarted(); + ddvd_run(m_ddvdconfig); +} + +void eServiceDVD::thread_finished() +{ + eDebug("eServiceDVD dvd thread finished"); + m_pump.send(1); // inform main thread +} + +RESULT eServiceDVD::info(ePtr<iServiceInformation>&i) +{ + i = this; + return 0; +} + +RESULT eServiceDVD::getName(std::string &name) +{ + if ( m_ddvd_titlestring[0] != '\0' ) + name = m_ddvd_titlestring; + else + if ( !m_ref.name.empty() ) + name = m_ref.name; + else + name = m_ref.path; + return 0; +} + +int eServiceDVD::getInfo(int w) +{ + switch (w) + { + case sCurrentChapter: + { + struct ddvd_time info; + ddvd_get_last_time(m_ddvdconfig, &info); + return info.pos_chapter; + } + case sTotalChapters: + { + struct ddvd_time info; + ddvd_get_last_time(m_ddvdconfig, &info); + return info.end_chapter; + } + case sCurrentTitle: + { + struct ddvd_time info; + ddvd_get_last_time(m_ddvdconfig, &info); + return info.pos_title; + } + case sTotalTitles: + { + struct ddvd_time info; + ddvd_get_last_time(m_ddvdconfig, &info); + return info.end_title; + } + case sTXTPID: // we abuse HAS_TELEXT icon in InfoBar to signalize subtitles status + { + int spu_id; + uint16_t spu_lang; + ddvd_get_last_spu(m_ddvdconfig, &spu_id, &spu_lang); + return spu_id; + } + case sUser+6: + case sUser+7: + case sUser+8: + return resIsPyObject; +#ifdef DDVD_SUPPORTS_PICTURE_INFO + case sVideoWidth: + return m_width; + case sVideoHeight: + return m_height; + case sAspect: + return m_aspect; + case sProgressive: + return m_progressive; + case sFrameRate: + return m_framerate; +#endif + default: + return resNA; + } +} + +std::string eServiceDVD::getInfoString(int w) +{ + switch(w) + { + case sServiceref: + return m_ref.toString(); + default: + eDebug("unhandled getInfoString(%d)", w); + } + return ""; +} + +ePtr<iServiceInfoContainer> eServiceDVD::getInfoObject(int w) +{ + eServiceDVDInfoContainer *container = new eServiceDVDInfoContainer; + ePtr<iServiceInfoContainer> retval = container; + eDebug("eServiceDVD::getInfoObject %d", w); + switch (w) + { + case sUser + 6: + { + int audio_id,audio_type; + uint16_t audio_lang; + ddvd_get_last_audio(m_ddvdconfig, &audio_id, &audio_lang, &audio_type); + char audio_string[3] = {audio_lang >> 8, audio_lang, 0}; + container->addInteger(audio_id + 1); + container->addString(audio_string); + switch (audio_type) + { + case DDVD_MPEG: + container->addString("MPEG"); + break; + case DDVD_AC3: + container->addString("AC3"); + break; + case DDVD_DTS: + container->addString("DTS"); + break; + case DDVD_LPCM: + container->addString("LPCM"); + break; + } + break; + } + case sUser + 7: + { + int spu_id; + uint16_t spu_lang; + ddvd_get_last_spu(m_ddvdconfig, &spu_id, &spu_lang); + char spu_string[3] = {spu_lang >> 8, spu_lang, 0}; + if (spu_id == -1) + { + container->addInteger(0); + container->addString(""); + } + else + { + container->addInteger(spu_id + 1); + container->addString(spu_string); + } + break; + } + case sUser + 8: + { + int current, num; + ddvd_get_angle_info(m_ddvdconfig, ¤t, &num); + container->addInteger(current); + container->addInteger(num); + break; + } + default: + eDebug("unhandled getInfoObject(%d)", w); + } + return retval; +} + +RESULT eServiceDVD::enableSubtitles(iSubtitleUser *user, SubtitleTrack &track) +{ + eSize size = eSize(720, 576); + + if (m_subtitle_widget) m_subtitle_widget->destroy(); + m_subtitle_widget = user; + + int pid = -1; + + if (track.pid >= 0) + { + pid = track.pid - 1; + + ddvd_set_spu(m_ddvdconfig, pid); + m_event(this, evUser+7); + } + + eDebug("eServiceDVD::enableSubtitles %i", pid); + + if (!m_pixmap) + { + m_pixmap = new gPixmap(size, 32, 1); /* allocate accel surface (if possible) */ +#ifdef DDVD_SUPPORTS_GET_BLIT_DESTINATION + ddvd_set_lfb_ex(m_ddvdconfig, (unsigned char *)m_pixmap->surface->data, size.width(), size.height(), 4, size.width()*4, 1); +#else + ddvd_set_lfb(m_ddvdconfig, (unsigned char *)m_pixmap->surface->data, size.width(), size.height(), 4, size.width()*4); +#warning please update libdreamdvd for fast scaling +#endif + run(); // start the thread + } + + return 0; +} + +RESULT eServiceDVD::disableSubtitles() +{ + if (m_subtitle_widget) m_subtitle_widget->destroy(); + m_subtitle_widget = 0; + return 0; +} + +RESULT eServiceDVD::getSubtitleList(std::vector<struct SubtitleTrack> &subtitlelist) +{ + unsigned int spu_count = 0; + ddvd_get_spu_count(m_ddvdconfig, &spu_count); + + for ( unsigned int spu_id = 0; spu_id < spu_count; spu_id++ ) + { + struct SubtitleTrack track; + uint16_t spu_lang; + ddvd_get_spu_byid(m_ddvdconfig, spu_id, &spu_lang); + char spu_string[3]={spu_lang >> 8, spu_lang, 0}; + + track.type = 2; + track.pid = spu_id + 1; + track.page_number = 5; + track.magazine_number = 0; + track.language_code = spu_string; + subtitlelist.push_back(track); + } + return 0; +} + +RESULT eServiceDVD::getCachedSubtitle(struct SubtitleTrack &track) +{ + eDebug("eServiceDVD::getCachedSubtitle nyi"); + return -1; +} + +RESULT eServiceDVD::getLength(pts_t &len) +{ +// eDebug("eServiceDVD::getLength"); + struct ddvd_time info; + ddvd_get_last_time(m_ddvdconfig, &info); + len = info.end_hours * 3600; + len += info.end_minutes * 60; + len += info.end_seconds; + len *= 90000; + return 0; +} + +RESULT eServiceDVD::seekTo(pts_t to) +{ + eDebug("eServiceDVD::seekTo(%lld)",to); + if ( to > 0 ) + { + eDebug("set_resume_pos: resume_info.title=%d, chapter=%d, block=%lu, audio_id=%d, audio_lock=%d, spu_id=%d, spu_lock=%d",m_resume_info.title,m_resume_info.chapter,m_resume_info.block,m_resume_info.audio_id, m_resume_info.audio_lock, m_resume_info.spu_id, m_resume_info.spu_lock); + ddvd_set_resume_pos(m_ddvdconfig, m_resume_info); + } + return 0; +} + +RESULT eServiceDVD::seekRelative(int direction, pts_t to) +{ + int seconds = to / 90000; + seconds *= direction; + eDebug("seekRelative %d %d", direction, seconds); + ddvd_skip_seconds(m_ddvdconfig, seconds); + return 0; +} + +RESULT eServiceDVD::getPlayPosition(pts_t &pos) +{ + struct ddvd_time info; + ddvd_get_last_time(m_ddvdconfig, &info); + pos = info.pos_hours * 3600; + pos += info.pos_minutes * 60; + pos += info.pos_seconds; +// eDebug("getPlayPosition %lld", pos); + pos *= 90000; + return 0; +} + +RESULT eServiceDVD::seekTitle(int title) +{ + eDebug("setTitle %d", title); + ddvd_set_title(m_ddvdconfig, title); + return 0; +} + +RESULT eServiceDVD::seekChapter(int chapter) +{ + eDebug("setChapter %d", chapter); + if ( chapter > 0 ) + ddvd_set_chapter(m_ddvdconfig, chapter); + return 0; +} + +RESULT eServiceDVD::setTrickmode(int /*trick*/) +{ + return -1; +} + +RESULT eServiceDVD::isCurrentlySeekable() +{ + return m_state == stRunning ? 3 : 0; +} + +RESULT eServiceDVD::keyPressed(int key) +{ + switch(key) + { + case iServiceKeys::keyLeft: + ddvd_send_key(m_ddvdconfig, DDVD_KEY_LEFT); + break; + case iServiceKeys::keyRight: + ddvd_send_key(m_ddvdconfig, DDVD_KEY_RIGHT); + break; + case iServiceKeys::keyUp: + ddvd_send_key(m_ddvdconfig, DDVD_KEY_UP); + break; + case iServiceKeys::keyDown: + ddvd_send_key(m_ddvdconfig, DDVD_KEY_DOWN); + break; + case iServiceKeys::keyOk: + ddvd_send_key(m_ddvdconfig, DDVD_KEY_OK); + break; + case iServiceKeys::keyUser: + ddvd_send_key(m_ddvdconfig, DDVD_KEY_AUDIO); + break; + case iServiceKeys::keyUser+1: + ddvd_send_key(m_ddvdconfig, DDVD_KEY_SUBTITLE); + break; + case iServiceKeys::keyUser+2: + ddvd_send_key(m_ddvdconfig, DDVD_KEY_AUDIOMENU); + break; + case iServiceKeys::keyUser+3: + ddvd_send_key(m_ddvdconfig, DDVD_KEY_NEXT_CHAPTER); + break; + case iServiceKeys::keyUser+4: + ddvd_send_key(m_ddvdconfig, DDVD_KEY_PREV_CHAPTER); + break; + case iServiceKeys::keyUser+5: + ddvd_send_key(m_ddvdconfig, DDVD_KEY_NEXT_TITLE); + break; + case iServiceKeys::keyUser+6: + ddvd_send_key(m_ddvdconfig, DDVD_KEY_PREV_TITLE); + break; + case iServiceKeys::keyUser+7: + ddvd_send_key(m_ddvdconfig, DDVD_KEY_MENU); + break; + case iServiceKeys::keyUser+8: + ddvd_send_key(m_ddvdconfig, DDVD_KEY_ANGLE); + break; + default: + return -1; + } + return 0; +} + +RESULT eServiceDVD::cueSheet(ePtr<iCueSheet> &ptr) +{ + if (m_cue_pts) + { + ptr = this; + return 0; + } + ptr = 0; + return -1; +} + +PyObject *eServiceDVD::getCutList() +{ + ePyObject list = PyList_New(1); + ePyObject tuple = PyTuple_New(2); + PyTuple_SetItem(tuple, 0, PyLong_FromLongLong(m_cue_pts)); + PyTuple_SetItem(tuple, 1, PyInt_FromLong(3)); + PyList_SetItem(list, 0, tuple); + return list; +} + +void eServiceDVD::setCutList(ePyObject /*list*/) +{ +} + +void eServiceDVD::setCutListEnable(int /*enable*/) +{ +} + +void eServiceDVD::loadCuesheet() +{ + FILE* f; + { + std::string filename = m_ref.path; + filename += "/dvd.cuts"; + f = fopen(filename.c_str(), "rb"); + } + if (f == NULL) + { + char filename[128]; + if ( m_ddvd_titlestring[0] != '\0' ) + snprintf(filename, sizeof(filename), "/home/root/dvd-%s.cuts", m_ddvd_titlestring); + else + { + struct stat st; + if (stat(m_ref.path.c_str(), &st) == 0) + { + // DVD has no name and cannot be written. Use the mtime to generate something unique... + snprintf(filename, 128, "/home/root/dvd-%x.cuts", st.st_mtime); + } + else + { + strcpy(filename, "/home/root/dvd-untitled.cuts"); + } + } + eDebug("eServiceDVD::loadCuesheet() filename=%s",filename); + f = fopen(filename, "rb"); + } + + + if (f) + { + unsigned long long where; + unsigned int what; + + if (!fread(&where, sizeof(where), 1, f)) + return; + if (!fread(&what, sizeof(what), 1, f)) + return; + + where = be64toh(where); + what = ntohl(what); + + if (!fread(&m_resume_info, sizeof(struct ddvd_resume), 1, f)) + return; + if (!fread(&what, sizeof(what), 1, f)) + return; + + what = ntohl(what); + if (what != 4 ) + return; + + m_cue_pts = where; + + fclose(f); + } else + eDebug("cutfile not found!"); + + if (m_cue_pts) + { + m_event((iPlayableService*)this, evCuesheetChanged); + eDebug("eServiceDVD::loadCuesheet() pts=%lld",m_cue_pts); + } +} + +void eServiceDVD::saveCuesheet() +{ + eDebug("eServiceDVD::saveCuesheet()"); + + struct ddvd_resume resume_info; + ddvd_get_resume_pos(m_ddvdconfig, &resume_info); + + if (resume_info.title) + { + struct ddvd_time info; + ddvd_get_last_time(m_ddvdconfig, &info); + pts_t pos; + pos = info.pos_hours * 3600; + pos += info.pos_minutes * 60; + pos += info.pos_seconds; + pos *= 90000; + m_cue_pts = pos; + eDebug("ddvd_get_resume_pos resume_info.title=%d, chapter=%d, block=%lu, audio_id=%d, audio_lock=%d, spu_id=%d, spu_lock=%d (pts=%llu)",resume_info.title,resume_info.chapter,resume_info.block,resume_info.audio_id, resume_info.audio_lock, resume_info.spu_id, resume_info.spu_lock,m_cue_pts); + } + else + { + eDebug("we're in a menu or somewhere else funny. so save cuesheet with pts=0"); + m_cue_pts = 0; + } + + FILE* f; + { + std::string filename = m_ref.path; + filename += "/dvd.cuts"; + f = fopen(filename.c_str(), "wb"); + } + if (f == NULL) + { + char filename[128]; + if ( m_ddvd_titlestring[0] != '\0' ) + snprintf(filename, sizeof(filename), "/home/root/dvd-%s.cuts", m_ddvd_titlestring); + else + { + struct stat st; + if (stat(m_ref.path.c_str(), &st) == 0) + { + // DVD has no name and cannot be written. Use the mtime to generate something unique... + snprintf(filename, 128, "/home/root/dvd-%x.cuts", st.st_mtime); + } + else + { + strcpy(filename, "/home/root/dvd-untitled.cuts"); + } + } + eDebug("eServiceDVD::saveCuesheet() filename=%s",filename); + f = fopen(filename, "wb"); + } + + if (f) + { + unsigned long long where; + int what; + + where = htobe64(m_cue_pts); + what = htonl(3); + fwrite(&where, sizeof(where), 1, f); + fwrite(&what, sizeof(what), 1, f); + + what = htonl(4); + fwrite(&resume_info, sizeof(struct ddvd_resume), 1, f); + fwrite(&what, sizeof(what), 1, f); + + fclose(f); + } +} + +eAutoInitPtr<eServiceFactoryDVD> init_eServiceFactoryDVD(eAutoInitNumbers::service+1, "eServiceFactoryDVD"); + +PyMODINIT_FUNC +initservicedvd(void) +{ + Py_InitModule("servicedvd", NULL); +} diff --git a/lib/service/servicedvd.h b/lib/service/servicedvd.h new file mode 100644 index 0000000..a5ae51a --- /dev/null +++ b/lib/service/servicedvd.h @@ -0,0 +1,156 @@ +#ifndef __servicedvd_h +#define __servicedvd_h + +#include <lib/base/message.h> +#include <lib/base/ebase.h> +#include <lib/base/thread.h> +#include <lib/service/iservice.h> + +class eSubtitleWidget; +class gPixmap; +class eStaticServiceDVDInfo; + +class eServiceFactoryDVD: public iServiceHandler +{ + DECLARE_REF(eServiceFactoryDVD); +public: + eServiceFactoryDVD(); + virtual ~eServiceFactoryDVD(); + enum { id = 0x1111 }; + + // iServiceHandler + RESULT play(const eServiceReference &, ePtr<iPlayableService> &ptr); + RESULT record(const eServiceReference &, ePtr<iRecordableService> &ptr); + RESULT list(const eServiceReference &, ePtr<iListableService> &ptr); + RESULT info(const eServiceReference &, ePtr<iStaticServiceInformation> &ptr); + RESULT offlineOperations(const eServiceReference &, ePtr<iServiceOfflineOperations> &ptr); +}; + +class eServiceDVDInfoContainer: public iServiceInfoContainer +{ + DECLARE_REF(eServiceDVDInfoContainer); + + std::vector<int> integerValues; + std::vector<std::string> stringValues; + +public: + int getInteger(unsigned int index) const; + std::string getString(unsigned int index) const; + + void addInteger(int value); + void addString(const char *value); +}; + +class eServiceDVD: public iPlayableService, public iPauseableService, public iSeekableService, public iAudioTrackSelection, + public iServiceInformation, public iSubtitleOutput, public iServiceKeys, public iCueSheet, public eThread, public Object +{ + friend class eServiceFactoryDVD; + DECLARE_REF(eServiceDVD); +public: + virtual ~eServiceDVD(); + // not implemented (yet) + RESULT audioChannel(ePtr<iAudioChannelSelection> &ptr) { ptr = 0; return -1; } + RESULT audioTracks(ePtr<iAudioTrackSelection> &ptr); + RESULT frontendInfo(ePtr<iFrontendInformation> &ptr) { ptr = 0; return -1; } + RESULT subServices(ePtr<iSubserviceList> &ptr) { ptr = 0; return -1; } + RESULT timeshift(ePtr<iTimeshiftService> &ptr) { ptr = 0; return -1; } + RESULT audioDelay(ePtr<iAudioDelay> &ptr) { ptr = 0; return -1; } + RESULT rdsDecoder(ePtr<iRdsDecoder> &ptr) { ptr = 0; return -1; } + RESULT stream(ePtr<iStreamableService> &ptr) { ptr = 0; return -1; } + RESULT streamed(ePtr<iStreamedService> &ptr) { ptr = 0; return -1; } + RESULT cueSheet(ePtr<iCueSheet> &ptr); + + // iPlayableService + RESULT connectEvent(const Slot2<void,iPlayableService*,int> &event, ePtr<eConnection> &connection); + RESULT start(); + RESULT stop(); + RESULT setTarget(int target); + RESULT info(ePtr<iServiceInformation> &ptr); + RESULT pause(ePtr<iPauseableService> &ptr); + RESULT subtitle(ePtr<iSubtitleOutput> &ptr); + RESULT seek(ePtr<iSeekableService> &ptr); + RESULT keys(ePtr<iServiceKeys> &ptr); + + // iPausableService + RESULT pause(); + RESULT unpause(); + RESULT setSlowMotion(int ratio); + RESULT setFastForward(int ratio); + + // iSubtitleOutput + RESULT enableSubtitles(iSubtitleUser *user, SubtitleTrack &track); + RESULT disableSubtitles(); + RESULT getSubtitleList(std::vector<SubtitleTrack> &sublist); + RESULT getCachedSubtitle(SubtitleTrack &track); + + // iSeekableService + RESULT getLength(pts_t &len); + RESULT seekTo(pts_t to); + RESULT seekRelative(int direction, pts_t to); + RESULT getPlayPosition(pts_t &pos); + RESULT setTrickmode(int trick=0); + RESULT isCurrentlySeekable(); + RESULT seekChapter(int chapter); + RESULT seekTitle(int title); + + // iServiceInformation + RESULT getName(std::string &name); + int getInfo(int w); + std::string getInfoString(int w); + ePtr<iServiceInfoContainer> getInfoObject(int w); + + // iCueSheet + PyObject *getCutList(); + void setCutList(SWIG_PYOBJECT(ePyObject)); + void setCutListEnable(int enable); + + // iAudioTrackSelection + int getNumberOfTracks(); + RESULT selectTrack(unsigned int i); + RESULT getTrackInfo(struct iAudioTrackInfo &, unsigned int n); + int getCurrentTrack(); + + // iServiceKeys + RESULT keyPressed(int key); + +private: + eServiceDVD(eServiceReference ref); + + void gotMessage(int); // message from dvdlib + void gotThreadMessage(const int &); // message from dvd thread + + // eThread + void thread(); + void thread_finished(); + + eServiceReference m_ref; + + Signal2<void,iPlayableService*,int> m_event; + + struct ddvd *m_ddvdconfig; + ePtr<gPixmap> m_pixmap; + iSubtitleUser *m_subtitle_widget; + + enum + { + stIdle, stRunning, stMenu, stStopped + }; + + int m_state; + int m_current_trick; + + char m_ddvd_titlestring[96]; + + ePtr<eSocketNotifier> m_sn; + eFixedMessagePump<int> m_pump; + + pts_t m_cue_pts; + struct ddvd_resume m_resume_info; + + void loadCuesheet(); + void saveCuesheet(); + + int m_width, m_height, m_aspect, m_framerate, m_progressive; +}; + +#endif diff --git a/lib/service/servicefs.cpp b/lib/service/servicefs.cpp new file mode 100644 index 0000000..b1565bd --- /dev/null +++ b/lib/service/servicefs.cpp @@ -0,0 +1,382 @@ +#include <lib/base/eerror.h> +#include <lib/base/object.h> +#include <string> +#include <errno.h> +#include <lib/service/servicefs.h> +#include <lib/service/service.h> +#include <lib/service/servicedvb.h> +#include <lib/base/init_num.h> +#include <lib/base/init.h> +#include <dirent.h> +#include <sys/types.h> +#include <sys/stat.h> +#include <unistd.h> + +class eStaticServiceFSInformation: public iStaticServiceInformation +{ + DECLARE_REF(eStaticServiceFSInformation); +public: + RESULT getName(const eServiceReference &ref, std::string &name); + int getLength(const eServiceReference &ref) { return -1; } +}; + +DEFINE_REF(eStaticServiceFSInformation); + +RESULT eStaticServiceFSInformation::getName(const eServiceReference &ref, std::string &name) +{ + name = ref.path; + return 0; +} + +// eServiceFactoryFS + +eServiceFactoryFS::eServiceFactoryFS() +{ + ePtr<eServiceCenter> sc; + + eServiceCenter::getPrivInstance(sc); + if (sc) + { + std::list<std::string> extensions; + sc->addServiceFactory(eServiceFactoryFS::id, this, extensions); + } + + m_service_information = new eStaticServiceFSInformation(); +} + +eServiceFactoryFS::~eServiceFactoryFS() +{ + ePtr<eServiceCenter> sc; + + eServiceCenter::getPrivInstance(sc); + if (sc) + sc->removeServiceFactory(eServiceFactoryFS::id); +} + +DEFINE_REF(eServiceFactoryFS) + + // iServiceHandler +RESULT eServiceFactoryFS::play(const eServiceReference &ref, ePtr<iPlayableService> &ptr) +{ + ptr=0; + return -1; +} + +RESULT eServiceFactoryFS::record(const eServiceReference &ref, ePtr<iRecordableService> &ptr) +{ + ptr=0; + return -1; +} + +RESULT eServiceFactoryFS::list(const eServiceReference &ref, ePtr<iListableService> &ptr) +{ + ptr = new eServiceFS(ref.path.c_str(), ref.getName().empty() ? (const char*)0 : ref.getName().c_str()); + return 0; +} + +RESULT eServiceFactoryFS::info(const eServiceReference &ref, ePtr<iStaticServiceInformation> &ptr) +{ + ptr = m_service_information; + return 0; +} + +RESULT eServiceFactoryFS::offlineOperations(const eServiceReference &, ePtr<iServiceOfflineOperations> &ptr) +{ + ptr = 0; + return -1; +} + +// eServiceFS + +DEFINE_REF(eServiceFS); + +eServiceFS::eServiceFS(const char *path, const char *additional_extensions): path(path) +{ + m_list_valid = 0; + if (additional_extensions) + { + size_t slen=strlen(additional_extensions); + char buf[slen+1]; + char *tmp=0, *cmds = buf; + memcpy(buf, additional_extensions, slen+1); + + // strip spaces at beginning + while(cmds[0] == ' ') + { + ++cmds; + --slen; + } + + // strip spaces at the end + while(slen && cmds[slen-1] == ' ') + { + cmds[slen-1] = 0; + --slen; + } + + if (slen) + { + if (*cmds) + { + int id; + char buf2[17]; /* additional extention string is 16 characters + null-termination */ + while(1) + { + tmp = strchr(cmds, ' '); + if (tmp) + *tmp = 0; + if (strstr(cmds, "0x")) + { + if (sscanf(cmds, "0x%x:%16s", &id, buf2) == 2) + m_additional_extensions[id].push_back(buf2); + else + eDebug("parse additional_extension (%s) failed", cmds); + } + else + { + if (sscanf(cmds, "%d:%16s", &id, buf2) == 2) + m_additional_extensions[id].push_back(buf2); + else + eDebug("parse additional_extension (%s) failed", cmds); + } + if (!tmp) + break; + cmds = tmp+1; + while (*cmds && *cmds == ' ') + ++cmds; + } + } + } + } +} + +eServiceFS::~eServiceFS() +{ +} + +int lower(char c) +{ + return std::tolower(static_cast<unsigned char>(c)); +} + +RESULT eServiceFS::getContent(std::list<eServiceReference> &list, bool sorted) +{ + DIR *d=opendir(path.c_str()); + if (!d) + return -errno; + + ePtr<eServiceCenter> sc; + eServiceCenter::getPrivInstance(sc); + + while (dirent *e=readdir(d)) + { + if (!(strcmp(e->d_name, ".") && strcmp(e->d_name, ".."))) + continue; + + std::string filename; + + filename = path; + filename += e->d_name; + + struct stat s; + if (::stat(filename.c_str(), &s) < 0) + continue; + + if (S_ISDIR(s.st_mode) || S_ISLNK(s.st_mode)) + { + filename += "/"; + eServiceReference service(eServiceFactoryFS::id, + eServiceReference::isDirectory| + eServiceReference::canDescent|eServiceReference::mustDescent| + eServiceReference::shouldSort|eServiceReference::sort1, + filename); + service.data[0] = 1; + list.push_back(service); + } else + { + size_t e = filename.rfind('.'); + if (e != std::string::npos && e+1 < filename.length()) + { + std::string extension = filename.substr(e+1); + std::transform(extension.begin(), extension.end(), extension.begin(), lower); + int type = getServiceTypeForExtension(extension); + + if (type == -1) + { + type = sc->getServiceTypeForExtension(extension); + } + + if (type != -1) + { + eServiceReference service(type, + 0, + filename); + service.data[0] = 0; + list.push_back(service); + } + } + } + } + closedir(d); + + if (sorted) + list.sort(iListableServiceCompare(this)); + + return 0; +} + +// The first argument of this function is a format string to specify the order and +// the content of the returned list +// useable format options are +// R = Service Reference (as swig object .. this is very slow) +// S = Service Reference (as python string object .. same as ref.toString()) +// C = Service Reference (as python string object .. same as ref.toCompareString()) +// N = Service Name (as python string object) +// when exactly one return value per service is selected in the format string, +// then each value is directly a list entry +// when more than one value is returned per service, then the list is a list of +// python tuples +// unknown format string chars are returned as python None values ! +PyObject *eServiceFS::getContent(const char* format, bool sorted) +{ + ePyObject ret; + std::list<eServiceReference> tmplist; + int retcount=1; + + if (!format || !(retcount=strlen(format))) + format = "R"; // just return service reference swig object ... + + if (!getContent(tmplist, sorted)) + { + int services=tmplist.size(); + ePtr<iStaticServiceInformation> sptr; + eServiceCenterPtr service_center; + + if (strchr(format, 'N')) + eServiceCenter::getPrivInstance(service_center); + + ret = PyList_New(services); + std::list<eServiceReference>::iterator it(tmplist.begin()); + + for (int cnt=0; cnt < services; ++cnt) + { + eServiceReference &ref=*it++; + ePyObject tuple = retcount > 1 ? PyTuple_New(retcount) : ePyObject(); + for (int i=0; i < retcount; ++i) + { + ePyObject tmp; + switch(format[i]) + { + case 'R': // service reference (swig)object + tmp = NEW_eServiceReference(ref); + break; + case 'C': // service reference compare string + tmp = PyString_FromString(ref.toCompareString().c_str()); + break; + case 'S': // service reference string + tmp = PyString_FromString(ref.toString().c_str()); + break; + case 'N': // service name + if (service_center) + { + service_center->info(ref, sptr); + if (sptr) + { + std::string name; + sptr->getName(ref, name); + if (name.length()) + tmp = PyString_FromString(name.c_str()); + } + } + if (!tmp) + tmp = PyString_FromString("<n/a>"); + break; + default: + if (tuple) + { + tmp = Py_None; + Py_INCREF(Py_None); + } + break; + } + if (tmp) + { + if (tuple) + PyTuple_SET_ITEM(tuple, i, tmp); + else + PyList_SET_ITEM(ret, cnt, tmp); + } + } + if (tuple) + PyList_SET_ITEM(ret, cnt, tuple); + } + } + return ret ? (PyObject*)ret : (PyObject*)PyList_New(0); +} + +RESULT eServiceFS::getNext(eServiceReference &ptr) +{ + if (!m_list_valid) + { + m_list_valid = 1; + int res = getContent(m_list); + if (res) + return res; + } + + if (m_list.empty()) + { + ptr = eServiceReference(); + return -ERANGE; + } + + ptr = m_list.front(); + m_list.pop_front(); + return 0; +} + +int eServiceFS::compareLessEqual(const eServiceReference &a, const eServiceReference &b) +{ + /* directories first */ + if ((a.flags & ~b.flags) & eServiceReference::isDirectory) + return 1; + else if ((~a.flags & b.flags) & eServiceReference::isDirectory) + return 0; + /* sort by filename */ + else + return a.path < b.path; +} + +RESULT eServiceFS::startEdit(ePtr<iMutableServiceList> &res) +{ + res = 0; + return -1; +} + +int eServiceFS::getServiceTypeForExtension(const char *str) +{ + for (std::map<int, std::list<std::string> >::iterator sit(m_additional_extensions.begin()); sit != m_additional_extensions.end(); ++sit) + { + for (std::list<std::string>::iterator eit(sit->second.begin()); eit != sit->second.end(); ++eit) + { + if (*eit == str) + return sit->first; + } + } + return -1; +} + +int eServiceFS::getServiceTypeForExtension(const std::string &str) +{ + for (std::map<int, std::list<std::string> >::iterator sit(m_additional_extensions.begin()); sit != m_additional_extensions.end(); ++sit) + { + for (std::list<std::string>::iterator eit(sit->second.begin()); eit != sit->second.end(); ++eit) + { + if (*eit == str) + return sit->first; + } + } + return -1; +} + +eAutoInitPtr<eServiceFactoryFS> init_eServiceFactoryFS(eAutoInitNumbers::service+1, "eServiceFactoryFS"); diff --git a/lib/service/servicefs.h b/lib/service/servicefs.h new file mode 100644 index 0000000..9f66a81 --- /dev/null +++ b/lib/service/servicefs.h @@ -0,0 +1,46 @@ +#ifndef __servicefs_h +#define __servicefs_h + +#include <lib/service/iservice.h> + +class eServiceFactoryFS: public iServiceHandler +{ + DECLARE_REF(eServiceFactoryFS); +public: + eServiceFactoryFS(); + virtual ~eServiceFactoryFS(); + enum { id = 0x2 }; + + // iServiceHandler + RESULT play(const eServiceReference &, ePtr<iPlayableService> &ptr); + RESULT record(const eServiceReference &, ePtr<iRecordableService> &ptr); + RESULT list(const eServiceReference &, ePtr<iListableService> &ptr); + RESULT info(const eServiceReference &, ePtr<iStaticServiceInformation> &ptr); + RESULT offlineOperations(const eServiceReference &, ePtr<iServiceOfflineOperations> &ptr); +private: + ePtr<iStaticServiceInformation> m_service_information; +}; + +class eServiceFS: public iListableService +{ + DECLARE_REF(eServiceFS); + std::string path; + friend class eServiceFactoryFS; + eServiceFS(const char *path, const char *additional_extensions=0); + std::map<int, std::list<std::string> > m_additional_extensions; + + int m_list_valid; + std::list<eServiceReference> m_list; + int getServiceTypeForExtension(const char *str); + int getServiceTypeForExtension(const std::string &str); +public: + virtual ~eServiceFS(); + + RESULT getContent(std::list<eServiceReference> &list, bool sorted=false); + PyObject *getContent(const char *format, bool sorted=false); + RESULT getNext(eServiceReference &ptr); + int compareLessEqual(const eServiceReference &, const eServiceReference &); + RESULT startEdit(ePtr<iMutableServiceList> &); +}; + +#endif diff --git a/lib/service/servicehdmi.cpp b/lib/service/servicehdmi.cpp new file mode 100644 index 0000000..f2d6194 --- /dev/null +++ b/lib/service/servicehdmi.cpp @@ -0,0 +1,327 @@ +#include <lib/base/ebase.h> +#include <lib/base/eerror.h> +#include <lib/base/init_num.h> +#include <lib/base/init.h> +#include <lib/base/nconfig.h> +#include <lib/base/object.h> +#include <lib/dvb/decoder.h> +#include <lib/dvb/encoder.h> +#include <lib/service/servicehdmi.h> +#include <lib/service/service.h> + +#include <string> + +eServiceFactoryHDMI::eServiceFactoryHDMI() +{ + ePtr<eServiceCenter> sc; + + eServiceCenter::getPrivInstance(sc); + if (sc) + { + std::list<std::string> extensions; + sc->addServiceFactory(eServiceFactoryHDMI::id, this, extensions); + } + + m_service_info = new eStaticServiceHDMIInfo(); +} + +eServiceFactoryHDMI::~eServiceFactoryHDMI() +{ + ePtr<eServiceCenter> sc; + + eServiceCenter::getPrivInstance(sc); + if (sc) + { + sc->removeServiceFactory(eServiceFactoryHDMI::id); + } +} + +DEFINE_REF(eServiceFactoryHDMI) + +RESULT eServiceFactoryHDMI::play(const eServiceReference &ref, ePtr<iPlayableService> &ptr) +{ + ptr = new eServiceHDMI(ref); + return 0; +} + +RESULT eServiceFactoryHDMI::record(const eServiceReference &ref, ePtr<iRecordableService> &ptr) +{ + ptr = new eServiceHDMIRecord(ref); + return 0; +} + +RESULT eServiceFactoryHDMI::list(const eServiceReference &, ePtr<iListableService> &ptr) +{ + ptr = 0; + return -1; +} + +RESULT eServiceFactoryHDMI::info(const eServiceReference &ref, ePtr<iStaticServiceInformation> &ptr) +{ + ptr = m_service_info; + return 0; +} + +RESULT eServiceFactoryHDMI::offlineOperations(const eServiceReference &, ePtr<iServiceOfflineOperations> &ptr) +{ + ptr = 0; + return -1; +} + +DEFINE_REF(eStaticServiceHDMIInfo) + +eStaticServiceHDMIInfo::eStaticServiceHDMIInfo() +{ +} + +RESULT eStaticServiceHDMIInfo::getName(const eServiceReference &ref, std::string &name) +{ + if (ref.name.length()) + { + name = ref.name; + } + else + { + name = "HDMI IN"; + } + return 0; +} + +int eStaticServiceHDMIInfo::getLength(const eServiceReference &ref) +{ + return -1; +} + +int eStaticServiceHDMIInfo::getInfo(const eServiceReference &ref, int w) +{ + return iServiceInformation::resNA; +} + +long long eStaticServiceHDMIInfo::getFileSize(const eServiceReference &ref) +{ + return 0; +} + +eServiceHDMI::eServiceHDMI(eServiceReference ref) + : m_ref(ref), m_decoder_index(0) +{ + +} + +eServiceHDMI::~eServiceHDMI() +{ +} + +DEFINE_REF(eServiceHDMI); + +RESULT eServiceHDMI::connectEvent(const Slot2<void,iPlayableService*,int> &event, ePtr<eConnection> &connection) +{ + connection = new eConnection((iPlayableService*)this, m_event.connect(event)); + return 0; +} + +RESULT eServiceHDMI::start() +{ + m_decoder = new eTSMPEGDecoder(NULL, m_decoder_index); + m_decoder->setVideoPID(1, 0); + m_decoder->setAudioPID(1, 0); + m_decoder->play(); + m_event(this, evStart); + return 0; +} + +RESULT eServiceHDMI::stop() +{ + m_decoder = NULL; + m_event(this, evStopped); + return 0; +} + +RESULT eServiceHDMI::setTarget(int target) +{ + m_decoder_index = target; + return 0; +} + +RESULT eServiceHDMI::info(ePtr<iServiceInformation> &i) +{ + i = this; + return 0; +} + +RESULT eServiceHDMI::getName(std::string &name) +{ + if (m_ref.name.length()) + { + name = m_ref.name; + } + else + { + name = "HDMI IN"; + } + return 0; +} + +int eServiceHDMI::getInfo(int w) +{ + return resNA; +} + +std::string eServiceHDMI::getInfoString(int w) +{ + return ""; +} + +ePtr<iServiceInfoContainer> eServiceHDMI::getInfoObject(int w) +{ + return NULL; +} + +DEFINE_REF(eServiceHDMIRecord); + +eServiceHDMIRecord::eServiceHDMIRecord(const eServiceReference &ref) +{ + m_ref = ref; + m_state = stateIdle; + m_target_fd = -1; + m_error = 0; + m_encoder_fd = -1; + m_thread = NULL; +} + +RESULT eServiceHDMIRecord::prepare(const char *filename, time_t begTime, time_t endTime, int eit_event_id, const char *name, const char *descr, const char *tags, bool descramble, bool recordecm) +{ + m_filename = filename; + + if (m_state == stateIdle) + { + return doPrepare(); + } + return -1; +} + +RESULT eServiceHDMIRecord::prepareStreaming(bool descramble, bool includeecm) +{ + return -1; +} + +RESULT eServiceHDMIRecord::start(bool simulate) +{ + m_simulate = simulate; + m_event((iRecordableService*)this, evStart); + return doRecord(); +} + +RESULT eServiceHDMIRecord::stop() +{ + if (!m_simulate) + eDebug("stop recording!"); + if (m_state == stateRecording) + { + if (m_thread) + { + m_thread->stop(); + m_thread->stopSaveMetaInformation(); + } + if (m_target_fd >= 0) + { + ::close(m_target_fd); + m_target_fd = -1; + } + + m_state = statePrepared; + } else if (!m_simulate) + eDebug("(was not recording)"); + if (m_state == statePrepared) + { + m_thread = NULL; + if (eEncoder::getInstance()) eEncoder::getInstance()->freeEncoder(m_encoder_fd); + m_encoder_fd = -1; + m_state = stateIdle; + } + m_event((iRecordableService*)this, evRecordStopped); + return 0; +} + +int eServiceHDMIRecord::doPrepare() +{ + if (!m_simulate && m_encoder_fd < 0) + { + if (eEncoder::getInstance()) m_encoder_fd = eEncoder::getInstance()->allocateEncoder(m_ref.toString(), 8 * 1024 * 1024, 1280, 720, 25000, false, 0); + if (m_encoder_fd < 0) return -1; + } + m_state = statePrepared; + return 0; +} + +int eServiceHDMIRecord::doRecord() +{ + int err = doPrepare(); + if (err) + { + m_error = errTuneFailed; + m_event((iRecordableService*)this, evRecordFailed); + return err; + } + + if (!m_thread && !m_simulate) + { + eDebug("Recording to %s...", m_filename.c_str()); + ::remove(m_filename.c_str()); + int fd = ::open(m_filename.c_str(), O_WRONLY | O_CREAT | O_LARGEFILE, 0666); + if (fd < 0) + { + eDebug("eServiceHDMIRecord - can't open recording file!"); + m_error = errOpenRecordFile; + m_event((iRecordableService*)this, evRecordFailed); + return errOpenRecordFile; + } + + m_thread = new eDVBRecordFileThread(188, 20); + m_thread->setTargetFD(fd); + + m_target_fd = fd; + } + + eDebug("start recording..."); + + if (m_state != stateRecording) + { + if (m_thread && m_encoder_fd >= 0) + { + m_thread->startSaveMetaInformation(m_filename); + m_thread->start(m_encoder_fd); + } + m_state = stateRecording; + } + + m_error = 0; + m_event((iRecordableService*)this, evRecordRunning); + return 0; +} + +RESULT eServiceHDMIRecord::stream(ePtr<iStreamableService> &ptr) +{ + ptr = NULL; + return -1; +} + +RESULT eServiceHDMIRecord::subServices(ePtr<iSubserviceList> &ptr) +{ + ptr = NULL; + return -1; +} + +RESULT eServiceHDMIRecord::frontendInfo(ePtr<iFrontendInformation> &ptr) +{ + ptr = this; + return 0; +} + +RESULT eServiceHDMIRecord::connectEvent(const Slot2<void,iRecordableService*,int> &event, ePtr<eConnection> &connection) +{ + connection = new eConnection((iRecordableService*)this, m_event.connect(event)); + return 0; +} + +eAutoInitPtr<eServiceFactoryHDMI> init_eServiceFactoryHDMI(eAutoInitNumbers::service + 1, "eServiceFactoryHDMI"); diff --git a/lib/service/servicehdmi.h b/lib/service/servicehdmi.h new file mode 100644 index 0000000..2107380 --- /dev/null +++ b/lib/service/servicehdmi.h @@ -0,0 +1,122 @@ +#ifndef __servicehdmi_h +#define __servicehdmi_h + +#include <lib/base/message.h> +#include <lib/service/iservice.h> +#include <lib/service/servicedvb.h> + +class eStaticServiceHDMIInfo; + +class eServiceFactoryHDMI: public iServiceHandler +{ + DECLARE_REF(eServiceFactoryHDMI); +public: + eServiceFactoryHDMI(); + virtual ~eServiceFactoryHDMI(); + enum { id = 0x2000 }; + + RESULT play(const eServiceReference &, ePtr<iPlayableService> &ptr); + RESULT record(const eServiceReference &, ePtr<iRecordableService> &ptr); + RESULT list(const eServiceReference &, ePtr<iListableService> &ptr); + RESULT info(const eServiceReference &, ePtr<iStaticServiceInformation> &ptr); + RESULT offlineOperations(const eServiceReference &, ePtr<iServiceOfflineOperations> &ptr); +private: + ePtr<eStaticServiceHDMIInfo> m_service_info; +}; + +class eStaticServiceHDMIInfo: public iStaticServiceInformation +{ + DECLARE_REF(eStaticServiceHDMIInfo); + friend class eServiceFactoryHDMI; + eStaticServiceHDMIInfo(); +public: + RESULT getName(const eServiceReference &ref, std::string &name); + int getLength(const eServiceReference &ref); + int getInfo(const eServiceReference &ref, int w); + int isPlayable(const eServiceReference &ref, const eServiceReference &ignore, bool simulate) { return 1; } + long long getFileSize(const eServiceReference &ref); +}; + +class eServiceHDMI: public iPlayableService, public iServiceInformation, public Object +{ + DECLARE_REF(eServiceHDMI); +public: + virtual ~eServiceHDMI(); + + RESULT connectEvent(const Slot2<void, iPlayableService*, int> &event, ePtr<eConnection> &connection); + RESULT start(); + RESULT stop(); + RESULT setTarget(int target); + + RESULT pause(ePtr<iPauseableService> &ptr) { ptr = 0; return -1; } + RESULT seek(ePtr<iSeekableService> &ptr) { ptr = 0; return -1; } + RESULT audioTracks(ePtr<iAudioTrackSelection> &ptr) { ptr = 0; return -1; } + RESULT audioChannel(ePtr<iAudioChannelSelection> &ptr) { ptr = 0; return -1; } + RESULT subtitle(ePtr<iSubtitleOutput> &ptr) { ptr = 0; return -1; } + RESULT audioDelay(ePtr<iAudioDelay> &ptr) { ptr = 0; return -1; } + + RESULT frontendInfo(ePtr<iFrontendInformation> &ptr) { ptr = 0; return -1; } + RESULT subServices(ePtr<iSubserviceList> &ptr) { ptr = 0; return -1; } + RESULT timeshift(ePtr<iTimeshiftService> &ptr) { ptr = 0; return -1; } + RESULT cueSheet(ePtr<iCueSheet> &ptr) { ptr = 0; return -1; } + + RESULT rdsDecoder(ePtr<iRdsDecoder> &ptr) { ptr = 0; return -1; } + RESULT keys(ePtr<iServiceKeys> &ptr) { ptr = 0; return -1; } + RESULT stream(ePtr<iStreamableService> &ptr) { ptr = 0; return -1; } + RESULT streamed(ePtr<iStreamedService> &ptr) { ptr = 0; return -1; } + + RESULT info(ePtr<iServiceInformation>&); + + RESULT getName(std::string &name); + int getInfo(int w); + std::string getInfoString(int w); + ePtr<iServiceInfoContainer> getInfoObject(int w); + +private: + friend class eServiceFactoryHDMI; + eServiceHDMI(eServiceReference ref); + Signal2<void,iPlayableService*, int> m_event; + eServiceReference m_ref; + int m_decoder_index; + ePtr<iTSMPEGDecoder> m_decoder; +}; + +class eServiceHDMIRecord: public eDVBServiceBase, public iRecordableService, public Object +{ + DECLARE_REF(eServiceHDMIRecord); +public: + eServiceHDMIRecord(const eServiceReference &ref); + RESULT connectEvent(const Slot2<void,iRecordableService*,int> &event, ePtr<eConnection> &connection); + RESULT prepare(const char *filename, time_t begTime, time_t endTime, int eit_event_id, const char *name, const char *descr, const char *tags, bool descramble, bool recordecm); + RESULT prepareStreaming(bool descramble = true, bool includeecm = false); + RESULT start(bool simulate=false); + RESULT stop(); + RESULT getError(int &error) { error = m_error; return 0; } + RESULT frontendInfo(ePtr<iFrontendInformation> &ptr); + RESULT stream(ePtr<iStreamableService> &ptr); + RESULT subServices(ePtr<iSubserviceList> &ptr); + +private: + enum { stateIdle, statePrepared, stateRecording }; + bool m_simulate; + int m_state; + eDVBRecordFileThread *m_thread; + eServiceReference m_ref; + + int m_recording, m_error; + std::string m_filename; + + int m_target_fd; + int m_encoder_fd; + + int doPrepare(); + int doRecord(); + + /* events */ + Signal2<void,iRecordableService*,int> m_event; + + /* recorder events */ + void recordEvent(int event); +}; + +#endif diff --git a/lib/service/servicem2ts.cpp b/lib/service/servicem2ts.cpp new file mode 100644 index 0000000..c3deec3 --- /dev/null +++ b/lib/service/servicem2ts.cpp @@ -0,0 +1,340 @@ +#include <sys/types.h> +#include <sys/stat.h> +#include <lib/base/init_num.h> +#include <lib/base/init.h> +#include <lib/dvb/metaparser.h> +#include <lib/service/servicem2ts.h> + +DEFINE_REF(eServiceFactoryM2TS) + +class eM2TSFile: public iTsSource +{ + DECLARE_REF(eM2TSFile); + eSingleLock m_lock; +public: + eM2TSFile(const char *filename); + ~eM2TSFile(); + + // iTsSource + ssize_t read(off_t offset, void *buf, size_t count); + off_t length(); + off_t offset(); + int valid(); +private: + int m_sync_offset; + int m_fd; + off_t m_current_offset; + off_t m_length; + off_t lseek_internal(off_t offset, int whence); +}; + +class eStaticServiceM2TSInformation: public iStaticServiceInformation +{ + DECLARE_REF(eStaticServiceM2TSInformation); + eServiceReference m_ref; + eDVBMetaParser m_parser; +public: + eStaticServiceM2TSInformation(const eServiceReference &ref); + RESULT getName(const eServiceReference &ref, std::string &name); + int getLength(const eServiceReference &ref); + RESULT getEvent(const eServiceReference &ref, ePtr<eServiceEvent> &SWIG_OUTPUT, time_t start_time); + int isPlayable(const eServiceReference &ref, const eServiceReference &ignore, bool simulate) { return 1; } + int getInfo(const eServiceReference &ref, int w); + std::string getInfoString(const eServiceReference &ref,int w); + long long getFileSize(const eServiceReference &ref); +}; + +DEFINE_REF(eStaticServiceM2TSInformation); + +eStaticServiceM2TSInformation::eStaticServiceM2TSInformation(const eServiceReference &ref) +{ + m_ref = ref; + m_parser.parseFile(ref.path); +} + +RESULT eStaticServiceM2TSInformation::getName(const eServiceReference &ref, std::string &name) +{ + ASSERT(ref == m_ref); + if (m_parser.m_name.size()) + name = m_parser.m_name; + else + { + name = ref.path; + size_t n = name.rfind('/'); + if (n != std::string::npos) + name = name.substr(n + 1); + } + return 0; +} + +int eStaticServiceM2TSInformation::getLength(const eServiceReference &ref) +{ + ASSERT(ref == m_ref); + + eDVBTSTools tstools; + + struct stat s; + stat(ref.path.c_str(), &s); + + eM2TSFile *file = new eM2TSFile(ref.path.c_str()); + ePtr<iTsSource> source = file; + + if (!source->valid()) + return 0; + + tstools.setSource(source); + + /* check if cached data is still valid */ + if (m_parser.m_data_ok && (s.st_size == m_parser.m_filesize) && (m_parser.m_length)) + return m_parser.m_length / 90000; + + /* open again, this time with stream info */ + tstools.setSource(source, ref.path.c_str()); + + /* otherwise, re-calc length and update meta file */ + pts_t len; + if (tstools.calcLen(len)) + return 0; + + m_parser.m_length = len; + m_parser.m_filesize = s.st_size; + m_parser.updateMeta(ref.path); + return m_parser.m_length / 90000; +} + +int eStaticServiceM2TSInformation::getInfo(const eServiceReference &ref, int w) +{ + switch (w) + { + case iServiceInformation::sDescription: + return iServiceInformation::resIsString; + case iServiceInformation::sServiceref: + return iServiceInformation::resIsString; + case iServiceInformation::sFileSize: + return m_parser.m_filesize; + case iServiceInformation::sTimeCreate: + if (m_parser.m_time_create) + return m_parser.m_time_create; + else + return iServiceInformation::resNA; + default: + return iServiceInformation::resNA; + } +} + +std::string eStaticServiceM2TSInformation::getInfoString(const eServiceReference &ref,int w) +{ + switch (w) + { + case iServiceInformation::sDescription: + return m_parser.m_description; + case iServiceInformation::sServiceref: + return m_parser.m_ref.toString(); + case iServiceInformation::sTags: + return m_parser.m_tags; + default: + return ""; + } +} + +long long eStaticServiceM2TSInformation::getFileSize(const eServiceReference &ref) +{ + return m_parser.m_filesize; +} + +RESULT eStaticServiceM2TSInformation::getEvent(const eServiceReference &ref, ePtr<eServiceEvent> &evt, time_t start_time) +{ + if (!ref.path.empty()) + { + ePtr<eServiceEvent> event = new eServiceEvent; + std::string filename = ref.path; + filename.erase(filename.length()-4, 2); + filename+="eit"; + if (!event->parseFrom(filename, (m_parser.m_ref.getTransportStreamID().get()<<16)|m_parser.m_ref.getOriginalNetworkID().get())) + { + evt = event; + return 0; + } + } + evt = 0; + return -1; +} + +DEFINE_REF(eM2TSFile); + +eM2TSFile::eM2TSFile(const char *filename): + m_lock(), + m_sync_offset(0), + m_fd(::open(filename, O_RDONLY | O_LARGEFILE)), + m_current_offset(0), + m_length(0) +{ + if (m_fd != -1) + m_current_offset = m_length = lseek_internal(0, SEEK_END); +} + +eM2TSFile::~eM2TSFile() +{ + if (m_fd != -1) + ::close(m_fd); +} + +off_t eM2TSFile::lseek_internal(off_t offset, int whence) +{ + off_t ret; + + ret = ::lseek(m_fd, offset, whence); + return ret <= 0 ? ret : (ret % 192) + (ret*188) / 192; +} + +ssize_t eM2TSFile::read(off_t offset, void *b, size_t count) +{ + eSingleLocker l(m_lock); + unsigned char tmp[192*3]; + unsigned char *buf = (unsigned char*)b; + + size_t rd=0; + offset = (offset % 188) + (offset * 192) / 188; + +sync: + if ((offset+m_sync_offset) != m_current_offset) + { +// eDebug("seekTo %lld", offset+m_sync_offset); + m_current_offset = lseek_internal(offset+m_sync_offset, SEEK_SET); + if (m_current_offset < 0) + return m_current_offset; + } + + while (rd < count) { + size_t ret; + ret = ::read(m_fd, tmp, 192); + if (ret < 0 || ret < 192) + return rd ? rd : ret; + + if (tmp[4] != 0x47) + { + if (rd > 0) { + eDebug("short read at pos %lld async!!", m_current_offset); + return rd; + } + else { + int x=0; + ret = ::read(m_fd, tmp+192, 384); + +#if 0 + eDebugNoNewLine("m2ts out of sync at pos %lld, real %lld:", offset + m_sync_offset, m_current_offset); + for (; x < 192; ++x) + eDebugNoNewLine(" %02x", tmp[x]); + eDebug(""); + x=0; +#else + eDebug("m2ts out of sync at pos %lld, real %lld", offset + m_sync_offset, m_current_offset); +#endif + for (; x < 192; ++x) + { + if (tmp[x] == 0x47 && tmp[x+192] == 0x47) + { + int add_offs = (x - 4); + eDebug("sync found at pos %d, sync_offset is now %d, old was %d", x, add_offs + m_sync_offset, m_sync_offset); + m_sync_offset += add_offs; + goto sync; + } + } + } + } + + memcpy(buf+rd, tmp+4, 188); + + rd += 188; + m_current_offset += 188; + } + + m_sync_offset %= 188; + + return rd; +} + +int eM2TSFile::valid() +{ + return m_fd != -1; +} + +off_t eM2TSFile::length() +{ + return m_length; +} + +off_t eM2TSFile::offset() +{ + return m_current_offset; +} + +eServiceFactoryM2TS::eServiceFactoryM2TS() +{ + ePtr<eServiceCenter> sc; + eServiceCenter::getPrivInstance(sc); + if (sc) + { + std::list<std::string> extensions; + extensions.push_back("m2ts"); + extensions.push_back("mts"); + sc->addServiceFactory(eServiceFactoryM2TS::id, this, extensions); + } +} + +eServiceFactoryM2TS::~eServiceFactoryM2TS() +{ + ePtr<eServiceCenter> sc; + + eServiceCenter::getPrivInstance(sc); + if (sc) + sc->removeServiceFactory(eServiceFactoryM2TS::id); +} + +RESULT eServiceFactoryM2TS::play(const eServiceReference &ref, ePtr<iPlayableService> &ptr) +{ + ptr = new eServiceM2TS(ref); + return 0; +} + +RESULT eServiceFactoryM2TS::record(const eServiceReference &ref, ePtr<iRecordableService> &ptr) +{ + ptr=0; + return -1; +} + +RESULT eServiceFactoryM2TS::list(const eServiceReference &ref, ePtr<iListableService> &ptr) +{ + ptr=0; + return -1; +} + +RESULT eServiceFactoryM2TS::info(const eServiceReference &ref, ePtr<iStaticServiceInformation> &ptr) +{ + ptr=new eStaticServiceM2TSInformation(ref); + return 0; +} + +RESULT eServiceFactoryM2TS::offlineOperations(const eServiceReference &ref, ePtr<iServiceOfflineOperations> &ptr) +{ + ptr = 0; + return -1; +} + +eServiceM2TS::eServiceM2TS(const eServiceReference &ref) + :eDVBServicePlay(ref, NULL) +{ +} + +ePtr<iTsSource> eServiceM2TS::createTsSource(eServiceReferenceDVB &ref, int packetsize) +{ + ePtr<iTsSource> source = new eM2TSFile(ref.path.c_str()); + return source; +} + +RESULT eServiceM2TS::isCurrentlySeekable() +{ + return 1; // for fast winding we need index files... so only skip forward/backward yet +} + +eAutoInitPtr<eServiceFactoryM2TS> init_eServiceFactoryM2TS(eAutoInitNumbers::service+1, "eServiceFactoryM2TS"); diff --git a/lib/service/servicem2ts.h b/lib/service/servicem2ts.h new file mode 100644 index 0000000..9648ecd --- /dev/null +++ b/lib/service/servicem2ts.h @@ -0,0 +1,33 @@ +#ifndef __servicem2ts_h +#define __servicem2ts_h + +#include <lib/service/servicedvb.h> + +class eServiceFactoryM2TS: public iServiceHandler +{ + DECLARE_REF(eServiceFactoryM2TS); +public: + eServiceFactoryM2TS(); + virtual ~eServiceFactoryM2TS(); + enum { id = 0x3 }; + + // iServiceHandler + RESULT play(const eServiceReference &, ePtr<iPlayableService> &ptr); + RESULT record(const eServiceReference &, ePtr<iRecordableService> &ptr); + RESULT list(const eServiceReference &, ePtr<iListableService> &ptr); + RESULT info(const eServiceReference &, ePtr<iStaticServiceInformation> &ptr); + RESULT offlineOperations(const eServiceReference &, ePtr<iServiceOfflineOperations> &ptr); +}; + +class eServiceM2TS: public eDVBServicePlay +{ + friend class eServiceFactoryM2TS; +protected: + eServiceM2TS(const eServiceReference &ref); + ePtr<iTsSource> createTsSource(eServiceReferenceDVB &ref, int packetsize); + + // iSeekableService + RESULT isCurrentlySeekable(); +}; + +#endif diff --git a/lib/service/servicemp3.cpp b/lib/service/servicemp3.cpp new file mode 100644 index 0000000..dde40f3 --- /dev/null +++ b/lib/service/servicemp3.cpp @@ -0,0 +1,2533 @@ + /* note: this requires gstreamer 0.10.x and a big list of plugins. */ + /* it's currently hardcoded to use a big-endian alsasink as sink. */ +#include <lib/base/ebase.h> +#include <lib/base/eerror.h> +#include <lib/base/init_num.h> +#include <lib/base/init.h> +#include <lib/base/nconfig.h> +#include <lib/base/object.h> +#include <lib/dvb/epgcache.h> +#include <lib/dvb/decoder.h> +#include <lib/components/file_eraser.h> +#include <lib/gui/esubtitle.h> +#include <lib/service/servicemp3.h> +#include <lib/service/service.h> +#include <lib/gdi/gpixmap.h> + +#include <string> + +#include <gst/gst.h> +#include <gst/pbutils/missing-plugins.h> +#include <sys/stat.h> + +#define HTTP_TIMEOUT 30 + +/* + * UNUSED variable from service reference is now used as buffer flag for gstreamer + * REFTYPE:FLAGS:STYPE:SID:TSID:ONID:NS:PARENT_SID:PARENT_TSID:UNUSED + * D D X X X X X X X X + * 4097:0:1:0:0:0:0:0:0:0:URL:NAME (no buffering) + * 4097:0:1:0:0:0:0:0:0:1:URL:NAME (buffering enabled) + * 4097:0:1:0:0:0:0:0:0:3:URL:NAME (progressive download and buffering enabled) + * + * Progressive download requires buffering enabled, so it's mandatory to use flag 3 not 2 + */ +typedef enum +{ + BUFFERING_ENABLED = 0x00000001, + PROGRESSIVE_DOWNLOAD = 0x00000002 +} eServiceMP3Flags; + +typedef enum +{ + GST_PLAY_FLAG_VIDEO = 0x00000001, + GST_PLAY_FLAG_AUDIO = 0x00000002, + GST_PLAY_FLAG_TEXT = 0x00000004, + GST_PLAY_FLAG_VIS = 0x00000008, + GST_PLAY_FLAG_SOFT_VOLUME = 0x00000010, + GST_PLAY_FLAG_NATIVE_AUDIO = 0x00000020, + GST_PLAY_FLAG_NATIVE_VIDEO = 0x00000040, + GST_PLAY_FLAG_DOWNLOAD = 0x00000080, + GST_PLAY_FLAG_BUFFERING = 0x00000100 +} GstPlayFlags; + +// eServiceFactoryMP3 + +/* + * gstreamer suffers from a bug causing sparse streams to loose sync, after pause/resume / skip + * see: https://bugzilla.gnome.org/show_bug.cgi?id=619434 + * As a workaround, we run the subsink in sync=false mode + */ +#define GSTREAMER_SUBTITLE_SYNC_MODE_BUG +/**/ + +eServiceFactoryMP3::eServiceFactoryMP3() +{ + ePtr<eServiceCenter> sc; + + eServiceCenter::getPrivInstance(sc); + if (sc) + { + std::list<std::string> extensions; + extensions.push_back("dts"); + extensions.push_back("mp2"); + extensions.push_back("mp3"); + extensions.push_back("ogg"); + extensions.push_back("ogm"); + extensions.push_back("ogv"); + extensions.push_back("mpg"); + extensions.push_back("vob"); + extensions.push_back("wav"); + extensions.push_back("wave"); + extensions.push_back("m4v"); + extensions.push_back("mkv"); + extensions.push_back("avi"); + extensions.push_back("divx"); + extensions.push_back("dat"); + extensions.push_back("flac"); + extensions.push_back("flv"); + extensions.push_back("mp4"); + extensions.push_back("mov"); + extensions.push_back("m4a"); + extensions.push_back("3gp"); + extensions.push_back("3g2"); + extensions.push_back("asf"); + extensions.push_back("wmv"); + extensions.push_back("wma"); + sc->addServiceFactory(eServiceFactoryMP3::id, this, extensions); + } + + m_service_info = new eStaticServiceMP3Info(); +} + +eServiceFactoryMP3::~eServiceFactoryMP3() +{ + ePtr<eServiceCenter> sc; + + eServiceCenter::getPrivInstance(sc); + if (sc) + sc->removeServiceFactory(eServiceFactoryMP3::id); +} + +DEFINE_REF(eServiceFactoryMP3) + + // iServiceHandler +RESULT eServiceFactoryMP3::play(const eServiceReference &ref, ePtr<iPlayableService> &ptr) +{ + // check resources... + ptr = new eServiceMP3(ref); + return 0; +} + +RESULT eServiceFactoryMP3::record(const eServiceReference &ref, ePtr<iRecordableService> &ptr) +{ + ptr=0; + return -1; +} + +RESULT eServiceFactoryMP3::list(const eServiceReference &, ePtr<iListableService> &ptr) +{ + ptr=0; + return -1; +} + +RESULT eServiceFactoryMP3::info(const eServiceReference &ref, ePtr<iStaticServiceInformation> &ptr) +{ + ptr = m_service_info; + return 0; +} + +class eMP3ServiceOfflineOperations: public iServiceOfflineOperations +{ + DECLARE_REF(eMP3ServiceOfflineOperations); + eServiceReference m_ref; +public: + eMP3ServiceOfflineOperations(const eServiceReference &ref); + + RESULT deleteFromDisk(int simulate); + RESULT getListOfFilenames(std::list<std::string> &); + RESULT reindex(); +}; + +DEFINE_REF(eMP3ServiceOfflineOperations); + +eMP3ServiceOfflineOperations::eMP3ServiceOfflineOperations(const eServiceReference &ref): m_ref((const eServiceReference&)ref) +{ +} + +RESULT eMP3ServiceOfflineOperations::deleteFromDisk(int simulate) +{ + if (!simulate) + { + std::list<std::string> res; + if (getListOfFilenames(res)) + return -1; + + eBackgroundFileEraser *eraser = eBackgroundFileEraser::getInstance(); + if (!eraser) + eDebug("FATAL !! can't get background file eraser"); + + for (std::list<std::string>::iterator i(res.begin()); i != res.end(); ++i) + { + eDebug("Removing %s...", i->c_str()); + if (eraser) + eraser->erase(i->c_str()); + else + ::unlink(i->c_str()); + } + } + return 0; +} + +RESULT eMP3ServiceOfflineOperations::getListOfFilenames(std::list<std::string> &res) +{ + res.clear(); + res.push_back(m_ref.path); + return 0; +} + +RESULT eMP3ServiceOfflineOperations::reindex() +{ + return -1; +} + + +RESULT eServiceFactoryMP3::offlineOperations(const eServiceReference &ref, ePtr<iServiceOfflineOperations> &ptr) +{ + ptr = new eMP3ServiceOfflineOperations(ref); + return 0; +} + +// eStaticServiceMP3Info + + +// eStaticServiceMP3Info is seperated from eServiceMP3 to give information +// about unopened files. + +// probably eServiceMP3 should use this class as well, and eStaticServiceMP3Info +// should have a database backend where ID3-files etc. are cached. +// this would allow listing the mp3 database based on certain filters. + +DEFINE_REF(eStaticServiceMP3Info) + +eStaticServiceMP3Info::eStaticServiceMP3Info() +{ +} + +RESULT eStaticServiceMP3Info::getName(const eServiceReference &ref, std::string &name) +{ + if ( ref.name.length() ) + name = ref.name; + else + { + size_t last = ref.path.rfind('/'); + if (last != std::string::npos) + name = ref.path.substr(last+1); + else + name = ref.path; + } + return 0; +} + +int eStaticServiceMP3Info::getLength(const eServiceReference &ref) +{ + return -1; +} + +int eStaticServiceMP3Info::getInfo(const eServiceReference &ref, int w) +{ + switch (w) + { + case iServiceInformation::sTimeCreate: + { + struct stat s; + if (stat(ref.path.c_str(), &s) == 0) + { + return s.st_mtime; + } + } + break; + case iServiceInformation::sFileSize: + { + struct stat s; + if (stat(ref.path.c_str(), &s) == 0) + { + return s.st_size; + } + } + break; + } + return iServiceInformation::resNA; +} + +long long eStaticServiceMP3Info::getFileSize(const eServiceReference &ref) +{ + struct stat s; + if (stat(ref.path.c_str(), &s) == 0) + { + return s.st_size; + } + return 0; +} + +RESULT eStaticServiceMP3Info::getEvent(const eServiceReference &ref, ePtr<eServiceEvent> &evt, time_t start_time) +{ + if (ref.path.find("://") != std::string::npos) + { + eServiceReference equivalentref(ref); + equivalentref.type = eServiceFactoryMP3::id; + equivalentref.path.clear(); + return eEPGCache::getInstance()->lookupEventTime(equivalentref, start_time, evt); + } + evt = 0; + return -1; +} + +DEFINE_REF(eStreamBufferInfo) + +eStreamBufferInfo::eStreamBufferInfo(int percentage, int inputrate, int outputrate, int space, int size) +: bufferPercentage(percentage), + inputRate(inputrate), + outputRate(outputrate), + bufferSpace(space), + bufferSize(size) +{ +} + +int eStreamBufferInfo::getBufferPercentage() const +{ + return bufferPercentage; +} + +int eStreamBufferInfo::getAverageInputRate() const +{ + return inputRate; +} + +int eStreamBufferInfo::getAverageOutputRate() const +{ + return outputRate; +} + +int eStreamBufferInfo::getBufferSpace() const +{ + return bufferSpace; +} + +int eStreamBufferInfo::getBufferSize() const +{ + return bufferSize; +} + +DEFINE_REF(eServiceMP3InfoContainer); + +eServiceMP3InfoContainer::eServiceMP3InfoContainer() +: doubleValue(0.0), bufferValue(NULL), bufferData(NULL), bufferSize(0) +{ +} + +eServiceMP3InfoContainer::~eServiceMP3InfoContainer() +{ + if (bufferValue) + { +#if GST_VERSION_MAJOR >= 1 + gst_buffer_unmap(bufferValue, &map); +#endif + gst_buffer_unref(bufferValue); + bufferValue = NULL; + bufferData = NULL; + bufferSize = 0; + } +} + +double eServiceMP3InfoContainer::getDouble(unsigned int index) const +{ + return doubleValue; +} + +unsigned char *eServiceMP3InfoContainer::getBuffer(unsigned int &size) const +{ + size = bufferSize; + return bufferData; +} + +void eServiceMP3InfoContainer::setDouble(double value) +{ + doubleValue = value; +} + +void eServiceMP3InfoContainer::setBuffer(GstBuffer *buffer) +{ + bufferValue = buffer; + gst_buffer_ref(bufferValue); +#if GST_VERSION_MAJOR < 1 + bufferData = GST_BUFFER_DATA(bufferValue); + bufferSize = GST_BUFFER_SIZE(bufferValue); +#else + gst_buffer_map(bufferValue, &map, GST_MAP_READ); + bufferData = map.data; + bufferSize = map.size; +#endif +} + +// eServiceMP3 +int eServiceMP3::ac3_delay = 0, + eServiceMP3::pcm_delay = 0; + +eServiceMP3::eServiceMP3(eServiceReference ref): + m_nownext_timer(eTimer::create(eApp)), + m_ref(ref), + m_pump(eApp, 1) +{ + m_subtitle_sync_timer = eTimer::create(eApp); + m_streamingsrc_timeout = 0; + m_stream_tags = 0; + m_currentAudioStream = -1; + m_currentSubtitleStream = -1; + m_cachedSubtitleStream = 0; /* report the first subtitle stream to be 'cached'. TODO: use an actual cache. */ + m_subtitle_widget = 0; + m_currentTrickRatio = 1.0; + m_buffer_size = 5 * 1024 * 1024; + m_ignore_buffering_messages = 0; + m_is_live = false; + m_use_prefillbuffer = false; + m_extra_headers = ""; + m_download_buffer_path = ""; + m_prev_decoder_time = -1; + m_decoder_time_valid_state = 0; + m_errorInfo.missing_codec = ""; + audioSink = videoSink = NULL; + + CONNECT(m_subtitle_sync_timer->timeout, eServiceMP3::pushSubtitles); + CONNECT(m_pump.recv_msg, eServiceMP3::gstPoll); + CONNECT(m_nownext_timer->timeout, eServiceMP3::updateEpgCacheNowNext); + m_aspect = m_width = m_height = m_framerate = m_progressive = -1; + + m_state = stIdle; + eDebug("eServiceMP3::construct!"); + + const char *filename = m_ref.path.c_str(); + const char *ext = strrchr(filename, '.'); + if (!ext) + ext = filename + strlen(filename); + + m_sourceinfo.is_video = FALSE; + m_sourceinfo.audiotype = atUnknown; + if ( (strcasecmp(ext, ".mpeg") && strcasecmp(ext, ".mpg") && strcasecmp(ext, ".vob") && strcasecmp(ext, ".bin") && strcasecmp(ext, ".dat") ) == 0 ) + { + m_sourceinfo.containertype = ctMPEGPS; + m_sourceinfo.is_video = TRUE; + } + else if ( strcasecmp(ext, ".ts") == 0 ) + { + m_sourceinfo.containertype = ctMPEGTS; + m_sourceinfo.is_video = TRUE; + } + else if ( strcasecmp(ext, ".mkv") == 0 ) + { + m_sourceinfo.containertype = ctMKV; + m_sourceinfo.is_video = TRUE; + } + else if ( strcasecmp(ext, ".ogm") == 0 || strcasecmp(ext, ".ogv") == 0) + { + m_sourceinfo.containertype = ctOGG; + m_sourceinfo.is_video = TRUE; + } + else if ( strcasecmp(ext, ".avi") == 0 || strcasecmp(ext, ".divx") == 0) + { + m_sourceinfo.containertype = ctAVI; + m_sourceinfo.is_video = TRUE; + } + else if ( strcasecmp(ext, ".mp4") == 0 || strcasecmp(ext, ".mov") == 0 || strcasecmp(ext, ".m4v") == 0 || strcasecmp(ext, ".3gp") == 0 || strcasecmp(ext, ".3g2") == 0) + { + m_sourceinfo.containertype = ctMP4; + m_sourceinfo.is_video = TRUE; + } + else if ( strcasecmp(ext, ".asf") == 0 || strcasecmp(ext, ".wmv") == 0) + { + m_sourceinfo.containertype = ctASF; + m_sourceinfo.is_video = TRUE; + } + else if ( strcasecmp(ext, ".m4a") == 0 ) + { + m_sourceinfo.containertype = ctMP4; + m_sourceinfo.audiotype = atAAC; + } + else if ( strcasecmp(ext, ".mp3") == 0 ) + m_sourceinfo.audiotype = atMP3; + else if ( strcasecmp(ext, ".wma") == 0 ) + m_sourceinfo.audiotype = atWMA; + else if ( (strncmp(filename, "/autofs/", 8) || strncmp(filename+strlen(filename)-13, "/track-", 7) || strcasecmp(ext, ".wav")) == 0 ) + m_sourceinfo.containertype = ctCDA; + if ( strcasecmp(ext, ".dat") == 0 ) + { + m_sourceinfo.containertype = ctVCD; + m_sourceinfo.is_video = TRUE; + } + if ( strstr(filename, "://") ) + m_sourceinfo.is_streaming = TRUE; + + gchar *uri; + + if ( m_sourceinfo.is_streaming ) + { + uri = g_strdup_printf ("%s", filename); + m_streamingsrc_timeout = eTimer::create(eApp);; + CONNECT(m_streamingsrc_timeout->timeout, eServiceMP3::sourceTimeout); + + std::string config_str; + if (eConfigManager::getConfigBoolValue("config.mediaplayer.useAlternateUserAgent")) + { + m_useragent = eConfigManager::getConfigValue("config.mediaplayer.alternateUserAgent"); + } + if (m_useragent.empty()) + m_useragent = "Enigma2 Mediaplayer"; + m_extra_headers = eConfigManager::getConfigValue("config.mediaplayer.extraHeaders"); + if ( m_ref.getData(7) & BUFFERING_ENABLED ) + { + m_use_prefillbuffer = true; + if ( m_ref.getData(7) & PROGRESSIVE_DOWNLOAD ) + { + /* progressive download buffering */ + if (::access("/hdd/movie", X_OK) >= 0) + { + /* It looks like /hdd points to a valid mount, so we can store a download buffer on it */ + m_download_buffer_path = "/hdd/gstreamer_XXXXXXXXXX"; + } + } + } + } + else if ( m_sourceinfo.containertype == ctCDA ) + { + int i_track = atoi(filename+18); + uri = g_strdup_printf ("cdda://%i", i_track); + } + else if ( m_sourceinfo.containertype == ctVCD ) + { + int ret = -1; + int fd = open(filename,O_RDONLY); + if (fd >= 0) + { + char* tmp = new char[128*1024]; + ret = read(fd, tmp, 128*1024); + close(fd); + delete [] tmp; + } + if ( ret == -1 ) // this is a "REAL" VCD + uri = g_strdup_printf ("vcd://"); + else + uri = g_filename_to_uri(filename, NULL, NULL); + } + else + uri = g_filename_to_uri(filename, NULL, NULL); + + eDebug("eServiceMP3::playbin uri=%s", uri); +#if GST_VERSION_MAJOR < 1 + m_gst_playbin = gst_element_factory_make("playbin2", "playbin"); +#else + m_gst_playbin = gst_element_factory_make("playbin", "playbin"); +#endif + if ( m_gst_playbin ) + { + guint flags; + g_object_get(G_OBJECT (m_gst_playbin), "flags", &flags, NULL); + /* avoid video conversion, let the (hardware) sinks handle that */ + flags |= GST_PLAY_FLAG_NATIVE_VIDEO; + /* volume control is done by hardware */ + flags &= ~GST_PLAY_FLAG_SOFT_VOLUME; + if ( m_sourceinfo.is_streaming ) + { + g_signal_connect (G_OBJECT (m_gst_playbin), "notify::source", G_CALLBACK (playbinNotifySource), this); + if (m_download_buffer_path != "") + { + /* use progressive download buffering */ + flags |= GST_PLAY_FLAG_DOWNLOAD; + g_signal_connect(G_OBJECT(m_gst_playbin), "element-added", G_CALLBACK(handleElementAdded), this); + /* limit file size */ + g_object_set(m_gst_playbin, "ring-buffer-max-size", (guint64)(8LL * 1024LL * 1024LL), NULL); + } + /* + * regardless whether or not we configured a progressive download file, use a buffer as well + * (progressive download might not work for all formats) + */ + flags |= GST_PLAY_FLAG_BUFFERING; + /* increase the default 2 second / 2 MB buffer limitations to 5s / 5MB */ + g_object_set(G_OBJECT(m_gst_playbin), "buffer-duration", 5LL * GST_SECOND, NULL); + g_object_set(G_OBJECT(m_gst_playbin), "buffer-size", m_buffer_size, NULL); + } + g_object_set (G_OBJECT (m_gst_playbin), "flags", flags, NULL); + g_object_set (G_OBJECT (m_gst_playbin), "uri", uri, NULL); + GstElement *subsink = gst_element_factory_make("subsink", "subtitle_sink"); + if (!subsink) + eDebug("eServiceMP3::sorry, can't play: missing gst-plugin-subsink"); + else + { + m_subs_to_pull_handler_id = g_signal_connect (subsink, "new-buffer", G_CALLBACK (gstCBsubtitleAvail), this); + g_object_set (G_OBJECT (subsink), "caps", gst_caps_from_string("text/plain; text/x-plain; text/x-raw; text/x-pango-markup; video/x-dvd-subpicture; subpicture/x-pgs"), NULL); + g_object_set (G_OBJECT (m_gst_playbin), "text-sink", subsink, NULL); + g_object_set (G_OBJECT (m_gst_playbin), "current-text", m_currentSubtitleStream, NULL); + } + GstBus *bus = gst_pipeline_get_bus(GST_PIPELINE (m_gst_playbin)); +#if GST_VERSION_MAJOR < 1 + gst_bus_set_sync_handler(bus, gstBusSyncHandler, this); +#else + gst_bus_set_sync_handler(bus, gstBusSyncHandler, this, NULL); +#endif + gst_object_unref(bus); + char srt_filename[ext - filename + 5]; + strncpy(srt_filename,filename, ext - filename); + srt_filename[ext - filename] = '\0'; + strcat(srt_filename, ".srt"); + if (::access(srt_filename, R_OK) >= 0) + { + eDebug("eServiceMP3::subtitle uri: %s", g_filename_to_uri(srt_filename, NULL, NULL)); + g_object_set (G_OBJECT (m_gst_playbin), "suburi", g_filename_to_uri(srt_filename, NULL, NULL), NULL); + } + } else + { + m_event((iPlayableService*)this, evUser+12); + m_gst_playbin = 0; + m_errorInfo.error_message = "failed to create GStreamer pipeline!\n"; + + eDebug("eServiceMP3::sorry, can't play: %s",m_errorInfo.error_message.c_str()); + } + g_free(uri); +} + +eServiceMP3::~eServiceMP3() +{ + // disconnect subtitle callback + GstElement *subsink = gst_bin_get_by_name(GST_BIN(m_gst_playbin), "subtitle_sink"); + + if (subsink) + { + g_signal_handler_disconnect (subsink, m_subs_to_pull_handler_id); + gst_object_unref(subsink); + } + + if (m_subtitle_widget) m_subtitle_widget->destroy(); + m_subtitle_widget = 0; + + if (m_gst_playbin) + { + // disconnect sync handler callback + GstBus *bus = gst_pipeline_get_bus(GST_PIPELINE (m_gst_playbin)); +#if GST_VERSION_MAJOR < 1 + gst_bus_set_sync_handler(bus, NULL, NULL); +#else + gst_bus_set_sync_handler(bus, NULL, NULL, NULL); +#endif + gst_object_unref(bus); + } + + if (m_state == stRunning) + stop(); + + if (m_stream_tags) + gst_tag_list_free(m_stream_tags); + + if (audioSink) + { + gst_object_unref(GST_OBJECT(audioSink)); + audioSink = NULL; + } + if (videoSink) + { + gst_object_unref(GST_OBJECT(videoSink)); + videoSink = NULL; + } + if (m_gst_playbin) + { + gst_object_unref (GST_OBJECT (m_gst_playbin)); + eDebug("eServiceMP3::destruct!"); + } +} + +void eServiceMP3::updateEpgCacheNowNext() +{ + bool update = false; + ePtr<eServiceEvent> next = 0; + ePtr<eServiceEvent> ptr = 0; + eServiceReference ref(m_ref); + ref.type = eServiceFactoryMP3::id; + ref.path.clear(); + if (eEPGCache::getInstance() && eEPGCache::getInstance()->lookupEventTime(ref, -1, ptr) >= 0) + { + ePtr<eServiceEvent> current = m_event_now; + if (!current || !ptr || current->getEventId() != ptr->getEventId()) + { + update = true; + m_event_now = ptr; + time_t next_time = ptr->getBeginTime() + ptr->getDuration(); + if (eEPGCache::getInstance()->lookupEventTime(ref, next_time, ptr) >= 0) + { + next = ptr; + m_event_next = ptr; + } + } + } + + int refreshtime = 60; + if (!next) + { + next = m_event_next; + } + if (next) + { + time_t now = eDVBLocalTimeHandler::getInstance()->nowTime(); + refreshtime = (int)(next->getBeginTime() - now) + 3; + if (refreshtime <= 0 || refreshtime > 60) + { + refreshtime = 60; + } + } + m_nownext_timer->startLongTimer(refreshtime); + if (update) + { + m_event((iPlayableService*)this, evUpdatedEventInfo); + } +} + +DEFINE_REF(eServiceMP3); + +DEFINE_REF(eServiceMP3::GstMessageContainer); + +RESULT eServiceMP3::connectEvent(const Slot2<void,iPlayableService*,int> &event, ePtr<eConnection> &connection) +{ + connection = new eConnection((iPlayableService*)this, m_event.connect(event)); + return 0; +} + +RESULT eServiceMP3::start() +{ + ASSERT(m_state == stIdle); + + m_state = stRunning; + if (m_gst_playbin) + { + eDebug("eServiceMP3::starting pipeline"); + gst_element_set_state (m_gst_playbin, GST_STATE_PLAYING); + updateEpgCacheNowNext(); + } + + m_event(this, evStart); + + return 0; +} + +void eServiceMP3::sourceTimeout() +{ + eDebug("eServiceMP3::http source timeout! issuing eof..."); + m_event((iPlayableService*)this, evEOF); +} + +RESULT eServiceMP3::stop() +{ + ASSERT(m_state != stIdle); + + if (m_state == stStopped) + return -1; + + eDebug("eServiceMP3::stop %s", m_ref.path.c_str()); + gst_element_set_state(m_gst_playbin, GST_STATE_NULL); + m_state = stStopped; + m_nownext_timer->stop(); + + return 0; +} + +RESULT eServiceMP3::setTarget(int target) +{ + return -1; +} + +RESULT eServiceMP3::pause(ePtr<iPauseableService> &ptr) +{ + ptr=this; + return 0; +} + +RESULT eServiceMP3::setSlowMotion(int ratio) +{ + if (!ratio) + return 0; + eDebug("eServiceMP3::setSlowMotion ratio=%f",1.0/(gdouble)ratio); + return trickSeek(1.0/(gdouble)ratio); +} + +RESULT eServiceMP3::setFastForward(int ratio) +{ + eDebug("eServiceMP3::setFastForward ratio=%i",ratio); + return trickSeek(ratio); +} + + // iPausableService +RESULT eServiceMP3::pause() +{ + if (!m_gst_playbin || m_state != stRunning) + return -1; + + trickSeek(0.0); + + return 0; +} + +RESULT eServiceMP3::unpause() +{ + if (!m_gst_playbin || m_state != stRunning) + return -1; + + trickSeek(1.0); + + return 0; +} + + /* iSeekableService */ +RESULT eServiceMP3::seek(ePtr<iSeekableService> &ptr) +{ + ptr = this; + return 0; +} + +RESULT eServiceMP3::getLength(pts_t &pts) +{ + if (!m_gst_playbin) + return -1; + + if (m_state != stRunning) + return -1; + + GstFormat fmt = GST_FORMAT_TIME; + gint64 len; +#if GST_VERSION_MAJOR < 1 + if (!gst_element_query_duration(m_gst_playbin, &fmt, &len)) +#else + if (!gst_element_query_duration(m_gst_playbin, fmt, &len)) +#endif + return -1; + /* len is in nanoseconds. we have 90 000 pts per second. */ + + pts = len / 11111LL; + return 0; +} + +RESULT eServiceMP3::seekToImpl(pts_t to) +{ + /* convert pts to nanoseconds */ + gint64 time_nanoseconds = to * 11111LL; + if (!gst_element_seek (m_gst_playbin, m_currentTrickRatio, GST_FORMAT_TIME, (GstSeekFlags)(GST_SEEK_FLAG_FLUSH | GST_SEEK_FLAG_KEY_UNIT), + GST_SEEK_TYPE_SET, time_nanoseconds, + GST_SEEK_TYPE_NONE, GST_CLOCK_TIME_NONE)) + { + eDebug("eServiceMP3::seekTo failed"); + return -1; + } + + return 0; +} + +RESULT eServiceMP3::seekTo(pts_t to) +{ + RESULT ret = -1; + + if (m_gst_playbin) + { + m_prev_decoder_time = -1; + m_decoder_time_valid_state = 0; + ret = seekToImpl(to); + } + + return ret; +} + + +RESULT eServiceMP3::trickSeek(gdouble ratio) +{ + if (!m_gst_playbin) + return -1; + if (ratio > -0.01 && ratio < 0.01) + { + gst_element_set_state(m_gst_playbin, GST_STATE_PAUSED); + return 0; + } + + m_currentTrickRatio = ratio; + + bool validposition = false; + gint64 pos = 0; + pts_t pts; + if (getPlayPosition(pts) >= 0) + { + validposition = true; + pos = pts * 11111LL; + } + + gst_element_set_state(m_gst_playbin, GST_STATE_PLAYING); + + if (validposition) + { + if (ratio >= 0.0) + { + gst_element_seek(m_gst_playbin, ratio, GST_FORMAT_TIME, (GstSeekFlags)(GST_SEEK_FLAG_FLUSH | GST_SEEK_FLAG_SKIP), GST_SEEK_TYPE_SET, pos, GST_SEEK_TYPE_SET, -1); + } + else + { + /* note that most elements will not support negative speed */ + gst_element_seek(m_gst_playbin, ratio, GST_FORMAT_TIME, (GstSeekFlags)(GST_SEEK_FLAG_FLUSH | GST_SEEK_FLAG_SKIP), GST_SEEK_TYPE_SET, 0, GST_SEEK_TYPE_SET, pos); + } + } + + m_prev_decoder_time = -1; + m_decoder_time_valid_state = 0; + return 0; +} + + +RESULT eServiceMP3::seekRelative(int direction, pts_t to) +{ + if (!m_gst_playbin) + return -1; + + pts_t ppos; + if (getPlayPosition(ppos) < 0) return -1; + ppos += to * direction; + if (ppos < 0) + ppos = 0; + return seekTo(ppos); +} + +gint eServiceMP3::match_sinktype(GstElement *element, gpointer type) +{ + return strcmp(g_type_name(G_OBJECT_TYPE(element)), (const char*)type); +} + +RESULT eServiceMP3::getPlayPosition(pts_t &pts) +{ + gint64 pos; + pts = 0; + + if (!m_gst_playbin) + return -1; + if (m_state != stRunning) + return -1; + + if (audioSink || videoSink) + { + g_signal_emit_by_name(audioSink ? audioSink : videoSink, "get-decoder-time", &pos); + if (!GST_CLOCK_TIME_IS_VALID(pos)) return -1; + } + else + { + GstFormat fmt = GST_FORMAT_TIME; +#if GST_VERSION_MAJOR < 1 + if (!gst_element_query_position(m_gst_playbin, &fmt, &pos)) +#else + if (!gst_element_query_position(m_gst_playbin, fmt, &pos)) +#endif + { + eDebug("gst_element_query_position failed in getPlayPosition"); + return -1; + } + } + + /* pos is in nanoseconds. we have 90 000 pts per second. */ + pts = pos / 11111LL; + return 0; +} + +RESULT eServiceMP3::setTrickmode(int trick) +{ + /* trickmode is not yet supported by our dvbmediasinks. */ + return -1; +} + +RESULT eServiceMP3::isCurrentlySeekable() +{ + int ret = 3; /* just assume that seeking and fast/slow winding are possible */ + + if (!m_gst_playbin) + return 0; + if (m_state != stRunning) + return 0; + + return ret; +} + +RESULT eServiceMP3::info(ePtr<iServiceInformation>&i) +{ + i = this; + return 0; +} + +RESULT eServiceMP3::getName(std::string &name) +{ + std::string title = m_ref.getName(); + if (title.empty()) + { + name = m_ref.path; + size_t n = name.rfind('/'); + if (n != std::string::npos) + name = name.substr(n + 1); + } + else + name = title; + return 0; +} + +RESULT eServiceMP3::getEvent(ePtr<eServiceEvent> &evt, int nownext) +{ + evt = nownext ? m_event_next : m_event_now; + if (!evt) + return -1; + return 0; +} + +int eServiceMP3::getInfo(int w) +{ + const gchar *tag = 0; + + switch (w) + { + case sServiceref: return m_ref; + case sVideoHeight: return m_height; + case sVideoWidth: return m_width; + case sFrameRate: return m_framerate; + case sProgressive: return m_progressive; + case sAspect: return m_aspect; + case sTagTitle: + case sTagArtist: + case sTagAlbum: + case sTagTitleSortname: + case sTagArtistSortname: + case sTagAlbumSortname: + case sTagDate: + case sTagComposer: + case sTagGenre: + case sTagComment: + case sTagExtendedComment: + case sTagLocation: + case sTagHomepage: + case sTagDescription: + case sTagVersion: + case sTagISRC: + case sTagOrganization: + case sTagCopyright: + case sTagCopyrightURI: + case sTagContact: + case sTagLicense: + case sTagLicenseURI: + case sTagCodec: + case sTagAudioCodec: + case sTagVideoCodec: + case sTagEncoder: + case sTagLanguageCode: + case sTagKeywords: + case sTagChannelMode: + case sUser+12: + return resIsString; + case sTagTrackGain: + case sTagTrackPeak: + case sTagAlbumGain: + case sTagAlbumPeak: + case sTagReferenceLevel: + case sTagBeatsPerMinute: + case sTagImage: + case sTagPreviewImage: + case sTagAttachment: + return resIsPyObject; + case sTagTrackNumber: + tag = GST_TAG_TRACK_NUMBER; + break; + case sTagTrackCount: + tag = GST_TAG_TRACK_COUNT; + break; + case sTagAlbumVolumeNumber: + tag = GST_TAG_ALBUM_VOLUME_NUMBER; + break; + case sTagAlbumVolumeCount: + tag = GST_TAG_ALBUM_VOLUME_COUNT; + break; + case sTagBitrate: + tag = GST_TAG_BITRATE; + break; + case sTagNominalBitrate: + tag = GST_TAG_NOMINAL_BITRATE; + break; + case sTagMinimumBitrate: + tag = GST_TAG_MINIMUM_BITRATE; + break; + case sTagMaximumBitrate: + tag = GST_TAG_MAXIMUM_BITRATE; + break; + case sTagSerial: + tag = GST_TAG_SERIAL; + break; + case sTagEncoderVersion: + tag = GST_TAG_ENCODER_VERSION; + break; + case sTagCRC: + tag = "has-crc"; + break; + default: + return resNA; + } + + if (!m_stream_tags || !tag) + return 0; + + guint value; + if (gst_tag_list_get_uint(m_stream_tags, tag, &value)) + return (int) value; + + return 0; +} + +std::string eServiceMP3::getInfoString(int w) +{ + if ( m_sourceinfo.is_streaming ) + { + switch (w) + { + case sProvider: + return "IPTV"; + case sServiceref: + { + eServiceReference ref(m_ref); + ref.type = eServiceFactoryMP3::id; + ref.path.clear(); + return ref.toString(); + } + default: + break; + } + } + + if ( !m_stream_tags && w < sUser && w > 26 ) + return ""; + const gchar *tag = 0; + switch (w) + { + case sTagTitle: + tag = GST_TAG_TITLE; + break; + case sTagArtist: + tag = GST_TAG_ARTIST; + break; + case sTagAlbum: + tag = GST_TAG_ALBUM; + break; + case sTagTitleSortname: + tag = GST_TAG_TITLE_SORTNAME; + break; + case sTagArtistSortname: + tag = GST_TAG_ARTIST_SORTNAME; + break; + case sTagAlbumSortname: + tag = GST_TAG_ALBUM_SORTNAME; + break; + case sTagDate: + GDate *date; + if (gst_tag_list_get_date(m_stream_tags, GST_TAG_DATE, &date)) + { + gchar res[5]; + g_date_strftime (res, sizeof(res), "%Y-%M-%D", date); + return (std::string)res; + } + break; + case sTagComposer: + tag = GST_TAG_COMPOSER; + break; + case sTagGenre: + tag = GST_TAG_GENRE; + break; + case sTagComment: + tag = GST_TAG_COMMENT; + break; + case sTagExtendedComment: + tag = GST_TAG_EXTENDED_COMMENT; + break; + case sTagLocation: + tag = GST_TAG_LOCATION; + break; + case sTagHomepage: + tag = GST_TAG_HOMEPAGE; + break; + case sTagDescription: + tag = GST_TAG_DESCRIPTION; + break; + case sTagVersion: + tag = GST_TAG_VERSION; + break; + case sTagISRC: + tag = GST_TAG_ISRC; + break; + case sTagOrganization: + tag = GST_TAG_ORGANIZATION; + break; + case sTagCopyright: + tag = GST_TAG_COPYRIGHT; + break; + case sTagCopyrightURI: + tag = GST_TAG_COPYRIGHT_URI; + break; + case sTagContact: + tag = GST_TAG_CONTACT; + break; + case sTagLicense: + tag = GST_TAG_LICENSE; + break; + case sTagLicenseURI: + tag = GST_TAG_LICENSE_URI; + break; + case sTagCodec: + tag = GST_TAG_CODEC; + break; + case sTagAudioCodec: + tag = GST_TAG_AUDIO_CODEC; + break; + case sTagVideoCodec: + tag = GST_TAG_VIDEO_CODEC; + break; + case sTagEncoder: + tag = GST_TAG_ENCODER; + break; + case sTagLanguageCode: + tag = GST_TAG_LANGUAGE_CODE; + break; + case sTagKeywords: + tag = GST_TAG_KEYWORDS; + break; + case sTagChannelMode: + tag = "channel-mode"; + break; + case sUser+12: + return m_errorInfo.error_message; + default: + return ""; + } + if ( !tag ) + return ""; + gchar *value; + if (m_stream_tags && gst_tag_list_get_string(m_stream_tags, tag, &value)) + { + std::string res = value; + g_free(value); + return res; + } + return ""; +} + +ePtr<iServiceInfoContainer> eServiceMP3::getInfoObject(int w) +{ + eServiceMP3InfoContainer *container = new eServiceMP3InfoContainer; + ePtr<iServiceInfoContainer> retval = container; + const gchar *tag = 0; + bool isBuffer = false; + switch (w) + { + case sTagTrackGain: + tag = GST_TAG_TRACK_GAIN; + break; + case sTagTrackPeak: + tag = GST_TAG_TRACK_PEAK; + break; + case sTagAlbumGain: + tag = GST_TAG_ALBUM_GAIN; + break; + case sTagAlbumPeak: + tag = GST_TAG_ALBUM_PEAK; + break; + case sTagReferenceLevel: + tag = GST_TAG_REFERENCE_LEVEL; + break; + case sTagBeatsPerMinute: + tag = GST_TAG_BEATS_PER_MINUTE; + break; + case sTagImage: + tag = GST_TAG_IMAGE; + isBuffer = true; + break; + case sTagPreviewImage: + tag = GST_TAG_PREVIEW_IMAGE; + isBuffer = true; + break; + case sTagAttachment: + tag = GST_TAG_ATTACHMENT; + isBuffer = true; + break; + default: + break; + } + + if (m_stream_tags && tag) + { + if (isBuffer) + { + const GValue *gv_buffer = gst_tag_list_get_value_index(m_stream_tags, tag, 0); + if ( gv_buffer ) + { + GstBuffer *buffer; + buffer = gst_value_get_buffer (gv_buffer); + container->setBuffer(buffer); + } + } + else + { + gdouble value = 0.0; + gst_tag_list_get_double(m_stream_tags, tag, &value); + container->setDouble(value); + } + } + return retval; +} + +RESULT eServiceMP3::audioChannel(ePtr<iAudioChannelSelection> &ptr) +{ + ptr = this; + return 0; +} + +RESULT eServiceMP3::audioTracks(ePtr<iAudioTrackSelection> &ptr) +{ + ptr = this; + return 0; +} + +RESULT eServiceMP3::subtitle(ePtr<iSubtitleOutput> &ptr) +{ + ptr = this; + return 0; +} + +RESULT eServiceMP3::audioDelay(ePtr<iAudioDelay> &ptr) +{ + ptr = this; + return 0; +} + +int eServiceMP3::getNumberOfTracks() +{ + return m_audioStreams.size(); +} + +int eServiceMP3::getCurrentTrack() +{ + if (m_currentAudioStream == -1) + g_object_get (G_OBJECT (m_gst_playbin), "current-audio", &m_currentAudioStream, NULL); + return m_currentAudioStream; +} + +RESULT eServiceMP3::selectTrack(unsigned int i) +{ + bool validposition = false; + pts_t ppos = 0; + if (getPlayPosition(ppos) >= 0) + { + validposition = true; + ppos -= 90000; + if (ppos < 0) + ppos = 0; + } + + int ret = selectAudioStream(i); + if (!ret) + { + if (validposition) + { + /* flush */ + seekTo(ppos); + } + } + + return ret; +} + +int eServiceMP3::selectAudioStream(int i) +{ + int current_audio; + g_object_set (G_OBJECT (m_gst_playbin), "current-audio", i, NULL); + g_object_get (G_OBJECT (m_gst_playbin), "current-audio", ¤t_audio, NULL); + if ( current_audio == i ) + { + eDebug ("eServiceMP3::switched to audio stream %i", current_audio); + m_currentAudioStream = i; + return 0; + } + return -1; +} + +int eServiceMP3::getCurrentChannel() +{ + return STEREO; +} + +RESULT eServiceMP3::selectChannel(int i) +{ + eDebug("eServiceMP3::selectChannel(%i)",i); + return 0; +} + +RESULT eServiceMP3::getTrackInfo(struct iAudioTrackInfo &info, unsigned int i) +{ + if (i >= m_audioStreams.size()) + return -2; + info.m_description = m_audioStreams[i].codec; +/* if (m_audioStreams[i].type == atMPEG) + info.m_description = "MPEG"; + else if (m_audioStreams[i].type == atMP3) + info.m_description = "MP3"; + else if (m_audioStreams[i].type == atAC3) + info.m_description = "AC3"; + else if (m_audioStreams[i].type == atAAC) + info.m_description = "AAC"; + else if (m_audioStreams[i].type == atDTS) + info.m_description = "DTS"; + else if (m_audioStreams[i].type == atPCM) + info.m_description = "PCM"; + else if (m_audioStreams[i].type == atOGG) + info.m_description = "OGG"; + else if (m_audioStreams[i].type == atFLAC) + info.m_description = "FLAC"; + else + info.m_description = "???";*/ + if (info.m_language.empty()) + info.m_language = m_audioStreams[i].language_code; + return 0; +} + +subtype_t getSubtitleType(GstPad* pad, gchar *g_codec=NULL) +{ + subtype_t type = stUnknown; +#if GST_VERSION_MAJOR < 1 + GstCaps* caps = gst_pad_get_negotiated_caps(pad); +#else + GstCaps* caps = gst_pad_get_current_caps(pad); +#endif + if (!caps && !g_codec) + { + caps = gst_pad_get_allowed_caps(pad); + } + + if (caps && !gst_caps_is_empty(caps)) + { + GstStructure* str = gst_caps_get_structure(caps, 0); + if (str) + { + const gchar *g_type = gst_structure_get_name(str); + eDebug("getSubtitleType::subtitle probe caps type=%s", g_type ? g_type : "(null)"); + if (g_type) + { + if ( !strcmp(g_type, "video/x-dvd-subpicture") ) + type = stVOB; + else if ( !strcmp(g_type, "text/x-pango-markup") ) + type = stSRT; + else if ( !strcmp(g_type, "text/plain") || !strcmp(g_type, "text/x-plain") || !strcmp(g_type, "text/x-raw") ) + type = stPlainText; + else if ( !strcmp(g_type, "subpicture/x-pgs") ) + type = stPGS; + else + eDebug("getSubtitleType::unsupported subtitle caps %s (%s)", g_type, g_codec ? g_codec : "(null)"); + } + } + } + else if ( g_codec ) + { + eDebug("getSubtitleType::subtitle probe codec tag=%s", g_codec); + if ( !strcmp(g_codec, "VOB") ) + type = stVOB; + else if ( !strcmp(g_codec, "SubStation Alpha") || !strcmp(g_codec, "SSA") ) + type = stSSA; + else if ( !strcmp(g_codec, "ASS") ) + type = stASS; + else if ( !strcmp(g_codec, "SRT") ) + type = stSRT; + else if ( !strcmp(g_codec, "UTF-8 plain text") ) + type = stPlainText; + else + eDebug("getSubtitleType::unsupported subtitle codec %s", g_codec); + } + else + eDebug("getSubtitleType::unidentifiable subtitle stream!"); + + return type; +} + +void eServiceMP3::gstBusCall(GstMessage *msg) +{ + if (!msg) + return; + gchar *sourceName; + GstObject *source; + source = GST_MESSAGE_SRC(msg); + if (!GST_IS_OBJECT(source)) + return; + sourceName = gst_object_get_name(source); +#if 0 + gchar *string; + if (gst_message_get_structure(msg)) + string = gst_structure_to_string(gst_message_get_structure(msg)); + else + string = g_strdup(GST_MESSAGE_TYPE_NAME(msg)); + eDebug("eTsRemoteSource::gst_message from %s: %s", sourceName, string); + g_free(string); +#endif + switch (GST_MESSAGE_TYPE (msg)) + { + case GST_MESSAGE_EOS: + m_event((iPlayableService*)this, evEOF); + break; + case GST_MESSAGE_STATE_CHANGED: + { + if(GST_MESSAGE_SRC(msg) != GST_OBJECT(m_gst_playbin)) + break; + + GstState old_state, new_state; + gst_message_parse_state_changed(msg, &old_state, &new_state, NULL); + + if(old_state == new_state) + break; + + eDebug("eServiceMP3::state transition %s -> %s", gst_element_state_get_name(old_state), gst_element_state_get_name(new_state)); + + GstStateChange transition = (GstStateChange)GST_STATE_TRANSITION(old_state, new_state); + + switch(transition) + { + case GST_STATE_CHANGE_NULL_TO_READY: + { + } break; + case GST_STATE_CHANGE_READY_TO_PAUSED: + { +#if GST_VERSION_MAJOR >= 1 + GValue element = { 0, }; +#endif + GstIterator *children; + GstElement *subsink = gst_bin_get_by_name(GST_BIN(m_gst_playbin), "subtitle_sink"); + if (subsink) + { +#ifdef GSTREAMER_SUBTITLE_SYNC_MODE_BUG + /* + * HACK: disable sync mode for now, gstreamer suffers from a bug causing sparse streams to loose sync, after pause/resume / skip + * see: https://bugzilla.gnome.org/show_bug.cgi?id=619434 + * Sideeffect of using sync=false is that we receive subtitle buffers (far) ahead of their + * display time. + * Not too far ahead for subtitles contained in the media container. + * But for external srt files, we could receive all subtitles at once. + * And not just once, but after each pause/resume / skip. + * So as soon as gstreamer has been fixed to keep sync in sparse streams, sync needs to be re-enabled. + */ + g_object_set (G_OBJECT (subsink), "sync", FALSE, NULL); +#endif +#if 0 + /* we should not use ts-offset to sync with the decoder time, we have to do our own decoder timekeeping */ + g_object_set (G_OBJECT (subsink), "ts-offset", -2LL * GST_SECOND, NULL); + /* late buffers probably will not occur very often */ + g_object_set (G_OBJECT (subsink), "max-lateness", 0LL, NULL); + /* avoid prerolling (it might not be a good idea to preroll a sparse stream) */ + g_object_set (G_OBJECT (subsink), "async", TRUE, NULL); +#endif + eDebug("eServiceMP3::subsink properties set!"); + gst_object_unref(subsink); + } + if (audioSink) + { + gst_object_unref(GST_OBJECT(audioSink)); + audioSink = NULL; + } + if (videoSink) + { + gst_object_unref(GST_OBJECT(videoSink)); + videoSink = NULL; + } + children = gst_bin_iterate_recurse(GST_BIN(m_gst_playbin)); +#if GST_VERSION_MAJOR < 1 + audioSink = GST_ELEMENT_CAST(gst_iterator_find_custom(children, (GCompareFunc)match_sinktype, (gpointer)"GstDVBAudioSink")); +#else + if (gst_iterator_find_custom(children, (GCompareFunc)match_sinktype, &element, (gpointer)"GstDVBAudioSink")) + { + audioSink = g_value_dup_object(&element); + g_value_unset(&element); + } +#endif + gst_iterator_free(children); + children = gst_bin_iterate_recurse(GST_BIN(m_gst_playbin)); +#if GST_VERSION_MAJOR < 1 + videoSink = GST_ELEMENT_CAST(gst_iterator_find_custom(children, (GCompareFunc)match_sinktype, (gpointer)"GstDVBVideoSink")); +#else + if (gst_iterator_find_custom(children, (GCompareFunc)match_sinktype, &element, (gpointer)"GstDVBVideoSink")) + { + videoSink = g_value_dup_object(&element); + g_value_unset(&element); + } +#endif + gst_iterator_free(children); + + m_is_live = (gst_element_get_state(m_gst_playbin, NULL, NULL, 0LL) == GST_STATE_CHANGE_NO_PREROLL); + + setAC3Delay(ac3_delay); + setPCMDelay(pcm_delay); + } break; + case GST_STATE_CHANGE_PAUSED_TO_PLAYING: + { + if ( m_sourceinfo.is_streaming && m_streamingsrc_timeout ) + m_streamingsrc_timeout->stop(); + } break; + case GST_STATE_CHANGE_PLAYING_TO_PAUSED: + { + } break; + case GST_STATE_CHANGE_PAUSED_TO_READY: + { + if (audioSink) + { + gst_object_unref(GST_OBJECT(audioSink)); + audioSink = NULL; + } + if (videoSink) + { + gst_object_unref(GST_OBJECT(videoSink)); + videoSink = NULL; + } + } break; + case GST_STATE_CHANGE_READY_TO_NULL: + { + } break; + } + break; + } + case GST_MESSAGE_ERROR: + { + gchar *debug; + GError *err; + gst_message_parse_error (msg, &err, &debug); + g_free (debug); + eWarning("Gstreamer error: %s (%i) from %s", err->message, err->code, sourceName ); + if ( err->domain == GST_STREAM_ERROR ) + { + if ( err->code == GST_STREAM_ERROR_CODEC_NOT_FOUND ) + { + if ( g_strrstr(sourceName, "videosink") ) + m_event((iPlayableService*)this, evUser+11); + else if ( g_strrstr(sourceName, "audiosink") ) + m_event((iPlayableService*)this, evUser+10); + } + } + g_error_free(err); + break; + } + case GST_MESSAGE_INFO: + { + gchar *debug; + GError *inf; + + gst_message_parse_info (msg, &inf, &debug); + g_free (debug); + if ( inf->domain == GST_STREAM_ERROR && inf->code == GST_STREAM_ERROR_DECODE ) + { + if ( g_strrstr(sourceName, "videosink") ) + m_event((iPlayableService*)this, evUser+14); + } + g_error_free(inf); + break; + } + case GST_MESSAGE_TAG: + { + GstTagList *tags, *result; + gst_message_parse_tag(msg, &tags); + + result = gst_tag_list_merge(m_stream_tags, tags, GST_TAG_MERGE_REPLACE); + if (result) + { + if (m_stream_tags) + gst_tag_list_free(m_stream_tags); + m_stream_tags = result; + } + + const GValue *gv_image = gst_tag_list_get_value_index(tags, GST_TAG_IMAGE, 0); + if ( gv_image ) + { + GstBuffer *buf_image; + buf_image = gst_value_get_buffer (gv_image); + int fd = open("/tmp/.id3coverart", O_CREAT|O_WRONLY|O_TRUNC, 0644); + if (fd >= 0) + { + guint8 *data; + gsize size; +#if GST_VERSION_MAJOR < 1 + data = GST_BUFFER_DATA(buf_image); + size = GST_BUFFER_SIZE(buf_image); +#else + GstMapInfo map; + gst_buffer_map(buf_image, &map, GST_MAP_READ); + data = map.data; + size = map.size; +#endif + int ret = write(fd, data, size); +#if GST_VERSION_MAJOR >= 1 + gst_buffer_unmap(buf_image, &map); +#endif + close(fd); + eDebug("eServiceMP3::/tmp/.id3coverart %d bytes written ", ret); + } + m_event((iPlayableService*)this, evUser+13); + } + gst_tag_list_free(tags); + m_event((iPlayableService*)this, evUpdatedInfo); + break; + } + case GST_MESSAGE_ASYNC_DONE: + { + if(GST_MESSAGE_SRC(msg) != GST_OBJECT(m_gst_playbin)) + break; + + gint i, n_video = 0, n_audio = 0, n_text = 0; + + g_object_get (m_gst_playbin, "n-video", &n_video, NULL); + g_object_get (m_gst_playbin, "n-audio", &n_audio, NULL); + g_object_get (m_gst_playbin, "n-text", &n_text, NULL); + + eDebug("eServiceMP3::async-done - %d video, %d audio, %d subtitle", n_video, n_audio, n_text); + + if ( n_video + n_audio <= 0 ) + stop(); + + m_audioStreams.clear(); + m_subtitleStreams.clear(); + + for (i = 0; i < n_audio; i++) + { + audioStream audio; + gchar *g_codec, *g_lang; + GstTagList *tags = NULL; + GstPad* pad = 0; + g_signal_emit_by_name (m_gst_playbin, "get-audio-pad", i, &pad); +#if GST_VERSION_MAJOR < 1 + GstCaps* caps = gst_pad_get_negotiated_caps(pad); +#else + GstCaps* caps = gst_pad_get_current_caps(pad); +#endif + if (!caps) + continue; + GstStructure* str = gst_caps_get_structure(caps, 0); + const gchar *g_type = gst_structure_get_name(str); + eDebug("AUDIO STRUCT=%s", g_type); + audio.type = gstCheckAudioPad(str); + audio.language_code = "und"; + audio.codec = g_type; + g_codec = NULL; + g_lang = NULL; + g_signal_emit_by_name (m_gst_playbin, "get-audio-tags", i, &tags); +#if GST_VERSION_MAJOR < 1 + if (tags && gst_is_tag_list(tags)) +#else + if (tags && GST_IS_TAG_LIST(tags)) +#endif + { + if (gst_tag_list_get_string(tags, GST_TAG_AUDIO_CODEC, &g_codec)) + { + audio.codec = std::string(g_codec); + g_free(g_codec); + } + if (gst_tag_list_get_string(tags, GST_TAG_LANGUAGE_CODE, &g_lang)) + { + audio.language_code = std::string(g_lang); + g_free(g_lang); + } + gst_tag_list_free(tags); + } + eDebug("eServiceMP3::audio stream=%i codec=%s language=%s", i, audio.codec.c_str(), audio.language_code.c_str()); + m_audioStreams.push_back(audio); + gst_caps_unref(caps); + } + + for (i = 0; i < n_text; i++) + { + gchar *g_codec = NULL, *g_lang = NULL; + GstTagList *tags = NULL; + g_signal_emit_by_name (m_gst_playbin, "get-text-tags", i, &tags); + subtitleStream subs; + subs.language_code = "und"; +#if GST_VERSION_MAJOR < 1 + if (tags && gst_is_tag_list(tags)) +#else + if (tags && GST_IS_TAG_LIST(tags)) +#endif + { + if (gst_tag_list_get_string(tags, GST_TAG_LANGUAGE_CODE, &g_lang)) + { + subs.language_code = g_lang; + g_free(g_lang); + } + gst_tag_list_get_string(tags, GST_TAG_SUBTITLE_CODEC, &g_codec); + gst_tag_list_free(tags); + } + + eDebug("eServiceMP3::subtitle stream=%i language=%s codec=%s", i, subs.language_code.c_str(), g_codec ? g_codec : "(null)"); + + GstPad* pad = 0; + g_signal_emit_by_name (m_gst_playbin, "get-text-pad", i, &pad); + if ( pad ) + g_signal_connect (G_OBJECT (pad), "notify::caps", G_CALLBACK (gstTextpadHasCAPS), this); + + subs.type = getSubtitleType(pad, g_codec); + g_free(g_codec); + m_subtitleStreams.push_back(subs); + } + m_event((iPlayableService*)this, evUpdatedInfo); + + if ( m_errorInfo.missing_codec != "" ) + { + if (m_errorInfo.missing_codec.find("video/") == 0 || (m_errorInfo.missing_codec.find("audio/") == 0 && m_audioStreams.empty())) + m_event((iPlayableService*)this, evUser+12); + } + break; + } + case GST_MESSAGE_ELEMENT: + { + const GstStructure *msgstruct = gst_message_get_structure(msg); + if (msgstruct) + { + if ( gst_is_missing_plugin_message(msg) ) + { + GstCaps *caps = NULL; + gst_structure_get (msgstruct, "detail", GST_TYPE_CAPS, &caps, NULL); + if (caps) + { + std::string codec = (const char*) gst_caps_to_string(caps); + gchar *description = gst_missing_plugin_message_get_description(msg); + if ( description ) + { + eDebug("eServiceMP3::m_errorInfo.missing_codec = %s", codec.c_str()); + m_errorInfo.error_message = "GStreamer plugin " + (std::string)description + " not available!\n"; + m_errorInfo.missing_codec = codec.substr(0,(codec.find_first_of(','))); + g_free(description); + } + gst_caps_unref(caps); + } + } + else + { + const gchar *eventname = gst_structure_get_name(msgstruct); + if ( eventname ) + { + if (!strcmp(eventname, "eventSizeChanged") || !strcmp(eventname, "eventSizeAvail")) + { + gst_structure_get_int (msgstruct, "aspect_ratio", &m_aspect); + gst_structure_get_int (msgstruct, "width", &m_width); + gst_structure_get_int (msgstruct, "height", &m_height); + if (strstr(eventname, "Changed")) + m_event((iPlayableService*)this, evVideoSizeChanged); + } + else if (!strcmp(eventname, "eventFrameRateChanged") || !strcmp(eventname, "eventFrameRateAvail")) + { + gst_structure_get_int (msgstruct, "frame_rate", &m_framerate); + if (strstr(eventname, "Changed")) + m_event((iPlayableService*)this, evVideoFramerateChanged); + } + else if (!strcmp(eventname, "eventProgressiveChanged") || !strcmp(eventname, "eventProgressiveAvail")) + { + gst_structure_get_int (msgstruct, "progressive", &m_progressive); + if (strstr(eventname, "Changed")) + m_event((iPlayableService*)this, evVideoProgressiveChanged); + } + else if (!strcmp(eventname, "redirect")) + { + const char *uri = gst_structure_get_string(msgstruct, "new-location"); + eDebug("redirect to %s", uri); + gst_element_set_state (m_gst_playbin, GST_STATE_NULL); + g_object_set(G_OBJECT (m_gst_playbin), "uri", uri, NULL); + gst_element_set_state (m_gst_playbin, GST_STATE_PLAYING); + } + } + } + } + break; + } + case GST_MESSAGE_BUFFERING: + if (m_state == stRunning && m_sourceinfo.is_streaming) + { + GstBufferingMode mode; + gst_message_parse_buffering(msg, &(m_bufferInfo.bufferPercent)); + eDebug("Buffering %u percent done", m_bufferInfo.bufferPercent); + gst_message_parse_buffering_stats(msg, &mode, &(m_bufferInfo.avgInRate), &(m_bufferInfo.avgOutRate), &(m_bufferInfo.bufferingLeft)); + m_event((iPlayableService*)this, evBuffering); + /* + * we don't react to buffer level messages, unless we are configured to use a prefill buffer + * (even if we are not configured to, we still use the buffer, but we rely on it to remain at the + * healthy level at all times, without ever having to pause the stream) + * + * Also, it does not make sense to pause the stream if it is a live stream + * (in which case the sink will not produce data while paused, so we won't + * recover from an empty buffer) + */ + if (m_use_prefillbuffer && !m_is_live && --m_ignore_buffering_messages <= 0) + { + if (m_bufferInfo.bufferPercent == 100) + { + GstState state; + gst_element_get_state(m_gst_playbin, &state, NULL, 0LL); + if (state != GST_STATE_PLAYING) + { + eDebug("start playing"); + gst_element_set_state (m_gst_playbin, GST_STATE_PLAYING); + } + /* + * when we start the pipeline, the contents of the buffer will immediately drain + * into the (hardware buffers of the) sinks, so we will receive low buffer level + * messages right away. + * Ignore the first few buffering messages, giving the buffer the chance to recover + * a bit, before we start handling empty buffer states again. + */ + m_ignore_buffering_messages = 5; + } + else if (m_bufferInfo.bufferPercent == 0) + { + eDebug("start pause"); + gst_element_set_state (m_gst_playbin, GST_STATE_PAUSED); + m_ignore_buffering_messages = 0; + } + else + { + m_ignore_buffering_messages = 0; + } + } + } + break; + case GST_MESSAGE_STREAM_STATUS: + { + GstStreamStatusType type; + GstElement *owner; + gst_message_parse_stream_status (msg, &type, &owner); + if ( type == GST_STREAM_STATUS_TYPE_CREATE && m_sourceinfo.is_streaming ) + { + if ( GST_IS_PAD(source) ) + owner = gst_pad_get_parent_element(GST_PAD(source)); + else if ( GST_IS_ELEMENT(source) ) + owner = GST_ELEMENT(source); + else + owner = 0; + if ( owner ) + { + GstElementFactory *factory = gst_element_get_factory(GST_ELEMENT(owner)); + const gchar *name = gst_plugin_feature_get_name(GST_PLUGIN_FEATURE(factory)); + if (!strcmp(name, "souphttpsrc")) + { + m_streamingsrc_timeout->start(HTTP_TIMEOUT*1000, true); + g_object_set (G_OBJECT (owner), "timeout", HTTP_TIMEOUT, NULL); + eDebug("eServiceMP3::GST_STREAM_STATUS_TYPE_CREATE -> setting timeout on %s to %is", name, HTTP_TIMEOUT); + } + } + if ( GST_IS_PAD(source) ) + gst_object_unref(owner); + } + break; + } + default: + break; + } + g_free (sourceName); +} + +void eServiceMP3::handleMessage(GstMessage *msg) +{ + if (GST_MESSAGE_TYPE(msg) == GST_MESSAGE_STATE_CHANGED && GST_MESSAGE_SRC(msg) != GST_OBJECT(m_gst_playbin)) + { + /* + * ignore verbose state change messages for all active elements; + * we only need to handle state-change events for the playbin + */ + gst_message_unref(msg); + return; + } + m_pump.send(new GstMessageContainer(1, msg, NULL, NULL)); +} + +GstBusSyncReply eServiceMP3::gstBusSyncHandler(GstBus *bus, GstMessage *message, gpointer user_data) +{ + eServiceMP3 *_this = (eServiceMP3*)user_data; + if (_this) _this->handleMessage(message); + return GST_BUS_DROP; +} + +void eServiceMP3::playbinNotifySource(GObject *object, GParamSpec *unused, gpointer user_data) +{ + GstElement *source = NULL; + eServiceMP3 *_this = (eServiceMP3*)user_data; + g_object_get(object, "source", &source, NULL); + if (source) + { + if (g_object_class_find_property(G_OBJECT_GET_CLASS(source), "user-agent") != 0 && !_this->m_useragent.empty()) + { + g_object_set(G_OBJECT(source), "user-agent", _this->m_useragent.c_str(), NULL); + } + if (g_object_class_find_property(G_OBJECT_GET_CLASS(source), "extra-headers") != 0 && !_this->m_extra_headers.empty()) + { +#if GST_VERSION_MAJOR < 1 + GstStructure *extras = gst_structure_empty_new("extras"); +#else + GstStructure *extras = gst_structure_new_empty("extras"); +#endif + size_t pos = 0; + while (pos != std::string::npos) + { + std::string name, value; + size_t start = pos; + size_t len = std::string::npos; + pos = _this->m_extra_headers.find(':', pos); + if (pos != std::string::npos) + { + len = pos - start; + pos++; + name = _this->m_extra_headers.substr(start, len); + start = pos; + len = std::string::npos; + pos = _this->m_extra_headers.find('|', pos); + if (pos != std::string::npos) + { + len = pos - start; + pos++; + } + value = _this->m_extra_headers.substr(start, len); + } + if (!name.empty() && !value.empty()) + { + GValue header; + eDebug("setting extra-header '%s:%s'", name.c_str(), value.c_str()); + memset(&header, 0, sizeof(GValue)); + g_value_init(&header, G_TYPE_STRING); + g_value_set_string(&header, value.c_str()); + gst_structure_set_value(extras, name.c_str(), &header); + } + else + { + eDebug("Invalid header format %s", _this->m_extra_headers.c_str()); + break; + } + } + if (gst_structure_n_fields(extras) > 0) + { + g_object_set(G_OBJECT(source), "extra-headers", extras, NULL); + } + gst_structure_free(extras); + } + gst_object_unref(source); + } +} + +void eServiceMP3::handleElementAdded(GstBin *bin, GstElement *element, gpointer user_data) +{ + eServiceMP3 *_this = (eServiceMP3*)user_data; + if (_this) + { + gchar *elementname = gst_element_get_name(element); + + if (g_str_has_prefix(elementname, "queue2")) + { + if (_this->m_download_buffer_path != "") + { + g_object_set(G_OBJECT(element), "temp-template", _this->m_download_buffer_path.c_str(), NULL); + } + else + { + g_object_set(G_OBJECT(element), "temp-template", NULL, NULL); + } + } + else if (g_str_has_prefix(elementname, "uridecodebin") +#if GST_VERSION_MAJOR < 1 + || g_str_has_prefix(elementname, "decodebin2")) +#else + || g_str_has_prefix(elementname, "decodebin")) +#endif + { + /* + * Listen for queue2 element added to uridecodebin/decodebin2 as well. + * Ignore other bins since they may have unrelated queues + */ + g_signal_connect(element, "element-added", G_CALLBACK(handleElementAdded), user_data); + } + g_free(elementname); + } +} + +audiotype_t eServiceMP3::gstCheckAudioPad(GstStructure* structure) +{ + if (!structure) + return atUnknown; + + if ( gst_structure_has_name (structure, "audio/mpeg")) + { + gint mpegversion, layer = -1; + if (!gst_structure_get_int (structure, "mpegversion", &mpegversion)) + return atUnknown; + + switch (mpegversion) { + case 1: + { + gst_structure_get_int (structure, "layer", &layer); + if ( layer == 3 ) + return atMP3; + else + return atMPEG; + break; + } + case 2: + return atAAC; + case 4: + return atAAC; + default: + return atUnknown; + } + } + + else if ( gst_structure_has_name (structure, "audio/x-ac3") || gst_structure_has_name (structure, "audio/ac3") ) + return atAC3; + else if ( gst_structure_has_name (structure, "audio/x-dts") || gst_structure_has_name (structure, "audio/dts") ) + return atDTS; +#if GST_VERSION_MAJOR < 1 + else if ( gst_structure_has_name (structure, "audio/x-raw-int") ) +#else + else if ( gst_structure_has_name (structure, "audio/x-raw") ) +#endif + return atPCM; + + return atUnknown; +} + +void eServiceMP3::gstPoll(ePtr<GstMessageContainer> const &msg) +{ + switch (msg->getType()) + { + case 1: + { + GstMessage *gstmessage = *((GstMessageContainer*)msg); + if (gstmessage) + { + gstBusCall(gstmessage); + } + break; + } + case 2: + { + GstBuffer *buffer = *((GstMessageContainer*)msg); + if (buffer) + { + pullSubtitle(buffer); + } + break; + } + case 3: + { + GstPad *pad = *((GstMessageContainer*)msg); + gstTextpadHasCAPS_synced(pad); + break; + } + } +} + +eAutoInitPtr<eServiceFactoryMP3> init_eServiceFactoryMP3(eAutoInitNumbers::service+1, "eServiceFactoryMP3"); + +void eServiceMP3::gstCBsubtitleAvail(GstElement *subsink, GstBuffer *buffer, gpointer user_data) +{ + eServiceMP3 *_this = (eServiceMP3*)user_data; + if (_this->m_currentSubtitleStream < 0) + { + if (buffer) gst_buffer_unref(buffer); + return; + } + _this->m_pump.send(new GstMessageContainer(2, NULL, NULL, buffer)); +} + +void eServiceMP3::gstTextpadHasCAPS(GstPad *pad, GParamSpec * unused, gpointer user_data) +{ + eServiceMP3 *_this = (eServiceMP3*)user_data; + + gst_object_ref (pad); + + _this->m_pump.send(new GstMessageContainer(3, NULL, pad, NULL)); +} + +void eServiceMP3::gstTextpadHasCAPS_synced(GstPad *pad) +{ + GstCaps *caps = NULL; + + g_object_get (G_OBJECT (pad), "caps", &caps, NULL); + + if (caps) + { + subtitleStream subs; + + eDebug("gstTextpadHasCAPS:: signal::caps = %s", gst_caps_to_string(caps)); +// eDebug("gstGhostpadHasCAPS_synced %p %d", pad, m_subtitleStreams.size()); + + if (m_currentSubtitleStream >= 0 && m_currentSubtitleStream < (int)m_subtitleStreams.size()) + subs = m_subtitleStreams[m_currentSubtitleStream]; + else { + subs.type = stUnknown; + subs.pad = pad; + } + + if ( subs.type == stUnknown ) + { + GstTagList *tags = NULL; + gchar *g_lang = NULL; + g_signal_emit_by_name (m_gst_playbin, "get-text-tags", m_currentSubtitleStream, &tags); + + subs.language_code = "und"; + subs.type = getSubtitleType(pad); +#if GST_VERSION_MAJOR < 1 + if (tags && gst_is_tag_list(tags)) +#else + if (tags && GST_IS_TAG_LIST(tags)) +#endif + { + if (gst_tag_list_get_string(tags, GST_TAG_LANGUAGE_CODE, &g_lang)) + { + subs.language_code = std::string(g_lang); + g_free(g_lang); + } + } + + if (m_currentSubtitleStream >= 0 && m_currentSubtitleStream < (int)m_subtitleStreams.size()) + m_subtitleStreams[m_currentSubtitleStream] = subs; + else + m_subtitleStreams.push_back(subs); + } + +// eDebug("gstGhostpadHasCAPS:: m_gst_prev_subtitle_caps=%s equal=%i",gst_caps_to_string(m_gst_prev_subtitle_caps),gst_caps_is_equal(m_gst_prev_subtitle_caps, caps)); + + gst_caps_unref (caps); + } +} + +void eServiceMP3::pullSubtitle(GstBuffer *buffer) +{ + if (buffer && m_currentSubtitleStream >= 0 && m_currentSubtitleStream < (int)m_subtitleStreams.size()) + { + gint64 buf_pos = GST_BUFFER_TIMESTAMP(buffer); + gint64 duration_ns = GST_BUFFER_DURATION(buffer); +#if GST_VERSION_MAJOR < 1 + size_t len = GST_BUFFER_SIZE(buffer); +#else + size_t len = gst_buffer_get_size(buffer); +#endif + int subType = m_subtitleStreams[m_currentSubtitleStream].type; + eDebug("pullSubtitle type=%d size=%zu", subType, len); + if ( subType ) + { + if ( subType < stVOB ) + { + int delay = eConfigManager::getConfigIntValue("config.subtitles.pango_subtitles_delay"); + int subtitle_fps = eConfigManager::getConfigIntValue("config.subtitles.pango_subtitles_fps"); + + double convert_fps = 1.0; + if (subtitle_fps > 1 && m_framerate > 0) + convert_fps = subtitle_fps / (double)m_framerate; + +#if GST_VERSION_MAJOR < 1 + std::string line((const char*)GST_BUFFER_DATA(buffer), len); +#else + std::string line(len); + gst_buffer_extract(buffer, 0, (char*)line.data(), len); +#endif + eDebug("got new text subtitle @ buf_pos = %lld ns (in pts=%lld), dur=%lld: '%s' ", buf_pos, buf_pos/11111, duration_ns, line.c_str()); + + uint32_t start_ms = ((buf_pos / 1000000ULL) * convert_fps) + delay; + uint32_t end_ms = start_ms + (duration_ns / 1000000ULL); + m_subtitle_pages.insert(subtitle_pages_map_pair_t(end_ms, subtitle_page_t(start_ms, end_ms, line))); + m_subtitle_sync_timer->start(1, true); + } + else + { + eDebug("unsupported subpicture... ignoring"); + } + } + } +} + +void eServiceMP3::pushSubtitles() +{ + pts_t running_pts = 0; + int32_t next_timer = 0, decoder_ms, start_ms, end_ms, diff_start_ms, diff_end_ms; + subtitle_pages_map_t::iterator current; + + // wait until clock is stable + + if (getPlayPosition(running_pts) < 0) + m_decoder_time_valid_state = 0; + + if (m_decoder_time_valid_state < 4) + { + m_decoder_time_valid_state++; + + if (m_prev_decoder_time == running_pts) + m_decoder_time_valid_state = 0; + + if (m_decoder_time_valid_state < 4) + { + //eDebug("*** push subtitles, waiting for clock to stabilise"); + m_prev_decoder_time = running_pts; + next_timer = 50; + goto exit; + } + + //eDebug("*** push subtitles, clock stable"); + } + + decoder_ms = running_pts / 90; + +#if 0 + eDebug("\n*** all subs: "); + + for (current = m_subtitle_pages.begin(); current != m_subtitle_pages.end(); current++) + { + start_ms = current->second.start_ms; + end_ms = current->second.end_ms; + diff_start_ms = start_ms - decoder_ms; + diff_end_ms = end_ms - decoder_ms; + + eDebug(" start: %d, end: %d, diff_start: %d, diff_end: %d: %s", + start_ms, end_ms, diff_start_ms, diff_end_ms, current->second.text.c_str()); + } + + eDebug("\n\n"); +#endif + + for (current = m_subtitle_pages.lower_bound(decoder_ms); current != m_subtitle_pages.end(); current++) + { + start_ms = current->second.start_ms; + end_ms = current->second.end_ms; + diff_start_ms = start_ms - decoder_ms; + diff_end_ms = end_ms - decoder_ms; + +#if 0 + eDebug("*** next subtitle: decoder: %d, start: %d, end: %d, duration_ms: %d, diff_start: %d, diff_end: %d : %s", + decoder_ms, start_ms, end_ms, end_ms - start_ms, diff_start_ms, diff_end_ms, current->second.text.c_str()); +#endif + + if (diff_end_ms < 0) + { + //eDebug("*** current sub has already ended, skip: %d\n", diff_end_ms); + continue; + } + + if (diff_start_ms > 20) + { + //eDebug("*** current sub in the future, start timer, %d\n", diff_start_ms); + next_timer = diff_start_ms; + goto exit; + } + + // showtime + + if (m_subtitle_widget) + { + //eDebug("*** current sub actual, show!"); + + ePangoSubtitlePage pango_page; + gRGB rgbcol(0xD0,0xD0,0xD0); + + pango_page.m_elements.push_back(ePangoSubtitlePageElement(rgbcol, current->second.text.c_str())); + pango_page.m_show_pts = start_ms * 90; // actually completely unused by widget! + pango_page.m_timeout = end_ms - decoder_ms; // take late start into account + + m_subtitle_widget->setPage(pango_page); + } + + //eDebug("*** no next sub scheduled, check NEXT subtitle"); + } + + // no more subs in cache, fall through + +exit: + if (next_timer == 0) + { + //eDebug("*** next timer = 0, set default timer!"); + next_timer = 1000; + } + + m_subtitle_sync_timer->start(next_timer, true); + + eDebug("\n\n"); +} + +RESULT eServiceMP3::enableSubtitles(iSubtitleUser *user, struct SubtitleTrack &track) +{ + if (m_currentSubtitleStream != track.pid) + { + g_object_set (G_OBJECT (m_gst_playbin), "current-text", -1, NULL); + m_subtitle_sync_timer->stop(); + m_subtitle_pages.clear(); + m_prev_decoder_time = -1; + m_decoder_time_valid_state = 0; + m_currentSubtitleStream = track.pid; + m_cachedSubtitleStream = m_currentSubtitleStream; + g_object_set (G_OBJECT (m_gst_playbin), "current-text", m_currentSubtitleStream, NULL); + + m_subtitle_widget = user; + + eDebug ("eServiceMP3::switched to subtitle stream %i", m_currentSubtitleStream); + +#ifdef GSTREAMER_SUBTITLE_SYNC_MODE_BUG + /* + * when we're running the subsink in sync=false mode, + * we have to force a seek, before the new subtitle stream will start + */ + seekRelative(-1, 90000); +#endif + } + + return 0; +} + +RESULT eServiceMP3::disableSubtitles() +{ + eDebug("eServiceMP3::disableSubtitles"); + m_currentSubtitleStream = -1; + m_cachedSubtitleStream = m_currentSubtitleStream; + g_object_set (G_OBJECT (m_gst_playbin), "current-text", m_currentSubtitleStream, NULL); + m_subtitle_sync_timer->stop(); + m_subtitle_pages.clear(); + m_prev_decoder_time = -1; + m_decoder_time_valid_state = 0; + if (m_subtitle_widget) m_subtitle_widget->destroy(); + m_subtitle_widget = 0; + return 0; +} + +RESULT eServiceMP3::getCachedSubtitle(struct SubtitleTrack &track) +{ + + bool autoturnon = eConfigManager::getConfigBoolValue("config.subtitles.pango_autoturnon", true); + if (!autoturnon) + return -1; + + if (m_cachedSubtitleStream >= 0 && m_cachedSubtitleStream < (int)m_subtitleStreams.size()) + { + track.type = 2; + track.pid = m_cachedSubtitleStream; + track.page_number = int(m_subtitleStreams[m_cachedSubtitleStream].type); + track.magazine_number = 0; + return 0; + } + return -1; +} + +RESULT eServiceMP3::getSubtitleList(std::vector<struct SubtitleTrack> &subtitlelist) +{ +// eDebug("eServiceMP3::getSubtitleList"); + int stream_idx = 0; + + for (std::vector<subtitleStream>::iterator IterSubtitleStream(m_subtitleStreams.begin()); IterSubtitleStream != m_subtitleStreams.end(); ++IterSubtitleStream) + { + subtype_t type = IterSubtitleStream->type; + switch(type) + { + case stUnknown: + case stVOB: + case stPGS: + break; + default: + { + struct SubtitleTrack track; + track.type = 2; + track.pid = stream_idx; + track.page_number = int(type); + track.magazine_number = 0; + track.language_code = IterSubtitleStream->language_code; + subtitlelist.push_back(track); + } + } + stream_idx++; + } + eDebug("eServiceMP3::getSubtitleList finished"); + return 0; +} + +RESULT eServiceMP3::streamed(ePtr<iStreamedService> &ptr) +{ + ptr = this; + return 0; +} + +ePtr<iStreamBufferInfo> eServiceMP3::getBufferCharge() +{ + return new eStreamBufferInfo(m_bufferInfo.bufferPercent, m_bufferInfo.avgInRate, m_bufferInfo.avgOutRate, m_bufferInfo.bufferingLeft, m_buffer_size); +} + +int eServiceMP3::setBufferSize(int size) +{ + m_buffer_size = size; + g_object_set (G_OBJECT (m_gst_playbin), "buffer-size", m_buffer_size, NULL); + return 0; +} + +int eServiceMP3::getAC3Delay() +{ + return ac3_delay; +} + +int eServiceMP3::getPCMDelay() +{ + return pcm_delay; +} + +void eServiceMP3::setAC3Delay(int delay) +{ + ac3_delay = delay; + if (!m_gst_playbin || m_state != stRunning) + return; + else + { + int config_delay_int = delay; + + /* + * NOTE: We only look for dvbmediasinks. + * If either the video or audio sink is of a different type, + * we have no chance to get them synced anyway. + */ + if (videoSink) + { + config_delay_int += eConfigManager::getConfigIntValue("config.av.generalAC3delay"); + } + else + { + eDebug("dont apply ac3 delay when no video is running!"); + config_delay_int = 0; + } + + if (audioSink) + { + eTSMPEGDecoder::setHwAC3Delay(config_delay_int); + } + } +} + +void eServiceMP3::setPCMDelay(int delay) +{ + pcm_delay = delay; + if (!m_gst_playbin || m_state != stRunning) + return; + else + { + int config_delay_int = delay; + + /* + * NOTE: We only look for dvbmediasinks. + * If either the video or audio sink is of a different type, + * we have no chance to get them synced anyway. + */ + if (videoSink) + { + config_delay_int += eConfigManager::getConfigIntValue("config.av.generalPCMdelay"); + } + else + { + eDebug("dont apply pcm delay when no video is running!"); + config_delay_int = 0; + } + + if (audioSink) + { + eTSMPEGDecoder::setHwPCMDelay(config_delay_int); + } + } +} diff --git a/lib/service/servicemp3.h b/lib/service/servicemp3.h new file mode 100644 index 0000000..37bfb1b --- /dev/null +++ b/lib/service/servicemp3.h @@ -0,0 +1,339 @@ +#ifndef __servicemp3_h +#define __servicemp3_h + +#include <lib/base/message.h> +#include <lib/service/iservice.h> +#include <lib/dvb/pmt.h> +#include <lib/dvb/subtitle.h> +#include <lib/dvb/teletext.h> +#include <gst/gst.h> +/* for subtitles */ +#include <lib/gui/esubtitle.h> + +class eStaticServiceMP3Info; + +class eServiceFactoryMP3: public iServiceHandler +{ + DECLARE_REF(eServiceFactoryMP3); +public: + eServiceFactoryMP3(); + virtual ~eServiceFactoryMP3(); + enum { id = 0x1001 }; + + // iServiceHandler + RESULT play(const eServiceReference &, ePtr<iPlayableService> &ptr); + RESULT record(const eServiceReference &, ePtr<iRecordableService> &ptr); + RESULT list(const eServiceReference &, ePtr<iListableService> &ptr); + RESULT info(const eServiceReference &, ePtr<iStaticServiceInformation> &ptr); + RESULT offlineOperations(const eServiceReference &, ePtr<iServiceOfflineOperations> &ptr); +private: + ePtr<eStaticServiceMP3Info> m_service_info; +}; + +class eStaticServiceMP3Info: public iStaticServiceInformation +{ + DECLARE_REF(eStaticServiceMP3Info); + friend class eServiceFactoryMP3; + eStaticServiceMP3Info(); +public: + RESULT getName(const eServiceReference &ref, std::string &name); + int getLength(const eServiceReference &ref); + int getInfo(const eServiceReference &ref, int w); + int isPlayable(const eServiceReference &ref, const eServiceReference &ignore, bool simulate) { return 1; } + long long getFileSize(const eServiceReference &ref); + RESULT getEvent(const eServiceReference &ref, ePtr<eServiceEvent> &ptr, time_t start_time); +}; + +class eStreamBufferInfo: public iStreamBufferInfo +{ + DECLARE_REF(eStreamBufferInfo); + int bufferPercentage; + int inputRate; + int outputRate; + int bufferSpace; + int bufferSize; + +public: + eStreamBufferInfo(int percentage, int inputrate, int outputrate, int space, int size); + + int getBufferPercentage() const; + int getAverageInputRate() const; + int getAverageOutputRate() const; + int getBufferSpace() const; + int getBufferSize() const; +}; + +class eServiceMP3InfoContainer: public iServiceInfoContainer +{ + DECLARE_REF(eServiceMP3InfoContainer); + + double doubleValue; + GstBuffer *bufferValue; + + unsigned char *bufferData; + unsigned int bufferSize; +#if GST_VERSION_MAJOR >= 1 + GstMapInfo map; +#endif + +public: + eServiceMP3InfoContainer(); + ~eServiceMP3InfoContainer(); + + double getDouble(unsigned int index) const; + unsigned char *getBuffer(unsigned int &size) const; + + void setDouble(double value); + void setBuffer(GstBuffer *buffer); +}; + +typedef struct _GstElement GstElement; + +typedef enum { atUnknown, atMPEG, atMP3, atAC3, atDTS, atAAC, atPCM, atOGG, atFLAC, atWMA } audiotype_t; +typedef enum { stUnknown, stPlainText, stSSA, stASS, stSRT, stVOB, stPGS } subtype_t; +typedef enum { ctNone, ctMPEGTS, ctMPEGPS, ctMKV, ctAVI, ctMP4, ctVCD, ctCDA, ctASF, ctOGG } containertype_t; + +class eServiceMP3: public iPlayableService, public iPauseableService, + public iServiceInformation, public iSeekableService, public iAudioTrackSelection, public iAudioChannelSelection, + public iSubtitleOutput, public iStreamedService, public iAudioDelay, public Object +{ + DECLARE_REF(eServiceMP3); +public: + virtual ~eServiceMP3(); + + // iPlayableService + RESULT connectEvent(const Slot2<void,iPlayableService*,int> &event, ePtr<eConnection> &connection); + RESULT start(); + RESULT stop(); + RESULT setTarget(int target); + + RESULT pause(ePtr<iPauseableService> &ptr); + RESULT setSlowMotion(int ratio); + RESULT setFastForward(int ratio); + + RESULT seek(ePtr<iSeekableService> &ptr); + RESULT audioTracks(ePtr<iAudioTrackSelection> &ptr); + RESULT audioChannel(ePtr<iAudioChannelSelection> &ptr); + RESULT subtitle(ePtr<iSubtitleOutput> &ptr); + RESULT audioDelay(ePtr<iAudioDelay> &ptr); + + // not implemented (yet) + RESULT frontendInfo(ePtr<iFrontendInformation> &ptr) { ptr = 0; return -1; } + RESULT subServices(ePtr<iSubserviceList> &ptr) { ptr = 0; return -1; } + RESULT timeshift(ePtr<iTimeshiftService> &ptr) { ptr = 0; return -1; } + RESULT cueSheet(ePtr<iCueSheet> &ptr) { ptr = 0; return -1; } + + RESULT rdsDecoder(ePtr<iRdsDecoder> &ptr) { ptr = 0; return -1; } + RESULT keys(ePtr<iServiceKeys> &ptr) { ptr = 0; return -1; } + RESULT stream(ePtr<iStreamableService> &ptr) { ptr = 0; return -1; } + + // iPausableService + RESULT pause(); + RESULT unpause(); + + RESULT info(ePtr<iServiceInformation>&); + + // iSeekableService + RESULT getLength(pts_t &SWIG_OUTPUT); + RESULT seekTo(pts_t to); + RESULT seekRelative(int direction, pts_t to); + RESULT getPlayPosition(pts_t &SWIG_OUTPUT); + RESULT setTrickmode(int trick); + RESULT isCurrentlySeekable(); + + // iServiceInformation + RESULT getName(std::string &name); + RESULT getEvent(ePtr<eServiceEvent> &evt, int nownext); + int getInfo(int w); + std::string getInfoString(int w); + ePtr<iServiceInfoContainer> getInfoObject(int w); + + // iAudioTrackSelection + int getNumberOfTracks(); + RESULT selectTrack(unsigned int i); + RESULT getTrackInfo(struct iAudioTrackInfo &, unsigned int n); + int getCurrentTrack(); + + // iAudioChannelSelection + int getCurrentChannel(); + RESULT selectChannel(int i); + + // iSubtitleOutput + RESULT enableSubtitles(iSubtitleUser *user, SubtitleTrack &track); + RESULT disableSubtitles(); + RESULT getSubtitleList(std::vector<SubtitleTrack> &sublist); + RESULT getCachedSubtitle(SubtitleTrack &track); + + // iStreamedService + RESULT streamed(ePtr<iStreamedService> &ptr); + ePtr<iStreamBufferInfo> getBufferCharge(); + int setBufferSize(int size); + + // iAudioDelay + int getAC3Delay(); + int getPCMDelay(); + void setAC3Delay(int); + void setPCMDelay(int); + + struct audioStream + { + GstPad* pad; + audiotype_t type; + std::string language_code; /* iso-639, if available. */ + std::string codec; /* clear text codec description */ + audioStream() + :pad(0), type(atUnknown) + { + } + }; + struct subtitleStream + { + GstPad* pad; + subtype_t type; + std::string language_code; /* iso-639, if available. */ + subtitleStream() + :pad(0) + { + } + }; + struct sourceStream + { + audiotype_t audiotype; + containertype_t containertype; + bool is_video; + bool is_streaming; + sourceStream() + :audiotype(atUnknown), containertype(ctNone), is_video(FALSE), is_streaming(FALSE) + { + } + }; + struct bufferInfo + { + gint bufferPercent; + gint avgInRate; + gint avgOutRate; + gint64 bufferingLeft; + bufferInfo() + :bufferPercent(0), avgInRate(0), avgOutRate(0), bufferingLeft(-1) + { + } + }; + struct errorInfo + { + std::string error_message; + std::string missing_codec; + }; + +protected: + ePtr<eTimer> m_nownext_timer; + ePtr<eServiceEvent> m_event_now, m_event_next; + void updateEpgCacheNowNext(); + +private: + static int pcm_delay; + static int ac3_delay; + int m_currentAudioStream; + int m_currentSubtitleStream; + int m_cachedSubtitleStream; + int selectAudioStream(int i); + std::vector<audioStream> m_audioStreams; + std::vector<subtitleStream> m_subtitleStreams; + iSubtitleUser *m_subtitle_widget; + gdouble m_currentTrickRatio; + friend class eServiceFactoryMP3; + eServiceReference m_ref; + int m_buffer_size; + int m_ignore_buffering_messages; + bool m_is_live; + bool m_use_prefillbuffer; + bufferInfo m_bufferInfo; + errorInfo m_errorInfo; + std::string m_download_buffer_path; + eServiceMP3(eServiceReference ref); + Signal2<void,iPlayableService*,int> m_event; + enum + { + stIdle, stRunning, stStopped, + }; + int m_state; + GstElement *m_gst_playbin, *audioSink, *videoSink; + GstTagList *m_stream_tags; + + class GstMessageContainer: public iObject + { + DECLARE_REF(GstMessageContainer); + GstMessage *messagePointer; + GstPad *messagePad; + GstBuffer *messageBuffer; + int messageType; + + public: + GstMessageContainer(int type, GstMessage *msg, GstPad *pad, GstBuffer *buffer) + { + messagePointer = msg; + messagePad = pad; + messageBuffer = buffer; + messageType = type; + } + ~GstMessageContainer() + { + if (messagePointer) gst_message_unref(messagePointer); + if (messagePad) gst_object_unref(messagePad); + if (messageBuffer) gst_buffer_unref(messageBuffer); + } + int getType() { return messageType; } + operator GstMessage *() { return messagePointer; } + operator GstPad *() { return messagePad; } + operator GstBuffer *() { return messageBuffer; } + }; + eFixedMessagePump<ePtr<GstMessageContainer> > m_pump; + + audiotype_t gstCheckAudioPad(GstStructure* structure); + void gstBusCall(GstMessage *msg); + void handleMessage(GstMessage *msg); + static GstBusSyncReply gstBusSyncHandler(GstBus *bus, GstMessage *message, gpointer user_data); + static void gstTextpadHasCAPS(GstPad *pad, GParamSpec * unused, gpointer user_data); + void gstTextpadHasCAPS_synced(GstPad *pad); + static void gstCBsubtitleAvail(GstElement *element, GstBuffer *buffer, gpointer user_data); + GstPad* gstCreateSubtitleSink(eServiceMP3* _this, subtype_t type); + void gstPoll(ePtr<GstMessageContainer> const &); + static void playbinNotifySource(GObject *object, GParamSpec *unused, gpointer user_data); + static gint match_sinktype(GstElement *element, gpointer type); + static void handleElementAdded(GstBin *bin, GstElement *element, gpointer user_data); + + struct subtitle_page_t + { + uint32_t start_ms; + uint32_t end_ms; + std::string text; + + subtitle_page_t(uint32_t start_ms_in, uint32_t end_ms_in, const std::string& text_in) + : start_ms(start_ms_in), end_ms(end_ms_in), text(text_in) + { + } + }; + + typedef std::map<uint32_t, subtitle_page_t> subtitle_pages_map_t; + typedef std::pair<uint32_t, subtitle_page_t> subtitle_pages_map_pair_t; + subtitle_pages_map_t m_subtitle_pages; + ePtr<eTimer> m_subtitle_sync_timer; + + ePtr<eTimer> m_streamingsrc_timeout; + pts_t m_prev_decoder_time; + int m_decoder_time_valid_state; + + void pushSubtitles(); + void pullSubtitle(GstBuffer *buffer); + void sourceTimeout(); + sourceStream m_sourceinfo; + gulong m_subs_to_pull_handler_id; + + RESULT seekToImpl(pts_t to); + + gint m_aspect, m_width, m_height, m_framerate, m_progressive; + std::string m_useragent; + std::string m_extra_headers; + RESULT trickSeek(gdouble ratio); +}; + +#endif diff --git a/lib/service/servicexine.cpp b/lib/service/servicexine.cpp new file mode 100644 index 0000000..f472af1 --- /dev/null +++ b/lib/service/servicexine.cpp @@ -0,0 +1,395 @@ +#define HAVE_XINE +#ifdef HAVE_XINE + +/* yes, it's xine, not Xine. But eServicexine looks odd. */ + +#include <lib/base/eerror.h> +#include <lib/base/object.h> +#include <lib/base/ebase.h> +#include <string> +#include <lib/service/servicexine.h> +#include <lib/service/service.h> +#include <lib/base/init_num.h> +#include <lib/base/init.h> + +static xine_t *xine; /* TODO: move this into a static class */ + +// eServiceFactoryXine + +eServiceFactoryXine::eServiceFactoryXine() +{ + ePtr<eServiceCenter> sc; + + eServiceCenter::getPrivInstance(sc); + if (sc) + sc->addServiceFactory(eServiceFactoryXine::id, this); + + m_service_info = new eStaticServiceXineInfo(); +} + +eServiceFactoryXine::~eServiceFactoryXine() +{ + ePtr<eServiceCenter> sc; + + eServiceCenter::getPrivInstance(sc); + if (sc) + sc->removeServiceFactory(eServiceFactoryXine::id); +} + +DEFINE_REF(eServiceFactoryXine) + + // iServiceHandler +RESULT eServiceFactoryXine::play(const eServiceReference &ref, ePtr<iPlayableService> &ptr) +{ + // check resources... + ptr = new eServiceXine(ref.path.c_str()); + return 0; +} + +RESULT eServiceFactoryXine::record(const eServiceReference &ref, ePtr<iRecordableService> &ptr) +{ + ptr=0; + return -1; +} + +RESULT eServiceFactoryXine::list(const eServiceReference &, ePtr<iListableService> &ptr) +{ + ptr=0; + return -1; +} + +RESULT eServiceFactoryXine::info(const eServiceReference &ref, ePtr<iStaticServiceInformation> &ptr) +{ + ptr = m_service_info; + return 0; +} + +RESULT eServiceFactoryXine::offlineOperations(const eServiceReference &, ePtr<iServiceOfflineOperations> &ptr) +{ + ptr = 0; + return -1; +} + + +// eStaticServiceXineInfo + + +DEFINE_REF(eStaticServiceXineInfo) + +eStaticServiceXineInfo::eStaticServiceXineInfo() +{ +} + +RESULT eStaticServiceXineInfo::getName(const eServiceReference &ref, std::string &name) +{ + size_t last = ref.path.rfind('/'); + if (last != std::string::npos) + name = ref.path.substr(last+1); + else + name = ref.path; + return 0; +} + +int eStaticServiceXineInfo::getLength(const eServiceReference &ref) +{ + return -1; +} + +// eServiceXine + +eServiceXine::eServiceXine(const char *filename): m_filename(filename), m_pump(eApp, 1) +{ + m_state = stError; + stream = 0; + event_queue = 0; + ao_port = 0; + vo_port = 0; + + +// if ((vo_port = xine_open_video_driver(xine, "fb", XINE_VISUAL_TYPE_FB, NULL)) == NULL) + if ((vo_port = xine_open_video_driver(xine, "none", XINE_VISUAL_TYPE_NONE, NULL)) == NULL) + { + eWarning("cannot open xine video driver"); + } + + if ((ao_port = xine_open_audio_driver(xine , "alsa", NULL)) == NULL) + { + eWarning("cannot open xine audio driver"); + } + stream = xine_stream_new(xine, ao_port, vo_port); + event_queue = xine_event_new_queue(stream); + xine_event_create_listener_thread(event_queue, eventListenerWrap, this); + +// CONNECT(m_pump.recv_msg, eServiceXine::gstPoll); + m_state = stIdle; +} + +eServiceXine::~eServiceXine() +{ + if (m_state == stRunning) + stop(); + + eDebug("close stream"); + if (stream) + xine_close(stream); + eDebug("dispose queue"); + if (event_queue) + xine_event_dispose_queue(event_queue); + eDebug("dispose stream"); + if (stream) + xine_dispose(stream); + eDebug("dispose ao_port"); + if (ao_port) + xine_close_audio_driver(xine, ao_port); + eDebug("dispose vo port"); + if (vo_port) + xine_close_video_driver(xine, vo_port); + eDebug("done."); +} + +DEFINE_REF(eServiceXine); + +void eServiceXine::eventListenerWrap(void *user_data, const xine_event_t *event) +{ + eServiceXine *e = (eServiceXine*)user_data; + e->eventListener(event); +} + +void eServiceXine::eventListener(const xine_event_t *event) +{ + eDebug("handle %d", event->type); + switch(event->type) { + case XINE_EVENT_UI_PLAYBACK_FINISHED: + break; + } +} + +RESULT eServiceXine::connectEvent(const Slot2<void,iPlayableService*,int> &event, ePtr<eConnection> &connection) +{ + connection = new eConnection((iPlayableService*)this, m_event.connect(event)); + return 0; +} + +RESULT eServiceXine::start() +{ + if (m_state == stError) + return -1; + + ASSERT(m_state == stIdle); + ASSERT(stream); + + if (!xine_open(stream, m_filename.c_str())) + { + eWarning("xine_open failed!"); + return -1; + } + + if (!xine_play(stream, 0, 0)) + { + eWarning("xine_play failed!"); + return -1; + } + + m_state = stRunning; + + m_event(this, evStart); + return 0; +} + +RESULT eServiceXine::stop() +{ + if (m_state == stError) + return -1; + + ASSERT(m_state != stIdle); + ASSERT(stream); + if (m_state == stStopped) + return -1; + printf("Xine: %s stop\n", m_filename.c_str()); + xine_stop(stream); + // STOP + m_state = stStopped; + return 0; +} + +RESULT eServiceXine::setTarget(int target) +{ + return -1; +} + +RESULT eServiceXine::pause(ePtr<iPauseableService> &ptr) +{ + ptr=this; + return 0; +} + +RESULT eServiceXine::setSlowMotion(int ratio) +{ + return -1; +} + +RESULT eServiceXine::setFastForward(int ratio) +{ + return -1; +} + + // iPausableService +RESULT eServiceXine::pause() +{ + //SPEED_PAUSE + return 0; +} + +RESULT eServiceXine::unpause() +{ + //SPEED_NORMAL + // PLAY + return 0; +} + + /* iSeekableService */ +RESULT eServiceXine::seek(ePtr<iSeekableService> &ptr) +{ + ptr = this; + return 0; +} + +RESULT eServiceXine::getLength(pts_t &pts) +{ + pts = -1; + if (m_state == stError) + return 1; + ASSERT(stream); + + int pos_stream, pos_time, length_time; + + if (!xine_get_pos_length(stream, &pos_stream, &pos_time, &length_time)) + { + eDebug("xine_get_pos_length failed!"); + return 1; + } + + eDebug("length: %d ms", length_time); + + pts = length_time * 90; + + return 0; +} + +RESULT eServiceXine::seekTo(pts_t to) +{ + // SEEK + return 0; +} + +RESULT eServiceXine::seekRelative(int direction, pts_t to) +{ + // SEEK RELATIVE + return 0; +} + +RESULT eServiceXine::getPlayPosition(pts_t &pts) +{ + pts = -1; + if (m_state == stError) + return 1; + ASSERT(stream); + + int pos_stream, pos_time, length_time; + + if (!xine_get_pos_length(stream, &pos_stream, &pos_time, &length_time)) + return 1; + + eDebug("pos_time: %d", pos_time); + pts = pos_time * 90; + + // GET POSITION + return 0; +} + +RESULT eServiceXine::setTrickmode(int trick) +{ + /* trickmode currently doesn't make any sense for us. */ + return -1; +} + +RESULT eServiceXine::isCurrentlySeekable() +{ + return 3; +} + +RESULT eServiceXine::info(ePtr<iServiceInformation>&i) +{ + i = this; + return 0; +} + +RESULT eServiceXine::getName(std::string &name) +{ + name = "xine File: " + m_filename; + return 0; +} + +int eServiceXine::getInfo(int w) +{ + switch (w) + { + case sTitle: + case sArtist: + case sAlbum: + case sComment: + case sTracknumber: + case sGenre: + return resIsString; + + default: + return resNA; + } +} + +std::string eServiceXine::getInfoString(int w) +{ + return ""; +} + +class eXine +{ +public: + eXine() + { + /* this should be done once. */ + + if(!xine_check_version(1, 1, 0)) + { + int major, minor, sub; + xine_get_version (&major, &minor, &sub); + eWarning("Require xine library version 1.1.0, found %d.%d.%d.\n", + major, minor,sub); + return; + } else { + int major, minor, sub; + eDebug("Built with xine library %d.%d.%d (%s)\n", + XINE_MAJOR_VERSION, XINE_MINOR_VERSION, XINE_SUB_VERSION, XINE_VERSION); + + xine_get_version (&major, &minor, &sub); + + eDebug("Found xine library version: %d.%d.%d (%s).\n", + major, minor, sub, xine_get_version_string()); + } + + xine = xine_new(); + xine_engine_set_param(xine, XINE_ENGINE_PARAM_VERBOSITY, 1); + xine_init(xine); + } + ~eXine() + { + if (xine) + xine_exit(xine); + } +}; + +eAutoInitP0<eXine> init_eXine(eAutoInitNumbers::service, "libxine"); +eAutoInitPtr<eServiceFactoryXine> init_eServiceFactoryXine(eAutoInitNumbers::service+1, "eServiceFactoryXine"); +#else +#warning xine not available +#endif diff --git a/lib/service/servicexine.h b/lib/service/servicexine.h new file mode 100644 index 0000000..37fcf67 --- /dev/null +++ b/lib/service/servicexine.h @@ -0,0 +1,118 @@ +#ifndef __servicemp3_h +#define __servicemp3_h + +#define HAVE_XINE +#ifdef HAVE_XINE +#include <lib/base/message.h> +#include <lib/service/iservice.h> + +#include <xine.h> +#include <xine/xineutils.h> + +class eStaticServiceXineInfo; + +class eServiceFactoryXine: public iServiceHandler +{ + DECLARE_REF(eServiceFactoryXine); +public: + eServiceFactoryXine(); + virtual ~eServiceFactoryXine(); + enum { id = 0x1010 }; + + // iServiceHandler + RESULT play(const eServiceReference &, ePtr<iPlayableService> &ptr); + RESULT record(const eServiceReference &, ePtr<iRecordableService> &ptr); + RESULT list(const eServiceReference &, ePtr<iListableService> &ptr); + RESULT info(const eServiceReference &, ePtr<iStaticServiceInformation> &ptr); + RESULT offlineOperations(const eServiceReference &, ePtr<iServiceOfflineOperations> &ptr); +private: + ePtr<eStaticServiceXineInfo> m_service_info; +}; + +class eStaticServiceXineInfo: public iStaticServiceInformation +{ + DECLARE_REF(eStaticServiceXineInfo); + friend class eServiceFactoryXine; + eStaticServiceXineInfo(); +public: + RESULT getName(const eServiceReference &ref, std::string &name); + int getLength(const eServiceReference &ref); +}; + +typedef struct _GstElement GstElement; + +class eServiceXine: public iPlayableService, public iPauseableService, + public iServiceInformation, public iSeekableService, public Object +{ + DECLARE_REF(eServiceXine); +public: + virtual ~eServiceXine(); + + // iPlayableService + RESULT connectEvent(const Slot2<void,iPlayableService*,int> &event, ePtr<eConnection> &connection); + RESULT start(); + RESULT stop(); + RESULT setTarget(int target); + + RESULT pause(ePtr<iPauseableService> &ptr); + RESULT setSlowMotion(int ratio); + RESULT setFastForward(int ratio); + + RESULT seek(ePtr<iSeekableService> &ptr); + + // not implemented (yet) + RESULT audioChannel(ePtr<iAudioChannelSelection> &ptr) { ptr = 0; return -1; } + RESULT audioTracks(ePtr<iAudioTrackSelection> &ptr) { ptr = 0; return -1; } + RESULT frontendInfo(ePtr<iFrontendInformation> &ptr) { ptr = 0; return -1; } + RESULT subServices(ePtr<iSubserviceList> &ptr) { ptr = 0; return -1; } + RESULT timeshift(ePtr<iTimeshiftService> &ptr) { ptr = 0; return -1; } + RESULT cueSheet(ePtr<iCueSheet> &ptr) { ptr = 0; return -1; } + RESULT subtitle(ePtr<iSubtitleOutput> &ptr) { ptr = 0; return -1; } + RESULT audioDelay(ePtr<iAudioDelay> &ptr) { ptr = 0; return -1; } + RESULT rdsDecoder(ePtr<iRdsDecoder> &ptr) { ptr = 0; return -1; } + RESULT keys(ePtr<iServiceKeys> &ptr) { ptr = 0; return -1; } + + // iPausableService + RESULT pause(); + RESULT unpause(); + + RESULT info(ePtr<iServiceInformation>&); + + // iSeekableService + RESULT getLength(pts_t &SWIG_OUTPUT); + RESULT seekTo(pts_t to); + RESULT seekRelative(int direction, pts_t to); + RESULT getPlayPosition(pts_t &SWIG_OUTPUT); + RESULT setTrickmode(int trick); + RESULT isCurrentlySeekable(); + + // iServiceInformation + RESULT getName(std::string &name); + int getInfo(int w); + std::string getInfoString(int w); +private: + friend class eServiceFactoryXine; + std::string m_filename; + eServiceXine(const char *filename); + Signal2<void,iPlayableService*,int> m_event; + + xine_stream_t *stream; + xine_video_port_t *vo_port; + xine_audio_port_t *ao_port; + xine_event_queue_t *event_queue; + + enum + { + stError, stIdle, stRunning, stStopped, + }; + int m_state; + + static void eventListenerWrap(void *user_data, const xine_event_t *event); + void eventListener(const xine_event_t *event); + + + eFixedMessagePump<int> m_pump; +}; +#endif + +#endif diff --git a/m4/ax_pkg_swig.m4 b/m4/ax_pkg_swig.m4 new file mode 100644 index 0000000..81226fb --- /dev/null +++ b/m4/ax_pkg_swig.m4 @@ -0,0 +1,133 @@ +# =========================================================================== +# http://www.gnu.org/software/autoconf-archive/ax_pkg_swig.html +# =========================================================================== +# +# SYNOPSIS +# +# AX_PKG_SWIG([major.minor.micro], [action-if-found], [action-if-not-found]) +# +# DESCRIPTION +# +# This macro searches for a SWIG installation on your system. If found, +# then SWIG is AC_SUBST'd; if not found, then $SWIG is empty. If SWIG is +# found, then SWIG_LIB is set to the SWIG library path, and AC_SUBST'd. +# +# You can use the optional first argument to check if the version of the +# available SWIG is greater than or equal to the value of the argument. It +# should have the format: N[.N[.N]] (N is a number between 0 and 999. Only +# the first N is mandatory.) If the version argument is given (e.g. +# 1.3.17), AX_PKG_SWIG checks that the swig package is this version number +# or higher. +# +# As usual, action-if-found is executed if SWIG is found, otherwise +# action-if-not-found is executed. +# +# In configure.in, use as: +# +# AX_PKG_SWIG(1.3.17, [], [ AC_MSG_ERROR([SWIG is required to build..]) ]) +# AX_SWIG_ENABLE_CXX +# AX_SWIG_MULTI_MODULE_SUPPORT +# AX_SWIG_PYTHON +# +# LICENSE +# +# Copyright (c) 2008 Sebastian Huber <sebastian-huber@web.de> +# Copyright (c) 2008 Alan W. Irwin <irwin@beluga.phys.uvic.ca> +# Copyright (c) 2008 Rafael Laboissiere <rafael@laboissiere.net> +# Copyright (c) 2008 Andrew Collier <colliera@ukzn.ac.za> +# +# This program is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation; either version 2 of the License, or (at your +# option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General +# Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program. If not, see <http://www.gnu.org/licenses/>. +# +# As a special exception, the respective Autoconf Macro's copyright owner +# gives unlimited permission to copy, distribute and modify the configure +# scripts that are the output of Autoconf when processing the Macro. You +# need not follow the terms of the GNU General Public License when using +# or distributing such scripts, even though portions of the text of the +# Macro appear in them. The GNU General Public License (GPL) does govern +# all other use of the material that constitutes the Autoconf Macro. +# +# This special exception to the GPL applies to versions of the Autoconf +# Macro released by the Autoconf Archive. When you make and distribute a +# modified version of the Autoconf Macro, you may extend this special +# exception to the GPL to apply to your modified version as well. + +#serial 7 + +AC_DEFUN([AX_PKG_SWIG],[ + AC_PATH_PROG([SWIG],[swig]) + if test -z "$SWIG" ; then + m4_ifval([$3],[$3],[:]) + elif test -n "$1" ; then + AC_MSG_CHECKING([SWIG version]) + [swig_version=`$SWIG -version 2>&1 | grep 'SWIG Version' | sed 's/.*\([0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\).*/\1/g'`] + AC_MSG_RESULT([$swig_version]) + if test -n "$swig_version" ; then + # Calculate the required version number components + [required=$1] + [required_major=`echo $required | sed 's/[^0-9].*//'`] + if test -z "$required_major" ; then + [required_major=0] + fi + [required=`echo $required | sed 's/[0-9]*[^0-9]//'`] + [required_minor=`echo $required | sed 's/[^0-9].*//'`] + if test -z "$required_minor" ; then + [required_minor=0] + fi + [required=`echo $required | sed 's/[0-9]*[^0-9]//'`] + [required_patch=`echo $required | sed 's/[^0-9].*//'`] + if test -z "$required_patch" ; then + [required_patch=0] + fi + # Calculate the available version number components + [available=$swig_version] + [available_major=`echo $available | sed 's/[^0-9].*//'`] + if test -z "$available_major" ; then + [available_major=0] + fi + [available=`echo $available | sed 's/[0-9]*[^0-9]//'`] + [available_minor=`echo $available | sed 's/[^0-9].*//'`] + if test -z "$available_minor" ; then + [available_minor=0] + fi + [available=`echo $available | sed 's/[0-9]*[^0-9]//'`] + [available_patch=`echo $available | sed 's/[^0-9].*//'`] + if test -z "$available_patch" ; then + [available_patch=0] + fi + # Convert the version tuple into a single number for easier comparison. + # Using base 100 should be safe since SWIG internally uses BCD values + # to encode its version number. + required_swig_vernum=`expr $required_major \* 10000 \ + \+ $required_minor \* 100 \+ $required_patch` + available_swig_vernum=`expr $available_major \* 10000 \ + \+ $available_minor \* 100 \+ $available_patch` + + if test $available_swig_vernum -lt $required_swig_vernum; then + AC_MSG_WARN([SWIG version >= $1 is required. You have $swig_version.]) + SWIG='' + m4_ifval([$3],[$3],[]) + else + AC_MSG_CHECKING([for SWIG library]) + SWIG_LIB=`$SWIG -swiglib` + AC_MSG_RESULT([$SWIG_LIB]) + m4_ifval([$2],[$2],[]) + fi + else + AC_MSG_WARN([cannot determine SWIG version]) + SWIG='' + m4_ifval([$3],[$3],[]) + fi + fi + AC_SUBST([SWIG_LIB]) +]) diff --git a/m4/ax_pthread.m4 b/m4/ax_pthread.m4 new file mode 100644 index 0000000..2152a80 --- /dev/null +++ b/m4/ax_pthread.m4 @@ -0,0 +1,283 @@ +# =========================================================================== +# http://www.gnu.org/software/autoconf-archive/ax_pthread.html +# =========================================================================== +# +# SYNOPSIS +# +# AX_PTHREAD([ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]]) +# +# DESCRIPTION +# +# This macro figures out how to build C programs using POSIX threads. It +# sets the PTHREAD_LIBS output variable to the threads library and linker +# flags, and the PTHREAD_CFLAGS output variable to any special C compiler +# flags that are needed. (The user can also force certain compiler +# flags/libs to be tested by setting these environment variables.) +# +# Also sets PTHREAD_CC to any special C compiler that is needed for +# multi-threaded programs (defaults to the value of CC otherwise). (This +# is necessary on AIX to use the special cc_r compiler alias.) +# +# NOTE: You are assumed to not only compile your program with these flags, +# but also link it with them as well. e.g. you should link with +# $PTHREAD_CC $CFLAGS $PTHREAD_CFLAGS $LDFLAGS ... $PTHREAD_LIBS $LIBS +# +# If you are only building threads programs, you may wish to use these +# variables in your default LIBS, CFLAGS, and CC: +# +# LIBS="$PTHREAD_LIBS $LIBS" +# CFLAGS="$CFLAGS $PTHREAD_CFLAGS" +# CC="$PTHREAD_CC" +# +# In addition, if the PTHREAD_CREATE_JOINABLE thread-attribute constant +# has a nonstandard name, defines PTHREAD_CREATE_JOINABLE to that name +# (e.g. PTHREAD_CREATE_UNDETACHED on AIX). +# +# ACTION-IF-FOUND is a list of shell commands to run if a threads library +# is found, and ACTION-IF-NOT-FOUND is a list of commands to run it if it +# is not found. If ACTION-IF-FOUND is not specified, the default action +# will define HAVE_PTHREAD. +# +# Please let the authors know if this macro fails on any platform, or if +# you have any other suggestions or comments. This macro was based on work +# by SGJ on autoconf scripts for FFTW (http://www.fftw.org/) (with help +# from M. Frigo), as well as ac_pthread and hb_pthread macros posted by +# Alejandro Forero Cuervo to the autoconf macro repository. We are also +# grateful for the helpful feedback of numerous users. +# +# LICENSE +# +# Copyright (c) 2008 Steven G. Johnson <stevenj@alum.mit.edu> +# +# This program is free software: you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation, either version 3 of the License, or (at your +# option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General +# Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program. If not, see <http://www.gnu.org/licenses/>. +# +# As a special exception, the respective Autoconf Macro's copyright owner +# gives unlimited permission to copy, distribute and modify the configure +# scripts that are the output of Autoconf when processing the Macro. You +# need not follow the terms of the GNU General Public License when using +# or distributing such scripts, even though portions of the text of the +# Macro appear in them. The GNU General Public License (GPL) does govern +# all other use of the material that constitutes the Autoconf Macro. +# +# This special exception to the GPL applies to versions of the Autoconf +# Macro released by the Autoconf Archive. When you make and distribute a +# modified version of the Autoconf Macro, you may extend this special +# exception to the GPL to apply to your modified version as well. + +#serial 11 + +AU_ALIAS([ACX_PTHREAD], [AX_PTHREAD]) +AC_DEFUN([AX_PTHREAD], [ +AC_REQUIRE([AC_CANONICAL_HOST]) +AC_LANG_SAVE +AC_LANG_C +ax_pthread_ok=no + +# We used to check for pthread.h first, but this fails if pthread.h +# requires special compiler flags (e.g. on True64 or Sequent). +# It gets checked for in the link test anyway. + +# First of all, check if the user has set any of the PTHREAD_LIBS, +# etcetera environment variables, and if threads linking works using +# them: +if test x"$PTHREAD_LIBS$PTHREAD_CFLAGS" != x; then + save_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS $PTHREAD_CFLAGS" + save_LIBS="$LIBS" + LIBS="$PTHREAD_LIBS $LIBS" + AC_MSG_CHECKING([for pthread_join in LIBS=$PTHREAD_LIBS with CFLAGS=$PTHREAD_CFLAGS]) + AC_TRY_LINK_FUNC(pthread_join, ax_pthread_ok=yes) + AC_MSG_RESULT($ax_pthread_ok) + if test x"$ax_pthread_ok" = xno; then + PTHREAD_LIBS="" + PTHREAD_CFLAGS="" + fi + LIBS="$save_LIBS" + CFLAGS="$save_CFLAGS" +fi + +# We must check for the threads library under a number of different +# names; the ordering is very important because some systems +# (e.g. DEC) have both -lpthread and -lpthreads, where one of the +# libraries is broken (non-POSIX). + +# Create a list of thread flags to try. Items starting with a "-" are +# C compiler flags, and other items are library names, except for "none" +# which indicates that we try without any flags at all, and "pthread-config" +# which is a program returning the flags for the Pth emulation library. + +ax_pthread_flags="pthreads none -Kthread -kthread lthread -pthread -pthreads -mthreads pthread --thread-safe -mt pthread-config" + +# The ordering *is* (sometimes) important. Some notes on the +# individual items follow: + +# pthreads: AIX (must check this before -lpthread) +# none: in case threads are in libc; should be tried before -Kthread and +# other compiler flags to prevent continual compiler warnings +# -Kthread: Sequent (threads in libc, but -Kthread needed for pthread.h) +# -kthread: FreeBSD kernel threads (preferred to -pthread since SMP-able) +# lthread: LinuxThreads port on FreeBSD (also preferred to -pthread) +# -pthread: Linux/gcc (kernel threads), BSD/gcc (userland threads) +# -pthreads: Solaris/gcc +# -mthreads: Mingw32/gcc, Lynx/gcc +# -mt: Sun Workshop C (may only link SunOS threads [-lthread], but it +# doesn't hurt to check since this sometimes defines pthreads too; +# also defines -D_REENTRANT) +# ... -mt is also the pthreads flag for HP/aCC +# pthread: Linux, etcetera +# --thread-safe: KAI C++ +# pthread-config: use pthread-config program (for GNU Pth library) + +case "${host_cpu}-${host_os}" in + *solaris*) + + # On Solaris (at least, for some versions), libc contains stubbed + # (non-functional) versions of the pthreads routines, so link-based + # tests will erroneously succeed. (We need to link with -pthreads/-mt/ + # -lpthread.) (The stubs are missing pthread_cleanup_push, or rather + # a function called by this macro, so we could check for that, but + # who knows whether they'll stub that too in a future libc.) So, + # we'll just look for -pthreads and -lpthread first: + + ax_pthread_flags="-pthreads pthread -mt -pthread $ax_pthread_flags" + ;; + + *-darwin*) + ax_pthread_flags="-pthread $ax_pthread_flags" + ;; +esac + +if test x"$ax_pthread_ok" = xno; then +for flag in $ax_pthread_flags; do + + case $flag in + none) + AC_MSG_CHECKING([whether pthreads work without any flags]) + ;; + + -*) + AC_MSG_CHECKING([whether pthreads work with $flag]) + PTHREAD_CFLAGS="$flag" + ;; + + pthread-config) + AC_CHECK_PROG(ax_pthread_config, pthread-config, yes, no) + if test x"$ax_pthread_config" = xno; then continue; fi + PTHREAD_CFLAGS="`pthread-config --cflags`" + PTHREAD_LIBS="`pthread-config --ldflags` `pthread-config --libs`" + ;; + + *) + AC_MSG_CHECKING([for the pthreads library -l$flag]) + PTHREAD_LIBS="-l$flag" + ;; + esac + + save_LIBS="$LIBS" + save_CFLAGS="$CFLAGS" + LIBS="$PTHREAD_LIBS $LIBS" + CFLAGS="$CFLAGS $PTHREAD_CFLAGS" + + # Check for various functions. We must include pthread.h, + # since some functions may be macros. (On the Sequent, we + # need a special flag -Kthread to make this header compile.) + # We check for pthread_join because it is in -lpthread on IRIX + # while pthread_create is in libc. We check for pthread_attr_init + # due to DEC craziness with -lpthreads. We check for + # pthread_cleanup_push because it is one of the few pthread + # functions on Solaris that doesn't have a non-functional libc stub. + # We try pthread_create on general principles. + AC_TRY_LINK([#include <pthread.h> + static void routine(void* a) {a=0;} + static void* start_routine(void* a) {return a;}], + [pthread_t th; pthread_attr_t attr; + pthread_create(&th,0,start_routine,0); + pthread_join(th, 0); + pthread_attr_init(&attr); + pthread_cleanup_push(routine, 0); + pthread_cleanup_pop(0); ], + [ax_pthread_ok=yes]) + + LIBS="$save_LIBS" + CFLAGS="$save_CFLAGS" + + AC_MSG_RESULT($ax_pthread_ok) + if test "x$ax_pthread_ok" = xyes; then + break; + fi + + PTHREAD_LIBS="" + PTHREAD_CFLAGS="" +done +fi + +# Various other checks: +if test "x$ax_pthread_ok" = xyes; then + save_LIBS="$LIBS" + LIBS="$PTHREAD_LIBS $LIBS" + save_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS $PTHREAD_CFLAGS" + + # Detect AIX lossage: JOINABLE attribute is called UNDETACHED. + AC_MSG_CHECKING([for joinable pthread attribute]) + attr_name=unknown + for attr in PTHREAD_CREATE_JOINABLE PTHREAD_CREATE_UNDETACHED; do + AC_TRY_LINK([#include <pthread.h>], [int attr=$attr; return attr;], + [attr_name=$attr; break]) + done + AC_MSG_RESULT($attr_name) + if test "$attr_name" != PTHREAD_CREATE_JOINABLE; then + AC_DEFINE_UNQUOTED(PTHREAD_CREATE_JOINABLE, $attr_name, + [Define to necessary symbol if this constant + uses a non-standard name on your system.]) + fi + + AC_MSG_CHECKING([if more special flags are required for pthreads]) + flag=no + case "${host_cpu}-${host_os}" in + *-aix* | *-freebsd* | *-darwin*) flag="-D_THREAD_SAFE";; + *solaris* | *-osf* | *-hpux*) flag="-D_REENTRANT";; + esac + AC_MSG_RESULT(${flag}) + if test "x$flag" != xno; then + PTHREAD_CFLAGS="$flag $PTHREAD_CFLAGS" + fi + + LIBS="$save_LIBS" + CFLAGS="$save_CFLAGS" + + # More AIX lossage: must compile with xlc_r or cc_r + if test x"$GCC" != xyes; then + AC_CHECK_PROGS(PTHREAD_CC, xlc_r cc_r, ${CC}) + else + PTHREAD_CC=$CC + fi +else + PTHREAD_CC="$CC" +fi + +AC_SUBST(PTHREAD_LIBS) +AC_SUBST(PTHREAD_CFLAGS) +AC_SUBST(PTHREAD_CC) + +# Finally, execute ACTION-IF-FOUND/ACTION-IF-NOT-FOUND: +if test x"$ax_pthread_ok" = xyes; then + ifelse([$1],,AC_DEFINE(HAVE_PTHREAD,1,[Define if you have POSIX threads libraries and header files.]),[$1]) + : +else + ax_pthread_ok=no + $2 +fi +AC_LANG_RESTORE +])dnl AX_PTHREAD diff --git a/m4/ax_python_devel.m4 b/m4/ax_python_devel.m4 new file mode 100644 index 0000000..a62b860 --- /dev/null +++ b/m4/ax_python_devel.m4 @@ -0,0 +1,325 @@ +# =========================================================================== +# http://www.gnu.org/software/autoconf-archive/ax_python_devel.html +# =========================================================================== +# +# SYNOPSIS +# +# AX_PYTHON_DEVEL([version]) +# +# DESCRIPTION +# +# Note: Defines as a precious variable "PYTHON_VERSION". Don't override it +# in your configure.ac. +# +# This macro checks for Python and tries to get the include path to +# 'Python.h'. It provides the $(PYTHON_CPPFLAGS) and $(PYTHON_LDFLAGS) +# output variables. It also exports $(PYTHON_EXTRA_LIBS) and +# $(PYTHON_EXTRA_LDFLAGS) for embedding Python in your code. +# +# You can search for some particular version of Python by passing a +# parameter to this macro, for example ">= '2.3.1'", or "== '2.4'". Please +# note that you *have* to pass also an operator along with the version to +# match, and pay special attention to the single quotes surrounding the +# version number. Don't use "PYTHON_VERSION" for this: that environment +# variable is declared as precious and thus reserved for the end-user. +# +# This macro should work for all versions of Python >= 2.1.0. As an end +# user, you can disable the check for the python version by setting the +# PYTHON_NOVERSIONCHECK environment variable to something else than the +# empty string. +# +# If you need to use this macro for an older Python version, please +# contact the authors. We're always open for feedback. +# +# LICENSE +# +# Copyright (c) 2009 Sebastian Huber <sebastian-huber@web.de> +# Copyright (c) 2009 Alan W. Irwin <irwin@beluga.phys.uvic.ca> +# Copyright (c) 2009 Rafael Laboissiere <rafael@laboissiere.net> +# Copyright (c) 2009 Andrew Collier <colliera@ukzn.ac.za> +# Copyright (c) 2009 Matteo Settenvini <matteo@member.fsf.org> +# Copyright (c) 2009 Horst Knorr <hk_classes@knoda.org> +# +# This program is free software: you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation, either version 3 of the License, or (at your +# option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General +# Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program. If not, see <http://www.gnu.org/licenses/>. +# +# As a special exception, the respective Autoconf Macro's copyright owner +# gives unlimited permission to copy, distribute and modify the configure +# scripts that are the output of Autoconf when processing the Macro. You +# need not follow the terms of the GNU General Public License when using +# or distributing such scripts, even though portions of the text of the +# Macro appear in them. The GNU General Public License (GPL) does govern +# all other use of the material that constitutes the Autoconf Macro. +# +# This special exception to the GPL applies to versions of the Autoconf +# Macro released by the Autoconf Archive. When you make and distribute a +# modified version of the Autoconf Macro, you may extend this special +# exception to the GPL to apply to your modified version as well. + +#serial 8 + +AU_ALIAS([AC_PYTHON_DEVEL], [AX_PYTHON_DEVEL]) +AC_DEFUN([AX_PYTHON_DEVEL],[ + # + # Allow the use of a (user set) custom python version + # + AC_ARG_VAR([PYTHON_VERSION],[The installed Python + version to use, for example '2.3'. This string + will be appended to the Python interpreter + canonical name.]) + + AC_PATH_PROG([PYTHON],[python[$PYTHON_VERSION]]) + if test -z "$PYTHON"; then + AC_MSG_ERROR([Cannot find python$PYTHON_VERSION in your system path]) + PYTHON_VERSION="" + fi + + # + # Check for a version of Python >= 2.1.0 + # + AC_MSG_CHECKING([for a version of Python >= '2.1.0']) + ac_supports_python_ver=`$PYTHON -c "import sys; \ + ver = sys.version.split ()[[0]]; \ + print (ver >= '2.1.0')"` + if test "$ac_supports_python_ver" != "True"; then + if test -z "$PYTHON_NOVERSIONCHECK"; then + AC_MSG_RESULT([no]) + AC_MSG_FAILURE([ +This version of the AC@&t@_PYTHON_DEVEL macro +doesn't work properly with versions of Python before +2.1.0. You may need to re-run configure, setting the +variables PYTHON_CPPFLAGS, PYTHON_LDFLAGS, PYTHON_SITE_PKG, +PYTHON_EXTRA_LIBS and PYTHON_EXTRA_LDFLAGS by hand. +Moreover, to disable this check, set PYTHON_NOVERSIONCHECK +to something else than an empty string. +]) + else + AC_MSG_RESULT([skip at user request]) + fi + else + AC_MSG_RESULT([yes]) + fi + + # + # if the macro parameter ``version'' is set, honour it + # + if test -n "$1"; then + AC_MSG_CHECKING([for a version of Python $1]) + ac_supports_python_ver=`$PYTHON -c "import sys; \ + ver = sys.version.split ()[[0]]; \ + print (ver $1)"` + if test "$ac_supports_python_ver" = "True"; then + AC_MSG_RESULT([yes]) + else + AC_MSG_RESULT([no]) + AC_MSG_ERROR([this package requires Python $1. +If you have it installed, but it isn't the default Python +interpreter in your system path, please pass the PYTHON_VERSION +variable to configure. See ``configure --help'' for reference. +]) + PYTHON_VERSION="" + fi + fi + + # + # Check if you have distutils, else fail + # + AC_MSG_CHECKING([for the distutils Python package]) + ac_distutils_result=`$PYTHON -c "import distutils" 2>&1` + if test -z "$ac_distutils_result"; then + AC_MSG_RESULT([yes]) + else + AC_MSG_RESULT([no]) + AC_MSG_ERROR([cannot import Python module "distutils". +Please check your Python installation. The error was: +$ac_distutils_result]) + PYTHON_VERSION="" + fi + + # + # Check for Python include path + # + AC_MSG_CHECKING([for Python include path]) + if test -z "$PYTHON_CPPFLAGS"; then + python_path=`$PYTHON -c "import distutils.sysconfig; \ + print (distutils.sysconfig.get_python_inc ());"` + if test -n "${python_path}"; then + python_path="-I$python_path" + fi + PYTHON_CPPFLAGS=$python_path + fi + AC_MSG_RESULT([$PYTHON_CPPFLAGS]) + AC_SUBST([PYTHON_CPPFLAGS]) + + # + # Check for Python library path + # + AC_MSG_CHECKING([for Python library path]) + if test -z "$PYTHON_LDFLAGS"; then + # (makes two attempts to ensure we've got a version number + # from the interpreter) + ac_python_version=`cat<<EOD | $PYTHON - + +# join all versioning strings, on some systems +# major/minor numbers could be in different list elements +from distutils.sysconfig import * +ret = '' +for e in get_config_vars ('VERSION'): + if (e != None): + ret += e +print (ret) +EOD` + + if test -z "$ac_python_version"; then + if test -n "$PYTHON_VERSION"; then + ac_python_version=$PYTHON_VERSION + else + ac_python_version=`$PYTHON -c "import sys; \ + print (sys.version[[:3]])"` + fi + fi + + # Make the versioning information available to the compiler + AC_DEFINE_UNQUOTED([HAVE_PYTHON], ["$ac_python_version"], + [If available, contains the Python version number currently in use.]) + + # First, the library directory: + ac_python_libdir=`cat<<EOD | $PYTHON - + +# There should be only one +import distutils.sysconfig +for e in distutils.sysconfig.get_config_vars ('LIBDIR'): + if e != None: + print (e) + break +EOD` + + # Before checking for libpythonX.Y, we need to know + # the extension the OS we're on uses for libraries + # (we take the first one, if there's more than one fix me!): + ac_python_soext=`$PYTHON -c \ + "import distutils.sysconfig; \ + print (distutils.sysconfig.get_config_vars('SO')[[0]])"` + + # Now, for the library: + ac_python_soname=`$PYTHON -c \ + "import distutils.sysconfig; \ + print (distutils.sysconfig.get_config_vars('LDLIBRARY')[[0]])"` + + # Strip away extension from the end to canonicalize its name: + ac_python_library=`echo "$ac_python_soname" | sed "s/${ac_python_soext}$//"` + + # This small piece shamelessly adapted from PostgreSQL python macro; + # credits goes to momjian, I think. I'd like to put the right name + # in the credits, if someone can point me in the right direction... ? + # + if test -n "$ac_python_libdir" -a -n "$ac_python_library" \ + -a x"$ac_python_library" != x"$ac_python_soname" + then + # use the official shared library + ac_python_library=`echo "$ac_python_library" | sed "s/^lib//"` + PYTHON_LDFLAGS="-L$ac_python_libdir -l$ac_python_library" + else + # old way: use libpython from python_configdir + ac_python_libdir=`$PYTHON -c \ + "from distutils.sysconfig import get_python_lib as f; \ + import os; \ + print (os.path.join(f(plat_specific=1, standard_lib=1), 'config'));"` + PYTHON_LDFLAGS="-L$ac_python_libdir -lpython$ac_python_version" + fi + + if test -z "PYTHON_LDFLAGS"; then + AC_MSG_ERROR([ + Cannot determine location of your Python DSO. Please check it was installed with + dynamic libraries enabled, or try setting PYTHON_LDFLAGS by hand. + ]) + fi + fi + AC_MSG_RESULT([$PYTHON_LDFLAGS]) + AC_SUBST([PYTHON_LDFLAGS]) + + # + # Check for site packages + # + AC_MSG_CHECKING([for Python site-packages path]) + if test -z "$PYTHON_SITE_PKG"; then + PYTHON_SITE_PKG=`$PYTHON -c "import distutils.sysconfig; \ + print (distutils.sysconfig.get_python_lib(0,0));"` + fi + AC_MSG_RESULT([$PYTHON_SITE_PKG]) + AC_SUBST([PYTHON_SITE_PKG]) + + # + # libraries which must be linked in when embedding + # + AC_MSG_CHECKING(python extra libraries) + if test -z "$PYTHON_EXTRA_LIBS"; then + PYTHON_EXTRA_LIBS=`$PYTHON -c "import distutils.sysconfig; \ + conf = distutils.sysconfig.get_config_var; \ + print (conf('LOCALMODLIBS') + ' ' + conf('LIBS'))"` + fi + AC_MSG_RESULT([$PYTHON_EXTRA_LIBS]) + AC_SUBST(PYTHON_EXTRA_LIBS) + + # + # linking flags needed when embedding + # + AC_MSG_CHECKING(python extra linking flags) + if test -z "$PYTHON_EXTRA_LDFLAGS"; then + PYTHON_EXTRA_LDFLAGS=`$PYTHON -c "import distutils.sysconfig; \ + conf = distutils.sysconfig.get_config_var; \ + print (conf('LINKFORSHARED'))"` + fi + AC_MSG_RESULT([$PYTHON_EXTRA_LDFLAGS]) + AC_SUBST(PYTHON_EXTRA_LDFLAGS) + + # + # final check to see if everything compiles alright + # + AC_MSG_CHECKING([consistency of all components of python development environment]) + # save current global flags + ac_save_LIBS="$LIBS" + ac_save_CPPFLAGS="$CPPFLAGS" + LIBS="$ac_save_LIBS $PYTHON_LDFLAGS $PYTHON_EXTRA_LDFLAGS $PYTHON_EXTRA_LIBS" + CPPFLAGS="$ac_save_CPPFLAGS $PYTHON_CPPFLAGS" + AC_LANG_PUSH([C]) + AC_LINK_IFELSE([ + AC_LANG_PROGRAM([[#include <Python.h>]], + [[Py_Initialize();]]) + ],[pythonexists=yes],[pythonexists=no]) + AC_LANG_POP([C]) + # turn back to default flags + CPPFLAGS="$ac_save_CPPFLAGS" + LIBS="$ac_save_LIBS" + + AC_MSG_RESULT([$pythonexists]) + + if test ! "x$pythonexists" = "xyes"; then + AC_MSG_FAILURE([ + Could not link test program to Python. Maybe the main Python library has been + installed in some non-standard library path. If so, pass it to configure, + via the LDFLAGS environment variable. + Example: ./configure LDFLAGS="-L/usr/non-standard-path/python/lib" + ============================================================================ + ERROR! + You probably have to install the development version of the Python package + for your distribution. The exact name of this package varies among them. + ============================================================================ + ]) + PYTHON_VERSION="" + fi + + # + # all done! + # +]) diff --git a/m4/ax_swig_enable_cxx.m4 b/m4/ax_swig_enable_cxx.m4 new file mode 100644 index 0000000..348c15d --- /dev/null +++ b/m4/ax_swig_enable_cxx.m4 @@ -0,0 +1,53 @@ +# =========================================================================== +# http://www.gnu.org/software/autoconf-archive/ax_swig_enable_cxx.html +# =========================================================================== +# +# SYNOPSIS +# +# AX_SWIG_ENABLE_CXX +# +# DESCRIPTION +# +# Enable SWIG C++ support. This affects all invocations of $(SWIG). +# +# LICENSE +# +# Copyright (c) 2008 Sebastian Huber <sebastian-huber@web.de> +# Copyright (c) 2008 Alan W. Irwin <irwin@beluga.phys.uvic.ca> +# Copyright (c) 2008 Rafael Laboissiere <rafael@laboissiere.net> +# Copyright (c) 2008 Andrew Collier <colliera@ukzn.ac.za> +# +# This program is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation; either version 2 of the License, or (at your +# option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General +# Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program. If not, see <http://www.gnu.org/licenses/>. +# +# As a special exception, the respective Autoconf Macro's copyright owner +# gives unlimited permission to copy, distribute and modify the configure +# scripts that are the output of Autoconf when processing the Macro. You +# need not follow the terms of the GNU General Public License when using +# or distributing such scripts, even though portions of the text of the +# Macro appear in them. The GNU General Public License (GPL) does govern +# all other use of the material that constitutes the Autoconf Macro. +# +# This special exception to the GPL applies to versions of the Autoconf +# Macro released by the Autoconf Archive. When you make and distribute a +# modified version of the Autoconf Macro, you may extend this special +# exception to the GPL to apply to your modified version as well. + +#serial 6 + +AU_ALIAS([SWIG_ENABLE_CXX], [AX_SWIG_ENABLE_CXX]) +AC_DEFUN([AX_SWIG_ENABLE_CXX],[ + AC_REQUIRE([AX_PKG_SWIG]) + AC_REQUIRE([AC_PROG_CXX]) + SWIG="$SWIG -c++" +]) diff --git a/m4/ax_swig_python.m4 b/m4/ax_swig_python.m4 new file mode 100644 index 0000000..8fd3df5 --- /dev/null +++ b/m4/ax_swig_python.m4 @@ -0,0 +1,64 @@ +# =========================================================================== +# http://www.gnu.org/software/autoconf-archive/ax_swig_python.html +# =========================================================================== +# +# SYNOPSIS +# +# AX_SWIG_PYTHON([use-shadow-classes = {no, yes}]) +# +# DESCRIPTION +# +# Checks for Python and provides the $(AX_SWIG_PYTHON_CPPFLAGS), and +# $(AX_SWIG_PYTHON_OPT) output variables. +# +# $(AX_SWIG_PYTHON_OPT) contains all necessary SWIG options to generate +# code for Python. Shadow classes are enabled unless the value of the +# optional first argument is exactly 'no'. If you need multi module +# support (provided by the AX_SWIG_MULTI_MODULE_SUPPORT macro) use +# $(AX_SWIG_PYTHON_LIBS) to link against the appropriate library. It +# contains the SWIG Python runtime library that is needed by the type +# check system for example. +# +# LICENSE +# +# Copyright (c) 2008 Sebastian Huber <sebastian-huber@web.de> +# Copyright (c) 2008 Alan W. Irwin <irwin@beluga.phys.uvic.ca> +# Copyright (c) 2008 Rafael Laboissiere <rafael@laboissiere.net> +# Copyright (c) 2008 Andrew Collier <colliera@ukzn.ac.za> +# +# This program is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by the +# Free Software Foundation; either version 2 of the License, or (at your +# option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General +# Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program. If not, see <http://www.gnu.org/licenses/>. +# +# As a special exception, the respective Autoconf Macro's copyright owner +# gives unlimited permission to copy, distribute and modify the configure +# scripts that are the output of Autoconf when processing the Macro. You +# need not follow the terms of the GNU General Public License when using +# or distributing such scripts, even though portions of the text of the +# Macro appear in them. The GNU General Public License (GPL) does govern +# all other use of the material that constitutes the Autoconf Macro. +# +# This special exception to the GPL applies to versions of the Autoconf +# Macro released by the Autoconf Archive. When you make and distribute a +# modified version of the Autoconf Macro, you may extend this special +# exception to the GPL to apply to your modified version as well. + +#serial 7 + +AU_ALIAS([SWIG_PYTHON], [AX_SWIG_PYTHON]) +AC_DEFUN([AX_SWIG_PYTHON],[ + AC_REQUIRE([AX_PKG_SWIG]) + AC_REQUIRE([AX_PYTHON_DEVEL]) + test "x$1" != "xno" || swig_shadow=" -noproxy" + AC_SUBST([AX_SWIG_PYTHON_OPT],[-python$swig_shadow]) + AC_SUBST([AX_SWIG_PYTHON_CPPFLAGS],[$PYTHON_CPPFLAGS]) +]) diff --git a/m4/tuxbox.m4 b/m4/tuxbox.m4 new file mode 100644 index 0000000..985f757 --- /dev/null +++ b/m4/tuxbox.m4 @@ -0,0 +1,36 @@ +AC_DEFUN([TUXBOX_APPS_DVB],[ +AC_ARG_WITH(dvbincludes, + [ --with-dvbincludes=PATH path for dvb includes [[NONE]]], + [DVBINCLUDES="$withval"],[DVBINCLUDES=""]) + +if test "$DVBINCLUDES"; then + CPPFLAGS="$CPPFLAGS -I$DVBINCLUDES" +fi + +AC_CHECK_HEADERS(ost/dmx.h,[ + DVB_API_VERSION=1 + AC_MSG_NOTICE([found dvb version 1]) +]) + +if test -z "$DVB_API_VERSION"; then +AC_CHECK_HEADERS(linux/dvb/version.h,[ + AC_LANG_PREPROC_REQUIRE() + AC_REQUIRE([AC_PROG_EGREP]) + AC_LANG_CONFTEST([AC_LANG_SOURCE([[ +#include <linux/dvb/version.h> +version DVB_API_VERSION + ]])]) + DVB_API_VERSION=`(eval "$ac_cpp conftest.$ac_ext") 2>&AS_MESSAGE_LOG_FD | $EGREP "^version" | sed "s,version\ ,,"` + rm -f conftest* + + AC_MSG_NOTICE([found dvb version $DVB_API_VERSION]) +]) +fi + +if test "$DVB_API_VERSION"; then + AC_DEFINE(HAVE_DVB,1,[Define to 1 if you have the dvb includes]) + AC_DEFINE_UNQUOTED(HAVE_DVB_API_VERSION,$DVB_API_VERSION,[Define to the version of the dvb api]) +else + AC_MSG_ERROR([can't find dvb headers]) +fi +]) diff --git a/main/Makefile.am b/main/Makefile.am new file mode 100644 index 0000000..03121cc --- /dev/null +++ b/main/Makefile.am @@ -0,0 +1,84 @@ +AM_CPPFLAGS = \ + -I$(top_srcdir) \ + -I$(top_srcdir)/include \ + -include Python.h \ + -include $(top_builddir)/enigma2_config.h + +AM_CXXFLAGS = \ + $(LIBSDL_CFLAGS) + +bin_PROGRAMS = enigma2 + +enigma2_SOURCES = \ + bsod.cpp \ + bsod.h \ + enigma.cpp \ + xmlgenerator.cpp \ + xmlgenerator.h \ + version_info.cpp \ + version_info.h \ + version.h + +EXTRA_DIST = \ + enigma-dvbtest.cpp \ + enigma-gdi.cpp \ + enigma-gui.cpp \ + enigma-playlist.cpp \ + enigma-scan.cpp + +enigma2_LDADD_WHOLE = \ + $(top_builddir)/lib/actions/libenigma_actions.a \ + $(top_builddir)/lib/base/libenigma_base.a \ + $(top_builddir)/lib/components/libenigma_components.a \ + $(top_builddir)/lib/driver/libenigma_driver.a \ + $(top_builddir)/lib/mmi/libenigma_mmi.a \ + $(top_builddir)/lib/dvb/libenigma_dvb.a \ + $(top_builddir)/lib/dvb_ci/libenigma_dvb_ci.a \ + $(top_builddir)/lib/gdi/libenigma_gdi.a \ + $(top_builddir)/lib/gui/libenigma_gui.a \ + $(top_builddir)/lib/python/libenigma_python.a \ + $(top_builddir)/lib/nav/libenigma_nav.a \ + $(top_builddir)/lib/network/libenigma_network.a \ + $(top_builddir)/lib/service/libenigma_service.a + +enigma2_LDADD = \ + @BASE_LIBS@ \ + @LIBGIF_LIBS@ \ + @LIBJPEG_LIBS@ \ + @LIBSDL_LIBS@ \ + @LIBXINE_LIBS@ \ + @LIBXMLCCWRAP_LIBS@ \ + @PTHREAD_LIBS@ \ + @PYTHON_LDFLAGS@ \ + @LIBDDVD_LIBS@ \ + -ltuxtxt -ltuxtxt32bpp -lcrypt -lrt + +enigma2_LDFLAGS = -Wl,--export-dynamic + +if HAVE_GIT_DIR +GIT_DIR = $(top_srcdir)/.git +GIT = git --git-dir=$(GIT_DIR) + +if HAVE_FAKE_GIT_DIR +ENIGMA2_COMMIT_DATE = `grep '^CommitDate:' $(GIT_DIR)/last_commit_info | cut -d' ' -f2` +ENIGMA2_BRANCH = `cat $(GIT_DIR)/branch` +else +ENIGMA2_COMMIT_DATE = `$(GIT) log --no-color -n 1 --pretty=format:%cd --date=short` +ENIGMA2_BRANCH = `$(GIT) branch --no-color 2>/dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/\1/'` +ENIGMA2_REV = `$(GIT) describe --abbrev=7 --always --long --tags` +endif +endif + +BUILT_SOURCES = version-intermediate.h +.INTERMEDIATE: version-intermediate.h +.PHONY: version-intermediate.h +version-intermediate.h: + $(AM_V_GEN)touch $@ + -$(AM_V_at)[ -n "$(ENIGMA2_COMMIT_DATE)" ] && echo "#define ENIGMA2_COMMIT_DATE \"$(ENIGMA2_COMMIT_DATE)\"" >> $@ + -$(AM_V_at)[ -n "$(ENIGMA2_BRANCH)" ] && echo "#define ENIGMA2_BRANCH \"$(ENIGMA2_BRANCH)\"" >> $@ + -$(AM_V_at)[ -n "$(ENIGMA2_REV)" ] && echo "#define ENIGMA2_REV \"$(ENIGMA2_REV)\"" >> $@ + $(AM_V_at)([ -f version.h ] && diff -q version.h $@ >/dev/null) || $(INSTALL_HEADER) $@ version.h + +enigma2$(EXEEXT): $(enigma2_OBJECTS) $(enigma2_DEPENDENCIES) $(enigma2_LDADD_WHOLE) + $(AM_V_CXXLD)$(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ $(enigma2_LDFLAGS) $(enigma2_OBJECTS) \ + -Wl,--whole-archive $(enigma2_LDADD_WHOLE) -Wl,--no-whole-archive $(enigma2_LDADD) $(LIBS) diff --git a/main/bsod.cpp b/main/bsod.cpp new file mode 100644 index 0000000..b62512e --- /dev/null +++ b/main/bsod.cpp @@ -0,0 +1,366 @@ +#include <csignal> +#include <fstream> +#include <sstream> +#include <lib/base/eenv.h> +#include <lib/base/eerror.h> +#include <lib/base/nconfig.h> +#include <lib/gdi/gmaindc.h> + +#if defined(__MIPSEL__) +#include <asm/ptrace.h> +#else +#warning "no oops support!" +#define NO_OOPS_SUPPORT +#endif + +#include "xmlgenerator.h" +#include "version_info.h" + +/************************************************/ + +#define CRASH_EMAILADDR "forum at www.openpli.org" +#define INFOFILE "/maintainer.info" + +#define RINGBUFFER_SIZE 16384 +static char ringbuffer[RINGBUFFER_SIZE]; +static unsigned int ringbuffer_head; + +static void addToLogbuffer(const char *data, unsigned int len) +{ + while (len) + { + unsigned int remaining = RINGBUFFER_SIZE - ringbuffer_head; + + if (remaining > len) + remaining = len; + + memcpy(ringbuffer + ringbuffer_head, data, remaining); + len -= remaining; + data += remaining; + ringbuffer_head += remaining; + ASSERT(ringbuffer_head <= RINGBUFFER_SIZE); + if (ringbuffer_head == RINGBUFFER_SIZE) + ringbuffer_head = 0; + } +} + +static const std::string getLogBuffer() +{ + unsigned int begin = ringbuffer_head; + while (ringbuffer[begin] == 0) + { + ++begin; + if (begin == RINGBUFFER_SIZE) + begin = 0; + if (begin == ringbuffer_head) + return ""; + } + + if (begin < ringbuffer_head) + return std::string(ringbuffer + begin, ringbuffer_head - begin); + else + return std::string(ringbuffer + begin, RINGBUFFER_SIZE - begin) + std::string(ringbuffer, ringbuffer_head); +} + +static void addToLogbuffer(int level, const std::string &log) +{ + addToLogbuffer(log.c_str(), log.size()); +} + +static const std::string getConfigString(const std::string &key, const std::string &defaultValue) +{ + std::string value = eConfigManager::getConfigValue(key.c_str()); + + //we get at least the default value if python is still alive + if (!value.empty()) + return value; + + value = defaultValue; + + // get value from enigma2 settings file + std::ifstream in(eEnv::resolve("${sysconfdir}/enigma2/settings").c_str()); + if (in.good()) { + do { + std::string line; + std::getline(in, line); + size_t size = key.size(); + if (!key.compare(0, size, line) && line[size] == '=') { + value = line.substr(size + 1); + break; + } + } while (in.good()); + in.close(); + } + + return value; +} + +static bool getConfigBool(const std::string &key, bool defaultValue) +{ + std::string value = getConfigString(key, defaultValue ? "true" : "false"); + const char *cvalue = value.c_str(); + + if (!strcasecmp(cvalue, "true")) + return true; + if (!strcasecmp(cvalue, "false")) + return false; + + return defaultValue; +} + +static bool bsodhandled = false; + +void bsodFatal(const char *component) +{ + /* show no more than one bsod while shutting down/crashing */ + if (bsodhandled) return; + bsodhandled = true; + + std::string lines = getLogBuffer(); + + /* find python-tracebacks, and extract " File "-strings */ + size_t start = 0; + + std::string crash_emailaddr = CRASH_EMAILADDR; + std::string crash_component = "enigma2"; + + if (component) + crash_component = component; + else + { + while ((start = lines.find("\n File \"", start)) != std::string::npos) + { + start += 9; + size_t end = lines.find("\"", start); + if (end == std::string::npos) + break; + end = lines.rfind("/", end); + /* skip a potential prefix to the path */ + unsigned int path_prefix = lines.find("/usr/", start); + if (path_prefix != std::string::npos && path_prefix < end) + start = path_prefix; + + if (end == std::string::npos) + break; + + std::string filename(lines.substr(start, end - start) + INFOFILE); + std::ifstream in(filename.c_str()); + if (in.good()) { + std::getline(in, crash_emailaddr) && std::getline(in, crash_component); + in.close(); + } + } + } + + FILE *f; + const char* crashlog_name; + std::ostringstream os; + os << "/media/hdd/enigma2_crash_"; + os << time(0); + os << ".log"; + crashlog_name = os.str().c_str(); + f = fopen(crashlog_name, "wb"); + + if (f == NULL) + { + /* No hardisk. If there is a crash log in /home/root, leave it + * alone because we may be in a crash loop and writing this file + * all night long may damage the flash. Also, usually the first + * crash log is the most interesting one. */ + crashlog_name = "/home/root/enigma2_crash.log"; + if ((access(crashlog_name, F_OK) == 0) || + ((f = fopen(crashlog_name, "wb")) == NULL)) + { + /* Re-write the same file in /tmp/ because it's expected to + * be in RAM. So the first crash log will end up in /home + * and the last in /tmp */ + crashlog_name = "/tmp/enigma2_crash.log"; + f = fopen(crashlog_name, "wb"); + } + } + + if (f) + { + time_t t = time(0); + struct tm tm; + char tm_str[32]; + + bool detailedCrash = getConfigBool("config.crash.details", true); + + localtime_r(&t, &tm); + strftime(tm_str, sizeof(tm_str), "%a %b %_d %T %Y", &tm); + + XmlGenerator xml(f); + + xml.open("openpli"); + + xml.open("enigma2"); + xml.string("crashdate", tm_str); + xml.string("compiledate", __DATE__); + xml.string("contactemail", crash_emailaddr); + xml.comment("Please email this crashlog to above address"); + + xml.string("skin", getConfigString("config.skin.primary_skin", "Default Skin")); + xml.string("sourcedate", enigma2_date); + xml.string("branch", enigma2_branch); + xml.string("rev", enigma2_rev); + xml.string("version", PACKAGE_VERSION); + xml.close(); + + xml.open("image"); + if(access("/proc/stb/info/boxtype", F_OK) != -1) { + xml.stringFromFile("stbmodel", "/proc/stb/info/boxtype"); + } + else if (access("/proc/stb/info/vumodel", F_OK) != -1) { + xml.stringFromFile("stbmodel", "/proc/stb/info/vumodel"); + } + else if (access("/proc/stb/info/model", F_OK) != -1) { + xml.stringFromFile("stbmodel", "/proc/stb/info/model"); + } + xml.cDataFromCmd("kernelversion", "uname -a"); + xml.stringFromFile("kernelcmdline", "/proc/cmdline"); + xml.stringFromFile("nimsockets", "/proc/bus/nim_sockets"); + if (!getConfigBool("config.plugins.crashlogautosubmit.sendAnonCrashlog", true)) { + xml.cDataFromFile("stbca", "/proc/stb/info/ca"); + xml.cDataFromFile("enigma2settings", eEnv::resolve("${sysconfdir}/enigma2/settings"), ".password="); + } + if (getConfigBool("config.plugins.crashlogautosubmit.addNetwork", false)) { + xml.cDataFromFile("networkinterfaces", "/etc/network/interfaces"); + xml.cDataFromFile("dns", "/etc/resolv.conf"); + xml.cDataFromFile("defaultgateway", "/etc/default_gw"); + } + if (getConfigBool("config.plugins.crashlogautosubmit.addWlan", false)) + xml.cDataFromFile("wpasupplicant", "/etc/wpa_supplicant.conf"); + xml.cDataFromFile("imageversion", "/etc/image-version"); + xml.cDataFromFile("imageissue", "/etc/issue.net"); + xml.close(); + + if (detailedCrash) + { + xml.open("software"); + xml.cDataFromCmd("enigma2software", "opkg list-installed 'enigma2*'"); + if(access("/proc/stb/info/boxtype", F_OK) != -1) { + xml.cDataFromCmd("xtrendsoftware", "opkg list-installed 'et-*'"); + } + else if (access("/proc/stb/info/vumodel", F_OK) != -1) { + xml.cDataFromCmd("vuplussoftware", "opkg list-installed 'vuplus*'"); + } + else if (access("/proc/stb/info/model", F_OK) != -1) { + xml.cDataFromCmd("dreamboxsoftware", "opkg list-installed 'dream*'"); + } + xml.cDataFromCmd("gstreamersoftware", "opkg list-installed 'gst*'"); + xml.close(); + } + + xml.open("crashlogs"); + xml.cDataFromString("enigma2crashlog", getLogBuffer()); + xml.close(); + + xml.close(); + + fclose(f); + } + + ePtr<gMainDC> my_dc; + gMainDC::getInstance(my_dc); + + gPainter p(my_dc); + p.resetOffset(); + p.resetClip(eRect(ePoint(0, 0), my_dc->size())); + p.setBackgroundColor(gRGB(0x008000)); + p.setForegroundColor(gRGB(0xFFFFFF)); + + ePtr<gFont> font = new gFont("Regular", 20); + p.setFont(font); + p.clear(); + + eRect usable_area = eRect(100, 70, my_dc->size().width() - 150, 100); + + os.str(""); + os.clear(); + os << "We are really sorry. Your STB encountered " + "a software problem, and needs to be restarted.\n" + "Please send the logfile " << crashlog_name << " to " << crash_emailaddr << ".\n" + "Your STB restarts in 10 seconds!\n" + "Component: " << crash_component; + + p.renderText(usable_area, os.str().c_str(), gPainter::RT_WRAP|gPainter::RT_HALIGN_LEFT); + + usable_area = eRect(100, 170, my_dc->size().width() - 180, my_dc->size().height() - 20); + + int i; + + start = std::string::npos + 1; + for (i=0; i<20; ++i) + { + start = lines.rfind('\n', start - 1); + if (start == std::string::npos) + { + start = 0; + break; + } + } + + font = new gFont("Regular", 14); + p.setFont(font); + + p.renderText(usable_area, + lines.substr(start), gPainter::RT_HALIGN_LEFT); + sleep(10); + + /* + * When 'component' is NULL, we are called because of a python exception. + * In that case, we'd prefer to to a clean shutdown of the C++ objects, + * and this should be safe, because the crash did not occur in the + * C++ part. + * However, when we got here for some other reason, a segfault probably, + * we prefer to stop immediately instead of performing a clean shutdown. + * We'd risk destroying things with every additional instruction we're + * executing here. + */ + if (component) raise(SIGKILL); +} + +#if defined(__MIPSEL__) +void oops(const mcontext_t &context) +{ + eDebug("PC: %08lx", (unsigned long)context.pc); + int i; + for (i=0; i<32; i += 4) + { + eDebug("%08x %08x %08x %08x", + (int)context.gregs[i+0], (int)context.gregs[i+1], + (int)context.gregs[i+2], (int)context.gregs[i+3]); + } +} +#endif + +void handleFatalSignal(int signum, siginfo_t *si, void *ctx) +{ +#ifndef NO_OOPS_SUPPORT + ucontext_t *uc = (ucontext_t*)ctx; + oops(uc->uc_mcontext); +#endif + eDebug("-------"); + bsodFatal("enigma2, signal"); +} + +void bsodCatchSignals() +{ + struct sigaction act; + act.sa_sigaction = handleFatalSignal; + act.sa_flags = SA_RESTART | SA_SIGINFO; + if (sigemptyset(&act.sa_mask) == -1) + perror("sigemptyset"); + + /* start handling segfaults etc. */ + sigaction(SIGSEGV, &act, 0); + sigaction(SIGILL, &act, 0); + sigaction(SIGBUS, &act, 0); + sigaction(SIGABRT, &act, 0); +} + +void bsodLogInit() +{ + logOutput.connect(addToLogbuffer); +} diff --git a/main/bsod.h b/main/bsod.h new file mode 100644 index 0000000..4ee4c48 --- /dev/null +++ b/main/bsod.h @@ -0,0 +1,8 @@ +#ifndef __main_bsod_h +#define __main_bsod_h + +void bsodLogInit(); +void bsodCatchSignals(); +void bsodFatal(const char *component); + +#endif diff --git a/main/enigma-dvbtest.cpp b/main/enigma-dvbtest.cpp new file mode 100644 index 0000000..2c2d859 --- /dev/null +++ b/main/enigma-dvbtest.cpp @@ -0,0 +1,144 @@ +#include <stdio.h> +#include <libsig_comp.h> +#include <lib/base/ebase.h> +#include <lib/base/eerror.h> + +#include <lib/dvb/dvb.h> +#include <lib/dvb/db.h> +#include <lib/dvb/isection.h> +#include <lib/dvb/esection.h> +#include <dvbsi++/program_map_section.h> +#include <lib/dvb/specs.h> +#include <unistd.h> + +class eMain: public eApplication, public Object +{ + ePtr<eDVBResourceManager> m_mgr; + ePtr<iDVBChannel> m_channel; + ePtr<iDVBDemux> m_demux; + eAUTable<eTable<ProgramMapSection> > m_table; + + ePtr<eDVBDB> m_dvbdb; + + ePtr<eConnection> m_state_change_connection; + int m_last_channel_state; +public: + eMain() + { + eDebug("mich gibts nu!"); + + /* Resourcemanager erstellen */ + m_mgr = new eDVBResourceManager(); + + /* Dummy DVB-Channellist anlegen.. */ + + /* Datenbank erstellen */ + m_dvbdb = new eDVBDB(); + /* als Primary datenbank setzen */ + m_mgr->setChannelList(m_dvbdb); + + /* testtransponder adden */ + eDVBChannelID chid(1,2,3); + + /* frontenddaten... */ + eDVBFrontendParametersSatellite fesat; + + fesat.frequency = 12070000; + fesat.symbol_rate = 27500000; + fesat.polarisation = eDVBFrontendParametersSatellite::Polarisation_Horizontal; + fesat.fec = eDVBFrontendParametersSatellite::FEC_3_4; + fesat.inversion = eDVBFrontendParametersSatellite::Inversion_Off; + fesat.orbital_position = 192; + + eDVBFrontendParameters *fe = new eDVBFrontendParameters(); + + fe->setDVBS(fesat); + /* Zur Kanalliste hinzufuegen.. */ + m_dvbdb->addChannelToList(chid, fe); + + /* Channel allokieren... tunen startet hier, sofern noetig */ + if (m_mgr->allocateChannel(chid, m_channel)) + eDebug("shit it failed!"); + + if (m_channel) + { + /* Auf State-Change listenen */ + m_channel->connectStateChange(slot(*this, &eMain::channelStateChanged), m_state_change_connection); + /* Initial provozieren */ + channelStateChanged(m_channel); + } + } + + void channelStateChanged(iDVBChannel *channel) + { + int state; + /* Channelstate holen */ + channel->getState(state); + eDebug("channel state is now %d", state); + + /* Wenn Wechsel von nicht-ok auf ok (das erste mal) */ + if ((m_last_channel_state != iDVBChannel::state_ok) + && (state == iDVBChannel::state_ok) && (!m_demux)) + { + eDebug("we'll start tuning!"); + /* Demux holen */ + if (m_channel) + if (m_channel->getDemux(m_demux)) + eDebug("shit it failed.. again."); + + if (m_demux) + { + /* auf table ready connecten */ + CONNECT(m_table.tableReady, eMain::tableReady); + /* und section lesen beginnen */ + m_table.begin(this, eDVBPMTSpec(0x20, 0x33f6), m_demux); + } + } + + m_last_channel_state = state; + } + + void tableReady(int) + { + /* table "fertig" (wie auch immer) */ + ePtr<eTable<ProgramMapSection> > ptr; + /* erfolgreich? */ + if (!m_table.getCurrent(ptr)) + { + /* dumpen ... */ + ProgramMapSectionConstIterator i; + for (i = ptr->getSections().begin(); i != ptr->getSections().end(); ++i) + { + const ProgramMapSection &pmt = **i; + eDebug("pcr pid: %x", pmt.getPcrPid()); + } + eDebug("program map ..."); + /* und raus */ + quit(0); + } + eDebug("table ready."); + } + + ~eMain() + { + eDebug("... nicht mehr."); + } +}; + +#ifdef OBJECT_DEBUG +int object_total_remaining; + +void object_dump() +{ + printf("%d items left\n", object_total_remaining); +} +#endif + +int main() +{ +#ifdef OBJECT_DEBUG + atexit(object_dump); +#endif + eMain app; + return app.exec(); +} diff --git a/main/enigma-gdi.cpp b/main/enigma-gdi.cpp new file mode 100644 index 0000000..a1c7568 --- /dev/null +++ b/main/enigma-gdi.cpp @@ -0,0 +1,111 @@ +#include <stdio.h> +#include <libsig_comp.h> +#include <lib/base/ebase.h> +#include <lib/base/eenv.h> +#include <lib/base/eerror.h> +#include <lib/base/init.h> +#include <lib/base/init_num.h> + +#include <unistd.h> + +#include <lib/gdi/grc.h> +#include <lib/gdi/gmaindc.h> +#include <lib/gdi/font.h> + +#include <lib/gui/ewidget.h> +#include <lib/gui/ewidgetdesktop.h> +#include <lib/gui/elabel.h> + +#ifdef OBJECT_DEBUG +int object_total_remaining; + +void object_dump() +{ + printf("%d items left\n", object_total_remaining); +} +#endif + +void dumpRegion(const gRegion ®ion) +{ + fprintf(stderr, "extends: %d %d -> %d %d\n", + region.extends.left(), region.extends.top(), + region.extends.right(), region.extends.bottom()); + for (int y=0; y<region.extends.bottom(); ++y) + { + for (int x=0; x<region.extends.right(); ++x) + { + unsigned char res = ' '; + for (unsigned int i=0; i < region.rects.size(); ++i) + if (region.rects[i].contains(ePoint(x, y))) + res = '0' + i; + fprintf(stderr, "%c", res); + } + fprintf(stderr, "\n"); + } +} + +int main() +{ +#ifdef OBJECT_DEBUG + atexit(object_dump); +#endif + + eInit init; + + init.setRunlevel(eAutoInitNumbers::main); + ePtr<gMainDC> my_dc; + gMainDC::getInstance(my_dc); + + gPainter p(my_dc); + + gRGB pal[256]; + pal[0] = 0; + pal[1] = 0xff00ff; + pal[2] = 0xffFFff; + pal[3] = 0x00ff00; + + for (int a=0; a<0x10; ++a) + pal[a | 0x10] = (0x111111 * a) | 0xFF; + p.setPalette(pal, 0, 256); + + fontRenderClass::getInstance()->AddFont(eEnv::resolve("${datadir}/fonts/arial.ttf"), "Regular", 100); + + p.resetClip(gRegion(eRect(0, 0, 720, 576))); + + + gRegion c; + eDebug("0"); + int i; + + c |= eRect(0, 20, 100, 10); + c |= eRect(0, 50, 100, 10); + c |= eRect(10, 10, 80, 100); + + c -= eRect(20, 20, 40, 40); + + p.setForegroundColor(gColor(3)); + p.fill(eRect(0, 0, 100, 100)); + p.fill(eRect(200, 0, 100, 100)); + + for (int a=0; a<c.rects.size(); ++a) + eDebug("%d %d -> %d %d", c.rects[a].left(), c.rects[a].top(), c.rects[a].right(), c.rects[a].bottom()); + eDebug("extends: %d %d %d %d", c.extends.left(), c.extends.top(), c.extends.right(), c.extends.bottom()); + p.setOffset(ePoint(100, 100)); + p.clip(c); + + p.setBackgroundColor(gColor(1)); + p.clear(); + p.setForegroundColor(gColor(2)); + p.line(ePoint(0, 0), ePoint(220, 190)); + p.clippop(); + + p.setBackgroundColor(gColor(0x1f)); + p.setForegroundColor(gColor(0x10)); + + ePtr<gFont> fnt = new gFont("Regular", 70); + p.setFont(fnt); + p.renderText(eRect(100, 100, 500, 200), "Hello World!"); + + sleep(1); + return 0; +} diff --git a/main/enigma-gui.cpp b/main/enigma-gui.cpp new file mode 100644 index 0000000..0d6d5f4 --- /dev/null +++ b/main/enigma-gui.cpp @@ -0,0 +1,106 @@ +#include <stdio.h> +#include <libsig_comp.h> +#include <lib/base/ebase.h> +#include <lib/base/eerror.h> +#include <lib/base/init.h> +#include <lib/base/init_num.h> + +#include <unistd.h> + +#include <lib/gdi/grc.h> +#include <lib/gdi/gmaindc.h> +#include <lib/gdi/font.h> + +#include <lib/gui/ewidget.h> +#include <lib/gui/ewidgetdesktop.h> +#include <lib/gui/elabel.h> + +#ifdef OBJECT_DEBUG +int object_total_remaining; + +void object_dump() +{ + printf("%d items left\n", object_total_remaining); +} +#endif + +void dumpRegion(const gRegion ®ion) +{ + fprintf(stderr, "extends: %d %d -> %d %d\n", + region.extends.left(), region.extends.top(), + region.extends.right(), region.extends.bottom()); + for (int y=0; y<region.extends.bottom(); ++y) + { + for (int x=0; x<region.extends.right(); ++x) + { + unsigned char res = ' '; + for (unsigned int i=0; i < region.rects.size(); ++i) + if (region.rects[i].contains(ePoint(x, y))) + res = '0' + i; + fprintf(stderr, "%c", res); + } + fprintf(stderr, "\n"); + } +} + +int main() +{ +#ifdef OBJECT_DEBUG + atexit(object_dump); +#endif + + eInit init; + + init.setRunlevel(eAutoInitNumbers::main); + ePtr<gMainDC> my_dc; + gMainDC::getInstance(my_dc); + + gPainter p(my_dc); + + gRGB pal[256]; + pal[0] = 0; + pal[1] = 0xff00ff; + pal[2] = 0xffFFff; + pal[3] = 0x00ff00; + + for (int a=0; a<0x10; ++a) + pal[a | 0x10] = (0x111111 * a) | 0xFF; + p.setPalette(pal, 0, 256); + + fontRenderClass::getInstance()->AddFont(eEnv::resolve("${datadir}/fonts/arial.ttf"), "Regular", 100); + + eWidgetDesktop dsk(eSize(720, 576)); + dsk.setDC(my_dc); + + eWidget *bla = new eWidget(0); + dsk.addRootWidget(bla, 0); + + bla->move(ePoint(100, 100)); + bla->resize(eSize(200, 200)); + bla->show(); + + eWidget *blablub = new eLabel(bla); + blablub->move(ePoint(40, 40)); + blablub->resize(eSize(100, 100)); + + eWidget *bla2 = new eWidget(0); + dsk.addRootWidget(bla2, 0); + + bla2->move(ePoint(160, 160)); + bla2->resize(eSize(200, 200)); + bla2->show(); + + dsk.recalcClipRegions(); + + dumpRegion(bla->m_visible_region); +// dumpRegion(bla2->m_visible_region); +// dumpRegion(blablub->m_visible_region); + + eDebug("painting!"); + + dsk.invalidate(gRegion(eRect(0, 0, 720, 576))); + dsk.paint(); + + sleep(1); + return 0; +} diff --git a/main/enigma-playlist.cpp b/main/enigma-playlist.cpp new file mode 100644 index 0000000..8049743 --- /dev/null +++ b/main/enigma-playlist.cpp @@ -0,0 +1,158 @@ +#include <stdio.h> +#include <libsig_comp.h> +#include <lib/base/ebase.h> +#include <lib/base/eerror.h> +#include <lib/base/init.h> +#include <lib/base/init_num.h> + +#include <lib/dvb/dvb.h> +#include <lib/dvb/db.h> +#include <lib/dvb/isection.h> +#include <lib/dvb/esection.h> +#include <dvbsi++/program_map_section.h> +#include <lib/dvb/scan.h> +#include <unistd.h> + +#include <lib/service/iservice.h> +#include <lib/nav/core.h> + +class eMain: public eApplication, public Object +{ + eInit init; + + ePtr<eDVBResourceManager> m_mgr; + ePtr<iDVBChannel> m_channel; + ePtr<eDVBDB> m_dvbdb; + + ePtr<iPlayableService> m_playservice; + ePtr<eNavigation> m_nav; + ePtr<eConnection> m_conn_event; + ePtr<iServiceInformation> m_serviceInformation; +public: + eMain() + { + init.setRunlevel(eAutoInitNumbers::main); + m_dvbdb = new eDVBDB(); + m_mgr = new eDVBResourceManager(); + m_mgr->setChannelList(m_dvbdb); + + ePtr<eServiceCenter> service_center; + eServiceCenter::getInstance(service_center); + + assert(service_center); + m_nav = new eNavigation(service_center); +#if 0 + if (service_center) + { + eServiceReference ref("2:0:1:0:0:0:0:0:0:0:/"); + ePtr<iListableService> lst; + if (service_center->list(ref, lst)) + eDebug("no list available!"); + else + { + std::list<eServiceReference> list; + if (lst->getContent(list)) + eDebug("list itself SUCKED AROUND!!!"); + else + for (std::list<eServiceReference>::const_iterator i(list.begin()); + i != list.end(); ++i) + eDebug("%s", i->toString().c_str()); + } + } +#endif + m_nav->connectEvent(slot(*this, &eMain::event), m_conn_event); + +// eServiceReference ref("1:0:1:6de2:44d:1:c00000:0:0:0:"); + eServiceReference ref("4097:47:0:0:0:0:0:0:0:0:/sine_60s_100.mp3"); + eServiceReference ref1("4097:47:0:0:0:0:0:0:0:0:/sine_60s_100.mp31"); + eServiceReference ref2("4097:47:0:0:0:0:0:0:0:0:/sine_60s_100.mp32"); + + if (m_nav->enqueueService(ref)) + eDebug("play sucked around!"); + else + eDebug("play r00lz!"); + + m_nav->enqueueService(ref1); + m_nav->enqueueService(ref2); + m_nav->enqueueService(ref1); + } + + void event(eNavigation *nav, int ev) + { + assert(nav); + + ePtr<ePlaylist> playlist; + nav->getPlaylist(playlist); + if (playlist) + { + eDebug("PLAYLIST:"); + ePlaylist::iterator i; + for (i=playlist->begin(); i != playlist->end(); ++i) + eDebug("%s %s", i == playlist->m_current ? "-->" : " ", i->toString().c_str()); + } + + switch (ev) + { + case eNavigation::evStopService: + /* very important: the old service should be deallocated, so clear *all* references to it */ + m_serviceInformation = 0; + eDebug("STOP service!"); + break; + case eNavigation::evNewService: + { + ePtr<iPlayableService> service; + nav->getCurrentService(service); + if (!service) + { + eDebug("no running service!"); + break; + } + if (service->getIServiceInformation(m_serviceInformation)) + { + eDebug("failed to get iserviceinformation"); + break; + } + std::string name; + m_serviceInformation->getName(name); + eDebug("NEW running service: %s", name.c_str()); + break; + } + case eNavigation::evPlayFailed: + eDebug("play failed!"); + break; + case eNavigation::evPlaylistDone: + eDebug("playlist done"); + quit(); + break; + default: + eDebug("Navigation event %d", ev); + break; + } + } + + ~eMain() + { + } +}; + +#ifdef OBJECT_DEBUG +int object_total_remaining; + +void object_dump() +{ + printf("%d items left\n", object_total_remaining); +} +#endif + +int main() +{ +#ifdef OBJECT_DEBUG + atexit(object_dump); +#endif + + eMain app; + int res = app.exec(); + eDebug("after exec"); + return res; +} + diff --git a/main/enigma-scan.cpp b/main/enigma-scan.cpp new file mode 100644 index 0000000..b0b912d --- /dev/null +++ b/main/enigma-scan.cpp @@ -0,0 +1,94 @@ +#include <stdio.h> +#include <libsig_comp.h> +#include <lib/base/ebase.h> +#include <lib/base/eerror.h> +#include <lib/base/init.h> +#include <lib/base/init_num.h> + +#include <lib/dvb/dvb.h> +#include <lib/dvb/db.h> +#include <lib/dvb/isection.h> +#include <lib/dvb/esection.h> +#include <dvbsi++/program_map_section.h> +#include <lib/dvb/scan.h> +#include <unistd.h> + +class eMain: public eApplication, public Object +{ + eInit init; + + eDVBScan *m_scan; + + ePtr<eDVBResourceManager> m_mgr; + ePtr<iDVBChannel> m_channel; + ePtr<eDVBDB> m_dvbdb; + + void scanEvent(int evt) + { + eDebug("scan event %d!", evt); + if (evt == eDVBScan::evtFinish) + { + m_scan->insertInto(m_dvbdb); + quit(0); + } + } + ePtr<eConnection> m_scan_event_connection; +public: + eMain() + { + m_dvbdb = new eDVBDB(); + m_mgr = new eDVBResourceManager(); + + eDVBFrontendParametersSatellite fesat; + + fesat.frequency = 11817000; // 12070000; + fesat.symbol_rate = 27500000; + fesat.polarisation = eDVBFrontendParametersSatellite::Polarisation_Vertical; + fesat.fec = eDVBFrontendParametersSatellite::FEC_3_4; + fesat.inversion = eDVBFrontendParametersSatellite::Inversion_Off; + fesat.orbital_position = 192; + + eDVBFrontendParameters *fe = new eDVBFrontendParameters(); + + fe->setDVBS(fesat); + + if (m_mgr->allocateRawChannel(m_channel)) + eDebug("shit it failed!"); + +// init.setRunlevel(eAutoInitNumbers::main); + eDebug("starting scan..."); + + std::list<ePtr<iDVBFrontendParameters> > list; + + list.push_back(fe); + + m_scan = new eDVBScan(m_channel); + m_scan->start(list); + + m_scan->connectEvent(slot(*this, &eMain::scanEvent), m_scan_event_connection); + } + + ~eMain() + { + delete m_scan; + eDebug("... nicht mehr."); + } +}; + +#ifdef OBJECT_DEBUG +int object_total_remaining; + +void object_dump() +{ + printf("%d items left\n", object_total_remaining); +} +#endif + +int main() +{ +#ifdef OBJECT_DEBUG + atexit(object_dump); +#endif + eMain app; + return app.exec(); +} diff --git a/main/enigma.cpp b/main/enigma.cpp new file mode 100644 index 0000000..14627f4 --- /dev/null +++ b/main/enigma.cpp @@ -0,0 +1,330 @@ +#include <unistd.h> +#include <fcntl.h> +#include <stdio.h> +#include <sys/types.h> +#include <sys/ioctl.h> +#include <libsig_comp.h> + +#include <lib/actions/action.h> +#include <lib/driver/rc.h> +#include <lib/base/ioprio.h> +#include <lib/base/ebase.h> +#include <lib/base/eenv.h> +#include <lib/base/eerror.h> +#include <lib/base/init.h> +#include <lib/base/init_num.h> +#include <lib/gdi/gmaindc.h> +#include <lib/gdi/glcddc.h> +#include <lib/gdi/grc.h> +#include <lib/gdi/epng.h> +#include <lib/gdi/font.h> +#include <lib/gui/ebutton.h> +#include <lib/gui/elabel.h> +#include <lib/gui/elistboxcontent.h> +#include <lib/gui/ewidget.h> +#include <lib/gui/ewidgetdesktop.h> +#include <lib/gui/ewindow.h> +#include <lib/gui/evideo.h> +#include <lib/python/connections.h> +#include <lib/python/python.h> +#include <lib/python/pythonconfig.h> + +#include "bsod.h" +#include "version_info.h" + +#include <gst/gst.h> + +#ifdef OBJECT_DEBUG +int object_total_remaining; + +void object_dump() +{ + printf("%d items left\n", object_total_remaining); +} +#endif + +static eWidgetDesktop *wdsk, *lcddsk; + +static int prev_ascii_code; + +int getPrevAsciiCode() +{ + int ret = prev_ascii_code; + prev_ascii_code = 0; + return ret; +} + +void keyEvent(const eRCKey &key) +{ + static eRCKey last(0, 0, 0); + static int num_repeat; + + ePtr<eActionMap> ptr; + eActionMap::getInstance(ptr); + + if ((key.code == last.code) && (key.producer == last.producer) && key.flags & eRCKey::flagRepeat) + num_repeat++; + else + { + num_repeat = 0; + last = key; + } + + if (num_repeat == 4) + { + ptr->keyPressed(key.producer->getIdentifier(), key.code, eRCKey::flagLong); + num_repeat++; + } + + if (key.flags & eRCKey::flagAscii) + { + prev_ascii_code = key.code; + ptr->keyPressed(key.producer->getIdentifier(), 510 /* faked KEY_ASCII */, 0); + } + else + ptr->keyPressed(key.producer->getIdentifier(), key.code, key.flags); +} + +/************************************************/ +#include <unistd.h> +#include <lib/components/scan.h> +#include <lib/dvb/idvb.h> +#include <lib/dvb/dvb.h> +#include <lib/dvb/db.h> +#include <lib/dvb/dvbtime.h> +#include <lib/dvb/epgcache.h> + +class eMain: public eApplication, public Object +{ + eInit init; + ePythonConfigQuery config; + + ePtr<eDVBDB> m_dvbdb; + ePtr<eDVBResourceManager> m_mgr; + ePtr<eDVBLocalTimeHandler> m_locale_time_handler; + ePtr<eEPGCache> m_epgcache; + +public: + eMain() + { + init.setRunlevel(eAutoInitNumbers::main); + /* TODO: put into init */ + m_dvbdb = new eDVBDB(); + m_mgr = new eDVBResourceManager(); + m_locale_time_handler = new eDVBLocalTimeHandler(); + m_epgcache = new eEPGCache(); + m_mgr->setChannelList(m_dvbdb); + } + + ~eMain() + { + m_dvbdb->saveServicelist(); + m_mgr->releaseCachedChannel(); + } +}; + +int exit_code; + +int main(int argc, char **argv) +{ +#ifdef MEMLEAK_CHECK + atexit(DumpUnfreed); +#endif + +#ifdef OBJECT_DEBUG + atexit(object_dump); +#endif + + gst_init(&argc, &argv); + + // set pythonpath if unset + setenv("PYTHONPATH", eEnv::resolve("${libdir}/enigma2/python").c_str(), 0); + printf("PYTHONPATH: %s\n", getenv("PYTHONPATH")); + + bsodLogInit(); + + ePython python; + eMain main; + +#if 1 + ePtr<gMainDC> my_dc; + gMainDC::getInstance(my_dc); + + //int double_buffer = my_dc->haveDoubleBuffering(); + + ePtr<gLCDDC> my_lcd_dc; + gLCDDC::getInstance(my_lcd_dc); + + + /* ok, this is currently hardcoded for arabic. */ + /* some characters are wrong in the regular font, force them to use the replacement font */ + for (int i = 0x60c; i <= 0x66d; ++i) + eTextPara::forceReplacementGlyph(i); + eTextPara::forceReplacementGlyph(0xfdf2); + for (int i = 0xfe80; i < 0xff00; ++i) + eTextPara::forceReplacementGlyph(i); + + eWidgetDesktop dsk(my_dc->size()); + eWidgetDesktop dsk_lcd(my_lcd_dc->size()); + + dsk.setStyleID(0); + dsk_lcd.setStyleID(my_lcd_dc->size().width() == 96 ? 2 : 1); + +/* if (double_buffer) + { + eDebug(" - double buffering found, enable buffered graphics mode."); + dsk.setCompositionMode(eWidgetDesktop::cmBuffered); + } */ + + wdsk = &dsk; + lcddsk = &dsk_lcd; + + dsk.setDC(my_dc); + dsk_lcd.setDC(my_lcd_dc); + + dsk.setBackgroundColor(gRGB(0,0,0,0xFF)); +#endif + + /* redrawing is done in an idle-timer, so we have to set the context */ + dsk.setRedrawTask(main); + dsk_lcd.setRedrawTask(main); + + + eDebug("Loading spinners..."); + + { + int i; +#define MAX_SPINNER 64 + ePtr<gPixmap> wait[MAX_SPINNER]; + for (i=0; i<MAX_SPINNER; ++i) + { + char filename[64]; + std::string rfilename; + snprintf(filename, sizeof(filename), "${datadir}/enigma2/skin_default/spinner/wait%d.png", i + 1); + rfilename = eEnv::resolve(filename); + loadPNG(wait[i], rfilename.c_str()); + + if (!wait[i]) + { + if (!i) + eDebug("failed to load %s! (%m)", rfilename.c_str()); + else + eDebug("found %d spinner!\n", i); + break; + } + } + if (i) + my_dc->setSpinner(eRect(ePoint(100, 100), wait[0]->size()), wait, i); + else + my_dc->setSpinner(eRect(100, 100, 0, 0), wait, 1); + } + + gRC::getInstance()->setSpinnerDC(my_dc); + + eRCInput::getInstance()->keyEvent.connect(slot(keyEvent)); + + printf("executing main\n"); + + bsodCatchSignals(); + + setIoPrio(IOPRIO_CLASS_BE, 3); + + /* start at full size */ + eVideoWidget::setFullsize(true); + +// python.execute("mytest", "__main__"); + python.execFile(eEnv::resolve("${libdir}/enigma2/python/mytest.py").c_str()); + + /* restore both decoders to full size */ + eVideoWidget::setFullsize(true); + + if (exit_code == 5) /* python crash */ + { + eDebug("(exit code 5)"); + bsodFatal(0); + } + + dsk.paint(); + dsk_lcd.paint(); + + { + gPainter p(my_lcd_dc); + p.resetClip(eRect(ePoint(0, 0), my_lcd_dc->size())); + p.clear(); + p.flush(); + } + + return exit_code; +} + +eWidgetDesktop *getDesktop(int which) +{ + return which ? lcddsk : wdsk; +} + +eApplication *getApplication() +{ + return eApp; +} + +void quitMainloop(int exitCode) +{ + FILE *f = fopen("/proc/stb/fp/was_timer_wakeup", "w"); + if (f) + { + fprintf(f, "%d", 0); + fclose(f); + } + else + { + int fd = open("/dev/dbox/fp0", O_WRONLY); + if (fd >= 0) + { + if (ioctl(fd, 10 /*FP_CLEAR_WAKEUP_TIMER*/) < 0) + eDebug("FP_CLEAR_WAKEUP_TIMER failed (%m)"); + close(fd); + } + else + eDebug("open /dev/dbox/fp0 for wakeup timer clear failed!(%m)"); + } + exit_code = exitCode; + eApp->quit(0); +} + +static void sigterm_handler(int num) +{ + quitMainloop(128 + num); +} + +void runMainloop() +{ + struct sigaction act; + + act.sa_handler = sigterm_handler; + act.sa_flags = SA_RESTART; + + if (sigemptyset(&act.sa_mask) == -1) + perror("sigemptyset"); + if (sigaction(SIGTERM, &act, 0) == -1) + perror("SIGTERM"); + + eApp->runLoop(); +} + +const char *getEnigmaVersionString() +{ + return enigma2_version; +} + +const char *getBoxType() +{ + return BOXTYPE; +} + +#include <malloc.h> + +void dump_malloc_stats(void) +{ + struct mallinfo mi = mallinfo(); + eDebug("MALLOC: %d total", mi.uordblks); +} diff --git a/main/version_info.cpp b/main/version_info.cpp new file mode 100644 index 0000000..5dcdbd7 --- /dev/null +++ b/main/version_info.cpp @@ -0,0 +1,19 @@ +#include "version_info.h" +#include "version.h" + +#ifndef ENIGMA2_COMMIT_DATE +#define ENIGMA2_COMMIT_DATE __DATE__ +#endif +const char *enigma2_date = ENIGMA2_COMMIT_DATE; + +#ifndef ENIGMA2_BRANCH +#define ENIGMA2_BRANCH "(no branch)" +#endif +const char *enigma2_branch = ENIGMA2_BRANCH; + +#ifndef ENIGMA2_REV +#define ENIGMA2_REV "" +#endif +const char *enigma2_rev = ENIGMA2_REV; + +const char *enigma2_version = (ENIGMA2_COMMIT_DATE "-" ENIGMA2_BRANCH); diff --git a/main/version_info.h b/main/version_info.h new file mode 100644 index 0000000..63187e1 --- /dev/null +++ b/main/version_info.h @@ -0,0 +1,9 @@ +#ifndef __main_version_info_h__ +#define __main_version_info_h__ + +extern const char *enigma2_date; +extern const char *enigma2_branch; +extern const char *enigma2_rev; +extern const char *enigma2_version; + +#endif diff --git a/main/xmlgenerator.cpp b/main/xmlgenerator.cpp new file mode 100644 index 0000000..eb4f157 --- /dev/null +++ b/main/xmlgenerator.cpp @@ -0,0 +1,188 @@ +#include <fstream> +#include <lib/base/eerror.h> +#include "xmlgenerator.h" + +XmlGenerator::XmlGenerator(FILE *f) : m_file(f), m_indent(true), m_level(0) +{ + ::fprintf(m_file, "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n"); +} + +XmlGenerator::~XmlGenerator() +{ +} + +void XmlGenerator::vprint(const char *fmt, va_list ap, bool newline) +{ + unsigned int i; + + if (m_indent) + for (i = 0; i < m_level; i++) + ::fprintf(m_file, "\t"); + + ::vfprintf(m_file, fmt, ap); + + if (newline) + ::fprintf(m_file, "\n"); +} + +void XmlGenerator::print(const char *fmt, ...) +{ + va_list ap; + + ::va_start(ap, fmt); + vprint(fmt, ap, false); + ::va_end(ap); +} + +void XmlGenerator::printLn(const char *fmt, ...) +{ + va_list ap; + + ::va_start(ap, fmt); + vprint(fmt, ap, true); + ::va_end(ap); +} + +void XmlGenerator::open(const std::string &tag, bool newline) +{ + if (newline) { + printLn("<%s>", tag.c_str()); + } else { + print("<%s>", tag.c_str()); + m_indent = false; + } + + m_tags.push(tag); + m_level++; +} + +void XmlGenerator::open(const std::string &tag) +{ + open(tag, true); +} + +void XmlGenerator::close() +{ + ASSERT(!m_tags.empty()); + ASSERT(m_level > 0); + m_level--; + + printLn("</%s>", m_tags.top().c_str()); + m_indent = true; + + m_tags.pop(); +} + +void XmlGenerator::comment(const std::string &str) +{ + printLn("<!-- %s -->", str.c_str()); +} + +void XmlGenerator::commentFromErrno(const std::string &tag) +{ + open(tag); + comment(strerror(errno)); + close(); +} + +std::string XmlGenerator::cDataEscape(const std::string &str) +{ + const std::string search = "]]>"; + const std::string replace = "]]]]><![CDATA[>"; + std::string ret; + size_t pos = 0, opos; + + for (;;) { + opos = pos; + pos = str.find(search, opos); + if (pos == std::string::npos) + break; + ret.append(str, opos, pos - opos); + ret.append(replace); + pos += search.size(); + } + + ret.append(str, opos, std::string::npos); + return ret; +} + +void XmlGenerator::cDataFromCmd(const std::string &tag, const std::string &cmd) +{ + FILE *pipe = ::popen(cmd.c_str(), "re"); + + if (pipe == 0) { + commentFromErrno(tag); + return; + } + + std::string result; + char *lineptr = NULL; + size_t n = 0; + + for (;;) { + ssize_t ret = ::getline(&lineptr, &n, pipe); + if (ret < 0) + break; + result.append(lineptr, ret); + } + + if (lineptr) + ::free(lineptr); + + ::pclose(pipe); + cDataFromString(tag, result); +} + +void XmlGenerator::cDataFromFile(const std::string &tag, const std::string &filename, const char *filter) +{ + std::ifstream in(filename.c_str()); + std::string line; + std::string content; + + if (!in.good()) { + commentFromErrno(tag); + return; + } + + while (std::getline(in, line)) + if (!filter || !line.find(filter)) + content += line + '\n'; + + in.close(); + cDataFromString(tag, content); +} + +void XmlGenerator::cDataFromString(const std::string &tag, const std::string &str) +{ + bool indent = false; + + open(tag); + printLn("<![CDATA["); + std::swap(m_indent, indent); + print("%s", cDataEscape(str).c_str()); + printLn("]]>"); + std::swap(m_indent, indent); + close(); +} + +void XmlGenerator::string(const std::string &tag, const std::string &str) +{ + open(tag, false); + print("%s", str.c_str()); + close(); +} + +void XmlGenerator::stringFromFile(const std::string &tag, const std::string &filename) +{ + std::ifstream in(filename.c_str()); + std::string line; + + if (!in.good()) { + commentFromErrno(tag); + return; + } + + std::getline(in, line); + in.close(); + string(tag, line); +} diff --git a/main/xmlgenerator.h b/main/xmlgenerator.h new file mode 100644 index 0000000..0dbb262 --- /dev/null +++ b/main/xmlgenerator.h @@ -0,0 +1,43 @@ +#ifndef _main_xmlgenerator_h__ +#define _main_xmlgenerator_h__ + +#include <cstdarg> +#include <cstdio> +#include <stack> +#include <string> + +class XmlGenerator +{ +private: + FILE *m_file; + bool m_indent; + unsigned int m_level; + std::stack<std::string> m_tags; + + void vprint(const char *fmt, va_list ap, bool newline); + void __attribute__ ((__format__(__printf__, 2, 3))) print(const char *fmt, ...); + void __attribute__ ((__format__(__printf__, 2, 3))) printLn(const char *fmt, ...); + + void open(const std::string &tag, bool newline); + void commentFromErrno(const std::string &tag); + + std::string cDataEscape(const std::string &str); + +public: + XmlGenerator(FILE *f); + ~XmlGenerator(); + + void open(const std::string &tag); + void close(); + + void comment(const std::string &str); + + void cDataFromCmd(const std::string &tag, const std::string &cmd); + void cDataFromFile(const std::string &tag, const std::string &filename, const char *filter = 0); + void cDataFromString(const std::string &tag, const std::string &str); + + void string(const std::string &tag, const std::string &str); + void stringFromFile(const std::string &tag, const std::string &filename); +}; + +#endif diff --git a/mytest.py b/mytest.py new file mode 100644 index 0000000..8e3fdcf --- /dev/null +++ b/mytest.py @@ -0,0 +1,600 @@ +import sys, os +if os.path.isfile("/usr/lib/enigma2/python/enigma.zip"): + sys.path.append("/usr/lib/enigma2/python/enigma.zip") + +from Tools.Profile import profile, profile_final +profile("PYTHON_START") + +import Tools.RedirectOutput +import enigma +import eConsoleImpl +import eBaseImpl +enigma.eTimer = eBaseImpl.eTimer +enigma.eSocketNotifier = eBaseImpl.eSocketNotifier +enigma.eConsoleAppContainer = eConsoleImpl.eConsoleAppContainer + +from traceback import print_exc +profile("SimpleSummary") +from Screens import InfoBar +from Screens.SimpleSummary import SimpleSummary + +from sys import stdout, exc_info + +profile("Bouquets") +enigma.eDVBDB.getInstance().reloadBouquets() + +profile("ParentalControl") +import Components.ParentalControl +Components.ParentalControl.InitParentalControl() + +profile("LOAD:Navigation") +from Navigation import Navigation + +profile("LOAD:skin") +from skin import readSkin + +profile("LOAD:Tools") +from Tools.Directories import InitFallbackFiles, resolveFilename, SCOPE_PLUGINS, SCOPE_CURRENT_SKIN +from Components.config import config, configfile, ConfigText, ConfigYesNo, ConfigInteger, NoSave +InitFallbackFiles() + +profile("config.misc") +config.misc.radiopic = ConfigText(default = resolveFilename(SCOPE_CURRENT_SKIN, "radio.mvi")) +config.misc.blackradiopic = ConfigText(default = resolveFilename(SCOPE_CURRENT_SKIN, "black.mvi")) +config.misc.useTransponderTime = ConfigYesNo(default=True) +config.misc.startCounter = ConfigInteger(default=0) # number of e2 starts... +config.misc.standbyCounter = NoSave(ConfigInteger(default=0)) # number of standby +config.misc.DeepStandby = NoSave(ConfigYesNo(default=False)) # detect deepstandby +config.misc.RestartUI = ConfigYesNo(default=False) # detect user interface restart +config.misc.epgcache_filename = ConfigText(default = "/hdd/epg.dat") + +def setEPGCachePath(configElement): + enigma.eEPGCache.getInstance().setCacheFile(configElement.value) + +#demo code for use of standby enter leave callbacks +#def leaveStandby(): +# print "!!!!!!!!!!!!!!!!!leave standby" + +#def standbyCountChanged(configElement): +# print "!!!!!!!!!!!!!!!!!enter standby num", configElement.value +# from Screens.Standby import inStandby +# inStandby.onClose.append(leaveStandby) + +#config.misc.standbyCounter.addNotifier(standbyCountChanged, initial_call = False) +#################################################### + +def useTransponderTimeChanged(configElement): + enigma.eDVBLocalTimeHandler.getInstance().setUseDVBTime(configElement.value) +config.misc.useTransponderTime.addNotifier(useTransponderTimeChanged) + +profile("Twisted") +try: + import twisted.python.runtime + + import e2reactor + e2reactor.install() + + from twisted.internet import reactor + + def runReactor(): + reactor.run(installSignalHandlers=False) +except ImportError: + print "twisted not available" + def runReactor(): + enigma.runMainloop() + +profile("LOAD:Plugin") + +# initialize autorun plugins and plugin menu entries +from Components.PluginComponent import plugins + +profile("LOAD:Wizard") +from Screens.Wizard import wizardManager +from Screens.StartWizard import * +import Screens.Rc +from Tools.BoundFunction import boundFunction +from Plugins.Plugin import PluginDescriptor + +profile("misc") +had = dict() + +def dump(dir, p = ""): + if isinstance(dir, dict): + for (entry, val) in dir.items(): + dump(val, p + "(dict)/" + entry) + if hasattr(dir, "__dict__"): + for name, value in dir.__dict__.items(): + if not had.has_key(str(value)): + had[str(value)] = 1 + dump(value, p + "/" + str(name)) + else: + print p + "/" + str(name) + ":" + str(dir.__class__) + "(cycle)" + else: + print p + ":" + str(dir) + +# + ":" + str(dir.__class__) + +# display + +profile("LOAD:ScreenGlobals") +from Screens.Globals import Globals +from Screens.SessionGlobals import SessionGlobals +from Screens.Screen import Screen + +profile("Screen") +Screen.global_screen = Globals() + +# Session.open: +# * push current active dialog ('current_dialog') onto stack +# * call execEnd for this dialog +# * clear in_exec flag +# * hide screen +# * instantiate new dialog into 'current_dialog' +# * create screens, components +# * read, apply skin +# * create GUI for screen +# * call execBegin for new dialog +# * set in_exec +# * show gui screen +# * call components' / screen's onExecBegin +# ... screen is active, until it calls 'close'... +# Session.close: +# * assert in_exec +# * save return value +# * start deferred close handler ('onClose') +# * execEnd +# * clear in_exec +# * hide screen +# .. a moment later: +# Session.doClose: +# * destroy screen + +class Session: + def __init__(self, desktop = None, summary_desktop = None, navigation = None): + self.desktop = desktop + self.summary_desktop = summary_desktop + self.nav = navigation + self.delay_timer = enigma.eTimer() + self.delay_timer.callback.append(self.processDelay) + + self.current_dialog = None + + self.dialog_stack = [ ] + self.summary_stack = [ ] + self.summary = None + + self.in_exec = False + + self.screen = SessionGlobals(self) + + for p in plugins.getPlugins(PluginDescriptor.WHERE_SESSIONSTART): + try: + p(reason=0, session=self) + except: + print "Plugin raised exception at WHERE_SESSIONSTART" + import traceback + traceback.print_exc() + + def processDelay(self): + callback = self.current_dialog.callback + + retval = self.current_dialog.returnValue + + if self.current_dialog.isTmp: + self.current_dialog.doClose() +# dump(self.current_dialog) + del self.current_dialog + else: + del self.current_dialog.callback + + self.popCurrent() + if callback is not None: + callback(*retval) + + def execBegin(self, first=True, do_show = True): + assert not self.in_exec + self.in_exec = True + c = self.current_dialog + + # when this is an execbegin after a execend of a "higher" dialog, + # popSummary already did the right thing. + if first: + self.instantiateSummaryDialog(c) + + c.saveKeyboardMode() + c.execBegin() + + # when execBegin opened a new dialog, don't bother showing the old one. + if c == self.current_dialog and do_show: + c.show() + + def execEnd(self, last=True): + assert self.in_exec + self.in_exec = False + + self.current_dialog.execEnd() + self.current_dialog.restoreKeyboardMode() + self.current_dialog.hide() + + if last: + self.current_dialog.removeSummary(self.summary) + self.popSummary() + + def create(self, screen, arguments, **kwargs): + # creates an instance of 'screen' (which is a class) + try: + return screen(self, *arguments, **kwargs) + except: + errstr = "Screen %s(%s, %s): %s" % (str(screen), str(arguments), str(kwargs), exc_info()[0]) + print errstr + print_exc(file=stdout) + enigma.quitMainloop(5) + + def instantiateDialog(self, screen, *arguments, **kwargs): + return self.doInstantiateDialog(screen, arguments, kwargs, self.desktop) + + def deleteDialog(self, screen): + screen.hide() + screen.doClose() + + def instantiateSummaryDialog(self, screen, **kwargs): + self.pushSummary() + summary = screen.createSummary() or SimpleSummary + arguments = (screen,) + self.summary = self.doInstantiateDialog(summary, arguments, kwargs, self.summary_desktop) + self.summary.show() + screen.addSummary(self.summary) + + def doInstantiateDialog(self, screen, arguments, kwargs, desktop): + # create dialog + + try: + dlg = self.create(screen, arguments, **kwargs) + except: + print 'EXCEPTION IN DIALOG INIT CODE, ABORTING:' + print '-'*60 + print_exc(file=stdout) + enigma.quitMainloop(5) + print '-'*60 + + if dlg is None: + return + + # read skin data + readSkin(dlg, None, dlg.skinName, desktop) + + # create GUI view of this dialog + assert desktop is not None + + dlg.setDesktop(desktop) + dlg.applySkin() + + return dlg + + def pushCurrent(self): + if self.current_dialog is not None: + self.dialog_stack.append((self.current_dialog, self.current_dialog.shown)) + self.execEnd(last=False) + + def popCurrent(self): + if self.dialog_stack: + (self.current_dialog, do_show) = self.dialog_stack.pop() + self.execBegin(first=False, do_show=do_show) + else: + self.current_dialog = None + + def execDialog(self, dialog): + self.pushCurrent() + self.current_dialog = dialog + self.current_dialog.isTmp = False + self.current_dialog.callback = None # would cause re-entrancy problems. + self.execBegin() + + def openWithCallback(self, callback, screen, *arguments, **kwargs): + dlg = self.open(screen, *arguments, **kwargs) + dlg.callback = callback + return dlg + + def open(self, screen, *arguments, **kwargs): + if self.dialog_stack and not self.in_exec: + raise RuntimeError("modal open are allowed only from a screen which is modal!") + # ...unless it's the very first screen. + + self.pushCurrent() + dlg = self.current_dialog = self.instantiateDialog(screen, *arguments, **kwargs) + dlg.isTmp = True + dlg.callback = None + self.execBegin() + return dlg + + def close(self, screen, *retval): + if not self.in_exec: + print "close after exec!" + return + + # be sure that the close is for the right dialog! + # if it's not, you probably closed after another dialog + # was opened. this can happen if you open a dialog + # onExecBegin, and forget to do this only once. + # after close of the top dialog, the underlying will + # gain focus again (for a short time), thus triggering + # the onExec, which opens the dialog again, closing the loop. + assert screen == self.current_dialog + + self.current_dialog.returnValue = retval + self.delay_timer.start(0, 1) + self.execEnd() + + def pushSummary(self): + if self.summary is not None: + self.summary.hide() + self.summary_stack.append(self.summary) + self.summary = None + + def popSummary(self): + if self.summary is not None: + self.summary.doClose() + self.summary = self.summary_stack.pop() + if self.summary is not None: + self.summary.show() + +profile("Standby,PowerKey") +import Screens.Standby +from Screens.Menu import MainMenu, mdom +from GlobalActions import globalActionMap + +class PowerKey: + """ PowerKey stuff - handles the powerkey press and powerkey release actions""" + + def __init__(self, session): + self.session = session + globalActionMap.actions["power_down"]=self.powerdown + globalActionMap.actions["power_up"]=self.powerup + globalActionMap.actions["power_long"]=self.powerlong + globalActionMap.actions["deepstandby"]=self.shutdown # frontpanel long power button press + globalActionMap.actions["discrete_off"]=self.standby + self.standbyblocked = 1 + + def MenuClosed(self, *val): + self.session.infobar = None + + def shutdown(self): + print "PowerOff - Now!" + if not Screens.Standby.inTryQuitMainloop and self.session.current_dialog and self.session.current_dialog.ALLOW_SUSPEND: + self.session.open(Screens.Standby.TryQuitMainloop, 1) + + def powerlong(self): + if Screens.Standby.inTryQuitMainloop or (self.session.current_dialog and not self.session.current_dialog.ALLOW_SUSPEND): + return + self.doAction(action = config.usage.on_long_powerpress.value) + + def doAction(self, action): + self.standbyblocked = 1 + if action == "shutdown": + self.shutdown() + elif action == "show_menu": + print "Show shutdown Menu" + root = mdom.getroot() + for x in root.findall("menu"): + y = x.find("id") + if y is not None: + id = y.get("val") + if id and id == "shutdown": + self.session.infobar = self + menu_screen = self.session.openWithCallback(self.MenuClosed, MainMenu, x) + menu_screen.setTitle(_("Standby / restart")) + return + elif action == "standby": + self.standby() + + def powerdown(self): + self.standbyblocked = 0 + + def powerup(self): + if self.standbyblocked == 0: + self.doAction(action = config.usage.on_short_powerpress.value) + + def standby(self): + if not Screens.Standby.inStandby and self.session.current_dialog and self.session.current_dialog.ALLOW_SUSPEND and self.session.in_exec: + self.session.open(Screens.Standby.Standby) + +profile("Scart") +from Screens.Scart import Scart + +class AutoScartControl: + def __init__(self, session): + self.force = False + self.current_vcr_sb = enigma.eAVSwitch.getInstance().getVCRSlowBlanking() + if self.current_vcr_sb and config.av.vcrswitch.value: + self.scartDialog = session.instantiateDialog(Scart, True) + else: + self.scartDialog = session.instantiateDialog(Scart, False) + config.av.vcrswitch.addNotifier(self.recheckVCRSb) + enigma.eAVSwitch.getInstance().vcr_sb_notifier.get().append(self.VCRSbChanged) + + def recheckVCRSb(self, configElement): + self.VCRSbChanged(self.current_vcr_sb) + + def VCRSbChanged(self, value): + #print "vcr sb changed to", value + self.current_vcr_sb = value + if config.av.vcrswitch.value or value > 2: + if value: + self.scartDialog.showMessageBox() + else: + self.scartDialog.switchToTV() + +profile("Load:CI") +from enigma import eDVBCIInterfaces +from Screens.Ci import CiHandler + +profile("Load:VolumeControl") +from Components.VolumeControl import VolumeControl + +def runScreenTest(): + config.misc.startCounter.value += 1 + + profile("readPluginList") + plugins.readPluginList(resolveFilename(SCOPE_PLUGINS)) + + profile("Init:Session") + nav = Navigation() + session = Session(desktop = enigma.getDesktop(0), summary_desktop = enigma.getDesktop(1), navigation = nav) + + CiHandler.setSession(session) + + screensToRun = [ p.__call__ for p in plugins.getPlugins(PluginDescriptor.WHERE_WIZARD) ] + + profile("wizards") + screensToRun += wizardManager.getWizards() + + screensToRun.append((100, InfoBar.InfoBar)) + + screensToRun.sort() + + enigma.ePythonConfigQuery.setQueryFunc(configfile.getResolvedKey) + +# eDVBCIInterfaces.getInstance().setDescrambleRules(0 # Slot Number +# ,( ["1:0:1:24:4:85:C00000:0:0:0:"], #service_list +# ["PREMIERE"], #provider_list, +# [] #caid_list +# )); + + def runNextScreen(session, screensToRun, *result): + if result: + enigma.quitMainloop(*result) + return + + screen = screensToRun[0][1] + args = screensToRun[0][2:] + + if screensToRun: + session.openWithCallback(boundFunction(runNextScreen, session, screensToRun[1:]), screen, *args) + else: + session.open(screen, *args) + + config.misc.epgcache_filename.addNotifier(setEPGCachePath) + + runNextScreen(session, screensToRun) + + profile("Init:VolumeControl") + vol = VolumeControl(session) + profile("Init:PowerKey") + power = PowerKey(session) + + # we need session.scart to access it from within menu.xml + session.scart = AutoScartControl(session) + + profile("Init:Trashcan") + import Tools.Trashcan + Tools.Trashcan.init(session) + + profile("RunReactor") + profile_final() + runReactor() + + config.misc.startCounter.save() + + profile("wakeup") + from time import time, strftime, localtime + from Tools.StbHardware import setFPWakeuptime, getFPWakeuptime, setRTCtime + #get currentTime + nowTime = time() + wakeupList = [ + x for x in ((session.nav.RecordTimer.getNextRecordingTime(), 0), + (session.nav.RecordTimer.getNextZapTime(isWakeup=True), 1), + (plugins.getNextWakeupTime(), 2)) + if x[0] != -1 + ] + wakeupList.sort() + if wakeupList: + from time import strftime + startTime = wakeupList[0] + if (startTime[0] - nowTime) < 270: # no time to switch box back on + wptime = nowTime + 30 # so switch back on in 30 seconds + else: + wptime = startTime[0] - 240 + if not config.misc.useTransponderTime.value: + print "dvb time sync disabled... so set RTC now to current linux time!", strftime("%Y/%m/%d %H:%M", localtime(nowTime)) + setRTCtime(nowTime) + print "set wakeup time to", strftime("%Y/%m/%d %H:%M", localtime(wptime)) + setFPWakeuptime(wptime) + + profile("stopService") + session.nav.stopService() + profile("nav shutdown") + session.nav.shutdown() + + profile("configfile.save") + configfile.save() + from Screens import InfoBarGenerics + InfoBarGenerics.saveResumePoints() + + return 0 + +profile("Init:skin") +import skin +skin.loadSkinData(enigma.getDesktop(0)) + +profile("InputDevice") +import Components.InputDevice +Components.InputDevice.InitInputDevices() +import Components.InputHotplug + +profile("SetupDevices") +import Components.SetupDevices +Components.SetupDevices.InitSetupDevices() + +profile("AVSwitch") +import Components.AVSwitch +Components.AVSwitch.InitAVSwitch() + +profile("RecordingConfig") +import Components.RecordingConfig +Components.RecordingConfig.InitRecordingConfig() + +profile("UsageConfig") +import Components.UsageConfig +Components.UsageConfig.InitUsageConfig() + +profile("keymapparser") +import keymapparser +keymapparser.readKeymap(config.usage.keymap.value) + +profile("Network") +import Components.Network +Components.Network.InitNetwork() + +profile("LCD") +import Components.Lcd +Components.Lcd.InitLcd() + +profile("RFMod") +import Components.RFmod +Components.RFmod.InitRFmod() + +profile("Init:CI") +import Screens.Ci +Screens.Ci.InitCiConfig() + +profile("RcModel") +import Components.RcModel + +#from enigma import dump_malloc_stats +#t = eTimer() +#t.callback.append(dump_malloc_stats) +#t.start(1000) + +# first, setup a screen +try: + runScreenTest() + + plugins.shutdown() + + Components.ParentalControl.parentalControl.save() +except: + print 'EXCEPTION IN PYTHON STARTUP CODE:' + print '-'*60 + print_exc(file=stdout) + enigma.quitMainloop(5) + print '-'*60 diff --git a/po/Makefile.am b/po/Makefile.am new file mode 100644 index 0000000..521c13c --- /dev/null +++ b/po/Makefile.am @@ -0,0 +1,45 @@ +dist_noinst_SCRIPTS = xml2po.py + +LANGS = ar bg ca cs da de el en es et fa fi fr fy he hr hu is it ku lt lv nl no pl pt pt_BR ro ru sv sk sl sr th tr uk +LANGMO = $(LANGS:=.mo) +LANGPO = $(LANGS:=.po) + +EXTRA_DIST = $(LANGPO) + +if UPDATE_PO +# the TRANSLATORS: allows putting translation comments before the to-be-translated line. +enigma2-py.pot: $(top_srcdir)/*.py $(top_srcdir)/lib/python/*/*.py $(top_srcdir)/lib/python/*/*/*.py $(top_srcdir)/lib/python/Plugins/*/*/*.py + $(XGETTEXT) --no-wrap -L Python --from-code=UTF-8 -kpgettext:1c,2 --add-comments="TRANSLATORS:" -d @PACKAGE_NAME@ -s -o $@ $^ + +enigma2-xml.pot: $(srcdir)/xml2po.py $(top_srcdir)/data/*.xml $(top_srcdir)/lib/python/Plugins/SystemPlugins/*/*.xml + $(PYTHON) $^ > $@ + +enigma2.pot: enigma2-py.pot enigma2-xml.pot + cat $^ | $(MSGUNIQ) --no-wrap --no-location -o $@ - + +%.po: enigma2.pot + if [ -f $@ ]; then \ + $(MSGMERGE) --backup=none --no-wrap --no-location -s -U $@ $< && touch $@; \ + else \ + $(MSGINIT) -l $@ -o $@ -i $< --no-translator; \ + fi +endif + +.po.mo: + $(MSGFMT) -o $@ $< + +BUILT_SOURCES = $(LANGMO) +CLEANFILES = $(LANGMO) enigma2-py.pot enigma2-xml.pot enigma2.pot + +dist-hook: $(LANGPO) + +install-data-local: $(LANGMO) + for lang in $(LANGS); do \ + $(mkinstalldirs) $(DESTDIR)$(pkgdatadir)/po/$$lang/LC_MESSAGES; \ + $(INSTALL_DATA) $$lang.mo $(DESTDIR)$(pkgdatadir)/po/$$lang/LC_MESSAGES/@PACKAGE_NAME@.mo; \ + done + +uninstall-local: + for lang in $(LANGS); do \ + $(RM) $(DESTDIR)$(pkgdatadir)/po/$$lang/LC_MESSAGES/@PACKAGE_NAME@.mo; \ + done diff --git a/po/ar.po b/po/ar.po new file mode 100644 index 0000000..c3e40d4 --- /dev/null +++ b/po/ar.po @@ -0,0 +1,8944 @@ +# Arabic translations for Enigma2. +# +msgid "" +msgstr "" +"Project-Id-Version: enigma2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-07-21 19:08+0200\n" +"PO-Revision-Date: 2010-08-20 00:08+0200\n" +"Last-Translator: Hazem <moustafagamal@hotmail.com>\n" +"Language-Team: Arabic <moustafagamal@hotmail.com>\n" +"Language: ar\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 ? 4 : 5;\n" +"X-Generator: Pootle 2.0.3\n" +"X-Poedit-Language: Arabic\n" +"X-Poedit-Country: EGYPT\n" +"X-Poedit-SourceCharset: iso-8859-15\n" + +msgid "" +"\n" +"Advanced options and settings." +msgstr "" +"\n" +"إعدادات و إختيارات متقدمه" + +msgid "" +"\n" +"After pressing OK, please wait!" +msgstr "" +"\n" +"بعد الضغط على موافق ، رجاء الانتظار" + +msgid "" +"\n" +"Backup your receiver settings." +msgstr "" + +# +msgid "" +"\n" +"Edit the upgrade source address." +msgstr "" +"\n" +"تحرير عنوان مصدر الترقيه" + +msgid "" +"\n" +"Manage extensions or plugins for your receiver" +msgstr "" + +msgid "" +"\n" +"Online update of your receiver software." +msgstr "" + +# +msgid "" +"\n" +"Press OK on your remote control to continue." +msgstr "" +"\n" +"أضغط موافق من الريموت للاستمرار" + +# +msgid "" +"\n" +"Restore your backups by date." +msgstr "" +"\n" +"إستعاده النسخه الاحتياطيه بالتاريخ" + +msgid "" +"\n" +"Restore your receiver settings." +msgstr "" + +msgid "" +"\n" +"Restore your receiver with a new firmware." +msgstr "" + +# +msgid "" +"\n" +"Scan for local extensions and install them." +msgstr "" +"\n" +"البحث عن إضافات موضعيه وتركيبها" + +msgid "" +"\n" +"Select your backup device.\n" +"Current device: " +msgstr "" +"\n" +"أختار جهاز النسخه الاحتياطيه.\n" +"الجهاز الحالى: " + +msgid "" +"\n" +"View, install and remove available or installed packages." +msgstr "" +"\n" +"مشاهده،تنصيب أو إزالة الباقات." + +msgid " (PiP)" +msgstr "" + +msgid " (Radio)" +msgstr "" + +msgid " (TV)" +msgstr "" + +msgid " (disabled)" +msgstr "" + +msgid " (higher than any auto)" +msgstr "" + +msgid " (higher than rotor any auto)" +msgstr "" + +msgid " (lower than any auto)" +msgstr "" + +# +msgid " extensions." +msgstr "الاضافات" + +msgid " ms" +msgstr "" + +msgid " packages selected." +msgstr "الحزم المختاره" + +# +msgid " updates available." +msgstr "التحديثات المتاحه" + +#. TRANSLATORS: short time representation hour:minute +#, python-format +msgid "%2d:%02d" +msgstr "" + +#. TRANSLATORS: full time representation hour:minute:seconds +#, python-format +msgid "%2d:%02d:%02d" +msgstr "" + +msgid "%A %d %B" +msgstr "" + +#. TRANSLATORS: long date representations dayname daynum monthname in strftime() format! See 'man strftime' +msgid "%A %e %B" +msgstr "" + +#. TRANSLATORS: full date representation dayname daynum monthname year in strftime() format! See 'man strftime' +msgid "%A %e %B %Y" +msgstr "" + +msgid "%H:%M" +msgstr "%H:%M" + +#. TRANSLATORS: short date representation short dayname daynum short monthname in strftime() format! See 'man strftime' +msgid "%a %e/%m" +msgstr "" + +#. TRANSLATORS: long date representation short dayname daynum short monthname hour:minute in strftime() format! See 'man strftime' +msgid "%a %e/%m %-H:%M" +msgstr "" + +# +#. TRANSLATORS: Intermediate scanning result, '%d' channel(s) have been found so far +#, fuzzy, python-format +msgid "%d channel found" +msgid_plural "%d channels found" +msgstr[0] "%d تم العثور على" +msgstr[1] "%d تم العثور على" +msgstr[2] "%d تم العثور على" +msgstr[3] "%d تم العثور على" +msgstr[4] "%d تم العثور على" +msgstr[5] "%d تم العثور على" + +#, python-format +msgid "%d file" +msgid_plural "%d files" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" +msgstr[3] "" +msgstr[4] "" +msgstr[5] "" + +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" +msgstr[3] "" +msgstr[4] "" +msgstr[5] "" + +# +#, fuzzy, python-format +msgid "%d job is running in the background!" +msgid_plural "%d jobs are running in the background!" +msgstr[0] "%d وظائف تعمل فى الخلفيه" +msgstr[1] "%d وظائف تعمل فى الخلفيه" +msgstr[2] "%d وظائف تعمل فى الخلفيه" +msgstr[3] "%d وظائف تعمل فى الخلفيه" +msgstr[4] "%d وظائف تعمل فى الخلفيه" +msgstr[5] "%d وظائف تعمل فى الخلفيه" + +# +#, python-format +msgid "%d min" +msgstr "%d دقيقه" + +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" +msgstr[3] "" +msgstr[4] "" +msgstr[5] "" + +#, python-format +msgid "%d minutes" +msgstr "" + +#, python-format +msgid "%d pixel wide" +msgid_plural "%d pixels wide" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" +msgstr[3] "" +msgstr[4] "" +msgstr[5] "" + +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" +msgstr[3] "" +msgstr[4] "" +msgstr[5] "" + +#, fuzzy, python-format +msgid "%d subdirectory" +msgid_plural "%d subdirectories" +msgstr[0] "دليل البدايه" +msgstr[1] "دليل البدايه" +msgstr[2] "دليل البدايه" +msgstr[3] "دليل البدايه" +msgstr[4] "دليل البدايه" +msgstr[5] "دليل البدايه" + +# +#, fuzzy, python-format +msgid "%d wireless network found!" +msgid_plural "%d wireless networks found!" +msgstr[0] "تم العثور على شبكه لاسلكيه" +msgstr[1] "تم العثور على شبكه لاسلكيه" +msgstr[2] "تم العثور على شبكه لاسلكيه" +msgstr[3] "تم العثور على شبكه لاسلكيه" +msgstr[4] "تم العثور على شبكه لاسلكيه" +msgstr[5] "تم العثور على شبكه لاسلكيه" + +msgid "%d-%b-%Y %-H:%M" +msgstr "" + +msgid "%d-%m" +msgstr "" + +msgid "%d.%B %Y" +msgstr "%d.%B %Y" + +#. TRANSLATORS: VFD hour:minute daynum short monthname in strftime() format! See 'man strftime' +msgid "%k:%M %e/%m" +msgstr "" + +# +#, fuzzy, python-format +msgid "%s %s free disk space" +msgstr "المساحه المتبقيه فى القرص" + +#, python-format +msgid "%s (%s)\n" +msgstr "%s (%s) \n" + +#. TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. +#, python-format +msgid "%s is no longer used. Should it be deleted?" +msgstr "" + +# +#, fuzzy, python-format +msgid "%s updated package available" +msgid_plural "%s updated packages available" +msgstr[0] "التحديثات المتاحه" +msgstr[1] "التحديثات المتاحه" +msgstr[2] "التحديثات المتاحه" +msgstr[3] "التحديثات المتاحه" +msgstr[4] "التحديثات المتاحه" +msgstr[5] "التحديثات المتاحه" + +#, python-format +msgid "%s%d min" +msgstr "" + +#, python-format +msgid "%s/%s: %s" +msgstr "" + +msgid "(ZAP)" +msgstr "(تنقل)" + +msgid "(empty)" +msgstr "(خالى)" + +msgid "(show optional DVD audio menu)" +msgstr "(شاهد قائمه صوت دى فى دى إختياريه)" + +msgid "* Only available if more than one interface is active." +msgstr "*متاحه فقط عند وجود أكثر من واحهه نشطه" + +msgid "/s" +msgstr "" + +msgid "0" +msgstr "0" + +msgid "1" +msgstr "1" + +msgid "1.0" +msgstr "1.0" + +msgid "1.1" +msgstr "1.1" + +msgid "1.2" +msgstr "1.2" + +# +msgid "12V output" +msgstr "مخرج 12 ف" + +# +msgid "13 V" +msgstr "13 ف" + +msgid "16:10" +msgstr "16:10" + +# +msgid "16:10 Letterbox" +msgstr "" + +# +msgid "16:10 PanScan" +msgstr "" + +msgid "16:9" +msgstr "16:9" + +# +msgid "16:9 Letterbox" +msgstr "" + +msgid "16:9 always" +msgstr "16:9 دائما" + +# +msgid "18 V" +msgstr "18 ف" + +msgid "2" +msgstr "2" + +msgid "23.976" +msgstr "" + +msgid "24" +msgstr "" + +msgid "25" +msgstr "" + +msgid "29.97" +msgstr "" + +msgid "3" +msgstr "3" + +msgid "30" +msgstr "" + +msgid "3d mode" +msgstr "" + +msgid "4" +msgstr "4" + +msgid "4:3" +msgstr "4:3" + +# +msgid "4:3 Letterbox" +msgstr "" + +# +msgid "4:3 PanScan" +msgstr "" + +msgid "5" +msgstr "5" + +msgid "6" +msgstr "6" + +msgid "7" +msgstr "7" + +msgid "8" +msgstr "8" + +msgid "9" +msgstr "9" + +#, python-format +msgid ": %s" +msgstr "" + +# +msgid "<Current movielist location>" +msgstr "<موقع قائمه الافلام الحاليه>" + +# +msgid "<Default movie location>" +msgstr "<مكان الافلام الافتراضى>" + +# +msgid "<Last timer location>" +msgstr "<مكان المؤقت الاخير>" + +msgid "<unknown>" +msgstr "<غير معروف>" + +msgid "??" +msgstr "؟؟" + +# +msgid "A" +msgstr "أ" + +#, fuzzy, python-format +msgid "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" +msgstr "" +"تم تعديل ملف التكوين (%s) منذ التثبيت\n" +"هل تريد الاحتفاظ بإصدارك ؟" + +#, python-format +msgid "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" +msgstr "" +"تم تعديل ملف التكوين (%s) منذ التثبيت\n" +"هل تريد الاحتفاظ بإصدارك ؟" + +msgid "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" + +msgid "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" + +msgid "A graphical EPG for all services of an specific bouquet" +msgstr "دليل برامج الكترونى بيانى لكل قنوات باقه معينه" + +#, python-format +msgid "" +"A record has been started:\n" +"%s" +msgstr "" +"التسجيل بدأ:\n" +"%s" + +msgid "" +"A recording is currently running.\n" +"What do you want to do?" +msgstr "" +"هناك تسجيل جارى الان \n" +"ماذا تريد أن تفعل ؟" + +msgid "A recording is currently running. Please stop the recording before trying to configure the positioner." +msgstr "هناك تسجيل جارى حاليا . من فضلك أوقف التسجيل قبل محاولة ضبط الموتور." + +msgid "A recording is currently running. Please stop the recording before trying to scan." +msgstr "" + +msgid "A recording is currently running. Please stop the recording before trying to start the satfinder." +msgstr "هناك تسجيل جارى حاليا . من فضلك أوقف التسجيل قبل محاولة بدأ مكتشف الأقمار." + +#, python-format +msgid "A required tool (%s) was not found." +msgstr "لم يتم العثور على الاداه المطلوبه (%s)" + +# +msgid "A search for available updates is currently in progress." +msgstr "يتم حاليا البحث عن التحديثات المتاحه" + +msgid "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" +msgstr "" +"تم العثور على واجهه ثانيه جاهزة الاعدادات\n" +"\n" +"هل تريد تعطيل واجهه الشبكه الثانيه ؟" + +msgid "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" + +msgid "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" + +# +msgid "A small overview of the available icon states and actions." +msgstr "" + +msgid "" +"A timer failed to record!\n" +"Disable TV and try again?\n" +msgstr "" +"فشل عمليه التسجيل بالمؤقت\n" +"قم بتعطيل التليفزيون وحاول مره ثانيه؟\n" + +# +#, fuzzy +msgid "A/V settings" +msgstr "إعدادات الصوت والصوره" + +msgid "AC3/DTS downmix" +msgstr "" + +# +msgid "Abort" +msgstr "الغاء" + +# +msgid "About" +msgstr "عن" + +# +msgid "About..." +msgstr "عـن..." + +# +msgid "Accesspoint:" +msgstr "نقطة وصول" + +# +msgid "Action on long powerbutton press" +msgstr "العمل عند الضغط المستمر على ذر الاغلاق" + +# +msgid "Action on short powerbutton press" +msgstr "العمل عند الضغط السريع على ذر الاغلاق" + +# +msgid "Activate Picture in Picture" +msgstr "صوره داخل صوره نشط" + +#, fuzzy +msgid "Activate current configuration" +msgstr "تنشيط التكوين الحالى" + +# +msgid "Activate network settings" +msgstr "تفعيل إعدادات الشبكه" + +# +#, fuzzy +msgid "Activate the configured network settings." +msgstr "تفعيل إعدادات الشبكه" + +# +msgid "Adapter settings" +msgstr "إعدادات المحول" + +# +msgid "Add" +msgstr "أضف" + +# +msgid "Add Bookmark" +msgstr "إضافة مرجعيه" + +# +msgid "Add a mark" +msgstr "أضف علامه" + +#, fuzzy +msgid "Add a nameserver entry" +msgstr "إضافه بند اسم خادم" + +# +msgid "Add a new title" +msgstr "إضافة عنوان جديد" + +#, fuzzy +msgid "Add bookmark" +msgstr "إضافة مرجعيه" + +#, fuzzy +msgid "Add directory to playlist" +msgstr "إضافة دليل لقائمه الاغانى" + +#, fuzzy +msgid "Add file to playlist" +msgstr "إضافة ملف لقائمة الاغانى" + +#, fuzzy +msgid "Add files to playlist" +msgstr "إضافة ملفات لقائمة الاغانى" + +msgid "Add more details to the crash log" +msgstr "" + +#, fuzzy +msgid "Add provider" +msgstr "إضافة مزود خدمه" + +#, fuzzy +msgid "Add recording (enter recording duration)" +msgstr " إضافة تسجيل (دخل مدة التسجيل)" + +#, fuzzy +msgid "Add recording (enter recording endtime)" +msgstr " إضافة تسجيل(أدخل زمن انتهاء التسجيل)" + +#, fuzzy +msgid "Add recording (indefinitely)" +msgstr " أضف تسجيل (غير محدد المده)" + +#, fuzzy +msgid "Add recording (stop after current event)" +msgstr " أضف تسجيل (وإيقاف بعد انتهاء البرنامج الحالى)" + +#, fuzzy +msgid "Add service" +msgstr "إضافة قماه" + +# +msgid "Add timer" +msgstr "أضف مؤقت" + +msgid "Add title" +msgstr "إضافة عنوان" + +# +msgid "Add to bouquet" +msgstr "إضافه الى الباقه" + +# +msgid "Add to favourites" +msgstr "إضافه الى المفضله" + +msgid "Add/remove change timer for current event" +msgstr "" + +msgid "Adjust 3D settings" +msgstr "" + +msgid "Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens." +msgstr "أضبط إعدادات الالوان بحيث يمكن تمييز أطياف اللون، لكن تبدو مشبعه قدر الامكان. إذا كانت النتيجه مرضيه أضغط موافقلاغلاق النافذه ، أو استخدم مفاتيح الارقام لاختيار شاشات اختبار أخرى" + +msgid "Advanced" +msgstr "" + +# +#, fuzzy +msgid "Advanced options" +msgstr "إختيارات متقدمه" + +# +msgid "Advanced restore" +msgstr "إستعاده متقدمه" + +# +#, fuzzy +msgid "Advanced software" +msgstr "سوفت وير متقدم" + +# +#, fuzzy +msgid "Advanced software plugin" +msgstr "سوفت ويريلج إنز متقدمه" + +# +#, fuzzy +msgid "Advanced video enhancement setup" +msgstr "إعدادات تحسين فيديو متقدمه" + +# +#, fuzzy +msgid "Advanced video setup" +msgstr "إعدادات فيديو متقدمه" + +# +msgid "After event" +msgstr "بعد الحدث" + +# +msgid "Album" +msgstr "البوم" + +msgid "Alignment of events" +msgstr "" + +msgid "Alignment of service names" +msgstr "" + +# +msgid "All" +msgstr "الكل" + +msgid "All ages" +msgstr "" + +msgid "All satellites 1 (USALS)" +msgstr "" + +msgid "All satellites 2 (USALS)" +msgstr "" + +msgid "All satellites 3 (USALS)" +msgstr "" + +msgid "All satellites 4 (USALS)" +msgstr "" + +msgid "Allocate" +msgstr "" + +msgid "Allocate unused memory index" +msgstr "" + +msgid "Allow quit movieplayer with exit" +msgstr "" + +msgid "Allow subtitle language to equal audio language" +msgstr "" + +msgid "Allow subtitles for hearing impaired" +msgstr "" + +# +msgid "Alpha" +msgstr "الفا" + +#, fuzzy +msgid "Alternative" +msgstr "إضافة بدائل" + +# +#, fuzzy +msgid "Alternative numbering mode" +msgstr "وضع راديو بديل" + +msgid "Alternative services tuner priority" +msgstr "أولوية الموالف للقنوات البديله" + +msgid "Always ask" +msgstr "" + +msgid "Always hide infobar" +msgstr "" + +# +msgid "An empty filename is illegal." +msgstr "غير مسموح بملف بدون اسم" + +# +#, fuzzy +msgid "An error occurred while downloading the packetlist. Please try again." +msgstr "حدث خطا اثناء تحميل قائمة الحزم. من فضلك حاول ثانيه" + +msgid "An unknown error occurred!" +msgstr "حدث خطأ غير معروف !" + +msgid "And will put your receiver in standby over " +msgstr "" + +msgid "Any activity" +msgstr "" + +msgid "Arabic" +msgstr "عـربى" + +msgid "Are you sure to remove this entry?" +msgstr "" + +msgid "" +"Are you sure you want to activate this network configuration?\n" +"\n" +msgstr "" +"هل أنت متاكد أنك تريد تنشيط تكوينات الشبكه؟\n" +"\n" + +#, fuzzy +msgid "" +"Are you sure you want to delete\n" +"the following backup:\n" +msgstr "" +"هل أنت متأكد أنك تريد مسحالنسخه الاحتياطيه الاتيه:\n" +"\n" + +msgid "Are you sure you want to exit this wizard?" +msgstr "هل أنت متأكد أنك تريد الخروج من هذه النافذه ؟" + +msgid "" +"Are you sure you want to restart your network interfaces?\n" +"\n" +msgstr "" +"هل أنت كتأكد أنك تريد إعادة تشغيل واجهة الشبكه ؟\n" +"\n" + +#, fuzzy, python-format +msgid "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"هل أنت متأكد أنك تريد إستعادة بالك أب الاينجما2 ؟\n" +"سيتم عمل إعادة تشغيل الاينجما2 بعد الاستعاده" + +#, fuzzy +msgid "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"هل أنت متأكد أنك تريد إستعادة بالك أب الاينجما2 ؟\n" +"سيتم عمل إعادة تشغيل الاينجما2 بعد الاستعاده" + +msgid "Artist" +msgstr "الفنان" + +msgid "Arts/Culture" +msgstr "" + +msgid "Ask user" +msgstr "أسال المستخدم" + +#, fuzzy +msgid "Aspect ratio" +msgstr "نسبة الجانب" + +msgid "Assigned CAIds:" +msgstr "" + +msgid "Assigned services/provider:" +msgstr "" + +# +#, fuzzy +msgid "At beginning" +msgstr "أبدأ من البدايه" + +msgid "At end" +msgstr "" + +# +msgid "Audio" +msgstr "صوت" + +msgid "Audio PID" +msgstr "" + +msgid "Audio language selection 1" +msgstr "" + +msgid "Audio language selection 2" +msgstr "" + +msgid "Audio language selection 3" +msgstr "" + +msgid "Audio language selection 4" +msgstr "" + +#, fuzzy +msgid "Audio options..." +msgstr "خيارات الصوت" + +# +#, fuzzy, python-format +msgid "Audio track (%s) format" +msgstr "مسارات الصوت" + +#, python-format +msgid "Audio track (%s) language" +msgstr "" + +msgid "Author: " +msgstr "المؤلف:" + +# +msgid "Authoring mode" +msgstr "" + +# +#. TRANSLATORS: (aspect ratio policy: always try to display as fullscreen, when there is no content (black bars) on left/right, even if this breaks the aspect. +msgid "Auto" +msgstr "آلـى" + +# +msgid "Auto chapter split every ? minutes (0=never)" +msgstr "" + +# +msgid "Auto flesh" +msgstr "" + +msgid "Auto focus" +msgstr "" + +msgid "Auto focus commencing ..." +msgstr "" + +msgid "Auto language selection" +msgstr "" + +msgid "Auto scart switching" +msgstr "التحول الآلى الى السكارت" + +msgid "Automatic" +msgstr "آلى" + +# +#, fuzzy +msgid "Automatic scan" +msgstr "بحث آلـى" + +msgid "Automatically start timeshift after" +msgstr "" + +msgid "Automatically turn on external subtitles" +msgstr "" + +msgid "Available format variables" +msgstr "متغيرات النسق المتاحه" + +# +msgid "B" +msgstr "ب" + +# +msgid "BER" +msgstr "" + +# +msgid "BER:" +msgstr "" + +msgid "Back" +msgstr "خلف" + +msgid "Background" +msgstr "خلفيه" + +#, fuzzy +msgid "Background color" +msgstr "لون الخلفيه" + +msgid "Background delete option" +msgstr "" + +msgid "Background delete speed" +msgstr "" + +#, fuzzy +msgid "Backup completed." +msgstr "فشل عمل نسخه إحتياطيه " + +msgid "Backup failed." +msgstr "فشل عمل نسخه إحتياطيه " + +msgid "Backup is running..." +msgstr "جارى عمل نسخه إحتياطيه ........" + +msgid "Backup system settings" +msgstr "عمل نسخه إحتياطيه لأعدادات النظام" + +msgid "Band" +msgstr "نطاق" + +msgid "Bandwidth" +msgstr "عرض النطاق" + +msgid "Basque" +msgstr "" + +# +msgid "Begin time" +msgstr "وقت البدأ" + +msgid "Behavior of 'pause and ok' when paused" +msgstr "" + +msgid "Behavior of 0 key in PiP-mode" +msgstr "سلوك الذر 0 فى وضعية صوره داخل صوره" + +# +msgid "Behavior when a movie is started" +msgstr "التصرف عندما يبدأ الفيلم" + +# +msgid "Behavior when a movie is stopped" +msgstr "التصرف عند إيقاف الفيلم" + +# +msgid "Behavior when a movie reaches the end" +msgstr "التصرف عندما يصل الفيلم للنهايه" + +msgid "Big PiP" +msgstr "" + +# +msgid "Bitrate:" +msgstr "" + +msgid "Black screen" +msgstr "" + +msgid "Black screen till locked" +msgstr "" + +# +msgid "Block noise reduction" +msgstr "منع الحد من الضوضاء" + +# +msgid "Blue boost" +msgstr "الدعم الازرق" + +msgid "Bookmarks" +msgstr "الاشارات المرجعيه" + +# +msgid "Brightness" +msgstr "الإضاءه" + +msgid "Bulgarian" +msgstr "" + +# +msgid "Burn DVD" +msgstr "حرق دى فى دى" + +# +#, fuzzy, python-format +msgid "Burn audio track (%s)" +msgstr "مسارات الصوت" + +# +msgid "Burn existing image to DVD" +msgstr "حرق الصوره الحاليه الى دى فى دى" + +# +msgid "Burn to DVD" +msgstr "حرق الى دى فى دى" + +# +msgid "Bus: " +msgstr "الناقل" + +msgid "By default, SNR will be shown in dB (when supported by the tuner). This setting forces SNR to be shown as a percentage instead." +msgstr "" + +msgid "C" +msgstr "سى" + +msgid "C-Band" +msgstr "سي باند" + +msgid "CH" +msgstr "" + +# +msgid "CI assignment" +msgstr "" + +# +msgid "CVBS" +msgstr "" + +msgid "Cable" +msgstr "كابل" + +msgid "Cable Scan" +msgstr "" + +msgid "Cache thumbnails" +msgstr "" + +msgid "Calculate" +msgstr "" + +msgid "Calculate all positions" +msgstr "" + +msgid "Calculation complete" +msgstr "" + +msgid "Calibrate" +msgstr "" + +msgid "Can be used for different fps between external subtitles and video." +msgstr "" + +# +msgid "Cancel" +msgstr "إلغاء" + +msgid "Cannot determine" +msgstr "" + +msgid "Cannot find any signal ..., aborting !" +msgstr "" + +msgid "Cannot move files on a different disk or system to the trash can" +msgstr "" + +msgid "Cannot move to trash can" +msgstr "" + +# +msgid "Capacity: " +msgstr "السعه:" + +msgid "Card" +msgstr "بطاقه" + +msgid "Cascade PiP" +msgstr "" + +msgid "Center DVB subtitles" +msgstr "" + +msgid "Center time-labels and remove date" +msgstr "" + +# +msgid "Change bouquets in quickzap" +msgstr "" + +# +msgid "Change pin code" +msgstr "تغيير الرقم السرى" + +#, fuzzy +msgid "Change recording (duration)" +msgstr "تغيير التسجيل (المده الزمنيه)" + +#, fuzzy +msgid "Change recording (endtime)" +msgstr "تغيير التسجيل (وقت الانتهاء)" + +msgid "Change repeat and delay settings?" +msgstr "" + +msgid "Change service PIN" +msgstr "" + +msgid "Change service PINs" +msgstr "" + +msgid "Change setup PIN" +msgstr "" + +# +msgid "Change step size" +msgstr "تغيير مقاس الخطوه" + +msgid "Change timer" +msgstr "" + +msgid "Changelog" +msgstr "" + +# +msgid "Channel" +msgstr "قناه" + +#, fuzzy +msgid "Channel list type" +msgstr "قائمة لائحة القنوات" + +# +msgid "Channel not in services list" +msgstr "قناه غير موجوده فى قائمة الخدمات" + +# +#, fuzzy +msgid "Channel selection" +msgstr "إختيار القناه" + +# +msgid "Channel:" +msgstr "قناه:" + +msgid "Channellist menu" +msgstr "قائمة لائحة القنوات" + +msgid "Chap." +msgstr "فصل" + +msgid "Chapter" +msgstr "فصل" + +msgid "Chapter:" +msgstr "فصل:" + +msgid "Check" +msgstr "فحص" + +msgid "Check the internet connection" +msgstr "" + +msgid "Check the internet connection again" +msgstr "" + +#, fuzzy +msgid "Checking filesystem..." +msgstr "فحص ملفات النظام...." + +msgid "Checking the internet connection" +msgstr "" + +#, python-format +msgid "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" +msgstr "" + +msgid "Children/Youth" +msgstr "" + +msgid "Choose which tuner to configure." +msgstr "" + +msgid "Circular left" +msgstr "يسار دائرى" + +msgid "Circular right" +msgstr "يمين دائرى" + +msgid "Cleanup" +msgstr "تنظيف" + +msgid "Clear" +msgstr "" + +msgid "Clear before scan" +msgstr "مسح قبل البحث" + +msgid "Clear fixed" +msgstr "" + +# +msgid "Clear log" +msgstr "مسح السجل" + +#, fuzzy +msgid "Clear playlist" +msgstr "مسح قائمة العرض" + +msgid "Close" +msgstr "أغلاق" + +msgid "Close PiP on exit" +msgstr "" + +msgid "Close title selection" +msgstr "إغلاق إختيار العنوان" + +msgid "Code rate HP" +msgstr "" + +msgid "Code rate LP" +msgstr "" + +msgid "Coderate HP" +msgstr "" + +msgid "Coderate LP" +msgstr "" + +msgid "Collection name" +msgstr "اسم المجموعه" + +msgid "Collection settings" +msgstr "إعدادات المجموعه" + +#, fuzzy +msgid "Color format" +msgstr "نسق الالـوان" + +msgid "Command execution..." +msgstr "تنفيذ الأمر..." + +msgid "Command order" +msgstr "ترتيب الأوامر" + +# +msgid "Common Interface" +msgstr "وحده النفاذ المشروط" + +#, fuzzy +msgid "Common Interface assignment" +msgstr "تحديد وحدة النفاذ المشروط" + +msgid "Communication" +msgstr "اتصال" + +#, fuzzy +msgid "Compact flash" +msgstr "كومباكت فلاش" + +msgid "Complete" +msgstr "مكتمل" + +msgid "Complex (allows mixing audio tracks and aspects)" +msgstr "مركب (يسمح بمزج مسارات صوت ومظاهر)" + +msgid "Composition of the recording filenames" +msgstr "" + +#, fuzzy +msgid "Configuration mode" +msgstr "نسق التكوين" + +#, fuzzy, python-format +msgid "Configuration mode: %s" +msgstr "نسق التكوين" + +#, fuzzy +msgid "Configuration..." +msgstr "تكوين الشبكه" + +msgid "Configure an additional delay to improve external subtitle synchronisation." +msgstr "" + +msgid "Configure an additional delay to improve subtitle synchronisation." +msgstr "" + +msgid "Configure for how long the infobar will remain visible after activation." +msgstr "" + +msgid "Configure for how many minutes finished events should remain visible in the EPG. Useful when you need information about an event which has just finished, or has been delayed." +msgstr "" + +msgid "Configure how recording filenames are constructed." +msgstr "" + +msgid "Configure how the fan should operate" +msgstr "" + +msgid "Configure if and how crypto icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how long the latest service in the PiP will be remembered." +msgstr "" + +msgid "Configure if and how service type icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how wide columns will be shown in the channel selection list." +msgstr "" + +msgid "Configure if service picons will be shown in the channel selection list." +msgstr "" + +msgid "Configure interface" +msgstr "تكوين الواجهه" + +msgid "Configure nameservers" +msgstr "تكوين اسم الخادم" + +msgid "Configure on which devices the background delete option should be used." +msgstr "" + +# +#, fuzzy +msgid "Configure remote control type" +msgstr "نوع التحكم الابوى" + +msgid "Configure the DiSEqC mode for this LNB." +msgstr "" + +#, fuzzy +msgid "Configure the IP address." +msgstr "تكوين الواجهه" + +msgid "Configure the aspect ratio of the screen." +msgstr "" + +msgid "Configure the behavior of the 'pause and ok' key when movie playback is already paused." +msgstr "" + +# +#, fuzzy +msgid "Configure the behavior when movie playback is manually stopped." +msgstr "التصرف عند إيقاف الفيلم" + +# +#, fuzzy +msgid "Configure the behavior when movie playback is started." +msgstr "التصرف عندما يبدأ الفيلم" + +msgid "Configure the behavior when reaching the end of a movie, during movie playback." +msgstr "" + +msgid "Configure the border width of the subtitles. The dark border makes the subtitles easier to read on a light background." +msgstr "" + +msgid "Configure the brightness level of the front panel display during standby." +msgstr "" + +msgid "Configure the brightness level of the front panel display." +msgstr "" + +msgid "Configure the color of the external subtitles, alternative (normal in white, italic in yellow, bold in cyan, underscore in green), white or yellow." +msgstr "" + +msgid "Configure the color of the teletext subtitles." +msgstr "" + +msgid "Configure the contrast level of the front panel display." +msgstr "" + +msgid "Configure the cursor behaviour in the channel selection list. When opening the channel selection list you can keep on the current service or already select up/down and you are able to revert the B+/B- buttons." +msgstr "" + +msgid "Configure the duration in hours the receiver should go to standby when the receiver is not controlled." +msgstr "" + +msgid "Configure the duration in minutes for the screensaver." +msgstr "" + +msgid "Configure the duration in minutes for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +msgstr "" + +msgid "Configure the duration when the receiver should go to shut down in case the receiver is in standby mode." +msgstr "" + +msgid "Configure the first audio language (highest priority)." +msgstr "" + +msgid "Configure the first subtitle language (highest priority)." +msgstr "" + +msgid "Configure the font size of the subtitles." +msgstr "" + +msgid "Configure the fourth audio language." +msgstr "" + +#, fuzzy +msgid "Configure the fourth subtitle language." +msgstr "الانتقال الى لغة العناوين الفرعيه التاليه" + +msgid "Configure the function of a long press on the power button." +msgstr "" + +msgid "Configure the function of a short press on the power button." +msgstr "" + +msgid "Configure the function of the '0' button do when PIP is active." +msgstr "" + +#, fuzzy +msgid "Configure the gateway." +msgstr "تكوين الواجهه" + +msgid "Configure the general audio delay of Dolby Digital sound tracks." +msgstr "" + +msgid "Configure the general audio delay of stereo sound tracks." +msgstr "" + +msgid "Configure the hard disk drive to go to standby after the specified idle time." +msgstr "" + +msgid "Configure the horizontal alignment of the subtitles." +msgstr "" + +msgid "Configure the initial fast forward speed. When you press the fast forward button, winding will start at this speed." +msgstr "" + +msgid "Configure the initial rewind speed. When you press the rewind button, winding will start at this speed." +msgstr "" + +msgid "Configure the latitude of your location." +msgstr "" + +msgid "Configure the longitude of your location." +msgstr "" + +msgid "Configure the minimum amount of disk space to be available for recordings. When the amount of space drops below this value, deleted items will be removed from the trash can." +msgstr "" + +#, fuzzy +msgid "Configure the nameserver (DNS)." +msgstr "تكوين اسم الخادم" + +#, fuzzy +msgid "Configure the netmask." +msgstr "تكوين الواجهه" + +msgid "Configure the number of days after which items are automaticaly removed from the trash can." +msgstr "" + +msgid "Configure the number of days old timers are kept before they are automatically removed from the timer list." +msgstr "" + +msgid "Configure the offline decoding delay in milliseconds. The configured delay is observed at each control word parity change." +msgstr "" + +msgid "Configure the possible fast forward speeds." +msgstr "" + +msgid "Configure the possible rewind speeds." +msgstr "" + +msgid "Configure the primary EPG language." +msgstr "" + +msgid "Configure the refresh rate of the screen." +msgstr "" + +msgid "Configure the screen resolution in PC output mode." +msgstr "" + +msgid "Configure the second audio language." +msgstr "" + +#, fuzzy +msgid "Configure the second subtitle language." +msgstr "الانتقال الى لغة العناوين الفرعيه التاليه" + +msgid "Configure the secondary EPG language." +msgstr "" + +msgid "Configure the sharpness of the video scaling." +msgstr "" + +msgid "Configure the skip time interval for the '1'/'3' buttons." +msgstr "" + +msgid "Configure the skip time interval for the '4'/'6' buttons." +msgstr "" + +msgid "Configure the skip time interval for the '7'/'9' buttons." +msgstr "" + +#, fuzzy +msgid "Configure the slow motion speeds." +msgstr "سرعات العرض البطئ" + +msgid "Configure the source of the frontend data as shown on the infobars. 'Settings' is as stored on the settings. 'Tuner' is as reported by the tuner." +msgstr "" + +msgid "Configure the speed of the background deletion process. Lower speed will consume less hard disk drive performance." +msgstr "" + +msgid "Configure the speed of the fan" +msgstr "" + +msgid "Configure the subtitle delay when timing information is not available." +msgstr "" + +msgid "Configure the third audio language." +msgstr "" + +#, fuzzy +msgid "Configure the third subtitle language." +msgstr "الانتقال الى لغة العناوين الفرعيه التاليه" + +msgid "Configure the transparency of the OSD." +msgstr "" + +msgid "Configure the transparency of the black background of graphical DVB subtitles." +msgstr "" + +#, fuzzy +msgid "Configure the tuner mode." +msgstr "نسق التكوين" + +msgid "Configure the type of status indication icons shown in the movielist." +msgstr "" + +msgid "Configure the vertical position of the subtitles, measured from the bottom of the screen." +msgstr "" + +msgid "Configure the video output mode (or resolution)." +msgstr "" + +msgid "Configure the way in which the receiver changes channels." +msgstr "" + +msgid "Configure where completed timers show up in the timer list." +msgstr "" + +msgid "Configure whether (and for how long) a second infobar will be shown when OK is pressed twice. The second infobar contains additional information about the current channel." +msgstr "" + +msgid "Configure whether multi channel sound tracks should be downmixed to stereo." +msgstr "" + +msgid "Configure whether or not an icon should be shown when your motorized dish is moving." +msgstr "" + +msgid "Configure which access level to use for the configuration menu. Expert level gives access to all items." +msgstr "" + +msgid "Configure which color format should be used on the SCART output." +msgstr "" + +msgid "Configure which tuner for recordings will be preferred, when more than one tuner is available." +msgstr "" + +msgid "Configure which tuner type will be preferred, when the same service is available on different types of tuners." +msgstr "" + +msgid "Configure which tuner will be preferred, when more than one tuner is available. If set to 'auto' the system will give priority to the tuner having the lowest number of channels/satellites." +msgstr "" + +msgid "Configure your internal LAN" +msgstr "تكوين شبكتك الداخليه" + +msgid "Configure your network again" +msgstr "تكوين الشبكه مره ثانيه" + +msgid "Configure your network settings, and press OK to start the scan" +msgstr "" + +msgid "Configure your wireless LAN again" +msgstr "تكوين شبكتك اللاسلكيه" + +msgid "Configures which video output connector will be used." +msgstr "" + +msgid "Configuring" +msgstr "تكوين" + +msgid "Conflicting timer" +msgstr "مؤقت متعارض" + +msgid "Connect" +msgstr "يتصل" + +#, fuzzy +msgid "Connect to a wireless network" +msgstr "متصل بشبكه لاسلكيه" + +msgid "Connected satellites" +msgstr "" + +msgid "Connected to" +msgstr "متصل بـ" + +msgid "Connected!" +msgstr "تم الاتصال !" + +msgid "Constellation" +msgstr "كوكبه" + +msgid "Content does not fit on DVD!" +msgstr "المحتوى لا يناسب دى فى دى !" + +msgid "Continue" +msgstr "" + +msgid "Continue in background" +msgstr "استمر فى الخلفيه" + +#, fuzzy +msgid "Continue playback" +msgstr "استمرار العرض" + +msgid "Continue playing" +msgstr "استمرار العرض" + +msgid "Continues play (loop)" +msgstr "" + +msgid "Contrast" +msgstr "تباين" + +msgid "Convert ext3 filesystem to ext4" +msgstr "" + +msgid "Convert ext3 to ext4" +msgstr "" + +msgid "Converting ext3 to ext4..." +msgstr "" + +msgid "Copy" +msgstr "" + +msgid "Could not connect to receiver .NFI image feed server:" +msgstr "" + +msgid "Could not find installed channel list." +msgstr "" + +# +#, fuzzy +msgid "Could not load medium! No disc inserted?" +msgstr "تعذر تحميل الوسيط ! هل لا يوجد قرص" + +msgid "Could not open Picture in Picture" +msgstr "لا يمكن فتح صوره داخل صوره" + +# +#, fuzzy, python-format +msgid "Could not record due to conflicting timer %s" +msgstr "تعذر التسجيل بسبب مؤقت متعارض%s" + +# +#, fuzzy, python-format +msgid "Could not record due to invalid service %s" +msgstr "تعذر التسجيل بسبب مؤقت متعارض%s" + +# +msgid "Create DVD-ISO" +msgstr "تكوين دى فى دى إيزو" + +msgid "Create more detailed crash log" +msgstr "" + +#, python-format +msgid "Creating directory %s failed." +msgstr "فشل إنشاء دليل %s" + +#, fuzzy +msgid "Creating filesystem" +msgstr "فحص ملفات النظام...." + +msgid "Creating partition" +msgstr "" + +# +msgid "Croatian" +msgstr "كرواتى" + +msgid "Current CEC address" +msgstr "" + +msgid "Current device: " +msgstr "" + +msgid "Current event EPG" +msgstr "" + +#, python-format +msgid "Current mode: %s \n" +msgstr "" + +msgid "Current settings:" +msgstr "الاعدادات الحاليه:" + +#, fuzzy +msgid "Current transponder" +msgstr "التردد الحالى" + +msgid "Current value: " +msgstr "القيمه الحاليه:" + +msgid "Current version:" +msgstr "الاصدار الحالى:" + +msgid "Currently installed image" +msgstr "" + +msgid "Currently the commit log cannot be retrieved - please try later again" +msgstr "" + +msgid "Custom skip time for '1'/'3' buttons" +msgstr "" + +msgid "Custom skip time for '4'/'6' buttons" +msgstr "" + +msgid "Custom skip time for '7'/'9' buttons" +msgstr "" + +msgid "Customize" +msgstr "تخصيص" + +msgid "Customize channel list cursor behavior" +msgstr "" + +msgid "Cut" +msgstr "قطع" + +msgid "Cutlist editor..." +msgstr "محرر قائمة القطع..." + +msgid "Czech" +msgstr "التشيك" + +msgid "D" +msgstr "د" + +msgid "DHCP" +msgstr "DHCP" + +#, fuzzy +msgid "DMM advanced" +msgstr "متقدم" + +msgid "DMM normal" +msgstr "" + +msgid "DUAL LAYER DVD" +msgstr "دى فى بى ثنائى الطبقه" + +msgid "DVB subtitle black transparency" +msgstr "" + +msgid "DVB-C" +msgstr "" + +msgid "DVB-C ANNEX C" +msgstr "" + +msgid "DVB-S" +msgstr "DVB-S" + +msgid "DVB-S2" +msgstr "DVB-S2" + +msgid "DVB-T" +msgstr "" + +msgid "DVB-T2" +msgstr "" + +msgid "DVD data format" +msgstr "" + +#, fuzzy +msgid "DVD file browser" +msgstr "متصفح ملفات دى فى دى" + +# +msgid "DVD media toolbox" +msgstr "صندوق أدوات وسيط دى فى دى" + +#, fuzzy +msgid "DVD player" +msgstr "مشغل دى فى دى" + +#, fuzzy +msgid "DVD titlelist" +msgstr "قائمة عناوين دى فى دى" + +msgid "Danish" +msgstr "دنماركى" + +msgid "Date" +msgstr "تاريخ" + +msgid "Date/time input" +msgstr "" + +#, fuzzy +msgid "Deep standby" +msgstr "وضع الاستعداد العميق" + +msgid "Default" +msgstr "الافتراضى" + +msgid "Default movie location" +msgstr "المكان الافتراضى للفيلم" + +#, fuzzy +msgid "Default settings" +msgstr "الاعدادات الافتراضيه" + +msgid "Delay before key repeat starts:" +msgstr "" + +msgid "Delay for external subtitles" +msgstr "" + +# +msgid "Delete" +msgstr "أمسح" + +msgid "Delete entry" +msgstr "مسح البند" + +# +msgid "Delete failed!" +msgstr "فشل المسح" + +#, fuzzy +msgid "Delete file" +msgstr "حذف الملف" + +#, fuzzy +msgid "Delete playlist entry" +msgstr "مسح مدخل قائمة العرض" + +# +#, fuzzy +msgid "Delete saved playlist" +msgstr "مسح قائمة العرض المحفوظه" + +msgid "Delete timer" +msgstr "" + +# +#, fuzzy +msgid "Delete..." +msgstr "مسح ..." + +msgid "Deleted" +msgstr "" + +msgid "Deleted items" +msgstr "" + +msgid "Depth" +msgstr "" + +msgid "Descramble http streams" +msgstr "" + +# +msgid "Description" +msgstr "الوصـف" + +msgid "Deselect" +msgstr "إلغاء الاختيار" + +msgid "Details for plugin: " +msgstr "" + +msgid "Detected HDD:" +msgstr "يوجد قرص صلب:" + +# +msgid "Detected NIMs:" +msgstr "موجود موالف:" + +msgid "Devicename:" +msgstr "" + +msgid "Devide" +msgstr "" + +msgid "DiSEqC" +msgstr "دايزك" + +msgid "DiSEqC 1.0 command" +msgstr "" + +msgid "DiSEqC 1.1 command" +msgstr "" + +msgid "DiSEqC 1.1 repeats" +msgstr "" + +# +msgid "DiSEqC A/B" +msgstr "دايزك أ/ب" + +# +msgid "DiSEqC A/B/C/D" +msgstr "دايزك أ/ب/ج/د" + +# +msgid "DiSEqC mode" +msgstr "وضعيـه الدايزك" + +#, fuzzy, python-format +msgid "DiSEqC port %s: %s" +msgstr "تكرار الدايزك" + +#, fuzzy +msgid "DiSEqC-tester settings" +msgstr "إختبار إعدادات الدايزك" + +msgid "Dialing:" +msgstr "جاري الاتصال:" + +msgid "Digital contour removal" +msgstr "حذف الكفاف الرقمى" + +msgid "Direct playback of linked titles without menu" +msgstr "عرض مباشر لعناوين مربوطه بدون قائمه" + +msgid "Directory" +msgstr "" + +#, fuzzy, python-format +msgid "Directory %s does not exist." +msgstr "الدليل %s غير موجود" + +#, python-format +msgid "Directory %s nonexistent." +msgstr "" + +# +msgid "Directory browser" +msgstr "متصفح الدليل" + +#, python-format +msgid "Directory contains %d file(s) and %d sub-directories.\n" +msgstr "" + +#, fuzzy, python-format +msgid "Directory contains %s and %s." +msgstr "الدليل %s غير موجود" + +msgid "Disable" +msgstr "تعطيل" + +# +msgid "Disable Picture in Picture" +msgstr "تعطيل صوره داخل صوره" + +msgid "Disable background scanning" +msgstr "" + +msgid "Disable timer" +msgstr "" + +# +msgid "Disabled" +msgstr "تم التعطيل" + +# +msgid "Disconnect" +msgstr "قطع الاتصال" + +msgid "Disk space to reserve for recordings (in GB)" +msgstr "" + +msgid "Display 16:9 content as" +msgstr "عرض محتويات 16:9 كـ" + +msgid "Display 4:3 content as" +msgstr "عرض محتويات 4:3 كـ" + +# +msgid "Display >16:9 content as" +msgstr "" + +#, fuzzy +msgid "Display and userinterface" +msgstr "عرض و واجهه مستخدم" + +msgid "Display message before playing next movie" +msgstr "" + +#, fuzzy +msgid "Display setup" +msgstr "إعدادات العرض" + +#, fuzzy +msgid "Do not change" +msgstr "لا تغيير" + +#, fuzzy +msgid "Do not record" +msgstr " لا تسجل" + +#, fuzzy +msgid "Do nothing" +msgstr " لا تفعل شيئ" + +msgid "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" +msgstr "" +"هل تريد فعلا فحص ملفات النظام؟\n" +"قد يستغرق ذلك بعض الوقت !" + +msgid "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" +msgstr "" + +#, python-format +msgid "Do you really want to delete %s?" +msgstr "هل تريد فعلا مسح %s ؟" + +#, python-format +msgid "" +"Do you really want to download\n" +"the plugin \"%s\"?" +msgstr "" +"هل تريد فعلا تحميل \n" +"البلج إن \"%s\" ؟" + +msgid "Do you really want to exit?" +msgstr "هل تريد فعلا الخروج ؟" + +msgid "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" +msgstr "" + +#, fuzzy, python-format +msgid "" +"Do you really want to remove\n" +"the plugin \"%s\"?" +msgstr "" +"هل تريد فعلا تحميل \n" +"البلج إن \"%s\" ؟" + +#, python-format +msgid "Do you really want to remove directory %s from the disk?" +msgstr "هل تريد فعلا حذف الدليل %s من القرص؟" + +#, python-format +msgid "Do you really want to remove your bookmark of %s?" +msgstr "هل تريد فعلا حذف مرجعية %s ؟" + +msgid "Do you want this?" +msgstr "" + +# +msgid "Do you want to burn this collection to DVD medium?" +msgstr "هل تريد حرق هذه المجموعه فى وسيط دى فى دى ؟" + +# +msgid "Do you want to do a service scan?" +msgstr "هل تريد عمل بحث" + +msgid "Do you want to do another manual service scan?" +msgstr "هل تريد عمل بحث يدوى جديد ؟" + +#, python-format +msgid "Do you want to download the image to %s ?" +msgstr "" + +#, fuzzy +msgid "Do you want to install a channel list?" +msgstr "هل تريد فعلا تثبيت الرزمه:\n" + +msgid "Do you want to install the package:\n" +msgstr "هل تريد فعلا تثبيت الرزمه:\n" + +# +msgid "Do you want to play DVD in drive?" +msgstr "هل تريد تشغيل الدى فى دى الموجود فى السواقه" + +# +msgid "Do you want to preview this DVD before burning?" +msgstr "هل تريد معاينة هذا الدى فى دى قبل الحرق؟" + +msgid "Do you want to reboot your receiver?" +msgstr "" + +msgid "Do you want to remove the package:\n" +msgstr "هل تريد فعلا حذف الرزمه:\n" + +msgid "Do you want to restore your settings?" +msgstr "هل تريد إستعادة الاعدادات ؟" + +# +msgid "Do you want to resume this playback?" +msgstr "هل تريد إستئناف هذا العرض؟" + +#, fuzzy, python-format +msgid "Do you want to update your receiver to %s?" +msgstr "هل تريد إستعادة الاعدادات ؟" + +msgid "Do you want to update your receiver?" +msgstr "" + +msgid "Do you want to upgrade the package:\n" +msgstr "هل تريد ترقية الحزمه \n" + +msgid "Don't stop current event but disable coming events" +msgstr "لا توقف الحدث الحالى لكن قم بتعطيل الاحداث القادمه" + +#, fuzzy, python-format +msgid "Done - Installed, upgraded or removed %d package (%s)" +msgid_plural "Done - Installed, upgraded or removed %d packages (%s)" +msgstr[0] "تم - تثبيت ، تحديث أو حذف %d الرزم والاخطاء%d " +msgstr[1] "تم - تثبيت ، تحديث أو حذف %d الرزم والاخطاء%d " +msgstr[2] "تم - تثبيت ، تحديث أو حذف %d الرزم والاخطاء%d " +msgstr[3] "تم - تثبيت ، تحديث أو حذف %d الرزم والاخطاء%d " +msgstr[4] "تم - تثبيت ، تحديث أو حذف %d الرزم والاخطاء%d " +msgstr[5] "تم - تثبيت ، تحديث أو حذف %d الرزم والاخطاء%d " + +msgid "Download" +msgstr "تحميل" + +#, python-format +msgid "Download %s from server" +msgstr "" + +msgid "Download .NFI-files for USB-flasher" +msgstr "" + +#, fuzzy +msgid "Download plugins" +msgstr "تحميل بلج إنز" + +msgid "Downloadable new plugins" +msgstr "بلج أنز جديده متاحه للتحميل" + +msgid "Downloadable plugins" +msgstr "بلج إنز متاحه للتحميل" + +msgid "Downloading" +msgstr "جارى التحميل" + +msgid "Downloading plugin information. Please wait..." +msgstr "جارى تحميل معلومات عن البلج إن. رجاء الانتظار.." + +# +msgid "Dutch" +msgstr "هولندى" + +msgid "Dynamic contrast" +msgstr "تباين ديناميكى" + +msgid "E" +msgstr "" + +msgid "EPG" +msgstr "" + +msgid "EPG language selection 1" +msgstr "" + +msgid "EPG language selection 2" +msgstr "" + +# +#, fuzzy +msgid "EPG selection" +msgstr "إختيار EPG" + +msgid "EPG settings" +msgstr "" + +# +#, python-format +msgid "ERROR - failed to scan (%s)!" +msgstr "خطأ - فشل البحث (%s)!" + +# +msgid "East" +msgstr "شرق" + +msgid "East limit set" +msgstr "" + +msgid "Edit" +msgstr "تحرير" + +# +msgid "Edit DNS" +msgstr "" + +msgid "Edit bouquets list" +msgstr "تحرير قائمة الباقات" + +msgid "Edit chapters of current title" +msgstr "تحرير الفصول والعنوان الحالى" + +msgid "Edit services list" +msgstr "تحرير قائمة القنوات" + +# +msgid "Edit settings" +msgstr "تحرير الاعدادات" + +#, fuzzy +msgid "Edit the nameserver configuration of your receiver.\n" +msgstr "الخروج من تكوين أسم الخادم" + +msgid "Edit the network configuration of your receiver.\n" +msgstr "" + +msgid "Edit timer" +msgstr "" + +msgid "Edit title" +msgstr "تحرير العنوان" + +# +msgid "Edit upgrade source url." +msgstr "تحرير عنوان مصدر الترقيه" + +msgid "Education/Science/..." +msgstr "" + +msgid "Electronic Program Guide" +msgstr "دليل البرنامج الالكترونى" + +# +msgid "Enable" +msgstr "تفعيل" + +msgid "Enable 'neutrino' style channel select controlling" +msgstr "" + +msgid "Enable 'neutrino' style zap controlling" +msgstr "" + +msgid "Enable 5V for active antenna" +msgstr "تفعيل 5ف للهوائى النشط" + +msgid "Enable EIT EPG" +msgstr "" + +msgid "Enable MHW EPG" +msgstr "" + +msgid "Enable Netmed EPG" +msgstr "" + +msgid "Enable OK for channel selection" +msgstr "" + +msgid "Enable ViaSat EPG" +msgstr "" + +msgid "Enable Virgin EPG" +msgstr "" + +msgid "Enable Wake On LAN" +msgstr "" + +msgid "Enable auto fast scan" +msgstr "" + +# +#, fuzzy +msgid "Enable bouquet selection in multi-EPG" +msgstr "تفعيل تحرير الباقه" + +msgid "Enable freesat EPG" +msgstr "" + +# +msgid "Enable multiple bouquets" +msgstr "تفعيل باقات متعدده" + +# +msgid "Enable parental control" +msgstr "تفعيل التحكم الابوى" + +msgid "Enable teletext caching" +msgstr "" + +msgid "Enable zapping with CH+/-, B+/-, P+/-" +msgstr "" + +# +msgid "Enabled" +msgstr "تم التفعيل" + +# +msgid "Encrypted: " +msgstr "مشفر" + +msgid "Encryption" +msgstr "التشفير" + +#, fuzzy +msgid "Encryption key" +msgstr "مفتاح التشقير" + +#, fuzzy +msgid "Encryption key type" +msgstr "نوع مفتاح التشفير" + +msgid "Encryption:" +msgstr "التشفير:" + +# +msgid "End time" +msgstr "وقت النهايه" + +msgid "End time to ignore inactivity sleeptimer" +msgstr "" + +msgid "End time to ignore shutdown in standby" +msgstr "" + +# +msgid "English" +msgstr "إنجليزى" + +msgid "Enigma2 skin selector" +msgstr "" + +msgid "Enter main menu..." +msgstr "دخول القائمه الرئيسيه" + +msgid "Enter pin code" +msgstr "أدخل الرقم السرى:" + +msgid "Enter the service pin" +msgstr "أدخل الرقم السرى للخدمه" + +msgid "Equal to" +msgstr "" + +msgid "Error" +msgstr "خطأ" + +msgid "Error code" +msgstr "" + +msgid "Error executing plugin" +msgstr "خطأ فى تنفيذ البلج إن" + +#, python-format +msgid "" +"Error: %s\n" +"Retry?" +msgstr "" +"خطأ: %s\n" +"إعادة المحاوله ؟" + +msgid "Estonian" +msgstr "أستونى" + +msgid "Ethernet network interface" +msgstr "" + +msgid "Event font size (relative to skin size)" +msgstr "" + +# +#, fuzzy +msgid "Event view" +msgstr "مشاهده الحدث" + +# +#, fuzzy +msgid "Event view menu" +msgstr "مشاهده الحدث" + +msgid "Everywhere" +msgstr "" + +# +msgid "Exceeds dual layer medium!" +msgstr "تتعدى وسيط طبقه مزدوجه !" + +msgid "Execution finished!!" +msgstr "إنهاء التنفيذ !!" + +#, fuzzy +msgid "Execution progress:" +msgstr "درجة تطور التنفيذ:" + +msgid "Exif" +msgstr "كسيف" + +msgid "Exit" +msgstr "خروج" + +msgid "Exit EPG" +msgstr "" + +msgid "Exit editor" +msgstr "خروج من المحرر" + +msgid "Exit input device selection." +msgstr "" + +msgid "Exit media player?" +msgstr "" + +#, fuzzy +msgid "Exit mediaplayer" +msgstr "الخروج من مشغل الوسائط" + +#, fuzzy +msgid "Exit movie list" +msgstr "الخروج من قائمة الافلام" + +#, fuzzy +msgid "Exit movie player?" +msgstr "الخروج من مشغل الوسائط" + +#, fuzzy +msgid "Exit nameserver configuration" +msgstr "الخروج من تكوين أسم الخادم" + +#, fuzzy +msgid "Exit network interface list" +msgstr "الخروج من قائمة واجهة الشبكه" + +msgid "Exit network wizard" +msgstr "خروج من نافذة إعدادات الشبكه" + +msgid "Exit the wizard" +msgstr "خروج من نافذة الاعدادات" + +msgid "Expert" +msgstr "خبير" + +msgid "Extend sleeptimer 15 minutes" +msgstr "" + +msgid "Extended Software" +msgstr "برنامج تشغيلى متقدم" + +msgid "Extended Software Plugin" +msgstr "بلج إن البرنامج التشغيلى الممتد" + +#, fuzzy +msgid "Extended network setup plugin..." +msgstr "بلج إن إعدادات الشبكه المتقدمه" + +#, fuzzy +msgid "Extended setup..." +msgstr "إعدادات متقدمه" + +msgid "Extensions" +msgstr "إضافات" + +msgid "Extensions management" +msgstr "التحكم فى الاضافات" + +msgid "External PiP" +msgstr "" + +msgid "External subtitle color" +msgstr "" + +msgid "Extra motor options" +msgstr "" + +msgid "FEC" +msgstr "FEC" + +msgid "FTA" +msgstr "" + +msgid "Factory reset" +msgstr "العوده الى إعدادات المصنع" + +msgid "Failed" +msgstr "فشل" + +msgid "Failed to write /tmp/positionersetup.log: " +msgstr "" + +# +#, python-format +msgid "Fan %d" +msgstr "مروحه %d" + +# +#, python-format +msgid "Fan %d PWM" +msgstr "" + +# +#, fuzzy, python-format +msgid "Fan %d voltage" +msgstr "مروحه %d فولتيه" + +msgid "Fan operation" +msgstr "" + +msgid "Fan speed" +msgstr "" + +# +msgid "Fast" +msgstr "سريع" + +# +msgid "Fast DiSEqC" +msgstr "دايزك سريع" + +msgid "Fast Scan" +msgstr "" + +# +msgid "Fast epoch" +msgstr "" + +#, fuzzy +msgid "Fast forward speeds" +msgstr "سرعات التسريع للامام" + +# +msgid "Favourites" +msgstr "المفضله" + +msgid "File appears to be busy.\n" +msgstr "" + +#, fuzzy +msgid "Filesystem check" +msgstr "فحص نظام الملفات" + +msgid "Final position at" +msgstr "" + +msgid "Final position at index" +msgstr "" + +msgid "Fine movement" +msgstr "" + +# +msgid "Finetune" +msgstr "الضبط الدقيق" + +msgid "Finished" +msgstr "تم الانتهاء" + +msgid "Finished configuring your network" +msgstr "تم الانتهاء من تكوين شبكتك" + +msgid "Finished restarting your network" +msgstr "تم النتهاء من إعادة تشغيل الشبكه" + +msgid "Finnish" +msgstr "إنتهاء" + +msgid "Fixed" +msgstr "" + +msgid "Flash" +msgstr "شحن" + +msgid "Flashing failed" +msgstr "فشل الشحن" + +msgid "Following tasks will be done after you press OK!" +msgstr "سيتم تنفيذ الاعمال الاتيه بعد أن تضغط على موافق !" + +msgid "Format" +msgstr "نسق" + +msgid "Forward volume keys" +msgstr "" + +# +msgid "Frame size in full view" +msgstr "" + +# +msgid "French" +msgstr "فرنسى" + +# +msgid "Frequency" +msgstr "التردد" + +msgid "Frequency bands" +msgstr "نطاقات التردد" + +# +msgid "Frequency scan step size(khz)" +msgstr "" + +# +msgid "Frequency steps" +msgstr "خطوات التردد" + +msgid "Frequency:" +msgstr "" + +# +msgid "Fri" +msgstr "الجمعه" + +# +msgid "Friday" +msgstr "الجمعه" + +msgid "From :" +msgstr "" + +# +#, python-format +msgid "Frontprocessor version: %d" +msgstr "" + +msgid "Full transparency" +msgstr "" + +msgid "Fulview resulution" +msgstr "" + +msgid "Function of OK button" +msgstr "" + +msgid "Further Options" +msgstr "" + +# +msgid "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" +msgstr "" +"يجب إعادة تشغيل الاينجما2 لتطبيق الجلد \n" +"هل تريد إعادة تشغيل الاينجما2 الان ؟" + +# +msgid "Gateway" +msgstr "" + +msgid "General AC3 delay" +msgstr "" + +msgid "General PCM delay" +msgstr "" + +# +msgid "Genre" +msgstr "" + +# +msgid "German" +msgstr "المانـى" + +msgid "Get latest experimental image" +msgstr "" + +msgid "Get latest release image" +msgstr "" + +# +msgid "Getting plugin information. Please wait..." +msgstr "جارى الحصول على معلومات عن البلج إن. رجاء الانتظار..." + +msgid "Go down the list" +msgstr "" + +msgid "Go to first movie or last item" +msgstr "" + +msgid "Go to first movie or top of list" +msgstr "" + +#, fuzzy +msgid "Go to first service" +msgstr "الانتقال لاعلى الى البند الاول" + +#, fuzzy +msgid "Go to last service" +msgstr "إحمى القنوات" + +#, fuzzy +msgid "Go to next event" +msgstr "الانتقال لاسفل الى البند التالى" + +# +#, fuzzy +msgid "Go to next page of service" +msgstr "الانتقال الى الخدمه الفرعيه التاليه" + +#, fuzzy +msgid "Go to previous event" +msgstr "الانتقال لاعلى الى البند السابق" + +#, fuzzy +msgid "Go to previous page of service" +msgstr "العوده الى الخدمه القناه السابقه" + +msgid "Go up the list" +msgstr "" + +msgid "Goto" +msgstr "" + +# +msgid "Goto 0" +msgstr "الذهاب الى 0" + +msgid "Goto :" +msgstr "" + +msgid "Goto X" +msgstr "" + +msgid "Goto index position" +msgstr "" + +msgid "Goto next day of events" +msgstr "" + +msgid "Goto next page of events" +msgstr "" + +msgid "Goto position" +msgstr "الذهل للموضع" + +msgid "Goto previous day of events" +msgstr "" + +msgid "Goto previous page of events" +msgstr "" + +msgid "Goto specific date/time" +msgstr "" + +msgid "GotoX calibration" +msgstr "" + +msgid "GraphMultiEpg Settings" +msgstr "" + +# +msgid "Graphical Multi EPG" +msgstr "دليل برامج بيانى متعدد" + +msgid "Greek" +msgstr "اليونان" + +msgid "Green boost" +msgstr "دعم أخضر" + +msgid "Guard interval" +msgstr "" + +msgid "HD list" +msgstr "" + +msgid "HDMI-CEC setup" +msgstr "" + +msgid "Handle standby from TV" +msgstr "" + +msgid "Handle wakeup from TV" +msgstr "" + +# +#, fuzzy +msgid "Hard disk" +msgstr "قرص صلب" + +#, fuzzy +msgid "Hard disk setup" +msgstr "ضبط القرص الصلب" + +#, fuzzy +msgid "Hard disk standby after" +msgstr "القرص الصلب فى وضع الاستعداد بعد" + +# +msgid "Harddisk" +msgstr "قرص صلب" + +msgid "Hardware: " +msgstr "" + +msgid "Hebrew" +msgstr "" + +msgid "Helps setting up your dish" +msgstr "" + +msgid "Hidden network" +msgstr "" + +msgid "Hide CI messages" +msgstr "" + +msgid "Hide channel list in radio mode" +msgstr "" + +msgid "Hide known extensions" +msgstr "" + +msgid "Hide number markers" +msgstr "" + +#, fuzzy +msgid "Hide player" +msgstr "إخفاء المشغل" + +msgid "Hide zap errors" +msgstr "" + +msgid "Hierarchy info" +msgstr "" + +#, fuzzy +msgid "Hierarchy information" +msgstr "معلومات التسلسل الهرمى" + +msgid "High bitrate support" +msgstr "دعم معدل البث العالى" + +msgid "Hold screen" +msgstr "" + +msgid "Hold till locked" +msgstr "" + +msgid "Home" +msgstr "" + +msgid "Horizontal" +msgstr "أفقـى" + +msgid "Horizontal turning speed" +msgstr "" + +msgid "How many minutes do you want to record?" +msgstr "كم دقيقه تريد أن تسجل ؟" + +msgid "Hue" +msgstr "درجة لون" + +# +msgid "Hungarian" +msgstr "مجرى" + +# +#, fuzzy +msgid "IP address" +msgstr "عنوان IP" + +msgid "ISO file is too large for this filesystem!" +msgstr "ملف الايزو كبير جدا على ملفات النظام !" + +msgid "ISO path" +msgstr "مسار أيزو" + +msgid "Icons" +msgstr "" + +msgid "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." +msgstr "" +"إذا كنت تشاهد هذا، فهناك شيئ خطا فى \n" +"وصلة السكارت . أضغط موافق للعوده" + +msgid "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." +msgstr "" +"إذا كان التليفزيون به خاصية الاضاءه أو تعزيز التباين ، قم بتعطيلها . إذا كان هناك شيئ أسمه \"ديناميكى\" قم بضبطه الى الوضع القياسى . أضبط الاضاءه الخلفيه الى قيمه تناسب ذوقك . أخفض التباين فى التليفزيون الى أقل مستوى ممكن \n" +"بعد ذلك أخفض مستوى الاضاء الى أقل مستوى ممكن ، لكن ـاكد من وجود ظللين رماديين يمكن بقائهما فى حالة تمييز \n" +"لا تهتم بظلال الاضاءه الان . سيتم عمل الاعادادت لها فى الخطوه القادمه \n" +"إذا كنت تتقبل النتيجه ، أضغط موافق" + +msgid "Image: " +msgstr "" + +#, fuzzy +msgid "Immediate shutdown" +msgstr "إغلاق فورى" + +# +msgid "In order to record a timer, the TV was switched to the recording service!\n" +msgstr "لكى تسجل مؤقت ، يجب تحويل التليفزيون الى القناه التى ستسجل منها ! \n" + +# +#, fuzzy +msgid "In progress" +msgstr "جارى التقدم" + +msgid "Inactivity Sleeptimer" +msgstr "" + +msgid "Include AIT in http streams" +msgstr "" + +msgid "Include ECM in http streams" +msgstr "" + +msgid "Include EIT in http streams" +msgstr "" + +msgid "Incorrect type service for PiP!" +msgstr "" + +# +msgid "Increased voltage" +msgstr "فولت زائد" + +msgid "Index" +msgstr "فهرس" + +msgid "Index allocated:" +msgstr "" + +# +msgid "Info" +msgstr "معلومات" + +# +#, fuzzy +msgid "Info bar" +msgstr "شريط المعلومات" + +#, fuzzy +msgid "Info bar timeout" +msgstr "وقت ظهور شريط المعلومات" + +msgid "Infobar frontend data source" +msgstr "" + +# +msgid "Information" +msgstr "معلومات" + +# +msgid "Init" +msgstr "" + +#, fuzzy +msgid "Initial fast forward speed" +msgstr "سرعات التسريع للامام" + +# +msgid "Initial location in new timers" +msgstr "" + +msgid "Initial lock ratio" +msgstr "" + +#, fuzzy +msgid "Initial rewind speed" +msgstr "سرعة العوده للخلف" + +msgid "Initial signal quality" +msgstr "" + +msgid "Initial signal quality:" +msgstr "" + +msgid "Initialization" +msgstr "تهيئه" + +# +msgid "Initialize" +msgstr "تفعيل البدأ" + +msgid "Initializing storage device..." +msgstr "" + +msgid "Input" +msgstr "مدخل" + +msgid "Input device setup" +msgstr "" + +msgid "Input devices" +msgstr "" + +# +msgid "Install" +msgstr "تثبيت" + +# +msgid "Install a new image with a USB stick" +msgstr "" + +msgid "Install a new image with your web browser" +msgstr "تثبيت صوره جديد بواسطه متصفح الشبكه" + +#, fuzzy +msgid "Install channel list" +msgstr "القناه التاليه فى التاريخ" + +msgid "Install extensions" +msgstr "" + +msgid "Install extensions." +msgstr "تثبيت إضافات" + +msgid "Install local extension" +msgstr "تثبيت إضافات محليه" + +msgid "Install picons on" +msgstr "" + +#, fuzzy +msgid "Install softcam" +msgstr "تثبيت برمجيات" + +#, fuzzy +msgid "Installation has completed." +msgstr "إنتهاء التثبيت." + +#, fuzzy +msgid "Installation or removal has completed." +msgstr "إنتهاء التثبيت أو الحذف" + +msgid "Installing" +msgstr "جارى التثبيت" + +#, fuzzy +msgid "Installing software..." +msgstr "تثبيت برمجيات" + +#, fuzzy +msgid "Instant recording location" +msgstr "مكان التسجيل السريع" + +#, fuzzy +msgid "Instant recording..." +msgstr "تسجيل سريع" + +msgid "Interface: " +msgstr "واجهه" + +msgid "Intermediate" +msgstr "متوسط" + +# +#, fuzzy +msgid "Internal flash" +msgstr "الفلاش الداخلى" + +msgid "Internal hdd only" +msgstr "" + +msgid "Interval between keys when repeating:" +msgstr "" + +#, python-format +msgid "Invalid directory selected: %s" +msgstr "تم إختياردليل غير صالح %s" + +#, fuzzy +msgid "Invalid location" +msgstr "موقع غير صالح" + +msgid "Invalid transponder data" +msgstr "" + +# +msgid "Inversion" +msgstr "عكـس" + +# +msgid "Invert" +msgstr "مقلوب" + +# +msgid "Ipkg" +msgstr "" + +# +#, fuzzy +msgid "Is this setting ok?" +msgstr "هل توافق على وضعية الفيديو هذه؟" + +# +#, fuzzy +msgid "Is this video mode ok?" +msgstr "هل توافق على وضعية الفيديو هذه؟" + +msgid "Italian" +msgstr "إيطالى" + +msgid "Items per page " +msgstr "" + +msgid "Items per page for list screen" +msgstr "" + +msgid "Job overview" +msgstr "" + +msgid "Jump to beginning of list" +msgstr "" + +#, fuzzy +msgid "Jump to end of list" +msgstr "الوصول الى نهاية القائمه" + +# +#, fuzzy +msgid "Jump to next marked position" +msgstr "الوضع المخزن" + +# +#, fuzzy +msgid "Jump to previous marked position" +msgstr "عرض من العلامه السابقه أو من مدخل قائمة العرض" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect) +msgid "Just scale" +msgstr "" + +msgid "Keep service" +msgstr "" + +# +#, fuzzy +msgid "Kernel version: " +msgstr "إصدار جديد:" + +msgid "Keyboard" +msgstr "لوحة مفاتيح" + +# +#, fuzzy +msgid "Keyboard map" +msgstr "خريطه لوحه المفاتيح" + +# +#, fuzzy +msgid "Keyboard setup" +msgstr "ضبط لوحه المفاتيح" + +# +#, fuzzy +msgid "LAN adapter" +msgstr "محول شبكه محليه" + +msgid "LAN connection" +msgstr "أتصال شبكه محليه" + +# +msgid "LNB" +msgstr "" + +# +msgid "Language" +msgstr "اللغـه " + +# +msgid "Language selection" +msgstr "إختيار اللغـه" + +# +msgid "Last config" +msgstr "التهيئه السابقه" + +# +msgid "Last speed" +msgstr "السرعه السابقه" + +msgid "Last upgrade: " +msgstr "" + +msgid "Latest Commits" +msgstr "" + +# +msgid "Latitude" +msgstr "خط العرض" + +# +msgid "Latvian" +msgstr "" + +# +#, fuzzy +msgid "Leave DVD player?" +msgstr "هل تريد مغادرة مشغل الدى فى دى ؟" + +# +msgid "Left" +msgstr "يسار" + +msgid "Left from servicename" +msgstr "" + +msgid "Leisure hobbies" +msgstr "" + +# +#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term. +msgid "Letterbox" +msgstr "" + +msgid "Letterbox zoom" +msgstr "" + +#, fuzzy +msgid "Limit character set for recording filenames" +msgstr "حروف محدوده لاسماء ملفات التسجيل" + +# +msgid "Limit east" +msgstr "الحد الشرقى" + +msgid "Limit the characters that can be used in recording filenames to (7 bit) ascii. This ensures compatibility with operating systems or file systems with limited character sets." +msgstr "" + +# +msgid "Limit west" +msgstr "الحد الغربى" + +msgid "Limits cancelled" +msgstr "" + +msgid "Limits enabled" +msgstr "" + +# +msgid "Limits off" +msgstr "" + +# +msgid "Limits on" +msgstr "" + +msgid "Link quality:" +msgstr "" + +# +msgid "Link:" +msgstr "" + +# +msgid "Linked titles with a DVD menu" +msgstr "" + +msgid "List EPG functions..." +msgstr "" + +msgid "List available networks" +msgstr "" + +msgid "List mode" +msgstr "" + +# +#, fuzzy +msgid "List of storage devices" +msgstr "قائمة أجهزة التخزين" + +msgid "List type" +msgstr "" + +#, python-format +msgid "List version %d, found %d channel" +msgid_plural "List version %d, found %d channels" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" +msgstr[3] "" +msgstr[4] "" +msgstr[5] "" + +#, fuzzy +msgid "Listen to the radio..." +msgstr "استمع للراديو......" + +msgid "Lists reloaded!" +msgstr "" + +# +msgid "Lithuanian" +msgstr "ليتوانى" + +# +msgid "Load" +msgstr "تحميل" + +msgid "Load Length of Movies in Movielist" +msgstr "" + +# +#, fuzzy +msgid "Load length of movies in movie list" +msgstr "تحميل طول الفيلم فى قائمة الافلام" + +#, fuzzy +msgid "Load playlist" +msgstr "تحميل قائمة العرض" + +#, fuzzy +msgid "Local network" +msgstr "شبكه محليه" + +msgid "Location" +msgstr "مكان" + +msgid "Location for instant recordings" +msgstr "مكان التسجيلات السريعه" + +msgid "Lock ratio" +msgstr "" + +# +msgid "Lock:" +msgstr "" + +# +msgid "Log results to harddisk" +msgstr "" + +msgid "Long filenames" +msgstr "" + +# +#, fuzzy +msgid "Long key press" +msgstr "ضغط مستمر على مفتاح" + +# +msgid "Longitude" +msgstr "خط الطول" + +msgid "Loop through to" +msgstr "" + +msgid "Luxembourgish" +msgstr "" + +msgid "MMC card" +msgstr "" + +msgid "MORE" +msgstr "المزيـد" + +# +msgid "Main menu" +msgstr "القائـمه الرئيسيـه" + +msgid "Maintain old EPG data for" +msgstr "" + +# +msgid "Make this mark an 'in' point" +msgstr "" + +# +msgid "Make this mark an 'out' point" +msgstr "أجعل هذه العلامه نقطة خروج" + +# +msgid "Make this mark just a mark" +msgstr "أجعل هذه العلامه مجرد علامه" + +# +msgid "Manage extensions" +msgstr "التحكم فى الاضافات" + +# +msgid "Manage your receiver's software" +msgstr "تحكم فى البرنامج التشغيلى للرسيفر" + +msgid "Manual" +msgstr "" + +# +msgid "Manual Scan" +msgstr "بحـث يدوى" + +msgid "Manual configuration" +msgstr "" + +# +#, fuzzy +msgid "Manual scan" +msgstr "بحـث يدوى" + +msgid "Manual transponder" +msgstr "تردد يدوى" + +msgid "Manufacturer" +msgstr "الصانع" + +#, fuzzy +msgid "Margin after recording (minutes)" +msgstr "الهامش قبل التسجيل (بالدقائق)" + +#, fuzzy +msgid "Margin before recording (minutes)" +msgstr "الهامش قبل التسجيل (بالدقائق)" + +msgid "Max memory positions" +msgstr "" + +msgid "Max. bitrate: " +msgstr "" + +# +msgid "Media player" +msgstr "مشغل الوسائط" + +# +#, fuzzy +msgid "Media scanner" +msgstr "مشغل الوسائط" + +# +msgid "Medium is not a writeable DVD!" +msgstr "" + +msgid "Medium is not empty!" +msgstr "الوسيط غير فارغ" + +msgid "Memory" +msgstr "" + +msgid "Memory index" +msgstr "" + +# +msgid "Menu" +msgstr "قائمه" + +# +msgid "Message" +msgstr "رسـاله" + +msgid "Message..." +msgstr "رساله..." + +#, python-format +msgid "Minimum age %d years" +msgstr "" + +msgid "Minimum send interval" +msgstr "" + +msgid "Missing " +msgstr "" + +# +#, fuzzy +msgctxt "Satellite configuration mode" +msgid "Mode" +msgstr "وضعيه" + +# +#, fuzzy +msgctxt "Video output mode" +msgid "Mode" +msgstr "وضعيه" + +# +msgid "Model: " +msgstr "موديل :" + +# +msgid "Modulation" +msgstr "تعديل" + +# +msgid "Modulator" +msgstr "" + +# +msgid "Mon" +msgstr "الاثنين" + +# +msgid "Mon-Fri" +msgstr "الاثنين - الجمعه" + +# +msgid "Monday" +msgstr "الاثنين" + +# +msgid "Mosquito noise reduction" +msgstr "" + +msgid "Mount" +msgstr "" + +msgid "Move" +msgstr "" + +#, fuzzy +msgid "Move PiP to main picture" +msgstr "تحريك صوره داخل صوره الى الصوره الرئيسيه" + +msgid "Move Picture in Picture" +msgstr "تحريك صوره داخل صوره" + +msgid "Move east" +msgstr "تحرك شرقا" + +msgid "Move to other directory" +msgstr "" + +msgid "Move to position X" +msgstr "" + +msgid "Move west" +msgstr "تحرك للغرب" + +msgid "Moved to position 0" +msgstr "" + +msgid "Moved to position at index" +msgstr "" + +msgid "Movement" +msgstr "" + +msgid "Movie List Configuration" +msgstr "" + +msgid "Movie Selection" +msgstr "" + +#, fuzzy +msgid "Movie list configuration" +msgstr "تهيئة الموالف" + +msgid "Movie location" +msgstr "مكان الفيلم" + +#, fuzzy +msgid "Movie selection" +msgstr "مكان الفيلم" + +msgid "Movie/Drama" +msgstr "" + +msgid "Movielist menu" +msgstr "قائمة سجل الافلام" + +msgid "Moving" +msgstr "" + +msgid "Moving east ..." +msgstr "" + +msgid "Moving to position" +msgstr "" + +msgid "Moving west ..." +msgstr "" + +# +msgid "Multi EPG" +msgstr "دليل برامج متعدد" + +msgid "Multi-EPG bouquet selection" +msgstr "" + +msgid "Multimedia" +msgstr "وسائط متعدده" + +msgid "Multiple service support" +msgstr "دعم خدمات متعدده" + +msgid "Multiplex" +msgstr "" + +# +msgid "Multisat" +msgstr "عدة أقمار" + +msgid "Multisat all select" +msgstr "" + +msgid "Music/Ballet/Dance" +msgstr "" + +msgid "Mute" +msgstr "كتم الصوت" + +# +msgid "N/A" +msgstr "غير موجود" + +# +msgid "NEXT" +msgstr "التالى" + +# +#, fuzzy +msgid "NFI image flashing" +msgstr "شحن صوره NFI" + +# +msgid "NFI image flashing completed. Press Yellow to Reboot!" +msgstr "تم النتهاء من شحن صوره NFI، رجاء الضغط على الذر الاصفر لاعادة التشغيل !" + +msgid "NIM" +msgstr "" + +msgid "NOW" +msgstr "الان" + +# +msgid "NTSC" +msgstr "NTSC" + +# +msgid "Name" +msgstr "الاسم" + +msgid "Nameserver" +msgstr "اسم الخادم" + +#, python-format +msgid "Nameserver %d" +msgstr "اسم الخادم %d" + +msgid "Nameserver settings" +msgstr "إعدادات اسم الخادم" + +#, fuzzy +msgid "Nameserver setup" +msgstr "ضبط أسم الخادم" + +msgid "Namespace" +msgstr "" + +msgid "Netmask" +msgstr "قناع الشبكه" + +msgid "Network" +msgstr "الشبكه" + +msgid "Network ID" +msgstr "" + +#, fuzzy +msgid "Network configuration..." +msgstr "تكوين الشبكه" + +# +#, fuzzy +msgid "Network mount" +msgstr "إعتلاء الشبكه" + +# +#, fuzzy, python-format +msgid "Network mount %s" +msgstr "إعتلاء الشبكه" + +#, fuzzy +msgid "Network name (SSID)" +msgstr "إختبار الشبكه:" + +msgid "Network scan" +msgstr "بحث عن الشبكه" + +msgid "Network setup" +msgstr "ضبط الشبكه" + +msgid "Network test" +msgstr "أختبار الشبكه" + +msgid "Network test..." +msgstr "اختبار الشبكه ..." + +msgid "Network test: " +msgstr "إختبار الشبكه:" + +#, fuzzy +msgid "Network wizard" +msgstr "نافذة ضبط الشبكه" + +msgid "Network:" +msgstr "الشبكه:" + +# +msgid "New" +msgstr "جديد" + +msgid "New PIN" +msgstr "" + +# +msgid "New version:" +msgstr "إصدار جديد:" + +msgid "News Current Affairs" +msgstr "" + +msgctxt "button label, 'next screen'" +msgid "Next" +msgstr "" + +msgctxt "now/next: 'next' event label" +msgid "Next" +msgstr "" + +# +msgid "No" +msgstr "لا" + +# +msgid "No (supported) DVDROM found!" +msgstr "" + +msgid "No Connection" +msgstr "لا يوجد إتصال" + +# +msgid "No HDD found or HDD not initialized!" +msgstr "" +"لا يوجد قرص صلب\n" +"أو ان القرص الصلب لم يبدأ" + +# +msgid "No backup needed" +msgstr "لا حاجه الى نسخه إحتياطيه " + +msgid "No cable tuner found!" +msgstr "" + +# +msgid "" +"No data on transponder!\n" +"(Timeout reading PAT)" +msgstr "" + +msgid "No delay" +msgstr "" + +# +msgid "No description available." +msgstr "لا يوجد وصف" + +# +msgid "No details for this image file" +msgstr "لا يوجد تفاصيل لملف الصوره هذا" + +# +msgid "No displayable files on this medium found!" +msgstr "لا يوجد ملفات للعرض على هذا الوسيط !" + +# +msgid "No event info found, recording indefinitely." +msgstr "" + +# +msgid "No fast winding possible yet.. but you can use the number buttons to skip forward/backward!" +msgstr "" + +msgid "No free index available" +msgstr "" + +msgid "No free tuner!" +msgstr "لا يوجد موالف حر !" + +# +msgid "No network connection available." +msgstr "لا يوجد اتصال متاح بشبكه" + +# +msgid "No networks found" +msgstr "لم يتم العثور على شبكه" + +msgid "No new plugins found" +msgstr "" + +# +msgid "No positioner capable frontend found." +msgstr "" + +msgid "No satellites configured. Plese check your tuner setup." +msgstr "" + +msgid "No service" +msgstr "" + +msgid "No services/providers selected" +msgstr "" + +#, fuzzy +msgid "No standby" +msgstr "وضع الاستعداد" + +msgid "No suitable sat tuner found!" +msgstr "" + +# +msgid "No tags are set on these movies." +msgstr "" + +#, fuzzy +msgid "No timeout" +msgstr "وقت ظهور شريط المعلومات" + +# +msgid "No to all" +msgstr "لا للجميع" + +msgid "No transparency" +msgstr "" + +msgid "No tuner is configured for use with a diseqc positioner!" +msgstr "لم يتم العثور على موالف مهيأ للعمل مع موتور دايزك !" + +msgid "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"لا يوجد موالف مفعل \n" +"من فضلك أضبط إعدادات الموالف قبل البحث عن القنوات ." + +# +#, fuzzy +msgid "No updates available" +msgstr "التحديثات المتاحه" + +msgid "No updates available. Please try again later." +msgstr "" + +# +msgid "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" +msgstr "" + +# +msgid "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" +msgstr "" + +msgid "No wireless networks found! Searching..." +msgstr "" + +msgid "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." +msgstr "" +"لا يوجد محول شبكه \n" +"من فضلك تأكد من توصيل كابل الشبكه وأن إعدادات الشبكه تمت بشكل صحيح" + +msgid "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." +msgstr "" +"لم يتم العثور على محول شبكه لاسلكى. \n" +"رجاء التأكد من توصيل محول شبكه مناسب وأن ضبط الشبكه قد تم بشكل صحي" + +msgid "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." +msgstr "" +"لم يتم العثور على واحهة شبكه عامله.\n" +"رجاء التأكد من توصيل محول شبكه مناسب أو قم بتشغيل واحهة الشبكه المحليه." + +msgid "No, but restart from begin" +msgstr "لا، لكن أعد التشغيل من البدايه" + +msgid "No, do nothing." +msgstr "لا ، لا تفعل شيئ" + +msgid "No, just start my receiver" +msgstr "" + +msgid "No, never" +msgstr "" + +# +msgid "None" +msgstr "لاشيئ" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right) +msgid "Nonlinear" +msgstr "غير خطى" + +msgid "Normal mode" +msgstr "" + +# +msgid "North" +msgstr "شمال" + +# +msgid "Norwegian" +msgstr "نرويجى" + +msgid "Not associated" +msgstr "" + +msgid "Not configured" +msgstr "" + +# +#, fuzzy, python-format +msgid "Not enough disk space. Please free up some disk space and try again. (%d MB required, %d MB available)" +msgstr "لا يوجد مساحه كافيه على القرص، من فضلك حرر مساحه وحاول ثانيه.(مطلوب %d ميجاالمطلوب %d ميجا)" + +msgid "Nothing connected" +msgstr "" + +msgid "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"لا يوجد شيئ للبحث ! \n" +"من فضلك قم بضبط الموالف قبل بدأ البحث" + +msgctxt "now/next: 'now' event label" +msgid "Now" +msgstr "" + +# +#, fuzzy +msgid "Now playing" +msgstr "الان يعرض" + +msgid "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." +msgstr "الان، استخدم إعدادات التباين لزيادة درجه إضاءه الخلفيه الى أعلى قيمه ممكنه ، لكن كن متأكدا انك لازلت تستطيع ان ترى الفرق بين مستويين من الاضاءه فى الظل . إذا انتهيت من ذلك ، أضغط موافق." + +# +msgid "OK" +msgstr "موافق" + +msgid "OK, guide me through the upgrade process" +msgstr "موافق، أرشدنى أثناء عملية الترقيه" + +msgid "ONID" +msgstr "" + +msgid "OSD name request" +msgstr "" + +# +#, fuzzy +msgid "OSD settings" +msgstr "إعدادات OSD" + +msgid "OSD transparency" +msgstr "" + +# +msgid "Off" +msgstr "لا يعمل" + +msgid "Offline decode delay (ms)" +msgstr "" + +msgid "Ok" +msgstr "" + +# +msgid "On" +msgstr "يعمل" + +msgid "On end of movie" +msgstr "" + +msgid "On end of movie (as menu)" +msgstr "" + +# +msgid "One" +msgstr "واحد" + +msgid "Only extensions." +msgstr "إضافات فقط" + +# +#, fuzzy +msgid "Only free scan" +msgstr "فقط بحث عن القنوات المفتوحه" + +#, fuzzy +msgid "Open service list" +msgstr "فتح قائمة القنوات" + +#, fuzzy +msgid "Open the movie list" +msgstr "العوده الى قائمة الأفلام" + +msgid "Orbital position" +msgstr "" + +msgid "Original" +msgstr "" + +msgid "Other" +msgstr "" + +msgid "Output" +msgstr "" + +msgid "Overwrite configuration files during software upgrade?" +msgstr "" + +#, fuzzy +msgid "Overwrite configuration files?" +msgstr "تهيئة الموالف" + +# +msgid "PAL" +msgstr "بال" + +msgid "PCR PID" +msgstr "" + +msgid "PIDs" +msgstr "PIDs" + +#, fuzzy +msgid "PIN code needed" +msgstr "مطلوب رقم سرى" + +msgid "PLP ID" +msgstr "" + +msgid "PMT PID" +msgstr "" + +# +msgid "Package list update" +msgstr "تحديث قائمة الباقات" + +msgid "Packet management" +msgstr "التحكم فى الحزم" + +msgid "Packet manager" +msgstr "المتحكم فى الحزم" + +#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term +msgid "Pan&scan" +msgstr "" + +# +#, fuzzy +msgid "Parent directory" +msgstr "الدليل الرئيسى" + +# +msgid "Parental control" +msgstr "التحكم الابوى" + +#, fuzzy +msgid "Parental control services editor" +msgstr "محرر خدمات التحكم الأبوى" + +# +msgid "Parental control setup" +msgstr "اعداد التحكم الابوى" + +# +msgid "Parental control type" +msgstr "نوع التحكم الابوى" + +# +msgid "Password" +msgstr "كلمة المرور" + +#, fuzzy +msgid "Pause" +msgstr "وقف مؤقت" + +msgid "Pause movie at end" +msgstr "إيقاف الفيلم عند النهايه" + +# +#, fuzzy +msgid "Pause playback" +msgstr "إستئناف العرض" + +msgid "Pauze/Continue playback" +msgstr "" + +msgid "Percentage left" +msgstr "" + +#, fuzzy +msgid "Percentage right" +msgstr "يمين دائرى" + +msgid "Permanently delete all recordings in the trash can?" +msgstr "" + +msgid "Permanently remove all deleted items" +msgstr "" + +msgid "Persian" +msgstr "" + +# +msgid "Phone number" +msgstr "رقم التليفون" + +#, fuzzy +msgid "PiP setup" +msgstr "ضبط صوره داخل صوره" + +msgid "Picon" +msgstr "" + +msgid "Picon and service name" +msgstr "" + +#, fuzzy +msgid "Picture player" +msgstr "عارض الصور" + +#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term. +msgid "Pillarbox" +msgstr "عمود مربع" + +# +msgid "Pilot" +msgstr "" + +# +msgid "Play" +msgstr "تشغيل" + +# +msgid "Play DVD" +msgstr "تشغيل دى فى دى" + +msgid "Play audio in background" +msgstr "" + +# +#, fuzzy +msgid "Play audio-CD..." +msgstr "تشغيل سى دى صوت" + +msgid "Play back media files" +msgstr "" + +# +#, fuzzy +msgid "Play entry" +msgstr "عرض المدخل" + +#, fuzzy +msgid "Play from next mark or playlist entry" +msgstr "أعرض من العلامه التاليه أو من قائمة العرض" + +# +#, fuzzy +msgid "Play from previous mark or playlist entry" +msgstr "عرض من العلامه السابقه أو من مدخل قائمة العرض" + +# +#, fuzzy +msgid "Play music..." +msgstr "تشغيل موسيقى" + +msgid "Play next" +msgstr "" + +msgid "Play next (return to movie list)" +msgstr "" + +msgid "Play next (return to previous service)" +msgstr "" + +msgid "Play previous" +msgstr "" + +# +msgid "Play recorded movies..." +msgstr "عرض الافلام المسجله" + +msgid "Please add titles to the compilation." +msgstr "من فضلك أدخل عناوين للتأليف" + +msgid "Please change recording endtime" +msgstr "من فضلك قم بتغيير وقت إنتهاء التسجيل" + +msgid "Please check your network settings!" +msgstr "من فضلك أفحص إعدادات الشبكه!" + +msgid "Please choose an extension..." +msgstr "من فضلك أختار إضافه..." + +msgid "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"من فضلك فم بتكوين أو تأكد من اسم الخادم بوضع القيم المطلوبه.\n" +"عندما تكون مستعد أضغط موافق للاستمرار." + +msgid "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"من فضلك قم بتكوين التصال بالنترنت بملأ القيم المطلوبه \n" +"عندما تكون مستعد أضغط موافق للاستمرار" + +msgid "Please connect your receiver to the internet" +msgstr "" + +msgid "Please do not change any values unless you know what you are doing!" +msgstr "من فضلك لا تغير أى قيمه ألا إذا كنت متأكد مما تفعل !" + +msgid "Please enter a name for the new bouquet" +msgstr "من فضلك أدخل أسم الباقه الجديده" + +msgid "Please enter a name for the new marker" +msgstr "من فضلك أدخل أسم للعلامه الجديده" + +msgid "Please enter a new filename" +msgstr "من فضلك أدخل اسم جديد للملف" + +msgid "Please enter filename (empty = use current date)" +msgstr "من فضلك أدخل اسم ملف (فارغ= استخدم التارخ الحالى)" + +msgid "Please enter name of the new directory" +msgstr "من فضلك أدخل أسم الدليل الجديد" + +msgid "Please enter new name:" +msgstr "" + +msgid "Please enter the correct pin code" +msgstr "من فضلك أدخل الرقم السرى الصحيح" + +msgid "Please enter the old PIN code" +msgstr "" + +msgid "Please follow the instructions on the TV" +msgstr "من فضلك اتبع التعليمات على التليفزيون" + +msgid "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." +msgstr "من فضلك أعلم ان الوسيط المختار لا يمكن الدخول اليه ، ولهذا سيتم استخدام الدليل الافتراضى بدلا منه ." + +msgid "Please press OK to continue." +msgstr "من فضلك أضغط موافق للاستمرار" + +msgid "Please select a default EPG type..." +msgstr "" + +msgid "Please select a playlist to delete..." +msgstr "أختار قائمة العرض المراد مسحها..." + +msgid "Please select a playlist..." +msgstr "من فضلك أختار قائمة العرض..." + +# +#, fuzzy +msgid "Please select a sub service..." +msgstr "من فضلك أختار الخدمه الفرعيه" + +msgid "Please select a subservice to record..." +msgstr "من فضلك أختار الخدمه الفرعيه المطلوب تسجيلها..." + +# +msgid "Please select a subservice..." +msgstr "من فضلك أختار الخدمه الفرعيه" + +msgid "Please select an NFI file and press green key to flash!" +msgstr "" + +#, fuzzy +msgid "Please select medium to be scanned" +msgstr "من فضلك أختار الوسيط المطلوب فحصه" + +msgid "Please select medium to use as backup location" +msgstr "من فضلك أختار الوسيط الذى سييستخدم كمكان للنسخه الإحتياطيه " + +# +msgid "Please select tag to filter..." +msgstr "" + +msgid "Please select the movie path..." +msgstr "من فضلك أختار مسار الفيلم..." + +msgid "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." +msgstr "" +"من فضلك أختار واجهة الشبكه التى تريد استخدامها فى الاتصال بالانترنت.\n" +"\n" +"أضغط موافق للاستمرار." + +msgid "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." +msgstr "" +"من فضلك أختار الشبكه اللاسلكيه التى تريد الاتصال بها \n" +"\n" +"أضغط موافق للاستمرار" + +#, fuzzy +msgid "Please set up tuner A" +msgstr "من فضلك أضبط الموالف B" + +msgid "Please set up tuner B" +msgstr "من فضلك أضبط الموالف B" + +msgid "Please set up tuner C" +msgstr "من فضلك أضبط الموالف C" + +msgid "Please set up tuner D" +msgstr "من فضلك أضبط الموالف D" + +msgid "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." +msgstr "" +"من فضلك استخدم أذرار الاسهم لتحريك نافذه صوره داخل صوره \n" +"أضغط ذر الباقات +/- لتغير مقاس النافذه \n" +"أضغط موافق للعوده لوضع التليفزيون أو خروج لألغاء التحريك" + +msgid "Please use the UP and DOWN keys to select your language. Afterwards press the OK button." +msgstr "من فضلك أستخدم ذر السهم العلوى أو السفلى لإختيار اللغه. ثم أضغط موافق ." + +msgid "Please wait" +msgstr "" + +#, fuzzy +msgid "Please wait (downloading channel list)" +msgstr "انتظر من فضلك ...يتم تحميل القائمه..." + +#, fuzzy +msgid "Please wait (downloading softcam)" +msgstr "انتظر من فضلك ...يتم تحميل القائمه..." + +#, fuzzy +msgid "Please wait (updating packages)" +msgstr "رجاء الانتظار... جارى تحميل الصوره" + +msgid "Please wait for activation of your network configuration..." +msgstr "رجاء الانتظار حتى يتم تنشيط تكوينات الشبكه" + +msgid "Please wait while scanning is in progress..." +msgstr "رجاء الانتظار حيث جارى البحث..." + +msgid "Please wait while we configure your network..." +msgstr "رجاء الانتظار..... جارى تهيئة الشبكه" + +msgid "Please wait while we prepare your network interfaces..." +msgstr "رجاء الانتظار.... جارى تحضير واجهات الشبكه" + +msgid "Please wait while we test your network..." +msgstr "رجاء الانتظار.... جارى إختبار الشبكه" + +msgid "Please wait while your network is restarting..." +msgstr "رجاء الانتظار.... جارى إعادة تشغيل الشبكه" + +msgid "Please wait..." +msgstr "رجاء الانتظار...." + +msgid "Please wait... Loading list..." +msgstr "انتظر من فضلك ...يتم تحميل القائمه..." + +# +msgid "Plugin browser" +msgstr "متصفح البلج إنز" + +msgid "Plugin manager activity information" +msgstr "معلومات نشاط متحكم البلج إن" + +# +msgid "Plugin manager help" +msgstr "مساعده متحكم البلج إن" + +# +msgid "Plugins" +msgstr "بلج إنز" + +msgid "Polarisation" +msgstr "" + +msgid "Polarisation:" +msgstr "" + +# +msgid "Polarization" +msgstr "الاستقطاب" + +# +msgid "Polish" +msgstr "بولندى" + +# +msgid "Port A" +msgstr "مدخل أ" + +# +msgid "Port B" +msgstr "مدخل ب" + +# +msgid "Port C" +msgstr "مدخل ج" + +# +msgid "Port D" +msgstr "مدخل د" + +# +msgid "Portuguese" +msgstr "برتغالى" + +msgid "Position of completed timers in timerlist" +msgstr "" + +msgid "Position stored at index" +msgstr "" + +# +msgid "Positioner" +msgstr "الموتور" + +msgid "Positioner (selecting satellites)" +msgstr "" + +msgid "Positioner Setup" +msgstr "" + +msgid "Positioner setup" +msgstr "ضبط الموتور" + +# +msgid "Power threshold in mA" +msgstr "" + +# +msgid "Predefined transponder" +msgstr "" + +msgid "Prefer AC3 track" +msgstr "" + +msgid "Prefer AC3+ track" +msgstr "" + +msgid "Prefer audio track stored by service" +msgstr "" + +msgid "Prefer graphical DVB subtitles" +msgstr "" + +msgid "Prefer subtitles for hearing impaired" +msgstr "" + +msgid "Prefer subtitles stored by service" +msgstr "" + +msgid "Preferred tuner" +msgstr "" + +msgid "Preferred tuner for recordings" +msgstr "" + +msgid "Prepare another USB stick for image flashing" +msgstr "" + +# +msgid "Preparing... Please wait" +msgstr "جارى التجهيز ... رجاء الانتظار" + +msgid "Press '0' to toggle PiP mode" +msgstr "" + +msgid "Press INFO on your remote control for additional information." +msgstr "" + +msgid "Press MENU on your remote control for additional options." +msgstr "" + +# +msgid "Press OK on your remote control to continue." +msgstr "أضغط موافق من الريموت للمتابعه" + +msgid "Press OK to activate the selected skin." +msgstr "أضغط موافق لتفعيل الجلد المختار." + +# +msgid "Press OK to activate the settings." +msgstr "اضغط موافق لتفعيل الاعدادات" + +msgid "Press OK to edit the settings." +msgstr "أضغط موافق لتحرير الاعدادات" + +#, python-format +msgid "Press OK to get further details for %s" +msgstr "أضغط موالق للحصول على تفاصيل أكثر عن %s" + +# +msgid "Press OK to scan" +msgstr "اضغط موافق للبحث" + +#, fuzzy +msgid "Press OK to select a provider." +msgstr "أضغط موافق لتختار مزود" + +msgid "Press OK to select satellites" +msgstr "" + +msgid "Press OK to select/deselect a CAId." +msgstr "إضغط موافق لاختيار/الغاء اختيار CAId" + +# +msgid "Press OK to start the scan" +msgstr "اضغط موافق لبدأ البحث" + +msgid "Press OK to toggle the selection" +msgstr "" + +msgid "Press OK to toggle the selection." +msgstr "أضغط موافق لتبدل الأختيار" + +msgid "Press yellow to set this interface as default interface." +msgstr "أضغط الذر الأصفر لتجعل هذه الواجهه هى الواجهه الأفتراضيه" + +msgctxt "button label, 'previous screen'" +msgid "Prev" +msgstr "" + +msgid "Preview" +msgstr "معاينه" + +msgid "Preview menu" +msgstr "معاينة القائمه" + +msgid "Preview selected channel" +msgstr "" + +msgid "Primary DNS" +msgstr "دى إن اس أبتدائى" + +msgid "Priority" +msgstr "أولويه" + +msgid "Process" +msgstr "عمليه" + +msgid "Progress" +msgstr "" + +msgid "Progress bar left" +msgstr "" + +msgid "Progress bar right" +msgstr "" + +msgid "Properties of current title" +msgstr "خصائص العنوان الحالى" + +msgid "Protect services" +msgstr "إحمى القنوات" + +msgid "Protect setup" +msgstr "إحمى الضبط" + +msgid "Provider" +msgstr "مزود" + +msgid "Provider to scan" +msgstr "المزود الذى سيتم البحث فيه" + +# +msgid "Providers" +msgstr "مقدمو الخدمه" + +msgid "Put TV in standby" +msgstr "" + +msgid "Put receiver in standby" +msgstr "" + +# +msgid "Python frontend for /tmp/mmi.socket" +msgstr "" + +msgid "Quick" +msgstr "سريع" + +#, fuzzy +msgid "Quick zap" +msgstr "انتقال سريع" + +msgid "RF output" +msgstr "مخرج RF" + +msgid "RGB" +msgstr "RGB" + +msgid "Radio" +msgstr "راديو" + +# +#, fuzzy +msgid "Ram disk" +msgstr "قرص صلب" + +msgid "Random" +msgstr "عشوائى" + +#, python-format +msgid "Rating defined by broadcaster - %d" +msgstr "" + +msgid "Rating undefined" +msgstr "" + +msgid "Really close without saving settings?" +msgstr "هل تريد فعلا الغلق بدون حفظ الاعدادات ؟" + +msgid "Really delete done timers?" +msgstr "هل تريد فعلا مسح المؤقتات المعموله ؟" + +# +msgid "Really exit the subservices quickzap?" +msgstr "" + +msgid "Really reboot now?" +msgstr "هل تريد فعلا إعادة التشغيل الان ؟" + +msgid "Really restart now?" +msgstr "هل تريد فعلا إعـادة التشغـيل الان ؟" + +msgid "Really shutdown now?" +msgstr "هل تريد فعلا الاغلاق الان ؟" + +msgid "Really upgrade the frontprocessor and reboot now?" +msgstr "" + +msgid "Really upgrade your settop box and reboot now?" +msgstr "" + +msgid "Reboot" +msgstr "إعادة التشغيل" + +msgid "Rec" +msgstr "" + +# +#, fuzzy +msgid "Reception settings" +msgstr "إعدادات الاستقبال" + +# +msgid "Record" +msgstr "تسجيل" + +# +#, python-format +msgid "Record time limited due to conflicting timer %s" +msgstr "وقت تسجيل محدود لوجود مؤقت متعارض %s" + +msgid "Recorded files..." +msgstr "ملفات مسجله..." + +# +msgid "Recording" +msgstr "تسجيل" + +msgid "Recording in progress" +msgstr "" + +msgid "Recording paths" +msgstr "مسارات التسجيل" + +msgid "Recording type" +msgstr "" + +msgid "Recording(s) are in progress or coming up in few seconds!" +msgstr "التسجيل قيد التنفيذ أو سيبدأ فى ثوان قليله" + +msgid "Recordings" +msgstr "تسجيلات" + +msgid "Recordings always have priority" +msgstr "التسجيلات لها الأوليه دائما" + +msgid "Red button..." +msgstr "" + +msgid "Reenter new PIN" +msgstr "" + +#, fuzzy +msgid "Refresh rate" +msgstr "معدل الأنعاش" + +msgid "Refresh rate selection." +msgstr "إختيار معدل الأنعاش" + +msgid "Regard deep standby as standby" +msgstr "" + +msgid "Relative" +msgstr "" + +msgid "Reload" +msgstr "إعادة تحميل" + +# +#, fuzzy +msgid "Reload black-/white lists" +msgstr "إعادة تحميل القائمه السوداء/البيضاء" + +msgid "Reloading bouquets and services..." +msgstr "" + +msgid "Remember last service in PiP" +msgstr "" + +msgid "Remember service PIN" +msgstr "" + +msgid "Remember these settings for each folder" +msgstr "" + +msgid "Reminder, you have chosen to save timeshift file." +msgstr "" + +# +#, fuzzy +msgid "Remote control type" +msgstr "نوع التحكم الابوى" + +#, fuzzy +msgid "Removal has completed." +msgstr "فشل الحذف" + +msgid "Remove" +msgstr "حذف" + +msgid "Remove a mark" +msgstr "حذف علامه" + +# +#, fuzzy +msgid "Remove a nameserver entry" +msgstr "حذف مدخلأسم الخادم" + +# +#, fuzzy +msgid "Remove bookmark" +msgstr "حذف المرجعيه" + +msgid "Remove completed timers after (days)" +msgstr "" + +msgid "Remove currently selected title" +msgstr "حذف العنوان الحالى المختار" + +msgid "Remove items from trash can after (days)" +msgstr "" + +msgid "Remove plugins" +msgstr "حذف البلج إنز" + +msgid "Remove title" +msgstr "حذف عنوان" + +msgid "Removing" +msgstr "جارى الحذف" + +#, python-format +msgid "Removing directory %s failed. (Maybe not empty.)" +msgstr "فشل حذف الدليل%s .قد يكون فارغ ." + +#, fuzzy +msgid "Removing partition table" +msgstr "حذف عنوان" + +msgid "Rename" +msgstr "إعادة التسميه" + +msgid "Repeat" +msgstr "" + +#, fuzzy +msgid "Repeat type" +msgstr "نوع الإعاده" + +# +msgid "Repeating event currently recording... What do you want to do?" +msgstr "" + +msgid "Repeats" +msgstr "إعادات" + +msgid "Require authentication for http streams" +msgstr "" + +msgid "Required medium type:" +msgstr "نوع الوسيط المطلوب" + +msgid "Rereading partition table" +msgstr "" + +msgid "Reserved" +msgstr "" + +# +msgid "Reset" +msgstr "إعاده الضبط" + +# +msgid "Reset and renumerate title names" +msgstr "" + +msgid "Reset playback position" +msgstr "" + +msgid "Reset video enhancement settings to system defaults?" +msgstr "إعادة إعدادات تعزيز الفيديو الى إفتراضيات النظام ؟" + +msgid "Reset video enhancement settings to your last configuration?" +msgstr "إعادة إعدادات تعزيز الفيديو الى التكوينات الاخيره الخاصه بك ؟" + +# +msgid "Resolution" +msgstr "" + +# +msgid "Restart" +msgstr "إعاده التشغيل" + +msgid "Restart GUI now?" +msgstr "هل تريد إعادة تشغيل الاينجما2 الان ؟" + +msgid "Restart enigma" +msgstr "" + +msgid "Restart network" +msgstr "إعادة تشغيل الشبكه" + +msgid "Restart test" +msgstr "إعادة الاختبار" + +msgid "Restart your network connection and interfaces.\n" +msgstr "إعادة تشغيل إتصال الشبكه والواجهه.\n" + +msgid "Restore" +msgstr "إستعاده" + +msgid "Restore backups" +msgstr "إستعادة النسخه الإحتياطيه " + +msgid "Restore is running..." +msgstr "الاستعاده قيد التنفيذ" + +msgid "Restore system settings" +msgstr "إستعادة إعدادات النظام" + +#, fuzzy +msgid "Restoring..." +msgstr "جارى التسجيل....." + +msgid "Resume from last position" +msgstr "إستعاده من الوضع السابق" + +#, python-format +msgid "Resume position at %s" +msgstr "إستعادة الوضع الى%s" + +# +#. TRANSLATORS: The string "Resuming playback" flashes for a moment +#. TRANSLATORS: at the start of a movie, when the user has selected +#. TRANSLATORS: "Resume from last position" as start behavior. +#. TRANSLATORS: The purpose is to notify the user that the movie starts +#. TRANSLATORS: in the middle somewhere and not from the beginning. +#. TRANSLATORS: (Some translators seem to have interpreted it as a +#. TRANSLATORS: question or a choice, but it is a statement.) +msgid "Resuming playback" +msgstr "إستئناف العرض" + +msgid "Return to movie list" +msgstr "العوده الى قائمة الأفلام" + +msgid "Return to previous service" +msgstr "العوده الى الخدمه القناه السابقه" + +msgid "Reverse bouquet buttons" +msgstr "" + +msgid "Reverse list" +msgstr "" + +msgid "Rewind speeds" +msgstr "سرعة العوده للخلف" + +msgid "Rewrap teletext subtitles" +msgstr "" + +msgid "Right" +msgstr "يمين" + +msgid "Right from servicename" +msgstr "" + +msgid "Roll-off" +msgstr "" + +msgid "Romanian" +msgstr "" + +msgid "Root directory" +msgstr "" + +msgid "Rotor step position:" +msgstr "" + +# +msgid "Rotor turning speed" +msgstr "سرعة توليف الموتور" + +msgid "Round start time on" +msgstr "" + +# +msgid "Russian" +msgstr "روسى" + +msgid "S-Video" +msgstr "S-Video" + +msgid "SID" +msgstr "" + +# +msgid "SINGLE LAYER DVD" +msgstr "دى فى دى أحادى الطبقه" + +# +msgid "SNR" +msgstr "SNR" + +# +msgid "SNR:" +msgstr "SNR:" + +# +msgid "SSID:" +msgstr "SSID:" + +msgid "Same resolution as skin" +msgstr "" + +# +msgid "Sat" +msgstr "قمر" + +# +msgid "Satellite" +msgstr "قمر صناعى" + +# +#, fuzzy +msgid "Satellite dish setup" +msgstr "ضبط معدات القمر" + +msgid "Satellite equipment" +msgstr "معدات القمر" + +# +#, fuzzy +msgid "Satellite equipment setup" +msgstr "ضبط معدات القمر" + +msgid "Satellite longitude:" +msgstr "" + +# +msgid "Satellites" +msgstr "اقمار صناعيه" + +msgid "Satfinder" +msgstr "الباحث عن الأقمار" + +# +msgid "Sats" +msgstr "أقمار" + +msgid "Saturation" +msgstr "تشبع" + +# +msgid "Saturday" +msgstr "السبت" + +msgid "Save" +msgstr "حفظ" + +#, fuzzy +msgid "Save playlist" +msgstr "حفظ قائمة العرض" + +msgid "Save timeshift file" +msgstr "" + +msgid "Save timeshift file in movie directory" +msgstr "" + +# +msgid "Scaler sharpness" +msgstr "" + +#, fuzzy +msgid "Scaling mode" +msgstr "وضع التدريج" + +msgid "Scan" +msgstr "" + +msgid "Scan " +msgstr "بحـث" + +#. TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' +#, fuzzy, python-format +msgid "Scan %s" +msgstr "بحـث" + +#. TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' +#, python-format +msgid "Scan %s band" +msgstr "" + +# +msgid "Scan additional SR" +msgstr "البحث عن SR إضافى" + +# +#, fuzzy +msgid "Scan files..." +msgstr "فحص الملفات..." + +#, fuzzy +msgid "Scan wireless networks" +msgstr "البحث عن شبكات لاسلكيه" + +msgid "Scan your network for wireless access points and connect to them using your selected wireless device.\n" +msgstr "أبحث فى الشبكه عن نقاط دخول لاسلكيه وأتصل بهم باستخدامجهزك اللاسلكى المختار.\n" + +#, python-format +msgid "Scanning %s..." +msgstr "" + +#. TRANSLATORS: The stb is performing a channel scan, progress percentage is printed in '%d' (and '%%' will show a single '%' symbol) +#, python-format +msgid "Scanning - %d%% completed" +msgid_plural "Scanning - %d%% completed" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" +msgstr[3] "" +msgstr[4] "" +msgstr[5] "" + +#, python-format +msgid "Scanning completed, %d channel found" +msgid_plural "Scanning completed, %d channels found" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" +msgstr[3] "" +msgstr[4] "" +msgstr[5] "" + +msgid "Scanning failed!" +msgstr "" + +msgid "Scanning..." +msgstr "" + +# +msgid "Scans default lamedbs sorted by satellite with a connected dish positioner" +msgstr "" + +msgid "Search east" +msgstr "البحث شرقا" + +msgid "Search west" +msgstr "بحث غربا" + +msgid "Searching" +msgstr "" + +msgid "Searching east ..." +msgstr "" + +msgid "Searching for available updates. Please wait..." +msgstr "بحث عن التحديثات المتاحه. رجاء الانتظار...." + +msgid "Searching for new installed or removed packages. Please wait..." +msgstr "جارى البحث عن حزم جديده تم تثبيتها أو حذفها. رجاء الانتظار..." + +msgid "Searching west ..." +msgstr "" + +msgid "Second cable of motorized LNB" +msgstr "" + +msgid "Secondary DNS" +msgstr "DNS ثانوى" + +# +msgid "Seek" +msgstr "بحـث" + +#, fuzzy +msgid "Seek backward" +msgstr "تخطى للخلف" + +#, fuzzy +msgid "Seek backward (enter time)" +msgstr "تخطى للخلف (أدخل الوقت)" + +#, fuzzy +msgid "Seek forward" +msgstr "تخطى للأمام" + +#, fuzzy +msgid "Seek forward (enter time)" +msgstr "تخطى للأمام (أدخل الوقت)" + +msgid "Select" +msgstr "أختار" + +#, fuzzy +msgid "Select CAId" +msgstr "أختار" + +# +msgid "Select HDD" +msgstr "اختار القرص الصلب" + +# +#, fuzzy +msgid "Select a bouquet" +msgstr "اختار الفيلم" + +# +msgid "Select a movie" +msgstr "اختار الفيلم" + +#, fuzzy +msgid "Select a network adapter" +msgstr "أختار محول الشبكه" + +# +#, fuzzy +msgid "Select a skin" +msgstr "اختار الفيلم" + +# +#, fuzzy +msgid "Select a tuner" +msgstr "اختار الفيلم" + +#, fuzzy +msgid "Select a wireless network" +msgstr "اختار الشبكه اللاسلكيه" + +msgid "Select action" +msgstr "" + +#, python-format +msgid "Select action for timer %s:" +msgstr "" + +msgid "Select all" +msgstr "" + +msgid "Select an image to be downloaded" +msgstr "" + +msgid "Select audio track" +msgstr "أختار مسار الصوت" + +#, fuzzy +msgid "Select backup files" +msgstr "اختار ملفات النسخه الإحتياطيه " + +#, fuzzy +msgid "Select backup location" +msgstr "اختار مكان النسخه الإحتياطيه " + +# +msgid "Select channel to record from" +msgstr "اختار القناه التى تريد ان تسجل منها" + +msgid "Select copy destination for:" +msgstr "" + +msgid "Select default EPG type..." +msgstr "" + +msgid "Select desired image from feed list" +msgstr "" + +msgid "Select destination for:" +msgstr "" + +msgid "Select files for backup." +msgstr "" + +msgid "Select files/folders to backup" +msgstr "أختار ملفات/مجلدات النسخه الاحتياطيه" + +msgid "Select input device" +msgstr "" + +msgid "Select input device." +msgstr "" + +msgid "Select interface" +msgstr "أختار واجهه" + +#, fuzzy +msgid "Select location" +msgstr "أختار الموقع" + +# +#, fuzzy +msgid "Select movie" +msgstr "اختار الفيلم" + +msgid "Select provider to add..." +msgstr "أختار مزود ليتم إضافته..." + +msgid "Select refresh rate" +msgstr "أختار معدل الأنعاش" + +msgid "Select satellites" +msgstr "" + +msgid "Select service to add..." +msgstr "اختار قناه ليتم إضافتها" + +msgid "Select sort method:" +msgstr "" + +# +#, fuzzy +msgid "Select target folder" +msgstr "أختار المجلد الهدف" + +#, fuzzy +msgid "Select the movie path" +msgstr "أختار مسار الفيلم" + +#, fuzzy +msgid "Select upgrade source" +msgstr "أختار مصدر الترقيه المراد تحريره" + +msgid "Select upgrade source to edit." +msgstr "أختار مصدر الترقيه المراد تحريره" + +# +msgid "Select video input with up/down buttons" +msgstr "أختار مدخل الفيديو بأزرار أعلى/أسفا" + +msgid "Select video mode" +msgstr "أختار اسلوب الفيديو" + +msgid "Select wireless network" +msgstr "اختار الشبكه اللاسلكيه" + +msgid "Select your provider, and press OK to start the scan" +msgstr "" + +msgid "Selecting satellites 1 (USALS)" +msgstr "" + +msgid "Selecting satellites 2 (USALS)" +msgstr "" + +msgid "Send DiSEqC only on satellite change" +msgstr "ارسل دايزك عند تغيير القمر فقط" + +msgid "Separate titles with a main menu" +msgstr "عناوين منفصله مع قائمة رئيسيه" + +msgid "Sequence repeat" +msgstr "تكرار التسلسل" + +# +msgid "Serbian" +msgstr "صريى" + +# +msgid "Service" +msgstr "قناه/خدمه" + +# +msgid "Service has been added to the favourites." +msgstr "تم إضافة القناه الى المفضله" + +msgid "Service has been added to the selected bouquet." +msgstr "تم إضافة القناه الى الباقه المختاره." + +# +#, fuzzy +msgid "Service info" +msgstr "معلومات القناه" + +# +msgid "" +"Service invalid!\n" +"(Timeout reading PMT)" +msgstr "" + +# +#, fuzzy +msgid "Service name" +msgstr "بخث عن القنوات" + +# +msgid "" +"Service not found!\n" +"(SID not found in PAT)" +msgstr "" + +msgid "Service reference" +msgstr "" + +# +msgid "Service scan" +msgstr "بحث عـن القنـوات" + +# +#, fuzzy +msgid "Service searching" +msgstr "بحث عن القنـوات" + +#, fuzzy +msgid "Service title mode" +msgstr "أختار اسلوب الفيديو" + +msgid "" +"Service unavailable!\n" +"Check tuner configuration!" +msgstr "" +"الخدمه غير متاحه !\n" +"تأكد من تهيئة الموالف !" + +# +msgid "Services" +msgstr "القنوات/الخدمات" + +msgid "Set default" +msgstr "" + +# +#, fuzzy +msgid "Set end time" +msgstr "أضبط وقت النتهاء" + +msgid "Set fixed" +msgstr "" + +msgid "Set fps for external subtitles" +msgstr "" + +# +msgid "Set interface as default Interface" +msgstr "أبط واجهه لتكون واجهه إفتراضيه" + +msgid "Set limits" +msgstr "" + +msgid "Set the type of the progress indication in the channel selection screen." +msgstr "" + +msgid "Set time window to 1 hour" +msgstr "" + +msgid "Set time window to 2 hours" +msgstr "" + +msgid "Set time window to 3 hours" +msgstr "" + +msgid "Set time window to 4 hours" +msgstr "" + +msgid "Set time window to 5 hours" +msgstr "" + +msgid "Set time window to 6 hours" +msgstr "" + +# +#, fuzzy +msgid "Set voltage and 22KHz" +msgstr "ضبط الفولتيه و 22KHz" + +msgid "Settings" +msgstr "إعدادات" + +# +msgid "Setup" +msgstr "الضبـط" + +msgid "Setup menu" +msgstr "" + +#, fuzzy +msgid "Setup mode" +msgstr "أسلوب الضبط" + +msgid "Setup your positioner" +msgstr "" + +#, fuzzy +msgid "Setup your satellite equipment" +msgstr "معدات القمر" + +# +#, python-format +msgid "Shall the USB stick wizard proceed and program the image file %s into flash memory?" +msgstr "" + +msgid "Sharpness" +msgstr "الحده" + +msgid "Short filenames" +msgstr "" + +msgid "Show EIT now/next in infobar" +msgstr "" + +#, fuzzy +msgid "Show EPG for current channel..." +msgstr "شاهد شريط المعلومات عند تغيير الحدث" + +# +#, fuzzy +msgid "Show EPG..." +msgstr "إظهار دليل البرامج الالكترونى" + +msgid "Show Games show" +msgstr "" + +msgid "Show SNR percentage instead of dB value" +msgstr "" + +msgid "Show VCR scart on main menu" +msgstr "" + +# +#, fuzzy +msgid "Show WLAN status" +msgstr "أظهر حالة الشبكه الواسعه" + +msgid "Show animation while busy" +msgstr "" + +#, fuzzy +msgid "Show background in radio mode" +msgstr "صورة الخلفيه" + +msgid "Show bouquet selection menu" +msgstr "" + +msgid "Show busy indicator when the system is busy." +msgstr "" + +msgid "Show channel numbers in channel selection" +msgstr "" + +msgid "Show columns" +msgstr "" + +msgid "Show crypto icons" +msgstr "" + +msgid "Show crypto info in infobar" +msgstr "" + +msgid "Show detailed event info" +msgstr "" + +#, fuzzy +msgid "Show event details" +msgstr "إظهار تفاصيل الحدث" + +# +msgid "Show event-progress in channel selection" +msgstr "" + +#, fuzzy +msgid "Show extended description" +msgstr "إظهار وصف متقدم" + +#, fuzzy +msgid "Show extensions..." +msgstr "مشاهدة الاضافات..." + +msgid "Show icon for new/unseen items" +msgstr "" + +msgid "Show in extensions menu" +msgstr "" + +# +#, fuzzy +msgid "Show info" +msgstr "أظهر المعلومات" + +#, fuzzy +msgid "Show info line" +msgstr "إظهار شريط المعلومات" + +msgid "Show infobar on channel change" +msgstr "شاهد شريط المعلومات عند تغيير القناه" + +msgid "Show infobar on event change" +msgstr "شاهد شريط المعلومات عند تغيير الحدث" + +msgid "Show infobar on skip forward/backward" +msgstr "شاهد شريط المعلومات عند الانتقال للأمام/الخلف" + +msgid "Show latest commits on sourceforge" +msgstr "" + +# +#, fuzzy +msgid "Show message when recording starts" +msgstr "أظهر رساله عندما يبدأ التسجيل" + +# +#, fuzzy +msgid "Show movie lengths in movielist" +msgstr "تحميل طول الفيلم فى قائمة الافلام" + +msgid "Show multi channel EPG" +msgstr "" + +msgid "Show picons in channel list" +msgstr "" + +msgid "Show positioner movement" +msgstr "شاهد حركة الموتور" + +msgid "Show screensaver" +msgstr "" + +msgid "Show second infobar" +msgstr "" + +msgid "Show service type icons" +msgstr "" + +# +msgid "Show services beginning with" +msgstr "إظهر القنوات التى تبدأ بـ" + +#, fuzzy +msgid "Show shutdown menu" +msgstr "إظهار قائمة الاغلاق" + +msgid "Show single service EPG" +msgstr "" + +msgid "Show status icons in Movielist" +msgstr "" + +msgid "Show status icons in movie list" +msgstr "" + +msgid "Show status icons in movielist" +msgstr "" + +# +#, fuzzy +msgid "Show tag menu" +msgstr "أعرض قائمة دى فى دى الرئيسيه" + +# +msgid "Show the radio player..." +msgstr "إظهار مشغل الراديو..." + +# +msgid "Show the tv player..." +msgstr "إظهار مشغل التليفزيون" + +msgid "Show warning when timeshift is stopped" +msgstr "" + +# +msgid "Shows the state of your wireless LAN connection.\n" +msgstr "تشاهد حالة إتصال الشبكه المحليه اللاسلكيه \n" + +#, fuzzy +msgid "Shuffle playlist" +msgstr "مسح قائمة العرض" + +# +msgid "Shutdown" +msgstr "إغلاق" + +msgid "Shutdown when in Standby" +msgstr "" + +msgid "Side by side" +msgstr "" + +msgid "Signal OK, proceeding" +msgstr "" + +msgid "Signal quality" +msgstr "" + +# +#, fuzzy +msgid "Signal strength:" +msgstr "قوة الاشاره" + +# +msgid "Signal: " +msgstr "الاشاره" + +# +msgid "Similar" +msgstr "شبيهه" + +msgid "Similar broadcasts:" +msgstr "إذاعات مماثله :" + +# +msgid "Simple" +msgstr "بسيطه" + +# +msgid "Simple titleset (compatibility for legacy players)" +msgstr "" + +# +msgid "Single" +msgstr "مفرد" + +msgid "Single EPG" +msgstr "دليل برامج واحد" + +# +msgid "Single satellite" +msgstr "قمر واحد" + +# +#, fuzzy +msgid "Single step (GOP)" +msgstr "قمر واحد" + +# +msgid "Single transponder" +msgstr "تردد واحد" + +msgid "Site latitude" +msgstr "" + +msgid "Site longitude" +msgstr "" + +# +msgid "Skin" +msgstr "الجلد" + +# +msgid "Skins" +msgstr "الجلود" + +#, fuzzy +msgid "Skip empty services" +msgstr "إحمى القنوات" + +msgid "Skip internet connection check (disables automatic package installation)" +msgstr "" + +# +#, fuzzy +msgid "Sleep timer" +msgstr "مؤقت النوم" + +msgid "SleepTimer Configuration" +msgstr "" + +msgid "Sleeptimer" +msgstr "" + +#, fuzzy +msgid "Slide picture in loop" +msgstr "صورة الشريحة في حلقة" + +#, fuzzy +msgid "Slide show interval (sec.)" +msgstr "الفاصل الزمنى بين عرض الرائح(ثانيه)" + +#, python-format +msgid "Slot %d" +msgstr "فتحة %d" + +msgid "Slovak" +msgstr "" + +# +msgid "Slovenian" +msgstr "سلوفانى" + +msgid "Slow" +msgstr "بطيئ" + +#, fuzzy +msgid "Slow motion speeds" +msgstr "سرعات العرض البطئ" + +# +#, fuzzy +msgid "Small progress" +msgstr "جارى التقدم" + +msgid "Social/Political/Economics" +msgstr "" + +msgid "SoftCam / CI" +msgstr "" + +#, fuzzy +msgid "Softcam type" +msgstr "برنامج تشغيلى" + +msgid "Software" +msgstr "برنامج تشغيلى" + +msgid "Software management" +msgstr "التحكم فى البرنامج التشغيلى" + +msgid "Software manager setup" +msgstr "" + +msgid "Software restore" +msgstr "إستعادة البرنامج التشغيلى" + +msgid "Software update" +msgstr "ترقية البرنامج التشغيلى" + +msgid "Softwaremanager information" +msgstr "" + +msgid "Some plugins are not available:\n" +msgstr "بعض البلج إنز غير متوفر : \n" + +#, python-format +msgid "Sorry, %s has not been installed!" +msgstr "" + +msgid "Sorry, deleting directories can (for now) only be done through the trash can." +msgstr "" + +#, fuzzy +msgid "Sorry, no backups found!" +msgstr "عفوا.. لم يتم العثور على أى نسخه إحتياطيه !" + +# +#, fuzzy +msgid "Sorry, no details available!" +msgstr "عفوا ، لا يوجد تفاصيل متاحه !" + +#, fuzzy +msgid "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." +msgstr "" +"المكان الذى تريد وضع النسخه الاحتياطيه فيه لا يمكن الكتابه عليه \n" +"من فضلك أختار مكان آخر." + +msgid "Sort" +msgstr "" + +# +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort A-Z" +msgstr "تصنيف أبجدى" + +msgid "Sort by" +msgstr "" + +msgid "Sort list:" +msgstr "" + +# +#. TRANSLATORS: This must fit into the header button in the EPG-List +#, fuzzy +msgid "Sort time" +msgstr "تصنيف الوقت" + +# +msgid "Sound" +msgstr "صـوت" + +# +#, fuzzy +msgid "Sound carrier" +msgstr "حامل الصوت" + +msgid "Source request" +msgstr "" + +# +msgid "South" +msgstr "جنوب" + +# +msgid "Spanish" +msgstr "أسبانى" + +msgid "Specify the end time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the end time until the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify the start time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the start time when the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify timeframe to ignore inactivity sleeptimer" +msgstr "" + +msgid "Specify timeframe to ignore the shutdown in standby" +msgstr "" + +# +msgid "Split preview mode" +msgstr "تقسيم وضعية المعاينه" + +msgid "Splitscreen" +msgstr "" + +msgid "Sports" +msgstr "" + +#, fuzzy +msgid "Standard" +msgstr "قياسى" + +msgid "Standart list" +msgstr "" + +msgid "Standby" +msgstr "وضع الاستعداد" + +#, fuzzy +msgid "Standby / restart" +msgstr "وضع الاستعداد/إعاده التشغيل" + +msgid "Standby after current event" +msgstr "" + +#, python-format +msgid "Standby fan %d PWM" +msgstr "" + +# +#, fuzzy, python-format +msgid "Standby fan %d voltage" +msgstr "مروحه %d فولتيه" + +msgid "Standby in " +msgstr "" + +msgid "StandbyLED" +msgstr "" + +# +msgid "Start from the beginning" +msgstr "أبدأ من البدايه" + +msgid "Start offline decode" +msgstr "" + +# +msgid "Start recording?" +msgstr "أبـدأ التسجيل؟" + +# +msgid "Start test" +msgstr "أختبار البدأ" + +# +#, fuzzy +msgid "Start time" +msgstr "وقت البـدأ" + +msgid "Start time to ignore inactivity sleeptimer" +msgstr "" + +msgid "Start time to ignore shutdown in standby" +msgstr "" + +#, fuzzy +msgid "Start timeshift" +msgstr "أبدأ تايم شفت" + +msgid "Start with list screen" +msgstr "" + +msgid "Starting on" +msgstr "يبدأ فى" + +msgid "Startup the set top box in standby" +msgstr "" + +msgid "Startup to Standby" +msgstr "" + +# +msgid "Step east" +msgstr "خطوه ناحية الشرق" + +# +msgid "Step west" +msgstr "خطوه ناحية الغري" + +msgid "Stepped east" +msgstr "" + +msgid "Stepped west" +msgstr "" + +# +msgid "Stop" +msgstr "إيقاف" + +#, fuzzy +msgid "Stop PiP" +msgstr "إيقاف صوره داخل صوره" + +# +msgid "Stop current event and disable coming events" +msgstr "إيقاف الحدث الحالى وتعطيل الاحداث القادمه" + +# +msgid "Stop current event but not coming events" +msgstr "إقاف الحدث الحالى فقط وليس الاحداث القادمه" + +# +#, fuzzy +msgid "Stop entry" +msgstr "إيقاف الاختبار" + +# +msgid "Stop playing this movie?" +msgstr "إيقاف عرض هذا الفيلم؟" + +msgid "Stop recording" +msgstr "" + +msgid "Stop recording and delete" +msgstr "" + +msgid "Stop service on return to movie list" +msgstr "" + +# +msgid "Stop test" +msgstr "إيقاف الاختبار" + +msgid "Stop testing plane after # failed transponders" +msgstr "إيقاف خطة الاختبار بعد # إرسال فاشل" + +msgid "Stop testing plane after # successful transponders" +msgstr "إيقاف خطة الاختبار بعد # إرسال ناجح" + +msgid "Stop timer recording" +msgstr "" + +#, fuzzy +msgid "Stop timeshift" +msgstr "إيقاف التايم شفت" + +# +#, fuzzy +msgid "Stop timeshift?" +msgstr "إيقاف التايم شفت؟" + +msgid "Stopped" +msgstr "" + +msgid "Store at index" +msgstr "" + +msgid "Store position" +msgstr "تخزين الموقع" + +# +msgid "Stored position" +msgstr "الوضع المخزن" + +msgid "Stream" +msgstr "" + +msgid "Stream request" +msgstr "" + +msgid "Strongest position" +msgstr "" + +# +msgid "Subservice list..." +msgstr "قائمة الخدمات الفرعيه..." + +# +msgid "Subservices" +msgstr "الخدمات الفرعيه" + +msgid "Subtitle Quickmenu" +msgstr "" + +# +#, fuzzy +msgid "Subtitle alignment" +msgstr "إختيار العناوين الفرعيه" + +msgid "Subtitle border width" +msgstr "" + +msgid "Subtitle delay when timing is bad" +msgstr "" + +msgid "Subtitle delay when timing lacks" +msgstr "" + +# +#, fuzzy +msgid "Subtitle font size" +msgstr "العناوين الفرعيه" + +msgid "Subtitle language selection 1" +msgstr "" + +msgid "Subtitle language selection 2" +msgstr "" + +msgid "Subtitle language selection 3" +msgstr "" + +msgid "Subtitle language selection 4" +msgstr "" + +# +#, fuzzy +msgid "Subtitle position" +msgstr "إختيار العناوين الفرعيه" + +# +msgid "Subtitle selection" +msgstr "إختيار العناوين الفرعيه" + +msgid "Subtitle selection..." +msgstr "" + +msgid "Subtitle settings" +msgstr "" + +# +msgid "Subtitles" +msgstr "العناوين الفرعيه" + +# +msgid "Sun" +msgstr "الاحد" + +# +msgid "Sunday" +msgstr "الاحد" + +#, fuzzy +msgid "Swap PiP and main picture" +msgstr "تحريك صوره داخل صوره الى الصوره الرئيسيه" + +# +#, fuzzy +msgid "Swap services" +msgstr "القنوات/الخدمات" + +# +msgid "Swedish" +msgstr "سويدى" + +msgid "Switch TV to correct input" +msgstr "" + +msgid "Switch between filelist/playlist" +msgstr "" + +msgid "Switch between normal mode and list mode" +msgstr "" + +msgid "Switch to HDMI in mode" +msgstr "" + +#, fuzzy +msgid "Switch to filelist" +msgstr "الانتقال الى قائمة الملفات" + +msgid "Switch to next channel" +msgstr "" + +#, fuzzy +msgid "Switch to next channel in history" +msgstr "القناه التاليه فى التاريخ" + +# +#, fuzzy +msgid "Switch to next sub service" +msgstr "الانتقال الى الخدمه الفرعيه التاليه" + +#, fuzzy +msgid "Switch to playlist" +msgstr "الانتقال الى قائمه الاغانى" + +# +#, fuzzy +msgid "Switch to previous channel" +msgstr "الانتقال الى الفرعيه السابقه" + +# +#, fuzzy +msgid "Switch to previous channel in history" +msgstr "القناه السابقه تاريخيا" + +# +#, fuzzy +msgid "Switch to previous sub service" +msgstr "الانتقال الى الفرعيه السابقه" + +# +msgid "Switchable tuner types:" +msgstr "" + +msgid "Symbol rate" +msgstr "" + +msgid "Symbol rate:" +msgstr "" + +msgid "Sync failure moving back to origin !" +msgstr "" + +# +msgid "System" +msgstr "النـظام" + +# +#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) +msgid "TRANSLATOR_INFO" +msgstr "" + +# +msgid "TS file is too large for ISO9660 level 1!" +msgstr "" + +msgid "TSID" +msgstr "" + +msgid "TV physical address report" +msgstr "" + +msgid "TXT PID" +msgstr "" + +msgid "Table of contents for collection" +msgstr "" + +msgid "Tags" +msgstr "شعارات" + +msgid "Teletext subtitle color" +msgstr "" + +#, fuzzy +msgid "Temperature and fan control" +msgstr "درجة الحراره والتحكم فى المروحه" + +# +msgid "Terrestrial" +msgstr "" + +msgid "Terrestrial provider" +msgstr "مزود أرضى" + +msgid "Test DiSEqC settings" +msgstr "إختبار إعدادات الدايزك" + +# +msgid "Test mode" +msgstr "وضع الاختبار" + +msgid "Test the network configuration of your receiver.\n" +msgstr "" + +# +#, fuzzy +msgid "Test type" +msgstr "نوع الاختبار" + +#, fuzzy +msgid "Text color" +msgstr "لون النص" + +msgid "Thai" +msgstr "" + +msgid "" +"Thank you for using the wizard.\n" +"Please press OK to continue." +msgstr "" +"شكرا لإستخدامك نافذة الاعدادات . \n" +"من فضلك أضغط موافق للاستمرار ." + +#, fuzzy +msgid "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." +msgstr "" +"شكرا لإستخدامك نافذة الاعدادات . \n" +"من فضلك أضغط موافق للاستمرار ." + +msgid "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?" +msgstr "" + +msgid "The PIN code has been changed successfully." +msgstr "" + +msgid "The PIN codes you entered are different." +msgstr "" + +msgid "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" +msgstr "" + +msgid "The backup failed. Please choose a different backup location." +msgstr "فشل عمل نسخه إحتياطيه ، من فضلك أختار مان آخر للنسخه الإحتياطيه ." + +#, python-format +msgid "" +"The current beta image might not be stable.\n" +"For more information see %s." +msgstr "" + +# +#, python-format +msgid "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." +msgstr "" +"الدليل %s لا يمكن الكتابه فيه.\n" +" تأكد من إختيار دليل بديل يمكن الكتابه فيه" + +#, python-format +msgid "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" +msgstr "" +"تم العثور على هذه الاجهزه:\n" +"\n" +"%s \n" +"\n" +"هل تريد كتابه شاحن الـusb على هذه العصا؟" + +# +msgid "The following files were found..." +msgstr "تم العثور على هذه الملفات" + +msgid "The md5sum validation failed, the file may be corrupted!" +msgstr "" + +#, fuzzy +msgid "" +"The network wizard extension is not installed!\n" +"Please install it." +msgstr "" +"نافذة إعدادات الشبكه غير مثبته \n" +"من فضلك قم بتثبيتها ." + +#, python-format +msgid "The path %s already exists." +msgstr "المسار %s موجود سلفا" + +# +msgid "The pin code you entered is wrong." +msgstr "الرقم السرى الذى ادخلته خطأ" + +# +#, python-format +msgid "The results have been written to %s." +msgstr "" + +# +msgid "The sleep timer has been activated." +msgstr "تم تنشيط مؤقت النوم" + +# +msgid "The sleep timer has been disabled." +msgstr "تم تعطيل مؤقت النوم" + +#, fuzzy +msgid "" +"The software management extension is not installed!\n" +"Please install it." +msgstr "" +"إن إضافة التحكم فى البرنامج التشغيلى غير مثبته ّ \n" +"من فضلك ثبتها ." + +#, python-format +msgid "The status of the current beta image could not be checked because %s can not be reached." +msgstr "" + +msgid "The timer file (timers.xml) is corrupt and could not be loaded." +msgstr "ملف المؤقت (timers.xml) فاسد ولا يمكن تحميله" + +#, fuzzy +msgid "The user interface of your receiver is restarting" +msgstr "رجاء الانتظار.... جارى إعادة تشغيل الشبكه" + +msgid "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" +msgstr "" + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." +msgstr "" +"بلج إن الشبكه المحليه اللاسلكيه غير مثبت ! \n" +"من فضلك ثبته أولا ثم أختار ماذا تريد أن تفعل بعد ذك ." + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it." +msgstr "" +"بلج إن الشبكه المحليه اللاسلكيه غير مثبت ! \n" +"من فضلك ثبته" + +msgid "The wizard can backup your current settings. Do you want to do a backup now?" +msgstr "من خلال هذه النافذه يمكنك عمل نسخه إحتياطيه للإعدادات الحاليه . هل تريد عمل نسخه إحتياطيه الان ؟" + +#, python-format +msgid "The wizard found a configuration backup. Do you want to restore your old settings from %s?" +msgstr "" + +msgid "The wizard is finished now." +msgstr "إنتهاء نافذة الاعدادات الان ." + +msgid "There are at least " +msgstr "يوجد على الأقل" + +#, fuzzy, python-format +msgid "There are at least %s updates available." +msgstr "لا يوجد تحديثات متاحه ." + +# +msgid "There are currently no outstanding actions." +msgstr "" + +msgid "There are no updates available." +msgstr "لا يوجد تحديثات متاحه ." + +msgid "There is no signal to lock on !" +msgstr "" + +msgid "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" +msgstr "" +"قد لا يكون هناك مساحه كافيه على القسم المختار . \n" +"هل تريد فعلا الاستمرار ؟" + +# +msgid "This DVD RW medium is already formatted - reformatting will erase all content on the disc." +msgstr "" + +msgid "" +"This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!" +msgstr "" + +msgid "This plugin is installed." +msgstr "هذا البلج إن مثبت ." + +msgid "This plugin is not installed." +msgstr "هذا البلج إن غير مثبت ." + +msgid "This plugin will be installed." +msgstr "سيتم تثبيت هذا البلج إن ." + +msgid "This plugin will be removed." +msgstr "سيتم حذف هذا البلج إن ." + +#, python-format +msgid "This receiver cannot decode %s streams!" +msgstr "" + +#, fuzzy +msgid "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration" +msgstr "" +"هذه التجربه ستفحص اسم خادم مكون :\n" +"إذا جاءتك رسالة \"غير مؤكد\" : \n" +"-تأكد من إعدادات DHCP وضبط المحول والكابل \n" +"-إذا كنت قد قمت بتكوين أسم الخادم يدويا ، من فضلك تأكد من المدخلات فى خانة اسم الخادم فى التكوين" + +#, fuzzy +msgid "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" +msgstr "" +"هذه التجربه ستحدد ما إذا كان كابل الشبكه متصل بمحول الشبكه \n" +"إذا جاءتك رسالة \"غير متصل\" : \n" +"-تاكد من أن كابل الشبكه مشبوك \n" +"-تأكد أن الكابل غير مقطوع" + +#, fuzzy +msgid "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" +msgstr "" +"هذه التجربه ستحدد العثور على IP صالح فى محول الشبكه المحليه. \n" +"إذا جاءتك رسالة :غير مؤكد: : \n" +"-لم يتم العثور على IP صالح . \n" +"-تأكد من إعدادات DHCP وضبط المحول والكابل" + +msgid "" +"This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." +msgstr "" + +#, fuzzy +msgid "This test detects your configured LAN adapter." +msgstr "هذه التجربه تكتشف وجود محول شبكه محليه مكونه ." + +msgid "" +"This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\n" +"Are you sure?" +msgstr "" + +# +msgid "Three" +msgstr "ثلاثه" + +# +msgid "Threshold" +msgstr "" + +# +msgid "Thu" +msgstr "" + +# +msgid "Thumbnails" +msgstr "" + +# +msgid "Thursday" +msgstr "الخميس" + +# +msgid "Time" +msgstr "وقت" + +# +#, fuzzy +msgid "Time scale" +msgstr "إختيار المؤقت" + +# +msgid "Timer" +msgstr "المؤقت" + +msgid "Timer Overview" +msgstr "" + +# +#, fuzzy +msgid "Timer edit" +msgstr "تحرير المؤقت" + +# +#, fuzzy +msgid "Timer editor" +msgstr "تحرير المؤقت" + +# +msgid "Timer entry" +msgstr "إدخال المؤقت" + +msgid "Timer log" +msgstr "سجل المؤقت" + +# +msgid "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" +msgstr "" + +# +#, fuzzy +msgid "Timer overview" +msgstr "إدخال المؤقت" + +# +#, fuzzy +msgid "Timer recording location" +msgstr "موضع تسجيل المؤقت" + +# +msgid "Timer sanity error" +msgstr "خطأ إستقامة المؤقت" + +# +msgid "Timer selection" +msgstr "إختيار المؤقت" + +msgid "Timer selection..." +msgstr "" + +# +#, fuzzy +msgid "Timer type" +msgstr "نوع المؤقت" + +# +msgid "Timeshift" +msgstr "تحول الوقت" + +msgid "Timeshift Live" +msgstr "" + +# +msgid "Timeshift location" +msgstr "موقع تحول الوقت" + +# +msgid "Timeshift not possible!" +msgstr "تحول الوقت غير ممكن" + +# +msgid "Timezone" +msgstr "منطقه الوقت" + +# +msgid "Title" +msgstr "عنوان" + +# +msgid "Title properties" +msgstr "خصائص العنوان" + +# +msgid "Titleset mode" +msgstr "" + +msgid "To audio selection" +msgstr "" + +msgid "To subtitle selection" +msgstr "" + +msgid "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." +msgstr "" + +# +msgid "Today" +msgstr "اليوم" + +msgid "Toggle a cut mark at the current position" +msgstr "" + +# +#, fuzzy +msgid "Tone amplitude" +msgstr "مدى النغمه" + +# +msgid "Tone mode" +msgstr "وضعية النغمه" + +# +msgid "Toneburst" +msgstr "نغمة إنفجار" + +# +msgid "Toneburst A/B" +msgstr "Toneburst A/B" + +msgid "Top and bottom" +msgstr "" + +# +msgid "Track" +msgstr "مسار" + +# +msgid "Translation" +msgstr "ترجمه" + +# +msgid "Translation:" +msgstr "ترجمه:" + +msgid "Translations" +msgstr "" + +# +msgid "Transmission mode" +msgstr "وضع النقل" + +# +msgid "Transponder" +msgstr "التردد" + +# +#, fuzzy +msgid "Transponder type" +msgstr "نوع التردد" + +msgid "Trash can" +msgstr "" + +# +msgid "Tries left:" +msgstr "" + +msgid "Try to find used transponders in cable network.. please wait..." +msgstr "محاولة إيجاد ترددات عامله فى كابل الشبكه. رجاء الانتظار..." + +# +msgid "Trying to download a new packetlist. Please wait..." +msgstr "" + +# +msgid "Tue" +msgstr "الثلاثاء" + +# +msgid "Tuesday" +msgstr "الثلاثاء" + +msgid "Tune" +msgstr "توليف" + +#, fuzzy +msgid "Tune and focus" +msgstr "حالة الموالف" + +msgid "Tune failed!" +msgstr "فشل التوليف" + +# +msgid "Tuner" +msgstr "الموالف" + +msgid "Tuner configuration" +msgstr "تهيئة الموالف" + +msgid "Tuner is not supported" +msgstr "" + +#, fuzzy +msgid "Tuner slot" +msgstr "موضع الموالف" + +msgid "Tuner status" +msgstr "حالة الموالف" + +#, fuzzy, python-format +msgid "Tuner status %s" +msgstr "حالة الموالف" + +msgid "Tuner type" +msgstr "نوع الموالف" + +msgid "Turkish" +msgstr "تركى" + +msgid "Turn on the power LED during standby." +msgstr "" + +msgid "Turning step size" +msgstr "" + +# +msgid "Two" +msgstr "اثنين" + +# +msgid "Type" +msgstr "نوع" + +# +msgid "Type of scan" +msgstr "نوع البحث" + +# +msgid "USALS" +msgstr "USALS" + +msgid "USALS calibration" +msgstr "" + +msgid "USB stick" +msgstr "" + +# +msgid "USB stick wizard" +msgstr "" + +msgid "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" + +msgid "Undo install" +msgstr "تراجع عن التثبيت" + +msgid "Undo uninstall" +msgstr "تراجع عن الغاء التثبيت" + +msgid "Unencrypted" +msgstr "" + +# +msgid "UnhandledKey" +msgstr "" + +# +msgid "Unicable" +msgstr "" + +# +msgid "Unicable LNB" +msgstr "" + +# +msgid "Unicable Martix" +msgstr "" + +msgid "Uninstall" +msgstr "تراجع عن التثبيت" + +# +msgid "Universal LNB" +msgstr "" + +msgid "Unknown" +msgstr "" + +msgid "Unmount" +msgstr "" + +msgid "Unsupported" +msgstr "غير مدعم" + +# +msgid "Update" +msgstr "تحديث" + +msgid "Update and ask to reboot" +msgstr "" + +msgid "Update and reboot (recommended)" +msgstr "" + +#, fuzzy +msgid "Update channel list only" +msgstr "القناه التاليه فى التاريخ" + +#, python-format +msgid "Update completed, %d package was installed." +msgid_plural "Update completed, %d packages were installed." +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" +msgstr[3] "" +msgstr[4] "" +msgstr[5] "" + +msgid "Update completed. Do you want to reboot your receiver?" +msgstr "" + +msgid "Update failed. Your receiver does not have a working internet connection." +msgstr "" + +msgid "Update has completed." +msgstr "" + +# +msgid "Updatefeed not available." +msgstr "تغذية التحديث غير متاحه" + +# +msgid "Updating software catalog" +msgstr "جارى تحديث فهرس البرنامج التشغيلى" + +# +msgid "Upgrading" +msgstr "جارى الترقيه" + +# +msgid "Use" +msgstr "استخدم" + +# +msgid "Use DHCP" +msgstr "استخدمDHCP" + +msgid "Use EIT EPG information when it is available." +msgstr "" + +msgid "Use FreeSat EPG information when it is available." +msgstr "" + +msgid "Use MHW EPG information when it is available." +msgstr "" + +msgid "Use Netmed EPG information when it is available." +msgstr "" + +msgid "Use TV remote control" +msgstr "" + +# +#, fuzzy +msgid "Use USALS for this sat" +msgstr "USALS für diesen Sat benutzen" + +msgid "Use ViaSat EPG information when it is available." +msgstr "" + +msgid "Use Virgin EPG information when it is available." +msgstr "" + +# +msgid "Use a gateway" +msgstr "" + +msgid "Use fastscan channel names" +msgstr "" + +msgid "Use fastscan channel numbering" +msgstr "" + +msgid "Use frequency or channel" +msgstr "" + +msgid "Use individual settings for each directory" +msgstr "" + +#, fuzzy +msgid "Use interface" +msgstr "استخدم الواجهه" + +msgid "Use official channel numbering" +msgstr "" + +msgid "Use original DVB subtitle position" +msgstr "" + +msgid "Use original teletext position" +msgstr "" + +msgid "Use power measurement" +msgstr "استخدم قـياس الطاقه" + +#, fuzzy +msgid "Use the network wizard to configure selected network adapter" +msgstr "استخدم نافذة الأعدادت لتهيئة محول الشبكه المختار" + +#, fuzzy +msgid "Use the network wizard to configure your network\n" +msgstr "أستخدم نافذة الاعدادات لتهيئة الشبكه \n" + +msgid "Use the up/down keys on your remote control to select an option. After that, press OK." +msgstr "اضغط المفتاح العلوى أو السفلى من الريموت وحدد إختيارك ثم أضغط موافق" + +#, fuzzy +msgid "Use the wizard to set up basic features" +msgstr "استخدم نافذة الاعدادات لعمل الاعدادات الاساسيه " + +#, fuzzy +msgid "Use these input device settings?" +msgstr "استخدام إعدادات تعزيز الفيديو هذه ؟" + +#, fuzzy +msgid "Use these settings?" +msgstr "إستعادة إعدادات النظام" + +msgid "Use this video enhancement settings?" +msgstr "استخدام إعدادات تعزيز الفيديو هذه ؟" + +#, fuzzy +msgid "Use trash can in movielist" +msgstr "العوده الى قائمة الأفلام" + +# +msgid "Used service scan type" +msgstr "نوع البحث عن القنوات المستخدم" + +msgid "User - bouquets" +msgstr "" + +# +msgid "User defined" +msgstr "يحددها المستخدم" + +msgid "User defined transponder" +msgstr "" + +#, fuzzy +msgid "User interface" +msgstr "استخدم الواجهه" + +# +msgid "Username" +msgstr "اسم المستخدم" + +#, python-format +msgid "Using LNB %d" +msgstr "" + +msgid "Using fixed address" +msgstr "" + +#, python-format +msgid "Using tuner %s" +msgstr "" + +msgid "Usually when the subtitle language is the same as the audio language, the subtitles will not be used. Enable this option to allow these subtitles to be used." +msgstr "" + +# +msgid "VCR scart" +msgstr "وصله فيديو كاسيت" + +# +msgid "VMGM (intro trailer)" +msgstr "" + +msgid "Vertical" +msgstr "رأسى" + +msgid "Vertical turning speed" +msgstr "" + +msgid "Video PID" +msgstr "" + +msgid "Video enhancement preview" +msgstr "معاينة تعزيز الفيديو" + +msgid "Video enhancement settings" +msgstr "إعدادات تعزيز الفيديو" + +msgid "Video enhancement setup" +msgstr "ضبط تعزيز الفيديو" + +#, fuzzy +msgid "Video fine tuning" +msgstr "الضبط الدقيق للفيديو" + +msgid "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." +msgstr "" + +msgid "Video mode selection." +msgstr "إختيار وضعية الفيديو." + +# +#, fuzzy +msgid "Video output" +msgstr "مخرج الفيديو" + +# +#, fuzzy +msgid "Video setup" +msgstr "ضبط الفيديو" + +# +#, fuzzy +msgid "Video wizard" +msgstr "نافذة إعدادات الفيديو" + +#, python-format +msgid "Video: %s fps" +msgstr "" + +msgid "VideoMode" +msgstr "" + +msgid "Videocodec" +msgstr "" + +msgid "Videoformat" +msgstr "" + +msgid "Videosize" +msgstr "" + +# +msgid "View Rass interactive..." +msgstr "" + +# +msgid "View details" +msgstr "مشاهدة تفاصيل" + +# +msgid "View list of available " +msgstr "" + +# +msgid "View list of available CommonInterface extensions" +msgstr "مشاهدة قائمه بإضافات وحدة التحكم المشترك" + +# +msgid "View list of available EPG extensions." +msgstr "" + +msgid "View list of available Satellite equipment extensions." +msgstr "شاهد قائمه بالاضافات المتاحه لمعدات القمر." + +msgid "View list of available communication extensions." +msgstr "شاهد قائمه بإلاضافات المتاحه للاتصال." + +msgid "View list of available default settings" +msgstr "شاهد قائمه بالاعدادات الافتراضيه المتاحه" + +#, fuzzy +msgid "View list of available display and userinterface extensions." +msgstr "شاهد قائمه يالاضافت المتاحه للعرض وواجهة المستخدم." + +msgid "View list of available multimedia extensions." +msgstr "شاهد قائمه بإضافات الوسائط المتعدده المتاحه" + +msgid "View list of available networking extensions" +msgstr "شاهد قائمه بإضافات الشبكه المتاحه" + +msgid "View list of available recording extensions" +msgstr "شاهد قائمه بإضافات التسجيل المتاحه" + +msgid "View list of available skins" +msgstr "شاهد قائمه بالجلد المتاح" + +msgid "View list of available software extensions" +msgstr "شاهد قائمه بإضافات البرنامج التشغيلى المتاحه" + +msgid "View list of available system extensions" +msgstr "شاهد قائمه بإضافات النظام المتاحه" + +# +#, fuzzy +msgid "View photos..." +msgstr "مشاهدة صور..." + +# +msgid "View teletext..." +msgstr "" + +# +#, fuzzy +msgid "View video CD..." +msgstr "مشاهدة فيديو سى دى" + +# +#, fuzzy +msgid "Virtual keyboard" +msgstr "لوحة مفاتيح تخيليه" + +# +msgid "Voltage mode" +msgstr "وضعيه الفولت" + +# +msgid "Volume" +msgstr "درجه الصوت" + +# +msgid "W" +msgstr "" + +# +msgid "WEP" +msgstr "" + +msgid "WLAN connection" +msgstr "إتصال شبكه واسعه" + +# +msgid "WPA" +msgstr "WPA" + +# +msgid "WPA or WPA2" +msgstr "WPA أو WPA2" + +# +msgid "WPA2" +msgstr "WPA2" + +# +msgid "WSS on 4:3" +msgstr "" + +# +msgid "Waiting" +msgstr "جارى الانتظار" + +msgid "Waiting for mount" +msgstr "" + +msgid "Waiting for partition" +msgstr "" + +msgid "Wakeup" +msgstr "" + +msgid "Wakeup TV from standby" +msgstr "" + +msgid "Wakeup receiver for start timer" +msgstr "" + +msgid "Wakeup receiver from standby" +msgstr "" + +msgid "Wakeup signal from TV" +msgstr "" + +msgid "Wakeup type" +msgstr "" + +msgid "Warning: no LNB; using factory defaults." +msgstr "" + +# +#, fuzzy +msgid "Watch movies..." +msgstr "عرض الافلام المسجله" + +#, fuzzy +msgid "Watch recordings..." +msgstr "جارى التسجيل....." + +# +msgid "Wed" +msgstr "الاربعاء" + +# +msgid "Wednesday" +msgstr "الاربعاء" + +# +msgid "Weekday" +msgstr "يوم الاسبوع" + +msgid "Weighted position" +msgstr "" + +msgid "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." +msgstr "" + +msgid "Welcome to the image upgrade wizard. The wizard will assist you in upgrading the firmware of your receiver by providing a backup facility for your current settings and a short explanation of how to upgrade your firmware." +msgstr "" + +msgid "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" +msgstr "" + +msgid "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." +msgstr "" + +# +msgid "Welcome..." +msgstr "مرحبا..." + +# +msgid "West" +msgstr "غرب" + +msgid "West limit set" +msgstr "" + +# +msgid "What do you want to scan?" +msgstr "ماذا تريد ان تبحث ؟" + +msgid "When enabled the PiP can be closed by the exit button." +msgstr "" + +msgid "When enabled the arrow buttons around the OK button will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled the left, right, CH+/-, B+/-, P+/- buttons will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled you can specify a timeframe to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "When enabled you can specify a timeframe were the inactivity sleeptimer is ignored. Not the detection is disabled during this timeframe but the inactivity timeout is disabled" +msgstr "" + +msgid "When enabled you can zap channels with the CH+/-, B+/-, P+/- buttons instead of opening the channel selection list." +msgstr "" + +msgid "When enabled you get the channel selection list via the OK button, the infobar toggle is then transfered to exit button" +msgstr "" + +msgid "When enabled, AIT data will be included in http streams. This allows a client receiver to use HbbTV." +msgstr "" + +msgid "When enabled, ECM data will be included in http streams. This allows a client receiver to do the descrambling." +msgstr "" + +msgid "When enabled, EIT data will be included in http streams. This allows a client receiver to show EPG." +msgstr "" + +msgid "When enabled, a popup message will be shown when a movie has finished and the next one will start." +msgstr "" + +msgid "When enabled, a popup message will be shown when a recording starts." +msgstr "" + +msgid "When enabled, a radio background image will be visible while listening to a radio channel." +msgstr "" + +msgid "When enabled, a recording is allowed to interrupt live tv, when there are no free tuners." +msgstr "" + +msgid "When enabled, a warning will be displayed and the user will get an option to stop or to continue the timeshift." +msgstr "" + +msgid "When enabled, authentication is required to watch http streams." +msgstr "" + +msgid "When enabled, channel numbering will start at '1' for each bouquet." +msgstr "" + +msgid "When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen." +msgstr "" + +msgid "When enabled, continue to the next bouquet when the last channel of the current bouquet is reached while changing channels." +msgstr "" + +msgid "When enabled, deleted recordings are moved to the trash can, instead of being deleted immediately." +msgstr "" + +msgid "When enabled, display the EIT now/next eventdata in infobar. When disabled, display now/next eventdata from the EPG cache instead." +msgstr "" + +msgid "When enabled, encryption info will be shown in the infobar (when supported by the skin)." +msgstr "" + +msgid "When enabled, error messages related to the Common Interface module will not be shown." +msgstr "" + +msgid "When enabled, error messages related to zapping will not be shown." +msgstr "" + +msgid "When enabled, external subtitles will be always turned on for playback movie." +msgstr "" + +msgid "When enabled, graphical DVB subtitles are preferred over teletext subtitles, when both types are available." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be centered horizontally." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be displayed at their original position." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be displayed in yellow, instead of the original color." +msgstr "" + +msgid "When enabled, http streams are descrambled on the server side. The (remote) client receiver does not have to do descrambling." +msgstr "" + +msgid "When enabled, it is possible to leave the movieplayer with exit." +msgstr "" + +msgid "When enabled, measure power consumption to detect when the rotor stops turning (when supported by the tuner)." +msgstr "" + +msgid "When enabled, number markers will be hiden." +msgstr "" + +msgid "When enabled, services may be grouped in multiple bouquets." +msgstr "" + +msgid "When enabled, show channel numbers in the channel selection screen." +msgstr "" + +msgid "When enabled, subtitles for the hearing impaired can be used." +msgstr "" + +msgid "When enabled, subtitles for the hearing impaired will be preferred over normal subtitles, when both types are available." +msgstr "" + +msgid "When enabled, teletext pages will be cached, allowing faster access." +msgstr "" + +msgid "When enabled, teletext subtitles will be displayed at their original position." +msgstr "" + +msgid "When enabled, the VCR scart option will be shown on the main menu" +msgstr "" + +msgid "When enabled, the channel selection list will be hidden while listening to a radio channel" +msgstr "" + +msgid "When enabled, the infobar will be displayed when a new event starts." +msgstr "" + +msgid "When enabled, the infobar will be displayed when changing channels." +msgstr "" + +msgid "When enabled, the infobar will be displayed when skipping forwards/backwards during media playback." +msgstr "" + +msgid "When enabled, the lenght of each recording will be shown in the movielist (this might cause some additional loading time)." +msgstr "" + +msgid "When enabled, the original line breaks will be removed from the teletext subtitles." +msgstr "" + +msgid "When enabled, the receiver will automatically use the audio track which you selected before." +msgstr "" + +msgid "When enabled, the receiver will automatically use the subtitles which you selected before." +msgstr "" + +msgid "When enabled, the receiver will no longer monitor the tuned transponder for possible changes. Do not use this option unless you know what you are doing." +msgstr "" + +msgid "When enabled, the receiver will select an AC3 track (when available)." +msgstr "" + +msgid "When enabled, the receiver will select an AC3+ track (when available)." +msgstr "" + +msgid "When enabled, timeshift starts automatically in background after specified time." +msgstr "" + +#, fuzzy +msgid "When enabled, use DHCP for the IP configuration." +msgstr "فتح تكوين أسم الخادم" + +msgid "When enabled, your receiver will detect activity on the VCR SCART input." +msgstr "" + +msgid "When nonzero, a recording will start earlier than the starting time indicated by the EPG." +msgstr "" + +msgid "When nonzero, a recording will stop later than the ending time indicated by the EPG." +msgstr "" + +msgid "When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture." +msgstr "" + +msgid "When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture." +msgstr "" + +msgid "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" +msgstr "" +"عند العوده الى ضبط المصنع ستفقد كل معلومات الضبط \n" +"(بما فى ذلك الباقات والقنوات ومعلومات القمر...)\n" +"بعد الانتهاء من العوده الى ضبط المصنع سيتم عمل إعادة تشغيل اتوماتيكيا للرسيفر !\n" +"\n" +"هل تريد فعلا العوده الى ضبط المصنع ؟" + +msgid "Where do you want to backup your settings?" +msgstr "هل تريد فعلا عمل نسخه إحتياطيه للاعدادات ؟" + +# +msgid "Where to save temporary timeshift recordings?" +msgstr "أين تحفظ تسجيلات التايم شفت المؤقته؟" + +msgid "Wireless LAN" +msgstr "شبكه محليه لا سلكيه" + +#, fuzzy +msgid "Wireless network" +msgstr "شبكه لا سلكيه" + +#, fuzzy +msgid "Wireless network configuration..." +msgstr "تكوين الشبكه" + +msgid "Wireless network connection setup" +msgstr "" + +msgid "Wireless network connection setup." +msgstr "" + +msgid "Wireless network state" +msgstr "" + +msgid "With popup" +msgstr "" + +msgid "Without popup" +msgstr "" + +msgid "Would you like to install a softcam?" +msgstr "" + +msgid "Write error while recording. Disk full?\n" +msgstr "خطأ اثناء التسجيل. القرص ممتلئ ؟ \n" + +msgid "Write failed!" +msgstr "فشل الكتابه !" + +msgid "YPbPr" +msgstr "YPbPr" + +msgid "Year" +msgstr "عام" + +msgid "Yellow DVB subtitles" +msgstr "" + +# +msgid "Yes" +msgstr "نعم" + +msgid "Yes and save" +msgstr "" + +msgid "Yes and save in movie dir" +msgstr "" + +msgid "Yes to all" +msgstr "نعم للجميع" + +msgid "Yes, always" +msgstr "" + +msgid "Yes, and delete this movie" +msgstr "نعم، وامسح هذا الفيلم" + +# +msgid "Yes, backup my settings!" +msgstr "نعم ، أعمل نسخه إحتياطيه للاعدادات" + +msgid "Yes, delete this movie and return to movie list" +msgstr "" + +msgid "Yes, do a manual scan now" +msgstr "نعم، أعمل بحث يدوى الان" + +msgid "Yes, do an automatic scan now" +msgstr "نعم، أعمل بحث آالى الان" + +msgid "Yes, do another manual scan now" +msgstr "نعم، أعمل بحث يدوى آخر الان" + +msgid "Yes, perform a shutdown now." +msgstr "نعم أغلق الان." + +msgid "Yes, restore the settings now" +msgstr "نعم، أستعد الاعدادات الان" + +msgid "Yes, returning to movie list" +msgstr "نعم، العوده الى قائمة الافلام" + +msgid "Yesterday" +msgstr "" + +#, python-format +msgid "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" +msgstr "" + +msgid "You can cancel the installation." +msgstr "تستطيع إلغاء التثبيت" + +msgid "You can cancel the removal." +msgstr "تستطيع إلغاء الحذف" + +msgid "You can continue watching TV etc. while this is running." +msgstr "" + +msgid "You can install this plugin." +msgstr "تستطيع تثبيت هذا البلج إن" + +msgid "You can only burn receiver recordings!" +msgstr "" + +msgid "You can remove this plugin." +msgstr "تستطيع حذف هذا البلج إن." + +# +msgid "You cannot delete this!" +msgstr "لايمكنك مسح هذه !" + +msgid "You didn't select a channel to record from." +msgstr "" + +msgid "You have chosen to backup your settings. Please press OK to start the backup now." +msgstr "إذا أخترت عمل نسخه إحتياطيه للاعدادات ، من فضلك أضغط موافق اتبدأ النسخه الإحتياطيه الان" + +# +msgid "You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased." +msgstr "" + +msgid "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." +msgstr "لقد أخترت أن تستعيد الاعدادات . سيتم إعادة تشغيل الاينجما2 بعد الاستعاده .أضغط موافق لتبدأ الاستعاده الان ." + +#, python-format +msgid "You have to wait %s!" +msgstr "يجب أن تنتظر %s !" + +msgid "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." +msgstr "" + +msgid "You system does not support ext4" +msgstr "" + +msgid "Your backup succeeded. We will now continue to explain the further upgrade process." +msgstr "نجاح عمل نسخه إحتياطيه . سوف نشرح لك طريقة الترقيه الان." + +msgid "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" +msgstr "هذه المجموعه تزيد عن حجم وسيط ذو طبقه واحده. أنت تحتاج الى دى فى دى ثنائى الطبقه خالى!" + +msgid "Your current collection will get lost!" +msgstr "سوف تفقد المجموعه الحاليه !" + +# +msgid "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." +msgstr "" + +msgid "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" + +msgid "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." +msgstr "" +"الاتصال بالانترنت لا يعمل ! \n" +"من فضلك أختار ماذا تريد أن تفعل بعد ذلك." + +#, python-format +msgid "Your internet connection is working (ip: %s)" +msgstr "" + +msgid "Your network configuration has been activated." +msgstr "تم تنشيط تكوين الشبكه" + +msgid "Your receiver does not have an internet connection" +msgstr "" + +#, fuzzy +msgid "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" +msgstr "" +"الدريم بوكس جاهز للاستخدام الان.\n" +"\n" +"الاتصال بالانترنت يعمل الان.\n" +"\n" + +msgid "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." +msgstr "" + +msgid "Your receiver is rebooting" +msgstr "" + +msgid "Your receiver is shutting down" +msgstr "" + +msgid "Your receiver is shutting down. Please stand by..." +msgstr "" + +msgid "Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver." +msgstr "" + +msgid "Your receiver will got to stand by due to the sleeptimer." +msgstr "" + +msgid "Your receiver will got to standby due to inactivity." +msgstr "" + +msgid "Your receiver will restart after pressing OK on your remote control." +msgstr "" + +# +msgid "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." +msgstr "" + +msgid "Zap" +msgstr "" + +# +msgid "Zap back to previously tuned service?" +msgstr "هل تريد التنقل الى أخر قناه مولفه ؟" + +# +msgid "Zap back to service before positioner setup?" +msgstr "هل تريد التنقل الى القناه الاخيره قبل ضبط الموتور ؟" + +# +msgid "Zap back to service before tuner setup?" +msgstr "هل تريد التنقل الىالقناه الخيره قبل ضبط الموالف ؟" + +msgid "Zap focus to Picture in Picture" +msgstr "" + +msgid "Zap focus to main screen" +msgstr "" + +msgid "Zap mode" +msgstr "" + +msgid "Zap to selected channel" +msgstr "" + +msgid "Zap to selected channel, or show detailed event info (depends on configuration)" +msgstr "" + +msgid "[alternative edit]" +msgstr "[تحرير البديل]" + +msgid "[bouquet edit]" +msgstr "[تحرير الباقه]" + +msgid "[favourite edit]" +msgstr "[تحرير المفضله]" + +# +msgid "[move mode]" +msgstr "وضع التحريك" + +# +msgid "a gui to assign services/providers to common interface modules" +msgstr "" + +# +msgid "a gui to assign services/providers/caids to common interface modules" +msgstr "" + +msgid "abort alternatives edit" +msgstr "إلغاء تحرير البدائل" + +# +msgid "abort bouquet edit" +msgstr "الغاء تحرير الباقه" + +# +msgid "abort favourites edit" +msgstr "الغاء تحرير المفضله" + +msgid "about to start" +msgstr "على وشك البدأ" + +msgid "activate network adapter configuration" +msgstr "تنشيط تكوين محول الشبكه" + +msgid "add alternatives" +msgstr "إضافة بدائل" + +msgid "add bookmark" +msgstr "إضافة مرجعيه" + +msgid "add bouquet" +msgstr "إضافة باقه" + +msgid "add marker" +msgstr "إضافة علامه" + +# +msgid "add service to bouquet" +msgstr "إضافه القناه الى الباقه" + +# +msgid "add service to favourites" +msgstr "إضافه القناه الى المفضله" + +msgid "add to parental protection" +msgstr "أضف حمايه أبويه" + +msgid "adult movie/drama" +msgstr "" + +msgid "advanced" +msgstr "متقدم" + +msgid "adventure/western/war" +msgstr "" + +msgid "advertisement/shopping" +msgstr "" + +msgid "after " +msgstr "" + +#, fuzzy +msgid "alphabetic" +msgstr "ترنيب أبجدى" + +msgid "alphabetic reverse" +msgstr "" + +msgid "alternative" +msgstr "" + +msgid "always" +msgstr "" + +msgid "and select next channel" +msgstr "" + +msgid "and select previous channel" +msgstr "" + +msgid "arts/culture (without music, general)" +msgstr "" + +msgid "arts/culture magazine" +msgstr "" + +msgid "athletics" +msgstr "" + +# +msgid "audio tracks" +msgstr "مسارات الصوت" + +msgid "auto" +msgstr "تلقائى" + +#, fuzzy +msgid "automatic" +msgstr "آلى" + +# +msgid "back" +msgstr "للخلف" + +msgid "background image" +msgstr "صورة الخلفيه" + +msgid "ballet" +msgstr "" + +#, python-format +msgid "bc%s" +msgstr "" + +msgid "better" +msgstr "أفضل" + +msgid "black" +msgstr "أسود" + +msgid "black & white" +msgstr "" + +msgid "blacklist" +msgstr "القائمه السوداء" + +msgid "blue" +msgstr "أزرق" + +msgid "broadcasting/press" +msgstr "" + +#, fuzzy +msgid "by date" +msgstr "تصنيف حسب التاريخ" + +msgid "cartoon/puppets" +msgstr "" + +msgid "center" +msgstr "" + +msgid "centered" +msgstr "" + +msgid "centered, wrapped" +msgstr "" + +# +msgid "chapters" +msgstr "فصول" + +msgid "childrens's/youth program (general)" +msgstr "" + +# +msgid "circular left" +msgstr "دائرى يسار" + +# +msgid "circular right" +msgstr "دائرى يمين" + +msgid "comedy" +msgstr "" + +# +msgid "complex" +msgstr "مركب" + +# +msgid "config menu" +msgstr "قائمه الضبط" + +msgid "confirmed" +msgstr "تم التأكيد" + +msgid "connected" +msgstr "تم الاتصال" + +msgid "continue" +msgstr "استمرار" + +msgid "cooking" +msgstr "" + +msgid "copy to bouquets" +msgstr "نسخ الى الباقات" + +msgid "create directory" +msgstr "إنشاء دليل" + +#, python-format +msgid "currently installed image: %s" +msgstr "" + +# +msgid "daily" +msgstr "يومى" + +# +msgid "day" +msgstr "يوم" + +#, fuzzy +msgid "default" +msgstr "الافتراضى" + +msgid "delete cut" +msgstr "مسح القطع" + +msgid "delete..." +msgstr "" + +msgid "descramble and record ecm" +msgstr "" + +msgid "detective/thriller" +msgstr "" + +msgid "disable" +msgstr "تعطيل" + +msgid "disable move mode" +msgstr "تعطيل وضع التحريك" + +msgid "disabled" +msgstr "تم التعطيل" + +msgid "disconnected" +msgstr "تم الفصل" + +msgid "discussion/interview/debate" +msgstr "" + +msgid "do nothing" +msgstr " لا تفعل شيئ" + +msgid "documentary" +msgstr "" + +msgid "don't descramble, record ecm" +msgstr "" + +msgid "done!" +msgstr "تم !" + +msgid "east" +msgstr "" + +msgid "economics/social advisory" +msgstr "" + +msgid "edit alternatives" +msgstr "تحرير البدائل" + +msgid "education/science/factual topics (general)" +msgstr "" + +msgid "empty" +msgstr "فارغ" + +msgid "enable" +msgstr "تفعيل" + +# +msgid "enable bouquet edit" +msgstr "تفعيل تحرير الباقه" + +# +msgid "enable favourite edit" +msgstr "تفعيل تحرير المفضله" + +# +msgid "enable move mode" +msgstr "تفعيل وضع التحريك" + +msgid "enabled" +msgstr "تم النفعيل" + +msgid "end alternatives edit" +msgstr "إنهاء تحرير البدائل" + +# +msgid "end bouquet edit" +msgstr "إنتهاء تحرير الباقه" + +msgid "end cut here" +msgstr "إنتهاء القطع هنا" + +# +msgid "end favourites edit" +msgstr "إنتهاء تحرير المفضله" + +msgid "entertainment (10-16 year old)" +msgstr "" + +msgid "entertainment (6-14 year old)" +msgstr "" + +msgid "equal to" +msgstr "مساوى لـــ" + +msgid "equestrian" +msgstr "" + +msgid "exit DVD player or return to file browser" +msgstr "الخروج من مشغل الدى فى دى أو العوده الى متصفح الملفات" + +msgid "exit movielist" +msgstr "" + +msgid "exit network adapter configuration" +msgstr "الخروج من تهيئة محول الشبكه" + +msgid "exit networkadapter setup menu" +msgstr "الخروج من قائمه إعداد الشبكه" + +msgid "experimental film/video" +msgstr "" + +msgid "false" +msgstr "" + +msgid "fashion" +msgstr "" + +# +msgid "fileformats (BMP, PNG, JPG, GIF)" +msgstr "" + +msgid "filename" +msgstr "اسم الملف" + +msgid "film/cinema" +msgstr "" + +msgid "fine arts" +msgstr "" + +msgid "fine-tune your display" +msgstr "التوليف الدقيق للعرض" + +msgid "fitness & health" +msgstr "" + +#, fuzzy +msgid "flat alphabetic" +msgstr "ترنيب أبجدى" + +#, fuzzy +msgid "flat alphabetic reverse" +msgstr "ترنيب أبجدى" + +msgid "folk/traditional music" +msgstr "" + +msgid "football/soccer" +msgstr "" + +msgid "foreign countries/expeditions" +msgstr "" + +# +msgid "forward to the next chapter" +msgstr "" + +# +msgid "free" +msgstr "" + +msgid "from" +msgstr "" + +msgid "further education" +msgstr "" + +msgid "game show/quiz/contest" +msgstr "" + +msgid "gardening" +msgstr "" + +msgid "go to deep standby" +msgstr "الذهاب الى وضع الاستعداد العميق" + +msgid "go to standby" +msgstr "الذهاب لوضع الاستعداد" + +# +msgid "grab this frame as bitmap" +msgstr "" + +msgid "green" +msgstr "أخضر" + +msgid "handicraft" +msgstr "" + +msgid "height" +msgstr "" + +msgid "help..." +msgstr "مساعده..." + +msgid "horizontal" +msgstr "أفقى" + +msgid "information/education/school program" +msgstr "" + +# +msgid "init module" +msgstr "تفعيل الكـام" + +# +msgid "init modules" +msgstr "" + +msgid "insert mark here" +msgstr "ضع علامه هنا" + +msgid "invalid type" +msgstr "" + +msgid "jazz" +msgstr "" + +msgid "jump back to the previous title" +msgstr "الانتقال خلفا للعنوان السابق" + +msgid "jump forward to the next title" +msgstr "الانتقال أماما للعنوان التالى" + +msgid "languages" +msgstr "" + +# +msgid "leave movie player..." +msgstr "اترك عارض الافلام .." + +msgid "left" +msgstr "يسار" + +msgid "left, wrapped" +msgstr "" + +msgid "leisure hobbies (general)" +msgstr "" + +msgid "length" +msgstr "طول" + +msgid "limit ..., aborting !" +msgstr "" + +# +msgid "list style compact" +msgstr "" + +# +msgid "list style compact with description" +msgstr "" + +# +msgid "list style default" +msgstr "" + +# +msgid "list style single line" +msgstr "" + +msgid "literature" +msgstr "" + +msgid "live broadcast" +msgstr "" + +msgid "locked" +msgstr "مغلق" + +# +msgid "loopthrough to" +msgstr "" + +msgid "magazines/reports/documentary" +msgstr "" + +# +msgid "manual" +msgstr "يدوى" + +msgid "martial sports" +msgstr "" + +msgid "medicine/physiology/psychology" +msgstr "" + +msgid "menu" +msgstr "قائمه" + +msgid "mins" +msgstr "دقائق" + +msgid "minutes" +msgstr "دقائق" + +msgid "month" +msgstr "شهر" + +msgid "motor sport" +msgstr "" + +msgid "motoring" +msgstr "" + +msgid "move down to last entry" +msgstr "الانتقال لأسفل الى البند الاخير" + +msgid "move down to next entry" +msgstr "الانتقال لاسفل الى البند التالى" + +msgid "move up to first entry" +msgstr "الانتقال لاعلى الى البند الاول" + +msgid "move up to previous entry" +msgstr "الانتقال لاعلى الى البند السابق" + +msgid "movie/drama (general)" +msgstr "" + +msgid "multinorm" +msgstr "متعدد المعايير" + +msgid "music/ballet/dance (general)" +msgstr "" + +msgid "musical/opera" +msgstr "" + +msgid "nature/animals/environment" +msgstr "" + +msgid "never" +msgstr "مطلقا" + +msgid "new media" +msgstr "" + +msgid "news magazine" +msgstr "" + +msgid "news/current affairs (general)" +msgstr "" + +msgid "news/weather report" +msgstr "" + +# +msgid "no" +msgstr "لا." + +# +msgid "no CAId selected" +msgstr "" + +# +msgid "no CI slots found" +msgstr "" + +# +msgid "no module found" +msgstr "لم يتم العثور على كامه" + +msgid "no storage devices found" +msgstr "" + +# +msgid "none" +msgstr "لا احد" + +msgid "normal" +msgstr "" + +msgid "not configured" +msgstr "غير مكونه" + +msgid "not locked" +msgstr "غير مغلقه" + +msgid "not supported" +msgstr "" + +msgid "not used" +msgstr "غير مستخدمه" + +msgid "nothing connected" +msgstr "لا شيئ متصل" + +msgid "of a DUAL layer medium used." +msgstr "من وسيط ثنائى الطبقه مستخدم" + +msgid "of a SINGLE layer medium used." +msgstr "من وسيط أحادى الطبقه مستخدم" + +# +msgid "off" +msgstr "لا يعمـل!" + +msgid "offset is" +msgstr "" + +# +msgid "on" +msgstr "يعمل!" + +msgid "on READ ONLY medium." +msgstr "على وسيط قراءه فقط" + +msgid "on end of movie" +msgstr "" + +# +msgid "once" +msgstr "مره واحده" + +msgid "only from deep standby" +msgstr "" + +msgid "only from standby" +msgstr "" + +msgid "open EPG..." +msgstr "" + +msgid "open Info..." +msgstr "" + +msgid "open nameserver configuration" +msgstr "فتح تكوين أسم الخادم" + +msgid "original" +msgstr "" + +msgid "original language" +msgstr "" + +msgid "pass" +msgstr "مرور" + +msgid "performing arts" +msgstr "" + +msgid "play as picture in picture" +msgstr "" + +msgid "play in mainwindow" +msgstr "" + +msgid "please press OK when ready" +msgstr "من فضلك أضغط موافق عندما تكون مستعد" + +msgid "please wait, loading picture..." +msgstr "رجاء الانتظار... جارى تحميل الصوره" + +msgid "popular culture/traditional arts" +msgstr "" + +msgid "pre-school children's program" +msgstr "" + +msgid "receiver software because updates are available." +msgstr "" + +msgid "record" +msgstr "تسجيل" + +msgid "recording..." +msgstr "جارى التسجيل....." + +msgid "red" +msgstr "أحمر" + +msgid "religion" +msgstr "" + +msgid "remarkable people" +msgstr "" + +# +msgid "remove after this position" +msgstr "حذف بعد هذا المكان" + +msgid "remove all alternatives" +msgstr "حذف كل البدائل" + +msgid "remove all new found flags" +msgstr "أحذف كل علامات وجد حديثا" + +# +msgid "remove before this position" +msgstr "حذف قبل هذا المكان" + +# +msgid "remove bookmark" +msgstr "حذف المرجعيه" + +msgid "remove directory" +msgstr "حذف الدليل" + +msgid "remove entry" +msgstr "حذف" + +msgid "remove from parental protection" +msgstr "حذف من الحمايه الابويه" + +# +msgid "remove new found flag" +msgstr "حذف الاعلام التى وجدت حديثا" + +msgid "remove selected satellite" +msgstr "حذف القمر المختار" + +msgid "remove this mark" +msgstr "حذف هذه العلامه" + +msgid "rename entry" +msgstr "" + +msgid "repeat playlist" +msgstr "إعادة قائمة الاغانى" + +# +msgid "repeated" +msgstr "متكرر" + +msgid "reverse by date" +msgstr "" + +msgid "rewind to the previous chapter" +msgstr "عوده للفصل السابق" + +msgid "right" +msgstr "يمين" + +msgid "right, wrapped" +msgstr "" + +msgid "rock/pop" +msgstr "" + +msgid "romance" +msgstr "" + +msgid "save last directory on exit" +msgstr "حفظ الدليل عند الخروج" + +msgid "save playlist on exit" +msgstr "حفظ قائمة العرض عند الخروج" + +# +msgid "scan state" +msgstr "حاله البحث" + +msgid "science fiction/fantasy/horror" +msgstr "" + +# +msgid "second cable of motorized LNB" +msgstr "" + +msgid "seconds" +msgstr "ثوانى" + +msgid "select" +msgstr "أختار" + +# +msgid "select CAId's" +msgstr "" + +msgid "select EPG..." +msgstr "" + +msgid "select Info..." +msgstr "" + +# +msgid "select menu entry" +msgstr "أختار مدخل قائمه" + +msgid "select movie" +msgstr "أختار الفيلم" + +msgid "select the movie path" +msgstr "" + +msgid "serious music/classic music" +msgstr "" + +msgid "serious/classical/religious/historical movie/drama" +msgstr "" + +msgid "service PIN" +msgstr "" + +msgid "set as startup service" +msgstr "" + +msgid "setup PIN" +msgstr "" + +# +msgid "show DVD main menu" +msgstr "أعرض قائمة دى فى دى الرئيسيه" + +msgid "show all tags" +msgstr "" + +msgid "show alternatives" +msgstr "إظهار البدائل" + +msgid "show event details" +msgstr "إظهار تفاصيل الحدث" + +msgid "show extended description" +msgstr "" + +msgid "show mediaplayer on mainmenu" +msgstr "" + +msgid "show softwaremanager in setup menu" +msgstr "" + +msgid "show softwaremanager on blue button" +msgstr "" + +msgid "show tag menu" +msgstr "" + +msgid "show transponder info" +msgstr "إظهار بيانات التردد" + +msgid "show/game show (general)" +msgstr "" + +msgid "shuffle" +msgstr "" + +msgid "shut down" +msgstr "إغــلاق" + +msgid "simple" +msgstr "بسيط" + +msgid "skip backward" +msgstr "تخطى للخلف" + +msgid "skip forward" +msgstr "تخطى للأمام" + +msgid "soap/melodram/folkloric" +msgstr "" + +msgid "social/political issues/economics (general)" +msgstr "" + +msgid "social/spiritual science" +msgstr "" + +msgid "sorting of playlists" +msgstr "" + +msgid "special characters" +msgstr "حروف خاصه" + +msgid "special events" +msgstr "" + +msgid "special format data DVD (HDTV compatible)" +msgstr "" + +msgid "sports (general)" +msgstr "" + +msgid "sports magazine" +msgstr "" + +msgid "standard" +msgstr "قياسى" + +msgid "start cut here" +msgstr "أبدأ القطع هنا" + +msgid "start directory" +msgstr "دليل البدايه" + +msgid "stepsize" +msgstr "" + +msgid "stereo" +msgstr "ستيريو" + +msgid "stop using as startup service" +msgstr "" + +# +msgid "switch to bookmarks" +msgstr "الانتقال الى المرجعيات" + +msgid "switch to filelist" +msgstr "الانتقال الى قائمة الملفات" + +msgid "switch to the next angle" +msgstr "الانتقال الى الزاويه التاليه" + +msgid "switch to the next audio track" +msgstr "الانتقال الى مسار الصوت التالى" + +msgid "switch to the next subtitle language" +msgstr "الانتقال الى لغة العناوين الفرعيه التاليه" + +msgid "talk show" +msgstr "" + +msgid "team sports" +msgstr "" + +msgid "technology/natural science" +msgstr "" + +msgid "template file" +msgstr "ملف قالب" + +msgid "tennis/squash" +msgstr "" + +msgid "this recording" +msgstr "هذا التسجيل" + +msgid "this service is protected by a parental control pin" +msgstr "هذه القناه محميه برقم سرى بواسطه التحكم الابوى" + +# +msgid "toggle time, chapter, audio, subtitle info" +msgstr "" + +msgid "top" +msgstr "" + +msgid "tourism/travel" +msgstr "" + +msgid "true" +msgstr "" + +msgid "unavailable" +msgstr "غير متاح" + +msgid "unconfirmed" +msgstr "غير مؤكد" + +msgid "undefined" +msgstr "" + +msgid "unknown" +msgstr "غير معروف" + +# +msgid "unknown service" +msgstr "قناه غير معروفه" + +msgid "unpublished" +msgstr "" + +# +msgid "until standby/restart" +msgstr "حتى وضع الانتظار/إعادة التشغيل" + +# +msgid "user defined" +msgstr "محدده من قبل المستخدم" + +msgid "variety show" +msgstr "" + +# +msgid "vertical" +msgstr "رأسى" + +# +msgid "wait for ci..." +msgstr "ci فى إنتظار" + +# +msgid "wait for mmi..." +msgstr "mmi إنتظار" + +msgid "waiting" +msgstr "فى الانتظار" + +msgid "water sport" +msgstr "" + +# +msgid "weekly" +msgstr "اسبوعى" + +msgid "west" +msgstr "" + +msgid "when PiPzap enabled zap channel down..." +msgstr "" + +msgid "when PiPzap enabled zap channel up..." +msgstr "" + +msgid "white" +msgstr "" + +msgid "whitelist" +msgstr "القائمه البيضاء" + +msgid "width" +msgstr "" + +msgid "winter sport" +msgstr "" + +msgid "wireless network interface" +msgstr "" + +#, python-format +msgid "with %d error" +msgid_plural "with %d errors" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" +msgstr[3] "" +msgstr[4] "" +msgstr[5] "" + +msgid "working" +msgstr "يعمل" + +msgid "yellow" +msgstr "أصفر" + +# +msgid "yes" +msgstr "نعـم" + +# +msgid "yes (keep feeds)" +msgstr "" + +msgid "zap" +msgstr "الانتقال" + +msgid "zap and record" +msgstr "" + +msgid "zapped" +msgstr "تم الانتقال" + +# +#~ msgid "AA" +#~ msgstr "أأ" + +# +#~ msgid "AB" +#~ msgstr "أب" + +# +#, fuzzy +#~ msgid "Activate PiP" +#~ msgstr "صوره داخل صوره نشط" + +#, fuzzy +#~ msgid "Add/remove timer for current event" +#~ msgstr " أضف تسجيل (وإيقاف بعد انتهاء البرنامج الحالى)" + +# +#, fuzzy +#~ msgid "All satellites" +#~ msgstr "كل الاقمار" + +# +#~ msgid "BA" +#~ msgstr "ب أ" + +# +#~ msgid "BB" +#~ msgstr "ب ب" + +#~ msgid "DiSEqC repeats" +#~ msgstr "تكرار الدايزك" + +#~ msgid "No satellite frontend found!!" +#~ msgstr "لم يتم العثور على أقمار موجهه !!" + +#~ msgid "Remove timer" +#~ msgstr "حذف المؤقت" + +#~ msgid "Send DiSEqC" +#~ msgstr "أرسل دايزك" + +# +#, fuzzy +#~ msgid "Switch next channel" +#~ msgstr "القناه التاليه" + +# +#~ msgid "Zap back to service before satfinder?" +#~ msgstr "هل تريد التنقل الى القناه الاخيره قبل باحث الاقمار ؟" diff --git a/po/bg.po b/po/bg.po new file mode 100644 index 0000000..3ba0bde --- /dev/null +++ b/po/bg.po @@ -0,0 +1,7917 @@ +msgid "" +msgstr "" +"Project-Id-Version: enigma2 3.0.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-07-21 19:08+0200\n" +"PO-Revision-Date: 2013-01-12 13:05+0200\n" +"Last-Translator: Мартин Петков <marto74bg@yahoo.co.uk>\n" +"Language-Team: Bulgarian\n" +"Language: bg\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Poedit 1.5.4\n" + +msgid "" +"\n" +"Advanced options and settings." +msgstr "" +"\n" +"Експертни опции и настройки" + +msgid "" +"\n" +"After pressing OK, please wait!" +msgstr "" +"\n" +"След натискане на ОК, моля изчакайте!" + +msgid "" +"\n" +"Backup your receiver settings." +msgstr "" +"\n" +"Копие на вашите Clarke-Tech настройки." + +msgid "" +"\n" +"Edit the upgrade source address." +msgstr "" +"\n" +"Редакция на адреса за ъпгрейд." + +msgid "" +"\n" +"Manage extensions or plugins for your receiver" +msgstr "" +"\n" +"Управление на плъгини за вашия Clarke-Tech" + +msgid "" +"\n" +"Online update of your receiver software." +msgstr "" +"\n" +"Мрежова актуализация за вашия Clarke-Tech софтуер" + +msgid "" +"\n" +"Press OK on your remote control to continue." +msgstr "" +"\n" +"Натиснете ОК на дистанционното за да продължите." + +msgid "" +"\n" +"Restore your backups by date." +msgstr "" +"\n" +"Възстановяване на вашите копия по дата." + +msgid "" +"\n" +"Restore your receiver settings." +msgstr "" +"\n" +"Възстановяване на вашите Clarke-Tech настройки." + +msgid "" +"\n" +"Restore your receiver with a new firmware." +msgstr "" +"\n" +"Възстановяване на вашия Clarke-Tech с нов фирмуер." + +msgid "" +"\n" +"Scan for local extensions and install them." +msgstr "" +"\n" +"Сканиране за местни пакети и инсталация." + +msgid "" +"\n" +"Select your backup device.\n" +"Current device: " +msgstr "" +"\n" +"Изберете вашето backup устройство.\n" +"Текущо устройство: " + +msgid "" +"\n" +"View, install and remove available or installed packages." +msgstr "" +"\n" +"Преглед, инсталиране и премахване на налични или инсталирани пакети." + +msgid " (PiP)" +msgstr "" + +msgid " (Radio)" +msgstr "" + +msgid " (TV)" +msgstr "" + +msgid " (disabled)" +msgstr "" + +msgid " (higher than any auto)" +msgstr "" + +msgid " (higher than rotor any auto)" +msgstr "" + +msgid " (lower than any auto)" +msgstr "" + +msgid " extensions." +msgstr "" + +msgid " ms" +msgstr "" + +msgid " packages selected." +msgstr " избрани пакети." + +msgid " updates available." +msgstr " ъпдейти на разположение." + +#. TRANSLATORS: short time representation hour:minute +#, python-format +msgid "%2d:%02d" +msgstr "" + +#. TRANSLATORS: full time representation hour:minute:seconds +#, python-format +msgid "%2d:%02d:%02d" +msgstr "" + +msgid "%A %d %B" +msgstr "" + +#. TRANSLATORS: long date representations dayname daynum monthname in strftime() format! See 'man strftime' +msgid "%A %e %B" +msgstr "" + +#. TRANSLATORS: full date representation dayname daynum monthname year in strftime() format! See 'man strftime' +msgid "%A %e %B %Y" +msgstr "" + +msgid "%H:%M" +msgstr "%Ч:%М" + +#. TRANSLATORS: short date representation short dayname daynum short monthname in strftime() format! See 'man strftime' +msgid "%a %e/%m" +msgstr "" + +#. TRANSLATORS: long date representation short dayname daynum short monthname hour:minute in strftime() format! See 'man strftime' +msgid "%a %e/%m %-H:%M" +msgstr "" + +#. TRANSLATORS: Intermediate scanning result, '%d' channel(s) have been found so far +#, python-format +msgid "%d channel found" +msgid_plural "%d channels found" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d file" +msgid_plural "%d files" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d job is running in the background!" +msgid_plural "%d jobs are running in the background!" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d min" +msgstr "%d мин" + +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d minutes" +msgstr "" + +#, python-format +msgid "%d pixel wide" +msgid_plural "%d pixels wide" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d subdirectory" +msgid_plural "%d subdirectories" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d wireless network found!" +msgid_plural "%d wireless networks found!" +msgstr[0] "" +msgstr[1] "" + +msgid "%d-%b-%Y %-H:%M" +msgstr "" + +msgid "%d-%m" +msgstr "" + +msgid "%d.%B %Y" +msgstr "" + +#. TRANSLATORS: VFD hour:minute daynum short monthname in strftime() format! See 'man strftime' +msgid "%k:%M %e/%m" +msgstr "" + +#, python-format +msgid "%s %s free disk space" +msgstr "" + +#, python-format +msgid "%s (%s)\n" +msgstr "" + +#. TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. +#, python-format +msgid "%s is no longer used. Should it be deleted?" +msgstr "" + +#, python-format +msgid "%s updated package available" +msgid_plural "%s updated packages available" +msgstr[0] "%s актуализиран пакет е наличен" +msgstr[1] "%s актуализирани пакети са налични" + +#, python-format +msgid "%s%d min" +msgstr "" + +#, python-format +msgid "%s/%s: %s" +msgstr "" + +msgid "(ZAP)" +msgstr "" + +msgid "(empty)" +msgstr "" + +msgid "(show optional DVD audio menu)" +msgstr "(покажи DVD аудио меню)" + +msgid "* Only available if more than one interface is active." +msgstr "* На разположение само ако е активен повече от един интерфейс." + +msgid "/s" +msgstr "" + +msgid "0" +msgstr "" + +msgid "1" +msgstr "" + +msgid "1.0" +msgstr "" + +msgid "1.1" +msgstr "" + +msgid "1.2" +msgstr "" + +msgid "12V output" +msgstr "" + +msgid "13 V" +msgstr "" + +msgid "16:10" +msgstr "" + +msgid "16:10 Letterbox" +msgstr "" + +msgid "16:10 PanScan" +msgstr "" + +msgid "16:9" +msgstr "" + +msgid "16:9 Letterbox" +msgstr "" + +msgid "16:9 always" +msgstr "" + +msgid "18 V" +msgstr "" + +msgid "2" +msgstr "" + +msgid "23.976" +msgstr "" + +msgid "24" +msgstr "" + +msgid "25" +msgstr "" + +msgid "29.97" +msgstr "" + +msgid "3" +msgstr "" + +msgid "30" +msgstr "" + +msgid "3d mode" +msgstr "" + +msgid "4" +msgstr "" + +msgid "4:3" +msgstr "" + +msgid "4:3 Letterbox" +msgstr "" + +msgid "4:3 PanScan" +msgstr "" + +msgid "5" +msgstr "" + +msgid "6" +msgstr "" + +msgid "7" +msgstr "" + +msgid "8" +msgstr "" + +msgid "9" +msgstr "" + +#, python-format +msgid ": %s" +msgstr "" + +msgid "<Current movielist location>" +msgstr "" + +msgid "<Default movie location>" +msgstr "" + +msgid "<Last timer location>" +msgstr "" + +msgid "<unknown>" +msgstr "<непознат>" + +msgid "??" +msgstr "" + +msgid "A" +msgstr "А" + +#, python-format +msgid "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" +msgstr "" + +#, python-format +msgid "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" +msgstr "" +"Конфиг файла (%s) беше променен след инсталацията.\n" +"Искате ли да запазите вашата версия?" + +msgid "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"Таймера при завършване на запис желае да постави\n" +"Clarke-Tech в стендбай. Да го направи ли сега?" + +msgid "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"Таймера при завършване на запис желае да изключи\n" +"вашия Clarke-Tech. Изключване сега?" + +msgid "A graphical EPG for all services of an specific bouquet" +msgstr "Графичен режим на EPG за всички програми от определен букет" + +#, python-format +msgid "" +"A record has been started:\n" +"%s" +msgstr "" +"Започна запис:\n" +"%s" + +msgid "" +"A recording is currently running.\n" +"What do you want to do?" +msgstr "" +"Има запис в момента.\n" +"Какво да направя?" + +msgid "A recording is currently running. Please stop the recording before trying to configure the positioner." +msgstr "Има запис в момента. Моля спрете записа преди да опитате да конфигурирате позиционера." + +msgid "A recording is currently running. Please stop the recording before trying to scan." +msgstr "" + +msgid "A recording is currently running. Please stop the recording before trying to start the satfinder." +msgstr "Има запис в момента. Моля спрете записа преди да опитате да стартирате satfinder." + +#, python-format +msgid "A required tool (%s) was not found." +msgstr "Исканото устройство (%s) не беше намерено." + +msgid "A search for available updates is currently in progress." +msgstr "" + +msgid "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" +msgstr "" + +msgid "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"Таймера за сън иска да превключи\n" +"Clarke-Tech в стендбай. Да го направи ли сега?" + +msgid "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"Таймера за сън иска да изключи\n" +"вашия Clarke-Tech. Изключване сега?" + +msgid "A small overview of the available icon states and actions." +msgstr "" + +msgid "" +"A timer failed to record!\n" +"Disable TV and try again?\n" +msgstr "" +"Провален планиран запис!\n" +"Спиране на ТВ и опит отново?\n" + +msgid "A/V settings" +msgstr "A/V Настройки" + +msgid "AC3/DTS downmix" +msgstr "" + +msgid "Abort" +msgstr "Отмени" + +msgid "About" +msgstr "Относно" + +msgid "About..." +msgstr "Относно..." + +msgid "Accesspoint:" +msgstr "" + +msgid "Action on long powerbutton press" +msgstr "Продължително натискане на бутон POWER" + +msgid "Action on short powerbutton press" +msgstr "" + +msgid "Activate Picture in Picture" +msgstr "Активиране Картина в Картината" + +msgid "Activate current configuration" +msgstr "" + +msgid "Activate network settings" +msgstr "Активиране мрежови настройки" + +msgid "Activate the configured network settings." +msgstr "" + +msgid "Adapter settings" +msgstr "Настройки на адаптера" + +msgid "Add" +msgstr "Добавяне" + +msgid "Add Bookmark" +msgstr "" + +msgid "Add a mark" +msgstr "Добавяне Отметка" + +msgid "Add a nameserver entry" +msgstr "" + +msgid "Add a new title" +msgstr "Добавяне ново име" + +msgid "Add bookmark" +msgstr "Добавяне отметка" + +msgid "Add directory to playlist" +msgstr "" + +msgid "Add file to playlist" +msgstr "" + +msgid "Add files to playlist" +msgstr "" + +msgid "Add more details to the crash log" +msgstr "" + +msgid "Add provider" +msgstr "" + +msgid "Add recording (enter recording duration)" +msgstr "Добави запис (въведете продължителност на записа)" + +msgid "Add recording (enter recording endtime)" +msgstr "Добави запис (въведете край на записа)" + +msgid "Add recording (indefinitely)" +msgstr "Добави запис (без ограничение)" + +msgid "Add recording (stop after current event)" +msgstr "Добави запис (спри след текущото предаване)" + +msgid "Add service" +msgstr "" + +msgid "Add timer" +msgstr "Добавяне таймер" + +msgid "Add title" +msgstr "Добавяне име" + +msgid "Add to bouquet" +msgstr "Добави към букет" + +msgid "Add to favourites" +msgstr "Добави към предпочитани" + +msgid "Add/remove change timer for current event" +msgstr "" + +msgid "Adjust 3D settings" +msgstr "3D настройки" + +msgid "Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens." +msgstr "Настройте цветовете така, че всички цветни сенки да са различимии да са максимално наситени. Ако сте доволни от резултата, натиснете OK за да затворите фината настройка на картината, или използвайте цифровите бутони за да изберете друг тест екран." + +msgid "Advanced" +msgstr "" + +msgid "Advanced options" +msgstr "Експертни Настройки" + +msgid "Advanced restore" +msgstr "Експертно Възстановяване" + +msgid "Advanced software" +msgstr "" + +msgid "Advanced software plugin" +msgstr "" + +msgid "Advanced video enhancement setup" +msgstr "" + +msgid "Advanced video setup" +msgstr "" + +msgid "After event" +msgstr "След предаването" + +msgid "Album" +msgstr "Албум" + +msgid "Alignment of events" +msgstr "" + +msgid "Alignment of service names" +msgstr "" + +msgid "All" +msgstr "Всички" + +msgid "All ages" +msgstr "" + +msgid "All satellites 1 (USALS)" +msgstr "" + +msgid "All satellites 2 (USALS)" +msgstr "" + +msgid "All satellites 3 (USALS)" +msgstr "" + +msgid "All satellites 4 (USALS)" +msgstr "" + +msgid "Allocate" +msgstr "" + +msgid "Allocate unused memory index" +msgstr "" + +msgid "Allow quit movieplayer with exit" +msgstr "" + +msgid "Allow subtitle language to equal audio language" +msgstr "" + +msgid "Allow subtitles for hearing impaired" +msgstr "" + +msgid "Alpha" +msgstr "Алфа" + +msgid "Alternative" +msgstr "" + +msgid "Alternative numbering mode" +msgstr "" + +msgid "Alternative services tuner priority" +msgstr "Алтернативен приоритет на тунера" + +msgid "Always ask" +msgstr "" + +msgid "Always hide infobar" +msgstr "" + +msgid "An empty filename is illegal." +msgstr "Файл без име не се приема." + +msgid "An error occurred while downloading the packetlist. Please try again." +msgstr "" + +msgid "An unknown error occurred!" +msgstr "" + +msgid "And will put your receiver in standby over " +msgstr "" + +msgid "Any activity" +msgstr "" + +msgid "Arabic" +msgstr "Арабски" + +msgid "Are you sure to remove this entry?" +msgstr "" + +msgid "" +"Are you sure you want to activate this network configuration?\n" +"\n" +msgstr "" +"Искате ли да активирате тези мрежови настройки?\n" +"\n" + +msgid "" +"Are you sure you want to delete\n" +"the following backup:\n" +msgstr "" + +msgid "Are you sure you want to exit this wizard?" +msgstr "" + +msgid "" +"Are you sure you want to restart your network interfaces?\n" +"\n" +msgstr "" +"Искате ли да рестартирате вашия мрежов интерфейс?\n" +"\n" + +#, python-format +msgid "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" + +msgid "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Искате ли да възстановите вашия backup?\n" +"Приемникът ще се рестартира след възстановяването" + +msgid "Artist" +msgstr "Артист" + +msgid "Arts/Culture" +msgstr "" + +msgid "Ask user" +msgstr "Питай потребител" + +msgid "Aspect ratio" +msgstr "Режим Картина" + +msgid "Assigned CAIds:" +msgstr "" + +msgid "Assigned services/provider:" +msgstr "" + +msgid "At beginning" +msgstr "" + +msgid "At end" +msgstr "" + +msgid "Audio" +msgstr "Аудио" + +msgid "Audio PID" +msgstr "" + +msgid "Audio language selection 1" +msgstr "" + +msgid "Audio language selection 2" +msgstr "" + +msgid "Audio language selection 3" +msgstr "" + +msgid "Audio language selection 4" +msgstr "" + +msgid "Audio options..." +msgstr "Аудио Настройки..." + +#, python-format +msgid "Audio track (%s) format" +msgstr "" + +#, python-format +msgid "Audio track (%s) language" +msgstr "" + +msgid "Author: " +msgstr "Автор: " + +msgid "Authoring mode" +msgstr "" + +#. TRANSLATORS: (aspect ratio policy: always try to display as fullscreen, when there is no content (black bars) on left/right, even if this breaks the aspect. +msgid "Auto" +msgstr "Aвто" + +msgid "Auto chapter split every ? minutes (0=never)" +msgstr "Автоматично разделяне на всеки ? минути (0=никога)" + +msgid "Auto flesh" +msgstr "" + +msgid "Auto focus" +msgstr "" + +msgid "Auto focus commencing ..." +msgstr "" + +msgid "Auto language selection" +msgstr "Автоматичен избор на език" + +msgid "Auto scart switching" +msgstr "Автом.скарт превключване" + +msgid "Automatic" +msgstr "Автоматично" + +msgid "Automatic scan" +msgstr "Автоматично Търсене" + +msgid "Automatically start timeshift after" +msgstr "" + +msgid "Automatically turn on external subtitles" +msgstr "" + +msgid "Available format variables" +msgstr "" + +msgid "B" +msgstr "" + +msgid "BER" +msgstr "" + +msgid "BER:" +msgstr "" + +msgid "Back" +msgstr "Назад" + +msgid "Background" +msgstr "Фон" + +msgid "Background color" +msgstr "" + +msgid "Background delete option" +msgstr "" + +msgid "Background delete speed" +msgstr "" + +msgid "Backup completed." +msgstr "" + +msgid "Backup failed." +msgstr "Backup неуспех." + +msgid "Backup is running..." +msgstr "" + +msgid "Backup system settings" +msgstr "Backup системни настройки" + +msgid "Band" +msgstr "Лента" + +msgid "Bandwidth" +msgstr "Ширина на лента" + +msgid "Basque" +msgstr "" + +msgid "Begin time" +msgstr "Начало време" + +msgid "Behavior of 'pause and ok' when paused" +msgstr "" + +msgid "Behavior of 0 key in PiP-mode" +msgstr "Действие на бутон 0 в режим PiP" + +msgid "Behavior when a movie is started" +msgstr "Действие при старт на филм" + +msgid "Behavior when a movie is stopped" +msgstr "Действие при спиране на филм" + +msgid "Behavior when a movie reaches the end" +msgstr "Действие при завършване на филм" + +msgid "Big PiP" +msgstr "" + +msgid "Bitrate:" +msgstr "" + +msgid "Black screen" +msgstr "" + +msgid "Black screen till locked" +msgstr "" + +msgid "Block noise reduction" +msgstr "" + +msgid "Blue boost" +msgstr "" + +msgid "Bookmarks" +msgstr "" + +msgid "Brightness" +msgstr "Яркост" + +msgid "Bulgarian" +msgstr "Български" + +msgid "Burn DVD" +msgstr "Запиши DVD" + +#, python-format +msgid "Burn audio track (%s)" +msgstr "" + +msgid "Burn existing image to DVD" +msgstr "Запис на съществуващ имидж на DVD" + +msgid "Burn to DVD" +msgstr "" + +msgid "Bus: " +msgstr "" + +msgid "By default, SNR will be shown in dB (when supported by the tuner). This setting forces SNR to be shown as a percentage instead." +msgstr "" + +msgid "C" +msgstr "" + +msgid "C-Band" +msgstr "" + +msgid "CH" +msgstr "" + +msgid "CI assignment" +msgstr "" + +msgid "CVBS" +msgstr "" + +msgid "Cable" +msgstr "" + +msgid "Cable Scan" +msgstr "" + +msgid "Cache thumbnails" +msgstr "" + +msgid "Calculate" +msgstr "" + +msgid "Calculate all positions" +msgstr "" + +msgid "Calculation complete" +msgstr "" + +msgid "Calibrate" +msgstr "" + +msgid "Can be used for different fps between external subtitles and video." +msgstr "" + +msgid "Cancel" +msgstr "Отказ" + +msgid "Cannot determine" +msgstr "" + +msgid "Cannot find any signal ..., aborting !" +msgstr "" + +msgid "Cannot move files on a different disk or system to the trash can" +msgstr "" + +msgid "Cannot move to trash can" +msgstr "" + +msgid "Capacity: " +msgstr "Капацитет: " + +msgid "Card" +msgstr "Карта" + +msgid "Cascade PiP" +msgstr "" + +msgid "Center DVB subtitles" +msgstr "" + +msgid "Center time-labels and remove date" +msgstr "" + +msgid "Change bouquets in quickzap" +msgstr "Смяна букет при бързопревкл." + +msgid "Change pin code" +msgstr "Смяна ПИН код" + +msgid "Change recording (duration)" +msgstr "" + +msgid "Change recording (endtime)" +msgstr "" + +msgid "Change repeat and delay settings?" +msgstr "" + +msgid "Change service PIN" +msgstr "Смяна ПИН на услуги" + +msgid "Change service PINs" +msgstr "Смяна ПИН на услуги" + +msgid "Change setup PIN" +msgstr "Смяна ПИН за настройки" + +msgid "Change step size" +msgstr "" + +msgid "Change timer" +msgstr "" + +msgid "Changelog" +msgstr "" + +msgid "Channel" +msgstr "Канал" + +msgid "Channel list type" +msgstr "" + +msgid "Channel not in services list" +msgstr "Каналът не е в списъка" + +msgid "Channel selection" +msgstr "" + +msgid "Channel:" +msgstr "Канал:" + +msgid "Channellist menu" +msgstr "Меню списък с канали" + +msgid "Chap." +msgstr "" + +msgid "Chapter" +msgstr "Глава" + +msgid "Chapter:" +msgstr "Глава:" + +msgid "Check" +msgstr "Проверка" + +msgid "Check the internet connection" +msgstr "" + +msgid "Check the internet connection again" +msgstr "" + +msgid "Checking filesystem..." +msgstr "Проверявам файловата с-ма..." + +msgid "Checking the internet connection" +msgstr "" + +#, python-format +msgid "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" +msgstr "" + +msgid "Children/Youth" +msgstr "" + +msgid "Choose which tuner to configure." +msgstr "" + +msgid "Circular left" +msgstr "Кръгова лява" + +msgid "Circular right" +msgstr "Кръгова дясна" + +msgid "Cleanup" +msgstr "Почистване" + +msgid "Clear" +msgstr "" + +msgid "Clear before scan" +msgstr "Изчистване преди сканиране" + +msgid "Clear fixed" +msgstr "" + +msgid "Clear log" +msgstr "Изтрий лога" + +msgid "Clear playlist" +msgstr "" + +msgid "Close" +msgstr "Затваряне" + +msgid "Close PiP on exit" +msgstr "" + +msgid "Close title selection" +msgstr "" + +msgid "Code rate HP" +msgstr "" + +msgid "Code rate LP" +msgstr "" + +msgid "Coderate HP" +msgstr "" + +msgid "Coderate LP" +msgstr "" + +msgid "Collection name" +msgstr "Име на Колекцията" + +msgid "Collection settings" +msgstr "Настройки на Колекция" + +msgid "Color format" +msgstr "" + +msgid "Command execution..." +msgstr "Изпълнение на команда..." + +msgid "Command order" +msgstr "Ред на команди" + +msgid "Common Interface" +msgstr "" + +msgid "Common Interface assignment" +msgstr "" + +msgid "Communication" +msgstr "Комуникация" + +msgid "Compact flash" +msgstr "" + +msgid "Complete" +msgstr "Завършен" + +msgid "Complex (allows mixing audio tracks and aspects)" +msgstr "" + +msgid "Composition of the recording filenames" +msgstr "" + +msgid "Configuration mode" +msgstr "Режим Конфигурация" + +#, python-format +msgid "Configuration mode: %s" +msgstr "Режим Конфигурация: %s" + +msgid "Configuration..." +msgstr "Конфигурация..." + +msgid "Configure an additional delay to improve external subtitle synchronisation." +msgstr "" + +msgid "Configure an additional delay to improve subtitle synchronisation." +msgstr "" + +msgid "Configure for how long the infobar will remain visible after activation." +msgstr "" + +msgid "Configure for how many minutes finished events should remain visible in the EPG. Useful when you need information about an event which has just finished, or has been delayed." +msgstr "" + +msgid "Configure how recording filenames are constructed." +msgstr "" + +msgid "Configure how the fan should operate" +msgstr "" + +msgid "Configure if and how crypto icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how long the latest service in the PiP will be remembered." +msgstr "" + +msgid "Configure if and how service type icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how wide columns will be shown in the channel selection list." +msgstr "" + +msgid "Configure if service picons will be shown in the channel selection list." +msgstr "" + +msgid "Configure interface" +msgstr "Конфигуриране интерфейс." + +msgid "Configure nameservers" +msgstr "Конфигуриране nameservers" + +msgid "Configure on which devices the background delete option should be used." +msgstr "" + +msgid "Configure remote control type" +msgstr "" + +msgid "Configure the DiSEqC mode for this LNB." +msgstr "" + +msgid "Configure the IP address." +msgstr "" + +msgid "Configure the aspect ratio of the screen." +msgstr "" + +msgid "Configure the behavior of the 'pause and ok' key when movie playback is already paused." +msgstr "" + +msgid "Configure the behavior when movie playback is manually stopped." +msgstr "" + +msgid "Configure the behavior when movie playback is started." +msgstr "" + +msgid "Configure the behavior when reaching the end of a movie, during movie playback." +msgstr "" + +msgid "Configure the border width of the subtitles. The dark border makes the subtitles easier to read on a light background." +msgstr "" + +msgid "Configure the brightness level of the front panel display during standby." +msgstr "" + +msgid "Configure the brightness level of the front panel display." +msgstr "" + +msgid "Configure the color of the external subtitles, alternative (normal in white, italic in yellow, bold in cyan, underscore in green), white or yellow." +msgstr "" + +msgid "Configure the color of the teletext subtitles." +msgstr "" + +msgid "Configure the contrast level of the front panel display." +msgstr "" + +msgid "Configure the cursor behaviour in the channel selection list. When opening the channel selection list you can keep on the current service or already select up/down and you are able to revert the B+/B- buttons." +msgstr "" + +msgid "Configure the duration in hours the receiver should go to standby when the receiver is not controlled." +msgstr "" + +msgid "Configure the duration in minutes for the screensaver." +msgstr "" + +msgid "Configure the duration in minutes for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +msgstr "" + +msgid "Configure the duration when the receiver should go to shut down in case the receiver is in standby mode." +msgstr "" + +msgid "Configure the first audio language (highest priority)." +msgstr "" + +msgid "Configure the first subtitle language (highest priority)." +msgstr "" + +msgid "Configure the font size of the subtitles." +msgstr "" + +msgid "Configure the fourth audio language." +msgstr "" + +msgid "Configure the fourth subtitle language." +msgstr "" + +msgid "Configure the function of a long press on the power button." +msgstr "" + +msgid "Configure the function of a short press on the power button." +msgstr "" + +msgid "Configure the function of the '0' button do when PIP is active." +msgstr "" + +msgid "Configure the gateway." +msgstr "" + +msgid "Configure the general audio delay of Dolby Digital sound tracks." +msgstr "" + +msgid "Configure the general audio delay of stereo sound tracks." +msgstr "" + +msgid "Configure the hard disk drive to go to standby after the specified idle time." +msgstr "" + +msgid "Configure the horizontal alignment of the subtitles." +msgstr "" + +msgid "Configure the initial fast forward speed. When you press the fast forward button, winding will start at this speed." +msgstr "" + +msgid "Configure the initial rewind speed. When you press the rewind button, winding will start at this speed." +msgstr "" + +msgid "Configure the latitude of your location." +msgstr "" + +msgid "Configure the longitude of your location." +msgstr "" + +msgid "Configure the minimum amount of disk space to be available for recordings. When the amount of space drops below this value, deleted items will be removed from the trash can." +msgstr "" + +msgid "Configure the nameserver (DNS)." +msgstr "" + +msgid "Configure the netmask." +msgstr "" + +msgid "Configure the number of days after which items are automaticaly removed from the trash can." +msgstr "" + +msgid "Configure the number of days old timers are kept before they are automatically removed from the timer list." +msgstr "" + +msgid "Configure the offline decoding delay in milliseconds. The configured delay is observed at each control word parity change." +msgstr "" + +msgid "Configure the possible fast forward speeds." +msgstr "" + +msgid "Configure the possible rewind speeds." +msgstr "" + +msgid "Configure the primary EPG language." +msgstr "" + +msgid "Configure the refresh rate of the screen." +msgstr "" + +msgid "Configure the screen resolution in PC output mode." +msgstr "" + +msgid "Configure the second audio language." +msgstr "" + +msgid "Configure the second subtitle language." +msgstr "" + +msgid "Configure the secondary EPG language." +msgstr "" + +msgid "Configure the sharpness of the video scaling." +msgstr "" + +msgid "Configure the skip time interval for the '1'/'3' buttons." +msgstr "" + +msgid "Configure the skip time interval for the '4'/'6' buttons." +msgstr "" + +msgid "Configure the skip time interval for the '7'/'9' buttons." +msgstr "" + +msgid "Configure the slow motion speeds." +msgstr "" + +msgid "Configure the source of the frontend data as shown on the infobars. 'Settings' is as stored on the settings. 'Tuner' is as reported by the tuner." +msgstr "" + +msgid "Configure the speed of the background deletion process. Lower speed will consume less hard disk drive performance." +msgstr "" + +msgid "Configure the speed of the fan" +msgstr "" + +msgid "Configure the subtitle delay when timing information is not available." +msgstr "" + +msgid "Configure the third audio language." +msgstr "" + +msgid "Configure the third subtitle language." +msgstr "" + +msgid "Configure the transparency of the OSD." +msgstr "" + +msgid "Configure the transparency of the black background of graphical DVB subtitles." +msgstr "" + +msgid "Configure the tuner mode." +msgstr "" + +msgid "Configure the type of status indication icons shown in the movielist." +msgstr "" + +msgid "Configure the vertical position of the subtitles, measured from the bottom of the screen." +msgstr "" + +msgid "Configure the video output mode (or resolution)." +msgstr "" + +msgid "Configure the way in which the receiver changes channels." +msgstr "" + +msgid "Configure where completed timers show up in the timer list." +msgstr "" + +msgid "Configure whether (and for how long) a second infobar will be shown when OK is pressed twice. The second infobar contains additional information about the current channel." +msgstr "" + +msgid "Configure whether multi channel sound tracks should be downmixed to stereo." +msgstr "" + +msgid "Configure whether or not an icon should be shown when your motorized dish is moving." +msgstr "" + +msgid "Configure which access level to use for the configuration menu. Expert level gives access to all items." +msgstr "" + +msgid "Configure which color format should be used on the SCART output." +msgstr "" + +msgid "Configure which tuner for recordings will be preferred, when more than one tuner is available." +msgstr "" + +msgid "Configure which tuner type will be preferred, when the same service is available on different types of tuners." +msgstr "" + +msgid "Configure which tuner will be preferred, when more than one tuner is available. If set to 'auto' the system will give priority to the tuner having the lowest number of channels/satellites." +msgstr "" + +msgid "Configure your internal LAN" +msgstr "Конфигуриране на вашата вътрешна LAN." + +msgid "Configure your network again" +msgstr "Повторно конфигуриране на вашата мрежа." + +msgid "Configure your network settings, and press OK to start the scan" +msgstr "" + +msgid "Configure your wireless LAN again" +msgstr "Повторно конфигуриране на вашата WLAN мрежа." + +msgid "Configures which video output connector will be used." +msgstr "" + +msgid "Configuring" +msgstr "Конфигуриране" + +msgid "Conflicting timer" +msgstr "Несъвместим таймер" + +msgid "Connect" +msgstr "Свържи" + +msgid "Connect to a wireless network" +msgstr "Свържи се с безжична мрежа" + +msgid "Connected satellites" +msgstr "" + +msgid "Connected to" +msgstr "Свързан с" + +msgid "Connected!" +msgstr "Свързан!" + +msgid "Constellation" +msgstr "" + +msgid "Content does not fit on DVD!" +msgstr "Съдържанието не се побира на DVD!" + +msgid "Continue" +msgstr "Продължи" + +msgid "Continue in background" +msgstr "Продължаване като фон" + +msgid "Continue playback" +msgstr "" + +msgid "Continue playing" +msgstr "Продължи възпроизвеждането" + +msgid "Continues play (loop)" +msgstr "" + +msgid "Contrast" +msgstr "Контраст" + +msgid "Convert ext3 filesystem to ext4" +msgstr "" + +msgid "Convert ext3 to ext4" +msgstr "" + +msgid "Converting ext3 to ext4..." +msgstr "" + +msgid "Copy" +msgstr "" + +msgid "Could not connect to receiver .NFI image feed server:" +msgstr "" + +msgid "Could not find installed channel list." +msgstr "" + +msgid "Could not load medium! No disc inserted?" +msgstr "" + +msgid "Could not open Picture in Picture" +msgstr "" + +#, python-format +msgid "Could not record due to conflicting timer %s" +msgstr "" + +#, python-format +msgid "Could not record due to invalid service %s" +msgstr "" + +msgid "Create DVD-ISO" +msgstr "Създай DVD-ISO" + +msgid "Create more detailed crash log" +msgstr "" + +#, python-format +msgid "Creating directory %s failed." +msgstr "Грешка при създаване директория %s." + +msgid "Creating filesystem" +msgstr "" + +msgid "Creating partition" +msgstr "" + +msgid "Croatian" +msgstr "Хърватски" + +msgid "Current CEC address" +msgstr "" + +msgid "Current device: " +msgstr "" + +msgid "Current event EPG" +msgstr "" + +#, python-format +msgid "Current mode: %s \n" +msgstr "" + +msgid "Current settings:" +msgstr "Текущи настройки:" + +msgid "Current transponder" +msgstr "" + +msgid "Current value: " +msgstr "" + +msgid "Current version:" +msgstr "Текуща версия:" + +msgid "Currently installed image" +msgstr "" + +msgid "Currently the commit log cannot be retrieved - please try later again" +msgstr "" + +msgid "Custom skip time for '1'/'3' buttons" +msgstr "" + +msgid "Custom skip time for '4'/'6' buttons" +msgstr "" + +msgid "Custom skip time for '7'/'9' buttons" +msgstr "" + +msgid "Customize" +msgstr "Лични настройки" + +msgid "Customize channel list cursor behavior" +msgstr "" + +msgid "Cut" +msgstr "Изрежи" + +msgid "Cutlist editor..." +msgstr "" + +msgid "Czech" +msgstr "Чешки" + +msgid "D" +msgstr "" + +msgid "DHCP" +msgstr "" + +msgid "DMM advanced" +msgstr "" + +msgid "DMM normal" +msgstr "" + +msgid "DUAL LAYER DVD" +msgstr "" + +msgid "DVB subtitle black transparency" +msgstr "" + +msgid "DVB-C" +msgstr "" + +msgid "DVB-C ANNEX C" +msgstr "" + +msgid "DVB-S" +msgstr "" + +msgid "DVB-S2" +msgstr "" + +msgid "DVB-T" +msgstr "" + +msgid "DVB-T2" +msgstr "" + +msgid "DVD data format" +msgstr "" + +msgid "DVD file browser" +msgstr "" + +msgid "DVD media toolbox" +msgstr "" + +msgid "DVD player" +msgstr "" + +msgid "DVD titlelist" +msgstr "" + +msgid "Danish" +msgstr "Датски" + +msgid "Date" +msgstr "Дата" + +msgid "Date/time input" +msgstr "" + +msgid "Deep standby" +msgstr "Изключване" + +msgid "Default" +msgstr "" + +msgid "Default movie location" +msgstr "" + +msgid "Default settings" +msgstr "Стандартни Настройки" + +msgid "Delay before key repeat starts:" +msgstr "" + +msgid "Delay for external subtitles" +msgstr "" + +msgid "Delete" +msgstr "Изтриване" + +msgid "Delete entry" +msgstr "Изтриване запис" + +msgid "Delete failed!" +msgstr "Неуспешно изтриване!" + +msgid "Delete file" +msgstr "" + +msgid "Delete playlist entry" +msgstr "" + +msgid "Delete saved playlist" +msgstr "" + +msgid "Delete timer" +msgstr "" + +msgid "Delete..." +msgstr "" + +msgid "Deleted" +msgstr "" + +msgid "Deleted items" +msgstr "" + +msgid "Depth" +msgstr "" + +msgid "Descramble http streams" +msgstr "" + +msgid "Description" +msgstr "Описание" + +msgid "Deselect" +msgstr "Отмяна Избор" + +msgid "Details for plugin: " +msgstr "" + +msgid "Detected HDD:" +msgstr "Oткрит HDD:" + +msgid "Detected NIMs:" +msgstr "Открит NIMs:" + +msgid "Devicename:" +msgstr "" + +msgid "Devide" +msgstr "" + +msgid "DiSEqC" +msgstr "" + +msgid "DiSEqC 1.0 command" +msgstr "" + +msgid "DiSEqC 1.1 command" +msgstr "" + +msgid "DiSEqC 1.1 repeats" +msgstr "" + +msgid "DiSEqC A/B" +msgstr "" + +msgid "DiSEqC A/B/C/D" +msgstr "" + +msgid "DiSEqC mode" +msgstr "DiSEqC режим" + +#, python-format +msgid "DiSEqC port %s: %s" +msgstr "" + +msgid "DiSEqC-tester settings" +msgstr "" + +msgid "Dialing:" +msgstr "" + +msgid "Digital contour removal" +msgstr "" + +msgid "Direct playback of linked titles without menu" +msgstr "Директно възпроизвеждане на свързаните заглавия без менюта" + +msgid "Directory" +msgstr "" + +#, python-format +msgid "Directory %s does not exist." +msgstr "" + +#, python-format +msgid "Directory %s nonexistent." +msgstr "Директория %s не съществува." + +msgid "Directory browser" +msgstr "" + +#, python-format +msgid "Directory contains %d file(s) and %d sub-directories.\n" +msgstr "" + +#, python-format +msgid "Directory contains %s and %s." +msgstr "" + +msgid "Disable" +msgstr "Спри" + +msgid "Disable Picture in Picture" +msgstr "Спри Картина в Картината" + +msgid "Disable background scanning" +msgstr "" + +msgid "Disable timer" +msgstr "" + +msgid "Disabled" +msgstr "Спрян" + +msgid "Disconnect" +msgstr "" + +msgid "Disk space to reserve for recordings (in GB)" +msgstr "" + +msgid "Display 16:9 content as" +msgstr "Покажи 16:9 като" + +msgid "Display 4:3 content as" +msgstr "Покажи 4:3 като" + +msgid "Display >16:9 content as" +msgstr "Покажи >16:9 като" + +msgid "Display and userinterface" +msgstr "" + +msgid "Display message before playing next movie" +msgstr "" + +msgid "Display setup" +msgstr "Настройки Дисплей" + +msgid "Do not change" +msgstr "" + +msgid "Do not record" +msgstr "Не записвай" + +msgid "Do nothing" +msgstr "" + +msgid "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" +msgstr "" +"Искате ли да проверите файловата система?\n" +"Това може да отнеме доста време!" + +msgid "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" +msgstr "" + +#, python-format +msgid "Do you really want to delete %s?" +msgstr "Наистина ли искате да изтриете %s?" + +#, python-format +msgid "" +"Do you really want to download\n" +"the plugin \"%s\"?" +msgstr "" +"Искате ли да изтеглите\n" +"плъгина \"%s\"?" + +msgid "Do you really want to exit?" +msgstr "" + +msgid "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" +msgstr "" + +#, python-format +msgid "" +"Do you really want to remove\n" +"the plugin \"%s\"?" +msgstr "" + +#, python-format +msgid "Do you really want to remove directory %s from the disk?" +msgstr "Наистина ли искате да премахнете директория %s от диска?" + +#, python-format +msgid "Do you really want to remove your bookmark of %s?" +msgstr "Наистина ли искате да премахнете вашия bookmark от %s?" + +msgid "Do you want this?" +msgstr "" + +msgid "Do you want to burn this collection to DVD medium?" +msgstr "Наистина ли искате да запишете тази колекция на DVD?" + +msgid "Do you want to do a service scan?" +msgstr "Искате ли да сканирам за канали?" + +msgid "Do you want to do another manual service scan?" +msgstr "Искате ли да извърша друго ръчно сканиране?" + +#, python-format +msgid "Do you want to download the image to %s ?" +msgstr "" + +msgid "Do you want to install a channel list?" +msgstr "" + +msgid "Do you want to install the package:\n" +msgstr "Да инсталирам ли пакета:\n" + +msgid "Do you want to play DVD in drive?" +msgstr "Да възпроизведа ли DVD в устройството?" + +msgid "Do you want to preview this DVD before burning?" +msgstr "Искате ли да прегледате това DVD преди записа?" + +msgid "Do you want to reboot your receiver?" +msgstr "Искате ли да рестартирам вашия Clarke-Tech?" + +msgid "Do you want to remove the package:\n" +msgstr "Искате ли да премахна пакета:\n" + +msgid "Do you want to restore your settings?" +msgstr "Искате ли да възстановите вашите настройки?" + +msgid "Do you want to resume this playback?" +msgstr "Да продължа ли с възпроизвеждането?" + +#, python-format +msgid "Do you want to update your receiver to %s?" +msgstr "Искате ли да актуализирате вашия Clarke-Tech към %s?" + +msgid "Do you want to update your receiver?" +msgstr "Искате ли да актуализирате вашия Clarke-Tech?" + +msgid "Do you want to upgrade the package:\n" +msgstr "Искате ли да ъпгрейднете този пакет:\n" + +msgid "Don't stop current event but disable coming events" +msgstr "Не спирай текущото предаване но спри следващите" + +#, python-format +msgid "Done - Installed, upgraded or removed %d package (%s)" +msgid_plural "Done - Installed, upgraded or removed %d packages (%s)" +msgstr[0] "" +msgstr[1] "" + +msgid "Download" +msgstr "Изтегли" + +#, python-format +msgid "Download %s from server" +msgstr "" + +msgid "Download .NFI-files for USB-flasher" +msgstr "" + +msgid "Download plugins" +msgstr "Изтегли плъгини" + +msgid "Downloadable new plugins" +msgstr "Има нови плъгини за теглене" + +msgid "Downloadable plugins" +msgstr "Плъгини за теглене" + +msgid "Downloading" +msgstr "Изтегляне" + +msgid "Downloading plugin information. Please wait..." +msgstr "Изтеглям информация за плъгина. Моля изчакайте..." + +msgid "Dutch" +msgstr "Холандски" + +msgid "Dynamic contrast" +msgstr "" + +msgid "E" +msgstr "" + +msgid "EPG" +msgstr "" + +msgid "EPG language selection 1" +msgstr "" + +msgid "EPG language selection 2" +msgstr "" + +msgid "EPG selection" +msgstr "" + +msgid "EPG settings" +msgstr "" + +#, python-format +msgid "ERROR - failed to scan (%s)!" +msgstr "Грешка при сканиране (%s)!" + +msgid "East" +msgstr "Изток" + +msgid "East limit set" +msgstr "" + +msgid "Edit" +msgstr "Редактирай" + +msgid "Edit DNS" +msgstr "Редактирай DNS" + +msgid "Edit bouquets list" +msgstr "Редакт. списъка с букети" + +msgid "Edit chapters of current title" +msgstr "Редакт. главите на текущото заглавие" + +msgid "Edit services list" +msgstr "Редакт. листа с канали" + +msgid "Edit settings" +msgstr "Редакт.настройки" + +msgid "Edit the nameserver configuration of your receiver.\n" +msgstr "" + +msgid "Edit the network configuration of your receiver.\n" +msgstr "Редактиране мрежовите настройки за вашия Clarke-Tech.\n" + +msgid "Edit timer" +msgstr "" + +msgid "Edit title" +msgstr "Редакт.заглавие" + +msgid "Edit upgrade source url." +msgstr "" + +msgid "Education/Science/..." +msgstr "" + +msgid "Electronic Program Guide" +msgstr "Електронен Програмен Гайд" + +msgid "Enable" +msgstr "Избери" + +msgid "Enable 'neutrino' style channel select controlling" +msgstr "" + +msgid "Enable 'neutrino' style zap controlling" +msgstr "" + +msgid "Enable 5V for active antenna" +msgstr "Включи 5V за активната антена" + +msgid "Enable EIT EPG" +msgstr "" + +msgid "Enable MHW EPG" +msgstr "" + +msgid "Enable Netmed EPG" +msgstr "" + +msgid "Enable OK for channel selection" +msgstr "" + +msgid "Enable ViaSat EPG" +msgstr "" + +msgid "Enable Virgin EPG" +msgstr "" + +msgid "Enable Wake On LAN" +msgstr "" + +msgid "Enable auto fast scan" +msgstr "" + +msgid "Enable bouquet selection in multi-EPG" +msgstr "" + +msgid "Enable freesat EPG" +msgstr "" + +msgid "Enable multiple bouquets" +msgstr "Разреши много букети" + +msgid "Enable parental control" +msgstr "Включи родителски контрол" + +msgid "Enable teletext caching" +msgstr "" + +msgid "Enable zapping with CH+/-, B+/-, P+/-" +msgstr "" + +msgid "Enabled" +msgstr "Разрешен" + +msgid "Encrypted: " +msgstr "" + +msgid "Encryption" +msgstr "Кодировка" + +msgid "Encryption key" +msgstr "" + +msgid "Encryption key type" +msgstr "" + +msgid "Encryption:" +msgstr "" + +msgid "End time" +msgstr "Край" + +msgid "End time to ignore inactivity sleeptimer" +msgstr "" + +msgid "End time to ignore shutdown in standby" +msgstr "" + +msgid "English" +msgstr "Английски" + +msgid "Enigma2 skin selector" +msgstr "" + +msgid "Enter main menu..." +msgstr "Влезте в главното меню..." + +msgid "Enter pin code" +msgstr "" + +msgid "Enter the service pin" +msgstr "Въведете ПИН за канали" + +msgid "Equal to" +msgstr "" + +msgid "Error" +msgstr "Грешка" + +msgid "Error code" +msgstr "" + +msgid "Error executing plugin" +msgstr "Грешка при стартиране на плъгина" + +#, python-format +msgid "" +"Error: %s\n" +"Retry?" +msgstr "" +"Грешка: %s\n" +"Да опитам отново?" + +msgid "Estonian" +msgstr "" + +msgid "Ethernet network interface" +msgstr "" + +msgid "Event font size (relative to skin size)" +msgstr "" + +msgid "Event view" +msgstr "" + +msgid "Event view menu" +msgstr "" + +msgid "Everywhere" +msgstr "" + +msgid "Exceeds dual layer medium!" +msgstr "" + +msgid "Execution finished!!" +msgstr "" + +msgid "Execution progress:" +msgstr "" + +msgid "Exif" +msgstr "" + +msgid "Exit" +msgstr "Изход" + +msgid "Exit EPG" +msgstr "" + +msgid "Exit editor" +msgstr "Изход редактор" + +msgid "Exit input device selection." +msgstr "" + +msgid "Exit media player?" +msgstr "" + +msgid "Exit mediaplayer" +msgstr "" + +msgid "Exit movie list" +msgstr "" + +msgid "Exit movie player?" +msgstr "" + +msgid "Exit nameserver configuration" +msgstr "" + +msgid "Exit network interface list" +msgstr "" + +msgid "Exit network wizard" +msgstr "Изход от мрежовия помощник" + +msgid "Exit the wizard" +msgstr "Изход от помощника" + +msgid "Expert" +msgstr "Експерт" + +msgid "Extend sleeptimer 15 minutes" +msgstr "" + +msgid "Extended Software" +msgstr "" + +msgid "Extended Software Plugin" +msgstr "" + +msgid "Extended network setup plugin..." +msgstr "" + +msgid "Extended setup..." +msgstr "Разширени Настройки..." + +msgid "Extensions" +msgstr "" + +msgid "Extensions management" +msgstr "" + +msgid "External PiP" +msgstr "" + +msgid "External subtitle color" +msgstr "" + +msgid "Extra motor options" +msgstr "" + +msgid "FEC" +msgstr "" + +msgid "FTA" +msgstr "" + +msgid "Factory reset" +msgstr "Фабрични настройки" + +msgid "Failed" +msgstr "Грешка" + +msgid "Failed to write /tmp/positionersetup.log: " +msgstr "" + +#, python-format +msgid "Fan %d" +msgstr "" + +#, python-format +msgid "Fan %d PWM" +msgstr "" + +#, python-format +msgid "Fan %d voltage" +msgstr "" + +msgid "Fan operation" +msgstr "" + +msgid "Fan speed" +msgstr "" + +msgid "Fast" +msgstr "Бърз" + +msgid "Fast DiSEqC" +msgstr "Бърз DiSEqC" + +msgid "Fast Scan" +msgstr "Бързо Сканиране" + +msgid "Fast epoch" +msgstr "" + +msgid "Fast forward speeds" +msgstr "" + +msgid "Favourites" +msgstr "Предпочитани" + +msgid "File appears to be busy.\n" +msgstr "" + +msgid "Filesystem check" +msgstr "Проверка файлова с-ма" + +msgid "Final position at" +msgstr "" + +msgid "Final position at index" +msgstr "" + +msgid "Fine movement" +msgstr "" + +msgid "Finetune" +msgstr "Фина Настройка" + +msgid "Finished" +msgstr "Завърши" + +msgid "Finished configuring your network" +msgstr "Завърши мрежовата конфигурация" + +msgid "Finished restarting your network" +msgstr "Завърши рестартирането на мрежата" + +msgid "Finnish" +msgstr "Край" + +msgid "Fixed" +msgstr "" + +msgid "Flash" +msgstr "" + +msgid "Flashing failed" +msgstr "Грешка при флашване" + +msgid "Following tasks will be done after you press OK!" +msgstr "" + +msgid "Format" +msgstr "Форматиране" + +msgid "Forward volume keys" +msgstr "" + +msgid "Frame size in full view" +msgstr "" + +msgid "French" +msgstr "Френски" + +msgid "Frequency" +msgstr "Честота" + +msgid "Frequency bands" +msgstr "Честотна лента" + +msgid "Frequency scan step size(khz)" +msgstr "" + +msgid "Frequency steps" +msgstr "" + +msgid "Frequency:" +msgstr "" + +msgid "Fri" +msgstr "Пет" + +msgid "Friday" +msgstr "Петък" + +msgid "From :" +msgstr "" + +#, python-format +msgid "Frontprocessor version: %d" +msgstr "" + +msgid "Full transparency" +msgstr "" + +msgid "Fulview resulution" +msgstr "" + +msgid "Function of OK button" +msgstr "" + +msgid "Further Options" +msgstr "" + +msgid "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" +msgstr "" + +msgid "Gateway" +msgstr "Шлюз" + +msgid "General AC3 delay" +msgstr "" + +msgid "General PCM delay" +msgstr "" + +msgid "Genre" +msgstr "Жанр" + +msgid "German" +msgstr "Немски" + +msgid "Get latest experimental image" +msgstr "" + +msgid "Get latest release image" +msgstr "" + +msgid "Getting plugin information. Please wait..." +msgstr "Приемам инфо за плъгина. Моля изчакайте..." + +msgid "Go down the list" +msgstr "" + +msgid "Go to first movie or last item" +msgstr "" + +msgid "Go to first movie or top of list" +msgstr "" + +msgid "Go to first service" +msgstr "" + +msgid "Go to last service" +msgstr "" + +msgid "Go to next event" +msgstr "" + +msgid "Go to next page of service" +msgstr "" + +msgid "Go to previous event" +msgstr "" + +msgid "Go to previous page of service" +msgstr "" + +msgid "Go up the list" +msgstr "" + +msgid "Goto" +msgstr "" + +msgid "Goto 0" +msgstr "Към 0" + +msgid "Goto :" +msgstr "" + +msgid "Goto X" +msgstr "" + +msgid "Goto index position" +msgstr "" + +msgid "Goto next day of events" +msgstr "" + +msgid "Goto next page of events" +msgstr "" + +msgid "Goto position" +msgstr "Към позиция" + +msgid "Goto previous day of events" +msgstr "" + +msgid "Goto previous page of events" +msgstr "" + +msgid "Goto specific date/time" +msgstr "" + +msgid "GotoX calibration" +msgstr "" + +msgid "GraphMultiEpg Settings" +msgstr "" + +msgid "Graphical Multi EPG" +msgstr "Графичен Мулти ЕПГ" + +msgid "Greek" +msgstr "Гръцки" + +msgid "Green boost" +msgstr "" + +msgid "Guard interval" +msgstr "" + +msgid "HD list" +msgstr "" + +msgid "HDMI-CEC setup" +msgstr "" + +msgid "Handle standby from TV" +msgstr "" + +msgid "Handle wakeup from TV" +msgstr "" + +msgid "Hard disk" +msgstr "Твърд Диск" + +msgid "Hard disk setup" +msgstr "Настройки HDD" + +msgid "Hard disk standby after" +msgstr "HDD в готовност след" + +msgid "Harddisk" +msgstr "Твърд диск" + +msgid "Hardware: " +msgstr "" + +msgid "Hebrew" +msgstr "" + +msgid "Helps setting up your dish" +msgstr "" + +msgid "Hidden network" +msgstr "" + +msgid "Hide CI messages" +msgstr "" + +msgid "Hide channel list in radio mode" +msgstr "" + +msgid "Hide known extensions" +msgstr "" + +msgid "Hide number markers" +msgstr "" + +msgid "Hide player" +msgstr "" + +msgid "Hide zap errors" +msgstr "" + +msgid "Hierarchy info" +msgstr "" + +msgid "Hierarchy information" +msgstr "" + +msgid "High bitrate support" +msgstr "Поддръжка висок битрейт" + +msgid "Hold screen" +msgstr "" + +msgid "Hold till locked" +msgstr "" + +msgid "Home" +msgstr "" + +msgid "Horizontal" +msgstr "Хоризонтална" + +msgid "Horizontal turning speed" +msgstr "" + +msgid "How many minutes do you want to record?" +msgstr "Колко минути желаете да запишете?" + +msgid "Hue" +msgstr "" + +msgid "Hungarian" +msgstr "Унгарски" + +msgid "IP address" +msgstr "" + +msgid "ISO file is too large for this filesystem!" +msgstr "ISO файла е много голям за тази файлова система!" + +msgid "ISO path" +msgstr "" + +msgid "Icons" +msgstr "" + +msgid "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." +msgstr "" +"Ако виждате това, нещо не е наред с\n" +"вашата скарт връзка. Натиснете OK за връщане." + +msgid "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." +msgstr "" +"Ако вашия ТВ има опция за подсилване на яркост или контраст, спрете я.Ако има режим \"dynamic\", поставете го на standard. Настройте подсветката така, че да отговаря на вкуса ви. Намалете контраста на вашия ТВ колкото се може повече.\n" +"След това намалете яркостта колкото е възможно, но така, че двете сиви сенки най-отдолу да останат различими.\n" +"Не се грижете за ярките сенки сега. Те ще се коригират при следващата стъпка.\n" +"Ако сте доволни от резултата, натиснете OK." + +msgid "Image: " +msgstr "Имидж: " + +msgid "Immediate shutdown" +msgstr "" + +msgid "In order to record a timer, the TV was switched to the recording service!\n" +msgstr "" + +msgid "In progress" +msgstr "" + +msgid "Inactivity Sleeptimer" +msgstr "" + +msgid "Include AIT in http streams" +msgstr "" + +msgid "Include ECM in http streams" +msgstr "" + +msgid "Include EIT in http streams" +msgstr "" + +msgid "Incorrect type service for PiP!" +msgstr "" + +msgid "Increased voltage" +msgstr "Увеличен волтаж" + +msgid "Index" +msgstr "Индекс" + +msgid "Index allocated:" +msgstr "" + +msgid "Info" +msgstr "Инфо" + +msgid "Info bar" +msgstr "Инфо Лента" + +msgid "Info bar timeout" +msgstr "Времетраене ИнфоЛента" + +msgid "Infobar frontend data source" +msgstr "" + +msgid "Information" +msgstr "Информация" + +msgid "Init" +msgstr "" + +msgid "Initial fast forward speed" +msgstr "" + +msgid "Initial location in new timers" +msgstr "" + +msgid "Initial lock ratio" +msgstr "" + +msgid "Initial rewind speed" +msgstr "" + +msgid "Initial signal quality" +msgstr "" + +msgid "Initial signal quality:" +msgstr "" + +msgid "Initialization" +msgstr "Инициализация" + +msgid "Initialize" +msgstr "Инициализирай" + +msgid "Initializing storage device..." +msgstr "Инициализиране Твърд диск..." + +msgid "Input" +msgstr "Въведи" + +msgid "Input device setup" +msgstr "" + +msgid "Input devices" +msgstr "" + +msgid "Install" +msgstr "Инсталирай" + +msgid "Install a new image with a USB stick" +msgstr "Инсталирай нов имидж с USB стик" + +msgid "Install a new image with your web browser" +msgstr "Инсталирай нов имидж с уеб браузър" + +msgid "Install channel list" +msgstr "Инсталирай списък с канали" + +msgid "Install extensions" +msgstr "" + +msgid "Install extensions." +msgstr "Инсталирай плъгини." + +msgid "Install local extension" +msgstr "Инсталирай плъгин от HDD,USB или .tmp" + +msgid "Install picons on" +msgstr "Инсталирай picons" + +msgid "Install softcam" +msgstr "Инсталирай софткам" + +msgid "Installation has completed." +msgstr "Инсталирането завърши." + +msgid "Installation or removal has completed." +msgstr "Инсталирането или премахването завърши." + +msgid "Installing" +msgstr "Инсталиране" + +msgid "Installing software..." +msgstr "" + +msgid "Instant recording location" +msgstr "" + +msgid "Instant recording..." +msgstr "" + +msgid "Interface: " +msgstr "" + +msgid "Intermediate" +msgstr "Междинен" + +msgid "Internal flash" +msgstr "Вътрешна Флаш" + +msgid "Internal hdd only" +msgstr "" + +msgid "Interval between keys when repeating:" +msgstr "" + +#, python-format +msgid "Invalid directory selected: %s" +msgstr "Избрана грешна директория: %s" + +msgid "Invalid location" +msgstr "Грешно Място" + +msgid "Invalid transponder data" +msgstr "" + +msgid "Inversion" +msgstr "Инверсия" + +msgid "Invert" +msgstr "" + +msgid "Ipkg" +msgstr "" + +msgid "Is this setting ok?" +msgstr "" + +msgid "Is this video mode ok?" +msgstr "" + +msgid "Italian" +msgstr "Италиански" + +msgid "Items per page " +msgstr "" + +msgid "Items per page for list screen" +msgstr "" + +msgid "Job overview" +msgstr "" + +msgid "Jump to beginning of list" +msgstr "" + +msgid "Jump to end of list" +msgstr "" + +msgid "Jump to next marked position" +msgstr "" + +msgid "Jump to previous marked position" +msgstr "" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect) +msgid "Just scale" +msgstr "" + +msgid "Keep service" +msgstr "" + +msgid "Kernel version: " +msgstr "" + +msgid "Keyboard" +msgstr "Клавиатура" + +msgid "Keyboard map" +msgstr "" + +msgid "Keyboard setup" +msgstr "Настройка Клавиатура" + +msgid "LAN adapter" +msgstr "LAN Адаптер" + +msgid "LAN connection" +msgstr "" + +msgid "LNB" +msgstr "" + +msgid "Language" +msgstr "Език" + +msgid "Language selection" +msgstr "Избор Език" + +msgid "Last config" +msgstr "" + +msgid "Last speed" +msgstr "Последна скорост" + +msgid "Last upgrade: " +msgstr "Последна актуализация: " + +msgid "Latest Commits" +msgstr "" + +msgid "Latitude" +msgstr "Ширина" + +msgid "Latvian" +msgstr "Латвийски" + +msgid "Leave DVD player?" +msgstr "" + +msgid "Left" +msgstr "Лява" + +msgid "Left from servicename" +msgstr "" + +msgid "Leisure hobbies" +msgstr "" + +#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term. +msgid "Letterbox" +msgstr "" + +msgid "Letterbox zoom" +msgstr "" + +msgid "Limit character set for recording filenames" +msgstr "" + +msgid "Limit east" +msgstr "Източен лимит" + +msgid "Limit the characters that can be used in recording filenames to (7 bit) ascii. This ensures compatibility with operating systems or file systems with limited character sets." +msgstr "" + +msgid "Limit west" +msgstr "Западен лимит" + +msgid "Limits cancelled" +msgstr "" + +msgid "Limits enabled" +msgstr "" + +msgid "Limits off" +msgstr "Изкл.лимити" + +msgid "Limits on" +msgstr "Бкл.лимити" + +msgid "Link quality:" +msgstr "" + +msgid "Link:" +msgstr "" + +msgid "Linked titles with a DVD menu" +msgstr "" + +msgid "List EPG functions..." +msgstr "" + +msgid "List available networks" +msgstr "" + +msgid "List mode" +msgstr "" + +msgid "List of storage devices" +msgstr "" + +msgid "List type" +msgstr "" + +#, python-format +msgid "List version %d, found %d channel" +msgid_plural "List version %d, found %d channels" +msgstr[0] "" +msgstr[1] "" + +msgid "Listen to the radio..." +msgstr "" + +msgid "Lists reloaded!" +msgstr "" + +msgid "Lithuanian" +msgstr "Литовски" + +msgid "Load" +msgstr "Зареди" + +msgid "Load Length of Movies in Movielist" +msgstr "Зареди дължината на филма в списъка" + +msgid "Load length of movies in movie list" +msgstr "" + +msgid "Load playlist" +msgstr "" + +msgid "Local network" +msgstr "Локална Мрежа" + +msgid "Location" +msgstr "Местоположение" + +msgid "Location for instant recordings" +msgstr "" + +msgid "Lock ratio" +msgstr "" + +msgid "Lock:" +msgstr "Закл:" + +msgid "Log results to harddisk" +msgstr "Записване Log на твърдия диск" + +msgid "Long filenames" +msgstr "" + +msgid "Long key press" +msgstr "Дълго натискане на Бутон" + +msgid "Longitude" +msgstr "Дължина" + +msgid "Loop through to" +msgstr "" + +msgid "Luxembourgish" +msgstr "" + +msgid "MMC card" +msgstr "" + +msgid "MORE" +msgstr "ОЩЕ" + +msgid "Main menu" +msgstr "Основно Меню" + +msgid "Maintain old EPG data for" +msgstr "" + +msgid "Make this mark an 'in' point" +msgstr "" + +msgid "Make this mark an 'out' point" +msgstr "" + +msgid "Make this mark just a mark" +msgstr "" + +msgid "Manage extensions" +msgstr "Управление на пакети" + +msgid "Manage your receiver's software" +msgstr "Управление софтуера на ресийвъра" + +msgid "Manual" +msgstr "" + +msgid "Manual Scan" +msgstr "Ръчно Търсене" + +msgid "Manual configuration" +msgstr "" + +msgid "Manual scan" +msgstr "Ръчно търсене" + +msgid "Manual transponder" +msgstr "Ръчен транспондер" + +msgid "Manufacturer" +msgstr "Производител" + +msgid "Margin after recording (minutes)" +msgstr "" + +msgid "Margin before recording (minutes)" +msgstr "" + +msgid "Max memory positions" +msgstr "" + +msgid "Max. bitrate: " +msgstr "" + +msgid "Media player" +msgstr "Медиа Плеър" + +msgid "Media scanner" +msgstr "" + +msgid "Medium is not a writeable DVD!" +msgstr "" + +msgid "Medium is not empty!" +msgstr "" + +msgid "Memory" +msgstr "" + +msgid "Memory index" +msgstr "" + +msgid "Menu" +msgstr "Меню" + +msgid "Message" +msgstr "Съобщение" + +msgid "Message..." +msgstr "Съобщение..." + +#, python-format +msgid "Minimum age %d years" +msgstr "" + +msgid "Minimum send interval" +msgstr "" + +msgid "Missing " +msgstr "" + +msgctxt "Satellite configuration mode" +msgid "Mode" +msgstr "" + +msgctxt "Video output mode" +msgid "Mode" +msgstr "" + +msgid "Model: " +msgstr "Модел: " + +msgid "Modulation" +msgstr "Модулация" + +msgid "Modulator" +msgstr "Модулатор" + +msgid "Mon" +msgstr "Пон" + +msgid "Mon-Fri" +msgstr "Пон-Пет" + +msgid "Monday" +msgstr "Понеделник" + +msgid "Mosquito noise reduction" +msgstr "" + +msgid "Mount" +msgstr "" + +msgid "Move" +msgstr "" + +msgid "Move PiP to main picture" +msgstr "" + +msgid "Move Picture in Picture" +msgstr "Местене PiP" + +msgid "Move east" +msgstr "Завърти на изток" + +msgid "Move to other directory" +msgstr "" + +msgid "Move to position X" +msgstr "" + +msgid "Move west" +msgstr "Завърти на запад" + +msgid "Moved to position 0" +msgstr "" + +msgid "Moved to position at index" +msgstr "" + +msgid "Movement" +msgstr "" + +msgid "Movie List Configuration" +msgstr "" + +msgid "Movie Selection" +msgstr "" + +msgid "Movie list configuration" +msgstr "" + +msgid "Movie location" +msgstr "" + +msgid "Movie selection" +msgstr "" + +msgid "Movie/Drama" +msgstr "" + +msgid "Movielist menu" +msgstr "" + +msgid "Moving" +msgstr "" + +msgid "Moving east ..." +msgstr "" + +msgid "Moving to position" +msgstr "" + +msgid "Moving west ..." +msgstr "" + +msgid "Multi EPG" +msgstr "Мулти ЕПГ" + +msgid "Multi-EPG bouquet selection" +msgstr "" + +msgid "Multimedia" +msgstr "Мултимедиа" + +msgid "Multiple service support" +msgstr "" + +msgid "Multiplex" +msgstr "" + +msgid "Multisat" +msgstr "" + +msgid "Multisat all select" +msgstr "" + +msgid "Music/Ballet/Dance" +msgstr "" + +msgid "Mute" +msgstr "Без звук" + +msgid "N/A" +msgstr "" + +msgid "NEXT" +msgstr "Следващ" + +msgid "NFI image flashing" +msgstr "" + +msgid "NFI image flashing completed. Press Yellow to Reboot!" +msgstr "Завърши флашването на имидж. Натиснете Жълт за Рестарт!" + +msgid "NIM" +msgstr "" + +msgid "NOW" +msgstr "Сега" + +msgid "NTSC" +msgstr "" + +msgid "Name" +msgstr "Име" + +msgid "Nameserver" +msgstr "DNS" + +#, python-format +msgid "Nameserver %d" +msgstr "DNS %d" + +msgid "Nameserver settings" +msgstr "Настройки DNS" + +msgid "Nameserver setup" +msgstr "Настройки DNS" + +msgid "Namespace" +msgstr "" + +msgid "Netmask" +msgstr "Маска" + +msgid "Network" +msgstr "Мрежа" + +msgid "Network ID" +msgstr "" + +msgid "Network configuration..." +msgstr "Мрежова Конфигурация..." + +msgid "Network mount" +msgstr "Мрежов Маунт" + +#, python-format +msgid "Network mount %s" +msgstr "" + +msgid "Network name (SSID)" +msgstr "" + +msgid "Network scan" +msgstr "Търсене в мрежа" + +msgid "Network setup" +msgstr "Настройки на Мрежа" + +msgid "Network test" +msgstr "Тест на мрежата" + +msgid "Network test..." +msgstr "Тест на мрежата..." + +msgid "Network test: " +msgstr "" + +msgid "Network wizard" +msgstr "Мрежов Помощник" + +msgid "Network:" +msgstr "Мрежа:" + +msgid "New" +msgstr "Нови Канали" + +msgid "New PIN" +msgstr "Нов ПИН" + +msgid "New version:" +msgstr "Нова версия:" + +msgid "News Current Affairs" +msgstr "" + +msgctxt "button label, 'next screen'" +msgid "Next" +msgstr "" + +msgctxt "now/next: 'next' event label" +msgid "Next" +msgstr "Следва" + +msgid "No" +msgstr "Не" + +msgid "No (supported) DVDROM found!" +msgstr "Не е намерен подходящ DVDROM!" + +msgid "No Connection" +msgstr "Няма Връзка!" + +msgid "No HDD found or HDD not initialized!" +msgstr "HDD Не е намерен или не е инициализиран!" + +msgid "No backup needed" +msgstr "Няма нужда от backup" + +msgid "No cable tuner found!" +msgstr "" + +msgid "" +"No data on transponder!\n" +"(Timeout reading PAT)" +msgstr "" +"Няма данни на транспондера!\n" +"(Timeout reading PAT)" + +msgid "No delay" +msgstr "" + +msgid "No description available." +msgstr "Няма налично описание." + +msgid "No details for this image file" +msgstr "Няма данни за този имидж файл" + +msgid "No displayable files on this medium found!" +msgstr "" + +msgid "No event info found, recording indefinitely." +msgstr "Няма инфо за предаването, незабавен запис." + +msgid "No fast winding possible yet.. but you can use the number buttons to skip forward/backward!" +msgstr "" + +msgid "No free index available" +msgstr "" + +msgid "No free tuner!" +msgstr "Няма свободен тунер!" + +msgid "No network connection available." +msgstr "" + +msgid "No networks found" +msgstr "Не са открити мрежи!" + +msgid "No new plugins found" +msgstr "" + +msgid "No positioner capable frontend found." +msgstr "Не е открит съвместим позиционер." + +msgid "No satellites configured. Plese check your tuner setup." +msgstr "" + +msgid "No service" +msgstr "" + +msgid "No services/providers selected" +msgstr "" + +msgid "No standby" +msgstr "" + +msgid "No suitable sat tuner found!" +msgstr "" + +msgid "No tags are set on these movies." +msgstr "" + +msgid "No timeout" +msgstr "" + +msgid "No to all" +msgstr "" + +msgid "No transparency" +msgstr "" + +msgid "No tuner is configured for use with a diseqc positioner!" +msgstr "Няма конфигуриран тунер с diseqc позиционер!" + +msgid "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Няма избран тунер!\n" +"Моля настройте вашия тунер преди търсене на канали." + +msgid "No updates available" +msgstr "" + +msgid "No updates available. Please try again later." +msgstr "" + +msgid "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" +msgstr "" +"Не е открит валиде ПИН за канали!\n" +"Искате ли да смените ПИН сега?\n" +"Ако изберете 'Не' няма да има защита на каналите!" + +msgid "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" +msgstr "" +"Не е открит валиде ПИН за настройки!\n" +"Искате ли да смените ПИН сега?\n" +"Ако изберете 'Не' няма да има защита на настройките!" + +msgid "No wireless networks found! Searching..." +msgstr "" + +msgid "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." +msgstr "" +"Няма открит мрежов адаптер.\n" +"Моля уверете се, че сте включили мрежовия кабел и вашата мрежа е конфигурирана правилно." + +msgid "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." +msgstr "" +"Няма открит безжичен мрежов адаптер.\n" +"Моля уверете се, че сте включили съвместимо WLAN устройство и вашата мрежа е конфигурирана правилно." + +msgid "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." +msgstr "" +"Няма открит безжичен мрежов интерфейс.\n" +"Моля уверете се, че сте включили съвместимо WLAN устройство или включете вашия LAN интерфейс." + +msgid "No, but restart from begin" +msgstr "Не, но рестартирай от начало" + +msgid "No, do nothing." +msgstr "Не не прави нищо." + +msgid "No, just start my receiver" +msgstr "Не, просто стартирай Clarke-Tech" + +msgid "No, never" +msgstr "" + +msgid "None" +msgstr "Никой" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right) +msgid "Nonlinear" +msgstr "" + +msgid "Normal mode" +msgstr "" + +msgid "North" +msgstr "Север" + +msgid "Norwegian" +msgstr "Норвежки" + +msgid "Not associated" +msgstr "" + +msgid "Not configured" +msgstr "" + +#, python-format +msgid "Not enough disk space. Please free up some disk space and try again. (%d MB required, %d MB available)" +msgstr "" + +msgid "Nothing connected" +msgstr "" + +msgid "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Нищо за сканиране!\n" +"Моля настройте вашия тунер преди търсене на канали." + +msgctxt "now/next: 'now' event label" +msgid "Now" +msgstr "Сега" + +msgid "Now playing" +msgstr "" + +msgid "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." +msgstr "Сега използвайте настройките за контраста за да увеличите яркостта на фона колкото се може повече, но така, че да виждате разликите между двете най-ярки нива на сенките. Ако сте го направили, натиснете OK." + +msgid "OK" +msgstr "" + +msgid "OK, guide me through the upgrade process" +msgstr "OK, води ме през процеса на ъпгрейд" + +msgid "ONID" +msgstr "" + +msgid "OSD name request" +msgstr "" + +msgid "OSD settings" +msgstr "OSD Настройки" + +msgid "OSD transparency" +msgstr "OSD прозрачност" + +msgid "Off" +msgstr "Изкл." + +msgid "Offline decode delay (ms)" +msgstr "" + +msgid "Ok" +msgstr "" + +msgid "On" +msgstr "Вкл." + +msgid "On end of movie" +msgstr "" + +msgid "On end of movie (as menu)" +msgstr "" + +msgid "One" +msgstr "Един" + +msgid "Only extensions." +msgstr "" + +msgid "Only free scan" +msgstr "Търсене само Свободни" + +msgid "Open service list" +msgstr "" + +msgid "Open the movie list" +msgstr "" + +msgid "Orbital position" +msgstr "Орбитална Позиция" + +msgid "Original" +msgstr "" + +msgid "Other" +msgstr "" + +msgid "Output" +msgstr "" + +msgid "Overwrite configuration files during software upgrade?" +msgstr "" + +msgid "Overwrite configuration files?" +msgstr "" + +msgid "PAL" +msgstr "" + +msgid "PCR PID" +msgstr "" + +msgid "PIDs" +msgstr "" + +msgid "PIN code needed" +msgstr "Нужен е ПИН код" + +msgid "PLP ID" +msgstr "" + +msgid "PMT PID" +msgstr "" + +msgid "Package list update" +msgstr "Ъпдейт на списъка с пакети" + +msgid "Packet management" +msgstr "Управление на пакети" + +msgid "Packet manager" +msgstr "Управление на пакети" + +#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term +msgid "Pan&scan" +msgstr "" + +msgid "Parent directory" +msgstr "Главна Директория" + +msgid "Parental control" +msgstr "Родителски контрол" + +msgid "Parental control services editor" +msgstr "" + +msgid "Parental control setup" +msgstr "Настройки Родителски контрол" + +msgid "Parental control type" +msgstr "Вид Родителски контрол" + +msgid "Password" +msgstr "Парола" + +msgid "Pause" +msgstr "" + +msgid "Pause movie at end" +msgstr "При завършване на филма натисни пауза" + +msgid "Pause playback" +msgstr "" + +msgid "Pauze/Continue playback" +msgstr "" + +msgid "Percentage left" +msgstr "" + +msgid "Percentage right" +msgstr "" + +msgid "Permanently delete all recordings in the trash can?" +msgstr "" + +msgid "Permanently remove all deleted items" +msgstr "" + +msgid "Persian" +msgstr "" + +msgid "Phone number" +msgstr "Телефонен номер" + +msgid "PiP setup" +msgstr "" + +msgid "Picon" +msgstr "" + +msgid "Picon and service name" +msgstr "" + +msgid "Picture player" +msgstr "" + +#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term. +msgid "Pillarbox" +msgstr "" + +msgid "Pilot" +msgstr "" + +msgid "Play" +msgstr "Пусни" + +msgid "Play DVD" +msgstr "Пусни DVD" + +msgid "Play audio in background" +msgstr "" + +msgid "Play audio-CD..." +msgstr "" + +msgid "Play back media files" +msgstr "" + +msgid "Play entry" +msgstr "" + +msgid "Play from next mark or playlist entry" +msgstr "" + +msgid "Play from previous mark or playlist entry" +msgstr "" + +msgid "Play music..." +msgstr "Пусни Музика..." + +msgid "Play next" +msgstr "" + +msgid "Play next (return to movie list)" +msgstr "" + +msgid "Play next (return to previous service)" +msgstr "" + +msgid "Play previous" +msgstr "" + +msgid "Play recorded movies..." +msgstr "Пусни записаните филми..." + +msgid "Please add titles to the compilation." +msgstr "" + +msgid "Please change recording endtime" +msgstr "Променете времето за край на записа" + +msgid "Please check your network settings!" +msgstr "Моля проверете мрежовите настройки!" + +msgid "Please choose an extension..." +msgstr "Моля изберете разширение..." + +msgid "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Конфигурирайте или потвърдете вашиите DNS сървъри като попълните нужните данни.\n" +"Когато сте готови натиснете ОК за да продължа." + +msgid "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Конфигурирайте вашата интернет връзка като попълните нужните данни.\n" +"Когато сте готови натиснете ОК за да продължа." + +msgid "Please connect your receiver to the internet" +msgstr "" + +msgid "Please do not change any values unless you know what you are doing!" +msgstr "Моля не променяйте данните освен ако знаете какво вършите!" + +msgid "Please enter a name for the new bouquet" +msgstr "Моля въведете име за новия букет" + +msgid "Please enter a name for the new marker" +msgstr "Моля въведете име за новата отметка" + +msgid "Please enter a new filename" +msgstr "Моля въведете ново име за файла" + +msgid "Please enter filename (empty = use current date)" +msgstr "Моля въведете име за файла (празно = текуща дата)" + +msgid "Please enter name of the new directory" +msgstr "Моля въведете име за новата директория" + +msgid "Please enter new name:" +msgstr "" + +msgid "Please enter the correct pin code" +msgstr "Моля въведете коректен ПИН код" + +msgid "Please enter the old PIN code" +msgstr "" + +msgid "Please follow the instructions on the TV" +msgstr "Моля следвайте инструкциите на ТВ" + +msgid "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." +msgstr "Имайте напредвид, че предишно избраното у-во не е достъпно и следователно вместо него се използва стандартната директория." + +msgid "Please press OK to continue." +msgstr "Натиснете ОК за да продължите." + +msgid "Please select a default EPG type..." +msgstr "" + +msgid "Please select a playlist to delete..." +msgstr "Моля изберете плейлист за изтриване..." + +msgid "Please select a playlist..." +msgstr "Моля изберете плейлист..." + +msgid "Please select a sub service..." +msgstr "" + +msgid "Please select a subservice to record..." +msgstr "Моля изберете подканал за запис..." + +msgid "Please select a subservice..." +msgstr "Моля изберете подканал..." + +msgid "Please select an NFI file and press green key to flash!" +msgstr "" + +msgid "Please select medium to be scanned" +msgstr "Моля изберете Среда за Сканиране" + +msgid "Please select medium to use as backup location" +msgstr "Моля изберете устройство за backup" + +msgid "Please select tag to filter..." +msgstr "" + +msgid "Please select the movie path..." +msgstr "Моля изберете път към филма..." + +msgid "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Моля изберете мрежов интерфейс който искате да използвате за вашата интернет връзка.\n" +"\n" +"Натиснете ОК за да продължите." + +msgid "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Моля изберете безжичната мрежа с която искате да се свържете.\n" +"\n" +"Натиснете ОК за да продължите." + +msgid "Please set up tuner A" +msgstr "" + +msgid "Please set up tuner B" +msgstr "Моля настройте тунер В" + +msgid "Please set up tuner C" +msgstr "Моля настройте тунер С" + +msgid "Please set up tuner D" +msgstr "Моля настройте тунер D" + +msgid "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." +msgstr "" +"Използвайте стрелките за местене прозореца на PiP.\n" +"Натиснете Букет +/- за промяна размера на прозореца.\n" +"Натиснете OK за връщане в ТВ режим или EXIT за отмяна на местенето." + +msgid "Please use the UP and DOWN keys to select your language. Afterwards press the OK button." +msgstr "Използвайте UP и DOWN бутони за избор на вашия език. След това натиснете ОК" + +msgid "Please wait" +msgstr "" + +msgid "Please wait (downloading channel list)" +msgstr "" + +msgid "Please wait (downloading softcam)" +msgstr "" + +msgid "Please wait (updating packages)" +msgstr "" + +msgid "Please wait for activation of your network configuration..." +msgstr "Моля изчакайте за активиране на вашите мрежови настройки..." + +msgid "Please wait while scanning is in progress..." +msgstr "Моля изчакайте докато завърши сканирането..." + +msgid "Please wait while we configure your network..." +msgstr "Моля изчакайте докате се конфигурира мрежата..." + +msgid "Please wait while we prepare your network interfaces..." +msgstr "Моля изчакайте подготовката на вашия мрежов интерфейс..." + +msgid "Please wait while we test your network..." +msgstr "Моля изчакайте теста на вашата мрежа..." + +msgid "Please wait while your network is restarting..." +msgstr "Моля изчакайте докате мрежата се рестартира..." + +msgid "Please wait..." +msgstr "Моля изчакайте..." + +msgid "Please wait... Loading list..." +msgstr "Моля изчакайте...Зареждам списък..." + +msgid "Plugin browser" +msgstr "Плъгин браузър" + +msgid "Plugin manager activity information" +msgstr "" + +msgid "Plugin manager help" +msgstr "" + +msgid "Plugins" +msgstr "Плъгини" + +msgid "Polarisation" +msgstr "" + +msgid "Polarisation:" +msgstr "" + +msgid "Polarization" +msgstr "Поляризация" + +msgid "Polish" +msgstr "Полски" + +msgid "Port A" +msgstr "Порт А" + +msgid "Port B" +msgstr "Порт B" + +msgid "Port C" +msgstr "Порт C" + +msgid "Port D" +msgstr "Порт D" + +msgid "Portuguese" +msgstr "Португалски" + +msgid "Position of completed timers in timerlist" +msgstr "" + +msgid "Position stored at index" +msgstr "" + +msgid "Positioner" +msgstr "Позиционер" + +msgid "Positioner (selecting satellites)" +msgstr "" + +msgid "Positioner Setup" +msgstr "" + +msgid "Positioner setup" +msgstr "Настройка позиционер" + +msgid "Power threshold in mA" +msgstr "Праг на захранването в mA" + +msgid "Predefined transponder" +msgstr "Определен транспондер" + +msgid "Prefer AC3 track" +msgstr "" + +msgid "Prefer AC3+ track" +msgstr "" + +msgid "Prefer audio track stored by service" +msgstr "" + +msgid "Prefer graphical DVB subtitles" +msgstr "" + +msgid "Prefer subtitles for hearing impaired" +msgstr "" + +msgid "Prefer subtitles stored by service" +msgstr "" + +msgid "Preferred tuner" +msgstr "" + +msgid "Preferred tuner for recordings" +msgstr "" + +msgid "Prepare another USB stick for image flashing" +msgstr "" + +msgid "Preparing... Please wait" +msgstr "Подготовка...Моля изчакайте" + +msgid "Press '0' to toggle PiP mode" +msgstr "" + +msgid "Press INFO on your remote control for additional information." +msgstr "" + +msgid "Press MENU on your remote control for additional options." +msgstr "" + +msgid "Press OK on your remote control to continue." +msgstr "Натиснете ОК на дистанционното за да продължите." + +msgid "Press OK to activate the selected skin." +msgstr "" + +msgid "Press OK to activate the settings." +msgstr "Натиснете ОК за да активирате настройките." + +msgid "Press OK to edit the settings." +msgstr "Натиснете ОК за да редактирате настройките." + +#, python-format +msgid "Press OK to get further details for %s" +msgstr "Натиснете ОК за повече детайли относно %s" + +msgid "Press OK to scan" +msgstr "Натиснете ОК за търсене" + +msgid "Press OK to select a provider." +msgstr "" + +msgid "Press OK to select satellites" +msgstr "" + +msgid "Press OK to select/deselect a CAId." +msgstr "" + +msgid "Press OK to start the scan" +msgstr "Натиснете ОК за да започне търсенето" + +msgid "Press OK to toggle the selection" +msgstr "" + +msgid "Press OK to toggle the selection." +msgstr "" + +msgid "Press yellow to set this interface as default interface." +msgstr "" + +msgctxt "button label, 'previous screen'" +msgid "Prev" +msgstr "" + +msgid "Preview" +msgstr "" + +msgid "Preview menu" +msgstr "Меню преглед" + +msgid "Preview selected channel" +msgstr "" + +msgid "Primary DNS" +msgstr "Основен DNS" + +msgid "Priority" +msgstr "Приоритет" + +msgid "Process" +msgstr "" + +msgid "Progress" +msgstr "" + +msgid "Progress bar left" +msgstr "" + +msgid "Progress bar right" +msgstr "" + +msgid "Properties of current title" +msgstr "Свойства за текущото заглавие" + +msgid "Protect services" +msgstr "Защита канали" + +msgid "Protect setup" +msgstr "Защита настройки" + +msgid "Provider" +msgstr "Провайдър" + +msgid "Provider to scan" +msgstr "Сканиране на Провайдър" + +msgid "Providers" +msgstr "Провайдъри" + +msgid "Put TV in standby" +msgstr "" + +msgid "Put receiver in standby" +msgstr "" + +msgid "Python frontend for /tmp/mmi.socket" +msgstr "" + +msgid "Quick" +msgstr "Бързо" + +msgid "Quick zap" +msgstr "" + +msgid "RF output" +msgstr "RF изход" + +msgid "RGB" +msgstr "" + +msgid "Radio" +msgstr "Радио" + +msgid "Ram disk" +msgstr "" + +msgid "Random" +msgstr "Произволно" + +#, python-format +msgid "Rating defined by broadcaster - %d" +msgstr "" + +msgid "Rating undefined" +msgstr "" + +msgid "Really close without saving settings?" +msgstr "Да затворя ли без запис на настройките?" + +msgid "Really delete done timers?" +msgstr "Да изтрия ли завършените таймери?" + +msgid "Really exit the subservices quickzap?" +msgstr "Изход от бързо превключване на подканали?" + +msgid "Really reboot now?" +msgstr "Да рестартирам ли сега?" + +msgid "Really restart now?" +msgstr "Да рестартирам ли сега?" + +msgid "Really shutdown now?" +msgstr "Да изключа ли приемника?" + +msgid "Really upgrade the frontprocessor and reboot now?" +msgstr "" + +msgid "Really upgrade your settop box and reboot now?" +msgstr "" + +msgid "Reboot" +msgstr "Рестарт" + +msgid "Rec" +msgstr "" + +msgid "Reception settings" +msgstr "" + +msgid "Record" +msgstr "Запис" + +#, python-format +msgid "Record time limited due to conflicting timer %s" +msgstr "Времето за запис е ограничено поради конфликт с таймер %s" + +msgid "Recorded files..." +msgstr "Записани файлове..." + +msgid "Recording" +msgstr "Запис" + +msgid "Recording in progress" +msgstr "" + +msgid "Recording paths" +msgstr "" + +msgid "Recording type" +msgstr "" + +msgid "Recording(s) are in progress or coming up in few seconds!" +msgstr "Запис(и) се извършват или ще започнат до няколко секунди!" + +msgid "Recordings" +msgstr "Записи" + +msgid "Recordings always have priority" +msgstr "Записите винаги са с приоритет" + +msgid "Red button..." +msgstr "" + +msgid "Reenter new PIN" +msgstr "Въведете отново новия ПИН" + +msgid "Refresh rate" +msgstr "" + +msgid "Refresh rate selection." +msgstr "Избор честота на обновяване." + +msgid "Regard deep standby as standby" +msgstr "" + +msgid "Relative" +msgstr "" + +msgid "Reload" +msgstr "Презареди" + +msgid "Reload black-/white lists" +msgstr "Презареди черен/бял списък" + +msgid "Reloading bouquets and services..." +msgstr "" + +msgid "Remember last service in PiP" +msgstr "" + +msgid "Remember service PIN" +msgstr "Помни ПИН кода" + +msgid "Remember these settings for each folder" +msgstr "" + +msgid "Reminder, you have chosen to save timeshift file." +msgstr "" + +msgid "Remote control type" +msgstr "" + +msgid "Removal has completed." +msgstr "" + +msgid "Remove" +msgstr "Премахни" + +msgid "Remove a mark" +msgstr "Премахни Отметка" + +msgid "Remove a nameserver entry" +msgstr "" + +msgid "Remove bookmark" +msgstr "" + +msgid "Remove completed timers after (days)" +msgstr "" + +msgid "Remove currently selected title" +msgstr "Премахни избраното заглавие" + +msgid "Remove items from trash can after (days)" +msgstr "" + +msgid "Remove plugins" +msgstr "Премахни Плъгини" + +msgid "Remove title" +msgstr "Премахни заглавие" + +msgid "Removing" +msgstr "Премахвам" + +#, python-format +msgid "Removing directory %s failed. (Maybe not empty.)" +msgstr "Грешка при премахване на директория %s. (Може би не е празна.)" + +msgid "Removing partition table" +msgstr "" + +msgid "Rename" +msgstr "Преименувай" + +msgid "Repeat" +msgstr "Повтори" + +msgid "Repeat type" +msgstr "" + +msgid "Repeating event currently recording... What do you want to do?" +msgstr "Повтарящо се предаване се записва... Какво искате да направя?" + +msgid "Repeats" +msgstr "Повторения" + +msgid "Require authentication for http streams" +msgstr "" + +msgid "Required medium type:" +msgstr "" + +msgid "Rereading partition table" +msgstr "" + +msgid "Reserved" +msgstr "" + +msgid "Reset" +msgstr "" + +msgid "Reset and renumerate title names" +msgstr "" + +msgid "Reset playback position" +msgstr "" + +msgid "Reset video enhancement settings to system defaults?" +msgstr "" + +msgid "Reset video enhancement settings to your last configuration?" +msgstr "" + +msgid "Resolution" +msgstr "Резолюция" + +msgid "Restart" +msgstr "Рестарт" + +msgid "Restart GUI now?" +msgstr "Рестарт GUI сега?" + +msgid "Restart enigma" +msgstr "Рестарт енигма" + +msgid "Restart network" +msgstr "Рестарт мрежа" + +msgid "Restart test" +msgstr "Рестарт тест" + +msgid "Restart your network connection and interfaces.\n" +msgstr "Рестартиране на мрежата и интерфейсите.\n" + +msgid "Restore" +msgstr "Възстановаване" + +msgid "Restore backups" +msgstr "Възстановяване backups" + +msgid "Restore is running..." +msgstr "" + +msgid "Restore system settings" +msgstr "Възстановяване на системните настройки" + +msgid "Restoring..." +msgstr "" + +msgid "Resume from last position" +msgstr "Възобнови от последното място" + +#, python-format +msgid "Resume position at %s" +msgstr "" + +#. TRANSLATORS: The string "Resuming playback" flashes for a moment +#. TRANSLATORS: at the start of a movie, when the user has selected +#. TRANSLATORS: "Resume from last position" as start behavior. +#. TRANSLATORS: The purpose is to notify the user that the movie starts +#. TRANSLATORS: in the middle somewhere and not from the beginning. +#. TRANSLATORS: (Some translators seem to have interpreted it as a +#. TRANSLATORS: question or a choice, but it is a statement.) +msgid "Resuming playback" +msgstr "Възобновяване на възпроизвеждането" + +msgid "Return to movie list" +msgstr "Връщане към списъка с филми" + +msgid "Return to previous service" +msgstr "Връщане към предишен канал" + +msgid "Reverse bouquet buttons" +msgstr "" + +msgid "Reverse list" +msgstr "" + +msgid "Rewind speeds" +msgstr "Скорост на превъртане" + +msgid "Rewrap teletext subtitles" +msgstr "" + +msgid "Right" +msgstr "Дясно" + +msgid "Right from servicename" +msgstr "" + +msgid "Roll-off" +msgstr "" + +msgid "Romanian" +msgstr "" + +msgid "Root directory" +msgstr "" + +msgid "Rotor step position:" +msgstr "" + +msgid "Rotor turning speed" +msgstr "Скорост на въртене на мотора" + +msgid "Round start time on" +msgstr "" + +msgid "Russian" +msgstr "Руски" + +msgid "S-Video" +msgstr "" + +msgid "SID" +msgstr "" + +msgid "SINGLE LAYER DVD" +msgstr "" + +msgid "SNR" +msgstr "" + +msgid "SNR:" +msgstr "" + +msgid "SSID:" +msgstr "" + +msgid "Same resolution as skin" +msgstr "" + +msgid "Sat" +msgstr "Съб" + +msgid "Satellite" +msgstr "Сателит" + +msgid "Satellite dish setup" +msgstr "" + +msgid "Satellite equipment" +msgstr "" + +msgid "Satellite equipment setup" +msgstr "" + +msgid "Satellite longitude:" +msgstr "" + +msgid "Satellites" +msgstr "Сателити" + +msgid "Satfinder" +msgstr "Търсене на Сателити" + +msgid "Sats" +msgstr "Сателити" + +msgid "Saturation" +msgstr "" + +msgid "Saturday" +msgstr "Събота" + +msgid "Save" +msgstr "Запази" + +msgid "Save playlist" +msgstr "" + +msgid "Save timeshift file" +msgstr "" + +msgid "Save timeshift file in movie directory" +msgstr "" + +msgid "Scaler sharpness" +msgstr "" + +msgid "Scaling mode" +msgstr "" + +msgid "Scan" +msgstr "" + +msgid "Scan " +msgstr "Търсене " + +#. TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' +#, python-format +msgid "Scan %s" +msgstr "" + +#. TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' +#, python-format +msgid "Scan %s band" +msgstr "" + +msgid "Scan additional SR" +msgstr "" + +msgid "Scan files..." +msgstr "" + +msgid "Scan wireless networks" +msgstr "" + +msgid "Scan your network for wireless access points and connect to them using your selected wireless device.\n" +msgstr "" + +#, python-format +msgid "Scanning %s..." +msgstr "" + +#. TRANSLATORS: The stb is performing a channel scan, progress percentage is printed in '%d' (and '%%' will show a single '%' symbol) +#, python-format +msgid "Scanning - %d%% completed" +msgid_plural "Scanning - %d%% completed" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "Scanning completed, %d channel found" +msgid_plural "Scanning completed, %d channels found" +msgstr[0] "" +msgstr[1] "" + +msgid "Scanning failed!" +msgstr "" + +msgid "Scanning..." +msgstr "" + +msgid "Scans default lamedbs sorted by satellite with a connected dish positioner" +msgstr "" + +msgid "Search east" +msgstr "Търсене на изток" + +msgid "Search west" +msgstr "Търсене на запад" + +msgid "Searching" +msgstr "" + +msgid "Searching east ..." +msgstr "" + +msgid "Searching for available updates. Please wait..." +msgstr "" + +msgid "Searching for new installed or removed packages. Please wait..." +msgstr "Търсене на нови инсталирани или премахнати пакети. Моля изчакайте..." + +msgid "Searching west ..." +msgstr "" + +msgid "Second cable of motorized LNB" +msgstr "" + +msgid "Secondary DNS" +msgstr "Допълнителен DNS" + +msgid "Seek" +msgstr "Търси" + +msgid "Seek backward" +msgstr "" + +msgid "Seek backward (enter time)" +msgstr "" + +msgid "Seek forward" +msgstr "" + +msgid "Seek forward (enter time)" +msgstr "" + +msgid "Select" +msgstr "Избери" + +msgid "Select CAId" +msgstr "" + +msgid "Select HDD" +msgstr "Избери HDD" + +msgid "Select a bouquet" +msgstr "" + +msgid "Select a movie" +msgstr "Изберете филм" + +msgid "Select a network adapter" +msgstr "Изберете Мрежов Адаптер" + +msgid "Select a skin" +msgstr "" + +msgid "Select a tuner" +msgstr "" + +msgid "Select a wireless network" +msgstr "" + +msgid "Select action" +msgstr "" + +#, python-format +msgid "Select action for timer %s:" +msgstr "" + +msgid "Select all" +msgstr "" + +msgid "Select an image to be downloaded" +msgstr "" + +msgid "Select audio track" +msgstr "Изберете аудио" + +msgid "Select backup files" +msgstr "" + +msgid "Select backup location" +msgstr "" + +msgid "Select channel to record from" +msgstr "Изберете канал за запис" + +msgid "Select copy destination for:" +msgstr "" + +msgid "Select default EPG type..." +msgstr "" + +msgid "Select desired image from feed list" +msgstr "" + +msgid "Select destination for:" +msgstr "" + +msgid "Select files for backup." +msgstr "" + +msgid "Select files/folders to backup" +msgstr "" + +msgid "Select input device" +msgstr "" + +msgid "Select input device." +msgstr "" + +msgid "Select interface" +msgstr "" + +msgid "Select location" +msgstr "" + +msgid "Select movie" +msgstr "" + +msgid "Select provider to add..." +msgstr "Добавете провайдър..." + +msgid "Select refresh rate" +msgstr "Изберете скорост за обновяване" + +msgid "Select satellites" +msgstr "" + +msgid "Select service to add..." +msgstr "Добавете канал..." + +msgid "Select sort method:" +msgstr "" + +msgid "Select target folder" +msgstr "" + +msgid "Select the movie path" +msgstr "" + +msgid "Select upgrade source" +msgstr "" + +msgid "Select upgrade source to edit." +msgstr "" + +msgid "Select video input with up/down buttons" +msgstr "Изберете видео вход с бутони нaгоре/надолу" + +msgid "Select video mode" +msgstr "Изберете видео режим" + +msgid "Select wireless network" +msgstr "Изберете безжична мрежа" + +msgid "Select your provider, and press OK to start the scan" +msgstr "" + +msgid "Selecting satellites 1 (USALS)" +msgstr "" + +msgid "Selecting satellites 2 (USALS)" +msgstr "" + +msgid "Send DiSEqC only on satellite change" +msgstr "Изпращай DiSEqC само при смяна на сателит" + +msgid "Separate titles with a main menu" +msgstr "" + +msgid "Sequence repeat" +msgstr "Последователни повторения" + +msgid "Serbian" +msgstr "Сръбски" + +msgid "Service" +msgstr "Канали" + +msgid "Service has been added to the favourites." +msgstr "Каналът беше добавен към предпочитани." + +msgid "Service has been added to the selected bouquet." +msgstr "Каналът беше добавен към избрания букет." + +msgid "Service info" +msgstr "" + +msgid "" +"Service invalid!\n" +"(Timeout reading PMT)" +msgstr "" +"Невалиден канал!\n" +"(Timeout reading PMT)" + +msgid "Service name" +msgstr "" + +msgid "" +"Service not found!\n" +"(SID not found in PAT)" +msgstr "" +"Не е открит канал!\n" +"(SID не е открит в PAT)" + +msgid "Service reference" +msgstr "" + +msgid "Service scan" +msgstr "Търсене на Канали" + +msgid "Service searching" +msgstr "Търсене на Канали" + +msgid "Service title mode" +msgstr "" + +msgid "" +"Service unavailable!\n" +"Check tuner configuration!" +msgstr "" +"Каналът не е наличен!\n" +"Проверете настройките на тунера!" + +msgid "Services" +msgstr "Канали" + +msgid "Set default" +msgstr "" + +msgid "Set end time" +msgstr "" + +msgid "Set fixed" +msgstr "" + +msgid "Set fps for external subtitles" +msgstr "" + +msgid "Set interface as default Interface" +msgstr "Направи интерфейса като основен Интерфейс" + +msgid "Set limits" +msgstr "Поставяне лимити" + +msgid "Set the type of the progress indication in the channel selection screen." +msgstr "" + +msgid "Set time window to 1 hour" +msgstr "" + +msgid "Set time window to 2 hours" +msgstr "" + +msgid "Set time window to 3 hours" +msgstr "" + +msgid "Set time window to 4 hours" +msgstr "" + +msgid "Set time window to 5 hours" +msgstr "" + +msgid "Set time window to 6 hours" +msgstr "" + +msgid "Set voltage and 22KHz" +msgstr "" + +msgid "Settings" +msgstr "Настройки" + +msgid "Setup" +msgstr "Настройки" + +msgid "Setup menu" +msgstr "" + +msgid "Setup mode" +msgstr "Режим Настройки" + +msgid "Setup your positioner" +msgstr "" + +msgid "Setup your satellite equipment" +msgstr "" + +#, python-format +msgid "Shall the USB stick wizard proceed and program the image file %s into flash memory?" +msgstr "" + +msgid "Sharpness" +msgstr "" + +msgid "Short filenames" +msgstr "" + +msgid "Show EIT now/next in infobar" +msgstr "" + +msgid "Show EPG for current channel..." +msgstr "" + +msgid "Show EPG..." +msgstr "" + +msgid "Show Games show" +msgstr "" + +msgid "Show SNR percentage instead of dB value" +msgstr "" + +msgid "Show VCR scart on main menu" +msgstr "" + +msgid "Show WLAN status" +msgstr "Покажи WLAN Състояние" + +msgid "Show animation while busy" +msgstr "" + +msgid "Show background in radio mode" +msgstr "" + +msgid "Show bouquet selection menu" +msgstr "" + +msgid "Show busy indicator when the system is busy." +msgstr "" + +msgid "Show channel numbers in channel selection" +msgstr "" + +msgid "Show columns" +msgstr "" + +msgid "Show crypto icons" +msgstr "" + +msgid "Show crypto info in infobar" +msgstr "" + +msgid "Show detailed event info" +msgstr "" + +msgid "Show event details" +msgstr "" + +msgid "Show event-progress in channel selection" +msgstr "" + +msgid "Show extended description" +msgstr "" + +msgid "Show extensions..." +msgstr "" + +msgid "Show icon for new/unseen items" +msgstr "" + +msgid "Show in extensions menu" +msgstr "" + +msgid "Show info" +msgstr "Покажи Инфо" + +msgid "Show info line" +msgstr "" + +msgid "Show infobar on channel change" +msgstr "Показвай инфобара при смяна на канал" + +msgid "Show infobar on event change" +msgstr "Показвай инфобар при смяна на предаване" + +msgid "Show infobar on skip forward/backward" +msgstr "Показвай инфобар при прескачане напред/назад" + +msgid "Show latest commits on sourceforge" +msgstr "" + +msgid "Show message when recording starts" +msgstr "Показвай съобщение когато започне запис" + +msgid "Show movie lengths in movielist" +msgstr "" + +msgid "Show multi channel EPG" +msgstr "" + +msgid "Show picons in channel list" +msgstr "" + +msgid "Show positioner movement" +msgstr "Показвай въртенето на антената" + +msgid "Show screensaver" +msgstr "" + +msgid "Show second infobar" +msgstr "" + +msgid "Show service type icons" +msgstr "" + +msgid "Show services beginning with" +msgstr "Показвай канали започващи с" + +msgid "Show shutdown menu" +msgstr "" + +msgid "Show single service EPG" +msgstr "" + +msgid "Show status icons in Movielist" +msgstr "" + +msgid "Show status icons in movie list" +msgstr "" + +msgid "Show status icons in movielist" +msgstr "" + +msgid "Show tag menu" +msgstr "" + +msgid "Show the radio player..." +msgstr "Покажи радио плеъра..." + +msgid "Show the tv player..." +msgstr "Покажи ТВ плеъра..." + +msgid "Show warning when timeshift is stopped" +msgstr "" + +msgid "Shows the state of your wireless LAN connection.\n" +msgstr "Показва статуса на вашата безжична LAN връзка.\n" + +msgid "Shuffle playlist" +msgstr "" + +msgid "Shutdown" +msgstr "" + +msgid "Shutdown when in Standby" +msgstr "" + +msgid "Side by side" +msgstr "" + +msgid "Signal OK, proceeding" +msgstr "" + +msgid "Signal quality" +msgstr "" + +msgid "Signal strength:" +msgstr "Сила на сигнала:" + +msgid "Signal: " +msgstr "Сигнал: " + +msgid "Similar" +msgstr "Подобен" + +msgid "Similar broadcasts:" +msgstr "Подобни предавания:" + +msgid "Simple" +msgstr "Опростен" + +msgid "Simple titleset (compatibility for legacy players)" +msgstr "" + +msgid "Single" +msgstr "Единичен" + +msgid "Single EPG" +msgstr "ЕПГ на канал" + +msgid "Single satellite" +msgstr "Един Сателит" + +msgid "Single step (GOP)" +msgstr "" + +msgid "Single transponder" +msgstr "Един транспондер" + +msgid "Site latitude" +msgstr "" + +msgid "Site longitude" +msgstr "" + +msgid "Skin" +msgstr "Кожа..." + +msgid "Skins" +msgstr "Кожи" + +msgid "Skip empty services" +msgstr "" + +msgid "Skip internet connection check (disables automatic package installation)" +msgstr "" + +msgid "Sleep timer" +msgstr "Tаймер за Сън" + +msgid "SleepTimer Configuration" +msgstr "" + +msgid "Sleeptimer" +msgstr "" + +msgid "Slide picture in loop" +msgstr "" + +msgid "Slide show interval (sec.)" +msgstr "" + +#, python-format +msgid "Slot %d" +msgstr "Слот %d" + +msgid "Slovak" +msgstr "" + +msgid "Slovenian" +msgstr "Словенски" + +msgid "Slow" +msgstr "Бавно" + +msgid "Slow motion speeds" +msgstr "Скорост при забавено движение" + +msgid "Small progress" +msgstr "" + +msgid "Social/Political/Economics" +msgstr "" + +msgid "SoftCam / CI" +msgstr "" + +msgid "Softcam type" +msgstr "" + +msgid "Software" +msgstr "Софтуер" + +msgid "Software management" +msgstr "Управление Софтуер" + +msgid "Software manager setup" +msgstr "" + +msgid "Software restore" +msgstr "Възстановяване на Софтуера" + +msgid "Software update" +msgstr "Актуализация на Софтуера" + +msgid "Softwaremanager information" +msgstr "" + +msgid "Some plugins are not available:\n" +msgstr "Някои плъгини не са налични:\n" + +#, python-format +msgid "Sorry, %s has not been installed!" +msgstr "" + +msgid "Sorry, deleting directories can (for now) only be done through the trash can." +msgstr "" + +msgid "Sorry, no backups found!" +msgstr "" + +msgid "Sorry, no details available!" +msgstr "" + +msgid "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." +msgstr "" + +msgid "Sort" +msgstr "" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort A-Z" +msgstr "Подреждане A-Z" + +msgid "Sort by" +msgstr "" + +msgid "Sort list:" +msgstr "" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort time" +msgstr "" + +msgid "Sound" +msgstr "Звук" + +msgid "Sound carrier" +msgstr "" + +msgid "Source request" +msgstr "" + +msgid "South" +msgstr "Юг" + +msgid "Spanish" +msgstr "Испански" + +msgid "Specify the end time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the end time until the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify the start time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the start time when the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify timeframe to ignore inactivity sleeptimer" +msgstr "" + +msgid "Specify timeframe to ignore the shutdown in standby" +msgstr "" + +msgid "Split preview mode" +msgstr "" + +msgid "Splitscreen" +msgstr "" + +msgid "Sports" +msgstr "" + +msgid "Standard" +msgstr "" + +msgid "Standart list" +msgstr "" + +msgid "Standby" +msgstr "Готовност" + +msgid "Standby / restart" +msgstr "Готовност / Рестарт" + +msgid "Standby after current event" +msgstr "" + +#, python-format +msgid "Standby fan %d PWM" +msgstr "" + +#, python-format +msgid "Standby fan %d voltage" +msgstr "" + +msgid "Standby in " +msgstr "" + +msgid "StandbyLED" +msgstr "" + +msgid "Start from the beginning" +msgstr "Започни от началото" + +msgid "Start offline decode" +msgstr "" + +msgid "Start recording?" +msgstr "Старт запис?" + +msgid "Start test" +msgstr "Старт тест" + +msgid "Start time" +msgstr "" + +msgid "Start time to ignore inactivity sleeptimer" +msgstr "" + +msgid "Start time to ignore shutdown in standby" +msgstr "" + +msgid "Start timeshift" +msgstr "" + +msgid "Start with list screen" +msgstr "" + +msgid "Starting on" +msgstr "Стартиране" + +msgid "Startup the set top box in standby" +msgstr "" + +msgid "Startup to Standby" +msgstr "" + +msgid "Step east" +msgstr "Стъпка на изток" + +msgid "Step west" +msgstr "Стъпка на запад" + +msgid "Stepped east" +msgstr "" + +msgid "Stepped west" +msgstr "" + +msgid "Stop" +msgstr "Стоп" + +msgid "Stop PiP" +msgstr "" + +msgid "Stop current event and disable coming events" +msgstr "Спри текущото и следващите предавания" + +msgid "Stop current event but not coming events" +msgstr "Спри текущото но не и следващите предавания" + +msgid "Stop entry" +msgstr "" + +msgid "Stop playing this movie?" +msgstr "Да спра този филм?" + +msgid "Stop recording" +msgstr "" + +msgid "Stop recording and delete" +msgstr "" + +msgid "Stop service on return to movie list" +msgstr "" + +msgid "Stop test" +msgstr "Стоп тест" + +msgid "Stop testing plane after # failed transponders" +msgstr "" + +msgid "Stop testing plane after # successful transponders" +msgstr "" + +msgid "Stop timer recording" +msgstr "" + +msgid "Stop timeshift" +msgstr "" + +msgid "Stop timeshift?" +msgstr "Сиране Таймшифт?" + +msgid "Stopped" +msgstr "" + +msgid "Store at index" +msgstr "" + +msgid "Store position" +msgstr "Запази позиция" + +msgid "Stored position" +msgstr "Запазена позиция" + +msgid "Stream" +msgstr "" + +msgid "Stream request" +msgstr "" + +msgid "Strongest position" +msgstr "" + +msgid "Subservice list..." +msgstr "Списък Подканали..." + +msgid "Subservices" +msgstr "Подканали" + +msgid "Subtitle Quickmenu" +msgstr "" + +msgid "Subtitle alignment" +msgstr "" + +msgid "Subtitle border width" +msgstr "" + +msgid "Subtitle delay when timing is bad" +msgstr "" + +msgid "Subtitle delay when timing lacks" +msgstr "" + +msgid "Subtitle font size" +msgstr "" + +msgid "Subtitle language selection 1" +msgstr "" + +msgid "Subtitle language selection 2" +msgstr "" + +msgid "Subtitle language selection 3" +msgstr "" + +msgid "Subtitle language selection 4" +msgstr "" + +msgid "Subtitle position" +msgstr "" + +msgid "Subtitle selection" +msgstr "Избор на субтитри" + +msgid "Subtitle selection..." +msgstr "" + +msgid "Subtitle settings" +msgstr "Настройка на субтитрите" + +msgid "Subtitles" +msgstr "Субтитри" + +msgid "Sun" +msgstr "Нед" + +msgid "Sunday" +msgstr "Неделя" + +msgid "Swap PiP and main picture" +msgstr "" + +msgid "Swap services" +msgstr "Размени Канали" + +msgid "Swedish" +msgstr "Шведски" + +msgid "Switch TV to correct input" +msgstr "" + +msgid "Switch between filelist/playlist" +msgstr "" + +msgid "Switch between normal mode and list mode" +msgstr "" + +msgid "Switch to HDMI in mode" +msgstr "" + +msgid "Switch to filelist" +msgstr "" + +msgid "Switch to next channel" +msgstr "" + +msgid "Switch to next channel in history" +msgstr "" + +msgid "Switch to next sub service" +msgstr "" + +msgid "Switch to playlist" +msgstr "" + +msgid "Switch to previous channel" +msgstr "" + +msgid "Switch to previous channel in history" +msgstr "" + +msgid "Switch to previous sub service" +msgstr "" + +msgid "Switchable tuner types:" +msgstr "" + +msgid "Symbol rate" +msgstr "Скорост на Сигнала" + +msgid "Symbol rate:" +msgstr "" + +msgid "Sync failure moving back to origin !" +msgstr "" + +msgid "System" +msgstr "Система" + +#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) +msgid "TRANSLATOR_INFO" +msgstr "" + +msgid "TS file is too large for ISO9660 level 1!" +msgstr "" + +msgid "TSID" +msgstr "" + +msgid "TV physical address report" +msgstr "" + +msgid "TXT PID" +msgstr "" + +msgid "Table of contents for collection" +msgstr "" + +msgid "Tags" +msgstr "" + +msgid "Teletext subtitle color" +msgstr "" + +msgid "Temperature and fan control" +msgstr "" + +msgid "Terrestrial" +msgstr "Наземна" + +msgid "Terrestrial provider" +msgstr "Наземен провайдър" + +msgid "Test DiSEqC settings" +msgstr "Тест DiSEqC настройки" + +msgid "Test mode" +msgstr "Тестов режим" + +msgid "Test the network configuration of your receiver.\n" +msgstr "Тест на мрежовите настройки на вашия Clarke-Tech.\n" + +msgid "Test type" +msgstr "" + +msgid "Text color" +msgstr "" + +msgid "Thai" +msgstr "" + +msgid "" +"Thank you for using the wizard.\n" +"Please press OK to continue." +msgstr "" +"Благодаря ви,че използвахте помощника.\n" +"Натиснете ОК за да продължите." + +msgid "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." +msgstr "" + +msgid "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?" +msgstr "" + +msgid "The PIN code has been changed successfully." +msgstr "" + +msgid "The PIN codes you entered are different." +msgstr "" + +msgid "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" +msgstr "" + +msgid "The backup failed. Please choose a different backup location." +msgstr "Грешка при backup. Моля изберете друго место за backup." + +#, python-format +msgid "" +"The current beta image might not be stable.\n" +"For more information see %s." +msgstr "" + +#, python-format +msgid "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." +msgstr "" + +#, python-format +msgid "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" +msgstr "" +"Следното устройство беше открито:\n" +"\n" +"%s\n" +"\n" +"Инсталиране на USB flasher на този стик?" + +msgid "The following files were found..." +msgstr "Следните файлове бяха открити..." + +msgid "The md5sum validation failed, the file may be corrupted!" +msgstr "" + +msgid "" +"The network wizard extension is not installed!\n" +"Please install it." +msgstr "" + +#, python-format +msgid "The path %s already exists." +msgstr "Пътя %s вeче съществува" + +msgid "The pin code you entered is wrong." +msgstr "Въведеният ПИН код е грешен." + +#, python-format +msgid "The results have been written to %s." +msgstr "Резултатите са записани в %s." + +msgid "The sleep timer has been activated." +msgstr "Tаймера за сън е активиран." + +msgid "The sleep timer has been disabled." +msgstr "Таймера за сън е спрян." + +msgid "" +"The software management extension is not installed!\n" +"Please install it." +msgstr "" + +#, python-format +msgid "The status of the current beta image could not be checked because %s can not be reached." +msgstr "" + +msgid "The timer file (timers.xml) is corrupt and could not be loaded." +msgstr "" + +msgid "The user interface of your receiver is restarting" +msgstr "Потребителският интерфейс на приемника се рестартира" + +msgid "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" +msgstr "" + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." +msgstr "" +"Плъгинът за безжична LAN не е инсталиран!\n" +"Моля инсталирайте го и изберете следваща стъпка." + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it." +msgstr "" +"Плъгинът за безжична LAN не е инсталиран!\n" +"Моля инсталирайте го." + +msgid "The wizard can backup your current settings. Do you want to do a backup now?" +msgstr "Помощникът може да backup вашите текущи настройки. Да направи ли backup сега?" + +#, python-format +msgid "The wizard found a configuration backup. Do you want to restore your old settings from %s?" +msgstr "" + +msgid "The wizard is finished now." +msgstr "Помощникът завърши." + +msgid "There are at least " +msgstr "Има най-малко " + +#, python-format +msgid "There are at least %s updates available." +msgstr "" + +msgid "There are currently no outstanding actions." +msgstr "" + +msgid "There are no updates available." +msgstr "" + +msgid "There is no signal to lock on !" +msgstr "" + +msgid "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" +msgstr "" +"Може да няма достатъчно място на избрания дял.\n" +"Искате ли да продължите?" + +msgid "This DVD RW medium is already formatted - reformatting will erase all content on the disc." +msgstr "" + +msgid "" +"This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!" +msgstr "" + +msgid "This plugin is installed." +msgstr "Този плъгин е инсталиран." + +msgid "This plugin is not installed." +msgstr "Този плъгин не е инсталиран." + +msgid "This plugin will be installed." +msgstr "Плъгинът ще се инсталира." + +msgid "This plugin will be removed." +msgstr "Плъгинът ще бъде премахнат." + +#, python-format +msgid "This receiver cannot decode %s streams!" +msgstr "" + +msgid "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration" +msgstr "" + +msgid "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" +msgstr "" + +msgid "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" +msgstr "" + +msgid "" +"This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." +msgstr "" + +msgid "This test detects your configured LAN adapter." +msgstr "" + +msgid "" +"This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\n" +"Are you sure?" +msgstr "" + +msgid "Three" +msgstr "Три" + +msgid "Threshold" +msgstr "Праг" + +msgid "Thu" +msgstr "Чет" + +msgid "Thumbnails" +msgstr "Миниатюри" + +msgid "Thursday" +msgstr "Четвъртък" + +msgid "Time" +msgstr "Час" + +msgid "Time scale" +msgstr "" + +msgid "Timer" +msgstr "Таймер" + +msgid "Timer Overview" +msgstr "" + +msgid "Timer edit" +msgstr "Редактирай Таймер" + +msgid "Timer editor" +msgstr "Редактор Таймер" + +msgid "Timer entry" +msgstr "Въведи Таймер" + +msgid "Timer log" +msgstr "" + +msgid "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" +msgstr "" + +msgid "Timer overview" +msgstr "Преглед на таймерите" + +msgid "Timer recording location" +msgstr "" + +msgid "Timer sanity error" +msgstr "" + +msgid "Timer selection" +msgstr "Избор на таймер" + +msgid "Timer selection..." +msgstr "" + +msgid "Timer type" +msgstr "Вид Таймер" + +msgid "Timeshift" +msgstr "Таймшифт" + +msgid "Timeshift Live" +msgstr "" + +msgid "Timeshift location" +msgstr "" + +msgid "Timeshift not possible!" +msgstr "Таймшифт не е възможен!" + +msgid "Timezone" +msgstr "Часова зона" + +msgid "Title" +msgstr "Заглавие" + +msgid "Title properties" +msgstr "Заглавие свойства" + +msgid "Titleset mode" +msgstr "" + +msgid "To audio selection" +msgstr "" + +msgid "To subtitle selection" +msgstr "" + +msgid "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." +msgstr "" + +msgid "Today" +msgstr "Днес" + +msgid "Toggle a cut mark at the current position" +msgstr "" + +msgid "Tone amplitude" +msgstr "" + +msgid "Tone mode" +msgstr "" + +msgid "Toneburst" +msgstr "" + +msgid "Toneburst A/B" +msgstr "Toneburst A/B" + +msgid "Top and bottom" +msgstr "" + +msgid "Track" +msgstr "" + +msgid "Translation" +msgstr "Превод" + +msgid "Translation:" +msgstr "Превод:" + +msgid "Translations" +msgstr "" + +msgid "Transmission mode" +msgstr "Режим предаване" + +msgid "Transponder" +msgstr "Транспондер" + +msgid "Transponder type" +msgstr "" + +msgid "Trash can" +msgstr "" + +msgid "Tries left:" +msgstr "Оставащи опити:" + +msgid "Try to find used transponders in cable network.. please wait..." +msgstr "" + +msgid "Trying to download a new packetlist. Please wait..." +msgstr "" + +msgid "Tue" +msgstr "Вто" + +msgid "Tuesday" +msgstr "Вторник" + +msgid "Tune" +msgstr "" + +msgid "Tune and focus" +msgstr "" + +msgid "Tune failed!" +msgstr "" + +msgid "Tuner" +msgstr "Тунер" + +msgid "Tuner configuration" +msgstr "Тунер конфигурация" + +msgid "Tuner is not supported" +msgstr "" + +msgid "Tuner slot" +msgstr "" + +msgid "Tuner status" +msgstr "Тунер статус" + +#, python-format +msgid "Tuner status %s" +msgstr "" + +msgid "Tuner type" +msgstr "" + +msgid "Turkish" +msgstr "Турски" + +msgid "Turn on the power LED during standby." +msgstr "" + +msgid "Turning step size" +msgstr "" + +msgid "Two" +msgstr "Две" + +msgid "Type" +msgstr "Тип" + +msgid "Type of scan" +msgstr "Тип търсене" + +msgid "USALS" +msgstr "USALS" + +msgid "USALS calibration" +msgstr "" + +msgid "USB stick" +msgstr "" + +msgid "USB stick wizard" +msgstr "USB Стик помощник" + +msgid "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Извършва се автоматична актуализация\n" +"Моля изчакайте докато приемникът ви се рестартира\n" +"Това може да отнеме няколко минути" + +msgid "Undo install" +msgstr "" + +msgid "Undo uninstall" +msgstr "" + +msgid "Unencrypted" +msgstr "" + +msgid "UnhandledKey" +msgstr "" + +msgid "Unicable" +msgstr "" + +msgid "Unicable LNB" +msgstr "" + +msgid "Unicable Martix" +msgstr "" + +msgid "Uninstall" +msgstr "" + +msgid "Universal LNB" +msgstr "Универсално LNB" + +msgid "Unknown" +msgstr "" + +msgid "Unmount" +msgstr "" + +msgid "Unsupported" +msgstr "Не се поддържа" + +msgid "Update" +msgstr "Актуализация" + +msgid "Update and ask to reboot" +msgstr "Актуализирай и попитай за рестарт" + +msgid "Update and reboot (recommended)" +msgstr "Актуализирай и рестартирай (препоръчително)" + +msgid "Update channel list only" +msgstr "Актуализирай само списъка с канали" + +#, python-format +msgid "Update completed, %d package was installed." +msgid_plural "Update completed, %d packages were installed." +msgstr[0] "Актуализацията завърши, %d пакет беше инсталиран." +msgstr[1] "Актуализацията завърши, %d пакета бяха инсталирани." + +msgid "Update completed. Do you want to reboot your receiver?" +msgstr "Актуализацията завърши. Искате ли да рестартирате приемника?" + +msgid "Update failed. Your receiver does not have a working internet connection." +msgstr "Неуспешна актуализация. Приемникът няма работеща интернет връзка." + +msgid "Update has completed." +msgstr "Актуализацията завърши." + +msgid "Updatefeed not available." +msgstr "Няма наличен updatefeed." + +msgid "Updating software catalog" +msgstr "Актуализирам софтуер каталога" + +msgid "Upgrading" +msgstr "Ъпгрейдвам" + +msgid "Use" +msgstr "Използвай" + +msgid "Use DHCP" +msgstr "Използвай DHCP" + +msgid "Use EIT EPG information when it is available." +msgstr "" + +msgid "Use FreeSat EPG information when it is available." +msgstr "" + +msgid "Use MHW EPG information when it is available." +msgstr "" + +msgid "Use Netmed EPG information when it is available." +msgstr "" + +msgid "Use TV remote control" +msgstr "" + +msgid "Use USALS for this sat" +msgstr "" + +msgid "Use ViaSat EPG information when it is available." +msgstr "" + +msgid "Use Virgin EPG information when it is available." +msgstr "" + +msgid "Use a gateway" +msgstr "Използвай шлюз" + +msgid "Use fastscan channel names" +msgstr "" + +msgid "Use fastscan channel numbering" +msgstr "" + +msgid "Use frequency or channel" +msgstr "" + +msgid "Use individual settings for each directory" +msgstr "" + +msgid "Use interface" +msgstr "" + +msgid "Use official channel numbering" +msgstr "" + +msgid "Use original DVB subtitle position" +msgstr "" + +msgid "Use original teletext position" +msgstr "" + +msgid "Use power measurement" +msgstr "Използвай мерител на напрежение" + +msgid "Use the network wizard to configure selected network adapter" +msgstr "" + +msgid "Use the network wizard to configure your network\n" +msgstr "" + +msgid "Use the up/down keys on your remote control to select an option. After that, press OK." +msgstr "Използвайте бутони нагоре/надолу на вашето дистанционно за избор на опция. След това натиснете ОК." + +msgid "Use the wizard to set up basic features" +msgstr "" + +msgid "Use these input device settings?" +msgstr "" + +msgid "Use these settings?" +msgstr "" + +msgid "Use this video enhancement settings?" +msgstr "" + +msgid "Use trash can in movielist" +msgstr "" + +msgid "Used service scan type" +msgstr "Тип сканиране на канали" + +msgid "User - bouquets" +msgstr "" + +msgid "User defined" +msgstr "Потребителска" + +msgid "User defined transponder" +msgstr "" + +msgid "User interface" +msgstr "Потребителски интерфейс" + +msgid "Username" +msgstr "Потребителско име" + +#, python-format +msgid "Using LNB %d" +msgstr "" + +msgid "Using fixed address" +msgstr "" + +#, python-format +msgid "Using tuner %s" +msgstr "" + +msgid "Usually when the subtitle language is the same as the audio language, the subtitles will not be used. Enable this option to allow these subtitles to be used." +msgstr "" + +msgid "VCR scart" +msgstr "VCR скарт" + +msgid "VMGM (intro trailer)" +msgstr "" + +msgid "Vertical" +msgstr "Вертикална" + +msgid "Vertical turning speed" +msgstr "" + +msgid "Video PID" +msgstr "" + +msgid "Video enhancement preview" +msgstr "" + +msgid "Video enhancement settings" +msgstr "" + +msgid "Video enhancement setup" +msgstr "" + +msgid "Video fine tuning" +msgstr "Фина настройка картина" + +msgid "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." +msgstr "" + +msgid "Video mode selection." +msgstr "Избор на видео режим." + +msgid "Video output" +msgstr "Видео Изход" + +msgid "Video setup" +msgstr "Видео Настройка" + +msgid "Video wizard" +msgstr "Видео Помощник" + +#, python-format +msgid "Video: %s fps" +msgstr "" + +msgid "VideoMode" +msgstr "" + +msgid "Videocodec" +msgstr "" + +msgid "Videoformat" +msgstr "" + +msgid "Videosize" +msgstr "" + +msgid "View Rass interactive..." +msgstr "" + +msgid "View details" +msgstr "Детайли..." + +msgid "View list of available " +msgstr "Списък с наличните " + +msgid "View list of available CommonInterface extensions" +msgstr "Списък с наличните Common Interface extensions" + +msgid "View list of available EPG extensions." +msgstr "Списък с наличните EPG extensions." + +msgid "View list of available Satellite equipment extensions." +msgstr "" + +msgid "View list of available communication extensions." +msgstr "Списък с наличните extensions за връзка." + +msgid "View list of available default settings" +msgstr "Списък с наличните настройки по подразбиране." + +msgid "View list of available display and userinterface extensions." +msgstr "" + +msgid "View list of available multimedia extensions." +msgstr "Списък с наличните extensions за мултимедия." + +msgid "View list of available networking extensions" +msgstr "Списък с наличните мрежови extensions." + +msgid "View list of available recording extensions" +msgstr "Списък с наличните extensions за запис." + +msgid "View list of available skins" +msgstr "Списък с наличните кожи." + +msgid "View list of available software extensions" +msgstr "Списък с наличните software extensions." + +msgid "View list of available system extensions" +msgstr "Списък с наличните системни extensions." + +msgid "View photos..." +msgstr "" + +msgid "View teletext..." +msgstr "Преглед телетекст..." + +msgid "View video CD..." +msgstr "" + +msgid "Virtual keyboard" +msgstr "" + +msgid "Voltage mode" +msgstr "Режим волтаж" + +msgid "Volume" +msgstr "Усилване" + +msgid "W" +msgstr "" + +msgid "WEP" +msgstr "" + +msgid "WLAN connection" +msgstr "" + +msgid "WPA" +msgstr "" + +msgid "WPA or WPA2" +msgstr "" + +msgid "WPA2" +msgstr "" + +msgid "WSS on 4:3" +msgstr "" + +msgid "Waiting" +msgstr "" + +msgid "Waiting for mount" +msgstr "" + +msgid "Waiting for partition" +msgstr "" + +msgid "Wakeup" +msgstr "" + +msgid "Wakeup TV from standby" +msgstr "" + +msgid "Wakeup receiver for start timer" +msgstr "" + +msgid "Wakeup receiver from standby" +msgstr "" + +msgid "Wakeup signal from TV" +msgstr "" + +msgid "Wakeup type" +msgstr "" + +msgid "Warning: no LNB; using factory defaults." +msgstr "" + +msgid "Watch movies..." +msgstr "" + +msgid "Watch recordings..." +msgstr "" + +msgid "Wed" +msgstr "Сря" + +msgid "Wednesday" +msgstr "Сряда" + +msgid "Weekday" +msgstr "Делничен" + +msgid "Weighted position" +msgstr "" + +msgid "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." +msgstr "" + +msgid "Welcome to the image upgrade wizard. The wizard will assist you in upgrading the firmware of your receiver by providing a backup facility for your current settings and a short explanation of how to upgrade your firmware." +msgstr "" + +msgid "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" +msgstr "" + +msgid "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." +msgstr "" +"Добре дошли.\n" +"\n" +"Този помощник ще ви помогне с основните настройки на вашия Clarke-Tech.\n" +"Натиснете бутон ОК на дистанционното за преминаване напред." + +msgid "Welcome..." +msgstr "Добре дошли..." + +msgid "West" +msgstr "Запад" + +msgid "West limit set" +msgstr "" + +msgid "What do you want to scan?" +msgstr "Какво искате да търся?" + +msgid "When enabled the PiP can be closed by the exit button." +msgstr "" + +msgid "When enabled the arrow buttons around the OK button will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled the left, right, CH+/-, B+/-, P+/- buttons will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled you can specify a timeframe to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "When enabled you can specify a timeframe were the inactivity sleeptimer is ignored. Not the detection is disabled during this timeframe but the inactivity timeout is disabled" +msgstr "" + +msgid "When enabled you can zap channels with the CH+/-, B+/-, P+/- buttons instead of opening the channel selection list." +msgstr "" + +msgid "When enabled you get the channel selection list via the OK button, the infobar toggle is then transfered to exit button" +msgstr "" + +msgid "When enabled, AIT data will be included in http streams. This allows a client receiver to use HbbTV." +msgstr "" + +msgid "When enabled, ECM data will be included in http streams. This allows a client receiver to do the descrambling." +msgstr "" + +msgid "When enabled, EIT data will be included in http streams. This allows a client receiver to show EPG." +msgstr "" + +msgid "When enabled, a popup message will be shown when a movie has finished and the next one will start." +msgstr "" + +msgid "When enabled, a popup message will be shown when a recording starts." +msgstr "" + +msgid "When enabled, a radio background image will be visible while listening to a radio channel." +msgstr "" + +msgid "When enabled, a recording is allowed to interrupt live tv, when there are no free tuners." +msgstr "" + +msgid "When enabled, a warning will be displayed and the user will get an option to stop or to continue the timeshift." +msgstr "" + +msgid "When enabled, authentication is required to watch http streams." +msgstr "" + +msgid "When enabled, channel numbering will start at '1' for each bouquet." +msgstr "" + +msgid "When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen." +msgstr "" + +msgid "When enabled, continue to the next bouquet when the last channel of the current bouquet is reached while changing channels." +msgstr "" + +msgid "When enabled, deleted recordings are moved to the trash can, instead of being deleted immediately." +msgstr "" + +msgid "When enabled, display the EIT now/next eventdata in infobar. When disabled, display now/next eventdata from the EPG cache instead." +msgstr "" + +msgid "When enabled, encryption info will be shown in the infobar (when supported by the skin)." +msgstr "" + +msgid "When enabled, error messages related to the Common Interface module will not be shown." +msgstr "" + +msgid "When enabled, error messages related to zapping will not be shown." +msgstr "" + +msgid "When enabled, external subtitles will be always turned on for playback movie." +msgstr "" + +msgid "When enabled, graphical DVB subtitles are preferred over teletext subtitles, when both types are available." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be centered horizontally." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be displayed at their original position." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be displayed in yellow, instead of the original color." +msgstr "" + +msgid "When enabled, http streams are descrambled on the server side. The (remote) client receiver does not have to do descrambling." +msgstr "" + +msgid "When enabled, it is possible to leave the movieplayer with exit." +msgstr "" + +msgid "When enabled, measure power consumption to detect when the rotor stops turning (when supported by the tuner)." +msgstr "" + +msgid "When enabled, number markers will be hiden." +msgstr "" + +msgid "When enabled, services may be grouped in multiple bouquets." +msgstr "" + +msgid "When enabled, show channel numbers in the channel selection screen." +msgstr "" + +msgid "When enabled, subtitles for the hearing impaired can be used." +msgstr "" + +msgid "When enabled, subtitles for the hearing impaired will be preferred over normal subtitles, when both types are available." +msgstr "" + +msgid "When enabled, teletext pages will be cached, allowing faster access." +msgstr "" + +msgid "When enabled, teletext subtitles will be displayed at their original position." +msgstr "" + +msgid "When enabled, the VCR scart option will be shown on the main menu" +msgstr "" + +msgid "When enabled, the channel selection list will be hidden while listening to a radio channel" +msgstr "" + +msgid "When enabled, the infobar will be displayed when a new event starts." +msgstr "" + +msgid "When enabled, the infobar will be displayed when changing channels." +msgstr "" + +msgid "When enabled, the infobar will be displayed when skipping forwards/backwards during media playback." +msgstr "" + +msgid "When enabled, the lenght of each recording will be shown in the movielist (this might cause some additional loading time)." +msgstr "" + +msgid "When enabled, the original line breaks will be removed from the teletext subtitles." +msgstr "" + +msgid "When enabled, the receiver will automatically use the audio track which you selected before." +msgstr "" + +msgid "When enabled, the receiver will automatically use the subtitles which you selected before." +msgstr "" + +msgid "When enabled, the receiver will no longer monitor the tuned transponder for possible changes. Do not use this option unless you know what you are doing." +msgstr "" + +msgid "When enabled, the receiver will select an AC3 track (when available)." +msgstr "" + +msgid "When enabled, the receiver will select an AC3+ track (when available)." +msgstr "" + +msgid "When enabled, timeshift starts automatically in background after specified time." +msgstr "" + +msgid "When enabled, use DHCP for the IP configuration." +msgstr "" + +msgid "When enabled, your receiver will detect activity on the VCR SCART input." +msgstr "" + +msgid "When nonzero, a recording will start earlier than the starting time indicated by the EPG." +msgstr "" + +msgid "When nonzero, a recording will stop later than the ending time indicated by the EPG." +msgstr "" + +msgid "When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture." +msgstr "" + +msgid "When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture." +msgstr "" + +msgid "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" +msgstr "" +"Ако възстановите фабричните настройки, се губят всички данни\n" +"(включително букети, канали, данни за сателити ...)\n" +"След възстановяването на фабричните настройки, вашия приемник ще се рестартира автоматично!\n" +"\n" +"Да възстановя ли фабричните настройки?" + +msgid "Where do you want to backup your settings?" +msgstr "Къде искате да backup вашите настройки?" + +msgid "Where to save temporary timeshift recordings?" +msgstr "Къде да съхраня временните таймшифт записи?" + +msgid "Wireless LAN" +msgstr "Безжична LAN" + +msgid "Wireless network" +msgstr "Безжична Мрежа" + +msgid "Wireless network configuration..." +msgstr "" + +msgid "Wireless network connection setup" +msgstr "" + +msgid "Wireless network connection setup." +msgstr "" + +msgid "Wireless network state" +msgstr "Статус на безжичната мрежа" + +msgid "With popup" +msgstr "" + +msgid "Without popup" +msgstr "" + +msgid "Would you like to install a softcam?" +msgstr "" + +msgid "Write error while recording. Disk full?\n" +msgstr "Грешка при запис! Дискът е пълен?\n" + +msgid "Write failed!" +msgstr "Грешка при запис!" + +msgid "YPbPr" +msgstr "YPbPr" + +msgid "Year" +msgstr "Година" + +msgid "Yellow DVB subtitles" +msgstr "" + +msgid "Yes" +msgstr "Да" + +msgid "Yes and save" +msgstr "" + +msgid "Yes and save in movie dir" +msgstr "" + +msgid "Yes to all" +msgstr "" + +msgid "Yes, always" +msgstr "" + +msgid "Yes, and delete this movie" +msgstr "Да, и изтрий филма" + +msgid "Yes, backup my settings!" +msgstr "Да, backup моите настройки!" + +msgid "Yes, delete this movie and return to movie list" +msgstr "" + +msgid "Yes, do a manual scan now" +msgstr "Да, започни ръчно търсене" + +msgid "Yes, do an automatic scan now" +msgstr "Да, започни автоматично търсене" + +msgid "Yes, do another manual scan now" +msgstr "Да, започни ново търсене" + +msgid "Yes, perform a shutdown now." +msgstr "Да, изключи сега." + +msgid "Yes, restore the settings now" +msgstr "Да, възстанови настройките сега" + +msgid "Yes, returning to movie list" +msgstr "Да, върни към списъка с филми" + +msgid "Yesterday" +msgstr "" + +#, python-format +msgid "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" +msgstr "" + +msgid "You can cancel the installation." +msgstr "Можете да отмените инсталацията." + +msgid "You can cancel the removal." +msgstr "Можете да отмените премахването." + +msgid "You can continue watching TV etc. while this is running." +msgstr "" + +msgid "You can install this plugin." +msgstr "Можете да инсталирате този плъгин." + +msgid "You can only burn receiver recordings!" +msgstr "" + +msgid "You can remove this plugin." +msgstr "Можете да премахнете този плъгин." + +msgid "You cannot delete this!" +msgstr "Не може да го изтриете!" + +msgid "You didn't select a channel to record from." +msgstr "" + +msgid "You have chosen to backup your settings. Please press OK to start the backup now." +msgstr "Вие избрахте backup на вашите настройки. Моля натиснете ОК за да започне backup сега." + +msgid "You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased." +msgstr "" + +msgid "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." +msgstr "Избрахте да възстановите вашите настройки. Енигма2 ще се рестартира след възстановяването. Моля натиснете ОК за да започне възстановяването." + +#, python-format +msgid "You have to wait %s!" +msgstr "Трябва да изчакате %s!" + +msgid "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." +msgstr "" + +msgid "You system does not support ext4" +msgstr "" + +msgid "Your backup succeeded. We will now continue to explain the further upgrade process." +msgstr "Вашия backup е успешен. Сега ще продължим с обясненията за следващия ъпгрейд процес." + +msgid "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" +msgstr "Ваашата колекция надвишава размера на еднослоен диск, ще ви трябва празен двуслоен DVD!" + +msgid "Your current collection will get lost!" +msgstr "" + +msgid "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." +msgstr "" +"Вашия firmware трябва да бъде ъпгрейднат.\n" +"Натиснете OK за да започне ъпгрейда." + +msgid "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" + +msgid "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." +msgstr "" +"Вашата интернет връзка не работи!\n" +"Изберете следваща стъпка." + +#, python-format +msgid "Your internet connection is working (ip: %s)" +msgstr "" + +msgid "Your network configuration has been activated." +msgstr "Вашата мрежова конфигурация е активирана." + +msgid "Your receiver does not have an internet connection" +msgstr "" + +msgid "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" +msgstr "" + +msgid "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." +msgstr "" + +msgid "Your receiver is rebooting" +msgstr "Приемникът се рестартира" + +msgid "Your receiver is shutting down" +msgstr "Приемникът се изключва" + +msgid "Your receiver is shutting down. Please stand by..." +msgstr "Вашия приемник се изключва. Моля изчакайте..." + +msgid "Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver." +msgstr "" + +msgid "Your receiver will got to stand by due to the sleeptimer." +msgstr "" + +msgid "Your receiver will got to standby due to inactivity." +msgstr "" + +msgid "Your receiver will restart after pressing OK on your remote control." +msgstr "Вашия Clarke-Tech ще се рестартира след натискане ОK на дистанционното." + +msgid "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." +msgstr "" +"Безжичната LAN интернет връзка не може да се стартира!\n" +"Свързахте ли вашият USB WLAN стик?\n" +"\n" +"Изберете следваща стъпка." + +msgid "Zap" +msgstr "" + +msgid "Zap back to previously tuned service?" +msgstr "" + +msgid "Zap back to service before positioner setup?" +msgstr "Назад към канала преди 'настройка на позиционер'?" + +msgid "Zap back to service before tuner setup?" +msgstr "" + +msgid "Zap focus to Picture in Picture" +msgstr "" + +msgid "Zap focus to main screen" +msgstr "" + +msgid "Zap mode" +msgstr "" + +msgid "Zap to selected channel" +msgstr "" + +msgid "Zap to selected channel, or show detailed event info (depends on configuration)" +msgstr "" + +msgid "[alternative edit]" +msgstr "[редактиране алтернативи]" + +msgid "[bouquet edit]" +msgstr "[редактиране букети]" + +msgid "[favourite edit]" +msgstr "[редактиране предпочитани]" + +msgid "[move mode]" +msgstr "[режим преместване]" + +msgid "a gui to assign services/providers to common interface modules" +msgstr "" + +msgid "a gui to assign services/providers/caids to common interface modules" +msgstr "" + +msgid "abort alternatives edit" +msgstr "прекъсни редактирането на алтернативи" + +msgid "abort bouquet edit" +msgstr "прекъсни редактирането на букети" + +msgid "abort favourites edit" +msgstr "прекъсни редактирането на предпочитани" + +msgid "about to start" +msgstr "стартирам" + +msgid "activate network adapter configuration" +msgstr "" + +msgid "add alternatives" +msgstr "добави алтернативи" + +msgid "add bookmark" +msgstr "добави отметка" + +msgid "add bouquet" +msgstr "добави букет" + +msgid "add marker" +msgstr "добави маркер" + +msgid "add service to bouquet" +msgstr "добави канала към букет" + +msgid "add service to favourites" +msgstr "добави канал към предпочитани" + +msgid "add to parental protection" +msgstr "добави към родителска защита" + +msgid "adult movie/drama" +msgstr "" + +msgid "advanced" +msgstr "разширен" + +msgid "adventure/western/war" +msgstr "" + +msgid "advertisement/shopping" +msgstr "" + +msgid "after " +msgstr "" + +msgid "alphabetic" +msgstr "" + +msgid "alphabetic reverse" +msgstr "" + +msgid "alternative" +msgstr "" + +msgid "always" +msgstr "" + +msgid "and select next channel" +msgstr "" + +msgid "and select previous channel" +msgstr "" + +msgid "arts/culture (without music, general)" +msgstr "" + +msgid "arts/culture magazine" +msgstr "" + +msgid "athletics" +msgstr "" + +msgid "audio tracks" +msgstr "" + +msgid "auto" +msgstr "авто" + +msgid "automatic" +msgstr "" + +msgid "back" +msgstr "назад" + +msgid "background image" +msgstr "фон" + +msgid "ballet" +msgstr "" + +#, python-format +msgid "bc%s" +msgstr "" + +msgid "better" +msgstr "по-добър" + +msgid "black" +msgstr "черен" + +msgid "black & white" +msgstr "" + +msgid "blacklist" +msgstr "черен лист" + +msgid "blue" +msgstr "син" + +msgid "broadcasting/press" +msgstr "" + +msgid "by date" +msgstr "" + +msgid "cartoon/puppets" +msgstr "" + +msgid "center" +msgstr "" + +msgid "centered" +msgstr "" + +msgid "centered, wrapped" +msgstr "" + +msgid "chapters" +msgstr "глави" + +msgid "childrens's/youth program (general)" +msgstr "" + +msgid "circular left" +msgstr "кръгова лява" + +msgid "circular right" +msgstr "кръгова дясна" + +msgid "comedy" +msgstr "" + +msgid "complex" +msgstr "сложен" + +msgid "config menu" +msgstr "конфиг меню" + +msgid "confirmed" +msgstr "потвърден" + +msgid "connected" +msgstr "свързан" + +msgid "continue" +msgstr "продулжава" + +msgid "cooking" +msgstr "" + +msgid "copy to bouquets" +msgstr "копиране в букет" + +msgid "create directory" +msgstr "създай директория" + +#, python-format +msgid "currently installed image: %s" +msgstr "" + +msgid "daily" +msgstr "дневно" + +msgid "day" +msgstr "ден" + +msgid "default" +msgstr "" + +msgid "delete cut" +msgstr "изтрий изрежи" + +msgid "delete..." +msgstr "изтрий ..." + +msgid "descramble and record ecm" +msgstr "" + +msgid "detective/thriller" +msgstr "" + +msgid "disable" +msgstr "спри" + +msgid "disable move mode" +msgstr "спри режим преместване на канал" + +msgid "disabled" +msgstr "спрян" + +msgid "disconnected" +msgstr "изключен" + +msgid "discussion/interview/debate" +msgstr "" + +msgid "do nothing" +msgstr "не прави нищо" + +msgid "documentary" +msgstr "" + +msgid "don't descramble, record ecm" +msgstr "" + +msgid "done!" +msgstr "готово!" + +msgid "east" +msgstr "" + +msgid "economics/social advisory" +msgstr "" + +msgid "edit alternatives" +msgstr "" + +msgid "education/science/factual topics (general)" +msgstr "" + +msgid "empty" +msgstr "празен" + +msgid "enable" +msgstr "разреши" + +msgid "enable bouquet edit" +msgstr "редактиране на букети" + +msgid "enable favourite edit" +msgstr "редактиране на предпочитани" + +msgid "enable move mode" +msgstr "включи режим преместване на канал" + +msgid "enabled" +msgstr "разрешен" + +msgid "end alternatives edit" +msgstr "" + +msgid "end bouquet edit" +msgstr "редактирането на букет завърши" + +msgid "end cut here" +msgstr "" + +msgid "end favourites edit" +msgstr "редактирането на предпочитани завърши" + +msgid "entertainment (10-16 year old)" +msgstr "" + +msgid "entertainment (6-14 year old)" +msgstr "" + +msgid "equal to" +msgstr "еднакъв с" + +msgid "equestrian" +msgstr "" + +msgid "exit DVD player or return to file browser" +msgstr "изход от DVD плеър или връщане към файловия браузър" + +msgid "exit movielist" +msgstr "изход от списъка с филми" + +msgid "exit network adapter configuration" +msgstr "изход от настройките на мрежовия адаптер" + +msgid "exit networkadapter setup menu" +msgstr "" + +msgid "experimental film/video" +msgstr "" + +msgid "false" +msgstr "" + +msgid "fashion" +msgstr "" + +msgid "fileformats (BMP, PNG, JPG, GIF)" +msgstr "Файлов формат (BMP, PNG, JPG, GIF)" + +msgid "filename" +msgstr "Име на файл" + +msgid "film/cinema" +msgstr "" + +msgid "fine arts" +msgstr "" + +msgid "fine-tune your display" +msgstr "Фина настройка на дисплея" + +msgid "fitness & health" +msgstr "" + +msgid "flat alphabetic" +msgstr "" + +msgid "flat alphabetic reverse" +msgstr "" + +msgid "folk/traditional music" +msgstr "" + +msgid "football/soccer" +msgstr "" + +msgid "foreign countries/expeditions" +msgstr "" + +msgid "forward to the next chapter" +msgstr "напред към следващата глава" + +msgid "free" +msgstr "свободни" + +msgid "from" +msgstr "" + +msgid "further education" +msgstr "" + +msgid "game show/quiz/contest" +msgstr "" + +msgid "gardening" +msgstr "" + +msgid "go to deep standby" +msgstr "изключи" + +msgid "go to standby" +msgstr "към режим готовност" + +msgid "grab this frame as bitmap" +msgstr "запиши кадъра като bitmap" + +msgid "green" +msgstr "зелен" + +msgid "handicraft" +msgstr "" + +msgid "height" +msgstr "" + +msgid "help..." +msgstr "помощ..." + +msgid "horizontal" +msgstr "хоризонтална" + +msgid "information/education/school program" +msgstr "" + +msgid "init module" +msgstr "" + +msgid "init modules" +msgstr "" + +msgid "insert mark here" +msgstr "постави отметка тук" + +msgid "invalid type" +msgstr "" + +msgid "jazz" +msgstr "" + +msgid "jump back to the previous title" +msgstr "обратно към предишното заглавие" + +msgid "jump forward to the next title" +msgstr "напред към следващото заглавие" + +msgid "languages" +msgstr "" + +msgid "leave movie player..." +msgstr "изход филмов плеър..." + +msgid "left" +msgstr "ляв" + +msgid "left, wrapped" +msgstr "" + +msgid "leisure hobbies (general)" +msgstr "" + +msgid "length" +msgstr "дължина" + +msgid "limit ..., aborting !" +msgstr "" + +msgid "list style compact" +msgstr "" + +msgid "list style compact with description" +msgstr "" + +msgid "list style default" +msgstr "" + +msgid "list style single line" +msgstr "" + +msgid "literature" +msgstr "" + +msgid "live broadcast" +msgstr "" + +msgid "locked" +msgstr "заключен" + +msgid "loopthrough to" +msgstr "преминаващ към" + +msgid "magazines/reports/documentary" +msgstr "" + +msgid "manual" +msgstr "ръчно" + +msgid "martial sports" +msgstr "" + +msgid "medicine/physiology/psychology" +msgstr "" + +msgid "menu" +msgstr "меню" + +msgid "mins" +msgstr "мин" + +msgid "minutes" +msgstr "минути" + +msgid "month" +msgstr "месец" + +msgid "motor sport" +msgstr "" + +msgid "motoring" +msgstr "" + +msgid "move down to last entry" +msgstr "премести надолу към последния запис" + +msgid "move down to next entry" +msgstr "премести надолу към следващия запис" + +msgid "move up to first entry" +msgstr "премести нагоре към първия запис" + +msgid "move up to previous entry" +msgstr "премести нагоре към предишен запис" + +msgid "movie/drama (general)" +msgstr "" + +msgid "multinorm" +msgstr "Мултистандарт" + +msgid "music/ballet/dance (general)" +msgstr "" + +msgid "musical/opera" +msgstr "" + +msgid "nature/animals/environment" +msgstr "" + +msgid "never" +msgstr "никога" + +msgid "new media" +msgstr "" + +msgid "news magazine" +msgstr "" + +msgid "news/current affairs (general)" +msgstr "" + +msgid "news/weather report" +msgstr "" + +msgid "no" +msgstr "не" + +msgid "no CAId selected" +msgstr "не е избеан CAId" + +msgid "no CI slots found" +msgstr "няма открити CI слотве" + +msgid "no module found" +msgstr "няма открит модул" + +msgid "no storage devices found" +msgstr "" + +msgid "none" +msgstr "никой" + +msgid "normal" +msgstr "" + +msgid "not configured" +msgstr "" + +msgid "not locked" +msgstr "не е заключен" + +msgid "not supported" +msgstr "" + +msgid "not used" +msgstr "не се използва" + +msgid "nothing connected" +msgstr "нищо не е свързано" + +msgid "of a DUAL layer medium used." +msgstr "" + +msgid "of a SINGLE layer medium used." +msgstr "" + +msgid "off" +msgstr "изкл." + +msgid "offset is" +msgstr "" + +msgid "on" +msgstr "вкл." + +msgid "on READ ONLY medium." +msgstr "" + +msgid "on end of movie" +msgstr "" + +msgid "once" +msgstr "веднъж" + +msgid "only from deep standby" +msgstr "" + +msgid "only from standby" +msgstr "" + +msgid "open EPG..." +msgstr "" + +msgid "open Info..." +msgstr "" + +msgid "open nameserver configuration" +msgstr "отвори настройките за nameserver" + +msgid "original" +msgstr "" + +msgid "original language" +msgstr "" + +msgid "pass" +msgstr "" + +msgid "performing arts" +msgstr "" + +msgid "play as picture in picture" +msgstr "Активиране картина в картината" + +msgid "play in mainwindow" +msgstr "" + +msgid "please press OK when ready" +msgstr "моля натиснете ОК когато е готово" + +msgid "please wait, loading picture..." +msgstr "моля изчакайте, зареждам снимка..." + +msgid "popular culture/traditional arts" +msgstr "" + +msgid "pre-school children's program" +msgstr "" + +msgid "receiver software because updates are available." +msgstr "" + +msgid "record" +msgstr "запис" + +msgid "recording..." +msgstr "запис..." + +msgid "red" +msgstr "червен" + +msgid "religion" +msgstr "" + +msgid "remarkable people" +msgstr "" + +msgid "remove after this position" +msgstr "премахни след тази позиция" + +msgid "remove all alternatives" +msgstr "премахни всички алтернативи" + +msgid "remove all new found flags" +msgstr "премахни всички маркировки за 'нов канал'" + +msgid "remove before this position" +msgstr "премахни преди тази позиция" + +msgid "remove bookmark" +msgstr "премахни отметка" + +msgid "remove directory" +msgstr "премахни директория" + +msgid "remove entry" +msgstr "премахни" + +msgid "remove from parental protection" +msgstr "премахни от родителски контрол" + +msgid "remove new found flag" +msgstr "премахване на маркировката за 'нов канал'" + +msgid "remove selected satellite" +msgstr "премахни избрания сателит" + +msgid "remove this mark" +msgstr "премахни отметката" + +msgid "rename entry" +msgstr "" + +msgid "repeat playlist" +msgstr "повтори плейлиста" + +msgid "repeated" +msgstr "повторен" + +msgid "reverse by date" +msgstr "" + +msgid "rewind to the previous chapter" +msgstr "превърти до предишната глава" + +msgid "right" +msgstr "десен" + +msgid "right, wrapped" +msgstr "" + +msgid "rock/pop" +msgstr "" + +msgid "romance" +msgstr "" + +msgid "save last directory on exit" +msgstr "запис последната директория при изход" + +msgid "save playlist on exit" +msgstr "запис плейлист при изход" + +msgid "scan state" +msgstr "състояние сканиране" + +msgid "science fiction/fantasy/horror" +msgstr "" + +msgid "second cable of motorized LNB" +msgstr "втори кабелен или моторизиран LNB" + +msgid "seconds" +msgstr "секунди" + +msgid "select" +msgstr "избор" + +msgid "select CAId's" +msgstr "избор CAId's" + +msgid "select EPG..." +msgstr "" + +msgid "select Info..." +msgstr "" + +msgid "select menu entry" +msgstr "избор menu entry" + +msgid "select movie" +msgstr "избор филм" + +msgid "select the movie path" +msgstr "" + +msgid "serious music/classic music" +msgstr "" + +msgid "serious/classical/religious/historical movie/drama" +msgstr "" + +msgid "service PIN" +msgstr "ПИН канали" + +msgid "set as startup service" +msgstr "задаване като стартиращ канал" + +msgid "setup PIN" +msgstr "ПИН настройки" + +msgid "show DVD main menu" +msgstr "покажи главното DVD mеню" + +msgid "show all tags" +msgstr "" + +msgid "show alternatives" +msgstr "покажи алтернативи" + +msgid "show event details" +msgstr "детайли на предаването" + +msgid "show extended description" +msgstr "покажи разширено описание" + +msgid "show mediaplayer on mainmenu" +msgstr "" + +msgid "show softwaremanager in setup menu" +msgstr "" + +msgid "show softwaremanager on blue button" +msgstr "" + +msgid "show tag menu" +msgstr "покажи tag меню" + +msgid "show transponder info" +msgstr "покажи инфо за транспондер" + +msgid "show/game show (general)" +msgstr "" + +msgid "shuffle" +msgstr "" + +msgid "shut down" +msgstr "" + +msgid "simple" +msgstr "опростен" + +msgid "skip backward" +msgstr "прескочи назад" + +msgid "skip forward" +msgstr "прескочи напред" + +msgid "soap/melodram/folkloric" +msgstr "" + +msgid "social/political issues/economics (general)" +msgstr "" + +msgid "social/spiritual science" +msgstr "" + +msgid "sorting of playlists" +msgstr "" + +msgid "special characters" +msgstr "" + +msgid "special events" +msgstr "" + +msgid "special format data DVD (HDTV compatible)" +msgstr "" + +msgid "sports (general)" +msgstr "" + +msgid "sports magazine" +msgstr "" + +msgid "standard" +msgstr "стандарт" + +msgid "start cut here" +msgstr "изрежи тук" + +msgid "start directory" +msgstr "стартова директория" + +msgid "stepsize" +msgstr "" + +msgid "stereo" +msgstr "стерео" + +msgid "stop using as startup service" +msgstr "" + +msgid "switch to bookmarks" +msgstr "превкл. на bookmarks" + +msgid "switch to filelist" +msgstr "превкл. на файллист" + +msgid "switch to the next angle" +msgstr "превкл. на следващ ъгъл" + +msgid "switch to the next audio track" +msgstr "превкл. на следващ аудио език" + +msgid "switch to the next subtitle language" +msgstr "превкл. на следващ език за субтитри" + +msgid "talk show" +msgstr "" + +msgid "team sports" +msgstr "" + +msgid "technology/natural science" +msgstr "" + +msgid "template file" +msgstr "примерен файл" + +msgid "tennis/squash" +msgstr "" + +msgid "this recording" +msgstr "този запис" + +msgid "this service is protected by a parental control pin" +msgstr "този канал е заключен с ПИН за родителски контрол" + +msgid "toggle time, chapter, audio, subtitle info" +msgstr "прикрепи време, глава, аудио, субтитри инфо" + +msgid "top" +msgstr "" + +msgid "tourism/travel" +msgstr "" + +msgid "true" +msgstr "" + +msgid "unavailable" +msgstr "не е наличен" + +msgid "unconfirmed" +msgstr "непотвърден" + +msgid "undefined" +msgstr "" + +msgid "unknown" +msgstr "непознат" + +msgid "unknown service" +msgstr "непознат канал" + +msgid "unpublished" +msgstr "" + +msgid "until standby/restart" +msgstr "" + +msgid "user defined" +msgstr "" + +msgid "variety show" +msgstr "" + +msgid "vertical" +msgstr "вертикална" + +msgid "wait for ci..." +msgstr "изчакай за ci..." + +msgid "wait for mmi..." +msgstr "изчакай за mmi..." + +msgid "waiting" +msgstr "изчаквам" + +msgid "water sport" +msgstr "" + +msgid "weekly" +msgstr "седмично" + +msgid "west" +msgstr "" + +msgid "when PiPzap enabled zap channel down..." +msgstr "" + +msgid "when PiPzap enabled zap channel up..." +msgstr "" + +msgid "white" +msgstr "" + +msgid "whitelist" +msgstr "бял лист" + +msgid "width" +msgstr "" + +msgid "winter sport" +msgstr "" + +msgid "wireless network interface" +msgstr "" + +#, python-format +msgid "with %d error" +msgid_plural "with %d errors" +msgstr[0] "" +msgstr[1] "" + +msgid "working" +msgstr "работи" + +msgid "yellow" +msgstr "жълт" + +msgid "yes" +msgstr "да" + +msgid "yes (keep feeds)" +msgstr "да (запази фийдове)" + +msgid "zap" +msgstr "превключи" + +msgid "zap and record" +msgstr "" + +msgid "zapped" +msgstr "превключен" + +#~ msgid "AA" +#~ msgstr "АА" + +#~ msgid "AB" +#~ msgstr "AB" + +#~ msgid "Add/remove timer for current event" +#~ msgstr "Добави/Премахнитаймер за текущото предаване" + +#~ msgid "Adjust HDMI CEC settings" +#~ msgstr "HDMI CEC настройки" + +#~ msgid "All satellites" +#~ msgstr "Всички Сателити" + +#~ msgid "Behavior of 'pause' when paused" +#~ msgstr "Действие на 'пауза' когато е в режим пауза" + +#~ msgid "DiSEqC repeats" +#~ msgstr "DiSEqC повторения" + +#~ msgid "No satellite frontend found!!" +#~ msgstr "Не са открити сателити!!" + +#~ msgid "Remove timer" +#~ msgstr "Премахни таймер" + +#~ msgid "Send DiSEqC" +#~ msgstr "Изпращай DiSEqC" + +#~ msgid "Zap back to service before satfinder?" +#~ msgstr "Назад към канала преди 'търсене на сателити'?" diff --git a/po/ca.po b/po/ca.po new file mode 100644 index 0000000..8901e8b --- /dev/null +++ b/po/ca.po @@ -0,0 +1,9427 @@ +# Catalan translations for Enigma2. +# +# Oriol Pellicer i Sabrià <oriol@elsud.org>, 2006, 2007. +msgid "" +msgstr "" +"Project-Id-Version: enigma2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-07-21 19:08+0200\n" +"PO-Revision-Date: 2007-08-14 10:23+0200\n" +"Last-Translator: Oriol Pellicer <oriol@elsud.org>\n" +"Language-Team: \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Poedit-Language: Catalan\n" +"X-Poedit-Country: CATALONIA\n" +"X-Poedit-SourceCharset: iso-8859-1\n" +"X-Generator: KBabel 1.11.4\n" + +# +msgid "" +"\n" +"Advanced options and settings." +msgstr "" + +# +msgid "" +"\n" +"After pressing OK, please wait!" +msgstr "" + +msgid "" +"\n" +"Backup your receiver settings." +msgstr "" + +# +msgid "" +"\n" +"Edit the upgrade source address." +msgstr "" + +msgid "" +"\n" +"Manage extensions or plugins for your receiver" +msgstr "" + +msgid "" +"\n" +"Online update of your receiver software." +msgstr "" + +# +msgid "" +"\n" +"Press OK on your remote control to continue." +msgstr "" + +# +msgid "" +"\n" +"Restore your backups by date." +msgstr "" + +msgid "" +"\n" +"Restore your receiver settings." +msgstr "" + +msgid "" +"\n" +"Restore your receiver with a new firmware." +msgstr "" + +# +msgid "" +"\n" +"Scan for local extensions and install them." +msgstr "" + +# +msgid "" +"\n" +"Select your backup device.\n" +"Current device: " +msgstr "" + +# +msgid "" +"\n" +"View, install and remove available or installed packages." +msgstr "" + +msgid " (PiP)" +msgstr "" + +msgid " (Radio)" +msgstr "" + +msgid " (TV)" +msgstr "" + +msgid " (disabled)" +msgstr "" + +msgid " (higher than any auto)" +msgstr "" + +msgid " (higher than rotor any auto)" +msgstr "" + +msgid " (lower than any auto)" +msgstr "" + +# +msgid " extensions." +msgstr "" + +msgid " ms" +msgstr "" + +# +msgid " packages selected." +msgstr "" + +# +msgid " updates available." +msgstr "" + +#. TRANSLATORS: short time representation hour:minute +#, python-format +msgid "%2d:%02d" +msgstr "" + +#. TRANSLATORS: full time representation hour:minute:seconds +#, python-format +msgid "%2d:%02d:%02d" +msgstr "" + +msgid "%A %d %B" +msgstr "" + +#. TRANSLATORS: long date representations dayname daynum monthname in strftime() format! See 'man strftime' +msgid "%A %e %B" +msgstr "" + +#. TRANSLATORS: full date representation dayname daynum monthname year in strftime() format! See 'man strftime' +msgid "%A %e %B %Y" +msgstr "" + +# +msgid "%H:%M" +msgstr "%H:%M" + +#. TRANSLATORS: short date representation short dayname daynum short monthname in strftime() format! See 'man strftime' +msgid "%a %e/%m" +msgstr "" + +#. TRANSLATORS: long date representation short dayname daynum short monthname hour:minute in strftime() format! See 'man strftime' +msgid "%a %e/%m %-H:%M" +msgstr "" + +# +#. TRANSLATORS: Intermediate scanning result, '%d' channel(s) have been found so far +#, fuzzy, python-format +msgid "%d channel found" +msgid_plural "%d channels found" +msgstr[0] "canal següent en l'històric" +msgstr[1] "canal següent en l'històric" + +#, python-format +msgid "%d file" +msgid_plural "%d files" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d job is running in the background!" +msgid_plural "%d jobs are running in the background!" +msgstr[0] "" +msgstr[1] "" + +# +#, python-format +msgid "%d min" +msgstr "%d min" + +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d minutes" +msgstr "" + +#, python-format +msgid "%d pixel wide" +msgid_plural "%d pixels wide" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "" +msgstr[1] "" + +# +#, fuzzy, python-format +msgid "%d subdirectory" +msgid_plural "%d subdirectories" +msgstr[0] "directori /var" +msgstr[1] "directori /var" + +#, python-format +msgid "%d wireless network found!" +msgid_plural "%d wireless networks found!" +msgstr[0] "" +msgstr[1] "" + +msgid "%d-%b-%Y %-H:%M" +msgstr "" + +msgid "%d-%m" +msgstr "" + +# +msgid "%d.%B %Y" +msgstr "%d.%B %Y" + +#. TRANSLATORS: VFD hour:minute daynum short monthname in strftime() format! See 'man strftime' +msgid "%k:%M %e/%m" +msgstr "" + +# +#, fuzzy, python-format +msgid "%s %s free disk space" +msgstr "espai lliure al disc" + +# +#, python-format +msgid "%s (%s)\n" +msgstr "%s (%s)\n" + +#. TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. +#, python-format +msgid "%s is no longer used. Should it be deleted?" +msgstr "" + +#, python-format +msgid "%s updated package available" +msgid_plural "%s updated packages available" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%s%d min" +msgstr "" + +#, python-format +msgid "%s/%s: %s" +msgstr "" + +# +msgid "(ZAP)" +msgstr "(ZAPPEJAR)" + +# +msgid "(empty)" +msgstr "(buit)" + +# +msgid "(show optional DVD audio menu)" +msgstr "" + +# +msgid "* Only available if more than one interface is active." +msgstr "" + +msgid "/s" +msgstr "" + +# +msgid "0" +msgstr "0" + +# +msgid "1" +msgstr "1" + +# +msgid "1.0" +msgstr "1.0" + +# +msgid "1.1" +msgstr "1.1" + +# +msgid "1.2" +msgstr "1.2" + +# +msgid "12V output" +msgstr "sortida 12V" + +# +msgid "13 V" +msgstr "13 V" + +# +msgid "16:10" +msgstr "" + +# +#, fuzzy +msgid "16:10 Letterbox" +msgstr "16:10 Letterbox" + +# +#, fuzzy +msgid "16:10 PanScan" +msgstr "16:10 PanScan" + +# +msgid "16:9" +msgstr "16:9" + +# +#, fuzzy +msgid "16:9 Letterbox" +msgstr "16:9 Letterbox" + +# +msgid "16:9 always" +msgstr "16:9 sempre" + +# +msgid "18 V" +msgstr "18 V" + +# +msgid "2" +msgstr "2" + +msgid "23.976" +msgstr "" + +msgid "24" +msgstr "" + +msgid "25" +msgstr "" + +msgid "29.97" +msgstr "" + +# +msgid "3" +msgstr "3" + +msgid "30" +msgstr "" + +msgid "3d mode" +msgstr "" + +# +msgid "4" +msgstr "4" + +# +msgid "4:3" +msgstr "" + +# +#, fuzzy +msgid "4:3 Letterbox" +msgstr "4:3 Letterbox" + +# +#, fuzzy +msgid "4:3 PanScan" +msgstr "4:3 PanScan" + +# +msgid "5" +msgstr "5" + +msgid "6" +msgstr "6" + +# +msgid "7" +msgstr "7" + +# +msgid "8" +msgstr "8" + +# +msgid "9" +msgstr "9" + +#, python-format +msgid ": %s" +msgstr "" + +# +msgid "<Current movielist location>" +msgstr "" + +# +msgid "<Default movie location>" +msgstr "" + +# +msgid "<Last timer location>" +msgstr "" + +# +msgid "<unknown>" +msgstr "<desconegut>" + +# +msgid "??" +msgstr "?" + +# +msgid "A" +msgstr "Un" + +#, python-format +msgid "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" +msgstr "" + +# +#, python-format +msgid "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" +msgstr "" + +msgid "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" + +msgid "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" + +# +msgid "A graphical EPG for all services of an specific bouquet" +msgstr "" + +# +#, python-format +msgid "" +"A record has been started:\n" +"%s" +msgstr "" +"S'ha iniciat una gravació:\n" +"%s" + +# +msgid "" +"A recording is currently running.\n" +"What do you want to do?" +msgstr "" +"En aquests moments s'està realitzant una gravació.\n" +"Què vols fer?" + +# +msgid "A recording is currently running. Please stop the recording before trying to configure the positioner." +msgstr "En aquests moments s'està realitzant una gravació. Sisplau, atura-la abans de configurar el motor." + +msgid "A recording is currently running. Please stop the recording before trying to scan." +msgstr "" + +# +msgid "A recording is currently running. Please stop the recording before trying to start the satfinder." +msgstr "En aquests moments s'està realitzant una gravació. Sisplau, atura-la abans de posar en marxa el satfinder." + +# +#, python-format +msgid "A required tool (%s) was not found." +msgstr "" + +# +msgid "A search for available updates is currently in progress." +msgstr "" + +# +msgid "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" +msgstr "" + +msgid "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" + +msgid "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" + +# +msgid "A small overview of the available icon states and actions." +msgstr "" + +# +msgid "" +"A timer failed to record!\n" +"Disable TV and try again?\n" +msgstr "" +"Ha fallat la gravació!\n" +"Vols desactivar la TV i tornar-ho a provar?\n" + +# +#, fuzzy +msgid "A/V settings" +msgstr "Config A/V" + +msgid "AC3/DTS downmix" +msgstr "" + +# +msgid "Abort" +msgstr "" + +# +msgid "About" +msgstr "Quant a" + +# +msgid "About..." +msgstr "Quant a..." + +# +msgid "Accesspoint:" +msgstr "" + +# +msgid "Action on long powerbutton press" +msgstr "" + +# +msgid "Action on short powerbutton press" +msgstr "" + +# +msgid "Activate Picture in Picture" +msgstr "Activar PiP" + +# +#, fuzzy +msgid "Activate current configuration" +msgstr "Configuració del sintonitzador" + +# +msgid "Activate network settings" +msgstr "Activar la configuració de la xarxa" + +# +#, fuzzy +msgid "Activate the configured network settings." +msgstr "Activar la configuració de la xarxa" + +# +msgid "Adapter settings" +msgstr "" + +# +msgid "Add" +msgstr "Afegir" + +msgid "Add Bookmark" +msgstr "" + +# +msgid "Add a mark" +msgstr "Afegir una marca" + +# +#, fuzzy +msgid "Add a nameserver entry" +msgstr "Configuració dels DNS" + +# +msgid "Add a new title" +msgstr "Afegir un nou títol" + +# +#, fuzzy +msgid "Add bookmark" +msgstr "Afegir una marca" + +# +#, fuzzy +msgid "Add directory to playlist" +msgstr "afegir el directori a la llista" + +# +#, fuzzy +msgid "Add file to playlist" +msgstr "afegir el fitxer a la llista" + +# +#, fuzzy +msgid "Add files to playlist" +msgstr "afegir fitxers a la llista" + +msgid "Add more details to the crash log" +msgstr "" + +# +#, fuzzy +msgid "Add provider" +msgstr "Proveïdor" + +# +#, fuzzy +msgid "Add recording (enter recording duration)" +msgstr "afegir gravació (introduint la durada)" + +# +#, fuzzy +msgid "Add recording (enter recording endtime)" +msgstr "afegir gravació (introduint l'hora d'acabada)" + +# +#, fuzzy +msgid "Add recording (indefinitely)" +msgstr "afegir gravació (indefinidament)" + +# +#, fuzzy +msgid "Add recording (stop after current event)" +msgstr "afegir gravació (fins que s'acabi el programa)" + +# +#, fuzzy +msgid "Add service" +msgstr "Canal" + +# +msgid "Add timer" +msgstr "Gravar" + +# +msgid "Add title" +msgstr "" + +# +msgid "Add to bouquet" +msgstr "Afegir a la llista" + +# +msgid "Add to favourites" +msgstr "Afegir als preferits" + +msgid "Add/remove change timer for current event" +msgstr "" + +msgid "Adjust 3D settings" +msgstr "" + +# +msgid "Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens." +msgstr "" + +msgid "Advanced" +msgstr "" + +msgid "Advanced options" +msgstr "" + +# +msgid "Advanced restore" +msgstr "" + +msgid "Advanced software" +msgstr "" + +msgid "Advanced software plugin" +msgstr "" + +msgid "Advanced video enhancement setup" +msgstr "" + +msgid "Advanced video setup" +msgstr "" + +# +msgid "After event" +msgstr "Després del programa" + +# +msgid "Album" +msgstr "Àlbum" + +msgid "Alignment of events" +msgstr "" + +msgid "Alignment of service names" +msgstr "" + +# +msgid "All" +msgstr "Tot" + +msgid "All ages" +msgstr "" + +msgid "All satellites 1 (USALS)" +msgstr "" + +msgid "All satellites 2 (USALS)" +msgstr "" + +msgid "All satellites 3 (USALS)" +msgstr "" + +msgid "All satellites 4 (USALS)" +msgstr "" + +msgid "Allocate" +msgstr "" + +msgid "Allocate unused memory index" +msgstr "" + +msgid "Allow quit movieplayer with exit" +msgstr "" + +msgid "Allow subtitle language to equal audio language" +msgstr "" + +msgid "Allow subtitles for hearing impaired" +msgstr "" + +# +msgid "Alpha" +msgstr "Alpha" + +# +#, fuzzy +msgid "Alternative" +msgstr "afegir alternatives" + +# +#, fuzzy +msgid "Alternative numbering mode" +msgstr "Mode de ràdio alternatiu" + +# +msgid "Alternative services tuner priority" +msgstr "" + +msgid "Always ask" +msgstr "" + +msgid "Always hide infobar" +msgstr "" + +# +msgid "An empty filename is illegal." +msgstr "" + +msgid "An error occurred while downloading the packetlist. Please try again." +msgstr "" + +# +msgid "An unknown error occurred!" +msgstr "" + +msgid "And will put your receiver in standby over " +msgstr "" + +msgid "Any activity" +msgstr "" + +# +msgid "Arabic" +msgstr "Àrab" + +msgid "Are you sure to remove this entry?" +msgstr "" + +# +msgid "" +"Are you sure you want to activate this network configuration?\n" +"\n" +msgstr "" + +# +#, fuzzy +msgid "" +"Are you sure you want to delete\n" +"the following backup:\n" +msgstr "" +"segur que vols restaurar\n" +"el següent backup:\n" + +# +msgid "Are you sure you want to exit this wizard?" +msgstr "" + +# +msgid "" +"Are you sure you want to restart your network interfaces?\n" +"\n" +msgstr "" + +#, python-format +msgid "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" + +msgid "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" + +# +msgid "Artist" +msgstr "Artista" + +msgid "Arts/Culture" +msgstr "" + +# +msgid "Ask user" +msgstr "" + +# +#, fuzzy +msgid "Aspect ratio" +msgstr "Relació d'aspecte" + +msgid "Assigned CAIds:" +msgstr "" + +msgid "Assigned services/provider:" +msgstr "" + +msgid "At beginning" +msgstr "" + +msgid "At end" +msgstr "" + +# +msgid "Audio" +msgstr "So" + +msgid "Audio PID" +msgstr "" + +msgid "Audio language selection 1" +msgstr "" + +msgid "Audio language selection 2" +msgstr "" + +msgid "Audio language selection 3" +msgstr "" + +msgid "Audio language selection 4" +msgstr "" + +# +#, fuzzy +msgid "Audio options..." +msgstr "Opcions d'àudio" + +#, python-format +msgid "Audio track (%s) format" +msgstr "" + +#, python-format +msgid "Audio track (%s) language" +msgstr "" + +# +msgid "Author: " +msgstr "" + +# +msgid "Authoring mode" +msgstr "" + +# +#. TRANSLATORS: (aspect ratio policy: always try to display as fullscreen, when there is no content (black bars) on left/right, even if this breaks the aspect. +msgid "Auto" +msgstr "Auto" + +# +msgid "Auto chapter split every ? minutes (0=never)" +msgstr "" + +# +msgid "Auto flesh" +msgstr "" + +msgid "Auto focus" +msgstr "" + +msgid "Auto focus commencing ..." +msgstr "" + +msgid "Auto language selection" +msgstr "" + +# +msgid "Auto scart switching" +msgstr "" + +# +msgid "Automatic" +msgstr "" + +# +#, fuzzy +msgid "Automatic scan" +msgstr "Recerca automàtica" + +msgid "Automatically start timeshift after" +msgstr "" + +msgid "Automatically turn on external subtitles" +msgstr "" + +# +msgid "Available format variables" +msgstr "" + +# +msgid "B" +msgstr "B" + +# +msgid "BER" +msgstr "" + +# +msgid "BER:" +msgstr "BER:" + +# +msgid "Back" +msgstr "" + +# +msgid "Background" +msgstr "" + +msgid "Background color" +msgstr "" + +msgid "Background delete option" +msgstr "" + +msgid "Background delete speed" +msgstr "" + +# +#, fuzzy +msgid "Backup completed." +msgstr "Mode del backup" + +# +msgid "Backup failed." +msgstr "" + +# +msgid "Backup is running..." +msgstr "" + +# +msgid "Backup system settings" +msgstr "" + +# +msgid "Band" +msgstr "Banda" + +# +msgid "Bandwidth" +msgstr "Ample de banda" + +msgid "Basque" +msgstr "" + +# +msgid "Begin time" +msgstr "Hora d'inici" + +msgid "Behavior of 'pause and ok' when paused" +msgstr "" + +# +msgid "Behavior of 0 key in PiP-mode" +msgstr "" + +# +msgid "Behavior when a movie is started" +msgstr "" + +# +msgid "Behavior when a movie is stopped" +msgstr "" + +# +msgid "Behavior when a movie reaches the end" +msgstr "" + +msgid "Big PiP" +msgstr "" + +# +msgid "Bitrate:" +msgstr "" + +msgid "Black screen" +msgstr "" + +msgid "Black screen till locked" +msgstr "" + +# +msgid "Block noise reduction" +msgstr "" + +# +msgid "Blue boost" +msgstr "" + +# +msgid "Bookmarks" +msgstr "" + +# +msgid "Brightness" +msgstr "Brillantor" + +msgid "Bulgarian" +msgstr "" + +# +msgid "Burn DVD" +msgstr "Gravar DVD" + +# +#, fuzzy, python-format +msgid "Burn audio track (%s)" +msgstr "Seleccionar pista d'àudio" + +# +msgid "Burn existing image to DVD" +msgstr "" + +# +msgid "Burn to DVD" +msgstr "Gravar DVD" + +# +msgid "Bus: " +msgstr "Bus: " + +msgid "By default, SNR will be shown in dB (when supported by the tuner). This setting forces SNR to be shown as a percentage instead." +msgstr "" + +# +msgid "C" +msgstr "" + +# +msgid "C-Band" +msgstr "Banda-C" + +msgid "CH" +msgstr "" + +# +msgid "CI assignment" +msgstr "" + +# +msgid "CVBS" +msgstr "CVBS" + +# +msgid "Cable" +msgstr "Cable" + +msgid "Cable Scan" +msgstr "" + +# +#, fuzzy +msgid "Cache thumbnails" +msgstr "Cache de les miniatures" + +msgid "Calculate" +msgstr "" + +msgid "Calculate all positions" +msgstr "" + +msgid "Calculation complete" +msgstr "" + +msgid "Calibrate" +msgstr "" + +msgid "Can be used for different fps between external subtitles and video." +msgstr "" + +# +msgid "Cancel" +msgstr "Cancel·lar" + +msgid "Cannot determine" +msgstr "" + +msgid "Cannot find any signal ..., aborting !" +msgstr "" + +msgid "Cannot move files on a different disk or system to the trash can" +msgstr "" + +msgid "Cannot move to trash can" +msgstr "" + +# +msgid "Capacity: " +msgstr "Capacitat: " + +# +msgid "Card" +msgstr "Tarja" + +msgid "Cascade PiP" +msgstr "" + +msgid "Center DVB subtitles" +msgstr "" + +msgid "Center time-labels and remove date" +msgstr "" + +# +msgid "Change bouquets in quickzap" +msgstr "Canviar de llista en el zàpping ràpid" + +# +msgid "Change pin code" +msgstr "Canviar codi pin" + +# +#, fuzzy +msgid "Change recording (duration)" +msgstr "canviar la gravació (durada)" + +# +#, fuzzy +msgid "Change recording (endtime)" +msgstr "canviar la gravació (hora d'acabada)" + +msgid "Change repeat and delay settings?" +msgstr "" + +msgid "Change service PIN" +msgstr "" + +msgid "Change service PINs" +msgstr "" + +msgid "Change setup PIN" +msgstr "" + +# +msgid "Change step size" +msgstr "" + +msgid "Change timer" +msgstr "" + +msgid "Changelog" +msgstr "" + +# +msgid "Channel" +msgstr "Canal" + +# +#, fuzzy +msgid "Channel list type" +msgstr "Menú de llista de canals" + +# +msgid "Channel not in services list" +msgstr "" + +# +#, fuzzy +msgid "Channel selection" +msgstr "Selecció de canal" + +# +msgid "Channel:" +msgstr "Canal:" + +# +msgid "Channellist menu" +msgstr "Menú de llista de canals" + +# +msgid "Chap." +msgstr "" + +# +msgid "Chapter" +msgstr "" + +# +msgid "Chapter:" +msgstr "" + +# +msgid "Check" +msgstr "" + +msgid "Check the internet connection" +msgstr "" + +msgid "Check the internet connection again" +msgstr "" + +msgid "Checking filesystem..." +msgstr "" + +msgid "Checking the internet connection" +msgstr "" + +#, python-format +msgid "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" +msgstr "" + +msgid "Children/Youth" +msgstr "" + +msgid "Choose which tuner to configure." +msgstr "" + +# +msgid "Circular left" +msgstr "" + +# +msgid "Circular right" +msgstr "" + +# +msgid "Cleanup" +msgstr "Netejar" + +msgid "Clear" +msgstr "" + +# +msgid "Clear before scan" +msgstr "Netejar abans de buscar" + +msgid "Clear fixed" +msgstr "" + +# +msgid "Clear log" +msgstr "Esborrar log" + +# +#, fuzzy +msgid "Clear playlist" +msgstr "netejar la llista" + +# +msgid "Close" +msgstr "" + +msgid "Close PiP on exit" +msgstr "" + +# +msgid "Close title selection" +msgstr "" + +msgid "Code rate HP" +msgstr "" + +msgid "Code rate LP" +msgstr "" + +# +msgid "Coderate HP" +msgstr "Velocitat de codi HP" + +# +msgid "Coderate LP" +msgstr "Velocitat de codi LP" + +# +msgid "Collection name" +msgstr "" + +# +msgid "Collection settings" +msgstr "" + +# +#, fuzzy +msgid "Color format" +msgstr "Format de color" + +# +msgid "Command execution..." +msgstr "" + +# +msgid "Command order" +msgstr "Ordre de comanda" + +# +msgid "Common Interface" +msgstr "Interfície comuna" + +# +#, fuzzy +msgid "Common Interface assignment" +msgstr "Interfície comuna" + +# +msgid "Communication" +msgstr "" + +# +#, fuzzy +msgid "Compact flash" +msgstr "Compact Flash" + +# +msgid "Complete" +msgstr "Complet" + +# +msgid "Complex (allows mixing audio tracks and aspects)" +msgstr "" + +msgid "Composition of the recording filenames" +msgstr "" + +# +#, fuzzy +msgid "Configuration mode" +msgstr "Mode configuració" + +# +#, fuzzy, python-format +msgid "Configuration mode: %s" +msgstr "Mode configuració" + +# +#, fuzzy +msgid "Configuration..." +msgstr "Mode configuració" + +msgid "Configure an additional delay to improve external subtitle synchronisation." +msgstr "" + +msgid "Configure an additional delay to improve subtitle synchronisation." +msgstr "" + +msgid "Configure for how long the infobar will remain visible after activation." +msgstr "" + +msgid "Configure for how many minutes finished events should remain visible in the EPG. Useful when you need information about an event which has just finished, or has been delayed." +msgstr "" + +msgid "Configure how recording filenames are constructed." +msgstr "" + +msgid "Configure how the fan should operate" +msgstr "" + +msgid "Configure if and how crypto icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how long the latest service in the PiP will be remembered." +msgstr "" + +msgid "Configure if and how service type icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how wide columns will be shown in the channel selection list." +msgstr "" + +msgid "Configure if service picons will be shown in the channel selection list." +msgstr "" + +# +msgid "Configure interface" +msgstr "" + +# +msgid "Configure nameservers" +msgstr "" + +msgid "Configure on which devices the background delete option should be used." +msgstr "" + +# +#, fuzzy +msgid "Configure remote control type" +msgstr "Tipus de control parental" + +msgid "Configure the DiSEqC mode for this LNB." +msgstr "" + +msgid "Configure the IP address." +msgstr "" + +msgid "Configure the aspect ratio of the screen." +msgstr "" + +msgid "Configure the behavior of the 'pause and ok' key when movie playback is already paused." +msgstr "" + +msgid "Configure the behavior when movie playback is manually stopped." +msgstr "" + +msgid "Configure the behavior when movie playback is started." +msgstr "" + +msgid "Configure the behavior when reaching the end of a movie, during movie playback." +msgstr "" + +msgid "Configure the border width of the subtitles. The dark border makes the subtitles easier to read on a light background." +msgstr "" + +msgid "Configure the brightness level of the front panel display during standby." +msgstr "" + +msgid "Configure the brightness level of the front panel display." +msgstr "" + +msgid "Configure the color of the external subtitles, alternative (normal in white, italic in yellow, bold in cyan, underscore in green), white or yellow." +msgstr "" + +msgid "Configure the color of the teletext subtitles." +msgstr "" + +msgid "Configure the contrast level of the front panel display." +msgstr "" + +msgid "Configure the cursor behaviour in the channel selection list. When opening the channel selection list you can keep on the current service or already select up/down and you are able to revert the B+/B- buttons." +msgstr "" + +msgid "Configure the duration in hours the receiver should go to standby when the receiver is not controlled." +msgstr "" + +msgid "Configure the duration in minutes for the screensaver." +msgstr "" + +msgid "Configure the duration in minutes for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +msgstr "" + +msgid "Configure the duration when the receiver should go to shut down in case the receiver is in standby mode." +msgstr "" + +msgid "Configure the first audio language (highest priority)." +msgstr "" + +msgid "Configure the first subtitle language (highest priority)." +msgstr "" + +msgid "Configure the font size of the subtitles." +msgstr "" + +msgid "Configure the fourth audio language." +msgstr "" + +msgid "Configure the fourth subtitle language." +msgstr "" + +msgid "Configure the function of a long press on the power button." +msgstr "" + +msgid "Configure the function of a short press on the power button." +msgstr "" + +msgid "Configure the function of the '0' button do when PIP is active." +msgstr "" + +msgid "Configure the gateway." +msgstr "" + +msgid "Configure the general audio delay of Dolby Digital sound tracks." +msgstr "" + +msgid "Configure the general audio delay of stereo sound tracks." +msgstr "" + +msgid "Configure the hard disk drive to go to standby after the specified idle time." +msgstr "" + +msgid "Configure the horizontal alignment of the subtitles." +msgstr "" + +msgid "Configure the initial fast forward speed. When you press the fast forward button, winding will start at this speed." +msgstr "" + +msgid "Configure the initial rewind speed. When you press the rewind button, winding will start at this speed." +msgstr "" + +msgid "Configure the latitude of your location." +msgstr "" + +msgid "Configure the longitude of your location." +msgstr "" + +msgid "Configure the minimum amount of disk space to be available for recordings. When the amount of space drops below this value, deleted items will be removed from the trash can." +msgstr "" + +msgid "Configure the nameserver (DNS)." +msgstr "" + +msgid "Configure the netmask." +msgstr "" + +msgid "Configure the number of days after which items are automaticaly removed from the trash can." +msgstr "" + +msgid "Configure the number of days old timers are kept before they are automatically removed from the timer list." +msgstr "" + +msgid "Configure the offline decoding delay in milliseconds. The configured delay is observed at each control word parity change." +msgstr "" + +msgid "Configure the possible fast forward speeds." +msgstr "" + +msgid "Configure the possible rewind speeds." +msgstr "" + +msgid "Configure the primary EPG language." +msgstr "" + +msgid "Configure the refresh rate of the screen." +msgstr "" + +msgid "Configure the screen resolution in PC output mode." +msgstr "" + +msgid "Configure the second audio language." +msgstr "" + +msgid "Configure the second subtitle language." +msgstr "" + +msgid "Configure the secondary EPG language." +msgstr "" + +msgid "Configure the sharpness of the video scaling." +msgstr "" + +msgid "Configure the skip time interval for the '1'/'3' buttons." +msgstr "" + +msgid "Configure the skip time interval for the '4'/'6' buttons." +msgstr "" + +msgid "Configure the skip time interval for the '7'/'9' buttons." +msgstr "" + +msgid "Configure the slow motion speeds." +msgstr "" + +msgid "Configure the source of the frontend data as shown on the infobars. 'Settings' is as stored on the settings. 'Tuner' is as reported by the tuner." +msgstr "" + +msgid "Configure the speed of the background deletion process. Lower speed will consume less hard disk drive performance." +msgstr "" + +msgid "Configure the speed of the fan" +msgstr "" + +msgid "Configure the subtitle delay when timing information is not available." +msgstr "" + +msgid "Configure the third audio language." +msgstr "" + +msgid "Configure the third subtitle language." +msgstr "" + +msgid "Configure the transparency of the OSD." +msgstr "" + +msgid "Configure the transparency of the black background of graphical DVB subtitles." +msgstr "" + +# +#, fuzzy +msgid "Configure the tuner mode." +msgstr "Mode configuració" + +msgid "Configure the type of status indication icons shown in the movielist." +msgstr "" + +msgid "Configure the vertical position of the subtitles, measured from the bottom of the screen." +msgstr "" + +msgid "Configure the video output mode (or resolution)." +msgstr "" + +msgid "Configure the way in which the receiver changes channels." +msgstr "" + +msgid "Configure where completed timers show up in the timer list." +msgstr "" + +msgid "Configure whether (and for how long) a second infobar will be shown when OK is pressed twice. The second infobar contains additional information about the current channel." +msgstr "" + +msgid "Configure whether multi channel sound tracks should be downmixed to stereo." +msgstr "" + +msgid "Configure whether or not an icon should be shown when your motorized dish is moving." +msgstr "" + +msgid "Configure which access level to use for the configuration menu. Expert level gives access to all items." +msgstr "" + +msgid "Configure which color format should be used on the SCART output." +msgstr "" + +msgid "Configure which tuner for recordings will be preferred, when more than one tuner is available." +msgstr "" + +msgid "Configure which tuner type will be preferred, when the same service is available on different types of tuners." +msgstr "" + +msgid "Configure which tuner will be preferred, when more than one tuner is available. If set to 'auto' the system will give priority to the tuner having the lowest number of channels/satellites." +msgstr "" + +# +msgid "Configure your internal LAN" +msgstr "" + +# +msgid "Configure your network again" +msgstr "" + +msgid "Configure your network settings, and press OK to start the scan" +msgstr "" + +# +msgid "Configure your wireless LAN again" +msgstr "" + +msgid "Configures which video output connector will be used." +msgstr "" + +# +msgid "Configuring" +msgstr "Configurant" + +# +msgid "Conflicting timer" +msgstr "Gravació en conflicte" + +# +msgid "Connect" +msgstr "" + +msgid "Connect to a wireless network" +msgstr "" + +msgid "Connected satellites" +msgstr "" + +# +msgid "Connected to" +msgstr "" + +# +msgid "Connected!" +msgstr "" + +# +msgid "Constellation" +msgstr "Constel·lació" + +# +msgid "Content does not fit on DVD!" +msgstr "" + +msgid "Continue" +msgstr "" + +# +msgid "Continue in background" +msgstr "" + +msgid "Continue playback" +msgstr "" + +# +msgid "Continue playing" +msgstr "" + +msgid "Continues play (loop)" +msgstr "" + +# +msgid "Contrast" +msgstr "Contrast" + +msgid "Convert ext3 filesystem to ext4" +msgstr "" + +msgid "Convert ext3 to ext4" +msgstr "" + +msgid "Converting ext3 to ext4..." +msgstr "" + +msgid "Copy" +msgstr "" + +msgid "Could not connect to receiver .NFI image feed server:" +msgstr "" + +msgid "Could not find installed channel list." +msgstr "" + +msgid "Could not load medium! No disc inserted?" +msgstr "" + +# +msgid "Could not open Picture in Picture" +msgstr "" + +#, python-format +msgid "Could not record due to conflicting timer %s" +msgstr "" + +#, python-format +msgid "Could not record due to invalid service %s" +msgstr "" + +# +msgid "Create DVD-ISO" +msgstr "" + +msgid "Create more detailed crash log" +msgstr "" + +# +#, python-format +msgid "Creating directory %s failed." +msgstr "" + +msgid "Creating filesystem" +msgstr "" + +msgid "Creating partition" +msgstr "" + +# +msgid "Croatian" +msgstr "Croat" + +msgid "Current CEC address" +msgstr "" + +msgid "Current device: " +msgstr "" + +msgid "Current event EPG" +msgstr "" + +#, python-format +msgid "Current mode: %s \n" +msgstr "" + +# +msgid "Current settings:" +msgstr "" + +# +#, fuzzy +msgid "Current transponder" +msgstr "Transponedor predefinit" + +# +msgid "Current value: " +msgstr "" + +# +msgid "Current version:" +msgstr "Versió actual:" + +msgid "Currently installed image" +msgstr "" + +msgid "Currently the commit log cannot be retrieved - please try later again" +msgstr "" + +msgid "Custom skip time for '1'/'3' buttons" +msgstr "" + +msgid "Custom skip time for '4'/'6' buttons" +msgstr "" + +msgid "Custom skip time for '7'/'9' buttons" +msgstr "" + +# +msgid "Customize" +msgstr "Personalitzar" + +msgid "Customize channel list cursor behavior" +msgstr "" + +# +msgid "Cut" +msgstr "Tallar" + +# +msgid "Cutlist editor..." +msgstr "Editor..." + +# +msgid "Czech" +msgstr "Txec" + +# +msgid "D" +msgstr "" + +# +msgid "DHCP" +msgstr "" + +# +#, fuzzy +msgid "DMM advanced" +msgstr "avançat" + +msgid "DMM normal" +msgstr "" + +# +msgid "DUAL LAYER DVD" +msgstr "" + +msgid "DVB subtitle black transparency" +msgstr "" + +msgid "DVB-C" +msgstr "" + +msgid "DVB-C ANNEX C" +msgstr "" + +# +msgid "DVB-S" +msgstr "DVB-S" + +# +msgid "DVB-S2" +msgstr "DVB-S2" + +msgid "DVB-T" +msgstr "" + +msgid "DVB-T2" +msgstr "" + +msgid "DVD data format" +msgstr "" + +# +#, fuzzy +msgid "DVD file browser" +msgstr "Plugin navegador" + +# +msgid "DVD media toolbox" +msgstr "" + +# +#, fuzzy +msgid "DVD player" +msgstr "amagar reproductor" + +# +#, fuzzy +msgid "DVD titlelist" +msgstr "llista blanca" + +# +msgid "Danish" +msgstr "Danès" + +# +msgid "Date" +msgstr "Data" + +# +#, fuzzy +msgid "Date/time input" +msgstr "Entrada Hora/Data" + +# +#, fuzzy +msgid "Deep standby" +msgstr "Apagat complet" + +# +msgid "Default" +msgstr "" + +# +msgid "Default movie location" +msgstr "" + +# +#, fuzzy +msgid "Default settings" +msgstr "Config OSD" + +msgid "Delay before key repeat starts:" +msgstr "" + +msgid "Delay for external subtitles" +msgstr "" + +# +msgid "Delete" +msgstr "Esborrar" + +# +msgid "Delete entry" +msgstr "Esborrar entrada" + +# +msgid "Delete failed!" +msgstr "Ha fallat l'eliminació!" + +# +#, fuzzy +msgid "Delete file" +msgstr "Ha fallat l'eliminació!" + +# +#, fuzzy +msgid "Delete playlist entry" +msgstr "esborrar entrada de la llista" + +# +#, fuzzy +msgid "Delete saved playlist" +msgstr "esborrar llista gravada" + +msgid "Delete timer" +msgstr "" + +# +#, fuzzy +msgid "Delete..." +msgstr "esborrar..." + +msgid "Deleted" +msgstr "" + +msgid "Deleted items" +msgstr "" + +msgid "Depth" +msgstr "" + +msgid "Descramble http streams" +msgstr "" + +# +msgid "Description" +msgstr "Descripció" + +# +msgid "Deselect" +msgstr "" + +msgid "Details for plugin: " +msgstr "" + +# +msgid "Detected HDD:" +msgstr "Disc dur detectat:" + +# +msgid "Detected NIMs:" +msgstr "NIMs detectats:" + +msgid "Devicename:" +msgstr "" + +msgid "Devide" +msgstr "" + +# +msgid "DiSEqC" +msgstr "DiSEqC" + +msgid "DiSEqC 1.0 command" +msgstr "" + +msgid "DiSEqC 1.1 command" +msgstr "" + +msgid "DiSEqC 1.1 repeats" +msgstr "" + +# +msgid "DiSEqC A/B" +msgstr "DiSEqC A/B" + +# +msgid "DiSEqC A/B/C/D" +msgstr "DiSEqC A/B/C/D" + +# +msgid "DiSEqC mode" +msgstr "mode DiSEqC" + +# +#, fuzzy, python-format +msgid "DiSEqC port %s: %s" +msgstr "Repetir DiSEqC" + +msgid "DiSEqC-tester settings" +msgstr "" + +# +msgid "Dialing:" +msgstr "" + +# +msgid "Digital contour removal" +msgstr "" + +# +msgid "Direct playback of linked titles without menu" +msgstr "" + +msgid "Directory" +msgstr "" + +#, python-format +msgid "Directory %s does not exist." +msgstr "" + +#, python-format +msgid "Directory %s nonexistent." +msgstr "" + +# +msgid "Directory browser" +msgstr "" + +#, python-format +msgid "Directory contains %d file(s) and %d sub-directories.\n" +msgstr "" + +#, python-format +msgid "Directory contains %s and %s." +msgstr "" + +# +msgid "Disable" +msgstr "Deshabilitar" + +# +msgid "Disable Picture in Picture" +msgstr "Desactivar PiP" + +msgid "Disable background scanning" +msgstr "" + +msgid "Disable timer" +msgstr "" + +# +msgid "Disabled" +msgstr "Desactivat" + +# +msgid "Disconnect" +msgstr "" + +msgid "Disk space to reserve for recordings (in GB)" +msgstr "" + +# +msgid "Display 16:9 content as" +msgstr "" + +# +msgid "Display 4:3 content as" +msgstr "" + +# +msgid "Display >16:9 content as" +msgstr "" + +msgid "Display and userinterface" +msgstr "" + +msgid "Display message before playing next movie" +msgstr "" + +# +#, fuzzy +msgid "Display setup" +msgstr "Configurar Display" + +# +#, fuzzy +msgid "Do not change" +msgstr "no canviar" + +# +#, fuzzy +msgid "Do not record" +msgstr "no gravar" + +# +#, fuzzy +msgid "Do nothing" +msgstr "no facis res" + +# +msgid "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" +msgstr "" + +msgid "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" +msgstr "" + +# +#, python-format +msgid "Do you really want to delete %s?" +msgstr "Segur que vols esborrar %s?" + +# +#, python-format +msgid "" +"Do you really want to download\n" +"the plugin \"%s\"?" +msgstr "" + +# +msgid "Do you really want to exit?" +msgstr "Segur que vols sortir?" + +msgid "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" +msgstr "" + +# +#, fuzzy, python-format +msgid "" +"Do you really want to remove\n" +"the plugin \"%s\"?" +msgstr "Segur que vols esborrar %s?" + +# +#, python-format +msgid "Do you really want to remove directory %s from the disk?" +msgstr "" + +# +#, python-format +msgid "Do you really want to remove your bookmark of %s?" +msgstr "" + +msgid "Do you want this?" +msgstr "" + +# +msgid "Do you want to burn this collection to DVD medium?" +msgstr "" + +# +msgid "Do you want to do a service scan?" +msgstr "Vols fer una recerca de canals?" + +# +msgid "Do you want to do another manual service scan?" +msgstr "Vols fer una altra recerca manual?" + +#, python-format +msgid "Do you want to download the image to %s ?" +msgstr "" + +# +#, fuzzy +msgid "Do you want to install a channel list?" +msgstr "Vols fer una recerca de canals?" + +# +msgid "Do you want to install the package:\n" +msgstr "" + +# +msgid "Do you want to play DVD in drive?" +msgstr "" + +# +msgid "Do you want to preview this DVD before burning?" +msgstr "" + +msgid "Do you want to reboot your receiver?" +msgstr "" + +# +msgid "Do you want to remove the package:\n" +msgstr "" + +# +msgid "Do you want to restore your settings?" +msgstr "Vols restaurar la configuració?" + +# +msgid "Do you want to resume this playback?" +msgstr "Vols continuar on ho havies deixat?" + +# +#, fuzzy, python-format +msgid "Do you want to update your receiver to %s?" +msgstr "Vols restaurar la configuració?" + +msgid "Do you want to update your receiver?" +msgstr "" + +# +msgid "Do you want to upgrade the package:\n" +msgstr "" + +# +msgid "Don't stop current event but disable coming events" +msgstr "No aturar el programa en curs, però deshabilitar els següents" + +# +#, fuzzy, python-format +msgid "Done - Installed, upgraded or removed %d package (%s)" +msgid_plural "Done - Installed, upgraded or removed %d packages (%s)" +msgstr[0] "Fet. %d paquets instal·lats o actualitzats" +msgstr[1] "Fet. %d paquets instal·lats o actualitzats" + +# +msgid "Download" +msgstr "" + +#, python-format +msgid "Download %s from server" +msgstr "" + +msgid "Download .NFI-files for USB-flasher" +msgstr "" + +# +#, fuzzy +msgid "Download plugins" +msgstr "Descarregar plugins" + +# +msgid "Downloadable new plugins" +msgstr "Nous plugins disponibles" + +# +msgid "Downloadable plugins" +msgstr "Plugins descarregables" + +# +msgid "Downloading" +msgstr "Descarregant" + +# +msgid "Downloading plugin information. Please wait..." +msgstr "Descarregant informació del plugin. Espera..." + +# +msgid "Dutch" +msgstr "Holandès" + +# +msgid "Dynamic contrast" +msgstr "" + +# +msgid "E" +msgstr "E" + +msgid "EPG" +msgstr "" + +msgid "EPG language selection 1" +msgstr "" + +msgid "EPG language selection 2" +msgstr "" + +# +#, fuzzy +msgid "EPG selection" +msgstr "Selecció EPG" + +msgid "EPG settings" +msgstr "" + +# +#, python-format +msgid "ERROR - failed to scan (%s)!" +msgstr "ERROR - ha fallat la recerca (%s)!" + +# +msgid "East" +msgstr "Est" + +msgid "East limit set" +msgstr "" + +# +msgid "Edit" +msgstr "" + +# +msgid "Edit DNS" +msgstr "" + +# +msgid "Edit bouquets list" +msgstr "" + +# +msgid "Edit chapters of current title" +msgstr "" + +# +msgid "Edit services list" +msgstr "Editar llista de canals" + +# +msgid "Edit settings" +msgstr "" + +msgid "Edit the nameserver configuration of your receiver.\n" +msgstr "" + +msgid "Edit the network configuration of your receiver.\n" +msgstr "" + +msgid "Edit timer" +msgstr "" + +# +msgid "Edit title" +msgstr "" + +# +msgid "Edit upgrade source url." +msgstr "" + +msgid "Education/Science/..." +msgstr "" + +# +msgid "Electronic Program Guide" +msgstr "" + +# +msgid "Enable" +msgstr "Activar" + +msgid "Enable 'neutrino' style channel select controlling" +msgstr "" + +msgid "Enable 'neutrino' style zap controlling" +msgstr "" + +# +msgid "Enable 5V for active antenna" +msgstr "Activar 5V per a antena activa" + +msgid "Enable EIT EPG" +msgstr "" + +msgid "Enable MHW EPG" +msgstr "" + +msgid "Enable Netmed EPG" +msgstr "" + +msgid "Enable OK for channel selection" +msgstr "" + +msgid "Enable ViaSat EPG" +msgstr "" + +msgid "Enable Virgin EPG" +msgstr "" + +msgid "Enable Wake On LAN" +msgstr "" + +msgid "Enable auto fast scan" +msgstr "" + +# +#, fuzzy +msgid "Enable bouquet selection in multi-EPG" +msgstr "activar l'edició de la llista" + +msgid "Enable freesat EPG" +msgstr "" + +# +msgid "Enable multiple bouquets" +msgstr "Activar llistes múltiples" + +# +msgid "Enable parental control" +msgstr "Activar control parental" + +msgid "Enable teletext caching" +msgstr "" + +msgid "Enable zapping with CH+/-, B+/-, P+/-" +msgstr "" + +# +msgid "Enabled" +msgstr "Activat" + +# +msgid "Encrypted: " +msgstr "" + +# +msgid "Encryption" +msgstr "" + +msgid "Encryption key" +msgstr "" + +msgid "Encryption key type" +msgstr "" + +# +msgid "Encryption:" +msgstr "" + +# +msgid "End time" +msgstr "Hora final" + +msgid "End time to ignore inactivity sleeptimer" +msgstr "" + +msgid "End time to ignore shutdown in standby" +msgstr "" + +# +msgid "English" +msgstr "Anglès" + +msgid "Enigma2 skin selector" +msgstr "" + +# +msgid "Enter main menu..." +msgstr "Entrar al menú principal..." + +# +msgid "Enter pin code" +msgstr "" + +# +msgid "Enter the service pin" +msgstr "Entra el pin del canal" + +msgid "Equal to" +msgstr "" + +# +msgid "Error" +msgstr "Error" + +msgid "Error code" +msgstr "" + +# +msgid "Error executing plugin" +msgstr "" + +# +#, python-format +msgid "" +"Error: %s\n" +"Retry?" +msgstr "" + +# +msgid "Estonian" +msgstr "" + +msgid "Ethernet network interface" +msgstr "" + +msgid "Event font size (relative to skin size)" +msgstr "" + +# +#, fuzzy +msgid "Event view" +msgstr "Veure programes" + +# +#, fuzzy +msgid "Event view menu" +msgstr "Veure programes" + +msgid "Everywhere" +msgstr "" + +# +msgid "Exceeds dual layer medium!" +msgstr "" + +# +msgid "Execution finished!!" +msgstr "Ha finalitzat l'execució" + +# +#, fuzzy +msgid "Execution progress:" +msgstr "Progrés d'execució:" + +# +msgid "Exif" +msgstr "" + +# +msgid "Exit" +msgstr "" + +msgid "Exit EPG" +msgstr "" + +# +msgid "Exit editor" +msgstr "Sortir de l'editor" + +msgid "Exit input device selection." +msgstr "" + +msgid "Exit media player?" +msgstr "" + +# +#, fuzzy +msgid "Exit mediaplayer" +msgstr "sortir del reproductor" + +# +#, fuzzy +msgid "Exit movie list" +msgstr "llista de pel·lícules" + +# +#, fuzzy +msgid "Exit movie player?" +msgstr "sortir del reproductor" + +# +#, fuzzy +msgid "Exit nameserver configuration" +msgstr "Configuració del sintonitzador" + +# +#, fuzzy +msgid "Exit network interface list" +msgstr "Editar llista de canals" + +# +msgid "Exit network wizard" +msgstr "" + +# +msgid "Exit the wizard" +msgstr "Sortir de l'assistent" + +# +msgid "Expert" +msgstr "" + +msgid "Extend sleeptimer 15 minutes" +msgstr "" + +# +msgid "Extended Software" +msgstr "" + +# +msgid "Extended Software Plugin" +msgstr "" + +# +#, fuzzy +msgid "Extended network setup plugin..." +msgstr "Configuració avançada..." + +# +#, fuzzy +msgid "Extended setup..." +msgstr "Configuració avançada..." + +# +msgid "Extensions" +msgstr "Extensions" + +# +msgid "Extensions management" +msgstr "" + +msgid "External PiP" +msgstr "" + +msgid "External subtitle color" +msgstr "" + +msgid "Extra motor options" +msgstr "" + +# +msgid "FEC" +msgstr "FEC" + +msgid "FTA" +msgstr "" + +# +msgid "Factory reset" +msgstr "" + +# +msgid "Failed" +msgstr "" + +msgid "Failed to write /tmp/positionersetup.log: " +msgstr "" + +# +#, python-format +msgid "Fan %d" +msgstr "" + +# +#, python-format +msgid "Fan %d PWM" +msgstr "" + +# +#, fuzzy, python-format +msgid "Fan %d voltage" +msgstr "Voltatge incrementat" + +msgid "Fan operation" +msgstr "" + +msgid "Fan speed" +msgstr "" + +# +msgid "Fast" +msgstr "Ràpid" + +# +msgid "Fast DiSEqC" +msgstr "DiSEqC ràpid" + +msgid "Fast Scan" +msgstr "" + +# +#, fuzzy +msgid "Fast epoch" +msgstr "Època ràpida" + +msgid "Fast forward speeds" +msgstr "" + +# +msgid "Favourites" +msgstr "Preferits" + +msgid "File appears to be busy.\n" +msgstr "" + +msgid "Filesystem check" +msgstr "" + +msgid "Final position at" +msgstr "" + +msgid "Final position at index" +msgstr "" + +msgid "Fine movement" +msgstr "" + +# +msgid "Finetune" +msgstr "Ajustaments delicats" + +# +msgid "Finished" +msgstr "" + +# +msgid "Finished configuring your network" +msgstr "" + +# +msgid "Finished restarting your network" +msgstr "" + +# +msgid "Finnish" +msgstr "Finlandès" + +msgid "Fixed" +msgstr "" + +# +msgid "Flash" +msgstr "" + +# +msgid "Flashing failed" +msgstr "" + +# +msgid "Following tasks will be done after you press OK!" +msgstr "" + +# +msgid "Format" +msgstr "" + +msgid "Forward volume keys" +msgstr "" + +# +msgid "Frame size in full view" +msgstr "" + +# +msgid "French" +msgstr "Francès" + +# +msgid "Frequency" +msgstr "Freqüència" + +# +msgid "Frequency bands" +msgstr "Bandes de freqüència" + +# +msgid "Frequency scan step size(khz)" +msgstr "Mida de pas de freqüència(khz)" + +# +#, fuzzy +msgid "Frequency steps" +msgstr "Passos de freqüència" + +msgid "Frequency:" +msgstr "" + +# +msgid "Fri" +msgstr "Div" + +# +msgid "Friday" +msgstr "Divendres" + +msgid "From :" +msgstr "" + +# +#, python-format +msgid "Frontprocessor version: %d" +msgstr "Versió processador: %d" + +msgid "Full transparency" +msgstr "" + +msgid "Fulview resulution" +msgstr "" + +msgid "Function of OK button" +msgstr "" + +msgid "Further Options" +msgstr "" + +# +msgid "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" +msgstr "" +"Cal reengegar la IGU per activar la nova aparença\n" +"Vols fer-ho ara?" + +# +msgid "Gateway" +msgstr "Enrutador" + +msgid "General AC3 delay" +msgstr "" + +msgid "General PCM delay" +msgstr "" + +# +msgid "Genre" +msgstr "Gènere" + +# +msgid "German" +msgstr "Alemany" + +msgid "Get latest experimental image" +msgstr "" + +msgid "Get latest release image" +msgstr "" + +# +msgid "Getting plugin information. Please wait..." +msgstr "Llegint la informació del plugin. Espera..." + +msgid "Go down the list" +msgstr "" + +msgid "Go to first movie or last item" +msgstr "" + +msgid "Go to first movie or top of list" +msgstr "" + +# +#, fuzzy +msgid "Go to first service" +msgstr "Protegir canals" + +# +#, fuzzy +msgid "Go to last service" +msgstr "Protegir canals" + +msgid "Go to next event" +msgstr "" + +# +#, fuzzy +msgid "Go to next page of service" +msgstr "Canviar al següent subservei" + +# +#, fuzzy +msgid "Go to previous event" +msgstr "Canviar al subservei anterior" + +# +#, fuzzy +msgid "Go to previous page of service" +msgstr "Canviar al subservei anterior" + +msgid "Go up the list" +msgstr "" + +msgid "Goto" +msgstr "" + +# +msgid "Goto 0" +msgstr "Anar a 0" + +msgid "Goto :" +msgstr "" + +msgid "Goto X" +msgstr "" + +msgid "Goto index position" +msgstr "" + +msgid "Goto next day of events" +msgstr "" + +msgid "Goto next page of events" +msgstr "" + +# +msgid "Goto position" +msgstr "Anar a la posició" + +msgid "Goto previous day of events" +msgstr "" + +msgid "Goto previous page of events" +msgstr "" + +msgid "Goto specific date/time" +msgstr "" + +msgid "GotoX calibration" +msgstr "" + +msgid "GraphMultiEpg Settings" +msgstr "" + +# +msgid "Graphical Multi EPG" +msgstr "" + +# +msgid "Greek" +msgstr "Grec" + +# +msgid "Green boost" +msgstr "" + +msgid "Guard interval" +msgstr "" + +msgid "HD list" +msgstr "" + +msgid "HDMI-CEC setup" +msgstr "" + +msgid "Handle standby from TV" +msgstr "" + +msgid "Handle wakeup from TV" +msgstr "" + +# +#, fuzzy +msgid "Hard disk" +msgstr "Disc dur" + +# +#, fuzzy +msgid "Hard disk setup" +msgstr "Configuració del disc dur" + +# +#, fuzzy +msgid "Hard disk standby after" +msgstr "Posar el disc dur en repòs després de" + +# +msgid "Harddisk" +msgstr "Disc dur" + +msgid "Hardware: " +msgstr "" + +msgid "Hebrew" +msgstr "" + +msgid "Helps setting up your dish" +msgstr "" + +msgid "Hidden network" +msgstr "" + +msgid "Hide CI messages" +msgstr "" + +msgid "Hide channel list in radio mode" +msgstr "" + +msgid "Hide known extensions" +msgstr "" + +msgid "Hide number markers" +msgstr "" + +# +#, fuzzy +msgid "Hide player" +msgstr "amagar reproductor" + +msgid "Hide zap errors" +msgstr "" + +msgid "Hierarchy info" +msgstr "" + +# +#, fuzzy +msgid "Hierarchy information" +msgstr "Informació jeràrquica" + +# +msgid "High bitrate support" +msgstr "" + +msgid "Hold screen" +msgstr "" + +msgid "Hold till locked" +msgstr "" + +msgid "Home" +msgstr "" + +# +msgid "Horizontal" +msgstr "" + +msgid "Horizontal turning speed" +msgstr "" + +# +msgid "How many minutes do you want to record?" +msgstr "Quants minuts vols gravar?" + +# +msgid "Hue" +msgstr "" + +# +msgid "Hungarian" +msgstr "Hongarès" + +# +#, fuzzy +msgid "IP address" +msgstr "Adreça IP" + +# +msgid "ISO file is too large for this filesystem!" +msgstr "" + +# +msgid "ISO path" +msgstr "" + +msgid "Icons" +msgstr "" + +# +msgid "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." +msgstr "" +"Si pots veure això és que hi ha algun problema\n" +"amb la connexió SCART. Prem OK per tornar." + +# +msgid "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." +msgstr "" + +msgid "Image: " +msgstr "" + +# +#, fuzzy +msgid "Immediate shutdown" +msgstr "apagar" + +# +msgid "In order to record a timer, the TV was switched to the recording service!\n" +msgstr "Per a poder fer una gravació programada, s'ha canviat al canal adequat!\n" + +# +#, fuzzy +msgid "In progress" +msgstr "Progrés d'execució:" + +msgid "Inactivity Sleeptimer" +msgstr "" + +msgid "Include AIT in http streams" +msgstr "" + +msgid "Include ECM in http streams" +msgstr "" + +msgid "Include EIT in http streams" +msgstr "" + +msgid "Incorrect type service for PiP!" +msgstr "" + +# +msgid "Increased voltage" +msgstr "Voltatge incrementat" + +# +msgid "Index" +msgstr "Índex" + +msgid "Index allocated:" +msgstr "" + +# +msgid "Info" +msgstr "" + +# +#, fuzzy +msgid "Info bar" +msgstr "Barra d'informació" + +# +#, fuzzy +msgid "Info bar timeout" +msgstr "Temps d'aparició de la barra d'informació" + +msgid "Infobar frontend data source" +msgstr "" + +# +msgid "Information" +msgstr "Informació" + +# +msgid "Init" +msgstr "Iniciar" + +msgid "Initial fast forward speed" +msgstr "" + +# +msgid "Initial location in new timers" +msgstr "" + +msgid "Initial lock ratio" +msgstr "" + +# +#, fuzzy +msgid "Initial rewind speed" +msgstr "Inicialitzar" + +msgid "Initial signal quality" +msgstr "" + +msgid "Initial signal quality:" +msgstr "" + +# +msgid "Initialization" +msgstr "" + +# +msgid "Initialize" +msgstr "Inicialitzar" + +msgid "Initializing storage device..." +msgstr "" + +# +msgid "Input" +msgstr "Entrada" + +msgid "Input device setup" +msgstr "" + +msgid "Input devices" +msgstr "" + +# +msgid "Install" +msgstr "" + +# +msgid "Install a new image with a USB stick" +msgstr "" + +# +msgid "Install a new image with your web browser" +msgstr "" + +# +#, fuzzy +msgid "Install channel list" +msgstr "canal següent en l'històric" + +msgid "Install extensions" +msgstr "" + +# +msgid "Install extensions." +msgstr "" + +# +msgid "Install local extension" +msgstr "" + +msgid "Install picons on" +msgstr "" + +# +#, fuzzy +msgid "Install softcam" +msgstr "Instal·lant programari..." + +msgid "Installation has completed." +msgstr "" + +msgid "Installation or removal has completed." +msgstr "" + +# +msgid "Installing" +msgstr "Instal·lant" + +# +#, fuzzy +msgid "Installing software..." +msgstr "Instal·lant programari..." + +# +#, fuzzy +msgid "Instant recording location" +msgstr "canviar la gravació (durada)" + +# +#, fuzzy +msgid "Instant recording..." +msgstr "Gravació instantània..." + +# +msgid "Interface: " +msgstr "" + +# +msgid "Intermediate" +msgstr "" + +# +#, fuzzy +msgid "Internal flash" +msgstr "Flash interna" + +msgid "Internal hdd only" +msgstr "" + +msgid "Interval between keys when repeating:" +msgstr "" + +# +#, python-format +msgid "Invalid directory selected: %s" +msgstr "" + +msgid "Invalid location" +msgstr "" + +msgid "Invalid transponder data" +msgstr "" + +# +msgid "Inversion" +msgstr "Inversió" + +msgid "Invert" +msgstr "" + +# +msgid "Ipkg" +msgstr "" + +msgid "Is this setting ok?" +msgstr "" + +msgid "Is this video mode ok?" +msgstr "" + +# +msgid "Italian" +msgstr "Italià" + +msgid "Items per page " +msgstr "" + +msgid "Items per page for list screen" +msgstr "" + +msgid "Job overview" +msgstr "" + +msgid "Jump to beginning of list" +msgstr "" + +# +#, fuzzy +msgid "Jump to end of list" +msgstr "salta al final de la llista" + +# +#, fuzzy +msgid "Jump to next marked position" +msgstr "salta a la següent posició marcada" + +# +#, fuzzy +msgid "Jump to previous marked position" +msgstr "salta a l'anterior posició marcada" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect) +msgid "Just scale" +msgstr "" + +msgid "Keep service" +msgstr "" + +# +#, fuzzy +msgid "Kernel version: " +msgstr "Nova versió:" + +# +msgid "Keyboard" +msgstr "" + +# +#, fuzzy +msgid "Keyboard map" +msgstr "Mapa del teclat" + +# +#, fuzzy +msgid "Keyboard setup" +msgstr "Configuració teclat" + +msgid "LAN adapter" +msgstr "" + +msgid "LAN connection" +msgstr "" + +# +msgid "LNB" +msgstr "LNB" + +# +msgid "Language" +msgstr "Idioma" + +# +msgid "Language selection" +msgstr "Selecció d'idioma" + +# +msgid "Last config" +msgstr "" + +# +msgid "Last speed" +msgstr "" + +msgid "Last upgrade: " +msgstr "" + +msgid "Latest Commits" +msgstr "" + +# +msgid "Latitude" +msgstr "Latitud" + +# +msgid "Latvian" +msgstr "" + +# +#, fuzzy +msgid "Leave DVD player?" +msgstr "sortir del reproductor de pel·lícules..." + +# +msgid "Left" +msgstr "Esq." + +msgid "Left from servicename" +msgstr "" + +msgid "Leisure hobbies" +msgstr "" + +# +#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term. +msgid "Letterbox" +msgstr "" + +msgid "Letterbox zoom" +msgstr "" + +msgid "Limit character set for recording filenames" +msgstr "" + +# +msgid "Limit east" +msgstr "Límit est" + +msgid "Limit the characters that can be used in recording filenames to (7 bit) ascii. This ensures compatibility with operating systems or file systems with limited character sets." +msgstr "" + +# +msgid "Limit west" +msgstr "Límit oest" + +msgid "Limits cancelled" +msgstr "" + +msgid "Limits enabled" +msgstr "" + +# +msgid "Limits off" +msgstr "Treure límits" + +# +msgid "Limits on" +msgstr "Posar límits" + +msgid "Link quality:" +msgstr "" + +# +msgid "Link:" +msgstr "" + +# +msgid "Linked titles with a DVD menu" +msgstr "" + +msgid "List EPG functions..." +msgstr "" + +msgid "List available networks" +msgstr "" + +msgid "List mode" +msgstr "" + +# +#, fuzzy +msgid "List of storage devices" +msgstr "Dispositius d'emmagatzematge" + +msgid "List type" +msgstr "" + +#, python-format +msgid "List version %d, found %d channel" +msgid_plural "List version %d, found %d channels" +msgstr[0] "" +msgstr[1] "" + +# +#, fuzzy +msgid "Listen to the radio..." +msgstr "escoltar la ràdio..." + +msgid "Lists reloaded!" +msgstr "" + +# +msgid "Lithuanian" +msgstr "Lituà" + +# +msgid "Load" +msgstr "" + +msgid "Load Length of Movies in Movielist" +msgstr "" + +msgid "Load length of movies in movie list" +msgstr "" + +# +#, fuzzy +msgid "Load playlist" +msgstr "carregar llista" + +msgid "Local network" +msgstr "" + +# +msgid "Location" +msgstr "" + +# +msgid "Location for instant recordings" +msgstr "" + +msgid "Lock ratio" +msgstr "" + +# +msgid "Lock:" +msgstr "" + +# +msgid "Log results to harddisk" +msgstr "" + +msgid "Long filenames" +msgstr "" + +# +#, fuzzy +msgid "Long key press" +msgstr "Prémer tecla llarg" + +# +msgid "Longitude" +msgstr "Longitud" + +msgid "Loop through to" +msgstr "" + +msgid "Luxembourgish" +msgstr "" + +# +#, fuzzy +msgid "MMC card" +msgstr "Tarja MMC" + +# +msgid "MORE" +msgstr "MÉS" + +# +msgid "Main menu" +msgstr "Menú principal" + +msgid "Maintain old EPG data for" +msgstr "" + +# +msgid "Make this mark an 'in' point" +msgstr "Fer que aquesta marca sigui un punt 'in'" + +# +msgid "Make this mark an 'out' point" +msgstr "Fer que aquesta marca sigui un punt 'out'" + +# +msgid "Make this mark just a mark" +msgstr "Fer que aquesta marca sigui només una marca" + +# +msgid "Manage extensions" +msgstr "" + +# +msgid "Manage your receiver's software" +msgstr "" + +msgid "Manual" +msgstr "" + +# +msgid "Manual Scan" +msgstr "Recerca manual" + +msgid "Manual configuration" +msgstr "" + +# +#, fuzzy +msgid "Manual scan" +msgstr "Recerca manual" + +# +msgid "Manual transponder" +msgstr "Transponedor manual" + +# +msgid "Manufacturer" +msgstr "" + +# +#, fuzzy +msgid "Margin after recording (minutes)" +msgstr "Marge abans de gravar (minuts)" + +# +#, fuzzy +msgid "Margin before recording (minutes)" +msgstr "Marge abans de gravar (minuts)" + +msgid "Max memory positions" +msgstr "" + +msgid "Max. bitrate: " +msgstr "" + +# +msgid "Media player" +msgstr "Reproductor" + +# +#, fuzzy +msgid "Media scanner" +msgstr "Reproductor" + +# +msgid "Medium is not a writeable DVD!" +msgstr "" + +# +msgid "Medium is not empty!" +msgstr "" + +msgid "Memory" +msgstr "" + +msgid "Memory index" +msgstr "" + +# +msgid "Menu" +msgstr "Menú" + +# +msgid "Message" +msgstr "Missatge" + +# +msgid "Message..." +msgstr "" + +#, python-format +msgid "Minimum age %d years" +msgstr "" + +msgid "Minimum send interval" +msgstr "" + +msgid "Missing " +msgstr "" + +# +#, fuzzy +msgctxt "Satellite configuration mode" +msgid "Mode" +msgstr "Mode" + +# +#, fuzzy +msgctxt "Video output mode" +msgid "Mode" +msgstr "Mode" + +# +msgid "Model: " +msgstr "Model: " + +# +msgid "Modulation" +msgstr "Modulació" + +# +msgid "Modulator" +msgstr "Modulador" + +# +msgid "Mon" +msgstr "Dill" + +# +msgid "Mon-Fri" +msgstr "Dill-Div" + +# +msgid "Monday" +msgstr "Dilluns" + +# +msgid "Mosquito noise reduction" +msgstr "" + +msgid "Mount" +msgstr "" + +msgid "Move" +msgstr "" + +# +#, fuzzy +msgid "Move PiP to main picture" +msgstr "Moure Picture in Picture" + +# +msgid "Move Picture in Picture" +msgstr "Moure Picture in Picture" + +# +msgid "Move east" +msgstr "Moure a l'est" + +msgid "Move to other directory" +msgstr "" + +msgid "Move to position X" +msgstr "" + +# +msgid "Move west" +msgstr "Moure a l'oest" + +msgid "Moved to position 0" +msgstr "" + +msgid "Moved to position at index" +msgstr "" + +msgid "Movement" +msgstr "" + +msgid "Movie List Configuration" +msgstr "" + +msgid "Movie Selection" +msgstr "" + +# +#, fuzzy +msgid "Movie list configuration" +msgstr "Configuració del sintonitzador" + +# +msgid "Movie location" +msgstr "" + +# +#, fuzzy +msgid "Movie selection" +msgstr "Selecció de gravació" + +msgid "Movie/Drama" +msgstr "" + +# +msgid "Movielist menu" +msgstr "" + +msgid "Moving" +msgstr "" + +msgid "Moving east ..." +msgstr "" + +msgid "Moving to position" +msgstr "" + +msgid "Moving west ..." +msgstr "" + +# +msgid "Multi EPG" +msgstr "Multi EPG" + +msgid "Multi-EPG bouquet selection" +msgstr "" + +# +msgid "Multimedia" +msgstr "" + +# +msgid "Multiple service support" +msgstr "Suport per a serveis múltiples" + +msgid "Multiplex" +msgstr "" + +# +msgid "Multisat" +msgstr "Multisat" + +msgid "Multisat all select" +msgstr "" + +msgid "Music/Ballet/Dance" +msgstr "" + +# +msgid "Mute" +msgstr "Silenci" + +# +msgid "N/A" +msgstr "N/D" + +# +msgid "NEXT" +msgstr "SEGÜENT" + +msgid "NFI image flashing" +msgstr "" + +# +msgid "NFI image flashing completed. Press Yellow to Reboot!" +msgstr "" + +msgid "NIM" +msgstr "" + +# +msgid "NOW" +msgstr "ARA" + +# +msgid "NTSC" +msgstr "NTSC" + +# +msgid "Name" +msgstr "Nom" + +# +msgid "Nameserver" +msgstr "Servidor de noms" + +# +#, python-format +msgid "Nameserver %d" +msgstr "Servidor de noms %d" + +# +msgid "Nameserver settings" +msgstr "" + +# +#, fuzzy +msgid "Nameserver setup" +msgstr "Configuració dels DNS" + +msgid "Namespace" +msgstr "" + +# +msgid "Netmask" +msgstr "Màscara" + +# +msgid "Network" +msgstr "" + +msgid "Network ID" +msgstr "" + +# +#, fuzzy +msgid "Network configuration..." +msgstr "Configuració del sintonitzador" + +# +#, fuzzy +msgid "Network mount" +msgstr "Muntatge per xarxa" + +# +#, fuzzy, python-format +msgid "Network mount %s" +msgstr "Muntatge per xarxa" + +msgid "Network name (SSID)" +msgstr "" + +# +msgid "Network scan" +msgstr "Escanejar xarxa" + +# +msgid "Network setup" +msgstr "Configuració de xarxa" + +# +msgid "Network test" +msgstr "" + +# +msgid "Network test..." +msgstr "" + +msgid "Network test: " +msgstr "" + +# +#, fuzzy +msgid "Network wizard" +msgstr "Escanejar xarxa" + +# +msgid "Network:" +msgstr "" + +# +msgid "New" +msgstr "Nou" + +msgid "New PIN" +msgstr "" + +# +msgid "New version:" +msgstr "Nova versió:" + +msgid "News Current Affairs" +msgstr "" + +msgctxt "button label, 'next screen'" +msgid "Next" +msgstr "" + +msgctxt "now/next: 'next' event label" +msgid "Next" +msgstr "" + +# +msgid "No" +msgstr "No" + +# +msgid "No (supported) DVDROM found!" +msgstr "" + +# +msgid "No Connection" +msgstr "" + +# +msgid "No HDD found or HDD not initialized!" +msgstr "No hi ha disc dur o no està inicialitzat!" + +# +msgid "No backup needed" +msgstr "No cal backup" + +msgid "No cable tuner found!" +msgstr "" + +# +#, fuzzy +msgid "" +"No data on transponder!\n" +"(Timeout reading PAT)" +msgstr "" +"Transponedor sense dades!\n" +"(Timeout llegint el PAT)" + +msgid "No delay" +msgstr "" + +# +msgid "No description available." +msgstr "" + +# +msgid "No details for this image file" +msgstr "" + +# +msgid "No displayable files on this medium found!" +msgstr "" + +# +msgid "No event info found, recording indefinitely." +msgstr "No hi ha info del programa, gravant indefinidament." + +# +msgid "No fast winding possible yet.. but you can use the number buttons to skip forward/backward!" +msgstr "" + +msgid "No free index available" +msgstr "" + +# +msgid "No free tuner!" +msgstr "No hi ha cap sintonitzador lliure!" + +# +msgid "No network connection available." +msgstr "" + +# +msgid "No networks found" +msgstr "" + +msgid "No new plugins found" +msgstr "" + +# +msgid "No positioner capable frontend found." +msgstr "No s'ha trobat cap motor." + +msgid "No satellites configured. Plese check your tuner setup." +msgstr "" + +msgid "No service" +msgstr "" + +msgid "No services/providers selected" +msgstr "" + +# +#, fuzzy +msgid "No standby" +msgstr "sense standby" + +msgid "No suitable sat tuner found!" +msgstr "" + +# +msgid "No tags are set on these movies." +msgstr "" + +# +#, fuzzy +msgid "No timeout" +msgstr "sense timeout" + +# +msgid "No to all" +msgstr "" + +msgid "No transparency" +msgstr "" + +# +msgid "No tuner is configured for use with a diseqc positioner!" +msgstr "No hi ha cap sintonitzador configurat per a utilitzar amb un motor diseqc!" + +# +msgid "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"No hi ha cap sintonitzador habilitat! \n" +"Sisplau configura algun sintonitzador abans de fer una recerca de canals." + +msgid "No updates available" +msgstr "" + +msgid "No updates available. Please try again later." +msgstr "" + +# +msgid "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" +msgstr "" +"No s'ha trobat un PIN vàlid per al canal!\n" +"Vols canviar-lo ara?\n" +"Si contestes 'No' es deshabilitarà la protecció del canal!" + +# +msgid "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" +msgstr "" +"No s'ha trobat un PIN vàlid de configuració!\n" +"Vols canviar-lo ara?\n" +"Si contestes 'No' es deshabilitarà la protecció de la configuració!" + +msgid "No wireless networks found! Searching..." +msgstr "" + +# +msgid "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." +msgstr "" + +# +msgid "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." +msgstr "" + +# +msgid "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." +msgstr "" + +# +msgid "No, but restart from begin" +msgstr "" + +# +msgid "No, do nothing." +msgstr "No, no cal." + +msgid "No, just start my receiver" +msgstr "" + +msgid "No, never" +msgstr "" + +# +msgid "None" +msgstr "Cap" + +# +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right) +msgid "Nonlinear" +msgstr "" + +msgid "Normal mode" +msgstr "" + +# +msgid "North" +msgstr "Nord" + +# +msgid "Norwegian" +msgstr "Noruec" + +msgid "Not associated" +msgstr "" + +msgid "Not configured" +msgstr "" + +#, python-format +msgid "Not enough disk space. Please free up some disk space and try again. (%d MB required, %d MB available)" +msgstr "" + +msgid "Nothing connected" +msgstr "" + +# +msgid "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Res per buscar!\n" +"Sisplau configura el sintonitzador abans de buscar un canal." + +msgctxt "now/next: 'now' event label" +msgid "Now" +msgstr "" + +# +#, fuzzy +msgid "Now playing" +msgstr "Reproduint" + +# +msgid "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." +msgstr "" + +# +msgid "OK" +msgstr "Bé" + +# +msgid "OK, guide me through the upgrade process" +msgstr "D'acord, guia'm a través del procés d'actualizació" + +msgid "ONID" +msgstr "" + +msgid "OSD name request" +msgstr "" + +# +#, fuzzy +msgid "OSD settings" +msgstr "Config OSD" + +msgid "OSD transparency" +msgstr "" + +# +msgid "Off" +msgstr "Desactivat" + +msgid "Offline decode delay (ms)" +msgstr "" + +msgid "Ok" +msgstr "" + +# +msgid "On" +msgstr "Activat" + +msgid "On end of movie" +msgstr "" + +msgid "On end of movie (as menu)" +msgstr "" + +# +msgid "One" +msgstr "Un" + +# +msgid "Only extensions." +msgstr "" + +# +#, fuzzy +msgid "Only free scan" +msgstr "Netejar abans de buscar" + +# +#, fuzzy +msgid "Open service list" +msgstr "obrir llista de canals" + +# +#, fuzzy +msgid "Open the movie list" +msgstr "llista de pel·lícules" + +msgid "Orbital position" +msgstr "" + +msgid "Original" +msgstr "" + +msgid "Other" +msgstr "" + +msgid "Output" +msgstr "" + +msgid "Overwrite configuration files during software upgrade?" +msgstr "" + +# +#, fuzzy +msgid "Overwrite configuration files?" +msgstr "Configuració del sintonitzador" + +# +msgid "PAL" +msgstr "PAL" + +msgid "PCR PID" +msgstr "" + +# +#, fuzzy +msgid "PIDs" +msgstr "PIDs" + +# +#, fuzzy +msgid "PIN code needed" +msgstr "Cal un codi pin" + +msgid "PLP ID" +msgstr "" + +msgid "PMT PID" +msgstr "" + +# +msgid "Package list update" +msgstr "Actualització de la llista de paquets" + +# +msgid "Packet management" +msgstr "Gestió de paquets" + +# +msgid "Packet manager" +msgstr "" + +#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term +msgid "Pan&scan" +msgstr "" + +# +#, fuzzy +msgid "Parent directory" +msgstr "directori /var" + +# +msgid "Parental control" +msgstr "Control parental" + +# +#, fuzzy +msgid "Parental control services editor" +msgstr "Editor dels canals del control parental" + +# +msgid "Parental control setup" +msgstr "Configuració control parental" + +# +msgid "Parental control type" +msgstr "Tipus de control parental" + +# +msgid "Password" +msgstr "" + +# +#, fuzzy +msgid "Pause" +msgstr "pausa" + +# +msgid "Pause movie at end" +msgstr "" + +msgid "Pause playback" +msgstr "" + +msgid "Pauze/Continue playback" +msgstr "" + +msgid "Percentage left" +msgstr "" + +# +#, fuzzy +msgid "Percentage right" +msgstr "circular dreta" + +msgid "Permanently delete all recordings in the trash can?" +msgstr "" + +msgid "Permanently remove all deleted items" +msgstr "" + +msgid "Persian" +msgstr "" + +# +msgid "Phone number" +msgstr "" + +# +#, fuzzy +msgid "PiP setup" +msgstr "Configuració PiP" + +msgid "Picon" +msgstr "" + +msgid "Picon and service name" +msgstr "" + +# +#, fuzzy +msgid "Picture player" +msgstr "amagar reproductor" + +# +#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term. +msgid "Pillarbox" +msgstr "" + +# +msgid "Pilot" +msgstr "" + +# +msgid "Play" +msgstr "" + +# +msgid "Play DVD" +msgstr "" + +msgid "Play audio in background" +msgstr "" + +msgid "Play audio-CD..." +msgstr "" + +msgid "Play back media files" +msgstr "" + +# +#, fuzzy +msgid "Play entry" +msgstr "reprodueix l'entrada" + +# +#, fuzzy +msgid "Play from next mark or playlist entry" +msgstr "esborrar entrada de la llista" + +msgid "Play from previous mark or playlist entry" +msgstr "" + +msgid "Play music..." +msgstr "" + +msgid "Play next" +msgstr "" + +msgid "Play next (return to movie list)" +msgstr "" + +msgid "Play next (return to previous service)" +msgstr "" + +msgid "Play previous" +msgstr "" + +# +msgid "Play recorded movies..." +msgstr "Reproduir pel·lícules gravades..." + +# +msgid "Please add titles to the compilation." +msgstr "" + +# +msgid "Please change recording endtime" +msgstr "Sisplau canvia l'hora d'aturar la gravació" + +# +msgid "Please check your network settings!" +msgstr "" + +# +msgid "Please choose an extension..." +msgstr "Sisplau escull una extensió..." + +# +msgid "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" + +# +msgid "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" + +msgid "Please connect your receiver to the internet" +msgstr "" + +# +msgid "Please do not change any values unless you know what you are doing!" +msgstr "Sisplau, no canviïs els valors si no n'estàs segur!" + +# +msgid "Please enter a name for the new bouquet" +msgstr "Introdueix un nom per a la nova llista" + +# +msgid "Please enter a name for the new marker" +msgstr "Introdueix un nom per al nou marcador" + +# +msgid "Please enter a new filename" +msgstr "" + +# +msgid "Please enter filename (empty = use current date)" +msgstr "Sisplau introdueix el nom (buit=data actual)" + +# +msgid "Please enter name of the new directory" +msgstr "" + +msgid "Please enter new name:" +msgstr "" + +# +msgid "Please enter the correct pin code" +msgstr "Sisplau introdueix el pin" + +msgid "Please enter the old PIN code" +msgstr "" + +# +msgid "Please follow the instructions on the TV" +msgstr "" + +# +msgid "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." +msgstr "" + +# +msgid "Please press OK to continue." +msgstr "" + +msgid "Please select a default EPG type..." +msgstr "" + +# +msgid "Please select a playlist to delete..." +msgstr "Sisplau selecciona una llista per eliminar..." + +# +msgid "Please select a playlist..." +msgstr "Sisplau selecciona una llista..." + +# +#, fuzzy +msgid "Please select a sub service..." +msgstr "Sisplau selecciona un subservei..." + +# +msgid "Please select a subservice to record..." +msgstr "Sisplau selecciona un subservei a gravar..." + +# +msgid "Please select a subservice..." +msgstr "Sisplau selecciona un subservei..." + +msgid "Please select an NFI file and press green key to flash!" +msgstr "" + +# +#, fuzzy +msgid "Please select medium to be scanned" +msgstr "Sisplau selecciona un subservei a gravar..." + +# +msgid "Please select medium to use as backup location" +msgstr "" + +# +msgid "Please select tag to filter..." +msgstr "" + +# +msgid "Please select the movie path..." +msgstr "" + +# +msgid "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." +msgstr "" + +# +msgid "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." +msgstr "" + +# +#, fuzzy +msgid "Please set up tuner A" +msgstr "Configura el sintonitzador B" + +# +msgid "Please set up tuner B" +msgstr "Configura el sintonitzador B" + +# +msgid "Please set up tuner C" +msgstr "Configura el sintonitzador C" + +# +msgid "Please set up tuner D" +msgstr "Configura el sintonitzador D" + +# +msgid "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." +msgstr "" +"Sisplau ulititza les fletxes per a moure la finestra PiP.\n" +"Prem Bouquet +/- per canviar la mida de la finestra.\n" +"Prem OK per a tornar al mode TV o EXIT per a cancel·lar el moviment." + +# +msgid "Please use the UP and DOWN keys to select your language. Afterwards press the OK button." +msgstr "" + +msgid "Please wait" +msgstr "" + +# +#, fuzzy +msgid "Please wait (downloading channel list)" +msgstr "Carregant la llista... espera..." + +# +#, fuzzy +msgid "Please wait (downloading softcam)" +msgstr "Carregant la llista... espera..." + +# +#, fuzzy +msgid "Please wait (updating packages)" +msgstr "sisplau espera, carregant imatge..." + +# +msgid "Please wait for activation of your network configuration..." +msgstr "" + +# +msgid "Please wait while scanning is in progress..." +msgstr "" + +# +msgid "Please wait while we configure your network..." +msgstr "" + +# +msgid "Please wait while we prepare your network interfaces..." +msgstr "" + +# +msgid "Please wait while we test your network..." +msgstr "" + +# +msgid "Please wait while your network is restarting..." +msgstr "" + +# +msgid "Please wait..." +msgstr "" + +# +msgid "Please wait... Loading list..." +msgstr "Carregant la llista... espera..." + +# +msgid "Plugin browser" +msgstr "Plugin navegador" + +# +msgid "Plugin manager activity information" +msgstr "" + +# +msgid "Plugin manager help" +msgstr "" + +# +msgid "Plugins" +msgstr "" + +msgid "Polarisation" +msgstr "" + +msgid "Polarisation:" +msgstr "" + +# +msgid "Polarization" +msgstr "Polarització" + +# +msgid "Polish" +msgstr "" + +# +msgid "Port A" +msgstr "Port A" + +# +msgid "Port B" +msgstr "Port B" + +# +msgid "Port C" +msgstr "Port C" + +# +msgid "Port D" +msgstr "Port D" + +# +msgid "Portuguese" +msgstr "Portuguès" + +msgid "Position of completed timers in timerlist" +msgstr "" + +msgid "Position stored at index" +msgstr "" + +# +msgid "Positioner" +msgstr "Motor" + +msgid "Positioner (selecting satellites)" +msgstr "" + +msgid "Positioner Setup" +msgstr "" + +# +msgid "Positioner setup" +msgstr "Configuració del motor" + +# +msgid "Power threshold in mA" +msgstr "Llindar de corrent en mA" + +# +msgid "Predefined transponder" +msgstr "Transponedor predefinit" + +msgid "Prefer AC3 track" +msgstr "" + +msgid "Prefer AC3+ track" +msgstr "" + +msgid "Prefer audio track stored by service" +msgstr "" + +msgid "Prefer graphical DVB subtitles" +msgstr "" + +msgid "Prefer subtitles for hearing impaired" +msgstr "" + +msgid "Prefer subtitles stored by service" +msgstr "" + +msgid "Preferred tuner" +msgstr "" + +msgid "Preferred tuner for recordings" +msgstr "" + +msgid "Prepare another USB stick for image flashing" +msgstr "" + +# +msgid "Preparing... Please wait" +msgstr "Preparant... Sisplau espera" + +msgid "Press '0' to toggle PiP mode" +msgstr "" + +msgid "Press INFO on your remote control for additional information." +msgstr "" + +msgid "Press MENU on your remote control for additional options." +msgstr "" + +# +msgid "Press OK on your remote control to continue." +msgstr "" + +# +msgid "Press OK to activate the selected skin." +msgstr "" + +# +msgid "Press OK to activate the settings." +msgstr "Prem OK per a activar la configuració." + +# +msgid "Press OK to edit the settings." +msgstr "" + +# +#, python-format +msgid "Press OK to get further details for %s" +msgstr "" + +# +msgid "Press OK to scan" +msgstr "Prem OK per a buscar" + +# +#, fuzzy +msgid "Press OK to select a provider." +msgstr "Prem OK per a buscar" + +msgid "Press OK to select satellites" +msgstr "" + +# +msgid "Press OK to select/deselect a CAId." +msgstr "" + +# +msgid "Press OK to start the scan" +msgstr "Prem OK per a començar la recerca" + +msgid "Press OK to toggle the selection" +msgstr "" + +# +msgid "Press OK to toggle the selection." +msgstr "" + +# +msgid "Press yellow to set this interface as default interface." +msgstr "" + +msgctxt "button label, 'previous screen'" +msgid "Prev" +msgstr "" + +# +msgid "Preview" +msgstr "" + +# +msgid "Preview menu" +msgstr "" + +msgid "Preview selected channel" +msgstr "" + +# +msgid "Primary DNS" +msgstr "" + +# +msgid "Priority" +msgstr "" + +# +msgid "Process" +msgstr "" + +msgid "Progress" +msgstr "" + +msgid "Progress bar left" +msgstr "" + +msgid "Progress bar right" +msgstr "" + +# +msgid "Properties of current title" +msgstr "" + +# +msgid "Protect services" +msgstr "Protegir canals" + +# +msgid "Protect setup" +msgstr "Protegir configuració" + +# +msgid "Provider" +msgstr "Proveïdor" + +# +msgid "Provider to scan" +msgstr "Proveïdor a escanejar" + +# +msgid "Providers" +msgstr "Proveïdors" + +msgid "Put TV in standby" +msgstr "" + +msgid "Put receiver in standby" +msgstr "" + +# +msgid "Python frontend for /tmp/mmi.socket" +msgstr "" + +# +msgid "Quick" +msgstr "" + +# +#, fuzzy +msgid "Quick zap" +msgstr "Zappeig ràpid" + +# +msgid "RF output" +msgstr "Sortida RF" + +# +msgid "RGB" +msgstr "RGB" + +# +msgid "Radio" +msgstr "" + +# +#, fuzzy +msgid "Ram disk" +msgstr "Disc en RAM" + +# +msgid "Random" +msgstr "" + +#, python-format +msgid "Rating defined by broadcaster - %d" +msgstr "" + +msgid "Rating undefined" +msgstr "" + +# +msgid "Really close without saving settings?" +msgstr "Sortir sense guardar els canvis?" + +# +msgid "Really delete done timers?" +msgstr "Vols esborrar les programacions ja finalitzades?" + +# +msgid "Really exit the subservices quickzap?" +msgstr "Sortir del zappeig ràpid dels subserveis?" + +# +msgid "Really reboot now?" +msgstr "" + +# +msgid "Really restart now?" +msgstr "" + +# +msgid "Really shutdown now?" +msgstr "" + +msgid "Really upgrade the frontprocessor and reboot now?" +msgstr "" + +msgid "Really upgrade your settop box and reboot now?" +msgstr "" + +# +msgid "Reboot" +msgstr "" + +msgid "Rec" +msgstr "" + +# +#, fuzzy +msgid "Reception settings" +msgstr "Configuració de recepció" + +# +msgid "Record" +msgstr "Gravar" + +# +#, python-format +msgid "Record time limited due to conflicting timer %s" +msgstr "" + +# +msgid "Recorded files..." +msgstr "Arxius gravats..." + +# +msgid "Recording" +msgstr "Gravant" + +msgid "Recording in progress" +msgstr "" + +# +msgid "Recording paths" +msgstr "" + +msgid "Recording type" +msgstr "" + +# +msgid "Recording(s) are in progress or coming up in few seconds!" +msgstr "" + +# +msgid "Recordings" +msgstr "" + +# +msgid "Recordings always have priority" +msgstr "Les gravacions tenen prioritat" + +msgid "Red button..." +msgstr "" + +msgid "Reenter new PIN" +msgstr "" + +msgid "Refresh rate" +msgstr "" + +# +msgid "Refresh rate selection." +msgstr "" + +msgid "Regard deep standby as standby" +msgstr "" + +msgid "Relative" +msgstr "" + +# +msgid "Reload" +msgstr "" + +msgid "Reload black-/white lists" +msgstr "" + +msgid "Reloading bouquets and services..." +msgstr "" + +msgid "Remember last service in PiP" +msgstr "" + +msgid "Remember service PIN" +msgstr "" + +msgid "Remember these settings for each folder" +msgstr "" + +msgid "Reminder, you have chosen to save timeshift file." +msgstr "" + +# +#, fuzzy +msgid "Remote control type" +msgstr "Tipus de control parental" + +msgid "Removal has completed." +msgstr "" + +# +msgid "Remove" +msgstr "" + +# +msgid "Remove a mark" +msgstr "Esborrar una marca" + +msgid "Remove a nameserver entry" +msgstr "" + +# +#, fuzzy +msgid "Remove bookmark" +msgstr "Esborrar una marca" + +msgid "Remove completed timers after (days)" +msgstr "" + +# +msgid "Remove currently selected title" +msgstr "Esborra el títol seleccionat" + +msgid "Remove items from trash can after (days)" +msgstr "" + +# +msgid "Remove plugins" +msgstr "Esborrar plugins" + +# +msgid "Remove title" +msgstr "Esborra títol" + +# +msgid "Removing" +msgstr "" + +# +#, python-format +msgid "Removing directory %s failed. (Maybe not empty.)" +msgstr "" + +# +#, fuzzy +msgid "Removing partition table" +msgstr "Esborra títol" + +# +msgid "Rename" +msgstr "" + +msgid "Repeat" +msgstr "" + +# +#, fuzzy +msgid "Repeat type" +msgstr "Tipus de repetició" + +# +msgid "Repeating event currently recording... What do you want to do?" +msgstr "S'està gravant un canal programat repetidament... Què vols fer?" + +# +msgid "Repeats" +msgstr "" + +msgid "Require authentication for http streams" +msgstr "" + +# +msgid "Required medium type:" +msgstr "" + +msgid "Rereading partition table" +msgstr "" + +msgid "Reserved" +msgstr "" + +# +msgid "Reset" +msgstr "Resetejar" + +# +msgid "Reset and renumerate title names" +msgstr "" + +msgid "Reset playback position" +msgstr "" + +# +msgid "Reset video enhancement settings to system defaults?" +msgstr "" + +# +msgid "Reset video enhancement settings to your last configuration?" +msgstr "" + +# +msgid "Resolution" +msgstr "" + +# +msgid "Restart" +msgstr "Reiniciar" + +# +msgid "Restart GUI now?" +msgstr "Reengegar la IGU ara?" + +msgid "Restart enigma" +msgstr "" + +# +msgid "Restart network" +msgstr "" + +# +msgid "Restart test" +msgstr "" + +# +msgid "Restart your network connection and interfaces.\n" +msgstr "" + +# +msgid "Restore" +msgstr "Restaurar" + +# +msgid "Restore backups" +msgstr "" + +# +msgid "Restore is running..." +msgstr "" + +# +msgid "Restore system settings" +msgstr "" + +# +#, fuzzy +msgid "Restoring..." +msgstr "gravant..." + +# +msgid "Resume from last position" +msgstr "" + +# +#, python-format +msgid "Resume position at %s" +msgstr "" + +# +#. TRANSLATORS: The string "Resuming playback" flashes for a moment +#. TRANSLATORS: at the start of a movie, when the user has selected +#. TRANSLATORS: "Resume from last position" as start behavior. +#. TRANSLATORS: The purpose is to notify the user that the movie starts +#. TRANSLATORS: in the middle somewhere and not from the beginning. +#. TRANSLATORS: (Some translators seem to have interpreted it as a +#. TRANSLATORS: question or a choice, but it is a statement.) +msgid "Resuming playback" +msgstr "" + +# +msgid "Return to movie list" +msgstr "" + +# +msgid "Return to previous service" +msgstr "" + +msgid "Reverse bouquet buttons" +msgstr "" + +msgid "Reverse list" +msgstr "" + +# +msgid "Rewind speeds" +msgstr "" + +msgid "Rewrap teletext subtitles" +msgstr "" + +# +msgid "Right" +msgstr "Dreta" + +msgid "Right from servicename" +msgstr "" + +msgid "Roll-off" +msgstr "" + +msgid "Romanian" +msgstr "" + +msgid "Root directory" +msgstr "" + +msgid "Rotor step position:" +msgstr "" + +# +msgid "Rotor turning speed" +msgstr "Velocitat de rotació del motor" + +msgid "Round start time on" +msgstr "" + +# +msgid "Russian" +msgstr "Rus" + +# +msgid "S-Video" +msgstr "S-Vídeo" + +msgid "SID" +msgstr "" + +# +msgid "SINGLE LAYER DVD" +msgstr "" + +# +msgid "SNR" +msgstr "" + +# +msgid "SNR:" +msgstr "" + +# +msgid "SSID:" +msgstr "" + +msgid "Same resolution as skin" +msgstr "" + +# +msgid "Sat" +msgstr "Dis" + +# +msgid "Satellite" +msgstr "Satèl·lit" + +# +#, fuzzy +msgid "Satellite dish setup" +msgstr "Configuració de l'equip de satèl·lit" + +# +msgid "Satellite equipment" +msgstr "" + +# +#, fuzzy +msgid "Satellite equipment setup" +msgstr "Configuració de l'equip de satèl·lit" + +msgid "Satellite longitude:" +msgstr "" + +# +msgid "Satellites" +msgstr "Satèl·lits" + +# +msgid "Satfinder" +msgstr "Localitzador de satèl·lits" + +# +msgid "Sats" +msgstr "" + +# +msgid "Saturation" +msgstr "" + +# +msgid "Saturday" +msgstr "Dissabte" + +# +msgid "Save" +msgstr "" + +# +#, fuzzy +msgid "Save playlist" +msgstr "grava llista" + +msgid "Save timeshift file" +msgstr "" + +msgid "Save timeshift file in movie directory" +msgstr "" + +# +msgid "Scaler sharpness" +msgstr "" + +# +#, fuzzy +msgid "Scaling mode" +msgstr "Mode d'escalat" + +msgid "Scan" +msgstr "" + +# +msgid "Scan " +msgstr "Escaneig" + +# +#. TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' +#, fuzzy, python-format +msgid "Scan %s" +msgstr "Escaneig" + +# +#. TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' +#, fuzzy, python-format +msgid "Scan %s band" +msgstr "Escanejar banda EU MID" + +# +msgid "Scan additional SR" +msgstr "Escanejar SR addicional" + +# +#, fuzzy +msgid "Scan files..." +msgstr "Arxius gravats..." + +msgid "Scan wireless networks" +msgstr "" + +msgid "Scan your network for wireless access points and connect to them using your selected wireless device.\n" +msgstr "" + +#, python-format +msgid "Scanning %s..." +msgstr "" + +#. TRANSLATORS: The stb is performing a channel scan, progress percentage is printed in '%d' (and '%%' will show a single '%' symbol) +#, python-format +msgid "Scanning - %d%% completed" +msgid_plural "Scanning - %d%% completed" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "Scanning completed, %d channel found" +msgid_plural "Scanning completed, %d channels found" +msgstr[0] "" +msgstr[1] "" + +msgid "Scanning failed!" +msgstr "" + +msgid "Scanning..." +msgstr "" + +# +msgid "Scans default lamedbs sorted by satellite with a connected dish positioner" +msgstr "" + +# +msgid "Search east" +msgstr "Buscar a l'est" + +# +msgid "Search west" +msgstr "Buscar a l'oest" + +msgid "Searching" +msgstr "" + +msgid "Searching east ..." +msgstr "" + +# +msgid "Searching for available updates. Please wait..." +msgstr "" + +# +msgid "Searching for new installed or removed packages. Please wait..." +msgstr "" + +msgid "Searching west ..." +msgstr "" + +msgid "Second cable of motorized LNB" +msgstr "" + +# +msgid "Secondary DNS" +msgstr "" + +# +msgid "Seek" +msgstr "Posicionar" + +# +#, fuzzy +msgid "Seek backward" +msgstr "saltar endarrere" + +# +#, fuzzy +msgid "Seek backward (enter time)" +msgstr "saltar enrere (introduint el temps)" + +# +#, fuzzy +msgid "Seek forward" +msgstr "saltar endavant" + +# +#, fuzzy +msgid "Seek forward (enter time)" +msgstr "saltar endavant (introduint el temps)" + +# +msgid "Select" +msgstr "" + +# +#, fuzzy +msgid "Select CAId" +msgstr "Seleccionar disc dur" + +# +msgid "Select HDD" +msgstr "Seleccionar disc dur" + +# +#, fuzzy +msgid "Select a bouquet" +msgstr "Seleccionar una pel·lícula" + +# +msgid "Select a movie" +msgstr "Seleccionar una pel·lícula" + +# +#, fuzzy +msgid "Select a network adapter" +msgstr "Selecciona interfície de xarxa" + +# +#, fuzzy +msgid "Select a skin" +msgstr "Seleccionar una pel·lícula" + +# +#, fuzzy +msgid "Select a tuner" +msgstr "Seleccionar una pel·lícula" + +# +#, fuzzy +msgid "Select a wireless network" +msgstr "Seleccionar pista d'àudio" + +msgid "Select action" +msgstr "" + +#, python-format +msgid "Select action for timer %s:" +msgstr "" + +msgid "Select all" +msgstr "" + +msgid "Select an image to be downloaded" +msgstr "" + +# +msgid "Select audio track" +msgstr "Seleccionar pista d'àudio" + +# +#, fuzzy +msgid "Select backup files" +msgstr "Seleccionar una pel·lícula" + +# +#, fuzzy +msgid "Select backup location" +msgstr "Localització del backup" + +# +msgid "Select channel to record from" +msgstr "Selecciona el canal a gravar" + +msgid "Select copy destination for:" +msgstr "" + +msgid "Select default EPG type..." +msgstr "" + +msgid "Select desired image from feed list" +msgstr "" + +msgid "Select destination for:" +msgstr "" + +msgid "Select files for backup." +msgstr "" + +# +msgid "Select files/folders to backup" +msgstr "" + +msgid "Select input device" +msgstr "" + +msgid "Select input device." +msgstr "" + +# +msgid "Select interface" +msgstr "" + +# +#, fuzzy +msgid "Select location" +msgstr "Selecció EPG" + +# +#, fuzzy +msgid "Select movie" +msgstr "Seleccionar una pel·lícula" + +# +msgid "Select provider to add..." +msgstr "" + +# +msgid "Select refresh rate" +msgstr "" + +msgid "Select satellites" +msgstr "" + +# +msgid "Select service to add..." +msgstr "" + +msgid "Select sort method:" +msgstr "" + +# +#, fuzzy +msgid "Select target folder" +msgstr "Seleccionar una pel·lícula" + +# +#, fuzzy +msgid "Select the movie path" +msgstr "Seleccionar una pel·lícula" + +# +#, fuzzy +msgid "Select upgrade source" +msgstr "Seleccionar una pel·lícula" + +# +msgid "Select upgrade source to edit." +msgstr "" + +# +msgid "Select video input with up/down buttons" +msgstr "" + +# +msgid "Select video mode" +msgstr "" + +# +msgid "Select wireless network" +msgstr "" + +msgid "Select your provider, and press OK to start the scan" +msgstr "" + +msgid "Selecting satellites 1 (USALS)" +msgstr "" + +msgid "Selecting satellites 2 (USALS)" +msgstr "" + +# +msgid "Send DiSEqC only on satellite change" +msgstr "" + +# +msgid "Separate titles with a main menu" +msgstr "" + +# +msgid "Sequence repeat" +msgstr "Repetir seqüència" + +# +msgid "Serbian" +msgstr "" + +# +msgid "Service" +msgstr "Canal" + +# +msgid "Service has been added to the favourites." +msgstr "S'ha afegit el canal als preferits." + +# +msgid "Service has been added to the selected bouquet." +msgstr "S'ha afegit el canal a la llista seleccionada." + +# +#, fuzzy +msgid "Service info" +msgstr "Info del canal" + +# +#, fuzzy +msgid "" +"Service invalid!\n" +"(Timeout reading PMT)" +msgstr "" +"Canal invàlid!\n" +"(Timeout llegint el PMT)" + +# +#, fuzzy +msgid "Service name" +msgstr "Recerca de canal" + +# +#, fuzzy +msgid "" +"Service not found!\n" +"(SID not found in PAT)" +msgstr "" +"No s'ha trobat el canal!\n" +"(No s'ha trobat el SID al PAT)" + +msgid "Service reference" +msgstr "" + +# +msgid "Service scan" +msgstr "Buscar canals" + +# +#, fuzzy +msgid "Service searching" +msgstr "Buscar canals" + +# +#, fuzzy +msgid "Service title mode" +msgstr "Info del canal" + +# +msgid "" +"Service unavailable!\n" +"Check tuner configuration!" +msgstr "" + +# +msgid "Services" +msgstr "Canals" + +msgid "Set default" +msgstr "" + +# +#, fuzzy +msgid "Set end time" +msgstr "Hora final" + +msgid "Set fixed" +msgstr "" + +msgid "Set fps for external subtitles" +msgstr "" + +# +msgid "Set interface as default Interface" +msgstr "" + +msgid "Set limits" +msgstr "" + +msgid "Set the type of the progress indication in the channel selection screen." +msgstr "" + +msgid "Set time window to 1 hour" +msgstr "" + +msgid "Set time window to 2 hours" +msgstr "" + +msgid "Set time window to 3 hours" +msgstr "" + +msgid "Set time window to 4 hours" +msgstr "" + +msgid "Set time window to 5 hours" +msgstr "" + +msgid "Set time window to 6 hours" +msgstr "" + +msgid "Set voltage and 22KHz" +msgstr "" + +# +msgid "Settings" +msgstr "Configuracions" + +# +msgid "Setup" +msgstr "Configuració" + +msgid "Setup menu" +msgstr "" + +# +#, fuzzy +msgid "Setup mode" +msgstr "Mode test" + +msgid "Setup your positioner" +msgstr "" + +# +#, fuzzy +msgid "Setup your satellite equipment" +msgstr "Configuració de l'equip de satèl·lit" + +# +#, python-format +msgid "Shall the USB stick wizard proceed and program the image file %s into flash memory?" +msgstr "" + +# +msgid "Sharpness" +msgstr "" + +msgid "Short filenames" +msgstr "" + +msgid "Show EIT now/next in infobar" +msgstr "" + +# +#, fuzzy +msgid "Show EPG for current channel..." +msgstr "Mostrar la barra en canviar el programa" + +# +#, fuzzy +msgid "Show EPG..." +msgstr "mostrar EPG..." + +msgid "Show Games show" +msgstr "" + +msgid "Show SNR percentage instead of dB value" +msgstr "" + +msgid "Show VCR scart on main menu" +msgstr "" + +msgid "Show WLAN status" +msgstr "" + +msgid "Show animation while busy" +msgstr "" + +msgid "Show background in radio mode" +msgstr "" + +msgid "Show bouquet selection menu" +msgstr "" + +msgid "Show busy indicator when the system is busy." +msgstr "" + +msgid "Show channel numbers in channel selection" +msgstr "" + +msgid "Show columns" +msgstr "" + +msgid "Show crypto icons" +msgstr "" + +msgid "Show crypto info in infobar" +msgstr "" + +msgid "Show detailed event info" +msgstr "" + +# +#, fuzzy +msgid "Show event details" +msgstr "mostrar detalls del programa" + +# +msgid "Show event-progress in channel selection" +msgstr "" + +msgid "Show extended description" +msgstr "" + +# +#, fuzzy +msgid "Show extensions..." +msgstr "veure extensions..." + +msgid "Show icon for new/unseen items" +msgstr "" + +msgid "Show in extensions menu" +msgstr "" + +msgid "Show info" +msgstr "" + +msgid "Show info line" +msgstr "" + +# +msgid "Show infobar on channel change" +msgstr "Mostrar la barra d'info canviant de canal" + +# +msgid "Show infobar on event change" +msgstr "Mostrar la barra en canviar el programa" + +# +msgid "Show infobar on skip forward/backward" +msgstr "Mostrar la barra anant endavant/enrere" + +msgid "Show latest commits on sourceforge" +msgstr "" + +msgid "Show message when recording starts" +msgstr "" + +msgid "Show movie lengths in movielist" +msgstr "" + +msgid "Show multi channel EPG" +msgstr "" + +msgid "Show picons in channel list" +msgstr "" + +# +msgid "Show positioner movement" +msgstr "Mostrar el moviment del motor" + +msgid "Show screensaver" +msgstr "" + +msgid "Show second infobar" +msgstr "" + +msgid "Show service type icons" +msgstr "" + +# +msgid "Show services beginning with" +msgstr "Mostra els canals que comencen per" + +# +#, fuzzy +msgid "Show shutdown menu" +msgstr "Mostrar el moviment del motor" + +msgid "Show single service EPG" +msgstr "" + +msgid "Show status icons in Movielist" +msgstr "" + +msgid "Show status icons in movie list" +msgstr "" + +msgid "Show status icons in movielist" +msgstr "" + +msgid "Show tag menu" +msgstr "" + +# +msgid "Show the radio player..." +msgstr "Reproductor de ràdio..." + +# +msgid "Show the tv player..." +msgstr "Mostrar el reproductor de tv..." + +msgid "Show warning when timeshift is stopped" +msgstr "" + +# +msgid "Shows the state of your wireless LAN connection.\n" +msgstr "" + +# +#, fuzzy +msgid "Shuffle playlist" +msgstr "llista aleatòria" + +# +msgid "Shutdown" +msgstr "" + +msgid "Shutdown when in Standby" +msgstr "" + +msgid "Side by side" +msgstr "" + +msgid "Signal OK, proceeding" +msgstr "" + +msgid "Signal quality" +msgstr "" + +msgid "Signal strength:" +msgstr "" + +# +msgid "Signal: " +msgstr "" + +# +msgid "Similar" +msgstr "Similar" + +# +msgid "Similar broadcasts:" +msgstr "Emisions similars:" + +# +msgid "Simple" +msgstr "" + +# +msgid "Simple titleset (compatibility for legacy players)" +msgstr "" + +# +msgid "Single" +msgstr "Senzill" + +# +msgid "Single EPG" +msgstr "EPG senzill" + +# +msgid "Single satellite" +msgstr "Satèl·lit únic" + +# +#, fuzzy +msgid "Single step (GOP)" +msgstr "Satèl·lit únic" + +# +msgid "Single transponder" +msgstr "Transponedor únic" + +msgid "Site latitude" +msgstr "" + +msgid "Site longitude" +msgstr "" + +# +msgid "Skin" +msgstr "" + +# +msgid "Skins" +msgstr "" + +# +#, fuzzy +msgid "Skip empty services" +msgstr "Protegir canals" + +msgid "Skip internet connection check (disables automatic package installation)" +msgstr "" + +# +#, fuzzy +msgid "Sleep timer" +msgstr "Programació d'apagada" + +msgid "SleepTimer Configuration" +msgstr "" + +msgid "Sleeptimer" +msgstr "" + +msgid "Slide picture in loop" +msgstr "" + +# +#, fuzzy +msgid "Slide show interval (sec.)" +msgstr "Segons entre diapositives" + +# +#, fuzzy, python-format +msgid "Slot %d" +msgstr "Slot %d" + +msgid "Slovak" +msgstr "" + +# +msgid "Slovenian" +msgstr "" + +# +msgid "Slow" +msgstr "Lent" + +msgid "Slow motion speeds" +msgstr "" + +msgid "Small progress" +msgstr "" + +msgid "Social/Political/Economics" +msgstr "" + +msgid "SoftCam / CI" +msgstr "" + +msgid "Softcam type" +msgstr "" + +# +msgid "Software" +msgstr "" + +# +msgid "Software management" +msgstr "" + +msgid "Software manager setup" +msgstr "" + +# +msgid "Software restore" +msgstr "" + +# +msgid "Software update" +msgstr "" + +msgid "Softwaremanager information" +msgstr "" + +# +#, fuzzy +msgid "Some plugins are not available:\n" +msgstr "Alguns plugins no estan disponibles:\n" + +#, python-format +msgid "Sorry, %s has not been installed!" +msgstr "" + +msgid "Sorry, deleting directories can (for now) only be done through the trash can." +msgstr "" + +msgid "Sorry, no backups found!" +msgstr "" + +msgid "Sorry, no details available!" +msgstr "" + +# +#, fuzzy +msgid "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." +msgstr "" +"El destí del backup no existeix\n" +"\n" +"Sisplau, escull-ne un altre." + +msgid "Sort" +msgstr "" + +# +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort A-Z" +msgstr "" + +msgid "Sort by" +msgstr "" + +msgid "Sort list:" +msgstr "" + +# +#. TRANSLATORS: This must fit into the header button in the EPG-List +#, fuzzy +msgid "Sort time" +msgstr "sense timeout" + +# +msgid "Sound" +msgstr "So" + +# +#, fuzzy +msgid "Sound carrier" +msgstr "Portadora de so" + +msgid "Source request" +msgstr "" + +# +msgid "South" +msgstr "Sud" + +# +msgid "Spanish" +msgstr "Espanyol" + +msgid "Specify the end time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the end time until the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify the start time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the start time when the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify timeframe to ignore inactivity sleeptimer" +msgstr "" + +msgid "Specify timeframe to ignore the shutdown in standby" +msgstr "" + +# +msgid "Split preview mode" +msgstr "" + +msgid "Splitscreen" +msgstr "" + +msgid "Sports" +msgstr "" + +# +#, fuzzy +msgid "Standard" +msgstr "Repòs" + +msgid "Standart list" +msgstr "" + +# +msgid "Standby" +msgstr "Repòs" + +# +#, fuzzy +msgid "Standby / restart" +msgstr "Repòs / Reiniciar" + +msgid "Standby after current event" +msgstr "" + +#, python-format +msgid "Standby fan %d PWM" +msgstr "" + +#, python-format +msgid "Standby fan %d voltage" +msgstr "" + +msgid "Standby in " +msgstr "" + +msgid "StandbyLED" +msgstr "" + +# +msgid "Start from the beginning" +msgstr "" + +msgid "Start offline decode" +msgstr "" + +# +msgid "Start recording?" +msgstr "Iniciar gravació?" + +# +msgid "Start test" +msgstr "" + +# +#, fuzzy +msgid "Start time" +msgstr "Hora inici" + +msgid "Start time to ignore inactivity sleeptimer" +msgstr "" + +msgid "Start time to ignore shutdown in standby" +msgstr "" + +# +#, fuzzy +msgid "Start timeshift" +msgstr "activar pausa" + +msgid "Start with list screen" +msgstr "" + +# +msgid "Starting on" +msgstr "Començar el" + +msgid "Startup the set top box in standby" +msgstr "" + +msgid "Startup to Standby" +msgstr "" + +# +msgid "Step east" +msgstr "Pas a l'est" + +# +msgid "Step west" +msgstr "Pas a l'oest" + +msgid "Stepped east" +msgstr "" + +msgid "Stepped west" +msgstr "" + +# +msgid "Stop" +msgstr "Parar" + +# +#, fuzzy +msgid "Stop PiP" +msgstr "Parar" + +# +msgid "Stop current event and disable coming events" +msgstr "Aturar el programa actual i deshabilitar els següents" + +# +msgid "Stop current event but not coming events" +msgstr "Aturar el programa actual però no els següents" + +# +#, fuzzy +msgid "Stop entry" +msgstr "aturar entrada" + +# +msgid "Stop playing this movie?" +msgstr "Aturar la reproducció de la pel·lícula?" + +msgid "Stop recording" +msgstr "" + +msgid "Stop recording and delete" +msgstr "" + +msgid "Stop service on return to movie list" +msgstr "" + +# +msgid "Stop test" +msgstr "" + +# +msgid "Stop testing plane after # failed transponders" +msgstr "" + +# +msgid "Stop testing plane after # successful transponders" +msgstr "" + +msgid "Stop timer recording" +msgstr "" + +# +#, fuzzy +msgid "Stop timeshift" +msgstr "cancel·lar pausa" + +# +#, fuzzy +msgid "Stop timeshift?" +msgstr "Cancel·lar la pausa?" + +msgid "Stopped" +msgstr "" + +msgid "Store at index" +msgstr "" + +# +msgid "Store position" +msgstr "Guardar la posició" + +# +msgid "Stored position" +msgstr "Posició guardada" + +msgid "Stream" +msgstr "" + +msgid "Stream request" +msgstr "" + +msgid "Strongest position" +msgstr "" + +# +msgid "Subservice list..." +msgstr "Llista de subserveis..." + +# +msgid "Subservices" +msgstr "Subserveis" + +msgid "Subtitle Quickmenu" +msgstr "" + +# +#, fuzzy +msgid "Subtitle alignment" +msgstr "Selecció de subtítols" + +msgid "Subtitle border width" +msgstr "" + +msgid "Subtitle delay when timing is bad" +msgstr "" + +msgid "Subtitle delay when timing lacks" +msgstr "" + +# +#, fuzzy +msgid "Subtitle font size" +msgstr "Subtítols" + +msgid "Subtitle language selection 1" +msgstr "" + +msgid "Subtitle language selection 2" +msgstr "" + +msgid "Subtitle language selection 3" +msgstr "" + +msgid "Subtitle language selection 4" +msgstr "" + +# +#, fuzzy +msgid "Subtitle position" +msgstr "Selecció de subtítols" + +# +msgid "Subtitle selection" +msgstr "Selecció de subtítols" + +msgid "Subtitle selection..." +msgstr "" + +msgid "Subtitle settings" +msgstr "" + +# +msgid "Subtitles" +msgstr "Subtítols" + +# +msgid "Sun" +msgstr "Diu" + +# +msgid "Sunday" +msgstr "Diumenge" + +msgid "Swap PiP and main picture" +msgstr "" + +# +#, fuzzy +msgid "Swap services" +msgstr "Intercanviar canals" + +# +msgid "Swedish" +msgstr "Suec" + +msgid "Switch TV to correct input" +msgstr "" + +msgid "Switch between filelist/playlist" +msgstr "" + +msgid "Switch between normal mode and list mode" +msgstr "" + +msgid "Switch to HDMI in mode" +msgstr "" + +# +#, fuzzy +msgid "Switch to filelist" +msgstr "canviar a la llista de fitxers" + +msgid "Switch to next channel" +msgstr "" + +# +#, fuzzy +msgid "Switch to next channel in history" +msgstr "canal següent en l'històric" + +# +#, fuzzy +msgid "Switch to next sub service" +msgstr "Canviar al següent subservei" + +# +#, fuzzy +msgid "Switch to playlist" +msgstr "canviar a la llista" + +# +#, fuzzy +msgid "Switch to previous channel" +msgstr "Canviar al subservei anterior" + +# +#, fuzzy +msgid "Switch to previous channel in history" +msgstr "canal anterior en l'històric" + +# +#, fuzzy +msgid "Switch to previous sub service" +msgstr "Canviar al subservei anterior" + +# +msgid "Switchable tuner types:" +msgstr "" + +msgid "Symbol rate" +msgstr "" + +msgid "Symbol rate:" +msgstr "" + +msgid "Sync failure moving back to origin !" +msgstr "" + +# +msgid "System" +msgstr "Sistema" + +# +#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) +msgid "TRANSLATOR_INFO" +msgstr "" + +# +msgid "TS file is too large for ISO9660 level 1!" +msgstr "" + +msgid "TSID" +msgstr "" + +msgid "TV physical address report" +msgstr "" + +msgid "TXT PID" +msgstr "" + +msgid "Table of contents for collection" +msgstr "" + +# +msgid "Tags" +msgstr "" + +msgid "Teletext subtitle color" +msgstr "" + +# +#, fuzzy +msgid "Temperature and fan control" +msgstr "Control parental" + +# +msgid "Terrestrial" +msgstr "Terrestre" + +# +msgid "Terrestrial provider" +msgstr "Proveïdor terrestre" + +# +msgid "Test DiSEqC settings" +msgstr "" + +# +msgid "Test mode" +msgstr "Mode test" + +msgid "Test the network configuration of your receiver.\n" +msgstr "" + +# +#, fuzzy +msgid "Test type" +msgstr "Mode test" + +msgid "Text color" +msgstr "" + +msgid "Thai" +msgstr "" + +# +msgid "" +"Thank you for using the wizard.\n" +"Please press OK to continue." +msgstr "" + +msgid "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." +msgstr "" + +msgid "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?" +msgstr "" + +msgid "The PIN code has been changed successfully." +msgstr "" + +msgid "The PIN codes you entered are different." +msgstr "" + +msgid "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" +msgstr "" + +# +msgid "The backup failed. Please choose a different backup location." +msgstr "El backup ha fallat. Escull un altre destí." + +#, python-format +msgid "" +"The current beta image might not be stable.\n" +"For more information see %s." +msgstr "" + +# +#, python-format +msgid "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." +msgstr "" + +# +#, python-format +msgid "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" +msgstr "" + +# +msgid "The following files were found..." +msgstr "" + +msgid "The md5sum validation failed, the file may be corrupted!" +msgstr "" + +msgid "" +"The network wizard extension is not installed!\n" +"Please install it." +msgstr "" + +# +#, python-format +msgid "The path %s already exists." +msgstr "" + +# +msgid "The pin code you entered is wrong." +msgstr "El pin és incorrecte" + +# +#, python-format +msgid "The results have been written to %s." +msgstr "" + +# +msgid "The sleep timer has been activated." +msgstr "S'ha activat la programació d'aturada." + +# +msgid "The sleep timer has been disabled." +msgstr "S'ha desactivat la programació d'aturada." + +msgid "" +"The software management extension is not installed!\n" +"Please install it." +msgstr "" + +#, python-format +msgid "The status of the current beta image could not be checked because %s can not be reached." +msgstr "" + +# +msgid "The timer file (timers.xml) is corrupt and could not be loaded." +msgstr "" + +msgid "The user interface of your receiver is restarting" +msgstr "" + +msgid "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" +msgstr "" + +# +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." +msgstr "" + +# +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it." +msgstr "" + +# +msgid "The wizard can backup your current settings. Do you want to do a backup now?" +msgstr "L'assistent pot fer un backup de la teva configuració actual. Vols fer-lo ara?" + +#, python-format +msgid "The wizard found a configuration backup. Do you want to restore your old settings from %s?" +msgstr "" + +# +msgid "The wizard is finished now." +msgstr "L'assistent ha finalitzat." + +# +msgid "There are at least " +msgstr "" + +#, python-format +msgid "There are at least %s updates available." +msgstr "" + +# +msgid "There are currently no outstanding actions." +msgstr "" + +# +msgid "There are no updates available." +msgstr "" + +msgid "There is no signal to lock on !" +msgstr "" + +# +msgid "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" +msgstr "" + +# +msgid "This DVD RW medium is already formatted - reformatting will erase all content on the disc." +msgstr "" + +msgid "" +"This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!" +msgstr "" + +# +msgid "This plugin is installed." +msgstr "" + +# +msgid "This plugin is not installed." +msgstr "" + +# +msgid "This plugin will be installed." +msgstr "" + +# +msgid "This plugin will be removed." +msgstr "" + +#, python-format +msgid "This receiver cannot decode %s streams!" +msgstr "" + +msgid "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration" +msgstr "" + +msgid "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" +msgstr "" + +msgid "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" +msgstr "" + +msgid "" +"This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." +msgstr "" + +msgid "This test detects your configured LAN adapter." +msgstr "" + +msgid "" +"This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\n" +"Are you sure?" +msgstr "" + +# +msgid "Three" +msgstr "Tres" + +# +msgid "Threshold" +msgstr "Llindar" + +# +msgid "Thu" +msgstr "Dij" + +# +msgid "Thumbnails" +msgstr "" + +# +msgid "Thursday" +msgstr "Dijous" + +# +msgid "Time" +msgstr "Hora" + +# +#, fuzzy +msgid "Time scale" +msgstr "Selecció de gravació" + +# +msgid "Timer" +msgstr "Programació" + +msgid "Timer Overview" +msgstr "" + +# +#, fuzzy +msgid "Timer edit" +msgstr "Editar hora" + +# +#, fuzzy +msgid "Timer editor" +msgstr "Editor de programacions" + +# +msgid "Timer entry" +msgstr "Gravació" + +# +msgid "Timer log" +msgstr "Registre de gravació" + +# +msgid "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" +msgstr "" + +# +#, fuzzy +msgid "Timer overview" +msgstr "Gravació" + +# +#, fuzzy +msgid "Timer recording location" +msgstr "canviar la gravació (durada)" + +# +msgid "Timer sanity error" +msgstr "Error de programació" + +# +msgid "Timer selection" +msgstr "Selecció de gravació" + +msgid "Timer selection..." +msgstr "" + +# +#, fuzzy +msgid "Timer type" +msgstr "Tipus de gravació" + +# +msgid "Timeshift" +msgstr "Pausa" + +msgid "Timeshift Live" +msgstr "" + +# +msgid "Timeshift location" +msgstr "" + +# +msgid "Timeshift not possible!" +msgstr "No és possible la pausa!" + +# +msgid "Timezone" +msgstr "Zona horària" + +# +msgid "Title" +msgstr "Títol" + +# +msgid "Title properties" +msgstr "" + +# +msgid "Titleset mode" +msgstr "" + +msgid "To audio selection" +msgstr "" + +msgid "To subtitle selection" +msgstr "" + +msgid "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." +msgstr "" + +# +msgid "Today" +msgstr "Avui" + +# +#, fuzzy +msgid "Toggle a cut mark at the current position" +msgstr "posar una marca de tall en l'actual posició" + +# +#, fuzzy +msgid "Tone amplitude" +msgstr "Mode del to" + +# +msgid "Tone mode" +msgstr "Mode del to" + +# +#, fuzzy +msgid "Toneburst" +msgstr "Toneburst" + +# +#, fuzzy +msgid "Toneburst A/B" +msgstr "Toneburst A/B" + +msgid "Top and bottom" +msgstr "" + +# +msgid "Track" +msgstr "" + +# +msgid "Translation" +msgstr "" + +# +msgid "Translation:" +msgstr "" + +msgid "Translations" +msgstr "" + +# +msgid "Transmission mode" +msgstr "Mode transmissió" + +# +msgid "Transponder" +msgstr "Transponedor" + +# +#, fuzzy +msgid "Transponder type" +msgstr "Tipus Transponedor" + +msgid "Trash can" +msgstr "" + +# +msgid "Tries left:" +msgstr "Intents:" + +# +#, fuzzy +msgid "Try to find used transponders in cable network.. please wait..." +msgstr "Buscant transponedors a la xarxa de cable... sisplau espera..." + +# +msgid "Trying to download a new packetlist. Please wait..." +msgstr "" + +# +msgid "Tue" +msgstr "Dim" + +# +msgid "Tuesday" +msgstr "Dimarts" + +# +msgid "Tune" +msgstr "Sintonitzar" + +# +#, fuzzy +msgid "Tune and focus" +msgstr "Estat del sintonitzador" + +# +msgid "Tune failed!" +msgstr "Ha fallat la sintonització!" + +# +msgid "Tuner" +msgstr "Sintonitzador" + +# +msgid "Tuner configuration" +msgstr "Configuració del sintonitzador" + +msgid "Tuner is not supported" +msgstr "" + +# +#, fuzzy +msgid "Tuner slot" +msgstr "Slot del sintonitzador" + +# +msgid "Tuner status" +msgstr "Estat del sintonitzador" + +# +#, fuzzy, python-format +msgid "Tuner status %s" +msgstr "Estat del sintonitzador" + +# +msgid "Tuner type" +msgstr "" + +# +msgid "Turkish" +msgstr "Turc" + +msgid "Turn on the power LED during standby." +msgstr "" + +msgid "Turning step size" +msgstr "" + +# +msgid "Two" +msgstr "Dos" + +# +msgid "Type" +msgstr "" + +# +msgid "Type of scan" +msgstr "Tipus de recerca" + +# +msgid "USALS" +msgstr "USALS" + +msgid "USALS calibration" +msgstr "" + +# +#, fuzzy +msgid "USB stick" +msgstr "Memòria USB" + +# +msgid "USB stick wizard" +msgstr "" + +msgid "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" + +# +msgid "Undo install" +msgstr "" + +# +msgid "Undo uninstall" +msgstr "" + +msgid "Unencrypted" +msgstr "" + +# +msgid "UnhandledKey" +msgstr "" + +# +msgid "Unicable" +msgstr "" + +# +msgid "Unicable LNB" +msgstr "" + +# +msgid "Unicable Martix" +msgstr "" + +# +msgid "Uninstall" +msgstr "" + +# +msgid "Universal LNB" +msgstr "LNB universal" + +msgid "Unknown" +msgstr "" + +msgid "Unmount" +msgstr "" + +# +msgid "Unsupported" +msgstr "" + +# +msgid "Update" +msgstr "" + +msgid "Update and ask to reboot" +msgstr "" + +msgid "Update and reboot (recommended)" +msgstr "" + +# +#, fuzzy +msgid "Update channel list only" +msgstr "canal següent en l'històric" + +#, python-format +msgid "Update completed, %d package was installed." +msgid_plural "Update completed, %d packages were installed." +msgstr[0] "" +msgstr[1] "" + +msgid "Update completed. Do you want to reboot your receiver?" +msgstr "" + +msgid "Update failed. Your receiver does not have a working internet connection." +msgstr "" + +msgid "Update has completed." +msgstr "" + +# +msgid "Updatefeed not available." +msgstr "" + +# +msgid "Updating software catalog" +msgstr "" + +# +msgid "Upgrading" +msgstr "Actualitzant" + +# +msgid "Use" +msgstr "" + +# +msgid "Use DHCP" +msgstr "Utilitzar DHCP" + +msgid "Use EIT EPG information when it is available." +msgstr "" + +msgid "Use FreeSat EPG information when it is available." +msgstr "" + +msgid "Use MHW EPG information when it is available." +msgstr "" + +msgid "Use Netmed EPG information when it is available." +msgstr "" + +msgid "Use TV remote control" +msgstr "" + +# +#, fuzzy +msgid "Use USALS for this sat" +msgstr "Utilitzar usals per a aquest sat" + +msgid "Use ViaSat EPG information when it is available." +msgstr "" + +msgid "Use Virgin EPG information when it is available." +msgstr "" + +# +msgid "Use a gateway" +msgstr "Utilitzar una porta d'enllaç" + +msgid "Use fastscan channel names" +msgstr "" + +msgid "Use fastscan channel numbering" +msgstr "" + +msgid "Use frequency or channel" +msgstr "" + +msgid "Use individual settings for each directory" +msgstr "" + +# +#, fuzzy +msgid "Use interface" +msgstr "Interfície comuna" + +msgid "Use official channel numbering" +msgstr "" + +msgid "Use original DVB subtitle position" +msgstr "" + +msgid "Use original teletext position" +msgstr "" + +# +msgid "Use power measurement" +msgstr "Utilitza les mesures de corrent" + +msgid "Use the network wizard to configure selected network adapter" +msgstr "" + +msgid "Use the network wizard to configure your network\n" +msgstr "" + +# +msgid "Use the up/down keys on your remote control to select an option. After that, press OK." +msgstr "Utilitza les fletxes del comandament per a seleccionar una opció. Després, prem OK." + +# +#, fuzzy +msgid "Use the wizard to set up basic features" +msgstr "Utilitzar l'assistent per a la configuració bàsica" + +# +#, fuzzy +msgid "Use these input device settings?" +msgstr "Sortir sense guardar els canvis?" + +# +#, fuzzy +msgid "Use these settings?" +msgstr "Si, restaura la configuració ara" + +# +msgid "Use this video enhancement settings?" +msgstr "" + +msgid "Use trash can in movielist" +msgstr "" + +# +msgid "Used service scan type" +msgstr "Tipus d'escaneig de canals usat" + +msgid "User - bouquets" +msgstr "" + +# +msgid "User defined" +msgstr "Definit per l'usuari" + +msgid "User defined transponder" +msgstr "" + +# +#, fuzzy +msgid "User interface" +msgstr "Definit per l'usuari" + +# +msgid "Username" +msgstr "" + +#, python-format +msgid "Using LNB %d" +msgstr "" + +msgid "Using fixed address" +msgstr "" + +#, python-format +msgid "Using tuner %s" +msgstr "" + +msgid "Usually when the subtitle language is the same as the audio language, the subtitles will not be used. Enable this option to allow these subtitles to be used." +msgstr "" + +# +msgid "VCR scart" +msgstr "Euroconnector VCR" + +# +msgid "VMGM (intro trailer)" +msgstr "" + +# +msgid "Vertical" +msgstr "" + +msgid "Vertical turning speed" +msgstr "" + +msgid "Video PID" +msgstr "" + +# +msgid "Video enhancement preview" +msgstr "" + +# +msgid "Video enhancement settings" +msgstr "" + +# +msgid "Video enhancement setup" +msgstr "" + +msgid "Video fine tuning" +msgstr "" + +msgid "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." +msgstr "" + +# +msgid "Video mode selection." +msgstr "" + +# +#, fuzzy +msgid "Video output" +msgstr "sortida 12V" + +# +#, fuzzy +msgid "Video setup" +msgstr "Configuració de xarxa" + +# +#, fuzzy +msgid "Video wizard" +msgstr "Sortir de l'assistent" + +#, python-format +msgid "Video: %s fps" +msgstr "" + +msgid "VideoMode" +msgstr "" + +msgid "Videocodec" +msgstr "" + +msgid "Videoformat" +msgstr "" + +msgid "Videosize" +msgstr "" + +# +#, fuzzy +msgid "View Rass interactive..." +msgstr "Veure Rass interactiu..." + +# +msgid "View details" +msgstr "" + +# +msgid "View list of available " +msgstr "" + +# +msgid "View list of available CommonInterface extensions" +msgstr "" + +# +msgid "View list of available EPG extensions." +msgstr "" + +# +msgid "View list of available Satellite equipment extensions." +msgstr "" + +# +msgid "View list of available communication extensions." +msgstr "" + +# +msgid "View list of available default settings" +msgstr "" + +msgid "View list of available display and userinterface extensions." +msgstr "" + +# +msgid "View list of available multimedia extensions." +msgstr "" + +# +msgid "View list of available networking extensions" +msgstr "" + +# +msgid "View list of available recording extensions" +msgstr "" + +# +msgid "View list of available skins" +msgstr "" + +# +msgid "View list of available software extensions" +msgstr "" + +# +msgid "View list of available system extensions" +msgstr "" + +# +#, fuzzy +msgid "View photos..." +msgstr "veure extensions..." + +# +msgid "View teletext..." +msgstr "Veure teletext..." + +msgid "View video CD..." +msgstr "" + +msgid "Virtual keyboard" +msgstr "" + +# +msgid "Voltage mode" +msgstr "Mode voltatge" + +# +msgid "Volume" +msgstr "Volum" + +# +msgid "W" +msgstr "O" + +# +msgid "WEP" +msgstr "" + +msgid "WLAN connection" +msgstr "" + +# +msgid "WPA" +msgstr "" + +# +msgid "WPA or WPA2" +msgstr "" + +# +msgid "WPA2" +msgstr "" + +# +msgid "WSS on 4:3" +msgstr "WSS en 4:3" + +# +msgid "Waiting" +msgstr "" + +msgid "Waiting for mount" +msgstr "" + +msgid "Waiting for partition" +msgstr "" + +msgid "Wakeup" +msgstr "" + +msgid "Wakeup TV from standby" +msgstr "" + +msgid "Wakeup receiver for start timer" +msgstr "" + +msgid "Wakeup receiver from standby" +msgstr "" + +msgid "Wakeup signal from TV" +msgstr "" + +msgid "Wakeup type" +msgstr "" + +msgid "Warning: no LNB; using factory defaults." +msgstr "" + +# +#, fuzzy +msgid "Watch movies..." +msgstr "Reproduir pel·lícules gravades..." + +# +#, fuzzy +msgid "Watch recordings..." +msgstr "gravant..." + +# +msgid "Wed" +msgstr "Dime" + +# +msgid "Wednesday" +msgstr "Dimecres" + +# +msgid "Weekday" +msgstr "DiaSetmana" + +msgid "Weighted position" +msgstr "" + +msgid "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." +msgstr "" + +msgid "Welcome to the image upgrade wizard. The wizard will assist you in upgrading the firmware of your receiver by providing a backup facility for your current settings and a short explanation of how to upgrade your firmware." +msgstr "" + +msgid "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" +msgstr "" + +msgid "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." +msgstr "" + +# +msgid "Welcome..." +msgstr "" + +# +msgid "West" +msgstr "Oest" + +msgid "West limit set" +msgstr "" + +# +msgid "What do you want to scan?" +msgstr "Què vols buscar?" + +msgid "When enabled the PiP can be closed by the exit button." +msgstr "" + +msgid "When enabled the arrow buttons around the OK button will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled the left, right, CH+/-, B+/-, P+/- buttons will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled you can specify a timeframe to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "When enabled you can specify a timeframe were the inactivity sleeptimer is ignored. Not the detection is disabled during this timeframe but the inactivity timeout is disabled" +msgstr "" + +msgid "When enabled you can zap channels with the CH+/-, B+/-, P+/- buttons instead of opening the channel selection list." +msgstr "" + +msgid "When enabled you get the channel selection list via the OK button, the infobar toggle is then transfered to exit button" +msgstr "" + +msgid "When enabled, AIT data will be included in http streams. This allows a client receiver to use HbbTV." +msgstr "" + +msgid "When enabled, ECM data will be included in http streams. This allows a client receiver to do the descrambling." +msgstr "" + +msgid "When enabled, EIT data will be included in http streams. This allows a client receiver to show EPG." +msgstr "" + +msgid "When enabled, a popup message will be shown when a movie has finished and the next one will start." +msgstr "" + +msgid "When enabled, a popup message will be shown when a recording starts." +msgstr "" + +msgid "When enabled, a radio background image will be visible while listening to a radio channel." +msgstr "" + +msgid "When enabled, a recording is allowed to interrupt live tv, when there are no free tuners." +msgstr "" + +msgid "When enabled, a warning will be displayed and the user will get an option to stop or to continue the timeshift." +msgstr "" + +msgid "When enabled, authentication is required to watch http streams." +msgstr "" + +msgid "When enabled, channel numbering will start at '1' for each bouquet." +msgstr "" + +msgid "When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen." +msgstr "" + +msgid "When enabled, continue to the next bouquet when the last channel of the current bouquet is reached while changing channels." +msgstr "" + +msgid "When enabled, deleted recordings are moved to the trash can, instead of being deleted immediately." +msgstr "" + +msgid "When enabled, display the EIT now/next eventdata in infobar. When disabled, display now/next eventdata from the EPG cache instead." +msgstr "" + +msgid "When enabled, encryption info will be shown in the infobar (when supported by the skin)." +msgstr "" + +msgid "When enabled, error messages related to the Common Interface module will not be shown." +msgstr "" + +msgid "When enabled, error messages related to zapping will not be shown." +msgstr "" + +msgid "When enabled, external subtitles will be always turned on for playback movie." +msgstr "" + +msgid "When enabled, graphical DVB subtitles are preferred over teletext subtitles, when both types are available." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be centered horizontally." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be displayed at their original position." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be displayed in yellow, instead of the original color." +msgstr "" + +msgid "When enabled, http streams are descrambled on the server side. The (remote) client receiver does not have to do descrambling." +msgstr "" + +msgid "When enabled, it is possible to leave the movieplayer with exit." +msgstr "" + +msgid "When enabled, measure power consumption to detect when the rotor stops turning (when supported by the tuner)." +msgstr "" + +msgid "When enabled, number markers will be hiden." +msgstr "" + +msgid "When enabled, services may be grouped in multiple bouquets." +msgstr "" + +msgid "When enabled, show channel numbers in the channel selection screen." +msgstr "" + +msgid "When enabled, subtitles for the hearing impaired can be used." +msgstr "" + +msgid "When enabled, subtitles for the hearing impaired will be preferred over normal subtitles, when both types are available." +msgstr "" + +msgid "When enabled, teletext pages will be cached, allowing faster access." +msgstr "" + +msgid "When enabled, teletext subtitles will be displayed at their original position." +msgstr "" + +msgid "When enabled, the VCR scart option will be shown on the main menu" +msgstr "" + +msgid "When enabled, the channel selection list will be hidden while listening to a radio channel" +msgstr "" + +msgid "When enabled, the infobar will be displayed when a new event starts." +msgstr "" + +msgid "When enabled, the infobar will be displayed when changing channels." +msgstr "" + +msgid "When enabled, the infobar will be displayed when skipping forwards/backwards during media playback." +msgstr "" + +msgid "When enabled, the lenght of each recording will be shown in the movielist (this might cause some additional loading time)." +msgstr "" + +msgid "When enabled, the original line breaks will be removed from the teletext subtitles." +msgstr "" + +msgid "When enabled, the receiver will automatically use the audio track which you selected before." +msgstr "" + +msgid "When enabled, the receiver will automatically use the subtitles which you selected before." +msgstr "" + +msgid "When enabled, the receiver will no longer monitor the tuned transponder for possible changes. Do not use this option unless you know what you are doing." +msgstr "" + +msgid "When enabled, the receiver will select an AC3 track (when available)." +msgstr "" + +msgid "When enabled, the receiver will select an AC3+ track (when available)." +msgstr "" + +msgid "When enabled, timeshift starts automatically in background after specified time." +msgstr "" + +msgid "When enabled, use DHCP for the IP configuration." +msgstr "" + +msgid "When enabled, your receiver will detect activity on the VCR SCART input." +msgstr "" + +msgid "When nonzero, a recording will start earlier than the starting time indicated by the EPG." +msgstr "" + +msgid "When nonzero, a recording will stop later than the ending time indicated by the EPG." +msgstr "" + +msgid "When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture." +msgstr "" + +msgid "When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture." +msgstr "" + +# +msgid "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" +msgstr "" + +# +msgid "Where do you want to backup your settings?" +msgstr "On vols guardar el backup de la configuració?" + +# +msgid "Where to save temporary timeshift recordings?" +msgstr "" + +# +msgid "Wireless LAN" +msgstr "" + +msgid "Wireless network" +msgstr "" + +# +#, fuzzy +msgid "Wireless network configuration..." +msgstr "Configuració del sintonitzador" + +msgid "Wireless network connection setup" +msgstr "" + +msgid "Wireless network connection setup." +msgstr "" + +msgid "Wireless network state" +msgstr "" + +msgid "With popup" +msgstr "" + +msgid "Without popup" +msgstr "" + +msgid "Would you like to install a softcam?" +msgstr "" + +# +msgid "Write error while recording. Disk full?\n" +msgstr "Error d'escriptura durant la gravació. Disc ple?\n" + +# +msgid "Write failed!" +msgstr "" + +# +msgid "YPbPr" +msgstr "YPbPr" + +# +msgid "Year" +msgstr "Any" + +msgid "Yellow DVB subtitles" +msgstr "" + +# +msgid "Yes" +msgstr "Si" + +msgid "Yes and save" +msgstr "" + +msgid "Yes and save in movie dir" +msgstr "" + +# +msgid "Yes to all" +msgstr "" + +msgid "Yes, always" +msgstr "" + +# +msgid "Yes, and delete this movie" +msgstr "" + +# +msgid "Yes, backup my settings!" +msgstr "Sí, fes un backup de la configuració!" + +msgid "Yes, delete this movie and return to movie list" +msgstr "" + +# +msgid "Yes, do a manual scan now" +msgstr "Si, fes una recerca manual ara" + +# +msgid "Yes, do an automatic scan now" +msgstr "Si, fes una recerca automàtica ara" + +# +msgid "Yes, do another manual scan now" +msgstr "Si, fer una altra recerca manual ara" + +# +msgid "Yes, perform a shutdown now." +msgstr "Si, apaga ara." + +# +msgid "Yes, restore the settings now" +msgstr "Si, restaura la configuració ara" + +# +msgid "Yes, returning to movie list" +msgstr "" + +msgid "Yesterday" +msgstr "" + +#, python-format +msgid "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" +msgstr "" + +# +msgid "You can cancel the installation." +msgstr "" + +# +msgid "You can cancel the removal." +msgstr "" + +msgid "You can continue watching TV etc. while this is running." +msgstr "" + +# +msgid "You can install this plugin." +msgstr "" + +msgid "You can only burn receiver recordings!" +msgstr "" + +# +msgid "You can remove this plugin." +msgstr "" + +# +msgid "You cannot delete this!" +msgstr "Això no es pot eliminar!" + +msgid "You didn't select a channel to record from." +msgstr "" + +# +msgid "You have chosen to backup your settings. Please press OK to start the backup now." +msgstr "" + +# +msgid "You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased." +msgstr "" + +# +msgid "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." +msgstr "" + +# +#, python-format +msgid "You have to wait %s!" +msgstr "" + +msgid "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." +msgstr "" + +msgid "You system does not support ext4" +msgstr "" + +# +msgid "Your backup succeeded. We will now continue to explain the further upgrade process." +msgstr "El backup ha acabat. Ara continuarem explicant el procés d'actualització." + +# +msgid "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" +msgstr "" + +# +msgid "Your current collection will get lost!" +msgstr "" + +# +msgid "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." +msgstr "" +"El firmware del frontprocessor ha de ser actualitzat.\n" +"Prem OK per a començar l'actualizació." + +msgid "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" + +# +msgid "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." +msgstr "" + +#, python-format +msgid "Your internet connection is working (ip: %s)" +msgstr "" + +# +msgid "Your network configuration has been activated." +msgstr "" + +msgid "Your receiver does not have an internet connection" +msgstr "" + +msgid "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" +msgstr "" + +msgid "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." +msgstr "" + +msgid "Your receiver is rebooting" +msgstr "" + +msgid "Your receiver is shutting down" +msgstr "" + +msgid "Your receiver is shutting down. Please stand by..." +msgstr "" + +msgid "Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver." +msgstr "" + +msgid "Your receiver will got to stand by due to the sleeptimer." +msgstr "" + +msgid "Your receiver will got to standby due to inactivity." +msgstr "" + +msgid "Your receiver will restart after pressing OK on your remote control." +msgstr "" + +# +msgid "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." +msgstr "" + +msgid "Zap" +msgstr "" + +# +msgid "Zap back to previously tuned service?" +msgstr "" + +# +msgid "Zap back to service before positioner setup?" +msgstr "Tornar al canal abans de configurar el motor?" + +# +msgid "Zap back to service before tuner setup?" +msgstr "" + +msgid "Zap focus to Picture in Picture" +msgstr "" + +msgid "Zap focus to main screen" +msgstr "" + +msgid "Zap mode" +msgstr "" + +msgid "Zap to selected channel" +msgstr "" + +msgid "Zap to selected channel, or show detailed event info (depends on configuration)" +msgstr "" + +# +msgid "[alternative edit]" +msgstr "[edició alternatives]" + +# +msgid "[bouquet edit]" +msgstr "[editar llista]" + +# +msgid "[favourite edit]" +msgstr "[editar preferits]" + +# +msgid "[move mode]" +msgstr "[mode moure]" + +# +msgid "a gui to assign services/providers to common interface modules" +msgstr "" + +# +msgid "a gui to assign services/providers/caids to common interface modules" +msgstr "" + +# +msgid "abort alternatives edit" +msgstr "abortar l'edició d'alternatives" + +# +msgid "abort bouquet edit" +msgstr "cancel·lar l'edició de llistes" + +# +msgid "abort favourites edit" +msgstr "cancel·lar l'edició de preferits" + +# +msgid "about to start" +msgstr "per a començar" + +# +msgid "activate network adapter configuration" +msgstr "" + +# +msgid "add alternatives" +msgstr "afegir alternatives" + +# +msgid "add bookmark" +msgstr "" + +# +msgid "add bouquet" +msgstr "afegir llista" + +# +msgid "add marker" +msgstr "afegir marcador" + +# +msgid "add service to bouquet" +msgstr "afegir el canal a la llista" + +# +msgid "add service to favourites" +msgstr "afegir el canal als preferits" + +# +msgid "add to parental protection" +msgstr "afegir a la protecció parental" + +msgid "adult movie/drama" +msgstr "" + +# +msgid "advanced" +msgstr "avançat" + +msgid "adventure/western/war" +msgstr "" + +msgid "advertisement/shopping" +msgstr "" + +msgid "after " +msgstr "" + +msgid "alphabetic" +msgstr "" + +msgid "alphabetic reverse" +msgstr "" + +msgid "alternative" +msgstr "" + +msgid "always" +msgstr "" + +msgid "and select next channel" +msgstr "" + +msgid "and select previous channel" +msgstr "" + +msgid "arts/culture (without music, general)" +msgstr "" + +msgid "arts/culture magazine" +msgstr "" + +msgid "athletics" +msgstr "" + +# +msgid "audio tracks" +msgstr "" + +# +msgid "auto" +msgstr "" + +# +#, fuzzy +msgid "automatic" +msgstr "Recerca automàtica" + +# +msgid "back" +msgstr "enrere" + +# +msgid "background image" +msgstr "" + +msgid "ballet" +msgstr "" + +#, python-format +msgid "bc%s" +msgstr "" + +# +msgid "better" +msgstr "millorat" + +# +msgid "black" +msgstr "" + +msgid "black & white" +msgstr "" + +# +msgid "blacklist" +msgstr "llista negra" + +# +msgid "blue" +msgstr "" + +msgid "broadcasting/press" +msgstr "" + +msgid "by date" +msgstr "" + +msgid "cartoon/puppets" +msgstr "" + +msgid "center" +msgstr "" + +msgid "centered" +msgstr "" + +msgid "centered, wrapped" +msgstr "" + +# +msgid "chapters" +msgstr "" + +msgid "childrens's/youth program (general)" +msgstr "" + +# +msgid "circular left" +msgstr "circular esq." + +# +msgid "circular right" +msgstr "circular dreta" + +msgid "comedy" +msgstr "" + +# +msgid "complex" +msgstr "complexe" + +# +msgid "config menu" +msgstr "menú configuració" + +# +msgid "confirmed" +msgstr "" + +# +msgid "connected" +msgstr "" + +# +msgid "continue" +msgstr "continuar" + +msgid "cooking" +msgstr "" + +# +msgid "copy to bouquets" +msgstr "copiar a les llistes" + +# +msgid "create directory" +msgstr "" + +#, python-format +msgid "currently installed image: %s" +msgstr "" + +# +msgid "daily" +msgstr "diàriament" + +# +msgid "day" +msgstr "" + +msgid "default" +msgstr "" + +# +msgid "delete cut" +msgstr "esborrar tall" + +msgid "delete..." +msgstr "" + +msgid "descramble and record ecm" +msgstr "" + +msgid "detective/thriller" +msgstr "" + +# +msgid "disable" +msgstr "desactivar" + +# +msgid "disable move mode" +msgstr "desactivar mode moviment" + +# +msgid "disabled" +msgstr "desactivat" + +# +msgid "disconnected" +msgstr "" + +msgid "discussion/interview/debate" +msgstr "" + +# +msgid "do nothing" +msgstr "no facis res" + +msgid "documentary" +msgstr "" + +msgid "don't descramble, record ecm" +msgstr "" + +# +msgid "done!" +msgstr "fet!" + +msgid "east" +msgstr "" + +msgid "economics/social advisory" +msgstr "" + +# +msgid "edit alternatives" +msgstr "editar alternatives" + +msgid "education/science/factual topics (general)" +msgstr "" + +# +msgid "empty" +msgstr "buit" + +# +msgid "enable" +msgstr "habilitar" + +# +msgid "enable bouquet edit" +msgstr "activar l'edició de la llista" + +# +msgid "enable favourite edit" +msgstr "activar l'edició dels preferits" + +# +msgid "enable move mode" +msgstr "activar mode moviment" + +# +msgid "enabled" +msgstr "activat" + +# +msgid "end alternatives edit" +msgstr "fi de l'edició d'alternatives" + +# +msgid "end bouquet edit" +msgstr "fi de l'edició de llistes" + +# +msgid "end cut here" +msgstr "acabar el tall aquí" + +# +msgid "end favourites edit" +msgstr "fi de l'edició de preferits" + +msgid "entertainment (10-16 year old)" +msgstr "" + +msgid "entertainment (6-14 year old)" +msgstr "" + +# +msgid "equal to" +msgstr "" + +msgid "equestrian" +msgstr "" + +# +msgid "exit DVD player or return to file browser" +msgstr "" + +msgid "exit movielist" +msgstr "" + +# +msgid "exit network adapter configuration" +msgstr "" + +# +msgid "exit networkadapter setup menu" +msgstr "" + +msgid "experimental film/video" +msgstr "" + +msgid "false" +msgstr "" + +msgid "fashion" +msgstr "" + +# +msgid "fileformats (BMP, PNG, JPG, GIF)" +msgstr "" + +# +msgid "filename" +msgstr "" + +msgid "film/cinema" +msgstr "" + +msgid "fine arts" +msgstr "" + +# +msgid "fine-tune your display" +msgstr "" + +msgid "fitness & health" +msgstr "" + +msgid "flat alphabetic" +msgstr "" + +msgid "flat alphabetic reverse" +msgstr "" + +msgid "folk/traditional music" +msgstr "" + +msgid "football/soccer" +msgstr "" + +msgid "foreign countries/expeditions" +msgstr "" + +# +msgid "forward to the next chapter" +msgstr "" + +# +msgid "free" +msgstr "" + +msgid "from" +msgstr "" + +msgid "further education" +msgstr "" + +msgid "game show/quiz/contest" +msgstr "" + +msgid "gardening" +msgstr "" + +# +msgid "go to deep standby" +msgstr "aturar completament" + +# +msgid "go to standby" +msgstr "posar en repòs" + +# +msgid "grab this frame as bitmap" +msgstr "" + +# +msgid "green" +msgstr "" + +msgid "handicraft" +msgstr "" + +msgid "height" +msgstr "" + +# +msgid "help..." +msgstr "ajuda..." + +# +msgid "horizontal" +msgstr "horitzontal" + +msgid "information/education/school program" +msgstr "" + +# +msgid "init module" +msgstr "iniciar mòdul" + +# +msgid "init modules" +msgstr "" + +# +msgid "insert mark here" +msgstr "inserir marca aquí" + +msgid "invalid type" +msgstr "" + +msgid "jazz" +msgstr "" + +# +msgid "jump back to the previous title" +msgstr "" + +# +msgid "jump forward to the next title" +msgstr "" + +msgid "languages" +msgstr "" + +# +msgid "leave movie player..." +msgstr "sortir del reproductor de pel·lícules..." + +# +msgid "left" +msgstr "esquerra" + +msgid "left, wrapped" +msgstr "" + +msgid "leisure hobbies (general)" +msgstr "" + +# +msgid "length" +msgstr "" + +msgid "limit ..., aborting !" +msgstr "" + +# +msgid "list style compact" +msgstr "" + +# +msgid "list style compact with description" +msgstr "" + +# +msgid "list style default" +msgstr "" + +# +msgid "list style single line" +msgstr "" + +msgid "literature" +msgstr "" + +msgid "live broadcast" +msgstr "" + +# +msgid "locked" +msgstr "bloquejat" + +# +msgid "loopthrough to" +msgstr "" + +msgid "magazines/reports/documentary" +msgstr "" + +# +msgid "manual" +msgstr "manual" + +msgid "martial sports" +msgstr "" + +msgid "medicine/physiology/psychology" +msgstr "" + +# +msgid "menu" +msgstr "menú" + +# +msgid "mins" +msgstr "minuts" + +# +msgid "minutes" +msgstr "minuts" + +# +msgid "month" +msgstr "" + +msgid "motor sport" +msgstr "" + +msgid "motoring" +msgstr "" + +# +msgid "move down to last entry" +msgstr "" + +# +msgid "move down to next entry" +msgstr "" + +# +msgid "move up to first entry" +msgstr "" + +# +msgid "move up to previous entry" +msgstr "" + +msgid "movie/drama (general)" +msgstr "" + +# +#, fuzzy +msgid "multinorm" +msgstr "multinorm" + +msgid "music/ballet/dance (general)" +msgstr "" + +msgid "musical/opera" +msgstr "" + +msgid "nature/animals/environment" +msgstr "" + +# +msgid "never" +msgstr "mai" + +msgid "new media" +msgstr "" + +msgid "news magazine" +msgstr "" + +msgid "news/current affairs (general)" +msgstr "" + +msgid "news/weather report" +msgstr "" + +# +msgid "no" +msgstr "no" + +# +msgid "no CAId selected" +msgstr "" + +# +msgid "no CI slots found" +msgstr "" + +# +msgid "no module found" +msgstr "no hi ha el mòdul" + +msgid "no storage devices found" +msgstr "" + +# +msgid "none" +msgstr "cap" + +msgid "normal" +msgstr "" + +# +msgid "not configured" +msgstr "" + +# +msgid "not locked" +msgstr "desbloquejat" + +msgid "not supported" +msgstr "" + +# +msgid "not used" +msgstr "" + +# +msgid "nothing connected" +msgstr "res connectat" + +# +msgid "of a DUAL layer medium used." +msgstr "" + +# +msgid "of a SINGLE layer medium used." +msgstr "" + +# +msgid "off" +msgstr "desactivat" + +msgid "offset is" +msgstr "" + +# +msgid "on" +msgstr "activat" + +# +msgid "on READ ONLY medium." +msgstr "" + +msgid "on end of movie" +msgstr "" + +# +msgid "once" +msgstr "un sol cop" + +msgid "only from deep standby" +msgstr "" + +msgid "only from standby" +msgstr "" + +msgid "open EPG..." +msgstr "" + +msgid "open Info..." +msgstr "" + +# +msgid "open nameserver configuration" +msgstr "" + +msgid "original" +msgstr "" + +msgid "original language" +msgstr "" + +# +msgid "pass" +msgstr "passa" + +msgid "performing arts" +msgstr "" + +msgid "play as picture in picture" +msgstr "" + +msgid "play in mainwindow" +msgstr "" + +# +msgid "please press OK when ready" +msgstr "prem OK quan estiguis a punt" + +# +msgid "please wait, loading picture..." +msgstr "sisplau espera, carregant imatge..." + +msgid "popular culture/traditional arts" +msgstr "" + +msgid "pre-school children's program" +msgstr "" + +msgid "receiver software because updates are available." +msgstr "" + +# +msgid "record" +msgstr "gravar" + +# +msgid "recording..." +msgstr "gravant..." + +# +msgid "red" +msgstr "" + +msgid "religion" +msgstr "" + +msgid "remarkable people" +msgstr "" + +# +msgid "remove after this position" +msgstr "esborra després d'aquesta posició" + +# +msgid "remove all alternatives" +msgstr "esborrar totes les alternatives" + +# +msgid "remove all new found flags" +msgstr "esborrar totes les marques trobades" + +# +msgid "remove before this position" +msgstr "esborra abans d'aquesta posició" + +# +msgid "remove bookmark" +msgstr "" + +# +msgid "remove directory" +msgstr "" + +# +msgid "remove entry" +msgstr "eliminar entrada" + +# +msgid "remove from parental protection" +msgstr "esborrar de la protecció parental" + +# +msgid "remove new found flag" +msgstr "esborrar nova marca trobada" + +# +msgid "remove selected satellite" +msgstr "" + +# +msgid "remove this mark" +msgstr "esborrar aquesta marca" + +msgid "rename entry" +msgstr "" + +# +msgid "repeat playlist" +msgstr "" + +# +msgid "repeated" +msgstr "repetit" + +msgid "reverse by date" +msgstr "" + +# +msgid "rewind to the previous chapter" +msgstr "" + +# +msgid "right" +msgstr "dreta" + +msgid "right, wrapped" +msgstr "" + +msgid "rock/pop" +msgstr "" + +msgid "romance" +msgstr "" + +# +msgid "save last directory on exit" +msgstr "" + +# +msgid "save playlist on exit" +msgstr "" + +# +msgid "scan state" +msgstr "estat de la recerca" + +msgid "science fiction/fantasy/horror" +msgstr "" + +# +msgid "second cable of motorized LNB" +msgstr "segon cable del LNB motoritzat" + +# +msgid "seconds" +msgstr "segons" + +# +msgid "select" +msgstr "" + +# +msgid "select CAId's" +msgstr "" + +msgid "select EPG..." +msgstr "" + +msgid "select Info..." +msgstr "" + +# +msgid "select menu entry" +msgstr "" + +msgid "select movie" +msgstr "" + +msgid "select the movie path" +msgstr "" + +msgid "serious music/classic music" +msgstr "" + +msgid "serious/classical/religious/historical movie/drama" +msgstr "" + +msgid "service PIN" +msgstr "" + +msgid "set as startup service" +msgstr "" + +msgid "setup PIN" +msgstr "" + +# +msgid "show DVD main menu" +msgstr "" + +msgid "show all tags" +msgstr "" + +# +msgid "show alternatives" +msgstr "mostrar alternatives" + +# +msgid "show event details" +msgstr "mostrar detalls del programa" + +msgid "show extended description" +msgstr "" + +msgid "show mediaplayer on mainmenu" +msgstr "" + +msgid "show softwaremanager in setup menu" +msgstr "" + +msgid "show softwaremanager on blue button" +msgstr "" + +msgid "show tag menu" +msgstr "" + +# +msgid "show transponder info" +msgstr "mostrar info del transponedor" + +msgid "show/game show (general)" +msgstr "" + +msgid "shuffle" +msgstr "" + +# +msgid "shut down" +msgstr "" + +# +msgid "simple" +msgstr "senzill" + +# +msgid "skip backward" +msgstr "saltar endarrere" + +# +msgid "skip forward" +msgstr "saltar endavant" + +msgid "soap/melodram/folkloric" +msgstr "" + +msgid "social/political issues/economics (general)" +msgstr "" + +msgid "social/spiritual science" +msgstr "" + +msgid "sorting of playlists" +msgstr "" + +# +msgid "special characters" +msgstr "" + +msgid "special events" +msgstr "" + +msgid "special format data DVD (HDTV compatible)" +msgstr "" + +msgid "sports (general)" +msgstr "" + +msgid "sports magazine" +msgstr "" + +# +msgid "standard" +msgstr "" + +# +msgid "start cut here" +msgstr "començar tall aquí" + +# +msgid "start directory" +msgstr "" + +msgid "stepsize" +msgstr "" + +# +msgid "stereo" +msgstr "stèreo" + +msgid "stop using as startup service" +msgstr "" + +# +msgid "switch to bookmarks" +msgstr "" + +# +msgid "switch to filelist" +msgstr "canviar a la llista de fitxers" + +# +msgid "switch to the next angle" +msgstr "" + +# +msgid "switch to the next audio track" +msgstr "" + +# +msgid "switch to the next subtitle language" +msgstr "" + +msgid "talk show" +msgstr "" + +msgid "team sports" +msgstr "" + +msgid "technology/natural science" +msgstr "" + +# +msgid "template file" +msgstr "" + +msgid "tennis/squash" +msgstr "" + +# +msgid "this recording" +msgstr "aquesta gravació" + +# +msgid "this service is protected by a parental control pin" +msgstr "aquest canal està protegit per un pin de control parental" + +# +msgid "toggle time, chapter, audio, subtitle info" +msgstr "" + +msgid "top" +msgstr "" + +msgid "tourism/travel" +msgstr "" + +msgid "true" +msgstr "" + +msgid "unavailable" +msgstr "" + +# +msgid "unconfirmed" +msgstr "" + +msgid "undefined" +msgstr "" + +# +msgid "unknown" +msgstr "" + +# +msgid "unknown service" +msgstr "canal desconegut" + +msgid "unpublished" +msgstr "" + +# +msgid "until standby/restart" +msgstr "" + +# +msgid "user defined" +msgstr "definit per l'usuari" + +msgid "variety show" +msgstr "" + +# +msgid "vertical" +msgstr "vertical" + +# +msgid "wait for ci..." +msgstr "espera..." + +# +msgid "wait for mmi..." +msgstr "" + +# +msgid "waiting" +msgstr "esperant" + +msgid "water sport" +msgstr "" + +# +msgid "weekly" +msgstr "setmanalment" + +msgid "west" +msgstr "" + +msgid "when PiPzap enabled zap channel down..." +msgstr "" + +msgid "when PiPzap enabled zap channel up..." +msgstr "" + +msgid "white" +msgstr "" + +# +msgid "whitelist" +msgstr "llista blanca" + +msgid "width" +msgstr "" + +msgid "winter sport" +msgstr "" + +msgid "wireless network interface" +msgstr "" + +#, python-format +msgid "with %d error" +msgid_plural "with %d errors" +msgstr[0] "" +msgstr[1] "" + +# +msgid "working" +msgstr "" + +# +msgid "yellow" +msgstr "" + +# +msgid "yes" +msgstr "si" + +# +msgid "yes (keep feeds)" +msgstr "si (mantenir feeds)" + +# +msgid "zap" +msgstr "zappejar" + +msgid "zap and record" +msgstr "" + +# +msgid "zapped" +msgstr "zappejat" + +# +#~ msgid "AA" +#~ msgstr "AA" + +# +#~ msgid "AB" +#~ msgstr "AB" + +# +#, fuzzy +#~ msgid "Activate PiP" +#~ msgstr "Activar PiP" + +# +#, fuzzy +#~ msgid "Add/remove timer for current event" +#~ msgstr "afegir gravació (fins que s'acabi el programa)" + +# +#, fuzzy +#~ msgid "All satellites" +#~ msgstr "Satèl·lits" + +# +#~ msgid "BA" +#~ msgstr "BA" + +# +#~ msgid "BB" +#~ msgstr "BB" + +# +#~ msgid "Committed DiSEqC command" +#~ msgstr "Comanda DISEqC enviada" + +# +#~ msgid "DiSEqC repeats" +#~ msgstr "Repetir DiSEqC" + +# +#~ msgid "No satellite frontend found!!" +#~ msgstr "No s'ha trobat cap sintonitzador de satèŀlit!!" + +# +#, fuzzy +#~ msgid "Switch next channel" +#~ msgstr "canal següent" + +# +#~ msgid "Uncommitted DiSEqC command" +#~ msgstr "Comanda DiSEqC no enviada" + +# +#~ msgid "Zap back to service before satfinder?" +#~ msgstr "Tornar al canal abans d'executar el satfinder?" diff --git a/po/cs.po b/po/cs.po new file mode 100644 index 0000000..e6a13cc --- /dev/null +++ b/po/cs.po @@ -0,0 +1,9625 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: ims\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-07-21 19:08+0200\n" +"PO-Revision-Date: \n" +"Last-Translator: ims <ims21@users.sourceforge.net>\n" +"Language-Team: PLi <ims21@users.sourceforge.net>\n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Poedit-Language: Czech\n" +"X-Poedit-Country: CZECH REPUBLIC\n" +"Plural-Forms: nplurals=3; plural=n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" + +# +msgid "" +"\n" +"Advanced options and settings." +msgstr "" +"\n" +"Pokročilé volby a nastavení." + +# +msgid "" +"\n" +"After pressing OK, please wait!" +msgstr "" +"\n" +"Po stisknutí OK čekejte, prosím!" + +msgid "" +"\n" +"Backup your receiver settings." +msgstr "" +"\n" +"Záloha nastavení Vašeho přijímače." + +# +msgid "" +"\n" +"Edit the upgrade source address." +msgstr "" +"\n" +"Upravit adresy aktualizačních zdrojů." + +msgid "" +"\n" +"Manage extensions or plugins for your receiver" +msgstr "" +"\n" +"Správa rozšíření nebo pluginů Vašeho přijímače" + +msgid "" +"\n" +"Online update of your receiver software." +msgstr "" +"\n" +"Online aktualizace programového vybavení přijímače." + +# +msgid "" +"\n" +"Press OK on your remote control to continue." +msgstr "" +"\n" +"Pro pokračování stiskněte OK na dálkovém ovladači." + +# +msgid "" +"\n" +"Restore your backups by date." +msgstr "" +"\n" +"Obnova záloh podle data." + +msgid "" +"\n" +"Restore your receiver settings." +msgstr "" +"\n" +"Obnova nastavení Vašeho přijímače." + +msgid "" +"\n" +"Restore your receiver with a new firmware." +msgstr "" +"\n" +"Obnova přijímače s novým firmware." + +# +msgid "" +"\n" +"Scan for local extensions and install them." +msgstr "" +"\n" +"Vyhledat a nainstalovat místní rozšíření." + +# +msgid "" +"\n" +"Select your backup device.\n" +"Current device: " +msgstr "" +"\n" +"Zvolte zařízení pro zálohování.\n" +"Současné zařízení: " + +# +msgid "" +"\n" +"View, install and remove available or installed packages." +msgstr "" +"\n" +"Zobrazit, instalovat a odstranit dostupné nebo instalované balíčky." + +msgid " (PiP)" +msgstr "" + +msgid " (Radio)" +msgstr " (Rádio)" + +msgid " (TV)" +msgstr "" + +# +msgid " (disabled)" +msgstr "(zakázáno)" + +msgid " (higher than any auto)" +msgstr "(vyšší, než jakékoliv auto)" + +msgid " (higher than rotor any auto)" +msgstr "(vyšší, než jakékoliv auto motoru)" + +msgid " (lower than any auto)" +msgstr "(nižší, než jakékoliv auto)" + +# +msgid " extensions." +msgstr "rozšíření." + +msgid " ms" +msgstr "ms" + +# +msgid " packages selected." +msgstr " balíčků vybráno." + +# +msgid " updates available." +msgstr " dostupných aktualizací." + +#. TRANSLATORS: short time representation hour:minute +#, python-format +msgid "%2d:%02d" +msgstr "" + +#. TRANSLATORS: full time representation hour:minute:seconds +#, python-format +msgid "%2d:%02d:%02d" +msgstr "" + +msgid "%A %d %B" +msgstr "" + +#. TRANSLATORS: long date representations dayname daynum monthname in strftime() format! See 'man strftime' +msgid "%A %e %B" +msgstr "%A %e. %B" + +#. TRANSLATORS: full date representation dayname daynum monthname year in strftime() format! See 'man strftime' +msgid "%A %e %B %Y" +msgstr "%A %e. %B %Y" + +# +msgid "%H:%M" +msgstr "%H:%M" + +#. TRANSLATORS: short date representation short dayname daynum short monthname in strftime() format! See 'man strftime' +msgid "%a %e/%m" +msgstr "%a %e/%m" + +#. TRANSLATORS: long date representation short dayname daynum short monthname hour:minute in strftime() format! See 'man strftime' +msgid "%a %e/%m %-H:%M" +msgstr "" + +#. TRANSLATORS: Intermediate scanning result, '%d' channel(s) have been found so far +#, python-format +msgid "%d channel found" +msgid_plural "%d channels found" +msgstr[0] "%d kanál nalezen" +msgstr[1] "%d kanály nalezeny" +msgstr[2] "%d kanálů nalezeno" + +#, python-format +msgid "%d file" +msgid_plural "%d files" +msgstr[0] "%d soubor" +msgstr[1] "%d soubory" +msgstr[2] "%d souborů" + +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d hodina" +msgstr[1] "%d hodiny" +msgstr[2] "%d hodin" + +# +#, python-format +msgid "%d job is running in the background!" +msgid_plural "%d jobs are running in the background!" +msgstr[0] "%d úloha běží na pozadí!" +msgstr[1] "%d úlohy běží na pozadí!" +msgstr[2] "%d úloh běží na pozadí!" + +# +#, python-format +msgid "%d min" +msgstr "%d min" + +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d minuta" +msgstr[1] "%d minuty" +msgstr[2] "%d minut" + +#, python-format +msgid "%d minutes" +msgstr "%d minut" + +# +#, python-format +msgid "%d pixel wide" +msgid_plural "%d pixels wide" +msgstr[0] "%d pixel široké" +msgstr[1] "%d pixely široké" +msgstr[2] "%d pixelů široké" + +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "%d sekunda" +msgstr[1] "%d sekundy" +msgstr[2] "%d sekund" + +# +#, python-format +msgid "%d subdirectory" +msgid_plural "%d subdirectories" +msgstr[0] "%d podadresář" +msgstr[1] "%d podadresáře" +msgstr[2] "%d podadresářů" + +# +#, python-format +msgid "%d wireless network found!" +msgid_plural "%d wireless networks found!" +msgstr[0] "nalezena %d bezdrátová síť!" +msgstr[1] "nalezeny %d bezdrátové síťě!" +msgstr[2] "nalezeno %d bezdrátových síťí!" + +msgid "%d-%b-%Y %-H:%M" +msgstr "" + +msgid "%d-%m" +msgstr "" + +# +msgid "%d.%B %Y" +msgstr "%d. %B %Y" + +#. TRANSLATORS: VFD hour:minute daynum short monthname in strftime() format! See 'man strftime' +msgid "%k:%M %e/%m" +msgstr "" + +# +#, python-format +msgid "%s %s free disk space" +msgstr "%s %s volného místa" + +# +#, python-format +msgid "%s (%s)\n" +msgstr "%s (%s)\n" + +#. TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. +#, python-format +msgid "%s is no longer used. Should it be deleted?" +msgstr "%s není dlouho používán. Může být odstraněn?" + +# +#, python-format +msgid "%s updated package available" +msgid_plural "%s updated packages available" +msgstr[0] " %s dostupná aktualizace" +msgstr[1] " %s dostupné aktualizace" +msgstr[2] " %s dostupných aktualizací" + +#, python-format +msgid "%s%d min" +msgstr "" + +#, python-format +msgid "%s/%s: %s" +msgstr "" + +# +msgid "(ZAP)" +msgstr "(Přepnout)" + +# +msgid "(empty)" +msgstr "(prázdné)" + +# +msgid "(show optional DVD audio menu)" +msgstr "(zobrazit případné DVD audio menu)" + +# +msgid "* Only available if more than one interface is active." +msgstr "* dostupné pouze při více než jenom aktivním interface." + +msgid "/s" +msgstr "" + +# +msgid "0" +msgstr "0" + +# +msgid "1" +msgstr "1" + +# +msgid "1.0" +msgstr "1.0" + +# +msgid "1.1" +msgstr "1.1" + +# +msgid "1.2" +msgstr "1.2" + +# +msgid "12V output" +msgstr "12V výstup" + +# +msgid "13 V" +msgstr "13 V" + +# +msgid "16:10" +msgstr "16:10" + +# +msgid "16:10 Letterbox" +msgstr "16:10 Letterbox" + +# +msgid "16:10 PanScan" +msgstr "16:10 PanScan" + +# +msgid "16:9" +msgstr "16:9" + +# +msgid "16:9 Letterbox" +msgstr "16:10 Letterbox" + +# +msgid "16:9 always" +msgstr "vždy 16:9" + +# +msgid "18 V" +msgstr "18 V" + +# +msgid "2" +msgstr "2" + +msgid "23.976" +msgstr "" + +msgid "24" +msgstr "" + +msgid "25" +msgstr "" + +msgid "29.97" +msgstr "" + +# +msgid "3" +msgstr "3" + +msgid "30" +msgstr "" + +# +msgid "3d mode" +msgstr "3D mód" + +# +msgid "4" +msgstr "4" + +# +msgid "4:3" +msgstr "4:3" + +# +msgid "4:3 Letterbox" +msgstr "4:3 Letterbox" + +# +msgid "4:3 PanScan" +msgstr "4:3 PanScan" + +# +msgid "5" +msgstr "5" + +# +msgid "6" +msgstr "6" + +# +msgid "7" +msgstr "7" + +# +msgid "8" +msgstr "8" + +# +msgid "9" +msgstr "9" + +#, python-format +msgid ": %s" +msgstr "" + +# +msgid "<Current movielist location>" +msgstr "<současný seznam souborů>" + +# +msgid "<Default movie location>" +msgstr "<standardní umístění>" + +# +msgid "<Last timer location>" +msgstr "<poslední umístění časovače>" + +# +msgid "<unknown>" +msgstr "<neznámý>" + +# +msgid "??" +msgstr "??" + +# +msgid "A" +msgstr "A" + +# +#, python-format +msgid "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" +msgstr "" +"Konfigurační soubor (%s) byl od instalace změněn.\n" +"Chcete zachovat Vaše změny?" + +# +#, python-format +msgid "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" +msgstr "" +"Konfigurační soubor (%s) byl od instalace změněn.\n" +"Chcete zachovat Vaši verzi?" + +msgid "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"Dokončený časovač nahrávání chce přepnout\n" +"přijímač do pohotovostního režimu. Přepnout?" + +msgid "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"Dokončený časovač nahrávání chce vypnout\n" +"přijímač. Vypnout?" + +# +msgid "A graphical EPG for all services of an specific bouquet" +msgstr "Grafické EPG pro všechny stanice ve specifickém bukletu" + +# +#, python-format +msgid "" +"A record has been started:\n" +"%s" +msgstr "" +"Nahrávání začalo:\n" +"%s" + +# +msgid "" +"A recording is currently running.\n" +"What do you want to do?" +msgstr "" +"Nahrává se\n" +"Co chcete udělat?" + +# +msgid "A recording is currently running. Please stop the recording before trying to configure the positioner." +msgstr "Nahrává se. Prosím, zastavte nahrávání před konfigurací pozicioneru." + +# +msgid "A recording is currently running. Please stop the recording before trying to scan." +msgstr "Probíhá nahrávání. Zrušte nahrávání před prohledáváním." + +# +msgid "A recording is currently running. Please stop the recording before trying to start the satfinder." +msgstr "Právě se nahrává. Prosím, zastavte nahrávání před spuštěním Satfinderu." + +# +#, python-format +msgid "A required tool (%s) was not found." +msgstr "Požadovaný nástroj (%s) nebyl nalezen." + +# +msgid "A search for available updates is currently in progress." +msgstr "Probíhá vyhledávání dostupných aktualizací." + +# +msgid "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" +msgstr "" +"Byl nalezen druhý nakonfigurovaný interface.\n" +"\n" +"Přejete si druhý síťový adaptér zakázat?" + +msgid "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"Časovač vypnutí chce přepnout přijímač\n" +"do pohotovostního režimu. Přepnout?" + +msgid "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"Časovač vypnutí chce vypnout přijímač.\n" +"Vypnout?" + +# +msgid "A small overview of the available icon states and actions." +msgstr "Přehled zobrazovaných stavů a možných akcí." + +# +msgid "" +"A timer failed to record!\n" +"Disable TV and try again?\n" +msgstr "" +"Nahrávání z časovače selhalo!\n" +"Zakázat TV a zkusit to znovu?\n" + +# +msgid "A/V settings" +msgstr "Nastavení A/V" + +msgid "AC3/DTS downmix" +msgstr "" + +# +msgid "Abort" +msgstr "Zrušit" + +# +msgid "About" +msgstr "O přijímači" + +# +msgid "About..." +msgstr "Info o..." + +# +msgid "Accesspoint:" +msgstr "Přístupový bod:" + +# +msgid "Action on long powerbutton press" +msgstr "Dlouhý stisk tlačítka pro vypnutí" + +# +msgid "Action on short powerbutton press" +msgstr "Krátký stisk tlačítka pro vypnutí" + +# +msgid "Activate Picture in Picture" +msgstr "Aktivovat obraz v obraze" + +# +msgid "Activate current configuration" +msgstr "Aktivovat současnou konfiguraci" + +# +msgid "Activate network settings" +msgstr "Aktivovat nastavení sítě" + +# +msgid "Activate the configured network settings." +msgstr "Aktivovat nastavení sítě." + +# +msgid "Adapter settings" +msgstr "Nastavení adaptéru" + +# +msgid "Add" +msgstr "Přidat" + +msgid "Add Bookmark" +msgstr "Přidat záložku" + +# +msgid "Add a mark" +msgstr "Přidat značku" + +# +msgid "Add a nameserver entry" +msgstr "Přidat nameserver" + +# +msgid "Add a new title" +msgstr "Přidat nový titul" + +# +msgid "Add bookmark" +msgstr "Přidat záložku" + +# +msgid "Add directory to playlist" +msgstr "Přidat adresář do playlistu" + +# +msgid "Add file to playlist" +msgstr "Přidat soubor do playlistu" + +# +msgid "Add files to playlist" +msgstr "Přidat soubory do playlistu" + +# +msgid "Add more details to the crash log" +msgstr "Přidávat více podrobností do crash logu." + +# +msgid "Add provider" +msgstr "Přidat poskytovatele" + +# +msgid "Add recording (enter recording duration)" +msgstr "Přidat nahrávání (zadat délku nahrávání)" + +# +msgid "Add recording (enter recording endtime)" +msgstr "Přidat nahrávání (zadat čas ukončení)" + +# +msgid "Add recording (indefinitely)" +msgstr "Přidat nahrávání (bez omezení)" + +# +msgid "Add recording (stop after current event)" +msgstr "Přidat nahrávání (ukončit po této události)" + +# +msgid "Add service" +msgstr "Přidat program" + +# +msgid "Add timer" +msgstr "Přidat časovač" + +# +msgid "Add title" +msgstr "Přidat titul" + +# +msgid "Add to bouquet" +msgstr "Přidat do přehledu" + +# +msgid "Add to favourites" +msgstr "Přidat do oblíbených" + +msgid "Add/remove change timer for current event" +msgstr "Přidat/odstranit časovač pro aktuální událost" + +# +msgid "Adjust 3D settings" +msgstr "Seřídit 3D nastavení" + +# +msgid "Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens." +msgstr "Upravte barevné nastavení tak, aby všechny barevné odstíny byly rozpoznatelné, ale zároveň aby byly co nejvíce nasycené. Pokud jste spokojeni s výsledkem, stiskněte OK pro zavření průvodce nebo použijte numerické klávesy pro výběr jiné testovací scény." + +# +msgid "Advanced" +msgstr "rozšířený" + +# +msgid "Advanced options" +msgstr "Pokročilé možnosti" + +# +msgid "Advanced restore" +msgstr "Pokročilá obnova" + +# +msgid "Advanced software" +msgstr "Pokročilé programy" + +# +msgid "Advanced software plugin" +msgstr "Plugin pokročilých programů" + +# +msgid "Advanced video enhancement setup" +msgstr "Pokročilá nastavení korekce obrazu" + +# +msgid "Advanced video setup" +msgstr "Rozšířené nastavení videa" + +# +msgid "After event" +msgstr "Po skončení" + +# +msgid "Album" +msgstr "Album" + +msgid "Alignment of events" +msgstr "Zarovnání událostí" + +msgid "Alignment of service names" +msgstr "Zarovnání názvu kanálů" + +# +msgid "All" +msgstr "Vše" + +msgid "All ages" +msgstr " " + +# +msgid "All satellites 1 (USALS)" +msgstr "Všechny satelity 1 (USALS)" + +# +msgid "All satellites 2 (USALS)" +msgstr "Všechny satelity 2 (USALS)" + +# +msgid "All satellites 3 (USALS)" +msgstr "Všechny satelity 3 (USALS)" + +# +msgid "All satellites 4 (USALS)" +msgstr "Všechny satelity 4 (USALS)" + +msgid "Allocate" +msgstr "Přidělit" + +msgid "Allocate unused memory index" +msgstr "Přidělit nepoužitou paměť" + +msgid "Allow quit movieplayer with exit" +msgstr "Umožnit zavírat movieplayer pomocí Exit" + +msgid "Allow subtitle language to equal audio language" +msgstr "Titulky shodné se zvukem" + +msgid "Allow subtitles for hearing impaired" +msgstr "Povolit titulky pro sluchově postižené" + +# +msgid "Alpha" +msgstr "Alfa" + +# +msgid "Alternative" +msgstr "alternativní" + +# +msgid "Alternative numbering mode" +msgstr "Alternativní číslování" + +# +msgid "Alternative services tuner priority" +msgstr "Pořadí priority alternativních tunerů" + +msgid "Always ask" +msgstr "Vždy se ptát" + +msgid "Always hide infobar" +msgstr "Vždy skrývat infobar" + +# +msgid "An empty filename is illegal." +msgstr "Neplatný název souboru." + +# +msgid "An error occurred while downloading the packetlist. Please try again." +msgstr "Chyba při stahování seznamu balíčků. Prosím, zkuste to znovu." + +# +msgid "An unknown error occurred!" +msgstr "Vyskytla se neznámá chyba!" + +msgid "And will put your receiver in standby over " +msgstr "a přepne přijímač do standby za" + +msgid "Any activity" +msgstr "jakákoliv aktivita" + +# +msgid "Arabic" +msgstr "Arabsky" + +# +msgid "Are you sure to remove this entry?" +msgstr "Opravdu chcete odstranit tuto položku?" + +# +msgid "" +"Are you sure you want to activate this network configuration?\n" +"\n" +msgstr "" +"Chcete aktivovat tuto síťovou konfiguraci?\n" +"\n" + +# +msgid "" +"Are you sure you want to delete\n" +"the following backup:\n" +msgstr "" +"Opravdu chcete smazat následující zálohu:\n" +"\n" + +# +msgid "Are you sure you want to exit this wizard?" +msgstr "Opravdu chcete ukončit tohoto průvodce?" + +# +msgid "" +"Are you sure you want to restart your network interfaces?\n" +"\n" +msgstr "" +"Opravdu chcete restartovat síťové rozhraní?\n" +"\n" + +# +#, python-format +msgid "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Opravdu chcete obnovit následující zálohu:\n" +"%s\n" +"\n" +"Uživatelské rozhraní bude po obnově restartováno!" + +# +msgid "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Opravdu chcete obnovit zálohu?\n" +"Po obnově bude přijímač restartován!" + +# +msgid "Artist" +msgstr "Umělec" + +msgid "Arts/Culture" +msgstr "umění/kultura" + +# +msgid "Ask user" +msgstr "zeptat se" + +# +msgid "Aspect ratio" +msgstr "Poměr stran" + +# +msgid "Assigned CAIds:" +msgstr "Přiřazené CAIds:" + +# +msgid "Assigned services/provider:" +msgstr "Přiřazený program/poskytovatel:" + +# +msgid "At beginning" +msgstr "Na začátek" + +# +msgid "At end" +msgstr "Na konec" + +# +msgid "Audio" +msgstr "Zvuk" + +msgid "Audio PID" +msgstr "" + +# +msgid "Audio language selection 1" +msgstr "Volba jazyka zvuku 1" + +# +msgid "Audio language selection 2" +msgstr "Volba jazyka zvuku 2" + +# +msgid "Audio language selection 3" +msgstr "Volba jazyka zvuku 3" + +# +msgid "Audio language selection 4" +msgstr "Volba jazyka zvuku 4" + +# +msgid "Audio options..." +msgstr "Nastavení zvuku..." + +# +#, python-format +msgid "Audio track (%s) format" +msgstr "Formát audio stopy (%s)" + +# +#, python-format +msgid "Audio track (%s) language" +msgstr "Jazyk audio stopy (%s)" + +# +msgid "Author: " +msgstr "Autor: " + +# +msgid "Authoring mode" +msgstr "Mód authoringu" + +# +#. TRANSLATORS: (aspect ratio policy: always try to display as fullscreen, when there is no content (black bars) on left/right, even if this breaks the aspect. +msgid "Auto" +msgstr "Auto" + +# +msgid "Auto chapter split every ? minutes (0=never)" +msgstr "Automaticky vytvořit kapitoly každých ? minut (0=žádné)" + +# +msgid "Auto flesh" +msgstr "" + +msgid "Auto focus" +msgstr "Auto fokus" + +msgid "Auto focus commencing ..." +msgstr "Auto fokus zahájen ..." + +# +msgid "Auto language selection" +msgstr "Automatický výběr jazyka" + +# +msgid "Auto scart switching" +msgstr "Automatické přepínání scart" + +# +msgid "Automatic" +msgstr "Automatické" + +# +msgid "Automatic scan" +msgstr "Automatické prohledávání" + +msgid "Automatically start timeshift after" +msgstr "Automaticky spustit timeshift po" + +msgid "Automatically turn on external subtitles" +msgstr "Automaticky zapínat externí titulky" + +# +msgid "Available format variables" +msgstr "Použitelný formát proměnných" + +# +msgid "B" +msgstr "B" + +# +msgid "BER" +msgstr "BER" + +# +msgid "BER:" +msgstr "BER:" + +# +msgid "Back" +msgstr "Zpět" + +# +msgid "Background" +msgstr "Pozadí" + +# +msgid "Background color" +msgstr "Barva pozadí" + +# +msgid "Background delete option" +msgstr "Možnosti mazání na pozadí" + +# +msgid "Background delete speed" +msgstr "Rychlost mazání na pozadí" + +# +msgid "Backup completed." +msgstr "Záloha dokončena." + +# +msgid "Backup failed." +msgstr "Záloha selhala." + +# +msgid "Backup is running..." +msgstr "Probíhá zálohování..." + +# +msgid "Backup system settings" +msgstr "Záloha nastavení" + +# +msgid "Band" +msgstr "Pásmo" + +# +msgid "Bandwidth" +msgstr "Šířka pásma" + +# +msgid "Basque" +msgstr "Baskicky" + +# +msgid "Begin time" +msgstr "Čas začátku" + +msgid "Behavior of 'pause and ok' when paused" +msgstr "" + +# +msgid "Behavior of 0 key in PiP-mode" +msgstr "Funkce tlačítka 0 v PiP módu" + +# +msgid "Behavior when a movie is started" +msgstr "Při spuštění přehrávání filmu" + +# +msgid "Behavior when a movie is stopped" +msgstr "Při zastavení přehrávaného filmu" + +# +msgid "Behavior when a movie reaches the end" +msgstr "Po skončení přehrávání filmu" + +msgid "Big PiP" +msgstr "Velký PiP" + +# +msgid "Bitrate:" +msgstr "Datový tok:" + +msgid "Black screen" +msgstr "černá obrazovka" + +msgid "Black screen till locked" +msgstr "Černá obrazovka do uzamčení" + +# +msgid "Block noise reduction" +msgstr "Bloková redukce šumu (BNR)" + +# +msgid "Blue boost" +msgstr "Zesílení modré" + +# +msgid "Bookmarks" +msgstr "Záložky" + +# +msgid "Brightness" +msgstr "Jas" + +msgid "Bulgarian" +msgstr "Bulharsky" + +# +msgid "Burn DVD" +msgstr "Vypálit DVD" + +# +#, python-format +msgid "Burn audio track (%s)" +msgstr "Vypálit audio stopu (%s)" + +# +msgid "Burn existing image to DVD" +msgstr "Vypálit existující obraz na DVD" + +msgid "Burn to DVD" +msgstr "Vypálit na DVD" + +# +msgid "Bus: " +msgstr "Sběrnice: " + +msgid "By default, SNR will be shown in dB (when supported by the tuner). This setting forces SNR to be shown as a percentage instead." +msgstr "Standardně ( jestliže to podporuje tuner) je SNR zobrazován v dB. Toto nastavení umožní zobrazování v procentech." + +# +msgid "C" +msgstr "" + +# +msgid "C-Band" +msgstr "C-Band" + +msgid "CH" +msgstr "" + +# +msgid "CI assignment" +msgstr "CI přiřazení" + +# +msgid "CVBS" +msgstr "CVBS" + +# +msgid "Cable" +msgstr "Kabel" + +# +msgid "Cable Scan" +msgstr "Prohledání kabelovky" + +# +msgid "Cache thumbnails" +msgstr "Vyrovnávací paměť pro náhledy" + +msgid "Calculate" +msgstr "Přepočítat" + +msgid "Calculate all positions" +msgstr "Přepočítat všechny pozice" + +msgid "Calculation complete" +msgstr "Přepočítání dokončeno" + +msgid "Calibrate" +msgstr "Kalibrovat" + +msgid "Can be used for different fps between external subtitles and video." +msgstr "Může být použito při odlišné fps mezi obrazem a externími titulky." + +# +msgid "Cancel" +msgstr "Zavřít" + +msgid "Cannot determine" +msgstr "Nelze určit" + +msgid "Cannot find any signal ..., aborting !" +msgstr "Nelze najít žádný signál..., ukončuje se!" + +msgid "Cannot move files on a different disk or system to the trash can" +msgstr "Nelze přesunout do koše soubory z jiného disku nebo systému" + +msgid "Cannot move to trash can" +msgstr "Nelze přesunout do koše" + +# +msgid "Capacity: " +msgstr "Kapacita:" + +# +msgid "Card" +msgstr "Karta" + +msgid "Cascade PiP" +msgstr "Kaskádový PiP" + +# +msgid "Center DVB subtitles" +msgstr "Centrovat DVB titulky" + +msgid "Center time-labels and remove date" +msgstr "Skrýt datum a vycentrovat čas" + +# +msgid "Change bouquets in quickzap" +msgstr "Měnit přehledy při rychlém přepínání" + +# +msgid "Change pin code" +msgstr "Změnit PIN kód" + +# +msgid "Change recording (duration)" +msgstr "Změnit nahrávání (délku)" + +# +msgid "Change recording (endtime)" +msgstr "Změnit nahrávání (čas ukončení)" + +# +msgid "Change repeat and delay settings?" +msgstr "Změnit nastavení opakování a zpoždění" + +msgid "Change service PIN" +msgstr "Změnit programový PIN" + +msgid "Change service PINs" +msgstr "Změnit programové PINy" + +msgid "Change setup PIN" +msgstr "Změnit PIN pro nastavení" + +# +msgid "Change step size" +msgstr "Změnit velikost kroku" + +# +msgid "Change timer" +msgstr "Změnit časovač" + +msgid "Changelog" +msgstr "Protokol změn" + +# +msgid "Channel" +msgstr "Kanál" + +# +msgid "Channel list type" +msgstr "Typ seznamu programů" + +# +msgid "Channel not in services list" +msgstr "Kanál není v seznamu služeb" + +# +msgid "Channel selection" +msgstr "Výběr programu" + +# +msgid "Channel:" +msgstr "Kanál:" + +# +msgid "Channellist menu" +msgstr "Menu seznamu programů" + +# +msgid "Chap." +msgstr "Kap." + +# +msgid "Chapter" +msgstr "Kapitola" + +# +msgid "Chapter:" +msgstr "Kapitola:" + +# +msgid "Check" +msgstr "Ověřit" + +msgid "Check the internet connection" +msgstr "Zkontrolujte připojení k internetu" + +msgid "Check the internet connection again" +msgstr "Zkontrolujte znovu připojení k internetu" + +# +msgid "Checking filesystem..." +msgstr "Ověřuje se souborový systém..." + +msgid "Checking the internet connection" +msgstr "Kontrola internetového připojení" + +#, python-format +msgid "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" +msgstr "" +"Kontrola tuneru %d\n" +"DiSEqC port %s pro %s" + +msgid "Children/Youth" +msgstr "děti/mládež" + +msgid "Choose which tuner to configure." +msgstr "Vyberte si, který tuner chcete nastavovat." + +# +msgid "Circular left" +msgstr "Kruhová levá" + +# +msgid "Circular right" +msgstr "Kruhová pravá" + +# +msgid "Cleanup" +msgstr "Vyčistit" + +msgid "Clear" +msgstr "Vyčistit" + +# +msgid "Clear before scan" +msgstr "Smazat před skenováním" + +msgid "Clear fixed" +msgstr "Vyčistit pevnou" + +# +msgid "Clear log" +msgstr "Smazat log" + +# +msgid "Clear playlist" +msgstr "Vymazat playlist" + +# +msgid "Close" +msgstr "Zavřít" + +msgid "Close PiP on exit" +msgstr "Zavřít PIP při ukončení" + +# +msgid "Close title selection" +msgstr "Zavřít výběr titulu" + +msgid "Code rate HP" +msgstr "" + +msgid "Code rate LP" +msgstr "" + +# +msgid "Coderate HP" +msgstr "Rychlost HP" + +# +msgid "Coderate LP" +msgstr "Rychlost LP" + +# +msgid "Collection name" +msgstr "Název kompilace" + +# +msgid "Collection settings" +msgstr "Nastavení kompilace" + +# +msgid "Color format" +msgstr "Formát barev" + +# +msgid "Command execution..." +msgstr "Výkonání příkazu..." + +# +msgid "Command order" +msgstr "Pořadí příkazů" + +# +msgid "Common Interface" +msgstr "Common Interface" + +# +msgid "Common Interface assignment" +msgstr "Common Interface přiřazení" + +# +msgid "Communication" +msgstr "Komunikace" + +# +msgid "Compact flash" +msgstr "Compact flash" + +# +msgid "Complete" +msgstr "Kompletní" + +# +msgid "Complex (allows mixing audio tracks and aspects)" +msgstr "komplexní (umožňuje míchat audio stopy a zobrazení)" + +msgid "Composition of the recording filenames" +msgstr "Vytváření názvů nahrávaných souborů" + +msgid "Configuration mode" +msgstr "Konfigurační mód" + +#, python-format +msgid "Configuration mode: %s" +msgstr "Konfigurační mód: %s" + +# +msgid "Configuration..." +msgstr "nastavení..." + +msgid "Configure an additional delay to improve external subtitle synchronisation." +msgstr "Nastavení zpoždění pro lepší synchronizaci externích titulků." + +msgid "Configure an additional delay to improve subtitle synchronisation." +msgstr "Nastavení zpoždění pro lepší synchronizaci titulků." + +msgid "Configure for how long the infobar will remain visible after activation." +msgstr "Nastavuje, jak dlouho po zobrazení bude viditelný infobar." + +msgid "Configure for how many minutes finished events should remain visible in the EPG. Useful when you need information about an event which has just finished, or has been delayed." +msgstr "Nastavuje, kolik minut může zůstat ukončená událost viditelná v EPG. Užitečné, když potřebujete informace o události, která právě skončila nebo byla zpožděná." + +msgid "Configure how recording filenames are constructed." +msgstr "Nastavuje způsob vytváření názvů souborů pro nahrávání." + +msgid "Configure how the fan should operate" +msgstr "Nastavuje jak bude pracovat ventilátor" + +# +msgid "Configure if and how crypto icons will be shown in the channel selection list." +msgstr "Nastavuje zda a jak budou zobrazovány ikony kódovaných programů v přehledech kanálů." + +msgid "Configure if and how long the latest service in the PiP will be remembered." +msgstr "Nastavuje zda a jak dlouho bude zapamatován poslední program v PIP." + +msgid "Configure if and how service type icons will be shown in the channel selection list." +msgstr "Nastavuje zda a jak budou zobrazovány ikony typu programu v seznamu kanálů." + +# +msgid "Configure if and how wide columns will be shown in the channel selection list." +msgstr "Nastavuje zda a jak široké sloupce budou zobrazeny v seznamu kanálů." + +# +msgid "Configure if service picons will be shown in the channel selection list." +msgstr "Nastavuje, zda budou picony zobrazeny v seznamu kanálů." + +# +msgid "Configure interface" +msgstr "Nastavuje interface" + +# +msgid "Configure nameservers" +msgstr "Nastavuje DNS servery" + +msgid "Configure on which devices the background delete option should be used." +msgstr "Nastavuje, na kterých zařízeních může být nastaveno mazání na pozadí." + +msgid "Configure remote control type" +msgstr "Nastavuje typ dálkového ovládání" + +msgid "Configure the DiSEqC mode for this LNB." +msgstr "Nastavuje DiSEqC mód pro tento LNB." + +# +msgid "Configure the IP address." +msgstr "Nastavuje IP adresu." + +msgid "Configure the aspect ratio of the screen." +msgstr "Nastavuje poměr stran obrazu." + +msgid "Configure the behavior of the 'pause and ok' key when movie playback is already paused." +msgstr "" + +# +msgid "Configure the behavior when movie playback is manually stopped." +msgstr "Nastavuje chování při ručním zastavení přehrávaného filmu." + +# +msgid "Configure the behavior when movie playback is started." +msgstr "Nastavuje chování při spuštění přehrávání filmu." + +msgid "Configure the behavior when reaching the end of a movie, during movie playback." +msgstr "Nastavuje chování při dosažení konce filmu během přehrávání." + +msgid "Configure the border width of the subtitles. The dark border makes the subtitles easier to read on a light background." +msgstr "Nastavuje šířku okrajů titulků. Tmavé okraje dělají titulky lépe čitelné na světlém pozadí." + +msgid "Configure the brightness level of the front panel display during standby." +msgstr "Nastavuje úroveň jasu předního displeje v pohotovostním režimu." + +msgid "Configure the brightness level of the front panel display." +msgstr "Nastavuje úroveň jasu předního displeje." + +msgid "Configure the color of the external subtitles, alternative (normal in white, italic in yellow, bold in cyan, underscore in green), white or yellow." +msgstr "Nastavuje barvy externích titulků - alternativní (normální bíle, kurzíva žlutě, tučné azurově, podtržené zeleně), bílá nebo žlutá." + +msgid "Configure the color of the teletext subtitles." +msgstr "Nastavuje barvu teletextových titulků." + +msgid "Configure the contrast level of the front panel display." +msgstr "Nastavuje úroveň kontrastu předního displeje." + +# +msgid "Configure the cursor behaviour in the channel selection list. When opening the channel selection list you can keep on the current service or already select up/down and you are able to revert the B+/B- buttons." +msgstr "Nastavuje chování kurzoru v přehledu kanálů. Při otevření přehledu kanálů můžete zůstat na aktuálním programu nebo se posunout nahoru/dolů a můžete též prohodit B+/B- tlačítka." + +# +msgid "Configure the duration in hours the receiver should go to standby when the receiver is not controlled." +msgstr "Nastavte dobu v hodinách pro přechod přijímače do standby, jestliže po tuto dobu nebyl ovládán." + +msgid "Configure the duration in minutes for the screensaver." +msgstr "Nastavení doby v minutách pro spořič obrazovky." + +# +msgid "Configure the duration in minutes for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +msgstr "Nastavte trvání časovače usínání v minutách a poté . Zvolte tuto položku a stiskněte OK nebo Zelené tlačítko pro spuštění/zastavení časovače usínání" + +msgid "Configure the duration when the receiver should go to shut down in case the receiver is in standby mode." +msgstr "Nastavte dobu, po které by se měl přijímač vypnout, v případě, že je v pohotovostním režimu." + +msgid "Configure the first audio language (highest priority)." +msgstr "Nastavuje první jazyk zvuku (nejvyšší priorita)." + +msgid "Configure the first subtitle language (highest priority)." +msgstr "Nastavuje první jazyk titulků (nejvyšší priorita)." + +msgid "Configure the font size of the subtitles." +msgstr "Nastavuje velikost písma titulků." + +msgid "Configure the fourth audio language." +msgstr "Nastavuje čtvrtý jazyk zvuku." + +# +msgid "Configure the fourth subtitle language." +msgstr "Nastavuje čtvrtý jazyk titulků." + +msgid "Configure the function of a long press on the power button." +msgstr "Nastavuje funkci pro dlouhý stisk tlačítka pro vypnutí." + +msgid "Configure the function of a short press on the power button." +msgstr "Nastavuje funkci pro krátký stisk tlačítka pro vypnutí." + +msgid "Configure the function of the '0' button do when PIP is active." +msgstr "Nastavuje funkci tlačítka '0' při aktivním PIP." + +# +msgid "Configure the gateway." +msgstr "Nastavuje bránu." + +msgid "Configure the general audio delay of Dolby Digital sound tracks." +msgstr "Nastavuje hlavní zpoždění Dolby Digital zvukových stop." + +msgid "Configure the general audio delay of stereo sound tracks." +msgstr "Nastavuje hlavní zpoždění stereo zvukových stop." + +msgid "Configure the hard disk drive to go to standby after the specified idle time." +msgstr "Nastavuje čas nečinnosti, po kterém přejde pevný disk do úsporného režimu." + +msgid "Configure the horizontal alignment of the subtitles." +msgstr "Nastavuje horizontální zarovnání titulků." + +msgid "Configure the initial fast forward speed. When you press the fast forward button, winding will start at this speed." +msgstr "Nastavuje počáteční rychlost pro přetáčení vpřed. Jestliže stisknete tlačítko pro přetáčení vpřed, přetáčení začne touto rychlostí." + +msgid "Configure the initial rewind speed. When you press the rewind button, winding will start at this speed." +msgstr "Nastavuje počáteční rychlost pro přetáčení vzad. Jestliže stisknete tlačítko pro přetáčení vzad, přetáčení začne touto rychlostí." + +msgid "Configure the latitude of your location." +msgstr "Nastavuje zeměpisnou šířku Vašeho místa." + +msgid "Configure the longitude of your location." +msgstr "Nastavuje zeměpisnou délku Vašeho místa. " + +msgid "Configure the minimum amount of disk space to be available for recordings. When the amount of space drops below this value, deleted items will be removed from the trash can." +msgstr "Nastavuje minimální množství volného místa na disku využitelné pro nahrávání. Jestliže volné místo klesne pod tuto hodnotu, smazané položky budou odstraněny z koše. " + +# +msgid "Configure the nameserver (DNS)." +msgstr "Nastavuje nameserver (DNS)." + +# +msgid "Configure the netmask." +msgstr "Nastavuje síťovou masku." + +msgid "Configure the number of days after which items are automaticaly removed from the trash can." +msgstr "Nastavuje počet dnů, po kterých jsou položky umístěné v koši automaticky smazány." + +msgid "Configure the number of days old timers are kept before they are automatically removed from the timer list." +msgstr "Nastavuje počet dnů, po které jsou staré časovače uchovávány v seznamu časovačů před jejich automatickým smazáním." + +msgid "Configure the offline decoding delay in milliseconds. The configured delay is observed at each control word parity change." +msgstr "Nastavuje offline zpoždění dekódování v milisekundách. Nastavené zpoždění je dodrženo při každé změně control word parity. " + +# +msgid "Configure the possible fast forward speeds." +msgstr "Nastavuje použitelné rychlosti pro přetáčení dopředu." + +msgid "Configure the possible rewind speeds." +msgstr "Nastavuje použitelné rychlosti pro přetáčení vzad." + +msgid "Configure the primary EPG language." +msgstr "Nastavuje primární jazyka EPG." + +msgid "Configure the refresh rate of the screen." +msgstr "Nastavuje obnovovací frekvenci obrazu." + +msgid "Configure the screen resolution in PC output mode." +msgstr "Nastavuje rozlišení obrazovky pro PC výstupní mód." + +msgid "Configure the second audio language." +msgstr "Nastavuje druhý jazyk zvuku." + +# +msgid "Configure the second subtitle language." +msgstr "Nastavuje druhý jazyk titulků." + +msgid "Configure the secondary EPG language." +msgstr "Nastavuje sekundárního jazyka EPG." + +msgid "Configure the sharpness of the video scaling." +msgstr "Nastavuje ostrost při škálování videa." + +msgid "Configure the skip time interval for the '1'/'3' buttons." +msgstr "Nastavuje čas přeskočení pro tlačítka '1'/'3'." + +msgid "Configure the skip time interval for the '4'/'6' buttons." +msgstr "Nastavuje čas přeskočení pro tlačítka '4'/'6'." + +msgid "Configure the skip time interval for the '7'/'9' buttons." +msgstr "Nastavuje čas přeskočení pro tlačítka '7'/'9'." + +# +msgid "Configure the slow motion speeds." +msgstr "Nastavuje rychlosti zpomaleného přehrávání." + +msgid "Configure the source of the frontend data as shown on the infobars. 'Settings' is as stored on the settings. 'Tuner' is as reported by the tuner." +msgstr "Konfigurace zdroje frontend dat zobrazovaných v Infobaru. \" Nastavení \" znamená tak, jak je uloženo v nastavení . \" Tuner \" znamená získané z tuneru." + +msgid "Configure the speed of the background deletion process. Lower speed will consume less hard disk drive performance." +msgstr "Nastavuje rychlost mazání na pozadí. Nižší rychlost spotřebuje méně výkonu pevného disku." + +msgid "Configure the speed of the fan" +msgstr "Nastavit rychlost ventilátoru" + +msgid "Configure the subtitle delay when timing information is not available." +msgstr "Nastavuje zpoždění titulků pro případ, kdy není časování dostupné." + +msgid "Configure the third audio language." +msgstr "Nastavuje třetí jazyk zvuku." + +# +msgid "Configure the third subtitle language." +msgstr "Nastavuje třetí jazyk titulků." + +msgid "Configure the transparency of the OSD." +msgstr "Nastavuje průhlednost OSD." + +msgid "Configure the transparency of the black background of graphical DVB subtitles." +msgstr "Nastavuje průhlednost černého pozadí grafických DVB titulků." + +msgid "Configure the tuner mode." +msgstr "Nastavuje mód tuneru. " + +msgid "Configure the type of status indication icons shown in the movielist." +msgstr "Nastavuje typ ikon pro zobrazování stavu přehrávání v seznamu souborů." + +msgid "Configure the vertical position of the subtitles, measured from the bottom of the screen." +msgstr "Nastavuje vertikální umístění titulků (měřeno od spodní části obrazovky)." + +msgid "Configure the video output mode (or resolution)." +msgstr "Nastavuje mód video výstupu (nebo rozlišení)." + +msgid "Configure the way in which the receiver changes channels." +msgstr "Nastavuje cestu kterou přijímač mění kanály. " + +msgid "Configure where completed timers show up in the timer list." +msgstr "Nastavuje, kde se budou v seznamu časovačů zobrazovat dokončené časovače. " + +msgid "Configure whether (and for how long) a second infobar will be shown when OK is pressed twice. The second infobar contains additional information about the current channel." +msgstr "Nastavuje, zda (a jak dlouho) bude zobrazován druhý infobar, jestliže je dvakrát stisknuto tlačítko OK. Druhý infobar obsahuje další informace o aktuálním kanálu." + +msgid "Configure whether multi channel sound tracks should be downmixed to stereo." +msgstr "Nastavuje, zda bude vícekanálový zvuk přepočítáván na stereo." + +msgid "Configure whether or not an icon should be shown when your motorized dish is moving." +msgstr "Nastavuje, zda budou nebo nebudou zobrazovány ikony při natáčení paraboly motorem. " + +msgid "Configure which access level to use for the configuration menu. Expert level gives access to all items." +msgstr "Nastavuje, která úroveň přístupu bude použita v konfiguračních menu. Expertní úroveň zajišťuje přístup ke všem položkám." + +msgid "Configure which color format should be used on the SCART output." +msgstr "Nastavuje barevný formát pro SCART výstup." + +# +msgid "Configure which tuner for recordings will be preferred, when more than one tuner is available." +msgstr "Nastavuje preferovaný tuner pro nahrávání pro přídad, že je využitelný více než jeden tuner." + +msgid "Configure which tuner type will be preferred, when the same service is available on different types of tuners." +msgstr "Nastavuje, který tuner bude mít prioritu, jestliže je stejný program dostupný na odlišných typech tunerů." + +msgid "Configure which tuner will be preferred, when more than one tuner is available. If set to 'auto' the system will give priority to the tuner having the lowest number of channels/satellites." +msgstr "Nastavuje, který tuner bude preferovaný, jestliže je k dispozici více než jeden tuner. V případě nastavení na 'automaticky' bude preferován tuner s nejnižším počtem kanálů/satelitů." + +# +msgid "Configure your internal LAN" +msgstr "Nastavte vnitřní LAN" + +# +msgid "Configure your network again" +msgstr "Nastavte znovu Vaši síť" + +msgid "Configure your network settings, and press OK to start the scan" +msgstr "Nastavte Vaši síť a stiskněte OK pro začátek vyhledávání" + +# +msgid "Configure your wireless LAN again" +msgstr "Nastavte znovu Vaši WLAN" + +msgid "Configures which video output connector will be used." +msgstr "Nastavuje, který konektor video výstupu bude použit. " + +# +msgid "Configuring" +msgstr "Nastavuji" + +# +msgid "Conflicting timer" +msgstr "Konfliktní časovač" + +# +msgid "Connect" +msgstr "Připojit" + +# +msgid "Connect to a wireless network" +msgstr "Připojit k bezdrátové síti" + +# +msgid "Connected satellites" +msgstr "Připojené satelity" + +# +msgid "Connected to" +msgstr "Připojeno k" + +# +msgid "Connected!" +msgstr "Připojeno!" + +# +msgid "Constellation" +msgstr "Sestava" + +# +msgid "Content does not fit on DVD!" +msgstr "Obsah se nevejde na DVD!" + +msgid "Continue" +msgstr "Pokračovat" + +# +msgid "Continue in background" +msgstr "Pokračovat na pozadí" + +# +msgid "Continue playback" +msgstr "Pokračovat v přehrávání" + +# +msgid "Continue playing" +msgstr "pokračovat v přehrávání" + +msgid "Continues play (loop)" +msgstr "přehrát další (opakování ve smyčce)" + +# +msgid "Contrast" +msgstr "Kontrast" + +msgid "Convert ext3 filesystem to ext4" +msgstr "Konvertovat ext3 systém souborů na ext4" + +msgid "Convert ext3 to ext4" +msgstr "Konverze ext3 na ext4" + +msgid "Converting ext3 to ext4..." +msgstr "Konverze ext3 na ext4..." + +msgid "Copy" +msgstr "Kopírovat" + +msgid "Could not connect to receiver .NFI image feed server:" +msgstr "Nelze se připojit ke zdrojovému serveru s .NFI image" + +msgid "Could not find installed channel list." +msgstr "Nelze najít nainstalováný seznam kanálů." + +# +msgid "Could not load medium! No disc inserted?" +msgstr "Nelze načíst médium. Není vložen disk?" + +# +msgid "Could not open Picture in Picture" +msgstr "Nelze otevřít obraz v obraze" + +# +#, python-format +msgid "Could not record due to conflicting timer %s" +msgstr "Nelze nahrávat z důvodu konfliktu časovače %s" + +#, python-format +msgid "Could not record due to invalid service %s" +msgstr "Nelze nahrávat z důvodu neplatného programu %s" + +# +msgid "Create DVD-ISO" +msgstr "vytvořit DVD-ISO" + +# +msgid "Create more detailed crash log" +msgstr "Vytvářet podrobnější crash log" + +# +#, python-format +msgid "Creating directory %s failed." +msgstr "Založení adresáře %s se nezdařilo." + +# +msgid "Creating filesystem" +msgstr "Zakládá se souborový systém" + +# +msgid "Creating partition" +msgstr "Zakládá se tabulka rozdělení disku" + +# +msgid "Croatian" +msgstr "Chorvatsky" + +msgid "Current CEC address" +msgstr "Současná CEC adresa" + +msgid "Current device: " +msgstr "Aktuální zařízení: " + +msgid "Current event EPG" +msgstr "EPG aktuálního pořadu" + +#, python-format +msgid "Current mode: %s \n" +msgstr "Aktuální mód: %s \n" + +# +msgid "Current settings:" +msgstr "Aktuální nastavení:" + +# +msgid "Current transponder" +msgstr "Aktuální transponder" + +# +msgid "Current value: " +msgstr "Aktuální hodnota: " + +# +msgid "Current version:" +msgstr "Aktuální verze:" + +msgid "Currently installed image" +msgstr "Nainstalované image" + +msgid "Currently the commit log cannot be retrieved - please try later again" +msgstr "V současné době není možné získat aktuální seznam změn - prosím, zkuste to později" + +# +msgid "Custom skip time for '1'/'3' buttons" +msgstr "Vlastní časový posun pro tlačítka '1'/'3'" + +# +msgid "Custom skip time for '4'/'6' buttons" +msgstr "Vlastní časový posun pro tlačítka '4'/'6'" + +# +msgid "Custom skip time for '7'/'9' buttons" +msgstr "Vlastní časový posun pro tlačítka '7'/'9'" + +# +msgid "Customize" +msgstr "Přizpůsobení" + +# +msgid "Customize channel list cursor behavior" +msgstr "Chování kurzoru v seznamu kanálů" + +# +msgid "Cut" +msgstr "Střih" + +# +msgid "Cutlist editor..." +msgstr "Editor střihu..." + +# +msgid "Czech" +msgstr "Česky" + +# +msgid "D" +msgstr "D" + +# +msgid "DHCP" +msgstr "DHCP" + +# +msgid "DMM advanced" +msgstr "rozšířené" + +msgid "DMM normal" +msgstr "normální" + +# +msgid "DUAL LAYER DVD" +msgstr "DVOUVRSTVÉ DVD" + +# +msgid "DVB subtitle black transparency" +msgstr "Průhlednost pozadí DVD titulků" + +msgid "DVB-C" +msgstr "DVB-C" + +msgid "DVB-C ANNEX C" +msgstr "DVB-C ANNEX C" + +# +msgid "DVB-S" +msgstr "DVB-S" + +# +msgid "DVB-S2" +msgstr "DVB-S2" + +msgid "DVB-T" +msgstr "DVB-T" + +msgid "DVB-T2" +msgstr "DVB-T2" + +msgid "DVD data format" +msgstr "DVD datový formát" + +# +msgid "DVD file browser" +msgstr "DVD prohlížeč souborů" + +# +msgid "DVD media toolbox" +msgstr "DVD media nástroje" + +# +msgid "DVD player" +msgstr "DVD přehrávač" + +# +msgid "DVD titlelist" +msgstr "DVD seznam titulů" + +# +msgid "Danish" +msgstr "Dánsky" + +# +msgid "Date" +msgstr "Datum" + +# +msgid "Date/time input" +msgstr "Nastavení data/času" + +# +msgid "Deep standby" +msgstr "Hluboký spánek" + +# +msgid "Default" +msgstr "Defaultní" + +# +msgid "Default movie location" +msgstr "Standardní umístění souborů" + +# +msgid "Default settings" +msgstr "Standardní nastavení" + +# +msgid "Delay before key repeat starts:" +msgstr "Zpoždění před opakováním:" + +msgid "Delay for external subtitles" +msgstr "Zpoždění externích titulků" + +# +msgid "Delete" +msgstr "Smazat" + +# +msgid "Delete entry" +msgstr "smazat položku" + +# +msgid "Delete failed!" +msgstr "Vymazání selhalo!" + +# +msgid "Delete file" +msgstr "Smazat soubor" + +# +msgid "Delete playlist entry" +msgstr "Smazat položku playlistu" + +# +msgid "Delete saved playlist" +msgstr "Smazat uložený playlist" + +# +msgid "Delete timer" +msgstr "Odstranit časovač" + +# +msgid "Delete..." +msgstr "Smazat...." + +msgid "Deleted" +msgstr "Mazáno" + +# +msgid "Deleted items" +msgstr "Smazané položky" + +# +msgid "Depth" +msgstr "Hloubka" + +# +msgid "Descramble http streams" +msgstr "Dekódovat http streamy" + +# +msgid "Description" +msgstr "Popis" + +# +msgid "Deselect" +msgstr "Odebrat" + +msgid "Details for plugin: " +msgstr "Detaily pluginu: " + +# +msgid "Detected HDD:" +msgstr "Detekován HDD:" + +# +msgid "Detected NIMs:" +msgstr "Detekován NIMs:" + +# +msgid "Devicename:" +msgstr "Název zařízení:" + +# +msgid "Devide" +msgstr "rozdělené" + +# +msgid "DiSEqC" +msgstr "DiSEqC" + +# +msgid "DiSEqC 1.0 command" +msgstr "" + +# +msgid "DiSEqC 1.1 command" +msgstr "" + +# +msgid "DiSEqC 1.1 repeats" +msgstr "DiSEqC 1.1 opakování" + +# +msgid "DiSEqC A/B" +msgstr "DiSEqC A/B" + +# +msgid "DiSEqC A/B/C/D" +msgstr "DiSEqC A/B/C/D" + +# +msgid "DiSEqC mode" +msgstr "DiSEqC mód" + +# +#, python-format +msgid "DiSEqC port %s: %s" +msgstr "DiSEqC port %s: %s" + +# +msgid "DiSEqC-tester settings" +msgstr "Nastavení DiSEqC testeru" + +# +msgid "Dialing:" +msgstr "Vytáčení:" + +# +msgid "Digital contour removal" +msgstr "Odstranění digitálních kontur" + +# +msgid "Direct playback of linked titles without menu" +msgstr "Okamžité přehrávání připojených titulů bez menu" + +# +msgid "Directory" +msgstr "adresář" + +# +#, python-format +msgid "Directory %s does not exist." +msgstr "Adresář %s neexistuje." + +#, python-format +msgid "Directory %s nonexistent." +msgstr "Neexistující adresář %s." + +# +msgid "Directory browser" +msgstr "Prohlížeč adresářů" + +#, python-format +msgid "Directory contains %d file(s) and %d sub-directories.\n" +msgstr "Adresář obsahuje %d souborů a %d podadresářů.\n" + +#, python-format +msgid "Directory contains %s and %s." +msgstr "Adresář obsahuje %s a %s." + +# +msgid "Disable" +msgstr "Zakázat" + +# +msgid "Disable Picture in Picture" +msgstr "Vypnout obraz v obraze" + +msgid "Disable background scanning" +msgstr "Zakázat prohledávání na pozadí" + +# +msgid "Disable timer" +msgstr "Zakázat časovač" + +# +msgid "Disabled" +msgstr "zakázán" + +# +msgid "Disconnect" +msgstr "Odpojit" + +msgid "Disk space to reserve for recordings (in GB)" +msgstr "Rezerva volného místa pro nahrávání (v GB)" + +# +msgid "Display 16:9 content as" +msgstr "Zobrazovat obraz 16:9 jako" + +# +msgid "Display 4:3 content as" +msgstr "Zobrazovat obraz 4:3 jako" + +# +msgid "Display >16:9 content as" +msgstr "Zobrazovat >16:9 obsah jako" + +# +msgid "Display and userinterface" +msgstr "Displej a uživatelské rozhraní" + +msgid "Display message before playing next movie" +msgstr "Zobrazovat zprávu před dalším přehrávaným filmem" + +# +msgid "Display setup" +msgstr "Nastavení displeje" + +# +msgid "Do not change" +msgstr "Neměnit" + +# +msgid "Do not record" +msgstr "Nenahrávat" + +# +msgid "Do nothing" +msgstr "Nedělat nic" + +# +msgid "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" +msgstr "" +"Opravdu chcete zkontrolovat souborový systém?\n" +"Může to trvat dlouho!" + +msgid "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" +msgstr "" +"Opravdu chcete převést systém souborů?\n" +"Nelze se vrátit zpět!" + +# +#, python-format +msgid "Do you really want to delete %s?" +msgstr "Opravdu chcete smazat \"%s\"?" + +# +#, python-format +msgid "" +"Do you really want to download\n" +"the plugin \"%s\"?" +msgstr "" +"Chcete opravdu stáhnout\n" +"plugin \"%s\"?" + +# +msgid "Do you really want to exit?" +msgstr "Opravdu chcete ukončit?" + +# +msgid "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" +msgstr "" +"Opravdu chcete inicializovat zařízení?\n" +"Všechna data na disku budou ztracena!" + +# +#, python-format +msgid "" +"Do you really want to remove\n" +"the plugin \"%s\"?" +msgstr "" +"Chcete opravdu odstranit\n" +"plugin \"%s\"?" + +# +#, python-format +msgid "Do you really want to remove directory %s from the disk?" +msgstr "Chcete opravdu odstranit z disku adresář %s?" + +# +#, python-format +msgid "Do you really want to remove your bookmark of %s?" +msgstr "Chcete opravdu smazat Vaši záložku z %s?" + +msgid "Do you want this?" +msgstr "Chcete to?" + +# +msgid "Do you want to burn this collection to DVD medium?" +msgstr "Chcete vypálit tuto kompilaci na DVD?" + +# +msgid "Do you want to do a service scan?" +msgstr "Chcete vyhledat programy?" + +# +msgid "Do you want to do another manual service scan?" +msgstr "Chcete provést další ruční prohledávání?" + +#, python-format +msgid "Do you want to download the image to %s ?" +msgstr "Chcete stáhnout image do %s?" + +# +msgid "Do you want to install a channel list?" +msgstr "Chcete nainstalovat seznam programů?" + +# +msgid "Do you want to install the package:\n" +msgstr "Přejete si nainstalovat balíček:\n" + +# +msgid "Do you want to play DVD in drive?" +msgstr "Chcete přehrát DVD v mechanice?" + +# +msgid "Do you want to preview this DVD before burning?" +msgstr "Chcete si toto DVD před vypálením prohlédnout?" + +msgid "Do you want to reboot your receiver?" +msgstr "Chcete přijímač restartovat?" + +# +msgid "Do you want to remove the package:\n" +msgstr "Chcete odstranit balíček:\n" + +# +msgid "Do you want to restore your settings?" +msgstr "Chcete obnovit Vaše nastavení?" + +# +msgid "Do you want to resume this playback?" +msgstr "Chcete obnovit přehrávání?" + +#, python-format +msgid "Do you want to update your receiver to %s?" +msgstr "Chcete zaktualizovat Váš přijímač na %s?" + +msgid "Do you want to update your receiver?" +msgstr "Chcete zaktualizovat Váš přijímač?" + +# +msgid "Do you want to upgrade the package:\n" +msgstr "Chcete aktualizovat balíček:\n" + +# +msgid "Don't stop current event but disable coming events" +msgstr "Nezastavovat aktuální událost, ale zakázat následující události" + +# +#, python-format +msgid "Done - Installed, upgraded or removed %d package (%s)" +msgid_plural "Done - Installed, upgraded or removed %d packages (%s)" +msgstr[0] "Dokončeno - instalován, aktualizován nebo odstraněn %d balíček (%s)" +msgstr[1] "Dokončeno - instalovány, aktualizovány nebo odstraněny %d balíčky (%s)" +msgstr[2] "Dokončeno - instalováno, aktualizováno nebo odstraněno %d balíčků (%s)" + +# +msgid "Download" +msgstr "Stáhnout" + +#, python-format +msgid "Download %s from server" +msgstr "Stahnout %s ze serveru" + +msgid "Download .NFI-files for USB-flasher" +msgstr "Stáhnout .NFI-soubory pro USB-Flasher" + +# +msgid "Download plugins" +msgstr "Stáhnout pluginy" + +# +msgid "Downloadable new plugins" +msgstr "Instalovat nové pluginy" + +# +msgid "Downloadable plugins" +msgstr "Stažitelné pluginy" + +# +msgid "Downloading" +msgstr "Stahuji" + +# +msgid "Downloading plugin information. Please wait..." +msgstr "Stahuji informace o pluginech. Prosím, čekejte..." + +# +msgid "Dutch" +msgstr "Holandsky" + +# +msgid "Dynamic contrast" +msgstr "Dynamický kontrast" + +# +msgid "E" +msgstr "Východní" + +msgid "EPG" +msgstr "" + +# +msgid "EPG language selection 1" +msgstr "EPG jazyk 1" + +# +msgid "EPG language selection 2" +msgstr "EPG jazyk 2" + +# +msgid "EPG selection" +msgstr "Výběr EPG" + +msgid "EPG settings" +msgstr "Nastavení EPG" + +# +#, python-format +msgid "ERROR - failed to scan (%s)!" +msgstr "CHYBA - prohledávání selhalo (%s)!" + +# +msgid "East" +msgstr "Východní" + +msgid "East limit set" +msgstr "Východní limit nastaven" + +# +msgid "Edit" +msgstr "Upravit" + +# +msgid "Edit DNS" +msgstr "Upravit DNS" + +# +msgid "Edit bouquets list" +msgstr "Upravit seznam přehledů" + +# +msgid "Edit chapters of current title" +msgstr "Upravit kapitoly zvoleného titulu" + +# +msgid "Edit services list" +msgstr "Upravit seznam programů" + +# +msgid "Edit settings" +msgstr "upravit nastavení" + +msgid "Edit the nameserver configuration of your receiver.\n" +msgstr "Upravuje nastavení DNS.\n" + +msgid "Edit the network configuration of your receiver.\n" +msgstr "Upravuje nastavení sítě.\n" + +# +msgid "Edit timer" +msgstr "Upravit časovač" + +# +msgid "Edit title" +msgstr "Upravit titul" + +# +msgid "Edit upgrade source url." +msgstr "Upravit url zdroje aktualizací." + +msgid "Education/Science/..." +msgstr "vzdělání/věda..." + +# +msgid "Electronic Program Guide" +msgstr "EPG" + +# +msgid "Enable" +msgstr "Povolit" + +msgid "Enable 'neutrino' style channel select controlling" +msgstr "" + +msgid "Enable 'neutrino' style zap controlling" +msgstr "" + +# +msgid "Enable 5V for active antenna" +msgstr "Povolit 5V pro aktivní anténu" + +# +msgid "Enable EIT EPG" +msgstr "Povolit EIT EPG" + +# +msgid "Enable MHW EPG" +msgstr "Povolit MHW EPG" + +# +msgid "Enable Netmed EPG" +msgstr "Povolit Netmed EPG" + +msgid "Enable OK for channel selection" +msgstr "Povolit OK pro výběr kanálu" + +msgid "Enable ViaSat EPG" +msgstr "Povolit ViaSat EPG" + +# +msgid "Enable Virgin EPG" +msgstr "Povolit Virgin EPG" + +# +msgid "Enable Wake On LAN" +msgstr "Povolit Wake On LAN" + +msgid "Enable auto fast scan" +msgstr "Povolit automatický Fast scan" + +msgid "Enable bouquet selection in multi-EPG" +msgstr "Povolit výběr přehledu při spuštění multi-EPG" + +msgid "Enable freesat EPG" +msgstr "Povolit freesat EPG" + +# +msgid "Enable multiple bouquets" +msgstr "Povolit vícenásobné přehledy" + +# +msgid "Enable parental control" +msgstr "Povolit rodičovský zámek" + +msgid "Enable teletext caching" +msgstr "Povolit caching teletextu" + +msgid "Enable zapping with CH+/-, B+/-, P+/-" +msgstr "Povolit přepínání s CH+/-, B+/-, P+/-" + +# +msgid "Enabled" +msgstr "Povolen" + +# +msgid "Encrypted: " +msgstr "Zabezpečeno:" + +# +msgid "Encryption" +msgstr "Zabezpečení" + +# +msgid "Encryption key" +msgstr "Šifrovací klíč" + +# +msgid "Encryption key type" +msgstr "Klíč:" + +# +msgid "Encryption:" +msgstr "Zabezpečení:" + +# +msgid "End time" +msgstr "Čas konce" + +msgid "End time to ignore inactivity sleeptimer" +msgstr "Konec ignorování časovače neaktivity" + +# +msgid "End time to ignore shutdown in standby" +msgstr "Konec ignorování vypnutí ve standby" + +# +msgid "English" +msgstr "Anglicky" + +msgid "Enigma2 skin selector" +msgstr "Enigma2 výběr skinu" + +# +msgid "Enter main menu..." +msgstr "Hlavní menu..." + +# +msgid "Enter pin code" +msgstr "Zadejte pin kód" + +# +msgid "Enter the service pin" +msgstr "Zadejte programový PIN" + +# +msgid "Equal to" +msgstr "stejné s" + +# +msgid "Error" +msgstr "Chyba" + +# +msgid "Error code" +msgstr "Kód chyby" + +# +msgid "Error executing plugin" +msgstr "Chyba při provádění pluginu" + +# +#, python-format +msgid "" +"Error: %s\n" +"Retry?" +msgstr "" +"Chyba: %s\n" +"opakovat?" + +# +msgid "Estonian" +msgstr "Estonsky" + +msgid "Ethernet network interface" +msgstr "Ethernet síťové rozhraní" + +msgid "Event font size (relative to skin size)" +msgstr "Velikost písma pro událost (relativně k velikosti skinu)" + +# +msgid "Event view" +msgstr "Zobrazení události" + +# +msgid "Event view menu" +msgstr "Menu přehledu událostí" + +# +msgid "Everywhere" +msgstr "všude" + +# +msgid "Exceeds dual layer medium!" +msgstr "Překračuje kapacitu dvouvrstvého média!" + +# +msgid "Execution finished!!" +msgstr "Dokončeno!" + +# +msgid "Execution progress:" +msgstr "Provádí se:" + +# +msgid "Exif" +msgstr "" + +# +msgid "Exit" +msgstr "Ukončit" + +msgid "Exit EPG" +msgstr "Zavřít EPG" + +# +msgid "Exit editor" +msgstr "ukončit editor" + +msgid "Exit input device selection." +msgstr "Zavřít výběr vstupních zařízení" + +msgid "Exit media player?" +msgstr "Zavřít přehrávač?" + +# +msgid "Exit mediaplayer" +msgstr "Ukončit přehrávač médií" + +# +msgid "Exit movie list" +msgstr "Zavřít seznam filmů" + +msgid "Exit movie player?" +msgstr "Zavřít přehrávač?" + +# +msgid "Exit nameserver configuration" +msgstr "Zavřít konfiguraci DNS" + +# +msgid "Exit network interface list" +msgstr "Zavřít seznam síťových rozhraní" + +# +msgid "Exit network wizard" +msgstr "Ukončit síťového průvodce" + +# +msgid "Exit the wizard" +msgstr "Ukončit průvodce" + +msgid "Expert" +msgstr "expertní" + +msgid "Extend sleeptimer 15 minutes" +msgstr "Přidat 15 minut k časovači usínání" + +# +msgid "Extended Software" +msgstr "Rozšířené programy" + +# +msgid "Extended Software Plugin" +msgstr "Plugin rozšíření programů" + +# +msgid "Extended network setup plugin..." +msgstr "Plugin pro rozšířené nastavování sítě..." + +# +msgid "Extended setup..." +msgstr "Rozšířené nastavení..." + +# +msgid "Extensions" +msgstr "Rozšíření" + +# +msgid "Extensions management" +msgstr "Správa rozšíření" + +msgid "External PiP" +msgstr "Externí PiP" + +msgid "External subtitle color" +msgstr "Barva externích titulků" + +msgid "Extra motor options" +msgstr "Další nastavení motoru" + +# +msgid "FEC" +msgstr "FEC" + +msgid "FTA" +msgstr "" + +# +msgid "Factory reset" +msgstr "Tovární nastavení" + +# +msgid "Failed" +msgstr "Selhalo" + +msgid "Failed to write /tmp/positionersetup.log: " +msgstr "Selhal zápis do /tmp/positionersetup.log: " + +# +#, python-format +msgid "Fan %d" +msgstr "vent: %d" + +# +#, python-format +msgid "Fan %d PWM" +msgstr "PWM ventilátoru %d" + +# +#, python-format +msgid "Fan %d voltage" +msgstr "Napětí ventilátoru %d" + +msgid "Fan operation" +msgstr "Režim ventilátoru" + +msgid "Fan speed" +msgstr "Rychlost ventilátoru" + +# +msgid "Fast" +msgstr "Rychle" + +# +msgid "Fast DiSEqC" +msgstr "Rychlý DiSEqC" + +# +msgid "Fast Scan" +msgstr "Fast Scan" + +# +msgid "Fast epoch" +msgstr "Rychlé období" + +# +msgid "Fast forward speeds" +msgstr "Rychlosti přetáčení vpřed" + +# +msgid "Favourites" +msgstr "Oblíbené" + +msgid "File appears to be busy.\n" +msgstr "Soubor se zdá být zaneprázdněn.\n" + +# +msgid "Filesystem check" +msgstr "Kontrola souborového systému" + +msgid "Final position at" +msgstr "Konečná pozice na" + +msgid "Final position at index" +msgstr "Konečná pozice na indexu" + +msgid "Fine movement" +msgstr "Jemné natáčení" + +# +msgid "Finetune" +msgstr "Jemné ladění" + +# +msgid "Finished" +msgstr "Dokončeno" + +# +msgid "Finished configuring your network" +msgstr "Konfigurace sítě dokončena" + +msgid "Finished restarting your network" +msgstr "Dokončeno restartování sítě" + +# +msgid "Finnish" +msgstr "Finsky" + +# +msgid "Fixed" +msgstr "Pevná" + +# +msgid "Flash" +msgstr "Nahrát" + +# +msgid "Flashing failed" +msgstr "Nahrání selhalo" + +# +msgid "Following tasks will be done after you press OK!" +msgstr "Následující úlohy budou provedeny po stisknutí OK!" + +# +msgid "Format" +msgstr "Formát" + +msgid "Forward volume keys" +msgstr "Předávat hlasitost" + +# +msgid "Frame size in full view" +msgstr "Velikost rámečku při plném zobrazení" + +# +msgid "French" +msgstr "Francouzsky" + +# +msgid "Frequency" +msgstr "Frekvence" + +# +msgid "Frequency bands" +msgstr "Frekvenční pásma" + +# +msgid "Frequency scan step size(khz)" +msgstr "Frekvenční prohledávání po (khz)" + +# +msgid "Frequency steps" +msgstr "Frekvenční kroky" + +msgid "Frequency:" +msgstr "Frekvence:" + +# +msgid "Fri" +msgstr "Pá" + +# +msgid "Friday" +msgstr "Pátek" + +msgid "From :" +msgstr "Z :" + +# +#, python-format +msgid "Frontprocessor version: %d" +msgstr "Frontprocesor verze: %d" + +# +msgid "Full transparency" +msgstr "Průhledné" + +msgid "Fulview resulution" +msgstr "Plné rozlišení" + +msgid "Function of OK button" +msgstr "Funkce tlačítka OK" + +# +msgid "Further Options" +msgstr "Další možnosti" + +# +msgid "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" +msgstr "" +"Pro uplatnění skinu je potřeba restartovat GUI\n" +"Chcete nyní restartovat GUI?" + +# +msgid "Gateway" +msgstr "Brána" + +# +msgid "General AC3 delay" +msgstr "Hlavní AC3 zpoždění" + +# +msgid "General PCM delay" +msgstr "Hlavní PCM zpoždění" + +# +msgid "Genre" +msgstr "Žánr" + +# +msgid "German" +msgstr "Německy" + +msgid "Get latest experimental image" +msgstr "Získat poslední experimentální image" + +msgid "Get latest release image" +msgstr "Získat poslední uvolněné image" + +# +msgid "Getting plugin information. Please wait..." +msgstr "Získávám informace o pluginu. Prosím, čekejte..." + +# +msgid "Go down the list" +msgstr "v seznamu dolů" + +# +msgid "Go to first movie or last item" +msgstr "na první film nebo poslední položku" + +# +msgid "Go to first movie or top of list" +msgstr "na první film nebo začátek seznamu" + +msgid "Go to first service" +msgstr "Přejít na první program" + +msgid "Go to last service" +msgstr "Přejít na poslední program" + +msgid "Go to next event" +msgstr "Přejít na další událost" + +msgid "Go to next page of service" +msgstr "Přejít na další stránku programu" + +msgid "Go to previous event" +msgstr "Přejít na předchozí událost" + +msgid "Go to previous page of service" +msgstr "Přejít na předchozí stránku programu" + +# +msgid "Go up the list" +msgstr "v seznamu nahoru" + +msgid "Goto" +msgstr "Přejít na" + +# +msgid "Goto 0" +msgstr "Jít na pozici 0" + +msgid "Goto :" +msgstr "Na:" + +msgid "Goto X" +msgstr "Přejít na X" + +msgid "Goto index position" +msgstr "Přejít na indexovou pozici" + +msgid "Goto next day of events" +msgstr "Přejít na další den" + +msgid "Goto next page of events" +msgstr "Přejít na další stránku událostí" + +# +msgid "Goto position" +msgstr "Jdi na pozici" + +msgid "Goto previous day of events" +msgstr "Přejít na předchozí den" + +msgid "Goto previous page of events" +msgstr "Přejít na předchozí stránku událostí" + +msgid "Goto specific date/time" +msgstr "Přejít na zadané datum/čas" + +msgid "GotoX calibration" +msgstr "Kalibrace Přejít na X" + +msgid "GraphMultiEpg Settings" +msgstr "Nastavení GraphMultiEPG" + +# +msgid "Graphical Multi EPG" +msgstr "Grafická Multi EPG" + +# +msgid "Greek" +msgstr "Řecky" + +# +msgid "Green boost" +msgstr "Zesílení zelené" + +msgid "Guard interval" +msgstr "Ochranný interval" + +msgid "HD list" +msgstr "Seznam HD" + +# +msgid "HDMI-CEC setup" +msgstr "Nastavení HDMI-CEC" + +msgid "Handle standby from TV" +msgstr "Zachytávat standby z TV" + +msgid "Handle wakeup from TV" +msgstr "Zachytávat probouzení z TV" + +# +msgid "Hard disk" +msgstr "Pevný disk" + +# +msgid "Hard disk setup" +msgstr "Nastavení pevného disku" + +# +msgid "Hard disk standby after" +msgstr "Uspat pevný disk po" + +# +msgid "Harddisk" +msgstr "Pevný disk" + +msgid "Hardware: " +msgstr "Hardware: " + +msgid "Hebrew" +msgstr "Hebrejsky" + +msgid "Helps setting up your dish" +msgstr "Pomáhá nastavit parabolu" + +msgid "Hidden network" +msgstr "Skrytá síť" + +msgid "Hide CI messages" +msgstr "Skrýt CI zprávy" + +msgid "Hide channel list in radio mode" +msgstr "Skrýt seznam programů v radio módu" + +msgid "Hide known extensions" +msgstr "Nezobrazovat známé přípony" + +msgid "Hide number markers" +msgstr "Skrýt číslo značky" + +# +msgid "Hide player" +msgstr "Skrýt přehrávač" + +# +msgid "Hide zap errors" +msgstr "Skrýt chyby při přepínání" + +msgid "Hierarchy info" +msgstr "Informace o hierarchii" + +# +msgid "Hierarchy information" +msgstr "Hierarchické informace" + +# +msgid "High bitrate support" +msgstr "Podpora High bitrate" + +msgid "Hold screen" +msgstr "Zachytit obrazovku" + +# +msgid "Hold till locked" +msgstr "Počkat na uzamčení" + +# +msgid "Home" +msgstr "domů" + +# +msgid "Horizontal" +msgstr "Horizontální" + +msgid "Horizontal turning speed" +msgstr "Horizontální rychlost ladění" + +# +msgid "How many minutes do you want to record?" +msgstr "Kolik minut chcete nahrát?" + +# +msgid "Hue" +msgstr "Odstín" + +# +msgid "Hungarian" +msgstr "Maďarsky" + +msgid "IP address" +msgstr "IP adresa" + +# +msgid "ISO file is too large for this filesystem!" +msgstr "soubor ISO je příliš veliký pro tento systém" + +# +msgid "ISO path" +msgstr "umístění ISO souboru" + +# +msgid "Icons" +msgstr "ikony" + +# +msgid "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." +msgstr "" +"Pokud vidíte, že je něco špatného s\n" +"vaším scart propojením, stiskněte OK pro návrat." + +# +msgid "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." +msgstr "" +"Pokud má Vaše TV rozšířené nastavení jasu a kontrastu, vypněte ho. Pokud je v menu položka nazvaná jako \"dynamické\", nastavte ji na standardní hodnotu. Nastavte stupeň podsvětlení dle Vaší chuti. Snižte kontrast na Vaší TV na nejnižší hodnotu.\n" +"Poté nastavte světlost na nejnižší hodnotu, ale ujistěte se, že poslední dva odstíny šedé jsou rozpoznatelné.\n" +"Nemějte obavy o světlé stíny. Budou nastaveny v dalším kroku.\n" +"Pokud jste spokojeni s výsledkem, stiskněte OK." + +msgid "Image: " +msgstr "" + +# +msgid "Immediate shutdown" +msgstr "Ihned vypnout" + +# +msgid "In order to record a timer, the TV was switched to the recording service!\n" +msgstr "Aby mohla být zaznamenána událost z časovače, bylo přepnuto na nahrávaný program!\n" + +# +msgid "In progress" +msgstr "Průběh" + +msgid "Inactivity Sleeptimer" +msgstr "Časovač neaktivity" + +# +msgid "Include AIT in http streams" +msgstr "Včetně AIT v http streamech" + +# +msgid "Include ECM in http streams" +msgstr "Včetně ECM v http streamech" + +# +msgid "Include EIT in http streams" +msgstr "Včetně EIT v http streamech" + +msgid "Incorrect type service for PiP!" +msgstr "Nekorektní typ služby pro PiP!" + +# +msgid "Increased voltage" +msgstr "Zvýšit napětí" + +# +msgid "Index" +msgstr "Index" + +msgid "Index allocated:" +msgstr "Index přiřazen:" + +# +msgid "Info" +msgstr "Informace" + +# +msgid "Info bar" +msgstr "InfoBar" + +# +msgid "Info bar timeout" +msgstr "Doba po které skrývat infobar" + +msgid "Infobar frontend data source" +msgstr "Zdroj Infobar frontend dat" + +# +msgid "Information" +msgstr "Informace" + +# +msgid "Init" +msgstr "Init" + +# +msgid "Initial fast forward speed" +msgstr "Počáteční rychlost pro přetáčení dopředu" + +# +msgid "Initial location in new timers" +msgstr "Počáteční umístění v nových časovačích" + +msgid "Initial lock ratio" +msgstr "Zachovat původní poměr" + +# +msgid "Initial rewind speed" +msgstr "Počáteční rychlost pro přetáčení zpět" + +msgid "Initial signal quality" +msgstr "Počáteční kvalita signálu" + +msgid "Initial signal quality:" +msgstr "Počáteční kvalita signálu:" + +# +msgid "Initialization" +msgstr "Inicializace" + +# +msgid "Initialize" +msgstr "Inicializovat" + +# +msgid "Initializing storage device..." +msgstr "Inicializace zařízení pro ukládání..." + +# +msgid "Input" +msgstr "Zadání" + +msgid "Input device setup" +msgstr "Nastavení vstupního zařízení" + +msgid "Input devices" +msgstr "Vstupní zařízení" + +# +msgid "Install" +msgstr "Instalovat" + +# +msgid "Install a new image with a USB stick" +msgstr "Instalovat nové image pomocí USB zařízení" + +# +msgid "Install a new image with your web browser" +msgstr "Instalovat nové image pomocí web prohlížeče" + +# +msgid "Install channel list" +msgstr "Instalovat seznam programů" + +# +msgid "Install extensions" +msgstr "Instalovat rozšíření" + +# +msgid "Install extensions." +msgstr "Instalovat rozšíření." + +# +msgid "Install local extension" +msgstr "Instalovat místní rozšíření" + +# +msgid "Install picons on" +msgstr "Instalovat picons do" + +# +msgid "Install softcam" +msgstr "Instalovat softcam" + +msgid "Installation has completed." +msgstr "Instalace byla dokončena." + +# +msgid "Installation or removal has completed." +msgstr "Instalace nebo odstranění dokončeno." + +# +msgid "Installing" +msgstr "Instaluji" + +# +msgid "Installing software..." +msgstr "Instalace software..." + +# +msgid "Instant recording location" +msgstr "Okamžité nahrávání" + +# +msgid "Instant recording..." +msgstr "Okamžité nahrávání..." + +# +msgid "Interface: " +msgstr "Interface: " + +# +msgid "Intermediate" +msgstr "střední" + +# +msgid "Internal flash" +msgstr "Vnitřní flash" + +# +msgid "Internal hdd only" +msgstr "pouze interní disk" + +# +msgid "Interval between keys when repeating:" +msgstr "Rychlost opakování:" + +# +#, python-format +msgid "Invalid directory selected: %s" +msgstr "Zvolen neplatný adresář: %s" + +# +msgid "Invalid location" +msgstr "Neplatné umístění" + +# +msgid "Invalid transponder data" +msgstr "neplatná data transponderu" + +# +msgid "Inversion" +msgstr "Inverze" + +# +msgid "Invert" +msgstr "Inverze" + +# +msgid "Ipkg" +msgstr "Ipkg" + +msgid "Is this setting ok?" +msgstr "Použít toto nastavení?" + +# +msgid "Is this video mode ok?" +msgstr "Je tento videomód vpořádku?" + +# +msgid "Italian" +msgstr "Italsky" + +msgid "Items per page " +msgstr "Položek na stránku" + +msgid "Items per page for list screen" +msgstr "Položek na stránku pro seznam" + +# +msgid "Job overview" +msgstr "Přehled práce" + +msgid "Jump to beginning of list" +msgstr "Na začátek seznamu" + +# +msgid "Jump to end of list" +msgstr "Přejít na konec seznamu" + +# +msgid "Jump to next marked position" +msgstr "Na další označenou pozici" + +# +msgid "Jump to previous marked position" +msgstr "Na předchozí označenou pozici" + +# +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect) +msgid "Just scale" +msgstr "Celá obrazovka (nedodržuje poměr stran)" + +# +msgid "Keep service" +msgstr "zůstat na programu" + +msgid "Kernel version: " +msgstr "Verze kernelu: " + +# +msgid "Keyboard" +msgstr "Klávesnice" + +# +msgid "Keyboard map" +msgstr "Rozložení kláves" + +# +msgid "Keyboard setup" +msgstr "Nastavení klávesnice" + +# +msgid "LAN adapter" +msgstr "Síťová karta" + +msgid "LAN connection" +msgstr "LAN připojení" + +# +msgid "LNB" +msgstr "LNB" + +# +msgid "Language" +msgstr "Jazyk" + +# +msgid "Language selection" +msgstr "Výběr jazyka" + +# +msgid "Last config" +msgstr "Poslední konfigurace" + +# +msgid "Last speed" +msgstr "Poslední rychlost" + +msgid "Last upgrade: " +msgstr "Poslední aktualizace: " + +# +msgid "Latest Commits" +msgstr "Poslední změny" + +# +msgid "Latitude" +msgstr "Zeměpisná šířka" + +# +msgid "Latvian" +msgstr "Lotyšsky" + +# +msgid "Leave DVD player?" +msgstr "Zavřít DVD přehrávač?" + +# +msgid "Left" +msgstr "Vlevo" + +msgid "Left from servicename" +msgstr "Nalevo od názvu kanálu" + +msgid "Leisure hobbies" +msgstr "Volný čas, zájmy, koníčky" + +# +#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term. +msgid "Letterbox" +msgstr "Letterbox" + +msgid "Letterbox zoom" +msgstr "" + +# +msgid "Limit character set for recording filenames" +msgstr "Omezená znaková sada pro názvy nahrávaných souborů" + +# +msgid "Limit east" +msgstr "Východní limit" + +msgid "Limit the characters that can be used in recording filenames to (7 bit) ascii. This ensures compatibility with operating systems or file systems with limited character sets." +msgstr "Omezí znaky použité v názvech souborů při nahrávání na (7-bitové) ascii. To zajistí kompatibilitu s operačními systémy nebo souborovými systémy s omezenou znakovou sadou." + +# +msgid "Limit west" +msgstr "Západní limit" + +msgid "Limits cancelled" +msgstr "Limity zrušeny" + +msgid "Limits enabled" +msgstr "Limity povoleny" + +# +msgid "Limits off" +msgstr "Vypnout limity" + +# +msgid "Limits on" +msgstr "Zapnout limity" + +# +msgid "Link quality:" +msgstr "Kvalita spojení:" + +# +msgid "Link:" +msgstr "Spojení:" + +# +msgid "Linked titles with a DVD menu" +msgstr "Připojené tituly s DVD nabídkou" + +# +msgid "List EPG functions..." +msgstr "Seznam funkcí EPG..." + +msgid "List available networks" +msgstr "Seznam dostupných sítí" + +msgid "List mode" +msgstr "Seznam" + +# +msgid "List of storage devices" +msgstr "Seznam záznamových zařízení" + +msgid "List type" +msgstr "Typ seznamu" + +#, python-format +msgid "List version %d, found %d channel" +msgid_plural "List version %d, found %d channels" +msgstr[0] "Seznam verze %d, nalezen %d kanál" +msgstr[1] "Seznam verze %d, nalezeny %d kanály" +msgstr[2] "Seznam verze %d, nalezeno %d kanálů" + +# +msgid "Listen to the radio..." +msgstr "Poslech rádia..." + +msgid "Lists reloaded!" +msgstr "" + +# +msgid "Lithuanian" +msgstr "Litevsky" + +# +msgid "Load" +msgstr "Načíst" + +msgid "Load Length of Movies in Movielist" +msgstr "Zobrazovat v seznamu filmů délku filmů" + +# +msgid "Load length of movies in movie list" +msgstr "Vkládat délku filmů do seznamu filmů" + +# +msgid "Load playlist" +msgstr "Načíst playlist" + +# +msgid "Local network" +msgstr "Místní síť" + +# +msgid "Location" +msgstr "Umístění" + +# +msgid "Location for instant recordings" +msgstr "Okamžité nahrávání" + +msgid "Lock ratio" +msgstr "Zachovat poměr" + +# +msgid "Lock:" +msgstr "Zámek:" + +# +msgid "Log results to harddisk" +msgstr "Protokol výsledků na pevný disk" + +msgid "Long filenames" +msgstr "dlouhé názvy souborů" + +# +msgid "Long key press" +msgstr "Dlouhé stlačení klávesy" + +# +msgid "Longitude" +msgstr "Zeměpisná délka" + +# +msgid "Loop through to" +msgstr "propojeno s" + +msgid "Luxembourgish" +msgstr "Lucembursky" + +# +msgid "MMC card" +msgstr "MMC karta" + +# +msgid "MORE" +msgstr "VÍCE" + +# +msgid "Main menu" +msgstr "Hlavní menu" + +# +msgid "Maintain old EPG data for" +msgstr "Udržovat stará EPG data" + +# +msgid "Make this mark an 'in' point" +msgstr "Udělat z této značky 'in' bod" + +# +msgid "Make this mark an 'out' point" +msgstr "Udělat z této značky 'out' point" + +# +msgid "Make this mark just a mark" +msgstr "Udělat z této značky jen značku" + +# +msgid "Manage extensions" +msgstr "Správa rozšíření" + +# +msgid "Manage your receiver's software" +msgstr "Spravujte software Vašeho přijímače " + +# +msgid "Manual" +msgstr "Ručně" + +# +msgid "Manual Scan" +msgstr "Ruční prohledávání" + +msgid "Manual configuration" +msgstr "Ruční konfigurace" + +# +msgid "Manual scan" +msgstr "Ruční prohledávání" + +# +msgid "Manual transponder" +msgstr "ručně definovaný transponder" + +# +msgid "Manufacturer" +msgstr "Výrobce" + +# +msgid "Margin after recording (minutes)" +msgstr "Rezerva po nahrávání (minuty)" + +# +msgid "Margin before recording (minutes)" +msgstr "Rezerva před nahráváním (minuty)" + +msgid "Max memory positions" +msgstr "Maximum pozic paměti" + +# +msgid "Max. bitrate: " +msgstr "Max. datový tok: " + +# +msgid "Media player" +msgstr "Přehrávač médií" + +# +msgid "Media scanner" +msgstr "Prohledávání médií" + +# +msgid "Medium is not a writeable DVD!" +msgstr "Médiem není zapisovatelné DVD!" + +# +msgid "Medium is not empty!" +msgstr "Médium není prázdné!" + +# +msgid "Memory" +msgstr "Paměť" + +msgid "Memory index" +msgstr "Pozice (index) paměti" + +# +msgid "Menu" +msgstr "Menu" + +# +msgid "Message" +msgstr "Zpráva" + +# +msgid "Message..." +msgstr "Zpráva..." + +#, python-format +msgid "Minimum age %d years" +msgstr "minimální věk %d roků" + +msgid "Minimum send interval" +msgstr "Minimální interval posílání" + +msgid "Missing " +msgstr "Chybí" + +# +msgctxt "Satellite configuration mode" +msgid "Mode" +msgstr "Mód" + +# +msgctxt "Video output mode" +msgid "Mode" +msgstr "Mód" + +# +msgid "Model: " +msgstr "Model:" + +# +msgid "Modulation" +msgstr "Modulace" + +# +msgid "Modulator" +msgstr "Modulátor" + +# +msgid "Mon" +msgstr "Po" + +# +msgid "Mon-Fri" +msgstr "Po - Pá" + +# +msgid "Monday" +msgstr "Pondělí" + +# +msgid "Mosquito noise reduction" +msgstr "Bodová redukce šumu (MNR)" + +# +msgid "Mount" +msgstr "Připojit" + +# +msgid "Move" +msgstr "Přesunout" + +# +msgid "Move PiP to main picture" +msgstr "Přesunout PIP do hlavního okna" + +# +msgid "Move Picture in Picture" +msgstr "Posunout obraz v obraze" + +# +msgid "Move east" +msgstr "Posun východně" + +msgid "Move to other directory" +msgstr "přesunout do jiné složky" + +msgid "Move to position X" +msgstr "Natáčí se na pozici X" + +# +msgid "Move west" +msgstr "Posun západně" + +msgid "Moved to position 0" +msgstr "Natáčí se na pozici 0" + +msgid "Moved to position at index" +msgstr "Natočeno na pozici podle indexu" + +msgid "Movement" +msgstr "Natáčení" + +msgid "Movie List Configuration" +msgstr "Konfigurace seznamu filmů" + +msgid "Movie Selection" +msgstr "Výběr filmů" + +msgid "Movie list configuration" +msgstr "Nastavení seznamu filmů" + +# +msgid "Movie location" +msgstr "Umístění souboru" + +msgid "Movie selection" +msgstr "Výběr filmů" + +msgid "Movie/Drama" +msgstr "film/drama" + +# +msgid "Movielist menu" +msgstr "Nabídka seznamu filmů" + +msgid "Moving" +msgstr "Natáčení" + +msgid "Moving east ..." +msgstr "Natáčení na východ ..." + +msgid "Moving to position" +msgstr "Natáčení na pozici" + +msgid "Moving west ..." +msgstr "Natáčení na západ ..." + +# +msgid "Multi EPG" +msgstr "Multi EPG" + +# +msgid "Multi-EPG bouquet selection" +msgstr "Volba přehledu při spuštění Multi-EPG" + +# +msgid "Multimedia" +msgstr "Multimédia" + +# +msgid "Multiple service support" +msgstr "Podpora vícenásobného programu" + +msgid "Multiplex" +msgstr "Multiplex" + +# +msgid "Multisat" +msgstr "více satelitů" + +# +msgid "Multisat all select" +msgstr "Multisat vybrat vše" + +msgid "Music/Ballet/Dance" +msgstr "hudba/balet/tanec" + +# +msgid "Mute" +msgstr "Ztišit" + +# +msgid "N/A" +msgstr "Není k dispozici" + +# +msgid "NEXT" +msgstr "DALŠÍ" + +# +msgid "NFI image flashing" +msgstr "Nahrát NFI image" + +# +msgid "NFI image flashing completed. Press Yellow to Reboot!" +msgstr "Nahrátí NFI image bylo dokončeno. Zmáčkněte Žluté pro restart přijímače!" + +msgid "NIM" +msgstr "" + +# +msgid "NOW" +msgstr "NYNÍ" + +# +msgid "NTSC" +msgstr "NTSC" + +# +msgid "Name" +msgstr "Jméno" + +# +msgid "Nameserver" +msgstr "DNS server" + +# +#, python-format +msgid "Nameserver %d" +msgstr "DNS server %d" + +# +msgid "Nameserver settings" +msgstr "Nastavení DNS" + +# +msgid "Nameserver setup" +msgstr "Nastavení DNS" + +# +msgid "Namespace" +msgstr "" + +# +msgid "Netmask" +msgstr "Síťová maska" + +# +msgid "Network" +msgstr "Síť" + +# +msgid "Network ID" +msgstr "Network ID" + +# +msgid "Network configuration..." +msgstr "Nastavení sítě..." + +# +msgid "Network mount" +msgstr "Síťové připojení" + +# +#, python-format +msgid "Network mount %s" +msgstr "Síťové připojení %s" + +msgid "Network name (SSID)" +msgstr "Název sítě (SSID)" + +# +msgid "Network scan" +msgstr "Prohledávání sítě" + +# +msgid "Network setup" +msgstr "Nastavení sítě" + +# +msgid "Network test" +msgstr "Test sítě" + +# +msgid "Network test..." +msgstr "Test sítě..." + +msgid "Network test: " +msgstr "Test sítě: " + +# +msgid "Network wizard" +msgstr "Pomocník sítě" + +# +msgid "Network:" +msgstr "Síť:" + +# +msgid "New" +msgstr "Nové programy" + +msgid "New PIN" +msgstr "Nový PIN" + +# +msgid "New version:" +msgstr "Nová verze:" + +msgid "News Current Affairs" +msgstr "zpravodajství, publicistika " + +msgctxt "button label, 'next screen'" +msgid "Next" +msgstr "Další" + +msgctxt "now/next: 'next' event label" +msgid "Next" +msgstr "Další" + +# +msgid "No" +msgstr "Ne" + +# +msgid "No (supported) DVDROM found!" +msgstr "Nenalezena žádná (podporovaná) DVDROM!" + +# +msgid "No Connection" +msgstr "Žádné připojení" + +# +msgid "No HDD found or HDD not initialized!" +msgstr "Žádný HDD nenalezen nebo není inicializován!" + +# +msgid "No backup needed" +msgstr "Záloha není potřeba" + +# +msgid "No cable tuner found!" +msgstr "Žádný kabelový tuner nenalezen!" + +# +msgid "" +"No data on transponder!\n" +"(Timeout reading PAT)" +msgstr "" +"Žádná data na transponderu!\n" +"(Vypršel časový limit čtení PAT)" + +# +msgid "No delay" +msgstr "Žádné" + +# +msgid "No description available." +msgstr "Žádný popis k dispozici." + +# +msgid "No details for this image file" +msgstr "Žádné detaily o tomto image souboru" + +# +msgid "No displayable files on this medium found!" +msgstr "Žádné zobrazitelné soubory na tomto médiu nebyly nalezeny!" + +# +msgid "No event info found, recording indefinitely." +msgstr "Žádná informace o programu. Nekonečné nahrávání." + +# +msgid "No fast winding possible yet.. but you can use the number buttons to skip forward/backward!" +msgstr "Rychlé přetáčení není nyní možné.. ale můžete použít číselná tlačítka pro přeskočení dopředu/dozadu!" + +msgid "No free index available" +msgstr "Žádný volný index k dispozici" + +# +msgid "No free tuner!" +msgstr "Žádný volný tuner!" + +# +msgid "No network connection available." +msgstr "Žádné síťové připojení k dispozici." + +# +msgid "No networks found" +msgstr "Žádné sítě nenalezeny" + +msgid "No new plugins found" +msgstr "Zádný nový plugin nenalezen." + +# +msgid "No positioner capable frontend found." +msgstr "Nebyl nalezen žádný vhodný pozicioner." + +msgid "No satellites configured. Plese check your tuner setup." +msgstr "Nejsou nakonfigurovány žádné satelity. Zkontrolujte nastavení tuneru." + +msgid "No service" +msgstr "Zádný kanál" + +# +msgid "No services/providers selected" +msgstr "Žádný program/poskytovatel není vybrán" + +# +msgid "No standby" +msgstr "Neusínat" + +msgid "No suitable sat tuner found!" +msgstr "Nenalezen žádný vhodný tuner!" + +# +msgid "No tags are set on these movies." +msgstr "Tyto soubory nemají nastavené žádné tagy. " + +# +msgid "No timeout" +msgstr "Neskrývat" + +# +msgid "No to all" +msgstr "Ne pro všechny" + +# +msgid "No transparency" +msgstr "Neprůhledné" + +# +msgid "No tuner is configured for use with a diseqc positioner!" +msgstr "Žádný tuner není nakofigurován pro používání s diseqc pozicionerem!" + +# +msgid "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Není povolen žádný tuner!\n" +"Před prohledáváním nejdříve nastavte Váš tuner." + +# +msgid "No updates available" +msgstr " Žádné dostupné aktualizace." + +msgid "No updates available. Please try again later." +msgstr "Žádné aktualizace k dispozici. Zkuste to později." + +# +msgid "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" +msgstr "" +"Nebyl nalezen platný programový PIN!\n" +"Chcete nyní změnit PIN?\n" +"Pokud 'Ne' tak ochrana programu zůstane vypnuta!" + +# +msgid "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" +msgstr "" +"Nebyl nalezen platný PIN nastavení!\n" +"Chcete nyní změnit PIN?\n" +"Pokud 'Ne' tak ochrana nastavení zůstane vypnuta!" + +msgid "No wireless networks found! Searching..." +msgstr "Žádné bezdrátové sítě nenalezeny! Vyhledává se..." + +# +msgid "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." +msgstr "" +"Žádný funkční síťový adaptér nebyl nalezen!\n" +"Zkontrolujte, zda máte připojený síťový kabel a že je Vaše síť správně nastavena." + +# +msgid "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." +msgstr "" +"Žádný funkční bezdrátový síťový adaptér nebyl nalezen!\n" +"Zkontrolujte, zda máte připojený kompatibilní WLAN zařízení a že je Vaše síť správně nastavena." + +# +msgid "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." +msgstr "" +"Žádný funkční bezdrátový síťový adaptér nebyl nalezen!\n" +"Zkontrolujte, zda máte připojeno kompatibilní WLAN zařízení nebo povolte lokální síťový adaptér." + +# +msgid "No, but restart from begin" +msgstr "Ne, jen restartovat od začátku" + +# +msgid "No, do nothing." +msgstr "Ne, nic nedělej." + +msgid "No, just start my receiver" +msgstr "Ne, pouze spusť můj přijímač" + +msgid "No, never" +msgstr "Ne, nikdy" + +# +msgid "None" +msgstr "Žádný" + +# +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right) +msgid "Nonlinear" +msgstr "celá obrazovka (roztažení obrazu vlevo a vpravo)" + +msgid "Normal mode" +msgstr "S obrazem" + +# +msgid "North" +msgstr "Severní" + +# +msgid "Norwegian" +msgstr "Norsky" + +msgid "Not associated" +msgstr "Neasociováno" + +# +msgid "Not configured" +msgstr "nenakonfigurováno" + +# +#, python-format +msgid "Not enough disk space. Please free up some disk space and try again. (%d MB required, %d MB available)" +msgstr "Nedostatek místa na disku. Uvolněte prostor na disku a zkuste znovu. (%d MB požadováno, %d MB k dispozici)" + +# +msgid "Nothing connected" +msgstr "nic není připojeno" + +# +msgid "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Nic k prohledávání!\n" +"Předtím, než začnete prohledávat kanály, nastavte Váš tuner." + +msgctxt "now/next: 'now' event label" +msgid "Now" +msgstr "Nyní" + +# +msgid "Now playing" +msgstr "Přehrává se" + +# +msgid "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." +msgstr "Nyní použijte nastavení kontrastu pro nastavení světlosti pozadí na nejvyšší hodnotu, ale ujistěte se, že stále vidíte rozdíl mezi dvěma nejsvětlejšími odstíny. Pokud jste hotovi, stiskněte OK." + +# +msgid "OK" +msgstr "OK" + +# +msgid "OK, guide me through the upgrade process" +msgstr "OK, provést aktualizačním procesem." + +msgid "ONID" +msgstr "" + +msgid "OSD name request" +msgstr "požadavek OSD názvu" + +# +msgid "OSD settings" +msgstr "Nastavení OSD" + +# +msgid "OSD transparency" +msgstr "Průhlednost OSD" + +# +msgid "Off" +msgstr "Vypnuto" + +# +msgid "Offline decode delay (ms)" +msgstr "Zpoždění offline dekódování (ms)" + +msgid "Ok" +msgstr "Ok" + +# +msgid "On" +msgstr "Zapnuto" + +msgid "On end of movie" +msgstr "Po skončení filmu" + +# +msgid "On end of movie (as menu)" +msgstr "Po skončení filmu (jako menu)" + +# +msgid "One" +msgstr "Jeden" + +# +msgid "Only extensions." +msgstr "Pouze rozšíření" + +# +msgid "Only free scan" +msgstr "Hledat pouze volné" + +# +msgid "Open service list" +msgstr "Otevřít přehled programů" + +# +msgid "Open the movie list" +msgstr "Otevřít seznam filmů" + +msgid "Orbital position" +msgstr "Orbitální pozice" + +msgid "Original" +msgstr "Originál" + +msgid "Other" +msgstr "Další" + +# +msgid "Output" +msgstr "Výstup" + +msgid "Overwrite configuration files during software upgrade?" +msgstr "Přepsat konfigurační soubory při aktualizaci software ?" + +msgid "Overwrite configuration files?" +msgstr "Přepsat konfigurační soubory?" + +# +msgid "PAL" +msgstr "PAL" + +msgid "PCR PID" +msgstr "" + +# +msgid "PIDs" +msgstr "Přehled PID" + +# +msgid "PIN code needed" +msgstr "Je vyžadován PIN" + +msgid "PLP ID" +msgstr "" + +msgid "PMT PID" +msgstr "" + +# +msgid "Package list update" +msgstr "Aktualizace seznamu doplňků" + +# +msgid "Packet management" +msgstr "Správa doplňků" + +# +msgid "Packet manager" +msgstr "Správce doplňků" + +# +#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term +msgid "Pan&scan" +msgstr "Pan&Scan" + +# +msgid "Parent directory" +msgstr "Rodičovský adresář" + +# +msgid "Parental control" +msgstr "Rodičovský zámek" + +# +msgid "Parental control services editor" +msgstr "Nastavení rodičovského zámku" + +# +msgid "Parental control setup" +msgstr "Nastavení rodičovského zámku" + +# +msgid "Parental control type" +msgstr "Typ rodičovského zámku" + +msgid "Password" +msgstr "Heslo" + +# +msgid "Pause" +msgstr "Pauza" + +# +msgid "Pause movie at end" +msgstr "zastavit film na konci" + +# +msgid "Pause playback" +msgstr "Pauza/přehrávání" + +msgid "Pauze/Continue playback" +msgstr "" + +msgid "Percentage left" +msgstr "Procenta vlevo" + +msgid "Percentage right" +msgstr "Procenta vpravo" + +msgid "Permanently delete all recordings in the trash can?" +msgstr "Trvale odstranit všechny záznamy z koše?" + +msgid "Permanently remove all deleted items" +msgstr "Trvale odstranit veškeré smazané položky" + +msgid "Persian" +msgstr "Persky" + +# +msgid "Phone number" +msgstr "Telefonní číslo" + +# +msgid "PiP setup" +msgstr "Nastavení PiP" + +msgid "Picon" +msgstr "Pikony" + +msgid "Picon and service name" +msgstr "Pikony a názvy programů" + +# +msgid "Picture player" +msgstr "Přehrávač obrázků" + +# +#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term. +msgid "Pillarbox" +msgstr "Pillarbox" + +# +msgid "Pilot" +msgstr "" + +# +msgid "Play" +msgstr "Přehrát" + +# +msgid "Play DVD" +msgstr "přehrát DVD" + +# +msgid "Play audio in background" +msgstr "Přehrávat zvuk na pozadí" + +# +msgid "Play audio-CD..." +msgstr "Přehrát audio-CD..." + +msgid "Play back media files" +msgstr "Přehrát soubory" + +# +msgid "Play entry" +msgstr "Přehrát položku" + +# +msgid "Play from next mark or playlist entry" +msgstr "Přehrát od další značky/položky v playlistu" + +# +msgid "Play from previous mark or playlist entry" +msgstr "Přehrát od předchozí značky/položky v playlistu" + +# +msgid "Play music..." +msgstr "Přehrát hudbu..." + +# +msgid "Play next" +msgstr "přehrát další" + +msgid "Play next (return to movie list)" +msgstr "přehrát další (návrat do seznamu)" + +msgid "Play next (return to previous service)" +msgstr "přehrát další (návrat na předchozí program)" + +# +msgid "Play previous" +msgstr "přehrát předchozí" + +# +msgid "Play recorded movies..." +msgstr "Přehrát nahrané pořady..." + +# +msgid "Please add titles to the compilation." +msgstr "Přidejte tituly do kompilace." + +# +msgid "Please change recording endtime" +msgstr "Změňte dobu ukončení nahrávání" + +# +msgid "Please check your network settings!" +msgstr "Zkontrolujte Vaše nastavení sítě!" + +# +msgid "Please choose an extension..." +msgstr "Vyberte si z nabídky rozšíření..." + +# +msgid "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Nakonfigurujte nebo zkontrolujte DNS servery vyplněním požadovaných hodnot.\n" +"Pro pokračování stiskněte OK." + +# +msgid "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Nakonfigurujte internetové připojení vyplněním požadovaných hodnot.\n" +"Pro pokračování stiskněte OK." + +msgid "Please connect your receiver to the internet" +msgstr "Připojte přijímač do internetu" + +# +msgid "Please do not change any values unless you know what you are doing!" +msgstr "Neměňte jakékoliv hodnoty, pokud nevíte, co děláte!" + +# +msgid "Please enter a name for the new bouquet" +msgstr "Zadejte název pro nový přehled" + +# +msgid "Please enter a name for the new marker" +msgstr "Zadejte název pro novou záložku" + +# +msgid "Please enter a new filename" +msgstr "Zadejte nové jméno souboru" + +# +msgid "Please enter filename (empty = use current date)" +msgstr "Zadejte název souboru (prázdné = dnešní datum)" + +# +msgid "Please enter name of the new directory" +msgstr "Zadejte jméno nového adresáře" + +msgid "Please enter new name:" +msgstr "Zadejte nový název:" + +# +msgid "Please enter the correct pin code" +msgstr "Zadejte správný PIN" + +msgid "Please enter the old PIN code" +msgstr "Zadejte starý PIN kód" + +# +msgid "Please follow the instructions on the TV" +msgstr "Následujte instrukce na TV" + +# +msgid "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." +msgstr "Vezměte na vědomí, že dříve vybrané médium nemohlo být zpřístupněno a proto byl použit místo něj standardní adresář." + +# +msgid "Please press OK to continue." +msgstr "Stiskněte OK pro pokračování." + +msgid "Please select a default EPG type..." +msgstr "Zvolte preferovaný typ EPG..." + +# +msgid "Please select a playlist to delete..." +msgstr "Prosím, vybeberte playlist ke smazání..." + +# +msgid "Please select a playlist..." +msgstr "Prosím, vyberte playlist" + +# +msgid "Please select a sub service..." +msgstr "Prosím vyberte podprogram..." + +# +msgid "Please select a subservice to record..." +msgstr "Prosím, vyberte podprogram pro nahrávání..." + +# +msgid "Please select a subservice..." +msgstr "Prosím vyberte podprogram..." + +msgid "Please select an NFI file and press green key to flash!" +msgstr "Zvolte NFI soubor a stiskněte zelené tlačítko pro naprogramování!" + +# +msgid "Please select medium to be scanned" +msgstr "Zvolte médium k prohledání" + +# +msgid "Please select medium to use as backup location" +msgstr "Zvolte médium používané pro umístění záloh" + +# +msgid "Please select tag to filter..." +msgstr "Zvolte tag do filtru..." + +# +msgid "Please select the movie path..." +msgstr "Vyberte cestu k filmům..." + +# +msgid "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Zvolte síťový interface, který chcete používat pro internetové připojení.\n" +"\n" +"Stiskněte OK pro pokračování." + +# +msgid "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Zvolte bezdrátovou síť ke které se chcete připojit.\n" +"\n" +"Stiskněte OK pro pokračování." + +# +msgid "Please set up tuner A" +msgstr "Prosím, nastavte tuner A" + +# +msgid "Please set up tuner B" +msgstr "Prosím, nastavte tuner B" + +# +msgid "Please set up tuner C" +msgstr "Prosím, nastavte tuner C" + +# +msgid "Please set up tuner D" +msgstr "Prosím, nastavte tuner D" + +# +msgid "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." +msgstr "" +"Prosím použijte šipky k posunu okna PiP.\n" +"Přes Bouquet +/- ke změně velikosti okna.\n" +"Stiskněte OK k navrácení k TV módu nebo EXIT pro zrušení přesunu." + +# +msgid "Please use the UP and DOWN keys to select your language. Afterwards press the OK button." +msgstr "Použijte tlačítka Nahoru a Dolů k výběru Vašeho jazyka. Poté stiskněte OK." + +# +msgid "Please wait" +msgstr "Prosím, čekejte" + +# +msgid "Please wait (downloading channel list)" +msgstr "Prosím, čekejte (nahrává se seznam programů)" + +# +msgid "Please wait (downloading softcam)" +msgstr "Prosím, čekejte (nahrává se softcam)" + +# +msgid "Please wait (updating packages)" +msgstr "Prosím, čekejte (aktualizují se balíčky)" + +# +msgid "Please wait for activation of your network configuration..." +msgstr "Čekejte prosím na aktivaci Vaší síťové konfigurace..." + +# +msgid "Please wait while scanning is in progress..." +msgstr "Čekejte prosím, dokud probíhá vyhledávání..." + +# +msgid "Please wait while we configure your network..." +msgstr "Čekejte prosím, zatímco my nastavíme Vaši síť..." + +# +msgid "Please wait while we prepare your network interfaces..." +msgstr "Čekejte prosím, zatímco my připravujeme Váš síťový interface..." + +# +msgid "Please wait while we test your network..." +msgstr "Čekejte prosím, zatímco my testujeme Vaši síť..." + +msgid "Please wait while your network is restarting..." +msgstr "Čekejte, dokud není síť restartována..." + +# +msgid "Please wait..." +msgstr "Prosím, čekejte..." + +# +msgid "Please wait... Loading list..." +msgstr "Prosím čekejte... Načítá se seznam..." + +# +msgid "Plugin browser" +msgstr "Prohlížeč pluginů" + +# +msgid "Plugin manager activity information" +msgstr "Informace o činosti správce pluginů" + +# +msgid "Plugin manager help" +msgstr "Nápověda správy pluginů" + +# +msgid "Plugins" +msgstr "Pluginy" + +msgid "Polarisation" +msgstr "Polarizace" + +msgid "Polarisation:" +msgstr "Polarizace:" + +# +msgid "Polarization" +msgstr "Polarizace" + +# +msgid "Polish" +msgstr "Polsky" + +# +msgid "Port A" +msgstr "Port A" + +# +msgid "Port B" +msgstr "Port B" + +# +msgid "Port C" +msgstr "Port C" + +# +msgid "Port D" +msgstr "Port D" + +# +msgid "Portuguese" +msgstr "Portugalsky" + +# +msgid "Position of completed timers in timerlist" +msgstr "Dokončené časovače umísťovat v seznamu" + +msgid "Position stored at index" +msgstr "Pozice uložena pod index" + +# +msgid "Positioner" +msgstr "Pozicioner" + +# +msgid "Positioner (selecting satellites)" +msgstr "Pozicioner (výběr satelitů)" + +msgid "Positioner Setup" +msgstr "Nastavení pozicioneru" + +# +msgid "Positioner setup" +msgstr "Nastavení pozicioneru" + +# +msgid "Power threshold in mA" +msgstr "Prahový proud v mA" + +# +msgid "Predefined transponder" +msgstr "předdefinovaný transponder" + +msgid "Prefer AC3 track" +msgstr "Preferovat AC3 stopu" + +msgid "Prefer AC3+ track" +msgstr "Preferovat AC3+ stopu" + +msgid "Prefer audio track stored by service" +msgstr "Preferovat audio stopu uloženou kanálem" + +msgid "Prefer graphical DVB subtitles" +msgstr "Preferovat grafické DVB titulky" + +msgid "Prefer subtitles for hearing impaired" +msgstr "Preferovat titulky pro sluchově postižené" + +msgid "Prefer subtitles stored by service" +msgstr "Preferovat titulky uložené kanálem" + +# +msgid "Preferred tuner" +msgstr "Preferovaný tuner" + +# +msgid "Preferred tuner for recordings" +msgstr "Preferovaný tuner pro nahrávání" + +msgid "Prepare another USB stick for image flashing" +msgstr "Připravte další USB zařízení pro nahrání image" + +# +msgid "Preparing... Please wait" +msgstr "Připravuji... Prosím čekejte" + +msgid "Press '0' to toggle PiP mode" +msgstr "Stiskněte '0' k přepnutí PiP módu" + +msgid "Press INFO on your remote control for additional information." +msgstr "Stiskněte INFO na dálkovém ovladači pro další informace." + +msgid "Press MENU on your remote control for additional options." +msgstr "Stiskněte MENU na Vašem dálkovém ovladači pro další možnosti." + +# +msgid "Press OK on your remote control to continue." +msgstr "Stiskněte OK na dálkovém ovladači pro pokračování." + +# +msgid "Press OK to activate the selected skin." +msgstr "Stiskněte OK pro aktivaci zvoleného skinu." + +# +msgid "Press OK to activate the settings." +msgstr "Stiskněte OK pro aktivaci nastavení." + +# +msgid "Press OK to edit the settings." +msgstr "Stiskněte OK pro úpravu nastavení." + +# +#, python-format +msgid "Press OK to get further details for %s" +msgstr "Stiskněte OK a získejte detaily pro %s " + +# +msgid "Press OK to scan" +msgstr "Stiskněte OK pro prohledávání" + +# +msgid "Press OK to select a provider." +msgstr "Stiskněte OK k vybrání poskytovatele." + +# +msgid "Press OK to select satellites" +msgstr "Stiskněte OK k vybrání satelitů." + +# +msgid "Press OK to select/deselect a CAId." +msgstr "Stiskněte OK pro vybrání/odebrání CAId" + +# +msgid "Press OK to start the scan" +msgstr "Stiskněte OK pro spuštění prohledávání" + +# +msgid "Press OK to toggle the selection" +msgstr "Stiskněte OK pro změnu označení" + +# +msgid "Press OK to toggle the selection." +msgstr "Stiskněte OK pro změnu označení." + +# +msgid "Press yellow to set this interface as default interface." +msgstr "Stiskem žlutého tlačítka nastavíte tento interface jako standardní. " + +msgctxt "button label, 'previous screen'" +msgid "Prev" +msgstr "Předchozí" + +# +msgid "Preview" +msgstr "náhled" + +# +msgid "Preview menu" +msgstr "Náhled menu" + +msgid "Preview selected channel" +msgstr "Náhled vybraného kanálu" + +# +msgid "Primary DNS" +msgstr "Primární DNS" + +# +msgid "Priority" +msgstr "Priorita" + +# +msgid "Process" +msgstr "Provést" + +# +msgid "Progress" +msgstr "Průběh" + +msgid "Progress bar left" +msgstr "Pásky vlevo" + +msgid "Progress bar right" +msgstr "Pásky vpravo" + +# +msgid "Properties of current title" +msgstr "Vlastnosti zvoleného titulu" + +# +msgid "Protect services" +msgstr "Zabezpečit programy" + +# +msgid "Protect setup" +msgstr "Zabezpečit nastavení" + +# +msgid "Provider" +msgstr "Poskytovatel" + +# +msgid "Provider to scan" +msgstr "Poskytovatel k vyhledání" + +# +msgid "Providers" +msgstr "Poskytovatelé" + +msgid "Put TV in standby" +msgstr "Přepínat TV do standby" + +msgid "Put receiver in standby" +msgstr "Přepínat receiver do standby" + +# +msgid "Python frontend for /tmp/mmi.socket" +msgstr "Python frontend pro /tmp/mmi.socket" + +# +msgid "Quick" +msgstr "Rychlý" + +# +msgid "Quick zap" +msgstr "Rychlé přepínání" + +# +msgid "RF output" +msgstr "RF výstup" + +# +msgid "RGB" +msgstr "RGB" + +# +msgid "Radio" +msgstr "Rádio" + +# +msgid "Ram disk" +msgstr "Ram disk" + +# +msgid "Random" +msgstr "Náhodný" + +#, python-format +msgid "Rating defined by broadcaster - %d" +msgstr "hodnocení určeno vysíláním - %d" + +msgid "Rating undefined" +msgstr "hodnocení neurčeno" + +# +msgid "Really close without saving settings?" +msgstr "Opravdu zavřít bez uloženého nastavení?" + +# +msgid "Really delete done timers?" +msgstr "Opravdu smazat dokončené časovače?" + +# +msgid "Really exit the subservices quickzap?" +msgstr "Opravdu opustit rychlé přepínání podprogramů?" + +# +msgid "Really reboot now?" +msgstr "Opravdu provést reboot? " + +# +msgid "Really restart now?" +msgstr "Opravdu nyní restartovat? " + +# +msgid "Really shutdown now?" +msgstr "Opravdu nyní vypnout? " + +msgid "Really upgrade the frontprocessor and reboot now?" +msgstr "Skutečně aktualizovat frontprocesor a restartovat?" + +msgid "Really upgrade your settop box and reboot now?" +msgstr "Skutečně aktualizovat přijímač a restartovat" + +# +msgid "Reboot" +msgstr "Restartovat" + +# +msgid "Rec" +msgstr "Rec" + +# +msgid "Reception settings" +msgstr "Nastavení příjmu" + +# +msgid "Record" +msgstr "Nahrávání a přehrávání" + +# +#, python-format +msgid "Record time limited due to conflicting timer %s" +msgstr "Nahrávaný čas je omezen z důvodu konfliktu časovače %s" + +# +msgid "Recorded files..." +msgstr "Nahrané pořady..." + +# +msgid "Recording" +msgstr "záznam" + +# +msgid "Recording in progress" +msgstr "Probíhá nahrávání" + +# +msgid "Recording paths" +msgstr "Umístění nahrávání" + +msgid "Recording type" +msgstr "Typ nahrávání" + +# +msgid "Recording(s) are in progress or coming up in few seconds!" +msgstr "Probíhá nahrávání nebo začne za několik sekund!" + +# +msgid "Recordings" +msgstr "Nahrávání" + +# +msgid "Recordings always have priority" +msgstr "Nahrávání má vždy prioritu" + +msgid "Red button..." +msgstr "Červené tlačítko" + +msgid "Reenter new PIN" +msgstr "Zopakujte nový PIN" + +# +msgid "Refresh rate" +msgstr "Obnovovací frekvence" + +# +msgid "Refresh rate selection." +msgstr "Volba obnovovací rychlosti." + +msgid "Regard deep standby as standby" +msgstr "Považovat hluboký spánek za standby" + +# +msgid "Relative" +msgstr "Relativní" + +# +msgid "Reload" +msgstr "Znovu načíst" + +# +msgid "Reload black-/white lists" +msgstr "Znovu načíst black-/whitelist" + +msgid "Reloading bouquets and services..." +msgstr "Obnovuji přehledy a programy..." + +msgid "Remember last service in PiP" +msgstr "Zapamatovat poslední program v PiP" + +msgid "Remember service PIN" +msgstr "Zapamatovat programový PIN" + +# +msgid "Remember these settings for each folder" +msgstr "Zapamatovat nastavení pro každý adresář" + +msgid "Reminder, you have chosen to save timeshift file." +msgstr "Připomínáme, že jste se rozhodli uložit timeshift soubor." + +# +msgid "Remote control type" +msgstr "Typ dálkového ovládání" + +# +msgid "Removal has completed." +msgstr "Odstranění bylo dokončeno." + +# +msgid "Remove" +msgstr "Smazat" + +# +msgid "Remove a mark" +msgstr "Odstranit značku" + +# +msgid "Remove a nameserver entry" +msgstr "Odstranit DNS položku" + +# +msgid "Remove bookmark" +msgstr "Smazat záložku" + +msgid "Remove completed timers after (days)" +msgstr "Dokončené časovače odstraňovat po (dnech)" + +# +msgid "Remove currently selected title" +msgstr "Odstranit vybraný titul" + +msgid "Remove items from trash can after (days)" +msgstr "Položky z koše odstraňovat po (dnech)" + +# +msgid "Remove plugins" +msgstr "Odstranit pluginy" + +# +msgid "Remove title" +msgstr "Odebrat titul" + +# +msgid "Removing" +msgstr "Odstranění" + +# +#, python-format +msgid "Removing directory %s failed. (Maybe not empty.)" +msgstr "Odstranění adresáře %s se nezdařilo. (Možná není prázdný.)" + +msgid "Removing partition table" +msgstr "Odstraňuje se tabulka rozdělení disku" + +# +msgid "Rename" +msgstr "Přejmenovat" + +msgid "Repeat" +msgstr "Opakovat" + +# +msgid "Repeat type" +msgstr "Druh opakování" + +# +msgid "Repeating event currently recording... What do you want to do?" +msgstr "Opakovaná událost je právě nahrávána... Co chcete dělat?" + +# +msgid "Repeats" +msgstr "Opakování" + +# +msgid "Require authentication for http streams" +msgstr "Požadovat ověření pro http stream" + +# +msgid "Required medium type:" +msgstr "Požadovaný typ média:" + +msgid "Rereading partition table" +msgstr "Znovunačítání tabulky rozdělení disku" + +msgid "Reserved" +msgstr "rezervováno" + +# +msgid "Reset" +msgstr "Reset" + +# +msgid "Reset and renumerate title names" +msgstr "Zresetovat a přečíslovat názvy" + +# +msgid "Reset playback position" +msgstr "resetovat pozici přehrávání" + +# +msgid "Reset video enhancement settings to system defaults?" +msgstr "Nastavit pokročilá nastavení videa na výchozí nastavení?" + +# +msgid "Reset video enhancement settings to your last configuration?" +msgstr "Nastavit pokročilá nastavení videa na Vaší poslední konfiguraci?" + +# +msgid "Resolution" +msgstr "Rozlišení" + +# +msgid "Restart" +msgstr "Restartovat" + +# +msgid "Restart GUI now?" +msgstr "Restartovat GUI nyní?" + +# +msgid "Restart enigma" +msgstr "Restart enigma" + +# +msgid "Restart network" +msgstr "Restartovat síť" + +# +msgid "Restart test" +msgstr "Restart testu" + +# +msgid "Restart your network connection and interfaces.\n" +msgstr "Restartuje síťové připojení a rozhraní.\n" + +# +msgid "Restore" +msgstr "Obnovit" + +# +msgid "Restore backups" +msgstr "Obnovit zálohu" + +# +msgid "Restore is running..." +msgstr "Probíhá obnova..." + +# +msgid "Restore system settings" +msgstr "Obnova nastavení" + +# +msgid "Restoring..." +msgstr "Obnovuje se..." + +# +msgid "Resume from last position" +msgstr "pokračovat z poslední pozice" + +# +#, python-format +msgid "Resume position at %s" +msgstr "Pokračovat od pozice %s" + +# +#. TRANSLATORS: The string "Resuming playback" flashes for a moment +#. TRANSLATORS: at the start of a movie, when the user has selected +#. TRANSLATORS: "Resume from last position" as start behavior. +#. TRANSLATORS: The purpose is to notify the user that the movie starts +#. TRANSLATORS: in the middle somewhere and not from the beginning. +#. TRANSLATORS: (Some translators seem to have interpreted it as a +#. TRANSLATORS: question or a choice, but it is a statement.) +msgid "Resuming playback" +msgstr "Obnovuji přehrávání" + +# +msgid "Return to movie list" +msgstr "zpět na seznam filmů" + +# +msgid "Return to previous service" +msgstr "návrat na předchozí program" + +# +msgid "Reverse bouquet buttons" +msgstr "prohodit B+/B-" + +# +msgid "Reverse list" +msgstr "Otočený seznam" + +# +msgid "Rewind speeds" +msgstr "Rychlosti přetáčení zpět" + +msgid "Rewrap teletext subtitles" +msgstr "Zalamovat teletextové titulky" + +# +msgid "Right" +msgstr "Vpravo" + +msgid "Right from servicename" +msgstr "Napravo od názvu kanálu" + +msgid "Roll-off" +msgstr "" + +# +msgid "Romanian" +msgstr "Rumunsky" + +# +msgid "Root directory" +msgstr "Kořenový adresář" + +msgid "Rotor step position:" +msgstr "Pozice motoru (kroky):" + +# +# +msgid "Rotor turning speed" +msgstr "Rychlost otáčení motoru" + +msgid "Round start time on" +msgstr "Zaokrouhlit začátek na" + +# +msgid "Russian" +msgstr "Rusky" + +# +msgid "S-Video" +msgstr "S-Video" + +msgid "SID" +msgstr "" + +# +msgid "SINGLE LAYER DVD" +msgstr "JEDNOVRSTVÉ DVD" + +# +msgid "SNR" +msgstr "SNR" + +# +msgid "SNR:" +msgstr "SNR:" + +# +msgid "SSID:" +msgstr "SSID:" + +msgid "Same resolution as skin" +msgstr "Stejné rozlišení jako skin" + +# +msgid "Sat" +msgstr "So" + +# +msgid "Satellite" +msgstr "Satelit" + +# +msgid "Satellite dish setup" +msgstr "Nastavení paraboly" + +# +msgid "Satellite equipment" +msgstr "Satelitní zařízení" + +# +msgid "Satellite equipment setup" +msgstr "Nastavení satelitního zařízení" + +msgid "Satellite longitude:" +msgstr "Zeměpisná délka satelitu:" + +# +msgid "Satellites" +msgstr "Satelity" + +# +msgid "Satfinder" +msgstr "Satfinder" + +# +msgid "Sats" +msgstr "Satelity" + +# +msgid "Saturation" +msgstr "Saturace" + +# +msgid "Saturday" +msgstr "Sobota" + +# +msgid "Save" +msgstr "Uložit" + +# +msgid "Save playlist" +msgstr "Uložit playlist" + +msgid "Save timeshift file" +msgstr "Uložit timeshift soubor" + +msgid "Save timeshift file in movie directory" +msgstr "Uložit timeshift soubor do adresáře filmů" + +# +msgid "Scaler sharpness" +msgstr "Ostrost škálování" + +# +msgid "Scaling mode" +msgstr "Mód škálování" + +msgid "Scan" +msgstr "Prohledat" + +# +msgid "Scan " +msgstr "Prohledat " + +# +#. TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' +#, python-format +msgid "Scan %s" +msgstr "Prohledat %s" + +# +#. TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' +#, python-format +msgid "Scan %s band" +msgstr "Prohledat %s pásmo" + +# +msgid "Scan additional SR" +msgstr "Prohledat dodatečný SR" + +# +msgid "Scan files..." +msgstr "Hledat soubory..." + +# +msgid "Scan wireless networks" +msgstr "Vyhledat bezdrátové sítě" + +msgid "Scan your network for wireless access points and connect to them using your selected wireless device.\n" +msgstr "Vyhledá v síti bezdrátové připojovací body a připojí se k nim za použití zvoleného bezdrátového zařízení.\n" + +#, python-format +msgid "Scanning %s..." +msgstr "Prohledává %s..." + +#. TRANSLATORS: The stb is performing a channel scan, progress percentage is printed in '%d' (and '%%' will show a single '%' symbol) +#, python-format +msgid "Scanning - %d%% completed" +msgid_plural "Scanning - %d%% completed" +msgstr[0] "Prohledávání - %d%% dokončeno" +msgstr[1] "Prohledávání - %d%% dokončena" +msgstr[2] "Prohledávání - %d%% dokončeno" + +#, python-format +msgid "Scanning completed, %d channel found" +msgid_plural "Scanning completed, %d channels found" +msgstr[0] "Prohledávání dokončeno, byl nalezen %d program " +msgstr[1] "Prohledávání dokončeno, byly nalezeny %d programy" +msgstr[2] "Prohledávání dokončeno, bylo nalezeno %d programů " + +# +msgid "Scanning failed!" +msgstr "Prohledávání selhalo!" + +# +msgid "Scanning..." +msgstr "prohledávání..." + +# +msgid "Scans default lamedbs sorted by satellite with a connected dish positioner" +msgstr "Prohledá standardní lamedbs setříděné podle satelitu a připojeného pozicioneru" + +# +msgid "Search east" +msgstr "Hledej východ" + +# +msgid "Search west" +msgstr "Hledej západ" + +msgid "Searching" +msgstr "Hledání" + +msgid "Searching east ..." +msgstr "Hledání na východ ..." + +# +msgid "Searching for available updates. Please wait..." +msgstr "Vyhledávají se dostupné aktualizace. Prosím, čekejte..." + +# +msgid "Searching for new installed or removed packages. Please wait..." +msgstr "Vyhledávám nově instalované nebo odstraněné balíčky. Čekejte, prosím..." + +msgid "Searching west ..." +msgstr "Hledání na západ ..." + +# +msgid "Second cable of motorized LNB" +msgstr "druhý kabel z natáčeného LNB" + +# +msgid "Secondary DNS" +msgstr "Sekundární DNS" + +# +msgid "Seek" +msgstr "Posun" + +# +msgid "Seek backward" +msgstr "Přeskočit dozadu" + +# +msgid "Seek backward (enter time)" +msgstr "Přeskočit dozadu (zadat čas)" + +# +msgid "Seek forward" +msgstr "Přeskočit dopředu" + +# +msgid "Seek forward (enter time)" +msgstr "Přeskočit dopředu (zadat čas)" + +# +msgid "Select" +msgstr "Zvolit" + +# +msgid "Select CAId" +msgstr "Vyberte CAId" + +# +msgid "Select HDD" +msgstr "Zvolte HDD" + +# +msgid "Select a bouquet" +msgstr "Vyberte přehled" + +# +msgid "Select a movie" +msgstr "Vyberte film" + +# +msgid "Select a network adapter" +msgstr "Vyberte síťový adaptér" + +# +msgid "Select a skin" +msgstr "Vyberte skin" + +# +msgid "Select a tuner" +msgstr "Vyberte tuner" + +# +msgid "Select a wireless network" +msgstr "Vyberte bezdrátovou síť" + +# +msgid "Select action" +msgstr "Zvolte akci" + +# +#, python-format +msgid "Select action for timer %s:" +msgstr "Provést s časovačem %s:" + +# +msgid "Select all" +msgstr "Vybrat vše" + +msgid "Select an image to be downloaded" +msgstr "Vyberte image ke stažení" + +# +msgid "Select audio track" +msgstr "výběr zvukové stopy" + +# +msgid "Select backup files" +msgstr "Vyberte zálohované soubory" + +# +msgid "Select backup location" +msgstr "Vyberte umístění záloh" + +# +msgid "Select channel to record from" +msgstr "Vyberte kanál z kterého chcete nahrávat" + +# +msgid "Select copy destination for:" +msgstr "Zvolte umístění kopie pro:" + +msgid "Select default EPG type..." +msgstr "Zvolte preferovaný typ EPG..." + +msgid "Select desired image from feed list" +msgstr "Vyberte požadované image ze seznamu" + +# +msgid "Select destination for:" +msgstr "Zvolte umístění pro:" + +msgid "Select files for backup." +msgstr "Výběr souborů pro zálohování." + +# +msgid "Select files/folders to backup" +msgstr "Vyberte soubory/složky pro zálohování" + +msgid "Select input device" +msgstr "Vyberte vstupní zařízení" + +msgid "Select input device." +msgstr "Volba vstupního zařízení" + +# +msgid "Select interface" +msgstr "Vyberte interface" + +# +msgid "Select location" +msgstr "Vyberte umístění" + +# +msgid "Select movie" +msgstr "Vyberte film" + +# +msgid "Select provider to add..." +msgstr "Vyberte poskytovatele pro přidání..." + +# +msgid "Select refresh rate" +msgstr "Vyberte obnovovací frekvenci" + +# +msgid "Select satellites" +msgstr "Vyberte satelity" + +# +msgid "Select service to add..." +msgstr "Vyberte program pro přidání..." + +# +msgid "Select sort method:" +msgstr "Zvolte způsob třídění:" + +# +msgid "Select target folder" +msgstr "Vyberte cílovou složku" + +# +msgid "Select the movie path" +msgstr "Vyberte cestu k filmu" + +# +msgid "Select upgrade source" +msgstr "Vyberte zdroje pro aktualizaci" + +# +msgid "Select upgrade source to edit." +msgstr "Výběr zdroje pro aktualizaci k úpravě." + +# +msgid "Select video input with up/down buttons" +msgstr "Vybere video vstup pomocí tlačítek nahoru/dolů" + +# +msgid "Select video mode" +msgstr "Zvolte video mód" + +# +msgid "Select wireless network" +msgstr "Vyberte bezdrátovou síť" + +# +msgid "Select your provider, and press OK to start the scan" +msgstr "Zvolte poskytovatele a stiskem OK začněte prohledávat" + +# +msgid "Selecting satellites 1 (USALS)" +msgstr "Výběr satelitů 1 (USALS)" + +# +msgid "Selecting satellites 2 (USALS)" +msgstr "jVýběr satelitů 2 (USALS)" + +# +msgid "Send DiSEqC only on satellite change" +msgstr "Poslat DiSEqC pouze při změně satelitu" + +# +msgid "Separate titles with a main menu" +msgstr "Samostatné tituly s hlavní nabídkou" + +# +msgid "Sequence repeat" +msgstr "Opakovat sekvenci" + +# +msgid "Serbian" +msgstr "Srbsky" + +# +msgid "Service" +msgstr "O programu" + +# +msgid "Service has been added to the favourites." +msgstr "Program byl přidán do oblíbených." + +# +msgid "Service has been added to the selected bouquet." +msgstr "Program byl přidán do vybraného přehledu." + +# +msgid "Service info" +msgstr "Info o programu" + +# +msgid "" +"Service invalid!\n" +"(Timeout reading PMT)" +msgstr "" +"Neplatná služba!\n" +"(Vypršel časový limit čtení PMT)" + +msgid "Service name" +msgstr "Název programu" + +# +msgid "" +"Service not found!\n" +"(SID not found in PAT)" +msgstr "" +"Služba nebyla nalezena!\n" +"(SID nebyl nalezen v PAT)" + +msgid "Service reference" +msgstr "" + +# +msgid "Service scan" +msgstr "Vyhledávání programů" + +# +msgid "Service searching" +msgstr "Hledání programů" + +msgid "Service title mode" +msgstr "Názvy programů" + +# +msgid "" +"Service unavailable!\n" +"Check tuner configuration!" +msgstr "" +"Služba nedostupná!\n" +"Ověřte nastavení tuneru!" + +# +msgid "Services" +msgstr "Programy" + +# +msgid "Set default" +msgstr "defaultní" + +# +msgid "Set end time" +msgstr "Nastavit čas konce" + +msgid "Set fixed" +msgstr "Nastavit pevnou" + +msgid "Set fps for external subtitles" +msgstr "Změna FPS pro externí titulky" + +# +msgid "Set interface as default Interface" +msgstr "Nastavit interface jako standardní" + +msgid "Set limits" +msgstr "Nastavit meze" + +# +msgid "Set the type of the progress indication in the channel selection screen." +msgstr "Nastavuje typ průběhů pořadů ve výběru programů." + +msgid "Set time window to 1 hour" +msgstr "nastavit časové okno na 1 hodinu" + +msgid "Set time window to 2 hours" +msgstr "nastavit časové okno na 2 hodiny" + +msgid "Set time window to 3 hours" +msgstr "nastavit časové okno na 3 hodiny" + +msgid "Set time window to 4 hours" +msgstr "nastavit časové okno na 4 hodiny" + +msgid "Set time window to 5 hours" +msgstr "nastavit časové okno na 5 hodin" + +msgid "Set time window to 6 hours" +msgstr "Nastavit časové okno na 6 hodin" + +# +msgid "Set voltage and 22KHz" +msgstr "Nastavovat napětí a 22KHz" + +# +msgid "Settings" +msgstr "Nastavení" + +# +msgid "Setup" +msgstr "Nastavení" + +msgid "Setup menu" +msgstr "Nastavení" + +# +msgid "Setup mode" +msgstr "Nastavovací mód" + +msgid "Setup your positioner" +msgstr "Nastavení pozicioneru" + +# +msgid "Setup your satellite equipment" +msgstr "Nastavení satelitního zařízení" + +# +#, python-format +msgid "Shall the USB stick wizard proceed and program the image file %s into flash memory?" +msgstr "Má průvodce pro USB zařízení pokračovat a naprogramovat image soubor %s do flash paměti?" + +# +msgid "Sharpness" +msgstr "Ostrost" + +msgid "Short filenames" +msgstr "krátké názvy souborů" + +msgid "Show EIT now/next in infobar" +msgstr "Zobrazovat EIT nyní/další v infobaru" + +# +msgid "Show EPG for current channel..." +msgstr "Zobrazovat EPG pro aktuální kanál..." + +# +msgid "Show EPG..." +msgstr "Zobrazit EPG..." + +msgid "Show Games show" +msgstr "zábava" + +msgid "Show SNR percentage instead of dB value" +msgstr "Zobrazovat SNR v procentech místo v dB" + +msgid "Show VCR scart on main menu" +msgstr "Zobrazovat VCR scart v hlavním menu" + +# +msgid "Show WLAN status" +msgstr "Zobrazit stav WLAN" + +msgid "Show animation while busy" +msgstr "Zobrazovat animaci při zaneprázdnění" + +msgid "Show background in radio mode" +msgstr "Zobrazovat pozadí v rádio módu" + +msgid "Show bouquet selection menu" +msgstr "Zobrazovat menu pro výběr přehledů" + +msgid "Show busy indicator when the system is busy." +msgstr "Zobrazuje indikátor zaneprázdnění jestliže je systém zaměstnán." + +# +msgid "Show channel numbers in channel selection" +msgstr "Zobrazovat čísla kanálů ve výběru programů" + +# +msgid "Show columns" +msgstr "Zobrazovat sloupce" + +# +msgid "Show crypto icons" +msgstr "Zobrazovat ikony kódování" + +msgid "Show crypto info in infobar" +msgstr "Zobrazovat informace o kódování v infobaru" + +msgid "Show detailed event info" +msgstr "Zobrazit detailní informace o události" + +# +msgid "Show event details" +msgstr "Zobrazit podrobnosti" + +# +msgid "Show event-progress in channel selection" +msgstr "Zobrazovat průběhy pořadů ve výběru programů" + +# +msgid "Show extended description" +msgstr "Zobrazit rozšířený popis" + +# +msgid "Show extensions..." +msgstr "Zobrazit rozšíření..." + +# +msgid "Show icon for new/unseen items" +msgstr "Ikona u nových/neshlédnutých položek" + +msgid "Show in extensions menu" +msgstr "Zobrazovat v menu rozšíření" + +# +msgid "Show info" +msgstr "Zobrazit info" + +# +msgid "Show info line" +msgstr "Zobrazovat informační řádek" + +# +msgid "Show infobar on channel change" +msgstr "Zobrazit infobar při přepnutí programu" + +# +msgid "Show infobar on event change" +msgstr "Zobrazit infobar při změně programu v EPG" + +# +msgid "Show infobar on skip forward/backward" +msgstr "Zobrazit infobar při přeskočení dopředu/zpět" + +msgid "Show latest commits on sourceforge" +msgstr "Zobrazit poslední změny na sourceforge" + +# +msgid "Show message when recording starts" +msgstr "Zobrazit zprávu při začátku nahrávání" + +msgid "Show movie lengths in movielist" +msgstr "Zobrazovat délku filmů v seznamu filmů" + +msgid "Show multi channel EPG" +msgstr "Zobrazovat vícekanálovou EPG" + +# +msgid "Show picons in channel list" +msgstr "Zobrazovat pikony v seznamu kanálů" + +# +msgid "Show positioner movement" +msgstr "Zobrazovat otáčení pozicioneru." + +msgid "Show screensaver" +msgstr "Zobrazovat spořič obrazovky" + +# +msgid "Show second infobar" +msgstr "Zobrazovat druhý infobar" + +msgid "Show service type icons" +msgstr "Zobrazovat ikony typu kanálu " + +# +msgid "Show services beginning with" +msgstr "Zobrazit programy začínající na" + +# +msgid "Show shutdown menu" +msgstr "Zobrazit shutdown menu" + +msgid "Show single service EPG" +msgstr "Zobrazovat EPG jednoho kanálu" + +msgid "Show status icons in Movielist" +msgstr "Zobrazovat ikony stavu v seznamu filmů" + +msgid "Show status icons in movie list" +msgstr "Zobrazovat ikony stavu v seznamu filmů" + +msgid "Show status icons in movielist" +msgstr "Zobrazovat ikony stavu v seznamu filmů" + +# +msgid "Show tag menu" +msgstr "Zobrazit menu pro tagy" + +# +msgid "Show the radio player..." +msgstr "Zobrazit přehrávač rádií" + +# +msgid "Show the tv player..." +msgstr "Zobrazit TV..." + +msgid "Show warning when timeshift is stopped" +msgstr "Zobrazovat upozornění při zastavení timeshiftu" + +# +msgid "Shows the state of your wireless LAN connection.\n" +msgstr "Zobrazit stav vaší bezdrátové sítě.\n" + +# +msgid "Shuffle playlist" +msgstr "Promíchat playlist" + +# +msgid "Shutdown" +msgstr "Vypnout" + +msgid "Shutdown when in Standby" +msgstr "Vypnout, jestliže je ve Standby" + +msgid "Side by side" +msgstr "Vedle sebe" + +msgid "Signal OK, proceeding" +msgstr "Signál OK, pokračuji" + +msgid "Signal quality" +msgstr "Kvalita signálu" + +# +msgid "Signal strength:" +msgstr "Síla signálu:" + +# +msgid "Signal: " +msgstr "Signál: " + +# +msgid "Similar" +msgstr "Další vysílání" + +# +msgid "Similar broadcasts:" +msgstr "Další vysílání pořadu:" + +# +msgid "Simple" +msgstr "jednoduchý" + +# +msgid "Simple titleset (compatibility for legacy players)" +msgstr "jednoduché (kompatibilita pro starší přehrávače)" + +# +msgid "Single" +msgstr "Jeden" + +# +msgid "Single EPG" +msgstr "EPG programu" + +# +msgid "Single satellite" +msgstr "jeden satelit" + +# +msgid "Single step (GOP)" +msgstr "Krokovat (GOP)" + +# +msgid "Single transponder" +msgstr "jeden transponder" + +msgid "Site latitude" +msgstr "Zeměpisná šířka" + +msgid "Site longitude" +msgstr "Zeměpisná délka" + +# +msgid "Skin" +msgstr "" + +# +msgid "Skins" +msgstr "Skiny" + +msgid "Skip empty services" +msgstr "Přeskakovat prázdné programy" + +msgid "Skip internet connection check (disables automatic package installation)" +msgstr "Přeskočit test internetového připojení (zakáže automatickou instalaci balíčků)." + +# +msgid "Sleep timer" +msgstr "Časovač usínání" + +msgid "SleepTimer Configuration" +msgstr "Konfigurace časovače usínání" + +msgid "Sleeptimer" +msgstr "Časovač usínání" + +# +msgid "Slide picture in loop" +msgstr "Zobrazovat obrázky ve smyčce" + +# +msgid "Slide show interval (sec.)" +msgstr "Interval prezentace (sek.)" + +# +#, python-format +msgid "Slot %d" +msgstr "Slot %d" + +# +msgid "Slovak" +msgstr "Slovensky" + +# +msgid "Slovenian" +msgstr "Slovinsky" + +# +msgid "Slow" +msgstr "Pomalu" + +# +msgid "Slow motion speeds" +msgstr "Rychlosti zpomaleného přehrávání" + +# +msgid "Small progress" +msgstr "Průběh" + +msgid "Social/Political/Economics" +msgstr "sociální/politická ekonomika" + +msgid "SoftCam / CI" +msgstr "SoftCam / CI" + +msgid "Softcam type" +msgstr "Typ softcamu" + +# +msgid "Software" +msgstr "" + +# +msgid "Software management" +msgstr "Správa software" + +msgid "Software manager setup" +msgstr "Nastavení správy software" + +# +msgid "Software restore" +msgstr "Obnovit software" + +# +msgid "Software update" +msgstr "Aktualizace software" + +msgid "Softwaremanager information" +msgstr "Info správy software" + +# +msgid "Some plugins are not available:\n" +msgstr "Některé pluginy nejsou dostupné:\n" + +# +#, python-format +msgid "Sorry, %s has not been installed!" +msgstr "Bohužel, %s nebyl nainstalován!" + +msgid "Sorry, deleting directories can (for now) only be done through the trash can." +msgstr "Je nám líto, ale smazat adresářě lze pouze (prozatím) přes koš." + +# +msgid "Sorry, no backups found!" +msgstr "Žádné zálohy nenalezeny!" + +# +msgid "Sorry, no details available!" +msgstr "Žádné detaily nejsou k dispozici!" + +# +msgid "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." +msgstr "" +"Do zvoleného místa pro zálohy nelze zapisovat.\n" +"Prosím, zvolte jiné umístění." + +msgid "Sort" +msgstr "Třídění" + +# +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort A-Z" +msgstr "Setřídit A-Z" + +# +msgid "Sort by" +msgstr "Třídit podle" + +# +msgid "Sort list:" +msgstr "Setřídit seznam" + +# +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort time" +msgstr "Setřídit dle času" + +# +msgid "Sound" +msgstr "Zvuk" + +# +msgid "Sound carrier" +msgstr "Nosná zvuku" + +msgid "Source request" +msgstr "požadavek zdroje" + +# +msgid "South" +msgstr "Jižní" + +# +msgid "Spanish" +msgstr "Španělsky" + +# +msgid "Specify the end time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "Určete čas ukončení ignorování časovače vypnutí, jestliže je přijímač v pohotovostním režimu" + +msgid "Specify the end time until the inactivity sleeptimer should be ignored" +msgstr "Určuje konec úseku ignorování časovače neaktivity" + +# +msgid "Specify the start time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "Určete začátek ignorování časovače vypnutí, jestliže je přijímač v pohotovostním režimu" + +msgid "Specify the start time when the inactivity sleeptimer should be ignored" +msgstr "Určuje začátek ignorování časovače neaktivity" + +msgid "Specify timeframe to ignore inactivity sleeptimer" +msgstr "Určit dobu ignorování časovače neaktivity" + +# +msgid "Specify timeframe to ignore the shutdown in standby" +msgstr "Časový interval ignorování vypnutí ve standby" + +# +msgid "Split preview mode" +msgstr "Rozdělit prohlížecí mód" + +msgid "Splitscreen" +msgstr "Rozdělení obrazovky" + +msgid "Sports" +msgstr "sporty" + +# +msgid "Standard" +msgstr "Standard" + +# +msgid "Standart list" +msgstr "Standardní seznam" + +# +msgid "Standby" +msgstr "Pohotovostní režim" + +# +msgid "Standby / restart" +msgstr "Standby / restart" + +msgid "Standby after current event" +msgstr "Standby po této události" + +# +#, python-format +msgid "Standby fan %d PWM" +msgstr "PWM ventilátoru %d ve standby" + +# +#, python-format +msgid "Standby fan %d voltage" +msgstr "Napětí ventilátoru %d ve standby" + +msgid "Standby in " +msgstr "standby za " + +msgid "StandbyLED" +msgstr "" + +# +msgid "Start from the beginning" +msgstr "spustit od začátku" + +# +msgid "Start offline decode" +msgstr "Spustit offline dekódování" + +# +msgid "Start recording?" +msgstr "Spustit nahrávání?" + +# +msgid "Start test" +msgstr "Spustit test" + +# +msgid "Start time" +msgstr "Čas začátku" + +msgid "Start time to ignore inactivity sleeptimer" +msgstr "Začátek ignorování časovače neaktivity" + +# +msgid "Start time to ignore shutdown in standby" +msgstr "Začátek ignorování vypnutí ve standby" + +# +msgid "Start timeshift" +msgstr "Spustit timeshift" + +msgid "Start with list screen" +msgstr "Start se seznamem" + +# +msgid "Starting on" +msgstr "Začíná" + +# +msgid "Startup the set top box in standby" +msgstr "Po startu přepne set top box do pohotovostního režimu" + +# +msgid "Startup to Standby" +msgstr "Po startu přepnout do Standby" + +# +msgid "Step east" +msgstr "Krok východně" + +# +msgid "Step west" +msgstr "Krok západně" + +msgid "Stepped east" +msgstr "Krok východně" + +msgid "Stepped west" +msgstr "Krok západně" + +# +msgid "Stop" +msgstr "zastavit" + +# +msgid "Stop PiP" +msgstr "Ukončit PIP" + +# +msgid "Stop current event and disable coming events" +msgstr "Zastavit aktuální událost a zakázat následující události" + +# +msgid "Stop current event but not coming events" +msgstr "Zastavit aktuální událost, ale nezakazovat následující události" + +# +msgid "Stop entry" +msgstr "Zastavit záznam" + +# +msgid "Stop playing this movie?" +msgstr "Zastavit přehrávání toho filmu?" + +# +msgid "Stop recording" +msgstr "ukončit nahrávání" + +# +msgid "Stop recording and delete" +msgstr "ukončit nahrávání a smazat" + +# +msgid "Stop service on return to movie list" +msgstr "Zastavit program po návratu do seznamu filmů" + +# +msgid "Stop test" +msgstr "Zastavit test" + +# +msgid "Stop testing plane after # failed transponders" +msgstr "Zastavit testovací plán po selhání # transponderů" + +# +msgid "Stop testing plane after # successful transponders" +msgstr "Zastavit testovací plán po # úspěšných transponderech" + +msgid "Stop timer recording" +msgstr "Ukončit nahrávání časovače" + +# +msgid "Stop timeshift" +msgstr "Ukončit timeshift" + +# +msgid "Stop timeshift?" +msgstr "Ukončit timeshift?" + +msgid "Stopped" +msgstr "Zastaveno" + +msgid "Store at index" +msgstr "Uložit na pozici" + +# +msgid "Store position" +msgstr "Ulož pozici" + +# +msgid "Stored position" +msgstr "Uložená pozice" + +msgid "Stream" +msgstr "" + +msgid "Stream request" +msgstr "požadavek streamu" + +msgid "Strongest position" +msgstr "Nejsilnější pozice" + +# +msgid "Subservice list..." +msgstr "Seznam podprogramů..." + +# +msgid "Subservices" +msgstr "Podprogramy" + +msgid "Subtitle Quickmenu" +msgstr "Rychlé nastavení titulků" + +msgid "Subtitle alignment" +msgstr "Zarovnání" + +msgid "Subtitle border width" +msgstr "Šířka okraje" + +msgid "Subtitle delay when timing is bad" +msgstr "Zpoždění titulků při nesprávném časování" + +msgid "Subtitle delay when timing lacks" +msgstr "Zpoždění titulku při chybějícím časování" + +msgid "Subtitle font size" +msgstr "Velikost textu" + +# +msgid "Subtitle language selection 1" +msgstr "Volba jazyka titulků 1" + +# +msgid "Subtitle language selection 2" +msgstr "Volba jazyka titulků 2" + +# +msgid "Subtitle language selection 3" +msgstr "Volba jazyka titulků 3" + +# +msgid "Subtitle language selection 4" +msgstr "Volba jazyka titulků 4" + +# +msgid "Subtitle position" +msgstr "Pozice" + +# +msgid "Subtitle selection" +msgstr "výběr titulků" + +# +msgid "Subtitle selection..." +msgstr "Výběr titulků..." + +# +msgid "Subtitle settings" +msgstr "Nastavení titulků" + +# +msgid "Subtitles" +msgstr "Titulky" + +# +msgid "Sun" +msgstr "Ne" + +# +msgid "Sunday" +msgstr "Neděle" + +# +msgid "Swap PiP and main picture" +msgstr "Zaměnit PIP a hlavní obraz" + +# +msgid "Swap services" +msgstr "Prohodit programy" + +# +msgid "Swedish" +msgstr "Švédsky" + +msgid "Switch TV to correct input" +msgstr "Přepínat TV na správný vstup" + +msgid "Switch between filelist/playlist" +msgstr "Připínat mezi seznamem/playlistem" + +msgid "Switch between normal mode and list mode" +msgstr "Přepnout z normálního na seznam" + +# +msgid "Switch to HDMI in mode" +msgstr "Přepnout na HDMI v módu" + +# +msgid "Switch to filelist" +msgstr "Přepnout na seznam souborů" + +msgid "Switch to next channel" +msgstr "Přepnout na další kanál" + +# +msgid "Switch to next channel in history" +msgstr "Další program v historii" + +# +msgid "Switch to next sub service" +msgstr "Další podprogram" + +# +msgid "Switch to playlist" +msgstr "Přepnout na playlist" + +# +msgid "Switch to previous channel" +msgstr "Předchozí podprogram" + +# +msgid "Switch to previous channel in history" +msgstr "Předchozí program v historii" + +# +msgid "Switch to previous sub service" +msgstr "Předchozí podprogram" + +# +msgid "Switchable tuner types:" +msgstr "Přepínatelné typy tunerů:" + +msgid "Symbol rate" +msgstr "" + +msgid "Symbol rate:" +msgstr "" + +msgid "Sync failure moving back to origin !" +msgstr "Selhání synchronizace přesouvá zpět na původní !" + +# +msgid "System" +msgstr "Systém" + +# +#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) +msgid "TRANSLATOR_INFO" +msgstr "(# Autor: ims <ims21@users.sourceforge.net> 2012-2014)" + +# +msgid "TS file is too large for ISO9660 level 1!" +msgstr "TS soubor je příliš velký pro ISO9660 level 1!" + +msgid "TSID" +msgstr "" + +msgid "TV physical address report" +msgstr "Ohlášení fyzické adresy TV" + +msgid "TXT PID" +msgstr "" + +# +msgid "Table of contents for collection" +msgstr "Obsah kompilace" + +msgid "Tags" +msgstr "Tagy" + +msgid "Teletext subtitle color" +msgstr "Barva teletextových titulků" + +# +msgid "Temperature and fan control" +msgstr "Teplota a nastavení ventilátoru" + +# +msgid "Terrestrial" +msgstr "Pozemní" + +# +msgid "Terrestrial provider" +msgstr "Pozemní poskytovatel" + +# +msgid "Test DiSEqC settings" +msgstr "Test DiSEqC nastavení" + +# +msgid "Test mode" +msgstr "Testovací mód" + +msgid "Test the network configuration of your receiver.\n" +msgstr "Otestuje síťové nastavení přijímače.\n" + +# +msgid "Test type" +msgstr "Typ testu" + +# +msgid "Text color" +msgstr "Barva textu" + +msgid "Thai" +msgstr "Thajsky" + +# +msgid "" +"Thank you for using the wizard.\n" +"Please press OK to continue." +msgstr "" +"Děkujeme za použití průvodce.\n" +"Stiskněte OK pro pokračování." + +msgid "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." +msgstr "" +"Děkujeme za použítí průvodce. Přijímač je nyní připraven k používání.\n" +"Stiskněte OK a začněte přijímač používat." + +msgid "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?" +msgstr "DVD standard nepodporuje H.264 (HDTV) video streamy. Chcete místo toho vytvořit speciální formát data DVD (které ale nepůjde přehrát ve stolních DVD přehrávačích)?" + +msgid "The PIN code has been changed successfully." +msgstr "PIN kód byl úspěšně změněn." + +msgid "The PIN codes you entered are different." +msgstr "PIN kód, který jste zadali, je odlišný." + +msgid "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" +msgstr "" +"USB zařízení bylo připraveno jako bootovací.\n" +"Nyní můžete nahrát soubor NFI s image! " + +# +msgid "The backup failed. Please choose a different backup location." +msgstr "Zálohování selhalo. Zvolte jiné umístění zálohy." + +# +#, python-format +msgid "" +"The current beta image might not be stable.\n" +"For more information see %s." +msgstr "" +"Aktuální beta image nemusí být stabilní.\n" +"Pro více informací navštivte %s." + +# +#, python-format +msgid "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." +msgstr "" +"Do adresáře %s nelze zapisovat.\n" +"Vyberete adresář, do kterého je možné zapisovat." + +# +#, python-format +msgid "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" +msgstr "" +"Bylo nalezeno zařízení:\n" +"\n" +"%s\n" +"\n" +"Přejete si zapsat USB flasher do tohoto zařízení?" + +# +msgid "The following files were found..." +msgstr "Následující soubory byly nalezeny..." + +msgid "The md5sum validation failed, the file may be corrupted!" +msgstr "Ověření md5sum selhalo, soubor může být poškozen!" + +# +msgid "" +"The network wizard extension is not installed!\n" +"Please install it." +msgstr "" +"NetworkWizard rozšíření není nainstalováno!\n" +"Prosím, nainstalujte ho." + +#, python-format +msgid "The path %s already exists." +msgstr "Cesta %s již existuje." + +msgid "The pin code you entered is wrong." +msgstr "Zadaný PIN kód je chybný." + +#, python-format +msgid "The results have been written to %s." +msgstr "Výsledky byly zapsány do %s." + +msgid "The sleep timer has been activated." +msgstr "Časovač vypnutí byl aktivován." + +msgid "The sleep timer has been disabled." +msgstr "Časovač vypnutí byl zrušen." + +# +msgid "" +"The software management extension is not installed!\n" +"Please install it." +msgstr "" +"Softwaremanagement rozšíření není nainstalováno!\n" +"Prosím, nainstalujte ho." + +# +#, python-format +msgid "The status of the current beta image could not be checked because %s can not be reached." +msgstr "Stav aktuálního beta image nemohl být ověřen z důvodu nedostupnosti %s." + +msgid "The timer file (timers.xml) is corrupt and could not be loaded." +msgstr "Soubor časovače (timers.xml) je porušený a nemohl být načten." + +msgid "The user interface of your receiver is restarting" +msgstr "Uživatelské rozhraní se restartuje" + +msgid "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" +msgstr "" +"Uživatelské rozhraní bylo restartováno\n" +"kvůli chybě v mytest.py" + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." +msgstr "" +"Plugin pro bezdrátovou LAN není nainstalován!\n" +"Nainstalujte plugin a zvolte, co chcete dělat dál." + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it." +msgstr "" +"Plugin pro bezdrátovou LAN není nainstalován!\n" +"Nainstalujte plugin." + +msgid "The wizard can backup your current settings. Do you want to do a backup now?" +msgstr "Průvodce může uložit Vaše současná nastavení. Přejete si nyní zazálohovat?" + +#, python-format +msgid "The wizard found a configuration backup. Do you want to restore your old settings from %s?" +msgstr "Průvodce nalezl zálohu konfigurace. Přejete si obnovit Vaše stará nastavení z %s?" + +# +msgid "The wizard is finished now." +msgstr "Průvodce skončil." + +# +msgid "There are at least " +msgstr "Existuje nejméně " + +# +#, python-format +msgid "There are at least %s updates available." +msgstr "K dispozici je nejméně %s aktualizací." + +# +msgid "There are currently no outstanding actions." +msgstr "V současné době nejsou žádné nedokončené akce." + +# +msgid "There are no updates available." +msgstr "Nejsou žádné dostupné aktualizace." + +msgid "There is no signal to lock on !" +msgstr "Není signál pro uzamčení!" + +# +msgid "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" +msgstr "" +"Nemusí být dostatek místa na vybraném disku.\n" +"Opravdu si přejete pokračovat." + +# +msgid "This DVD RW medium is already formatted - reformatting will erase all content on the disc." +msgstr "DVD RW médium je již naformátováno - nové formátování smaže veškerý obsah na tomto DVD." + +msgid "" +"This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!" +msgstr "" +"Tento plugin vytvoří USB zařízení, které může být použito k aktualizaci firmware Vašeho přijímače bez použití sítě nebo WLAN připojení.\n" +"Nejprve je potřeba USB zařízení připravit jako bootovací.\n" +"V dalším kroku může být stažen NFI soubor ze serveru s aktualizacemi a uložen na USB zařízení.\n" +"Jestliže máte již připravené bootovací USB zařízení, připojte ho nyní. V opačném případě připojte USB zařízení o minimální velikosti 64 MB!" + +# +msgid "This plugin is installed." +msgstr "Plugin je nainstalován." + +# +msgid "This plugin is not installed." +msgstr "Plugin není nainstalován." + +# +msgid "This plugin will be installed." +msgstr "Plugin bude nainstalován." + +# +msgid "This plugin will be removed." +msgstr "Plugin bude odstraněn." + +#, python-format +msgid "This receiver cannot decode %s streams!" +msgstr "Tento přijímač nemůže dekódovat %s streamů!" + +# +msgid "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration" +msgstr "" +"Tento test ověří, zda je nakonfigurován DNS.\n" +"Pokud obdržíte zprávu \"nepotvrzeno\":\n" +"- ověřte nastavení DHCP, kabelu a síťové karty\n" +"- pokud jste nastavili DNS server ručně, prosím, ověřte nastavení v konfiguraci DNS serveru" + +# +msgid "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" +msgstr "" +"Tento test ověří, zda je zapojený kabel do síťové karty.\n" +"Pokud obdržíte zprávu \"odpojeno\":\n" +"- ověřte, zda je kabel zapojen\n" +"- ověřte, že kabel není poškozen" + +# +msgid "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" +msgstr "" +"Tento test ověří, zda je nastavena správná IP adresa síťové karty.\n" +"Pokud obdržíte zprávu \"nepotvrzeno\":\n" +"- nebyla nalezna žádná platná IP adresa\n" +"- ověřte nastavení DHCP, kabelu a síťové karty" + +# +msgid "" +"This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." +msgstr "" +"Tento test ověří, zda je nastavena síťová karta pro automatickou konfiguraci pomocí DHCP.\n" +"Pokud obdržíte zprávu \"zakázáno\":\n" +"- pak je síťová karta nastavena na ruční nastavení síťové adresy (IP)\n" +"- ověřte, že jste zadali správnou IP adresu\n" +"Pokud obdržíte zprávu \"povoleno\":\n" +"- ověřte, že máte správně nastavený a fungující DHCP server ve Vaší síti." + +# +msgid "This test detects your configured LAN adapter." +msgstr "Tento test detekuje nakonfigurovaný síťový adapter (LAN)." + +msgid "" +"This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\n" +"Are you sure?" +msgstr "" +"Budou (pře)počítány všechny pozice Vašeho motoru a mohou být odstraněny předchozí uložené pozice a jemné ladění!\n" +"Jste si jistý ?" + +# +msgid "Three" +msgstr "Tři" + +# +msgid "Threshold" +msgstr "Práh" + +# +msgid "Thu" +msgstr "Čt" + +# +msgid "Thumbnails" +msgstr "Náhledy" + +# +msgid "Thursday" +msgstr "Čtvrtek" + +# +msgid "Time" +msgstr "Čas" + +# +msgid "Time scale" +msgstr "Měřítko času" + +# +msgid "Timer" +msgstr "Časovač" + +# +msgid "Timer Overview" +msgstr "Přehled časovačů" + +# +msgid "Timer edit" +msgstr "Upravit časovač" + +# +msgid "Timer editor" +msgstr "Úprava časovače" + +# +msgid "Timer entry" +msgstr "Zadání časovače" + +# +msgid "Timer log" +msgstr "Log časovače" + +# +msgid "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" +msgstr "" +"Zjištěno překrývání časovačů v timers.xml!\n" +"Zkontrolujte to, prosím!" + +# +msgid "Timer overview" +msgstr "Přehled časovačů" + +# +msgid "Timer recording location" +msgstr "Umístění nahrávek časovače" + +# +msgid "Timer sanity error" +msgstr "Nelogické časování" + +# +msgid "Timer selection" +msgstr "Výběr časovače" + +msgid "Timer selection..." +msgstr "Výběr časovače..." + +msgid "Timer type" +msgstr "Typ časovače" + +# +msgid "Timeshift" +msgstr "Timeshift" + +msgid "Timeshift Live" +msgstr "" + +# +msgid "Timeshift location" +msgstr "Timeshift" + +# +msgid "Timeshift not possible!" +msgstr "Časový posun není možný!" + +# +msgid "Timezone" +msgstr "Časové pásmo" + +# +msgid "Title" +msgstr "Titul" + +# +msgid "Title properties" +msgstr "Vlastnosti" + +# +msgid "Titleset mode" +msgstr "Nastavování titulu" + +# +msgid "To audio selection" +msgstr "Výběr zvuku" + +# +msgid "To subtitle selection" +msgstr "Výběr titulků" + +msgid "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." +msgstr "" +"Pro aktualizaci firmware Vašeho přijímače proveďte následující kroky:\n" +"1) vypněte přijímač hlavním vypínačem vzadu na přístroji a ujistěte se, že bootovací USB zařízení je připojeno.\n" +"2) zapněte hlavní vypínač a držte 10s stisknuté tlačítko DOWN na předním panelu.\n" +"3) počkejte, až zařízení nabootuje a následujte instrukce průvodce." + +# +msgid "Today" +msgstr "Dnes" + +# +msgid "Toggle a cut mark at the current position" +msgstr "přepnout střihovou značku na této pozici" + +# +msgid "Tone amplitude" +msgstr "Rozsah" + +# +msgid "Tone mode" +msgstr "Mód tónu" + +# +msgid "Toneburst" +msgstr "Toneburst" + +# +msgid "Toneburst A/B" +msgstr "Toneburst A/B" + +msgid "Top and bottom" +msgstr "Nahoru a dolů" + +# +msgid "Track" +msgstr "Stopa" + +# +msgid "Translation" +msgstr "Překlad" + +# +msgid "Translation:" +msgstr "Překlad:" + +msgid "Translations" +msgstr "Překlady" + +# +msgid "Transmission mode" +msgstr "Přenosový mód" + +# +msgid "Transponder" +msgstr "Transponder" + +# +msgid "Transponder type" +msgstr "Typ transponderu" + +# +msgid "Trash can" +msgstr "Koš" + +# +msgid "Tries left:" +msgstr "Zbývá pokusů:" + +# +msgid "Try to find used transponders in cable network.. please wait..." +msgstr "Zkouším najít použité transpondery v kabelové síti ... prosím, čekejte ..." + +# +msgid "Trying to download a new packetlist. Please wait..." +msgstr "Stahuje se nový seznam balíčků. Prosím, čekejte..." + +# +msgid "Tue" +msgstr "Út" + +# +msgid "Tuesday" +msgstr "Úterý" + +# +msgid "Tune" +msgstr "Naladit" + +msgid "Tune and focus" +msgstr "Ladění a fokus" + +# +msgid "Tune failed!" +msgstr "Ladění selhalo!" + +# +msgid "Tuner" +msgstr "Tuner" + +# +msgid "Tuner configuration" +msgstr "Konfigurace tuneru" + +msgid "Tuner is not supported" +msgstr "tuner není podporován" + +# +msgid "Tuner slot" +msgstr "Slot tuneru" + +# +msgid "Tuner status" +msgstr "Stav tuneru" + +# +#, python-format +msgid "Tuner status %s" +msgstr "Stav tuneru %s" + +# +msgid "Tuner type" +msgstr "Typ tuneru" + +# +msgid "Turkish" +msgstr "Turecky" + +msgid "Turn on the power LED during standby." +msgstr "Zapne LED napájení při standby." + +msgid "Turning step size" +msgstr "Velikost kroku ladění" + +# +msgid "Two" +msgstr "Dva" + +# +msgid "Type" +msgstr "Typ" + +# +msgid "Type of scan" +msgstr "Typ prohledávání" + +# +msgid "USALS" +msgstr "USALS" + +msgid "USALS calibration" +msgstr "USALS kalibrace" + +# +msgid "USB stick" +msgstr "USB zařízení" + +# +msgid "USB stick wizard" +msgstr "Průvodce pro USB zařízení" + +# +# +msgid "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Probíhá bezobslužná aktualizace\n" +"Čekejte, dokud se přijímač nerestartuje\n" +"To může trvat několik minut" + +# +msgid "Undo install" +msgstr "Zrušit instalaci" + +# +msgid "Undo uninstall" +msgstr "Ponechat" + +msgid "Unencrypted" +msgstr "Nezabezpečeno" + +# +msgid "UnhandledKey" +msgstr "Neošetřené tlačítko" + +# +msgid "Unicable" +msgstr "" + +# +msgid "Unicable LNB" +msgstr "" + +# +msgid "Unicable Martix" +msgstr "" + +# +msgid "Uninstall" +msgstr "Odinstalovat" + +# +msgid "Universal LNB" +msgstr "Univerzální LNB" + +msgid "Unknown" +msgstr "Neznámý" + +# +msgid "Unmount" +msgstr "Odpojit" + +# +msgid "Unsupported" +msgstr "Nepodporováno" + +# +msgid "Update" +msgstr "Aktualizace" + +# +msgid "Update and ask to reboot" +msgstr "Aktualizovat a požádat o restart přijímače" + +msgid "Update and reboot (recommended)" +msgstr "Aktualizovat a restartovat (doporučeno)" + +# +msgid "Update channel list only" +msgstr "Aktualizovat jen seznam kanálů" + +#, python-format +msgid "Update completed, %d package was installed." +msgid_plural "Update completed, %d packages were installed." +msgstr[0] "Aktualizace dokončena. %d balíček byl nainstalován." +msgstr[1] "Aktualizace dokončena. %d balíčky byly nainstalovány." +msgstr[2] "Aktualizace dokončena. %d balíčků bylo nainstalováno." + +msgid "Update completed. Do you want to reboot your receiver?" +msgstr "Aktualizace skončila. Chcete restartovat přijímač?" + +msgid "Update failed. Your receiver does not have a working internet connection." +msgstr "Aktualizace se nezdařila. Přijímač nemá funkční připojení k internetu." + +msgid "Update has completed." +msgstr "Aktualizace je dokončena." + +# +msgid "Updatefeed not available." +msgstr "Zdroj aktualizací není k dispozici." + +# +msgid "Updating software catalog" +msgstr "Aktualizace katalogu programů" + +# +msgid "Upgrading" +msgstr "Aktualizace" + +# +msgid "Use" +msgstr "Použít" + +# +msgid "Use DHCP" +msgstr "Použít DHCP" + +msgid "Use EIT EPG information when it is available." +msgstr "Používat EIT EPG informace, jestliže jsou dostupné." + +msgid "Use FreeSat EPG information when it is available." +msgstr "Používat FreeSat EPG informace, jestliže jsou dostupné." + +msgid "Use MHW EPG information when it is available." +msgstr "Používat MHW EPG informace, jestliže jsou dostupné." + +msgid "Use Netmed EPG information when it is available." +msgstr "Používat Netmed EPG informace, jestliže jsou dostupné." + +msgid "Use TV remote control" +msgstr "Používat dálkové ovládání TV" + +# +msgid "Use USALS for this sat" +msgstr "Použít USALS pro tento satelit" + +msgid "Use ViaSat EPG information when it is available." +msgstr "Používat ViaSat EPG informace, jestliže jsou dostupné." + +# +msgid "Use Virgin EPG information when it is available." +msgstr "Používat Virgin EPG informace, jestliže jsou dostupné." + +# +msgid "Use a gateway" +msgstr "Použít bránu (gateway)" + +msgid "Use fastscan channel names" +msgstr "Použít fastscan jména kanálů" + +msgid "Use fastscan channel numbering" +msgstr "Použít fastscan číslování kanálů" + +# +msgid "Use frequency or channel" +msgstr "Použít frekvenci nebo kanál" + +msgid "Use individual settings for each directory" +msgstr "Používat vlastní nastavení pro každý adresář" + +# +msgid "Use interface" +msgstr "Použít interface" + +msgid "Use official channel numbering" +msgstr "Použít ofciální číslování kanálů" + +# +msgid "Use original DVB subtitle position" +msgstr "Poloha DVB titulků" + +msgid "Use original teletext position" +msgstr "Použít původní pozici teletextu" + +# +msgid "Use power measurement" +msgstr "Použít měření proudu" + +# +msgid "Use the network wizard to configure selected network adapter" +msgstr "Použijte síťového průvodce k nakonfigurování vybraného síťového adaptéru" + +# +msgid "Use the network wizard to configure your network\n" +msgstr "Použijte průvodce pro nakonfigurování vaší sítě\n" + +# +msgid "Use the up/down keys on your remote control to select an option. After that, press OK." +msgstr "Použijte šipku nahoru / dolu na DO pro výběr volby. Potom stiskněte OK." + +# +msgid "Use the wizard to set up basic features" +msgstr "Použijte průvodce pro nastavení základních vlastností" + +msgid "Use these input device settings?" +msgstr "Použít nastavení tohoto vstupního zařízení?" + +msgid "Use these settings?" +msgstr "Použít tato nastavení?" + +# +msgid "Use this video enhancement settings?" +msgstr "Použít toto rozšiřující video nastavení?" + +# +msgid "Use trash can in movielist" +msgstr "Používat koš v seznamu souborů" + +# +msgid "Used service scan type" +msgstr "Použítý typ vyhledávání programu" + +# +msgid "User - bouquets" +msgstr "Oblíbené" + +# +msgid "User defined" +msgstr "Uživatelsky definované" + +msgid "User defined transponder" +msgstr "uživatem definovaný transponder" + +msgid "User interface" +msgstr "Uživatelské rozhraní" + +msgid "Username" +msgstr "Uživatel" + +#, python-format +msgid "Using LNB %d" +msgstr "Používá se LNB %d" + +msgid "Using fixed address" +msgstr "Používaná pevná adresa" + +#, python-format +msgid "Using tuner %s" +msgstr "Používá se tuner %s" + +msgid "Usually when the subtitle language is the same as the audio language, the subtitles will not be used. Enable this option to allow these subtitles to be used." +msgstr "Obvykle, když je jazyk titulků stejný jako jazyk zvuku, titulky nebudou použity. Povolením této volby umožníte povolení těchto titulků. " + +# +msgid "VCR scart" +msgstr "VCR scart" + +# +msgid "VMGM (intro trailer)" +msgstr "" + +# +msgid "Vertical" +msgstr "Vertikální" + +msgid "Vertical turning speed" +msgstr "Vertikální rychlost ladění" + +msgid "Video PID" +msgstr "" + +# +msgid "Video enhancement preview" +msgstr "Přehled korekcí obrazu" + +# +msgid "Video enhancement settings" +msgstr "Korekce obrazu" + +# +msgid "Video enhancement setup" +msgstr "Nastavení korekce obrazu" + +# +msgid "Video fine tuning" +msgstr "Doladění obrazu" + +# +msgid "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." +msgstr "" +"Výběr zdroje signálu\n" +"\n" +"Stiskněte OK jestliže vidíte tuto stránku na TV (nebo vyberte jiný zdroj signálu).\n" +"\n" +"Další zdroj signálu bude automaticky prozkoumán během 10 sekund." + +# +msgid "Video mode selection." +msgstr "Výběr video módu" + +# +msgid "Video output" +msgstr "Video výstup" + +# +msgid "Video setup" +msgstr "Nastavení videa" + +# +msgid "Video wizard" +msgstr "Video průvodce" + +#, python-format +msgid "Video: %s fps" +msgstr "" + +msgid "VideoMode" +msgstr "Videomód" + +msgid "Videocodec" +msgstr "Kodek videa" + +# +msgid "Videoformat" +msgstr "Formát videa" + +# +msgid "Videosize" +msgstr "Rozlišení" + +# +msgid "View Rass interactive..." +msgstr "Prohlížet Rass interaktivně..." + +# +msgid "View details" +msgstr "Detaily" + +# +msgid "View list of available " +msgstr "Prohlédnout seznam dostupných" + +# +msgid "View list of available CommonInterface extensions" +msgstr "Prohlédnout seznam dostupných rozšíření pro CommonInterface" + +# +msgid "View list of available EPG extensions." +msgstr "Prohlédnout seznam dostupných rozšíření pro EPG." + +# +msgid "View list of available Satellite equipment extensions." +msgstr "Prohlédnout seznam dostupných rozšíření satelitního zařízení." + +# +msgid "View list of available communication extensions." +msgstr "Prohlédnout seznam dostupných rozšíření pro komunikaci." + +# +msgid "View list of available default settings" +msgstr "Prohlédnout seznam dostupných standardní nastavení" + +# +msgid "View list of available display and userinterface extensions." +msgstr "Zobrazit seznam rozšíření pro zobrazení a uživatelské rozhraní" + +# +msgid "View list of available multimedia extensions." +msgstr "Prohlédnout seznam dostupných rozšíření pro multimédia." + +# +msgid "View list of available networking extensions" +msgstr "Prohlédnout seznam dostupných rozšíření pro sítě" + +# +msgid "View list of available recording extensions" +msgstr "Prohlédnout seznam dostupných rozšíření pro nahrávání" + +# +msgid "View list of available skins" +msgstr "Prohlédnout seznam dostupných skinů" + +# +msgid "View list of available software extensions" +msgstr "Prohlédnout seznam dostupných programových rozšíření" + +# +msgid "View list of available system extensions" +msgstr "Prohlédnout seznam dostupných systémových rozšíření " + +# +msgid "View photos..." +msgstr "Zobrazit fotografie..." + +# +msgid "View teletext..." +msgstr "Teletext..." + +# +msgid "View video CD..." +msgstr "Zobrazit video CD..." + +# +msgid "Virtual keyboard" +msgstr "Virtuální klávesnice" + +# +msgid "Voltage mode" +msgstr "Mód napětí" + +# +msgid "Volume" +msgstr "Hlasitost" + +# +msgid "W" +msgstr "Západní" + +# +msgid "WEP" +msgstr "WEP" + +msgid "WLAN connection" +msgstr "WLAN připojení" + +# +msgid "WPA" +msgstr "WPA" + +# +msgid "WPA or WPA2" +msgstr "WPA nebo WPA2" + +# +msgid "WPA2" +msgstr "WPA2" + +# +msgid "WSS on 4:3" +msgstr "WSS na 4:3" + +# +msgid "Waiting" +msgstr "Čekání" + +msgid "Waiting for mount" +msgstr "Čeká se na připojení" + +msgid "Waiting for partition" +msgstr "Čeká se na oddíl" + +msgid "Wakeup" +msgstr "probudit" + +msgid "Wakeup TV from standby" +msgstr "Probouzet TV ze standby" + +msgid "Wakeup receiver for start timer" +msgstr "Probouzet přijímač pro spuštění časovače" + +msgid "Wakeup receiver from standby" +msgstr "Probouzet receiver ze standby" + +msgid "Wakeup signal from TV" +msgstr "Signál probuzení z TV" + +msgid "Wakeup type" +msgstr "Typ probuzení" + +msgid "Warning: no LNB; using factory defaults." +msgstr "Varování: žádný LNB; použiváno tovární nastavení." + +# +msgid "Watch movies..." +msgstr "Sledovat filmy..." + +# +msgid "Watch recordings..." +msgstr "Sledovat nahrávky..." + +# +msgid "Wed" +msgstr "St" + +# +msgid "Wednesday" +msgstr "Středa" + +msgid "Weekday" +msgstr "Všední den " + +msgid "Weighted position" +msgstr "Vážená pozice" + +# +msgid "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." +msgstr "" +"Vítejte v editoru střihů.\n" +"\n" +"Najděte začátek materiálu, který chcete vystřihnout, stiskněte OK a zvolte 'začátek střihu'.\n" +"\n" +"Poté najděte konec, stiskněte OK a zvolte 'konec střihu'. To je vše." + +msgid "Welcome to the image upgrade wizard. The wizard will assist you in upgrading the firmware of your receiver by providing a backup facility for your current settings and a short explanation of how to upgrade your firmware." +msgstr "Vítejte v průvodci aktualizace image. Průvodce pomůže při aktualizaci image přijímače, provedení zálohy nastavení a krátkého vysvětlení, jak zaktualizovat firmware." + +msgid "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" +msgstr "" +"Vítáme Vás.\n" +"\n" +"Chcete-li připojit Váš přijímač do internetu, tento průvodce Vás provede základním nastavením sítě přijímače.\n" +"\n" +"Stiskněte OK pro spuštění konfigurace Vaší sítě" + +msgid "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." +msgstr "" +"Vítejte.\n" +"\n" +"Tento průvodce vás provede základním nastavením Vašeho přijímače.\n" +"Stiskněte OK na dálkovém ovladači pro přesun na další krok." + +# +msgid "Welcome..." +msgstr "Vítejte..." + +# +msgid "West" +msgstr "Západní" + +msgid "West limit set" +msgstr "Západní limit nastaven" + +# +msgid "What do you want to scan?" +msgstr "Co chcete prohledat?" + +msgid "When enabled the PiP can be closed by the exit button." +msgstr "Jestliže je povoleno, pak PIP může být ukončen tlačítkem Exit" + +msgid "When enabled the arrow buttons around the OK button will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled the left, right, CH+/-, B+/-, P+/- buttons will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +# +msgid "When enabled you can specify a timeframe to ignore the shutdown timer when the receiver is in standby mode" +msgstr "Při povolení můžete určit začátek ignorování časovače vypnutí, jestliže je přijímač v pohotovostním režimu" + +msgid "When enabled you can specify a timeframe were the inactivity sleeptimer is ignored. Not the detection is disabled during this timeframe but the inactivity timeout is disabled" +msgstr "Povolením můžete zadat dobu, po kterou bude ignorován časovač neaktivity. Po tuto dobu je zakázán odpočet neaktivity, nikoliv vlastní detekce neaktivity." + +msgid "When enabled you can zap channels with the CH+/-, B+/-, P+/- buttons instead of opening the channel selection list." +msgstr "Jestliže je povoleno, pak tlačítky CH+/-, B+/-, P+/- můžete přepínat kanály místo otevření přehledu kanálů.." + +msgid "When enabled you get the channel selection list via the OK button, the infobar toggle is then transfered to exit button" +msgstr "Pokud je povoleno, stisknutím tlačítka OK zobrazíte přehled kanálů a přepínání Infobaru je převedeno pod tlačítko Exit." + +msgid "When enabled, AIT data will be included in http streams. This allows a client receiver to use HbbTV." +msgstr "Při povolení budou přidávána AIT data do streamu. To umožní klientskému přijímači používat HbbTV." + +msgid "When enabled, ECM data will be included in http streams. This allows a client receiver to do the descrambling." +msgstr "Při povolení budou přidávána ECM data do streamu. To umožní klientskému přijímači provádět dekódování." + +msgid "When enabled, EIT data will be included in http streams. This allows a client receiver to show EPG." +msgstr "Při povolení budou přidávána EIT data do streamu. To umožní klientskému přijímači zobrazovat EPG." + +msgid "When enabled, a popup message will be shown when a movie has finished and the next one will start." +msgstr "Při povolení bude zobrazována zpráva po skončení přehrávání před začátkem nového přehrávání." + +msgid "When enabled, a popup message will be shown when a recording starts." +msgstr "Jestliže je povoleno, pak bude zobrazována zpráva při začátku nahrávání." + +msgid "When enabled, a radio background image will be visible while listening to a radio channel." +msgstr "Povoluje zobrazovat pozadí při poslechu rádia." + +msgid "When enabled, a recording is allowed to interrupt live tv, when there are no free tuners." +msgstr "Jestliže je povoleno, pak v případě, když není již zádný volný tuner, nahrávání může přerušit živé vysílání. " + +msgid "When enabled, a warning will be displayed and the user will get an option to stop or to continue the timeshift." +msgstr "Jestliže je povoleno, bude zobrazeno varování a uživatel bude mít možnost timeshift ukončit nebo pokračovat." + +# +msgid "When enabled, authentication is required to watch http streams." +msgstr "Jestliže je povoleno, pak je vyžadováno ověření pro sledování http streamu." + +msgid "When enabled, channel numbering will start at '1' for each bouquet." +msgstr "Při povolení bude číslování kanálů začínat pro každý přehled od čísla '1'." + +msgid "When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen." +msgstr "Jestliže je povoleno, pak obsah s poměrem stran 4:3 bude roztažen na celou obrazovku." + +msgid "When enabled, continue to the next bouquet when the last channel of the current bouquet is reached while changing channels." +msgstr "Při povolení bude po dosažení posledního programu v aktuálním přehledu pokračovat přepínání v následujícím přehledu." + +msgid "When enabled, deleted recordings are moved to the trash can, instead of being deleted immediately." +msgstr "Jestliže je povoleno, pak smazané nahrávky jsou umístěny do koše , místo toho, aby byly ihned odstraněny." + +msgid "When enabled, display the EIT now/next eventdata in infobar. When disabled, display now/next eventdata from the EPG cache instead." +msgstr "Jestliže je povoleno, zobrazují se EIT nyní/další data události v infobaru. Při zakázání se místo toho zobrazují nyní/další data události z EPG cache." + +msgid "When enabled, encryption info will be shown in the infobar (when supported by the skin)." +msgstr "Jestliže je povoleno, informace o kódování budou zobrazovány v infobaru ( umožňuje-li to skin )." + +msgid "When enabled, error messages related to the Common Interface module will not be shown." +msgstr "Jestliže je povoleno, pak nejsou zobrazovány chyby Common Interface modulu." + +msgid "When enabled, error messages related to zapping will not be shown." +msgstr "Jestliže je povoleno, nebudou zobrazovány chyby související s přepínáním." + +msgid "When enabled, external subtitles will be always turned on for playback movie." +msgstr "Jestliže je zapnuto, externí titulky budou při přehrávání filmu automaticky zapnuty." + +msgid "When enabled, graphical DVB subtitles are preferred over teletext subtitles, when both types are available." +msgstr "Jestliže je povoleno, grafické DVB titulky jsou preferovány před teletextovými titulky v případě, že jsou oba typy titulků dostupné." + +msgid "When enabled, graphical DVB subtitles will be centered horizontally." +msgstr "Jestliže je povoleno, grafické DVB titulky budou horizontálně centrovány." + +msgid "When enabled, graphical DVB subtitles will be displayed at their original position." +msgstr "Jestliže je povoleno, grafické DVB titulky budou zobrazovány na jejich původní pozici." + +msgid "When enabled, graphical DVB subtitles will be displayed in yellow, instead of the original color." +msgstr "Jestliže je povoleno, grafické DVB titulky budou zobrazovány žlutě namísto jejich původní barvy." + +msgid "When enabled, http streams are descrambled on the server side. The (remote) client receiver does not have to do descrambling." +msgstr "Při povolení budou http streamy dekódovány na straně serveru. Vzdálený klientský přijímač nemusí pak provádět dekódování." + +msgid "When enabled, it is possible to leave the movieplayer with exit." +msgstr "Jestliže je povoleno, je možné opouštět movieplayer pomocí Exit." + +msgid "When enabled, measure power consumption to detect when the rotor stops turning (when supported by the tuner)." +msgstr "Pokud je povoleno, přijímač se bude snažit měřením spotřeby proudu určit, kdy motor ukončí natáčení (pokud je podporováno tunerem)." + +msgid "When enabled, number markers will be hiden." +msgstr "Při povolení budou skryty číselné značky." + +msgid "When enabled, services may be grouped in multiple bouquets." +msgstr "Při povolení mohou být programy seskupovány do vícenásobných přehledů." + +# +msgid "When enabled, show channel numbers in the channel selection screen." +msgstr "Při povolení zobrazuje čísla kanálů ve výběru programů" + +msgid "When enabled, subtitles for the hearing impaired can be used." +msgstr "Jestliže je povoleno, budou použity titulky pro sluchově postižené." + +msgid "When enabled, subtitles for the hearing impaired will be preferred over normal subtitles, when both types are available." +msgstr "Jestliže je povoleno, titulky pro sluchově postižené budou preferovány před normálními titulky, jestliže oba typy budou dostupné." + +msgid "When enabled, teletext pages will be cached, allowing faster access." +msgstr "Povolení vyrovnávací paměti pro teletext zajišťuje rychlejší přistup." + +msgid "When enabled, teletext subtitles will be displayed at their original position." +msgstr "Jestliže je povoleno, teletextové titulky budou zobrazovány na původní pozici." + +msgid "When enabled, the VCR scart option will be shown on the main menu" +msgstr "Jestliže je povoleno, možnosti VCR scart budou zobrazeny v hlavním menu." + +msgid "When enabled, the channel selection list will be hidden while listening to a radio channel" +msgstr "Při povolení bude při poslechu rádia skrytý seznam pro výběr programů." + +msgid "When enabled, the infobar will be displayed when a new event starts." +msgstr "Při povolení bude infobar automaticky zobrazen při začátku každé nové události (pořadu). " + +msgid "When enabled, the infobar will be displayed when changing channels." +msgstr "Při povolení bude infobar zobrazován při každé změně kanálů." + +msgid "When enabled, the infobar will be displayed when skipping forwards/backwards during media playback." +msgstr "Při povolení bude infobar zobrazován při každém přeskočení vpřed/vzad během přehrávání souborů." + +msgid "When enabled, the lenght of each recording will be shown in the movielist (this might cause some additional loading time)." +msgstr "Jestliže je povoleno, délka každého záznamu bude zobrazená v seznamu souborů (to může prodloužit dobu načítání). " + +msgid "When enabled, the original line breaks will be removed from the teletext subtitles." +msgstr "Jestliže je povoleno, původní odřádkování bude z teletextových titulků odstraněno." + +msgid "When enabled, the receiver will automatically use the audio track which you selected before." +msgstr "Jestliže je povoleno, bude přijímač automaticky používat zvukovou stopu, která byla vybrána dříve. " + +msgid "When enabled, the receiver will automatically use the subtitles which you selected before." +msgstr "Jestliže je povoleno, bude přijímač automaticky používat titulky, které byla vybrány dříve. " + +msgid "When enabled, the receiver will no longer monitor the tuned transponder for possible changes. Do not use this option unless you know what you are doing." +msgstr "Při povolení nebude přijímač dále sledovat možné změny naladěných transponderů. Neměňte toto nastavení dokud si nejste jisti, co děláte." + +msgid "When enabled, the receiver will select an AC3 track (when available)." +msgstr "Jestliže je povoleno, přijímač bude vybírat AC3 stopu (bude-li dostupná)." + +msgid "When enabled, the receiver will select an AC3+ track (when available)." +msgstr "Jestliže je povoleno, přijímač bude vybírat AC3+ stopu (bude-li dostupná)" + +msgid "When enabled, timeshift starts automatically in background after specified time." +msgstr "Jestliže je povoleno, timeshift se na pozadí automaticky spustí po nastavené době." + +# +msgid "When enabled, use DHCP for the IP configuration." +msgstr "Při povolení používá DHCP pro nastavení IP." + +msgid "When enabled, your receiver will detect activity on the VCR SCART input." +msgstr "Jestliže je povoleno, přijímač bude detekovat aktivitu na vstupu VCR SCART." + +msgid "When nonzero, a recording will start earlier than the starting time indicated by the EPG." +msgstr "Při nenulové hodnotě nahrávání začne dříve, než je čas začátku uvedený v EPG. " + +msgid "When nonzero, a recording will stop later than the ending time indicated by the EPG." +msgstr "Při nenulové hodnotě nahrávání skončí později, než je čas konce uvedený v EPG. " + +msgid "When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture." +msgstr "Pro obsah s poměrem stran 16:9 zvolte, zda chcete změnit velikost/roztáhnout obraz. " + +msgid "When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture." +msgstr "Pro obsah s poměrem stran 4:3 zvolte, zda chcete změnit velikost/roztáhnout obraz. " + +# +msgid "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" +msgstr "" +"Jestliže provedete tovární nastavení, ztratíte veškerá konfigurační data\n" +"(včetně přehledů, programů, satelitních dat ...)\n" +"Po dokončení továrního nastavení bude přijímač automaticky restartován!\n" +"\n" +"Chcete opravdu provést tovární nastavení?" + +# +msgid "Where do you want to backup your settings?" +msgstr "Kam chcete zazálohovat Vaše nastavení?" + +# +msgid "Where to save temporary timeshift recordings?" +msgstr "Kam ukládat dočasný záznam timeshiftu?" + +# +msgid "Wireless LAN" +msgstr "Bezdrátová LAN" + +# +msgid "Wireless network" +msgstr "Bezdrátová síť" + +msgid "Wireless network configuration..." +msgstr "Nastavení bezdrátové sítě..." + +msgid "Wireless network connection setup" +msgstr "Nastavení připojení bezdrátové sítě" + +msgid "Wireless network connection setup." +msgstr "Nastavení připojení bezdrátové sítě." + +msgid "Wireless network state" +msgstr "Stav bezdrátové sítě" + +msgid "With popup" +msgstr "s dialogem" + +msgid "Without popup" +msgstr "bez dialogu" + +msgid "Would you like to install a softcam?" +msgstr "Chcete nainstalovat softcam?" + +# +msgid "Write error while recording. Disk full?\n" +msgstr "Chyba zápisu během nahrávání. Plný disk?\n" + +# +msgid "Write failed!" +msgstr "Zápis selhal!" + +# +msgid "YPbPr" +msgstr "YPbPr" + +# +msgid "Year" +msgstr "Rok" + +# +msgid "Yellow DVB subtitles" +msgstr "Žluté DVB titulky" + +# +msgid "Yes" +msgstr "Ano" + +msgid "Yes and save" +msgstr "Ano a uložit" + +msgid "Yes and save in movie dir" +msgstr "Ano a uložit do adresáře filmů" + +# +msgid "Yes to all" +msgstr "Ano pro všechny" + +msgid "Yes, always" +msgstr "Ano, vždy" + +# +msgid "Yes, and delete this movie" +msgstr "Ano, a smazat tento film" + +# +msgid "Yes, backup my settings!" +msgstr "Ano, zazálohuj moje nastavení!" + +# +msgid "Yes, delete this movie and return to movie list" +msgstr "Ano, a smazat film a zpět na seznam filmů" + +# +msgid "Yes, do a manual scan now" +msgstr "Ano, proveď ruční prohledávání" + +# +msgid "Yes, do an automatic scan now" +msgstr "Ano, spusť automatické prohledávání" + +# +msgid "Yes, do another manual scan now" +msgstr "Ano, proveď další ruční prohledávání" + +# +msgid "Yes, perform a shutdown now." +msgstr "Ano, vypnout systém." + +# +msgid "Yes, restore the settings now" +msgstr "Ano, nyní obnovit nastavení" + +# +msgid "Yes, returning to movie list" +msgstr "Ano, vrátit se na seznam filmů" + +# +msgid "Yesterday" +msgstr "Včera" + +#, python-format +msgid "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" +msgstr "" +"Již máte seznam kanálů instalován,\n" +"chtěli byste odstranit\n" +"\"%s\"?" + +# +msgid "You can cancel the installation." +msgstr "Můžete zrušit instalaci." + +# +msgid "You can cancel the removal." +msgstr "Můžete zrušit odstranění." + +msgid "You can continue watching TV etc. while this is running." +msgstr "V průběhu můžete pokračovat ve sledování TV atd. " + +# +msgid "You can install this plugin." +msgstr "Můžete instalovat tento plugin." + +msgid "You can only burn receiver recordings!" +msgstr "Můžete vypalovat pouze nahrávky z přijímače!" + +# +msgid "You can remove this plugin." +msgstr "Můžete odstranit tento plugin" + +# +msgid "You cannot delete this!" +msgstr "Nemůžete toto smazat!" + +msgid "You didn't select a channel to record from." +msgstr "Nezvolili jste kanál pro nahrávání." + +# +msgid "You have chosen to backup your settings. Please press OK to start the backup now." +msgstr "Zvolili jste zálohování Vašich nastavení. Prosím, stiskněte OK pro spuštění zálohování." + +# +msgid "You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased." +msgstr "Zvolili jste vytvoření nového bootovacího USB zařízení. To způsobí, že na USB zařízení budou všechna předchozí data vymazána. " + +# +msgid "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." +msgstr "Zvolili jste obnovení Vašich nastavení. Enigma2 se po obnově zrestartuje. Prosím, stiskněte OK pro spuštění obnovy." + +# +#, python-format +msgid "You have to wait %s!" +msgstr "Musíte počkat %s!" + +msgid "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." +msgstr "" +"Potřebujete PC připojené k Vašemu přijímači. Pokud potřebujete další informace, navštivte stránku http://www.dm7025.de.\n" +"Váš přijímač bude nyní zastaven. Poté, co provedete aktualizaci pomocí instrukcí popsaných na zmíněné stránce, se Vás přijímač zeptá na obnovu nastavení." + +msgid "You system does not support ext4" +msgstr "Váš systém nepodporuje ext4" + +# +msgid "Your backup succeeded. We will now continue to explain the further upgrade process." +msgstr "Vaše záloha byla úspěšně provedena . Budeme pokračovat vysvětlením dalšího postupu aktualizace." + +# +msgid "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" +msgstr "Vaše kompilace přesahuje kapacitu jednovrstvého DVD. Budete potřebovat čisté dvouvrstvé DVD!" + +# +msgid "Your current collection will get lost!" +msgstr "Vaše současná kompilace bude ztracena!" + +# +msgid "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." +msgstr "" +"Firmware Vašeho frontprocesoru musí být aktualizován.\n" +"Stiskněte OK pro aktualizaci." + +msgid "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Frontprocesor bude aktualizován\n" +"Čekejte, dokud se přijímač nerestartuje\n" +"To může trvat několik minut" + +# +msgid "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." +msgstr "" +"Vaše internetové připojení nepracuje!\n" +"Zvolte prosím, co chcete dělat dál." + +#, python-format +msgid "Your internet connection is working (ip: %s)" +msgstr "Internetové připojení je funkční (ip: %s)" + +# +msgid "Your network configuration has been activated." +msgstr "Konfigurace sítě byla aktivována." + +msgid "Your receiver does not have an internet connection" +msgstr "Přijímač není připojen k internetu" + +# +msgid "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" +msgstr "" +"Přijímač je nyní připraven k používání.\n" +"\n" +"Internetové připojení nyní pracuje.\n" +"\n" + +msgid "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Váš přijímač je nyní připraven k používání.\n" +"\n" +"Vaše internetové připojení nyní pracuje.\n" +"\n" +"Prosím, stiskněte OK pro pokračování." + +msgid "Your receiver is rebooting" +msgstr "Přijímač se restartuje" + +msgid "Your receiver is shutting down" +msgstr "Přijímač se vypíná" + +msgid "Your receiver is shutting down. Please stand by..." +msgstr "Váš přijímač se vypíná. Prosím, počkejte..." + +msgid "Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver." +msgstr "Přijímač může být nyní nepoužitelný. Prosím, konzultujte s manuálem další pomoc před restartováním přijímače." + +msgid "Your receiver will got to stand by due to the sleeptimer." +msgstr "Přijímač přešel do standby kvůli časovači usínání." + +msgid "Your receiver will got to standby due to inactivity." +msgstr "Přijímač přešel do standby z důvodu neaktivity." + +msgid "Your receiver will restart after pressing OK on your remote control." +msgstr "Váš přijímač bude restartován po stisknutí OK na dálkovém ovladači." + +# +msgid "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." +msgstr "" +"Vaše bezdrátové LAN internetové připojení nemůže být spuštěno!\n" +"Máte připojeno Váše USB WLAN zařízení?\n" +"\n" +"Zvolte prosím, co chcete dělat dál." + +msgid "Zap" +msgstr "Přepnout" + +# +msgid "Zap back to previously tuned service?" +msgstr "Přepnout zpět na předchozí naladěný program?" + +# +msgid "Zap back to service before positioner setup?" +msgstr "Přepnout zpět na program před nastavováním pozicioneru?" + +# +msgid "Zap back to service before tuner setup?" +msgstr "Přepnout zpět na program před nastavením tuneru?" + +# +msgid "Zap focus to Picture in Picture" +msgstr "Přepnout do obrazu v obraze" + +msgid "Zap focus to main screen" +msgstr "Přepnout fokus do hlavní obrazovky" + +# +msgid "Zap mode" +msgstr "Zap mód" + +msgid "Zap to selected channel" +msgstr "přepnout na vybraný kanál" + +msgid "Zap to selected channel, or show detailed event info (depends on configuration)" +msgstr "Přepnout na vybraný kanál nebo zobrazit detailní informace o události (v závislosti na nastavení)" + +# +msgid "[alternative edit]" +msgstr "[úprava alternativ]" + +# +msgid "[bouquet edit]" +msgstr "[upravit přehled]" + +# +msgid "[favourite edit]" +msgstr "[upravit oblíbené]" + +# +msgid "[move mode]" +msgstr "[přesun]" + +# +msgid "a gui to assign services/providers to common interface modules" +msgstr "Menu přiřazení kanálů/poskytovatelů CI modulu" + +# +msgid "a gui to assign services/providers/caids to common interface modules" +msgstr "Menu přiřazení kanálů/poskytovatelů/caids CI modulu" + +# +msgid "abort alternatives edit" +msgstr "zrušit úpravu alternativ" + +# +msgid "abort bouquet edit" +msgstr "zrušit úpravu přehledu" + +# +msgid "abort favourites edit" +msgstr "zrušit úpravu oblíbených" + +# +msgid "about to start" +msgstr "právě začne" + +# +msgid "activate network adapter configuration" +msgstr "aktivace nastavení síťového adaptéru" + +# +msgid "add alternatives" +msgstr "přidat alternativy" + +# +msgid "add bookmark" +msgstr "přidat záložku" + +# +msgid "add bouquet" +msgstr "přidat přehled" + +# +msgid "add marker" +msgstr "přidat značku" + +# +msgid "add service to bouquet" +msgstr "přidat program do přehledu" + +# +msgid "add service to favourites" +msgstr "přidat program do oblíbených" + +# +msgid "add to parental protection" +msgstr "přidat do rodičovské ochrany" + +msgid "adult movie/drama" +msgstr "pro dospělé/drama" + +# +msgid "advanced" +msgstr "rozšířený" + +msgid "adventure/western/war" +msgstr "dobrodružný/western/válečný" + +msgid "advertisement/shopping" +msgstr "reklama/nakupování" + +msgid "after " +msgstr "po " + +# +msgid "alphabetic" +msgstr "podle abecedy" + +# +msgid "alphabetic reverse" +msgstr "podle abecedy v opačném pořadí" + +msgid "alternative" +msgstr "alternativa" + +# +msgid "always" +msgstr "vždy" + +msgid "and select next channel" +msgstr "a vybrat následující kanál" + +msgid "and select previous channel" +msgstr "a vybrat předchozí kanál" + +msgid "arts/culture (without music, general)" +msgstr "umění/kulura (bez hudby, obecně)" + +msgid "arts/culture magazine" +msgstr "umění/kulturní magazín" + +msgid "athletics" +msgstr "atletika" + +# +msgid "audio tracks" +msgstr "audio stopy" + +msgid "auto" +msgstr "automaticky" + +# +msgid "automatic" +msgstr "automatické" + +# +msgid "back" +msgstr "zpět" + +# +msgid "background image" +msgstr "Obrázek pozadí" + +msgid "ballet" +msgstr "balet" + +#, python-format +msgid "bc%s" +msgstr "" + +# +msgid "better" +msgstr "lepší" + +# +msgid "black" +msgstr "černá" + +msgid "black & white" +msgstr "černobílé" + +# +msgid "blacklist" +msgstr "blacklist" + +# +msgid "blue" +msgstr "Modré" + +msgid "broadcasting/press" +msgstr "vysílání/tisk" + +# +msgid "by date" +msgstr "podle data" + +msgid "cartoon/puppets" +msgstr "karikatury/loutky" + +# +msgid "center" +msgstr "střed" + +msgid "centered" +msgstr "uprostřed" + +msgid "centered, wrapped" +msgstr "uprostřed, více řádků" + +# +msgid "chapters" +msgstr "kapitoly" + +msgid "childrens's/youth program (general)" +msgstr "pro děti a mláděž (obecně)" + +# +msgid "circular left" +msgstr "levá kruhová (polarizace)" + +# +msgid "circular right" +msgstr "pravá kruhová (polarizace)" + +msgid "comedy" +msgstr "komedie" + +# +msgid "complex" +msgstr "komplexní" + +# +msgid "config menu" +msgstr "konfigurační menu" + +# +msgid "confirmed" +msgstr "potvrzeno" + +# +msgid "connected" +msgstr "připojeno" + +# +msgid "continue" +msgstr "pokračovat" + +msgid "cooking" +msgstr "vaření" + +# +msgid "copy to bouquets" +msgstr "zkopírovat do přehledů" + +# +msgid "create directory" +msgstr "založit adresář" + +#, python-format +msgid "currently installed image: %s" +msgstr "instalované image: %s" + +# +msgid "daily" +msgstr "denně" + +# +msgid "day" +msgstr "den" + +# +msgid "default" +msgstr "defaultní" + +# +msgid "delete cut" +msgstr "odstranit střih" + +msgid "delete..." +msgstr "smazat..." + +msgid "descramble and record ecm" +msgstr "použít descramble a nahrávat ecm" + +msgid "detective/thriller" +msgstr "detektivka/thriller" + +# +msgid "disable" +msgstr "zakázat" + +# +msgid "disable move mode" +msgstr "zakázat přesun" + +# +msgid "disabled" +msgstr "zakázáno" + +# +msgid "disconnected" +msgstr "odpojeno" + +msgid "discussion/interview/debate" +msgstr "diskuse/rozhovor/debata" + +# +msgid "do nothing" +msgstr "nedělat nic" + +msgid "documentary" +msgstr "dokumentární" + +msgid "don't descramble, record ecm" +msgstr "nepoužít descramble, nahrávat ecm" + +# +msgid "done!" +msgstr "dokončeno!" + +msgid "east" +msgstr "východ" + +msgid "economics/social advisory" +msgstr "ekonomika/sociální poradenství " + +# +msgid "edit alternatives" +msgstr "upravit alternativy" + +msgid "education/science/factual topics (general)" +msgstr "vzdělávání/věda/věcná témata (obecně)" + +# +msgid "empty" +msgstr "prázdné" + +# +msgid "enable" +msgstr "povolit" + +# +msgid "enable bouquet edit" +msgstr "povolit úpravu přehledu" + +# +msgid "enable favourite edit" +msgstr "Povolit úpravu oblíbených" + +# +msgid "enable move mode" +msgstr "povolit přesun" + +# +msgid "enabled" +msgstr "povoleno" + +# +msgid "end alternatives edit" +msgstr "ukončit úpravu alternativ" + +# +msgid "end bouquet edit" +msgstr "ukončit úpravu přehledu" + +# +msgid "end cut here" +msgstr "konec střihu zde" + +# +msgid "end favourites edit" +msgstr "ukončit úpravu oblíbených" + +msgid "entertainment (10-16 year old)" +msgstr "zábavný (10-16 let)" + +msgid "entertainment (6-14 year old)" +msgstr "zábavný (6-14 let)" + +# +msgid "equal to" +msgstr "stejné s" + +msgid "equestrian" +msgstr "jezdectví" + +# +msgid "exit DVD player or return to file browser" +msgstr "ukončit DVD přehrávač a vrátit se na seznam souborů" + +msgid "exit movielist" +msgstr "zavřít seznam filmů" + +# +msgid "exit network adapter configuration" +msgstr "zavřít nastavení síťového adaptéru " + +# +msgid "exit networkadapter setup menu" +msgstr "zavřít menu nastavení sítě" + +msgid "experimental film/video" +msgstr "experimentální film/video" + +# +msgid "false" +msgstr "ne" + +msgid "fashion" +msgstr "móda" + +# +msgid "fileformats (BMP, PNG, JPG, GIF)" +msgstr "Formáty souborů (BMP, PNG, JPG, GIF)" + +# +msgid "filename" +msgstr "Název souboru" + +msgid "film/cinema" +msgstr "film/kino" + +msgid "fine arts" +msgstr "výtvarné umění " + +# +msgid "fine-tune your display" +msgstr "doladit Váš display" + +msgid "fitness & health" +msgstr "fitness & zdraví" + +# +msgid "flat alphabetic" +msgstr "abecedně (včetně složek)" + +# +msgid "flat alphabetic reverse" +msgstr "abecedně v opačném pořadí (včetně složek)" + +msgid "folk/traditional music" +msgstr "folk/tradiční hudba" + +msgid "football/soccer" +msgstr "fotbal" + +msgid "foreign countries/expeditions" +msgstr "cizí země/expedice" + +# +msgid "forward to the next chapter" +msgstr "přeskočit na další kapitolu" + +# +msgid "free" +msgstr "volného místa" + +msgid "from" +msgstr "z" + +msgid "further education" +msgstr "další vzdělávání" + +msgid "game show/quiz/contest" +msgstr "hra/kvíz/soutěž" + +msgid "gardening" +msgstr "zahradnictví" + +# +msgid "go to deep standby" +msgstr "přejít do hlubokého spánku" + +# +msgid "go to standby" +msgstr "přejít do pohotovostního režimu" + +# +msgid "grab this frame as bitmap" +msgstr "grabovat snímek jako bitmapu" + +# +msgid "green" +msgstr "Zelené" + +msgid "handicraft" +msgstr "ruční práce" + +# +msgid "height" +msgstr "výška" + +# +msgid "help..." +msgstr "nápověda..." + +# +msgid "horizontal" +msgstr "horizontální" + +msgid "information/education/school program" +msgstr "informace/vzdělání/školní program" + +# +msgid "init module" +msgstr "inicializační modul" + +# +msgid "init modules" +msgstr "inicializace modulů" + +# +msgid "insert mark here" +msgstr "vložit značku" + +msgid "invalid type" +msgstr "neplatný typ" + +msgid "jazz" +msgstr "jazz" + +# +msgid "jump back to the previous title" +msgstr "přejít na předchozí titul" + +# +msgid "jump forward to the next title" +msgstr "přejít na další titul" + +msgid "languages" +msgstr "jazyky" + +# +msgid "leave movie player..." +msgstr "opustit přehrávač" + +# +msgid "left" +msgstr "levý" + +msgid "left, wrapped" +msgstr "vlevo, více řádků" + +msgid "leisure hobbies (general)" +msgstr "koníčky pro volný čas (obecně)" + +# +msgid "length" +msgstr "délka" + +msgid "limit ..., aborting !" +msgstr "limit ..., ukončuji !" + +# +msgid "list style compact" +msgstr "kompaktní seznam" + +# +msgid "list style compact with description" +msgstr "kompaktní seznam s popisem" + +# +msgid "list style default" +msgstr "standardní seznam" + +# +msgid "list style single line" +msgstr "jednořádkový seznam" + +msgid "literature" +msgstr "literatura" + +msgid "live broadcast" +msgstr "živé vysílání" + +# +msgid "locked" +msgstr "zamknuto" + +# +msgid "loopthrough to" +msgstr "propojeno s" + +msgid "magazines/reports/documentary" +msgstr "magazíny/reportáže/dokumentární" + +# +msgid "manual" +msgstr "Ručně" + +msgid "martial sports" +msgstr "bojové sporty" + +msgid "medicine/physiology/psychology" +msgstr "lékařství/fyziologie/psychologie" + +# +msgid "menu" +msgstr "menu" + +# +msgid "mins" +msgstr "minut" + +# +msgid "minutes" +msgstr "minut" + +# +msgid "month" +msgstr "měsíc" + +msgid "motor sport" +msgstr "motoristické sporty" + +msgid "motoring" +msgstr "motorismus" + +# +msgid "move down to last entry" +msgstr "přesunout na poslední záznam" + +# +msgid "move down to next entry" +msgstr "přesunout na další záznam" + +# +msgid "move up to first entry" +msgstr "přesunout na první záznam" + +# +msgid "move up to previous entry" +msgstr "přesunout na předcházející záznam" + +msgid "movie/drama (general)" +msgstr "film/drama (obecně)" + +# +msgid "multinorm" +msgstr "multinorma" + +msgid "music/ballet/dance (general)" +msgstr "hudba/balet/tanec (obecně)" + +msgid "musical/opera" +msgstr "muzikál/opera" + +msgid "nature/animals/environment" +msgstr "příroda/zvířata/životní prostředí" + +# +msgid "never" +msgstr "nikdy" + +msgid "new media" +msgstr "new media" + +msgid "news magazine" +msgstr "zpravodajský magazín" + +msgid "news/current affairs (general)" +msgstr "zprávy/publicistika (obecně)" + +msgid "news/weather report" +msgstr "zprávy/zpravy o počasí" + +# +msgid "no" +msgstr "ne" + +# +msgid "no CAId selected" +msgstr "nevybrán CAid " + +# +msgid "no CI slots found" +msgstr "žádný CI slot nenalezen" + +# +msgid "no module found" +msgstr "žádný modul nenalezen" + +# +msgid "no storage devices found" +msgstr "žádné zařízení pro ukládání" + +# +msgid "none" +msgstr "žádný" + +msgid "normal" +msgstr "normální" + +# +msgid "not configured" +msgstr "nenakonfigurováno" + +# +msgid "not locked" +msgstr "nezamknuto" + +msgid "not supported" +msgstr "nepodporováno" + +# +msgid "not used" +msgstr "nepoužito" + +# +msgid "nothing connected" +msgstr "nic není připojeno" + +# +msgid "of a DUAL layer medium used." +msgstr "z DVOUVRSTVÉHO DVD použito." + +# +msgid "of a SINGLE layer medium used." +msgstr "z JEDNOVRSTVÉHO DVD použito." + +# +msgid "off" +msgstr "vypnuto" + +msgid "offset is" +msgstr "posun je" + +# +msgid "on" +msgstr "zapnuto" + +# +msgid "on READ ONLY medium." +msgstr "na READ ONLY médiu." + +msgid "on end of movie" +msgstr "na konci filmu" + +# +msgid "once" +msgstr "jednou" + +# +msgid "only from deep standby" +msgstr "pouze z hlubokého spánku" + +# +msgid "only from standby" +msgstr "pouze ze standby" + +# +msgid "open EPG..." +msgstr "otevřít EPG..." + +msgid "open Info..." +msgstr "otevřít Info..." + +# +msgid "open nameserver configuration" +msgstr "otevřít konfiguraci DNS" + +msgid "original" +msgstr "původní" + +msgid "original language" +msgstr "původní jazyk" + +# +msgid "pass" +msgstr "projít (pass)" + +msgid "performing arts" +msgstr "scénické umění" + +# +msgid "play as picture in picture" +msgstr "přehrát jako obraz v obraze" + +msgid "play in mainwindow" +msgstr "přehrát v hlavním okně" + +# +msgid "please press OK when ready" +msgstr "stiskněte OK až budete připraveni" + +# +msgid "please wait, loading picture..." +msgstr "Prosím čekejte... náčítám obrázek..." + +msgid "popular culture/traditional arts" +msgstr "lidová kultura/tradiční umění" + +msgid "pre-school children's program" +msgstr "program pro předškolní děti" + +msgid "receiver software because updates are available." +msgstr "software přijímače, jelikož aktualizace jsou dostupné." + +# +msgid "record" +msgstr "nahrát" + +# +msgid "recording..." +msgstr "nahrávání.." + +# +msgid "red" +msgstr "Červené" + +msgid "religion" +msgstr "náboženství" + +msgid "remarkable people" +msgstr "pozoruhodní lidé" + +# +msgid "remove after this position" +msgstr "odebrat po této pozici" + +# +msgid "remove all alternatives" +msgstr "odebrat všechny alternativy" + +# +msgid "remove all new found flags" +msgstr "odstranit příznak \"nově nalezeno\"" + +# +msgid "remove before this position" +msgstr "odebrat před touto pozicí" + +# +msgid "remove bookmark" +msgstr "smazat záložku" + +# +msgid "remove directory" +msgstr "smazat adresář" + +# +msgid "remove entry" +msgstr "odstranit položku" + +# +msgid "remove from parental protection" +msgstr "odebrat z rodičovské ochrany" + +# +msgid "remove new found flag" +msgstr "odebrat z \"nově nalezeno\"" + +# +msgid "remove selected satellite" +msgstr "odstranit vybraný satelit" + +# +msgid "remove this mark" +msgstr "odebrat tuto značku" + +msgid "rename entry" +msgstr "přejmenovat" + +# +msgid "repeat playlist" +msgstr "Opakovat playlist" + +# +msgid "repeated" +msgstr "opakování" + +# +msgid "reverse by date" +msgstr "podle data v opačném pořadí" + +# +msgid "rewind to the previous chapter" +msgstr "zpět na předchozí kapitolu" + +# +msgid "right" +msgstr "pravý" + +msgid "right, wrapped" +msgstr "vpravo, více řádků" + +msgid "rock/pop" +msgstr "rock/pop" + +msgid "romance" +msgstr "romance" + +# +msgid "save last directory on exit" +msgstr "Uložit poslední adresář při ukončení" + +# +msgid "save playlist on exit" +msgstr "Při ukončení uložit playlist" + +# +msgid "scan state" +msgstr "stav prohledávání" + +msgid "science fiction/fantasy/horror" +msgstr "scifi/fantastický/horor" + +# +msgid "second cable of motorized LNB" +msgstr "druhý kabel z natáčeného LNB" + +# +msgid "seconds" +msgstr "sekund" + +# +msgid "select" +msgstr "výběr" + +# +msgid "select CAId's" +msgstr "výběr CAid's" + +# +msgid "select EPG..." +msgstr "vybrat EPG..." + +msgid "select Info..." +msgstr "vybrat Info..." + +# +msgid "select menu entry" +msgstr "zvolit položku z menu" + +msgid "select movie" +msgstr "zvolte film" + +msgid "select the movie path" +msgstr "zvolte cestu pro filmy" + +msgid "serious music/classic music" +msgstr "vážná hudba/klasická muzika" + +msgid "serious/classical/religious/historical movie/drama" +msgstr "závažný/klasický/náboženský/historický film/drama" + +msgid "service PIN" +msgstr "programový PIN" + +msgid "set as startup service" +msgstr "nastavit jako program po spuštění" + +msgid "setup PIN" +msgstr "nastavit PIN" + +# +msgid "show DVD main menu" +msgstr "zobrazit DVD hlavní menu" + +# +msgid "show all tags" +msgstr "zobrazit všechny tagy" + +# +msgid "show alternatives" +msgstr "zobrazit alternativy" + +# +msgid "show event details" +msgstr "zobrazit podrobnosti" + +msgid "show extended description" +msgstr "zobrazovat rozšířený popis" + +# +msgid "show mediaplayer on mainmenu" +msgstr "Zobrazovat Mediaplayer v hlavním menu" + +msgid "show softwaremanager in setup menu" +msgstr "Správa software v menu Nastavení" + +msgid "show softwaremanager on blue button" +msgstr "Správa software v Extended menu" + +msgid "show tag menu" +msgstr "zobrazovat tag menu" + +# +msgid "show transponder info" +msgstr "zobrazit info o transponderu" + +msgid "show/game show (general)" +msgstr "show/game show (obecně)" + +# +msgid "shuffle" +msgstr "náhodné uspořádání" + +# +msgid "shut down" +msgstr "vypnout" + +# +msgid "simple" +msgstr "jednoduchý" + +# +msgid "skip backward" +msgstr "přeskočit dozadu" + +# +msgid "skip forward" +msgstr "přeskočit dopředu" + +msgid "soap/melodram/folkloric" +msgstr "soap/melodrama/folklórní" + +msgid "social/political issues/economics (general)" +msgstr "společensko politické problémy/ekonomie (obecně)" + +msgid "social/spiritual science" +msgstr "sociální/duchovní vědy" + +# +msgid "sorting of playlists" +msgstr "Třídění playlistů" + +# +msgid "special characters" +msgstr "speciální znaky" + +msgid "special events" +msgstr "zvláštní události" + +msgid "special format data DVD (HDTV compatible)" +msgstr "speciální formát data DVD (HDTV kompatibilní)" + +msgid "sports (general)" +msgstr "sporty (obecně)" + +msgid "sports magazine" +msgstr "sportovní magazín" + +# +msgid "standard" +msgstr "standard" + +# +msgid "start cut here" +msgstr "začátek střihu zde" + +# +msgid "start directory" +msgstr "Výchozí adresář" + +msgid "stepsize" +msgstr "krok" + +# +msgid "stereo" +msgstr "stereo" + +msgid "stop using as startup service" +msgstr "zrušit nastavení po spuštění" + +# +msgid "switch to bookmarks" +msgstr "přepnout do záložek" + +# +msgid "switch to filelist" +msgstr "přepnout na seznam souborů" + +# +msgid "switch to the next angle" +msgstr "přepnout na další pohled" + +# +msgid "switch to the next audio track" +msgstr "přepnout na další zvukovou stopu" + +# +msgid "switch to the next subtitle language" +msgstr "přepnout na další jazyk ve skrytých titulcích" + +msgid "talk show" +msgstr "talk show" + +msgid "team sports" +msgstr "týmové sporty" + +msgid "technology/natural science" +msgstr "technologie/přírodní vědy" + +# +msgid "template file" +msgstr "Soubor s šablonou" + +msgid "tennis/squash" +msgstr "tenis/skvoš" + +# +msgid "this recording" +msgstr "toto nahrávání" + +# +msgid "this service is protected by a parental control pin" +msgstr "tento programl je chráněný rodičovským zámkem" + +# +msgid "toggle time, chapter, audio, subtitle info" +msgstr "přepnout informace mezi časem, kapitolou, audiostopou, titulky" + +# +msgid "top" +msgstr "nahoře" + +msgid "tourism/travel" +msgstr "turistika/cestování" + +# +msgid "true" +msgstr "ano" + +msgid "unavailable" +msgstr "nedostupný" + +# +msgid "unconfirmed" +msgstr "nepotvrzeno" + +msgid "undefined" +msgstr "nedefinováno" + +# +msgid "unknown" +msgstr "neznámý" + +# +msgid "unknown service" +msgstr "neznámý program" + +msgid "unpublished" +msgstr "nepublikováno" + +# +msgid "until standby/restart" +msgstr "do standby/restartu" + +# +msgid "user defined" +msgstr "uživatelské" + +msgid "variety show" +msgstr "varieté" + +# +msgid "vertical" +msgstr "vertikální" + +# +msgid "wait for ci..." +msgstr "čekat na CI..." + +# +msgid "wait for mmi..." +msgstr "čekat na mmi..." + +# +msgid "waiting" +msgstr "čekání" + +msgid "water sport" +msgstr "vodní sporty" + +# +msgid "weekly" +msgstr "týdně" + +msgid "west" +msgstr "západ" + +msgid "when PiPzap enabled zap channel down..." +msgstr "když je Pipzap povolen pak přepne kanál dolů..." + +msgid "when PiPzap enabled zap channel up..." +msgstr "když je Pipzap povolen pak přepne kanál nahoru..." + +# +msgid "white" +msgstr "bílá" + +# +msgid "whitelist" +msgstr "whitelist" + +# +msgid "width" +msgstr "šířka" + +msgid "winter sport" +msgstr "zimní sporty" + +msgid "wireless network interface" +msgstr "bezdrátový síťový adaptér" + +#, python-format +msgid "with %d error" +msgid_plural "with %d errors" +msgstr[0] "s %d chybou" +msgstr[1] "se %d chybami" +msgstr[2] "s %d chybami" + +# +msgid "working" +msgstr "pracuji" + +# +msgid "yellow" +msgstr "Žluté" + +# +msgid "yes" +msgstr "ano" + +# +msgid "yes (keep feeds)" +msgstr "ano (uchovat zdroje)" + +# +msgid "zap" +msgstr "přepnout" + +msgid "zap and record" +msgstr "přepnout a nahrát" + +# +msgid "zapped" +msgstr "přepnutý" + +# +#~ msgid "Behavior of 'pause' when paused" +#~ msgstr "Režim tlačítka 'pause' při pozastavení filmu" + +#~ msgid "Configure the behavior of the 'pause' key when movie playback is already paused." +#~ msgstr "Nastavuje chování tlačítka 'pause' když je přehrávání již pozastaveno." + +#~ msgid "Enable neutrino style zap controlling" +#~ msgstr "Povolit neutrino styl řízení přepínání" + +#~ msgid "When enabled the arrow buttons around the OK button will follow the neutrino style zap controls instead of the enigma2 style." +#~ msgstr "Pokud je povoleno, tlačítka se šipkami okolo tlačítka OK budou používat neutrino styl přepínání namísto stylu Enigma2." diff --git a/po/da.po b/po/da.po new file mode 100644 index 0000000..46b2ec8 --- /dev/null +++ b/po/da.po @@ -0,0 +1,9829 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: enigma2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-07-21 19:08+0200\n" +"PO-Revision-Date: 2012-04-03 19:02+0100\n" +"Last-Translator: \n" +"Language-Team: None <tbt_dk@hotmail.com>\n" +"Language: da\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Pootle 2.0.2\n" +"X-Poedit-Language: Danish\n" +"X-Poedit-SourceCharset: iso-8859-15\n" +"X-Poedit-Country: DENMARK\n" + +# +msgid "" +"\n" +"Advanced options and settings." +msgstr "" +"\n" +"Avancerede indstillinger og opsætning." + +# +msgid "" +"\n" +"After pressing OK, please wait!" +msgstr "" +"\n" +"Efter tryk på OK, vent venligst!" + +msgid "" +"\n" +"Backup your receiver settings." +msgstr "" + +# +msgid "" +"\n" +"Edit the upgrade source address." +msgstr "" +"\n" +"Rediger kildeadressen til opgradering." + +msgid "" +"\n" +"Manage extensions or plugins for your receiver" +msgstr "" + +msgid "" +"\n" +"Online update of your receiver software." +msgstr "" + +# +msgid "" +"\n" +"Press OK on your remote control to continue." +msgstr "" +"\n" +"Tryk OK på din fjernbetjening for at fortsætte." + +# +msgid "" +"\n" +"Restore your backups by date." +msgstr "" +"\n" +"Gendan dine backups efter dato." + +msgid "" +"\n" +"Restore your receiver settings." +msgstr "" + +msgid "" +"\n" +"Restore your receiver with a new firmware." +msgstr "" + +# +msgid "" +"\n" +"Scan for local extensions and install them." +msgstr "" +"\n" +"Søg efter lokale udvidelser og installer dem." + +# +msgid "" +"\n" +"Select your backup device.\n" +"Current device: " +msgstr "" +"\n" +"Vælg din backup enhed.\n" +"Nuværende enhed: " + +# +msgid "" +"\n" +"View, install and remove available or installed packages." +msgstr "" +"\n" +"Se, installer og fjern nuværende eller installerede pakker." + +msgid " (PiP)" +msgstr " (BiB) " + +msgid " (Radio)" +msgstr "" + +msgid " (TV)" +msgstr "" + +msgid " (disabled)" +msgstr "" + +msgid " (higher than any auto)" +msgstr "" + +msgid " (higher than rotor any auto)" +msgstr "" + +msgid " (lower than any auto)" +msgstr "" + +msgid " extensions." +msgstr " filendelser." + +msgid " ms" +msgstr "" + +msgid " packages selected." +msgstr " pakker valgt." + +msgid " updates available." +msgstr " opdateringer tilgængelige_Ikke for Ferrari." + +#. TRANSLATORS: short time representation hour:minute +#, python-format +msgid "%2d:%02d" +msgstr "" + +#. TRANSLATORS: full time representation hour:minute:seconds +#, python-format +msgid "%2d:%02d:%02d" +msgstr "" + +msgid "%A %d %B" +msgstr "" + +#. TRANSLATORS: long date representations dayname daynum monthname in strftime() format! See 'man strftime' +msgid "%A %e %B" +msgstr "" + +#. TRANSLATORS: full date representation dayname daynum monthname year in strftime() format! See 'man strftime' +msgid "%A %e %B %Y" +msgstr "" + +# +msgid "%H:%M" +msgstr "%T:%M" + +#. TRANSLATORS: short date representation short dayname daynum short monthname in strftime() format! See 'man strftime' +msgid "%a %e/%m" +msgstr "" + +#. TRANSLATORS: long date representation short dayname daynum short monthname hour:minute in strftime() format! See 'man strftime' +msgid "%a %e/%m %-H:%M" +msgstr "" + +# +#. TRANSLATORS: Intermediate scanning result, '%d' channel(s) have been found so far +#, fuzzy, python-format +msgid "%d channel found" +msgid_plural "%d channels found" +msgstr[0] "%d kanaler fundet!" +msgstr[1] "%d kanaler fundet!" + +#, python-format +msgid "%d file" +msgid_plural "%d files" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d time" +msgstr[1] "%d timer" + +# +#, fuzzy, python-format +msgid "%d job is running in the background!" +msgid_plural "%d jobs are running in the background!" +msgstr[0] "%d jobs kører i baggrunden!" +msgstr[1] "%d jobs kører i baggrunden!" + +# +#, python-format +msgid "%d min" +msgstr "%d min" + +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d minut" +msgstr[1] "%d minutter" + +#, python-format +msgid "%d minutes" +msgstr "%d minutter" + +#, python-format +msgid "%d pixel wide" +msgid_plural "%d pixels wide" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "%d sekund" +msgstr[1] "%d sekunder" + +#, fuzzy, python-format +msgid "%d subdirectory" +msgid_plural "%d subdirectories" +msgstr[0] "root mappe" +msgstr[1] "root mappe" + +# +#, fuzzy, python-format +msgid "%d wireless network found!" +msgid_plural "%d wireless networks found!" +msgstr[0] "1 trådløst netværk fundet!" +msgstr[1] "1 trådløst netværk fundet!" + +msgid "%d-%b-%Y %-H:%M" +msgstr "" + +msgid "%d-%m" +msgstr "" + +# +msgid "%d.%B %Y" +msgstr "%d.%B %Y" + +#. TRANSLATORS: VFD hour:minute daynum short monthname in strftime() format! See 'man strftime' +msgid "%k:%M %e/%m" +msgstr "" + +# +#, fuzzy, python-format +msgid "%s %s free disk space" +msgstr "fri HDD plads" + +# +#, python-format +msgid "%s (%s)\n" +msgstr "%s (%s)\n" + +#. TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. +#, python-format +msgid "%s is no longer used. Should it be deleted?" +msgstr "" + +#, fuzzy, python-format +msgid "%s updated package available" +msgid_plural "%s updated packages available" +msgstr[0] " opdateringer tilgængelige_Ikke for Ferrari." +msgstr[1] " opdateringer tilgængelige_Ikke for Ferrari." + +#, python-format +msgid "%s%d min" +msgstr "" + +#, python-format +msgid "%s/%s: %s" +msgstr "" + +# +msgid "(ZAP)" +msgstr "(ZAP)" + +msgid "(empty)" +msgstr "(tom)" + +msgid "(show optional DVD audio menu)" +msgstr "(Vis ekstra DVD lyd menu)" + +# +msgid "* Only available if more than one interface is active." +msgstr "* Kun tilgængelig hvis mere end et interface er aktivt." + +msgid "/s" +msgstr "" + +# +msgid "0" +msgstr "0" + +# +msgid "1" +msgstr "1" + +# +msgid "1.0" +msgstr "1.0" + +# +msgid "1.1" +msgstr "1.1" + +# +msgid "1.2" +msgstr "1.2" + +msgid "12V output" +msgstr "12V udgang" + +# +msgid "13 V" +msgstr "13 V" + +# +msgid "16:10" +msgstr "16:10" + +msgid "16:10 Letterbox" +msgstr "16:10 letterbox" + +msgid "16:10 PanScan" +msgstr "16:10 Panscan" + +# +msgid "16:9" +msgstr "16:9" + +msgid "16:9 Letterbox" +msgstr "16:9 Letterbox" + +msgid "16:9 always" +msgstr "Tving 16:9" + +# +msgid "18 V" +msgstr "18 V" + +# +msgid "2" +msgstr "2" + +msgid "23.976" +msgstr "" + +msgid "24" +msgstr "" + +msgid "25" +msgstr "" + +msgid "29.97" +msgstr "" + +# +msgid "3" +msgstr "3" + +msgid "30" +msgstr "" + +msgid "3d mode" +msgstr "" + +# +msgid "4" +msgstr "4" + +# +msgid "4:3" +msgstr "4:3" + +msgid "4:3 Letterbox" +msgstr "4:3 Letterbox" + +msgid "4:3 PanScan" +msgstr "4:3 Panscan" + +# +msgid "5" +msgstr "5" + +# +msgid "6" +msgstr "6" + +# +msgid "7" +msgstr "7" + +# +msgid "8" +msgstr "8" + +# +msgid "9" +msgstr "9" + +#, python-format +msgid ": %s" +msgstr "" + +msgid "<Current movielist location>" +msgstr "<Nuværende filmliste placering>" + +# +msgid "<Default movie location>" +msgstr "<Standardplacering af film>" + +# +msgid "<Last timer location>" +msgstr "<Seneste timer placering>" + +# +msgid "<unknown>" +msgstr "<ukendt>" + +# +msgid "??" +msgstr "??" + +# +msgid "A" +msgstr "A" + +# +#, fuzzy, python-format +msgid "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" +msgstr "" +"En konfigurationsfil (%s) er ændret siden installation.\n" +"Vil du beholde denne version?" + +# +#, python-format +msgid "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" +msgstr "" +"En konfigurationsfil (%s) er ændret siden installation.\n" +"Vil du beholde denne version?" + +msgid "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" + +msgid "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" + +# +msgid "A graphical EPG for all services of an specific bouquet" +msgstr "Grafisk EPG for alle kanaler i en specifik buket" + +# +#, python-format +msgid "" +"A record has been started:\n" +"%s" +msgstr "" +"En optagelse er startet:\n" +"%s" + +# +msgid "" +"A recording is currently running.\n" +"What do you want to do?" +msgstr "" +"En optagelse er i gang.\n" +"Hvad vil du gøre?" + +# +msgid "A recording is currently running. Please stop the recording before trying to configure the positioner." +msgstr "En optagelse er igang. Stop, venligst denne optagelse før konfigurering af Motoren." + +msgid "A recording is currently running. Please stop the recording before trying to scan." +msgstr "En optagelse er igang. Stop, venligst denne optagelse før du begynder kanalsøgning. " + +# +msgid "A recording is currently running. Please stop the recording before trying to start the satfinder." +msgstr "En optagelse er igang. Stop, venligst denne optagelse før start af Satfinder." + +# +#, python-format +msgid "A required tool (%s) was not found." +msgstr "Et nødvendigt værktøj (%s) ikke fundet." + +# +msgid "A search for available updates is currently in progress." +msgstr "Søgning efter tilgængelige opdateringer er aktuelt i gang." + +# +msgid "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" +msgstr "" +"Der er fundet en anden konfigureret enhed.\n" +"\n" +"Vil du deaktivere den anden netværksenhed?" + +msgid "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" + +msgid "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" + +# +msgid "A small overview of the available icon states and actions." +msgstr "En lille oversigt over mulige ikon tilstande og handlinger." + +# +msgid "" +"A timer failed to record!\n" +"Disable TV and try again?\n" +msgstr "" +"Timeroptagelse slået fejl.\n" +"Skift kanal og prøv igen?\n" + +# +#, fuzzy +msgid "A/V settings" +msgstr "A/V Indstillinger" + +msgid "AC3/DTS downmix" +msgstr "AC3/DTS nedmix" + +# +msgid "Abort" +msgstr "Afbryd" + +# +msgid "About" +msgstr "Om" + +# +msgid "About..." +msgstr "Om..." + +# +msgid "Accesspoint:" +msgstr "Accesspoint:" + +# +msgid "Action on long powerbutton press" +msgstr "Handling ved langt powerknap tryk" + +msgid "Action on short powerbutton press" +msgstr "Handling ved kortvarigt tryk på tændknappen" + +# +msgid "Activate Picture in Picture" +msgstr "Aktiver Billed i Billed" + +# +#, fuzzy +msgid "Activate current configuration" +msgstr "aktiver den aktuelle opsætning" + +# +msgid "Activate network settings" +msgstr "Aktiver netværks indstilling" + +# +#, fuzzy +msgid "Activate the configured network settings." +msgstr "Aktiver netværks indstilling" + +# +msgid "Adapter settings" +msgstr "Adapter indstillinger" + +# +msgid "Add" +msgstr "Tilføj" + +# +msgid "Add Bookmark" +msgstr "Tilføj bogmærke" + +# +msgid "Add a mark" +msgstr "Tilføj en markør" + +# +#, fuzzy +msgid "Add a nameserver entry" +msgstr "tilføj en navneserver angivelse" + +# +msgid "Add a new title" +msgstr "Tilføj en ny titel" + +# +#, fuzzy +msgid "Add bookmark" +msgstr "tilføj bogmærke" + +# +#, fuzzy +msgid "Add directory to playlist" +msgstr "tilføj mappe til spilleliste" + +# +#, fuzzy +msgid "Add file to playlist" +msgstr "tilføj fil til spilleliste" + +# +#, fuzzy +msgid "Add files to playlist" +msgstr "tilføj filer til spilleliste" + +#, fuzzy +msgid "Add more details to the crash log" +msgstr "Opret mere detaljeret nedbrudslog" + +# +#, fuzzy +msgid "Add provider" +msgstr "tilføj udbyder" + +# +#, fuzzy +msgid "Add recording (enter recording duration)" +msgstr "tilføj optagelse ( skriv optagelses længde) " + +# +#, fuzzy +msgid "Add recording (enter recording endtime)" +msgstr "tilføje optagelse (skriv optagelsens sluttid)" + +# +#, fuzzy +msgid "Add recording (indefinitely)" +msgstr "tilføj optagelse (nu)" + +# +#, fuzzy +msgid "Add recording (stop after current event)" +msgstr "tilføj optagelse (stop efter nuværende program)" + +# +#, fuzzy +msgid "Add service" +msgstr "tilføj kanal" + +# +msgid "Add timer" +msgstr "Tilføj timer" + +# +msgid "Add title" +msgstr "Tilføj titel" + +# +msgid "Add to bouquet" +msgstr "Tilføj til pakke..." + +# +msgid "Add to favourites" +msgstr "Tilføj til favoritter" + +msgid "Add/remove change timer for current event" +msgstr "" + +msgid "Adjust 3D settings" +msgstr "Juster 3D indstillinger" + +# +msgid "Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens." +msgstr "Juster alle farver, så alle farvebjælker kan næsten tydes, men optræder så gennemtrængende som muligt. Er du tilfreds med resultatet, tryk OK for at lukke Video-Finjustering, eller brug nummer knapper, for at vælge andre testbilleder." + +msgid "Advanced" +msgstr "" + +# +#, fuzzy +msgid "Advanced options" +msgstr "Avancerede indstillinger" + +# +msgid "Advanced restore" +msgstr "Avanceret gendannelse" + +# +#, fuzzy +msgid "Advanced software" +msgstr "Avanceret Software" + +# +#, fuzzy +msgid "Advanced software plugin" +msgstr "Avanceret Software Plugin" + +# +#, fuzzy +msgid "Advanced video enhancement setup" +msgstr "Avanceret opsætning af videoforbedring" + +# +#, fuzzy +msgid "Advanced video setup" +msgstr "Avanceret video indstilling" + +# +msgid "After event" +msgstr "Efter opgave" + +# +msgid "Album" +msgstr "Album" + +msgid "Alignment of events" +msgstr "" + +msgid "Alignment of service names" +msgstr "" + +# +msgid "All" +msgstr "Alle" + +msgid "All ages" +msgstr "" + +msgid "All satellites 1 (USALS)" +msgstr "" + +msgid "All satellites 2 (USALS)" +msgstr "" + +msgid "All satellites 3 (USALS)" +msgstr "" + +msgid "All satellites 4 (USALS)" +msgstr "" + +msgid "Allocate" +msgstr "" + +msgid "Allocate unused memory index" +msgstr "" + +msgid "Allow quit movieplayer with exit" +msgstr "" + +#, fuzzy +msgid "Allow subtitle language to equal audio language" +msgstr "tillad tekst er lig Audio maske" + +#, fuzzy +msgid "Allow subtitles for hearing impaired" +msgstr "Tillad tekst for hørehæmmede" + +# +msgid "Alpha" +msgstr "Alpha" + +# +#, fuzzy +msgid "Alternative" +msgstr "tilføj alternativer" + +# +#, fuzzy +msgid "Alternative numbering mode" +msgstr "Alternativ radio type" + +# +msgid "Alternative services tuner priority" +msgstr "Alternativ kanal tuner prioritet" + +msgid "Always ask" +msgstr "Spørg altid" + +msgid "Always hide infobar" +msgstr "" + +# +msgid "An empty filename is illegal." +msgstr "Et tomt filnavn er ugyldigt." + +# +#, fuzzy +msgid "An error occurred while downloading the packetlist. Please try again." +msgstr "Der opstod en fejl under download af pakkelisten. Prøv venligst igen." + +# +msgid "An unknown error occurred!" +msgstr "Der opstod en ukendt fejl!" + +msgid "And will put your receiver in standby over " +msgstr "" + +msgid "Any activity" +msgstr "Enhver aktivitet" + +# +msgid "Arabic" +msgstr "Arabisk" + +msgid "Are you sure to remove this entry?" +msgstr "" + +# +msgid "" +"Are you sure you want to activate this network configuration?\n" +"\n" +msgstr "" +"Er du sikker på, at du vil aktivere denne netværks opsætning?\n" +"\n" + +# +#, fuzzy +msgid "" +"Are you sure you want to delete\n" +"the following backup:\n" +msgstr "" +"Bekræft at du vil slette\n" +"følgende backup:\n" + +# +msgid "Are you sure you want to exit this wizard?" +msgstr "Bekræft at du vil afslutte denne hjælper?" + +# +msgid "" +"Are you sure you want to restart your network interfaces?\n" +"\n" +msgstr "" +"Er du sikker på at du vil genstarte dit netværkinterface?\n" +"\n" + +# +#, fuzzy, python-format +msgid "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Er du sikker på, at du vil gendanne dit Enigma2 backup?\n" +"Enigma2 genstarter efter gendannelsen" + +# +#, fuzzy +msgid "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Er du sikker på, at du vil gendanne dit Enigma2 backup?\n" +"Enigma2 genstarter efter gendannelsen" + +# +msgid "Artist" +msgstr "Kunstner" + +msgid "Arts/Culture" +msgstr "" + +# +msgid "Ask user" +msgstr "Spørg bruger" + +# +#, fuzzy +msgid "Aspect ratio" +msgstr "Billed format" + +# +#, fuzzy +msgid "Assigned CAIds:" +msgstr "tilknyttede CAId'er:" + +# +#, fuzzy +msgid "Assigned services/provider:" +msgstr "tilknyttede kanaler/udbydere:" + +#, fuzzy +msgid "At beginning" +msgstr "ved starten" + +#, fuzzy +msgid "At end" +msgstr "ved enden" + +# +msgid "Audio" +msgstr "Lyd" + +msgid "Audio PID" +msgstr "Lyd PID" + +msgid "Audio language selection 1" +msgstr "Lydsprogs valg 1" + +msgid "Audio language selection 2" +msgstr "Lydsprogs valg 2" + +msgid "Audio language selection 3" +msgstr "Lydsprogs valg 3" + +msgid "Audio language selection 4" +msgstr "Lydsprogs valg 4" + +# +#, fuzzy +msgid "Audio options..." +msgstr "Lyd Valg..." + +# +#, fuzzy, python-format +msgid "Audio track (%s) format" +msgstr "lydspor (%s) format" + +# +#, fuzzy, python-format +msgid "Audio track (%s) language" +msgstr "lydspor (%s) sprog" + +# +msgid "Author: " +msgstr "Forfatter:" + +# +msgid "Authoring mode" +msgstr "Oprettelses type" + +# +#. TRANSLATORS: (aspect ratio policy: always try to display as fullscreen, when there is no content (black bars) on left/right, even if this breaks the aspect. +msgid "Auto" +msgstr "Auto" + +# +msgid "Auto chapter split every ? minutes (0=never)" +msgstr "Auto kapitel oprettelse hvert ? minut (0=aldrig) " + +# +msgid "Auto flesh" +msgstr "Auto flash" + +msgid "Auto focus" +msgstr "Autofokus" + +msgid "Auto focus commencing ..." +msgstr "Autofokus i gang" + +msgid "Auto language selection" +msgstr "Auto Sprogvalg" + +# +msgid "Auto scart switching" +msgstr "Autoskift Scart" + +# +msgid "Automatic" +msgstr "Automatisk" + +# +#, fuzzy +msgid "Automatic scan" +msgstr "Automatisk søgning" + +msgid "Automatically start timeshift after" +msgstr "" + +msgid "Automatically turn on external subtitles" +msgstr "" + +# +msgid "Available format variables" +msgstr "Tilgængelige format variabler" + +# +msgid "B" +msgstr "B" + +# +msgid "BER" +msgstr "BER" + +# +msgid "BER:" +msgstr "BER:" + +# +msgid "Back" +msgstr "Tilbage" + +# +msgid "Background" +msgstr "Baggrund" + +# +#, fuzzy +msgid "Background color" +msgstr "baggrundsfarve" + +msgid "Background delete option" +msgstr "Baggrund slet option" + +msgid "Background delete speed" +msgstr "Baggrund opdateringshastighed" + +# +#, fuzzy +msgid "Backup completed." +msgstr "Backup mislykkedes." + +# +msgid "Backup failed." +msgstr "Backup mislykkedes." + +# +msgid "Backup is running..." +msgstr "Backup afvikles..." + +# +msgid "Backup system settings" +msgstr "Lav backup af systemindstillinger" + +# +msgid "Band" +msgstr "Bånd" + +# +msgid "Bandwidth" +msgstr "Båndbredde" + +msgid "Basque" +msgstr "" + +# +msgid "Begin time" +msgstr "Start tid" + +msgid "Behavior of 'pause and ok' when paused" +msgstr "" + +# +msgid "Behavior of 0 key in PiP-mode" +msgstr "Opførsel af 0 tast i PiP-type" + +# +msgid "Behavior when a movie is started" +msgstr "Opførsel når en film startes" + +# +msgid "Behavior when a movie is stopped" +msgstr "Opførsel når en film stoppes" + +# +msgid "Behavior when a movie reaches the end" +msgstr "Opførsel når filmen er næsten slut" + +msgid "Big PiP" +msgstr "" + +# +msgid "Bitrate:" +msgstr "Bitrate:" + +msgid "Black screen" +msgstr "-Sort Skærm" + +msgid "Black screen till locked" +msgstr "Sort Skærm indtil låst" + +# +msgid "Block noise reduction" +msgstr "Video støjreduktion" + +# +msgid "Blue boost" +msgstr "Blå forstærkning" + +# +msgid "Bookmarks" +msgstr "Bogmærker" + +# +msgid "Brightness" +msgstr "Lysstyrke" + +msgid "Bulgarian" +msgstr "Bulgarisk" + +# +msgid "Burn DVD" +msgstr "Brænde DVD" + +# +#, fuzzy, python-format +msgid "Burn audio track (%s)" +msgstr "brænd lydspor (%s)" + +# +msgid "Burn existing image to DVD" +msgstr "Brænd eksisterende image til DVD" + +# +#, fuzzy +msgid "Burn to DVD" +msgstr "Brænd til DVD..." + +# +msgid "Bus: " +msgstr "Bus:" + +msgid "By default, SNR will be shown in dB (when supported by the tuner). This setting forces SNR to be shown as a percentage instead." +msgstr "" + +# +msgid "C" +msgstr "C" + +# +msgid "C-Band" +msgstr "C-Bånd" + +msgid "CH" +msgstr "" + +# +msgid "CI assignment" +msgstr "CI tildeling" + +# +msgid "CVBS" +msgstr "CVBS" + +# +msgid "Cable" +msgstr "Kabel" + +msgid "Cable Scan" +msgstr "Kabelsøgning" + +# +#, fuzzy +msgid "Cache thumbnails" +msgstr "Hente Oversigt" + +msgid "Calculate" +msgstr "Beregn" + +msgid "Calculate all positions" +msgstr "Beregn alle positioner" + +msgid "Calculation complete" +msgstr "Beregning færdig" + +msgid "Calibrate" +msgstr "Kalibrer" + +msgid "Can be used for different fps between external subtitles and video." +msgstr "" + +# +msgid "Cancel" +msgstr "Fortryd" + +msgid "Cannot determine" +msgstr "Kan ikke bestemme" + +msgid "Cannot find any signal ..., aborting !" +msgstr "Kan ikke finde signal ..., afbryder !" + +msgid "Cannot move files on a different disk or system to the trash can" +msgstr "Kan ikke flytte filer til anden disk, eller system til papirkurv" + +msgid "Cannot move to trash can" +msgstr "Kan ikke flytte til papirkurv" + +# +msgid "Capacity: " +msgstr "Kapacitet:" + +# +msgid "Card" +msgstr "Kort" + +msgid "Cascade PiP" +msgstr "" + +#, fuzzy +msgid "Center DVB subtitles" +msgstr "Centrer DVB Tekster" + +msgid "Center time-labels and remove date" +msgstr "" + +# +msgid "Change bouquets in quickzap" +msgstr "Skifte pakke i hurtigzap" + +# +msgid "Change pin code" +msgstr "Skifte pin kode" + +# +#, fuzzy +msgid "Change recording (duration)" +msgstr "skifte optagelse (længde)" + +# +#, fuzzy +msgid "Change recording (endtime)" +msgstr "skifte optagelses (sluttid)" + +msgid "Change repeat and delay settings?" +msgstr "Ændre gentage og forsinkelse" + +msgid "Change service PIN" +msgstr "Skift liste kode" + +msgid "Change service PINs" +msgstr "Skift service koder" + +msgid "Change setup PIN" +msgstr "Skit opsætningskode" + +# +msgid "Change step size" +msgstr "Skift trin afstand" + +msgid "Change timer" +msgstr "" + +msgid "Changelog" +msgstr "Ændringer" + +# +msgid "Channel" +msgstr "Kanal Info..." + +# +#, fuzzy +msgid "Channel list type" +msgstr "Kanalliste Menu" + +# +msgid "Channel not in services list" +msgstr "Kanalen er ikke kanal oplistningen" + +# +#, fuzzy +msgid "Channel selection" +msgstr "Kanal Vælger" + +# +msgid "Channel:" +msgstr "Kanal:" + +# +msgid "Channellist menu" +msgstr "Kanalliste Menu" + +# +msgid "Chap." +msgstr "Kap." + +# +msgid "Chapter" +msgstr "Kapitel" + +# +msgid "Chapter:" +msgstr "Kapitel:" + +# +msgid "Check" +msgstr "Undersøg" + +msgid "Check the internet connection" +msgstr "" + +msgid "Check the internet connection again" +msgstr "" + +# +#, fuzzy +msgid "Checking filesystem..." +msgstr "Undersøge Filsystem..." + +msgid "Checking the internet connection" +msgstr "" + +#, python-format +msgid "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" +msgstr "" + +msgid "Children/Youth" +msgstr "" + +msgid "Choose which tuner to configure." +msgstr "" + +# +msgid "Circular left" +msgstr "Venstre-cirkulær" + +# +msgid "Circular right" +msgstr "Højre-cirkulær" + +# +msgid "Cleanup" +msgstr "Oprydning" + +msgid "Clear" +msgstr "Slet" + +# +msgid "Clear before scan" +msgstr "Slet før søgning" + +msgid "Clear fixed" +msgstr "Slet faste" + +# +msgid "Clear log" +msgstr "Slet log" + +# +#, fuzzy +msgid "Clear playlist" +msgstr "slet spilleliste" + +# +msgid "Close" +msgstr "Afslut" + +msgid "Close PiP on exit" +msgstr "" + +# +msgid "Close title selection" +msgstr "Luk titel valg" + +msgid "Code rate HP" +msgstr "Koderate HP" + +msgid "Code rate LP" +msgstr "Koderate LP" + +# +msgid "Coderate HP" +msgstr "Koderate HP" + +# +msgid "Coderate LP" +msgstr "Koderate LP" + +# +msgid "Collection name" +msgstr "Kollektions navn" + +# +msgid "Collection settings" +msgstr "Kollektions indstillinger" + +# +#, fuzzy +msgid "Color format" +msgstr "Farve Format" + +# +msgid "Command execution..." +msgstr "Kommando udføres..." + +# +msgid "Command order" +msgstr "Kommando rækkefølge" + +# +msgid "Common Interface" +msgstr "CA Modul" + +# +#, fuzzy +msgid "Common Interface assignment" +msgstr "Common interface tildeling" + +# +msgid "Communication" +msgstr "Kommunikation" + +# +#, fuzzy +msgid "Compact flash" +msgstr "Kompakt Flash" + +# +msgid "Complete" +msgstr "Færdig" + +# +msgid "Complex (allows mixing audio tracks and aspects)" +msgstr "Kompleks (tillader blanding af lydspor og billedformater)" + +msgid "Composition of the recording filenames" +msgstr "Type af optagelsesnavne" + +# +#, fuzzy +msgid "Configuration mode" +msgstr "Konfigurations Type" + +# +#, fuzzy, python-format +msgid "Configuration mode: %s" +msgstr "Konfigurations Type" + +# +#, fuzzy +msgid "Configuration..." +msgstr "Netværks opsætning..." + +msgid "Configure an additional delay to improve external subtitle synchronisation." +msgstr "" + +msgid "Configure an additional delay to improve subtitle synchronisation." +msgstr "" + +msgid "Configure for how long the infobar will remain visible after activation." +msgstr "" + +msgid "Configure for how many minutes finished events should remain visible in the EPG. Useful when you need information about an event which has just finished, or has been delayed." +msgstr "" + +msgid "Configure how recording filenames are constructed." +msgstr "" + +msgid "Configure how the fan should operate" +msgstr "" + +msgid "Configure if and how crypto icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how long the latest service in the PiP will be remembered." +msgstr "" + +msgid "Configure if and how service type icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how wide columns will be shown in the channel selection list." +msgstr "" + +msgid "Configure if service picons will be shown in the channel selection list." +msgstr "" + +# +msgid "Configure interface" +msgstr "Opsætning af interface" + +# +msgid "Configure nameservers" +msgstr "Opsætning af navneservere" + +msgid "Configure on which devices the background delete option should be used." +msgstr "" + +#, fuzzy +msgid "Configure remote control type" +msgstr "dreambox fjernbetjening (native)" + +msgid "Configure the DiSEqC mode for this LNB." +msgstr "" + +# +#, fuzzy +msgid "Configure the IP address." +msgstr "Opsætning af interface" + +msgid "Configure the aspect ratio of the screen." +msgstr "" + +msgid "Configure the behavior of the 'pause and ok' key when movie playback is already paused." +msgstr "" + +# +#, fuzzy +msgid "Configure the behavior when movie playback is manually stopped." +msgstr "Opførsel når en film stoppes" + +# +#, fuzzy +msgid "Configure the behavior when movie playback is started." +msgstr "Opførsel når en film startes" + +msgid "Configure the behavior when reaching the end of a movie, during movie playback." +msgstr "" + +msgid "Configure the border width of the subtitles. The dark border makes the subtitles easier to read on a light background." +msgstr "" + +msgid "Configure the brightness level of the front panel display during standby." +msgstr "" + +msgid "Configure the brightness level of the front panel display." +msgstr "" + +msgid "Configure the color of the external subtitles, alternative (normal in white, italic in yellow, bold in cyan, underscore in green), white or yellow." +msgstr "" + +msgid "Configure the color of the teletext subtitles." +msgstr "" + +msgid "Configure the contrast level of the front panel display." +msgstr "" + +msgid "Configure the cursor behaviour in the channel selection list. When opening the channel selection list you can keep on the current service or already select up/down and you are able to revert the B+/B- buttons." +msgstr "" + +msgid "Configure the duration in hours the receiver should go to standby when the receiver is not controlled." +msgstr "" + +msgid "Configure the duration in minutes for the screensaver." +msgstr "" + +msgid "Configure the duration in minutes for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +msgstr "" + +msgid "Configure the duration when the receiver should go to shut down in case the receiver is in standby mode." +msgstr "" + +msgid "Configure the first audio language (highest priority)." +msgstr "" + +msgid "Configure the first subtitle language (highest priority)." +msgstr "" + +msgid "Configure the font size of the subtitles." +msgstr "" + +msgid "Configure the fourth audio language." +msgstr "" + +# +#, fuzzy +msgid "Configure the fourth subtitle language." +msgstr "skift til næste undertekst sprog" + +msgid "Configure the function of a long press on the power button." +msgstr "" + +msgid "Configure the function of a short press on the power button." +msgstr "" + +msgid "Configure the function of the '0' button do when PIP is active." +msgstr "" + +# +#, fuzzy +msgid "Configure the gateway." +msgstr "Opsætning af interface" + +msgid "Configure the general audio delay of Dolby Digital sound tracks." +msgstr "" + +msgid "Configure the general audio delay of stereo sound tracks." +msgstr "" + +msgid "Configure the hard disk drive to go to standby after the specified idle time." +msgstr "" + +msgid "Configure the horizontal alignment of the subtitles." +msgstr "" + +msgid "Configure the initial fast forward speed. When you press the fast forward button, winding will start at this speed." +msgstr "" + +msgid "Configure the initial rewind speed. When you press the rewind button, winding will start at this speed." +msgstr "" + +msgid "Configure the latitude of your location." +msgstr "" + +msgid "Configure the longitude of your location." +msgstr "" + +msgid "Configure the minimum amount of disk space to be available for recordings. When the amount of space drops below this value, deleted items will be removed from the trash can." +msgstr "" + +# +#, fuzzy +msgid "Configure the nameserver (DNS)." +msgstr "Opsætning af navneservere" + +# +#, fuzzy +msgid "Configure the netmask." +msgstr "Opsætning af interface" + +msgid "Configure the number of days after which items are automaticaly removed from the trash can." +msgstr "" + +msgid "Configure the number of days old timers are kept before they are automatically removed from the timer list." +msgstr "" + +msgid "Configure the offline decoding delay in milliseconds. The configured delay is observed at each control word parity change." +msgstr "" + +#, fuzzy +msgid "Configure the possible fast forward speeds." +msgstr "Oprindelig fremspolingshastighed" + +msgid "Configure the possible rewind speeds." +msgstr "" + +msgid "Configure the primary EPG language." +msgstr "" + +msgid "Configure the refresh rate of the screen." +msgstr "" + +msgid "Configure the screen resolution in PC output mode." +msgstr "" + +msgid "Configure the second audio language." +msgstr "" + +# +#, fuzzy +msgid "Configure the second subtitle language." +msgstr "skift til næste undertekst sprog" + +msgid "Configure the secondary EPG language." +msgstr "" + +msgid "Configure the sharpness of the video scaling." +msgstr "" + +msgid "Configure the skip time interval for the '1'/'3' buttons." +msgstr "" + +msgid "Configure the skip time interval for the '4'/'6' buttons." +msgstr "" + +msgid "Configure the skip time interval for the '7'/'9' buttons." +msgstr "" + +# +#, fuzzy +msgid "Configure the slow motion speeds." +msgstr "Langsom bevægelse hastigheder" + +msgid "Configure the source of the frontend data as shown on the infobars. 'Settings' is as stored on the settings. 'Tuner' is as reported by the tuner." +msgstr "" + +msgid "Configure the speed of the background deletion process. Lower speed will consume less hard disk drive performance." +msgstr "" + +msgid "Configure the speed of the fan" +msgstr "" + +msgid "Configure the subtitle delay when timing information is not available." +msgstr "" + +msgid "Configure the third audio language." +msgstr "" + +# +#, fuzzy +msgid "Configure the third subtitle language." +msgstr "skift til næste undertekst sprog" + +msgid "Configure the transparency of the OSD." +msgstr "" + +msgid "Configure the transparency of the black background of graphical DVB subtitles." +msgstr "" + +# +#, fuzzy +msgid "Configure the tuner mode." +msgstr "Konfigurations Type" + +msgid "Configure the type of status indication icons shown in the movielist." +msgstr "" + +msgid "Configure the vertical position of the subtitles, measured from the bottom of the screen." +msgstr "" + +msgid "Configure the video output mode (or resolution)." +msgstr "" + +msgid "Configure the way in which the receiver changes channels." +msgstr "" + +msgid "Configure where completed timers show up in the timer list." +msgstr "" + +msgid "Configure whether (and for how long) a second infobar will be shown when OK is pressed twice. The second infobar contains additional information about the current channel." +msgstr "" + +msgid "Configure whether multi channel sound tracks should be downmixed to stereo." +msgstr "" + +msgid "Configure whether or not an icon should be shown when your motorized dish is moving." +msgstr "" + +msgid "Configure which access level to use for the configuration menu. Expert level gives access to all items." +msgstr "" + +msgid "Configure which color format should be used on the SCART output." +msgstr "" + +msgid "Configure which tuner for recordings will be preferred, when more than one tuner is available." +msgstr "" + +msgid "Configure which tuner type will be preferred, when the same service is available on different types of tuners." +msgstr "" + +msgid "Configure which tuner will be preferred, when more than one tuner is available. If set to 'auto' the system will give priority to the tuner having the lowest number of channels/satellites." +msgstr "" + +# +msgid "Configure your internal LAN" +msgstr "Konfigurer dit interne LAN" + +# +msgid "Configure your network again" +msgstr "Opsæt dit netværk igen" + +msgid "Configure your network settings, and press OK to start the scan" +msgstr "Konfigurer dine indstillinger, og tryk OK for at starte søgning" + +# +msgid "Configure your wireless LAN again" +msgstr "Konfigurer dit trådløse LAN igen" + +msgid "Configures which video output connector will be used." +msgstr "" + +# +msgid "Configuring" +msgstr "Konfigurerer" + +# +msgid "Conflicting timer" +msgstr "Timer konflikt" + +# +msgid "Connect" +msgstr "Forbind" + +# +#, fuzzy +msgid "Connect to a wireless network" +msgstr "Forbind til et trådløst netværk" + +msgid "Connected satellites" +msgstr "" + +# +msgid "Connected to" +msgstr "Forbundet til" + +# +msgid "Connected!" +msgstr "Forbundet!" + +# +msgid "Constellation" +msgstr "Fortryder" + +# +msgid "Content does not fit on DVD!" +msgstr "Indholdet kan ikke være på DVD'en!" + +# +msgid "Continue" +msgstr "Fortsæt" + +# +msgid "Continue in background" +msgstr "Fortsæt i baggrunden" + +# +#, fuzzy +msgid "Continue playback" +msgstr "Fortsæt afspilning" + +# +msgid "Continue playing" +msgstr "Fortsæt afspilning" + +msgid "Continues play (loop)" +msgstr "" + +# +msgid "Contrast" +msgstr "Kontrast" + +#, fuzzy +msgid "Convert ext3 filesystem to ext4" +msgstr "konverter filsystemet ext3 til ext4" + +msgid "Convert ext3 to ext4" +msgstr "Konverter ext3 til ext4" + +#, fuzzy +msgid "Converting ext3 to ext4..." +msgstr "Konverter ext3 til ext4..." + +msgid "Copy" +msgstr "Kopier" + +msgid "Could not connect to receiver .NFI image feed server:" +msgstr "" + +msgid "Could not find installed channel list." +msgstr "" + +# +#, fuzzy +msgid "Could not load medium! No disc inserted?" +msgstr "Kunne ikke indlæse media! Ingen disk isat?" + +# +msgid "Could not open Picture in Picture" +msgstr "Kunne ikke åbne billede i billede" + +# +#, fuzzy, python-format +msgid "Could not record due to conflicting timer %s" +msgstr "Kan ikke optage på grund af konfliktende timere %s" + +#, fuzzy, python-format +msgid "Could not record due to invalid service %s" +msgstr "Kan ikke optage, fejl på kanal %s" + +# +msgid "Create DVD-ISO" +msgstr "Opret DVD-ISO" + +msgid "Create more detailed crash log" +msgstr "Opret mere detaljeret nedbrudslog" + +# +#, python-format +msgid "Creating directory %s failed." +msgstr "Oprettelse af mappen %s mislykkedes." + +#, fuzzy +msgid "Creating filesystem" +msgstr "Opret Filsystem" + +#, fuzzy +msgid "Creating partition" +msgstr "Opret Partition" + +# +msgid "Croatian" +msgstr "Kroatisk" + +msgid "Current CEC address" +msgstr "Nuværende CEC Adresse" + +msgid "Current device: " +msgstr "Nuværende Enhed" + +msgid "Current event EPG" +msgstr "" + +#, python-format +msgid "Current mode: %s \n" +msgstr "" + +# +msgid "Current settings:" +msgstr "Nuværende Indstilling:" + +# +#, fuzzy +msgid "Current transponder" +msgstr "Nuværende Transponder" + +# +msgid "Current value: " +msgstr "Nuværende værdi:" + +# +msgid "Current version:" +msgstr "Nuværende Version:" + +msgid "Currently installed image" +msgstr "Installeret Image" + +msgid "Currently the commit log cannot be retrieved - please try later again" +msgstr "" + +# +#, fuzzy +msgid "Custom skip time for '1'/'3' buttons" +msgstr "Bruger skip tid for '1'/'3'-taster" + +# +#, fuzzy +msgid "Custom skip time for '4'/'6' buttons" +msgstr "Bruger skip tid for '4'/'6'-taster" + +# +#, fuzzy +msgid "Custom skip time for '7'/'9' buttons" +msgstr "Bruger skip tid for '7'/'9'-taster" + +# +msgid "Customize" +msgstr "Bruger indstillinger" + +msgid "Customize channel list cursor behavior" +msgstr "" + +# +msgid "Cut" +msgstr "Klip" + +# +msgid "Cutlist editor..." +msgstr "Klipliste editor..." + +# +msgid "Czech" +msgstr "Tjekkisk" + +# +msgid "D" +msgstr "D" + +# +msgid "DHCP" +msgstr "DHCP" + +# +#, fuzzy +msgid "DMM advanced" +msgstr "avanceret" + +msgid "DMM normal" +msgstr "" + +# +msgid "DUAL LAYER DVD" +msgstr "DL DVD" + +msgid "DVB subtitle black transparency" +msgstr "DVB tekster Sort Transparent" + +msgid "DVB-C" +msgstr "" + +msgid "DVB-C ANNEX C" +msgstr "" + +# +msgid "DVB-S" +msgstr "DVB-S" + +# +msgid "DVB-S2" +msgstr "DVB-S2" + +msgid "DVB-T" +msgstr "" + +msgid "DVB-T2" +msgstr "" + +msgid "DVD data format" +msgstr "" + +# +#, fuzzy +msgid "DVD file browser" +msgstr "DVD fil gennemsyn" + +# +msgid "DVD media toolbox" +msgstr "DVD media værktøjskasse" + +# +#, fuzzy +msgid "DVD player" +msgstr "DVD afspiller" + +# +#, fuzzy +msgid "DVD titlelist" +msgstr "DVD titel oplistning" + +# +msgid "Danish" +msgstr "Dansk" + +# +msgid "Date" +msgstr "Dato" + +# +#, fuzzy +msgid "Date/time input" +msgstr "Tid/Dato input" + +# +#, fuzzy +msgid "Deep standby" +msgstr "Afbryde" + +# +msgid "Default" +msgstr "Standard" + +# +msgid "Default movie location" +msgstr "Standardplacering af film" + +# +#, fuzzy +msgid "Default settings" +msgstr "Standard opsætning" + +msgid "Delay before key repeat starts:" +msgstr "Forsinkelse på gentag tastetryk" + +msgid "Delay for external subtitles" +msgstr "" + +# +msgid "Delete" +msgstr "Slet" + +# +msgid "Delete entry" +msgstr "Slet indgang" + +# +msgid "Delete failed!" +msgstr "Slette fejl!" + +# +#, fuzzy +msgid "Delete file" +msgstr "slet fil" + +# +#, fuzzy +msgid "Delete playlist entry" +msgstr "slette spilleliste indhold" + +# +#, fuzzy +msgid "Delete saved playlist" +msgstr "slette gemt spilleliste" + +msgid "Delete timer" +msgstr "" + +# +#, fuzzy +msgid "Delete..." +msgstr "slet..." + +msgid "Deleted" +msgstr "Slettet" + +msgid "Deleted items" +msgstr "Slettede" + +msgid "Depth" +msgstr "Dybde" + +msgid "Descramble http streams" +msgstr "Afkod http Stream" + +# +msgid "Description" +msgstr "Beskrivelse" + +# +msgid "Deselect" +msgstr "Fravælg" + +msgid "Details for plugin: " +msgstr "Plugin Detaljer" + +# +msgid "Detected HDD:" +msgstr "HDD fundet:" + +# +msgid "Detected NIMs:" +msgstr "Fundne NIMs:" + +msgid "Devicename:" +msgstr "Enhedsnavn" + +msgid "Devide" +msgstr "" + +# +msgid "DiSEqC" +msgstr "DiSEqC" + +msgid "DiSEqC 1.0 command" +msgstr "" + +msgid "DiSEqC 1.1 command" +msgstr "" + +msgid "DiSEqC 1.1 repeats" +msgstr "" + +# +msgid "DiSEqC A/B" +msgstr "DiSEqC A/B" + +# +msgid "DiSEqC A/B/C/D" +msgstr "DiSEqC A/B/C/D" + +# +msgid "DiSEqC mode" +msgstr "DiSEqC type" + +# +#, fuzzy, python-format +msgid "DiSEqC port %s: %s" +msgstr "DiSEqC gentagelser" + +# +#, fuzzy +msgid "DiSEqC-tester settings" +msgstr "DiSEqC-test opsætning" + +# +msgid "Dialing:" +msgstr "Ringer op:" + +# +msgid "Digital contour removal" +msgstr "Digital konturfjernelse" + +# +msgid "Direct playback of linked titles without menu" +msgstr "Direkte afspilning af lænkede titler uden menu" + +msgid "Directory" +msgstr "Mappe" + +# +#, fuzzy, python-format +msgid "Directory %s does not exist." +msgstr "Mappen %s findes ikke." + +#, python-format +msgid "Directory %s nonexistent." +msgstr "" + +# +msgid "Directory browser" +msgstr "Mappe gennemsyn" + +#, python-format +msgid "Directory contains %d file(s) and %d sub-directories.\n" +msgstr "" + +#, fuzzy, python-format +msgid "Directory contains %s and %s." +msgstr "Mappen indeholder %d fil(er) og %d undermapper.\n" + +# +msgid "Disable" +msgstr "Afbryd" + +# +msgid "Disable Picture in Picture" +msgstr "Afbryd Billed i Billed" + +msgid "Disable background scanning" +msgstr "Deaktiver baggrundssøgning" + +msgid "Disable timer" +msgstr "" + +# +msgid "Disabled" +msgstr "Afbrudt" + +# +msgid "Disconnect" +msgstr "Afbryd" + +msgid "Disk space to reserve for recordings (in GB)" +msgstr "Plads der skal reseveres til optagelser (I GB)" + +# +msgid "Display 16:9 content as" +msgstr "Vis 16:9 indhold som" + +# +msgid "Display 4:3 content as" +msgstr "Vis 4:3 indhold som" + +# +msgid "Display >16:9 content as" +msgstr "Vis > 16:9 indhold som" + +# +#, fuzzy +msgid "Display and userinterface" +msgstr "Visning og bruger interface" + +msgid "Display message before playing next movie" +msgstr "" + +# +#, fuzzy +msgid "Display setup" +msgstr "Display Indstillinger" + +# +#, fuzzy +msgid "Do not change" +msgstr "Ikke ændre" + +# +#, fuzzy +msgid "Do not record" +msgstr "optag ikke" + +# +#, fuzzy +msgid "Do nothing" +msgstr "gør intet" + +# +msgid "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" +msgstr "" +"Vil du virkelig kontrolere filsystemet?\n" +"Dette kan tage lang tid!" + +msgid "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" +msgstr "" +"Vil du virkelig konvertere filsystemet?\n" +"Det kan ikke fortrydes!" + +# +#, python-format +msgid "Do you really want to delete %s?" +msgstr "Vil du virkelig slette %s?" + +# +#, python-format +msgid "" +"Do you really want to download\n" +"the plugin \"%s\"?" +msgstr "" +"Vil du virkelig downloade\n" +"pluginet \"%s\"?" + +# +msgid "Do you really want to exit?" +msgstr "Ønsker du virkelig at afslutte?" + +msgid "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" +msgstr "" +"Vil du virkelig initialisere enheden?\n" +"Alle data overskrives!" + +# +#, fuzzy, python-format +msgid "" +"Do you really want to remove\n" +"the plugin \"%s\"?" +msgstr "" +"Vil du virkelig downloade\n" +"pluginet \"%s\"?" + +# +#, python-format +msgid "Do you really want to remove directory %s from the disk?" +msgstr "Vil du virkelig fjerne mappen %s fra disken?" + +# +#, python-format +msgid "Do you really want to remove your bookmark of %s?" +msgstr "Vil du virkelig fjerne dit bogmærke af %s?" + +msgid "Do you want this?" +msgstr "" + +# +msgid "Do you want to burn this collection to DVD medium?" +msgstr "Vil du brænde denne kollektion til DVD media?" + +# +msgid "Do you want to do a service scan?" +msgstr "Vil du lave en kanal søgning?" + +# +msgid "Do you want to do another manual service scan?" +msgstr "Vil du lave en anden manuel søgning?" + +#, python-format +msgid "Do you want to download the image to %s ?" +msgstr "Vil du downloade imaget til %s ?" + +# +#, fuzzy +msgid "Do you want to install a channel list?" +msgstr "Vil du installere pakken:\n" + +# +msgid "Do you want to install the package:\n" +msgstr "Vil du installere pakken:\n" + +# +msgid "Do you want to play DVD in drive?" +msgstr "Vil du afspille DVD i drevet?" + +# +msgid "Do you want to preview this DVD before burning?" +msgstr "Vil du gennemse denne DVD inden brænding?" + +msgid "Do you want to reboot your receiver?" +msgstr "" + +# +msgid "Do you want to remove the package:\n" +msgstr "Vil du fjerne pakken:\n" + +# +msgid "Do you want to restore your settings?" +msgstr "Vil du genskabe dine indstillinger?" + +# +msgid "Do you want to resume this playback?" +msgstr "Vil du genoptage denne afspilning?" + +#, fuzzy, python-format +msgid "Do you want to update your receiver to %s?" +msgstr "Vil du downloade imaget til %s ?" + +msgid "Do you want to update your receiver?" +msgstr "" + +# +msgid "Do you want to upgrade the package:\n" +msgstr "Vil du opgradere pakken:\n" + +# +msgid "Don't stop current event but disable coming events" +msgstr "Stop ikke nuværende program men slå kommende programmer fra" + +# +#, fuzzy, python-format +msgid "Done - Installed, upgraded or removed %d package (%s)" +msgid_plural "Done - Installed, upgraded or removed %d packages (%s)" +msgstr[0] "Færdig - Installeret, opgraderet eller fjernet %d pakker med %d fejl" +msgstr[1] "Færdig - Installeret, opgraderet eller fjernet %d pakker med %d fejl" + +# +msgid "Download" +msgstr "Download" + +#, fuzzy, python-format +msgid "Download %s from server" +msgstr "Download %s fra Server" + +msgid "Download .NFI-files for USB-flasher" +msgstr "Download .NFI-filer til USB flash" + +# +#, fuzzy +msgid "Download plugins" +msgstr "Hente Plugins" + +# +msgid "Downloadable new plugins" +msgstr "Hente nye Plugins" + +# +msgid "Downloadable plugins" +msgstr "Plugins der kan hentes" + +# +msgid "Downloading" +msgstr "Henter" + +# +msgid "Downloading plugin information. Please wait..." +msgstr "Henter plugin informationer. Vent venligst..." + +# +msgid "Dutch" +msgstr "Hollandsk" + +# +msgid "Dynamic contrast" +msgstr "Dynamisk kontrast" + +# +msgid "E" +msgstr "Ø" + +msgid "EPG" +msgstr "" + +msgid "EPG language selection 1" +msgstr "EPG Sprog valg 1" + +msgid "EPG language selection 2" +msgstr "EPG Sprog valg 2" + +# +#, fuzzy +msgid "EPG selection" +msgstr "EPG Valg" + +msgid "EPG settings" +msgstr "" + +# +#, python-format +msgid "ERROR - failed to scan (%s)!" +msgstr "FEJL - kan ikke søge (%s)!" + +# +msgid "East" +msgstr "Øst" + +msgid "East limit set" +msgstr "Øst grænse indstil" + +# +msgid "Edit" +msgstr "Rediger" + +# +msgid "Edit DNS" +msgstr "Ændre DNS" + +# +msgid "Edit bouquets list" +msgstr "Edit pakkeliste" + +# +msgid "Edit chapters of current title" +msgstr "Rediger kapitler i aktuel titel" + +# +msgid "Edit services list" +msgstr "Ændre kanallister" + +# +msgid "Edit settings" +msgstr "Ændre indstillinger" + +# +#, fuzzy +msgid "Edit the nameserver configuration of your receiver.\n" +msgstr "luk navneserver opsætning" + +msgid "Edit the network configuration of your receiver.\n" +msgstr "" + +msgid "Edit timer" +msgstr "" + +# +msgid "Edit title" +msgstr "Rediger titel" + +# +msgid "Edit upgrade source url." +msgstr "Rediger url for opgraderingskilde." + +msgid "Education/Science/..." +msgstr "" + +# +msgid "Electronic Program Guide" +msgstr "Elektronisk Program Guide" + +# +msgid "Enable" +msgstr "Aktiver" + +msgid "Enable 'neutrino' style channel select controlling" +msgstr "" + +msgid "Enable 'neutrino' style zap controlling" +msgstr "" + +# +msgid "Enable 5V for active antenna" +msgstr "Aktivere 5V for aktiv antenne" + +msgid "Enable EIT EPG" +msgstr "Aktiver EIT EPG" + +msgid "Enable MHW EPG" +msgstr "Aktiver MHV EPG" + +msgid "Enable Netmed EPG" +msgstr "Aktiver Nethmed EPG" + +msgid "Enable OK for channel selection" +msgstr "" + +msgid "Enable ViaSat EPG" +msgstr "Aktiver Viasat EPG" + +msgid "Enable Virgin EPG" +msgstr "" + +msgid "Enable Wake On LAN" +msgstr "" + +msgid "Enable auto fast scan" +msgstr "" + +#, fuzzy +msgid "Enable bouquet selection in multi-EPG" +msgstr "Vis kanalistevalg menu" + +msgid "Enable freesat EPG" +msgstr "Aktiver Freesat EPG" + +# +msgid "Enable multiple bouquets" +msgstr "Aktivere multi pakker" + +# +msgid "Enable parental control" +msgstr "Aktivere forældre kontrol?" + +msgid "Enable teletext caching" +msgstr "Aktiver teletekst lagring" + +msgid "Enable zapping with CH+/-, B+/-, P+/-" +msgstr "" + +# +msgid "Enabled" +msgstr "Aktiveret" + +# +msgid "Encrypted: " +msgstr "Krypteret:" + +# +msgid "Encryption" +msgstr "Kodning" + +# +#, fuzzy +msgid "Encryption key" +msgstr "Kodnings Nøgle" + +# +#, fuzzy +msgid "Encryption key type" +msgstr "Kodnings nøgletype" + +# +msgid "Encryption:" +msgstr "Kryptering:" + +# +msgid "End time" +msgstr "Stop tid" + +msgid "End time to ignore inactivity sleeptimer" +msgstr "" + +msgid "End time to ignore shutdown in standby" +msgstr "" + +# +msgid "English" +msgstr "Engelsk" + +# +#, fuzzy +msgid "Enigma2 skin selector" +msgstr "enigma2 og netværk" + +# +msgid "Enter main menu..." +msgstr "Åbne hoved menu..." + +# +msgid "Enter pin code" +msgstr "Indtast Pinkode" + +# +msgid "Enter the service pin" +msgstr "Skriv service koden" + +msgid "Equal to" +msgstr "" + +# +msgid "Error" +msgstr "Fejl" + +msgid "Error code" +msgstr "Fejlkode" + +# +msgid "Error executing plugin" +msgstr "Fejl ved kørsel af plugin" + +# +#, python-format +msgid "" +"Error: %s\n" +"Retry?" +msgstr "" +"Fejl: %s\n" +"Prøve igen?" + +# +msgid "Estonian" +msgstr "Estisk" + +msgid "Ethernet network interface" +msgstr "Ethernet netværksinterface" + +#, fuzzy +msgid "Event font size (relative to skin size)" +msgstr "Begivendhed Font (relativ til skin)" + +# +#, fuzzy +msgid "Event view" +msgstr "Programoversigt" + +#, fuzzy +msgid "Event view menu" +msgstr "Programoversigt menu" + +msgid "Everywhere" +msgstr "Over det hele" + +# +#, fuzzy +msgid "Exceeds dual layer medium!" +msgstr "overskrider dobbelt lags media!" + +# +msgid "Execution finished!!" +msgstr "Kommandoen udført!!" + +# +#, fuzzy +msgid "Execution progress:" +msgstr "Kommando status:" + +# +msgid "Exif" +msgstr "Afslut" + +# +msgid "Exit" +msgstr "Afslut" + +msgid "Exit EPG" +msgstr "Forlad EPG" + +# +msgid "Exit editor" +msgstr "Afslut editor" + +msgid "Exit input device selection." +msgstr "Afslut enhedsvalg" + +msgid "Exit media player?" +msgstr "" + +# +#, fuzzy +msgid "Exit mediaplayer" +msgstr "luk medieafspiller" + +# +#, fuzzy +msgid "Exit movie list" +msgstr "luk filmliste" + +# +#, fuzzy +msgid "Exit movie player?" +msgstr "luk medieafspiller" + +# +#, fuzzy +msgid "Exit nameserver configuration" +msgstr "luk navneserver opsætning" + +# +#, fuzzy +msgid "Exit network interface list" +msgstr "luk netværk interfaceoversigt" + +# +msgid "Exit network wizard" +msgstr "Afbryd netværkshjælper" + +# +msgid "Exit the wizard" +msgstr "Afslut guiden" + +# +msgid "Expert" +msgstr "Ekspert" + +msgid "Extend sleeptimer 15 minutes" +msgstr "" + +# +msgid "Extended Software" +msgstr "Udvidet software" + +# +msgid "Extended Software Plugin" +msgstr "Udvidet software plugin" + +# +#, fuzzy +msgid "Extended network setup plugin..." +msgstr "Udvidet netværk opsætnings plugin..." + +# +#, fuzzy +msgid "Extended setup..." +msgstr "Udvidet opsætning..." + +# +msgid "Extensions" +msgstr "Ekstra menu" + +# +msgid "Extensions management" +msgstr "Håndtering af udvidelser" + +msgid "External PiP" +msgstr "" + +msgid "External subtitle color" +msgstr "" + +msgid "Extra motor options" +msgstr "" + +# +msgid "FEC" +msgstr "FEC" + +msgid "FTA" +msgstr "FTA" + +# +msgid "Factory reset" +msgstr "Gendan fabriksindstilling" + +# +msgid "Failed" +msgstr "Fejlet" + +msgid "Failed to write /tmp/positionersetup.log: " +msgstr "" + +# +#, python-format +msgid "Fan %d" +msgstr "Ventilator %d" + +# +#, python-format +msgid "Fan %d PWM" +msgstr "Ventilator %d PWM" + +# +#, fuzzy, python-format +msgid "Fan %d voltage" +msgstr "Ventilator %d spænding (V)" + +msgid "Fan operation" +msgstr "" + +msgid "Fan speed" +msgstr "" + +# +msgid "Fast" +msgstr "Hurtig" + +# +msgid "Fast DiSEqC" +msgstr "Hurtig DiSEqC" + +msgid "Fast Scan" +msgstr "Hurtig søgning" + +# +msgid "Fast epoch" +msgstr "Hurtig epoch" + +# +#, fuzzy +msgid "Fast forward speeds" +msgstr "Hurtig frem hastigheder" + +# +msgid "Favourites" +msgstr "Favoritter" + +msgid "File appears to be busy.\n" +msgstr "Filen virker optaget.\n" + +# +#, fuzzy +msgid "Filesystem check" +msgstr "Kontroller filsystem" + +msgid "Final position at" +msgstr "Slutposition ved" + +msgid "Final position at index" +msgstr "Slutposition ved Index" + +msgid "Fine movement" +msgstr "Fin bevægelse" + +# +msgid "Finetune" +msgstr "Fintuning" + +# +msgid "Finished" +msgstr "Færdig" + +# +msgid "Finished configuring your network" +msgstr "Afsluttede opsætning af dit netværk" + +# +msgid "Finished restarting your network" +msgstr "Afsluttede genstart af dit netværk" + +# +msgid "Finnish" +msgstr "Finsk" + +#, fuzzy +msgid "Fixed" +msgstr "fast" + +# +msgid "Flash" +msgstr "Flash" + +# +msgid "Flashing failed" +msgstr "Flash mislykkedes" + +# +msgid "Following tasks will be done after you press OK!" +msgstr "Følgende opgaver vil blive udført efter tryk på OK!" + +# +msgid "Format" +msgstr "Formatere" + +msgid "Forward volume keys" +msgstr "Fremad lydstyke" + +# +msgid "Frame size in full view" +msgstr "Billed størrelse i fuld " + +# +msgid "French" +msgstr "Fransk" + +# +msgid "Frequency" +msgstr "Frekvens" + +# +msgid "Frequency bands" +msgstr "Frekvens bånd" + +# +msgid "Frequency scan step size(khz)" +msgstr "Frekvens søgnings trin størrelse(khz)" + +# +msgid "Frequency steps" +msgstr "Frekvens trin" + +msgid "Frequency:" +msgstr "" + +# +msgid "Fri" +msgstr "Fre" + +# +msgid "Friday" +msgstr "Fredag" + +msgid "From :" +msgstr "Fra" + +# +#, python-format +msgid "Frontprocessor version: %d" +msgstr "Frontprocessor Version: %d" + +#, fuzzy +msgid "Full transparency" +msgstr "fuld transparent" + +msgid "Fulview resulution" +msgstr "" + +msgid "Function of OK button" +msgstr "" + +msgid "Further Options" +msgstr "" + +# +msgid "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" +msgstr "" +"GUI skal genstartes for aktivering af nyt grafisk tema\n" +"Vil du genstarte GUI nu?" + +# +msgid "Gateway" +msgstr "Router adresse" + +# +#, fuzzy +msgid "General AC3 delay" +msgstr "Almindelig AC3 forsinkelse" + +# +#, fuzzy +msgid "General PCM delay" +msgstr "Almindelig PCM forsinkelse" + +# +msgid "Genre" +msgstr "Genre" + +# +msgid "German" +msgstr "Tysk" + +msgid "Get latest experimental image" +msgstr "Hent seneste eksperiment image" + +msgid "Get latest release image" +msgstr "Hent seneste image" + +# +msgid "Getting plugin information. Please wait..." +msgstr "Henter plugin information. Vent venligst..." + +msgid "Go down the list" +msgstr "Gå ned af listen" + +msgid "Go to first movie or last item" +msgstr "Gå til første film, eller sidste emne" + +msgid "Go to first movie or top of list" +msgstr "Gå til første film, eller toppen af listen" + +#, fuzzy +msgid "Go to first service" +msgstr "Gå til første kanal" + +#, fuzzy +msgid "Go to last service" +msgstr "Gå til sidste kanal" + +#, fuzzy +msgid "Go to next event" +msgstr "Gå til næste udsendelse" + +#, fuzzy +msgid "Go to next page of service" +msgstr "Gå til næste side af kanaler" + +#, fuzzy +msgid "Go to previous event" +msgstr "Gå til forrige udsendelse" + +#, fuzzy +msgid "Go to previous page of service" +msgstr "Gå til forrige side af kanaler" + +msgid "Go up the list" +msgstr "Gå op af listen" + +msgid "Goto" +msgstr "Gå til" + +# +msgid "Goto 0" +msgstr "Gå til 0" + +msgid "Goto :" +msgstr "Gå til :" + +msgid "Goto X" +msgstr "Gå til X" + +msgid "Goto index position" +msgstr "Gå til indeks" + +msgid "Goto next day of events" +msgstr "" + +msgid "Goto next page of events" +msgstr "Gå til næste side af udsendelse" + +# +msgid "Goto position" +msgstr "Gå til position" + +msgid "Goto previous day of events" +msgstr "" + +msgid "Goto previous page of events" +msgstr "Gå til forrige side af udsendelser" + +msgid "Goto specific date/time" +msgstr "" + +msgid "GotoX calibration" +msgstr "Gå til X calibrering" + +msgid "GraphMultiEpg Settings" +msgstr "" + +# +msgid "Graphical Multi EPG" +msgstr "Grafisk multi EPG" + +# +msgid "Greek" +msgstr "Græsk" + +# +msgid "Green boost" +msgstr "Grøn forstærkning" + +msgid "Guard interval" +msgstr "Beskyttelse interval" + +msgid "HD list" +msgstr "HD Liste" + +msgid "HDMI-CEC setup" +msgstr "" + +msgid "Handle standby from TV" +msgstr "Håndter Standby fra TV" + +msgid "Handle wakeup from TV" +msgstr "Håndter Vågn op fra TV" + +# +#, fuzzy +msgid "Hard disk" +msgstr "Harddisk..." + +# +#, fuzzy +msgid "Hard disk setup" +msgstr "Harddisk opsætning" + +# +#, fuzzy +msgid "Hard disk standby after" +msgstr "Harddisk slumre efter:" + +# +msgid "Harddisk" +msgstr "Harddisk..." + +msgid "Hardware: " +msgstr "" + +msgid "Hebrew" +msgstr "Hebraisk" + +msgid "Helps setting up your dish" +msgstr "" + +msgid "Hidden network" +msgstr "Skjult netværk" + +msgid "Hide CI messages" +msgstr "Skjul CI beskeder" + +msgid "Hide channel list in radio mode" +msgstr "" + +msgid "Hide known extensions" +msgstr "" + +msgid "Hide number markers" +msgstr "" + +# +#, fuzzy +msgid "Hide player" +msgstr "skjul afspiller" + +msgid "Hide zap errors" +msgstr "Skjul zap fejl" + +msgid "Hierarchy info" +msgstr "Hieraki info" + +# +#, fuzzy +msgid "Hierarchy information" +msgstr "Hieraki information" + +# +msgid "High bitrate support" +msgstr "Høj bitrate understøtning" + +msgid "Hold screen" +msgstr "frys skærm" + +msgid "Hold till locked" +msgstr "frys til låst" + +msgid "Home" +msgstr "Hjem" + +# +msgid "Horizontal" +msgstr "Horisontal" + +msgid "Horizontal turning speed" +msgstr "Horisontal drejehastighed" + +# +msgid "How many minutes do you want to record?" +msgstr "Hvor mange minutter vil du optage?" + +# +msgid "Hue" +msgstr "Klarhed" + +# +msgid "Hungarian" +msgstr "Ungarsk" + +# +#, fuzzy +msgid "IP address" +msgstr "IP-Adresse" + +# +msgid "ISO file is too large for this filesystem!" +msgstr "ISO filen er for stor til dette filsystem!" + +# +msgid "ISO path" +msgstr "ISO stien" + +msgid "Icons" +msgstr "Ikoner" + +# +msgid "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." +msgstr "" +"Hvis du ser dette, så er noget galt med\n" +"din scart forbindelse. Tryk OK for at komme tilbage." + +# +msgid "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." +msgstr "" +"Hvis dit TV har Lysstyrke eller Kontrast indstilling, så slå dette fra. Forefindes en \"dynamisk\" indstilling, sæt denne til standard. Juster baglysstyrke så den passer til din smag. Skru ned for din Kontrast så meget som muligt.\n" +"Derefter skru din Lysstyrke så langt ned, så du stadig kan se skyggerne af de Grå bjælker.\n" +"Tænk ikke på de lyse skygger nu. De vil blive indstillet i næste trin.\n" +"Hvis du er tilfreds med resultatet, tryk OK." + +msgid "Image: " +msgstr "" + +# +#, fuzzy +msgid "Immediate shutdown" +msgstr "omgående afbrydelse" + +# +msgid "In order to record a timer, the TV was switched to the recording service!\n" +msgstr "For at optage via timer, er TV skiftet til optage kanal!\n" + +# +#, fuzzy +msgid "In progress" +msgstr "Arbejder" + +msgid "Inactivity Sleeptimer" +msgstr "" + +msgid "Include AIT in http streams" +msgstr "Inkluder AIT i http stream" + +msgid "Include ECM in http streams" +msgstr "Inkluder ECM i http stream" + +msgid "Include EIT in http streams" +msgstr "Inkluder EIT i http stream" + +msgid "Incorrect type service for PiP!" +msgstr "" + +# +msgid "Increased voltage" +msgstr "Øget spænding" + +# +msgid "Index" +msgstr "Oversigt" + +msgid "Index allocated:" +msgstr "" + +# +msgid "Info" +msgstr "Info" + +# +#, fuzzy +msgid "Info bar" +msgstr "InfoBjælke" + +# +#, fuzzy +msgid "Info bar timeout" +msgstr "Infobar tid" + +msgid "Infobar frontend data source" +msgstr "" + +# +msgid "Information" +msgstr "Information" + +# +msgid "Init" +msgstr "Initialiser" + +#, fuzzy +msgid "Initial fast forward speed" +msgstr "Oprindelig fremspolingshastighed" + +# +msgid "Initial location in new timers" +msgstr "Oprindelig placering i nye timere" + +msgid "Initial lock ratio" +msgstr "Oprindelig lås ratio" + +#, fuzzy +msgid "Initial rewind speed" +msgstr "oprindelig tilbagespolingshastighed" + +msgid "Initial signal quality" +msgstr "Oprindelig signalkvalitet" + +msgid "Initial signal quality:" +msgstr "Oprindelig signal kvalitet" + +# +msgid "Initialization" +msgstr "Initialiserer" + +# +msgid "Initialize" +msgstr "Formatere" + +msgid "Initializing storage device..." +msgstr "Initialisering lagerenhed" + +# +msgid "Input" +msgstr "Indgang" + +msgid "Input device setup" +msgstr "Opsætning af enhed" + +msgid "Input devices" +msgstr "Enheder" + +# +msgid "Install" +msgstr "Installer" + +# +msgid "Install a new image with a USB stick" +msgstr "Installer et nyt image med en USB stick" + +# +msgid "Install a new image with your web browser" +msgstr "Installer et nyt image med din web browser" + +# +#, fuzzy +msgid "Install channel list" +msgstr "næste kanal i hukommelse" + +msgid "Install extensions" +msgstr "" + +# +msgid "Install extensions." +msgstr "Installer udvidelser." + +# +msgid "Install local extension" +msgstr "Installer lokal udvidelse" + +msgid "Install picons on" +msgstr "Installer picons på" + +# +#, fuzzy +msgid "Install softcam" +msgstr "Installerer software..." + +#, fuzzy +msgid "Installation has completed." +msgstr "Beregning færdig" + +# +#, fuzzy +msgid "Installation or removal has completed." +msgstr "Installer og fjern færdige." + +# +msgid "Installing" +msgstr "Installerer" + +# +#, fuzzy +msgid "Installing software..." +msgstr "Installerer software..." + +# +#, fuzzy +msgid "Instant recording location" +msgstr "Umiddelbar optagelsesplacering" + +# +#, fuzzy +msgid "Instant recording..." +msgstr "Hurtig optagelse..." + +# +msgid "Interface: " +msgstr "Interface: " + +# +msgid "Intermediate" +msgstr "Normal" + +# +#, fuzzy +msgid "Internal flash" +msgstr "Intern Flash" + +msgid "Internal hdd only" +msgstr "" + +msgid "Interval between keys when repeating:" +msgstr "Interval mellem trykgentagelse" + +# +#, python-format +msgid "Invalid directory selected: %s" +msgstr "Ugyldig mappe valgt: %s" + +# +#, fuzzy +msgid "Invalid location" +msgstr "Ugyldig placering" + +msgid "Invalid transponder data" +msgstr "" + +# +msgid "Inversion" +msgstr "Invertere" + +msgid "Invert" +msgstr "Inverter" + +# +msgid "Ipkg" +msgstr "Ipkg" + +#, fuzzy +msgid "Is this setting ok?" +msgstr "Brug disse indstillinger" + +# +#, fuzzy +msgid "Is this video mode ok?" +msgstr "Er denne videotilstand ok?" + +# +msgid "Italian" +msgstr "Italiensk" + +#, fuzzy +msgid "Items per page " +msgstr "Emner pr side" + +#, fuzzy +msgid "Items per page for list screen" +msgstr "Emner pr side" + +# +#, fuzzy +msgid "Job overview" +msgstr "Job oversigt" + +msgid "Jump to beginning of list" +msgstr "" + +# +#, fuzzy +msgid "Jump to end of list" +msgstr "spring til liste stop" + +# +#, fuzzy +msgid "Jump to next marked position" +msgstr "spring til næste markerede position" + +# +#, fuzzy +msgid "Jump to previous marked position" +msgstr "spring til forrige markerede position" + +# +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect) +#, fuzzy +msgid "Just scale" +msgstr "Fyld billede helt ud" + +msgid "Keep service" +msgstr "" + +# +#, fuzzy +msgid "Kernel version: " +msgstr "Ny Version:" + +# +msgid "Keyboard" +msgstr "Tastatur" + +# +#, fuzzy +msgid "Keyboard map" +msgstr "Tastatur layout" + +# +#, fuzzy +msgid "Keyboard setup" +msgstr "Tastatur indstilling" + +# +#, fuzzy +msgid "LAN adapter" +msgstr "LAN adapter" + +msgid "LAN connection" +msgstr "LAN Forbindelse" + +# +msgid "LNB" +msgstr "LNB" + +# +msgid "Language" +msgstr "Sprog" + +# +msgid "Language selection" +msgstr "Valg af sprog" + +# +msgid "Last config" +msgstr "Seneste opsætning" + +# +msgid "Last speed" +msgstr "Sidste hastighed" + +#, fuzzy +msgid "Last upgrade: " +msgstr "Seneste opdatering" + +msgid "Latest Commits" +msgstr "" + +# +msgid "Latitude" +msgstr "Breddegrad" + +# +msgid "Latvian" +msgstr "Lettisk" + +# +#, fuzzy +msgid "Leave DVD player?" +msgstr "Forlade DVD afspiller?" + +# +msgid "Left" +msgstr "Venstre" + +msgid "Left from servicename" +msgstr "" + +msgid "Leisure hobbies" +msgstr "" + +# +#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term. +msgid "Letterbox" +msgstr "Sorte striber i top og bund af billede" + +msgid "Letterbox zoom" +msgstr "" + +# +#, fuzzy +msgid "Limit character set for recording filenames" +msgstr "Begrænset tegnsætning for optagelsesfilnavne" + +# +msgid "Limit east" +msgstr "Øst begrænsning" + +msgid "Limit the characters that can be used in recording filenames to (7 bit) ascii. This ensures compatibility with operating systems or file systems with limited character sets." +msgstr "" + +# +msgid "Limit west" +msgstr "Vest begrænsning" + +msgid "Limits cancelled" +msgstr "Begrænsning annulleret" + +msgid "Limits enabled" +msgstr "Begrænsning aktiveret" + +# +msgid "Limits off" +msgstr "Begrænsning fra" + +# +msgid "Limits on" +msgstr "Begrænsning til" + +# +#, fuzzy +msgid "Link quality:" +msgstr "Link kvalitet:" + +# +msgid "Link:" +msgstr "Link:" + +# +msgid "Linked titles with a DVD menu" +msgstr "Lænkede titler med en DVD menu" + +# +#, fuzzy +msgid "List EPG functions..." +msgstr "liste over EPG..." + +msgid "List available networks" +msgstr "Tilgængelige netværk" + +msgid "List mode" +msgstr "" + +# +#, fuzzy +msgid "List of storage devices" +msgstr "Oplistning af hukommelsesenheder" + +msgid "List type" +msgstr "" + +#, fuzzy, python-format +msgid "List version %d, found %d channel" +msgid_plural "List version %d, found %d channels" +msgstr[0] "List version %d, fundet %d kanaler" +msgstr[1] "List version %d, fundet %d kanaler" + +# +#, fuzzy +msgid "Listen to the radio..." +msgstr "høre radio..." + +msgid "Lists reloaded!" +msgstr "" + +# +msgid "Lithuanian" +msgstr "Litauisk" + +# +msgid "Load" +msgstr "Indlæs" + +msgid "Load Length of Movies in Movielist" +msgstr "" + +# +#, fuzzy +msgid "Load length of movies in movie list" +msgstr "Indlæs længden af film i filmlisten" + +# +#, fuzzy +msgid "Load playlist" +msgstr "hent spilleliste" + +# +#, fuzzy +msgid "Local network" +msgstr "Lokalt netværk" + +# +msgid "Location" +msgstr "Placering" + +# +msgid "Location for instant recordings" +msgstr "Placering af umiddelbare optagelser" + +msgid "Lock ratio" +msgstr "Lås ratio" + +# +msgid "Lock:" +msgstr "Lås:" + +# +msgid "Log results to harddisk" +msgstr "Log resultaterne til harddisken" + +msgid "Long filenames" +msgstr "Lange filnavne" + +# +#, fuzzy +msgid "Long key press" +msgstr "Langt tastetryk" + +# +msgid "Longitude" +msgstr "Længdegrad" + +msgid "Loop through to" +msgstr "" + +msgid "Luxembourgish" +msgstr "" + +# +#, fuzzy +msgid "MMC card" +msgstr "MMC kort" + +# +msgid "MORE" +msgstr "MERE" + +# +msgid "Main menu" +msgstr "Hovedmenu" + +msgid "Maintain old EPG data for" +msgstr "Vedligehold EPG data for" + +# +msgid "Make this mark an 'in' point" +msgstr "Lave dette mærke til 'ind' point" + +# +msgid "Make this mark an 'out' point" +msgstr "Lave dette mærke til 'ud' point" + +# +msgid "Make this mark just a mark" +msgstr "Lave dette mærke til kun et mærke" + +# +msgid "Manage extensions" +msgstr "Håndter udvidelser" + +# +msgid "Manage your receiver's software" +msgstr "Styring af din modtagers software" + +msgid "Manual" +msgstr "" + +# +msgid "Manual Scan" +msgstr "Manuel søgning" + +msgid "Manual configuration" +msgstr "Manuel configuration" + +# +#, fuzzy +msgid "Manual scan" +msgstr "Manuel søgning" + +# +msgid "Manual transponder" +msgstr "Manuel transponder" + +# +msgid "Manufacturer" +msgstr "Fabrikant" + +# +#, fuzzy +msgid "Margin after recording (minutes)" +msgstr "Margin før optagelse (minutter)" + +# +#, fuzzy +msgid "Margin before recording (minutes)" +msgstr "Margin før optagelse (minutter)" + +msgid "Max memory positions" +msgstr "" + +# +#, fuzzy +msgid "Max. bitrate: " +msgstr "Maks. bitrate: " + +# +msgid "Media player" +msgstr "Medie afspiller" + +# +#, fuzzy +msgid "Media scanner" +msgstr "Medie afspiller" + +# +msgid "Medium is not a writeable DVD!" +msgstr "Media er ikke skrivbar DVD!" + +# +msgid "Medium is not empty!" +msgstr "Media er ikke tomt!" + +msgid "Memory" +msgstr "Hukommelse" + +msgid "Memory index" +msgstr "Hukommelsesindeks" + +# +msgid "Menu" +msgstr "Menu" + +# +msgid "Message" +msgstr "Besked" + +# +msgid "Message..." +msgstr "Besked..." + +#, python-format +msgid "Minimum age %d years" +msgstr "" + +#, fuzzy +msgid "Minimum send interval" +msgstr "Beskyttelse interval" + +msgid "Missing " +msgstr "Mangler" + +# +#, fuzzy +msgctxt "Satellite configuration mode" +msgid "Mode" +msgstr "Type" + +# +#, fuzzy +msgctxt "Video output mode" +msgid "Mode" +msgstr "Type" + +# +msgid "Model: " +msgstr "Model:" + +# +msgid "Modulation" +msgstr "Modulation" + +# +msgid "Modulator" +msgstr "Modulator" + +# +msgid "Mon" +msgstr "Man" + +# +msgid "Mon-Fri" +msgstr "Man-Fre" + +# +msgid "Monday" +msgstr "Mandag" + +# +msgid "Mosquito noise reduction" +msgstr "Mosquito støjreduktion" + +msgid "Mount" +msgstr "Monter" + +msgid "Move" +msgstr "Flyt" + +# +#, fuzzy +msgid "Move PiP to main picture" +msgstr "Flytte Billede i Billede til hoved billede" + +# +msgid "Move Picture in Picture" +msgstr "Flytte Billed i Billed" + +# +msgid "Move east" +msgstr "Drej mod øst" + +msgid "Move to other directory" +msgstr "Flyt til anden mappe" + +msgid "Move to position X" +msgstr "Flyt til position X" + +# +msgid "Move west" +msgstr "Drej mod vest" + +msgid "Moved to position 0" +msgstr "Flyttet til position 0" + +msgid "Moved to position at index" +msgstr "Flyttet til position indeks" + +msgid "Movement" +msgstr "Flytter" + +msgid "Movie List Configuration" +msgstr "" + +msgid "Movie Selection" +msgstr "" + +#, fuzzy +msgid "Movie list configuration" +msgstr "Configurer filmliste" + +# +msgid "Movie location" +msgstr "Placering af film" + +#, fuzzy +msgid "Movie selection" +msgstr "Filmvalg" + +msgid "Movie/Drama" +msgstr "" + +# +msgid "Movielist menu" +msgstr "Filmliste menu" + +msgid "Moving" +msgstr "Flytter" + +msgid "Moving east ..." +msgstr "Flytter øst" + +msgid "Moving to position" +msgstr "Flytter til position" + +msgid "Moving west ..." +msgstr "Flytter vest" + +# +msgid "Multi EPG" +msgstr "Multi EPG" + +msgid "Multi-EPG bouquet selection" +msgstr "Multi-EPG bouquet valg" + +# +msgid "Multimedia" +msgstr "Multimedia" + +# +msgid "Multiple service support" +msgstr "Multi kanal support" + +msgid "Multiplex" +msgstr "" + +# +msgid "Multisat" +msgstr "Mange satellitter" + +msgid "Multisat all select" +msgstr "" + +msgid "Music/Ballet/Dance" +msgstr "" + +# +msgid "Mute" +msgstr "Lyd fra" + +# +msgid "N/A" +msgstr "Ikke tilgængelig" + +# +msgid "NEXT" +msgstr "NÆSTE" + +# +#, fuzzy +msgid "NFI image flashing" +msgstr "Flash af NFI image" + +# +msgid "NFI image flashing completed. Press Yellow to Reboot!" +msgstr "NFI image flash gennemført. Tryk gul knap for at genstarte!" + +msgid "NIM" +msgstr "" + +# +msgid "NOW" +msgstr "NU" + +# +msgid "NTSC" +msgstr "NTSC" + +# +msgid "Name" +msgstr "Navn" + +# +msgid "Nameserver" +msgstr "Navneserver" + +# +#, python-format +msgid "Nameserver %d" +msgstr "Navneserver %d" + +# +msgid "Nameserver settings" +msgstr "Navneserver indstillinger" + +# +#, fuzzy +msgid "Nameserver setup" +msgstr "Navneserver opsætning" + +msgid "Namespace" +msgstr "" + +# +msgid "Netmask" +msgstr "Netmaske" + +# +msgid "Network" +msgstr "Netværk" + +msgid "Network ID" +msgstr "NetværksID" + +# +#, fuzzy +msgid "Network configuration..." +msgstr "Netværks opsætning..." + +# +#, fuzzy +msgid "Network mount" +msgstr "Netværks indstilling" + +# +#, fuzzy, python-format +msgid "Network mount %s" +msgstr "Netværks indstilling" + +#, fuzzy +msgid "Network name (SSID)" +msgstr "Netværksnavn (SSID)" + +# +msgid "Network scan" +msgstr "Netværks søgning" + +# +msgid "Network setup" +msgstr "Netværks opsætning" + +# +msgid "Network test" +msgstr "Netværks test" + +# +msgid "Network test..." +msgstr "Netværks test..." + +msgid "Network test: " +msgstr "Netværkstes:" + +# +#, fuzzy +msgid "Network wizard" +msgstr "Netværk opsætningshjælper" + +# +msgid "Network:" +msgstr "Netværk:" + +# +msgid "New" +msgstr "Ny" + +msgid "New PIN" +msgstr "Ny Kode" + +# +msgid "New version:" +msgstr "Ny Version:" + +msgid "News Current Affairs" +msgstr "" + +msgctxt "button label, 'next screen'" +msgid "Next" +msgstr "" + +msgctxt "now/next: 'next' event label" +msgid "Next" +msgstr "" + +# +msgid "No" +msgstr "Nej" + +# +msgid "No (supported) DVDROM found!" +msgstr "Ingen (understøttet) DVDROM fundet!" + +# +msgid "No Connection" +msgstr "Ingen forbindelse" + +# +msgid "No HDD found or HDD not initialized!" +msgstr "" +"Ingen HDD fundet eller\n" +"HDD ikke initialiseret!." + +# +msgid "No backup needed" +msgstr "Ingen backup nødvendig" + +msgid "No cable tuner found!" +msgstr "Ingen kabeltuner fundet" + +# +msgid "" +"No data on transponder!\n" +"(Timeout reading PAT)" +msgstr "" +"Ingen data på transponder!\n" +"(Timeout læsning i PAT)" + +#, fuzzy +msgid "No delay" +msgstr "Ingen forsinkelse" + +# +msgid "No description available." +msgstr "Ingen tilgængelig beskrivelse." + +# +msgid "No details for this image file" +msgstr "Ingen detaljer for denne image fil" + +# +msgid "No displayable files on this medium found!" +msgstr "Der findes ingen visbare filer på dette medie!" + +# +msgid "No event info found, recording indefinitely." +msgstr "Ingen program-data fundet, optagelse startet." + +# +msgid "No fast winding possible yet.. but you can use the number buttons to skip forward/backward!" +msgstr "Endnu ingen hurtigspoling.. men du kan benytte tal-knapperne til at springe frem/tilbage! " + +msgid "No free index available" +msgstr "" + +# +msgid "No free tuner!" +msgstr "Ingen fri tuner!" + +# +msgid "No network connection available." +msgstr "Ingen tilgængelig netværksforbindelse." + +# +msgid "No networks found" +msgstr "Ingen fundne netværk" + +msgid "No new plugins found" +msgstr "" + +# +msgid "No positioner capable frontend found." +msgstr "Ingen brugbar motor frontend fundet." + +msgid "No satellites configured. Plese check your tuner setup." +msgstr "" + +msgid "No service" +msgstr "" + +# +#, fuzzy +msgid "No services/providers selected" +msgstr "ingen kanaler/udbydere er valgt" + +# +#, fuzzy +msgid "No standby" +msgstr "ingen standby" + +msgid "No suitable sat tuner found!" +msgstr "" + +# +msgid "No tags are set on these movies." +msgstr "Ingen tags er sat på disse film" + +# +#, fuzzy +msgid "No timeout" +msgstr "ingen timeout" + +# +msgid "No to all" +msgstr "Nej til alle" + +#, fuzzy +msgid "No transparency" +msgstr "ingen gennemsigtighed" + +# +msgid "No tuner is configured for use with a diseqc positioner!" +msgstr "Ingen Tuner er konfigureret til brug af diseqc Motor!" + +# +msgid "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Ingen Tuner er aktiveret!\n" +"Venligst udfør Tuner indstilling før du starter en kanal søgning." + +#, fuzzy +msgid "No updates available" +msgstr " opdateringer tilgængelige_Ikke for Ferrari." + +msgid "No updates available. Please try again later." +msgstr "" + +# +msgid "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" +msgstr "" +"Ingen gyldig kanal PIN kode fundet!\n" +"Vil du skifte kanal PIN kode nu?\n" +"Siger du 'Nej' her vil kanal beskyttelsen ikke være tilsluttet!" + +# +msgid "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" +msgstr "" +"Ingen gyldig PIN kode opsætning fundet!\n" +"Vil du gerne ændre PIN kode opsætning nu?\n" +"Siger du 'Nej' her vil opsætnings beskyttelsen ikke være tilsluttet!" + +msgid "No wireless networks found! Searching..." +msgstr "Intet trådløst netværk fundet! Søger..." + +# +msgid "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." +msgstr "" +"Der kunne ikke findes en fungerende netværksadapter.\n" +"Undersøg venligst, at du har tilsluttet kabler og at dit netværk er korrekt opsat." + +# +msgid "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." +msgstr "" +"Der kunne ikke findes en fungerende trådløs netværksadapter.\n" +"Undersøg venligst, at du har tilsluttet en kompatibel WLAN enhed og at netværket er korrekt opsat." + +# +msgid "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." +msgstr "" +"Der kunne ikke findes et trådløs netværks interface.\n" +"Undersøg venligst, at du har tilsluttet en kompatibel WLAN enhed eller aktiver dit lokale netværks interface." + +# +msgid "No, but restart from begin" +msgstr "Nej, men genstart fra begyndelse" + +# +msgid "No, do nothing." +msgstr "Nej, gør intet." + +msgid "No, just start my receiver" +msgstr "" + +msgid "No, never" +msgstr "Nej, aldrig" + +# +msgid "None" +msgstr "Ingen" + +# +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right) +msgid "Nonlinear" +msgstr "Fuldt billede, venstre/højre" + +msgid "Normal mode" +msgstr "" + +# +msgid "North" +msgstr "Nord" + +# +msgid "Norwegian" +msgstr "Norsk" + +#, fuzzy +msgid "Not associated" +msgstr "Ikke aktiveret" + +msgid "Not configured" +msgstr "" + +# +#, fuzzy, python-format +msgid "Not enough disk space. Please free up some disk space and try again. (%d MB required, %d MB available)" +msgstr "Ikke diskplads nok. Venligst skab mere plads på disken og prøv igen. (%d MB nødvendig, %d MB ledig)" + +msgid "Nothing connected" +msgstr "" + +# +msgid "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Intet at søge!\n" +"Venligst opsæt Tuner indstilling op før du starter søgning." + +msgctxt "now/next: 'now' event label" +msgid "Now" +msgstr "" + +# +#, fuzzy +msgid "Now playing" +msgstr "Nu Afspilles" + +# +msgid "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." +msgstr "Nu, kan du bruge Kontrast indstilling og skrue op for Lystyrken på baggrunden, så meget som muligt, men vær sikker på, at du stadig kan se forskel mellem de 2 lyseste skygger. Hvis du har gjort det, tryk OK." + +# +msgid "OK" +msgstr "OK" + +# +msgid "OK, guide me through the upgrade process" +msgstr "OK, hjælp mig igennem opdateringsprocessen" + +msgid "ONID" +msgstr "" + +msgid "OSD name request" +msgstr "OSD navn forespørgsel" + +# +#, fuzzy +msgid "OSD settings" +msgstr "OSD indstilling" + +#, fuzzy +msgid "OSD transparency" +msgstr "ingen gennemsigtighed" + +# +msgid "Off" +msgstr "Fra" + +msgid "Offline decode delay (ms)" +msgstr "" + +msgid "Ok" +msgstr "" + +# +msgid "On" +msgstr "Til" + +msgid "On end of movie" +msgstr "" + +msgid "On end of movie (as menu)" +msgstr "" + +# +msgid "One" +msgstr "En" + +# +msgid "Only extensions." +msgstr "Kun udvidelser." + +# +#, fuzzy +msgid "Only free scan" +msgstr "Søg kun ukodet" + +# +#, fuzzy +msgid "Open service list" +msgstr "åbne kanalliste" + +# +#, fuzzy +msgid "Open the movie list" +msgstr "Tilbage til filmliste" + +msgid "Orbital position" +msgstr "" + +msgid "Original" +msgstr "" + +msgid "Other" +msgstr "Anden" + +msgid "Output" +msgstr "" + +msgid "Overwrite configuration files during software upgrade?" +msgstr "Overskriv konfigurationsfilerne under softwareopdateringen?" + +#, fuzzy +msgid "Overwrite configuration files?" +msgstr "Overskriv konfiguration" + +# +msgid "PAL" +msgstr "PAL" + +msgid "PCR PID" +msgstr "" + +# +msgid "PIDs" +msgstr "PIDs" + +# +#, fuzzy +msgid "PIN code needed" +msgstr "Pin kode nødvendig" + +msgid "PLP ID" +msgstr "" + +msgid "PMT PID" +msgstr "" + +# +msgid "Package list update" +msgstr "Pakke liste opdatering" + +# +msgid "Packet management" +msgstr "Pakke kontrol" + +# +msgid "Packet manager" +msgstr "Pakkestyring" + +# +#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term +#, fuzzy +msgid "Pan&scan" +msgstr "Sorte striber lodret samt top og bund" + +# +#, fuzzy +msgid "Parent directory" +msgstr "Aktuel mappe" + +# +msgid "Parental control" +msgstr "Forældre Kontrol" + +# +#, fuzzy +msgid "Parental control services editor" +msgstr "Forældrekontrol kanalredigering" + +# +msgid "Parental control setup" +msgstr "Forældrekontrol opsætning" + +# +msgid "Parental control type" +msgstr "Forældrekontrol type" + +# +msgid "Password" +msgstr "Kodeord" + +# +#, fuzzy +msgid "Pause" +msgstr "pause" + +# +msgid "Pause movie at end" +msgstr "Pause ved filmslutning" + +# +#, fuzzy +msgid "Pause playback" +msgstr "Genoptag afspilning" + +msgid "Pauze/Continue playback" +msgstr "" + +msgid "Percentage left" +msgstr "" + +# +#, fuzzy +msgid "Percentage right" +msgstr "Højre-cirkulær" + +msgid "Permanently delete all recordings in the trash can?" +msgstr "Slet alle optagelser i papirkurven permanent?" + +msgid "Permanently remove all deleted items" +msgstr "Fjerne alle slettede filer permanent" + +msgid "Persian" +msgstr "" + +# +msgid "Phone number" +msgstr "Telefonnummer" + +# +#, fuzzy +msgid "PiP setup" +msgstr "BiB opsætning" + +msgid "Picon" +msgstr "" + +msgid "Picon and service name" +msgstr "" + +# +#, fuzzy +msgid "Picture player" +msgstr "Billed afspiller" + +# +#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term. +msgid "Pillarbox" +msgstr "Sort stribe i top og bund af billede" + +# +msgid "Pilot" +msgstr "Pilot" + +# +msgid "Play" +msgstr "Afspil" + +# +msgid "Play DVD" +msgstr "Afspil DVD" + +msgid "Play audio in background" +msgstr "Afspil lyd i baggrunden" + +# +#, fuzzy +msgid "Play audio-CD..." +msgstr "Afspil Lyd-CD" + +msgid "Play back media files" +msgstr "" + +# +#, fuzzy +msgid "Play entry" +msgstr "afspil denne" + +# +#, fuzzy +msgid "Play from next mark or playlist entry" +msgstr "afspil fra næste mærke eller spilleliste indgang" + +# +#, fuzzy +msgid "Play from previous mark or playlist entry" +msgstr "afspil fra forrige mærke eller spilleliste indgang" + +# +#, fuzzy +msgid "Play music..." +msgstr "Afspil musik..." + +msgid "Play next" +msgstr "Afspil næste" + +msgid "Play next (return to movie list)" +msgstr "" + +msgid "Play next (return to previous service)" +msgstr "" + +msgid "Play previous" +msgstr "Afspil forrige" + +# +msgid "Play recorded movies..." +msgstr "Afspil optagede film..." + +# +msgid "Please add titles to the compilation." +msgstr "Tilføj titler til kompileringen" + +# +msgid "Please change recording endtime" +msgstr "Venligst skift optagelses sluttid" + +# +msgid "Please check your network settings!" +msgstr "Tjek venligst din netværks opsætning!" + +# +msgid "Please choose an extension..." +msgstr "Vælg venligst en udvidelse..." + +# +msgid "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Opsæt venligst eller bekræft dine navneservere ved at udfylde de ønskede værdier.\n" +"Tryk på OK når du er færdig, for at fortsætte." + +# +msgid "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Opsæt venligst din internetforbindelse ved at udfylde de ønskede værdier.\n" +"Tryk på OK når du er færdig, for at fortsætte." + +msgid "Please connect your receiver to the internet" +msgstr "" + +# +msgid "Please do not change any values unless you know what you are doing!" +msgstr "Venligst ikke ændre værdier hvis du ikke ved hvad du gør!" + +# +msgid "Please enter a name for the new bouquet" +msgstr "Indtast venligst navn for ny pakke" + +# +msgid "Please enter a name for the new marker" +msgstr "Indtast venligst navn for ny markør" + +# +msgid "Please enter a new filename" +msgstr "Indtast venligst nyt filnavn" + +# +msgid "Please enter filename (empty = use current date)" +msgstr "Skriv venligst filnavn (tom = brug nuværende dato)" + +# +msgid "Please enter name of the new directory" +msgstr "Indtast venligst navn på den ny mappe" + +msgid "Please enter new name:" +msgstr "" + +# +msgid "Please enter the correct pin code" +msgstr "Indtast venligst korrekt pin kode" + +msgid "Please enter the old PIN code" +msgstr "Indtast den gamle pin kode" + +# +msgid "Please follow the instructions on the TV" +msgstr "Følg venligst instruktionerne på dit TV" + +# +msgid "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." +msgstr "Bemærk venligst at det tidligere valgte medie ikke kunne tilgås og derfor benyttes standard mappen i stedet for." + +# +msgid "Please press OK to continue." +msgstr "Tryk venligst på OK for at fortsætte." + +msgid "Please select a default EPG type..." +msgstr "" + +# +msgid "Please select a playlist to delete..." +msgstr "Vælg venligst en spilleliste til sletning..." + +# +msgid "Please select a playlist..." +msgstr "Vælg venligst en spilleliste..." + +# +#, fuzzy +msgid "Please select a sub service..." +msgstr "Vælg venligst en underkanal..." + +# +msgid "Please select a subservice to record..." +msgstr "Vælg en underkanal til at optagelse..." + +# +msgid "Please select a subservice..." +msgstr "Vælg venligst en underkanal..." + +msgid "Please select an NFI file and press green key to flash!" +msgstr "" + +# +#, fuzzy +msgid "Please select medium to be scanned" +msgstr "Venligst vælg media som skal skannes" + +# +msgid "Please select medium to use as backup location" +msgstr "Vælg venligst medie der skal benyttes som backup placering" + +# +msgid "Please select tag to filter..." +msgstr "Vælg venligst tag til filtrering..." + +# +msgid "Please select the movie path..." +msgstr "Venligst vælg en film sti..." + +# +msgid "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Vælg venligst det netværk interface, som du vil benytte til din internet forbindelse.\n" +"\n" +"Tryk venligst på OK for at fortsætte." + +# +msgid "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Vælg venligst det trådløse netværk, som du vil oprette forbindelse til.\n" +"\n" +"Tryk venligst på OK for at fortsætte." + +# +#, fuzzy +msgid "Please set up tuner A" +msgstr "Venligst indstil tuner B" + +# +msgid "Please set up tuner B" +msgstr "Venligst indstil tuner B" + +# +msgid "Please set up tuner C" +msgstr "Venligst indstil tuner C" + +# +msgid "Please set up tuner D" +msgstr "Venligst indstil tuner D" + +# +msgid "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." +msgstr "" +"Venligst brug pile knapper for at flytte PiP vindue.\n" +"Tryk Bouquet +/- for at ændre vinduestørrelse.\n" +"Tryk OK for at gå tilbage til TV eller EXIT for ikke at udføre flytning." + +# +msgid "Please use the UP and DOWN keys to select your language. Afterwards press the OK button." +msgstr "Benyt venligst OP og NED tasten til at vælge sprog. Tryk bagefter på OK knappen." + +msgid "Please wait" +msgstr "" + +# +#, fuzzy +msgid "Please wait (downloading channel list)" +msgstr "Vent venligst... Henter liste..." + +# +#, fuzzy +msgid "Please wait (downloading softcam)" +msgstr "Vent venligst... Henter liste..." + +# +#, fuzzy +msgid "Please wait (updating packages)" +msgstr "vent venligst, henter billede..." + +# +msgid "Please wait for activation of your network configuration..." +msgstr "Vent venligt på aktivering af din netværks opsætning..." + +# +msgid "Please wait while scanning is in progress..." +msgstr "Vent venligst mens skanningsprocessen er i gang...." + +# +msgid "Please wait while we configure your network..." +msgstr "Vent venligst, mens vi opsætter dit netværk..." + +# +msgid "Please wait while we prepare your network interfaces..." +msgstr "Vent venligst mens vi klargører dine netværk interfaces..." + +# +msgid "Please wait while we test your network..." +msgstr "Vent venligst mens vi tester dit netværk..." + +# +msgid "Please wait while your network is restarting..." +msgstr "Vent venligst, mens dit netværk genstartes..." + +# +msgid "Please wait..." +msgstr "Vent venligst..." + +# +msgid "Please wait... Loading list..." +msgstr "Vent venligst... Henter liste..." + +# +msgid "Plugin browser" +msgstr "Plugin menu" + +# +msgid "Plugin manager activity information" +msgstr "Aktivitetsinformation for plugin styring" + +# +msgid "Plugin manager help" +msgstr "Hjælp til plugin styring" + +# +msgid "Plugins" +msgstr "Plugins" + +msgid "Polarisation" +msgstr "" + +msgid "Polarisation:" +msgstr "" + +# +msgid "Polarization" +msgstr "Polarisation" + +# +msgid "Polish" +msgstr "Polsk" + +# +msgid "Port A" +msgstr "Port A" + +# +msgid "Port B" +msgstr "Port B" + +# +msgid "Port C" +msgstr "Port C" + +# +msgid "Port D" +msgstr "Port D" + +# +msgid "Portuguese" +msgstr "Portugisisk" + +#, fuzzy +msgid "Position of completed timers in timerlist" +msgstr "Position af afsluttede timere i timerlisten" + +msgid "Position stored at index" +msgstr "Position gemt ved Index" + +# +msgid "Positioner" +msgstr "Motor" + +msgid "Positioner (selecting satellites)" +msgstr "" + +msgid "Positioner Setup" +msgstr "" + +# +msgid "Positioner setup" +msgstr "Motor Opsætning" + +# +msgid "Power threshold in mA" +msgstr "Strøm forbrug i mA" + +# +msgid "Predefined transponder" +msgstr "Predefineret transponder" + +#, fuzzy +msgid "Prefer AC3 track" +msgstr "Foretræk AC3" + +msgid "Prefer AC3+ track" +msgstr "" + +#, fuzzy +msgid "Prefer audio track stored by service" +msgstr "Foretræk lydspor gemt af kanal" + +#, fuzzy +msgid "Prefer graphical DVB subtitles" +msgstr "Foretræk DVB grafiske undertekster" + +#, fuzzy +msgid "Prefer subtitles for hearing impaired" +msgstr "Foretræk undertekster for hørehæmmede" + +#, fuzzy +msgid "Prefer subtitles stored by service" +msgstr "Foretræk undertekster gemt af kanal" + +msgid "Preferred tuner" +msgstr "Foretrukken tuner" + +msgid "Preferred tuner for recordings" +msgstr "" + +msgid "Prepare another USB stick for image flashing" +msgstr "Forbered en anden USB nøgle for Image installation" + +# +msgid "Preparing... Please wait" +msgstr "Forbereder... Vent venligst" + +msgid "Press '0' to toggle PiP mode" +msgstr "" + +msgid "Press INFO on your remote control for additional information." +msgstr "Tryk Info for yderligere information" + +msgid "Press MENU on your remote control for additional options." +msgstr "Tryk Menu for yderligere indstillinger" + +# +msgid "Press OK on your remote control to continue." +msgstr "Tryk OK på din fjernbetjening for at fortsætte." + +# +msgid "Press OK to activate the selected skin." +msgstr "Tryk OK for at aktivere det valgte grafiske tema." + +# +msgid "Press OK to activate the settings." +msgstr "Tryk OK for at aktivere indstillinger." + +# +msgid "Press OK to edit the settings." +msgstr "Tryk på OK for at redigere indstillinger." + +# +#, python-format +msgid "Press OK to get further details for %s" +msgstr "Tryk på OK for at se yderligere detaljer for %s" + +# +msgid "Press OK to scan" +msgstr "Tryk OK for at søge" + +# +#, fuzzy +msgid "Press OK to select a provider." +msgstr "Tryk på OK for at vælge en udbyder." + +msgid "Press OK to select satellites" +msgstr "" + +# +msgid "Press OK to select/deselect a CAId." +msgstr "Tryk på OK for at vælge/fravælge en CAId." + +# +msgid "Press OK to start the scan" +msgstr "Tryk OK for at starte søgningen" + +msgid "Press OK to toggle the selection" +msgstr "" + +# +msgid "Press OK to toggle the selection." +msgstr "Tryk på OK for at slå valget til eller fra." + +# +msgid "Press yellow to set this interface as default interface." +msgstr "Tryk på gul for at vælge dette interface som standard interface." + +msgctxt "button label, 'previous screen'" +msgid "Prev" +msgstr "" + +# +msgid "Preview" +msgstr "" + +# +msgid "Preview menu" +msgstr "Fremvisnnigsmenu" + +msgid "Preview selected channel" +msgstr "" + +# +msgid "Primary DNS" +msgstr "Primær DNS" + +# +msgid "Priority" +msgstr "Prioritet" + +# +msgid "Process" +msgstr "Bearbejdning" + +msgid "Progress" +msgstr "Fremskridt" + +#, fuzzy +msgid "Progress bar left" +msgstr "Fremskridt lille" + +#, fuzzy +msgid "Progress bar right" +msgstr "Fremskridt lille" + +# +msgid "Properties of current title" +msgstr "Egenskaber for den aktuelle titel" + +# +msgid "Protect services" +msgstr "Beskytte kanaler?" + +# +msgid "Protect setup" +msgstr "Beskytte opsætning?" + +# +msgid "Provider" +msgstr "Udbyder" + +# +msgid "Provider to scan" +msgstr "Udbyder til søgning" + +# +msgid "Providers" +msgstr "Udbydere" + +msgid "Put TV in standby" +msgstr "Sæt TV i standby" + +msgid "Put receiver in standby" +msgstr "Sæt Reciever i standby" + +# +msgid "Python frontend for /tmp/mmi.socket" +msgstr "Python frontend til /tmp/mmi.socket" + +# +msgid "Quick" +msgstr "Kvik" + +# +#, fuzzy +msgid "Quick zap" +msgstr "Hurtigskift" + +# +msgid "RF output" +msgstr "RF Udgang" + +# +msgid "RGB" +msgstr "RGB" + +# +msgid "Radio" +msgstr "Radio" + +# +#, fuzzy +msgid "Ram disk" +msgstr "Ram disk" + +# +msgid "Random" +msgstr "Tilfældig" + +#, python-format +msgid "Rating defined by broadcaster - %d" +msgstr "" + +msgid "Rating undefined" +msgstr "" + +# +msgid "Really close without saving settings?" +msgstr "Vil du virkelig lukke uden at gemme indstillinger?" + +# +msgid "Really delete done timers?" +msgstr "Slette udførte timere?" + +# +msgid "Really exit the subservices quickzap?" +msgstr "Vil du afslutte underkanals hurtigskift?" + +# +msgid "Really reboot now?" +msgstr "Virkelig reboote nu?" + +# +msgid "Really restart now?" +msgstr "Virkelig genstarte nu?" + +# +msgid "Really shutdown now?" +msgstr "Virkelig slukke nu?" + +msgid "Really upgrade the frontprocessor and reboot now?" +msgstr "Opdater frontprocessor og genstart nu?" + +msgid "Really upgrade your settop box and reboot now?" +msgstr "Opdater boksen og genstart nu?" + +# +msgid "Reboot" +msgstr "Genstart" + +msgid "Rec" +msgstr "Optag" + +# +#, fuzzy +msgid "Reception settings" +msgstr "Modtage Indstillinger" + +# +msgid "Record" +msgstr "Optage" + +# +#, python-format +msgid "Record time limited due to conflicting timer %s" +msgstr "Optagelsestid begrænset på grund af konfliktende timer %s" + +# +msgid "Recorded files..." +msgstr "Optagede filer..." + +# +msgid "Recording" +msgstr "Optager" + +msgid "Recording in progress" +msgstr "Igangværende optagelse" + +# +msgid "Recording paths" +msgstr "Sti til optagelse" + +msgid "Recording type" +msgstr "Optagelsestype" + +# +msgid "Recording(s) are in progress or coming up in few seconds!" +msgstr "Optagelse(r) igang eller starter om få sekunder!" + +# +msgid "Recordings" +msgstr "Optaggelser" + +# +msgid "Recordings always have priority" +msgstr "Optagelser har altid prioritet" + +msgid "Red button..." +msgstr "Rød knap" + +msgid "Reenter new PIN" +msgstr "Skriv PIN igen" + +# +#, fuzzy +msgid "Refresh rate" +msgstr "Opdateringsrate" + +# +msgid "Refresh rate selection." +msgstr "Opdateringsrate vælger." + +msgid "Regard deep standby as standby" +msgstr "Opfat dyb standby som standby" + +#, fuzzy +msgid "Relative" +msgstr "relativ" + +# +msgid "Reload" +msgstr "Genindlæs" + +# +#, fuzzy +msgid "Reload black-/white lists" +msgstr "Genindlæs sort/hvid lister" + +msgid "Reloading bouquets and services..." +msgstr "Genindlæser pakker og kanaler..." + +msgid "Remember last service in PiP" +msgstr "" + +msgid "Remember service PIN" +msgstr "Husk kanal PIN" + +msgid "Remember these settings for each folder" +msgstr "Husk indstiller for alle mapper" + +msgid "Reminder, you have chosen to save timeshift file." +msgstr "" + +# +#, fuzzy +msgid "Remote control type" +msgstr "Forældrekontrol type" + +# +#, fuzzy +msgid "Removal has completed." +msgstr "Fjernelse mislykkedes." + +# +msgid "Remove" +msgstr "Fjern" + +# +msgid "Remove a mark" +msgstr "Fjerne et mærke" + +# +#, fuzzy +msgid "Remove a nameserver entry" +msgstr "fjern en navneserver angivelse" + +# +#, fuzzy +msgid "Remove bookmark" +msgstr "fjern bogmærke" + +#, fuzzy +msgid "Remove completed timers after (days)" +msgstr "Tøm papirkurven efter (dage)" + +# +msgid "Remove currently selected title" +msgstr "Fjerne nuværende valgte titel" + +#, fuzzy +msgid "Remove items from trash can after (days)" +msgstr "Tøm papirkurven efter (dage)" + +# +msgid "Remove plugins" +msgstr "Fjerne plugins" + +# +msgid "Remove title" +msgstr "Fjerne titel" + +# +msgid "Removing" +msgstr "Sletter" + +# +#, python-format +msgid "Removing directory %s failed. (Maybe not empty.)" +msgstr "Fjernelsen af mappen %s mislykkedes. (Måske ikke tom.)" + +#, fuzzy +msgid "Removing partition table" +msgstr "Genlæs partiionstabel" + +# +msgid "Rename" +msgstr "Omdøb" + +msgid "Repeat" +msgstr "" + +# +#, fuzzy +msgid "Repeat type" +msgstr "Gentage type" + +# +msgid "Repeating event currently recording... What do you want to do?" +msgstr "Gentage program optagelse som er igang... Hvad vil du foretage dig?" + +# +msgid "Repeats" +msgstr "Gentagelser" + +msgid "Require authentication for http streams" +msgstr "" + +# +msgid "Required medium type:" +msgstr "Nødvenig medietype" + +#, fuzzy +msgid "Rereading partition table" +msgstr "Genlæs partiionstabel" + +msgid "Reserved" +msgstr "" + +# +msgid "Reset" +msgstr "Genstart" + +# +msgid "Reset and renumerate title names" +msgstr "Nulstiller og genoptæller titel navne" + +msgid "Reset playback position" +msgstr "Nulstil afspilningsposition" + +# +msgid "Reset video enhancement settings to system defaults?" +msgstr "Gendan indstilling af videoforbedring til systemets standard?" + +# +msgid "Reset video enhancement settings to your last configuration?" +msgstr "Gendan indstilling af videoforbedring til din seneste opsætning?" + +# +msgid "Resolution" +msgstr "Opløsning" + +# +msgid "Restart" +msgstr "Genstarte" + +# +msgid "Restart GUI now?" +msgstr "Genstarte GUI nu?" + +msgid "Restart enigma" +msgstr "Genstart Enigma2" + +# +msgid "Restart network" +msgstr "Genstart netværk" + +# +msgid "Restart test" +msgstr "Genstart Test" + +# +msgid "Restart your network connection and interfaces.\n" +msgstr "Genstart din netværk opkobling og interfaces.\n" + +# +msgid "Restore" +msgstr "Gendanne" + +# +msgid "Restore backups" +msgstr "Gendan backup" + +# +msgid "Restore is running..." +msgstr "Genopretning kører..." + +# +msgid "Restore system settings" +msgstr "Gendan system opsætning" + +# +#, fuzzy +msgid "Restoring..." +msgstr "optager..." + +# +msgid "Resume from last position" +msgstr "Genoptag fra sidste position" + +# +#, python-format +msgid "Resume position at %s" +msgstr "" + +# +#. TRANSLATORS: The string "Resuming playback" flashes for a moment +#. TRANSLATORS: at the start of a movie, when the user has selected +#. TRANSLATORS: "Resume from last position" as start behavior. +#. TRANSLATORS: The purpose is to notify the user that the movie starts +#. TRANSLATORS: in the middle somewhere and not from the beginning. +#. TRANSLATORS: (Some translators seem to have interpreted it as a +#. TRANSLATORS: question or a choice, but it is a statement.) +msgid "Resuming playback" +msgstr "Genoptag afspilning" + +# +msgid "Return to movie list" +msgstr "Tilbage til filmliste" + +# +msgid "Return to previous service" +msgstr "Tilbage til forrige kanal" + +msgid "Reverse bouquet buttons" +msgstr "" + +msgid "Reverse list" +msgstr "" + +# +msgid "Rewind speeds" +msgstr "Tilbagespolings hastighed" + +msgid "Rewrap teletext subtitles" +msgstr "Genindlæs tekstv undertekser" + +# +msgid "Right" +msgstr "Højre" + +msgid "Right from servicename" +msgstr "" + +msgid "Roll-off" +msgstr "Rul-af" + +msgid "Romanian" +msgstr "" + +msgid "Root directory" +msgstr "root mappe" + +msgid "Rotor step position:" +msgstr "Motor step postion" + +# +msgid "Rotor turning speed" +msgstr "Motor dreje hastighed" + +msgid "Round start time on" +msgstr "start tid på" + +# +msgid "Russian" +msgstr "Russisk" + +# +msgid "S-Video" +msgstr "S-Video" + +msgid "SID" +msgstr "" + +# +msgid "SINGLE LAYER DVD" +msgstr "DVD-R" + +# +msgid "SNR" +msgstr "SNR" + +# +msgid "SNR:" +msgstr "SNR:" + +# +msgid "SSID:" +msgstr "SSID:" + +msgid "Same resolution as skin" +msgstr "" + +# +msgid "Sat" +msgstr "Lør" + +# +msgid "Satellite" +msgstr "Satellit" + +# +#, fuzzy +msgid "Satellite dish setup" +msgstr "Sat udstyrs kontrol" + +# +msgid "Satellite equipment" +msgstr "Satellitudstyr" + +# +#, fuzzy +msgid "Satellite equipment setup" +msgstr "Sat udstyrs kontrol" + +msgid "Satellite longitude:" +msgstr "Satellit længegrade" + +# +msgid "Satellites" +msgstr "Satellitter" + +# +msgid "Satfinder" +msgstr "Sat Søger" + +# +msgid "Sats" +msgstr "Satellitter" + +# +msgid "Saturation" +msgstr "Farvemætning" + +# +msgid "Saturday" +msgstr "Lørdag" + +# +msgid "Save" +msgstr "Gem" + +# +#, fuzzy +msgid "Save playlist" +msgstr "gem spilleliste" + +msgid "Save timeshift file" +msgstr "" + +msgid "Save timeshift file in movie directory" +msgstr "" + +# +msgid "Scaler sharpness" +msgstr "Skaler skarphed" + +# +#, fuzzy +msgid "Scaling mode" +msgstr "Skalerings Type" + +msgid "Scan" +msgstr "" + +# +msgid "Scan " +msgstr "Søgning" + +# +#. TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' +#, fuzzy, python-format +msgid "Scan %s" +msgstr "Søgning" + +# +#. TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' +#, fuzzy, python-format +msgid "Scan %s band" +msgstr "Søge bånd EU MID" + +# +msgid "Scan additional SR" +msgstr "Søge yderligere SR" + +# +#, fuzzy +msgid "Scan files..." +msgstr "Skan filer..." + +# +#, fuzzy +msgid "Scan wireless networks" +msgstr "Søge trådløse netværk" + +msgid "Scan your network for wireless access points and connect to them using your selected wireless device.\n" +msgstr "" + +#, python-format +msgid "Scanning %s..." +msgstr "Scanner %s..." + +#. TRANSLATORS: The stb is performing a channel scan, progress percentage is printed in '%d' (and '%%' will show a single '%' symbol) +#, fuzzy, python-format +msgid "Scanning - %d%% completed" +msgid_plural "Scanning - %d%% completed" +msgstr[0] "Søgning færdig, %d kanaler fundet" +msgstr[1] "Søgning færdig, %d kanaler fundet" + +#, fuzzy, python-format +msgid "Scanning completed, %d channel found" +msgid_plural "Scanning completed, %d channels found" +msgstr[0] "Søgning færdig, %d kanaler fundet" +msgstr[1] "Søgning færdig, %d kanaler fundet" + +msgid "Scanning failed!" +msgstr "Søgning fejlet" + +msgid "Scanning..." +msgstr "Søger" + +# +msgid "Scans default lamedbs sorted by satellite with a connected dish positioner" +msgstr "Søge standard lamedbs sorteret efter satellit med tilsluttet Parabol Motor" + +# +msgid "Search east" +msgstr "Søg Øst" + +# +msgid "Search west" +msgstr "Søg Vest" + +msgid "Searching" +msgstr "Søger" + +msgid "Searching east ..." +msgstr "Søger øst" + +# +msgid "Searching for available updates. Please wait..." +msgstr "Søger efter tilgængelige opdateringer. Vent venligst..." + +# +msgid "Searching for new installed or removed packages. Please wait..." +msgstr "Søger efter nyinstallerede eller fjernede pakker. Vent venligst..." + +msgid "Searching west ..." +msgstr "Søger vest" + +msgid "Second cable of motorized LNB" +msgstr "" + +# +msgid "Secondary DNS" +msgstr "Sekundær DNS" + +# +msgid "Seek" +msgstr "Søg" + +# +#, fuzzy +msgid "Seek backward" +msgstr "drop tilbage" + +# +#, fuzzy +msgid "Seek backward (enter time)" +msgstr "skip bagud (skriv tiden)" + +# +#, fuzzy +msgid "Seek forward" +msgstr "drop fremad" + +# +#, fuzzy +msgid "Seek forward (enter time)" +msgstr "skip fremad (skriv tiden)" + +# +msgid "Select" +msgstr "Vælg" + +# +#, fuzzy +msgid "Select CAId" +msgstr "vælg CAId" + +# +msgid "Select HDD" +msgstr "Vælg Filsystem" + +# +#, fuzzy +msgid "Select a bouquet" +msgstr "Vælg en film" + +# +msgid "Select a movie" +msgstr "Vælg en film" + +# +#, fuzzy +msgid "Select a network adapter" +msgstr "Vælg Netværks Adapter" + +# +#, fuzzy +msgid "Select a skin" +msgstr "Vælg en film" + +# +#, fuzzy +msgid "Select a tuner" +msgstr "Vælg en film" + +# +#, fuzzy +msgid "Select a wireless network" +msgstr "Vælg trådløst netværk" + +msgid "Select action" +msgstr "" + +#, python-format +msgid "Select action for timer %s:" +msgstr "" + +msgid "Select all" +msgstr "" + +#, fuzzy +msgid "Select an image to be downloaded" +msgstr "Vælg image at downloade" + +# +msgid "Select audio track" +msgstr "Vælg lyd spor" + +# +#, fuzzy +msgid "Select backup files" +msgstr "Vælg backup filer" + +# +#, fuzzy +msgid "Select backup location" +msgstr "Vælg backup placering" + +# +msgid "Select channel to record from" +msgstr "Vælg optagekanal" + +msgid "Select copy destination for:" +msgstr "Vælg kopi destination for" + +msgid "Select default EPG type..." +msgstr "" + +msgid "Select desired image from feed list" +msgstr "Vælg ønsket imgage fra listen" + +msgid "Select destination for:" +msgstr "Vælg destination for" + +msgid "Select files for backup." +msgstr "Vælg filer til backup" + +# +msgid "Select files/folders to backup" +msgstr "Vælg filer/mapper til backup" + +msgid "Select input device" +msgstr "Vælg enhed" + +msgid "Select input device." +msgstr "Vælg enhed." + +# +msgid "Select interface" +msgstr "Vælg interface" + +# +#, fuzzy +msgid "Select location" +msgstr "Vælg placering" + +# +#, fuzzy +msgid "Select movie" +msgstr "Vælg en film" + +# +msgid "Select provider to add..." +msgstr "Vælg udbyder, der skal tilføjes..." + +# +msgid "Select refresh rate" +msgstr "Vælg opdaterings rate" + +msgid "Select satellites" +msgstr "" + +# +msgid "Select service to add..." +msgstr "Vælg kanal der skal tilføjes..." + +msgid "Select sort method:" +msgstr "" + +# +#, fuzzy +msgid "Select target folder" +msgstr "Vælg folder du vil bruge" + +# +#, fuzzy +msgid "Select the movie path" +msgstr "vælg stien til film" + +# +#, fuzzy +msgid "Select upgrade source" +msgstr "Vælg opgraderingskilde til redigering." + +# +msgid "Select upgrade source to edit." +msgstr "Vælg opgraderingskilde til redigering." + +# +msgid "Select video input with up/down buttons" +msgstr "Vælg video input med op/ned knapperne" + +# +msgid "Select video mode" +msgstr "Vælg video type" + +# +msgid "Select wireless network" +msgstr "Vælg trådløst netværk" + +msgid "Select your provider, and press OK to start the scan" +msgstr "Vælg din udebyder, og tryk OK for at starte søgningen" + +msgid "Selecting satellites 1 (USALS)" +msgstr "" + +msgid "Selecting satellites 2 (USALS)" +msgstr "" + +# +msgid "Send DiSEqC only on satellite change" +msgstr "Sender DiSEqC kun ved satellite skifte" + +# +msgid "Separate titles with a main menu" +msgstr "Adskil titler med en hoved menu" + +# +msgid "Sequence repeat" +msgstr "Sekvens gentagelse" + +# +msgid "Serbian" +msgstr "Serbisk" + +# +msgid "Service" +msgstr "Kanal info" + +# +msgid "Service has been added to the favourites." +msgstr "Kanal er nu tilføjet favoritter." + +# +msgid "Service has been added to the selected bouquet." +msgstr "Kanal er tilføjet den valgte pakke." + +# +#, fuzzy +msgid "Service info" +msgstr "Kanalinfo" + +# +msgid "" +"Service invalid!\n" +"(Timeout reading PMT)" +msgstr "" +"Kanal fejl!\n" +"(Timeout læsning i PMT)" + +#, fuzzy +msgid "Service name" +msgstr "Enhedsnavn" + +# +msgid "" +"Service not found!\n" +"(SID not found in PAT)" +msgstr "" +"Kanal ikke fundet!\n" +"(SID ikke fundet i PAT)" + +msgid "Service reference" +msgstr "Kanal reference" + +# +msgid "Service scan" +msgstr "Kanal søgning" + +# +#, fuzzy +msgid "Service searching" +msgstr "Kanal søgning" + +# +#, fuzzy +msgid "Service title mode" +msgstr "Vælg video type" + +# +msgid "" +"Service unavailable!\n" +"Check tuner configuration!" +msgstr "" +"Kanal ikke fundet!\n" +"Kontroler tuner konfigurationen!" + +# +msgid "Services" +msgstr "Kanaler" + +msgid "Set default" +msgstr "" + +# +#, fuzzy +msgid "Set end time" +msgstr "Sæt slut tid" + +msgid "Set fixed" +msgstr "Sæt fast" + +msgid "Set fps for external subtitles" +msgstr "" + +# +msgid "Set interface as default Interface" +msgstr "Sætter interfacet om standard interface" + +#, fuzzy +msgid "Set limits" +msgstr "Sæt grænser" + +# +#, fuzzy +msgid "Set the type of the progress indication in the channel selection screen." +msgstr "Vis programafvikling i kanalvælger" + +msgid "Set time window to 1 hour" +msgstr "udsættelse 1 time" + +msgid "Set time window to 2 hours" +msgstr "udsættelse 2 timer" + +msgid "Set time window to 3 hours" +msgstr "udsættelse 3 timer" + +msgid "Set time window to 4 hours" +msgstr "udsættelse 4 timer" + +msgid "Set time window to 5 hours" +msgstr "udsættelse 5 timer" + +msgid "Set time window to 6 hours" +msgstr "" + +# +#, fuzzy +msgid "Set voltage and 22KHz" +msgstr "Sætter spænding og 22KHz" + +# +msgid "Settings" +msgstr "Indstillings menu" + +# +msgid "Setup" +msgstr "Indstillinger" + +msgid "Setup menu" +msgstr "Opsætningsmenu" + +# +#, fuzzy +msgid "Setup mode" +msgstr "Opsætnings type" + +msgid "Setup your positioner" +msgstr "Motor opsætning" + +# +#, fuzzy +msgid "Setup your satellite equipment" +msgstr "Satellitudstyr" + +# +#, python-format +msgid "Shall the USB stick wizard proceed and program the image file %s into flash memory?" +msgstr "Skal USB guiden fortsætte og installere %s i Flash?" + +# +msgid "Sharpness" +msgstr "Skarphed" + +msgid "Short filenames" +msgstr "Korte filnavne" + +msgid "Show EIT now/next in infobar" +msgstr "Vis EIT nu/næste i Infobar" + +# +#, fuzzy +msgid "Show EPG for current channel..." +msgstr "Vis infobjælke ved program skifte" + +# +#, fuzzy +msgid "Show EPG..." +msgstr "vis EPG..." + +msgid "Show Games show" +msgstr "" + +msgid "Show SNR percentage instead of dB value" +msgstr "" + +msgid "Show VCR scart on main menu" +msgstr "" + +# +#, fuzzy +msgid "Show WLAN status" +msgstr "Vis WLAN Status" + +msgid "Show animation while busy" +msgstr "Vis animation når optaget" + +#, fuzzy +msgid "Show background in radio mode" +msgstr "Vis baggrund i radio mode" + +msgid "Show bouquet selection menu" +msgstr "Vis kanalistevalg menu" + +msgid "Show busy indicator when the system is busy." +msgstr "" + +msgid "Show channel numbers in channel selection" +msgstr "Vis kanalnumre i kanalvælger" + +msgid "Show columns" +msgstr "" + +msgid "Show crypto icons" +msgstr "" + +msgid "Show crypto info in infobar" +msgstr "Vis krypteringsinfo i infobar" + +msgid "Show detailed event info" +msgstr "Vi detaljeret programinfo" + +# +#, fuzzy +msgid "Show event details" +msgstr "vis program detaljer" + +# +msgid "Show event-progress in channel selection" +msgstr "Vis programafvikling i kanalvælger" + +# +#, fuzzy +msgid "Show extended description" +msgstr "vis udvidet beskrivelse" + +# +#, fuzzy +msgid "Show extensions..." +msgstr "se udvidelser..." + +msgid "Show icon for new/unseen items" +msgstr "Vis ikon for nye/usete kanaler" + +msgid "Show in extensions menu" +msgstr "" + +# +#, fuzzy +msgid "Show info" +msgstr "Vis info" + +# +#, fuzzy +msgid "Show info line" +msgstr "vis infoinje" + +# +msgid "Show infobar on channel change" +msgstr "Vis infobjælke ved kanal skifte" + +# +msgid "Show infobar on event change" +msgstr "Vis infobjælke ved program skifte" + +# +msgid "Show infobar on skip forward/backward" +msgstr "Vis infobjælke ved skip fremspoling/tilbagespoling" + +msgid "Show latest commits on sourceforge" +msgstr "" + +# +#, fuzzy +msgid "Show message when recording starts" +msgstr "Vis besked, når optagelse starter" + +#, fuzzy +msgid "Show movie lengths in movielist" +msgstr "Vis status ikoner i filmliset" + +msgid "Show multi channel EPG" +msgstr "" + +msgid "Show picons in channel list" +msgstr "" + +# +msgid "Show positioner movement" +msgstr "Vis motor bevægelse" + +msgid "Show screensaver" +msgstr "" + +msgid "Show second infobar" +msgstr "Vis ekstra infobar" + +msgid "Show service type icons" +msgstr "" + +# +msgid "Show services beginning with" +msgstr "Vis kanaler begyndende med" + +# +#, fuzzy +msgid "Show shutdown menu" +msgstr "vis afbryder menu" + +msgid "Show single service EPG" +msgstr "" + +msgid "Show status icons in Movielist" +msgstr "" + +#, fuzzy +msgid "Show status icons in movie list" +msgstr "Vis status ikoner i filmliset" + +#, fuzzy +msgid "Show status icons in movielist" +msgstr "Vis status ikoner i filmliset" + +# +#, fuzzy +msgid "Show tag menu" +msgstr "vis mærke menu" + +# +msgid "Show the radio player..." +msgstr "Vis radio afspilleren..." + +# +msgid "Show the tv player..." +msgstr "Vis TV afspiller..." + +msgid "Show warning when timeshift is stopped" +msgstr "" + +# +msgid "Shows the state of your wireless LAN connection.\n" +msgstr "Vis tilstanden af din trådløse LAN opkobling.\n" + +# +#, fuzzy +msgid "Shuffle playlist" +msgstr "tilfældig spilleliste" + +# +msgid "Shutdown" +msgstr "Afslut" + +msgid "Shutdown when in Standby" +msgstr "" + +#, fuzzy +msgid "Side by side" +msgstr "Side ved side" + +msgid "Signal OK, proceeding" +msgstr "Signal OK, fortsætter" + +msgid "Signal quality" +msgstr "Signal kvalitet" + +# +#, fuzzy +msgid "Signal strength:" +msgstr "Signal styrke:" + +# +msgid "Signal: " +msgstr "Signal: " + +# +msgid "Similar" +msgstr "Samme" + +# +msgid "Similar broadcasts:" +msgstr "Samme udsendelser:" + +# +msgid "Simple" +msgstr "Simpel" + +# +msgid "Simple titleset (compatibility for legacy players)" +msgstr "Enkelt titelopsætning (kompatibel med legacy afspillere)" + +# +msgid "Single" +msgstr "Enkelt" + +# +msgid "Single EPG" +msgstr "Enkelt EPG" + +# +msgid "Single satellite" +msgstr "Enkelt satellit" + +# +#, fuzzy +msgid "Single step (GOP)" +msgstr "Enkelt trin (GOP)" + +# +msgid "Single transponder" +msgstr "Enkelt transponder" + +msgid "Site latitude" +msgstr "Breddegrad" + +msgid "Site longitude" +msgstr "Længdegrad" + +# +msgid "Skin" +msgstr "Grafisk tema" + +# +msgid "Skins" +msgstr "Grafiske temaer" + +#, fuzzy +msgid "Skip empty services" +msgstr "Drop tomme kanaler" + +msgid "Skip internet connection check (disables automatic package installation)" +msgstr "" + +# +#, fuzzy +msgid "Sleep timer" +msgstr "Sleep Timer" + +msgid "SleepTimer Configuration" +msgstr "" + +msgid "Sleeptimer" +msgstr "" + +# +#, fuzzy +msgid "Slide picture in loop" +msgstr "vis billeder i sløjfe" + +# +#, fuzzy +msgid "Slide show interval (sec.)" +msgstr "Slideshow Interval (sek.)" + +# +#, python-format +msgid "Slot %d" +msgstr "Slot %d" + +msgid "Slovak" +msgstr "" + +# +msgid "Slovenian" +msgstr "Slovensk" + +# +msgid "Slow" +msgstr "Langsom" + +# +#, fuzzy +msgid "Slow motion speeds" +msgstr "Langsom bevægelse hastigheder" + +# +#, fuzzy +msgid "Small progress" +msgstr "Arbejder" + +msgid "Social/Political/Economics" +msgstr "" + +msgid "SoftCam / CI" +msgstr "" + +# +#, fuzzy +msgid "Softcam type" +msgstr "Software" + +# +msgid "Software" +msgstr "Software" + +# +msgid "Software management" +msgstr "Softwarehåndtering" + +msgid "Software manager setup" +msgstr "" + +# +msgid "Software restore" +msgstr "Software gendannelse" + +# +msgid "Software update" +msgstr "Software opdatering" + +msgid "Softwaremanager information" +msgstr "" + +# +msgid "Some plugins are not available:\n" +msgstr "Nogle plugins er ikke tilstede:\n" + +# +#, fuzzy, python-format +msgid "Sorry, %s has not been installed!" +msgstr "Desværre, MediaScanner er ikke installeret!" + +msgid "Sorry, deleting directories can (for now) only be done through the trash can." +msgstr "" + +# +#, fuzzy +msgid "Sorry, no backups found!" +msgstr "Beklager, ingen backup fundet!" + +# +#, fuzzy +msgid "Sorry, no details available!" +msgstr "Desværre, ingen detaljer er angivet!" + +# +#, fuzzy +msgid "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." +msgstr "" +"Din placering af backup er desværre ikke skrivbar.\n" +"Vælg venligst en anden." + +msgid "Sort" +msgstr "Sorter" + +# +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort A-Z" +msgstr "Sorter A-Z" + +msgid "Sort by" +msgstr "" + +msgid "Sort list:" +msgstr "" + +# +#. TRANSLATORS: This must fit into the header button in the EPG-List +#, fuzzy +msgid "Sort time" +msgstr "Sorter tid" + +# +msgid "Sound" +msgstr "Lyd" + +# +#, fuzzy +msgid "Sound carrier" +msgstr "Lydfrekvens" + +msgid "Source request" +msgstr "Kilde" + +# +msgid "South" +msgstr "Syd" + +# +msgid "Spanish" +msgstr "Spansk" + +msgid "Specify the end time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the end time until the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify the start time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the start time when the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify timeframe to ignore inactivity sleeptimer" +msgstr "" + +msgid "Specify timeframe to ignore the shutdown in standby" +msgstr "" + +# +msgid "Split preview mode" +msgstr "Opdel forhåndsvisningstilstand" + +msgid "Splitscreen" +msgstr "" + +msgid "Sports" +msgstr "" + +# +#, fuzzy +msgid "Standard" +msgstr "normal" + +msgid "Standart list" +msgstr "" + +# +msgid "Standby" +msgstr "Standby" + +# +#, fuzzy +msgid "Standby / restart" +msgstr "Afbryde / Genstarte" + +msgid "Standby after current event" +msgstr "" + +# +#, fuzzy, python-format +msgid "Standby fan %d PWM" +msgstr "Ventilator %d PWM" + +# +#, fuzzy, python-format +msgid "Standby fan %d voltage" +msgstr "Ventilator %d spænding (V)" + +msgid "Standby in " +msgstr "" + +msgid "StandbyLED" +msgstr "" + +# +msgid "Start from the beginning" +msgstr "Start fra begyndelse" + +msgid "Start offline decode" +msgstr "Start offline dekodning" + +# +msgid "Start recording?" +msgstr "Start optagelse?" + +# +msgid "Start test" +msgstr "Start test" + +# +#, fuzzy +msgid "Start time" +msgstr "StartTid" + +msgid "Start time to ignore inactivity sleeptimer" +msgstr "" + +msgid "Start time to ignore shutdown in standby" +msgstr "" + +# +#, fuzzy +msgid "Start timeshift" +msgstr "start tidsforskydning" + +msgid "Start with list screen" +msgstr "" + +# +msgid "Starting on" +msgstr "Starter på" + +msgid "Startup the set top box in standby" +msgstr "" + +msgid "Startup to Standby" +msgstr "" + +# +msgid "Step east" +msgstr "Drej mod Øst" + +# +msgid "Step west" +msgstr "Drej mod Vest" + +msgid "Stepped east" +msgstr "Step øst" + +msgid "Stepped west" +msgstr "Step Vest" + +# +msgid "Stop" +msgstr "Stop" + +# +#, fuzzy +msgid "Stop PiP" +msgstr "stoppe billede i billede" + +# +msgid "Stop current event and disable coming events" +msgstr "Stoppe nuværende program og slå kommende programmer fra" + +# +msgid "Stop current event but not coming events" +msgstr "Stoppe nuværende program men ikke kommende programmer" + +# +#, fuzzy +msgid "Stop entry" +msgstr "stoppe tilføjelser" + +# +msgid "Stop playing this movie?" +msgstr "Stoppe afspilning af denne film?" + +msgid "Stop recording" +msgstr "Stop optagelse" + +msgid "Stop recording and delete" +msgstr "Stop optagelse og slet" + +msgid "Stop service on return to movie list" +msgstr "" + +# +msgid "Stop test" +msgstr "Stoppe test" + +# +msgid "Stop testing plane after # failed transponders" +msgstr "Stop afprøvning af flade efter # fejlende transpondere" + +# +msgid "Stop testing plane after # successful transponders" +msgstr "Stop afprøvning af flade efter # fungerende transpondere" + +msgid "Stop timer recording" +msgstr "" + +# +#, fuzzy +msgid "Stop timeshift" +msgstr "stop tidsforskydning" + +# +#, fuzzy +msgid "Stop timeshift?" +msgstr "Stoppe tidsforskydning?" + +msgid "Stopped" +msgstr "Stoppet" + +msgid "Store at index" +msgstr "Gem ved indeks" + +# +msgid "Store position" +msgstr "Gemme position" + +# +msgid "Stored position" +msgstr "Gemt position" + +msgid "Stream" +msgstr "" + +msgid "Stream request" +msgstr "" + +msgid "Strongest position" +msgstr "Stærkeste position" + +# +msgid "Subservice list..." +msgstr "Underkanal liste..." + +# +msgid "Subservices" +msgstr "Underkanaler" + +msgid "Subtitle Quickmenu" +msgstr "" + +#, fuzzy +msgid "Subtitle alignment" +msgstr "Bruger tekst opretning" + +#, fuzzy +msgid "Subtitle border width" +msgstr "Tekstbredde" + +msgid "Subtitle delay when timing is bad" +msgstr "" + +msgid "Subtitle delay when timing lacks" +msgstr "Tekstforsinkelse når timing mangler" + +#, fuzzy +msgid "Subtitle font size" +msgstr "Tekststørrelse" + +msgid "Subtitle language selection 1" +msgstr "Undertekstsprog valg 1" + +msgid "Subtitle language selection 2" +msgstr "Undertekstsprog valg 2" + +msgid "Subtitle language selection 3" +msgstr "Undertekstsprog valg 3" + +msgid "Subtitle language selection 4" +msgstr "Undertekstsprog valg 4" + +# +#, fuzzy +msgid "Subtitle position" +msgstr "Undertekst vælger" + +# +msgid "Subtitle selection" +msgstr "Undertekst vælger" + +msgid "Subtitle selection..." +msgstr "Undertekst valg" + +msgid "Subtitle settings" +msgstr "Undertekst indstillinger" + +# +msgid "Subtitles" +msgstr "Undertekster" + +# +msgid "Sun" +msgstr "Søn" + +# +msgid "Sunday" +msgstr "Søndag" + +# +#, fuzzy +msgid "Swap PiP and main picture" +msgstr "byt billed i billed og hovedbillede" + +# +#, fuzzy +msgid "Swap services" +msgstr "Bytte kanaler" + +# +msgid "Swedish" +msgstr "Svensk" + +msgid "Switch TV to correct input" +msgstr "Skift TV til rette indput" + +msgid "Switch between filelist/playlist" +msgstr "" + +msgid "Switch between normal mode and list mode" +msgstr "" + +msgid "Switch to HDMI in mode" +msgstr "" + +# +#, fuzzy +msgid "Switch to filelist" +msgstr "skift til filliste" + +msgid "Switch to next channel" +msgstr "" + +# +#, fuzzy +msgid "Switch to next channel in history" +msgstr "næste kanal i hukommelse" + +# +#, fuzzy +msgid "Switch to next sub service" +msgstr "Skift til næste underkanal" + +# +#, fuzzy +msgid "Switch to playlist" +msgstr "skift til spilleliste" + +# +#, fuzzy +msgid "Switch to previous channel" +msgstr "Skift til forrige underkanal" + +# +#, fuzzy +msgid "Switch to previous channel in history" +msgstr "forrige sete kanal" + +# +#, fuzzy +msgid "Switch to previous sub service" +msgstr "Skift til forrige underkanal" + +# +msgid "Switchable tuner types:" +msgstr "Udskiftelige tuner typer" + +msgid "Symbol rate" +msgstr "" + +msgid "Symbol rate:" +msgstr "" + +msgid "Sync failure moving back to origin !" +msgstr "Synkronationsfejl, går tilbage!" + +# +msgid "System" +msgstr "System" + +# +#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) +msgid "TRANSLATOR_INFO" +msgstr "" +"Sidste opdatering: 12. Juni 2008\n" +"\n" +"Har du ændringer, forslag eller andet, så kontakt mig venligst!.\n" +"\n" +"Find mere om DreamBox her:\n" +"\n" +"http://www.dream-multimedia-tv.de/board/index.php?sid=" + +# +msgid "TS file is too large for ISO9660 level 1!" +msgstr "TS filen er for stor til ISO9660 level 1!" + +msgid "TSID" +msgstr "" + +msgid "TV physical address report" +msgstr "" + +msgid "TXT PID" +msgstr "" + +# +#, fuzzy +msgid "Table of contents for collection" +msgstr "Indholdsfortegnelse for kollektion" + +# +msgid "Tags" +msgstr "Tags" + +msgid "Teletext subtitle color" +msgstr "TekstTV undertekst farve" + +# +#, fuzzy +msgid "Temperature and fan control" +msgstr "Kontrol af temperatur og ventilator" + +# +msgid "Terrestrial" +msgstr "DVB T" + +# +msgid "Terrestrial provider" +msgstr "DVB T udbyder" + +# +msgid "Test DiSEqC settings" +msgstr "Afprøv DiSEqC indstillinger" + +# +msgid "Test mode" +msgstr "Test type" + +msgid "Test the network configuration of your receiver.\n" +msgstr "" + +# +#, fuzzy +msgid "Test type" +msgstr "Afprøv type" + +# +#, fuzzy +msgid "Text color" +msgstr "tekstfarve" + +msgid "Thai" +msgstr "" + +# +msgid "" +"Thank you for using the wizard.\n" +"Please press OK to continue." +msgstr "" +"Tak for brug af hjælperen.\n" +"Tryk venligst OK for at fortsætte." + +# +#, fuzzy +msgid "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." +msgstr "" +"Tak for brug af hjælperen.\n" +"Tryk venligst OK for at fortsætte." + +msgid "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?" +msgstr "" + +msgid "The PIN code has been changed successfully." +msgstr "PIN koden er ændret med succes." + +msgid "The PIN codes you entered are different." +msgstr "PIN koderne du tastede er ikke ens." + +msgid "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" +msgstr "" +"USB nøglen er klargjort til boot.\n" +"nu kan du hente et NFI image!" + +# +msgid "The backup failed. Please choose a different backup location." +msgstr "Backup har slået fejl. Vælg en anden måde at lave backup på." + +#, fuzzy, python-format +msgid "" +"The current beta image might not be stable.\n" +"For more information see %s." +msgstr "Dette beta image kan være ustabilt" + +# +#, python-format +msgid "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." +msgstr "" +"Mappen %s er ikke skrivbar.\n" +"Sørg i stedet for at vælge en skrivbar mappe." + +# +#, python-format +msgid "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" +msgstr "" +"Følgende device blev fundet:\n" +"\n" +"%s\n" +"\n" +"Vil du skrive USB flash til denne stick?" + +# +msgid "The following files were found..." +msgstr "Følgende filer fandtes..." + +msgid "The md5sum validation failed, the file may be corrupted!" +msgstr "" + +# +#, fuzzy +msgid "" +"The network wizard extension is not installed!\n" +"Please install it." +msgstr "" +"Udvidelsen netværksassistenen er ikke installeret!\n" +"installer den venligst." + +# +#, python-format +msgid "The path %s already exists." +msgstr "Stien %s findes allerede." + +# +msgid "The pin code you entered is wrong." +msgstr "Din indtastede pin kode er forkert." + +# +#, python-format +msgid "The results have been written to %s." +msgstr "Resultaterne skal skrives til %s." + +# +msgid "The sleep timer has been activated." +msgstr "Sleep timeren er blevet aktiveret." + +# +msgid "The sleep timer has been disabled." +msgstr "Sleep timeren er ikke aktiveret." + +# +#, fuzzy +msgid "" +"The software management extension is not installed!\n" +"Please install it." +msgstr "" +"Udvidelsen softwareredigering er ikke installeret!\n" +"installer den venligst." + +#, fuzzy, python-format +msgid "The status of the current beta image could not be checked because %s can not be reached." +msgstr "Status omkring dit nuværende image kunne ikke blive kontroleret fordiwww.openpli.org ikke kunne kontaktes" + +# +msgid "The timer file (timers.xml) is corrupt and could not be loaded." +msgstr "Timer filen (timers.xml) er korrupt og kan ikke bruges." + +#, fuzzy +msgid "The user interface of your receiver is restarting" +msgstr "Brugerinterfacet på din modtager genstarter" + +#, fuzzy +msgid "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" +msgstr "" +"Brugerinterfacet på din modtager genstarter\n" +"på grund af en fejl i mytest.py" + +# +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." +msgstr "" +"Det trådløs LAN plugin er ikke installeret!\n" +"Installer det venligst og vælg hvad du herefter vil gøre." + +# +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it." +msgstr "" +"Trådløs LAN plugin er ikke installeret!\n" +"Installer det venligst." + +# +msgid "The wizard can backup your current settings. Do you want to do a backup now?" +msgstr "Assistenten kan gemme dine nuværende indstillinger. Vil du gemme dine indstillinger nu?" + +#, python-format +msgid "The wizard found a configuration backup. Do you want to restore your old settings from %s?" +msgstr "Assistenten har fundet en konfigurationsbackup. Vil du gendanne dine gamle indstillinger fra %s?" + +# +msgid "The wizard is finished now." +msgstr "Brugen af assistenten er færdig nu." + +# +msgid "There are at least " +msgstr "Der er mindst" + +# +#, fuzzy, python-format +msgid "There are at least %s updates available." +msgstr "Ingen tilgængelige opdateringer." + +# +msgid "There are currently no outstanding actions." +msgstr "Der er aktuelt ingen udestående handlinger." + +# +msgid "There are no updates available." +msgstr "Ingen tilgængelige opdateringer." + +msgid "There is no signal to lock on !" +msgstr "Der findes intet signal at låse på" + +# +msgid "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" +msgstr "" +"Der kan være for lidt plads på den valgte Partition.\n" +"Vil du virkelig fortsætte?" + +# +msgid "This DVD RW medium is already formatted - reformatting will erase all content on the disc." +msgstr "Denne DVD RW er allerede formatteret - reformattering vil slette alt indhold på disken." + +msgid "" +"This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!" +msgstr "" + +# +msgid "This plugin is installed." +msgstr "Dette plugin er installeret" + +# +msgid "This plugin is not installed." +msgstr "Dette plugin er ikke installeret" + +# +msgid "This plugin will be installed." +msgstr "Dette plugin vil blive installeret" + +# +msgid "This plugin will be removed." +msgstr "Dette plugin vil blive fjernet" + +#, python-format +msgid "This receiver cannot decode %s streams!" +msgstr "" + +# +#, fuzzy +msgid "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration" +msgstr "" +"Denne test søger efter konfigurerede Navneservere.\n" +"Hvis du får en \"ubekræftet\" besked:\n" +"- venligst tjek din DHCP, kabel og Adapter opsætning\n" +"- hvis du har konfigureret dine Navneservere manuelt venligst kontroler dine indtastninger i din \"Navneserver\" Konfiguration" + +# +#, fuzzy +msgid "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" +msgstr "" +"Denne test tjekker om et netværks kabel er tilsluttet din LAN-Adapter.\n" +"Hvis du får en \"afbrudt\" besked:\n" +"- sikker på at et netværks kabel er tilsluttet\n" +"- sikker på at kablet ikke er i stykker" + +# +#, fuzzy +msgid "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" +msgstr "" +"Denne test søger efter en virkende IP Adresse er fundet til din LAN Adapter.\n" +"Hvis du får en \"ubekræftet\" besked:\n" +"- ingen virkende IP Adresse fundet\n" +"- venligst tjek DHCP, kabler og adapter opsætning" + +# +#, fuzzy +msgid "" +"This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." +msgstr "" +"Denne test undersøger om din LAN Adapter er sat op til automatisk IP Adresse konfiguration med DHCP.\n" +"Hvis du får en \"afbrudt\" besked:\n" +" - så er din LAN Adapter konfigureret til manual IP Opsætning\n" +"- undersøg om du har korrekt IP informationer i AdapterOpsætnings dialog.\n" +"Hvis du får en \"aktiveret\" besked:\n" +"-undersøg om du har en konfigureret og virkende DHCP Server i dit netværk." + +# +#, fuzzy +msgid "This test detects your configured LAN adapter." +msgstr "Denne test finder din konfigurerede LAN-Adapter." + +msgid "" +"This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\n" +"Are you sure?" +msgstr "" +"Dette vil beregne all positioner af din motor, og vil måske fjerne tidligere gemte positioner og fintuning!\n" +"Are you sure?" + +# +msgid "Three" +msgstr "Tre" + +# +msgid "Threshold" +msgstr "Tærskelværdi" + +# +msgid "Thu" +msgstr "Tor" + +# +msgid "Thumbnails" +msgstr "Miniaturbilleder" + +# +msgid "Thursday" +msgstr "Torsdag" + +# +msgid "Time" +msgstr "Tid" + +#, fuzzy +msgid "Time scale" +msgstr "Tidsscala" + +# +msgid "Timer" +msgstr "Timer" + +msgid "Timer Overview" +msgstr "" + +# +#, fuzzy +msgid "Timer edit" +msgstr "Timer redigering" + +# +#, fuzzy +msgid "Timer editor" +msgstr "Timer redigering" + +# +msgid "Timer entry" +msgstr "Indstil timer" + +# +msgid "Timer log" +msgstr "Timer log" + +# +msgid "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" +msgstr "" +"Konstateret timer overlap i timers.xml!\n" +"Vær venlig at undersøge det!" + +#, fuzzy +msgid "Timer overview" +msgstr "Timer Oversigt" + +# +#, fuzzy +msgid "Timer recording location" +msgstr "Placering af timeroptagelser" + +# +msgid "Timer sanity error" +msgstr "Timer sanity fejl" + +# +msgid "Timer selection" +msgstr "Timer valg" + +msgid "Timer selection..." +msgstr "" + +# +#, fuzzy +msgid "Timer type" +msgstr "Timer type" + +# +msgid "Timeshift" +msgstr "Tidsforskydning" + +msgid "Timeshift Live" +msgstr "" + +# +msgid "Timeshift location" +msgstr "Placering af tidsforskydning" + +# +msgid "Timeshift not possible!" +msgstr "Tidsforskydning ikke mulig!." + +# +msgid "Timezone" +msgstr "Tidszone" + +# +msgid "Title" +msgstr "Titel" + +# +msgid "Title properties" +msgstr "Titel egenskaber" + +# +msgid "Titleset mode" +msgstr "Titelopsætning modus" + +msgid "To audio selection" +msgstr "Til lyd valg" + +msgid "To subtitle selection" +msgstr "Til undertekst valg" + +msgid "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." +msgstr "" + +# +msgid "Today" +msgstr "Idag" + +# +#, fuzzy +msgid "Toggle a cut mark at the current position" +msgstr "flytte en klippe markør til nuværende position" + +# +#, fuzzy +msgid "Tone amplitude" +msgstr "Tone amplitude" + +# +msgid "Tone mode" +msgstr "Lyd type" + +# +msgid "Toneburst" +msgstr "Toneburst" + +# +msgid "Toneburst A/B" +msgstr "Toneburst A/B" + +msgid "Top and bottom" +msgstr "" + +# +msgid "Track" +msgstr "Spor" + +# +msgid "Translation" +msgstr "Sprog info" + +# +msgid "Translation:" +msgstr "Oversætter:" + +msgid "Translations" +msgstr "" + +# +msgid "Transmission mode" +msgstr "Transmissions type" + +# +msgid "Transponder" +msgstr "Transponder" + +# +#, fuzzy +msgid "Transponder type" +msgstr "Transponder type" + +#, fuzzy +msgid "Trash can" +msgstr "Papirkurv" + +# +msgid "Tries left:" +msgstr "Forsøg tilbage:" + +# +msgid "Try to find used transponders in cable network.. please wait..." +msgstr "Prøver at finde transpondere i kabel netværk.. vent venligst..." + +# +msgid "Trying to download a new packetlist. Please wait..." +msgstr "Prøver at downloade ny pakkeliste. Vent venligst..." + +# +msgid "Tue" +msgstr "Tir" + +# +msgid "Tuesday" +msgstr "Tirsdag" + +# +msgid "Tune" +msgstr "Tune" + +#, fuzzy +msgid "Tune and focus" +msgstr "Tune og fokuser" + +# +msgid "Tune failed!" +msgstr "Tuning fejlede!" + +# +msgid "Tuner" +msgstr "Tuner" + +# +msgid "Tuner configuration" +msgstr "Tuner opsætning" + +msgid "Tuner is not supported" +msgstr "" + +# +#, fuzzy +msgid "Tuner slot" +msgstr "Tuner slot" + +# +msgid "Tuner status" +msgstr "Tuner status" + +# +#, fuzzy, python-format +msgid "Tuner status %s" +msgstr "Tuner status" + +# +msgid "Tuner type" +msgstr "" + +# +msgid "Turkish" +msgstr "Tyrkisk" + +msgid "Turn on the power LED during standby." +msgstr "" + +msgid "Turning step size" +msgstr "" + +# +msgid "Two" +msgstr "To" + +# +msgid "Type" +msgstr "Type" + +# +msgid "Type of scan" +msgstr "Søge type" + +# +msgid "USALS" +msgstr "USALS" + +#, fuzzy +msgid "USALS calibration" +msgstr "USALS Calibrering" + +# +#, fuzzy +msgid "USB stick" +msgstr "USB stick" + +# +msgid "USB stick wizard" +msgstr "USB stick assistenten" + +msgid "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Uovervåget opgradering i gang\n" +"Vent venligst til din modtager genstarter\n" +"Dette kan vare flere minutter" + +# +msgid "Undo install" +msgstr "Fortryd afinstallering" + +# +msgid "Undo uninstall" +msgstr "Fortryd afinstallering" + +msgid "Unencrypted" +msgstr "Ikke krypteret" + +# +msgid "UnhandledKey" +msgstr "Uhåndteret nøgle" + +# +msgid "Unicable" +msgstr "Unikabel" + +# +msgid "Unicable LNB" +msgstr "Unikabel LNB" + +# +msgid "Unicable Martix" +msgstr "Unikabel matrix" + +# +msgid "Uninstall" +msgstr "Afinstaller" + +# +msgid "Universal LNB" +msgstr "Universal LNB" + +msgid "Unknown" +msgstr "Ukendt" + +msgid "Unmount" +msgstr "" + +# +msgid "Unsupported" +msgstr "Ikke understøttet" + +# +msgid "Update" +msgstr "Opdater" + +#, fuzzy +msgid "Update and ask to reboot" +msgstr "Opgrader og spørg om genstart" + +msgid "Update and reboot (recommended)" +msgstr "" + +# +#, fuzzy +msgid "Update channel list only" +msgstr "næste kanal i hukommelse" + +#, python-format +msgid "Update completed, %d package was installed." +msgid_plural "Update completed, %d packages were installed." +msgstr[0] "" +msgstr[1] "" + +msgid "Update completed. Do you want to reboot your receiver?" +msgstr "" + +msgid "Update failed. Your receiver does not have a working internet connection." +msgstr "" + +msgid "Update has completed." +msgstr "" + +# +#, fuzzy +msgid "Updatefeed not available." +msgstr "opdateringer tilgængelig." + +# +msgid "Updating software catalog" +msgstr "Opdaterer softwarekatalog" + +# +msgid "Upgrading" +msgstr "Opdaterer" + +# +msgid "Use" +msgstr "Brug" + +# +msgid "Use DHCP" +msgstr "Brug (DHCP)" + +msgid "Use EIT EPG information when it is available." +msgstr "" + +msgid "Use FreeSat EPG information when it is available." +msgstr "" + +msgid "Use MHW EPG information when it is available." +msgstr "" + +msgid "Use Netmed EPG information when it is available." +msgstr "" + +msgid "Use TV remote control" +msgstr "Brug TV fjernbetjening" + +# +#, fuzzy +msgid "Use USALS for this sat" +msgstr "Brug USALS til denne position" + +msgid "Use ViaSat EPG information when it is available." +msgstr "" + +msgid "Use Virgin EPG information when it is available." +msgstr "" + +# +msgid "Use a gateway" +msgstr "Brug af Router" + +msgid "Use fastscan channel names" +msgstr "Brug hurtigsøgning kanalnavne" + +msgid "Use fastscan channel numbering" +msgstr "Brug hurtigsøgning kanalnumre" + +msgid "Use frequency or channel" +msgstr "" + +msgid "Use individual settings for each directory" +msgstr "" + +# +#, fuzzy +msgid "Use interface" +msgstr "Benyt interface" + +msgid "Use official channel numbering" +msgstr "Brug officel kanalnumerering" + +#, fuzzy +msgid "Use original DVB subtitle position" +msgstr "Brug DVB undertekster position" + +msgid "Use original teletext position" +msgstr "Brug original TekstTV position" + +# +msgid "Use power measurement" +msgstr "Brug strømmåling" + +# +#, fuzzy +msgid "Use the network wizard to configure selected network adapter" +msgstr "Brug netværksassistenten til at indstille valgte enhed" + +# +#, fuzzy +msgid "Use the network wizard to configure your network\n" +msgstr "Brug Netværksassistenten til at konfigurere dit Netværk\n" + +# +msgid "Use the up/down keys on your remote control to select an option. After that, press OK." +msgstr "Brug pil op/ned for at vælge på din fjernbetjening. Derefter tryk på OK." + +# +#, fuzzy +msgid "Use the wizard to set up basic features" +msgstr "Bruge Start assistenten til grundindstilling?" + +#, fuzzy +msgid "Use these input device settings?" +msgstr "Brug disse enhedsindstillinger" + +#, fuzzy +msgid "Use these settings?" +msgstr "Brug disse indstillinger" + +# +msgid "Use this video enhancement settings?" +msgstr "Anvend denne opsætning af videoforbedring?" + +#, fuzzy +msgid "Use trash can in movielist" +msgstr "Brug papirkurv i filmliste" + +# +msgid "Used service scan type" +msgstr "Brugt kanal søgnings type" + +msgid "User - bouquets" +msgstr "Bruger kanallister" + +# +msgid "User defined" +msgstr "Brugerdefineret" + +msgid "User defined transponder" +msgstr "" + +# +#, fuzzy +msgid "User interface" +msgstr "Benyt interface" + +# +msgid "Username" +msgstr "Brugernavn" + +#, python-format +msgid "Using LNB %d" +msgstr "" + +msgid "Using fixed address" +msgstr "Brug fast adresse" + +#, python-format +msgid "Using tuner %s" +msgstr "" + +msgid "Usually when the subtitle language is the same as the audio language, the subtitles will not be used. Enable this option to allow these subtitles to be used." +msgstr "" + +# +msgid "VCR scart" +msgstr "Scart / Video" + +# +msgid "VMGM (intro trailer)" +msgstr "VMGM (intro trailer)" + +# +msgid "Vertical" +msgstr "Vertikal" + +msgid "Vertical turning speed" +msgstr "Vertikal rotationshastighed" + +msgid "Video PID" +msgstr "" + +# +msgid "Video enhancement preview" +msgstr "Forhåndsvisning af videoforbedring" + +# +msgid "Video enhancement settings" +msgstr "Indstillinger af videoforbedring" + +# +msgid "Video enhancement setup" +msgstr "Opsæt videoforbedring" + +# +#, fuzzy +msgid "Video fine tuning" +msgstr "Video finindstilling..." + +# +#, fuzzy +msgid "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." +msgstr "" +"Video indgangs vælger\n" +"\n" +"Venligst tryk OK hvis du kan se denne side på dit TV (eller vælg en anden indgangs port).\n" +"\n" +"Næste indgangs port vil automatisk blive testet i 10 sekunder." + +# +msgid "Video mode selection." +msgstr "Video type vælger." + +# +#, fuzzy +msgid "Video output" +msgstr "Video udgang" + +# +#, fuzzy +msgid "Video setup" +msgstr "Video Opsætning..." + +# +#, fuzzy +msgid "Video wizard" +msgstr "Video assistenten" + +#, python-format +msgid "Video: %s fps" +msgstr "" + +msgid "VideoMode" +msgstr "" + +msgid "Videocodec" +msgstr "" + +msgid "Videoformat" +msgstr "" + +msgid "Videosize" +msgstr "Videostørrelse" + +# +msgid "View Rass interactive..." +msgstr "Se Rass interaktiv..." + +# +msgid "View details" +msgstr "Se detaljer" + +# +msgid "View list of available " +msgstr "Se liste over tilgængelige" + +# +msgid "View list of available CommonInterface extensions" +msgstr "Vis oplistning af alle tilgængelige Common Interface udvidelser" + +# +msgid "View list of available EPG extensions." +msgstr "Vis oplistning af tilgængelige EPG udvidelser." + +# +msgid "View list of available Satellite equipment extensions." +msgstr "Vis liste over tilgængelig satudstyrs udvidelser" + +# +msgid "View list of available communication extensions." +msgstr "Vis oplistning af tilgængelige kommunikationsudvidelser" + +# +msgid "View list of available default settings" +msgstr "Vis oplistning af tilgængelige standardopsætninger" + +# +#, fuzzy +msgid "View list of available display and userinterface extensions." +msgstr "Vis oplistning af tilgængelige visnings- og brugerinterface udvidelser." + +# +msgid "View list of available multimedia extensions." +msgstr "Vis oplistning af tilgængelige multimediaudvidelser" + +# +msgid "View list of available networking extensions" +msgstr "Vis oplistning af tilgængelige netværksudvidelser" + +# +msgid "View list of available recording extensions" +msgstr "Vis oplistning af tilgængelige optagelsesudvidelser" + +# +msgid "View list of available skins" +msgstr "Vis oplistning af tilgængelige grafiske temaer" + +# +msgid "View list of available software extensions" +msgstr "Vis oplistning af tilgængelige software udvidelser" + +# +msgid "View list of available system extensions" +msgstr "Vis oplistning af tilgængelige systemudvidelser" + +# +#, fuzzy +msgid "View photos..." +msgstr "Vis fotos..." + +# +msgid "View teletext..." +msgstr "Se teletekst..." + +# +#, fuzzy +msgid "View video CD..." +msgstr "Vis video CD" + +# +#, fuzzy +msgid "Virtual keyboard" +msgstr "Virtuelt tastatur" + +# +msgid "Voltage mode" +msgstr "Spændings type" + +# +msgid "Volume" +msgstr "Lydstyrke" + +# +msgid "W" +msgstr "V" + +# +msgid "WEP" +msgstr "WEP" + +msgid "WLAN connection" +msgstr "WLAN forbindelse" + +# +msgid "WPA" +msgstr "WPA" + +# +msgid "WPA or WPA2" +msgstr "WPA eller WPA2" + +# +msgid "WPA2" +msgstr "WPA2" + +# +msgid "WSS on 4:3" +msgstr "WSS på 4:3" + +# +msgid "Waiting" +msgstr "Venter" + +#, fuzzy +msgid "Waiting for mount" +msgstr "Vent på mount" + +#, fuzzy +msgid "Waiting for partition" +msgstr "Vent på partitionering" + +msgid "Wakeup" +msgstr "Vågn op" + +msgid "Wakeup TV from standby" +msgstr "Væk TV fra Standby" + +msgid "Wakeup receiver for start timer" +msgstr "" + +msgid "Wakeup receiver from standby" +msgstr "Væk modtager fra Stanbdy" + +msgid "Wakeup signal from TV" +msgstr "Vågn op signal fra TV" + +msgid "Wakeup type" +msgstr "" + +msgid "Warning: no LNB; using factory defaults." +msgstr "" + +# +#, fuzzy +msgid "Watch movies..." +msgstr "Afspil optagede film..." + +# +#, fuzzy +msgid "Watch recordings..." +msgstr "optager..." + +# +msgid "Wed" +msgstr "Ons" + +# +msgid "Wednesday" +msgstr "Onsdag" + +# +msgid "Weekday" +msgstr "Ugedag" + +msgid "Weighted position" +msgstr "Vægtet position" + +# +#, fuzzy +msgid "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." +msgstr "" +"Velkommen til klipliste editor.\n" +"\n" +"Søg til starten af det materiale, du vil skære væk. Tryk OK, vælg 'start klip'.\n" +"\n" +"Søg derefter til slutningen, tryk OK, vælg 'afslut klip'. Det er det hele." + +msgid "Welcome to the image upgrade wizard. The wizard will assist you in upgrading the firmware of your receiver by providing a backup facility for your current settings and a short explanation of how to upgrade your firmware." +msgstr "" + +msgid "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" +msgstr "" + +msgid "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." +msgstr "" + +# +msgid "Welcome..." +msgstr "Velkommen..." + +# +msgid "West" +msgstr "Vest" + +msgid "West limit set" +msgstr "Vest grænse opsætning" + +# +msgid "What do you want to scan?" +msgstr "Hvad vil du søge?" + +msgid "When enabled the PiP can be closed by the exit button." +msgstr "" + +msgid "When enabled the arrow buttons around the OK button will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled the left, right, CH+/-, B+/-, P+/- buttons will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled you can specify a timeframe to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "When enabled you can specify a timeframe were the inactivity sleeptimer is ignored. Not the detection is disabled during this timeframe but the inactivity timeout is disabled" +msgstr "" + +msgid "When enabled you can zap channels with the CH+/-, B+/-, P+/- buttons instead of opening the channel selection list." +msgstr "" + +msgid "When enabled you get the channel selection list via the OK button, the infobar toggle is then transfered to exit button" +msgstr "" + +msgid "When enabled, AIT data will be included in http streams. This allows a client receiver to use HbbTV." +msgstr "" + +msgid "When enabled, ECM data will be included in http streams. This allows a client receiver to do the descrambling." +msgstr "" + +msgid "When enabled, EIT data will be included in http streams. This allows a client receiver to show EPG." +msgstr "" + +msgid "When enabled, a popup message will be shown when a movie has finished and the next one will start." +msgstr "" + +msgid "When enabled, a popup message will be shown when a recording starts." +msgstr "" + +msgid "When enabled, a radio background image will be visible while listening to a radio channel." +msgstr "" + +msgid "When enabled, a recording is allowed to interrupt live tv, when there are no free tuners." +msgstr "" + +msgid "When enabled, a warning will be displayed and the user will get an option to stop or to continue the timeshift." +msgstr "" + +msgid "When enabled, authentication is required to watch http streams." +msgstr "" + +msgid "When enabled, channel numbering will start at '1' for each bouquet." +msgstr "" + +msgid "When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen." +msgstr "" + +msgid "When enabled, continue to the next bouquet when the last channel of the current bouquet is reached while changing channels." +msgstr "" + +msgid "When enabled, deleted recordings are moved to the trash can, instead of being deleted immediately." +msgstr "" + +msgid "When enabled, display the EIT now/next eventdata in infobar. When disabled, display now/next eventdata from the EPG cache instead." +msgstr "" + +msgid "When enabled, encryption info will be shown in the infobar (when supported by the skin)." +msgstr "" + +msgid "When enabled, error messages related to the Common Interface module will not be shown." +msgstr "" + +msgid "When enabled, error messages related to zapping will not be shown." +msgstr "" + +msgid "When enabled, external subtitles will be always turned on for playback movie." +msgstr "" + +msgid "When enabled, graphical DVB subtitles are preferred over teletext subtitles, when both types are available." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be centered horizontally." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be displayed at their original position." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be displayed in yellow, instead of the original color." +msgstr "" + +msgid "When enabled, http streams are descrambled on the server side. The (remote) client receiver does not have to do descrambling." +msgstr "" + +msgid "When enabled, it is possible to leave the movieplayer with exit." +msgstr "" + +msgid "When enabled, measure power consumption to detect when the rotor stops turning (when supported by the tuner)." +msgstr "" + +msgid "When enabled, number markers will be hiden." +msgstr "" + +msgid "When enabled, services may be grouped in multiple bouquets." +msgstr "" + +#, fuzzy +msgid "When enabled, show channel numbers in the channel selection screen." +msgstr "Vis kanalnumre i kanalvælger" + +msgid "When enabled, subtitles for the hearing impaired can be used." +msgstr "" + +msgid "When enabled, subtitles for the hearing impaired will be preferred over normal subtitles, when both types are available." +msgstr "" + +msgid "When enabled, teletext pages will be cached, allowing faster access." +msgstr "" + +msgid "When enabled, teletext subtitles will be displayed at their original position." +msgstr "" + +msgid "When enabled, the VCR scart option will be shown on the main menu" +msgstr "" + +msgid "When enabled, the channel selection list will be hidden while listening to a radio channel" +msgstr "" + +msgid "When enabled, the infobar will be displayed when a new event starts." +msgstr "" + +msgid "When enabled, the infobar will be displayed when changing channels." +msgstr "" + +msgid "When enabled, the infobar will be displayed when skipping forwards/backwards during media playback." +msgstr "" + +msgid "When enabled, the lenght of each recording will be shown in the movielist (this might cause some additional loading time)." +msgstr "" + +msgid "When enabled, the original line breaks will be removed from the teletext subtitles." +msgstr "" + +msgid "When enabled, the receiver will automatically use the audio track which you selected before." +msgstr "" + +msgid "When enabled, the receiver will automatically use the subtitles which you selected before." +msgstr "" + +msgid "When enabled, the receiver will no longer monitor the tuned transponder for possible changes. Do not use this option unless you know what you are doing." +msgstr "" + +msgid "When enabled, the receiver will select an AC3 track (when available)." +msgstr "" + +msgid "When enabled, the receiver will select an AC3+ track (when available)." +msgstr "" + +msgid "When enabled, timeshift starts automatically in background after specified time." +msgstr "" + +# +#, fuzzy +msgid "When enabled, use DHCP for the IP configuration." +msgstr "åbn navneserver opsætning" + +msgid "When enabled, your receiver will detect activity on the VCR SCART input." +msgstr "" + +msgid "When nonzero, a recording will start earlier than the starting time indicated by the EPG." +msgstr "" + +msgid "When nonzero, a recording will stop later than the ending time indicated by the EPG." +msgstr "" + +msgid "When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture." +msgstr "" + +msgid "When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture." +msgstr "" + +# +msgid "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" +msgstr "" +"Når du anvender fabrik gendannelse mister du ALLE dine indstillingsdata\n" +"(Inclusive buketter, kanallister, satellit data ...)\n" +"Efter afsluttet fabriksgendannelse genstartes DeamBoxen automatisk!\n" +"\n" +"Udfør fabriks gendannelse?" + +# +msgid "Where do you want to backup your settings?" +msgstr "Hvor vil du lave en kopi af dine indstillinger?" + +# +msgid "Where to save temporary timeshift recordings?" +msgstr "Hvor skal midleridige tidsforskydningsoptagelser gemmes?" + +# +msgid "Wireless LAN" +msgstr "Trådløs LAN" + +# +#, fuzzy +msgid "Wireless network" +msgstr "Trådløst netværk" + +#, fuzzy +msgid "Wireless network configuration..." +msgstr "Opsæt trådløs netværksforbindelse." + +msgid "Wireless network connection setup" +msgstr "Opsæt trådløs netværksforbindelse" + +msgid "Wireless network connection setup." +msgstr "Opsæt trådløs netværksforbindelse." + +msgid "Wireless network state" +msgstr "Status trådløs netværksforbindelse" + +msgid "With popup" +msgstr "" + +msgid "Without popup" +msgstr "" + +msgid "Would you like to install a softcam?" +msgstr "" + +# +msgid "Write error while recording. Disk full?\n" +msgstr "Skrive fejl under optagelse. Disken fuld?\n" + +# +msgid "Write failed!" +msgstr "Skrivning mislykkedes!" + +# +msgid "YPbPr" +msgstr "Komponent" + +# +msgid "Year" +msgstr "År" + +msgid "Yellow DVB subtitles" +msgstr "Gule DVD undertekster" + +# +msgid "Yes" +msgstr "Ja" + +msgid "Yes and save" +msgstr "" + +msgid "Yes and save in movie dir" +msgstr "" + +# +msgid "Yes to all" +msgstr "Ja til alt" + +msgid "Yes, always" +msgstr "Ja, altid" + +# +msgid "Yes, and delete this movie" +msgstr "Ja, og slet denne film" + +# +msgid "Yes, backup my settings!" +msgstr "Ja, start kopiering af mine indstillinger!" + +msgid "Yes, delete this movie and return to movie list" +msgstr "" + +# +msgid "Yes, do a manual scan now" +msgstr "Ja, start en manuel søgning nu" + +# +msgid "Yes, do an automatic scan now" +msgstr "Ja, start en automatisk søgning nu" + +# +msgid "Yes, do another manual scan now" +msgstr "Ja, start en ny manuel søgning nu" + +# +msgid "Yes, perform a shutdown now." +msgstr "Ja, start afbrydelse nu." + +# +msgid "Yes, restore the settings now" +msgstr "Ja, genskab indstillinger nu" + +# +msgid "Yes, returning to movie list" +msgstr "Ja, gå til filmliste" + +msgid "Yesterday" +msgstr "I går" + +#, python-format +msgid "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" +msgstr "" + +# +msgid "You can cancel the installation." +msgstr "Du kan afbryde installationen." + +# +msgid "You can cancel the removal." +msgstr "Du kan afbryde fjernelsen." + +msgid "You can continue watching TV etc. while this is running." +msgstr "Du kan fortsætte med at se TV mens dette kører." + +# +msgid "You can install this plugin." +msgstr "Du kan installere dette plugin" + +msgid "You can only burn receiver recordings!" +msgstr "" + +# +msgid "You can remove this plugin." +msgstr "Du kan fjerne dette plugin." + +# +msgid "You cannot delete this!" +msgstr "Dette kan ikke slettes!" + +msgid "You didn't select a channel to record from." +msgstr "Du har ikke valgt en kanal at optage fra" + +# +msgid "You have chosen to backup your settings. Please press OK to start the backup now." +msgstr "Du hae valgt dine backup indstillinger. Tryk venligst på OK for at starte backuppen nu" + +# +msgid "You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased." +msgstr "Du har valgt at oprette ny .NFI flash bootbar USB stick. Dette vil repartitionere USB sticken og derfor vil alle data på den blive slettet." + +# +msgid "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." +msgstr "Du har valgt at gendanne dine indstillinger. Enigma2 vil genstarte efter gendannelsen. Tryk venligst på OK for at starte gendannelsen nu." + +# +#, python-format +msgid "You have to wait %s!" +msgstr "Du må vente %s!" + +msgid "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." +msgstr "" + +msgid "You system does not support ext4" +msgstr "Dit system understøtter ikke ext4" + +# +msgid "Your backup succeeded. We will now continue to explain the further upgrade process." +msgstr "Din backup er lykkedes. Vi vil nu forsætte forklaringen på opdaterings processen." + +# +msgid "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" +msgstr "Din kollektion overstiger størrelsen af et enkeltlags medium, du har brug for en tom dobbeltlags DVD!" + +# +msgid "Your current collection will get lost!" +msgstr "" + +# +msgid "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." +msgstr "" +"Din frontprocessor skal opdateres.\n" +"Tryk OK for at starte opdateringen." + +msgid "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"din frontprocessor bliver opdateret\n" +"Vent venligst til din modtager genstarter\n" +"Dette kan tage nogle minutter" + +# +msgid "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." +msgstr "" +"Din internetforbindelse virker ikke!\n" +"Vælg hvad du vil gøre herefter." + +#, python-format +msgid "Your internet connection is working (ip: %s)" +msgstr "" + +# +msgid "Your network configuration has been activated." +msgstr "Din netværks opsætning er blevet aktiveret." + +msgid "Your receiver does not have an internet connection" +msgstr "" + +# +#, fuzzy +msgid "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" +msgstr "" +"Din Dreambox er nu klar til brug.\n" +"\n" +"Din internetforbindelse fungerer nu.\n" +"\n" + +msgid "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." +msgstr "" + +msgid "Your receiver is rebooting" +msgstr "Din modtager genstarter" + +msgid "Your receiver is shutting down" +msgstr "Din modtager lukker ned" + +msgid "Your receiver is shutting down. Please stand by..." +msgstr "" + +msgid "Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver." +msgstr "" + +msgid "Your receiver will got to stand by due to the sleeptimer." +msgstr "" + +msgid "Your receiver will got to standby due to inactivity." +msgstr "" + +msgid "Your receiver will restart after pressing OK on your remote control." +msgstr "" + +# +msgid "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." +msgstr "" +"Din trådløse LAN internetforbindelse kunne ikke startes!\n" +"Har du forbundet din USB WLAN Stick?\n" +"\n" +"Vælg hvad du herefter vil gøre." + +msgid "Zap" +msgstr "" + +# +msgid "Zap back to previously tuned service?" +msgstr "Zap tilbage til tidligere kanal" + +# +msgid "Zap back to service before positioner setup?" +msgstr "Skift tilbage til kanal før motoropsætning?" + +# +msgid "Zap back to service before tuner setup?" +msgstr "Skift tilbage til kanal før tuneropsætning?" + +msgid "Zap focus to Picture in Picture" +msgstr "Skift fokus i Billed i Billed" + +msgid "Zap focus to main screen" +msgstr "Skift fokus til hovedbillede" + +msgid "Zap mode" +msgstr "" + +msgid "Zap to selected channel" +msgstr "Skift til valgte kanal" + +msgid "Zap to selected channel, or show detailed event info (depends on configuration)" +msgstr "" + +# +msgid "[alternative edit]" +msgstr "[Alternativ ændring]" + +# +msgid "[bouquet edit]" +msgstr "[Pakke redigering]" + +# +msgid "[favourite edit]" +msgstr "[Favorit redigering]" + +# +msgid "[move mode]" +msgstr "[Flytte type]" + +# +msgid "a gui to assign services/providers to common interface modules" +msgstr "et gui til at tilknytte kanaler/udbydere til common interface moduler" + +# +msgid "a gui to assign services/providers/caids to common interface modules" +msgstr "et gui til at tilknytte kanaler/udbydere/caids til common interface moduler" + +# +msgid "abort alternatives edit" +msgstr "afbryd alternativ redigering" + +# +msgid "abort bouquet edit" +msgstr "afbryd pakke redigering" + +# +msgid "abort favourites edit" +msgstr "afbryd favorit redigering" + +# +msgid "about to start" +msgstr "er ved at starte" + +# +msgid "activate network adapter configuration" +msgstr "aktiver opsætning for netværksadapter" + +# +msgid "add alternatives" +msgstr "tilføj alternativer" + +# +msgid "add bookmark" +msgstr "tilføj bogmærke" + +# +msgid "add bouquet" +msgstr "tilføj pakke..." + +# +msgid "add marker" +msgstr "tilføj markør" + +# +msgid "add service to bouquet" +msgstr "tilføj kanal til pakke" + +# +msgid "add service to favourites" +msgstr "tilføj kanal til favoritter" + +# +msgid "add to parental protection" +msgstr "tilføj til forældre beskyttelse" + +msgid "adult movie/drama" +msgstr "" + +# +msgid "advanced" +msgstr "avanceret" + +msgid "adventure/western/war" +msgstr "" + +msgid "advertisement/shopping" +msgstr "" + +msgid "after " +msgstr "" + +# +#, fuzzy +msgid "alphabetic" +msgstr "alfabetisk sortering" + +msgid "alphabetic reverse" +msgstr "Omvendt alfabet" + +msgid "alternative" +msgstr "" + +msgid "always" +msgstr "" + +msgid "and select next channel" +msgstr "" + +msgid "and select previous channel" +msgstr "" + +msgid "arts/culture (without music, general)" +msgstr "" + +msgid "arts/culture magazine" +msgstr "" + +msgid "athletics" +msgstr "" + +# +msgid "audio tracks" +msgstr "lyd spor" + +# +msgid "auto" +msgstr "auto" + +# +#, fuzzy +msgid "automatic" +msgstr "Automatisk" + +# +msgid "back" +msgstr "tilbage" + +# +msgid "background image" +msgstr "baggrunds billede" + +msgid "ballet" +msgstr "" + +#, python-format +msgid "bc%s" +msgstr "" + +# +msgid "better" +msgstr "Bedre" + +# +msgid "black" +msgstr "sort" + +msgid "black & white" +msgstr "" + +# +msgid "blacklist" +msgstr "Sortliste" + +# +msgid "blue" +msgstr "blå" + +msgid "broadcasting/press" +msgstr "" + +# +#, fuzzy +msgid "by date" +msgstr "sorter efter dato" + +msgid "cartoon/puppets" +msgstr "" + +msgid "center" +msgstr "centrer" + +msgid "centered" +msgstr "" + +msgid "centered, wrapped" +msgstr "" + +# +msgid "chapters" +msgstr "kapitler" + +msgid "childrens's/youth program (general)" +msgstr "" + +# +msgid "circular left" +msgstr "venstre-cirkulær" + +# +msgid "circular right" +msgstr "højre-cirkulær" + +msgid "comedy" +msgstr "" + +# +msgid "complex" +msgstr "komplex" + +# +msgid "config menu" +msgstr "konfigurationsmenu" + +# +msgid "confirmed" +msgstr "bekræftet" + +# +msgid "connected" +msgstr "tilsluttet" + +# +msgid "continue" +msgstr "fortsæt" + +msgid "cooking" +msgstr "" + +# +msgid "copy to bouquets" +msgstr "kopier til pakker" + +# +msgid "create directory" +msgstr "opret mappe" + +#, python-format +msgid "currently installed image: %s" +msgstr "nuværende installerede image: %s" + +# +msgid "daily" +msgstr "daglig" + +# +msgid "day" +msgstr "dag" + +# +#, fuzzy +msgid "default" +msgstr "Standard" + +# +msgid "delete cut" +msgstr "slet klip" + +msgid "delete..." +msgstr "" + +msgid "descramble and record ecm" +msgstr "afkod og gem ecm" + +msgid "detective/thriller" +msgstr "" + +# +msgid "disable" +msgstr "afbryd" + +# +msgid "disable move mode" +msgstr "slå flytte type fra" + +# +msgid "disabled" +msgstr "slukket" + +# +msgid "disconnected" +msgstr "afbrudt" + +msgid "discussion/interview/debate" +msgstr "" + +# +msgid "do nothing" +msgstr "gør intet" + +msgid "documentary" +msgstr "" + +msgid "don't descramble, record ecm" +msgstr "afkod ikke, gem ecm" + +# +msgid "done!" +msgstr "færdig!" + +msgid "east" +msgstr "øst" + +msgid "economics/social advisory" +msgstr "" + +# +msgid "edit alternatives" +msgstr "redigere alternativer" + +msgid "education/science/factual topics (general)" +msgstr "" + +# +msgid "empty" +msgstr "tom" + +# +msgid "enable" +msgstr "tilslut" + +# +msgid "enable bouquet edit" +msgstr "åbne pakkeredigering" + +# +msgid "enable favourite edit" +msgstr "åbne favoritredigering" + +# +msgid "enable move mode" +msgstr "åbne flyttetype" + +# +msgid "enabled" +msgstr "Tilsluttet" + +# +msgid "end alternatives edit" +msgstr "afslut alternativ redigering" + +# +msgid "end bouquet edit" +msgstr "afslut pakkeredigering" + +# +msgid "end cut here" +msgstr "afslut klip her" + +# +msgid "end favourites edit" +msgstr "afslut favoritredigering" + +msgid "entertainment (10-16 year old)" +msgstr "" + +msgid "entertainment (6-14 year old)" +msgstr "" + +# +msgid "equal to" +msgstr "svarende til" + +msgid "equestrian" +msgstr "" + +# +msgid "exit DVD player or return to file browser" +msgstr "luk DVD afspiller eller tilbage til filoversigt" + +msgid "exit movielist" +msgstr "" + +# +msgid "exit network adapter configuration" +msgstr "luk netværksadapter opsætning" + +# +msgid "exit networkadapter setup menu" +msgstr "luk netværksadapter opsætningsmenu" + +msgid "experimental film/video" +msgstr "" + +msgid "false" +msgstr "falsk" + +msgid "fashion" +msgstr "" + +# +msgid "fileformats (BMP, PNG, JPG, GIF)" +msgstr "fil formater (BMP, PNG, JPG, GIF)" + +# +msgid "filename" +msgstr "fil navn" + +msgid "film/cinema" +msgstr "" + +msgid "fine arts" +msgstr "" + +# +msgid "fine-tune your display" +msgstr "finjuster dit display" + +msgid "fitness & health" +msgstr "" + +# +#, fuzzy +msgid "flat alphabetic" +msgstr "alfabetisk sortering" + +#, fuzzy +msgid "flat alphabetic reverse" +msgstr "Omvendt alfabet" + +msgid "folk/traditional music" +msgstr "" + +msgid "football/soccer" +msgstr "" + +msgid "foreign countries/expeditions" +msgstr "" + +# +msgid "forward to the next chapter" +msgstr "frem til næste kapitel" + +# +msgid "free" +msgstr "ledig" + +msgid "from" +msgstr "" + +msgid "further education" +msgstr "" + +msgid "game show/quiz/contest" +msgstr "" + +msgid "gardening" +msgstr "" + +# +msgid "go to deep standby" +msgstr "gå til dyb standby" + +# +msgid "go to standby" +msgstr "gå til Standby" + +# +msgid "grab this frame as bitmap" +msgstr "grab denne frame som bitmap" + +# +msgid "green" +msgstr "grøn" + +msgid "handicraft" +msgstr "" + +msgid "height" +msgstr "højde" + +# +msgid "help..." +msgstr "hjælp..." + +# +msgid "horizontal" +msgstr "horisontal" + +msgid "information/education/school program" +msgstr "" + +# +msgid "init module" +msgstr "initialiser modul" + +# +msgid "init modules" +msgstr "initier moduler" + +# +msgid "insert mark here" +msgstr "indsæt mærke her" + +msgid "invalid type" +msgstr "forkert type" + +msgid "jazz" +msgstr "" + +# +msgid "jump back to the previous title" +msgstr "hop tilbage til forrige titel" + +# +msgid "jump forward to the next title" +msgstr "hop frem til næste titel" + +msgid "languages" +msgstr "" + +# +msgid "leave movie player..." +msgstr "forlad film afspiller..." + +# +msgid "left" +msgstr "venstre" + +msgid "left, wrapped" +msgstr "" + +msgid "leisure hobbies (general)" +msgstr "" + +# +msgid "length" +msgstr "længde" + +msgid "limit ..., aborting !" +msgstr "grænse..., afbryder !" + +# +msgid "list style compact" +msgstr "kompakt listestil" + +# +msgid "list style compact with description" +msgstr "kompakt listestil med beskrivelse" + +# +msgid "list style default" +msgstr "normal listestil" + +# +msgid "list style single line" +msgstr "enkelt linie listestil" + +msgid "literature" +msgstr "" + +msgid "live broadcast" +msgstr "" + +# +msgid "locked" +msgstr "låst " + +# +msgid "loopthrough to" +msgstr "gennemløb til" + +msgid "magazines/reports/documentary" +msgstr "" + +# +msgid "manual" +msgstr "manuelt" + +msgid "martial sports" +msgstr "" + +msgid "medicine/physiology/psychology" +msgstr "" + +# +msgid "menu" +msgstr "menu" + +# +msgid "mins" +msgstr "min" + +# +msgid "minutes" +msgstr "minutter" + +# +msgid "month" +msgstr "måned" + +msgid "motor sport" +msgstr "" + +msgid "motoring" +msgstr "" + +# +msgid "move down to last entry" +msgstr "flyt ned til sidste indtastning" + +# +msgid "move down to next entry" +msgstr "flyrt ned til næste indtastning" + +# +msgid "move up to first entry" +msgstr "flyt op til første indtastning" + +# +msgid "move up to previous entry" +msgstr "flyt op til foregående indtastning" + +msgid "movie/drama (general)" +msgstr "" + +# +msgid "multinorm" +msgstr "multinorm" + +msgid "music/ballet/dance (general)" +msgstr "" + +msgid "musical/opera" +msgstr "" + +msgid "nature/animals/environment" +msgstr "" + +# +msgid "never" +msgstr "aldrig" + +msgid "new media" +msgstr "" + +msgid "news magazine" +msgstr "" + +msgid "news/current affairs (general)" +msgstr "" + +msgid "news/weather report" +msgstr "" + +# +msgid "no" +msgstr "nej" + +# +msgid "no CAId selected" +msgstr "ingen CAId valgt" + +# +msgid "no CI slots found" +msgstr "ingen CI slots fundet" + +# +msgid "no module found" +msgstr "ingen modul fundet" + +msgid "no storage devices found" +msgstr "ingen lagerenhed fundet" + +# +msgid "none" +msgstr "ingen" + +msgid "normal" +msgstr "" + +# +msgid "not configured" +msgstr "ikke konfigureret" + +# +msgid "not locked" +msgstr "ikke låst" + +msgid "not supported" +msgstr "ikke supporteret" + +# +msgid "not used" +msgstr "ikke anvendt" + +# +msgid "nothing connected" +msgstr "Intet tilsluttet" + +# +msgid "of a DUAL layer medium used." +msgstr "af et DOBBELT lags media anvendt." + +# +msgid "of a SINGLE layer medium used." +msgstr "af et ENKELT lags media anvendt." + +# +msgid "off" +msgstr "fra" + +msgid "offset is" +msgstr "offset er" + +# +msgid "on" +msgstr "til" + +# +msgid "on READ ONLY medium." +msgstr "på LÆS KUN medie" + +msgid "on end of movie" +msgstr "" + +# +msgid "once" +msgstr "en gang" + +msgid "only from deep standby" +msgstr "" + +msgid "only from standby" +msgstr "" + +msgid "open EPG..." +msgstr "" + +msgid "open Info..." +msgstr "" + +# +msgid "open nameserver configuration" +msgstr "åbn navneserver opsætning" + +msgid "original" +msgstr "" + +msgid "original language" +msgstr "" + +# +msgid "pass" +msgstr "OK" + +msgid "performing arts" +msgstr "" + +msgid "play as picture in picture" +msgstr "afspil som Billede i Billede" + +msgid "play in mainwindow" +msgstr "afspil i hovedvindue" + +# +msgid "please press OK when ready" +msgstr "tryk venligst OK når du er klar" + +# +msgid "please wait, loading picture..." +msgstr "vent venligst, henter billede..." + +msgid "popular culture/traditional arts" +msgstr "" + +msgid "pre-school children's program" +msgstr "" + +msgid "receiver software because updates are available." +msgstr "" + +# +msgid "record" +msgstr "optage" + +# +msgid "recording..." +msgstr "optager..." + +# +msgid "red" +msgstr "rød" + +msgid "religion" +msgstr "" + +msgid "remarkable people" +msgstr "" + +# +msgid "remove after this position" +msgstr "fjern efter denne position" + +# +msgid "remove all alternatives" +msgstr "fjern alle alternativer" + +# +msgid "remove all new found flags" +msgstr "fjern alle nye fundne flag" + +# +msgid "remove before this position" +msgstr "fjern før denne position" + +# +msgid "remove bookmark" +msgstr "fjern bogmærke" + +# +msgid "remove directory" +msgstr "fjern mappe" + +# +msgid "remove entry" +msgstr "fjern indgang" + +# +msgid "remove from parental protection" +msgstr "fjern fra forældre beskyttelse" + +# +msgid "remove new found flag" +msgstr "fjern nye fundne flag" + +# +msgid "remove selected satellite" +msgstr "fjern valgte satellit" + +# +msgid "remove this mark" +msgstr "fjern dette mærke" + +msgid "rename entry" +msgstr "" + +# +msgid "repeat playlist" +msgstr "gentag afspilningsliste" + +# +msgid "repeated" +msgstr "gentaget" + +msgid "reverse by date" +msgstr "omvendt dato" + +# +msgid "rewind to the previous chapter" +msgstr "kør tilbage til forrige kapitel" + +# +msgid "right" +msgstr "højre" + +msgid "right, wrapped" +msgstr "" + +msgid "rock/pop" +msgstr "" + +msgid "romance" +msgstr "" + +# +msgid "save last directory on exit" +msgstr "gem seneste mappe ved afbrydelse" + +# +msgid "save playlist on exit" +msgstr "gem afspilningsliste ved afbrydelse" + +# +msgid "scan state" +msgstr "søge status" + +msgid "science fiction/fantasy/horror" +msgstr "" + +# +msgid "second cable of motorized LNB" +msgstr "sekundært kabel fra motor LNB" + +# +msgid "seconds" +msgstr "sekunder" + +# +msgid "select" +msgstr "vælg" + +# +msgid "select CAId's" +msgstr "vælg CAId's" + +msgid "select EPG..." +msgstr "" + +msgid "select Info..." +msgstr "" + +# +msgid "select menu entry" +msgstr "vælg meny indgang" + +# +msgid "select movie" +msgstr "vælg film" + +msgid "select the movie path" +msgstr "" + +msgid "serious music/classic music" +msgstr "" + +msgid "serious/classical/religious/historical movie/drama" +msgstr "" + +msgid "service PIN" +msgstr "Kanalliste PIN" + +msgid "set as startup service" +msgstr "Sæt som startkanal" + +msgid "setup PIN" +msgstr "Opsæt PIN" + +# +msgid "show DVD main menu" +msgstr "vis DVD hoved menu" + +msgid "show all tags" +msgstr "vis alle tags" + +# +msgid "show alternatives" +msgstr "Vis alternativer" + +# +msgid "show event details" +msgstr "vis program detaljer" + +msgid "show extended description" +msgstr "" + +msgid "show mediaplayer on mainmenu" +msgstr "vis mediaplayer på hovedmenu" + +msgid "show softwaremanager in setup menu" +msgstr "" + +msgid "show softwaremanager on blue button" +msgstr "" + +msgid "show tag menu" +msgstr "" + +# +msgid "show transponder info" +msgstr "vis transponer info" + +msgid "show/game show (general)" +msgstr "" + +msgid "shuffle" +msgstr "bland" + +# +msgid "shut down" +msgstr "afslut" + +# +msgid "simple" +msgstr "enkel" + +# +msgid "skip backward" +msgstr "drop tilbage" + +# +msgid "skip forward" +msgstr "drop fremad" + +msgid "soap/melodram/folkloric" +msgstr "" + +msgid "social/political issues/economics (general)" +msgstr "" + +msgid "social/spiritual science" +msgstr "" + +msgid "sorting of playlists" +msgstr "sortering af spilleliste" + +# +msgid "special characters" +msgstr "special karakterer" + +msgid "special events" +msgstr "" + +msgid "special format data DVD (HDTV compatible)" +msgstr "" + +msgid "sports (general)" +msgstr "" + +msgid "sports magazine" +msgstr "" + +# +msgid "standard" +msgstr "normal" + +# +msgid "start cut here" +msgstr "start klip her" + +# +msgid "start directory" +msgstr "start mappe" + +msgid "stepsize" +msgstr "trinstørrelse" + +# +msgid "stereo" +msgstr "stereo" + +msgid "stop using as startup service" +msgstr "stop brug som startkanal" + +# +msgid "switch to bookmarks" +msgstr "skift til bogmærker" + +# +msgid "switch to filelist" +msgstr "skift til filliste" + +# +msgid "switch to the next angle" +msgstr "skift til næste vinkel" + +# +msgid "switch to the next audio track" +msgstr "skift til næste lyd spor" + +# +msgid "switch to the next subtitle language" +msgstr "skift til næste undertekst sprog" + +msgid "talk show" +msgstr "" + +msgid "team sports" +msgstr "" + +msgid "technology/natural science" +msgstr "" + +# +msgid "template file" +msgstr "skabelon fil" + +msgid "tennis/squash" +msgstr "" + +# +msgid "this recording" +msgstr "denne optagelse" + +# +msgid "this service is protected by a parental control pin" +msgstr "denne service er beskyttet af forældre kontrol " + +# +msgid "toggle time, chapter, audio, subtitle info" +msgstr "skift mellem tid, kapitel, lyd, undertekst info" + +msgid "top" +msgstr "" + +msgid "tourism/travel" +msgstr "" + +msgid "true" +msgstr "rigtig" + +msgid "unavailable" +msgstr "" + +# +msgid "unconfirmed" +msgstr "ubekræftet" + +msgid "undefined" +msgstr "" + +# +msgid "unknown" +msgstr "ukendt" + +# +msgid "unknown service" +msgstr "ukendt kanal" + +msgid "unpublished" +msgstr "" + +# +msgid "until standby/restart" +msgstr "indtil standby/genstart" + +# +msgid "user defined" +msgstr "brugerdefineret" + +msgid "variety show" +msgstr "" + +# +msgid "vertical" +msgstr "vertikal" + +# +msgid "wait for ci..." +msgstr "vent på CA..." + +# +msgid "wait for mmi..." +msgstr "vent på mmi..." + +# +msgid "waiting" +msgstr "venter" + +msgid "water sport" +msgstr "" + +# +msgid "weekly" +msgstr "ugentlig" + +msgid "west" +msgstr "vest" + +msgid "when PiPzap enabled zap channel down..." +msgstr "" + +msgid "when PiPzap enabled zap channel up..." +msgstr "" + +msgid "white" +msgstr "hvid" + +# +msgid "whitelist" +msgstr "hvidliste" + +msgid "width" +msgstr "bredde" + +msgid "winter sport" +msgstr "" + +msgid "wireless network interface" +msgstr "tråløst netværkskort" + +#, python-format +msgid "with %d error" +msgid_plural "with %d errors" +msgstr[0] "" +msgstr[1] "" + +# +msgid "working" +msgstr "fungerer" + +# +msgid "yellow" +msgstr "gul" + +# +msgid "yes" +msgstr "ja" + +# +msgid "yes (keep feeds)" +msgstr "ja (behold feeds)" + +# +msgid "zap" +msgstr "skift" + +msgid "zap and record" +msgstr "" + +# +msgid "zapped" +msgstr "skiftet" + +# +#~ msgid "AA" +#~ msgstr "AA" + +# +#~ msgid "AB" +#~ msgstr "AB" + +#, fuzzy +#~ msgid "Activate PiP" +#~ msgstr "Aktiver BiB" + +#, fuzzy +#~ msgid "Add/remove timer for current event" +#~ msgstr "Tilføj/Fjern timer for dette program" + +#~ msgid "Adjust HDMI CEC settings" +#~ msgstr "Juster HDMI CEC indstillinger" + +# +#, fuzzy +#~ msgid "All satellites" +#~ msgstr "Alle satellitter" + +# +#~ msgid "BA" +#~ msgstr "BA" + +# +#~ msgid "BB" +#~ msgstr "BB" + +# +#~ msgid "Behavior of 'pause' when paused" +#~ msgstr "Opførsel af 'pause' ved aktivering" + +# +#~ msgid "Committed DiSEqC command" +#~ msgstr "Kommiteret DiSEqC kommando" + +# +#~ msgid "DiSEqC repeats" +#~ msgstr "DiSEqC gentagelser" + +#~ msgid "Goto specific data/time" +#~ msgstr "Gå til specifik dato/tid" + +# +#~ msgid "No satellite frontend found!!" +#~ msgstr "Ingen satellit frontend fundet!!" + +#~ msgid "Press '0' to toggle internal/external PiP." +#~ msgstr "Tryk nul for at skifte mellem BiB" + +# +#~ msgid "Remove timer" +#~ msgstr "Fjern timer" + +# +#~ msgid "Send DiSEqC" +#~ msgstr "Sender DiSEqC" + +# +#, fuzzy +#~ msgid "Switch next channel" +#~ msgstr "næste kanal" + +#~ msgid "Tuning step size" +#~ msgstr "Tuning trin størrelse" + +# +#~ msgid "Uncommitted DiSEqC command" +#~ msgstr "Ukommiteret DiSEqC kommando" + +# +#~ msgid "Zap back to service before satfinder?" +#~ msgstr "Skift tilbage til kanal før sat søger?" + +#~ msgid "tuner is not supported" +#~ msgstr "tuner ikke supporteret" diff --git a/po/de.po b/po/de.po new file mode 100644 index 0000000..1fe9b89 --- /dev/null +++ b/po/de.po @@ -0,0 +1,8530 @@ +msgid "" +msgstr "" +"Project-Id-Version: enigma2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-07-21 19:08+0200\n" +"PO-Revision-Date: 2014-07-24 11:35+0100\n" +"Last-Translator: daddelfalk <OpenPLi>\n" +"Language-Team: OpenPLi <openpli.org>\n" +"Language: de\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n!=1);\n" +"X-Generator: Poedit 1.6.7\n" +"X-Poedit-SourceCharset: utf-8\n" + +msgid "" +"\n" +"Advanced options and settings." +msgstr "" +"\n" +"Erweiterte Optionen und Einstellungen." + +msgid "" +"\n" +"After pressing OK, please wait!" +msgstr "" +"\n" +"Nach dem Sie OK gedrückt haben, bitte warten!" + +msgid "" +"\n" +"Backup your receiver settings." +msgstr "" +"\n" +"Sichern Ihrer Receiver-Einstellungen." + +msgid "" +"\n" +"Edit the upgrade source address." +msgstr "" +"\n" +"Upgrade Quell-Adresse bearbeiten." + +msgid "" +"\n" +"Manage extensions or plugins for your receiver" +msgstr "" +"\n" +"Verwalten Sie die Erweiterungen und Plugins Ihres Receivers" + +msgid "" +"\n" +"Online update of your receiver software." +msgstr "" +"\n" +"Online-Update Ihrer Receiver-Software." + +msgid "" +"\n" +"Press OK on your remote control to continue." +msgstr "" +"\n" +"Drücken Sie OK, um fortzufahren." + +msgid "" +"\n" +"Restore your backups by date." +msgstr "" +"\n" +"Wiederherstellen Ihrer nach Datum sortierten Sicherungen." + +msgid "" +"\n" +"Restore your receiver settings." +msgstr "" +"\n" +"Wiederherstellen Ihrer Receiver-Einstellungen." + +msgid "" +"\n" +"Restore your receiver with a new firmware." +msgstr "" +"\n" +"Wiederherstellen Ihres Receivers mit einer neuen Firmware." + +msgid "" +"\n" +"Scan for local extensions and install them." +msgstr "" +"\n" +"Nach lokalen Erweiterungen suchen und diese installieren." + +msgid "" +"\n" +"Select your backup device.\n" +"Current device: " +msgstr "" +"\n" +"Wählen Sie Ihr Sicherungs-Laufwerk.\n" +"Aktuelles Laufwerk: " + +msgid "" +"\n" +"View, install and remove available or installed packages." +msgstr "" +"\n" +"Anzeigen, Installieren und Entfernen verfügbarer oder installierter Pakete." + +msgid " (PiP)" +msgstr " (PiP)" + +msgid " (Radio)" +msgstr " (Radio)" + +msgid " (TV)" +msgstr " (TV)" + +msgid " (disabled)" +msgstr "(deaktiviert)" + +msgid " (higher than any auto)" +msgstr "(höher als jedes auto)" + +msgid " (higher than rotor any auto)" +msgstr "(höher als Rotor kein auto)" + +msgid " (lower than any auto)" +msgstr " (geringer als in jedem auto)" + +msgid " extensions." +msgstr " Erweiterungen." + +msgid " ms" +msgstr " ms" + +msgid " packages selected." +msgstr " Pakete ausgewählt." + +msgid " updates available." +msgstr " Updates verfügbar. " + +#. TRANSLATORS: short time representation hour:minute +#, python-format +msgid "%2d:%02d" +msgstr "%2d:%02d" + +#. TRANSLATORS: full time representation hour:minute:seconds +#, python-format +msgid "%2d:%02d:%02d" +msgstr "%2d:%02d:%02d" + +msgid "%A %d %B" +msgstr "%A %d %B" + +#. TRANSLATORS: long date representations dayname daynum monthname in strftime() format! See 'man strftime' +msgid "%A %e %B" +msgstr "%A %e %B" + +#. TRANSLATORS: full date representation dayname daynum monthname year in strftime() format! See 'man strftime' +msgid "%A %e %B %Y" +msgstr "%A %e %B %Y" + +msgid "%H:%M" +msgstr "%H:%M" + +#. TRANSLATORS: short date representation short dayname daynum short monthname in strftime() format! See 'man strftime' +msgid "%a %e/%m" +msgstr "%a %e/%m" + +#. TRANSLATORS: long date representation short dayname daynum short monthname hour:minute in strftime() format! See 'man strftime' +msgid "%a %e/%m %-H:%M" +msgstr "%a %e/%m %-H:%M" + +#. TRANSLATORS: Intermediate scanning result, '%d' channel(s) have been found so far +#, python-format +msgid "%d channel found" +msgid_plural "%d channels found" +msgstr[0] "%d Kanal gefunden" +msgstr[1] "%d Kanäle gefunden" + +#, python-format +msgid "%d file" +msgid_plural "%d files" +msgstr[0] "%d Datei" +msgstr[1] "%d Dateien" + +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d Stunde" +msgstr[1] "%d Stunden" + +#, python-format +msgid "%d job is running in the background!" +msgid_plural "%d jobs are running in the background!" +msgstr[0] "Es läuft noch %d Job im Hintergrund!" +msgstr[1] "Es laufen noch %d Jobs im Hintergrund!" + +#, python-format +msgid "%d min" +msgstr "%d min" + +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d Minute" +msgstr[1] "%d Minuten" + +#, python-format +msgid "%d minutes" +msgstr "%d Minuten" + +#, python-format +msgid "%d pixel wide" +msgid_plural "%d pixels wide" +msgstr[0] "%d Bildpunkt groß" +msgstr[1] "%d Bildpunkte groß" + +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "%d Sekunde" +msgstr[1] "%d Sekunden" + +#, python-format +msgid "%d subdirectory" +msgid_plural "%d subdirectories" +msgstr[0] "%d Hauptverzeichnis" +msgstr[1] "%d Hauptverzeichnisse" + +#, python-format +msgid "%d wireless network found!" +msgid_plural "%d wireless networks found!" +msgstr[0] "%d Funk-Netzwerk gefunden!" +msgstr[1] "%d Funk-Netzwerke gefunden!" + +msgid "%d-%b-%Y %-H:%M" +msgstr "%d. %b %Y %-H:%M" + +msgid "%d-%m" +msgstr "%d-%m" + +msgid "%d.%B %Y" +msgstr "%d.%B %Y" + +#. TRANSLATORS: VFD hour:minute daynum short monthname in strftime() format! See 'man strftime' +msgid "%k:%M %e/%m" +msgstr "%k:%M %e/%m" + +#, python-format +msgid "%s %s free disk space" +msgstr "%s %s freier Festplattenspeicher" + +#, python-format +msgid "%s (%s)\n" +msgstr "%s (%s)\n" + +#. TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. +#, python-format +msgid "%s is no longer used. Should it be deleted?" +msgstr "%s wird nicht mehr benötigt. Möchten Sie ihn entfernen?" + +#, python-format +msgid "%s updated package available" +msgid_plural "%s updated packages available" +msgstr[0] "%s Aktualisierung verfügbar" +msgstr[1] "%s Aktualisierungen verfügbar" + +#, python-format +msgid "%s%d min" +msgstr "%s%d min" + +#, python-format +msgid "%s/%s: %s" +msgstr "%s/%s: %s" + +msgid "(ZAP)" +msgstr "(ZAP)" + +msgid "(empty)" +msgstr "(leer)" + +msgid "(show optional DVD audio menu)" +msgstr "(DVD-Tonmenü zeigen, falls vorh.)" + +msgid "* Only available if more than one interface is active." +msgstr "* Nur verfügbar, wenn mehr als ein Netzwerkadapter aktiv ist." + +msgid "/s" +msgstr "/s" + +msgid "0" +msgstr "0" + +msgid "1" +msgstr "1" + +msgid "1.0" +msgstr "1.0" + +msgid "1.1" +msgstr "1.1" + +msgid "1.2" +msgstr "1.2" + +msgid "12V output" +msgstr "12V-Ausgang" + +msgid "13 V" +msgstr "13 V" + +msgid "16:10" +msgstr "16:10" + +msgid "16:10 Letterbox" +msgstr "16:10 Letterbox" + +msgid "16:10 PanScan" +msgstr "16:10 PanScan" + +msgid "16:9" +msgstr "16:9" + +msgid "16:9 Letterbox" +msgstr "16:9 Letterbox" + +msgid "16:9 always" +msgstr "immer 16:9" + +msgid "18 V" +msgstr "18 V" + +msgid "2" +msgstr "2" + +msgid "23.976" +msgstr "23.976" + +msgid "24" +msgstr "24" + +msgid "25" +msgstr "25" + +msgid "29.97" +msgstr "29.97" + +msgid "3" +msgstr "3" + +msgid "30" +msgstr "30" + +msgid "3d mode" +msgstr "3D-Modus" + +msgid "4" +msgstr "4" + +msgid "4:3" +msgstr "4:3" + +msgid "4:3 Letterbox" +msgstr "4:3 Letterbox" + +msgid "4:3 PanScan" +msgstr "4:3 PanScan" + +msgid "5" +msgstr "5" + +msgid "6" +msgstr "6" + +msgid "7" +msgstr "7" + +msgid "8" +msgstr "8" + +msgid "9" +msgstr "9" + +#, python-format +msgid ": %s" +msgstr ": %s" + +msgid "<Current movielist location>" +msgstr "<Aktuelles Filmlisten-Verzeichnis>" + +msgid "<Default movie location>" +msgstr "<Standard Filmlisten-Verzeichnis>" + +msgid "<Last timer location>" +msgstr "<Letzter Timer Ort>" + +msgid "<unknown>" +msgstr "<unbekannt>" + +msgid "??" +msgstr "??" + +msgid "A" +msgstr "A" + +#, python-format +msgid "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" +msgstr "" +"Eine Konfigurationsdatei (%s) wurde seit der Installation verändert.\n" +"Wollen Sie diese Version behalten?" + +#, python-format +msgid "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" +msgstr "" +"Eine Konfigurationsdatei (%s) wurde seit der Installation verändert.\n" +"Wollen Sie diese Version behalten?" + +msgid "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"Ein Aufnahmetimer will Ihren Receiver in den Standby-Modus schalten.\n" +"Jetzt ausführen?" + +msgid "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"Ein Aufnahmetimer will Ihren Receiver ausschalten.\n" +"Jetzt ausschalten?" + +msgid "A graphical EPG for all services of an specific bouquet" +msgstr "Grafischer EPG für alle Kanäle eines bestimmten Bouquets" + +#, python-format +msgid "" +"A record has been started:\n" +"%s" +msgstr "" +"Eine Aufnahme wurde gestartet:\n" +"%s" + +msgid "" +"A recording is currently running.\n" +"What do you want to do?" +msgstr "" +"Zurzeit läuft eine Aufnahme.\n" +"Was möchten Sie tun?" + +msgid "" +"A recording is currently running. Please stop the recording before trying to " +"configure the positioner." +msgstr "" +"Zurzeit läuft eine Aufnahme. Bitte beenden Sie die Aufnahme, bevor Sie das " +"Rotor-Setup ausführen." + +msgid "" +"A recording is currently running. Please stop the recording before trying to " +"scan." +msgstr "" +"Zurzeit sind Aufnahmen aktiv. Bitte beenden Sie die Aufnahme, bevor Sie " +"scannen." + +msgid "" +"A recording is currently running. Please stop the recording before trying to " +"start the satfinder." +msgstr "" +"Zurzeit läuft eine Aufnahme. Bitte beenden Sie diese Aufnahme, bevor Sie den " +"Satelliten-Sucher starten." + +#, python-format +msgid "A required tool (%s) was not found." +msgstr "Ein erforderliches Hilfsprogramm (%s) wurde nicht gefunden." + +msgid "A search for available updates is currently in progress." +msgstr "Es wird gerade nach Aktualisierungen gesucht." + +msgid "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" +msgstr "" +"Eine zweite konfigurierte Netzwerkverbindung wurde gefunden.\n" +"\n" +"Wollen Sie diese zweite Netzwerkverbindung deaktivieren?" + +msgid "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"Ein Sleeptimer möchte Ihren Receiver in\n" +"den Standby-Modus schalten. Dies jetzt tun?" + +msgid "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"Ein Sleeptimer möchte Ihren Receiver\n" +"ausschalten. Jetzt herunterfahren?" + +msgid "A small overview of the available icon states and actions." +msgstr "Eine kurze Übersicht der verfügbaren Symbol Stati und Aktionen." + +msgid "" +"A timer failed to record!\n" +"Disable TV and try again?\n" +msgstr "" +"Timeraufnahme fehlgeschlagen.\n" +"Fernsehprogramm ändern und erneut versuchen?\n" + +msgid "A/V settings" +msgstr "A/V-Einstellungen" + +msgid "AC3/DTS downmix" +msgstr "AC3/DTS heruntermischen" + +msgid "Abort" +msgstr "Abbrechen" + +msgid "About" +msgstr "Über" + +msgid "About..." +msgstr "Über..." + +msgid "Accesspoint:" +msgstr "Zugangspunkt:" + +msgid "Action on long powerbutton press" +msgstr "Aktion nach langem Drücken auf Power" + +msgid "Action on short powerbutton press" +msgstr "Aktion beim kurzen Druck auf Power" + +msgid "Activate Picture in Picture" +msgstr "Bild im Bild aktivieren" + +msgid "Activate current configuration" +msgstr "Aktuelle Konfiguration verwenden" + +msgid "Activate network settings" +msgstr "Aktiviere Netzwerkeinstellungen" + +msgid "Activate the configured network settings." +msgstr "Aktiviere Netzwerkeinstellungen" + +msgid "Adapter settings" +msgstr "Adapter-Einstellungen" + +msgid "Add" +msgstr "Hinzufügen" + +msgid "Add Bookmark" +msgstr "Lesezeichen hinzufügen" + +msgid "Add a mark" +msgstr "Marker hinzufügen" + +msgid "Add a nameserver entry" +msgstr "DNS Servereintrag hinzufügen" + +msgid "Add a new title" +msgstr "Füge neuen Titel hinzu" + +msgid "Add bookmark" +msgstr "Lesezeichen hinzufügen" + +msgid "Add directory to playlist" +msgstr "Verzeichnis zur Wiedergabeliste hinzufügen" + +msgid "Add file to playlist" +msgstr "Datei zur Wiedergabeliste hinzufügen" + +msgid "Add files to playlist" +msgstr "Dateien zur Wiedergabeliste hinzufügen" + +msgid "Add more details to the crash log" +msgstr "Erzeuge detailierteren Fehlerbericht" + +msgid "Add provider" +msgstr "Provider hinzufügen" + +msgid "Add recording (enter recording duration)" +msgstr "Aufnahme hinzufügen (Aufnahmelänge eingeben)" + +msgid "Add recording (enter recording endtime)" +msgstr "Aufnahme hinzufügen (Aufnahmeendzeit eingeben)" + +msgid "Add recording (indefinitely)" +msgstr "Aufnahme hinzufügen (unbegrenzt)" + +msgid "Add recording (stop after current event)" +msgstr "Aufnahme hinzufügen (aktuelle Sendung)" + +msgid "Add service" +msgstr "Kanal hinzufügen" + +msgid "Add timer" +msgstr "Timer setzen" + +msgid "Add title" +msgstr "Titel hinzufügen" + +msgid "Add to bouquet" +msgstr "Zum Bouquet hinzufügen" + +msgid "Add to favourites" +msgstr "Zu Favoriten hinzufügen" + +msgid "Add/remove change timer for current event" +msgstr "Setze/Entferne Timer für aktuelle Sendung" + +msgid "Adjust 3D settings" +msgstr "3D Einstellungen" + +msgid "" +"Adjust the color settings so that all the color shades are distinguishable, " +"but appear as saturated as possible. If you are happy with the result, press " +"OK to close the video fine-tuning, or use the number keys to select other " +"test screens." +msgstr "" +"Verändern Sie die Farbeinstellungen, sodass Sie alle Farbabstufungen " +"voneinander unterscheiden können, diese aber so gesättigt wie möglich " +"dargestellt werden. Wenn Sie mit dem Ergebnis zufrieden sind, drücken Sie " +"OK, um die Feineinstellungen zu beenden. Mit den Zahlentasten können Sie " +"weitere Testbilder auswählen." + +msgid "Advanced" +msgstr "erweitert" + +msgid "Advanced options" +msgstr "Erweiterte Optionen" + +msgid "Advanced restore" +msgstr "Erweiterte Wiederherstellung" + +msgid "Advanced software" +msgstr "Erweiterte Software" + +msgid "Advanced software plugin" +msgstr "Erweitertes Software Plugin" + +msgid "Advanced video enhancement setup" +msgstr "Erweiterte A/V Einstellungen" + +msgid "Advanced video setup" +msgstr "Erweiterte Video-Einstellungen" + +msgid "After event" +msgstr "Nach der Sendung" + +msgid "Album" +msgstr "Album" + +msgid "Alignment of events" +msgstr "Ausrichtung der Sendungstitel" + +msgid "Alignment of service names" +msgstr "Ausrichtung der Sendernamen" + +msgid "All" +msgstr "Alle" + +msgid "All ages" +msgstr "Jedes Alter" + +msgid "All satellites 1 (USALS)" +msgstr "Alle Satelliten 1 (USALS)" + +msgid "All satellites 2 (USALS)" +msgstr "Alle Satelliten 2 (USALS)" + +msgid "All satellites 3 (USALS)" +msgstr "Alle Satelliten 3 (USALS)" + +msgid "All satellites 4 (USALS)" +msgstr "Alle Satelliten 4 (USALS)" + +msgid "Allocate" +msgstr "Zuweisen" + +msgid "Allocate unused memory index" +msgstr "Zuordnen ungenutzer Rotor Index-Positionen" + +msgid "Allow quit movieplayer with exit" +msgstr "Schließe Movieplayer mit Exit" + +msgid "Allow subtitle language to equal audio language" +msgstr "Erlaube Untertitel der Toneinstellung entsprechend" + +msgid "Allow subtitles for hearing impaired" +msgstr "Erlaube Untertitel für Hörgeschädigte" + +msgid "Alpha" +msgstr "Transparenz" + +msgid "Alternative" +msgstr "Alternativen hinzufügen" + +msgid "Alternative numbering mode" +msgstr "Alternativer Nummerierungs-Modus" + +msgid "Alternative services tuner priority" +msgstr "Tuner-Priorität bei alternativen Kanälen" + +msgid "Always ask" +msgstr "Immer nachfragen" + +msgid "Always hide infobar" +msgstr "Infobar immer ausblenden" + +msgid "An empty filename is illegal." +msgstr "Leerer Dateiname nicht erlaubt." + +msgid "An error occurred while downloading the packetlist. Please try again." +msgstr "" +"Beim Herunterladen ist ein Fehler aufgetreten. Bitte versuchen Sie es erneut." + +msgid "An unknown error occurred!" +msgstr "Es ist ein unbekannter Fehler aufgetreten!" + +msgid "And will put your receiver in standby over " +msgstr "Receiver in den Standby versetzen nach " + +msgid "Any activity" +msgstr "Irgendeine Aktivität" + +msgid "Arabic" +msgstr "Arabisch" + +msgid "Are you sure to remove this entry?" +msgstr "Soll dieser Eintrag wirklich gelöscht werden?" + +msgid "" +"Are you sure you want to activate this network configuration?\n" +"\n" +msgstr "" +"Sind Sie sicher, dass diese Netzwerk-Konfiguration aktiviert werden soll?\n" +"\n" + +msgid "" +"Are you sure you want to delete\n" +"the following backup:\n" +msgstr "" +"Sind Sie sicher, dass Sie die folgende Sicherung\n" +"löschen möchten:\n" + +msgid "Are you sure you want to exit this wizard?" +msgstr "Sind Sie sicher, dass Sie diesen Assistenten verlassen möchten?" + +msgid "" +"Are you sure you want to restart your network interfaces?\n" +"\n" +msgstr "" +"Sind Sie sicher, dass Sie die Netzwerkadapter neu starten wollen?\n" +"\n" + +#, python-format +msgid "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Möchten Sie die folgende Sicherung wiederherstellen?\n" +"%s\n" +"Die Benutzeroberfläche wird danach neu gestartet!" + +msgid "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Möchten Sie wirklich diese Sicherung wiederherstellen?\n" +"Der Receiver wird danach neu gestartet!" + +msgid "Artist" +msgstr "Künstler" + +msgid "Arts/Culture" +msgstr "Kunst/Kultur" + +msgid "Ask user" +msgstr "Nutzer fragen" + +msgid "Aspect ratio" +msgstr "Seitenverhältnis" + +msgid "Assigned CAIds:" +msgstr "Zugewiesene CAIDs:" + +msgid "Assigned services/provider:" +msgstr "Zugewiesene Kanäle/Provider:" + +msgid "At beginning" +msgstr "Am Anfang" + +msgid "At end" +msgstr "Am Ende" + +msgid "Audio" +msgstr "Ton" + +msgid "Audio PID" +msgstr "Ton PID" + +msgid "Audio language selection 1" +msgstr "Ton Sprachwahl 1" + +msgid "Audio language selection 2" +msgstr "Ton Sprachwahl 2" + +msgid "Audio language selection 3" +msgstr "Ton Sprachwahl 3" + +msgid "Audio language selection 4" +msgstr "Ton Sprachwahl 4" + +msgid "Audio options..." +msgstr "Ton-Optionen..." + +#, python-format +msgid "Audio track (%s) format" +msgstr "Format der Tonspur (%s)" + +#, python-format +msgid "Audio track (%s) language" +msgstr "Sprache der Tonspur (%s)" + +msgid "Author: " +msgstr "Autor: " + +msgid "Authoring mode" +msgstr "Autorenmodus" + +#. TRANSLATORS: (aspect ratio policy: always try to display as fullscreen, when there is no content (black bars) on left/right, even if this breaks the aspect. +msgid "Auto" +msgstr "Auto" + +msgid "Auto chapter split every ? minutes (0=never)" +msgstr "Automatische Kapitelwechsel alle ? Minuten (0=nie)" + +msgid "Auto flesh" +msgstr "Auto Flesh" + +msgid "Auto focus" +msgstr "Auto Fokus" + +msgid "Auto focus commencing ..." +msgstr "Auto-Fokusierung beginnt ..." + +msgid "Auto language selection" +msgstr "Automatische Sprachauswahl" + +msgid "Auto scart switching" +msgstr "Automatische Scart-Umschaltung" + +msgid "Automatic" +msgstr "Automatisch" + +msgid "Automatic scan" +msgstr "Automatische Suche" + +msgid "Automatically start timeshift after" +msgstr "Automatischer Timeshift-Start nach" + +msgid "Automatically turn on external subtitles" +msgstr "Externe Untertitel automatisch aktivieren" + +msgid "Available format variables" +msgstr "Verfügbare Formatierungsvariablen" + +msgid "B" +msgstr "B" + +msgid "BER" +msgstr "BER" + +msgid "BER:" +msgstr "BER:" + +msgid "Back" +msgstr "Zurück" + +msgid "Background" +msgstr "Hintergrund" + +msgid "Background color" +msgstr "Hintergrundfarbe" + +msgid "Background delete option" +msgstr "Löschen im Hintergrund" + +msgid "Background delete speed" +msgstr "Geschwindigkeit beim Löschen im Hintergrund" + +msgid "Backup completed." +msgstr "Sicherung abgeschlossen." + +msgid "Backup failed." +msgstr "Sicherung fehlgeschlagen." + +msgid "Backup is running..." +msgstr "Sicherung wird ausgeführt..." + +msgid "Backup system settings" +msgstr "Einstellungen sichern" + +msgid "Band" +msgstr "Band" + +msgid "Bandwidth" +msgstr "Bandbreite" + +msgid "Basque" +msgstr "Baskisch" + +msgid "Begin time" +msgstr "Startzeit" + +msgid "Behavior of 'pause and ok' when paused" +msgstr "Verhalten von 'Pause und OK' wenn abgehalten" + +msgid "Behavior of 0 key in PiP-mode" +msgstr "Verhalten der '0'-Taste bei Bild im Bild" + +msgid "Behavior when a movie is started" +msgstr "Verhalten beim Start eines Films" + +msgid "Behavior when a movie is stopped" +msgstr "Verhalten beim Stoppen eines Films" + +msgid "Behavior when a movie reaches the end" +msgstr "Verhalten beim Filmende" + +msgid "Big PiP" +msgstr "Großes PiP" + +msgid "Bitrate:" +msgstr "Bitrate:" + +msgid "Black screen" +msgstr "Schwarzes Bild" + +msgid "Black screen till locked" +msgstr "Schwarzes Bild bis Abschluß" + +msgid "Block noise reduction" +msgstr "Block Noise Reduzierung" + +msgid "Blue boost" +msgstr "Blauanteil erhöhen" + +msgid "Bookmarks" +msgstr "Lesezeichen" + +msgid "Brightness" +msgstr "Helligkeit" + +msgid "Bulgarian" +msgstr "Bulgarisch" + +msgid "Burn DVD" +msgstr "Brenne DVD" + +#, python-format +msgid "Burn audio track (%s)" +msgstr "Brenne Audiospur (%s)" + +msgid "Burn existing image to DVD" +msgstr "Vorhandenes Image auf DVD brennen" + +msgid "Burn to DVD" +msgstr "Auf DVD brennen" + +msgid "Bus: " +msgstr "Bus:" + +msgid "" +"By default, SNR will be shown in dB (when supported by the tuner). This " +"setting forces SNR to be shown as a percentage instead." +msgstr "" +"Standardmässig wird SNR in Dezibel angezeigt (falls vom Tuner " +"unterstütztDiese Einstellung erzwingt die Darstellung von SNR in Prozent." + +msgid "C" +msgstr "C" + +msgid "C-Band" +msgstr "C-Band" + +msgid "CH" +msgstr "Kanal" + +msgid "CI assignment" +msgstr "CI-Zuweisung" + +msgid "CVBS" +msgstr "CVBS" + +msgid "Cable" +msgstr "Kabel" + +msgid "Cable Scan" +msgstr "Kabel Suche" + +msgid "Cache thumbnails" +msgstr "Vorschaubilder zwischenspeichern" + +msgid "Calculate" +msgstr "Berechnen" + +msgid "Calculate all positions" +msgstr "Berechne alle Positionen" + +msgid "Calculation complete" +msgstr "Berechnung abgeschlossen" + +msgid "Calibrate" +msgstr "Kalibrieren" + +msgid "Can be used for different fps between external subtitles and video." +msgstr "" +"Kann für unterschiedliche fps-Werte zwischen externen Untertiteln und dem " +"Video verwendet werden." + +msgid "Cancel" +msgstr "Abbrechen" + +msgid "Cannot determine" +msgstr "Konnte nicht feststellen: " + +msgid "Cannot find any signal ..., aborting !" +msgstr "Kein Signal erkannt ..., Abbruch !" + +msgid "Cannot move files on a different disk or system to the trash can" +msgstr "" +"Dateien auf einem anderen System können nicht in den Mülleimer verschoben " +"werden!" + +msgid "Cannot move to trash can" +msgstr "Die Datei konnte nicht in den Mülleimer verschoben werden" + +msgid "Capacity: " +msgstr "Kapazität: " + +msgid "Card" +msgstr "Karte" + +msgid "Cascade PiP" +msgstr "Kaskadiere PiP" + +msgid "Center DVB subtitles" +msgstr "DVB-Untertitel mittig" + +msgid "Center time-labels and remove date" +msgstr "Zentriere Zeitmarken und entferne Datum" + +msgid "Change bouquets in quickzap" +msgstr "Bouquet wechseln beim Quickzap" + +msgid "Change pin code" +msgstr "PIN-Code ändern" + +msgid "Change recording (duration)" +msgstr "Aufnahme ändern (Aufnahmelänge)" + +msgid "Change recording (endtime)" +msgstr "Aufnahme ändern (Aufnahmeendzeit)" + +msgid "Change repeat and delay settings?" +msgstr "Einstellung für Wiederholung und Verzögerung anpassen?" + +msgid "Change service PIN" +msgstr "Kanal-PIN ändern" + +msgid "Change service PINs" +msgstr "Kanal-PINs ändern" + +msgid "Change setup PIN" +msgstr "Setup PIN ändern" + +msgid "Change step size" +msgstr "Schrittweite ändern." + +msgid "Change timer" +msgstr "Timer ändern" + +msgid "Changelog" +msgstr "Versionshistorie" + +msgid "Channel" +msgstr "Kanal" + +msgid "Channel list type" +msgstr "Kanallisten-Typ" + +msgid "Channel not in services list" +msgstr "Kanal nicht in der Kanalliste" + +msgid "Channel selection" +msgstr "Kanalliste" + +msgid "Channel:" +msgstr "Kanal:" + +msgid "Channellist menu" +msgstr "Kanallisten-Menü" + +msgid "Chap." +msgstr "Kap." + +msgid "Chapter" +msgstr "Kapitel" + +msgid "Chapter:" +msgstr "Kapitel:" + +msgid "Check" +msgstr "Test" + +msgid "Check the internet connection" +msgstr "Überprüfe die Internet-Verbindung" + +msgid "Check the internet connection again" +msgstr "Wiederholter Test der Internet-Verbindung" + +msgid "Checking filesystem..." +msgstr "Überprüfe Dateisystem..." + +msgid "Checking the internet connection" +msgstr "Überprüfung der Internet-Verbindung" + +#, python-format +msgid "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" +msgstr "" +"Überprüfe Tuner %d\n" +"DiSEqC Port %s auf %s" + +msgid "Children/Youth" +msgstr "Kinder/Jugend" + +msgid "Choose which tuner to configure." +msgstr "Wählen Sie den Tuner aus." + +msgid "Circular left" +msgstr "Links-Zirkular" + +msgid "Circular right" +msgstr "Rechts-Zirkular" + +msgid "Cleanup" +msgstr "Aufräumen" + +msgid "Clear" +msgstr "Löschen" + +msgid "Clear before scan" +msgstr "Vor der Suche löschen" + +msgid "Clear fixed" +msgstr "Neue Adresse" + +msgid "Clear log" +msgstr "Log löschen" + +msgid "Clear playlist" +msgstr "Wiedergabeliste leeren" + +msgid "Close" +msgstr "Schließen" + +msgid "Close PiP on exit" +msgstr "Schließe PiP mit Exit" + +msgid "Close title selection" +msgstr "Titelauswahl schließen" + +msgid "Code rate HP" +msgstr "Empfangsrate HP" + +msgid "Code rate LP" +msgstr "Empfangsrate LP" + +msgid "Coderate HP" +msgstr "Empfangsrate HP" + +msgid "Coderate LP" +msgstr "Empfangsrate LP" + +msgid "Collection name" +msgstr "Zusammenstellungsname" + +msgid "Collection settings" +msgstr "Zusammenstellungs-Einstellungen" + +msgid "Color format" +msgstr "Farbformat" + +msgid "Command execution..." +msgstr "Befehl wird ausgeführt..." + +msgid "Command order" +msgstr "Befehlsfolge" + +msgid "Common Interface" +msgstr "Common Interface" + +msgid "Common Interface assignment" +msgstr "Common Interface Zuweisung" + +msgid "Communication" +msgstr "Kommunikation" + +msgid "Compact flash" +msgstr "Compact Flash" + +msgid "Complete" +msgstr "Komplett" + +msgid "Complex (allows mixing audio tracks and aspects)" +msgstr "Komplex (erlaubt Mischen versch. Ton-u. Bildformate)" + +msgid "Composition of the recording filenames" +msgstr "Zusammensetzung des Aufnahme-Dateinamens" + +msgid "Configuration mode" +msgstr "Konfiguration" + +#, python-format +msgid "Configuration mode: %s" +msgstr "Konfigurationsmodus: %s" + +msgid "Configuration..." +msgstr "Konfiguration..." + +msgid "" +"Configure an additional delay to improve external subtitle synchronisation." +msgstr "" +"Konfiguriert eine zusätzliche Verzögerung zur besseren Synchronisation " +"externer Untertitel." + +msgid "Configure an additional delay to improve subtitle synchronisation." +msgstr "" +"Konfiguriert eine zusätzliche Verzögerung zur besseren Synchronisation der " +"Untertitel." + +msgid "" +"Configure for how long the infobar will remain visible after activation." +msgstr "" +"Konfigurieren Sie wie lange die Infoleiste nach Einblendung sichtbar bleibt." + +msgid "" +"Configure for how many minutes finished events should remain visible in the " +"EPG. Useful when you need information about an event which has just " +"finished, or has been delayed." +msgstr "" +"Konfigurieren Sie wie viele Minuten eine abgeschlossene Sendung in der EPG " +"sichtbar bleiben soll. Nützlich wenn Sie Informationen zu einer Sendung " +"benötigen, die bereits abgeschlossen war bzw. eine Sendung länger dauerte." + +msgid "Configure how recording filenames are constructed." +msgstr "Aufnahme-Dateiname konfigurieren" + +msgid "Configure how the fan should operate" +msgstr "Lüfterverhalten konfigurieren" + +msgid "" +"Configure if and how crypto icons will be shown in the channel selection " +"list." +msgstr "" +"Konfiguriere, ob und wie die Verschlüsselungssymbole in der Kanalliste " +"angezeigt werden." + +msgid "" +"Configure if and how long the latest service in the PiP will be remembered." +msgstr "Konfiguriere, ob und wie lange der letzte PiP-Kanal gespeichert wird." + +msgid "" +"Configure if and how service type icons will be shown in the channel " +"selection list." +msgstr "" +"Konfiguriert, ob und wie Service-Typ Icons in der Kanalliste angezeigt " +"werden." + +msgid "" +"Configure if and how wide columns will be shown in the channel selection " +"list." +msgstr "" +"Konfiguriere, ob und wie große Spalten in der Kanalliste angezeigt werden." + +msgid "" +"Configure if service picons will be shown in the channel selection list." +msgstr "Falls aktiviert, werden Picons in der Kanalauswahlliste angezeigt." + +msgid "Configure interface" +msgstr "Netzwerkkarte konfigurieren" + +msgid "Configure nameservers" +msgstr "DNS-Server konfigurieren" + +msgid "Configure on which devices the background delete option should be used." +msgstr "" +"Einstellung der Geräte bei denen die Hintergrund-Löschung aktiviert werden " +"soll." + +msgid "Configure remote control type" +msgstr "Fernbedienungtyp einstellen" + +msgid "Configure the DiSEqC mode for this LNB." +msgstr "DiSEqC Modus Einstellung für diesen LNB." + +msgid "Configure the IP address." +msgstr "IP Adresse konfigurieren." + +msgid "Configure the aspect ratio of the screen." +msgstr "Bildformat des Bildschirms konfigurieren." + +msgid "" +"Configure the behavior of the 'pause and ok' key when movie playback is " +"already paused." +msgstr "" +"Konfiguriere das Verhalten der 'Pause und OK-Taste, wenn die Filmwiedergabe " +"bereits gestoppt wurde." + +msgid "Configure the behavior when movie playback is manually stopped." +msgstr "Verhalten beim Stoppen eines Films" + +msgid "Configure the behavior when movie playback is started." +msgstr "Verhalten beim Start eines Films" + +msgid "" +"Configure the behavior when reaching the end of a movie, during movie " +"playback." +msgstr "Verhalten beim Erreichen des Filmendes während der Film-Wiedergabe." + +msgid "" +"Configure the border width of the subtitles. The dark border makes the " +"subtitles easier to read on a light background." +msgstr "" +"Anpassung der Dicke des Untertitel-Rahmens. Mit dunklem Rahmen sind die " +"Untertitel auf hellen Hintergrund leichter zu lesen." + +msgid "" +"Configure the brightness level of the front panel display during standby." +msgstr "Anpassung der Helligkeit des Frontdisplays im Standby-Modus." + +msgid "Configure the brightness level of the front panel display." +msgstr "Anpassung der Helligkeit des Frontdisplays." + +msgid "" +"Configure the color of the external subtitles, alternative (normal in white, " +"italic in yellow, bold in cyan, underscore in green), white or yellow." +msgstr "" +"Konfiguration externe Untertitel Farbe, Alternativ (normal in Weiß, kursiv " +"in Gelb, fett in Cyan, Unterstriche in Grün), Weiß oder Gelb." + +msgid "Configure the color of the teletext subtitles." +msgstr "Farbe der Teletext Untertitel." + +msgid "Configure the contrast level of the front panel display." +msgstr "Kontrast des Frontdisplays." + +msgid "" +"Configure the cursor behaviour in the channel selection list. When opening " +"the channel selection list you can keep on the current service or already " +"select up/down and you are able to revert the B+/B- buttons." +msgstr "" +"Konfiguriert das Verhalten des Cursors in Kanalauswahllisten. Beim Öffnen " +"von Kanalauswahllisten kann der Cursor auf dem aktuellen Sender bleiben oder " +"bereits den oberen/unteren Kanal markieren (oben/unten kann dabei nach " +"Wunsch invertiert werden)." + +msgid "" +"Configure the duration in hours the receiver should go to standby when the " +"receiver is not controlled." +msgstr "" +"Konfiguriere den Zeitraum in Stunden, nachdem der Receiver in den Standby " +"wechseln soll, wenn dieser nicht mehr gesteuert wird." + +msgid "Configure the duration in minutes for the screensaver." +msgstr "Konfiguriert die Dauer in Minuten bis zum Start des Screensavers." + +msgid "" +"Configure the duration in minutes for the sleeptimer. Select this entry and " +"click OK or green to start/stop the sleeptimer" +msgstr "" +"Konfiguriere den Zeitraum in Minuten für den Ausschalt-Timer. Wähle diesen " +"Eintrag aus und drücke OK oder die grüne Taste, um den Ausschalt-Timer zu " +"staren/beenden." + +msgid "" +"Configure the duration when the receiver should go to shut down in case the " +"receiver is in standby mode." +msgstr "" +"Konfiguriere die Dauer, wann der Receiver ausgeschaltet werden soll, falls " +"er sich im Standby-Modus befindet." + +msgid "Configure the first audio language (highest priority)." +msgstr "Wahl der ersten Audiospur-Sprache (höchste Priorität)." + +msgid "Configure the first subtitle language (highest priority)." +msgstr "Wahl der ersten Untertitel-Sprache (höchste Priorität)." + +msgid "Configure the font size of the subtitles." +msgstr "Schriftgrösse der Untertitel." + +msgid "Configure the fourth audio language." +msgstr "Wahl der vierten Audiospur-Sprache." + +msgid "Configure the fourth subtitle language." +msgstr "Wahl der vierten Untertitel Sprache." + +msgid "Configure the function of a long press on the power button." +msgstr "Funktion bei längerem Drücken der Einschalt-Taste." + +msgid "Configure the function of a short press on the power button." +msgstr "Funktion dei kurzem Drücken der Einschalt-Taste." + +msgid "Configure the function of the '0' button do when PIP is active." +msgstr "Funktion der '0' Taste während Bild im Bild aktiv ist." + +msgid "Configure the gateway." +msgstr "Gateway einstellen" + +msgid "Configure the general audio delay of Dolby Digital sound tracks." +msgstr "Generelle Audio-Verzögerung von Dolby Digital Tonspuren." + +msgid "Configure the general audio delay of stereo sound tracks." +msgstr "Generelle Audio-Verzögerund von Stereo Tonspuren." + +msgid "" +"Configure the hard disk drive to go to standby after the specified idle time." +msgstr "Standby der Festplatte nach einer gewissen Zeit." + +msgid "Configure the horizontal alignment of the subtitles." +msgstr "Horizontale Ausrichtung der Untertitel." + +msgid "" +"Configure the initial fast forward speed. When you press the fast forward " +"button, winding will start at this speed." +msgstr "" +"Anfängliche Schnellvorlauf-Geschwindigkeit. Wenn die Schnellvorlauf-Taste " +"betätigt wird, wird diese Geschwindigkeit zum Spulen verwendet." + +msgid "" +"Configure the initial rewind speed. When you press the rewind button, " +"winding will start at this speed." +msgstr "" +"Anfängliche Rückspul-Geschwindigkeit. Wenn die Rückspultaste betätigt wird, " +"wird diese Geschwindigkeit zum Spulen verwendet." + +msgid "Configure the latitude of your location." +msgstr "Breitengrad Ihres Standortes." + +msgid "Configure the longitude of your location." +msgstr "Längengrad Ihres Standortes." + +msgid "" +"Configure the minimum amount of disk space to be available for recordings. " +"When the amount of space drops below this value, deleted items will be " +"removed from the trash can." +msgstr "" +"Minimaler Festplatten-Speicher der vor Aufnahme zur Verfügung stehen muss. " +"Wenn dieser Wert unterschritten wird, werden Elemente vom Mülleimer " +"endgültig entfernt." + +msgid "Configure the nameserver (DNS)." +msgstr "DNS-Server konfigurieren" + +msgid "Configure the netmask." +msgstr "Netzmaske konfigurieren" + +msgid "" +"Configure the number of days after which items are automaticaly removed from " +"the trash can." +msgstr "" +"Anzahl von Tagen nach denen Elemente aus dem Mülleimer automatisch gelöscht " +"werden." + +msgid "" +"Configure the number of days old timers are kept before they are " +"automatically removed from the timer list." +msgstr "" +"Anzahl von Tagen nach denen Timers von der Timer-Liste automatischgelöscht " +"werden sollen." + +msgid "" +"Configure the offline decoding delay in milliseconds. The configured delay " +"is observed at each control word parity change." +msgstr "" +"Lokale Dekodierungsverzögerung in Millisekunden. Die gesetzte Verzögerung " +"wird bei jedem Kontrollwortparität-Wechsel beachtet." + +msgid "Configure the possible fast forward speeds." +msgstr "Mögliche Schnellvorlauf-Geschwindigkeit" + +msgid "Configure the possible rewind speeds." +msgstr "Mögliche Rücklauf-Geschwindigkeit" + +msgid "Configure the primary EPG language." +msgstr "Primäre EPG Sprache." + +msgid "Configure the refresh rate of the screen." +msgstr "Aktualisierungsrate des Bildschirms." + +msgid "Configure the screen resolution in PC output mode." +msgstr "Bildschirmauflösung im PC-Modus." + +msgid "Configure the second audio language." +msgstr "Wahl der zweiten Audiospur-Sprache." + +msgid "Configure the second subtitle language." +msgstr "Wahl der zweiten Untertitel-Sprache." + +msgid "Configure the secondary EPG language." +msgstr "Wahl der zweiten EPG Sprache." + +msgid "Configure the sharpness of the video scaling." +msgstr "Schärfe der Bildschirmskalierung." + +msgid "Configure the skip time interval for the '1'/'3' buttons." +msgstr "Sprunginterval der '1'/'3' Tasten." + +msgid "Configure the skip time interval for the '4'/'6' buttons." +msgstr "Sprunginterval der '4'/'6' Tasten." + +msgid "Configure the skip time interval for the '7'/'9' buttons." +msgstr "Sprunginterval der '7'/'9' Tasten." + +msgid "Configure the slow motion speeds." +msgstr "Zeitlupen-Geschwindigkeiten." + +msgid "" +"Configure the source of the frontend data as shown on the infobars. " +"'Settings' is as stored on the settings. 'Tuner' is as reported by the tuner." +msgstr "" +"Konfiguriere die Frontend Datenquelle, die in der Infobar angezeigt wird. " +"Das Feld 'Einstellungen' (Settings) kann konfiguriert werden. Das Feld " +"'Tuner' wird vom Tuner übernommen." + +msgid "" +"Configure the speed of the background deletion process. Lower speed will " +"consume less hard disk drive performance." +msgstr "" +"Schnelligkeit des Hintergrund-Löschprozesses. Ein langsamerer Löschvorgang " +"verbraucht weniger Festplatten-Performanz." + +msgid "Configure the speed of the fan" +msgstr "Lüftergeschwindigkeit konfigurieren" + +msgid "Configure the subtitle delay when timing information is not available." +msgstr "" +"Verzögerung des Untertitels wenn zeitliche Informationen nicht zur Verfügung " +"stehen." + +msgid "Configure the third audio language." +msgstr "Wahl der dritten Audiospur-Sprache." + +msgid "Configure the third subtitle language." +msgstr "Wahl der dritten Untertitel-Sprache." + +msgid "Configure the transparency of the OSD." +msgstr "Transparenz der Bildschirmanzeige (OSD)." + +msgid "" +"Configure the transparency of the black background of graphical DVB " +"subtitles." +msgstr "Transparenz bei schwarzem Hintergrund der grafischen DVB Untertitel." + +msgid "Configure the tuner mode." +msgstr "Wahl des Tuner-Modus." + +msgid "Configure the type of status indication icons shown in the movielist." +msgstr "Typ des Status-Anzeigesymbols in der Filmliste." + +msgid "" +"Configure the vertical position of the subtitles, measured from the bottom " +"of the screen." +msgstr "" +"Anpassung der vertikalen Position der Untertitel, ausgehend vom unterem " +"Bildschirmrand." + +msgid "Configure the video output mode (or resolution)." +msgstr "Video-Ausgang Modus (oder Auflösung)." + +msgid "Configure the way in which the receiver changes channels." +msgstr "Anpassung des Vorganges bei Kanalwechsel." + +msgid "Configure where completed timers show up in the timer list." +msgstr "Position beendeter Timer in der Timerliste" + +msgid "" +"Configure whether (and for how long) a second infobar will be shown when OK " +"is pressed twice. The second infobar contains additional information about " +"the current channel." +msgstr "" +"Anpassung ob (und wie lange) eine zweite Infoleiste bei erneuter Betätigung " +"der OK Taste angezeigt werden soll. Diese zeigt zusätzliche Informationen " +"über den Kanal an." + +msgid "" +"Configure whether multi channel sound tracks should be downmixed to stereo." +msgstr "Heruntermischen von Multi-Kanal-Sound in Stereo." + +msgid "" +"Configure whether or not an icon should be shown when your motorized dish is " +"moving." +msgstr "" +"Anzeige eines Hinweissymbols bei Bewegung der mororisierten Antennenschüssel." + +msgid "" +"Configure which access level to use for the configuration menu. Expert level " +"gives access to all items." +msgstr "" +"Zugriff-Level des Konfigurationsmenüs einstellen. Expertenlevel erlaubt den " +"Zugriff auf alle Elemente." + +msgid "Configure which color format should be used on the SCART output." +msgstr "Farbformat am SCART Ausgang." + +msgid "" +"Configure which tuner for recordings will be preferred, when more than one " +"tuner is available." +msgstr "" +"Konfiguriere den Tuner, der für Aufnahmen bevorzugt wird, falls mehrere " +"Tuner zur Verfügung stehen." + +msgid "" +"Configure which tuner type will be preferred, when the same service is " +"available on different types of tuners." +msgstr "" +"Bevorzugter Tunertyp falls der Kanal auf mehreren Typen von Tunern zur " +"Verfügung steht." + +msgid "" +"Configure which tuner will be preferred, when more than one tuner is " +"available. If set to 'auto' the system will give priority to the tuner " +"having the lowest number of channels/satellites." +msgstr "" +"Bevorzugter Tuner falls mehr als einer verfügbar ist. Bei 'auto' wird der " +"Tuner mit den wenigsten Kanälen/Satelliten bevorzugt.." + +msgid "Configure your internal LAN" +msgstr "Internes Netzwerk konfigurieren" + +msgid "Configure your network again" +msgstr "Netzwerk erneut konfigurieren" + +msgid "Configure your network settings, and press OK to start the scan" +msgstr "" +"Konfigurieren Sie Ihr Netzwerk und drücken Sie OK, um den Suchvorgang zu " +"starten." + +msgid "Configure your wireless LAN again" +msgstr "Funk-Netzwerk erneut konfigurieren" + +msgid "Configures which video output connector will be used." +msgstr "Wahl des Videoausgang-Anschlusses." + +msgid "Configuring" +msgstr "Konfiguriere" + +msgid "Conflicting timer" +msgstr "In Konflikt stehender Timer" + +msgid "Connect" +msgstr "Verbinden" + +msgid "Connect to a wireless network" +msgstr "Mit Funk-Netzwerk verbinden" + +msgid "Connected satellites" +msgstr "Angeschlossene Satelliten" + +msgid "Connected to" +msgstr "Verbunden mit" + +msgid "Connected!" +msgstr "Verbunden!" + +msgid "Constellation" +msgstr "Konstellation" + +msgid "Content does not fit on DVD!" +msgstr "Inhalt passt nicht auf die DVD!" + +msgid "Continue" +msgstr "Weiter" + +msgid "Continue in background" +msgstr "Im Hintergrund fortsetzen" + +msgid "Continue playback" +msgstr "Abspielen fortsetzen" + +msgid "Continue playing" +msgstr "Abspielen fortsetzen" + +msgid "Continues play (loop)" +msgstr "Endloswiedergabe (Schleife)" + +msgid "Contrast" +msgstr "Kontrast" + +msgid "Convert ext3 filesystem to ext4" +msgstr "Ext3 Dateisystem nach ext4 umwandeln" + +msgid "Convert ext3 to ext4" +msgstr "Ext3 nach ext4 umwandeln" + +msgid "Converting ext3 to ext4..." +msgstr "Wandle ext3 nach ext4 um..." + +msgid "Copy" +msgstr "Kopieren" + +msgid "Could not connect to receiver .NFI image feed server:" +msgstr "" +"Verbindung zum Receiver .NFI Image Feed Server konnte nicht hergestellt " +"werden:" + +msgid "Could not find installed channel list." +msgstr "Programmierte Kanalliste konnte nicht gefunden werden." + +msgid "Could not load medium! No disc inserted?" +msgstr "Konnte das Medium nicht laden! Keine DVD eingelegt?" + +msgid "Could not open Picture in Picture" +msgstr "Bild im Bild konnte nicht geladen werden." + +#, python-format +msgid "Could not record due to conflicting timer %s" +msgstr "Aufnahme wegen in Konflikt stehendem Timer %s fehlgeschlagen" + +#, python-format +msgid "Could not record due to invalid service %s" +msgstr "Aufnahme wegen ungültigem Kanal %s fehlgeschlagen" + +msgid "Create DVD-ISO" +msgstr "DVD-ISO erstellen" + +msgid "Create more detailed crash log" +msgstr "Erzeuge detailierteren Fehlerbericht" + +#, python-format +msgid "Creating directory %s failed." +msgstr "Erstellen des Verzeichnisses %s fehlgeschlagen." + +msgid "Creating filesystem" +msgstr "Dateisystem erstellen" + +msgid "Creating partition" +msgstr "Partition erstellen" + +msgid "Croatian" +msgstr "Kroatisch" + +msgid "Current CEC address" +msgstr "Aktuelle CEC-Adresse" + +msgid "Current device: " +msgstr "Aktuelles Gerät:" + +msgid "Current event EPG" +msgstr "Aktuelle Sendung EPG" + +#, python-format +msgid "Current mode: %s \n" +msgstr "Aktueller Modus: %s \n" + +msgid "Current settings:" +msgstr "Aktuelle Einstellungen:" + +msgid "Current transponder" +msgstr "Aktueller Transponder" + +msgid "Current value: " +msgstr "Aktueller Wert:" + +msgid "Current version:" +msgstr "Derzeitige Version:" + +msgid "Currently installed image" +msgstr "Aktuell installiertes Image" + +msgid "Currently the commit log cannot be retrieved - please try later again" +msgstr "" +"Derzeit kann die Liste der Code-Veränderungen nicht geladen werden - Bitte " +"versuchen Sie es später erneut" + +msgid "Custom skip time for '1'/'3' buttons" +msgstr "Gewünschte Sprungzeit für '1'/'3'-Tasten" + +msgid "Custom skip time for '4'/'6' buttons" +msgstr "Gewünschte Sprungzeit für '4'/'6'-Tasten" + +msgid "Custom skip time for '7'/'9' buttons" +msgstr "Gewünschte Sprungzeit für '7'/'9'-Tasten" + +msgid "Customize" +msgstr "Anpassen" + +msgid "Customize channel list cursor behavior" +msgstr "Cursor-Verhalten in Kanalliste einstellen" + +msgid "Cut" +msgstr "Schneiden" + +msgid "Cutlist editor..." +msgstr "Schnitteditor..." + +msgid "Czech" +msgstr "Tschechisch" + +msgid "D" +msgstr "D" + +msgid "DHCP" +msgstr "DHCP" + +msgid "DMM advanced" +msgstr "Erweitertes DMM" + +msgid "DMM normal" +msgstr "DMM normal" + +msgid "DUAL LAYER DVD" +msgstr "Doppelschicht DVD (DUAL LAYER)" + +msgid "DVB subtitle black transparency" +msgstr "Schwarztransparenz DVB-Untertitel" + +msgid "DVB-C" +msgstr "DVB-C" + +msgid "DVB-C ANNEX C" +msgstr "DVB-C ANNEX C" + +msgid "DVB-S" +msgstr "DVB-S" + +msgid "DVB-S2" +msgstr "DVB-S2" + +msgid "DVB-T" +msgstr "DVB-T" + +msgid "DVB-T2" +msgstr "DVB-T2" + +msgid "DVD data format" +msgstr "DVD Format" + +msgid "DVD file browser" +msgstr "DVD Datei Browser" + +msgid "DVD media toolbox" +msgstr "DVD Medien-Toolbox" + +msgid "DVD player" +msgstr "DVD Player" + +msgid "DVD titlelist" +msgstr "DVD Titelliste" + +msgid "Danish" +msgstr "Dänisch" + +msgid "Date" +msgstr "Datum" + +msgid "Date/time input" +msgstr "Zeit/Datum-Eingabe" + +msgid "Deep standby" +msgstr "Tiefschlaf / Ausschalten" + +msgid "Default" +msgstr "Standard" + +msgid "Default movie location" +msgstr "Standard Filmlisten Ort" + +msgid "Default settings" +msgstr "Voreinstellungen" + +msgid "Delay before key repeat starts:" +msgstr "Eingabewiederholung starten:" + +msgid "Delay for external subtitles" +msgstr "Verzögerung für externe Untertitel" + +msgid "Delete" +msgstr "Löschen" + +msgid "Delete entry" +msgstr "Eintrag löschen" + +msgid "Delete failed!" +msgstr "Löschen fehlgeschlagen." + +msgid "Delete file" +msgstr "Datei löschen" + +msgid "Delete playlist entry" +msgstr "Wiedergabelisteneintrag löschen" + +msgid "Delete saved playlist" +msgstr "Gespeicherte Wiedergabeliste löschen" + +msgid "Delete timer" +msgstr "Timer löschen" + +msgid "Delete..." +msgstr "Löschen..." + +msgid "Deleted" +msgstr "Gelöscht" + +msgid "Deleted items" +msgstr "Gelöschte Objekte" + +msgid "Depth" +msgstr "Tiefe" + +msgid "Descramble http streams" +msgstr "Entschlüssele HTTP-Streams" + +msgid "Description" +msgstr "Beschreibung" + +msgid "Deselect" +msgstr "Markierung aufheben" + +msgid "Details for plugin: " +msgstr "Details des Plugins: " + +msgid "Detected HDD:" +msgstr "Erkannte Festplatte(n):" + +msgid "Detected NIMs:" +msgstr "Erkannte Tuner:" + +msgid "Devicename:" +msgstr "Gerätename:" + +msgid "Devide" +msgstr "Aufteilen" + +msgid "DiSEqC" +msgstr "DiSEqC" + +msgid "DiSEqC 1.0 command" +msgstr "DiSEqC 1.0 Befehl" + +msgid "DiSEqC 1.1 command" +msgstr "DiSEqC 1.1 Befehl" + +msgid "DiSEqC 1.1 repeats" +msgstr "DiSEqC 1.1 Wiederholungen" + +msgid "DiSEqC A/B" +msgstr "DiSEqC A/B" + +msgid "DiSEqC A/B/C/D" +msgstr "DiSEqC A/B/C/D" + +msgid "DiSEqC mode" +msgstr "DiSEqC-Modus" + +#, python-format +msgid "DiSEqC port %s: %s" +msgstr "DiSEqC Port %s: %s" + +msgid "DiSEqC-tester settings" +msgstr "DiSEqC-Tester Einstellungen" + +msgid "Dialing:" +msgstr "Wählen:" + +msgid "Digital contour removal" +msgstr "Entfernen digitaler Konturen" + +msgid "Direct playback of linked titles without menu" +msgstr "Direkte Wiedergabe verknüpfter Titel ohne Menü" + +msgid "Directory" +msgstr "Verzeichnis" + +#, python-format +msgid "Directory %s does not exist." +msgstr "Verzeichnis %s existiert nicht." + +#, python-format +msgid "Directory %s nonexistent." +msgstr "Verzeichnis %s existiert nicht." + +msgid "Directory browser" +msgstr "Verzeichnis Browser" + +#, python-format +msgid "Directory contains %d file(s) and %d sub-directories.\n" +msgstr "Das Verzeichnis enthält %d Datei(en) und %d Unterordner.\n" + +#, python-format +msgid "Directory contains %s and %s." +msgstr "Das Verzeichnis enthält %s und %s." + +msgid "Disable" +msgstr "Aus" + +msgid "Disable Picture in Picture" +msgstr "Bild im Bild ausschalten" + +msgid "Disable background scanning" +msgstr "Deaktivieren von Hintergrundscanning" + +msgid "Disable timer" +msgstr "Timer deaktivieren" + +msgid "Disabled" +msgstr "Deaktiviert" + +msgid "Disconnect" +msgstr "Trennen" + +msgid "Disk space to reserve for recordings (in GB)" +msgstr "Reservierter Speicherplatz für Aufnahmen (in GB)" + +msgid "Display 16:9 content as" +msgstr "16:9-Inhalt anzeigen als" + +msgid "Display 4:3 content as" +msgstr "4:3-Inhalt anzeigen als" + +msgid "Display >16:9 content as" +msgstr "Inhalt mit einem Bildformate grösser als 16:9 anzeigen als" + +msgid "Display and userinterface" +msgstr "Display und Benutzeroberfläche" + +msgid "Display message before playing next movie" +msgstr "Zeige Meldung, bevor der nächste Film gestartet wird" + +msgid "Display setup" +msgstr "Display-Einstellungen" + +msgid "Do not change" +msgstr "Nicht ändern" + +msgid "Do not record" +msgstr "Nicht aufnehmen" + +msgid "Do nothing" +msgstr "Nichts" + +msgid "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" +msgstr "" +"Möchten Sie das Dateisystem wirklich überprüfen?\n" +"Die Überprüfung kann einige Zeit in Anspruch nehmen." + +msgid "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" +msgstr "" +"Wollen Sie das Dateisystem wirklich konvertieren?\n" +"Sie können diesen Schritt nicht rückgängig machen!" + +#, python-format +msgid "Do you really want to delete %s?" +msgstr "%s wirklich löschen?" + +#, python-format +msgid "" +"Do you really want to download\n" +"the plugin \"%s\"?" +msgstr "Wollen Sie das Plugin \"%s\" wirklich herunterladen?" + +msgid "Do you really want to exit?" +msgstr "Wollen Sie wirklich beenden?" + +msgid "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" +msgstr "" +"Wollen Sie das Laufwerk wirklich formatieren?\n" +"Sämtliche Daten auf dem Laufwerk gehen dabei verloren!" + +#, python-format +msgid "" +"Do you really want to remove\n" +"the plugin \"%s\"?" +msgstr "Wollen Sie das Plugin \"%s\" wirklich entfernen?" + +#, python-format +msgid "Do you really want to remove directory %s from the disk?" +msgstr "Wollen Sie das Verzeichnis %s wirklich von der Festplatte löschen?" + +#, python-format +msgid "Do you really want to remove your bookmark of %s?" +msgstr "Wollen Sie das Lesezeichen %s wirklich löschen?" + +msgid "Do you want this?" +msgstr "Wollen Sie dieses wirklich?" + +msgid "Do you want to burn this collection to DVD medium?" +msgstr "Soll diese Zusammenstellung auf DVD gebrannt werden?" + +msgid "Do you want to do a service scan?" +msgstr "Jetzt nach Kanälen suchen?" + +msgid "Do you want to do another manual service scan?" +msgstr "Wollen Sie eine weitere manuelle Suche durchführen?" + +#, python-format +msgid "Do you want to download the image to %s ?" +msgstr "Wollen Sie das Image nach %s herunterladen?" + +msgid "Do you want to install a channel list?" +msgstr "Möchten Sie eine Kanalliste hinzufügen?" + +msgid "Do you want to install the package:\n" +msgstr "Wollen Sie das Paket installieren:\n" + +msgid "Do you want to play DVD in drive?" +msgstr "Wollen Sie die DVD im Laufwerk abspielen?" + +msgid "Do you want to preview this DVD before burning?" +msgstr "Wollen Sie vor dem Brennen eine Vorschau der DVD ansehen?" + +msgid "Do you want to reboot your receiver?" +msgstr "Wollen Sie Ihren Receiver neu starten?" + +msgid "Do you want to remove the package:\n" +msgstr "Wollen Sie das Paket entfernen:\n" + +msgid "Do you want to restore your settings?" +msgstr "Wollen Sie die Einstellungen wiederherstellen?" + +msgid "Do you want to resume this playback?" +msgstr "Möchten Sie die Wiedergabe an der letzten Stelle fortsetzen?" + +#, python-format +msgid "Do you want to update your receiver to %s?" +msgstr "Wollen Sie Ihren Receiver auf %s aktualisieren?" + +msgid "Do you want to update your receiver?" +msgstr "Wollen Sie Ihren Receiver aktualisieren?" + +msgid "Do you want to upgrade the package:\n" +msgstr "Wollen Sie das Paket aktualisieren:\n" + +msgid "Don't stop current event but disable coming events" +msgstr "" +"Aktuelles Event nicht beenden, aber alle zukünftige Events deaktivieren" + +#, python-format +msgid "Done - Installed, upgraded or removed %d package (%s)" +msgid_plural "Done - Installed, upgraded or removed %d packages (%s)" +msgstr[0] "" +"Abgeschlossen - %d Paket installiert, aktualisiert oder entfernt (%s)" +msgstr[1] "" +"Abgeschlossen - %d Pakete installiert, aktualisiert oder entfernt (%s)" + +msgid "Download" +msgstr "Herunterladen" + +#, python-format +msgid "Download %s from server" +msgstr "%s vom Server herunterladen" + +msgid "Download .NFI-files for USB-flasher" +msgstr ".NFI-Files für USB-Flasher runterladen" + +msgid "Download plugins" +msgstr "Plugins herunterladen" + +msgid "Downloadable new plugins" +msgstr "Herunterladbare neue Plugins" + +msgid "Downloadable plugins" +msgstr "Herunterladbare Plugins" + +msgid "Downloading" +msgstr "Herunterladen" + +msgid "Downloading plugin information. Please wait..." +msgstr "Lade Plugin-Informationen herunter. Bitte warten..." + +msgid "Dutch" +msgstr "Holländisch" + +msgid "Dynamic contrast" +msgstr "Dynamischer Kontrast" + +msgid "E" +msgstr "O" + +msgid "EPG" +msgstr "EPG" + +msgid "EPG language selection 1" +msgstr "EPG Sprachwahl 1" + +msgid "EPG language selection 2" +msgstr "EPG Sprachwahl 2" + +msgid "EPG selection" +msgstr "EPG-Auswahl" + +msgid "EPG settings" +msgstr "EPG-Einstellungen" + +#, python-format +msgid "ERROR - failed to scan (%s)!" +msgstr "FEHLER - Suche fehlgeschlagen (%s)!" + +msgid "East" +msgstr "Ost" + +msgid "East limit set" +msgstr "Östliches Limit" + +msgid "Edit" +msgstr "Bearbeiten" + +msgid "Edit DNS" +msgstr "Bearbeite DNS" + +msgid "Edit bouquets list" +msgstr "Bouquetliste bearbeiten" + +msgid "Edit chapters of current title" +msgstr "Kapitel des ausgewählten Titels schneiden" + +msgid "Edit services list" +msgstr "Kanalliste bearbeiten" + +msgid "Edit settings" +msgstr "Einstellungen bearbeiten" + +msgid "Edit the nameserver configuration of your receiver.\n" +msgstr "Bearbeiten Sie die Nameserver-Einstellungen Ihres Receivers.\n" + +msgid "Edit the network configuration of your receiver.\n" +msgstr "Bearbeiten Sie die Netzwerk-Konfiguration Ihres Receivers.\n" + +msgid "Edit timer" +msgstr "Timer editieren" + +msgid "Edit title" +msgstr "Titel ändern" + +msgid "Edit upgrade source url." +msgstr "Update Quell-URL bearbeiten." + +msgid "Education/Science/..." +msgstr "Bildung/Wissenschaft/..." + +msgid "Electronic Program Guide" +msgstr "Elektronischer Programmführer" + +msgid "Enable" +msgstr "Ein" + +msgid "Enable 'neutrino' style channel select controlling" +msgstr "Aktiviere Kanalauswahlverhalten im 'Neutrino'-Style" + +msgid "Enable 'neutrino' style zap controlling" +msgstr "Aktiviere Kanalumschaltverhalten im 'Neutrino'-Style" + +msgid "Enable 5V for active antenna" +msgstr "5V für aktive Antenne" + +msgid "Enable EIT EPG" +msgstr "Aktiviere EIT EPG" + +msgid "Enable MHW EPG" +msgstr "Aktiviere MHW EPG" + +msgid "Enable Netmed EPG" +msgstr "Aktiviere Netmed EPG" + +msgid "Enable OK for channel selection" +msgstr "Aktiviere OK für Kanalauswahl" + +msgid "Enable ViaSat EPG" +msgstr "Aktiviere ViaSat EPG" + +msgid "Enable Virgin EPG" +msgstr "Aktiviere Virgin EPG" + +msgid "Enable Wake On LAN" +msgstr "Aktiviere Wake on LAN" + +msgid "Enable auto fast scan" +msgstr "Aktiviere automatischen schnellen Kanalscan" + +msgid "Enable bouquet selection in multi-EPG" +msgstr "Aktiviere Bouquet-Auswahl im Multi-EPG" + +msgid "Enable freesat EPG" +msgstr "Aktiviere freesat EPG" + +msgid "Enable multiple bouquets" +msgstr "Mehrere Bouquets erlauben" + +msgid "Enable parental control" +msgstr "Jugendschutz anschalten" + +msgid "Enable teletext caching" +msgstr "Aktiviere Teletext Cache" + +msgid "Enable zapping with CH+/-, B+/-, P+/-" +msgstr "Aktiviere Kanalumschalten mit CH+/-, B+/-, P+/-" + +msgid "Enabled" +msgstr "Eingeschaltet" + +msgid "Encrypted: " +msgstr "Verschlüsselt: " + +msgid "Encryption" +msgstr "Verschlüsselung" + +msgid "Encryption key" +msgstr "WLAN-Sicherheitsschlüssel" + +msgid "Encryption key type" +msgstr "Passwortverschlüsselungstyp" + +msgid "Encryption:" +msgstr "Verschlüsselung:" + +msgid "End time" +msgstr "Endzeit" + +msgid "End time to ignore inactivity sleeptimer" +msgstr "Endzeit zum Ignorieren des Inaktivität-Sleeptimers" + +msgid "End time to ignore shutdown in standby" +msgstr "" +"Zeitpunkt nachdem nicht mehr vom Standby in den Schlafmodus gewechselt wird" + +msgid "English" +msgstr "Englisch" + +msgid "Enigma2 skin selector" +msgstr "Benutzeroberfläche Auswahl" + +msgid "Enter main menu..." +msgstr "Öffne Hauptmenü..." + +msgid "Enter pin code" +msgstr "PIN-Code eingeben" + +msgid "Enter the service pin" +msgstr "Geben Sie den Kanal-PIN-Code ein" + +msgid "Equal to" +msgstr "Entspricht" + +msgid "Error" +msgstr "Fehler" + +msgid "Error code" +msgstr "Fehler-Code" + +msgid "Error executing plugin" +msgstr "Ausführen des Plugins fehlgeschlagen" + +#, python-format +msgid "" +"Error: %s\n" +"Retry?" +msgstr "" +"Fehler aufgetreten: %s\n" +"Erneut versuchen?" + +msgid "Estonian" +msgstr "Estnisch" + +msgid "Ethernet network interface" +msgstr "Ethernet Netzwerkadapter" + +msgid "Event font size (relative to skin size)" +msgstr "Sendung Schriftgröße (relativ zur Skingröße)" + +msgid "Event view" +msgstr "Sendungsübersicht" + +msgid "Event view menu" +msgstr "Sendungsübersicht Menü" + +msgid "Everywhere" +msgstr "Überall" + +msgid "Exceeds dual layer medium!" +msgstr "Übersteigt die Größe eines Doppelschicht-Mediums!" + +msgid "Execution finished!!" +msgstr "Ausführung beendet!" + +msgid "Execution progress:" +msgstr "Ausführen eines externen Befehls:" + +msgid "Exif" +msgstr "Exif" + +msgid "Exit" +msgstr "Beenden" + +msgid "Exit EPG" +msgstr "EPG verlassen?" + +msgid "Exit editor" +msgstr "Editor beenden" + +msgid "Exit input device selection." +msgstr "Eingabegeräteauswahl verlassen" + +msgid "Exit media player?" +msgstr "Mediaplayer beenden?" + +msgid "Exit mediaplayer" +msgstr "Mediaplayer beenden" + +msgid "Exit movie list" +msgstr "Verlasse Filmliste" + +msgid "Exit movie player?" +msgstr "Medienplayer verlassen?" + +msgid "Exit nameserver configuration" +msgstr "DNS-Serverkonfiguration verlassen" + +msgid "Exit network interface list" +msgstr "Netzwerkadapterübersicht verlassen" + +msgid "Exit network wizard" +msgstr "Netzwerkassistent verlassen" + +msgid "Exit the wizard" +msgstr "Assistent beenden" + +msgid "Expert" +msgstr "Experte" + +msgid "Extend sleeptimer 15 minutes" +msgstr "Sleeptimer 15 min verlängern" + +msgid "Extended Software" +msgstr "Fortgeschrittene Software" + +msgid "Extended Software Plugin" +msgstr "Fortgeschrittenes Software Plugin" + +msgid "Extended network setup plugin..." +msgstr "Erweitertes Netzwerksetup Plugin..." + +msgid "Extended setup..." +msgstr "Erweiterte-Einstellungen..." + +msgid "Extensions" +msgstr "Erweiterungen" + +msgid "Extensions management" +msgstr "Erweiterungsverwaltung" + +msgid "External PiP" +msgstr "Externes PiP (Scart)" + +msgid "External subtitle color" +msgstr "Farbe für externe Untertitel" + +msgid "Extra motor options" +msgstr "Zusätzliche Motor-Optionen" + +msgid "FEC" +msgstr "FEC" + +msgid "FTA" +msgstr "FTA" + +msgid "Factory reset" +msgstr "Werkseinstellungen" + +msgid "Failed" +msgstr "Fehlgeschlagen" + +msgid "Failed to write /tmp/positionersetup.log: " +msgstr "Fehler beim Schreiben: /tmp/positionersetup.log" + +#, python-format +msgid "Fan %d" +msgstr "Lüfter %d" + +#, python-format +msgid "Fan %d PWM" +msgstr "Lüfter %d PWM" + +#, python-format +msgid "Fan %d voltage" +msgstr "Lüfter %d Spannung" + +msgid "Fan operation" +msgstr "Lüfterbetriebszustand" + +msgid "Fan speed" +msgstr "Lüftergeschwindigkeit" + +msgid "Fast" +msgstr "Schnell" + +msgid "Fast DiSEqC" +msgstr "Schnelles DiSEqC" + +msgid "Fast Scan" +msgstr "Fast-Scan" + +msgid "Fast epoch" +msgstr "Schnell Zeitraum" + +msgid "Fast forward speeds" +msgstr "Schnellvorlauf-Geschwindigkeiten" + +msgid "Favourites" +msgstr "Favoriten" + +msgid "File appears to be busy.\n" +msgstr "Die Datei ist gerade in Verwendung.\n" + +msgid "Filesystem check" +msgstr "Dateisystemüberprüfung" + +msgid "Final position at" +msgstr "Endposition auf" + +msgid "Final position at index" +msgstr "Endposition auf Index" + +msgid "Fine movement" +msgstr "Fein-Steuerung" + +msgid "Finetune" +msgstr "Feineinst." + +msgid "Finished" +msgstr "Beendet" + +msgid "Finished configuring your network" +msgstr "Netzwerk-Konfiguration abgeschlossen" + +msgid "Finished restarting your network" +msgstr "Netzwerkneustart abgeschlossen" + +msgid "Finnish" +msgstr "Finnisch" + +msgid "Fixed" +msgstr "Fixiert" + +msgid "Flash" +msgstr "Flash" + +msgid "Flashing failed" +msgstr "Flashen fehlgeschlagen" + +msgid "Following tasks will be done after you press OK!" +msgstr "Folgendes wird ausgeführt, nachdem Sie OK gedrückt haben!" + +msgid "Format" +msgstr "Formatieren" + +msgid "Forward volume keys" +msgstr "Lautstärketasten weiterleiten" + +msgid "Frame size in full view" +msgstr "Framegröße im Vollbild" + +msgid "French" +msgstr "Französisch" + +msgid "Frequency" +msgstr "Frequenz" + +msgid "Frequency bands" +msgstr "Frequenzbänder" + +msgid "Frequency scan step size(khz)" +msgstr "Frequenz Schrittweite (kHz)" + +msgid "Frequency steps" +msgstr "Frequenz Schritte" + +msgid "Frequency:" +msgstr "Frequenz:" + +msgid "Fri" +msgstr "Fr" + +msgid "Friday" +msgstr "Freitag" + +msgid "From :" +msgstr "Von:" + +#, python-format +msgid "Frontprocessor version: %d" +msgstr "Frontprozessor-Version: %d" + +msgid "Full transparency" +msgstr "Volle Transparenz" + +msgid "Fulview resulution" +msgstr "Auflösung Vollansicht" + +msgid "Function of OK button" +msgstr "Funktion der OK Taste" + +msgid "Further Options" +msgstr "Weitere Optionen" + +msgid "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" +msgstr "" +"Das System muss neu gestartet werden,\n" +"um das neue Aussehen übernehmen zu können.\n" +"Wollen Sie jetzt neu starten?" + +msgid "Gateway" +msgstr "Gateway" + +msgid "General AC3 delay" +msgstr "Allgemeine AC3 Verzögerung" + +msgid "General PCM delay" +msgstr "Allgemeine PCM Verzögerung" + +msgid "Genre" +msgstr "Kategorie" + +msgid "German" +msgstr "Deutsch" + +msgid "Get latest experimental image" +msgstr "Neuestes Experimental-Image" + +msgid "Get latest release image" +msgstr "Neuestes Release-Image" + +msgid "Getting plugin information. Please wait..." +msgstr "Lade Plugin-Informationen. Bitte warten..." + +msgid "Go down the list" +msgstr "Liste nach unten durchgehen" + +msgid "Go to first movie or last item" +msgstr "Zum ersten Film oder letzten Eintrag springen" + +msgid "Go to first movie or top of list" +msgstr "Zum ersten Film oder ersten Eintrag springen" + +msgid "Go to first service" +msgstr "Springe zum ersten Kanal" + +msgid "Go to last service" +msgstr "Springe zum letzten Kanal" + +msgid "Go to next event" +msgstr "Springe zur nächsten Sendung" + +msgid "Go to next page of service" +msgstr "Springe zur nächsten Kanal-Seite" + +msgid "Go to previous event" +msgstr "Springe zur vorherigen Sendung" + +msgid "Go to previous page of service" +msgstr "Springe zur vorherigen Kanal-Seite" + +msgid "Go up the list" +msgstr "Liste nach oben durchgehen" + +msgid "Goto" +msgstr "Gehe zu" + +msgid "Goto 0" +msgstr "Gehe zu 0" + +msgid "Goto :" +msgstr "Gehe zu:" + +msgid "Goto X" +msgstr "Gehe zu X" + +msgid "Goto index position" +msgstr "Gehe zur Index Position" + +msgid "Goto next day of events" +msgstr "Springe zum nächsten Tag mit Sendungen" + +msgid "Goto next page of events" +msgstr "Springe zur nächsten Seite mit Sendungen" + +msgid "Goto position" +msgstr "Zu Position springen" + +msgid "Goto previous day of events" +msgstr "Springe zum vorherigen Tag mit Sendungen" + +msgid "Goto previous page of events" +msgstr "Springe zur vorherigen Seite mit Sendungen" + +msgid "Goto specific date/time" +msgstr "Springe zum angegebenen Datum/Uhrzeit" + +msgid "GotoX calibration" +msgstr "Gehe zur X Kalibrierung" + +msgid "GraphMultiEpg Settings" +msgstr "GraphMultiEpg Einstellungen" + +msgid "Graphical Multi EPG" +msgstr "Grafischer Multi-EPG" + +msgid "Greek" +msgstr "Griechisch" + +msgid "Green boost" +msgstr "Grünanteil erhöhen" + +msgid "Guard interval" +msgstr "Guard Intervall" + +msgid "HD list" +msgstr "HD Liste" + +msgid "HDMI-CEC setup" +msgstr "HDMI-CEC Konfiguration" + +msgid "Handle standby from TV" +msgstr "Receiver mit Fernseher in den Standby versetzen" + +msgid "Handle wakeup from TV" +msgstr "Receiver mit Fernseher aufwachen" + +msgid "Hard disk" +msgstr "Festplatte" + +msgid "Hard disk setup" +msgstr "Festplatten-Einstellungen" + +msgid "Hard disk standby after" +msgstr "Festplatten-Standby nach" + +msgid "Harddisk" +msgstr "Festplatte" + +msgid "Hardware: " +msgstr "Hardware: " + +msgid "Hebrew" +msgstr "Hebräisch" + +msgid "Helps setting up your dish" +msgstr "Hilfe zur Einrichten der Antenne" + +msgid "Hidden network" +msgstr "Verstecktes Netzwerk" + +msgid "Hide CI messages" +msgstr "Verberge CI Nachrichten" + +msgid "Hide channel list in radio mode" +msgstr "Verberge Senderliste im Radio-Modus" + +msgid "Hide known extensions" +msgstr "Bekannte Erweiterungen ausblenden" + +msgid "Hide number markers" +msgstr "Verberge Nummer-Marker" + +msgid "Hide player" +msgstr "Player ausblenden" + +msgid "Hide zap errors" +msgstr "Verberge Zap-Fehler" + +msgid "Hierarchy info" +msgstr "Hierarchie Information" + +msgid "Hierarchy information" +msgstr "Hierarchie Information" + +msgid "High bitrate support" +msgstr "Kann hohe Datenraten verarbeiten" + +msgid "Hold screen" +msgstr "Bild halten" + +msgid "Hold till locked" +msgstr "Halte Bild bis Abschluß" + +msgid "Home" +msgstr "Home" + +msgid "Horizontal" +msgstr "Horizontal" + +msgid "Horizontal turning speed" +msgstr "Horizontale Drehgeschwindigkeit" + +msgid "How many minutes do you want to record?" +msgstr "Wie viele Minuten möchten Sie aufnehmen?" + +msgid "Hue" +msgstr "Farbton" + +msgid "Hungarian" +msgstr "Ungarisch" + +msgid "IP address" +msgstr "IP-Adresse" + +msgid "ISO file is too large for this filesystem!" +msgstr "Die ISO-Datei passt nicht auf das Dateisystem!" + +msgid "ISO path" +msgstr "ISO-Ausgabepfad" + +msgid "Icons" +msgstr "Symbole" + +msgid "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." +msgstr "" +"Wenn Sie diese Meldung sehen, ist Ihr\n" +"Scart-Kabel falsch angeschlossen. Bitte OK\n" +"drücken, um zurück zu gelangen." + +msgid "" +"If your TV has a brightness or contrast enhancement, disable it. If there is " +"something called \"dynamic\", set it to standard. Adjust the backlight level " +"to a value suiting your taste. Turn down contrast on your TV as much as " +"possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the " +"two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next " +"step.\n" +"If you are happy with the result, press OK." +msgstr "" +"Falls Ihr Fernseher über Helligkeits- oder Kontraststeigerung verfügt, " +"deaktivieren Sie diese. Falls es eine \"Dynamik\"-Einstellung gibt, sollte " +"sie auf Standard gesetzt werden. Verändern Sie die Intensität der " +"Hintergrundbeleuchtung nach Ihrem Geschmack. Verringern Sie den Kontrast " +"Ihres Fernsehers soweit wie möglich.\n" +"Verringern Sie anschließend die Helligkeit soweit wie möglich. Stellen Sie " +"dabei sicher, dass die beiden untersten Grauschattierungen erkennbar " +"bleiben. Die hellen Schattierungen werden im folgenden Schritt eingestellt.\n" +"Drücken Sie OK, wenn Sie mit dem Ergebnis zufrieden sind." + +msgid "Image: " +msgstr "Image: " + +msgid "Immediate shutdown" +msgstr "Direkt runterfahren" + +msgid "" +"In order to record a timer, the TV was switched to the recording service!\n" +msgstr "" +"Um die Timeraufnahme durchführen zu können, wurde auf den aufzunehmenden " +"Sender umgeschaltet!\n" + +msgid "In progress" +msgstr "In Bearbeitung" + +msgid "Inactivity Sleeptimer" +msgstr "Inaktivität-Sleeptimer" + +msgid "Include AIT in http streams" +msgstr "Integriere AIT in HTTP-Streams" + +msgid "Include ECM in http streams" +msgstr "Integriere ECM in HTTP-Streams" + +msgid "Include EIT in http streams" +msgstr "Integriere EIT in HTTP-Streams" + +msgid "Incorrect type service for PiP!" +msgstr "Nicht unterstützter Dienst für PiP!" + +msgid "Increased voltage" +msgstr "Erhöhte Spannung" + +msgid "Index" +msgstr "Index" + +msgid "Index allocated:" +msgstr "Index zugeordnet:" + +msgid "Info" +msgstr "Info" + +msgid "Info bar" +msgstr "Infoleiste" + +msgid "Info bar timeout" +msgstr "Infoleiste-Anzeigedauer" + +msgid "Infobar frontend data source" +msgstr "Infobar Frontend Datenquelle" + +msgid "Information" +msgstr "Informationen" + +msgid "Init" +msgstr "Initialisieren" + +msgid "Initial fast forward speed" +msgstr "Initiale Schnellvorlauf-Geschwindigkeit" + +msgid "Initial location in new timers" +msgstr "Initialer Ort für neue Timer" + +msgid "Initial lock ratio" +msgstr "Initiales Signalverhältnis" + +msgid "Initial rewind speed" +msgstr "Initiale Rücklauf-Geschwindigkeit" + +msgid "Initial signal quality" +msgstr "Initiale Signal Qualität" + +msgid "Initial signal quality:" +msgstr "Initiale Signal Qualität:" + +msgid "Initialization" +msgstr "Initialisierung" + +msgid "Initialize" +msgstr "Initialisieren" + +msgid "Initializing storage device..." +msgstr "Initalisiere Laufwerk...." + +msgid "Input" +msgstr "Eingabe" + +msgid "Input device setup" +msgstr "Eingabegeräte Setup" + +msgid "Input devices" +msgstr "Eingabegeräte" + +msgid "Install" +msgstr "Installiere" + +msgid "Install a new image with a USB stick" +msgstr "Neues Image mittels USB Stick installieren" + +msgid "Install a new image with your web browser" +msgstr "Neues Image mittels Webbrowser installieren" + +msgid "Install channel list" +msgstr "Kanalliste hinzufügen" + +msgid "Install extensions" +msgstr "Installiere Plugins (Erweiterungen)" + +msgid "Install extensions." +msgstr "Erweiterungen installieren." + +msgid "Install local extension" +msgstr "Lokale Erweiterungen installieren" + +msgid "Install picons on" +msgstr "Picons installieren auf" + +msgid "Install softcam" +msgstr "Installiere Softcam" + +msgid "Installation has completed." +msgstr "Installation abgeschlossen" + +msgid "Installation or removal has completed." +msgstr "Installation oder Deinstallation abgeschlossen." + +msgid "Installing" +msgstr "Installiere" + +msgid "Installing software..." +msgstr "Installiere Software. Bitte warten..." + +msgid "Instant recording location" +msgstr "Sofortaufnahme-Verzeichnis" + +msgid "Instant recording..." +msgstr "Sofortaufnahme..." + +msgid "Interface: " +msgstr "Interface: " + +msgid "Intermediate" +msgstr "Fortgeschritten" + +msgid "Internal flash" +msgstr "Interner Flash" + +msgid "Internal hdd only" +msgstr "Nur interne Festplatte" + +msgid "Interval between keys when repeating:" +msgstr "Intervall bei der Tastenwiederholung:" + +#, python-format +msgid "Invalid directory selected: %s" +msgstr "Ungültiges Verzeichnis ausgewählt: %s" + +msgid "Invalid location" +msgstr "Fehlerhafter Ort" + +msgid "Invalid transponder data" +msgstr "Ungültige Transponderdaten" + +msgid "Inversion" +msgstr "Inversion" + +msgid "Invert" +msgstr "Umkehren" + +msgid "Ipkg" +msgstr "Ipkg" + +msgid "Is this setting ok?" +msgstr "Diese Einstellungen übernehmen?" + +msgid "Is this video mode ok?" +msgstr "Diesen Videomodus beibehalten?" + +msgid "Italian" +msgstr "Italienisch" + +msgid "Items per page " +msgstr "Objekte pro Seite" + +msgid "Items per page for list screen" +msgstr "Objekte pro Seite für Listen Modus" + +msgid "Job overview" +msgstr "Jobansicht" + +msgid "Jump to beginning of list" +msgstr "Springe zum Beginn der Liste" + +msgid "Jump to end of list" +msgstr "Springe zum Ende der Liste" + +msgid "Jump to next marked position" +msgstr "Springe zur nächsten Markerposition" + +msgid "Jump to previous marked position" +msgstr "Springe zur vorherigen Markerposition" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect) +msgid "Just scale" +msgstr "Nur Skalieren" + +msgid "Keep service" +msgstr "Aktueller Sender" + +msgid "Kernel version: " +msgstr "Kernel Version: " + +msgid "Keyboard" +msgstr "Tastatur" + +msgid "Keyboard map" +msgstr "Tastaturlayout" + +msgid "Keyboard setup" +msgstr "Tastatureinstellung" + +msgid "LAN adapter" +msgstr "Netzwerkadapter" + +msgid "LAN connection" +msgstr "LAN Verbindung" + +msgid "LNB" +msgstr "LNB" + +msgid "Language" +msgstr "Sprache" + +msgid "Language selection" +msgstr "Sprachauswahl" + +msgid "Last config" +msgstr "Letzte Konfiguration" + +msgid "Last speed" +msgstr "Letzte Geschwindigkeit" + +msgid "Last upgrade: " +msgstr "Letztes Update: " + +msgid "Latest Commits" +msgstr "Letzte Änderungen" + +msgid "Latitude" +msgstr "Breitengrad" + +msgid "Latvian" +msgstr "Lettisch" + +msgid "Leave DVD player?" +msgstr "DVD Player beenden?" + +msgid "Left" +msgstr "Links" + +msgid "Left from servicename" +msgstr "Links vom Sendernamen" + +msgid "Leisure hobbies" +msgstr "Freizeitbeschäftigungen" + +#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term. +msgid "Letterbox" +msgstr "Letterbox" + +msgid "Letterbox zoom" +msgstr "Letterbox Zoom" + +msgid "Limit character set for recording filenames" +msgstr "Reduzierter Zeichensatz für Aufnahme-Dateinamen" + +msgid "Limit east" +msgstr "Ost-Limit" + +msgid "" +"Limit the characters that can be used in recording filenames to (7 bit) " +"ascii. This ensures compatibility with operating systems or file systems " +"with limited character sets." +msgstr "" +"Reduziere Zeichensatz für Aufnahme-Dateinamen auf 7 bit ASCII. Dies " +"garantiert die Kompatibilität mit Betriebs- und Dateisystemen mit " +"reduzierten Zeichensatz." + +msgid "Limit west" +msgstr "West-Limit" + +msgid "Limits cancelled" +msgstr "Limits nicht übernommen" + +msgid "Limits enabled" +msgstr "Limits aktiviert" + +msgid "Limits off" +msgstr "Limits ausschalten" + +msgid "Limits on" +msgstr "Limits aktiviert" + +msgid "Link quality:" +msgstr "Verbindungsqualität:" + +msgid "Link:" +msgstr "Verbindung:" + +msgid "Linked titles with a DVD menu" +msgstr "Verknüpfte Titel mit einem DVD-Menü" + +msgid "List EPG functions..." +msgstr "Liste der EPG Funktionen..." + +msgid "List available networks" +msgstr "Zeige verfügbare Netzwerke" + +msgid "List mode" +msgstr "Listen Modus" + +msgid "List of storage devices" +msgstr "Speichergeräteliste" + +msgid "List type" +msgstr "Listen Typ" + +#, python-format +msgid "List version %d, found %d channel" +msgid_plural "List version %d, found %d channels" +msgstr[0] "Listen Version %d, %d Kanal gefunden" +msgstr[1] "Listen Version %d, %d gefundene Kanäle" + +msgid "Listen to the radio..." +msgstr "Radio hören..." + +msgid "Lists reloaded!" +msgstr "Listen neu geladen!" + +msgid "Lithuanian" +msgstr "Litauisch" + +msgid "Load" +msgstr "Laden" + +msgid "Load Length of Movies in Movielist" +msgstr "Laden der Spielzeit in der Filmliste" + +msgid "Load length of movies in movie list" +msgstr "Laden der Spielzeit in der Filmliste" + +msgid "Load playlist" +msgstr "Wiedergabeliste laden" + +msgid "Local network" +msgstr "Lokales Netzwerk" + +msgid "Location" +msgstr "Zielverzeichnis" + +msgid "Location for instant recordings" +msgstr "Verzeichnis für Sofortaufnahmen" + +msgid "Lock ratio" +msgstr "Signalverhältnis" + +msgid "Lock:" +msgstr "Signal:" + +msgid "Log results to harddisk" +msgstr "Ergebnisse auf die Festplatte schreiben" + +msgid "Long filenames" +msgstr "Lange Dateinamen" + +msgid "Long key press" +msgstr "langer Tastendruck" + +msgid "Longitude" +msgstr "Längengrad" + +msgid "Loop through to" +msgstr "Durchschleifen zu" + +msgid "Luxembourgish" +msgstr "Luxemburgisch" + +msgid "MMC card" +msgstr "MMC-Karte" + +msgid "MORE" +msgstr "MEHR" + +msgid "Main menu" +msgstr "Hauptmenü" + +msgid "Maintain old EPG data for" +msgstr "Behalte abgelaufene EPG-Daten (in Minuten)" + +msgid "Make this mark an 'in' point" +msgstr "Aus dieser Markierung einen \"innen\"-Punkt machen" + +msgid "Make this mark an 'out' point" +msgstr "Aus dieser Markierung einen \"außen\"-Punkt machen" + +msgid "Make this mark just a mark" +msgstr "Aus dieser Markierung nur eine Markierung machen" + +msgid "Manage extensions" +msgstr "Erweiterungen verwalten" + +msgid "Manage your receiver's software" +msgstr "Verwalten Sie die Software des Receivers." + +msgid "Manual" +msgstr "Benutzerhandbuch" + +msgid "Manual Scan" +msgstr "Manuelle Suche" + +msgid "Manual configuration" +msgstr "Manuelle Konfiguration" + +msgid "Manual scan" +msgstr "Manuelle Suche" + +msgid "Manual transponder" +msgstr "Manueller Transponder" + +msgid "Manufacturer" +msgstr "Hersteller" + +msgid "Margin after recording (minutes)" +msgstr "Nachlauf hinter Aufnahme (in Minuten)" + +msgid "Margin before recording (minutes)" +msgstr "Vorlauf bei Aufnahme (in Minuten)" + +msgid "Max memory positions" +msgstr "Höchste Position speichern" + +msgid "Max. bitrate: " +msgstr "Max. Bitrate: " + +msgid "Media player" +msgstr "Media Player" + +msgid "Media scanner" +msgstr "Media Player" + +msgid "Medium is not a writeable DVD!" +msgstr "Das Medium ist keine beschreibbare DVD!" + +msgid "Medium is not empty!" +msgstr "Das Medium ist nicht leer!" + +msgid "Memory" +msgstr "Speicher" + +msgid "Memory index" +msgstr "Index speichern" + +msgid "Menu" +msgstr "Menu" + +msgid "Message" +msgstr "Nachricht" + +msgid "Message..." +msgstr "Nachricht..." + +#, python-format +msgid "Minimum age %d years" +msgstr "Mindestalter %d Jahre" + +msgid "Minimum send interval" +msgstr "Sendeintervall Mininum" + +msgid "Missing " +msgstr "Fehlend" + +msgctxt "Satellite configuration mode" +msgid "Mode" +msgstr "Modus" + +msgctxt "Video output mode" +msgid "Mode" +msgstr "Modus" + +msgid "Model: " +msgstr "Modell:" + +msgid "Modulation" +msgstr "Modulation" + +msgid "Modulator" +msgstr "Modulator" + +msgid "Mon" +msgstr "Mo" + +msgid "Mon-Fri" +msgstr "Montag bis Freitag" + +msgid "Monday" +msgstr "Montag" + +msgid "Mosquito noise reduction" +msgstr "Mosquito Noise Reduzierung" + +msgid "Mount" +msgstr "Einhängen" + +msgid "Move" +msgstr "Verschieben" + +msgid "Move PiP to main picture" +msgstr "Bild im Bild tauschen und beenden" + +msgid "Move Picture in Picture" +msgstr "Verschiebe Bild im Bild" + +msgid "Move east" +msgstr "Drehen nach Osten" + +msgid "Move to other directory" +msgstr "In anderes Verzeichnis verschieben" + +msgid "Move to position X" +msgstr "Drehe zur Position X" + +msgid "Move west" +msgstr "Drehen nach Westen" + +msgid "Moved to position 0" +msgstr "Zur Position 0 bewegt" + +msgid "Moved to position at index" +msgstr "Zur Index Position bewegt" + +msgid "Movement" +msgstr "Steuerung" + +msgid "Movie List Configuration" +msgstr "Filmlisten Einstellungen" + +msgid "Movie Selection" +msgstr "Filmauswahl" + +msgid "Movie list configuration" +msgstr "Filmlisten Einstellungen" + +msgid "Movie location" +msgstr "Film Verzeichnis" + +msgid "Movie selection" +msgstr "Filmauswahl" + +msgid "Movie/Drama" +msgstr "Film/Drama" + +msgid "Movielist menu" +msgstr "Aufnahmen-Menü" + +msgid "Moving" +msgstr "Ansteuern" + +msgid "Moving east ..." +msgstr "Bewege östlich ..." + +msgid "Moving to position" +msgstr "Bewege zur Position" + +msgid "Moving west ..." +msgstr "Bewege westlich ..." + +msgid "Multi EPG" +msgstr "Multi-EPG" + +msgid "Multi-EPG bouquet selection" +msgstr "Multi-EPG Bouquet Auswahl" + +msgid "Multimedia" +msgstr "Multimedia" + +msgid "Multiple service support" +msgstr "Kann mehrere Sender entschlüsseln" + +msgid "Multiplex" +msgstr "Multiplex" + +msgid "Multisat" +msgstr "Multisat" + +msgid "Multisat all select" +msgstr "Multisat alle auswählen" + +msgid "Music/Ballet/Dance" +msgstr "Musik/Ballett/Tanz" + +msgid "Mute" +msgstr "Stummschaltung" + +msgid "N/A" +msgstr "N/V" + +msgid "NEXT" +msgstr "Danach" + +msgid "NFI image flashing" +msgstr "NFI Image Flashing" + +msgid "NFI image flashing completed. Press Yellow to Reboot!" +msgstr "" +"NFI Image Flashen beendet.\n" +"Drücken Sie Gelb für einen Neustart!" + +msgid "NIM" +msgstr "NIM" + +msgid "NOW" +msgstr "Jetzt" + +msgid "NTSC" +msgstr "NTSC" + +msgid "Name" +msgstr "Name" + +msgid "Nameserver" +msgstr "Nameserver" + +#, python-format +msgid "Nameserver %d" +msgstr "Nameserver %d" + +msgid "Nameserver settings" +msgstr "DNS-Einstellungen" + +msgid "Nameserver setup" +msgstr "DNS-Einstellungen" + +msgid "Namespace" +msgstr "Namensraum" + +msgid "Netmask" +msgstr "Netzmaske" + +msgid "Network" +msgstr "Netzwerk" + +msgid "Network ID" +msgstr "Netzwerk ID" + +msgid "Network configuration..." +msgstr "Netzwerk-Konfiguration" + +msgid "Network mount" +msgstr "Netzwerk-Freigaben" + +#, python-format +msgid "Network mount %s" +msgstr "Netzwerk Mount %s" + +msgid "Network name (SSID)" +msgstr "Netzwerkname (SSID)" + +msgid "Network scan" +msgstr "Netzwerksuche" + +msgid "Network setup" +msgstr "Netzwerkeinstellungen" + +msgid "Network test" +msgstr "Netzwerk Test" + +msgid "Network test..." +msgstr "Netzwerk Test..." + +msgid "Network test: " +msgstr "Netzwerk Test:" + +msgid "Network wizard" +msgstr "Netzwerkassistent" + +msgid "Network:" +msgstr "Netzwerk:" + +msgid "New" +msgstr "Neu" + +msgid "New PIN" +msgstr "Neuer PIN" + +msgid "New version:" +msgstr "Neue Version:" + +msgid "News Current Affairs" +msgstr "Nachrichten/Aktuelles Tagesgeschehen" + +msgctxt "button label, 'next screen'" +msgid "Next" +msgstr "Vor" + +msgctxt "now/next: 'next' event label" +msgid "Next" +msgstr "Danach" + +msgid "No" +msgstr "Nein" + +msgid "No (supported) DVDROM found!" +msgstr "Kein (unterstütztes) DVD-Laufwerk gefunden!" + +msgid "No Connection" +msgstr "Keine Verbindung" + +msgid "No HDD found or HDD not initialized!" +msgstr "" +"Keine Festplatte gefunden oder\n" +"Festplatte nicht initialisiert." + +msgid "No backup needed" +msgstr "Keine Sicherung benötigt" + +msgid "No cable tuner found!" +msgstr "Kein Kabelempfänger gefunden!" + +msgid "" +"No data on transponder!\n" +"(Timeout reading PAT)" +msgstr "" +"Keine Daten auf dem Transponder!\n" +"(Zeit lief beim Lesen der PAT ab)" + +msgid "No delay" +msgstr "Keine Verzögerung" + +msgid "No description available." +msgstr "Keine Beschreibung verfügbar." + +msgid "No details for this image file" +msgstr "Keine Details zum Image verfügbar" + +msgid "No displayable files on this medium found!" +msgstr "Keine anzeigbaren Dateien auf diesem Medium gefunden!" + +msgid "No event info found, recording indefinitely." +msgstr "Keine EPG-Daten gefunden. Starte unbegrenzte Aufnahme." + +msgid "" +"No fast winding possible yet.. but you can use the number buttons to skip " +"forward/backward!" +msgstr "" +"Spulen nicht möglich, aber Sie können mit Hilfe der Zahlen-Tasten springen!" + +msgid "No free index available" +msgstr "Kein freier Index verfügbar" + +msgid "No free tuner!" +msgstr "Kein freier Tuner" + +msgid "No network connection available." +msgstr "Keine Netzwerkverbindung verfügbar." + +msgid "No networks found" +msgstr "Keine Netzwerke gefunden" + +msgid "No new plugins found" +msgstr "Keine neuen Plugins gefunden" + +msgid "No positioner capable frontend found." +msgstr "Keinen rotortauglichen Tuner gefunden." + +msgid "No satellites configured. Plese check your tuner setup." +msgstr "" +"Keine Satelliten konfigriert. Bitte die Tuner-Konfiguration überprüfen." + +msgid "No service" +msgstr "Kein Service" + +msgid "No services/providers selected" +msgstr "Keine Kanäle/Provider ausgewählt" + +msgid "No standby" +msgstr "Kein Standby" + +msgid "No suitable sat tuner found!" +msgstr "Kein Satellitenempfänger gefunden!" + +msgid "No tags are set on these movies." +msgstr "Keine Tags für diese Filme gesetzt." + +msgid "No timeout" +msgstr "Kein Timeout" + +msgid "No to all" +msgstr "Nein zu allen" + +msgid "No transparency" +msgstr "Keine Transparenz" + +msgid "No tuner is configured for use with a diseqc positioner!" +msgstr "" +"Es wurde kein Tuner für die Benutzung eines DiSEqC-Rotors konfiguriert." + +msgid "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Kein Tuner konfiguriert!\n" +"Bitte die Tuner konfigurieren, bevor die Kanalsuche gestartet wird." + +msgid "No updates available" +msgstr "Keine Updates verfügbar" + +msgid "No updates available. Please try again later." +msgstr "Keine Updates verfügbar. Bitte später nochmal versuchen." + +msgid "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" +msgstr "" +"Kein gültiger Kanal-PIN gefunden!\n" +"Wollen Sie den Kanal-PIN jetzt ändern?\n" +"Wenn Sie 'Nein' wählen, bleibt der Senderschutz deaktiviert!" + +msgid "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" +msgstr "" +"Kein gültiger Kanal-PIN gefunden!\n" +"Wollen Sie den Kanal-PIN jetzt ändern?\n" +"Wenn Sie 'Nein' wählen, bleibt der Einstellungen-Schutz deaktiviert!" + +msgid "No wireless networks found! Searching..." +msgstr "Keine Funk-Netzwerke gefunden! Suche ..." + +msgid "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is " +"configured correctly." +msgstr "" +"Kein funktionierender Netzwerkadapter gefunden.\n" +"Stellen Sie sicher, dass Sie ein Netzwerkkabel angeschlossen haben und das " +"Ihr Netzwerk richtig konfiguriert ist." + +msgid "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your " +"network is configured correctly." +msgstr "" +"Kein funktionierender WLAN-Netzwerkadapter gefunden.\n" +"Stellen Sie sicher, dass Sie ein kompatibles Gerät angeschlossen haben oder " +"aktivieren Sie den internen Netzwerkadapter." + +msgid "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable " +"your local network interface." +msgstr "" +"Keine funktionierende WLAN-Verbindung gefunden.\n" +"Bitte prüfen Sie, ob Sie ein kompatibles WLAN-Gerät angeschlossen haben oder " +"aktivieren Sie die LAN-Verbindung." + +msgid "No, but restart from begin" +msgstr "Nein, aber von Anfang an neu beginnen" + +msgid "No, do nothing." +msgstr "Nein, nichts tun" + +msgid "No, just start my receiver" +msgstr "Nein, starte nur den Receiver" + +msgid "No, never" +msgstr "Nein, niemals" + +msgid "None" +msgstr "Keine" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right) +msgid "Nonlinear" +msgstr "Nicht linear" + +msgid "Normal mode" +msgstr "Normal Modus" + +msgid "North" +msgstr "Nord" + +msgid "Norwegian" +msgstr "Norwegisch" + +msgid "Not associated" +msgstr "Nicht verbunden" + +msgid "Not configured" +msgstr "Nicht konfiguriert" + +#, python-format +msgid "" +"Not enough disk space. Please free up some disk space and try again. (%d MB " +"required, %d MB available)" +msgstr "" +"Nicht genügend freier Speicherplatz. Bitte löschen Sie nicht mehr benötigte " +"Dateien und versuchen es erneut. (%d MB benötigt, %d MB verfügbar)" + +msgid "Nothing connected" +msgstr "Nichts angeschlossen" + +msgid "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Nichts zu suchen!\n" +"Bitte den Tuner vor der Suche einstellen." + +msgctxt "now/next: 'now' event label" +msgid "Now" +msgstr "Jetzt" + +msgid "Now playing" +msgstr "Wiedergabe läuft" + +msgid "" +"Now, use the contrast setting to turn up the brightness of the background as " +"much as possible, but make sure that you can still see the difference " +"between the two brightest levels of shades.If you have done that, press OK." +msgstr "" +"Benutzen Sie jetzt die Kontrastregelung, um die Helligkeit des Hintergrunds " +"so weit wie möglich zu erhöhen. Achten Sie darauf, dass der Unterschied " +"zwischen den beiden hellsten Schattierungen erkennbar bleibt. Drücken Sie " +"anschließend OK." + +msgid "OK" +msgstr "OK" + +msgid "OK, guide me through the upgrade process" +msgstr "OK, führen Sie mich durch den Aktualisierungsprozess" + +msgid "ONID" +msgstr "ONID" + +msgid "OSD name request" +msgstr "Benutzeroberflächen Anfrage" + +msgid "OSD settings" +msgstr "OSD-Einstellungen" + +msgid "OSD transparency" +msgstr "OSD-Transparenz" + +msgid "Off" +msgstr "Aus" + +msgid "Offline decode delay (ms)" +msgstr "Offline Entschlüsseln Verzögerung (ms)" + +msgid "Ok" +msgstr "OK" + +msgid "On" +msgstr "An" + +msgid "On end of movie" +msgstr "Beim Filmende" + +msgid "On end of movie (as menu)" +msgstr "Am Ende des Films (als Menü)" + +msgid "One" +msgstr "Eins" + +msgid "Only extensions." +msgstr "Nur Erweiterungen." + +msgid "Only free scan" +msgstr "Nur frei empfangbare" + +msgid "Open service list" +msgstr "Kanalliste öffnen" + +msgid "Open the movie list" +msgstr "Zurück zur Videoliste" + +msgid "Orbital position" +msgstr "Orbitale Position" + +msgid "Original" +msgstr "Original" + +msgid "Other" +msgstr "Andere" + +msgid "Output" +msgstr "Ausgabe" + +msgid "Overwrite configuration files during software upgrade?" +msgstr "Konfigurationsdateien beim Software-Update überschreiben?" + +msgid "Overwrite configuration files?" +msgstr "Konfigurationsdateien überschreiben?" + +msgid "PAL" +msgstr "PAL" + +msgid "PCR PID" +msgstr "PCR PID" + +msgid "PIDs" +msgstr "PIDs" + +msgid "PIN code needed" +msgstr "PIN-Code benötigt" + +msgid "PLP ID" +msgstr "PLP ID" + +msgid "PMT PID" +msgstr "PMT PID" + +msgid "Package list update" +msgstr "Paketlistenaktualisierung" + +msgid "Packet management" +msgstr "Paketverwaltung" + +msgid "Packet manager" +msgstr "Paketmanager" + +#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term +msgid "Pan&scan" +msgstr "Pan&Scan" + +msgid "Parent directory" +msgstr "übergeordnetes Verzeichnis" + +msgid "Parental control" +msgstr "Jugendschutz" + +msgid "Parental control services editor" +msgstr "Jugendschutz-Kanaleditor" + +msgid "Parental control setup" +msgstr "Jugendschutz-Einstellungen" + +msgid "Parental control type" +msgstr "Jugendschutz-Typ" + +msgid "Password" +msgstr "Passwort" + +msgid "Pause" +msgstr "Pause" + +msgid "Pause movie at end" +msgstr "Am Filmende pausieren" + +msgid "Pause playback" +msgstr "Wiedergabe pausieren" + +msgid "Pauze/Continue playback" +msgstr "Wiedergabe anhalten/fortsetzen" + +msgid "Percentage left" +msgstr "Prozentangabe links" + +msgid "Percentage right" +msgstr "Prozentangabe rechts" + +msgid "Permanently delete all recordings in the trash can?" +msgstr "Alle Aufnahmen im Mülleimer löschen?" + +msgid "Permanently remove all deleted items" +msgstr "Gelöschte Filme endgültig entfernen" + +msgid "Persian" +msgstr "Persisch" + +msgid "Phone number" +msgstr "Telefonnummer" + +msgid "PiP setup" +msgstr "Bild im Bild (PiP) - Einstellung" + +msgid "Picon" +msgstr "Picon" + +msgid "Picon and service name" +msgstr "Picon und Kanalname" + +msgid "Picture player" +msgstr "Bildbetrachter" + +#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term. +msgid "Pillarbox" +msgstr "Pillarbox" + +msgid "Pilot" +msgstr "Pilot" + +msgid "Play" +msgstr "Abspielen" + +msgid "Play DVD" +msgstr "DVD abspielen" + +msgid "Play audio in background" +msgstr "Ton im Hintergrund abspielen" + +msgid "Play audio-CD..." +msgstr "Musik-CD abspielen..." + +msgid "Play back media files" +msgstr "Mediendateien wiedergeben" + +msgid "Play entry" +msgstr "Eintrag abspielen" + +msgid "Play from next mark or playlist entry" +msgstr "Wiedergabe ab der nächsten Markierung/Listeneintrag" + +msgid "Play from previous mark or playlist entry" +msgstr "Wiedergabe ab der letzten Markierung/Listeneintrag" + +msgid "Play music..." +msgstr "Musik abspielen..." + +msgid "Play next" +msgstr "Nächste wiedergeben" + +msgid "Play next (return to movie list)" +msgstr "Nächste wiedergeben (zur Filmliste zurückkehren)" + +msgid "Play next (return to previous service)" +msgstr "Nächste wiedergeben (zum vorherigen Kanal zurückkehren)" + +msgid "Play previous" +msgstr "Vorherige wiedergeben" + +msgid "Play recorded movies..." +msgstr "Aufgenommene Filme abspielen..." + +msgid "Please add titles to the compilation." +msgstr "Bitte fügen Sie Titel zur Ihrer Zusammenstellung hinzu." + +msgid "Please change recording endtime" +msgstr "Bitte Aufnahmeendzeit ändern" + +msgid "Please check your network settings!" +msgstr "Bitte überprüfen Sie Ihre Netzwerkeinstellungen" + +msgid "Please choose an extension..." +msgstr "Bitte eine Erweiterung auswählen..." + +msgid "" +"Please configure or verify your Nameservers by filling out the required " +"values.\n" +"When you are ready press OK to continue." +msgstr "" +"Konfigurieren Sie Ihre DNS-Server durch Ausfüllen der entsprechenden Werte.\n" +"Drücken Sie OK zum Fortfahren" + +msgid "" +"Please configure your internet connection by filling out the required " +"values.\n" +"When you are ready press OK to continue." +msgstr "" +"Konfigurieren Sie Ihr Netzwerk durch Ausfüllen der entsprechenden Werte.\n" +"Drücken Sie OK zum Fortfahren" + +msgid "Please connect your receiver to the internet" +msgstr "Bitte verbinden Sie Ihren Receiver mit dem Internet" + +msgid "Please do not change any values unless you know what you are doing!" +msgstr "Bitte ändern Sie keine Werte, falls Sie nicht wissen, was Sie tun!" + +msgid "Please enter a name for the new bouquet" +msgstr "Bitte einen Namen für das neue Bouquet eingeben" + +msgid "Please enter a name for the new marker" +msgstr "Bitte einen Namen für den neuen Marker eingeben" + +msgid "Please enter a new filename" +msgstr "Bitte neuen Dateinamen eingeben" + +msgid "Please enter filename (empty = use current date)" +msgstr "Bitte einen Dateinamen eingeben (leer = Dateiname ist aktuelles Datum)" + +msgid "Please enter name of the new directory" +msgstr "Bitte den Namen des neuen Verzeichnisses eingeben" + +msgid "Please enter new name:" +msgstr "Bitte neuen Namen eingeben:" + +msgid "Please enter the correct pin code" +msgstr "Bitte den korrekten PIN-Code eingeben" + +msgid "Please enter the old PIN code" +msgstr "Bitte den alten PIN-Code eingeben" + +msgid "Please follow the instructions on the TV" +msgstr "Bitte folgen Sie den Angaben auf Ihrem Fernseher" + +msgid "" +"Please note that the previously selected media could not be accessed and " +"therefore the default directory is being used instead." +msgstr "" +"Auf das zuletzt ausgewählte Medium konnte nicht zugegriffen werden, daher " +"wird stattdessen das Standardverzeichnis benutzt." + +msgid "Please press OK to continue." +msgstr "Zum Fortfahren bitte OK drücken." + +msgid "Please select a default EPG type..." +msgstr "Bitte einen Standard-EPG-Typ wählen..." + +msgid "Please select a playlist to delete..." +msgstr "Bitte wählen Sie eine Wiedergabeliste zum Löschen..." + +msgid "Please select a playlist..." +msgstr "Bitte wählen Sie eine Wiedergabeliste..." + +msgid "Please select a sub service..." +msgstr "Bitte einen Unterkanal auswählen..." + +msgid "Please select a subservice to record..." +msgstr "Bitte einen Unterkanal zur Aufnahme auswählen..." + +msgid "Please select a subservice..." +msgstr "Bitte einen Unterkanal auswählen..." + +msgid "Please select an NFI file and press green key to flash!" +msgstr "" +"Bitte wählen Sie eine NFI-Datei aus und drücken Sie die grüne Taste zum " +"Flashen!" + +msgid "Please select medium to be scanned" +msgstr "Bitte Medium zum Scannen auswählen" + +msgid "Please select medium to use as backup location" +msgstr "Bitte wählen Sie einen Datenträger als Sicherungsziel aus" + +msgid "Please select tag to filter..." +msgstr "Bitte einen Tag zum Filtern auswählen..." + +msgid "Please select the movie path..." +msgstr "Bitte den Filmpfad angeben..." + +msgid "" +"Please select the network interface that you want to use for your internet " +"connection.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Bitte wählen Sie die Netzwerkschnittstelle welche Sie für Ihren " +"Internetzugang nutzen möchten.\n" +"\n" +"Drücken Sie OK zum Fortfahren" + +msgid "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Bitte wählen Sie das Funk-Netzwerk, zu dem Sie sich verbinden möchten.\n" +"\n" +"Drücken Sie OK zum Fortfahren." + +msgid "Please set up tuner A" +msgstr "Einstellungen für Tuner A." + +msgid "Please set up tuner B" +msgstr "Einstellungen für Tuner B." + +msgid "Please set up tuner C" +msgstr "Einstellungen für Tuner C." + +msgid "Please set up tuner D" +msgstr "Einstellungen für Tuner D." + +msgid "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." +msgstr "" +"Verschieben des 'Bild im Bild' über die Navigationstasten.\n" +"Bouquet +/-, um die Größe zu ändern.\n" +"OK zum Speichern, EXIT zum Abbrechen." + +msgid "" +"Please use the UP and DOWN keys to select your language. Afterwards press " +"the OK button." +msgstr "" +"Bitte benutzen Sie die Hoch/Runter-Tasten, um Ihre Sprache auszuwählen. " +"Danach drücken Sie bitte OK." + +msgid "Please wait" +msgstr "Bitte warten" + +msgid "Please wait (downloading channel list)" +msgstr "Bitte warten (Kanalliste wird geladen)..." + +msgid "Please wait (downloading softcam)" +msgstr "Bitte warten (softcam wird heruntergeladen)..." + +msgid "Please wait (updating packages)" +msgstr "Bitte warten (Paketupdates)..." + +msgid "Please wait for activation of your network configuration..." +msgstr "Bitte warten Sie, die Netzwerk-Konfiguration wird aktiviert." + +msgid "Please wait while scanning is in progress..." +msgstr "Bitte warten Sie, der Suchvorgang läuft." + +msgid "Please wait while we configure your network..." +msgstr "Bitte warten Sie, das Netzwerk wird konfiguriert." + +msgid "Please wait while we prepare your network interfaces..." +msgstr "Bitte warten Sie, das Netzwerk wird konfiguriert." + +msgid "Please wait while we test your network..." +msgstr "Bitte warten Sie, das Netzwerk wird überprüft." + +msgid "Please wait while your network is restarting..." +msgstr "Bitte warten Sie, das Netzwerk wird neu gestartet." + +msgid "Please wait..." +msgstr "Bitte warten..." + +msgid "Please wait... Loading list..." +msgstr "Bitte warten... Liste wird geladen..." + +msgid "Plugin browser" +msgstr "Plugin Browser" + +msgid "Plugin manager activity information" +msgstr "Pluginverwaltung: geplante Aktionen." + +msgid "Plugin manager help" +msgstr "Pluginverwaltung: Hilfe" + +msgid "Plugins" +msgstr "Plugins" + +msgid "Polarisation" +msgstr "Polarisation" + +msgid "Polarisation:" +msgstr "Polarisation:" + +msgid "Polarization" +msgstr "Polarisation" + +msgid "Polish" +msgstr "Polnisch" + +msgid "Port A" +msgstr "Port A" + +msgid "Port B" +msgstr "Port B" + +msgid "Port C" +msgstr "Port C" + +msgid "Port D" +msgstr "Port D" + +msgid "Portuguese" +msgstr "Portugiesisch" + +msgid "Position of completed timers in timerlist" +msgstr "Position beendeter Timer in der Timerliste" + +msgid "Position stored at index" +msgstr "Position gespeichert auf Index" + +msgid "Positioner" +msgstr "Rotor" + +msgid "Positioner (selecting satellites)" +msgstr "Positioner (Auswahl der Satelliten)" + +msgid "Positioner Setup" +msgstr "Rotor-Einstellungen" + +msgid "Positioner setup" +msgstr "Rotor-Einstellungen" + +msgid "Power threshold in mA" +msgstr "Strom Schwellwert in mA" + +msgid "Predefined transponder" +msgstr "Vordefinierte Transponder" + +msgid "Prefer AC3 track" +msgstr "Bevorzuge AC3" + +msgid "Prefer AC3+ track" +msgstr "Bevorzuge AC3+ Tonspur" + +msgid "Prefer audio track stored by service" +msgstr "Bevorzuge gespeicherte Tonspur des Senders" + +msgid "Prefer graphical DVB subtitles" +msgstr "Bevorzuge DVB-grafische Untertitel" + +msgid "Prefer subtitles for hearing impaired" +msgstr "Bevorzuge Untertitel für Hörgeschädigte" + +msgid "Prefer subtitles stored by service" +msgstr "Bevorzuge gespeicherten Untertitel des Senders" + +msgid "Preferred tuner" +msgstr "Bevorzugter Tuner" + +msgid "Preferred tuner for recordings" +msgstr "Bevorzugter Tuner für Aufnahmen" + +msgid "Prepare another USB stick for image flashing" +msgstr "Weiteren USB-Stick zum Image-Flashen vorbereiten" + +msgid "Preparing... Please wait" +msgstr "Vorbereitung läuft... Bitte warten" + +msgid "Press '0' to toggle PiP mode" +msgstr "Drücke '0' zum Umschalten des PiP-Modus" + +msgid "Press INFO on your remote control for additional information." +msgstr "INFO drücken für zusätzliche Informationen." + +msgid "Press MENU on your remote control for additional options." +msgstr "Menu drücken für zusätzliche Optionen." + +msgid "Press OK on your remote control to continue." +msgstr "OK drücken zum Fortfahren." + +msgid "Press OK to activate the selected skin." +msgstr "OK drücken, um den markierten Skin zu aktivieren." + +msgid "Press OK to activate the settings." +msgstr "OK drücken zum Aktivieren." + +msgid "Press OK to edit the settings." +msgstr "OK drücken zum Editieren." + +#, python-format +msgid "Press OK to get further details for %s" +msgstr "Drücken Sie OK, um weitere Details zu %s zu erhalten." + +msgid "Press OK to scan" +msgstr "Zum Starten der Suche OK drücken." + +msgid "Press OK to select a provider." +msgstr "Drücken Sie OK um einen Provider auszuwählen." + +msgid "Press OK to select satellites" +msgstr "Drücke OK zur Auswahl der Satelliten" + +msgid "Press OK to select/deselect a CAId." +msgstr "Drücken Sie OK, um eine CAID zu selektieren/deselektieren." + +msgid "Press OK to start the scan" +msgstr "Zum Starten der Suche OK drücken." + +msgid "Press OK to toggle the selection" +msgstr "Drücke OK zum Umschalten der Auswahl" + +msgid "Press OK to toggle the selection." +msgstr "Drücken Sie OK, um die Auswahl umzuschalten." + +msgid "Press yellow to set this interface as default interface." +msgstr "Drücken Sie Gelb, um diese Schnittstelle als Standard zu setzen." + +msgctxt "button label, 'previous screen'" +msgid "Prev" +msgstr "Zurück" + +msgid "Preview" +msgstr "Vorschau" + +msgid "Preview menu" +msgstr "Vorschau des DVD-Menüs" + +msgid "Preview selected channel" +msgstr "Vorschau des ausgewählten Kanals" + +msgid "Primary DNS" +msgstr "Primärer DNS" + +msgid "Priority" +msgstr "Priorität" + +msgid "Process" +msgstr "Aktivitätsanzeige" + +msgid "Progress" +msgstr "Fortschritt" + +msgid "Progress bar left" +msgstr "Fortschrittsbalken links" + +msgid "Progress bar right" +msgstr "Fortschrittsbalken rechts" + +msgid "Properties of current title" +msgstr "Details zum ausgewählten Titel" + +msgid "Protect services" +msgstr "Kanäle schützen" + +msgid "Protect setup" +msgstr "Einstellungen schützen" + +msgid "Provider" +msgstr "Provider" + +msgid "Provider to scan" +msgstr "Zu durchsuchende Anbieter" + +msgid "Providers" +msgstr "Anbieter" + +msgid "Put TV in standby" +msgstr "Fernseher in den Standby versetzen" + +msgid "Put receiver in standby" +msgstr "A/V-Receiver in den Standby versetzen" + +msgid "Python frontend for /tmp/mmi.socket" +msgstr "Python frontend für /tmp/mmi.socket" + +msgid "Quick" +msgstr "Schnell" + +msgid "Quick zap" +msgstr "Schnellumschalter" + +msgid "RF output" +msgstr "RF-Ausgang" + +msgid "RGB" +msgstr "RGB" + +msgid "Radio" +msgstr "Radio" + +msgid "Ram disk" +msgstr "Ramdisk" + +msgid "Random" +msgstr "Zufällig" + +#, python-format +msgid "Rating defined by broadcaster - %d" +msgstr "Bewertung der Sendeanstalt - %d" + +msgid "Rating undefined" +msgstr "Bewertung nicht verfügbar" + +msgid "Really close without saving settings?" +msgstr "Wirklich ohne Sichern beenden?" + +msgid "Really delete done timers?" +msgstr "Vollendete Timer wirklich löschen?" + +msgid "Really exit the subservices quickzap?" +msgstr "Den Subservices-Schnellumschalter wirklich beenden?" + +msgid "Really reboot now?" +msgstr "Wollen Sie trotzdem neu booten?" + +msgid "Really restart now?" +msgstr "Wollen Sie trotzdem neu starten?" + +msgid "Really shutdown now?" +msgstr "Wollen Sie trotzdem ausschalten?" + +msgid "Really upgrade the frontprocessor and reboot now?" +msgstr "" +"Wollen Sie den Frontprozessor wirklich aktualisieren und anschließend neu " +"starten?" + +msgid "Really upgrade your settop box and reboot now?" +msgstr "" +"Wollen Sie Ihren Receiver wirklich aktualisieren und anschließend neu " +"starten?" + +msgid "Reboot" +msgstr "Neustart" + +msgid "Rec" +msgstr "Rec" + +msgid "Reception settings" +msgstr "Empfangseinstellungen" + +msgid "Record" +msgstr "Aufnahme" + +#, python-format +msgid "Record time limited due to conflicting timer %s" +msgstr "Aufnahmezeit aufgrund des in Konflikt stehenden Timers %s begrenzt" + +msgid "Recorded files..." +msgstr "Aufgenommene Dateien..." + +msgid "Recording" +msgstr "Aufnahme" + +msgid "Recording in progress" +msgstr "Aktive Aufnahmen" + +msgid "Recording paths" +msgstr "Aufnahmepfade" + +msgid "Recording type" +msgstr "Aufnahmetyp" + +msgid "Recording(s) are in progress or coming up in few seconds!" +msgstr "Zurzeit sind Aufnahmen aktiv oder starten gleich!" + +msgid "Recordings" +msgstr "Aufnahmen" + +msgid "Recordings always have priority" +msgstr "Aufnahmen haben immer Vorrang" + +msgid "Red button..." +msgstr "Rote Taste..." + +msgid "Reenter new PIN" +msgstr "Neuen PIN erneut eingeben" + +msgid "Refresh rate" +msgstr "Bildwiederholfrequenz" + +msgid "Refresh rate selection." +msgstr "Auswahl der Bildwiederholfrequenz." + +msgid "Regard deep standby as standby" +msgstr "Deep-Standby wie Standby behandeln" + +msgid "Relative" +msgstr "Relativ" + +msgid "Reload" +msgstr "Aktualisieren" + +msgid "Reload black-/white lists" +msgstr "Black-/Whitelists neu laden" + +msgid "Reloading bouquets and services..." +msgstr "Bouquets und Sender neu laden" + +msgid "Remember last service in PiP" +msgstr "Merke letzten PiP-Kanal" + +msgid "Remember service PIN" +msgstr "Kanal PIN merken" + +msgid "Remember these settings for each folder" +msgstr "Diese Einstellungen für jeden Ordner verwenden" + +msgid "Reminder, you have chosen to save timeshift file." +msgstr "Erinnerung zum Speichern der Timeshift-Datei." + +msgid "Remote control type" +msgstr "Typ der Fernbedienung" + +msgid "Removal has completed." +msgstr "Löschung abgeschlossen." + +msgid "Remove" +msgstr "Entfernen" + +msgid "Remove a mark" +msgstr "Markierung entfernen" + +msgid "Remove a nameserver entry" +msgstr "DNS-Servereintrag entfernen" + +msgid "Remove bookmark" +msgstr "Lesezeichen entfernen" + +msgid "Remove completed timers after (days)" +msgstr "Entferne abgeschlossene Timer nach (Tage)" + +msgid "Remove currently selected title" +msgstr "Entferne aktuell ausgewählten Titel" + +msgid "Remove items from trash can after (days)" +msgstr "Löschen aus Mülleimer nach (Tagen)" + +msgid "Remove plugins" +msgstr "Plugins entfernen" + +msgid "Remove title" +msgstr "Titel entfernen" + +msgid "Removing" +msgstr "Entferne" + +#, python-format +msgid "Removing directory %s failed. (Maybe not empty.)" +msgstr "Entfernen des Verzeichnisses %s fehlgeschlagen. (nicht leer?)" + +msgid "Removing partition table" +msgstr "Partitionstabelle erneut einlesen" + +msgid "Rename" +msgstr "Umbenennen" + +msgid "Repeat" +msgstr "Wiederholen" + +msgid "Repeat type" +msgstr "Wiederholungstyp" + +msgid "Repeating event currently recording... What do you want to do?" +msgstr "" +"Wiederholender Aufnahmetimer ist zurzeit aktiv...\n" +"Was wollen Sie machen?" + +msgid "Repeats" +msgstr "Wiederholungen" + +msgid "Require authentication for http streams" +msgstr "Authentifizierung für HTTP-Streams erforderlich" + +msgid "Required medium type:" +msgstr "Benötigte Rohlingsorte:" + +msgid "Rereading partition table" +msgstr "Partitionstabelle erneut einlesen" + +msgid "Reserved" +msgstr "Reserviert" + +msgid "Reset" +msgstr "Zurücksetzen" + +msgid "Reset and renumerate title names" +msgstr "Titelnamen zurücksetzen und neu nummerieren" + +msgid "Reset playback position" +msgstr "Wiedergabeposition zurücksetzen" + +msgid "Reset video enhancement settings to system defaults?" +msgstr "Erweiterte A/V-Einstellungen auf Standardwerte zurücksetzten?" + +msgid "Reset video enhancement settings to your last configuration?" +msgstr "" +"Erweiterte A/V-Einstellungen auf ihre letzte Konfiguration zurücksetzen?" + +msgid "Resolution" +msgstr "Auflösung" + +msgid "Restart" +msgstr "Neustart" + +msgid "Restart GUI now?" +msgstr "Benutzeroberfläche jetzt neu starten?" + +msgid "Restart enigma" +msgstr "Benutzeroberfläche neu starten" + +msgid "Restart network" +msgstr "Netzwerk neu starten" + +msgid "Restart test" +msgstr "Test wiederholen" + +msgid "Restart your network connection and interfaces.\n" +msgstr "Neustart der Netzwerk-Konfiguration des Receivers.\n" + +msgid "Restore" +msgstr "Zurückspielen" + +msgid "Restore backups" +msgstr "Einstellungen wiederherstellen" + +msgid "Restore is running..." +msgstr "Wiederherstellung wird ausgeführt..." + +msgid "Restore system settings" +msgstr "Einstellungen wiederherstellen" + +msgid "Restoring..." +msgstr "Wiederherstellung..." + +msgid "Resume from last position" +msgstr "An letzter Position fortsetzen" + +#, python-format +msgid "Resume position at %s" +msgstr "Wiedergabestart ab %s" + +#. TRANSLATORS: The string "Resuming playback" flashes for a moment +#. TRANSLATORS: at the start of a movie, when the user has selected +#. TRANSLATORS: "Resume from last position" as start behavior. +#. TRANSLATORS: The purpose is to notify the user that the movie starts +#. TRANSLATORS: in the middle somewhere and not from the beginning. +#. TRANSLATORS: (Some translators seem to have interpreted it as a +#. TRANSLATORS: question or a choice, but it is a statement.) +msgid "Resuming playback" +msgstr "Setze Wiedergabe fort" + +msgid "Return to movie list" +msgstr "Zurück zur Videoliste" + +msgid "Return to previous service" +msgstr "Zurück zum letzten Service" + +msgid "Reverse bouquet buttons" +msgstr "Bouquet-Tasten invertieren" + +msgid "Reverse list" +msgstr "Liste umdrehen" + +msgid "Rewind speeds" +msgstr "Rücklauf-Geschwindigkeiten" + +msgid "Rewrap teletext subtitles" +msgstr "Teletext-Untertitel anders umbrechen" + +msgid "Right" +msgstr "Rechts" + +msgid "Right from servicename" +msgstr "Rechts vom Sendernamen" + +msgid "Roll-off" +msgstr "Roll-off" + +msgid "Romanian" +msgstr "Rumänisch" + +msgid "Root directory" +msgstr "Hauptverzeichnis" + +msgid "Rotor step position:" +msgstr "Rotor Schrittposition:" + +msgid "Rotor turning speed" +msgstr "Rotor Drehgeschwindigkeit" + +msgid "Round start time on" +msgstr "Runde Startzeit auf" + +msgid "Russian" +msgstr "Russisch" + +msgid "S-Video" +msgstr "S-Video" + +msgid "SID" +msgstr "SID" + +msgid "SINGLE LAYER DVD" +msgstr "SINGLE LAYER DVD" + +msgid "SNR" +msgstr "SNR" + +msgid "SNR:" +msgstr "SNR:" + +msgid "SSID:" +msgstr "SSID:" + +msgid "Same resolution as skin" +msgstr "Gleiche Auflösung wie der Skin" + +msgid "Sat" +msgstr "Sa" + +msgid "Satellite" +msgstr "Satellit" + +msgid "Satellite dish setup" +msgstr "Einstellungen der Satellitenschüssel" + +msgid "Satellite equipment" +msgstr "Satelliten-Ausrüstung" + +msgid "Satellite equipment setup" +msgstr "Satellitenausrüstungseinstellungen" + +msgid "Satellite longitude:" +msgstr "Satelliten Längengrad:" + +msgid "Satellites" +msgstr "Satelliten" + +msgid "Satfinder" +msgstr "Satelliten-Sucher" + +msgid "Sats" +msgstr "Satelliten" + +msgid "Saturation" +msgstr "Sättigung" + +msgid "Saturday" +msgstr "Samstag" + +msgid "Save" +msgstr "Speichern" + +msgid "Save playlist" +msgstr "Wiedergabeliste speichern" + +msgid "Save timeshift file" +msgstr "Timeshift-Datei speichern" + +msgid "Save timeshift file in movie directory" +msgstr "Timeshift-Datei in Filmordner speichern" + +msgid "Scaler sharpness" +msgstr "Skalierungsschärfe" + +msgid "Scaling mode" +msgstr "Skalierungsmodus" + +msgid "Scan" +msgstr "Suche " + +msgid "Scan " +msgstr "Suche " + +#. TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' +#, python-format +msgid "Scan %s" +msgstr "Suche %s" + +#. TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' +#, python-format +msgid "Scan %s band" +msgstr "Suche %s Band" + +msgid "Scan additional SR" +msgstr "Durchsuche weitere SR" + +msgid "Scan files..." +msgstr "Dateien durchsuchen" + +msgid "Scan wireless networks" +msgstr "WLAN-Netzwerke suchen" + +msgid "" +"Scan your network for wireless access points and connect to them using your " +"selected wireless device.\n" +msgstr "" +"Durchsucht Ihr Netzwerk nach WLAN-Zugangspunkten und stellt eine Verbindung " +"mit Hilfe Ihres gewählten WLAN-Gerätes her.\n" + +#, python-format +msgid "Scanning %s..." +msgstr "Suche %s..." + +#. TRANSLATORS: The stb is performing a channel scan, progress percentage is printed in '%d' (and '%%' will show a single '%' symbol) +#, python-format +msgid "Scanning - %d%% completed" +msgid_plural "Scanning - %d%% completed" +msgstr[0] "Suche - %d%% beendet" +msgstr[1] "Suche - %d%% beendet" + +#, python-format +msgid "Scanning completed, %d channel found" +msgid_plural "Scanning completed, %d channels found" +msgstr[0] "Suche beendet, %d gefundener Kanal" +msgstr[1] "Suche beendet, %d Kanäle gefunden" + +msgid "Scanning failed!" +msgstr "Suche gescheitert!" + +msgid "Scanning..." +msgstr "Suche..." + +msgid "" +"Scans default lamedbs sorted by satellite with a connected dish positioner" +msgstr "" +"Führt eine Sendersuche aller Satelliten durch, wenn Sie einen Rotor an Ihre " +"Satellitenschüssel angeschlossen haben." + +msgid "Search east" +msgstr "Östlich suchen" + +msgid "Search west" +msgstr "Westlich suchen" + +msgid "Searching" +msgstr "Durchsuche" + +msgid "Searching east ..." +msgstr "Suche östlich ..." + +msgid "Searching for available updates. Please wait..." +msgstr "Suche nach verfügbaren Updates. Bitte warten..." + +msgid "Searching for new installed or removed packages. Please wait..." +msgstr "" +"Suche nach neu installierten oder deinstallierten Erweiterungen. Bitte " +"warten ..." + +msgid "Searching west ..." +msgstr "Suche westlich ..." + +msgid "Second cable of motorized LNB" +msgstr "Zweites Kabel für motorisiertes LNB" + +msgid "Secondary DNS" +msgstr "Sekundärer DNS" + +msgid "Seek" +msgstr "Spulen" + +msgid "Seek backward" +msgstr "Rückwärts spulen" + +msgid "Seek backward (enter time)" +msgstr "Rückwärts springen (Zeit eingeben)" + +msgid "Seek forward" +msgstr "Vorwärts spulen" + +msgid "Seek forward (enter time)" +msgstr "Vorwärts spulen (Zeit eingeben)" + +msgid "Select" +msgstr "Auswählen" + +msgid "Select CAId" +msgstr "CAID auswählen" + +msgid "Select HDD" +msgstr "Festplattenauswahl" + +msgid "Select a bouquet" +msgstr "Bouquet auswählen" + +msgid "Select a movie" +msgstr "Filmauswahl" + +msgid "Select a network adapter" +msgstr "Netzwerkadapter auswählen" + +msgid "Select a skin" +msgstr "Benutzeroberfläche wählen" + +msgid "Select a tuner" +msgstr "Tuner auswählen" + +msgid "Select a wireless network" +msgstr "Funk-Netzwerk auswählen" + +msgid "Select action" +msgstr "Wähle Vorgang" + +#, python-format +msgid "Select action for timer %s:" +msgstr "Wähle Aktion für Timer %s:" + +msgid "Select all" +msgstr "Alle auswählen" + +msgid "Select an image to be downloaded" +msgstr "Image zum Download auswählen" + +msgid "Select audio track" +msgstr "Wählen Sie eine Tonspur" + +msgid "Select backup files" +msgstr "Wählen Sie die zu sichernden Dateien" + +msgid "Select backup location" +msgstr "Wählen Sie den Sicherungsort" + +msgid "Select channel to record from" +msgstr "Kanal auswählen, von dem aufgenommen werden soll" + +msgid "Select copy destination for:" +msgstr "Wähle Zielverzeichnis für:" + +msgid "Select default EPG type..." +msgstr "Wähle Standard-EPG-Typ..." + +msgid "Select desired image from feed list" +msgstr "Bestimmtes Image vom Feed-Server herunterladen" + +msgid "Select destination for:" +msgstr "Wähle Ziel für:" + +msgid "Select files for backup." +msgstr "Dateien zum Sichern auswählen." + +msgid "Select files/folders to backup" +msgstr "Wählen Sie Dateien/Ordner für die Sicherung" + +msgid "Select input device" +msgstr "Eingabegerät auswählen." + +msgid "Select input device." +msgstr "Eingabegerät auswählen." + +msgid "Select interface" +msgstr "Netzwerkkarte auswählen" + +msgid "Select location" +msgstr "Pfad auswählen" + +msgid "Select movie" +msgstr "Filmauswahl" + +msgid "Select provider to add..." +msgstr "Wählen Sie einen Provider zum Hinzufügen" + +msgid "Select refresh rate" +msgstr "Wählen Sie eine Bildwiederholfrequenz" + +msgid "Select satellites" +msgstr "Wähle Satelliten" + +msgid "Select service to add..." +msgstr "Wählen Sie einen Kanal zum Hinzufügen" + +msgid "Select sort method:" +msgstr "Sortierungmodus festlegen:" + +msgid "Select target folder" +msgstr "Wähle Zielverzeichnis" + +msgid "Select the movie path" +msgstr "Den Filmpfad auswählen" + +msgid "Select upgrade source" +msgstr "Wählen Sie eine Update-Quelle" + +msgid "Select upgrade source to edit." +msgstr "Wählen Sie eine Update-Quelle zum Bearbeiten." + +msgid "Select video input with up/down buttons" +msgstr "Wählen Sie den Video-Eingang mit den Hoch/Runter-Tasten" + +msgid "Select video mode" +msgstr "Wählen Sie den Video-Modus" + +msgid "Select wireless network" +msgstr "Funk-Netzwerk auswählen" + +msgid "Select your provider, and press OK to start the scan" +msgstr "" +"Bitte wählen Sie den Provider aus und bestätigen Sie mit OK, um die Suche zu " +"starten" + +msgid "Selecting satellites 1 (USALS)" +msgstr "Wähle Satelliten 1 (USALS)" + +msgid "Selecting satellites 2 (USALS)" +msgstr "Wähle Satelliten 2 (USALS)" + +msgid "Send DiSEqC only on satellite change" +msgstr "DiSEqC nur bei Sat-Wechsel senden" + +msgid "Separate titles with a main menu" +msgstr "Trenne verschiedene Titel mit einem Hauptmenü" + +msgid "Sequence repeat" +msgstr "Sequenz-Wiederholung" + +msgid "Serbian" +msgstr "Serbisch" + +msgid "Service" +msgstr "Kanal" + +msgid "Service has been added to the favourites." +msgstr "Kanal wurde zu Favoriten hinzugefügt." + +msgid "Service has been added to the selected bouquet." +msgstr "Kanal wurde zum gewählten Bouquet hinzugefügt." + +msgid "Service info" +msgstr "Kanal-Infos" + +msgid "" +"Service invalid!\n" +"(Timeout reading PMT)" +msgstr "" +"Kanal ist ungültig!\n" +"(Zeit lief beim Lesen der PMT ab)" + +msgid "Service name" +msgstr "Kanalname" + +msgid "" +"Service not found!\n" +"(SID not found in PAT)" +msgstr "" +"Kanal nicht gefunden!\n" +"(SID nicht in PAT gefunden)" + +msgid "Service reference" +msgstr "Kanal Referenz" + +msgid "Service scan" +msgstr "Kanalsuche" + +msgid "Service searching" +msgstr "Kanalsuche" + +msgid "Service title mode" +msgstr "Kanal Titel Modus" + +msgid "" +"Service unavailable!\n" +"Check tuner configuration!" +msgstr "" +"Kanal nicht verfügbar!\n" +"Bitte Tuner-Konfiguration überprüfen!" + +msgid "Services" +msgstr "Kanäle" + +msgid "Set default" +msgstr "Als Standard setzen" + +msgid "Set end time" +msgstr "End-Zeit eingeben" + +msgid "Set fixed" +msgstr "Adresse fest einstellen" + +msgid "Set fps for external subtitles" +msgstr "Einstellung fps für externe Untertitel" + +msgid "Set interface as default Interface" +msgstr "Netzwerkadapter als Standard festlegen" + +msgid "Set limits" +msgstr "Limits setzen" + +msgid "" +"Set the type of the progress indication in the channel selection screen." +msgstr "Zeige Sendungs-Fortschritt in der Kanal-Liste" + +msgid "Set time window to 1 hour" +msgstr "Setze das Zeitfenster auf 1 Stunde" + +msgid "Set time window to 2 hours" +msgstr "Setze das Zeitfenster auf 2 Stunden" + +msgid "Set time window to 3 hours" +msgstr "Setze das Zeitfenster auf 3 Stunden" + +msgid "Set time window to 4 hours" +msgstr "Setze das Zeitfenster auf 4 Stunden" + +msgid "Set time window to 5 hours" +msgstr "Setze das Zeitfenster auf 5 Stunden" + +msgid "Set time window to 6 hours" +msgstr "Setze das Zeitfenster auf 6 Stunden" + +msgid "Set voltage and 22KHz" +msgstr "Spannung und 22KHz setzen" + +msgid "Settings" +msgstr "Einstellungen" + +msgid "Setup" +msgstr "Einstellungen" + +msgid "Setup menu" +msgstr "Konfiguration" + +msgid "Setup mode" +msgstr "Konfigurationsmodus" + +msgid "Setup your positioner" +msgstr "Einstellung des Rotors" + +msgid "Setup your satellite equipment" +msgstr "Satelliten-Ausrüstung" + +#, python-format +msgid "" +"Shall the USB stick wizard proceed and program the image file %s into flash " +"memory?" +msgstr "" +"Soll der Assistent fortfahren und die Image-Datei %s in den Flashspeicher " +"schreiben?" + +msgid "Sharpness" +msgstr "Schärfe" + +msgid "Short filenames" +msgstr "Kurze Dateinamen" + +msgid "Show EIT now/next in infobar" +msgstr "Zeige EIT Now/Next in Infoleiste" + +msgid "Show EPG for current channel..." +msgstr "Zeige EPG für aktuellen Kanal..." + +msgid "Show EPG..." +msgstr "Zeige EPG..." + +msgid "Show Games show" +msgstr "Zeige Spielsendungen" + +msgid "Show SNR percentage instead of dB value" +msgstr "Zeige SNR Prozentsatz anstelle von dB-Wert" + +msgid "Show VCR scart on main menu" +msgstr "Zeige VCR-SCART im Hauptmenü" + +msgid "Show WLAN status" +msgstr "Zeige WLAN-Status" + +msgid "Show animation while busy" +msgstr "Zeige Animation bei Beschäftigung" + +msgid "Show background in radio mode" +msgstr "Zeige Hintergrund im Radio-Modus" + +msgid "Show bouquet selection menu" +msgstr "Zeige Bouquet-Auswahlmenü" + +msgid "Show busy indicator when the system is busy." +msgstr "Zeige Ladesymbol bei System-Beschäftigung." + +msgid "Show channel numbers in channel selection" +msgstr "Zeige Kanalnummer in Kanalauswahl" + +msgid "Show columns" +msgstr "Zeige Spalten" + +msgid "Show crypto icons" +msgstr "Zeige Verschlüsselungssymbole" + +msgid "Show crypto info in infobar" +msgstr "Verschlüsselung in Infoleiste anzeigen" + +msgid "Show detailed event info" +msgstr "Zeige detailierte Sendungsinformation" + +msgid "Show event details" +msgstr "Sendungsdetails anzeigen" + +msgid "Show event-progress in channel selection" +msgstr "Zeige Sendungs-Fortschritt in der Kanal-Liste" + +msgid "Show extended description" +msgstr "Zeige erweiterte Beschreibung" + +msgid "Show extensions..." +msgstr "Erweiterungen anzeigen..." + +msgid "Show icon for new/unseen items" +msgstr "Zeige Symbol für neue/ungesehene Einträge" + +msgid "Show in extensions menu" +msgstr "In Erweiterungsmenü anzeigen" + +msgid "Show info" +msgstr "Zeige Infos" + +msgid "Show info line" +msgstr "Infozeile anzeigen" + +msgid "Show infobar on channel change" +msgstr "Zeige Infoleiste beim Kanalwechsel" + +msgid "Show infobar on event change" +msgstr "Zeige Infoleiste beim Sendungswechsel" + +msgid "Show infobar on skip forward/backward" +msgstr "Zeige Infoleiste beim Spulen" + +msgid "Show latest commits on sourceforge" +msgstr "Zeige letzte Code-Änderungen von sourceforge" + +msgid "Show message when recording starts" +msgstr "Benachrichtigung anzeigen, wenn eine Aufnahme startet" + +msgid "Show movie lengths in movielist" +msgstr "Zeige Filmlänge in der Filmliste" + +msgid "Show multi channel EPG" +msgstr "Zeige Multi-Channel-EPG" + +msgid "Show picons in channel list" +msgstr "Zeige Picons in Kanalliste" + +msgid "Show positioner movement" +msgstr "Rotorbewegung anzeigen" + +msgid "Show screensaver" +msgstr "Zeige Screensaver" + +msgid "Show second infobar" +msgstr "Zeige zweite Infoleiste" + +msgid "Show service type icons" +msgstr "Zeige Service-Typ Icons" + +msgid "Show services beginning with" +msgstr "Kanäle beginnend mit Anfangsbuchstabe" + +msgid "Show shutdown menu" +msgstr "Ausschaltmenü anzeigen" + +msgid "Show single service EPG" +msgstr "Zeige Einzel-Kanal-EPG" + +msgid "Show status icons in Movielist" +msgstr "Zeige Status-Symbole in der Filmliste" + +msgid "Show status icons in movie list" +msgstr "Zeige Status-Symbole in der Filmliste" + +msgid "Show status icons in movielist" +msgstr "Zeige Status-Symbole in der Filmliste" + +msgid "Show tag menu" +msgstr "Zeige Tag-Menü" + +msgid "Show the radio player..." +msgstr "Radio-Wiedergabemodus..." + +msgid "Show the tv player..." +msgstr "TV-Wiedergabemodus..." + +msgid "Show warning when timeshift is stopped" +msgstr "Zeige eine Warning beim Stoppen des Timeshifts" + +msgid "Shows the state of your wireless LAN connection.\n" +msgstr "Zeigt den Status der WLAN-Verbinung an.\n" + +msgid "Shuffle playlist" +msgstr "Wiedergabeliste mischen" + +msgid "Shutdown" +msgstr "Ausschalten" + +msgid "Shutdown when in Standby" +msgstr "Ausschalten, falls im Standby" + +msgid "Side by side" +msgstr "Side by Side" + +msgid "Signal OK, proceeding" +msgstr "Signal OK, fortsetzen" + +msgid "Signal quality" +msgstr "Signal Qualität" + +msgid "Signal strength:" +msgstr "Signalstärke:" + +msgid "Signal: " +msgstr "Signal: " + +msgid "Similar" +msgstr "Ähnlich" + +msgid "Similar broadcasts:" +msgstr "Ähnliche Sendungen:" + +msgid "Simple" +msgstr "Einfach" + +msgid "Simple titleset (compatibility for legacy players)" +msgstr "Schlicht (bessere Kompatibilität mit alten DVD-Playern)" + +msgid "Single" +msgstr "Einzeln" + +msgid "Single EPG" +msgstr "Einfach-EPG" + +msgid "Single satellite" +msgstr "Einzelnen Satelliten" + +msgid "Single step (GOP)" +msgstr "Einzelschritt (GOP)" + +msgid "Single transponder" +msgstr "Einzelnen Transponder" + +msgid "Site latitude" +msgstr "Breitengrad ausrichten" + +msgid "Site longitude" +msgstr "Längengrad ausrichten" + +msgid "Skin" +msgstr "Skin" + +msgid "Skins" +msgstr "Skins" + +msgid "Skip empty services" +msgstr "Überspringe leere Sender" + +msgid "" +"Skip internet connection check (disables automatic package installation)" +msgstr "" +"Überspringe Internet-Verbindungstest (automatische Paketinstallation " +"deaktivieren)" + +msgid "Sleep timer" +msgstr "Ausschalt-Timer" + +msgid "SleepTimer Configuration" +msgstr "Sleeptimer Einstellungen" + +msgid "Sleeptimer" +msgstr "Sleeptimer" + +msgid "Slide picture in loop" +msgstr "Bilder als Slideshow anzeigen (Schleife)" + +msgid "Slide show interval (sec.)" +msgstr "Diaschau-Intervall (Sek.)" + +#, python-format +msgid "Slot %d" +msgstr "Steckplatz %d" + +msgid "Slovak" +msgstr "Slowakisch" + +msgid "Slovenian" +msgstr "Slowenisch" + +msgid "Slow" +msgstr "Langsam" + +msgid "Slow motion speeds" +msgstr "Zeitlupen-Geschwindigkeiten" + +msgid "Small progress" +msgstr "Geringer Fortschritt" + +msgid "Social/Political/Economics" +msgstr "Soziales/Politik/Wirtschaft" + +msgid "SoftCam / CI" +msgstr "SoftCam / CI" + +msgid "Softcam type" +msgstr "Softcam Typ" + +msgid "Software" +msgstr "Software" + +msgid "Software management" +msgstr "Softwareverwaltung" + +msgid "Software manager setup" +msgstr "Softwaremanager Einstellung" + +msgid "Software restore" +msgstr "Software wiederherstellen" + +msgid "Software update" +msgstr "Software aktualisieren" + +msgid "Softwaremanager information" +msgstr "Softwaremanager Information" + +msgid "Some plugins are not available:\n" +msgstr "Einige Plugins sind nicht verfügbar:\n" + +#, python-format +msgid "Sorry, %s has not been installed!" +msgstr "Entschuldigung, %s ist nicht installiert!" + +msgid "" +"Sorry, deleting directories can (for now) only be done through the trash can." +msgstr "" +"Entschuldigung, Verzeichnisse können (bis jetzt) nur per Mülleimer gelöscht " +"werden." + +msgid "Sorry, no backups found!" +msgstr "Entschuldigung, keine Sicherungen gefunden!" + +msgid "Sorry, no details available!" +msgstr "Entschuldigung, keine Details verfügbar" + +msgid "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." +msgstr "" +"Entschuldigung, Ihr Sicherungsverzeichnis ist nicht beschreibbar.\n" +"Bitte wählen Sie ein anderes Verzeichnis aus." + +msgid "Sort" +msgstr "Sortieren" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort A-Z" +msgstr "Sort. A-Z" + +msgid "Sort by" +msgstr "Sortiere nach" + +msgid "Sort list:" +msgstr "Sortiere Liste:" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort time" +msgstr "Sortiere nach Zeit" + +msgid "Sound" +msgstr "Ton" + +msgid "Sound carrier" +msgstr "Tonträger" + +msgid "Source request" +msgstr "Eingangs Anfrage" + +msgid "South" +msgstr "Süd" + +msgid "Spanish" +msgstr "Spanisch" + +msgid "" +"Specify the end time to ignore the shutdown timer when the receiver is in " +"standby mode" +msgstr "" +"Angabe der Endzeit, bis wann der Ausschalt-Timer ignoriert werden soll, wenn " +"sich der Receiver im Standby-Modus befindet" + +msgid "Specify the end time until the inactivity sleeptimer should be ignored" +msgstr "" +"Angabe der Endzeit, bis wann der Inaktivität-Sleeptimer ignoriert werden soll" + +msgid "" +"Specify the start time to ignore the shutdown timer when the receiver is in " +"standby mode" +msgstr "" +"Angabe der Startzeit, ab dem Ausschalt-Timer ignoriert werden soll, wenn " +"sich der Receiver im Standby-Modus befindet" + +msgid "Specify the start time when the inactivity sleeptimer should be ignored" +msgstr "" +"Spezifiziere die Anfangszeit, aber wann der Inaktivität-Sleeptimer ignoriert " +"werden soll" + +msgid "Specify timeframe to ignore inactivity sleeptimer" +msgstr "" +"Spezifiziere den Zeitbereich, in dem der Inaktivität-Sleeptimer ignoriert " +"werden soll" + +msgid "Specify timeframe to ignore the shutdown in standby" +msgstr "" +"Angabe des Zeitfensters indem nicht vom Standby-Modus in den Deep-Standby " +"gewechselt wird" + +msgid "Split preview mode" +msgstr "Splitscreen für Vorschau-Modus" + +msgid "Splitscreen" +msgstr "Geteilter Bildschirm" + +msgid "Sports" +msgstr "Sport" + +msgid "Standard" +msgstr "Standard" + +msgid "Standart list" +msgstr "Standard-Liste" + +msgid "Standby" +msgstr "Standby" + +msgid "Standby / restart" +msgstr "Standby / Neustart" + +msgid "Standby after current event" +msgstr "Standby nach aktueller Sendung" + +#, python-format +msgid "Standby fan %d PWM" +msgstr "Standby Lüfter %d PWM" + +#, python-format +msgid "Standby fan %d voltage" +msgstr "Standby Lüfter %d Spannung" + +msgid "Standby in " +msgstr "Standby in" + +msgid "StandbyLED" +msgstr "LED im Standby-Modus" + +msgid "Start from the beginning" +msgstr "Am Anfang starten" + +msgid "Start offline decode" +msgstr "Starte lokale Entschlüsselung" + +msgid "Start recording?" +msgstr "Aufnahme beginnen?" + +msgid "Start test" +msgstr "Test starten" + +msgid "Start time" +msgstr "Startzeit" + +msgid "Start time to ignore inactivity sleeptimer" +msgstr "Startzeit zum Ignorieren des Inaktivität-Sleeptimers" + +msgid "Start time to ignore shutdown in standby" +msgstr "Startzeit kein Wechsel vom Standby in Deep-Standby" + +msgid "Start timeshift" +msgstr "Timeshift starten" + +msgid "Start with list screen" +msgstr "Mit Liste beginnen" + +msgid "Starting on" +msgstr "Beginnend ab" + +msgid "Startup the set top box in standby" +msgstr "Starte den Receiver im Standby-Modus" + +msgid "Startup to Standby" +msgstr "Start im Standby-Modus" + +msgid "Step east" +msgstr "Schritt nach Osten" + +msgid "Step west" +msgstr "Schritt nach Westen" + +msgid "Stepped east" +msgstr "Nach Osten justiert" + +msgid "Stepped west" +msgstr "Nach Westen justiert" + +msgid "Stop" +msgstr "Stopp" + +msgid "Stop PiP" +msgstr "Beende Bild im Bild" + +msgid "Stop current event and disable coming events" +msgstr "Laufendes Ereignis abbrechen und kommende ignorieren" + +msgid "Stop current event but not coming events" +msgstr "Laufendes Ereignis abbrechen, aber kommende ausführen" + +msgid "Stop entry" +msgstr "Element stoppen" + +msgid "Stop playing this movie?" +msgstr "Wiedergabe beenden?" + +msgid "Stop recording" +msgstr "Aufnahme beenden" + +msgid "Stop recording and delete" +msgstr "Aufnahme beenden und löschen" + +msgid "Stop service on return to movie list" +msgstr "Anhalten und zur Filmliste zurückkehren" + +msgid "Stop test" +msgstr "Test stoppen" + +msgid "Stop testing plane after # failed transponders" +msgstr "Stoppe Test nach # fehlgeschlagenen Transpondern" + +msgid "Stop testing plane after # successful transponders" +msgstr "Stoppe Test nach # erfolgreichen Transpondern" + +msgid "Stop timer recording" +msgstr "Aufnahme beenden" + +msgid "Stop timeshift" +msgstr "Timeshift beenden" + +msgid "Stop timeshift?" +msgstr "Timeshift beenden?" + +msgid "Stopped" +msgstr "Gestoppt" + +msgid "Store at index" +msgstr "Speichern auf Index" + +msgid "Store position" +msgstr "Position speichern" + +msgid "Stored position" +msgstr "Gespeicherte Position" + +msgid "Stream" +msgstr "Stream" + +msgid "Stream request" +msgstr "Stream Anfrage" + +msgid "Strongest position" +msgstr "Beste Position" + +msgid "Subservice list..." +msgstr "Unterkanal-Liste..." + +msgid "Subservices" +msgstr "Unterkanäle" + +msgid "Subtitle Quickmenu" +msgstr "Untertitel Schnellmenü" + +msgid "Subtitle alignment" +msgstr "Untertitel Ausrichtung" + +msgid "Subtitle border width" +msgstr "Untertitel Randbreite" + +msgid "Subtitle delay when timing is bad" +msgstr "Verzögerung für Untertitel" + +msgid "Subtitle delay when timing lacks" +msgstr "Verzögerung Untertitel bei fehlendem Timing" + +msgid "Subtitle font size" +msgstr "Untertitel Schriftgröße" + +msgid "Subtitle language selection 1" +msgstr "Untertitel Sprachauswahl 1" + +msgid "Subtitle language selection 2" +msgstr "Untertitel Sprachauswahl 2" + +msgid "Subtitle language selection 3" +msgstr "Untertitel Sprachauswahl 3" + +msgid "Subtitle language selection 4" +msgstr "Untertitel Sprachauswahl 4" + +msgid "Subtitle position" +msgstr "Untertitel Position" + +msgid "Subtitle selection" +msgstr "Untertitel-Auswahl" + +msgid "Subtitle selection..." +msgstr "Untertitel-Auswahl..." + +msgid "Subtitle settings" +msgstr "Untertitel-Einstellungen" + +msgid "Subtitles" +msgstr "Untertitel" + +msgid "Sun" +msgstr "So" + +msgid "Sunday" +msgstr "Sonntag" + +msgid "Swap PiP and main picture" +msgstr "Tausche Bild im Bild mit Hauptbild" + +msgid "Swap services" +msgstr "Kanäle tauschen" + +msgid "Swedish" +msgstr "Schwedisch" + +msgid "Switch TV to correct input" +msgstr "Fernseher auf Receiver HDMI-Eingang schalten" + +msgid "Switch between filelist/playlist" +msgstr "Umschalten zwischen Dateiliste/Abspielliste" + +msgid "Switch between normal mode and list mode" +msgstr "Tausche Normal mit Listen Modus" + +msgid "Switch to HDMI in mode" +msgstr "Zum HDMI-Eingang umschalten" + +msgid "Switch to filelist" +msgstr "In Dateiliste wechseln" + +msgid "Switch to next channel" +msgstr "Zum nächsten Kanal wechseln" + +msgid "Switch to next channel in history" +msgstr "Nächster Kanal im Verlauf" + +msgid "Switch to next sub service" +msgstr "Zum nächsten Unterkanal schalten" + +msgid "Switch to playlist" +msgstr "In Wiedergabeliste wechseln" + +msgid "Switch to previous channel" +msgstr "Zum vorhergehenden Kanal schalten" + +msgid "Switch to previous channel in history" +msgstr "Vorheriger Kanal im Verlauf" + +msgid "Switch to previous sub service" +msgstr "Zum vorhergehenden Unterkanal schalten" + +msgid "Switchable tuner types:" +msgstr "Umschaltbare Tuner-Typen:" + +msgid "Symbol rate" +msgstr "Symbolrate" + +msgid "Symbol rate:" +msgstr "Symbolrate:" + +msgid "Sync failure moving back to origin !" +msgstr "Sync Fehler, bewege zur Anfangsposition!" + +msgid "System" +msgstr "System" + +#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) +msgid "TRANSLATOR_INFO" +msgstr "ÜBERSETZER INFO" + +msgid "TS file is too large for ISO9660 level 1!" +msgstr "TS-Datei ist zu groß für ISO9660 level 1!" + +msgid "TSID" +msgstr "TSID" + +msgid "TV physical address report" +msgstr "TV physikalischer Adressenverkündung" + +msgid "TXT PID" +msgstr "TXT PID" + +msgid "Table of contents for collection" +msgstr "Inhalt der Zusammenstellung" + +msgid "Tags" +msgstr "Tags" + +msgid "Teletext subtitle color" +msgstr "Farbe Teletext-Untertitel" + +msgid "Temperature and fan control" +msgstr "Temperatur- und Lüfter-Regelung" + +msgid "Terrestrial" +msgstr "Terrestrisch" + +msgid "Terrestrial provider" +msgstr "Region" + +msgid "Test DiSEqC settings" +msgstr "Teste DiSEqC-Einstellungen" + +msgid "Test mode" +msgstr "Testmodus" + +msgid "Test the network configuration of your receiver.\n" +msgstr "Testen der Netzwerkkonfiguration des Receivers.\n" + +msgid "Test type" +msgstr "Testtyp" + +msgid "Text color" +msgstr "Textfarbe" + +msgid "Thai" +msgstr "Thailändisch" + +msgid "" +"Thank you for using the wizard.\n" +"Please press OK to continue." +msgstr "" +"Vielen Dank, dass Sie den Assistenten benutzt haben.\n" +"Drücken Sie OK zum Fortfahren." + +msgid "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." +msgstr "" +"Vielen Dank, dass Sie den Assistenten benutzt haben.\n" +"Ihr Receiver ist nun bereit zur Verwendung.\n" +"Drücken Sie OK zum Fortfahren." + +msgid "" +"The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to " +"create a special format data DVD (which will not play in stand-alone DVD " +"players) instead?" +msgstr "" +"Der DVD-Standard unterstützt keine H.264 (HDTV) Videos. Soll stattdessen " +"eine Daten-DVD im Receiver-Format (die nicht in einem herkömmlichen DVD-" +"Player abspielbar ist) erstellt werden?" + +msgid "The PIN code has been changed successfully." +msgstr "Der PIN-Code wurde erfolgreich geändert." + +msgid "The PIN codes you entered are different." +msgstr "Die eingegebenen PIN-Codes sind unterschiedlich." + +msgid "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" +msgstr "" +"Der USB-Stick wurde bootfähig gemacht.\n" +"Sie können nun eine NFI-Imagedatei herunterladen!" + +msgid "The backup failed. Please choose a different backup location." +msgstr "" +"Die Sicherung ist fehlgeschlagen. Bitte einen anderen Sicherungsort " +"auswählen." + +#, python-format +msgid "" +"The current beta image might not be stable.\n" +"For more information see %s." +msgstr "" +"Das aktuelle Image könnte fehlerhaft sein.\n" +"Weitere Informationen finden Sie hier: %s." + +#, python-format +msgid "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." +msgstr "" +"Das Verzeichnis %s ist nicht beschreibbar.\n" +"Stellen Sie sicher, dass Sie ein beschreibbares Verzeichnis angegeben haben." + +#, python-format +msgid "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" +msgstr "" +"Das folgende Medium wurde gefunden:\n" +"\n" +"%s\n" +"\n" +"Soll der USB-Flasher auf diesen Stick installiert werden?" + +msgid "The following files were found..." +msgstr "Die folgenden Dateien wurden gefunden..." + +msgid "The md5sum validation failed, the file may be corrupted!" +msgstr "" +"Die md5sum Überprüfung ist fehlgeschlagen. Die Datei könnte fehlerhaft sein!" + +msgid "" +"The network wizard extension is not installed!\n" +"Please install it." +msgstr "" +"Das Netzwerk-Assistent-Plugin ist nicht installiert!\n" +"Bitte installieren Sie es." + +#, python-format +msgid "The path %s already exists." +msgstr "Der Pfad %s existiert bereits." + +msgid "The pin code you entered is wrong." +msgstr "Der eingegebene PIN-Code ist falsch" + +#, python-format +msgid "The results have been written to %s." +msgstr "Die Ergebnisse des Tests wurden in der Datei %s gespeichert." + +msgid "The sleep timer has been activated." +msgstr "Der Sleeptimer wurde aktiviert." + +msgid "The sleep timer has been disabled." +msgstr "Der Sleeptimer wurde deaktiviert" + +msgid "" +"The software management extension is not installed!\n" +"Please install it." +msgstr "" +"Das Softwaremanagement Plugin ist nicht installiert!\n" +"Bitte installieren Sie es." + +#, python-format +msgid "" +"The status of the current beta image could not be checked because %s can not " +"be reached." +msgstr "" +"Der Status des aktuellen Beta-Image konnte nicht ermittelt werden, da %s " +"nicht erreichbar ist." + +msgid "The timer file (timers.xml) is corrupt and could not be loaded." +msgstr "" +"Die Timer-Datei (timers.xml) ist defekt und konnte nicht geladen werden." + +msgid "The user interface of your receiver is restarting" +msgstr "Die Benutzeroberfläche des Receivers wird neu gestartet" + +msgid "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" +msgstr "" +"Die Benutzeroberfläche des Receivers wird aufgrund eines Fehlers\n" +"in mytest.py neu gestartet" + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." +msgstr "" +"Das Wireless LAN Plugin ist nicht installiert!\n" +"Bitte installieren Sie es und wählen Sie dann eine Option zum Fortfahren." + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it." +msgstr "" +"Das Wireless LAN Plugin ist nicht installiert!\n" +"Bitte installieren Sie es." + +msgid "" +"The wizard can backup your current settings. Do you want to do a backup now?" +msgstr "" +"Der Assistent kann jetzt Ihre Einstellungen sichern. Wollen Sie dies nun " +"durchführen?" + +#, python-format +msgid "" +"The wizard found a configuration backup. Do you want to restore your old " +"settings from %s?" +msgstr "" +"Der Assistent hat eine Konfigurations-Sicherungsdatei entdeckt. Wollen Sie " +"Ihre Einstellungen von %s wiederherstellen?" + +msgid "The wizard is finished now." +msgstr "Der Assistent ist nun abgeschlossen." + +msgid "There are at least " +msgstr "Es sind mindestens " + +#, python-format +msgid "There are at least %s updates available." +msgstr "Es sind mindestens %s Updates verfügbar." + +msgid "There are currently no outstanding actions." +msgstr "Es sind keine Aktivitäten geplant." + +msgid "There are no updates available." +msgstr "Es sind keine Updates verfügbar." + +msgid "There is no signal to lock on !" +msgstr "Es liegt kein Signal an !" + +msgid "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" +msgstr "" +"Es könnte sein, dass nicht genügend freier Speicherplatz auf\n" +"der gewählten Partition vorhanden ist.\n" +"Wollen Sie wirklich fortfahren?" + +msgid "" +"This DVD RW medium is already formatted - reformatting will erase all " +"content on the disc." +msgstr "" +"Dieses wiederbeschreibbare Medium ist bereits formatiert - durch eine " +"Neuformatierung wird der gesamte Inhalt gelöscht" + +msgid "" +"This plugin creates a USB stick which can be used to update the firmware of " +"your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server " +"and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. " +"Otherwise plug in a USB stick with a minimum size of 64 MB!" +msgstr "" +"Dieses Plugin erzeugt einen USB-Stick, mit dessen Hilfe die Firmware Ihres " +"Receivers aktualisiert werden kann, ohne dass dafür eine Netzwerk- oder WLAN-" +"Verbindung notwendig ist. Zuerst muss ein USB-Stick vorbereitet und " +"bootfähig gemacht werden. Im nächsten Schritt kann eine NFI-Imagedatei vom " +"Update-Server heruntergeladen und auf diesem Stick gespeichert werden. Wenn " +"Sie bereits einen bootfähigen USB-Stick vorbereitet haben, stecken Sie ihn " +"bitte jetzt ein. Anderenfalls stecken Sie bitte einen USB-Stick mit einer " +"Mindestgröße von 64 MB ein." + +msgid "This plugin is installed." +msgstr "Dieses Plugin ist installiert." + +msgid "This plugin is not installed." +msgstr "Dieses Plugin ist nicht installiert." + +msgid "This plugin will be installed." +msgstr "Dieses Plugin wird installiert." + +msgid "This plugin will be removed." +msgstr "Dieses Plugin wird deinstalliert." + +#, python-format +msgid "This receiver cannot decode %s streams!" +msgstr "Dieser Receiver kann keine %s Streams dekodieren!" + +msgid "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in " +"the \"Nameserver\" configuration" +msgstr "" +"Dieser Test sucht nach konfigurierten Nameservern\n" +"Wenn Sie eine \"Unbestätigt\"-Meldung erhalten:\n" +"- Überprüfen Sie Ihr DHCP, Ihre Verkabelung und Ihre Adapter-Konfiguration.\n" +"- Haben Sie Ihre Namensserver manuell konfiguriert, überprüfen Sie bitte " +"Ihre Konfiguration in den \"DNS\"-Einstellungen" + +msgid "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" +msgstr "" +"Dieser Test überprüft, ob ein Netzwerkkabel angeschlossen ist.\n" +"Wenn Sie eine \"Nicht verbunden\"-Meldung erhalten:\n" +"- Überprüfen Sie, ob ein Netzwerkkabel angeschlossen ist.\n" +"- Stellen Sie sicher, dass das Netzwerkkabel nicht defekt ist." + +msgid "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" +msgstr "" +"Dieser Test überprüft, ob eine gültige IP-Adresse gefunden wurde.\n" +"Wenn Sie eine \"Unbestätigt\"-Meldung erhalten:\n" +"- Wurde keine gültige IP-Adresse gefunden.\n" +"- Überprüfen Sie Ihr DHCP, Ihre Verkabelung und Ihre Adapter-Konfiguration." + +msgid "" +"This test checks whether your LAN adapter is set up for automatic IP address " +"configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup " +"dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." +msgstr "" +"Dieser Test überprüft, ob Ihr Netzwerkadapter für automatische IP-Adressen-" +"Konfiguration über DHCP eingerichtet ist.\n" +"Wenn Sie eine \"Deaktiviert\"-Meldung erhalten:\n" +"- Dann ist Ihr Netzwerkadapter für manuelle IP-Adressen-Konfiguration " +"eingerichtet.\n" +"- Überprüfen Sie die Richtigkeit Ihrer Einstellungen im Netzwerkadapter-" +"Einstellungen-Menü.\n" +"Wenn Sie eine \"Aktiviert\"-Meldung erhalten:\n" +"- Überprüfen Sie, dass sich ein funktionierender DHCP-Server in Ihrem " +"Netzwerk befindet." + +msgid "This test detects your configured LAN adapter." +msgstr "Dieser Test ermittelt Ihren konfigurierten Netzwerkadapter." + +msgid "" +"This will (re-)calculate all positions of your rotor and may remove " +"previously memorised positions and fine-tuning!\n" +"Are you sure?" +msgstr "" +"Alle Positionen des Rotors werden (neu)berechnet und alle zuvor " +"gespeicherten Positionen und Feineinstellungen werden verworfen!\n" +"Sind Sie sicher, dass Sie den Vorgang durchführen wollen?" + +msgid "Three" +msgstr "Drei" + +msgid "Threshold" +msgstr "Schwelle" + +msgid "Thu" +msgstr "Do" + +msgid "Thumbnails" +msgstr "Vorschaubilder" + +msgid "Thursday" +msgstr "Donnerstag" + +msgid "Time" +msgstr "Zeit" + +msgid "Time scale" +msgstr "Zeitskala" + +msgid "Timer" +msgstr "Timer" + +msgid "Timer Overview" +msgstr "Timer-Übersicht" + +msgid "Timer edit" +msgstr "Timer bearbeiten" + +msgid "Timer editor" +msgstr "Timer-Editor" + +msgid "Timer entry" +msgstr "Timer-Eintrag" + +msgid "Timer log" +msgstr "Timer-Logbuch" + +msgid "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" +msgstr "" +"Timerüberlappung in der timers.xml entdeckt!\n" +"Bitte überprüfen!" + +msgid "Timer overview" +msgstr "Timer-Übersicht" + +msgid "Timer recording location" +msgstr "Timer-Aufnahmeverzeichnis" + +msgid "Timer sanity error" +msgstr "Fehler bei Timerprüfung" + +msgid "Timer selection" +msgstr "Timer-Liste" + +msgid "Timer selection..." +msgstr "Timer-Auswahl..." + +msgid "Timer type" +msgstr "Timertyp" + +msgid "Timeshift" +msgstr "Timeshift" + +msgid "Timeshift Live" +msgstr "Live Timeshift" + +msgid "Timeshift location" +msgstr "Timeshift-Verzeichnis" + +msgid "Timeshift not possible!" +msgstr "Timeshift nicht möglich!" + +msgid "Timezone" +msgstr "Zeitzone" + +msgid "Title" +msgstr "Titel" + +msgid "Title properties" +msgstr "Titeldetails" + +msgid "Titleset mode" +msgstr "Titleset" + +msgid "To audio selection" +msgstr "Zur Ton-Auswahl" + +msgid "To subtitle selection" +msgstr "Zur Untertitel Auswahl" + +msgid "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable " +"USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed " +"for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." +msgstr "" +"Um Ihre Receiver-Firmware zu aktualisieren, folgen Sie bitte diesen " +"Anweisungen:\n" +"1) Schalten Sie Ihren Receiver mit dem Schalter auf der Rückseite aus und " +"achten Sie darauf, dass der bootfähige USB-Stick eingesteckt ist.\n" +"2) Schalten Sie den Netzschalter wieder ein und halten dabei den \"nach unten" +"\"-Knopf auf der Vorderseite für 10 Sekunden gedrückt.\n" +"3) Nach dem Bootvorgang folgen Sie bitte den Instruktionen des Assistenten." + +msgid "Today" +msgstr "Heute" + +msgid "Toggle a cut mark at the current position" +msgstr "Toggle Marker an der aktuellen Position" + +msgid "Tone amplitude" +msgstr "Ton Amplitude" + +msgid "Tone mode" +msgstr "Tone Modus" + +msgid "Toneburst" +msgstr "Toneburst" + +msgid "Toneburst A/B" +msgstr "Toneburst A/B" + +msgid "Top and bottom" +msgstr "Oben und Unten" + +msgid "Track" +msgstr "Spur" + +msgid "Translation" +msgstr "Übersetzung:" + +msgid "Translation:" +msgstr "Übersetzung:" + +msgid "Translations" +msgstr "Übersetzung" + +msgid "Transmission mode" +msgstr "Übertragungstyp" + +msgid "Transponder" +msgstr "Transponder" + +msgid "Transponder type" +msgstr "Transponder Typ" + +msgid "Trash can" +msgstr "Mülleimer" + +msgid "Tries left:" +msgstr "Übrige Versuche:" + +msgid "Try to find used transponders in cable network.. please wait..." +msgstr "Suche benutzte Transponder im Kabel Netzwerk.. bitte warten..." + +msgid "Trying to download a new packetlist. Please wait..." +msgstr "" +"Versuche eine neue Aktualisierungsliste herunterzuladen. Bitte warten Sie..." + +msgid "Tue" +msgstr "Di" + +msgid "Tuesday" +msgstr "Dienstag" + +msgid "Tune" +msgstr "Tunen" + +msgid "Tune and focus" +msgstr "Tunen und Fokusieren" + +msgid "Tune failed!" +msgstr "Tunen fehlgeschlagen!" + +msgid "Tuner" +msgstr "Tuner" + +msgid "Tuner configuration" +msgstr "Tuner-Konfiguration" + +msgid "Tuner is not supported" +msgstr "Tuner nicht unterstützt" + +msgid "Tuner slot" +msgstr "Tuner-Slot" + +msgid "Tuner status" +msgstr "Tuner-Status" + +#, python-format +msgid "Tuner status %s" +msgstr "Tuner-Status %s" + +msgid "Tuner type" +msgstr "Tunertyp" + +msgid "Turkish" +msgstr "Türkisch" + +msgid "Turn on the power LED during standby." +msgstr "Die LED im Standy-Modus ausschalten." + +msgid "Turning step size" +msgstr "Dreh-Schrittweite" + +msgid "Two" +msgstr "Zwei" + +msgid "Type" +msgstr "Typ" + +msgid "Type of scan" +msgstr "Art der Suche" + +msgid "USALS" +msgstr "USALS" + +msgid "USALS calibration" +msgstr "USALS Kalibrierung" + +msgid "USB stick" +msgstr "USB-Stick" + +msgid "USB stick wizard" +msgstr "USB-Stick-Assistent" + +msgid "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Stille Aktualisierung wird durchgeführt.\n" +"Bitte warten Sie, bis Ihr Receiver automatisch neu startet.\n" +"Das könnte einige Minuten in Anspruch nehmen." + +msgid "Undo install" +msgstr "Installation zurücksetzen." + +msgid "Undo uninstall" +msgstr "Deinstallation zurücksetzen." + +msgid "Unencrypted" +msgstr "Unverschlüsselt" + +msgid "UnhandledKey" +msgstr "UnhandledKey" + +msgid "Unicable" +msgstr "Unicable" + +msgid "Unicable LNB" +msgstr "Unicable LNB" + +msgid "Unicable Martix" +msgstr "Unicable Matrix" + +msgid "Uninstall" +msgstr "Deinstallieren" + +msgid "Universal LNB" +msgstr "Universal-LNB" + +msgid "Unknown" +msgstr "Unbekannt" + +msgid "Unmount" +msgstr "Aushängen" + +msgid "Unsupported" +msgstr "Nicht unterstützt" + +msgid "Update" +msgstr "Aktualisieren" + +msgid "Update and ask to reboot" +msgstr "Aktualisieren und auf Nachfrage neu starten" + +msgid "Update and reboot (recommended)" +msgstr "Aktualisieren und neu starten (empfohlen)" + +msgid "Update channel list only" +msgstr "Aktualisiere nur die Senderliste" + +#, python-format +msgid "Update completed, %d package was installed." +msgid_plural "Update completed, %d packages were installed." +msgstr[0] "Aktualisierung abgeschlossen, %d Paket installiert" +msgstr[1] "Aktualisierung abgeschlossen, %d Pakete installiert" + +msgid "Update completed. Do you want to reboot your receiver?" +msgstr "Aktualisierung abgeschlossen. Wollen Sie den Receiver neu starten?" + +msgid "" +"Update failed. Your receiver does not have a working internet connection." +msgstr "" +"Aktualisierung fehlgeschlagen. Ihr Receiver hat keine Verbindung zum " +"Internet aufbauen können." + +msgid "Update has completed." +msgstr "Aktualisierung abgeschlossen." + +msgid "Updatefeed not available." +msgstr "Update-Feed nicht verfügbar." + +msgid "Updating software catalog" +msgstr "Softwarekatalog wird aktualisiert." + +msgid "Upgrading" +msgstr "Aktualisiere" + +msgid "Use" +msgstr "Benutzen" + +msgid "Use DHCP" +msgstr "Adresse automatisch beziehen (DHCP)" + +msgid "Use EIT EPG information when it is available." +msgstr "Verwende EIT EPG Information falls vorhanden." + +msgid "Use FreeSat EPG information when it is available." +msgstr "Verwende FreeSat EPG Information falls vorhanden." + +msgid "Use MHW EPG information when it is available." +msgstr "Verwende MHW EPG Information falls vorhanden." + +msgid "Use Netmed EPG information when it is available." +msgstr "Verwende Netmed EPG Information falls vorhanden." + +msgid "Use TV remote control" +msgstr "Fernbedienungsbefehle des Fernsehers weiterleiten" + +msgid "Use USALS for this sat" +msgstr "USALS für diesen Sat benutzen" + +msgid "Use ViaSat EPG information when it is available." +msgstr "Verwende ViaSat EPG Infromation falls vorhanden." + +msgid "Use Virgin EPG information when it is available." +msgstr "Nutzte Virgin EPG-Informationen, sofern verfügbar." + +msgid "Use a gateway" +msgstr "Einen Gateway verwenden?" + +msgid "Use fastscan channel names" +msgstr "Benutze Fast-Scan Kanalnamen" + +msgid "Use fastscan channel numbering" +msgstr "Benutze Fast-Scan Kanalnummern" + +msgid "Use frequency or channel" +msgstr "Nutze Frequenz oder Kanal" + +msgid "Use individual settings for each directory" +msgstr "Verwende individuelle Einstellungen je Verzeichnis" + +msgid "Use interface" +msgstr "Netzwerkadapter aktivieren" + +msgid "Use official channel numbering" +msgstr "Benutze offizielle Kanalnummern" + +msgid "Use original DVB subtitle position" +msgstr "Benutze originale DVB Untertitel-Position" + +msgid "Use original teletext position" +msgstr "Benutze originale Teletext Position" + +msgid "Use power measurement" +msgstr "Stromaufnahme messen" + +msgid "Use the network wizard to configure selected network adapter" +msgstr "" +"Nutzen Sie den Netzwerkassistenten, um den selektierten Adapter zu " +"konfigurieren" + +msgid "Use the network wizard to configure your network\n" +msgstr "Nutzen Sie den Netzwerkassistenten, um Ihr Netzwerk zu konfigurieren\n" + +msgid "" +"Use the up/down keys on your remote control to select an option. After that, " +"press OK." +msgstr "" +"Mit den hoch/runter-Tasten können Sie eine Option auswählen. Danach bitte OK " +"drücken." + +msgid "Use the wizard to set up basic features" +msgstr "Grundeinstellungen jetzt vornehmen" + +msgid "Use these input device settings?" +msgstr "Diese Eingabegeräte Einstellungen benutzten?" + +msgid "Use these settings?" +msgstr "Diese Einstellungen benutzten?" + +msgid "Use this video enhancement settings?" +msgstr "Diese erweiterten A/V-Einstellungen benutzen?" + +msgid "Use trash can in movielist" +msgstr "Verwende Mülleimer in der Filmliste" + +msgid "Used service scan type" +msgstr "Typ der Kanalsuche" + +msgid "User - bouquets" +msgstr "Benutzerspezifische - Kanallisten (Bouquets)" + +msgid "User defined" +msgstr "Benutzerdefiniert" + +msgid "User defined transponder" +msgstr "Vordefinierte Transponder" + +msgid "User interface" +msgstr "Benutzeroberfläche" + +msgid "Username" +msgstr "Benutzername" + +#, python-format +msgid "Using LNB %d" +msgstr "Verwende LNB %d" + +msgid "Using fixed address" +msgstr "Benutze feste Adresse" + +#, python-format +msgid "Using tuner %s" +msgstr "Verwende Tuner %s" + +msgid "" +"Usually when the subtitle language is the same as the audio language, the " +"subtitles will not be used. Enable this option to allow these subtitles to " +"be used." +msgstr "" +"Falls die Untertitelsprache mit der Audiospur-Sprache identisch ist, werden " +"Untertitel standartmässig nicht eingeblendet. Bei Aktivierung dieser Option " +"werden diese Untertitel trotzdem verwendet/angezeigt." + +msgid "VCR scart" +msgstr "Scart-Videorekorder" + +msgid "VMGM (intro trailer)" +msgstr "VMGM (Intro-Trailer)" + +msgid "Vertical" +msgstr "Vertikal" + +msgid "Vertical turning speed" +msgstr "Vertikale Drehgeschwindigkeit" + +msgid "Video PID" +msgstr "Video PID" + +msgid "Video enhancement preview" +msgstr "Erweiterte A/V-Einstellungen Vorschau" + +msgid "Video enhancement settings" +msgstr "Erweiterte A/V-Einstellungen" + +msgid "Video enhancement setup" +msgstr "Erweiterte A/V-Einstellungen" + +msgid "Video fine tuning" +msgstr "Video-Feineinstellung" + +msgid "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different " +"input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." +msgstr "" +"Auswahl des Videoeingangs\n" +"\n" +"Bitte drücken Sie OK, wenn Sie diese Seite auf Ihrem Fernseher sehen können " +"(oder wählen Sie einen anderen Eingang aus).\n" +"\n" +"Der nächste Videoeingang wird automatisch nach 20 Sekunden getestet." + +msgid "Video mode selection." +msgstr "Auswahl des Videomodus." + +msgid "Video output" +msgstr "Videoausgabe" + +msgid "Video setup" +msgstr "Video-Konfiguration" + +msgid "Video wizard" +msgstr "Video-Assistent" + +#, python-format +msgid "Video: %s fps" +msgstr "Video: %s fps" + +msgid "VideoMode" +msgstr "Video-Modus" + +msgid "Videocodec" +msgstr "Videocodec" + +msgid "Videoformat" +msgstr "Videoformat" + +msgid "Videosize" +msgstr "Videogröße" + +msgid "View Rass interactive..." +msgstr "RaSS Interaktiv anzeigen..." + +msgid "View details" +msgstr "Details ansehen" + +msgid "View list of available " +msgstr "Eine Liste der verfügbaren " + +msgid "View list of available CommonInterface extensions" +msgstr "Eine Liste der verfügbaren Common Interface-Erweiterungen anzeigen." + +msgid "View list of available EPG extensions." +msgstr "Eine Liste der verfügbaren EPG-Erweiterungen anzeigen." + +msgid "View list of available Satellite equipment extensions." +msgstr "Liste der verfügbaren Satellitenausrüstungs-Plugins anzeigen." + +msgid "View list of available communication extensions." +msgstr "Eine Liste der verfügbaren Kommunikations-Erweiterungen anzeigen." + +msgid "View list of available default settings" +msgstr "Eine Liste der verfügbaren Standard-Einstellungen anzeigen." + +msgid "View list of available display and userinterface extensions." +msgstr "" +"Eine Liste der verfügbaren Display- und Userinterface-Erweiterungen anzeigen." + +msgid "View list of available multimedia extensions." +msgstr "Eine Liste der verfügbaren Multimedia-Erweiterungen anzeigen." + +msgid "View list of available networking extensions" +msgstr "Eine Liste der verfügbaren Netzwerk-Erweiterungen anzeigen." + +msgid "View list of available recording extensions" +msgstr "Eine Liste der verfügbaren Aufnahme-Erweiterungen anzeigen." + +msgid "View list of available skins" +msgstr "Eine Liste der verfügbaren Skins anzeigen." + +msgid "View list of available software extensions" +msgstr "Eine Liste der verfügbaren Software-Erweiterungen anzeigen." + +msgid "View list of available system extensions" +msgstr "Eine Liste der verfügbaren System-Erweiterungen anzeigen." + +msgid "View photos..." +msgstr "Photos ansehen" + +msgid "View teletext..." +msgstr "Videotext anzeigen..." + +msgid "View video CD..." +msgstr "Video CD ansehen" + +msgid "Virtual keyboard" +msgstr "Virtuelle Tastatur" + +msgid "Voltage mode" +msgstr "Spannungs-Modus" + +msgid "Volume" +msgstr "Lautstärke" + +msgid "W" +msgstr "W" + +msgid "WEP" +msgstr "WEP" + +msgid "WLAN connection" +msgstr "WLAN Verbindung" + +msgid "WPA" +msgstr "WPA" + +msgid "WPA or WPA2" +msgstr "WPA oder WPA2" + +msgid "WPA2" +msgstr "WPA2" + +msgid "WSS on 4:3" +msgstr "WSS bei 4:3" + +msgid "Waiting" +msgstr "Warte" + +msgid "Waiting for mount" +msgstr "Warte auf Einhängung" + +msgid "Waiting for partition" +msgstr "Warte auf Partition" + +msgid "Wakeup" +msgstr "Anschalten" + +msgid "Wakeup TV from standby" +msgstr "Fernseher aus Standby anschalten" + +msgid "Wakeup receiver for start timer" +msgstr "Receiver aufwecken für Start-Timer" + +msgid "Wakeup receiver from standby" +msgstr "A/V-Receiver aus Standby anschalten" + +msgid "Wakeup signal from TV" +msgstr "Anschaltsignal vom Fernseher" + +msgid "Wakeup type" +msgstr "Aufweck-Modus" + +msgid "Warning: no LNB; using factory defaults." +msgstr "Warnung: kein LNB; verwende Werkseinstellung" + +msgid "Watch movies..." +msgstr "Filme abspielen..." + +msgid "Watch recordings..." +msgstr "Aufgenommene Filme abspielen..." + +msgid "Wed" +msgstr "Mi" + +msgid "Wednesday" +msgstr "Mittwoch" + +msgid "Weekday" +msgstr "Wochentag" + +msgid "Weighted position" +msgstr "Gewichtete Position" + +msgid "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start " +"cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." +msgstr "" +"Willkommen zum Cutlist-Editor.\n" +"\n" +"Spule zum Anfang des Bereiches, der entfernt werden soll. Drücke OK und " +"wähle 'Cut starten'.\n" +"\n" +"Dann spule zum Ende des Bereiches, drücke OK und wähle 'Cut beenden' - " +"fertig." + +msgid "" +"Welcome to the image upgrade wizard. The wizard will assist you in upgrading " +"the firmware of your receiver by providing a backup facility for your " +"current settings and a short explanation of how to upgrade your firmware." +msgstr "" +"Willkommen im Image-Upgrade-Assistenten. Der Assistent wird Ihnen bei der " +"Aktualisierung der Firmware helfen. Sie können mit diesem Assistenten die " +"aktuellen Einstellungen sichern und bekommen eine kleine Einweisung, wie Sie " +"die Firmware aktualisieren können." + +msgid "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide " +"you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" +msgstr "" +"Willkommen.\n" +"\n" +"Wenn Sie Ihren Receiver mit dem Internet verbinden möchten, wird Sie dieser " +"Assistent durch die grundlegenden Netzwerkeinstellungen führen.\n" +"\n" +"Drücken Sie OK, um Ihr Netzwerk zu konfigurieren" + +msgid "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." +msgstr "" +"Willkommen.\n" +"\n" +"Der Startassistent wird Sie durch die Grundeinstellungen Ihres Receivers " +"führen.\n" +"Drücken Sie OK auf Ihrer Fernbedienung, um zum nächsten Schritt zu gelangen." + +msgid "Welcome..." +msgstr "Willkommen..." + +msgid "West" +msgstr "West" + +msgid "West limit set" +msgstr "Westliches Limit" + +msgid "What do you want to scan?" +msgstr "Was wollen Sie scannen?" + +msgid "When enabled the PiP can be closed by the exit button." +msgstr "Falls aktiviert, kann PiP mit der Exit-Taste geschlossen werden." + +msgid "" +"When enabled the arrow buttons around the OK button will follow the " +"'neutrino' style zap controls instead of the enigma2 style." +msgstr "" +"Falls aktiviert, kann das Verhalten der Pfeil-Tasten, welche die OK-Taste " +"umschließen, auf den Neutrino-Stil angepasst werden." + +msgid "" +"When enabled the left, right, CH+/-, B+/-, P+/- buttons will follow the " +"'neutrino' style zap controls instead of the enigma2 style." +msgstr "" +"Falls aktiviert, können die links, rechts, CH+/-, B+/-, P+/- Tasten auf den " +"Neutrino-Stil angepasst werden." + +msgid "" +"When enabled you can specify a timeframe to ignore the shutdown timer when " +"the receiver is in standby mode" +msgstr "" +"Falls aktiviert, kann ein Zeitfenster angegeben werden, indem der Ausschalt-" +"Timer nicht beachtet wird, auch wenn sich der Receiver im Standby-Modus " +"befindet." + +msgid "" +"When enabled you can specify a timeframe were the inactivity sleeptimer is " +"ignored. Not the detection is disabled during this timeframe but the " +"inactivity timeout is disabled" +msgstr "" +"Falls aktiviert, kann ein Zeitbereich spezifiziert werden, in dem der " +"Inaktivität-Sleeptimer ignoriert wird. Nicht die Erkennung wird deaktiviert " +"während dieses Zeitbereichs, sondern der Timeout für die Inaktivität." + +msgid "" +"When enabled you can zap channels with the CH+/-, B+/-, P+/- buttons " +"instead of opening the channel selection list." +msgstr "" +"Falls aktiviert, kann mit den links, rechts, CH+/-, B+/-, P+/- Tasten " +"zwischen den Kanälen umgeschaltet werden anstelle die Kanalliste zu öffnen." + +msgid "" +"When enabled you get the channel selection list via the OK button, the " +"infobar toggle is then transfered to exit button" +msgstr "" +"Beim Betätigen der OK-Taste wird die Kanalliste angezeigt und die Anzeige " +"der Infobar auf die EXIT-Taste gelegt, wenn diese Einstellung aktiviert ist." + +msgid "" +"When enabled, AIT data will be included in http streams. This allows a " +"client receiver to use HbbTV." +msgstr "" +"Bei Aktivierung werden AIT Daten im HTTP Stream eingebaut. Dies erlaubt die " +"Verwendung von HbbTV mit Ihrem Receiver." + +msgid "" +"When enabled, ECM data will be included in http streams. This allows a " +"client receiver to do the descrambling." +msgstr "" +"Bei Aktivierung werden ECM Daten im HTTP Stream eingebaut. Dies erlaubt das " +"Entschlüsseln der empfangenen Daten." + +msgid "" +"When enabled, EIT data will be included in http streams. This allows a " +"client receiver to show EPG." +msgstr "" +"Bei Aktivierung werden EIT Daten im HTTP Stream eingebaut. Dies erlaubt die " +"Darstellung der EPG am Receiver." + +msgid "" +"When enabled, a popup message will be shown when a movie has finished and " +"the next one will start." +msgstr "" +"Anzeige eines Popups wenn ein Film fertig wiedergegeben wurde und die " +"nächste Wiedergabe startet." + +msgid "When enabled, a popup message will be shown when a recording starts." +msgstr "Benachrichtigung anzeigen, wenn eine Aufnahme startet" + +msgid "" +"When enabled, a radio background image will be visible while listening to a " +"radio channel." +msgstr "" +"Anzeige eines Radio-Hintergrundsymbols bei Wiedergabe eines Radio-Kanals." + +msgid "" +"When enabled, a recording is allowed to interrupt live tv, when there are no " +"free tuners." +msgstr "" +"Ein geplanter Aufnahme-Timer kann die aktuelle Live-Sendung unterbrechen, " +"wenn ansonsten keine freien Tuner zur Verfügung stehen." + +msgid "" +"When enabled, a warning will be displayed and the user will get an option to " +"stop or to continue the timeshift." +msgstr "" +"Fall aktiviert, wird eine Warnung angezeigt und der Benutzer kann wählen " +"zwischen dem Beenden oder Fortfahren der Timeshift-Aufnahme." + +msgid "When enabled, authentication is required to watch http streams." +msgstr "" +"Eine Authentifizierung ist erforderlich, um HTTP-Streams zu sehen, wenn " +"diese Einstellung aktiviert ist." + +msgid "When enabled, channel numbering will start at '1' for each bouquet." +msgstr "Kanalnummerierung beginnt bei '1' für alle Bouquets." + +msgid "" +"When enabled, content with an aspect ratio of 4:3 will be stretched to fit " +"the screen." +msgstr "" +"Inhalte mit einem Bildschirmformat von 4:3 werden gestreckt um die volle " +"Bildschirmfläche in Anspruch zu nehmen." + +msgid "" +"When enabled, continue to the next bouquet when the last channel of the " +"current bouquet is reached while changing channels." +msgstr "" +"Wechselt zum nächsten Bouquet wenn der letzte Kanal bei Kanalwechsel " +"erreicht wurde." + +msgid "" +"When enabled, deleted recordings are moved to the trash can, instead of " +"being deleted immediately." +msgstr "" +"Verschiebe Aufnahmem in den Mülleimer bevor sie endgültig gelöscht werden." + +msgid "" +"When enabled, display the EIT now/next eventdata in infobar. When disabled, " +"display now/next eventdata from the EPG cache instead." +msgstr "" +"EIT jetzt/danach Sendungsdaten in Infoleiste anzeigen. Bei Deaktivierung " +"zeigt jetzt/danach Sendungsdaten des EPG Caches an." + +msgid "" +"When enabled, encryption info will be shown in the infobar (when supported " +"by the skin)." +msgstr "" +"Verschlüsselungsinformationen in der Infoleiste anzeigen, wenn vom Skin " +"unterstützt." + +msgid "" +"When enabled, error messages related to the Common Interface module will not " +"be shown." +msgstr "" +"Fehlermeldungen des allgemeinen Schnittstellen Modules (CI) werden nicht " +"angezeigt." + +msgid "When enabled, error messages related to zapping will not be shown." +msgstr "Zapping-Fehler nicht anzeigen." + +msgid "" +"When enabled, external subtitles will be always turned on for playback movie." +msgstr "" +"Falls aktiviert, werden externe Untertitel (sofern vorhanden) beim Abspielen " +"von Filmen immer angezeigt." + +msgid "" +"When enabled, graphical DVB subtitles are preferred over teletext subtitles, " +"when both types are available." +msgstr "" +"DVB grafische Untertitel werden den Teletext Untertiteln vorgezogen falls " +"beide zur Verfügung stehen." + +msgid "When enabled, graphical DVB subtitles will be centered horizontally." +msgstr "DVB grafische Untertitel horizontal zentrieren." + +msgid "" +"When enabled, graphical DVB subtitles will be displayed at their original " +"position." +msgstr "" +"DVB grafische DVB Untertitel immer in ihrer ursprünglichen Position anzeigen." + +msgid "" +"When enabled, graphical DVB subtitles will be displayed in yellow, instead " +"of the original color." +msgstr "" +"DVB grafische Untertitel immer gelb anzeigen, anstatt in ihrer " +"ursprünglichen Farbe." + +msgid "" +"When enabled, http streams are descrambled on the server side. The (remote) " +"client receiver does not have to do descrambling." +msgstr "" +"HTTP Streams am Server entschlüsseln. Der empfangende Receiver muss keine " +"Art von Entschlüsselung selbst vornehmen." + +msgid "When enabled, it is possible to leave the movieplayer with exit." +msgstr "" +"Falls aktiviert, kann der Movieplayer mit der Exit-Taste geschlossen werden." + +msgid "" +"When enabled, measure power consumption to detect when the rotor stops " +"turning (when supported by the tuner)." +msgstr "" +"Stromverbrauch messen um festzustellen wann der Rotor aufhört sich zu drehen " +"(falls vom Tuner unterstützt)." + +msgid "When enabled, number markers will be hiden." +msgstr "Falls aktiviert, werden Nummer-Marker nicht angezeigt." + +msgid "When enabled, services may be grouped in multiple bouquets." +msgstr "Sender können in mehreren Bouqets gruppiert werden." + +msgid "When enabled, show channel numbers in the channel selection screen." +msgstr "Zeige Kanalnummer in Kanalauswahl" + +msgid "When enabled, subtitles for the hearing impaired can be used." +msgstr "Bevorzuge Untertitel für Hörgeschädigte" + +msgid "" +"When enabled, subtitles for the hearing impaired will be preferred over " +"normal subtitles, when both types are available." +msgstr "" +"Bevorzuge spezielle Untertitel für Hörgeschädigte wenn solche und normale " +"Untertitel zur Verfügung stehen." + +msgid "When enabled, teletext pages will be cached, allowing faster access." +msgstr "Cachen von Teletext-Seiten um schnellen Zugriff zu erlauben." + +msgid "" +"When enabled, teletext subtitles will be displayed at their original " +"position." +msgstr "Teletext Untertitel an ihrer ursprünglichen Position anzeigen." + +msgid "When enabled, the VCR scart option will be shown on the main menu" +msgstr "Falls aktiviert, wird die Option VCR-SCART im Hauptmenü angezeigt." + +msgid "" +"When enabled, the channel selection list will be hidden while listening to a " +"radio channel" +msgstr "Kanalliste während dem Radiohören verstecken." + +msgid "When enabled, the infobar will be displayed when a new event starts." +msgstr "Infoleiste anzeigen bei Sendungswechsel." + +msgid "When enabled, the infobar will be displayed when changing channels." +msgstr "Infoleiste bei Kanalwechsel anzeigen." + +msgid "" +"When enabled, the infobar will be displayed when skipping forwards/backwards " +"during media playback." +msgstr "Infoleiste beim Spulen in der Medienwiedergabe anzeigen ." + +msgid "" +"When enabled, the lenght of each recording will be shown in the movielist " +"(this might cause some additional loading time)." +msgstr "" +"Spielzeit aller Aufnahmen in der Filmliste anzeigen (verursacht höhere " +"Ladezeiten)." + +msgid "" +"When enabled, the original line breaks will be removed from the teletext " +"subtitles." +msgstr "Ursprüngliche Zeilenumbrüche in den Teletext Untertiteln entfernen." + +msgid "" +"When enabled, the receiver will automatically use the audio track which you " +"selected before." +msgstr "Automatische Wahl der zuvor ausgewählten Audiospur." + +msgid "" +"When enabled, the receiver will automatically use the subtitles which you " +"selected before." +msgstr "Automatische Wahl der zuvor ausgewählten Untertitel." + +msgid "" +"When enabled, the receiver will no longer monitor the tuned transponder for " +"possible changes. Do not use this option unless you know what you are doing." +msgstr "" +"Veränderungen des Tuner-Transponders nicht mehr überwachen. Bitte wählen Sie " +"diese Option nur falls Sie sich ganz sicher sind was Sie tun." + +msgid "When enabled, the receiver will select an AC3 track (when available)." +msgstr "AC3 Tonspur verwenden (falls vorhanden)." + +msgid "When enabled, the receiver will select an AC3+ track (when available)." +msgstr "" +"Der Receiver wählt (falls verfügbar) die AC3+ Tonspur aus, wenn diese " +"Einstellung aktiviert ist." + +msgid "" +"When enabled, timeshift starts automatically in background after specified " +"time." +msgstr "" +"Falls aktiviert, startet im Hintergrund automatisch die Timeshift-Aufnahme " +"nach der eingestellten Zeit." + +msgid "When enabled, use DHCP for the IP configuration." +msgstr "Dynamische IP Adressen (DHCP) für IP-Vergabe verwenden." + +msgid "" +"When enabled, your receiver will detect activity on the VCR SCART input." +msgstr "Der Receiver erkennt Aktivitäten am Video-SCART Eingang." + +msgid "" +"When nonzero, a recording will start earlier than the starting time " +"indicated by the EPG." +msgstr "" +"Aufnahme früher beginnen, als Startzeit die EPG zur Verfügung stellt (falls " +"nicht 0)." + +msgid "" +"When nonzero, a recording will stop later than the ending time indicated by " +"the EPG." +msgstr "" +"Aufnahme früher stoppen, als Endzeit die EPG zur Verfügung stellt (falls " +"nicht 0)." + +msgid "" +"When the content has an aspect ratio of 16:9, choose whether to scale/" +"stretch the picture." +msgstr "Skalieren/Strecken wenn Inhalt ein Bildformat von 16:9 aufweist." + +msgid "" +"When the content has an aspect ratio of 4:3, choose whether to scale/stretch " +"the picture." +msgstr "Skalieren/Strecken wenn Inhalt ein Bildformat von 4:3 aufweist." + +msgid "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart " +"automatically!\n" +"\n" +"Really do a factory reset?" +msgstr "" +"Wenn Sie die Werkseinstellungen wiederherstellen, verlieren Sie sämtliche " +"Konfigurationsdateien\n" +"(einschließlich Kanalliste, Tuner-Konfiguration...)\n" +"Nach der Wiederherstellung wird der Receiver automatisch neu starten\n" +"\n" +"Werkseinstellungen wirklich wiederherstellen?" + +msgid "Where do you want to backup your settings?" +msgstr "Wohin möchten Sie die Einstellungen sichern?" + +msgid "Where to save temporary timeshift recordings?" +msgstr "Wo wollen Sie temporäre Timeshift Aufnahmen speichern?" + +msgid "Wireless LAN" +msgstr "Funk-Netzwerk" + +msgid "Wireless network" +msgstr "Funk-Netzwerk" + +msgid "Wireless network configuration..." +msgstr "Funk-Netzwerk Konfiguration." + +msgid "Wireless network connection setup" +msgstr "Funk-Netzwerk Konfiguration" + +msgid "Wireless network connection setup." +msgstr "Funk-Netzwerk Konfiguration." + +msgid "Wireless network state" +msgstr "Funk-Netzwerk Status" + +msgid "With popup" +msgstr "mit Popup" + +msgid "Without popup" +msgstr "ohne Popup" + +msgid "Would you like to install a softcam?" +msgstr "Möchten Sie Softcam installieren?" + +msgid "Write error while recording. Disk full?\n" +msgstr "Schreibfehler bei der Aufnahme. Festplatte voll?\n" + +msgid "Write failed!" +msgstr "Schreiben fehlgeschlagen!" + +msgid "YPbPr" +msgstr "YPbPr" + +msgid "Year" +msgstr "Jahr" + +msgid "Yellow DVB subtitles" +msgstr "Gelbe DVB Untertitel" + +msgid "Yes" +msgstr "Ja" + +msgid "Yes and save" +msgstr "Ja und Speichern" + +msgid "Yes and save in movie dir" +msgstr "Ja, diesen Film im Filmordner speichern" + +msgid "Yes to all" +msgstr "Ja, zu allen" + +msgid "Yes, always" +msgstr "Ja, immer" + +msgid "Yes, and delete this movie" +msgstr "Ja, diesen Film löschen" + +msgid "Yes, backup my settings!" +msgstr "Ja, meine Einstellungen sichern!" + +msgid "Yes, delete this movie and return to movie list" +msgstr "Ja, lösche diesen Film und kehre zur Filmliste zurück" + +msgid "Yes, do a manual scan now" +msgstr "Ja, eine manuelle Suche durchführen" + +msgid "Yes, do an automatic scan now" +msgstr "Ja, eine automatische Suche durchführen" + +msgid "Yes, do another manual scan now" +msgstr "Ja, eine weitere manuelle Suche durchführen" + +msgid "Yes, perform a shutdown now." +msgstr "Ja, jetzt herunterfahren." + +msgid "Yes, restore the settings now" +msgstr "Ja, die Einstellungen jetzt wiederherstellen" + +msgid "Yes, returning to movie list" +msgstr "Ja, zurück zur Filmauswahl" + +msgid "Yesterday" +msgstr "Gestern" + +#, python-format +msgid "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" +msgstr "" +"Sie haben bereits eine Kanalliste installiert.\n" +"Wollen Sie \"%s\" entfernen?" + +msgid "You can cancel the installation." +msgstr "Sie können die Installation abbrechen." + +msgid "You can cancel the removal." +msgstr "Sie können das Entfernen abbrechen." + +msgid "You can continue watching TV etc. while this is running." +msgstr "" +"Der Vorgang findet im Hintergrund statt, Sie können Ihren Receiver ganz " +"normal weiter nutzen." + +msgid "You can install this plugin." +msgstr "Sie können dieses Plugin installieren." + +msgid "You can only burn receiver recordings!" +msgstr "Sie können nur Receiver-Aufnahmen brennen!" + +msgid "You can remove this plugin." +msgstr "Sie können dieses Plugin deinstallieren." + +msgid "You cannot delete this!" +msgstr "Löschen nicht möglich!" + +msgid "You didn't select a channel to record from." +msgstr "Sie haben keinen Sender zum Aufnehmen ausgewählt." + +msgid "" +"You have chosen to backup your settings. Please press OK to start the backup " +"now." +msgstr "" +"Sie haben sich entschieden Ihre Einstellungen zu sichern. Drücken Sie OK, um " +"den Vorgang zu starten." + +msgid "" +"You have chosen to create a new .NFI flasher bootable USB stick. This will " +"repartition the USB stick and therefore all data on it will be erased." +msgstr "" +"Sie möchten einen bootfähigen USB-Stick zum Flashen von NFI-Images " +"erstellen. Dabei wird der USB-Stick repartitioniert, wodurch alle darauf " +"enthaltenen Daten verloren gehen." + +msgid "" +"You have chosen to restore your settings. Enigma2 will restart after " +"restore. Please press OK to start the restore now." +msgstr "" +"Sie haben sich entschlossen, Ihre Einstellungen wiederherzustellen. Die " +"Benutzeroberfläche wird nach der Wiederherstellung neu starten. Bitte " +"drücken Sie OK, um mit der Wiederherstellung zu beginnen." + +#, python-format +msgid "You have to wait %s!" +msgstr "Sie müssen %s warten!" + +msgid "" +"You need a PC connected to your receiver. If you need further instructions, " +"please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update " +"instructions from the website, your new firmware will ask you to restore " +"your settings." +msgstr "" +"Sie müssen einen PC mit Ihrem Receiver verbunden haben. Wenn Sie " +"weiterführende Informationen benötigen, besuchen Sie die Webseite http://www." +"dm7025.de.\n" +"Der Receiver wird nun ausgeschaltet. Nachdem Sie das Update wie auf der " +"Webseite beschrieben durchgeführt haben, wird Sie die neue Firmware fragen, " +"ob Sie die Einstellungen wiederherstellen wollen." + +msgid "You system does not support ext4" +msgstr "Ihr System unterstützt das ext4 Dateisystem nicht" + +msgid "" +"Your backup succeeded. We will now continue to explain the further upgrade " +"process." +msgstr "" +"Ihre Sicherung ist geglückt. Der Receiver wird nun den weiteren " +"Aktualisierungs-Prozess erklären." + +msgid "" +"Your collection exceeds the size of a single layer medium, you will need a " +"blank dual layer DVD!" +msgstr "" +"Die Zusammenstellung überschreitet die Größe eines einfachen Mediums, Sie " +"werden einen Doppelschicht-Rohling (Dual Layer) benötigen!" + +msgid "Your current collection will get lost!" +msgstr "Ihre aktuelle Zusammenstellung geht dabei verloren!" + +msgid "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." +msgstr "" +"Ihre Frontprozessor-Firmware muss aktualisiert werden.\n" +"Drücken Sie OK, um das Upgrade zu starten." + +msgid "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Ihr Frontprozessor wird aktualisiert\n" +"Bitte warten Sie, bis Ihr Receiver neu startet\n" +"Das kann einige Minuten dauern" + +msgid "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." +msgstr "" +"Ihre Internetverbindung funktioniert nicht!\n" +"Bitte wählen Sie eine Option zum Fortfahren." + +#, python-format +msgid "Your internet connection is working (ip: %s)" +msgstr "Verbindung zum Internet aufgebaut (ip: %s)" + +msgid "Your network configuration has been activated." +msgstr "Ihre Netzwerk-Konfiguration wurde aktiviert." + +msgid "Your receiver does not have an internet connection" +msgstr "Keine Verbindung zum Internet vorhanden" + +msgid "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" +msgstr "" +"Ihr Receiver ist nun konfiguriert.\n" +"\n" +"Ihre Internetverbindung funktioniert nun.\n" +"\n" + +msgid "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Ihr Receiver ist jetzt konfiguriert.\n" +"\n" +"Ihre Internetverbindung funktioniert nun.\n" +"\n" +"Bitte OK drücken zum Fortfahren." + +msgid "Your receiver is rebooting" +msgstr "Ihr Receiver startet neu" + +msgid "Your receiver is shutting down" +msgstr "Ihr Receiver wird ausgeschaltet" + +msgid "Your receiver is shutting down. Please stand by..." +msgstr "Ihr Receiver schaltet sich nun aus. Bitte warten Sie einen Moment..." + +msgid "" +"Your receiver might be unusable now. Please consult the manual for further " +"assistance before rebooting your receiver." +msgstr "" +"Ihr Receiver könnte jetzt unbenutzbar sein. Bitte konsultieren Sie das " +"Handbuch, bevor Sie Ihren Receiver neustarten." + +msgid "Your receiver will got to stand by due to the sleeptimer." +msgstr "Der Receiver geht jetzt gemäß des Sleeptimers in den Standby." + +msgid "Your receiver will got to standby due to inactivity." +msgstr "Der Receiver geht jetzt wegen Inaktivität in den Standby." + +msgid "Your receiver will restart after pressing OK on your remote control." +msgstr "Ihr Receiver startet neu nach Betätigung der OK-Taste." + +msgid "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." +msgstr "" +"Ihre Funk-Internetverbindung konnte nicht gestartet werden!\n" +"Ist Ihr USB WLAN-Stick korrekt angeschlossen?\n" +"\n" +"Bitte wählen Sie eine Option zum Fortfahren." + +msgid "Zap" +msgstr "Umschalten" + +msgid "Zap back to previously tuned service?" +msgstr "Zurückschalten zum vorher laufenden Sender?" + +msgid "Zap back to service before positioner setup?" +msgstr "" +"Zurückschalten zum Sender der vor dem\n" +"Öffnen der Motor-Einstellungen lief?" + +msgid "Zap back to service before tuner setup?" +msgstr "Zurückschalten zum vorher laufenden Sender?" + +msgid "Zap focus to Picture in Picture" +msgstr "Fokus auf Bild im Bild legen" + +msgid "Zap focus to main screen" +msgstr "Fokus auf Hauptbild legen" + +msgid "Zap mode" +msgstr "Zap Modus" + +msgid "Zap to selected channel" +msgstr "Schalte zum ausgewählten Sender um" + +msgid "" +"Zap to selected channel, or show detailed event info (depends on " +"configuration)" +msgstr "" +"Schalte zum ausgewählten Sender um oder zeige detaillierte " +"Sendungsinformation an (von Ihrer Einstellung abhängig)." + +msgid "[alternative edit]" +msgstr "[Alternativen-Bearbeitung]" + +msgid "[bouquet edit]" +msgstr "[Bouquet-Editor]" + +msgid "[favourite edit]" +msgstr "[Favoriten-Editor]" + +msgid "[move mode]" +msgstr "[Verschiebemodus]" + +msgid "a gui to assign services/providers to common interface modules" +msgstr "" +"Eine Benutzeroberfläche, um einem Common Interface Kanäle/Provider " +"zuzuweisen." + +msgid "a gui to assign services/providers/caids to common interface modules" +msgstr "" +"Eine Benutzeroberfläche, um einem Common Interface Kanäle/Provider/CAIDs " +"zuzuweisen." + +msgid "abort alternatives edit" +msgstr "Alternativen-Bearbeitung abbrechen" + +msgid "abort bouquet edit" +msgstr "Bouqueteditieren abbrechen" + +msgid "abort favourites edit" +msgstr "Favoriteneditor abbrechen" + +msgid "about to start" +msgstr "Startet gleich" + +msgid "activate network adapter configuration" +msgstr "Netzwerkverbindung aktivieren" + +msgid "add alternatives" +msgstr "Alternativen hinzufügen" + +msgid "add bookmark" +msgstr "Lesezeichen hinzufügen" + +msgid "add bouquet" +msgstr "Bouquet einfügen" + +msgid "add marker" +msgstr "Marker einfügen" + +msgid "add service to bouquet" +msgstr "Zu Bouquet hinzufügen" + +msgid "add service to favourites" +msgstr "Kanal zu Favoriten hinzufügen" + +msgid "add to parental protection" +msgstr "Jugendschutz anschalten" + +msgid "adult movie/drama" +msgstr "Erwachsenenfilm/Drama" + +msgid "advanced" +msgstr "Erweitert" + +msgid "adventure/western/war" +msgstr "Abenteuer/Western/Krieg" + +msgid "advertisement/shopping" +msgstr "Werbung/Einkaufen" + +msgid "after " +msgstr "nach" + +msgid "alphabetic" +msgstr "Alphabet" + +msgid "alphabetic reverse" +msgstr "Umgekehrtes Alphabet" + +msgid "alternative" +msgstr "alternativ" + +msgid "always" +msgstr "immer" + +msgid "and select next channel" +msgstr "und nachfolgenden Kanal auswählen" + +msgid "and select previous channel" +msgstr "und vorherigen Kanal auswählen" + +msgid "arts/culture (without music, general)" +msgstr "Kunst/Kultur (ohne Musik, Allgemeines)" + +msgid "arts/culture magazine" +msgstr "Kunst/Kulturmagazine" + +msgid "athletics" +msgstr "Leichtathletik (Sport)" + +msgid "audio tracks" +msgstr "Tonspuren" + +msgid "auto" +msgstr "Automatisch" + +msgid "automatic" +msgstr "Automatisch" + +msgid "back" +msgstr "Zurück" + +msgid "background image" +msgstr "Hintergrundbild" + +msgid "ballet" +msgstr "Ballett" + +#, python-format +msgid "bc%s" +msgstr "bc%s" + +msgid "better" +msgstr "Besser" + +msgid "black" +msgstr "Schwarz" + +msgid "black & white" +msgstr "Schwarz & Weiß" + +msgid "blacklist" +msgstr "Negativliste" + +msgid "blue" +msgstr "Blau" + +msgid "broadcasting/press" +msgstr "Rundsendung/Presse" + +msgid "by date" +msgstr "Aufnahmen nach Datum sortieren" + +msgid "cartoon/puppets" +msgstr "Zeichentrickfilm/Marionetten" + +msgid "center" +msgstr "Zentriert" + +msgid "centered" +msgstr "zentriert" + +msgid "centered, wrapped" +msgstr "zentriert, umgebrochen" + +msgid "chapters" +msgstr "Kapitel" + +msgid "childrens's/youth program (general)" +msgstr "Kinder/Jugendprogramm (Allgemein)" + +msgid "circular left" +msgstr "Links-zirkular" + +msgid "circular right" +msgstr "Rechts-zirkular" + +msgid "comedy" +msgstr "Komödie" + +msgid "complex" +msgstr "Komplex" + +msgid "config menu" +msgstr "Konfigurationsmenü" + +msgid "confirmed" +msgstr "Bestätigt" + +msgid "connected" +msgstr "Verbunden" + +msgid "continue" +msgstr "Weiter" + +msgid "cooking" +msgstr "Kochen" + +msgid "copy to bouquets" +msgstr "In Bouquets kopieren" + +msgid "create directory" +msgstr "Verzeichnis erstellen" + +#, python-format +msgid "currently installed image: %s" +msgstr "Derzeit installiertes Image: %s" + +msgid "daily" +msgstr "Täglich" + +msgid "day" +msgstr "Tag" + +msgid "default" +msgstr "Standard" + +msgid "delete cut" +msgstr "Schnitt löschen" + +msgid "delete..." +msgstr "löschen..." + +msgid "descramble and record ecm" +msgstr "Entschlüsseln und Aufnahme ECM" + +msgid "detective/thriller" +msgstr "Krimi/Thriller" + +msgid "disable" +msgstr "Deaktivieren" + +msgid "disable move mode" +msgstr "Verschiebemodus ausschalten" + +msgid "disabled" +msgstr "Deaktiviert" + +msgid "disconnected" +msgstr "Nicht verbunden" + +msgid "discussion/interview/debate" +msgstr "Diskussion/Interview/Debatte" + +msgid "do nothing" +msgstr "Nichts" + +msgid "documentary" +msgstr "Dokumentationen" + +msgid "don't descramble, record ecm" +msgstr "Nicht entschlüsseln, Aufnahme ECM" + +msgid "done!" +msgstr "Erledigt!" + +msgid "east" +msgstr "Osten" + +msgid "economics/social advisory" +msgstr "Wirtschaft/Soziale Ratgeber" + +msgid "edit alternatives" +msgstr "Alternativen bearbeiten" + +msgid "education/science/factual topics (general)" +msgstr "Bildung/Wissenschaft/Sachbezogene Themen (Allgemein)" + +msgid "empty" +msgstr "Leer" + +msgid "enable" +msgstr "Aktivieren" + +msgid "enable bouquet edit" +msgstr "Bouqueteditieren anschalten" + +msgid "enable favourite edit" +msgstr "Favoriteneditor anschalten" + +msgid "enable move mode" +msgstr "Verschiebemodus aktivieren" + +msgid "enabled" +msgstr "Aktiviert" + +msgid "end alternatives edit" +msgstr "Alternativen-Bearbeitung beenden" + +msgid "end bouquet edit" +msgstr "Bouqueteditieren beenden" + +msgid "end cut here" +msgstr "Schnitt endet hier" + +msgid "end favourites edit" +msgstr "Favoriteneditor beenden" + +msgid "entertainment (10-16 year old)" +msgstr "Unterhaltung (10-16 Jahre)" + +msgid "entertainment (6-14 year old)" +msgstr "Unterhaltung (6-14 Jahre)" + +msgid "equal to" +msgstr "Gleich wie" + +msgid "equestrian" +msgstr "Pferdesport" + +msgid "exit DVD player or return to file browser" +msgstr "DVD Player verlassen oder zurück zum Dateimanager" + +msgid "exit movielist" +msgstr "Verlasse Filmliste" + +msgid "exit network adapter configuration" +msgstr "Netzwerkadapter-Konfiguration verlassen" + +msgid "exit networkadapter setup menu" +msgstr "Netzwerkadaptermenü verlassen" + +msgid "experimental film/video" +msgstr "Experimentelle Filme/Video" + +msgid "false" +msgstr "Nein" + +msgid "fashion" +msgstr "Mode" + +msgid "fileformats (BMP, PNG, JPG, GIF)" +msgstr "Dateiformate (BMP, PNG, JPG, GIF)" + +msgid "filename" +msgstr "Dateiname" + +msgid "film/cinema" +msgstr "Film/Kino" + +msgid "fine arts" +msgstr "Kunstwissenschaft" + +msgid "fine-tune your display" +msgstr "Ändern Sie die Feineinstellungen Ihres Bildschirms" + +msgid "fitness & health" +msgstr "Fitness & Gesundheit" + +msgid "flat alphabetic" +msgstr "Aufnahmen alphabetisch sortieren" + +msgid "flat alphabetic reverse" +msgstr "Umgekehrtes Alphabet" + +msgid "folk/traditional music" +msgstr "Volks/Traditionelle Musik" + +msgid "football/soccer" +msgstr "Fußball" + +msgid "foreign countries/expeditions" +msgstr "Ausland/Expeditionen" + +msgid "forward to the next chapter" +msgstr "Weiter zum nächsten Kapitel" + +msgid "free" +msgstr "Frei" + +msgid "from" +msgstr "Von" + +msgid "further education" +msgstr "Weiterbildung" + +msgid "game show/quiz/contest" +msgstr "Spielsendung/Quiz/Wettbewerb" + +msgid "gardening" +msgstr "Gartenarbeit" + +msgid "go to deep standby" +msgstr "In Deep Standby gehen" + +msgid "go to standby" +msgstr "In Standby gehen" + +msgid "grab this frame as bitmap" +msgstr "Diesen Frame als Bitmap speichern" + +msgid "green" +msgstr "Grün" + +msgid "handicraft" +msgstr "Handwerkskunst" + +msgid "height" +msgstr "Höhe" + +msgid "help..." +msgstr "Hilfe..." + +msgid "horizontal" +msgstr "Horizontal" + +msgid "information/education/school program" +msgstr "Information/Bildung/Schulprogramm" + +msgid "init module" +msgstr "Modul initialisieren" + +msgid "init modules" +msgstr "Module initialisieren" + +msgid "insert mark here" +msgstr "Markierung hier einfügen" + +msgid "invalid type" +msgstr "Ungültige Werte" + +msgid "jazz" +msgstr "Jazz" + +msgid "jump back to the previous title" +msgstr "Zum letzten Titel springen" + +msgid "jump forward to the next title" +msgstr "Zum nächsten Titel springen" + +msgid "languages" +msgstr "Sprachen" + +msgid "leave movie player..." +msgstr "Medienplayer verlassen..." + +msgid "left" +msgstr "Links" + +msgid "left, wrapped" +msgstr "links, umgebrochen" + +msgid "leisure hobbies (general)" +msgstr "Freizeitbeschäftigungen (Allgemein)" + +msgid "length" +msgstr "Länge" + +msgid "limit ..., aborting !" +msgstr "Limit ..., Abbruch!" + +msgid "list style compact" +msgstr "Kompakte Listenansicht" + +msgid "list style compact with description" +msgstr "Kompakte Listenansicht mit Beschreibung" + +msgid "list style default" +msgstr "Standard Listenansicht" + +msgid "list style single line" +msgstr "Einzeilige Listenansicht" + +msgid "literature" +msgstr "Literatur" + +msgid "live broadcast" +msgstr "Live-Übertragung" + +msgid "locked" +msgstr "gesperrt" + +msgid "loopthrough to" +msgstr "Verbunden mit" + +msgid "magazines/reports/documentary" +msgstr "Magazine/Reportagen/Dokumentationen" + +msgid "manual" +msgstr "Manuell" + +msgid "martial sports" +msgstr "Kampfsport" + +msgid "medicine/physiology/psychology" +msgstr "Medizin/Physiologie/Psychologie" + +msgid "menu" +msgstr "Menü" + +msgid "mins" +msgstr "Minuten" + +msgid "minutes" +msgstr "Minuten" + +msgid "month" +msgstr "Monat" + +msgid "motor sport" +msgstr "Motorsport" + +msgid "motoring" +msgstr "Motorsport" + +msgid "move down to last entry" +msgstr "Zum letzten Eintrag gehen" + +msgid "move down to next entry" +msgstr "Zum nächsten Eintrag gehen" + +msgid "move up to first entry" +msgstr "Zum ersten Eintrag gehen" + +msgid "move up to previous entry" +msgstr "Zum vorherigen Eintrag gehen" + +msgid "movie/drama (general)" +msgstr "Film/Drama (Allgemein)" + +msgid "multinorm" +msgstr "Multinorm" + +msgid "music/ballet/dance (general)" +msgstr "Musik/Ballett/Tanz (Allgemein)" + +msgid "musical/opera" +msgstr "Musical/Oper" + +msgid "nature/animals/environment" +msgstr "Natur/Tiere/Umwelt" + +msgid "never" +msgstr "Niemals" + +msgid "new media" +msgstr "Neue Medien" + +msgid "news magazine" +msgstr "Nachrichtenmagazine" + +msgid "news/current affairs (general)" +msgstr "Nachrichten/Tagesgeschehen (Allgemein)" + +msgid "news/weather report" +msgstr "Nachrichten/Wetterbericht" + +msgid "no" +msgstr "Nein" + +msgid "no CAId selected" +msgstr "Keine CAID ausgewählt" + +msgid "no CI slots found" +msgstr "Kein CI Slot gefunden" + +msgid "no module found" +msgstr "Kein Modul gefunden" + +msgid "no storage devices found" +msgstr "Kein Laufwerk gefunden" + +msgid "none" +msgstr "Keine" + +msgid "normal" +msgstr "Normal" + +msgid "not configured" +msgstr "Nicht konfiguriert" + +msgid "not locked" +msgstr "Kein Signal" + +msgid "not supported" +msgstr "Nicht unterstützt" + +msgid "not used" +msgstr "Nicht verwendet" + +msgid "nothing connected" +msgstr "Nichts angeschlossen" + +msgid "of a DUAL layer medium used." +msgstr "eines Doppelschicht-Mediums (Dual Layer) benutzt." + +msgid "of a SINGLE layer medium used." +msgstr "eines Einschicht-Mediums (Single Layer) benutzt." + +msgid "off" +msgstr "Aus" + +msgid "offset is" +msgstr "Endstellung auf" + +msgid "on" +msgstr "An" + +msgid "on READ ONLY medium." +msgstr "auf dem nicht beschreibbaren Medium." + +msgid "on end of movie" +msgstr "beim Filmende" + +msgid "once" +msgstr "Einmal" + +msgid "only from deep standby" +msgstr "Nur aus dem Deep-Standby" + +msgid "only from standby" +msgstr "Nur im Standby" + +msgid "open EPG..." +msgstr "Öffne EPG..." + +msgid "open Info..." +msgstr "Öffne Info..." + +msgid "open nameserver configuration" +msgstr "DNS-Server Konfiguration öffnen" + +msgid "original" +msgstr "Original" + +msgid "original language" +msgstr "Original Sprache" + +msgid "pass" +msgstr "Durchgang" + +msgid "performing arts" +msgstr "Darstellende Künste" + +msgid "play as picture in picture" +msgstr "Als Bild im Bild wiedergeben" + +msgid "play in mainwindow" +msgstr "Als Hautpbild wiedergeben" + +msgid "please press OK when ready" +msgstr "Bitte OK drücken, wenn bereit" + +msgid "please wait, loading picture..." +msgstr "Bitte warten, Bild wird geladen..." + +msgid "popular culture/traditional arts" +msgstr "Beliebte Kultur/Traditionelle Kunst" + +msgid "pre-school children's program" +msgstr "Vorschul Kinderprogramm" + +msgid "receiver software because updates are available." +msgstr "Receiver Software, weil Updates verfügbar sind." + +msgid "record" +msgstr "Aufnehmen" + +msgid "recording..." +msgstr "Nimmt auf..." + +msgid "red" +msgstr "Rot" + +msgid "religion" +msgstr "Glaube" + +msgid "remarkable people" +msgstr "Außergewöhnliche Menschen" + +msgid "remove after this position" +msgstr "Nach dieser Position entfernen" + +msgid "remove all alternatives" +msgstr "Entferne alle Alternativen" + +msgid "remove all new found flags" +msgstr "Entfernen aller 'neu gefunden'-Kennzeichnungen" + +msgid "remove before this position" +msgstr "Vor dieser Position entfernen" + +msgid "remove bookmark" +msgstr "Lesezeichen entfernen" + +msgid "remove directory" +msgstr "Verzeichnis entfernen" + +msgid "remove entry" +msgstr "Eintrag entfernen" + +msgid "remove from parental protection" +msgstr "Jugendschutz ausschalten" + +msgid "remove new found flag" +msgstr "Entfernen der 'neu gefunden'-Kennzeichnung" + +msgid "remove selected satellite" +msgstr "Entferne gewählten Satellit" + +msgid "remove this mark" +msgstr "Diese Markierung entfernen" + +msgid "rename entry" +msgstr "Eintrag umbenennen" + +msgid "repeat playlist" +msgstr "Wiederholung der Wiedergabeliste" + +msgid "repeated" +msgstr "Wiederholend" + +msgid "reverse by date" +msgstr "Umgekehrt nach Datum" + +msgid "rewind to the previous chapter" +msgstr "Zum vorherigen Kapitel zurück" + +msgid "right" +msgstr "Rechts" + +msgid "right, wrapped" +msgstr "rechts, umgebrochen" + +msgid "rock/pop" +msgstr "Rock/Pop" + +msgid "romance" +msgstr "Romanze" + +msgid "save last directory on exit" +msgstr "Anfangsverzeichnis beim Beenden merken" + +msgid "save playlist on exit" +msgstr "Wiedergabeliste beim Beenden speichern" + +msgid "scan state" +msgstr "Status" + +msgid "science fiction/fantasy/horror" +msgstr "Science-Fiction/Fantasie/Horror" + +msgid "second cable of motorized LNB" +msgstr "Zweites Kabel vom Rotor" + +msgid "seconds" +msgstr "Sekunden" + +msgid "select" +msgstr "Wähle" + +msgid "select CAId's" +msgstr "CAIDs auswählen" + +msgid "select EPG..." +msgstr "Wähle EPG.." + +msgid "select Info..." +msgstr "Wähle Info..." + +msgid "select menu entry" +msgstr "Wählen Sie einen Menüpunkt" + +msgid "select movie" +msgstr "Film auswählen" + +msgid "select the movie path" +msgstr "Den Filmpfad auswählen" + +msgid "serious music/classic music" +msgstr "Ernste Musik/Klassische Musik" + +msgid "serious/classical/religious/historical movie/drama" +msgstr "Ernst/Klassisch/Religiös/Historischer Film/Drama" + +msgid "service PIN" +msgstr "Kanal PIN" + +msgid "set as startup service" +msgstr "Als Anschalt-Kanal setzen" + +msgid "setup PIN" +msgstr "Setup PIN" + +msgid "show DVD main menu" +msgstr "Zeige das DVD Hauptmenü" + +msgid "show all tags" +msgstr "Alle Tags anzeigen" + +msgid "show alternatives" +msgstr "Zeige Alternativen" + +msgid "show event details" +msgstr "Sendungs-Details anzeigen" + +msgid "show extended description" +msgstr "Zeige erweiterte Beschreibung" + +msgid "show mediaplayer on mainmenu" +msgstr "Zeige Mediaplayer im Hauptmenü" + +msgid "show softwaremanager in setup menu" +msgstr "Zeige Softwaremanager unter Einstellungen" + +msgid "show softwaremanager on blue button" +msgstr "Zeige Softwaremanager auf blauer Taste" + +msgid "show tag menu" +msgstr "Zeige Tag-Menü" + +msgid "show transponder info" +msgstr "Transponder-Info anzeigen" + +msgid "show/game show (general)" +msgstr "Show/Spielsendung (Allgemein)" + +msgid "shuffle" +msgstr "Mischen" + +msgid "shut down" +msgstr "Ausschalten" + +msgid "simple" +msgstr "Einfach" + +msgid "skip backward" +msgstr "Rückwärts spulen" + +msgid "skip forward" +msgstr "Vorwärts spulen" + +msgid "soap/melodram/folkloric" +msgstr "Soap/Melodrama/Volkstümlich" + +msgid "social/political issues/economics (general)" +msgstr "Soziale/Politische Angelegenheiten/Wirtschaft (Allgemein)" + +msgid "social/spiritual science" +msgstr "Sozial/Geisteswissenschaft" + +msgid "sorting of playlists" +msgstr "Sortierung der Wiedergabeliste" + +msgid "special characters" +msgstr "Sonderzeichen" + +msgid "special events" +msgstr "Sondersendung" + +msgid "special format data DVD (HDTV compatible)" +msgstr "spezielles Format Daten-DVD (HDTV-kompatibel)" + +msgid "sports (general)" +msgstr "Sport (Allgemein)" + +msgid "sports magazine" +msgstr "Sportzeitung" + +msgid "standard" +msgstr "Standard" + +msgid "start cut here" +msgstr "Schnitt hier starten" + +msgid "start directory" +msgstr "Anfangsverzeichnis" + +msgid "stepsize" +msgstr "Schrittgröße" + +msgid "stereo" +msgstr "Stereo" + +msgid "stop using as startup service" +msgstr "Nicht mehr als Anschaltkanal nutzen" + +msgid "switch to bookmarks" +msgstr "Gehe zu den Lesezeichen" + +msgid "switch to filelist" +msgstr "In Dateiliste wechseln" + +msgid "switch to the next angle" +msgstr "Zur nächsten Kameraperspektive wechseln" + +msgid "switch to the next audio track" +msgstr "Zum nächsten Ton-Titel wechseln" + +msgid "switch to the next subtitle language" +msgstr "Zur nächsten Untertitel-Sprache wechseln" + +msgid "talk show" +msgstr "Talkshow" + +msgid "team sports" +msgstr "Mannschaftssport" + +msgid "technology/natural science" +msgstr "Technologie/Naturwissenschaft" + +msgid "template file" +msgstr "Dateivorlage" + +msgid "tennis/squash" +msgstr "Tennis/Squash" + +msgid "this recording" +msgstr "Diese Aufnahme" + +msgid "this service is protected by a parental control pin" +msgstr "Dieser Kanal ist durch einen Jugendschutz-PIN-Code geschützt." + +msgid "toggle time, chapter, audio, subtitle info" +msgstr "Schalte zwischen Zeit-, Kapitel-, Ton- und Untertitel-Info um" + +msgid "top" +msgstr "Oben" + +msgid "tourism/travel" +msgstr "Tourismus/Reisen" + +msgid "true" +msgstr "Ja" + +msgid "unavailable" +msgstr "Nicht verfügbar" + +msgid "unconfirmed" +msgstr "Nicht bestätigt" + +msgid "undefined" +msgstr "Nicht bekannt" + +msgid "unknown" +msgstr "Unbekannt" + +msgid "unknown service" +msgstr "Unbekannter Kanal" + +msgid "unpublished" +msgstr "Unveröffentlicht" + +msgid "until standby/restart" +msgstr "Bis zum Standby/Neustart" + +msgid "user defined" +msgstr "Benutzerdefiniert" + +msgid "variety show" +msgstr "Abwechslungsreiche Sendung" + +msgid "vertical" +msgstr "Vertikal" + +msgid "wait for ci..." +msgstr "Warte auf CI..." + +msgid "wait for mmi..." +msgstr "Warte auf mmi..." + +msgid "waiting" +msgstr "Wartend" + +msgid "water sport" +msgstr "Wassersport" + +msgid "weekly" +msgstr "Wöchentlich" + +msgid "west" +msgstr "Westen" + +msgid "when PiPzap enabled zap channel down..." +msgstr "Kanal herunterschalten, falls PiPzap aktiv ist..." + +msgid "when PiPzap enabled zap channel up..." +msgstr "Kanal hochschalten, falls PiPzap aktiv ist..." + +msgid "white" +msgstr "Weiß" + +msgid "whitelist" +msgstr "Positivliste" + +msgid "width" +msgstr "Breite" + +msgid "winter sport" +msgstr "Wintersport" + +msgid "wireless network interface" +msgstr "Funk Netzwerkadapter" + +#, python-format +msgid "with %d error" +msgid_plural "with %d errors" +msgstr[0] "mit %d Fehler" +msgstr[1] "mit %d Fehlern" + +msgid "working" +msgstr "Arbeite" + +msgid "yellow" +msgstr "Gelb" + +msgid "yes" +msgstr "Ja" + +msgid "yes (keep feeds)" +msgstr "Ja (Feeds behalten)" + +msgid "zap" +msgstr "Umschalten" + +msgid "zap and record" +msgstr "Umschalten und aufnehmen" + +msgid "zapped" +msgstr "umgeschaltet" diff --git a/po/el.po b/po/el.po new file mode 100644 index 0000000..fba9a45 --- /dev/null +++ b/po/el.po @@ -0,0 +1,8083 @@ +msgid "" +msgstr "" +"Project-Id-Version: enigma2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-07-21 19:08+0200\n" +"PO-Revision-Date: \n" +"Last-Translator: MCelliot_g <mcelliot_g@hotmail.com>\n" +"Language-Team: satdreamgr <satdreamgr.com>\n" +"Language: el\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 1.6.5\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "" +"\n" +"Advanced options and settings." +msgstr "" +"\n" +"Προχωρημένες επιλογές και ρυθμίσεις" + +msgid "" +"\n" +"After pressing OK, please wait!" +msgstr "" +"\n" +"Αφού πιέσετε ΟΚ, παρακαλώ περιμένετε!" + +msgid "" +"\n" +"Backup your receiver settings." +msgstr "" +"\n" +" Δημιουργία αντιγράφου ασφαλείας των ρυθμίσεων του δέκτη σας." + +msgid "" +"\n" +"Edit the upgrade source address." +msgstr "" +"\n" +" Επεξεργασία διεύθυνσης πηγής αναβαθμίσεων" + +msgid "" +"\n" +"Manage extensions or plugins for your receiver" +msgstr "" +"\n" +"Διαχείριση επεκτάσεων ή προσθέτων για τον δέκτη σας" + +msgid "" +"\n" +"Online update of your receiver software." +msgstr "" +"\n" +"Διαδικτυακή ενημέρωση λογισμικού του δέκτη σας." + +msgid "" +"\n" +"Press OK on your remote control to continue." +msgstr "" +"\n" +"Πιέστε ΟΚ στο τηλεχειριστήριο για συνέχεια." + +msgid "" +"\n" +"Restore your backups by date." +msgstr "" +"\n" +"Επαναφορά αντιγράφων ασφαλείας κατά ημερομηνία." + +msgid "" +"\n" +"Restore your receiver settings." +msgstr "" +"\n" +"Επαναφορά των ρυθμίσεων του δέκτη σας." + +msgid "" +"\n" +"Restore your receiver with a new firmware." +msgstr "" +"\n" +"Επαναφορά του δέκτη σας με ένα νέο υλικολογισμικό" + +msgid "" +"\n" +"Scan for local extensions and install them." +msgstr "" +"\n" +"Αναζήτηση και εγκατάσταση επεκτάσεων τοπικά." + +msgid "" +"\n" +"Select your backup device.\n" +"Current device: " +msgstr "" +"\n" +"Επιλογή συσκευής αντιγράφων ασφαλείας.\n" +"Τρέχουσα συσκευή: " + +msgid "" +"\n" +"View, install and remove available or installed packages." +msgstr "" +"\n" +"Εμφάνιση, εγκατάσταση και διαγραφή διαθέσιμων ή εγκατεστημένων προσθέτων" + +msgid " (PiP)" +msgstr " (PiP)" + +msgid " (Radio)" +msgstr " (Ραδιόφωνο)" + +msgid " (TV)" +msgstr " (Τηλεόραση)" + +msgid " (disabled)" +msgstr " (απενεργοποιημένο)" + +msgid " (higher than any auto)" +msgstr " (υψηλότερα όλων των αυτόματων)" + +msgid " (higher than rotor any auto)" +msgstr " (υψηλότερα όλων των αυτόματων μοτέρ)" + +msgid " (lower than any auto)" +msgstr " (χαμηλότερα όλων των αυτόματων)" + +msgid " extensions." +msgstr " επεκτάσεις." + +msgid " ms" +msgstr " ms" + +msgid " packages selected." +msgstr " επιλεγμένα πακέτα." + +msgid " updates available." +msgstr " διαθέσιμες ενημερώσεις." + +#. TRANSLATORS: short time representation hour:minute +#, python-format +msgid "%2d:%02d" +msgstr "%2d:%02d" + +#. TRANSLATORS: full time representation hour:minute:seconds +#, python-format +msgid "%2d:%02d:%02d" +msgstr "%2d:%02d:%02d" + +msgid "%A %d %B" +msgstr "%A %d %B" + +#. TRANSLATORS: long date representations dayname daynum monthname in strftime() format! See 'man strftime' +msgid "%A %e %B" +msgstr "%A %e %B" + +#. TRANSLATORS: full date representation dayname daynum monthname year in strftime() format! See 'man strftime' +msgid "%A %e %B %Y" +msgstr "%A %e %B %Y" + +msgid "%H:%M" +msgstr "%H:%M" + +#. TRANSLATORS: short date representation short dayname daynum short monthname in strftime() format! See 'man strftime' +msgid "%a %e/%m" +msgstr "%a %e/%m" + +#. TRANSLATORS: long date representation short dayname daynum short monthname hour:minute in strftime() format! See 'man strftime' +msgid "%a %e/%m %-H:%M" +msgstr "%a %e/%m %-H:%M" + +#. TRANSLATORS: Intermediate scanning result, '%d' channel(s) have been found so far +#, python-format +msgid "%d channel found" +msgid_plural "%d channels found" +msgstr[0] "βρέθηκε %d κανάλι" +msgstr[1] "βρέθηκαν %d κανάλια" + +#, python-format +msgid "%d file" +msgid_plural "%d files" +msgstr[0] "%d αρχείο" +msgstr[1] "%d αρχεία" + +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d ώρα" +msgstr[1] "%d ώρες" + +#, python-format +msgid "%d job is running in the background!" +msgid_plural "%d jobs are running in the background!" +msgstr[0] "%d εργασία στο παρασκήνιο!" +msgstr[1] "%d εργασίες στο παρασκήνιο!" + +#, python-format +msgid "%d min" +msgstr "%d λεπτά" + +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d λεπτό" +msgstr[1] "%d λεπτά" + +#, python-format +msgid "%d minutes" +msgstr "%d λεπτά" + +#, python-format +msgid "%d pixel wide" +msgid_plural "%d pixels wide" +msgstr[0] "%d πλάτος σε πίξελ" +msgstr[1] "%d πλάτος σε πίξελ" + +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "%d δευτερόλεπτο" +msgstr[1] "%d δευτερόλεπτα" + +#, python-format +msgid "%d subdirectory" +msgid_plural "%d subdirectories" +msgstr[0] "%d υποφάκελος" +msgstr[1] "%d υποφάκελοι" + +#, python-format +msgid "%d wireless network found!" +msgid_plural "%d wireless networks found!" +msgstr[0] "Βρέθηκε %d ασύρματο δίκτυο!" +msgstr[1] "Βρέθηκαν %d ασύρματα δίκτυα!" + +msgid "%d-%b-%Y %-H:%M" +msgstr "%a %e/%m %-H:%M" + +msgid "%d-%m" +msgstr "%d-%m" + +msgid "%d.%B %Y" +msgstr "%d.%B %Y" + +#. TRANSLATORS: VFD hour:minute daynum short monthname in strftime() format! See 'man strftime' +msgid "%k:%M %e/%m" +msgstr "%k:%M %e/%m" + +#, python-format +msgid "%s %s free disk space" +msgstr "%s %s ελεύθερος χώρος δίσκου" + +#, python-format +msgid "%s (%s)\n" +msgstr "%s (%s)\n" + +#. TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. +#, python-format +msgid "%s is no longer used. Should it be deleted?" +msgstr "Το %s δεν χρησιμοποιείται πλέον. Να γίνει διαγραφή του;" + +#, python-format +msgid "%s updated package available" +msgid_plural "%s updated packages available" +msgstr[0] "%s διαθέσιμη ενημέρωση" +msgstr[1] "%s διαθέσιμες ενημερώσεις" + +#, python-format +msgid "%s%d min" +msgstr "%s%d min" + +#, python-format +msgid "%s/%s: %s" +msgstr "%s/%s: %s" + +msgid "(ZAP)" +msgstr "(ΖΑΠ)" + +msgid "(empty)" +msgstr "(κενό)" + +msgid "(show optional DVD audio menu)" +msgstr "(εμφάνιση προαιρετικού μενού ήχου DVD)" + +msgid "* Only available if more than one interface is active." +msgstr "* Διαθέσιμο μόνο εάν είναι ενεργές περισσότερες από μία διεπαφές." + +msgid "/s" +msgstr "/s" + +msgid "0" +msgstr "0" + +msgid "1" +msgstr "1" + +msgid "1.0" +msgstr "1.0" + +msgid "1.1" +msgstr "1.1" + +msgid "1.2" +msgstr "1.2" + +msgid "12V output" +msgstr "έξοδος 12V" + +msgid "13 V" +msgstr "13 V" + +msgid "16:10" +msgstr "16:10" + +msgid "16:10 Letterbox" +msgstr "16:10 Μπάρες πάνω - κάτω" + +msgid "16:10 PanScan" +msgstr "16:10 Πανοραμική&Σάρωση" + +msgid "16:9" +msgstr "16:9" + +msgid "16:9 Letterbox" +msgstr "16:10 Μπάρες πάνω - κάτω" + +msgid "16:9 always" +msgstr "πάντα 16:9" + +msgid "18 V" +msgstr "18 V" + +msgid "2" +msgstr "2" + +msgid "23.976" +msgstr "23.976" + +msgid "24" +msgstr "24" + +msgid "25" +msgstr "25" + +msgid "29.97" +msgstr "29.97" + +msgid "3" +msgstr "3" + +msgid "30" +msgstr "30" + +msgid "3d mode" +msgstr "λειτουργία 3d" + +msgid "4" +msgstr "4" + +msgid "4:3" +msgstr "4:3" + +msgid "4:3 Letterbox" +msgstr "4:3 Μπάρες πάνω - κάτω" + +msgid "4:3 PanScan" +msgstr "4:3 Πανοραμική&Σάρωση" + +msgid "5" +msgstr "5" + +msgid "6" +msgstr "6" + +msgid "7" +msgstr "7" + +msgid "8" +msgstr "8" + +msgid "9" +msgstr "9" + +#, python-format +msgid ": %s" +msgstr ": %s" + +msgid "<Current movielist location>" +msgstr "<Τρέχουσα τοποθεσία καταλόγου ταινιών>" + +msgid "<Default movie location>" +msgstr "<Προεπιλεγμένη τοποθεσία ταινιών>" + +msgid "<Last timer location>" +msgstr "<Τελευταία τοποθεσία χρονοδιακόπτη>" + +msgid "<unknown>" +msgstr "<άγνωστο>" + +msgid "??" +msgstr ";;" + +msgid "A" +msgstr "A" + +#, python-format +msgid "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" +msgstr "" +"Ένα αρχείο ρυθμίσεων (%s) έχει τροποποιηθεί μετά την εγκατάστασή του.\n" +"Θέλετε να διατηρήσετε τη δική σας έκδοση;" + +#, python-format +msgid "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" +msgstr "" +"Ένα αρχείο ρυθμίσεων (%s) έχει τροποποιηθεί μετά την εγκατάσταση.\n" +"Θέλετε να διατηρήσετε τη δική σας έκδοση;" + +msgid "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "Ένας ολοκληρωμένος χρονοδιακόπτης θέλει να θέσει το δέκτη σε αναμονή. Να γίνει τώρα;" + +msgid "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "Ένας ολοκληρωμένος χρονοδιακόπτης θέλει να κλείσει το δέκτη. Να γίνει τώρα;" + +msgid "A graphical EPG for all services of an specific bouquet" +msgstr "Γραφικό EPG για όλα τα κανάλια σε συγκεκριμένο μπουκέτο" + +#, python-format +msgid "" +"A record has been started:\n" +"%s" +msgstr "" +"Μια εγγραφή έχει ξεκινήσει:\n" +"%s" + +msgid "" +"A recording is currently running.\n" +"What do you want to do?" +msgstr "" +"Μια εγγραφή είναι σε εξέλιξη.\n" +"Τι θέλετε να γίνει;" + +msgid "A recording is currently running. Please stop the recording before trying to configure the positioner." +msgstr "Μια εγγραφή είναι σε εξέλιξη. Για να ρυθμίσετε το μοτέρ πρέπει να σταματήσετε την εγγραφή." + +msgid "A recording is currently running. Please stop the recording before trying to scan." +msgstr "Μια εγγραφή είναι σε εξέλιξη. Πρέπει να σταματήσετε την εγγραφή πριν την ανίχνευση." + +msgid "A recording is currently running. Please stop the recording before trying to start the satfinder." +msgstr "Μια εγγραφή είναι σε εξέλιξη. Για να χρησιμοποιήσετε το satfinder πρέπει να σταματήσετε την εγγραφή." + +#, python-format +msgid "A required tool (%s) was not found." +msgstr "Ένα απαιτούμενο εργαλείο (%s) δεν βρέθηκε." + +msgid "A search for available updates is currently in progress." +msgstr "Μία αναζήτηση για διαθέσιμες ενημερώσεις είναι σε εξέλιξη." + +msgid "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" +msgstr "" +"Βρέθηκε ένα δεύτερο ρυθμισμένο δίκτυο.\n" +"\n" +"Θέλετε να απενεργοποιήσετε το δεύτερο προσαρμογέα δικτύου;" + +msgid "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "Ένας χρονοδιακόπτης απενεργοποίησης θέλει να θέσει το δέκτη σας σε αναμονή. Να γίνει τώρα;" + +msgid "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "Ένας χρονοδιακόπτης απενεργοποίησης θέλει να κλείσει το δέκτη σας. Τερματισμός τώρα;" + +msgid "A small overview of the available icon states and actions." +msgstr "Επισκόπηση των διαθέσιμων εικονιδίων κατάστασης και ενεργειών." + +msgid "" +"A timer failed to record!\n" +"Disable TV and try again?\n" +msgstr "" +"Ένας χρονοδιακόπτης απέτυχε να ξεκινήσει.\n" +"Να απενεργοποιηθεί η TV και να ξαναπροσπαθήσει;\n" + +msgid "A/V settings" +msgstr "Ρυθμίσεις εικόνας/ήχου" + +msgid "AC3/DTS downmix" +msgstr "Μίξη AC3/DTS" + +msgid "Abort" +msgstr "Ακύρωση" + +msgid "About" +msgstr "Περί" + +msgid "About..." +msgstr "Περί..." + +msgid "Accesspoint:" +msgstr "Σημείο πρόσβασης:" + +msgid "Action on long powerbutton press" +msgstr "Ενέργεια σε παρατεταμένη πίεση του πλήκτρου power" + +msgid "Action on short powerbutton press" +msgstr "Ενέργεια σε στιγμιαία πίεση του πλήκτρου power" + +msgid "Activate Picture in Picture" +msgstr "Ενεργοποίηση Picture in Picture" + +msgid "Activate current configuration" +msgstr "Ενεργοποίηση τρέχουσας ρύθμισης" + +msgid "Activate network settings" +msgstr "Ενεργοποίηση ρυθμίσεων δικτύου" + +msgid "Activate the configured network settings." +msgstr "Ενεργοποίηση των παραμετροποιημένων ρυθμίσεων δικτύου" + +msgid "Adapter settings" +msgstr "Ρυθμίσεις προσαρμογέα δικτύου" + +msgid "Add" +msgstr "Προσθήκη" + +msgid "Add Bookmark" +msgstr "Προσθήκη Σελιδοδείκτη" + +msgid "Add a mark" +msgstr "Προσθήκη σημαδιού" + +msgid "Add a nameserver entry" +msgstr "Προσθήκη nameserver" + +msgid "Add a new title" +msgstr "Προσθήκη νέου τίτλου" + +msgid "Add bookmark" +msgstr "Προσθήκη σελιδοδείκτη" + +msgid "Add directory to playlist" +msgstr "Προσθήκη φακέλου στη λίστα αναπαραγωγής" + +msgid "Add file to playlist" +msgstr "Προσθήκη αρχείου στη λίστα αναπαραγωγής" + +msgid "Add files to playlist" +msgstr "Προσθήκη αρχείων στη λίστα αναπαραγωγής" + +msgid "Add more details to the crash log" +msgstr "Προσθήκη περισσότερων λεπτομερειών στο καταγραφολόγιο" + +msgid "Add provider" +msgstr "Προσθήκη παρόχου" + +msgid "Add recording (enter recording duration)" +msgstr "Επιλογή διάρκειας εγγραφής" + +msgid "Add recording (enter recording endtime)" +msgstr "Αλλαγή χρόνου τερματισμού εγγραφής" + +msgid "Add recording (indefinitely)" +msgstr "Εγγραφή χωρίς όριο χρόνου" + +msgid "Add recording (stop after current event)" +msgstr "Εγγραφή ως το τέλος του τρέχοντος προγράμματος" + +msgid "Add service" +msgstr "Προσθήκη υπηρεσίας" + +msgid "Add timer" +msgstr "Προσθήκη χρονοδιακόπτη" + +msgid "Add title" +msgstr "Προσθήκη τίτλου" + +msgid "Add to bouquet" +msgstr "Προσθήκη σε μπουκέτο" + +msgid "Add to favourites" +msgstr "Προσθήκη στα αγαπημένα" + +msgid "Add/remove change timer for current event" +msgstr "Προσθήκη/αφαίρεση αλλαγής χρονοδιακόπτη για το τρέχον πρόγραμμα" + +msgid "Adjust 3D settings" +msgstr "Αλλαγή ρυθμίσεων 3D" + +msgid "Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens." +msgstr "Ρυθμίστε την ένταση των χρωμάτων έτσι ώστε να διαφέρουν οι χρωματισμοί με τη μέγιστη φωτεινότητα. Όταν τελειώσετε, πιέστε ΟΚ για να κλείσετε τη μικρορύθμιση ή πατήστε ένα νούμερο για να δείτε και άλλες οθόνες δοκιμών." + +msgid "Advanced" +msgstr "Προχωρημένο" + +msgid "Advanced options" +msgstr "Προχωρημένες επιλογές" + +msgid "Advanced restore" +msgstr "Προχωρημένη επαναφορά" + +msgid "Advanced software" +msgstr "Προχωρημένο λογισμικό" + +msgid "Advanced software plugin" +msgstr "Πρόσθετο προχωρημένου λογισμικού" + +msgid "Advanced video enhancement setup" +msgstr "Προχωρημένη εγκατάσταση βελτίωσης εικόνας" + +msgid "Advanced video setup" +msgstr "Προχωρημένες ρυθμίσεις εικόνας" + +msgid "After event" +msgstr "Μετά το πρόγραμμα" + +msgid "Album" +msgstr "Άλμπουμ" + +msgid "Alignment of events" +msgstr "Στοίχιση προγραμμάτων" + +msgid "Alignment of service names" +msgstr "Στοίχιση ονομάτων υπηρεσιών" + +msgid "All" +msgstr "Όλα" + +msgid "All ages" +msgstr "Όλες οι ηλικίες" + +msgid "All satellites 1 (USALS)" +msgstr "Όλοι οι δορυφόροι 1 (USALS)" + +msgid "All satellites 2 (USALS)" +msgstr "Όλοι οι δορυφόροι 2 (USALS)" + +msgid "All satellites 3 (USALS)" +msgstr "Όλοι οι δορυφόροι 3 (USALS)" + +msgid "All satellites 4 (USALS)" +msgstr "Όλοι οι δορυφόροι 4 (USALS)" + +msgid "Allocate" +msgstr "Κατανομή" + +msgid "Allocate unused memory index" +msgstr "Κατανομή μη χρησιμοποιημένων θέσεων μνήμης" + +msgid "Allow quit movieplayer with exit" +msgstr "Να επιτρέπεται η έξοδος από την αναπαραγωγή με το exit" + +msgid "Allow subtitle language to equal audio language" +msgstr "Να επιτρέπεται η εξίσωση υποτίτλων και γλώσσας ήχου" + +msgid "Allow subtitles for hearing impaired" +msgstr "Να επιτρέπονται υπότιτλοι για άτομα με προβλήματα ακοής" + +msgid "Alpha" +msgstr "Alpha" + +msgid "Alternative" +msgstr "Προσθήκη εναλλακτικών" + +msgid "Alternative numbering mode" +msgstr "Εναλλακτική λειτουργία ραδιοφώνου" + +msgid "Alternative services tuner priority" +msgstr "Προτεραιότητα tuner εναλλακτικών υπηρεσιών" + +msgid "Always ask" +msgstr "Πάντα ερώτηση" + +msgid "Always hide infobar" +msgstr "Πάντα απόκρυψη της μπάρας πληροφοριών" + +msgid "An empty filename is illegal." +msgstr "Η κενή ονομασία είναι άκυρη." + +msgid "An error occurred while downloading the packetlist. Please try again." +msgstr "Υπήρξε ένα σφάλμα κατά τη λήψη της λίστας πακέτων. Παρακαλώ δοκιμάστε ξανά." + +msgid "An unknown error occurred!" +msgstr "Προέκυψε άγνωστο σφάλμα!" + +msgid "And will put your receiver in standby over " +msgstr "Και θα θέσει το δέκτη σας σε αναμονή μετά από " + +msgid "Any activity" +msgstr "Οποιαδήποτε δραστηριότητα" + +msgid "Arabic" +msgstr "Αραβικά" + +msgid "Are you sure to remove this entry?" +msgstr "Σίγουρα θέλετε να αφαιρεθεί αυτό το στοιχείο;" + +msgid "" +"Are you sure you want to activate this network configuration?\n" +"\n" +msgstr "Σίγουρα θέλετε να ενεργοποιηθεί αυτή η ρύθμιση δικτύου;\n" + +msgid "" +"Are you sure you want to delete\n" +"the following backup:\n" +msgstr "" +"Σίγουρα θέλετε να διαγράψετε\n" +"το παρακάτω αντίγραφο ασφαλείας:\n" + +msgid "Are you sure you want to exit this wizard?" +msgstr "Σίγουρα να γίνει έξοδος από αυτό τον οδηγό;" + +msgid "" +"Are you sure you want to restart your network interfaces?\n" +"\n" +msgstr "Είστε σίγουρος ότι θέλετε να επανεκκινήσετε τις διεπαφές δικτύου;\n" + +#, python-format +msgid "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Σίγουρα θέλετε να επαναφέρετε το αντίγραφο ασφαλείας:\n" +"%s\n" +"Ο δέκτης θα επανεκκινηθεί μετά την επαναφορά!" + +msgid "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Σίγουρα θέλετε να επαναφέρετε το αντίγραφο ασφαλείας;\n" +"Ο δέκτης θα επανεκκινηθεί μετά την επαναφορά!" + +msgid "Artist" +msgstr "Καλλιτέχνης" + +msgid "Arts/Culture" +msgstr "Τέχνες/Πολιτισμός" + +msgid "Ask user" +msgstr "Ερώτηση χρήστη" + +msgid "Aspect ratio" +msgstr "Λόγος πλευρών" + +msgid "Assigned CAIds:" +msgstr "Ορισμένα CAIds:" + +msgid "Assigned services/provider:" +msgstr "Ορισμένες υπηρεσίες/πάροχοι:" + +msgid "At beginning" +msgstr "Στην αρχή" + +msgid "At end" +msgstr "Στο τέλος" + +msgid "Audio" +msgstr "Ήχος" + +msgid "Audio PID" +msgstr "PID ήχου" + +msgid "Audio language selection 1" +msgstr "Επιλογή γλώσσας ήχου 1" + +msgid "Audio language selection 2" +msgstr "Επιλογή γλώσσας ήχου 2" + +msgid "Audio language selection 3" +msgstr "Επιλογή γλώσσας ήχου 3" + +msgid "Audio language selection 4" +msgstr "Επιλογή γλώσσας ήχου 4" + +msgid "Audio options..." +msgstr "Επιλογές ήχου..." + +#, python-format +msgid "Audio track (%s) format" +msgstr "Φορμά φέρουσας ήχου (%s)" + +#, python-format +msgid "Audio track (%s) language" +msgstr "Γλώσσα ήχου (%s)" + +msgid "Author: " +msgstr "Δημιουργός: " + +msgid "Authoring mode" +msgstr "Λειτουργία δημιουργίας ταινίας" + +#. TRANSLATORS: (aspect ratio policy: always try to display as fullscreen, when there is no content (black bars) on left/right, even if this breaks the aspect. +msgid "Auto" +msgstr "Αυτόματο" + +msgid "Auto chapter split every ? minutes (0=never)" +msgstr "Αυτόματη δημιουργία κεφαλαίου κάθε ; λεπτα (0=ποτέ)" + +msgid "Auto flesh" +msgstr "Αυτόματο χρώμα δέρματος" + +msgid "Auto focus" +msgstr "Αυτόματη εστίαση" + +msgid "Auto focus commencing ..." +msgstr "Έναρξη αυτόματης εστίασης..." + +msgid "Auto language selection" +msgstr "Αυτόματη επιλογή γλώσσας" + +msgid "Auto scart switching" +msgstr "Αυτόματη αλλαγή scart" + +msgid "Automatic" +msgstr "Αυτόματο" + +msgid "Automatic scan" +msgstr "Αυτόματη ανίχνευση" + +msgid "Automatically start timeshift after" +msgstr "Αυτόματη εκκίνηση της χρονομετατόπισης μετά από" + +msgid "Automatically turn on external subtitles" +msgstr "Αυτόματη ενεργοποίηση των εξωτερικών υποτίτλων" + +msgid "Available format variables" +msgstr "Διαθέσιμα εναλλακτικά φορμά" + +msgid "B" +msgstr "B" + +msgid "BER" +msgstr "BER" + +msgid "BER:" +msgstr "BER:" + +msgid "Back" +msgstr "Πίσω" + +msgid "Background" +msgstr "Φόντο" + +msgid "Background color" +msgstr "Χρώμα φόντου" + +msgid "Background delete option" +msgstr "Επιλογή διαγραφής στο παρασκήνιο" + +msgid "Background delete speed" +msgstr "Ταχύτητα διαγραφής στο παρασκήνιο" + +msgid "Backup completed." +msgstr "Η εφεδρεία ολοκληρώθηκε" + +msgid "Backup failed." +msgstr "Η εφεδρεία απέτυχε." + +msgid "Backup is running..." +msgstr "Εφεδρεία σε εκτέλεση..." + +msgid "Backup system settings" +msgstr "Αντίγραφο ασφαλείας ρυθμίσεων" + +msgid "Band" +msgstr "Μπάντα" + +msgid "Bandwidth" +msgstr "Εύρος μπάντας" + +msgid "Basque" +msgstr "Βασκικά" + +msgid "Begin time" +msgstr "Ώρα έναρξης" + +msgid "Behavior of 'pause and ok' when paused" +msgstr "" + +msgid "Behavior of 0 key in PiP-mode" +msgstr "Συμπεριφορά του πλήκτρου 0 στη λειτουργία PiP" + +msgid "Behavior when a movie is started" +msgstr "Συμπεριφορά όταν μια ταινία παίζει" + +msgid "Behavior when a movie is stopped" +msgstr "Συμπεριφορά όταν μια ταινία έχει σταματήσει" + +msgid "Behavior when a movie reaches the end" +msgstr "Συμπεριφορά όταν μια ταινία έχει φτάσει στο τέλος" + +msgid "Big PiP" +msgstr "Μεγάλο PiP" + +msgid "Bitrate:" +msgstr "Bitrate:" + +msgid "Black screen" +msgstr "Μαύρη οθόνη" + +msgid "Black screen till locked" +msgstr "Μαύρη οθόνη ως το κλείδωμα" + +msgid "Block noise reduction" +msgstr "Φραγή μείωσης θορύβου" + +msgid "Blue boost" +msgstr "Ενίσχυση του μπλε" + +msgid "Bookmarks" +msgstr "Σελιδοδείκτες" + +msgid "Brightness" +msgstr "Φωτεινότητα" + +msgid "Bulgarian" +msgstr "Βουλγαρικά" + +msgid "Burn DVD" +msgstr "Εγγραφή DVD" + +#, python-format +msgid "Burn audio track (%s)" +msgstr "Εγγραφή φέρουσας ήχου (%s)" + +msgid "Burn existing image to DVD" +msgstr "Εγγραφή υπάρχουσας εικόνας σε DVD" + +msgid "Burn to DVD" +msgstr "Εγγραφή σε DVD" + +msgid "Bus: " +msgstr "Bus: " + +msgid "By default, SNR will be shown in dB (when supported by the tuner). This setting forces SNR to be shown as a percentage instead." +msgstr "Από προεπιλογή, το SNR θα εμφανίζεται σε dB (αν υποστηρίζεται από το tuner). Αυτή η ρύθμιση αναγκάζει το SNR να εμφανίζεται ως ποσοστό." + +msgid "C" +msgstr "C" + +msgid "C-Band" +msgstr "Μπάντα C" + +msgid "CH" +msgstr "Κ. " + +msgid "CI assignment" +msgstr "Ορισμός CI" + +msgid "CVBS" +msgstr "CVBS" + +msgid "Cable" +msgstr "Καλωδιακό" + +msgid "Cable Scan" +msgstr "Καλωδιακή Ανίχνευση" + +msgid "Cache thumbnails" +msgstr "Αποθήκευση μικρογραφιών" + +msgid "Calculate" +msgstr "Υπολογισμός" + +msgid "Calculate all positions" +msgstr "Υπολογισμός όλων των θέσεων" + +msgid "Calculation complete" +msgstr "Ο υπολογισμός ολοκληρώθηκε" + +msgid "Calibrate" +msgstr "Βαθμονόμηση" + +msgid "Can be used for different fps between external subtitles and video." +msgstr "Μπορεί να χρησιμοποιηθεί όταν οι υπότιτλοι έχουν διαφορετικό fps από το βίντεο." + +msgid "Cancel" +msgstr "Ακύρωση" + +msgid "Cannot determine" +msgstr "Αδυναμία προσδιορισμού" + +msgid "Cannot find any signal ..., aborting !" +msgstr "Αδυναμία εύρεσης σήματος ..., ματαίωση !" + +msgid "Cannot move files on a different disk or system to the trash can" +msgstr "Αρχεία από άλλο δίσκο ή σύστημα δε μπορούν να μεταφερθούν στον κάδο" + +msgid "Cannot move to trash can" +msgstr "Αδυναμία μεταφοράς στον κάδο αχρήστων" + +msgid "Capacity: " +msgstr "Χωρητικότητα: " + +msgid "Card" +msgstr "Κάρτα" + +msgid "Cascade PiP" +msgstr "Διαδοχικό PiP" + +msgid "Center DVB subtitles" +msgstr "Στοίχιση υποτίτλων DVB στο κέντρο" + +msgid "Center time-labels and remove date" +msgstr "Κεντράρισμα ετικετών χρόνου και αφαίρεση ημερομηνίας" + +msgid "Change bouquets in quickzap" +msgstr "Αλλαγή μπουκέτου στο γρήγορο ζάπινγκ" + +msgid "Change pin code" +msgstr "Αλλαγή κωδικού pin:" + +msgid "Change recording (duration)" +msgstr "Αλλαγή διάρκειας εγγραφής" + +msgid "Change recording (endtime)" +msgstr "Αλλαγή χρόνου τερματισμού εγγραφής" + +msgid "Change repeat and delay settings?" +msgstr "Αλλαγή ρυθμίσεων επανάληψης και καθυστέρησης;" + +msgid "Change service PIN" +msgstr "Αλλαγή PIN υπηρεσίας" + +msgid "Change service PINs" +msgstr "Αλλαγή PIN υπηρεσίας" + +msgid "Change setup PIN" +msgstr "Αλλαγή pin ρυθμίσεων" + +msgid "Change step size" +msgstr "Αλλαγή μεγέθους βήματος" + +msgid "Change timer" +msgstr "Αλλαγή χρονοδιακόπτη" + +msgid "Changelog" +msgstr "Καταγραφολόγιο" + +msgid "Channel" +msgstr "Κανάλι" + +msgid "Channel list type" +msgstr "Τύπος λίστας καναλιών" + +msgid "Channel not in services list" +msgstr "Το κανάλι δεν υπάρχει στη λίστα υπηρεσιών" + +msgid "Channel selection" +msgstr "Επιλογή Καναλιού" + +msgid "Channel:" +msgstr "Κανάλι:" + +msgid "Channellist menu" +msgstr "Μενού λίστας καναλιών" + +msgid "Chap." +msgstr "Κεφ." + +msgid "Chapter" +msgstr "Κεφάλαιο" + +msgid "Chapter:" +msgstr "Κεφάλαιο:" + +msgid "Check" +msgstr "Έλεγχος" + +msgid "Check the internet connection" +msgstr "Ελέγξτε τη σύνδεση στο διαδύκτιο" + +msgid "Check the internet connection again" +msgstr "Ελέγξτε τη σύνδεση στο διαδίκτυο εκ νέου" + +msgid "Checking filesystem..." +msgstr "Έλεγχος συστήματος αρχείων ..." + +msgid "Checking the internet connection" +msgstr "Έλεγχος της σύνδεσης στο διαδίκτυο" + +#, python-format +msgid "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" +msgstr "" +"Έλεγχος tuner %d \n" +"Πόρτα DiSEqC %s για το %s" + +msgid "Children/Youth" +msgstr "Παιδικά/Εφηβικά" + +msgid "Choose which tuner to configure." +msgstr "Επιλέξτε ποιο tuner θα ρυθμίσετε." + +msgid "Circular left" +msgstr "Αριστερόστροφη" + +msgid "Circular right" +msgstr "Δεξιόστροφη" + +msgid "Cleanup" +msgstr "Εκκαθάριση" + +msgid "Clear" +msgstr "Εκκαθάριση" + +msgid "Clear before scan" +msgstr "Εκκαθάριση πριν την ανίχνευση" + +msgid "Clear fixed" +msgstr "Εκκαθάριση σταθερών" + +msgid "Clear log" +msgstr "Εκκαθάριση καταγραφολογίου" + +msgid "Clear playlist" +msgstr "Εκκαθάριση λίστας αναπαραγωγής" + +msgid "Close" +msgstr "Κλείσιμο" + +msgid "Close PiP on exit" +msgstr "Κλείσιμο του PiP κατά την έξοδο" + +msgid "Close title selection" +msgstr "Κλείσιμο επιλογής τίτλου" + +msgid "Code rate HP" +msgstr "Κωδικορυθμός HP" + +msgid "Code rate LP" +msgstr "Κωδικορυθμός LP" + +msgid "Coderate HP" +msgstr "Κωδικορυθμός HP" + +msgid "Coderate LP" +msgstr "Κωδικορυθμός LP" + +msgid "Collection name" +msgstr "Όνομα συλλογής" + +msgid "Collection settings" +msgstr "Επιλογές συλλογής" + +msgid "Color format" +msgstr "Φορμά χρώματος" + +msgid "Command execution..." +msgstr "Εκτέλεση εντολής..." + +msgid "Command order" +msgstr "Σειρά εντολών" + +msgid "Common Interface" +msgstr "Κοινή Διεπαφή" + +msgid "Common Interface assignment" +msgstr "Ορισμός Κοινής Διεπαφής" + +msgid "Communication" +msgstr "Επικοινωνία" + +msgid "Compact flash" +msgstr "Compact Flash" + +msgid "Complete" +msgstr "Πλήρης" + +msgid "Complex (allows mixing audio tracks and aspects)" +msgstr "Σύνθετη (επιτρέπει τη μίξη καναλιών ήχου και λόγου πλευρών)" + +msgid "Composition of the recording filenames" +msgstr "Σύνθεση ονομάτων των εγγραφών" + +msgid "Configuration mode" +msgstr "Τύπος ρύθμισης" + +#, python-format +msgid "Configuration mode: %s" +msgstr "Τύπος ρύθμισης: %s" + +msgid "Configuration..." +msgstr "Παραμετροποίηση..." + +msgid "Configure an additional delay to improve external subtitle synchronisation." +msgstr "Ρύθμιση πρόσθετης καθυστέρησης για βελτίωση του συγχρονισμού των εξωτερικών υποτίτλων." + +msgid "Configure an additional delay to improve subtitle synchronisation." +msgstr "Ρύθμιση πρόσθετης καθυστέρησης για βελτίωση του συγχρονισμού των υποτίτλων." + +msgid "Configure for how long the infobar will remain visible after activation." +msgstr "Ρυθμίστε για πόσο χρόνο η μπάρα πληροφοριών θα παραμένει ορατή μετά την ενεργοποίηση." + +msgid "Configure for how many minutes finished events should remain visible in the EPG. Useful when you need information about an event which has just finished, or has been delayed." +msgstr "Ρυθμίστε για πόσα λεπτά τα προγράμματα που έχουν ολοκληρωθεί θα παραμένουν ορατά στο EPG. Χρήσιμο όταν χρειάζεστε πληροφορίες για ένα πρόγραμμα που τελείωσε ή καθυστέρησε." + +msgid "Configure how recording filenames are constructed." +msgstr "Ρύθμιση του τρόπου σύνθεσης των ονομάτων των εγγραφών." + +msgid "Configure how the fan should operate" +msgstr "Ρύθμιση του τρόπου λειτουργίας του ανεμιστήρα" + +msgid "Configure if and how crypto icons will be shown in the channel selection list." +msgstr "Ρυθμίστε εάν και πώς θα εμφανίζονται τα κρυπτοεικονίδια στη λίστα επιλογής καναλιών." + +msgid "Configure if and how long the latest service in the PiP will be remembered." +msgstr "" + +msgid "Configure if and how service type icons will be shown in the channel selection list." +msgstr "Ρυθμίστε εάν και πώς θα εμφανίζονται τα εικονίδια τύπου υπηρεσίας στη λίστα επιλογής καναλιών." + +msgid "Configure if and how wide columns will be shown in the channel selection list." +msgstr "Ρυθμίστε εάν και πόσο πλατιές θα εμφανίζονται οι στήλες στη λίστα επιλογής καναλιών." + +msgid "Configure if service picons will be shown in the channel selection list." +msgstr "Ρυθμίστε εάν τα εικονίδια υπηρεσίας θα εμφανίζονται στη λίστα επιλογής καναλιων." + +msgid "Configure interface" +msgstr "Ρύθμιση διεπαφής" + +msgid "Configure nameservers" +msgstr "Ρύθμιση nameservers" + +msgid "Configure on which devices the background delete option should be used." +msgstr "Ρυθμίστε σε ποιες συσκευές η δυνατότητα διαγραφής παρασκήνιου θα πρέπει να χρησιμοποιείται." + +msgid "Configure remote control type" +msgstr "Ρύθμιση τύπου τηλεχειριστηρίου" + +msgid "Configure the DiSEqC mode for this LNB." +msgstr "Ρύθμιση λειτουργίας DiSEqC για αυτό το LNB." + +msgid "Configure the IP address." +msgstr "Ρύθμιση της διεύθυνσης IP." + +msgid "Configure the aspect ratio of the screen." +msgstr "Ρύθμιση της αναλογίας διαστάσεων της οθόνης." + +msgid "Configure the behavior of the 'pause and ok' key when movie playback is already paused." +msgstr "" + +msgid "Configure the behavior when movie playback is manually stopped." +msgstr "Συμπεριφορά όταν μια ταινία έχει σταματήσει χειροκίνητα." + +msgid "Configure the behavior when movie playback is started." +msgstr "Συμπεριφορά όταν μια ταινία ξεκινήσει." + +msgid "Configure the behavior when reaching the end of a movie, during movie playback." +msgstr "Συμπεριφορά όταν μια ταινία φτάσει στο τέλος, κατά τη διάρκεια της αναπαραγωγής." + +msgid "Configure the border width of the subtitles. The dark border makes the subtitles easier to read on a light background." +msgstr "Ρύθμιση του πλάτους του περιγράμματος των υποτίτλων. Το σκοτεινό περίγραμμα κάνει τους υπότιτλους πιο ευανάγνωστους σε ένα ανοιχτόχρωμο φόντο." + +msgid "Configure the brightness level of the front panel display during standby." +msgstr "Ρύθμιση του επιπέδου φωτεινότητας στην οθόνη πρόσοψης κατά τη διάρκεια της αναμονής." + +msgid "Configure the brightness level of the front panel display." +msgstr "Ρύθμιση του επιπέδου φωτεινότητας στην οθόνη πρόσοψης." + +msgid "Configure the color of the external subtitles, alternative (normal in white, italic in yellow, bold in cyan, underscore in green), white or yellow." +msgstr "Ρύθμιση του χρώματος των εξωτερικών υποτίτλων, εναλλασσόμενο (κανονικά σε λευκό, πλάγια σε κίτρινο, έντονα σε γαλάζιο, υπογραμμισμένα σε πράσινο), λευκό ή κίτρινο." + +msgid "Configure the color of the teletext subtitles." +msgstr "Ρύθμιση χρώματος των υποτίτλων τηλεκειμένου." + +msgid "Configure the contrast level of the front panel display." +msgstr "Ρύθμιση επιπέδου αντίθεσης στην οθόνη πρόσοψης." + +msgid "Configure the cursor behaviour in the channel selection list. When opening the channel selection list you can keep on the current service or already select up/down and you are able to revert the B+/B- buttons." +msgstr "Ρύθμιση της συμπεριφοράς του κέρσορα στη λίστα καναλιών. Όταν ανοίγει η λίστα μπορείτε να κρατήσετε την τρέχουσα υπηρεσία ή να επιλέξετε ήδη τα πάνω/κάτω και θα μπορείτε έτσι να αντιμεταθέσετε τα πλήκτρα B+/B-" + +msgid "Configure the duration in hours the receiver should go to standby when the receiver is not controlled." +msgstr "Ρύθμιση της διάρκειας σε ώρες όπου ο δέκτης θα μεταβεί σε κατάσταση αναμονής όταν δεν ελέγχεται." + +msgid "Configure the duration in minutes for the screensaver." +msgstr "Ρύθμιση της διάρκειας της προστασίας οθόνης σε λεπτά." + +msgid "Configure the duration in minutes for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +msgstr "Ρυθμίστε τη διάρκεια σε λεπτά για το χρονοδιακόπτη ύπνου. Επιλέξτε αυτό το στοιχείο και πιέστε το ΟΚ ή το πράσινο για να ξεκινήσετε/σταματήσετε το χρονοδιακόπτη" + +msgid "Configure the duration when the receiver should go to shut down in case the receiver is in standby mode." +msgstr "Ρύθμιση της διάρκειας κατά την οποία θα κλείσει ο δέκτης σε περίπτωση που βρίσκεται σε αναμονή." + +msgid "Configure the first audio language (highest priority)." +msgstr "Ρύθμιση της πρώτης γλώσσας του ήχου (ύψιστη προτεραιότητα)." + +msgid "Configure the first subtitle language (highest priority)." +msgstr "Ρύθμιση της πρώτης γλώσσας των υποτίτλων (ύψιστη προτεραιότητα)." + +msgid "Configure the font size of the subtitles." +msgstr "Ρύθμιση του μεγέθους της γραμματοσειράς των υποτίτλων." + +msgid "Configure the fourth audio language." +msgstr "Ρύθμιση της τέταρτης γλώσσας ήχου." + +msgid "Configure the fourth subtitle language." +msgstr "Ρύθμιση της τέταρτης γλώσσας υποτίτλων." + +msgid "Configure the function of a long press on the power button." +msgstr "Ρύθμιση λειτουργίας παρατεταμένης πίεσης του πλήκτρου power." + +msgid "Configure the function of a short press on the power button." +msgstr "Ρύθμιση λειτουργίας στιγμιαίας πίεσης του πλήκτρου power." + +msgid "Configure the function of the '0' button do when PIP is active." +msgstr "Ρύθμιση λειτουργίας του πλήκτρου '0' όταν το PIP είναι ενεργό." + +msgid "Configure the gateway." +msgstr "Ρύθμιση πύλης δικτύου." + +msgid "Configure the general audio delay of Dolby Digital sound tracks." +msgstr "Ρύθμιση γενικής καθυστέρησης των καναλιών ήχου Dolby Digital." + +msgid "Configure the general audio delay of stereo sound tracks." +msgstr "Ρύθμιση γενικής καθυστέρησης των στερεοφωνικών καναλιών ήχου." + +msgid "Configure the hard disk drive to go to standby after the specified idle time." +msgstr "Ρυθμίστε το σκληρό δίσκο να μεταβαίνει σε αναμονή έπειτα από το καθορισμένο χρόνο αδράνειας." + +msgid "Configure the horizontal alignment of the subtitles." +msgstr "Ρύθμιση της οριζόντιας στοίχισης των υποτίτλων." + +msgid "Configure the initial fast forward speed. When you press the fast forward button, winding will start at this speed." +msgstr "Ρύθμιση της αρχικής ταχύτητας fast forward. Όταν πιέζετε το πλήκτρο fast forward, η προώθηση θα ξεκινά με αυτή την ταχύτητα." + +msgid "Configure the initial rewind speed. When you press the rewind button, winding will start at this speed." +msgstr "Ρύθμιση της αρχικής ταχύτητας rewind. Όταν πιέζετε το πλήκτρο rewind, η προώθηση προς τα πίσω θα ξεκινά με αυτή την ταχύτητα." + +msgid "Configure the latitude of your location." +msgstr "Ρύθμιση του γεωγραφικού πλάτους της τοποθεσίας σας." + +msgid "Configure the longitude of your location." +msgstr "Ρύθμιση του γεωγραφικού μήκους της θέσης σας." + +msgid "Configure the minimum amount of disk space to be available for recordings. When the amount of space drops below this value, deleted items will be removed from the trash can." +msgstr "Ρύθμιση της ελάχιστης διαθέσιμης χωρητικότητας του δίσκου για εγγραφές. Όταν η χωρητικότητα πέσει κάτω από αυτή την τιμή, τα διαγραμμένα αντικείμενα θα αφαιρούνται από τον κάδο αχρήστων." + +msgid "Configure the nameserver (DNS)." +msgstr "Ρύθμιση των nameservers (DNS)." + +msgid "Configure the netmask." +msgstr "Ρύθμιση μάσκας δικτύου." + +msgid "Configure the number of days after which items are automaticaly removed from the trash can." +msgstr "Ρύθμιση του αριθμού ημερών μετά τις οποίες τα αντικείμενα θα αφαιρούνται αυτόματα από τον κάδο αχρήστων." + +msgid "Configure the number of days old timers are kept before they are automatically removed from the timer list." +msgstr "Ρύθμιση του αριθμού ημερών μετά τις οποίες οι παλιοί χρονοδιακόπτες θα διατηρούνται πριν διαγραφούν από τη λίστα." + +msgid "Configure the offline decoding delay in milliseconds. The configured delay is observed at each control word parity change." +msgstr "Ρύθμιση της εκτός σύνδεσης αποκωδικοποίησης σε χιλιοστά του δευτερολέπτου. Η ρυθμισμένη καθυστέρηση παρατηρείται σε κάθε αλλαγή ισοτιμίας της λέξης ελέγχου." + +msgid "Configure the possible fast forward speeds." +msgstr "Ρύθμιση ταχυτήτων fast forward." + +msgid "Configure the possible rewind speeds." +msgstr "Ρύθμιση ταχυτήτων rewind." + +msgid "Configure the primary EPG language." +msgstr "Ρύθμισης της κύριας γλώσσας του EPG." + +msgid "Configure the refresh rate of the screen." +msgstr "Ρύθμιση του ρυθμού ανανέωσης της οθόνης." + +msgid "Configure the screen resolution in PC output mode." +msgstr "Ρύθμιση της ανάλυσης οθόνης σε λειτουργία εξόδου PC." + +msgid "Configure the second audio language." +msgstr "Ρύθμιση της δεύτερης γλώσσας ήχου." + +msgid "Configure the second subtitle language." +msgstr "Ρύθμιση της δεύτερης γλώσσας υποτίτλων." + +msgid "Configure the secondary EPG language." +msgstr "Ρύθμιση της δευτερεύουσας γλώσσας του EPG." + +msgid "Configure the sharpness of the video scaling." +msgstr "Ρύθμιση της οξύτητας κλιμάκωσης της εικόνας." + +msgid "Configure the skip time interval for the '1'/'3' buttons." +msgstr "Ρύθμιση του μεσοδιαστήματος υπερπήδησης για τα πλήκτρα '1'/'3'." + +msgid "Configure the skip time interval for the '4'/'6' buttons." +msgstr "Ρύθμιση του μεσοδιαστήματος υπερπήδησης για τα πλήκτρα '4'/'6'." + +msgid "Configure the skip time interval for the '7'/'9' buttons." +msgstr "Ρύθμιση του μεσοδιαστήματος υπερπήδησης για τα πλήκτρα '7'/'9'." + +msgid "Configure the slow motion speeds." +msgstr "Ρύθμιση ταχυτήτων αργής κίνησης." + +msgid "Configure the source of the frontend data as shown on the infobars. 'Settings' is as stored on the settings. 'Tuner' is as reported by the tuner." +msgstr "Ρυθμίστε την πηγή των δεδομένων από το tuner που θα εμφανίζονται στις μπάρες πληροφοριών. Οι \"Ρυθμίσεις\" είναι από τις αποθηκευμένες ρυθμίσεις. Το \"Tuner\" είναι ό,τι αναφέρει το tuner." + +msgid "Configure the speed of the background deletion process. Lower speed will consume less hard disk drive performance." +msgstr "Ρύθμιση της ταχύτητας της διαδικασίας διαγραφής στο παρασκήνιο. Χαμηλότερη ταχύτητα θα καταναλώνει λιγότερο τις επιδόσεις του σκληρού δίσκου." + +msgid "Configure the speed of the fan" +msgstr "Ρύθμιση της ταχύτητας του ανεμιστήρα" + +msgid "Configure the subtitle delay when timing information is not available." +msgstr "Ρύθμιση της καθυστέρησης των υποτίτλων, όταν η πληροφορία χρονισμού δεν είναι διαθέσιμη." + +msgid "Configure the third audio language." +msgstr "Ρύθμιση της τρίτης γλώσσας ήχου." + +msgid "Configure the third subtitle language." +msgstr "Ρύθμιση της τρίτης γλώσσας υποτίτλων." + +msgid "Configure the transparency of the OSD." +msgstr "Ρύθμιση της διαφάνειας του OSD." + +msgid "Configure the transparency of the black background of graphical DVB subtitles." +msgstr "Ρύθμιση της διαφάνειας του μαύρου φόντου των γραφικών υποτίτλων DVB." + +msgid "Configure the tuner mode." +msgstr "Ρύθμιση λειτουργίας του tuner." + +msgid "Configure the type of status indication icons shown in the movielist." +msgstr "Ρύθμιση των εικονιδίων ένδειξης κατάστασης στη λίστα ταινιών." + +msgid "Configure the vertical position of the subtitles, measured from the bottom of the screen." +msgstr "Ρύθμιση της κάθετης θέσης των υποτίτλων σε σχέση με το κάτω μέρος της οθόνης." + +msgid "Configure the video output mode (or resolution)." +msgstr "Ρύθμιση της λειτουργίας (ή ανάλυσης) της εξόδου βίντεο." + +msgid "Configure the way in which the receiver changes channels." +msgstr "Ρύθμιση του τρόπου αλλαγής των καναλιών από το δέκτη." + +msgid "Configure where completed timers show up in the timer list." +msgstr "Ρυθμίστε πού θα εμφανίζονται οι ολοκληρωμένοι χρονοδιακόπτες στη λίστα." + +msgid "Configure whether (and for how long) a second infobar will be shown when OK is pressed twice. The second infobar contains additional information about the current channel." +msgstr "Ρυθμίστε εάν (και για πόσο χρονικό διάστημα) η δεύτερη μπάρα πληροφοριών θα εμφανιστεί όταν πατηθεί το OK δύο φορές. Η δεύτερη μπάρα πληροφοριών περιέχει πρόσθετες πληροφορίες σχετικά με το τρέχον κανάλι." + +msgid "Configure whether multi channel sound tracks should be downmixed to stereo." +msgstr "Ρυθμίστε εάν οι πολυκάναλες φέρουσες ήχου πρέπει να υποβιβάζονται σε στέρεο." + +msgid "Configure whether or not an icon should be shown when your motorized dish is moving." +msgstr "Ρυθμίστε εάν θα εμφανίζεται ή όχι ένα εικονίδιο κατά την κίνηση του μοτέρ." + +msgid "Configure which access level to use for the configuration menu. Expert level gives access to all items." +msgstr "Ρύθμιση του επιπέδου πρόσβασης στο μενού παραμετροποίησης. Το προχωρημένο επίπεδο δίνει πρόσβαση σε όλες τις λειτουργίες." + +msgid "Configure which color format should be used on the SCART output." +msgstr "Ρυθμίστε ποιο φορμά χρώματος θα χρησιμοποιείται στην έξοδο SCART." + +msgid "Configure which tuner for recordings will be preferred, when more than one tuner is available." +msgstr "Ρυθμίστε ποιο tuner θα επιλέγεται για εγγραφές, όταν περισσότερα του ενός είναι διαθέσιμα." + +msgid "Configure which tuner type will be preferred, when the same service is available on different types of tuners." +msgstr "Ρυθμίστε ποιος τύπος tuner θα προτιμάται, όταν η ίδια υπηρεσία είναι διαθέσιμη σε διαφορετικούς τύπους tuner." + +msgid "Configure which tuner will be preferred, when more than one tuner is available. If set to 'auto' the system will give priority to the tuner having the lowest number of channels/satellites." +msgstr "Ρυθμίστε ποιο tuner θα προτιμάται, όταν περισσότερα του ενός είναι διαθέσιμα. Στο 'αυτόματο', το σύστημα θα δίνει προτεραιότητα στο tuner με τον μικρότερο αριθμό καναλιών/δορυφόρων." + +msgid "Configure your internal LAN" +msgstr "Ρυθμίσεις εσωτερικού δικτύου" + +msgid "Configure your network again" +msgstr "Ρύθμιση του δικτύου εκ νέου" + +msgid "Configure your network settings, and press OK to start the scan" +msgstr "Ρυθμίστε το δίκτυο και πιέστε ΟΚ για ξεκινήσει η ανίχνευση" + +msgid "Configure your wireless LAN again" +msgstr "Ρύθμιση του ασύρματου δικτύου εκ νέου" + +msgid "Configures which video output connector will be used." +msgstr "Ρυθμίζει ποιος τύπος σύνδεσης εξόδου εικόνας θα χρησιμοποιηθεί." + +msgid "Configuring" +msgstr "Παραμετροποίηση" + +msgid "Conflicting timer" +msgstr "Διένεξη χρονοδιακόπτη" + +msgid "Connect" +msgstr "Σύνδεση" + +msgid "Connect to a wireless network" +msgstr "Σύνδεση σε ασύρματο δίκτυο" + +msgid "Connected satellites" +msgstr "Συνδεδεμένοι δορυφόροι" + +msgid "Connected to" +msgstr "Συνδέθηκε με" + +msgid "Connected!" +msgstr "Συνδέθηκε!" + +msgid "Constellation" +msgstr "Αστερισμός" + +msgid "Content does not fit on DVD!" +msgstr "Το περιεχόμενο δεν χωράει σε DVD!" + +msgid "Continue" +msgstr "Συνέχεια" + +msgid "Continue in background" +msgstr "Συνέχεια στο παρασκήνιο" + +msgid "Continue playback" +msgstr "Συνέχιση αναπαραγωγής" + +msgid "Continue playing" +msgstr "Συνέχιση αναπαραγωγής" + +msgid "Continues play (loop)" +msgstr "Συνέχιση αναπαραγωγής (επανάληψη)" + +msgid "Contrast" +msgstr "Αντίθεση" + +msgid "Convert ext3 filesystem to ext4" +msgstr "Μετατροπή συστήματος αρχείων ext3 σε ext4" + +msgid "Convert ext3 to ext4" +msgstr "Μετατροπή ext3 σε ext4" + +msgid "Converting ext3 to ext4..." +msgstr "Μετατροπή ext3 σε ext4..." + +msgid "Copy" +msgstr "Αντιγραφή" + +msgid "Could not connect to receiver .NFI image feed server:" +msgstr "Αδυναμία σύνδεσης με την πηγή λογισμικών .NFI του δέκτη:" + +msgid "Could not find installed channel list." +msgstr "Δεν βρέθηκε η λίστα εγκατεστημένων καναλιών." + +msgid "Could not load medium! No disc inserted?" +msgstr "Το μέσο δεν φορτώθηκε! Δεν έγινε εισαγωγή δίσκου;" + +msgid "Could not open Picture in Picture" +msgstr "Αδυναμία εκκίνησης PiP" + +#, python-format +msgid "Could not record due to conflicting timer %s" +msgstr "Αδυναμία εγγραφής λόγω διένεξης του χρονοδιακόπτη %s" + +#, python-format +msgid "Could not record due to invalid service %s" +msgstr "Αδυναμία εγγραφής λόγω μη έγκυρης υπηρεσίας %s" + +msgid "Create DVD-ISO" +msgstr "Δημιουργία DVD-ISO" + +msgid "Create more detailed crash log" +msgstr "Δημιουργία λεπτομερέστερου καταγραφολογίου" + +#, python-format +msgid "Creating directory %s failed." +msgstr "Η δημιουργία του φακέλου %s απέτυχε." + +msgid "Creating filesystem" +msgstr "Δημιουργίας συστήματος αρχείων" + +msgid "Creating partition" +msgstr "Δημιουργία κατάτμησης" + +msgid "Croatian" +msgstr "Κροάτικα" + +msgid "Current CEC address" +msgstr "Τρέχουσα διεύθυνση CEC" + +msgid "Current device: " +msgstr "Τρέχουσα συσκευή: " + +msgid "Current event EPG" +msgstr "Τρέχον πρόγραμμα EPG" + +#, python-format +msgid "Current mode: %s \n" +msgstr "Τρέχουσα λειτουργία: %s \n" + +msgid "Current settings:" +msgstr "Τρέχουσες ρυθμίσεις:" + +msgid "Current transponder" +msgstr "Tρέχων αναμεταδότης" + +msgid "Current value: " +msgstr "Τρέχουσα τιμή: " + +msgid "Current version:" +msgstr "Τρέχουσα έκδοση:" + +msgid "Currently installed image" +msgstr "Τρέχον εγκατεστημένο λογισμικό" + +msgid "Currently the commit log cannot be retrieved - please try later again" +msgstr "Αυτή τη στιγμή είναι αδύνατη η ανάκτηση του καταγραφολογίου - δοκιμάστε αργότερα" + +msgid "Custom skip time for '1'/'3' buttons" +msgstr "Χρόνος υπερπήδησης για τα πλήκτρα '1'/'3'" + +msgid "Custom skip time for '4'/'6' buttons" +msgstr "Χρόνος υπερπήδησης για τα πλήκτρα '4'/'6'" + +msgid "Custom skip time for '7'/'9' buttons" +msgstr "Χρόνος υπερπήδησης για τα πλήκτρα '7'/'9'" + +msgid "Customize" +msgstr "Παραμετροποίηση" + +msgid "Customize channel list cursor behavior" +msgstr "Ρύθμιση της συμπεριφοράς του κέρσορα στη λίστα καναλιών" + +msgid "Cut" +msgstr "Αποκοπή" + +msgid "Cutlist editor..." +msgstr "Επεξεργασία σημείων αποκοπής..." + +msgid "Czech" +msgstr "Τσέχικα" + +msgid "D" +msgstr "D" + +msgid "DHCP" +msgstr "DHCP" + +msgid "DMM advanced" +msgstr "DMM προχωρημένο" + +msgid "DMM normal" +msgstr "DMM κανονικό" + +msgid "DUAL LAYER DVD" +msgstr "DVD ΔΙΠΛΗΣ ΣΤΡΩΣΗΣ" + +msgid "DVB subtitle black transparency" +msgstr "Διαφάνεια υποτίτλων DVB" + +msgid "DVB-C" +msgstr "DVB-C" + +msgid "DVB-C ANNEX C" +msgstr "DVB-C ANNEX C" + +msgid "DVB-S" +msgstr "DVB-S" + +msgid "DVB-S2" +msgstr "DVB-S2" + +msgid "DVB-T" +msgstr "DVB-T" + +msgid "DVB-T2" +msgstr "DVB-T2" + +msgid "DVD data format" +msgstr "Φορμά δεδομένων DVD" + +msgid "DVD file browser" +msgstr "Πλοηγός DVD" + +msgid "DVD media toolbox" +msgstr "Εργαλειοθήκη πολυμέσων DVD" + +msgid "DVD player" +msgstr "Αναπαραγωγή DVD" + +msgid "DVD titlelist" +msgstr "Λίστα τίτλων DVD" + +msgid "Danish" +msgstr "Δανικά" + +msgid "Date" +msgstr "Ημερομηνία" + +msgid "Date/time input" +msgstr "Εισαγωγή ημερομηνίας/ώρας" + +msgid "Deep standby" +msgstr "Βαθιά αναμονή" + +msgid "Default" +msgstr "Προεπιλογή" + +msgid "Default movie location" +msgstr "Προεπιλεγμένη τοποθεσία ταινιών" + +msgid "Default settings" +msgstr "Αρχικές ρυθμίσεις" + +msgid "Delay before key repeat starts:" +msgstr "Καθυστέρηση πριν ξεκινήσει η επανάληψη πλήκτρου:" + +msgid "Delay for external subtitles" +msgstr "Καθυστέρηση εξωτερικών υποτίτλων" + +msgid "Delete" +msgstr "Διαγραφή" + +msgid "Delete entry" +msgstr "Διαγραφή στοιχείου" + +msgid "Delete failed!" +msgstr "Η διαγραφή απέτυχε!" + +msgid "Delete file" +msgstr "Διαγραφή αρχείου" + +msgid "Delete playlist entry" +msgstr "Διαγραφή στοιχείου λίστας αναπαραγωγής" + +msgid "Delete saved playlist" +msgstr "Διαγραφή αποθηκευμένης λίστας αναπαραγωγής" + +msgid "Delete timer" +msgstr "Διαγραφή χρονοδιακόπτη" + +msgid "Delete..." +msgstr "Διαγραφή..." + +msgid "Deleted" +msgstr "Διεγραμμένα" + +msgid "Deleted items" +msgstr "Διεγραμμένα αντικείμενα" + +msgid "Depth" +msgstr "Βάθος" + +msgid "Descramble http streams" +msgstr "Αποκρυπτογράφηση ροών http" + +msgid "Description" +msgstr "Περιγραφή" + +msgid "Deselect" +msgstr "Αποεπιλογή" + +msgid "Details for plugin: " +msgstr "Λεπτομέρειες για το πρόσθετο: " + +msgid "Detected HDD:" +msgstr "Εντοπισμένοι HDD:" + +msgid "Detected NIMs:" +msgstr "Εντοπισμένα NIMs:" + +msgid "Devicename:" +msgstr "Όνομα Συσκευής:" + +msgid "Devide" +msgstr "Διαίρεση" + +msgid "DiSEqC" +msgstr "DiSEqC" + +msgid "DiSEqC 1.0 command" +msgstr "Εντολή DiSEqC 1.0" + +msgid "DiSEqC 1.1 command" +msgstr "Εντολή DiSEqC 1.1" + +msgid "DiSEqC 1.1 repeats" +msgstr "Επαναλήψεις DiSEqC 1.1" + +msgid "DiSEqC A/B" +msgstr "DiSEqC A/B" + +msgid "DiSEqC A/B/C/D" +msgstr "DiSEqC A/B/C/D" + +msgid "DiSEqC mode" +msgstr "Λειτουργία DiSEqC" + +#, python-format +msgid "DiSEqC port %s: %s" +msgstr "Πόρτα DiSEqC %s: %s" + +msgid "DiSEqC-tester settings" +msgstr "Ρυθμίσεις δοκιμής DiSEqC" + +msgid "Dialing:" +msgstr "Κλήση:" + +msgid "Digital contour removal" +msgstr "Αφαίρεση ψηφιακού περιγράμματος" + +msgid "Direct playback of linked titles without menu" +msgstr "Άμεση αναπαραγωγή των συνδεδεμένων τίτλων χωρίς μενού" + +msgid "Directory" +msgstr "Φάκελος" + +#, python-format +msgid "Directory %s does not exist." +msgstr "Ο φάκελος %s δεν υπάρχει." + +#, python-format +msgid "Directory %s nonexistent." +msgstr "Ο φάκελος %s δεν υπάρχει." + +msgid "Directory browser" +msgstr "Πλοηγός φακέλων" + +#, python-format +msgid "Directory contains %d file(s) and %d sub-directories.\n" +msgstr "Ο φάκελος περιέχει %d αρχείο(α) και %d υποκαταλόγους.\n" + +#, python-format +msgid "Directory contains %s and %s." +msgstr "Ο φάκελος περιέχει %s αρχείο(α) και %s υποφακέλους." + +msgid "Disable" +msgstr "Απενεργοποίηση" + +msgid "Disable Picture in Picture" +msgstr "Απενεργοποίηση Εικόνας σε Εικόνα" + +msgid "Disable background scanning" +msgstr "Απενεργοποίηση αναζήτησης στο παρασκήνιο" + +msgid "Disable timer" +msgstr "Απενεργοποίηση χρονοδιακόπτη" + +msgid "Disabled" +msgstr "Απενεργοποιήθηκε" + +msgid "Disconnect" +msgstr "Αποσύνδεση" + +msgid "Disk space to reserve for recordings (in GB)" +msgstr "Χώρος δίσκου που διατίθεται για εγγραφές (σε GB)" + +msgid "Display 16:9 content as" +msgstr "Εμφάνιση περιεχομένου 16:9 ως" + +msgid "Display 4:3 content as" +msgstr "Εμφάνιση περιεχομένου 4:3 ως" + +msgid "Display >16:9 content as" +msgstr "Εμφάνιση περιεχομένου >16:9 ως" + +msgid "Display and userinterface" +msgstr "Εμφάνιση και Περιβάλλον Χρήστη" + +msgid "Display message before playing next movie" +msgstr "Εμφάνιση μηνύματος πριν από την αναπαραγωγή της επόμενης ταινίας" + +msgid "Display setup" +msgstr "Ρυθμίσεις οθόνης πρόσοψης" + +msgid "Do not change" +msgstr "Να μη γίνει αλλαγή" + +msgid "Do not record" +msgstr "Να μη γίνει εγγραφή" + +msgid "Do nothing" +msgstr "Να μη γίνει τίποτα" + +msgid "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" +msgstr "" +"Είστε σίγουροι ότι θέλετε να ελεγχθεί το σύστημα αρχείων;\n" +"Ενδέχεται να διαρκέσει αρκετά!" + +msgid "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" +msgstr "" +"Θέλετε σίγουρα να μετατρέψετε το σύστημα αρχείων;\n" +"Δεν μπορεί να αναιρεθεί!" + +#, python-format +msgid "Do you really want to delete %s?" +msgstr "Θέλετε πραγματικά να διαγράψετε το %s;" + +#, python-format +msgid "" +"Do you really want to download\n" +"the plugin \"%s\"?" +msgstr "" +"Θέλετε να κατεβάσετε\n" +"το πρόσθετο \"%s\";" + +msgid "Do you really want to exit?" +msgstr "Να γίνει σίγουρα έξοδος;" + +msgid "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" +msgstr "" +"Θέλετε σίγουρα να γίνει αρχικοποίηση της συσκευής;\n" +"Όλα τα δεδομένα θα χαθούν!" + +#, python-format +msgid "" +"Do you really want to remove\n" +"the plugin \"%s\"?" +msgstr "" +"Θέλετε να αφαιρέσετε\n" +"το πρόσθετο \"%s\";" + +#, python-format +msgid "Do you really want to remove directory %s from the disk?" +msgstr "Θέλετε πραγματικά να αφαιρέσετε το φάκελο %s από το δίσκο;" + +#, python-format +msgid "Do you really want to remove your bookmark of %s?" +msgstr "Θέλετε να αφαιρέσετε το σελιδοδείκτη του %s;" + +msgid "Do you want this?" +msgstr "Να γίνει αυτό;" + +msgid "Do you want to burn this collection to DVD medium?" +msgstr "Θέλετε να γίνει εγγραφή αυτής της συλλογής σε DVD;" + +msgid "Do you want to do a service scan?" +msgstr "Θέλετε να γίνει ανίχνευση υπηρεσιών;" + +msgid "Do you want to do another manual service scan?" +msgstr "Θέλετε να γίνει μία ακόμα χειροκίνητη ανίχνευση;" + +#, python-format +msgid "Do you want to download the image to %s ?" +msgstr "Θέλετε να κατεβάσετε το λογισμικό στο %s ;" + +msgid "Do you want to install a channel list?" +msgstr "Θέλετε να γίνει εγκατάσταση μιας λίστας καναλιών;" + +msgid "Do you want to install the package:\n" +msgstr "Θέλετε να εγκαταστήσετε το πακέτο:\n" + +msgid "Do you want to play DVD in drive?" +msgstr "Θέλετε να αναπαραχθεί το DVD στη συσκευή;" + +msgid "Do you want to preview this DVD before burning?" +msgstr "Θέλετε να γίνει προεπισκόπιση αυτού του DVD πριν την εγγραφή;" + +msgid "Do you want to reboot your receiver?" +msgstr "Θέλετε να επανεκκινήσετε τον δέκτη σας;" + +msgid "Do you want to remove the package:\n" +msgstr "Θέλετε να αφαιρέσετε το πακέτο:\n" + +msgid "Do you want to restore your settings?" +msgstr "Θέλετε να επαναφέρετε τις ρυθμίσεις σας;" + +msgid "Do you want to resume this playback?" +msgstr "Θέλετε να επανασυνεχίσετε την αναπαραγωγή;" + +#, python-format +msgid "Do you want to update your receiver to %s?" +msgstr "Θέλετε να αναβαθμίσετε το δέκτη σας στο %s;" + +msgid "Do you want to update your receiver?" +msgstr "Θέλετε να ενημερώσετε το δέκτη σας;" + +msgid "Do you want to upgrade the package:\n" +msgstr "Θέλετε να αναβαθμίσετε το πακέτο:\n" + +msgid "Don't stop current event but disable coming events" +msgstr "Χωρίς παύση τρέχοντος προγράμματος, αλλά με απενεργοποίση επερχόμενων" + +#, python-format +msgid "Done - Installed, upgraded or removed %d package (%s)" +msgid_plural "Done - Installed, upgraded or removed %d packages (%s)" +msgstr[0] "Τέλος - Εγκαταστάθηκε, αναβαθμίστηκε ή αφαιρέθηκε %d πακέτο με %s σφάλματα" +msgstr[1] "Τέλος - Εγκαταστάθηκαν, αναβαθμίστηκαν ή αφαιρέθηκαν %d πακέτα με %s σφάλματα" + +msgid "Download" +msgstr "Λήψη" + +#, python-format +msgid "Download %s from server" +msgstr "Λήψη %s από το διακομιστή" + +msgid "Download .NFI-files for USB-flasher" +msgstr "Λήψη αρχείων .NFI για το USB-Flasher" + +msgid "Download plugins" +msgstr "Λήψη προσθέτων" + +msgid "Downloadable new plugins" +msgstr "Νέα πρόσθετα για λήψη" + +msgid "Downloadable plugins" +msgstr "Πρόσθετα για λήψη" + +msgid "Downloading" +msgstr "Λήψη" + +msgid "Downloading plugin information. Please wait..." +msgstr "Λήψη πληροφοριών προσθέτων. Παρακαλώ περιμένετε ..." + +msgid "Dutch" +msgstr "Ολλανδικά" + +msgid "Dynamic contrast" +msgstr "Δυναμική αντίθεση" + +msgid "E" +msgstr "Ε" + +msgid "EPG" +msgstr "EPG" + +msgid "EPG language selection 1" +msgstr "Επιλογή γλώσσας EPG 1" + +msgid "EPG language selection 2" +msgstr "Επιλογή γλώσσας EPG 2" + +msgid "EPG selection" +msgstr "Επιλογή EPG" + +msgid "EPG settings" +msgstr "Ρυθμίσεις EPG" + +#, python-format +msgid "ERROR - failed to scan (%s)!" +msgstr "ΣΦΑΛΜΑ - Αποτυχία ανίχνευσης (%s)!" + +msgid "East" +msgstr "Ανατολικά" + +msgid "East limit set" +msgstr "Ανατολικό όριο" + +msgid "Edit" +msgstr "Επεξεργασία" + +msgid "Edit DNS" +msgstr "Επεξεργασία DNS" + +msgid "Edit bouquets list" +msgstr "Επεξεργασία λίστας μπουκέτων" + +msgid "Edit chapters of current title" +msgstr "Επεξεργασία κεφαλαίων του τρέχοντα τίτλου" + +msgid "Edit services list" +msgstr "Επεξεργασία λίστας υπηρεσιών" + +msgid "Edit settings" +msgstr "Επεξεργασία ρυθμίσεων" + +msgid "Edit the nameserver configuration of your receiver.\n" +msgstr "Αλλαγή των ρυθμίσεων nameserver του δέκτη σας.\n" + +msgid "Edit the network configuration of your receiver.\n" +msgstr "Επεξεργασία των ρυθμίσεων δικτύου του δέκτη σας.\n" + +msgid "Edit timer" +msgstr "Επεξεργασία χρονοδιακόπτη" + +msgid "Edit title" +msgstr "Επεξεργασία τίτλου" + +msgid "Edit upgrade source url." +msgstr "Επιλέξτε πηγή αναβάθμισης για επεξεργασία" + +msgid "Education/Science/..." +msgstr "Εκπαίδευση/Επιστήμη/..." + +msgid "Electronic Program Guide" +msgstr "Ηλεκτρονικός Οδηγός Προγράμματος" + +msgid "Enable" +msgstr "Ενεργοποίηση" + +msgid "Enable 'neutrino' style channel select controlling" +msgstr "" + +msgid "Enable 'neutrino' style zap controlling" +msgstr "" + +msgid "Enable 5V for active antenna" +msgstr "Ενεργοποίηση των 5 V για την ενεργή κεραία" + +msgid "Enable EIT EPG" +msgstr "Ενεργοποίηση EIT EPG" + +msgid "Enable MHW EPG" +msgstr "Ενεργοποίηση MHW EPG" + +msgid "Enable Netmed EPG" +msgstr "Ενεργοποίηση Netmed EPG" + +msgid "Enable OK for channel selection" +msgstr "Ενεργοποίηση ΟΚ για επιλογή καναλιών" + +msgid "Enable ViaSat EPG" +msgstr "Ενεργοποίηση ViaSat EPG" + +msgid "Enable Virgin EPG" +msgstr "Ενεργοποίηση Virgin EPG" + +msgid "Enable Wake On LAN" +msgstr "Ενεργοποίηση Αφύπνισης Σε LAN" + +msgid "Enable auto fast scan" +msgstr "Ενεργοποίηση της αυτόματης γρήγορης ανίχνευσης" + +msgid "Enable bouquet selection in multi-EPG" +msgstr "Ενεργοποίηση της επιλογής μπουκέτων στον πολλαπλό EPG" + +msgid "Enable freesat EPG" +msgstr "Ενεργοποίηση freesat EPG" + +msgid "Enable multiple bouquets" +msgstr "Ενεργοποίηση πολλαπλών μπουκέτων" + +msgid "Enable parental control" +msgstr "Ενεργοποίηση γονικού έλεγχου" + +msgid "Enable teletext caching" +msgstr "Ενεργοποίηση αποθήκευσης τηλεκειμένου" + +msgid "Enable zapping with CH+/-, B+/-, P+/-" +msgstr "Ενεργοποίηση ζάπινγκ με τα CH+/-, B+/-, P+/-" + +msgid "Enabled" +msgstr "Ενεργοποιήθηκε" + +msgid "Encrypted: " +msgstr "Ασφάλεια: " + +msgid "Encryption" +msgstr "Κωδικοποίηση" + +msgid "Encryption key" +msgstr "Κλειδί ασφαλείας" + +msgid "Encryption key type" +msgstr "Τύπος κλειδιού ασφαλείας" + +msgid "Encryption:" +msgstr "Κωδικοποίηση:" + +msgid "End time" +msgstr "Ώρα τερματισμού" + +msgid "End time to ignore inactivity sleeptimer" +msgstr "Χρόνος λήξης αγνόησης της αδράνειας του χρονοδιακόπτη ύπνου" + +msgid "End time to ignore shutdown in standby" +msgstr "Τέλος χρόνου αγνόησης τερματισμού σε αναμονή" + +msgid "English" +msgstr "Αγγλικά" + +msgid "Enigma2 skin selector" +msgstr "Enigma2 επιλογή θέματος" + +msgid "Enter main menu..." +msgstr "Είσοδος στο κύριο μενού..." + +msgid "Enter pin code" +msgstr "Εισαγωγή κωδικού pin" + +msgid "Enter the service pin" +msgstr "Εισάγετε το pin υπηρεσίας" + +msgid "Equal to" +msgstr "Ισούται με" + +msgid "Error" +msgstr "Σφάλμα" + +msgid "Error code" +msgstr "Κωδικός σφάλματος" + +msgid "Error executing plugin" +msgstr "Σφάλμα κατά την εκτέλεση προσθέτου" + +#, python-format +msgid "" +"Error: %s\n" +"Retry?" +msgstr "" +"Σφάλμα: %s\n" +"Προσπάθεια ξανά;" + +msgid "Estonian" +msgstr "Εσθονικά" + +msgid "Ethernet network interface" +msgstr "Διεπαφή ενσύρματου δικτύου" + +msgid "Event font size (relative to skin size)" +msgstr "Μέγεθος γραμματοσειράς προγράμματος (σε σχέση με το μέγεθος του θέματος)" + +msgid "Event view" +msgstr "Επισκόπηση προγραμμάτων" + +msgid "Event view menu" +msgstr "Μενού προγραμμάτων" + +msgid "Everywhere" +msgstr "Παντού" + +msgid "Exceeds dual layer medium!" +msgstr "Υπέρβαση μεγέθους διπλής στρώσης του μέσου!" + +msgid "Execution finished!!" +msgstr "Η εκτέλεση ολοκληρώθηκε!!" + +msgid "Execution progress:" +msgstr "Πρόοδος εκτέλεσης:" + +msgid "Exif" +msgstr "Exif" + +msgid "Exit" +msgstr "Έξοδος" + +msgid "Exit EPG" +msgstr "Έξοδος από EPG" + +msgid "Exit editor" +msgstr "Έξοδος από την επεξεργασία" + +msgid "Exit input device selection." +msgstr "Έξοδος από επιλογή συσκευής εισαγωγής." + +msgid "Exit media player?" +msgstr "Έξοδος από την αναπαραγωγή πολυμέσων;" + +msgid "Exit mediaplayer" +msgstr "Έξοδος από την αναπαραγωγή πολυμέσων" + +msgid "Exit movie list" +msgstr "Έξοδος από τη λίστα ταινιών" + +msgid "Exit movie player?" +msgstr "Έξοδος από την αναπαραγωγή πολυμέσων;" + +msgid "Exit nameserver configuration" +msgstr "Έξοδος από τη ρύθμιση nameserver" + +msgid "Exit network interface list" +msgstr "Έξοδος από τη λίστα διεπαφών δικτύου" + +msgid "Exit network wizard" +msgstr "Έξοδος από τον οδηγό δικτύου" + +msgid "Exit the wizard" +msgstr "Έξοδος από το οδηγό" + +msgid "Expert" +msgstr "Προχωρημένο" + +msgid "Extend sleeptimer 15 minutes" +msgstr "Επέκταση χρονοδιακόπτη 15 λεπτά" + +msgid "Extended Software" +msgstr "Εξελιγμένο λογισμικό" + +msgid "Extended Software Plugin" +msgstr "Πρόσθετο εξελιγμένου λογισμικού" + +msgid "Extended network setup plugin..." +msgstr "Πρόσθετο προχωρημένης ρύθμισης δικτύου..." + +msgid "Extended setup..." +msgstr "Προχωρημένες ρύθμισεις..." + +msgid "Extensions" +msgstr "Επεκτάσεις" + +msgid "Extensions management" +msgstr "Διαχείριση επεκτάσεων" + +msgid "External PiP" +msgstr "Εξωτερικό PiP" + +msgid "External subtitle color" +msgstr "Χρώμα εξωτερικών υποτίτλων" + +msgid "Extra motor options" +msgstr "Πρόσθετες επιλογές μοτέρ" + +msgid "FEC" +msgstr "FEC" + +msgid "FTA" +msgstr "FTA" + +msgid "Factory reset" +msgstr "Επαναφορά εργοστασιακών ρυθμίσεων" + +msgid "Failed" +msgstr "Απέτυχε" + +msgid "Failed to write /tmp/positionersetup.log: " +msgstr "Αποτυχία εγγραφής του /tmp/positionersetup.log: " + +#, python-format +msgid "Fan %d" +msgstr "Ανεμιστήρας %d" + +#, python-format +msgid "Fan %d PWM" +msgstr "Ανεμιστήρας %d PWM" + +#, python-format +msgid "Fan %d voltage" +msgstr "Τάση Ανεμιστήρα %d" + +msgid "Fan operation" +msgstr "Λειτουργία ανεμιστήρα" + +msgid "Fan speed" +msgstr "Ταχύτητα ανεμιστήρα" + +msgid "Fast" +msgstr "Γρήγορο" + +msgid "Fast DiSEqC" +msgstr "Γρήγορο DiSEqC" + +msgid "Fast Scan" +msgstr "Γρήγορη Ανίχνευση" + +msgid "Fast epoch" +msgstr "Γρήγορη εποχή" + +msgid "Fast forward speeds" +msgstr "Ταχύτητες fast forward" + +msgid "Favourites" +msgstr "Αγαπημένα" + +msgid "File appears to be busy.\n" +msgstr "Το αρχείο είναι απασχολημένο. \n" + +msgid "Filesystem check" +msgstr "Έλεγχος συστήματος αρχείων" + +msgid "Final position at" +msgstr "Τελική θέση σε" + +msgid "Final position at index" +msgstr "Τελευταία αποθηκευμένη θέση" + +msgid "Fine movement" +msgstr "Μικροκίνηση" + +msgid "Finetune" +msgstr "Μικρορύθμιση" + +msgid "Finished" +msgstr "Ολοκληρώθηκε" + +msgid "Finished configuring your network" +msgstr "Ολοκλήρωση ρύθμισης δικτύου" + +msgid "Finished restarting your network" +msgstr "Ολοκλήρωση επανεκκίνησης δικτύου" + +msgid "Finnish" +msgstr "Φιλανδικά" + +msgid "Fixed" +msgstr "Σταθερό" + +msgid "Flash" +msgstr "Flash" + +msgid "Flashing failed" +msgstr "Η εγκατάσταση απέτυχε" + +msgid "Following tasks will be done after you press OK!" +msgstr "Οι ακόλουθες ενέργειες θα εκτελεστούν αφού πιέσετε ΟΚ!" + +msgid "Format" +msgstr "Φορμά" + +msgid "Forward volume keys" +msgstr "Πλήκτρα προώθησης ήχου" + +msgid "Frame size in full view" +msgstr "Μέγεθος κάδρου σε πλήρη οθόνη" + +msgid "French" +msgstr "Γαλλικά" + +msgid "Frequency" +msgstr "Συχνότητα" + +msgid "Frequency bands" +msgstr "Μπάντες συχνότητας" + +msgid "Frequency scan step size(khz)" +msgstr "Μέγεθος βήματος συχνότητας στην ανίχνευση(khz)" + +msgid "Frequency steps" +msgstr "Βήματα συχνότητας" + +msgid "Frequency:" +msgstr "Συχνότητα:" + +msgid "Fri" +msgstr "Παρ" + +msgid "Friday" +msgstr "Παρασκευή" + +msgid "From :" +msgstr "Από :" + +#, python-format +msgid "Frontprocessor version: %d" +msgstr "Έκδοση frontprocessor: %d" + +msgid "Full transparency" +msgstr "Πλήρης διαφάνεια" + +msgid "Fulview resulution" +msgstr "Ανάλυση σε πλήρη οθόνη" + +msgid "Function of OK button" +msgstr "Λειτουργία κουμπιού OK" + +msgid "Further Options" +msgstr "Περαιτέρω Επιλογές" + +msgid "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" +msgstr "Πρέπει να γίνει επανεκκίνηση του enigma2 για να ενεργοποιηθεί το νέο θέμα. Να γίνει τώρα;" + +msgid "Gateway" +msgstr "Πύλη δικτύου" + +msgid "General AC3 delay" +msgstr "Γενική καθυστέρηση AC3" + +msgid "General PCM delay" +msgstr "Γενική καθυστέρηση PCM" + +msgid "Genre" +msgstr "Είδος" + +msgid "German" +msgstr "Γερμανικά" + +msgid "Get latest experimental image" +msgstr "Λήψη τελευταίου λογισμικού experimental" + +msgid "Get latest release image" +msgstr "Λήψη τελευταίου σταθερού λογισμικού" + +msgid "Getting plugin information. Please wait..." +msgstr "Λήψη πληροφοριών προσθέτου. Παρακαλώ περιμένετε..." + +msgid "Go down the list" +msgstr "Μετάβαση προς τα κάτω" + +msgid "Go to first movie or last item" +msgstr "Μετάβαση στην πρώτη ταινία ή το τελευταίο στοιχείο" + +msgid "Go to first movie or top of list" +msgstr "Μετάβαση στην πρώτη ταινία ή στην κορυφή της λίστας" + +msgid "Go to first service" +msgstr "Μετάβαση στην πρώτη υπηρεσία" + +msgid "Go to last service" +msgstr "Μετάβαση στην τελευταία υπηρεσία" + +msgid "Go to next event" +msgstr "Mετάβαση στο επόμενο πρόγραμμα" + +msgid "Go to next page of service" +msgstr "Μετάβαση στην επόμενη σελίδα υπηρεσιών" + +msgid "Go to previous event" +msgstr "Επιστροφή στο προηγούμενο πρόγραμμα" + +msgid "Go to previous page of service" +msgstr "Επιστροφή στην προηγούμενη σελίδα υπηρεσιών" + +msgid "Go up the list" +msgstr "Μετάβαση προς τα πάνω" + +msgid "Goto" +msgstr "Μετάβαση" + +msgid "Goto 0" +msgstr "Μετάβαση στο 0" + +msgid "Goto :" +msgstr "Προς :" + +msgid "Goto X" +msgstr "Μετάβαση στη θέση Χ" + +msgid "Goto index position" +msgstr "Μετάβαση στην αποθηκευμένη θέση" + +msgid "Goto next day of events" +msgstr "Μετάβαση στην επόμενη ημέρα των προγραμμάτων" + +msgid "Goto next page of events" +msgstr "Μετάβαση στην επόμενη σελίδα προγραμμάτων" + +msgid "Goto position" +msgstr "Μετάβαση στη θέση" + +msgid "Goto previous day of events" +msgstr "Μετάβαση στην προηγούμενη μέρα των προγραμμάτων" + +msgid "Goto previous page of events" +msgstr "Μετάβαση στην προηγούμενη σελίδα συμβάντων" + +msgid "Goto specific date/time" +msgstr "Μετάβαση σε καθορισμένη ημερομηνία/ώρα" + +msgid "GotoX calibration" +msgstr "Υπολογισμός GotoX" + +msgid "GraphMultiEpg Settings" +msgstr "Ρυθμίσεις Γραφικού Πολλαπλού Epg" + +msgid "Graphical Multi EPG" +msgstr "Γραφικός Πολλαπλός EPG" + +msgid "Greek" +msgstr "Ελληνικά" + +msgid "Green boost" +msgstr "Ενίσχυση του πράσινου" + +msgid "Guard interval" +msgstr "Διάστημα φύλαξης" + +msgid "HD list" +msgstr "Λίστα HD" + +msgid "HDMI-CEC setup" +msgstr "Ρύθμιση HDMI-CEC" + +msgid "Handle standby from TV" +msgstr "Χειρισμός αναμονής από TV" + +msgid "Handle wakeup from TV" +msgstr "Χειρισμός εκκίνησης από TV" + +msgid "Hard disk" +msgstr "Σκληρός δίσκος" + +msgid "Hard disk setup" +msgstr "Ρύθμιση σκληρού δίσκου" + +msgid "Hard disk standby after" +msgstr "Σκληρός δίσκος σε αναμονή μετά από" + +msgid "Harddisk" +msgstr "Σκληρός δίσκος" + +msgid "Hardware: " +msgstr "Υλικό: " + +msgid "Hebrew" +msgstr "Εβραϊκά" + +msgid "Helps setting up your dish" +msgstr "Βοήθός ρύθμισης του κατόπτρου σας" + +msgid "Hidden network" +msgstr "Κρυφό δίκτυο" + +msgid "Hide CI messages" +msgstr "Απόκρυψη μηνυμάτων CI" + +msgid "Hide channel list in radio mode" +msgstr "Απόκρυψη της λίστα καναλιών σε λειτουργία ραδιοφώνου" + +msgid "Hide known extensions" +msgstr "Απόκρυψη γνωστών επεκτάσεων" + +msgid "Hide number markers" +msgstr "Απόκρυψη σημειωτών των αριθμών" + +msgid "Hide player" +msgstr "Απόκρυψη αναπαραγωγού" + +msgid "Hide zap errors" +msgstr "Απόκρυψη σφαλμάτων του ζάπινγκ" + +msgid "Hierarchy info" +msgstr "Πληροφορίες ιεραρχίας" + +msgid "Hierarchy information" +msgstr "Πληροφορίες ιεραρχίας" + +msgid "High bitrate support" +msgstr "Υποστήριξη υψηλού bitrate" + +msgid "Hold screen" +msgstr "Οθόνη αναμονής" + +msgid "Hold till locked" +msgstr "Αναμονή ως το κλείδωμα" + +msgid "Home" +msgstr "Αρχική" + +msgid "Horizontal" +msgstr "Οριζόντια" + +msgid "Horizontal turning speed" +msgstr "Ταχύτητα περιστροφής σε οριζόντια πόλωση" + +msgid "How many minutes do you want to record?" +msgstr "Ποσά λεπτά θέλετε να εγγραφούν;" + +msgid "Hue" +msgstr "Απόχρωση" + +msgid "Hungarian" +msgstr "Ουγγρικά" + +msgid "IP address" +msgstr "Διεύθυνση IP" + +msgid "ISO file is too large for this filesystem!" +msgstr "Το αρχείο ISO είναι πολύ μεγάλο για αυτό το σύστημα αρχείων!" + +msgid "ISO path" +msgstr "Διαδρομή ISO" + +msgid "Icons" +msgstr "Εικονίδια" + +msgid "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." +msgstr "" +"Αν διαβάζετε αυτό το μήνυμα τότε υπάρχει\n" +"κάποιο πρόβλημα με το scart. Πιέστε ΟΚ για επιστροφή." + +msgid "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." +msgstr "" +"Εάν η TV σας έχει επιλογή βελτίωσης για φωτεινότητα ή αντίθεση, απενεργοποιήστε την. Εάν υπάρχει επιλογή με όνομα \"δυναμική\", βάλτε τη σε θέση \"στάνταρ\". Ρυθμίστε τον φωτισμό με τα δικά σας δεδομένα. Κατεβάστε την αντίθεση όσο γίνεται. \n" +"Κατεβάστε την φωτεινότητα τόσο, ώστε μόλις να διακρίνονται οι δύο κατώτερες γκρι σκιές.\n" +"Μην λαμβάνετε υπόψιν τις φωτεινές σκιές τώρα. Θα ρυθμιστούν στο επόμενο βήμα.\n" +"Εάν σας ικανοποιεί το αποτέλεσμα, πιέστε ΟΚ." + +msgid "Image: " +msgstr "Λογισμικό δέκτη: " + +msgid "Immediate shutdown" +msgstr "Άμεσος τερματισμός" + +msgid "In order to record a timer, the TV was switched to the recording service!\n" +msgstr "Για να εκτελεστεί μια εγγραφή, ο δέκτης μετέβη στο κανάλι εγγραφής!\n" + +msgid "In progress" +msgstr "Σε εξέλιξη" + +msgid "Inactivity Sleeptimer" +msgstr "Χρονοδιακόπτης αδράνειας" + +msgid "Include AIT in http streams" +msgstr "Συμπερίληψη του AIT στις ροές http" + +msgid "Include ECM in http streams" +msgstr "Συμπερίληψη του ECM στις ροές http" + +msgid "Include EIT in http streams" +msgstr "Συμπερίληψη του ΕΙΤ στις ροές http" + +msgid "Incorrect type service for PiP!" +msgstr "Λανθασμένος τύπος υπηρεσίας για PiP!" + +msgid "Increased voltage" +msgstr "Αυξημένη τάση" + +msgid "Index" +msgstr "Ευρετήριο" + +msgid "Index allocated:" +msgstr "Κατανεμημένη θέση:" + +msgid "Info" +msgstr "Πληροφορίες" + +msgid "Info bar" +msgstr "Μπάρα πληροφοριών" + +msgid "Info bar timeout" +msgstr "Χρόνος εμφάνισης πληροφοριών" + +msgid "Infobar frontend data source" +msgstr "Πηγή δεδομένων tuner στη μπάρα πληροφοριών" + +msgid "Information" +msgstr "Πληροφορίες" + +msgid "Init" +msgstr "Αρχ." + +msgid "Initial fast forward speed" +msgstr "Αρχική ταχύτητα fast forward" + +msgid "Initial location in new timers" +msgstr "Αρχική τοποθεσία σε νέους χρονοδιακόπτες" + +msgid "Initial lock ratio" +msgstr "Αρχική αναλογία κλειδώματος" + +msgid "Initial rewind speed" +msgstr "Αρχική ταχύτητα rewind" + +msgid "Initial signal quality" +msgstr "Αρχική ποιότητα σήματος" + +msgid "Initial signal quality:" +msgstr "Αρχική ποιότητα σήματος:" + +msgid "Initialization" +msgstr "Αρχικοποίηση" + +msgid "Initialize" +msgstr "Αρχικοποίηση " + +msgid "Initializing storage device..." +msgstr "Αρχικοποίηση συσκευής αποθήκευσης..." + +msgid "Input" +msgstr "Μενού επιλογών" + +msgid "Input device setup" +msgstr "Ρύθμιση συσκευής εισόδου" + +msgid "Input devices" +msgstr "Συσκευές εισόδου" + +msgid "Install" +msgstr "Εγκατάσταση" + +msgid "Install a new image with a USB stick" +msgstr "Εγκατάσταση νέου λογισμικού μέσω usb στικ" + +msgid "Install a new image with your web browser" +msgstr "Εγκατάσταση νέου λογισμικού μέσω πλοηγού web" + +msgid "Install channel list" +msgstr "Εγκατάσταση λίστας καναλιών" + +msgid "Install extensions" +msgstr "Εγκατάσταση επεκτάσεων" + +msgid "Install extensions." +msgstr "Εγκατάσταση επεκτάσεων." + +msgid "Install local extension" +msgstr "Εγκατάσταση τοπικής επέκτασης" + +msgid "Install picons on" +msgstr "Εγκατάσταση picons σε" + +msgid "Install softcam" +msgstr "Εγκατάσταση softcam" + +msgid "Installation has completed." +msgstr "Η εγκατάσταση ολοκληρώθηκε." + +msgid "Installation or removal has completed." +msgstr "Η εγκατάσταση ή διαγραφή ολοκληρώθηκε." + +msgid "Installing" +msgstr "Εγκατάσταση" + +msgid "Installing software..." +msgstr "Εγκατάσταση λογισμικού..." + +msgid "Instant recording location" +msgstr "Τοποθεσία άμεσης εγγραφής" + +msgid "Instant recording..." +msgstr "Άμεση εγγραφή..." + +msgid "Interface: " +msgstr "Διεπαφή: " + +msgid "Intermediate" +msgstr "Ενδιάμεσο" + +msgid "Internal flash" +msgstr "Εσωτερική flash" + +msgid "Internal hdd only" +msgstr "Εσωτερικός δίσκος μόνο" + +msgid "Interval between keys when repeating:" +msgstr "Διάστημα μεταξύ των πλήκτρων μετά από επανάληψη:" + +#, python-format +msgid "Invalid directory selected: %s" +msgstr "Επιλέχθηκε μη έγκυρος φάκελος: %s" + +msgid "Invalid location" +msgstr "Μη έγκυρη τοποθεσία" + +msgid "Invalid transponder data" +msgstr "Μη έγκυρα δεδομένα αναμεταδότη" + +msgid "Inversion" +msgstr "Αναστροφή" + +msgid "Invert" +msgstr "Αντιστροφή" + +msgid "Ipkg" +msgstr "Ipkg" + +msgid "Is this setting ok?" +msgstr "Χρήση αυτών των ρυθμίσεων;" + +msgid "Is this video mode ok?" +msgstr "Είναι εντάξει αυτή η λειτουργία εικόνας;" + +msgid "Italian" +msgstr "Ιταλικά" + +msgid "Items per page " +msgstr "Αντικείμενα ανά σελίδα " + +msgid "Items per page for list screen" +msgstr "Αντικείμενα ανά σελίδα για λίστα οθόνης" + +msgid "Job overview" +msgstr "Επισκόπηση εργασιών" + +msgid "Jump to beginning of list" +msgstr "Μετάβαση στην αρχή της λίστας" + +msgid "Jump to end of list" +msgstr "Μετάβαση στο τέλος της λίστας" + +msgid "Jump to next marked position" +msgstr "Μετάβαση στην επόμενη μαρκαρισμένη θέση" + +msgid "Jump to previous marked position" +msgstr "Μετάβαση στην προηγούμενη μαρκαρισμένη θέση" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect) +msgid "Just scale" +msgstr "Κλιμάκωση" + +msgid "Keep service" +msgstr "Διατήρηση υπηρεσίας" + +msgid "Kernel version: " +msgstr "Έκδοση kernel: " + +msgid "Keyboard" +msgstr "Πληκτρολόγιο" + +msgid "Keyboard map" +msgstr "Χάρτης πληκτρολογίου" + +msgid "Keyboard setup" +msgstr "Ρύθμιση πληκτρολογίου" + +msgid "LAN adapter" +msgstr "Προσαρμογέας LAN" + +msgid "LAN connection" +msgstr "Σύνδεση δικτύου" + +msgid "LNB" +msgstr "LNB" + +msgid "Language" +msgstr "Γλώσσα" + +msgid "Language selection" +msgstr "Επιλογή γλώσσας" + +msgid "Last config" +msgstr "Τελευταία ρύθμιση" + +msgid "Last speed" +msgstr "Τελευταία ταχύτητα" + +msgid "Last upgrade: " +msgstr "Τελευταία αναβάθμιση: " + +msgid "Latest Commits" +msgstr "Τελευταίες Αλλαγές" + +msgid "Latitude" +msgstr "Γεωγραφικό πλάτος" + +msgid "Latvian" +msgstr "Λετονικά" + +msgid "Leave DVD player?" +msgstr "Έξοδος από την αναπαραγωγή DVD;" + +msgid "Left" +msgstr "Αριστερά" + +msgid "Left from servicename" +msgstr "Αριστερά του ονόματος υπηρεσίας" + +msgid "Leisure hobbies" +msgstr "Χόμπι αναψυχής" + +#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term. +msgid "Letterbox" +msgstr "Μπάρες πάνω - κάτω" + +msgid "Letterbox zoom" +msgstr "Ζουμάρισμα σε μπάρες πάνω - κάτω" + +msgid "Limit character set for recording filenames" +msgstr "Περιορισμένο πλήθος χαρακτήρων για ονόματα εγγραφών" + +msgid "Limit east" +msgstr "Ανατολικό όριο" + +msgid "Limit the characters that can be used in recording filenames to (7 bit) ascii. This ensures compatibility with operating systems or file systems with limited character sets." +msgstr "Περιορισμός των χαρακτήρων για χρήση στα ονόματα των εγγραφών σε (7 bit) ascii. Αυτό διασφαλίζει τη συμβατότητα με λειτουργικά συστήματα ή με συστήματα αρχείων με περιορισμένους χαρακτήρες." + +msgid "Limit west" +msgstr "Δυτικό όριο" + +msgid "Limits cancelled" +msgstr "Ακύρωση ορίων" + +msgid "Limits enabled" +msgstr "Όρια ενεργά" + +msgid "Limits off" +msgstr "Όρια απενεργοποιήμενα" + +msgid "Limits on" +msgstr "Όρια ενεργοποιήμενα" + +msgid "Link quality:" +msgstr "Ποιότητα σύνδεσης:" + +msgid "Link:" +msgstr "Σύνδεση:" + +msgid "Linked titles with a DVD menu" +msgstr "Τίτλοι συνδεδεμένοι με μενού DVD" + +msgid "List EPG functions..." +msgstr "Λίστα λειτουργιών EPG..." + +msgid "List available networks" +msgstr "Λίστα διαθέσιμων δικτύων" + +msgid "List mode" +msgstr "Λειτουργία λίστας" + +msgid "List of storage devices" +msgstr "Λίστα μέσων αποθήκευσης" + +msgid "List type" +msgstr "Τύπος λίστας" + +#, python-format +msgid "List version %d, found %d channel" +msgid_plural "List version %d, found %d channels" +msgstr[0] "Έκδοση λίστας %d, βρέθηκε %d κανάλι" +msgstr[1] "Έκδοση λίστας %d, βρέθηκαν %d κανάλια" + +msgid "Listen to the radio..." +msgstr "Ακρόαση ραδιοφώνου..." + +msgid "Lists reloaded!" +msgstr "" + +msgid "Lithuanian" +msgstr "Λιθουανικά" + +msgid "Load" +msgstr "Φόρτωση" + +msgid "Load Length of Movies in Movielist" +msgstr "Φόρτωση Διάρκειας Ταινιών στη Λίστα" + +msgid "Load length of movies in movie list" +msgstr "Φόρτωση διάρκειας ταινιών στη λίστα" + +msgid "Load playlist" +msgstr "Φόρτωση λίστας αναπαραγωγής" + +msgid "Local network" +msgstr "Τοπικό δίκτυο" + +msgid "Location" +msgstr "Τοποθεσία" + +msgid "Location for instant recordings" +msgstr "Τοποθεσία άμεσων εγγραφών" + +msgid "Lock ratio" +msgstr "Κλείδωμα αναλογιών" + +msgid "Lock:" +msgstr "Κλείδ:" + +msgid "Log results to harddisk" +msgstr "Καταγραφή αποτελεσμάτων στο δίσκο" + +msgid "Long filenames" +msgstr "Μεγάλα ονόματα αρχείων" + +msgid "Long key press" +msgstr "Συνεχές πάτημα πλήκτρου" + +msgid "Longitude" +msgstr "Γεωγραφικό μήκος" + +msgid "Loop through to" +msgstr "Loop στο" + +msgid "Luxembourgish" +msgstr "Λουξεμβουργιανή" + +msgid "MMC card" +msgstr "Κάρτα MMC" + +msgid "MORE" +msgstr "ΠΕΡΙΣΣΟΤΕΡΑ" + +msgid "Main menu" +msgstr "Κύριο μενού" + +msgid "Maintain old EPG data for" +msgstr "Διατήρηση των παλιών δεδομένων EPG για" + +msgid "Make this mark an 'in' point" +msgstr "Μαρκάρισμα αυτού του σημαδιού ως σημείο εσόδου" + +msgid "Make this mark an 'out' point" +msgstr "Μαρκάρισμα αυτού του σημαδιού ως σημείο εξόδου" + +msgid "Make this mark just a mark" +msgstr "Μαρκάρισμα αυτού του σημαδιού απλά ως σημείο" + +msgid "Manage extensions" +msgstr "Διαχείριση επεκτάσεων" + +msgid "Manage your receiver's software" +msgstr "Διαχείριση λογισμικού δέκτη" + +msgid "Manual" +msgstr "Χειροκίνητη" + +msgid "Manual Scan" +msgstr "Χειροκίνητη Ανίχνευση" + +msgid "Manual configuration" +msgstr "Χειροκίνητη ρύθμιση" + +msgid "Manual scan" +msgstr "Χειροκίνητη ανίχνευση" + +msgid "Manual transponder" +msgstr "Χειροκίνητος αναμεταδότης" + +msgid "Manufacturer" +msgstr "Κατασκευαστής" + +msgid "Margin after recording (minutes)" +msgstr "Περιθώριο μετά την εγγραφή (λεπτά)" + +msgid "Margin before recording (minutes)" +msgstr "Περιθώριο πριν την εγγραφή (λεπτά)" + +msgid "Max memory positions" +msgstr "Μέγιστος αριθμός θέσεων" + +msgid "Max. bitrate: " +msgstr "Μεγ. ρυθμός bit: " + +msgid "Media player" +msgstr "Αναπαραγωγή πολυμέσων" + +msgid "Media scanner" +msgstr "Ανίχνευση πολυμέσων" + +msgid "Medium is not a writeable DVD!" +msgstr "Το μέσο δεν είναι εγγράψιμο DVD!" + +msgid "Medium is not empty!" +msgstr "Το μέσο δεν είναι άδειο!" + +msgid "Memory" +msgstr "Μνήμη" + +msgid "Memory index" +msgstr "Θέση αποθήκευσης" + +msgid "Menu" +msgstr "Μενού" + +msgid "Message" +msgstr "Μήνυμα" + +msgid "Message..." +msgstr "Μήνυμα..." + +#, python-format +msgid "Minimum age %d years" +msgstr "Ελάχιστη ηλικία %d" + +msgid "Minimum send interval" +msgstr "Ελάχιστο διάστημα αποστολής" + +msgid "Missing " +msgstr "Λείπει " + +msgctxt "Satellite configuration mode" +msgid "Mode" +msgstr "Λειτουργία" + +msgctxt "Video output mode" +msgid "Mode" +msgstr "Λειτουργία" + +msgid "Model: " +msgstr "Μοντέλο: " + +msgid "Modulation" +msgstr "Διαμόρφωση" + +msgid "Modulator" +msgstr "Διαμορφωτής" + +msgid "Mon" +msgstr "Δευ" + +msgid "Mon-Fri" +msgstr "Δευ-Παρ" + +msgid "Monday" +msgstr "Δευτέρα" + +msgid "Mosquito noise reduction" +msgstr "Μείωση θορύβου κουνουπιού" + +msgid "Mount" +msgstr "Προσάρτηση" + +msgid "Move" +msgstr "Μετακίνηση" + +msgid "Move PiP to main picture" +msgstr "Μετακίνηση PiP στην κύρια εικόνα" + +msgid "Move Picture in Picture" +msgstr "Μετακίνηση Εικόνας σε Εικόνα" + +msgid "Move east" +msgstr "Κίνηση ανατολικά" + +msgid "Move to other directory" +msgstr "Μετακίνηση σε άλλο φάκελο" + +msgid "Move to position X" +msgstr "Κίνηση στη θέση Χ" + +msgid "Move west" +msgstr "Κίνηση δυτικά" + +msgid "Moved to position 0" +msgstr "Κινήθηκε στη θέση 0" + +msgid "Moved to position at index" +msgstr "Κίνηση στην αποθηκευμένη θέση" + +msgid "Movement" +msgstr "Κίνηση" + +msgid "Movie List Configuration" +msgstr "Ρυθμίσεις Λίστας Ταινιών" + +msgid "Movie Selection" +msgstr "Επιλογή Ταινιών" + +msgid "Movie list configuration" +msgstr "Ρύθμιση λίστας ταινιών" + +msgid "Movie location" +msgstr "Τοποθεσία ταινιών" + +msgid "Movie selection" +msgstr "Επιλογή ταινιών" + +msgid "Movie/Drama" +msgstr "Ταινία/Δράμα" + +msgid "Movielist menu" +msgstr "Μένου λίστας ταινιών" + +msgid "Moving" +msgstr "Μετακίνηση" + +msgid "Moving east ..." +msgstr "Κίνηση ανατολικά ..." + +msgid "Moving to position" +msgstr "Κίνηση στη θέση" + +msgid "Moving west ..." +msgstr "Κίνηση δυτικά ..." + +msgid "Multi EPG" +msgstr "Πολλαπλός EPG" + +msgid "Multi-EPG bouquet selection" +msgstr "Επιλογή μπουκέτων πολλαπλού EPG" + +msgid "Multimedia" +msgstr "Πολυμέσα" + +msgid "Multiple service support" +msgstr "Υποστήριξη πολλαπλών υπηρεσιών" + +msgid "Multiplex" +msgstr "Πολυπλέκτης" + +msgid "Multisat" +msgstr "Πολλοί δορυφόροι" + +msgid "Multisat all select" +msgstr "Επιλογή όλων των δορυφόρων" + +msgid "Music/Ballet/Dance" +msgstr "Μουσική/Μπαλέτο/Χορός" + +msgid "Mute" +msgstr "Σίγαση" + +msgid "N/A" +msgstr "Μ/Δ" + +msgid "NEXT" +msgstr "ΕΠΟΜΕΝΟ" + +msgid "NFI image flashing" +msgstr "Φλασάρισμα λογισμικού NFI" + +msgid "NFI image flashing completed. Press Yellow to Reboot!" +msgstr "Η εγκατάσταση λογισμικού NFI τελείωσε. Πατήστε Κίτρινο για επανεκκίνηση!" + +msgid "NIM" +msgstr "Μονάδα tuner" + +msgid "NOW" +msgstr "ΤΩΡΑ" + +msgid "NTSC" +msgstr "NTSC" + +msgid "Name" +msgstr "Όνομα" + +msgid "Nameserver" +msgstr "Nameserver" + +#, python-format +msgid "Nameserver %d" +msgstr "Nameserver %d" + +msgid "Nameserver settings" +msgstr "Ρυθμίσεις Nameserver" + +msgid "Nameserver setup" +msgstr "Ρύθμιση Nameserver" + +msgid "Namespace" +msgstr "Χώρος ονόματος" + +msgid "Netmask" +msgstr "Μάσκα δικτύου" + +msgid "Network" +msgstr "Δίκτυο" + +msgid "Network ID" +msgstr "ID δικτύου" + +msgid "Network configuration..." +msgstr "Διαμόρφωση δικτύου..." + +msgid "Network mount" +msgstr "Προσάρτηση δικτύου" + +#, python-format +msgid "Network mount %s" +msgstr "Προσάρτηση δικτύου %s" + +msgid "Network name (SSID)" +msgstr "Όνομα δικτύου (SSID)" + +msgid "Network scan" +msgstr "Ανίχνευση δικτύου" + +msgid "Network setup" +msgstr "Ρύθμιση δικτύου" + +msgid "Network test" +msgstr "Έλεγχος δικτύου" + +msgid "Network test..." +msgstr "Έλεγχος δικτύου..." + +msgid "Network test: " +msgstr "Έλεγχος δικτύου: " + +msgid "Network wizard" +msgstr "Οδηγός δικτύου" + +msgid "Network:" +msgstr "Δίκτυο:" + +msgid "New" +msgstr "Νέο" + +msgid "New PIN" +msgstr "Νέο PIN" + +msgid "New version:" +msgstr "Νέα έκδοση:" + +msgid "News Current Affairs" +msgstr "Ειδήσεις & Επικαιρότητα" + +msgctxt "button label, 'next screen'" +msgid "Next" +msgstr "Επόμενο" + +msgctxt "now/next: 'next' event label" +msgid "Next" +msgstr "Επόμενο" + +msgid "No" +msgstr "Όχι" + +msgid "No (supported) DVDROM found!" +msgstr "Δεν βρέθηκε (υποστηριζόμενο) DVDROM!" + +msgid "No Connection" +msgstr "Δεν υπάρχει σύνδεση" + +msgid "No HDD found or HDD not initialized!" +msgstr "Δεν βρέθηκε σκληρός δίσκος ή δεν έχει γίνει αρχικοποίηση!" + +msgid "No backup needed" +msgstr "Δεν απαιτείται εφεδρεία" + +msgid "No cable tuner found!" +msgstr "Δεν βρέθηκε καλωδιακό tuner!" + +msgid "" +"No data on transponder!\n" +"(Timeout reading PAT)" +msgstr "" +"Δεν υπάρχουν δεδομένα στον αναμεταδότη!\n" +"(Υπέρβαση χρόνου ανάγνωσης του PAT)" + +msgid "No delay" +msgstr "Χωρίς καθυστέρηση" + +msgid "No description available." +msgstr "Μη διαθέσιμη περιγραφή." + +msgid "No details for this image file" +msgstr "Δεν υπάρχουν λεπτομέρειες για αυτό το αρχείο" + +msgid "No displayable files on this medium found!" +msgstr "Δεν υπάρχουν αρχεία προς εμφάνιση σε αυτό το μέσο!" + +msgid "No event info found, recording indefinitely." +msgstr "" +"Δεν βρέθηκαν πληροφορίες προγράμματος,\n" +"η εγγραφή δεν θα σταματήσει." + +msgid "No fast winding possible yet.. but you can use the number buttons to skip forward/backward!" +msgstr "Δεν είναι ακόμα δυνατή η γρήγορη προώθηση... χρησιμοποιήστε τα αριθμητικά πλήκτρα για μετακίνηση εμπρός/πίσω!" + +msgid "No free index available" +msgstr "Μη διαθέσιμη ελεύθερη θέση" + +msgid "No free tuner!" +msgstr "Δεν υπάρχει ελεύθερο tuner!" + +msgid "No network connection available." +msgstr "Δεν υπάρχει διαθέσιμη σύνδεση δικτύου." + +msgid "No networks found" +msgstr "Δεν βρέθηκαν δίκτυα" + +msgid "No new plugins found" +msgstr "Δεν βρέθηκαν νέα πρόσθετα" + +msgid "No positioner capable frontend found." +msgstr "Δεν βρέθηκε tuner που να υποστηρίζει μοτέρ." + +msgid "No satellites configured. Plese check your tuner setup." +msgstr "Δεν έχουν ρυθμιστεί δορυφόροι. Ελέγξτε τις ρυθμίσεις του tuner." + +msgid "No service" +msgstr "Καμία υπηρεσία" + +msgid "No services/providers selected" +msgstr "Δεν έχουν επιλεγεί υπηρεσίες/πάροχοι" + +msgid "No standby" +msgstr "Χωρίς αναμονή" + +msgid "No suitable sat tuner found!" +msgstr "Δεν βρέθηκε κατάλληλο tuner!" + +msgid "No tags are set on these movies." +msgstr "Δεν έχουν οριστεί ετικέτες σε αυτές τις ταινίες." + +msgid "No timeout" +msgstr "Χωρίς όριο χρόνου" + +msgid "No to all" +msgstr "Όχι σε όλα" + +msgid "No transparency" +msgstr "Χωρίς διαφάνεια" + +msgid "No tuner is configured for use with a diseqc positioner!" +msgstr "Δεν υπάρχει ενεργοποιημένο tuner για χρήση με μοτέρ diseqc!" + +msgid "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Δεν υπάρχει ενεργοποιημένο tuner!\n" +"Ρυθμίστε το tuner πριν την ανίχνευση υπηρεσιών." + +msgid "No updates available" +msgstr "Δεν υπάρχουν διαθέσιμες ενημερώσεις." + +msgid "No updates available. Please try again later." +msgstr "Δεν υπάρχουν ενημερώσεις διαθέσιμες. Παρακαλώ δοκιμάστε αργότερα." + +msgid "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" +msgstr "" +"Δεν βρέθηκε έγκυρο PIN υπηρεσίας!\n" +"Θέλετε να αλλάξετε το PIN υπηρεσίας τώρα;\n" +"Εάν πείτε 'ΟΧΙ' εδώ η προστασία της υπηρεσίας θα μείνει απενεργοποιημένη!" + +msgid "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" +msgstr "" +"Δεν βρέθηκε έγκυρο PIN!\n" +"Θέλετε να ορίσετε τώρα ένα PIN;\n" +"Σε περίπτωση που πείτε 'ΟΧΙ' η προστασία των ρυθμίσεων θα μείνει απεργοποιήμενη!" + +msgid "No wireless networks found! Searching..." +msgstr "Δεν βρέθηκαν ασύρματα δίκτυα! Αναζήτηση..." + +msgid "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." +msgstr "" +"Δεν βρέθηκε ενεργή κάρτα δικτύου.\n" +"Παρακαλώ επιβεβαιώστε ότι έχει συνδεθεί καλώδιο δικτύου και έχει ρυθμιστεί σωστά το δίκτυο." + +msgid "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." +msgstr "" +"Δεν βρέθηκε ενεργή συσκευή ασύρματου δικτύου.\n" +"Παρακαλώ επιβεβαιώστε ότι έχει συνδεθεί συμβατή συσκευή WLAN και και έχει ρυθμιστεί σωστά το δίκτυο." + +msgid "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." +msgstr "" +"Δεν βρέθηκε ενεργή διεπαφή ασύρματου δικτύου.\n" +"Παρακαλώ επιβεβαιώστε ότι έχει συνδεθεί συμβατή συσκευή WLAN ή ενεργοποιήστε τη διεπαφή δικτύου." + +msgid "No, but restart from begin" +msgstr "Όχι, επανεκκίνηση από την αρχή." + +msgid "No, do nothing." +msgstr "Όχι, να μη γίνει τίποτα." + +msgid "No, just start my receiver" +msgstr "Όχι, απλά εκκίνηση του δέκτη" + +msgid "No, never" +msgstr "Όχι, ποτέ" + +msgid "None" +msgstr "Κανένα" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right) +msgid "Nonlinear" +msgstr "Μη γραμμικό" + +msgid "Normal mode" +msgstr "Κανονική λειτουργία" + +msgid "North" +msgstr "Βόρεια" + +msgid "Norwegian" +msgstr "Νορβηγικά" + +msgid "Not associated" +msgstr "Χωρίς συσχέτιση" + +msgid "Not configured" +msgstr "Μη ρυθμισμένο" + +#, python-format +msgid "Not enough disk space. Please free up some disk space and try again. (%d MB required, %d MB available)" +msgstr "Μη επαρκής χώρος δίσκου. Παρακαλώ ελευθερώστε χώρο και προσπαθήστε ξανά. (%d MB απαιτούνται, %d MB διαθέσιμα)" + +msgid "Nothing connected" +msgstr "Δεν έχει συνδεθεί τίποτα" + +msgid "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Τίποτα προς ανίχνευση!\n" +"Παρακαλώ ρυθμίστε το tuner πρώτα." + +msgctxt "now/next: 'now' event label" +msgid "Now" +msgstr "Τώρα" + +msgid "Now playing" +msgstr "Αναπαραγωγή τώρα" + +msgid "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." +msgstr "Τώρα, χρησιμοποιήστε τις ρυθμίσεις αντίθεσης για να μεγιστοποιήσετε τη φωτεινότητα του φόντου, αλλά βεβαιωθείτε ότι μπορείτε να διακρίνετε τη διαφορά ανάμεσα στις δύο φωτεινότερες σκιές. Εάν το κάνατε, πιέστε ΟΚ." + +msgid "OK" +msgstr "OK" + +msgid "OK, guide me through the upgrade process" +msgstr "ΟΚ, οδήγησε με στην διαδικασία αναβάθμισης" + +msgid "ONID" +msgstr "ONID" + +msgid "OSD name request" +msgstr "Απαίτηση ονόματος OSD" + +msgid "OSD settings" +msgstr "Ρυθμίσεις OSD" + +msgid "OSD transparency" +msgstr "Διαφάνεια OSD" + +msgid "Off" +msgstr "Κλειστό" + +msgid "Offline decode delay (ms)" +msgstr "Καθυστέρηση αποκωδικοποίησης εκτός σύνδεσης (ms)" + +msgid "Ok" +msgstr "Ok" + +msgid "On" +msgstr "Ανοικτό" + +msgid "On end of movie" +msgstr "Στο τέλος της ταινίας" + +msgid "On end of movie (as menu)" +msgstr "Στο τέλος της ταινίας (ως μενού)" + +msgid "One" +msgstr "Ένα" + +msgid "Only extensions." +msgstr "Μόνο επεκτάσεις." + +msgid "Only free scan" +msgstr "Μόνο τα ελεύθερα" + +msgid "Open service list" +msgstr "Άνοιγμα λίστας υπηρεσιών" + +msgid "Open the movie list" +msgstr "Επιστροφή στη λίστα ταινίων" + +msgid "Orbital position" +msgstr "Τροχιακή θέση" + +msgid "Original" +msgstr "Πρωτότυπο" + +msgid "Other" +msgstr "Άλλο" + +msgid "Output" +msgstr "Έξοδος" + +msgid "Overwrite configuration files during software upgrade?" +msgstr "Να αντικατασταθούν τα αρχεία ρυθμίσεων κατά την αναβάθμιση λογισμικού;" + +msgid "Overwrite configuration files?" +msgstr "Αντικατάσταση αρχείων ρυθμίσεων;" + +msgid "PAL" +msgstr "PAL" + +msgid "PCR PID" +msgstr "PCR PID" + +msgid "PIDs" +msgstr "PIDs" + +msgid "PIN code needed" +msgstr "Απαιτείται κωδικός PIN" + +msgid "PLP ID" +msgstr "PLP ID" + +msgid "PMT PID" +msgstr "PMT PID" + +msgid "Package list update" +msgstr "Ενημέρωση λίστας πακέτων" + +msgid "Packet management" +msgstr "Διαχείριση πακέτων" + +msgid "Packet manager" +msgstr "Διαχείριση πακέτων" + +#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term +msgid "Pan&scan" +msgstr "Πανοραμική οπτική & σάρωση" + +msgid "Parent directory" +msgstr "Γονικός φάκελος" + +msgid "Parental control" +msgstr "Γονικός έλεγχος" + +msgid "Parental control services editor" +msgstr "Επεξεργασία υπηρεσιών γονικού έλεγχου" + +msgid "Parental control setup" +msgstr "Παραμετροποίηση γονικού ελέγχου" + +msgid "Parental control type" +msgstr "Είδος γονικού ελέγχου" + +msgid "Password" +msgstr "Κωδικός" + +msgid "Pause" +msgstr "Παύση" + +msgid "Pause movie at end" +msgstr "Παύση στο τέλος της ταινίας" + +msgid "Pause playback" +msgstr "Παύση αναπαραγωγής" + +msgid "Pauze/Continue playback" +msgstr "" + +msgid "Percentage left" +msgstr "Ποσοστό αριστερά" + +msgid "Percentage right" +msgstr "Ποσοστό δεξιά" + +msgid "Permanently delete all recordings in the trash can?" +msgstr "Οριστική διαγραφή όλων των εγγραφών από τον κάδο;" + +msgid "Permanently remove all deleted items" +msgstr "Οριστική διαγραφή όλων των διεγραμμένων στοιχείων" + +msgid "Persian" +msgstr "Περσικά" + +msgid "Phone number" +msgstr "Τηλεφωνικός αριθμός" + +msgid "PiP setup" +msgstr "Ρύθμιση PiP" + +msgid "Picon" +msgstr "Εικονίδιο" + +msgid "Picon and service name" +msgstr "Εικονίδιο και όνομα υπηρεσίας" + +msgid "Picture player" +msgstr "Αναπαραγωγή εικόνων" + +#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term. +msgid "Pillarbox" +msgstr "Μπάρες εκατέρωθεν" + +msgid "Pilot" +msgstr "Πιλότος" + +msgid "Play" +msgstr "Αναπαραγωγή" + +msgid "Play DVD" +msgstr "Αναπαραγωγή DVD" + +msgid "Play audio in background" +msgstr "Αναπαραγωγή ήχου στο παρασκήνιο" + +msgid "Play audio-CD..." +msgstr "Αναπαραγωγή CD ήχου..." + +msgid "Play back media files" +msgstr "Αναπαραγωγή αρχείων πολυμέσων" + +msgid "Play entry" +msgstr "Αναπαραγωγή στοιχείου" + +msgid "Play from next mark or playlist entry" +msgstr "Αναπαραγωγή από επόμενο σημείο ή λίστα" + +msgid "Play from previous mark or playlist entry" +msgstr "Αναπαραγωγή από προηγούμενο σημείο ή λίστα" + +msgid "Play music..." +msgstr "Αναπαραγωγή μουσικής..." + +msgid "Play next" +msgstr "Αναπαραγωγή επόμενου" + +msgid "Play next (return to movie list)" +msgstr "Αναπαραγωγή επόμενου (επιστροφή στην λίστα)" + +msgid "Play next (return to previous service)" +msgstr "Αναπαραγωγή επόμενου (επιστροφή στην προηγούμενη υπηρεσία)" + +msgid "Play previous" +msgstr "Απαναραγωγή προγηγούμενου" + +msgid "Play recorded movies..." +msgstr "Αναπαραγωγή εγγραφών..." + +msgid "Please add titles to the compilation." +msgstr "Παρακαλώ προσθέστε τίτλους στη συλλογή." + +msgid "Please change recording endtime" +msgstr "Παρακαλώ αλλάξτε την ώρα τερματισμού" + +msgid "Please check your network settings!" +msgstr "Παρακαλώ ελέγξτε τις ρυθμίσεις δικτύου!" + +msgid "Please choose an extension..." +msgstr "Παρακαλώ επιλέξτε μία επέκταση..." + +msgid "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Παρακαλώ ρυθμίστε ή επιβεβαιώστε τους Nameservers συμπλρώνοντας τις απαιτούμενες τιμές.\n" +"Όταν είστε έτοιμοι, πιέστε ΟΚ για συνέχεια." + +msgid "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Παρακαλώ ρυθμίστε τη σύνδεση στο διαδίκτυο συμπληρώνοντας τις απαιτούμενες τιμές.\n" +"Όταν είστε έτοιμοι, πιέστε ΟΚ για συνέχεια." + +msgid "Please connect your receiver to the internet" +msgstr "Παρακαλώ συνδέστε τον δέκτη σας στο διαδύκτιο" + +msgid "Please do not change any values unless you know what you are doing!" +msgstr "Παρακαλώ μην αλλάζετε τιμές εάν δεν γνωρίζετε τι κάνετε!" + +msgid "Please enter a name for the new bouquet" +msgstr "Επέλεξε ένα όνομα για το νέο μπουκέτο" + +msgid "Please enter a name for the new marker" +msgstr "Επιλέξτε ένα όνομα για το νέο σημειωτή" + +msgid "Please enter a new filename" +msgstr "Παρακαλώ εισάγετε νέο όνομα αρχείου" + +msgid "Please enter filename (empty = use current date)" +msgstr "Παρακαλώ εισάγετε όνομα αρχείου (κενό = χρήση τρέχουσας ημερομηνίας)" + +msgid "Please enter name of the new directory" +msgstr "Παρακαλώ εισάγετε όνομα νέου φάκελου" + +msgid "Please enter new name:" +msgstr "Παρακαλώ εισάγετε νέο όνομα:" + +msgid "Please enter the correct pin code" +msgstr "Εισάγετε το σωστό PIN" + +msgid "Please enter the old PIN code" +msgstr "Εισάγετε το παλιό PIN" + +msgid "Please follow the instructions on the TV" +msgstr "Παρακαλώ ακολουθήστε τις οδηγίες στην οθόνη" + +msgid "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." +msgstr "Δεν υπάρχει πρόσβαση στο μέσο που επιλέχθηκε προηγουμένως. Θα χρησιμοποιηθεί ο αρχικός φάκελος." + +msgid "Please press OK to continue." +msgstr "Παρακαλώ πιέστε ΟΚ για συνέχεια." + +msgid "Please select a default EPG type..." +msgstr "Παρακαλώ επιλέξτε ένα προεπιλεγμένο τύπο EPG..." + +msgid "Please select a playlist to delete..." +msgstr "Παρακαλώ επιλέξτε λίστα αναπαραγωγής για διαγραφή..." + +msgid "Please select a playlist..." +msgstr "Παρακαλώ επιλέξτε λίστα αναπαραγωγής..." + +msgid "Please select a sub service..." +msgstr "Επιλέξτε μια υπό-υπηρεσία" + +msgid "Please select a subservice to record..." +msgstr "Επέλεξε μια υπό-υπηρεσία για εγγραφή..." + +msgid "Please select a subservice..." +msgstr "Επιλέξτε μια υπό-υπηρεσία" + +msgid "Please select an NFI file and press green key to flash!" +msgstr "Παρακαλώ επιλέξτε αρχείο NFI και πιέστε το πράσινο κουμπί για εγκατάσταση!" + +msgid "Please select medium to be scanned" +msgstr "Παρακαλώ επιλέξτε μέσο για ανίχνευση" + +msgid "Please select medium to use as backup location" +msgstr "Παρακαλώ επιλέξτε μέσο που θα χρησιμοποιηθεί ως προορισμός των αντιγράφων ασφαλείας" + +msgid "Please select tag to filter..." +msgstr "Παρακαλώ επιλέξτε ετικέτα προς φιλτράρισμα..." + +msgid "Please select the movie path..." +msgstr "Παρακαλώ επιλέξτε διαδρομή ταινιών..." + +msgid "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Παρακαλώ επιλέξτε τη διεπαφή δικτύου που θέλετε να χρησιμοποιήσετε για το διαδίκτυο.\n" +"\n" +"Πιέστε ΟΚ για συνέχεια." + +msgid "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Παρακαλώ επιλέξτε το ασύρματο δίκτυο στο οποίο θα συνδεθείτε.\n" +"\n" +"Πιέστε ΟΚ για συνέχεια." + +msgid "Please set up tuner A" +msgstr "Παρακαλώ ρυθμίστε το tuner A" + +msgid "Please set up tuner B" +msgstr "Παρακαλώ ρυθμίστε το tuner B" + +msgid "Please set up tuner C" +msgstr "Παρακαλώ ρυθμίστε το tuner C" + +msgid "Please set up tuner D" +msgstr "Παρακαλώ ρυθμίστε το tuner D" + +msgid "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." +msgstr "" +"Χρησιμοποίηστε τα βελάκια για μετακίνηση του PiP παραθύρου.\n" +"Για αλλαγή μεγέθους πιέστε τα πλήκτρα Bouquet +/-.\n" +"Πιέστε ΟΚ για επιστροφή σε κατάσταση TV ή EXIT για ακύρωση της μετακίνησης." + +msgid "Please use the UP and DOWN keys to select your language. Afterwards press the OK button." +msgstr "Χρησιμοποιήστε τα πλήκτρα ΠΑΝΩ και ΚΑΤΩ για επιλογή γλώσσας. Μετά πιέστε το ΟΚ." + +msgid "Please wait" +msgstr "Παρακαλώ περιμένετε" + +msgid "Please wait (downloading channel list)" +msgstr "Παρακαλώ περιμένετε (λήψη λίστας καναλιών)" + +msgid "Please wait (downloading softcam)" +msgstr "Παρακαλώ περιμένετε (λήψη softcam)" + +msgid "Please wait (updating packages)" +msgstr "Παρακαλώ περιμένετε (αναβάθμιση πακέτων)" + +msgid "Please wait for activation of your network configuration..." +msgstr "Παρακαλώ περιμένετε, ενεργοποίηση ρύθμισης δικτύου..." + +msgid "Please wait while scanning is in progress..." +msgstr "Παρακαλώ περιμένετε καθώς εκτελείται η ανίχνευση..." + +msgid "Please wait while we configure your network..." +msgstr "Παρακαλώ περιμένετε καθώς το δίκτυο ρυθμίζεται..." + +msgid "Please wait while we prepare your network interfaces..." +msgstr "Παρακαλώ περιμένετε, προετοιμασία διεπαφών δικτύου..." + +msgid "Please wait while we test your network..." +msgstr "Παρακαλώ περιμένετε, έλεγχος δικτύου..." + +msgid "Please wait while your network is restarting..." +msgstr "Παρακαλώ περιμένετε, επανεκκίνηση δικτύου..." + +msgid "Please wait..." +msgstr "Παρακαλώ περιμένετε..." + +msgid "Please wait... Loading list..." +msgstr "Παρακαλώ περιμένετε … Φορτώνεται η λίστα..." + +msgid "Plugin browser" +msgstr "Πλοηγός προσθέτων" + +msgid "Plugin manager activity information" +msgstr "Πληροφορίες ενεργειών διαχειριστή προσθέτων" + +msgid "Plugin manager help" +msgstr "Βοήθεια διαχειριστή προσθέτων" + +msgid "Plugins" +msgstr "Πρόσθετα" + +msgid "Polarisation" +msgstr "Πόλωση" + +msgid "Polarisation:" +msgstr "Πόλωση:" + +msgid "Polarization" +msgstr "Πόλωση" + +msgid "Polish" +msgstr "Πολωνικά" + +msgid "Port A" +msgstr "Πόρτα A" + +msgid "Port B" +msgstr "Πόρτα B" + +msgid "Port C" +msgstr "Πόρτα C" + +msgid "Port D" +msgstr "Πόρτα D" + +msgid "Portuguese" +msgstr "Πορτογαλικά" + +msgid "Position of completed timers in timerlist" +msgstr "Θέση ολοκληρωμένων χρονοδιακοπτών στη λίστα" + +msgid "Position stored at index" +msgstr "Αποθήκευση θέσης στο" + +msgid "Positioner" +msgstr "Μοτέρ" + +msgid "Positioner (selecting satellites)" +msgstr "Μοτέρ (επιλογή δορυφόρων)" + +msgid "Positioner Setup" +msgstr "Ρύθμιση Μοτέρ" + +msgid "Positioner setup" +msgstr "Ρύθμιση μοτέρ" + +msgid "Power threshold in mA" +msgstr "Όριο ρεύματος σε mA" + +msgid "Predefined transponder" +msgstr "Προρυθμισμένος αναμεταδότης" + +msgid "Prefer AC3 track" +msgstr "Να προτιμάται ο ήχος AC3" + +msgid "Prefer AC3+ track" +msgstr "Να προτιμάται ο ήχος AC3+" + +msgid "Prefer audio track stored by service" +msgstr "Να προτιμάται ο ήχος που έχει αποθηκευτεί από την υπηρεσία" + +msgid "Prefer graphical DVB subtitles" +msgstr "Να προτιμώνται γραφικοί υπότιλοι DVB" + +msgid "Prefer subtitles for hearing impaired" +msgstr "Να προτιμώνται υπότιτλοι για άτομα με προβλήματα ακοής" + +msgid "Prefer subtitles stored by service" +msgstr "Να προτιμώνται υπότιτλοι αποθηκευμένοι από την υπηρεσία" + +msgid "Preferred tuner" +msgstr "Προτιμώμενο tuner" + +msgid "Preferred tuner for recordings" +msgstr "Προτιμώμενο tuner για εγγραφές" + +msgid "Prepare another USB stick for image flashing" +msgstr "Προετοιμάστε άλλο usb στικ για εγκατάσταση λογισμικού." + +msgid "Preparing... Please wait" +msgstr "Παρακαλώ περιμένετε, προετοιμασία…" + +msgid "Press '0' to toggle PiP mode" +msgstr "Πιέστε '0' για εναλλαγή λειτουργίας PiP" + +msgid "Press INFO on your remote control for additional information." +msgstr "Πιέστε INFO στο τηλεχειριστήριο για πρόσθετες πληροφορίες." + +msgid "Press MENU on your remote control for additional options." +msgstr "Πιέστε MENU στο τηλεχειριστήριο για πρόσθετες επιλογές." + +msgid "Press OK on your remote control to continue." +msgstr "Πιέστε ΟΚ για συνέχεια." + +msgid "Press OK to activate the selected skin." +msgstr "Πιέστε ΟΚ για ενεργοποίηση του επιλεγμένου θέματος." + +msgid "Press OK to activate the settings." +msgstr "Πιέστε ΟΚ για να ενεργοποιηθούν οι ρυθμίσεις." + +msgid "Press OK to edit the settings." +msgstr "Πιέστε ΟΚ για επεξεργασία των ρυθμίσεων." + +#, python-format +msgid "Press OK to get further details for %s" +msgstr "Πιέστε ΟΚ για λεπτομέρειες σχετικά με το %s" + +msgid "Press OK to scan" +msgstr "Πιέστε OK για ανίχνευση" + +msgid "Press OK to select a provider." +msgstr "Πιέστε ΟΚ για επιλογή παρόχου" + +msgid "Press OK to select satellites" +msgstr "Πιέστε ΟΚ για επιλογή δορυφόρων" + +msgid "Press OK to select/deselect a CAId." +msgstr "Πιέστε ΟΚ για επιλογή/αποεπιλογή CAId." + +msgid "Press OK to start the scan" +msgstr "Πιέστε OK για να ξεκινήσει η ανίχνευση" + +msgid "Press OK to toggle the selection" +msgstr "Πιέστε ΟΚ για εναλλαγή της επιλογής" + +msgid "Press OK to toggle the selection." +msgstr "Πιέστε ΟΚ για εναλλαγή της επιλογής." + +msgid "Press yellow to set this interface as default interface." +msgstr "Πιέστε το ΚΙΤΡΙΝΟ για να τεθεί ως προεπιλεγμένη διεπαφή." + +msgctxt "button label, 'previous screen'" +msgid "Prev" +msgstr "Προηγ." + +msgid "Preview" +msgstr "Προεπισκόπηση" + +msgid "Preview menu" +msgstr "Μενού προεπισκόπησης" + +msgid "Preview selected channel" +msgstr "Προεπισκόπηση επιλεγμένου καναλιού" + +msgid "Primary DNS" +msgstr "Πρωτεύον DNS" + +msgid "Priority" +msgstr "Προτεραιότητα" + +msgid "Process" +msgstr "Επεξεργασία" + +msgid "Progress" +msgstr "Πρόοδος" + +msgid "Progress bar left" +msgstr "Μπάρα προόδου αριστερά" + +msgid "Progress bar right" +msgstr "Μπάρα προόδου δεξιά" + +msgid "Properties of current title" +msgstr "Ιδιότητες τρέχοντα τίτλου" + +msgid "Protect services" +msgstr "Προστασία υπηρεσιών" + +msgid "Protect setup" +msgstr "Προστασία ρυθμίσεων" + +msgid "Provider" +msgstr "Πάροχος" + +msgid "Provider to scan" +msgstr "Πάροχος προς ανίχνευση" + +msgid "Providers" +msgstr "Πάροχοι" + +msgid "Put TV in standby" +msgstr "Θέστε την TV σε αναμονή" + +msgid "Put receiver in standby" +msgstr "Θέστε το δέκτη σε αναμονή" + +msgid "Python frontend for /tmp/mmi.socket" +msgstr "Python του tuner για το /tmp/mmi.socket" + +msgid "Quick" +msgstr "Γρήγορο" + +msgid "Quick zap" +msgstr "Γρήγορο ζάπινγκ" + +msgid "RF output" +msgstr "Έξοδος RF" + +msgid "RGB" +msgstr "RGB" + +msgid "Radio" +msgstr "Ραδιόφωνο" + +msgid "Ram disk" +msgstr "Δίσκος RAM" + +msgid "Random" +msgstr "Τυχαίο" + +#, python-format +msgid "Rating defined by broadcaster - %d" +msgstr "Βαθμολογία καθορισμένη από τον πάροχο - %d" + +msgid "Rating undefined" +msgstr "Μη καθορισμένη βαθμολογία" + +msgid "Really close without saving settings?" +msgstr "Έξοδος χωρίς αποθήκευση ρυθμίσεων;" + +msgid "Really delete done timers?" +msgstr "Διαγραφή όλων των ολοκληρωμένων χρονοδιακοπτών;" + +msgid "Really exit the subservices quickzap?" +msgstr "Έξοδος από γρήγορο ζάπινγκ των υπό-υπηρεσιών?" + +msgid "Really reboot now?" +msgstr "Επανεκκίνηση τώρα;" + +msgid "Really restart now?" +msgstr "Επανεκκίνηση τώρα;" + +msgid "Really shutdown now?" +msgstr "Τερματισμός τώρα;" + +msgid "Really upgrade the frontprocessor and reboot now?" +msgstr "Να γίνει σίγουρα ενημέρωση του frontprocessor και επανεκκίνηση;" + +msgid "Really upgrade your settop box and reboot now?" +msgstr "Να γίνει σίγουρα ενημέρωση του δέκτη και επανεκκίνηση;" + +msgid "Reboot" +msgstr "Επανεκκίνηση" + +msgid "Rec" +msgstr "Εγγρ." + +msgid "Reception settings" +msgstr "Ρυθμίσεις λήψης" + +msgid "Record" +msgstr "Εγγραφή" + +#, python-format +msgid "Record time limited due to conflicting timer %s" +msgstr "Περιορισμένος χρόνος εγγραφής λόγω διένεξης χρονοδιακόπτη %s" + +msgid "Recorded files..." +msgstr "Εγγραφές..." + +msgid "Recording" +msgstr "Εγγραφή..." + +msgid "Recording in progress" +msgstr "Εγγραφή σε εξέλιξη" + +msgid "Recording paths" +msgstr "Διαδρομές εγγραφών" + +msgid "Recording type" +msgstr "Τύπος εγγραφής" + +msgid "Recording(s) are in progress or coming up in few seconds!" +msgstr "Εκτελούνται εγγραφές ή θα ξεκινήσουν σε λίγο!" + +msgid "Recordings" +msgstr "Εγγραφές" + +msgid "Recordings always have priority" +msgstr "Οι εγγραφές έχουν πάντα προτεραιότητα" + +msgid "Red button..." +msgstr "Κόκκινο κουμπί..." + +msgid "Reenter new PIN" +msgstr "Εισαγωγή PIN ξανά" + +msgid "Refresh rate" +msgstr "Συχνότητα ανανέωσης" + +msgid "Refresh rate selection." +msgstr "Επιλογή συχνότητας ανανέωσης." + +msgid "Regard deep standby as standby" +msgstr "Να θεωρείται ο τερματισμός ως αναμονή" + +msgid "Relative" +msgstr "Σχετικό" + +msgid "Reload" +msgstr "Ανανέωση" + +msgid "Reload black-/white lists" +msgstr "Επαναφόρτωση μαύρων/λευκών λιστών" + +msgid "Reloading bouquets and services..." +msgstr "Επαναφόρτωση μπουκέτων και υπηρεσιών..." + +msgid "Remember last service in PiP" +msgstr "Υπενθύμιση τελευταίας υπηρεσίας στο PiP" + +msgid "Remember service PIN" +msgstr "Αποθήκευση PIN υπηρεσίας" + +msgid "Remember these settings for each folder" +msgstr "Αποθήκευση αυτών των ρυθμίσεων για κάθε φάκελο" + +msgid "Reminder, you have chosen to save timeshift file." +msgstr "Υπενθύμιση, επιλέξατε να αποθηκεύεται το αρχείο χρονομετατόπισης." + +msgid "Remote control type" +msgstr "Τύπος τηλεχειριστηρίου" + +msgid "Removal has completed." +msgstr "Η αφαίρεση ολοκληρώθηκε." + +msgid "Remove" +msgstr "Διαγραφή" + +msgid "Remove a mark" +msgstr "Διαγραφή σημειωτή" + +msgid "Remove a nameserver entry" +msgstr "Διαγραφή nameserver" + +msgid "Remove bookmark" +msgstr "Διαγραφή σελιδοδείκτη" + +msgid "Remove completed timers after (days)" +msgstr "Διαγραφή ολοκληρωμένων χρονοδιακοπτών μετά από (μέρες)" + +msgid "Remove currently selected title" +msgstr "Διαγραφή επιλεγμένου τίτλου" + +msgid "Remove items from trash can after (days)" +msgstr "Διαγραφή αντικειμένων από το καλάθι αχρήστων σε (μέρες)" + +msgid "Remove plugins" +msgstr "Απεγκατάσταση προσθέτων" + +msgid "Remove title" +msgstr "Διαγραφή τίτλου" + +msgid "Removing" +msgstr "Διαγραφή" + +#, python-format +msgid "Removing directory %s failed. (Maybe not empty.)" +msgstr "Η διαγραφή του φακέλου %s απέτυχε. (Ίσως δεν είναι κενός)." + +msgid "Removing partition table" +msgstr "Αφαίρεση πίνακα διαμερισμάτων" + +msgid "Rename" +msgstr "Μετονομασία" + +msgid "Repeat" +msgstr "Επανάληψη" + +msgid "Repeat type" +msgstr "Τύπος επανάληψης" + +msgid "Repeating event currently recording... What do you want to do?" +msgstr "Επανάληψη προγράμματος που εγγράφεται... Τι να συμβεί;" + +msgid "Repeats" +msgstr "Επαναλήψεις" + +msgid "Require authentication for http streams" +msgstr "Απαίτηση πιστοποίησης για ροές http" + +msgid "Required medium type:" +msgstr "Απαιτούμενος τύπος μέσου:" + +msgid "Rereading partition table" +msgstr "Επανάγνωση πίνακα κατατμήσεων" + +msgid "Reserved" +msgstr "Ρεζερβέ" + +msgid "Reset" +msgstr "Μηδενισμός" + +msgid "Reset and renumerate title names" +msgstr "Μηδενισμός και επαναρίθμηση των τίτλων" + +msgid "Reset playback position" +msgstr "Επαναφορά σημείου αναπαραγωγής" + +msgid "Reset video enhancement settings to system defaults?" +msgstr "Επαναφορά ρυθμίσεων βελτίωσης εικόνας στις προρυθμισμένες τιμές;" + +msgid "Reset video enhancement settings to your last configuration?" +msgstr "Επαναφορά ρυθμίσεων βελτίωσης εικόνας στις τελευταίες ρυθμίσεις σας;" + +msgid "Resolution" +msgstr "Ανάλυση" + +msgid "Restart" +msgstr "Επανεκκίνηση" + +msgid "Restart GUI now?" +msgstr "Επανεκκίνηση του enigma2 τώρα;" + +msgid "Restart enigma" +msgstr "Επανεκκίνηση enigma" + +msgid "Restart network" +msgstr "Eπανεκκίνηση δικτύου" + +msgid "Restart test" +msgstr "Eπανεκκίνηση ελέγχου" + +msgid "Restart your network connection and interfaces.\n" +msgstr "Επανεκκίνηση σύνδεσης δικτύου και διεπαφών.\n" + +msgid "Restore" +msgstr "Επαναφορά" + +msgid "Restore backups" +msgstr "Επαναφορά αντιγράφων ασφαλείας" + +msgid "Restore is running..." +msgstr "Επαναφορά σε εκτέλεση..." + +msgid "Restore system settings" +msgstr "Επαναφορά ρυθμίσεων συστήματος" + +msgid "Restoring..." +msgstr "Επαναφορά..." + +msgid "Resume from last position" +msgstr "Συνέχιση απο τελευταίο σημείο" + +#, python-format +msgid "Resume position at %s" +msgstr "Συνέχιση από το %s" + +#. TRANSLATORS: The string "Resuming playback" flashes for a moment +#. TRANSLATORS: at the start of a movie, when the user has selected +#. TRANSLATORS: "Resume from last position" as start behavior. +#. TRANSLATORS: The purpose is to notify the user that the movie starts +#. TRANSLATORS: in the middle somewhere and not from the beginning. +#. TRANSLATORS: (Some translators seem to have interpreted it as a +#. TRANSLATORS: question or a choice, but it is a statement.) +msgid "Resuming playback" +msgstr "Επανασυνέχιση αναπαραγωγής" + +msgid "Return to movie list" +msgstr "Επιστροφή στη λίστα ταινίων" + +msgid "Return to previous service" +msgstr "Επιστροφή στην προηγούμενη υπηρεσία" + +msgid "Reverse bouquet buttons" +msgstr "Αντιμετάθεση πλήκτρων μπουκέτου" + +msgid "Reverse list" +msgstr "Αντιστροφή λίστας" + +msgid "Rewind speeds" +msgstr "Ταχύτητα κίνησης πίσω " + +msgid "Rewrap teletext subtitles" +msgstr "Αναδίπλωση υποτίτλων τηλεκειμένου" + +msgid "Right" +msgstr "Δεξιά" + +msgid "Right from servicename" +msgstr "Δεξιά του ονόματος υπηρεσίας" + +msgid "Roll-off" +msgstr "Roll-off" + +msgid "Romanian" +msgstr "Ρουμανικά" + +msgid "Root directory" +msgstr "Αρχικός φάκελος" + +msgid "Rotor step position:" +msgstr "Θέση βήματος του μοτέρ:" + +msgid "Rotor turning speed" +msgstr "Ταχύτητα περιστροφής του μοτέρ" + +msgid "Round start time on" +msgstr "Στρογγυλοποίηση της ώρας έναρξης σε" + +msgid "Russian" +msgstr "Ρωσικά" + +msgid "S-Video" +msgstr "S-Video" + +msgid "SID" +msgstr "SID" + +msgid "SINGLE LAYER DVD" +msgstr "DVD ΜΟΝΗΣ ΣΤΡΩΣΗΣ" + +msgid "SNR" +msgstr "SNR" + +msgid "SNR:" +msgstr "SNR:" + +msgid "SSID:" +msgstr "SSID:" + +msgid "Same resolution as skin" +msgstr "Ίδια ανάλυση με το θέμα" + +msgid "Sat" +msgstr "Σαβ" + +msgid "Satellite" +msgstr "Δορυφόρος" + +msgid "Satellite dish setup" +msgstr "Ρύθμιση κατόπτρου" + +msgid "Satellite equipment" +msgstr "Δορυφορικός εξοπλισμός" + +msgid "Satellite equipment setup" +msgstr "Ρύθμιση δορυφορικού εξοπλισμού" + +msgid "Satellite longitude:" +msgstr "Γεωγραφικό μήκος δορυφόρου:" + +msgid "Satellites" +msgstr "Δορυφόροι" + +msgid "Satfinder" +msgstr "Έλεγχος σήματος (Satfinder)" + +msgid "Sats" +msgstr "Δορυφόροι" + +msgid "Saturation" +msgstr "Κορεσμός" + +msgid "Saturday" +msgstr "Σάββατο" + +msgid "Save" +msgstr "Αποθήκευση" + +msgid "Save playlist" +msgstr "Αποθήκευση λίστας αναπαραγωγής" + +msgid "Save timeshift file" +msgstr "Αποθήκευση αρχείου χρονομετατόπισης" + +msgid "Save timeshift file in movie directory" +msgstr "Αποθήκευση αρχείου χρονομετατόπισης στο φάκελο ταινιών" + +msgid "Scaler sharpness" +msgstr "Οξύτητα κλιμάκωσης" + +msgid "Scaling mode" +msgstr "Τύπος κλιμάκωσης" + +msgid "Scan" +msgstr "Ανίχνευση" + +msgid "Scan " +msgstr "Ανίχνευση " + +#. TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' +#, python-format +msgid "Scan %s" +msgstr "Ανίχνευση %s" + +#. TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' +#, python-format +msgid "Scan %s band" +msgstr "Ανίχνευση μπάντας %s" + +msgid "Scan additional SR" +msgstr "Ανίχνευση πρόσθετου SR" + +msgid "Scan files..." +msgstr "Αναζήτηση αρχείων..." + +msgid "Scan wireless networks" +msgstr "Ανίχνευση ασύρματων δικτύων" + +msgid "Scan your network for wireless access points and connect to them using your selected wireless device.\n" +msgstr "Ανίχνευση του δικτύου για ασύρματα σημεία σύνδεσης και σύνδεση σε αυτά με την επιλεγμένη ασύρματη συσκευή.\n" + +#, python-format +msgid "Scanning %s..." +msgstr "Ανίχνευση %s..." + +#. TRANSLATORS: The stb is performing a channel scan, progress percentage is printed in '%d' (and '%%' will show a single '%' symbol) +#, python-format +msgid "Scanning - %d%% completed" +msgid_plural "Scanning - %d%% completed" +msgstr[0] "Ανίχνευση - ολοκληρώθηκε το %d%% " +msgstr[1] "Ανίχνευση - ολοκληρώθηκε το %d%% " + +#, python-format +msgid "Scanning completed, %d channel found" +msgid_plural "Scanning completed, %d channels found" +msgstr[0] "Η ανίχνευση ολοκληρώθηκε, βρέθηκε %d κανάλι" +msgstr[1] "Η ανίχνευση ολοκληρώθηκε, βρέθηκαν %d κανάλια" + +msgid "Scanning failed!" +msgstr "Η ανίχνευση απέτυχε!" + +msgid "Scanning..." +msgstr "Ανίχνευση..." + +msgid "Scans default lamedbs sorted by satellite with a connected dish positioner" +msgstr "Εκτελεί σάρωση των αρχικών βάσεων δεδομένων ταξινομημένων κατά δορυφόρο με συνδεδεμένο μοτέρ" + +msgid "Search east" +msgstr "Αναζήτηση ανατολικά" + +msgid "Search west" +msgstr "Αναζήτηση δυτικά" + +msgid "Searching" +msgstr "Αναζήτηση" + +msgid "Searching east ..." +msgstr "Αναζήτηση ανατολικά ..." + +msgid "Searching for available updates. Please wait..." +msgstr "Αναζήτηση για διαθέσιμες ενnμερώσεις. Παρακαλώ περιμένετε..." + +msgid "Searching for new installed or removed packages. Please wait..." +msgstr "Αναζήτηση για νέα εγκατεστημένα ή διεγραμμένα πακέτα. Παρακαλώ περιμένετε..." + +msgid "Searching west ..." +msgstr "Αναζήτηση δυτικά ..." + +msgid "Second cable of motorized LNB" +msgstr "Δεύτερο καλώδιο από LNB σε μοτέρ" + +msgid "Secondary DNS" +msgstr "Δευτερεύον DNS" + +msgid "Seek" +msgstr "Αναζήτηση" + +msgid "Seek backward" +msgstr "Μεταπήδηση προς τα πίσω" + +msgid "Seek backward (enter time)" +msgstr "Μεταπήδηση πίσω (σε χρόνο)" + +msgid "Seek forward" +msgstr "Μεταπήδηση εμπρός" + +msgid "Seek forward (enter time)" +msgstr "Μεταπήδηση εμπρός (σε χρόνο)" + +msgid "Select" +msgstr "Επιλογή" + +msgid "Select CAId" +msgstr "Επιλογή CAId" + +msgid "Select HDD" +msgstr "Επιλογή HDD" + +msgid "Select a bouquet" +msgstr "Επιλογή μπουκέτου" + +msgid "Select a movie" +msgstr "Επιλογή ταινίας" + +msgid "Select a network adapter" +msgstr "Επιλογή προσαρμογέα δικτύου" + +msgid "Select a skin" +msgstr "Επιλογή θέματος" + +msgid "Select a tuner" +msgstr "Επιλογή tuner" + +msgid "Select a wireless network" +msgstr "Επιλογή ασύρματου δίκτυου" + +msgid "Select action" +msgstr "Επιλογή ενέργειας" + +#, python-format +msgid "Select action for timer %s:" +msgstr "Επιλογή ενέργειας του χρονοδιακόπτη %s:" + +msgid "Select all" +msgstr "Επιλογή όλων" + +msgid "Select an image to be downloaded" +msgstr "Επιλογή λογισμικού για λήψη" + +msgid "Select audio track" +msgstr "Επιλογή καναλιού ήχου" + +msgid "Select backup files" +msgstr "Επιλογή αρχείων αντιγράφου ασφαλείας" + +msgid "Select backup location" +msgstr "Επιλογή θέσης αντιγράφου ασφαλείας" + +msgid "Select channel to record from" +msgstr "Επιλογή καναλιού προς εγγραφή" + +msgid "Select copy destination for:" +msgstr "Επιλογή προορισμού αντιγραφής για το:" + +msgid "Select default EPG type..." +msgstr "Επιλογή προεπιλεγμένου τύπου EPG..." + +msgid "Select desired image from feed list" +msgstr "Επιλέξτε το επιθυμητό λογισμικό από τη λίστα" + +msgid "Select destination for:" +msgstr "Επιλογή προορισμού για το:" + +msgid "Select files for backup." +msgstr "Επιλογή αρχείων για αντίγραφα ασφαλείας." + +msgid "Select files/folders to backup" +msgstr "Επιλογή αρχείων/φακέλων για αντίγραφα ασφαλείας" + +msgid "Select input device" +msgstr "Επιλογή συσκευής εισόδου" + +msgid "Select input device." +msgstr "Επιλογή συσκευής εισόδου." + +msgid "Select interface" +msgstr "Επιλογή διεπαφής" + +msgid "Select location" +msgstr "Επιλογή τοποθεσίας" + +msgid "Select movie" +msgstr "Επιλογή ταινίας" + +msgid "Select provider to add..." +msgstr "Επιλογή παρόχου για προσθήκη..." + +msgid "Select refresh rate" +msgstr "Επιλογή ρυθμού ανανέωσης" + +msgid "Select satellites" +msgstr "Επιλογή δορυφόρων" + +msgid "Select service to add..." +msgstr "Επιλογή υπηρεσίας για προσθήκη..." + +msgid "Select sort method:" +msgstr "Επιλογή τρόπου ταξινόμησης:" + +msgid "Select target folder" +msgstr "Επιλογή φάκελου προορισμού" + +msgid "Select the movie path" +msgstr "Επιλογή διαδρομής ταινίας" + +msgid "Select upgrade source" +msgstr "Επιλογή πηγής αναβαθμίσεων" + +msgid "Select upgrade source to edit." +msgstr "Επιλογή πηγής αναβάθμισης για επεξεργασία." + +msgid "Select video input with up/down buttons" +msgstr "Επιλογή εισόδου εικόνας με τα πλήκτρα πάνω/κάτω" + +msgid "Select video mode" +msgstr "Επιλογή λειτουργίας εικόνας" + +msgid "Select wireless network" +msgstr "Επιλογή ασύρματου δικτύου" + +msgid "Select your provider, and press OK to start the scan" +msgstr "Επιλέξτε πάροχο, και πιέστε ΟΚ για να ξεκινήσει η ανίχνευση" + +msgid "Selecting satellites 1 (USALS)" +msgstr "Επιλογή δορυφόρων 1 (USALS)" + +msgid "Selecting satellites 2 (USALS)" +msgstr "Επιλογή δορυφόρων 2 (USALS)" + +msgid "Send DiSEqC only on satellite change" +msgstr "Αποστολή DiSEqC μόνο σε αλλαγή δορυφόρου" + +msgid "Separate titles with a main menu" +msgstr "Διαχωρισμός τίτλων με κεντρικό μενού" + +msgid "Sequence repeat" +msgstr "Επανάληψη διαδοχής" + +msgid "Serbian" +msgstr "Σερβικά" + +msgid "Service" +msgstr "Υπηρεσία" + +msgid "Service has been added to the favourites." +msgstr "Η υπηρεσία προστέθηκε στα αγαπημένα." + +msgid "Service has been added to the selected bouquet." +msgstr "Η υπηρεσία προστέθηκε στo επιλεγμένο μπουκέτο" + +msgid "Service info" +msgstr "Πληροφορίες υπηρεσίας" + +msgid "" +"Service invalid!\n" +"(Timeout reading PMT)" +msgstr "" +"Μη έγκυρη υπηρεσία!\n" +"(Υπέρβαση χρόνου ανάγνωσης του PMT)" + +msgid "Service name" +msgstr "Όνομα υπηρεσίας" + +msgid "" +"Service not found!\n" +"(SID not found in PAT)" +msgstr "" +"Η υπηρεσία δεν βρέθηκε!\n" +"(το SID δεν βρέθηκε στο PAT)" + +msgid "Service reference" +msgstr "Αναφορά υπηρεσίας" + +msgid "Service scan" +msgstr "Ανίχνευση υπηρεσιών" + +msgid "Service searching" +msgstr "Αναζήτηση υπηρεσιών" + +msgid "Service title mode" +msgstr "Λειτουργία τίτλου υπηρεσίας" + +msgid "" +"Service unavailable!\n" +"Check tuner configuration!" +msgstr "" +"Υπηρεσία μη διαθέσιμη!\n" +"Ελέγξτε τις ρυθμίσεις του tuner!" + +msgid "Services" +msgstr "Υπηρεσίες" + +msgid "Set default" +msgstr "Ορισμός προεπιλογής" + +msgid "Set end time" +msgstr "Ρύθμιση χρόνου τερματισμού" + +msgid "Set fixed" +msgstr "Σταθερή ρύθμιση" + +msgid "Set fps for external subtitles" +msgstr "Ορισμός fps για τους εξωτερικούς υπότιτλους" + +msgid "Set interface as default Interface" +msgstr "Ορισμός διεπαφής ως προεπιλεγμένης" + +msgid "Set limits" +msgstr "Καθορισμός ορίων" + +msgid "Set the type of the progress indication in the channel selection screen." +msgstr "Ρύθμιση τύπου εμφάνισης προόδου στη λίστα καναλιών." + +msgid "Set time window to 1 hour" +msgstr "Ρύθμιση χρονικού παραθύρου έως 1 ώρα" + +msgid "Set time window to 2 hours" +msgstr "Ρύθμιση χρονικού παραθύρου έως 2 ώρες" + +msgid "Set time window to 3 hours" +msgstr "Ρύθμιση χρονικού παραθύρου έως 3 ώρες" + +msgid "Set time window to 4 hours" +msgstr "Ρύθμιση χρονικού παραθύρου έως 4 ώρες" + +msgid "Set time window to 5 hours" +msgstr "Ρύθμιση χρονικού παραθύρου έως 5 ώρες" + +msgid "Set time window to 6 hours" +msgstr "Ορισμός χρόνου παραθύρου σε 6 ώρες" + +msgid "Set voltage and 22KHz" +msgstr "Ρύθμιση τάσης και 22KHz" + +msgid "Settings" +msgstr "Ρυθμίσεις" + +msgid "Setup" +msgstr "Εγκατάσταση" + +msgid "Setup menu" +msgstr "Μενού εγκατάστασης" + +msgid "Setup mode" +msgstr "Λειτουργία εγκατάστασης" + +msgid "Setup your positioner" +msgstr "Εγκατάσταση μοτέρ" + +msgid "Setup your satellite equipment" +msgstr "Εγκατάσταση δορυφορικού εξοπλισμού" + +#, python-format +msgid "Shall the USB stick wizard proceed and program the image file %s into flash memory?" +msgstr "Να προχωρήσει ο οδηγός μέσω USB στικ και να εγκαταστήσει το λογισμικό %s στη μνήμη flash;" + +msgid "Sharpness" +msgstr "Οξύτητα" + +msgid "Short filenames" +msgstr "Σύντομα ονόματα" + +msgid "Show EIT now/next in infobar" +msgstr "Εμφάνιση ΕΙΤ τρέχον/επόμενο στη μπάρα πληροφοριών" + +msgid "Show EPG for current channel..." +msgstr "Εμφάνιση μπάρας πληροφοριών σε αλλαγή προγράμματος" + +msgid "Show EPG..." +msgstr "Εμφάνιση EPG..." + +msgid "Show Games show" +msgstr "Εμφάνιση τηλεπαιχνιδιού" + +msgid "Show SNR percentage instead of dB value" +msgstr "Εμφάνιση τιμής SNR σε ποσοστό αντί για dB" + +msgid "Show VCR scart on main menu" +msgstr "Εμφάνιση VCR scart στο κύριο μενού" + +msgid "Show WLAN status" +msgstr "Εμφάνιση κατάστασης ασύρματου δικτύου" + +msgid "Show animation while busy" +msgstr "Εμφάνιση κινούμενου σχεδίου όταν είναι απασχολημένο" + +msgid "Show background in radio mode" +msgstr "Εμφάνιση φόντου στη λειτουργία ραδιοφώνου" + +msgid "Show bouquet selection menu" +msgstr "Εμφάνιση του μενού επιλογής μπουκέτου" + +msgid "Show busy indicator when the system is busy." +msgstr "Εμφάνιση ένδειξης απασχολημένου όταν το σύστημα είναι απασχολημένο." + +msgid "Show channel numbers in channel selection" +msgstr "Εμφάνιση αριθμού καναλιού στην επιλογή καναλιού" + +msgid "Show columns" +msgstr "Εμφάνιση στηλών" + +msgid "Show crypto icons" +msgstr "Εμφάνιση κρυπτοεικονιδίων" + +msgid "Show crypto info in infobar" +msgstr "Εμφάνιση πληροφοριών κρυπτοποίησης στη μπάρα πληροφοριών" + +msgid "Show detailed event info" +msgstr "Εμφάνιση αναλυτικών πληροφοριών προγράμματος" + +msgid "Show event details" +msgstr "Εμφάνιση λεπτομερειών προγράμματος" + +msgid "Show event-progress in channel selection" +msgstr "Εμφάνιση μπάρας προόδου στην επιλογή καναλιού" + +msgid "Show extended description" +msgstr "Εμφάνιση εκτεταμένης περιγραφής" + +msgid "Show extensions..." +msgstr "Εμφάνιση επεκτάσεων..." + +msgid "Show icon for new/unseen items" +msgstr "Εμφάνιση εικονιδίου για νέα αντικείμενα" + +msgid "Show in extensions menu" +msgstr "Εμφάνιση στο μενού επεκτάσεων" + +msgid "Show info" +msgstr "Εμφάνιση πληροφοριών" + +msgid "Show info line" +msgstr "Εμφάνιση γραμμής πληροφοριών" + +msgid "Show infobar on channel change" +msgstr "Εμφάνιση μπάρας πληροφοριών σε αλλαγή καναλιού" + +msgid "Show infobar on event change" +msgstr "Εμφάνιση μπάρας πληροφοριών σε αλλαγή εκπομπής" + +msgid "Show infobar on skip forward/backward" +msgstr "Εμφάνιση της μπάρας πληροφοριών κατά τα εμπρός/πίσω" + +msgid "Show latest commits on sourceforge" +msgstr "Εμφάνιση τελευταίων αλλαγών στο sourceforge" + +msgid "Show message when recording starts" +msgstr "Εμφάνιση μηνύματος στην εκκίνηση της εγραφής" + +msgid "Show movie lengths in movielist" +msgstr "Εμφάνιση διάρκειας στη λίστα ταινιών" + +msgid "Show multi channel EPG" +msgstr "Εμφάνιση EPG πολλαπλών καναλιών" + +msgid "Show picons in channel list" +msgstr "Εμφάνιση εικονιδίων στη λίστα καναλιών" + +msgid "Show positioner movement" +msgstr "Εμφάνιση κίνησης του μοτέρ" + +msgid "Show screensaver" +msgstr "Εμφάνιση προστασίας οθόνης" + +msgid "Show second infobar" +msgstr "Εμφάνιση της δεύτερης μπάρας πληροφοριών" + +msgid "Show service type icons" +msgstr "Εμφάνιση εικονιδίων τύπου υπηρεσίας" + +msgid "Show services beginning with" +msgstr "Εμφάνιση υπηρεσιών που αρχίζουν από" + +msgid "Show shutdown menu" +msgstr "Εμφάνιση μενού τερματισμού" + +msgid "Show single service EPG" +msgstr "Εμφάνιση EPG μίας μόνο υπηρεσίας" + +msgid "Show status icons in Movielist" +msgstr "Εμφάνιση εικονιδίων κατάστασης στη λίστα ταινιών" + +msgid "Show status icons in movie list" +msgstr "Εμφάνιση εικονιδίων κατάστασης στη λίστα ταινιών" + +msgid "Show status icons in movielist" +msgstr "Εμφάνιση εικονιδίων κατάστασης στη λίστα ταινιών" + +msgid "Show tag menu" +msgstr "Εμφάνιση μενού ετικετών" + +msgid "Show the radio player..." +msgstr "Εμφάνιση ραδιοφώνου..." + +msgid "Show the tv player..." +msgstr "Εμφάνιση TV..." + +msgid "Show warning when timeshift is stopped" +msgstr "Εμφάνιση προειδοποίησης όταν η χρονομετατόπιση έχει σταματήσει" + +msgid "Shows the state of your wireless LAN connection.\n" +msgstr "Εμφάνιση της κατάστασης του ασύρματου δικτύου.\n" + +msgid "Shuffle playlist" +msgstr "Τυχαία αναπαραγωγή" + +msgid "Shutdown" +msgstr "Τερματισμός" + +msgid "Shutdown when in Standby" +msgstr "Τερματισμός σε κατάσταση αναμονής" + +msgid "Side by side" +msgstr "Σε παράθεση" + +msgid "Signal OK, proceeding" +msgstr "Το σήμα είναι ΟΚ, συνέχεια" + +msgid "Signal quality" +msgstr "Ποιότητα σήματος" + +msgid "Signal strength:" +msgstr "Ένταση σήματος:" + +msgid "Signal: " +msgstr "Σήμα: " + +msgid "Similar" +msgstr "Παρόμοιο" + +msgid "Similar broadcasts:" +msgstr "Παρόμοιες μεταδόσεις:" + +msgid "Simple" +msgstr "Απλό" + +msgid "Simple titleset (compatibility for legacy players)" +msgstr "Απλή τιτλοδοσία (συμβατότητα με συσκευές παλιού τύπου)" + +msgid "Single" +msgstr "Μονός" + +msgid "Single EPG" +msgstr "Μονός EPG" + +msgid "Single satellite" +msgstr "Ένας δορυφόρος" + +msgid "Single step (GOP)" +msgstr "Μονό βήμα (GOP)" + +msgid "Single transponder" +msgstr "Ένας αναμεταδότης" + +msgid "Site latitude" +msgstr "Γεωγραφικό πλάτος" + +msgid "Site longitude" +msgstr "Γεωγραφικό μήκος" + +msgid "Skin" +msgstr "Θέμα" + +msgid "Skins" +msgstr "Θέματα" + +msgid "Skip empty services" +msgstr "Παράλειψη άδειων υπηρεσιών" + +msgid "Skip internet connection check (disables automatic package installation)" +msgstr "Παράλειψη ελέγχου σύνδεσης στο διαδίκτυο (απενεργοποιεί την αυτόματη εγκατάσταση πακέτων)" + +msgid "Sleep timer" +msgstr "Χρονοδιακόπτης ύπνου" + +msgid "SleepTimer Configuration" +msgstr "Ρύθμιση Χρονοδιακόπτη Ύπνου" + +msgid "Sleeptimer" +msgstr "Χρονοδιακόπτης ύπνου" + +msgid "Slide picture in loop" +msgstr "Ολίσθηση εικόνας σε επανάληψη" + +msgid "Slide show interval (sec.)" +msgstr "Μεσοδιάστημα παρουσίασης διαφανειών (δευτ.)" + +#, python-format +msgid "Slot %d" +msgstr "Θύρα %d" + +msgid "Slovak" +msgstr "Σλοβακικά" + +msgid "Slovenian" +msgstr "Σλοβενικά" + +msgid "Slow" +msgstr "Αργά" + +msgid "Slow motion speeds" +msgstr "Ταχύτητες αργής κίνησης" + +msgid "Small progress" +msgstr "Μικρή πρόοδος" + +msgid "Social/Political/Economics" +msgstr "Κοινωνία/Πολιτική/Οικονομία" + +msgid "SoftCam / CI" +msgstr "SoftCam / CI" + +msgid "Softcam type" +msgstr "Τύπος softcam" + +msgid "Software" +msgstr "Λογισμικό" + +msgid "Software management" +msgstr "Διαχείριση λογισμικού" + +msgid "Software manager setup" +msgstr "Ρυθμίσεις διαχειριστή λογισμικού" + +msgid "Software restore" +msgstr "Επαναφορά λογισμικού" + +msgid "Software update" +msgstr "Ενημέρωση λογισμικού" + +msgid "Softwaremanager information" +msgstr "Πληροφορίες διαχειριστή λογισμικού" + +msgid "Some plugins are not available:\n" +msgstr "Μερικά πρόσθετα δεν είναι διαθέσιμα:\n" + +#, python-format +msgid "Sorry, %s has not been installed!" +msgstr "Λυπούμαστε, το %s δεν έχει εγκατασταθεί!" + +msgid "Sorry, deleting directories can (for now) only be done through the trash can." +msgstr "Λυπούμαστε, η διαγραφή φακέλων μπορεί (προς το παρόν) να γίνεται μόνο μέσω του κάδου αχρήστων." + +msgid "Sorry, no backups found!" +msgstr "Λυπούμαστε, δεν βρέθηκαν αντίγραφα ασφαλείας!" + +msgid "Sorry, no details available!" +msgstr "Λυπούμαστε, δεν υπάρχουν διαθέσιμες λεπτομέρειες!" + +msgid "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." +msgstr "" +"Λυπούμαστε, ο προορισμός αντιγράφων ασφαλείας δεν είναι εγγράψιμος. \n" +"Παρακαλούμε επιλέξτε έναν άλλο." + +msgid "Sort" +msgstr "Ταξινόμηση" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort A-Z" +msgstr "Ταξινόμηση A-Ω" + +msgid "Sort by" +msgstr "Ταξινόμηση ανά" + +msgid "Sort list:" +msgstr "Ταξινόμηση λίστας:" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort time" +msgstr "Ταξινόμηση κατά χρόνο" + +msgid "Sound" +msgstr "Ήχος" + +msgid "Sound carrier" +msgstr "Φέρουσα ήχου" + +msgid "Source request" +msgstr "Επιλογή πηγής αναβάθμισης" + +msgid "South" +msgstr "Νότια" + +msgid "Spanish" +msgstr "Ισπανικά" + +msgid "Specify the end time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "Ορισμός του χρόνου λήξης της αγνόησης του χρονοδιακόπτη τερματισμού όταν ο δέκτης βρίσκεται σε αναμονή" + +msgid "Specify the end time until the inactivity sleeptimer should be ignored" +msgstr "Ορισμός του χρόνου λήξης μέχρι να αγνοηθεί η αδράνεια του χρονοδιακόπτη ύπνου" + +msgid "Specify the start time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "Ορισμός του χρόνου έναρξης αγνόησης του χρονοδιακόπτη τερματισμού όταν ο δέκτης βρίσκεται σε αναμονή" + +msgid "Specify the start time when the inactivity sleeptimer should be ignored" +msgstr "Ορισμός του χρόνου έναρξης αγνόησης της αδράνειας του χρονοδιακόπτη" + +msgid "Specify timeframe to ignore inactivity sleeptimer" +msgstr "Ορισμός του μεσοδιαστήματος αγνόησης της αδράνειας του χρονοδιακόπτη ύπνου" + +msgid "Specify timeframe to ignore the shutdown in standby" +msgstr "Ορισμός του μεσοδιαστήματος αγνόησης του τερματισμού σε αναμονή" + +msgid "Split preview mode" +msgstr "Διαχωρισμός κατάστασης επισκόπησης" + +msgid "Splitscreen" +msgstr "Διαίρεση Οθόνης" + +msgid "Sports" +msgstr "Αθλητικά" + +msgid "Standard" +msgstr "Στάνταρ" + +msgid "Standart list" +msgstr "Στάνταρ λίστα" + +msgid "Standby" +msgstr "Αναμονή" + +msgid "Standby / restart" +msgstr "Αναμονή / επανεκκίνηση" + +msgid "Standby after current event" +msgstr "Αναμονή μετά το τρέχον πρόγραμμα" + +#, python-format +msgid "Standby fan %d PWM" +msgstr "Αναμονή ανεμιστήρα %d PWM" + +#, python-format +msgid "Standby fan %d voltage" +msgstr "Τάση αναμονής ανεμιστήρα %d" + +msgid "Standby in " +msgstr "Αναμονή σε " + +msgid "StandbyLED" +msgstr "LED Αναμονής" + +msgid "Start from the beginning" +msgstr "Έναρξη από την αρχή" + +msgid "Start offline decode" +msgstr "Εκκίνηση αποκωδικοποίησης εκτός σύνδεσης" + +msgid "Start recording?" +msgstr "Έναρξη εγγραφής;" + +msgid "Start test" +msgstr "Έναρξη ελέγχου" + +msgid "Start time" +msgstr "Ώρα έναρξης" + +msgid "Start time to ignore inactivity sleeptimer" +msgstr "Έναρξη χρόνου αγνόησης της αδράνειας του χρονοδιακόπτη ύπνου" + +msgid "Start time to ignore shutdown in standby" +msgstr "Χρόνος εκκίνησης αγνόησης του χρονοδιακόπτη τερματισμού όταν ο δέκτης βρίσκεται σε αναμονή" + +msgid "Start timeshift" +msgstr "Εκκίνηση χρονομετατόπισης" + +msgid "Start with list screen" +msgstr "Έναρξη με την οθόνη λίστας" + +msgid "Starting on" +msgstr "Έναρξη από το" + +msgid "Startup the set top box in standby" +msgstr "Εκκίνηση του δέκτη από την αναμονή" + +msgid "Startup to Standby" +msgstr "Εκκίνηση από Αναμονή" + +msgid "Step east" +msgstr "Βήμα ανατολικά" + +msgid "Step west" +msgstr "Βήμα δυτικά" + +msgid "Stepped east" +msgstr "Βηματισμός ανατολικά" + +msgid "Stepped west" +msgstr "Βηματισμός δυτικά" + +msgid "Stop" +msgstr "Σταμάτημα" + +msgid "Stop PiP" +msgstr "Τερματισμός PiP" + +msgid "Stop current event and disable coming events" +msgstr "Τερματισμός τρέχοντος προγράμματος και ακύρωση επερχόμενων" + +msgid "Stop current event but not coming events" +msgstr "Τερματισμός τρέχοντος προγράμματος αλλά όχι των επερχόμενων" + +msgid "Stop entry" +msgstr "Σταμάτημα στοιχείου" + +msgid "Stop playing this movie?" +msgstr "Διακοπή αναπαραγωγής;" + +msgid "Stop recording" +msgstr "Τερματισμός εγγραφής" + +msgid "Stop recording and delete" +msgstr "Τερματισμός εγγραφής και διαγραφή" + +msgid "Stop service on return to movie list" +msgstr "Σταμάτημα υπηρεσίας κατά την επιστροφή στη λίστα ταινιών" + +msgid "Stop test" +msgstr "Τερματισμός ελέγχου" + +msgid "Stop testing plane after # failed transponders" +msgstr "Σταμάτημα ελέγχου του πιλότου μετά από # αποτυχημένους αναμεταδότες" + +msgid "Stop testing plane after # successful transponders" +msgstr "Σταμάτημα ελέγχου του πιλότου μετά από # επιτυχημένους αναμεταδότες" + +msgid "Stop timer recording" +msgstr "Διακοπή εγγραφής χρονοδιακόπτη" + +msgid "Stop timeshift" +msgstr "Διακοπή χρονομετατόπισης" + +msgid "Stop timeshift?" +msgstr "Διακοπή της χρονομετατόπισης;" + +msgid "Stopped" +msgstr "Σταματημένο" + +msgid "Store at index" +msgstr "Αποθήκευση στη θέση" + +msgid "Store position" +msgstr "Αποθήκευση θέσης" + +msgid "Stored position" +msgstr "Αποθηκευμένη θέση" + +msgid "Stream" +msgstr "Ροή" + +msgid "Stream request" +msgstr "Αίτηση ροής" + +msgid "Strongest position" +msgstr "Ισχυρότερη θέση" + +msgid "Subservice list..." +msgstr "Λίστα υπό-υπηρεσιών..." + +msgid "Subservices" +msgstr "Υπό-υπηρεσίες" + +msgid "Subtitle Quickmenu" +msgstr "Γρήγορο Μενού Υποτίτλων" + +msgid "Subtitle alignment" +msgstr "Στοίχιση υποτίτλου" + +msgid "Subtitle border width" +msgstr "Μέγεθος περιγράμματος υποτίτλου" + +msgid "Subtitle delay when timing is bad" +msgstr "Καθυστέρηση υποτίτλων σε κακό χρονισμό" + +msgid "Subtitle delay when timing lacks" +msgstr "Καθυστέρηση κειμένου όταν δεν υπάρχει χρονισμός" + +msgid "Subtitle font size" +msgstr "Μέγεθος γραμματοσειράς υποτίτλου" + +msgid "Subtitle language selection 1" +msgstr "Επιλογή γλώσσας υποτίτλων 1" + +msgid "Subtitle language selection 2" +msgstr "Επιλογή γλώσσας υποτίτλων 2" + +msgid "Subtitle language selection 3" +msgstr "Επιλογή γλώσσας υποτίτλων 3" + +msgid "Subtitle language selection 4" +msgstr "Επιλογή γλώσσας υποτίτλων 4" + +msgid "Subtitle position" +msgstr "Θέση υποτίτλου" + +msgid "Subtitle selection" +msgstr "Επιλογή υποτίτλων" + +msgid "Subtitle selection..." +msgstr "Επιλογή υποτίτλων..." + +msgid "Subtitle settings" +msgstr "Ρυθμίσεις υποτίτλων" + +msgid "Subtitles" +msgstr "Υπότιτλοι" + +msgid "Sun" +msgstr "Κυρ" + +msgid "Sunday" +msgstr "Κυριακή" + +msgid "Swap PiP and main picture" +msgstr "Εναλλαγή PiP και κύριας εικόνας" + +msgid "Swap services" +msgstr "Αντικατάσταση υπηρεσιών" + +msgid "Swedish" +msgstr "Σουηδικά" + +msgid "Switch TV to correct input" +msgstr "Αλλαγή της TV στη σωστή είσοδο" + +msgid "Switch between filelist/playlist" +msgstr "Αλλαγή μεταξύ λίστας αρχείων/αναπαραγωγής" + +msgid "Switch between normal mode and list mode" +msgstr "Εναλλαγή μεταξύ κανονικής λειτουργίας ή λίστας" + +msgid "Switch to HDMI in mode" +msgstr "Αλλαγή σε HDMI σε λειτουργία" + +msgid "Switch to filelist" +msgstr "Μετάβαση στη λίστα αρχείων" + +msgid "Switch to next channel" +msgstr "Αλλαγή στο επόμενο κανάλι" + +msgid "Switch to next channel in history" +msgstr "Επόμενο κανάλι στο ιστορικό" + +msgid "Switch to next sub service" +msgstr "Μετάβαση στην επόμενη υπό-υπηρεσία" + +msgid "Switch to playlist" +msgstr "Μετάβαση στη λίστα αναπαραγωγής" + +msgid "Switch to previous channel" +msgstr "Προώθηση στην προηγούμενη υπό-υπηρεσία" + +msgid "Switch to previous channel in history" +msgstr "Μετάβαση στο προηγούμενο κανάλι στο ιστορικό" + +msgid "Switch to previous sub service" +msgstr "Μετάβαση στην προηγούμενη υπό-υπηρεσία" + +msgid "Switchable tuner types:" +msgstr "Εναλλακτοί τύποι tuner:" + +msgid "Symbol rate" +msgstr "Ρυθμός συμβόλων" + +msgid "Symbol rate:" +msgstr "Ρυθμός συμβόλων:" + +msgid "Sync failure moving back to origin !" +msgstr "Αποτυχία συγχρονισμού επιστροφή στο αρχικό !" + +msgid "System" +msgstr "Σύστημα" + +#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) +msgid "TRANSLATOR_INFO" +msgstr "SatDreamGR" + +msgid "TS file is too large for ISO9660 level 1!" +msgstr "Το αρχείο TS είναι πολύ μεγάλο για το ISO9660 επίπεδο 1!" + +msgid "TSID" +msgstr "TSID" + +msgid "TV physical address report" +msgstr "Φυσική διεύθυνση τηλεόρασης" + +msgid "TXT PID" +msgstr "TXT PID" + +msgid "Table of contents for collection" +msgstr "Πίνακας περιεχομένων για συλλογή" + +msgid "Tags" +msgstr "Ετικέτες" + +msgid "Teletext subtitle color" +msgstr "Χρώμα υποτίτλων τηλεκειμένου" + +msgid "Temperature and fan control" +msgstr "Έλεγχος θερμοκρασίας και ανεμιστήρα" + +msgid "Terrestrial" +msgstr "Επίγειο" + +msgid "Terrestrial provider" +msgstr "Επίγειος πάροχος" + +msgid "Test DiSEqC settings" +msgstr "Έλεγχος ρυθμίσεων DiSEqC" + +msgid "Test mode" +msgstr "Κατάσταση ελέγχου" + +msgid "Test the network configuration of your receiver.\n" +msgstr "Έλεγχος των ρυθμίσεων δικτύου του δέκτη σας.\n" + +msgid "Test type" +msgstr "Τύπος τεστ" + +msgid "Text color" +msgstr "Χρώμα κειμένου" + +msgid "Thai" +msgstr "Ταϊλανδικά" + +msgid "" +"Thank you for using the wizard.\n" +"Please press OK to continue." +msgstr "" +"Σας ευχαριστούμε που χρησιμοποιήσατε τον οδηγό.\n" +"Παρακαλώ πιέστε ΟΚ για συνέχεια." + +msgid "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." +msgstr "" +"Σας ευχαριστούμε που χρησιμοποιήσατε τον οδηγό. Ο δέκτης σας είναι πλέον έτοιμος για χρήση.\n" +"Παρακαλώ πιέστε ΟΚ για να ξεκινήσετε." + +msgid "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?" +msgstr "Το πρότυπο DVD δεν υποστηρίζει ροές βίντεο H.264 (HDTV). Θέλετε να δημιουργήσετε ένα ειδικού φορμά DVD δεδομένων (που δεν θα παίζει σε κοινά DVD players) αντ' αυτού;" + +msgid "The PIN code has been changed successfully." +msgstr "Το PIN άλλαξε με επιτυχία." + +msgid "The PIN codes you entered are different." +msgstr "Τα PIN που εισάγατε είναι διαφορετικά." + +msgid "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" +msgstr "" +"Το usb στικ προετοιμάστηκε ως εκκινήσιμο.\n" +"Τώρα μπορεί να γίνει λήψη του αρχείου NFI!" + +msgid "The backup failed. Please choose a different backup location." +msgstr "Το αντίγραφο ασφαλείας απέτυχε. Επιλέξτε άλλη τοποθεσία για το αντίγραφο." + +#, python-format +msgid "" +"The current beta image might not be stable.\n" +"For more information see %s." +msgstr "" +"Η τρέχουσα έκδοση beta μπορεί να μην είναι σταθερή.\n" +"Για περισσότερες πληροφορίες δείτε το %s." + +#, python-format +msgid "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." +msgstr "" +"Ο φάκελος %s δεν είναι εγγράψιμος.\n" +"Επιλέξτε εναλλακτικά έναν εγγράψιμο φάκελο." + +#, python-format +msgid "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" +msgstr "" +"Βρέθηκε η παρακάτω συσκευή:\n" +"\n" +"%s\n" +"\n" +"Θέλετε να γράψετε το USB flasher σε αυτό το stick;" + +msgid "The following files were found..." +msgstr "Βρέθηκαν τα παρακάτω αρχεία..." + +msgid "The md5sum validation failed, the file may be corrupted!" +msgstr "Η πιστοποίηση md5sum απέτυχε, το αρχείο ενδέχεται να είναι κατεστραμμένο!" + +msgid "" +"The network wizard extension is not installed!\n" +"Please install it." +msgstr "" +"Η επέκταση οδηγού δικτύου δεν είναι εγκατεστημένη!\n" +"Παρακαλώ εγκαταστήστε την." + +#, python-format +msgid "The path %s already exists." +msgstr "Η διαδρομή %s υπάρχει ήδη." + +msgid "The pin code you entered is wrong." +msgstr "Το pin που εισάγατε είναι λάθος." + +#, python-format +msgid "The results have been written to %s." +msgstr "Τα αποτελέσματα γράφτηκαν στο %s." + +msgid "The sleep timer has been activated." +msgstr "Ο χρονοδιακόπτης απενεργοποίησης ενεργοποιήθηκε." + +msgid "The sleep timer has been disabled." +msgstr "Ο χρονοδιακόπτης απενεργοποίησης απενεργοποιήθηκε." + +msgid "" +"The software management extension is not installed!\n" +"Please install it." +msgstr "" +"Η επέκταση Softwaremanagement δεν είναι εγκατεστημένη!\n" +"Παρακαλώ εγκαταστήστε την." + +#, python-format +msgid "The status of the current beta image could not be checked because %s can not be reached." +msgstr "Η κατάσταση της τρέχουσας έκδοσης beta δε μπορεί να ελεγχθεί επειδή ήταν αδύνατη η επικοινωνία με το %s." + +msgid "The timer file (timers.xml) is corrupt and could not be loaded." +msgstr "Το αρχείο timers.xml είναι άκυρο και δεν φορτώθηκε." + +msgid "The user interface of your receiver is restarting" +msgstr "To enigma2 του δέκτη σας επανεκκινείται" + +msgid "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" +msgstr "To enigma2 επανεκκινείται λόγω σφάλματος στο mytest.py" + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." +msgstr "" +"Το πρόσθετο ασύρματου LAN δεν είναι εγκατεστημένο!\n" +"Παρακαλώ εγκαταστήστε το και επιλέξτε τι θέλετε να συμβεί στη συνέχεια." + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it." +msgstr "" +"Το πρόσθετο ασύρματου LAN δεν είναι εγκατεστημένο!\n" +"Παρακαλώ εγκαταστήστε το." + +msgid "The wizard can backup your current settings. Do you want to do a backup now?" +msgstr "Ο οδηγός μπορεί να κρατήσει αντίγραφο των ρυθμίσεων. Να κρατήσει αντίγραφο τώρα;" + +#, python-format +msgid "The wizard found a configuration backup. Do you want to restore your old settings from %s?" +msgstr "Ο οδηγός βρήκε αντίγραφο ασφαλείας των ρυθμίσεων. Θέλετε να επαναφέρετε τις παλιές ρυθμίσεις σας από το %s;" + +msgid "The wizard is finished now." +msgstr "Ο οδηγός ολοκληρώθηκε." + +msgid "There are at least " +msgstr "Υπάρχουν τουλάχιστον " + +#, python-format +msgid "There are at least %s updates available." +msgstr "Υπάρχουν τουλάχιστον %s διαθέσιμες ενημερώσεις." + +msgid "There are currently no outstanding actions." +msgstr "Δεν υπάρχουν ενέργειες σε εκκρεμότητα." + +msgid "There are no updates available." +msgstr "Δεν υπάρχουν διαθέσιμες ενημερώσεις." + +msgid "There is no signal to lock on !" +msgstr "Δεν υπάρχει σήμα για να κλειδώσει !" + +msgid "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" +msgstr "" +"Ενδεχομένως να μην υπάρχει αρκετός χώρος στο επιλεγμένο διαμέρισμα.\n" +"Θέλετε να συνεχίσετε;" + +msgid "This DVD RW medium is already formatted - reformatting will erase all content on the disc." +msgstr "Αυτό το DVD RW είναι ήδη φορμαρισμένο - η επαναμορφοποίηση θα σβήσει όλα τα περιεχόμενα του δίσκου." + +msgid "" +"This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!" +msgstr "" +"Αυτό το πρόσθετο δημιουργεί ένα στικ USB για χρήση στην αναβάθμιση του δέκτη σας χωρίς την απαίτηση ενσύρματου ή ασύρματου δικτύου.\n" +"Πρώτα, πρέπει να γίνει προετοιμασία του USB στικ ώστε να γίνει εκκινήσιμο. Στο επόμενο βήμα, θα κατεβάσετε το λογισμικό NFI από το διακομιστή και θα το αποθηκεύσετε στο USB στικ.\n" +"Αν έχετε ήδη προετοιμάσει το εκκινήσιμο USB, εισάγετέ το τώρα. Αλλιώς εισάγετε ένα USB στικ με ελάχιστο μέγεθος τα 64 MB!" + +msgid "This plugin is installed." +msgstr "Αυτό το πρόσθετο είναι εγκατεστημένο." + +msgid "This plugin is not installed." +msgstr "Αυτό το πρόσθετο δεν είναι εγκατεστημένο." + +msgid "This plugin will be installed." +msgstr "Αυτό το πρόσθετο θα εγκατασταθεί." + +msgid "This plugin will be removed." +msgstr "Αυτό το πρόσθετο θα διαγραφεί." + +#, python-format +msgid "This receiver cannot decode %s streams!" +msgstr "Αυτός ο δέκτης δεν μπορεί να αποκωδικοποιήσει ροές %s!" + +msgid "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration" +msgstr "" +"Αυτό το τεστ ελέγχει για ρυθμισμένους nameservers.\n" +"Αν λάβετε το μήνυμα \"μη επιβεβαιωμένο\":\n" +"- παρακαλούμε ελέγξτε το DHCP, την καλωδίωση και την εγκατάσταση του προσαρμογέα\n" +"- αν έχετε ρυθμίσει τους nameservers χειροκίνητα, παρακαλούμε επιβεβαιώστε τα δεδομένα στη ρύθμιση \"Nameserver\"." + +msgid "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" +msgstr "" +"Αυτό το τεστ ελέγχει αν το καλώδιο δικτύου είναι συνδεδεμένο στον προσαρμογέα LAN.\n" +"Αν λάβετε το μήνυμα \"αποσυνδεδεμένο\":\n" +"- βεβαιωθείτε ότι συνδέσατε το καλώδιο\n" +"- βεβαιωθείτε ότι το καλώδιο δεν είναι χαλασμένο" + +msgid "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" +msgstr "" +"Αυτό το τεστ ελέγχει αν υπάρχει έγκυρη IP Address στον προσαρμογέα LAN.\n" +"Αν λάβετε το μήνυμα \"μη επιβεβαιωμένο\":\n" +"- δεν βρέθηκε έγκυρη διεύθυνση IP\n" +"- ελέγξτε το DHCP, την καλωδίωση και τη ρύθμιση του προσαρμογέα" + +msgid "" +"This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." +msgstr "" +"Αυτό το τεστ ελέγχει αν ο προσαρμογέας LAN έχει ρυθμιστεί να παίρνει αυτόματη διεύθυνση IP μέσω του DHCP.\n" +"Αν λάβετε το μήνυμα \"απενεργοποιημένο\":\n" +"- τότε ο προσαρμογέας είναι ρυθμισμένος για χειροκίνητη IP\n" +"- βεβαιωθείτε ότι έχετε εισάγει τις σωστές τιμές IP στο μενού εγκατάστασης δικτύου.\n" +"Αν λάβετε το μήνυμα \"ενεργοποιημένο\":\n" +"- βεβαιωθείτε ότι ο διακομιστής DHCP έχει ρυθμιστεί και λειτουργεί σωστά στο δίκτυό σας." + +msgid "This test detects your configured LAN adapter." +msgstr "Αυτό το τεστ αναζητά την ρυθμισμένη κάρτα δικτύου." + +msgid "" +"This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\n" +"Are you sure?" +msgstr "" +"Αυτό θα (επανα)υπολογίσει όλες τις θέσεις του μοτέρ σας και μπορεί να διαγράψει τις προηγούμενες αποθηκευμένες θέσεις και μικροκινήσεις!\n" +"Είστε σίγουροι;" + +msgid "Three" +msgstr "Τρία" + +msgid "Threshold" +msgstr "Όριο" + +msgid "Thu" +msgstr "Πέμ" + +msgid "Thumbnails" +msgstr "Μικρογραφίες" + +msgid "Thursday" +msgstr "Πέμπτη" + +msgid "Time" +msgstr "Χρόνος" + +msgid "Time scale" +msgstr "Χρονική κλιμάκωση" + +msgid "Timer" +msgstr "Χρονοδιακόπτης" + +msgid "Timer Overview" +msgstr "Επισκόπηση Χρονοδιακοπτών" + +msgid "Timer edit" +msgstr "Επεξεργασία χρονοδιακόπτη" + +msgid "Timer editor" +msgstr "Επεξεργασία χρονοδιακόπτη" + +msgid "Timer entry" +msgstr "Στοιχείο χρονοδιακόπτη" + +msgid "Timer log" +msgstr "Καταγραφή χρονοδιακόπτη" + +msgid "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" +msgstr "" +"Εντοπίστηκε επικάλυψη χρονοδιακόπτη στο timers.xml!\n" +"Παρακαλώ ελέγξτε ξανά!" + +msgid "Timer overview" +msgstr "Επισκόπηση χρονοδιακόπτη" + +msgid "Timer recording location" +msgstr "Τοποθεσία εγγραφής χρονοδιακόπτη" + +msgid "Timer sanity error" +msgstr "Σφάλμα χρονοδιακόπτη" + +msgid "Timer selection" +msgstr "Επιλογή χρονοδιακόπτη" + +msgid "Timer selection..." +msgstr "Επιλογή χρονοδιακόπτη..." + +msgid "Timer type" +msgstr "Τύπος χρονοδιακόπτη" + +msgid "Timeshift" +msgstr "Χρονομετατόπιση" + +msgid "Timeshift Live" +msgstr "" + +msgid "Timeshift location" +msgstr "Τοποθεσία χρονομετατόπισης" + +msgid "Timeshift not possible!" +msgstr "Αδυναμία χρονομετατόπισης!" + +msgid "Timezone" +msgstr "Χρονική ζώνη" + +msgid "Title" +msgstr "Τίτλος" + +msgid "Title properties" +msgstr "Ιδιότητες τίτλου" + +msgid "Titleset mode" +msgstr "Λειτουργία τιτλοδοσίας" + +msgid "To audio selection" +msgstr "Στην επιλογή ήχου" + +msgid "To subtitle selection" +msgstr "Στην επιλογή υποτίτλων" + +msgid "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." +msgstr "" +"Για να ενημερώσετε το υλικολογισμικό του δέκτη, ακολουθήστε τα παρακάτω βήματα:\n" +"1) Κλείστε το δέκτη μέσω του πλευρικού διακόπτη τροφοδοσίας και βεβαιωθείτε ότι εισάγατε το USB στικ.\n" +"2) Ανοίξτε το διακόπτη και κρατήστε πατημένο το πλήκτρο ΚΑΤΩ στο εμπρόσθιο πάνελ για 10 δευτερόλεπτα.\n" +"3) Περιμένετε την εκκίνηση και ακολουθήστε τα βήματα του οδηγού." + +msgid "Today" +msgstr "Σήμερα" + +msgid "Toggle a cut mark at the current position" +msgstr "Εναλλαγή σημειωτή αποκοπής στην τρέχουσα θέση" + +msgid "Tone amplitude" +msgstr "Πλάτος τόνου" + +msgid "Tone mode" +msgstr "Τύπος τόνου" + +msgid "Toneburst" +msgstr "Ριπή τόνου" + +msgid "Toneburst A/B" +msgstr "Ριπή τόνου A/B" + +msgid "Top and bottom" +msgstr "Πάνω και Κάτω" + +msgid "Track" +msgstr "Κομμάτι" + +msgid "Translation" +msgstr "Μετάφραση" + +msgid "Translation:" +msgstr "Μετάφραση:" + +msgid "Translations" +msgstr "Μεταφράσεις" + +msgid "Transmission mode" +msgstr "Λειτουργία μετάδοσης" + +msgid "Transponder" +msgstr "Αναμεταδότης" + +msgid "Transponder type" +msgstr "Τύπος αναμεταδότη" + +msgid "Trash can" +msgstr "Κάδος αχρήστων" + +msgid "Tries left:" +msgstr "Προσπάθειες που απομένουν:" + +msgid "Try to find used transponders in cable network.. please wait..." +msgstr "Αναζήτηση χρησιμοποιούμενων αναμεταδοτών στο καλωδιακό δίκτυο... Παρακαλώ περιμένετε..." + +msgid "Trying to download a new packetlist. Please wait..." +msgstr "Λήψη νέας λίστας πακέτων. Παρακαλώ περιμένετε ..." + +msgid "Tue" +msgstr "Τρί" + +msgid "Tuesday" +msgstr "Τρίτη" + +msgid "Tune" +msgstr "Συντονισμός" + +msgid "Tune and focus" +msgstr "Συντονισμός και εστίαση" + +msgid "Tune failed!" +msgstr "Αποτυχία συντονισμού!" + +msgid "Tuner" +msgstr "Tuner" + +msgid "Tuner configuration" +msgstr "Ρύθμιση tuner" + +msgid "Tuner is not supported" +msgstr "Μη υποστηριζόμενο tuner" + +msgid "Tuner slot" +msgstr "Υποδοχή tuner" + +msgid "Tuner status" +msgstr "Κατάσταση tuner" + +#, python-format +msgid "Tuner status %s" +msgstr "Κατάσταση tuner %s" + +msgid "Tuner type" +msgstr "Τύπος tuner" + +msgid "Turkish" +msgstr "Τούρκικα" + +msgid "Turn on the power LED during standby." +msgstr "Ενεργοποίηση LED κατά την αναμονή." + +msgid "Turning step size" +msgstr "Μέγεθος βήματος περιστροφής" + +msgid "Two" +msgstr "Δύο" + +msgid "Type" +msgstr "Τύπος" + +msgid "Type of scan" +msgstr "Τύπος ανίχνευσης" + +msgid "USALS" +msgstr "USALS" + +msgid "USALS calibration" +msgstr "Υπολογισμός USALS" + +msgid "USB stick" +msgstr "USB στικ" + +msgid "USB stick wizard" +msgstr "Οδηγός USB στικ" + +msgid "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Εκτελείται αναβάθμιση\n" +"Παρακαλώ περιμένετε μέχρι την επανεκκίνηση του δέκτη\n" +"Αυτό μπορεί να διαρκέσει μερικά λεπτά" + +msgid "Undo install" +msgstr "Αναίρεση εγκατάστασης" + +msgid "Undo uninstall" +msgstr "Αναίρεση απεγκατάστασης" + +msgid "Unencrypted" +msgstr "Χωρίς κωδικοποίηση" + +msgid "UnhandledKey" +msgstr "Μη διαχειρίσιμο πλήκτρο" + +msgid "Unicable" +msgstr "Unicable" + +msgid "Unicable LNB" +msgstr "Unicable LNB" + +msgid "Unicable Martix" +msgstr "Unicable Martix" + +msgid "Uninstall" +msgstr "Απεγκατάσταση" + +msgid "Universal LNB" +msgstr "Universal LNB" + +msgid "Unknown" +msgstr "Άγνωστο" + +msgid "Unmount" +msgstr "Αποπροσάρτηση" + +msgid "Unsupported" +msgstr "Δεν υποστηρίζεται" + +msgid "Update" +msgstr "Ενημέρωση" + +msgid "Update and ask to reboot" +msgstr "Ενημέρωση και ερώτηση για επανεκκίνηση" + +msgid "Update and reboot (recommended)" +msgstr "Ενημέρωση και επανεκκίνηση (συνιστάται)" + +msgid "Update channel list only" +msgstr "Ενημέρωση της λίστας καναλιών μόνο" + +#, python-format +msgid "Update completed, %d package was installed." +msgid_plural "Update completed, %d packages were installed." +msgstr[0] "Η ενημέρωση ολοκληρώθηκε, %d πακέτο εγκαταστάθηκε." +msgstr[1] "Η ενημέρωση ολοκληρώθηκε, %d πακέτα εγκαταστάθηκαν." + +msgid "Update completed. Do you want to reboot your receiver?" +msgstr "Η ενημέρωση ολοκληρώθηκε. Θέλετε να επανεκκινήσετε τον δέκτη σας;" + +msgid "Update failed. Your receiver does not have a working internet connection." +msgstr "Η ενημέρωση απέτυχε. Ο δέκτης σας δεν έχει ενεργή σύνδεση στο διαδίκτυο." + +msgid "Update has completed." +msgstr "Η ενημέρωση έχει ολοκληρωθεί." + +msgid "Updatefeed not available." +msgstr "Η πηγή αναβάθμισης δεν είναι διαθέσιμη." + +msgid "Updating software catalog" +msgstr "Ενημέρωση καταλόγου λογισμικού" + +msgid "Upgrading" +msgstr "Εκτελείται αναβάθμιση" + +msgid "Use" +msgstr "Χρήση" + +msgid "Use DHCP" +msgstr "Χρήση DHCP" + +msgid "Use EIT EPG information when it is available." +msgstr "Χρήση πληροφοριών EIT EPG όταν είναι διαθέσιμες." + +msgid "Use FreeSat EPG information when it is available." +msgstr "Χρήση πληροφοριών FreeSat EPG όταν είναι διαθέσιμες." + +msgid "Use MHW EPG information when it is available." +msgstr "Χρήση πληροφοριών MHW όταν είναι διαθέσιμες." + +msgid "Use Netmed EPG information when it is available." +msgstr "Χρήση πληροφοριών Netmed EPG όταν είναι διαθέσιμες." + +msgid "Use TV remote control" +msgstr "Χρήση τηλεχειριστηρίου TV" + +msgid "Use USALS for this sat" +msgstr "Χρήση USALS για αυτόν το δορυφόρο" + +msgid "Use ViaSat EPG information when it is available." +msgstr "Χρήση πληροφοριών ViaSat EPG όταν είναι διαθέσιμες." + +msgid "Use Virgin EPG information when it is available." +msgstr "Χρήση πληροφοριών Virgin EPG όταν είναι διαθέσιμες." + +msgid "Use a gateway" +msgstr "Χρήση πύλης" + +msgid "Use fastscan channel names" +msgstr "Χρήση ονομάτων γρήγορης ανίχνευσης" + +msgid "Use fastscan channel numbering" +msgstr "Χρήση αριθμοδότησης γρήγορης ανίχνευσης" + +msgid "Use frequency or channel" +msgstr "Χρήση συχνότητας ή καναλιού" + +msgid "Use individual settings for each directory" +msgstr "Χρήση ξεχωριστών ρυθμίσεων για κάθε φάκελο" + +msgid "Use interface" +msgstr "Χρήση διεπαφής" + +msgid "Use official channel numbering" +msgstr "Χρήση της επίσημης αρίθμησης των καναλιών" + +msgid "Use original DVB subtitle position" +msgstr "Χρήση αρχικής θέσης υποτίτλων DVB" + +msgid "Use original teletext position" +msgstr "Χρήση αρχικής θέσης τηλεκειμένου" + +msgid "Use power measurement" +msgstr "Χρήση μέτρησης ισχύος" + +msgid "Use the network wizard to configure selected network adapter" +msgstr "Χρήση του οδηγού δικτύου για τη ρύθμιση της επιλεγμένης κάρτας δικτύου" + +msgid "Use the network wizard to configure your network\n" +msgstr "Χρήση οδηγού δικτύου για τη ρύθμιση του δικτύου\n" + +msgid "Use the up/down keys on your remote control to select an option. After that, press OK." +msgstr "Πιέστε τα πλήκτρα πάνω/κάτω του τηλεχειριστηρίου για επιλογή. Μετά, πιέστε ΟΚ." + +msgid "Use the wizard to set up basic features" +msgstr "Χρήση οδηγού για τις απλές ρυθμίσεις" + +msgid "Use these input device settings?" +msgstr "Χρήση αυτών των ρυθμίσεων συσκευής εισόδου;" + +msgid "Use these settings?" +msgstr "Χρήση αυτών των ρυθμίσεων;" + +msgid "Use this video enhancement settings?" +msgstr "Χρήση αυτών των ρυθμίσεων βελτίωσης της εικόνας;" + +msgid "Use trash can in movielist" +msgstr "Χρήση του κάδου αχρήστων στη λίστα ταινιών" + +msgid "Used service scan type" +msgstr "Χρησιμοποιημένος τύπος ανίχνευσης υπηρεσιών" + +msgid "User - bouquets" +msgstr "Μπουκέτα χρήστη" + +msgid "User defined" +msgstr "Ορισμός από το χρήστη" + +msgid "User defined transponder" +msgstr "Χειροκίνητος αναμεταδότης" + +msgid "User interface" +msgstr "Ρυθμίσεις επιφάνειας χρήστη" + +msgid "Username" +msgstr "Όνομα χρήστη" + +#, python-format +msgid "Using LNB %d" +msgstr "Χρήση του LNB %d" + +msgid "Using fixed address" +msgstr "Χρήση σταθερής διεύθυνσης" + +#, python-format +msgid "Using tuner %s" +msgstr "Χρήση του tuner %s" + +msgid "Usually when the subtitle language is the same as the audio language, the subtitles will not be used. Enable this option to allow these subtitles to be used." +msgstr "Συνήθως, όταν η γλώσσα υποτίτλων είναι η ίδια με την γλώσσα ήχου, οι υπότιτλοι δεν θα χρησιμοποιηθούν. Ενεργοποιήστε αυτή την επιλογή ώστε να επιτραπεί η χρήση αυτών των υποτίτλων." + +msgid "VCR scart" +msgstr "VCR scart" + +msgid "VMGM (intro trailer)" +msgstr "VMGM (εντός τρέιλερ)" + +msgid "Vertical" +msgstr "Κάθετη" + +msgid "Vertical turning speed" +msgstr "Ταχύτητα περιστροφής σε κάθετη πόλωση" + +msgid "Video PID" +msgstr "PID εικόνας" + +msgid "Video enhancement preview" +msgstr "Προεπισκόπηση βελτίωσης εικόνας" + +msgid "Video enhancement settings" +msgstr "Ρυθμίσεις βελτίωσης εικόνας" + +msgid "Video enhancement setup" +msgstr "Ρύθμιση βελτίωσης εικόνας" + +msgid "Video fine tuning" +msgstr "Μικρορύθμιση οθόνης" + +msgid "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." +msgstr "" +"Επιλογή εισόδου εικόνας\n" +"\n" +"Παρακαλώ πιέστε ΟΚ εάν μπορείτε να δείτε αυτή τη σελίδα στην TV (ή επιλέξτε διαφορετική είσοδο).\n" +"\n" +"Η επόμενη είσοδος εικόνας θα εμφανιστεί αυτόματα σε 10 δευτερόλεπτα." + +msgid "Video mode selection." +msgstr "Επιλογή λειτουργίας εικόνας" + +msgid "Video output" +msgstr "Έξοδος εικόνας" + +msgid "Video setup" +msgstr "Ρυθμίσεις εικόνας" + +msgid "Video wizard" +msgstr "Οδηγός εικόνας" + +#, python-format +msgid "Video: %s fps" +msgstr "Βίντεο: %s fps" + +msgid "VideoMode" +msgstr "Λειτουργία εικόνας" + +msgid "Videocodec" +msgstr "Κωδικοποιητής" + +msgid "Videoformat" +msgstr "Λόγος πλευρών" + +msgid "Videosize" +msgstr "Μέγεθος εικόνας" + +msgid "View Rass interactive..." +msgstr "Εμφάνιση διαδραστικού Rass..." + +msgid "View details" +msgstr "Εμφάνιση λεπτομερειών" + +msgid "View list of available " +msgstr "Εμφάνιση λίστας διαθέσιμων " + +msgid "View list of available CommonInterface extensions" +msgstr "Εμφάνιση λίστας διαθέσιμων επεκτάσεων Κοινής Διεπαφής" + +msgid "View list of available EPG extensions." +msgstr "Εμφάνιση λίστας διαθέσιμων επεκτάσεων EPG" + +msgid "View list of available Satellite equipment extensions." +msgstr "Εμφάνιση λίστας διαθέσιμων επεκτάσεων δορυφορικού εξοπλισμού" + +msgid "View list of available communication extensions." +msgstr "Εμφάνιση λίστας διαθέσιμων επεκτάσεων επικοινωνίας" + +msgid "View list of available default settings" +msgstr "Εμφάνιση λίστας διαθέσιμων επεκτάσεων αρχικών ρυθμίσεων." + +msgid "View list of available display and userinterface extensions." +msgstr "Εμφάνιση λίστας διαθέσιμων επεκτάσεων Οθόνης και Διεπαφής χρήστη" + +msgid "View list of available multimedia extensions." +msgstr "Εμφάνιση λίστας διαθέσιμων επεκτάσεων πολυμέσων" + +msgid "View list of available networking extensions" +msgstr "Εμφάνιση λίστας διαθέσιμων επεκτάσεων δικτύωσης" + +msgid "View list of available recording extensions" +msgstr "Εμφάνιση λίστας διαθέσιμων επεκτάσεων εγγραφών" + +msgid "View list of available skins" +msgstr "Εμφάνιση λίστας διαθέσιμων θεμάτων" + +msgid "View list of available software extensions" +msgstr "Εμφάνιση λίστας διαθέσιμων επεκτάσεων λογισμικού" + +msgid "View list of available system extensions" +msgstr "Εμφάνιση λίστας διαθέσιμων επεκτάσεων συστήματος" + +msgid "View photos..." +msgstr "Εμφάνιση φωτογραφιών..." + +msgid "View teletext..." +msgstr "Εμφάνιση τηλεκειμένου..." + +msgid "View video CD..." +msgstr "Παρακολούθηση video CD..." + +msgid "Virtual keyboard" +msgstr "Εικονικό πληκτρολόγιο" + +msgid "Voltage mode" +msgstr "Tάση λειτουργίας" + +msgid "Volume" +msgstr "Ένταση" + +msgid "W" +msgstr "Δ" + +msgid "WEP" +msgstr "WEP" + +msgid "WLAN connection" +msgstr "Σύνδεση WLAN" + +msgid "WPA" +msgstr "WPA" + +msgid "WPA or WPA2" +msgstr "WPA ή WPA2" + +msgid "WPA2" +msgstr "WPA2" + +msgid "WSS on 4:3" +msgstr "WSS σε 4:3" + +msgid "Waiting" +msgstr "Αναμονή" + +msgid "Waiting for mount" +msgstr "Αναμονή για προσάρτηση" + +msgid "Waiting for partition" +msgstr "Αναμονή για κατάτμηση" + +msgid "Wakeup" +msgstr "Αφύπνιση" + +msgid "Wakeup TV from standby" +msgstr "Αφύπνιση TV από αναμονή" + +msgid "Wakeup receiver for start timer" +msgstr "Αφύπνιση του δέκτη για χρονοδιακόπτη εκκίνησης" + +msgid "Wakeup receiver from standby" +msgstr "Αφύπνιση δέκτη από αναμονή" + +msgid "Wakeup signal from TV" +msgstr "Σήμα αφύπνισης από TV" + +msgid "Wakeup type" +msgstr "Τύπος αφύπνισης" + +msgid "Warning: no LNB; using factory defaults." +msgstr "Προσοχή: δεν υπάρχει LNB, χρήση των εργοστασιακών ρυθμίσεων." + +msgid "Watch movies..." +msgstr "Αναπαραγωγή ταινιών..." + +msgid "Watch recordings..." +msgstr "Παρακολούθηση εγγραφών..." + +msgid "Wed" +msgstr "Τετ" + +msgid "Wednesday" +msgstr "Τετάρτη" + +msgid "Weekday" +msgstr "Καθημερινή" + +msgid "Weighted position" +msgstr "Σταθμισμένη θέση" + +msgid "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." +msgstr "" +"Καλώς ορίσατε στο Επεξεργαστή Σημείων Αποκοπής.\n" +"\n" +"Αναζητήστε την αρχή του τμήματος που θέλετε να διαγράψετε. Πιέστε ΟΚ, επιλέξτε \"αρχή αποκοπής\".\n" +"\n" +"Στη συνέχεια αναζητήστε το τέλος του τμήματος, πιέστε ΟΚ, επιλέξτε \"τέλος αποκοπής\". Αυτό ήταν!" + +msgid "Welcome to the image upgrade wizard. The wizard will assist you in upgrading the firmware of your receiver by providing a backup facility for your current settings and a short explanation of how to upgrade your firmware." +msgstr "Καλωσορίσατε στον οδηγό αναβάθμισης λογισμικού. Αυτός ο οδηγός θα σας βοηθήσει να αναβαθμίσετε το υλικολογισμικό του δέκτη, παρέχοντας ευκολίες εφεδρείας για τις τρέχουσες ρυθμίσεις σας και μια σύντομη επεξήγηση για το πώς να αναβαθμίσετε το υλικολογισμικό." + +msgid "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" +msgstr "" +"Καλώς ήρθατε.\n" +"\n" +"Αν θέλετε να συνδέσετε το δέκτη σας στο Internet, αυτός ο οδηγός θα σας καθοδηγήσει στις βασικές ρυθμίσεις του δικτύου του δέκτη σας.\n" +"\n" +"Πατήστε OK για να ξεκινήσετε τη ρύθμιση του δικτύου σας" + +msgid "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." +msgstr "" +"Καλώς ήρθατε. \n" +"\n" +"Αυτός ο οδηγός εκκίνησης θα σας καθοδηγήσει στις βασικές ρυθμίσεις του δέκτη σας.\n" +"Πατήστε το πλήκτρο OK στο τηλεχειριστήριο για να προχωρήσετε στο επόμενο βήμα." + +msgid "Welcome..." +msgstr "Καλώς ορίσατε..." + +msgid "West" +msgstr "Δυτικά" + +msgid "West limit set" +msgstr "Δυτικό όριο" + +msgid "What do you want to scan?" +msgstr "Τι θέλετε να ανιχνεύσετε;" + +msgid "When enabled the PiP can be closed by the exit button." +msgstr "Όταν είναι ενεργό, το PiP μπορεί να τερματιστεί με το πλήκτρο εξόδου." + +msgid "When enabled the arrow buttons around the OK button will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled the left, right, CH+/-, B+/-, P+/- buttons will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled you can specify a timeframe to ignore the shutdown timer when the receiver is in standby mode" +msgstr "Όταν είναι ενεργό, μπορείτε να ορίσετε ένα χρονοπλαίσιο αγνόησης του χρονοδιακόπτη τερματισμού όταν ο δέκτης βρίσκεται σε αναμονή" + +msgid "When enabled you can specify a timeframe were the inactivity sleeptimer is ignored. Not the detection is disabled during this timeframe but the inactivity timeout is disabled" +msgstr "Όταν είναι ενεργό, μπορείτε να ορίσετε το μεσοδιάστημα στο οποίο θα αγνοείται η αδράνεια του χρονοδιακόπτη. Ο εντοπισμός δεν απενεργοποιείται σε αυτό το διάστημα αλλά ο χρόνος λήξης της αδράνειας." + +msgid "When enabled you can zap channels with the CH+/-, B+/-, P+/- buttons instead of opening the channel selection list." +msgstr "Όταν είναι ενεργό, μπορείτε να μεταβαίνετε στα κανάλια με τα πλήκτρα CH+/-, B+/-, P+/- αντί να ανοίγετε τη λίστα επιλογής καναλιών." + +msgid "When enabled you get the channel selection list via the OK button, the infobar toggle is then transfered to exit button" +msgstr "Όταν είναι ενεργό, η μετάβαση στη λίστα επιλογής καναλιών γίνεται με το ΟΚ και η μπάρα πληροφοριών μεταφέρεται στο πλήκτρο εξόδου" + +msgid "When enabled, AIT data will be included in http streams. This allows a client receiver to use HbbTV." +msgstr "Όταν είναι ενεργό, τα AIT δεδομένα θα περιλαμβάνονται στις ροές http. Αυτό επιτρέπει σε ένα δέκτη - πελάτη να χρησιμοποιήσει το HbbTV." + +msgid "When enabled, ECM data will be included in http streams. This allows a client receiver to do the descrambling." +msgstr "Όταν είναι ενεργό, τα ECM δεδομένα θα περιλαμβάνονται στις ροές http. Αυτό επιτρέπει σε ένα δέκτη - πελάτη να κάνει την αποκρυπτογράφηση." + +msgid "When enabled, EIT data will be included in http streams. This allows a client receiver to show EPG." +msgstr "Όταν είναι ενεργό, τα ΕΙΤ δεδομένα θα περιλαμβάνονται στις ροές http. Αυτό επιτρέπει σε ένα δέκτη - πελάτη vα εμφανίσει EPG." + +msgid "When enabled, a popup message will be shown when a movie has finished and the next one will start." +msgstr "Όταν είναι ενεργό, ένα αναδυόμενο μήνυμα θα εμφανίζεται όταν μια ταινία έχει τελειώσει και αρχίζει η επόμενη." + +msgid "When enabled, a popup message will be shown when a recording starts." +msgstr "Όταν είναι ενεργό, ένα αναδυόμενο μήνυμα θα εμφανίζεται όταν ξεκινά μια εγγραφή." + +msgid "When enabled, a radio background image will be visible while listening to a radio channel." +msgstr "Όταν είναι ενεργό, μια εικόνα φόντου ραδιοφώνου θα είναι ορατή, ενώ ακούτε ένα ραδιοφωνικό σταθμό." + +msgid "When enabled, a recording is allowed to interrupt live tv, when there are no free tuners." +msgstr "Όταν είναι ενεργό, μία εγγραφή θα επιτρέπεται να διακόψει την TV, όταν δεν υπάρχουν ελεύθερα tuners." + +msgid "When enabled, a warning will be displayed and the user will get an option to stop or to continue the timeshift." +msgstr "Όταν είναι ενεργό, θα εμφανίζεται μία προειδοποίηση και ο χρήστης θα έχει την επιλογή να σταματήσει ή να συνεχίσει τη χρονομετατόπιση." + +msgid "When enabled, authentication is required to watch http streams." +msgstr "Όταν είναι ενεργό, απαιτείται πιστοποίηση για την παρακολούθηση ροών http." + +msgid "When enabled, channel numbering will start at '1' for each bouquet." +msgstr "Όταν είναι ενεργό, η αρίθμηση των καναλιών θα ξεκινά από το '1' για κάθε μπουκέτο." + +msgid "When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen." +msgstr "Όταν είναι ενεργό, περιεχόμενο με λόγο πλευρών 4:3 θα επεκταθεί ώστε να ταιριάξει στην οθόνη." + +msgid "When enabled, continue to the next bouquet when the last channel of the current bouquet is reached while changing channels." +msgstr "Όταν είναι ενεργό, θα μεταβείτε στο επόμενο μπουκέτο όταν έχετε φτάσει στο τελευταίο κανάλι του τρέχοντος κατά το ζάπινγκ." + +msgid "When enabled, deleted recordings are moved to the trash can, instead of being deleted immediately." +msgstr "Όταν είναι ενεργό, οι διαγραμμένες εγγραφές μετακινούνται στον κάδο αχρήστων, αντί να διαγράφονται άμεσα." + +msgid "When enabled, display the EIT now/next eventdata in infobar. When disabled, display now/next eventdata from the EPG cache instead." +msgstr "Όταν είναι ενεργό, οι πληροφορίες ΕΙΤ τώρα/επόμενο θα εμφανίζονται στη μπάρα πληροφοριών. Αν είναι ανενεργό, θα εμφανίζονται από το αποθηκευμένο EPG." + +msgid "When enabled, encryption info will be shown in the infobar (when supported by the skin)." +msgstr "Όταν είναι ενεργό, οι πληροφορίες κρυπτογράφησης θα εμφανίζονται στην μπάρα πληροφοριών (όταν υποστηρίζεται από το θέμα)." + +msgid "When enabled, error messages related to the Common Interface module will not be shown." +msgstr "Όταν είναι ενεργό, δεν θα εμφανίζονται τα μηνύματα σφάλματος από την Κοινή Διεπαφή." + +msgid "When enabled, error messages related to zapping will not be shown." +msgstr "Όταν είναι ενεργό, δεν θα εμφανίζονται τα μηνύματα σφάλματος κατά το ζάπινγκ." + +msgid "When enabled, external subtitles will be always turned on for playback movie." +msgstr "Όταν είναι ενεργό, οι εξωτερικοί υπότιτλοι θα εμφανίζονται πάντα κατά την αναπαραγωγή." + +msgid "When enabled, graphical DVB subtitles are preferred over teletext subtitles, when both types are available." +msgstr "Όταν είναι ενεργό, οι γραφικοί υπότιτλοι DVB θα προτιμώνται αντί αυτών του τηλεκειμένου, όταν και οι δύο είναι διαθέσιμοι." + +msgid "When enabled, graphical DVB subtitles will be centered horizontally." +msgstr "Όταν είναι ενεργό, οι γραφικοί υπότιτλοι DVB θα κεντράρονται οριζόντια." + +msgid "When enabled, graphical DVB subtitles will be displayed at their original position." +msgstr "Όταν είναι ενεργό, οι γραφικοί υπότιτλοι DVB θα εμφανίζονται στην αρχική τους θέση." + +msgid "When enabled, graphical DVB subtitles will be displayed in yellow, instead of the original color." +msgstr "Όταν είναι ενεργό, οι γραφικοί υπότιτλοι DVB θα εμφανίζονται σε κίτρινο χρώμα αντί του κανονικού τους." + +msgid "When enabled, http streams are descrambled on the server side. The (remote) client receiver does not have to do descrambling." +msgstr "Όταν είναι ενεργό, οι ροές http θα αποκωδικοποιούνται από μεριά του διακομιστή. Ο (απομακρυσμένος) πελάτης δεν θα απαιτείται να κάνει αποκρυπτογράφηση." + +msgid "When enabled, it is possible to leave the movieplayer with exit." +msgstr "Όταν είναι ενεργό, είναι δυνατή η έξοδος από την αναπαραγωγή ταινιών με το πλήκτρο εξόδου." + +msgid "When enabled, measure power consumption to detect when the rotor stops turning (when supported by the tuner)." +msgstr "Όταν είναι ενεργό, θα μετράται η κατανάλωση ενέργειας για να εντοπιστεί το σταμάτημα κίνησης του μοτέρ (όταν υποστηρίζεται από το tuner)." + +msgid "When enabled, number markers will be hiden." +msgstr "Όταν είναι ενεργό, δεν θα εμφανίζονται οι σημειωτές των αριθμών." + +msgid "When enabled, services may be grouped in multiple bouquets." +msgstr "Όταν είναι ενεργό, οι υπηρεσίες μπορούν να ομαδοποιηθούν σε πολλαπλά μπουκέτα." + +msgid "When enabled, show channel numbers in the channel selection screen." +msgstr "Όταν είναι ενεργό, οι αριθμοί των καναλιών θα εμφανίζονται στη λίστα επιλογής καναλιών." + +msgid "When enabled, subtitles for the hearing impaired can be used." +msgstr "Όταν είναι ενεργό, μπορεί να χρησιμοποιηθούν υπότιτλοι για άτομα με προβλήματα ακοής ." + +msgid "When enabled, subtitles for the hearing impaired will be preferred over normal subtitles, when both types are available." +msgstr "Όταν είναι ενεργό, οι υπότιτλοι για άτομα με προβλήματα ακοής θα προτιμώνται έναντι των φυσιολογικών υποτίτλων, όταν και οι δύο τύποι είναι διαθέσιμοι." + +msgid "When enabled, teletext pages will be cached, allowing faster access." +msgstr "Όταν είναι ενεργό, οι σελίδες τηλεκειμένου θα αποθηκεύονται προσωρινά, επιτρέποντας την ταχύτερη πρόσβαση." + +msgid "When enabled, teletext subtitles will be displayed at their original position." +msgstr "Όταν είναι ενεργό, οι υπότιτλοι τηλεκειμένου θα εμφανίζονται στην αρχική τους θέση." + +msgid "When enabled, the VCR scart option will be shown on the main menu" +msgstr "Όταν είναι ενεργό, η επιλογή VCR scart θα εμφανίζεται στο κύριο μενού" + +msgid "When enabled, the channel selection list will be hidden while listening to a radio channel" +msgstr "Όταν είναι ενεργό, η λίστα επιλογής καναλιών δεν θα εμφανίζεται κατά την ακρόαση ραδιοφώνου." + +msgid "When enabled, the infobar will be displayed when a new event starts." +msgstr "Όταν είναι ενεργό, η μπάρα πληροφοριών θα εμφανίζεται όταν ένα νέο πρόγραμμα αρχίζει." + +msgid "When enabled, the infobar will be displayed when changing channels." +msgstr "Όταν είναι ενεργό, η μπάρα πληροφοριών θα εμφανίζεται κατά την αλλαγή καναλιών." + +msgid "When enabled, the infobar will be displayed when skipping forwards/backwards during media playback." +msgstr "Όταν είναι ενεργό, η μπάρα πληροφοριών θα εμφανίζεται κατά την υπερπήδηση μπροστά/πίσω στην αναπαραγωγή πολυμέσων." + +msgid "When enabled, the lenght of each recording will be shown in the movielist (this might cause some additional loading time)." +msgstr "Όταν είναι ενεργό, η διάρκεια κάθε εγγραφής θα εμφανίζεται στη λίστα (μπορεί να αυξηθεί ο χρόνος φόρτωσης)." + +msgid "When enabled, the original line breaks will be removed from the teletext subtitles." +msgstr "Όταν είναι ενεργό, οι αρχικές αλλαγές γραμμής θα αφαιρούνται από τους υπότιτλους τηλεκειμένου." + +msgid "When enabled, the receiver will automatically use the audio track which you selected before." +msgstr "Όταν είναι ενεργό, ο δέκτης θα χρησιμοποιεί αυτόματα το κανάλι ήχου που είχατε προεπιλέξει." + +msgid "When enabled, the receiver will automatically use the subtitles which you selected before." +msgstr "Όταν είναι ενεργό, ο δέκτης θα χρησιμοποιεί τους υπότιτλους που είχατε προεπιλέξει." + +msgid "When enabled, the receiver will no longer monitor the tuned transponder for possible changes. Do not use this option unless you know what you are doing." +msgstr "Όταν είναι ενεργό, ο δέκτης δεν θα ελέγχει πλέον το συντονισμένο αναμεταδότη για πιθανές αλλαγές. Μην αλλάζετε αυτή την επιλογή αν δεν ξέρετε τι κάνετε." + +msgid "When enabled, the receiver will select an AC3 track (when available)." +msgstr "Όταν είναι ενεργό, ο δέκτης θα επιλέγει έναν ήχο AC3 (όταν είναι διαθέσιμος)." + +msgid "When enabled, the receiver will select an AC3+ track (when available)." +msgstr "Όταν είναι ενεργό, ο δέκτης θα επιλέγει έναν ήχο AC3+ (όταν είναι διαθέσιμος)." + +msgid "When enabled, timeshift starts automatically in background after specified time." +msgstr "Όταν είναι ενεργό, η χρονομετατόπιση θα ξεκινά αυτόματα στο παρασκήνιο μετά από ορισμένο χρόνο." + +msgid "When enabled, use DHCP for the IP configuration." +msgstr "Όταν είναι ενεργό, θα γίνεται χρήση του DHCP για τη ρύθμιση IP." + +msgid "When enabled, your receiver will detect activity on the VCR SCART input." +msgstr "Όταν είναι ενεργό, ο δέκτης θα εντοπίζει δραστηριότητα στην είσοδο του VCR SCART." + +msgid "When nonzero, a recording will start earlier than the starting time indicated by the EPG." +msgstr "Όταν δεν είναι μηδέν, μία εγγραφή θα ξεκινά νωρίτερα από την ώρα που αναγράφεται στο EPG." + +msgid "When nonzero, a recording will stop later than the ending time indicated by the EPG." +msgstr "Όταν δεν είναι μηδέν, μία εγγραφή θα σταματά μετά την ώρα που αναγράφεται στο EPG." + +msgid "When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture." +msgstr "Όταν το περιεχόμενο έχει λόγο πλευρών 16:9, επιλέξτε αν θα γίνεται κλιμάκωση/άπλωμα της εικόνας." + +msgid "When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture." +msgstr "Όταν το περιεχόμενο έχει λόγο πλευρών 4:3, επιλέξτε αν θα γίνεται κλιμάκωση/άπλωμα της εικόνας." + +msgid "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" +msgstr "" +"Με την επαναφορά, θα χάσετε ΟΛΑ τα δεδομένα ρυθμίσεων\n" +"(συμπεριλαμβάνονται μπουκέτα, υπηρεσίες, δορυφόροι...)\n" +"Με την ολοκλήρωση της επαναφοράς, ο δέκτης θα επανεκκινηθεί αυτόματα!\n" +"\n" +"Θέλετε σίγουρα να γίνει η επαναφορά στις εργοστασιακές ρυθμίσεις;" + +msgid "Where do you want to backup your settings?" +msgstr "Που θέλετε να γίνει η αντιγραφή των ρυθμίσεων;" + +msgid "Where to save temporary timeshift recordings?" +msgstr "Που θέλετε να αποθηκεύονται προσωρινά οι χρονομετατοπισμένες εγγραφές;" + +msgid "Wireless LAN" +msgstr "Ασύρματο δίκτυο" + +msgid "Wireless network" +msgstr "Ασύρματο δίκτυο" + +msgid "Wireless network configuration..." +msgstr "Ρύθμιση σύνδεσης ασύρματου δικτύου..." + +msgid "Wireless network connection setup" +msgstr "Ρύθμιση σύνδεσης ασύρματου δικτύου" + +msgid "Wireless network connection setup." +msgstr "Ρύθμιση σύνδεσης ασύρματου δικτύου." + +msgid "Wireless network state" +msgstr "Κατάσταση ασύρματου δικτύου" + +msgid "With popup" +msgstr "Με αναδυόμενο παράθυρο" + +msgid "Without popup" +msgstr "Χωρίς αναδυόμενο παράθυρο" + +msgid "Would you like to install a softcam?" +msgstr "Θέλετε να εγκαταστήσετε ένα Softcam;" + +msgid "Write error while recording. Disk full?\n" +msgstr "Σφάλμα κατά την εγγραφή. Δίσκος γεμάτος;\n" + +msgid "Write failed!" +msgstr "Η εγγραφή απέτυχε!" + +msgid "YPbPr" +msgstr "YPbPr" + +msgid "Year" +msgstr "Έτος" + +msgid "Yellow DVB subtitles" +msgstr "Κίτρινοι υπότιτλοι" + +msgid "Yes" +msgstr "Ναι" + +msgid "Yes and save" +msgstr "Ναι και αποθήκευση" + +msgid "Yes and save in movie dir" +msgstr "Ναι και αποθήκευση στο φάκελο ταινιών" + +msgid "Yes to all" +msgstr "Ναι σε όλα" + +msgid "Yes, always" +msgstr "Ναι, πάντα" + +msgid "Yes, and delete this movie" +msgstr "Ναι, και διαγραφή αυτής της ταινίας" + +msgid "Yes, backup my settings!" +msgstr "Ναι, να δημιουργηθεί αντίγραφο των ρυθμίσεων!" + +msgid "Yes, delete this movie and return to movie list" +msgstr "Ναι, διαγραφή της ταινίας και επιστροφή στη λίστα" + +msgid "Yes, do a manual scan now" +msgstr "Ναι, να γίνει χειροκίνητη ανίχνευση τώρα" + +msgid "Yes, do an automatic scan now" +msgstr "Ναι, να γίνει αυτόματη ανίχνευση τώρα" + +msgid "Yes, do another manual scan now" +msgstr "Ναι, να γίνει ακόμα μία χειροκίνητη ανίχνευση τώρα" + +msgid "Yes, perform a shutdown now." +msgstr "Ναι, τερματισμός τώρα." + +msgid "Yes, restore the settings now" +msgstr "Ναι, επαναφορά ρυθμίσεων τώρα" + +msgid "Yes, returning to movie list" +msgstr "Ναι, επιστροφή στη λίστα ταινιών" + +msgid "Yesterday" +msgstr "Χθες" + +#, python-format +msgid "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" +msgstr "" +"Έχετε ήδη εγκατεστημένη μία λίστα καναλιών,\n" +"θέλετε να διαγράψετε\n" +"\"%s\";" + +msgid "You can cancel the installation." +msgstr "Μπορείτε να ακυρώσετε την εγκατάσταση." + +msgid "You can cancel the removal." +msgstr "Μπορείτε να ακυρώσετε τη διαγραφή." + +msgid "You can continue watching TV etc. while this is running." +msgstr "Μπορείτε να συνεχίσετε να βλέπετε TV κλπ όσο αυτό εκτελείται." + +msgid "You can install this plugin." +msgstr "Μπορείτε να εγκαταστήσετε αυτό το πρόσθετο." + +msgid "You can only burn receiver recordings!" +msgstr "Μπορείτε μόνο να κάψετε εγγραφές του δέκτη!" + +msgid "You can remove this plugin." +msgstr "Μπορείτε να διαγράψετε το πρόσθετο." + +msgid "You cannot delete this!" +msgstr "Δεν μπορετε να διαγράψτε αυτό!" + +msgid "You didn't select a channel to record from." +msgstr "Δεν επιλέξατε κανάλι για εγγραφή." + +msgid "You have chosen to backup your settings. Please press OK to start the backup now." +msgstr "Επιλέξατε να κρατηθεί αντίγραφο ασφαλείας των ρυθμίσεων. Πιέστε ΟΚ για να ξεκινήσει η διαδικασία τώρα." + +msgid "You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased." +msgstr "Επιλέξατε να δημιουργήσετε νέο εκκινήσιμο USB στικ για εγκατάσταση NFI. Θα γίνει εκ νέου κατάτμηση του usb στικ και όλα τα δεδομένα σε αυτό θα χαθούν." + +msgid "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." +msgstr "Επιλέξατε επαναφορά των ρυθμίσεων. Το Enigma2 θα επανεκκινηθεί μετά την επαναφορά. Πιέστε ΟΚ για να ξεκινήσει η διαδικασία τώρα." + +#, python-format +msgid "You have to wait %s!" +msgstr "Περιμένετε για το %s!" + +msgid "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." +msgstr "Απαιτείται ένα PC συνδεδεμένο με το δέκτη. Αν χρειάζεστε περισσότερες οδηγίες, παρακαλούμε επισκεφτείτε τον ιστότοπο http://www.dm7025.de. Ο δέκτης σας τώρα θα σταματήσει. Αν έχετε ακολουθήσει τις οδηγίες από τον ιστότοπο, το νέο υλικολογισμικό θα ζητήσει να επαναφέρετε τις ρυθμίσεις σας." + +msgid "You system does not support ext4" +msgstr "Το σύστημά σας δεν υποστηρίζει ext4" + +msgid "Your backup succeeded. We will now continue to explain the further upgrade process." +msgstr "Το αντίγραφο ασφαλείας ολοκληρώθηκε. Ση συνέχεια θα επεξηγηθεί η υπόλοιπη διαδικασία." + +msgid "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" +msgstr "Η συλλογή σας υπερβαίνει το μέγεθος ενός DVD μονής στρώσης. Θα χρειαστείτε ένα κενό DVD διπλής στρώσης!" + +msgid "Your current collection will get lost!" +msgstr "Η τρέχουσα συλλογή σας θα χαθεί!" + +msgid "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." +msgstr "" +"Το λογισμικό του frontprocessor πρέπει να αναβαθμιστεί\n" +"Πιέστε ΟΚ για την αναβάθμιση." + +msgid "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Ο δέκτης σας θα αναβαθμιστεί\n" +"Παρακαλώ περιμένετε μέχρι την επανεκκίνηση του δέκτη σας\n" +"Αυτό μπορεί να διαρκέσει μερικά λεπτά" + +msgid "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." +msgstr "Η σύνδεση στο διαδίκτυο δεν λειτουργεί! Επιλέξτε τι θέλετε να ακολουθήσει." + +#, python-format +msgid "Your internet connection is working (ip: %s)" +msgstr "Η σύνδεση στο διαδίκτυο λειτουργεί (ip: %s)" + +msgid "Your network configuration has been activated." +msgstr "Η ρύθμιση του δικτύου σας ενεργοποιήθηκε." + +msgid "Your receiver does not have an internet connection" +msgstr "Ο δέκτης σας δεν διαθέτει σύνδεση στο διαδίκτυο" + +msgid "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" +msgstr "" +"Ο δέκτης σας είναι τώρα έτοιμος για χρήση.\n" +"\n" +"Η σύνδεση με το διαδίκτυο λειτουργεί.\n" +"\n" + +msgid "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Ο δέκτης σας είναι πλέον έτοιμος για χρήση. \n" +"\n" +"Η σύνδεσή σας στο διαδίκτυο λειτουργεί τώρα. \n" +"\n" +"Παρακαλώ πατήστε OK για να συνεχίσετε." + +msgid "Your receiver is rebooting" +msgstr "Γίνεται επανεκκίνηση του δέκτη σας" + +msgid "Your receiver is shutting down" +msgstr "Ο δέκτης σας απενεργοποιείται" + +msgid "Your receiver is shutting down. Please stand by..." +msgstr "Ο δέκτης σας απενεργοποιείται. Παρακαλώ περιμένετε..." + +msgid "Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver." +msgstr "Ο δέκτης σας ίσως να μη μπορεί να χρησιμοποιηθεί. Παρακαλούμε ανατρέξτε στο εγχειρίδιο για περισσότερη βοήθεια πριν κάνετε επανεκκίνηση." + +msgid "Your receiver will got to stand by due to the sleeptimer." +msgstr "Ο δέκτης σας θα μεταβεί σε αναμονή εξαιτίας του χρονοδιακόπτη ύπνου." + +msgid "Your receiver will got to standby due to inactivity." +msgstr "Ο δέκτης σας θα μεταβεί σε αναμονή εξαιτίας της αδράνειας." + +msgid "Your receiver will restart after pressing OK on your remote control." +msgstr "Ο δέκτης σας θα επανεκκινηθεί πατώντας το OK στο τηλεχειριστήριο." + +msgid "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." +msgstr "" +"Αδυναμία εκκίνησης της ασύρματης σύνδεσης δικτύου!\n" +"Έχετε συνδέσει το USB στικ;\n" +"\n" +"Επιλέξτε τι θέλετε να γίνει μετά." + +msgid "Zap" +msgstr "Μετάβαση" + +msgid "Zap back to previously tuned service?" +msgstr "Επιστροφή στην προηγούμενη υπηρεσία;" + +msgid "Zap back to service before positioner setup?" +msgstr "Επιστροφή στην υπηρεσία πριν τη ρύθμιση του μοτέρ;" + +msgid "Zap back to service before tuner setup?" +msgstr "Eπιστροφή στην υπηρεσία πριν τη ρύθμιση του tuner;" + +msgid "Zap focus to Picture in Picture" +msgstr "Μετάβαση εστίασης σε Εικόνα σε Εικόνα" + +msgid "Zap focus to main screen" +msgstr "Μετάβαση εστίασης στην κύρια οθόνη" + +msgid "Zap mode" +msgstr "Λειτουργία μετάβασης" + +msgid "Zap to selected channel" +msgstr "Μετάβαση στο επιλεγμένο κανάλι" + +msgid "Zap to selected channel, or show detailed event info (depends on configuration)" +msgstr "Μετάβαση στο επιλεγμένο κανάλι, ή εμφάνιση αναλυτικών πληροφοριών γεγονοτός (εξαρτάται από την ρύθμιση)" + +msgid "[alternative edit]" +msgstr "[επεξεργασία εναλλακτικών]" + +msgid "[bouquet edit]" +msgstr "[επεξεργασία μπουκέτου]" + +msgid "[favourite edit]" +msgstr "[επεξεργασία αγαπημένου]" + +msgid "[move mode]" +msgstr "[κατάσταση μεταφοράς]" + +msgid "a gui to assign services/providers to common interface modules" +msgstr "γραφικό περιβάλλον για ορισμό υπηρεσιών/παρόχων σε κοινή διεπαφή" + +msgid "a gui to assign services/providers/caids to common interface modules" +msgstr "γραφικό περιβάλλον για ανάθεση υπηρεσιών/παρόχων/caids σε κοινή διεπαφή" + +msgid "abort alternatives edit" +msgstr "ακύρωση εναλλακτικής επεξεργασίας" + +msgid "abort bouquet edit" +msgstr "ακύρωση επεξεργασίας μπουκέτου" + +msgid "abort favourites edit" +msgstr "ακύρωση επεξεργασίας αγαπημένων" + +msgid "about to start" +msgstr "έτοιμο για εκκίνηση" + +msgid "activate network adapter configuration" +msgstr "ενεργοποίηση ρύθμισης κάρτας δικτύου" + +msgid "add alternatives" +msgstr "προσθήκη εναλλακτικών" + +msgid "add bookmark" +msgstr "προσθήκη σελιδοδείκτη" + +msgid "add bouquet" +msgstr "προσθήκη μπουκέτου" + +msgid "add marker" +msgstr "προσθήκη σημειωτή" + +msgid "add service to bouquet" +msgstr "προσθήκη υπηρεσίας σε μπουκέτο" + +msgid "add service to favourites" +msgstr "προσθήκη υπηρεσίας στα αγαπημένα" + +msgid "add to parental protection" +msgstr "προσθήκη στο γονικό έλεγχο" + +msgid "adult movie/drama" +msgstr "ταινία ενηλίκων/δράμα" + +msgid "advanced" +msgstr "προχωρημένο" + +msgid "adventure/western/war" +msgstr "περιπέτεια/γουέστερν/πόλεμος" + +msgid "advertisement/shopping" +msgstr "διαφήμιση/αγορές" + +msgid "after " +msgstr "μετά" + +msgid "alphabetic" +msgstr "αλφαβητικά" + +msgid "alphabetic reverse" +msgstr "αλφαβητική αντιστροφή" + +msgid "alternative" +msgstr "εναλλασσόμενο" + +msgid "always" +msgstr "πάντα" + +msgid "and select next channel" +msgstr "και επιλογή του επόμενου καναλιού" + +msgid "and select previous channel" +msgstr "και επιλογή του προηγούμενου καναλιού" + +msgid "arts/culture (without music, general)" +msgstr "τέχνες/πολιτισμός (χωρίς μουσική, γενικά)" + +msgid "arts/culture magazine" +msgstr "τέχνες/πολιτιστικό μαγκαζίνο" + +msgid "athletics" +msgstr "αθλητισμός" + +msgid "audio tracks" +msgstr "κομμάτια ήχου" + +msgid "auto" +msgstr "αυτόματο" + +msgid "automatic" +msgstr "αυτόματο" + +msgid "back" +msgstr "πίσω" + +msgid "background image" +msgstr "εικόνα φόντου" + +msgid "ballet" +msgstr "μπαλέτο" + +#, python-format +msgid "bc%s" +msgstr "bc%s" + +msgid "better" +msgstr "καλύτερα" + +msgid "black" +msgstr "μαύρο" + +msgid "black & white" +msgstr "άσπρο & μαύρο" + +msgid "blacklist" +msgstr "μαύρη λίστα" + +msgid "blue" +msgstr "μπλε" + +msgid "broadcasting/press" +msgstr "μεταδόσεις/τύπος" + +msgid "by date" +msgstr "κατά ημερομηνία" + +msgid "cartoon/puppets" +msgstr "καρτούν/μαριονέτες" + +msgid "center" +msgstr "κέντρο" + +msgid "centered" +msgstr "στο κέντρο" + +msgid "centered, wrapped" +msgstr "στο κέντρο, σε αναδίπλωση" + +msgid "chapters" +msgstr "κεφάλαια" + +msgid "childrens's/youth program (general)" +msgstr "παδικά/νεανικό πρόγραμμα (γενικά)" + +msgid "circular left" +msgstr "αριστερόστροφη" + +msgid "circular right" +msgstr "δεξιόστροφη" + +msgid "comedy" +msgstr "κωμωδία" + +msgid "complex" +msgstr "σύνθετο" + +msgid "config menu" +msgstr "μενού ρύθμισης" + +msgid "confirmed" +msgstr "επιβεβαιωμένο" + +msgid "connected" +msgstr "συνδεδεμένο" + +msgid "continue" +msgstr "συνέχεια" + +msgid "cooking" +msgstr "μαγειρική" + +msgid "copy to bouquets" +msgstr "αντιγραφή στα μπουκέτα" + +msgid "create directory" +msgstr "δημιουργία φακέλου" + +#, python-format +msgid "currently installed image: %s" +msgstr "εγκατεστημένο λογισμικό: %s" + +msgid "daily" +msgstr "καθημερινά" + +msgid "day" +msgstr "ημέρα" + +msgid "default" +msgstr "προεπιλεγμένο" + +msgid "delete cut" +msgstr "διαγραφή αποκοπής" + +msgid "delete..." +msgstr "διαγραφή..." + +msgid "descramble and record ecm" +msgstr "αποκωδικοποίηση και εγγραφή ecm" + +msgid "detective/thriller" +msgstr "αστυνομικά/θρίλερ" + +msgid "disable" +msgstr "απενεργοποίηση" + +msgid "disable move mode" +msgstr "απενεργοποίηση κατάστασης μεταφοράς" + +msgid "disabled" +msgstr "απεργοποιημένο" + +msgid "disconnected" +msgstr "αποσυνδεδεμένο" + +msgid "discussion/interview/debate" +msgstr "συζητήσεις/συνέντευξη/ντιμπέιτ" + +msgid "do nothing" +msgstr "να μη γίνει τίποτα" + +msgid "documentary" +msgstr "ντοκυμαντέρ" + +msgid "don't descramble, record ecm" +msgstr "μη αποκωδικοποίηση, εγγραφή ecm" + +msgid "done!" +msgstr "ολοκληρώθηκε!" + +msgid "east" +msgstr "ανατολικά" + +msgid "economics/social advisory" +msgstr "οικονομία/κοινωνική συμβουλευτική" + +msgid "edit alternatives" +msgstr "επεξεργασία εναλλακτικών" + +msgid "education/science/factual topics (general)" +msgstr "εκπαίδευση/επιστήμη/πραγματικά θέματα (γενικά)" + +msgid "empty" +msgstr "κενό" + +msgid "enable" +msgstr "ενεργοποίηση" + +msgid "enable bouquet edit" +msgstr "ενεργοποίηση επεξεργασίας μπουκέτων" + +msgid "enable favourite edit" +msgstr "ενεργοποίηση επεξεργασίας αγαπημένων" + +msgid "enable move mode" +msgstr "ενεργοποίηση κατάστασης μεταφοράς" + +msgid "enabled" +msgstr "ενεργοποιημένο" + +msgid "end alternatives edit" +msgstr "τέλος επεξεργασίας εναλλακτικών" + +msgid "end bouquet edit" +msgstr "τέλος επεξεργασίας μπουκέτου" + +msgid "end cut here" +msgstr "τέλος αποκοπής εδώ" + +msgid "end favourites edit" +msgstr "τέλος επεξεργασίας αγαπημένων" + +msgid "entertainment (10-16 year old)" +msgstr "ψυχαγωγία (10-16 ετών)" + +msgid "entertainment (6-14 year old)" +msgstr "ψυχαγωγία (6-14 ετών)" + +msgid "equal to" +msgstr "ίσο με" + +msgid "equestrian" +msgstr "ιπποδρομίες" + +msgid "exit DVD player or return to file browser" +msgstr "έξοδος απο την αναπαραγωγή DVD ή επιστροφή στον πλοηγό αρχείων" + +msgid "exit movielist" +msgstr "έξοδος από τη λίστα ταινιών" + +msgid "exit network adapter configuration" +msgstr "έξοδος από ρύθμιση προσαρμογέα δικτύου" + +msgid "exit networkadapter setup menu" +msgstr "έξοδος από μενού ρυθμίσεων προσαρμογέα δικτύου" + +msgid "experimental film/video" +msgstr "πειραματικές ταινίες/βίντεο" + +msgid "false" +msgstr "ψευδές" + +msgid "fashion" +msgstr "μόδα" + +msgid "fileformats (BMP, PNG, JPG, GIF)" +msgstr "τύποι αρχείων (BMP, PNG, JPG, GIF)" + +msgid "filename" +msgstr "όνομα αρχείου" + +msgid "film/cinema" +msgstr "φιλμ/κινηματογράφος" + +msgid "fine arts" +msgstr "καλές τέχνες" + +msgid "fine-tune your display" +msgstr "μικρορύθμιση οθόνης" + +msgid "fitness & health" +msgstr "άσκηση & υγεία" + +msgid "flat alphabetic" +msgstr "αλφαβητική ταξινόμηση" + +msgid "flat alphabetic reverse" +msgstr "αλφαβητική αντιστροφή" + +msgid "folk/traditional music" +msgstr "λαϊκή/παραδοσιακή μουσική" + +msgid "football/soccer" +msgstr "ποδόσφαιρο" + +msgid "foreign countries/expeditions" +msgstr "ξένες χώρες/εκδρομές" + +msgid "forward to the next chapter" +msgstr "προώθηση στο επόμενο κεφάλαιο" + +msgid "free" +msgstr "ελεύθερα" + +msgid "from" +msgstr "από" + +msgid "further education" +msgstr "ανώτερη εκπαίδευση" + +msgid "game show/quiz/contest" +msgstr "τηλεπαιχνίδι/κουίζ/διαγωνισμός" + +msgid "gardening" +msgstr "κηπουρική" + +msgid "go to deep standby" +msgstr "μετάβαση σε βαθιά αναμονή" + +msgid "go to standby" +msgstr "μετάβαση σε αναμονή" + +msgid "grab this frame as bitmap" +msgstr "λήψη στιγμιότυπου του καρέ ως bitmap" + +msgid "green" +msgstr "πράσινο" + +msgid "handicraft" +msgstr "χειροτεχνία" + +msgid "height" +msgstr "ύψος" + +msgid "help..." +msgstr "βοήθεια..." + +msgid "horizontal" +msgstr "οριζόντια" + +msgid "information/education/school program" +msgstr "ειδήσεις/εκπαίδευση/σχολικό πρόγραμμα" + +msgid "init module" +msgstr "αρχικοποίηση αρθρώματος" + +msgid "init modules" +msgstr "αρχικοποίηση αρθρωμάτων" + +msgid "insert mark here" +msgstr "εισαγωγή σημειωτή" + +msgid "invalid type" +msgstr "μη έγκυρος τύπος" + +msgid "jazz" +msgstr "τζαζ" + +msgid "jump back to the previous title" +msgstr "μετάβαση στον πρηγούμενο τίτλο" + +msgid "jump forward to the next title" +msgstr "μετάβαση στον επόμενο τίτλο" + +msgid "languages" +msgstr "γλώσσες" + +msgid "leave movie player..." +msgstr "έξοδος από τον αναπαραγωγό ταινιών..." + +msgid "left" +msgstr "αριστερά" + +msgid "left, wrapped" +msgstr "αριστερά, σε αναδίπλωση" + +msgid "leisure hobbies (general)" +msgstr "χόμπι αναψυχής (γενικά)" + +msgid "length" +msgstr "διάρκεια" + +msgid "limit ..., aborting !" +msgstr "όριο ..., ματαίωση!" + +msgid "list style compact" +msgstr "συμπτυγμένη μορφή λίστας" + +msgid "list style compact with description" +msgstr "συμπτυγμένη μορφή λίστας με περιγραφή" + +msgid "list style default" +msgstr "προεπιλεγμένη μορφή λίστας" + +msgid "list style single line" +msgstr "λίστα μονής γραμμής" + +msgid "literature" +msgstr "λογοτεχνία" + +msgid "live broadcast" +msgstr "ζωντανή μετάδοση" + +msgid "locked" +msgstr "κλειδωμένο" + +msgid "loopthrough to" +msgstr "loopthrough σε" + +msgid "magazines/reports/documentary" +msgstr "περιοδικά/εκθέσεις/ντοκιμαντέρ" + +msgid "manual" +msgstr "χειροκίνητα" + +msgid "martial sports" +msgstr "πολεμικά σπορ" + +msgid "medicine/physiology/psychology" +msgstr "ιατρική/φυσιολογία/ψυχολογία" + +msgid "menu" +msgstr "μενού" + +msgid "mins" +msgstr "λεπτά" + +msgid "minutes" +msgstr "λεπτά" + +msgid "month" +msgstr "μήνας" + +msgid "motor sport" +msgstr "μηχανοκίνητος αθλητισμός" + +msgid "motoring" +msgstr "αυτοκίνηση" + +msgid "move down to last entry" +msgstr "μετάβαση στο τελευταίο στοιχείο" + +msgid "move down to next entry" +msgstr "μετάβαση στο επόμενο στοιχείο" + +msgid "move up to first entry" +msgstr "μετάβαση στο πρώτο στοιχείο" + +msgid "move up to previous entry" +msgstr "μετάβαση στο προηγούμενο στοιχείο" + +msgid "movie/drama (general)" +msgstr "ταινία/δράμα (γενικά)" + +msgid "multinorm" +msgstr "πολλαπλό" + +msgid "music/ballet/dance (general)" +msgstr "μουσική/μπαλέτο/χορός (γενικά)" + +msgid "musical/opera" +msgstr "μιούζικαλ/όπερα" + +msgid "nature/animals/environment" +msgstr "φύση/ζώα/περιβάλλον" + +msgid "never" +msgstr "ποτέ" + +msgid "new media" +msgstr "νέα πολυμέσα" + +msgid "news magazine" +msgstr "ειδησεογραφικό μαγκαζίνο" + +msgid "news/current affairs (general)" +msgstr "ειδήσεις/επικαιρότητα (γενικά)" + +msgid "news/weather report" +msgstr "ειδήσεις/δελτίο καιρού" + +msgid "no" +msgstr "όχι" + +msgid "no CAId selected" +msgstr "δεν έχει επιλεγεί CAId" + +msgid "no CI slots found" +msgstr "δεν βρέθηκαν κοινές διεπαφές (CI)" + +msgid "no module found" +msgstr "δεν βρέθηκε άρθρωμα" + +msgid "no storage devices found" +msgstr "δεν βρέθηκαν συσκευές αποθήκευσης" + +msgid "none" +msgstr "κανένα" + +msgid "normal" +msgstr "κανονικό" + +msgid "not configured" +msgstr "μη ρυθμισμένο" + +msgid "not locked" +msgstr "μη κλειδωμένο" + +msgid "not supported" +msgstr "δεν υποστηρίζεται" + +msgid "not used" +msgstr "δεν χρησιμοποιείται" + +msgid "nothing connected" +msgstr "δεν έχει συνδεθεί τίποτα" + +msgid "of a DUAL layer medium used." +msgstr "ενός μέσου ΔΙΠΛΗΣ στρώσης σε χρήση." + +msgid "of a SINGLE layer medium used." +msgstr "ενός μέσου ΜΟΝΗΣ στρώσης σε χρήση." + +msgid "off" +msgstr "κλειστό" + +msgid "offset is" +msgstr "το offset είναι" + +msgid "on" +msgstr "ανοικτό" + +msgid "on READ ONLY medium." +msgstr "σε μέσο ΜΟΝΟ ΓΙΑ ΑΝΑΓΝΩΣΗ." + +msgid "on end of movie" +msgstr "στο τέλος της ταινίας" + +msgid "once" +msgstr "μία φορά" + +msgid "only from deep standby" +msgstr "μόνο από βαθιά αναμονή" + +msgid "only from standby" +msgstr "μόνο από αναμονή" + +msgid "open EPG..." +msgstr "άνοιγμα EPG..." + +msgid "open Info..." +msgstr "άνοιγμα πληροφοριών..." + +msgid "open nameserver configuration" +msgstr "άνοιγμα ρύθμισης nameserver" + +msgid "original" +msgstr "αρχικό" + +msgid "original language" +msgstr "αρχική γλώσσα" + +msgid "pass" +msgstr "περνάει" + +msgid "performing arts" +msgstr "τέχνες και θεάματα" + +msgid "play as picture in picture" +msgstr "αναπαραγωγή ως PiP" + +msgid "play in mainwindow" +msgstr "αναπαραγωγή στο κεντρικό παράθυρο" + +msgid "please press OK when ready" +msgstr "πιέστε OK όταν είστε έτοιμοι" + +msgid "please wait, loading picture..." +msgstr "περίμενετε, φορτώνεται η εικόνα..." + +msgid "popular culture/traditional arts" +msgstr "λαϊκή κουλτούρα/παραδοσιακές τέχνες" + +msgid "pre-school children's program" +msgstr "πρόγραμμα για παιδιά προσχολικής ηλικίας" + +msgid "receiver software because updates are available." +msgstr "λογισμικού του δέκτη, διότι υπάρχουν διαθέσιμες ενημερώσεις." + +msgid "record" +msgstr "εγγραφή" + +msgid "recording..." +msgstr "εγγραφή..." + +msgid "red" +msgstr "κόκκινο" + +msgid "religion" +msgstr "θρησκεία" + +msgid "remarkable people" +msgstr "σημαίνοντα πρόσωπα" + +msgid "remove after this position" +msgstr "διαγραφή μετά από αυτό το σημείο" + +msgid "remove all alternatives" +msgstr "διαγραφή όλων των εναλλακτικών" + +msgid "remove all new found flags" +msgstr "διαγραφή όλων των νέων σημαιών" + +msgid "remove before this position" +msgstr "διαγραφή πριν από αυτό το σημείο" + +msgid "remove bookmark" +msgstr "διαγραφή σελιδοδείκτη" + +msgid "remove directory" +msgstr "διαγραφή φακέλου" + +msgid "remove entry" +msgstr "διαγραφή στοιχείου" + +msgid "remove from parental protection" +msgstr "διαγραφή από γονικό έλεγχο" + +msgid "remove new found flag" +msgstr "διαγραφή σημαίας \"νέο\"" + +msgid "remove selected satellite" +msgstr "διαγραφή επιλεγμένου δορυφόρου" + +msgid "remove this mark" +msgstr "διαγραφή αυτού του σημειωτή" + +msgid "rename entry" +msgstr "μετονομασία στοιχείου" + +msgid "repeat playlist" +msgstr "επανάληψη λίστας αναπαραγωγής" + +msgid "repeated" +msgstr "επαναλαμβανόμενο" + +msgid "reverse by date" +msgstr "αντιστροφή κατά ημερομηνία" + +msgid "rewind to the previous chapter" +msgstr "μετάβαση στο προηγούμενο κεφάλαιο" + +msgid "right" +msgstr "δεξιά" + +msgid "right, wrapped" +msgstr "δεξιά, σε αναδίπλωση" + +msgid "rock/pop" +msgstr "ροκ/ποπ" + +msgid "romance" +msgstr "ρομάντζο" + +msgid "save last directory on exit" +msgstr "αποθήκευση τελευταίου φακέλου κατά την έξοδο" + +msgid "save playlist on exit" +msgstr "αποθήκευση λίστας αναπαραγωγής κατά την έξοδο" + +msgid "scan state" +msgstr "κατάσταση ανίχνευσης" + +msgid "science fiction/fantasy/horror" +msgstr "επιστημονικής φαντασίας/φαντασίας/τρόμου" + +msgid "second cable of motorized LNB" +msgstr "δεύτερο καλώδιο σε κινούμενο LNB" + +msgid "seconds" +msgstr "δευτερόλεπτα" + +msgid "select" +msgstr "επιλογή" + +msgid "select CAId's" +msgstr "επιλογή CAId's" + +msgid "select EPG..." +msgstr "επιλογή EPG..." + +msgid "select Info..." +msgstr "επιλογή Πληροφοριών..." + +msgid "select menu entry" +msgstr "επιλογή σημείου μενού" + +msgid "select movie" +msgstr "επιλογή ταινίας" + +msgid "select the movie path" +msgstr "επιλογή διαδρομής ταινιών" + +msgid "serious music/classic music" +msgstr "σοβαρή μουσική/κλασική μουσική" + +msgid "serious/classical/religious/historical movie/drama" +msgstr "σοβαρή/κλασική/θρησκευτική/ιστορική ταινία/δράμα" + +msgid "service PIN" +msgstr "PIN υπηρεσίας" + +msgid "set as startup service" +msgstr "ορισμός ως υπηρεσία εκκίνησης" + +msgid "setup PIN" +msgstr "ρύθμιση PIN" + +msgid "show DVD main menu" +msgstr "εμφάνιση κύριου μενού DVD" + +msgid "show all tags" +msgstr "εμφάνιση όλων των ετικετών" + +msgid "show alternatives" +msgstr "εμφάνιση εναλλακτικών" + +msgid "show event details" +msgstr "εμφάνιση λεπτομερειών προγράμματος" + +msgid "show extended description" +msgstr "εμφάνισης εκτεταμάνης περιγραφής" + +msgid "show mediaplayer on mainmenu" +msgstr "εμφάνιση της αναπαραγωγής πολυμέσων στο κύριο μενού" + +msgid "show softwaremanager in setup menu" +msgstr "εμφάνιση της διαχείρισης λογισμικού στο μενού εγκατάστασης" + +msgid "show softwaremanager on blue button" +msgstr "εμφάνιση του softwaremanager στο μπλε κουμπί" + +msgid "show tag menu" +msgstr "εμφάνιση μενού ετικετών" + +msgid "show transponder info" +msgstr "εμφάνιση πληροφοριών αναμεταδότη" + +msgid "show/game show (general)" +msgstr "σόου/τηλεπαιχνίδι (γενικά)" + +msgid "shuffle" +msgstr "τυχαία ανακατανομή" + +msgid "shut down" +msgstr "τερματισμός" + +msgid "simple" +msgstr "απλό" + +msgid "skip backward" +msgstr "μεταπήδηση πίσω" + +msgid "skip forward" +msgstr "μεταπήδηση εμπρός" + +msgid "soap/melodram/folkloric" +msgstr "σαπουνόπερα/μελόδραμα/φολκλόρ" + +msgid "social/political issues/economics (general)" +msgstr "κοινωνικά/πολιτική επικαιρότητα/οικονομία (γενικά)" + +msgid "social/spiritual science" +msgstr "κοινωνικά/διανόηση" + +msgid "sorting of playlists" +msgstr "ταξινόμηση λιστών αναπαραγωγής" + +msgid "special characters" +msgstr "ειδικοί χαρακτήρες" + +msgid "special events" +msgstr "ειδικά προγράμματα" + +msgid "special format data DVD (HDTV compatible)" +msgstr "ειδικό φορμά δεδομένων DVD (HDTV συμβατό)" + +msgid "sports (general)" +msgstr "αθλητικά (γενικά)" + +msgid "sports magazine" +msgstr "αθλητικό μαγκαζίνο" + +msgid "standard" +msgstr "στάνταρ" + +msgid "start cut here" +msgstr "εκκίνηση αποκοπής εδώ" + +msgid "start directory" +msgstr "εκκίνηση φακέλου" + +msgid "stepsize" +msgstr "μέγεθος βήματος" + +msgid "stereo" +msgstr "στερεοφωνικό" + +msgid "stop using as startup service" +msgstr "τέλος χρήσης ως υπηρεσία εκκίνησης" + +msgid "switch to bookmarks" +msgstr "μετάβαση στους σελιδοδείκτες" + +msgid "switch to filelist" +msgstr "μετάβαση στη λίστα αρχείων" + +msgid "switch to the next angle" +msgstr "μετάβαση στην επόμενη γωνία" + +msgid "switch to the next audio track" +msgstr "μετάβαση στο επόμενο κανάλι ήχου" + +msgid "switch to the next subtitle language" +msgstr "μετάβαση στην επόμενη γλώσσα υποτίτλων" + +msgid "talk show" +msgstr "συζητήσεις" + +msgid "team sports" +msgstr "ομαδικά αθλήματα" + +msgid "technology/natural science" +msgstr "τεχνολογία/φυσικές επιστήμες" + +msgid "template file" +msgstr "αρχείο προτύπου" + +msgid "tennis/squash" +msgstr "τένις/σκουώς" + +msgid "this recording" +msgstr "αυτή η εγγραφή" + +msgid "this service is protected by a parental control pin" +msgstr "η εγγραφή είναι προστατευμένη από τον γονικό έλεγχο" + +msgid "toggle time, chapter, audio, subtitle info" +msgstr "εναλλαγή πληροφοριών χρόνου, κεφαλαίου, ήχου, υποτίτλων" + +msgid "top" +msgstr "κορυφή" + +msgid "tourism/travel" +msgstr "τουρισμός/ταξίδια" + +msgid "true" +msgstr "αληθές" + +msgid "unavailable" +msgstr "μη διαθέσιμο" + +msgid "unconfirmed" +msgstr "μη επιβεβαιωμένο" + +msgid "undefined" +msgstr "απροσδιόριστο" + +msgid "unknown" +msgstr "άγνωστο" + +msgid "unknown service" +msgstr "άγνωστη υπηρεσία" + +msgid "unpublished" +msgstr "ανέκδοτο" + +msgid "until standby/restart" +msgstr "μέχρι την αναμονή/επανεκκίνηση" + +msgid "user defined" +msgstr "ορισμένο από το χρήστη" + +msgid "variety show" +msgstr "βαριετέ" + +msgid "vertical" +msgstr "κάθετη" + +msgid "wait for ci..." +msgstr "αναμονή γα κοινή διεπαφή (ci)..." + +msgid "wait for mmi..." +msgstr "αναμονή για mmi..." + +msgid "waiting" +msgstr "αναμονή" + +msgid "water sport" +msgstr "θαλάσσια σπορ" + +msgid "weekly" +msgstr "εβδομαδιαία" + +msgid "west" +msgstr "δυτικά" + +msgid "when PiPzap enabled zap channel down..." +msgstr "όταν το PiPzap είναι ενεργοποιημένο μεταβείτε στο κάτω κανάλι..." + +msgid "when PiPzap enabled zap channel up..." +msgstr "όταν το PiPzap είναι ενεργοποιημένο μεταβείτε στο πάνω κανάλι..." + +msgid "white" +msgstr "λευκό" + +msgid "whitelist" +msgstr "λευκή λίστα" + +msgid "width" +msgstr "πλάτος" + +msgid "winter sport" +msgstr "χειμερινά σπορ" + +msgid "wireless network interface" +msgstr "διεπαφή ασύρματου δικτύου" + +#, python-format +msgid "with %d error" +msgid_plural "with %d errors" +msgstr[0] "με %d σφάλμα" +msgstr[1] "με %d σφάλματα" + +msgid "working" +msgstr "σε λειτουργία" + +msgid "yellow" +msgstr "κίτρινο" + +msgid "yes" +msgstr "ναι" + +msgid "yes (keep feeds)" +msgstr "ναι (διατήρηση των feeds)" + +msgid "zap" +msgstr "μετάβαση" + +msgid "zap and record" +msgstr "μετάβαση και εγγραφή" + +msgid "zapped" +msgstr "έγινε μετάβαση" + +#~ msgid "AA" +#~ msgstr "AA" + +#~ msgid "AB" +#~ msgstr "AB" + +#~ msgid "Activate PiP" +#~ msgstr "Ενεργοποίηση PiP" + +#~ msgid "Add/remove timer for current event" +#~ msgstr "Προσθήκη/αφαίρεση χρονοδιακόπτη για το τρέχον πρόγραμμα" + +#~ msgid "Adjust HDMI CEC settings" +#~ msgstr "Ρυθμίσεις HDMI CEC" + +#~ msgid "All satellites" +#~ msgstr "Όλοι οι δορυφόροι" + +#~ msgid "And will shutdown your receiver over " +#~ msgstr "Και θα κλείσει το δέκτη σας μετά από " + +#~ msgid "BA" +#~ msgstr "BA" + +#~ msgid "BB" +#~ msgstr "BB" + +#~ msgid "Behavior of 'pause' when paused" +#~ msgstr "Συμπεριφορά του 'pause' στην παύση" + +#~ msgid "Committed DiSEqC command" +#~ msgstr "Δεσμευμένη εντολή DiSEqC" + +#~ msgid "Configure if and how service type icons will be shown." +#~ msgstr "Ρυθμίστε αν και πώς θα εμφανίζονται τα εικονίδια υπηρεσιών στη λίστα." + +#~ msgid "Configure if service picons will be shown in the servicelist." +#~ msgstr "Ρύθμιση εάν τα εικονίδια των υπηρεσιών θα εμφανίζονται στη λίστα." + +#~ msgid "Configure of and how long the latest service in the PiP will be remembered." +#~ msgstr "Ρύθμιση του χρόνου υπενθύμισης της τελευταίας υπηρεσίας στο PiP." + +#~ msgid "Configure the behavior of the 'pause' key when movie playback is already paused." +#~ msgstr "Συμπεριφορά του πλήκτρου \"παύση\" όταν η αναπαραγωγή μιας ταινίας είναι ήδη σε παύση." + +#~ msgid "Configure the duration in hours and action, which could be shut down or standby, when the receiver is not controlled." +#~ msgstr "Ρυθμιση της διάρκειας σε ώρες και ενέργειες, που μπορεί να είναι ο τερματισμός ή η αναμονή, όταν ο δέκτης δεν ελέγχεται." + +#~ msgid "Configure the duration in minutes and action, which could be shut down or standby, for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +#~ msgstr "Ρυθμιση της διάρκειας σε ώρες και ενέργειες, που μπορεί να είναι ο τερματισμός ή η αναμονή για το χρονοδιακόπτη. Επιλέξτε αυτό το στοιχείο και πιέστε ΟΚ ή το πράσινο για να ξεκινήσει/σταματήσει ο χρονοδιακόπτης ύπνου." + +#~ msgid "Currently the commit log cannot be retreived - please try later again" +#~ msgstr "Αυτή τη στιγμή είναι αδύνατη η λήψη του καταγραφολογίου αλλαγών - παρακαλώ δοκιμάστε αργότερα" + +#~ msgid "DVB_C" +#~ msgstr "DVB_C" + +#~ msgid "DiSEqC repeats" +#~ msgstr "Επαναλήψεις DiSEqC" + +#~ msgid "Enable neutrino style zap controlling" +#~ msgstr "Ενεργοποίηση στυλ ελέγχου ζάπινγκ neutrino" + +#~ msgid "Goto specific data/time" +#~ msgstr "Μετάβαση σε συγκεκριμένη ημερομηνία/χρόνο" + +#~ msgid "Memory positions" +#~ msgstr "Θέση μνήμης" + +#~ msgid "No satellite frontend found!!" +#~ msgstr "Δεν βρέθηκε tuner για το δορυφόρο!" + +#~ msgid "Open service list and select next channel" +#~ msgstr "Άνοιγμα λίστας υπηρεσιών και επιλογή επόμενου καναλιού" + +#~ msgid "Open service list and select previous channel" +#~ msgstr "Άνοιγμα λίστας υπηρεσιών και επιλογή προηγούμενου καναλιού" + +#~ msgid "Press '0' to toggle internal/external PiP." +#~ msgstr "Πιέστε '0' για εναλλαγή εσωτερικού/εξωτερικού PiP." + +#~ msgid "Remove timer" +#~ msgstr "Διαγραφή χρονοδιακόπτη" + +#~ msgid "Send DiSEqC" +#~ msgstr "Αποστολή DiSEqC" + +#~ msgid "Show picons in servicelist" +#~ msgstr "Εμφάνιση εικονιδίων στη λίστα υπηρεσιών." + +#~ msgid "Shutdown after current event" +#~ msgstr "Τερματισμός μετά το τρέχον πρόγραμμα" + +#~ msgid "Shutdown in " +#~ msgstr "Τερματισμός σε " + +#~ msgid "Switch next channel" +#~ msgstr "Επόμενο κανάλι" + +#~ msgid "Tuning step size" +#~ msgstr "Μέγεθος βήματος συντονισμού" + +#~ msgid "Uncommitted DiSEqC command" +#~ msgstr "Μη δεσμευμένη εντολή DiSEqC" + +#~ msgid "When enabled the arrow buttons around the OK button will follow the neutrino style zap controls instead of the enigma2 style." +#~ msgstr "Όταν είναι ενεργό, τα πλήκτρα βέλη γύρω από το ΟΚ θα ακολουθούν το στυλ ελέγχου ζάπινγκ του neutrino αντί του enigma2." + +#~ msgid "Your receiver will shutdown due to inactivity." +#~ msgstr "Ο δέκτη σας θα κλείσει εξαιτίας της αδράνειας." + +#~ msgid "Your receiver will shutdown due to the sleeptimer." +#~ msgstr "Ο δέκτη σας θα κλείσει εξαιτίας του χρονοδιακόπτη ύπνου." + +#~ msgid "Zap back to service before satfinder?" +#~ msgstr "Επιστροφή στην υπηρεσία πριν το satfinder;" + +#~ msgid "tuner is not supported" +#~ msgstr "το tuner δεν υποστηρίζεται" diff --git a/po/en.po b/po/en.po new file mode 100644 index 0000000..352478c --- /dev/null +++ b/po/en.po @@ -0,0 +1,8069 @@ +msgid "" +msgstr "" +"Project-Id-Version: enigma2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-07-21 19:08+0200\n" +"PO-Revision-Date: \n" +"Last-Translator: satdreamgr\n" +"Language-Team: \n" +"Language: en\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 1.5.7\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "" +"\n" +"Advanced options and settings." +msgstr "" +"\n" +"Advanced options and settings." + +msgid "" +"\n" +"After pressing OK, please wait!" +msgstr "" +"\n" +"After pressing OK, please wait!" + +msgid "" +"\n" +"Backup your receiver settings." +msgstr "" +"\n" +"Backup your receiver settings." + +msgid "" +"\n" +"Edit the upgrade source address." +msgstr "" +"\n" +"Edit the upgrade source address." + +msgid "" +"\n" +"Manage extensions or plugins for your receiver" +msgstr "" +"\n" +"Manage extensions or plugins for your receiver" + +msgid "" +"\n" +"Online update of your receiver software." +msgstr "" +"\n" +"Online update of your receiver software." + +msgid "" +"\n" +"Press OK on your remote control to continue." +msgstr "" +"\n" +"Press OK on your remote control to continue." + +msgid "" +"\n" +"Restore your backups by date." +msgstr "" +"\n" +"Restore your backups by date." + +msgid "" +"\n" +"Restore your receiver settings." +msgstr "" +"\n" +"Restore your receiver settings." + +msgid "" +"\n" +"Restore your receiver with a new firmware." +msgstr "" +"\n" +"Restore your receiver with a new firmware." + +msgid "" +"\n" +"Scan for local extensions and install them." +msgstr "" +"\n" +"Scan for local extensions and install them." + +msgid "" +"\n" +"Select your backup device.\n" +"Current device: " +msgstr "" +"\n" +"Select your backup device.\n" +"Current device: " + +msgid "" +"\n" +"View, install and remove available or installed packages." +msgstr "" +"\n" +"View, install and remove available or installed packages." + +msgid " (PiP)" +msgstr " (PiP)" + +msgid " (Radio)" +msgstr " (Radio)" + +msgid " (TV)" +msgstr " (TV)" + +msgid " (disabled)" +msgstr "" + +msgid " (higher than any auto)" +msgstr "" + +msgid " (higher than rotor any auto)" +msgstr "" + +msgid " (lower than any auto)" +msgstr "" + +msgid " extensions." +msgstr " extensions." + +msgid " ms" +msgstr " ms" + +msgid " packages selected." +msgstr " packages selected." + +msgid " updates available." +msgstr " updates available." + +#. TRANSLATORS: short time representation hour:minute +#, python-format +msgid "%2d:%02d" +msgstr "%2d:%02d" + +#. TRANSLATORS: full time representation hour:minute:seconds +#, python-format +msgid "%2d:%02d:%02d" +msgstr "%2d:%02d:%02d" + +msgid "%A %d %B" +msgstr "%A %d %B" + +#. TRANSLATORS: long date representations dayname daynum monthname in strftime() format! See 'man strftime' +msgid "%A %e %B" +msgstr "%A %e %B" + +#. TRANSLATORS: full date representation dayname daynum monthname year in strftime() format! See 'man strftime' +msgid "%A %e %B %Y" +msgstr "%A %e %B %Y" + +msgid "%H:%M" +msgstr "%H:%M" + +#. TRANSLATORS: short date representation short dayname daynum short monthname in strftime() format! See 'man strftime' +msgid "%a %e/%m" +msgstr "%a %e/%m" + +#. TRANSLATORS: long date representation short dayname daynum short monthname hour:minute in strftime() format! See 'man strftime' +msgid "%a %e/%m %-H:%M" +msgstr "%a %e/%m %-H:%M" + +#. TRANSLATORS: Intermediate scanning result, '%d' channel(s) have been found so far +#, fuzzy, python-format +msgid "%d channel found" +msgid_plural "%d channels found" +msgstr[0] "%d services found!" +msgstr[1] "%d services found!" + +#, python-format +msgid "%d file" +msgid_plural "%d files" +msgstr[0] "%d file" +msgstr[1] "%d files" + +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d hour" +msgstr[1] "%d hours" + +#, fuzzy, python-format +msgid "%d job is running in the background!" +msgid_plural "%d jobs are running in the background!" +msgstr[0] "%d jobs are running in the background!" +msgstr[1] "%d jobs are running in the background!" + +#, python-format +msgid "%d min" +msgstr "%d min" + +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d minute" +msgstr[1] "%d minutes" + +#, python-format +msgid "%d minutes" +msgstr "%d minutes" + +#, python-format +msgid "%d pixel wide" +msgid_plural "%d pixels wide" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "%d second" +msgstr[1] "%d seconds" + +#, fuzzy, python-format +msgid "%d subdirectory" +msgid_plural "%d subdirectories" +msgstr[0] "Root directory" +msgstr[1] "Root directory" + +#, python-format +msgid "%d wireless network found!" +msgid_plural "%d wireless networks found!" +msgstr[0] "%d wireless network found!" +msgstr[1] "%d wireless networks found!" + +msgid "%d-%b-%Y %-H:%M" +msgstr "%d-%b-%Y %-H:%M" + +msgid "%d-%m" +msgstr "%d-%m" + +msgid "%d.%B %Y" +msgstr "%d.%B %Y" + +#. TRANSLATORS: VFD hour:minute daynum short monthname in strftime() format! See 'man strftime' +msgid "%k:%M %e/%m" +msgstr "%k:%M %e/%m" + +#, python-format +msgid "%s %s free disk space" +msgstr "%s %s free disk space" + +#, python-format +msgid "%s (%s)\n" +msgstr "%s (%s)\n" + +#. TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. +#, python-format +msgid "%s is no longer used. Should it be deleted?" +msgstr "%s is no longer used. Should it be deleted?" + +#, python-format +msgid "%s updated package available" +msgid_plural "%s updated packages available" +msgstr[0] "%s updated package available" +msgstr[1] "%s updated packages available" + +#, python-format +msgid "%s%d min" +msgstr "" + +#, python-format +msgid "%s/%s: %s" +msgstr "%s/%s: %s" + +msgid "(ZAP)" +msgstr "(ZAP)" + +msgid "(empty)" +msgstr "(empty)" + +msgid "(show optional DVD audio menu)" +msgstr "(show optional DVD audio menu)" + +msgid "* Only available if more than one interface is active." +msgstr "* Only available if more than one interface is active." + +msgid "/s" +msgstr "" + +msgid "0" +msgstr "" + +msgid "1" +msgstr "1" + +msgid "1.0" +msgstr "" + +msgid "1.1" +msgstr "1.1" + +msgid "1.2" +msgstr "1.2" + +msgid "12V output" +msgstr "12V output" + +msgid "13 V" +msgstr "13 V" + +msgid "16:10" +msgstr "16:10" + +msgid "16:10 Letterbox" +msgstr "16:10 Letterbox" + +msgid "16:10 PanScan" +msgstr "16:10 PanScan" + +msgid "16:9" +msgstr "16:9" + +msgid "16:9 Letterbox" +msgstr "16:9 Letterbox" + +msgid "16:9 always" +msgstr "16:9 always" + +msgid "18 V" +msgstr "18 V" + +msgid "2" +msgstr "2" + +msgid "23.976" +msgstr "" + +msgid "24" +msgstr "" + +msgid "25" +msgstr "" + +msgid "29.97" +msgstr "" + +msgid "3" +msgstr "3" + +msgid "30" +msgstr "" + +msgid "3d mode" +msgstr "3d mode" + +msgid "4" +msgstr "4" + +msgid "4:3" +msgstr "4:3" + +msgid "4:3 Letterbox" +msgstr "4:3 Letterbox" + +msgid "4:3 PanScan" +msgstr "4:3 PanScan" + +msgid "5" +msgstr "5" + +msgid "6" +msgstr "6" + +msgid "7" +msgstr "7" + +msgid "8" +msgstr "8" + +msgid "9" +msgstr "9" + +#, python-format +msgid ": %s" +msgstr "" + +msgid "<Current movielist location>" +msgstr "<Current movielist location>" + +msgid "<Default movie location>" +msgstr "<Default movie location>" + +msgid "<Last timer location>" +msgstr "<Last timer location>" + +msgid "<unknown>" +msgstr "<unknown>" + +msgid "??" +msgstr "??" + +msgid "A" +msgstr "A" + +#, python-format +msgid "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" +msgstr "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" + +#, python-format +msgid "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" +msgstr "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" + +msgid "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" + +msgid "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" + +msgid "A graphical EPG for all services of an specific bouquet" +msgstr "A graphical EPG for all services of an specific bouquet" + +#, python-format +msgid "" +"A record has been started:\n" +"%s" +msgstr "" +"A record has been started:\n" +"%s" + +msgid "" +"A recording is currently running.\n" +"What do you want to do?" +msgstr "" +"A recording is currently running.\n" +"What do you want to do?" + +msgid "A recording is currently running. Please stop the recording before trying to configure the positioner." +msgstr "A recording is currently running. Please stop the recording before trying to configure the positioner." + +msgid "A recording is currently running. Please stop the recording before trying to scan." +msgstr "A recording is currently running. Please stop the recording before trying to scan." + +msgid "A recording is currently running. Please stop the recording before trying to start the satfinder." +msgstr "A recording is currently running. Please stop the recording before trying to start the satfinder." + +#, python-format +msgid "A required tool (%s) was not found." +msgstr "A required tool (%s) was not found." + +msgid "A search for available updates is currently in progress." +msgstr "A search for available updates is currently in progress." + +msgid "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" +msgstr "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" + +msgid "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" + +msgid "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" + +msgid "A small overview of the available icon states and actions." +msgstr "A small overview of the available icon states and actions." + +msgid "" +"A timer failed to record!\n" +"Disable TV and try again?\n" +msgstr "" +"A timer failed to record!\n" +"Disable TV and try again?\n" + +msgid "A/V settings" +msgstr "A/V settings" + +msgid "AC3/DTS downmix" +msgstr "AC3/DTS downmix" + +msgid "Abort" +msgstr "Abort" + +msgid "About" +msgstr "About" + +msgid "About..." +msgstr "About..." + +msgid "Accesspoint:" +msgstr "Accesspoint:" + +msgid "Action on long powerbutton press" +msgstr "Action on long powerbutton press" + +msgid "Action on short powerbutton press" +msgstr "Action on short powerbutton press" + +msgid "Activate Picture in Picture" +msgstr "Activate Picture in Picture" + +msgid "Activate current configuration" +msgstr "Activate current configuration" + +msgid "Activate network settings" +msgstr "Activate network settings" + +msgid "Activate the configured network settings." +msgstr "Activate the configured network settings." + +msgid "Adapter settings" +msgstr "Adapter settings" + +msgid "Add" +msgstr "Add" + +msgid "Add Bookmark" +msgstr "" + +msgid "Add a mark" +msgstr "Add a mark" + +msgid "Add a nameserver entry" +msgstr "Add a nameserver entry" + +msgid "Add a new title" +msgstr "Add a new title" + +msgid "Add bookmark" +msgstr "Add bookmark" + +msgid "Add directory to playlist" +msgstr "Add directory to playlist" + +msgid "Add file to playlist" +msgstr "Add file to playlist" + +msgid "Add files to playlist" +msgstr "Add files to playlist" + +msgid "Add more details to the crash log" +msgstr "Add more details to the crash log" + +msgid "Add provider" +msgstr "Add provider" + +msgid "Add recording (enter recording duration)" +msgstr "Add recording (enter recording duration)" + +msgid "Add recording (enter recording endtime)" +msgstr "Add recording (enter recording endtime)" + +msgid "Add recording (indefinitely)" +msgstr "Add recording (indefinitely)" + +msgid "Add recording (stop after current event)" +msgstr "Add recording (stop after current event)" + +msgid "Add service" +msgstr "Add service" + +msgid "Add timer" +msgstr "Add timer" + +msgid "Add title" +msgstr "Add title" + +msgid "Add to bouquet" +msgstr "Add to bouquet" + +msgid "Add to favourites" +msgstr "Add to favourites" + +msgid "Add/remove change timer for current event" +msgstr "" + +msgid "Adjust 3D settings" +msgstr "Adjust 3D settings" + +msgid "Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens." +msgstr "Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens." + +msgid "Advanced" +msgstr "" + +msgid "Advanced options" +msgstr "Advanced options" + +msgid "Advanced restore" +msgstr "Advanced restore" + +msgid "Advanced software" +msgstr "Advanced software" + +msgid "Advanced software plugin" +msgstr "Advanced software plugin" + +msgid "Advanced video enhancement setup" +msgstr "Advanced video enhancement setup" + +msgid "Advanced video setup" +msgstr "Advanced video setup" + +msgid "After event" +msgstr "After event" + +msgid "Album" +msgstr "Album" + +msgid "Alignment of events" +msgstr "" + +msgid "Alignment of service names" +msgstr "" + +msgid "All" +msgstr "All" + +msgid "All ages" +msgstr "All ages" + +msgid "All satellites 1 (USALS)" +msgstr "" + +msgid "All satellites 2 (USALS)" +msgstr "" + +msgid "All satellites 3 (USALS)" +msgstr "" + +msgid "All satellites 4 (USALS)" +msgstr "" + +msgid "Allocate" +msgstr "Allocate" + +msgid "Allocate unused memory index" +msgstr "Allocate unused memory index" + +msgid "Allow quit movieplayer with exit" +msgstr "Allow quit movieplayer with exit" + +msgid "Allow subtitle language to equal audio language" +msgstr "Allow subtitle language to equal audio language" + +msgid "Allow subtitles for hearing impaired" +msgstr "Allow subtitles for hearing impaired" + +msgid "Alpha" +msgstr "Alpha" + +msgid "Alternative" +msgstr "Alternative" + +msgid "Alternative numbering mode" +msgstr "Alternative numbering mode" + +msgid "Alternative services tuner priority" +msgstr "Alternative services tuner priority" + +msgid "Always ask" +msgstr "Always ask" + +msgid "Always hide infobar" +msgstr "" + +msgid "An empty filename is illegal." +msgstr "An empty filename is illegal." + +msgid "An error occurred while downloading the packetlist. Please try again." +msgstr "An error occurred while downloading the packetlist. Please try again." + +msgid "An unknown error occurred!" +msgstr "An unknown error occurred!" + +msgid "And will put your receiver in standby over " +msgstr "" + +msgid "Any activity" +msgstr "Any activity" + +msgid "Arabic" +msgstr "Arabic" + +msgid "Are you sure to remove this entry?" +msgstr "" + +msgid "" +"Are you sure you want to activate this network configuration?\n" +"\n" +msgstr "" +"Are you sure you want to activate this network configuration?\n" +"\n" + +msgid "" +"Are you sure you want to delete\n" +"the following backup:\n" +msgstr "" +"Are you sure you want to delete\n" +"the following backup:\n" + +msgid "Are you sure you want to exit this wizard?" +msgstr "Are you sure you want to exit this wizard?" + +msgid "" +"Are you sure you want to restart your network interfaces?\n" +"\n" +msgstr "" +"Are you sure you want to restart your network interfaces?\n" +"\n" + +#, python-format +msgid "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" + +msgid "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" + +msgid "Artist" +msgstr "Artist" + +msgid "Arts/Culture" +msgstr "Arts/Culture" + +msgid "Ask user" +msgstr "Ask user" + +msgid "Aspect ratio" +msgstr "Aspect ratio" + +msgid "Assigned CAIds:" +msgstr "Assigned CAIds:" + +msgid "Assigned services/provider:" +msgstr "Assigned services/provider:" + +msgid "At beginning" +msgstr "At beginning" + +msgid "At end" +msgstr "At end" + +msgid "Audio" +msgstr "Audio" + +msgid "Audio PID" +msgstr "Audio PID" + +msgid "Audio language selection 1" +msgstr "Audio language selection 1" + +msgid "Audio language selection 2" +msgstr "Audio language selection 2" + +msgid "Audio language selection 3" +msgstr "Audio language selection 3" + +msgid "Audio language selection 4" +msgstr "Audio language selection 4" + +msgid "Audio options..." +msgstr "Audio options..." + +#, python-format +msgid "Audio track (%s) format" +msgstr "Audio track (%s) format" + +#, python-format +msgid "Audio track (%s) language" +msgstr "Audio track (%s) language" + +msgid "Author: " +msgstr "Author: " + +msgid "Authoring mode" +msgstr "Authoring mode" + +#. TRANSLATORS: (aspect ratio policy: always try to display as fullscreen, when there is no content (black bars) on left/right, even if this breaks the aspect. +msgid "Auto" +msgstr "Auto" + +msgid "Auto chapter split every ? minutes (0=never)" +msgstr "Auto chapter split every ? minutes (0=never)" + +msgid "Auto flesh" +msgstr "Auto flesh" + +msgid "Auto focus" +msgstr "Auto focus" + +msgid "Auto focus commencing ..." +msgstr "Auto focus commencing ..." + +msgid "Auto language selection" +msgstr "Auto language selection" + +msgid "Auto scart switching" +msgstr "Auto scart switching" + +msgid "Automatic" +msgstr "Automatic" + +msgid "Automatic scan" +msgstr "Automatic scan" + +msgid "Automatically start timeshift after" +msgstr "Automatically start timeshift after" + +msgid "Automatically turn on external subtitles" +msgstr "Automatically turn on external subtitles" + +msgid "Available format variables" +msgstr "Available format variables" + +msgid "B" +msgstr "B" + +msgid "BER" +msgstr "BER" + +msgid "BER:" +msgstr "BER:" + +msgid "Back" +msgstr "Back" + +msgid "Background" +msgstr "Background" + +msgid "Background color" +msgstr "Background color" + +msgid "Background delete option" +msgstr "Background delete option" + +msgid "Background delete speed" +msgstr "Background delete speed" + +msgid "Backup completed." +msgstr "Backup completed." + +msgid "Backup failed." +msgstr "Backup failed." + +msgid "Backup is running..." +msgstr "Backup is running..." + +msgid "Backup system settings" +msgstr "Backup system settings" + +msgid "Band" +msgstr "Band" + +msgid "Bandwidth" +msgstr "Bandwidth" + +msgid "Basque" +msgstr "Basque" + +msgid "Begin time" +msgstr "Begin time" + +msgid "Behavior of 'pause and ok' when paused" +msgstr "" + +msgid "Behavior of 0 key in PiP-mode" +msgstr "Behavior of 0 key in PiP-mode" + +msgid "Behavior when a movie is started" +msgstr "Behavior when a movie is started" + +msgid "Behavior when a movie is stopped" +msgstr "Behavior when a movie is stopped" + +msgid "Behavior when a movie reaches the end" +msgstr "Behavior when a movie reaches the end" + +msgid "Big PiP" +msgstr "" + +msgid "Bitrate:" +msgstr "Bitrate:" + +msgid "Black screen" +msgstr "Black screen" + +msgid "Black screen till locked" +msgstr "Black screen till locked" + +msgid "Block noise reduction" +msgstr "Block noise reduction" + +msgid "Blue boost" +msgstr "Blue boost" + +msgid "Bookmarks" +msgstr "Bookmarks" + +msgid "Brightness" +msgstr "Brightness" + +msgid "Bulgarian" +msgstr "Bulgarian" + +msgid "Burn DVD" +msgstr "Burn DVD" + +#, python-format +msgid "Burn audio track (%s)" +msgstr "Burn audio track (%s)" + +msgid "Burn existing image to DVD" +msgstr "Burn existing image to DVD" + +msgid "Burn to DVD" +msgstr "Burn to DVD" + +msgid "Bus: " +msgstr "Bus: " + +msgid "By default, SNR will be shown in dB (when supported by the tuner). This setting forces SNR to be shown as a percentage instead." +msgstr "By default, SNR will be shown in dB (when supported by the tuner). This setting forces SNR to be shown as a percentage instead." + +msgid "C" +msgstr "C" + +msgid "C-Band" +msgstr "C-Band" + +msgid "CH" +msgstr "" + +msgid "CI assignment" +msgstr "CI assignment" + +msgid "CVBS" +msgstr "CVBS" + +msgid "Cable" +msgstr "Cable" + +msgid "Cable Scan" +msgstr "Cable Scan" + +msgid "Cache thumbnails" +msgstr "Cache thumbnails" + +msgid "Calculate" +msgstr "Calculate" + +msgid "Calculate all positions" +msgstr "Calculate all positions" + +msgid "Calculation complete" +msgstr "Calculation complete" + +msgid "Calibrate" +msgstr "Calibrate" + +msgid "Can be used for different fps between external subtitles and video." +msgstr "Can be used for different fps between external subtitles and video." + +msgid "Cancel" +msgstr "Cancel" + +msgid "Cannot determine" +msgstr "Cannot determine" + +msgid "Cannot find any signal ..., aborting !" +msgstr "Cannot find any signal ..., aborting !" + +msgid "Cannot move files on a different disk or system to the trash can" +msgstr "Cannot move files on a different disk or system to the trash can" + +msgid "Cannot move to trash can" +msgstr "Cannot move to trash can" + +msgid "Capacity: " +msgstr "Capacity: " + +msgid "Card" +msgstr "Card" + +msgid "Cascade PiP" +msgstr "" + +msgid "Center DVB subtitles" +msgstr "Center DVB subtitles" + +msgid "Center time-labels and remove date" +msgstr "" + +msgid "Change bouquets in quickzap" +msgstr "Change bouquets in quickzap" + +msgid "Change pin code" +msgstr "Change pin code" + +msgid "Change recording (duration)" +msgstr "Change recording (duration)" + +msgid "Change recording (endtime)" +msgstr "Change recording (endtime)" + +msgid "Change repeat and delay settings?" +msgstr "Change repeat and delay settings?" + +msgid "Change service PIN" +msgstr "Change service PIN" + +msgid "Change service PINs" +msgstr "Change service PINs" + +msgid "Change setup PIN" +msgstr "Change setup PIN" + +msgid "Change step size" +msgstr "Change step size" + +msgid "Change timer" +msgstr "" + +msgid "Changelog" +msgstr "Changelog" + +msgid "Channel" +msgstr "Channel" + +msgid "Channel list type" +msgstr "Channel list type" + +msgid "Channel not in services list" +msgstr "Channel not in services list" + +msgid "Channel selection" +msgstr "Channel selection" + +msgid "Channel:" +msgstr "Channel:" + +msgid "Channellist menu" +msgstr "Channellist menu" + +msgid "Chap." +msgstr "Chap." + +msgid "Chapter" +msgstr "Chapter" + +msgid "Chapter:" +msgstr "Chapter:" + +msgid "Check" +msgstr "Check" + +msgid "Check the internet connection" +msgstr "Check the internet connection" + +msgid "Check the internet connection again" +msgstr "Check the internet connection again" + +msgid "Checking filesystem..." +msgstr "Checking filesystem..." + +msgid "Checking the internet connection" +msgstr "Checking the internet connection" + +#, python-format +msgid "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" +msgstr "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" + +msgid "Children/Youth" +msgstr "Children/Youth" + +msgid "Choose which tuner to configure." +msgstr "Choose which tuner to configure." + +msgid "Circular left" +msgstr "Circular left" + +msgid "Circular right" +msgstr "Circular right" + +msgid "Cleanup" +msgstr "Cleanup" + +msgid "Clear" +msgstr "Clear" + +msgid "Clear before scan" +msgstr "Clear before scan" + +msgid "Clear fixed" +msgstr "Clear fixed" + +msgid "Clear log" +msgstr "Clear log" + +msgid "Clear playlist" +msgstr "Clear playlist" + +msgid "Close" +msgstr "Close" + +msgid "Close PiP on exit" +msgstr "Close PiP on exit" + +msgid "Close title selection" +msgstr "Close title selection" + +msgid "Code rate HP" +msgstr "Code rate HP" + +msgid "Code rate LP" +msgstr "Code rate LP" + +msgid "Coderate HP" +msgstr "Coderate HP" + +msgid "Coderate LP" +msgstr "Coderate LP" + +msgid "Collection name" +msgstr "Collection name" + +msgid "Collection settings" +msgstr "Collection settings" + +msgid "Color format" +msgstr "Color format" + +msgid "Command execution..." +msgstr "Command execution..." + +msgid "Command order" +msgstr "Command order" + +msgid "Common Interface" +msgstr "Common Interface" + +msgid "Common Interface assignment" +msgstr "Common Interface assignment" + +msgid "Communication" +msgstr "Communication" + +msgid "Compact flash" +msgstr "Compact flash" + +msgid "Complete" +msgstr "Complete" + +msgid "Complex (allows mixing audio tracks and aspects)" +msgstr "Complex (allows mixing audio tracks and aspects)" + +msgid "Composition of the recording filenames" +msgstr "Composition of the recording filenames" + +msgid "Configuration mode" +msgstr "Configuration mode" + +#, python-format +msgid "Configuration mode: %s" +msgstr "Configuration mode: %s" + +msgid "Configuration..." +msgstr "Configuration..." + +msgid "Configure an additional delay to improve external subtitle synchronisation." +msgstr "Configure an additional delay to improve external subtitle synchronisation." + +msgid "Configure an additional delay to improve subtitle synchronisation." +msgstr "Configure an additional delay to improve subtitle synchronisation." + +msgid "Configure for how long the infobar will remain visible after activation." +msgstr "Configure for how long the infobar will remain visible after activation." + +msgid "Configure for how many minutes finished events should remain visible in the EPG. Useful when you need information about an event which has just finished, or has been delayed." +msgstr "Configure for how many minutes finished events should remain visible in the EPG. Useful when you need information about an event which has just finished, or has been delayed." + +msgid "Configure how recording filenames are constructed." +msgstr "Configure how recording filenames are constructed." + +msgid "Configure how the fan should operate" +msgstr "" + +msgid "Configure if and how crypto icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how long the latest service in the PiP will be remembered." +msgstr "" + +msgid "Configure if and how service type icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how wide columns will be shown in the channel selection list." +msgstr "" + +msgid "Configure if service picons will be shown in the channel selection list." +msgstr "" + +msgid "Configure interface" +msgstr "Configure interface" + +msgid "Configure nameservers" +msgstr "Configure nameservers" + +msgid "Configure on which devices the background delete option should be used." +msgstr "Configure on which devices the background delete option should be used." + +msgid "Configure remote control type" +msgstr "Configure remote control type" + +msgid "Configure the DiSEqC mode for this LNB." +msgstr "Configure the DiSEqC mode for this LNB." + +msgid "Configure the IP address." +msgstr "Configure the IP address." + +msgid "Configure the aspect ratio of the screen." +msgstr "Configure the aspect ratio of the screen." + +msgid "Configure the behavior of the 'pause and ok' key when movie playback is already paused." +msgstr "" + +msgid "Configure the behavior when movie playback is manually stopped." +msgstr "Configure the behavior when movie playback is manually stopped." + +msgid "Configure the behavior when movie playback is started." +msgstr "Configure the behavior when movie playback is started." + +msgid "Configure the behavior when reaching the end of a movie, during movie playback." +msgstr "Configure the behavior when reaching the end of a movie, during movie playback." + +msgid "Configure the border width of the subtitles. The dark border makes the subtitles easier to read on a light background." +msgstr "Configure the border width of the subtitles. The dark border makes the subtitles easier to read on a light background." + +msgid "Configure the brightness level of the front panel display during standby." +msgstr "Configure the brightness level of the front panel display during standby." + +msgid "Configure the brightness level of the front panel display." +msgstr "Configure the brightness level of the front panel display." + +msgid "Configure the color of the external subtitles, alternative (normal in white, italic in yellow, bold in cyan, underscore in green), white or yellow." +msgstr "Configure the color of the external subtitles, alternative (normal in white, italic in yellow, bold in cyan, underscore in green), white or yellow." + +msgid "Configure the color of the teletext subtitles." +msgstr "Configure the color of the teletext subtitles." + +msgid "Configure the contrast level of the front panel display." +msgstr "Configure the contrast level of the front panel display." + +msgid "Configure the cursor behaviour in the channel selection list. When opening the channel selection list you can keep on the current service or already select up/down and you are able to revert the B+/B- buttons." +msgstr "" + +msgid "Configure the duration in hours the receiver should go to standby when the receiver is not controlled." +msgstr "" + +msgid "Configure the duration in minutes for the screensaver." +msgstr "Configure the duration in minutes for the screensaver." + +msgid "Configure the duration in minutes for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +msgstr "" + +msgid "Configure the duration when the receiver should go to shut down in case the receiver is in standby mode." +msgstr "" + +msgid "Configure the first audio language (highest priority)." +msgstr "Configure the first audio language (highest priority)." + +msgid "Configure the first subtitle language (highest priority)." +msgstr "Configure the first subtitle language (highest priority)." + +msgid "Configure the font size of the subtitles." +msgstr "Configure the font size of the subtitles." + +msgid "Configure the fourth audio language." +msgstr "Configure the fourth audio language." + +msgid "Configure the fourth subtitle language." +msgstr "Configure the fourth subtitle language." + +msgid "Configure the function of a long press on the power button." +msgstr "Configure the function of a long press on the power button." + +msgid "Configure the function of a short press on the power button." +msgstr "Configure the function of a short press on the power button." + +msgid "Configure the function of the '0' button do when PIP is active." +msgstr "Configure the function of the '0' button do when PIP is active." + +msgid "Configure the gateway." +msgstr "Configure the gateway." + +msgid "Configure the general audio delay of Dolby Digital sound tracks." +msgstr "Configure the general audio delay of Dolby Digital sound tracks." + +msgid "Configure the general audio delay of stereo sound tracks." +msgstr "Configure the general audio delay of stereo sound tracks." + +msgid "Configure the hard disk drive to go to standby after the specified idle time." +msgstr "Configure the hard disk drive to go to standby after the specified idle time." + +msgid "Configure the horizontal alignment of the subtitles." +msgstr "Configure the horizontal alignment of the subtitles." + +msgid "Configure the initial fast forward speed. When you press the fast forward button, winding will start at this speed." +msgstr "Configure the initial fast forward speed. When you press the fast forward button, winding will start at this speed." + +msgid "Configure the initial rewind speed. When you press the rewind button, winding will start at this speed." +msgstr "Configure the initial rewind speed. When you press the rewind button, winding will start at this speed." + +msgid "Configure the latitude of your location." +msgstr "Configure the latitude of your location." + +msgid "Configure the longitude of your location." +msgstr "Configure the longitude of your location." + +msgid "Configure the minimum amount of disk space to be available for recordings. When the amount of space drops below this value, deleted items will be removed from the trash can." +msgstr "Configure the minimum amount of disk space to be available for recordings. When the amount of space drops below this value, deleted items will be removed from the trash can." + +msgid "Configure the nameserver (DNS)." +msgstr "Configure the nameserver (DNS)." + +msgid "Configure the netmask." +msgstr "Configure the netmask." + +msgid "Configure the number of days after which items are automaticaly removed from the trash can." +msgstr "Configure the number of days after which items are automaticaly removed from the trash can." + +msgid "Configure the number of days old timers are kept before they are automatically removed from the timer list." +msgstr "Configure the number of days old timers are kept before they are automatically removed from the timer list." + +msgid "Configure the offline decoding delay in milliseconds. The configured delay is observed at each control word parity change." +msgstr "Configure the offline decoding delay in milliseconds. The configured delay is observed at each control word parity change." + +msgid "Configure the possible fast forward speeds." +msgstr "Configure the possible fast forward speeds." + +msgid "Configure the possible rewind speeds." +msgstr "Configure the possible rewind speeds." + +msgid "Configure the primary EPG language." +msgstr "Configure the primary EPG language." + +msgid "Configure the refresh rate of the screen." +msgstr "Configure the refresh rate of the screen." + +msgid "Configure the screen resolution in PC output mode." +msgstr "Configure the screen resolution in PC output mode." + +msgid "Configure the second audio language." +msgstr "Configure the second audio language." + +msgid "Configure the second subtitle language." +msgstr "Configure the second subtitle language." + +msgid "Configure the secondary EPG language." +msgstr "Configure the secondary EPG language." + +msgid "Configure the sharpness of the video scaling." +msgstr "Configure the sharpness of the video scaling." + +msgid "Configure the skip time interval for the '1'/'3' buttons." +msgstr "Configure the skip time interval for the '1'/'3' buttons." + +msgid "Configure the skip time interval for the '4'/'6' buttons." +msgstr "Configure the skip time interval for the '4'/'6' buttons." + +msgid "Configure the skip time interval for the '7'/'9' buttons." +msgstr "Configure the skip time interval for the '7'/'9' buttons." + +msgid "Configure the slow motion speeds." +msgstr "Configure the slow motion speeds." + +msgid "Configure the source of the frontend data as shown on the infobars. 'Settings' is as stored on the settings. 'Tuner' is as reported by the tuner." +msgstr "" + +msgid "Configure the speed of the background deletion process. Lower speed will consume less hard disk drive performance." +msgstr "Configure the speed of the background deletion process. Lower speed will consume less hard disk drive performance." + +msgid "Configure the speed of the fan" +msgstr "" + +msgid "Configure the subtitle delay when timing information is not available." +msgstr "Configure the subtitle delay when timing information is not available." + +msgid "Configure the third audio language." +msgstr "Configure the third audio language." + +msgid "Configure the third subtitle language." +msgstr "Configure the third subtitle language." + +msgid "Configure the transparency of the OSD." +msgstr "Configure the transparency of the OSD." + +msgid "Configure the transparency of the black background of graphical DVB subtitles." +msgstr "Configure the transparency of the black background of graphical DVB subtitles." + +msgid "Configure the tuner mode." +msgstr "Configure the tuner mode." + +msgid "Configure the type of status indication icons shown in the movielist." +msgstr "Configure the type of status indication icons shown in the movielist." + +msgid "Configure the vertical position of the subtitles, measured from the bottom of the screen." +msgstr "Configure the vertical position of the subtitles, measured from the bottom of the screen." + +msgid "Configure the video output mode (or resolution)." +msgstr "Configure the video output mode (or resolution)." + +msgid "Configure the way in which the receiver changes channels." +msgstr "Configure the way in which the receiver changes channels." + +msgid "Configure where completed timers show up in the timer list." +msgstr "Configure where completed timers show up in the timer list." + +msgid "Configure whether (and for how long) a second infobar will be shown when OK is pressed twice. The second infobar contains additional information about the current channel." +msgstr "Configure whether (and for how long) a second infobar will be shown when OK is pressed twice. The second infobar contains additional information about the current channel." + +msgid "Configure whether multi channel sound tracks should be downmixed to stereo." +msgstr "Configure whether multi channel sound tracks should be downmixed to stereo." + +msgid "Configure whether or not an icon should be shown when your motorized dish is moving." +msgstr "Configure whether or not an icon should be shown when your motorized dish is moving." + +msgid "Configure which access level to use for the configuration menu. Expert level gives access to all items." +msgstr "Configure which access level to use for the configuration menu. Expert level gives access to all items." + +msgid "Configure which color format should be used on the SCART output." +msgstr "Configure which color format should be used on the SCART output." + +msgid "Configure which tuner for recordings will be preferred, when more than one tuner is available." +msgstr "" + +msgid "Configure which tuner type will be preferred, when the same service is available on different types of tuners." +msgstr "Configure which tuner type will be preferred, when the same service is available on different types of tuners." + +msgid "Configure which tuner will be preferred, when more than one tuner is available. If set to 'auto' the system will give priority to the tuner having the lowest number of channels/satellites." +msgstr "Configure which tuner will be preferred, when more than one tuner is available. If set to 'auto' the system will give priority to the tuner having the lowest number of channels/satellites." + +msgid "Configure your internal LAN" +msgstr "Configure your internal LAN" + +msgid "Configure your network again" +msgstr "Configure your network again" + +msgid "Configure your network settings, and press OK to start the scan" +msgstr "Configure your network settings, and press OK to start the scan" + +msgid "Configure your wireless LAN again" +msgstr "Configure your wireless LAN again" + +msgid "Configures which video output connector will be used." +msgstr "Configures which video output connector will be used." + +msgid "Configuring" +msgstr "Configuring" + +msgid "Conflicting timer" +msgstr "Conflicting timer" + +msgid "Connect" +msgstr "Connect" + +msgid "Connect to a wireless network" +msgstr "Connect to a wireless network" + +msgid "Connected satellites" +msgstr "" + +msgid "Connected to" +msgstr "Connected to" + +msgid "Connected!" +msgstr "Connected!" + +msgid "Constellation" +msgstr "Constellation" + +msgid "Content does not fit on DVD!" +msgstr "Content does not fit on DVD!" + +msgid "Continue" +msgstr "Continue" + +msgid "Continue in background" +msgstr "Continue in background" + +msgid "Continue playback" +msgstr "Continue playback" + +msgid "Continue playing" +msgstr "Continue playing" + +msgid "Continues play (loop)" +msgstr "Continues play (loop)" + +msgid "Contrast" +msgstr "Contrast" + +msgid "Convert ext3 filesystem to ext4" +msgstr "Convert ext3 filesystem to ext4" + +msgid "Convert ext3 to ext4" +msgstr "Convert ext3 to ext4" + +msgid "Converting ext3 to ext4..." +msgstr "Converting ext3 to ext4..." + +msgid "Copy" +msgstr "Copy" + +msgid "Could not connect to receiver .NFI image feed server:" +msgstr "Could not connect to receiver .NFI image feed server:" + +msgid "Could not find installed channel list." +msgstr "Could not find installed channel list." + +msgid "Could not load medium! No disc inserted?" +msgstr "Could not load medium! No disc inserted?" + +msgid "Could not open Picture in Picture" +msgstr "Could not open Picture in Picture" + +#, python-format +msgid "Could not record due to conflicting timer %s" +msgstr "Could not record due to conflicting timer %s" + +#, python-format +msgid "Could not record due to invalid service %s" +msgstr "Could not record due to invalid service %s" + +msgid "Create DVD-ISO" +msgstr "Create DVD-ISO" + +msgid "Create more detailed crash log" +msgstr "Create more detailed crash log" + +#, python-format +msgid "Creating directory %s failed." +msgstr "Creating directory %s failed." + +msgid "Creating filesystem" +msgstr "Creating filesystem" + +msgid "Creating partition" +msgstr "Creating partition" + +msgid "Croatian" +msgstr "Croatian" + +msgid "Current CEC address" +msgstr "Current CEC address" + +msgid "Current device: " +msgstr "Current device: " + +msgid "Current event EPG" +msgstr "Current event EPG" + +#, python-format +msgid "Current mode: %s \n" +msgstr "" + +msgid "Current settings:" +msgstr "Current settings:" + +msgid "Current transponder" +msgstr "Current transponder" + +msgid "Current value: " +msgstr "Current value: " + +msgid "Current version:" +msgstr "Current version:" + +msgid "Currently installed image" +msgstr "Currently installed image" + +msgid "Currently the commit log cannot be retrieved - please try later again" +msgstr "" + +msgid "Custom skip time for '1'/'3' buttons" +msgstr "Custom skip time for '1'/'3' buttons" + +msgid "Custom skip time for '4'/'6' buttons" +msgstr "Custom skip time for '4'/'6' buttons" + +msgid "Custom skip time for '7'/'9' buttons" +msgstr "Custom skip time for '7'/'9' buttons" + +msgid "Customize" +msgstr "Customize" + +msgid "Customize channel list cursor behavior" +msgstr "" + +msgid "Cut" +msgstr "Cut" + +msgid "Cutlist editor..." +msgstr "Cutlist editor..." + +msgid "Czech" +msgstr "Czech" + +msgid "D" +msgstr "D" + +msgid "DHCP" +msgstr "DHCP" + +msgid "DMM advanced" +msgstr "DMM advanced" + +msgid "DMM normal" +msgstr "DMM normal" + +msgid "DUAL LAYER DVD" +msgstr "DUAL LAYER DVD" + +msgid "DVB subtitle black transparency" +msgstr "DVB subtitle black transparency" + +msgid "DVB-C" +msgstr "DVB-C" + +msgid "DVB-C ANNEX C" +msgstr "DVB-C ANNEX C" + +msgid "DVB-S" +msgstr "DVB-S" + +msgid "DVB-S2" +msgstr "DVB-S2" + +msgid "DVB-T" +msgstr "DVB-T" + +msgid "DVB-T2" +msgstr "DVB-T2" + +msgid "DVD data format" +msgstr "DVD data format" + +msgid "DVD file browser" +msgstr "DVD file browser" + +msgid "DVD media toolbox" +msgstr "DVD media toolbox" + +msgid "DVD player" +msgstr "DVD player" + +msgid "DVD titlelist" +msgstr "DVD titlelist" + +msgid "Danish" +msgstr "Danish" + +msgid "Date" +msgstr "Date" + +msgid "Date/time input" +msgstr "Date/time input" + +msgid "Deep standby" +msgstr "Deep standby" + +msgid "Default" +msgstr "Default" + +msgid "Default movie location" +msgstr "Default movie location" + +msgid "Default settings" +msgstr "Default settings" + +msgid "Delay before key repeat starts:" +msgstr "Delay before key repeat starts:" + +msgid "Delay for external subtitles" +msgstr "Delay for external subtitles" + +msgid "Delete" +msgstr "Delete" + +msgid "Delete entry" +msgstr "Delete entry" + +msgid "Delete failed!" +msgstr "Delete failed!" + +msgid "Delete file" +msgstr "Delete file" + +msgid "Delete playlist entry" +msgstr "Delete playlist entry" + +msgid "Delete saved playlist" +msgstr "Delete saved playlist" + +msgid "Delete timer" +msgstr "" + +msgid "Delete..." +msgstr "Delete..." + +msgid "Deleted" +msgstr "Deleted" + +msgid "Deleted items" +msgstr "Deleted items" + +msgid "Depth" +msgstr "Depth" + +msgid "Descramble http streams" +msgstr "Descramble http streams" + +msgid "Description" +msgstr "Description" + +msgid "Deselect" +msgstr "Deselect" + +msgid "Details for plugin: " +msgstr "Details for plugin: " + +msgid "Detected HDD:" +msgstr "Detected HDD:" + +msgid "Detected NIMs:" +msgstr "Detected NIMs:" + +msgid "Devicename:" +msgstr "Devicename:" + +msgid "Devide" +msgstr "" + +msgid "DiSEqC" +msgstr "DiSEqC" + +msgid "DiSEqC 1.0 command" +msgstr "" + +msgid "DiSEqC 1.1 command" +msgstr "" + +msgid "DiSEqC 1.1 repeats" +msgstr "" + +msgid "DiSEqC A/B" +msgstr "DiSEqC A/B" + +msgid "DiSEqC A/B/C/D" +msgstr "DiSEqC A/B/C/D" + +msgid "DiSEqC mode" +msgstr "DiSEqC mode" + +#, python-format +msgid "DiSEqC port %s: %s" +msgstr "DiSEqC port %s: %s" + +msgid "DiSEqC-tester settings" +msgstr "DiSEqC-tester settings" + +msgid "Dialing:" +msgstr "Dialing:" + +msgid "Digital contour removal" +msgstr "Digital contour removal" + +msgid "Direct playback of linked titles without menu" +msgstr "Direct playback of linked titles without menu" + +msgid "Directory" +msgstr "Directory" + +#, python-format +msgid "Directory %s does not exist." +msgstr "Directory %s does not exist." + +#, python-format +msgid "Directory %s nonexistent." +msgstr "" + +msgid "Directory browser" +msgstr "Directory browser" + +#, python-format +msgid "Directory contains %d file(s) and %d sub-directories.\n" +msgstr "" + +#, fuzzy, python-format +msgid "Directory contains %s and %s." +msgstr "Directory contains %d file(s) and %d sub-directories.\n" + +msgid "Disable" +msgstr "Disable" + +msgid "Disable Picture in Picture" +msgstr "Disable Picture in Picture" + +msgid "Disable background scanning" +msgstr "Disable background scanning" + +msgid "Disable timer" +msgstr "" + +msgid "Disabled" +msgstr "Disabled" + +msgid "Disconnect" +msgstr "Disconnect" + +msgid "Disk space to reserve for recordings (in GB)" +msgstr "Disk space to reserve for recordings (in GB)" + +msgid "Display 16:9 content as" +msgstr "Display 16:9 content as" + +msgid "Display 4:3 content as" +msgstr "Display 4:3 content as" + +msgid "Display >16:9 content as" +msgstr "Display >16:9 content as" + +msgid "Display and userinterface" +msgstr "Display and userinterface" + +msgid "Display message before playing next movie" +msgstr "Display message before playing next movie" + +msgid "Display setup" +msgstr "Display setup" + +msgid "Do not change" +msgstr "Do not change" + +msgid "Do not record" +msgstr "Do not record" + +msgid "Do nothing" +msgstr "Do nothing" + +msgid "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" +msgstr "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" + +msgid "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" +msgstr "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" + +#, python-format +msgid "Do you really want to delete %s?" +msgstr "Do you really want to delete %s?" + +#, python-format +msgid "" +"Do you really want to download\n" +"the plugin \"%s\"?" +msgstr "" +"Do you really want to download\n" +"the plugin \"%s\"?" + +msgid "Do you really want to exit?" +msgstr "Do you really want to exit?" + +msgid "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" +msgstr "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" + +#, python-format +msgid "" +"Do you really want to remove\n" +"the plugin \"%s\"?" +msgstr "" +"Do you really want to remove\n" +"the plugin \"%s\"?" + +#, python-format +msgid "Do you really want to remove directory %s from the disk?" +msgstr "Do you really want to remove directory %s from the disk?" + +#, python-format +msgid "Do you really want to remove your bookmark of %s?" +msgstr "Do you really want to remove your bookmark of %s?" + +msgid "Do you want this?" +msgstr "" + +msgid "Do you want to burn this collection to DVD medium?" +msgstr "Do you want to burn this collection to DVD medium?" + +msgid "Do you want to do a service scan?" +msgstr "Do you want to do a service scan?" + +msgid "Do you want to do another manual service scan?" +msgstr "Do you want to do another manual service scan?" + +#, python-format +msgid "Do you want to download the image to %s ?" +msgstr "Do you want to download the image to %s ?" + +msgid "Do you want to install a channel list?" +msgstr "Do you want to install a channel list?" + +msgid "Do you want to install the package:\n" +msgstr "Do you want to install the package:\n" + +msgid "Do you want to play DVD in drive?" +msgstr "Do you want to play DVD in drive?" + +msgid "Do you want to preview this DVD before burning?" +msgstr "Do you want to preview this DVD before burning?" + +msgid "Do you want to reboot your receiver?" +msgstr "Do you want to reboot your receiver?" + +msgid "Do you want to remove the package:\n" +msgstr "Do you want to remove the package:\n" + +msgid "Do you want to restore your settings?" +msgstr "Do you want to restore your settings?" + +msgid "Do you want to resume this playback?" +msgstr "Do you want to resume this playback?" + +#, python-format +msgid "Do you want to update your receiver to %s?" +msgstr "Do you want to update your receiver to %s?" + +msgid "Do you want to update your receiver?" +msgstr "Do you want to update your receiver?" + +msgid "Do you want to upgrade the package:\n" +msgstr "Do you want to upgrade the package:\n" + +msgid "Don't stop current event but disable coming events" +msgstr "Don't stop current event but disable coming events" + +#, fuzzy, python-format +msgid "Done - Installed, upgraded or removed %d package (%s)" +msgid_plural "Done - Installed, upgraded or removed %d packages (%s)" +msgstr[0] "Done - Installed, upgraded or removed %d packages with %d errors" +msgstr[1] "Done - Installed, upgraded or removed %d packages with %d errors" + +msgid "Download" +msgstr "Download" + +#, python-format +msgid "Download %s from server" +msgstr "Download %s from server" + +msgid "Download .NFI-files for USB-flasher" +msgstr "Download .NFI-files for USB-flasher" + +msgid "Download plugins" +msgstr "Download plugins" + +msgid "Downloadable new plugins" +msgstr "Downloadable new plugins" + +msgid "Downloadable plugins" +msgstr "Downloadable plugins" + +msgid "Downloading" +msgstr "Downloading" + +msgid "Downloading plugin information. Please wait..." +msgstr "Downloading plugin information. Please wait..." + +msgid "Dutch" +msgstr "Dutch" + +msgid "Dynamic contrast" +msgstr "Dynamic contrast" + +msgid "E" +msgstr "E" + +msgid "EPG" +msgstr "EPG" + +msgid "EPG language selection 1" +msgstr "EPG language selection 1" + +msgid "EPG language selection 2" +msgstr "EPG language selection 2" + +msgid "EPG selection" +msgstr "EPG selection" + +msgid "EPG settings" +msgstr "EPG settings" + +#, python-format +msgid "ERROR - failed to scan (%s)!" +msgstr "ERROR - failed to scan (%s)!" + +msgid "East" +msgstr "East" + +msgid "East limit set" +msgstr "East limit set" + +msgid "Edit" +msgstr "Edit" + +msgid "Edit DNS" +msgstr "Edit DNS" + +msgid "Edit bouquets list" +msgstr "Edit bouquets list" + +msgid "Edit chapters of current title" +msgstr "Edit chapters of current title" + +msgid "Edit services list" +msgstr "Edit services list" + +msgid "Edit settings" +msgstr "Edit settings" + +msgid "Edit the nameserver configuration of your receiver.\n" +msgstr "Edit the nameserver configuration of your receiver.\n" + +msgid "Edit the network configuration of your receiver.\n" +msgstr "Edit the network configuration of your receiver.\n" + +msgid "Edit timer" +msgstr "" + +msgid "Edit title" +msgstr "Edit title" + +msgid "Edit upgrade source url." +msgstr "Edit upgrade source url." + +msgid "Education/Science/..." +msgstr "Education/Science/..." + +msgid "Electronic Program Guide" +msgstr "Electronic Program Guide" + +msgid "Enable" +msgstr "Enable" + +msgid "Enable 'neutrino' style channel select controlling" +msgstr "" + +msgid "Enable 'neutrino' style zap controlling" +msgstr "" + +msgid "Enable 5V for active antenna" +msgstr "Enable 5V for active antenna" + +msgid "Enable EIT EPG" +msgstr "Enable EIT EPG" + +msgid "Enable MHW EPG" +msgstr "Enable MHW EPG" + +msgid "Enable Netmed EPG" +msgstr "Enable Netmed EPG" + +msgid "Enable OK for channel selection" +msgstr "" + +msgid "Enable ViaSat EPG" +msgstr "Enable ViaSat EPG" + +msgid "Enable Virgin EPG" +msgstr "" + +msgid "Enable Wake On LAN" +msgstr "" + +msgid "Enable auto fast scan" +msgstr "" + +msgid "Enable bouquet selection in multi-EPG" +msgstr "Enable bouquet selection in multi-EPG" + +msgid "Enable freesat EPG" +msgstr "Enable freesat EPG" + +msgid "Enable multiple bouquets" +msgstr "Enable multiple bouquets" + +msgid "Enable parental control" +msgstr "Enable parental control" + +msgid "Enable teletext caching" +msgstr "Enable teletext caching" + +msgid "Enable zapping with CH+/-, B+/-, P+/-" +msgstr "" + +msgid "Enabled" +msgstr "Enabled" + +msgid "Encrypted: " +msgstr "Encrypted: " + +msgid "Encryption" +msgstr "Encryption" + +msgid "Encryption key" +msgstr "Encryption key" + +msgid "Encryption key type" +msgstr "Encryption key type" + +msgid "Encryption:" +msgstr "Encryption:" + +msgid "End time" +msgstr "End time" + +msgid "End time to ignore inactivity sleeptimer" +msgstr "" + +msgid "End time to ignore shutdown in standby" +msgstr "" + +msgid "English" +msgstr "English" + +msgid "Enigma2 skin selector" +msgstr "Enigma2 skin selector" + +msgid "Enter main menu..." +msgstr "Enter main menu..." + +msgid "Enter pin code" +msgstr "Enter pin code" + +msgid "Enter the service pin" +msgstr "Enter the service pin" + +msgid "Equal to" +msgstr "" + +msgid "Error" +msgstr "Error" + +msgid "Error code" +msgstr "Error code" + +msgid "Error executing plugin" +msgstr "Error executing plugin" + +#, python-format +msgid "" +"Error: %s\n" +"Retry?" +msgstr "" +"Error: %s\n" +"Retry?" + +msgid "Estonian" +msgstr "Estonian" + +msgid "Ethernet network interface" +msgstr "Ethernet network interface" + +msgid "Event font size (relative to skin size)" +msgstr "Event font size (relative to skin size)" + +msgid "Event view" +msgstr "Event view" + +msgid "Event view menu" +msgstr "Event view menu" + +msgid "Everywhere" +msgstr "Everywhere" + +msgid "Exceeds dual layer medium!" +msgstr "Exceeds dual layer medium!" + +msgid "Execution finished!!" +msgstr "Execution finished!!" + +msgid "Execution progress:" +msgstr "Execution progress:" + +msgid "Exif" +msgstr "Exif" + +msgid "Exit" +msgstr "Exit" + +msgid "Exit EPG" +msgstr "Exit EPG" + +msgid "Exit editor" +msgstr "Exit editor" + +msgid "Exit input device selection." +msgstr "Exit input device selection." + +msgid "Exit media player?" +msgstr "Exit media player?" + +msgid "Exit mediaplayer" +msgstr "Exit mediaplayer" + +msgid "Exit movie list" +msgstr "Exit movie list" + +msgid "Exit movie player?" +msgstr "Exit movie player?" + +msgid "Exit nameserver configuration" +msgstr "Exit nameserver configuration" + +msgid "Exit network interface list" +msgstr "Exit network interface list" + +msgid "Exit network wizard" +msgstr "Exit network wizard" + +msgid "Exit the wizard" +msgstr "Exit the wizard" + +msgid "Expert" +msgstr "Expert" + +msgid "Extend sleeptimer 15 minutes" +msgstr "" + +msgid "Extended Software" +msgstr "Extended Software" + +msgid "Extended Software Plugin" +msgstr "Extended Software Plugin" + +msgid "Extended network setup plugin..." +msgstr "Extended network setup plugin..." + +msgid "Extended setup..." +msgstr "Extended setup..." + +msgid "Extensions" +msgstr "Extensions" + +msgid "Extensions management" +msgstr "Extensions management" + +msgid "External PiP" +msgstr "" + +msgid "External subtitle color" +msgstr "External subtitle color" + +msgid "Extra motor options" +msgstr "" + +msgid "FEC" +msgstr "FEC" + +msgid "FTA" +msgstr "FTA" + +msgid "Factory reset" +msgstr "Factory reset" + +msgid "Failed" +msgstr "Failed" + +msgid "Failed to write /tmp/positionersetup.log: " +msgstr "Failed to write /tmp/positionersetup.log: " + +#, python-format +msgid "Fan %d" +msgstr "Fan %d" + +#, python-format +msgid "Fan %d PWM" +msgstr "Fan %d PWM" + +#, python-format +msgid "Fan %d voltage" +msgstr "Fan %d voltage" + +msgid "Fan operation" +msgstr "" + +msgid "Fan speed" +msgstr "" + +msgid "Fast" +msgstr "Fast" + +msgid "Fast DiSEqC" +msgstr "Fast DiSEqC" + +msgid "Fast Scan" +msgstr "Fast Scan" + +msgid "Fast epoch" +msgstr "Fast epoch" + +msgid "Fast forward speeds" +msgstr "Fast forward speeds" + +msgid "Favourites" +msgstr "Favourites" + +msgid "File appears to be busy.\n" +msgstr "File appears to be busy.\n" + +msgid "Filesystem check" +msgstr "Filesystem check" + +msgid "Final position at" +msgstr "Final position at" + +msgid "Final position at index" +msgstr "Final position at index" + +msgid "Fine movement" +msgstr "Fine movement" + +msgid "Finetune" +msgstr "Finetune" + +msgid "Finished" +msgstr "Finished" + +msgid "Finished configuring your network" +msgstr "Finished configuring your network" + +msgid "Finished restarting your network" +msgstr "Finished restarting your network" + +msgid "Finnish" +msgstr "Finnish" + +msgid "Fixed" +msgstr "Fixed" + +msgid "Flash" +msgstr "Flash" + +msgid "Flashing failed" +msgstr "Flashing failed" + +msgid "Following tasks will be done after you press OK!" +msgstr "Following tasks will be done after you press OK!" + +msgid "Format" +msgstr "Format" + +msgid "Forward volume keys" +msgstr "Forward volume keys" + +msgid "Frame size in full view" +msgstr "Frame size in full view" + +msgid "French" +msgstr "French" + +msgid "Frequency" +msgstr "Frequency" + +msgid "Frequency bands" +msgstr "Frequency bands" + +msgid "Frequency scan step size(khz)" +msgstr "Frequency scan step size(khz)" + +msgid "Frequency steps" +msgstr "Frequency steps" + +msgid "Frequency:" +msgstr "" + +msgid "Fri" +msgstr "Fri" + +msgid "Friday" +msgstr "Friday" + +msgid "From :" +msgstr "From :" + +#, python-format +msgid "Frontprocessor version: %d" +msgstr "Frontprocessor version: %d" + +msgid "Full transparency" +msgstr "Full transparency" + +msgid "Fulview resulution" +msgstr "" + +msgid "Function of OK button" +msgstr "Function of OK button" + +msgid "Further Options" +msgstr "" + +msgid "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" +msgstr "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" + +msgid "Gateway" +msgstr "Gateway" + +msgid "General AC3 delay" +msgstr "General AC3 delay" + +msgid "General PCM delay" +msgstr "General PCM delay" + +msgid "Genre" +msgstr "Genre" + +msgid "German" +msgstr "German" + +msgid "Get latest experimental image" +msgstr "Get latest experimental image" + +msgid "Get latest release image" +msgstr "Get latest release image" + +msgid "Getting plugin information. Please wait..." +msgstr "Getting plugin information. Please wait..." + +msgid "Go down the list" +msgstr "Go down the list" + +msgid "Go to first movie or last item" +msgstr "Go to first movie or last item" + +msgid "Go to first movie or top of list" +msgstr "Go to first movie or top of list" + +msgid "Go to first service" +msgstr "Go to first service" + +msgid "Go to last service" +msgstr "Go to last service" + +msgid "Go to next event" +msgstr "Go to next event" + +msgid "Go to next page of service" +msgstr "Go to next page of service" + +msgid "Go to previous event" +msgstr "Go to previous event" + +msgid "Go to previous page of service" +msgstr "Go to previous page of service" + +msgid "Go up the list" +msgstr "Go up the list" + +msgid "Goto" +msgstr "Goto" + +msgid "Goto 0" +msgstr "Goto 0" + +msgid "Goto :" +msgstr "Goto :" + +msgid "Goto X" +msgstr "Goto X" + +msgid "Goto index position" +msgstr "Goto index position" + +msgid "Goto next day of events" +msgstr "" + +msgid "Goto next page of events" +msgstr "Goto next page of events" + +msgid "Goto position" +msgstr "Goto position" + +msgid "Goto previous day of events" +msgstr "" + +msgid "Goto previous page of events" +msgstr "Goto previous page of events" + +msgid "Goto specific date/time" +msgstr "" + +msgid "GotoX calibration" +msgstr "GotoX calibration" + +msgid "GraphMultiEpg Settings" +msgstr "GraphMultiEpg Settings" + +msgid "Graphical Multi EPG" +msgstr "Graphical Multi EPG" + +msgid "Greek" +msgstr "Greek" + +msgid "Green boost" +msgstr "Green boost" + +msgid "Guard interval" +msgstr "Guard interval" + +msgid "HD list" +msgstr "HD list" + +msgid "HDMI-CEC setup" +msgstr "" + +msgid "Handle standby from TV" +msgstr "Handle standby from TV" + +msgid "Handle wakeup from TV" +msgstr "Handle wakeup from TV" + +msgid "Hard disk" +msgstr "Hard disk" + +msgid "Hard disk setup" +msgstr "Hard disk setup" + +msgid "Hard disk standby after" +msgstr "Hard disk standby after" + +msgid "Harddisk" +msgstr "Harddisk" + +msgid "Hardware: " +msgstr "Hardware: " + +msgid "Hebrew" +msgstr "Hebrew" + +msgid "Helps setting up your dish" +msgstr "" + +msgid "Hidden network" +msgstr "Hidden network" + +msgid "Hide CI messages" +msgstr "Hide CI messages" + +msgid "Hide channel list in radio mode" +msgstr "Hide channel list in radio mode" + +msgid "Hide known extensions" +msgstr "" + +msgid "Hide number markers" +msgstr "Hide number markers" + +msgid "Hide player" +msgstr "Hide player" + +msgid "Hide zap errors" +msgstr "Hide zap errors" + +msgid "Hierarchy info" +msgstr "Hierarchy info" + +msgid "Hierarchy information" +msgstr "Hierarchy information" + +msgid "High bitrate support" +msgstr "High bitrate support" + +msgid "Hold screen" +msgstr "Hold screen" + +msgid "Hold till locked" +msgstr "Hold till locked" + +msgid "Home" +msgstr "Home" + +msgid "Horizontal" +msgstr "Horizontal" + +msgid "Horizontal turning speed" +msgstr "Horizontal turning speed" + +msgid "How many minutes do you want to record?" +msgstr "How many minutes do you want to record?" + +msgid "Hue" +msgstr "Hue" + +msgid "Hungarian" +msgstr "Hungarian" + +msgid "IP address" +msgstr "IP address" + +msgid "ISO file is too large for this filesystem!" +msgstr "ISO file is too large for this filesystem!" + +msgid "ISO path" +msgstr "ISO path" + +msgid "Icons" +msgstr "Icons" + +msgid "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." +msgstr "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." + +msgid "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." +msgstr "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." + +msgid "Image: " +msgstr "Image: " + +msgid "Immediate shutdown" +msgstr "Immediate shutdown" + +msgid "In order to record a timer, the TV was switched to the recording service!\n" +msgstr "In order to record a timer, the TV was switched to the recording service!\n" + +msgid "In progress" +msgstr "In progress" + +msgid "Inactivity Sleeptimer" +msgstr "" + +msgid "Include AIT in http streams" +msgstr "Include AIT in http streams" + +msgid "Include ECM in http streams" +msgstr "Include ECM in http streams" + +msgid "Include EIT in http streams" +msgstr "Include EIT in http streams" + +msgid "Incorrect type service for PiP!" +msgstr "" + +msgid "Increased voltage" +msgstr "Increased voltage" + +msgid "Index" +msgstr "Index" + +msgid "Index allocated:" +msgstr "Index allocated:" + +msgid "Info" +msgstr "Info" + +msgid "Info bar" +msgstr "Info bar" + +msgid "Info bar timeout" +msgstr "Info bar timeout" + +msgid "Infobar frontend data source" +msgstr "" + +msgid "Information" +msgstr "Information" + +msgid "Init" +msgstr "Init" + +msgid "Initial fast forward speed" +msgstr "Initial fast forward speed" + +msgid "Initial location in new timers" +msgstr "Initial location in new timers" + +msgid "Initial lock ratio" +msgstr "Initial lock ratio" + +msgid "Initial rewind speed" +msgstr "Initial rewind speed" + +msgid "Initial signal quality" +msgstr "Initial signal quality" + +msgid "Initial signal quality:" +msgstr "Initial signal quality:" + +msgid "Initialization" +msgstr "Initialization" + +msgid "Initialize" +msgstr "Initialize" + +msgid "Initializing storage device..." +msgstr "Initializing storage device..." + +msgid "Input" +msgstr "Input" + +msgid "Input device setup" +msgstr "Input device setup" + +msgid "Input devices" +msgstr "Input devices" + +msgid "Install" +msgstr "Install" + +msgid "Install a new image with a USB stick" +msgstr "Install a new image with a USB stick" + +msgid "Install a new image with your web browser" +msgstr "Install a new image with your web browser" + +msgid "Install channel list" +msgstr "Install channel list" + +msgid "Install extensions" +msgstr "" + +msgid "Install extensions." +msgstr "Install extensions." + +msgid "Install local extension" +msgstr "Install local extension" + +msgid "Install picons on" +msgstr "Install picons on" + +msgid "Install softcam" +msgstr "Install softcam" + +msgid "Installation has completed." +msgstr "Installation has completed." + +msgid "Installation or removal has completed." +msgstr "Installation or removal has completed." + +msgid "Installing" +msgstr "Installing" + +msgid "Installing software..." +msgstr "Installing software..." + +msgid "Instant recording location" +msgstr "Instant recording location" + +msgid "Instant recording..." +msgstr "Instant recording..." + +msgid "Interface: " +msgstr "Interface: " + +msgid "Intermediate" +msgstr "Intermediate" + +msgid "Internal flash" +msgstr "Internal flash" + +msgid "Internal hdd only" +msgstr "Internal hdd only" + +msgid "Interval between keys when repeating:" +msgstr "Interval between keys when repeating:" + +#, python-format +msgid "Invalid directory selected: %s" +msgstr "Invalid directory selected: %s" + +msgid "Invalid location" +msgstr "Invalid location" + +msgid "Invalid transponder data" +msgstr "" + +msgid "Inversion" +msgstr "Inversion" + +msgid "Invert" +msgstr "Invert" + +msgid "Ipkg" +msgstr "Ipkg" + +msgid "Is this setting ok?" +msgstr "Is this setting ok?" + +msgid "Is this video mode ok?" +msgstr "Is this video mode ok?" + +msgid "Italian" +msgstr "Italian" + +msgid "Items per page " +msgstr "Items per page " + +msgid "Items per page for list screen" +msgstr "Items per page for list screen" + +msgid "Job overview" +msgstr "Job overview" + +msgid "Jump to beginning of list" +msgstr "Jump to beginning of list" + +msgid "Jump to end of list" +msgstr "Jump to end of list" + +msgid "Jump to next marked position" +msgstr "Jump to next marked position" + +msgid "Jump to previous marked position" +msgstr "Jump to previous marked position" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect) +msgid "Just scale" +msgstr "Just scale" + +msgid "Keep service" +msgstr "" + +msgid "Kernel version: " +msgstr "Kernel version: " + +msgid "Keyboard" +msgstr "Keyboard" + +msgid "Keyboard map" +msgstr "Keyboard map" + +msgid "Keyboard setup" +msgstr "Keyboard setup" + +msgid "LAN adapter" +msgstr "LAN adapter" + +msgid "LAN connection" +msgstr "LAN connection" + +msgid "LNB" +msgstr "LNB" + +msgid "Language" +msgstr "Language" + +msgid "Language selection" +msgstr "Language selection" + +msgid "Last config" +msgstr "Last config" + +msgid "Last speed" +msgstr "Last speed" + +msgid "Last upgrade: " +msgstr "Last upgrade: " + +msgid "Latest Commits" +msgstr "" + +msgid "Latitude" +msgstr "Latitude" + +msgid "Latvian" +msgstr "Latvian" + +msgid "Leave DVD player?" +msgstr "Leave DVD player?" + +msgid "Left" +msgstr "Left" + +msgid "Left from servicename" +msgstr "Left from servicename" + +msgid "Leisure hobbies" +msgstr "Leisure hobbies" + +#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term. +msgid "Letterbox" +msgstr "Letterbox" + +msgid "Letterbox zoom" +msgstr "" + +msgid "Limit character set for recording filenames" +msgstr "Limit character set for recording filenames" + +msgid "Limit east" +msgstr "Limit east" + +msgid "Limit the characters that can be used in recording filenames to (7 bit) ascii. This ensures compatibility with operating systems or file systems with limited character sets." +msgstr "Limit the characters that can be used in recording filenames to (7 bit) ascii. This ensures compatibility with operating systems or file systems with limited character sets." + +msgid "Limit west" +msgstr "Limit west" + +msgid "Limits cancelled" +msgstr "Limits cancelled" + +msgid "Limits enabled" +msgstr "Limits enabled" + +msgid "Limits off" +msgstr "Limits off" + +msgid "Limits on" +msgstr "Limits on" + +msgid "Link quality:" +msgstr "Link quality:" + +msgid "Link:" +msgstr "Link:" + +msgid "Linked titles with a DVD menu" +msgstr "Linked titles with a DVD menu" + +msgid "List EPG functions..." +msgstr "List EPG functions..." + +msgid "List available networks" +msgstr "List available networks" + +msgid "List mode" +msgstr "List mode" + +msgid "List of storage devices" +msgstr "List of storage devices" + +msgid "List type" +msgstr "List type" + +#, fuzzy, python-format +msgid "List version %d, found %d channel" +msgid_plural "List version %d, found %d channels" +msgstr[0] "List version %d, found %d channels" +msgstr[1] "List version %d, found %d channels" + +msgid "Listen to the radio..." +msgstr "Listen to the radio..." + +msgid "Lists reloaded!" +msgstr "" + +msgid "Lithuanian" +msgstr "Lithuanian" + +msgid "Load" +msgstr "Load" + +msgid "Load Length of Movies in Movielist" +msgstr "" + +msgid "Load length of movies in movie list" +msgstr "Load length of movies in movie list" + +msgid "Load playlist" +msgstr "Load playlist" + +msgid "Local network" +msgstr "Local network" + +msgid "Location" +msgstr "Location" + +msgid "Location for instant recordings" +msgstr "Location for instant recordings" + +msgid "Lock ratio" +msgstr "Lock ratio" + +msgid "Lock:" +msgstr "Lock:" + +msgid "Log results to harddisk" +msgstr "Log results to harddisk" + +msgid "Long filenames" +msgstr "Long filenames" + +msgid "Long key press" +msgstr "Long key press" + +msgid "Longitude" +msgstr "Longitude" + +msgid "Loop through to" +msgstr "" + +msgid "Luxembourgish" +msgstr "Luxembourgish" + +msgid "MMC card" +msgstr "MMC card" + +msgid "MORE" +msgstr "MORE" + +msgid "Main menu" +msgstr "Main menu" + +msgid "Maintain old EPG data for" +msgstr "Maintain old EPG data for" + +msgid "Make this mark an 'in' point" +msgstr "Make this mark an 'in' point" + +msgid "Make this mark an 'out' point" +msgstr "Make this mark an 'out' point" + +msgid "Make this mark just a mark" +msgstr "Make this mark just a mark" + +msgid "Manage extensions" +msgstr "Manage extensions" + +msgid "Manage your receiver's software" +msgstr "Manage your receiver's software" + +msgid "Manual" +msgstr "" + +msgid "Manual Scan" +msgstr "Manual Scan" + +msgid "Manual configuration" +msgstr "Manual configuration" + +msgid "Manual scan" +msgstr "Manual scan" + +msgid "Manual transponder" +msgstr "Manual transponder" + +msgid "Manufacturer" +msgstr "Manufacturer" + +msgid "Margin after recording (minutes)" +msgstr "Margin after recording (minutes)" + +msgid "Margin before recording (minutes)" +msgstr "Margin before recording (minutes)" + +msgid "Max memory positions" +msgstr "" + +msgid "Max. bitrate: " +msgstr "Max. bitrate: " + +msgid "Media player" +msgstr "Media player" + +msgid "Media scanner" +msgstr "Media scanner" + +msgid "Medium is not a writeable DVD!" +msgstr "Medium is not a writeable DVD!" + +msgid "Medium is not empty!" +msgstr "Medium is not empty!" + +msgid "Memory" +msgstr "Memory" + +msgid "Memory index" +msgstr "Memory index" + +msgid "Menu" +msgstr "Menu" + +msgid "Message" +msgstr "Message" + +msgid "Message..." +msgstr "Message..." + +#, python-format +msgid "Minimum age %d years" +msgstr "Minimum age %d years" + +#, fuzzy +msgid "Minimum send interval" +msgstr "Minimum age %d years" + +msgid "Missing " +msgstr "Missing " + +msgctxt "Satellite configuration mode" +msgid "Mode" +msgstr "Mode" + +msgctxt "Video output mode" +msgid "Mode" +msgstr "Mode" + +msgid "Model: " +msgstr "Model: " + +msgid "Modulation" +msgstr "Modulation" + +msgid "Modulator" +msgstr "Modulator" + +msgid "Mon" +msgstr "Mon" + +msgid "Mon-Fri" +msgstr "Mon-Fri" + +msgid "Monday" +msgstr "Monday" + +msgid "Mosquito noise reduction" +msgstr "Mosquito noise reduction" + +msgid "Mount" +msgstr "Mount" + +msgid "Move" +msgstr "Move" + +msgid "Move PiP to main picture" +msgstr "Move PiP to main picture" + +msgid "Move Picture in Picture" +msgstr "Move Picture in Picture" + +msgid "Move east" +msgstr "Move east" + +msgid "Move to other directory" +msgstr "Move to other directory" + +msgid "Move to position X" +msgstr "Move to position X" + +msgid "Move west" +msgstr "Move west" + +msgid "Moved to position 0" +msgstr "Moved to position 0" + +msgid "Moved to position at index" +msgstr "Moved to position at index" + +msgid "Movement" +msgstr "Movement" + +msgid "Movie List Configuration" +msgstr "" + +msgid "Movie Selection" +msgstr "" + +msgid "Movie list configuration" +msgstr "Movie list configuration" + +msgid "Movie location" +msgstr "Movie location" + +msgid "Movie selection" +msgstr "Movie selection" + +msgid "Movie/Drama" +msgstr "Movie/Drama" + +msgid "Movielist menu" +msgstr "Movielist menu" + +msgid "Moving" +msgstr "Moving" + +msgid "Moving east ..." +msgstr "Moving east ..." + +msgid "Moving to position" +msgstr "Moving to position" + +msgid "Moving west ..." +msgstr "Moving west ..." + +msgid "Multi EPG" +msgstr "Multi EPG" + +msgid "Multi-EPG bouquet selection" +msgstr "Multi-EPG bouquet selection" + +msgid "Multimedia" +msgstr "Multimedia" + +msgid "Multiple service support" +msgstr "Multiple service support" + +msgid "Multiplex" +msgstr "Multiplex" + +msgid "Multisat" +msgstr "Multisat" + +msgid "Multisat all select" +msgstr "" + +msgid "Music/Ballet/Dance" +msgstr "Music/Ballet/Dance" + +msgid "Mute" +msgstr "Mute" + +msgid "N/A" +msgstr "N/A" + +msgid "NEXT" +msgstr "NEXT" + +msgid "NFI image flashing" +msgstr "NFI image flashing" + +msgid "NFI image flashing completed. Press Yellow to Reboot!" +msgstr "NFI image flashing completed. Press Yellow to Reboot!" + +msgid "NIM" +msgstr "NIM" + +msgid "NOW" +msgstr "NOW" + +msgid "NTSC" +msgstr "NTSC" + +msgid "Name" +msgstr "Name" + +msgid "Nameserver" +msgstr "Nameserver" + +#, python-format +msgid "Nameserver %d" +msgstr "Nameserver %d" + +msgid "Nameserver settings" +msgstr "Nameserver settings" + +msgid "Nameserver setup" +msgstr "Nameserver setup" + +msgid "Namespace" +msgstr "Namespace" + +msgid "Netmask" +msgstr "Netmask" + +msgid "Network" +msgstr "Network" + +msgid "Network ID" +msgstr "Network ID" + +msgid "Network configuration..." +msgstr "Network configuration..." + +msgid "Network mount" +msgstr "Network mount" + +#, python-format +msgid "Network mount %s" +msgstr "Network mount %s" + +msgid "Network name (SSID)" +msgstr "Network name (SSID)" + +msgid "Network scan" +msgstr "Network scan" + +msgid "Network setup" +msgstr "Network setup" + +msgid "Network test" +msgstr "Network test" + +msgid "Network test..." +msgstr "Network test..." + +msgid "Network test: " +msgstr "Network test: " + +msgid "Network wizard" +msgstr "Network wizard" + +msgid "Network:" +msgstr "Network:" + +msgid "New" +msgstr "New" + +msgid "New PIN" +msgstr "New PIN" + +msgid "New version:" +msgstr "New version:" + +msgid "News Current Affairs" +msgstr "News Current Affairs" + +msgctxt "button label, 'next screen'" +msgid "Next" +msgstr "Next" + +msgctxt "now/next: 'next' event label" +msgid "Next" +msgstr "Next" + +msgid "No" +msgstr "No" + +msgid "No (supported) DVDROM found!" +msgstr "No (supported) DVDROM found!" + +msgid "No Connection" +msgstr "No Connection" + +msgid "No HDD found or HDD not initialized!" +msgstr "No HDD found or HDD not initialized!" + +msgid "No backup needed" +msgstr "No backup needed" + +msgid "No cable tuner found!" +msgstr "No cable tuner found!" + +msgid "" +"No data on transponder!\n" +"(Timeout reading PAT)" +msgstr "" +"No data on transponder!\n" +"(Timeout reading PAT)" + +msgid "No delay" +msgstr "No delay" + +msgid "No description available." +msgstr "No description available." + +msgid "No details for this image file" +msgstr "No details for this image file" + +msgid "No displayable files on this medium found!" +msgstr "No displayable files on this medium found!" + +msgid "No event info found, recording indefinitely." +msgstr "No event info found, recording indefinitely." + +msgid "No fast winding possible yet.. but you can use the number buttons to skip forward/backward!" +msgstr "No fast winding possible yet.. but you can use the number buttons to skip forward/backward!" + +msgid "No free index available" +msgstr "No free index available" + +msgid "No free tuner!" +msgstr "No free tuner!" + +msgid "No network connection available." +msgstr "No network connection available." + +msgid "No networks found" +msgstr "No networks found" + +msgid "No new plugins found" +msgstr "" + +msgid "No positioner capable frontend found." +msgstr "No positioner capable frontend found." + +msgid "No satellites configured. Plese check your tuner setup." +msgstr "" + +msgid "No service" +msgstr "" + +msgid "No services/providers selected" +msgstr "No services/providers selected" + +msgid "No standby" +msgstr "No standby" + +msgid "No suitable sat tuner found!" +msgstr "" + +msgid "No tags are set on these movies." +msgstr "No tags are set on these movies." + +msgid "No timeout" +msgstr "No timeout" + +msgid "No to all" +msgstr "No to all" + +msgid "No transparency" +msgstr "No transparency" + +msgid "No tuner is configured for use with a diseqc positioner!" +msgstr "No tuner is configured for use with a diseqc positioner!" + +msgid "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." + +msgid "No updates available" +msgstr "No updates available" + +msgid "No updates available. Please try again later." +msgstr "No updates available. Please try again later." + +msgid "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" +msgstr "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" + +msgid "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" +msgstr "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" + +msgid "No wireless networks found! Searching..." +msgstr "No wireless networks found! Searching..." + +msgid "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." +msgstr "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." + +msgid "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." +msgstr "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." + +msgid "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." +msgstr "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." + +msgid "No, but restart from begin" +msgstr "No, but restart from begin" + +msgid "No, do nothing." +msgstr "No, do nothing." + +msgid "No, just start my receiver" +msgstr "No, just start my receiver" + +msgid "No, never" +msgstr "No, never" + +msgid "None" +msgstr "None" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right) +msgid "Nonlinear" +msgstr "Nonlinear" + +msgid "Normal mode" +msgstr "Normal mode" + +msgid "North" +msgstr "North" + +msgid "Norwegian" +msgstr "Norwegian" + +msgid "Not associated" +msgstr "Not associated" + +msgid "Not configured" +msgstr "" + +#, python-format +msgid "Not enough disk space. Please free up some disk space and try again. (%d MB required, %d MB available)" +msgstr "Not enough disk space. Please free up some disk space and try again. (%d MB required, %d MB available)" + +msgid "Nothing connected" +msgstr "" + +msgid "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." + +msgctxt "now/next: 'now' event label" +msgid "Now" +msgstr "Now" + +msgid "Now playing" +msgstr "Now playing" + +msgid "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." +msgstr "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." + +msgid "OK" +msgstr "OK" + +msgid "OK, guide me through the upgrade process" +msgstr "OK, guide me through the upgrade process" + +msgid "ONID" +msgstr "ONID" + +msgid "OSD name request" +msgstr "OSD name request" + +msgid "OSD settings" +msgstr "OSD settings" + +msgid "OSD transparency" +msgstr "OSD transparency" + +msgid "Off" +msgstr "Off" + +msgid "Offline decode delay (ms)" +msgstr "Offline decode delay (ms)" + +msgid "Ok" +msgstr "Ok" + +msgid "On" +msgstr "On" + +msgid "On end of movie" +msgstr "On end of movie" + +msgid "On end of movie (as menu)" +msgstr "" + +msgid "One" +msgstr "One" + +msgid "Only extensions." +msgstr "Only extensions." + +msgid "Only free scan" +msgstr "Only free scan" + +msgid "Open service list" +msgstr "Open service list" + +msgid "Open the movie list" +msgstr "Open the movie list" + +msgid "Orbital position" +msgstr "Orbital position" + +msgid "Original" +msgstr "Original" + +msgid "Other" +msgstr "Other" + +msgid "Output" +msgstr "Output" + +msgid "Overwrite configuration files during software upgrade?" +msgstr "Overwrite configuration files during software upgrade?" + +msgid "Overwrite configuration files?" +msgstr "Overwrite configuration files?" + +msgid "PAL" +msgstr "PAL" + +msgid "PCR PID" +msgstr "PCR PID" + +msgid "PIDs" +msgstr "PIDs" + +msgid "PIN code needed" +msgstr "PIN code needed" + +msgid "PLP ID" +msgstr "" + +msgid "PMT PID" +msgstr "PMT PID" + +msgid "Package list update" +msgstr "Package list update" + +msgid "Packet management" +msgstr "Packet management" + +msgid "Packet manager" +msgstr "Packet manager" + +#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term +msgid "Pan&scan" +msgstr "Pan&scan" + +msgid "Parent directory" +msgstr "Parent directory" + +msgid "Parental control" +msgstr "Parental control" + +msgid "Parental control services editor" +msgstr "Parental control services editor" + +msgid "Parental control setup" +msgstr "Parental control setup" + +msgid "Parental control type" +msgstr "Parental control type" + +msgid "Password" +msgstr "Password" + +msgid "Pause" +msgstr "Pause" + +msgid "Pause movie at end" +msgstr "Pause movie at end" + +msgid "Pause playback" +msgstr "Pause playback" + +msgid "Pauze/Continue playback" +msgstr "" + +msgid "Percentage left" +msgstr "Percentage left" + +msgid "Percentage right" +msgstr "Percentage right" + +msgid "Permanently delete all recordings in the trash can?" +msgstr "Permanently delete all recordings in the trash can?" + +msgid "Permanently remove all deleted items" +msgstr "Permanently remove all deleted items" + +msgid "Persian" +msgstr "Persian" + +msgid "Phone number" +msgstr "Phone number" + +msgid "PiP setup" +msgstr "PiP setup" + +msgid "Picon" +msgstr "Picon" + +msgid "Picon and service name" +msgstr "Picon and service name" + +msgid "Picture player" +msgstr "Picture player" + +#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term. +msgid "Pillarbox" +msgstr "Pillarbox" + +msgid "Pilot" +msgstr "Pilot" + +msgid "Play" +msgstr "Play" + +msgid "Play DVD" +msgstr "Play DVD" + +msgid "Play audio in background" +msgstr "Play audio in background" + +msgid "Play audio-CD..." +msgstr "Play audio-CD..." + +msgid "Play back media files" +msgstr "Play back media files" + +msgid "Play entry" +msgstr "Play entry" + +msgid "Play from next mark or playlist entry" +msgstr "Play from next mark or playlist entry" + +msgid "Play from previous mark or playlist entry" +msgstr "Play from previous mark or playlist entry" + +msgid "Play music..." +msgstr "Play music..." + +msgid "Play next" +msgstr "Play next" + +msgid "Play next (return to movie list)" +msgstr "Play next (return to movie list)" + +msgid "Play next (return to previous service)" +msgstr "Play next (return to previous service)" + +msgid "Play previous" +msgstr "Play previous" + +msgid "Play recorded movies..." +msgstr "Play recorded movies..." + +msgid "Please add titles to the compilation." +msgstr "Please add titles to the compilation." + +msgid "Please change recording endtime" +msgstr "Please change recording endtime" + +msgid "Please check your network settings!" +msgstr "Please check your network settings!" + +msgid "Please choose an extension..." +msgstr "Please choose an extension..." + +msgid "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." + +msgid "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." + +msgid "Please connect your receiver to the internet" +msgstr "Please connect your receiver to the internet" + +msgid "Please do not change any values unless you know what you are doing!" +msgstr "Please do not change any values unless you know what you are doing!" + +msgid "Please enter a name for the new bouquet" +msgstr "Please enter a name for the new bouquet" + +msgid "Please enter a name for the new marker" +msgstr "Please enter a name for the new marker" + +msgid "Please enter a new filename" +msgstr "Please enter a new filename" + +msgid "Please enter filename (empty = use current date)" +msgstr "Please enter filename (empty = use current date)" + +msgid "Please enter name of the new directory" +msgstr "Please enter name of the new directory" + +msgid "Please enter new name:" +msgstr "" + +msgid "Please enter the correct pin code" +msgstr "Please enter the correct pin code" + +msgid "Please enter the old PIN code" +msgstr "Please enter the old PIN code" + +msgid "Please follow the instructions on the TV" +msgstr "Please follow the instructions on the TV" + +msgid "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." +msgstr "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." + +msgid "Please press OK to continue." +msgstr "Please press OK to continue." + +msgid "Please select a default EPG type..." +msgstr "Please select a default EPG type..." + +msgid "Please select a playlist to delete..." +msgstr "Please select a playlist to delete..." + +msgid "Please select a playlist..." +msgstr "Please select a playlist..." + +msgid "Please select a sub service..." +msgstr "Please select a sub service..." + +msgid "Please select a subservice to record..." +msgstr "Please select a subservice to record..." + +msgid "Please select a subservice..." +msgstr "Please select a subservice..." + +msgid "Please select an NFI file and press green key to flash!" +msgstr "Please select an NFI file and press green key to flash!" + +msgid "Please select medium to be scanned" +msgstr "Please select medium to be scanned" + +msgid "Please select medium to use as backup location" +msgstr "Please select medium to use as backup location" + +msgid "Please select tag to filter..." +msgstr "Please select tag to filter..." + +msgid "Please select the movie path..." +msgstr "Please select the movie path..." + +msgid "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." + +msgid "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." + +msgid "Please set up tuner A" +msgstr "Please set up tuner A" + +msgid "Please set up tuner B" +msgstr "Please set up tuner B" + +msgid "Please set up tuner C" +msgstr "Please set up tuner C" + +msgid "Please set up tuner D" +msgstr "Please set up tuner D" + +msgid "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." +msgstr "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." + +msgid "Please use the UP and DOWN keys to select your language. Afterwards press the OK button." +msgstr "Please use the UP and DOWN keys to select your language. Afterwards press the OK button." + +msgid "Please wait" +msgstr "" + +msgid "Please wait (downloading channel list)" +msgstr "Please wait (downloading channel list)" + +msgid "Please wait (downloading softcam)" +msgstr "Please wait (downloading softcam)" + +msgid "Please wait (updating packages)" +msgstr "Please wait (updating packages)" + +msgid "Please wait for activation of your network configuration..." +msgstr "Please wait for activation of your network configuration..." + +msgid "Please wait while scanning is in progress..." +msgstr "Please wait while scanning is in progress..." + +msgid "Please wait while we configure your network..." +msgstr "Please wait while we configure your network..." + +msgid "Please wait while we prepare your network interfaces..." +msgstr "Please wait while we prepare your network interfaces..." + +msgid "Please wait while we test your network..." +msgstr "Please wait while we test your network..." + +msgid "Please wait while your network is restarting..." +msgstr "Please wait while your network is restarting..." + +msgid "Please wait..." +msgstr "Please wait..." + +msgid "Please wait... Loading list..." +msgstr "Please wait... Loading list..." + +msgid "Plugin browser" +msgstr "Plugin browser" + +msgid "Plugin manager activity information" +msgstr "Plugin manager activity information" + +msgid "Plugin manager help" +msgstr "Plugin manager help" + +msgid "Plugins" +msgstr "Plugins" + +msgid "Polarisation" +msgstr "Polarisation" + +msgid "Polarisation:" +msgstr "" + +msgid "Polarization" +msgstr "Polarization" + +msgid "Polish" +msgstr "Polish" + +msgid "Port A" +msgstr "Port A" + +msgid "Port B" +msgstr "Port B" + +msgid "Port C" +msgstr "Port C" + +msgid "Port D" +msgstr "Port D" + +msgid "Portuguese" +msgstr "Portuguese" + +msgid "Position of completed timers in timerlist" +msgstr "Position of completed timers in timerlist" + +msgid "Position stored at index" +msgstr "Position stored at index" + +msgid "Positioner" +msgstr "Positioner" + +msgid "Positioner (selecting satellites)" +msgstr "" + +msgid "Positioner Setup" +msgstr "" + +msgid "Positioner setup" +msgstr "Positioner setup" + +msgid "Power threshold in mA" +msgstr "Power threshold in mA" + +msgid "Predefined transponder" +msgstr "Predefined transponder" + +msgid "Prefer AC3 track" +msgstr "Prefer AC3 track" + +msgid "Prefer AC3+ track" +msgstr "" + +msgid "Prefer audio track stored by service" +msgstr "Prefer audio track stored by service" + +msgid "Prefer graphical DVB subtitles" +msgstr "Prefer graphical DVB subtitles" + +msgid "Prefer subtitles for hearing impaired" +msgstr "Prefer subtitles for hearing impaired" + +msgid "Prefer subtitles stored by service" +msgstr "Prefer subtitles stored by service" + +msgid "Preferred tuner" +msgstr "Preferred tuner" + +msgid "Preferred tuner for recordings" +msgstr "" + +msgid "Prepare another USB stick for image flashing" +msgstr "Prepare another USB stick for image flashing" + +msgid "Preparing... Please wait" +msgstr "Preparing... Please wait" + +msgid "Press '0' to toggle PiP mode" +msgstr "" + +msgid "Press INFO on your remote control for additional information." +msgstr "Press INFO on your remote control for additional information." + +msgid "Press MENU on your remote control for additional options." +msgstr "Press MENU on your remote control for additional options." + +msgid "Press OK on your remote control to continue." +msgstr "Press OK on your remote control to continue." + +msgid "Press OK to activate the selected skin." +msgstr "Press OK to activate the selected skin." + +msgid "Press OK to activate the settings." +msgstr "Press OK to activate the settings." + +msgid "Press OK to edit the settings." +msgstr "Press OK to edit the settings." + +#, python-format +msgid "Press OK to get further details for %s" +msgstr "Press OK to get further details for %s" + +msgid "Press OK to scan" +msgstr "Press OK to scan" + +msgid "Press OK to select a provider." +msgstr "Press OK to select a provider." + +msgid "Press OK to select satellites" +msgstr "" + +msgid "Press OK to select/deselect a CAId." +msgstr "Press OK to select/deselect a CAId." + +msgid "Press OK to start the scan" +msgstr "Press OK to start the scan" + +msgid "Press OK to toggle the selection" +msgstr "" + +msgid "Press OK to toggle the selection." +msgstr "Press OK to toggle the selection." + +msgid "Press yellow to set this interface as default interface." +msgstr "Press yellow to set this interface as default interface." + +msgctxt "button label, 'previous screen'" +msgid "Prev" +msgstr "Prev" + +msgid "Preview" +msgstr "Preview" + +msgid "Preview menu" +msgstr "Preview menu" + +msgid "Preview selected channel" +msgstr "Preview selected channel" + +msgid "Primary DNS" +msgstr "Primary DNS" + +msgid "Priority" +msgstr "Priority" + +msgid "Process" +msgstr "Process" + +msgid "Progress" +msgstr "Progress" + +msgid "Progress bar left" +msgstr "Progress bar left" + +msgid "Progress bar right" +msgstr "Progress bar right" + +msgid "Properties of current title" +msgstr "Properties of current title" + +msgid "Protect services" +msgstr "Protect services" + +msgid "Protect setup" +msgstr "Protect setup" + +msgid "Provider" +msgstr "Provider" + +msgid "Provider to scan" +msgstr "Provider to scan" + +msgid "Providers" +msgstr "Providers" + +msgid "Put TV in standby" +msgstr "Put TV in standby" + +msgid "Put receiver in standby" +msgstr "Put receiver in standby" + +msgid "Python frontend for /tmp/mmi.socket" +msgstr "Python frontend for /tmp/mmi.socket" + +msgid "Quick" +msgstr "Quick" + +msgid "Quick zap" +msgstr "Quick zap" + +msgid "RF output" +msgstr "RF output" + +msgid "RGB" +msgstr "RGB" + +msgid "Radio" +msgstr "Radio" + +msgid "Ram disk" +msgstr "Ram disk" + +msgid "Random" +msgstr "Random" + +#, python-format +msgid "Rating defined by broadcaster - %d" +msgstr "Rating defined by broadcaster - %d" + +msgid "Rating undefined" +msgstr "Rating undefined" + +msgid "Really close without saving settings?" +msgstr "Really close without saving settings?" + +msgid "Really delete done timers?" +msgstr "Really delete done timers?" + +msgid "Really exit the subservices quickzap?" +msgstr "Really exit the subservices quickzap?" + +msgid "Really reboot now?" +msgstr "Really reboot now?" + +msgid "Really restart now?" +msgstr "Really restart now?" + +msgid "Really shutdown now?" +msgstr "Really shutdown now?" + +msgid "Really upgrade the frontprocessor and reboot now?" +msgstr "Really upgrade the frontprocessor and reboot now?" + +msgid "Really upgrade your settop box and reboot now?" +msgstr "Really upgrade your settop box and reboot now?" + +msgid "Reboot" +msgstr "Reboot" + +msgid "Rec" +msgstr "Rec" + +msgid "Reception settings" +msgstr "Reception settings" + +msgid "Record" +msgstr "Record" + +#, python-format +msgid "Record time limited due to conflicting timer %s" +msgstr "Record time limited due to conflicting timer %s" + +msgid "Recorded files..." +msgstr "Recorded files..." + +msgid "Recording" +msgstr "Recording" + +msgid "Recording in progress" +msgstr "Recording in progress" + +msgid "Recording paths" +msgstr "Recording paths" + +msgid "Recording type" +msgstr "Recording type" + +msgid "Recording(s) are in progress or coming up in few seconds!" +msgstr "Recording(s) are in progress or coming up in few seconds!" + +msgid "Recordings" +msgstr "Recordings" + +msgid "Recordings always have priority" +msgstr "Recordings always have priority" + +msgid "Red button..." +msgstr "Red button..." + +msgid "Reenter new PIN" +msgstr "Reenter new PIN" + +msgid "Refresh rate" +msgstr "Refresh rate" + +msgid "Refresh rate selection." +msgstr "Refresh rate selection." + +msgid "Regard deep standby as standby" +msgstr "Regard deep standby as standby" + +msgid "Relative" +msgstr "Relative" + +msgid "Reload" +msgstr "Reload" + +msgid "Reload black-/white lists" +msgstr "Reload black-/white lists" + +msgid "Reloading bouquets and services..." +msgstr "Reloading bouquets and services..." + +msgid "Remember last service in PiP" +msgstr "" + +msgid "Remember service PIN" +msgstr "Remember service PIN" + +msgid "Remember these settings for each folder" +msgstr "Remember these settings for each folder" + +msgid "Reminder, you have chosen to save timeshift file." +msgstr "" + +msgid "Remote control type" +msgstr "Remote control type" + +msgid "Removal has completed." +msgstr "Removal has completed." + +msgid "Remove" +msgstr "Remove" + +msgid "Remove a mark" +msgstr "Remove a mark" + +msgid "Remove a nameserver entry" +msgstr "Remove a nameserver entry" + +msgid "Remove bookmark" +msgstr "Remove bookmark" + +msgid "Remove completed timers after (days)" +msgstr "Remove completed timers after (days)" + +msgid "Remove currently selected title" +msgstr "Remove currently selected title" + +msgid "Remove items from trash can after (days)" +msgstr "Remove items from trash can after (days)" + +msgid "Remove plugins" +msgstr "Remove plugins" + +msgid "Remove title" +msgstr "Remove title" + +msgid "Removing" +msgstr "Removing" + +#, python-format +msgid "Removing directory %s failed. (Maybe not empty.)" +msgstr "Removing directory %s failed. (Maybe not empty.)" + +msgid "Removing partition table" +msgstr "Removing partition table" + +msgid "Rename" +msgstr "Rename" + +msgid "Repeat" +msgstr "" + +msgid "Repeat type" +msgstr "Repeat type" + +msgid "Repeating event currently recording... What do you want to do?" +msgstr "Repeating event currently recording... What do you want to do?" + +msgid "Repeats" +msgstr "Repeats" + +msgid "Require authentication for http streams" +msgstr "" + +msgid "Required medium type:" +msgstr "Required medium type:" + +msgid "Rereading partition table" +msgstr "Rereading partition table" + +msgid "Reserved" +msgstr "Reserved" + +msgid "Reset" +msgstr "Reset" + +msgid "Reset and renumerate title names" +msgstr "Reset and renumerate title names" + +msgid "Reset playback position" +msgstr "Reset playback position" + +msgid "Reset video enhancement settings to system defaults?" +msgstr "Reset video enhancement settings to system defaults?" + +msgid "Reset video enhancement settings to your last configuration?" +msgstr "Reset video enhancement settings to your last configuration?" + +msgid "Resolution" +msgstr "Resolution" + +msgid "Restart" +msgstr "Restart" + +msgid "Restart GUI now?" +msgstr "Restart GUI now?" + +msgid "Restart enigma" +msgstr "Restart enigma" + +msgid "Restart network" +msgstr "Restart network" + +msgid "Restart test" +msgstr "Restart test" + +msgid "Restart your network connection and interfaces.\n" +msgstr "Restart your network connection and interfaces.\n" + +msgid "Restore" +msgstr "Restore" + +msgid "Restore backups" +msgstr "Restore backups" + +msgid "Restore is running..." +msgstr "Restore is running..." + +msgid "Restore system settings" +msgstr "Restore system settings" + +msgid "Restoring..." +msgstr "Restoring..." + +msgid "Resume from last position" +msgstr "Resume from last position" + +#, python-format +msgid "Resume position at %s" +msgstr "Resume position at %s" + +#. TRANSLATORS: The string "Resuming playback" flashes for a moment +#. TRANSLATORS: at the start of a movie, when the user has selected +#. TRANSLATORS: "Resume from last position" as start behavior. +#. TRANSLATORS: The purpose is to notify the user that the movie starts +#. TRANSLATORS: in the middle somewhere and not from the beginning. +#. TRANSLATORS: (Some translators seem to have interpreted it as a +#. TRANSLATORS: question or a choice, but it is a statement.) +msgid "Resuming playback" +msgstr "Resuming playback" + +msgid "Return to movie list" +msgstr "Return to movie list" + +msgid "Return to previous service" +msgstr "Return to previous service" + +msgid "Reverse bouquet buttons" +msgstr "" + +msgid "Reverse list" +msgstr "" + +msgid "Rewind speeds" +msgstr "Rewind speeds" + +msgid "Rewrap teletext subtitles" +msgstr "Rewrap teletext subtitles" + +msgid "Right" +msgstr "Right" + +msgid "Right from servicename" +msgstr "Right from servicename" + +msgid "Roll-off" +msgstr "Roll-off" + +msgid "Romanian" +msgstr "Romanian" + +msgid "Root directory" +msgstr "Root directory" + +msgid "Rotor step position:" +msgstr "Rotor step position:" + +msgid "Rotor turning speed" +msgstr "Rotor turning speed" + +msgid "Round start time on" +msgstr "Round start time on" + +msgid "Russian" +msgstr "Russian" + +msgid "S-Video" +msgstr "S-Video" + +msgid "SID" +msgstr "SID" + +msgid "SINGLE LAYER DVD" +msgstr "SINGLE LAYER DVD" + +msgid "SNR" +msgstr "SNR" + +msgid "SNR:" +msgstr "SNR:" + +msgid "SSID:" +msgstr "SSID:" + +msgid "Same resolution as skin" +msgstr "" + +msgid "Sat" +msgstr "Sat" + +msgid "Satellite" +msgstr "Satellite" + +msgid "Satellite dish setup" +msgstr "Satellite dish setup" + +msgid "Satellite equipment" +msgstr "Satellite equipment" + +msgid "Satellite equipment setup" +msgstr "Satellite equipment setup" + +msgid "Satellite longitude:" +msgstr "Satellite longitude:" + +msgid "Satellites" +msgstr "Satellites" + +msgid "Satfinder" +msgstr "Satfinder" + +msgid "Sats" +msgstr "Sats" + +msgid "Saturation" +msgstr "Saturation" + +msgid "Saturday" +msgstr "Saturday" + +msgid "Save" +msgstr "Save" + +msgid "Save playlist" +msgstr "Save playlist" + +msgid "Save timeshift file" +msgstr "" + +msgid "Save timeshift file in movie directory" +msgstr "" + +msgid "Scaler sharpness" +msgstr "Scaler sharpness" + +msgid "Scaling mode" +msgstr "Scaling mode" + +msgid "Scan" +msgstr "" + +msgid "Scan " +msgstr "Scan " + +#. TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' +#, python-format +msgid "Scan %s" +msgstr "Scan %s" + +#. TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' +#, python-format +msgid "Scan %s band" +msgstr "Scan %s band" + +msgid "Scan additional SR" +msgstr "Scan additional SR" + +msgid "Scan files..." +msgstr "Scan files..." + +msgid "Scan wireless networks" +msgstr "Scan wireless networks" + +msgid "Scan your network for wireless access points and connect to them using your selected wireless device.\n" +msgstr "Scan your network for wireless access points and connect to them using your selected wireless device.\n" + +#, python-format +msgid "Scanning %s..." +msgstr "Scanning %s..." + +#. TRANSLATORS: The stb is performing a channel scan, progress percentage is printed in '%d' (and '%%' will show a single '%' symbol) +#, fuzzy, python-format +msgid "Scanning - %d%% completed" +msgid_plural "Scanning - %d%% completed" +msgstr[0] "Scanning completed, %d channels found" +msgstr[1] "Scanning completed, %d channels found" + +#, fuzzy, python-format +msgid "Scanning completed, %d channel found" +msgid_plural "Scanning completed, %d channels found" +msgstr[0] "Scanning completed, %d channels found" +msgstr[1] "Scanning completed, %d channels found" + +msgid "Scanning failed!" +msgstr "Scanning failed!" + +msgid "Scanning..." +msgstr "Scanning..." + +msgid "Scans default lamedbs sorted by satellite with a connected dish positioner" +msgstr "Scans default lamedbs sorted by satellite with a connected dish positioner" + +msgid "Search east" +msgstr "Search east" + +msgid "Search west" +msgstr "Search west" + +msgid "Searching" +msgstr "Searching" + +msgid "Searching east ..." +msgstr "Searching east ..." + +msgid "Searching for available updates. Please wait..." +msgstr "Searching for available updates. Please wait..." + +msgid "Searching for new installed or removed packages. Please wait..." +msgstr "Searching for new installed or removed packages. Please wait..." + +msgid "Searching west ..." +msgstr "Searching west ..." + +msgid "Second cable of motorized LNB" +msgstr "" + +msgid "Secondary DNS" +msgstr "Secondary DNS" + +msgid "Seek" +msgstr "Seek" + +msgid "Seek backward" +msgstr "Seek backward" + +msgid "Seek backward (enter time)" +msgstr "Seek backward (enter time)" + +msgid "Seek forward" +msgstr "Seek forward" + +msgid "Seek forward (enter time)" +msgstr "Seek forward (enter time)" + +msgid "Select" +msgstr "Select" + +msgid "Select CAId" +msgstr "Select CAId" + +msgid "Select HDD" +msgstr "Select HDD" + +msgid "Select a bouquet" +msgstr "Select a bouquet" + +msgid "Select a movie" +msgstr "Select a movie" + +msgid "Select a network adapter" +msgstr "Select a network adapter" + +msgid "Select a skin" +msgstr "Select a skin" + +msgid "Select a tuner" +msgstr "Select a tuner" + +msgid "Select a wireless network" +msgstr "Select a wireless network" + +msgid "Select action" +msgstr "" + +#, python-format +msgid "Select action for timer %s:" +msgstr "" + +msgid "Select all" +msgstr "" + +msgid "Select an image to be downloaded" +msgstr "Select an image to be downloaded" + +msgid "Select audio track" +msgstr "Select audio track" + +msgid "Select backup files" +msgstr "Select backup files" + +msgid "Select backup location" +msgstr "Select backup location" + +msgid "Select channel to record from" +msgstr "Select channel to record from" + +msgid "Select copy destination for:" +msgstr "Select copy destination for:" + +msgid "Select default EPG type..." +msgstr "Select default EPG type..." + +msgid "Select desired image from feed list" +msgstr "Select desired image from feed list" + +msgid "Select destination for:" +msgstr "Select destination for:" + +msgid "Select files for backup." +msgstr "Select files for backup." + +msgid "Select files/folders to backup" +msgstr "Select files/folders to backup" + +msgid "Select input device" +msgstr "Select input device" + +msgid "Select input device." +msgstr "Select input device." + +msgid "Select interface" +msgstr "Select interface" + +msgid "Select location" +msgstr "Select location" + +msgid "Select movie" +msgstr "Select movie" + +msgid "Select provider to add..." +msgstr "Select provider to add..." + +msgid "Select refresh rate" +msgstr "Select refresh rate" + +msgid "Select satellites" +msgstr "" + +msgid "Select service to add..." +msgstr "Select service to add..." + +msgid "Select sort method:" +msgstr "" + +msgid "Select target folder" +msgstr "Select target folder" + +msgid "Select the movie path" +msgstr "Select the movie path" + +msgid "Select upgrade source" +msgstr "Select upgrade source" + +msgid "Select upgrade source to edit." +msgstr "Select upgrade source to edit." + +msgid "Select video input with up/down buttons" +msgstr "Select video input with up/down buttons" + +msgid "Select video mode" +msgstr "Select video mode" + +msgid "Select wireless network" +msgstr "Select wireless network" + +msgid "Select your provider, and press OK to start the scan" +msgstr "Select your provider, and press OK to start the scan" + +msgid "Selecting satellites 1 (USALS)" +msgstr "" + +msgid "Selecting satellites 2 (USALS)" +msgstr "" + +msgid "Send DiSEqC only on satellite change" +msgstr "Send DiSEqC only on satellite change" + +msgid "Separate titles with a main menu" +msgstr "Separate titles with a main menu" + +msgid "Sequence repeat" +msgstr "Sequence repeat" + +msgid "Serbian" +msgstr "Serbian" + +msgid "Service" +msgstr "Service" + +msgid "Service has been added to the favourites." +msgstr "Service has been added to the favourites." + +msgid "Service has been added to the selected bouquet." +msgstr "Service has been added to the selected bouquet." + +msgid "Service info" +msgstr "Service info" + +msgid "" +"Service invalid!\n" +"(Timeout reading PMT)" +msgstr "" +"Service invalid!\n" +"(Timeout reading PMT)" + +msgid "Service name" +msgstr "Service name" + +msgid "" +"Service not found!\n" +"(SID not found in PAT)" +msgstr "" +"Service not found!\n" +"(SID not found in PAT)" + +msgid "Service reference" +msgstr "Service reference" + +msgid "Service scan" +msgstr "Service scan" + +msgid "Service searching" +msgstr "Service searching" + +msgid "Service title mode" +msgstr "Service title mode" + +msgid "" +"Service unavailable!\n" +"Check tuner configuration!" +msgstr "" +"Service unavailable!\n" +"Check tuner configuration!" + +msgid "Services" +msgstr "Services" + +msgid "Set default" +msgstr "" + +msgid "Set end time" +msgstr "Set end time" + +msgid "Set fixed" +msgstr "Set fixed" + +msgid "Set fps for external subtitles" +msgstr "Set fps for external subtitles" + +msgid "Set interface as default Interface" +msgstr "Set interface as default Interface" + +msgid "Set limits" +msgstr "Set limits" + +msgid "Set the type of the progress indication in the channel selection screen." +msgstr "Set the type of the progress indication in the channel selection screen." + +msgid "Set time window to 1 hour" +msgstr "Set time window to 1 hour" + +msgid "Set time window to 2 hours" +msgstr "Set time window to 2 hours" + +msgid "Set time window to 3 hours" +msgstr "Set time window to 3 hours" + +msgid "Set time window to 4 hours" +msgstr "Set time window to 4 hours" + +msgid "Set time window to 5 hours" +msgstr "Set time window to 5 hours" + +msgid "Set time window to 6 hours" +msgstr "" + +msgid "Set voltage and 22KHz" +msgstr "Set voltage and 22KHz" + +msgid "Settings" +msgstr "Settings" + +msgid "Setup" +msgstr "Setup" + +msgid "Setup menu" +msgstr "Setup menu" + +msgid "Setup mode" +msgstr "Setup mode" + +msgid "Setup your positioner" +msgstr "Setup your positioner" + +msgid "Setup your satellite equipment" +msgstr "Setup your satellite equipment" + +#, python-format +msgid "Shall the USB stick wizard proceed and program the image file %s into flash memory?" +msgstr "Shall the USB stick wizard proceed and program the image file %s into flash memory?" + +msgid "Sharpness" +msgstr "Sharpness" + +msgid "Short filenames" +msgstr "Short filenames" + +msgid "Show EIT now/next in infobar" +msgstr "Show EIT now/next in infobar" + +msgid "Show EPG for current channel..." +msgstr "Show EPG for current channel..." + +msgid "Show EPG..." +msgstr "Show EPG..." + +msgid "Show Games show" +msgstr "Show Games show" + +msgid "Show SNR percentage instead of dB value" +msgstr "Show SNR percentage instead of dB value" + +msgid "Show VCR scart on main menu" +msgstr "" + +msgid "Show WLAN status" +msgstr "Show WLAN status" + +msgid "Show animation while busy" +msgstr "Show animation while busy" + +msgid "Show background in radio mode" +msgstr "Show background in radio mode" + +msgid "Show bouquet selection menu" +msgstr "Show bouquet selection menu" + +msgid "Show busy indicator when the system is busy." +msgstr "Show busy indicator when the system is busy." + +msgid "Show channel numbers in channel selection" +msgstr "Show channel numbers in channel selection" + +msgid "Show columns" +msgstr "" + +msgid "Show crypto icons" +msgstr "" + +msgid "Show crypto info in infobar" +msgstr "Show crypto info in infobar" + +msgid "Show detailed event info" +msgstr "Show detailed event info" + +msgid "Show event details" +msgstr "Show event details" + +msgid "Show event-progress in channel selection" +msgstr "Show event-progress in channel selection" + +msgid "Show extended description" +msgstr "Show extended description" + +msgid "Show extensions..." +msgstr "Show extensions..." + +msgid "Show icon for new/unseen items" +msgstr "Show icon for new/unseen items" + +msgid "Show in extensions menu" +msgstr "" + +msgid "Show info" +msgstr "Show info" + +msgid "Show info line" +msgstr "Show info line" + +msgid "Show infobar on channel change" +msgstr "Show infobar on channel change" + +msgid "Show infobar on event change" +msgstr "Show infobar on event change" + +msgid "Show infobar on skip forward/backward" +msgstr "Show infobar on skip forward/backward" + +msgid "Show latest commits on sourceforge" +msgstr "" + +msgid "Show message when recording starts" +msgstr "Show message when recording starts" + +msgid "Show movie lengths in movielist" +msgstr "Show movie lengths in movielist" + +msgid "Show multi channel EPG" +msgstr "" + +msgid "Show picons in channel list" +msgstr "" + +msgid "Show positioner movement" +msgstr "Show positioner movement" + +msgid "Show screensaver" +msgstr "Show screensaver" + +msgid "Show second infobar" +msgstr "Show second infobar" + +msgid "Show service type icons" +msgstr "Show service type icons" + +msgid "Show services beginning with" +msgstr "Show services beginning with" + +msgid "Show shutdown menu" +msgstr "Show shutdown menu" + +msgid "Show single service EPG" +msgstr "" + +msgid "Show status icons in Movielist" +msgstr "" + +msgid "Show status icons in movie list" +msgstr "Show status icons in movie list" + +msgid "Show status icons in movielist" +msgstr "Show status icons in movielist" + +msgid "Show tag menu" +msgstr "Show tag menu" + +msgid "Show the radio player..." +msgstr "Show the radio player..." + +msgid "Show the tv player..." +msgstr "Show the tv player..." + +msgid "Show warning when timeshift is stopped" +msgstr "Show warning when timeshift is stopped" + +msgid "Shows the state of your wireless LAN connection.\n" +msgstr "Shows the state of your wireless LAN connection.\n" + +msgid "Shuffle playlist" +msgstr "Shuffle playlist" + +msgid "Shutdown" +msgstr "Shutdown" + +msgid "Shutdown when in Standby" +msgstr "" + +msgid "Side by side" +msgstr "Side by side" + +msgid "Signal OK, proceeding" +msgstr "Signal OK, proceeding" + +msgid "Signal quality" +msgstr "Signal quality" + +msgid "Signal strength:" +msgstr "Signal strength:" + +msgid "Signal: " +msgstr "Signal: " + +msgid "Similar" +msgstr "Similar" + +msgid "Similar broadcasts:" +msgstr "Similar broadcasts:" + +msgid "Simple" +msgstr "Simple" + +msgid "Simple titleset (compatibility for legacy players)" +msgstr "Simple titleset (compatibility for legacy players)" + +msgid "Single" +msgstr "Single" + +msgid "Single EPG" +msgstr "Single EPG" + +msgid "Single satellite" +msgstr "Single satellite" + +msgid "Single step (GOP)" +msgstr "Single step (GOP)" + +msgid "Single transponder" +msgstr "Single transponder" + +msgid "Site latitude" +msgstr "Site latitude" + +msgid "Site longitude" +msgstr "Site longitude" + +msgid "Skin" +msgstr "Skin" + +msgid "Skins" +msgstr "Skins" + +msgid "Skip empty services" +msgstr "Skip empty services" + +msgid "Skip internet connection check (disables automatic package installation)" +msgstr "Skip internet connection check (disables automatic package installation)" + +msgid "Sleep timer" +msgstr "Sleep timer" + +msgid "SleepTimer Configuration" +msgstr "" + +msgid "Sleeptimer" +msgstr "" + +msgid "Slide picture in loop" +msgstr "Slide picture in loop" + +msgid "Slide show interval (sec.)" +msgstr "Slide show interval (sec.)" + +#, python-format +msgid "Slot %d" +msgstr "Slot %d" + +msgid "Slovak" +msgstr "Slovak" + +msgid "Slovenian" +msgstr "Slovenian" + +msgid "Slow" +msgstr "Slow" + +msgid "Slow motion speeds" +msgstr "Slow motion speeds" + +msgid "Small progress" +msgstr "Small progress" + +msgid "Social/Political/Economics" +msgstr "Social/Political/Economics" + +msgid "SoftCam / CI" +msgstr "SoftCam / CI" + +msgid "Softcam type" +msgstr "Softcam type" + +msgid "Software" +msgstr "Software" + +msgid "Software management" +msgstr "Software management" + +msgid "Software manager setup" +msgstr "Software manager setup" + +msgid "Software restore" +msgstr "Software restore" + +msgid "Software update" +msgstr "Software update" + +msgid "Softwaremanager information" +msgstr "Softwaremanager information" + +msgid "Some plugins are not available:\n" +msgstr "Some plugins are not available:\n" + +#, python-format +msgid "Sorry, %s has not been installed!" +msgstr "Sorry, %s has not been installed!" + +msgid "Sorry, deleting directories can (for now) only be done through the trash can." +msgstr "Sorry, deleting directories can (for now) only be done through the trash can." + +msgid "Sorry, no backups found!" +msgstr "Sorry, no backups found!" + +msgid "Sorry, no details available!" +msgstr "Sorry, no details available!" + +msgid "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." +msgstr "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." + +msgid "Sort" +msgstr "Sort" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort A-Z" +msgstr "Sort A-Z" + +msgid "Sort by" +msgstr "" + +msgid "Sort list:" +msgstr "" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort time" +msgstr "Sort time" + +msgid "Sound" +msgstr "Sound" + +msgid "Sound carrier" +msgstr "Sound carrier" + +msgid "Source request" +msgstr "Source request" + +msgid "South" +msgstr "South" + +msgid "Spanish" +msgstr "Spanish" + +msgid "Specify the end time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the end time until the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify the start time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the start time when the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify timeframe to ignore inactivity sleeptimer" +msgstr "" + +msgid "Specify timeframe to ignore the shutdown in standby" +msgstr "" + +msgid "Split preview mode" +msgstr "Split preview mode" + +msgid "Splitscreen" +msgstr "" + +msgid "Sports" +msgstr "Sports" + +msgid "Standard" +msgstr "Standard" + +msgid "Standart list" +msgstr "" + +msgid "Standby" +msgstr "Standby" + +msgid "Standby / restart" +msgstr "Standby / restart" + +msgid "Standby after current event" +msgstr "" + +#, python-format +msgid "Standby fan %d PWM" +msgstr "Standby fan %d PWM" + +#, python-format +msgid "Standby fan %d voltage" +msgstr "Standby fan %d voltage" + +msgid "Standby in " +msgstr "" + +msgid "StandbyLED" +msgstr "" + +msgid "Start from the beginning" +msgstr "Start from the beginning" + +msgid "Start offline decode" +msgstr "Start offline decode" + +msgid "Start recording?" +msgstr "Start recording?" + +msgid "Start test" +msgstr "Start test" + +msgid "Start time" +msgstr "Start time" + +msgid "Start time to ignore inactivity sleeptimer" +msgstr "" + +msgid "Start time to ignore shutdown in standby" +msgstr "" + +msgid "Start timeshift" +msgstr "Start timeshift" + +msgid "Start with list screen" +msgstr "Start with list screen" + +msgid "Starting on" +msgstr "Starting on" + +msgid "Startup the set top box in standby" +msgstr "" + +msgid "Startup to Standby" +msgstr "" + +msgid "Step east" +msgstr "Step east" + +msgid "Step west" +msgstr "Step west" + +msgid "Stepped east" +msgstr "Stepped east" + +msgid "Stepped west" +msgstr "Stepped west" + +msgid "Stop" +msgstr "Stop" + +msgid "Stop PiP" +msgstr "Stop PiP" + +msgid "Stop current event and disable coming events" +msgstr "Stop current event and disable coming events" + +msgid "Stop current event but not coming events" +msgstr "Stop current event but not coming events" + +msgid "Stop entry" +msgstr "Stop entry" + +msgid "Stop playing this movie?" +msgstr "Stop playing this movie?" + +msgid "Stop recording" +msgstr "Stop recording" + +msgid "Stop recording and delete" +msgstr "Stop recording and delete" + +msgid "Stop service on return to movie list" +msgstr "" + +msgid "Stop test" +msgstr "Stop test" + +msgid "Stop testing plane after # failed transponders" +msgstr "Stop testing plane after # failed transponders" + +msgid "Stop testing plane after # successful transponders" +msgstr "Stop testing plane after # successful transponders" + +msgid "Stop timer recording" +msgstr "" + +msgid "Stop timeshift" +msgstr "Stop timeshift" + +msgid "Stop timeshift?" +msgstr "Stop timeshift?" + +msgid "Stopped" +msgstr "Stopped" + +msgid "Store at index" +msgstr "Store at index" + +msgid "Store position" +msgstr "Store position" + +msgid "Stored position" +msgstr "Stored position" + +msgid "Stream" +msgstr "Stream" + +msgid "Stream request" +msgstr "Stream request" + +msgid "Strongest position" +msgstr "Strongest position" + +msgid "Subservice list..." +msgstr "Subservice list..." + +msgid "Subservices" +msgstr "Subservices" + +msgid "Subtitle Quickmenu" +msgstr "" + +msgid "Subtitle alignment" +msgstr "Subtitle alignment" + +msgid "Subtitle border width" +msgstr "Subtitle border width" + +msgid "Subtitle delay when timing is bad" +msgstr "Subtitle delay when timing is bad" + +msgid "Subtitle delay when timing lacks" +msgstr "Subtitle delay when timing lacks" + +msgid "Subtitle font size" +msgstr "Subtitle font size" + +msgid "Subtitle language selection 1" +msgstr "Subtitle language selection 1" + +msgid "Subtitle language selection 2" +msgstr "Subtitle language selection 2" + +msgid "Subtitle language selection 3" +msgstr "Subtitle language selection 3" + +msgid "Subtitle language selection 4" +msgstr "Subtitle language selection 4" + +msgid "Subtitle position" +msgstr "Subtitle position" + +msgid "Subtitle selection" +msgstr "Subtitle selection" + +msgid "Subtitle selection..." +msgstr "Subtitle selection..." + +msgid "Subtitle settings" +msgstr "Subtitle settings" + +msgid "Subtitles" +msgstr "Subtitles" + +msgid "Sun" +msgstr "Sun" + +msgid "Sunday" +msgstr "Sunday" + +msgid "Swap PiP and main picture" +msgstr "Swap PiP and main picture" + +msgid "Swap services" +msgstr "Swap services" + +msgid "Swedish" +msgstr "Swedish" + +msgid "Switch TV to correct input" +msgstr "Switch TV to correct input" + +msgid "Switch between filelist/playlist" +msgstr "" + +msgid "Switch between normal mode and list mode" +msgstr "Switch between normal mode and list mode" + +msgid "Switch to HDMI in mode" +msgstr "" + +msgid "Switch to filelist" +msgstr "Switch to filelist" + +msgid "Switch to next channel" +msgstr "" + +msgid "Switch to next channel in history" +msgstr "Switch to next channel in history" + +msgid "Switch to next sub service" +msgstr "Switch to next sub service" + +msgid "Switch to playlist" +msgstr "Switch to playlist" + +msgid "Switch to previous channel" +msgstr "Switch to previous channel" + +msgid "Switch to previous channel in history" +msgstr "Switch to previous channel in history" + +msgid "Switch to previous sub service" +msgstr "Switch to previous sub service" + +msgid "Switchable tuner types:" +msgstr "Switchable tuner types:" + +msgid "Symbol rate" +msgstr "Symbol rate" + +msgid "Symbol rate:" +msgstr "" + +msgid "Sync failure moving back to origin !" +msgstr "Sync failure moving back to origin !" + +msgid "System" +msgstr "System" + +#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) +msgid "TRANSLATOR_INFO" +msgstr "TRANSLATOR_INFO" + +msgid "TS file is too large for ISO9660 level 1!" +msgstr "TS file is too large for ISO9660 level 1!" + +msgid "TSID" +msgstr "TSID" + +msgid "TV physical address report" +msgstr "TV physical address report" + +msgid "TXT PID" +msgstr "TXT PID" + +msgid "Table of contents for collection" +msgstr "Table of contents for collection" + +msgid "Tags" +msgstr "Tags" + +msgid "Teletext subtitle color" +msgstr "Teletext subtitle color" + +msgid "Temperature and fan control" +msgstr "Temperature and fan control" + +msgid "Terrestrial" +msgstr "Terrestrial" + +msgid "Terrestrial provider" +msgstr "Terrestrial provider" + +msgid "Test DiSEqC settings" +msgstr "Test DiSEqC settings" + +msgid "Test mode" +msgstr "Test mode" + +msgid "Test the network configuration of your receiver.\n" +msgstr "Test the network configuration of your receiver.\n" + +msgid "Test type" +msgstr "Test type" + +msgid "Text color" +msgstr "Text color" + +msgid "Thai" +msgstr "Thai" + +msgid "" +"Thank you for using the wizard.\n" +"Please press OK to continue." +msgstr "" +"Thank you for using the wizard.\n" +"Please press OK to continue." + +msgid "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." +msgstr "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." + +msgid "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?" +msgstr "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?" + +msgid "The PIN code has been changed successfully." +msgstr "The PIN code has been changed successfully." + +msgid "The PIN codes you entered are different." +msgstr "The PIN codes you entered are different." + +msgid "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" +msgstr "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" + +msgid "The backup failed. Please choose a different backup location." +msgstr "The backup failed. Please choose a different backup location." + +#, python-format +msgid "" +"The current beta image might not be stable.\n" +"For more information see %s." +msgstr "" +"The current beta image might not be stable.\n" +"For more information see %s." + +#, python-format +msgid "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." +msgstr "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." + +#, python-format +msgid "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" +msgstr "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" + +msgid "The following files were found..." +msgstr "The following files were found..." + +msgid "The md5sum validation failed, the file may be corrupted!" +msgstr "The md5sum validation failed, the file may be corrupted!" + +msgid "" +"The network wizard extension is not installed!\n" +"Please install it." +msgstr "" +"The network wizard extension is not installed!\n" +"Please install it." + +#, python-format +msgid "The path %s already exists." +msgstr "The path %s already exists." + +msgid "The pin code you entered is wrong." +msgstr "The pin code you entered is wrong." + +#, python-format +msgid "The results have been written to %s." +msgstr "The results have been written to %s." + +msgid "The sleep timer has been activated." +msgstr "The sleep timer has been activated." + +msgid "The sleep timer has been disabled." +msgstr "The sleep timer has been disabled." + +msgid "" +"The software management extension is not installed!\n" +"Please install it." +msgstr "" +"The software management extension is not installed!\n" +"Please install it." + +#, python-format +msgid "The status of the current beta image could not be checked because %s can not be reached." +msgstr "The status of the current beta image could not be checked because %s can not be reached." + +msgid "The timer file (timers.xml) is corrupt and could not be loaded." +msgstr "The timer file (timers.xml) is corrupt and could not be loaded." + +msgid "The user interface of your receiver is restarting" +msgstr "The user interface of your receiver is restarting" + +msgid "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" +msgstr "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." +msgstr "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it." +msgstr "" +"The wireless LAN plugin is not installed!\n" +"Please install it." + +msgid "The wizard can backup your current settings. Do you want to do a backup now?" +msgstr "The wizard can backup your current settings. Do you want to do a backup now?" + +#, python-format +msgid "The wizard found a configuration backup. Do you want to restore your old settings from %s?" +msgstr "The wizard found a configuration backup. Do you want to restore your old settings from %s?" + +msgid "The wizard is finished now." +msgstr "The wizard is finished now." + +msgid "There are at least " +msgstr "There are at least " + +#, python-format +msgid "There are at least %s updates available." +msgstr "There are at least %s updates available." + +msgid "There are currently no outstanding actions." +msgstr "There are currently no outstanding actions." + +msgid "There are no updates available." +msgstr "There are no updates available." + +msgid "There is no signal to lock on !" +msgstr "There is no signal to lock on !" + +msgid "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" +msgstr "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" + +msgid "This DVD RW medium is already formatted - reformatting will erase all content on the disc." +msgstr "This DVD RW medium is already formatted - reformatting will erase all content on the disc." + +msgid "" +"This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!" +msgstr "" +"This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!" + +msgid "This plugin is installed." +msgstr "This plugin is installed." + +msgid "This plugin is not installed." +msgstr "This plugin is not installed." + +msgid "This plugin will be installed." +msgstr "This plugin will be installed." + +msgid "This plugin will be removed." +msgstr "This plugin will be removed." + +#, python-format +msgid "This receiver cannot decode %s streams!" +msgstr "This receiver cannot decode %s streams!" + +msgid "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration" +msgstr "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration" + +msgid "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" +msgstr "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" + +msgid "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" +msgstr "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" + +msgid "" +"This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." +msgstr "" +"This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." + +msgid "This test detects your configured LAN adapter." +msgstr "This test detects your configured LAN adapter." + +msgid "" +"This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\n" +"Are you sure?" +msgstr "" +"This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\n" +"Are you sure?" + +msgid "Three" +msgstr "Three" + +msgid "Threshold" +msgstr "Threshold" + +msgid "Thu" +msgstr "Thu" + +msgid "Thumbnails" +msgstr "Thumbnails" + +msgid "Thursday" +msgstr "Thursday" + +msgid "Time" +msgstr "Time" + +msgid "Time scale" +msgstr "Time scale" + +msgid "Timer" +msgstr "Timer" + +msgid "Timer Overview" +msgstr "" + +msgid "Timer edit" +msgstr "Timer edit" + +msgid "Timer editor" +msgstr "Timer editor" + +msgid "Timer entry" +msgstr "Timer entry" + +msgid "Timer log" +msgstr "Timer log" + +msgid "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" +msgstr "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" + +msgid "Timer overview" +msgstr "Timer overview" + +msgid "Timer recording location" +msgstr "Timer recording location" + +msgid "Timer sanity error" +msgstr "Timer sanity error" + +msgid "Timer selection" +msgstr "Timer selection" + +msgid "Timer selection..." +msgstr "" + +msgid "Timer type" +msgstr "Timer type" + +msgid "Timeshift" +msgstr "Timeshift" + +msgid "Timeshift Live" +msgstr "" + +msgid "Timeshift location" +msgstr "Timeshift location" + +msgid "Timeshift not possible!" +msgstr "Timeshift not possible!" + +msgid "Timezone" +msgstr "Timezone" + +msgid "Title" +msgstr "Title" + +msgid "Title properties" +msgstr "Title properties" + +msgid "Titleset mode" +msgstr "Titleset mode" + +msgid "To audio selection" +msgstr "To audio selection" + +msgid "To subtitle selection" +msgstr "To subtitle selection" + +msgid "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." +msgstr "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." + +msgid "Today" +msgstr "Today" + +msgid "Toggle a cut mark at the current position" +msgstr "Toggle a cut mark at the current position" + +msgid "Tone amplitude" +msgstr "Tone amplitude" + +msgid "Tone mode" +msgstr "Tone mode" + +msgid "Toneburst" +msgstr "Toneburst" + +msgid "Toneburst A/B" +msgstr "Toneburst A/B" + +msgid "Top and bottom" +msgstr "Top and bottom" + +msgid "Track" +msgstr "Track" + +msgid "Translation" +msgstr "Translation" + +msgid "Translation:" +msgstr "Translation:" + +msgid "Translations" +msgstr "Translations" + +msgid "Transmission mode" +msgstr "Transmission mode" + +msgid "Transponder" +msgstr "Transponder" + +msgid "Transponder type" +msgstr "Transponder type" + +msgid "Trash can" +msgstr "Trash can" + +msgid "Tries left:" +msgstr "Tries left:" + +msgid "Try to find used transponders in cable network.. please wait..." +msgstr "Try to find used transponders in cable network.. please wait..." + +msgid "Trying to download a new packetlist. Please wait..." +msgstr "Trying to download a new packetlist. Please wait..." + +msgid "Tue" +msgstr "Tue" + +msgid "Tuesday" +msgstr "Tuesday" + +msgid "Tune" +msgstr "Tune" + +msgid "Tune and focus" +msgstr "Tune and focus" + +msgid "Tune failed!" +msgstr "Tune failed!" + +msgid "Tuner" +msgstr "Tuner" + +msgid "Tuner configuration" +msgstr "Tuner configuration" + +msgid "Tuner is not supported" +msgstr "" + +msgid "Tuner slot" +msgstr "Tuner slot" + +msgid "Tuner status" +msgstr "Tuner status" + +#, python-format +msgid "Tuner status %s" +msgstr "Tuner status %s" + +msgid "Tuner type" +msgstr "Tuner type" + +msgid "Turkish" +msgstr "Turkish" + +msgid "Turn on the power LED during standby." +msgstr "" + +msgid "Turning step size" +msgstr "" + +msgid "Two" +msgstr "Two" + +msgid "Type" +msgstr "Type" + +msgid "Type of scan" +msgstr "Type of scan" + +msgid "USALS" +msgstr "USALS" + +msgid "USALS calibration" +msgstr "USALS calibration" + +msgid "USB stick" +msgstr "USB stick" + +msgid "USB stick wizard" +msgstr "USB stick wizard" + +msgid "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" + +msgid "Undo install" +msgstr "Undo install" + +msgid "Undo uninstall" +msgstr "Undo uninstall" + +msgid "Unencrypted" +msgstr "Unencrypted" + +msgid "UnhandledKey" +msgstr "UnhandledKey" + +msgid "Unicable" +msgstr "Unicable" + +msgid "Unicable LNB" +msgstr "Unicable LNB" + +msgid "Unicable Martix" +msgstr "Unicable Martix" + +msgid "Uninstall" +msgstr "Uninstall" + +msgid "Universal LNB" +msgstr "Universal LNB" + +msgid "Unknown" +msgstr "Unknown" + +msgid "Unmount" +msgstr "Unmount" + +msgid "Unsupported" +msgstr "Unsupported" + +msgid "Update" +msgstr "Update" + +msgid "Update and ask to reboot" +msgstr "Update and ask to reboot" + +msgid "Update and reboot (recommended)" +msgstr "Update and reboot (recommended)" + +msgid "Update channel list only" +msgstr "Update channel list only" + +#, python-format +msgid "Update completed, %d package was installed." +msgid_plural "Update completed, %d packages were installed." +msgstr[0] "Update completed, %d package was installed." +msgstr[1] "Update completed, %d packages were installed." + +msgid "Update completed. Do you want to reboot your receiver?" +msgstr "Update completed. Do you want to reboot your receiver?" + +msgid "Update failed. Your receiver does not have a working internet connection." +msgstr "Update failed. Your receiver does not have a working internet connection." + +msgid "Update has completed." +msgstr "Update has completed." + +msgid "Updatefeed not available." +msgstr "Updatefeed not available." + +msgid "Updating software catalog" +msgstr "Updating software catalog" + +msgid "Upgrading" +msgstr "Upgrading" + +msgid "Use" +msgstr "Use" + +msgid "Use DHCP" +msgstr "Use DHCP" + +msgid "Use EIT EPG information when it is available." +msgstr "Use EIT EPG information when it is available." + +msgid "Use FreeSat EPG information when it is available." +msgstr "Use FreeSat EPG information when it is available." + +msgid "Use MHW EPG information when it is available." +msgstr "Use MHW EPG information when it is available." + +msgid "Use Netmed EPG information when it is available." +msgstr "Use Netmed EPG information when it is available." + +msgid "Use TV remote control" +msgstr "Use TV remote control" + +msgid "Use USALS for this sat" +msgstr "Use USALS for this sat" + +msgid "Use ViaSat EPG information when it is available." +msgstr "Use ViaSat EPG information when it is available." + +msgid "Use Virgin EPG information when it is available." +msgstr "" + +msgid "Use a gateway" +msgstr "Use a gateway" + +msgid "Use fastscan channel names" +msgstr "Use fastscan channel names" + +msgid "Use fastscan channel numbering" +msgstr "Use fastscan channel numbering" + +msgid "Use frequency or channel" +msgstr "" + +msgid "Use individual settings for each directory" +msgstr "" + +msgid "Use interface" +msgstr "Use interface" + +msgid "Use official channel numbering" +msgstr "Use official channel numbering" + +msgid "Use original DVB subtitle position" +msgstr "Use original DVB subtitle position" + +msgid "Use original teletext position" +msgstr "Use original teletext position" + +msgid "Use power measurement" +msgstr "Use power measurement" + +msgid "Use the network wizard to configure selected network adapter" +msgstr "Use the network wizard to configure selected network adapter" + +msgid "Use the network wizard to configure your network\n" +msgstr "Use the network wizard to configure your network\n" + +msgid "Use the up/down keys on your remote control to select an option. After that, press OK." +msgstr "Use the up/down keys on your remote control to select an option. After that, press OK." + +msgid "Use the wizard to set up basic features" +msgstr "Use the wizard to set up basic features" + +msgid "Use these input device settings?" +msgstr "Use these input device settings?" + +msgid "Use these settings?" +msgstr "Use these settings?" + +msgid "Use this video enhancement settings?" +msgstr "Use this video enhancement settings?" + +msgid "Use trash can in movielist" +msgstr "Use trash can in movielist" + +msgid "Used service scan type" +msgstr "Used service scan type" + +msgid "User - bouquets" +msgstr "User - bouquets" + +msgid "User defined" +msgstr "User defined" + +msgid "User defined transponder" +msgstr "" + +msgid "User interface" +msgstr "User interface" + +msgid "Username" +msgstr "Username" + +#, python-format +msgid "Using LNB %d" +msgstr "Using LNB %d" + +msgid "Using fixed address" +msgstr "Using fixed address" + +#, python-format +msgid "Using tuner %s" +msgstr "Using tuner %s" + +msgid "Usually when the subtitle language is the same as the audio language, the subtitles will not be used. Enable this option to allow these subtitles to be used." +msgstr "Usually when the subtitle language is the same as the audio language, the subtitles will not be used. Enable this option to allow these subtitles to be used." + +msgid "VCR scart" +msgstr "VCR scart" + +msgid "VMGM (intro trailer)" +msgstr "VMGM (intro trailer)" + +msgid "Vertical" +msgstr "Vertical" + +msgid "Vertical turning speed" +msgstr "Vertical turning speed" + +msgid "Video PID" +msgstr "Video PID" + +msgid "Video enhancement preview" +msgstr "Video enhancement preview" + +msgid "Video enhancement settings" +msgstr "Video enhancement settings" + +msgid "Video enhancement setup" +msgstr "Video enhancement setup" + +msgid "Video fine tuning" +msgstr "Video fine tuning" + +msgid "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." +msgstr "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." + +msgid "Video mode selection." +msgstr "Video mode selection." + +msgid "Video output" +msgstr "Video output" + +msgid "Video setup" +msgstr "Video setup" + +msgid "Video wizard" +msgstr "Video wizard" + +#, python-format +msgid "Video: %s fps" +msgstr "" + +msgid "VideoMode" +msgstr "" + +msgid "Videocodec" +msgstr "Videocodec" + +msgid "Videoformat" +msgstr "Videoformat" + +msgid "Videosize" +msgstr "Videosize" + +msgid "View Rass interactive..." +msgstr "View Rass interactive..." + +msgid "View details" +msgstr "View details" + +msgid "View list of available " +msgstr "View list of available " + +msgid "View list of available CommonInterface extensions" +msgstr "View list of available CommonInterface extensions" + +msgid "View list of available EPG extensions." +msgstr "View list of available EPG extensions." + +msgid "View list of available Satellite equipment extensions." +msgstr "View list of available Satellite equipment extensions." + +msgid "View list of available communication extensions." +msgstr "View list of available communication extensions." + +msgid "View list of available default settings" +msgstr "View list of available default settings" + +msgid "View list of available display and userinterface extensions." +msgstr "View list of available display and userinterface extensions." + +msgid "View list of available multimedia extensions." +msgstr "View list of available multimedia extensions." + +msgid "View list of available networking extensions" +msgstr "View list of available networking extensions" + +msgid "View list of available recording extensions" +msgstr "View list of available recording extensions" + +msgid "View list of available skins" +msgstr "View list of available skins" + +msgid "View list of available software extensions" +msgstr "View list of available software extensions" + +msgid "View list of available system extensions" +msgstr "View list of available system extensions" + +msgid "View photos..." +msgstr "View photos..." + +msgid "View teletext..." +msgstr "View teletext..." + +msgid "View video CD..." +msgstr "View video CD..." + +msgid "Virtual keyboard" +msgstr "Virtual keyboard" + +msgid "Voltage mode" +msgstr "Voltage mode" + +msgid "Volume" +msgstr "Volume" + +msgid "W" +msgstr "W" + +msgid "WEP" +msgstr "WEP" + +msgid "WLAN connection" +msgstr "WLAN connection" + +msgid "WPA" +msgstr "WPA" + +msgid "WPA or WPA2" +msgstr "WPA or WPA2" + +msgid "WPA2" +msgstr "WPA2" + +msgid "WSS on 4:3" +msgstr "WSS on 4:3" + +msgid "Waiting" +msgstr "Waiting" + +msgid "Waiting for mount" +msgstr "Waiting for mount" + +msgid "Waiting for partition" +msgstr "Waiting for partition" + +msgid "Wakeup" +msgstr "Wakeup" + +msgid "Wakeup TV from standby" +msgstr "Wakeup TV from standby" + +msgid "Wakeup receiver for start timer" +msgstr "" + +msgid "Wakeup receiver from standby" +msgstr "Wakeup receiver from standby" + +msgid "Wakeup signal from TV" +msgstr "Wakeup signal from TV" + +msgid "Wakeup type" +msgstr "" + +msgid "Warning: no LNB; using factory defaults." +msgstr "Warning: no LNB; using factory defaults." + +msgid "Watch movies..." +msgstr "Watch movies..." + +msgid "Watch recordings..." +msgstr "Watch recordings..." + +msgid "Wed" +msgstr "Wed" + +msgid "Wednesday" +msgstr "Wednesday" + +msgid "Weekday" +msgstr "Weekday" + +msgid "Weighted position" +msgstr "Weighted position" + +msgid "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." +msgstr "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." + +msgid "Welcome to the image upgrade wizard. The wizard will assist you in upgrading the firmware of your receiver by providing a backup facility for your current settings and a short explanation of how to upgrade your firmware." +msgstr "Welcome to the image upgrade wizard. The wizard will assist you in upgrading the firmware of your receiver by providing a backup facility for your current settings and a short explanation of how to upgrade your firmware." + +msgid "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" +msgstr "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" + +msgid "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." +msgstr "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." + +msgid "Welcome..." +msgstr "Welcome..." + +msgid "West" +msgstr "West" + +msgid "West limit set" +msgstr "West limit set" + +msgid "What do you want to scan?" +msgstr "What do you want to scan?" + +msgid "When enabled the PiP can be closed by the exit button." +msgstr "When enabled the PiP can be closed by the exit button." + +msgid "When enabled the arrow buttons around the OK button will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled the left, right, CH+/-, B+/-, P+/- buttons will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled you can specify a timeframe to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "When enabled you can specify a timeframe were the inactivity sleeptimer is ignored. Not the detection is disabled during this timeframe but the inactivity timeout is disabled" +msgstr "" + +msgid "When enabled you can zap channels with the CH+/-, B+/-, P+/- buttons instead of opening the channel selection list." +msgstr "" + +msgid "When enabled you get the channel selection list via the OK button, the infobar toggle is then transfered to exit button" +msgstr "" + +msgid "When enabled, AIT data will be included in http streams. This allows a client receiver to use HbbTV." +msgstr "When enabled, AIT data will be included in http streams. This allows a client receiver to use HbbTV." + +msgid "When enabled, ECM data will be included in http streams. This allows a client receiver to do the descrambling." +msgstr "When enabled, ECM data will be included in http streams. This allows a client receiver to do the descrambling." + +msgid "When enabled, EIT data will be included in http streams. This allows a client receiver to show EPG." +msgstr "When enabled, EIT data will be included in http streams. This allows a client receiver to show EPG." + +msgid "When enabled, a popup message will be shown when a movie has finished and the next one will start." +msgstr "When enabled, a popup message will be shown when a movie has finished and the next one will start." + +msgid "When enabled, a popup message will be shown when a recording starts." +msgstr "When enabled, a popup message will be shown when a recording starts." + +msgid "When enabled, a radio background image will be visible while listening to a radio channel." +msgstr "When enabled, a radio background image will be visible while listening to a radio channel." + +msgid "When enabled, a recording is allowed to interrupt live tv, when there are no free tuners." +msgstr "When enabled, a recording is allowed to interrupt live tv, when there are no free tuners." + +msgid "When enabled, a warning will be displayed and the user will get an option to stop or to continue the timeshift." +msgstr "When enabled, a warning will be displayed and the user will get an option to stop or to continue the timeshift." + +msgid "When enabled, authentication is required to watch http streams." +msgstr "" + +msgid "When enabled, channel numbering will start at '1' for each bouquet." +msgstr "When enabled, channel numbering will start at '1' for each bouquet." + +msgid "When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen." +msgstr "When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen." + +msgid "When enabled, continue to the next bouquet when the last channel of the current bouquet is reached while changing channels." +msgstr "When enabled, continue to the next bouquet when the last channel of the current bouquet is reached while changing channels." + +msgid "When enabled, deleted recordings are moved to the trash can, instead of being deleted immediately." +msgstr "When enabled, deleted recordings are moved to the trash can, instead of being deleted immediately." + +msgid "When enabled, display the EIT now/next eventdata in infobar. When disabled, display now/next eventdata from the EPG cache instead." +msgstr "When enabled, display the EIT now/next eventdata in infobar. When disabled, display now/next eventdata from the EPG cache instead." + +msgid "When enabled, encryption info will be shown in the infobar (when supported by the skin)." +msgstr "When enabled, encryption info will be shown in the infobar (when supported by the skin)." + +msgid "When enabled, error messages related to the Common Interface module will not be shown." +msgstr "When enabled, error messages related to the Common Interface module will not be shown." + +msgid "When enabled, error messages related to zapping will not be shown." +msgstr "When enabled, error messages related to zapping will not be shown." + +msgid "When enabled, external subtitles will be always turned on for playback movie." +msgstr "When enabled, external subtitles will be always turned on for playback movie." + +msgid "When enabled, graphical DVB subtitles are preferred over teletext subtitles, when both types are available." +msgstr "When enabled, graphical DVB subtitles are preferred over teletext subtitles, when both types are available." + +msgid "When enabled, graphical DVB subtitles will be centered horizontally." +msgstr "When enabled, graphical DVB subtitles will be centered horizontally." + +msgid "When enabled, graphical DVB subtitles will be displayed at their original position." +msgstr "When enabled, graphical DVB subtitles will be displayed at their original position." + +msgid "When enabled, graphical DVB subtitles will be displayed in yellow, instead of the original color." +msgstr "When enabled, graphical DVB subtitles will be displayed in yellow, instead of the original color." + +msgid "When enabled, http streams are descrambled on the server side. The (remote) client receiver does not have to do descrambling." +msgstr "When enabled, http streams are descrambled on the server side. The (remote) client receiver does not have to do descrambling." + +msgid "When enabled, it is possible to leave the movieplayer with exit." +msgstr "When enabled, it is possible to leave the movieplayer with exit." + +msgid "When enabled, measure power consumption to detect when the rotor stops turning (when supported by the tuner)." +msgstr "When enabled, measure power consumption to detect when the rotor stops turning (when supported by the tuner)." + +msgid "When enabled, number markers will be hiden." +msgstr "When enabled, number markers will be hiden." + +msgid "When enabled, services may be grouped in multiple bouquets." +msgstr "When enabled, services may be grouped in multiple bouquets." + +msgid "When enabled, show channel numbers in the channel selection screen." +msgstr "When enabled, show channel numbers in the channel selection screen." + +msgid "When enabled, subtitles for the hearing impaired can be used." +msgstr "When enabled, subtitles for the hearing impaired can be used." + +msgid "When enabled, subtitles for the hearing impaired will be preferred over normal subtitles, when both types are available." +msgstr "When enabled, subtitles for the hearing impaired will be preferred over normal subtitles, when both types are available." + +msgid "When enabled, teletext pages will be cached, allowing faster access." +msgstr "When enabled, teletext pages will be cached, allowing faster access." + +msgid "When enabled, teletext subtitles will be displayed at their original position." +msgstr "When enabled, teletext subtitles will be displayed at their original position." + +msgid "When enabled, the VCR scart option will be shown on the main menu" +msgstr "" + +msgid "When enabled, the channel selection list will be hidden while listening to a radio channel" +msgstr "When enabled, the channel selection list will be hidden while listening to a radio channel" + +msgid "When enabled, the infobar will be displayed when a new event starts." +msgstr "When enabled, the infobar will be displayed when a new event starts." + +msgid "When enabled, the infobar will be displayed when changing channels." +msgstr "When enabled, the infobar will be displayed when changing channels." + +msgid "When enabled, the infobar will be displayed when skipping forwards/backwards during media playback." +msgstr "When enabled, the infobar will be displayed when skipping forwards/backwards during media playback." + +msgid "When enabled, the lenght of each recording will be shown in the movielist (this might cause some additional loading time)." +msgstr "When enabled, the lenght of each recording will be shown in the movielist (this might cause some additional loading time)." + +msgid "When enabled, the original line breaks will be removed from the teletext subtitles." +msgstr "When enabled, the original line breaks will be removed from the teletext subtitles." + +msgid "When enabled, the receiver will automatically use the audio track which you selected before." +msgstr "When enabled, the receiver will automatically use the audio track which you selected before." + +msgid "When enabled, the receiver will automatically use the subtitles which you selected before." +msgstr "When enabled, the receiver will automatically use the subtitles which you selected before." + +msgid "When enabled, the receiver will no longer monitor the tuned transponder for possible changes. Do not use this option unless you know what you are doing." +msgstr "When enabled, the receiver will no longer monitor the tuned transponder for possible changes. Do not use this option unless you know what you are doing." + +msgid "When enabled, the receiver will select an AC3 track (when available)." +msgstr "When enabled, the receiver will select an AC3 track (when available)." + +msgid "When enabled, the receiver will select an AC3+ track (when available)." +msgstr "" + +msgid "When enabled, timeshift starts automatically in background after specified time." +msgstr "When enabled, timeshift starts automatically in background after specified time." + +msgid "When enabled, use DHCP for the IP configuration." +msgstr "When enabled, use DHCP for the IP configuration." + +#, fuzzy +msgid "When enabled, your receiver will detect activity on the VCR SCART input." +msgstr "When enabled, the receiver will select an AC3 track (when available)." + +msgid "When nonzero, a recording will start earlier than the starting time indicated by the EPG." +msgstr "When nonzero, a recording will start earlier than the starting time indicated by the EPG." + +msgid "When nonzero, a recording will stop later than the ending time indicated by the EPG." +msgstr "When nonzero, a recording will stop later than the ending time indicated by the EPG." + +msgid "When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture." +msgstr "When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture." + +msgid "When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture." +msgstr "When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture." + +msgid "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" +msgstr "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" + +msgid "Where do you want to backup your settings?" +msgstr "Where do you want to backup your settings?" + +msgid "Where to save temporary timeshift recordings?" +msgstr "Where to save temporary timeshift recordings?" + +msgid "Wireless LAN" +msgstr "Wireless LAN" + +msgid "Wireless network" +msgstr "Wireless network" + +msgid "Wireless network configuration..." +msgstr "Wireless network configuration..." + +msgid "Wireless network connection setup" +msgstr "Wireless network connection setup" + +msgid "Wireless network connection setup." +msgstr "Wireless network connection setup." + +msgid "Wireless network state" +msgstr "Wireless network state" + +msgid "With popup" +msgstr "With popup" + +msgid "Without popup" +msgstr "Without popup" + +msgid "Would you like to install a softcam?" +msgstr "Would you like to install a softcam?" + +msgid "Write error while recording. Disk full?\n" +msgstr "Write error while recording. Disk full?\n" + +msgid "Write failed!" +msgstr "Write failed!" + +msgid "YPbPr" +msgstr "YPbPr" + +msgid "Year" +msgstr "Year" + +msgid "Yellow DVB subtitles" +msgstr "Yellow DVB subtitles" + +msgid "Yes" +msgstr "Yes" + +msgid "Yes and save" +msgstr "" + +msgid "Yes and save in movie dir" +msgstr "" + +msgid "Yes to all" +msgstr "Yes to all" + +msgid "Yes, always" +msgstr "Yes, always" + +msgid "Yes, and delete this movie" +msgstr "Yes, and delete this movie" + +msgid "Yes, backup my settings!" +msgstr "Yes, backup my settings!" + +msgid "Yes, delete this movie and return to movie list" +msgstr "" + +msgid "Yes, do a manual scan now" +msgstr "Yes, do a manual scan now" + +msgid "Yes, do an automatic scan now" +msgstr "Yes, do an automatic scan now" + +msgid "Yes, do another manual scan now" +msgstr "Yes, do another manual scan now" + +msgid "Yes, perform a shutdown now." +msgstr "Yes, perform a shutdown now." + +msgid "Yes, restore the settings now" +msgstr "Yes, restore the settings now" + +msgid "Yes, returning to movie list" +msgstr "Yes, returning to movie list" + +msgid "Yesterday" +msgstr "Yesterday" + +#, python-format +msgid "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" +msgstr "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" + +msgid "You can cancel the installation." +msgstr "You can cancel the installation." + +msgid "You can cancel the removal." +msgstr "You can cancel the removal." + +msgid "You can continue watching TV etc. while this is running." +msgstr "You can continue watching TV etc. while this is running." + +msgid "You can install this plugin." +msgstr "You can install this plugin." + +msgid "You can only burn receiver recordings!" +msgstr "You can only burn receiver recordings!" + +msgid "You can remove this plugin." +msgstr "You can remove this plugin." + +msgid "You cannot delete this!" +msgstr "You cannot delete this!" + +msgid "You didn't select a channel to record from." +msgstr "You didn't select a channel to record from." + +msgid "You have chosen to backup your settings. Please press OK to start the backup now." +msgstr "You have chosen to backup your settings. Please press OK to start the backup now." + +msgid "You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased." +msgstr "You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased." + +msgid "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." +msgstr "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." + +#, python-format +msgid "You have to wait %s!" +msgstr "You have to wait %s!" + +msgid "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." +msgstr "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." + +msgid "You system does not support ext4" +msgstr "You system does not support ext4" + +msgid "Your backup succeeded. We will now continue to explain the further upgrade process." +msgstr "Your backup succeeded. We will now continue to explain the further upgrade process." + +msgid "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" +msgstr "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" + +msgid "Your current collection will get lost!" +msgstr "Your current collection will get lost!" + +msgid "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." +msgstr "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." + +msgid "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" + +msgid "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." +msgstr "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." + +#, python-format +msgid "Your internet connection is working (ip: %s)" +msgstr "Your internet connection is working (ip: %s)" + +msgid "Your network configuration has been activated." +msgstr "Your network configuration has been activated." + +msgid "Your receiver does not have an internet connection" +msgstr "Your receiver does not have an internet connection" + +msgid "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" +msgstr "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" + +msgid "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." + +msgid "Your receiver is rebooting" +msgstr "Your receiver is rebooting" + +msgid "Your receiver is shutting down" +msgstr "Your receiver is shutting down" + +msgid "Your receiver is shutting down. Please stand by..." +msgstr "Your receiver is shutting down. Please stand by..." + +msgid "Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver." +msgstr "Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver." + +msgid "Your receiver will got to stand by due to the sleeptimer." +msgstr "" + +msgid "Your receiver will got to standby due to inactivity." +msgstr "" + +msgid "Your receiver will restart after pressing OK on your remote control." +msgstr "Your receiver will restart after pressing OK on your remote control." + +msgid "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." +msgstr "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." + +msgid "Zap" +msgstr "Zap" + +msgid "Zap back to previously tuned service?" +msgstr "Zap back to previously tuned service?" + +msgid "Zap back to service before positioner setup?" +msgstr "Zap back to service before positioner setup?" + +msgid "Zap back to service before tuner setup?" +msgstr "Zap back to service before tuner setup?" + +msgid "Zap focus to Picture in Picture" +msgstr "Zap focus to Picture in Picture" + +msgid "Zap focus to main screen" +msgstr "Zap focus to main screen" + +msgid "Zap mode" +msgstr "Zap mode" + +msgid "Zap to selected channel" +msgstr "Zap to selected channel" + +msgid "Zap to selected channel, or show detailed event info (depends on configuration)" +msgstr "Zap to selected channel, or show detailed event info (depends on configuration)" + +msgid "[alternative edit]" +msgstr "[alternative edit]" + +msgid "[bouquet edit]" +msgstr "[bouquet edit]" + +msgid "[favourite edit]" +msgstr "[favourite edit]" + +msgid "[move mode]" +msgstr "[move mode]" + +msgid "a gui to assign services/providers to common interface modules" +msgstr "a gui to assign services/providers to common interface modules" + +msgid "a gui to assign services/providers/caids to common interface modules" +msgstr "a gui to assign services/providers/caids to common interface modules" + +msgid "abort alternatives edit" +msgstr "abort alternatives edit" + +msgid "abort bouquet edit" +msgstr "abort bouquet edit" + +msgid "abort favourites edit" +msgstr "abort favourites edit" + +msgid "about to start" +msgstr "about to start" + +msgid "activate network adapter configuration" +msgstr "activate network adapter configuration" + +msgid "add alternatives" +msgstr "add alternatives" + +msgid "add bookmark" +msgstr "add bookmark" + +msgid "add bouquet" +msgstr "add bouquet" + +msgid "add marker" +msgstr "add marker" + +msgid "add service to bouquet" +msgstr "add service to bouquet" + +msgid "add service to favourites" +msgstr "add service to favourites" + +msgid "add to parental protection" +msgstr "add to parental protection" + +msgid "adult movie/drama" +msgstr "adult movie/drama" + +msgid "advanced" +msgstr "advanced" + +msgid "adventure/western/war" +msgstr "adventure/western/war" + +msgid "advertisement/shopping" +msgstr "advertisement/shopping" + +msgid "after " +msgstr "" + +msgid "alphabetic" +msgstr "alphabetic" + +msgid "alphabetic reverse" +msgstr "alphabetic reverse" + +msgid "alternative" +msgstr "alternative" + +msgid "always" +msgstr "" + +msgid "and select next channel" +msgstr "" + +msgid "and select previous channel" +msgstr "" + +msgid "arts/culture (without music, general)" +msgstr "arts/culture (without music, general)" + +msgid "arts/culture magazine" +msgstr "arts/culture magazine" + +msgid "athletics" +msgstr "athletics" + +msgid "audio tracks" +msgstr "audio tracks" + +msgid "auto" +msgstr "auto" + +msgid "automatic" +msgstr "automatic" + +msgid "back" +msgstr "back" + +msgid "background image" +msgstr "background image" + +msgid "ballet" +msgstr "ballet" + +#, python-format +msgid "bc%s" +msgstr "bc%s" + +msgid "better" +msgstr "better" + +msgid "black" +msgstr "black" + +msgid "black & white" +msgstr "black & white" + +msgid "blacklist" +msgstr "blacklist" + +msgid "blue" +msgstr "blue" + +msgid "broadcasting/press" +msgstr "broadcasting/press" + +msgid "by date" +msgstr "by date" + +msgid "cartoon/puppets" +msgstr "cartoon/puppets" + +msgid "center" +msgstr "center" + +msgid "centered" +msgstr "" + +msgid "centered, wrapped" +msgstr "" + +msgid "chapters" +msgstr "chapters" + +msgid "childrens's/youth program (general)" +msgstr "childrens's/youth program (general)" + +msgid "circular left" +msgstr "circular left" + +msgid "circular right" +msgstr "circular right" + +msgid "comedy" +msgstr "comedy" + +msgid "complex" +msgstr "complex" + +msgid "config menu" +msgstr "config menu" + +msgid "confirmed" +msgstr "confirmed" + +msgid "connected" +msgstr "connected" + +msgid "continue" +msgstr "continue" + +msgid "cooking" +msgstr "cooking" + +msgid "copy to bouquets" +msgstr "copy to bouquets" + +msgid "create directory" +msgstr "create directory" + +#, python-format +msgid "currently installed image: %s" +msgstr "currently installed image: %s" + +msgid "daily" +msgstr "daily" + +msgid "day" +msgstr "day" + +msgid "default" +msgstr "default" + +msgid "delete cut" +msgstr "delete cut" + +msgid "delete..." +msgstr "" + +msgid "descramble and record ecm" +msgstr "descramble and record ecm" + +msgid "detective/thriller" +msgstr "detective/thriller" + +msgid "disable" +msgstr "disable" + +msgid "disable move mode" +msgstr "disable move mode" + +msgid "disabled" +msgstr "disabled" + +msgid "disconnected" +msgstr "disconnected" + +msgid "discussion/interview/debate" +msgstr "discussion/interview/debate" + +msgid "do nothing" +msgstr "do nothing" + +msgid "documentary" +msgstr "documentary" + +msgid "don't descramble, record ecm" +msgstr "don't descramble, record ecm" + +msgid "done!" +msgstr "done!" + +msgid "east" +msgstr "east" + +msgid "economics/social advisory" +msgstr "economics/social advisory" + +msgid "edit alternatives" +msgstr "edit alternatives" + +msgid "education/science/factual topics (general)" +msgstr "education/science/factual topics (general)" + +msgid "empty" +msgstr "empty" + +msgid "enable" +msgstr "enable" + +msgid "enable bouquet edit" +msgstr "enable bouquet edit" + +msgid "enable favourite edit" +msgstr "enable favourite edit" + +msgid "enable move mode" +msgstr "enable move mode" + +msgid "enabled" +msgstr "enabled" + +msgid "end alternatives edit" +msgstr "end alternatives edit" + +msgid "end bouquet edit" +msgstr "end bouquet edit" + +msgid "end cut here" +msgstr "end cut here" + +msgid "end favourites edit" +msgstr "end favourites edit" + +msgid "entertainment (10-16 year old)" +msgstr "entertainment (10-16 year old)" + +msgid "entertainment (6-14 year old)" +msgstr "entertainment (6-14 year old)" + +msgid "equal to" +msgstr "equal to" + +msgid "equestrian" +msgstr "equestrian" + +msgid "exit DVD player or return to file browser" +msgstr "exit DVD player or return to file browser" + +msgid "exit movielist" +msgstr "" + +msgid "exit network adapter configuration" +msgstr "exit network adapter configuration" + +msgid "exit networkadapter setup menu" +msgstr "exit networkadapter setup menu" + +msgid "experimental film/video" +msgstr "experimental film/video" + +msgid "false" +msgstr "false" + +msgid "fashion" +msgstr "fashion" + +msgid "fileformats (BMP, PNG, JPG, GIF)" +msgstr "fileformats (BMP, PNG, JPG, GIF)" + +msgid "filename" +msgstr "filename" + +msgid "film/cinema" +msgstr "film/cinema" + +msgid "fine arts" +msgstr "fine arts" + +msgid "fine-tune your display" +msgstr "fine-tune your display" + +msgid "fitness & health" +msgstr "fitness & health" + +msgid "flat alphabetic" +msgstr "flat alphabetic" + +msgid "flat alphabetic reverse" +msgstr "flat alphabetic reverse" + +msgid "folk/traditional music" +msgstr "folk/traditional music" + +msgid "football/soccer" +msgstr "football/soccer" + +msgid "foreign countries/expeditions" +msgstr "foreign countries/expeditions" + +msgid "forward to the next chapter" +msgstr "forward to the next chapter" + +msgid "free" +msgstr "free" + +msgid "from" +msgstr "" + +msgid "further education" +msgstr "further education" + +msgid "game show/quiz/contest" +msgstr "game show/quiz/contest" + +msgid "gardening" +msgstr "gardening" + +msgid "go to deep standby" +msgstr "go to deep standby" + +msgid "go to standby" +msgstr "go to standby" + +msgid "grab this frame as bitmap" +msgstr "grab this frame as bitmap" + +msgid "green" +msgstr "green" + +msgid "handicraft" +msgstr "handicraft" + +msgid "height" +msgstr "height" + +msgid "help..." +msgstr "help..." + +msgid "horizontal" +msgstr "horizontal" + +msgid "information/education/school program" +msgstr "information/education/school program" + +msgid "init module" +msgstr "init module" + +msgid "init modules" +msgstr "init modules" + +msgid "insert mark here" +msgstr "insert mark here" + +msgid "invalid type" +msgstr "invalid type" + +msgid "jazz" +msgstr "jazz" + +msgid "jump back to the previous title" +msgstr "jump back to the previous title" + +msgid "jump forward to the next title" +msgstr "jump forward to the next title" + +msgid "languages" +msgstr "languages" + +msgid "leave movie player..." +msgstr "leave movie player..." + +msgid "left" +msgstr "left" + +msgid "left, wrapped" +msgstr "" + +msgid "leisure hobbies (general)" +msgstr "leisure hobbies (general)" + +msgid "length" +msgstr "length" + +msgid "limit ..., aborting !" +msgstr "limit ..., aborting !" + +msgid "list style compact" +msgstr "list style compact" + +msgid "list style compact with description" +msgstr "list style compact with description" + +msgid "list style default" +msgstr "list style default" + +msgid "list style single line" +msgstr "list style single line" + +msgid "literature" +msgstr "literature" + +msgid "live broadcast" +msgstr "live broadcast" + +msgid "locked" +msgstr "locked" + +msgid "loopthrough to" +msgstr "loopthrough to" + +msgid "magazines/reports/documentary" +msgstr "magazines/reports/documentary" + +msgid "manual" +msgstr "manual" + +msgid "martial sports" +msgstr "martial sports" + +msgid "medicine/physiology/psychology" +msgstr "medicine/physiology/psychology" + +msgid "menu" +msgstr "menu" + +msgid "mins" +msgstr "mins" + +msgid "minutes" +msgstr "minutes" + +msgid "month" +msgstr "month" + +msgid "motor sport" +msgstr "motor sport" + +msgid "motoring" +msgstr "motoring" + +msgid "move down to last entry" +msgstr "move down to last entry" + +msgid "move down to next entry" +msgstr "move down to next entry" + +msgid "move up to first entry" +msgstr "move up to first entry" + +msgid "move up to previous entry" +msgstr "move up to previous entry" + +msgid "movie/drama (general)" +msgstr "movie/drama (general)" + +msgid "multinorm" +msgstr "multinorm" + +msgid "music/ballet/dance (general)" +msgstr "music/ballet/dance (general)" + +msgid "musical/opera" +msgstr "musical/opera" + +msgid "nature/animals/environment" +msgstr "nature/animals/environment" + +msgid "never" +msgstr "never" + +msgid "new media" +msgstr "new media" + +msgid "news magazine" +msgstr "news magazine" + +msgid "news/current affairs (general)" +msgstr "news/current affairs (general)" + +msgid "news/weather report" +msgstr "news/weather report" + +msgid "no" +msgstr "no" + +msgid "no CAId selected" +msgstr "no CAId selected" + +msgid "no CI slots found" +msgstr "no CI slots found" + +msgid "no module found" +msgstr "no module found" + +msgid "no storage devices found" +msgstr "no storage devices found" + +msgid "none" +msgstr "none" + +msgid "normal" +msgstr "normal" + +msgid "not configured" +msgstr "not configured" + +msgid "not locked" +msgstr "not locked" + +msgid "not supported" +msgstr "not supported" + +msgid "not used" +msgstr "not used" + +msgid "nothing connected" +msgstr "nothing connected" + +msgid "of a DUAL layer medium used." +msgstr "of a DUAL layer medium used." + +msgid "of a SINGLE layer medium used." +msgstr "of a SINGLE layer medium used." + +msgid "off" +msgstr "off" + +msgid "offset is" +msgstr "offset is" + +msgid "on" +msgstr "on" + +msgid "on READ ONLY medium." +msgstr "on READ ONLY medium." + +msgid "on end of movie" +msgstr "" + +msgid "once" +msgstr "once" + +msgid "only from deep standby" +msgstr "" + +msgid "only from standby" +msgstr "" + +msgid "open EPG..." +msgstr "" + +msgid "open Info..." +msgstr "" + +msgid "open nameserver configuration" +msgstr "open nameserver configuration" + +msgid "original" +msgstr "original" + +msgid "original language" +msgstr "original language" + +msgid "pass" +msgstr "pass" + +msgid "performing arts" +msgstr "performing arts" + +msgid "play as picture in picture" +msgstr "play as picture in picture" + +msgid "play in mainwindow" +msgstr "play in mainwindow" + +msgid "please press OK when ready" +msgstr "please press OK when ready" + +msgid "please wait, loading picture..." +msgstr "please wait, loading picture..." + +msgid "popular culture/traditional arts" +msgstr "popular culture/traditional arts" + +msgid "pre-school children's program" +msgstr "pre-school children's program" + +msgid "receiver software because updates are available." +msgstr "receiver software because updates are available." + +msgid "record" +msgstr "record" + +msgid "recording..." +msgstr "recording..." + +msgid "red" +msgstr "red" + +msgid "religion" +msgstr "religion" + +msgid "remarkable people" +msgstr "remarkable people" + +msgid "remove after this position" +msgstr "remove after this position" + +msgid "remove all alternatives" +msgstr "remove all alternatives" + +msgid "remove all new found flags" +msgstr "remove all new found flags" + +msgid "remove before this position" +msgstr "remove before this position" + +msgid "remove bookmark" +msgstr "remove bookmark" + +msgid "remove directory" +msgstr "remove directory" + +msgid "remove entry" +msgstr "remove entry" + +msgid "remove from parental protection" +msgstr "remove from parental protection" + +msgid "remove new found flag" +msgstr "remove new found flag" + +msgid "remove selected satellite" +msgstr "remove selected satellite" + +msgid "remove this mark" +msgstr "remove this mark" + +msgid "rename entry" +msgstr "" + +msgid "repeat playlist" +msgstr "repeat playlist" + +msgid "repeated" +msgstr "repeated" + +msgid "reverse by date" +msgstr "reverse by date" + +msgid "rewind to the previous chapter" +msgstr "rewind to the previous chapter" + +msgid "right" +msgstr "right" + +msgid "right, wrapped" +msgstr "" + +msgid "rock/pop" +msgstr "rock/pop" + +msgid "romance" +msgstr "romance" + +msgid "save last directory on exit" +msgstr "save last directory on exit" + +msgid "save playlist on exit" +msgstr "save playlist on exit" + +msgid "scan state" +msgstr "scan state" + +msgid "science fiction/fantasy/horror" +msgstr "science fiction/fantasy/horror" + +msgid "second cable of motorized LNB" +msgstr "second cable of motorized LNB" + +msgid "seconds" +msgstr "seconds" + +msgid "select" +msgstr "select" + +msgid "select CAId's" +msgstr "select CAId's" + +msgid "select EPG..." +msgstr "" + +msgid "select Info..." +msgstr "" + +msgid "select menu entry" +msgstr "select menu entry" + +msgid "select movie" +msgstr "" + +msgid "select the movie path" +msgstr "" + +msgid "serious music/classic music" +msgstr "serious music/classic music" + +msgid "serious/classical/religious/historical movie/drama" +msgstr "serious/classical/religious/historical movie/drama" + +msgid "service PIN" +msgstr "service PIN" + +msgid "set as startup service" +msgstr "set as startup service" + +msgid "setup PIN" +msgstr "setup PIN" + +msgid "show DVD main menu" +msgstr "show DVD main menu" + +msgid "show all tags" +msgstr "show all tags" + +msgid "show alternatives" +msgstr "show alternatives" + +msgid "show event details" +msgstr "show event details" + +msgid "show extended description" +msgstr "" + +msgid "show mediaplayer on mainmenu" +msgstr "show mediaplayer on mainmenu" + +msgid "show softwaremanager in setup menu" +msgstr "show softwaremanager in setup menu" + +msgid "show softwaremanager on blue button" +msgstr "show softwaremanager on blue button" + +msgid "show tag menu" +msgstr "" + +msgid "show transponder info" +msgstr "show transponder info" + +msgid "show/game show (general)" +msgstr "show/game show (general)" + +msgid "shuffle" +msgstr "shuffle" + +msgid "shut down" +msgstr "shut down" + +msgid "simple" +msgstr "simple" + +msgid "skip backward" +msgstr "skip backward" + +msgid "skip forward" +msgstr "skip forward" + +msgid "soap/melodram/folkloric" +msgstr "soap/melodram/folkloric" + +msgid "social/political issues/economics (general)" +msgstr "social/political issues/economics (general)" + +msgid "social/spiritual science" +msgstr "social/spiritual science" + +msgid "sorting of playlists" +msgstr "sorting of playlists" + +msgid "special characters" +msgstr "special characters" + +msgid "special events" +msgstr "special events" + +msgid "special format data DVD (HDTV compatible)" +msgstr "special format data DVD (HDTV compatible)" + +msgid "sports (general)" +msgstr "sports (general)" + +msgid "sports magazine" +msgstr "sports magazine" + +msgid "standard" +msgstr "standard" + +msgid "start cut here" +msgstr "start cut here" + +msgid "start directory" +msgstr "start directory" + +msgid "stepsize" +msgstr "stepsize" + +msgid "stereo" +msgstr "stereo" + +msgid "stop using as startup service" +msgstr "stop using as startup service" + +msgid "switch to bookmarks" +msgstr "switch to bookmarks" + +msgid "switch to filelist" +msgstr "switch to filelist" + +msgid "switch to the next angle" +msgstr "switch to the next angle" + +msgid "switch to the next audio track" +msgstr "switch to the next audio track" + +msgid "switch to the next subtitle language" +msgstr "switch to the next subtitle language" + +msgid "talk show" +msgstr "talk show" + +msgid "team sports" +msgstr "team sports" + +msgid "technology/natural science" +msgstr "technology/natural science" + +msgid "template file" +msgstr "template file" + +msgid "tennis/squash" +msgstr "tennis/squash" + +msgid "this recording" +msgstr "this recording" + +msgid "this service is protected by a parental control pin" +msgstr "this service is protected by a parental control pin" + +msgid "toggle time, chapter, audio, subtitle info" +msgstr "toggle time, chapter, audio, subtitle info" + +msgid "top" +msgstr "top" + +msgid "tourism/travel" +msgstr "tourism/travel" + +msgid "true" +msgstr "true" + +msgid "unavailable" +msgstr "unavailable" + +msgid "unconfirmed" +msgstr "unconfirmed" + +msgid "undefined" +msgstr "undefined" + +msgid "unknown" +msgstr "unknown" + +msgid "unknown service" +msgstr "unknown service" + +msgid "unpublished" +msgstr "unpublished" + +msgid "until standby/restart" +msgstr "until standby/restart" + +msgid "user defined" +msgstr "user defined" + +msgid "variety show" +msgstr "variety show" + +msgid "vertical" +msgstr "vertical" + +msgid "wait for ci..." +msgstr "wait for ci..." + +msgid "wait for mmi..." +msgstr "wait for mmi..." + +msgid "waiting" +msgstr "waiting" + +msgid "water sport" +msgstr "water sport" + +msgid "weekly" +msgstr "weekly" + +msgid "west" +msgstr "west" + +msgid "when PiPzap enabled zap channel down..." +msgstr "" + +msgid "when PiPzap enabled zap channel up..." +msgstr "" + +msgid "white" +msgstr "white" + +msgid "whitelist" +msgstr "whitelist" + +msgid "width" +msgstr "width" + +msgid "winter sport" +msgstr "winter sport" + +msgid "wireless network interface" +msgstr "wireless network interface" + +#, python-format +msgid "with %d error" +msgid_plural "with %d errors" +msgstr[0] "with %d error" +msgstr[1] "with %d errors" + +msgid "working" +msgstr "working" + +msgid "yellow" +msgstr "yellow" + +msgid "yes" +msgstr "yes" + +msgid "yes (keep feeds)" +msgstr "yes (keep feeds)" + +msgid "zap" +msgstr "zap" + +msgid "zap and record" +msgstr "zap and record" + +msgid "zapped" +msgstr "zapped" + +#~ msgid "AA" +#~ msgstr "AA" + +#~ msgid "AB" +#~ msgstr "AB" + +#~ msgid "Activate PiP" +#~ msgstr "Activate PiP" + +#~ msgid "Add/remove timer for current event" +#~ msgstr "Add/remove timer for current event" + +#~ msgid "Adjust HDMI CEC settings" +#~ msgstr "Adjust HDMI CEC settings" + +#~ msgid "All satellites" +#~ msgstr "All satellites" + +#~ msgid "BA" +#~ msgstr "BA" + +#~ msgid "BB" +#~ msgstr "BB" + +#~ msgid "Behavior of 'pause' when paused" +#~ msgstr "Behavior of 'pause' when paused" + +#~ msgid "Committed DiSEqC command" +#~ msgstr "Committed DiSEqC command" + +#~ msgid "Configure if and how service type icons will be shown." +#~ msgstr "Configure if and how service type icons will be shown." + +#~ msgid "Configure if service picons will be shown in the servicelist." +#~ msgstr "Configure if service picons will be shown in the servicelist." + +#~ msgid "Configure the behavior of the 'pause' key when movie playback is already paused." +#~ msgstr "Configure the behavior of the 'pause' key when movie playback is already paused." + +#~ msgid "DiSEqC repeats" +#~ msgstr "DiSEqC repeats" + +#~ msgid "Goto specific data/time" +#~ msgstr "Goto specific data/time" + +#~ msgid "Memory positions" +#~ msgstr "Memory positions" + +#~ msgid "No satellite frontend found!!" +#~ msgstr "No satellite frontend found!!" + +#~ msgid "Open service list and select next channel" +#~ msgstr "Open service list and select next channel" + +#~ msgid "Open service list and select previous channel" +#~ msgstr "Open service list and select previous channel" + +#~ msgid "Press '0' to toggle internal/external PiP." +#~ msgstr "Press '0' to toggle internal/external PiP." + +#~ msgid "Remove timer" +#~ msgstr "Remove timer" + +#~ msgid "Send DiSEqC" +#~ msgstr "Send DiSEqC" + +#~ msgid "Show picons in servicelist" +#~ msgstr "Show picons in servicelist" + +#~ msgid "Switch next channel" +#~ msgstr "Switch next channel" + +#~ msgid "Tuning step size" +#~ msgstr "Tuning step size" + +#~ msgid "Uncommitted DiSEqC command" +#~ msgstr "Uncommitted DiSEqC command" + +#~ msgid "Zap back to service before satfinder?" +#~ msgstr "Zap back to service before satfinder?" + +#~ msgid "tuner is not supported" +#~ msgstr "tuner is not supported" diff --git a/po/es.po b/po/es.po new file mode 100644 index 0000000..52a4329 --- /dev/null +++ b/po/es.po @@ -0,0 +1,9873 @@ +# Spanish translations for Enigma2. +# +msgid "" +msgstr "" +"Project-Id-Version: enigma2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-07-21 19:08+0200\n" +"PO-Revision-Date: 2011-04-12 22:26+0200\n" +"Last-Translator: Jose Juan <jzapater@gmail.com>\n" +"Language-Team: none\n" +"Language: es\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Pootle 2.0.3\n" +"X-Poedit-Language: Spanish\n" +"X-Poedit-SourceCharset: iso-8859-1\n" +"X-Poedit-Country: SPAIN\n" + +# +msgid "" +"\n" +"Advanced options and settings." +msgstr "" +"\n" +"Opciones avanzadas y configuración." + +#, sfteam +msgid "Install cache server" +msgstr "Instalar cache server" + +#, sfteam +msgid "Cache Server type" +msgstr "Tipo de cahe server" + +# +msgid "" +"\n" +"After pressing OK, please wait!" +msgstr "" +"\n" +"Después de pulsar OK, espere!" + +msgid "" +"\n" +"Backup your receiver settings." +msgstr "" + +# +msgid "" +"\n" +"Edit the upgrade source address." +msgstr "" +"\n" +"Editar la dirección fuente de actualización." + +msgid "" +"\n" +"Manage extensions or plugins for your receiver" +msgstr "" + +msgid "" +"\n" +"Online update of your receiver software." +msgstr "" + +# +msgid "" +"\n" +"Press OK on your remote control to continue." +msgstr "" +"\n" +"Pulse OK en su mando para continuar." + +# +msgid "" +"\n" +"Restore your backups by date." +msgstr "" +"\n" +"Restaurar su backup for fecha." + +msgid "" +"\n" +"Restore your receiver settings." +msgstr "" + +msgid "" +"\n" +"Restore your receiver with a new firmware." +msgstr "" + +# +msgid "" +"\n" +"Scan for local extensions and install them." +msgstr "" +"\n" +"Busca extensiones locales e instálalas." + +# +msgid "" +"\n" +"Select your backup device.\n" +"Current device: " +msgstr "" +"\n" +"Seleccione su dispositivo de backup.\n" +"Dispositivo actual:" + +# +msgid "" +"\n" +"View, install and remove available or installed packages." +msgstr "" +"\n" +"Ver, instalar y eliminar paquetes disponibles o instalados." + +msgid " (PiP)" +msgstr "" + +msgid " (Radio)" +msgstr "" + +msgid " (TV)" +msgstr "" + +msgid " (disabled)" +msgstr "" + +msgid " (higher than any auto)" +msgstr "" + +msgid " (higher than rotor any auto)" +msgstr "" + +msgid " (lower than any auto)" +msgstr "" + +# +msgid " extensions." +msgstr "extensiones." + +msgid " ms" +msgstr "ms" + +# +msgid " packages selected." +msgstr "paquetes seleccionados." + +# +msgid " updates available." +msgstr "actualizaciones disponibles." + +#. TRANSLATORS: short time representation hour:minute +#, python-format +msgid "%2d:%02d" +msgstr "" + +#. TRANSLATORS: full time representation hour:minute:seconds +#, python-format +msgid "%2d:%02d:%02d" +msgstr "" + +msgid "%A %d %B" +msgstr "" + +#. TRANSLATORS: long date representations dayname daynum monthname in strftime() format! See 'man strftime' +msgid "%A %e %B" +msgstr "" + +#. TRANSLATORS: full date representation dayname daynum monthname year in strftime() format! See 'man strftime' +msgid "%A %e %B %Y" +msgstr "" + +# +msgid "%H:%M" +msgstr "%H:%M" + +#. TRANSLATORS: short date representation short dayname daynum short monthname in strftime() format! See 'man strftime' +msgid "%a %e/%m" +msgstr "" + +#. TRANSLATORS: long date representation short dayname daynum short monthname hour:minute in strftime() format! See 'man strftime' +msgid "%a %e/%m %-H:%M" +msgstr "" + +# +#. TRANSLATORS: Intermediate scanning result, '%d' channel(s) have been found so far +#, fuzzy, python-format +msgid "%d channel found" +msgid_plural "%d channels found" +msgstr[0] "¡%d canales encontrados!" +msgstr[1] "¡%d canales encontrados!" + +#, python-format +msgid "%d file" +msgid_plural "%d files" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "" +msgstr[1] "" + +# +#, fuzzy, python-format +msgid "%d job is running in the background!" +msgid_plural "%d jobs are running in the background!" +msgstr[0] "¡%d trabajos está ejecutándose en segundo plano!" +msgstr[1] "¡%d trabajos está ejecutándose en segundo plano!" + +# +#, python-format +msgid "%d min" +msgstr "%d min" + +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d minutes" +msgstr "" + +#, python-format +msgid "%d pixel wide" +msgid_plural "%d pixels wide" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "" +msgstr[1] "" + +# +#, fuzzy, python-format +msgid "%d subdirectory" +msgid_plural "%d subdirectories" +msgstr[0] "directorio /var" +msgstr[1] "directorio /var" + +# +#, fuzzy, python-format +msgid "%d wireless network found!" +msgid_plural "%d wireless networks found!" +msgstr[0] "1 red wifi encontrada!" +msgstr[1] "1 red wifi encontrada!" + +msgid "%d-%b-%Y %-H:%M" +msgstr "" + +msgid "%d-%m" +msgstr "" + +# +msgid "%d.%B %Y" +msgstr "%d/%B/%Y" + +#. TRANSLATORS: VFD hour:minute daynum short monthname in strftime() format! See 'man strftime' +msgid "%k:%M %e/%m" +msgstr "" + +# +#, fuzzy, python-format +msgid "%s %s free disk space" +msgstr "espacio libre en disco" + +# +#, python-format +msgid "%s (%s)\n" +msgstr "%s (%s)\n" + +#. TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. +#, python-format +msgid "%s is no longer used. Should it be deleted?" +msgstr "" + +# +#, fuzzy, python-format +msgid "%s updated package available" +msgid_plural "%s updated packages available" +msgstr[0] "actualizaciones disponibles." +msgstr[1] "actualizaciones disponibles." + +#, python-format +msgid "%s%d min" +msgstr "" + +#, python-format +msgid "%s/%s: %s" +msgstr "" + +# +msgid "(ZAP)" +msgstr "(ZAPEAR)" + +# +msgid "(empty)" +msgstr "(vacío)" + +# +msgid "(show optional DVD audio menu)" +msgstr "(muestra ménu de audio de DVD)" + +# +msgid "service searching" +msgstr "Busqueda de canales" + +# +msgid "* Only available if more than one interface is active." +msgstr "* Solo disponible si más de un interface está activo" + +msgid "/s" +msgstr "" + +# +msgid "0" +msgstr "0" + +# +msgid "1" +msgstr "1" + +# +msgid "1.0" +msgstr "1.0" + +# +msgid "1.1" +msgstr "1.1" + +# +msgid "1.2" +msgstr "1.2" + +# +msgid "12V output" +msgstr "12V salida" + +# +msgid "13 V" +msgstr "13 V" + +# +msgid "16:10" +msgstr "16:10" + +# +msgid "16:10 Letterbox" +msgstr "16:10 Letterbox" + +# +msgid "16:10 PanScan" +msgstr "16:10 PanScan" + +# +msgid "16:9" +msgstr "16:9" + +# +msgid "16:9 Letterbox" +msgstr "16:9 Letterbox" + +# +msgid "16:9 always" +msgstr "siempre 16:9" + +# +msgid "18 V" +msgstr "18 V" + +# +msgid "2" +msgstr "2" + +msgid "23.976" +msgstr "" + +msgid "24" +msgstr "" + +msgid "25" +msgstr "" + +msgid "29.97" +msgstr "" + +# +msgid "3" +msgstr "3" + +msgid "30" +msgstr "" + +msgid "3d mode" +msgstr "" + +# +msgid "4" +msgstr "4" + +# +msgid "4:3" +msgstr "4:3" + +# +msgid "4:3 Letterbox" +msgstr "4:3 Letterbox" + +# +msgid "4:3 PanScan" +msgstr "4:3 PanScan" + +# +msgid "5" +msgstr "5" + +# +msgid "6" +msgstr "6" + +# +msgid "7" +msgstr "7" + +# +msgid "8" +msgstr "8" + +# +msgid "9" +msgstr "9" + +#, python-format +msgid ": %s" +msgstr "" + +# +msgid "<Current movielist location>" +msgstr "<Localización actual de la lista de películas>" + +# +msgid "<Default movie location>" +msgstr "<Localización de películas por defecto>" + +# +msgid "<Last timer location>" +msgstr "<Localización de la última grabación>" + +# +msgid "<unknown>" +msgstr "<desconocido>" + +# +msgid "??" +msgstr "??" + +# +msgid "A" +msgstr "A" + +# +#, fuzzy, python-format +msgid "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" +msgstr "" +"El fichero de configuración (%s) fue modificado desde la Instalación.\n" +"¿Quiere conservar su versión?" + +# +#, python-format +msgid "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" +msgstr "" +"El fichero de configuración (%s) fue modificado desde la Instalación.\n" +"¿Quiere conservar su versión?" + +msgid "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" + +msgid "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" + +# +msgid "A graphical EPG for all services of an specific bouquet" +msgstr "Un EPG gráfico para todos los canales de una lista específica" + +# +#, python-format +msgid "" +"A record has been started:\n" +"%s" +msgstr "" +"Una grabación ha comenzado:\n" +"%s" + +# +msgid "" +"A recording is currently running.\n" +"What do you want to do?" +msgstr "" +"Una grabación está actualmente ejecutándose.\n" +"¿Qué quiere hacer?" + +# +msgid "A recording is currently running. Please stop the recording before trying to configure the positioner." +msgstr "Una grabación se está ejecutando. Por favor, pare la grabación antes de intentar configurar el motor." + +msgid "A recording is currently running. Please stop the recording before trying to scan." +msgstr "" + +# +msgid "A recording is currently running. Please stop the recording before trying to start the satfinder." +msgstr "Una grabación se está ejecutando. Por favor, pare la grabación antes de intentar el buscador de satélites." + +# +#, python-format +msgid "A required tool (%s) was not found." +msgstr "Una herramienta obligatoria (%s) no fue encontrada" + +# +msgid "A search for available updates is currently in progress." +msgstr "Una búsqueda de actualizaciones disponibles está en proceso." + +# +msgid "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" +msgstr "" +"Un segundo interface configurado ha sido encontrado.\n" +"\n" +"¿Quiere desabilitar el segundo interface de red?" + +msgid "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" + +msgid "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" + +# +msgid "A small overview of the available icon states and actions." +msgstr "Una pequeña vista de los iconos de estados y acciones." + +# +msgid "" +"A timer failed to record!\n" +"Disable TV and try again?\n" +msgstr "" +"¡Ha fallado la grabación!\n" +"¿Desactivar TV y probar otra vez?\n" + +# +#, fuzzy +msgid "A/V settings" +msgstr "Configurar A/V" + +msgid "AC3/DTS downmix" +msgstr "" + +# +msgid "Abort" +msgstr "Abortar" + +# +msgid "About" +msgstr "Acerca de" + +# +msgid "About..." +msgstr "Acerca de..." + +# +msgid "Accesspoint:" +msgstr "Punto de Acceso:" + +# +msgid "Action on long powerbutton press" +msgstr "Acción dejando pulsado el encendido" + +msgid "Action on short powerbutton press" +msgstr "Acción al pulsar poco rato el botón de power" + +# +msgid "Activate Picture in Picture" +msgstr "Activar PiP" + +# +#, fuzzy +msgid "Activate current configuration" +msgstr "activar configuración actual" + +# +msgid "Activate network settings" +msgstr "Activar configuración de red" + +# +#, fuzzy +msgid "Activate the configured network settings." +msgstr "Activar configuración de red" + +# +msgid "Adapter settings" +msgstr "Configuración de adaptador" + +# +msgid "Add" +msgstr "Añadir" + +# +msgid "Add Bookmark" +msgstr "Añadir Marcador" + +# +msgid "Add a mark" +msgstr "Añadir marca" + +# +#, fuzzy +msgid "Add a nameserver entry" +msgstr "añadir un servidor de nombres" + +# +msgid "Add a new title" +msgstr "Añadir un nuevo título" + +# +#, fuzzy +msgid "Add bookmark" +msgstr "añadir marcador" + +# +#, fuzzy +msgid "Add directory to playlist" +msgstr "añadir el directorio a la lista" + +# +#, fuzzy +msgid "Add file to playlist" +msgstr "añadir fichero a la lista" + +# +#, fuzzy +msgid "Add files to playlist" +msgstr "añadir ficheros a la lista de reproducción" + +msgid "Add more details to the crash log" +msgstr "" + +# +#, fuzzy +msgid "Add provider" +msgstr "añadir Proveedor" + +# +#, fuzzy +msgid "Add recording (enter recording duration)" +msgstr "añadir grabación (introduzca duración)" + +# +#, fuzzy +msgid "Add recording (enter recording endtime)" +msgstr "Añadir grabación (introduzca hora fin)" + +# +#, fuzzy +msgid "Add recording (indefinitely)" +msgstr "añadir grabación (indefinidamente)" + +# +#, fuzzy +msgid "Add recording (stop after current event)" +msgstr "añadir grabación (sólo evento actual)" + +# +#, fuzzy +msgid "Add service" +msgstr "añadir Canal" + +# +msgid "Add timer" +msgstr "Grabar" + +# +msgid "Add title" +msgstr "Añadir título" + +# +msgid "Add to bouquet" +msgstr "Añadir a la lista" + +# +msgid "Add to favourites" +msgstr "Añadir a favoritos" + +msgid "Add/remove change timer for current event" +msgstr "" + +msgid "Adjust 3D settings" +msgstr "" + +# +msgid "Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens." +msgstr "Ajuste la configuración del color de forma que todas las sombras de los colores se distingan, pero que estén tan saturadas como sea posible. Si está contento con el resultado, pulse OK para cerrar el ajuste de video fino, o use una tecla numérica para seleccionar otras pantallas de test." + +msgid "Advanced" +msgstr "" + +# +#, fuzzy +msgid "Advanced options" +msgstr "Opciones avanzadas" + +# +msgid "Advanced restore" +msgstr "Restauración avanzada" + +# +#, fuzzy +msgid "Advanced software" +msgstr "Software Avanzado" + +# +#, fuzzy +msgid "Advanced software plugin" +msgstr "Plugin de Sofware Avanzado" + +# +#, fuzzy +msgid "Advanced video enhancement setup" +msgstr "Configuración Mejorada de Vido Avanzado" + +# +#, fuzzy +msgid "Advanced video setup" +msgstr "Configuración de video avanzada" + +# +msgid "After event" +msgstr "Después del evento" + +# +msgid "Album" +msgstr "Album" + +msgid "Alignment of events" +msgstr "" + +msgid "Alignment of service names" +msgstr "" + +# +msgid "All" +msgstr "Todo" + +msgid "All ages" +msgstr "" + +msgid "All satellites 1 (USALS)" +msgstr "" + +msgid "All satellites 2 (USALS)" +msgstr "" + +msgid "All satellites 3 (USALS)" +msgstr "" + +msgid "All satellites 4 (USALS)" +msgstr "" + +msgid "Allocate" +msgstr "" + +msgid "Allocate unused memory index" +msgstr "" + +msgid "Allow quit movieplayer with exit" +msgstr "" + +msgid "Allow subtitle language to equal audio language" +msgstr "" + +msgid "Allow subtitles for hearing impaired" +msgstr "" + +# +msgid "Alpha" +msgstr "Alpha" + +# +#, fuzzy +msgid "Alternative" +msgstr "añadir alternativas" + +# +#, fuzzy +msgid "Alternative numbering mode" +msgstr "Modo de radio alternativo" + +# +msgid "Alternative services tuner priority" +msgstr "Prioridad de sintonizadores alternativa" + +msgid "Always ask" +msgstr "Preguntar siempre" + +msgid "Always hide infobar" +msgstr "" + +# +msgid "An empty filename is illegal." +msgstr "Un nombre de fichero vacío es ilegal." + +# +#, fuzzy +msgid "An error occurred while downloading the packetlist. Please try again." +msgstr "Hay un error descargando la lista de paquetes. Intente de nuevo." + +# +msgid "An unknown error occurred!" +msgstr "¡Ocurrió un error desconocido!" + +msgid "And will put your receiver in standby over " +msgstr "" + +msgid "Any activity" +msgstr "" + +# +msgid "Arabic" +msgstr "Arábigo" + +msgid "Are you sure to remove this entry?" +msgstr "" + +# +msgid "" +"Are you sure you want to activate this network configuration?\n" +"\n" +msgstr "" +"¿Está seguro de que quiere activar esta configuración de red?\n" +"\n" + +# +#, fuzzy +msgid "" +"Are you sure you want to delete\n" +"the following backup:\n" +msgstr "" +"Está seguro de querer borrar\n" +"el siguiente backup:\n" + +# +msgid "Are you sure you want to exit this wizard?" +msgstr "¿Está seguro que quiere salir de este asistente?" + +# +msgid "" +"Are you sure you want to restart your network interfaces?\n" +"\n" +msgstr "" +"Quiere reiniciar sus adaptadores de red?\n" +"\n" + +# +#, fuzzy, python-format +msgid "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" +msgstr "¿Está seguro que quiere restaurar su backup Enigma2?Enigma2 reiniciará después de restaurar" + +# +#, fuzzy +msgid "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" +msgstr "¿Está seguro que quiere restaurar su backup Enigma2?Enigma2 reiniciará después de restaurar" + +# +msgid "Artist" +msgstr "Artista" + +msgid "Arts/Culture" +msgstr "" + +# +msgid "Ask user" +msgstr "Preguntar al usuario" + +# +#, fuzzy +msgid "Aspect ratio" +msgstr "Relación de aspecto" + +# +#, fuzzy +msgid "Assigned CAIds:" +msgstr "CAIds asignados:" + +# +#, fuzzy +msgid "Assigned services/provider:" +msgstr "Canales/Proveedor asignados:" + +# +#, fuzzy +msgid "At beginning" +msgstr "Comenzar desde el inicio" + +msgid "At end" +msgstr "" + +# +msgid "Audio" +msgstr "Sonido" + +msgid "Audio PID" +msgstr "" + +msgid "Audio language selection 1" +msgstr "" + +msgid "Audio language selection 2" +msgstr "" + +msgid "Audio language selection 3" +msgstr "" + +msgid "Audio language selection 4" +msgstr "" + +# +#, fuzzy +msgid "Audio options..." +msgstr "Opciones de sonido..." + +# +#, fuzzy, python-format +msgid "Audio track (%s) format" +msgstr "format de pista de audio (%s)" + +# +#, fuzzy, python-format +msgid "Audio track (%s) language" +msgstr "idioma de pista de audio (%s)" + +# +msgid "Author: " +msgstr "Autor:" + +# +msgid "Authoring mode" +msgstr "Modo autorizativo" + +# +#. TRANSLATORS: (aspect ratio policy: always try to display as fullscreen, when there is no content (black bars) on left/right, even if this breaks the aspect. +msgid "Auto" +msgstr "Auto" + +# +msgid "Auto chapter split every ? minutes (0=never)" +msgstr "Dividir capítulo cada ? minutos (0=nunca)" + +# +msgid "Auto flesh" +msgstr "Auto refresco" + +msgid "Auto focus" +msgstr "" + +msgid "Auto focus commencing ..." +msgstr "" + +msgid "Auto language selection" +msgstr "" + +# +msgid "Auto scart switching" +msgstr "Intercambio a euroconector auto" + +# +msgid "Automatic" +msgstr "Automático" + +# +#, fuzzy +msgid "Automatic scan" +msgstr "Búsqueda automática" + +msgid "Automatically start timeshift after" +msgstr "" + +msgid "Automatically turn on external subtitles" +msgstr "" + +# +msgid "Available format variables" +msgstr "Variables de formato disponibles" + +# +msgid "B" +msgstr "B" + +# +msgid "BER" +msgstr "BER" + +# +msgid "BER:" +msgstr "BER:" + +# +msgid "Back" +msgstr "Atrás" + +# +msgid "Background" +msgstr "Segundo plano" + +# +#, fuzzy +msgid "Background color" +msgstr "color de fondo" + +msgid "Background delete option" +msgstr "" + +msgid "Background delete speed" +msgstr "" + +# +#, fuzzy +msgid "Backup completed." +msgstr "Backup fallido." + +# +msgid "Backup failed." +msgstr "Backup fallido." + +# +msgid "Backup is running..." +msgstr "Backup está ejecutándose..." + +# +msgid "Backup system settings" +msgstr "Configuración sistema de Backup" + +# +msgid "Band" +msgstr "Banda" + +# +msgid "Bandwidth" +msgstr "Ancho de banda" + +msgid "Basque" +msgstr "" + +# +msgid "Begin time" +msgstr "Hora inicio" + +msgid "Behavior of 'pause and ok' when paused" +msgstr "" + +# +msgid "Behavior of 0 key in PiP-mode" +msgstr "Tecla 0 en el modo PiP" + +# +msgid "Behavior when a movie is started" +msgstr "Cuando una película ha comenzado" + +# +msgid "Behavior when a movie is stopped" +msgstr "Cuando una película ha parado" + +# +msgid "Behavior when a movie reaches the end" +msgstr "Cuando una película ha terminado" + +msgid "Big PiP" +msgstr "" + +# +msgid "Bitrate:" +msgstr "Velocidad:" + +msgid "Black screen" +msgstr "" + +msgid "Black screen till locked" +msgstr "" + +# +msgid "Block noise reduction" +msgstr "Reducción de bloque de ruido" + +# +msgid "Blue boost" +msgstr "Impulso azul" + +# +msgid "Bookmarks" +msgstr "Marcadores" + +# +msgid "Brightness" +msgstr "Brillo" + +msgid "Bulgarian" +msgstr "" + +# +msgid "Burn DVD" +msgstr "Grabar DVD" + +# +#, fuzzy, python-format +msgid "Burn audio track (%s)" +msgstr "grabar pista de audio (%s)" + +# +msgid "Burn existing image to DVD" +msgstr "Graba una imagen existente a DVD" + +msgid "Burn to DVD" +msgstr "Grabar a DVD..." + +# +msgid "Bus: " +msgstr "Bus: " + +msgid "By default, SNR will be shown in dB (when supported by the tuner). This setting forces SNR to be shown as a percentage instead." +msgstr "" + +# +msgid "C" +msgstr "C" + +# +msgid "C-Band" +msgstr "Banda-C" + +msgid "CH" +msgstr "" + +# +msgid "CI assignment" +msgstr "Asignación CI" + +# +msgid "CVBS" +msgstr "CVBS" + +# +msgid "Cable" +msgstr "Cable" + +msgid "Cable Scan" +msgstr "" + +# +#, fuzzy +msgid "Cache thumbnails" +msgstr "Cache de Miniaturas" + +msgid "Calculate" +msgstr "" + +msgid "Calculate all positions" +msgstr "" + +msgid "Calculation complete" +msgstr "" + +msgid "Calibrate" +msgstr "" + +msgid "Can be used for different fps between external subtitles and video." +msgstr "" + +# +msgid "Cancel" +msgstr "Cancelar" + +msgid "Cannot determine" +msgstr "" + +msgid "Cannot find any signal ..., aborting !" +msgstr "" + +msgid "Cannot move files on a different disk or system to the trash can" +msgstr "" + +msgid "Cannot move to trash can" +msgstr "" + +# +msgid "Capacity: " +msgstr "Capacidad: " + +# +msgid "Card" +msgstr "Tarjeta" + +msgid "Cascade PiP" +msgstr "" + +msgid "Center DVB subtitles" +msgstr "" + +msgid "Center time-labels and remove date" +msgstr "" + +# +msgid "Change bouquets in quickzap" +msgstr "Cambiar de lista en zapin rápido" + +# +msgid "Change pin code" +msgstr "Cambiar código pin" + +# +#, fuzzy +msgid "Change recording (duration)" +msgstr "cambiar la grabación (duración)" + +# +#, fuzzy +msgid "Change recording (endtime)" +msgstr "cambiar grabación (hora fin)" + +msgid "Change repeat and delay settings?" +msgstr "" + +msgid "Change service PIN" +msgstr "Cambiar el PIN de servicio" + +msgid "Change service PINs" +msgstr "Cambiar los PINs de servicio" + +msgid "Change setup PIN" +msgstr "Cambiar el PIN de configuración" + +# +msgid "Change step size" +msgstr "Cambiar tamaño" + +msgid "Change timer" +msgstr "" + +msgid "Changelog" +msgstr "Novedades" + +# +msgid "Channel" +msgstr "Canal" + +# +#, truncalinos +msgid "Channel list type" +msgstr "Escojer lista" + +# +msgid "Channel not in services list" +msgstr "El canal no está en la lista" + +# +#, fuzzy +msgid "Channel selection" +msgstr "Selección de Canal" + +# +msgid "Channel:" +msgstr "Canal:" + +# +msgid "Channellist menu" +msgstr "Menú lista de canales" + +# +msgid "Chap." +msgstr "Cap." + +# +msgid "Chapter" +msgstr "Capítulo" + +# +msgid "Chapter:" +msgstr "Capítulo:" + +# +msgid "Check" +msgstr "Checkear" + +msgid "Skip internet connection ckeck (disables automatic package installation)" +msgstr "omitir la conexión a Internet (desactiva la instalación automática del paquete)" + +msgid "Check the internet connection" +msgstr "Compruebe la conexión a Internet" + +msgid "Check the internet connection again" +msgstr "Compruebe la conexión a Internet de nuevo" + +# +#, fuzzy +msgid "Checking filesystem..." +msgstr "Chequear sistema de archivos..." + +msgid "Checking the internet connection" +msgstr "Comprobación de la conexión a Internet" + +#, python-format +msgid "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" +msgstr "" + +msgid "Children/Youth" +msgstr "" + +msgid "Choose which tuner to configure." +msgstr "" + +# +msgid "Circular left" +msgstr "Izda circular" + +# +msgid "Circular right" +msgstr "Dcha circular" + +# +msgid "Cleanup" +msgstr "Limpiar" + +msgid "Clear" +msgstr "" + +# +msgid "Clear before scan" +msgstr "Limpiar antes de buscar" + +msgid "Clear fixed" +msgstr "" + +# +msgid "Clear log" +msgstr "Borrar log" + +# +#, fuzzy +msgid "Clear playlist" +msgstr "limpiar lista" + +# +msgid "Close" +msgstr "Cerrar" + +msgid "Close PiP on exit" +msgstr "" + +# +msgid "Close title selection" +msgstr "Cerrar selección de título" + +msgid "Code rate HP" +msgstr "" + +msgid "Code rate LP" +msgstr "" + +# +msgid "Coderate HP" +msgstr "Velocidad de código HP" + +# +msgid "Coderate LP" +msgstr "Velocidad de código LP" + +# +msgid "Collection name" +msgstr "Nombre de la colección" + +# +msgid "Collection settings" +msgstr "Configuración de la colección" + +# +#, fuzzy +msgid "Color format" +msgstr "Formato de Color" + +# +msgid "Command execution..." +msgstr "Ejecución comando:" + +# +msgid "Command order" +msgstr "Orden de comando" + +# +msgid "Common Interface" +msgstr "Interface común" + +# +#, fuzzy +msgid "Common Interface assignment" +msgstr "Asignación de Interface Común" + +# +msgid "Communication" +msgstr "Comunicación" + +# +#, fuzzy +msgid "Compact flash" +msgstr "Compact Flash" + +# +msgid "Complete" +msgstr "Completado" + +# +msgid "Complex (allows mixing audio tracks and aspects)" +msgstr "Complejo (permite mexclar pistas de audio y aspectos)" + +msgid "Composition of the recording filenames" +msgstr "Composición de los nombre de ficheros de grabación" + +# +#, fuzzy +msgid "Configuration mode" +msgstr "Modo Configuración" + +# +#, fuzzy, python-format +msgid "Configuration mode: %s" +msgstr "Modo Configuración" + +# +#, fuzzy +msgid "Configuration..." +msgstr "Configuración de Red..." + +msgid "Configure an additional delay to improve external subtitle synchronisation." +msgstr "" + +msgid "Configure an additional delay to improve subtitle synchronisation." +msgstr "" + +msgid "Configure for how long the infobar will remain visible after activation." +msgstr "" + +msgid "Configure for how many minutes finished events should remain visible in the EPG. Useful when you need information about an event which has just finished, or has been delayed." +msgstr "" + +msgid "Configure how recording filenames are constructed." +msgstr "" + +msgid "Configure how the fan should operate" +msgstr "" + +msgid "Configure if and how crypto icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how long the latest service in the PiP will be remembered." +msgstr "" + +msgid "Configure if and how service type icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how wide columns will be shown in the channel selection list." +msgstr "" + +msgid "Configure if service picons will be shown in the channel selection list." +msgstr "" + +# +msgid "Configure interface" +msgstr "Configurar interfaz" + +# +msgid "Configure nameservers" +msgstr "Configurar DNSs" + +msgid "Configure on which devices the background delete option should be used." +msgstr "" + +# +#, fuzzy +msgid "Configure remote control type" +msgstr "Tipo de control de adultos" + +msgid "Configure the DiSEqC mode for this LNB." +msgstr "" + +# +#, fuzzy +msgid "Configure the IP address." +msgstr "Configurar interfaz" + +msgid "Configure the aspect ratio of the screen." +msgstr "" + +msgid "Configure the behavior of the 'pause and ok' key when movie playback is already paused." +msgstr "" + +# +#, fuzzy +msgid "Configure the behavior when movie playback is manually stopped." +msgstr "Cuando una película ha parado" + +# +#, fuzzy +msgid "Configure the behavior when movie playback is started." +msgstr "Cuando una película ha comenzado" + +msgid "Configure the behavior when reaching the end of a movie, during movie playback." +msgstr "" + +msgid "Configure the border width of the subtitles. The dark border makes the subtitles easier to read on a light background." +msgstr "" + +msgid "Configure the brightness level of the front panel display during standby." +msgstr "" + +msgid "Configure the brightness level of the front panel display." +msgstr "" + +msgid "Configure the color of the external subtitles, alternative (normal in white, italic in yellow, bold in cyan, underscore in green), white or yellow." +msgstr "" + +msgid "Configure the color of the teletext subtitles." +msgstr "" + +msgid "Configure the contrast level of the front panel display." +msgstr "" + +msgid "Configure the cursor behaviour in the channel selection list. When opening the channel selection list you can keep on the current service or already select up/down and you are able to revert the B+/B- buttons." +msgstr "" + +msgid "Configure the duration in hours the receiver should go to standby when the receiver is not controlled." +msgstr "" + +msgid "Configure the duration in minutes for the screensaver." +msgstr "" + +msgid "Configure the duration in minutes for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +msgstr "" + +msgid "Configure the duration when the receiver should go to shut down in case the receiver is in standby mode." +msgstr "" + +msgid "Configure the first audio language (highest priority)." +msgstr "" + +msgid "Configure the first subtitle language (highest priority)." +msgstr "" + +msgid "Configure the font size of the subtitles." +msgstr "" + +msgid "Configure the fourth audio language." +msgstr "" + +# +#, fuzzy +msgid "Configure the fourth subtitle language." +msgstr "cambiar al siguiente idioma de subtítulos" + +msgid "Configure the function of a long press on the power button." +msgstr "" + +msgid "Configure the function of a short press on the power button." +msgstr "" + +msgid "Configure the function of the '0' button do when PIP is active." +msgstr "" + +# +#, fuzzy +msgid "Configure the gateway." +msgstr "Configurar interfaz" + +msgid "Configure the general audio delay of Dolby Digital sound tracks." +msgstr "" + +msgid "Configure the general audio delay of stereo sound tracks." +msgstr "" + +msgid "Configure the hard disk drive to go to standby after the specified idle time." +msgstr "" + +msgid "Configure the horizontal alignment of the subtitles." +msgstr "" + +msgid "Configure the initial fast forward speed. When you press the fast forward button, winding will start at this speed." +msgstr "" + +msgid "Configure the initial rewind speed. When you press the rewind button, winding will start at this speed." +msgstr "" + +msgid "Configure the latitude of your location." +msgstr "" + +msgid "Configure the longitude of your location." +msgstr "" + +msgid "Configure the minimum amount of disk space to be available for recordings. When the amount of space drops below this value, deleted items will be removed from the trash can." +msgstr "" + +# +#, fuzzy +msgid "Configure the nameserver (DNS)." +msgstr "Configurar DNSs" + +# +#, fuzzy +msgid "Configure the netmask." +msgstr "Configurar interfaz" + +msgid "Configure the number of days after which items are automaticaly removed from the trash can." +msgstr "" + +msgid "Configure the number of days old timers are kept before they are automatically removed from the timer list." +msgstr "" + +msgid "Configure the offline decoding delay in milliseconds. The configured delay is observed at each control word parity change." +msgstr "" + +msgid "Configure the possible fast forward speeds." +msgstr "" + +msgid "Configure the possible rewind speeds." +msgstr "" + +msgid "Configure the primary EPG language." +msgstr "" + +msgid "Configure the refresh rate of the screen." +msgstr "" + +msgid "Configure the screen resolution in PC output mode." +msgstr "" + +msgid "Configure the second audio language." +msgstr "" + +# +#, fuzzy +msgid "Configure the second subtitle language." +msgstr "cambiar al siguiente idioma de subtítulos" + +msgid "Configure the secondary EPG language." +msgstr "" + +msgid "Configure the sharpness of the video scaling." +msgstr "" + +msgid "Configure the skip time interval for the '1'/'3' buttons." +msgstr "" + +msgid "Configure the skip time interval for the '4'/'6' buttons." +msgstr "" + +msgid "Configure the skip time interval for the '7'/'9' buttons." +msgstr "" + +# +#, fuzzy +msgid "Configure the slow motion speeds." +msgstr "Velocidades lentas" + +msgid "Configure the source of the frontend data as shown on the infobars. 'Settings' is as stored on the settings. 'Tuner' is as reported by the tuner." +msgstr "" + +msgid "Configure the speed of the background deletion process. Lower speed will consume less hard disk drive performance." +msgstr "" + +msgid "Configure the speed of the fan" +msgstr "" + +msgid "Configure the subtitle delay when timing information is not available." +msgstr "" + +msgid "Configure the third audio language." +msgstr "" + +# +#, fuzzy +msgid "Configure the third subtitle language." +msgstr "cambiar al siguiente idioma de subtítulos" + +msgid "Configure the transparency of the OSD." +msgstr "" + +msgid "Configure the transparency of the black background of graphical DVB subtitles." +msgstr "" + +# +#, fuzzy +msgid "Configure the tuner mode." +msgstr "Modo Configuración" + +msgid "Configure the type of status indication icons shown in the movielist." +msgstr "" + +msgid "Configure the vertical position of the subtitles, measured from the bottom of the screen." +msgstr "" + +msgid "Configure the video output mode (or resolution)." +msgstr "" + +msgid "Configure the way in which the receiver changes channels." +msgstr "" + +msgid "Configure where completed timers show up in the timer list." +msgstr "" + +msgid "Configure whether (and for how long) a second infobar will be shown when OK is pressed twice. The second infobar contains additional information about the current channel." +msgstr "" + +msgid "Configure whether multi channel sound tracks should be downmixed to stereo." +msgstr "" + +msgid "Configure whether or not an icon should be shown when your motorized dish is moving." +msgstr "" + +msgid "Configure which access level to use for the configuration menu. Expert level gives access to all items." +msgstr "" + +msgid "Configure which color format should be used on the SCART output." +msgstr "" + +msgid "Configure which tuner for recordings will be preferred, when more than one tuner is available." +msgstr "" + +msgid "Configure which tuner type will be preferred, when the same service is available on different types of tuners." +msgstr "" + +msgid "Configure which tuner will be preferred, when more than one tuner is available. If set to 'auto' the system will give priority to the tuner having the lowest number of channels/satellites." +msgstr "" + +# +msgid "Configure your internal LAN" +msgstr "Configurar su RED interna" + +# +msgid "Configure your network again" +msgstr "Configurar su red de nuevo" + +msgid "Configure your network settings, and press OK to start the scan" +msgstr "" + +# +msgid "Configure your wireless LAN again" +msgstr "Configurar su RED inalámbrica otra vez" + +msgid "Configures which video output connector will be used." +msgstr "" + +# +msgid "Configuring" +msgstr "Configurando" + +# +msgid "Conflicting timer" +msgstr "Grabación en conflicto" + +# +msgid "Connect" +msgstr "Conectar" + +# +#, fuzzy +msgid "Connect to a wireless network" +msgstr "Conectar a una Red Inalámbrica" + +msgid "Connected satellites" +msgstr "" + +# +msgid "Connected to" +msgstr "Conectado a" + +# +msgid "Connected!" +msgstr "¡Conectado!" + +# +msgid "Constellation" +msgstr "Constelación" + +# +msgid "Content does not fit on DVD!" +msgstr "¡Los contenidos no caben en un DVD!" + +# +msgid "Continue" +msgstr "Continuar" + +# +msgid "Continue in background" +msgstr "Continuar en segundo plano" + +# +#, fuzzy +msgid "Continue playback" +msgstr "Reproducción contínua" + +# +msgid "Continue playing" +msgstr "Reproducción contínua" + +msgid "Continues play (loop)" +msgstr "" + +# +msgid "Contrast" +msgstr "Contraste" + +msgid "Convert ext3 filesystem to ext4" +msgstr "" + +msgid "Convert ext3 to ext4" +msgstr "" + +msgid "Converting ext3 to ext4..." +msgstr "" + +msgid "Copy" +msgstr "" + +msgid "Could not connect to receiver .NFI image feed server:" +msgstr "" + +msgid "Could not find installed channel list." +msgstr "" + +#, sfteam +msgid "Install usb tdt" +msgstr "Instalar usb tdt?" + +#, sfteam +msgid "Tdt list type" +msgstr "Modelo de usb" + +# +#, fuzzy +msgid "Could not load medium! No disc inserted?" +msgstr "No puedo cargar el Medio! Hay disco insertado?" + +# +msgid "Could not open Picture in Picture" +msgstr "No puedo abrir el PiP" + +# +#, fuzzy, python-format +msgid "Could not record due to conflicting timer %s" +msgstr "No puedo grabar debido a un conflicto de programaciones %s" + +# +#, fuzzy, python-format +msgid "Could not record due to invalid service %s" +msgstr "No puedo grabar debido a un conflicto de programaciones %s" + +# +msgid "Create DVD-ISO" +msgstr "Crear DVD-ISO" + +msgid "Create more detailed crash log" +msgstr "" + +# +#, python-format +msgid "Creating directory %s failed." +msgstr "Falló la creación del directorio %s." + +# +#, fuzzy +msgid "Creating filesystem" +msgstr "Chequear sistema de archivos..." + +msgid "Creating partition" +msgstr "" + +# +msgid "Croatian" +msgstr "Croata" + +msgid "Current CEC address" +msgstr "" + +msgid "Current device: " +msgstr "Dispositivo actual:" + +msgid "Current event EPG" +msgstr "" + +#, python-format +msgid "Current mode: %s \n" +msgstr "" + +# +msgid "Current settings:" +msgstr "Configuración actual:" + +# +#, fuzzy +msgid "Current transponder" +msgstr "Transponder actual" + +# +msgid "Current value: " +msgstr "Valor actual:" + +# +msgid "Current version:" +msgstr "Versión actual:" + +msgid "Currently installed image" +msgstr "Imagen actualmente instalada" + +msgid "Currently the commit log cannot be retrieved - please try later again" +msgstr "" + +# +#, fuzzy +msgid "Custom skip time for '1'/'3' buttons" +msgstr "Tiempo a saltar para las teclas '1'/'3'" + +# +#, fuzzy +msgid "Custom skip time for '4'/'6' buttons" +msgstr "Tiempo a pasar para las teclas '4'/'6'" + +# +#, fuzzy +msgid "Custom skip time for '7'/'9' buttons" +msgstr "Tiempo a pasar para las teclas '7'/'9'" + +# +msgid "Customize" +msgstr "Configurar" + +msgid "Customize channel list cursor behavior" +msgstr "" + +# +msgid "Cut" +msgstr "Cortar" + +# +msgid "Cutlist editor..." +msgstr "Editor de listas de corte..." + +# +msgid "Czech" +msgstr "Checo" + +# +msgid "D" +msgstr "D" + +# +msgid "DHCP" +msgstr "DHCP" + +# +#, fuzzy +msgid "DMM advanced" +msgstr "avanzado" + +msgid "DMM normal" +msgstr "" + +msgid "DUAL LAYER DVD" +msgstr "DVD DOBLE CAPA" + +msgid "DVB subtitle black transparency" +msgstr "" + +msgid "DVB-C" +msgstr "" + +msgid "DVB-C ANNEX C" +msgstr "" + +# +msgid "DVB-S" +msgstr "DVB-S" + +# +msgid "DVB-S2" +msgstr "DVB-S2" + +msgid "DVB-T" +msgstr "" + +msgid "DVB-T2" +msgstr "" + +msgid "DVD data format" +msgstr "" + +# +#, fuzzy +msgid "DVD file browser" +msgstr "Examinar ficheros de DVD" + +# +msgid "DVD media toolbox" +msgstr "Barra de disco DVD" + +# +#, fuzzy +msgid "DVD player" +msgstr "Reproductor DVD" + +# +#, fuzzy +msgid "DVD titlelist" +msgstr "Lista de títulos de DVD" + +# +msgid "Danish" +msgstr "Danés" + +# +msgid "Date" +msgstr "Fecha" + +# +#, fuzzy +msgid "Date/time input" +msgstr "Entrada Fecha/Hora" + +# +#, fuzzy +msgid "Deep standby" +msgstr "Reposo profundo" + +# +msgid "Default" +msgstr "Por defecto" + +# +msgid "Default movie location" +msgstr "Ubicación por defecto de películas" + +# +#, fuzzy +msgid "Default settings" +msgstr "Parámetros por Defecto" + +msgid "Delay before key repeat starts:" +msgstr "" + +msgid "Delay for external subtitles" +msgstr "" + +# +msgid "Delete" +msgstr "Borrar" + +# +msgid "Delete entry" +msgstr "Borrar entrada" + +# +msgid "Delete failed!" +msgstr "¡Falló el borrado!" + +# +#, fuzzy +msgid "Delete file" +msgstr "borrar fichero" + +# +#, fuzzy +msgid "Delete playlist entry" +msgstr "borrar entrada en la lista de reproducción" + +# +#, fuzzy +msgid "Delete saved playlist" +msgstr "borrar lista de reproducción guardada" + +msgid "Delete timer" +msgstr "" + +# +#, fuzzy +msgid "Delete..." +msgstr "borrar..." + +msgid "Deleted" +msgstr "" + +msgid "Deleted items" +msgstr "" + +msgid "Depth" +msgstr "" + +msgid "Descramble http streams" +msgstr "" + +# +msgid "Description" +msgstr "Descripción" + +# +msgid "Deselect" +msgstr "Deseleccionar" + +msgid "Details for plugin: " +msgstr "Detalles del plugin:" + +# +msgid "Detected HDD:" +msgstr "HDD detectado:" + +# +msgid "Detected NIMs:" +msgstr "NIMs detectados:" + +msgid "Devicename:" +msgstr "" + +msgid "Devide" +msgstr "" + +# +msgid "DiSEqC" +msgstr "DiSEqC" + +msgid "DiSEqC 1.0 command" +msgstr "" + +msgid "DiSEqC 1.1 command" +msgstr "" + +msgid "DiSEqC 1.1 repeats" +msgstr "" + +# +msgid "DiSEqC A/B" +msgstr "DiSEqC A/B" + +# +msgid "DiSEqC A/B/C/D" +msgstr "DiSEqC A/B/C/D" + +# +msgid "DiSEqC mode" +msgstr "Modo DiSEqC" + +# +#, fuzzy, python-format +msgid "DiSEqC port %s: %s" +msgstr "Repetir DiSEqC" + +# +#, fuzzy +msgid "DiSEqC-tester settings" +msgstr "Configuración de DiSEqC-Tester" + +# +msgid "Dialing:" +msgstr "Marcando:" + +# +msgid "Digital contour removal" +msgstr "Borrar contorno digital" + +# +msgid "Direct playback of linked titles without menu" +msgstr "Reproduce los títulos enlazados sin menú" + +msgid "Directory" +msgstr "" + +# +#, fuzzy, python-format +msgid "Directory %s does not exist." +msgstr "No existe el directorio %s." + +#, python-format +msgid "Directory %s nonexistent." +msgstr "" + +# +msgid "Directory browser" +msgstr "Examinar directorios" + +#, python-format +msgid "Directory contains %d file(s) and %d sub-directories.\n" +msgstr "" + +# +#, fuzzy, python-format +msgid "Directory contains %s and %s." +msgstr "No existe el directorio %s." + +# +msgid "Disable" +msgstr "Desabilitar" + +# +msgid "Disable Picture in Picture" +msgstr "Desactivar PiP" + +msgid "Disable background scanning" +msgstr "" + +msgid "Disable timer" +msgstr "" + +# +msgid "Disabled" +msgstr "Desactivado" + +# +msgid "Disconnect" +msgstr "Desconectar" + +msgid "Disk space to reserve for recordings (in GB)" +msgstr "" + +# +msgid "Display 16:9 content as" +msgstr "Visualice los contenidos 16:9 como" + +# +msgid "Display 4:3 content as" +msgstr "Visualice los contenidos 4:3 como" + +# +msgid "Display >16:9 content as" +msgstr "Visualizar contenido >16:9" + +# +#, fuzzy +msgid "Display and userinterface" +msgstr "Pantalla e Interfaz de usuario" + +msgid "Display message before playing next movie" +msgstr "" + +# +#, fuzzy +msgid "Display setup" +msgstr "Configurar Pantalla" + +# +#, fuzzy +msgid "Do not change" +msgstr "no cambiar" + +# +#, fuzzy +msgid "Do not record" +msgstr "no grabar" + +# +#, fuzzy +msgid "Do nothing" +msgstr "no hacer nada" + +# +msgid "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" +msgstr "" +"Realmente quiere chequear el sistema de archivos?\n" +"¡Esto puede tardar mucho tiempo!" + +msgid "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" +msgstr "" + +# +#, python-format +msgid "Do you really want to delete %s?" +msgstr "¿Seguro que quiere borrar %s?" + +# +#, python-format +msgid "" +"Do you really want to download\n" +"the plugin \"%s\"?" +msgstr "" +"Seguro que quiere descargar\n" +"el plugin \"%s\"?" + +# +msgid "Do you really want to exit?" +msgstr "¿Realmente quiere salir?" + +msgid "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" +msgstr "" + +# +#, fuzzy, python-format +msgid "" +"Do you really want to remove\n" +"the plugin \"%s\"?" +msgstr "" +"Seguro que quiere descargar\n" +"el plugin \"%s\"?" + +# +#, python-format +msgid "Do you really want to remove directory %s from the disk?" +msgstr "¿Quiere borrar el directorio %s del disco?" + +# +#, python-format +msgid "Do you really want to remove your bookmark of %s?" +msgstr "¿Quiere borrar su marcador %s?" + +msgid "Do you want this?" +msgstr "" + +# +msgid "Do you want to burn this collection to DVD medium?" +msgstr "¿Quiere grabar esta colección a disco DVD?" + +# +msgid "Do you want to do a service scan?" +msgstr "¿Quiere hacer una búsqueda de canales?" + +# +msgid "Do you want to do another manual service scan?" +msgstr "¿Quiere hacer otra búsqueda manual?" + +#, python-format +msgid "Do you want to download the image to %s ?" +msgstr "¿Quiere descargar la imagen a %s?" + +# +#, fuzzy + + +# +msgid "Do you want to install the package:\n" +msgstr "Quiere instalar el paquete:\n" + +# +msgid "Do you want to play DVD in drive?" +msgstr "Ejecutar el DVD de la unidad?" + +# +msgid "Do you want to preview this DVD before burning?" +msgstr "¿Quiere prever este DVD antes de grabarlo?" + +msgid "Do you want to reboot your receiver?" +msgstr "" + +# +msgid "Do you want to remove the package:\n" +msgstr "Quiere eliminar el paquete:\n" + +# +msgid "Do you want to restore your settings?" +msgstr "¿Quiere restaurar su configuración?" + +# +msgid "Do you want to resume this playback?" +msgstr "¿Quiere continuar esta reproducción?" + +#, fuzzy, python-format +msgid "Do you want to update your receiver to %s?" +msgstr "¿Quiere descargar la imagen a %s?" + +msgid "Do you want to update your receiver?" +msgstr "" + +# +msgid "Do you want to upgrade the package:\n" +msgstr "Quiere actualizar el paquete:\n" + +# +msgid "Don't stop current event but disable coming events" +msgstr "No pare el evento actual, pero desactive los siguientes" + +# +#, fuzzy, python-format +msgid "Done - Installed, upgraded or removed %d package (%s)" +msgid_plural "Done - Installed, upgraded or removed %d packages (%s)" +msgstr[0] "Hecho - Instalado, actualizado o eliminados %d paquetes con %d errores" +msgstr[1] "Hecho - Instalado, actualizado o eliminados %d paquetes con %d errores" + +# +msgid "Download" +msgstr "Descargar" + +#, fuzzy, python-format +msgid "Download %s from server" +msgstr "Descargar %s desde el Servidor" + +msgid "Download .NFI-files for USB-flasher" +msgstr "Descargar ficheros .NFI para el USB-Flasher" + +# +#, fuzzy +msgid "Download plugins" +msgstr "Descargar Plugins" + +# +msgid "Downloadable new plugins" +msgstr "Nuevos plugins descargables" + +# +msgid "Downloadable plugins" +msgstr "Plugins descargables" + +# +msgid "Downloading" +msgstr "Descargando" + +# +msgid "Downloading plugin information. Please wait..." +msgstr "Descargando información del plugin. Espere..." + +# +msgid "Dutch" +msgstr "Alemán" + +# +msgid "Dynamic contrast" +msgstr "Contraste dinámico" + +# +msgid "E" +msgstr "E" + +msgid "EPG" +msgstr "" + +msgid "EPG language selection 1" +msgstr "" + +msgid "EPG language selection 2" +msgstr "" + +# +#, fuzzy +msgid "EPG selection" +msgstr "Selección EPG" + +msgid "EPG settings" +msgstr "" + +# +#, python-format +msgid "ERROR - failed to scan (%s)!" +msgstr "ERROR - ¡falló la búsqueda (%s)!" + +# +msgid "East" +msgstr "Este" + +msgid "East limit set" +msgstr "" + +# +msgid "Edit" +msgstr "Editar" + +# +msgid "Edit DNS" +msgstr "Editar DNS" + +msgid "Edit bouquets list" +msgstr "Editar lista de canales" + +# +msgid "Edit chapters of current title" +msgstr "Editar capítulos del título actual" + +# +msgid "Edit services list" +msgstr "Editar la lista de canales" + +# +msgid "Edit settings" +msgstr "Editar configuración" + +# +#, fuzzy +msgid "Edit the nameserver configuration of your receiver.\n" +msgstr "salir de la configuración de servidor de nombres" + +msgid "Edit the network configuration of your receiver.\n" +msgstr "" + +msgid "Edit timer" +msgstr "" + +# +msgid "Edit title" +msgstr "Editar título" + +# +msgid "Edit upgrade source url." +msgstr "Editar url de fuente de actualización." + +msgid "Education/Science/..." +msgstr "" + +# +msgid "Electronic Program Guide" +msgstr "Guía de Programación Electrónica" + +# +msgid "Enable" +msgstr "Activar" + +msgid "Enable 'neutrino' style channel select controlling" +msgstr "" + +msgid "Enable 'neutrino' style zap controlling" +msgstr "" + +# +msgid "Enable 5V for active antenna" +msgstr "Activar 5V para la antena activa" + +msgid "Enable EIT EPG" +msgstr "" + +msgid "Enable MHW EPG" +msgstr "" + +msgid "Enable Netmed EPG" +msgstr "" + +msgid "Enable OK for channel selection" +msgstr "" + +msgid "Enable ViaSat EPG" +msgstr "" + +msgid "Enable Virgin EPG" +msgstr "" + +msgid "Enable Wake On LAN" +msgstr "" + +msgid "Enable auto fast scan" +msgstr "" + +# +#, fuzzy +msgid "Enable bouquet selection in multi-EPG" +msgstr "habilitar edición de lista" + +msgid "Enable freesat EPG" +msgstr "" + +# +msgid "Enable multiple bouquets" +msgstr "Habilitar multiples listas" + +# +msgid "Enable parental control" +msgstr "Activar el control de adultos" + +msgid "Enable teletext caching" +msgstr "" + +msgid "Enable zapping with CH+/-, B+/-, P+/-" +msgstr "" + +# +msgid "Enabled" +msgstr "Activado" + +# +msgid "Encrypted: " +msgstr "Encriptado:" + +# +msgid "Encryption" +msgstr "Encriptación" + +# +#, fuzzy +msgid "Encryption key" +msgstr "Clave de Encriptación" + +# +#, fuzzy +msgid "Encryption key type" +msgstr "Tipo de clave de Encriptación" + +# +msgid "Encryption:" +msgstr "Encriptación:" + +# +msgid "End time" +msgstr "Hora fin" + +msgid "End time to ignore inactivity sleeptimer" +msgstr "" + +msgid "End time to ignore shutdown in standby" +msgstr "" + +# +msgid "English" +msgstr "Inglés" + +# +#, fuzzy +msgid "Enigma2 skin selector" +msgstr "enigma2 y red" + +# +msgid "Enter main menu..." +msgstr "Entre al menú principal..." + +msgid "Enter pin code" +msgstr "Introduzca código pin" + +# +msgid "Enter the service pin" +msgstr "Ponga el pin del canal" + +msgid "Equal to" +msgstr "" + +# +msgid "Error" +msgstr "Error" + +msgid "Error code" +msgstr "" + +# +msgid "Error executing plugin" +msgstr "Error ejecutando el plugin" + +# +#, python-format +msgid "" +"Error: %s\n" +"Retry?" +msgstr "" +"Error: %s\n" +"Reintentar?" + +# +msgid "Estonian" +msgstr "Estonio" + +msgid "Ethernet network interface" +msgstr "" + +msgid "Event font size (relative to skin size)" +msgstr "" + +# +#, fuzzy +msgid "Event view" +msgstr "Ver eventos" + +# +#, fuzzy +msgid "Event view menu" +msgstr "Ver eventos" + +msgid "Everywhere" +msgstr "" + +msgid "Exceeds dual layer medium!" +msgstr "¡Excede el disco de doble capa!" + +# +msgid "Execution finished!!" +msgstr "¡Ejecución terminó!" + +# +#, fuzzy +msgid "Execution progress:" +msgstr "Progreso de ejecución:" + +# +msgid "Exif" +msgstr "Exif" + +# +msgid "Exit" +msgstr "Salir" + +msgid "Exit EPG" +msgstr "" + +# +msgid "Exit editor" +msgstr "Salir del editor" + +msgid "Exit input device selection." +msgstr "Sale de la selección de dispositivo de entrada." + +msgid "Exit media player?" +msgstr "" + +# +#, fuzzy +msgid "Exit mediaplayer" +msgstr "salir del reproductor" + +# +#, fuzzy +msgid "Exit movie list" +msgstr "salir del menú de películas" + +# +#, fuzzy +msgid "Exit movie player?" +msgstr "salir del reproductor" + +# +#, fuzzy +msgid "Exit nameserver configuration" +msgstr "salir de la configuración de servidor de nombres" + +# +#, fuzzy +msgid "Exit network interface list" +msgstr "salir de la lista de interfaces de red" + +# +msgid "Exit network wizard" +msgstr "Salir del asistente de red" + +# +msgid "Exit the wizard" +msgstr "Salir del asistente" + +# +msgid "Expert" +msgstr "Experto" + +msgid "Extend sleeptimer 15 minutes" +msgstr "" + +# +msgid "Extended Software" +msgstr "Software Extendido" + +# +msgid "Extended Software Plugin" +msgstr "Plugin de Software Extendido" + +# +#, fuzzy +msgid "Extended network setup plugin..." +msgstr "Plugin de configuración de red extendido..." + +# +#, fuzzy +msgid "Extended setup..." +msgstr "Configuración avanzada..." + +# +msgid "Extensions" +msgstr "Extensiones" + +# +msgid "Extensions management" +msgstr "Manejo de Extensiones" + +msgid "External PiP" +msgstr "" + +msgid "External subtitle color" +msgstr "" + +msgid "Extra motor options" +msgstr "" + +# +msgid "FEC" +msgstr "FEC" + +msgid "FTA" +msgstr "" + +# +msgid "Factory reset" +msgstr "Reinicio de fábrica" + +# +msgid "Failed" +msgstr "Falló" + +msgid "Failed to write /tmp/positionersetup.log: " +msgstr "" + +# +#, python-format +msgid "Fan %d" +msgstr "Ventilador %d" + +# +#, python-format +msgid "Fan %d PWM" +msgstr "Ventilador %d PWM" + +# +#, fuzzy, python-format +msgid "Fan %d voltage" +msgstr "Ventilador %d Voltaje" + +msgid "Fan operation" +msgstr "" + +msgid "Fan speed" +msgstr "" + +# +msgid "Fast" +msgstr "Rápido" + +# +msgid "Fast DiSEqC" +msgstr "DiSEqC Rapido" + +msgid "Fast Scan" +msgstr "" + +# +msgid "Fast epoch" +msgstr "Época rápida" + +# +#, fuzzy +msgid "Fast forward speeds" +msgstr "Velocidades hacia delante" + +# +msgid "Favourites" +msgstr "Favoritos" + +msgid "File appears to be busy.\n" +msgstr "" + +#, fuzzy +msgid "Filesystem check" +msgstr "Chequear sistema de ficheros" + +msgid "Final position at" +msgstr "" + +msgid "Final position at index" +msgstr "" + +msgid "Fine movement" +msgstr "" + +# +msgid "Finetune" +msgstr "Ajuste fino" + +# +msgid "Finished" +msgstr "Terminado" + +# +msgid "Finished configuring your network" +msgstr "Termió de configurar su red" + +# +msgid "Finished restarting your network" +msgstr "Terminó reiniciando su red" + +# +msgid "Finnish" +msgstr "Finlandés" + +msgid "Fixed" +msgstr "" + +# +msgid "Flash" +msgstr "Flash" + +# +msgid "Flashing failed" +msgstr "Falló el flasheo" + +# +msgid "Following tasks will be done after you press OK!" +msgstr "¡Las siguientes tareas serán hechas después de pulsar OK!" + +# +msgid "Format" +msgstr "Formato" + +msgid "Forward volume keys" +msgstr "" + +# +msgid "Frame size in full view" +msgstr "Tamaño de trama en vista completa" + +# +msgid "French" +msgstr "Francés" + +# +msgid "Frequency" +msgstr "Frecuencia" + +# +msgid "Frequency bands" +msgstr "Bandas de frecuencia" + +# +msgid "Frequency scan step size(khz)" +msgstr "Tamaño de paso de frecuencia(khz)" + +# +msgid "Frequency steps" +msgstr "Pasos de frecuencia" + +msgid "Frequency:" +msgstr "" + +# +msgid "Fri" +msgstr "Vie" + +# +msgid "Friday" +msgstr "Viernes" + +msgid "From :" +msgstr "" + +# +#, python-format +msgid "Frontprocessor version: %d" +msgstr "Versión Frontprocessor: %d" + +msgid "Full transparency" +msgstr "" + +msgid "Fulview resulution" +msgstr "" + +msgid "Function of OK button" +msgstr "" + +msgid "Further Options" +msgstr "" + +# +msgid "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" +msgstr "" +"GUI necesita reiniciar para aplicar la nueva piel\n" +"¿Quiere Reiniciar el GUI ahora?" + +# +msgid "Gateway" +msgstr "Puerta de enlace" + +# +#, fuzzy +msgid "General AC3 delay" +msgstr "Pausa AC3 General" + +# +#, fuzzy +msgid "General PCM delay" +msgstr "Pausa PCM General" + +# +msgid "Genre" +msgstr "Género" + +# +msgid "German" +msgstr "Alemán" + +msgid "Get latest experimental image" +msgstr "Conseguir la última imagen experimental" + +msgid "Get latest release image" +msgstr "Conseguir la última version de la imagen " + +# +msgid "Getting plugin information. Please wait..." +msgstr "Leyendo información del complemento. Espere..." + +msgid "Go down the list" +msgstr "" + +msgid "Go to first movie or last item" +msgstr "" + +msgid "Go to first movie or top of list" +msgstr "" + +# +#, fuzzy +msgid "Go to first service" +msgstr "mover arriba la primera entrada" + +# +#, fuzzy +msgid "Go to last service" +msgstr "Proteger canales" + +# +#, fuzzy +msgid "Go to next event" +msgstr "mover abajo la entrada siguiente" + +# +#, fuzzy +msgid "Go to next page of service" +msgstr "Cambiar al subcanal siguiente" + +# +#, fuzzy +msgid "Go to previous event" +msgstr "mover arriba la entrada anterior" + +# +#, fuzzy +msgid "Go to previous page of service" +msgstr "Volver al canal anterior" + +msgid "Go up the list" +msgstr "" + +msgid "Goto" +msgstr "" + +# +msgid "Goto 0" +msgstr "Ir a 0" + +msgid "Goto :" +msgstr "" + +msgid "Goto X" +msgstr "" + +msgid "Goto index position" +msgstr "" + +msgid "Goto next day of events" +msgstr "" + +msgid "Goto next page of events" +msgstr "" + +# +msgid "Goto position" +msgstr "Ir a la posición" + +msgid "Goto previous day of events" +msgstr "" + +msgid "Goto previous page of events" +msgstr "" + +msgid "Goto specific date/time" +msgstr "" + +msgid "GotoX calibration" +msgstr "" + +msgid "GraphMultiEpg Settings" +msgstr "" + +# +msgid "Graphical Multi EPG" +msgstr "Multi EPG Gráfico" + +# +msgid "Greek" +msgstr "Griego" + +# +msgid "Green boost" +msgstr "Impulso verde" + +msgid "Guard interval" +msgstr "" + +msgid "HD list" +msgstr "" + +msgid "HDMI-CEC setup" +msgstr "" + +msgid "Handle standby from TV" +msgstr "" + +msgid "Handle wakeup from TV" +msgstr "" + +# +#, fuzzy +msgid "Hard disk" +msgstr "Disco duro" + +# +#, fuzzy +msgid "Hard disk setup" +msgstr "Configuración del disco duro" + +# +#, fuzzy +msgid "Hard disk standby after" +msgstr "Disco duro en reposo después" + +# +msgid "Harddisk" +msgstr "Disco duro" + +msgid "Hardware: " +msgstr "" + +msgid "Hebrew" +msgstr "" + +msgid "Helps setting up your dish" +msgstr "" + +msgid "Hidden network" +msgstr "" + +msgid "Hide CI messages" +msgstr "" + +msgid "Hide channel list in radio mode" +msgstr "" + +msgid "Hide known extensions" +msgstr "" + +msgid "Hide number markers" +msgstr "" + +# +#, fuzzy +msgid "Hide player" +msgstr "ocultar reproductor" + +msgid "Hide zap errors" +msgstr "" + +msgid "Hierarchy info" +msgstr "" + +# +#, fuzzy +msgid "Hierarchy information" +msgstr "Información jerárquica" + +# +msgid "High bitrate support" +msgstr "Soporte de bitrate alto" + +msgid "Hold screen" +msgstr "" + +msgid "Hold till locked" +msgstr "" + +msgid "Home" +msgstr "" + +# +msgid "Horizontal" +msgstr "Horizontal" + +msgid "Horizontal turning speed" +msgstr "" + +# +msgid "How many minutes do you want to record?" +msgstr "¿Cuántos minutos quiere grabar?" + +# +msgid "Hue" +msgstr "Hue" + +# +msgid "Hungarian" +msgstr "Húngaro" + +# +#, fuzzy +msgid "IP address" +msgstr "Dirección IP" + +# +msgid "ISO file is too large for this filesystem!" +msgstr "¡El fichero ISO es demasiado grande para este sistema de ficheros!" + +# +msgid "ISO path" +msgstr "ruta ISO" + +msgid "Icons" +msgstr "" + +# +msgid "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." +msgstr "" +"Si ve esto, es que algo está mal con la\n" +"conexión del euroconector. Pulse OK para volver." + +# +msgid "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." +msgstr "" +"Si su TV tiene mejoras en el brillo o el contrase, desactívelo. Si hay algo llamado \"dinámico\", póngalo a estándar. Ajuste el nivel de luz trasera a un valor que le guste. Ponga el contraste en su TV lo más bajo posible.\n" +"Ponga el brillo lo más bajo posible, pero esté seguro que los niveles de las sombras de grises más bajos son apreciables.\n" +"No se preoucpe ahora sobre las sombras. Estas serán configuradas en el siguiente paso.\n" +"Si está contento con los resultados, pulse OK." + +msgid "Image: " +msgstr "" + +# +#, fuzzy +msgid "Immediate shutdown" +msgstr "apagado inmediato" + +# +msgid "In order to record a timer, the TV was switched to the recording service!\n" +msgstr "Para poder grabar, la TV fue cambiada al canal de la grabación\n" + +# +#, fuzzy +msgid "In progress" +msgstr "En Progreso" + +msgid "Inactivity Sleeptimer" +msgstr "" + +msgid "Include AIT in http streams" +msgstr "" + +msgid "Include ECM in http streams" +msgstr "" + +msgid "Include EIT in http streams" +msgstr "" + +msgid "Incorrect type service for PiP!" +msgstr "" + +# +msgid "Increased voltage" +msgstr "Voltaje incrementado" + +# +msgid "Index" +msgstr "Índice" + +msgid "Index allocated:" +msgstr "" + +# +msgid "Info" +msgstr "Info" + +# +#, fuzzy +msgid "Info bar" +msgstr "Barra de información" + +# +#, fuzzy +msgid "Info bar timeout" +msgstr "Tiempo cumplido del Infobar" + +msgid "Infobar frontend data source" +msgstr "" + +# +msgid "Information" +msgstr "Información" + +# +msgid "Init" +msgstr "Iniciar" + +# +#, fuzzy +msgid "Initial fast forward speed" +msgstr "Velocidades hacia delante" + +# +msgid "Initial location in new timers" +msgstr "Ruta inicial en nuevas programaciones" + +msgid "Initial lock ratio" +msgstr "" + +# +#, fuzzy +msgid "Initial rewind speed" +msgstr "Velocidades hacia atrás" + +msgid "Initial signal quality" +msgstr "" + +msgid "Initial signal quality:" +msgstr "" + +msgid "Initialization" +msgstr "Inicialización" + +# +msgid "Initialize" +msgstr "Inicializar" + +msgid "Initializing storage device..." +msgstr "" + +# +msgid "Input" +msgstr "Entrada" + +msgid "Input device setup" +msgstr "Configuración del dispositivo de entrada" + +msgid "Input devices" +msgstr "Dispositivos de entrada" + +# +msgid "Install" +msgstr "Instalar" + +# +msgid "Install a new image with a USB stick" +msgstr "Instalar una nueva imagen con un pendrive" + +# +msgid "Install a new image with your web browser" +msgstr "Instalar una nueva imagen con su navegador web" + +# +# truncalinos +msgid "Install channel list" +msgstr "Instalar lista de canales" + +msgid "Install extensions" +msgstr "" + +# +msgid "Install extensions." +msgstr "Instalar extensiones." + +# +msgid "Install local extension" +msgstr "Instalar extensión local" +#, truncalinos +msgid "Install picons on" +msgstr "Instalar picons" + +#, truncalinos +msgid "Picons list type" +msgstr "Escoje tipo de picons" + +# +#, fuzzy +msgid "Install softcam" +msgstr "Instalando Software..." + +# +#, fuzzy +msgid "Installation has completed." +msgstr "Instalación terminada." + +# +#, fuzzy +msgid "Installation or removal has completed." +msgstr "Instalación o borrado terminado." + +# +msgid "Installing" +msgstr "Instalando" + +# +#, fuzzy +msgid "Installing software..." +msgstr "Instalando Software..." + +# +#, fuzzy +msgid "Instant recording location" +msgstr "Ruta de grabación instantánea" + +# +#, fuzzy +msgid "Instant recording..." +msgstr "Grabación instantánea..." + +# +msgid "Interface: " +msgstr "Interface:" + +# +msgid "Intermediate" +msgstr "Intermedio" + +# +#, fuzzy +msgid "Internal flash" +msgstr "Flash Interna" + +msgid "Internal hdd only" +msgstr "" + +msgid "Interval between keys when repeating:" +msgstr "" + +# +#, python-format +msgid "Invalid directory selected: %s" +msgstr "Directorio seleccionado inválido: %s" + +# +#, fuzzy +msgid "Invalid location" +msgstr "Localización inválida" + +msgid "Invalid transponder data" +msgstr "" + +# +msgid "Inversion" +msgstr "Inversión" + +msgid "Invert" +msgstr "" + +# +msgid "Ipkg" +msgstr "Ipkg" + +#, fuzzy +msgid "Is this setting ok?" +msgstr "¿Usar esta configuración?" + +# +#, fuzzy +msgid "Is this video mode ok?" +msgstr "¿Es este modo de video ok?" + +# +msgid "Italian" +msgstr "Italiano" + +msgid "Items per page " +msgstr "" + +msgid "Items per page for list screen" +msgstr "" + +# +#, fuzzy +msgid "Job overview" +msgstr "Ver Trabajo" + +msgid "Jump to beginning of list" +msgstr "" + +# +#, fuzzy +msgid "Jump to end of list" +msgstr "saltar al final de la lista" + +# +#, fuzzy +msgid "Jump to next marked position" +msgstr "saltar a la siguiente posición marcada" + +# +#, fuzzy +msgid "Jump to previous marked position" +msgstr "saltar a la anterior posición marcada" + +# +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect) +#, fuzzy +msgid "Just scale" +msgstr "Sólo escala" + +msgid "Keep service" +msgstr "" + +# +#, fuzzy +msgid "Kernel version: " +msgstr "Nueva versión:" + +# +msgid "Keyboard" +msgstr "Teclado" + +# +#, fuzzy +msgid "Keyboard map" +msgstr "Mapa del teclado" + +# +#, fuzzy +msgid "Keyboard setup" +msgstr "Configurar Teclado" + +# +#, fuzzy +msgid "LAN adapter" +msgstr "Adaptador de red" + +msgid "LAN connection" +msgstr "Conexión de red local" + +# +msgid "LNB" +msgstr "LNB" + +# +msgid "Language" +msgstr "Idioma" + +# +msgid "Language selection" +msgstr "Selección de idioma" + +# +msgid "Last config" +msgstr "Última config:" + +# +msgid "Last speed" +msgstr "Última velocidad" + +msgid "Last upgrade: " +msgstr "" + +msgid "Latest Commits" +msgstr "" + +# +msgid "Latitude" +msgstr "Latitud" + +# +msgid "Latvian" +msgstr "Letón" + +# +#, fuzzy +msgid "Leave DVD player?" +msgstr "Dejar el Reproductor de DVD?" + +# +msgid "Left" +msgstr "Izda" + +msgid "Left from servicename" +msgstr "" + +msgid "Leisure hobbies" +msgstr "" + +# +#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term. +msgid "Letterbox" +msgstr "Letterbox" + +msgid "Letterbox zoom" +msgstr "" + +# +#, fuzzy +msgid "Limit character set for recording filenames" +msgstr "Charset limitado para la grabación de nombres de fichero" + +# +msgid "Limit east" +msgstr "Límite este" + +msgid "Limit the characters that can be used in recording filenames to (7 bit) ascii. This ensures compatibility with operating systems or file systems with limited character sets." +msgstr "" + +# +msgid "Limit west" +msgstr "Límite oeste" + +msgid "Limits cancelled" +msgstr "" + +msgid "Limits enabled" +msgstr "" + +# +msgid "Limits off" +msgstr "Quitar límites" + +# +msgid "Limits on" +msgstr "Límites activos" + +# +#, fuzzy +msgid "Link quality:" +msgstr "Calidad Enlace:" + +# +msgid "Link:" +msgstr "Enlace:" + +# +msgid "Linked titles with a DVD menu" +msgstr "Enlazar los títulos con un menú de DVD" + +#, fuzzy +msgid "List EPG functions..." +msgstr "lista de vistas EPG..." + +msgid "List available networks" +msgstr "" + +msgid "List mode" +msgstr "" + +# +#, fuzzy +msgid "List of storage devices" +msgstr "Listar dispositivos de almacenamiento" + +msgid "List type" +msgstr "" + +#, python-format +msgid "List version %d, found %d channel" +msgid_plural "List version %d, found %d channels" +msgstr[0] "" +msgstr[1] "" + +# +#, fuzzy +msgid "Listen to the radio..." +msgstr "escuchar radio..." + +msgid "Lists reloaded!" +msgstr "" + +# +msgid "Lithuanian" +msgstr "Lituano" + +# +msgid "Load" +msgstr "Cargar" + +msgid "Load Length of Movies in Movielist" +msgstr "" + +# +#, fuzzy +msgid "Load length of movies in movie list" +msgstr "Calcular longitud de Películas en la lista" + +# +#, fuzzy +msgid "Load playlist" +msgstr "cargar lista de reproducción" + +# +#, fuzzy +msgid "Local network" +msgstr "Red Local" + +# +msgid "Location" +msgstr "Localización" + +# +msgid "Location for instant recordings" +msgstr "Ruta para grabaciones instantáneas" + +msgid "Lock ratio" +msgstr "" + +# +msgid "Lock:" +msgstr "Bloqueo:" + +# +msgid "Log results to harddisk" +msgstr "Logear resultados al disco duro" + +msgid "Long filenames" +msgstr "Nombres de ficheros largos" + +# +#, fuzzy +msgid "Long key press" +msgstr "Pulsar tecla largo" + +# +msgid "Longitude" +msgstr "Longitud" + +msgid "Loop through to" +msgstr "" + +msgid "Luxembourgish" +msgstr "" + +# +#, fuzzy +msgid "MMC card" +msgstr "Tarjeta MMC" + +# +msgid "MORE" +msgstr "MAS" + +# +msgid "Main menu" +msgstr "Menú principal" + +msgid "Maintain old EPG data for" +msgstr "" + +# +msgid "Make this mark an 'in' point" +msgstr "Hacer esta marca como un punto de entrada" + +# +msgid "Make this mark an 'out' point" +msgstr "Hacer esta marca como un punto de salida" + +# +msgid "Make this mark just a mark" +msgstr "Hacer una marca normal" + +# +msgid "Manage extensions" +msgstr "Manejar extensiones" + +# +msgid "Manage your receiver's software" +msgstr "Manejar el software de su receptor" + +msgid "Manual" +msgstr "" + +# +msgid "Manual Scan" +msgstr "Búsqueda Manual" + +msgid "Manual configuration" +msgstr "" + +# +#, fuzzy +msgid "Manual scan" +msgstr "Búsqueda Manual" + +# +msgid "Manual transponder" +msgstr "Transponder manual" + +# +msgid "Manufacturer" +msgstr "Fabricante" + +# +#, fuzzy +msgid "Margin after recording (minutes)" +msgstr "Margen antes de grabar (minutos)" + +# +#, fuzzy +msgid "Margin before recording (minutes)" +msgstr "Margen antes de grabar (minutos)" + +msgid "Max memory positions" +msgstr "" + +# +#, fuzzy +msgid "Max. bitrate: " +msgstr "Max. Bitrate: " + +# +msgid "Media player" +msgstr "Reproductor" + +# +#, fuzzy +msgid "Media scanner" +msgstr "Reproductor" + +# +msgid "Medium is not a writeable DVD!" +msgstr "¡El disco no es un DVD escribible!" + +# +msgid "Medium is not empty!" +msgstr "¡El disco no está vacío!" + +msgid "Memory" +msgstr "" + +msgid "Memory index" +msgstr "" + +# +msgid "Menu" +msgstr "Menú" + +# +msgid "Message" +msgstr "Mensaje" + +# +msgid "Message..." +msgstr "Mensaje..." + +#, python-format +msgid "Minimum age %d years" +msgstr "" + +msgid "Minimum send interval" +msgstr "" + +msgid "Missing " +msgstr "" + +# +#, fuzzy +msgctxt "Satellite configuration mode" +msgid "Mode" +msgstr "Modo" + +# +#, fuzzy +msgctxt "Video output mode" +msgid "Mode" +msgstr "Modo" + +# +msgid "Model: " +msgstr "Modelo: " + +# +msgid "Modulation" +msgstr "Modulación" + +# +msgid "Modulator" +msgstr "Modulador" + +# +msgid "Mon" +msgstr "Lun" + +# +msgid "Mon-Fri" +msgstr "Lun-Vie" + +# +msgid "Monday" +msgstr "Lunes" + +# +msgid "Mosquito noise reduction" +msgstr "Reducción de ruido de mosquito" + +msgid "Mount" +msgstr "" + +msgid "Move" +msgstr "" + +# +#, fuzzy +msgid "Move PiP to main picture" +msgstr "mover PiP a la imagen principal" + +# +msgid "Move Picture in Picture" +msgstr "Mover PiP" + +# +msgid "Move east" +msgstr "Mover al este" + +msgid "Move to other directory" +msgstr "" + +msgid "Move to position X" +msgstr "" + +# +msgid "Move west" +msgstr "Mover al oeste" + +msgid "Moved to position 0" +msgstr "" + +msgid "Moved to position at index" +msgstr "" + +msgid "Movement" +msgstr "" + +msgid "Movie List Configuration" +msgstr "" + +msgid "Movie Selection" +msgstr "" + +# +#, fuzzy +msgid "Movie list configuration" +msgstr "Configuración sintonizador" + +# +msgid "Movie location" +msgstr "Ruta de Peli" + +# +#, fuzzy +msgid "Movie selection" +msgstr "Ruta de Peli" + +msgid "Movie/Drama" +msgstr "" + +# +msgid "Movielist menu" +msgstr "Menú de lista de películas" + +msgid "Moving" +msgstr "" + +msgid "Moving east ..." +msgstr "" + +msgid "Moving to position" +msgstr "" + +msgid "Moving west ..." +msgstr "" + +# +msgid "Multi EPG" +msgstr "EPG Múltiple" + +msgid "Multi-EPG bouquet selection" +msgstr "" + +# +msgid "Multimedia" +msgstr "Multimedia" + +# +msgid "Multiple service support" +msgstr "Soporte de canales múltiples" + +msgid "Multiplex" +msgstr "" + +# +msgid "Multisat" +msgstr "Multisat" + +msgid "Multisat all select" +msgstr "" + +msgid "Music/Ballet/Dance" +msgstr "" + +# +msgid "Mute" +msgstr "Silencio" + +# +msgid "N/A" +msgstr "N/D" + +# +msgid "NEXT" +msgstr "SIGUIENTE" + +# +#, fuzzy +msgid "NFI image flashing" +msgstr "Flashear Imagen NFI" + +# +msgid "NFI image flashing completed. Press Yellow to Reboot!" +msgstr "Se descargó la imagen flash correctamente. ¡Pulse Amarillo para reiniciar!" + +msgid "NIM" +msgstr "" + +# +msgid "NOW" +msgstr "AHORA" + +# +msgid "NTSC" +msgstr "NTSC" + +# +msgid "Name" +msgstr "Nombre" + +# +msgid "Nameserver" +msgstr "DNS" + +# +#, python-format +msgid "Nameserver %d" +msgstr "Servidor de nombres %d" + +# +msgid "Nameserver settings" +msgstr "Configuración de Servidor de Nombres" + +# +#, fuzzy +msgid "Nameserver setup" +msgstr "Configuración servidor de nombres" + +msgid "Namespace" +msgstr "" + +# +msgid "Netmask" +msgstr "Máscara" + +# +msgid "Network" +msgstr "Red" + +msgid "Network ID" +msgstr "" + +# +#, fuzzy +msgid "Network configuration..." +msgstr "Configuración de Red..." + +# +#, fuzzy +msgid "Network mount" +msgstr "Montar Red" + +# +#, fuzzy, python-format +msgid "Network mount %s" +msgstr "Montar Red" + +#, fuzzy +msgid "Network name (SSID)" +msgstr "Testeo de Red:" + +# +msgid "Network scan" +msgstr "Escanear red" + +# +msgid "Network setup" +msgstr "Configuración de red" + +# +msgid "Network test" +msgstr "Testear Red" + +# +msgid "Network test..." +msgstr "Testear Red..." + +msgid "Network test: " +msgstr "Testeo de Red:" + +# +#, fuzzy +msgid "Network wizard" +msgstr "Asistente de Red" + +# +msgid "Network:" +msgstr "Red:" + +# +msgid "New" +msgstr "Nuevo" + +msgid "New PIN" +msgstr "Nuevo PIN" + +# +msgid "New version:" +msgstr "Nueva versión:" + +msgid "News Current Affairs" +msgstr "" + +msgctxt "button label, 'next screen'" +msgid "Next" +msgstr "" + +msgctxt "now/next: 'next' event label" +msgid "Next" +msgstr "" + +# +msgid "No" +msgstr "No" + +# +msgid "No (supported) DVDROM found!" +msgstr "¡DVDROM no soportado!" + +# +msgid "No Connection" +msgstr "Sin conexión" + +# +msgid "No HDD found or HDD not initialized!" +msgstr "¡HDD no encontrado o no inicializado!" + +# +msgid "No backup needed" +msgstr "No es necesario el backup" + +msgid "No cable tuner found!" +msgstr "" + +# +msgid "" +"No data on transponder!\n" +"(Timeout reading PAT)" +msgstr "" +"¡No hay datos en el transponder!\n" +"(Tiempo cumplido leyendo PAT)" + +msgid "No delay" +msgstr "" + +# +msgid "No description available." +msgstr "No hay descripción." + +# +msgid "No details for this image file" +msgstr "No hay detalles para este fichero de imagen" + +# +msgid "No displayable files on this medium found!" +msgstr "¡No hay ficheros visualizables en su medio!" + +# +msgid "No event info found, recording indefinitely." +msgstr "No hay info del evento, grabando indefinidamente." + +# +msgid "No fast winding possible yet.. but you can use the number buttons to skip forward/backward!" +msgstr "¡No es posible todavía avance rápido.. pero puede usar los botones numéricos para ir adelante/atrás!" + +msgid "No free index available" +msgstr "" + +# +msgid "No free tuner!" +msgstr "¡No hay sintonizador libre!" + +# +msgid "No network connection available." +msgstr "No hay conexión de red disponible." + +# +msgid "No networks found" +msgstr "No he encontrado redes" + +msgid "No new plugins found" +msgstr "" + +# +msgid "No positioner capable frontend found." +msgstr "No he encontrado motor capaz" + +msgid "No satellites configured. Plese check your tuner setup." +msgstr "" + +msgid "No service" +msgstr "" + +# +#, fuzzy +msgid "No services/providers selected" +msgstr "ningún Canal/Proveedor seleccionado" + +# +#, fuzzy +msgid "No standby" +msgstr "no reposo" + +msgid "No suitable sat tuner found!" +msgstr "" + +# +msgid "No tags are set on these movies." +msgstr "No hay etiquetas en estas películas." + +# +#, fuzzy +msgid "No timeout" +msgstr "no tiempo cumplido" + +# +msgid "No to all" +msgstr "No a todo" + +msgid "No transparency" +msgstr "" + +# +msgid "No tuner is configured for use with a diseqc positioner!" +msgstr "¡No hay sintonizador configurado para usar con un motor diseqc!" + +# +msgid "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"¡No hay sintonizador activo!\n" +"Por favor, configure el sintonizador antes de comenzar una búsqueda de canales." + +# +#, fuzzy +msgid "No updates available" +msgstr "actualizaciones disponibles." + +msgid "No updates available. Please try again later." +msgstr "" + +# +msgid "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" +msgstr "" +"¡No hay PIN válido de canales!\n" +"¿Le gustaría cambiar el PIN ahora?\n" +"¡Si dice 'No' aquí, la protección de canales seguirá desabilitada!" + +# +msgid "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" +msgstr "" +"No hay PIN válido de configuración\n" +"¿Le gustaría cambiar el PIN de configuración ahora?\n" +"¡Si dice 'No' aquí, la protección de configuración seguirá desabilitada!" + +msgid "No wireless networks found! Searching..." +msgstr "" + +# +msgid "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." +msgstr "" +"No hay ningún adaptador de red local que funcione.\n" +"Verifique que ha conectado un cable de red y su red está configurada correctamente." + +# +msgid "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." +msgstr "" +"No hay ningún adaptador de red inalámbrica.\n" +"Verifique que ha conectado un dispositivo WLAN compatible y su red esté configurada correctamente." + +# +msgid "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." +msgstr "" +"No he encontrado ningún interface de red inalámbrica que funcione.\n" +"Verifique que ha conectado un dispositivo WLAN compatible o active su interface de red local." + +# +msgid "No, but restart from begin" +msgstr "No, debe reiniciar desde el principio" + +# +msgid "No, do nothing." +msgstr "No hacer nada" + +msgid "No, just start my receiver" +msgstr "" + +msgid "No, never" +msgstr "No, nunca" + +# +msgid "None" +msgstr "Ninguno" + +# +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right) +msgid "Nonlinear" +msgstr "No lineal" + +msgid "Normal mode" +msgstr "" + +# +msgid "North" +msgstr "Norte" + +# +msgid "Norwegian" +msgstr "Noruego" + +msgid "Not associated" +msgstr "" + +msgid "Not configured" +msgstr "" + +# +#, fuzzy, python-format +msgid "Not enough disk space. Please free up some disk space and try again. (%d MB required, %d MB available)" +msgstr "No hay suficiente espacio libre. Por famove libere espacio y reinténtelo. (%d MB requeridos, %d MB disponibles)" + +msgid "Nothing connected" +msgstr "" + +# +msgid "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"¡Nada a buscar!\n" +"Por favor ponga la configuración del sintonizador antes de buscar un canal." + +msgctxt "now/next: 'now' event label" +msgid "Now" +msgstr "" + +# +#, fuzzy +msgid "Now playing" +msgstr "Reproduciendo ahora" + +# +msgid "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." +msgstr "Ahora, use la configuración del contraste hacia arriba hasta que brille el fondo lo máximo posible, pero que siga viendo la diferencia entre los 2 niveles de sombra. Si esto está hecho, pulse OK." + +# +msgid "OK" +msgstr "OK" + +# +msgid "OK, guide me through the upgrade process" +msgstr "OK, guíeme a través del proceso de actualización" + +msgid "ONID" +msgstr "" + +msgid "OSD name request" +msgstr "" + +# +#, fuzzy +msgid "OSD settings" +msgstr "Configurar OSD" + +msgid "OSD transparency" +msgstr "" + +# +msgid "Off" +msgstr "Off" + +msgid "Offline decode delay (ms)" +msgstr "" + +msgid "Ok" +msgstr "" + +# +msgid "On" +msgstr "On" + +msgid "On end of movie" +msgstr "" + +msgid "On end of movie (as menu)" +msgstr "" + +# +msgid "One" +msgstr "Uno" + +# +msgid "Only extensions." +msgstr "Sólo extensiones." + +# +#, fuzzy +msgid "Only free scan" +msgstr "Sólo escanear libres" + +# +#, fuzzy +msgid "Open service list" +msgstr "abrir lista de canales" + +# +#, fuzzy +msgid "Open the movie list" +msgstr "Volver a la lista de películas" + +msgid "Orbital position" +msgstr "" + +msgid "Original" +msgstr "" + +msgid "Other" +msgstr "" + +msgid "Output" +msgstr "" + +msgid "Overwrite configuration files during software upgrade?" +msgstr "¿Sobreescribir los ficheros de configuración durante la actualización del software?" + +#, fuzzy +msgid "Overwrite configuration files?" +msgstr "¿Sobreescribir los ficheros de configuración?" + +# +msgid "PAL" +msgstr "PAL" + +msgid "PCR PID" +msgstr "" + +# +msgid "PIDs" +msgstr "PIDs" + +# +#, fuzzy +msgid "PIN code needed" +msgstr "Necesario código pin" + +msgid "PLP ID" +msgstr "" + +msgid "PMT PID" +msgstr "" + +# +msgid "Package list update" +msgstr "Actualización de lista de paquetes" + +# +msgid "Packet management" +msgstr "Manejo de paquete" + +# +msgid "Packet manager" +msgstr "Manejador de paquetes" + +# +#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term +#, fuzzy +msgid "Pan&scan" +msgstr "Pan&Scan" + +# +#, fuzzy +msgid "Parent directory" +msgstr "Directorio padre" + +# +msgid "Parental control" +msgstr "Control de adultos" + +# +#, fuzzy +msgid "Parental control services editor" +msgstr "Editor de canales para control de adultos" + +# +msgid "Parental control setup" +msgstr "Configuración del control de adultos" + +# +msgid "Parental control type" +msgstr "Tipo de control de adultos" + +# +msgid "Password" +msgstr "Contraseña" + +# +#, fuzzy +msgid "Pause" +msgstr "pausa" + +# +msgid "Pause movie at end" +msgstr "Parar película al final" + +# +#, fuzzy +msgid "Pause playback" +msgstr "Continuar reproducción" + +msgid "Pauze/Continue playback" +msgstr "" + +msgid "Percentage left" +msgstr "" + +# +#, fuzzy +msgid "Percentage right" +msgstr "Dcha circular" + +msgid "Permanently delete all recordings in the trash can?" +msgstr "" + +msgid "Permanently remove all deleted items" +msgstr "" + +msgid "Persian" +msgstr "Persa" + +# +msgid "Phone number" +msgstr "Número de teléfono" + +# +#, fuzzy +msgid "PiP setup" +msgstr "PiPConfig" + +msgid "Picon" +msgstr "" + +msgid "Picon and service name" +msgstr "" + +# +#, fuzzy +msgid "Picture player" +msgstr "Reproductor de Fotos" + +# +#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term. +msgid "Pillarbox" +msgstr "Pillarbox" + +# +msgid "Pilot" +msgstr "Piloto" + +# +msgid "Play" +msgstr "Reproducir" + +# +msgid "Play DVD" +msgstr "Reproducir DVD" + +msgid "Play audio in background" +msgstr "" + +# +#, fuzzy +msgid "Play audio-CD..." +msgstr "Reproducir Audio-CD..." + +msgid "Play back media files" +msgstr "" + +# +#, fuzzy +msgid "Play entry" +msgstr "reproducir elemento" + +# +#, fuzzy +msgid "Play from next mark or playlist entry" +msgstr "reproduce desde la siguiente marca o siguiente película" + +# +#, fuzzy +msgid "Play from previous mark or playlist entry" +msgstr "reproduce desde la marca anterior o película" + +# +#, fuzzy +msgid "Play music..." +msgstr "Reproducir Música" + +msgid "Play next" +msgstr "" + +msgid "Play next (return to movie list)" +msgstr "" + +msgid "Play next (return to previous service)" +msgstr "" + +msgid "Play previous" +msgstr "" + +# +msgid "Play recorded movies..." +msgstr "Reproducir películas grabadas..." + +msgid "Please add titles to the compilation." +msgstr "Por favor, añada títulos a la compilación." + +# +msgid "Please change recording endtime" +msgstr "Por favor, cambie la finalización de la grabación" + +# +msgid "Please check your network settings!" +msgstr "Por favor, ¡chequee su configuración de red!" + +# +msgid "Please choose an extension..." +msgstr "Por favor, elija una extensión..." + +# +msgid "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Configure o verifique su DNS rellenando los valores requeridos.\n" +"Cuanto esté preparado pulse OK para continuar." + +# +msgid "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Por favor configure su conexión a internet rellenando los valores requeridos.\n" +"Cuando esté preparado pulse OK para continuar." + +msgid "Please connect your receiver to the internet" +msgstr "Por favor, conecte el receptor a internet" + +# +msgid "Please do not change any values unless you know what you are doing!" +msgstr "¡Por favor no cambie valores cuando no sepa lo que hace!" + +# +msgid "Please enter a name for the new bouquet" +msgstr "Introduzca un nombre para la nueva lista" + +# +msgid "Please enter a name for the new marker" +msgstr "Pon un nombre para el nuevo marcador" + +# +msgid "Please enter a new filename" +msgstr "Por favor, introduzca un nombre de fichero nuevo" + +# +msgid "Please enter filename (empty = use current date)" +msgstr "Por favor, introduzca un nombre de fichero (vacío = usar fecha actual)" + +# +msgid "Please enter name of the new directory" +msgstr "Entre un nombre para el directorio nuevo" + +msgid "Please enter new name:" +msgstr "" + +# +msgid "Please enter the correct pin code" +msgstr "Por favor, ponga el pin correcto" + +msgid "Please enter the old PIN code" +msgstr "Por favor, introduca el PIN anterior" + +# +msgid "Please follow the instructions on the TV" +msgstr "Siga las instrucciones en la TV" + +# +msgid "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." +msgstr "El medio seleccionado anterior no puede ser accedido y el directorio por defecto va a ser usado en su lugar." + +# +msgid "Please press OK to continue." +msgstr "Pulse OK para continuar." + +msgid "Please select a default EPG type..." +msgstr "" + +# +msgid "Please select a playlist to delete..." +msgstr "Por favor, seleccione una lista de reproducción a borrar..." + +# +msgid "Please select a playlist..." +msgstr "Por favor, seleccione una lista de reproducción..." + +# +#, fuzzy +msgid "Please select a sub service..." +msgstr "Por favor, seleccione un subcanal..." + +# +msgid "Please select a subservice to record..." +msgstr "Por favor, seleccione un subcanal a grabar..." + +# +msgid "Please select a subservice..." +msgstr "Por favor, seleccione un subcanal..." + +msgid "Please select an NFI file and press green key to flash!" +msgstr "Por favor, ¡seleccione un fichero NFI y pulse la tecla verde para flashear!" + +# +#, fuzzy +msgid "Please select medium to be scanned" +msgstr "Por favor, seleccione el medio a ser escaneado" + +# +msgid "Please select medium to use as backup location" +msgstr "Seleccione medio para usar como localización del backup" + +# +msgid "Please select tag to filter..." +msgstr "Seleccione una etiqueta para filtrar..." + +# +msgid "Please select the movie path..." +msgstr "Por favor, seleccione un directorio de películas..." + +# +msgid "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Seleccione el interfaz de red que quiere usar para su conexión a internet.\n" +"\n" +"Pulse OK para continuar." + +# +msgid "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Seleccione la red inalámbrica a la que quiere conectar.\n" +"\n" +"Pulse OK para continuar." + +# +##ADDONS-sfteam + +msgid "Thank you for using the wizard.Your receiver is now ready for use.\n" +"\n" +"Please press OK to continue." +msgstr "Gracias por utilizar el receptor Gigablue.Ya está listo para su uso.\n" +"\n" +"Pulse OK para utilizar su receptor.Gracias por confiar en el grupo SFTEAM" +#, sfteam +msgid "Install epg manager" +msgstr "Escoje tipo de EPG" + +#, sfteam +msgid "Epg manager type" +msgstr "Instalar epg Manager" +# +msgid "Do you want to install a channel list?" +msgstr "¿Quiere instalar una lista de canales?" + +msgid "Do you want to install a picons?" +msgstr "¿Quiere instalar picons?" +#, truncalinos + +msgid "Would you like to install a picons?" +msgstr "¿Quiere instalar picons?" + + +msgid "Would you like to install epg manager?" +msgstr "¿Quiere instalar epg Manager?" + +msgid "Would you like to install tdt usb drivers?" +msgstr "¿Quiere instalar driver para tu tdt?" + +msgid "Would you like to install a softcam?" +msgstr "¿Quiere instalar softcam?" + +msgid "Would you like to install a cache server?" +msgstr "¿Quiere instalar multics?" + + +#, fuzzy +msgid "Please set up tuner A" +msgstr "Por favor, configure sintonizador A" + + + +# +msgid "Please set up tuner B" +msgstr "Por favor, configure sintonizador B" + +# +msgid "Please set up tuner C" +msgstr "Por favor, configure el sintonizador C" + +# +msgid "Please set up tuner D" +msgstr "Por favor, configure el sintonizador D" + +# +msgid "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." +msgstr "" +"Use las teclas de dirección para mover la ventana PiP.\n" +"Pulse Bouquet +/- para cambiar el tamaño de la ventana.\n" +"Pulse OK para volver al modo TV or EXIT para cancelar el movimiento." + +# +msgid "Please use the UP and DOWN keys to select your language. Afterwards press the OK button." +msgstr "Use las teclas ARRIBA y ABAJO para seleccionar su idioma. Después, pulse el botón OK." + +msgid "Please wait" +msgstr "" + +# +#, fuzzy +msgid "Please wait (downloading channel list)" +msgstr "Espere... Cargando lista..." + +# +#, fuzzy +msgid "Please wait (downloading softcam)" +msgstr "Espere... Cargando lista..." + +# +#, fuzzy +msgid "Please wait (updating packages)" +msgstr "por favor espere, cargando foto..." + +# +msgid "Please wait for activation of your network configuration..." +msgstr "Espere la activación de su configuración de red..." + +# +msgid "Please wait while scanning is in progress..." +msgstr "Espere mientra el escaneo está activo..." + +# +msgid "Please wait while we configure your network..." +msgstr "Espere mientras configuramos su red..." + +# +msgid "Please wait while we prepare your network interfaces..." +msgstr "Espere mientras preparamos sus interfaces de red..." + +# +msgid "Please wait while we test your network..." +msgstr "Espere mientras testeamos su red..." + +# +msgid "Please wait while your network is restarting..." +msgstr "Espere mientras su red está reiniciando..." + +# +msgid "Please wait..." +msgstr "Por favor, espere..." + +# +msgid "Please wait... Loading list..." +msgstr "Espere... Cargando lista..." + +# +msgid "Plugin browser" +msgstr "Navegador de plugins" + +# +msgid "Plugin manager activity information" +msgstr "Información de actividad del manejador de Plugin" + +# +msgid "Plugin manager help" +msgstr "Ayuda del manejador de Plugin" + +# +msgid "Plugins" +msgstr "Plugins" + +msgid "Polarisation" +msgstr "" + +msgid "Polarisation:" +msgstr "" + +# +msgid "Polarization" +msgstr "Polarización" + +# +msgid "Polish" +msgstr "Polaco" + +# +msgid "Port A" +msgstr "Puerto A" + +# +msgid "Port B" +msgstr "Puerto B" + +# +msgid "Port C" +msgstr "Puerto C" + +# +msgid "Port D" +msgstr "Puerto D" + +# +msgid "Portuguese" +msgstr "Portugués" + +msgid "Position of completed timers in timerlist" +msgstr "" + +msgid "Position stored at index" +msgstr "" + +# +msgid "Positioner" +msgstr "Motor" + +msgid "Positioner (selecting satellites)" +msgstr "" + +msgid "Positioner Setup" +msgstr "" + +# +msgid "Positioner setup" +msgstr "Configuración del motor" + +# +msgid "Power threshold in mA" +msgstr "Potencia in mA" + +# +msgid "Predefined transponder" +msgstr "Transponder predefinido" + +msgid "Prefer AC3 track" +msgstr "" + +msgid "Prefer AC3+ track" +msgstr "" + +msgid "Prefer audio track stored by service" +msgstr "" + +msgid "Prefer graphical DVB subtitles" +msgstr "" + +msgid "Prefer subtitles for hearing impaired" +msgstr "" + +msgid "Prefer subtitles stored by service" +msgstr "" + +msgid "Preferred tuner" +msgstr "" + +msgid "Preferred tuner for recordings" +msgstr "" + +msgid "Prepare another USB stick for image flashing" +msgstr "Prepare otro pendrive USB para flasear la imagen." + +# +msgid "Preparing... Please wait" +msgstr "Preparando... Por favor espere" + +msgid "Press '0' to toggle PiP mode" +msgstr "" + +msgid "Press INFO on your remote control for additional information." +msgstr "Pulse INFO en su control remoto para información adicional." + +msgid "Press MENU on your remote control for additional options." +msgstr "Pulse MENU en su mando a distancia para opciones adicionales." + +# +msgid "Press OK on your remote control to continue." +msgstr "Pulse OK en el mando a distancia para continuar." + +# +msgid "Press OK to activate the selected skin." +msgstr "Pulse OK para activar la piel seleccionada." + +# +msgid "Press OK to activate the settings." +msgstr "Pulse OK para activar la configuración." + +# +msgid "Press OK to edit the settings." +msgstr "Pulse OK para editar la configuración." + +# +#, python-format +msgid "Press OK to get further details for %s" +msgstr "Pulse OK para obtener más detalles para %s" + +# +msgid "Press OK to scan" +msgstr "Pulse OK para buscar" + +# +#, fuzzy +msgid "Press OK to select a provider." +msgstr "Pulse OK para seleccionar un Proveedor." + +msgid "Press OK to select satellites" +msgstr "" + +# +msgid "Press OK to select/deselect a CAId." +msgstr "Pulse OK para seleccionar/deseleccionar un CAId." + +# +msgid "Press OK to start the scan" +msgstr "Pulse OK para comenzar la búsqueda" + +msgid "Press OK to toggle the selection" +msgstr "" + +# +msgid "Press OK to toggle the selection." +msgstr "Pulse OK para activar la selección." + +# +msgid "Press yellow to set this interface as default interface." +msgstr "Pulse amarillo para activar este interface por defecto." + +msgctxt "button label, 'previous screen'" +msgid "Prev" +msgstr "" + +# +msgid "Preview" +msgstr "Previsualizar" + +# +msgid "Preview menu" +msgstr "Menú previsualizar" + +msgid "Preview selected channel" +msgstr "" + +# +msgid "Primary DNS" +msgstr "DNS Principal" + +# +msgid "Priority" +msgstr "Prioridad" + +# +msgid "Process" +msgstr "Procesar" + +msgid "Progress" +msgstr "" + +msgid "Progress bar left" +msgstr "" + +msgid "Progress bar right" +msgstr "" + +# +msgid "Properties of current title" +msgstr "Propiedades del título actual" + +# +msgid "Protect services" +msgstr "Proteger canales" + +# +msgid "Protect setup" +msgstr "Proteger configuración" + +# +msgid "Provider" +msgstr "Proveedor" + +# +msgid "Provider to scan" +msgstr "Proveedor a buscar" + +# +msgid "Providers" +msgstr "Proveedores" + +msgid "Put TV in standby" +msgstr "" + +msgid "Put receiver in standby" +msgstr "" + +# +msgid "Python frontend for /tmp/mmi.socket" +msgstr "Frontend Python para /tmp/mmi.socket" + +# +msgid "Quick" +msgstr "Rápido" + +# +#, fuzzy +msgid "Quick zap" +msgstr "Zapeo rápido" + +# +msgid "RF output" +msgstr "Salida de antena" + +# +msgid "RGB" +msgstr "RGB" + +# +msgid "Radio" +msgstr "Radio" + +# +#, fuzzy +msgid "Ram disk" +msgstr "Disco Ram" + +# +msgid "Random" +msgstr "Aleatorio" + +#, python-format +msgid "Rating defined by broadcaster - %d" +msgstr "" + +msgid "Rating undefined" +msgstr "" + +# +msgid "Really close without saving settings?" +msgstr "¿Seguro que quiere cerrar sin grabar la configuración?" + +# +msgid "Really delete done timers?" +msgstr "¿Quiere borrar las programaciones terminadas?" + +# +msgid "Really exit the subservices quickzap?" +msgstr "¿Quiere salir del zapeo rápido de subcananles?" + +# +msgid "Really reboot now?" +msgstr "¿Quiere reiniciar ahora?" + +# +msgid "Really restart now?" +msgstr "¿Quiere reiniciar ahora?" + +# +msgid "Really shutdown now?" +msgstr "¿Quiere apagar ahora?" + +msgid "Really upgrade the frontprocessor and reboot now?" +msgstr "" + +msgid "Really upgrade your settop box and reboot now?" +msgstr "" + +# +msgid "Reboot" +msgstr "Reiniciar" + +msgid "Rec" +msgstr "" + +# +#, fuzzy +msgid "Reception settings" +msgstr "Configuración de Recepción" + +# +msgid "Record" +msgstr "Grabar" + +# +#, python-format +msgid "Record time limited due to conflicting timer %s" +msgstr "Grabación limitada en el tiempo por un conflicto de grabación %s" + +# +msgid "Recorded files..." +msgstr "Ficheros grabados..." + +# +msgid "Recording" +msgstr "Grabando" + +msgid "Recording in progress" +msgstr "" + +msgid "Recording paths" +msgstr "Rutas de grabación" + +msgid "Recording type" +msgstr "" + +# +msgid "Recording(s) are in progress or coming up in few seconds!" +msgstr "¡Grabación(es) está(n) en proceso o va(n) a comenzar en pocos segundos!" + +# +msgid "Recordings" +msgstr "Grabaciones" + +# +msgid "Recordings always have priority" +msgstr "Las grabaciones siempre tienen prioridad" + +msgid "Red button..." +msgstr "" + +msgid "Reenter new PIN" +msgstr "Volver a introducir el nuevo PIN" + +# +#, fuzzy +msgid "Refresh rate" +msgstr "Velocidad de refresco" + +# +msgid "Refresh rate selection." +msgstr "Selección de velocidad de refresco." + +msgid "Regard deep standby as standby" +msgstr "" + +msgid "Relative" +msgstr "" + +# +msgid "Reload" +msgstr "Recargar" + +#, fuzzy +msgid "Reload black-/white lists" +msgstr "Recargar listas blancas/negras" + +msgid "Reloading bouquets and services..." +msgstr "" + +msgid "Remember last service in PiP" +msgstr "" + +msgid "Remember service PIN" +msgstr "Recordar el PIN del canal" + +msgid "Remember these settings for each folder" +msgstr "" + +msgid "Reminder, you have chosen to save timeshift file." +msgstr "" + +# +#, fuzzy +msgid "Remote control type" +msgstr "Tipo de control de adultos" + +# +#, fuzzy +msgid "Removal has completed." +msgstr "Falló el borrado." + +# +msgid "Remove" +msgstr "Borrar" + +# +msgid "Remove a mark" +msgstr "Borrar una marca" + +# +#, fuzzy +msgid "Remove a nameserver entry" +msgstr "borrar entrada de servidor de nombres" + +# +#, fuzzy +msgid "Remove bookmark" +msgstr "borrar marcador" + +msgid "Remove completed timers after (days)" +msgstr "" + +# +msgid "Remove currently selected title" +msgstr "Borrar el título seleccionado" + +msgid "Remove items from trash can after (days)" +msgstr "" + +# +msgid "Remove plugins" +msgstr "Borrar complmentos" + +# +msgid "Remove title" +msgstr "Borrar el título" + +# +msgid "Removing" +msgstr "Borrando" + +# +#, python-format +msgid "Removing directory %s failed. (Maybe not empty.)" +msgstr "Falló el borrado del directorio %s. (Puede no estar vacío)" + +# +#, fuzzy +msgid "Removing partition table" +msgstr "Borrar el título" + +# +msgid "Rename" +msgstr "Renombrar" + +msgid "Repeat" +msgstr "" + +# +#, fuzzy +msgid "Repeat type" +msgstr "Tipo de repetición" + +# +msgid "Repeating event currently recording... What do you want to do?" +msgstr "Repitiendo la grabación del evento actual... ¿Qué quiere hacer?" + +# +msgid "Repeats" +msgstr "Repeticiones" + +msgid "Require authentication for http streams" +msgstr "" + +msgid "Required medium type:" +msgstr "Tipo de medio requerido:" + +msgid "Rereading partition table" +msgstr "" + +msgid "Reserved" +msgstr "" + +# +msgid "Reset" +msgstr "Resetear" + +# +msgid "Reset and renumerate title names" +msgstr "Reinicia y renumera los nombre de títulos" + +msgid "Reset playback position" +msgstr "" + +# +msgid "Reset video enhancement settings to system defaults?" +msgstr "¿Resetear la configuración del sistema de video mejorado?" + +# +msgid "Reset video enhancement settings to your last configuration?" +msgstr "¿Resetar la configuración de video mejorado a la última configuración?" + +# +msgid "Resolution" +msgstr "Resolución" + +# +msgid "Restart" +msgstr "Reiniciar" + +# +msgid "Restart GUI now?" +msgstr "¿Reiniciar el GUI ahora?" + +msgid "Restart enigma" +msgstr "" + +# +msgid "Restart network" +msgstr "Reiniciar Red" + +# +msgid "Restart test" +msgstr "Reiniciar test" + +# +msgid "Restart your network connection and interfaces.\n" +msgstr "Reiniciar su conexión y dispositivos de red.\n" + +# +msgid "Restore" +msgstr "Restaurar" + +# +msgid "Restore backups" +msgstr "Restaurar backups" + +# +msgid "Restore is running..." +msgstr "Restauración está ejecutándose..." + +# +msgid "Restore system settings" +msgstr "Configuración del sistema de restauración" + +# +#, fuzzy +msgid "Restoring..." +msgstr "grabando..." + +# +msgid "Resume from last position" +msgstr "Continuar desde la última posición" + +#, python-format +msgid "Resume position at %s" +msgstr "Continuar la posición a %s" + +# +#. TRANSLATORS: The string "Resuming playback" flashes for a moment +#. TRANSLATORS: at the start of a movie, when the user has selected +#. TRANSLATORS: "Resume from last position" as start behavior. +#. TRANSLATORS: The purpose is to notify the user that the movie starts +#. TRANSLATORS: in the middle somewhere and not from the beginning. +#. TRANSLATORS: (Some translators seem to have interpreted it as a +#. TRANSLATORS: question or a choice, but it is a statement.) +msgid "Resuming playback" +msgstr "Continuar reproducción" + +# +msgid "Return to movie list" +msgstr "Volver a la lista de películas" + +# +msgid "Return to previous service" +msgstr "Volver al canal anterior" + +msgid "Reverse bouquet buttons" +msgstr "" + +msgid "Reverse list" +msgstr "" + +# +msgid "Rewind speeds" +msgstr "Velocidades hacia atrás" + +msgid "Rewrap teletext subtitles" +msgstr "" + +# +msgid "Right" +msgstr "Dcha" + +msgid "Right from servicename" +msgstr "" + +msgid "Roll-off" +msgstr "" + +msgid "Romanian" +msgstr "" + +msgid "Root directory" +msgstr "" + +msgid "Rotor step position:" +msgstr "" + +# +msgid "Rotor turning speed" +msgstr "Velocidad del motor" + +msgid "Round start time on" +msgstr "" + +# +msgid "Russian" +msgstr "Ruso" + +# +msgid "S-Video" +msgstr "S-Video" + +msgid "SID" +msgstr "" + +msgid "SINGLE LAYER DVD" +msgstr "DVD CAPA SIMPLE" + +# +msgid "SNR" +msgstr "SNR" + +# +msgid "SNR:" +msgstr "SNR:" + +# +msgid "SSID:" +msgstr "SSID:" + +msgid "Same resolution as skin" +msgstr "" + +# +msgid "Sat" +msgstr "Sáb" + +# +msgid "Satellite" +msgstr "Satélite" + +# +#, fuzzy +msgid "Satellite dish setup" +msgstr "Configuración equipo satélite" + +msgid "Satellite equipment" +msgstr "Equipo satélite" + +# +#, fuzzy +msgid "Satellite equipment setup" +msgstr "Configuración equipo satélite" + +msgid "Satellite longitude:" +msgstr "" + +# +msgid "Satellites" +msgstr "Satélites" + +# +msgid "Satfinder" +msgstr "Buscador de satélites" + +# +msgid "Sats" +msgstr "Sats" + +# +msgid "Saturation" +msgstr "Saturación" + +# +msgid "Saturday" +msgstr "Sábado" + +# +msgid "Save" +msgstr "Guardar" + +# +#, fuzzy +msgid "Save playlist" +msgstr "guardar lista de reproducción" + +msgid "Save timeshift file" +msgstr "" + +msgid "Save timeshift file in movie directory" +msgstr "" + +# +msgid "Scaler sharpness" +msgstr "Nitidez del escalado" + +# +#, fuzzy +msgid "Scaling mode" +msgstr "Modo de búsqueda" + +msgid "Scan" +msgstr "" + +# +msgid "Scan " +msgstr "Escanear" + +# +#. TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' +#, fuzzy, python-format +msgid "Scan %s" +msgstr "Escanear" + +# +#. TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' +#, fuzzy, python-format +msgid "Scan %s band" +msgstr "Escanear banda EU MID" + +# +msgid "Scan additional SR" +msgstr "Escanear otro SR" + +# +#, fuzzy +msgid "Scan files..." +msgstr "Escanear Ficheros..." + +# +#, fuzzy +msgid "Scan wireless networks" +msgstr "Escanear Redes Inalámbricas" + +msgid "Scan your network for wireless access points and connect to them using your selected wireless device.\n" +msgstr "Escanear su red para puntos de acceso inalámbricos y conectar a ellos usando el dispositivo seleccionado.\n" + +#, python-format +msgid "Scanning %s..." +msgstr "" + +#. TRANSLATORS: The stb is performing a channel scan, progress percentage is printed in '%d' (and '%%' will show a single '%' symbol) +#, python-format +msgid "Scanning - %d%% completed" +msgid_plural "Scanning - %d%% completed" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "Scanning completed, %d channel found" +msgid_plural "Scanning completed, %d channels found" +msgstr[0] "" +msgstr[1] "" + +msgid "Scanning failed!" +msgstr "" + +msgid "Scanning..." +msgstr "" + +# +msgid "Scans default lamedbs sorted by satellite with a connected dish positioner" +msgstr "Escanee el lamedbs por defecto de satélites ordenados con un motor conectado" + +# +msgid "Search east" +msgstr "Buscar este" + +# +msgid "Search west" +msgstr "Buscar oeste" + +msgid "Searching" +msgstr "" + +msgid "Searching east ..." +msgstr "" + +# +msgid "Searching for available updates. Please wait..." +msgstr "Buscando actualizaciones disponibles. Por favor, espere..." + +# +msgid "Searching for new installed or removed packages. Please wait..." +msgstr "Buscando para nuevos paquetes instalados o borrados. Espere..." + +msgid "Searching west ..." +msgstr "" + +msgid "Second cable of motorized LNB" +msgstr "" + +# +msgid "Secondary DNS" +msgstr "DNS Secundario" + +# +msgid "Seek" +msgstr "Posicionar" + +# +#, fuzzy +msgid "Seek backward" +msgstr "saltar adelante" + +# +#, fuzzy +msgid "Seek backward (enter time)" +msgstr "pasar atrás (introducir hora)" + +# +#, fuzzy +msgid "Seek forward" +msgstr "saltar adelante" + +# +#, fuzzy +msgid "Seek forward (enter time)" +msgstr "pasar adelante (introducir tiempo)" + +# +msgid "Select" +msgstr "Seleccionar" + +# +#, fuzzy +msgid "Select CAId" +msgstr "seleccionar CAId" + +# +msgid "Select HDD" +msgstr "Seleccionar disco duro" + +# +#, fuzzy +msgid "Select a bouquet" +msgstr "Seleccionar una película" + +# +msgid "Select a movie" +msgstr "Seleccionar una película" + +# +#, fuzzy +msgid "Select a network adapter" +msgstr "Seleccionar Adaptador de Red" + +# +#, fuzzy +msgid "Select a skin" +msgstr "Seleccionar una película" + +# +#, fuzzy +msgid "Select a tuner" +msgstr "Seleccionar una película" + +# +#, fuzzy +msgid "Select a wireless network" +msgstr "Seleccione red inalámbrica" + +msgid "Select action" +msgstr "" + +#, python-format +msgid "Select action for timer %s:" +msgstr "" + +msgid "Select all" +msgstr "" + +#, fuzzy +msgid "Select an image to be downloaded" +msgstr "Elegir imagen para descargar" + +# +msgid "Select audio track" +msgstr "Seleccionar pista de audio" + +# +#, fuzzy +msgid "Select backup files" +msgstr "Elije ficheros de backup" + +# +#, fuzzy +msgid "Select backup location" +msgstr "Elije localización del backup" + +# +msgid "Select channel to record from" +msgstr "Seleccione canal a grabar" + +msgid "Select copy destination for:" +msgstr "" + +msgid "Select default EPG type..." +msgstr "" + +msgid "Select desired image from feed list" +msgstr "Seleccione la imagen deseada de su lista de fuentes" + +msgid "Select destination for:" +msgstr "" + +msgid "Select files for backup." +msgstr "Seleccionar ficheros a backup." + +# +msgid "Select files/folders to backup" +msgstr "Seleccionar ficheros/carpetas a backup" + +msgid "Select input device" +msgstr "Seleccione dispositivo de entrada" + +msgid "Select input device." +msgstr "Seleccione dispositivo de entrada." + +# +msgid "Select interface" +msgstr "Seleccione interfaz" + +# +#, fuzzy +msgid "Select location" +msgstr "Seleccionar Localización" + +# +#, fuzzy +msgid "Select movie" +msgstr "Seleccionar una película" + +# +msgid "Select provider to add..." +msgstr "Seleccione proveedor a añadir..." + +# +msgid "Select refresh rate" +msgstr "Seleccionar la velocidad de refresco" + +msgid "Select satellites" +msgstr "" + +# +msgid "Select service to add..." +msgstr "Seleccione canal a añadir..." + +msgid "Select sort method:" +msgstr "" + +# +#, fuzzy +msgid "Select target folder" +msgstr "Elegir carpeta destino" + +# +#, fuzzy +msgid "Select the movie path" +msgstr "seleccione el directorio de las películas" + +# +#, fuzzy +msgid "Select upgrade source" +msgstr "Seleccione fuente de actualización a editar." + +# +msgid "Select upgrade source to edit." +msgstr "Seleccione fuente de actualización a editar." + +# +msgid "Select video input with up/down buttons" +msgstr "Seleccione entrada de vídeo con los botones arriba/abajo" + +# +msgid "Select video mode" +msgstr "Seleccionar el modo de video" + +# +msgid "Select wireless network" +msgstr "Seleccione red inalámbrica" + +msgid "Select your provider, and press OK to start the scan" +msgstr "" + +msgid "Selecting satellites 1 (USALS)" +msgstr "" + +msgid "Selecting satellites 2 (USALS)" +msgstr "" + +# +msgid "Send DiSEqC only on satellite change" +msgstr "Enviar DISEqC sólo en cambio de satélite" + +# +msgid "Separate titles with a main menu" +msgstr "Separar títulos con un menú principal" + +# +msgid "Sequence repeat" +msgstr "Repetir secuencia" + +# +msgid "Serbian" +msgstr "Servio" + +# +msgid "Service" +msgstr "Canal" + +# +msgid "Service has been added to the favourites." +msgstr "El canal ha sido añadido a los favoritos." + +# +msgid "Service has been added to the selected bouquet." +msgstr "El canal ha sido añadido a la lista seleccionada." + +# +#, fuzzy +msgid "Service info" +msgstr "Info del canal" + +# +msgid "" +"Service invalid!\n" +"(Timeout reading PMT)" +msgstr "" +"¡Canal no válido!\n" +"(Tiempo cumplido leyendo PMT)" + +# +#, fuzzy +msgid "Service name" +msgstr "Búsqueda de canal" + +# +msgid "" +"Service not found!\n" +"(SID not found in PAT)" +msgstr "" +"¡Canal no encontrado!\n" +"(SID no encontrado en el PAT)" + +msgid "Service reference" +msgstr "" + +# +msgid "Service scan" +msgstr "Buscar canales" + +# +#, fuzzy +msgid "Service searching" +msgstr "Buscando Canales" + +# +#, fuzzy +msgid "Service title mode" +msgstr "Seleccionar el modo de video" + +# +msgid "" +"Service unavailable!\n" +"Check tuner configuration!" +msgstr "" +"¡Canal no disponible!\n" +"¡Revisa la configuración del sintonizador!" + +# +msgid "Services" +msgstr "Canales" + +msgid "Set default" +msgstr "" + +#, fuzzy +msgid "Set end time" +msgstr "Ponga la hora final" + +msgid "Set fixed" +msgstr "" + +msgid "Set fps for external subtitles" +msgstr "" + +# +msgid "Set interface as default Interface" +msgstr "Poner Interface como por defecto" + +msgid "Set limits" +msgstr "" + +#, fuzzy +msgid "Set the type of the progress indication in the channel selection screen." +msgstr "Muestra el progreso del evento en la selección del canal" + +msgid "Set time window to 1 hour" +msgstr "" + +msgid "Set time window to 2 hours" +msgstr "" + +msgid "Set time window to 3 hours" +msgstr "" + +msgid "Set time window to 4 hours" +msgstr "" + +msgid "Set time window to 5 hours" +msgstr "" + +msgid "Set time window to 6 hours" +msgstr "" + +# +#, fuzzy +msgid "Set voltage and 22KHz" +msgstr "Poner Voltaje y 22kHz" + +# +msgid "Settings" +msgstr "Parámetros" + +# +msgid "Setup" +msgstr "Configuración" + +msgid "Setup menu" +msgstr "" + +# +#, fuzzy +msgid "Setup mode" +msgstr "Modo configuración" + +msgid "Setup your positioner" +msgstr "" + +#, fuzzy +msgid "Setup your satellite equipment" +msgstr "Equipo satélite" + +#, python-format +msgid "Shall the USB stick wizard proceed and program the image file %s into flash memory?" +msgstr "¿El asistente de USB programará el fichero de imagen %s en la memoria flash?" + +# +msgid "Sharpness" +msgstr "Nitidez" + +msgid "Short filenames" +msgstr "Nombres de ficheros cortos" + +msgid "Show EIT now/next in infobar" +msgstr "" + +# +#, fuzzy +msgid "Show EPG for current channel..." +msgstr "Mostrar infobar cuando cambie el evento" + +# +#, fuzzy +msgid "Show EPG..." +msgstr "mostrar EPG..." + +msgid "Show Games show" +msgstr "" + +msgid "Show SNR percentage instead of dB value" +msgstr "" + +msgid "Show VCR scart on main menu" +msgstr "" + +# +#, fuzzy +msgid "Show WLAN status" +msgstr "Mostrar estado de la WLAN" + +msgid "Show animation while busy" +msgstr "" + +# +#, fuzzy +msgid "Show background in radio mode" +msgstr "imagen de fondo" + +msgid "Show bouquet selection menu" +msgstr "" + +msgid "Show busy indicator when the system is busy." +msgstr "" + +msgid "Show channel numbers in channel selection" +msgstr "" + +msgid "Show columns" +msgstr "" + +msgid "Show crypto icons" +msgstr "" + +msgid "Show crypto info in infobar" +msgstr "" + +msgid "Show detailed event info" +msgstr "" + +# +#, fuzzy +msgid "Show event details" +msgstr "mostrar detalles del evento" + +msgid "Show event-progress in channel selection" +msgstr "Muestra el progreso del evento en la selección del canal" + +# +#, fuzzy +msgid "Show extended description" +msgstr "mostrar descripción extendida" + +# +#, fuzzy +msgid "Show extensions..." +msgstr "ver extensiones..." + +msgid "Show icon for new/unseen items" +msgstr "" + +msgid "Show in extensions menu" +msgstr "" + +# +#, fuzzy +msgid "Show info" +msgstr "Mostar Info" + +# +#, fuzzy +msgid "Show info line" +msgstr "mostrar Infoline" + +# +msgid "Show infobar on channel change" +msgstr "Mostrar la barra de información al cambiar de canal" + +# +msgid "Show infobar on event change" +msgstr "Mostrar infobar cuando cambie el evento" + +# +msgid "Show infobar on skip forward/backward" +msgstr "Mostrar la infobar al pasar adelante/atras" + +msgid "Show latest commits on sourceforge" +msgstr "" + +# +#, fuzzy +msgid "Show message when recording starts" +msgstr "Mostrar Mensaje cuando la Grabación comienza" + +# +#, fuzzy +msgid "Show movie lengths in movielist" +msgstr "Calcular longitud de Películas en la lista" + +msgid "Show multi channel EPG" +msgstr "" + +msgid "Show picons in channel list" +msgstr "" + +# +msgid "Show positioner movement" +msgstr "Mostrar movimiento del motor" + +msgid "Show screensaver" +msgstr "" + +msgid "Show second infobar" +msgstr "" + +msgid "Show service type icons" +msgstr "" + +# +msgid "Show services beginning with" +msgstr "Mostrar canales que empiecen por" + +# +#, fuzzy +msgid "Show shutdown menu" +msgstr "mostrar menú de apagado" + +msgid "Show single service EPG" +msgstr "" + +msgid "Show status icons in Movielist" +msgstr "" + +msgid "Show status icons in movie list" +msgstr "" + +msgid "Show status icons in movielist" +msgstr "" + +# +#, fuzzy +msgid "Show tag menu" +msgstr "mostrar el menú de etiquetas" + +# +msgid "Show the radio player..." +msgstr "Reproductor de radio..." + +# +msgid "Show the tv player..." +msgstr "Mostrar el reproductor de tv" + +msgid "Show warning when timeshift is stopped" +msgstr "" + +# +msgid "Shows the state of your wireless LAN connection.\n" +msgstr "Mostrar el estado de su conexión inalámbrica.\n" + +# +#, fuzzy +msgid "Shuffle playlist" +msgstr "lista de reproducción aleatoria" + +# +msgid "Shutdown" +msgstr "Apagado" + +msgid "Shutdown when in Standby" +msgstr "" + +msgid "Side by side" +msgstr "" + +msgid "Signal OK, proceeding" +msgstr "" + +msgid "Signal quality" +msgstr "" + +# +#, fuzzy +msgid "Signal strength:" +msgstr "Potencia Señal:" + +# +msgid "Signal: " +msgstr "Señal:" + +# +msgid "Similar" +msgstr "Parecido" + +# +msgid "Similar broadcasts:" +msgstr "Emisiones similares:" + +# +msgid "Simple" +msgstr "Sencillo" + +# +msgid "Simple titleset (compatibility for legacy players)" +msgstr "Título Simple (compatibilidad para más reproductores)" + +# +msgid "Single" +msgstr "Uno" + +# +msgid "Single EPG" +msgstr "EPG Sencillo" + +# +msgid "Single satellite" +msgstr "Satélite único" + +# +#, fuzzy +msgid "Single step (GOP)" +msgstr "En un solo paso (GOP)" + +# +msgid "Single transponder" +msgstr "Transponder único" + +msgid "Site latitude" +msgstr "" + +msgid "Site longitude" +msgstr "" + +# +msgid "Skin" +msgstr "Piel" + +# +msgid "Skins" +msgstr "Pieles" + +# +#, fuzzy +msgid "Skip empty services" +msgstr "Proteger canales" + +msgid "Skip internet connection check (disables automatic package installation)" +msgstr "Saltar comprobación de la conexión a Internet (desactiva la instalación automática del paquete)" + +# +#, fuzzy +msgid "Sleep timer" +msgstr "Apagado automático" + +msgid "SleepTimer Configuration" +msgstr "" + +msgid "Sleeptimer" +msgstr "" + +# +#, fuzzy +msgid "Slide picture in loop" +msgstr "fotos en reproducción en bucle" + +# +#, fuzzy +msgid "Slide show interval (sec.)" +msgstr "Intervalo de diapositivas (seg.)" + +# +#, python-format +msgid "Slot %d" +msgstr "Slot %d" + +msgid "Slovak" +msgstr "" + +# +msgid "Slovenian" +msgstr "Esloveno" + +# +msgid "Slow" +msgstr "Lento" + +# +#, fuzzy +msgid "Slow motion speeds" +msgstr "Velocidades lentas" + +# +#, fuzzy +msgid "Small progress" +msgstr "En Progreso" + +msgid "Social/Political/Economics" +msgstr "" + +msgid "SoftCam / CI" +msgstr "" + +# +#, fuzzy +msgid "Softcam type" +msgstr "Software" + +# +msgid "Software" +msgstr "Software" + +# +msgid "Software management" +msgstr "Manejar software" + +msgid "Software manager setup" +msgstr "Configuración del manejador de software" + +# +msgid "Software restore" +msgstr "Restaurar software" + +# +msgid "Software update" +msgstr "Actualizar software" + +msgid "Softwaremanager information" +msgstr "Información Softwaremanager" + +# +msgid "Some plugins are not available:\n" +msgstr "Algunos complementos no están disponibles:\n" + +# +#, fuzzy, python-format +msgid "Sorry, %s has not been installed!" +msgstr "Lo siento, pero MediaScanner no está instalado!" + +msgid "Sorry, deleting directories can (for now) only be done through the trash can." +msgstr "" + +# +#, fuzzy +msgid "Sorry, no backups found!" +msgstr "Lo siento, no he encontrado backups!" + +# +#, fuzzy +msgid "Sorry, no details available!" +msgstr "Lo siento, no hay Detalles disponibles!" + +# +#, fuzzy +msgid "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." +msgstr "" +"Lo siento, pero su destino de backup no es escribible.\n" +"Elija otro." + +msgid "Sort" +msgstr "" + +# +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort A-Z" +msgstr "Ordenar A-Z" + +msgid "Sort by" +msgstr "" + +msgid "Sort list:" +msgstr "" + +# +#. TRANSLATORS: This must fit into the header button in the EPG-List +#, fuzzy +msgid "Sort time" +msgstr "Ordenar por hora" + +# +msgid "Sound" +msgstr "Sonido" + +# +#, fuzzy +msgid "Sound carrier" +msgstr "Portadora de sonido" + +msgid "Source request" +msgstr "" + +# +msgid "South" +msgstr "Sur" + +# +msgid "Spanish" +msgstr "Español" + +msgid "Specify the end time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the end time until the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify the start time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the start time when the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify timeframe to ignore inactivity sleeptimer" +msgstr "" + +msgid "Specify timeframe to ignore the shutdown in standby" +msgstr "" + +# +msgid "Split preview mode" +msgstr "Dividir modo previsualización" + +msgid "Splitscreen" +msgstr "" + +msgid "Sports" +msgstr "" + +# +#, fuzzy +msgid "Standard" +msgstr "estándar" + +msgid "Standart list" +msgstr "" + +# +msgid "Standby" +msgstr "Reposo" + +# +#, fuzzy +msgid "Standby / restart" +msgstr "Reposo / Reiniciar" + +msgid "Standby after current event" +msgstr "" + +#, fuzzy, python-format +msgid "Standby fan %d PWM" +msgstr "Ventilador en reposo %d PWM" + +#, fuzzy, python-format +msgid "Standby fan %d voltage" +msgstr "Ventilador en reposo %d Voltaje" + +msgid "Standby in " +msgstr "" + +msgid "StandbyLED" +msgstr "" + +# +msgid "Start from the beginning" +msgstr "Comenzar desde el inicio" + +msgid "Start offline decode" +msgstr "" + +# +msgid "Start recording?" +msgstr "¿Iniciar grabación?" + +# +msgid "Start test" +msgstr "Comenzar test" + +# +#, fuzzy +msgid "Start time" +msgstr "HoraInicio" + +msgid "Start time to ignore inactivity sleeptimer" +msgstr "" + +msgid "Start time to ignore shutdown in standby" +msgstr "" + +# +#, fuzzy +msgid "Start timeshift" +msgstr "comenzar pausa" + +msgid "Start with list screen" +msgstr "" + +# +msgid "Starting on" +msgstr "Comenzando" + +msgid "Startup the set top box in standby" +msgstr "" + +msgid "Startup to Standby" +msgstr "" + +# +msgid "Step east" +msgstr "Paso este" + +# +msgid "Step west" +msgstr "Paso oeste" + +msgid "Stepped east" +msgstr "" + +msgid "Stepped west" +msgstr "" + +# +msgid "Stop" +msgstr "Parar" + +# +#, fuzzy +msgid "Stop PiP" +msgstr "parar PiP" + +# +msgid "Stop current event and disable coming events" +msgstr "Para el evento actual y desactivar los eventos siguientes" + +# +msgid "Stop current event but not coming events" +msgstr "Parar el evento actual pero no los eventos siguientes" + +# +#, fuzzy +msgid "Stop entry" +msgstr "parar elemento" + +# +msgid "Stop playing this movie?" +msgstr "¿Parar la reproducción de esta película?" + +msgid "Stop recording" +msgstr "" + +msgid "Stop recording and delete" +msgstr "" + +msgid "Stop service on return to movie list" +msgstr "" + +# +msgid "Stop test" +msgstr "Parar test" + +# +msgid "Stop testing plane after # failed transponders" +msgstr "Parar el testeo plano después de # transporders fallidos" + +# +msgid "Stop testing plane after # successful transponders" +msgstr "Parar el testeo plano después de # transponders correctos" + +msgid "Stop timer recording" +msgstr "" + +# +#, fuzzy +msgid "Stop timeshift" +msgstr "parar pausa" + +# +#, fuzzy +msgid "Stop timeshift?" +msgstr "¿Parar grabación de pausa?" + +msgid "Stopped" +msgstr "" + +msgid "Store at index" +msgstr "" + +# +msgid "Store position" +msgstr "Almacenar posición" + +# +msgid "Stored position" +msgstr "Posición almacenada" + +msgid "Stream" +msgstr "" + +msgid "Stream request" +msgstr "" + +msgid "Strongest position" +msgstr "" + +# +msgid "Subservice list..." +msgstr "Lista de subcanales..." + +# +msgid "Subservices" +msgstr "Subcanales" + +msgid "Subtitle Quickmenu" +msgstr "" + +# +#, fuzzy +msgid "Subtitle alignment" +msgstr "Selección de subtítulo" + +msgid "Subtitle border width" +msgstr "" + +msgid "Subtitle delay when timing is bad" +msgstr "" + +msgid "Subtitle delay when timing lacks" +msgstr "" + +# +#, fuzzy +msgid "Subtitle font size" +msgstr "Subtítulos" + +msgid "Subtitle language selection 1" +msgstr "" + +msgid "Subtitle language selection 2" +msgstr "" + +msgid "Subtitle language selection 3" +msgstr "" + +msgid "Subtitle language selection 4" +msgstr "" + +# +#, fuzzy +msgid "Subtitle position" +msgstr "Selección de subtítulo" + +# +msgid "Subtitle selection" +msgstr "Selección de subtítulo" + +msgid "Subtitle selection..." +msgstr "" + +msgid "Subtitle settings" +msgstr "" + +# +msgid "Subtitles" +msgstr "Subtítulos" + +# +msgid "Sun" +msgstr "Dom" + +# +msgid "Sunday" +msgstr "Domingo" + +# +#, fuzzy +msgid "Swap PiP and main picture" +msgstr "intercambiar PiP con la imagen principal" + +# +#, fuzzy +msgid "Swap services" +msgstr "Intercambiar Canales" + +# +msgid "Swedish" +msgstr "Sueco" + +msgid "Switch TV to correct input" +msgstr "" + +msgid "Switch between filelist/playlist" +msgstr "" + +msgid "Switch between normal mode and list mode" +msgstr "" + +msgid "Switch to HDMI in mode" +msgstr "" + +# +#, fuzzy +msgid "Switch to filelist" +msgstr "cambiar a lista de ficheros" + +msgid "Switch to next channel" +msgstr "" + +# +#, fuzzy +msgid "Switch to next channel in history" +msgstr "canal siguiente en historia" + +# +#, fuzzy +msgid "Switch to next sub service" +msgstr "Cambiar al subcanal siguiente" + +# +#, fuzzy +msgid "Switch to playlist" +msgstr "cambiar a lista" + +# +#, fuzzy +msgid "Switch to previous channel" +msgstr "Cambiar al subcanal anterior" + +# +#, fuzzy +msgid "Switch to previous channel in history" +msgstr "canal anterior en historia" + +# +#, fuzzy +msgid "Switch to previous sub service" +msgstr "Cambiar al subcanal anterior" + +msgid "Switchable tuner types:" +msgstr "Tipos de tuner seleccionables::" + +msgid "Symbol rate" +msgstr "" + +msgid "Symbol rate:" +msgstr "" + +msgid "Sync failure moving back to origin !" +msgstr "" + +# +msgid "System" +msgstr "Sistema" + +# +#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) +msgid "TRANSLATOR_INFO" +msgstr "" +"josej@zapater.fdns.net\n" +"Traductor de enigma2 al español.\n" +"ESPACIO PARA SU PUBLICIDAD.\n" +"ESPACIO PARA SU PUBLICIDAD.\n" +"Si tiene un proyecto de traducción técnico del inglés\n" +"al español no dude en ponerse en contacto conmigo." + +# +msgid "TS file is too large for ISO9660 level 1!" +msgstr "El fichero TS es demasiado grande para el nivel 1 ISO9660." + +msgid "TSID" +msgstr "" + +msgid "TV physical address report" +msgstr "" + +msgid "TXT PID" +msgstr "" + +# +#, fuzzy +msgid "Table of contents for collection" +msgstr "Tabla de contenido para la colección" + +# +msgid "Tags" +msgstr "Etiquetas" + +msgid "Teletext subtitle color" +msgstr "" + +# +#, fuzzy +msgid "Temperature and fan control" +msgstr "Control de temperatura y ventilador" + +# +msgid "Terrestrial" +msgstr "Terrestre" + +# +msgid "Terrestrial provider" +msgstr "Proveedor terrestre" + +# +msgid "Test DiSEqC settings" +msgstr "Configuración de Test DisEqC" + +# +msgid "Test mode" +msgstr "Modo test" + +msgid "Test the network configuration of your receiver.\n" +msgstr "" + +# +#, fuzzy +msgid "Test type" +msgstr "Tipo de Testeo" + +# +#, fuzzy +msgid "Text color" +msgstr "color de texto" + +msgid "Thai" +msgstr "" + +# +msgid "" +"Thank you for using the wizard.\n" +"Please press OK to continue." +msgstr "" +"Gracias por usar el asistente.\n" +"Pulse OK para continuar." + +# +#, fuzzy +msgid "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." +msgstr "" +"Gracias por usar el asistente.\n" +"Pulse OK para continuar." + +msgid "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?" +msgstr "" + +msgid "The PIN code has been changed successfully." +msgstr "El código PIN ha sido cambiado correctamente." + +msgid "The PIN codes you entered are different." +msgstr "El código PIN que ha introducido es diferente." + +msgid "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" +msgstr "" +"El pen USB fue preparado para ser arrancable.\n" +"¡Ahora puede descargar un fichero de imagen NFI!" + +# +msgid "The backup failed. Please choose a different backup location." +msgstr "El backup ha fallado. Elija una localización diferente para el backup." + +#, python-format +msgid "" +"The current beta image might not be stable.\n" +"For more information see %s." +msgstr "" + +# +#, python-format +msgid "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." +msgstr "" +"El directorio %s no es escribible.\n" +"Seleccione otro directorio que si lo sea." + +# +#, python-format +msgid "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" +msgstr "" +"El siguiente dispositivo fué encontrado:\n" +"\n" +"%s\n" +"\n" +"¿Quiere escribir el USB flasher a esta memoria USB?" + +# +msgid "The following files were found..." +msgstr "Los siguientes ficheros fueron encontrados..." + +msgid "The md5sum validation failed, the file may be corrupted!" +msgstr "La validación md5sum ha fallado, ¡el fichero parece corrupto!" + +#, fuzzy +msgid "" +"The network wizard extension is not installed!\n" +"Please install it." +msgstr "" +"¡La extensión Asistente de Red no está instalada!\n" +"Por favor, instálela." + +# +#, python-format +msgid "The path %s already exists." +msgstr "El directorio %s ya existe." + +# +msgid "The pin code you entered is wrong." +msgstr "El pin introducido no es correcto." + +# +#, python-format +msgid "The results have been written to %s." +msgstr "Los resultados han sido escritos a %s." + +# +msgid "The sleep timer has been activated." +msgstr "El apagado automático ha sido activado." + +# +msgid "The sleep timer has been disabled." +msgstr "El apagado automático ha sido cancelado." + +#, fuzzy +msgid "" +"The software management extension is not installed!\n" +"Please install it." +msgstr "" +"¡La extensión Softwaremanagement no está instalada!\n" +"Por favor, instálela." + +#, python-format +msgid "The status of the current beta image could not be checked because %s can not be reached." +msgstr "" + +# +msgid "The timer file (timers.xml) is corrupt and could not be loaded." +msgstr "El fichero de grabaciones (timers.xml) está corrupto y no puede cargarse." + +# +#, fuzzy +msgid "The user interface of your receiver is restarting" +msgstr "Espere mientras su red está reiniciando..." + +msgid "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" +msgstr "" + +# +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." +msgstr "" +"El plugin de RED inalámbrica no está instalado!\n" +"Por favor, instálelo y elija que quiere hacer lo siguiente." + +# +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it." +msgstr "" +"El plugin de la red inalámbrica no ha sido instalado!\n" +"Por favor, instálelo." + +# +msgid "The wizard can backup your current settings. Do you want to do a backup now?" +msgstr "El asistente puede backup tu configuración actual. ¿Quiere hacer el backup ahora?" + +#, python-format +msgid "The wizard found a configuration backup. Do you want to restore your old settings from %s?" +msgstr "El asistente encontró una configuración guardada. ¿Quiere restaurar su configuración antigua desde %s?" + +# +msgid "The wizard is finished now." +msgstr "El asistente ha finalizado ahora." + +# +msgid "There are at least " +msgstr "Hay al menos" + +# +#, fuzzy, python-format +msgid "There are at least %s updates available." +msgstr "No hay actualizaciones disponibles." + +# +msgid "There are currently no outstanding actions." +msgstr "No hay actualmente ninguna acción en ejecución." + +# +msgid "There are no updates available." +msgstr "No hay actualizaciones disponibles." + +msgid "There is no signal to lock on !" +msgstr "" + +# +msgid "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" +msgstr "" +"No debe haber suficiente especio en la partición seleccionada.\n" +"¿Seguro que quiere continuar?" + +# +msgid "This DVD RW medium is already formatted - reformatting will erase all content on the disc." +msgstr "El disco DVD-RW está ya formateado - reformatear borrará todos los contenidos del disco." + +msgid "" +"This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!" +msgstr "" + +# +msgid "This plugin is installed." +msgstr "Este plugin está instalado." + +# +msgid "This plugin is not installed." +msgstr "Este plugin no está instalado." + +# +msgid "This plugin will be installed." +msgstr "Este plugin será instalado." + +# +msgid "This plugin will be removed." +msgstr "Este plugin será desinstalado." + +#, python-format +msgid "This receiver cannot decode %s streams!" +msgstr "" + +# +#, fuzzy +msgid "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration" +msgstr "" +"Este test chequea los DNSs configurados.\n" +"Si obtiene un mensaje \"no confirmado\":\n" +"- chequee su DHCP, cable o configuración del adaptador\n" +"- si ha configurado los DNSs manualmente, verifíquelos en su Configuración de DNS" + +# +#, fuzzy +msgid "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" +msgstr "" +"Este test chequea si su cable de red está conectado a su adaptador de red.\n" +"Si consigue un mensaje de \"desconectado\"\n" +"- verifique que su cable de red está conectado\n" +"- verifique que el cable no está roto" + +# +#, fuzzy +msgid "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" +msgstr "" +"Este test chequea si una IP válida es encontrada para su Adaptador de Red.\n" +"Si consigue un mensaje de \"no confirmado\":\n" +"- no hay una IP válida\n" +"- verifique su DHCP, cable o configuración del adaptador" + +# +#, fuzzy +msgid "" +"This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." +msgstr "" +"Este test chequea si su adaptador de Red es configurado para IP automática con DHCP.\n" +"Si consigue un mensaje de \"desabilitado\":- entonces su Adaptador de Red es configurado con IP manual\n" +"- verifique que ha entrado una información de IP correcta en la configuración de Red.\n" +"Si consigue un mensaje de \"activado\":- verifique que ha configurado y está trabajando un servidor DHCP en su red." + +# +#, fuzzy +msgid "This test detects your configured LAN adapter." +msgstr "Este test detecta su adaptador de red configurado." + +msgid "" +"This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\n" +"Are you sure?" +msgstr "" + +# +msgid "Three" +msgstr "Tres" + +# +msgid "Threshold" +msgstr "Umbral" + +# +msgid "Thu" +msgstr "Jue" + +# +msgid "Thumbnails" +msgstr "Miniaturas" + +# +msgid "Thursday" +msgstr "Jueves" + +# +msgid "Time" +msgstr "Hora" + +# +#, fuzzy +msgid "Time scale" +msgstr "Selección de grabación" + +# +msgid "Timer" +msgstr "Grabación" + +msgid "Timer Overview" +msgstr "" + +# +#, fuzzy +msgid "Timer edit" +msgstr "Editar Programación" + +# +#, fuzzy +msgid "Timer editor" +msgstr "Editor de Grabaciones" + +# +msgid "Timer entry" +msgstr "Grabación" + +# +msgid "Timer log" +msgstr "Log de grabación" + +# +msgid "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" +msgstr "" +"¡Programaciones solapadas en timers.xml!\n" +"¡Chequéelo!" + +# +#, fuzzy +msgid "Timer overview" +msgstr "Grabación" + +# +#, fuzzy +msgid "Timer recording location" +msgstr "Ruta de la grabación" + +# +msgid "Timer sanity error" +msgstr "Error de grabación" + +# +msgid "Timer selection" +msgstr "Selección de grabación" + +msgid "Timer selection..." +msgstr "" + +# +#, fuzzy +msgid "Timer type" +msgstr "Tipo de grabación" + +# +msgid "Timeshift" +msgstr "Pausa" + +msgid "Timeshift Live" +msgstr "" + +# +msgid "Timeshift location" +msgstr "Ruta pausa grabación" + +# +msgid "Timeshift not possible!" +msgstr "¡Pausa no posible!" + +# +msgid "Timezone" +msgstr "Zona horaria" + +# +msgid "Title" +msgstr "Título" + +# +msgid "Title properties" +msgstr "Propiedades de título" + +# +msgid "Titleset mode" +msgstr "Modo Título" + +msgid "To audio selection" +msgstr "" + +msgid "To subtitle selection" +msgstr "" + +msgid "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." +msgstr "" + +# +msgid "Today" +msgstr "Hoy" + +# +#, fuzzy +msgid "Toggle a cut mark at the current position" +msgstr "poner una marca de corte en la posición actual" + +# +#, fuzzy +msgid "Tone amplitude" +msgstr "Tono de Amplitud" + +# +msgid "Tone mode" +msgstr "Modo tono" + +# +msgid "Toneburst" +msgstr "Toneburst" + +# +msgid "Toneburst A/B" +msgstr "Toneburst A/B" + +msgid "Top and bottom" +msgstr "" + +# +msgid "Track" +msgstr "Pista" + +# +msgid "Translation" +msgstr "Traducción" + +# +msgid "Translation:" +msgstr "Traducción:" + +msgid "Translations" +msgstr "" + +# +msgid "Transmission mode" +msgstr "Modo de trasmisión" + +# +msgid "Transponder" +msgstr "Transponder" + +# +#, fuzzy +msgid "Transponder type" +msgstr "Tipo de Transponder" + +msgid "Trash can" +msgstr "" + +# +msgid "Tries left:" +msgstr "Intentos que quedan:" + +# +msgid "Try to find used transponders in cable network.. please wait..." +msgstr "Intenta encontrar los transponders en la red de cable.. espere..." + +# +msgid "Trying to download a new packetlist. Please wait..." +msgstr "Intentando descargar una nueva lista de paquetes. Espere..." + +# +msgid "Tue" +msgstr "Mar" + +# +msgid "Tuesday" +msgstr "Martes" + +# +msgid "Tune" +msgstr "Tono" + +# +#, fuzzy +msgid "Tune and focus" +msgstr "Sintonizador" + +# +msgid "Tune failed!" +msgstr "¡Falló la sintonización!" + +# +msgid "Tuner" +msgstr "Sintonizador" + +# +msgid "Tuner configuration" +msgstr "Configuración sintonizador" + +msgid "Tuner is not supported" +msgstr "" + +# +#, fuzzy +msgid "Tuner slot" +msgstr "Slot del sintonizador" + +# +msgid "Tuner status" +msgstr "Sintonizador" + +# +#, fuzzy, python-format +msgid "Tuner status %s" +msgstr "Sintonizador" + +msgid "Tuner type" +msgstr "Tipo de tuner" + +# +msgid "Turkish" +msgstr "Turco" + +msgid "Turn on the power LED during standby." +msgstr "" + +msgid "Turning step size" +msgstr "" + +# +msgid "Two" +msgstr "Dos" + +# +msgid "Type" +msgstr "Tipo" + +# +msgid "Type of scan" +msgstr "Tipo de búsqueda" + +# +msgid "USALS" +msgstr "USALS" + +msgid "USALS calibration" +msgstr "" + +# +#, fuzzy +msgid "USB stick" +msgstr "Memoria USB" + +# +msgid "USB stick wizard" +msgstr "Asistente de lápiz USB" + +msgid "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" + +# +msgid "Undo install" +msgstr "Deshacer instalación" + +# +msgid "Undo uninstall" +msgstr "Deshacer desinstalación" + +msgid "Unencrypted" +msgstr "" + +msgid "UnhandledKey" +msgstr "Tecla no manejada" + +# +msgid "Unicable" +msgstr "Unicable" + +# +msgid "Unicable LNB" +msgstr "LNB Unicable" + +# +msgid "Unicable Martix" +msgstr "Matrix Unicable" + +# +msgid "Uninstall" +msgstr "Desinstalar" + +# +msgid "Universal LNB" +msgstr "LNB Universal" + +msgid "Unknown" +msgstr "" + +msgid "Unmount" +msgstr "" + +# +msgid "Unsupported" +msgstr "No soportado" + +# +msgid "Update" +msgstr "Actualizar" + +msgid "Update and ask to reboot" +msgstr "" + +msgid "Update and reboot (recommended)" +msgstr "" + +# +#, fuzzy +msgid "Update channel list only" +msgstr "canal siguiente en historia" + +#, python-format +msgid "Update completed, %d package was installed." +msgid_plural "Update completed, %d packages were installed." +msgstr[0] "" +msgstr[1] "" + +msgid "Update completed. Do you want to reboot your receiver?" +msgstr "" + +msgid "Update failed. Your receiver does not have a working internet connection." +msgstr "" + +msgid "Update has completed." +msgstr "" + +msgid "Updatefeed not available." +msgstr "Updatefeed no disponible." + +# +msgid "Updating software catalog" +msgstr "Actualizando el catálogo de software" + +# +msgid "Upgrading" +msgstr "Actualizando" + +# +msgid "Use" +msgstr "Uso" + +# +msgid "Use DHCP" +msgstr "Usar DHCP" + +msgid "Use EIT EPG information when it is available." +msgstr "" + +msgid "Use FreeSat EPG information when it is available." +msgstr "" + +msgid "Use MHW EPG information when it is available." +msgstr "" + +msgid "Use Netmed EPG information when it is available." +msgstr "" + +msgid "Use TV remote control" +msgstr "" + +# +#, fuzzy +msgid "Use USALS for this sat" +msgstr "Usar usals para este sat" + +msgid "Use ViaSat EPG information when it is available." +msgstr "" + +msgid "Use Virgin EPG information when it is available." +msgstr "" + +# +msgid "Use a gateway" +msgstr "Usar puerta de enlace" + +msgid "Use fastscan channel names" +msgstr "" + +msgid "Use fastscan channel numbering" +msgstr "" + +msgid "Use frequency or channel" +msgstr "" + +msgid "Use individual settings for each directory" +msgstr "" + +# +#, fuzzy +msgid "Use interface" +msgstr "Interface en uso" + +msgid "Use official channel numbering" +msgstr "" + +msgid "Use original DVB subtitle position" +msgstr "" + +msgid "Use original teletext position" +msgstr "" + +# +msgid "Use power measurement" +msgstr "Usar medida de potencia" + +#, fuzzy +msgid "Use the network wizard to configure selected network adapter" +msgstr "Use el Asistente de Red para configurar el adaptador de red seleccionado" + +# +#, fuzzy +msgid "Use the network wizard to configure your network\n" +msgstr "Use este asistente para configurar su Red\n" + +# +msgid "Use the up/down keys on your remote control to select an option. After that, press OK." +msgstr "Use las teclas arriba/abajo de su mando para seleccionar una opción. Después, pulse OK." + +# +#, fuzzy +msgid "Use the wizard to set up basic features" +msgstr "Use el asistente para configuración básica" + +#, fuzzy +msgid "Use these input device settings?" +msgstr "¿Usar esta configuración de dispositivo de entrada?" + +#, fuzzy +msgid "Use these settings?" +msgstr "¿Usar esta configuración?" + +# +msgid "Use this video enhancement settings?" +msgstr "¿Usar esta configuración de mejora de video?" + +# +#, fuzzy +msgid "Use trash can in movielist" +msgstr "Volver a la lista de películas" + +# +msgid "Used service scan type" +msgstr "Tipo de búsqueda de canales usada" + +msgid "User - bouquets" +msgstr "" + +# +msgid "User defined" +msgstr "Definido por el usuario" + +msgid "User defined transponder" +msgstr "" + +# +#, fuzzy +msgid "User interface" +msgstr "Interface en uso" + +# +msgid "Username" +msgstr "Nombre de usuario" + +#, python-format +msgid "Using LNB %d" +msgstr "" + +msgid "Using fixed address" +msgstr "" + +#, python-format +msgid "Using tuner %s" +msgstr "" + +msgid "Usually when the subtitle language is the same as the audio language, the subtitles will not be used. Enable this option to allow these subtitles to be used." +msgstr "" + +# +msgid "VCR scart" +msgstr "Euroconector VCR" + +# +msgid "VMGM (intro trailer)" +msgstr "VMGM (trailer intro)" + +# +msgid "Vertical" +msgstr "Vertical" + +msgid "Vertical turning speed" +msgstr "" + +msgid "Video PID" +msgstr "" + +# +msgid "Video enhancement preview" +msgstr "Previsualizar la mejora de vídeo" + +# +msgid "Video enhancement settings" +msgstr "Configuración de mejora de vídeo" + +# +msgid "Video enhancement setup" +msgstr "Configuración de mejora de video" + +# +#, fuzzy +msgid "Video fine tuning" +msgstr "Ajuste de video fino" + +# +#, fuzzy +msgid "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." +msgstr "" +"Selección entrada de vídeo\n" +"\n" +"Por favor, pulse OK si quiere ver esta página en su TV (o selecciones un puerto de entrada diferente).\n" +"\n" +"El puerto de entrada siguiente será automáticamente probado durante 10 segundos." + +# +msgid "Video mode selection." +msgstr "Selección de modo de vídeo." + +# +#, fuzzy +msgid "Video output" +msgstr "Salida de video" + +# +#, fuzzy +msgid "Video setup" +msgstr "Configuración de Video" + +# +#, fuzzy +msgid "Video wizard" +msgstr "Asientente de video" + +#, python-format +msgid "Video: %s fps" +msgstr "" + +msgid "VideoMode" +msgstr "" + +msgid "Videocodec" +msgstr "" + +msgid "Videoformat" +msgstr "" + +msgid "Videosize" +msgstr "" + +# +msgid "View Rass interactive..." +msgstr "Ver Rass interactivo..." + +# +msgid "View details" +msgstr "Ver detalles" + +# +msgid "View list of available " +msgstr "Ver lista de disponible" + +# +msgid "View list of available CommonInterface extensions" +msgstr "Ver lista de extensiones disponibles del InterfazComún" + +# +msgid "View list of available EPG extensions." +msgstr "Ver lista de extensiones de EPG disponibles." + +msgid "View list of available Satellite equipment extensions." +msgstr "Ver lista de extensiones disponibles de equipamiento de Satélite." + +# +msgid "View list of available communication extensions." +msgstr "Ver lista de extensiones de comunicación disponibles." + +# +msgid "View list of available default settings" +msgstr "Ver lista de configuración por defecto disponibles." + +# +#, fuzzy +msgid "View list of available display and userinterface extensions." +msgstr "Ver lista de extensiones de Pantalla e Interfaz de Usuario" + +# +msgid "View list of available multimedia extensions." +msgstr "Ver lista de extensiones multimedia disponibles." + +# +msgid "View list of available networking extensions" +msgstr "Ver lista de extensiones disponibles de red" + +# +msgid "View list of available recording extensions" +msgstr "Ver lista de extensiones de grabación disponibles" + +# +msgid "View list of available skins" +msgstr "Ver lista de pieles disponibles" + +# +msgid "View list of available software extensions" +msgstr "Ver lista de extensiones de software disponibles" + +# +msgid "View list of available system extensions" +msgstr "Ver lista de extensiones de sistema disponibles" + +# +#, fuzzy +msgid "View photos..." +msgstr "Ver Fotos..." + +# +msgid "View teletext..." +msgstr "Ver teletexto..." + +# +#, fuzzy +msgid "View video CD..." +msgstr "Ver Video CD..." + +# +#, fuzzy +msgid "Virtual keyboard" +msgstr "Teclado Virtual" + +# +msgid "Voltage mode" +msgstr "Modo voltaje" + +# +msgid "Volume" +msgstr "Volumen" + +# +msgid "W" +msgstr "W" + +# +msgid "WEP" +msgstr "WEP" + +msgid "WLAN connection" +msgstr "Conexión WLAN" + +# +msgid "WPA" +msgstr "WPA" + +# +msgid "WPA or WPA2" +msgstr "WPA o WPA2" + +# +msgid "WPA2" +msgstr "WPA2" + +# +msgid "WSS on 4:3" +msgstr "WSS en 4:3" + +# +msgid "Waiting" +msgstr "Esperando" + +msgid "Waiting for mount" +msgstr "" + +msgid "Waiting for partition" +msgstr "" + +msgid "Wakeup" +msgstr "" + +msgid "Wakeup TV from standby" +msgstr "" + +msgid "Wakeup receiver for start timer" +msgstr "" + +msgid "Wakeup receiver from standby" +msgstr "" + +msgid "Wakeup signal from TV" +msgstr "" + +msgid "Wakeup type" +msgstr "" + +msgid "Warning: no LNB; using factory defaults." +msgstr "" + +# +#, fuzzy +msgid "Watch movies..." +msgstr "Reproducir películas grabadas..." + +# +#, fuzzy +msgid "Watch recordings..." +msgstr "grabando..." + +# +msgid "Wed" +msgstr "Mié" + +# +msgid "Wednesday" +msgstr "Miércoles" + +# +msgid "Weekday" +msgstr "DiaSemana" + +msgid "Weighted position" +msgstr "" + + + +# +msgid "please connect your receiver to the internet" +msgstr "por favor conecte su receptor a internet" + +# +#, fuzzy +msgid "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." +msgstr "" +"Bienvenido al editor de listas de cortes.\n" +"\n" +"Vaya al comienzo que quiera cortar. Pulse OK, seleccione corte inicial'.\n" +"\n" +"Vaya al final, pulse OK, seleccione 'corte final'. Eso es todo." + +msgid "Welcome to the image upgrade wizard. The wizard will assist you in upgrading the firmware of your receiver by providing a backup facility for your current settings and a short explanation of how to upgrade your firmware." +msgstr "" + +msgid "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" +msgstr "" + +msgid "" +"Welcome.\n" +"\n" +"This start Wizard will guide you through the basic setup of your receiver.\n" +"\n" +"Press the OK button on your remote control to move to the next step" +msgstr "" +"Bienvenido.\n" +"\n" +"Este Asistente de arranque le guiará a través de la configuración básica de su receptor.\n" +"\n" +"Pulse el botón OK del mando a distancia para pasar al siguiente paso" + +msgid "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step.\n" + +msgstr "" +"Bienvenido.\n" +"\n" +"Este asistente de inicio le guiará a través de la configuración básica de su receptor.\n" +"Pulse el botón OK del mando a distancia para pasar al siguiente paso.\n" + +# +msgid "Welcome..." +msgstr "Bienvenido..." + +# +msgid "West" +msgstr "Oeste" + +msgid "West limit set" +msgstr "" + +# +msgid "What do you want to scan?" +msgstr "¿Qué quiere buscar?" + +msgid "When enabled the PiP can be closed by the exit button." +msgstr "" + +msgid "When enabled the arrow buttons around the OK button will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled the left, right, CH+/-, B+/-, P+/- buttons will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled you can specify a timeframe to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "When enabled you can specify a timeframe were the inactivity sleeptimer is ignored. Not the detection is disabled during this timeframe but the inactivity timeout is disabled" +msgstr "" + +msgid "When enabled you can zap channels with the CH+/-, B+/-, P+/- buttons instead of opening the channel selection list." +msgstr "" + +msgid "When enabled you get the channel selection list via the OK button, the infobar toggle is then transfered to exit button" +msgstr "" + +msgid "When enabled, AIT data will be included in http streams. This allows a client receiver to use HbbTV." +msgstr "" + +msgid "When enabled, ECM data will be included in http streams. This allows a client receiver to do the descrambling." +msgstr "" + +msgid "When enabled, EIT data will be included in http streams. This allows a client receiver to show EPG." +msgstr "" + +msgid "When enabled, a popup message will be shown when a movie has finished and the next one will start." +msgstr "" + +msgid "When enabled, a popup message will be shown when a recording starts." +msgstr "" + +msgid "When enabled, a radio background image will be visible while listening to a radio channel." +msgstr "" + +msgid "When enabled, a recording is allowed to interrupt live tv, when there are no free tuners." +msgstr "" + +msgid "When enabled, a warning will be displayed and the user will get an option to stop or to continue the timeshift." +msgstr "" + +msgid "When enabled, authentication is required to watch http streams." +msgstr "" + +msgid "When enabled, channel numbering will start at '1' for each bouquet." +msgstr "" + +msgid "When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen." +msgstr "" + +msgid "When enabled, continue to the next bouquet when the last channel of the current bouquet is reached while changing channels." +msgstr "" + +msgid "When enabled, deleted recordings are moved to the trash can, instead of being deleted immediately." +msgstr "" + +msgid "When enabled, display the EIT now/next eventdata in infobar. When disabled, display now/next eventdata from the EPG cache instead." +msgstr "" + +msgid "When enabled, encryption info will be shown in the infobar (when supported by the skin)." +msgstr "" + +msgid "When enabled, error messages related to the Common Interface module will not be shown." +msgstr "" + +msgid "When enabled, error messages related to zapping will not be shown." +msgstr "" + +msgid "When enabled, external subtitles will be always turned on for playback movie." +msgstr "" + +msgid "When enabled, graphical DVB subtitles are preferred over teletext subtitles, when both types are available." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be centered horizontally." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be displayed at their original position." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be displayed in yellow, instead of the original color." +msgstr "" + +msgid "When enabled, http streams are descrambled on the server side. The (remote) client receiver does not have to do descrambling." +msgstr "" + +msgid "When enabled, it is possible to leave the movieplayer with exit." +msgstr "" + +msgid "When enabled, measure power consumption to detect when the rotor stops turning (when supported by the tuner)." +msgstr "" + +msgid "When enabled, number markers will be hiden." +msgstr "" + +msgid "When enabled, services may be grouped in multiple bouquets." +msgstr "" + +msgid "When enabled, show channel numbers in the channel selection screen." +msgstr "" + +msgid "When enabled, subtitles for the hearing impaired can be used." +msgstr "" + +msgid "When enabled, subtitles for the hearing impaired will be preferred over normal subtitles, when both types are available." +msgstr "" + +msgid "When enabled, teletext pages will be cached, allowing faster access." +msgstr "" + +msgid "When enabled, teletext subtitles will be displayed at their original position." +msgstr "" + +msgid "When enabled, the VCR scart option will be shown on the main menu" +msgstr "" + +msgid "When enabled, the channel selection list will be hidden while listening to a radio channel" +msgstr "" + +msgid "When enabled, the infobar will be displayed when a new event starts." +msgstr "" + +msgid "When enabled, the infobar will be displayed when changing channels." +msgstr "" + +msgid "When enabled, the infobar will be displayed when skipping forwards/backwards during media playback." +msgstr "" + +msgid "When enabled, the lenght of each recording will be shown in the movielist (this might cause some additional loading time)." +msgstr "" + +msgid "When enabled, the original line breaks will be removed from the teletext subtitles." +msgstr "" + +msgid "When enabled, the receiver will automatically use the audio track which you selected before." +msgstr "" + +msgid "When enabled, the receiver will automatically use the subtitles which you selected before." +msgstr "" + +msgid "When enabled, the receiver will no longer monitor the tuned transponder for possible changes. Do not use this option unless you know what you are doing." +msgstr "" + +msgid "When enabled, the receiver will select an AC3 track (when available)." +msgstr "" + +msgid "When enabled, the receiver will select an AC3+ track (when available)." +msgstr "" + +msgid "When enabled, timeshift starts automatically in background after specified time." +msgstr "" + +# +#, fuzzy +msgid "When enabled, use DHCP for the IP configuration." +msgstr "abir la configuración del servidor de nombres" + +msgid "When enabled, your receiver will detect activity on the VCR SCART input." +msgstr "" + +msgid "When nonzero, a recording will start earlier than the starting time indicated by the EPG." +msgstr "" + +msgid "When nonzero, a recording will stop later than the ending time indicated by the EPG." +msgstr "" + +msgid "When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture." +msgstr "" + +msgid "When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture." +msgstr "" + +# +msgid "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" +msgstr "" +"Cuando haga un reseteo de fábrica, perderá todos los datos de configuración\n" +"(incluyendo listas, canales, datos del satélite...)\n" +"Después de un reseteo, su receptor se reiniciará automáticamente!\n" +"\n" +"¿Quiere hacer un reset de fábrica?" + +# +msgid "Where do you want to backup your settings?" +msgstr "¿Donde quiere backup su configuración?" + +# +msgid "Where to save temporary timeshift recordings?" +msgstr "¿Dónde guardar las grabaciones temporales de pausa?" + +# +msgid "Wireless LAN" +msgstr "RED Inalámbrica" + +# +#, fuzzy +msgid "Wireless network" +msgstr "Red Inalámbrica" + +# +#, fuzzy +msgid "Wireless network configuration..." +msgstr "Configuración de Red..." + +msgid "Wireless network connection setup" +msgstr "" + +msgid "Wireless network connection setup." +msgstr "" + +msgid "Wireless network state" +msgstr "" + +msgid "With popup" +msgstr "" + +msgid "Without popup" +msgstr "" + +# +msgid "Write error while recording. Disk full?\n" +msgstr "Error mientras grababa. ¿Disco lleno?\n" + +# +msgid "Write failed!" +msgstr "¡Falló la escritura!" + +# +msgid "YPbPr" +msgstr "YPbPr" + +# +msgid "Year" +msgstr "Año" + +msgid "Yellow DVB subtitles" +msgstr "" + +# +msgid "Yes" +msgstr "Si" + +msgid "Yes and save" +msgstr "" + +msgid "Yes and save in movie dir" +msgstr "" + +# +msgid "Yes to all" +msgstr "Si a todo" + +msgid "Yes, always" +msgstr "Si, siempre" + +# +msgid "Yes, and delete this movie" +msgstr "Si, y borre esta película" + +# +msgid "Yes, backup my settings!" +msgstr "Si, ¡backup mi configuración!" + +msgid "Yes, delete this movie and return to movie list" +msgstr "" + +# +msgid "Yes, do a manual scan now" +msgstr "Si, haga una búsqueda manual ahora" + +# +msgid "Yes, do an automatic scan now" +msgstr "Si, haga una búsqueda automática ahora" + +# +msgid "automatic scan" +msgstr "búsqueda automática" + +# +msgid "please press ok if you can see this page on your tv (or select a diffrent input port)" +msgstr "Presione OK para seleccionar la entrada de video" + +msgid "The nex input port will be automatically probed in 20 seconds" +msgstr "El puerto de entrada se explora automáticamente en 20 segundos" + +# +msgid "fast Scan" +msgstr "Escaneo Rapido" + +# +msgid "video input selection" +msgstr "seleccióne la entrada de vídeo" + +# +msgid "Yes, do another manual scan now" +msgstr "Si, hacer otra búsqueda manual ahora" + +# +msgid "Yes, perform a shutdown now." +msgstr "Si, realice el apagado ahora." + +# +msgid "Yes, restore the settings now" +msgstr "Si, restaure la configuración ahora" + +# +msgid "Yes, returning to movie list" +msgstr "Si, vuelve a la lista de películas" + +msgid "Yesterday" +msgstr "" + +#, python-format +msgid "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" +msgstr "" + +# +msgid "You can cancel the installation." +msgstr "Usted puede cancelar la instalación." + +# +msgid "You can cancel the removal." +msgstr "Ha cancelado la desinstalación." + +msgid "You can continue watching TV etc. while this is running." +msgstr "" + +# +msgid "You can install this plugin." +msgstr "Usted puede instalar el plugin." + +msgid "You can only burn receiver recordings!" +msgstr "" + +# +msgid "You can remove this plugin." +msgstr "Usted puede desinstalar el plugin." + +# +msgid "You cannot delete this!" +msgstr "¡No puede borrar esto!" + +msgid "You didn't select a channel to record from." +msgstr "No ha seleccionado un canal desde el cual grabar." + +# +msgid "You have chosen to backup your settings. Please press OK to start the backup now." +msgstr "Ha elegido hacer un backup de su configuración. Pulse OK para comenzar el backup ahora." + +# +msgid "You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased." +msgstr "Ha elegido crear un nuevo .NFI flasher autoarrancable memoria USB. Esto reparticiona la memoria USB y todos los datos serán borrados." + +# +msgid "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." +msgstr "Ha elegido restaurar su configuración. Enigma2 reiniciará después de restaurar. Pulse OK para comenzar a restaurar ahora." + +# +#, python-format +msgid "You have to wait %s!" +msgstr "Tiene que esperar %s!" + +msgid "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." +msgstr "" + +msgid "You system does not support ext4" +msgstr "" + +# +msgid "Your backup succeeded. We will now continue to explain the further upgrade process." +msgstr "El backup ha terminado. Nosotros continuamos explicando el proceso de actualización." + +# +msgid "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" +msgstr "Su colección exede el tamaño de un medio de capa simple, necesitará un DVD blanco de doble capa!" + +msgid "Your current collection will get lost!" +msgstr "¡Su colección actual se perdió!" + +# +msgid "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." +msgstr "" +"El firmware del frontprocessor debe ser actualizado.\n" +"Pulse OK para comenzar la actualización." + +msgid "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" + +# +msgid "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." +msgstr "" +"¡Su conexión a internet está funcionando!\n" +"Elija que quiere hacer lo siguiente." + +#, python-format +msgid "Your internet connection is working (ip: %s)" +msgstr "Su conexión a Internet está funcionando con (ip: %s)" + +# +msgid "Your network configuration has been activated." +msgstr "Su configuración de red ha sido activada." + +msgid "Your receiver does not have an internet connection" +msgstr "" + +# +#, fuzzy +msgid "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" +msgstr "" +"Su Dreambox está ahora preparado para usarse.\n" +"\n" +"Si conexión a internet está funcionando ahora.\n" +"\n" + +msgid "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." +msgstr "" + +msgid "Your receiver is rebooting" +msgstr "" + +msgid "Your receiver is shutting down" +msgstr "" + +msgid "Your receiver is shutting down. Please stand by..." +msgstr "" + +msgid "Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver." +msgstr "" + +msgid "Your receiver will got to stand by due to the sleeptimer." +msgstr "" + +msgid "Your receiver will got to standby due to inactivity." +msgstr "" + +msgid "Your receiver will restart after pressing OK on your remote control." +msgstr "" + +# +msgid "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." +msgstr "" +"Su conexión a internet inalámbrica no puede iniciarse!\n" +"Ha conectado un dispositivo WLAN USB?\n" +"\n" +"Pulse que quiere hacer lo siguiente." + +msgid "Zap" +msgstr "" + +msgid "Zap back to previously tuned service?" +msgstr "¿Volver al último canal sintonizado?" + +# +msgid "Zap back to service before positioner setup?" +msgstr "¿Volver al canal antes de configurar el motor?" + +msgid "Zap back to service before tuner setup?" +msgstr "¿Volver al canal anterior a la configuración del tuner?" + +msgid "Zap focus to Picture in Picture" +msgstr "" + +msgid "Zap focus to main screen" +msgstr "" + +msgid "Zap mode" +msgstr "" + +msgid "Zap to selected channel" +msgstr "" + +msgid "Zap to selected channel, or show detailed event info (depends on configuration)" +msgstr "" + +# +msgid "[alternative edit]" +msgstr "[edición alternativa]" + +# +msgid "[bouquet edit]" +msgstr "[editar lista]" + +# +msgid "[favourite edit]" +msgstr "[editar favoritos]" + +# +msgid "[move mode]" +msgstr "[modo mover]" + +# +msgid "a gui to assign services/providers to common interface modules" +msgstr "un gui para asignar canales/proveedores a los módulos de interfaz común" + +# +msgid "a gui to assign services/providers/caids to common interface modules" +msgstr "un gui para asignar canales/proveedores/caids a los módulos de interfaz común" + +# +msgid "abort alternatives edit" +msgstr "abortar la edición alternativa" + +# +msgid "abort bouquet edit" +msgstr "abortar la edición de listas" + +# +msgid "abort favourites edit" +msgstr "abortar la edición de favoritos" + +# +msgid "about to start" +msgstr "sobre comenzar" + +# +msgid "activate network adapter configuration" +msgstr "activar configuración del adaptador de red" + +# +msgid "add alternatives" +msgstr "añadir alternativas" + +# +msgid "add bookmark" +msgstr "añadir marcador" + +# +msgid "add bouquet" +msgstr "añadir lista" + +# +msgid "add marker" +msgstr "añadir marcador" + +# +msgid "add service to bouquet" +msgstr "añadir canal a la lista" + +# +msgid "add service to favourites" +msgstr "añadir canal a favoritos" + +# +msgid "add to parental protection" +msgstr "añadir a protección de adultos" + +msgid "adult movie/drama" +msgstr "" + +# +msgid "advanced" +msgstr "avanzado" + +msgid "adventure/western/war" +msgstr "" + +msgid "advertisement/shopping" +msgstr "" + +msgid "after " +msgstr "" + +# +#, fuzzy +msgid "alphabetic" +msgstr "orden alfabético" + +msgid "alphabetic reverse" +msgstr "" + +msgid "alternative" +msgstr "" + +msgid "always" +msgstr "" + +msgid "and select next channel" +msgstr "" + +msgid "and select previous channel" +msgstr "" + +msgid "arts/culture (without music, general)" +msgstr "" + +msgid "arts/culture magazine" +msgstr "" + +msgid "athletics" +msgstr "" + +# +msgid "audio tracks" +msgstr "pistas de audio" + +# +msgid "auto" +msgstr "auto" + +# +#, fuzzy +msgid "automatic" +msgstr "Automático" + +# +msgid "back" +msgstr "atrás" + +# +msgid "background image" +msgstr "imagen de fondo" + +msgid "ballet" +msgstr "" + +#, python-format +msgid "bc%s" +msgstr "" + +# +msgid "better" +msgstr "mejor" + +# +msgid "black" +msgstr "negro" + +msgid "black & white" +msgstr "" + +# +msgid "blacklist" +msgstr "lista negra" + +# +msgid "blue" +msgstr "azul" + +msgid "broadcasting/press" +msgstr "" + +# +#, fuzzy +msgid "by date" +msgstr "ordenar por fecha" + +msgid "cartoon/puppets" +msgstr "" + +msgid "center" +msgstr "" + +msgid "centered" +msgstr "" + +msgid "centered, wrapped" +msgstr "" + +# +msgid "chapters" +msgstr "capítulos" + +msgid "childrens's/youth program (general)" +msgstr "" + +# +msgid "circular left" +msgstr "circular izda" + +# +msgid "circular right" +msgstr "circular dcha" + +msgid "comedy" +msgstr "" + +# +msgid "complex" +msgstr "complejo" + +# +msgid "config menu" +msgstr "menú configuración" + +# +msgid "confirmed" +msgstr "confirmado" + +# +msgid "connected" +msgstr "conectado" + +# +msgid "continue" +msgstr "continuar" + +msgid "cooking" +msgstr "" + +# +msgid "copy to bouquets" +msgstr "copiar a listas" + +# +msgid "create directory" +msgstr "crear directorio" + +#, python-format +msgid "currently installed image: %s" +msgstr "imagen actualmente instalada: %s" + +# +msgid "daily" +msgstr "diariamente" + +# +msgid "day" +msgstr "día" + +# +#, fuzzy +msgid "default" +msgstr "Por defecto" + +# +msgid "delete cut" +msgstr "borrar corte" + +msgid "delete..." +msgstr "" + +msgid "descramble and record ecm" +msgstr "" + +msgid "detective/thriller" +msgstr "" + +# +msgid "disable" +msgstr "desactivar" + +# +msgid "disable move mode" +msgstr "quitar modo movimiento" + +# +msgid "disabled" +msgstr "desactivado" + +# +msgid "disconnected" +msgstr "desconectado" + +msgid "discussion/interview/debate" +msgstr "" + +# +msgid "do nothing" +msgstr "no hacer nada" + +msgid "documentary" +msgstr "" + +msgid "don't descramble, record ecm" +msgstr "" + +# +msgid "done!" +msgstr "¡hecho!" + +msgid "east" +msgstr "" + +msgid "economics/social advisory" +msgstr "" + +# +msgid "edit alternatives" +msgstr "editar alternativas" + +msgid "education/science/factual topics (general)" +msgstr "" + +# +msgid "empty" +msgstr "vacío" + +# +msgid "enable" +msgstr "activar" + +# +msgid "enable bouquet edit" +msgstr "habilitar edición de lista" + +# +msgid "enable favourite edit" +msgstr "habilitar edición de favoritos" + +# +msgid "enable move mode" +msgstr "habilitar modo movimiento" + +# +msgid "enabled" +msgstr "activado" + +# +msgid "end alternatives edit" +msgstr "terminar edición de alternativas" + +# +msgid "end bouquet edit" +msgstr "fin de edición de listas" + +# +msgid "end cut here" +msgstr "terminar corte aquí" + +# +msgid "end favourites edit" +msgstr "fin edición de favoritos" + +msgid "entertainment (10-16 year old)" +msgstr "" + +msgid "entertainment (6-14 year old)" +msgstr "" + +# +msgid "equal to" +msgstr "igual a" + +msgid "equestrian" +msgstr "" + +# +msgid "exit DVD player or return to file browser" +msgstr "salir del reproductor DVD o volver a sistema de archivos" + +msgid "exit movielist" +msgstr "" + +# +msgid "exit network adapter configuration" +msgstr "salir de la configuración de red" + +# +msgid "exit networkadapter setup menu" +msgstr "salir del menú de configuración de adaptador de red" + +msgid "experimental film/video" +msgstr "" + +msgid "false" +msgstr "" + +msgid "fashion" +msgstr "" + +# +msgid "fileformats (BMP, PNG, JPG, GIF)" +msgstr "formatos (BMP, PNG, JPG, GIF)" + +# +msgid "filename" +msgstr "nombre de fichero" + +msgid "film/cinema" +msgstr "" + +msgid "fine arts" +msgstr "" + +# +msgid "fine-tune your display" +msgstr "Configurar en detalle tu TV" + +msgid "fitness & health" +msgstr "" + +# +#, fuzzy +msgid "flat alphabetic" +msgstr "orden alfabético" + +# +#, fuzzy +msgid "flat alphabetic reverse" +msgstr "orden alfabético" + +msgid "folk/traditional music" +msgstr "" + +msgid "football/soccer" +msgstr "" + +msgid "foreign countries/expeditions" +msgstr "" + +# +msgid "forward to the next chapter" +msgstr "salte al capítulo siguiente" + +# +msgid "free" +msgstr "libre" + +msgid "from" +msgstr "" + +msgid "further education" +msgstr "" + +msgid "game show/quiz/contest" +msgstr "" + +msgid "gardening" +msgstr "" + +# +msgid "go to deep standby" +msgstr "ir a pausa profunda" + +# +msgid "go to standby" +msgstr "ir a pausa" + +# +msgid "grab this frame as bitmap" +msgstr "grabar esta pantalla como bitmap" + +# +msgid "green" +msgstr "verde" + +msgid "handicraft" +msgstr "" + +msgid "height" +msgstr "" + +# +msgid "help..." +msgstr "ayuda..." + +# +msgid "horizontal" +msgstr "horizontal" + +msgid "information/education/school program" +msgstr "" + +# +msgid "init module" +msgstr "iniciar módulo" + +# +msgid "init modules" +msgstr "módulos de inicio" + +# +msgid "insert mark here" +msgstr "insertar marca aquí" + +msgid "invalid type" +msgstr "" + +msgid "jazz" +msgstr "" + +# +msgid "jump back to the previous title" +msgstr "vuelva al título anterior" + +# +msgid "jump forward to the next title" +msgstr "salte al título siguiente" + +msgid "languages" +msgstr "" + +# +msgid "leave movie player..." +msgstr "salir del reproductor de películas..." + +# +msgid "left" +msgstr "izquierda" + +msgid "left, wrapped" +msgstr "" + +msgid "leisure hobbies (general)" +msgstr "" + +# +msgid "length" +msgstr "longitud" + +msgid "limit ..., aborting !" +msgstr "" + +# +msgid "list style compact" +msgstr "estilo de lista compacto" + +# +msgid "list style compact with description" +msgstr "estilo de lista compacto con descripción" + +# +msgid "list style default" +msgstr "estilo de lista por defecto" + +# +msgid "list style single line" +msgstr "estilo de lista en una línea" + +msgid "literature" +msgstr "" + +msgid "live broadcast" +msgstr "" + +# +msgid "locked" +msgstr "bloqueado" + +# +msgid "loopthrough to" +msgstr "conectado a" + +msgid "magazines/reports/documentary" +msgstr "" + +# +msgid "manual" +msgstr "manual" + +msgid "martial sports" +msgstr "" + +msgid "medicine/physiology/psychology" +msgstr "" + +# +msgid "menu" +msgstr "menú" + +# +msgid "mins" +msgstr "mins" + +# +msgid "minutes" +msgstr "minutos" + +# +msgid "month" +msgstr "mes" + +msgid "motor sport" +msgstr "" + +msgid "motoring" +msgstr "" + +# +msgid "move down to last entry" +msgstr "mover abajo la última entrada" + +# +msgid "move down to next entry" +msgstr "mover abajo la entrada siguiente" + +# +msgid "move up to first entry" +msgstr "mover arriba la primera entrada" + +# +msgid "move up to previous entry" +msgstr "mover arriba la entrada anterior" + +msgid "movie/drama (general)" +msgstr "" + +# +msgid "multinorm" +msgstr "multinorm" + +msgid "music/ballet/dance (general)" +msgstr "" + +msgid "musical/opera" +msgstr "" + +msgid "nature/animals/environment" +msgstr "" + +# +msgid "never" +msgstr "nunca" + +msgid "new media" +msgstr "" + +msgid "news magazine" +msgstr "" + +msgid "news/current affairs (general)" +msgstr "" + +msgid "news/weather report" +msgstr "" + +# +msgid "no" +msgstr "no" + +# +msgid "no CAId selected" +msgstr "no ha seleccionado CAId" + +# +msgid "no CI slots found" +msgstr "no hay slots CI" + +# +msgid "no module found" +msgstr "módulo no encontrado" + +msgid "no storage devices found" +msgstr "" + +# +msgid "none" +msgstr "ninguno" + +msgid "normal" +msgstr "" + +msgid "not configured" +msgstr "no configurado" + +# +msgid "not locked" +msgstr "no bloqueado" + +msgid "not supported" +msgstr "no soportado" + +# +msgid "not used" +msgstr "no usado" + +# +msgid "nothing connected" +msgstr "nada conectado" + +# +msgid "of a DUAL layer medium used." +msgstr "de un disco de DOBLE cara usado." + +# +msgid "of a SINGLE layer medium used." +msgstr "de un disco de cara SIMPLE usado." + +# +msgid "off" +msgstr "off" + +msgid "offset is" +msgstr "" + +# +msgid "on" +msgstr "on" + +# +msgid "on READ ONLY medium." +msgstr "en disco SOLO LECTURA." + +msgid "on end of movie" +msgstr "" + +# +msgid "once" +msgstr "una vez" + +msgid "only from deep standby" +msgstr "" + +msgid "only from standby" +msgstr "" + +msgid "open EPG..." +msgstr "" + +msgid "open Info..." +msgstr "" + +# +msgid "open nameserver configuration" +msgstr "abir la configuración del servidor de nombres" + +msgid "original" +msgstr "" + +msgid "original language" +msgstr "" + +# +msgid "pass" +msgstr "clave" + +msgid "performing arts" +msgstr "" + +msgid "play as picture in picture" +msgstr "" + +msgid "play in mainwindow" +msgstr "" + +# +msgid "please press OK when ready" +msgstr "pulse OK cuando esté preparado" + +# +msgid "please wait, loading picture..." +msgstr "por favor espere, cargando foto..." + +msgid "popular culture/traditional arts" +msgstr "" + +msgid "pre-school children's program" +msgstr "" + +msgid "receiver software because updates are available." +msgstr "" + +# +msgid "record" +msgstr "grabar" + +# +msgid "recording..." +msgstr "grabando..." + +# +msgid "red" +msgstr "rojo" + +msgid "religion" +msgstr "" + +msgid "remarkable people" +msgstr "" + +# +msgid "remove after this position" +msgstr "borrar después de esta posición" + +# +msgid "remove all alternatives" +msgstr "borrar todas alternativas" + +# +msgid "remove all new found flags" +msgstr "borrar todas marcas encontradas" + +# +msgid "remove before this position" +msgstr "borrar antes de esta posición" + +# +msgid "remove bookmark" +msgstr "borrar marcador" + +# +msgid "remove directory" +msgstr "borrar directorio" + +# +msgid "remove entry" +msgstr "eliminar entrada" + +# +msgid "remove from parental protection" +msgstr "quitar la protección de adultos" + +# +msgid "remove new found flag" +msgstr "borrar nueva marca encontrada" + +# +msgid "remove selected satellite" +msgstr "borrar satélite seleccionado" + +# +msgid "remove this mark" +msgstr "borrar esta marca" + +msgid "rename entry" +msgstr "" + +# +msgid "repeat playlist" +msgstr "repetir liste de reproducción" + +# +msgid "repeated" +msgstr "repetido" + +msgid "reverse by date" +msgstr "" + +# +msgid "rewind to the previous chapter" +msgstr "vuelva al capítulo anterior" + +# +msgid "right" +msgstr "derecha" + +msgid "right, wrapped" +msgstr "" + +msgid "rock/pop" +msgstr "" + +msgid "romance" +msgstr "" + +# +msgid "save last directory on exit" +msgstr "guardar el último directorio al salir" + +# +msgid "save playlist on exit" +msgstr "guardar la lista al salir" + +# +msgid "scan state" +msgstr "estado de la búsqueda" + +msgid "science fiction/fantasy/horror" +msgstr "" + +# +msgid "second cable of motorized LNB" +msgstr "segundo cable del LNB motorizado" + +# +msgid "seconds" +msgstr "segundos" + +# +msgid "select" +msgstr "seleccionar" + +# +msgid "select CAId's" +msgstr "seleccionar CAId's" + +msgid "select EPG..." +msgstr "" + +msgid "select Info..." +msgstr "" + +# +msgid "select menu entry" +msgstr "seleccionar la entrada de menú" + +# +msgid "select movie" +msgstr "seleccionar película" + +msgid "select the movie path" +msgstr "" + +msgid "serious music/classic music" +msgstr "" + +msgid "serious/classical/religious/historical movie/drama" +msgstr "" + +msgid "service PIN" +msgstr "PIN del canal" + +msgid "set as startup service" +msgstr "" + +msgid "setup PIN" +msgstr "configurar PIN" + +# +msgid "show DVD main menu" +msgstr "mostrar el menú principal de DVD" + +msgid "show all tags" +msgstr "" + +# +msgid "show alternatives" +msgstr "mostrar alternativas" + +# +msgid "show event details" +msgstr "mostrar detalles del evento" + +msgid "show extended description" +msgstr "" + +msgid "show mediaplayer on mainmenu" +msgstr "" + +msgid "show softwaremanager in setup menu" +msgstr "" + +msgid "show softwaremanager on blue button" +msgstr "" + +msgid "show tag menu" +msgstr "" + +# +msgid "show transponder info" +msgstr "mostrar info del transpondedor" + +msgid "show/game show (general)" +msgstr "" + +msgid "shuffle" +msgstr "" + +# +msgid "shut down" +msgstr "apagar" + +# +msgid "simple" +msgstr "sencillo" + +# +msgid "skip backward" +msgstr "saltar adelante" + +# +msgid "skip forward" +msgstr "saltar adelante" + +msgid "soap/melodram/folkloric" +msgstr "" + +msgid "social/political issues/economics (general)" +msgstr "" + +msgid "social/spiritual science" +msgstr "" + +msgid "sorting of playlists" +msgstr "" + +msgid "special characters" +msgstr "caracteres especiales" + +msgid "special events" +msgstr "" + +msgid "special format data DVD (HDTV compatible)" +msgstr "" + +msgid "sports (general)" +msgstr "" + +msgid "sports magazine" +msgstr "" + +# +msgid "standard" +msgstr "estándar" + +# +msgid "start cut here" +msgstr "comenzar corte aquí" + +# +msgid "start directory" +msgstr "directorio de inicio" + +msgid "stepsize" +msgstr "" + +# +msgid "stereo" +msgstr "stéreo" + +msgid "stop using as startup service" +msgstr "" + +# +msgid "switch to bookmarks" +msgstr "pasar a marcadores" + +# +msgid "switch to filelist" +msgstr "cambiar a lista de ficheros" + +# +msgid "switch to the next angle" +msgstr "cambiar al siguiente ángulo" + +# +msgid "switch to the next audio track" +msgstr "cambiar a la siguiente pista de audio" + +# +msgid "switch to the next subtitle language" +msgstr "cambiar al siguiente idioma de subtítulos" + +msgid "talk show" +msgstr "" + +msgid "team sports" +msgstr "" + +msgid "technology/natural science" +msgstr "" + +# +msgid "template file" +msgstr "fichero de plantilla" + +msgid "tennis/squash" +msgstr "" + +# +msgid "this recording" +msgstr "esta grabación" + +# +msgid "this service is protected by a parental control pin" +msgstr "este canal está protegido por el pin de control de adultos" + +# +msgid "toggle time, chapter, audio, subtitle info" +msgstr "poner hora, capítulo, audio, info subtítulos" + +msgid "top" +msgstr "" + +msgid "tourism/travel" +msgstr "" + +msgid "true" +msgstr "" + +# +msgid "unavailable" +msgstr "no disponible" + +# +msgid "unconfirmed" +msgstr "no confirmado" + +msgid "undefined" +msgstr "" + +# +msgid "unknown" +msgstr "desconocido" + +# +msgid "unknown service" +msgstr "servicio desconocido" + +msgid "unpublished" +msgstr "" + +msgid "until standby/restart" +msgstr "hasta reposo/reinicio" + +msgid "standby/restart" +msgstr "reposo/reinicio" + +# +msgid "user defined" +msgstr "definido por el usuario" + +msgid "variety show" +msgstr "" + +# +msgid "vertical" +msgstr "vertical" + +# +msgid "wait for ci..." +msgstr "esperar al ci..." + +# +msgid "wait for mmi..." +msgstr "esperar para nmi..." + +# +msgid "waiting" +msgstr "esperando" + +msgid "water sport" +msgstr "" + +# +msgid "weekly" +msgstr "semanalmente" + +msgid "west" +msgstr "" + +msgid "when PiPzap enabled zap channel down..." +msgstr "" + +msgid "when PiPzap enabled zap channel up..." +msgstr "" + +msgid "white" +msgstr "" + +# +msgid "whitelist" +msgstr "lista blanca" + +msgid "width" +msgstr "" + +msgid "winter sport" +msgstr "" + +msgid "wireless network interface" +msgstr "" + +#, python-format +msgid "with %d error" +msgid_plural "with %d errors" +msgstr[0] "" +msgstr[1] "" + +# +msgid "working" +msgstr "trabajando" + +# +msgid "yellow" +msgstr "amarillo" + +# +msgid "yes" +msgstr "si" + +# +msgid "yes (keep feeds)" +msgstr "si (conserva fuentes)" + +# +msgid "zap" +msgstr "zapear" + +msgid "zap and record" +msgstr "" + +# +msgid "zapped" +msgstr "zapeado" + +# +#~ msgid "AA" +#~ msgstr "AA" + +# +#~ msgid "AB" +#~ msgstr "AB" + +# +#, fuzzy +#~ msgid "Activate PiP" +#~ msgstr "Activar PiP" + +# +#, fuzzy +#~ msgid "Add/remove timer for current event" +#~ msgstr "añadir grabación (sólo evento actual)" + +# +#, fuzzy +#~ msgid "All satellites" +#~ msgstr "Todos satélites" + +# +#~ msgid "BA" +#~ msgstr "BA" + +# +#~ msgid "BB" +#~ msgstr "BB" + +# +#~ msgid "Behavior of 'pause' when paused" +#~ msgstr "Tecla \"pausa\" cuando está parado" + +# +#~ msgid "Committed DiSEqC command" +#~ msgstr "Comando DISEqC enviado" + +# +#~ msgid "DiSEqC repeats" +#~ msgstr "Repetir DiSEqC" + +# +#~ msgid "No satellite frontend found!!" +#~ msgstr "No he encontrado ningún sintonizador de satélite" + +# +#~ msgid "Remove timer" +#~ msgstr "Eliminar grabación" + +# +#~ msgid "Send DiSEqC" +#~ msgstr "Enviar DISEqC" + +# +#, fuzzy +#~ msgid "Switch next channel" +#~ msgstr "canal siguiente" + +# +#~ msgid "Uncommitted DiSEqC command" +#~ msgstr "Comando DiSEqC no enviado" + +# +#~ msgid "Zap back to service before satfinder?" +#~ msgstr "¿Volver al canal antes de ir al buscador de satélites?" + +#~ msgid "tuner is not supported" +#~ msgstr "tuner no soportado" diff --git a/po/et.po b/po/et.po new file mode 100644 index 0000000..0f8484a --- /dev/null +++ b/po/et.po @@ -0,0 +1,8056 @@ +msgid "" +msgstr "" +"Project-Id-Version: tuxbox-enigma 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-07-21 19:08+0200\n" +"PO-Revision-Date: 2014-03-04 17:07+0200\n" +"Last-Translator: zeros <zeros@hot.ee>\n" +"Language-Team: Raivo, Henkka, eesatfan, rimas\n" +"Language: et\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Poedit 1.6.4\n" + +msgid "" +"\n" +"Advanced options and settings." +msgstr "" +"\n" +"Lisavalikud ja seadistused." + +msgid "" +"\n" +"After pressing OK, please wait!" +msgstr "" +"\n" +"Vajuta OK ja oota!" + +msgid "" +"\n" +"Backup your receiver settings." +msgstr "" +"\n" +"Varukoopia vastuvõtja seadetest." + +msgid "" +"\n" +"Edit the upgrade source address." +msgstr "" +"\n" +"Muuda uuenduste allika aadressi." + +msgid "" +"\n" +"Manage extensions or plugins for your receiver" +msgstr "" +"\n" +"Halda laiendusi" + +msgid "" +"\n" +"Online update of your receiver software." +msgstr "" +"\n" +"Vastuvõtja internetiuuendused." + +msgid "" +"\n" +"Press OK on your remote control to continue." +msgstr "" +"\n" +"Jätkamiseks vajuta OK." + +msgid "" +"\n" +"Restore your backups by date." +msgstr "" +"\n" +"Taasta oma varukoopiad kuupäeva alusel." + +msgid "" +"\n" +"Restore your receiver settings." +msgstr "" +"\n" +"Taasta vastuvõtja seaded." + +msgid "" +"\n" +"Restore your receiver with a new firmware." +msgstr "" +"\n" +"Taasta vastuvõtja uue püsivaraga." + +msgid "" +"\n" +"Scan for local extensions and install them." +msgstr "" +"\n" +"Otsi kohalikke laiendusi ja paigalda need." + +msgid "" +"\n" +"Select your backup device.\n" +"Current device: " +msgstr "" +"\n" +"Vali asukoht varukoopia jaoks.\n" +"Hetke asukoht: " + +msgid "" +"\n" +"View, install and remove available or installed packages." +msgstr "" +"\n" +"Vaata, paigalda ja eemalda tarkvara pakette." + +msgid " (PiP)" +msgstr " (PiP)" + +msgid " (Radio)" +msgstr " (Raadio)" + +msgid " (TV)" +msgstr " (TV)" + +msgid " (disabled)" +msgstr "" + +msgid " (higher than any auto)" +msgstr "" + +msgid " (higher than rotor any auto)" +msgstr "" + +msgid " (lower than any auto)" +msgstr "" + +msgid " extensions." +msgstr " laiendused." + +msgid " ms" +msgstr " ms" + +msgid " packages selected." +msgstr " paketti valitud." + +msgid " updates available." +msgstr " uuendust saadaval." + +#. TRANSLATORS: short time representation hour:minute +#, python-format +msgid "%2d:%02d" +msgstr "%2d:%02d" + +#. TRANSLATORS: full time representation hour:minute:seconds +#, python-format +msgid "%2d:%02d:%02d" +msgstr "%2d:%02d:%02d" + +msgid "%A %d %B" +msgstr "%A %d %B" + +#. TRANSLATORS: long date representations dayname daynum monthname in strftime() format! See 'man strftime' +msgid "%A %e %B" +msgstr "%A %e %B" + +#. TRANSLATORS: full date representation dayname daynum monthname year in strftime() format! See 'man strftime' +msgid "%A %e %B %Y" +msgstr "%A %e %B %Y" + +msgid "%H:%M" +msgstr "%H:%M" + +#. TRANSLATORS: short date representation short dayname daynum short monthname in strftime() format! See 'man strftime' +msgid "%a %e/%m" +msgstr "%a %e/%m" + +#. TRANSLATORS: long date representation short dayname daynum short monthname hour:minute in strftime() format! See 'man strftime' +msgid "%a %e/%m %-H:%M" +msgstr "%a %e/%m %-H:%M" + +#. TRANSLATORS: Intermediate scanning result, '%d' channel(s) have been found so far +#, fuzzy, python-format +msgid "%d channel found" +msgid_plural "%d channels found" +msgstr[0] "%d kanalit leitud!" +msgstr[1] "%d kanalit leitud!" + +#, python-format +msgid "%d file" +msgid_plural "%d files" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d tund" +msgstr[1] "%d tundi" + +#, fuzzy, python-format +msgid "%d job is running in the background!" +msgid_plural "%d jobs are running in the background!" +msgstr[0] "%d protsessi käib taustal!" +msgstr[1] "%d protsessi käib taustal!" + +#, python-format +msgid "%d min" +msgstr "%d min" + +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d minut" +msgstr[1] "%d minutit" + +#, python-format +msgid "%d minutes" +msgstr "%d minutit" + +#, python-format +msgid "%d pixel wide" +msgid_plural "%d pixels wide" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "%d sekund" +msgstr[1] "%d sekundit" + +#, fuzzy, python-format +msgid "%d subdirectory" +msgid_plural "%d subdirectories" +msgstr[0] "Juurkataloog" +msgstr[1] "Juurkataloog" + +#, python-format +msgid "%d wireless network found!" +msgid_plural "%d wireless networks found!" +msgstr[0] "%d wifi võrk leitud!" +msgstr[1] "%d wifi võrku leitud!" + +msgid "%d-%b-%Y %-H:%M" +msgstr "%d-%b-%Y %-H:%M" + +msgid "%d-%m" +msgstr "%d-%m" + +msgid "%d.%B %Y" +msgstr "%d.%B %Y" + +#. TRANSLATORS: VFD hour:minute daynum short monthname in strftime() format! See 'man strftime' +msgid "%k:%M %e/%m" +msgstr "%k:%M %e/%m" + +#, python-format +msgid "%s %s free disk space" +msgstr "%s %s vaba kettaruumi" + +#, python-format +msgid "%s (%s)\n" +msgstr "%s (%s)\n" + +#. TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. +#, python-format +msgid "%s is no longer used. Should it be deleted?" +msgstr "%s ei ole enam kasutuses. Kas see tuleks kustutada?" + +#, python-format +msgid "%s updated package available" +msgid_plural "%s updated packages available" +msgstr[0] " %s uuendatud pakett saadaval." +msgstr[1] " %s uuendatud paketti saadaval." + +#, python-format +msgid "%s%d min" +msgstr "%s%d min" + +#, python-format +msgid "%s/%s: %s" +msgstr "%s/%s: %s" + +msgid "(ZAP)" +msgstr "(Ainult kanalivahetus)" + +msgid "(empty)" +msgstr "(tühi)" + +msgid "(show optional DVD audio menu)" +msgstr "(näita DVD valikulist audio-menüüd)" + +msgid "* Only available if more than one interface is active." +msgstr "* Enam kui ühe aktiivse liidese puhul." + +msgid "/s" +msgstr "/s" + +msgid "0" +msgstr "0" + +msgid "1" +msgstr "1" + +msgid "1.0" +msgstr "1.0" + +msgid "1.1" +msgstr "1.1" + +msgid "1.2" +msgstr "1.2" + +msgid "12V output" +msgstr "12V väljund" + +msgid "13 V" +msgstr "13 V" + +msgid "16:10" +msgstr "16:10" + +msgid "16:10 Letterbox" +msgstr "16:10 letterbox" + +msgid "16:10 PanScan" +msgstr "16:10 PanScan" + +msgid "16:9" +msgstr "16:9" + +msgid "16:9 Letterbox" +msgstr "16:9 letterbox" + +msgid "16:9 always" +msgstr "16:9 alati" + +msgid "18 V" +msgstr "18 V" + +msgid "2" +msgstr "2" + +msgid "23.976" +msgstr "23.976" + +msgid "24" +msgstr "24" + +msgid "25" +msgstr "25" + +msgid "29.97" +msgstr "29.97" + +msgid "3" +msgstr "3" + +msgid "30" +msgstr "30" + +msgid "3d mode" +msgstr "3d režiim" + +msgid "4" +msgstr "4" + +msgid "4:3" +msgstr "4:3" + +msgid "4:3 Letterbox" +msgstr "4:3 letterbox" + +msgid "4:3 PanScan" +msgstr "4:3 PanScan" + +msgid "5" +msgstr "5" + +msgid "6" +msgstr "6" + +msgid "7" +msgstr "7" + +msgid "8" +msgstr "8" + +msgid "9" +msgstr "9" + +#, python-format +msgid ": %s" +msgstr "" + +msgid "<Current movielist location>" +msgstr "<Salvestusnimekirja hetkeasukoht >" + +msgid "<Default movie location>" +msgstr "<Salvestuste tavaasukoht >" + +msgid "<Last timer location>" +msgstr "<Viimase taimeri asukoht>" + +msgid "<unknown>" +msgstr "<tundmatu>" + +msgid "??" +msgstr "??" + +msgid "A" +msgstr "A" + +#, python-format +msgid "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" +msgstr "" +"Seadistusfaili (%s) on muudetud peale algpaigaldust.\n" +"Kas tahad säilitada oma versiooni?" + +#, python-format +msgid "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" +msgstr "" +"Seadistusfaili (%s) on muudetud peale algpaigaldust.\n" +"Kas tahad säilitada oma versiooni?" + +msgid "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"Lõpetanud salvestuse taimer soovib panna\n" +"vastuvõtja ooterežiimi. Kas nõustud?" + +msgid "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"Salvestuse lõpetanud taimer soovib vastuvõtja\n" +"välja lülitada. Kas nõustud?" + +msgid "A graphical EPG for all services of an specific bouquet" +msgstr "Graafiline EPG kõigile kanalitele selles valikus" + +#, python-format +msgid "" +"A record has been started:\n" +"%s" +msgstr "" +"Salvestamine algas:\n" +"%s" + +msgid "" +"A recording is currently running.\n" +"What do you want to do?" +msgstr "" +"Hetkel salvestatakse.\n" +"Mida soovid teha?" + +msgid "A recording is currently running. Please stop the recording before trying to configure the positioner." +msgstr "Hetkel salvestatakse. Peata salvestus, enne kui üritad muuta positsioneeri sätteid." + +msgid "A recording is currently running. Please stop the recording before trying to scan." +msgstr "Hetkel salvestatakse. Peata salvestamine enne kanaliotsingu alustamist." + +msgid "A recording is currently running. Please stop the recording before trying to start the satfinder." +msgstr "Hetkel salvestatakse. Peata salvestus, enne kui käivitad satelliidi otsimise." + +#, python-format +msgid "A required tool (%s) was not found." +msgstr "Ei leidnud (%s) vajaliku tööriista." + +msgid "A search for available updates is currently in progress." +msgstr "Otsime uuendusi." + +msgid "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" +msgstr "" +"Leitud teine häälestatud võrguliides.\n" +"\n" +"Kas te soovite keelata teise võrguühenduse?" + +msgid "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"Unetaimer soovib panna vastuvõtja\n" +"ooterežiimi. Kas nõustud?" + +msgid "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"Unetaimer soovib vastuvõtja\n" +"välja lülitada. Kas nõustud?" + +msgid "A small overview of the available icon states and actions." +msgstr "Kasutatavate ikoonide seisundite ja tegevuste lühiülevaade." + +msgid "" +"A timer failed to record!\n" +"Disable TV and try again?\n" +msgstr "" +"Taimeriga salvestus nurjus!\n" +"Keela TV ja proovi uuesti?\n" + +msgid "A/V settings" +msgstr "Heli ja pildi seaded" + +msgid "AC3/DTS downmix" +msgstr "AC3/DTS > stereo" + +msgid "Abort" +msgstr "Katkesta" + +msgid "About" +msgstr "Süsteemiinfo" + +msgid "About..." +msgstr "Süsteemiinfo" + +msgid "Accesspoint:" +msgstr "WiFi Ruuter:" + +msgid "Action on long powerbutton press" +msgstr "Toitenupu pikk vajutus" + +msgid "Action on short powerbutton press" +msgstr "Toitenupu lühike vajutus" + +msgid "Activate Picture in Picture" +msgstr "Ava pilt-pildis" + +msgid "Activate current configuration" +msgstr "Jõusta praegused seaded" + +msgid "Activate network settings" +msgstr "Aktiveeri võrguseaded" + +msgid "Activate the configured network settings." +msgstr "Jõusta määratud võrguseaded." + +msgid "Adapter settings" +msgstr "Võrgukaardi seaded" + +msgid "Add" +msgstr "Lisa" + +msgid "Add Bookmark" +msgstr "Lisa lemmik" + +msgid "Add a mark" +msgstr "Lisa marker" + +msgid "Add a nameserver entry" +msgstr "Lisa nimeserver" + +msgid "Add a new title" +msgstr "Lisa uus pealkiri" + +msgid "Add bookmark" +msgstr "Lisa uus tähis" + +msgid "Add directory to playlist" +msgstr "Lisa kataloog esitusloendisse" + +msgid "Add file to playlist" +msgstr "Lisa fail esitusloendisse" + +msgid "Add files to playlist" +msgstr "Lisa failid esitusloendisse" + +msgid "Add more details to the crash log" +msgstr "Loo üksikasjalikum vealogi" + +msgid "Add provider" +msgstr "Lisa levitaja" + +msgid "Add recording (enter recording duration)" +msgstr "Salvesta (sisesta salvestise kestvus)" + +msgid "Add recording (enter recording endtime)" +msgstr "Salvesta (sisesta salvestise lõpuaeg)" + +msgid "Add recording (indefinitely)" +msgstr "Salvesta (pidev salvestus)" + +msgid "Add recording (stop after current event)" +msgstr "Salvesta (lõpeta peale praegust saadet)" + +msgid "Add service" +msgstr "Lisa kanal" + +msgid "Add timer" +msgstr "Lisa taimer" + +msgid "Add title" +msgstr "Lisa pealkiri" + +msgid "Add to bouquet" +msgstr "Lisa lemmiknimekirja" + +msgid "Add to favourites" +msgstr "Lisa lemmikutesse" + +msgid "Add/remove change timer for current event" +msgstr "" + +msgid "Adjust 3D settings" +msgstr "Kohanda 3D seadeid" + +msgid "Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens." +msgstr "Sea värvuse sätted nii, et kõik värvivarjundid oleks eristatavad ja paistaks nii küllastatuna kui võimalik. Kui oled tulemusega rahul, vajuta OK video peenhäälestuse sulgemiseks või kasuta numbrinuppe teiste testipiltide valikuks." + +msgid "Advanced" +msgstr "" + +msgid "Advanced options" +msgstr "Lisavalikud" + +msgid "Advanced restore" +msgstr "Laiendatud taastamine" + +msgid "Advanced software" +msgstr "Lisatarkvara" + +msgid "Advanced software plugin" +msgstr "Lisatarkvara" + +msgid "Advanced video enhancement setup" +msgstr "Pildiparanduse seaded" + +msgid "Advanced video setup" +msgstr "Täpsemad video seaded" + +msgid "After event" +msgstr "Pärast sündmust" + +msgid "Album" +msgstr "Album" + +msgid "Alignment of events" +msgstr "" + +msgid "Alignment of service names" +msgstr "" + +msgid "All" +msgstr "Kõik" + +msgid "All ages" +msgstr "Kõik vanused" + +msgid "All satellites 1 (USALS)" +msgstr "" + +msgid "All satellites 2 (USALS)" +msgstr "" + +msgid "All satellites 3 (USALS)" +msgstr "" + +msgid "All satellites 4 (USALS)" +msgstr "" + +msgid "Allocate" +msgstr "Eralda" + +msgid "Allocate unused memory index" +msgstr "" + +msgid "Allow quit movieplayer with exit" +msgstr "Luba movieplayer-i sulgemine väljumisel" + +msgid "Allow subtitle language to equal audio language" +msgstr "Luba subtiitrid heli keele valiku järgi" + +msgid "Allow subtitles for hearing impaired" +msgstr "Luba vaegkuuljate subtiitrid" + +msgid "Alpha" +msgstr "Alfa" + +msgid "Alternative" +msgstr "Alternatiivne" + +msgid "Alternative numbering mode" +msgstr "Alternatiivne numeratsioon" + +msgid "Alternative services tuner priority" +msgstr "Tuuneri eelistus asenduskanalitel " + +msgid "Always ask" +msgstr "Küsi alati" + +msgid "Always hide infobar" +msgstr "" + +msgid "An empty filename is illegal." +msgstr "Tühi failinimi ei ole lubatud." + +msgid "An error occurred while downloading the packetlist. Please try again." +msgstr "Viga nimekirja allalaadimisel. Proovi uuesti." + +msgid "An unknown error occurred!" +msgstr "Tundmatu viga!" + +msgid "And will put your receiver in standby over " +msgstr "" + +msgid "Any activity" +msgstr "Iga tegevus" + +msgid "Arabic" +msgstr "Araabia" + +msgid "Are you sure to remove this entry?" +msgstr "" + +msgid "" +"Are you sure you want to activate this network configuration?\n" +"\n" +msgstr "" +"Kas tahad kindlasti võrgukaardi uuesti käivitada?\n" +"\n" + +msgid "" +"Are you sure you want to delete\n" +"the following backup:\n" +msgstr "" +"Kas soovid kustutada\n" +"selle varukoopia:\n" + +msgid "Are you sure you want to exit this wizard?" +msgstr "Kas soovid väljuda seadistusabist?" + +msgid "" +"Are you sure you want to restart your network interfaces?\n" +"\n" +msgstr "" +"Kas tahad kindlasti uuesti käivitada võrguliidest?\n" +"\n" + +#, python-format +msgid "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Kas tahad taastada\n" +"selle varukoopia?:\n" +"%s\n" +"Pärast taastamist vastuvõtja taaskäivitub!" + +msgid "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Kas tahad taastada selle varukoopia?\n" +"Pärast taastamist vastuvõtja taaskäivitub!" + +msgid "Artist" +msgstr "Esitaja" + +msgid "Arts/Culture" +msgstr "Kunsti-kultuurimagasin" + +msgid "Ask user" +msgstr "Küsi kasutajalt" + +msgid "Aspect ratio" +msgstr "Pildisuhe" + +msgid "Assigned CAIds:" +msgstr "Määratud CAId-d:" + +msgid "Assigned services/provider:" +msgstr "Määratud kanalid/levitajad:" + +msgid "At beginning" +msgstr "Alguses" + +msgid "At end" +msgstr "Lõpus" + +msgid "Audio" +msgstr "Heli" + +msgid "Audio PID" +msgstr "Audio PID" + +msgid "Audio language selection 1" +msgstr "Heli keele valik 1" + +msgid "Audio language selection 2" +msgstr "Heli keele valik 2" + +msgid "Audio language selection 3" +msgstr "Heli keele valik 3" + +msgid "Audio language selection 4" +msgstr "Heli keele valik 4" + +msgid "Audio options..." +msgstr "Heli valikud..." + +#, python-format +msgid "Audio track (%s) format" +msgstr "heliriba (%s) formaat" + +#, python-format +msgid "Audio track (%s) language" +msgstr "heliriba (%s) keel" + +msgid "Author: " +msgstr "Autor: " + +msgid "Authoring mode" +msgstr "DVD loomine" + +#. TRANSLATORS: (aspect ratio policy: always try to display as fullscreen, when there is no content (black bars) on left/right, even if this breaks the aspect. +msgid "Auto" +msgstr "Automaatne" + +msgid "Auto chapter split every ? minutes (0=never)" +msgstr "Automaatne kaadri lõikamine iga ? minuti (0=mitte kunagi)" + +msgid "Auto flesh" +msgstr "" + +msgid "Auto focus" +msgstr "" + +msgid "Auto focus commencing ..." +msgstr "" + +msgid "Auto language selection" +msgstr "Automaatsed keele valikud" + +msgid "Auto scart switching" +msgstr "Autom. SCART ümberlülitus" + +msgid "Automatic" +msgstr "Automaatne" + +msgid "Automatic scan" +msgstr "Automaatotsing" + +msgid "Automatically start timeshift after" +msgstr "" + +msgid "Automatically turn on external subtitles" +msgstr "Väliste subtiitrite automaatne sisselülitus" + +msgid "Available format variables" +msgstr "Võimalikud formati muutujad" + +msgid "B" +msgstr "B" + +msgid "BER" +msgstr "BER" + +msgid "BER:" +msgstr "BER:" + +msgid "Back" +msgstr "Tagasi" + +msgid "Background" +msgstr "Taust" + +msgid "Background color" +msgstr "Taustavärv" + +msgid "Background delete option" +msgstr "Taustal kustutamise valikud" + +msgid "Background delete speed" +msgstr "Taustal kustutamise kiirus" + +msgid "Backup completed." +msgstr "Varukoopia loomine valmis." + +msgid "Backup failed." +msgstr "Varukoopia loomine nurjus." + +msgid "Backup is running..." +msgstr "Varukoopia loomine..." + +msgid "Backup system settings" +msgstr "Loo varukoopia" + +msgid "Band" +msgstr "Sagedusala" + +msgid "Bandwidth" +msgstr "Ribalaius" + +msgid "Basque" +msgstr "Baski" + +msgid "Begin time" +msgstr "Algusaeg" + +msgid "Behavior of 'pause and ok' when paused" +msgstr "" + +msgid "Behavior of 0 key in PiP-mode" +msgstr "0-nupu funktsioon PiP-režiimis" + +msgid "Behavior when a movie is started" +msgstr "Tegevus taasesituse algamisel" + +msgid "Behavior when a movie is stopped" +msgstr "Tegevus taasesituse peatamisel" + +msgid "Behavior when a movie reaches the end" +msgstr "Tegevus taasesituse lõppemisel" + +msgid "Big PiP" +msgstr "" + +msgid "Bitrate:" +msgstr "Bitrate:" + +msgid "Black screen" +msgstr "Must ekraan" + +msgid "Black screen till locked" +msgstr "Must ekraan lukustumiseni" + +msgid "Block noise reduction" +msgstr "Blokeeri müra vähendamist" + +msgid "Blue boost" +msgstr "Sinine boost" + +msgid "Bookmarks" +msgstr "Lemmikud" + +msgid "Brightness" +msgstr "Heledus" + +msgid "Bulgarian" +msgstr "Bulgaaria" + +msgid "Burn DVD" +msgstr "Kirjuta DVD" + +#, python-format +msgid "Burn audio track (%s)" +msgstr "Kirjuta heliriba (%s)" + +msgid "Burn existing image to DVD" +msgstr "Salvesta olemasolev image DVD-le" + +msgid "Burn to DVD" +msgstr "Kirjuta DVD-le" + +msgid "Bus: " +msgstr "Siin: " + +msgid "By default, SNR will be shown in dB (when supported by the tuner). This setting forces SNR to be shown as a percentage instead." +msgstr "Vaikimisi näidatakse SNR väärtust dB-s (kui tuuner seda toetab). Siin valikus saab muuta SNR näidu protsentideks." + +msgid "C" +msgstr "C" + +msgid "C-Band" +msgstr "C-sagedusala" + +msgid "CH" +msgstr "" + +msgid "CI assignment" +msgstr "CI määrangud" + +msgid "CVBS" +msgstr "Komposiit (CVBS)" + +msgid "Cable" +msgstr "Kaabel (DVB-C)" + +msgid "Cable Scan" +msgstr "Kaabel TV otsing" + +msgid "Cache thumbnails" +msgstr "Salvesta pisipildid" + +msgid "Calculate" +msgstr "Arvuta" + +msgid "Calculate all positions" +msgstr "Arvuta kõik positsioonid" + +msgid "Calculation complete" +msgstr "Arvutamine on tehtud" + +msgid "Calibrate" +msgstr "Kalibreeri" + +msgid "Can be used for different fps between external subtitles and video." +msgstr "" + +msgid "Cancel" +msgstr "Tühista" + +msgid "Cannot determine" +msgstr "Ei saa määrata" + +msgid "Cannot find any signal ..., aborting !" +msgstr "Mingit signaali8 ei leita..., katkestame!" + +msgid "Cannot move files on a different disk or system to the trash can" +msgstr "Failide liigutamine prügikasti väliselt kettalt ei ole võimalik" + +msgid "Cannot move to trash can" +msgstr "Prügikasti saatmine ei ole võimalik" + +msgid "Capacity: " +msgstr "Maht: " + +msgid "Card" +msgstr "Kaart" + +msgid "Cascade PiP" +msgstr "" + +msgid "Center DVB subtitles" +msgstr "DVB subtiitrid ekraani keskel" + +msgid "Center time-labels and remove date" +msgstr "" + +msgid "Change bouquets in quickzap" +msgstr "Lemmiknimekirjade vahetus noolenuppudega" + +msgid "Change pin code" +msgstr "Vaheta PIN" + +msgid "Change recording (duration)" +msgstr "Muuda salvestuse kestust" + +msgid "Change recording (endtime)" +msgstr "Muuda salvestuse lõpuaega" + +msgid "Change repeat and delay settings?" +msgstr "Muudad korduse ja viiteaja seadistusi?" + +msgid "Change service PIN" +msgstr "Muuda kanali PIN" + +msgid "Change service PINs" +msgstr "Muuda kanalite PIN-e" + +msgid "Change setup PIN" +msgstr "Muuda seadistus PIN-i" + +msgid "Change step size" +msgstr "Muuda sammu suurust" + +msgid "Change timer" +msgstr "" + +msgid "Changelog" +msgstr "Muudatuste logi" + +msgid "Channel" +msgstr "Kanal" + +msgid "Channel list type" +msgstr "Kanalinimekirja stiil" + +msgid "Channel not in services list" +msgstr "Kanal pole teenuste nimekirjas" + +msgid "Channel selection" +msgstr "Kanalid" + +msgid "Channel:" +msgstr "Kanal:" + +msgid "Channellist menu" +msgstr "Kanalinimekirja menüü" + +msgid "Chap." +msgstr "Peatükk." + +msgid "Chapter" +msgstr "Peatükk" + +msgid "Chapter:" +msgstr "Peatükk:" + +msgid "Check" +msgstr "Kontrolli" + +msgid "Check the internet connection" +msgstr "Kontrolli internetiühendust" + +msgid "Check the internet connection again" +msgstr "Kontrolli uuesti internetiühendust" + +msgid "Checking filesystem..." +msgstr "Failisüsteemi kontroll..." + +msgid "Checking the internet connection" +msgstr "Internetiühenduse kontroll" + +#, python-format +msgid "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" +msgstr "" + +msgid "Children/Youth" +msgstr "" + +msgid "Choose which tuner to configure." +msgstr "Vali seadistamiseks tuuner." + +msgid "Circular left" +msgstr "Ringpolarisatsioon vasak" + +msgid "Circular right" +msgstr "Ringpolarisatsioon parem" + +msgid "Cleanup" +msgstr "Puhastus" + +msgid "Clear" +msgstr "" + +msgid "Clear before scan" +msgstr "Kustuta kanalid" + +msgid "Clear fixed" +msgstr "Eemalda püsiaadress" + +msgid "Clear log" +msgstr "Kustuta logi" + +msgid "Clear playlist" +msgstr "Tühjenda esitusloend" + +msgid "Close" +msgstr "Sulge" + +msgid "Close PiP on exit" +msgstr "Sulge PiP väljumisel" + +msgid "Close title selection" +msgstr "Sulge pealkirja valik" + +msgid "Code rate HP" +msgstr "Code rate HP" + +msgid "Code rate LP" +msgstr "Code rate LP" + +msgid "Coderate HP" +msgstr "Coderate HP" + +msgid "Coderate LP" +msgstr "Coderate LP" + +msgid "Collection name" +msgstr "Valiku nimi" + +msgid "Collection settings" +msgstr "Valiku seaded" + +msgid "Color format" +msgstr "Värvi vorming" + +msgid "Command execution..." +msgstr "Käskude täitmine" + +msgid "Command order" +msgstr "Käskude järjekord" + +msgid "Common Interface" +msgstr "CI liides" + +msgid "Common Interface assignment" +msgstr "CI määrangud" + +msgid "Communication" +msgstr "Suhtlus" + +msgid "Compact flash" +msgstr "Compact flash" + +msgid "Complete" +msgstr "Valmis" + +msgid "Complex (allows mixing audio tracks and aspects)" +msgstr "Täielik ( lubab audio radade miksimist )" + +msgid "Composition of the recording filenames" +msgstr "Salvestuse nimede komponeerimine" + +msgid "Configuration mode" +msgstr "Häälestamine" + +#, python-format +msgid "Configuration mode: %s" +msgstr "Häälestamine: %s" + +msgid "Configuration..." +msgstr "Seadistamine..." + +msgid "Configure an additional delay to improve external subtitle synchronisation." +msgstr "" + +msgid "Configure an additional delay to improve subtitle synchronisation." +msgstr "" + +msgid "Configure for how long the infobar will remain visible after activation." +msgstr "Määra inforiba kuvamise aeg." + +msgid "Configure for how many minutes finished events should remain visible in the EPG. Useful when you need information about an event which has just finished, or has been delayed." +msgstr "Määra, mitu minutit lõppenud saateid näidatakse veel saatekavas. Mugav juhul, kui soovid midagi teada saatest, mis on kohe lõppemas, on just lõppenud või mille algamine venib." + +msgid "Configure how recording filenames are constructed." +msgstr "Määra, millisel kujul salvestuste nimed luuakse." + +msgid "Configure how the fan should operate" +msgstr "" + +msgid "Configure if and how crypto icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how long the latest service in the PiP will be remembered." +msgstr "" + +msgid "Configure if and how service type icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how wide columns will be shown in the channel selection list." +msgstr "" + +msgid "Configure if service picons will be shown in the channel selection list." +msgstr "" + +msgid "Configure interface" +msgstr "Seadista liides" + +msgid "Configure nameservers" +msgstr "Seadista nimeserverid" + +msgid "Configure on which devices the background delete option should be used." +msgstr "Määra, millisel andmekandjal kasutatakse taustal kustutamise võimalust." + +msgid "Configure remote control type" +msgstr "Määra puldi tüüp" + +msgid "Configure the DiSEqC mode for this LNB." +msgstr "Määra selle LNB DiSEqC režiim." + +msgid "Configure the IP address." +msgstr "Määra IP aaddress." + +msgid "Configure the aspect ratio of the screen." +msgstr "Määra ekraani pildisuhe." + +msgid "Configure the behavior of the 'pause and ok' key when movie playback is already paused." +msgstr "" + +msgid "Configure the behavior when movie playback is manually stopped." +msgstr "Määra käitumine filmi käsitsi peatamisel." + +msgid "Configure the behavior when movie playback is started." +msgstr "Määra käitumine filmi algamisel." + +msgid "Configure the behavior when reaching the end of a movie, during movie playback." +msgstr "Määra käitumine taasesituse lõppemisel." + +msgid "Configure the border width of the subtitles. The dark border makes the subtitles easier to read on a light background." +msgstr "Määra teleteksti subtiitrite kontuuri paksus. Nii on tekst heledal taustal kergemini loetav." + +msgid "Configure the brightness level of the front panel display during standby." +msgstr "Määra esipaneeli heleduse tase ooterežiimil." + +msgid "Configure the brightness level of the front panel display." +msgstr "Määra esipaneeli heleduse tase." + +msgid "Configure the color of the external subtitles, alternative (normal in white, italic in yellow, bold in cyan, underscore in green), white or yellow." +msgstr "" + +msgid "Configure the color of the teletext subtitles." +msgstr "Määra teleteksti subtiitrite värv." + +msgid "Configure the contrast level of the front panel display." +msgstr "Määra esipaneeli heleduse tase." + +msgid "Configure the cursor behaviour in the channel selection list. When opening the channel selection list you can keep on the current service or already select up/down and you are able to revert the B+/B- buttons." +msgstr "" + +msgid "Configure the duration in hours the receiver should go to standby when the receiver is not controlled." +msgstr "" + +msgid "Configure the duration in minutes for the screensaver." +msgstr "" + +msgid "Configure the duration in minutes for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +msgstr "" + +msgid "Configure the duration when the receiver should go to shut down in case the receiver is in standby mode." +msgstr "" + +msgid "Configure the first audio language (highest priority)." +msgstr "Määra heli keele esimene eelistus." + +msgid "Configure the first subtitle language (highest priority)." +msgstr "Määra subtiitrite keele esimene eelistus." + +msgid "Configure the font size of the subtitles." +msgstr "Määra subtiitrite tähesuurus." + +msgid "Configure the fourth audio language." +msgstr "Määra heli keele neljas eelistus." + +msgid "Configure the fourth subtitle language." +msgstr "Määra subtiitrite keele neljas eelistus." + +msgid "Configure the function of a long press on the power button." +msgstr "Määra, mida toitenupu pikk vajutus teeb." + +msgid "Configure the function of a short press on the power button." +msgstr "Määra, mida toitenupu lühike vajutus teeb." + +msgid "Configure the function of the '0' button do when PIP is active." +msgstr "Määra, mida '0' nupp PIP- režiimis teeb." + +msgid "Configure the gateway." +msgstr "Seadista lüüs." + +msgid "Configure the general audio delay of Dolby Digital sound tracks." +msgstr "Määra üldine viiteag Dolby Digital heliga heliribadele." + +msgid "Configure the general audio delay of stereo sound tracks." +msgstr "Määra üldine viiteag stereo heliga heliribadele." + +msgid "Configure the hard disk drive to go to standby after the specified idle time." +msgstr "Määra kõvaketta ooterežiimi minek pärast teatud jõudeoleku aega." + +msgid "Configure the horizontal alignment of the subtitles." +msgstr "Määra subtiitrite horisontaalne asetus." + +msgid "Configure the initial fast forward speed. When you press the fast forward button, winding will start at this speed." +msgstr "Määra edasikerimise algkiirus. Edasikerimine algab selle kiirusega." + +msgid "Configure the initial rewind speed. When you press the rewind button, winding will start at this speed." +msgstr "Määra tagasikerimise algkiirus. Tagasikerimine algab selle kiirusega." + +msgid "Configure the latitude of your location." +msgstr "Määra oma asukoha laiuskraad." + +msgid "Configure the longitude of your location." +msgstr "Määra oma asukoha pikkuskraad." + +msgid "Configure the minimum amount of disk space to be available for recordings. When the amount of space drops below this value, deleted items will be removed from the trash can." +msgstr "Määra väikseim kettaruum, mis peab olema vaba enne salvestuse algamist. Selle saavutamiseks kustutatakse vajadusel faile prügikastist." + +msgid "Configure the nameserver (DNS)." +msgstr "Seadista nimeserver (DNS)." + +msgid "Configure the netmask." +msgstr "Seadista võrgumask." + +msgid "Configure the number of days after which items are automaticaly removed from the trash can." +msgstr "Määra päevade arv, pärast mida salvestised kustutatakse automaatselt prügikastist." + +msgid "Configure the number of days old timers are kept before they are automatically removed from the timer list." +msgstr "Määra päevade arv, pärast mida vana taimer kustutatakse automaatselt nimekirjast." + +msgid "Configure the offline decoding delay in milliseconds. The configured delay is observed at each control word parity change." +msgstr "Määra võrguta dekodeerimise viiteaeg (ms)." + +msgid "Configure the possible fast forward speeds." +msgstr "Määra edasikerimise kiirused." + +msgid "Configure the possible rewind speeds." +msgstr "Määra edasikerimise kiirused." + +msgid "Configure the primary EPG language." +msgstr "Määra saatekava keele esimene eelistus." + +msgid "Configure the refresh rate of the screen." +msgstr "Määra ekraani värskendussagedus" + +msgid "Configure the screen resolution in PC output mode." +msgstr "Määra ekraanilahutus PC väljundi režiimis." + +msgid "Configure the second audio language." +msgstr "Määra heli keele teine eelistus." + +msgid "Configure the second subtitle language." +msgstr "Määra subtiitrite keele teine eelistus." + +msgid "Configure the secondary EPG language." +msgstr "Määra saatekava keele teine eelistus." + +msgid "Configure the sharpness of the video scaling." +msgstr "Määra pildi skaleerimise teravus." + +msgid "Configure the skip time interval for the '1'/'3' buttons." +msgstr "Määra '1'/'3'-nuppude ülehüppe pikkus" + +msgid "Configure the skip time interval for the '4'/'6' buttons." +msgstr "Määra '4'/'6'-nuppude ülehüppe pikkus." + +msgid "Configure the skip time interval for the '7'/'9' buttons." +msgstr "Määra '7'/'9'-nuppude ülehüppe pikkus." + +msgid "Configure the slow motion speeds." +msgstr "Määra eglustuskiirused." + +msgid "Configure the source of the frontend data as shown on the infobars. 'Settings' is as stored on the settings. 'Tuner' is as reported by the tuner." +msgstr "" + +msgid "Configure the speed of the background deletion process. Lower speed will consume less hard disk drive performance." +msgstr "Määra taustal kustutamise kiirus. Madal kiirus mõjutab kõvaketta jõudlust vähem." + +msgid "Configure the speed of the fan" +msgstr "" + +msgid "Configure the subtitle delay when timing information is not available." +msgstr "Määra subtiitrite viiteaeg ajastuse puudumisel." + +msgid "Configure the third audio language." +msgstr "Määra heli keele kolmas eelistus" + +msgid "Configure the third subtitle language." +msgstr "Määra subtiitrite keele kolmas eelistus." + +msgid "Configure the transparency of the OSD." +msgstr "Määra ekraanigraafika läbipaistvus." + +msgid "Configure the transparency of the black background of graphical DVB subtitles." +msgstr "Määra DVB subtiitrite tausta läbipaistvus." + +msgid "Configure the tuner mode." +msgstr "Määra tuuneri režiim." + +msgid "Configure the type of status indication icons shown in the movielist." +msgstr "Määra, kuidas tähistatakse salvestuste olek filmilistis." + +msgid "Configure the vertical position of the subtitles, measured from the bottom of the screen." +msgstr "Määra subtiitrite vertikaalne asukoht mõõdetuna ekraani alt servast." + +msgid "Configure the video output mode (or resolution)." +msgstr "Määra pildi väljundi režiim (või resolutsioon)" + +msgid "Configure the way in which the receiver changes channels." +msgstr "Määra viis, kuidas vastuvõtja vahetab kanaleid." + +msgid "Configure where completed timers show up in the timer list." +msgstr "Määra, kuidas aegunud taimereid taimerite nimekirjas näidatakse." + +msgid "Configure whether (and for how long) a second infobar will be shown when OK is pressed twice. The second infobar contains additional information about the current channel." +msgstr "Luba teise inforiba näitamine (2 X OK). Seal võib leida käesoleva kanali kohta rohkem teavet." + +msgid "Configure whether multi channel sound tracks should be downmixed to stereo." +msgstr "Määra, kas mitmekanaline heli tuleks taandada stereoks." + +msgid "Configure whether or not an icon should be shown when your motorized dish is moving." +msgstr "Määra, kas mootori liikumisel näidatakse ikooni." + +msgid "Configure which access level to use for the configuration menu. Expert level gives access to all items." +msgstr "Määra seadistumenüü kuvamise tase. 'Täpsem' näitab kõiki võimalusi." + +msgid "Configure which color format should be used on the SCART output." +msgstr "Määra SCART väljundi poolt kasutatav värvisüsteem." + +msgid "Configure which tuner for recordings will be preferred, when more than one tuner is available." +msgstr "" + +msgid "Configure which tuner type will be preferred, when the same service is available on different types of tuners." +msgstr "Määra, millist tuunerit eelistatakse, kui sama kanal on saadaval mitmel erinevat tüüpi tuuneril." + +msgid "Configure which tuner will be preferred, when more than one tuner is available. If set to 'auto' the system will give priority to the tuner having the lowest number of channels/satellites." +msgstr "Määra, millist tuunerit eelistatakse, kui saadaval on rohkem kui üks tuuner. Valikul 'automaatne' annab süsteem eelistuse tuunerile, millel on kõige vähem kanaleid/satelliite." + +msgid "Configure your internal LAN" +msgstr "Seadista sisemine LAN võrk" + +msgid "Configure your network again" +msgstr "Seadista võrk uuesti" + +msgid "Configure your network settings, and press OK to start the scan" +msgstr "Seadista võrk ja vajuta otsingu alustamiseks OK" + +msgid "Configure your wireless LAN again" +msgstr "Seadista WiFi võrk uuesti" + +msgid "Configures which video output connector will be used." +msgstr "See valik määrab, millist ühenduspesa video väljund kasutab." + +msgid "Configuring" +msgstr "Seadistan" + +msgid "Conflicting timer" +msgstr "Vastuolud taimeris" + +msgid "Connect" +msgstr "Ühenda" + +msgid "Connect to a wireless network" +msgstr "Ühenda WiFi võrguga" + +msgid "Connected satellites" +msgstr "" + +msgid "Connected to" +msgstr "Ühendatud" + +msgid "Connected!" +msgstr "Ühendatud!" + +msgid "Constellation" +msgstr "Konstellatsioon" + +msgid "Content does not fit on DVD!" +msgstr "Sisu ei mahu DVD-le!" + +msgid "Continue" +msgstr "Jätka" + +msgid "Continue in background" +msgstr "Jätka taustal" + +msgid "Continue playback" +msgstr "Jätka taasesitust" + +msgid "Continue playing" +msgstr "Jätka taasesitust" + +msgid "Continues play (loop)" +msgstr "Lõputu esitus (loop)" + +msgid "Contrast" +msgstr "Kontrast" + +msgid "Convert ext3 filesystem to ext4" +msgstr "Teisenda ext3 > ext4" + +msgid "Convert ext3 to ext4" +msgstr "Teisenda ext3 > ext4" + +msgid "Converting ext3 to ext4..." +msgstr "Teisenda ext3 > ext4..." + +msgid "Copy" +msgstr "Kopeeri" + +msgid "Could not connect to receiver .NFI image feed server:" +msgstr "Ei saa ühendust vastugvõtja .NFI-tarkvara serveriga:" + +msgid "Could not find installed channel list." +msgstr "Paigaldatud kanalinimekirja ei leitud." + +msgid "Could not load medium! No disc inserted?" +msgstr "Ei saa plaati avada! Plaati pole sisestatud?" + +msgid "Could not open Picture in Picture" +msgstr "PiP avamine ei õnnestunud" + +#, python-format +msgid "Could not record due to conflicting timer %s" +msgstr "Taimerite konflikt %s. Salvestamine nurjus." + +#, python-format +msgid "Could not record due to invalid service %s" +msgstr "Kehtetu kanal %s. Salvestamine nurjus." + +msgid "Create DVD-ISO" +msgstr "Loo DVD-ISO" + +msgid "Create more detailed crash log" +msgstr "Loo üksikasjalikum vealogi" + +#, python-format +msgid "Creating directory %s failed." +msgstr "Kausta loomine %s nurjus." + +msgid "Creating filesystem" +msgstr "Failisüsteemi loomine" + +msgid "Creating partition" +msgstr "Partitsiooni loomine" + +msgid "Croatian" +msgstr "Horvaatia" + +msgid "Current CEC address" +msgstr "Praegune CEC aadress" + +msgid "Current device: " +msgstr "Praegune seade: " + +msgid "Current event EPG" +msgstr "Käesoleva saate kava" + +#, python-format +msgid "Current mode: %s \n" +msgstr "" + +msgid "Current settings:" +msgstr "Hetke seaded:" + +msgid "Current transponder" +msgstr "Hetke transponder" + +msgid "Current value: " +msgstr "Praegune väärtus: " + +msgid "Current version:" +msgstr "Hetke versioon:" + +msgid "Currently installed image" +msgstr "Praegu paigaldatud tarkvara" + +msgid "Currently the commit log cannot be retrieved - please try later again" +msgstr "" + +msgid "Custom skip time for '1'/'3' buttons" +msgstr "'1'/'3'-nuppude hüppe kohandatud pikkus" + +msgid "Custom skip time for '4'/'6' buttons" +msgstr "'4'/'6'-nuppude hüppe kohandatud pikkus" + +msgid "Custom skip time for '7'/'9' buttons" +msgstr "'7'/'9'-nuppude hüppe kohandatud pikkus" + +msgid "Customize" +msgstr "Kohandamine" + +msgid "Customize channel list cursor behavior" +msgstr "" + +msgid "Cut" +msgstr "Lõika" + +msgid "Cutlist editor..." +msgstr "Määra lõikekohad" + +msgid "Czech" +msgstr "Tšehhi" + +msgid "D" +msgstr "D" + +msgid "DHCP" +msgstr "DHCP" + +msgid "DMM advanced" +msgstr "" + +msgid "DMM normal" +msgstr "" + +msgid "DUAL LAYER DVD" +msgstr "Kahekihiline DVD" + +msgid "DVB subtitle black transparency" +msgstr "DVB subtiitrite tausta läbipaistvus" + +msgid "DVB-C" +msgstr "DVB-C" + +msgid "DVB-C ANNEX C" +msgstr "DVB-C ANNEX C" + +msgid "DVB-S" +msgstr "DVB-S" + +msgid "DVB-S2" +msgstr "DVB-S2" + +msgid "DVB-T" +msgstr "DVB-T" + +msgid "DVB-T2" +msgstr "DVB-T2" + +msgid "DVD data format" +msgstr "DVD vorming" + +msgid "DVD file browser" +msgstr "DVD failibrauser" + +msgid "DVD media toolbox" +msgstr "DVD tööriistad" + +msgid "DVD player" +msgstr "DVD mängija" + +#, fuzzy +msgid "DVD titlelist" +msgstr "DVD nimekiri" + +msgid "Danish" +msgstr "Taani" + +msgid "Date" +msgstr "Kuupäev" + +msgid "Date/time input" +msgstr "Aeg/kuupäev" + +msgid "Deep standby" +msgstr "Sügav ooterežiim" + +msgid "Default" +msgstr "Vaikimisi" + +msgid "Default movie location" +msgstr "Salvestuste tavaasukoht" + +msgid "Default settings" +msgstr "Vaikeväärtused" + +msgid "Delay before key repeat starts:" +msgstr "Viiviteaeg enne võtme kordamist:" + +msgid "Delay for external subtitles" +msgstr "Väliste subtiitrite viide" + +msgid "Delete" +msgstr "Kustuta" + +msgid "Delete entry" +msgstr "Kustuta valik" + +msgid "Delete failed!" +msgstr "Kustutamine nurjus!" + +msgid "Delete file" +msgstr "Kustuta fail" + +msgid "Delete playlist entry" +msgstr "Kustuta esitusloendi kirje" + +msgid "Delete saved playlist" +msgstr "Kustuta salvestatud esitusloend" + +msgid "Delete timer" +msgstr "" + +msgid "Delete..." +msgstr "Kustuta..." + +msgid "Deleted" +msgstr "Kustutati" + +msgid "Deleted items" +msgstr "Prügikast" + +msgid "Depth" +msgstr "Sügavus" + +msgid "Descramble http streams" +msgstr "Dekodeeri http vood" + +msgid "Description" +msgstr "Kirjeldus" + +msgid "Deselect" +msgstr "Tühista valik" + +msgid "Details for plugin: " +msgstr "Laienduse üksikaskad: " + +msgid "Detected HDD:" +msgstr "Leitud kõvaketas:" + +msgid "Detected NIMs:" +msgstr "Leitud tuunerid:" + +msgid "Devicename:" +msgstr "Seadme nimi:" + +msgid "Devide" +msgstr "" + +msgid "DiSEqC" +msgstr "DiSEqC" + +msgid "DiSEqC 1.0 command" +msgstr "" + +msgid "DiSEqC 1.1 command" +msgstr "" + +msgid "DiSEqC 1.1 repeats" +msgstr "" + +msgid "DiSEqC A/B" +msgstr "DiSEqC A/B" + +msgid "DiSEqC A/B/C/D" +msgstr "DiSEqC A/B/C/D" + +msgid "DiSEqC mode" +msgstr "DiSEqC-olek" + +#, python-format +msgid "DiSEqC port %s: %s" +msgstr "DiSEqC port %s: %s" + +msgid "DiSEqC-tester settings" +msgstr "DiSEqC-testeri seaded" + +msgid "Dialing:" +msgstr "Valin numbrit:" + +msgid "Digital contour removal" +msgstr "Digitaalne kontuuri kõrvaldamine" + +msgid "Direct playback of linked titles without menu" +msgstr "Lingitud salvestuste kohene esitus ilma menüüta" + +msgid "Directory" +msgstr "Kataloog" + +#, python-format +msgid "Directory %s does not exist." +msgstr "Kataloogi %s ei eksisteeri." + +#, python-format +msgid "Directory %s nonexistent." +msgstr "" + +msgid "Directory browser" +msgstr "Kataloogi brauser" + +#, python-format +msgid "Directory contains %d file(s) and %d sub-directories.\n" +msgstr "" + +#, fuzzy, python-format +msgid "Directory contains %s and %s." +msgstr "Kataloog sisaldab %d faili and %d alamkataloogi.\n" + +msgid "Disable" +msgstr "Keela" + +msgid "Disable Picture in Picture" +msgstr "Sulge pilt-pildis" + +msgid "Disable background scanning" +msgstr "Keela kanaliotsing taustal" + +msgid "Disable timer" +msgstr "" + +msgid "Disabled" +msgstr "Keelatud" + +msgid "Disconnect" +msgstr "Katkesta ühendus" + +msgid "Disk space to reserve for recordings (in GB)" +msgstr "Salvestistele tagatud kettaruum (GB)" + +msgid "Display 16:9 content as" +msgstr "Näita 16:9 materjal" + +msgid "Display 4:3 content as" +msgstr "Näita 4:3 materjal" + +msgid "Display >16:9 content as" +msgstr "Näita 16:9 materjal" + +msgid "Display and userinterface" +msgstr "Esipaneel ja kasutajaliides" + +msgid "Display message before playing next movie" +msgstr "Teavita enne järgmise filimi alustamist" + +msgid "Display setup" +msgstr "Esipaneeli seaded" + +msgid "Do not change" +msgstr "Ära muuda" + +msgid "Do not record" +msgstr "Ära salvesta" + +msgid "Do nothing" +msgstr "Ära tee midagi" + +msgid "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" +msgstr "" +"Kas soovid failisüsteemi kontrollida?\n" +"Selleks kulub palju aega!" + +msgid "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" +msgstr "" +"Kas teisendad failisüsteemi?\n" +"Seda ei saa tagasi pöörata!" + +#, python-format +msgid "Do you really want to delete %s?" +msgstr "Kas kustutad %s?" + +#, python-format +msgid "" +"Do you really want to download\n" +"the plugin \"%s\"?" +msgstr "" +"Kas paigaldad laienduse\n" +"\"%s\"?" + +msgid "Do you really want to exit?" +msgstr "Kas tõesti soovid väljuda?" + +msgid "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" +msgstr "" +"Kas vormindad andmekandja?\n" +"Kogu ketta sisu läheb kaduma!" + +#, python-format +msgid "" +"Do you really want to remove\n" +"the plugin \"%s\"?" +msgstr "" +"Kas eemaldad\n" +"laienduse \"%s\"?" + +#, python-format +msgid "Do you really want to remove directory %s from the disk?" +msgstr "Kas kustutad kataloogi %s kõvakettalt?" + +#, python-format +msgid "Do you really want to remove your bookmark of %s?" +msgstr "Kas kustutad lemmiku %s?" + +msgid "Do you want this?" +msgstr "" + +msgid "Do you want to burn this collection to DVD medium?" +msgstr "Kas soovid oma valikut DVD-le kirjutada?" + +msgid "Do you want to do a service scan?" +msgstr "Kas soovid kanaliotsingut teha?" + +msgid "Do you want to do another manual service scan?" +msgstr "Kas soovid uut käsiotsingut teha?" + +#, python-format +msgid "Do you want to download the image to %s ?" +msgstr "Kas soovid image alla laadida %s ?" + +msgid "Do you want to install a channel list?" +msgstr "Kas paigaldad kanalinimekirja?" + +msgid "Do you want to install the package:\n" +msgstr "Kas paigaldad paketi:\n" + +msgid "Do you want to play DVD in drive?" +msgstr "Soovid panna DVD mängima?" + +msgid "Do you want to preview this DVD before burning?" +msgstr "Soovid plaadi eelvaadet ka, enne kirjutamise alustamist?" + +msgid "Do you want to reboot your receiver?" +msgstr "Kas taaskäivitad vastuvõtja?" + +msgid "Do you want to remove the package:\n" +msgstr "Kas kustutad paketi:\n" + +msgid "Do you want to restore your settings?" +msgstr "Kas soovid taastada oma seaded?" + +msgid "Do you want to resume this playback?" +msgstr "Kas soovid jätkata vaatamist katkestatud kohalt?" + +#, python-format +msgid "Do you want to update your receiver to %s?" +msgstr "Kas uuendad vastuvõtja %s?" + +msgid "Do you want to update your receiver?" +msgstr "Kas uuendad vastuvõtja tarkvara?" + +msgid "Do you want to upgrade the package:\n" +msgstr "Kas uuendad paketti:\n" + +msgid "Don't stop current event but disable coming events" +msgstr "Ära peata toimuvat salvestust, aga keela tulevad" + +#, fuzzy, python-format +msgid "Done - Installed, upgraded or removed %d package (%s)" +msgid_plural "Done - Installed, upgraded or removed %d packages (%s)" +msgstr[0] "Valmis - paigaldatud või uuendatud %d , %d veaga" +msgstr[1] "Valmis - paigaldatud või uuendatud %d , %d veaga" + +msgid "Download" +msgstr "Allalaadimine" + +#, python-format +msgid "Download %s from server" +msgstr "Laadi alla %s serverist" + +msgid "Download .NFI-files for USB-flasher" +msgstr "Allalaadimine .NFI-failid USB-le" + +msgid "Download plugins" +msgstr "Paigalda laiendusi" + +msgid "Downloadable new plugins" +msgstr "Allalaetavad uued laiendused" + +msgid "Downloadable plugins" +msgstr "Allalaetavad laiendused" + +msgid "Downloading" +msgstr "Laetakse alla" + +msgid "Downloading plugin information. Please wait..." +msgstr "Laeme alla laienduse infot. Palun oota." + +msgid "Dutch" +msgstr "Hollandi" + +msgid "Dynamic contrast" +msgstr "Dünaamiline kontrast" + +msgid "E" +msgstr "E" + +msgid "EPG" +msgstr "Saatekava" + +msgid "EPG language selection 1" +msgstr "EPG keele valik 1" + +msgid "EPG language selection 2" +msgstr "EPG keele valik 2" + +msgid "EPG selection" +msgstr "Saatekava" + +msgid "EPG settings" +msgstr "Saatekava seaded" + +#, python-format +msgid "ERROR - failed to scan (%s)!" +msgstr "VIGA - otsing nurjus (%s)!" + +msgid "East" +msgstr "Ida" + +msgid "East limit set" +msgstr "Eda piir on määratud" + +msgid "Edit" +msgstr "Muuda" + +msgid "Edit DNS" +msgstr "Muuda DNS" + +msgid "Edit bouquets list" +msgstr "Muuda valikute nimekirja" + +msgid "Edit chapters of current title" +msgstr "Muuda seda pealkirja" + +msgid "Edit services list" +msgstr "Muuda kanalite listi" + +msgid "Edit settings" +msgstr "Muuda seadeid" + +msgid "Edit the nameserver configuration of your receiver.\n" +msgstr "Muuda vastuvõtja nimeserveri seadeid.\n" + +msgid "Edit the network configuration of your receiver.\n" +msgstr "Muuda vastuvõtja võrguseadeid.\n" + +msgid "Edit timer" +msgstr "" + +msgid "Edit title" +msgstr "Muuda pealkirja" + +msgid "Edit upgrade source url." +msgstr "Muuda uuenduste allika url." + +msgid "Education/Science/..." +msgstr "Haridus/teadus" + +msgid "Electronic Program Guide" +msgstr "EPG" + +msgid "Enable" +msgstr "Luba" + +msgid "Enable 'neutrino' style channel select controlling" +msgstr "" + +msgid "Enable 'neutrino' style zap controlling" +msgstr "" + +msgid "Enable 5V for active antenna" +msgstr "Luba 5 V toide aktiivantennile" + +msgid "Enable EIT EPG" +msgstr "Luba EIT EPG" + +msgid "Enable MHW EPG" +msgstr "Luba MHW EPG" + +msgid "Enable Netmed EPG" +msgstr "Luba Netmed EPG" + +msgid "Enable OK for channel selection" +msgstr "" + +msgid "Enable ViaSat EPG" +msgstr "Luba ViaSat EPG" + +msgid "Enable Virgin EPG" +msgstr "" + +msgid "Enable Wake On LAN" +msgstr "" + +msgid "Enable auto fast scan" +msgstr "" + +msgid "Enable bouquet selection in multi-EPG" +msgstr "Luba multiEPG-s lemmiknimekirjade valik" + +msgid "Enable freesat EPG" +msgstr "Luba freesat EPG" + +msgid "Enable multiple bouquets" +msgstr "Luba lemmiknimekirjad" + +msgid "Enable parental control" +msgstr "Luba lapselukk" + +msgid "Enable teletext caching" +msgstr "Luba teleteksti puhverdamine" + +msgid "Enable zapping with CH+/-, B+/-, P+/-" +msgstr "" + +msgid "Enabled" +msgstr "Kasutusel" + +msgid "Encrypted: " +msgstr "Kodeeritud: " + +msgid "Encryption" +msgstr "Kodeering" + +msgid "Encryption key" +msgstr "Kodeeringu võti" + +msgid "Encryption key type" +msgstr "Kodeeringu võti" + +msgid "Encryption:" +msgstr "Kodeering:" + +msgid "End time" +msgstr "Lõpetamise aeg" + +msgid "End time to ignore inactivity sleeptimer" +msgstr "" + +msgid "End time to ignore shutdown in standby" +msgstr "" + +msgid "English" +msgstr "Inglise" + +msgid "Enigma2 skin selector" +msgstr "Enigma2 välimuse valik" + +msgid "Enter main menu..." +msgstr "Mine peamenüüsse" + +msgid "Enter pin code" +msgstr "Sisesta pin kood" + +msgid "Enter the service pin" +msgstr "Sisesta kood" + +msgid "Equal to" +msgstr "" + +msgid "Error" +msgstr "Viga" + +msgid "Error code" +msgstr "Veakood" + +msgid "Error executing plugin" +msgstr "Viga laienduse käivitamisel" + +#, python-format +msgid "" +"Error: %s\n" +"Retry?" +msgstr "" +"Viga: %s\n" +"Uuesti?" + +msgid "Estonian" +msgstr "Eesti" + +msgid "Ethernet network interface" +msgstr "Etherneti võrguliides" + +msgid "Event font size (relative to skin size)" +msgstr "Saate tähesuurus" + +msgid "Event view" +msgstr "Saateinfo" + +msgid "Event view menu" +msgstr "Saateinfo menüü" + +msgid "Everywhere" +msgstr "Igal pool" + +msgid "Exceeds dual layer medium!" +msgstr "Liiga suur kahekihilise ketta jaoks!" + +msgid "Execution finished!!" +msgstr "Käivitus lõppenud!!" + +msgid "Execution progress:" +msgstr "Käivituse progress:" + +msgid "Exif" +msgstr "Välju" + +msgid "Exit" +msgstr "Välju" + +msgid "Exit EPG" +msgstr "Sulge saatekava" + +msgid "Exit editor" +msgstr "Välju redaktorist" + +msgid "Exit input device selection." +msgstr "Välju sisendseadmete valikust." + +msgid "Exit media player?" +msgstr "" + +msgid "Exit mediaplayer" +msgstr "Sulge meediamängija" + +msgid "Exit movie list" +msgstr "Sulge filmilist" + +msgid "Exit movie player?" +msgstr "Sulged meediamängija?" + +msgid "Exit nameserver configuration" +msgstr "Välju nimeserverite seadistusest" + +msgid "Exit network interface list" +msgstr "Välju võrguliideste nimekirjast" + +msgid "Exit network wizard" +msgstr "Välju võrgu häälestusest" + +msgid "Exit the wizard" +msgstr "Välju juhendatud seadistusabist" + +msgid "Expert" +msgstr "Ekspert" + +msgid "Extend sleeptimer 15 minutes" +msgstr "" + +msgid "Extended Software" +msgstr "Laiendatud tarkvara" + +msgid "Extended Software Plugin" +msgstr "Laiendatud tarkvara" + +msgid "Extended network setup plugin..." +msgstr "Laiendatud võrguseaded" + +msgid "Extended setup..." +msgstr "Täpsemad seaded..." + +msgid "Extensions" +msgstr "Laiendused" + +msgid "Extensions management" +msgstr "Laienduste haldamine" + +msgid "External PiP" +msgstr "" + +msgid "External subtitle color" +msgstr "Välise subtiitri värv" + +msgid "Extra motor options" +msgstr "" + +msgid "FEC" +msgstr "FEC" + +msgid "FTA" +msgstr "FTA" + +msgid "Factory reset" +msgstr "Algseadistus" + +msgid "Failed" +msgstr "Nurjus" + +msgid "Failed to write /tmp/positionersetup.log: " +msgstr "/tmp/positionersetup.logi loomine nurjus: " + +#, python-format +msgid "Fan %d" +msgstr "Ventilaator %d" + +#, python-format +msgid "Fan %d PWM" +msgstr "Ventilaatori %d PWM" + +#, python-format +msgid "Fan %d voltage" +msgstr "Ventilaatori %d pinge" + +msgid "Fan operation" +msgstr "" + +msgid "Fan speed" +msgstr "" + +msgid "Fast" +msgstr "Kiire" + +msgid "Fast DiSEqC" +msgstr "Kiire DiSEqC" + +msgid "Fast Scan" +msgstr "Kiirotsing" + +msgid "Fast epoch" +msgstr "Kiire kerimine" + +msgid "Fast forward speeds" +msgstr "Edasikerimise kiirused" + +msgid "Favourites" +msgstr "Lemmikud" + +msgid "File appears to be busy.\n" +msgstr "Fail on hõivatud.\n" + +msgid "Filesystem check" +msgstr "Failisüsteemi kontroll" + +msgid "Final position at" +msgstr "" + +msgid "Final position at index" +msgstr "" + +msgid "Fine movement" +msgstr "Täppisliigutamine" + +msgid "Finetune" +msgstr "Peenhäälestus" + +msgid "Finished" +msgstr "Lõppenud" + +msgid "Finished configuring your network" +msgstr "Lõpetasin võrgu seadistamise" + +msgid "Finished restarting your network" +msgstr "Võrgu restart on tehtud" + +msgid "Finnish" +msgstr "Soome" + +msgid "Fixed" +msgstr "Määratud" + +msgid "Flash" +msgstr "Flash" + +msgid "Flashing failed" +msgstr "Flashimine nurjus" + +msgid "Following tasks will be done after you press OK!" +msgstr "Järgmised toimingud tehakse pärast OK vajutamist!" + +msgid "Format" +msgstr "Vorming" + +msgid "Forward volume keys" +msgstr "Kasuta helitugevuse nuppe" + +msgid "Frame size in full view" +msgstr "Kaadri suurus täisvaates" + +msgid "French" +msgstr "Prantsuse" + +msgid "Frequency" +msgstr "Sagedus" + +msgid "Frequency bands" +msgstr "Sagedusalad" + +msgid "Frequency scan step size(khz)" +msgstr "Sageduse otsingu samm (khz)" + +msgid "Frequency steps" +msgstr "Sageduse samm" + +msgid "Frequency:" +msgstr "" + +msgid "Fri" +msgstr "R" + +msgid "Friday" +msgstr "Reede" + +msgid "From :" +msgstr "" + +#, python-format +msgid "Frontprocessor version: %d" +msgstr "Esipaneeli protsessori versioon: %d" + +msgid "Full transparency" +msgstr "Täiesti läbipaistev" + +msgid "Fulview resulution" +msgstr "" + +msgid "Function of OK button" +msgstr "'OK' nupu toime" + +msgid "Further Options" +msgstr "" + +msgid "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" +msgstr "" +"Kas taaskäivitad kasutajaliidese\n" +"uue välimuse aktiveerimiseks?" + +msgid "Gateway" +msgstr "Lüüs" + +msgid "General AC3 delay" +msgstr "Üldine AC3 viide" + +msgid "General PCM delay" +msgstr "Üldine PCM viide" + +msgid "Genre" +msgstr "Žanr" + +msgid "German" +msgstr "Saksa" + +msgid "Get latest experimental image" +msgstr "Hangi viimane eksperimentaal tarkvara" + +msgid "Get latest release image" +msgstr "Leia uusim image" + +msgid "Getting plugin information. Please wait..." +msgstr "Saadakse laienduse infot. Oota." + +msgid "Go down the list" +msgstr "Liigu nimekirjas alla" + +msgid "Go to first movie or last item" +msgstr "Liigu esimesele nimetusele" + +msgid "Go to first movie or top of list" +msgstr "Liigu esimesele nimetusele või nimekirja tippu" + +msgid "Go to first service" +msgstr "Mine esimesele kanalile" + +msgid "Go to last service" +msgstr "Mine viimasele kanalile" + +msgid "Go to next event" +msgstr "Mine järgmisele saatele" + +msgid "Go to next page of service" +msgstr "Mine kanalinimekirja järgmisele lehele" + +msgid "Go to previous event" +msgstr "Mine eelmisele saatele" + +msgid "Go to previous page of service" +msgstr "Mine kanalinimekirja järgmisele lehele" + +msgid "Go up the list" +msgstr "Liigu nimekirjas üles" + +msgid "Goto" +msgstr "Mine" + +msgid "Goto 0" +msgstr "Goto 0" + +msgid "Goto :" +msgstr "Mine :" + +msgid "Goto X" +msgstr "Mine X" + +msgid "Goto index position" +msgstr "" + +msgid "Goto next day of events" +msgstr "" + +msgid "Goto next page of events" +msgstr "Liigu järgmisele saatekava lehele" + +msgid "Goto position" +msgstr "Mine kohale" + +msgid "Goto previous day of events" +msgstr "" + +msgid "Goto previous page of events" +msgstr "Liigu eelmisele saatekava lehele" + +msgid "Goto specific date/time" +msgstr "" + +msgid "GotoX calibration" +msgstr "" + +msgid "GraphMultiEpg Settings" +msgstr "Graafilise MultiEpg seaded" + +msgid "Graphical Multi EPG" +msgstr "Graafiline Multi EPG" + +msgid "Greek" +msgstr "Kreeka" + +msgid "Green boost" +msgstr "Roheline boost" + +msgid "Guard interval" +msgstr "" + +msgid "HD list" +msgstr "HD kanalid" + +msgid "HDMI-CEC setup" +msgstr "" + +msgid "Handle standby from TV" +msgstr "Ooterežiim TV kaudu" + +msgid "Handle wakeup from TV" +msgstr "Käivitamine TV kaudu" + +msgid "Hard disk" +msgstr "Kõvaketas" + +msgid "Hard disk setup" +msgstr "Kõvaketta seaded" + +msgid "Hard disk standby after" +msgstr "Kõvaketta välja lülitamine peale" + +msgid "Harddisk" +msgstr "Kõvaketas" + +msgid "Hardware: " +msgstr "Vastuvõtja: " + +msgid "Hebrew" +msgstr "Heebrea" + +msgid "Helps setting up your dish" +msgstr "" + +msgid "Hidden network" +msgstr "Varjatud võrk" + +msgid "Hide CI messages" +msgstr "Peida CI teated" + +msgid "Hide channel list in radio mode" +msgstr "Peida raadiorežiimis kanalinimekiri" + +msgid "Hide known extensions" +msgstr "" + +msgid "Hide number markers" +msgstr "Peida nummerdatud markerid" + +msgid "Hide player" +msgstr "Peida mängija" + +msgid "Hide zap errors" +msgstr "Peida veateated kanalivahetusel" + +msgid "Hierarchy info" +msgstr "Hierarhia teave" + +msgid "Hierarchy information" +msgstr "Hierarhia teave" + +msgid "High bitrate support" +msgstr "Kõrge bitrate tugi" + +msgid "Hold screen" +msgstr "Hoia pilti" + +msgid "Hold till locked" +msgstr "Hoia pilti lukustamiseni" + +msgid "Home" +msgstr "Kodu" + +msgid "Horizontal" +msgstr "Horisontaal" + +msgid "Horizontal turning speed" +msgstr "Horisontaalne keeramise kiirus" + +msgid "How many minutes do you want to record?" +msgstr "Mitu minutit soovid salvestada?" + +msgid "Hue" +msgstr "Värvitoon" + +msgid "Hungarian" +msgstr "Ungari" + +msgid "IP address" +msgstr "IP aadress" + +msgid "ISO file is too large for this filesystem!" +msgstr "ISO fail on liiga suur failisüsteemile!" + +msgid "ISO path" +msgstr "ISO kataloog" + +msgid "Icons" +msgstr "Ikoonid" + +msgid "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." +msgstr "" +"SCART-ühenduses on probleem.\n" +"Vajuta OK, et minna tagasi." + +msgid "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." +msgstr "" +"Kui TV-s on heleduse või kontrastsuse parandusfunktsioon, lülita see välja. Kui on olemas midagi nimega \"dynamic\", kasuta selle standardseadistust. Sea taustvalgustus sobivaks.Vähenda TV kontrastsust nii palju kui võimalik.\n" +"Nüüd vähenda TV heledust miinimumini nii, et kaks kõige alumist halli varjundit jäävad eristatavaks. \n" +"Ära hooli praegu heledatest varjunditest, need seame paika järgmisena. \n" +"Kui oled tulemusega rahul, vajuta OK." + +msgid "Image: " +msgstr "Tarkvara: " + +msgid "Immediate shutdown" +msgstr "Kohene väljalülitus" + +msgid "In order to record a timer, the TV was switched to the recording service!\n" +msgstr "Sunnitud kanalivahetus. Taimeri salvestus just käivitus ja vajas seda tuunerit!\n" + +msgid "In progress" +msgstr "Toimumas" + +msgid "Inactivity Sleeptimer" +msgstr "" + +msgid "Include AIT in http streams" +msgstr "Kaasa AIT http voogudesse" + +msgid "Include ECM in http streams" +msgstr "Kaasa ECM http voogudesse" + +msgid "Include EIT in http streams" +msgstr "Kaasa EIT http voogudesse" + +msgid "Incorrect type service for PiP!" +msgstr "" + +msgid "Increased voltage" +msgstr "Suurendatud pinge" + +msgid "Index" +msgstr "Indeks" + +msgid "Index allocated:" +msgstr "" + +msgid "Info" +msgstr "Info" + +msgid "Info bar" +msgstr "Inforiba" + +msgid "Info bar timeout" +msgstr "Inforiba kuvamise aeg" + +msgid "Infobar frontend data source" +msgstr "" + +msgid "Information" +msgstr "Info" + +msgid "Init" +msgstr "" + +msgid "Initial fast forward speed" +msgstr "Edasikerimise algkiirus" + +msgid "Initial location in new timers" +msgstr "Algne asukoht uutes taimerites" + +msgid "Initial lock ratio" +msgstr "" + +msgid "Initial rewind speed" +msgstr "Tagasikerimise algkiirus" + +msgid "Initial signal quality" +msgstr "" + +msgid "Initial signal quality:" +msgstr "" + +msgid "Initialization" +msgstr "Vorminda" + +msgid "Initialize" +msgstr "Vorminda" + +msgid "Initializing storage device..." +msgstr "Andmekandja vormindamine..." + +msgid "Input" +msgstr "Sisend" + +msgid "Input device setup" +msgstr "Sisendseadmete seadistamine" + +msgid "Input devices" +msgstr "Sisendseadmed" + +msgid "Install" +msgstr "Paigalda" + +msgid "Install a new image with a USB stick" +msgstr "Seadista uus image USB pulgalt" + +msgid "Install a new image with your web browser" +msgstr "Paigalda uus image oma veebisirvijaga" + +msgid "Install channel list" +msgstr "Paigalda kanalinimekiri" + +msgid "Install extensions" +msgstr "" + +msgid "Install extensions." +msgstr "Paigalda laiendused." + +msgid "Install local extension" +msgstr "Paigalda kohalik laiendus" + +msgid "Install picons on" +msgstr "Paigalda kanalilogod" + +msgid "Install softcam" +msgstr "Paigalda EMU" + +msgid "Installation has completed." +msgstr "Paigaldamine lõppenud." + +msgid "Installation or removal has completed." +msgstr "Paigaldamine või kustutamine on valmis." + +msgid "Installing" +msgstr "Paigaldamine" + +msgid "Installing software..." +msgstr "Tarkvara paigaldamine..." + +msgid "Instant recording location" +msgstr "Kohese salvestuse asukoht" + +msgid "Instant recording..." +msgstr "Kohene salvestus..." + +msgid "Interface: " +msgstr "Liides: " + +msgid "Intermediate" +msgstr "Keskmine" + +msgid "Internal flash" +msgstr "Sisemine flash-mälu" + +msgid "Internal hdd only" +msgstr "Ainult sisesel kõvakettal" + +msgid "Interval between keys when repeating:" +msgstr "Võtme kordamise vahemik:" + +#, python-format +msgid "Invalid directory selected: %s" +msgstr "Valisid mittetöötava kausta: %s" + +msgid "Invalid location" +msgstr "Kehtetu asukoht" + +msgid "Invalid transponder data" +msgstr "" + +msgid "Inversion" +msgstr "Inversioon" + +msgid "Invert" +msgstr "Vastupidi" + +msgid "Ipkg" +msgstr "Ipkg" + +msgid "Is this setting ok?" +msgstr "Kasutad neid seadeid?" + +msgid "Is this video mode ok?" +msgstr "Kas see videoseadistus sobib?" + +msgid "Italian" +msgstr "Itaalia" + +msgid "Items per page " +msgstr "Kirjet lehel" + +msgid "Items per page for list screen" +msgstr "" + +msgid "Job overview" +msgstr "Töövaade" + +msgid "Jump to beginning of list" +msgstr "Hüppa loendi algusesse" + +msgid "Jump to end of list" +msgstr "Mine loendi lõppu" + +msgid "Jump to next marked position" +msgstr "Mine järgmise märgini" + +msgid "Jump to previous marked position" +msgstr "Mine eelmise märgini" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect) +msgid "Just scale" +msgstr "Alati kogu ekraan" + +msgid "Keep service" +msgstr "" + +msgid "Kernel version: " +msgstr "Kernel: " + +msgid "Keyboard" +msgstr "Klaviatuur" + +msgid "Keyboard map" +msgstr "Klaviatuur" + +msgid "Keyboard setup" +msgstr "Klaviatuuriseaded" + +msgid "LAN adapter" +msgstr "Kohtvõrgu adapter" + +msgid "LAN connection" +msgstr "LAN ühendus" + +msgid "LNB" +msgstr "LNB" + +msgid "Language" +msgstr "Keel" + +msgid "Language selection" +msgstr "Keele valik" + +msgid "Last config" +msgstr "Viimane seadistus" + +msgid "Last speed" +msgstr "Eelmine kiirus" + +msgid "Last upgrade: " +msgstr "Uuendatud: " + +msgid "Latest Commits" +msgstr "" + +msgid "Latitude" +msgstr "Laiuskraad" + +msgid "Latvian" +msgstr "Läti" + +msgid "Leave DVD player?" +msgstr "Väljud DVD-mängijast?" + +msgid "Left" +msgstr "Vasak" + +msgid "Left from servicename" +msgstr "Kanalinimest vasakul pool" + +msgid "Leisure hobbies" +msgstr "" + +#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term. +msgid "Letterbox" +msgstr "Letterbox" + +msgid "Letterbox zoom" +msgstr "" + +msgid "Limit character set for recording filenames" +msgstr "Keela teatud tähemärkide kasutamine failinimedes" + +msgid "Limit east" +msgstr "Ida piir" + +msgid "Limit the characters that can be used in recording filenames to (7 bit) ascii. This ensures compatibility with operating systems or file systems with limited character sets." +msgstr "Kasuta failinimedes ainult (7 bit) ascii tähemärke. See tagab failide ühilduvuse ka operatsioonisüsteemidega, mis ei toeta kõiki tähemärke." + +msgid "Limit west" +msgstr "Lääne piir" + +msgid "Limits cancelled" +msgstr "Piirid tühistati" + +msgid "Limits enabled" +msgstr "Piirid on kasutuses" + +msgid "Limits off" +msgstr "Piirid pole kasutusel" + +msgid "Limits on" +msgstr "Piirid kasutusel" + +msgid "Link quality:" +msgstr "Lingi kvaliteet:" + +msgid "Link:" +msgstr "Link:" + +msgid "Linked titles with a DVD menu" +msgstr "DVD menüüga seotud pealkirjad" + +msgid "List EPG functions..." +msgstr "EPG vaadete nimekiri..." + +msgid "List available networks" +msgstr "Näita leitud võrgud" + +msgid "List mode" +msgstr "" + +msgid "List of storage devices" +msgstr "Andmekandjate loetelu" + +msgid "List type" +msgstr "" + +#, fuzzy, python-format +msgid "List version %d, found %d channel" +msgid_plural "List version %d, found %d channels" +msgstr[0] "Versioon %d, leiti %d kanalit" +msgstr[1] "Versioon %d, leiti %d kanalit" + +msgid "Listen to the radio..." +msgstr "Kuula raadiot..." + +msgid "Lists reloaded!" +msgstr "" + +msgid "Lithuanian" +msgstr "Leedu" + +msgid "Load" +msgstr "Laadi" + +msgid "Load Length of Movies in Movielist" +msgstr "" + +msgid "Load length of movies in movie list" +msgstr "Näita filmi pikkust " + +msgid "Load playlist" +msgstr "Lae esitusloend" + +msgid "Local network" +msgstr "Kohalik võrk" + +msgid "Location" +msgstr "Asukoht" + +msgid "Location for instant recordings" +msgstr "Kohese salvestuse asukoht" + +msgid "Lock ratio" +msgstr "Lukusta pildisuhe" + +msgid "Lock:" +msgstr "Lukus:" + +msgid "Log results to harddisk" +msgstr "Logi tulemused kõvakettale" + +msgid "Long filenames" +msgstr "Pikad failinimed" + +msgid "Long key press" +msgstr "Pikk nupuvajutus" + +msgid "Longitude" +msgstr "Pikkuskraad" + +msgid "Loop through to" +msgstr "" + +msgid "Luxembourgish" +msgstr "Kuksemburgi" + +msgid "MMC card" +msgstr "MMC kaart" + +msgid "MORE" +msgstr "VEEL" + +msgid "Main menu" +msgstr "Peamenüü" + +msgid "Maintain old EPG data for" +msgstr "Vana EPG hoidmise aeg" + +msgid "Make this mark an 'in' point" +msgstr "Tee see märk alguspunktiks" + +msgid "Make this mark an 'out' point" +msgstr "Tee see märk lõpupunktiks" + +msgid "Make this mark just a mark" +msgstr "Tee see märk lihtsalt märgiks" + +msgid "Manage extensions" +msgstr "Halda laiendusi" + +msgid "Manage your receiver's software" +msgstr "Uuenda vastuvõtja tarkvara" + +msgid "Manual" +msgstr "" + +msgid "Manual Scan" +msgstr "Käsiotsing" + +msgid "Manual configuration" +msgstr "Käsitsi seadistamine" + +msgid "Manual scan" +msgstr "Käsiotsing" + +msgid "Manual transponder" +msgstr "Käsitsi sisestatud transponder" + +msgid "Manufacturer" +msgstr "Tootja" + +msgid "Margin after recording (minutes)" +msgstr "Salvestuse lõppu lisatakse (minutit)" + +msgid "Margin before recording (minutes)" +msgstr "Salvestuse algusesse lisatakse (minutit)" + +msgid "Max memory positions" +msgstr "" + +msgid "Max. bitrate: " +msgstr "Max. bitikiirus: " + +msgid "Media player" +msgstr "Meediamängija" + +msgid "Media scanner" +msgstr "Meediaotsija" + +msgid "Medium is not a writeable DVD!" +msgstr "DVD ketas ei ole kirjutatav!" + +msgid "Medium is not empty!" +msgstr "Ketas ei ole tühi!" + +msgid "Memory" +msgstr "Mälu" + +msgid "Memory index" +msgstr "Mälu indeks" + +msgid "Menu" +msgstr "Menüü" + +msgid "Message" +msgstr "Teade" + +msgid "Message..." +msgstr "Teade" + +#, python-format +msgid "Minimum age %d years" +msgstr "Väikseim vanus %d aastat" + +#, fuzzy +msgid "Minimum send interval" +msgstr "Väikseim vanus %d aastat" + +msgid "Missing " +msgstr "Puudub" + +msgctxt "Satellite configuration mode" +msgid "Mode" +msgstr "Režiim" + +msgctxt "Video output mode" +msgid "Mode" +msgstr "Režiim" + +msgid "Model: " +msgstr "Tüüp: " + +msgid "Modulation" +msgstr "Modulatsioon" + +msgid "Modulator" +msgstr "Modulaator" + +msgid "Mon" +msgstr "E" + +msgid "Mon-Fri" +msgstr "E-R" + +msgid "Monday" +msgstr "Esmaspäev" + +msgid "Mosquito noise reduction" +msgstr "Müra tasandus" + +msgid "Mount" +msgstr "" + +msgid "Move" +msgstr "Liiguta" + +msgid "Move PiP to main picture" +msgstr "Mine PiP peapildile" + +msgid "Move Picture in Picture" +msgstr "Liiguta PIP-pilt" + +msgid "Move east" +msgstr "Liiguta itta" + +msgid "Move to other directory" +msgstr "Liigu teise kataloogi" + +msgid "Move to position X" +msgstr "Liigu asukohta X" + +msgid "Move west" +msgstr "Liiguta läände" + +msgid "Moved to position 0" +msgstr "Liigu asukohta 0" + +msgid "Moved to position at index" +msgstr "" + +msgid "Movement" +msgstr "Liikumine" + +msgid "Movie List Configuration" +msgstr "" + +msgid "Movie Selection" +msgstr "" + +msgid "Movie list configuration" +msgstr "Filmilisti seaded" + +msgid "Movie location" +msgstr "Salvestiste asukoht" + +msgid "Movie selection" +msgstr "Filmi valik" + +msgid "Movie/Drama" +msgstr "" + +msgid "Movielist menu" +msgstr "Salvestiste menüü" + +msgid "Moving" +msgstr "Liikuv" + +msgid "Moving east ..." +msgstr "Keerab itta ..." + +msgid "Moving to position" +msgstr "Liigub asukohta" + +msgid "Moving west ..." +msgstr "Keerab läände ..." + +msgid "Multi EPG" +msgstr "Kanalite saatekava" + +msgid "Multi-EPG bouquet selection" +msgstr "Lemmiknimekirjade valik kanalite saatekavas" + +msgid "Multimedia" +msgstr "Multimeedia" + +msgid "Multiple service support" +msgstr "Mitme programmi tugi" + +msgid "Multiplex" +msgstr "Multiplex" + +msgid "Multisat" +msgstr "Mitu satelliiti" + +msgid "Multisat all select" +msgstr "" + +msgid "Music/Ballet/Dance" +msgstr "" + +msgid "Mute" +msgstr "Vaikus" + +msgid "N/A" +msgstr "Ei ole kasutusel" + +msgid "NEXT" +msgstr "JÄRGMINE" + +msgid "NFI image flashing" +msgstr "NFI tarkvara paigaldamine" + +msgid "NFI image flashing completed. Press Yellow to Reboot!" +msgstr "NFI tarkvara on paigaldatud. Taaskäivitamiseks vajuta kollast nuppu !" + +msgid "NIM" +msgstr "NIM" + +msgid "NOW" +msgstr "PRAEGU" + +msgid "NTSC" +msgstr "NTSC" + +msgid "Name" +msgstr "Nimi" + +msgid "Nameserver" +msgstr "Nimeserver" + +#, python-format +msgid "Nameserver %d" +msgstr "Nimeserver %d" + +msgid "Nameserver settings" +msgstr "Nimeserveri seaded" + +msgid "Nameserver setup" +msgstr "Nimeserveri seaded" + +msgid "Namespace" +msgstr "Nimeruum" + +msgid "Netmask" +msgstr "Võrgumask" + +msgid "Network" +msgstr "Võrk" + +msgid "Network ID" +msgstr "Võrgu ID" + +msgid "Network configuration..." +msgstr "Võrgu seadistamine..." + +msgid "Network mount" +msgstr "Võrgu haakepunkt" + +#, python-format +msgid "Network mount %s" +msgstr "Võrgu haakepunkt %s" + +msgid "Network name (SSID)" +msgstr "Võrgu nimi (SSID)" + +msgid "Network scan" +msgstr "Võrguotsing" + +msgid "Network setup" +msgstr "Võrgu häälestamine" + +msgid "Network test" +msgstr "Võrgu ühenduse test" + +msgid "Network test..." +msgstr "Võrgu ühenduse test" + +msgid "Network test: " +msgstr "Võrgu test: " + +msgid "Network wizard" +msgstr "Võrgu abimees" + +msgid "Network:" +msgstr "Võrk:" + +msgid "New" +msgstr "Uus" + +msgid "New PIN" +msgstr "Uus PIN" + +msgid "New version:" +msgstr "Uus versioon:" + +msgid "News Current Affairs" +msgstr "" + +msgctxt "button label, 'next screen'" +msgid "Next" +msgstr "Järgmine" + +msgctxt "now/next: 'next' event label" +msgid "Next" +msgstr "Järgmine" + +msgid "No" +msgstr "Ei" + +msgid "No (supported) DVDROM found!" +msgstr "Ei leitud (toetatud) DVDROM-i!" + +msgid "No Connection" +msgstr "Pole ühendust" + +msgid "No HDD found or HDD not initialized!" +msgstr "Kõvaketast ei leitud või seda pole formaaditud!" + +msgid "No backup needed" +msgstr "Varukoopiat ei vajata" + +msgid "No cable tuner found!" +msgstr "Kaabel-tv tuunerit ei leitud!" + +msgid "" +"No data on transponder!\n" +"(Timeout reading PAT)" +msgstr "" +"Pole andmeid transponderil!\n" +"(Timeout PAT lugemisel)" + +msgid "No delay" +msgstr "Viiteaeg puudub" + +msgid "No description available." +msgstr "Saatetutvustust ei ole." + +msgid "No details for this image file" +msgstr "Pole täpsemat informatsiooni sellele tarkvarale" + +msgid "No displayable files on this medium found!" +msgstr "Sellel andmekandjal pole kuvatavaid faile!" + +msgid "No event info found, recording indefinitely." +msgstr "Saatel pole teada lõppaeg. Salvestatakse pidevalt." + +msgid "No fast winding possible yet.. but you can use the number buttons to skip forward/backward!" +msgstr "Kiire kerimine pole veel võimalik, aga saad kasutad numbrinuppe edasi/tagasi hüppamiseks!" + +msgid "No free index available" +msgstr "" + +msgid "No free tuner!" +msgstr "Pole vaba tuunerit!" + +msgid "No network connection available." +msgstr "Võrgu ühendust pole saadaval." + +msgid "No networks found" +msgstr "Võrke ei leidnud" + +msgid "No new plugins found" +msgstr "" + +msgid "No positioner capable frontend found." +msgstr "Ei leitud positsioneeri toetavat tuunerit." + +msgid "No satellites configured. Plese check your tuner setup." +msgstr "" + +msgid "No service" +msgstr "" + +msgid "No services/providers selected" +msgstr "Kanalit/levitajat pole valitud" + +msgid "No standby" +msgstr "Ooterežiimita" + +msgid "No suitable sat tuner found!" +msgstr "" + +msgid "No tags are set on these movies." +msgstr "Salvestisele pole märksõnu määratud." + +msgid "No timeout" +msgstr "Vaheajata" + +msgid "No to all" +msgstr "EI kõigile" + +msgid "No transparency" +msgstr "Läbipaistmatu" + +msgid "No tuner is configured for use with a diseqc positioner!" +msgstr "Ükski tuuner pole seadistatud DISEqC-positsioneeri kasutama!" + +msgid "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Tuuner määramata!\n" +"Määra tuuner enne kanaliotsingu alustamist." + +msgid "No updates available" +msgstr "Uuendusi ei ole" + +msgid "No updates available. Please try again later." +msgstr "Uuendusi ei ole. Proovi hiljem uuesti." + +msgid "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" +msgstr "" +"Lapseluku koodi ei leitud!\n" +"Kas soovid määrata koodi?\n" +"Kui vastad 'Ei', kanalit ei kaitsta koodiga!" + +msgid "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" +msgstr "" +"Lapseluku koodi ei leitud!\n" +"Kas soovid määrata koodi?\n" +"Kui vastad 'Ei', kanalit ei kaitsta koodiga!" + +msgid "No wireless networks found! Searching..." +msgstr "WiFi võrke ei leitud! Otsing..." + +msgid "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." +msgstr "" +"Ei leidnud töötavat kohaliku võrgukaarti.\n" +"Palun kontrolli kas võrgukaabel on ühendatud ja kas võrk on seadistatud õieti." + +msgid "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." +msgstr "" +"Ei leidnud töötavat WiFi seadet.\n" +"Palun kontrolli, kas seadmega ühilduv WLAN USB pulk on ühendatud ja kas võrk on seadistatud õigesti." + +msgid "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." +msgstr "" +"Ei leidnud töötavat WiFi seadet.\n" +" Palun kontrolli, kas tuuneriga ühilduv seade on ühendatud ja kas kohalik võrk töötab." + +msgid "No, but restart from begin" +msgstr "Ei, alusta uuesti algusest" + +msgid "No, do nothing." +msgstr "Ei, ära tee midagi." + +msgid "No, just start my receiver" +msgstr "Ei, käivita vastuvõtja" + +msgid "No, never" +msgstr "Ei, mitte kunagi" + +msgid "None" +msgstr "Pole" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right) +msgid "Nonlinear" +msgstr "Ebalineaarne" + +msgid "Normal mode" +msgstr "Tavaline" + +msgid "North" +msgstr "Põhi" + +msgid "Norwegian" +msgstr "Norra" + +msgid "Not associated" +msgstr "Määramata" + +msgid "Not configured" +msgstr "" + +#, python-format +msgid "Not enough disk space. Please free up some disk space and try again. (%d MB required, %d MB available)" +msgstr "Kõvakettal pole piisavalt ruumi. Kustuta ebavajalik ja proovi uuesti. (%d MB vaja, %d MB vaba)" + +msgid "Nothing connected" +msgstr "" + +msgid "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Pole midagi otsida!\n" +"Määra tuuneri seaded enne kanalite otsingu alustamist." + +msgctxt "now/next: 'now' event label" +msgid "Now" +msgstr "Hetkel" + +msgid "Now playing" +msgstr "Praegu mängib" + +msgid "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." +msgstr "Nüüd suurenda kontrastsuse seadmise abil pildi tausta heledust nii palju kui võimalik, aga veendu, et sa näed siiski erinevust kahe kõige heledama varjundi vahel. Kui see on tehtud, vajuta OK." + +msgid "OK" +msgstr "OK" + +msgid "OK, guide me through the upgrade process" +msgstr "Jah, õpeta uuendamisel" + +msgid "ONID" +msgstr "ONID" + +msgid "OSD name request" +msgstr "OSD nime päring" + +msgid "OSD settings" +msgstr "Ekraanigraafika seaded" + +msgid "OSD transparency" +msgstr "Ekraanigraafika läbipaistvus" + +msgid "Off" +msgstr "Väljas" + +msgid "Offline decode delay (ms)" +msgstr "Võrguta dekodeerimise viide (ms)" + +msgid "Ok" +msgstr "Ok" + +msgid "On" +msgstr "Sees" + +msgid "On end of movie" +msgstr "Filmi lõpus" + +msgid "On end of movie (as menu)" +msgstr "" + +msgid "One" +msgstr "Üks" + +msgid "Only extensions." +msgstr "Ainult laiendused." + +msgid "Only free scan" +msgstr "Ainult vabade otsimine" + +msgid "Open service list" +msgstr "Ava kanalinimekiri" + +msgid "Open the movie list" +msgstr "Ava filmilist" + +msgid "Orbital position" +msgstr "Orbitaalpositioon" + +msgid "Original" +msgstr "Algupärane" + +msgid "Other" +msgstr "Miski muu" + +msgid "Output" +msgstr "Väljund" + +msgid "Overwrite configuration files during software upgrade?" +msgstr "Kas tarkvara uuendamisel kirjutada üle konfiguratsioonifailid?" + +msgid "Overwrite configuration files?" +msgstr "Seadistusfailid kirjutatakse üle?" + +msgid "PAL" +msgstr "PAL" + +msgid "PCR PID" +msgstr "PCR PID" + +msgid "PIDs" +msgstr "PIDd" + +msgid "PIN code needed" +msgstr "Vajalik on pin-kood" + +msgid "PLP ID" +msgstr "" + +msgid "PMT PID" +msgstr "PMT PID" + +msgid "Package list update" +msgstr "Pakettide nimekirja uuendus" + +msgid "Packet management" +msgstr "Pakkide haldamine" + +msgid "Packet manager" +msgstr "Paketi haldur" + +#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term +msgid "Pan&scan" +msgstr "Pan&Scan" + +msgid "Parent directory" +msgstr "Ülemkataloog" + +msgid "Parental control" +msgstr "Lapselukk" + +msgid "Parental control services editor" +msgstr "Lapseluku kanali muutmine" + +msgid "Parental control setup" +msgstr "Lapseluku seaded" + +msgid "Parental control type" +msgstr "Lapseluku tüüp" + +msgid "Password" +msgstr "Salasõna" + +msgid "Pause" +msgstr "Paus" + +msgid "Pause movie at end" +msgstr "Pane film lõpus seisma" + +msgid "Pause playback" +msgstr "Peata taasesitus" + +msgid "Pauze/Continue playback" +msgstr "" + +msgid "Percentage left" +msgstr "Protsent vasakul" + +msgid "Percentage right" +msgstr "Protsent paremal" + +msgid "Permanently delete all recordings in the trash can?" +msgstr "Kustutad lõplikult kõik failid prügikastist?" + +msgid "Permanently remove all deleted items" +msgstr "Kustuta lõplikult kõik failid" + +msgid "Persian" +msgstr "Pärsia" + +msgid "Phone number" +msgstr "Telefoni number" + +msgid "PiP setup" +msgstr "PiP seaded" + +msgid "Picon" +msgstr "Kanalilogo" + +msgid "Picon and service name" +msgstr "Kanalilogo ja nimi" + +msgid "Picture player" +msgstr "Pildimängija" + +#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term. +msgid "Pillarbox" +msgstr "Pillarbox" + +msgid "Pilot" +msgstr "Pilot" + +msgid "Play" +msgstr "Taasesita" + +msgid "Play DVD" +msgstr "Taasesita" + +msgid "Play audio in background" +msgstr "Mängi taustal heli" + +msgid "Play audio-CD..." +msgstr "Mängi heliplaat..." + +msgid "Play back media files" +msgstr "Esita meediafaile" + +msgid "Play entry" +msgstr "Esita" + +msgid "Play from next mark or playlist entry" +msgstr "Esita alates järgmisest märgist või esitusloendi kirjest" + +msgid "Play from previous mark or playlist entry" +msgstr "Esita alates eelmisest märgist või esitusloendi kirjest" + +msgid "Play music..." +msgstr "Mängi muusikat..." + +msgid "Play next" +msgstr "Esita järgmine" + +msgid "Play next (return to movie list)" +msgstr "Esita järgmine (naase filmilisti)" + +msgid "Play next (return to previous service)" +msgstr "Esita järgmine (naase vaadatud kanalile)" + +msgid "Play previous" +msgstr "Esita eelmine" + +msgid "Play recorded movies..." +msgstr "Näita salvestisi" + +msgid "Please add titles to the compilation." +msgstr "Palun lisa pealkirjad kogumikku." + +msgid "Please change recording endtime" +msgstr "Muuda salvestamise lõpuaega" + +msgid "Please check your network settings!" +msgstr "Palun kontrolli oma võrguseadeid!" + +msgid "Please choose an extension..." +msgstr "Vali laiendus" + +msgid "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Kontrolli ja täida nimeserveri nõutavad väljad.\n" +"Kui oled valmis, vajuta jätkamiseks OK." + +msgid "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Täida interneti ühenduse seadistamiseks nõutavad väljad.\n" +"Kui oled valmis, vajuta jätkamiseks OK." + +msgid "Please connect your receiver to the internet" +msgstr "Ühenda vastuvõtja internetti" + +msgid "Please do not change any values unless you know what you are doing!" +msgstr "Palun ära muuda midagi seni, kuni oled kindel selles, mida teed!" + +msgid "Please enter a name for the new bouquet" +msgstr "Sisesta uue nimekirja nimi" + +msgid "Please enter a name for the new marker" +msgstr "Sisesta uue markeri nimi" + +msgid "Please enter a new filename" +msgstr "Sisesta uus faili nimi" + +msgid "Please enter filename (empty = use current date)" +msgstr "Sisesta faili nimi (tühi = tänane kuupäev)" + +msgid "Please enter name of the new directory" +msgstr "Palun sisesta uue kausta nimi" + +msgid "Please enter new name:" +msgstr "Sisesta uus nimi:" + +msgid "Please enter the correct pin code" +msgstr "Sisesta õige kood" + +msgid "Please enter the old PIN code" +msgstr "Sisesta vana PIN kood" + +msgid "Please follow the instructions on the TV" +msgstr "Jälgi ekraanil olevaid juhiseid" + +msgid "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." +msgstr "Eelnevalt valitud asukoht ei ole kättesaadav ja selle asemel kasutatakse vaikimisi määratud kataloogi." + +msgid "Please press OK to continue." +msgstr "Jätkamiseks vajuta OK ." + +msgid "Please select a default EPG type..." +msgstr "Vali kustutatav saatekava laad..." + +msgid "Please select a playlist to delete..." +msgstr "Vali kustutatav esitusloend" + +msgid "Please select a playlist..." +msgstr "Vali esitusloend" + +msgid "Please select a sub service..." +msgstr "Vali alamkanal..." + +msgid "Please select a subservice to record..." +msgstr "Vali alamteenus salvestamiseks" + +msgid "Please select a subservice..." +msgstr "Vali alamteenus" + +msgid "Please select an NFI file and press green key to flash!" +msgstr "Palun vali NFI fail ja vajuta flashimiseks rohelist nuppu!" + +msgid "Please select medium to be scanned" +msgstr "Vali andmekandja" + +msgid "Please select medium to use as backup location" +msgstr "Vali asukoht varukoopiale" + +msgid "Please select tag to filter..." +msgstr "Vali otsingusõna" + +msgid "Please select the movie path..." +msgstr "Vali salvestise kataloog" + +msgid "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Vali võrguliides, mida soovid kasutada interneti ühenduseks.\n" +"\n" +"Jätkamiseks vajuta OK ." + +msgid "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Vali WiFi võrk ühenduseks.\n" +"\n" +"Jätkamiseks vajuta OK." + +msgid "Please set up tuner A" +msgstr "Häälesta tuuner A" + +msgid "Please set up tuner B" +msgstr "Häälesta tuuner B" + +msgid "Please set up tuner C" +msgstr "Häälesta tuuner C" + +msgid "Please set up tuner D" +msgstr "Häälesta tuuner D" + +msgid "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." +msgstr "" +"Liiguta PiP-pilti noolenuppudega.\n" +"Muuda akna suurust Bouquet +/- nuppudega.\n" +"Tagasi TV-moodi OK-nupuga või lõpeta liigutamine EXIT-nupuga." + +msgid "Please use the UP and DOWN keys to select your language. Afterwards press the OK button." +msgstr "Kasuta UP ja DOWN nuppe oma keele valimiseks. Järgnevalt vajuta OK." + +msgid "Please wait" +msgstr "" + +msgid "Please wait (downloading channel list)" +msgstr "Oota (kanalinimekirja hankimine)" + +msgid "Please wait (downloading softcam)" +msgstr "Oota (EMU hankimine)" + +msgid "Please wait (updating packages)" +msgstr "Oota (uuendatakse pakette)" + +msgid "Please wait for activation of your network configuration..." +msgstr "Oota kuni võrguseadistus aktiveeritakse." + +msgid "Please wait while scanning is in progress..." +msgstr "Pilti laetakse. Oota." + +msgid "Please wait while we configure your network..." +msgstr "Oota kuni seadistan võrgu." + +msgid "Please wait while we prepare your network interfaces..." +msgstr "Oota, käivitame võrguliidest." + +msgid "Please wait while we test your network..." +msgstr "Oota, testin võrku." + +msgid "Please wait while your network is restarting..." +msgstr "Oota kuni võrk taaskäivitub." + +msgid "Please wait..." +msgstr "Oota..." + +msgid "Please wait... Loading list..." +msgstr "Oota. Sisu laetakse." + +msgid "Plugin browser" +msgstr "Laienduste sirvija" + +msgid "Plugin manager activity information" +msgstr "Laienduste halduri tegevuse teave" + +msgid "Plugin manager help" +msgstr "Laienduste halduri abi" + +msgid "Plugins" +msgstr "Laiendused" + +msgid "Polarisation" +msgstr "Polarisatsioon" + +msgid "Polarisation:" +msgstr "" + +msgid "Polarization" +msgstr "Polarisatsioon" + +msgid "Polish" +msgstr "Poola" + +msgid "Port A" +msgstr "Port A" + +msgid "Port B" +msgstr "Port B" + +msgid "Port C" +msgstr "Port C" + +msgid "Port D" +msgstr "Port D" + +msgid "Portuguese" +msgstr "Portugali" + +msgid "Position of completed timers in timerlist" +msgstr "Lõpetatud taimerite asukoht nimekirjas" + +msgid "Position stored at index" +msgstr "" + +msgid "Positioner" +msgstr "Positsioneer" + +msgid "Positioner (selecting satellites)" +msgstr "" + +msgid "Positioner Setup" +msgstr "" + +msgid "Positioner setup" +msgstr "Positsioneeri seadistus" + +msgid "Power threshold in mA" +msgstr "Tuvastusvool mA" + +msgid "Predefined transponder" +msgstr "Eelmääratud transponder" + +msgid "Prefer AC3 track" +msgstr "Eelista AC3 heli" + +msgid "Prefer AC3+ track" +msgstr "" + +msgid "Prefer audio track stored by service" +msgstr "Eelista käsitsi määratud heli" + +msgid "Prefer graphical DVB subtitles" +msgstr "Eelista DVB subtiitreid" + +msgid "Prefer subtitles for hearing impaired" +msgstr "Eelista vaegkuuljate subtiitreid" + +msgid "Prefer subtitles stored by service" +msgstr "Eelista käsitsi määratud subtiitreid" + +msgid "Preferred tuner" +msgstr "Eelistatud tuuner" + +msgid "Preferred tuner for recordings" +msgstr "" + +msgid "Prepare another USB stick for image flashing" +msgstr "Valmista ette teine USB pulk image flashimiseks" + +msgid "Preparing... Please wait" +msgstr "Ettevalmistus...Oota" + +msgid "Press '0' to toggle PiP mode" +msgstr "" + +msgid "Press INFO on your remote control for additional information." +msgstr "Vajuta INFO nuppu puldil lisainfo saamiseks." + +msgid "Press MENU on your remote control for additional options." +msgstr "Vajuta MENU puldil lisavõimaluste kasutamiseks." + +msgid "Press OK on your remote control to continue." +msgstr "Jätkamiseks vajuta OK." + +msgid "Press OK to activate the selected skin." +msgstr "Vajuta OK uue välimuse aktiveerimiseks." + +msgid "Press OK to activate the settings." +msgstr "Seadete aktiveerimiseks vajuta OK." + +msgid "Press OK to edit the settings." +msgstr "Sätete muutmiseks vajuta OK." + +#, python-format +msgid "Press OK to get further details for %s" +msgstr "Vajuta OK %s üksikasjade nägemiseks" + +msgid "Press OK to scan" +msgstr "Otsingu alustamiseks vajuta OK" + +msgid "Press OK to select a provider." +msgstr "Levitaja valimiseks vajuta OK." + +msgid "Press OK to select satellites" +msgstr "" + +msgid "Press OK to select/deselect a CAId." +msgstr "Vajuta OK valik/valik maha CAId." + +msgid "Press OK to start the scan" +msgstr "Otsingu alustamiseks vajuta OK" + +msgid "Press OK to toggle the selection" +msgstr "" + +msgid "Press OK to toggle the selection." +msgstr "Valiku muutmiseks vajuta OK." + +msgid "Press yellow to set this interface as default interface." +msgstr "Vajutage kollast nuppu, valimaks see liides vaikimisi liideseks." + +msgctxt "button label, 'previous screen'" +msgid "Prev" +msgstr "Eelmine" + +msgid "Preview" +msgstr "Eelvaade" + +msgid "Preview menu" +msgstr "Eelvaate menüü" + +msgid "Preview selected channel" +msgstr "Valitud kanali eelvaatlus" + +msgid "Primary DNS" +msgstr "Esmane nimeserver" + +msgid "Priority" +msgstr "Prioriteet" + +msgid "Process" +msgstr "Toiming" + +msgid "Progress" +msgstr "Edenemisriba" + +msgid "Progress bar left" +msgstr "Edenemisriba vasakul" + +msgid "Progress bar right" +msgstr "Edenemisriba paremal" + +msgid "Properties of current title" +msgstr "Muuda seda pealkirja" + +msgid "Protect services" +msgstr "Kanalite kaitse" + +msgid "Protect setup" +msgstr "Seadistuste kaitse" + +msgid "Provider" +msgstr "Levitajad" + +msgid "Provider to scan" +msgstr "Levitaja otsinguks" + +msgid "Providers" +msgstr "Levitajad" + +msgid "Put TV in standby" +msgstr "Lülita TV välja" + +msgid "Put receiver in standby" +msgstr "Pane vastuvõtja ooterežiimi" + +msgid "Python frontend for /tmp/mmi.socket" +msgstr "Pythoni programm /tmp/mmi.socket jaoks" + +msgid "Quick" +msgstr "Kiire kanalivalik" + +msgid "Quick zap" +msgstr "Kiire kanalivalik" + +msgid "RF output" +msgstr "RF-väljund" + +msgid "RGB" +msgstr "RGB" + +msgid "Radio" +msgstr "Raadio" + +msgid "Ram disk" +msgstr "RAM-ketas" + +msgid "Random" +msgstr "Juhuslik" + +#, python-format +msgid "Rating defined by broadcaster - %d" +msgstr "" + +msgid "Rating undefined" +msgstr "" + +msgid "Really close without saving settings?" +msgstr "Kas soovid seadeid salvestamata väljuda?" + +msgid "Really delete done timers?" +msgstr "Kustutame möödunud taimerid?" + +msgid "Really exit the subservices quickzap?" +msgstr "Väljuda alamteenuste valikust?" + +msgid "Really reboot now?" +msgstr "Teeme taaskäivituse?" + +msgid "Really restart now?" +msgstr "Teeme taaskäivituse kohe?" + +msgid "Really shutdown now?" +msgstr "Lülitame välja?" + +msgid "Really upgrade the frontprocessor and reboot now?" +msgstr "Uuendad esiprotsessori ja taaskäivitad vastuvõtja?" + +msgid "Really upgrade your settop box and reboot now?" +msgstr "Uuendad ja taaskäivitad vastuvõtja?" + +msgid "Reboot" +msgstr "Taaskäivitus" + +msgid "Rec" +msgstr "Salvesta" + +msgid "Reception settings" +msgstr "Vastuvõtu seaded" + +msgid "Record" +msgstr "Salvestus" + +#, python-format +msgid "Record time limited due to conflicting timer %s" +msgstr "Salvestusaeg on piiratud teise taimeri %s tõttu" + +msgid "Recorded files..." +msgstr "Salvestised" + +msgid "Recording" +msgstr "Salvestus" + +msgid "Recording in progress" +msgstr "Toimub salvestamine" + +msgid "Recording paths" +msgstr "Salvestuskaustad" + +msgid "Recording type" +msgstr "Salvestuse liik" + +msgid "Recording(s) are in progress or coming up in few seconds!" +msgstr "Salvestus(ed) on käimas või käivituvad peatselt!" + +msgid "Recordings" +msgstr "Salvestised" + +msgid "Recordings always have priority" +msgstr "Salvestused omavad alati eelist" + +msgid "Red button..." +msgstr "Punane nupp..." + +msgid "Reenter new PIN" +msgstr "Korda uut PIN-i" + +msgid "Refresh rate" +msgstr "Värskendussagedus" + +msgid "Refresh rate selection." +msgstr "Värskendussageduse valik." + +msgid "Regard deep standby as standby" +msgstr "Käsitle sügavooterežiimi tavalise ooterežiimina" + +msgid "Relative" +msgstr "Suhteline" + +msgid "Reload" +msgstr "Lae uuesti" + +msgid "Reload black-/white lists" +msgstr "Lae uuesti Must-/Valge nimekiri" + +msgid "Reloading bouquets and services..." +msgstr "Lemmiknimekirjade ja kanalite värskendamine..." + +msgid "Remember last service in PiP" +msgstr "" + +msgid "Remember service PIN" +msgstr "Mäleta kanali PIN-i" + +msgid "Remember these settings for each folder" +msgstr "Pea iga kataloogi valikud meeles" + +msgid "Reminder, you have chosen to save timeshift file." +msgstr "" + +msgid "Remote control type" +msgstr "Puldi tüüp" + +msgid "Removal has completed." +msgstr "Eemaldamine on tehtud." + +msgid "Remove" +msgstr "Eemalda" + +msgid "Remove a mark" +msgstr "Kustuta märk" + +msgid "Remove a nameserver entry" +msgstr "Kustuta kirje nimeserverist" + +msgid "Remove bookmark" +msgstr "Kustuta järjehoidja" + +msgid "Remove completed timers after (days)" +msgstr "Lõpetatud taimerite eemaldamine pärast (päeva)" + +msgid "Remove currently selected title" +msgstr "Eemalda valitud pealkiri" + +msgid "Remove items from trash can after (days)" +msgstr "Salvestiste eemaldamine prügikastist pärast (päeva)" + +msgid "Remove plugins" +msgstr "Kustuta laiendusi" + +msgid "Remove title" +msgstr "Eemalda pealkiri" + +msgid "Removing" +msgstr "Eemaldab" + +#, python-format +msgid "Removing directory %s failed. (Maybe not empty.)" +msgstr "Kataloogi eemaldamine %s nurjus. (Ei ole tühi?)" + +msgid "Removing partition table" +msgstr "Partitsioonitabeli eemaldamine" + +msgid "Rename" +msgstr "Muuda nimi" + +msgid "Repeat" +msgstr "" + +msgid "Repeat type" +msgstr "Kordamise liik" + +msgid "Repeating event currently recording... What do you want to do?" +msgstr "Korduv timer salvestab. Mida soovid teha?" + +msgid "Repeats" +msgstr "Kordused" + +msgid "Require authentication for http streams" +msgstr "" + +msgid "Required medium type:" +msgstr "Nõutav meedia tüüp:" + +msgid "Rereading partition table" +msgstr "Partitsioonitabeli värskendamine" + +msgid "Reserved" +msgstr "Varutud" + +msgid "Reset" +msgstr "Lähtesta" + +msgid "Reset and renumerate title names" +msgstr "Sisesta uus faili nimi" + +msgid "Reset playback position" +msgstr "Nulli taasesituse algpunkt" + +msgid "Reset video enhancement settings to system defaults?" +msgstr "Sea pildiparandused süsteemi algseadesse?" + +msgid "Reset video enhancement settings to your last configuration?" +msgstr "Taasta oma viimase seade pildiparandused?" + +msgid "Resolution" +msgstr "Resolutsioon" + +msgid "Restart" +msgstr "Taaskäivita" + +msgid "Restart GUI now?" +msgstr "Käivitame Enigma2 kohe uuesti?" + +msgid "Restart enigma" +msgstr "Taaskäivita enigma2" + +msgid "Restart network" +msgstr "Taaskäivita võrk " + +msgid "Restart test" +msgstr "Taaskäivituse test" + +msgid "Restart your network connection and interfaces.\n" +msgstr "Taaskäivita võrgu ühendus ja adapter.\n" + +msgid "Restore" +msgstr "Taasta" + +msgid "Restore backups" +msgstr "Taasta varukoopia" + +msgid "Restore is running..." +msgstr "Taastamine..." + +msgid "Restore system settings" +msgstr "Taasta seaded" + +msgid "Restoring..." +msgstr "Taastamine..." + +msgid "Resume from last position" +msgstr "Jätka katkestatud kohalt" + +#, python-format +msgid "Resume position at %s" +msgstr "Jätka alates %s" + +#. TRANSLATORS: The string "Resuming playback" flashes for a moment +#. TRANSLATORS: at the start of a movie, when the user has selected +#. TRANSLATORS: "Resume from last position" as start behavior. +#. TRANSLATORS: The purpose is to notify the user that the movie starts +#. TRANSLATORS: in the middle somewhere and not from the beginning. +#. TRANSLATORS: (Some translators seem to have interpreted it as a +#. TRANSLATORS: question or a choice, but it is a statement.) +msgid "Resuming playback" +msgstr "Taasesitus jätkub katkestatud kohalt" + +msgid "Return to movie list" +msgstr "Tagasi salvestiste nimekirja" + +msgid "Return to previous service" +msgstr "Tagasi eelmisele kanalile" + +msgid "Reverse bouquet buttons" +msgstr "" + +msgid "Reverse list" +msgstr "" + +msgid "Rewind speeds" +msgstr "Tagasikerimise kiirused" + +msgid "Rewrap teletext subtitles" +msgstr "Algne teleteksti subtiitrite reamurdmine" + +msgid "Right" +msgstr "Parem" + +msgid "Right from servicename" +msgstr "Kanalinimest paremal pool" + +msgid "Roll-off" +msgstr "" + +msgid "Romanian" +msgstr "Rumeenia" + +msgid "Root directory" +msgstr "Juurkataloog" + +msgid "Rotor step position:" +msgstr "" + +msgid "Rotor turning speed" +msgstr "Mootori pööramise kiirus" + +msgid "Round start time on" +msgstr "" + +msgid "Russian" +msgstr "Vene" + +msgid "S-Video" +msgstr "S-video (Y/C)" + +msgid "SID" +msgstr "SID" + +msgid "SINGLE LAYER DVD" +msgstr "ÜHEKIHILINE DVD" + +msgid "SNR" +msgstr "SNR" + +msgid "SNR:" +msgstr "SNR:" + +msgid "SSID:" +msgstr "SSID:" + +msgid "Same resolution as skin" +msgstr "" + +msgid "Sat" +msgstr "L" + +msgid "Satellite" +msgstr "Satelliit" + +msgid "Satellite dish setup" +msgstr "Antenni seaded" + +msgid "Satellite equipment" +msgstr "Satelliidiseadmed" + +msgid "Satellite equipment setup" +msgstr "Satelliidiseadmete seaded" + +msgid "Satellite longitude:" +msgstr "Satelliidi pikkuskraad:" + +msgid "Satellites" +msgstr "Satelliidid" + +msgid "Satfinder" +msgstr "Satelliidiotsija" + +msgid "Sats" +msgstr "Satelliidid" + +msgid "Saturation" +msgstr "Küllastus" + +msgid "Saturday" +msgstr "Laupäev" + +msgid "Save" +msgstr "Salvesta" + +msgid "Save playlist" +msgstr "Salvesta esitusloend" + +msgid "Save timeshift file" +msgstr "" + +msgid "Save timeshift file in movie directory" +msgstr "" + +msgid "Scaler sharpness" +msgstr "Skaleerija teravus" + +msgid "Scaling mode" +msgstr "Skaleerimine" + +msgid "Scan" +msgstr "" + +msgid "Scan " +msgstr "Otsi " + +#. TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' +#, python-format +msgid "Scan %s" +msgstr "Otsi %s" + +#. TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' +#, python-format +msgid "Scan %s band" +msgstr "Ots %s sagedusalast" + +msgid "Scan additional SR" +msgstr "Otsi lisa SR" + +msgid "Scan files..." +msgstr "Uuri faile..." + +msgid "Scan wireless networks" +msgstr "Otsi WiFi võrke" + +msgid "Scan your network for wireless access points and connect to them using your selected wireless device.\n" +msgstr "Otsi oma võrgus WiFi ruutereid ja ühendu nendega, kasutades valitud WiFi seadet.\n" + +#, python-format +msgid "Scanning %s..." +msgstr "Otsib %s..." + +#. TRANSLATORS: The stb is performing a channel scan, progress percentage is printed in '%d' (and '%%' will show a single '%' symbol) +#, fuzzy, python-format +msgid "Scanning - %d%% completed" +msgid_plural "Scanning - %d%% completed" +msgstr[0] "Otsing tehtud, %d kanalit leitud" +msgstr[1] "Otsing tehtud, %d kanalit leitud" + +#, fuzzy, python-format +msgid "Scanning completed, %d channel found" +msgid_plural "Scanning completed, %d channels found" +msgstr[0] "Otsing tehtud, %d kanalit leitud" +msgstr[1] "Otsing tehtud, %d kanalit leitud" + +msgid "Scanning failed!" +msgstr "Otsing nurjus!" + +msgid "Scanning..." +msgstr "Otsing..." + +msgid "Scans default lamedbs sorted by satellite with a connected dish positioner" +msgstr "Otsib algsed lamedb-d järjestatud satelliitide järgi ühendatud positsioneeriga" + +msgid "Search east" +msgstr "Otsi itta" + +msgid "Search west" +msgstr "Otsi läände" + +msgid "Searching" +msgstr "Otsing" + +msgid "Searching east ..." +msgstr "" + +msgid "Searching for available updates. Please wait..." +msgstr "Otsin uuendusi. Palun oota." + +msgid "Searching for new installed or removed packages. Please wait..." +msgstr "Otsin uusi paigaldatud või kustutatud pakette. Oota." + +msgid "Searching west ..." +msgstr "" + +msgid "Second cable of motorized LNB" +msgstr "" + +msgid "Secondary DNS" +msgstr "Teisene nimeserver" + +msgid "Seek" +msgstr "Otsi" + +msgid "Seek backward" +msgstr "Keri tagasi" + +msgid "Seek backward (enter time)" +msgstr "Keri tagasi (sisesta aeg)" + +msgid "Seek forward" +msgstr "Keri edasi" + +msgid "Seek forward (enter time)" +msgstr "Keri edasi (sisesta aeg)" + +msgid "Select" +msgstr "Vali" + +msgid "Select CAId" +msgstr "Vali CAId" + +msgid "Select HDD" +msgstr "Vali kõvaketas" + +msgid "Select a bouquet" +msgstr "Vali lemmiknimekiri" + +msgid "Select a movie" +msgstr "Vali salvestis" + +msgid "Select a network adapter" +msgstr "Vali võrgukaart" + +msgid "Select a skin" +msgstr "Vali välimus" + +msgid "Select a tuner" +msgstr "Vali tuuner" + +msgid "Select a wireless network" +msgstr "Vali WiFi võrk" + +msgid "Select action" +msgstr "" + +#, python-format +msgid "Select action for timer %s:" +msgstr "" + +msgid "Select all" +msgstr "" + +msgid "Select an image to be downloaded" +msgstr "Vali tarkvara allalaadimiseks" + +msgid "Select audio track" +msgstr "Vali helikanal" + +msgid "Select backup files" +msgstr "Vali varundamiseks failid" + +msgid "Select backup location" +msgstr "Varukoopia asukoht" + +msgid "Select channel to record from" +msgstr "Vali salvestatav kanal" + +msgid "Select copy destination for:" +msgstr "Vali kopeerimise asukoht:" + +msgid "Select default EPG type..." +msgstr "Vali saatekava laad..." + +msgid "Select desired image from feed list" +msgstr "Vali soovitud tarkvara feedide nimekirjast" + +msgid "Select destination for:" +msgstr "Vali asukoht:" + +msgid "Select files for backup." +msgstr "Vali failid varundamiseks." + +msgid "Select files/folders to backup" +msgstr "Vali failid/kaustad varukoopiale" + +msgid "Select input device" +msgstr "Vali sisendseade" + +msgid "Select input device." +msgstr "Vali sisendseade." + +msgid "Select interface" +msgstr "Vali liides" + +msgid "Select location" +msgstr "Vali asukoht" + +msgid "Select movie" +msgstr "Vali film" + +msgid "Select provider to add..." +msgstr "Vali levitaja lisamiseks" + +msgid "Select refresh rate" +msgstr "Vali värskendussagedus" + +msgid "Select satellites" +msgstr "" + +msgid "Select service to add..." +msgstr "Vali kanal lisamiseks" + +msgid "Select sort method:" +msgstr "" + +msgid "Select target folder" +msgstr "Vali sihtkataloog" + +msgid "Select the movie path" +msgstr "Vali filmi rada" + +msgid "Select upgrade source" +msgstr "Vali uuenduste allikas" + +msgid "Select upgrade source to edit." +msgstr "Vali uuenduste allikas muutmiseks." + +msgid "Select video input with up/down buttons" +msgstr "Vali video sisend" + +msgid "Select video mode" +msgstr "Vali video töörežiim" + +msgid "Select wireless network" +msgstr "Vali WiFi võrk" + +msgid "Select your provider, and press OK to start the scan" +msgstr "Vali teenusepakkuja ja vajuta otsingu alustamiseks OK" + +msgid "Selecting satellites 1 (USALS)" +msgstr "" + +msgid "Selecting satellites 2 (USALS)" +msgstr "" + +msgid "Send DiSEqC only on satellite change" +msgstr "Saada DiSEqC anult satelliidi vahetamisel" + +msgid "Separate titles with a main menu" +msgstr "Eraldi pealkirjad koos peamenüüga" + +msgid "Sequence repeat" +msgstr "Järjekorra kordus" + +msgid "Serbian" +msgstr "Serbia" + +msgid "Service" +msgstr "Kanaliinfo" + +msgid "Service has been added to the favourites." +msgstr "Kanal on lisatud lemmiknimekirja." + +msgid "Service has been added to the selected bouquet." +msgstr "Kanal on lisatud valitud nimekirja." + +msgid "Service info" +msgstr "Kanaliinfo" + +msgid "" +"Service invalid!\n" +"(Timeout reading PMT)" +msgstr "" +"Valitud kanalit ei leitud!\n" +"(Timeout PMT lugemisel)" + +msgid "Service name" +msgstr "Kanalinimi" + +msgid "" +"Service not found!\n" +"(SID not found in PAT)" +msgstr "" +"Valitud kanalit ei leitud!\n" +"(SID ei leitud PAT-st)" + +msgid "Service reference" +msgstr "Kanali referents" + +msgid "Service scan" +msgstr "Kanali otsing" + +msgid "Service searching" +msgstr "Kanaliotsing" + +msgid "Service title mode" +msgstr "Kanalinime kuju" + +msgid "" +"Service unavailable!\n" +"Check tuner configuration!" +msgstr "" +"Pole kanalit!\n" +"Kontrolli tuuneri seadeid!" + +msgid "Services" +msgstr "Kanalid" + +msgid "Set default" +msgstr "" + +msgid "Set end time" +msgstr "Määra lõppaeg" + +msgid "Set fixed" +msgstr "Määra püsiaadress" + +msgid "Set fps for external subtitles" +msgstr "Määra väliste subtiitrite kaadrisagedus" + +msgid "Set interface as default Interface" +msgstr "Määra vaikimisi võrguliideseks" + +msgid "Set limits" +msgstr "Määra piirid" + +msgid "Set the type of the progress indication in the channel selection screen." +msgstr "Määra saate edenemise näit kanalivalikus." + +msgid "Set time window to 1 hour" +msgstr "Määra ajaaknaks 1 tund" + +msgid "Set time window to 2 hours" +msgstr "Määra ajaaknaks 2 tundi" + +msgid "Set time window to 3 hours" +msgstr "Määra ajaaknaks 3 tundi" + +msgid "Set time window to 4 hours" +msgstr "Määra ajaaknaks 4 tundi" + +msgid "Set time window to 5 hours" +msgstr "Määra ajaaknaks 5 tundi" + +msgid "Set time window to 6 hours" +msgstr "" + +msgid "Set voltage and 22KHz" +msgstr "Vali pinge ja 22 KHz" + +msgid "Settings" +msgstr "Seaded" + +msgid "Setup" +msgstr "Seadistamine" + +msgid "Setup menu" +msgstr "Seadistusmenüü" + +msgid "Setup mode" +msgstr "Seadistamine" + +msgid "Setup your positioner" +msgstr "Mootori häälestamine" + +msgid "Setup your satellite equipment" +msgstr "Satelliidiseadmed" + +#, python-format +msgid "Shall the USB stick wizard proceed and program the image file %s into flash memory?" +msgstr "Kas USB pulga abiline alustab toimingut ja salvestab tarkvara %s flash mälusse?" + +msgid "Sharpness" +msgstr "Teravus" + +msgid "Short filenames" +msgstr "Lühikesed failinimed" + +msgid "Show EIT now/next in infobar" +msgstr "Näita nüüd/järgmine inforibal" + +msgid "Show EPG for current channel..." +msgstr "Näita käesoleva saate kava..." + +msgid "Show EPG..." +msgstr "näita saatekava..." + +msgid "Show Games show" +msgstr "" + +msgid "Show SNR percentage instead of dB value" +msgstr "Näita dB asemel SNR protsente" + +msgid "Show VCR scart on main menu" +msgstr "" + +msgid "Show WLAN status" +msgstr "Näita WiFi Olekut" + +msgid "Show animation while busy" +msgstr "Näita hõivatud oleku puhul animatsiooni" + +msgid "Show background in radio mode" +msgstr "Näita raadioolekus taustapilti" + +msgid "Show bouquet selection menu" +msgstr "Näita lemmiknimekirja menüüd" + +msgid "Show busy indicator when the system is busy." +msgstr "Näita hõivatud oleku puhul animatsiooni." + +msgid "Show channel numbers in channel selection" +msgstr "Näita kanalivalikus kanalinumbreid" + +msgid "Show columns" +msgstr "" + +msgid "Show crypto icons" +msgstr "" + +msgid "Show crypto info in infobar" +msgstr "Näita salastatust inforibal" + +msgid "Show detailed event info" +msgstr "Näita üksikasjalikku saatetutvustust" + +msgid "Show event details" +msgstr "Näita saatetutvustust" + +msgid "Show event-progress in channel selection" +msgstr "Näita saate edenemist kanalivalikus" + +msgid "Show extended description" +msgstr "Näita pikemat saatetutvustust" + +msgid "Show extensions..." +msgstr "Näita laiendusi..." + +msgid "Show icon for new/unseen items" +msgstr "Tähista uus/vaatamata salvestis" + +msgid "Show in extensions menu" +msgstr "" + +msgid "Show info" +msgstr "Näita infot" + +msgid "Show info line" +msgstr " Näita infot" + +msgid "Show infobar on channel change" +msgstr "Näita kanali vahetusel inforiba" + +msgid "Show infobar on event change" +msgstr "Näita saate vahetumisel inforiba" + +msgid "Show infobar on skip forward/backward" +msgstr "Näita kerimisel inforiba" + +msgid "Show latest commits on sourceforge" +msgstr "" + +msgid "Show message when recording starts" +msgstr "Teavita salvestuse algamisest" + +msgid "Show movie lengths in movielist" +msgstr "Näita filmilistis filmi pikkust" + +msgid "Show multi channel EPG" +msgstr "" + +msgid "Show picons in channel list" +msgstr "" + +msgid "Show positioner movement" +msgstr "Näita positsioneeri liikumist" + +msgid "Show screensaver" +msgstr "Näita ekraanisäästjat" + +msgid "Show second infobar" +msgstr "Näita teist inforiba" + +msgid "Show service type icons" +msgstr "Näita teenuse tüübi ikoone" + +msgid "Show services beginning with" +msgstr "Näita kanalid mis algavad" + +msgid "Show shutdown menu" +msgstr "Kuva seiskamismenüü" + +msgid "Show single service EPG" +msgstr "" + +msgid "Show status icons in Movielist" +msgstr "" + +msgid "Show status icons in movie list" +msgstr "Oleku tähistus salvestiste nimekirjas" + +msgid "Show status icons in movielist" +msgstr "Oleku tähistus filmilistis" + +msgid "Show tag menu" +msgstr "Kuva märksõnade menüü" + +msgid "Show the radio player..." +msgstr "Kuula raadiot" + +msgid "Show the tv player..." +msgstr "Näita TV-d" + +msgid "Show warning when timeshift is stopped" +msgstr "Näita hoiatust kui ajanihe on peatunud" + +msgid "Shows the state of your wireless LAN connection.\n" +msgstr "Näitab WiFi olekut.\n" + +msgid "Shuffle playlist" +msgstr "Sega esitusloend" + +msgid "Shutdown" +msgstr "Lülita välja" + +msgid "Shutdown when in Standby" +msgstr "" + +msgid "Side by side" +msgstr "Kõrvuti" + +msgid "Signal OK, proceeding" +msgstr "Signaal OK, jätkame" + +msgid "Signal quality" +msgstr "Signaali kvaliteet" + +msgid "Signal strength:" +msgstr "Signaali tugevus:" + +msgid "Signal: " +msgstr "Signaal: " + +msgid "Similar" +msgstr "Sarnased" + +msgid "Similar broadcasts:" +msgstr "Sarnased saated:" + +msgid "Simple" +msgstr "Lihtne" + +msgid "Simple titleset (compatibility for legacy players)" +msgstr "Lihtne pealkiri (vanemate pleieritega ühilduv)" + +msgid "Single" +msgstr "Üksik" + +msgid "Single EPG" +msgstr "Kanali saatekava" + +msgid "Single satellite" +msgstr "Üksik satelliit" + +msgid "Single step (GOP)" +msgstr "Üksik samm (GOP)" + +msgid "Single transponder" +msgstr "Üksik transponder" + +msgid "Site latitude" +msgstr "" + +msgid "Site longitude" +msgstr "" + +msgid "Skin" +msgstr "Välimus" + +msgid "Skins" +msgstr "Välimus" + +msgid "Skip empty services" +msgstr "Tühje kanaleid ei näidata" + +msgid "Skip internet connection check (disables automatic package installation)" +msgstr "Jäta netiühenduse kontroll vahele (automaatne pakettide paigaldamine keelatakse)" + +msgid "Sleep timer" +msgstr "Unetaimer" + +msgid "SleepTimer Configuration" +msgstr "" + +msgid "Sleeptimer" +msgstr "" + +msgid "Slide picture in loop" +msgstr "Vaata pilte tsüklis" + +msgid "Slide show interval (sec.)" +msgstr "Piltide näitamise aeg (sekundit)" + +#, python-format +msgid "Slot %d" +msgstr "Pesa %d" + +msgid "Slovak" +msgstr "Slovaki" + +msgid "Slovenian" +msgstr "Sloveeni" + +msgid "Slow" +msgstr "Aeglane" + +msgid "Slow motion speeds" +msgstr "Aeglustuskiirused" + +msgid "Small progress" +msgstr "Väike edenemisriba" + +msgid "Social/Political/Economics" +msgstr "" + +msgid "SoftCam / CI" +msgstr "EMU / CI" + +msgid "Softcam type" +msgstr "EMU tüüp" + +msgid "Software" +msgstr "Tarkvara" + +msgid "Software management" +msgstr "Tarkvara haldamine" + +msgid "Software manager setup" +msgstr "Tarkvarahalduri seaded" + +msgid "Software restore" +msgstr "Tarkvara taaste" + +msgid "Software update" +msgstr "Tarkvara uuendamine" + +msgid "Softwaremanager information" +msgstr "Tarkvarahalduri informatsioon" + +msgid "Some plugins are not available:\n" +msgstr "Mõned laiendused pole saadaval:\n" + +#, python-format +msgid "Sorry, %s has not been installed!" +msgstr " %sei ole paigaldatud!" + +msgid "Sorry, deleting directories can (for now) only be done through the trash can." +msgstr "Kataloogide kustutamine on võimalik ainult läbi prügikasti." + +msgid "Sorry, no backups found!" +msgstr "Varukoopiat ei leitud!" + +msgid "Sorry, no details available!" +msgstr "Üksikasju pole saadaval!" + +msgid "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." +msgstr "" +"Varukoopia asukohta ei saa salvestada.\n" +"Vali uus asukoht." + +msgid "Sort" +msgstr "Järjesta" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort A-Z" +msgstr "Tähestikujärj." + +msgid "Sort by" +msgstr "" + +msgid "Sort list:" +msgstr "" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort time" +msgstr "Aja järgi" + +msgid "Sound" +msgstr "Heli" + +msgid "Sound carrier" +msgstr "Heli kandevsagedus" + +msgid "Source request" +msgstr "Allika päring" + +msgid "South" +msgstr "Lõuna" + +msgid "Spanish" +msgstr "Hispaania" + +msgid "Specify the end time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the end time until the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify the start time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the start time when the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify timeframe to ignore inactivity sleeptimer" +msgstr "" + +msgid "Specify timeframe to ignore the shutdown in standby" +msgstr "" + +msgid "Split preview mode" +msgstr "Poolitatud eelvaate režiim" + +msgid "Splitscreen" +msgstr "" + +msgid "Sports" +msgstr "Sport" + +msgid "Standard" +msgstr "Tavaline" + +msgid "Standart list" +msgstr "" + +msgid "Standby" +msgstr "Ooterežiim" + +msgid "Standby / restart" +msgstr "Seiskamine" + +msgid "Standby after current event" +msgstr "" + +#, python-format +msgid "Standby fan %d PWM" +msgstr "Ventilaatori %d PWM ooterežiimil" + +#, python-format +msgid "Standby fan %d voltage" +msgstr "Ventilaatori %d pinge ooterežiimil" + +msgid "Standby in " +msgstr "" + +msgid "StandbyLED" +msgstr "" + +msgid "Start from the beginning" +msgstr "Alusta algusest" + +msgid "Start offline decode" +msgstr "Alusta võrguta dekodeerimist" + +msgid "Start recording?" +msgstr "Kas alustan salvestust?" + +msgid "Start test" +msgstr "Käivita test" + +msgid "Start time" +msgstr "Alustamise aeg" + +msgid "Start time to ignore inactivity sleeptimer" +msgstr "" + +msgid "Start time to ignore shutdown in standby" +msgstr "" + +msgid "Start timeshift" +msgstr "Käivita ajanihe" + +msgid "Start with list screen" +msgstr "" + +msgid "Starting on" +msgstr "Alates" + +msgid "Startup the set top box in standby" +msgstr "" + +msgid "Startup to Standby" +msgstr "" + +msgid "Step east" +msgstr "Samm itta" + +msgid "Step west" +msgstr "Samm läände" + +msgid "Stepped east" +msgstr "" + +msgid "Stepped west" +msgstr "" + +msgid "Stop" +msgstr "Peata" + +msgid "Stop PiP" +msgstr "Sulge PiP" + +msgid "Stop current event and disable coming events" +msgstr "Peata salvestus ja keela tulevad taimerid" + +msgid "Stop current event but not coming events" +msgstr "Peata salvestus, aga ära keela tulevaid taimereid" + +msgid "Stop entry" +msgstr "Peata" + +msgid "Stop playing this movie?" +msgstr "Kas lõpetan taasesituse?" + +msgid "Stop recording" +msgstr "Peata salvestamine" + +msgid "Stop recording and delete" +msgstr "Peata salvestamine ja kustuta" + +msgid "Stop service on return to movie list" +msgstr "" + +msgid "Stop test" +msgstr "Peata test" + +msgid "Stop testing plane after # failed transponders" +msgstr "Peata testimine pärast # ebaõnnestunud transponderit" + +msgid "Stop testing plane after # successful transponders" +msgstr "Peata testimine pärast # leitud transponderit" + +msgid "Stop timer recording" +msgstr "" + +msgid "Stop timeshift" +msgstr "Lõpeta ajanihe" + +msgid "Stop timeshift?" +msgstr "Peatad ajanihkega salvestuse?" + +msgid "Stopped" +msgstr "Peatunud" + +msgid "Store at index" +msgstr "" + +msgid "Store position" +msgstr "Salvesta asukoht" + +msgid "Stored position" +msgstr "Salvestatud asukoht" + +msgid "Stream" +msgstr "" + +msgid "Stream request" +msgstr "Striimi päring" + +msgid "Strongest position" +msgstr "Tugevaim asukoht" + +msgid "Subservice list..." +msgstr "Alamteenuste nimekiri" + +msgid "Subservices" +msgstr "Alamteenused" + +msgid "Subtitle Quickmenu" +msgstr "" + +msgid "Subtitle alignment" +msgstr "Subtiitrite joondus" + +msgid "Subtitle border width" +msgstr "Subtiitrite kontuuri paksus" + +msgid "Subtitle delay when timing is bad" +msgstr "" + +msgid "Subtitle delay when timing lacks" +msgstr "Subtiitrite viiteaeg ajastuse puudumisel" + +msgid "Subtitle font size" +msgstr "Subtiitrite tähesuurus" + +msgid "Subtitle language selection 1" +msgstr "Subtiitri keele valik 1" + +msgid "Subtitle language selection 2" +msgstr "Subtiitri keele valik 2" + +msgid "Subtitle language selection 3" +msgstr "Subtiitri keele valik 3" + +msgid "Subtitle language selection 4" +msgstr "Subtiitri keele valik 4" + +msgid "Subtitle position" +msgstr "Subtiitrite asukoht" + +msgid "Subtitle selection" +msgstr "Subtiitrite valik" + +msgid "Subtitle selection..." +msgstr "Subtiitrite valik..." + +msgid "Subtitle settings" +msgstr "Subtiitrite seadistus" + +msgid "Subtitles" +msgstr "Subtiitrid" + +msgid "Sun" +msgstr "P" + +msgid "Sunday" +msgstr "Pühapäev" + +msgid "Swap PiP and main picture" +msgstr "Vaheta PiP- ja peapilt" + +msgid "Swap services" +msgstr "Vaheta kanalid omavahel" + +msgid "Swedish" +msgstr "Rootsi" + +msgid "Switch TV to correct input" +msgstr "Lülita TV õigele sisendile" + +msgid "Switch between filelist/playlist" +msgstr "" + +msgid "Switch between normal mode and list mode" +msgstr "Vaheta tava ja nimekirja vaate vahel" + +msgid "Switch to HDMI in mode" +msgstr "" + +msgid "Switch to filelist" +msgstr "Mine faililoendisse" + +msgid "Switch to next channel" +msgstr "" + +msgid "Switch to next channel in history" +msgstr "Järgmine kanal ajaloos" + +msgid "Switch to next sub service" +msgstr "Järgmine alamkanal" + +msgid "Switch to playlist" +msgstr "Mine esitusloendisse" + +msgid "Switch to previous channel" +msgstr "Eelmine kanal" + +msgid "Switch to previous channel in history" +msgstr "Eelmine kanal ajaloos" + +msgid "Switch to previous sub service" +msgstr "Eelmine alamkanal" + +msgid "Switchable tuner types:" +msgstr "Ümberlülitatavate tuunerite tüübid:" + +msgid "Symbol rate" +msgstr "Sümbolikiirus" + +msgid "Symbol rate:" +msgstr "" + +msgid "Sync failure moving back to origin !" +msgstr "" + +msgid "System" +msgstr "Süsteem" + +#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) +msgid "TRANSLATOR_INFO" +msgstr "TÕLKE_INFO" + +msgid "TS file is too large for ISO9660 level 1!" +msgstr "TS fail on liiga suur ISO9660/1-le!" + +msgid "TSID" +msgstr "TSID" + +msgid "TV physical address report" +msgstr "TV füüsilise aadressi raport" + +msgid "TXT PID" +msgstr "TXT PID" + +msgid "Table of contents for collection" +msgstr "Kollektsiooni sisutabel" + +msgid "Tags" +msgstr "Võtmesõnad" + +msgid "Teletext subtitle color" +msgstr "Teleteksti subtiitrite värv" + +msgid "Temperature and fan control" +msgstr "Temp. ja ventilaatori seaded" + +msgid "Terrestrial" +msgstr "Maapealne TV (DVB-T)" + +msgid "Terrestrial provider" +msgstr "DVB-T levitaja" + +msgid "Test DiSEqC settings" +msgstr "Testi DiSEqC seadeid" + +msgid "Test mode" +msgstr "Testpilt" + +msgid "Test the network configuration of your receiver.\n" +msgstr "Testi vastuvõtja võrgu seadeid.\n" + +msgid "Test type" +msgstr "Testi tüüp" + +msgid "Text color" +msgstr "Teksti värv" + +msgid "Thai" +msgstr "Tai" + +msgid "" +"Thank you for using the wizard.\n" +"Please press OK to continue." +msgstr "" +"Täname, et kasutasid abilist.\n" +"Jätkamiseks vajuta OK." + +msgid "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." +msgstr "" +"Täname, et kasutasid abilist. Vastuvõtja on kasutuseks valmis\n" +"Jätkamiseks vajuta OK." + +msgid "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?" +msgstr "DVD standard ei toeta H.264 (HDTV) video voogesitust. Kas soovite luua eri vormingus andmete (data) DVD, mida teised DVD mängijad ei mängi?" + +msgid "The PIN code has been changed successfully." +msgstr "PIN kood on muudetud." + +msgid "The PIN codes you entered are different." +msgstr "Sisestatud PIN koodid on erinevad." + +msgid "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" +msgstr "" +"USB pulk oli ette valmistatud käivitatavana.\n" +"Nüüd saad NFI tarkvara faili alla laadida!" + +msgid "The backup failed. Please choose a different backup location." +msgstr "Varukoopia loomine nurjus. Vali uus varukoopia asukoht." + +#, python-format +msgid "" +"The current beta image might not be stable.\n" +"For more information see %s." +msgstr "" +"Praegune beta image ei pruugi olla stabiilne.\n" +"Enama info jaoks vaata %s." + +#, python-format +msgid "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." +msgstr "" +"Kataloog %s ei ole salvestatav.\n" +"Vali kindlasti selle asemel salvestatav kataloog." + +#, python-format +msgid "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" +msgstr "" +"Leitud USB pulk:\n" +"\n" +"%s\n" +"\n" +"Kas Te soovite USB pulka alglaetavaks?" + +msgid "The following files were found..." +msgstr "Leitud järgmised failid" + +msgid "The md5sum validation failed, the file may be corrupted!" +msgstr "md5sum kontroll ebaõnnestus, fail võib olla rikutud!" + +msgid "" +"The network wizard extension is not installed!\n" +"Please install it." +msgstr "" +"NetworkWizard laiendus ei ole paigaldatud! \n" +"Paigalda see." + +#, python-format +msgid "The path %s already exists." +msgstr "Kaust %s on juba olemas." + +msgid "The pin code you entered is wrong." +msgstr "Vale kood." + +#, python-format +msgid "The results have been written to %s." +msgstr "Tulemused on salvestatud %s." + +msgid "The sleep timer has been activated." +msgstr "Unetaimer on aktiveeritud." + +msgid "The sleep timer has been disabled." +msgstr "Unetaimer välja lülitatud." + +msgid "" +"The software management extension is not installed!\n" +"Please install it." +msgstr "" +"Softwaremanagement laiendus ei ole paigaldatud! \n" +"Paigalda see." + +#, python-format +msgid "The status of the current beta image could not be checked because %s can not be reached." +msgstr "Praeguse beta image olekut ei õnnestunud kontrollida, %s ei vasta" + +msgid "The timer file (timers.xml) is corrupt and could not be loaded." +msgstr "Taimerite fail (timers.xml) on katki ja seda ei saa laadida." + +msgid "The user interface of your receiver is restarting" +msgstr "Vastuvõtja kasutajaliides taaskäivitub." + +msgid "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" +msgstr "" +"Vastuvõtja kasutajaliides taaskäivitub\n" +"vea tõttu 'mytest.py' failis" + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." +msgstr "" +"Wifi laiendus-plugin ei ole paigaldatud!\n" +"Palun paigalda see ja vali mida soovid teha järgmiseks." + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it." +msgstr "" +"Wifi laiendus-plugin ei ole paigaldatud!\n" +"Palun paigalda see." + +msgid "The wizard can backup your current settings. Do you want to do a backup now?" +msgstr "Praegustest seadetest saab teha varukoopia. Kas teha seda nüüd?" + +#, python-format +msgid "The wizard found a configuration backup. Do you want to restore your old settings from %s?" +msgstr "Abiline leidis konfiguratsiooni varukoopia. Kas soovid taastada vanad seaded %s?" + +msgid "The wizard is finished now." +msgstr "Toiming on nüüd lõpetatud. Vajuta OK." + +msgid "There are at least " +msgstr "Seal on vähemalt " + +#, python-format +msgid "There are at least %s updates available." +msgstr "Saadaval on vähemalt %s uuendust." + +msgid "There are currently no outstanding actions." +msgstr "Praegu ei ole täitmata tegevusi." + +msgid "There are no updates available." +msgstr "Uuendusi ei ole saadaval." + +msgid "There is no signal to lock on !" +msgstr "" + +msgid "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" +msgstr "" +"Kõvakettal pole piisavalt vaba ruumi.\n" +"Kas soovid kindlasti jätkata?" + +msgid "This DVD RW medium is already formatted - reformatting will erase all content on the disc." +msgstr "DVD RW ketas on formaaditud.Uuesti formaatimisel kustutatakse kõik, mis plaadile kirjutatud." + +msgid "" +"This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!" +msgstr "" +"See laiendus valmistab ette USB pulga, mida saab kasutada vastuvõtja tarkvara uuendamiseks ilma võrgu- või WLAN ühenduseta. \n" +"Algul tuleb USB pulk teha alglaetavaks. \n" +"Siis saab uuenduste serverist alla laadida NFI tarkvara faili ja salvestada selle USB pulgale. \n" +"Kui oled juba ette valmistanud alglaetava USB pulga, siis ühenda see nüüd. Vastasel korral ühenda min. 64 MB USB pulk!" + +msgid "This plugin is installed." +msgstr "Laiendus on paigaldatud." + +msgid "This plugin is not installed." +msgstr "See laiendus pole paigaldatud." + +msgid "This plugin will be installed." +msgstr "See laiendus paigaldatakse." + +msgid "This plugin will be removed." +msgstr "See laiendus eemaldatakse." + +#, python-format +msgid "This receiver cannot decode %s streams!" +msgstr "See vastuvõtja ei toeta %s voogude dekodeerimist!" + +msgid "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration" +msgstr "" +"Test kontrollib nimeserveri seadeid.\n" +"Kui tekib \"kinnitamata\" kiri:\n" +"- kontrolli oma DHCP-d, kaableid ja võrgukaardi seadeid \n" +"- kui seadistasid oma nimeserverid käsitsi, siis kontrolli üle \"nimeserver\" seaded" + +msgid "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" +msgstr "" +"See test kontrollib, kas võrgukaabel on ühendatud LAN adapteriga.\n" +"Kui näed \"ühendamata\" teadet:\n" +"- veendu, et võrgukaabel on ühendatud\n" +"- veendu, et kaabel on terve" + +msgid "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" +msgstr "" +"See test kontrollib kehtiva IP aadressi olemasolu LAN adapteri jaoks.\n" +"Kui näed \"kinnitamata\" teadet:\n" +"- ei leitud kehtivat IP aadressi\n" +"- kontrolli DHCP ja võrgukaardi seadeid ning kaabeldust" + +msgid "" +"This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." +msgstr "" +"See test kontrollib,kas LAN adapter on seadistatud automaatse IP aadressi jaoks DHCP-d kasutades.\n" +"Kui näed \"keelatud\" teadet:\n" +"- siis LAN adapter on seadistatud IP määramisele käsitsi\n" +"- kontrolli, et õige IP info on salvestatud AdapterSetup dialoogis.\n" +"Kui näed \"lubatud\" teadet:\n" +"kontrolli, et võrgus on seadistatud ja töötav DHCP server." + +msgid "This test detects your configured LAN adapter." +msgstr "See test tuvastab seadistatud võrgukaardi." + +msgid "" +"This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\n" +"Are you sure?" +msgstr "" + +msgid "Three" +msgstr "Kolm" + +msgid "Threshold" +msgstr "Lävi" + +msgid "Thu" +msgstr "N" + +msgid "Thumbnails" +msgstr "Pisipildid" + +msgid "Thursday" +msgstr "Neljapäev" + +msgid "Time" +msgstr "Aeg" + +msgid "Time scale" +msgstr "Ajaskaala" + +msgid "Timer" +msgstr "Taimer" + +msgid "Timer Overview" +msgstr "" + +msgid "Timer edit" +msgstr "Taimeri muutmine" + +msgid "Timer editor" +msgstr "Taimeri muutja" + +msgid "Timer entry" +msgstr "Taimeri sisestus" + +msgid "Timer log" +msgstr "Taimeri logi" + +msgid "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" +msgstr "" +"Taimerite ajad kattuvad!\n" +"Palun kontrolli ajad üle!" + +msgid "Timer overview" +msgstr "Taimeri ülevaade" + +msgid "Timer recording location" +msgstr "Taimeri salvestuse asukoht" + +msgid "Timer sanity error" +msgstr "Taimeri viga" + +msgid "Timer selection" +msgstr "Taimeri valik" + +msgid "Timer selection..." +msgstr "" + +msgid "Timer type" +msgstr "Taimeri liik" + +msgid "Timeshift" +msgstr "Ajanihe" + +msgid "Timeshift Live" +msgstr "" + +msgid "Timeshift location" +msgstr "Ajanihke asukoht" + +msgid "Timeshift not possible!" +msgstr "Ajanihke kasutamine pole võimalik!" + +msgid "Timezone" +msgstr "Ajavöönd" + +msgid "Title" +msgstr "Pealkiri" + +msgid "Title properties" +msgstr "Pealkirja omadused" + +msgid "Titleset mode" +msgstr "Testpilt" + +msgid "To audio selection" +msgstr "Heli valik" + +msgid "To subtitle selection" +msgstr "Subtiitrite valik" + +msgid "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." +msgstr "" +"Vastuvõtja püsivara uuendamiseks toimi järgnevalt: \n" +"1) Lülita vastuvõtja tagumisest lülitist välja ja veendu, et alglaaditav USB pulk on ühendatud. \n" +"2) Lülita vastuvõtja sisse, hoides CH- nuppu esipaneelil vajutatuna 10 sekundi jooksul. \n" +"3) Oota alglaadimiseni ja jälgi abilise juhendeid ekraanil." + +msgid "Today" +msgstr "Täna" + +msgid "Toggle a cut mark at the current position" +msgstr "Pane lõikemärk praegusele kohale" + +msgid "Tone amplitude" +msgstr "Tooni amplituud" + +msgid "Tone mode" +msgstr "22KHz-toon" + +msgid "Toneburst" +msgstr "Toonvalimine" + +msgid "Toneburst A/B" +msgstr "Toonvalimine A/B" + +msgid "Top and bottom" +msgstr "Üleval ja all" + +msgid "Track" +msgstr "Rada" + +msgid "Translation" +msgstr "Tõlge" + +msgid "Translation:" +msgstr "Tõlge:" + +msgid "Translations" +msgstr "Tõlked" + +msgid "Transmission mode" +msgstr "Edastamise moodus" + +msgid "Transponder" +msgstr "Transponder" + +msgid "Transponder type" +msgstr "Transponderi tüüp" + +msgid "Trash can" +msgstr "Prügikast" + +msgid "Tries left:" +msgstr "Katseid järel:" + +msgid "Try to find used transponders in cable network.. please wait..." +msgstr "Otsin kaabelvõrgu sagedusi. Oota." + +msgid "Trying to download a new packetlist. Please wait..." +msgstr "Üritan laadida alla uut nimekirja. Oota." + +msgid "Tue" +msgstr "T" + +msgid "Tuesday" +msgstr "Teisipäev" + +msgid "Tune" +msgstr "Häälesta" + +msgid "Tune and focus" +msgstr "" + +msgid "Tune failed!" +msgstr "Häälestus nurjus!" + +msgid "Tuner" +msgstr "Tuuner" + +msgid "Tuner configuration" +msgstr "Tuuneri seaded" + +msgid "Tuner is not supported" +msgstr "" + +msgid "Tuner slot" +msgstr "Tuuneri pesa" + +msgid "Tuner status" +msgstr "Tuuneri olek" + +#, python-format +msgid "Tuner status %s" +msgstr "Tuuneri olek %s" + +msgid "Tuner type" +msgstr "Tuuneri tüüp" + +msgid "Turkish" +msgstr "Türgi" + +msgid "Turn on the power LED during standby." +msgstr "" + +msgid "Turning step size" +msgstr "" + +msgid "Two" +msgstr "Kaks" + +msgid "Type" +msgstr "Tüüp" + +msgid "Type of scan" +msgstr "Otsingu tüüp" + +msgid "USALS" +msgstr "USALS" + +msgid "USALS calibration" +msgstr "USALS kalibreerimine" + +msgid "USB stick" +msgstr "USB mälupulk" + +msgid "USB stick wizard" +msgstr "USB-mälupulk" + +msgid "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Toimub automatiseeritud uuendamine\n" +"Oota vastuvõtja taaskäivitamist\n" +"Selleks võib kuluda mõni minut" + +msgid "Undo install" +msgstr "Tühista paigaldamine" + +msgid "Undo uninstall" +msgstr "Tühista eemaldamine" + +msgid "Unencrypted" +msgstr "Koodivaba" + +msgid "UnhandledKey" +msgstr "Käsitlematu võti" + +msgid "Unicable" +msgstr "Unicable" + +msgid "Unicable LNB" +msgstr "Unicable LNB" + +msgid "Unicable Martix" +msgstr "Unicable Martix" + +msgid "Uninstall" +msgstr "Eemalda" + +msgid "Universal LNB" +msgstr "Universaal LNB" + +msgid "Unknown" +msgstr "Tundmatu" + +msgid "Unmount" +msgstr "Haagi lahti" + +msgid "Unsupported" +msgstr "Pole toetatud" + +msgid "Update" +msgstr "Uuendus" + +msgid "Update and ask to reboot" +msgstr "Uuenda ja küsi luba taaskäivitamiseks" + +msgid "Update and reboot (recommended)" +msgstr "Uuenda ja taaskäivita (soovitatav)" + +msgid "Update channel list only" +msgstr "Uuenda ainult kanalinimekiri" + +#, python-format +msgid "Update completed, %d package was installed." +msgid_plural "Update completed, %d packages were installed." +msgstr[0] "Uuendamine tehtud, paigaldati %d pakett." +msgstr[1] "Uuendamine tehtud, paigaldati %d paketti." + +msgid "Update completed. Do you want to reboot your receiver?" +msgstr "Uuendamine on tehtud. Kas taaskäivitad vastuvõtja?" + +msgid "Update failed. Your receiver does not have a working internet connection." +msgstr "Uuendamine nurjus. Vastuvõtjal puudub töötav internetiühendus." + +msgid "Update has completed." +msgstr "Uuendamine on lõppenud." + +msgid "Updatefeed not available." +msgstr "Uuenduslink pole saadaval." + +msgid "Updating software catalog" +msgstr "Uuendan tarkvara kataloogi" + +msgid "Upgrading" +msgstr "Uuendan" + +msgid "Use" +msgstr "Kasuta" + +msgid "Use DHCP" +msgstr "Kasuta DHCP:d" + +msgid "Use EIT EPG information when it is available." +msgstr "EIT EPG kasutamine, kui see on saadaval." + +msgid "Use FreeSat EPG information when it is available." +msgstr "FreeSat EPG kasutamine, kui see on saadaval." + +msgid "Use MHW EPG information when it is available." +msgstr "MHW EPG kasutamine, kui see on saadaval." + +msgid "Use Netmed EPG information when it is available." +msgstr "Netmed EPG kasutamine, kui see on saadaval." + +msgid "Use TV remote control" +msgstr "Kasuta teleri pulti" + +msgid "Use USALS for this sat" +msgstr "Kasuta sellel satelliidil USALS" + +msgid "Use ViaSat EPG information when it is available." +msgstr "Viasat EPG kasutamine, kui see on saadaval." + +msgid "Use Virgin EPG information when it is available." +msgstr "" + +msgid "Use a gateway" +msgstr "Kasuta lüüsi" + +msgid "Use fastscan channel names" +msgstr "Kasuta kiirotsingu kanalinimesi" + +msgid "Use fastscan channel numbering" +msgstr "Kasuta kiirotsingu kanalinumeratsiooni" + +msgid "Use frequency or channel" +msgstr "" + +msgid "Use individual settings for each directory" +msgstr "" + +msgid "Use interface" +msgstr "Kasuta võrguliidest" + +msgid "Use official channel numbering" +msgstr "Kasuta ametlikku kanalinumeratsiooni" + +msgid "Use original DVB subtitle position" +msgstr "Kasuta algset DVB subtiitrite asukohta" + +msgid "Use original teletext position" +msgstr "Kasuta algset teleteksti asukohta" + +msgid "Use power measurement" +msgstr "Kasuta võimsuse mõõtmist" + +msgid "Use the network wizard to configure selected network adapter" +msgstr "Kasuta abilist valitud võrgukaardi seadmiseks" + +msgid "Use the network wizard to configure your network\n" +msgstr "Kasuta seadistusabilist oma võrgu seadistamiseks\n" + +msgid "Use the up/down keys on your remote control to select an option. After that, press OK." +msgstr "Kasuta valimiseks üles/alla nuppu puldil, siis vajuta OK." + +msgid "Use the wizard to set up basic features" +msgstr "Kasuta abimeest põhiomaduste seadmiseks" + +msgid "Use these input device settings?" +msgstr "Kasutad selle sisendseadme seadeid?" + +msgid "Use these settings?" +msgstr "Kasutad neid seadeid?" + +msgid "Use this video enhancement settings?" +msgstr "Kasuta neid pildiparanduse seadeid?" + +msgid "Use trash can in movielist" +msgstr "Kasuta filmilistis prügikasti" + +msgid "Used service scan type" +msgstr "Kasutatud otsingu tüüp" + +msgid "User - bouquets" +msgstr "Lemmiknimekirjad" + +msgid "User defined" +msgstr "Kasutaja määratud" + +msgid "User defined transponder" +msgstr "" + +msgid "User interface" +msgstr "Kasutajaliides" + +msgid "Username" +msgstr "Kasutajatunnus" + +#, python-format +msgid "Using LNB %d" +msgstr "Kasutuses LNB %d" + +msgid "Using fixed address" +msgstr "Püsiaadress kasutuses" + +#, python-format +msgid "Using tuner %s" +msgstr "Kasutuses tuuner %s" + +msgid "Usually when the subtitle language is the same as the audio language, the subtitles will not be used. Enable this option to allow these subtitles to be used." +msgstr "Tavaliselt subtiitreid ei näidata, kui nende keel kattub heli keelega. Siin valikus saab selle lubada." + +msgid "VCR scart" +msgstr "VCR scart" + +msgid "VMGM (intro trailer)" +msgstr "VMGM (intro trailer)" + +msgid "Vertical" +msgstr "Vertikaal" + +msgid "Vertical turning speed" +msgstr "Vertikaalse pööramise kiirus" + +msgid "Video PID" +msgstr "Video PID" + +msgid "Video enhancement preview" +msgstr "Pildi paranduste eelvaade" + +msgid "Video enhancement settings" +msgstr "Pildi paranduste seaded" + +msgid "Video enhancement setup" +msgstr "Pildi paranduste seaded" + +msgid "Video fine tuning" +msgstr "Video peenhäälestus" + +msgid "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." +msgstr "" +"Video sisendi valik\n" +"\n" +"Vajuta OK, kui näed seda lehekülge TV ekraanil(või vali teine sisend).\n" +"\n" +"Järgmist sisendit proovitakse automaatselt 20 sekundi möödudes." + +msgid "Video mode selection." +msgstr "Video valik." + +msgid "Video output" +msgstr "Video väljund" + +msgid "Video setup" +msgstr "Video seaded" + +msgid "Video wizard" +msgstr "Video juhend" + +#, python-format +msgid "Video: %s fps" +msgstr "" + +msgid "VideoMode" +msgstr "" + +msgid "Videocodec" +msgstr "Videokoodek" + +msgid "Videoformat" +msgstr "Videoformaat" + +msgid "Videosize" +msgstr "Videosuurus" + +msgid "View Rass interactive..." +msgstr "Vaata Rass interactive" + +msgid "View details" +msgstr "Vaata detaile" + +msgid "View list of available " +msgstr "Vaata saadaval olevat nimekirja " + +msgid "View list of available CommonInterface extensions" +msgstr "Vaata CI laienduste nimekirja" + +msgid "View list of available EPG extensions." +msgstr "Vaata EPG laienduste nimekirja." + +msgid "View list of available Satellite equipment extensions." +msgstr "Vaata võimalike SAT seadmete laienduste nimekirja." + +msgid "View list of available communication extensions." +msgstr "Vaata infovahetus laienduste nimekirja." + +msgid "View list of available default settings" +msgstr "Vaata vaikimisi seadete nimekirja" + +msgid "View list of available display and userinterface extensions." +msgstr "Vaata saadaolevate kasutajaliidese laienduste nimekirja." + +msgid "View list of available multimedia extensions." +msgstr "Vaata multimeedia laienduste nimekirja." + +msgid "View list of available networking extensions" +msgstr "Vaata võrgu laienduste nimekirja" + +msgid "View list of available recording extensions" +msgstr "Vaata salvestuseks vajalike laienduste nimekirja" + +msgid "View list of available skins" +msgstr "Vaata välimuste nimekirja" + +msgid "View list of available software extensions" +msgstr "Vaata tarkvara laienduste nimekirja" + +msgid "View list of available system extensions" +msgstr "Vaata süsteemi laienduste nimekirja" + +msgid "View photos..." +msgstr "Vaata pilte..." + +msgid "View teletext..." +msgstr "Kuva teletekst" + +msgid "View video CD..." +msgstr "Vaata video CD..." + +msgid "Virtual keyboard" +msgstr "Virtuaalklahvistik" + +msgid "Voltage mode" +msgstr "Pinge tüüp" + +msgid "Volume" +msgstr "Helitugevus" + +msgid "W" +msgstr "W" + +msgid "WEP" +msgstr "WEP" + +msgid "WLAN connection" +msgstr "WiFi ühendus" + +msgid "WPA" +msgstr "WPA" + +msgid "WPA or WPA2" +msgstr "WPA või WPA2" + +msgid "WPA2" +msgstr "WPA2" + +msgid "WSS on 4:3" +msgstr "WSS 4:3 -ga" + +msgid "Waiting" +msgstr "Ootan" + +msgid "Waiting for mount" +msgstr "Oodatakse haakimist" + +msgid "Waiting for partition" +msgstr "Oodatakse partitsiooni" + +msgid "Wakeup" +msgstr "Ärata" + +msgid "Wakeup TV from standby" +msgstr "Käivita teler" + +msgid "Wakeup receiver for start timer" +msgstr "" + +msgid "Wakeup receiver from standby" +msgstr "Käivita vastuvõtja" + +msgid "Wakeup signal from TV" +msgstr "Äratussignaal telerist" + +msgid "Wakeup type" +msgstr "" + +msgid "Warning: no LNB; using factory defaults." +msgstr "Hoiatus: LNB puudub; kautatakse algseadeid." + +msgid "Watch movies..." +msgstr "Vaata filme..." + +msgid "Watch recordings..." +msgstr "Vaata salvestusi..." + +msgid "Wed" +msgstr "K" + +msgid "Wednesday" +msgstr "Kolmapäev" + +msgid "Weekday" +msgstr "Nädalapäev" + +msgid "Weighted position" +msgstr "Korrigeeritud asukoht" + +msgid "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." +msgstr "" +"Tere tulemast salvestise lõikajasse.\n" +"\n" +"Keri lõike koha algusesse.Vajuta OK, 'lõike algus'.\n" +"\n" +"Edasi otsi lõike lõpp, vajuta OK. Tehtud." + +msgid "Welcome to the image upgrade wizard. The wizard will assist you in upgrading the firmware of your receiver by providing a backup facility for your current settings and a short explanation of how to upgrade your firmware." +msgstr "Tere tulemast tarkvara uuendamise abilisse. See aitab vastuvõtja tarkvara uuendamisel pakkudes võimaluse varundada praegused seaded ja väikese õpetuse kuidas uuendada." + +msgid "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" +msgstr "" +"Tere tulemast.\n" +"\n" +"Kui tahad vastuvõtja ühendada internetti, siis see abiline juhendab võrgu seadistamisel.\n" +"\n" +"Võrgu seadistamise alustamiseks vajuta OK" + +msgid "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." +msgstr "" +"Tere.\n" +"\n" +"See stardiabiline juhendab vastuvõtja põhiseadete tegemisel.\n" +"Järgmise sammu juurde minekuks vajuta puldil OK." + +msgid "Welcome..." +msgstr "Tere tulemast" + +msgid "West" +msgstr "Lääs" + +msgid "West limit set" +msgstr "Lääne piir on määrarud" + +msgid "What do you want to scan?" +msgstr "Mida soovid otsida?" + +msgid "When enabled the PiP can be closed by the exit button." +msgstr "" + +msgid "When enabled the arrow buttons around the OK button will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled the left, right, CH+/-, B+/-, P+/- buttons will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled you can specify a timeframe to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "When enabled you can specify a timeframe were the inactivity sleeptimer is ignored. Not the detection is disabled during this timeframe but the inactivity timeout is disabled" +msgstr "" + +msgid "When enabled you can zap channels with the CH+/-, B+/-, P+/- buttons instead of opening the channel selection list." +msgstr "" + +msgid "When enabled you get the channel selection list via the OK button, the infobar toggle is then transfered to exit button" +msgstr "" + +msgid "When enabled, AIT data will be included in http streams. This allows a client receiver to use HbbTV." +msgstr "Määrates 'jah', kaasatakse AIT andmed http voogudesse. See võimaldab vastuvõtjal HbbTV kasutamise." + +msgid "When enabled, ECM data will be included in http streams. This allows a client receiver to do the descrambling." +msgstr "Määrates 'jah', kaasatakse ECM andmed http voogudesse. Nii toimub dekodeerimine klientvastuvõtjas." + +msgid "When enabled, EIT data will be included in http streams. This allows a client receiver to show EPG." +msgstr "Määrates 'jah', kaasatakse EIT andmed http voogudesse. See võimaldab klientvastuvõtjal EPG kasutamise." + +msgid "When enabled, a popup message will be shown when a movie has finished and the next one will start." +msgstr "Määrates 'jah', teavitatakse filmi lõppemisest ja uue algamisest hüpikaknaga." + +msgid "When enabled, a popup message will be shown when a recording starts." +msgstr "Määrates 'jah', teavitatakse salvestamise alustamisest hüpikaknaga." + +msgid "When enabled, a radio background image will be visible while listening to a radio channel." +msgstr "Määrates 'jah', näidatakse raadiokanalil oleku ajal taustapilti." + +msgid "When enabled, a recording is allowed to interrupt live tv, when there are no free tuners." +msgstr "Määrates 'jah', katkestab algav salvestus vaadatava saate juhul, kui ei leidu vabat tuunerit." + +msgid "When enabled, a warning will be displayed and the user will get an option to stop or to continue the timeshift." +msgstr "" + +msgid "When enabled, authentication is required to watch http streams." +msgstr "" + +msgid "When enabled, channel numbering will start at '1' for each bouquet." +msgstr "Määrates 'jah', algavad kanalinumbrid igas lemmiknimekirjas numbriga '1'." + +msgid "When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen." +msgstr "Määrares 'jah', venitatakse 4:3 sisu täitmaks kogu ekraani." + +msgid "When enabled, continue to the next bouquet when the last channel of the current bouquet is reached while changing channels." +msgstr "Määrates 'jah', liigutakse kanalivahetusel käesoleva lemmiknimekirja lõppu jõudes järgmisesse lemmiknimekirja." + +msgid "When enabled, deleted recordings are moved to the trash can, instead of being deleted immediately." +msgstr "Määrates 'jah', ei kustutata salvestusi silmapilkselt, vaid liigutatakse prügikasti." + +msgid "When enabled, display the EIT now/next eventdata in infobar. When disabled, display now/next eventdata from the EPG cache instead." +msgstr "Määrates 'jah', näidatakse inforibal EIT nüüd/järgmine saateinfot. Määrates 'ei', võetakse EIT nüüd/järgmine saateinfo EPG vahemälust." + +msgid "When enabled, encryption info will be shown in the infobar (when supported by the skin)." +msgstr "Määrates 'jah', näidatakse salastatust inforibal (kui teema seda toetab)." + +msgid "When enabled, error messages related to the Common Interface module will not be shown." +msgstr "Määrates 'jah', ei näidata CI mooduliga seotud veateateid." + +msgid "When enabled, error messages related to zapping will not be shown." +msgstr "Määrates 'jah', ei näidata kanalivahetusega seotud veateateid." + +msgid "When enabled, external subtitles will be always turned on for playback movie." +msgstr "" + +msgid "When enabled, graphical DVB subtitles are preferred over teletext subtitles, when both types are available." +msgstr "Määrates 'jah' eelistatakse mõlema olemasolul DVB subtiitreid teleteksti omadele." + +msgid "When enabled, graphical DVB subtitles will be centered horizontally." +msgstr "Määrates 'jah', kuvatakse DVB subtiitrid horisontaalselt tsentreerituna." + +msgid "When enabled, graphical DVB subtitles will be displayed at their original position." +msgstr "Määrates 'jah', kuvatakse DVB subtiitrid nende algsel asukohal." + +msgid "When enabled, graphical DVB subtitles will be displayed in yellow, instead of the original color." +msgstr "Määrates 'jah', kuvatakse DVB subtiitrid nende tõelise värvi asemel kollasena." + +msgid "When enabled, http streams are descrambled on the server side. The (remote) client receiver does not have to do descrambling." +msgstr "Määrates 'jah', dekodeeritakse http vood serveri poolt. Klientvastuvõtja ei pea neid enam dekodeerima." + +msgid "When enabled, it is possible to leave the movieplayer with exit." +msgstr "" + +msgid "When enabled, measure power consumption to detect when the rotor stops turning (when supported by the tuner)." +msgstr "Määrates 'jah', mõõdetakse energia kulu, tuvastamaks mootori pööramise lõppemist (kui vastuvõtja seda toetab)." + +msgid "When enabled, number markers will be hiden." +msgstr "" + +msgid "When enabled, services may be grouped in multiple bouquets." +msgstr "Määrates 'jah', saad kasutada rohkem kui ühte lemmiknimekirja." + +msgid "When enabled, show channel numbers in the channel selection screen." +msgstr "Määrates 'jah', näidatakse kanalinimekirjas kanalinumbreid." + +msgid "When enabled, subtitles for the hearing impaired can be used." +msgstr "Määrates 'jah', saab kasutada vaegkuuljatele mõeldud subtiitreid." + +msgid "When enabled, subtitles for the hearing impaired will be preferred over normal subtitles, when both types are available." +msgstr "Määrates 'jah' eelistatakse mõlema olemasolul vaegkuuljate subtiitreid tavalistele." + +msgid "When enabled, teletext pages will be cached, allowing faster access." +msgstr "Määrates 'jah', puhverdadakse teleteksti lehed, võimaldamaks kiiremat ligipääsu." + +msgid "When enabled, teletext subtitles will be displayed at their original position." +msgstr "Määrates 'jah', kuvatakse teleteksti subtiitrid nende algsel asukohal." + +msgid "When enabled, the VCR scart option will be shown on the main menu" +msgstr "" + +msgid "When enabled, the channel selection list will be hidden while listening to a radio channel" +msgstr "Määrates 'jah', ei näidata raadiot kuulates kanalinimekirja." + +msgid "When enabled, the infobar will be displayed when a new event starts." +msgstr "Määrates 'jah', kuvatakse uue saate algamisel inforiba." + +msgid "When enabled, the infobar will be displayed when changing channels." +msgstr "Määrates 'jah', kuvatakse kanalivahetusel inforiba." + +msgid "When enabled, the infobar will be displayed when skipping forwards/backwards during media playback." +msgstr "Määrates 'jah', kuvatakse meediafailide esitusel edasi/tagasi hüpates inforiba." + +msgid "When enabled, the lenght of each recording will be shown in the movielist (this might cause some additional loading time)." +msgstr "Määrates 'jah', näidatakse filmilistis salvestuse kestust (laadimine võib kesta veidi kauem)." + +msgid "When enabled, the original line breaks will be removed from the teletext subtitles." +msgstr "Määrates 'jah', kasutakse teleteksti subtiitritel parandamata reamurdmist." + +msgid "When enabled, the receiver will automatically use the audio track which you selected before." +msgstr "Määrates 'jah', kasutab vastuvõtja automaatselt varem valitud heliriba." + +msgid "When enabled, the receiver will automatically use the subtitles which you selected before." +msgstr "Määrates 'jah', kasutatakse automaatselt varem valitud subtiitreid." + +msgid "When enabled, the receiver will no longer monitor the tuned transponder for possible changes. Do not use this option unless you know what you are doing." +msgstr "Määrates 'jah', ei jälgi vastuvõtja enam võimalikke muudatusi transponderil. Kasuta seda ainult juhul, kui oled täiesti kindel, et tead, mida teed." + +msgid "When enabled, the receiver will select an AC3 track (when available)." +msgstr "Määrates 'jah', kasutab vastuvõtja (võimaluse korral) AC3 heli." + +msgid "When enabled, the receiver will select an AC3+ track (when available)." +msgstr "" + +msgid "When enabled, timeshift starts automatically in background after specified time." +msgstr "" + +msgid "When enabled, use DHCP for the IP configuration." +msgstr "Määrates 'jah', kasutatakse IP määramiseks DHCP-d." + +#, fuzzy +msgid "When enabled, your receiver will detect activity on the VCR SCART input." +msgstr "Määrates 'jah', kasutab vastuvõtja (võimaluse korral) AC3 heli." + +msgid "When nonzero, a recording will start earlier than the starting time indicated by the EPG." +msgstr "Salvestamist alustatakse enne saatekavas näidatud aega." + +msgid "When nonzero, a recording will stop later than the ending time indicated by the EPG." +msgstr "Salvestamine lõpetatakse pärast saatekavas näidatud aega." + +msgid "When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture." +msgstr "Määra, kas 16:9 pildisuhtega sisu tuleb skaleerida/venitada." + +msgid "When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture." +msgstr "Määra, kas 4:3 pildisuhtega sisu tuleb skaleerida/venitada." + +msgid "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" +msgstr "" +"Kui Te taastate algseadistuse, kaovad kõik TEIE isiklikud seaded\n" +"(ka lemmikud, kanalid, satelliidid, konf.failid jne.)\n" +"Pärast algseadistuse taastamist, teeb vastuvõtja automaatselt alglaadimise!\n" +"\n" +"Soovid ikka kindlasti taastada algseadistuse?" + +msgid "Where do you want to backup your settings?" +msgstr "Kuhu teha seadete varukoopia?" + +msgid "Where to save temporary timeshift recordings?" +msgstr "Kuhu salvestada ajanihke sisu?" + +msgid "Wireless LAN" +msgstr "Traadita LAN" + +msgid "Wireless network" +msgstr "Traadita võrk" + +msgid "Wireless network configuration..." +msgstr "Wifi võrgu häälestamine..." + +msgid "Wireless network connection setup" +msgstr "Wifi võrgu seadistus" + +msgid "Wireless network connection setup." +msgstr "Wifi võrgu seadistus." + +msgid "Wireless network state" +msgstr "Wifi võrgu olek" + +msgid "With popup" +msgstr "Popup aknaga" + +msgid "Without popup" +msgstr "Ilma popup aknata" + +msgid "Would you like to install a softcam?" +msgstr "Kas paigaldad EMU?" + +msgid "Write error while recording. Disk full?\n" +msgstr "Kirjutamise viga. Kõvaketas täis?\n" + +msgid "Write failed!" +msgstr "Kirjutamine nurjus!" + +msgid "YPbPr" +msgstr "YPbPr" + +msgid "Year" +msgstr "Aasta" + +msgid "Yellow DVB subtitles" +msgstr "Kollased DVB subtiitrid" + +msgid "Yes" +msgstr "Jah" + +msgid "Yes and save" +msgstr "" + +msgid "Yes and save in movie dir" +msgstr "" + +msgid "Yes to all" +msgstr "Kõigile JAH" + +msgid "Yes, always" +msgstr "Jah, alati" + +msgid "Yes, and delete this movie" +msgstr "Jah, kustuta see salvestis" + +msgid "Yes, backup my settings!" +msgstr "Jah, tee seadetest varukoopia!" + +msgid "Yes, delete this movie and return to movie list" +msgstr "" + +msgid "Yes, do a manual scan now" +msgstr "Jah, tee nüüd käsiotsing" + +msgid "Yes, do an automatic scan now" +msgstr "Jah, tee nüüd automaatotsing" + +msgid "Yes, do another manual scan now" +msgstr "Jah, tee nüüd uus käsiotsing" + +msgid "Yes, perform a shutdown now." +msgstr "Jah, lülita välja." + +msgid "Yes, restore the settings now" +msgstr "Jah, taasta nüüd seaded" + +msgid "Yes, returning to movie list" +msgstr "Jah, tagasi salvestiste nimekirja" + +msgid "Yesterday" +msgstr "Eile" + +#, python-format +msgid "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" +msgstr "" +"Kanalinimekiri on juba paigaldatud,\n" +"kas soovid eemaldada\n" +"\"%s\"?" + +msgid "You can cancel the installation." +msgstr "Paigaldamise saab tühistada." + +msgid "You can cancel the removal." +msgstr "Eemaldamise saab tühistada." + +msgid "You can continue watching TV etc. while this is running." +msgstr "Samal ajal võib vaatata TV-d jne." + +msgid "You can install this plugin." +msgstr "Selle laienduse saab paigaldada." + +msgid "You can only burn receiver recordings!" +msgstr "Plaadile saab kirjutada ainult vastuvõtja salvestusi!" + +msgid "You can remove this plugin." +msgstr "Selle laienduse saab eemaldada." + +msgid "You cannot delete this!" +msgstr "Seda ei saa kustutada!" + +msgid "You didn't select a channel to record from." +msgstr "Salvestatavat kanalit pole valitud." + +msgid "You have chosen to backup your settings. Please press OK to start the backup now." +msgstr "Oled otsustanud luua turvakoopia kõvakettale. Vajuta OK alustamiseks nüüd." + +msgid "You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased." +msgstr "Soovid luua uue alglaetava USB-pulga tarkvarale. Kõik vana info USB pulgal läheb kaduma !!!" + +msgid "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." +msgstr "Oled valinud oma seadete taastamise. Enigma2 taaskäivitub pärast taastamist. Vajuta nüüd OK taastamise alustamiseks." + +#, python-format +msgid "You have to wait %s!" +msgstr "Tuleb oodata %s!" + +msgid "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." +msgstr "" +"Vastuvõtja tuleb ühendada arvutiga. Kui on vaja abi, siis vaata : http://www.dm7025.de.\n" +"Vastuvõtja on nüüd peatatud.Kui on täidetud uuendamise juhised veebilehelt, siis uus tarkvara palub taastada seadeid." + +msgid "You system does not support ext4" +msgstr "See süsteem ei toeta ext4" + +msgid "Your backup succeeded. We will now continue to explain the further upgrade process." +msgstr "Varukoopia valmis. Me informeerime edasistest uuenduste käigust." + +msgid "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" +msgstr "Kogu valik ei mahu ühekihilisele plaadile, vaja on tühja kahekihilist DVD plaati!" + +msgid "Your current collection will get lost!" +msgstr "Praegune valik kustutatakse!" + +msgid "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." +msgstr "" +"Frontprotsessori tarkvara tuleb uuendada.\n" +"Uuendamiseks vajuta OK." + +msgid "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Esiprotsessorit uuendatakse\n" +"Oota vastuvõtja taaskäivitumist\n" +"See võib võtta mõne minuti" + +msgid "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." +msgstr "" +"Interneti ühendus ei tööta!\n" +"Vali mida soovid teha edasi." + +#, python-format +msgid "Your internet connection is working (ip: %s)" +msgstr "Internetiühendus töötab (ip: %s)" + +msgid "Your network configuration has been activated." +msgstr "Võrguseadistus on aktiveeritud." + +msgid "Your receiver does not have an internet connection" +msgstr "Vastuvõtjal puudub internetiühendus" + +msgid "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" +msgstr "" +"Vastuvõtja on kasutamiseks valmis.\n" +"\n" +"Interneti ühendus töötab.\n" +"\n" + +msgid "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Vastuvõtja on kasutamiseks valmis.\n" +"\n" +"Internetiühendus töötab.\n" +"\n" +"Jätkamiseks vajuta OK." + +msgid "Your receiver is rebooting" +msgstr "Vastuvõtja taaskäivitub" + +msgid "Your receiver is shutting down" +msgstr "Vastuvõtja lülitub välja" + +msgid "Your receiver is shutting down. Please stand by..." +msgstr "Vastuvõtja lülitub välja. Oota" + +msgid "Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver." +msgstr "Vastuvõtja võib olla nüüd kasutuskõlbmatu. Uuri juhendit täiendava abi leidmiseks enne vastuvõtja taaskäivitamist." + +msgid "Your receiver will got to stand by due to the sleeptimer." +msgstr "" + +msgid "Your receiver will got to standby due to inactivity." +msgstr "" + +msgid "Your receiver will restart after pressing OK on your remote control." +msgstr "Vastuvõtja taaskäivitub pärast puldil OK vajutamist." + +msgid "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." +msgstr "" +"WLAN ühendust ei saa tööle!\n" +"Kas WLAN USB pulk on ühendatud?\n" +"\n" +"Vali, mida soovid teha edasi." + +msgid "Zap" +msgstr "Mine kanalile" + +msgid "Zap back to previously tuned service?" +msgstr "Tagasi vaadatud kanalile?" + +msgid "Zap back to service before positioner setup?" +msgstr "Tagasi vaadatud kanalile?" + +msgid "Zap back to service before tuner setup?" +msgstr "Tagasi vaadatud kanalile?" + +msgid "Zap focus to Picture in Picture" +msgstr "Kanalivahetus PiP kanalil" + +msgid "Zap focus to main screen" +msgstr "Fookus peaekraanile" + +msgid "Zap mode" +msgstr "" + +msgid "Zap to selected channel" +msgstr "Mine valitud kanalile" + +msgid "Zap to selected channel, or show detailed event info (depends on configuration)" +msgstr "Mine valitud kanalile või näita saateinfot (sõltub seadistusest)" + +msgid "[alternative edit]" +msgstr "[lisavõimaluste lisamine ja kustutamine]" + +msgid "[bouquet edit]" +msgstr "[lemmiknimekirjade muutmine]" + +msgid "[favourite edit]" +msgstr "[lemmikute muutmine]" + +msgid "[move mode]" +msgstr "[liigutamine]" + +msgid "a gui to assign services/providers to common interface modules" +msgstr "CI kasutajaliidese määratud kanalid/teenused/levitajad" + +msgid "a gui to assign services/providers/caids to common interface modules" +msgstr "CI kasutajaliidese määratud kanalid/levitajad/caids" + +msgid "abort alternatives edit" +msgstr "tühista muudatused" + +msgid "abort bouquet edit" +msgstr "tühista muudatused" + +msgid "abort favourites edit" +msgstr "tühista muudatused" + +msgid "about to start" +msgstr "algamas" + +msgid "activate network adapter configuration" +msgstr "aktiveeri võrgukaardi seaded" + +msgid "add alternatives" +msgstr "valikute lisamine" + +msgid "add bookmark" +msgstr "lisa uus tähis" + +msgid "add bouquet" +msgstr "lisa nimekiri" + +msgid "add marker" +msgstr "lisa marker" + +msgid "add service to bouquet" +msgstr "lisa kanal nimekirja" + +msgid "add service to favourites" +msgstr "lisa kanal lemmikutesse" + +msgid "add to parental protection" +msgstr "lisa lapselukk" + +msgid "adult movie/drama" +msgstr "täiskasvanute film/draama" + +msgid "advanced" +msgstr "lisavalikud" + +msgid "adventure/western/war" +msgstr "seiklus/vestern/sõda" + +msgid "advertisement/shopping" +msgstr "reklaam/ostukanal" + +msgid "after " +msgstr "" + +msgid "alphabetic" +msgstr "tähestikujärjekord" + +msgid "alphabetic reverse" +msgstr "tagurpidi tähestikujärjekord" + +msgid "alternative" +msgstr "" + +msgid "always" +msgstr "" + +msgid "and select next channel" +msgstr "" + +msgid "and select previous channel" +msgstr "" + +msgid "arts/culture (without music, general)" +msgstr "Kunst/kultuur (välja arvatud muusika)" + +msgid "arts/culture magazine" +msgstr "kunsti- ja kultuurimagasin" + +msgid "athletics" +msgstr "kergejõustik" + +msgid "audio tracks" +msgstr "audio rajad" + +msgid "auto" +msgstr "automaatne" + +msgid "automatic" +msgstr "automaatne" + +msgid "back" +msgstr "tagasi" + +msgid "background image" +msgstr "taustapilt" + +msgid "ballet" +msgstr "ballett" + +#, python-format +msgid "bc%s" +msgstr "" + +msgid "better" +msgstr "parem" + +msgid "black" +msgstr "must" + +msgid "black & white" +msgstr "must-valge" + +msgid "blacklist" +msgstr "keelatud" + +msgid "blue" +msgstr "sinine" + +msgid "broadcasting/press" +msgstr "ringhääling/ajakirjandus" + +msgid "by date" +msgstr "ajaline järjestus" + +msgid "cartoon/puppets" +msgstr "joonis/nukufilm" + +msgid "center" +msgstr "keskel" + +msgid "centered" +msgstr "" + +msgid "centered, wrapped" +msgstr "" + +msgid "chapters" +msgstr "peatükid" + +msgid "childrens's/youth program (general)" +msgstr "laste/noortesaade" + +msgid "circular left" +msgstr "ringpolarisatsioon vasak" + +msgid "circular right" +msgstr "ringpolarisatsioon parem" + +msgid "comedy" +msgstr "komöödia" + +msgid "complex" +msgstr "keeruline" + +msgid "config menu" +msgstr "seadete menüü" + +msgid "confirmed" +msgstr "kinnitatud" + +msgid "connected" +msgstr "ühendatud" + +msgid "continue" +msgstr "jätka" + +msgid "cooking" +msgstr "kokasaade" + +msgid "copy to bouquets" +msgstr "kopeeri nimekirjadesse" + +msgid "create directory" +msgstr "Loo kataloog" + +#, python-format +msgid "currently installed image: %s" +msgstr "praegu paigaldatud tarkvara: %s" + +msgid "daily" +msgstr "iga päev" + +msgid "day" +msgstr "päev" + +msgid "default" +msgstr "vaikimisi" + +msgid "delete cut" +msgstr "kustuta lõige" + +msgid "delete..." +msgstr "" + +msgid "descramble and record ecm" +msgstr "dekodeeri ja salvesta ecm" + +msgid "detective/thriller" +msgstr "detektiiv/triller" + +msgid "disable" +msgstr "keela" + +msgid "disable move mode" +msgstr "keela move mode" + +msgid "disabled" +msgstr "keelatud" + +msgid "disconnected" +msgstr "ühendamata" + +msgid "discussion/interview/debate" +msgstr "vestlus/intervjuu/debatt" + +msgid "do nothing" +msgstr "ära tee midagi" + +msgid "documentary" +msgstr "dokumentaal" + +msgid "don't descramble, record ecm" +msgstr "ära salvesta, dekodeeri ecm" + +msgid "done!" +msgstr "valmis!" + +msgid "east" +msgstr "ida" + +msgid "economics/social advisory" +msgstr "majandus/hoolekanne" + +msgid "edit alternatives" +msgstr "lisavõimaluste lisamine ja kustutamine" + +msgid "education/science/factual topics (general)" +msgstr "haridus/teadus" + +msgid "empty" +msgstr "tühi" + +msgid "enable" +msgstr "luba" + +msgid "enable bouquet edit" +msgstr "luba nimekirjade muutmine" + +msgid "enable favourite edit" +msgstr "luba lemmikute muutmine" + +msgid "enable move mode" +msgstr "luba liigutamine menüüdes" + +msgid "enabled" +msgstr "lubatud" + +msgid "end alternatives edit" +msgstr "salvesta muudatused ja välju" + +msgid "end bouquet edit" +msgstr "salvesta muudatused ja välju" + +msgid "end cut here" +msgstr "lõpeta lõige siin" + +msgid "end favourites edit" +msgstr "salvesta muudatused ja välju" + +msgid "entertainment (10-16 year old)" +msgstr "meelelahutus (10-16 aastastele)" + +msgid "entertainment (6-14 year old)" +msgstr "meelelahutus (6-14 aastastele)" + +msgid "equal to" +msgstr "on võrdne" + +msgid "equestrian" +msgstr "ratsutamine" + +msgid "exit DVD player or return to file browser" +msgstr "välju DVD-mängijast või mine tagasi failisirvijasse" + +msgid "exit movielist" +msgstr "" + +msgid "exit network adapter configuration" +msgstr "lõpeta võrgukaardi häälestamine" + +msgid "exit networkadapter setup menu" +msgstr "välju võrgukaardi seadistusmenüüst" + +msgid "experimental film/video" +msgstr "eksperimentaalne film/video" + +msgid "false" +msgstr "väär" + +msgid "fashion" +msgstr "mood" + +msgid "fileformats (BMP, PNG, JPG, GIF)" +msgstr "failiformaadid (BMP, PNG, JPG, GIF)" + +msgid "filename" +msgstr "faili nimi" + +msgid "film/cinema" +msgstr "film/kino" + +msgid "fine arts" +msgstr "kaunid kunstid" + +msgid "fine-tune your display" +msgstr "peenhäälesta ekraani" + +msgid "fitness & health" +msgstr "" + +#, fuzzy +msgid "flat alphabetic" +msgstr "tähestikujärjekord" + +#, fuzzy +msgid "flat alphabetic reverse" +msgstr "tähestikujärjekord" + +msgid "folk/traditional music" +msgstr "folk/rahvamuusika" + +msgid "football/soccer" +msgstr "jalgpall" + +msgid "foreign countries/expeditions" +msgstr "" + +msgid "forward to the next chapter" +msgstr "hüppa järgmisele peatükile" + +msgid "free" +msgstr "vaba" + +msgid "from" +msgstr "" + +msgid "further education" +msgstr "" + +msgid "game show/quiz/contest" +msgstr "" + +msgid "gardening" +msgstr "aiandus" + +msgid "go to deep standby" +msgstr "mine sügavootele" + +msgid "go to standby" +msgstr "mine ooterežiimi" + +msgid "grab this frame as bitmap" +msgstr "salvesta see kaader bitmapina" + +msgid "green" +msgstr "roheline" + +msgid "handicraft" +msgstr "käsitöö" + +msgid "height" +msgstr "kõrgus" + +msgid "help..." +msgstr "abi" + +msgid "horizontal" +msgstr "horisontaal" + +msgid "information/education/school program" +msgstr "teave/haridus/kooliprogramm" + +msgid "init module" +msgstr "käivita moodul" + +msgid "init modules" +msgstr "käivita moodul" + +msgid "insert mark here" +msgstr "pane märk siia" + +msgid "invalid type" +msgstr "kehtetu tüüp" + +msgid "jazz" +msgstr "džäss" + +msgid "jump back to the previous title" +msgstr "hüppa eelmisele salvestisele" + +msgid "jump forward to the next title" +msgstr "hüppa järgmisele salvestisele" + +msgid "languages" +msgstr "keeled" + +msgid "leave movie player..." +msgstr "lõpeta salvestise taasesitus" + +msgid "left" +msgstr "vasak" + +msgid "left, wrapped" +msgstr "" + +msgid "leisure hobbies (general)" +msgstr "" + +msgid "length" +msgstr "pikkus" + +msgid "limit ..., aborting !" +msgstr "piir ..., katkestame!" + +msgid "list style compact" +msgstr "nimekirja stiil: kompaktne" + +msgid "list style compact with description" +msgstr "nimekirja stiil: kompaktne saatetutvustusega" + +msgid "list style default" +msgstr "nimekirja stiil: vaikeseaded" + +msgid "list style single line" +msgstr "nimekirja stiil: üks rida" + +msgid "literature" +msgstr "kirjandus" + +msgid "live broadcast" +msgstr "otsesaade" + +msgid "locked" +msgstr "lukustatud" + +msgid "loopthrough to" +msgstr "läbiviik kuni" + +msgid "magazines/reports/documentary" +msgstr "" + +msgid "manual" +msgstr "juhend" + +msgid "martial sports" +msgstr "" + +msgid "medicine/physiology/psychology" +msgstr "" + +msgid "menu" +msgstr "menüü" + +msgid "mins" +msgstr "min" + +msgid "minutes" +msgstr "minutid" + +msgid "month" +msgstr "kuu" + +msgid "motor sport" +msgstr "motosport" + +msgid "motoring" +msgstr "" + +msgid "move down to last entry" +msgstr "liigu viimasele reale" + +msgid "move down to next entry" +msgstr "liigu järgmisele reale" + +msgid "move up to first entry" +msgstr "liigu esimesele reale" + +msgid "move up to previous entry" +msgstr "liigu eelmisele reale" + +msgid "movie/drama (general)" +msgstr "" + +msgid "multinorm" +msgstr "multinorm" + +msgid "music/ballet/dance (general)" +msgstr "" + +msgid "musical/opera" +msgstr "muusikal/ooper" + +msgid "nature/animals/environment" +msgstr "" + +msgid "never" +msgstr "mitte kunagi" + +msgid "new media" +msgstr "uus meedia" + +msgid "news magazine" +msgstr "uudismagasin" + +msgid "news/current affairs (general)" +msgstr "" + +msgid "news/weather report" +msgstr "uudised/ilmateade" + +msgid "no" +msgstr "ei" + +msgid "no CAId selected" +msgstr "CAId-i pole valitud" + +msgid "no CI slots found" +msgstr "moodulit ei leitud" + +msgid "no module found" +msgstr "moodulit ei leitud" + +msgid "no storage devices found" +msgstr "andmekandjaid ei leitud" + +msgid "none" +msgstr "mitte midagi" + +msgid "normal" +msgstr "" + +msgid "not configured" +msgstr "ei ole häälestatud" + +msgid "not locked" +msgstr "pole lukustatud" + +msgid "not supported" +msgstr "pole toetatud" + +msgid "not used" +msgstr "pole lukustatud" + +msgid "nothing connected" +msgstr "pole ühendatud" + +msgid "of a DUAL layer medium used." +msgstr "kasutatud kahekihilisest kettast." + +msgid "of a SINGLE layer medium used." +msgstr "kasutatud ühekihilisest kettast." + +msgid "off" +msgstr "väljas" + +msgid "offset is" +msgstr "" + +msgid "on" +msgstr "sees" + +msgid "on READ ONLY medium." +msgstr "ainult LOETAV meedial." + +msgid "on end of movie" +msgstr "" + +msgid "once" +msgstr "üks kord" + +msgid "only from deep standby" +msgstr "" + +msgid "only from standby" +msgstr "" + +msgid "open EPG..." +msgstr "" + +msgid "open Info..." +msgstr "" + +msgid "open nameserver configuration" +msgstr "nimeserveri seaded" + +msgid "original" +msgstr "algne" + +msgid "original language" +msgstr "algupärane keel" + +msgid "pass" +msgstr "lubatud" + +msgid "performing arts" +msgstr "" + +msgid "play as picture in picture" +msgstr "näita kanal pilt-pildis" + +msgid "play in mainwindow" +msgstr "näita peaaknas" + +msgid "please press OK when ready" +msgstr "vajuta OK kui valmis" + +msgid "please wait, loading picture..." +msgstr "pilti laetakse. oota" + +msgid "popular culture/traditional arts" +msgstr "" + +msgid "pre-school children's program" +msgstr "koolieelikute saade" + +msgid "receiver software because updates are available." +msgstr "vastuvõtja tarkvara, sest uuendused on saadaval." + +msgid "record" +msgstr "salvestus" + +msgid "recording..." +msgstr "salvestan" + +msgid "red" +msgstr "punane" + +msgid "religion" +msgstr "religioon" + +msgid "remarkable people" +msgstr "" + +msgid "remove after this position" +msgstr "kustuta selle koha järel" + +msgid "remove all alternatives" +msgstr "kustuta kõik asenduskanalid" + +msgid "remove all new found flags" +msgstr "kustuta kõik uus kanal-tunnused" + +msgid "remove before this position" +msgstr "kustuta kõik enne seda kohta" + +msgid "remove bookmark" +msgstr "kustuta järjehoidja" + +msgid "remove directory" +msgstr "kustuta kataloog" + +msgid "remove entry" +msgstr "kustuta" + +msgid "remove from parental protection" +msgstr "eemalda lapselukk" + +msgid "remove new found flag" +msgstr "eemalda uus kanal-tunnus" + +msgid "remove selected satellite" +msgstr "eemalda valitud satelliit" + +msgid "remove this mark" +msgstr "eemalda see märk" + +msgid "rename entry" +msgstr "nimeta nimekiri ümber" + +msgid "repeat playlist" +msgstr "korda esitusloendit" + +msgid "repeated" +msgstr "korduvalt" + +msgid "reverse by date" +msgstr "tagurpidi kuupäevajärj." + +msgid "rewind to the previous chapter" +msgstr "tagasi eelmisele peatükile" + +msgid "right" +msgstr "parem" + +msgid "right, wrapped" +msgstr "" + +msgid "rock/pop" +msgstr "rock/pop" + +msgid "romance" +msgstr "romantika" + +msgid "save last directory on exit" +msgstr "pea väljumisel asukoht meeles" + +msgid "save playlist on exit" +msgstr "salvesta esitusloend" + +msgid "scan state" +msgstr "otsingu seis" + +msgid "science fiction/fantasy/horror" +msgstr "" + +msgid "second cable of motorized LNB" +msgstr "" + +msgid "seconds" +msgstr "sekundit" + +msgid "select" +msgstr "vali" + +msgid "select CAId's" +msgstr "vali CAID-id" + +msgid "select EPG..." +msgstr "" + +msgid "select Info..." +msgstr "" + +msgid "select menu entry" +msgstr "vali menüüpunkt" + +msgid "select movie" +msgstr "vali salvestis" + +msgid "select the movie path" +msgstr "" + +msgid "serious music/classic music" +msgstr "" + +msgid "serious/classical/religious/historical movie/drama" +msgstr "" + +msgid "service PIN" +msgstr "kanali PIN" + +msgid "set as startup service" +msgstr "käivita vastuvõtja sellel kanalil" + +msgid "setup PIN" +msgstr "seadete PIN" + +msgid "show DVD main menu" +msgstr "näita DVD peamenüüd" + +msgid "show all tags" +msgstr "näita kõiki märksõnu" + +msgid "show alternatives" +msgstr "näita alternatiivsed kanalid" + +msgid "show event details" +msgstr "näita saatetutvustust" + +msgid "show extended description" +msgstr "" + +msgid "show mediaplayer on mainmenu" +msgstr "näita meediaesitajat peamenüüs" + +msgid "show softwaremanager in setup menu" +msgstr "näita tarkvarahaldurit seadistusmenüüs" + +msgid "show softwaremanager on blue button" +msgstr "näita tarkvarahaldurit sinise nupu all" + +msgid "show tag menu" +msgstr "" + +msgid "show transponder info" +msgstr "näita transponderi infot" + +msgid "show/game show (general)" +msgstr "" + +msgid "shuffle" +msgstr "segatud" + +msgid "shut down" +msgstr "lülita välja" + +msgid "simple" +msgstr "lihtne" + +msgid "skip backward" +msgstr "mine tagasi" + +msgid "skip forward" +msgstr "mine edasi" + +msgid "soap/melodram/folkloric" +msgstr "" + +msgid "social/political issues/economics (general)" +msgstr "" + +msgid "social/spiritual science" +msgstr "" + +msgid "sorting of playlists" +msgstr "esitusloendite järjestamine." + +msgid "special characters" +msgstr "erimärgid" + +msgid "special events" +msgstr "" + +msgid "special format data DVD (HDTV compatible)" +msgstr "eri vormingus data DVD" + +msgid "sports (general)" +msgstr "" + +msgid "sports magazine" +msgstr "" + +msgid "standard" +msgstr "tavaline" + +msgid "start cut here" +msgstr "alusta lõiget siit" + +msgid "start directory" +msgstr "juur kaust" + +msgid "stepsize" +msgstr "sammu suurus" + +msgid "stereo" +msgstr "stereo" + +msgid "stop using as startup service" +msgstr "ära kasuta käivituskanalina" + +msgid "switch to bookmarks" +msgstr "mine lemmikute-loendisse" + +msgid "switch to filelist" +msgstr "mine faililoendisse" + +msgid "switch to the next angle" +msgstr "vali järgmine vaatenurk" + +msgid "switch to the next audio track" +msgstr "vali järgmine helikanal" + +msgid "switch to the next subtitle language" +msgstr "vali järgmine subtiiter" + +msgid "talk show" +msgstr "jutusaade" + +msgid "team sports" +msgstr "" + +msgid "technology/natural science" +msgstr "" + +msgid "template file" +msgstr "" + +msgid "tennis/squash" +msgstr "tennis/squash" + +msgid "this recording" +msgstr "see salvestis" + +msgid "this service is protected by a parental control pin" +msgstr "see kanal on kaitstud lapselukuga" + +msgid "toggle time, chapter, audio, subtitle info" +msgstr "vaheta aja, salvestuse, heli, subtiitri info" + +msgid "top" +msgstr "ülal" + +msgid "tourism/travel" +msgstr "" + +msgid "true" +msgstr "tõene" + +msgid "unavailable" +msgstr "pole saadaval" + +msgid "unconfirmed" +msgstr "kinnitamata" + +msgid "undefined" +msgstr "määramata" + +msgid "unknown" +msgstr "tundmatu" + +msgid "unknown service" +msgstr "tundmatu kanal" + +msgid "unpublished" +msgstr "avaldamata" + +msgid "until standby/restart" +msgstr "kuni ooterežiimini/taaskäivitamiseni" + +msgid "user defined" +msgstr "kasutaja määratud" + +msgid "variety show" +msgstr "" + +msgid "vertical" +msgstr "vertikaal" + +msgid "wait for ci..." +msgstr "ci ootel..." + +msgid "wait for mmi..." +msgstr "mmi ootel..." + +msgid "waiting" +msgstr "ootan" + +msgid "water sport" +msgstr "veesport" + +msgid "weekly" +msgstr "iga nädal" + +msgid "west" +msgstr "lääs" + +msgid "when PiPzap enabled zap channel down..." +msgstr "" + +msgid "when PiPzap enabled zap channel up..." +msgstr "" + +msgid "white" +msgstr "valge" + +msgid "whitelist" +msgstr "" + +msgid "width" +msgstr "laius" + +msgid "winter sport" +msgstr "talisport" + +msgid "wireless network interface" +msgstr "wifi võrguliides" + +#, python-format +msgid "with %d error" +msgid_plural "with %d errors" +msgstr[0] "" +msgstr[1] "" + +msgid "working" +msgstr "töös" + +msgid "yellow" +msgstr "kollane" + +msgid "yes" +msgstr "jah" + +msgid "yes (keep feeds)" +msgstr "jah (hoia feedid)" + +msgid "zap" +msgstr "kanalivahetus" + +msgid "zap and record" +msgstr "" + +msgid "zapped" +msgstr "vahetatud" + +#~ msgid "AA" +#~ msgstr "AA" + +#~ msgid "AB" +#~ msgstr "AB" + +#~ msgid "Activate PiP" +#~ msgstr "Ava pilt-pildis" + +#~ msgid "Add/remove timer for current event" +#~ msgstr "Lisa/eemalda taimer käesolevale saatele" + +#~ msgid "Adjust HDMI CEC settings" +#~ msgstr "Kohanda HDMI CEC seadeid" + +#~ msgid "All satellites" +#~ msgstr "Kõik satelliidid" + +#~ msgid "BA" +#~ msgstr "BA" + +#~ msgid "BB" +#~ msgstr "BB" + +#~ msgid "Behavior of 'pause' when paused" +#~ msgstr "Paus-nupu funktsioon" + +#~ msgid "Committed DiSEqC command" +#~ msgstr "Committed DiSEqC-käsk" + +#~ msgid "Configure the behavior of the 'pause' key when movie playback is already paused." +#~ msgstr "Määra 'paus' nupu toime, kui filmi esitus on juba peatatud." + +#~ msgid "DiSEqC repeats" +#~ msgstr "DiSEqC-kordused" + +#~ msgid "Goto specific data/time" +#~ msgstr "Mine kindlale kellaajale/kuupäevale" + +#~ msgid "No satellite frontend found!!" +#~ msgstr "Ei leitud satelliidi tuunerit!!" + +#~ msgid "Open service list and select next channel" +#~ msgstr "Ava kanalinimekiri ja vali järgmine kanal" + +#~ msgid "Open service list and select previous channel" +#~ msgstr "Ava kanalinimekiri ja vali eelmine kanal" + +#~ msgid "Press '0' to toggle internal/external PiP." +#~ msgstr "Sisese ja välise PIP vahetamiseks vajuta '0'." + +#~ msgid "Remove timer" +#~ msgstr "Eemalda taimer" + +#~ msgid "Send DiSEqC" +#~ msgstr "DiSEqC" + +#~ msgid "Switch next channel" +#~ msgstr "Järgmine kanal" + +#~ msgid "Tuning step size" +#~ msgstr "Häälestamise sammu suurus" + +#~ msgid "Uncommitted DiSEqC command" +#~ msgstr "Uncommitted DiSEqC-käsk" + +#~ msgid "Zap back to service before satfinder?" +#~ msgstr "Tagasi vaadatud kanalile?" + +#~ msgid "tuner is not supported" +#~ msgstr "tuuner pole toetatud" diff --git a/po/fa.po b/po/fa.po new file mode 100644 index 0000000..49badb5 --- /dev/null +++ b/po/fa.po @@ -0,0 +1,8291 @@ +# Persian translations for Enigma2. +# +msgid "" +msgstr "" +"Project-Id-Version: enigma2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-07-21 19:08+0200\n" +"PO-Revision-Date: 2012-06-07 14:10+0330\n" +"Last-Translator: Persian Prince <persianprince@persianpros.org>\n" +"Language-Team: Persian Professionals <persianpros@yahoo.com>\n" +"Language: fa\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: Pootle 2.0.3\n" +"X-Poedit-Language: Persian\n" +"X-Poedit-Country: IRAN, ISLAMIC REPUBLIC OF\n" + +# +msgid "" +"\n" +"Advanced options and settings." +msgstr "" +"\n" +"گزینه ها و تنظیمات پیشرفته" + +msgid "" +"\n" +"After pressing OK, please wait!" +msgstr "" +"\n" +"بعد از فشار دادن دکمه OK لطفا صبر کنید" + +msgid "" +"\n" +"Backup your receiver settings." +msgstr "" + +# +msgid "" +"\n" +"Edit the upgrade source address." +msgstr "" +"\n" +"ویرایش آدرس منبع به روز رسانی" + +msgid "" +"\n" +"Manage extensions or plugins for your receiver" +msgstr "" + +msgid "" +"\n" +"Online update of your receiver software." +msgstr "" + +msgid "" +"\n" +"Press OK on your remote control to continue." +msgstr "" +"\n" +"دکمه OK را برای ادامه دادن فشار دهید" + +# +msgid "" +"\n" +"Restore your backups by date." +msgstr "" +"\n" +"بازگردانی نسخه های پشتیبان شما توسط تاریخ" + +msgid "" +"\n" +"Restore your receiver settings." +msgstr "" + +msgid "" +"\n" +"Restore your receiver with a new firmware." +msgstr "" + +# +msgid "" +"\n" +"Scan for local extensions and install them." +msgstr "" +"\n" +"اسکن برای بسته های محلی و نصب آنها" + +# +msgid "" +"\n" +"Select your backup device.\n" +"Current device: " +msgstr "" +"\n" +"وسیله مورد نظر برای تهیه نسخه پشتیبان را انتخاب کنید\n" +"وسیله فعلی: " + +msgid "" +"\n" +"View, install and remove available or installed packages." +msgstr "" +"\n" +"مشاهده ، نصب و حذف بسته های در دسترس و یا نصب شده" + +msgid " (PiP)" +msgstr "(تصویر در تصویر)" + +msgid " (Radio)" +msgstr "(رادیو)" + +msgid " (TV)" +msgstr "(تلوزیون)" + +msgid " (disabled)" +msgstr "" + +msgid " (higher than any auto)" +msgstr "" + +msgid " (higher than rotor any auto)" +msgstr "" + +msgid " (lower than any auto)" +msgstr "" + +msgid " extensions." +msgstr "بسته ها" + +msgid " ms" +msgstr "میلی ثانیه" + +msgid " packages selected." +msgstr "بسته های انتخاب شده" + +# +msgid " updates available." +msgstr "به روز رسانی های در دسترس" + +#. TRANSLATORS: short time representation hour:minute +#, python-format +msgid "%2d:%02d" +msgstr "%2d:%02d" + +#. TRANSLATORS: full time representation hour:minute:seconds +#, python-format +msgid "%2d:%02d:%02d" +msgstr "%2d:%02d:%02d" + +msgid "%A %d %B" +msgstr "" + +#. TRANSLATORS: long date representations dayname daynum monthname in strftime() format! See 'man strftime' +msgid "%A %e %B" +msgstr "%A %e %B" + +#. TRANSLATORS: full date representation dayname daynum monthname year in strftime() format! See 'man strftime' +msgid "%A %e %B %Y" +msgstr "%A %e %B %Y" + +msgid "%H:%M" +msgstr "%ساعت:%دقیقه" + +#. TRANSLATORS: short date representation short dayname daynum short monthname in strftime() format! See 'man strftime' +msgid "%a %e/%m" +msgstr "%a %e/%m" + +#. TRANSLATORS: long date representation short dayname daynum short monthname hour:minute in strftime() format! See 'man strftime' +msgid "%a %e/%m %-H:%M" +msgstr "%a %e/%m %-H:%M" + +#. TRANSLATORS: Intermediate scanning result, '%d' channel(s) have been found so far +#, fuzzy, python-format +msgid "%d channel found" +msgid_plural "%d channels found" +msgstr[0] "%d کانال یافت شد" + +#, python-format +msgid "%d file" +msgid_plural "%d files" +msgstr[0] "" + +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d ساعت" + +#, fuzzy, python-format +msgid "%d job is running in the background!" +msgid_plural "%d jobs are running in the background!" +msgstr[0] "%d عملیات در پس زمینه انجام میشود" + +#, python-format +msgid "%d min" +msgstr "%d دقیقه" + +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d دقیقه" + +#, python-format +msgid "%d minutes" +msgstr "%d دقیقه" + +#, python-format +msgid "%d pixel wide" +msgid_plural "%d pixels wide" +msgstr[0] "" + +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "%d ثانیه" + +#, fuzzy, python-format +msgid "%d subdirectory" +msgid_plural "%d subdirectories" +msgstr[0] "پوشه root" + +#, fuzzy, python-format +msgid "%d wireless network found!" +msgid_plural "%d wireless networks found!" +msgstr[0] "1 شبکه بدون سیم یافت شد" + +#, fuzzy +msgid "%d-%b-%Y %-H:%M" +msgstr "%a %e/%m %-H:%M" + +msgid "%d-%m" +msgstr "" + +msgid "%d.%B %Y" +msgstr "%d.%B %Y" + +#. TRANSLATORS: VFD hour:minute daynum short monthname in strftime() format! See 'man strftime' +msgid "%k:%M %e/%m" +msgstr "%k:%M %e/%m" + +#, python-format +msgid "%s %s free disk space" +msgstr "" + +#, python-format +msgid "%s (%s)\n" +msgstr "%s (%s)\n" + +#. TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. +#, python-format +msgid "%s is no longer used. Should it be deleted?" +msgstr "" + +# +#, fuzzy, python-format +msgid "%s updated package available" +msgid_plural "%s updated packages available" +msgstr[0] "به روز رسانی های در دسترس" + +#, python-format +msgid "%s%d min" +msgstr "" + +#, python-format +msgid "%s/%s: %s" +msgstr "" + +msgid "(ZAP)" +msgstr "(حذف)" + +msgid "(empty)" +msgstr "(خالی)" + +msgid "(show optional DVD audio menu)" +msgstr "(نمایش منوی اختیای صدای DVD)" + +# +msgid "* Only available if more than one interface is active." +msgstr "فقط زمانی در دسترس است که بیش از یک رابط فعال باشد" + +msgid "/s" +msgstr "" + +msgid "0" +msgstr "0" + +msgid "1" +msgstr "1" + +msgid "1.0" +msgstr "1.0" + +msgid "1.1" +msgstr "1.1" + +msgid "1.2" +msgstr "1.2" + +msgid "12V output" +msgstr "خروجی 12 ولت" + +msgid "13 V" +msgstr "13 ولت" + +msgid "16:10" +msgstr "16:10" + +msgid "16:10 Letterbox" +msgstr "16:10 Letterbox" + +msgid "16:10 PanScan" +msgstr "16:10 PanScan" + +msgid "16:9" +msgstr "16:9" + +msgid "16:9 Letterbox" +msgstr "16:9 Letterbox" + +msgid "16:9 always" +msgstr "16:9 همیشه" + +msgid "18 V" +msgstr "18 ولت" + +msgid "2" +msgstr "2" + +msgid "23.976" +msgstr "" + +msgid "24" +msgstr "" + +msgid "25" +msgstr "" + +msgid "29.97" +msgstr "" + +msgid "3" +msgstr "3" + +msgid "30" +msgstr "" + +msgid "3d mode" +msgstr "حالت 3 بعدی" + +msgid "4" +msgstr "4" + +msgid "4:3" +msgstr "4:3" + +msgid "4:3 Letterbox" +msgstr "4:3 Letterbox" + +msgid "4:3 PanScan" +msgstr "4:3 PanScan" + +msgid "5" +msgstr "5" + +msgid "6" +msgstr "6" + +msgid "7" +msgstr "7" + +msgid "8" +msgstr "8" + +msgid "9" +msgstr "9" + +#, python-format +msgid ": %s" +msgstr "" + +msgid "<Current movielist location>" +msgstr "<محل فعلی لیست فیلم>" + +msgid "<Default movie location>" +msgstr "<محل پیش فرض فیلم>" + +msgid "<Last timer location>" +msgstr "<آخرین مکان زمان>" + +msgid "<unknown>" +msgstr "<نامشخص>" + +msgid "??" +msgstr "??" + +msgid "A" +msgstr "A" + +#, fuzzy, python-format +msgid "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" +msgstr "" +"فایل پیکربندی (%s) از زمان نصب تغییر کرده است\n" +".آیا میخواهید نسخه خود را حفظ کنید ؟" + +#, python-format +msgid "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" +msgstr "" +"فایل پیکربندی (%s) از زمان نصب تغییر کرده است\n" +".آیا میخواهید نسخه خود را حفظ کنید ؟" + +msgid "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" + +msgid "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" + +msgid "A graphical EPG for all services of an specific bouquet" +msgstr "رابط گرافیکی EPG برای همه کانال های یک لیست خاص" + +#, python-format +msgid "" +"A record has been started:\n" +"%s" +msgstr "" +"ضبط کردن شروع شد\n" +"%s" + +msgid "" +"A recording is currently running.\n" +"What do you want to do?" +msgstr "" +"یک عمل ضبط کردن در حال اجرا است\n" +"قصد انجام چه کاری را دارید ؟" + +msgid "A recording is currently running. Please stop the recording before trying to configure the positioner." +msgstr "یک عمل ضبط کردن در حال اجرا است ، لطفا قبل از پیکربندی مکان یاب عمل ضبط را متوقف کنید" + +msgid "A recording is currently running. Please stop the recording before trying to scan." +msgstr "ضبط کردن در حال اجرا است ، لطفا قبل از اسکن کردن ضبط را متوقف کنید" + +msgid "A recording is currently running. Please stop the recording before trying to start the satfinder." +msgstr "یک عمل ضبط کردن در حال اجرا است ، لطفا قبل از اجرای ماهواره یاب عمل ضبط را متوقف کنید" + +#, python-format +msgid "A required tool (%s) was not found." +msgstr "ابزار (%s) مورد نیاز یافت نشد" + +msgid "A search for available updates is currently in progress." +msgstr "جستجو برای آپدیت های در دسترس ، در حال حاضر در حال انجام است" + +msgid "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" +msgstr "" +"پیکربندی دوم برای رابط یافت شده است\n" +"\n" +"آیا میخواهید رابط دوم شبکه غیر فعال شود ؟" + +msgid "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" + +msgid "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" + +msgid "A small overview of the available icon states and actions." +msgstr "" + +msgid "" +"A timer failed to record!\n" +"Disable TV and try again?\n" +msgstr "" +"زمان برای ضبط ناموفق بود\n" +"غیر فعال کردن تلوزیون و سعی مجدد ؟\n" + +#, fuzzy +msgid "A/V settings" +msgstr "تنظیمات تصویر و صدا" + +msgid "AC3/DTS downmix" +msgstr "AC3/DTS downmix" + +msgid "Abort" +msgstr "لغو" + +msgid "About" +msgstr "درباره" + +msgid "About..." +msgstr "درباره" + +# +msgid "Accesspoint:" +msgstr "نقطه دسترسی:" + +msgid "Action on long powerbutton press" +msgstr "عمل کردن هنگام فشار دادن طولانی دکمه روشن/خاموش" + +msgid "Action on short powerbutton press" +msgstr "عمل کردن هنگام فشار دادن کوتاه دکمه روشن/خاموش" + +msgid "Activate Picture in Picture" +msgstr "فعال کردن تصویر در تصویر" + +#, fuzzy +msgid "Activate current configuration" +msgstr "اضافه کردن پیکربندی شبکه؟" + +msgid "Activate network settings" +msgstr "فعال کردن تنظیمات شبکه" + +#, fuzzy +msgid "Activate the configured network settings." +msgstr "فعال کردن تنظیمات شبکه" + +msgid "Adapter settings" +msgstr "تنظیمات آداپتور" + +msgid "Add" +msgstr "اضافه کردن" + +msgid "Add Bookmark" +msgstr "" + +msgid "Add a mark" +msgstr "اضافه کردن علامت" + +#, fuzzy +msgid "Add a nameserver entry" +msgstr "Nameserver تنظیمات" + +msgid "Add a new title" +msgstr "اضافه کردن عنوان جدید" + +#, fuzzy +msgid "Add bookmark" +msgstr "اضافه کردن علامت" + +msgid "Add directory to playlist" +msgstr "" + +msgid "Add file to playlist" +msgstr "" + +msgid "Add files to playlist" +msgstr "" + +#, fuzzy +msgid "Add more details to the crash log" +msgstr "ساخت گزارش خطای دقیق تر" + +#, fuzzy +msgid "Add provider" +msgstr "ارائه کننده" + +#, fuzzy +msgid "Add recording (enter recording duration)" +msgstr "اضافه کردن پیکربندی شبکه؟" + +#, fuzzy +msgid "Add recording (enter recording endtime)" +msgstr "لطفا زمان پایان ضبط کردن را تغییر دهید" + +#, fuzzy +msgid "Add recording (indefinitely)" +msgstr "هیچ اطلاعات رخدادی یافت نشد ، ضبط کردن به صورت نامحدود" + +#, fuzzy +msgid "Add recording (stop after current event)" +msgstr "اضافه/حذف زمان از رخداد فعلی" + +#, fuzzy +msgid "Add service" +msgstr "کانال" + +msgid "Add timer" +msgstr "اضافه کردن زمان" + +msgid "Add title" +msgstr "اضافه کردن عنوان" + +msgid "Add to bouquet" +msgstr "اضافه کردن به لیست" + +msgid "Add to favourites" +msgstr "اضافه کردن به مورد علاقه" + +msgid "Add/remove change timer for current event" +msgstr "" + +msgid "Adjust 3D settings" +msgstr "تنظیمات 3 بعدی" + +msgid "Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens." +msgstr "تنظیم کردن تنظیمات رنگ طوری که سایه های رنگ ها مشخص باشد ، اما تا حد امکان به صورت اشباع شده نمایان شود ، اگر شما از نتیجه راضی هستید دکمه OK را برای بستن \"میزان مناسب تصویر\" فشار دهید و یا از اعداد ریموت کنترل برای تست های دیگر صفحه نمایش استفاده کنید" + +msgid "Advanced" +msgstr "" + +#, fuzzy +msgid "Advanced options" +msgstr "گزینه های پیشرفته" + +msgid "Advanced restore" +msgstr "بازگردانی پیشرفته" + +#, fuzzy +msgid "Advanced software" +msgstr "نرم افزار پیشرفته" + +# +#, fuzzy +msgid "Advanced software plugin" +msgstr "پلاگین پیشرفته نرم افزار" + +#, fuzzy +msgid "Advanced video enhancement setup" +msgstr "تنظیمات پیشرفته بهینه تصویر" + +#, fuzzy +msgid "Advanced video setup" +msgstr "تنظیمات پیشرفته تصویر" + +msgid "After event" +msgstr "بعد از رویداد" + +msgid "Album" +msgstr "آلبوم" + +msgid "Alignment of events" +msgstr "" + +msgid "Alignment of service names" +msgstr "" + +msgid "All" +msgstr "همه" + +msgid "All ages" +msgstr "" + +msgid "All satellites 1 (USALS)" +msgstr "" + +msgid "All satellites 2 (USALS)" +msgstr "" + +msgid "All satellites 3 (USALS)" +msgstr "" + +msgid "All satellites 4 (USALS)" +msgstr "" + +msgid "Allocate" +msgstr "اختصاص دادن" + +msgid "Allocate unused memory index" +msgstr "" + +msgid "Allow quit movieplayer with exit" +msgstr "" + +msgid "Allow subtitle language to equal audio language" +msgstr "" + +msgid "Allow subtitles for hearing impaired" +msgstr "" + +msgid "Alpha" +msgstr "الفبا" + +#, fuzzy +msgid "Alternative" +msgstr "حالت رادیو متناوب" + +#, fuzzy +msgid "Alternative numbering mode" +msgstr "حالت رادیو متناوب" + +msgid "Alternative services tuner priority" +msgstr "اولویت کانال های متناوب تیونر" + +msgid "Always ask" +msgstr "همیشه پرسیده شود" + +msgid "Always hide infobar" +msgstr "" + +msgid "An empty filename is illegal." +msgstr "بدون نام بودن برای یک فایل غیر مجاز است" + +msgid "An error occurred while downloading the packetlist. Please try again." +msgstr "" + +msgid "An unknown error occurred!" +msgstr "خطای نامشخصی رخ داد" + +msgid "And will put your receiver in standby over " +msgstr "" + +msgid "Any activity" +msgstr "هر فعالیتی" + +msgid "Arabic" +msgstr "عربی" + +msgid "Are you sure to remove this entry?" +msgstr "" + +# +msgid "" +"Are you sure you want to activate this network configuration?\n" +"\n" +msgstr "" +"آیا مطمئن هستید که میخواهید این پیکربندی شبکه را فعال کنید ؟\n" +"\n" + +#, fuzzy +msgid "" +"Are you sure you want to delete\n" +"the following backup:\n" +msgstr "" +"آیا مطمئن هستید که میخواهید\n" +"این نسخه پشتیبان را حذف کنید\n" + +msgid "Are you sure you want to exit this wizard?" +msgstr "آیا مطمئن هستید که میخواهید از این هدایتگر خارج شوید ؟" + +msgid "" +"Are you sure you want to restart your network interfaces?\n" +"\n" +msgstr "" +"آیا مطمئن هستید که میخواهید رابط های شبکه خود را دوباره راه اندازی کنید ؟\n" +"\n" + +# +#, fuzzy, python-format +msgid "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"آیا مطمئن هستید که میخواهید نسخه پشتیبان انیگما 2 خود را بازگردانی کنید ؟\n" +"انیگما 2 بعد از این بازگردانی دوباره راه اندازی میشود" + +# +#, fuzzy +msgid "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"آیا مطمئن هستید که میخواهید نسخه پشتیبان انیگما 2 خود را بازگردانی کنید ؟\n" +"انیگما 2 بعد از این بازگردانی دوباره راه اندازی میشود" + +msgid "Artist" +msgstr "هنرمند" + +msgid "Arts/Culture" +msgstr "" + +msgid "Ask user" +msgstr "پرسش از کاربر" + +#, fuzzy +msgid "Aspect ratio" +msgstr "نسبت تصویر" + +msgid "Assigned CAIds:" +msgstr "" + +msgid "Assigned services/provider:" +msgstr "" + +#, fuzzy +msgid "At beginning" +msgstr "شروع از ابتدای کار" + +msgid "At end" +msgstr "" + +msgid "Audio" +msgstr "صدا" + +msgid "Audio PID" +msgstr "PID صدا" + +msgid "Audio language selection 1" +msgstr "انتخاب زبان صدا 1" + +msgid "Audio language selection 2" +msgstr "انتخاب زبان صدا 2" + +msgid "Audio language selection 3" +msgstr "انتخاب زبان صدا 3" + +msgid "Audio language selection 4" +msgstr "انتخاب زبان صدا 4" + +#, fuzzy +msgid "Audio options..." +msgstr "تنظیمات صدا" + +#, python-format +msgid "Audio track (%s) format" +msgstr "" + +#, python-format +msgid "Audio track (%s) language" +msgstr "" + +msgid "Author: " +msgstr "مولف:" + +msgid "Authoring mode" +msgstr "حالت تالیف" + +#. TRANSLATORS: (aspect ratio policy: always try to display as fullscreen, when there is no content (black bars) on left/right, even if this breaks the aspect. +msgid "Auto" +msgstr "خودکار" + +msgid "Auto chapter split every ? minutes (0=never)" +msgstr "ایجاد فصل به صورت خودکار بر حسب دقیقه ؟ صفر به معنی هیچ وقت است" + +# +msgid "Auto flesh" +msgstr "خودکار flesh" + +msgid "Auto focus" +msgstr "فوکوس خودکار" + +msgid "Auto focus commencing ..." +msgstr "" + +msgid "Auto language selection" +msgstr "انتخاب زبان خودکار" + +msgid "Auto scart switching" +msgstr "جایگزینی خودکار scart" + +msgid "Automatic" +msgstr "خودکار" + +#, fuzzy +msgid "Automatic scan" +msgstr "اسکن خودکار" + +msgid "Automatically start timeshift after" +msgstr "" + +msgid "Automatically turn on external subtitles" +msgstr "" + +msgid "Available format variables" +msgstr "متغیر های فرمت در دسترس" + +msgid "B" +msgstr "B" + +msgid "BER" +msgstr "مقدار خطا" + +msgid "BER:" +msgstr "مقدار خطا:" + +msgid "Back" +msgstr "بازگشت" + +msgid "Background" +msgstr "پس زمینه" + +#, fuzzy +msgid "Background color" +msgstr "پس زمینه" + +msgid "Background delete option" +msgstr "" + +msgid "Background delete speed" +msgstr "سرعت حذف پس زمینه" + +#, fuzzy +msgid "Backup completed." +msgstr "تهیه نسخه پشتیبان ناموفق" + +msgid "Backup failed." +msgstr "تهیه نسخه پشتیبان ناموفق" + +# +msgid "Backup is running..." +msgstr "نسخه پشتیبان در حال اجرا است" + +msgid "Backup system settings" +msgstr "تهیه نسخه پشتیبان از تنظیمات" + +msgid "Band" +msgstr "باند" + +msgid "Bandwidth" +msgstr "پهنای باند" + +msgid "Basque" +msgstr "" + +msgid "Begin time" +msgstr "زمان شروع" + +msgid "Behavior of 'pause and ok' when paused" +msgstr "" + +msgid "Behavior of 0 key in PiP-mode" +msgstr "عملکرد دکمه 0 در حالت تصویر در تصویر" + +msgid "Behavior when a movie is started" +msgstr "عملکرد هنگامی که یک فیلم شروع میشود" + +msgid "Behavior when a movie is stopped" +msgstr "عملکرد هنگامی که یک فیلم متوقف میشود" + +msgid "Behavior when a movie reaches the end" +msgstr "عملکرد هنگامی که یک فیلم به پایان میرسد" + +msgid "Big PiP" +msgstr "" + +msgid "Bitrate:" +msgstr "میزان ارسال" + +msgid "Black screen" +msgstr "صفحه نمایش سیاه" + +msgid "Black screen till locked" +msgstr "صفحه نمایش سیاه تا زمانی که قفل شود" + +# +msgid "Block noise reduction" +msgstr "بستن کاهش صدا" + +msgid "Blue boost" +msgstr "Blue boost" + +msgid "Bookmarks" +msgstr "علامت ها" + +msgid "Brightness" +msgstr "روشنایی" + +msgid "Bulgarian" +msgstr "بلغاری" + +msgid "Burn DVD" +msgstr "رایت DVD" + +#, fuzzy, python-format +msgid "Burn audio track (%s)" +msgstr "انتخاب آهنگ صوتی" + +# +msgid "Burn existing image to DVD" +msgstr "رایت ایمیج موجود روی DVD" + +msgid "Burn to DVD" +msgstr "رایت در DVD" + +msgid "Bus: " +msgstr "گذرگاه:" + +msgid "By default, SNR will be shown in dB (when supported by the tuner). This setting forces SNR to be shown as a percentage instead." +msgstr "" + +msgid "C" +msgstr "C" + +msgid "C-Band" +msgstr "باند C" + +msgid "CH" +msgstr "" + +# +msgid "CI assignment" +msgstr "CI وظیفه" + +msgid "CVBS" +msgstr "CVBS" + +msgid "Cable" +msgstr "کابل" + +msgid "Cable Scan" +msgstr "اسکن کابلی" + +#, fuzzy +msgid "Cache thumbnails" +msgstr "ذخیره کردن عکس های کوچک" + +msgid "Calculate" +msgstr "محاسبه" + +msgid "Calculate all positions" +msgstr "محاسبه همه موقعیت ها" + +msgid "Calculation complete" +msgstr "محاسبه کامل شد" + +msgid "Calibrate" +msgstr "" + +msgid "Can be used for different fps between external subtitles and video." +msgstr "" + +msgid "Cancel" +msgstr "انصراف" + +msgid "Cannot determine" +msgstr "نمیتوان تعیین کرد" + +msgid "Cannot find any signal ..., aborting !" +msgstr "" + +msgid "Cannot move files on a different disk or system to the trash can" +msgstr "" + +msgid "Cannot move to trash can" +msgstr "نمیتوان به سطل زباله انتقال داد" + +msgid "Capacity: " +msgstr "ظرفیت:" + +msgid "Card" +msgstr "کارت" + +msgid "Cascade PiP" +msgstr "" + +#, fuzzy +msgid "Center DVB subtitles" +msgstr "زیرنویس وسط DVB" + +msgid "Center time-labels and remove date" +msgstr "" + +msgid "Change bouquets in quickzap" +msgstr "تغییر لیست در جابجایی سریع کانال" + +msgid "Change pin code" +msgstr "تغییر رمز" + +#, fuzzy +msgid "Change recording (duration)" +msgstr "لطفا زمان پایان ضبط کردن را تغییر دهید" + +#, fuzzy +msgid "Change recording (endtime)" +msgstr "لطفا زمان پایان ضبط کردن را تغییر دهید" + +msgid "Change repeat and delay settings?" +msgstr "تنظیمات تکرار و تاخیر تغییر کند ؟" + +msgid "Change service PIN" +msgstr "تغییر رمز کانال" + +msgid "Change service PINs" +msgstr "تغییر رمز های کانال" + +msgid "Change setup PIN" +msgstr "تغییر رمز تنظیمات" + +msgid "Change step size" +msgstr "تغییر اندازه step" + +msgid "Change timer" +msgstr "" + +msgid "Changelog" +msgstr "تغییرات" + +msgid "Channel" +msgstr "کانال" + +#, fuzzy +msgid "Channel list type" +msgstr "منوی لیست کانال" + +msgid "Channel not in services list" +msgstr "کانال در لیست کانال ها وجود ندارد" + +#, fuzzy +msgid "Channel selection" +msgstr "انتخاب کانال" + +msgid "Channel:" +msgstr "کانال:" + +msgid "Channellist menu" +msgstr "منوی لیست کانال" + +msgid "Chap." +msgstr "فصل" + +msgid "Chapter" +msgstr "فصل" + +msgid "Chapter:" +msgstr "فصل:" + +msgid "Check" +msgstr "بررسی" + +msgid "Check the internet connection" +msgstr "" + +msgid "Check the internet connection again" +msgstr "" + +#, fuzzy +msgid "Checking filesystem..." +msgstr "بررسی کردن سیستم فایل" + +msgid "Checking the internet connection" +msgstr "" + +#, python-format +msgid "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" +msgstr "" + +msgid "Children/Youth" +msgstr "" + +msgid "Choose which tuner to configure." +msgstr "" + +msgid "Circular left" +msgstr "چرخش چپ" + +msgid "Circular right" +msgstr "چرخش راست" + +msgid "Cleanup" +msgstr "پاک سازی" + +msgid "Clear" +msgstr "پاک سازی" + +msgid "Clear before scan" +msgstr "پاک سازی قبل از اسکن" + +msgid "Clear fixed" +msgstr "" + +msgid "Clear log" +msgstr "پاک سازی گزارش" + +#, fuzzy +msgid "Clear playlist" +msgstr "ذخیره لیست پخش" + +msgid "Close" +msgstr "بستن" + +msgid "Close PiP on exit" +msgstr "" + +msgid "Close title selection" +msgstr "بستن انتخاب کردن عنوان" + +msgid "Code rate HP" +msgstr "نرخ کد HP" + +msgid "Code rate LP" +msgstr "نرخ کد LP" + +msgid "Coderate HP" +msgstr "Coderate HP" + +msgid "Coderate LP" +msgstr "Coderate LP" + +msgid "Collection name" +msgstr "نام مجموعه" + +msgid "Collection settings" +msgstr "تنظیمات مجموعه" + +#, fuzzy +msgid "Color format" +msgstr "فرمت رنگ" + +msgid "Command execution..." +msgstr "اجرای فرمان" + +msgid "Command order" +msgstr "ترتیب فرمان" + +msgid "Common Interface" +msgstr "رابط مشترک" + +#, fuzzy +msgid "Common Interface assignment" +msgstr "تخصیص رابط مشترک" + +msgid "Communication" +msgstr "ارتباط" + +#, fuzzy +msgid "Compact flash" +msgstr "فلش فشرده" + +msgid "Complete" +msgstr "کامل" + +msgid "Complex (allows mixing audio tracks and aspects)" +msgstr "مختلط (اجازه میدهد که قطعات موسیقی و مناظر ترکیب شوند)" + +msgid "Composition of the recording filenames" +msgstr "ترکیب نام های فایل های ضبط" + +#, fuzzy +msgid "Configuration mode" +msgstr "حالت پیکربندی: " + +#, fuzzy, python-format +msgid "Configuration mode: %s" +msgstr "حالت پیکربندی: " + +#, fuzzy +msgid "Configuration..." +msgstr "پیکربندی شبکه" + +msgid "Configure an additional delay to improve external subtitle synchronisation." +msgstr "" + +msgid "Configure an additional delay to improve subtitle synchronisation." +msgstr "" + +msgid "Configure for how long the infobar will remain visible after activation." +msgstr "" + +msgid "Configure for how many minutes finished events should remain visible in the EPG. Useful when you need information about an event which has just finished, or has been delayed." +msgstr "" + +msgid "Configure how recording filenames are constructed." +msgstr "" + +msgid "Configure how the fan should operate" +msgstr "" + +msgid "Configure if and how crypto icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how long the latest service in the PiP will be remembered." +msgstr "" + +msgid "Configure if and how service type icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how wide columns will be shown in the channel selection list." +msgstr "" + +msgid "Configure if service picons will be shown in the channel selection list." +msgstr "" + +msgid "Configure interface" +msgstr "رابط مشترک" + +# +msgid "Configure nameservers" +msgstr "پیکربندی nameservers" + +msgid "Configure on which devices the background delete option should be used." +msgstr "" + +#, fuzzy +msgid "Configure remote control type" +msgstr "نوع کنترل والدین" + +msgid "Configure the DiSEqC mode for this LNB." +msgstr "" + +#, fuzzy +msgid "Configure the IP address." +msgstr "رابط مشترک" + +msgid "Configure the aspect ratio of the screen." +msgstr "" + +msgid "Configure the behavior of the 'pause and ok' key when movie playback is already paused." +msgstr "" + +#, fuzzy +msgid "Configure the behavior when movie playback is manually stopped." +msgstr "عملکرد هنگامی که یک فیلم متوقف میشود" + +#, fuzzy +msgid "Configure the behavior when movie playback is started." +msgstr "عملکرد هنگامی که یک فیلم شروع میشود" + +msgid "Configure the behavior when reaching the end of a movie, during movie playback." +msgstr "" + +msgid "Configure the border width of the subtitles. The dark border makes the subtitles easier to read on a light background." +msgstr "" + +msgid "Configure the brightness level of the front panel display during standby." +msgstr "" + +msgid "Configure the brightness level of the front panel display." +msgstr "" + +msgid "Configure the color of the external subtitles, alternative (normal in white, italic in yellow, bold in cyan, underscore in green), white or yellow." +msgstr "" + +msgid "Configure the color of the teletext subtitles." +msgstr "" + +msgid "Configure the contrast level of the front panel display." +msgstr "" + +msgid "Configure the cursor behaviour in the channel selection list. When opening the channel selection list you can keep on the current service or already select up/down and you are able to revert the B+/B- buttons." +msgstr "" + +msgid "Configure the duration in hours the receiver should go to standby when the receiver is not controlled." +msgstr "" + +msgid "Configure the duration in minutes for the screensaver." +msgstr "" + +msgid "Configure the duration in minutes for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +msgstr "" + +msgid "Configure the duration when the receiver should go to shut down in case the receiver is in standby mode." +msgstr "" + +msgid "Configure the first audio language (highest priority)." +msgstr "" + +msgid "Configure the first subtitle language (highest priority)." +msgstr "" + +msgid "Configure the font size of the subtitles." +msgstr "" + +msgid "Configure the fourth audio language." +msgstr "" + +msgid "Configure the fourth subtitle language." +msgstr "" + +msgid "Configure the function of a long press on the power button." +msgstr "" + +msgid "Configure the function of a short press on the power button." +msgstr "" + +msgid "Configure the function of the '0' button do when PIP is active." +msgstr "" + +#, fuzzy +msgid "Configure the gateway." +msgstr "رابط مشترک" + +msgid "Configure the general audio delay of Dolby Digital sound tracks." +msgstr "" + +msgid "Configure the general audio delay of stereo sound tracks." +msgstr "" + +msgid "Configure the hard disk drive to go to standby after the specified idle time." +msgstr "" + +msgid "Configure the horizontal alignment of the subtitles." +msgstr "" + +msgid "Configure the initial fast forward speed. When you press the fast forward button, winding will start at this speed." +msgstr "" + +msgid "Configure the initial rewind speed. When you press the rewind button, winding will start at this speed." +msgstr "" + +msgid "Configure the latitude of your location." +msgstr "" + +msgid "Configure the longitude of your location." +msgstr "" + +msgid "Configure the minimum amount of disk space to be available for recordings. When the amount of space drops below this value, deleted items will be removed from the trash can." +msgstr "" + +# +#, fuzzy +msgid "Configure the nameserver (DNS)." +msgstr "پیکربندی nameservers" + +#, fuzzy +msgid "Configure the netmask." +msgstr "رابط مشترک" + +msgid "Configure the number of days after which items are automaticaly removed from the trash can." +msgstr "" + +msgid "Configure the number of days old timers are kept before they are automatically removed from the timer list." +msgstr "" + +msgid "Configure the offline decoding delay in milliseconds. The configured delay is observed at each control word parity change." +msgstr "" + +#, fuzzy +msgid "Configure the possible fast forward speeds." +msgstr "آماده سازی سرعت پرش به جلوی سریع" + +msgid "Configure the possible rewind speeds." +msgstr "" + +msgid "Configure the primary EPG language." +msgstr "" + +msgid "Configure the refresh rate of the screen." +msgstr "" + +msgid "Configure the screen resolution in PC output mode." +msgstr "" + +msgid "Configure the second audio language." +msgstr "" + +msgid "Configure the second subtitle language." +msgstr "" + +msgid "Configure the secondary EPG language." +msgstr "" + +msgid "Configure the sharpness of the video scaling." +msgstr "" + +msgid "Configure the skip time interval for the '1'/'3' buttons." +msgstr "" + +msgid "Configure the skip time interval for the '4'/'6' buttons." +msgstr "" + +msgid "Configure the skip time interval for the '7'/'9' buttons." +msgstr "" + +#, fuzzy +msgid "Configure the slow motion speeds." +msgstr "سرعت حرکت آهسته" + +msgid "Configure the source of the frontend data as shown on the infobars. 'Settings' is as stored on the settings. 'Tuner' is as reported by the tuner." +msgstr "" + +msgid "Configure the speed of the background deletion process. Lower speed will consume less hard disk drive performance." +msgstr "" + +msgid "Configure the speed of the fan" +msgstr "" + +msgid "Configure the subtitle delay when timing information is not available." +msgstr "" + +msgid "Configure the third audio language." +msgstr "" + +msgid "Configure the third subtitle language." +msgstr "" + +msgid "Configure the transparency of the OSD." +msgstr "" + +msgid "Configure the transparency of the black background of graphical DVB subtitles." +msgstr "" + +#, fuzzy +msgid "Configure the tuner mode." +msgstr "حالت پیکربندی: " + +msgid "Configure the type of status indication icons shown in the movielist." +msgstr "" + +msgid "Configure the vertical position of the subtitles, measured from the bottom of the screen." +msgstr "" + +msgid "Configure the video output mode (or resolution)." +msgstr "" + +msgid "Configure the way in which the receiver changes channels." +msgstr "" + +msgid "Configure where completed timers show up in the timer list." +msgstr "" + +msgid "Configure whether (and for how long) a second infobar will be shown when OK is pressed twice. The second infobar contains additional information about the current channel." +msgstr "" + +msgid "Configure whether multi channel sound tracks should be downmixed to stereo." +msgstr "" + +msgid "Configure whether or not an icon should be shown when your motorized dish is moving." +msgstr "" + +msgid "Configure which access level to use for the configuration menu. Expert level gives access to all items." +msgstr "" + +msgid "Configure which color format should be used on the SCART output." +msgstr "" + +msgid "Configure which tuner for recordings will be preferred, when more than one tuner is available." +msgstr "" + +msgid "Configure which tuner type will be preferred, when the same service is available on different types of tuners." +msgstr "" + +msgid "Configure which tuner will be preferred, when more than one tuner is available. If set to 'auto' the system will give priority to the tuner having the lowest number of channels/satellites." +msgstr "" + +# +msgid "Configure your internal LAN" +msgstr "شبکه سیمی داخلی خود را دوباره پیکربندی کنید" + +# +msgid "Configure your network again" +msgstr "شبکه خود را دوباره پیکربندی کنید" + +msgid "Configure your network settings, and press OK to start the scan" +msgstr "تنظیمات شبکه را پیکربندی کنید ، دکمه OK را برای شروع اسکن فشار دهید" + +# +msgid "Configure your wireless LAN again" +msgstr "شبکه بدون سیم خود را دوباره پیکربندی کنید" + +msgid "Configures which video output connector will be used." +msgstr "" + +msgid "Configuring" +msgstr "پیکربندی" + +msgid "Conflicting timer" +msgstr "زمان متناقض" + +msgid "Connect" +msgstr "وصل کردن" + +#, fuzzy +msgid "Connect to a wireless network" +msgstr "وصل شدن به شبکه بدون سیم" + +msgid "Connected satellites" +msgstr "" + +msgid "Connected to" +msgstr "وصل شده به" + +msgid "Connected!" +msgstr "وصل شد" + +msgid "Constellation" +msgstr "Constellation" + +msgid "Content does not fit on DVD!" +msgstr "مقدار محتوا مناسب برای DVD نیست" + +msgid "Continue" +msgstr "ادامه" + +msgid "Continue in background" +msgstr "ادامه در پس زمینه" + +#, fuzzy +msgid "Continue playback" +msgstr "ادامه پخش کردن" + +msgid "Continue playing" +msgstr "ادامه پخش کردن" + +msgid "Continues play (loop)" +msgstr "" + +msgid "Contrast" +msgstr "کنتراست" + +#, fuzzy +msgid "Convert ext3 filesystem to ext4" +msgstr "تبدیل سیستم فایل ext3 به ext4" + +msgid "Convert ext3 to ext4" +msgstr "تبدیل ext3 به ext4" + +#, fuzzy +msgid "Converting ext3 to ext4..." +msgstr "تبدیل ext3 به ext4" + +msgid "Copy" +msgstr "رونوشت" + +msgid "Could not connect to receiver .NFI image feed server:" +msgstr "" + +msgid "Could not find installed channel list." +msgstr "" + +#, fuzzy +msgid "Could not load medium! No disc inserted?" +msgstr "رسانه قابل لود شدن نیست ، دیسک داخل گذاشته نشده است ؟" + +msgid "Could not open Picture in Picture" +msgstr "تصویر در تصویر باز نمیشود" + +#, fuzzy, python-format +msgid "Could not record due to conflicting timer %s" +msgstr "با توجه به مغایرت زمان %s ضبط کردن مقدور نیست" + +#, fuzzy, python-format +msgid "Could not record due to invalid service %s" +msgstr "با توجه به کانال نامعتبر %s ضبط کردن مقدور نیست" + +# +msgid "Create DVD-ISO" +msgstr "ایجاد DVD-ISO" + +msgid "Create more detailed crash log" +msgstr "ساخت گزارش خطای دقیق تر" + +#, python-format +msgid "Creating directory %s failed." +msgstr "ایجاد شاخه %s ناموفق " + +#, fuzzy +msgid "Creating filesystem" +msgstr "ایجاد سیستم فایل" + +#, fuzzy +msgid "Creating partition" +msgstr "ایجاد پارتیشن" + +msgid "Croatian" +msgstr "کرواسی" + +msgid "Current CEC address" +msgstr "آدرس فعلی CEC" + +msgid "Current device: " +msgstr "وسیله فعلی:" + +msgid "Current event EPG" +msgstr "" + +#, python-format +msgid "Current mode: %s \n" +msgstr "" + +msgid "Current settings:" +msgstr "تنظیمات فعلی:" + +#, fuzzy +msgid "Current transponder" +msgstr "فرستنده فعلی" + +msgid "Current value: " +msgstr "مقدار فعلی:" + +msgid "Current version:" +msgstr "نسخه فعلی:" + +msgid "Currently installed image" +msgstr "ایمیج نصب شده فعلی" + +msgid "Currently the commit log cannot be retrieved - please try later again" +msgstr "" + +#, fuzzy +msgid "Custom skip time for '1'/'3' buttons" +msgstr "پرش سفارشی زمان برای کلید های 1 و3" + +#, fuzzy +msgid "Custom skip time for '4'/'6' buttons" +msgstr "پرش سفارشی زمان برای کلید های 4 و 6" + +#, fuzzy +msgid "Custom skip time for '7'/'9' buttons" +msgstr "پرش سفارشی زمان برای کلید های 7 و 9" + +msgid "Customize" +msgstr "سفارشی" + +msgid "Customize channel list cursor behavior" +msgstr "" + +msgid "Cut" +msgstr "برش" + +msgid "Cutlist editor..." +msgstr "ویرایشگر برش لیست" + +msgid "Czech" +msgstr "چکوسلواکی" + +msgid "D" +msgstr "D" + +msgid "DHCP" +msgstr "DHCP" + +msgid "DMM advanced" +msgstr "" + +msgid "DMM normal" +msgstr "" + +# +msgid "DUAL LAYER DVD" +msgstr "DVD دو لایه" + +msgid "DVB subtitle black transparency" +msgstr "شفافیت سیاه زیرنویس DVB" + +msgid "DVB-C" +msgstr "DVB-C" + +msgid "DVB-C ANNEX C" +msgstr "DVB-C ANNEX C" + +msgid "DVB-S" +msgstr "DVB-S" + +msgid "DVB-S2" +msgstr "DVB-S2" + +msgid "DVB-T" +msgstr "DVB-T" + +msgid "DVB-T2" +msgstr "DVB-T2" + +msgid "DVD data format" +msgstr "فرمت اطلاعات DVD" + +# +#, fuzzy +msgid "DVD file browser" +msgstr "مرورگر فایل DVD" + +msgid "DVD media toolbox" +msgstr "جعبه ابزار رسانه DVD" + +#, fuzzy +msgid "DVD player" +msgstr "پخش کننده DVD" + +#, fuzzy +msgid "DVD titlelist" +msgstr "لیست عنوان DVD" + +msgid "Danish" +msgstr "دانمارکی" + +msgid "Date" +msgstr "تاریخ" + +msgid "Date/time input" +msgstr "" + +#, fuzzy +msgid "Deep standby" +msgstr "خاموشی کامل" + +msgid "Default" +msgstr "پیش فرض" + +msgid "Default movie location" +msgstr "محل پیش فرض فیلم" + +#, fuzzy +msgid "Default settings" +msgstr "تنظیمات پیش فرض" + +msgid "Delay before key repeat starts:" +msgstr "" + +msgid "Delay for external subtitles" +msgstr "" + +msgid "Delete" +msgstr "حذف" + +msgid "Delete entry" +msgstr "حذف مورد" + +msgid "Delete failed!" +msgstr "حذف ناموفق" + +#, fuzzy +msgid "Delete file" +msgstr "حذف ناموفق" + +#, fuzzy +msgid "Delete playlist entry" +msgstr "حذف مورد" + +#, fuzzy +msgid "Delete saved playlist" +msgstr "ذخیره لیست پخش" + +msgid "Delete timer" +msgstr "" + +#, fuzzy +msgid "Delete..." +msgstr "حذف" + +msgid "Deleted" +msgstr "حذف شد" + +msgid "Deleted items" +msgstr "موارد حذف شده" + +msgid "Depth" +msgstr "عمق" + +msgid "Descramble http streams" +msgstr "" + +msgid "Description" +msgstr "توضیحات" + +msgid "Deselect" +msgstr "عدم انتخاب" + +msgid "Details for plugin: " +msgstr "مشخصات پلاگین" + +msgid "Detected HDD:" +msgstr "دیسک سخت شناخته شده:" + +msgid "Detected NIMs:" +msgstr "NIM های شناسایی شده:" + +msgid "Devicename:" +msgstr "نام وسیله:" + +msgid "Devide" +msgstr "" + +msgid "DiSEqC" +msgstr "DiSEqC" + +msgid "DiSEqC 1.0 command" +msgstr "" + +msgid "DiSEqC 1.1 command" +msgstr "" + +msgid "DiSEqC 1.1 repeats" +msgstr "" + +msgid "DiSEqC A/B" +msgstr "DiSEqC A/B" + +msgid "DiSEqC A/B/C/D" +msgstr "DiSEqC A/B/C/D" + +msgid "DiSEqC mode" +msgstr "DiSEqC حالت" + +#, fuzzy, python-format +msgid "DiSEqC port %s: %s" +msgstr "DiSEqC تکرار" + +#, fuzzy +msgid "DiSEqC-tester settings" +msgstr "تنظیمات تستر DiSEqC" + +# +msgid "Dialing:" +msgstr "شماره گیری:" + +msgid "Digital contour removal" +msgstr "حذف contour دیجیتال" + +msgid "Direct playback of linked titles without menu" +msgstr "پخش مستقیم عناوین لینک شده بدون منو" + +msgid "Directory" +msgstr "پوشه" + +#, fuzzy, python-format +msgid "Directory %s does not exist." +msgstr "پوشه %s وجود ندارد" + +#, python-format +msgid "Directory %s nonexistent." +msgstr "" + +msgid "Directory browser" +msgstr "مرورگر شاخه" + +#, python-format +msgid "Directory contains %d file(s) and %d sub-directories.\n" +msgstr "" + +#, fuzzy, python-format +msgid "Directory contains %s and %s." +msgstr "پوشه %s وجود ندارد" + +msgid "Disable" +msgstr "غیر فعال" + +msgid "Disable Picture in Picture" +msgstr "غیر فعال کردن تصویر در تصویر" + +msgid "Disable background scanning" +msgstr "غیر فعال کردن اسکن کردن در پس زمینه" + +msgid "Disable timer" +msgstr "" + +msgid "Disabled" +msgstr "غیر فعال شد" + +msgid "Disconnect" +msgstr "قطع کردن" + +msgid "Disk space to reserve for recordings (in GB)" +msgstr "" + +msgid "Display 16:9 content as" +msgstr "نمایش محتوای 16:9 به صورت" + +msgid "Display 4:3 content as" +msgstr "نمایش محتوای 4:3 به صورت" + +msgid "Display >16:9 content as" +msgstr "نمایش محتوای 16:9 به صورت" + +# +#, fuzzy +msgid "Display and userinterface" +msgstr "نمایش و رابط کاربری" + +msgid "Display message before playing next movie" +msgstr "" + +#, fuzzy +msgid "Display setup" +msgstr "تنظیمات تصویر" + +msgid "Do not change" +msgstr "" + +msgid "Do not record" +msgstr "" + +#, fuzzy +msgid "Do nothing" +msgstr "خیر ، کاری انجام نشود" + +msgid "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" +msgstr "" +"آیا واقعا میخواهید سیستم فایل را بررسی کنید؟\n" +" ممکن است زمان زیادی صرف شود" + +msgid "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" +msgstr "" + +#, python-format +msgid "Do you really want to delete %s?" +msgstr "آیا واقعا قصد حذف کردن %s را دارید؟ " + +#, python-format +msgid "" +"Do you really want to download\n" +"the plugin \"%s\"?" +msgstr "" +" آیا واقعا میخواهید دانلود کنید\n" +"پلاگین \"%s\"?" + +msgid "Do you really want to exit?" +msgstr "آیا واقعا قصد خروج دارید؟" + +msgid "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" +msgstr "" + +#, fuzzy, python-format +msgid "" +"Do you really want to remove\n" +"the plugin \"%s\"?" +msgstr "" +" آیا واقعا میخواهید دانلود کنید\n" +"پلاگین \"%s\"?" + +#, python-format +msgid "Do you really want to remove directory %s from the disk?" +msgstr "آیا واقعا میخواهید پوشه %s را از دیسک حذف کنید ؟" + +#, python-format +msgid "Do you really want to remove your bookmark of %s?" +msgstr "آیا واقعا میخواهید علامت خود را از %s حذف کنید ؟" + +msgid "Do you want this?" +msgstr "" + +msgid "Do you want to burn this collection to DVD medium?" +msgstr "آیا میخواهید این مجموعه را روی DVD رایت کنید ؟" + +msgid "Do you want to do a service scan?" +msgstr "آیا میخواهید اسکن کانال انجام شود ؟" + +msgid "Do you want to do another manual service scan?" +msgstr "آیا میخواهید اسکن دستی کانال دیگری انجام شود ؟" + +#, python-format +msgid "Do you want to download the image to %s ?" +msgstr "آیا میخواهید ایمیج را در %s دانلود کنید ؟" + +#, fuzzy +msgid "Do you want to install a channel list?" +msgstr "آیا میخواهید بسته را نصب کنید:\n" + +msgid "Do you want to install the package:\n" +msgstr "آیا میخواهید بسته را نصب کنید:\n" + +msgid "Do you want to play DVD in drive?" +msgstr "آیا میخواهید یک DVD پخش کنید ؟" + +msgid "Do you want to preview this DVD before burning?" +msgstr "آیا میخواهید قبل از رایت کردن DVD آن را مشاهده کنید ؟" + +msgid "Do you want to reboot your receiver?" +msgstr "" + +msgid "Do you want to remove the package:\n" +msgstr "آیا میخواهید بسته را حذف کنید:\n" + +msgid "Do you want to restore your settings?" +msgstr "آیا میخواهید تنظیمات شما بازگردانی شود ؟" + +msgid "Do you want to resume this playback?" +msgstr "آیا میخواهید به پخش این مورد ادامه داده شود ؟" + +#, fuzzy, python-format +msgid "Do you want to update your receiver to %s?" +msgstr "آیا میخواهید ایمیج را در %s دانلود کنید ؟" + +msgid "Do you want to update your receiver?" +msgstr "" + +msgid "Do you want to upgrade the package:\n" +msgstr "آیا میخواهید بسته به روز رسانی شود:\n" + +msgid "Don't stop current event but disable coming events" +msgstr "رخداد فعلی متوقف نشود اما رخداد های بعدی غیر فعال شوند" + +#, fuzzy, python-format +msgid "Done - Installed, upgraded or removed %d package (%s)" +msgid_plural "Done - Installed, upgraded or removed %d packages (%s)" +msgstr[0] "انجام شد ، تعداد %d بسته با %d خطا نصب ، به روز رسانی و یا حذف شد" + +msgid "Download" +msgstr "دانلود" + +#, fuzzy, python-format +msgid "Download %s from server" +msgstr "دانلود %s از سرور" + +msgid "Download .NFI-files for USB-flasher" +msgstr "دانلود فایل های NFI برای USB-Flasher" + +#, fuzzy +msgid "Download plugins" +msgstr "دانلود پلاگین ها" + +msgid "Downloadable new plugins" +msgstr "پلاگین های جدید قابل دانلود" + +msgid "Downloadable plugins" +msgstr "پلاگین های قابل دانلود" + +msgid "Downloading" +msgstr "در حال دانلود" + +msgid "Downloading plugin information. Please wait..." +msgstr "در حال دانلود کردن اطلاعات پلاگین ها - لطفا صبر کنید" + +msgid "Dutch" +msgstr "فلمنکی" + +# +msgid "Dynamic contrast" +msgstr "کنتراست پویا" + +msgid "E" +msgstr "E" + +msgid "EPG" +msgstr "" + +msgid "EPG language selection 1" +msgstr "انتخاب زبان EPG 1" + +msgid "EPG language selection 2" +msgstr "انتخاب زبان EPG 2" + +#, fuzzy +msgid "EPG selection" +msgstr "EPG انتخاب" + +msgid "EPG settings" +msgstr "" + +#, python-format +msgid "ERROR - failed to scan (%s)!" +msgstr "خطا ، اسکن انجام نشد (%s)" + +msgid "East" +msgstr "شرق" + +msgid "East limit set" +msgstr "تنظیم محدودیت شرق" + +msgid "Edit" +msgstr "ویرایش" + +msgid "Edit DNS" +msgstr "ویرایش DNS" + +msgid "Edit bouquets list" +msgstr "ویرایش لیست های کانال" + +msgid "Edit chapters of current title" +msgstr "ویرایش فصل های عنوان فعلی" + +msgid "Edit services list" +msgstr "ویرایش لیست کانال ها" + +msgid "Edit settings" +msgstr "ویرایش تنظیمات" + +msgid "Edit the nameserver configuration of your receiver.\n" +msgstr "" + +msgid "Edit the network configuration of your receiver.\n" +msgstr "" + +msgid "Edit timer" +msgstr "" + +msgid "Edit title" +msgstr "ویرایش عنوان" + +# +msgid "Edit upgrade source url." +msgstr "ویرایش منبع به روز رسانی" + +msgid "Education/Science/..." +msgstr "" + +msgid "Electronic Program Guide" +msgstr "راهنمای الکترونیکی برنامه" + +msgid "Enable" +msgstr "فعال" + +msgid "Enable 'neutrino' style channel select controlling" +msgstr "" + +msgid "Enable 'neutrino' style zap controlling" +msgstr "" + +msgid "Enable 5V for active antenna" +msgstr "فعال کردن 5 ولت برای آنتن فعال" + +msgid "Enable EIT EPG" +msgstr "فعال کردن EIT EPG" + +msgid "Enable MHW EPG" +msgstr "فعال کردن MHW EPG" + +msgid "Enable Netmed EPG" +msgstr "فعال کردن Netmed EPG" + +msgid "Enable OK for channel selection" +msgstr "" + +msgid "Enable ViaSat EPG" +msgstr "فعال کردن ViaSat EPG" + +msgid "Enable Virgin EPG" +msgstr "" + +msgid "Enable Wake On LAN" +msgstr "" + +msgid "Enable auto fast scan" +msgstr "" + +#, fuzzy +msgid "Enable bouquet selection in multi-EPG" +msgstr "نمایش منوی انتخاب لیست" + +msgid "Enable freesat EPG" +msgstr "فعال کردن freesat EPG" + +msgid "Enable multiple bouquets" +msgstr "فعال کردن چندین لیست" + +msgid "Enable parental control" +msgstr "فعال کردن کنترل والدین" + +msgid "Enable teletext caching" +msgstr "فعال کردن ذخیره کردن تله تکست" + +msgid "Enable zapping with CH+/-, B+/-, P+/-" +msgstr "" + +msgid "Enabled" +msgstr "فعال شد" + +msgid "Encrypted: " +msgstr "رمزگذاری شده:" + +msgid "Encryption" +msgstr "رمزگذاری" + +#, fuzzy +msgid "Encryption key" +msgstr "کلید رمزگذاری" + +#, fuzzy +msgid "Encryption key type" +msgstr "نوع کد رمزگذاری" + +msgid "Encryption:" +msgstr "رمزگذاری" + +msgid "End time" +msgstr "زمان پایان" + +msgid "End time to ignore inactivity sleeptimer" +msgstr "" + +msgid "End time to ignore shutdown in standby" +msgstr "" + +msgid "English" +msgstr "انگلیسی" + +msgid "Enigma2 skin selector" +msgstr "" + +msgid "Enter main menu..." +msgstr "ورود به منوی اصلی" + +msgid "Enter pin code" +msgstr "رمز را وارد کنید" + +msgid "Enter the service pin" +msgstr "رمز کانال را وارد کنید" + +msgid "Equal to" +msgstr "" + +msgid "Error" +msgstr "خطا" + +msgid "Error code" +msgstr "کد خطا" + +msgid "Error executing plugin" +msgstr "خطا هنگام اجرای پلاگین" + +#, python-format +msgid "" +"Error: %s\n" +"Retry?" +msgstr "" +"خطا: %s\n" +"دوباره سعی شود?" + +# +msgid "Estonian" +msgstr "استونیایی" + +msgid "Ethernet network interface" +msgstr "رابط شبکه Ethernet" + +#, fuzzy +msgid "Event font size (relative to skin size)" +msgstr "اندازه قلم رخداد (وابسته به اندازه پوسته)" + +#, fuzzy +msgid "Event view" +msgstr "مشاهده مورد" + +#, fuzzy +msgid "Event view menu" +msgstr "منوی مشاهده رخداد" + +msgid "Everywhere" +msgstr "در همه جا" + +msgid "Exceeds dual layer medium!" +msgstr "بیش از رسانه دو لایه" + +msgid "Execution finished!!" +msgstr "عملیات اجرایی پایان یافت" + +#, fuzzy +msgid "Execution progress:" +msgstr "پیشرفت اجرا کردن:" + +msgid "Exif" +msgstr "Exif" + +msgid "Exit" +msgstr "خروج" + +msgid "Exit EPG" +msgstr "خروج از EPG" + +msgid "Exit editor" +msgstr "خروج از ویرایشگر" + +msgid "Exit input device selection." +msgstr "خروج از انتخاب وسیله ورودی" + +msgid "Exit media player?" +msgstr "" + +#, fuzzy +msgid "Exit mediaplayer" +msgstr "پخش کننده صوتی و تصویری" + +#, fuzzy +msgid "Exit movie list" +msgstr "ویرایش لیست کانال ها" + +msgid "Exit movie player?" +msgstr "" + +#, fuzzy +msgid "Exit nameserver configuration" +msgstr "اضافه کردن پیکربندی شبکه؟" + +#, fuzzy +msgid "Exit network interface list" +msgstr "رابط شبکه Ethernet" + +msgid "Exit network wizard" +msgstr "خروج از هدایتگر شبکه" + +msgid "Exit the wizard" +msgstr "خروج از هدایتگر" + +msgid "Expert" +msgstr "تخصصی" + +msgid "Extend sleeptimer 15 minutes" +msgstr "" + +msgid "Extended Software" +msgstr "نرم افزار تعمیم یافته" + +# +msgid "Extended Software Plugin" +msgstr "پلاگین نرم افزاری قابل تمدید شده" + +#, fuzzy +msgid "Extended network setup plugin..." +msgstr "پلاگین تنظیمات شبکه تمدید شده" + +#, fuzzy +msgid "Extended setup..." +msgstr "تنظیمات تمدید شده" + +msgid "Extensions" +msgstr "بسته ها" + +msgid "Extensions management" +msgstr "مدیریت بسته های نرم افزاری" + +msgid "External PiP" +msgstr "" + +msgid "External subtitle color" +msgstr "" + +msgid "Extra motor options" +msgstr "" + +msgid "FEC" +msgstr "FEC" + +msgid "FTA" +msgstr "FTA" + +msgid "Factory reset" +msgstr "بازگشت به حالت کارخانه ای" + +msgid "Failed" +msgstr "ناموفق" + +msgid "Failed to write /tmp/positionersetup.log: " +msgstr "" + +#, python-format +msgid "Fan %d" +msgstr "فن %d" + +# +#, python-format +msgid "Fan %d PWM" +msgstr "فن %d PWM" + +# +#, fuzzy, python-format +msgid "Fan %d voltage" +msgstr "فن %d ولتاژ" + +msgid "Fan operation" +msgstr "" + +msgid "Fan speed" +msgstr "" + +msgid "Fast" +msgstr "سریع" + +msgid "Fast DiSEqC" +msgstr "سریع DiSEqC" + +msgid "Fast Scan" +msgstr "اسکن سریع" + +msgid "Fast epoch" +msgstr "epoch سریع" + +#, fuzzy +msgid "Fast forward speeds" +msgstr "سرعت های پرش به جلوی سریع" + +msgid "Favourites" +msgstr "محبوب" + +msgid "File appears to be busy.\n" +msgstr "" + +#, fuzzy +msgid "Filesystem check" +msgstr "بررسی سیستم فایل" + +msgid "Final position at" +msgstr "موقعیت نهایی در" + +msgid "Final position at index" +msgstr "" + +msgid "Fine movement" +msgstr "حرکت ظریف" + +msgid "Finetune" +msgstr "تیون ظریف" + +msgid "Finished" +msgstr "پایان یافت" + +msgid "Finished configuring your network" +msgstr "پیکربندی شبکه شما پایان یافت" + +# +msgid "Finished restarting your network" +msgstr "راه اندازی مجدد شبکه شما پایان یافت" + +msgid "Finnish" +msgstr "پایان" + +msgid "Fixed" +msgstr "" + +msgid "Flash" +msgstr "فلش" + +msgid "Flashing failed" +msgstr "فلش کردن ناموفق" + +# +msgid "Following tasks will be done after you press OK!" +msgstr "وظایف زیر بعد از فشار دادن دکمه OK انجام خواهند شد" + +msgid "Format" +msgstr "فرمت" + +msgid "Forward volume keys" +msgstr "" + +msgid "Frame size in full view" +msgstr "اندازه فریم در نمایش کامل" + +msgid "French" +msgstr "فرانسوی" + +msgid "Frequency" +msgstr "فرکانس" + +msgid "Frequency bands" +msgstr "باند های فرکانس" + +msgid "Frequency scan step size(khz)" +msgstr "اندازه اسکن گام به گام فرکانس (khz)" + +msgid "Frequency steps" +msgstr "گام های فرکانس" + +msgid "Frequency:" +msgstr "" + +msgid "Fri" +msgstr "جمعه" + +msgid "Friday" +msgstr "جمعه" + +msgid "From :" +msgstr "از :" + +#, python-format +msgid "Frontprocessor version: %d" +msgstr "نسخه پردازنده جلویی: %d" + +#, fuzzy +msgid "Full transparency" +msgstr "شفافیت سیاه زیرنویس DVB" + +msgid "Fulview resulution" +msgstr "" + +msgid "Function of OK button" +msgstr "" + +msgid "Further Options" +msgstr "" + +msgid "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" +msgstr "" +"برای استفاده از پوسته جدید رابط گرافیکی باید دوباره راه اندازی شود\n" +"آیا میخواهید الان رابط گرافیکی دوباره راه اندازی شود ؟" + +msgid "Gateway" +msgstr "دروازه" + +# +#, fuzzy +msgid "General AC3 delay" +msgstr "تاخیر عمومی AC3" + +# +#, fuzzy +msgid "General PCM delay" +msgstr "تاخیر عمومی PCM" + +msgid "Genre" +msgstr "ژانر" + +msgid "German" +msgstr "آلمانی" + +msgid "Get latest experimental image" +msgstr "دریافت آخرین ایمیج آزمایشی منتشر شده" + +msgid "Get latest release image" +msgstr "دریافت آخرین ایمیج منتشر شده" + +msgid "Getting plugin information. Please wait..." +msgstr "در حال جمع آوری اطلاعات پلاگین ها - لطفا صبر کنید" + +msgid "Go down the list" +msgstr "برو پایین لیست" + +msgid "Go to first movie or last item" +msgstr "مراجعه به اولین فیلم یا آخرین مورد" + +msgid "Go to first movie or top of list" +msgstr "مراجعه به اولین فیلم یا بالای لیست" + +#, fuzzy +msgid "Go to first service" +msgstr "مراجعه به اولین کانال" + +#, fuzzy +msgid "Go to last service" +msgstr "مراجعه به آخرین کانال" + +#, fuzzy +msgid "Go to next event" +msgstr "مراجعه به رخداد بعدی" + +#, fuzzy +msgid "Go to next page of service" +msgstr "مراجعه به صفحه بعدی کانال" + +#, fuzzy +msgid "Go to previous event" +msgstr "مراجعه به رخداد قبلی" + +#, fuzzy +msgid "Go to previous page of service" +msgstr "مراجعه به صفحه قبلی کانال" + +msgid "Go up the list" +msgstr "برو بالای لیست" + +msgid "Goto" +msgstr "مراجعه به" + +msgid "Goto 0" +msgstr "مراجعه به 0" + +msgid "Goto :" +msgstr "مراجعه به :" + +msgid "Goto X" +msgstr "مراجعه به X" + +msgid "Goto index position" +msgstr "" + +msgid "Goto next day of events" +msgstr "" + +msgid "Goto next page of events" +msgstr "مراجعه به صفحه بعدی رخداد ها" + +msgid "Goto position" +msgstr "مراجعه به موقعیت" + +msgid "Goto previous day of events" +msgstr "" + +msgid "Goto previous page of events" +msgstr "مراجعه به صفحه قبلی رخداد ها" + +msgid "Goto specific date/time" +msgstr "" + +msgid "GotoX calibration" +msgstr "" + +msgid "GraphMultiEpg Settings" +msgstr "" + +msgid "Graphical Multi EPG" +msgstr "EPG گرافیکی چندگانه" + +msgid "Greek" +msgstr "یونانی" + +msgid "Green boost" +msgstr "boost سبز" + +msgid "Guard interval" +msgstr "فاصله گارد" + +msgid "HD list" +msgstr "لیست HD" + +msgid "HDMI-CEC setup" +msgstr "" + +msgid "Handle standby from TV" +msgstr "" + +msgid "Handle wakeup from TV" +msgstr "" + +#, fuzzy +msgid "Hard disk" +msgstr "دیسک سخت" + +#, fuzzy +msgid "Hard disk setup" +msgstr "تنظیمات دیسک سخت" + +#, fuzzy +msgid "Hard disk standby after" +msgstr "خاموشی موقت دیسک سخت بعد از" + +msgid "Harddisk" +msgstr "دیسک سخت" + +msgid "Hardware: " +msgstr "سخت افزار: " + +msgid "Hebrew" +msgstr "عبری" + +msgid "Helps setting up your dish" +msgstr "" + +msgid "Hidden network" +msgstr "شبکه مخفی" + +msgid "Hide CI messages" +msgstr "پنهان کردن پیام های CI" + +msgid "Hide channel list in radio mode" +msgstr "" + +msgid "Hide known extensions" +msgstr "" + +msgid "Hide number markers" +msgstr "" + +#, fuzzy +msgid "Hide player" +msgstr "پخش کننده صوتی و تصویری" + +msgid "Hide zap errors" +msgstr "مخفی کردن خطا های جابجایی" + +msgid "Hierarchy info" +msgstr "اطلاعات سلسله مراتبی" + +#, fuzzy +msgid "Hierarchy information" +msgstr "اطلاعات سلسله مراتبی" + +# +msgid "High bitrate support" +msgstr "پشتیبانی از bitrate بالا" + +msgid "Hold screen" +msgstr "نگه داشتن صفحه نمایش" + +msgid "Hold till locked" +msgstr "نگه داشتن صفحه نمایش تا قفل شدن" + +msgid "Home" +msgstr "خانه" + +msgid "Horizontal" +msgstr "افقی" + +msgid "Horizontal turning speed" +msgstr "سرعت چرخش افقی" + +msgid "How many minutes do you want to record?" +msgstr "چند دقیقه میخواهید ضبط کنید؟" + +msgid "Hue" +msgstr "رنگ" + +msgid "Hungarian" +msgstr "مجارستانی" + +#, fuzzy +msgid "IP address" +msgstr "IP آدرس" + +# +msgid "ISO file is too large for this filesystem!" +msgstr "فایل ISO برای این سیستم فایل بسیار بزرگ است" + +# +msgid "ISO path" +msgstr "ISO مسیر" + +msgid "Icons" +msgstr "آیکون" + +msgid "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." +msgstr "" +"اگر این پیام را مشاهده میکنید یعنی چیزی با\n" +"ارتباط scart شما اختلال دارد ، دکمه OK را برای بازگشت فشار دهید" + +msgid "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." +msgstr "" + +msgid "Image: " +msgstr "عکس: " + +msgid "Immediate shutdown" +msgstr "" + +msgid "In order to record a timer, the TV was switched to the recording service!\n" +msgstr "" + +#, fuzzy +msgid "In progress" +msgstr "در حال اجرا" + +msgid "Inactivity Sleeptimer" +msgstr "" + +msgid "Include AIT in http streams" +msgstr "شامل ATT در جریان های http" + +msgid "Include ECM in http streams" +msgstr "شامل ECM در جریان های http" + +msgid "Include EIT in http streams" +msgstr "شامل EIT در جریان های http" + +msgid "Incorrect type service for PiP!" +msgstr "" + +msgid "Increased voltage" +msgstr "ولتاژ افزایش یافته" + +msgid "Index" +msgstr "صفحه اصلی" + +msgid "Index allocated:" +msgstr "" + +msgid "Info" +msgstr "اطلاعات" + +#, fuzzy +msgid "Info bar" +msgstr "نوار اطلاعات" + +#, fuzzy +msgid "Info bar timeout" +msgstr "مهلت نمایش نوار اطلاعات" + +msgid "Infobar frontend data source" +msgstr "" + +msgid "Information" +msgstr "اطلاعات" + +msgid "Init" +msgstr "Init" + +#, fuzzy +msgid "Initial fast forward speed" +msgstr "آماده سازی سرعت پرش به جلوی سریع" + +# +msgid "Initial location in new timers" +msgstr "آماده سازی مکان در زمان های جدید" + +msgid "Initial lock ratio" +msgstr "نسبت قفل اولیه" + +#, fuzzy +msgid "Initial rewind speed" +msgstr "آماده سازی سرعت پرش به عقب" + +msgid "Initial signal quality" +msgstr "آماده سازی کیفیت سیگنال" + +msgid "Initial signal quality:" +msgstr "آماده سازی کیفیت سیگنال:" + +msgid "Initialization" +msgstr "مقدار دهی اولیه" + +msgid "Initialize" +msgstr "مقدار دهی اولیه" + +msgid "Initializing storage device..." +msgstr "در حال مقدار دهی اولیه وسیله ذخیره سازی" + +msgid "Input" +msgstr "ورودی" + +msgid "Input device setup" +msgstr "تنظیم دستگاه ورودی" + +msgid "Input devices" +msgstr "وسیله های ورودی" + +msgid "Install" +msgstr "نصب" + +# +msgid "Install a new image with a USB stick" +msgstr "نصب ایمیج جدید توسط USB stick" + +# +msgid "Install a new image with your web browser" +msgstr "نصب ایمیج جدید توسط مرورگر وب خود" + +#, fuzzy +msgid "Install channel list" +msgstr "نصب بسته محلی" + +msgid "Install extensions" +msgstr "" + +msgid "Install extensions." +msgstr "نصب بسته ها" + +msgid "Install local extension" +msgstr "نصب بسته محلی" + +msgid "Install picons on" +msgstr "نصب پیکون ها در" + +#, fuzzy +msgid "Install softcam" +msgstr "در حال نصب نرم افزار" + +#, fuzzy +msgid "Installation has completed." +msgstr "محاسبه کامل شد" + +# +#, fuzzy +msgid "Installation or removal has completed." +msgstr "نصب یا حذف پایان یافت" + +msgid "Installing" +msgstr "در حال نصب" + +#, fuzzy +msgid "Installing software..." +msgstr "در حال نصب نرم افزار" + +#, fuzzy +msgid "Instant recording location" +msgstr "مکان ضبط کردن فوری" + +#, fuzzy +msgid "Instant recording..." +msgstr "مکان ضبط کردن فوری" + +msgid "Interface: " +msgstr "رابط:" + +msgid "Intermediate" +msgstr "متوسط" + +#, fuzzy +msgid "Internal flash" +msgstr "فلش داخلی" + +msgid "Internal hdd only" +msgstr "فقط هارد داخلی" + +msgid "Interval between keys when repeating:" +msgstr "" + +#, python-format +msgid "Invalid directory selected: %s" +msgstr "پوشه انتخاب شده نامعتبر است: %s" + +#, fuzzy +msgid "Invalid location" +msgstr "محل نامعتبر" + +msgid "Invalid transponder data" +msgstr "" + +msgid "Inversion" +msgstr "وارونگی" + +msgid "Invert" +msgstr "معکوس کردن" + +# +msgid "Ipkg" +msgstr "Ipkg" + +# +#, fuzzy +msgid "Is this setting ok?" +msgstr "آیا این حالت تصویر درست است ؟" + +# +#, fuzzy +msgid "Is this video mode ok?" +msgstr "آیا این حالت تصویر درست است ؟" + +msgid "Italian" +msgstr "ایتالیایی" + +#, fuzzy +msgid "Items per page " +msgstr "موارد در هر صفحه" + +#, fuzzy +msgid "Items per page for list screen" +msgstr "موارد در هر صفحه" + +#, fuzzy +msgid "Job overview" +msgstr "نمای کار" + +msgid "Jump to beginning of list" +msgstr "" + +#, fuzzy +msgid "Jump to end of list" +msgstr "برو بالای لیست" + +#, fuzzy +msgid "Jump to next marked position" +msgstr "موقعیت متن سفارشی" + +msgid "Jump to previous marked position" +msgstr "" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect) +#, fuzzy +msgid "Just scale" +msgstr "فقط Scale" + +msgid "Keep service" +msgstr "" + +#, fuzzy +msgid "Kernel version: " +msgstr "نسخه کرنل: " + +msgid "Keyboard" +msgstr "صفحه کلید" + +#, fuzzy +msgid "Keyboard map" +msgstr "نقشه صفحه کلید" + +#, fuzzy +msgid "Keyboard setup" +msgstr "تنظیمات صفحه کلید" + +#, fuzzy +msgid "LAN adapter" +msgstr "LAN آداپتور" + +msgid "LAN connection" +msgstr "ارتباط LAN" + +msgid "LNB" +msgstr "LNB" + +msgid "Language" +msgstr "زبان" + +msgid "Language selection" +msgstr "انتخاب زبان" + +# +msgid "Last config" +msgstr "آخرین پیکربندی" + +msgid "Last speed" +msgstr "آخرین سرعت" + +#, fuzzy +msgid "Last upgrade: " +msgstr "آخرین به روز رسانی: " + +msgid "Latest Commits" +msgstr "" + +msgid "Latitude" +msgstr "عرض جغرافیایی" + +msgid "Latvian" +msgstr "لتونی" + +#, fuzzy +msgid "Leave DVD player?" +msgstr "خروج از پخش کننده DVD?" + +msgid "Left" +msgstr "چپ" + +msgid "Left from servicename" +msgstr "" + +msgid "Leisure hobbies" +msgstr "" + +#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term. +msgid "Letterbox" +msgstr "Letterbox" + +msgid "Letterbox zoom" +msgstr "" + +#, fuzzy +msgid "Limit character set for recording filenames" +msgstr "ترکیب نام های فایل های ضبط" + +msgid "Limit east" +msgstr "محدودیت شرق" + +msgid "Limit the characters that can be used in recording filenames to (7 bit) ascii. This ensures compatibility with operating systems or file systems with limited character sets." +msgstr "" + +msgid "Limit west" +msgstr "محدودیت غربی" + +msgid "Limits cancelled" +msgstr "محدودیت ها لغو شدند" + +msgid "Limits enabled" +msgstr "محدودیت ها فعال شدند" + +msgid "Limits off" +msgstr "خاموش کردن محدودیت" + +msgid "Limits on" +msgstr "روشن کردن محدودیت" + +# +#, fuzzy +msgid "Link quality:" +msgstr "کیفیت لینک:" + +msgid "Link:" +msgstr "لینک" + +msgid "Linked titles with a DVD menu" +msgstr "عناوین لینک شده همراه یک منوی DVD" + +msgid "List EPG functions..." +msgstr "" + +msgid "List available networks" +msgstr "لیست شبکه های در دسترس" + +msgid "List mode" +msgstr "" + +#, fuzzy +msgid "List of storage devices" +msgstr "لیست وسیله های ذخیره سازی" + +msgid "List type" +msgstr "نوع لیست" + +#, fuzzy, python-format +msgid "List version %d, found %d channel" +msgid_plural "List version %d, found %d channels" +msgstr[0] "لیست نسخه %d ، تعداد %d کانال یافت شد" + +#, fuzzy +msgid "Listen to the radio..." +msgstr "نمایش پخش کننده رادیو" + +msgid "Lists reloaded!" +msgstr "" + +msgid "Lithuanian" +msgstr "لیتوانی" + +msgid "Load" +msgstr "آماده سازی" + +msgid "Load Length of Movies in Movielist" +msgstr "" + +#, fuzzy +msgid "Load length of movies in movie list" +msgstr "آماده سازی طول فیلم ها در لیست فیلم" + +#, fuzzy +msgid "Load playlist" +msgstr "ذخیره لیست پخش" + +#, fuzzy +msgid "Local network" +msgstr "شبکه محلی" + +msgid "Location" +msgstr "محل" + +# +msgid "Location for instant recordings" +msgstr "" + +msgid "Lock ratio" +msgstr "نسبت قفل" + +msgid "Lock:" +msgstr "قفل:" + +msgid "Log results to harddisk" +msgstr "نتایج گزارش در دیسک سخت" + +msgid "Long filenames" +msgstr "نام های طولانی فایل" + +#, fuzzy +msgid "Long key press" +msgstr "فشار دادن طولانی دکمه" + +msgid "Longitude" +msgstr "طول جغرافیایی" + +msgid "Loop through to" +msgstr "" + +msgid "Luxembourgish" +msgstr "" + +#, fuzzy +msgid "MMC card" +msgstr "کارت MMC" + +msgid "MORE" +msgstr "بیشتر" + +msgid "Main menu" +msgstr "منوی اصلی" + +msgid "Maintain old EPG data for" +msgstr "" + +msgid "Make this mark an 'in' point" +msgstr "" + +msgid "Make this mark an 'out' point" +msgstr "" + +msgid "Make this mark just a mark" +msgstr "" + +msgid "Manage extensions" +msgstr "مدیریت بسته ها" + +msgid "Manage your receiver's software" +msgstr "مدیریت نرم افزار رسیور شما" + +msgid "Manual" +msgstr "" + +msgid "Manual Scan" +msgstr "اسکن دستی" + +msgid "Manual configuration" +msgstr "پیکربندی دستی" + +#, fuzzy +msgid "Manual scan" +msgstr "اسکن دستی" + +msgid "Manual transponder" +msgstr "ترانسپوندر دستی" + +# +msgid "Manufacturer" +msgstr "تولید کننده" + +#, fuzzy +msgid "Margin after recording (minutes)" +msgstr "حاشیه قبل از ضبط (دقیقه)" + +#, fuzzy +msgid "Margin before recording (minutes)" +msgstr "حاشیه قبل از ضبط (دقیقه)" + +msgid "Max memory positions" +msgstr "" + +#, fuzzy +msgid "Max. bitrate: " +msgstr "میزان ارسال" + +msgid "Media player" +msgstr "پخش کننده صوتی و تصویری" + +#, fuzzy +msgid "Media scanner" +msgstr "پخش کننده صوتی و تصویری" + +msgid "Medium is not a writeable DVD!" +msgstr "DVD قابل رایت نیست" + +msgid "Medium is not empty!" +msgstr "رسانه خالی نیست" + +msgid "Memory" +msgstr "حافظه" + +msgid "Memory index" +msgstr "فهرست حافظه" + +msgid "Menu" +msgstr "منو" + +msgid "Message" +msgstr "پیام" + +msgid "Message..." +msgstr "پیام" + +#, python-format +msgid "Minimum age %d years" +msgstr "" + +#, fuzzy +msgid "Minimum send interval" +msgstr "فاصله گارد" + +msgid "Missing " +msgstr "مفقود" + +#, fuzzy +msgctxt "Satellite configuration mode" +msgid "Mode" +msgstr "حالت" + +#, fuzzy +msgctxt "Video output mode" +msgid "Mode" +msgstr "حالت" + +msgid "Model: " +msgstr "مدل:" + +msgid "Modulation" +msgstr "زیر و بم" + +msgid "Modulator" +msgstr "زیر و بم کننده" + +msgid "Mon" +msgstr "دوشنبه" + +msgid "Mon-Fri" +msgstr "دوشنبه-جمعه" + +msgid "Monday" +msgstr "دوشنبه" + +# +msgid "Mosquito noise reduction" +msgstr "کاهش صدای پشه" + +msgid "Mount" +msgstr "" + +msgid "Move" +msgstr "جابجایی" + +#, fuzzy +msgid "Move PiP to main picture" +msgstr "جابجایی تصویر در تصویر" + +msgid "Move Picture in Picture" +msgstr "جابجایی تصویر در تصویر" + +msgid "Move east" +msgstr "جابجایی به شرق" + +msgid "Move to other directory" +msgstr "انتقال به پوشه دیگر" + +msgid "Move to position X" +msgstr "جابجایی به موقعت X" + +msgid "Move west" +msgstr "جابجایی به غرب" + +msgid "Moved to position 0" +msgstr "به موقعیت 0 جابجا شد" + +msgid "Moved to position at index" +msgstr "" + +msgid "Movement" +msgstr "جنبش" + +msgid "Movie List Configuration" +msgstr "" + +msgid "Movie Selection" +msgstr "" + +#, fuzzy +msgid "Movie list configuration" +msgstr "پیکربندی لیست فیلم" + +msgid "Movie location" +msgstr "محل فیلم" + +#, fuzzy +msgid "Movie selection" +msgstr "انتخاب فیلم" + +msgid "Movie/Drama" +msgstr "" + +msgid "Movielist menu" +msgstr "منوی لیست فیلم" + +msgid "Moving" +msgstr "در حال جابجایی" + +msgid "Moving east ..." +msgstr "جابجایی به شرق" + +msgid "Moving to position" +msgstr "در حال جابجایی به موقعیت" + +msgid "Moving west ..." +msgstr "جابجایی به غرب" + +msgid "Multi EPG" +msgstr "EPG چندگانه" + +msgid "Multi-EPG bouquet selection" +msgstr "انتخاب لیست EPG چندگانه" + +msgid "Multimedia" +msgstr "چند رسانه ای" + +msgid "Multiple service support" +msgstr "پشتیبانی از چند کانال" + +msgid "Multiplex" +msgstr "مرکب" + +msgid "Multisat" +msgstr "چندین ماهواره" + +msgid "Multisat all select" +msgstr "" + +msgid "Music/Ballet/Dance" +msgstr "" + +msgid "Mute" +msgstr "بی صدا" + +msgid "N/A" +msgstr "در دسترس نیست" + +msgid "NEXT" +msgstr "بعدی" + +# +#, fuzzy +msgid "NFI image flashing" +msgstr "فلش کردن ایمیج NFI" + +msgid "NFI image flashing completed. Press Yellow to Reboot!" +msgstr "" + +msgid "NIM" +msgstr "NIM" + +msgid "NOW" +msgstr "اکنون" + +msgid "NTSC" +msgstr "NTSC" + +msgid "Name" +msgstr "نام" + +msgid "Nameserver" +msgstr "Nameserver" + +#, python-format +msgid "Nameserver %d" +msgstr "Nameserver %d" + +msgid "Nameserver settings" +msgstr "Nameserver تنظیمات" + +#, fuzzy +msgid "Nameserver setup" +msgstr "Nameserver تنظیمات" + +msgid "Namespace" +msgstr "فضای نام" + +msgid "Netmask" +msgstr "Netmask" + +msgid "Network" +msgstr "شبکه" + +msgid "Network ID" +msgstr "ID شبکه" + +#, fuzzy +msgid "Network configuration..." +msgstr "پیکربندی شبکه" + +#, fuzzy +msgid "Network mount" +msgstr "شبکه Mount" + +#, fuzzy, python-format +msgid "Network mount %s" +msgstr "شبکه Mount" + +#, fuzzy +msgid "Network name (SSID)" +msgstr "نام شبکه (SSID)" + +msgid "Network scan" +msgstr "اسکن شبکه" + +msgid "Network setup" +msgstr "تنظیمات شبکه" + +msgid "Network test" +msgstr "تست شبکه" + +msgid "Network test..." +msgstr "تست شبکه" + +msgid "Network test: " +msgstr "تست شبکه:" + +#, fuzzy +msgid "Network wizard" +msgstr "هدایتگر شبکه" + +msgid "Network:" +msgstr "شبکه:" + +msgid "New" +msgstr "جدید" + +msgid "New PIN" +msgstr "رمز جدید" + +msgid "New version:" +msgstr "نسخه جدید:" + +msgid "News Current Affairs" +msgstr "" + +msgctxt "button label, 'next screen'" +msgid "Next" +msgstr "" + +msgctxt "now/next: 'next' event label" +msgid "Next" +msgstr "" + +msgid "No" +msgstr "خیر" + +msgid "No (supported) DVDROM found!" +msgstr "هیچ DVDROM قابل پشتیبانی یافت نشد" + +msgid "No Connection" +msgstr "ارتباطی وجود ندارد" + +msgid "No HDD found or HDD not initialized!" +msgstr "دیسک سخت پیدا نشد و یا دیسک سخت مقدار دهی اولیه نشده است" + +msgid "No backup needed" +msgstr "نیازی به نسخه پشتیبان نیست" + +msgid "No cable tuner found!" +msgstr "تیونر کابلی یافت نشد" + +msgid "" +"No data on transponder!\n" +"(Timeout reading PAT)" +msgstr "" + +#, fuzzy +msgid "No delay" +msgstr "بدون تاخیر" + +# +msgid "No description available." +msgstr "هیچ توضیحی در دسترس نیست" + +msgid "No details for this image file" +msgstr "هیچ مشخصاتی برای این ایمیج وجود ندارد" + +# +msgid "No displayable files on this medium found!" +msgstr "هیچ فایل قابل نمایشی روی این رسانه یافت نشد" + +msgid "No event info found, recording indefinitely." +msgstr "هیچ اطلاعات رخدادی یافت نشد ، ضبط کردن به صورت نامحدود" + +# +msgid "No fast winding possible yet.. but you can use the number buttons to skip forward/backward!" +msgstr "" + +msgid "No free index available" +msgstr "" + +msgid "No free tuner!" +msgstr "تیونر آزاد وجود ندارد" + +# +msgid "No network connection available." +msgstr "هیچ ارتباط شبکه ای در دسترس نیست" + +msgid "No networks found" +msgstr "هیچ شبکه ای یافت نشد" + +msgid "No new plugins found" +msgstr "" + +msgid "No positioner capable frontend found." +msgstr "" + +msgid "No satellites configured. Plese check your tuner setup." +msgstr "" + +msgid "No service" +msgstr "" + +msgid "No services/providers selected" +msgstr "" + +#, fuzzy +msgid "No standby" +msgstr "خاموشی موقت" + +msgid "No suitable sat tuner found!" +msgstr "" + +# +msgid "No tags are set on these movies." +msgstr "هیچ برچسبی برای این فیلم ها تنظیم نشده است" + +#, fuzzy +msgid "No timeout" +msgstr "مهلت نمایش نوار اطلاعات" + +# +msgid "No to all" +msgstr "نه به همه" + +msgid "No transparency" +msgstr "" + +msgid "No tuner is configured for use with a diseqc positioner!" +msgstr "هیچ تیونری برای استفاده با مکان یاب دایسک پیکربندی نشده است !" + +msgid "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"هیچ تیونری فعال نشده است\n" +"لطفا قبل از شروع اسکن کانال ابتدا تنظیمات تیونر را انجام دهید" + +# +#, fuzzy +msgid "No updates available" +msgstr "به روز رسانی های در دسترس" + +msgid "No updates available. Please try again later." +msgstr "" + +msgid "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" +msgstr "" + +msgid "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" +msgstr "" + +msgid "No wireless networks found! Searching..." +msgstr "هیچ شبکه بدون سیمی یافت نشد ، در حال جستجو" + +# +msgid "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." +msgstr "" + +# +msgid "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." +msgstr "" + +# +msgid "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." +msgstr "" + +msgid "No, but restart from begin" +msgstr "خیر ، ولی از ابتدا راه اندازی شود" + +msgid "No, do nothing." +msgstr "خیر ، کاری انجام نشود" + +msgid "No, just start my receiver" +msgstr "" + +msgid "No, never" +msgstr "خیر ، هیچ وقت" + +msgid "None" +msgstr "هیچکدام" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right) +msgid "Nonlinear" +msgstr "غیر خطی" + +msgid "Normal mode" +msgstr "" + +msgid "North" +msgstr "شمال" + +msgid "Norwegian" +msgstr "نروژی" + +msgid "Not associated" +msgstr "" + +msgid "Not configured" +msgstr "" + +#, fuzzy, python-format +msgid "Not enough disk space. Please free up some disk space and try again. (%d MB required, %d MB available)" +msgstr "فضای کافی وجود ندارد ، لطفا مقداری فضا خالی و دوباره تلاش کنید . (%d مگابایت نیاز است و %d مگابایت در دسترس است)" + +msgid "Nothing connected" +msgstr "" + +msgid "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" + +msgctxt "now/next: 'now' event label" +msgid "Now" +msgstr "" + +#, fuzzy +msgid "Now playing" +msgstr "در حال پخش" + +msgid "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." +msgstr "" + +msgid "OK" +msgstr "OK" + +msgid "OK, guide me through the upgrade process" +msgstr "من را به روند به روز رسانی راهنمایی کنید" + +msgid "ONID" +msgstr "ONID" + +msgid "OSD name request" +msgstr "درخواست نام OSD" + +#, fuzzy +msgid "OSD settings" +msgstr "OSD تنظیمات" + +msgid "OSD transparency" +msgstr "" + +msgid "Off" +msgstr "خاموش" + +msgid "Offline decode delay (ms)" +msgstr "تاخیر رمز گشایی آفلاین (میلی ثانیه)" + +msgid "Ok" +msgstr "Ok" + +msgid "On" +msgstr "روشن" + +msgid "On end of movie" +msgstr "" + +msgid "On end of movie (as menu)" +msgstr "" + +msgid "One" +msgstr "یک" + +msgid "Only extensions." +msgstr "فقط بسته ها" + +#, fuzzy +msgid "Only free scan" +msgstr "فقط کانال های مجانی" + +#, fuzzy +msgid "Open service list" +msgstr "ویرایش لیست کانال ها" + +#, fuzzy +msgid "Open the movie list" +msgstr "بازگشت به لیست فیلم" + +msgid "Orbital position" +msgstr "موقعیت مداری" + +msgid "Original" +msgstr "اصلی" + +msgid "Other" +msgstr "دیگر" + +msgid "Output" +msgstr "خروجی" + +msgid "Overwrite configuration files during software upgrade?" +msgstr "بازنویسی فایل های پیکربندی هنگام به روز رسانی نرم افزار ؟" + +#, fuzzy +msgid "Overwrite configuration files?" +msgstr "بازنویسی فایل های پیکربندی ؟" + +msgid "PAL" +msgstr "PAL" + +msgid "PCR PID" +msgstr "PCR PID" + +msgid "PIDs" +msgstr "PIDs" + +#, fuzzy +msgid "PIN code needed" +msgstr "رمز مورد نیاز است" + +msgid "PLP ID" +msgstr "" + +msgid "PMT PID" +msgstr "PMT PID" + +msgid "Package list update" +msgstr "به روز رسانی لیست بسته های نرم افزاری" + +msgid "Packet management" +msgstr "مدیریت بسته های نرم افزاری" + +msgid "Packet manager" +msgstr "مدیریت بسته های نرم افزاری" + +#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term +#, fuzzy +msgid "Pan&scan" +msgstr "Pan&Scan" + +#, fuzzy +msgid "Parent directory" +msgstr "شاخه اصلی" + +msgid "Parental control" +msgstr "کنترل والدین" + +#, fuzzy +msgid "Parental control services editor" +msgstr "ویرایشگر کانال های کنترل والدین" + +msgid "Parental control setup" +msgstr "تنظیمات کنترل والدین" + +msgid "Parental control type" +msgstr "نوع کنترل والدین" + +# +msgid "Password" +msgstr "رمز عبور" + +msgid "Pause" +msgstr "" + +msgid "Pause movie at end" +msgstr "توقف فیلم هنگام پایان" + +#, fuzzy +msgid "Pause playback" +msgstr "ادامه پخش" + +msgid "Pauze/Continue playback" +msgstr "" + +msgid "Percentage left" +msgstr "" + +#, fuzzy +msgid "Percentage right" +msgstr "چرخش راست" + +msgid "Permanently delete all recordings in the trash can?" +msgstr "حذف دائمی همه ضبط شده ها در سطل زباله ؟" + +msgid "Permanently remove all deleted items" +msgstr "حذف تمامی موارد حذف شده به صورت دائمی" + +msgid "Persian" +msgstr "فارسی" + +# +msgid "Phone number" +msgstr "شماره تلفن" + +#, fuzzy +msgid "PiP setup" +msgstr "تنظیمات تصویر در تصویر" + +msgid "Picon" +msgstr "" + +msgid "Picon and service name" +msgstr "" + +# +#, fuzzy +msgid "Picture player" +msgstr "نمایش دهنده تصاویر" + +#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term. +msgid "Pillarbox" +msgstr "Pillarbox" + +msgid "Pilot" +msgstr "Pilot" + +msgid "Play" +msgstr "پخش" + +msgid "Play DVD" +msgstr "پخش DVD" + +msgid "Play audio in background" +msgstr "پخش صدا در پس زمینه" + +#, fuzzy +msgid "Play audio-CD..." +msgstr "پخش CD صوتی" + +msgid "Play back media files" +msgstr "" + +#, fuzzy +msgid "Play entry" +msgstr "پخش بعدی" + +msgid "Play from next mark or playlist entry" +msgstr "" + +msgid "Play from previous mark or playlist entry" +msgstr "" + +#, fuzzy +msgid "Play music..." +msgstr "پخش موسیقی" + +msgid "Play next" +msgstr "پخش بعدی" + +msgid "Play next (return to movie list)" +msgstr "" + +msgid "Play next (return to previous service)" +msgstr "" + +msgid "Play previous" +msgstr "پخش قبلی" + +msgid "Play recorded movies..." +msgstr "پخش فیلم های ضبط شده" + +msgid "Please add titles to the compilation." +msgstr "" + +msgid "Please change recording endtime" +msgstr "لطفا زمان پایان ضبط کردن را تغییر دهید" + +msgid "Please check your network settings!" +msgstr "لطفا تنظیمات شبکه خود را بررسی کنید" + +msgid "Please choose an extension..." +msgstr "لطفا یک بسته انتخاب کنید" + +# +msgid "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" + +# +msgid "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" + +msgid "Please connect your receiver to the internet" +msgstr "" + +msgid "Please do not change any values unless you know what you are doing!" +msgstr "" + +msgid "Please enter a name for the new bouquet" +msgstr "لطفا یک نام برای لیست جدید وارد کنید" + +msgid "Please enter a name for the new marker" +msgstr "لطفا یک نام برای علامت جدید وارد کنید" + +msgid "Please enter a new filename" +msgstr "لطفا یک نام جدید برای فایل وارد کنید" + +msgid "Please enter filename (empty = use current date)" +msgstr "لطفا نام فایل را وارد کنید (خالی = استفاده از تاریخ فعلی)" + +msgid "Please enter name of the new directory" +msgstr "لطفا نام پوشه جدید را وارد کنید" + +msgid "Please enter new name:" +msgstr "" + +msgid "Please enter the correct pin code" +msgstr "لطفا رمز درست را وارد کنید" + +msgid "Please enter the old PIN code" +msgstr "لطفا رمز قبلی را وارد کنید" + +msgid "Please follow the instructions on the TV" +msgstr "لطفا دستورالعمل هایی که در تلوزیون مشاهده میکنید را دنبال کنید" + +msgid "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." +msgstr "" + +msgid "Please press OK to continue." +msgstr "لطفا دکمه OK را برای ادامه دادن فشار دهید" + +msgid "Please select a default EPG type..." +msgstr "" + +msgid "Please select a playlist to delete..." +msgstr "لطفا یک لیست پخش را برای حذف شدن انتخاب کنید" + +msgid "Please select a playlist..." +msgstr "لطفا یک لیست پخش انتخاب کنید" + +#, fuzzy +msgid "Please select a sub service..." +msgstr "لطفا یک کانال فرعی انتخاب کنید" + +msgid "Please select a subservice to record..." +msgstr "لطفا یک کانال فرعی را برای ضبط انتخاب کنید" + +msgid "Please select a subservice..." +msgstr "لطفا یک کانال فرعی انتخاب کنید" + +msgid "Please select an NFI file and press green key to flash!" +msgstr "" + +#, fuzzy +msgid "Please select medium to be scanned" +msgstr "لطفا یک رسانه را برای اسکن انتخاب کنید" + +msgid "Please select medium to use as backup location" +msgstr "لطفا یک وسیله را برای استفاده به عنوان محل نسخه پشتیبان انتخاب کنید" + +msgid "Please select tag to filter..." +msgstr "" + +msgid "Please select the movie path..." +msgstr "لطفا مسیر فیلم را انتخاب کنید" + +# +msgid "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." +msgstr "" + +# +msgid "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." +msgstr "" + +#, fuzzy +msgid "Please set up tuner A" +msgstr "لطفا تیونر دوم را تنظیم کنید" + +msgid "Please set up tuner B" +msgstr "لطفا تیونر دوم را تنظیم کنید" + +msgid "Please set up tuner C" +msgstr "لطفا تیونر سوم را تنظیم کنید" + +msgid "Please set up tuner D" +msgstr "لطفا تیونر چهارم را تنظیم کنید" + +msgid "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." +msgstr "" + +msgid "Please use the UP and DOWN keys to select your language. Afterwards press the OK button." +msgstr "لطفا از کلید های بالا و پایین برای انتخاب زبان خود استفاده کنید ، سپس دکمه OK را فشار دهید" + +msgid "Please wait" +msgstr "" + +#, fuzzy +msgid "Please wait (downloading channel list)" +msgstr "لطفا صبر کنید - در حال آماده سازی لیست" + +#, fuzzy +msgid "Please wait (downloading softcam)" +msgstr "لطفا صبر کنید - در حال آماده سازی لیست" + +msgid "Please wait (updating packages)" +msgstr "" + +# +msgid "Please wait for activation of your network configuration..." +msgstr "لطفا صبر کنید تا پیکربندی شبکه شما فعال شود" + +msgid "Please wait while scanning is in progress..." +msgstr "وقتی اسکن در حال انجام است لطفا صبر کنید" + +msgid "Please wait while we configure your network..." +msgstr "لطفا صبر کنید ، ما در حال پیکربندی شبکه شما هستیم" + +# +msgid "Please wait while we prepare your network interfaces..." +msgstr "لطفا صبر کنید تا رابط های شبکه شما آماده شوند" + +# +msgid "Please wait while we test your network..." +msgstr "لطفا صبر کنید تا شبکه شما تست شود" + +msgid "Please wait while your network is restarting..." +msgstr "راه اندازی دوباره شبکه شما ، لطفا صبر کنید" + +msgid "Please wait..." +msgstr "لطفا صبر کنید" + +msgid "Please wait... Loading list..." +msgstr "لطفا صبر کنید - در حال آماده سازی لیست" + +msgid "Plugin browser" +msgstr "مرورگر پلاگین" + +# +msgid "Plugin manager activity information" +msgstr "اطلاعات فعالیت مدیریت پلاگین" + +# +msgid "Plugin manager help" +msgstr "راهنمای مدیریت پلاگین" + +msgid "Plugins" +msgstr "پلاگین ها" + +msgid "Polarisation" +msgstr "Polarisation" + +msgid "Polarisation:" +msgstr "" + +msgid "Polarization" +msgstr "قطبش" + +msgid "Polish" +msgstr "لهستانی" + +msgid "Port A" +msgstr "پورت A" + +msgid "Port B" +msgstr "پورت B" + +msgid "Port C" +msgstr "پورت C" + +msgid "Port D" +msgstr "پورت D" + +msgid "Portuguese" +msgstr "پرتغالی" + +msgid "Position of completed timers in timerlist" +msgstr "" + +msgid "Position stored at index" +msgstr "" + +msgid "Positioner" +msgstr "مکان یاب" + +msgid "Positioner (selecting satellites)" +msgstr "" + +msgid "Positioner Setup" +msgstr "" + +msgid "Positioner setup" +msgstr "تنظیمات مکان یاب" + +msgid "Power threshold in mA" +msgstr "آستانه قدرت به میلی آمپر" + +msgid "Predefined transponder" +msgstr "ترانسپوندر از قبل تعریف شده" + +#, fuzzy +msgid "Prefer AC3 track" +msgstr "ترجیح دادن AC3" + +msgid "Prefer AC3+ track" +msgstr "" + +#, fuzzy +msgid "Prefer audio track stored by service" +msgstr "ترجیح دادن جریان صوتی ذخیره شده توسط کانال" + +#, fuzzy +msgid "Prefer graphical DVB subtitles" +msgstr "ترجیح دادن زیرنویس های گرافیکی DVB" + +#, fuzzy +msgid "Prefer subtitles for hearing impaired" +msgstr "ترجیح دادن زیرنویس ذخیره شده توسط کانال" + +#, fuzzy +msgid "Prefer subtitles stored by service" +msgstr "ترجیح دادن زیرنویس ذخیره شده توسط کانال" + +msgid "Preferred tuner" +msgstr "تیونر ترجیحی" + +msgid "Preferred tuner for recordings" +msgstr "" + +msgid "Prepare another USB stick for image flashing" +msgstr "" + +msgid "Preparing... Please wait" +msgstr "در حال آماده سازی - لطفا صبر کنید" + +msgid "Press '0' to toggle PiP mode" +msgstr "" + +msgid "Press INFO on your remote control for additional information." +msgstr "دکمه INFO روی ریموت کنترل را برای مشاهده اطلاعات اضافی فشار دهید" + +msgid "Press MENU on your remote control for additional options." +msgstr "دکمه MENU روی ریموت کنترل را برای گزینه های اضافی فشار دهید" + +msgid "Press OK on your remote control to continue." +msgstr "دکمه OK را برای ادامه دادن فشار دهید" + +msgid "Press OK to activate the selected skin." +msgstr "دکمه OK را برای فعال کردن پوسته انتخاب شده فشار دهید" + +msgid "Press OK to activate the settings." +msgstr "دکمه OK را برای فعال کردن تنظیمات فشار دهید" + +msgid "Press OK to edit the settings." +msgstr "دکمه OK را برای ویرایش تنظیمات فشار دهید" + +#, python-format +msgid "Press OK to get further details for %s" +msgstr "دکمه OK را برای دریافت جزئیات بیشتر %s فشار دهید" + +msgid "Press OK to scan" +msgstr "دکمه OK را برای اسکن فشار دهید" + +#, fuzzy +msgid "Press OK to select a provider." +msgstr "دکمه OK را برای انتخاب ارائه دهنده فشار دهید" + +msgid "Press OK to select satellites" +msgstr "" + +# +msgid "Press OK to select/deselect a CAId." +msgstr "دکمه OK را برای انتخاب کردن یا نکردن CAId فشار دهید" + +msgid "Press OK to start the scan" +msgstr "دکمه OK را برای شروع اسکن فشار دهید" + +msgid "Press OK to toggle the selection" +msgstr "" + +msgid "Press OK to toggle the selection." +msgstr "دکمه OK را برای toggle انتخاب فشار دهید" + +# +msgid "Press yellow to set this interface as default interface." +msgstr "دکمه زرد را برای تنظیم این رابط به عنوان رابط پیش فرض فشار دهید" + +msgctxt "button label, 'previous screen'" +msgid "Prev" +msgstr "" + +msgid "Preview" +msgstr "پیش نمایش" + +msgid "Preview menu" +msgstr "منوی قبلی" + +msgid "Preview selected channel" +msgstr "" + +msgid "Primary DNS" +msgstr "DNS اول" + +msgid "Priority" +msgstr "اولویت" + +msgid "Process" +msgstr "پردازش" + +msgid "Progress" +msgstr "پیشرفت" + +#, fuzzy +msgid "Progress bar left" +msgstr "پیشرفت کوچک" + +#, fuzzy +msgid "Progress bar right" +msgstr "پیشرفت کوچک" + +msgid "Properties of current title" +msgstr "مشخصات عنوان فعلی" + +msgid "Protect services" +msgstr "محافظت از کانال ها" + +msgid "Protect setup" +msgstr "محافظت از تنظیمات" + +msgid "Provider" +msgstr "ارائه کننده" + +msgid "Provider to scan" +msgstr "اسکن ارائه کننده" + +msgid "Providers" +msgstr "ارائه کنندگان" + +msgid "Put TV in standby" +msgstr "قرار دادن تلوزیون در خاموشی موقت" + +msgid "Put receiver in standby" +msgstr "قرار دادن دستگاه در خاموشی موقت" + +msgid "Python frontend for /tmp/mmi.socket" +msgstr "Python frontend برای /tmp/mmi.socket" + +msgid "Quick" +msgstr "سریع" + +#, fuzzy +msgid "Quick zap" +msgstr "جابجایی سریع" + +msgid "RF output" +msgstr "خروجی RF" + +msgid "RGB" +msgstr "RGB" + +msgid "Radio" +msgstr "رادیو" + +#, fuzzy +msgid "Ram disk" +msgstr "دیسک رم" + +msgid "Random" +msgstr "تصادفی" + +#, python-format +msgid "Rating defined by broadcaster - %d" +msgstr "" + +msgid "Rating undefined" +msgstr "" + +msgid "Really close without saving settings?" +msgstr "خروج بدون ذخیره کردن تنظیمات ؟" + +msgid "Really delete done timers?" +msgstr "زمان های انجام شده حذف شوند ؟" + +msgid "Really exit the subservices quickzap?" +msgstr "" + +msgid "Really reboot now?" +msgstr "راه اندازی مجدد هم اکنون؟" + +msgid "Really restart now?" +msgstr "راه اندازی مجدد هم اکنون؟" + +msgid "Really shutdown now?" +msgstr "خاموش کردن هم اکنون؟" + +msgid "Really upgrade the frontprocessor and reboot now?" +msgstr "پردازنده جلو به روز رسانی و هم اکنون راه اندازی مجدد شود ؟" + +msgid "Really upgrade your settop box and reboot now?" +msgstr "دستگاه شما به روز رسانی و هم اکنون راه اندازی مجدد شود ؟" + +msgid "Reboot" +msgstr "راه اندازی مجدد" + +msgid "Rec" +msgstr "ضبط" + +#, fuzzy +msgid "Reception settings" +msgstr "تنظیمات دریافت" + +msgid "Record" +msgstr "ضبط" + +# +#, python-format +msgid "Record time limited due to conflicting timer %s" +msgstr "" + +msgid "Recorded files..." +msgstr "فایل های ضبط شده" + +msgid "Recording" +msgstr "در حال ضبط" + +msgid "Recording in progress" +msgstr "ضبط در حال پیشرفت" + +msgid "Recording paths" +msgstr "مسیر های ضبط کردن" + +msgid "Recording type" +msgstr "نوع ضبط" + +msgid "Recording(s) are in progress or coming up in few seconds!" +msgstr "" + +msgid "Recordings" +msgstr "ضبط شده ها" + +msgid "Recordings always have priority" +msgstr "ضبط کردن همیشه اولویت داشته باشد" + +msgid "Red button..." +msgstr "دکمه قرمز" + +msgid "Reenter new PIN" +msgstr "رمز جدید را دوباره وارد کنید" + +#, fuzzy +msgid "Refresh rate" +msgstr "میزان تجدید" + +msgid "Refresh rate selection." +msgstr "انتخاب میزان تجدید" + +msgid "Regard deep standby as standby" +msgstr "" + +msgid "Relative" +msgstr "" + +msgid "Reload" +msgstr "بازنگری" + +# +#, fuzzy +msgid "Reload black-/white lists" +msgstr "بازنگری لیست سفید و سیاه" + +msgid "Reloading bouquets and services..." +msgstr "بارگذاری مجدد لیست ها و کانال ها" + +msgid "Remember last service in PiP" +msgstr "" + +msgid "Remember service PIN" +msgstr "به یاد داشتن رمز کانال" + +msgid "Remember these settings for each folder" +msgstr "به خاطر سپردن این تنظیمات برای هر پوشه" + +msgid "Reminder, you have chosen to save timeshift file." +msgstr "" + +#, fuzzy +msgid "Remote control type" +msgstr "نوع کنترل والدین" + +#, fuzzy +msgid "Removal has completed." +msgstr "حذف ناموفق" + +msgid "Remove" +msgstr "حذف" + +msgid "Remove a mark" +msgstr "حذف علامت" + +msgid "Remove a nameserver entry" +msgstr "" + +#, fuzzy +msgid "Remove bookmark" +msgstr "حذف علامت" + +#, fuzzy +msgid "Remove completed timers after (days)" +msgstr "حذف موارد از سطل زباله بعد از (روز)" + +msgid "Remove currently selected title" +msgstr "حذف عنوان انتخاب شده فعلی" + +#, fuzzy +msgid "Remove items from trash can after (days)" +msgstr "حذف موارد از سطل زباله بعد از (روز)" + +msgid "Remove plugins" +msgstr "حذف پلاگین ها" + +msgid "Remove title" +msgstr "حذف عنوان" + +msgid "Removing" +msgstr "در حال حذف کردن" + +#, python-format +msgid "Removing directory %s failed. (Maybe not empty.)" +msgstr "حذف پوشه %s ناموفق بود (شاید پوشه خالی نیست)" + +#, fuzzy +msgid "Removing partition table" +msgstr "بازخوانی جدول پارتیشن" + +msgid "Rename" +msgstr "تغییر نام" + +msgid "Repeat" +msgstr "" + +#, fuzzy +msgid "Repeat type" +msgstr "نوع تکرار" + +msgid "Repeating event currently recording... What do you want to do?" +msgstr "" + +msgid "Repeats" +msgstr "تکرار ها" + +msgid "Require authentication for http streams" +msgstr "" + +# +msgid "Required medium type:" +msgstr "نوع رسانه مورد نیاز:" + +#, fuzzy +msgid "Rereading partition table" +msgstr "بازخوانی جدول پارتیشن" + +msgid "Reserved" +msgstr "" + +msgid "Reset" +msgstr "بازنشانی" + +msgid "Reset and renumerate title names" +msgstr "بازنشانی و عدد دهی دوباره به نام های عنوان" + +msgid "Reset playback position" +msgstr "بازنشانی مکان پخش" + +# +msgid "Reset video enhancement settings to system defaults?" +msgstr "بازنشانی تنظیمات بهینه تصویر به پیش فرض سیستم ؟" + +# +msgid "Reset video enhancement settings to your last configuration?" +msgstr "بازنشانی تنظیمات بهینه تصویر به آخرین پیکربندی شما ؟" + +msgid "Resolution" +msgstr "تفکیک پذیری و دقت" + +msgid "Restart" +msgstr "راه اندازی دوباره" + +msgid "Restart GUI now?" +msgstr "راه اندازی مجدد رابط گرافیک کاربری؟" + +msgid "Restart enigma" +msgstr "راه اندازی مجدد انیگما" + +msgid "Restart network" +msgstr "راه اندازی دوباره شبکه" + +msgid "Restart test" +msgstr "راه اندازی دوباره تست" + +msgid "Restart your network connection and interfaces.\n" +msgstr "راه اندازی دوباره ارتباط شبکه شما و رابط های آن\n" + +msgid "Restore" +msgstr "بازگردانی" + +msgid "Restore backups" +msgstr "بازگردانی نسخه های پشتیبان" + +# +msgid "Restore is running..." +msgstr "بازگردانی در حال اجرا است" + +msgid "Restore system settings" +msgstr "بازگردانی تنظیمات سیستم" + +# +#, fuzzy +msgid "Restoring..." +msgstr "بازگردانی در حال اجرا است" + +msgid "Resume from last position" +msgstr "ادامه از مکان قبلی" + +# +#, python-format +msgid "Resume position at %s" +msgstr "ادامه دادن مکان در %s" + +#. TRANSLATORS: The string "Resuming playback" flashes for a moment +#. TRANSLATORS: at the start of a movie, when the user has selected +#. TRANSLATORS: "Resume from last position" as start behavior. +#. TRANSLATORS: The purpose is to notify the user that the movie starts +#. TRANSLATORS: in the middle somewhere and not from the beginning. +#. TRANSLATORS: (Some translators seem to have interpreted it as a +#. TRANSLATORS: question or a choice, but it is a statement.) +msgid "Resuming playback" +msgstr "ادامه پخش" + +msgid "Return to movie list" +msgstr "بازگشت به لیست فیلم" + +msgid "Return to previous service" +msgstr "بازگشت به کانال قبلی" + +msgid "Reverse bouquet buttons" +msgstr "" + +msgid "Reverse list" +msgstr "" + +msgid "Rewind speeds" +msgstr "سرعت های بازگشت:" + +msgid "Rewrap teletext subtitles" +msgstr "" + +msgid "Right" +msgstr "راست" + +msgid "Right from servicename" +msgstr "" + +msgid "Roll-off" +msgstr "Roll-off" + +msgid "Romanian" +msgstr "رومانیایی" + +msgid "Root directory" +msgstr "پوشه root" + +msgid "Rotor step position:" +msgstr "" + +msgid "Rotor turning speed" +msgstr "سرعت چرخش موتور" + +msgid "Round start time on" +msgstr "" + +msgid "Russian" +msgstr "روسی" + +msgid "S-Video" +msgstr "S-Video" + +msgid "SID" +msgstr "SID" + +# +msgid "SINGLE LAYER DVD" +msgstr "DVD یک لایه ای" + +msgid "SNR" +msgstr "کیفیت سیگنال" + +msgid "SNR:" +msgstr "کیفیت سیگنال:" + +# +msgid "SSID:" +msgstr "SSID:" + +msgid "Same resolution as skin" +msgstr "" + +msgid "Sat" +msgstr "ماهواره" + +msgid "Satellite" +msgstr "ماهواره" + +#, fuzzy +msgid "Satellite dish setup" +msgstr "تنظیم تجهیزات ماهواره" + +msgid "Satellite equipment" +msgstr "تجهیزات ماهواره" + +#, fuzzy +msgid "Satellite equipment setup" +msgstr "تنظیم تجهیزات ماهواره" + +msgid "Satellite longitude:" +msgstr "طول جغرافیایی ماهواره:" + +msgid "Satellites" +msgstr "ماهواره ها" + +msgid "Satfinder" +msgstr "ماهواره یاب" + +msgid "Sats" +msgstr "ماهواره ها" + +msgid "Saturation" +msgstr "اشباع" + +msgid "Saturday" +msgstr "شنبه" + +msgid "Save" +msgstr "ذخیره" + +#, fuzzy +msgid "Save playlist" +msgstr "ذخیره لیست پخش" + +msgid "Save timeshift file" +msgstr "" + +msgid "Save timeshift file in movie directory" +msgstr "" + +# +msgid "Scaler sharpness" +msgstr "Scaler sharpness" + +#, fuzzy +msgid "Scaling mode" +msgstr "حالت Scaling" + +msgid "Scan" +msgstr "" + +msgid "Scan " +msgstr "اسکن" + +#. TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' +#, fuzzy, python-format +msgid "Scan %s" +msgstr "اسکن" + +#. TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' +#, fuzzy, python-format +msgid "Scan %s band" +msgstr "اسکن باند EU MID" + +msgid "Scan additional SR" +msgstr "" + +#, fuzzy +msgid "Scan files..." +msgstr "اسکن فایل ها" + +#, fuzzy +msgid "Scan wireless networks" +msgstr "اسکن شبکه های بدون سیم" + +msgid "Scan your network for wireless access points and connect to them using your selected wireless device.\n" +msgstr "اسکن شبکه شما برای نقاط دسترسی بدون سیم و اتصال به آنها با استفاده از وسیله بدون سیم انتخاب شده توسط شما\n" + +#, python-format +msgid "Scanning %s..." +msgstr "در حال اسکن %s" + +#. TRANSLATORS: The stb is performing a channel scan, progress percentage is printed in '%d' (and '%%' will show a single '%' symbol) +#, fuzzy, python-format +msgid "Scanning - %d%% completed" +msgid_plural "Scanning - %d%% completed" +msgstr[0] "اسکن کامل شد ، %d کانال یافت شد" + +#, fuzzy, python-format +msgid "Scanning completed, %d channel found" +msgid_plural "Scanning completed, %d channels found" +msgstr[0] "اسکن کامل شد ، %d کانال یافت شد" + +msgid "Scanning failed!" +msgstr "اسکن ناموفق" + +msgid "Scanning..." +msgstr "در حال اسکن" + +msgid "Scans default lamedbs sorted by satellite with a connected dish positioner" +msgstr "" + +msgid "Search east" +msgstr "جستجوی شرق" + +msgid "Search west" +msgstr "جستجوی غرب" + +msgid "Searching" +msgstr "در حال جستجو" + +msgid "Searching east ..." +msgstr "جستجوی شرق" + +msgid "Searching for available updates. Please wait..." +msgstr "در حال جستجو برای به آپدیت های در فعال ، لطفا صبر کنید" + +msgid "Searching for new installed or removed packages. Please wait..." +msgstr "جستجو برای بسته هایی که به تازگی نصب یا حذف شده اند ، لطفا صبر کنید" + +msgid "Searching west ..." +msgstr "جستجوی غرب" + +msgid "Second cable of motorized LNB" +msgstr "" + +msgid "Secondary DNS" +msgstr "DNS دوم" + +msgid "Seek" +msgstr "به دنبال" + +msgid "Seek backward" +msgstr "" + +msgid "Seek backward (enter time)" +msgstr "" + +msgid "Seek forward" +msgstr "" + +msgid "Seek forward (enter time)" +msgstr "" + +msgid "Select" +msgstr "انتخاب" + +#, fuzzy +msgid "Select CAId" +msgstr "انتخاب" + +msgid "Select HDD" +msgstr "انتخاب دیسک سخت" + +#, fuzzy +msgid "Select a bouquet" +msgstr "انتخاب فیلم" + +msgid "Select a movie" +msgstr "انتخاب فیلم" + +#, fuzzy +msgid "Select a network adapter" +msgstr "انتخاب آداپتور شبکه" + +#, fuzzy +msgid "Select a skin" +msgstr "انتخاب فیلم" + +#, fuzzy +msgid "Select a tuner" +msgstr "انتخاب فیلم" + +#, fuzzy +msgid "Select a wireless network" +msgstr "انتخاب شبکه بدون سیم" + +msgid "Select action" +msgstr "" + +#, python-format +msgid "Select action for timer %s:" +msgstr "" + +msgid "Select all" +msgstr "" + +#, fuzzy +msgid "Select an image to be downloaded" +msgstr "انتخاب ایمیج برای دانلود" + +msgid "Select audio track" +msgstr "انتخاب آهنگ صوتی" + +#, fuzzy +msgid "Select backup files" +msgstr "انتخاب فایل های نسخه پشتیبان" + +#, fuzzy +msgid "Select backup location" +msgstr "انتخاب محل نسخه پشتیبان" + +msgid "Select channel to record from" +msgstr "انتخاب کانال برای ضبط کردن از" + +msgid "Select copy destination for:" +msgstr "انتخاب مقصد رونوشت برای:" + +msgid "Select default EPG type..." +msgstr "" + +msgid "Select desired image from feed list" +msgstr "انتخاب ایمیج درخواستی از لیست" + +msgid "Select destination for:" +msgstr "انتخاب مقصد برای:" + +msgid "Select files for backup." +msgstr "انتخاب فایل برای تهیه نسخه پشتیبان" + +# +msgid "Select files/folders to backup" +msgstr "انتخاب فایل و پوشه ها برای تهیه نسخه پشتیبان" + +msgid "Select input device" +msgstr "انتخاب وسیله ورودی" + +msgid "Select input device." +msgstr "انتخاب وسیله ورودی" + +msgid "Select interface" +msgstr "انتخاب رابط" + +#, fuzzy +msgid "Select location" +msgstr "انتخاب محل" + +#, fuzzy +msgid "Select movie" +msgstr "انتخاب فیلم" + +msgid "Select provider to add..." +msgstr "انتخاب ارائه دهنده برای اضافه کردن" + +msgid "Select refresh rate" +msgstr "انتخاب نرخ تجدید" + +msgid "Select satellites" +msgstr "" + +msgid "Select service to add..." +msgstr "انتخاب کانال برای اضافه شدن" + +msgid "Select sort method:" +msgstr "" + +#, fuzzy +msgid "Select target folder" +msgstr "انتخاب پوشه مقصد" + +#, fuzzy +msgid "Select the movie path" +msgstr "لطفا مسیر فیلم را انتخاب کنید" + +#, fuzzy +msgid "Select upgrade source" +msgstr "انتخاب منبع به روز رسانی برای ویرایش" + +msgid "Select upgrade source to edit." +msgstr "انتخاب منبع به روز رسانی برای ویرایش" + +msgid "Select video input with up/down buttons" +msgstr "انتخاب ورودی تصویر توسط کلید های بالا/پایین" + +msgid "Select video mode" +msgstr "انتخاب حالت تصویر" + +msgid "Select wireless network" +msgstr "انتخاب شبکه بدون سیم" + +msgid "Select your provider, and press OK to start the scan" +msgstr "" + +msgid "Selecting satellites 1 (USALS)" +msgstr "" + +msgid "Selecting satellites 2 (USALS)" +msgstr "" + +# +msgid "Send DiSEqC only on satellite change" +msgstr "ارسال DiSEqC فقط هنگام تغییر ماهواره" + +msgid "Separate titles with a main menu" +msgstr "جدا کردن عناوین با یک منوی اصلی" + +msgid "Sequence repeat" +msgstr "تکرار دنباله" + +msgid "Serbian" +msgstr "صربستانی" + +msgid "Service" +msgstr "کانال" + +msgid "Service has been added to the favourites." +msgstr "کانال به مورد علاقه اضافه شد" + +msgid "Service has been added to the selected bouquet." +msgstr "کانال به لیست انتخاب شده اضافه شد" + +#, fuzzy +msgid "Service info" +msgstr "اطلاعات کانال" + +msgid "" +"Service invalid!\n" +"(Timeout reading PMT)" +msgstr "" +"کانال نامعتبر است\n" +"(مهلت خواندن PMT پایان یافت)" + +#, fuzzy +msgid "Service name" +msgstr "نام وسیله:" + +msgid "" +"Service not found!\n" +"(SID not found in PAT)" +msgstr "" +"کانال یافت نشد\n" +"(SID در PAT یافت نشد)" + +msgid "Service reference" +msgstr "ارجاع کانال" + +msgid "Service scan" +msgstr "جستجوی کانال" + +#, fuzzy +msgid "Service searching" +msgstr "جستجوی کانال" + +#, fuzzy +msgid "Service title mode" +msgstr "انتخاب حالت تصویر" + +msgid "" +"Service unavailable!\n" +"Check tuner configuration!" +msgstr "" +"کانال در دسترس نیست\n" +"تنظیمات تیونر را بررسی کنید" + +msgid "Services" +msgstr "کانال ها" + +msgid "Set default" +msgstr "" + +#, fuzzy +msgid "Set end time" +msgstr "تنظیم زمان پایان" + +msgid "Set fixed" +msgstr "تنظیم ثابت" + +msgid "Set fps for external subtitles" +msgstr "" + +# +msgid "Set interface as default Interface" +msgstr "تنظیم رابط به عنوان رابط پیش فرض" + +#, fuzzy +msgid "Set limits" +msgstr "تنظیم محدودیت ها" + +# +#, fuzzy +msgid "Set the type of the progress indication in the channel selection screen." +msgstr "نمایش پیشرفت رویداد در انتخاب کانال" + +msgid "Set time window to 1 hour" +msgstr "تنظیم پنجره زمان تا 1 ساعت" + +msgid "Set time window to 2 hours" +msgstr "تنظیم پنجره زمان تا 2 ساعت" + +msgid "Set time window to 3 hours" +msgstr "تنظیم پنجره زمان تا 3 ساعت" + +msgid "Set time window to 4 hours" +msgstr "تنظیم پنجره زمان تا 4 ساعت" + +msgid "Set time window to 5 hours" +msgstr "تنظیم پنجره زمان تا 5 ساعت" + +msgid "Set time window to 6 hours" +msgstr "" + +# +#, fuzzy +msgid "Set voltage and 22KHz" +msgstr "تنظیم ولتاژ و 22KHz" + +msgid "Settings" +msgstr "تنظیمات" + +msgid "Setup" +msgstr "تنظیمات" + +msgid "Setup menu" +msgstr "منوی تنظیمات" + +#, fuzzy +msgid "Setup mode" +msgstr "حالت تنظیمات" + +msgid "Setup your positioner" +msgstr "تنظیم مکان یاب شما" + +#, fuzzy +msgid "Setup your satellite equipment" +msgstr "تجهیزات ماهواره" + +# +#, python-format +msgid "Shall the USB stick wizard proceed and program the image file %s into flash memory?" +msgstr "" + +# +msgid "Sharpness" +msgstr "Sharpness" + +msgid "Short filenames" +msgstr "نام های کوتاه فایل" + +msgid "Show EIT now/next in infobar" +msgstr "نمایش EIT الان/بعدی در نوار اطلاعات" + +#, fuzzy +msgid "Show EPG for current channel..." +msgstr "نمایش نوار اطلاعات هنگام تعویض رخداد" + +msgid "Show EPG..." +msgstr "" + +msgid "Show Games show" +msgstr "" + +msgid "Show SNR percentage instead of dB value" +msgstr "" + +msgid "Show VCR scart on main menu" +msgstr "" + +#, fuzzy +msgid "Show WLAN status" +msgstr "نمایش وضعیت شبکه بدون سیم" + +msgid "Show animation while busy" +msgstr "نمایش انیمیشن هنگام کار" + +#, fuzzy +msgid "Show background in radio mode" +msgstr "نمایش تصویر پس زمینه در حالت رادیو" + +msgid "Show bouquet selection menu" +msgstr "نمایش منوی انتخاب لیست" + +msgid "Show busy indicator when the system is busy." +msgstr "" + +msgid "Show channel numbers in channel selection" +msgstr "نمایش شماره کانال ها در انتخاب کانال" + +msgid "Show columns" +msgstr "" + +msgid "Show crypto icons" +msgstr "" + +msgid "Show crypto info in infobar" +msgstr "نمایش اطلاعات کد گذاری در نوار اطلاعات" + +msgid "Show detailed event info" +msgstr "نمایش اطلاعات همراه جزئیات رخداد" + +msgid "Show event details" +msgstr "" + +# +msgid "Show event-progress in channel selection" +msgstr "نمایش پیشرفت رویداد در انتخاب کانال" + +msgid "Show extended description" +msgstr "" + +#, fuzzy +msgid "Show extensions..." +msgstr "بسته ها" + +msgid "Show icon for new/unseen items" +msgstr "" + +msgid "Show in extensions menu" +msgstr "" + +#, fuzzy +msgid "Show info" +msgstr "نمایش اطلاعات" + +#, fuzzy +msgid "Show info line" +msgstr "نمایش اطلاعات" + +msgid "Show infobar on channel change" +msgstr "نمایش نوار اطلاعات هنگام تعویض کانال" + +msgid "Show infobar on event change" +msgstr "نمایش نوار اطلاعات هنگام تعویض رخداد" + +msgid "Show infobar on skip forward/backward" +msgstr "" + +msgid "Show latest commits on sourceforge" +msgstr "" + +# +#, fuzzy +msgid "Show message when recording starts" +msgstr "نمایش پیام هنگامی که ضبط کردن شروع میشود" + +#, fuzzy +msgid "Show movie lengths in movielist" +msgstr "آماده سازی طول فیلم ها در لیست فیلم" + +msgid "Show multi channel EPG" +msgstr "" + +msgid "Show picons in channel list" +msgstr "" + +msgid "Show positioner movement" +msgstr "نمایش گردش مکان یاب" + +msgid "Show screensaver" +msgstr "" + +msgid "Show second infobar" +msgstr "نمایش نوار اطلاعات دوم" + +msgid "Show service type icons" +msgstr "" + +msgid "Show services beginning with" +msgstr "نمایش کانال های که شروع میشوند با" + +#, fuzzy +msgid "Show shutdown menu" +msgstr "نمایش منوی انتخاب لیست" + +msgid "Show single service EPG" +msgstr "" + +msgid "Show status icons in Movielist" +msgstr "" + +msgid "Show status icons in movie list" +msgstr "" + +msgid "Show status icons in movielist" +msgstr "" + +#, fuzzy +msgid "Show tag menu" +msgstr "منوی تنظیمات" + +msgid "Show the radio player..." +msgstr "نمایش پخش کننده رادیو" + +msgid "Show the tv player..." +msgstr "نمایش پخش کننده تلوزیون" + +msgid "Show warning when timeshift is stopped" +msgstr "" + +msgid "Shows the state of your wireless LAN connection.\n" +msgstr "نمایش وضعیت اتصال شبکه بدون سیم شما\n" + +#, fuzzy +msgid "Shuffle playlist" +msgstr "ذخیره لیست پخش" + +msgid "Shutdown" +msgstr "خاموش کردن" + +msgid "Shutdown when in Standby" +msgstr "" + +#, fuzzy +msgid "Side by side" +msgstr "پهلو به پهلو" + +msgid "Signal OK, proceeding" +msgstr "" + +msgid "Signal quality" +msgstr "کیفیت سیگنال" + +# +#, fuzzy +msgid "Signal strength:" +msgstr "قدرت سیگنال:" + +# +msgid "Signal: " +msgstr "سیگنال:" + +msgid "Similar" +msgstr "شبیه" + +msgid "Similar broadcasts:" +msgstr "" + +msgid "Simple" +msgstr "ساده" + +# +msgid "Simple titleset (compatibility for legacy players)" +msgstr "" + +msgid "Single" +msgstr "یک" + +msgid "Single EPG" +msgstr "یک EPG" + +msgid "Single satellite" +msgstr "یک ماهواره" + +#, fuzzy +msgid "Single step (GOP)" +msgstr "یک ماهواره" + +msgid "Single transponder" +msgstr "یک فرستنده" + +msgid "Site latitude" +msgstr "عرض جغرافیایی سایت" + +msgid "Site longitude" +msgstr "طول جغرافیایی سایت" + +msgid "Skin" +msgstr "پوسته" + +msgid "Skins" +msgstr "پوسته ها" + +#, fuzzy +msgid "Skip empty services" +msgstr "نادیده گرفتن کانال های خالی" + +msgid "Skip internet connection check (disables automatic package installation)" +msgstr "" + +#, fuzzy +msgid "Sleep timer" +msgstr "زمان خواب" + +msgid "SleepTimer Configuration" +msgstr "" + +msgid "Sleeptimer" +msgstr "" + +msgid "Slide picture in loop" +msgstr "" + +msgid "Slide show interval (sec.)" +msgstr "" + +#, python-format +msgid "Slot %d" +msgstr "شکاف %d" + +msgid "Slovak" +msgstr "اسلواکی" + +# +msgid "Slovenian" +msgstr "اسلوونیایی" + +msgid "Slow" +msgstr "آهسته" + +#, fuzzy +msgid "Slow motion speeds" +msgstr "سرعت حرکت آهسته" + +#, fuzzy +msgid "Small progress" +msgstr "در حال اجرا" + +msgid "Social/Political/Economics" +msgstr "" + +msgid "SoftCam / CI" +msgstr "SoftCam / CI" + +#, fuzzy +msgid "Softcam type" +msgstr "نرم افزار" + +msgid "Software" +msgstr "نرم افزار" + +msgid "Software management" +msgstr "مدیریت نرم افزار" + +msgid "Software manager setup" +msgstr "تنظیمات مدیریت نرم افزار" + +msgid "Software restore" +msgstr "بازگردانی نرم افزار" + +# +msgid "Software update" +msgstr "به روز رسانی نرم افزار" + +msgid "Softwaremanager information" +msgstr "اطلاعات مدیریت نرم افزار" + +msgid "Some plugins are not available:\n" +msgstr "بعضی از پلاگین ها در دسترس نیستند:\n" + +# +#, fuzzy, python-format +msgid "Sorry, %s has not been installed!" +msgstr "متاسفانه MediaScanner نصب نشده است" + +msgid "Sorry, deleting directories can (for now) only be done through the trash can." +msgstr "" + +# +#, fuzzy +msgid "Sorry, no backups found!" +msgstr "متاسفانه هیچ نسخه پشتیبانی یافت نشد" + +# +#, fuzzy +msgid "Sorry, no details available!" +msgstr "متاسفانه هیچ جزئیاتی در دسترس نیست" + +# +#, fuzzy +msgid "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." +msgstr "" +"متاسفانه مقصد نسخه پشتیبان شما قابل نوشتن نیست\n" +"لطفا محل دیگری را انتخاب کنید" + +msgid "Sort" +msgstr "چیدن" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort A-Z" +msgstr "چیدمان A-Z" + +msgid "Sort by" +msgstr "" + +msgid "Sort list:" +msgstr "" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +#, fuzzy +msgid "Sort time" +msgstr "چیدمان بر اساس زمان" + +msgid "Sound" +msgstr "صدا" + +#, fuzzy +msgid "Sound carrier" +msgstr "حمل کننده صدا" + +msgid "Source request" +msgstr "درخواست منبع" + +msgid "South" +msgstr "جنوب" + +msgid "Spanish" +msgstr "اسپانیایی" + +msgid "Specify the end time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the end time until the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify the start time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the start time when the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify timeframe to ignore inactivity sleeptimer" +msgstr "" + +msgid "Specify timeframe to ignore the shutdown in standby" +msgstr "" + +msgid "Split preview mode" +msgstr "حالت پیش نمایش جدا" + +msgid "Splitscreen" +msgstr "" + +msgid "Sports" +msgstr "" + +#, fuzzy +msgid "Standard" +msgstr "خاموشی موقت" + +msgid "Standart list" +msgstr "" + +msgid "Standby" +msgstr "خاموشی موقت" + +#, fuzzy +msgid "Standby / restart" +msgstr "خاموشی موقت / راه اندازی مجدد" + +msgid "Standby after current event" +msgstr "" + +# +#, fuzzy, python-format +msgid "Standby fan %d PWM" +msgstr "خاموشی موقت فن %d PWM" + +# +#, fuzzy, python-format +msgid "Standby fan %d voltage" +msgstr "خاموشی موقت فن %d ولتاژ" + +msgid "Standby in " +msgstr "" + +msgid "StandbyLED" +msgstr "" + +msgid "Start from the beginning" +msgstr "شروع از ابتدای کار" + +msgid "Start offline decode" +msgstr "شروع رمز گشایی آفلاین" + +msgid "Start recording?" +msgstr "شروع ضبط کردن؟" + +msgid "Start test" +msgstr "شروع تست" + +#, fuzzy +msgid "Start time" +msgstr "زمان شروع" + +msgid "Start time to ignore inactivity sleeptimer" +msgstr "" + +msgid "Start time to ignore shutdown in standby" +msgstr "" + +#, fuzzy +msgid "Start timeshift" +msgstr "شروع تست" + +msgid "Start with list screen" +msgstr "" + +msgid "Starting on" +msgstr "شروع در" + +msgid "Startup the set top box in standby" +msgstr "" + +msgid "Startup to Standby" +msgstr "" + +msgid "Step east" +msgstr "یک درجه به شرق" + +msgid "Step west" +msgstr "یک درجه به غرب" + +msgid "Stepped east" +msgstr "به شرق جابجا شد" + +msgid "Stepped west" +msgstr "به غرب جابجا شد" + +msgid "Stop" +msgstr "توقف" + +#, fuzzy +msgid "Stop PiP" +msgstr "توقف" + +msgid "Stop current event and disable coming events" +msgstr "توقف رخداد فعلی و غیر فعال کردن رخداد های بعدی" + +msgid "Stop current event but not coming events" +msgstr "توقف رخداد فعلی بدون توجه به رخداد های بعدی" + +#, fuzzy +msgid "Stop entry" +msgstr "توقف تست" + +msgid "Stop playing this movie?" +msgstr "توقف پخش این فیلم؟" + +msgid "Stop recording" +msgstr "توقف ضبط کردن" + +msgid "Stop recording and delete" +msgstr "توقف ضبط و حذف آن" + +msgid "Stop service on return to movie list" +msgstr "" + +msgid "Stop test" +msgstr "توقف تست" + +# +msgid "Stop testing plane after # failed transponders" +msgstr "" + +# +msgid "Stop testing plane after # successful transponders" +msgstr "" + +msgid "Stop timer recording" +msgstr "" + +#, fuzzy +msgid "Stop timeshift" +msgstr "توقف تغییر زمان ؟" + +#, fuzzy +msgid "Stop timeshift?" +msgstr "توقف تغییر زمان ؟" + +msgid "Stopped" +msgstr "متوقف شده" + +msgid "Store at index" +msgstr "" + +msgid "Store position" +msgstr "ذخیره مکان" + +msgid "Stored position" +msgstr "مکان ذخیره شد" + +#, fuzzy +msgid "Stream" +msgstr "درخواست جریان" + +msgid "Stream request" +msgstr "درخواست جریان" + +msgid "Strongest position" +msgstr "قوی ترین مکان" + +msgid "Subservice list..." +msgstr "لیست کانال های فرعی" + +msgid "Subservices" +msgstr "کانال های فرعی" + +msgid "Subtitle Quickmenu" +msgstr "" + +#, fuzzy +msgid "Subtitle alignment" +msgstr "تراز متن سفارشی" + +#, fuzzy +msgid "Subtitle border width" +msgstr "پهنای حاشیه نوشته" + +msgid "Subtitle delay when timing is bad" +msgstr "" + +msgid "Subtitle delay when timing lacks" +msgstr "" + +#, fuzzy +msgid "Subtitle font size" +msgstr "اندازه قلم نوشته" + +msgid "Subtitle language selection 1" +msgstr "انتخاب زبان زیرنویس 1" + +msgid "Subtitle language selection 2" +msgstr "انتخاب زبان زیرنویس 2" + +msgid "Subtitle language selection 3" +msgstr "انتخاب زبان زیرنویس 3" + +msgid "Subtitle language selection 4" +msgstr "انتخاب زبان زیرنویس 4" + +#, fuzzy +msgid "Subtitle position" +msgstr "انتخاب زیرنویس" + +msgid "Subtitle selection" +msgstr "انتخاب زیرنویس" + +msgid "Subtitle selection..." +msgstr "انتخاب زیرنویس" + +msgid "Subtitle settings" +msgstr "تنظیمات زیرنویس" + +msgid "Subtitles" +msgstr "زیرنویس ها" + +msgid "Sun" +msgstr "یکشنبه" + +msgid "Sunday" +msgstr "یکشنبه" + +msgid "Swap PiP and main picture" +msgstr "" + +#, fuzzy +msgid "Swap services" +msgstr "جابجایی کانال ها" + +msgid "Swedish" +msgstr "سوئدی" + +msgid "Switch TV to correct input" +msgstr "" + +msgid "Switch between filelist/playlist" +msgstr "" + +msgid "Switch between normal mode and list mode" +msgstr "" + +msgid "Switch to HDMI in mode" +msgstr "" + +msgid "Switch to filelist" +msgstr "" + +msgid "Switch to next channel" +msgstr "" + +msgid "Switch to next channel in history" +msgstr "" + +#, fuzzy +msgid "Switch to next sub service" +msgstr "جابجایی به کانال فرعی بعدی" + +msgid "Switch to playlist" +msgstr "" + +#, fuzzy +msgid "Switch to previous channel" +msgstr "جابجایی به کانال فرعی قبلی" + +#, fuzzy +msgid "Switch to previous channel in history" +msgstr "جابجایی به کانال فرعی قبلی" + +#, fuzzy +msgid "Switch to previous sub service" +msgstr "جابجایی به کانال فرعی قبلی" + +# +msgid "Switchable tuner types:" +msgstr "انواع تیونر های قابل تعویض:" + +msgid "Symbol rate" +msgstr "سیمبل ریت" + +msgid "Symbol rate:" +msgstr "" + +msgid "Sync failure moving back to origin !" +msgstr "" + +msgid "System" +msgstr "سیستم" + +#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) +msgid "TRANSLATOR_INFO" +msgstr "اطلاعات مترجم" + +# +msgid "TS file is too large for ISO9660 level 1!" +msgstr "فایل TS بسیار بزرگ است برای ISO9660 level 1" + +msgid "TSID" +msgstr "TSID" + +msgid "TV physical address report" +msgstr "" + +msgid "TXT PID" +msgstr "TXT PID" + +msgid "Table of contents for collection" +msgstr "" + +# +msgid "Tags" +msgstr "برچسب ها" + +msgid "Teletext subtitle color" +msgstr "رنگ زیرنویس تله تکست" + +#, fuzzy +msgid "Temperature and fan control" +msgstr "کنترل دما و فن" + +msgid "Terrestrial" +msgstr "Terrestrial" + +msgid "Terrestrial provider" +msgstr "ارائه کننده Terrestrial" + +msgid "Test DiSEqC settings" +msgstr "تست تنظیمات DiSEqC" + +msgid "Test mode" +msgstr "حالت تست" + +msgid "Test the network configuration of your receiver.\n" +msgstr "" + +#, fuzzy +msgid "Test type" +msgstr "نوع تست" + +#, fuzzy +msgid "Text color" +msgstr "رنگ زیرنویس تله تکست" + +msgid "Thai" +msgstr "تایلندی" + +msgid "" +"Thank you for using the wizard.\n" +"Please press OK to continue." +msgstr "" +"برای استفاده از هدایتگر تشکر میکنیم\n" +"برای ادامه دادن دکمه OK را فشار دهید" + +#, fuzzy +msgid "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." +msgstr "" +"برای استفاده از هدایتگر تشکر میکنیم\n" +"برای ادامه دادن دکمه OK را فشار دهید" + +msgid "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?" +msgstr "" + +msgid "The PIN code has been changed successfully." +msgstr "رمز با موفقیت تغییر کرد" + +msgid "The PIN codes you entered are different." +msgstr "رمز های وارد شده متفاوت هستند" + +msgid "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" +msgstr "" + +msgid "The backup failed. Please choose a different backup location." +msgstr "" + +#, python-format +msgid "" +"The current beta image might not be stable.\n" +"For more information see %s." +msgstr "" + +#, python-format +msgid "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." +msgstr "" + +#, python-format +msgid "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" +msgstr "" + +msgid "The following files were found..." +msgstr "" + +msgid "The md5sum validation failed, the file may be corrupted!" +msgstr "" + +# +#, fuzzy +msgid "" +"The network wizard extension is not installed!\n" +"Please install it." +msgstr "" +"بسته هدایتگر شبکه نصب نشده است\n" +"لطفا آن را نصب کنید" + +#, python-format +msgid "The path %s already exists." +msgstr "" + +msgid "The pin code you entered is wrong." +msgstr "" + +#, python-format +msgid "The results have been written to %s." +msgstr "" + +msgid "The sleep timer has been activated." +msgstr "" + +msgid "The sleep timer has been disabled." +msgstr "" + +# +#, fuzzy +msgid "" +"The software management extension is not installed!\n" +"Please install it." +msgstr "" +"بسته مدیریت نرم افزار نصب نشده است\n" +"لطفا آن را نصب کنید" + +#, python-format +msgid "The status of the current beta image could not be checked because %s can not be reached." +msgstr "" + +msgid "The timer file (timers.xml) is corrupt and could not be loaded." +msgstr "" + +#, fuzzy +msgid "The user interface of your receiver is restarting" +msgstr "رابط کاربری دستگاه شما در حال راه اندازی مجدد است" + +#, fuzzy +msgid "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" +msgstr "رابط کاربری دستگاه شما در حال راه اندازی مجدد است" + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." +msgstr "" + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it." +msgstr "" + +msgid "The wizard can backup your current settings. Do you want to do a backup now?" +msgstr "" + +#, python-format +msgid "The wizard found a configuration backup. Do you want to restore your old settings from %s?" +msgstr "" + +msgid "The wizard is finished now." +msgstr "" + +msgid "There are at least " +msgstr "" + +# +#, fuzzy, python-format +msgid "There are at least %s updates available." +msgstr "به روز رسانی های در دسترس" + +msgid "There are currently no outstanding actions." +msgstr "" + +msgid "There are no updates available." +msgstr "" + +msgid "There is no signal to lock on !" +msgstr "" + +msgid "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" +msgstr "" + +msgid "This DVD RW medium is already formatted - reformatting will erase all content on the disc." +msgstr "" + +msgid "" +"This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!" +msgstr "" + +msgid "This plugin is installed." +msgstr "" + +msgid "This plugin is not installed." +msgstr "" + +msgid "This plugin will be installed." +msgstr "" + +msgid "This plugin will be removed." +msgstr "" + +#, python-format +msgid "This receiver cannot decode %s streams!" +msgstr "" + +msgid "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration" +msgstr "" + +msgid "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" +msgstr "" + +msgid "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" +msgstr "" + +msgid "" +"This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." +msgstr "" + +msgid "This test detects your configured LAN adapter." +msgstr "" + +msgid "" +"This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\n" +"Are you sure?" +msgstr "" + +msgid "Three" +msgstr "" + +msgid "Threshold" +msgstr "" + +msgid "Thu" +msgstr "" + +msgid "Thumbnails" +msgstr "" + +msgid "Thursday" +msgstr "" + +msgid "Time" +msgstr "" + +msgid "Time scale" +msgstr "" + +msgid "Timer" +msgstr "" + +msgid "Timer Overview" +msgstr "" + +msgid "Timer edit" +msgstr "" + +#, fuzzy +msgid "Timer editor" +msgstr "خروج از ویرایشگر" + +msgid "Timer entry" +msgstr "" + +msgid "Timer log" +msgstr "" + +msgid "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" +msgstr "" + +msgid "Timer overview" +msgstr "" + +#, fuzzy +msgid "Timer recording location" +msgstr "مکان ضبط کردن فوری" + +msgid "Timer sanity error" +msgstr "" + +msgid "Timer selection" +msgstr "" + +msgid "Timer selection..." +msgstr "" + +#, fuzzy +msgid "Timer type" +msgstr "نوع لیست" + +msgid "Timeshift" +msgstr "" + +msgid "Timeshift Live" +msgstr "" + +msgid "Timeshift location" +msgstr "" + +msgid "Timeshift not possible!" +msgstr "" + +msgid "Timezone" +msgstr "" + +msgid "Title" +msgstr "" + +msgid "Title properties" +msgstr "" + +msgid "Titleset mode" +msgstr "" + +msgid "To audio selection" +msgstr "" + +msgid "To subtitle selection" +msgstr "" + +msgid "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." +msgstr "" + +msgid "Today" +msgstr "" + +msgid "Toggle a cut mark at the current position" +msgstr "" + +#, fuzzy +msgid "Tone amplitude" +msgstr "طول جغرافیایی" + +msgid "Tone mode" +msgstr "" + +msgid "Toneburst" +msgstr "" + +msgid "Toneburst A/B" +msgstr "" + +msgid "Top and bottom" +msgstr "" + +msgid "Track" +msgstr "" + +msgid "Translation" +msgstr "" + +msgid "Translation:" +msgstr "" + +msgid "Translations" +msgstr "" + +msgid "Transmission mode" +msgstr "" + +msgid "Transponder" +msgstr "" + +#, fuzzy +msgid "Transponder type" +msgstr "فرستنده فعلی" + +msgid "Trash can" +msgstr "" + +msgid "Tries left:" +msgstr "" + +msgid "Try to find used transponders in cable network.. please wait..." +msgstr "" + +msgid "Trying to download a new packetlist. Please wait..." +msgstr "" + +msgid "Tue" +msgstr "" + +msgid "Tuesday" +msgstr "" + +msgid "Tune" +msgstr "" + +msgid "Tune and focus" +msgstr "" + +msgid "Tune failed!" +msgstr "" + +msgid "Tuner" +msgstr "" + +msgid "Tuner configuration" +msgstr "" + +msgid "Tuner is not supported" +msgstr "" + +msgid "Tuner slot" +msgstr "" + +msgid "Tuner status" +msgstr "" + +#, python-format +msgid "Tuner status %s" +msgstr "" + +msgid "Tuner type" +msgstr "" + +msgid "Turkish" +msgstr "" + +msgid "Turn on the power LED during standby." +msgstr "" + +msgid "Turning step size" +msgstr "" + +msgid "Two" +msgstr "" + +msgid "Type" +msgstr "" + +msgid "Type of scan" +msgstr "" + +msgid "USALS" +msgstr "" + +msgid "USALS calibration" +msgstr "" + +msgid "USB stick" +msgstr "" + +msgid "USB stick wizard" +msgstr "" + +msgid "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" + +msgid "Undo install" +msgstr "" + +msgid "Undo uninstall" +msgstr "" + +msgid "Unencrypted" +msgstr "" + +msgid "UnhandledKey" +msgstr "" + +msgid "Unicable" +msgstr "" + +msgid "Unicable LNB" +msgstr "" + +msgid "Unicable Martix" +msgstr "" + +msgid "Uninstall" +msgstr "" + +msgid "Universal LNB" +msgstr "" + +msgid "Unknown" +msgstr "" + +msgid "Unmount" +msgstr "" + +msgid "Unsupported" +msgstr "" + +msgid "Update" +msgstr "" + +msgid "Update and ask to reboot" +msgstr "" + +msgid "Update and reboot (recommended)" +msgstr "" + +#, fuzzy +msgid "Update channel list only" +msgstr "منوی لیست کانال" + +#, python-format +msgid "Update completed, %d package was installed." +msgid_plural "Update completed, %d packages were installed." +msgstr[0] "" + +msgid "Update completed. Do you want to reboot your receiver?" +msgstr "" + +msgid "Update failed. Your receiver does not have a working internet connection." +msgstr "" + +msgid "Update has completed." +msgstr "" + +msgid "Updatefeed not available." +msgstr "" + +msgid "Updating software catalog" +msgstr "" + +msgid "Upgrading" +msgstr "" + +msgid "Use" +msgstr "" + +msgid "Use DHCP" +msgstr "" + +msgid "Use EIT EPG information when it is available." +msgstr "" + +msgid "Use FreeSat EPG information when it is available." +msgstr "" + +msgid "Use MHW EPG information when it is available." +msgstr "" + +msgid "Use Netmed EPG information when it is available." +msgstr "" + +msgid "Use TV remote control" +msgstr "" + +msgid "Use USALS for this sat" +msgstr "" + +msgid "Use ViaSat EPG information when it is available." +msgstr "" + +msgid "Use Virgin EPG information when it is available." +msgstr "" + +msgid "Use a gateway" +msgstr "" + +msgid "Use fastscan channel names" +msgstr "" + +msgid "Use fastscan channel numbering" +msgstr "" + +msgid "Use frequency or channel" +msgstr "" + +msgid "Use individual settings for each directory" +msgstr "" + +#, fuzzy +msgid "Use interface" +msgstr "انتخاب رابط" + +msgid "Use official channel numbering" +msgstr "" + +msgid "Use original DVB subtitle position" +msgstr "" + +msgid "Use original teletext position" +msgstr "" + +msgid "Use power measurement" +msgstr "" + +msgid "Use the network wizard to configure selected network adapter" +msgstr "" + +#, fuzzy +msgid "Use the network wizard to configure your network\n" +msgstr "لطفا صبر کنید ، ما در حال پیکربندی شبکه شما هستیم" + +msgid "Use the up/down keys on your remote control to select an option. After that, press OK." +msgstr "" + +msgid "Use the wizard to set up basic features" +msgstr "" + +#, fuzzy +msgid "Use these input device settings?" +msgstr "خروج از انتخاب وسیله ورودی" + +#, fuzzy +msgid "Use these settings?" +msgstr "بازگردانی تنظیمات سیستم" + +msgid "Use this video enhancement settings?" +msgstr "" + +#, fuzzy +msgid "Use trash can in movielist" +msgstr "بازگشت به لیست فیلم" + +msgid "Used service scan type" +msgstr "" + +msgid "User - bouquets" +msgstr "" + +msgid "User defined" +msgstr "" + +msgid "User defined transponder" +msgstr "" + +#, fuzzy +msgid "User interface" +msgstr "انتخاب رابط" + +msgid "Username" +msgstr "" + +#, python-format +msgid "Using LNB %d" +msgstr "" + +msgid "Using fixed address" +msgstr "" + +#, python-format +msgid "Using tuner %s" +msgstr "" + +msgid "Usually when the subtitle language is the same as the audio language, the subtitles will not be used. Enable this option to allow these subtitles to be used." +msgstr "" + +msgid "VCR scart" +msgstr "" + +msgid "VMGM (intro trailer)" +msgstr "" + +msgid "Vertical" +msgstr "" + +msgid "Vertical turning speed" +msgstr "" + +msgid "Video PID" +msgstr "" + +msgid "Video enhancement preview" +msgstr "" + +msgid "Video enhancement settings" +msgstr "" + +msgid "Video enhancement setup" +msgstr "" + +msgid "Video fine tuning" +msgstr "" + +msgid "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." +msgstr "" + +msgid "Video mode selection." +msgstr "" + +#, fuzzy +msgid "Video output" +msgstr "خروجی 12 ولت" + +#, fuzzy +msgid "Video setup" +msgstr "تنظیمات شبکه" + +#, fuzzy +msgid "Video wizard" +msgstr "خروج از هدایتگر" + +#, python-format +msgid "Video: %s fps" +msgstr "" + +msgid "VideoMode" +msgstr "" + +msgid "Videocodec" +msgstr "" + +msgid "Videoformat" +msgstr "" + +msgid "Videosize" +msgstr "" + +msgid "View Rass interactive..." +msgstr "" + +msgid "View details" +msgstr "" + +msgid "View list of available " +msgstr "" + +msgid "View list of available CommonInterface extensions" +msgstr "" + +msgid "View list of available EPG extensions." +msgstr "" + +msgid "View list of available Satellite equipment extensions." +msgstr "" + +msgid "View list of available communication extensions." +msgstr "" + +msgid "View list of available default settings" +msgstr "" + +msgid "View list of available display and userinterface extensions." +msgstr "" + +msgid "View list of available multimedia extensions." +msgstr "" + +msgid "View list of available networking extensions" +msgstr "" + +msgid "View list of available recording extensions" +msgstr "" + +msgid "View list of available skins" +msgstr "" + +msgid "View list of available software extensions" +msgstr "" + +msgid "View list of available system extensions" +msgstr "" + +#, fuzzy +msgid "View photos..." +msgstr "تنظیمات صدا" + +msgid "View teletext..." +msgstr "" + +msgid "View video CD..." +msgstr "" + +msgid "Virtual keyboard" +msgstr "" + +msgid "Voltage mode" +msgstr "" + +msgid "Volume" +msgstr "" + +msgid "W" +msgstr "" + +msgid "WEP" +msgstr "" + +msgid "WLAN connection" +msgstr "" + +msgid "WPA" +msgstr "" + +msgid "WPA or WPA2" +msgstr "" + +msgid "WPA2" +msgstr "" + +msgid "WSS on 4:3" +msgstr "" + +msgid "Waiting" +msgstr "" + +msgid "Waiting for mount" +msgstr "" + +#, fuzzy +msgid "Waiting for partition" +msgstr "در حال جابجایی به موقعیت" + +msgid "Wakeup" +msgstr "" + +msgid "Wakeup TV from standby" +msgstr "" + +msgid "Wakeup receiver for start timer" +msgstr "" + +msgid "Wakeup receiver from standby" +msgstr "" + +msgid "Wakeup signal from TV" +msgstr "" + +msgid "Wakeup type" +msgstr "" + +msgid "Warning: no LNB; using factory defaults." +msgstr "" + +#, fuzzy +msgid "Watch movies..." +msgstr "پخش فیلم های ضبط شده" + +#, fuzzy +msgid "Watch recordings..." +msgstr "شروع ضبط کردن؟" + +msgid "Wed" +msgstr "" + +msgid "Wednesday" +msgstr "" + +msgid "Weekday" +msgstr "" + +msgid "Weighted position" +msgstr "" + +msgid "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." +msgstr "" + +msgid "Welcome to the image upgrade wizard. The wizard will assist you in upgrading the firmware of your receiver by providing a backup facility for your current settings and a short explanation of how to upgrade your firmware." +msgstr "" + +msgid "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" +msgstr "" + +msgid "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." +msgstr "" + +msgid "Welcome..." +msgstr "" + +msgid "West" +msgstr "" + +msgid "West limit set" +msgstr "" + +msgid "What do you want to scan?" +msgstr "" + +msgid "When enabled the PiP can be closed by the exit button." +msgstr "" + +msgid "When enabled the arrow buttons around the OK button will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled the left, right, CH+/-, B+/-, P+/- buttons will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled you can specify a timeframe to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "When enabled you can specify a timeframe were the inactivity sleeptimer is ignored. Not the detection is disabled during this timeframe but the inactivity timeout is disabled" +msgstr "" + +msgid "When enabled you can zap channels with the CH+/-, B+/-, P+/- buttons instead of opening the channel selection list." +msgstr "" + +msgid "When enabled you get the channel selection list via the OK button, the infobar toggle is then transfered to exit button" +msgstr "" + +msgid "When enabled, AIT data will be included in http streams. This allows a client receiver to use HbbTV." +msgstr "" + +msgid "When enabled, ECM data will be included in http streams. This allows a client receiver to do the descrambling." +msgstr "" + +msgid "When enabled, EIT data will be included in http streams. This allows a client receiver to show EPG." +msgstr "" + +msgid "When enabled, a popup message will be shown when a movie has finished and the next one will start." +msgstr "" + +msgid "When enabled, a popup message will be shown when a recording starts." +msgstr "" + +msgid "When enabled, a radio background image will be visible while listening to a radio channel." +msgstr "" + +msgid "When enabled, a recording is allowed to interrupt live tv, when there are no free tuners." +msgstr "" + +msgid "When enabled, a warning will be displayed and the user will get an option to stop or to continue the timeshift." +msgstr "" + +msgid "When enabled, authentication is required to watch http streams." +msgstr "" + +msgid "When enabled, channel numbering will start at '1' for each bouquet." +msgstr "" + +msgid "When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen." +msgstr "" + +msgid "When enabled, continue to the next bouquet when the last channel of the current bouquet is reached while changing channels." +msgstr "" + +msgid "When enabled, deleted recordings are moved to the trash can, instead of being deleted immediately." +msgstr "" + +msgid "When enabled, display the EIT now/next eventdata in infobar. When disabled, display now/next eventdata from the EPG cache instead." +msgstr "" + +msgid "When enabled, encryption info will be shown in the infobar (when supported by the skin)." +msgstr "" + +msgid "When enabled, error messages related to the Common Interface module will not be shown." +msgstr "" + +msgid "When enabled, error messages related to zapping will not be shown." +msgstr "" + +msgid "When enabled, external subtitles will be always turned on for playback movie." +msgstr "" + +msgid "When enabled, graphical DVB subtitles are preferred over teletext subtitles, when both types are available." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be centered horizontally." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be displayed at their original position." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be displayed in yellow, instead of the original color." +msgstr "" + +msgid "When enabled, http streams are descrambled on the server side. The (remote) client receiver does not have to do descrambling." +msgstr "" + +msgid "When enabled, it is possible to leave the movieplayer with exit." +msgstr "" + +msgid "When enabled, measure power consumption to detect when the rotor stops turning (when supported by the tuner)." +msgstr "" + +msgid "When enabled, number markers will be hiden." +msgstr "" + +msgid "When enabled, services may be grouped in multiple bouquets." +msgstr "" + +#, fuzzy +msgid "When enabled, show channel numbers in the channel selection screen." +msgstr "نمایش شماره کانال ها در انتخاب کانال" + +msgid "When enabled, subtitles for the hearing impaired can be used." +msgstr "" + +msgid "When enabled, subtitles for the hearing impaired will be preferred over normal subtitles, when both types are available." +msgstr "" + +msgid "When enabled, teletext pages will be cached, allowing faster access." +msgstr "" + +msgid "When enabled, teletext subtitles will be displayed at their original position." +msgstr "" + +msgid "When enabled, the VCR scart option will be shown on the main menu" +msgstr "" + +msgid "When enabled, the channel selection list will be hidden while listening to a radio channel" +msgstr "" + +msgid "When enabled, the infobar will be displayed when a new event starts." +msgstr "" + +msgid "When enabled, the infobar will be displayed when changing channels." +msgstr "" + +msgid "When enabled, the infobar will be displayed when skipping forwards/backwards during media playback." +msgstr "" + +msgid "When enabled, the lenght of each recording will be shown in the movielist (this might cause some additional loading time)." +msgstr "" + +msgid "When enabled, the original line breaks will be removed from the teletext subtitles." +msgstr "" + +msgid "When enabled, the receiver will automatically use the audio track which you selected before." +msgstr "" + +msgid "When enabled, the receiver will automatically use the subtitles which you selected before." +msgstr "" + +msgid "When enabled, the receiver will no longer monitor the tuned transponder for possible changes. Do not use this option unless you know what you are doing." +msgstr "" + +msgid "When enabled, the receiver will select an AC3 track (when available)." +msgstr "" + +msgid "When enabled, the receiver will select an AC3+ track (when available)." +msgstr "" + +msgid "When enabled, timeshift starts automatically in background after specified time." +msgstr "" + +msgid "When enabled, use DHCP for the IP configuration." +msgstr "" + +msgid "When enabled, your receiver will detect activity on the VCR SCART input." +msgstr "" + +msgid "When nonzero, a recording will start earlier than the starting time indicated by the EPG." +msgstr "" + +msgid "When nonzero, a recording will stop later than the ending time indicated by the EPG." +msgstr "" + +msgid "When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture." +msgstr "" + +msgid "When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture." +msgstr "" + +msgid "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" +msgstr "" + +msgid "Where do you want to backup your settings?" +msgstr "" + +msgid "Where to save temporary timeshift recordings?" +msgstr "" + +msgid "Wireless LAN" +msgstr "" + +#, fuzzy +msgid "Wireless network" +msgstr "اسکن شبکه های بدون سیم" + +#, fuzzy +msgid "Wireless network configuration..." +msgstr "پیکربندی شبکه" + +msgid "Wireless network connection setup" +msgstr "" + +msgid "Wireless network connection setup." +msgstr "" + +msgid "Wireless network state" +msgstr "" + +msgid "With popup" +msgstr "" + +msgid "Without popup" +msgstr "" + +msgid "Would you like to install a softcam?" +msgstr "" + +msgid "Write error while recording. Disk full?\n" +msgstr "" + +msgid "Write failed!" +msgstr "" + +msgid "YPbPr" +msgstr "" + +msgid "Year" +msgstr "" + +msgid "Yellow DVB subtitles" +msgstr "" + +msgid "Yes" +msgstr "" + +msgid "Yes and save" +msgstr "" + +msgid "Yes and save in movie dir" +msgstr "" + +msgid "Yes to all" +msgstr "" + +msgid "Yes, always" +msgstr "" + +msgid "Yes, and delete this movie" +msgstr "" + +msgid "Yes, backup my settings!" +msgstr "" + +msgid "Yes, delete this movie and return to movie list" +msgstr "" + +msgid "Yes, do a manual scan now" +msgstr "" + +msgid "Yes, do an automatic scan now" +msgstr "" + +msgid "Yes, do another manual scan now" +msgstr "" + +msgid "Yes, perform a shutdown now." +msgstr "" + +msgid "Yes, restore the settings now" +msgstr "" + +msgid "Yes, returning to movie list" +msgstr "" + +msgid "Yesterday" +msgstr "" + +#, python-format +msgid "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" +msgstr "" + +msgid "You can cancel the installation." +msgstr "" + +msgid "You can cancel the removal." +msgstr "" + +msgid "You can continue watching TV etc. while this is running." +msgstr "" + +msgid "You can install this plugin." +msgstr "" + +msgid "You can only burn receiver recordings!" +msgstr "" + +msgid "You can remove this plugin." +msgstr "" + +msgid "You cannot delete this!" +msgstr "" + +msgid "You didn't select a channel to record from." +msgstr "" + +msgid "You have chosen to backup your settings. Please press OK to start the backup now." +msgstr "" + +msgid "You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased." +msgstr "" + +msgid "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." +msgstr "" + +#, python-format +msgid "You have to wait %s!" +msgstr "" + +msgid "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." +msgstr "" + +msgid "You system does not support ext4" +msgstr "" + +msgid "Your backup succeeded. We will now continue to explain the further upgrade process." +msgstr "" + +msgid "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" +msgstr "" + +msgid "Your current collection will get lost!" +msgstr "" + +msgid "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." +msgstr "" + +msgid "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" + +msgid "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." +msgstr "" + +#, python-format +msgid "Your internet connection is working (ip: %s)" +msgstr "" + +msgid "Your network configuration has been activated." +msgstr "" + +msgid "Your receiver does not have an internet connection" +msgstr "" + +msgid "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" +msgstr "" + +msgid "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." +msgstr "" + +msgid "Your receiver is rebooting" +msgstr "" + +msgid "Your receiver is shutting down" +msgstr "" + +msgid "Your receiver is shutting down. Please stand by..." +msgstr "" + +msgid "Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver." +msgstr "" + +msgid "Your receiver will got to stand by due to the sleeptimer." +msgstr "" + +msgid "Your receiver will got to standby due to inactivity." +msgstr "" + +msgid "Your receiver will restart after pressing OK on your remote control." +msgstr "" + +msgid "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." +msgstr "" + +msgid "Zap" +msgstr "" + +msgid "Zap back to previously tuned service?" +msgstr "" + +msgid "Zap back to service before positioner setup?" +msgstr "" + +msgid "Zap back to service before tuner setup?" +msgstr "" + +msgid "Zap focus to Picture in Picture" +msgstr "" + +msgid "Zap focus to main screen" +msgstr "" + +msgid "Zap mode" +msgstr "" + +msgid "Zap to selected channel" +msgstr "" + +msgid "Zap to selected channel, or show detailed event info (depends on configuration)" +msgstr "" + +msgid "[alternative edit]" +msgstr "" + +msgid "[bouquet edit]" +msgstr "" + +msgid "[favourite edit]" +msgstr "" + +msgid "[move mode]" +msgstr "" + +msgid "a gui to assign services/providers to common interface modules" +msgstr "" + +msgid "a gui to assign services/providers/caids to common interface modules" +msgstr "" + +msgid "abort alternatives edit" +msgstr "" + +msgid "abort bouquet edit" +msgstr "" + +msgid "abort favourites edit" +msgstr "" + +msgid "about to start" +msgstr "" + +msgid "activate network adapter configuration" +msgstr "" + +msgid "add alternatives" +msgstr "" + +msgid "add bookmark" +msgstr "" + +msgid "add bouquet" +msgstr "" + +msgid "add marker" +msgstr "" + +msgid "add service to bouquet" +msgstr "" + +msgid "add service to favourites" +msgstr "" + +msgid "add to parental protection" +msgstr "" + +msgid "adult movie/drama" +msgstr "" + +msgid "advanced" +msgstr "" + +msgid "adventure/western/war" +msgstr "" + +msgid "advertisement/shopping" +msgstr "" + +msgid "after " +msgstr "" + +msgid "alphabetic" +msgstr "" + +msgid "alphabetic reverse" +msgstr "" + +msgid "alternative" +msgstr "" + +msgid "always" +msgstr "" + +msgid "and select next channel" +msgstr "" + +msgid "and select previous channel" +msgstr "" + +msgid "arts/culture (without music, general)" +msgstr "" + +msgid "arts/culture magazine" +msgstr "" + +msgid "athletics" +msgstr "" + +msgid "audio tracks" +msgstr "" + +msgid "auto" +msgstr "" + +#, fuzzy +msgid "automatic" +msgstr "خودکار" + +msgid "back" +msgstr "" + +msgid "background image" +msgstr "" + +msgid "ballet" +msgstr "" + +#, python-format +msgid "bc%s" +msgstr "" + +msgid "better" +msgstr "" + +msgid "black" +msgstr "" + +msgid "black & white" +msgstr "" + +msgid "blacklist" +msgstr "" + +msgid "blue" +msgstr "" + +msgid "broadcasting/press" +msgstr "" + +msgid "by date" +msgstr "" + +msgid "cartoon/puppets" +msgstr "" + +msgid "center" +msgstr "" + +msgid "centered" +msgstr "" + +msgid "centered, wrapped" +msgstr "" + +msgid "chapters" +msgstr "" + +msgid "childrens's/youth program (general)" +msgstr "" + +msgid "circular left" +msgstr "" + +msgid "circular right" +msgstr "" + +msgid "comedy" +msgstr "" + +msgid "complex" +msgstr "" + +msgid "config menu" +msgstr "" + +msgid "confirmed" +msgstr "" + +msgid "connected" +msgstr "" + +msgid "continue" +msgstr "" + +msgid "cooking" +msgstr "" + +msgid "copy to bouquets" +msgstr "" + +msgid "create directory" +msgstr "" + +#, python-format +msgid "currently installed image: %s" +msgstr "" + +msgid "daily" +msgstr "" + +msgid "day" +msgstr "" + +#, fuzzy +msgid "default" +msgstr "پیش فرض" + +msgid "delete cut" +msgstr "" + +msgid "delete..." +msgstr "" + +msgid "descramble and record ecm" +msgstr "" + +msgid "detective/thriller" +msgstr "" + +msgid "disable" +msgstr "" + +msgid "disable move mode" +msgstr "" + +msgid "disabled" +msgstr "" + +msgid "disconnected" +msgstr "" + +msgid "discussion/interview/debate" +msgstr "" + +msgid "do nothing" +msgstr "" + +msgid "documentary" +msgstr "" + +msgid "don't descramble, record ecm" +msgstr "" + +msgid "done!" +msgstr "" + +msgid "east" +msgstr "" + +msgid "economics/social advisory" +msgstr "" + +msgid "edit alternatives" +msgstr "" + +msgid "education/science/factual topics (general)" +msgstr "" + +msgid "empty" +msgstr "" + +msgid "enable" +msgstr "" + +msgid "enable bouquet edit" +msgstr "" + +msgid "enable favourite edit" +msgstr "" + +msgid "enable move mode" +msgstr "" + +msgid "enabled" +msgstr "" + +msgid "end alternatives edit" +msgstr "" + +msgid "end bouquet edit" +msgstr "" + +msgid "end cut here" +msgstr "" + +msgid "end favourites edit" +msgstr "" + +msgid "entertainment (10-16 year old)" +msgstr "" + +msgid "entertainment (6-14 year old)" +msgstr "" + +msgid "equal to" +msgstr "" + +msgid "equestrian" +msgstr "" + +msgid "exit DVD player or return to file browser" +msgstr "" + +msgid "exit movielist" +msgstr "" + +msgid "exit network adapter configuration" +msgstr "" + +msgid "exit networkadapter setup menu" +msgstr "" + +msgid "experimental film/video" +msgstr "" + +msgid "false" +msgstr "" + +msgid "fashion" +msgstr "" + +msgid "fileformats (BMP, PNG, JPG, GIF)" +msgstr "" + +msgid "filename" +msgstr "" + +msgid "film/cinema" +msgstr "" + +msgid "fine arts" +msgstr "" + +msgid "fine-tune your display" +msgstr "" + +msgid "fitness & health" +msgstr "" + +msgid "flat alphabetic" +msgstr "" + +msgid "flat alphabetic reverse" +msgstr "" + +msgid "folk/traditional music" +msgstr "" + +msgid "football/soccer" +msgstr "" + +msgid "foreign countries/expeditions" +msgstr "" + +msgid "forward to the next chapter" +msgstr "" + +msgid "free" +msgstr "" + +msgid "from" +msgstr "" + +msgid "further education" +msgstr "" + +msgid "game show/quiz/contest" +msgstr "" + +msgid "gardening" +msgstr "" + +msgid "go to deep standby" +msgstr "" + +msgid "go to standby" +msgstr "" + +msgid "grab this frame as bitmap" +msgstr "" + +msgid "green" +msgstr "" + +msgid "handicraft" +msgstr "" + +msgid "height" +msgstr "" + +msgid "help..." +msgstr "" + +msgid "horizontal" +msgstr "" + +msgid "information/education/school program" +msgstr "" + +msgid "init module" +msgstr "" + +msgid "init modules" +msgstr "" + +msgid "insert mark here" +msgstr "" + +msgid "invalid type" +msgstr "" + +msgid "jazz" +msgstr "" + +msgid "jump back to the previous title" +msgstr "" + +msgid "jump forward to the next title" +msgstr "" + +msgid "languages" +msgstr "" + +msgid "leave movie player..." +msgstr "" + +msgid "left" +msgstr "" + +msgid "left, wrapped" +msgstr "" + +msgid "leisure hobbies (general)" +msgstr "" + +msgid "length" +msgstr "" + +msgid "limit ..., aborting !" +msgstr "" + +msgid "list style compact" +msgstr "" + +msgid "list style compact with description" +msgstr "" + +msgid "list style default" +msgstr "" + +msgid "list style single line" +msgstr "" + +msgid "literature" +msgstr "" + +msgid "live broadcast" +msgstr "" + +msgid "locked" +msgstr "" + +msgid "loopthrough to" +msgstr "" + +msgid "magazines/reports/documentary" +msgstr "" + +msgid "manual" +msgstr "" + +msgid "martial sports" +msgstr "" + +msgid "medicine/physiology/psychology" +msgstr "" + +msgid "menu" +msgstr "" + +msgid "mins" +msgstr "" + +msgid "minutes" +msgstr "" + +msgid "month" +msgstr "" + +msgid "motor sport" +msgstr "" + +msgid "motoring" +msgstr "" + +msgid "move down to last entry" +msgstr "" + +msgid "move down to next entry" +msgstr "" + +msgid "move up to first entry" +msgstr "" + +msgid "move up to previous entry" +msgstr "" + +msgid "movie/drama (general)" +msgstr "" + +msgid "multinorm" +msgstr "" + +msgid "music/ballet/dance (general)" +msgstr "" + +msgid "musical/opera" +msgstr "" + +msgid "nature/animals/environment" +msgstr "" + +msgid "never" +msgstr "" + +msgid "new media" +msgstr "" + +msgid "news magazine" +msgstr "" + +msgid "news/current affairs (general)" +msgstr "" + +msgid "news/weather report" +msgstr "" + +msgid "no" +msgstr "" + +msgid "no CAId selected" +msgstr "" + +msgid "no CI slots found" +msgstr "" + +msgid "no module found" +msgstr "" + +msgid "no storage devices found" +msgstr "" + +msgid "none" +msgstr "" + +msgid "normal" +msgstr "" + +msgid "not configured" +msgstr "" + +msgid "not locked" +msgstr "" + +msgid "not supported" +msgstr "" + +msgid "not used" +msgstr "" + +msgid "nothing connected" +msgstr "" + +msgid "of a DUAL layer medium used." +msgstr "" + +msgid "of a SINGLE layer medium used." +msgstr "" + +msgid "off" +msgstr "" + +msgid "offset is" +msgstr "" + +msgid "on" +msgstr "" + +msgid "on READ ONLY medium." +msgstr "" + +msgid "on end of movie" +msgstr "" + +msgid "once" +msgstr "" + +msgid "only from deep standby" +msgstr "" + +msgid "only from standby" +msgstr "" + +msgid "open EPG..." +msgstr "" + +msgid "open Info..." +msgstr "" + +msgid "open nameserver configuration" +msgstr "" + +msgid "original" +msgstr "" + +msgid "original language" +msgstr "" + +msgid "pass" +msgstr "" + +msgid "performing arts" +msgstr "" + +msgid "play as picture in picture" +msgstr "" + +msgid "play in mainwindow" +msgstr "" + +msgid "please press OK when ready" +msgstr "" + +msgid "please wait, loading picture..." +msgstr "" + +msgid "popular culture/traditional arts" +msgstr "" + +msgid "pre-school children's program" +msgstr "" + +msgid "receiver software because updates are available." +msgstr "" + +msgid "record" +msgstr "" + +msgid "recording..." +msgstr "" + +msgid "red" +msgstr "" + +msgid "religion" +msgstr "" + +msgid "remarkable people" +msgstr "" + +msgid "remove after this position" +msgstr "" + +msgid "remove all alternatives" +msgstr "" + +msgid "remove all new found flags" +msgstr "" + +msgid "remove before this position" +msgstr "" + +msgid "remove bookmark" +msgstr "" + +msgid "remove directory" +msgstr "" + +msgid "remove entry" +msgstr "" + +msgid "remove from parental protection" +msgstr "" + +msgid "remove new found flag" +msgstr "" + +msgid "remove selected satellite" +msgstr "" + +msgid "remove this mark" +msgstr "" + +msgid "rename entry" +msgstr "" + +msgid "repeat playlist" +msgstr "" + +msgid "repeated" +msgstr "" + +msgid "reverse by date" +msgstr "" + +msgid "rewind to the previous chapter" +msgstr "" + +msgid "right" +msgstr "" + +msgid "right, wrapped" +msgstr "" + +msgid "rock/pop" +msgstr "" + +msgid "romance" +msgstr "" + +msgid "save last directory on exit" +msgstr "" + +msgid "save playlist on exit" +msgstr "" + +msgid "scan state" +msgstr "" + +msgid "science fiction/fantasy/horror" +msgstr "" + +msgid "second cable of motorized LNB" +msgstr "" + +msgid "seconds" +msgstr "" + +msgid "select" +msgstr "" + +msgid "select CAId's" +msgstr "" + +msgid "select EPG..." +msgstr "" + +msgid "select Info..." +msgstr "" + +msgid "select menu entry" +msgstr "" + +msgid "select movie" +msgstr "" + +msgid "select the movie path" +msgstr "" + +msgid "serious music/classic music" +msgstr "" + +msgid "serious/classical/religious/historical movie/drama" +msgstr "" + +msgid "service PIN" +msgstr "" + +msgid "set as startup service" +msgstr "" + +msgid "setup PIN" +msgstr "" + +msgid "show DVD main menu" +msgstr "" + +msgid "show all tags" +msgstr "" + +msgid "show alternatives" +msgstr "" + +msgid "show event details" +msgstr "" + +msgid "show extended description" +msgstr "" + +msgid "show mediaplayer on mainmenu" +msgstr "" + +msgid "show softwaremanager in setup menu" +msgstr "" + +msgid "show softwaremanager on blue button" +msgstr "" + +msgid "show tag menu" +msgstr "" + +msgid "show transponder info" +msgstr "" + +msgid "show/game show (general)" +msgstr "" + +msgid "shuffle" +msgstr "" + +msgid "shut down" +msgstr "" + +msgid "simple" +msgstr "" + +msgid "skip backward" +msgstr "" + +msgid "skip forward" +msgstr "" + +msgid "soap/melodram/folkloric" +msgstr "" + +msgid "social/political issues/economics (general)" +msgstr "" + +msgid "social/spiritual science" +msgstr "" + +msgid "sorting of playlists" +msgstr "" + +msgid "special characters" +msgstr "" + +msgid "special events" +msgstr "" + +msgid "special format data DVD (HDTV compatible)" +msgstr "" + +msgid "sports (general)" +msgstr "" + +msgid "sports magazine" +msgstr "" + +msgid "standard" +msgstr "" + +msgid "start cut here" +msgstr "" + +msgid "start directory" +msgstr "" + +msgid "stepsize" +msgstr "" + +msgid "stereo" +msgstr "" + +msgid "stop using as startup service" +msgstr "" + +msgid "switch to bookmarks" +msgstr "" + +msgid "switch to filelist" +msgstr "" + +msgid "switch to the next angle" +msgstr "" + +msgid "switch to the next audio track" +msgstr "" + +msgid "switch to the next subtitle language" +msgstr "" + +msgid "talk show" +msgstr "" + +msgid "team sports" +msgstr "" + +msgid "technology/natural science" +msgstr "" + +msgid "template file" +msgstr "" + +msgid "tennis/squash" +msgstr "" + +msgid "this recording" +msgstr "" + +msgid "this service is protected by a parental control pin" +msgstr "" + +msgid "toggle time, chapter, audio, subtitle info" +msgstr "" + +msgid "top" +msgstr "" + +msgid "tourism/travel" +msgstr "" + +msgid "true" +msgstr "" + +msgid "unavailable" +msgstr "" + +msgid "unconfirmed" +msgstr "" + +msgid "undefined" +msgstr "" + +msgid "unknown" +msgstr "" + +msgid "unknown service" +msgstr "" + +msgid "unpublished" +msgstr "" + +msgid "until standby/restart" +msgstr "" + +msgid "user defined" +msgstr "" + +msgid "variety show" +msgstr "" + +msgid "vertical" +msgstr "" + +msgid "wait for ci..." +msgstr "" + +msgid "wait for mmi..." +msgstr "" + +msgid "waiting" +msgstr "" + +msgid "water sport" +msgstr "" + +msgid "weekly" +msgstr "" + +msgid "west" +msgstr "" + +msgid "when PiPzap enabled zap channel down..." +msgstr "" + +msgid "when PiPzap enabled zap channel up..." +msgstr "" + +msgid "white" +msgstr "" + +msgid "whitelist" +msgstr "" + +msgid "width" +msgstr "" + +msgid "winter sport" +msgstr "" + +msgid "wireless network interface" +msgstr "" + +#, python-format +msgid "with %d error" +msgid_plural "with %d errors" +msgstr[0] "" + +msgid "working" +msgstr "" + +msgid "yellow" +msgstr "" + +msgid "yes" +msgstr "" + +msgid "yes (keep feeds)" +msgstr "" + +msgid "zap" +msgstr "" + +msgid "zap and record" +msgstr "" + +msgid "zapped" +msgstr "" + +#~ msgid "AA" +#~ msgstr "AA" + +#~ msgid "AB" +#~ msgstr "AB" + +#, fuzzy +#~ msgid "Activate PiP" +#~ msgstr "فعال کردن تصویر در تصویر" + +#, fuzzy +#~ msgid "Add/remove timer for current event" +#~ msgstr "اضافه/حذف زمان از رخداد فعلی" + +#~ msgid "Adjust HDMI CEC settings" +#~ msgstr "تنظیمات HDMI CEC" + +#, fuzzy +#~ msgid "All satellites" +#~ msgstr "همه ماهواره ها" + +#~ msgid "BA" +#~ msgstr "BA" + +#~ msgid "BB" +#~ msgstr "BB" + +#~ msgid "Behavior of 'pause' when paused" +#~ msgstr "عملکرد دکمه توقف هنگام متوقف شدن" + +#~ msgid "Committed DiSEqC command" +#~ msgstr "فرمان سپرده شده DiSEqC" + +#~ msgid "DiSEqC repeats" +#~ msgstr "DiSEqC تکرار" + +#~ msgid "Goto specific data/time" +#~ msgstr "مراجعه به تاریخ/زمان مشخص" + +#~ msgid "Remove timer" +#~ msgstr "حذف زمان" + +#~ msgid "Send DiSEqC" +#~ msgstr "ارسال DiSEqC" + +#, fuzzy +#~ msgid "Switch next channel" +#~ msgstr "جابجایی به کانال فرعی بعدی" diff --git a/po/fi.po b/po/fi.po new file mode 100644 index 0000000..f3bb110 --- /dev/null +++ b/po/fi.po @@ -0,0 +1,9985 @@ +# Finnish translations for Enigma2. +# +msgid "" +msgstr "" +"Project-Id-Version: enigma2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-07-21 19:08+0200\n" +"PO-Revision-Date: 2013-10-15 19:32+0200\n" +"Last-Translator: BoxFreak\n" +"Language-Team: none\n" +"Language: fi\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Poedit 1.5.7\n" + +# +msgid "" +"\n" +"Advanced options and settings." +msgstr "" +"\n" +"Laajennetut valinnat ja asetukset." + +# +msgid "" +"\n" +"After pressing OK, please wait!" +msgstr "" +"\n" +"Kun olet painanut OK-näppäintä, odota!" + +msgid "" +"\n" +"Backup your receiver settings." +msgstr "" +"\n" +"Varmuuskopioi vastaanottimesi asetukset." + +# +msgid "" +"\n" +"Edit the upgrade source address." +msgstr "" +"\n" +"Muokkaa päivityslähteen osoitetta." + +msgid "" +"\n" +"Manage extensions or plugins for your receiver" +msgstr "" +"\n" +"Hallitse lisäosia tai plugineja vastaanottimesessasi" + +msgid "" +"\n" +"Online update of your receiver software." +msgstr "" +"\n" +"Päivitä verkosta vastaanottimesi ohjelmisto." + +# +msgid "" +"\n" +"Press OK on your remote control to continue." +msgstr "" +"\n" +"\n" +"Jatka painamalla OK-näppäintä." + +# +msgid "" +"\n" +"Restore your backups by date." +msgstr "" +"\n" +"Palauta varmuuskopiot päivän mukaan." + +msgid "" +"\n" +"Restore your receiver settings." +msgstr "" +"\n" +"Palauta vastaanottimesi asetukset." + +msgid "" +"\n" +"Restore your receiver with a new firmware." +msgstr "" +"\n" +"Palauta vastaanottimesi uudelle firmwarelle." + +# +msgid "" +"\n" +"Scan for local extensions and install them." +msgstr "" +"\n" +"Etsi paikallisia lisäosia ja asenna ne." + +# +msgid "" +"\n" +"Select your backup device.\n" +"Current device: " +msgstr "" +"\n" +"Valitse tallennuspaikka varmuuskopiolle.\n" +"Nykyinen valinta: " + +# +msgid "" +"\n" +"View, install and remove available or installed packages." +msgstr "" +"\n" +"Lisää ja poista ohjelmapaketteja." + +msgid " (PiP)" +msgstr " (PiP)" + +msgid " (Radio)" +msgstr " (Radio)" + +msgid " (TV)" +msgstr " (TV)" + +msgid " (disabled)" +msgstr "" + +msgid " (higher than any auto)" +msgstr "" + +msgid " (higher than rotor any auto)" +msgstr "" + +msgid " (lower than any auto)" +msgstr "" + +msgid " extensions." +msgstr " lisäosaa." + +msgid " ms" +msgstr " ms" + +msgid " packages selected." +msgstr " pakettia valittu." + +msgid " updates available." +msgstr " päivitystä." + +#. TRANSLATORS: short time representation hour:minute +#, python-format +msgid "%2d:%02d" +msgstr "%2d:%02d" + +#. TRANSLATORS: full time representation hour:minute:seconds +#, python-format +msgid "%2d:%02d:%02d" +msgstr "%2d:%02d:%02d" + +msgid "%A %d %B" +msgstr "%A %d %B" + +#. TRANSLATORS: long date representations dayname daynum monthname in strftime() format! See 'man strftime' +msgid "%A %e %B" +msgstr "%A %e. %Bta" + +#. TRANSLATORS: full date representation dayname daynum monthname year in strftime() format! See 'man strftime' +msgid "%A %e %B %Y" +msgstr "%A %e. %Bta %Y" + +msgid "%H:%M" +msgstr "%H:%M" + +#. TRANSLATORS: short date representation short dayname daynum short monthname in strftime() format! See 'man strftime' +msgid "%a %e/%m" +msgstr "%a %e.%-m" + +#. TRANSLATORS: long date representation short dayname daynum short monthname hour:minute in strftime() format! See 'man strftime' +msgid "%a %e/%m %-H:%M" +msgstr "%a %e.%-m %-H:%M" + +# +#. TRANSLATORS: Intermediate scanning result, '%d' channel(s) have been found so far +#, python-format +msgid "%d channel found" +msgid_plural "%d channels found" +msgstr[0] "%d kanava löydetty" +msgstr[1] "%d kanavaa löydetty" + +#, python-format +msgid "%d file" +msgid_plural "%d files" +msgstr[0] "%d tiedosto" +msgstr[1] "%d tiedostoa" + +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d tunti" +msgstr[1] "%d tuntia" + +# +#, python-format +msgid "%d job is running in the background!" +msgid_plural "%d jobs are running in the background!" +msgstr[0] "%d työ on taustalla käynnissä!" +msgstr[1] "%d työtä on taustalla käynnissä!" + +# +#, python-format +msgid "%d min" +msgstr "%d min" + +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d minuutti" +msgstr[1] "%d minuuttia" + +#, python-format +msgid "%d minutes" +msgstr "%d minuuttia" + +#, python-format +msgid "%d pixel wide" +msgid_plural "%d pixels wide" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "%d sekunti" +msgstr[1] "%d sekuntia" + +#, python-format +msgid "%d subdirectory" +msgid_plural "%d subdirectories" +msgstr[0] "%d alihakemisto" +msgstr[1] "%d alihakemistoa" + +# +#, python-format +msgid "%d wireless network found!" +msgid_plural "%d wireless networks found!" +msgstr[0] "%d WLAN-verkko löytyi!" +msgstr[1] "%d WLAN-verkkoa löytyi!" + +msgid "%d-%b-%Y %-H:%M" +msgstr "%d-%b-%Y %-H:%M" + +msgid "%d-%m" +msgstr "%d-%m" + +# +msgid "%d.%B %Y" +msgstr "%d.%m.%Y" + +#. TRANSLATORS: VFD hour:minute daynum short monthname in strftime() format! See 'man strftime' +msgid "%k:%M %e/%m" +msgstr "%k:%M %e.%-m" + +# +#, python-format +msgid "%s %s free disk space" +msgstr "%s %s vapaata levytilaa" + +#, python-format +msgid "%s (%s)\n" +msgstr "%s (%s)\n" + +#. TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. +#, python-format +msgid "%s is no longer used. Should it be deleted?" +msgstr "%s ei enää käytetä. Pitäisikö se poistaa?" + +#, python-format +msgid "%s updated package available" +msgid_plural "%s updated packages available" +msgstr[0] "%s päivitetty paketti saatavilla." +msgstr[1] " %s päivitettyä pakettia saatavilla." + +# +#, python-format +msgid "%s%d min" +msgstr "%s%d min" + +#, python-format +msgid "%s/%s: %s" +msgstr "%s/%s: %s" + +# +msgid "(ZAP)" +msgstr "(Kanavanvaihto)" + +# +msgid "(empty)" +msgstr "(tyhjä)" + +# +msgid "(show optional DVD audio menu)" +msgstr "(näytä DVD-äänen lisävalikko)" + +# +msgid "* Only available if more than one interface is active." +msgstr "* Käytettävissä vain kun useampi kuin yksi sovitin on aktiivinen." + +msgid "/s" +msgstr "/s" + +msgid "0" +msgstr "0" + +msgid "1" +msgstr "1" + +# +msgid "1.0" +msgstr "1.0" + +# +msgid "1.1" +msgstr "1.1" + +# +msgid "1.2" +msgstr "1.2" + +# +msgid "12V output" +msgstr "12V ulostulo" + +# +msgid "13 V" +msgstr "13 V" + +msgid "16:10" +msgstr "16:10" + +# +msgid "16:10 Letterbox" +msgstr "16:10 Letterbox" + +# +msgid "16:10 PanScan" +msgstr "16:10 Pan&Scan" + +# +msgid "16:9" +msgstr "16:9" + +# +msgid "16:9 Letterbox" +msgstr "16:9 Letterbox" + +# +msgid "16:9 always" +msgstr "16:9 Automatiikka" + +# +msgid "18 V" +msgstr "18 V" + +msgid "2" +msgstr "2" + +msgid "23.976" +msgstr "23.976" + +msgid "24" +msgstr "24" + +msgid "25" +msgstr "25" + +msgid "29.97" +msgstr "29.97" + +msgid "3" +msgstr "3" + +msgid "30" +msgstr "30" + +msgid "3d mode" +msgstr "3D-tila" + +msgid "4" +msgstr "4" + +msgid "4:3" +msgstr "4:3" + +# +msgid "4:3 Letterbox" +msgstr "4:3 Letterbox" + +# +msgid "4:3 PanScan" +msgstr "4:3 Pan&Scan" + +msgid "5" +msgstr "5" + +msgid "6" +msgstr "6" + +msgid "7" +msgstr "7" + +msgid "8" +msgstr "8" + +msgid "9" +msgstr "9" + +#, python-format +msgid ": %s" +msgstr "" + +msgid "<Current movielist location>" +msgstr "<Nykyinen tallennushakemisto>" + +msgid "<Default movie location>" +msgstr "<Oletushakemisto>" + +msgid "<Last timer location>" +msgstr "<Viimeisin ajastushakemisto>" + +# +msgid "<unknown>" +msgstr "<tuntematon>" + +# +msgid "??" +msgstr "??" + +# +msgid "A" +msgstr "A" + +# +#, python-format +msgid "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" +msgstr "" +"Asetustiedostoa (%s) on muokattu asennuksen jälkeen.\n" +"Haluatko säilyttää oman versiosi?" + +# +#, python-format +msgid "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" +msgstr "" +"Asetustiedostoa (%s) on muokattu asennuksen jälkeen.\n" +"Haluatko säilyttää oman versiosi?" + +msgid "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"Päättynyt ajastus haluaa asettaa vastaanottimesi\n" +"valmiustilaan. Tehdäänkö niin nyt?" + +msgid "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"Päättynyt ajastus haluaa sammuttaa\n" +"vastaanottimesi. Sammutetaanko nyt?" + +# +msgid "A graphical EPG for all services of an specific bouquet" +msgstr "Graafinen ohjelmaopas kaikille suosikkilistan kanaville" + +# +#, python-format +msgid "" +"A record has been started:\n" +"%s" +msgstr "" +"Tallennus on alkanut:\n" +"%s" + +# +msgid "" +"A recording is currently running.\n" +"What do you want to do?" +msgstr "" +"Tallennus on parhaillaan käynnissä.\n" +"Mitä haluat tehdä?" + +# +msgid "A recording is currently running. Please stop the recording before trying to configure the positioner." +msgstr "" +"Tallennus on parhaillaan käynnissä. Pysäytä tallennus\n" +"ennen kuin yrität muokata kääntömoottorin asetuksia." + +msgid "A recording is currently running. Please stop the recording before trying to scan." +msgstr "Tallennus on käynnissä. Lopeta tallennus ennen kuin käytät hakua." + +# +msgid "A recording is currently running. Please stop the recording before trying to start the satfinder." +msgstr "" +"Tallennus on parhaillaan käynnissä. Pysäytä tallennus\n" +"ennen kuin käynnistät satelliittietsimen." + +# +#, python-format +msgid "A required tool (%s) was not found." +msgstr "Tarvittavaa osaa (%s) ei löytynyt." + +msgid "A search for available updates is currently in progress." +msgstr "Päivityksien haku on käynnissä." + +# +msgid "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" +msgstr "" +"Toinen määritetty verkkosovitin löytyi.\n" +"\n" +"Kytketäänkö se pois päältä?" + +msgid "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"Uniajastin haluaa asettaa vastaanottimesi\n" +"valmiustilaan. Tehdäänkö niin nyt?" + +msgid "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"Uniajastin haluaan sammuttaa vastaanottimesi.\n" +"Sammutetaanko nyt?" + +msgid "A small overview of the available icon states and actions." +msgstr "Lyhyt kuvaus kuvakkeiden tiloista ja toiminnoista." + +# +msgid "" +"A timer failed to record!\n" +"Disable TV and try again?\n" +msgstr "" +"Ajastettu tallennus epäonnistui!\n" +"Sallitko kanavanvaihdon, jotta tallennusta\n" +"voidaan yrittää uudelleen?\n" + +# +msgid "A/V settings" +msgstr "Ääni- ja kuvalähtöjen asetukset" + +msgid "AC3/DTS downmix" +msgstr "AC3/DTS muunnos stereoksi" + +# +msgid "Abort" +msgstr "Keskeytä" + +# +msgid "About" +msgstr "Tietoja" + +# +msgid "About..." +msgstr "Tietoja..." + +# +msgid "Accesspoint:" +msgstr "Tukiasema:" + +# +msgid "Action on long powerbutton press" +msgstr "Sammutusnapin pitkä painallus" + +msgid "Action on short powerbutton press" +msgstr "Sammutusnapin lyhyt painallus" + +# +msgid "Activate Picture in Picture" +msgstr "Avaa PiP-kuva" + +# +msgid "Activate current configuration" +msgstr "Aktivoi nykyiset asetukset" + +# +msgid "Activate network settings" +msgstr "Ota verkkoasetukset käyttöön" + +# +msgid "Activate the configured network settings." +msgstr "Ota tekemäsi verkkoasetukset käyttöön." + +# +msgid "Adapter settings" +msgstr "Sovittimen asetukset" + +# +msgid "Add" +msgstr "Lisää" + +# +msgid "Add Bookmark" +msgstr "Kirjanmerkki" + +# +msgid "Add a mark" +msgstr "Lisää merkki" + +# +msgid "Add a nameserver entry" +msgstr "Lisää nimipalvelin" + +# +msgid "Add a new title" +msgstr "Lisää uusi tallenne" + +# +msgid "Add bookmark" +msgstr "Lisää kirjanmerkki" + +# +msgid "Add directory to playlist" +msgstr "Lisää hakemisto soittolistalle" + +# +msgid "Add file to playlist" +msgstr "Lisää tiedosto soittolistalle" + +# +msgid "Add files to playlist" +msgstr "Lisää tiedostot soittolistalle" + +msgid "Add more details to the crash log" +msgstr "Lisää enemmän yksityiskohtia kaatumislokiin." + +# +msgid "Add provider" +msgstr "Lisää palveluntarjoaja" + +# +msgid "Add recording (enter recording duration)" +msgstr "Tallenna (syötä tallennuksen kesto)" + +# +msgid "Add recording (enter recording endtime)" +msgstr "Tallenna (syötä tallennuksen päättymisaika)" + +# +msgid "Add recording (indefinitely)" +msgstr "Tallenna (jatkuva tallennus)" + +# +msgid "Add recording (stop after current event)" +msgstr "Tallenna (lopeta nykyisen ohjelman jälkeen)" + +# +msgid "Add service" +msgstr "Lisää kanava" + +# +msgid "Add timer" +msgstr "Lisää ajastus" + +# +msgid "Add title" +msgstr "Lisää" + +# +msgid "Add to bouquet" +msgstr "Lisää suosikkilistalle" + +# +msgid "Add to favourites" +msgstr "Lisää suosikkilistalle" + +msgid "Add/remove change timer for current event" +msgstr "" + +msgid "Adjust 3D settings" +msgstr "Säädä 3D-asetuksia" + +# +msgid "Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens." +msgstr "" +"Säädä värikylläisyys siten, että kaikki sävyt erottuvat ja ovat mahdollisimman\n" +"kylläisiä.\n" +"\n" +"Kun olet tyytyväinen tulokseen, sulje testikuva painamalla OK tai valitse numeronäppäimillä 1-6 joku muu testikuva." + +msgid "Advanced" +msgstr "" + +# +msgid "Advanced options" +msgstr "Laajennetut valinnat" + +# +msgid "Advanced restore" +msgstr "Laajennettu palautus" + +msgid "Advanced software" +msgstr "Laajemmat ohjelmistovalinnat" + +msgid "Advanced software plugin" +msgstr "Laajemmat lisäosavalinnat" + +msgid "Advanced video enhancement setup" +msgstr "Laajemmat kuvanparannukset asetukset" + +# +msgid "Advanced video setup" +msgstr "Laajennetut video-asetukset" + +# +msgid "After event" +msgstr "Ajastuksen jälkeen" + +# +msgid "Album" +msgstr "Albumi" + +msgid "Alignment of events" +msgstr "Ohjelmien kohdistus" + +msgid "Alignment of service names" +msgstr "Kanavien nimien kohdistus" + +# +msgid "All" +msgstr "Kaikki" + +msgid "All ages" +msgstr "Kaikenikäisille" + +msgid "All satellites 1 (USALS)" +msgstr "" + +msgid "All satellites 2 (USALS)" +msgstr "" + +msgid "All satellites 3 (USALS)" +msgstr "" + +msgid "All satellites 4 (USALS)" +msgstr "" + +msgid "Allocate" +msgstr "Varaa" + +msgid "Allocate unused memory index" +msgstr "Varaa vapaa muisti-indeksi" + +msgid "Allow quit movieplayer with exit" +msgstr "Salli tallenteista poistuminen exit-napilla" + +msgid "Allow subtitle language to equal audio language" +msgstr "Salli tekstityskielen vastata äänivalintaa" + +msgid "Allow subtitles for hearing impaired" +msgstr "Salli kuulovammaisten tekstitys" + +# +msgid "Alpha" +msgstr "Alpha" + +# +msgid "Alternative" +msgstr "Vaihtoehtoisten kanavien lisäys ja poisto" + +# +msgid "Alternative numbering mode" +msgstr "TV-tyylinen radiokanavien numerointi" + +# +msgid "Alternative services tuner priority" +msgstr "Virittimien prioriteetti" + +msgid "Always ask" +msgstr "Kysy aina" + +msgid "Always hide infobar" +msgstr "" + +# +msgid "An empty filename is illegal." +msgstr "Tyhjä nimi ei ole sallittu" + +# +msgid "An error occurred while downloading the packetlist. Please try again." +msgstr "Tapahtui virhe ladattaessa IPKG-ohjelmapakettiluetteloa. Yritä uudestaan." + +# +msgid "An unknown error occurred!" +msgstr "Tuntematon virhe tapahtui!" + +msgid "And will put your receiver in standby over " +msgstr "Ja asettaa vastaanottimen valmiustilaan" + +msgid "Any activity" +msgstr "Mikä tahansa toiminta" + +# +msgid "Arabic" +msgstr "Arabia" + +msgid "Are you sure to remove this entry?" +msgstr "" + +# +msgid "" +"Are you sure you want to activate this network configuration?\n" +"\n" +msgstr "" +"Haluatko aktivoida nämä verkkoasetukset?\n" +"\n" + +# +msgid "" +"Are you sure you want to delete\n" +"the following backup:\n" +msgstr "" +"Oletko varma, että haluat poistaa\n" +"seuraavan varmuuskopion:\n" + +msgid "Are you sure you want to exit this wizard?" +msgstr "Haluatko lopettaa avustustoiminnon?" + +# +msgid "" +"Are you sure you want to restart your network interfaces?\n" +"\n" +msgstr "" +"Haluatko käynnistää verkkosovittimet uudelleen?\n" +"\n" + +# +#, python-format +msgid "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Oletko varma, että haluat palauttaa\n" +"seuraavan varmuuskopion:\n" +"%s\n" +"Vastaanotin käynnistyy uudelleen varmuuskopion palautuksen jälkeen!" + +# +msgid "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Oletko varma, että haluat palauttaa varmuuskopion?\n" +"Vastaanotin käynnistyy uudelleen varmuuskopion palautuksen jälkeen!" + +# +msgid "Artist" +msgstr "Esittäjä" + +msgid "Arts/Culture" +msgstr "Taide/Kulttuuri" + +# +msgid "Ask user" +msgstr "Kysy käyttäjältä" + +# +msgid "Aspect ratio" +msgstr "Kuvasuhde" + +msgid "Assigned CAIds:" +msgstr "Määritetyt CAId:t:" + +# +msgid "Assigned services/provider:" +msgstr "Määritetyt kanavat/palveluntarjoajat:" + +msgid "At beginning" +msgstr "Alussa" + +msgid "At end" +msgstr "Lopussa" + +# +msgid "Audio" +msgstr "Ääni" + +msgid "Audio PID" +msgstr "Ääni-PID" + +msgid "Audio language selection 1" +msgstr "Äänen kielivalinta 1" + +msgid "Audio language selection 2" +msgstr "Äänen kielivalinta 2" + +msgid "Audio language selection 3" +msgstr "Äänen kielivalinta 3" + +msgid "Audio language selection 4" +msgstr "Äänen kielivalinta 4" + +# +msgid "Audio options..." +msgstr "Äänivalinnat..." + +# +#, python-format +msgid "Audio track (%s) format" +msgstr "Ääniraidan (%s) formaatti" + +# +#, python-format +msgid "Audio track (%s) language" +msgstr "Ääniraidan (%s) kieli" + +# +msgid "Author: " +msgstr "Tekijä: " + +# +msgid "Authoring mode" +msgstr "Toimintatapa" + +# +#. TRANSLATORS: (aspect ratio policy: always try to display as fullscreen, when there is no content (black bars) on left/right, even if this breaks the aspect. +msgid "Auto" +msgstr "Automaattinen" + +# +msgid "Auto chapter split every ? minutes (0=never)" +msgstr "Automaattinen kappalejako joka ? min välein (0=ei koskaan)" + +# +msgid "Auto flesh" +msgstr "Ihonvärin korostus" + +msgid "Auto focus" +msgstr "Automaattitarkennus" + +msgid "Auto focus commencing ..." +msgstr "Automaattitarkennus käynnistyy ..." + +msgid "Auto language selection" +msgstr "Automaattinen kielivalinta" + +# +msgid "Auto scart switching" +msgstr "Autom. SCARTin kytkentä" + +# +msgid "Automatic" +msgstr "Automaattinen" + +# +msgid "Automatic scan" +msgstr "Automaattihaku" + +msgid "Automatically start timeshift after" +msgstr "Automaattisesti käynnistä ajansiirto kun kulunut" + +msgid "Automatically turn on external subtitles" +msgstr "Käynnistä automaattisesti teksti-tv tekstitys." + +# +msgid "Available format variables" +msgstr "Formaatti-muuttujat" + +# +msgid "B" +msgstr "B" + +msgid "BER" +msgstr "BER" + +# +msgid "BER:" +msgstr "BER:" + +# +msgid "Back" +msgstr "Takaisin" + +# +msgid "Background" +msgstr "Tausta" + +# +msgid "Background color" +msgstr "Taustan väri" + +msgid "Background delete option" +msgstr "Taustalla poistaminen" + +msgid "Background delete speed" +msgstr "Taustalla poistamisen nopeus" + +# +msgid "Backup completed." +msgstr "Varmuuskopiointi valmis." + +# +msgid "Backup failed." +msgstr "Varmuuskopiointi epäonnistui." + +# +msgid "Backup is running..." +msgstr "Varmuuskopiointi käynnissä" + +# +msgid "Backup system settings" +msgstr "Varmuuskopioi asetukset" + +# +msgid "Band" +msgstr "Taajuusalue" + +# +msgid "Bandwidth" +msgstr "Kaistanleveys" + +msgid "Basque" +msgstr "Baski" + +# +msgid "Begin time" +msgstr "Aloitusaika" + +msgid "Behavior of 'pause and ok' when paused" +msgstr "" + +# +msgid "Behavior of 0 key in PiP-mode" +msgstr "0-näppäimen toiminta PiP-tilassa" + +# +msgid "Behavior when a movie is started" +msgstr "Toiminto toiston alussa" + +# +msgid "Behavior when a movie is stopped" +msgstr "Toiminto kun toisto pysäytetään" + +# +msgid "Behavior when a movie reaches the end" +msgstr "Toiminto kun tallenne loppuu" + +msgid "Big PiP" +msgstr "" + +# +msgid "Bitrate:" +msgstr "Nopeus:" + +msgid "Black screen" +msgstr "Musta ruutu" + +msgid "Black screen till locked" +msgstr "Musta ruutu kunnes lukittu" + +# +msgid "Block noise reduction" +msgstr "Pakkausneliöiden pehmennys" + +# +msgid "Blue boost" +msgstr "Sinisen korostus" + +# +msgid "Bookmarks" +msgstr "Kirjanmerkit" + +# +msgid "Brightness" +msgstr "Kirkkaus" + +msgid "Bulgarian" +msgstr "Bulgaria" + +# +msgid "Burn DVD" +msgstr "Polta DVD" + +# +#, python-format +msgid "Burn audio track (%s)" +msgstr "Polta ääniraita (%s)" + +msgid "Burn existing image to DVD" +msgstr "Polta olemassa oleva levykuva DVD:lle" + +msgid "Burn to DVD" +msgstr "Polta DVD:lle..." + +# +msgid "Bus: " +msgstr "Väylä: " + +msgid "By default, SNR will be shown in dB (when supported by the tuner). This setting forces SNR to be shown as a percentage instead." +msgstr "Oletuksena SNR näytetään dB:nä (jos viritin tukee tätä). Tämä asetus sen sijaan pakoittaa SNR:n näkymään prosentteina." + +msgid "C" +msgstr "C" + +# +msgid "C-Band" +msgstr "C-taajuusalue" + +msgid "CH" +msgstr "" + +# +msgid "CI assignment" +msgstr "CI-määritys" + +# +msgid "CVBS" +msgstr "Komposiitti (CVBS)" + +# +msgid "Cable" +msgstr "Kaapeli (DVB-C)" + +msgid "Cable Scan" +msgstr "Kaapelihaku" + +# +msgid "Cache thumbnails" +msgstr "Tallenna esikatselukuvat välimuistiin" + +msgid "Calculate" +msgstr "Laske" + +msgid "Calculate all positions" +msgstr "Laske kaikki sijainnit" + +msgid "Calculation complete" +msgstr "Laskenta valmis" + +msgid "Calibrate" +msgstr "Kalibroi" + +msgid "Can be used for different fps between external subtitles and video." +msgstr "Voidaan käyttää jos on eri fps teksti-tv tekstityksen ja kuvan välillä." + +# +msgid "Cancel" +msgstr "Peruuta" + +msgid "Cannot determine" +msgstr "Ei varmaa" + +msgid "Cannot find any signal ..., aborting !" +msgstr "Signaalia ei löydy ..., keskeytetään !" + +msgid "Cannot move files on a different disk or system to the trash can" +msgstr "Tiedostoja ei voida siirtää toisella levyllä tai järjestelmästä roskakoriin" + +msgid "Cannot move to trash can" +msgstr "Ei voida siirtää roskakoriin" + +# +msgid "Capacity: " +msgstr "Kapasiteetti:" + +# +msgid "Card" +msgstr "Kortti" + +msgid "Cascade PiP" +msgstr "" + +msgid "Center DVB subtitles" +msgstr "Keskitä DVB-tekstit" + +msgid "Center time-labels and remove date" +msgstr "Keskitä aikaleimat ja poista päiväys" + +# +msgid "Change bouquets in quickzap" +msgstr "Suosikkilistan vaihto listan lopussa" + +# +msgid "Change pin code" +msgstr "Vaihda tunnusluku" + +# +msgid "Change recording (duration)" +msgstr "Muuta tallennuksen kestoa" + +# +msgid "Change recording (endtime)" +msgstr "Muuta tallennuksen päättymisaikaa" + +msgid "Change repeat and delay settings?" +msgstr "Muuta toiston ja viiveen asetuksia?" + +msgid "Change service PIN" +msgstr "Muuta kanavan PIN" + +msgid "Change service PINs" +msgstr "Muuta kanavan PIN:it" + +msgid "Change setup PIN" +msgstr "Muuta asetuksien PIN" + +# +msgid "Change step size" +msgstr "Muuta askelkokoa" + +msgid "Change timer" +msgstr "" + +msgid "Changelog" +msgstr "Muutosloki" + +# +msgid "Channel" +msgstr "Kanava" + +# +msgid "Channel list type" +msgstr "Kanavalistan muokkaus" + +# +msgid "Channel not in services list" +msgstr "Kanava ei ole kanavalistalla" + +# +msgid "Channel selection" +msgstr "Kanavien valinta" + +# +msgid "Channel:" +msgstr "Kanava:" + +# +msgid "Channellist menu" +msgstr "Kanavalistan muokkaus" + +# +msgid "Chap." +msgstr "Osa" + +# +msgid "Chapter" +msgstr "Kappale" + +# +msgid "Chapter:" +msgstr "Kappale:" + +# +msgid "Check" +msgstr "Tarkista" + +msgid "Check the internet connection" +msgstr "Tarkista internet yhteys" + +msgid "Check the internet connection again" +msgstr "Tarkista internet yhteys uudestaan" + +# +msgid "Checking filesystem..." +msgstr "Tarkistetaan tiedostojärjestelmää..." + +msgid "Checking the internet connection" +msgstr "Tarkistan internet yhteyttä" + +#, python-format +msgid "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" +msgstr "" +"Tarkistetaan viritin %d\n" +"DiSEqC portti %s / %s" + +msgid "Children/Youth" +msgstr "Lapset/Nuoriso" + +msgid "Choose which tuner to configure." +msgstr "Valitse minkä virittimen tahdot määrittää." + +# +msgid "Circular left" +msgstr "Kiertopol. vasen" + +# +msgid "Circular right" +msgstr "Kiertopol. oikea" + +# +msgid "Cleanup" +msgstr "Poista vanhat" + +msgid "Clear" +msgstr "Tyhjennä" + +# +# Ohjatun asennuksen (Startup Wizard) kutosruudun valintateksti +# Tekstin pitää ilmeisesti olla melko lyhyt, koska käyttäjän +# valittavaksi annetut vaihtoehdot lyhentävät tilaa toisesta +# päästä. +msgid "Clear before scan" +msgstr "Tyhjennä kanavalista" + +msgid "Clear fixed" +msgstr "Tyhjennä kiinteät" + +# +msgid "Clear log" +msgstr "Tyhjennä loki" + +# +msgid "Clear playlist" +msgstr "Tyhjennä soittolista" + +# +msgid "Close" +msgstr "Sulje" + +# +msgid "Close PiP on exit" +msgstr "Sulje PiP poistuttaessa" + +msgid "Close title selection" +msgstr "Sulje otsikon valinta" + +msgid "Code rate HP" +msgstr "Koodinopeus HP" + +msgid "Code rate LP" +msgstr "Koodinopeus LP" + +# +msgid "Coderate HP" +msgstr "Koodinopeus (HP)" + +# +msgid "Coderate LP" +msgstr "Koodinopeus (LP)" + +# +msgid "Collection name" +msgstr "Kokoelman nimi" + +# +msgid "Collection settings" +msgstr "Kokoelman asetukset" + +# +msgid "Color format" +msgstr "Videolähtö (TV-SCART)" + +# +msgid "Command execution..." +msgstr "Komennon suoritus..." + +# +msgid "Command order" +msgstr "Käskyjen järjestys" + +# +msgid "Common Interface" +msgstr "CI-liitäntä/CAM" + +# +msgid "Common Interface assignment" +msgstr "CI-määritykset" + +msgid "Communication" +msgstr "Kommunikointi" + +# +msgid "Compact flash" +msgstr "CompactFlash" + +# +msgid "Complete" +msgstr "Täysi" + +# +msgid "Complex (allows mixing audio tracks and aspects)" +msgstr "Laajennettu (useita ääniraitoja ja kuvasuhteita)" + +msgid "Composition of the recording filenames" +msgstr "Tallennusnimien rakenne" + +msgid "Configuration mode" +msgstr "Toimintatila" + +#, python-format +msgid "Configuration mode: %s" +msgstr "Toimintatila: %s" + +# +msgid "Configuration..." +msgstr "Määritykset..." + +msgid "Configure an additional delay to improve external subtitle synchronisation." +msgstr "Määrittele lisäviive saadaksesi teksti-tv tekstityksen paremmin kohdistettua. " + +msgid "Configure an additional delay to improve subtitle synchronisation." +msgstr "Määrittele lisäviive saadaksesi tekstityksen paremmin kohdistettua." + +msgid "Configure for how long the infobar will remain visible after activation." +msgstr "Määrittää kuinka kauan tietopalkki on näkyvissä käynnistyksen jälkeen." + +msgid "Configure for how many minutes finished events should remain visible in the EPG. Useful when you need information about an event which has just finished, or has been delayed." +msgstr "Määrittää kuinka monta minuuttia päättyneiden ohjelmien ohjelmatietoja pidetään näkyvillä ohjelmaoppaassa. Käytännöllinen kun haluat tietoja ohjelmasta joka on juuri päättynyt tai ohjelma on viivästynyt." + +msgid "Configure how recording filenames are constructed." +msgstr "Määrittää kuinka tallennuksen tiedostonimet luodaan." + +msgid "Configure how the fan should operate" +msgstr "" + +msgid "Configure if and how crypto icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how long the latest service in the PiP will be remembered." +msgstr "" + +msgid "Configure if and how service type icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how wide columns will be shown in the channel selection list." +msgstr "" + +msgid "Configure if service picons will be shown in the channel selection list." +msgstr "" + +# +msgid "Configure interface" +msgstr "Määritä verkkosovitin" + +# +msgid "Configure nameservers" +msgstr "Määritä nimipalvelimet" + +msgid "Configure on which devices the background delete option should be used." +msgstr "Määrittää mihin laitteisiin taustalla poistamismahdollisuutta tulisi käyttää." + +msgid "Configure remote control type" +msgstr "Määritä kauko-ohjaiem tyyppi" + +msgid "Configure the DiSEqC mode for this LNB." +msgstr "Määrittää tämän LNB:n DiSEqC tilan." + +# +msgid "Configure the IP address." +msgstr "Määritä IP osoite." + +msgid "Configure the aspect ratio of the screen." +msgstr "Määrittää näytön kuvasuhteen." + +msgid "Configure the behavior of the 'pause and ok' key when movie playback is already paused." +msgstr "" + +# +msgid "Configure the behavior when movie playback is manually stopped." +msgstr "Määrittää toiminnan kun tallenteen toisto pysäytetään käyttäjän toimesta." + +# +msgid "Configure the behavior when movie playback is started." +msgstr "Määrittää toiminnan tallenteen toiston alussa." + +msgid "Configure the behavior when reaching the end of a movie, during movie playback." +msgstr "Määrittää käyttäytymisen ohjelman päättyessä ohjelmien toistotilassa. " + +msgid "Configure the border width of the subtitles. The dark border makes the subtitles easier to read on a light background." +msgstr "Määrittää tekstityksen reunan leveyden. Tumma reuna tekee tekstityksestä luettavampaa vaaleaa taustaa vasten." + +msgid "Configure the brightness level of the front panel display during standby." +msgstr "Määrittää etupaneelin näytön kirkkaden valmiustilassa." + +msgid "Configure the brightness level of the front panel display." +msgstr "Määrittää etupaneelin näytön kirkkauden." + +msgid "Configure the color of the external subtitles, alternative (normal in white, italic in yellow, bold in cyan, underscore in green), white or yellow." +msgstr "Määrittele teksti-tv tekstityksen väri, vaihtoehtoinen (normaali valkoisella, kursivoitu keltaisella, lihavoitu sinivihreällä, alleviivattu vihreällä), valkoinen tai keltainen." + +msgid "Configure the color of the teletext subtitles." +msgstr "Määrittää teksti-tv:stä tulevan tekstityksen värin." + +msgid "Configure the contrast level of the front panel display." +msgstr "Määrittää etupaneelin näytön kontrastin." + +msgid "Configure the cursor behaviour in the channel selection list. When opening the channel selection list you can keep on the current service or already select up/down and you are able to revert the B+/B- buttons." +msgstr "" + +msgid "Configure the duration in hours the receiver should go to standby when the receiver is not controlled." +msgstr "" + +msgid "Configure the duration in minutes for the screensaver." +msgstr "Määrittele näytönsäästäjän aika minuuteissa." + +msgid "Configure the duration in minutes for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +msgstr "" + +msgid "Configure the duration when the receiver should go to shut down in case the receiver is in standby mode." +msgstr "Määrittele kesto milloin vastaanottimen pitäisi sammua, jos vastaanotin on valmiustilassa." + +msgid "Configure the first audio language (highest priority)." +msgstr "Määrittää ensisijaisen äänen kielen (korkein prioriteetti)." + +msgid "Configure the first subtitle language (highest priority)." +msgstr "Määrittää ensisijaisen tekstityksen kielen (korkein prioriteetti)." + +msgid "Configure the font size of the subtitles." +msgstr "Määrittää tekstityksen koon." + +msgid "Configure the fourth audio language." +msgstr "Määrittää neljännen äänen kielen." + +# +msgid "Configure the fourth subtitle language." +msgstr "Määrittää neljännen tekstityskielen." + +msgid "Configure the function of a long press on the power button." +msgstr "Määrittää toiminnan, kun virtanäppäintä painetaan pitkään." + +msgid "Configure the function of a short press on the power button." +msgstr "Määrittää toiminnan, kun virtanäppäintä painetaan lyhyesti." + +msgid "Configure the function of the '0' button do when PIP is active." +msgstr "Määrittää '0' näppäimen toiminnan PiP-tilassa." + +# +msgid "Configure the gateway." +msgstr "Määritä verkon yhdyskäytävä." + +msgid "Configure the general audio delay of Dolby Digital sound tracks." +msgstr "Määrittää yleisen äänen viiveen Dolby Digital ääniraidoille." + +msgid "Configure the general audio delay of stereo sound tracks." +msgstr "Määrittää yleisen äänen viiveen stereo ääniraidoille." + +msgid "Configure the hard disk drive to go to standby after the specified idle time." +msgstr "Määrittää kovalevyn sammutuksen asetetun toimettomuusajan jälkeen." + +msgid "Configure the horizontal alignment of the subtitles." +msgstr "Määrittää tekstityksen sijainin vaakasuunnassa." + +msgid "Configure the initial fast forward speed. When you press the fast forward button, winding will start at this speed." +msgstr "Määrittää oletus eteenpäin kelausnopeuden. Kun painat kelausnappia, eteenpäin kelaus aloitetaan tällä nopeudella." + +msgid "Configure the initial rewind speed. When you press the rewind button, winding will start at this speed." +msgstr "Määrittää oletus taakseppäin kelausnopeuden. Kun painat kelausnappia, taakseppäin kelaus aloitetaan tällä nopeudella." + +msgid "Configure the latitude of your location." +msgstr "Määritä sijaintisi leveysaste." + +msgid "Configure the longitude of your location." +msgstr "Määritä sijaintisi pituusaste." + +msgid "Configure the minimum amount of disk space to be available for recordings. When the amount of space drops below this value, deleted items will be removed from the trash can." +msgstr "Määrittää pienimmän kovalevyn tyhjän tilan tallennuksia varten. Kun kovalevyn tyhjä tila menee alle tämän arvon, poistetut tiedostot tyhjennetään roskakorista." + +# +msgid "Configure the nameserver (DNS)." +msgstr "Määritä nimipalvelin (DNS)." + +# +msgid "Configure the netmask." +msgstr "Määritä verkkomaski." + +msgid "Configure the number of days after which items are automaticaly removed from the trash can." +msgstr "Määrittää kuinka monen päivän jälkeen tiedostot tyhjennetään automaattisesti roskakorista." + +msgid "Configure the number of days old timers are kept before they are automatically removed from the timer list." +msgstr "Määrittää kuinka monen päivän jälkeen vanhat ajastukset poistetaan ajastuslistasta automaattisesti." + +msgid "Configure the offline decoding delay in milliseconds. The configured delay is observed at each control word parity change." +msgstr "Määrittää offline-purun viiveen millisekunteina. Määritettyä viivettä seurataan jokaisesta ohjaussanan pariteetin muutoksesta. " + +msgid "Configure the possible fast forward speeds." +msgstr "Määrittää mahdolliset eteenpäinkelauksen nopeudet." + +msgid "Configure the possible rewind speeds." +msgstr "Määrittää mahdolliset taakseppäinkelauksen nopeudet." + +msgid "Configure the primary EPG language." +msgstr "Määrittää ensisijaisen ohjelmaoppaan kielen." + +msgid "Configure the refresh rate of the screen." +msgstr "Määrittää näytön virkistystaajuuden." + +msgid "Configure the screen resolution in PC output mode." +msgstr "Määrittää näytön tarkkuuden PC ulostulo tilassa." + +msgid "Configure the second audio language." +msgstr "Määrittää toissijaisen äänen kielen." + +# +msgid "Configure the second subtitle language." +msgstr "Määrittää toissijaisen tekstityskielen." + +msgid "Configure the secondary EPG language." +msgstr "Määrittää toissijaisen ohjelmaoppaan kielen." + +msgid "Configure the sharpness of the video scaling." +msgstr "Määrittää video-skaalauksen terävyyden." + +msgid "Configure the skip time interval for the '1'/'3' buttons." +msgstr "Määrittää hypyn pituuden '1'/'3' näppäimille." + +msgid "Configure the skip time interval for the '4'/'6' buttons." +msgstr "Määrittää hypyn pituuden '4'/'6' näppäimille." + +msgid "Configure the skip time interval for the '7'/'9' buttons." +msgstr "Määrittää hypyn pituuden '7'/'9' näppäimille." + +# +msgid "Configure the slow motion speeds." +msgstr "Määrittää hidastusnopeudet." + +msgid "Configure the source of the frontend data as shown on the infobars. 'Settings' is as stored on the settings. 'Tuner' is as reported by the tuner." +msgstr "" + +msgid "Configure the speed of the background deletion process. Lower speed will consume less hard disk drive performance." +msgstr "Määrittää taustalla tuhoamis-prosessin nopeus. Matalampi nopeus rasittaa vähemmän kovalevyn suorituskykyä." + +msgid "Configure the speed of the fan" +msgstr "" + +msgid "Configure the subtitle delay when timing information is not available." +msgstr "Määrittää tekstityksen viiveen, kun ajoitustietoa ei ole saatavilla." + +msgid "Configure the third audio language." +msgstr "Määrittää kolmannen äänen kielen." + +# +msgid "Configure the third subtitle language." +msgstr "Määrittää kolmannen tekstityskielen." + +msgid "Configure the transparency of the OSD." +msgstr "Määrittää valikoiden läpinäkyvyyden." + +msgid "Configure the transparency of the black background of graphical DVB subtitles." +msgstr "Määrittää DVB-tekstityksen mustan taustavärin läpinäkyvyyden." + +msgid "Configure the tuner mode." +msgstr "Määrittää virittimen toimintatilan." + +msgid "Configure the type of status indication icons shown in the movielist." +msgstr "Määrittää näytettävien tilaikonien tyyppin tallenneluettelossa." + +msgid "Configure the vertical position of the subtitles, measured from the bottom of the screen." +msgstr "Määrittää tekstityksen kohdan pystysuunnassa, mitattuna kuvaruudun alalaidasta." + +msgid "Configure the video output mode (or resolution)." +msgstr "Määrittää video ulostulon tyypin (tai resoluution)." + +msgid "Configure the way in which the receiver changes channels." +msgstr "Määrittää kuinka vastaanotin vaihtaa kanavia." + +msgid "Configure where completed timers show up in the timer list." +msgstr "Määrittää missä jo päättyneet ajastukset näytetään ajastuslistalla." + +msgid "Configure whether (and for how long) a second infobar will be shown when OK is pressed twice. The second infobar contains additional information about the current channel." +msgstr "Määrittää josko (ja kuinka kauan) toinen tietopalkki näytetään kun OK-näppäintä painetaan kahdesti. Toinen tietopalkki sisältää lisätietoja valitusta kanavasta." + +msgid "Configure whether multi channel sound tracks should be downmixed to stereo." +msgstr "Määrittää jos haluat että monikanavaääni miksataan stereoääneksi." + +msgid "Configure whether or not an icon should be shown when your motorized dish is moving." +msgstr "Määrittelee haluatko kuvakkeen näytettäväksi kun kääntömoottoria käännetään. " + +msgid "Configure which access level to use for the configuration menu. Expert level gives access to all items." +msgstr "Määrittelee millaisilla käyttäjäoikeuksilla pääsee asetusvalikkoon. Expert tason oikeudet sallii pääsyn kaikkiin asetuksiin." + +msgid "Configure which color format should be used on the SCART output." +msgstr "Määrittää mitä värimallia tulisi käyttää SCART lähdössä." + +msgid "Configure which tuner for recordings will be preferred, when more than one tuner is available." +msgstr "" + +msgid "Configure which tuner type will be preferred, when the same service is available on different types of tuners." +msgstr "Määrittää minkä tyyppistä viritintä suositaan, kun sama kanava on saatavilla eri lähteistä." + +msgid "Configure which tuner will be preferred, when more than one tuner is available. If set to 'auto' the system will give priority to the tuner having the lowest number of channels/satellites." +msgstr "Määrittää mitä viritintä suositaan, kun enemmän kuin yksi viritin on vapaana. Jos asetettu 'auto'-tilaan järjestelmä antaa prioriteetin virittimelle jolla on vähiten kanavia/satelliittejä." + +# +msgid "Configure your internal LAN" +msgstr "Määritä LAN-asetukset" + +# +msgid "Configure your network again" +msgstr "Määrittele verkko uudelleen" + +msgid "Configure your network settings, and press OK to start the scan" +msgstr "Määritä verkkoasetukset ja aloita haku painamalla OK" + +# +msgid "Configure your wireless LAN again" +msgstr "Määritä WLAN-asetukset uudelleen" + +msgid "Configures which video output connector will be used." +msgstr "Määrittelee mitä videolähtöä käytetään." + +# +msgid "Configuring" +msgstr "Muokataan" + +# +msgid "Conflicting timer" +msgstr "Ristiriita ajastusten välillä" + +# +msgid "Connect" +msgstr "Yhdistä" + +# +msgid "Connect to a wireless network" +msgstr "Yhdistä WLAN-verkkoon" + +msgid "Connected satellites" +msgstr "" + +# +msgid "Connected to" +msgstr "Kytketty virittimestä" + +msgid "Connected!" +msgstr "Yhdistetty!" + +# +msgid "Constellation" +msgstr "Modulaatio" + +# +msgid "Content does not fit on DVD!" +msgstr "Sisältö ei mahdu DVD:lle!" + +msgid "Continue" +msgstr "Jatka" + +# +msgid "Continue in background" +msgstr "Jatka taustalla" + +# +msgid "Continue playback" +msgstr "Jatka toistoa" + +# +msgid "Continue playing" +msgstr "Jatka toistoa" + +msgid "Continues play (loop)" +msgstr "Jatkuva toisto (loop)" + +# +msgid "Contrast" +msgstr "Kontrasti" + +msgid "Convert ext3 filesystem to ext4" +msgstr "Muunna ext3 tiedostojärjestelmästä ext4:ään" + +msgid "Convert ext3 to ext4" +msgstr "Muunna ext3:sta ext4:ään" + +msgid "Converting ext3 to ext4..." +msgstr "Muunnetaan ext3:sta ext4:ään..." + +msgid "Copy" +msgstr "Kopioi" + +msgid "Could not connect to receiver .NFI image feed server:" +msgstr "Ei yhteyttä .NFI ohjelmistoa tarjoavaan palvelimeen:" + +msgid "Could not find installed channel list." +msgstr "Asennettua kanavaluetteloa ei löytynyt." + +# +msgid "Could not load medium! No disc inserted?" +msgstr "Levyä ei voitu ladata! Levy puuttuu?" + +msgid "Could not open Picture in Picture" +msgstr "PiP-kuvaa ei voitu avata" + +# +#, python-format +msgid "Could not record due to conflicting timer %s" +msgstr "Ajastusristiriidan takia ei voitu tallentaa %s" + +#, python-format +msgid "Could not record due to invalid service %s" +msgstr "Ei voitu tallentaa virheellisen kanavan takia %s" + +# +msgid "Create DVD-ISO" +msgstr "Luo DVD-ISO" + +msgid "Create more detailed crash log" +msgstr "Luo täsmällinen kaatumisloki" + +# +#, python-format +msgid "Creating directory %s failed." +msgstr "Hakemiston %s luominen epäonnistui." + +msgid "Creating filesystem" +msgstr "Tiedostojärjestelmää luodaan" + +msgid "Creating partition" +msgstr "Osiota luodaan" + +# +msgid "Croatian" +msgstr "Kroatia" + +msgid "Current CEC address" +msgstr "Nykyinen CEC-osoite" + +msgid "Current device: " +msgstr "Nykyinen laite: " + +msgid "Current event EPG" +msgstr "Nykyisen tapahtuman ohjelmaopas" + +#, python-format +msgid "Current mode: %s \n" +msgstr "" + +# +msgid "Current settings:" +msgstr "Nykyiset asetukset:" + +# +msgid "Current transponder" +msgstr "Nykyinen lähetin" + +# +msgid "Current value: " +msgstr "Nykyinen arvo: " + +# +msgid "Current version:" +msgstr "Nykyinen versio:" + +msgid "Currently installed image" +msgstr "Nykyinen ohjelmisto" + +msgid "Currently the commit log cannot be retrieved - please try later again" +msgstr "" + +# +msgid "Custom skip time for '1'/'3' buttons" +msgstr "'1'/'3'-näppäimien hypyn pituus" + +# +msgid "Custom skip time for '4'/'6' buttons" +msgstr "'4'/'6'-näppäimien hypyn pituus" + +# +msgid "Custom skip time for '7'/'9' buttons" +msgstr "'7'/'9'-näppäimien hypyn pituus" + +# +msgid "Customize" +msgstr "Toimintojen mukautus" + +msgid "Customize channel list cursor behavior" +msgstr "" + +# +msgid "Cut" +msgstr "Leikkaa" + +# +# Tallennevalikko +msgid "Cutlist editor..." +msgstr "Määritä leikkauskohdat..." + +# +msgid "Czech" +msgstr "Tšekki" + +msgid "D" +msgstr "D" + +msgid "DHCP" +msgstr "DCHP" + +# +msgid "DMM advanced" +msgstr "Laaja" + +msgid "DMM normal" +msgstr "Normaali" + +msgid "DUAL LAYER DVD" +msgstr "DUAL LAYER DVD" + +msgid "DVB subtitle black transparency" +msgstr "DVB-tekstin mustan reunan läpinäkyvyys" + +msgid "DVB-C" +msgstr "DVB-C" + +msgid "DVB-C ANNEX C" +msgstr "DVB-C ANNEX C" + +# +msgid "DVB-S" +msgstr "DVB-S" + +# +msgid "DVB-S2" +msgstr "DVB-S2" + +msgid "DVB-T" +msgstr "DVB-T" + +msgid "DVB-T2" +msgstr "DVB-T2" + +msgid "DVD data format" +msgstr "DVD tiedostomuoto" + +# +msgid "DVD file browser" +msgstr "DVD-tiedostoselain" + +# +msgid "DVD media toolbox" +msgstr "DVD-levyn työkalut" + +# +msgid "DVD player" +msgstr "DVD-soitin" + +# +msgid "DVD titlelist" +msgstr "DVD-otsikkoluettelo" + +# +msgid "Danish" +msgstr "Tanska" + +# +msgid "Date" +msgstr "Päiväys" + +# +msgid "Date/time input" +msgstr "Ajan/Päivän syöttö" + +# +msgid "Deep standby" +msgstr "Virransäästötila" + +# +msgid "Default" +msgstr "Oletus" + +msgid "Default movie location" +msgstr "Oletushakemisto tallennuksille" + +# +msgid "Default settings" +msgstr "Oletusasetukset" + +msgid "Delay before key repeat starts:" +msgstr "Viive ennen kuin näppäimen toisto alkaa" + +msgid "Delay for external subtitles" +msgstr "Teksti-tv tekstityksen viive" + +# +msgid "Delete" +msgstr "Poista" + +# +msgid "Delete entry" +msgstr "Poista valinta" + +# +msgid "Delete failed!" +msgstr "Poisto epäonnistui!" + +# +msgid "Delete file" +msgstr "Poista tiedosto" + +# +msgid "Delete playlist entry" +msgstr "Poista soittolistan valinta" + +# +msgid "Delete saved playlist" +msgstr "Poista tallennettu soittolista" + +msgid "Delete timer" +msgstr "" + +# +# Teksti esiintyy vain tallenteiden käsittelyvalikossa +# Kolme pistettä ovat turhia, tästä aukeaa vain +# varmistusikkuna, ei alivalikkoa tai asetusruutua. +msgid "Delete..." +msgstr "Poista tallenne" + +msgid "Deleted" +msgstr "Poistetut" + +msgid "Deleted items" +msgstr "Poistetut kohteet" + +msgid "Depth" +msgstr "Syvyys" + +msgid "Descramble http streams" +msgstr "Pura http-streameja" + +# +msgid "Description" +msgstr "Kuvaus" + +# +msgid "Deselect" +msgstr "Ei valittu" + +msgid "Details for plugin: " +msgstr "Lisäosan tiedot: " + +# +msgid "Detected HDD:" +msgstr "Kiintolevy:" + +# +msgid "Detected NIMs:" +msgstr "Virittimet:" + +msgid "Devicename:" +msgstr "Laitenimi:" + +msgid "Devide" +msgstr "" + +# +msgid "DiSEqC" +msgstr "DiSEqC" + +msgid "DiSEqC 1.0 command" +msgstr "" + +msgid "DiSEqC 1.1 command" +msgstr "" + +msgid "DiSEqC 1.1 repeats" +msgstr "" + +# +msgid "DiSEqC A/B" +msgstr "DiSEqC A/B" + +# +msgid "DiSEqC A/B/C/D" +msgstr "DiSEqC A/B/C/D" + +# +msgid "DiSEqC mode" +msgstr "DiSEqC-tila" + +# +#, python-format +msgid "DiSEqC port %s: %s" +msgstr "DiSEqC portti %s: %s" + +# +msgid "DiSEqC-tester settings" +msgstr "DiSEqC-testin asetukset" + +msgid "Dialing:" +msgstr "Soitto:" + +# +msgid "Digital contour removal" +msgstr "Ääriviivakorostumien poisto" + +# +msgid "Direct playback of linked titles without menu" +msgstr "Linkitettyjen tallenteiden toisto ilman valikkoa" + +msgid "Directory" +msgstr "Hakemisto" + +# +#, python-format +msgid "Directory %s does not exist." +msgstr "Hakemistoa %s ei löydy." + +# +#, python-format +msgid "Directory %s nonexistent." +msgstr "Hakemistoa %s ei löydy." + +# +msgid "Directory browser" +msgstr "Hakemistoselain" + +#, python-format +msgid "Directory contains %d file(s) and %d sub-directories.\n" +msgstr "Hakemisto sisältää %d tiedostoa ja %d alihakemistoa.\n" + +#, python-format +msgid "Directory contains %s and %s." +msgstr "Hakemisto sisältää %s ja %s." + +# +msgid "Disable" +msgstr "Keskeytä" + +# +msgid "Disable Picture in Picture" +msgstr "Sulje PiP-kuva" + +msgid "Disable background scanning" +msgstr "Poista taustahaku käytöstä" + +# +msgid "Disable timer" +msgstr "Poista käytöstä" + +# +msgid "Disabled" +msgstr "Ei käytössä" + +# +msgid "Disconnect" +msgstr "Katkaise yhteys" + +msgid "Disk space to reserve for recordings (in GB)" +msgstr "Tallenteille varattu levytila (GB)" + +# +msgid "Display 16:9 content as" +msgstr "Näytä 16:9 sisältö" + +# +msgid "Display 4:3 content as" +msgstr "Näytä 4:3 sisältö" + +# +msgid "Display >16:9 content as" +msgstr "Näytä >16:9 sisältö" + +# +msgid "Display and userinterface" +msgstr "Näyttö ja käyttöliittymä" + +msgid "Display message before playing next movie" +msgstr "Näytä viesti ennen seuraavaa elokuvaa" + +msgid "Display setup" +msgstr "Etupaneelin näytön asetus" + +# +msgid "Do not change" +msgstr "Älä muuta" + +# +msgid "Do not record" +msgstr "Älä tallenna" + +# +msgid "Do nothing" +msgstr "Älä tee mitään" + +# +msgid "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" +msgstr "" +"Haluatko tarkistaa tiedostojärjetelmän?\n" +"Tarkistus saattaa kestää kauan!" + +msgid "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" +msgstr "" +"Haluatko varmasti muuntaa tämän tiedostojärjestelmän?\n" +"Et voi palata takaisin entiseen!" + +# +#, python-format +msgid "Do you really want to delete %s?" +msgstr "" +"Haluatko poistaa\n" +"\"%s\"?" + +# +#, python-format +msgid "" +"Do you really want to download\n" +"the plugin \"%s\"?" +msgstr "" +"Haluatko ladata\n" +"lisäosan \"%s\"?" + +msgid "Do you really want to exit?" +msgstr "Haluatko lopettaa?" + +msgid "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" +msgstr "" +"Haluatko todellakin alustaa tämän laitteen?\n" +"Kaikki tiedostot katoaa!" + +# +#, python-format +msgid "" +"Do you really want to remove\n" +"the plugin \"%s\"?" +msgstr "" +"Haluatko todella poistaa\n" +"lisäosan \"%s\"?" + +# +#, python-format +msgid "Do you really want to remove directory %s from the disk?" +msgstr "Haluatko poistaa levyltä hakemiston %s?" + +# +#, python-format +msgid "Do you really want to remove your bookmark of %s?" +msgstr "Haluatko poistaa kirjanmerkin %s?" + +msgid "Do you want this?" +msgstr "Haluatko tehdä niin?" + +# +msgid "Do you want to burn this collection to DVD medium?" +msgstr "Haluatko polttaa tämän kokoelman DVD:lle?" + +# +msgid "Do you want to do a service scan?" +msgstr "Haluatko tehdä kanavahaun?" + +# +msgid "Do you want to do another manual service scan?" +msgstr "Haluatko tehdä uuden manuaalihaun?" + +#, python-format +msgid "Do you want to download the image to %s ?" +msgstr "Haluatko ladata ohjelmistopäivityksen %s :lle ?" + +# +msgid "Do you want to install a channel list?" +msgstr "Haluatko asentaa kanavalistan?" + +# +msgid "Do you want to install the package:\n" +msgstr "Haluatko asentaa IPKG-paketin:\n" + +# +msgid "Do you want to play DVD in drive?" +msgstr "Haluatko toistaa asemassa olevan DVD:n?" + +# +msgid "Do you want to preview this DVD before burning?" +msgstr "Haluatko esikatsella tämän DVD:n ennen polttoa?" + +msgid "Do you want to reboot your receiver?" +msgstr "Haluatko uudelleenkäynnistää vastaanottimesi?" + +# +msgid "Do you want to remove the package:\n" +msgstr "Haluatko poistaa ohjelmapaketin:\n" + +# +msgid "Do you want to restore your settings?" +msgstr "Haluatko palauttaa asetukset?" + +# +msgid "Do you want to resume this playback?" +msgstr "Jatketaanko kohdasta, johon katselu viimeksi jäi?" + +#, python-format +msgid "Do you want to update your receiver to %s?" +msgstr "Haluatko päivittää vastaanottimeesi %s?" + +msgid "Do you want to update your receiver?" +msgstr "Haluatko päivittää vastaanottimesi?" + +# +msgid "Do you want to upgrade the package:\n" +msgstr "Haluatko päivittää ohjelmapaketin:\n" + +# +msgid "Don't stop current event but disable coming events" +msgstr "Älä pysäytä tallennusta, mutta estä tulevat ajastukset" + +# +#, python-format +msgid "Done - Installed, upgraded or removed %d package (%s)" +msgid_plural "Done - Installed, upgraded or removed %d packages (%s)" +msgstr[0] "Valmis - asennettu, päivitetty tai poistettu %d paketti (%s)" +msgstr[1] "Valmis - asennettu, päivitetty tai poistettu %d pakettia (%s) " + +# +msgid "Download" +msgstr "Lataa" + +#, python-format +msgid "Download %s from server" +msgstr "Lataa %s palvelimelta" + +# +msgid "Download .NFI-files for USB-flasher" +msgstr "Lataa .NFI-tiedostoja USB-päivitysohjelmaa varten" + +# +msgid "Download plugins" +msgstr "Lataa lisäosia" + +# +msgid "Downloadable new plugins" +msgstr "Uusia ladattavia lisäosia" + +# +msgid "Downloadable plugins" +msgstr "Ladattavia lisäosia" + +# +msgid "Downloading" +msgstr "Ladataan" + +# +msgid "Downloading plugin information. Please wait..." +msgstr "Ladataan tietoja lisäosista. Odota..." + +# +msgid "Dutch" +msgstr "Hollanti" + +# +msgid "Dynamic contrast" +msgstr "Dynaaminen kontrasti" + +# +msgid "E" +msgstr "E" + +msgid "EPG" +msgstr "Ohjelmaopas" + +msgid "EPG language selection 1" +msgstr "Ohjelmaoppaan kielen valinta 1" + +msgid "EPG language selection 2" +msgstr "Ohjelmaoppaan kielen valinta 2" + +# +msgid "EPG selection" +msgstr "Ohjelmaoppaan valinta" + +msgid "EPG settings" +msgstr "Ohjelmaoppaan asetukset" + +# +#, python-format +msgid "ERROR - failed to scan (%s)!" +msgstr "VIRHE - haku epäonnistui (%s)!" + +# +msgid "East" +msgstr "Itä" + +msgid "East limit set" +msgstr "Itäraja asetettu" + +# +msgid "Edit" +msgstr "Muokkaa" + +# +msgid "Edit DNS" +msgstr "Muuta DNS" + +msgid "Edit bouquets list" +msgstr "Muokkaa suosikkilistaa" + +# +msgid "Edit chapters of current title" +msgstr "Muokkaa kappaleita" + +# +msgid "Edit services list" +msgstr "Muokkaa kanavalistaa" + +# +msgid "Edit settings" +msgstr "Muokkaa asetuksia" + +msgid "Edit the nameserver configuration of your receiver.\n" +msgstr "Muokkaa nimipalvelimen asetuksia vastaanottimessasi.\n" + +msgid "Edit the network configuration of your receiver.\n" +msgstr "Muokkaa verkkoasetuksia vastaanottimessasi.\n" + +msgid "Edit timer" +msgstr "" + +# +msgid "Edit title" +msgstr "Editoi" + +# +msgid "Edit upgrade source url." +msgstr "Muokkaa päivitys-URL:ia." + +msgid "Education/Science/..." +msgstr "Koulutus/Tiede/..." + +# +msgid "Electronic Program Guide" +msgstr "Ohjelmaopas" + +# +msgid "Enable" +msgstr "Ota käyttöön" + +msgid "Enable 'neutrino' style channel select controlling" +msgstr "" + +msgid "Enable 'neutrino' style zap controlling" +msgstr "" + +# +msgid "Enable 5V for active antenna" +msgstr "Syötä 5 voltin käyttöjännite aktiiviantennille" + +msgid "Enable EIT EPG" +msgstr "Ota käyttöön EIT EPG" + +msgid "Enable MHW EPG" +msgstr "Ota käyttöön MHW EPG" + +msgid "Enable Netmed EPG" +msgstr "Ota käyttöön Netmed EPG" + +msgid "Enable OK for channel selection" +msgstr "" + +msgid "Enable ViaSat EPG" +msgstr "Ota käyttöön ViaSat EPG" + +msgid "Enable Virgin EPG" +msgstr "" + +msgid "Enable Wake On LAN" +msgstr "" + +msgid "Enable auto fast scan" +msgstr "" + +msgid "Enable bouquet selection in multi-EPG" +msgstr "Käytä suosikkilistojen valintaa useammassa ohjelmaoppaassa " + +msgid "Enable freesat EPG" +msgstr "Ota käyttöön Freesat EPG" + +# +msgid "Enable multiple bouquets" +msgstr "Salli useiden suosikkilistojen luonti ja käyttö" + +# +msgid "Enable parental control" +msgstr "Ota lapsilukko käyttöön" + +msgid "Enable teletext caching" +msgstr "Ota käyttöön teksti-tv:n välimuisti" + +msgid "Enable zapping with CH+/-, B+/-, P+/-" +msgstr "" + +# +msgid "Enabled" +msgstr "Käytössä" + +msgid "Encrypted: " +msgstr "Salattu: " + +# +msgid "Encryption" +msgstr "Suojaus" + +# +msgid "Encryption key" +msgstr "Salausavain" + +# +msgid "Encryption key type" +msgstr "Salausavaimen tyyppi" + +# +msgid "Encryption:" +msgstr "Salaus:" + +# +msgid "End time" +msgstr "Lopetusaika" + +msgid "End time to ignore inactivity sleeptimer" +msgstr "Pois päältä olon päättymisaika" + +msgid "End time to ignore shutdown in standby" +msgstr "" + +# +msgid "English" +msgstr "Englanti" + +# +msgid "Enigma2 skin selector" +msgstr "Enigma2 teeman valinta" + +# +msgid "Enter main menu..." +msgstr "Mene päävalikkoon..." + +msgid "Enter pin code" +msgstr "Syötä PIN-koodi" + +# +msgid "Enter the service pin" +msgstr "Syötä kanavan tunnusluku" + +msgid "Equal to" +msgstr "" + +# +msgid "Error" +msgstr "Virhe" + +msgid "Error code" +msgstr "Virhekoodi" + +# +msgid "Error executing plugin" +msgstr "Virhe plugin-lisäosan suorittamisessa" + +# +#, python-format +msgid "" +"Error: %s\n" +"Retry?" +msgstr "" +"Virhe: %s\n" +"Yritä uudelleen?" + +# +msgid "Estonian" +msgstr "Viro" + +msgid "Ethernet network interface" +msgstr "Verkkokortti" + +msgid "Event font size (relative to skin size)" +msgstr "Ohjelmantiedon tekstikoko (suhteessa teeman kokoon)" + +# +msgid "Event view" +msgstr "Ohjelmatiedot" + +msgid "Event view menu" +msgstr "Ohjelmatietojen valikko" + +msgid "Everywhere" +msgstr "Kaikkialla" + +msgid "Exceeds dual layer medium!" +msgstr "Ylittää kaksikerroslevyn tilavuuden!" + +# +msgid "Execution finished!!" +msgstr "Tehtävä suoritettu, paina OK" + +# +msgid "Execution progress:" +msgstr "Tehtävän edistyminen:" + +msgid "Exif" +msgstr "Exif" + +# +msgid "Exit" +msgstr "Poistu" + +msgid "Exit EPG" +msgstr "Sulje ohjelmaopas" + +# +msgid "Exit editor" +msgstr "Poistu editorista" + +msgid "Exit input device selection." +msgstr "Poistu syöttölaitteen valinnasta." + +msgid "Exit media player?" +msgstr "Poistu Mediasoittimesta?" + +msgid "Exit mediaplayer" +msgstr "Poistu Mediasoittimesta" + +# +msgid "Exit movie list" +msgstr "Poistu tallenneluettelosta" + +msgid "Exit movie player?" +msgstr "Poistu tallenteista?" + +# +msgid "Exit nameserver configuration" +msgstr "Lopeta nimipalvelimen määritys" + +# +msgid "Exit network interface list" +msgstr "Poistu verkkosovitinluettelosta" + +# +msgid "Exit network wizard" +msgstr "Poistu verkkoasennuksesta" + +# +# Tämä on imagewizard.xml:stä löytyvä valintateksti +msgid "Exit the wizard" +msgstr "Poistu ohjatusta asennustoiminnosta" + +# +msgid "Expert" +msgstr "Laaja" + +msgid "Extend sleeptimer 15 minutes" +msgstr "Jatka uniajastimen aikaa 15 minuuttia" + +msgid "Extended Software" +msgstr "Laajat ohjelmavalinnat" + +msgid "Extended Software Plugin" +msgstr "Laajat lisäosavalinnat" + +# +msgid "Extended network setup plugin..." +msgstr "Laajennetut verkkoasetukset..." + +# +msgid "Extended setup..." +msgstr "Laajat asetukset..." + +# +msgid "Extensions" +msgstr "Laajennukset" + +msgid "Extensions management" +msgstr "Laajennuksien hallinta" + +msgid "External PiP" +msgstr "" + +msgid "External subtitle color" +msgstr "Teksti-tv tekstityksen väri" + +msgid "Extra motor options" +msgstr "" + +# +msgid "FEC" +msgstr "FEC" + +msgid "FTA" +msgstr "FTA" + +# +msgid "Factory reset" +msgstr "Palauta tehdasasetukset" + +# +msgid "Failed" +msgstr "Epäonnistui" + +msgid "Failed to write /tmp/positionersetup.log: " +msgstr "Kirjoittaminen /tmp/positionersetup.log:iin epäonnistui: " + +#, python-format +msgid "Fan %d" +msgstr "Tuuletin %d" + +#, python-format +msgid "Fan %d PWM" +msgstr "Tuuletin %d PWM" + +#, python-format +msgid "Fan %d voltage" +msgstr "Tuulettimen %d jännite" + +msgid "Fan operation" +msgstr "" + +msgid "Fan speed" +msgstr "" + +# +msgid "Fast" +msgstr "Nopea" + +# +msgid "Fast DiSEqC" +msgstr "Nopea DiSEqC" + +msgid "Fast Scan" +msgstr "Nopea haku" + +# +msgid "Fast epoch" +msgstr "Nopea päivällä" + +# +msgid "Fast forward speeds" +msgstr "Eteenpäin kelausnopeudet" + +# +msgid "Favourites" +msgstr "Suosikit" + +msgid "File appears to be busy.\n" +msgstr "Tiedosto näyttää olevan käytössä.\n" + +msgid "Filesystem check" +msgstr "Tiedostojärjestelmän tarkistus" + +msgid "Final position at" +msgstr "Lopullinen paikka" + +msgid "Final position at index" +msgstr "Lopullinen paikka indeksissä" + +msgid "Fine movement" +msgstr "Hienosäätö" + +# +msgid "Finetune" +msgstr "Hienosäädä" + +# +msgid "Finished" +msgstr "Päättyi" + +# +msgid "Finished configuring your network" +msgstr "Verkon määrittely suoritettu" + +# +msgid "Finished restarting your network" +msgstr "Verkko käynnistyi uudelleen" + +# +msgid "Finnish" +msgstr "Suomi" + +msgid "Fixed" +msgstr "Kiinteä" + +msgid "Flash" +msgstr "Päivitä" + +# +msgid "Flashing failed" +msgstr "Päivitys epäonnistui" + +msgid "Following tasks will be done after you press OK!" +msgstr "Seuraavat tehtävät suoritetaan kun painat OK!" + +# +msgid "Format" +msgstr "Alusta" + +msgid "Forward volume keys" +msgstr "Välitä äänenvoimakkuusnäppäimet" + +# +msgid "Frame size in full view" +msgstr "Kehyksen koko kokoruudussa" + +# +msgid "French" +msgstr "Ranska" + +# +msgid "Frequency" +msgstr "Taajuus" + +# +msgid "Frequency bands" +msgstr "Taajuusalueet" + +# +msgid "Frequency scan step size(khz)" +msgstr "Taajuushaun askel (khz)" + +# +msgid "Frequency steps" +msgstr "Taajuusaskel" + +# +msgid "Frequency:" +msgstr "Taajuus:" + +# +msgid "Fri" +msgstr "Pe" + +# +msgid "Friday" +msgstr "Perjantai" + +msgid "From :" +msgstr "Mistä:" + +#, python-format +msgid "Frontprocessor version: %d" +msgstr "Etuprosessorin versio: %d" + +msgid "Full transparency" +msgstr "Täysi läpinäkyvyys" + +msgid "Fulview resulution" +msgstr "Kokokuvan resoluutio" + +msgid "Function of OK button" +msgstr "OK näppäimen toiminta" + +msgid "Further Options" +msgstr "" + +# +msgid "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" +msgstr "" +"Teema vaihtuu vasta kun laitteen\n" +"käyttöliittymä on käynnistetty uudelleen.\n" +"Haluatko käynnistää käyttöliittymän\n" +"uudelleen nyt?" + +# +msgid "Gateway" +msgstr "Yhdyskäytävä" + +# +msgid "General AC3 delay" +msgstr "AC3-viive (ms)" + +# +msgid "General PCM delay" +msgstr "PCM-viive (ms)" + +# +msgid "Genre" +msgstr "Laji" + +# +msgid "German" +msgstr "Saksa" + +msgid "Get latest experimental image" +msgstr "Hae viimeisin testiversion ohjelmistopäivitys" + +msgid "Get latest release image" +msgstr "Hae viimeisin virallinen ohjelmistopäivitys" + +# +msgid "Getting plugin information. Please wait..." +msgstr "Haetaan tietoja lisäosista. Odota..." + +msgid "Go down the list" +msgstr "Mene luettelossa alaspäin" + +msgid "Go to first movie or last item" +msgstr "Mene ensimmäiseen tallenteeseen tai viimeiseen kohteeseen" + +msgid "Go to first movie or top of list" +msgstr "Mene ensimmäiseen tallenteeseen tai luettelon alkuun" + +msgid "Go to first service" +msgstr "Mene ensimmäiselle kanavalle" + +msgid "Go to last service" +msgstr "Mene viimeiselle kanavalle" + +msgid "Go to next event" +msgstr "Mene seuraavaan ohjelmaan" + +msgid "Go to next page of service" +msgstr "Mene seuraavalle kanavasivulle" + +msgid "Go to previous event" +msgstr "Mene edelliseen ohjelmaan" + +msgid "Go to previous page of service" +msgstr "Mene edelliselle kanavasivulle" + +msgid "Go up the list" +msgstr "Mene luettelossa ylöspäin" + +msgid "Goto" +msgstr "Mene" + +# +msgid "Goto 0" +msgstr "Mene 0" + +msgid "Goto :" +msgstr "Mene :" + +msgid "Goto X" +msgstr "Mene X" + +msgid "Goto index position" +msgstr "Mene indeksiin" + +msgid "Goto next day of events" +msgstr "Mene seuraavan päivän ohjelmiin" + +msgid "Goto next page of events" +msgstr "Mene seuraavalle ohjelmasivulle" + +# +msgid "Goto position" +msgstr "Mene sijaintiin" + +msgid "Goto previous day of events" +msgstr "Mene edellisen päivän ohjelmiin" + +msgid "Goto previous page of events" +msgstr "Mene edelliselle ohjelmasivulle\"" + +msgid "Goto specific date/time" +msgstr "" + +msgid "GotoX calibration" +msgstr "MeneX kalibrointi" + +msgid "GraphMultiEpg Settings" +msgstr "Graafisen ohjelmaoppaan asetukset" + +# +msgid "Graphical Multi EPG" +msgstr "Graafinen Kanavaopas" + +# +msgid "Greek" +msgstr "Kreikka" + +# +msgid "Green boost" +msgstr "Vihreän korostus" + +msgid "Guard interval" +msgstr "Guard interval" + +msgid "HD list" +msgstr "HD-luettelo" + +msgid "HDMI-CEC setup" +msgstr "" + +msgid "Handle standby from TV" +msgstr "Käsittele sammutuskäsky TV:ltä" + +msgid "Handle wakeup from TV" +msgstr "Käsittele käynnistyskäsky TV:ltä" + +msgid "Hard disk" +msgstr "Kiintolevy" + +# +msgid "Hard disk setup" +msgstr "Kiintolevyn asetukset" + +# +msgid "Hard disk standby after" +msgstr "Kiintolevyn sammutus" + +msgid "Harddisk" +msgstr "Kiintolevy" + +msgid "Hardware: " +msgstr "Järjestelmä: " + +msgid "Hebrew" +msgstr "Heprea" + +msgid "Helps setting up your dish" +msgstr "Auttaa lautasantennisi asennuksessa" + +msgid "Hidden network" +msgstr "Piilotettu verkko" + +msgid "Hide CI messages" +msgstr "Piilota CI-viestit" + +msgid "Hide channel list in radio mode" +msgstr "Piilota kanavaluettelo radio tilassa." + +msgid "Hide known extensions" +msgstr "Piilota tunnetut päätteet" + +# +msgid "Hide number markers" +msgstr "Piilota väliotsikot joilla on kanavanumero" + +# +msgid "Hide player" +msgstr "Piilota soitin" + +msgid "Hide zap errors" +msgstr "Piilota kanavanvaihton virheilmoitukset" + +msgid "Hierarchy info" +msgstr "Hierarkia info" + +# +msgid "Hierarchy information" +msgstr "Hierarkia-tietoja" + +# +msgid "High bitrate support" +msgstr "Suurten bittimäärien tuki" + +msgid "Hold screen" +msgstr "Pidä näyttö" + +msgid "Hold till locked" +msgstr "Pidä kunnes lukittu" + +msgid "Home" +msgstr "Kotihakemisto" + +# +msgid "Horizontal" +msgstr "Horisontaali" + +msgid "Horizontal turning speed" +msgstr "Vaakasuuntainen kääntymisnopeus" + +# +msgid "How many minutes do you want to record?" +msgstr "Kuinka monta minuuttia haluat tallentaa?" + +# +msgid "Hue" +msgstr "Sävy" + +# +msgid "Hungarian" +msgstr "Unkari" + +# +msgid "IP address" +msgstr "IP-osoite" + +# +msgid "ISO file is too large for this filesystem!" +msgstr "ISO-tiedosto on liian suuri tälle tiedostojärjestelmälle!" + +# +msgid "ISO path" +msgstr "ISO-hakemisto" + +msgid "Icons" +msgstr "Kuvakkeet" + +# +msgid "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." +msgstr "" +"SCART-liitännässä on ilmennyt ongelma.\n" +"Paina OK palataksesi takaisin." + +# +msgid "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." +msgstr "" +"Jos televisiossasi on kirkkauden tai kontrastin automaattisäätö, kytke se pois päältä. Jos kuva-asetuksissa on säätöjä nimeltä \"dynamic\" kytke ne normaaliarvoon. Säädä huoneen valaistus sopivaksi. Säädä television kontrasti alimpaan arvoon.\n" +"\n" +"Säädä television valoisuus niin alas kuin mahdollista ilman, että testikuvan kaksi tumminta sävyä (1 ja 2) muuttuu yhtä tummiksi.\n" +"\n" +"Älä välitä kirkkaista sävyistä, ne säädetään seuraavassa vaiheessa.\n" +"\n" +"Kun olet tyytyväinen tulokseen, paina OK." + +msgid "Image: " +msgstr "Ohjelmisto: " + +# +msgid "Immediate shutdown" +msgstr "Sammuta heti" + +# +msgid "In order to record a timer, the TV was switched to the recording service!\n" +msgstr "" +"Pakotettu kanavanvaihto. Ajastettu tallennus\n" +"käynnistyi juuri ja tarvitsi tätä viritintä.\n" + +# +msgid "In progress" +msgstr "Käynnissä" + +# +msgid "Inactivity Sleeptimer" +msgstr "Käyttämättömyysajastin" + +msgid "Include AIT in http streams" +msgstr "Sisällytä AIT http-streameihin" + +msgid "Include ECM in http streams" +msgstr "Sisällytä ECM http-streameihin" + +msgid "Include EIT in http streams" +msgstr "Sisällytä EIT http-streameihin" + +msgid "Incorrect type service for PiP!" +msgstr "" + +# +msgid "Increased voltage" +msgstr "Korotettu LNB-jännite" + +# +msgid "Index" +msgstr "Indeksi" + +msgid "Index allocated:" +msgstr "Indeksi varattu:" + +msgid "Info" +msgstr "Tietoja" + +# +msgid "Info bar" +msgstr "Tietopalkki" + +# +msgid "Info bar timeout" +msgstr "Tietopalkin näyttöaika" + +msgid "Infobar frontend data source" +msgstr "" + +# +msgid "Information" +msgstr "Tietoja" + +# +msgid "Init" +msgstr "Palauta CA-moduulin alkuasetukset" + +msgid "Initial fast forward speed" +msgstr "Eteenpäinkelauksen aloitusnopeus" + +msgid "Initial location in new timers" +msgstr "Uusien ajastuksien oletustallennushakemisto" + +msgid "Initial lock ratio" +msgstr "Alustava lukitussuhde" + +msgid "Initial rewind speed" +msgstr "Taaksepäinkelauksen aloitusnopeus" + +msgid "Initial signal quality" +msgstr "Alustava signaalin laatu" + +msgid "Initial signal quality:" +msgstr "Alustava signaalin laatu:" + +msgid "Initialization" +msgstr "Alustus" + +# +msgid "Initialize" +msgstr "Alusta" + +msgid "Initializing storage device..." +msgstr "Alustetaan tallennusvälinettä" + +# +# Monivalintaikkunoiden otsikkopalkin teksti +msgid "Input" +msgstr "Valitse" + +msgid "Input device setup" +msgstr "Syöttölaitteen asetukset" + +msgid "Input devices" +msgstr "Syöttölaitteet" + +# +msgid "Install" +msgstr "Asenna" + +# +msgid "Install a new image with a USB stick" +msgstr "Päivitä uusi ohjelmisto USB-tikulta" + +# +msgid "Install a new image with your web browser" +msgstr "Päivitä uusi ohjelmisto WWW-selaimella" + +# +msgid "Install channel list" +msgstr "Asenna kanavalista" + +msgid "Install extensions" +msgstr "" + +# +msgid "Install extensions." +msgstr "Asenna laajennukset." + +# +msgid "Install local extension" +msgstr "Asenna paikallinen laajennus" + +msgid "Install picons on" +msgstr "Asenna kanavalogot" + +# +msgid "Install softcam" +msgstr "Asenna softcam..." + +msgid "Installation has completed." +msgstr "Asennus on valmis." + +msgid "Installation or removal has completed." +msgstr "Asennus tai poisto suoritettu." + +# +msgid "Installing" +msgstr "Asennetaan" + +# +msgid "Installing software..." +msgstr "Asennetaan ohjelmistoa..." + +msgid "Instant recording location" +msgstr "Tallennuksen hakemisto" + +msgid "Instant recording..." +msgstr "Tallennus..." + +msgid "Interface: " +msgstr "Liittymä: " + +# +msgid "Intermediate" +msgstr "Keskitaso" + +# +msgid "Internal flash" +msgstr "Sisäinen flash-muisti" + +msgid "Internal hdd only" +msgstr "Vain sisäinen kiintolevy" + +msgid "Interval between keys when repeating:" +msgstr "Viive näppäimen toiston välissä." + +# +#, python-format +msgid "Invalid directory selected: %s" +msgstr "Virheellinen hakemisto valittu: %s" + +# +msgid "Invalid location" +msgstr "Virheellinen sijainti" + +msgid "Invalid transponder data" +msgstr "" + +# +msgid "Inversion" +msgstr "Inversio" + +msgid "Invert" +msgstr "Käänteinen" + +msgid "Ipkg" +msgstr "Ipkg" + +msgid "Is this setting ok?" +msgstr "Käytä näitä asetuksia?" + +# +msgid "Is this video mode ok?" +msgstr "Onko tämä video-tila ok?" + +# +msgid "Italian" +msgstr "Italia" + +msgid "Items per page " +msgstr "Kohdetta sivulla" + +msgid "Items per page for list screen" +msgstr "Merkintöjä per sivu luettelossa" + +# +msgid "Job overview" +msgstr "Työnäkymä" + +msgid "Jump to beginning of list" +msgstr "Hyppää listan alkuun" + +# +msgid "Jump to end of list" +msgstr "Mene listan loppuun" + +# +msgid "Jump to next marked position" +msgstr "Mene seuraavaan merkkiin" + +# +msgid "Jump to previous marked position" +msgstr "Mene edelliseen merkkiin" + +# +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect) +msgid "Just scale" +msgstr "Aina kokoruutu" + +msgid "Keep service" +msgstr "" + +msgid "Kernel version: " +msgstr "Kernelin versio:" + +msgid "Keyboard" +msgstr "Näppäimistö" + +# +msgid "Keyboard map" +msgstr "Näppäinasettelu" + +# +msgid "Keyboard setup" +msgstr "Näppäimistön asetukset" + +# +msgid "LAN adapter" +msgstr "Verkkosovitin" + +msgid "LAN connection" +msgstr "LAN-yhteys" + +# +msgid "LNB" +msgstr "LNB" + +# +msgid "Language" +msgstr "Kielivalinta" + +# +msgid "Language selection" +msgstr "Kielivalinta" + +# +msgid "Last config" +msgstr "Aikais.arvot" + +# +msgid "Last speed" +msgstr "Aikaisempi nopeus" + +msgid "Last upgrade: " +msgstr "Viimeisin päivitys:" + +msgid "Latest Commits" +msgstr "" + +# +msgid "Latitude" +msgstr "Leveysaste" + +# +msgid "Latvian" +msgstr "Latvia" + +# +msgid "Leave DVD player?" +msgstr "Poistutaanko DVD-soittimesta?" + +# +msgid "Left" +msgstr "Vasen" + +msgid "Left from servicename" +msgstr "Vasemmalla kanavan nimestä" + +msgid "Leisure hobbies" +msgstr "Vapaa-ajan harrastukset" + +#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term. +msgid "Letterbox" +msgstr "Letterbox" + +msgid "Letterbox zoom" +msgstr "Letterbox zoomaus" + +# +msgid "Limit character set for recording filenames" +msgstr "Rajoitettu merkistö tallenteiden nimissä" + +# +msgid "Limit east" +msgstr "Raja itään" + +msgid "Limit the characters that can be used in recording filenames to (7 bit) ascii. This ensures compatibility with operating systems or file systems with limited character sets." +msgstr "Rajoita mahdollisia nauhoitusten tiedostonimissä käytettäviä merkkejä (7 bit ascii). Tämä varmistaa yhteensopivuuden rajoitetulla merkistöllä olevien käyttöjärjestelmien tai tiedostojärjestelmien kanssa." + +# +msgid "Limit west" +msgstr "Raja länteen" + +msgid "Limits cancelled" +msgstr "Raja-arvot pois" + +msgid "Limits enabled" +msgstr "Raja-arvott päällä" + +# +msgid "Limits off" +msgstr "Rajat pois" + +# +msgid "Limits on" +msgstr "Rajat päälle" + +# +msgid "Link quality:" +msgstr "Yhteyden laatu:" + +# +msgid "Link:" +msgstr "Tila:" + +# +msgid "Linked titles with a DVD menu" +msgstr "Linkitetyt tallenteet ja DVD-valikko" + +# +msgid "List EPG functions..." +msgstr "EPG-näkymät..." + +msgid "List available networks" +msgstr "Näytä verkot" + +msgid "List mode" +msgstr "Luettelotila" + +# +msgid "List of storage devices" +msgstr "Luettelo tallennusvälineistä" + +msgid "List type" +msgstr "Luettelon tyyppi" + +#, python-format +msgid "List version %d, found %d channel" +msgid_plural "List version %d, found %d channels" +msgstr[0] "Luetteloversio %d, löytyi %d kanava" +msgstr[1] "Luetteloversio %d, löytyi %d kanavaa" + +# +msgid "Listen to the radio..." +msgstr "Kuuntele radiota..." + +msgid "Lists reloaded!" +msgstr "" + +# +msgid "Lithuanian" +msgstr "Liettua" + +# +msgid "Load" +msgstr "Lataa" + +# +msgid "Load Length of Movies in Movielist" +msgstr "Lataa tallenteiden pituus tallenneluetteloon" + +# +msgid "Load length of movies in movie list" +msgstr "Lataa tallenteiden pituus tallenneluettelossa" + +# +msgid "Load playlist" +msgstr "Lataa soittolista" + +# +msgid "Local network" +msgstr "Lähiverkko" + +# +msgid "Location" +msgstr "Hakemisto" + +msgid "Location for instant recordings" +msgstr "Tallennuksien hakemisto" + +msgid "Lock ratio" +msgstr "Lukitse suhde" + +# +msgid "Lock:" +msgstr "Lukit." + +# +msgid "Log results to harddisk" +msgstr "Luo lokitiedosto kiintolevylle" + +msgid "Long filenames" +msgstr "Pitkät tiedostonimet" + +# +msgid "Long key press" +msgstr "Pitkä näppäimen painallus" + +# +msgid "Longitude" +msgstr "Pituusaste" + +msgid "Loop through to" +msgstr "" + +msgid "Luxembourgish" +msgstr "Luxemburg" + +# +msgid "MMC card" +msgstr "MMC-kortti" + +# +msgid "MORE" +msgstr "LISÄÄ" + +# +msgid "Main menu" +msgstr "Päävalikko" + +msgid "Maintain old EPG data for" +msgstr "Säilytä vanhaa EPG-tietoa" + +# +msgid "Make this mark an 'in' point" +msgstr "Tee tästä merkistä aloituspiste" + +# +msgid "Make this mark an 'out' point" +msgstr "Tee tästä merkistä lopetuspiste" + +# +msgid "Make this mark just a mark" +msgstr "Tee tästä tavallinen merkki" + +msgid "Manage extensions" +msgstr "Hallitse laajennuksia" + +# +msgid "Manage your receiver's software" +msgstr "Hallitse vastaanottimen ohjelmistoa" + +msgid "Manual" +msgstr "" + +# +msgid "Manual Scan" +msgstr "Manuaalihaku" + +msgid "Manual configuration" +msgstr "Manuaalinen määritys" + +# +msgid "Manual scan" +msgstr "Manuaalihaku" + +# +msgid "Manual transponder" +msgstr "Manuaalinen lähetin" + +# +msgid "Manufacturer" +msgstr "Valmistaja" + +# +msgid "Margin after recording (minutes)" +msgstr "Lisäaika tallenteen loppuun (minuuttia)" + +# +msgid "Margin before recording (minutes)" +msgstr "Lisäaika tallenteen alkuun (minuuttia)" + +msgid "Max memory positions" +msgstr "" + +msgid "Max. bitrate: " +msgstr "Maks. bittimäärä: " + +msgid "Media player" +msgstr "Mediasoitin" + +msgid "Media scanner" +msgstr "Mediaskanneri" + +# +msgid "Medium is not a writeable DVD!" +msgstr "Levy ei ole kirjoitettava DVD!" + +# +msgid "Medium is not empty!" +msgstr "Levy ei ole tyhjä!" + +msgid "Memory" +msgstr "Muisti" + +msgid "Memory index" +msgstr "Muisti-indeksi" + +# +msgid "Menu" +msgstr "Valikko" + +# +msgid "Message" +msgstr "Viesti" + +# +msgid "Message..." +msgstr "Viesti..." + +#, python-format +msgid "Minimum age %d years" +msgstr "Alaikäraja %d vuotta" + +msgid "Minimum send interval" +msgstr "Minimi lähetysväli" + +msgid "Missing " +msgstr "Puuttuu" + +# +msgctxt "Satellite configuration mode" +msgid "Mode" +msgstr "Tila" + +# +msgctxt "Video output mode" +msgid "Mode" +msgstr "Tila" + +# +msgid "Model: " +msgstr "Malli: " + +# +msgid "Modulation" +msgstr "Modulaatio" + +# +msgid "Modulator" +msgstr "Modulaattori" + +# +msgid "Mon" +msgstr "Ma" + +# +msgid "Mon-Fri" +msgstr "Ma-Pe" + +# +msgid "Monday" +msgstr "Maanantai" + +# +msgid "Mosquito noise reduction" +msgstr "Mosquito-kohinanvaimennus" + +msgid "Mount" +msgstr "Liitä" + +msgid "Move" +msgstr "Siirrä" + +# +msgid "Move PiP to main picture" +msgstr "Siirrä PiP-kuva pääkuvaksi" + +# +msgid "Move Picture in Picture" +msgstr "Siirrä PiP-kuvaa" + +# +msgid "Move east" +msgstr "Liikuta itään" + +msgid "Move to other directory" +msgstr "Siirrä toiseen hakemistoon" + +msgid "Move to position X" +msgstr "Käännä paikkaan X" + +# +msgid "Move west" +msgstr "Liikuta länteen" + +msgid "Moved to position 0" +msgstr "Käännä paikkaan 0" + +msgid "Moved to position at index" +msgstr "Käännettiin sijaintiin luettelossa" + +msgid "Movement" +msgstr "Liike" + +msgid "Movie List Configuration" +msgstr "Tallenneluettelon asetukset" + +msgid "Movie Selection" +msgstr "Tallenteen valinta" + +msgid "Movie list configuration" +msgstr "Tallenneluettelon asetukset" + +msgid "Movie location" +msgstr "Tallennushakemisto" + +msgid "Movie selection" +msgstr "Tallenteen valinta" + +msgid "Movie/Drama" +msgstr "Elokuva/Draama" + +# +msgid "Movielist menu" +msgstr "Tallenneluettelon valikko" + +msgid "Moving" +msgstr "Kääntyy" + +msgid "Moving east ..." +msgstr "Kääntyy itään ..." + +msgid "Moving to position" +msgstr "Kääntyy sijaintiin" + +msgid "Moving west ..." +msgstr "Kääntyy länteen ..." + +# +msgid "Multi EPG" +msgstr "Kanavaopas" + +msgid "Multi-EPG bouquet selection" +msgstr "Multi-EPG suosikkilistan valinta" + +msgid "Multimedia" +msgstr "Multimedia" + +# +msgid "Multiple service support" +msgstr "Usean kanavan tuki" + +msgid "Multiplex" +msgstr "Multipleksi" + +# +msgid "Multisat" +msgstr "Usea satelliitti" + +msgid "Multisat all select" +msgstr "" + +msgid "Music/Ballet/Dance" +msgstr "Musiikki/Baletti/Tanssi" + +# +msgid "Mute" +msgstr "Mykistä" + +# +msgid "N/A" +msgstr "Ei saatavilla" + +# +msgid "NEXT" +msgstr "SEURAAVA" + +msgid "NFI image flashing" +msgstr "NFI-tiedoston asennus" + +# +msgid "NFI image flashing completed. Press Yellow to Reboot!" +msgstr "NFI-päivityksen asennus on suoritettu. Käynnistä uudelleen keltaisella näppäimellä!" + +msgid "NIM" +msgstr "NIM" + +# +msgid "NOW" +msgstr "NYT" + +# +msgid "NTSC" +msgstr "NTSC" + +# +msgid "Name" +msgstr "Nimi" + +# +msgid "Nameserver" +msgstr "Nimipalvelin" + +# +#, python-format +msgid "Nameserver %d" +msgstr "Nimipalvelin %d" + +# +msgid "Nameserver settings" +msgstr "Nimipalvelimen asetukset" + +# +msgid "Nameserver setup" +msgstr "Nimipalvelimen asetukset" + +msgid "Namespace" +msgstr "Nimiavaruus" + +# +msgid "Netmask" +msgstr "Verkkomaski" + +# +msgid "Network" +msgstr "Verkko" + +msgid "Network ID" +msgstr "Verkon ID" + +# +msgid "Network configuration..." +msgstr "Verkon asetukset..." + +# +msgid "Network mount" +msgstr "Verkkojaon nimi" + +# +#, python-format +msgid "Network mount %s" +msgstr "Verkkojaon nimi %s" + +msgid "Network name (SSID)" +msgstr "Verkon nimi (SSID)" + +# +msgid "Network scan" +msgstr "Verkkohaku" + +# +msgid "Network setup" +msgstr "Lähiverkon asetukset" + +# +msgid "Network test" +msgstr "Lähiverkon testi" + +# +msgid "Network test..." +msgstr "Lähiverkon testi..." + +msgid "Network test: " +msgstr "Lähiverkon testi: " + +# +msgid "Network wizard" +msgstr "Ohjattu verkon asennus" + +# +msgid "Network:" +msgstr "Verkko:" + +# +msgid "New" +msgstr "Uusi" + +msgid "New PIN" +msgstr "Uusi PIN" + +# +msgid "New version:" +msgstr "Uusi versio:" + +msgid "News Current Affairs" +msgstr "Uutiset ajankohtaisohjelmat" + +msgctxt "button label, 'next screen'" +msgid "Next" +msgstr "Seuraava" + +msgctxt "now/next: 'next' event label" +msgid "Next" +msgstr "Seuraavaksi" + +# +msgid "No" +msgstr "Ei" + +# +msgid "No (supported) DVDROM found!" +msgstr "DVDROM-asemaa ei löytynyt!" + +msgid "No Connection" +msgstr "Ei yhteyttä" + +# +msgid "No HDD found or HDD not initialized!" +msgstr "" +"Kiintolevyä ei löydy tai sitä ei\n" +"ole alustettu." + +# +msgid "No backup needed" +msgstr "Varmuuskopiota ei tarvita" + +msgid "No cable tuner found!" +msgstr "Kaapeliviritintä ei löytynyt!" + +# +msgid "" +"No data on transponder!\n" +"(Timeout reading PAT)" +msgstr "" +"Lähettimessä ei dataa!\n" +"(Aikaraja ylittyi luettaessa PAT)" + +msgid "No delay" +msgstr "Ei viivettä" + +# +msgid "No description available." +msgstr "Kuvausta ei ole saatavilla." + +# +msgid "No details for this image file" +msgstr "Ei tietoja tästä päivityksestä" + +# +msgid "No displayable files on this medium found!" +msgstr "Tiedostoja ei löytynyt!" + +# +msgid "No event info found, recording indefinitely." +msgstr "" +"Lähetyksessä ei ole tietoa ohjelman loppumisajasta.\n" +"Ohjelma tallennetaan jatkuvana tallennuksena." + +msgid "No fast winding possible yet.. but you can use the number buttons to skip forward/backward!" +msgstr "Pikakelaus ei ole vielä mahdollista... mutta voit hyppiä eteen/taakse numeronäppäimien avulla!" + +msgid "No free index available" +msgstr "Ei vapaata indeksiä" + +# +msgid "No free tuner!" +msgstr "Kaikki virittimet ovat jo käytössä!" + +msgid "No network connection available." +msgstr "Ei verkkoyhteyttä." + +# +msgid "No networks found" +msgstr "Verkkoja ei löytynyt" + +# +msgid "No new plugins found" +msgstr "Uusia lisäosia ei löytynyt" + +# +msgid "No positioner capable frontend found." +msgstr "" +"Laitteessa ei ole satelliittiviritintä,\n" +"joka hallitsisi kääntömoottorin ohjauksen." + +msgid "No satellites configured. Plese check your tuner setup." +msgstr "" + +# +msgid "No service" +msgstr "Ei kanavaa" + +# +msgid "No services/providers selected" +msgstr "Palveluja/palveluntarjoajia ei valittu" + +# +msgid "No standby" +msgstr "Ei valmiustilaa" + +msgid "No suitable sat tuner found!" +msgstr "Käyttöön sopivaa viritintä ei löytynyt!" + +# +msgid "No tags are set on these movies." +msgstr "Näissä tallenteissa ei ole avainsanoja." + +# +msgid "No timeout" +msgstr "Ei aikavalvontaa" + +msgid "No to all" +msgstr "Ei kaikkiin" + +msgid "No transparency" +msgstr "Ei läpinäkyvä" + +# +msgid "No tuner is configured for use with a diseqc positioner!" +msgstr "" +"Virittimiä ei ole asetettu käyttämään\n" +"DiSEqC-ohjausta." + +# +msgid "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Viritintä ei ole määritetty!\n" +"Määritä virittimen asetukset ennen kanavahaun aloittamista." + +msgid "No updates available" +msgstr "Ei päivityksiä saatavilla" + +msgid "No updates available. Please try again later." +msgstr "Päivityksiä ei ole nyt saatavilla. Yritä myöhemmin uudestaan." + +# +msgid "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" +msgstr "" +"Kanavan lapsilukon tunnuslukua ei löydy!\n" +"Haluatko määrittää kanavan tunnusluvun?\n" +"Jos vastaat 'Ei', kanavaa ei suojata tunnusluvulla." + +# +msgid "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" +msgstr "" +"Asetuksien tunnuslukua ei löydy!\n" +"Haluatko määrittää asetuksien tunnusluvun?\n" +"Jos vastaat 'Ei', asetuksia ei suojata tunnusluvulla." + +msgid "No wireless networks found! Searching..." +msgstr "WLAN-verkkoja ei löytynyt! Etsitään..." + +# +msgid "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." +msgstr "" +"Toimivaa verkkokorttia ei löydy.\n" +"Tarkista, että olet kytkennyt verkkokaapelin ja lähiverkon asetukset ovat oikein." + +# +msgid "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." +msgstr "" +"Toimivaa langatonta verkkoliitäntää ei löydy.\n" +"Tarkista, että olet kytkenyt yhteensopivan WLAN-laitteen ja verkko on määritelty oikein." + +# +msgid "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." +msgstr "" +"Toimivaa langattoman verkon yhteyttä ei löydy.\n" +"Tarkista, että olet kytkenyt yhteensopivan WLAN-laitteen tai kytke lähiverkko päälle." + +# +msgid "No, but restart from begin" +msgstr "Ei, aloita alusta" + +# +msgid "No, do nothing." +msgstr "Ei, älä tee mitään." + +msgid "No, just start my receiver" +msgstr "Ei, Käynnistä vain vastaanottimeni" + +msgid "No, never" +msgstr "Ei koskaan" + +# +msgid "None" +msgstr "Ei mitään" + +# +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right) +msgid "Nonlinear" +msgstr "Epälineaarinen" + +msgid "Normal mode" +msgstr "Normaalitila" + +# +msgid "North" +msgstr "Pohjoinen" + +# +msgid "Norwegian" +msgstr "Norja" + +msgid "Not associated" +msgstr "Ei liitetty" + +msgid "Not configured" +msgstr "" + +# +#, python-format +msgid "Not enough disk space. Please free up some disk space and try again. (%d MB required, %d MB available)" +msgstr "Ei riittävästi levytilaa. Vapauta levytilaa ja yritä uudelleen. (%d Mt tarvitaan, %d Mt vapaana)" + +msgid "Nothing connected" +msgstr "" + +# +msgid "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Ei ole mitään haettavaa!\n" +"Määritä virittimen asetukset ennen kanavahakua." + +msgctxt "now/next: 'now' event label" +msgid "Now" +msgstr "Nyt" + +# +msgid "Now playing" +msgstr "Toistetaan" + +# +msgid "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." +msgstr "" +"Säädä kontrastisäädöllä tausta mahdollisimman valkoiseksi.\n" +"\n" +"Varmista, että näet yhä kahden kirkkaimman sävyn (1 ja 2) eron.\n" +"\n" +"Kun olet tyytyväinen tulokseen, paina OK." + +# +msgid "OK" +msgstr "OK" + +# +msgid "OK, guide me through the upgrade process" +msgstr "OK, opasta minua päivityksessä" + +msgid "ONID" +msgstr "ONID" + +msgid "OSD name request" +msgstr "OSD nimen pyyntö" + +# +msgid "OSD settings" +msgstr "Valikkojen asetukset" + +msgid "OSD transparency" +msgstr "Valikon läpinäkyvyys" + +# +msgid "Off" +msgstr "Pois" + +msgid "Offline decode delay (ms)" +msgstr "Offline-purkamisen viive (ms)" + +msgid "Ok" +msgstr "Ok" + +# +msgid "On" +msgstr "Päällä" + +msgid "On end of movie" +msgstr "Tallenteen lopussa" + +msgid "On end of movie (as menu)" +msgstr "" + +# +msgid "One" +msgstr "Yksi" + +msgid "Only extensions." +msgstr "Vain laajennukset." + +# +msgid "Only free scan" +msgstr "Hae vain salaamattomat" + +# +msgid "Open service list" +msgstr "Avaa kanavalista" + +# +msgid "Open the movie list" +msgstr "Avaa tallenneluettelo" + +msgid "Orbital position" +msgstr "Sijainti" + +msgid "Original" +msgstr "Alkuperäinen" + +msgid "Other" +msgstr "Muu" + +msgid "Output" +msgstr "Ulostulo" + +msgid "Overwrite configuration files during software upgrade?" +msgstr "Korvaa asetustiedostot ohjelmistopäivityksen aikana?" + +msgid "Overwrite configuration files?" +msgstr "Korvaa asetustiedostot?" + +# +msgid "PAL" +msgstr "PAL" + +msgid "PCR PID" +msgstr "PCR PID" + +# +msgid "PIDs" +msgstr "PIDit" + +# +msgid "PIN code needed" +msgstr "Tarvitaan PIN tunnusluku" + +msgid "PLP ID" +msgstr "PLP ID" + +msgid "PMT PID" +msgstr "PMT PID" + +# +msgid "Package list update" +msgstr "Ohjelmapakettiluettelon päivitys" + +# +msgid "Packet management" +msgstr "Ohjelmapakettien hallinta" + +# +msgid "Packet manager" +msgstr "Ohjelmapakettien hallinta" + +#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term +msgid "Pan&scan" +msgstr "Pan&Scan" + +# +msgid "Parent directory" +msgstr "Päähakemisto" + +# +msgid "Parental control" +msgstr "Lapsilukko" + +# +msgid "Parental control services editor" +msgstr "Lapsilukon kanavaeditori" + +# +msgid "Parental control setup" +msgstr "Lapsilukon asetukset" + +# +msgid "Parental control type" +msgstr "Lapsilukon tyyppi" + +# +msgid "Password" +msgstr "Salasana" + +# +msgid "Pause" +msgstr "Tauko" + +# +msgid "Pause movie at end" +msgstr "Pysähdy tallenteen loppuun" + +# +msgid "Pause playback" +msgstr "Keskeytä toisto" + +msgid "Pauze/Continue playback" +msgstr "" + +msgid "Percentage left" +msgstr "Prosentti vasemmalle" + +msgid "Percentage right" +msgstr "Prosentti Oikealle" + +msgid "Permanently delete all recordings in the trash can?" +msgstr "Poista kaikki roskakorin tallenteet pysyvästi?" + +msgid "Permanently remove all deleted items" +msgstr "Poista poistetut pysyvästi" + +msgid "Persian" +msgstr "Persia" + +msgid "Phone number" +msgstr "Puhelinnumero" + +# +msgid "PiP setup" +msgstr "PiP-kuvan asetukset" + +msgid "Picon" +msgstr "Kanavalogo" + +msgid "Picon and service name" +msgstr "Kanavalogo ja kanavan nimi" + +# +msgid "Picture player" +msgstr "Kuvien katselu" + +#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term. +msgid "Pillarbox" +msgstr "Pillarbox" + +msgid "Pilot" +msgstr "Pilot" + +# +msgid "Play" +msgstr "Jatka toistoa" + +# +msgid "Play DVD" +msgstr "Toista DVD" + +msgid "Play audio in background" +msgstr "Toista ääni taustalla" + +# +msgid "Play audio-CD..." +msgstr "Toista ääni-CD..." + +msgid "Play back media files" +msgstr "Toista audio/video tiedostoja" + +# +msgid "Play entry" +msgstr "Toista" + +# +msgid "Play from next mark or playlist entry" +msgstr "Toista seuraavasta merkistä tai valinnasta" + +# +msgid "Play from previous mark or playlist entry" +msgstr "Toista edellisestä merkistä tai valinnasta" + +# +msgid "Play music..." +msgstr "Soita musiikkia..." + +msgid "Play next" +msgstr "Toista seuraava" + +msgid "Play next (return to movie list)" +msgstr "Soita seuraava (palaa tallenneluetteloon)" + +msgid "Play next (return to previous service)" +msgstr "Soita seuraava (palaa aiemmalle kanavalle)" + +msgid "Play previous" +msgstr "Toista edellinen" + +# +msgid "Play recorded movies..." +msgstr "Toista tallenteet..." + +msgid "Please add titles to the compilation." +msgstr "Lisää tallenteita kokoelmaan." + +# +msgid "Please change recording endtime" +msgstr "Aseta tallennuksen päättymisaika" + +# +msgid "Please check your network settings!" +msgstr "Tarkista verkkoasetukset!" + +# +msgid "Please choose an extension..." +msgstr "Valitse laajennus..." + +# +msgid "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Määritä ja tarkista nimipalvelimien tiedot.\n" +"Paina OK-näppäintä kun olet valmis." + +# +msgid "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Määritä lähiverkkoyhteys syöttämällä tarvittavat arvot.\n" +"Paina OK-näppäintä kun olet valmis." + +msgid "Please connect your receiver to the internet" +msgstr "Kytke vastaanottimesi internettiin" + +# +msgid "Please do not change any values unless you know what you are doing!" +msgstr "Älä muuta arvoja, ellet tiedä mitä teet!" + +# +msgid "Please enter a name for the new bouquet" +msgstr "Anna uuden suosikkilistan nimi" + +# +msgid "Please enter a name for the new marker" +msgstr "Anna uuden väliotsikon nimi" + +# +msgid "Please enter a new filename" +msgstr "Syötä uusi nimi" + +# +msgid "Please enter filename (empty = use current date)" +msgstr "Syötä tiedoston nimi (tyhjä = nykyinen päiväys)" + +# +msgid "Please enter name of the new directory" +msgstr "Syötä uuden hakemiston nimi" + +# +msgid "Please enter new name:" +msgstr "Syötä uusi nimi:" + +# +msgid "Please enter the correct pin code" +msgstr "Syötä oikea tunnusluku" + +msgid "Please enter the old PIN code" +msgstr "Syötä vanha PIN-koodi" + +# +msgid "Please follow the instructions on the TV" +msgstr "Seuraa ruudulla näkyviä ohjeita" + +# +msgid "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." +msgstr "Huomaa, että oletushakemisto on käytössä, koska aikaisemmin valittuun levyyn ei saatu yhteyttä." + +# +msgid "Please press OK to continue." +msgstr "Paina OK jatkaaksesi." + +msgid "Please select a default EPG type..." +msgstr "Valitse oletus ohjelmaoppaan tyyppi..." + +# +msgid "Please select a playlist to delete..." +msgstr "Valitse poistettava soittolista..." + +# +msgid "Please select a playlist..." +msgstr "Valitse soittolista..." + +# +msgid "Please select a sub service..." +msgstr "Valitse alipalvelu..." + +# +msgid "Please select a subservice to record..." +msgstr "Valitse tallennettava alipalvelu..." + +# +msgid "Please select a subservice..." +msgstr "Valitse alipalvelu..." + +msgid "Please select an NFI file and press green key to flash!" +msgstr "Valitse NFI-tiedosto ja aloita päivitys vihreällä näppäimellä." + +# +msgid "Please select medium to be scanned" +msgstr "Valitse lähde josta haetaan" + +# +msgid "Please select medium to use as backup location" +msgstr "Valitse tallennuspaikka varmuuskopiolle" + +# +msgid "Please select tag to filter..." +msgstr "Valitse suodatettava avainsana..." + +# +msgid "Please select the movie path..." +msgstr "Valitse tallennehakemisto..." + +# +msgid "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Valitse verkkosovitin jota haluat käyttää lähiverkkoyhteyteen.\n" +"\n" +"Jatka painamalla OK-näppäintä." + +msgid "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Valitse WLAN-verkko johon haluat kytkeytyä.\n" +"\n" +"Jatka painamalla OK-näppäintä." + +# +# Ohjatun asennuksen (Startup Wizard) nelosruudun ohjeteksti +msgid "Please set up tuner A" +msgstr "Määritä virittimen A asetukset:" + +# +# Ohjatun asennuksen (Startup Wizard) nelosruudun ohjeteksti +msgid "Please set up tuner B" +msgstr "Määritä virittimen B asetukset:" + +# +msgid "Please set up tuner C" +msgstr "Määritä virittimen C asetukset:" + +# +msgid "Please set up tuner D" +msgstr "Määritä virittimen D asetukset:" + +# +msgid "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." +msgstr "" +"Siirrä PiP-kuvaa nuolinapeilla.\n" +"Muuta ikkunan kokoa Bouquet +/- napeilla.\n" +"Palaa TV-tilaan OK-näppäimellä tai hylkää siirto EXIT-näppäimellä." + +# +msgid "Please use the UP and DOWN keys to select your language. Afterwards press the OK button." +msgstr "Valitse kieli ylös/alas näppäimillä ja paina OK-näppäintä." + +msgid "Please wait" +msgstr "" + +# +msgid "Please wait (downloading channel list)" +msgstr "Kanavaluetteloa ladataan. Odota..." + +# +msgid "Please wait (downloading softcam)" +msgstr "Softcamia ladataan. Odota..." + +# +msgid "Please wait (updating packages)" +msgstr "Paketteja ladataan. Odota..." + +# +msgid "Please wait for activation of your network configuration..." +msgstr "Odota, verkkomääritykset aktivoidaan..." + +# +msgid "Please wait while scanning is in progress..." +msgstr "Odota, haku on käynnissä..." + +# +msgid "Please wait while we configure your network..." +msgstr "Odota, verkkoa määritetään..." + +# +msgid "Please wait while we prepare your network interfaces..." +msgstr "Odota, valmistelemme verkkosovittimia..." + +# +msgid "Please wait while we test your network..." +msgstr "Odota, testaamme verkkoa..." + +# +msgid "Please wait while your network is restarting..." +msgstr "Odota, verkko käynnistetään uudelleen..." + +# +msgid "Please wait..." +msgstr "Odota..." + +# +msgid "Please wait... Loading list..." +msgstr "Odota... Luetteloa ladataan..." + +# +msgid "Plugin browser" +msgstr "Asennetut Plugin-lisäosat" + +# +msgid "Plugin manager activity information" +msgstr "Lisäosien hallinnan asennustiedot" + +# +msgid "Plugin manager help" +msgstr "Lisäosien hallinan ohje" + +# +msgid "Plugins" +msgstr "Plugin-lisäosat" + +msgid "Polarisation" +msgstr "Polarisaatio" + +msgid "Polarisation:" +msgstr "Polarisaatio:" + +# +msgid "Polarization" +msgstr "Polarisaatio" + +# +msgid "Polish" +msgstr "Puola" + +# +msgid "Port A" +msgstr "Portti A" + +# +msgid "Port B" +msgstr "Portti B" + +# +msgid "Port C" +msgstr "Portti C" + +# +msgid "Port D" +msgstr "Portti D" + +# +msgid "Portuguese" +msgstr "Portugali" + +msgid "Position of completed timers in timerlist" +msgstr "Tallennettujen ajastuksien paikka ajastusluettelossa" + +msgid "Position stored at index" +msgstr "Paikka tallennettu luetteloon" + +# +msgid "Positioner" +msgstr "Kääntömoottori" + +msgid "Positioner (selecting satellites)" +msgstr "" + +# +msgid "Positioner Setup" +msgstr "Kääntömoottorin asetukset" + +# +msgid "Positioner setup" +msgstr "Kääntömoottorin asetukset" + +# +msgid "Power threshold in mA" +msgstr "Tunnistusvirta mA" + +# +msgid "Predefined transponder" +msgstr "Ennalta määritelty lähetin" + +msgid "Prefer AC3 track" +msgstr "Suosi AC3 ääniraitaa" + +msgid "Prefer AC3+ track" +msgstr "" + +msgid "Prefer audio track stored by service" +msgstr "Suosi kanavakohtaista ääniasetusta" + +msgid "Prefer graphical DVB subtitles" +msgstr "Suosi DVB-tekstitystä" + +msgid "Prefer subtitles for hearing impaired" +msgstr "Suosi kuulovammaisten tekstitystä" + +msgid "Prefer subtitles stored by service" +msgstr "Suosi kanavakohtaisesti tallennettua tekstitystä" + +msgid "Preferred tuner" +msgstr "Ensisijainen viritin" + +msgid "Preferred tuner for recordings" +msgstr "" + +msgid "Prepare another USB stick for image flashing" +msgstr "Alusta toinen USB-muistitikku päivitystä varten" + +# +msgid "Preparing... Please wait" +msgstr "Valmistellaan... Odota hetki!" + +msgid "Press '0' to toggle PiP mode" +msgstr "" + +msgid "Press INFO on your remote control for additional information." +msgstr "Katso lisätietoja painamalla INFO-näppäintä." + +msgid "Press MENU on your remote control for additional options." +msgstr "Avaa lisäasetukset painamalla MENU-näppäintä." + +# +msgid "Press OK on your remote control to continue." +msgstr "Jatka painamalla OK-näppäintä." + +# +msgid "Press OK to activate the selected skin." +msgstr "Ota valittu teema käyttöön painamalla OK." + +# +msgid "Press OK to activate the settings." +msgstr "Ota käyttöön painamalla OK." + +# +msgid "Press OK to edit the settings." +msgstr "Muokkaa painamalla OK." + +# +#, python-format +msgid "Press OK to get further details for %s" +msgstr "Katso %s lisätietoja OK-näppäimellä" + +# +msgid "Press OK to scan" +msgstr "Aloita haku painamalla OK" + +# +msgid "Press OK to select a provider." +msgstr "Valitse palveluntarjoaja painamalla OK." + +msgid "Press OK to select satellites" +msgstr "" + +# +msgid "Press OK to select/deselect a CAId." +msgstr "Valitse/poista CAId:t OK-näppäimellä" + +# +msgid "Press OK to start the scan" +msgstr "Aloita haku painamalla OK" + +msgid "Press OK to toggle the selection" +msgstr "" + +# +msgid "Press OK to toggle the selection." +msgstr "Muuta valintaa OK-näppäimellä." + +# +msgid "Press yellow to set this interface as default interface." +msgstr "Määritä tämä liitäntä oletukseksi keltaisella näppäimellä." + +msgctxt "button label, 'previous screen'" +msgid "Prev" +msgstr "Edellinen" + +msgid "Preview" +msgstr "Esikatselu" + +# +msgid "Preview menu" +msgstr "Esikatsele valikkoa" + +msgid "Preview selected channel" +msgstr "Esikatsele valittua kanavaa" + +# +msgid "Primary DNS" +msgstr "Ensisijainen DNS" + +# +msgid "Priority" +msgstr "Prioriteetti" + +# +msgid "Process" +msgstr "Suorita" + +msgid "Progress" +msgstr "Eteneminen" + +msgid "Progress bar left" +msgstr "Etenemispalkki vasen" + +msgid "Progress bar right" +msgstr "Etenemispalkki oikea" + +# +msgid "Properties of current title" +msgstr "Omaisuudet" + +# +msgid "Protect services" +msgstr "Suojaa kanavat" + +# +msgid "Protect setup" +msgstr "Suojaa asetukset" + +# +msgid "Provider" +msgstr "Palveluntarjoaja" + +# +msgid "Provider to scan" +msgstr "Hae palveluntarjoajalta" + +# +msgid "Providers" +msgstr "Palveluntarjoajat" + +msgid "Put TV in standby" +msgstr "Laita TV valmiustilaan" + +msgid "Put receiver in standby" +msgstr "Laita vastaanotin valmiustilaan" + +msgid "Python frontend for /tmp/mmi.socket" +msgstr "Python-liittymä /tmp/mmi.socket:ille" + +# +msgid "Quick" +msgstr "Nopea" + +# +msgid "Quick zap" +msgstr "Pika kanavanvaihto" + +# +msgid "RF output" +msgstr "RF-ulostulo" + +# +msgid "RGB" +msgstr "RGB" + +msgid "Radio" +msgstr "Radio" + +# +msgid "Ram disk" +msgstr "RAM-levy" + +# +msgid "Random" +msgstr "Satunnainen" + +#, python-format +msgid "Rating defined by broadcaster - %d" +msgstr "Kanavan määrittelemä ikäraja - %d" + +msgid "Rating undefined" +msgstr "Ikärajaa ei määritelty" + +# +msgid "Really close without saving settings?" +msgstr "Haluatko poistua tallentamatta asetuksia?" + +# +msgid "Really delete done timers?" +msgstr "Poistetaanko tallennetut ajastukset?" + +# +msgid "Really exit the subservices quickzap?" +msgstr "Poistu alipalveluiden pika kanavanvaihdosta?" + +# +msgid "Really reboot now?" +msgstr "Haluatko silti käynnistää uudelleen?" + +# +msgid "Really restart now?" +msgstr "Haluatko silti käynnistää uudelleen?" + +# +msgid "Really shutdown now?" +msgstr "Haluatko silti sammuttaa?" + +msgid "Really upgrade the frontprocessor and reboot now?" +msgstr "Päivitetäänkö etuprosessori nyt ja käynnistetään uudelleen?" + +msgid "Really upgrade your settop box and reboot now?" +msgstr "Päivitetäänkö vastaanotin nyt ja käynnistetään uudelleen?" + +# +msgid "Reboot" +msgstr "Käynnistä uudelleen" + +msgid "Rec" +msgstr "Tallenna" + +# +msgid "Reception settings" +msgstr "Virittimen asetukset" + +# +msgid "Record" +msgstr "Tallennus" + +# +#, python-format +msgid "Record time limited due to conflicting timer %s" +msgstr "Ajastusaika rajoitettu, koska ristiriita ajastukseen %s" + +# +msgid "Recorded files..." +msgstr "Tallenteet..." + +# +msgid "Recording" +msgstr "Tallennus" + +msgid "Recording in progress" +msgstr "Tallennus käynnissä" + +msgid "Recording paths" +msgstr "Tallennushakemistot" + +msgid "Recording type" +msgstr "Tallennuksen tyyppi" + +# +msgid "Recording(s) are in progress or coming up in few seconds!" +msgstr "Tallennuksia on käynnissä tai käynnistymässä!" + +# +msgid "Recordings" +msgstr "Tallenteet" + +# +msgid "Recordings always have priority" +msgstr "Tallennukset saavat keskeyttää suoran katselun" + +msgid "Red button..." +msgstr "Punainen näppäin..." + +msgid "Reenter new PIN" +msgstr "Syötä uusi PIN uudelleen" + +# +msgid "Refresh rate" +msgstr "Virkistystaajuus" + +# +msgid "Refresh rate selection." +msgstr "Virkistystaajuuden valinta." + +msgid "Regard deep standby as standby" +msgstr "Käytä virransäätötilaa valmiustilana" + +msgid "Relative" +msgstr "Suhteellinen" + +# +msgid "Reload" +msgstr "Päivitä" + +msgid "Reload black-/white lists" +msgstr "Lataa esto-/sallilistat uudestaan" + +msgid "Reloading bouquets and services..." +msgstr "Ladataan suosikkeja ja kanavia uudelleen..." + +msgid "Remember last service in PiP" +msgstr "" + +msgid "Remember service PIN" +msgstr "Muista kanavan PIN" + +msgid "Remember these settings for each folder" +msgstr "Muista nämä asetuksen jokaiselle hakemistolle" + +msgid "Reminder, you have chosen to save timeshift file." +msgstr "Muistutus, halusit tallentaa ajansiirtotiedoston." + +# +msgid "Remote control type" +msgstr "Kaukosäätimen tyyppi" + +# +msgid "Removal has completed." +msgstr "Poistaminen on valmis." + +# +msgid "Remove" +msgstr "Poista" + +# +msgid "Remove a mark" +msgstr "Poista merkki" + +# +msgid "Remove a nameserver entry" +msgstr "Poista nimipalvelin" + +# +msgid "Remove bookmark" +msgstr "Poista kirjanmerkki" + +msgid "Remove completed timers after (days)" +msgstr "Poista tallennetut ajastukset (päivän jälkeen)" + +# +msgid "Remove currently selected title" +msgstr "Poista valittu otsikko" + +msgid "Remove items from trash can after (days)" +msgstr "Tyhjennä roskakori (päivän jälkeen)" + +# +msgid "Remove plugins" +msgstr "Poista lisäosia" + +# +msgid "Remove title" +msgstr "Poista" + +# +msgid "Removing" +msgstr "Poistetaan" + +# +#, python-format +msgid "Removing directory %s failed. (Maybe not empty.)" +msgstr "Hakemiston %s poisto epäonnistui. (Ei ehkä ole tyhjä.)" + +msgid "Removing partition table" +msgstr "Poistetaan levyn osiotaulu" + +# +msgid "Rename" +msgstr "Muuta nimi" + +# +msgid "Repeat" +msgstr "Toista" + +# +msgid "Repeat type" +msgstr "Ajastus toistetaan" + +# +msgid "Repeating event currently recording... What do you want to do?" +msgstr "Toistuvaa ajastusta tallennetaan... Mitä haluat tehdä?" + +# +msgid "Repeats" +msgstr "Toistokerrat" + +msgid "Require authentication for http streams" +msgstr "" + +msgid "Required medium type:" +msgstr "Tarvittava tallennusmedia:" + +msgid "Rereading partition table" +msgstr "Luetaan levyn osiotaulukko uudelleen" + +msgid "Reserved" +msgstr "Varattu" + +# +msgid "Reset" +msgstr "Käynnistä CA-moduuli uudelleen" + +# +msgid "Reset and renumerate title names" +msgstr "Nollaa ja uudelleenjärjestä otsikot" + +msgid "Reset playback position" +msgstr "Nollaa toiston aloituskohta" + +# +msgid "Reset video enhancement settings to system defaults?" +msgstr "Nollaa kuvanparannus oletusarvoihin?" + +# +msgid "Reset video enhancement settings to your last configuration?" +msgstr "Nollaa kuvanparannus aikaisempiin arvoihin?" + +# +msgid "Resolution" +msgstr "Tarkkuus" + +# +msgid "Restart" +msgstr "Käynnistä uudelleen" + +# +msgid "Restart GUI now?" +msgstr "Käynnistetäänkö käyttöliittymä uudelleen?" + +msgid "Restart enigma" +msgstr "Käynnistä enigma uudelleen" + +# +msgid "Restart network" +msgstr "Käynnistä verkko uudelleen" + +# +msgid "Restart test" +msgstr "Käynnistä testi uudelleen" + +# +msgid "Restart your network connection and interfaces.\n" +msgstr "Käynnistä verkkokortti ja yhteys uudelleen.\n" + +# +msgid "Restore" +msgstr "Palauta" + +# +msgid "Restore backups" +msgstr "Palauta varmistus" + +# +msgid "Restore is running..." +msgstr "Palautus käynnissä..." + +# +msgid "Restore system settings" +msgstr "Palauta asetukset" + +# +msgid "Restoring..." +msgstr "Palautetaan..." + +# +msgid "Resume from last position" +msgstr "Jatka viimeksi katsotusta kohdasta" + +#, python-format +msgid "Resume position at %s" +msgstr "Jatka kohdasta %s" + +# +#. TRANSLATORS: The string "Resuming playback" flashes for a moment +#. TRANSLATORS: at the start of a movie, when the user has selected +#. TRANSLATORS: "Resume from last position" as start behavior. +#. TRANSLATORS: The purpose is to notify the user that the movie starts +#. TRANSLATORS: in the middle somewhere and not from the beginning. +#. TRANSLATORS: (Some translators seem to have interpreted it as a +#. TRANSLATORS: question or a choice, but it is a statement.) +msgid "Resuming playback" +msgstr "Toisto jatkuu viimeksi katsotusta kohdasta" + +# +msgid "Return to movie list" +msgstr "Avaa tallenneluettelo" + +# +msgid "Return to previous service" +msgstr "Palaa TV-kanavalle" + +msgid "Reverse bouquet buttons" +msgstr "" + +msgid "Reverse list" +msgstr "" + +# +msgid "Rewind speeds" +msgstr "Kelausnopeudet taaksepäin" + +msgid "Rewrap teletext subtitles" +msgstr "Uudelleenrivitä teksti-tv tekstitys" + +# +msgid "Right" +msgstr "Oikea" + +msgid "Right from servicename" +msgstr "Oikealla kanavan nimestä" + +msgid "Roll-off" +msgstr "Roll-off" + +msgid "Romanian" +msgstr "Romania" + +msgid "Root directory" +msgstr "Päähakemisto" + +msgid "Rotor step position:" +msgstr "Moottorin askeleen paikka:" + +# +msgid "Rotor turning speed" +msgstr "Moottorin kääntönopeus" + +msgid "Round start time on" +msgstr "Pyöristä aloitusaika" + +# +msgid "Russian" +msgstr "Venäjä" + +# +msgid "S-Video" +msgstr "S-video (Y/C)" + +msgid "SID" +msgstr "SID" + +msgid "SINGLE LAYER DVD" +msgstr "SINGLE LAYER DVD" + +# +msgid "SNR" +msgstr "SNR" + +# +msgid "SNR:" +msgstr "SNR:" + +msgid "SSID:" +msgstr "SSID:" + +# +msgid "Same resolution as skin" +msgstr "Sama resoluutio kuin teemassa" + +# +msgid "Sat" +msgstr "La" + +# +msgid "Satellite" +msgstr "Satelliitti" + +# +msgid "Satellite dish setup" +msgstr "Satelliittilautasen asetukset" + +msgid "Satellite equipment" +msgstr "Satelliittilaitteet" + +# +msgid "Satellite equipment setup" +msgstr "Satelliittilaitteiden asetukset" + +msgid "Satellite longitude:" +msgstr "Satelliitin pituusaste:" + +# +msgid "Satellites" +msgstr "Satelliitit" + +# +msgid "Satfinder" +msgstr "Satelliittietsin" + +msgid "Sats" +msgstr "Sat." + +# +msgid "Saturation" +msgstr "Värikylläisyys" + +# +msgid "Saturday" +msgstr "Lauantai" + +# +msgid "Save" +msgstr "Tallennus" + +# +msgid "Save playlist" +msgstr "Tallenna soittolista" + +# +msgid "Save timeshift file" +msgstr "Tallenna ajansiirtotiedosto" + +msgid "Save timeshift file in movie directory" +msgstr "Tallenna ajansiirtotiedosto tallenne hakemistoon." + +# +msgid "Scaler sharpness" +msgstr "Skaalaimen terävyys" + +# +msgid "Scaling mode" +msgstr "Skaalaustila" + +# +msgid "Scan" +msgstr "Hae " + +# +msgid "Scan " +msgstr "Hae " + +# +#. TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' +#, python-format +msgid "Scan %s" +msgstr "Hae %s" + +# +#. TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' +#, python-format +msgid "Scan %s band" +msgstr "Hae alue %s" + +msgid "Scan additional SR" +msgstr "Hae muita SR:iä" + +# +msgid "Scan files..." +msgstr "Hae tiedostoja..." + +# +msgid "Scan wireless networks" +msgstr "Hae langattomia verkkoja" + +msgid "Scan your network for wireless access points and connect to them using your selected wireless device.\n" +msgstr "Hae WLAN-tukiasemia ja kytkeydy niihin valittua WLAN-laitetta käyttäen.\n" + +#, python-format +msgid "Scanning %s..." +msgstr "Haetaan %s..." + +#. TRANSLATORS: The stb is performing a channel scan, progress percentage is printed in '%d' (and '%%' will show a single '%' symbol) +#, python-format +msgid "Scanning - %d%% completed" +msgid_plural "Scanning - %d%% completed" +msgstr[0] "Haetaan - %d%% haettu" +msgstr[1] "Haetaan - %d%% haettu " + +#, python-format +msgid "Scanning completed, %d channel found" +msgid_plural "Scanning completed, %d channels found" +msgstr[0] "Haku valmis, %d kanava löytyi" +msgstr[1] "Haku valmis, %d kanavaa löytyi" + +msgid "Scanning failed!" +msgstr "Haku epäonnistui" + +msgid "Scanning..." +msgstr "Haetaan..." + +# +msgid "Scans default lamedbs sorted by satellite with a connected dish positioner" +msgstr "Hakee oletuskanavalistan satelliittijärjestyksessä käyttäen kytkettyä antennimoottoria" + +# +msgid "Search east" +msgstr "Etsintä itään" + +# +msgid "Search west" +msgstr "Etsintä länteen" + +msgid "Searching" +msgstr "Etsitään" + +msgid "Searching east ..." +msgstr "Etsitään itään ..." + +# +msgid "Searching for available updates. Please wait..." +msgstr "Haetaan saatavilla olevia päivityksiä. Odota..." + +# +msgid "Searching for new installed or removed packages. Please wait..." +msgstr "Etsitään asennettuja tai poistettuja ohjelmapaketteja. Odota..." + +msgid "Searching west ..." +msgstr "Etsitään länteen ..." + +msgid "Second cable of motorized LNB" +msgstr "" + +# +msgid "Secondary DNS" +msgstr "Toissijainen DNS" + +# +msgid "Seek" +msgstr "Etsi" + +# +msgid "Seek backward" +msgstr "Siirry taaksepäin" + +# +msgid "Seek backward (enter time)" +msgstr "Siirry taaksepäin (syötä aika)" + +# +msgid "Seek forward" +msgstr "Siirry eteenpäin" + +# +msgid "Seek forward (enter time)" +msgstr "Siirry eteenpäin (syötä aika)" + +# +msgid "Select" +msgstr "Valitse" + +# +msgid "Select CAId" +msgstr "Valitse CAId" + +# +msgid "Select HDD" +msgstr "Valitse kiintolevy" + +# +msgid "Select a bouquet" +msgstr "Tallennetut ohjelmat" + +# +msgid "Select a movie" +msgstr "Tallennetut ohjelmat" + +# +msgid "Select a network adapter" +msgstr "Valitse verkkosovitin" + +# +msgid "Select a skin" +msgstr "Valitse teema" + +# +msgid "Select a tuner" +msgstr "Valitse viritin" + +# +msgid "Select a wireless network" +msgstr "Valitse WLAN-verkko" + +msgid "Select action" +msgstr "" + +#, python-format +msgid "Select action for timer %s:" +msgstr "" + +msgid "Select all" +msgstr "" + +msgid "Select an image to be downloaded" +msgstr "Valitse ladattava ohjelmistopäivitys" + +# +msgid "Select audio track" +msgstr "Valitse ääniraita" + +# +msgid "Select backup files" +msgstr "Valitse varmuuskopioitavat tiedostot" + +# +msgid "Select backup location" +msgstr "Valitse varmuuskopion sijainti" + +# +msgid "Select channel to record from" +msgstr "Valitse tallennettava kanava" + +msgid "Select copy destination for:" +msgstr "Valitse kohde kopioinnille:" + +msgid "Select default EPG type..." +msgstr "Valitse oletus ohjelmaoppaan tyyppi" + +msgid "Select desired image from feed list" +msgstr "Valitse haluamasi ohjelmistopäivitys feed-luettelosta" + +msgid "Select destination for:" +msgstr "Valitse kohde:" + +msgid "Select files for backup." +msgstr "Valitse varmistettavat tiedostot." + +# +msgid "Select files/folders to backup" +msgstr "Valitse varmistettavat tiedostot/kansiot" + +msgid "Select input device" +msgstr "Valitse syöttölaite" + +msgid "Select input device." +msgstr "Valitse syöttölaite." + +# +msgid "Select interface" +msgstr "Valitse verkkosovitin" + +# +msgid "Select location" +msgstr "Valitse sijainti" + +# +msgid "Select movie" +msgstr "Valitse tallenne" + +# +msgid "Select provider to add..." +msgstr "Valitse lisättävä palveluntarjoaja..." + +# +msgid "Select refresh rate" +msgstr "Valitse virkistystaajuus" + +msgid "Select satellites" +msgstr "" + +# +msgid "Select service to add..." +msgstr "Valitse lisättävä kanava..." + +msgid "Select sort method:" +msgstr "" + +# +msgid "Select target folder" +msgstr "Valitse kohdehakemisto" + +# +msgid "Select the movie path" +msgstr "Valitse tallennehakemisto" + +# +msgid "Select upgrade source" +msgstr "Valitse päivityslähde" + +# +msgid "Select upgrade source to edit." +msgstr "Valitse muokattava päivityslähde." + +# +msgid "Select video input with up/down buttons" +msgstr "Valitse video-sisäänmeno ylös/alas-näppäimillä" + +# +msgid "Select video mode" +msgstr "Valitse video-tila" + +# +msgid "Select wireless network" +msgstr "Valitse WLAN-verkko" + +msgid "Select your provider, and press OK to start the scan" +msgstr "Valitse palveluntarjoaja ja aloita haku painamalla OK" + +msgid "Selecting satellites 1 (USALS)" +msgstr "" + +msgid "Selecting satellites 2 (USALS)" +msgstr "" + +# +msgid "Send DiSEqC only on satellite change" +msgstr "Lähetä DiSEqC vain satelliitin vaihdossa" + +# +msgid "Separate titles with a main menu" +msgstr "Erilliset tallenteet ja päävalikko" + +# +msgid "Sequence repeat" +msgstr "Jakson toisto" + +# +msgid "Serbian" +msgstr "Serbia" + +# +msgid "Service" +msgstr "Kanava" + +# +msgid "Service has been added to the favourites." +msgstr "Kanava on lisätty suosikkeihin." + +# +msgid "Service has been added to the selected bouquet." +msgstr "Kanava on lisätty valitulle suosikkilistalle." + +# +msgid "Service info" +msgstr "Kanavatiedot" + +# +msgid "" +"Service invalid!\n" +"(Timeout reading PMT)" +msgstr "" +"Valittua kanavaa ei löydy.\n" +"(Aikaraja ylittyi Program Map\n" +"Tablea luettaessa.)" + +msgid "Service name" +msgstr "Kanavan nimi" + +# +msgid "" +"Service not found!\n" +"(SID not found in PAT)" +msgstr "" +"Valittua kanavaa ei löydy.\n" +"(Kanavan Service ID:tä ei löydy\n" +"Program Association Tablesta.)" + +msgid "Service reference" +msgstr "Kanavan viite" + +# +msgid "Service scan" +msgstr "Kanavahaku" + +# +msgid "Service searching" +msgstr "Kanavien haku" + +msgid "Service title mode" +msgstr "Palvelun Otsikkotila" + +# +msgid "" +"Service unavailable!\n" +"Check tuner configuration!" +msgstr "" +"Ei kanavaa,\n" +"tarkista virittimen asetukset" + +# +msgid "Services" +msgstr "Kanavat" + +msgid "Set default" +msgstr "" + +# +msgid "Set end time" +msgstr "Aseta loppumisaika" + +msgid "Set fixed" +msgstr "Aseta kiinteäksi" + +msgid "Set fps for external subtitles" +msgstr "Aseta fps teksti-tv tekstitykselle" + +# +msgid "Set interface as default Interface" +msgstr "Määritä sovitin oletussovittimeksi" + +msgid "Set limits" +msgstr "Aseta raja-arvot" + +msgid "Set the type of the progress indication in the channel selection screen." +msgstr "Määritä ohjelman pituuden osoittamisen tyyppi kanavien valintalistassa." + +msgid "Set time window to 1 hour" +msgstr "Aseta aikaikkuna 1 tuntiin" + +msgid "Set time window to 2 hours" +msgstr "Aseta aikaikkuna 2 tuntiin" + +msgid "Set time window to 3 hours" +msgstr "Aseta aikaikkuna 3 tuntiin" + +msgid "Set time window to 4 hours" +msgstr "Aseta aikaikkuna 4 tuntiin" + +msgid "Set time window to 5 hours" +msgstr "Aseta aikaikkuna 5 tuntiin" + +msgid "Set time window to 6 hours" +msgstr "Aseta aikaikkuna 6 tuntiin" + +# +msgid "Set voltage and 22KHz" +msgstr "Aseta jännite ja 22KHz" + +# +msgid "Settings" +msgstr "Asetukset" + +# +msgid "Setup" +msgstr "Asetukset" + +msgid "Setup menu" +msgstr "Asetusvalikko" + +# +msgid "Setup mode" +msgstr "Asetusten laajuus" + +msgid "Setup your positioner" +msgstr "Asenna kääntömoottori" + +msgid "Setup your satellite equipment" +msgstr "Asenna satelliittilaitteesi" + +#, python-format +msgid "Shall the USB stick wizard proceed and program the image file %s into flash memory?" +msgstr "Saako USB-muistiavustaja jatkaa ja kirjoittaa päivityksen %s flash-muistiin?" + +# +msgid "Sharpness" +msgstr "Terävyys" + +msgid "Short filenames" +msgstr "Lyhyet tiedostonimet" + +msgid "Show EIT now/next in infobar" +msgstr "Näytä EIT nyt/seuraava tietopalkissa" + +# +msgid "Show EPG for current channel..." +msgstr "Näytä tietopalkki ohjelman vaihtuessa" + +# +msgid "Show EPG..." +msgstr "Näytä ohjelmaopas..." + +msgid "Show Games show" +msgstr "Show Visailu" + +msgid "Show SNR percentage instead of dB value" +msgstr "Näytä SNR prosentteina dB arvon sijaan" + +# +msgid "Show VCR scart on main menu" +msgstr "Näytä Videonauhurin scart päävalikossa" + +# +msgid "Show WLAN status" +msgstr "Näytä WLAN:in tila" + +msgid "Show animation while busy" +msgstr "Näytä animaatio (rattaat) kun varattu" + +msgid "Show background in radio mode" +msgstr "Näytä taustakuva radiotilassa" + +msgid "Show bouquet selection menu" +msgstr "Näytä valikko suosikkilistojen valinnalle" + +msgid "Show busy indicator when the system is busy." +msgstr "Näytä animaatio(rattaat) kun järjestelmä on varattu." + +msgid "Show channel numbers in channel selection" +msgstr "Näytä kanavanvalinnassa kanavanumerot" + +msgid "Show columns" +msgstr "" + +msgid "Show crypto icons" +msgstr "" + +msgid "Show crypto info in infobar" +msgstr "Näytä salaustyyppi tietopalkissa" + +msgid "Show detailed event info" +msgstr "Näytä laajempi ohjelmatieto" + +# +msgid "Show event details" +msgstr "Näytä ohjelman tarkemmat tiedot" + +msgid "Show event-progress in channel selection" +msgstr "Näytä ohjelman pituus kanavien valintalistassa" + +# +msgid "Show extended description" +msgstr "Näytä laajennettu ohjelmakuvaus" + +# +msgid "Show extensions..." +msgstr "Näytä laajennukset..." + +msgid "Show icon for new/unseen items" +msgstr "Näytä kuvake uusille/katselemattomille" + +# +msgid "Show in extensions menu" +msgstr "Näytä laajennusvalikossa" + +# +msgid "Show info" +msgstr "Näytä tiedot" + +# +msgid "Show info line" +msgstr "Näytä tietopalkki" + +# +msgid "Show infobar on channel change" +msgstr "Näytä tietopalkki kanavaa vaihdettaessa" + +# +msgid "Show infobar on event change" +msgstr "Näytä tietopalkki ohjelman vaihtuessa" + +# +msgid "Show infobar on skip forward/backward" +msgstr "Näytä tietopalkki kelauksien/hyppyjen aikana" + +msgid "Show latest commits on sourceforge" +msgstr "" + +msgid "Show message when recording starts" +msgstr "Näytä ilmoitus tallennuksen alkamisesta" + +msgid "Show movie lengths in movielist" +msgstr "Näytä tallenteen pituus tallenneluettelossa" + +msgid "Show multi channel EPG" +msgstr "Näytä useamman kanavan ohjelmaopas" + +msgid "Show picons in channel list" +msgstr "" + +# +msgid "Show positioner movement" +msgstr "Näytä kuvake kääntömoottorin liikkuessa" + +msgid "Show screensaver" +msgstr "Näytä näytönsäästäjä" + +msgid "Show second infobar" +msgstr "Näytä toinen tietopalkki" + +# +msgid "Show service type icons" +msgstr "Näytä kanavatyypin kuvakkeet" + +# +msgid "Show services beginning with" +msgstr "Näytä kanavat jotka alkavat" + +# +msgid "Show shutdown menu" +msgstr "Näytä sammutusvalikko" + +msgid "Show single service EPG" +msgstr "Näytä yhden kanavan ohjelmaopas" + +msgid "Show status icons in Movielist" +msgstr "Näytä tilakuvakkeet tallenneluettelossa" + +msgid "Show status icons in movie list" +msgstr "Näytä tilakuvakkeet tallenneluettelossa" + +msgid "Show status icons in movielist" +msgstr "Näytä tilakuvakkeet tallenneluettelossa" + +# +msgid "Show tag menu" +msgstr "Näytä avainsanavalikko" + +# +msgid "Show the radio player..." +msgstr "Näytä radio..." + +# +msgid "Show the tv player..." +msgstr "Näytä tv..." + +# +msgid "Show warning when timeshift is stopped" +msgstr "Näytä varoitus kun ajansiirto lopetetaan" + +# +msgid "Shows the state of your wireless LAN connection.\n" +msgstr "Näyttää WLAN-yhteyden tilan.\n" + +# +msgid "Shuffle playlist" +msgstr "Arvo soittolista" + +# +msgid "Shutdown" +msgstr "Sammuta" + +msgid "Shutdown when in Standby" +msgstr "Sammuta valmiustilasta" + +msgid "Side by side" +msgstr "Rinnakkain" + +msgid "Signal OK, proceeding" +msgstr "Signaali OK, jatketaan" + +msgid "Signal quality" +msgstr "Signaalin laatu" + +# +msgid "Signal strength:" +msgstr "Signaalinvoimakkuus:" + +# +msgid "Signal: " +msgstr "Signaali:" + +# +msgid "Similar" +msgstr "Samanlaiset" + +# +msgid "Similar broadcasts:" +msgstr "Samanlaiset lähetykset:" + +# +msgid "Simple" +msgstr "Suppea" + +# +msgid "Simple titleset (compatibility for legacy players)" +msgstr "Suppea (yhteensopiva vanhojen soittimien kanssa)" + +# +msgid "Single" +msgstr "Yksi" + +# +msgid "Single EPG" +msgstr "Ohjelmaopas" + +# +msgid "Single satellite" +msgstr "Yksi satelliitti" + +# +msgid "Single step (GOP)" +msgstr "Kuva-kuvalta (GOP)" + +# +msgid "Single transponder" +msgstr "Yksi lähetin" + +msgid "Site latitude" +msgstr "Paikan leveysaste" + +msgid "Site longitude" +msgstr "Paikan pituusaste" + +msgid "Skin" +msgstr "Teema" + +# +msgid "Skins" +msgstr "Teema" + +msgid "Skip empty services" +msgstr "Ohita tyhjät kanavat" + +msgid "Skip internet connection check (disables automatic package installation)" +msgstr "Ohita internet yhteyden tarkistus (poistaa automaattisen pakettien asennuksen käytöstä)" + +# +msgid "Sleep timer" +msgstr "Uniajastin" + +# +msgid "SleepTimer Configuration" +msgstr "Uniajastimen asetukset" + +# +msgid "Sleeptimer" +msgstr "Uniajastin" + +# +msgid "Slide picture in loop" +msgstr "Kuvien jatkuva toisto" + +# +msgid "Slide show interval (sec.)" +msgstr "Kuvien näyttöaika (sekuntia)" + +# +#, python-format +msgid "Slot %d" +msgstr "Portti %d" + +msgid "Slovak" +msgstr "Slovakia" + +# +msgid "Slovenian" +msgstr "Slovenia" + +# +msgid "Slow" +msgstr "Hidas" + +# +msgid "Slow motion speeds" +msgstr "Hidastusnopeudet" + +# +msgid "Small progress" +msgstr "Käynnissä" + +msgid "Social/Political/Economics" +msgstr "Sosiaali/Politiikka/Talous" + +msgid "SoftCam / CI" +msgstr "SoftCam / CI" + +# +msgid "Softcam type" +msgstr "Softcamin tyyppi" + +# +msgid "Software" +msgstr "Ohjelmisto" + +msgid "Software management" +msgstr "Ohjelmiston hallinta" + +msgid "Software manager setup" +msgstr "Ohjelmiston hallinnan asetukset" + +# +msgid "Software restore" +msgstr "Ohjelmiston palautus" + +# +msgid "Software update" +msgstr "Ohjelmiston päivitys" + +msgid "Softwaremanager information" +msgstr "Ohjelmistonhallinnan tiedot" + +# +msgid "Some plugins are not available:\n" +msgstr "Seuraavat lisäosat eivät ole saatavilla:\n" + +# +#, python-format +msgid "Sorry, %s has not been installed!" +msgstr "%s ei ole asennettu!" + +msgid "Sorry, deleting directories can (for now) only be done through the trash can." +msgstr "Pahoittelen, hakemistojen tuhoaminen voidaan tehdä vain roskakorin kautta (toistaiseksi)." + +# +msgid "Sorry, no backups found!" +msgstr "Varmuuskopioita ei löytynyt!" + +# +msgid "Sorry, no details available!" +msgstr "Lisätietoja ei ole saatavilla!" + +# +msgid "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." +msgstr "" +"Varmuuskopion kohdehakemisto on kirjoitussuojattu.\n" +"Valitse toinen hakemisto." + +msgid "Sort" +msgstr "Järjestä" + +# +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort A-Z" +msgstr "Aakkosjärj." + +msgid "Sort by" +msgstr "" + +msgid "Sort list:" +msgstr "" + +# +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort time" +msgstr "Aikajärj." + +# +msgid "Sound" +msgstr "Ääni" + +# +msgid "Sound carrier" +msgstr "Äänikantoaallon taajuus" + +msgid "Source request" +msgstr "Lähteen pyynti" + +# +msgid "South" +msgstr "Etelä" + +# +msgid "Spanish" +msgstr "Espanja" + +msgid "Specify the end time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the end time until the inactivity sleeptimer should be ignored" +msgstr "Määrittele lopetusaika mihin saakka käyttämättömyysajastinta ei huomioida" + +msgid "Specify the start time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the start time when the inactivity sleeptimer should be ignored" +msgstr "Määrittele aloitusaika mistä lähtien käyttämättömyysajastinta ei huomioida." + +msgid "Specify timeframe to ignore inactivity sleeptimer" +msgstr "Käyttämättömyysajastin pois päältä aikavälillä" + +msgid "Specify timeframe to ignore the shutdown in standby" +msgstr "" + +# +msgid "Split preview mode" +msgstr "Jaettu esikatseluruutu" + +msgid "Splitscreen" +msgstr "" + +msgid "Sports" +msgstr "Urheilu" + +# +msgid "Standard" +msgstr "Vakio" + +msgid "Standart list" +msgstr "" + +# +msgid "Standby" +msgstr "Valmiustila" + +# +msgid "Standby / restart" +msgstr "Sammutusvalikko" + +# +msgid "Standby after current event" +msgstr "Aseta valmiustilaan menossa olevan ohjelman jälkeen" + +#, python-format +msgid "Standby fan %d PWM" +msgstr "Valmiustilan tuuletin %d PWM" + +#, python-format +msgid "Standby fan %d voltage" +msgstr "Valmiustilan tuuletin %d jännite" + +# +msgid "Standby in " +msgstr "Valmiustilaan kun kulunut " + +msgid "StandbyLED" +msgstr "" + +# +msgid "Start from the beginning" +msgstr "Aloita alusta" + +msgid "Start offline decode" +msgstr "Aloita offline-purku" + +# +# Suoratallennusikkuna. +msgid "Start recording?" +msgstr "Aloitetaanko tallennus tältä kanavalta?" + +# +msgid "Start test" +msgstr "Aloita testi" + +# +msgid "Start time" +msgstr "Aloitusaika" + +msgid "Start time to ignore inactivity sleeptimer" +msgstr "Pois päältä olon aloitusaika" + +msgid "Start time to ignore shutdown in standby" +msgstr "" + +# +msgid "Start timeshift" +msgstr "Aloita ajansiirtotallennus" + +msgid "Start with list screen" +msgstr "Käynnistä luettelotilaan" + +# +msgid "Starting on" +msgstr "Alkaen" + +msgid "Startup the set top box in standby" +msgstr "" + +msgid "Startup to Standby" +msgstr "" + +# +msgid "Step east" +msgstr "Askel itään" + +# +msgid "Step west" +msgstr "Askel länteen" + +msgid "Stepped east" +msgstr "Askel itään" + +msgid "Stepped west" +msgstr "Askel länteen" + +# +msgid "Stop" +msgstr "Pysäytä" + +# +msgid "Stop PiP" +msgstr "Sulje PiP-kuva" + +# +msgid "Stop current event and disable coming events" +msgstr "Pysäytä tallennus ja estä tulevat ajastukset" + +# +msgid "Stop current event but not coming events" +msgstr "Pysäytä tallennus, mutta älä estä tulevia ajastuksia" + +# +msgid "Stop entry" +msgstr "Pysäytä" + +# +msgid "Stop playing this movie?" +msgstr "Lopetetaanko tallenteen toistaminen?" + +msgid "Stop recording" +msgstr "Pysäytä tallennus" + +msgid "Stop recording and delete" +msgstr "Lopeta tallennus ja poista" + +msgid "Stop service on return to movie list" +msgstr "" + +# +msgid "Stop test" +msgstr "Lopeta testi" + +msgid "Stop testing plane after # failed transponders" +msgstr "Lopeta testaus # toimimattoman lähettimen jälkeen" + +msgid "Stop testing plane after # successful transponders" +msgstr "Lopeta testaus # toimivan lähettimen jälkeen" + +msgid "Stop timer recording" +msgstr "Pysäytä ajastettu tallennus" + +# +msgid "Stop timeshift" +msgstr "Lopeta ajansiirtotallennus" + +# +msgid "Stop timeshift?" +msgstr "Lopetetaanko ajansiirto?" + +msgid "Stopped" +msgstr "Pysäytetty" + +msgid "Store at index" +msgstr "Tallenna indeksiin" + +# +msgid "Store position" +msgstr "Tallenna sijainti" + +# +msgid "Stored position" +msgstr "Sijainnin muistipaikka" + +msgid "Stream" +msgstr "Streamin pyyntö" + +msgid "Stream request" +msgstr "Streamin pyyntö" + +msgid "Strongest position" +msgstr "Vahvin suunta" + +# +msgid "Subservice list..." +msgstr "Alipalvelulista..." + +# +msgid "Subservices" +msgstr "Alipalvelut" + +msgid "Subtitle Quickmenu" +msgstr "Tekstityksen Pikavalikko" + +msgid "Subtitle alignment" +msgstr "Tekstityksen kohdistus" + +msgid "Subtitle border width" +msgstr "Tekstityksen reunan leveys" + +msgid "Subtitle delay when timing is bad" +msgstr "Tekstityksen viive kun ajoitus on huono" + +msgid "Subtitle delay when timing lacks" +msgstr "Tekstityksen näyttöaika kun poistoajoitus puuttuu" + +msgid "Subtitle font size" +msgstr "Tekstityksen koko" + +msgid "Subtitle language selection 1" +msgstr "Tekstityskielen valinta 1" + +msgid "Subtitle language selection 2" +msgstr "Tekstityskielen valinta 2" + +msgid "Subtitle language selection 3" +msgstr "Tekstityskielen valinta 3" + +msgid "Subtitle language selection 4" +msgstr "Tekstityskielen valinta 4" + +# +msgid "Subtitle position" +msgstr "Tekstityksen sijainti" + +# +msgid "Subtitle selection" +msgstr "Tekstitysvalinta" + +msgid "Subtitle selection..." +msgstr "Tekstityksen valinta..." + +msgid "Subtitle settings" +msgstr "Tekstityksen asetukset" + +# +msgid "Subtitles" +msgstr "Tekstitys" + +# +msgid "Sun" +msgstr "Su" + +# +msgid "Sunday" +msgstr "Sunnuntai" + +# +msgid "Swap PiP and main picture" +msgstr "Vaihda PiP- ja pääkuva" + +# +msgid "Swap services" +msgstr "Vaihda PiP- ja pääkuva keskenään" + +# +msgid "Swedish" +msgstr "Ruotsi" + +msgid "Switch TV to correct input" +msgstr "Vaihda TV oikealle sisäänmenolle" + +# +msgid "Switch between filelist/playlist" +msgstr "Vaihda tiedosto-/soittoluettelon välillä" + +msgid "Switch between normal mode and list mode" +msgstr "Vaihda normaalista luettelotilaan" + +msgid "Switch to HDMI in mode" +msgstr "" + +# +msgid "Switch to filelist" +msgstr "Vaihda tiedostoluetteloon" + +msgid "Switch to next channel" +msgstr "" + +# +msgid "Switch to next channel in history" +msgstr "Vaihda seuraavalle jo katsotulle kanavalle" + +# +msgid "Switch to next sub service" +msgstr "Vaihda seuraavaan alipalveluun" + +# +msgid "Switch to playlist" +msgstr "Vaihda soittolistaan" + +# +msgid "Switch to previous channel" +msgstr "Vaihda edelliselle kanavalle" + +# +msgid "Switch to previous channel in history" +msgstr "Vaihda edelliselle jo katsotulle kanavalle" + +# +msgid "Switch to previous sub service" +msgstr "Vaihda edelliseen alipalveluun" + +msgid "Switchable tuner types:" +msgstr "Vaihdettavat viritintyypit:" + +msgid "Symbol rate" +msgstr "Symbol rate" + +msgid "Symbol rate:" +msgstr "Symbolinopeus:" + +msgid "Sync failure moving back to origin !" +msgstr "Synkronointivirhe, palataan takaisin alkuperäiseen !" + +# +msgid "System" +msgstr "Järjestelmä" + +#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) +msgid "TRANSLATOR_INFO" +msgstr "" +"Suomenkielinen käännös: Timo Järvenpää\n" +"timojarvenpaa@hotmail.com\n" +"Päivitys: BoxFreak 14.10.2013\n" +"http://huoltovalikko.keskustelupalstat.com" + +# +msgid "TS file is too large for ISO9660 level 1!" +msgstr "TS-tiedosto on liian suuri ISO9660 1-tasolle!" + +msgid "TSID" +msgstr "TSID" + +msgid "TV physical address report" +msgstr "TV:n fyysisen osoitteen raportti" + +msgid "TXT PID" +msgstr "TXT PID" + +# +msgid "Table of contents for collection" +msgstr "Kokoelman hakemisto" + +# +msgid "Tags" +msgstr "Avainsanat" + +msgid "Teletext subtitle color" +msgstr "Teksti-tv tekstityksen väri" + +msgid "Temperature and fan control" +msgstr "Lämpötilan ja tuulettimen ohjaus" + +# +msgid "Terrestrial" +msgstr "Antennivastaanotto (DVB-T)" + +# +msgid "Terrestrial provider" +msgstr "Antenniverkon palveluntarjoaja" + +# +msgid "Test DiSEqC settings" +msgstr "Testaa DiSEqC-asetukset" + +# +msgid "Test mode" +msgstr "Virityskuvan lähetys" + +msgid "Test the network configuration of your receiver.\n" +msgstr "Testaa vastaanottimesi verkkomääritykset.\n" + +# +msgid "Test type" +msgstr "Testin tyyppi" + +# +msgid "Text color" +msgstr "Tekstin väri" + +msgid "Thai" +msgstr "Thai" + +msgid "" +"Thank you for using the wizard.\n" +"Please press OK to continue." +msgstr "" +"Ohjattu verkkoasennus on päättynyt.\n" +"Jatka painamalla OK-näppäintä." + +msgid "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." +msgstr "" +"Kiitos että käytit avustajaa. Vastaanottimesi on nyt valmis käyttöön.\n" +"Paina OK aloittaaksesi käytön." + +msgid "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?" +msgstr "DVD standardi ei tue H.264 (HDTV) videota. Haluatko luoda erikoisformaattisen data DVD:n (jota ei voi soittaa normaaleilla DVD soittimilla) sen sijaan?" + +msgid "The PIN code has been changed successfully." +msgstr "PIN-koodin vaihto onnistui." + +msgid "The PIN codes you entered are different." +msgstr "Syöttämäsi PIN-koodit olivat erilaiset." + +msgid "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" +msgstr "" +"USB-tikusta tehtiin automaattisesti käynnistyvä.\n" +"Voit nyt ladata NFI-tiedoston." + +# +msgid "The backup failed. Please choose a different backup location." +msgstr "Varmuuskopiointi epäonnistui. Valitse toinen varmuuskopiointipaikka." + +#, python-format +msgid "" +"The current beta image might not be stable.\n" +"For more information see %s." +msgstr "" +"Nykyinen beta-ohjelmisto ei välttämättä ole vakaa.\n" +"Katso lisätietoja %s." + +#, python-format +msgid "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." +msgstr "Hakemistoon %s ei voida tallentaa.\\Valitse hakemisto johon voidaan tallentaa." + +# +#, python-format +msgid "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" +msgstr "" +"Seuraava laite löytyi:\n" +"\n" +"%s\n" +"\n" +"Haluatko tallentaa ohjelmistopäivitysohjelman tälle USB-muistille?" + +# +msgid "The following files were found..." +msgstr "Seuraavat tiedostot löytyi..." + +msgid "The md5sum validation failed, the file may be corrupted!" +msgstr "MD5-tarkistus epäonnistui, tiedosto voi olla vioittunut!" + +msgid "" +"The network wizard extension is not installed!\n" +"Please install it." +msgstr "" +"Verkkoavustajaa ei ole asennettu!\n" +"Asenna se." + +# +#, python-format +msgid "The path %s already exists." +msgstr "Hakemisto %s on jo olemassa." + +# +msgid "The pin code you entered is wrong." +msgstr "Syötit virheellisen tunnusluvun." + +# +#, python-format +msgid "The results have been written to %s." +msgstr "Tulokset kirjoitettiin %s." + +# +msgid "The sleep timer has been activated." +msgstr "Uniajastin on kytketty päälle." + +# +msgid "The sleep timer has been disabled." +msgstr "Uniajastin on kytketty pois päältä." + +msgid "" +"The software management extension is not installed!\n" +"Please install it." +msgstr "" +"Ohjelmistohallinnan lisäosaa ei ole asennettu!\n" +"Asenna se." + +#, python-format +msgid "The status of the current beta image could not be checked because %s can not be reached." +msgstr "Nykyisen beta-ohjelmiston tilaa ei voitu tarkistaa koska %s osoitteeseen ei saatu yhteyttä." + +# +msgid "The timer file (timers.xml) is corrupt and could not be loaded." +msgstr "Ajastusluettelo (timers.xml) on korruptoitunut eikä sitä voida ladata" + +msgid "The user interface of your receiver is restarting" +msgstr "Vastaanottimesi käyttöliittymä käynnistyy uudelleen" + +msgid "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" +msgstr "" +"Vastaanottimesi käyttöliittymä käynnistyy uudelleen\n" +"johtuen virheestä mytest.py tiedostossa" + +# +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." +msgstr "" +"WLAN-lisäosaa ei ole asennettu!\n" +"Asenna se ja valitse mitä haluat tehdä seuraavaksi." + +# +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it." +msgstr "" +"WLAN-lisäosaa ei ole asennettu!\n" +"Asenna se." + +# +msgid "The wizard can backup your current settings. Do you want to do a backup now?" +msgstr "Avustaja voi kopioida nykyiset asetuksesi. Haluatko varmuuskopioida asetukset?" + +#, python-format +msgid "The wizard found a configuration backup. Do you want to restore your old settings from %s?" +msgstr "Avustaja löysi asetusten varmuuskopion. Haluatko, että vanhat asetukset palautetaan tiedostosta %s?" + +# +msgid "The wizard is finished now." +msgstr "Avustaja on lopettanut. Paina OK." + +msgid "There are at least " +msgstr "Saatavilla ainakin " + +#, python-format +msgid "There are at least %s updates available." +msgstr "Saatavilla vähintään %s päivitystä." + +msgid "There are currently no outstanding actions." +msgstr "Ei suorittamattomia tehtäviä." + +msgid "There are no updates available." +msgstr "Päivityksiä ei ole saatavilla." + +msgid "There is no signal to lock on !" +msgstr "Ei signaalia johon voisi lukittua !" + +# +msgid "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" +msgstr "" +"Kiintolevyn osiolla ei välttämättä ole riittävästi tilaa.\n" +"Haluatko varmasti jatkaa?" + +# +msgid "This DVD RW medium is already formatted - reformatting will erase all content on the disc." +msgstr "Tämä DVD-RW levy on jo alustettu - uudelleenalustus tuhoaa levyn kaiken sisällön." + +msgid "" +"This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!" +msgstr "" +"Tämä plugin luo USB tikun jota voidaan käyttää vastaanottimesi ohjemiston päivittämiseen ilman verkko- tai WLAN-yhteyttä.\n" +"Ensiksi, USB tikku tulee alustaa niin että siitä tulee boottaava.\n" +"Seuraavaksi, NFI ohjelmatiedosto voidaan ladata päivityspalvelimelta ja tallentaa USB tikulle.\n" +"Jos olet jo valmistellut boottaavan USB tikun, liitä se vastaanottimeesi nyt. Muussa tapauksessa liitä USB tikku jonka koko on vähintään 64 MB!" + +# +msgid "This plugin is installed." +msgstr "Tämä lisäosa on asennettu." + +# +msgid "This plugin is not installed." +msgstr "Tätä lisäosaa ei ole asennettu." + +# +msgid "This plugin will be installed." +msgstr "Tämä lisäosa asennetaan." + +# +msgid "This plugin will be removed." +msgstr "Tämä lisäosa poistetaan." + +#, python-format +msgid "This receiver cannot decode %s streams!" +msgstr "Tämä vastaanotin ei osaa purkaa %s striimejä!" + +# +msgid "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration" +msgstr "" +"Tämä testi tarkistaa määritellyt nimipalvelimet.\n" +"Jos näet \"vahvistamaton\" ilmoituksen:\n" +"- tarkista DHCP, kaapelointi ja Sovittimen asetukset\n" +"- jos määrittelit nimipalvelimet käsin, tarkista arvot \"Nimipalvelimen asetukset\" kohdassa" + +# +msgid "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" +msgstr "" +"Tämä testi tarkistaa, onko verkkokaapeli kytketty verkkokorttiin.\n" +"Jos näet \"ei kytketty\" ilmoituksen:\n" +"- tarkista, että kaapeli on kytketty\n" +"- tarkista, ettei kaapeli ole vaurioitunut" + +# +msgid "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" +msgstr "" +"Tämä testi tarkistaa, onko verkkosovittimella toimiva IP-osoite.\n" +"Jos näet \"vahvistamaton\" ilmoituksen:\n" +"- toimivaa IP-osoitetta ei löytynyt\n" +"- tarkista DHCP, kaapeli ja verkkosovittimen asetukset" + +# +msgid "" +"This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." +msgstr "" +"Tämä testi tarkistaa, onko verkkosovittimelle määritetty automaattinen IP-osoite DHCP:n kautta.\n" +"Jos näet \"ei käytössä\" ilmoituksen:\n" +"- verkkosovitin on määritelty käyttämään kiinteää IP-osoitetta\n" +"- tarkista, että olet syöttänyt oikeat IP-tiedot Sovittimen asetukset -kohdassa.\n" +"Jos näet \"käytössä\" ilmoituksen:\n" +"- tarkista, että sinulla on lähiverkossasi toimiva ja oikein määritelty DCHP-palvelin." + +# +msgid "This test detects your configured LAN adapter." +msgstr "Tämä testi tunnistaa määrittelemäsi verkkosovittimen." + +msgid "" +"This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\n" +"Are you sure?" +msgstr "" +"Tämä (uudelleen)laskee kaikki kääntömoottorin sijainnit ja voi poistaa aikaisemmin tallennettuja sijainteja ja hienosäätöjä!\n" +"Haluta varmasti jatkaa?" + +# +msgid "Three" +msgstr "Kolme" + +# +msgid "Threshold" +msgstr "Kynnys" + +# +msgid "Thu" +msgstr "To" + +# +msgid "Thumbnails" +msgstr "Esikats.kuvat" + +# +msgid "Thursday" +msgstr "Torstai" + +# +msgid "Time" +msgstr "Aika" + +msgid "Time scale" +msgstr "Aika-asteikko" + +# +msgid "Timer" +msgstr "Ajastukset" + +msgid "Timer Overview" +msgstr "" + +# +msgid "Timer edit" +msgstr "Ajastuksen muokkaus" + +# +msgid "Timer editor" +msgstr "Ajastusten muokkaus" + +# +# Ajastusikkunan otsikkopalkin teksti +msgid "Timer entry" +msgstr "Ajastettava ohjelma" + +# +msgid "Timer log" +msgstr "Ajastinloki" + +# +msgid "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" +msgstr "" +"Ajastusten päällekkäisyys havaittu!\n" +"Tarkista ajastusasetukset!" + +msgid "Timer overview" +msgstr "Ajastukset" + +msgid "Timer recording location" +msgstr "Ajastuksien tallennushakemisto" + +# +msgid "Timer sanity error" +msgstr "Päällekkäinen ajastus" + +# +msgid "Timer selection" +msgstr "Ajastinvalinta" + +# +msgid "Timer selection..." +msgstr "Ajastusvalinta..." + +# +# Asetuksen nimi ajastusikkunassa +msgid "Timer type" +msgstr "Ajastuksen tyyppi" + +# +msgid "Timeshift" +msgstr "Ajansiirto" + +msgid "Timeshift Live" +msgstr "" + +msgid "Timeshift location" +msgstr "Ajansiirron tallennushakemisto" + +# +msgid "Timeshift not possible!" +msgstr "Ajansiirtotallennusta ei voida käyttää." + +# +msgid "Timezone" +msgstr "Aikavyöhyke" + +# +msgid "Title" +msgstr "Otsikko" + +# +msgid "Title properties" +msgstr "Ominaisuudet" + +# +msgid "Titleset mode" +msgstr "Tila" + +msgid "To audio selection" +msgstr "Avaa äänivalinta" + +msgid "To subtitle selection" +msgstr "Avaa tekstitysvalinta" + +msgid "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." +msgstr "" +"Päivittääksesi vastaanottimesi, toimi seuraavasti:\n" +"1) Katkaise virta vastaanottimesi takana olevasta katkaisijasta ja laita boottaava USB tikku paikoilleen.\n" +"2) Laita virta takaisin päälle ja paina ALAS näppäintä vastaanottimesi etupaneelissa 10 sekunnin ajan.\n" +"3) Odota käynnistymistä ja seuraa avustajan ohjeita." + +# +msgid "Today" +msgstr "Tänään" + +# +msgid "Toggle a cut mark at the current position" +msgstr "Vaihda leikkausmerkki nykyiseen kohtaan" + +# +msgid "Tone amplitude" +msgstr "22KHz äänenvoimakkuus" + +# +msgid "Tone mode" +msgstr "22KHz-ääni" + +# +msgid "Toneburst" +msgstr "Äänipurske" + +# +msgid "Toneburst A/B" +msgstr "Äänipurske A/B" + +msgid "Top and bottom" +msgstr "Ylä ja ala" + +# +msgid "Track" +msgstr "Raita" + +# +msgid "Translation" +msgstr "Käännös" + +# +msgid "Translation:" +msgstr "Käännös:" + +# +msgid "Translations" +msgstr "Käännökset" + +# +msgid "Transmission mode" +msgstr "Lähetystapa" + +# +msgid "Transponder" +msgstr "Lähetin" + +# +msgid "Transponder type" +msgstr "Lähettimen tyyppi" + +msgid "Trash can" +msgstr "Roskakori" + +# +msgid "Tries left:" +msgstr "Yrityksiä jäljellä:" + +# +msgid "Try to find used transponders in cable network.. please wait..." +msgstr "Haetaan kaapeliverkon lähetystaajuuksia... odota..." + +# +msgid "Trying to download a new packetlist. Please wait..." +msgstr "Ladataan uusinta IPKG-ohjelmapakettiluetteloa. Odota..." + +# +msgid "Tue" +msgstr "Ti" + +# +msgid "Tuesday" +msgstr "Tiistai" + +# +msgid "Tune" +msgstr "Viritys" + +msgid "Tune and focus" +msgstr "Viritä ja hienosäädä" + +# +msgid "Tune failed!" +msgstr "Viritys epäonnistui!" + +# +msgid "Tuner" +msgstr "Viritin" + +# +msgid "Tuner configuration" +msgstr "Virittimien asetukset" + +msgid "Tuner is not supported" +msgstr "" + +# +msgid "Tuner slot" +msgstr "Viritinpaikka" + +# +msgid "Tuner status" +msgstr "Virittimen tila" + +# +#, python-format +msgid "Tuner status %s" +msgstr "Virittimen tila %s" + +msgid "Tuner type" +msgstr "Virittimen tyyppi" + +# +msgid "Turkish" +msgstr "Turkki" + +msgid "Turn on the power LED during standby." +msgstr "" + +msgid "Turning step size" +msgstr "" + +# +msgid "Two" +msgstr "Kaksi" + +# +msgid "Type" +msgstr "Tyyppi" + +# +msgid "Type of scan" +msgstr "Hakutapa" + +# +msgid "USALS" +msgstr "USALS" + +msgid "USALS calibration" +msgstr "USALS-kalibrointi" + +# +msgid "USB stick" +msgstr "USB-muisti" + +# +msgid "USB stick wizard" +msgstr "USB-muistiavustaja" + +msgid "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Automaattinen päivitys käynnissä\n" +"Odota kunnes vastaanotin käynnistyy uudelleen\n" +"Tämä voi kestää muutaman minuutin" + +# +msgid "Undo install" +msgstr "Kumoa asennus" + +# +msgid "Undo uninstall" +msgstr "Kumoa as.poisto" + +msgid "Unencrypted" +msgstr "Salaamaton" + +msgid "UnhandledKey" +msgstr "TuntematonNäppäin" + +msgid "Unicable" +msgstr "Unicable" + +msgid "Unicable LNB" +msgstr "Unicable LNB" + +msgid "Unicable Martix" +msgstr "Unicable Matrix" + +# +msgid "Uninstall" +msgstr "Poista asennus" + +# +msgid "Universal LNB" +msgstr "Universaali LNB" + +msgid "Unknown" +msgstr "Tuntematon" + +msgid "Unmount" +msgstr "Poista liitos" + +# +msgid "Unsupported" +msgstr "Ei tuettu" + +# +msgid "Update" +msgstr "Päivitä" + +msgid "Update and ask to reboot" +msgstr "Päivitä ja kysy uudelleenkäynnistystä" + +msgid "Update and reboot (recommended)" +msgstr "Päivitä ja uudelleenkäynnistä (suositeltava)" + +# +msgid "Update channel list only" +msgstr "Päivitä ainoastaan kanavalista" + +#, python-format +msgid "Update completed, %d package was installed." +msgid_plural "Update completed, %d packages were installed." +msgstr[0] "Päivitys valmis, %d paketti asennettiin." +msgstr[1] "Päivitys valmis, %d pakettia asennettiin." + +msgid "Update completed. Do you want to reboot your receiver?" +msgstr "Päivitys asennettu. Haluatko uudelleenkäynnistää vastaanottimesi?" + +msgid "Update failed. Your receiver does not have a working internet connection." +msgstr "Päivitys epäonnistui. Vastaanottimellasi ei ole toimivaa internet yhteyttä." + +msgid "Update has completed." +msgstr "Päivitys on valmis." + +msgid "Updatefeed not available." +msgstr "Päivityslähde ei ole saatavilla." + +msgid "Updating software catalog" +msgstr "Päivitetään ohjelmistoluetteloa" + +# +msgid "Upgrading" +msgstr "Päivitetään" + +# +msgid "Use" +msgstr "Käytä" + +# +msgid "Use DHCP" +msgstr "Käytä DHCP:tä" + +msgid "Use EIT EPG information when it is available." +msgstr "Käytä EIT ohjelmaoppaan tietoja, milloin saatavilla." + +msgid "Use FreeSat EPG information when it is available." +msgstr "Käytä FreeSat ohjelmaoppaan tietoja, milloin saatavilla." + +msgid "Use MHW EPG information when it is available." +msgstr "Käytä MHW ohjelmaoppaan tietoja, milloin saatavilla." + +msgid "Use Netmed EPG information when it is available." +msgstr "Käytä Netmed ohjelmaoppaan tietoja, milloin saatavilla." + +msgid "Use TV remote control" +msgstr "Käytä TV kauko-ohjausta" + +# +msgid "Use USALS for this sat" +msgstr "Käytä USALS:ia tälle satelliitille" + +msgid "Use ViaSat EPG information when it is available." +msgstr "Käytä ViaSat ohjelmaoppaan tietoja, milloin saatavilla." + +msgid "Use Virgin EPG information when it is available." +msgstr "" + +# +msgid "Use a gateway" +msgstr "Käytä yhdyskäytävää" + +msgid "Use fastscan channel names" +msgstr "Käytä pikahaun kanavanimiä" + +msgid "Use fastscan channel numbering" +msgstr "Käytä pikahaun kanavanumeroita" + +msgid "Use frequency or channel" +msgstr "" + +msgid "Use individual settings for each directory" +msgstr "Käytä joka hakemistolle yksilöllisiä asetuksia" + +# +msgid "Use interface" +msgstr "Sovitin käytössä" + +msgid "Use official channel numbering" +msgstr "Käytä virallista kanavanumerointia" + +msgid "Use original DVB subtitle position" +msgstr "Käytä alkuperäisen DVB-tekstityksen paikkaa" + +msgid "Use original teletext position" +msgstr "Käytä alkuperäistä teksti-tv tekstin paikkaa " + +# +msgid "Use power measurement" +msgstr "Käytä virran mittausta" + +msgid "Use the network wizard to configure selected network adapter" +msgstr "Muokkaa valitun verkkosovittimen asetuksia verkkoavustajan opastamana" + +# +msgid "Use the network wizard to configure your network\n" +msgstr "Muokkaa lähiverkon asetuksia verkkoavustajan opastamana\n" + +# +# Ohjatun asennuksen (Start Wizard) toinen ruutu. Teksti on rivitetty +# tilaansa käsin. Hyödyksi käytetään Unicode-nuolisymboleja. +msgid "Use the up/down keys on your remote control to select an option. After that, press OK." +msgstr "" +"Valitse haluamasi vaihtoehto\n" +"kaukosäätimen nuolinäppäimillä\n" +"(▲▼).\n" +"\n" +"Hyväksy valinta sen jälkeen\n" +"OK-näppäimellä." + +# +# Ohjatun asennuksen (Start Wizard) kakkosruudun valintateksti. +# Alkutekstin "basic features" ei tarvinne suomennetussa versiossa +# erillistä mainintaa: asia käy samalta ruudulta ilmi muutenkin, +# ja tekstiä on muuten vaikea saada sopimaan ruudulle luontevasti. +msgid "Use the wizard to set up basic features" +msgstr "Käytä ohjattua asennusta perusasetuksiin" + +msgid "Use these input device settings?" +msgstr "Käytetäänkö näitä syöttölaitteen asetuksia?" + +msgid "Use these settings?" +msgstr "Käytä näitä asetuksia?" + +# +msgid "Use this video enhancement settings?" +msgstr "Käytä näitä kuvanparannuksen asetuksia?" + +msgid "Use trash can in movielist" +msgstr "Käytä roskakoria tallenneluettelossa" + +# +msgid "Used service scan type" +msgstr "Käytetty kanavahakutyyppi" + +msgid "User - bouquets" +msgstr "Käyttäjä - suosikit" + +# +msgid "User defined" +msgstr "Käyttäjän määrittelemä" + +# +msgid "User defined transponder" +msgstr "Käyttäjän määrittelemä lähetin" + +msgid "User interface" +msgstr "Käyttöliittymä" + +# +msgid "Username" +msgstr "Käyttäjänimi" + +#, python-format +msgid "Using LNB %d" +msgstr "Käytetään LNB %d:tä" + +msgid "Using fixed address" +msgstr "Käytetään kiinteää osoitetta" + +#, python-format +msgid "Using tuner %s" +msgstr "Käytetään viritintä %s" + +msgid "Usually when the subtitle language is the same as the audio language, the subtitles will not be used. Enable this option to allow these subtitles to be used." +msgstr "Yleensä kun tekstityksen kieli on sama kuin äänen kieli, tekstityksiä ei näytetä. Kun tämä optio on päällä tekstitys näytetään myös silloin." + +# +# Päävalikon VCR-SCART-toiminnon nimi +msgid "VCR scart" +msgstr "SCART-läpivienti" + +msgid "VMGM (intro trailer)" +msgstr "VMGM (intro trailer)" + +# +msgid "Vertical" +msgstr "Vertikaali" + +msgid "Vertical turning speed" +msgstr "Pystysuuntainen kääntymisnopeus" + +msgid "Video PID" +msgstr "Video PID" + +# +msgid "Video enhancement preview" +msgstr "Kuvanparannuksen esikatselu" + +msgid "Video enhancement settings" +msgstr "Kuvasäädöt" + +msgid "Video enhancement setup" +msgstr "Kuvansäätöjen asetukset" + +msgid "Video fine tuning" +msgstr "TV-kuvan hienosäätö" + +# +msgid "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." +msgstr "" +"Video-sisäänmenon valinta\n" +"\n" +"Paina OK jos näet tämän ruudun TV:ssä (tai valitse TV:stä toinen sisäänmeno)\n" +"\n" +"Seuraavaa sisäänmenoa tunnistetaan automaattisesti 20 sekunnin kuluttua." + +# +msgid "Video mode selection." +msgstr "Video-tilan valinta." + +# +msgid "Video output" +msgstr "Video-ulostulo" + +# +msgid "Video setup" +msgstr "Video-asetukset" + +# +msgid "Video wizard" +msgstr "Video-avustaja" + +# +#, python-format +msgid "Video: %s fps" +msgstr "Video: %s fps" + +msgid "VideoMode" +msgstr "Kuvatila" + +msgid "Videocodec" +msgstr "Videokoodekki" + +msgid "Videoformat" +msgstr "Videoformaatti" + +msgid "Videosize" +msgstr "Videon koko" + +msgid "View Rass interactive..." +msgstr "Näytä Rass interactive..." + +msgid "View details" +msgstr "Lisätiedot" + +# +msgid "View list of available " +msgstr "Näytä saatavilla olevat" + +# +msgid "View list of available CommonInterface extensions" +msgstr "Näytä saatavilla olevat CI-laajennukset" + +# +msgid "View list of available EPG extensions." +msgstr "Näytä saatavilla olevat EPG-laajennukset" + +msgid "View list of available Satellite equipment extensions." +msgstr "Näytä saatavilla olevat satelliittilaitteistojen laajennukset" + +# +msgid "View list of available communication extensions." +msgstr "Näytä saatavilla olevat tietoliikennelaajennukset" + +# +msgid "View list of available default settings" +msgstr "Näytä saatavilla olevat oletusasetukset" + +msgid "View list of available display and userinterface extensions." +msgstr "Näytä saatavilla olevat näyttö- ja käyttöliittymälaajennukset." + +# +msgid "View list of available multimedia extensions." +msgstr "Näytä saatavilla olevat multimedia-laajennukset" + +# +msgid "View list of available networking extensions" +msgstr "Näytä saatavilla olevat verkkolaajennukset" + +# +msgid "View list of available recording extensions" +msgstr "Näytä saatavilla olevat tallennuslaajennukset" + +# +msgid "View list of available skins" +msgstr "Näytä saatavilla olevat teemat" + +# +msgid "View list of available software extensions" +msgstr "Näytä saatavilla olevat ohjelmistolaajennukset" + +# +msgid "View list of available system extensions" +msgstr "Näytä saatavilla olevat järjestelmälaajennukset" + +# +msgid "View photos..." +msgstr "Katso kuvia..." + +# +msgid "View teletext..." +msgstr "Näytä teksti-tv..." + +# +msgid "View video CD..." +msgstr "Katso Video-CD..." + +# +msgid "Virtual keyboard" +msgstr "Virtuaalinen näppäimistö" + +# +msgid "Voltage mode" +msgstr "13/18V-jännite" + +# +msgid "Volume" +msgstr "Äänenvoimakkuus" + +# +msgid "W" +msgstr "W" + +# +msgid "WEP" +msgstr "WEP" + +msgid "WLAN connection" +msgstr "WLAN-yhteys" + +# +msgid "WPA" +msgstr "WPA" + +# +msgid "WPA or WPA2" +msgstr "WPA tai WPA2" + +# +msgid "WPA2" +msgstr "WPA2" + +# +msgid "WSS on 4:3" +msgstr "WSS-kuvasuhdesignaali" + +# +msgid "Waiting" +msgstr "Odottaa" + +msgid "Waiting for mount" +msgstr "Odotetaan liittämistä" + +msgid "Waiting for partition" +msgstr "Odotetaan osiointia" + +msgid "Wakeup" +msgstr "Käynnisty" + +msgid "Wakeup TV from standby" +msgstr "Käynnistä TV valmiustilasta" + +msgid "Wakeup receiver for start timer" +msgstr "" + +msgid "Wakeup receiver from standby" +msgstr "Käynnistä vastaanotin valmiustilasta" + +msgid "Wakeup signal from TV" +msgstr "Käynnisty TV-signaalista" + +msgid "Wakeup type" +msgstr "" + +msgid "Warning: no LNB; using factory defaults." +msgstr "Varoitus: ei LNB:tä, käytetään tehdasasetuksia." + +# +msgid "Watch movies..." +msgstr "Toista tallenteet..." + +# +msgid "Watch recordings..." +msgstr "Tallennetaan..." + +# +msgid "Wed" +msgstr "Ke" + +# +msgid "Wednesday" +msgstr "Keskiviikko" + +# +msgid "Weekday" +msgstr "Viikonpäivä" + +msgid "Weighted position" +msgstr "Painotettu sijainti" + +# +msgid "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." +msgstr "" +"Tervetuloa leikkauskohtien muokkaukseen.\n" +"\n" +"Hae kohta, josta haluat aloittaa poisleikkauksen. Paina OK-näppäintä ja valitse 'Aloita leikkaus'.\n" +"\n" +"Hae seuraavaksi kohta, johon haluat lopettaa leikkauksen. Paina OK-näppäintä ja valitse 'Lopeta leikkaus'." + +msgid "Welcome to the image upgrade wizard. The wizard will assist you in upgrading the firmware of your receiver by providing a backup facility for your current settings and a short explanation of how to upgrade your firmware." +msgstr "Tervetuloa ohjelmiston päivitysavustajaan. Avustaja ohjaa sinua vastaanottimesi ohjelmiston päivityksessä tarjoten nykyisten asetusten varmuuskopiointi mahdollisuuden ja lyhyen selityksen siitä kuinka päivittää vastaanottimesi ohjelmisto." + +msgid "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" +msgstr "" +"Tervetuloa.\n" +"\n" +"Jos haluat kytkeä vastaanottimesi Internettiin tämä avustaja ohjaa sinua perus verkkoasetusten teossa vastaanottimeesi.\n" +"\n" +"Paina OK näppäintä aloittaaksesi verkkomäärityksien teon." + +msgid "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." +msgstr "" +"Tervetuloa.\n" +"\n" +"Tämä avustaja ohjaa sinua perus asetusten teossa vastaanottimeesi.\n" +"Paina OK nappia kaukosäätimessäsi siirtyäksesi seuraavaan vaiheeseen." + +# +msgid "Welcome..." +msgstr "Tervetuloa..." + +# +msgid "West" +msgstr "Länsi" + +msgid "West limit set" +msgstr "Lännen raja-arvo asetettu" + +# +# Ohjatun asennuksen (Start Wizard) kutosruudun ohjeteksti +# Alkukielinen teksti on tilanteeseen nähden aika pösilö. +msgid "What do you want to scan?" +msgstr "Kanavahaun lisäasetukset:" + +msgid "When enabled the PiP can be closed by the exit button." +msgstr "Kun päällä, PiP voidaan sulkea exit-napilla." + +msgid "When enabled the arrow buttons around the OK button will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled the left, right, CH+/-, B+/-, P+/- buttons will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled you can specify a timeframe to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "When enabled you can specify a timeframe were the inactivity sleeptimer is ignored. Not the detection is disabled during this timeframe but the inactivity timeout is disabled" +msgstr "Kun päällä, voit määritellä aikaikkunan milloin käyttämättömyysajastin on pois päältä. Käytön tunnistaminen on kuitenkin päällä, vain aikakatkaisua ei tehdä." + +msgid "When enabled you can zap channels with the CH+/-, B+/-, P+/- buttons instead of opening the channel selection list." +msgstr "" + +msgid "When enabled you get the channel selection list via the OK button, the infobar toggle is then transfered to exit button" +msgstr "" + +msgid "When enabled, AIT data will be included in http streams. This allows a client receiver to use HbbTV." +msgstr "Kun päällä, AIT tiedot lähetetään http streameissä. Tämä mahdollistaa että vastaanottaja voi käyttää HbbTV:tä." + +msgid "When enabled, ECM data will be included in http streams. This allows a client receiver to do the descrambling." +msgstr "Kun päällä, ECM tiedot lähetetään http streameissä. Tämä mahdollistaa että vastaanottaja voi purkaa salauksen." + +msgid "When enabled, EIT data will be included in http streams. This allows a client receiver to show EPG." +msgstr "Kun päällä, EIT tiedot lähetetään http streameissä. Tämä mahdollistaa että vastaanottaja voi käyttää ohjelmaopasta." + +msgid "When enabled, a popup message will be shown when a movie has finished and the next one will start." +msgstr "Kun päällä, näytetään viesti-ikkuna kun tallenne loppuu ja seuraava alkaa." + +msgid "When enabled, a popup message will be shown when a recording starts." +msgstr "Kun päällä, näytetään viesti kun nauhoitus alkaa." + +msgid "When enabled, a radio background image will be visible while listening to a radio channel." +msgstr "Kun päällä, radion taustakuva näytetään radiokanavaa kuunneltaessa." + +msgid "When enabled, a recording is allowed to interrupt live tv, when there are no free tuners." +msgstr "Kun päällä, nauhoitus saa keskeyttää TV:n katselun, kun vapaita virittimiä ei ole saatavilla." + +msgid "When enabled, a warning will be displayed and the user will get an option to stop or to continue the timeshift." +msgstr "Kun päällä, näytetään varoitus ja käyttäjällä on mahdollisuus pysäyttää tai jatkaa ajansiirtoa." + +msgid "When enabled, authentication is required to watch http streams." +msgstr "" + +msgid "When enabled, channel numbering will start at '1' for each bouquet." +msgstr "Kun päällä, suosikkilistojen kanavanumerointi alkaa joka listassa alusta '1':destä." + +msgid "When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen." +msgstr "Kun päällä, lähteen 4:3 kuvasuhteen kuva venytetään koko näytölle." + +msgid "When enabled, continue to the next bouquet when the last channel of the current bouquet is reached while changing channels." +msgstr "Kun päällä, siirrytään kanavanvaihdolla suosikkilistan viimeiseltä kanavalta eteenpäin seuraavaan suosikkilistaan." + +msgid "When enabled, deleted recordings are moved to the trash can, instead of being deleted immediately." +msgstr "Kun päällä, poistetut tallenteet siirretään roskakoriin, sen sijaan että ne tuhottaisiin välittömästi." + +msgid "When enabled, display the EIT now/next eventdata in infobar. When disabled, display now/next eventdata from the EPG cache instead." +msgstr "Kun päällä, näytetään EIT:n nyt/seuraava ohjelmatieto tietopalkissa. Kun pois päältä, näytetään nyt/seuraava ohjelmatieto ohjelmaoppaan välimuistista sen sijaan." + +msgid "When enabled, encryption info will be shown in the infobar (when supported by the skin)." +msgstr "Kun päällä, salaustieto näytetään tietopalkissa (mikäli teema tukee tätä)." + +msgid "When enabled, error messages related to the Common Interface module will not be shown." +msgstr "Kun päällä, CI-moduuliin liittyviä virheilmoituksia ei näytetä." + +msgid "When enabled, error messages related to zapping will not be shown." +msgstr "Kun päällä, kanavanvaihtoon liittyviä virhe ilmoituksia ei näytetä." + +msgid "When enabled, external subtitles will be always turned on for playback movie." +msgstr "Kun päällä, teksti-tv pohjaiset tekstitykset näytetään aina tallennetta toistettaessa." + +msgid "When enabled, graphical DVB subtitles are preferred over teletext subtitles, when both types are available." +msgstr "Kun päällä, DVB-tekstitystä suositaan teksti-tv pohjaisen tekstityksen sijaan, kun molemmat ovat saatavilla." + +msgid "When enabled, graphical DVB subtitles will be centered horizontally." +msgstr "Kun päällä, DVB-tekstitys näytetään vaakasuunnassa keskitetysti. " + +msgid "When enabled, graphical DVB subtitles will be displayed at their original position." +msgstr "Kun päällä, DVB-tekstitys näytetään alkuperäisellä paikallaan." + +msgid "When enabled, graphical DVB subtitles will be displayed in yellow, instead of the original color." +msgstr "Kun päällä, DVB-tekstitys näytetään keltaisena alkuperäisen värin sijaan." + +msgid "When enabled, http streams are descrambled on the server side. The (remote) client receiver does not have to do descrambling." +msgstr "Kun päällä, http striimien salaus puretaan palvelimen päässä. Vastaanottajan ei tarvitse tehdä salauksenpurkua." + +msgid "When enabled, it is possible to leave the movieplayer with exit." +msgstr "Kun päällä, on mahdollista poistua tallenteista exit-napilla." + +msgid "When enabled, measure power consumption to detect when the rotor stops turning (when supported by the tuner)." +msgstr "Kun päällä, mitataan virrankulutusta että voidaan havaita kun kääntömoottori pysähtyy (jos viritin tukee tätä)." + +msgid "When enabled, number markers will be hiden." +msgstr "Kun päällä, suosikkilistan väliotsikot joilla on kanavanumero piilotetaan." + +msgid "When enabled, services may be grouped in multiple bouquets." +msgstr "Kun päällä, kanavat voidaan ryhmitellä useisiin suosikkilistoihin." + +msgid "When enabled, show channel numbers in the channel selection screen." +msgstr "Kun päällä, näytä kanavanvalinnassa kanavanumerot" + +msgid "When enabled, subtitles for the hearing impaired can be used." +msgstr "Kun päällä, kuulovammaisten tekstitystä voidaan käyttää." + +msgid "When enabled, subtitles for the hearing impaired will be preferred over normal subtitles, when both types are available." +msgstr "Kun päällä, kuulovammaisten tekstitystä suositaan tavallisen tekstityksen sijaan, kun molemmat ovat saatavilla." + +msgid "When enabled, teletext pages will be cached, allowing faster access." +msgstr "Kun päällä, teksti-tv:n sivut ladataan muistiin ja ne ovat nopeammin käytettävissä." + +msgid "When enabled, teletext subtitles will be displayed at their original position." +msgstr "Kun päällä, teksti-tv pohjaiset tekstitykset näytetään alkuperäisellä paikallaan." + +msgid "When enabled, the VCR scart option will be shown on the main menu" +msgstr "Kun päällä, Videonauhurin scart vaihtoehto näytetään päävalikossa." + +msgid "When enabled, the channel selection list will be hidden while listening to a radio channel" +msgstr "Kun päällä, kanavien valintalista on piilossa kun kuunnellaan radiokanavaa." + +msgid "When enabled, the infobar will be displayed when a new event starts." +msgstr "Kun päällä, tietopalkki näytetään kun uusi ohjelma alkaa." + +msgid "When enabled, the infobar will be displayed when changing channels." +msgstr "Kun päällä, tietopalkki näytetään kanavaa vaihdettaessa." + +msgid "When enabled, the infobar will be displayed when skipping forwards/backwards during media playback." +msgstr "Kun päällä, tietopalkki näytetään kun hypitään eteen/taakseppäin tiedostoa toistettaessa." + +msgid "When enabled, the lenght of each recording will be shown in the movielist (this might cause some additional loading time)." +msgstr "Kun päällä, tallenteiden pituus näytetään tallenneluettelossa (tämä voi aiheuttaa tallenneluettelon latausajan pitenemisen)." + +msgid "When enabled, the original line breaks will be removed from the teletext subtitles." +msgstr "Kun päällä, alkuperäisessä teksti-tv pohjaisessa tekstityksessä olevat rivinvaihdot poistetaan." + +msgid "When enabled, the receiver will automatically use the audio track which you selected before." +msgstr "Kun päällä, vastaanotin käyttää kanavalle aiemmin valitsemaasi ääniraitaa automaattisesti." + +msgid "When enabled, the receiver will automatically use the subtitles which you selected before." +msgstr "Kun päällä, vastaanotin käyttää kanavalle aiemmin valitsemaasi tekstitystä automaattisesti." + +msgid "When enabled, the receiver will no longer monitor the tuned transponder for possible changes. Do not use this option unless you know what you are doing." +msgstr "Kun päällä, vastaanotin ei enää monitoroi viritettyä lähetintä mahdollisten muutosten varalta. Älä käytä tätä optiota ellet tiedä mitä olet tekemässä." + +msgid "When enabled, the receiver will select an AC3 track (when available)." +msgstr "Kun päällä, vastaanotin käyttää AC3 ääniraitaa (milloin saatavilla)." + +msgid "When enabled, the receiver will select an AC3+ track (when available)." +msgstr "" + +msgid "When enabled, timeshift starts automatically in background after specified time." +msgstr "Kun päällä, ajansiirto alkaa automaattisesti taustalla määritellyn ajan jälkeen." + +# +msgid "When enabled, use DHCP for the IP configuration." +msgstr "Kun päällä, käytä DHCP:tä IP-osoitteen saamiseksi." + +msgid "When enabled, your receiver will detect activity on the VCR SCART input." +msgstr "Kun päällä, vastaanotin tunnistaa signaalin VCR SCART liitännästä." + +msgid "When nonzero, a recording will start earlier than the starting time indicated by the EPG." +msgstr "Kun arvo ei ole nolla, tallennus alkaa aiemmin kuin ohjelmaoppaassa oleva aloitusaika." + +msgid "When nonzero, a recording will stop later than the ending time indicated by the EPG." +msgstr "Kun arvo ei ole nolla, tallennus päättyy myöhemmin kuin ohjelmaoppaassa oleva lopetusaika." + +msgid "When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture." +msgstr "Kun lähteen kuvasuhde on 16:9, valitse skaalataanko vai venytetäänkö kuvaa näytölle. " + +msgid "When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture." +msgstr "Kun lähteen kuvasuhde on 4:3, valitse skaalataanko vai venytetäänkö kuvaa näytölle. " + +msgid "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" +msgstr "" +"Jos palautat tehdasasetukset, häviää kaikki tekemäsi omat asetukset\n" +"(sisältäen suosikkilistat, kanavat, satelliitit ...)\n" +"Tehdasasetusten palautuksen jälkeen vastaanotin käynnistyy automaattisesti uudelleen!\n" +"\n" +"Haluatko palauttaa tehdasasetukset?" + +# +msgid "Where do you want to backup your settings?" +msgstr "Minne haluat varmuuskopioida asetukset?" + +# +msgid "Where to save temporary timeshift recordings?" +msgstr "Minne ajansiirron väliaikainen tiedosto tallennetaan?" + +# +msgid "Wireless LAN" +msgstr "WLAN-verkko" + +# +msgid "Wireless network" +msgstr "Langaton verkko" + +# +msgid "Wireless network configuration..." +msgstr "Langattoman verkon asetukset..." + +msgid "Wireless network connection setup" +msgstr "WLAN-verkon asetukset" + +msgid "Wireless network connection setup." +msgstr "WLAN-verkon asetukset." + +msgid "Wireless network state" +msgstr "WLAN-verkon tila" + +msgid "With popup" +msgstr "Ponnahdusikkunalla" + +msgid "Without popup" +msgstr "Ilman ponnahdusikkunaa" + +msgid "Would you like to install a softcam?" +msgstr "Haluatko asentaa softcam:in?" + +# +msgid "Write error while recording. Disk full?\n" +msgstr "Kirjoitusvirhe tallennuksessa. Levy täynnä?\n" + +# +msgid "Write failed!" +msgstr "Kirjoitus epäonnistui!" + +# +msgid "YPbPr" +msgstr "Komponentti (YPbPr)" + +# +msgid "Year" +msgstr "Vuosi" + +msgid "Yellow DVB subtitles" +msgstr "Keltainen DVB-tekstitys" + +# +msgid "Yes" +msgstr "Kyllä" + +msgid "Yes and save" +msgstr "Kyllä ja tallenna" + +# +msgid "Yes and save in movie dir" +msgstr "Kyllä ja tallenna tallennehakemistoon" + +msgid "Yes to all" +msgstr "Kyllä kaikkiin" + +msgid "Yes, always" +msgstr "Kyllä, aina" + +# +msgid "Yes, and delete this movie" +msgstr "Kyllä ja poista tämä tallenne" + +# +msgid "Yes, backup my settings!" +msgstr "Kyllä, varmuuskopioi asetukset!" + +msgid "Yes, delete this movie and return to movie list" +msgstr "" + +# +msgid "Yes, do a manual scan now" +msgstr "Kyllä, tee manuaalihaku nyt" + +# +msgid "Yes, do an automatic scan now" +msgstr "Kyllä, tee automaattihaku nyt" + +# +msgid "Yes, do another manual scan now" +msgstr "Kyllä, tee toinen manuaalihaku nyt" + +# +msgid "Yes, perform a shutdown now." +msgstr "Kyllä, sammuta nyt." + +# +msgid "Yes, restore the settings now" +msgstr "Kyllä, palauta asetukset nyt" + +# +msgid "Yes, returning to movie list" +msgstr "Kyllä, palataan tallenneluetteloon" + +msgid "Yesterday" +msgstr "Eilen" + +#, python-format +msgid "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" +msgstr "" +"Sinulla on jo kanavalista asennettu,\n" +"haluatko poistaa\n" +"\"%s\"?" + +# +msgid "You can cancel the installation." +msgstr "Voi keskeyttää asennuksen." + +# +msgid "You can cancel the removal." +msgstr "Voit keskeyttää poiston." + +msgid "You can continue watching TV etc. while this is running." +msgstr "Voit jatkaa TV:n katselua sillä aikaa kun tätä suoritetaan" + +# +msgid "You can install this plugin." +msgstr "Voit asentaa tämän lisäosan." + +msgid "You can only burn receiver recordings!" +msgstr "Sinä voit polttaa ainoastaan vastaanottimesi nauhoituksia!" + +# +msgid "You can remove this plugin." +msgstr "Voit poistaa tämän lisäosan." + +# +msgid "You cannot delete this!" +msgstr "Et voi poistaa tätä!" + +msgid "You didn't select a channel to record from." +msgstr "Et valinnut tallennuskanavaa." + +# +msgid "You have chosen to backup your settings. Please press OK to start the backup now." +msgstr "Valitsit asetusten varmuuskopioinnin. Aloita painamalla OK-näppäintä." + +# +msgid "You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased." +msgstr "Olet valinnut .NFI-päivitysohjelman asennuksen USB-muistille. Tämä toiminto osioi USB-muistin ja tuhoaa siltä kaikki tiedostot." + +# +msgid "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." +msgstr "Valitsit asetusten palautuksen. Enigma2 käynnistyy uudelleen palautuksen jälkeen. Aloita painamalla OK-näppäintä." + +# +#, python-format +msgid "You have to wait %s!" +msgstr "Sinun täytyy odottaa %s!" + +msgid "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." +msgstr "" +"Tarvitset PC:ltä yhteyden vastaanottimeesi. Jos tarvitset lisäohjeita, vieraile verkkosivulla http://www.dm7025.de.\n" +"Vastaanottimesi pysäytetään nyt. Kun olet suorittanut päivityksen verkkosivun päivitysohjeen mukaan, vastaanottimesi uusi ohjelmisto kysyy sinulta asetusten palauttamista." + +msgid "You system does not support ext4" +msgstr "Järjetelmä ei tue ext4-tiedostojärjestelmää" + +# +msgid "Your backup succeeded. We will now continue to explain the further upgrade process." +msgstr "Varmuuskopiointi onnistui. Päivitys jatkuu eteenpäin." + +msgid "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" +msgstr "Tallenteet eivät mahdu yksipuoliselle DVD:lle, tarvitset tyhjän dual layer DVD-levyn." + +msgid "Your current collection will get lost!" +msgstr "Nykyinen kokoelma häviää!" + +msgid "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." +msgstr "" +"Etuprosessorin ohjelmisto on päivitettävä.\n" +"Paina OK aloittaaksesi päivityksen." + +msgid "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Etuprosessorin ohjelmisto päivitetään.\n" +"Odota kunnes viritin käynnistyy uudellee\n" +"Tämä saattaa kestää muutaman minuutin" + +# +msgid "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." +msgstr "" +"Lähiverkkoyhteys ei toimi!\n" +"Valitse mitä haluat tehdä seuraavaksi." + +#, python-format +msgid "Your internet connection is working (ip: %s)" +msgstr "Internet yhteytesi toimii (ip: %s)" + +# +msgid "Your network configuration has been activated." +msgstr "Verkkoasetukset on aktivoitu." + +msgid "Your receiver does not have an internet connection" +msgstr "Vastaanottimellasi ei ole internet yhteyttä" + +msgid "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" +msgstr "" +"Vastaanottimesi on nyt valmis käyttöön.\n" +"\n" +"Internet yhteytesi toimii.\n" +"\n" + +msgid "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Vastaanottimesi on valmiina käyttöön.\n" +"\n" +"Internet yhteytesi toimii nyt.\n" +"\n" +"Paina OK jatkaaksesi." + +msgid "Your receiver is rebooting" +msgstr "Vastaanotin käynnistyy uudelleen" + +msgid "Your receiver is shutting down" +msgstr "Vastaanotin sammutetaan" + +msgid "Your receiver is shutting down. Please stand by..." +msgstr "Vastaanotintasi sammutetaan. Odota..." + +msgid "Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver." +msgstr "Vastaanottimesi saattaa olla nyt poissa käytöstä. Lue käsikirjasta lisäohjeita ennenkuin uudelleenkäynnistät vastaanottimesi." + +msgid "Your receiver will got to stand by due to the sleeptimer." +msgstr "Uniajastin laittaa vastaanottimesi valmiustilaan." + +msgid "Your receiver will got to standby due to inactivity." +msgstr "Käyttämättömyysajastin laittaa vastaanottimesi valmiustilaan." + +msgid "Your receiver will restart after pressing OK on your remote control." +msgstr "Vastaanottimesi uudelleenkäynnistyy kun painat OK näppäintä kaukosäätimessäsi." + +# +msgid "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." +msgstr "" +"WLAN-yhteyttä ei voitu käynnistää!\n" +"Oletko kytkenyt USB WLAN-tikun?\n" +"\n" +"Valitse mitä haluat tehdä seuraavaksi." + +msgid "Zap" +msgstr "Kanavanvaihto" + +msgid "Zap back to previously tuned service?" +msgstr "Palataanko aikaisemmalle kanavalle?" + +msgid "Zap back to service before positioner setup?" +msgstr "" +"Vaihdetaanko takaisin kanavalle, jota katsottiin\n" +"ennen moottoriasetuksien muutosta?" + +msgid "Zap back to service before tuner setup?" +msgstr "" +"Vaihdetaanko takaisin kanavalle, jota katsottiin\n" +"ennen viritinasetuksien muutosta?" + +msgid "Zap focus to Picture in Picture" +msgstr "Kanavavaihto PiP-kuvassa" + +msgid "Zap focus to main screen" +msgstr "Kanavavaihto pääkuvassa" + +msgid "Zap mode" +msgstr "Kanavanvaihdon toiminta" + +msgid "Zap to selected channel" +msgstr "Vaihda valitulle kanavalle" + +msgid "Zap to selected channel, or show detailed event info (depends on configuration)" +msgstr "Katso valittua kanavaa tai näytä laajempi ohjelmatieto (riippuen asetuksistasi)" + +# +msgid "[alternative edit]" +msgstr "[Vaihtoehtojen lisäys ja poisto]" + +# +msgid "[bouquet edit]" +msgstr "[Kanavalistojen lisäys ja poisto]" + +# +msgid "[favourite edit]" +msgstr "[Suosikkien lisäys ja poisto]" + +# +msgid "[move mode]" +msgstr "[Suosikkien järjestely]" + +msgid "a gui to assign services/providers to common interface modules" +msgstr "Käyttöliittymä kanavien/palvelutarjoajien määrittämiseen CI-moduuleille" + +msgid "a gui to assign services/providers/caids to common interface modules" +msgstr "Käyttöliittymä kanavien/palvelutarjoajien/CAId:en määrittämiseen CI-moduuleille" + +# +msgid "abort alternatives edit" +msgstr "Peruuta muutokset ja poistu" + +# +msgid "abort bouquet edit" +msgstr "Peruuta muutokset ja poistu" + +# +msgid "abort favourites edit" +msgstr "Peruuta muutokset ja poistu" + +# +msgid "about to start" +msgstr "alkaa juuri" + +msgid "activate network adapter configuration" +msgstr "aktivoi verkkosovittimen asetukset" + +# +msgid "add alternatives" +msgstr "Vaihtoehtoisten kanavien lisäys" + +# +msgid "add bookmark" +msgstr "lisää kirjanmerkki" + +# +msgid "add bouquet" +msgstr "Lisää uusi suosikkilista" + +# +msgid "add marker" +msgstr "Lisää väliotsikko" + +# +msgid "add service to bouquet" +msgstr "Lisää kanava suosikkilistalle" + +# +msgid "add service to favourites" +msgstr "Lisää kanava suosikkeihin" + +# +msgid "add to parental protection" +msgstr "lisää lapsilukkoon" + +msgid "adult movie/drama" +msgstr "aikuisviihde" + +# +msgid "advanced" +msgstr "Laaja" + +msgid "adventure/western/war" +msgstr "seikkailu/länkkäri/sota" + +msgid "advertisement/shopping" +msgstr "mainos/ostos" + +msgid "after " +msgstr "Kun kulunut " + +# +msgid "alphabetic" +msgstr "Aakkosjärjestys (hakemistot ensin)" + +msgid "alphabetic reverse" +msgstr "Aakkosittain käänteinen (hakemistot ensin)" + +# +msgid "alternative" +msgstr "Vaihtoehtoinen" + +msgid "always" +msgstr "" + +msgid "and select next channel" +msgstr "" + +msgid "and select previous channel" +msgstr "" + +msgid "arts/culture (without music, general)" +msgstr "taide/kulttuuri (ilman musiikkia, yleinen)" + +msgid "arts/culture magazine" +msgstr "taide/kulttuuri makasiini" + +msgid "athletics" +msgstr "yleisurheilu" + +# +msgid "audio tracks" +msgstr "ääniraidat" + +# +msgid "auto" +msgstr "autom." + +# +msgid "automatic" +msgstr "automaattinen" + +# +# Tämä teksti näytetään monessa valikossa EXIT-napin +# kaltaisena poistumistoimintona. +msgid "back" +msgstr "takaisin" + +# +msgid "background image" +msgstr "taustakuva" + +msgid "ballet" +msgstr "baletti" + +#, python-format +msgid "bc%s" +msgstr "bc%s" + +# +msgid "better" +msgstr "parempi" + +# +msgid "black" +msgstr "musta" + +msgid "black & white" +msgstr "mustavalkoinen" + +# +msgid "blacklist" +msgstr "kielletyt" + +# +msgid "blue" +msgstr "sininen" + +msgid "broadcasting/press" +msgstr "lähetys/lehdistö" + +# +msgid "by date" +msgstr "Aikajärjestys" + +msgid "cartoon/puppets" +msgstr "piirretty/nukke" + +msgid "center" +msgstr "keskellä" + +msgid "centered" +msgstr "Keskitetty" + +msgid "centered, wrapped" +msgstr "Keskitetty, tiivistetty" + +# +msgid "chapters" +msgstr "kappaleet" + +msgid "childrens's/youth program (general)" +msgstr "lasten/nuorten ohjelma (yleinen)" + +# +msgid "circular left" +msgstr "kiertopolarisaatio vasen" + +# +msgid "circular right" +msgstr "kiertopolarisaatio oikea" + +msgid "comedy" +msgstr "komedia" + +# +msgid "complex" +msgstr "monimutkainen" + +# +msgid "config menu" +msgstr "asetusvalikko" + +# +msgid "confirmed" +msgstr "Vahvistettu" + +# +msgid "connected" +msgstr "Kytketty" + +# +msgid "continue" +msgstr "jatka" + +msgid "cooking" +msgstr "ruuanlaitto" + +# +msgid "copy to bouquets" +msgstr "kopioi suosikkilistalle" + +# +msgid "create directory" +msgstr "Luo hakemisto" + +#, python-format +msgid "currently installed image: %s" +msgstr "nykyinen ohjelmisto: %s" + +# +msgid "daily" +msgstr "joka päivä" + +# +msgid "day" +msgstr "päivä" + +# +msgid "default" +msgstr "Oletus" + +# +msgid "delete cut" +msgstr "Poista leikkausmääritys" + +# +# Teksti esiintyy vain tallenteiden käsittelyvalikossa +# Kolme pistettä ovat turhia, tästä aukeaa vain +# varmistusikkuna, ei alivalikkoa tai asetusruutua. +msgid "delete..." +msgstr "Poista..." + +msgid "descramble and record ecm" +msgstr "pura salaus ja tallenna" + +msgid "detective/thriller" +msgstr "salapoliisi/jännitys" + +# +msgid "disable" +msgstr "Pois" + +# +msgid "disable move mode" +msgstr "Poistu siirtotilasta" + +# +msgid "disabled" +msgstr "Pois päältä" + +# +msgid "disconnected" +msgstr "Ei kytketty" + +msgid "discussion/interview/debate" +msgstr "keskustelu/haastattelu/väittely" + +# +msgid "do nothing" +msgstr "älä tee mitään" + +msgid "documentary" +msgstr "dokumentti" + +msgid "don't descramble, record ecm" +msgstr "älä pura, tallenna salattuna" + +# +msgid "done!" +msgstr "tallennettu" + +msgid "east" +msgstr "itä" + +msgid "economics/social advisory" +msgstr "talous/sosiaalinen neuvonta" + +# +msgid "edit alternatives" +msgstr "Vaihtoehtoisten kanavien lisäys ja poisto" + +msgid "education/science/factual topics (general)" +msgstr "koulutus/tiede/tosiasiat (yleinen)" + +# +msgid "empty" +msgstr "tyhjä" + +# +msgid "enable" +msgstr "Päällä" + +# +msgid "enable bouquet edit" +msgstr "Kanavalistojen lisäys ja poisto" + +# +msgid "enable favourite edit" +msgstr "Suosikkien lisäys ja poisto" + +# +msgid "enable move mode" +msgstr "Suosikkien järjestely" + +# +msgid "enabled" +msgstr "Päällä" + +# +msgid "end alternatives edit" +msgstr "tallenna muutokset ja poistu" + +# +msgid "end bouquet edit" +msgstr "tallenna muutokset ja poistu" + +# +msgid "end cut here" +msgstr "lopeta leikkaus tähän" + +# +msgid "end favourites edit" +msgstr "tallenna muutokset ja poistu" + +msgid "entertainment (10-16 year old)" +msgstr "viihde (10-16 vuotiaille)" + +msgid "entertainment (6-14 year old)" +msgstr "viihde (6-14 vuotiaille)" + +# +msgid "equal to" +msgstr "sama kuin" + +msgid "equestrian" +msgstr "ratsastus" + +# +msgid "exit DVD player or return to file browser" +msgstr "poistu DVD-soittimesta tai palaa tiedostonhallintaan" + +# +msgid "exit movielist" +msgstr "Poistu tallenneluettelosta" + +# +msgid "exit network adapter configuration" +msgstr "poistu verkkosovittimen asetuksista" + +# +msgid "exit networkadapter setup menu" +msgstr "poistu verkkosovittimen asetusvalikosta" + +msgid "experimental film/video" +msgstr "kokeellinen elokuva/video" + +msgid "false" +msgstr "epätosi" + +msgid "fashion" +msgstr "muoti" + +# +msgid "fileformats (BMP, PNG, JPG, GIF)" +msgstr "tiedostomuodot (BMP, PNG, JPG, GIF)" + +# +msgid "filename" +msgstr "tiedostonimi" + +msgid "film/cinema" +msgstr "elokuva" + +msgid "fine arts" +msgstr "kuvataide" + +# +msgid "fine-tune your display" +msgstr "hienosäädä näyttöä" + +msgid "fitness & health" +msgstr "kuntoilu ja terveys" + +# +msgid "flat alphabetic" +msgstr "Aakkosjärjestys" + +msgid "flat alphabetic reverse" +msgstr "Käänteinen aakkosjärjestys" + +msgid "folk/traditional music" +msgstr "kansan/perinteinen musiikki" + +msgid "football/soccer" +msgstr "jalkapallo" + +msgid "foreign countries/expeditions" +msgstr "ulkomaat/tutkimusmatkat" + +# +msgid "forward to the next chapter" +msgstr "eteenpäin seuraavaan kappaleeseen" + +# +msgid "free" +msgstr "vapaana" + +msgid "from" +msgstr "" + +msgid "further education" +msgstr "jatkokoulutus" + +msgid "game show/quiz/contest" +msgstr "visailu/tietovisa/kilpailu" + +msgid "gardening" +msgstr "puutarhanhoito" + +# +msgid "go to deep standby" +msgstr "siirry virransäästötilaan" + +# +msgid "go to standby" +msgstr "siirry valmiustilaan" + +# +msgid "grab this frame as bitmap" +msgstr "tallenna tämä ruutu kuvatiedostoksi" + +# +msgid "green" +msgstr "Vihreä" + +msgid "handicraft" +msgstr "käsityö" + +msgid "height" +msgstr "korkeus" + +# +msgid "help..." +msgstr "apua..." + +# +msgid "horizontal" +msgstr "horisontaali" + +msgid "information/education/school program" +msgstr "tiedotus/koulutus/koulu ohjelma" + +# +msgid "init module" +msgstr "alusta moduuli" + +# +msgid "init modules" +msgstr "alusta moduulit" + +# +msgid "insert mark here" +msgstr "aseta merkki tähän" + +msgid "invalid type" +msgstr "epäkelpo tyyppi" + +msgid "jazz" +msgstr "jazz" + +# +msgid "jump back to the previous title" +msgstr "hyppää taaksepäin edelliseen kappaleeseen" + +# +msgid "jump forward to the next title" +msgstr "hyppää eteenpäin seuraavaan kappaleeseen" + +msgid "languages" +msgstr "kielet" + +# +msgid "leave movie player..." +msgstr "poistu videotoistimesta..." + +# +msgid "left" +msgstr "Vasen" + +msgid "left, wrapped" +msgstr "Vasen, tiivistetty" + +msgid "leisure hobbies (general)" +msgstr "vapaa-ajan harrastukset (yleinen)" + +# +msgid "length" +msgstr "pituus" + +msgid "limit ..., aborting !" +msgstr "raja ..., keskeytetään!" + +# +msgid "list style compact" +msgstr "Luettelon tyyli: Tiivistetty" + +# +msgid "list style compact with description" +msgstr "Luettelon tyyli: Tiivistetty kuvaustekstillä" + +# +msgid "list style default" +msgstr "Luettelon tyyli: Vakio" + +# +msgid "list style single line" +msgstr "Luettelon tyyli: yksi rivi" + +msgid "literature" +msgstr "kirjallisuus" + +msgid "live broadcast" +msgstr "suora lähetys" + +# +msgid "locked" +msgstr "lukittu" + +# +msgid "loopthrough to" +msgstr "Läpisyöttö" + +msgid "magazines/reports/documentary" +msgstr "makasiini/raportti/dokumentti" + +# +msgid "manual" +msgstr "manuaalinen" + +msgid "martial sports" +msgstr "kamppailulajit" + +msgid "medicine/physiology/psychology" +msgstr "lääketiede/fysiologia/psykologia" + +# +msgid "menu" +msgstr "Valikko" + +# +msgid "mins" +msgstr "minuuttia" + +# +msgid "minutes" +msgstr "minuuttia" + +# +msgid "month" +msgstr "kuukausi" + +msgid "motor sport" +msgstr "moottoriurheilu" + +msgid "motoring" +msgstr "autoilu" + +# +msgid "move down to last entry" +msgstr "siirry viimeiseen kohtaan" + +# +msgid "move down to next entry" +msgstr "siirry seuraavaan kohtaan" + +# +msgid "move up to first entry" +msgstr "siirry ensimmäiseen kohtaan" + +# +msgid "move up to previous entry" +msgstr "siirry edelliseen kohtaan" + +msgid "movie/drama (general)" +msgstr "elokuva/draama (yleinen)" + +# +msgid "multinorm" +msgstr "moninormi" + +msgid "music/ballet/dance (general)" +msgstr "musiikki/baletti/tanssi (yleinen)" + +msgid "musical/opera" +msgstr "musikaali/ooppera" + +msgid "nature/animals/environment" +msgstr "luonto/eläimet/ympäristö" + +# +msgid "never" +msgstr "ei koskaan" + +msgid "new media" +msgstr "uusmedia" + +msgid "news magazine" +msgstr "uutismakasiini" + +msgid "news/current affairs (general)" +msgstr "uutiset/ajankohtaisohjelmat (yleinen)" + +msgid "news/weather report" +msgstr "uutiset/sää" + +# +msgid "no" +msgstr "Ei" + +# +msgid "no CAId selected" +msgstr "Ei CAId:tä valittu" + +# +msgid "no CI slots found" +msgstr "CI-portteja ei löytynyt" + +# +msgid "no module found" +msgstr "(ei CA-moduulia)" + +msgid "no storage devices found" +msgstr "tallennusvälineitä ei löytynyt" + +# +msgid "none" +msgstr "ei mitään" + +msgid "normal" +msgstr "normaali" + +# +msgid "not configured" +msgstr "ei määritetty" + +# +msgid "not locked" +msgstr "ei lukittu" + +msgid "not supported" +msgstr "ei tuettu" + +# +msgid "not used" +msgstr "ei käyt." + +# +msgid "nothing connected" +msgstr "Ei kytketty" + +# +msgid "of a DUAL layer medium used." +msgstr "DL-DVD-levystä käytetty." + +# +msgid "of a SINGLE layer medium used." +msgstr "DVD-levystä käytetty." + +# +msgid "off" +msgstr "Pois" + +msgid "offset is" +msgstr "erotus on" + +# +msgid "on" +msgstr "Päällä" + +# +msgid "on READ ONLY medium." +msgstr "vain-luku levystä." + +msgid "on end of movie" +msgstr "Tallenteen lopussa" + +# +msgid "once" +msgstr "kerran" + +msgid "only from deep standby" +msgstr "" + +msgid "only from standby" +msgstr "" + +msgid "open EPG..." +msgstr "" + +msgid "open Info..." +msgstr "" + +# +msgid "open nameserver configuration" +msgstr "avaan nimipalvelimen asetus" + +msgid "original" +msgstr "Alkuperäinen" + +msgid "original language" +msgstr "Alkuperäinen kieli" + +# +msgid "pass" +msgstr "hyväksytty" + +msgid "performing arts" +msgstr "esittävä taide" + +msgid "play as picture in picture" +msgstr "Toista kuva-kuvassa (PiP)" + +msgid "play in mainwindow" +msgstr "toista pääikkunassa" + +# +msgid "please press OK when ready" +msgstr "paina OK kun olet valmis" + +# +msgid "please wait, loading picture..." +msgstr "kuvaa ladataan. Odota..." + +msgid "popular culture/traditional arts" +msgstr "populäärikulttuuri/perinteinen taide" + +msgid "pre-school children's program" +msgstr "esikouluikäisten lasten ohjelma" + +msgid "receiver software because updates are available." +msgstr "vastaanottimen ohjelmisto, koska päivityksiä on saatavilla." + +# +msgid "record" +msgstr "tallennus" + +# +msgid "recording..." +msgstr "tallennetaan..." + +# +msgid "red" +msgstr "Punainen" + +msgid "religion" +msgstr "uskonto" + +msgid "remarkable people" +msgstr "merkittäviä ihmisiä" + +# +msgid "remove after this position" +msgstr "Poista tämän kohdan jälkeen" + +# +msgid "remove all alternatives" +msgstr "Poista kaikki vaihtoehtoiset kanavat" + +# +msgid "remove all new found flags" +msgstr "Poista kaikki uusi kanava-liput" + +# +msgid "remove before this position" +msgstr "Poista kaikki ennen tätä kohtaa" + +# +msgid "remove bookmark" +msgstr "Poista kirjanmerkki" + +# +msgid "remove directory" +msgstr "Poista hakemisto" + +# +msgid "remove entry" +msgstr "Poista valittu" + +# +msgid "remove from parental protection" +msgstr "Poista lapsilukosta" + +# +msgid "remove new found flag" +msgstr "Poista uusi kanava-lippu" + +# +msgid "remove selected satellite" +msgstr "Poista valittu satelliitti" + +# +msgid "remove this mark" +msgstr "Poista tämä merkki" + +# +msgid "rename entry" +msgstr "Uudelleennimeä valittu" + +# +msgid "repeat playlist" +msgstr "toista soittolista" + +# +msgid "repeated" +msgstr "useita kertoja" + +msgid "reverse by date" +msgstr "Käänteinen päivän mukaan" + +# +msgid "rewind to the previous chapter" +msgstr "kelaa edelliseen kappaleeseen" + +# +msgid "right" +msgstr "Oikea" + +msgid "right, wrapped" +msgstr "Oikea, tiivistetty" + +msgid "rock/pop" +msgstr "rock/pop" + +msgid "romance" +msgstr "romantiikka" + +# +msgid "save last directory on exit" +msgstr "tallenna viimeisin hakemisto suljettaessa" + +# +msgid "save playlist on exit" +msgstr "tallenna soittolista suljettaessa" + +# +msgid "scan state" +msgstr "haun tila" + +msgid "science fiction/fantasy/horror" +msgstr "scifi/fantasia/kauhu" + +# +msgid "second cable of motorized LNB" +msgstr "kääntyvän antennin twin-LNB:n toinen kaapeli" + +# +msgid "seconds" +msgstr "sekuntia" + +# +msgid "select" +msgstr "valitse" + +# +msgid "select CAId's" +msgstr "valitse CAId:t" + +msgid "select EPG..." +msgstr "" + +msgid "select Info..." +msgstr "" + +# +msgid "select menu entry" +msgstr "valitse valikon kohta" + +# +msgid "select movie" +msgstr "Valitse tallenne" + +# +msgid "select the movie path" +msgstr "Valitse tallennehakemisto" + +msgid "serious music/classic music" +msgstr "vakava musiikki/klassinen musiikki" + +msgid "serious/classical/religious/historical movie/drama" +msgstr "vakava/klassinen/uskonnollinen/historiallinen elokuva/draama" + +msgid "service PIN" +msgstr "Kanavan PIN" + +msgid "set as startup service" +msgstr "Aseta käynnistyskanavaksi" + +msgid "setup PIN" +msgstr "Määrittele PIN" + +# +msgid "show DVD main menu" +msgstr "Näytä DVD:n päävalikko" + +msgid "show all tags" +msgstr "Näytä kaikki avainsanat" + +# +msgid "show alternatives" +msgstr "Näytä vaihtoehtoiset kanavat" + +# +msgid "show event details" +msgstr "Näytä ohjelman tarkemmat tiedot" + +# +msgid "show extended description" +msgstr "Näytä laajennettu ohjelmakuvaus" + +msgid "show mediaplayer on mainmenu" +msgstr "Näytä Mediasoitin päävalikossa" + +msgid "show softwaremanager in setup menu" +msgstr "Näytä ohjelmistonhallinta asetusvalikossa" + +msgid "show softwaremanager on blue button" +msgstr "Näytä ohjelmistonhallinta sinisestä napista" + +# +msgid "show tag menu" +msgstr "Näytä avainsanavalikko" + +# +msgid "show transponder info" +msgstr "Näytä lähettimen tietoja" + +msgid "show/game show (general)" +msgstr "show/visailu (yleinen)" + +msgid "shuffle" +msgstr "Satunnainen" + +# +msgid "shut down" +msgstr "Sammuta" + +# +msgid "simple" +msgstr "suppea" + +# +msgid "skip backward" +msgstr "siirry taaksepäin" + +# +msgid "skip forward" +msgstr "siirry eteenpäin" + +msgid "soap/melodram/folkloric" +msgstr "saippuasarja/melodraama/folkloristiikka" + +msgid "social/political issues/economics (general)" +msgstr "sosiaaliset/poliittiset aiheet/talous (yleinen)" + +msgid "social/spiritual science" +msgstr "sosiaalinen/hengellinen tiede" + +msgid "sorting of playlists" +msgstr "soittolistojen järjestely" + +# +msgid "special characters" +msgstr "erikoismerkit" + +msgid "special events" +msgstr "erikoistapahtumat" + +msgid "special format data DVD (HDTV compatible)" +msgstr "erikoisformaattinen DVD (HDTV yhteensopiva)" + +msgid "sports (general)" +msgstr "urheilu (yleinen)" + +msgid "sports magazine" +msgstr "urheilumakasiini" + +# +msgid "standard" +msgstr "Vakio" + +# +msgid "start cut here" +msgstr "aloita leikkaus tästä" + +# +msgid "start directory" +msgstr "aloitushakemisto" + +msgid "stepsize" +msgstr "askelkoko" + +# +msgid "stereo" +msgstr "stereo" + +msgid "stop using as startup service" +msgstr "lopeta käyttämästä käynnistyskanavana" + +# +msgid "switch to bookmarks" +msgstr "vaihda kirjanmerkkeihin" + +# +msgid "switch to filelist" +msgstr "vaihda tiedostoluetteloon" + +# +msgid "switch to the next angle" +msgstr "vaihda seuraavaan kuvakulmaan" + +# +msgid "switch to the next audio track" +msgstr "vaihda seuraavalle ääniraidalle" + +# +msgid "switch to the next subtitle language" +msgstr "vaihda seuraavalle tekstityskielelle" + +msgid "talk show" +msgstr "keskusteluohjelma" + +msgid "team sports" +msgstr "joukkueurheilu" + +msgid "technology/natural science" +msgstr "teknologia/luonnontiede" + +# +msgid "template file" +msgstr "Mallitiedosto" + +msgid "tennis/squash" +msgstr "tennis/squash" + +# +msgid "this recording" +msgstr "tämä tallennus" + +# +msgid "this service is protected by a parental control pin" +msgstr "tämä kanava on suojattu lapsilukolla" + +# +msgid "toggle time, chapter, audio, subtitle info" +msgstr "valitse aika, kappale, ääni, tekstitys" + +msgid "top" +msgstr "ylä" + +msgid "tourism/travel" +msgstr "turismi/matkailu" + +msgid "true" +msgstr "tosi" + +# +msgid "unavailable" +msgstr "ei saatavilla" + +# +msgid "unconfirmed" +msgstr "Vahvistamaton" + +msgid "undefined" +msgstr "määrittämätön" + +# +msgid "unknown" +msgstr "tuntematon" + +# +msgid "unknown service" +msgstr "tuntematon kanava" + +msgid "unpublished" +msgstr "julkaisematon" + +# +msgid "until standby/restart" +msgstr "valmiustilaan/uudelleenkäynnistykseen asti" + +# +msgid "user defined" +msgstr "käyttäjän määrittelemä" + +msgid "variety show" +msgstr "varietee" + +# +msgid "vertical" +msgstr "vertikaali" + +# +msgid "wait for ci..." +msgstr "Odotetaan ci:tä..." + +# +msgid "wait for mmi..." +msgstr "Odotetaan mmi:tä..." + +# +msgid "waiting" +msgstr "Odottaa" + +msgid "water sport" +msgstr "vesiurheilu" + +# +msgid "weekly" +msgstr "viikoittain" + +msgid "west" +msgstr "länsi" + +msgid "when PiPzap enabled zap channel down..." +msgstr "" + +msgid "when PiPzap enabled zap channel up..." +msgstr "" + +msgid "white" +msgstr "Valkoinen" + +# +msgid "whitelist" +msgstr "hyväksytyt" + +msgid "width" +msgstr "leveys" + +msgid "winter sport" +msgstr "talviurheilu" + +msgid "wireless network interface" +msgstr "WLAN-yhteys" + +#, python-format +msgid "with %d error" +msgid_plural "with %d errors" +msgstr[0] "%d virhe" +msgstr[1] "%d virhettä" + +# +msgid "working" +msgstr "työskentelee" + +# +msgid "yellow" +msgstr "Keltainen" + +# +msgid "yes" +msgstr "Kyllä" + +# +msgid "yes (keep feeds)" +msgstr "Kyllä (pidä feedit)" + +# +msgid "zap" +msgstr "Kanavanvaihto" + +# +msgid "zap and record" +msgstr "Katso ja tallenna" + +# +msgid "zapped" +msgstr "Vaihdettu" + +# +#~ msgid "" +#~ "\n" +#~ "System will restart after the restore!" +#~ msgstr "" +#~ "\n" +#~ "Järjestelmä käynnistyy uudelleen palautuksen jälkeen!" + +# +#~ msgid " wireless networks found!" +#~ msgstr "WLAN-verkkoja löytyi!" + +# +#~ msgid "/usr/share/enigma2 directory" +#~ msgstr "/usr/share/enigma2-hakemisto" + +# +#~ msgid "/var directory" +#~ msgstr "”/var”-hakemisto" + +#~ msgid "A demo plugin for TPM usage." +#~ msgstr "Demo-lisäosa TPM:n käyttöön" + +# +#~ msgid "AA" +#~ msgstr "AA" + +# +#~ msgid "AB" +#~ msgstr "AB" + +# +#~ msgid "AC3 downmix" +#~ msgstr "AC3 muunnos stereoksi" + +# +#~ msgid "Action:" +#~ msgstr "Toiminto:" + +#~ msgid "Activate PiP" +#~ msgstr "Aktivoi PiP-kuva" + +# +#~ msgid "Add WLAN configuration?" +#~ msgstr "Lisää tiedot WLAN-verkosta?" + +# +#~ msgid "Add network configuration?" +#~ msgstr "Lisää tiedot lähiverkosta?" + +#~ msgid "Add/remove timer for current event" +#~ msgstr "Lisää/poista ajastus tähän ohjelmaan" + +# +#~ msgid "Adds network configuration if enabled." +#~ msgstr "Jos valittu, lisätään tiedot lähiverkosta." + +# +#~ msgid "Adds wlan configuration if enabled." +#~ msgstr "Jos valittu, lisätään tiedot WLAN-verkosta." + +#~ msgid "Adjust HDMI CEC settings" +#~ msgstr "Säädä HDMI CEC-asetuksia" + +#~ msgid "After pressing OK, please wait!" +#~ msgstr "Odota OK:n painamisen jälkeen" + +# +#~ msgid "All satellites" +#~ msgstr "Kaikki satelliitit" + +# +#~ msgid "Always ask before sending" +#~ msgstr "Kysy aina ennen lähettämistä" + +#~ msgid "And will shutdown your receiver over " +#~ msgstr "Ja sammuttaa vastaanottimen yli" + +# +#~ msgid "Anonymize crashlog?" +#~ msgstr "Anonyymi kaatumisloki?" + +# +#~ msgid "" +#~ "Are you sure you want to restore\n" +#~ "following backup:\n" +#~ msgstr "" +#~ "Oletko varma, että haluat palauttaa seuraavan\n" +#~ "varmuuskopion:\n" + +#~ msgid "Auto-focus" +#~ msgstr "Automaattikohdistus" + +# +#~ msgid "BA" +#~ msgstr "BA" + +# +#~ msgid "BB" +#~ msgstr "BB" + +# +#~ msgid "Backup" +#~ msgstr "Luo" + +# +#~ msgid "Backup Location" +#~ msgstr "Mihin tallennetaan" + +# +#~ msgid "Backup Mode" +#~ msgstr "Mitä tallennetaan" + +# +#~ msgid "Backup done." +#~ msgstr "Varmuuskopiointi suoritettu." + +# +#~ msgid "Behavior of 'pause' when paused" +#~ msgstr "Pause-näppäimen toiminto" + +# +#~ msgid "By pressing the OK Button on your remote control, the info bar is being displayed." +#~ msgstr "Painamalla kaukosäätimen OK-näppäintä, näet tietopalkin." + +# +#~ msgid "CF Drive" +#~ msgstr "CompactFlash-kortti" + +# +#~ msgid "Choose Tuner" +#~ msgstr "Valitse viritin" + +#~ msgid "Choose a wireless network" +#~ msgstr "Valitse WLAN-verkko" + +# +#~ msgid "Choose bouquet" +#~ msgstr "Valitse suosikkilista" + +# +#~ msgid "Choose upgrade source" +#~ msgstr "Valitse päivityslähde" + +# +#~ msgid "Choose your Skin" +#~ msgstr "Valitse teema" + +# +#~ msgid "Cleanup Wizard" +#~ msgstr "Puhdistusavustaja" + +# +#~ msgid "Cleanup Wizard settings" +#~ msgstr "Puhdistusavustajan asetukset" + +# +#~ msgid "CleanupWizard" +#~ msgstr "Puhdistusavustaja" + +# +#~ msgid "Committed DiSEqC command" +#~ msgstr "Committed DiSEqC-käsky" + +#~ msgid "CommonInterface" +#~ msgstr "Common Interface" + +# +#~ msgid "Configuration Mode" +#~ msgstr "Toimintatila" + +#~ msgid "Configure if and how service type icons will be shown." +#~ msgstr "Määrittele näytetäänkö ja kuinka näytetään kanavatyypin kuvakkeet" + +#~ msgid "Configure if service picons will be shown in the servicelist." +#~ msgstr "Määrittele näytetäänkö kanavalogot kanavalistassa. " + +#~ msgid "Configure the behavior of the 'pause' key when movie playback is already paused." +#~ msgstr "Määrittää 'Tauko' näppäimen toiminnan kun tallenteen toisto on jo taukotilassa." + +#~ msgid "Configure the duration in hours and action, which could be shut down or standby, when the receiver is not controlled." +#~ msgstr "Määrittele kesto tunneissa ja toiminta, mikä voi olla sammuta tai aseta valmiustilaan, kun vastaanottimella ei tehdä mitään." + +#~ msgid "Configure the duration in minutes and action, which could be shut down or standby, for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +#~ msgstr "Määrittele uniajastimelle kesto minuuteissa ja toiminta, mikä voi olla sammuta tai aseta valmiustilaan.Valitse tämä rivi ja paina OK tai vihreää nappia käynnistääksesi tai sammuttaksesi uniajastimen." + +# +#~ msgid "Confirm shutdown:" +#~ msgstr "Kysy varmistus ennen sammutusta:" + +# +#~ msgid "Crashlog settings" +#~ msgstr "Kaatumislokin asetukset" + +# +#~ msgid "CrashlogAutoSubmit" +#~ msgstr "Kaatumislokien automaattilähetys" + +# +#~ msgid "CrashlogAutoSubmit settings" +#~ msgstr "Kaatumislokien automaattilähetys" + +# +#~ msgid "CrashlogAutoSubmit settings..." +#~ msgstr "Kaatumislokien automaattilähetys..." + +#~ msgid "Custom text position" +#~ msgstr "Muokattu tekstin paikka" + +#~ msgid "DTS downmix" +#~ msgstr "DTS muunnos stereoksi" + +# +#~ msgid "Decide if you want to enable or disable the Cleanup Wizard." +#~ msgstr "Valitse haluatko ottaa puhdistusavustajan käyttöön." + +# +#~ msgid "Decide what should be done when crashlogs are found." +#~ msgstr "Valitse mitä tehdään kun kaatumislokeja löytyy." + +# +#~ msgid "Decide what should happen to the crashlogs after submission." +#~ msgstr "Valitse mitä kaatumislokeille tehdään lähettämisen jälkeen." + +# +#~ msgid "Delete crashlogs" +#~ msgstr "Poista kaatumislokit" + +# +#~ msgid "" +#~ "Delete no more configured satellite\n" +#~ "%s?" +#~ msgstr "" +#~ "Poistetaanko ei määritelty satelliitti\n" +#~ "%s?" + +# +#~ msgid "DiSEqC repeats" +#~ msgstr "DiSEqC-toistoja" + +# +#~ msgid "Disable crashlog reporting" +#~ msgstr "Raportointi pois käytöstä" + +# +#~ msgid "Dish" +#~ msgstr "Antenni" + +# +#~ msgid "" +#~ "Do you really want to REMOVE\n" +#~ "the plugin \"%s\"?" +#~ msgstr "" +#~ "Haluatko poistaa\n" +#~ "lisäosan \"%s\"?" + +# +#~ msgid "" +#~ "Do you want to backup now?\n" +#~ "After pressing OK, please wait!" +#~ msgstr "" +#~ "Haluatko luoda varmuuskopion?\n" +#~ "Paina OK ja odota!" + +# +#~ msgid "Do you want to submit your email address and name so that we can contact you if needed?" +#~ msgstr "Haluatko lähettää sähköpostiosoitteesi ja nimesi mahdollista yhteydenottoa varten?" + +# +#~ msgid "Do you want to view a tutorial?" +#~ msgstr "Haluatko katsoa opasohjelman?" + +# +#~ msgid "Don't ask, just send" +#~ msgstr "Lähetä ilman kysymystä" + +# +#~ msgid "Done - Installed or upgraded %d packages" +#~ msgstr "Valmis - asennettu tai päivitetty %d lisäosaa" + +# +#~ msgid "Edit Title" +#~ msgstr "Editoi" + +# +#~ msgid "Enable Cleanup Wizard?" +#~ msgstr "Käytä puhdistusavustajaa?" + +# +#~ msgid "Enable timer" +#~ msgstr "Ajastin päälle" + +# +#~ msgid "EndTime" +#~ msgstr "Lopetusaika" + +#~ msgid "" +#~ "Enigma2 Skinselector\n" +#~ "\n" +#~ "If you experience any problems please contact\n" +#~ "stephan@reichholf.net\n" +#~ "\n" +#~ "© 2006 - Stephan Reichholf" +#~ msgstr "" +#~ "Enigma2 teemavalitsin\n" +#~ "\n" +#~ "Ongelmatapauksissa ota yhteyttä\n" +#~ "stephan@reichholf.net\n" +#~ "\n" +#~ "© 2006 - Stephan Reichholf" + +# +#~ msgid "Enter your email address so that we can contact you if needed." +#~ msgstr "Syötä sähköpostiosoitteesi jotta voimme tarvittaessa ottaa yhteyttä." + +# +#~ msgid "Exit the cleanup wizard" +#~ msgstr "Lopeta puhdistusavustaja" + +# +# Ohjatun asennustoiminnon kakkosruudun valintateksti +#~ msgid "Exit wizard" +#~ msgstr "Poistu (määritä kaikki asetukset käsin)" + +#~ msgid "For more information see www.openpli.org" +#~ msgstr "Lisätietoja katso www.openpli.org" + +#~ msgid "General AC3 delay (ms)" +#~ msgstr "AC3-viive (ms)" + +#~ msgid "General PCM delay (ms)" +#~ msgstr "PCM-viive (ms)" + +#~ msgid "Goto specific data/time" +#~ msgstr "Mene määrättyy tietoon/aikaan" + +# +#~ msgid "Guard Interval" +#~ msgstr "Suojaväli" + +# +#~ msgid "How to handle found crashlogs?" +#~ msgstr "Mitä löydetyille lokeille tehdään?" + +# +#~ msgid "Include your email and name (optional) in the mail?" +#~ msgstr "Lisää lähetykseen sähköpostiosoite ja nimi?" + +# +#~ msgid "Install settings, skins, software..." +#~ msgstr "Asenna asetuksia, teemoja, ohjelmistoja..." + +# +#~ msgid "Installation finished." +#~ msgstr "Asennus suoritettu." + +# +#~ msgid "Installing default sat lists... Please wait..." +#~ msgstr "Asennetaan oletussatelliittilistat.. Odota..." + +# +#~ msgid "Installing defaults... Please wait..." +#~ msgstr "Asennetaan oletukset...Odota..." + +# +#~ msgid "Installing package content... Please wait..." +#~ msgstr "Asennetaan paketin sisältö...Odota..." + +#~ msgid "Keep old timers for how many days" +#~ msgstr "Säilytä vanhoja ajastuksia (päivää)" + +#~ msgid "Kill partition table" +#~ msgstr "Poista osiotaulukko" + +# +#~ msgid "LOF" +#~ msgstr "LOF" + +# +#~ msgid "LOF/H" +#~ msgstr "LOF/H" + +# +#~ msgid "LOF/L" +#~ msgstr "LOF/L" + +#~ msgid "Letzeburgesch" +#~ msgstr "Letzeburgesch" + +# +#~ msgid "Mainmenu" +#~ msgstr "Päävalikko" + +# +#~ msgid "Margin after record" +#~ msgstr "Lisäaika tallenteen loppuun (minuuttia)" + +#~ msgid "MediaPlayer" +#~ msgstr "Mediasoitin" + +# +#~ msgid "Memory positions" +#~ msgstr "Muistipaikat" + +# +#~ msgid "Network Setup" +#~ msgstr "Lähiverkon asetukset" + +# +#~ msgid "NetworkWizard" +#~ msgstr "Verkkoavustaja" + +#, fuzzy +#~ msgid "Next" +#~ msgstr "Seuraava" + +# +#~ msgid "No packages were upgraded yet. So you can check your network and try again." +#~ msgstr "" +#~ "Ohjelmistoja ei ole vielä päivitetty.\n" +#~ "Voit tarkistaa verkkoasetukset ja yrittää uudelleen." + +# +#~ msgid "No picture on TV? Press EXIT and retry." +#~ msgstr "Ei kuvaa TV:ssä? Paina EXIT ja yritä uudelleen." + +#~ msgid "No sat tuner found!" +#~ msgstr "Satelliittiviritintä ei löytynyt!" + +# +#~ msgid "No satellite frontend found!!" +#~ msgstr "Laitteessa ei ole satelliittiviritintä." + +# +#~ msgid "No, but restart from beginning" +#~ msgstr "Ei, mutta aloita alusta" + +# +#~ msgid "No, not now" +#~ msgstr "Ei, ei nyt" + +# +# Ohjatun asennuksen (Startup Wizard) kutosruudun valintateksti +#~ msgid "No, scan later manually" +#~ msgstr "Ei, kanavat haetaan myöhemmin manuaalisesti" + +# +#~ msgid "No, send them never" +#~ msgstr "Ei, älä lähetä koskaan" + +#~ msgid "Nothing to upgrade" +#~ msgstr "Ei päivitettävää" + +# +#~ msgid "OK, remove another extensions" +#~ msgstr "OK, poista toinen laajennus" + +# +#~ msgid "OK, remove some extensions" +#~ msgstr "OK, poista joitain laajennuksia" + +# +#~ msgid "OSD visibility" +#~ msgstr "OSD:n läpinäkyvyys" + +#~ msgid "Open service list and select next channel" +#~ msgstr "Avaa kanavalista ja valitse seuraava kanava" + +#~ msgid "Open service list and select previous channel" +#~ msgstr "Avaa kanavalista ja valitse edellinen kanava" + +# +#~ msgid "Optionally enter your name if you want to." +#~ msgstr "Jos haluat, lisää nimesi." + +# +#~ msgid "Orbital Position" +#~ msgstr "Sijainti" + +#~ msgid "Package removal failed.\n" +#~ msgstr "Ohjelmapaketin poisto epäonnistui.\n" + +#~ msgid "Package removed successfully.\n" +#~ msgstr "Ohjelmapaketin poisto onnistui.\n" + +#~ msgid "Packages" +#~ msgstr "Paketit" + +#~ msgid "Please be aware, that anyone can disable the parental control, if you have not set a PIN." +#~ msgstr "Huomaa, että kuka tahansa voi poistaa lapsilukon jos et aseta PIN-koodia." + +# +#~ msgid "Please choose he package..." +#~ msgstr "Valitse ohjelmapaketti..." + +# +#~ msgid "Please choose the default services lists you want to install." +#~ msgstr "Valitse oletuskanavalistat jotka haluat asentaa ja paina OK." + +# +#~ msgid "Please enter your email address here:" +#~ msgstr "Syötä sähköpostiosoitteesi:" + +# +#~ msgid "Please enter your name here (optional):" +#~ msgstr "Syötä nimesi (ei pakollinen):" + +# +#~ msgid "Please press OK!" +#~ msgstr "Paina OK." + +# +#~ msgid "Please select an extension to remove." +#~ msgstr "Valitse poistettava lisäosa." + +# +#~ msgid "Please select an option below." +#~ msgstr "Valitse jokin vaihtoehto." + +# +#~ msgid "Please wait while removing selected package..." +#~ msgstr "Odota, valittua pakettia poistetaan..." + +# +#~ msgid "Please wait while searching for removable packages..." +#~ msgstr "Odota, poistettavia paketteja haetaan..." + +#~ msgid "Press '0' to toggle internal/external PiP." +#~ msgstr "Vaihda sisäisen/ulkoisen PiP-kuvan välillä painamalla 0-näppäintä" + +#, fuzzy +#~ msgid "Prev" +#~ msgstr "Edellinen" + +#, fuzzy +#~ msgid "Recording data sync size" +#~ msgstr "Tallennuksen tyyppi" + +# +#~ msgid "Remove timer" +#~ msgstr "Poista ajastus" + +# +#~ msgid "Send DiSEqC" +#~ msgstr "Lähetä DiSEqC" + +#~ msgid "Show picons in servicelist" +#~ msgstr "Näytä kanavalogot kanavaluettelossa" + +# +#~ msgid "Shutdown after current event" +#~ msgstr "Sammuta menossa olevan ohjelman jälkeen" + +# +#~ msgid "Shutdown in " +#~ msgstr "Sammuta kun kulunut " + +# +#~ msgid "Sleep timer action:" +#~ msgstr "Uniajastintoiminta:" + +# +#~ msgid "Switch next channel" +#~ msgstr "Vaihda seuraavalle kanavalle" + +# +#~ msgid "Timer status:" +#~ msgstr "Ajastimen tila:" + +#~ msgid "Tuning step size" +#~ msgstr "Viritysaskeleen koko" + +# +#~ msgid "Uncommitted DiSEqC command" +#~ msgstr "Uncommitted DiSEqC-käsky" + +# +#~ msgid "Use time of currently running service" +#~ msgstr "käytä katseltavan kanavan aikaa" + +#~ msgid "When enabled, external subtitles (in media files) will be displayed in yellow, instead of the original color." +#~ msgstr "Kun päällä, ulkoiset tekstitykset (media tiedostoissa) näytetään keltaisella alkuperäisen värin sijaan." + +#~ msgid "Your receiver will shutdown due to inactivity." +#~ msgstr "Käyttämättömyysajastin sammuttaa vastaanottimen. " + +#~ msgid "Your receiver will shutdown due to the sleeptimer." +#~ msgstr "Uniajastin sammuttaa vastaanottimesi." + +# +#~ msgid "Zap back to service before satfinder?" +#~ msgstr "" +#~ "Vaihdetaanko takaisin kanavalle, jota katsottiin\n" +#~ "ennen satelliittietsimen käyttöä?" + +#~ msgid "dreambox advanced remote control (native)" +#~ msgstr "Laajennettu kauko-ohjain (alkup.)" + +#~ msgid "dreambox front panel" +#~ msgstr "etupaneeli" + +#~ msgid "dreambox ir keyboard" +#~ msgstr "IR-näppäimistö" + +#~ msgid "dreambox ir mouse" +#~ msgstr "IR-hiiri" + +#~ msgid "dreambox remote control (native)" +#~ msgstr "Kauko-ohjain (alkup.)" + +# +#~ msgid "play from next mark or playlist entry" +#~ msgstr "toista seuraavasta merkistä tai valinnasta" + +# +#~ msgid "play from previous mark or playlist entry" +#~ msgstr "toista edellisestä merkistä tai valinnasta" + +# +#~ msgid "shutdown" +#~ msgstr "sammuta" + +# +#~ msgid "standby" +#~ msgstr "valmiustila" + +#~ msgid "tuner is not supported" +#~ msgstr "viritin ei ole tuettu" diff --git a/po/fr.po b/po/fr.po new file mode 100644 index 0000000..b935d5a --- /dev/null +++ b/po/fr.po @@ -0,0 +1,8063 @@ +msgid "" +msgstr "" +"Project-Id-Version: enigma2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-07-21 19:08+0200\n" +"PO-Revision-Date: 2014-05-27 19:36+0100\n" +"Last-Translator: Pr2 <>\n" +"Language-Team: french\n" +"Language: fr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n!=1);\n" +"X-Generator: Poedit 1.6.5\n" + +msgid "" +"\n" +"Advanced options and settings." +msgstr "" +"\n" +"Options avancées et paramètres." + +msgid "" +"\n" +"After pressing OK, please wait!" +msgstr "" +"\n" +"Après avoir appuyé sur OK, veuillez patienter !" + +msgid "" +"\n" +"Backup your receiver settings." +msgstr "" +"\n" +"Sauvegardez les réglages du récepteur." + +msgid "" +"\n" +"Edit the upgrade source address." +msgstr "" +"\n" +"Éditer l'adresse d'origine de la mise à jour." + +msgid "" +"\n" +"Manage extensions or plugins for your receiver" +msgstr "" +"\n" +"Gérer les extensions ou plugins pour votre récepteur" + +msgid "" +"\n" +"Online update of your receiver software." +msgstr "" +"\n" +"Mise à jour en ligne du logiciel de votre récepteur." + +msgid "" +"\n" +"Press OK on your remote control to continue." +msgstr "" +"\n" +"Pressez OK sur la télécommande pour continuer." + +msgid "" +"\n" +"Restore your backups by date." +msgstr "" +"\n" +"Restaurer vos sauvegardes par date." + +msgid "" +"\n" +"Restore your receiver settings." +msgstr "" +"\n" +"Restaurer les réglages de votre récepteur." + +msgid "" +"\n" +"Restore your receiver with a new firmware." +msgstr "" +"\n" +"Restaurer votre récepteur avec un nouveau firmware." + +msgid "" +"\n" +"Scan for local extensions and install them." +msgstr "" +"\n" +"Scanner les extensions locales et les installer." + +msgid "" +"\n" +"Select your backup device.\n" +"Current device: " +msgstr "" +"\n" +"Choix périphérique sauvegarde.\n" +"périphérique actuel :" + +msgid "" +"\n" +"View, install and remove available or installed packages." +msgstr "" +"\n" +"Visualiser, installer et retirer paquets disponibles ou installés." + +msgid " (PiP)" +msgstr " (PiP)" + +msgid " (Radio)" +msgstr " (Radio)" + +msgid " (TV)" +msgstr " (TV)" + +msgid " (disabled)" +msgstr "(Désactivé)" + +msgid " (higher than any auto)" +msgstr "(supérieur à n'importe quel auto)" + +msgid " (higher than rotor any auto)" +msgstr "(supérieur à n'importe quel rotor auto)" + +msgid " (lower than any auto)" +msgstr "(inférieur à n'importe quel auto)" + +msgid " extensions." +msgstr " Extensions." + +msgid " ms" +msgstr " ms" + +msgid " packages selected." +msgstr " Paquets sélectionnés." + +msgid " updates available." +msgstr " Mise à jour disponibles." + +#. TRANSLATORS: short time representation hour:minute +#, python-format +msgid "%2d:%02d" +msgstr "%2d:%02d" + +#. TRANSLATORS: full time representation hour:minute:seconds +#, python-format +msgid "%2d:%02d:%02d" +msgstr "%2d:%02d:%02d" + +msgid "%A %d %B" +msgstr "%A %d %B" + +#. TRANSLATORS: long date representations dayname daynum monthname in strftime() format! See 'man strftime' +msgid "%A %e %B" +msgstr "%A %e %B" + +#. TRANSLATORS: full date representation dayname daynum monthname year in strftime() format! See 'man strftime' +msgid "%A %e %B %Y" +msgstr "%A %e %B %Y" + +msgid "%H:%M" +msgstr "%H:%M" + +#. TRANSLATORS: short date representation short dayname daynum short monthname in strftime() format! See 'man strftime' +msgid "%a %e/%m" +msgstr "%a %e/%m" + +#. TRANSLATORS: long date representation short dayname daynum short monthname hour:minute in strftime() format! See 'man strftime' +msgid "%a %e/%m %-H:%M" +msgstr "%a %e/%m %-H:%M" + +#. TRANSLATORS: Intermediate scanning result, '%d' channel(s) have been found so far +#, python-format +msgid "%d channel found" +msgid_plural "%d channels found" +msgstr[0] "%d chaine trouvée" +msgstr[1] "%d chaines trouvées" + +#, python-format +msgid "%d file" +msgid_plural "%d files" +msgstr[0] "%d fichier" +msgstr[1] "%d fichiers" + +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d heure" +msgstr[1] "%d heures" + +#, python-format +msgid "%d job is running in the background!" +msgid_plural "%d jobs are running in the background!" +msgstr[0] "%d tâche fonctionne en arrière-plan !" +msgstr[1] "%d taches fonctionnent en arrière-plan !" + +#, python-format +msgid "%d min" +msgstr "%d min" + +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d minute" +msgstr[1] "%d minutes" + +#, python-format +msgid "%d minutes" +msgstr "%d Minutes" + +#, python-format +msgid "%d pixel wide" +msgid_plural "%d pixels wide" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "%d seconde" +msgstr[1] "%d secondes" + +#, python-format +msgid "%d subdirectory" +msgid_plural "%d subdirectories" +msgstr[0] "%d sous-répertoire" +msgstr[1] "%d sous-répertoires" + +#, python-format +msgid "%d wireless network found!" +msgid_plural "%d wireless networks found!" +msgstr[0] "%d réseau sans fil trouvé !" +msgstr[1] "%d réseaux sans fil trouvés !" + +msgid "%d-%b-%Y %-H:%M" +msgstr "%d-%b-%Y %-H:%M" + +msgid "%d-%m" +msgstr "%d-%m" + +msgid "%d.%B %Y" +msgstr "%d.%B %Y" + +#. TRANSLATORS: VFD hour:minute daynum short monthname in strftime() format! See 'man strftime' +msgid "%k:%M %e/%m" +msgstr "%k:%M %e/%m" + +#, python-format +msgid "%s %s free disk space" +msgstr "%s %s espace disque libre" + +#, python-format +msgid "%s (%s)\n" +msgstr "%s (%s)\n" + +#. TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. +#, python-format +msgid "%s is no longer used. Should it be deleted?" +msgstr "%s n'est plus utilisé. Doit-il être supprimé ?" + +#, python-format +msgid "%s updated package available" +msgid_plural "%s updated packages available" +msgstr[0] "%s mise à jour disponible." +msgstr[1] "%s mise à jour disponibles." + +#, python-format +msgid "%s%d min" +msgstr "%s%d min" + +#, python-format +msgid "%s/%s: %s" +msgstr "%s/%s: %s" + +msgid "(ZAP)" +msgstr "(ZAP)" + +msgid "(empty)" +msgstr "(Vide)" + +msgid "(show optional DVD audio menu)" +msgstr "(Afficher menu audio DVD optionnel)" + +msgid "* Only available if more than one interface is active." +msgstr "* Seulement disponible si plus d'une interface est active." + +msgid "/s" +msgstr "/s" + +msgid "0" +msgstr "0" + +msgid "1" +msgstr "1" + +msgid "1.0" +msgstr "1.0" + +msgid "1.1" +msgstr "1.1" + +msgid "1.2" +msgstr "1.2" + +msgid "12V output" +msgstr "Sortie 12V" + +msgid "13 V" +msgstr "13 V" + +msgid "16:10" +msgstr "16:10" + +msgid "16:10 Letterbox" +msgstr "16:10 Letterbox" + +msgid "16:10 PanScan" +msgstr "16:10 PanScan" + +msgid "16:9" +msgstr "16:9" + +msgid "16:9 Letterbox" +msgstr "16:9 Letterbox" + +msgid "16:9 always" +msgstr "16:9 toujours" + +msgid "18 V" +msgstr "18 V" + +msgid "2" +msgstr "2" + +msgid "23.976" +msgstr "23.976" + +msgid "24" +msgstr "24" + +msgid "25" +msgstr "25" + +msgid "29.97" +msgstr "29.97" + +msgid "3" +msgstr "3" + +msgid "30" +msgstr "30" + +msgid "3d mode" +msgstr "Mode 3D" + +msgid "4" +msgstr "4" + +msgid "4:3" +msgstr "4:3" + +msgid "4:3 Letterbox" +msgstr "4:3 Letterbox" + +msgid "4:3 PanScan" +msgstr "4:3 PanScan" + +msgid "5" +msgstr "5" + +msgid "6" +msgstr "6" + +msgid "7" +msgstr "7" + +msgid "8" +msgstr "8" + +msgid "9" +msgstr "9" + +#, python-format +msgid ": %s" +msgstr ": %s" + +msgid "<Current movielist location>" +msgstr "<Emplacement actuel liste film>" + +msgid "<Default movie location>" +msgstr "<Emplacement par défaut film>" + +msgid "<Last timer location>" +msgstr "<Emplacement dernière programmation>" + +msgid "<unknown>" +msgstr "<inconnu>" + +msgid "??" +msgstr "??" + +msgid "A" +msgstr "A" + +#, python-format +msgid "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" +msgstr "" +"Un fichier de configuration (%s) a été modifié depuis qu'il a été installé.\n" +"Voulez-vous conserver vos modifications ?" + +#, python-format +msgid "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" +msgstr "" +"Un fichier de configuration (%s) a été modifié depuis l'installation.\n" +"Voulez-vous garder votre version ?" + +msgid "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"Un enregistrement terminé souhaite mettre votre\n" +"récepteur en mode veille. Voulez vous le faire maintenant ?" + +msgid "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"Un enregistrement terminé souhaite éteindre\n" +"votre récepteur. Voulez vous le faire maintenant ?" + +msgid "A graphical EPG for all services of an specific bouquet" +msgstr "Un EPG graphique pour tous les services d'un bouquet spécifique" + +#, python-format +msgid "" +"A record has been started:\n" +"%s" +msgstr "" +"Un enregistrement a été démarré:\n" +"%s" + +msgid "" +"A recording is currently running.\n" +"What do you want to do?" +msgstr "" +"Un enregistrement est en cours.\n" +"Que voulez-vous faire ?" + +msgid "A recording is currently running. Please stop the recording before trying to configure the positioner." +msgstr "Un enregistrement est en cours. Veuillez arrêter l'enregistrement avant d'essayer de configurer le positionneur." + +msgid "A recording is currently running. Please stop the recording before trying to scan." +msgstr "Un enregistrement est en cours. Veuillez arrêter l'enregistrement avant d'essayer de scanner." + +msgid "A recording is currently running. Please stop the recording before trying to start the satfinder." +msgstr "Un enregistrement est en cours. Veuillez arrêter l'enregistrement avant de démarrer la recherche satellites." + +#, python-format +msgid "A required tool (%s) was not found." +msgstr "Un outil (%s) nécessaire n'a pas été trouvé" + +msgid "A search for available updates is currently in progress." +msgstr "Une recherche pour les mises à jour disponibles est actuellement en cours." + +msgid "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" +msgstr "" +"Une seconde interface configurée a été trouvée.\n" +"\n" +"Voulez-vous désactiver la seconde interface réseau ?" + +msgid "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"Une minuterie programmé souhaite mettre votre\n" +"récepteur en mode veille. Voulez vous le faire maintenant ?" + +msgid "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"Une minuterie programmé souhaite éteindre\n" +"votre récepteur. Voulez vous le faire maintenant ?" + +msgid "A small overview of the available icon states and actions." +msgstr "Une vue d'ensemble des icônes d'états et d'actions disponibles." + +msgid "" +"A timer failed to record!\n" +"Disable TV and try again?\n" +msgstr "" +"Une programmation n'a pas pu se lancer pour enregistrer !\n" +"Désactiver la TV et réessayer ?\n" + +msgid "A/V settings" +msgstr "Paramètres A/V" + +msgid "AC3/DTS downmix" +msgstr "Downmix AC3/DTS" + +msgid "Abort" +msgstr "Abandon" + +msgid "About" +msgstr "A propos" + +msgid "About..." +msgstr "A propos..." + +msgid "Accesspoint:" +msgstr "Point d'accès :" + +msgid "Action on long powerbutton press" +msgstr "Action appui long sur bouton éteindre" + +msgid "Action on short powerbutton press" +msgstr "Action appui court sur bouton éteindre" + +msgid "Activate Picture in Picture" +msgstr "Activer l'incrustation d'image" + +msgid "Activate current configuration" +msgstr "Activer la configuration actuelle" + +msgid "Activate network settings" +msgstr "Activer les paramètres réseau" + +msgid "Activate the configured network settings." +msgstr "Activer les paramètres réseau configurés." + +msgid "Adapter settings" +msgstr "Paramètres adaptateur" + +msgid "Add" +msgstr "Ajouter" + +msgid "Add Bookmark" +msgstr "Ajouter Marque-page" + +msgid "Add a mark" +msgstr "Ajouter un marqueur" + +msgid "Add a nameserver entry" +msgstr "Ajouter une entrée serveur de nom" + +msgid "Add a new title" +msgstr "Ajouter un nouveau titre" + +msgid "Add bookmark" +msgstr "Ajouter marque page" + +msgid "Add directory to playlist" +msgstr "Ajouter le répertoire à la liste de lecture" + +msgid "Add file to playlist" +msgstr "Ajouter le fichier à la liste de lecture" + +msgid "Add files to playlist" +msgstr "Ajouter les fichiers à la liste de lecture" + +msgid "Add more details to the crash log" +msgstr "Créer un crash log plus détaillé" + +msgid "Add provider" +msgstr "Ajouter Opérateur" + +msgid "Add recording (enter recording duration)" +msgstr "Ajout d'enregistrement (saisir durée d'enregistrement)" + +msgid "Add recording (enter recording endtime)" +msgstr "Ajout d'enregistrement (saisir heure de fin)" + +msgid "Add recording (indefinitely)" +msgstr "Ajout d'enregistrement (indéfiniment)" + +msgid "Add recording (stop after current event)" +msgstr "Ajout d'enregistrement (stopper après l'émission)" + +msgid "Add service" +msgstr "Ajouter Service" + +msgid "Add timer" +msgstr "Programmer" + +msgid "Add title" +msgstr "Ajouter titre" + +msgid "Add to bouquet" +msgstr "Ajouter au bouquet" + +msgid "Add to favourites" +msgstr "Ajouter aux favoris" + +msgid "Add/remove change timer for current event" +msgstr "Ajouter/Enlever la programmation pour l'évènement en cours" + +msgid "Adjust 3D settings" +msgstr "Ajuster les paramètres 3D" + +msgid "Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens." +msgstr "Ajustez les paramètres de couleurs de sorte que toutes les nuances de couleurs soient visibles, mais apparaissent saturées autant que possible. Si vous êtes content du résultat, pressez OK pour fermer le réglage vidéo avancé, ou utilisez les touches numérique pour choisir d'autres écrans de test." + +msgid "Advanced" +msgstr "Avancé" + +msgid "Advanced options" +msgstr "Options Avancées" + +msgid "Advanced restore" +msgstr "Restauration avancée" + +msgid "Advanced software" +msgstr "Logiciel Avancé" + +msgid "Advanced software plugin" +msgstr "Plugin Logiciel Avancé" + +msgid "Advanced video enhancement setup" +msgstr "Paramètres Vidéo Améliorée Avancés" + +msgid "Advanced video setup" +msgstr "Paramètres Vidéo Avancés" + +msgid "After event" +msgstr "Après l'émission" + +msgid "Album" +msgstr "Album" + +msgid "Alignment of events" +msgstr "Alignement des évènements" + +msgid "Alignment of service names" +msgstr "Alignement des noms de service" + +msgid "All" +msgstr "Toutes" + +msgid "All ages" +msgstr "Tous les âges" + +msgid "All satellites 1 (USALS)" +msgstr "Tous satellites 1 (USALS)" + +msgid "All satellites 2 (USALS)" +msgstr "Tous satellites 2 (USALS)" + +msgid "All satellites 3 (USALS)" +msgstr "Tous satellites 3 (USALS)" + +msgid "All satellites 4 (USALS)" +msgstr "Tous satellites 4 (USALS)" + +msgid "Allocate" +msgstr "Allouer" + +msgid "Allocate unused memory index" +msgstr "Allouer indice de la mémoire inutilisée" + +msgid "Allow quit movieplayer with exit" +msgstr "Autoriser de quitter Movieplayer avec exit" + +msgid "Allow subtitle language to equal audio language" +msgstr "Autoriser les sous-titres identique à la sélection audio" + +msgid "Allow subtitles for hearing impaired" +msgstr "Autoriser les sous-titres pour malentendants" + +msgid "Alpha" +msgstr "Transparence" + +msgid "Alternative" +msgstr "Ajouter les alternatifs" + +msgid "Alternative numbering mode" +msgstr "Mode radio alternatif" + +msgid "Alternative services tuner priority" +msgstr "Priorité tuner services alternatifs" + +msgid "Always ask" +msgstr "Toujours demander" + +msgid "Always hide infobar" +msgstr "Toujours cacher la barre d'infos" + +msgid "An empty filename is illegal." +msgstr "Un nom de fichier vide est illégal." + +msgid "An error occurred while downloading the packetlist. Please try again." +msgstr "Une erreur s'est produite lors du téléchargement de la liste paquet. S'il vous plaît essayez de nouveau." + +msgid "An unknown error occurred!" +msgstr "Une erreur inconnue est survenue !" + +msgid "And will put your receiver in standby over " +msgstr "Et va mettre votre récepteur en veiller après" + +msgid "Any activity" +msgstr "Pour toute activité" + +msgid "Arabic" +msgstr "Arabe" + +msgid "Are you sure to remove this entry?" +msgstr "Êtes-vous sûr de vouloir supprimer cette entrée?" + +msgid "" +"Are you sure you want to activate this network configuration?\n" +"\n" +msgstr "" +"Êtes-vous sûr de vouloir activer cette configuration réseau ?\n" +"\n" + +msgid "" +"Are you sure you want to delete\n" +"the following backup:\n" +msgstr "" +"Êtes-vous sûr de vouloir effacer\n" +"la sauvegarde suivante :\n" + +msgid "Are you sure you want to exit this wizard?" +msgstr "Êtes-vous sûr de vouloir quitter cet assistant ?" + +msgid "" +"Are you sure you want to restart your network interfaces?\n" +"\n" +msgstr "" +"Êtes-vous sûr de vouloir redémarrer votre interface réseau ?\n" +"\n" + +#, python-format +msgid "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Êtes-vous sûr de vouloir restaurer\n" +"la sauvegarde suivante :\n" +"%s\n" +"Votre récepteur redémarra après la restauration !" + +msgid "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Êtes-vous sûr de vouloir restaurer la sauvegarde ?\n" +"Votre récepteur redémarra après la restauration !" + +msgid "Artist" +msgstr "Artistes" + +msgid "Arts/Culture" +msgstr "Arts/Culture" + +msgid "Ask user" +msgstr "Demander à l'utilisateur" + +msgid "Aspect ratio" +msgstr "Format d'image" + +msgid "Assigned CAIds:" +msgstr "CAIds assignés :" + +msgid "Assigned services/provider:" +msgstr "Services/Opérateurs assignés :" + +msgid "At beginning" +msgstr "Au début" + +msgid "At end" +msgstr "À la fin" + +msgid "Audio" +msgstr "Audio" + +msgid "Audio PID" +msgstr "PID Audio" + +msgid "Audio language selection 1" +msgstr "Sélection de la langue audio 1" + +msgid "Audio language selection 2" +msgstr "Sélection de la langue audio 2" + +msgid "Audio language selection 3" +msgstr "Sélection de la langue audio 3" + +msgid "Audio language selection 4" +msgstr "Sélection de la langue audio 4" + +msgid "Audio options..." +msgstr "Options Audio..." + +#, python-format +msgid "Audio track (%s) format" +msgstr "Format piste audio (%s)" + +#, python-format +msgid "Audio track (%s) language" +msgstr "Langue piste audio (%s)" + +msgid "Author: " +msgstr "Auteur : " + +msgid "Authoring mode" +msgstr "Mode création" + +#. TRANSLATORS: (aspect ratio policy: always try to display as fullscreen, when there is no content (black bars) on left/right, even if this breaks the aspect. +msgid "Auto" +msgstr "Auto" + +msgid "Auto chapter split every ? minutes (0=never)" +msgstr "Auto diviser chaque chapitre ? minutes (0 = jamais)" + +msgid "Auto flesh" +msgstr "Correction couleurs auto (Auto flesh)" + +msgid "Auto focus" +msgstr "Mise au point auto" + +msgid "Auto focus commencing ..." +msgstr "Démarrage Mise au point auto ..." + +msgid "Auto language selection" +msgstr "Auto sélection de la langue" + +msgid "Auto scart switching" +msgstr "Commutation auto péritel" + +msgid "Automatic" +msgstr "Automatique" + +msgid "Automatic scan" +msgstr "Analyse Automatique" + +msgid "Automatically start timeshift after" +msgstr "Automatiquement démarrer le timeshift après" + +msgid "Automatically turn on external subtitles" +msgstr "Activer automatiquement les sous-titres externes" + +msgid "Available format variables" +msgstr "Format variables disponibles" + +msgid "B" +msgstr "B" + +msgid "BER" +msgstr "BER" + +msgid "BER:" +msgstr "BER :" + +msgid "Back" +msgstr "Arrière" + +msgid "Background" +msgstr "Arrière-plan" + +msgid "Background color" +msgstr "Couleur de fond" + +msgid "Background delete option" +msgstr "Option de suppression en arrière-plan" + +msgid "Background delete speed" +msgstr "Vitesse de suppression en arrière-plan" + +msgid "Backup completed." +msgstr "Sauvegarde terminée." + +msgid "Backup failed." +msgstr "Échec de la sauvegarde." + +msgid "Backup is running..." +msgstr "Sauvegarde en cours..." + +msgid "Backup system settings" +msgstr "Sauver paramètres système" + +msgid "Band" +msgstr "Bande" + +msgid "Bandwidth" +msgstr "Bande passante" + +msgid "Basque" +msgstr "Basque" + +msgid "Begin time" +msgstr "Heure début" + +msgid "Behavior of 'pause and ok' when paused" +msgstr "" + +msgid "Behavior of 0 key in PiP-mode" +msgstr "Effet touche 0 en mode PiP" + +msgid "Behavior when a movie is started" +msgstr "Action lorsqu'un film est démarré" + +msgid "Behavior when a movie is stopped" +msgstr "Action lorsqu'un film est arrêté" + +msgid "Behavior when a movie reaches the end" +msgstr "Action lorsqu'un film atteint la fin" + +msgid "Big PiP" +msgstr "" + +msgid "Bitrate:" +msgstr "Bitrate :" + +msgid "Black screen" +msgstr "Ecran noir" + +msgid "Black screen till locked" +msgstr "Ecran noir jusqu'au vérouillage" + +msgid "Block noise reduction" +msgstr "Bloc réduction bruit" + +msgid "Blue boost" +msgstr "Intensifier le bleu" + +msgid "Bookmarks" +msgstr "Marque-pages" + +msgid "Brightness" +msgstr "Luminosité" + +msgid "Bulgarian" +msgstr "Bulgare" + +msgid "Burn DVD" +msgstr "Graver le DVD" + +#, python-format +msgid "Burn audio track (%s)" +msgstr "Graver piste audio (%s)" + +msgid "Burn existing image to DVD" +msgstr "Graver l'image existante sur DVD" + +msgid "Burn to DVD" +msgstr "Graver sur DVD" + +msgid "Bus: " +msgstr "Bus: " + +msgid "By default, SNR will be shown in dB (when supported by the tuner). This setting forces SNR to be shown as a percentage instead." +msgstr "Par défaut, le SNR sera affiché en dB (quand supporté par le tuner). Si activé, le SNR sera affiché en pourcentage." + +msgid "C" +msgstr "C" + +msgid "C-Band" +msgstr "Bande C" + +msgid "CH" +msgstr "CH" + +msgid "CI assignment" +msgstr "Assignation CI" + +msgid "CVBS" +msgstr "CVBS" + +msgid "Cable" +msgstr "Câble" + +msgid "Cable Scan" +msgstr "Scan du Cable" + +msgid "Cache thumbnails" +msgstr "Cache vignettes" + +msgid "Calculate" +msgstr "Calculer" + +msgid "Calculate all positions" +msgstr "Calculer toutes les positions" + +msgid "Calculation complete" +msgstr "Calcul terminé" + +msgid "Calibrate" +msgstr "Calibrer" + +msgid "Can be used for different fps between external subtitles and video." +msgstr "Peut-être utilisé pour différents fps entre les sous-titres externes et la vidéo" + +msgid "Cancel" +msgstr "Annuler" + +msgid "Cannot determine" +msgstr "Impossible à déterminer" + +msgid "Cannot find any signal ..., aborting !" +msgstr "Impossible de trouver un signal ..., abandon !" + +msgid "Cannot move files on a different disk or system to the trash can" +msgstr "Impossible de déplacer les fichiers sur un disque ou système différent dans la corbeille" + +msgid "Cannot move to trash can" +msgstr "Impossible de déplacer dans la corbeille" + +msgid "Capacity: " +msgstr "Capacité : " + +msgid "Card" +msgstr "Carte" + +msgid "Cascade PiP" +msgstr "" + +msgid "Center DVB subtitles" +msgstr "Sous-titres DVB centrés" + +msgid "Center time-labels and remove date" +msgstr "Centrer les time-labels et supprimer la date" + +msgid "Change bouquets in quickzap" +msgstr "Changer les bouquets en zapping rapide" + +msgid "Change pin code" +msgstr "Changer code pin" + +msgid "Change recording (duration)" +msgstr "Modifier un enregistrement (durée)" + +msgid "Change recording (endtime)" +msgstr "Modifier un enregistrement (heure de fin)" + +msgid "Change repeat and delay settings?" +msgstr "Changer répétition et retarder les paramètres ?" + +msgid "Change service PIN" +msgstr "Changer PIN service" + +msgid "Change service PINs" +msgstr "Changer PINs service" + +msgid "Change setup PIN" +msgstr "Changer PIN paramètres" + +msgid "Change step size" +msgstr "Changer taille de pas" + +msgid "Change timer" +msgstr "Changer programmation" + +msgid "Changelog" +msgstr "Changelog" + +msgid "Channel" +msgstr "Canal" + +msgid "Channel list type" +msgstr "Liste des chaînes" + +msgid "Channel not in services list" +msgstr "Chaîne absente de la liste services" + +msgid "Channel selection" +msgstr "Sélection de la chaîne" + +msgid "Channel:" +msgstr "Chaîne :" + +msgid "Channellist menu" +msgstr "Liste des chaînes" + +msgid "Chap." +msgstr "Chap." + +msgid "Chapter" +msgstr "Chapitre" + +msgid "Chapter:" +msgstr "Chapitre:" + +msgid "Check" +msgstr "Vérification" + +msgid "Check the internet connection" +msgstr "Vérifiez la connexion internet" + +msgid "Check the internet connection again" +msgstr "Vérifiez à nouveau la connexion Internet" + +msgid "Checking filesystem..." +msgstr "Vérification du Système de fichiers..." + +msgid "Checking the internet connection" +msgstr "Vérification de la connexion internet" + +#, python-format +msgid "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" +msgstr "" +"Vérification tuner %d\n" +"DiSEqC port %s pour %s" + +msgid "Children/Youth" +msgstr "Enfant/Jeune" + +msgid "Choose which tuner to configure." +msgstr "Choisissez le tuner à configurer." + +msgid "Circular left" +msgstr "Circulaire gauche" + +msgid "Circular right" +msgstr "Circulaire droit" + +msgid "Cleanup" +msgstr "Nettoyage" + +msgid "Clear" +msgstr "Effacer" + +msgid "Clear before scan" +msgstr "Effacer avant d'analyser" + +msgid "Clear fixed" +msgstr "Nouvelle adresse" + +msgid "Clear log" +msgstr "Effacer le log" + +msgid "Clear playlist" +msgstr "Effacer liste de lecture" + +msgid "Close" +msgstr "Fermer" + +msgid "Close PiP on exit" +msgstr "Fermer PiP en quittant" + +msgid "Close title selection" +msgstr "Fermer sélection titre" + +msgid "Code rate HP" +msgstr "Fréquence code Haut" + +msgid "Code rate LP" +msgstr "Fréquence code Bas" + +msgid "Coderate HP" +msgstr "Fréquence code haut" + +msgid "Coderate LP" +msgstr "Fréquence code bas" + +msgid "Collection name" +msgstr "Nom de la collection" + +msgid "Collection settings" +msgstr "Paramètres de la collection" + +msgid "Color format" +msgstr "Format de Couleur" + +msgid "Command execution..." +msgstr "Exécution de la commande..." + +msgid "Command order" +msgstr "Ordre de la commande" + +msgid "Common Interface" +msgstr "Interface Commune" + +msgid "Common Interface assignment" +msgstr "Assignation Interface Commune" + +msgid "Communication" +msgstr "Communication" + +msgid "Compact flash" +msgstr "Compact Flash" + +msgid "Complete" +msgstr "Terminé" + +msgid "Complex (allows mixing audio tracks and aspects)" +msgstr "Complexe (autorise mélange pistes audio et aspects)" + +msgid "Composition of the recording filenames" +msgstr "Composition noms de fichiers d'enregistrement" + +msgid "Configuration mode" +msgstr "Mode de configuration" + +#, python-format +msgid "Configuration mode: %s" +msgstr "Mode de configuration : %s" + +msgid "Configuration..." +msgstr "Configuration..." + +msgid "Configure an additional delay to improve external subtitle synchronisation." +msgstr "Configurez un délai additionnel pour améliorer la synchronisation des sous-titres externes." + +msgid "Configure an additional delay to improve subtitle synchronisation." +msgstr "Configurez un délai additionnel pour améliorer la synchronisation des sous-titres." + +msgid "Configure for how long the infobar will remain visible after activation." +msgstr "Configurez combien de temps la barre d'informations demeurent visibles après activation." + +msgid "Configure for how many minutes finished events should remain visible in the EPG. Useful when you need information about an event which has just finished, or has been delayed." +msgstr "Configurez combien de temps un événements terminé doit rester visible dans l'EPG. Utile lorsque vous avez besoin d'informations sur un événement qui vient de se terminer, ou a été retardé." + +msgid "Configure how recording filenames are constructed." +msgstr "Configurez la façon dont les noms de fichiers d'enregistrement sont construits." + +msgid "Configure how the fan should operate" +msgstr "Configurer l'activité du ventilateur." + +msgid "Configure if and how crypto icons will be shown in the channel selection list." +msgstr "Configurer si et où les picons d'encryption seront affichés dans la liste des chaînes." + +msgid "Configure if and how long the latest service in the PiP will be remembered." +msgstr "" + +msgid "Configure if and how service type icons will be shown in the channel selection list." +msgstr "Configurer si et où les picons de service seront affichés dans la liste des chaînes." + +msgid "Configure if and how wide columns will be shown in the channel selection list." +msgstr "" + +msgid "Configure if service picons will be shown in the channel selection list." +msgstr "Configurer si les picons des services seront affichés dans la liste des chaînes." + +msgid "Configure interface" +msgstr "Configurez interface" + +msgid "Configure nameservers" +msgstr "Configurez serveurs de noms" + +msgid "Configure on which devices the background delete option should be used." +msgstr "Configurez sur lequel des dispositifs l'option de suppression d'arrière-plan doit être utilisé." + +msgid "Configure remote control type" +msgstr "Configurez le type de télécommande" + +msgid "Configure the DiSEqC mode for this LNB." +msgstr "Configurez le mode DiSEqC pour cette LNB." + +msgid "Configure the IP address." +msgstr "Configurez l'adresse IP." + +msgid "Configure the aspect ratio of the screen." +msgstr "Configurez le format d'image de l'écran." + +msgid "Configure the behavior of the 'pause and ok' key when movie playback is already paused." +msgstr "" + +msgid "Configure the behavior when movie playback is manually stopped." +msgstr "Configurez le comportement lorsqu'un film est arrêté volontairement." + +msgid "Configure the behavior when movie playback is started." +msgstr "Configurez le comportement lorsqu'un film est démarré." + +msgid "Configure the behavior when reaching the end of a movie, during movie playback." +msgstr "Configurez le comportement en atteignant la fin d'un film, pendant la lecture du film." + +msgid "Configure the border width of the subtitles. The dark border makes the subtitles easier to read on a light background." +msgstr "Configurez la largeur de bordure des sous-titres. La bordure noire rend les sous-titres faciles à lire sur un fond clair." + +msgid "Configure the brightness level of the front panel display during standby." +msgstr "Configurez le niveau de luminosité de l'affichage du panneau avant en mode veille." + +msgid "Configure the brightness level of the front panel display." +msgstr "Configurez le niveau de luminosité de l'affichage du panneau avant." + +msgid "Configure the color of the external subtitles, alternative (normal in white, italic in yellow, bold in cyan, underscore in green), white or yellow." +msgstr "Configurez la couleur des sous-titres externes, Alternatif (normal en blanc, italic en jaune, gras en cyan, sous-ligné en vert), Blanc ou Jaune." + +msgid "Configure the color of the teletext subtitles." +msgstr "Configurez la couleur des sous-titres télétexte." + +msgid "Configure the contrast level of the front panel display." +msgstr "Configurez le niveau de contraste de l'affichage du panneau avant." + +msgid "Configure the cursor behaviour in the channel selection list. When opening the channel selection list you can keep on the current service or already select up/down and you are able to revert the B+/B- buttons." +msgstr "Configurer le comportement du curseur dans la liste de sélection des chaînes. Lorsque vous ouvrez la liste de sélection des chaînes vous pouvez garder la position du service actuel ou déjà sélectionner le serveur haut/bas et vous pouvez inverser les touches B+/B-." + +msgid "Configure the duration in hours the receiver should go to standby when the receiver is not controlled." +msgstr "" + +msgid "Configure the duration in minutes for the screensaver." +msgstr "Configurez la durée en minutes de l'économiseur d'écran." + +msgid "Configure the duration in minutes for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +msgstr "" + +msgid "Configure the duration when the receiver should go to shut down in case the receiver is in standby mode." +msgstr "Configurez la durée après laquelle le récepteur doit s'éteindre lorsqu'il est en mode veille." + +msgid "Configure the first audio language (highest priority)." +msgstr "Configurez la première langue audio (priorité la plus élevée)." + +msgid "Configure the first subtitle language (highest priority)." +msgstr "Configurez la première langue des sous-titres (priorité la plus élevée)." + +msgid "Configure the font size of the subtitles." +msgstr "Configurez la taille de police des sous-titres." + +msgid "Configure the fourth audio language." +msgstr "Configurez la quatrième langue audio." + +msgid "Configure the fourth subtitle language." +msgstr "Configurez la quatrième langue des sous-titres." + +msgid "Configure the function of a long press on the power button." +msgstr "Configurez la fonction 'appui long' sur le bouton d'alimentation." + +msgid "Configure the function of a short press on the power button." +msgstr "Configurez la fonction 'appui court' sur le bouton d'alimentation." + +msgid "Configure the function of the '0' button do when PIP is active." +msgstr "Configurez la fonction du '0 'quand le bouton PIP est actif." + +msgid "Configure the gateway." +msgstr "Configurez la passerelle." + +msgid "Configure the general audio delay of Dolby Digital sound tracks." +msgstr "Configurez le retard général des pistes audio Dolby Digital." + +msgid "Configure the general audio delay of stereo sound tracks." +msgstr "Configurez le retard général des pistes audio stéréo." + +msgid "Configure the hard disk drive to go to standby after the specified idle time." +msgstr "Configurez le disque dur pour passer en mode veille après la durée spécifiée d'inactivité." + +msgid "Configure the horizontal alignment of the subtitles." +msgstr "Configurez l'alignement horizontal des sous-titres." + +msgid "Configure the initial fast forward speed. When you press the fast forward button, winding will start at this speed." +msgstr "Configurez la vitesse d'avance rapide. Lorsque vous appuyez sur le bouton d'avance rapide, la lecture débutera à cette vitesse." + +msgid "Configure the initial rewind speed. When you press the rewind button, winding will start at this speed." +msgstr "Configurez la vitesse de rembobinage. Lorsque vous appuyez sur le bouton de rembobinage, la lecture arrière débutera à cette vitesse." + +msgid "Configure the latitude of your location." +msgstr "Configurez la latitude de votre position." + +msgid "Configure the longitude of your location." +msgstr "Configurez la longitude de votre position." + +msgid "Configure the minimum amount of disk space to be available for recordings. When the amount of space drops below this value, deleted items will be removed from the trash can." +msgstr "Configurez le niveau minimum d'espace disque disponible pour les enregistrements. Lorsque la quantité d'espace descend en dessous de cette valeur, les éléments supprimés seront supprimés de la corbeille." + +msgid "Configure the nameserver (DNS)." +msgstr "Configurez serveur de nom (DNS)." + +msgid "Configure the netmask." +msgstr "Configurez le masque de réseau." + +msgid "Configure the number of days after which items are automaticaly removed from the trash can." +msgstr "Configurez le nombre de jours après lequel les éléments sont automatiquement retirée de la corbeille." + +msgid "Configure the number of days old timers are kept before they are automatically removed from the timer list." +msgstr "Configurez le nombre de jours d'archivage des anciennes programmations avant qu'elles ne soient automatiquement supprimés de la liste des programmations." + +msgid "Configure the offline decoding delay in milliseconds. The configured delay is observed at each control word parity change." +msgstr "Configurez le délai de déconnection du décodage en millisecondes. Le retard configuré est observé à chaque changement de parité." + +msgid "Configure the possible fast forward speeds." +msgstr "Configurez les vitesses d'avance Rapide possibles." + +msgid "Configure the possible rewind speeds." +msgstr "Configurez les vitesses de rembobinage possibles." + +msgid "Configure the primary EPG language." +msgstr "Configurez la première langue EPG." + +msgid "Configure the refresh rate of the screen." +msgstr "Configurez la fréquence de rafraîchissement de l'écran." + +msgid "Configure the screen resolution in PC output mode." +msgstr "Configurez la résolution de l'écran en mode de sortie PC." + +msgid "Configure the second audio language." +msgstr "Configurez la deuxième langue audio." + +msgid "Configure the second subtitle language." +msgstr "Configurez la deuxième langue des sous-titres." + +msgid "Configure the secondary EPG language." +msgstr "Configurez la deuxième langue EPG." + +msgid "Configure the sharpness of the video scaling." +msgstr "Configurez la netteté de l'échelle vidéo." + +msgid "Configure the skip time interval for the '1'/'3' buttons." +msgstr "Configurez l'intervalle de temps de saut pour les boutons '1 '/ '3'." + +msgid "Configure the skip time interval for the '4'/'6' buttons." +msgstr "Configurez l'intervalle de temps de saut pour les boutons '4 '/ '6'." + +msgid "Configure the skip time interval for the '7'/'9' buttons." +msgstr "Configurez l'intervalle de temps de saut pour les boutons '7 '/ '9'." + +msgid "Configure the slow motion speeds." +msgstr "Configurez les vitesses de ralenti." + +msgid "Configure the source of the frontend data as shown on the infobars. 'Settings' is as stored on the settings. 'Tuner' is as reported by the tuner." +msgstr "Configurer la source de donnée du frontend affiché dans la barre d'infos. 'Paramètres' est comme stocké dans les paramètres. 'Tuner' est comme retourné par le tuner." + +msgid "Configure the speed of the background deletion process. Lower speed will consume less hard disk drive performance." +msgstr "Configurez la vitesse du processus de suppression d'arrière-plan. Une vitesse basse consommera moins les performances du disque dur." + +msgid "Configure the speed of the fan" +msgstr "Configurer la vitesse du ventilateur." + +msgid "Configure the subtitle delay when timing information is not available." +msgstr "Configurez le délai des sous-titres lorsque les informations de synchronisation ne sont pas disponible." + +msgid "Configure the third audio language." +msgstr "Configurez la troisième langue audio." + +msgid "Configure the third subtitle language." +msgstr "Configurez la troisième langue des sous-titres." + +msgid "Configure the transparency of the OSD." +msgstr "Configurez la transparence de l'OSD." + +msgid "Configure the transparency of the black background of graphical DVB subtitles." +msgstr "Configurez la transparence du fond noir des sous-titres DVB." + +msgid "Configure the tuner mode." +msgstr "Configurez le mode tuner." + +msgid "Configure the type of status indication icons shown in the movielist." +msgstr "Configurez le type d'icônes d'indication d'état figurant dans la liste des films." + +msgid "Configure the vertical position of the subtitles, measured from the bottom of the screen." +msgstr "Configurez la position verticale des sous-titres, mesurée à partir du bas de l'écran." + +msgid "Configure the video output mode (or resolution)." +msgstr "Configurez le mode de sortie vidéo (ou résolution)." + +msgid "Configure the way in which the receiver changes channels." +msgstr "Configurez la façon dont le récepteur change les chaines." + +msgid "Configure where completed timers show up in the timer list." +msgstr "Configurez comment les programmations terminées apparaissent dans la liste des programmations." + +msgid "Configure whether (and for how long) a second infobar will be shown when OK is pressed twice. The second infobar contains additional information about the current channel." +msgstr "Configurez si (et pour combien de temps) une deuxième barre d'informations s'affiche lorsque vous appuyez sur OK à deux reprises. La seconde barre contient des informations supplémentaires sur le canal actuel." + +msgid "Configure whether multi channel sound tracks should be downmixed to stereo." +msgstr "Permet de configurer si plusieurs pistes sonores doivent être remixées en stéréo." + +msgid "Configure whether or not an icon should be shown when your motorized dish is moving." +msgstr "Configurez si oui ou non une icône doit apparaître lorsque votre parabole motorisée est en mouvement." + +msgid "Configure which access level to use for the configuration menu. Expert level gives access to all items." +msgstr "Configurez les niveaux d'accès à utiliser pour le menu de configuration. Niveau expert donne accès à tous les paramètres." + +msgid "Configure which color format should be used on the SCART output." +msgstr "Configurez si le format couleur doit être utilisée sur la sortie Péritel." + +msgid "Configure which tuner for recordings will be preferred, when more than one tuner is available." +msgstr "Configurer le tuner qui sera préféré pour enregistrer, lorsque plus d'un tuner est disponible." + +msgid "Configure which tuner type will be preferred, when the same service is available on different types of tuners." +msgstr "Configurez le type de tuner qui sera préféré, lorsque le même service est disponible sur différents types de tuners." + +msgid "Configure which tuner will be preferred, when more than one tuner is available. If set to 'auto' the system will give priority to the tuner having the lowest number of channels/satellites." +msgstr "Configurez quel tuner sera préféré, lorsque plus d'un tuner est disponible. S'il est réglé sur «auto» le système accordera la priorité au tuner ayant le plus faible nombre de chaines/satellites." + +msgid "Configure your internal LAN" +msgstr "Configurez votre réseau interne" + +msgid "Configure your network again" +msgstr "Configurez votre réseau encore" + +msgid "Configure your network settings, and press OK to start the scan" +msgstr "Configurez vos paramètres réseau, puis appuyez sur OK pour lancer le scan" + +msgid "Configure your wireless LAN again" +msgstr "Configurez votre LAN sans fil encore" + +msgid "Configures which video output connector will be used." +msgstr "Configurez le type de sortie vidéo qui sera utilisé." + +msgid "Configuring" +msgstr "Configuration" + +msgid "Conflicting timer" +msgstr "Programmation conflictuelle" + +msgid "Connect" +msgstr "Connecter" + +msgid "Connect to a wireless network" +msgstr "Connecter à un réseau sans fil" + +msgid "Connected satellites" +msgstr "" + +msgid "Connected to" +msgstr "Connecté à" + +msgid "Connected!" +msgstr "Connecté !" + +msgid "Constellation" +msgstr "Constellation" + +msgid "Content does not fit on DVD!" +msgstr "Le contenu ne tient pas sur le DVD !" + +msgid "Continue" +msgstr "Continuer" + +msgid "Continue in background" +msgstr "Continuer en arrière plan" + +msgid "Continue playback" +msgstr "Lecture continue" + +msgid "Continue playing" +msgstr "Lecture continue" + +msgid "Continues play (loop)" +msgstr "Continue la lecture (boucle)" + +msgid "Contrast" +msgstr "Contraste" + +msgid "Convert ext3 filesystem to ext4" +msgstr "Convertir fichier système ext3 vers ext4" + +msgid "Convert ext3 to ext4" +msgstr "Convertir ext3 vers ext4" + +msgid "Converting ext3 to ext4..." +msgstr "Convertir ext3 vers ext4..." + +msgid "Copy" +msgstr "Copier" + +msgid "Could not connect to receiver .NFI image feed server:" +msgstr "Impossible de connecter le recepteur au serveur d'image .NFI :" + +msgid "Could not find installed channel list." +msgstr "Impossible de trouver la liste des chaînes installées." + +msgid "Could not load medium! No disc inserted?" +msgstr "Impossible de charger le support ! Aucun disque inséré ?" + +msgid "Could not open Picture in Picture" +msgstr "N'a pu ouvrir l'incrusation d'image" + +#, python-format +msgid "Could not record due to conflicting timer %s" +msgstr "Impossible d'enregistrer en raison d'un conflit de programmation %s" + +#, python-format +msgid "Could not record due to invalid service %s" +msgstr "Impossible d'enregistrer en raison d'un service non valide %s" + +msgid "Create DVD-ISO" +msgstr "Créer DVD-ISO" + +msgid "Create more detailed crash log" +msgstr "Créer un crash log plus détaillé" + +#, python-format +msgid "Creating directory %s failed." +msgstr "Échec création répertoire %s." + +msgid "Creating filesystem" +msgstr "Création du système de fichier" + +msgid "Creating partition" +msgstr "Création de partition" + +msgid "Croatian" +msgstr "Croate" + +msgid "Current CEC address" +msgstr "Adresse actuelle CEC" + +msgid "Current device: " +msgstr "Périphérique actuel : " + +msgid "Current event EPG" +msgstr "Évènement EPG en cours" + +#, python-format +msgid "Current mode: %s \n" +msgstr "" + +msgid "Current settings:" +msgstr "Paramètres actuels :" + +msgid "Current transponder" +msgstr "Transpondeur actuel" + +msgid "Current value: " +msgstr "Valeur actuelle : " + +msgid "Current version:" +msgstr "Version actuelle :" + +msgid "Currently installed image" +msgstr "Image installé actuellement" + +msgid "Currently the commit log cannot be retrieved - please try later again" +msgstr "" + +msgid "Custom skip time for '1'/'3' buttons" +msgstr "Personnaliser délai saut pour touches '1'/'3'" + +msgid "Custom skip time for '4'/'6' buttons" +msgstr "Personnaliser délai saut pour touches '4'/'6'" + +msgid "Custom skip time for '7'/'9' buttons" +msgstr "Personnaliser délai saut pour touches '7'/'9'" + +msgid "Customize" +msgstr "Personnaliser" + +msgid "Customize channel list cursor behavior" +msgstr "Comportement du curseur dans la liste des chaînes" + +msgid "Cut" +msgstr "Couper" + +msgid "Cutlist editor..." +msgstr "Éditeur monter/couper..." + +msgid "Czech" +msgstr "Tchèque" + +msgid "D" +msgstr "D" + +msgid "DHCP" +msgstr "DHCP" + +msgid "DMM advanced" +msgstr "DMM avancée" + +msgid "DMM normal" +msgstr "DMM normal" + +msgid "DUAL LAYER DVD" +msgstr "DVD DOUBLE COUCHE" + +msgid "DVB subtitle black transparency" +msgstr "Transparence des sous-titres DVB" + +msgid "DVB-C" +msgstr "DVB-C" + +msgid "DVB-C ANNEX C" +msgstr "DVB-C ANNEX C" + +msgid "DVB-S" +msgstr "DVB-S" + +msgid "DVB-S2" +msgstr "DVB-S2" + +msgid "DVB-T" +msgstr "DVB-T" + +msgid "DVB-T2" +msgstr "DVB-T2" + +msgid "DVD data format" +msgstr "Format de données DVD" + +msgid "DVD file browser" +msgstr "Explorateur de fichier DVD" + +msgid "DVD media toolbox" +msgstr "Boite outils média DVD" + +msgid "DVD player" +msgstr "Lecteur DVD" + +msgid "DVD titlelist" +msgstr "Liste titres DVD" + +msgid "Danish" +msgstr "Danois" + +msgid "Date" +msgstr "Date" + +msgid "Date/time input" +msgstr "Entrée Date/Heure" + +msgid "Deep standby" +msgstr "Veille profonde" + +msgid "Default" +msgstr "Par défaut" + +msgid "Default movie location" +msgstr "Emplacement standard films" + +msgid "Default settings" +msgstr "Paramètres par défaut" + +msgid "Delay before key repeat starts:" +msgstr "Délai avant que la répétition des touches commence :" + +msgid "Delay for external subtitles" +msgstr "Délai pour les sous-titres externes" + +msgid "Delete" +msgstr "Effacer" + +msgid "Delete entry" +msgstr "Retire entrée" + +msgid "Delete failed!" +msgstr "L'effacement a échoué !" + +msgid "Delete file" +msgstr "Effacer fichier" + +msgid "Delete playlist entry" +msgstr "Effacer enrée liste lecture" + +msgid "Delete saved playlist" +msgstr "Effacer liste lecture sauvée" + +msgid "Delete timer" +msgstr "Effacer programmation" + +msgid "Delete..." +msgstr "Effacer..." + +msgid "Deleted" +msgstr "Supprimé" + +msgid "Deleted items" +msgstr "Eléments supprimés" + +msgid "Depth" +msgstr "Profondeur" + +msgid "Descramble http streams" +msgstr "Décrypter les flux HTTP" + +msgid "Description" +msgstr "Description" + +msgid "Deselect" +msgstr "Désélectionner" + +msgid "Details for plugin: " +msgstr "Détails pour plugin : " + +msgid "Detected HDD:" +msgstr "DD détecté : " + +msgid "Detected NIMs:" +msgstr "Tuners détectés :" + +msgid "Devicename:" +msgstr "Nom du périphérique :" + +msgid "Devide" +msgstr "" + +msgid "DiSEqC" +msgstr "DiSEqC" + +msgid "DiSEqC 1.0 command" +msgstr "DiSEqC 1.0 commande" + +msgid "DiSEqC 1.1 command" +msgstr "DiSEqC 1.1 commande" + +msgid "DiSEqC 1.1 repeats" +msgstr "DiSEqC 1.1 Répétitions" + +msgid "DiSEqC A/B" +msgstr "DiSEqC A/B" + +msgid "DiSEqC A/B/C/D" +msgstr "DiSEqC A/B/C/D" + +msgid "DiSEqC mode" +msgstr "Mode DiSEqC" + +#, python-format +msgid "DiSEqC port %s: %s" +msgstr "DiSEqC port %s : %s" + +msgid "DiSEqC-tester settings" +msgstr "Paramètres Testeur-DiSEqC" + +msgid "Dialing:" +msgstr "Appel :" + +msgid "Digital contour removal" +msgstr "Retrait contour digital" + +msgid "Direct playback of linked titles without menu" +msgstr "Lecture direct des titres liés sans menu" + +msgid "Directory" +msgstr "Répertoire" + +#, python-format +msgid "Directory %s does not exist." +msgstr "Répertoire %s n'existe pas." + +#, python-format +msgid "Directory %s nonexistent." +msgstr "Répertoire %s n'existe pas." + +msgid "Directory browser" +msgstr "Navigateur répertoire" + +#, python-format +msgid "Directory contains %d file(s) and %d sub-directories.\n" +msgstr "Le répertoire contient %d fichier(s) et %d sous-répertoire(s).\n" + +#, python-format +msgid "Directory contains %s and %s." +msgstr "Répertoire contient %s et %s." + +msgid "Disable" +msgstr "Désactiver" + +msgid "Disable Picture in Picture" +msgstr "Désactiver l'incrustation d'image" + +msgid "Disable background scanning" +msgstr "Désactiver l'analyse en arrière-plan" + +msgid "Disable timer" +msgstr "Désactiver programmation" + +msgid "Disabled" +msgstr "Désactivé" + +msgid "Disconnect" +msgstr "Déconnecter" + +msgid "Disk space to reserve for recordings (in GB)" +msgstr "Espace disque à réserver pour les enregistrements (en Go)" + +msgid "Display 16:9 content as" +msgstr "Afficher contenu 16:9 comme" + +msgid "Display 4:3 content as" +msgstr "Afficher contenu 4:3 comme" + +msgid "Display >16:9 content as" +msgstr "Afficher contenu >16:9 comme" + +msgid "Display and userinterface" +msgstr "Affichage et interface utilisateur" + +msgid "Display message before playing next movie" +msgstr "Afficher un message avant de lancer le prochain film" + +msgid "Display setup" +msgstr "Paramètres d'affichage" + +msgid "Do not change" +msgstr "Ne pas changer" + +msgid "Do not record" +msgstr "Ne pas enregistrer" + +msgid "Do nothing" +msgstr "Ne rien faire" + +msgid "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" +msgstr "" +"Voulez-vous vraiment vérifier le système de fichiers ?\n" +"Cela pourrait prendre beaucoup de temps!" + +msgid "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" +msgstr "" +"Voulez-vous vraiment convertir le système de fichiers ?\n" +"Vous ne pourrez pas revenir en arrière !" + +#, python-format +msgid "Do you really want to delete %s?" +msgstr "Voulez-vous vraiment effacer %s ?" + +#, python-format +msgid "" +"Do you really want to download\n" +"the plugin \"%s\"?" +msgstr "" +"Voulez-vous vraiment télécharger\n" +"le plugin \"%s\"?" + +msgid "Do you really want to exit?" +msgstr "Voulez-vous vraiment quitter ?" + +msgid "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" +msgstr "" +"Voulez-vous vraiment initialiser le périphérique ?\n" +"Toutes les données du disque seront perdues !" + +#, python-format +msgid "" +"Do you really want to remove\n" +"the plugin \"%s\"?" +msgstr "" +"Voulez-vous vraiment enlever\n" +"le plugin \"%s\" ?" + +#, python-format +msgid "Do you really want to remove directory %s from the disk?" +msgstr "Voulez-vous vraiment retirer le répertoire %s du disque ?" + +#, python-format +msgid "Do you really want to remove your bookmark of %s?" +msgstr "Voulez-vous vraiment retirer votre marque page %s ?" + +msgid "Do you want this?" +msgstr "Voulez-vous ceci?" + +msgid "Do you want to burn this collection to DVD medium?" +msgstr "Voulez-vous graver cette collection sur le DVD ?" + +msgid "Do you want to do a service scan?" +msgstr "Voulez-vous faire une analyse des services ?" + +msgid "Do you want to do another manual service scan?" +msgstr "Voulez-vous faire une autre analyse manuelle des services ?" + +#, python-format +msgid "Do you want to download the image to %s ?" +msgstr "Voulez-vous télécharger l'image vers %s ?" + +msgid "Do you want to install a channel list?" +msgstr "Voulez-vous installer la liste des chaines ?" + +msgid "Do you want to install the package:\n" +msgstr "Voulez-vous installer le paquet :\n" + +msgid "Do you want to play DVD in drive?" +msgstr "Voulez-vous lire le DVD dans le lecteur ?" + +msgid "Do you want to preview this DVD before burning?" +msgstr "Voulez-vous une prévisualisation du DVD avant de le graver ?" + +msgid "Do you want to reboot your receiver?" +msgstr "Voulez-vous redémarrer votre récepteur ?" + +msgid "Do you want to remove the package:\n" +msgstr "Voulez-vous retirer le paquet :\n" + +msgid "Do you want to restore your settings?" +msgstr "Voulez-vous restaurer vos paramètres ?" + +msgid "Do you want to resume this playback?" +msgstr "Voulez-vous reprendre cette lecture ?" + +#, python-format +msgid "Do you want to update your receiver to %s?" +msgstr "Voulez-vous mettre à jour votre récepteur vers %s ?" + +msgid "Do you want to update your receiver?" +msgstr "Voulez-vous mettre à jour votre récepteur ?" + +msgid "Do you want to upgrade the package:\n" +msgstr "Voulez-vous mettre à jour le paquet :\n" + +msgid "Don't stop current event but disable coming events" +msgstr "Ne pas stopper événement actuel, mais désactiver les prochains" + +#, python-format +msgid "Done - Installed, upgraded or removed %d package (%s)" +msgid_plural "Done - Installed, upgraded or removed %d packages (%s)" +msgstr[0] "Terminé - Installé, mis à jour ou retiré %d paquet (%s)" +msgstr[1] "Terminé - Installé, mis à jour ou retiré %d paquets (%s)" + +msgid "Download" +msgstr "Télécharge" + +#, python-format +msgid "Download %s from server" +msgstr "Télécharger %s depuis le Serveur" + +msgid "Download .NFI-files for USB-flasher" +msgstr "Téléchargement fichiers .NFI pour USB-flasheur" + +msgid "Download plugins" +msgstr "Télécharger plugins" + +msgid "Downloadable new plugins" +msgstr "Nouvelles extensions téléchargables" + +msgid "Downloadable plugins" +msgstr "Extensions téléchargeables" + +msgid "Downloading" +msgstr "Téléchargement" + +msgid "Downloading plugin information. Please wait..." +msgstr "Téléchargement des informations sur les extensions. Patientez SVP..." + +msgid "Dutch" +msgstr "Néerlandais" + +msgid "Dynamic contrast" +msgstr "Contraste dynamique" + +msgid "E" +msgstr "E" + +msgid "EPG" +msgstr "EPG" + +msgid "EPG language selection 1" +msgstr "Sélection de la langue EPG 1" + +msgid "EPG language selection 2" +msgstr "Sélection de la langue EPG 2" + +msgid "EPG selection" +msgstr "Sélection EPG" + +msgid "EPG settings" +msgstr "Paramètres EPG" + +#, python-format +msgid "ERROR - failed to scan (%s)!" +msgstr "ERREUR - échec lors de l'analyse (%s) !" + +msgid "East" +msgstr "Est" + +msgid "East limit set" +msgstr "Fixer limite Est" + +msgid "Edit" +msgstr "Éditer" + +msgid "Edit DNS" +msgstr "Éditer DNS" + +msgid "Edit bouquets list" +msgstr "Éditer liste bouquets" + +msgid "Edit chapters of current title" +msgstr "Éditer chapitres titre actuel" + +msgid "Edit services list" +msgstr "Éditer liste services" + +msgid "Edit settings" +msgstr "Éditer paramètres" + +msgid "Edit the nameserver configuration of your receiver.\n" +msgstr "Modifier la configuration du serveur de nom de votre récepteur.\n" + +msgid "Edit the network configuration of your receiver.\n" +msgstr "Modifier la configuration réseau de votre récepteur.\n" + +msgid "Edit timer" +msgstr "Éditer programmation" + +msgid "Edit title" +msgstr "Éditer titre" + +msgid "Edit upgrade source url." +msgstr "Éditer url source mise à jour." + +msgid "Education/Science/..." +msgstr "Éducation/Science/..." + +msgid "Electronic Program Guide" +msgstr "Guide électronique programme" + +msgid "Enable" +msgstr "Activer" + +msgid "Enable 'neutrino' style channel select controlling" +msgstr "" + +msgid "Enable 'neutrino' style zap controlling" +msgstr "" + +msgid "Enable 5V for active antenna" +msgstr "Autoriser 5V pour antenne active" + +msgid "Enable EIT EPG" +msgstr "Activer EPG EIT" + +msgid "Enable MHW EPG" +msgstr "Activer EPG MHW" + +msgid "Enable Netmed EPG" +msgstr "Activer EPG Netmed" + +msgid "Enable OK for channel selection" +msgstr "" + +msgid "Enable ViaSat EPG" +msgstr "Activer EPG ViaSat" + +msgid "Enable Virgin EPG" +msgstr "" + +msgid "Enable Wake On LAN" +msgstr "" + +msgid "Enable auto fast scan" +msgstr "Actvier auto fast scan" + +msgid "Enable bouquet selection in multi-EPG" +msgstr "Activer la sélection bouquet multi-EPG" + +msgid "Enable freesat EPG" +msgstr "Activer EPG freesat" + +msgid "Enable multiple bouquets" +msgstr "Activer bouquets multiples" + +msgid "Enable parental control" +msgstr "Activer contrôle parental" + +msgid "Enable teletext caching" +msgstr "Activer la mise en cache du télétexte" + +msgid "Enable zapping with CH+/-, B+/-, P+/-" +msgstr "" + +msgid "Enabled" +msgstr "Activer" + +msgid "Encrypted: " +msgstr "Crypté : " + +msgid "Encryption" +msgstr "Cryptage" + +msgid "Encryption key" +msgstr "Clés cryptage" + +msgid "Encryption key type" +msgstr "Type de clé cryptage" + +msgid "Encryption:" +msgstr "Cryptage :" + +msgid "End time" +msgstr "Heure fin" + +msgid "End time to ignore inactivity sleeptimer" +msgstr "Heure de fin pour ignorer l'arrêt automatique" + +msgid "End time to ignore shutdown in standby" +msgstr "" + +msgid "English" +msgstr "Anglais" + +msgid "Enigma2 skin selector" +msgstr "Enigma2 sélection du skin" + +msgid "Enter main menu..." +msgstr "Entrer dans le menu principal..." + +msgid "Enter pin code" +msgstr "Saisir code PIN" + +msgid "Enter the service pin" +msgstr "Entrer le pin service" + +msgid "Equal to" +msgstr "Égale au" + +msgid "Error" +msgstr "Erreur" + +msgid "Error code" +msgstr "Code d'erreur" + +msgid "Error executing plugin" +msgstr "Erreur d'exécution de l'extension" + +#, python-format +msgid "" +"Error: %s\n" +"Retry?" +msgstr "" +"Erreur : %s\n" +"Réessayer ?" + +msgid "Estonian" +msgstr "Estonien" + +msgid "Ethernet network interface" +msgstr "Interface réseau Ethernet" + +msgid "Event font size (relative to skin size)" +msgstr "Taille de la police de l'événement (par rapport à la taille du skin)" + +msgid "Event view" +msgstr "Programme TV" + +msgid "Event view menu" +msgstr "Menu d'affichage de l'événement" + +msgid "Everywhere" +msgstr "Partout" + +msgid "Exceeds dual layer medium!" +msgstr "Dépasse la capacité du support double couche !" + +msgid "Execution finished!!" +msgstr "Exécution terminée !!" + +msgid "Execution progress:" +msgstr "Avancement de l'exécution :" + +msgid "Exif" +msgstr "Exif" + +msgid "Exit" +msgstr "Quitter" + +msgid "Exit EPG" +msgstr "Quitter l'EPG" + +msgid "Exit editor" +msgstr "Quitter éditeur" + +msgid "Exit input device selection." +msgstr "Quitter sélection périphériques entrée" + +msgid "Exit media player?" +msgstr "Quitter media player?" + +msgid "Exit mediaplayer" +msgstr "Quitter lecteur média" + +msgid "Exit movie list" +msgstr "Quitter liste film" + +msgid "Exit movie player?" +msgstr "Quitter lecteur média ?" + +msgid "Exit nameserver configuration" +msgstr "Quitter configuration du serveur de nom" + +msgid "Exit network interface list" +msgstr "Quitter liste interface réseau" + +msgid "Exit network wizard" +msgstr "Quitter assistant réseau" + +msgid "Exit the wizard" +msgstr "Quitter l'assistant" + +msgid "Expert" +msgstr "Expert" + +msgid "Extend sleeptimer 15 minutes" +msgstr "Étendre l'arrêt automatique de 15 minutes" + +msgid "Extended Software" +msgstr "Logiciel étendu" + +msgid "Extended Software Plugin" +msgstr "Plugin logiciel étendu" + +msgid "Extended network setup plugin..." +msgstr "Extension paramètre réseau avancée..." + +msgid "Extended setup..." +msgstr "Paramètre avancé..." + +msgid "Extensions" +msgstr "Extensions" + +msgid "Extensions management" +msgstr "Gestionnaire extensions" + +msgid "External PiP" +msgstr "" + +msgid "External subtitle color" +msgstr "Couleur des sous-titres externes" + +msgid "Extra motor options" +msgstr "Options moteur supplémentaires" + +msgid "FEC" +msgstr "FEC" + +msgid "FTA" +msgstr "En Clair" + +msgid "Factory reset" +msgstr "Réinitialisation usine" + +msgid "Failed" +msgstr "Échoué" + +msgid "Failed to write /tmp/positionersetup.log: " +msgstr "Échec de l'écriture/tmp/positionersetup.log :" + +#, python-format +msgid "Fan %d" +msgstr "%d ventilateur" + +#, python-format +msgid "Fan %d PWM" +msgstr "%d ventilateur PWM" + +#, python-format +msgid "Fan %d voltage" +msgstr "%d ventilateur voltage" + +msgid "Fan operation" +msgstr "Activité du ventilateur" + +msgid "Fan speed" +msgstr "Vitesse du ventilateur" + +msgid "Fast" +msgstr "Rapide" + +msgid "Fast DiSEqC" +msgstr "DiSEqC rapide" + +msgid "Fast Scan" +msgstr "Scan Rapide" + +msgid "Fast epoch" +msgstr "Époque rapide" + +msgid "Fast forward speeds" +msgstr "Vitesses avance rapide" + +msgid "Favourites" +msgstr "Favoris" + +msgid "File appears to be busy.\n" +msgstr "Le fichier semble être occupé.\n" + +msgid "Filesystem check" +msgstr "Vérification du système de fichiers" + +msgid "Final position at" +msgstr "Position finale à" + +msgid "Final position at index" +msgstr "Position finale à l'indice" + +msgid "Fine movement" +msgstr "Contrôle fin" + +msgid "Finetune" +msgstr "Réglage avancé" + +msgid "Finished" +msgstr "Terminé" + +msgid "Finished configuring your network" +msgstr "Termine la configuration de votre réseau" + +msgid "Finished restarting your network" +msgstr "Termine le redémarrage de votre réseau" + +msgid "Finnish" +msgstr "Finlandais" + +msgid "Fixed" +msgstr "Fixé" + +msgid "Flash" +msgstr "Flash" + +msgid "Flashing failed" +msgstr "Échec du flash" + +msgid "Following tasks will be done after you press OK!" +msgstr "Le suivi des tâches suivantes sera fait après avoir appuyé sur OK !" + +msgid "Format" +msgstr "Format" + +msgid "Forward volume keys" +msgstr "Faire suivre les touches du volume" + +msgid "Frame size in full view" +msgstr "Taille du cadre en plein écran" + +msgid "French" +msgstr "Français" + +msgid "Frequency" +msgstr "Fréquence" + +msgid "Frequency bands" +msgstr "Bandes fréquence" + +msgid "Frequency scan step size(khz)" +msgstr "Taille du seuil pour scan fréquence (khz)" + +msgid "Frequency steps" +msgstr "Seuils des fréquences" + +msgid "Frequency:" +msgstr "Fréquence:" + +msgid "Fri" +msgstr "Ven" + +msgid "Friday" +msgstr "Vendredi" + +msgid "From :" +msgstr "De :" + +#, python-format +msgid "Frontprocessor version: %d" +msgstr "Version du frontprocessor : %d" + +msgid "Full transparency" +msgstr "Transparence complète" + +msgid "Fulview resulution" +msgstr "Résolution plein écran" + +msgid "Function of OK button" +msgstr "Fonction de la touche OK" + +msgid "Further Options" +msgstr "Options supplémentaires" + +msgid "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" +msgstr "" +"L'interface doit redémarrer pour appliquer ce thème\n" +"Voulez-vous relancer l'interface maintenant ?" + +msgid "Gateway" +msgstr "Passerelle" + +msgid "General AC3 delay" +msgstr "Délai général AC3" + +msgid "General PCM delay" +msgstr "Délai général PCM" + +msgid "Genre" +msgstr "Genre" + +msgid "German" +msgstr "Allemand" + +msgid "Get latest experimental image" +msgstr "Obtenir la dernière image expérimental" + +msgid "Get latest release image" +msgstr "Obtenir la dernière image publiée" + +msgid "Getting plugin information. Please wait..." +msgstr "Récupération des informations du plugin. Veuillez patienter..." + +msgid "Go down the list" +msgstr "Aller en bas de la liste" + +msgid "Go to first movie or last item" +msgstr "Aller au premier film ou au dernier élément" + +msgid "Go to first movie or top of list" +msgstr "Aller au premier film ou en haut de liste" + +msgid "Go to first service" +msgstr "Aller au premier service" + +msgid "Go to last service" +msgstr "Aller au dernier service" + +msgid "Go to next event" +msgstr "Aller à l'évènement suivant" + +msgid "Go to next page of service" +msgstr "Aller à la page suivante des services" + +msgid "Go to previous event" +msgstr "Aller à l'évènement précédent" + +msgid "Go to previous page of service" +msgstr "Aller à la page précédente des services" + +msgid "Go up the list" +msgstr "Remonter la liste" + +msgid "Goto" +msgstr "Aller vers" + +msgid "Goto 0" +msgstr "Aller à 0" + +msgid "Goto :" +msgstr "Aller à :" + +msgid "Goto X" +msgstr "Aller sur X" + +msgid "Goto index position" +msgstr "Aller sur indice de position" + +msgid "Goto next day of events" +msgstr "Aller au jour suivant des évènements" + +msgid "Goto next page of events" +msgstr "Aller à la page suivante des évènements" + +msgid "Goto position" +msgstr "Aller à la position" + +msgid "Goto previous day of events" +msgstr "Aller au jour précédent des évènements" + +msgid "Goto previous page of events" +msgstr "Aller à la page précédente des évènements" + +msgid "Goto specific date/time" +msgstr "Aller à une date/heure précise" + +msgid "GotoX calibration" +msgstr "Aller sur X calibration" + +msgid "GraphMultiEpg Settings" +msgstr "Paramètres GraphMultiEpg" + +msgid "Graphical Multi EPG" +msgstr "Multi EPG Graphique" + +msgid "Greek" +msgstr "Grèque" + +msgid "Green boost" +msgstr "Intensifier le vert" + +msgid "Guard interval" +msgstr "Intervalle de garde" + +msgid "HD list" +msgstr "Liste HD" + +msgid "HDMI-CEC setup" +msgstr "Configurer HDMI-CEC" + +msgid "Handle standby from TV" +msgstr "Gérer le mode veille de la TV" + +msgid "Handle wakeup from TV" +msgstr "Gérer le mode réveil de la TV" + +msgid "Hard disk" +msgstr "Disque dur" + +msgid "Hard disk setup" +msgstr "Paramètres du disque dur" + +msgid "Hard disk standby after" +msgstr "Disque dur en veille après" + +msgid "Harddisk" +msgstr "Disque dur" + +msgid "Hardware: " +msgstr "Matériel : " + +msgid "Hebrew" +msgstr "Hébreu" + +msgid "Helps setting up your dish" +msgstr "Vous aide à configurer votre antenne" + +msgid "Hidden network" +msgstr "Réseau caché" + +msgid "Hide CI messages" +msgstr "Masquer les messages CI" + +msgid "Hide channel list in radio mode" +msgstr "Cacher la liste des chaînes en mode radio" + +msgid "Hide known extensions" +msgstr "Cacher les extensions connues" + +msgid "Hide number markers" +msgstr "Cacher les nombres des marqueurs" + +msgid "Hide player" +msgstr "Masquer le lecteur" + +msgid "Hide zap errors" +msgstr "Masquer les erreurs de zap" + +msgid "Hierarchy info" +msgstr "Info hiérarchie" + +msgid "Hierarchy information" +msgstr "Hiérarchie de l'Information" + +msgid "High bitrate support" +msgstr "Support \"Hight bitrate\"" + +msgid "Hold screen" +msgstr "Vérouiller l'écran" + +msgid "Hold till locked" +msgstr "Bloquer l'écran jusqu'au vérouillage" + +msgid "Home" +msgstr "Accueil" + +msgid "Horizontal" +msgstr "Horizontal" + +msgid "Horizontal turning speed" +msgstr "Vitesse rotation horizontale" + +msgid "How many minutes do you want to record?" +msgstr "Combien de minutes voulez-vous enregistrer ?" + +msgid "Hue" +msgstr "Teinte" + +msgid "Hungarian" +msgstr "Hongrois" + +msgid "IP address" +msgstr "Adresse IP" + +msgid "ISO file is too large for this filesystem!" +msgstr "Le fichier ISO est trop grand pour ce système de fichiers !" + +msgid "ISO path" +msgstr "Chemin ISO" + +msgid "Icons" +msgstr "Icônes" + +msgid "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." +msgstr "" +"Si vous voyez ceci, quelque chose fonctionne\n" +"mal avec la péritel. Veuillez presser OK\n" +"pour continuer." + +msgid "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." +msgstr "Si votre TV a un perfectionnement de luminosité ou de contraste, neutralisez-le. S'il y a quelque chose appelé \"dynamique\", positionnez le sur standard. Ajustez le niveau de contre-jour sur une valeur convenant à votre goût. Baissez le contraste sur votre TV autant que possible. Puis baissez les paramètres luminosité aussi bas que possible, mais assurez-vous que les deux nuances les plus plus basses de gris soient distinguable. Ne pas s'inquiéter des nuances luminosité maintenant. Elles seront fixées dans la prochaine étape. si vous êtes satisfait du résultat, pressez OK." + +msgid "Image: " +msgstr "Image : " + +msgid "Immediate shutdown" +msgstr "Extinction immédiate" + +msgid "In order to record a timer, the TV was switched to the recording service!\n" +msgstr "Afin d'enregistrer une émission programmée, la TV zappera sur la chaîne enregistrée !\n" + +msgid "In progress" +msgstr "En progression" + +msgid "Inactivity Sleeptimer" +msgstr "Arrêt automatique en cas d'inactivité" + +msgid "Include AIT in http streams" +msgstr "Inclure AIT dans les flux HTTP" + +msgid "Include ECM in http streams" +msgstr "Inclure ECM dans les flux HTTP" + +msgid "Include EIT in http streams" +msgstr "Inclure EIT dans les flux HTTP" + +msgid "Incorrect type service for PiP!" +msgstr "Type de service incorrect pour PiP (image-dans-image)!" + +msgid "Increased voltage" +msgstr "Augmenter la tension" + +msgid "Index" +msgstr "Index" + +msgid "Index allocated:" +msgstr "Indice attribué :" + +msgid "Info" +msgstr "Info" + +msgid "Info bar" +msgstr "Barre d'infos" + +msgid "Info bar timeout" +msgstr "Délai d'affichage de la barre d'infos" + +msgid "Infobar frontend data source" +msgstr "Source des données du frontend dans la barre d'infos" + +msgid "Information" +msgstr "Informations" + +msgid "Init" +msgstr "Initialiser" + +msgid "Initial fast forward speed" +msgstr "Vitesse initiale d'Avance Rapide" + +msgid "Initial location in new timers" +msgstr "Emplacement initial pour les nouveaux enregistrements" + +msgid "Initial lock ratio" +msgstr "Ratio initial de vérouillage" + +msgid "Initial rewind speed" +msgstr "Vitesse initiale de Retour Rapide" + +msgid "Initial signal quality" +msgstr "Qualité du signal initial" + +msgid "Initial signal quality:" +msgstr "Qualité du signal initial :" + +msgid "Initialization" +msgstr "Initialisation" + +msgid "Initialize" +msgstr "Initialiser" + +msgid "Initializing storage device..." +msgstr "Initialiser le périphérique de stockage..." + +msgid "Input" +msgstr "Entrée" + +msgid "Input device setup" +msgstr "Paramètres du périphérique entrée" + +msgid "Input devices" +msgstr "Périphériques entrée" + +msgid "Install" +msgstr "Installer" + +msgid "Install a new image with a USB stick" +msgstr "Installer une nouvelle image avec la clé USB" + +msgid "Install a new image with your web browser" +msgstr "Installer une nouvelle image avec votre navigateur web" + +msgid "Install channel list" +msgstr "Installer liste des chaînes" + +msgid "Install extensions" +msgstr "Installer des extensions" + +msgid "Install extensions." +msgstr "Installer extensions." + +msgid "Install local extension" +msgstr "Installer extension locale" + +msgid "Install picons on" +msgstr "Installer les picons sur" + +msgid "Install softcam" +msgstr "Installer softcam" + +msgid "Installation has completed." +msgstr "L'installation est terminée." + +msgid "Installation or removal has completed." +msgstr "L'installation ou le retrait est terminé." + +msgid "Installing" +msgstr "Installation" + +msgid "Installing software..." +msgstr "Installation du logiciel..." + +msgid "Instant recording location" +msgstr "Emplacement enregistrements immédiats" + +msgid "Instant recording..." +msgstr "Enregistrement Immédiat..." + +msgid "Interface: " +msgstr "Interface : " + +msgid "Intermediate" +msgstr "Intermédiaire" + +msgid "Internal flash" +msgstr "Flash interne" + +msgid "Internal hdd only" +msgstr "Disque dur interne seulement" + +msgid "Interval between keys when repeating:" +msgstr "Intervalle entre les touches lorsque répétition :" + +#, python-format +msgid "Invalid directory selected: %s" +msgstr "Répertoire sélectionné non valide : %s" + +msgid "Invalid location" +msgstr "Emplacement non valide" + +msgid "Invalid transponder data" +msgstr "Donnée du transpondeur non valide" + +msgid "Inversion" +msgstr "Inversion" + +msgid "Invert" +msgstr "Inverser" + +msgid "Ipkg" +msgstr "Ipkg" + +msgid "Is this setting ok?" +msgstr "Voulez-vous utiliser ce paramètre ?" + +msgid "Is this video mode ok?" +msgstr "Est-ce que ce mode vidéo est OK ?" + +msgid "Italian" +msgstr "Italien" + +msgid "Items per page " +msgstr "Éléments par Page " + +msgid "Items per page for list screen" +msgstr "Éléments par page pour la liste écran" + +msgid "Job overview" +msgstr "Vue travail" + +msgid "Jump to beginning of list" +msgstr "Aller au début de la liste" + +msgid "Jump to end of list" +msgstr "Se rendre à la fin de liste" + +msgid "Jump to next marked position" +msgstr "Se rendre à la position marquée suivante" + +msgid "Jump to previous marked position" +msgstr "Se rendre à la position marquée précédente" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect) +msgid "Just scale" +msgstr "Juste mettre à l'échelle" + +msgid "Keep service" +msgstr "Garder le service" + +msgid "Kernel version: " +msgstr "Version du Noyau : " + +msgid "Keyboard" +msgstr "Clavier" + +msgid "Keyboard map" +msgstr "Agencement du clavier" + +msgid "Keyboard setup" +msgstr "Paramétrage du clavier" + +msgid "LAN adapter" +msgstr "Adaptateur réseau local" + +msgid "LAN connection" +msgstr "Connexion LAN" + +msgid "LNB" +msgstr "LNB" + +msgid "Language" +msgstr "Langue" + +msgid "Language selection" +msgstr "Sélection de la langue" + +msgid "Last config" +msgstr "Dernière config" + +msgid "Last speed" +msgstr "Dernière vitesse" + +msgid "Last upgrade: " +msgstr "Dernière Mise à jour : " + +msgid "Latest Commits" +msgstr "Derniers commits" + +msgid "Latitude" +msgstr "Latitude" + +msgid "Latvian" +msgstr "Letton" + +msgid "Leave DVD player?" +msgstr "Quitter le lecteur DVD ?" + +msgid "Left" +msgstr "Gauche" + +msgid "Left from servicename" +msgstr "À la gauche du nom du service" + +msgid "Leisure hobbies" +msgstr "Passe-temps/loisirs" + +#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term. +msgid "Letterbox" +msgstr "Letterbox" + +msgid "Letterbox zoom" +msgstr "Letterbox zoom" + +msgid "Limit character set for recording filenames" +msgstr "Jeu de caractères limité pour noms de fichier enregistré" + +msgid "Limit east" +msgstr "Limite est" + +msgid "Limit the characters that can be used in recording filenames to (7 bit) ascii. This ensures compatibility with operating systems or file systems with limited character sets." +msgstr "Limiter les caractères qui peuvent être utilisés dans les noms de fichiers d'enregistrement à (7 bits) ascii. Cela garantit la compatibilité avec les systèmes d'exploitation ou des systèmes de fichiers avec des jeux de caractères limités." + +msgid "Limit west" +msgstr "Limite ouest" + +msgid "Limits cancelled" +msgstr "Limites à ne pas appliquer" + +msgid "Limits enabled" +msgstr "Limites activées" + +msgid "Limits off" +msgstr "Désactiver les limites" + +msgid "Limits on" +msgstr "Limites activées" + +msgid "Link quality:" +msgstr "Qualité du lien :" + +msgid "Link:" +msgstr "Lien :" + +msgid "Linked titles with a DVD menu" +msgstr "Titres liés avec un menu DVD" + +msgid "List EPG functions..." +msgstr "Liste fonctions EPG..." + +msgid "List available networks" +msgstr "Liste des réseaux disponibles" + +msgid "List mode" +msgstr "Mode liste" + +msgid "List of storage devices" +msgstr "Liste des Périphériques de Stockage" + +msgid "List type" +msgstr "Liste de type" + +#, python-format +msgid "List version %d, found %d channel" +msgid_plural "List version %d, found %d channels" +msgstr[0] "Liste version %d, %d chaîne trouvée" +msgstr[1] "Liste version %d, %d chaînes trouvées" + +msgid "Listen to the radio..." +msgstr "Écouter la radio..." + +msgid "Lists reloaded!" +msgstr "" + +msgid "Lithuanian" +msgstr "Lituanien" + +msgid "Load" +msgstr "Charger" + +msgid "Load Length of Movies in Movielist" +msgstr "Charger la durée des films dans la liste des films" + +msgid "Load length of movies in movie list" +msgstr "Charger longueur des films dans liste des films" + +msgid "Load playlist" +msgstr "Charger liste lecture" + +msgid "Local network" +msgstr "Réseau local" + +msgid "Location" +msgstr "Emplacement" + +msgid "Location for instant recordings" +msgstr "Emplacement pour les enregistrements instantanés" + +msgid "Lock ratio" +msgstr "Verrouiller rapport" + +msgid "Lock:" +msgstr "Verrouiller :" + +msgid "Log results to harddisk" +msgstr "Sauver log sur disque dur" + +msgid "Long filenames" +msgstr "Nom de fichiers long" + +msgid "Long key press" +msgstr "Appui long sur touche" + +msgid "Longitude" +msgstr "Longitude" + +msgid "Loop through to" +msgstr "Rebouclé par" + +msgid "Luxembourgish" +msgstr "Luxembourgeois" + +msgid "MMC card" +msgstr "Carte MMC" + +msgid "MORE" +msgstr "PLUS" + +msgid "Main menu" +msgstr "Menu principal" + +msgid "Maintain old EPG data for" +msgstr "Maintenir les anciennes données EPG (min)" + +msgid "Make this mark an 'in' point" +msgstr "Faire de cette marque un point 'en'" + +msgid "Make this mark an 'out' point" +msgstr "Faire de cette marque un point 'hors'" + +msgid "Make this mark just a mark" +msgstr "Faire de cette marque juste une marque" + +msgid "Manage extensions" +msgstr "Gestionnaire des extensions" + +msgid "Manage your receiver's software" +msgstr "Gestion de votre logiciel récepteur" + +msgid "Manual" +msgstr "Manuel" + +msgid "Manual Scan" +msgstr "Analyse Manuelle" + +msgid "Manual configuration" +msgstr "Configuration manuelle" + +msgid "Manual scan" +msgstr "Analyse Manuelle" + +msgid "Manual transponder" +msgstr "Transpondeur manuel" + +msgid "Manufacturer" +msgstr "Constructeur" + +msgid "Margin after recording (minutes)" +msgstr "Marge après l'enregistrement (min)" + +msgid "Margin before recording (minutes)" +msgstr "Marge avant l'enregistrement (min)" + +msgid "Max memory positions" +msgstr "Positions mémoires max" + +msgid "Max. bitrate: " +msgstr "Bitrate Max : " + +msgid "Media player" +msgstr "Lecteur de médias" + +msgid "Media scanner" +msgstr "Media scanner" + +msgid "Medium is not a writeable DVD!" +msgstr "Ce support n'est pas un DVD enregistrable !" + +msgid "Medium is not empty!" +msgstr "Ce support n'est pas vide !" + +msgid "Memory" +msgstr "Mémoire" + +msgid "Memory index" +msgstr "Index mémoire" + +msgid "Menu" +msgstr "Menu" + +msgid "Message" +msgstr "Message" + +msgid "Message..." +msgstr "Message..." + +#, python-format +msgid "Minimum age %d years" +msgstr "Age minimum %d ans" + +msgid "Minimum send interval" +msgstr "Intervalle minimum d'envoi" + +msgid "Missing " +msgstr "Manquant " + +msgctxt "Satellite configuration mode" +msgid "Mode" +msgstr "Mode" + +msgctxt "Video output mode" +msgid "Mode" +msgstr "Mode" + +msgid "Model: " +msgstr "Modèle : " + +msgid "Modulation" +msgstr "Modulation" + +msgid "Modulator" +msgstr "Modulateur" + +msgid "Mon" +msgstr "Lun" + +msgid "Mon-Fri" +msgstr "Lun-Ven" + +msgid "Monday" +msgstr "Lundi" + +msgid "Mosquito noise reduction" +msgstr "Réduction bruit pixelisation" + +msgid "Mount" +msgstr "Monter" + +msgid "Move" +msgstr "Déplacer" + +msgid "Move PiP to main picture" +msgstr "Déplacer PiP vers principale" + +msgid "Move Picture in Picture" +msgstr "Déplacer l'incrustation d'image" + +msgid "Move east" +msgstr "Déplacer vers l'est" + +msgid "Move to other directory" +msgstr "Déplacer vers un autre répertoire" + +msgid "Move to position X" +msgstr "Déplacer vers position X" + +msgid "Move west" +msgstr "Déplacer vers l'ouest" + +msgid "Moved to position 0" +msgstr "Déplacer vers position 0" + +msgid "Moved to position at index" +msgstr "Déplacer vers l'indice de position" + +msgid "Movement" +msgstr "Déplacement" + +msgid "Movie List Configuration" +msgstr "Configuration de la liste des films" + +msgid "Movie Selection" +msgstr "Sélection d'un film" + +msgid "Movie list configuration" +msgstr "Configuration de la Liste des Films" + +msgid "Movie location" +msgstr "Emplacement des films" + +msgid "Movie selection" +msgstr "Sélection des films" + +msgid "Movie/Drama" +msgstr "Film/Fiction" + +msgid "Movielist menu" +msgstr "Menu liste des films" + +msgid "Moving" +msgstr "En mouvement" + +msgid "Moving east ..." +msgstr "Déplacement vers l'est ..." + +msgid "Moving to position" +msgstr "Déplacement vers position" + +msgid "Moving west ..." +msgstr "Déplacement vers l'ouest ..." + +msgid "Multi EPG" +msgstr "Multi EPG" + +msgid "Multi-EPG bouquet selection" +msgstr "Sélection bouquet Multi-EPG" + +msgid "Multimedia" +msgstr "Multimédia" + +msgid "Multiple service support" +msgstr "Support service multiple" + +msgid "Multiplex" +msgstr "Multiplex" + +msgid "Multisat" +msgstr "Multisat" + +msgid "Multisat all select" +msgstr "Sélectionner tous les multisat" + +msgid "Music/Ballet/Dance" +msgstr "Musique/Ballet/Danse" + +msgid "Mute" +msgstr "Sourdine" + +msgid "N/A" +msgstr "N/A" + +msgid "NEXT" +msgstr "SUIVANT" + +msgid "NFI image flashing" +msgstr "Flash de l'image NFI" + +msgid "NFI image flashing completed. Press Yellow to Reboot!" +msgstr "Flash de l'image NFI terminé. Presser le bouton Jaune pour Redémarrer !" + +msgid "NIM" +msgstr "Tuner" + +msgid "NOW" +msgstr "MAINTENANT" + +msgid "NTSC" +msgstr "NTSC" + +msgid "Name" +msgstr "Nom" + +msgid "Nameserver" +msgstr "Serveur de nom" + +#, python-format +msgid "Nameserver %d" +msgstr "Serveur de nom %d" + +msgid "Nameserver settings" +msgstr "Paramètres serveur de nom" + +msgid "Nameserver setup" +msgstr "Paramètres serveur de nom" + +msgid "Namespace" +msgstr "Espace nom" + +msgid "Netmask" +msgstr "Masque sous-réseau" + +msgid "Network" +msgstr "Réseau" + +msgid "Network ID" +msgstr "ID Réseau" + +msgid "Network configuration..." +msgstr "Configuration réseau..." + +msgid "Network mount" +msgstr "Monter réseau" + +#, python-format +msgid "Network mount %s" +msgstr "Monter réseau %s" + +msgid "Network name (SSID)" +msgstr "Nom du réseau (SSID)" + +msgid "Network scan" +msgstr "Analyse du réseau" + +msgid "Network setup" +msgstr "Paramètres du réseau" + +msgid "Network test" +msgstr "Test du réseau" + +msgid "Network test..." +msgstr "Test du réseau..." + +msgid "Network test: " +msgstr "Test du réseau : " + +msgid "Network wizard" +msgstr "Assistant Réseau" + +msgid "Network:" +msgstr "Réseau : " + +msgid "New" +msgstr "Nouvelle" + +msgid "New PIN" +msgstr "Nouveau PIN" + +msgid "New version:" +msgstr "Nouvelle version :" + +msgid "News Current Affairs" +msgstr "Actualités/Courant/Affaires" + +msgctxt "button label, 'next screen'" +msgid "Next" +msgstr "Suivant" + +msgctxt "now/next: 'next' event label" +msgid "Next" +msgstr "Suivant" + +msgid "No" +msgstr "Non" + +msgid "No (supported) DVDROM found!" +msgstr "Aucun lecteur DVD (supporté) trouvé !" + +msgid "No Connection" +msgstr "Pas de connexion" + +msgid "No HDD found or HDD not initialized!" +msgstr "Aucun disque dur trouvé, ou disque dur non initialisé !" + +msgid "No backup needed" +msgstr "Pas de sauvegarde nécessaire" + +msgid "No cable tuner found!" +msgstr "Aucun tuner câble trouvé !" + +msgid "" +"No data on transponder!\n" +"(Timeout reading PAT)" +msgstr "" +"Aucune donnée sur le transpondeur !\n" +"(Délai dépassé en lisant PAT)" + +msgid "No delay" +msgstr "Aucun délai" + +msgid "No description available." +msgstr "Description non disponible." + +msgid "No details for this image file" +msgstr "Aucun détails pour ce fichier image" + +msgid "No displayable files on this medium found!" +msgstr "Aucun fichiers affichables trouvés sur ce support !" + +msgid "No event info found, recording indefinitely." +msgstr "Aucune information trouvée sur l'émission, enregistrement indéfini." + +msgid "No fast winding possible yet.. but you can use the number buttons to skip forward/backward!" +msgstr "Aucun passage rapide possible encore. Cependant, vous pouvez sauter avec les boutons numériques avant/arrière !" + +msgid "No free index available" +msgstr "Aucun index libre disponible" + +msgid "No free tuner!" +msgstr "Aucun tuner de libre" + +msgid "No network connection available." +msgstr "Aucune connexion réseau disponible." + +msgid "No networks found" +msgstr "Aucun réseau trouvé" + +msgid "No new plugins found" +msgstr "Aucun nouveau plugin trouvé" + +msgid "No positioner capable frontend found." +msgstr "Aucun positionneur tuner détecté." + +msgid "No satellites configured. Plese check your tuner setup." +msgstr "Aucun satellite configuré. Merci de vérifier la configuration de votre tuner." + +msgid "No service" +msgstr "Pas de service" + +msgid "No services/providers selected" +msgstr "Aucun Services/Opérateurs sélectionnés" + +msgid "No standby" +msgstr "Pas de veille" + +msgid "No suitable sat tuner found!" +msgstr "Aucun tuner sat approprié trouvé!" + +msgid "No tags are set on these movies." +msgstr "Aucun pointeur réglé sur ces films." + +msgid "No timeout" +msgstr "Pas de délai dépassé" + +msgid "No to all" +msgstr "Non à tout" + +msgid "No transparency" +msgstr "Aucune transparence" + +msgid "No tuner is configured for use with a diseqc positioner!" +msgstr "Aucun tuner n'est configuré pour utiliser un positionneur DiSEqC !" + +msgid "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Aucun tuner est activé !\n" +"Veuillez paramétrer vos tuner avant de lancer l'analyse des services." + +msgid "No updates available" +msgstr "Aucune mise à jour disponible" + +msgid "No updates available. Please try again later." +msgstr "Pas de mises à jour disponibles. S'il vous plaît réessayer plus tard." + +msgid "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" +msgstr "" +"Aucun Service-PIN trouvé !\n" +"Voulez-vous changer le Service-PIN maintenant ?\n" +"Si vous répondez 'NON', la protection de service restera désactivé !" + +msgid "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" +msgstr "" +"Aucun Réglages-PIN trouvé !\n" +"Voulez-vous changer le Réglages-PIN maintenant ?\n" +"Si vous répondez 'NON', la protection des Réglages restera désactivé !" + +msgid "No wireless networks found! Searching..." +msgstr "Aucun réseau sans fil trouvé ! Recherche en cours..." + +msgid "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." +msgstr "Aucun adaptateur réseau fonctionnel trouvé.Veuillez vérifier que vous avez connecté un câble réseau et que le réseau est configuré correctement." + +msgid "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." +msgstr "" +"Aucun adaptateur réseau sans fil trouvé.\n" +"Veuillez vérifier que vous avez inséré un périphérique WLAN compatible et que votre réseau est configuré correctement." + +msgid "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." +msgstr "" +"Aucun adaptateur réseau sans fil trouvé.\n" +"Veuillez vérifier que vous avez inséré un périphérique WLAN compatible ou activer votre interface réseau locale." + +msgid "No, but restart from begin" +msgstr "Non, mais relancer depuis le début" + +msgid "No, do nothing." +msgstr "Non, ne rien faire." + +msgid "No, just start my receiver" +msgstr "Non, il suffit de démarrer mon récepteur" + +msgid "No, never" +msgstr "Non, jamais" + +msgid "None" +msgstr "Aucun" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right) +msgid "Nonlinear" +msgstr "Non Linéaire" + +msgid "Normal mode" +msgstr "Mode Normal" + +msgid "North" +msgstr "Nord" + +msgid "Norwegian" +msgstr "Norvégien" + +msgid "Not associated" +msgstr "Non-Associé" + +msgid "Not configured" +msgstr "Pas configuré" + +#, python-format +msgid "Not enough disk space. Please free up some disk space and try again. (%d MB required, %d MB available)" +msgstr "Espace disque insufisant. Veuillez libérer de l'espace disque et réessayer. (%d MB requis, %d MB disponible)" + +msgid "Nothing connected" +msgstr "Rien n'est connecté" + +msgid "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Rien à analyser !\n" +"Veuillez paramétrer votre tuner avant de démarrer une analyse de chaînes." + +msgctxt "now/next: 'now' event label" +msgid "Now" +msgstr "Maintenant" + +msgid "Now playing" +msgstr "Lecture en cours" + +msgid "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." +msgstr "Maintenant, utilisez les paramètres de contraste pour indiquer la luminosité du fond autant que possible, mais assurez-vous que vous pouvez toujours voir la différence entre les deux niveaux les plus lumineux des nuances. Si vous avez fait cela, pressez OK." + +msgid "OK" +msgstr "OK" + +msgid "OK, guide me through the upgrade process" +msgstr "D'accord, guidez moi à travers la procédure de mise à jour" + +msgid "ONID" +msgstr "ONID" + +msgid "OSD name request" +msgstr "Demande de nom de l'OSD" + +msgid "OSD settings" +msgstr "Paramètres OSD" + +msgid "OSD transparency" +msgstr "Transparence OSD" + +msgid "Off" +msgstr "Arrêt" + +msgid "Offline decode delay (ms)" +msgstr "Délai décodage hors ligne (ms)" + +msgid "Ok" +msgstr "Ok" + +msgid "On" +msgstr "Marche" + +msgid "On end of movie" +msgstr "Sur la fin du film" + +msgid "On end of movie (as menu)" +msgstr "À la fin du film (comme menu)" + +msgid "One" +msgstr "Un" + +msgid "Only extensions." +msgstr "Extensions seules" + +msgid "Only free scan" +msgstr "Scanner seulement libre" + +msgid "Open service list" +msgstr "Ouvrir liste service" + +msgid "Open the movie list" +msgstr "Ouvrir la liste des films" + +msgid "Orbital position" +msgstr "Position orbitale" + +msgid "Original" +msgstr "Original" + +msgid "Other" +msgstr "Autre" + +msgid "Output" +msgstr "Sortie" + +msgid "Overwrite configuration files during software upgrade?" +msgstr "Ecraser fichiers configuration pendant mise à jour logicielle ?" + +msgid "Overwrite configuration files?" +msgstr "Ecraser les fichiers de configuration ?" + +msgid "PAL" +msgstr "PAL" + +msgid "PCR PID" +msgstr "PID PCR" + +msgid "PIDs" +msgstr "PIDs" + +msgid "PIN code needed" +msgstr "Code Pin requis" + +msgid "PLP ID" +msgstr "PLP ID" + +msgid "PMT PID" +msgstr "PID PMT" + +msgid "Package list update" +msgstr "Mise à jour de la liste des paquets" + +msgid "Packet management" +msgstr "Gestion des paquets" + +msgid "Packet manager" +msgstr "Gestionnaire des paquets" + +#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term +msgid "Pan&scan" +msgstr "Pan&Scan" + +msgid "Parent directory" +msgstr "Répertoire Parent" + +msgid "Parental control" +msgstr "Contrôle parental" + +msgid "Parental control services editor" +msgstr "Éditeur des services avec contrôle parental" + +msgid "Parental control setup" +msgstr "Paramètres du contrôle parental" + +msgid "Parental control type" +msgstr "Type du contrôle parental" + +msgid "Password" +msgstr "Mot de passe" + +msgid "Pause" +msgstr "Pause" + +msgid "Pause movie at end" +msgstr "Mettre en pause le film à la fin" + +msgid "Pause playback" +msgstr "Reprise de la lecture" + +msgid "Pauze/Continue playback" +msgstr "" + +msgid "Percentage left" +msgstr "Pourcentage gauche" + +msgid "Percentage right" +msgstr "Pourcentage droite" + +msgid "Permanently delete all recordings in the trash can?" +msgstr "Supprimer définitivement tous les enregistrements dans la corbeille ?" + +msgid "Permanently remove all deleted items" +msgstr "Supprimer définitivement tous les éléments supprimés" + +msgid "Persian" +msgstr "Iranien" + +msgid "Phone number" +msgstr "Numéro de téléphone" + +msgid "PiP setup" +msgstr "Paramètres PiP" + +msgid "Picon" +msgstr "Picon" + +msgid "Picon and service name" +msgstr "Picon et nom du service" + +msgid "Picture player" +msgstr "Visualisateur" + +#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term. +msgid "Pillarbox" +msgstr "Bandes noires" + +msgid "Pilot" +msgstr "Pilote" + +msgid "Play" +msgstr "Lire" + +msgid "Play DVD" +msgstr "Lire DVD..." + +msgid "Play audio in background" +msgstr "Lecture audio en arrière-plan" + +msgid "Play audio-CD..." +msgstr "Lire CD-Audio..." + +msgid "Play back media files" +msgstr "Lecture des fichiers multimédia" + +msgid "Play entry" +msgstr "Lire entrée" + +msgid "Play from next mark or playlist entry" +msgstr "Lire à partir de la prochaine marque ou playlist entrée" + +msgid "Play from previous mark or playlist entry" +msgstr "Lire à partir de la précédente marque ou playlist entrée" + +msgid "Play music..." +msgstr "Lire Musique..." + +msgid "Play next" +msgstr "Lire suivant" + +msgid "Play next (return to movie list)" +msgstr "Prochaine lecture (retour à la liste des films)" + +msgid "Play next (return to previous service)" +msgstr "Prochaine lecture (retourner au service antérieur)" + +msgid "Play previous" +msgstr "Lire précédent" + +msgid "Play recorded movies..." +msgstr "Lire les films enregistrés..." + +msgid "Please add titles to the compilation." +msgstr "Veuillez ajouter les titres à la compilation." + +msgid "Please change recording endtime" +msgstr "Veuillez changer l'heure de fin de l'enregistrement" + +msgid "Please check your network settings!" +msgstr "Veuillez vérifier vos paramètres réseau !" + +msgid "Please choose an extension..." +msgstr "Veuillez choisir une extension..." + +msgid "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Veuillez configurer ou vérifier vos Serveurs de noms en renseignant les valeurs nécessaires.\n" +"Quand vous serez prêt, pressez OK pour continuer." + +msgid "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Veuillez configurer votre connexion internet en renseignant les valeurs nécessaires.\n" +"Quand vous serez prêt, pressez OK pour continuer." + +msgid "Please connect your receiver to the internet" +msgstr "Veuillez connecter votre récepteur à Internet" + +msgid "Please do not change any values unless you know what you are doing!" +msgstr "Veuillez ne changer aucune valeur si vous ne savez pas ce que vous faites !" + +msgid "Please enter a name for the new bouquet" +msgstr "Veuillez saisir un nom pour le bouquet" + +msgid "Please enter a name for the new marker" +msgstr "Veuillez saisir un nom pour le nouveau marqueur" + +msgid "Please enter a new filename" +msgstr "Veuillez saisir un nouveau nom de fichier" + +msgid "Please enter filename (empty = use current date)" +msgstr "Veuillez saisir le nom de fichier (vide = utilise la date du jour)" + +msgid "Please enter name of the new directory" +msgstr "Veuillez saisir le nom du nouveau répertoire" + +msgid "Please enter new name:" +msgstr "Merci d'entrer un nouveau nom:" + +msgid "Please enter the correct pin code" +msgstr "Veuillez saisir le code pin correcte" + +msgid "Please enter the old PIN code" +msgstr "Veuillez saisir l'ancien code pin" + +msgid "Please follow the instructions on the TV" +msgstr "Veuillez suivre les instructions sur la TV" + +msgid "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." +msgstr "Veuillez noter que le média sélectionné précédent n'est pas accessible, par conséquent, le répertoire par défaut sera utilisé à la place." + +msgid "Please press OK to continue." +msgstr "Veuillez presser OK pour continuer." + +msgid "Please select a default EPG type..." +msgstr "S'il vous plaît sélectionner un type d'EPG par défaut ..." + +msgid "Please select a playlist to delete..." +msgstr "Veuillez choisir une liste de lecture à effacer..." + +msgid "Please select a playlist..." +msgstr "Veuillez choisir une liste de lecture..." + +msgid "Please select a sub service..." +msgstr "Veuillez choisir un sous-service..." + +msgid "Please select a subservice to record..." +msgstr "Veuillez choisir un sous-service à enregistrer..." + +msgid "Please select a subservice..." +msgstr "Veuillez choisir un sous-service..." + +msgid "Please select an NFI file and press green key to flash!" +msgstr "Veuillez choisir un fichier NFI et presser le bouton vert pour flasher !" + +msgid "Please select medium to be scanned" +msgstr "Veuillez choisir le média à scanner" + +msgid "Please select medium to use as backup location" +msgstr "Veuillez choisir le support pour la sauvegarde" + +msgid "Please select tag to filter..." +msgstr "Veuillez choisir un pointeur pour filtrer..." + +msgid "Please select the movie path..." +msgstr "Veuillez choisir le chemin du film..." + +msgid "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Veuillez sélectionner l'interface réseau que vous voulez utiliser pour votre connexion internet.\n" +"\n" +"Veuillez presser OK pour continuer." + +msgid "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Veuillez sélectionner le réseau sans fil auquel se connecter.\n" +"\n" +"Veuillez presser OK pour continuer." + +msgid "Please set up tuner A" +msgstr "Veuillez paramétrer le tuner A" + +msgid "Please set up tuner B" +msgstr "Veuillez paramétrer le tuner B" + +msgid "Please set up tuner C" +msgstr "Veuillez paramétrer le tuner C" + +msgid "Please set up tuner D" +msgstr "Veuillez paramétrer le tuner D" + +msgid "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." +msgstr "" +"Veuillez utiliser les touches direction pour bouger la fenêtre PiP.\n" +"Presser Bouquet +/- pour redimensionner la fenêtre.\n" +"Presser OK pour revenir au mode TV ou EXIT pour annuler le déplacement." + +msgid "Please use the UP and DOWN keys to select your language. Afterwards press the OK button." +msgstr "Veuillez utiliser les touches HAUT et BAS pour choisir votre langue. Ensuite pressez le bouton OK." + +msgid "Please wait" +msgstr "Veuillez attendre." + +msgid "Please wait (downloading channel list)" +msgstr "Veuillez patienter (téléchargement de la liste des chaînes)" + +msgid "Please wait (downloading softcam)" +msgstr "Veuillez patienter (téléchargement du softcam)" + +msgid "Please wait (updating packages)" +msgstr "Veuillez patienter (Mise à jour des paquets)" + +msgid "Please wait for activation of your network configuration..." +msgstr "Veuillez attendre l'activation de votre configuration réseau..." + +msgid "Please wait while scanning is in progress..." +msgstr "Veuillez attendre pendant l'analyse en cours..." + +msgid "Please wait while we configure your network..." +msgstr "Veuillez attendre pendant que nous configurons votre réseau..." + +msgid "Please wait while we prepare your network interfaces..." +msgstr "Veuillez patienter pendant la préparation des interfaces réseau..." + +msgid "Please wait while we test your network..." +msgstr "Veuillez patienter pendant le test de votre réseau..." + +msgid "Please wait while your network is restarting..." +msgstr "Veuillez attendre pendant le redémarrage de votre réseau..." + +msgid "Please wait..." +msgstr "Veuillez attendre..." + +msgid "Please wait... Loading list..." +msgstr "Veuillez patienter... Chargement de la liste..." + +msgid "Plugin browser" +msgstr "Navigateur d'extensions" + +msgid "Plugin manager activity information" +msgstr "Information d'activité gestionnaire plugin" + +msgid "Plugin manager help" +msgstr "Aide au gestionnaire plugin" + +msgid "Plugins" +msgstr "Plugins" + +msgid "Polarisation" +msgstr "Polarisation" + +msgid "Polarisation:" +msgstr "Polarisation:" + +msgid "Polarization" +msgstr "Polarisation" + +msgid "Polish" +msgstr "Polonais" + +msgid "Port A" +msgstr "Port A" + +msgid "Port B" +msgstr "Port B" + +msgid "Port C" +msgstr "Port C" + +msgid "Port D" +msgstr "Port D" + +msgid "Portuguese" +msgstr "Portugais" + +msgid "Position of completed timers in timerlist" +msgstr "Position programmations terminées dans liste des prog." + +msgid "Position stored at index" +msgstr "Position enregistrée à l'indice" + +msgid "Positioner" +msgstr "Positionneur" + +msgid "Positioner (selecting satellites)" +msgstr "" + +msgid "Positioner Setup" +msgstr "Paramètres positionneur" + +msgid "Positioner setup" +msgstr "Paramètres positionneur" + +msgid "Power threshold in mA" +msgstr "Seuil de puissance en mA" + +msgid "Predefined transponder" +msgstr "Transpondeur prédéfini" + +msgid "Prefer AC3 track" +msgstr "Préférer piste AC3" + +msgid "Prefer AC3+ track" +msgstr "Préférer piste AC3+" + +msgid "Prefer audio track stored by service" +msgstr "Préférer le flux audio stocké pour le service" + +msgid "Prefer graphical DVB subtitles" +msgstr "Préférer les sous-titres DVB-graphique" + +msgid "Prefer subtitles for hearing impaired" +msgstr "Préférer les sous-titres pour les malentendants" + +msgid "Prefer subtitles stored by service" +msgstr "Préférer les sous-titres stockés pour le service" + +msgid "Preferred tuner" +msgstr "Tuner préféré" + +msgid "Preferred tuner for recordings" +msgstr "Tuner préféré pour enregistrer" + +msgid "Prepare another USB stick for image flashing" +msgstr "Préparer une nouvelle clé USB pour flasher l'image" + +msgid "Preparing... Please wait" +msgstr "Préparation... Veuillez patienter" + +msgid "Press '0' to toggle PiP mode" +msgstr "" + +msgid "Press INFO on your remote control for additional information." +msgstr "Pressez sur INFO de votre télécommande pour plus d'informations." + +msgid "Press MENU on your remote control for additional options." +msgstr "Pressez MENU sur la télécommande pour d'autres options." + +msgid "Press OK on your remote control to continue." +msgstr "Pressez OK sur la télécommande pour continuer." + +msgid "Press OK to activate the selected skin." +msgstr "Pressez OK pour activer le thème sélectionné" + +msgid "Press OK to activate the settings." +msgstr "Pressez OK pour activer les paramètres." + +msgid "Press OK to edit the settings." +msgstr "Pressez OK pour éditer les paramètres." + +#, python-format +msgid "Press OK to get further details for %s" +msgstr "Pressez OK pour avoir des détails sur %s" + +msgid "Press OK to scan" +msgstr "Pressez OK pour analyser" + +msgid "Press OK to select a provider." +msgstr "Pressez OK pour sélectionner un opérateur." + +msgid "Press OK to select satellites" +msgstr "" + +msgid "Press OK to select/deselect a CAId." +msgstr "Pressez OK pour sélectionner/désélectionner un CAId." + +msgid "Press OK to start the scan" +msgstr "Pressez OK pour commencer l'analyse" + +msgid "Press OK to toggle the selection" +msgstr "" + +msgid "Press OK to toggle the selection." +msgstr "Pressez OK pour basculer le choix" + +msgid "Press yellow to set this interface as default interface." +msgstr "Pressez le bouton Jaune pour choisir l'interface comme interface standard." + +msgctxt "button label, 'previous screen'" +msgid "Prev" +msgstr "Précédent" + +msgid "Preview" +msgstr "Aperçu" + +msgid "Preview menu" +msgstr "Menu aperçu" + +msgid "Preview selected channel" +msgstr "Aperçu de la chaine sélectionné" + +msgid "Primary DNS" +msgstr "DNS primaire" + +msgid "Priority" +msgstr "Priorité" + +msgid "Process" +msgstr "Processus" + +msgid "Progress" +msgstr "Progression" + +msgid "Progress bar left" +msgstr "Barre de progression à gauche" + +msgid "Progress bar right" +msgstr "Barre de progression à droite" + +msgid "Properties of current title" +msgstr "Propriétés du titre courant" + +msgid "Protect services" +msgstr "Services protégés" + +msgid "Protect setup" +msgstr "Paramètres protection" + +msgid "Provider" +msgstr "Opérateur" + +msgid "Provider to scan" +msgstr "Opérateur à analyser" + +msgid "Providers" +msgstr "Opérateurs" + +msgid "Put TV in standby" +msgstr "Mettre la TV en veille" + +msgid "Put receiver in standby" +msgstr "Mettre le récepteur en veille" + +msgid "Python frontend for /tmp/mmi.socket" +msgstr "\"Frontend\" Python pour /tmp/mmi.socket" + +msgid "Quick" +msgstr "Rapide" + +msgid "Quick zap" +msgstr "Zap rapide" + +msgid "RF output" +msgstr "Sortie RF" + +msgid "RGB" +msgstr "RGB" + +msgid "Radio" +msgstr "Radio" + +msgid "Ram disk" +msgstr "Disque RAM" + +msgid "Random" +msgstr "Aléatoire" + +#, python-format +msgid "Rating defined by broadcaster - %d" +msgstr "Rating définis par le diffuseur - %d" + +msgid "Rating undefined" +msgstr "Rating indéfini" + +msgid "Really close without saving settings?" +msgstr "Voulez-vous vraiment fermer sans sauver les paramètres ?" + +msgid "Really delete done timers?" +msgstr "Enlever les programmations effectué ?" + +msgid "Really exit the subservices quickzap?" +msgstr "Voulez-vous vraiment quitter le QuickZap ?" + +msgid "Really reboot now?" +msgstr "Voulez-vous vraiment rebooter maintenant ?" + +msgid "Really restart now?" +msgstr "Voulez-vous vraiment redémarrer maintenant ?" + +msgid "Really shutdown now?" +msgstr "Voulez-vous vraiment éteindre maintenant ?" + +msgid "Really upgrade the frontprocessor and reboot now?" +msgstr "Voulez-vous vraiment mettre à jour le frontprocessor et redémarrer maintenant ?" + +msgid "Really upgrade your settop box and reboot now?" +msgstr "Voulez-vous vraiment mettre à jour votre décodeur et redémarrer maintenant ?" + +msgid "Reboot" +msgstr "Reboot" + +msgid "Rec" +msgstr "Enr" + +msgid "Reception settings" +msgstr "Paramètres réception" + +msgid "Record" +msgstr "Enregistrer" + +#, python-format +msgid "Record time limited due to conflicting timer %s" +msgstr "Temps d'enregistrement limité à cause d'un conflit de programmations %s" + +msgid "Recorded files..." +msgstr "Fichiers enregistrés..." + +msgid "Recording" +msgstr "Enregistrement" + +msgid "Recording in progress" +msgstr "Enregistrement en cours" + +msgid "Recording paths" +msgstr "Chemins pour enregistrer" + +msgid "Recording type" +msgstr "Type d'enregistrement" + +msgid "Recording(s) are in progress or coming up in few seconds!" +msgstr "Des enregistrement(s) sont en cours ou se terminent dans quelques secondes !" + +msgid "Recordings" +msgstr "Enregistrements" + +msgid "Recordings always have priority" +msgstr "Enregistrements toujours prioritaires" + +msgid "Red button..." +msgstr "Bouton rouge..." + +msgid "Reenter new PIN" +msgstr "Re-saisir nouveau PIN" + +msgid "Refresh rate" +msgstr "Vitesse de Rafraîchissement" + +msgid "Refresh rate selection." +msgstr "Sélection de vitesse de rafraîchissement " + +msgid "Regard deep standby as standby" +msgstr "Gérer la mise en 'veille profonde' comme 'en veille'" + +msgid "Relative" +msgstr "Relatif" + +msgid "Reload" +msgstr "Recharger" + +msgid "Reload black-/white lists" +msgstr "Recharger listes noire/blanche" + +msgid "Reloading bouquets and services..." +msgstr "Recharger les bouquets et services..." + +msgid "Remember last service in PiP" +msgstr "" + +msgid "Remember service PIN" +msgstr "Enregistrer PIN service" + +msgid "Remember these settings for each folder" +msgstr "Se rappeler de ces paramètres pour chaque dossier" + +msgid "Reminder, you have chosen to save timeshift file." +msgstr "Rappel, vous avez choisi de sauvegarder votre fichier timeshift." + +msgid "Remote control type" +msgstr "Type de télécommande" + +msgid "Removal has completed." +msgstr "Suppression terminée." + +msgid "Remove" +msgstr "Retirer" + +msgid "Remove a mark" +msgstr "Retirer un marqueur" + +msgid "Remove a nameserver entry" +msgstr "Retirer une entrée serveur de nom" + +msgid "Remove bookmark" +msgstr "Retirer marque page" + +msgid "Remove completed timers after (days)" +msgstr "Enlever les programmations terminées après (jours)" + +msgid "Remove currently selected title" +msgstr "Retirer le titre actuellement sélectionné" + +msgid "Remove items from trash can after (days)" +msgstr "Enlever éléments de la corbeille après (jours)" + +msgid "Remove plugins" +msgstr "Enlever plugins" + +msgid "Remove title" +msgstr "Retirer titre" + +msgid "Removing" +msgstr "Retrait en cours..." + +#, python-format +msgid "Removing directory %s failed. (Maybe not empty.)" +msgstr "Échec du retrait du répertoire %s. (Peut-être non vide.)" + +msgid "Removing partition table" +msgstr "Retrait de la table de partition" + +msgid "Rename" +msgstr "Renommer" + +msgid "Repeat" +msgstr "Répéter" + +msgid "Repeat type" +msgstr "Type de répétition" + +msgid "Repeating event currently recording... What do you want to do?" +msgstr "Répétition de l'événement en enregistrement... Que voulez-vous faire?" + +msgid "Repeats" +msgstr "Répétitions" + +msgid "Require authentication for http streams" +msgstr "Exiger une authentification pour les flux HTTP" + +msgid "Required medium type:" +msgstr "Type de média requis :" + +msgid "Rereading partition table" +msgstr "Relecture de la table de partition" + +msgid "Reserved" +msgstr "Réservé" + +msgid "Reset" +msgstr "Réinitialiser" + +msgid "Reset and renumerate title names" +msgstr "Réinitialiser et renuméroter les titres" + +msgid "Reset playback position" +msgstr "Réinitialiser la position de reprise de lecture" + +msgid "Reset video enhancement settings to system defaults?" +msgstr "Réinitialiser les paramètres d'amélioration vidéo aux valeurs par défaut du système ?" + +msgid "Reset video enhancement settings to your last configuration?" +msgstr "Réinitialiser les paramètres d'amélioration vidéo sur votre dernière configuration ?" + +msgid "Resolution" +msgstr "Résolution" + +msgid "Restart" +msgstr "Redémarrer" + +msgid "Restart GUI now?" +msgstr "Redémarrer l'interface graphique maintenant ?" + +msgid "Restart enigma" +msgstr "Redémarrer enigma" + +msgid "Restart network" +msgstr "Relancer le réseau" + +msgid "Restart test" +msgstr "Relancer le test" + +msgid "Restart your network connection and interfaces.\n" +msgstr "Relancer votre connexion réseau et vos interfaces.\n" + +msgid "Restore" +msgstr "Restaurer" + +msgid "Restore backups" +msgstr "Restaurer sauvegardes" + +msgid "Restore is running..." +msgstr "Restauration en cours..." + +msgid "Restore system settings" +msgstr "Restaurer paramètres système" + +msgid "Restoring..." +msgstr "Restauration ..." + +msgid "Resume from last position" +msgstr "Reprendre à la dernière position" + +#, python-format +msgid "Resume position at %s" +msgstr "Reprendre position à %s" + +#. TRANSLATORS: The string "Resuming playback" flashes for a moment +#. TRANSLATORS: at the start of a movie, when the user has selected +#. TRANSLATORS: "Resume from last position" as start behavior. +#. TRANSLATORS: The purpose is to notify the user that the movie starts +#. TRANSLATORS: in the middle somewhere and not from the beginning. +#. TRANSLATORS: (Some translators seem to have interpreted it as a +#. TRANSLATORS: question or a choice, but it is a statement.) +msgid "Resuming playback" +msgstr "Reprise de la lecture" + +msgid "Return to movie list" +msgstr "Retour vers liste des films" + +msgid "Return to previous service" +msgstr "Retour service précédent" + +msgid "Reverse bouquet buttons" +msgstr "Inverse les touches bouquets" + +msgid "Reverse list" +msgstr "" + +msgid "Rewind speeds" +msgstr "Vitesses rembobinage" + +msgid "Rewrap teletext subtitles" +msgstr "Envelopper les sous-titres télétexte" + +msgid "Right" +msgstr "Droite" + +msgid "Right from servicename" +msgstr "À la droite du nom de service" + +msgid "Roll-off" +msgstr "Sortie" + +msgid "Romanian" +msgstr "Roumain" + +msgid "Root directory" +msgstr "Répertoire racine" + +msgid "Rotor step position:" +msgstr "Etape de position du rotor :" + +msgid "Rotor turning speed" +msgstr "Vitesse rotation rotor" + +msgid "Round start time on" +msgstr "Heure de début de rotation" + +msgid "Russian" +msgstr "Russe" + +msgid "S-Video" +msgstr "S-Vidéo" + +msgid "SID" +msgstr "SID" + +msgid "SINGLE LAYER DVD" +msgstr "SIMPLE COUCHE DVD" + +msgid "SNR" +msgstr "SNR" + +msgid "SNR:" +msgstr "SNR :" + +msgid "SSID:" +msgstr "SSID :" + +msgid "Same resolution as skin" +msgstr "Même résolution que le skin" + +msgid "Sat" +msgstr "Sam" + +msgid "Satellite" +msgstr "Satellite" + +msgid "Satellite dish setup" +msgstr "Paramètres antenne satellite" + +msgid "Satellite equipment" +msgstr "Equipement satellite" + +msgid "Satellite equipment setup" +msgstr "Paramètres équipement satellite" + +msgid "Satellite longitude:" +msgstr "Longitude satellite :" + +msgid "Satellites" +msgstr "Satellites" + +msgid "Satfinder" +msgstr "Pointeur satellites" + +msgid "Sats" +msgstr "Sats" + +msgid "Saturation" +msgstr "Saturation" + +msgid "Saturday" +msgstr "Samedi" + +msgid "Save" +msgstr "Sauver" + +msgid "Save playlist" +msgstr "Sauver liste lecture" + +msgid "Save timeshift file" +msgstr "Sauvegarder le fichier de timeshift" + +msgid "Save timeshift file in movie directory" +msgstr "Sauvegarder le fichier de timeshift dans le répertoire des films" + +msgid "Scaler sharpness" +msgstr "Niveau netteté" + +msgid "Scaling mode" +msgstr "Mode Mise à l'Echelle" + +msgid "Scan" +msgstr "Scan" + +msgid "Scan " +msgstr "Analyser " + +#. TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' +#, python-format +msgid "Scan %s" +msgstr "Analyser %s " + +#. TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' +#, python-format +msgid "Scan %s band" +msgstr "Analyser bande %s " + +msgid "Scan additional SR" +msgstr "Analyser additional SR" + +msgid "Scan files..." +msgstr "Parcourir les fichiers..." + +msgid "Scan wireless networks" +msgstr "Scanner réseaux sans fil" + +msgid "Scan your network for wireless access points and connect to them using your selected wireless device.\n" +msgstr "Analyser votre réseau pour lister les points d'accès sans fil et se connecter en utilisant votre périphérique sans fil.\n" + +#, python-format +msgid "Scanning %s..." +msgstr "Analyse en cours %s..." + +#. TRANSLATORS: The stb is performing a channel scan, progress percentage is printed in '%d' (and '%%' will show a single '%' symbol) +#, python-format +msgid "Scanning - %d%% completed" +msgid_plural "Scanning - %d%% completed" +msgstr[0] "Balayage - %d%% terminé" +msgstr[1] "Balayage - %d%% terminés" + +#, python-format +msgid "Scanning completed, %d channel found" +msgid_plural "Scanning completed, %d channels found" +msgstr[0] "Analyse complète, %d chaînes trouvées" +msgstr[1] "Analyse complète, %d chaînes trouvées" + +msgid "Scanning failed!" +msgstr "Echec de l'analyse !" + +msgid "Scanning..." +msgstr "Analyse en cours..." + +msgid "Scans default lamedbs sorted by satellite with a connected dish positioner" +msgstr "Scanne lamedbs standards triés par satellite avec un positionneur parabole connecté" + +msgid "Search east" +msgstr "Rechercher à l'est" + +msgid "Search west" +msgstr "Rechercher à l'ouest" + +msgid "Searching" +msgstr "Recherche en cours" + +msgid "Searching east ..." +msgstr "Recherche à l'est ..." + +msgid "Searching for available updates. Please wait..." +msgstr "Recherche des mises à jour disponibles. Patienter..." + +msgid "Searching for new installed or removed packages. Please wait..." +msgstr "Recherche des nouveaux paquets installés ou retirés. Patienter..." + +msgid "Searching west ..." +msgstr "Recherche à l'ouest ..." + +msgid "Second cable of motorized LNB" +msgstr "Deuxième câble d'un LNB motorisé" + +msgid "Secondary DNS" +msgstr "DNS secondaire" + +msgid "Seek" +msgstr "Sauter" + +msgid "Seek backward" +msgstr "Retour rapide" + +msgid "Seek backward (enter time)" +msgstr "Retour rapide (saisir temps)" + +msgid "Seek forward" +msgstr "Avance rapide" + +msgid "Seek forward (enter time)" +msgstr "Avance rapide (saisir temps)" + +msgid "Select" +msgstr "Sélectionner" + +msgid "Select CAId" +msgstr "Sélection CAId" + +msgid "Select HDD" +msgstr "Choisir le Disque dur" + +msgid "Select a bouquet" +msgstr "Choisir un bouquet" + +msgid "Select a movie" +msgstr "Choisir un film" + +msgid "Select a network adapter" +msgstr "Choisir Adaptateur Réseau" + +msgid "Select a skin" +msgstr "Choisir un skin" + +msgid "Select a tuner" +msgstr "Choisir un tuner" + +msgid "Select a wireless network" +msgstr "Choisir un réseau sans fil" + +msgid "Select action" +msgstr "Choisir une action" + +#, python-format +msgid "Select action for timer %s:" +msgstr "Sélectionner une action pour la programmation %s:" + +msgid "Select all" +msgstr "" + +msgid "Select an image to be downloaded" +msgstr "Choisir l'image à télécharger" + +msgid "Select audio track" +msgstr "Choisir la piste audio" + +msgid "Select backup files" +msgstr "Choisir les fichiers de sauvegarde" + +msgid "Select backup location" +msgstr "Choisir l'emplacement de sauvegarde" + +msgid "Select channel to record from" +msgstr "Choisir la chaîne à enregistrer" + +msgid "Select copy destination for:" +msgstr "Sélectionnez la destination de copie pour :" + +msgid "Select default EPG type..." +msgstr "Sélectionnez le type d'EPG par défaut ..." + +msgid "Select desired image from feed list" +msgstr "Choisir l'image désirée depuis liste feed" + +msgid "Select destination for:" +msgstr "Sélectionnez une destination pour :" + +msgid "Select files for backup." +msgstr "Choisir fichiers pour la sauvegarde." + +msgid "Select files/folders to backup" +msgstr "Choisir fichiers/dossiers pour sauvegarde" + +msgid "Select input device" +msgstr "Choisir le périphérique entrée" + +msgid "Select input device." +msgstr "Choisir le périphérique entrée." + +msgid "Select interface" +msgstr "Sélectionner l'interface" + +msgid "Select location" +msgstr "Choisir l'Emplacement" + +msgid "Select movie" +msgstr "Choisir un film" + +msgid "Select provider to add..." +msgstr "Choisir opérateur à ajouter..." + +msgid "Select refresh rate" +msgstr "Choisir vitesse rafraîchissement" + +msgid "Select satellites" +msgstr "" + +msgid "Select service to add..." +msgstr "Choisir service à ajouter..." + +msgid "Select sort method:" +msgstr "" + +msgid "Select target folder" +msgstr "Choisir le dossier cible" + +msgid "Select the movie path" +msgstr "Choisir le chemin film" + +msgid "Select upgrade source" +msgstr "Sélectionnez la source de mise à jour" + +msgid "Select upgrade source to edit." +msgstr "Choisissez la source de mise à niveau pour éditer." + +msgid "Select video input with up/down buttons" +msgstr "Choisir l'entrée vidéo avec touches haut/bas" + +msgid "Select video mode" +msgstr "Choisir le mode vidéo" + +msgid "Select wireless network" +msgstr "Sélectionner l'interface sans fil" + +msgid "Select your provider, and press OK to start the scan" +msgstr "Sélectionnez votre opérateur, et pressez OK pour lancer l'analyse" + +msgid "Selecting satellites 1 (USALS)" +msgstr "" + +msgid "Selecting satellites 2 (USALS)" +msgstr "" + +msgid "Send DiSEqC only on satellite change" +msgstr "Envoyer DiSEqC seulement pour changement satellite" + +msgid "Separate titles with a main menu" +msgstr "Titres séparés avec un menu principal" + +msgid "Sequence repeat" +msgstr "Répéter la séquence" + +msgid "Serbian" +msgstr "Serbe" + +msgid "Service" +msgstr "Service" + +msgid "Service has been added to the favourites." +msgstr "Le service a été ajouté aux favoris." + +msgid "Service has been added to the selected bouquet." +msgstr "Le service a été ajouté au bouquet sélectionné." + +msgid "Service info" +msgstr "Info service" + +msgid "" +"Service invalid!\n" +"(Timeout reading PMT)" +msgstr "" +"Service non valide !\n" +"(Délai dépassé en lisant PMT)" + +msgid "Service name" +msgstr "Nom du service" + +msgid "" +"Service not found!\n" +"(SID not found in PAT)" +msgstr "" +"Aucun service trouvé !\n" +"(aucun SID trouvé dans PAT)" + +msgid "Service reference" +msgstr "Référence service:" + +msgid "Service scan" +msgstr "Analyse des services" + +msgid "Service searching" +msgstr "Recherche des services" + +msgid "Service title mode" +msgstr "Mode titre de service" + +msgid "" +"Service unavailable!\n" +"Check tuner configuration!" +msgstr "" +"Service indisponible !\n" +"Vérifier la configuration du tuner !" + +msgid "Services" +msgstr "Services" + +msgid "Set default" +msgstr "" + +msgid "Set end time" +msgstr "Régler l'heure de fin" + +msgid "Set fixed" +msgstr "Réglage de l'adresse" + +msgid "Set fps for external subtitles" +msgstr "Régler le fps pour les sous-titres externes" + +msgid "Set interface as default Interface" +msgstr "Utiliser l'interface comme interface par défaut" + +msgid "Set limits" +msgstr "Fixer les limites" + +msgid "Set the type of the progress indication in the channel selection screen." +msgstr "Afficher progression événement dans sélection de chaîne" + +msgid "Set time window to 1 hour" +msgstr "Réglez la fenêtre de temps de 1 heure" + +msgid "Set time window to 2 hours" +msgstr "Réglez la fenêtre de temps de 2 heures" + +msgid "Set time window to 3 hours" +msgstr "Réglez la fenêtre de temps de 3 heures" + +msgid "Set time window to 4 hours" +msgstr "Réglez la fenêtre de temps de 4 heures" + +msgid "Set time window to 5 hours" +msgstr "Réglez la fenêtre de temps de 5 heures" + +msgid "Set time window to 6 hours" +msgstr "Réglez la fenêtre de temps de 6 heures" + +msgid "Set voltage and 22KHz" +msgstr "Utiliser Voltage et 22KHz" + +msgid "Settings" +msgstr "Paramètres" + +msgid "Setup" +msgstr "Paramétrer" + +msgid "Setup menu" +msgstr "Menu configuration" + +msgid "Setup mode" +msgstr "Mode de configuration" + +msgid "Setup your positioner" +msgstr "Configurez votre positionneur" + +msgid "Setup your satellite equipment" +msgstr "Configurez votre équipement satellite" + +#, python-format +msgid "Shall the USB stick wizard proceed and program the image file %s into flash memory?" +msgstr "L'assistant clé USB doit-il procéder et programmer le dossier d'image %s dans la mémoire Flash ?" + +msgid "Sharpness" +msgstr "Netteté" + +msgid "Short filenames" +msgstr "Noms de fichiers court" + +msgid "Show EIT now/next in infobar" +msgstr "Afficher EIT maintenant/suivant dans barre d'infos" + +msgid "Show EPG for current channel..." +msgstr "Afficher EPG de la chaine actuel ..." + +msgid "Show EPG..." +msgstr "Afficher EPG..." + +msgid "Show Games show" +msgstr "Voir les jeux" + +msgid "Show SNR percentage instead of dB value" +msgstr "Afficher SNR en pourcentage au lieu de la valeur dB" + +msgid "Show VCR scart on main menu" +msgstr "Afficher le menu péritel magnétoscope sur l'écran principal" + +msgid "Show WLAN status" +msgstr "Afficher le status WLAN" + +msgid "Show animation while busy" +msgstr "Afficher l'animation si occupé" + +msgid "Show background in radio mode" +msgstr "Afficher l'arrière-plan en Mode Radio" + +msgid "Show bouquet selection menu" +msgstr "Afficher le menu sélection de bouquet" + +msgid "Show busy indicator when the system is busy." +msgstr "Afficher l'indicateur occupé lorsque le système est occupé." + +msgid "Show channel numbers in channel selection" +msgstr "Afficher numéro des chaînes dans sélection de chaîne" + +msgid "Show columns" +msgstr "" + +msgid "Show crypto icons" +msgstr "Afficher les icônes d'encryption" + +msgid "Show crypto info in infobar" +msgstr "Afficher infos de cryptage dans barre d'infos" + +msgid "Show detailed event info" +msgstr "Afficher les infos détaillée de l'événement" + +msgid "Show event details" +msgstr "Afficher détails de l'événement" + +msgid "Show event-progress in channel selection" +msgstr "Afficher progression événement dans sélection de chaîne" + +msgid "Show extended description" +msgstr "Afficher description étendue" + +msgid "Show extensions..." +msgstr "Voir les extensions..." + +msgid "Show icon for new/unseen items" +msgstr "Afficher l'icône pour les nouveaux éléments" + +msgid "Show in extensions menu" +msgstr "Afficher les extensions dans le menu" + +msgid "Show info" +msgstr "Afficher Info" + +msgid "Show info line" +msgstr "Afficher informations" + +msgid "Show infobar on channel change" +msgstr "Afficher barre d'infos en changeant de chaîne" + +msgid "Show infobar on event change" +msgstr "Afficher barre d'infos en changeant d'émission" + +msgid "Show infobar on skip forward/backward" +msgstr "Afficher barre d'infos sur saut avant/arrière" + +msgid "Show latest commits on sourceforge" +msgstr "Afficher les derniers 'commits' sur sourceforge" + +msgid "Show message when recording starts" +msgstr "Afficher un message en démarrant l'enregistrement" + +msgid "Show movie lengths in movielist" +msgstr "Afficher longueur des films dans liste de films" + +msgid "Show multi channel EPG" +msgstr "Afficher l'EPG multi chaîne" + +msgid "Show picons in channel list" +msgstr "Afficher les picons dans la liste des chaînes" + +msgid "Show positioner movement" +msgstr "Afficher le mouvement du positionneur" + +msgid "Show screensaver" +msgstr "Afficher l'économiseur d'écran" + +msgid "Show second infobar" +msgstr "Afficher deuxième barre d'infos" + +msgid "Show service type icons" +msgstr "Afficher les icônes du type de service" + +msgid "Show services beginning with" +msgstr "Afficher les services commençant par" + +msgid "Show shutdown menu" +msgstr "Afficher menu éteindre" + +msgid "Show single service EPG" +msgstr "Afficher l'EPG simple du service" + +msgid "Show status icons in Movielist" +msgstr "Afficher l'icône du statut dans la liste des films" + +msgid "Show status icons in movie list" +msgstr "Afficher icônes d'état dans liste des films" + +msgid "Show status icons in movielist" +msgstr "Afficher icônes d'état dans liste des films" + +msgid "Show tag menu" +msgstr "Afficher menu étiquette" + +msgid "Show the radio player..." +msgstr "Afficher le lecteur radio..." + +msgid "Show the tv player..." +msgstr "Afficher l'image TV..." + +msgid "Show warning when timeshift is stopped" +msgstr "Afficher un avertissement quand le timeshift est arrêté" + +msgid "Shows the state of your wireless LAN connection.\n" +msgstr "Afficher l'état de votre connexion LAN sans fil.\n" + +msgid "Shuffle playlist" +msgstr "Mélanger liste lecture" + +msgid "Shutdown" +msgstr "Éteindre" + +msgid "Shutdown when in Standby" +msgstr "Éteindre lorsqu'il est en veille" + +msgid "Side by side" +msgstr "Côte à Côte" + +msgid "Signal OK, proceeding" +msgstr "Signal OK, continuer" + +msgid "Signal quality" +msgstr "Qualité du signal" + +msgid "Signal strength:" +msgstr "Force du Signal :" + +msgid "Signal: " +msgstr "Signal : " + +msgid "Similar" +msgstr "Similaire" + +msgid "Similar broadcasts:" +msgstr "Emissions semblables :" + +msgid "Simple" +msgstr "Simple" + +msgid "Simple titleset (compatibility for legacy players)" +msgstr "Jeu titre simple (compatibilité descendante lecteurs)" + +msgid "Single" +msgstr "Unique" + +msgid "Single EPG" +msgstr "EPG Unique" + +msgid "Single satellite" +msgstr "Satellite unique" + +msgid "Single step (GOP)" +msgstr "Pas unique (GOP)" + +msgid "Single transponder" +msgstr "Transpondeur unique" + +msgid "Site latitude" +msgstr "Alignement latitude" + +msgid "Site longitude" +msgstr "Alignement longitude" + +msgid "Skin" +msgstr "Thème" + +msgid "Skins" +msgstr "Thèmes" + +msgid "Skip empty services" +msgstr "Services protégés" + +msgid "Skip internet connection check (disables automatic package installation)" +msgstr "Passer la vérification de la connexion internet (désactive l'installation automatique du package)" + +msgid "Sleep timer" +msgstr "Arrêt automatique" + +msgid "SleepTimer Configuration" +msgstr "Configuration de l'arrêt automatique" + +msgid "Sleeptimer" +msgstr "Arrêt automatique" + +msgid "Slide picture in loop" +msgstr "Afficher images en boucle" + +msgid "Slide show interval (sec.)" +msgstr "Intervalle Diaporama (sec.)" + +#, python-format +msgid "Slot %d" +msgstr "Slot %d" + +msgid "Slovak" +msgstr "Slovaque" + +msgid "Slovenian" +msgstr "Slovène" + +msgid "Slow" +msgstr "Lent" + +msgid "Slow motion speeds" +msgstr "Vitesses du ralenti" + +msgid "Small progress" +msgstr "Faible progression" + +msgid "Social/Political/Economics" +msgstr "Société/Politique/Economie" + +msgid "SoftCam / CI" +msgstr "Lecteur de cartes" + +msgid "Softcam type" +msgstr "Type softcam" + +msgid "Software" +msgstr "Logiciel" + +msgid "Software management" +msgstr "Gestionnaire logiciel" + +msgid "Software manager setup" +msgstr "Paramètres gestionnaire logiciel" + +msgid "Software restore" +msgstr "Restauration logiciel" + +msgid "Software update" +msgstr "Mise à jour logiciel" + +msgid "Softwaremanager information" +msgstr "Informations gestionnaire logiciel" + +msgid "Some plugins are not available:\n" +msgstr "Des plugins ne sont pas disponible :\n" + +#, python-format +msgid "Sorry, %s has not been installed!" +msgstr "Désolé,%s n'a pas été installé !" + +msgid "Sorry, deleting directories can (for now) only be done through the trash can." +msgstr "Désolé, la suppression des répertoires peut (pour l'instant) se faire qu'à travers la corbeille." + +msgid "Sorry, no backups found!" +msgstr "Désolé pas de sauvegardes trouvées !" + +msgid "Sorry, no details available!" +msgstr "Désolé, aucuns détails disponibles !" + +msgid "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." +msgstr "" +"Désolé, emplacement de sauvegarde non inscriptible!\n" +"Veuillez en choisir un autre." + +msgid "Sort" +msgstr "Trier" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort A-Z" +msgstr "Tri A-Z" + +msgid "Sort by" +msgstr "Trier par" + +msgid "Sort list:" +msgstr "Liste de tri:" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort time" +msgstr "Tri heures" + +msgid "Sound" +msgstr "Son" + +msgid "Sound carrier" +msgstr "Porteuse sonore" + +msgid "Source request" +msgstr "Demande d'entrée" + +msgid "South" +msgstr "Sud" + +msgid "Spanish" +msgstr "Espagnol" + +msgid "Specify the end time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the end time until the inactivity sleeptimer should be ignored" +msgstr "Heure de fin pour ne pas tenir compte de l'arrêt automatique." + +msgid "Specify the start time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the start time when the inactivity sleeptimer should be ignored" +msgstr "Heure de début pour ne pas tenir compte de l'arrêt automatique." + +msgid "Specify timeframe to ignore inactivity sleeptimer" +msgstr "Spécifiez la plage pendant laquelle ignorer l'arrêt automatique" + +msgid "Specify timeframe to ignore the shutdown in standby" +msgstr "" + +msgid "Split preview mode" +msgstr "Mode prévue séparée" + +msgid "Splitscreen" +msgstr "" + +msgid "Sports" +msgstr "Sports" + +msgid "Standard" +msgstr "Standard" + +msgid "Standart list" +msgstr "" + +msgid "Standby" +msgstr "Veille" + +msgid "Standby / restart" +msgstr "Veille / Redémarrage" + +msgid "Standby after current event" +msgstr "Mise en veille après l'évènement actuel" + +#, python-format +msgid "Standby fan %d PWM" +msgstr "PWM Fan en veille %d" + +#, python-format +msgid "Standby fan %d voltage" +msgstr "Voltage Fan en veille %d" + +msgid "Standby in " +msgstr "Mise en veille dans " + +msgid "StandbyLED" +msgstr "LED de veille" + +msgid "Start from the beginning" +msgstr "Démarrer depuis le début" + +msgid "Start offline decode" +msgstr "Démarrer le décodage hors ligne" + +msgid "Start recording?" +msgstr "Démarrer l'enregistrement ?" + +msgid "Start test" +msgstr "Lancer le test" + +msgid "Start time" +msgstr "heure début" + +msgid "Start time to ignore inactivity sleeptimer" +msgstr "Heure de début pour ignorer l'arrêt automatique" + +msgid "Start time to ignore shutdown in standby" +msgstr "" + +msgid "Start timeshift" +msgstr "Lancer PauseDirect" + +msgid "Start with list screen" +msgstr "Commencer avec liste écran" + +msgid "Starting on" +msgstr "Démarre sur" + +msgid "Startup the set top box in standby" +msgstr "Démarrer le récepteur en mode veille" + +msgid "Startup to Standby" +msgstr "Démarrer en veille" + +msgid "Step east" +msgstr "Un pas vers l'Est" + +msgid "Step west" +msgstr "Un pas vers l'Ouest" + +msgid "Stepped east" +msgstr "Ajusté à l'Est" + +msgid "Stepped west" +msgstr "Ajusté à l'Ouest" + +msgid "Stop" +msgstr "Stop" + +msgid "Stop PiP" +msgstr "Arrêter PiP" + +msgid "Stop current event and disable coming events" +msgstr "Stopper événement courant et désactiver les prochains" + +msgid "Stop current event but not coming events" +msgstr "Stopper événement courant mais pas les prochains" + +msgid "Stop entry" +msgstr "Arrêter entrée" + +msgid "Stop playing this movie?" +msgstr "Arrêter la lecture du film ?" + +msgid "Stop recording" +msgstr "Arrêter l'enregistrement" + +msgid "Stop recording and delete" +msgstr "Arrêter l'enregistrement et supprimer" + +msgid "Stop service on return to movie list" +msgstr "" + +msgid "Stop test" +msgstr "Stopper le test" + +msgid "Stop testing plane after # failed transponders" +msgstr "Stopper le test à partir # échec transpondeurs" + +msgid "Stop testing plane after # successful transponders" +msgstr "Stopper le test à partir # succès transpondeurs" + +msgid "Stop timer recording" +msgstr "Programmation arrêt enregistrement" + +msgid "Stop timeshift" +msgstr "Arrêter PauseDirect" + +msgid "Stop timeshift?" +msgstr "Arrêter le PauseDirect ?" + +msgid "Stopped" +msgstr "Arrêté" + +msgid "Store at index" +msgstr "Enregistrer sur l'indice" + +msgid "Store position" +msgstr "Enregistrer la position" + +msgid "Stored position" +msgstr "Position enregistrée" + +msgid "Stream" +msgstr "Demande de flux" + +msgid "Stream request" +msgstr "Demande de flux" + +msgid "Strongest position" +msgstr "Meilleure position" + +msgid "Subservice list..." +msgstr "Liste des sous-services..." + +msgid "Subservices" +msgstr "Sous-services" + +msgid "Subtitle Quickmenu" +msgstr "Menu rapide des sous-titres" + +msgid "Subtitle alignment" +msgstr "Alignement des sous-titres" + +msgid "Subtitle border width" +msgstr "Largeur de la bordure des sous-titres" + +msgid "Subtitle delay when timing is bad" +msgstr "Délai des sous-titres lorsque le timing est mauvais" + +msgid "Subtitle delay when timing lacks" +msgstr "Délai des sous-titres pour synchroniser avec l'image" + +msgid "Subtitle font size" +msgstr "Taille de la police des sous-titres" + +msgid "Subtitle language selection 1" +msgstr "Sélection de la langue sous-titres 1" + +msgid "Subtitle language selection 2" +msgstr "Sélection de la langue sous-titres 2" + +msgid "Subtitle language selection 3" +msgstr "Sélection de la langue sous-titres 3" + +msgid "Subtitle language selection 4" +msgstr "Sélection de la langue sous-titres 4" + +msgid "Subtitle position" +msgstr "Position des sous-titres" + +msgid "Subtitle selection" +msgstr "Sélection des sous-titres" + +msgid "Subtitle selection..." +msgstr "Sélection des sous-titres..." + +msgid "Subtitle settings" +msgstr "Paramètres sous-titres" + +msgid "Subtitles" +msgstr "Sous-titres" + +msgid "Sun" +msgstr "Dim" + +msgid "Sunday" +msgstr "Dimanche" + +msgid "Swap PiP and main picture" +msgstr "Inverser PiP et image principale" + +msgid "Swap services" +msgstr "Inverser fenêtres services" + +msgid "Swedish" +msgstr "Suédois" + +msgid "Switch TV to correct input" +msgstr "Basculer la TV sur la bonne entrée" + +msgid "Switch between filelist/playlist" +msgstr "Permuter entre la liste des fichiers/liste de lecture" + +msgid "Switch between normal mode and list mode" +msgstr "Basculer entre le mode normal et le mode liste" + +msgid "Switch to HDMI in mode" +msgstr "Basculer sur HDMI en mode" + +msgid "Switch to filelist" +msgstr "Basculer vers la liste des fichiers" + +msgid "Switch to next channel" +msgstr "" + +msgid "Switch to next channel in history" +msgstr "Basculer vers la chaîne suivante dans l'historique" + +msgid "Switch to next sub service" +msgstr "Basculer vers sous-service suivant" + +msgid "Switch to playlist" +msgstr "Basculer vers la liste de lecture" + +msgid "Switch to previous channel" +msgstr "Basculer vers la chaîne précédente" + +msgid "Switch to previous channel in history" +msgstr "Basculer vers la chaîne précédente dans l'historique" + +msgid "Switch to previous sub service" +msgstr "Basculer vers sous-service précédent" + +msgid "Switchable tuner types:" +msgstr "Types de tuner permutables :" + +msgid "Symbol rate" +msgstr "Fréq. symbole" + +msgid "Symbol rate:" +msgstr "Fréq. symbole:" + +msgid "Sync failure moving back to origin !" +msgstr "Erreur de syncho pour revenir à l'origine !" + +msgid "System" +msgstr "Système" + +#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) +msgid "TRANSLATOR_INFO" +msgstr "" +"Traduction Française\n" +"Enigma2 - OpenPLi\n" +"Support: www.openpli.org\n" +"Dernière MAJ: Mai 2014" + +msgid "TS file is too large for ISO9660 level 1!" +msgstr "Fichier TS trop grand pour le niveau 1 ISO9660 !" + +msgid "TSID" +msgstr "TSID" + +msgid "TV physical address report" +msgstr "Rapport adresse physique TV" + +msgid "TXT PID" +msgstr "PID TXT" + +msgid "Table of contents for collection" +msgstr "Table des matières pour la collection" + +msgid "Tags" +msgstr "Etiq." + +msgid "Teletext subtitle color" +msgstr "Couleur des sous-titres télétexte" + +msgid "Temperature and fan control" +msgstr "Contrôle Fan et Température" + +msgid "Terrestrial" +msgstr "Terrestre" + +msgid "Terrestrial provider" +msgstr "Opérateur terrestre" + +msgid "Test DiSEqC settings" +msgstr "Test configuration DiSEqC" + +msgid "Test mode" +msgstr "Mode test" + +msgid "Test the network configuration of your receiver.\n" +msgstr "Tester la configuration réseau de votre récepteur.\n" + +msgid "Test type" +msgstr "Type test" + +msgid "Text color" +msgstr "Couleur texte" + +msgid "Thai" +msgstr "Thaï" + +msgid "" +"Thank you for using the wizard.\n" +"Please press OK to continue." +msgstr "" +"Merci d'utiliser l'assistant.\n" +"Veuillez presser OK pour continuer." + +msgid "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." +msgstr "" +"Merci d'utiliser l'assistant. Votre récepteur est maintenant prêt à être utilisé.\n" +"Appuyez sur OK pour commencer à utiliser votre récepteur." + +msgid "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?" +msgstr "La norme DVD ne prend pas en charge les flux vidéo H.264 (HDTV). Voulez-vous créer un format spécial DVD de données (qui ne fonctionnera pas dans les lecteurs de DVD autonomes) à la place ?" + +msgid "The PIN code has been changed successfully." +msgstr "Le code PIN a été changé avec succès." + +msgid "The PIN codes you entered are different." +msgstr "Les codes PIN saisis sont différents." + +msgid "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" +msgstr "" +"La clé USB à été préparé pour être bootable.\n" +"Maintenant vous pouvez télécharger un fichier image NFI !" + +msgid "The backup failed. Please choose a different backup location." +msgstr "La sauvegarde a échoué. Veuillez choisir un autre emplacement." + +#, python-format +msgid "" +"The current beta image might not be stable.\n" +"For more information see %s." +msgstr "" +"L'image bêta actuelle pourrait ne pas être stable.\n" +"Pour plus d'informations, voir %s." + +#, python-format +msgid "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." +msgstr "" +"Le répertoire %s n'est pas inscriptible.\n" +"Vérifier d'avoir choisi un répertoire inscriptible à la place." + +#, python-format +msgid "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" +msgstr "" +"Le périphérique suivant à été trouvé:\n" +"\n" +"%s\n" +"\n" +"Souhaitez-vous écrire le flasheur USB sur cette clef ?" + +msgid "The following files were found..." +msgstr "Les fichiers suivant ont été trouvés..." + +msgid "The md5sum validation failed, the file may be corrupted!" +msgstr "La validation md5sum a échoué, le fichier est peut être corrompu !" + +msgid "" +"The network wizard extension is not installed!\n" +"Please install it." +msgstr "" +"L'extension Assistant Réseau n'est pas installée !\n" +"Veuillez l'installer." + +#, python-format +msgid "The path %s already exists." +msgstr "Le chemin %s existe déjà." + +msgid "The pin code you entered is wrong." +msgstr "Le code pin saisi est mauvais" + +#, python-format +msgid "The results have been written to %s." +msgstr "Les résultats ont été écrit sur %s." + +msgid "The sleep timer has been activated." +msgstr "La veille programmée a été activée" + +msgid "The sleep timer has been disabled." +msgstr "La veille programmée a été désactivée" + +msgid "" +"The software management extension is not installed!\n" +"Please install it." +msgstr "" +"L'extension Gestionnaire Logiciel n'est pas installée !\n" +"Veuillez l'installer." + +#, python-format +msgid "The status of the current beta image could not be checked because %s can not be reached." +msgstr "Le statut de l'image bêta actuelle n'a pas pu être vérifié, car %s ne peut pas être atteint." + +msgid "The timer file (timers.xml) is corrupt and could not be loaded." +msgstr "Le fichier programmation (timers.xml) est corrompu et ne peut-être chargé." + +msgid "The user interface of your receiver is restarting" +msgstr "L'interface utilisateur de votre récepteur redémarre" + +msgid "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" +msgstr "" +"L'interface utilisateur de votre récepteur redémarre\n" +"en raison d'une erreur dans 'mytest.py'" + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." +msgstr "" +"L'extension LAN sans fil n'est pas installée !\n" +"Veuillez l'installer et choisir ce que vous voulez faire ensuite." + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it." +msgstr "" +"L'extension LAN sans fil n'est pas installée !\n" +"Veuillez l'installer." + +msgid "The wizard can backup your current settings. Do you want to do a backup now?" +msgstr "L'assistant peut sauvegarder vos paramètres actuels. Voulez-vous sauvegarder maintenant ?" + +#, python-format +msgid "The wizard found a configuration backup. Do you want to restore your old settings from %s?" +msgstr "L'assistant à trouvé une configuration sauvegarde. Voulez-vous restaurer vosanciens paramètres depuis %s ?" + +msgid "The wizard is finished now." +msgstr "L'assistant est terminé." + +msgid "There are at least " +msgstr "Il y a au moins " + +#, python-format +msgid "There are at least %s updates available." +msgstr "Il y a au moins %s mises à jour disponibles." + +msgid "There are currently no outstanding actions." +msgstr "Il n'y a actuellement aucune action marquante." + +msgid "There are no updates available." +msgstr "Il n'y a pas de mise à jour disponible" + +msgid "There is no signal to lock on !" +msgstr "Il n'y a aucun signal à vérouiller !" + +msgid "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" +msgstr "" +"Il n'y aura pas assez de place sur la partition sélectionnée.\n" +"Souhaitez-vous vraiment continuer ?" + +msgid "This DVD RW medium is already formatted - reformatting will erase all content on the disc." +msgstr "Ce support DVD RW est déjà formaté - le reformater effacera tout le contenu sur le disque." + +msgid "" +"This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!" +msgstr "" +"Ce plugin crée une clé USB qui peut être utilisé pour mettre à jour le firmware de votre récepteur sans avoir besoin d'une connexion réseau ou WLAN.\n" +"Tout d'abord, une clé USB doit être préparée de sorte qu'elle soit bootable.\n" +"Dans l'étape suivante, un fichier image NFI peut être téléchargé à partir du serveur de mise à jour et sauvegardé sur la clé USB.\n" +"Si vous avez déjà une clé USB bootable préparé, s'il vous plaît insérez-la maintenant. Sinon, branchez une clé USB avec une taille minimum de 64 Mo!" + +msgid "This plugin is installed." +msgstr "Ce plugin est installé." + +msgid "This plugin is not installed." +msgstr "Ce plugin n'est pas installé." + +msgid "This plugin will be installed." +msgstr "Ce plugin sera installé." + +msgid "This plugin will be removed." +msgstr "Ce plugin sera retiré." + +#, python-format +msgid "This receiver cannot decode %s streams!" +msgstr "Ce récepteur ne peut pas décoder des flux %s !" + +msgid "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration" +msgstr "" +"Ce test vérifie la configuration noms serveurs.\n" +"Si vous obtenez un message \"non confirmé\" :\n" +"- S'il vous plaît vérifier votre DHCP, le câblage et l'adaptateur de configuration\n" +"- Si vous avez configuré vos serveurs de noms manuellement vérifier vos entrées." + +msgid "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" +msgstr "" +"Ce test vérifie si un câble réseau est bien connecté à votre adaptateur LAN.\n" +"Si vous obtenez le message \"déconnecté\" :\n" +"- Vérifiez qu'un câble est bien connecté\n" +"- Vérifiez que le câble n'est pas détérioré" + +msgid "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" +msgstr "" +"Ce test vérifie qu'une adresse IP valide est trouvée pour votre adaptateur LAN.\n" +"Si vous obtenez le message \"Non confirmé\" :\n" +"- Aucune adresse IP valide na été trouvée\n" +"- Veuillez vérifier votre DHCP, paramètres câblage et adaptateur" + +msgid "" +"This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." +msgstr "" +"Ce test vérifie que votre adaptateur réseau est configuré en adresse IP automatique configuration avec serveur DHCP.\n" +"Si vous obtenez le message \"Désactivé\" :\n" +"- Votre adaptateur LAN est configuré en adresse IP manuelle\n" +"- Vérifiez que vous avez entré les informations IP correctes dans le menu paramètres adaptateur\n" +"Si vous obtenez le message \"Activé\" :\n" +"- Vérifiez que vous avez configuré un serveur DHCP dans votre réseau" + +msgid "This test detects your configured LAN adapter." +msgstr "Ce test détecte votre adaptateur LAN configuré." + +msgid "" +"This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\n" +"Are you sure?" +msgstr "" +"Cela permettra de (re) calculer toutes les positions de votre rotor et peut effacer les positions mémorisées auparavant !\n" +"Êtes-vous sûr ?" + +msgid "Three" +msgstr "Trois" + +msgid "Threshold" +msgstr "Seuil" + +msgid "Thu" +msgstr "Jeu" + +msgid "Thumbnails" +msgstr "Miniatures" + +msgid "Thursday" +msgstr "Jeudi" + +msgid "Time" +msgstr "Heure" + +msgid "Time scale" +msgstr "Echelle de temps" + +msgid "Timer" +msgstr "Programmation" + +msgid "Timer Overview" +msgstr "Aperçu des programmations" + +msgid "Timer edit" +msgstr "Édition des programmations" + +msgid "Timer editor" +msgstr "Éditeur programmations" + +msgid "Timer entry" +msgstr "Saisir programmation" + +msgid "Timer log" +msgstr "Journal des enregistrements" + +msgid "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" +msgstr "" +"Chevauchement temporisateur dans timers.xml détecté !\n" +"Veuiller le re-vérifier !" + +msgid "Timer overview" +msgstr "Aperçu des programmations" + +msgid "Timer recording location" +msgstr "Emplacement enregistrements programmés" + +msgid "Timer sanity error" +msgstr "Erreur de programmation" + +msgid "Timer selection" +msgstr "Sélection de programmation" + +msgid "Timer selection..." +msgstr "Sélection de programmation..." + +msgid "Timer type" +msgstr "Type programmation" + +msgid "Timeshift" +msgstr "PauseDirect" + +msgid "Timeshift Live" +msgstr "" + +msgid "Timeshift location" +msgstr "Emplacement PauseDirect" + +msgid "Timeshift not possible!" +msgstr "PauseDirect impossible !" + +msgid "Timezone" +msgstr "Fuseau horaire" + +msgid "Title" +msgstr "Titre" + +msgid "Title properties" +msgstr "Propriétés titre" + +msgid "Titleset mode" +msgstr "Mode jeu titre" + +msgid "To audio selection" +msgstr "Vers sélection piste audio" + +msgid "To subtitle selection" +msgstr "Vers sélection sous-titres" + +msgid "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." +msgstr "" +"Pour mettre à jour le firmware de votre récepteur, s'il vous plaît suivez ces étapes :\n" +"1) Eteignez votre recepteur avec l'interrupteur arrière et assurez-vous que la clé USB bootable est branché\n" +"2) Allumer votre récepteur et maintenez le bouton DOWN sur la face avant pendant 10 secondes.\n" +"3) Attendre le démarrage et suivez les instructions de l'assistant." + +msgid "Today" +msgstr "Aujourd'hui" + +msgid "Toggle a cut mark at the current position" +msgstr "Commuter un marqueur coupé à cette position" + +msgid "Tone amplitude" +msgstr "Amplitude tonalité" + +msgid "Tone mode" +msgstr "Mode tonalité" + +msgid "Toneburst" +msgstr "Toneburst" + +msgid "Toneburst A/B" +msgstr "Toneburst A/B" + +msgid "Top and bottom" +msgstr "Haut et Bas" + +msgid "Track" +msgstr "Piste" + +msgid "Translation" +msgstr "Traduction" + +msgid "Translation:" +msgstr "Traduction :" + +msgid "Translations" +msgstr "Traductions" + +msgid "Transmission mode" +msgstr "Mode de transmission" + +msgid "Transponder" +msgstr "Transpondeur" + +msgid "Transponder type" +msgstr "Type transpondeur" + +msgid "Trash can" +msgstr "Corbeille" + +msgid "Tries left:" +msgstr "Essais annulés :" + +msgid "Try to find used transponders in cable network.. please wait..." +msgstr "Essai de trouver transpondeurs utilisés sur réseau câble... Veuillez patienter..." + +msgid "Trying to download a new packetlist. Please wait..." +msgstr "Essai téléchargement nouvelle liste paquet. Veuillez patienter..." + +msgid "Tue" +msgstr "Mar" + +msgid "Tuesday" +msgstr "Mardi" + +msgid "Tune" +msgstr "Accorder" + +msgid "Tune and focus" +msgstr "Accord et mise au point" + +msgid "Tune failed!" +msgstr "Echec accord !" + +msgid "Tuner" +msgstr "Tuner" + +msgid "Tuner configuration" +msgstr "Configuration tuner" + +msgid "Tuner is not supported" +msgstr "Le tuner n'est pas supporté" + +msgid "Tuner slot" +msgstr "Slot tuner" + +msgid "Tuner status" +msgstr "Status tuner" + +#, python-format +msgid "Tuner status %s" +msgstr "Status tuner %s" + +msgid "Tuner type" +msgstr "Type Tuner" + +msgid "Turkish" +msgstr "Turc" + +msgid "Turn on the power LED during standby." +msgstr "Allumer la LED power pendant le standby." + +msgid "Turning step size" +msgstr "Taille du pas de rotation" + +msgid "Two" +msgstr "Deux" + +msgid "Type" +msgstr "Type" + +msgid "Type of scan" +msgstr "Type d'analyse" + +msgid "USALS" +msgstr "USALS" + +msgid "USALS calibration" +msgstr "Calibrage USALS" + +msgid "USB stick" +msgstr "Clé USB" + +msgid "USB stick wizard" +msgstr "Assistant clé USB" + +msgid "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Mise à jour automatique en cours\n" +"Veuillez attendre que votre récepteur redémarre\n" +"Cela peut prendre quelques minutes" + +msgid "Undo install" +msgstr "Défaire installation" + +msgid "Undo uninstall" +msgstr "Défaire désinstallation" + +msgid "Unencrypted" +msgstr "Non crypté" + +msgid "UnhandledKey" +msgstr "Clé non prise en charge" + +msgid "Unicable" +msgstr "Unicable" + +msgid "Unicable LNB" +msgstr "Unicable LNB" + +msgid "Unicable Martix" +msgstr "Unicable Martix" + +msgid "Uninstall" +msgstr "Désinstaller" + +msgid "Universal LNB" +msgstr "LNB universel" + +msgid "Unknown" +msgstr "Inconnu" + +msgid "Unmount" +msgstr "Démonter" + +msgid "Unsupported" +msgstr "Non supporté" + +msgid "Update" +msgstr "Mise à jour" + +msgid "Update and ask to reboot" +msgstr "Mettre à jour et demander de redémarrer" + +msgid "Update and reboot (recommended)" +msgstr "Mise à jour et redémarrage (recommandé)" + +msgid "Update channel list only" +msgstr "Mettre à jour seulement liste des chaînes" + +#, python-format +msgid "Update completed, %d package was installed." +msgid_plural "Update completed, %d packages were installed." +msgstr[0] "Mise à jour terminée, %d paquet a été installé." +msgstr[1] "Mise à jour terminée, %d paquets ont été installés." + +msgid "Update completed. Do you want to reboot your receiver?" +msgstr "Mise à jour terminée. Voulez-vous redémarrer votre récepteur ?" + +msgid "Update failed. Your receiver does not have a working internet connection." +msgstr "La mise à jour a échoué. Votre récepteur ne dispose pas de connexion Internet." + +msgid "Update has completed." +msgstr "La mise à jour est terminée." + +msgid "Updatefeed not available." +msgstr "MAJ feed non disponible." + +msgid "Updating software catalog" +msgstr "Mise à jour du catalogue logiciel" + +msgid "Upgrading" +msgstr "Mise à jour en cours" + +msgid "Use" +msgstr "Utiliser" + +msgid "Use DHCP" +msgstr "Utiliser DHCP" + +msgid "Use EIT EPG information when it is available." +msgstr "Utiliser l'information EIT EPG quand elle est disponible." + +msgid "Use FreeSat EPG information when it is available." +msgstr "Utiliser l'information FreeSat EPG quand elle est disponible." + +msgid "Use MHW EPG information when it is available." +msgstr "Utiliser l'information MHW EPG quand elle est disponible." + +msgid "Use Netmed EPG information when it is available." +msgstr "Utiliser l'information Netmed EPG quand elle est disponible." + +msgid "Use TV remote control" +msgstr "Utiliser la télécommande de la TV" + +msgid "Use USALS for this sat" +msgstr "Utiliser USALS pour ce satellite" + +msgid "Use ViaSat EPG information when it is available." +msgstr "Utiliser l'information ViaSat EPG quand elle est disponible." + +msgid "Use Virgin EPG information when it is available." +msgstr "" + +msgid "Use a gateway" +msgstr "Utiliser la passerelle" + +msgid "Use fastscan channel names" +msgstr "Utiliser le scan rapide des noms des chaînes" + +msgid "Use fastscan channel numbering" +msgstr "Utiliser le scan rapide pour la numérotation des chaînes" + +msgid "Use frequency or channel" +msgstr "Utiliser fréquence ou chaîne" + +msgid "Use individual settings for each directory" +msgstr "Utiliser les paramétres individuels pour chaque répertoire" + +msgid "Use interface" +msgstr "Utiliser l'interface" + +msgid "Use official channel numbering" +msgstr "Utiliser la numérotation officielle des chaînes" + +msgid "Use original DVB subtitle position" +msgstr "Utiliser la position des sous-titres DVB" + +msgid "Use original teletext position" +msgstr "Utiliser la position d'origine du télétexte" + +msgid "Use power measurement" +msgstr "Utiliser la mesure de puissance" + +msgid "Use the network wizard to configure selected network adapter" +msgstr "Utiliser l'asistant réseau pour configurer l'adaptateur réseau" + +msgid "Use the network wizard to configure your network\n" +msgstr "Utiliser l'Assistant réseau pour configurer votre Réseau\n" + +msgid "Use the up/down keys on your remote control to select an option. After that, press OK." +msgstr "Utiliser les boutons haut/bas de votre télécommande pour sélectionner une option. Après cela, appuyez sur OK." + +msgid "Use the wizard to set up basic features" +msgstr "Utiliser l'assistant pour les réglages de base" + +msgid "Use these input device settings?" +msgstr "Utiliser ces paramètres périphérique entrée ?" + +msgid "Use these settings?" +msgstr "Voulez-vous utiliser ces paramètres ?" + +msgid "Use this video enhancement settings?" +msgstr "Utiliser ces paramètres vidéo améliorés ?" + +msgid "Use trash can in movielist" +msgstr "Utiliser la corbeille dans liste des films" + +msgid "Used service scan type" +msgstr "Type d'analyse de service utilisé" + +msgid "User - bouquets" +msgstr "Perso - bouquets" + +msgid "User defined" +msgstr "Défini par l'utilisateur" + +msgid "User defined transponder" +msgstr "Transpondeur défini par l'utilisateur" + +msgid "User interface" +msgstr "Interface utilisateur" + +msgid "Username" +msgstr "Nom utilisateur" + +#, python-format +msgid "Using LNB %d" +msgstr "Utilisation LNB %d" + +msgid "Using fixed address" +msgstr "Utilisation d'adresse fixe" + +#, python-format +msgid "Using tuner %s" +msgstr "Utilisation du tuner %s " + +msgid "Usually when the subtitle language is the same as the audio language, the subtitles will not be used. Enable this option to allow these subtitles to be used." +msgstr "Habituellement, lorsque la langue des sous-titres est la même que la langue audio, les sous-titres ne seront pas utilisées. Activez cette option pour permettre à ces sous-titres d'être utiliser." + +msgid "VCR scart" +msgstr "Péritel magnétoscope" + +msgid "VMGM (intro trailer)" +msgstr "VMGM (intro bande-annonce)" + +msgid "Vertical" +msgstr "Vertical" + +msgid "Vertical turning speed" +msgstr "Vitesse rotation verticale" + +msgid "Video PID" +msgstr "PID Video" + +msgid "Video enhancement preview" +msgstr "Aperçu pour vidéo améliorée" + +msgid "Video enhancement settings" +msgstr "Paramètres pour vidéo améliorée" + +msgid "Video enhancement setup" +msgstr "Configuration pour vidéo améliorée" + +msgid "Video fine tuning" +msgstr "Réglage Vidéo avancé" + +msgid "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." +msgstr "" +"Sélection entrée vidéo\n" +"\n" +"Veuillez presser OK si vous pouvez voir cette page sur la TV (ou choisir un port d'entrée différent).\n" +"\n" +"Le port entrée suivant sera automatiquement scanné dans 20 secondes." + +msgid "Video mode selection." +msgstr "Sélection du mode vidéo." + +msgid "Video output" +msgstr "Sortie vidéo" + +msgid "Video setup" +msgstr "Paramètres vidéo" + +msgid "Video wizard" +msgstr "Assistant Vidéo" + +#, python-format +msgid "Video: %s fps" +msgstr "Vidéo: %s fps" + +msgid "VideoMode" +msgstr "Mode Vidéo" + +msgid "Videocodec" +msgstr "Codec vidéo" + +msgid "Videoformat" +msgstr "Format vidéo" + +msgid "Videosize" +msgstr "Taille vidéo" + +msgid "View Rass interactive..." +msgstr "Afficher Rass interactif..." + +msgid "View details" +msgstr "Voir les détails" + +msgid "View list of available " +msgstr "Voir la liste des disponibles" + +msgid "View list of available CommonInterface extensions" +msgstr "Voir liste des Common Interface disponibles." + +msgid "View list of available EPG extensions." +msgstr "Voir liste extensions EPG disponibles." + +msgid "View list of available Satellite equipment extensions." +msgstr "Voir liste extensions dispositif satellitaire disponibles." + +msgid "View list of available communication extensions." +msgstr "Voir liste extensions communication disponibles." + +msgid "View list of available default settings" +msgstr "Voir liste configurations prédéfinies disponibles." + +msgid "View list of available display and userinterface extensions." +msgstr "Voir liste extensions affichages/interface utilisateur disponibles." + +msgid "View list of available multimedia extensions." +msgstr "Voir liste extensions multimédias disponibles." + +msgid "View list of available networking extensions" +msgstr "Voir liste extensions du réseau disponibles." + +msgid "View list of available recording extensions" +msgstr "Voir liste extensions d'enregistrements disponibles." + +msgid "View list of available skins" +msgstr "Voir liste thèmes disponibles." + +msgid "View list of available software extensions" +msgstr "Voir liste extensions logiciels disponibles." + +msgid "View list of available system extensions" +msgstr "Voir liste extensions des systèmes disponibles." + +msgid "View photos..." +msgstr "Voir Photos..." + +msgid "View teletext..." +msgstr "Afficher télétexte..." + +msgid "View video CD..." +msgstr "Voir Vidéo CD..." + +msgid "Virtual keyboard" +msgstr "Clavier virtuel" + +msgid "Voltage mode" +msgstr "Mode voltage" + +msgid "Volume" +msgstr "Volume" + +msgid "W" +msgstr "O" + +msgid "WEP" +msgstr "WEP" + +msgid "WLAN connection" +msgstr "Connexion WLAN" + +msgid "WPA" +msgstr "WPA" + +msgid "WPA or WPA2" +msgstr "WPA ou WPA2" + +msgid "WPA2" +msgstr "WPA2" + +msgid "WSS on 4:3" +msgstr "WSS sur 4:3" + +msgid "Waiting" +msgstr "Attendez" + +msgid "Waiting for mount" +msgstr "Attendre pour monter" + +msgid "Waiting for partition" +msgstr "Attendre pour partitionner" + +msgid "Wakeup" +msgstr "Réveil" + +msgid "Wakeup TV from standby" +msgstr "Réveil de la TV depuis le mode veille" + +msgid "Wakeup receiver for start timer" +msgstr "Réveil du récepteur pour une programmation de démarrage" + +msgid "Wakeup receiver from standby" +msgstr "Réveil du récepteur depuis le mode veille" + +msgid "Wakeup signal from TV" +msgstr "Signal du réveil de la TV" + +msgid "Wakeup type" +msgstr "Type de réveil" + +msgid "Warning: no LNB; using factory defaults." +msgstr "Attention : pas de LNB; utiliser la configuration par défaut." + +msgid "Watch movies..." +msgstr "Lire les films..." + +msgid "Watch recordings..." +msgstr "Lire enregistrements..." + +msgid "Wed" +msgstr "Mer" + +msgid "Wednesday" +msgstr "Mercredi" + +msgid "Weekday" +msgstr "Jours ouvrables" + +msgid "Weighted position" +msgstr "Position pondérée" + +msgid "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." +msgstr "" +"Bienvenue dans l'éditeur Cutlist.\n" +"\n" +"Rechercher le départ de la partie que vous voulez couper. Presser OK, sélectionner 'départ de coupe'.\n" +"\n" +"Puis rechercher la fin, presser OK, sélectionner 'fin de coupe'. C'est fait." + +msgid "Welcome to the image upgrade wizard. The wizard will assist you in upgrading the firmware of your receiver by providing a backup facility for your current settings and a short explanation of how to upgrade your firmware." +msgstr "Bienvenue dans l'assistant de mise à niveau d'image. L'assistant va vous aider à mettre à niveau le micrologiciel de votre récepteur en offrant un service de sauvegarde de vos paramètres actuels et une courte explication de la façon de mettre à jour votre firmware." + +msgid "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" +msgstr "" +"Bienvenue.\n" +"\n" +"Si vous souhaitez connecter votre récepteur à Internet, cet assistant vous guidera à travers la configuration réseau de base de votre récepteur.\n" +"\n" +"Appuyez sur OK pour commencer à configurer votre réseau" + +msgid "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." +msgstr "" +"Bienvenue.\n" +"\n" +"Cet assistant de démarrage vous guidera à travers la configuration de base de votre récepteur.\n" +"Appuyez sur le bouton OK de votre télécommande pour passer à l'étape suivante." + +msgid "Welcome..." +msgstr "Bienvenue..." + +msgid "West" +msgstr "Ouest" + +msgid "West limit set" +msgstr "Fixer limite Ouest" + +msgid "What do you want to scan?" +msgstr "Que voulez-vous analyser ?" + +msgid "When enabled the PiP can be closed by the exit button." +msgstr "Lorsqu'elle est activé le PiP peut être fermé avec le bouton exit." + +msgid "When enabled the arrow buttons around the OK button will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled the left, right, CH+/-, B+/-, P+/- buttons will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled you can specify a timeframe to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "When enabled you can specify a timeframe were the inactivity sleeptimer is ignored. Not the detection is disabled during this timeframe but the inactivity timeout is disabled" +msgstr "Lorsqu'elle est activée vous pouvez spécifier une plage horaire pendant laquelle l'arrêt automatique pour inactivité est ignoré. La détection n'est pas désactivée pendant cette période, juste le timer d'inactivité est désactivé." + +msgid "When enabled you can zap channels with the CH+/-, B+/-, P+/- buttons instead of opening the channel selection list." +msgstr "" + +msgid "When enabled you get the channel selection list via the OK button, the infobar toggle is then transfered to exit button" +msgstr "" + +msgid "When enabled, AIT data will be included in http streams. This allows a client receiver to use HbbTV." +msgstr "Lorsqu'elle est activée, les données de l'AIT seront inclus dans les flux http. Cela permet à un récepteur client d'utiliser HbbTV." + +msgid "When enabled, ECM data will be included in http streams. This allows a client receiver to do the descrambling." +msgstr "Lorsqu'elle est activée, les données ECM seront inclus dans les flux http. Cela permet à un récepteur client de faire le décryptage." + +msgid "When enabled, EIT data will be included in http streams. This allows a client receiver to show EPG." +msgstr "Lorsqu'elle est activée, les données EIT seront inclus dans les flux http. Cela permet à un récepteur clients d'afficher l'EPG." + +msgid "When enabled, a popup message will be shown when a movie has finished and the next one will start." +msgstr "Lorsqu'elle est activée, un message contextuel s'affiche quand un film est terminé et que le prochain va commencer." + +msgid "When enabled, a popup message will be shown when a recording starts." +msgstr "Lorsqu'elle est activée, un message contextuel s'affiche lorsque l'enregistrement commence." + +msgid "When enabled, a radio background image will be visible while listening to a radio channel." +msgstr "Lorsqu'elle est activée, une image de fond radio sera visible pendant que vous écoutez une station de radio." + +msgid "When enabled, a recording is allowed to interrupt live tv, when there are no free tuners." +msgstr "Lorsqu'elle est activée, un enregistrement est autorisé à interrompre la télévision en direct, quand il n'y a pas de tuners libres." + +msgid "When enabled, a warning will be displayed and the user will get an option to stop or to continue the timeshift." +msgstr "Lorsqu'elle est activée, un avertissement sera affiché et l'utilisateur aura l'option d'arrêter ou de continuer le timeshift." + +msgid "When enabled, authentication is required to watch http streams." +msgstr "Lorsque c'est activé, une authentification est nécessaire pour regarder les flux (streams) http" + +msgid "When enabled, channel numbering will start at '1' for each bouquet." +msgstr "Lorsqu'elle est activée, la numérotation des chaînes démarre à '1 'pour chaque bouquet." + +msgid "When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen." +msgstr "Lorsqu'elle est activée, le contenu d'un rapport d'aspect de 4:3 sera étirée pour remplir l'écran." + +msgid "When enabled, continue to the next bouquet when the last channel of the current bouquet is reached while changing channels." +msgstr "Lorsqu'elle est activée, passez au prochain bouquet quand la dernière chaîne du bouquet en cour est atteint tout en changeant de chaines." + +msgid "When enabled, deleted recordings are moved to the trash can, instead of being deleted immediately." +msgstr "Lorsqu'elle est activée, les enregistrements supprimés sont déplacés dans la corbeille, au lieu d'être supprimé immédiatement." + +msgid "When enabled, display the EIT now/next eventdata in infobar. When disabled, display now/next eventdata from the EPG cache instead." +msgstr "Lorsqu'elle est activée, les événements maintenant/suivant de l'EIT seront affichés dans la barre d'info. Lorsqu'elle est désactivé, les événements maintenant/suivant seront affichés dans la barre à partir du cache EPG." + +msgid "When enabled, encryption info will be shown in the infobar (when supported by the skin)." +msgstr "Lorsqu'elle est activée, les informations d'encryption seront affichés dans la barre d'information (lorsqu'elle est soutenue par le skin)." + +msgid "When enabled, error messages related to the Common Interface module will not be shown." +msgstr "Lorsqu'elle est activée, les messages d'erreur relatifs au module d'interface commune ne sera pas affiché." + +msgid "When enabled, error messages related to zapping will not be shown." +msgstr "Lorsqu'elle est activée, les messages d'erreurs liés au zapping ne seront pas affichés." + +msgid "When enabled, external subtitles will be always turned on for playback movie." +msgstr "Lorsqu'elle est activée, les sous-titres externes seront toujours activés lors de la lecture d'un film." + +msgid "When enabled, graphical DVB subtitles are preferred over teletext subtitles, when both types are available." +msgstr "Lorsqu'elle est activée, les sous-titres graphiques DVB seront préférés aux sous-titres télétexte, lorsque les deux types sont disponibles." + +msgid "When enabled, graphical DVB subtitles will be centered horizontally." +msgstr "Lorsqu'elle est activée, les sous-titres graphiques DVB seront centrés horizontalement." + +msgid "When enabled, graphical DVB subtitles will be displayed at their original position." +msgstr "Lorsqu'elle est activée, les sous-titres graphiques DVB seront affichées à leur position d'origine." + +msgid "When enabled, graphical DVB subtitles will be displayed in yellow, instead of the original color." +msgstr "Lorsqu'elle est activée, les sous-titres graphiques DVB seront affichés en jaune, au lieu de la couleur d'origine." + +msgid "When enabled, http streams are descrambled on the server side. The (remote) client receiver does not have to do descrambling." +msgstr "Lorsqu'elle est activée, les flux http sont décryptés du côté serveur. Le récepteur client (distant) n'aura pas a décrypter." + +msgid "When enabled, it is possible to leave the movieplayer with exit." +msgstr "Lorsqu'elle est activée, il est possible de quitter le lecteur de film avec exit." + +msgid "When enabled, measure power consumption to detect when the rotor stops turning (when supported by the tuner)." +msgstr "Lorsqu'elle est activée, la consommation d'énergie sera mesuré pour détecter le moment où le rotor ne tourne pas (lorsqu'elle est supportée par le tuner)." + +msgid "When enabled, number markers will be hiden." +msgstr "Lorsqu'elle est activée, le numéro des marqueurs sera caché." + +msgid "When enabled, services may be grouped in multiple bouquets." +msgstr "Lorsqu'elle est activée, les services peuvent être regroupées en bouquets multiples." + +msgid "When enabled, show channel numbers in the channel selection screen." +msgstr "Lorsqu'elle est activée, afficher les numéros des chaines dans l'écran de sélection des chaines." + +msgid "When enabled, subtitles for the hearing impaired can be used." +msgstr "Lorsqu'elle est activée, les sous-titres pour les malentendants peuvent être utilisés." + +msgid "When enabled, subtitles for the hearing impaired will be preferred over normal subtitles, when both types are available." +msgstr "Lorsqu'elle est activée, les sous-titres pour les malentendants seront préférés aux sous-titres normaux, lorsque les deux types sont disponibles." + +msgid "When enabled, teletext pages will be cached, allowing faster access." +msgstr "Lorsqu'elle est activée, les pages télétexte seront mise en cache, ce qui permet un accès plus rapide." + +msgid "When enabled, teletext subtitles will be displayed at their original position." +msgstr "Lorsqu'elle est activée, les sous-titres télétexte seront affichés à leur position d'origine." + +msgid "When enabled, the VCR scart option will be shown on the main menu" +msgstr "Lorsqu'elle est activée, l'option péritel magnétoscope sera affichée dans l'écran principal" + +msgid "When enabled, the channel selection list will be hidden while listening to a radio channel" +msgstr "Lorsqu'elle est activée, la liste des chaînes sera cachée pendant l'écoute d'une station de radio" + +msgid "When enabled, the infobar will be displayed when a new event starts." +msgstr "Lorsqu'elle est activée, la barre d'informations s'affiche quand un nouvel événement commence." + +msgid "When enabled, the infobar will be displayed when changing channels." +msgstr "Lorsqu'elle est activée, la barre d'informations s'affiche lors du changement de chaînes." + +msgid "When enabled, the infobar will be displayed when skipping forwards/backwards during media playback." +msgstr "Lorsqu'elle est activée, la barre d'informations s'affiche lors du saut avant / arrière pendant la lecture des médias." + +msgid "When enabled, the lenght of each recording will be shown in the movielist (this might cause some additional loading time)." +msgstr "Lorsqu'elle est activée, la longueur de chaque enregistrement sera affiché dans la Liste Des Films (ce qui peut provoquer un certain temps de chargement supplémentaire)." + +msgid "When enabled, the original line breaks will be removed from the teletext subtitles." +msgstr "Lorsqu'elle est activée, les sauts de lignes originales seront retirés des sous-titres télétexte." + +msgid "When enabled, the receiver will automatically use the audio track which you selected before." +msgstr "Lorsqu'elle est activée, le récepteur utilisera automatiquement la piste audio que vous avez sélectionnée auparavant." + +msgid "When enabled, the receiver will automatically use the subtitles which you selected before." +msgstr "Lorsqu'elle est activée, le récepteur utilisera automatiquement les sous-titres que vous avez sélectionnés avant." + +msgid "When enabled, the receiver will no longer monitor the tuned transponder for possible changes. Do not use this option unless you know what you are doing." +msgstr "Lorsqu'elle est activée, le récepteur ne sera plus suivre les éventuelles modifications du transpondeur. N'utiliser cette option que si vous savez ce que vous faites." + +msgid "When enabled, the receiver will select an AC3 track (when available)." +msgstr "Lorsqu'elle est activée, le récepteur sélectionne une piste AC3 (si disponible)." + +msgid "When enabled, the receiver will select an AC3+ track (when available)." +msgstr "Lorsqu'elle est activée, le récepteur sélectionne une piste AC3+ (si disponible)." + +msgid "When enabled, timeshift starts automatically in background after specified time." +msgstr "Lorsqu'elle est activée, le timeshift démarre automatiquement en tâche de fond après le temps spécifié." + +msgid "When enabled, use DHCP for the IP configuration." +msgstr "Lorsqu'elle est activée, utiliser DHCP pour la configuration IP." + +msgid "When enabled, your receiver will detect activity on the VCR SCART input." +msgstr "Lorsqu'elle est activée, le récepteur détecte l'activité sur l'entrée péritel magnétoscope." + +msgid "When nonzero, a recording will start earlier than the starting time indicated by the EPG." +msgstr "Lorsque différent de zéro, un enregistrement commence plus tôt que l'heure de départ indiquée par le guide des programmes." + +msgid "When nonzero, a recording will stop later than the ending time indicated by the EPG." +msgstr "Lorsque différent de zéro, un enregistrement s'arrêtera plus tard que l'heure de fin indiquée par l'EPG." + +msgid "When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture." +msgstr "Lorsque le contenu a un rapport d'aspect de 16:9, choisir de redimensionner/étirer l'image." + +msgid "When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture." +msgstr "Lorsque le contenu a un rapport d'aspect de 4:3, choisir de redimensionner/étirer l'image." + +msgid "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" +msgstr "" +"En faisant une réinitialisation usine, vous perdrez TOUTES vos données configurées\n" +"(y compris bouquets, services, données satellite ...)\n" +"Lorsque la réinitialisation usine sera accomplie, votre récepteur redémarrera automatiquement!\n" +"\n" +"Voulez-vous vraiment faire une réinitialisation usine ?" + +msgid "Where do you want to backup your settings?" +msgstr "Où voulez-vous sauver vos paramètres ?" + +msgid "Where to save temporary timeshift recordings?" +msgstr "Où sauver les enregistrements temporaires PauseDirect ?" + +msgid "Wireless LAN" +msgstr "LAN sans fil" + +msgid "Wireless network" +msgstr "Réseau sans fil" + +msgid "Wireless network configuration..." +msgstr "Configuration connexion réseau sans fil." + +msgid "Wireless network connection setup" +msgstr "Configuration connexion réseau sans fil" + +msgid "Wireless network connection setup." +msgstr "Configuration connexion réseau sans fil." + +msgid "Wireless network state" +msgstr "État du réseau sans fil" + +msgid "With popup" +msgstr "Avec le popup" + +msgid "Without popup" +msgstr "Sans le popup" + +msgid "Would you like to install a softcam?" +msgstr "Voulez-vous installer un softcam ?" + +msgid "Write error while recording. Disk full?\n" +msgstr "Erreur d'écriture lors de l'enregistrement. Disque plein ?\n" + +msgid "Write failed!" +msgstr "Échec d'écriture !" + +msgid "YPbPr" +msgstr "YPbPr" + +msgid "Year" +msgstr "Année" + +msgid "Yellow DVB subtitles" +msgstr "Sous-titres DVB jaune" + +msgid "Yes" +msgstr "Oui" + +msgid "Yes and save" +msgstr "Oui et sauvegarder" + +msgid "Yes and save in movie dir" +msgstr "Oui et sauvegarder dans le répertoire des films" + +msgid "Yes to all" +msgstr "Oui à tout" + +msgid "Yes, always" +msgstr "Oui, toujours" + +msgid "Yes, and delete this movie" +msgstr "Oui, et effacer ce film" + +msgid "Yes, backup my settings!" +msgstr "Oui, sauvegarder mes paramètres !" + +msgid "Yes, delete this movie and return to movie list" +msgstr "" + +msgid "Yes, do a manual scan now" +msgstr "Oui, faire une analyse manuelle maintenant" + +msgid "Yes, do an automatic scan now" +msgstr "Oui, faire une analyse automatique maintenant" + +msgid "Yes, do another manual scan now" +msgstr "Oui, faire une autre analyse manuelle maintenant" + +msgid "Yes, perform a shutdown now." +msgstr "Oui, éteindre maintenant." + +msgid "Yes, restore the settings now" +msgstr "Oui, restaurer les paramètres maintenant" + +msgid "Yes, returning to movie list" +msgstr "Oui, retour vers liste des films" + +msgid "Yesterday" +msgstr "Hier" + +#, python-format +msgid "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" +msgstr "" +"Vous avez déjà une liste de chaînes installée,\n" +"voulez-vous enlever\n" +"\"%s\" ?" + +msgid "You can cancel the installation." +msgstr "Vous pouvez annuler l'installation." + +msgid "You can cancel the removal." +msgstr "Vous pouvez annuler le retrait." + +msgid "You can continue watching TV etc. while this is running." +msgstr "Vous pouvez continuer de regarder la TV pendant le processus." + +msgid "You can install this plugin." +msgstr "Vous pouvez installer le plugin." + +msgid "You can only burn receiver recordings!" +msgstr "Vous pouvez uniquement graver les enregistrements du recepteur !" + +msgid "You can remove this plugin." +msgstr "Vous pouvez retirer ce plugin." + +msgid "You cannot delete this!" +msgstr "Vous ne pouvez pas effacer ceci !" + +msgid "You didn't select a channel to record from." +msgstr "Vous n'avez pas sélectionné une chaîne à enregistrer." + +msgid "You have chosen to backup your settings. Please press OK to start the backup now." +msgstr "Vous avez choisi de sauvegarder vos paramètres. Veuillez appuyer sur OK pour commencer la sauvegarde." + +msgid "You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased." +msgstr "Vous avez choisi de créer une nouvelle clef USB flasheur bootable .NFI. Ceci repartitionnera la clef USB et par conséquant effacera toutes données dessus." + +msgid "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." +msgstr "Vous avez choisi de restaurer vos paramètres. Enigma2 redémarrera après la restauration. Veuillez appuyer sur OK pour démarrer la restauration." + +#, python-format +msgid "You have to wait %s!" +msgstr "Vous devez attendre %s !" + +msgid "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." +msgstr "" +"Vous avez besoin d'un PC relié à votre récepteur. Si vous avez besoin de plus amples instructions, s'il vous plaît visitez le site Web de http://www.dm7025.de.\n" +"Votre récepteur va maintenant être arrêté. Après avoir exécuté les instructions de mise à jour du site web, votre nouveau firmware vous demandera de restaurer vos paramètres." + +msgid "You system does not support ext4" +msgstr "Votre système ne supporte pas ext4" + +msgid "Your backup succeeded. We will now continue to explain the further upgrade process." +msgstr "Votre sauvegarde a réussi. Nous allons continuer à expliquer la procédure de mise à jour." + +msgid "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" +msgstr "Votre collection dépasse la taille d'un support simple couche, vous aurez besoin d'un DVD double couche vierge !" + +msgid "Your current collection will get lost!" +msgstr "Votre collection actuelle sera perdue !" + +msgid "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." +msgstr "" +"Le logiciel de votre frontprocessor doit être mis à jour.\n" +"Veuillez appuyer sur OK pour commencer la mise à jour." + +msgid "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Votre frontprocessor sera mis à jour\n" +"S'il vous plaît attendez le redémarrage de votre récepteur\n" +"Cela peut prendre quelques minutes" + +msgid "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." +msgstr "" +"Votre connexion internet ne fonctionne pas!\n" +"Veuillez choisir ce que vous voulez faire ensuite." + +#, python-format +msgid "Your internet connection is working (ip: %s)" +msgstr "Votre connexion Internet fonctionne (ip: %s)" + +msgid "Your network configuration has been activated." +msgstr "Votre configuration réseau a été activée." + +msgid "Your receiver does not have an internet connection" +msgstr "Votre récepteur ne dispose pas d'une connexion Internet" + +msgid "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" +msgstr "" +"Votre récepteur est maintenant prêt à être utilisé.\n" +"\n" +"Votre connexion Internet fonctionne.\n" +"\n" + +msgid "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Votre récepteur est maintenant prêt à être utilisé.\n" +"\n" +"Votre connexion Internet fonctionne maintenant.\n" +"\n" +"S'il vous plaît appuyez sur OK pour continuer." + +msgid "Your receiver is rebooting" +msgstr "Votre récepteur redémarre" + +msgid "Your receiver is shutting down" +msgstr "Votre récepteur s'arrête" + +msgid "Your receiver is shutting down. Please stand by..." +msgstr "Votre récepteur s'arrête. Please stand by..." + +msgid "Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver." +msgstr "Votre récepteur peut être inutilisable maintenant. S'il vous plaît consulter le manuel pour obtenir de l'aide avant de redémarrer votre récepteur." + +msgid "Your receiver will got to stand by due to the sleeptimer." +msgstr "Votre récepteur va se mettre en veille sur base du timer d'inactivité (sleeptimer)." + +msgid "Your receiver will got to standby due to inactivity." +msgstr "Votre récepteur va se mettre en veille faute d'activité." + +msgid "Your receiver will restart after pressing OK on your remote control." +msgstr "Votre récepteur va redémarrer après avoir appuyé sur OK de votre télécommande." + +msgid "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." +msgstr "" +"Votre connexion internet LAN sans fil ne peut démarrer!\n" +"Avez-vous connecté correctement votre clé USB WLAN?\n" +"\n" +"Veuillez choisir ce que vous voulez faire ensuite." + +msgid "Zap" +msgstr "Zapper" + +msgid "Zap back to previously tuned service?" +msgstr "Revenir sur le service précédemment réglé?" + +msgid "Zap back to service before positioner setup?" +msgstr "Revenir sur le service avant le réglage positionneur?" + +msgid "Zap back to service before tuner setup?" +msgstr "Revenir sur le service avant le réglage tuner?" + +msgid "Zap focus to Picture in Picture" +msgstr "Zap focus image dans l'image" + +msgid "Zap focus to main screen" +msgstr "Zap focus écran principal" + +msgid "Zap mode" +msgstr "Mode de zap" + +msgid "Zap to selected channel" +msgstr "Zapper sur le canal sélectionné" + +msgid "Zap to selected channel, or show detailed event info (depends on configuration)" +msgstr "Zapper sur le canal sélectionné, ou afficher l'information d'événement détaillé (selon la configuration)" + +msgid "[alternative edit]" +msgstr "[Édition alternatif]" + +msgid "[bouquet edit]" +msgstr "[Édtion des bouquets]" + +msgid "[favourite edit]" +msgstr "[Edition des favoris]" + +msgid "[move mode]" +msgstr "[Mode déplacement]" + +msgid "a gui to assign services/providers to common interface modules" +msgstr "Une interface graphique pour attribuer des services/fournisseurs aux modules d'interface commune" + +msgid "a gui to assign services/providers/caids to common interface modules" +msgstr "Une interface graphique pour attribuer des services/opérateurs/caïds aux modules d'interface commune" + +msgid "abort alternatives edit" +msgstr "Abandonner l'édition des alternatifs" + +msgid "abort bouquet edit" +msgstr "Abandonner l'édition des bouquets" + +msgid "abort favourites edit" +msgstr "Abandonner l'édition des favoris" + +msgid "about to start" +msgstr "Sur le point de commencer" + +msgid "activate network adapter configuration" +msgstr "Activer la configuration de l'adaptateur réseau" + +msgid "add alternatives" +msgstr "Ajouter les alternatifs" + +msgid "add bookmark" +msgstr "Ajouter marque page" + +msgid "add bouquet" +msgstr "Ajouter bouquet" + +msgid "add marker" +msgstr "Ajouter marqueur" + +msgid "add service to bouquet" +msgstr "Ajouter ce service au bouquet" + +msgid "add service to favourites" +msgstr "Ajouter ce service aux favoris" + +msgid "add to parental protection" +msgstr "Ajouter à la protection parentale" + +msgid "adult movie/drama" +msgstr "Film adulte/drame" + +msgid "advanced" +msgstr "Avancé" + +msgid "adventure/western/war" +msgstr "Aventure/western/guerre" + +msgid "advertisement/shopping" +msgstr "Publicité/shopping" + +msgid "after " +msgstr "Après " + +msgid "alphabetic" +msgstr "Alphabétique" + +msgid "alphabetic reverse" +msgstr "Inverser alphabet" + +msgid "alternative" +msgstr "Alternatif" + +msgid "always" +msgstr "toujours" + +msgid "and select next channel" +msgstr "" + +msgid "and select previous channel" +msgstr "" + +msgid "arts/culture (without music, general)" +msgstr "Arts/Culture (sans musique, général)" + +msgid "arts/culture magazine" +msgstr "Arts/culture magazines" + +msgid "athletics" +msgstr "Athlétisme" + +msgid "audio tracks" +msgstr "Pistes audio" + +msgid "auto" +msgstr "Auto" + +msgid "automatic" +msgstr "Automatique" + +msgid "back" +msgstr "Retour" + +msgid "background image" +msgstr "Image d'arrière plan" + +msgid "ballet" +msgstr "Ballet" + +#, python-format +msgid "bc%s" +msgstr "bc%s" + +msgid "better" +msgstr "Meilleur" + +msgid "black" +msgstr "Noir" + +msgid "black & white" +msgstr "Noir & Blanc" + +msgid "blacklist" +msgstr "Liste interdit (blacklist)" + +msgid "blue" +msgstr "Bleu" + +msgid "broadcasting/press" +msgstr "Diffusion/Presse" + +msgid "by date" +msgstr "Par date" + +msgid "cartoon/puppets" +msgstr "Dessin animé/Marionnettes" + +msgid "center" +msgstr "Centré" + +msgid "centered" +msgstr "Centré" + +msgid "centered, wrapped" +msgstr "Centré, enveloppé" + +msgid "chapters" +msgstr "Chapitres" + +msgid "childrens's/youth program (general)" +msgstr "Enfants/programme pour les jeunes (général)" + +msgid "circular left" +msgstr "Circulaire à gauche" + +msgid "circular right" +msgstr "Circulaire à droite" + +msgid "comedy" +msgstr "Comédie" + +msgid "complex" +msgstr "Complexe" + +msgid "config menu" +msgstr "Menu de configuration" + +msgid "confirmed" +msgstr "Confirmé" + +msgid "connected" +msgstr "Connecté" + +msgid "continue" +msgstr "Continuer" + +msgid "cooking" +msgstr "Cuisine" + +msgid "copy to bouquets" +msgstr "Copier vers bouquets" + +msgid "create directory" +msgstr "Création répertoire" + +#, python-format +msgid "currently installed image: %s" +msgstr "Image actuellement installée : %s" + +msgid "daily" +msgstr "Quotidien" + +msgid "day" +msgstr "Jour" + +msgid "default" +msgstr "Par défaut" + +msgid "delete cut" +msgstr "Effacer coupe" + +msgid "delete..." +msgstr "Efface..." + +msgid "descramble and record ecm" +msgstr "Décoder et enregistrer ecm" + +msgid "detective/thriller" +msgstr "Policier/thriller" + +msgid "disable" +msgstr "Désactiver" + +msgid "disable move mode" +msgstr "Désactiver le mode déplacement" + +msgid "disabled" +msgstr "Désactivé" + +msgid "disconnected" +msgstr "Déconnecté" + +msgid "discussion/interview/debate" +msgstr "Discussion/interview/débat" + +msgid "do nothing" +msgstr "Ne rien faire" + +msgid "documentary" +msgstr "Documentaire" + +msgid "don't descramble, record ecm" +msgstr "Ne pas décoder et enregistrer ecm" + +msgid "done!" +msgstr "Terminé !" + +msgid "east" +msgstr "Est" + +msgid "economics/social advisory" +msgstr "Économie/Social" + +msgid "edit alternatives" +msgstr "Éditer les alternatifs" + +msgid "education/science/factual topics (general)" +msgstr "Éducation/Science/Sujets factuels (général)" + +msgid "empty" +msgstr "Vide" + +msgid "enable" +msgstr "Activer" + +msgid "enable bouquet edit" +msgstr "Activer l'édition des bouquets" + +msgid "enable favourite edit" +msgstr "Activer l'édition des favoris" + +msgid "enable move mode" +msgstr "Activer le mode déplacement" + +msgid "enabled" +msgstr "Activé" + +msgid "end alternatives edit" +msgstr "Fin d'édition alternatifs" + +msgid "end bouquet edit" +msgstr "Terminer l'édition des bouquets" + +msgid "end cut here" +msgstr "Fin de coupe ici" + +msgid "end favourites edit" +msgstr "Terminer l'édition des favoris" + +msgid "entertainment (10-16 year old)" +msgstr "Divertissement (10-16 ans)" + +msgid "entertainment (6-14 year old)" +msgstr "Divertissement (6-14 ans)" + +msgid "equal to" +msgstr "Égale au" + +msgid "equestrian" +msgstr "Équestre" + +msgid "exit DVD player or return to file browser" +msgstr "Quitter le lecteur DVD ou retourner au sélecteur de fichiers" + +msgid "exit movielist" +msgstr "Quitter liste des films" + +msgid "exit network adapter configuration" +msgstr "Quitter configuration adaptateur réseau" + +msgid "exit networkadapter setup menu" +msgstr "Quitter menu réglages adaptateur réseau" + +msgid "experimental film/video" +msgstr "Film expérimental/Vidéo" + +msgid "false" +msgstr "Faux" + +msgid "fashion" +msgstr "Mode" + +msgid "fileformats (BMP, PNG, JPG, GIF)" +msgstr "Formats de fichiers (BMP, PNG, JPG, GIF)" + +msgid "filename" +msgstr "Nom de fichier" + +msgid "film/cinema" +msgstr "Film/Cinéma" + +msgid "fine arts" +msgstr "Beaux arts" + +msgid "fine-tune your display" +msgstr "Réglage avancé de votre affichage" + +msgid "fitness & health" +msgstr "Culture physique et santé" + +msgid "flat alphabetic" +msgstr "Tri alphabetique" + +msgid "flat alphabetic reverse" +msgstr "Tri alphabetique inversé" + +msgid "folk/traditional music" +msgstr "Folk/Musique traditionnelle" + +msgid "football/soccer" +msgstr "Football/Foot" + +msgid "foreign countries/expeditions" +msgstr "Pays étrangers/Expéditions" + +msgid "forward to the next chapter" +msgstr "Avancer au chapitre suivant" + +msgid "free" +msgstr "Libre" + +msgid "from" +msgstr "de" + +msgid "further education" +msgstr "Formation continue" + +msgid "game show/quiz/contest" +msgstr "Émission de jeu/Quiz/Concours" + +msgid "gardening" +msgstr "Jardinage" + +msgid "go to deep standby" +msgstr "Mettre en veille profonde" + +msgid "go to standby" +msgstr "Mettre en veille" + +msgid "grab this frame as bitmap" +msgstr "Saisir cette frame commme bitmap" + +msgid "green" +msgstr "Vert" + +msgid "handicraft" +msgstr "Artisanat" + +msgid "height" +msgstr "Hauteur" + +msgid "help..." +msgstr "Aide..." + +msgid "horizontal" +msgstr "Horizontale" + +msgid "information/education/school program" +msgstr "Information/Education/Programme scolaire" + +msgid "init module" +msgstr "Initialiser le module" + +msgid "init modules" +msgstr "Initialiser modules" + +msgid "insert mark here" +msgstr "Insérer un marqueur ici" + +msgid "invalid type" +msgstr "Type non valide" + +msgid "jazz" +msgstr "Jazz" + +msgid "jump back to the previous title" +msgstr "Se rendre vers le titre précédent" + +msgid "jump forward to the next title" +msgstr "Se rendre vers le titre suivant" + +msgid "languages" +msgstr "Langues" + +msgid "leave movie player..." +msgstr "Quitter le lecteur..." + +msgid "left" +msgstr "Gauche" + +msgid "left, wrapped" +msgstr "Gauche, enveloppé" + +msgid "leisure hobbies (general)" +msgstr "Passe-temps, loisirs (général)" + +msgid "length" +msgstr "Longueur" + +msgid "limit ..., aborting !" +msgstr "Limite ..., abandon !" + +msgid "list style compact" +msgstr "Style liste compacte" + +msgid "list style compact with description" +msgstr "Style liste compacte avec description" + +msgid "list style default" +msgstr "Style liste standard" + +msgid "list style single line" +msgstr "Style liste ligne unique" + +msgid "literature" +msgstr "Littérature" + +msgid "live broadcast" +msgstr "Diffusion en direct" + +msgid "locked" +msgstr "Verrouillé" + +msgid "loopthrough to" +msgstr "Rebouclé par" + +msgid "magazines/reports/documentary" +msgstr "Magazines/Rapports/Documentaires" + +msgid "manual" +msgstr "Manuel" + +msgid "martial sports" +msgstr "Sports martiaux" + +msgid "medicine/physiology/psychology" +msgstr "Médecine/Physiologie/Psychologie" + +msgid "menu" +msgstr "Menu" + +msgid "mins" +msgstr "Mins" + +msgid "minutes" +msgstr "Minutes" + +msgid "month" +msgstr "Mois" + +msgid "motor sport" +msgstr "Sport automobile" + +msgid "motoring" +msgstr "Automobile" + +msgid "move down to last entry" +msgstr "Déplacer en bas dernière entrée" + +msgid "move down to next entry" +msgstr "Déplacer en bas entrée suivante" + +msgid "move up to first entry" +msgstr "Déplacer en haut première entrée" + +msgid "move up to previous entry" +msgstr "Déplacer en haut entrée précédente" + +msgid "movie/drama (general)" +msgstr "Film/Théâtre (général)" + +msgid "multinorm" +msgstr "Multinorme" + +msgid "music/ballet/dance (general)" +msgstr "Musique/Ballet/Danse (général)" + +msgid "musical/opera" +msgstr "Musical/Opéra" + +msgid "nature/animals/environment" +msgstr "Nature/Animaux/Environnement" + +msgid "never" +msgstr "Jamais" + +msgid "new media" +msgstr "Nouveaux médias" + +msgid "news magazine" +msgstr "Magazine de nouvelles" + +msgid "news/current affairs (general)" +msgstr "Nouvelles/Actualités (général)" + +msgid "news/weather report" +msgstr "Nouvelles/Bulletin météorologique" + +msgid "no" +msgstr "Non" + +msgid "no CAId selected" +msgstr "Aucun CAId sélectionné !" + +msgid "no CI slots found" +msgstr "Aucun slots CI trouvés" + +msgid "no module found" +msgstr "Aucun module trouvé" + +msgid "no storage devices found" +msgstr "Aucun périphérique de stockage trouvé" + +msgid "none" +msgstr "Aucun" + +msgid "normal" +msgstr "Normal" + +msgid "not configured" +msgstr "Pas configuré" + +msgid "not locked" +msgstr "Pas verrouillé" + +msgid "not supported" +msgstr "Pas supporté" + +msgid "not used" +msgstr "Pas utilisé" + +msgid "nothing connected" +msgstr "Rien n'est connecté" + +msgid "of a DUAL layer medium used." +msgstr "Pour un double couche utilisé." + +msgid "of a SINGLE layer medium used." +msgstr "Pour un simple couche utilisé." + +msgid "off" +msgstr "Arrêt" + +msgid "offset is" +msgstr "Position finale sur" + +msgid "on" +msgstr "Marche" + +msgid "on READ ONLY medium." +msgstr "Sur support en LECTURE SEULE" + +msgid "on end of movie" +msgstr "À la fin du film" + +msgid "once" +msgstr "Une fois" + +msgid "only from deep standby" +msgstr "Seulement depuis la veille profonde" + +msgid "only from standby" +msgstr "seulement depuis la veille" + +msgid "open EPG..." +msgstr "Afficher EPG..." + +msgid "open Info..." +msgstr "Ouvrir Info..." + +msgid "open nameserver configuration" +msgstr "Ouvrir configuration serveur de nom" + +msgid "original" +msgstr "Original" + +msgid "original language" +msgstr "Langue Originale" + +msgid "pass" +msgstr "Passe" + +msgid "performing arts" +msgstr "Arts de la scène" + +msgid "play as picture in picture" +msgstr "Lire en incrustation d'image" + +msgid "play in mainwindow" +msgstr "Lire dans la fenêtre principale" + +msgid "please press OK when ready" +msgstr "Veuillez appuyer sur OK quand vous êtes prêt(e)" + +msgid "please wait, loading picture..." +msgstr "Veuillez patienter, chargement de l'image..." + +msgid "popular culture/traditional arts" +msgstr "Culture populaire/Arts traditionnels" + +msgid "pre-school children's program" +msgstr "Programme enfants d'âge préscolaire" + +msgid "receiver software because updates are available." +msgstr "Logiciel du récepteur, les mises à jour sont disponibles." + +msgid "record" +msgstr "Enregistrer" + +msgid "recording..." +msgstr "Enregistrement..." + +msgid "red" +msgstr "Rouge" + +msgid "religion" +msgstr "Religion" + +msgid "remarkable people" +msgstr "Des gens remarquables" + +msgid "remove after this position" +msgstr "Retirer après cette position" + +msgid "remove all alternatives" +msgstr "Retirer tous les alternatifs" + +msgid "remove all new found flags" +msgstr "Enlever tous les nouveaux indicateurs" + +msgid "remove before this position" +msgstr "Retirer avant cette position" + +msgid "remove bookmark" +msgstr "Retirer marque page" + +msgid "remove directory" +msgstr "Retirer répertoire" + +msgid "remove entry" +msgstr "Retirer l'entrée" + +msgid "remove from parental protection" +msgstr "Retirer de la protection parentale" + +msgid "remove new found flag" +msgstr "Enlever le nouvel indicateur trouvé" + +msgid "remove selected satellite" +msgstr "Enlever le satellite sélectionné" + +msgid "remove this mark" +msgstr "Retirer ce marqueur" + +msgid "rename entry" +msgstr "Renommer entrée" + +msgid "repeat playlist" +msgstr "Répéter liste lecture" + +msgid "repeated" +msgstr "Répété" + +msgid "reverse by date" +msgstr "Inverser par date" + +msgid "rewind to the previous chapter" +msgstr "Retour au chapitre précédant" + +msgid "right" +msgstr "Droite" + +msgid "right, wrapped" +msgstr "Droite, enveloppé" + +msgid "rock/pop" +msgstr "Rock/Pop" + +msgid "romance" +msgstr "Romance" + +msgid "save last directory on exit" +msgstr "Sauver dernier répertoire en sortant" + +msgid "save playlist on exit" +msgstr "Sauver liste lecture en sortant" + +msgid "scan state" +msgstr "Etat de l'analyse" + +msgid "science fiction/fantasy/horror" +msgstr "Science-fiction/Fantastique/Horreur" + +msgid "second cable of motorized LNB" +msgstr "Deuxième câble du LNB motorisé" + +msgid "seconds" +msgstr "Secondes" + +msgid "select" +msgstr "Sélectionner" + +msgid "select CAId's" +msgstr "Sélectionner CAId's" + +msgid "select EPG..." +msgstr "Sélectionner EPG..." + +msgid "select Info..." +msgstr "Sélection Info..." + +msgid "select menu entry" +msgstr "Sélectionner entrée menu" + +msgid "select movie" +msgstr "Choisir un film" + +msgid "select the movie path" +msgstr "Sélectionner le chemin des films" + +msgid "serious music/classic music" +msgstr "Musique classique" + +msgid "serious/classical/religious/historical movie/drama" +msgstr "Classique/Religieux/Film historiques/Théâtre" + +msgid "service PIN" +msgstr "Pin service" + +msgid "set as startup service" +msgstr "Choisir comme service de démarrage" + +msgid "setup PIN" +msgstr "PIN paramètres" + +msgid "show DVD main menu" +msgstr "Afficher menu DVD principal" + +msgid "show all tags" +msgstr "Voir toutes les étiquettes" + +msgid "show alternatives" +msgstr "Afficher alternatifs" + +msgid "show event details" +msgstr "Afficher détails événement" + +msgid "show extended description" +msgstr "Afficher la description étendue" + +msgid "show mediaplayer on mainmenu" +msgstr "Afficher le lecteur multimédia dans le menu principal" + +msgid "show softwaremanager in setup menu" +msgstr "Montrer le gestionnaire de logiciels dans le menu configuration" + +msgid "show softwaremanager on blue button" +msgstr "Montrer le gestionnaire de logiciels sur le bouton bleu" + +msgid "show tag menu" +msgstr "Afficher le menu des marqueurs" + +msgid "show transponder info" +msgstr "Afficher info transpondeur" + +msgid "show/game show (general)" +msgstr "Variétés/Jeux (général)" + +msgid "shuffle" +msgstr "Aléatoire" + +msgid "shut down" +msgstr "Éteindre" + +msgid "simple" +msgstr "Simple" + +msgid "skip backward" +msgstr "Retour rapide" + +msgid "skip forward" +msgstr "Avance rapide" + +msgid "soap/melodram/folkloric" +msgstr "Soap/Melodrame/Folklorique" + +msgid "social/political issues/economics (general)" +msgstr "Questions sociales/Politiques/Economie (général)" + +msgid "social/spiritual science" +msgstr "Science sociale/Spirituelle" + +msgid "sorting of playlists" +msgstr "Tri des listes de lecture" + +msgid "special characters" +msgstr "Caractères spéciaux" + +msgid "special events" +msgstr "Évènements spéciaux" + +msgid "special format data DVD (HDTV compatible)" +msgstr "Format spécial données DVD (compatible HDTV)" + +msgid "sports (general)" +msgstr "Sport (général)" + +msgid "sports magazine" +msgstr "Sports magazine" + +msgid "standard" +msgstr "Standard" + +msgid "start cut here" +msgstr "Départ de coupe ici" + +msgid "start directory" +msgstr "Répertoire départ" + +msgid "stepsize" +msgstr "Taille du pas" + +msgid "stereo" +msgstr "Stéréo" + +msgid "stop using as startup service" +msgstr "Arrêter d'utiliser comme service de démarrage" + +msgid "switch to bookmarks" +msgstr "Basculer vers marque page" + +msgid "switch to filelist" +msgstr "Basculer vers la liste des fichiers" + +msgid "switch to the next angle" +msgstr "Basculer vers l'angle suivant" + +msgid "switch to the next audio track" +msgstr "Basculer vers piste audio suivante" + +msgid "switch to the next subtitle language" +msgstr "Basculer vers le langage sous-titre suivant" + +msgid "talk show" +msgstr "Talk show" + +msgid "team sports" +msgstr "Sports d'équipe" + +msgid "technology/natural science" +msgstr "Technologie/Sciences de la nature" + +msgid "template file" +msgstr "Fichier modèle" + +msgid "tennis/squash" +msgstr "Tennis/Squash" + +msgid "this recording" +msgstr "Cet enregistrement" + +msgid "this service is protected by a parental control pin" +msgstr "Ce service est protégé par un pin contrôle parental" + +msgid "toggle time, chapter, audio, subtitle info" +msgstr "Commuter temps, chapitre, audio, info sous-titres" + +msgid "top" +msgstr "Haut" + +msgid "tourism/travel" +msgstr "Tourisme/Voyages" + +msgid "true" +msgstr "Vrai" + +msgid "unavailable" +msgstr "Indisponible" + +msgid "unconfirmed" +msgstr "Non confirmé" + +msgid "undefined" +msgstr "Indéfini" + +msgid "unknown" +msgstr "Inconnu" + +msgid "unknown service" +msgstr "Service inconnu" + +msgid "unpublished" +msgstr "Non publié" + +msgid "until standby/restart" +msgstr "Jusqu'à veille/redémarrage" + +msgid "user defined" +msgstr "Défini par l'utilisateur" + +msgid "variety show" +msgstr "Spectacle de variété" + +msgid "vertical" +msgstr "Verticale" + +msgid "wait for ci..." +msgstr "Attente pour ci..." + +msgid "wait for mmi..." +msgstr "Attente pour mmi..." + +msgid "waiting" +msgstr "En attente" + +msgid "water sport" +msgstr "Sport nautique" + +msgid "weekly" +msgstr "Hebdomadaire" + +msgid "west" +msgstr "Ouest" + +msgid "when PiPzap enabled zap channel down..." +msgstr "" + +msgid "when PiPzap enabled zap channel up..." +msgstr "" + +msgid "white" +msgstr "Blanc" + +msgid "whitelist" +msgstr "Liste autorisée (whitelist)" + +msgid "width" +msgstr "Largeur" + +msgid "winter sport" +msgstr "Sports d'hiver" + +msgid "wireless network interface" +msgstr "Interface réseau sans fil" + +#, python-format +msgid "with %d error" +msgid_plural "with %d errors" +msgstr[0] "Avec %d erreur" +msgstr[1] "Avec %d erreurs" + +msgid "working" +msgstr "Travail en cours..." + +msgid "yellow" +msgstr "Jaune" + +msgid "yes" +msgstr "Oui" + +msgid "yes (keep feeds)" +msgstr "Oui (garder feeds)" + +msgid "zap" +msgstr "Zapper" + +msgid "zap and record" +msgstr "Zapper et enregistrer" + +msgid "zapped" +msgstr "Zappé" + +#~ msgid "AA" +#~ msgstr "AA" + +#~ msgid "AB" +#~ msgstr "AB" + +#~ msgid "Activate PiP" +#~ msgstr "Activer l'incrustation d'image" + +#~ msgid "Adjust HDMI CEC settings" +#~ msgstr "Ajuster les paramètres HDMI CEC" + +#~ msgid "And will shutdown your receiver over " +#~ msgstr "Et va éteindre votre récepteur après" + +#~ msgid "BA" +#~ msgstr "BA" + +#~ msgid "BB" +#~ msgstr "BB" + +#~ msgid "Behavior of 'pause' when paused" +#~ msgstr "Comportement de 'pause' si déjà en pause" + +#~ msgid "Configure if and how service type icons will be shown." +#~ msgstr "Configurez si et comment les icônes de type de service seront affichés." + +#~ msgid "Configure the behavior of the 'pause' key when movie playback is already paused." +#~ msgstr "Configurez le comportement de la touche «pause» quand la lecture du film est déjà en pause." + +#~ msgid "Configure the duration in hours and action, which could be shut down or standby, when the receiver is not controlled." +#~ msgstr "Configure la durée en heures et l'action, qui peut être éteindre ou mettre en veille, lorsque le récepteur n'est pas utilisé." + +#~ msgid "Configure the duration in minutes and action, which could be shut down or standby, for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +#~ msgstr "Configure la durée en minutes et l'action, qui peut être éteindre ou mettre en veille, pour l'arrêt automatique. Sélectionnez cette entrée et cliquez sur OK ou VERT pour démarrer/arrêter l'arrêt automatique." + +#~ msgid "Currently the commit log cannot be retreived - please try later again" +#~ msgstr "Actuellement le log des commits ne peut pas être récupéré - merci de réessayer plus tard " + +#~ msgid "DVB_C" +#~ msgstr "DVB_C" + +#~ msgid "No satellite frontend found!!" +#~ msgstr "Aucun tuner satellite trouvé !!" + +#~ msgid "Open service list and select next channel" +#~ msgstr "Ouvrir la liste des services et sélectionner la chaine suivante" + +#~ msgid "Open service list and select previous channel" +#~ msgstr "Ouvrir la liste des services et sélectionner la chaine précédente" + +#~ msgid "Press '0' to toggle internal/external PiP." +#~ msgstr "Appuyez sur '0' pour basculer PiP (interne/externe)." + +#~ msgid "Remove timer" +#~ msgstr "Retirer programmation" + +#~ msgid "Send DiSEqC" +#~ msgstr "Envoyer DiSEqC" + +#~ msgid "Shutdown after current event" +#~ msgstr "Arrêter après l'évènement actuel" + +#~ msgid "Shutdown in " +#~ msgstr "Éteindre dans " + +#~ msgid "Switch next channel" +#~ msgstr "Basculer vers la chaîne suivante" + +#~ msgid "Uncommitted DiSEqC command" +#~ msgstr "Commande DiSEqC non validée" + +#~ msgid "Your receiver will shutdown due to inactivity." +#~ msgstr "Votre récepteur va s'éteindre faute d'activité." + +#~ msgid "Your receiver will shutdown due to the sleeptimer." +#~ msgstr "Votre récepteur va s'éteindre à cause du timer d'inactivité (sleeptimer)." + +#~ msgid "Zap back to service before satfinder?" +#~ msgstr "Revenir sur le service avant le pointage?" diff --git a/po/fy.po b/po/fy.po new file mode 100644 index 0000000..4154a15 --- /dev/null +++ b/po/fy.po @@ -0,0 +1,9648 @@ +# Frisian translations for Enigma2. +# +# Gerrit <gerrit@nedlinux.nl>, 2007, 2008. +# gerrit <gerrit@nedlinux.nl>, 2008. +msgid "" +msgstr "" +"Project-Id-Version: enigma2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-07-21 19:08+0200\n" +"PO-Revision-Date: 2008-12-29 16:22+0100\n" +"Last-Translator: gerrit <gerrit@nedlinux.nl>\n" +"Language-Team: gerrit <fy@li.org>\n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Poedit-Language: Nederlands\n" +"X-Poedit-Country: NEDERLAND\n" +"X-Poedit-SourceCharset: iso-8859-15\n" +"X-Generator: KBabel 1.11.4\n" + +# +msgid "" +"\n" +"Advanced options and settings." +msgstr "" + +# +msgid "" +"\n" +"After pressing OK, please wait!" +msgstr "" + +msgid "" +"\n" +"Backup your receiver settings." +msgstr "" + +# +msgid "" +"\n" +"Edit the upgrade source address." +msgstr "" + +msgid "" +"\n" +"Manage extensions or plugins for your receiver" +msgstr "" + +msgid "" +"\n" +"Online update of your receiver software." +msgstr "" + +# +msgid "" +"\n" +"Press OK on your remote control to continue." +msgstr "" + +# +msgid "" +"\n" +"Restore your backups by date." +msgstr "" + +msgid "" +"\n" +"Restore your receiver settings." +msgstr "" + +msgid "" +"\n" +"Restore your receiver with a new firmware." +msgstr "" + +# +msgid "" +"\n" +"Scan for local extensions and install them." +msgstr "" + +# +msgid "" +"\n" +"Select your backup device.\n" +"Current device: " +msgstr "" + +# +msgid "" +"\n" +"View, install and remove available or installed packages." +msgstr "" + +msgid " (PiP)" +msgstr "" + +msgid " (Radio)" +msgstr "" + +msgid " (TV)" +msgstr "" + +msgid " (disabled)" +msgstr "" + +msgid " (higher than any auto)" +msgstr "" + +msgid " (higher than rotor any auto)" +msgstr "" + +msgid " (lower than any auto)" +msgstr "" + +# +msgid " extensions." +msgstr "" + +msgid " ms" +msgstr "" + +# +msgid " packages selected." +msgstr "" + +# +msgid " updates available." +msgstr "" + +#. TRANSLATORS: short time representation hour:minute +#, python-format +msgid "%2d:%02d" +msgstr "" + +#. TRANSLATORS: full time representation hour:minute:seconds +#, python-format +msgid "%2d:%02d:%02d" +msgstr "" + +msgid "%A %d %B" +msgstr "" + +#. TRANSLATORS: long date representations dayname daynum monthname in strftime() format! See 'man strftime' +msgid "%A %e %B" +msgstr "" + +#. TRANSLATORS: full date representation dayname daynum monthname year in strftime() format! See 'man strftime' +msgid "%A %e %B %Y" +msgstr "" + +# +msgid "%H:%M" +msgstr "%H:%M" + +#. TRANSLATORS: short date representation short dayname daynum short monthname in strftime() format! See 'man strftime' +msgid "%a %e/%m" +msgstr "" + +#. TRANSLATORS: long date representation short dayname daynum short monthname hour:minute in strftime() format! See 'man strftime' +msgid "%a %e/%m %-H:%M" +msgstr "" + +# +#. TRANSLATORS: Intermediate scanning result, '%d' channel(s) have been found so far +#, fuzzy, python-format +msgid "%d channel found" +msgid_plural "%d channels found" +msgstr[0] "%d services fûn" +msgstr[1] "%d services fûn" + +#, python-format +msgid "%d file" +msgid_plural "%d files" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "" +msgstr[1] "" + +# +#, fuzzy, python-format +msgid "%d job is running in the background!" +msgid_plural "%d jobs are running in the background!" +msgstr[0] "%d processen rinne op 'e eftergrûn" +msgstr[1] "%d processen rinne op 'e eftergrûn" + +# +#, python-format +msgid "%d min" +msgstr "%d min" + +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d minutes" +msgstr "" + +#, python-format +msgid "%d pixel wide" +msgid_plural "%d pixels wide" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "" +msgstr[1] "" + +# +#, fuzzy, python-format +msgid "%d subdirectory" +msgid_plural "%d subdirectories" +msgstr[0] "/var map" +msgstr[1] "/var map" + +# +#, fuzzy, python-format +msgid "%d wireless network found!" +msgid_plural "%d wireless networks found!" +msgstr[0] "Triidloas netwurk" +msgstr[1] "Triidloas netwurk" + +msgid "%d-%b-%Y %-H:%M" +msgstr "" + +msgid "%d-%m" +msgstr "" + +# +msgid "%d.%B %Y" +msgstr "%d.%B %Y" + +#. TRANSLATORS: VFD hour:minute daynum short monthname in strftime() format! See 'man strftime' +msgid "%k:%M %e/%m" +msgstr "" + +# +#, fuzzy, python-format +msgid "%s %s free disk space" +msgstr "freie skiif rûmte" + +# +#, python-format +msgid "%s (%s)\n" +msgstr "%s (%s)\n" + +#. TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. +#, python-format +msgid "%s is no longer used. Should it be deleted?" +msgstr "" + +#, python-format +msgid "%s updated package available" +msgid_plural "%s updated packages available" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%s%d min" +msgstr "" + +#, python-format +msgid "%s/%s: %s" +msgstr "" + +# +msgid "(ZAP)" +msgstr "(ZAP)" + +# +msgid "(empty)" +msgstr "(leech)" + +# +msgid "(show optional DVD audio menu)" +msgstr "(opsje DVD lûd menu sjen litte)" + +# +msgid "* Only available if more than one interface is active." +msgstr "* Allinne beskikber by meer dan ien aktieve ynterfaces" + +msgid "/s" +msgstr "" + +# +msgid "0" +msgstr "0" + +# +msgid "1" +msgstr "1" + +# +msgid "1.0" +msgstr "1.0" + +# +msgid "1.1" +msgstr "1.1" + +# +msgid "1.2" +msgstr "1.2" + +# +msgid "12V output" +msgstr "12V útgong" + +# +msgid "13 V" +msgstr "13 V" + +# +msgid "16:10" +msgstr "16:10" + +# +msgid "16:10 Letterbox" +msgstr "16:10 Letterbox" + +# +msgid "16:10 PanScan" +msgstr "16:10 PanScan" + +# +msgid "16:9" +msgstr "16:9" + +# +msgid "16:9 Letterbox" +msgstr "16:9 Letterbox" + +# +msgid "16:9 always" +msgstr "altiid 16:9" + +# +msgid "18 V" +msgstr "18 V" + +# +msgid "2" +msgstr "2" + +msgid "23.976" +msgstr "" + +msgid "24" +msgstr "" + +msgid "25" +msgstr "" + +msgid "29.97" +msgstr "" + +# +msgid "3" +msgstr "3" + +msgid "30" +msgstr "" + +msgid "3d mode" +msgstr "" + +# +msgid "4" +msgstr "4" + +# +msgid "4:3" +msgstr "4:3" + +# +msgid "4:3 Letterbox" +msgstr "4:3 Letterbox" + +# +msgid "4:3 PanScan" +msgstr "4:3 PanScan" + +# +msgid "5" +msgstr "5" + +# +msgid "6" +msgstr "6" + +# +msgid "7" +msgstr "7" + +# +msgid "8" +msgstr "8" + +# +msgid "9" +msgstr "9" + +#, python-format +msgid ": %s" +msgstr "" + +# +msgid "<Current movielist location>" +msgstr "" + +# +msgid "<Default movie location>" +msgstr "" + +# +msgid "<Last timer location>" +msgstr "" + +# +msgid "<unknown>" +msgstr "<net bekend>" + +# +msgid "??" +msgstr "??" + +# +msgid "A" +msgstr "A" + +# +#, fuzzy, python-format +msgid "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" +msgstr "" +"In konfiguraasje triem (%s) wie feroare nei ynstalaasje.\n" +"Wolle jo jo ferzje hâlde ?" + +# +#, python-format +msgid "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" +msgstr "" +"In konfiguraasje triem (%s) wie feroare nei ynstalaasje.\n" +"Wolle jo jo ferzje hâlde ?" + +msgid "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" + +msgid "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" + +# +msgid "A graphical EPG for all services of an specific bouquet" +msgstr "In grafyske EPG foar alle kanalen fan in spesifyk bouquet" + +# +#, python-format +msgid "" +"A record has been started:\n" +"%s" +msgstr "" +"In opnimmen is start:\n" +"%s" + +# +msgid "" +"A recording is currently running.\n" +"What do you want to do?" +msgstr "" +"In opnimmen is dwaande.\n" +"Wat wolle jo dwaan ?" + +# +msgid "A recording is currently running. Please stop the recording before trying to configure the positioner." +msgstr "Opnimmen is dwaande. Stopje it opnimmen earst foar jo de rotor-ynstellingen wizigje." + +msgid "A recording is currently running. Please stop the recording before trying to scan." +msgstr "" + +# +msgid "A recording is currently running. Please stop the recording before trying to start the satfinder." +msgstr "Opnimmen is dwaande. Stopje it opnimmen earst, foar jo de satfyner brûke." + +# +#, python-format +msgid "A required tool (%s) was not found." +msgstr "In benedicht programma (%s) wie net fûn" + +# +msgid "A search for available updates is currently in progress." +msgstr "" + +# +msgid "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" +msgstr "" + +msgid "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" + +msgid "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" + +# +msgid "A small overview of the available icon states and actions." +msgstr "" + +# +msgid "" +"A timer failed to record!\n" +"Disable TV and try again?\n" +msgstr "" +"In tiidsbarren koe net opnimme!\n" +"TV utskeakelje en opnei besykje ?\n" + +# +#, fuzzy +msgid "A/V settings" +msgstr "A/F ynstellingen" + +msgid "AC3/DTS downmix" +msgstr "" + +# +msgid "Abort" +msgstr "" + +# +msgid "About" +msgstr "Oer" + +# +msgid "About..." +msgstr "Oer...." + +# +msgid "Accesspoint:" +msgstr "" + +# +msgid "Action on long powerbutton press" +msgstr "Aksje by lang yndrukken oanknop" + +# +msgid "Action on short powerbutton press" +msgstr "" + +# +msgid "Activate Picture in Picture" +msgstr "PIP ynskeakelje" + +# +#, fuzzy +msgid "Activate current configuration" +msgstr "Dizze ynstellingen aktief meitsje" + +# +msgid "Activate network settings" +msgstr "Netwurk ynstellingen aktief meitsje" + +# +#, fuzzy +msgid "Activate the configured network settings." +msgstr "Netwurk ynstellingen aktief meitsje" + +# +msgid "Adapter settings" +msgstr "Adapter ynstellingen" + +# +msgid "Add" +msgstr "Tafoegje" + +# +msgid "Add Bookmark" +msgstr "In blêdwizer tafoegje" + +# +msgid "Add a mark" +msgstr "In merker tafoegje" + +# +#, fuzzy +msgid "Add a nameserver entry" +msgstr "In nammeserver tafoegje" + +# +msgid "Add a new title" +msgstr "In nije titel tafoegje" + +# +#, fuzzy +msgid "Add bookmark" +msgstr "boekmerk tafoegje" + +# +#, fuzzy +msgid "Add directory to playlist" +msgstr "map oan ofspiellyst tafoegje" + +# +#, fuzzy +msgid "Add file to playlist" +msgstr "triem oan ofspiellyst tafoegje" + +# +#, fuzzy +msgid "Add files to playlist" +msgstr "triemen tafoegje an ôfspiellyst" + +msgid "Add more details to the crash log" +msgstr "" + +# +#, fuzzy +msgid "Add provider" +msgstr "Leveransier" + +# +#, fuzzy +msgid "Add recording (enter recording duration)" +msgstr "opnimmen tafoegje (opnimtiid)" + +# +#, fuzzy +msgid "Add recording (enter recording endtime)" +msgstr "opnimmen tafoegje (eintiid opnimmen ynjaan)" + +# +#, fuzzy +msgid "Add recording (indefinitely)" +msgstr "opnimmen tafoegje (foar altiid trochgean)" + +# +#, fuzzy +msgid "Add recording (stop after current event)" +msgstr "opnimmen tafoegje (stopje nei dit barren)" + +# +#, fuzzy +msgid "Add service" +msgstr "Kanaal ynfo" + +# +msgid "Add timer" +msgstr "In tiidsbarren tafoegje" + +# +msgid "Add title" +msgstr "In titel tafoegje" + +# +msgid "Add to bouquet" +msgstr "Oan in boeket tafoegje" + +# +msgid "Add to favourites" +msgstr "Oan favorieten tafoegje" + +msgid "Add/remove change timer for current event" +msgstr "" + +msgid "Adjust 3D settings" +msgstr "" + +# +msgid "Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens." +msgstr "Feroarje de ynstellingen sa, da't alle skaad fan 'e kleur fuort is, mar wol fol fan kleur binne. Ot jo lokkig binne mei it einresultaat, druk OK om fideo ôfstellen ôf te slúten, of brûk de nûmmer toetsen foar in oar test skerm." + +msgid "Advanced" +msgstr "" + +# +#, fuzzy +msgid "Advanced options" +msgstr "Afansjearre Fideo Ynstellingen" + +# +msgid "Advanced restore" +msgstr "" + +msgid "Advanced software" +msgstr "" + +msgid "Advanced software plugin" +msgstr "" + +# +#, fuzzy +msgid "Advanced video enhancement setup" +msgstr "Afansjearre Fideo Ynstellingen" + +# +#, fuzzy +msgid "Advanced video setup" +msgstr "Afansjearre Fideo Ynstellingen" + +# +msgid "After event" +msgstr "Nei it barren" + +# +msgid "Album" +msgstr "Album" + +msgid "Alignment of events" +msgstr "" + +msgid "Alignment of service names" +msgstr "" + +# +msgid "All" +msgstr "Alles" + +msgid "All ages" +msgstr "" + +msgid "All satellites 1 (USALS)" +msgstr "" + +msgid "All satellites 2 (USALS)" +msgstr "" + +msgid "All satellites 3 (USALS)" +msgstr "" + +msgid "All satellites 4 (USALS)" +msgstr "" + +msgid "Allocate" +msgstr "" + +msgid "Allocate unused memory index" +msgstr "" + +msgid "Allow quit movieplayer with exit" +msgstr "" + +msgid "Allow subtitle language to equal audio language" +msgstr "" + +msgid "Allow subtitles for hearing impaired" +msgstr "" + +# +msgid "Alpha" +msgstr "Alpha" + +# +#, fuzzy +msgid "Alternative" +msgstr "alernatief tafoegje" + +# +#, fuzzy +msgid "Alternative numbering mode" +msgstr "Oare Radio mode" + +# +msgid "Alternative services tuner priority" +msgstr "Alternatief kanaal tuner prioriteit" + +msgid "Always ask" +msgstr "" + +msgid "Always hide infobar" +msgstr "" + +# +msgid "An empty filename is illegal." +msgstr "Gjin triemnamme is net tastien" + +msgid "An error occurred while downloading the packetlist. Please try again." +msgstr "" + +# +msgid "An unknown error occurred!" +msgstr "In unbekende flater !" + +msgid "And will put your receiver in standby over " +msgstr "" + +msgid "Any activity" +msgstr "" + +# +msgid "Arabic" +msgstr "Arabysk" + +msgid "Are you sure to remove this entry?" +msgstr "" + +# +msgid "" +"Are you sure you want to activate this network configuration?\n" +"\n" +msgstr "" +"Wolle jo wier dizze netwurk konfiguraasje aktief meitsje ?\n" +"\n" + +# +#, fuzzy +msgid "" +"Are you sure you want to delete\n" +"the following backup:\n" +msgstr "" +"witte jo seker dizze werom te setten\n" +"de extra kopie:\n" + +# +msgid "Are you sure you want to exit this wizard?" +msgstr "" + +# +msgid "" +"Are you sure you want to restart your network interfaces?\n" +"\n" +msgstr "" +"Wolle jo de netwurk interfaces nij starte?\n" +"\n" + +#, python-format +msgid "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" + +msgid "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" + +# +msgid "Artist" +msgstr "Artyst" + +msgid "Arts/Culture" +msgstr "" + +# +msgid "Ask user" +msgstr "freechje gebrûker" + +# +#, fuzzy +msgid "Aspect ratio" +msgstr "Aspect ratio" + +msgid "Assigned CAIds:" +msgstr "" + +msgid "Assigned services/provider:" +msgstr "" + +# +#, fuzzy +msgid "At beginning" +msgstr "Start fanôf it begjin" + +msgid "At end" +msgstr "" + +# +msgid "Audio" +msgstr "Lûd" + +msgid "Audio PID" +msgstr "" + +msgid "Audio language selection 1" +msgstr "" + +msgid "Audio language selection 2" +msgstr "" + +msgid "Audio language selection 3" +msgstr "" + +msgid "Audio language selection 4" +msgstr "" + +# +#, fuzzy +msgid "Audio options..." +msgstr "Lûd opsjes..." + +# +#, fuzzy, python-format +msgid "Audio track (%s) format" +msgstr "Lûd spoor (%s) formaat" + +# +#, fuzzy, python-format +msgid "Audio track (%s) language" +msgstr "Lûd spoor (%s) taal" + +# +msgid "Author: " +msgstr "" + +# +msgid "Authoring mode" +msgstr "Authentikaasje troch" + +# +#. TRANSLATORS: (aspect ratio policy: always try to display as fullscreen, when there is no content (black bars) on left/right, even if this breaks the aspect. +msgid "Auto" +msgstr "Auto" + +# +msgid "Auto chapter split every ? minutes (0=never)" +msgstr "Haadstik automatysk eltse ? minuten splitse (0=nea)" + +# +msgid "Auto flesh" +msgstr "" + +msgid "Auto focus" +msgstr "" + +msgid "Auto focus commencing ..." +msgstr "" + +msgid "Auto language selection" +msgstr "" + +# +msgid "Auto scart switching" +msgstr "Auto scart skeakelje" + +# +msgid "Automatic" +msgstr "Automatysk" + +# +#, fuzzy +msgid "Automatic scan" +msgstr "Automatysk sykjen" + +msgid "Automatically start timeshift after" +msgstr "" + +msgid "Automatically turn on external subtitles" +msgstr "" + +# +msgid "Available format variables" +msgstr "Beskikbere variabele formaten" + +# +msgid "B" +msgstr "B" + +# +msgid "BER" +msgstr "BER" + +# +msgid "BER:" +msgstr "BER:" + +# +msgid "Back" +msgstr "Werom" + +# +msgid "Background" +msgstr "Eftergrûn" + +# +#, fuzzy +msgid "Background color" +msgstr "Eftergrûn kleur" + +msgid "Background delete option" +msgstr "" + +msgid "Background delete speed" +msgstr "" + +# +#, fuzzy +msgid "Backup completed." +msgstr "Backup Mode" + +# +msgid "Backup failed." +msgstr "" + +# +msgid "Backup is running..." +msgstr "" + +# +msgid "Backup system settings" +msgstr "" + +# +msgid "Band" +msgstr "Bân" + +# +msgid "Bandwidth" +msgstr "Bânbridte" + +msgid "Basque" +msgstr "" + +# +msgid "Begin time" +msgstr "Begjin tiid" + +msgid "Behavior of 'pause and ok' when paused" +msgstr "" + +# +msgid "Behavior of 0 key in PiP-mode" +msgstr "Gedrach fan 0 toets yn PiP mode" + +# +msgid "Behavior when a movie is started" +msgstr "Gedrach wannear in film start is" + +# +msgid "Behavior when a movie is stopped" +msgstr "Gedrach wannear in film stoppe is" + +# +msgid "Behavior when a movie reaches the end" +msgstr "Gedrach wannear in film bijna op syn ein is." + +msgid "Big PiP" +msgstr "" + +# +msgid "Bitrate:" +msgstr "" + +msgid "Black screen" +msgstr "" + +msgid "Black screen till locked" +msgstr "" + +# +msgid "Block noise reduction" +msgstr "" + +# +msgid "Blue boost" +msgstr "" + +# +msgid "Bookmarks" +msgstr "Boekmerkers" + +# +msgid "Brightness" +msgstr "Helderens" + +msgid "Bulgarian" +msgstr "" + +# +msgid "Burn DVD" +msgstr "In DVD brâne" + +# +#, fuzzy, python-format +msgid "Burn audio track (%s)" +msgstr "Audio Titel brâne (%s)" + +# +msgid "Burn existing image to DVD" +msgstr "Besteand Image op DVD skiif brâne" + +# +#, fuzzy +msgid "Burn to DVD" +msgstr "Nei DVD brâne" + +# +msgid "Bus: " +msgstr "Bus: " + +msgid "By default, SNR will be shown in dB (when supported by the tuner). This setting forces SNR to be shown as a percentage instead." +msgstr "" + +# +msgid "C" +msgstr "C" + +# +msgid "C-Band" +msgstr "C-Bân" + +msgid "CH" +msgstr "" + +# +msgid "CI assignment" +msgstr "" + +# +msgid "CVBS" +msgstr "CVBS" + +# +msgid "Cable" +msgstr "Kabel" + +msgid "Cable Scan" +msgstr "" + +# +#, fuzzy +msgid "Cache thumbnails" +msgstr "Cache Plaatsjes" + +msgid "Calculate" +msgstr "" + +msgid "Calculate all positions" +msgstr "" + +msgid "Calculation complete" +msgstr "" + +msgid "Calibrate" +msgstr "" + +msgid "Can be used for different fps between external subtitles and video." +msgstr "" + +# +msgid "Cancel" +msgstr "Ôfbrekke" + +msgid "Cannot determine" +msgstr "" + +msgid "Cannot find any signal ..., aborting !" +msgstr "" + +msgid "Cannot move files on a different disk or system to the trash can" +msgstr "" + +msgid "Cannot move to trash can" +msgstr "" + +# +msgid "Capacity: " +msgstr "Skiif-grutte:" + +# +msgid "Card" +msgstr "Kaart" + +msgid "Cascade PiP" +msgstr "" + +msgid "Center DVB subtitles" +msgstr "" + +msgid "Center time-labels and remove date" +msgstr "" + +# +msgid "Change bouquets in quickzap" +msgstr "Feroarje fan boeket yn quickzap" + +# +msgid "Change pin code" +msgstr "Feroarje pinkode" + +# +#, fuzzy +msgid "Change recording (duration)" +msgstr "feroarje opnim tiiden" + +# +#, fuzzy +msgid "Change recording (endtime)" +msgstr "wizigje opnimmen (eintiid)" + +msgid "Change repeat and delay settings?" +msgstr "" + +msgid "Change service PIN" +msgstr "" + +msgid "Change service PINs" +msgstr "" + +msgid "Change setup PIN" +msgstr "" + +# +msgid "Change step size" +msgstr "" + +msgid "Change timer" +msgstr "" + +msgid "Changelog" +msgstr "" + +# +msgid "Channel" +msgstr "Kanaal" + +# +#, fuzzy +msgid "Channel list type" +msgstr "Kanaal-lyst menu" + +# +msgid "Channel not in services list" +msgstr "" + +# +#, fuzzy +msgid "Channel selection" +msgstr "Kanaal seleksje" + +# +msgid "Channel:" +msgstr "Kanaal:" + +# +msgid "Channellist menu" +msgstr "Kanaal-lyst menu" + +# +msgid "Chap." +msgstr "Haads." + +# +msgid "Chapter" +msgstr "Haadstik" + +# +msgid "Chapter:" +msgstr "Haadstik:" + +# +msgid "Check" +msgstr "Neisjen" + +msgid "Check the internet connection" +msgstr "" + +msgid "Check the internet connection again" +msgstr "" + +# +#, fuzzy +msgid "Checking filesystem..." +msgstr "Bestânsysteem neisjen" + +msgid "Checking the internet connection" +msgstr "" + +#, python-format +msgid "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" +msgstr "" + +msgid "Children/Youth" +msgstr "" + +msgid "Choose which tuner to configure." +msgstr "" + +# +msgid "Circular left" +msgstr "" + +# +msgid "Circular right" +msgstr "" + +# +msgid "Cleanup" +msgstr "Opskjinje" + +msgid "Clear" +msgstr "" + +# +msgid "Clear before scan" +msgstr "Wiskje foar sykjen ?" + +msgid "Clear fixed" +msgstr "" + +# +msgid "Clear log" +msgstr "Log wiskje" + +# +#, fuzzy +msgid "Clear playlist" +msgstr "ofspiellyst leeg meitsje" + +# +msgid "Close" +msgstr "Slúte" + +msgid "Close PiP on exit" +msgstr "" + +# +msgid "Close title selection" +msgstr "" + +msgid "Code rate HP" +msgstr "" + +msgid "Code rate LP" +msgstr "" + +# +msgid "Coderate HP" +msgstr "Kode faasje HP" + +# +msgid "Coderate LP" +msgstr "Kode faasje LP" + +# +msgid "Collection name" +msgstr "Kolleksje namme" + +# +msgid "Collection settings" +msgstr "Kolleksje ynstellingen" + +# +#, fuzzy +msgid "Color format" +msgstr "Kleur formaat" + +# +msgid "Command execution..." +msgstr "Kommando útfiere" + +# +msgid "Command order" +msgstr "Kommando folgoarde" + +# +msgid "Common Interface" +msgstr "Common Interface" + +# +#, fuzzy +msgid "Common Interface assignment" +msgstr "Common Interface" + +# +msgid "Communication" +msgstr "" + +# +#, fuzzy +msgid "Compact flash" +msgstr "Compact flash" + +# +msgid "Complete" +msgstr "Kompleet" + +# +msgid "Complex (allows mixing audio tracks and aspects)" +msgstr "Komplex(lud spoor & aspekt mixen tastien)" + +msgid "Composition of the recording filenames" +msgstr "" + +# +#, fuzzy +msgid "Configuration mode" +msgstr "Ynstellingen modus" + +# +#, fuzzy, python-format +msgid "Configuration mode: %s" +msgstr "Ynstellingen modus" + +# +#, fuzzy +msgid "Configuration..." +msgstr "Netwurk configuraasje" + +msgid "Configure an additional delay to improve external subtitle synchronisation." +msgstr "" + +msgid "Configure an additional delay to improve subtitle synchronisation." +msgstr "" + +msgid "Configure for how long the infobar will remain visible after activation." +msgstr "" + +msgid "Configure for how many minutes finished events should remain visible in the EPG. Useful when you need information about an event which has just finished, or has been delayed." +msgstr "" + +msgid "Configure how recording filenames are constructed." +msgstr "" + +msgid "Configure how the fan should operate" +msgstr "" + +msgid "Configure if and how crypto icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how long the latest service in the PiP will be remembered." +msgstr "" + +msgid "Configure if and how service type icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how wide columns will be shown in the channel selection list." +msgstr "" + +msgid "Configure if service picons will be shown in the channel selection list." +msgstr "" + +# +msgid "Configure interface" +msgstr "" + +# +msgid "Configure nameservers" +msgstr "" + +msgid "Configure on which devices the background delete option should be used." +msgstr "" + +# +#, fuzzy +msgid "Configure remote control type" +msgstr "Alderlik tasjoch type" + +msgid "Configure the DiSEqC mode for this LNB." +msgstr "" + +msgid "Configure the IP address." +msgstr "" + +msgid "Configure the aspect ratio of the screen." +msgstr "" + +msgid "Configure the behavior of the 'pause and ok' key when movie playback is already paused." +msgstr "" + +# +#, fuzzy +msgid "Configure the behavior when movie playback is manually stopped." +msgstr "Gedrach wannear in film stoppe is" + +# +#, fuzzy +msgid "Configure the behavior when movie playback is started." +msgstr "Gedrach wannear in film start is" + +msgid "Configure the behavior when reaching the end of a movie, during movie playback." +msgstr "" + +msgid "Configure the border width of the subtitles. The dark border makes the subtitles easier to read on a light background." +msgstr "" + +msgid "Configure the brightness level of the front panel display during standby." +msgstr "" + +msgid "Configure the brightness level of the front panel display." +msgstr "" + +msgid "Configure the color of the external subtitles, alternative (normal in white, italic in yellow, bold in cyan, underscore in green), white or yellow." +msgstr "" + +msgid "Configure the color of the teletext subtitles." +msgstr "" + +msgid "Configure the contrast level of the front panel display." +msgstr "" + +msgid "Configure the cursor behaviour in the channel selection list. When opening the channel selection list you can keep on the current service or already select up/down and you are able to revert the B+/B- buttons." +msgstr "" + +msgid "Configure the duration in hours the receiver should go to standby when the receiver is not controlled." +msgstr "" + +msgid "Configure the duration in minutes for the screensaver." +msgstr "" + +msgid "Configure the duration in minutes for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +msgstr "" + +msgid "Configure the duration when the receiver should go to shut down in case the receiver is in standby mode." +msgstr "" + +msgid "Configure the first audio language (highest priority)." +msgstr "" + +msgid "Configure the first subtitle language (highest priority)." +msgstr "" + +msgid "Configure the font size of the subtitles." +msgstr "" + +msgid "Configure the fourth audio language." +msgstr "" + +# +#, fuzzy +msgid "Configure the fourth subtitle language." +msgstr "skeakelje nei de folgende undertiteling taal" + +msgid "Configure the function of a long press on the power button." +msgstr "" + +msgid "Configure the function of a short press on the power button." +msgstr "" + +msgid "Configure the function of the '0' button do when PIP is active." +msgstr "" + +msgid "Configure the gateway." +msgstr "" + +msgid "Configure the general audio delay of Dolby Digital sound tracks." +msgstr "" + +msgid "Configure the general audio delay of stereo sound tracks." +msgstr "" + +msgid "Configure the hard disk drive to go to standby after the specified idle time." +msgstr "" + +msgid "Configure the horizontal alignment of the subtitles." +msgstr "" + +msgid "Configure the initial fast forward speed. When you press the fast forward button, winding will start at this speed." +msgstr "" + +msgid "Configure the initial rewind speed. When you press the rewind button, winding will start at this speed." +msgstr "" + +msgid "Configure the latitude of your location." +msgstr "" + +msgid "Configure the longitude of your location." +msgstr "" + +msgid "Configure the minimum amount of disk space to be available for recordings. When the amount of space drops below this value, deleted items will be removed from the trash can." +msgstr "" + +msgid "Configure the nameserver (DNS)." +msgstr "" + +msgid "Configure the netmask." +msgstr "" + +msgid "Configure the number of days after which items are automaticaly removed from the trash can." +msgstr "" + +msgid "Configure the number of days old timers are kept before they are automatically removed from the timer list." +msgstr "" + +msgid "Configure the offline decoding delay in milliseconds. The configured delay is observed at each control word parity change." +msgstr "" + +msgid "Configure the possible fast forward speeds." +msgstr "" + +msgid "Configure the possible rewind speeds." +msgstr "" + +msgid "Configure the primary EPG language." +msgstr "" + +msgid "Configure the refresh rate of the screen." +msgstr "" + +msgid "Configure the screen resolution in PC output mode." +msgstr "" + +msgid "Configure the second audio language." +msgstr "" + +# +#, fuzzy +msgid "Configure the second subtitle language." +msgstr "skeakelje nei de folgende undertiteling taal" + +msgid "Configure the secondary EPG language." +msgstr "" + +msgid "Configure the sharpness of the video scaling." +msgstr "" + +msgid "Configure the skip time interval for the '1'/'3' buttons." +msgstr "" + +msgid "Configure the skip time interval for the '4'/'6' buttons." +msgstr "" + +msgid "Configure the skip time interval for the '7'/'9' buttons." +msgstr "" + +# +#, fuzzy +msgid "Configure the slow motion speeds." +msgstr "Langsaam beweechjen faasje" + +msgid "Configure the source of the frontend data as shown on the infobars. 'Settings' is as stored on the settings. 'Tuner' is as reported by the tuner." +msgstr "" + +msgid "Configure the speed of the background deletion process. Lower speed will consume less hard disk drive performance." +msgstr "" + +msgid "Configure the speed of the fan" +msgstr "" + +msgid "Configure the subtitle delay when timing information is not available." +msgstr "" + +msgid "Configure the third audio language." +msgstr "" + +# +#, fuzzy +msgid "Configure the third subtitle language." +msgstr "skeakelje nei de folgende undertiteling taal" + +msgid "Configure the transparency of the OSD." +msgstr "" + +msgid "Configure the transparency of the black background of graphical DVB subtitles." +msgstr "" + +# +#, fuzzy +msgid "Configure the tuner mode." +msgstr "Ynstellingen modus" + +msgid "Configure the type of status indication icons shown in the movielist." +msgstr "" + +msgid "Configure the vertical position of the subtitles, measured from the bottom of the screen." +msgstr "" + +msgid "Configure the video output mode (or resolution)." +msgstr "" + +msgid "Configure the way in which the receiver changes channels." +msgstr "" + +msgid "Configure where completed timers show up in the timer list." +msgstr "" + +msgid "Configure whether (and for how long) a second infobar will be shown when OK is pressed twice. The second infobar contains additional information about the current channel." +msgstr "" + +msgid "Configure whether multi channel sound tracks should be downmixed to stereo." +msgstr "" + +msgid "Configure whether or not an icon should be shown when your motorized dish is moving." +msgstr "" + +msgid "Configure which access level to use for the configuration menu. Expert level gives access to all items." +msgstr "" + +msgid "Configure which color format should be used on the SCART output." +msgstr "" + +msgid "Configure which tuner for recordings will be preferred, when more than one tuner is available." +msgstr "" + +msgid "Configure which tuner type will be preferred, when the same service is available on different types of tuners." +msgstr "" + +msgid "Configure which tuner will be preferred, when more than one tuner is available. If set to 'auto' the system will give priority to the tuner having the lowest number of channels/satellites." +msgstr "" + +# +msgid "Configure your internal LAN" +msgstr "" + +# +msgid "Configure your network again" +msgstr "" + +msgid "Configure your network settings, and press OK to start the scan" +msgstr "" + +# +msgid "Configure your wireless LAN again" +msgstr "" + +msgid "Configures which video output connector will be used." +msgstr "" + +# +msgid "Configuring" +msgstr "Oan it ynstellen" + +# +msgid "Conflicting timer" +msgstr "Tiidsbarren konflikt" + +# +msgid "Connect" +msgstr "" + +# +#, fuzzy +msgid "Connect to a wireless network" +msgstr "Sykje Triitloaze netwerken" + +msgid "Connected satellites" +msgstr "" + +# +msgid "Connected to" +msgstr "Ferbûn mei" + +# +msgid "Connected!" +msgstr "" + +# +msgid "Constellation" +msgstr "Himmel" + +# +msgid "Content does not fit on DVD!" +msgstr "Ynhald past net op in DVD !" + +msgid "Continue" +msgstr "" + +# +msgid "Continue in background" +msgstr "Fjierder gean yn 'e eftergrûn" + +# +#, fuzzy +msgid "Continue playback" +msgstr "Kontinu spielje" + +# +msgid "Continue playing" +msgstr "Kontinu spielje" + +msgid "Continues play (loop)" +msgstr "" + +# +msgid "Contrast" +msgstr "Kontrast" + +msgid "Convert ext3 filesystem to ext4" +msgstr "" + +msgid "Convert ext3 to ext4" +msgstr "" + +msgid "Converting ext3 to ext4..." +msgstr "" + +msgid "Copy" +msgstr "" + +msgid "Could not connect to receiver .NFI image feed server:" +msgstr "" + +msgid "Could not find installed channel list." +msgstr "" + +# +#, fuzzy +msgid "Could not load medium! No disc inserted?" +msgstr "Koe medium net lade ! Is der wol in disc oanwezig ?" + +# +msgid "Could not open Picture in Picture" +msgstr "" + +#, python-format +msgid "Could not record due to conflicting timer %s" +msgstr "" + +#, python-format +msgid "Could not record due to invalid service %s" +msgstr "" + +# +msgid "Create DVD-ISO" +msgstr "Meitsje DVD-ISO" + +msgid "Create more detailed crash log" +msgstr "" + +# +#, python-format +msgid "Creating directory %s failed." +msgstr "Meitjse fan map %s is mislearre" + +# +#, fuzzy +msgid "Creating filesystem" +msgstr "Bestânsysteem neisjen" + +msgid "Creating partition" +msgstr "" + +# +msgid "Croatian" +msgstr "Kroatysk" + +msgid "Current CEC address" +msgstr "" + +msgid "Current device: " +msgstr "" + +msgid "Current event EPG" +msgstr "" + +#, python-format +msgid "Current mode: %s \n" +msgstr "" + +# +msgid "Current settings:" +msgstr "Hjoeddeiske ynstellingen:" + +# +#, fuzzy +msgid "Current transponder" +msgstr "Hjoeddeiske Transponder" + +# +msgid "Current value: " +msgstr "" + +# +msgid "Current version:" +msgstr "Hjoeddeiske ferzje :" + +msgid "Currently installed image" +msgstr "" + +msgid "Currently the commit log cannot be retrieved - please try later again" +msgstr "" + +# +#, fuzzy +msgid "Custom skip time for '1'/'3' buttons" +msgstr "Brûker spring tiid foar knoppen 1-3" + +# +#, fuzzy +msgid "Custom skip time for '4'/'6' buttons" +msgstr "Brûker spring tiid foar knoppen 4-6" + +# +#, fuzzy +msgid "Custom skip time for '7'/'9' buttons" +msgstr "Brûker spring tiid foar knoppen 7-9" + +# +msgid "Customize" +msgstr "Oanpasse" + +msgid "Customize channel list cursor behavior" +msgstr "" + +# +msgid "Cut" +msgstr "Knip" + +# +msgid "Cutlist editor..." +msgstr "Kniplyst bewurker..." + +# +msgid "Czech" +msgstr "Tsjechysk" + +# +msgid "D" +msgstr "D" + +# +msgid "DHCP" +msgstr "DHCP" + +# +#, fuzzy +msgid "DMM advanced" +msgstr "afansjearre" + +msgid "DMM normal" +msgstr "" + +# +msgid "DUAL LAYER DVD" +msgstr "" + +msgid "DVB subtitle black transparency" +msgstr "" + +msgid "DVB-C" +msgstr "" + +msgid "DVB-C ANNEX C" +msgstr "" + +# +msgid "DVB-S" +msgstr "DVB-S" + +# +msgid "DVB-S2" +msgstr "DVB-S2" + +msgid "DVB-T" +msgstr "" + +msgid "DVB-T2" +msgstr "" + +msgid "DVD data format" +msgstr "" + +# +#, fuzzy +msgid "DVD file browser" +msgstr "Ynstekker browser" + +# +msgid "DVD media toolbox" +msgstr "DVD media arkbak" + +# +#, fuzzy +msgid "DVD player" +msgstr "DVD Spieler" + +# +#, fuzzy +msgid "DVD titlelist" +msgstr "wyte lyst" + +# +msgid "Danish" +msgstr "Deensk" + +# +msgid "Date" +msgstr "Datum" + +# +#, fuzzy +msgid "Date/time input" +msgstr "Tiid / Dei ynjefte" + +# +#, fuzzy +msgid "Deep standby" +msgstr "Sliip stand" + +# +msgid "Default" +msgstr "" + +# +msgid "Default movie location" +msgstr "" + +# +#, fuzzy +msgid "Default settings" +msgstr "Wyzigje ynstellingen" + +msgid "Delay before key repeat starts:" +msgstr "" + +msgid "Delay for external subtitles" +msgstr "" + +# +msgid "Delete" +msgstr "Ferwiderje" + +# +msgid "Delete entry" +msgstr "Ferwiderje ynfier" + +# +msgid "Delete failed!" +msgstr "Ferwiderjen mislearre!" + +# +#, fuzzy +msgid "Delete file" +msgstr "triem ferwiderje" + +# +#, fuzzy +msgid "Delete playlist entry" +msgstr "ofspiellyst rigele ferwiderje" + +# +#, fuzzy +msgid "Delete saved playlist" +msgstr "ferwiderje opsleine ofspiellyst" + +msgid "Delete timer" +msgstr "" + +# +#, fuzzy +msgid "Delete..." +msgstr "ferwiderje..." + +msgid "Deleted" +msgstr "" + +msgid "Deleted items" +msgstr "" + +msgid "Depth" +msgstr "" + +msgid "Descramble http streams" +msgstr "" + +# +msgid "Description" +msgstr "Beskriuwing" + +# +msgid "Deselect" +msgstr "" + +msgid "Details for plugin: " +msgstr "" + +# +msgid "Detected HDD:" +msgstr "Fûne hurde skiif:" + +# +msgid "Detected NIMs:" +msgstr "Fûne Tuners:" + +msgid "Devicename:" +msgstr "" + +msgid "Devide" +msgstr "" + +# +msgid "DiSEqC" +msgstr "DiSEqC" + +msgid "DiSEqC 1.0 command" +msgstr "" + +msgid "DiSEqC 1.1 command" +msgstr "" + +msgid "DiSEqC 1.1 repeats" +msgstr "" + +# +msgid "DiSEqC A/B" +msgstr "DiSEqC A/B" + +# +msgid "DiSEqC A/B/C/D" +msgstr "DiSEqC A/B/C/D" + +# +msgid "DiSEqC mode" +msgstr "DiSEqC-Mode" + +# +#, fuzzy, python-format +msgid "DiSEqC port %s: %s" +msgstr "DiSEqC herhellingen" + +# +#, fuzzy +msgid "DiSEqC-tester settings" +msgstr "Nammeserver ynstellingen" + +# +msgid "Dialing:" +msgstr "" + +# +msgid "Digital contour removal" +msgstr "" + +# +msgid "Direct playback of linked titles without menu" +msgstr "Direkt ôfspielje fan keppele titels sûnder menu" + +msgid "Directory" +msgstr "" + +# +#, fuzzy, python-format +msgid "Directory %s does not exist." +msgstr "Map %s bestiit net" + +#, python-format +msgid "Directory %s nonexistent." +msgstr "" + +# +msgid "Directory browser" +msgstr "" + +#, python-format +msgid "Directory contains %d file(s) and %d sub-directories.\n" +msgstr "" + +# +#, fuzzy, python-format +msgid "Directory contains %s and %s." +msgstr "Map %s bestiit net" + +# +msgid "Disable" +msgstr "Utskeakelje" + +# +msgid "Disable Picture in Picture" +msgstr "PIP utskeakelje" + +msgid "Disable background scanning" +msgstr "" + +msgid "Disable timer" +msgstr "" + +# +msgid "Disabled" +msgstr "Utskeakele" + +# +msgid "Disconnect" +msgstr "" + +msgid "Disk space to reserve for recordings (in GB)" +msgstr "" + +# +msgid "Display 16:9 content as" +msgstr "16:9 ynhâld sjen litte as" + +# +msgid "Display 4:3 content as" +msgstr "4:3 ynhâld sjen litte as" + +# +msgid "Display >16:9 content as" +msgstr "" + +msgid "Display and userinterface" +msgstr "" + +msgid "Display message before playing next movie" +msgstr "" + +# +#, fuzzy +msgid "Display setup" +msgstr "Ynstellingen sjen litte" + +# +#, fuzzy +msgid "Do not change" +msgstr "net feroarje" + +# +#, fuzzy +msgid "Do not record" +msgstr "net opnimme" + +# +#, fuzzy +msgid "Do nothing" +msgstr "doch neat" + +# +msgid "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" +msgstr "Wolle jo echt it bestânsysteem neisjen ?<br> Dit kin lang duorje !" + +msgid "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" +msgstr "" + +# +#, python-format +msgid "Do you really want to delete %s?" +msgstr "Wolle jo wier %s ferwiderje?" + +# +#, python-format +msgid "" +"Do you really want to download\n" +"the plugin \"%s\"?" +msgstr "Wolle jo wier de plugin \"%s\" binnenhelje ?" + +# +msgid "Do you really want to exit?" +msgstr "" + +msgid "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" +msgstr "" + +# +#, fuzzy, python-format +msgid "" +"Do you really want to remove\n" +"the plugin \"%s\"?" +msgstr "Wolle jo wier de plugin \"%s\" binnenhelje ?" + +# +#, python-format +msgid "Do you really want to remove directory %s from the disk?" +msgstr "Wolle jo echt map %s ferwiderje van skiif ?" + +# +#, python-format +msgid "Do you really want to remove your bookmark of %s?" +msgstr "Wolle jo echt boekmerk fan %s ferwiderje ?" + +msgid "Do you want this?" +msgstr "" + +# +msgid "Do you want to burn this collection to DVD medium?" +msgstr "Wolle jo dizze kolleksje nei DVD brâne ?" + +# +msgid "Do you want to do a service scan?" +msgstr "Wolle jo no nei kanalen sykje ?" + +# +msgid "Do you want to do another manual service scan?" +msgstr "Wolle jo opnei mei de hân sykje ?" + +#, python-format +msgid "Do you want to download the image to %s ?" +msgstr "" + +# +#, fuzzy +msgid "Do you want to install a channel list?" +msgstr "Wolle jo no nei kanalen sykje ?" + +# +msgid "Do you want to install the package:\n" +msgstr "" + +# +msgid "Do you want to play DVD in drive?" +msgstr "Wolle jo de DVD ôfspielje ?" + +# +msgid "Do you want to preview this DVD before burning?" +msgstr "Wolle jo de DVD besjen foar it brânen ?" + +msgid "Do you want to reboot your receiver?" +msgstr "" + +# +msgid "Do you want to remove the package:\n" +msgstr "" + +# +msgid "Do you want to restore your settings?" +msgstr "Wolle jo jo ynstellingen wêrom sette ?" + +# +msgid "Do you want to resume this playback?" +msgstr "Wolle jo dit opnimmen fjierder ôfspielje ?" + +# +#, fuzzy, python-format +msgid "Do you want to update your receiver to %s?" +msgstr "Wolle jo jo ynstellingen wêrom sette ?" + +msgid "Do you want to update your receiver?" +msgstr "" + +# +msgid "Do you want to upgrade the package:\n" +msgstr "" + +# +msgid "Don't stop current event but disable coming events" +msgstr "Dit barren net stopje, maar oankommende barren útskeakelje" + +# +#, fuzzy, python-format +msgid "Done - Installed, upgraded or removed %d package (%s)" +msgid_plural "Done - Installed, upgraded or removed %d packages (%s)" +msgstr[0] "Dien - %d paket(ten) ynstalllearre of bywurke" +msgstr[1] "Dien - %d paket(ten) ynstalllearre of bywurke" + +# +msgid "Download" +msgstr "Binnenhelje" + +#, python-format +msgid "Download %s from server" +msgstr "" + +msgid "Download .NFI-files for USB-flasher" +msgstr "Binnenhelje fan .NFI triemen foar USB Flasher" + +# +#, fuzzy +msgid "Download plugins" +msgstr "Ynstekkers binnenhelje" + +# +msgid "Downloadable new plugins" +msgstr "Binnen te heljen nije ynstekkers" + +# +msgid "Downloadable plugins" +msgstr "Binnen te heljen ynstekkers" + +# +msgid "Downloading" +msgstr "Binnenheljen fan" + +# +msgid "Downloading plugin information. Please wait..." +msgstr "Binnenheljen fan ynstekker ynformaasje..." + +# +msgid "Dutch" +msgstr "Nederlansk" + +# +msgid "Dynamic contrast" +msgstr "" + +# +msgid "E" +msgstr "E" + +msgid "EPG" +msgstr "" + +msgid "EPG language selection 1" +msgstr "" + +msgid "EPG language selection 2" +msgstr "" + +# +#, fuzzy +msgid "EPG selection" +msgstr "EPG Seleksje" + +msgid "EPG settings" +msgstr "" + +# +#, python-format +msgid "ERROR - failed to scan (%s)!" +msgstr "Flater - Sykjen mislearre (%s)!" + +# +msgid "East" +msgstr "East" + +msgid "East limit set" +msgstr "" + +# +msgid "Edit" +msgstr "Bewurkje" + +# +msgid "Edit DNS" +msgstr "Wyzigje de DNS" + +# +msgid "Edit bouquets list" +msgstr "" + +# +msgid "Edit chapters of current title" +msgstr "Bewurkje haadstik fan dizze titel" + +# +msgid "Edit services list" +msgstr "Wyzigje kanaallyst" + +# +msgid "Edit settings" +msgstr "Wyzigje ynstellingen" + +# +#, fuzzy +msgid "Edit the nameserver configuration of your receiver.\n" +msgstr "nammeserver ynstellingen ferlitte" + +msgid "Edit the network configuration of your receiver.\n" +msgstr "" + +msgid "Edit timer" +msgstr "" + +# +msgid "Edit title" +msgstr "Bewukje titel" + +# +msgid "Edit upgrade source url." +msgstr "" + +msgid "Education/Science/..." +msgstr "" + +# +msgid "Electronic Program Guide" +msgstr "Elektroniske Programma Gids" + +# +msgid "Enable" +msgstr "Ynskeakelje" + +msgid "Enable 'neutrino' style channel select controlling" +msgstr "" + +msgid "Enable 'neutrino' style zap controlling" +msgstr "" + +# +msgid "Enable 5V for active antenna" +msgstr "5V ynskeakelje foar hjoeddeiske antenne" + +msgid "Enable EIT EPG" +msgstr "" + +msgid "Enable MHW EPG" +msgstr "" + +msgid "Enable Netmed EPG" +msgstr "" + +msgid "Enable OK for channel selection" +msgstr "" + +msgid "Enable ViaSat EPG" +msgstr "" + +msgid "Enable Virgin EPG" +msgstr "" + +msgid "Enable Wake On LAN" +msgstr "" + +msgid "Enable auto fast scan" +msgstr "" + +# +#, fuzzy +msgid "Enable bouquet selection in multi-EPG" +msgstr "bewurkjen boeket oan" + +msgid "Enable freesat EPG" +msgstr "" + +# +msgid "Enable multiple bouquets" +msgstr "Mear boeketten sjen litte" + +# +msgid "Enable parental control" +msgstr "Alderlik tasjoch ynskeakelje" + +msgid "Enable teletext caching" +msgstr "" + +msgid "Enable zapping with CH+/-, B+/-, P+/-" +msgstr "" + +# +msgid "Enabled" +msgstr "Ynskeakele" + +# +msgid "Encrypted: " +msgstr "" + +# +msgid "Encryption" +msgstr "Encryption" + +# +#, fuzzy +msgid "Encryption key" +msgstr "Encryption Kaai" + +# +#, fuzzy +msgid "Encryption key type" +msgstr "Encryption Kaai Type" + +# +msgid "Encryption:" +msgstr "" + +# +msgid "End time" +msgstr "Eintiid" + +msgid "End time to ignore inactivity sleeptimer" +msgstr "" + +msgid "End time to ignore shutdown in standby" +msgstr "" + +# +msgid "English" +msgstr "Engelsk" + +# +#, fuzzy +msgid "Enigma2 skin selector" +msgstr "enigma2 en netwurk" + +# +msgid "Enter main menu..." +msgstr "Nei it haadmenu..." + +# +msgid "Enter pin code" +msgstr "" + +# +msgid "Enter the service pin" +msgstr "Fier de service pin yn" + +msgid "Equal to" +msgstr "" + +# +msgid "Error" +msgstr "Flater" + +msgid "Error code" +msgstr "" + +# +msgid "Error executing plugin" +msgstr "Flater by útfieren fan ynstekker" + +# +#, python-format +msgid "" +"Error: %s\n" +"Retry?" +msgstr "" +"Flater: %s\n" +"Opnei ?" + +# +msgid "Estonian" +msgstr "" + +msgid "Ethernet network interface" +msgstr "" + +msgid "Event font size (relative to skin size)" +msgstr "" + +# +#, fuzzy +msgid "Event view" +msgstr "Barren oersjoch" + +# +#, fuzzy +msgid "Event view menu" +msgstr "Barren oersjoch" + +msgid "Everywhere" +msgstr "" + +# +#, fuzzy +msgid "Exceeds dual layer medium!" +msgstr "te grut foar 2 laags medium!" + +# +msgid "Execution finished!!" +msgstr "Utfiering klear.." + +# +#, fuzzy +msgid "Execution progress:" +msgstr "Utfieren foarutgong:" + +# +msgid "Exif" +msgstr "Exif" + +# +msgid "Exit" +msgstr "ofslúte" + +msgid "Exit EPG" +msgstr "" + +# +msgid "Exit editor" +msgstr "Bewurker ofslúte" + +msgid "Exit input device selection." +msgstr "" + +msgid "Exit media player?" +msgstr "" + +# +#, fuzzy +msgid "Exit mediaplayer" +msgstr "mediaspieler ferlitte" + +# +#, fuzzy +msgid "Exit movie list" +msgstr "filmlyst ferlitte" + +# +#, fuzzy +msgid "Exit movie player?" +msgstr "mediaspieler ferlitte" + +# +#, fuzzy +msgid "Exit nameserver configuration" +msgstr "nammeserver ynstellingen ferlitte" + +# +#, fuzzy +msgid "Exit network interface list" +msgstr "netwurk ynterface lyst ferlitte" + +# +msgid "Exit network wizard" +msgstr "" + +# +msgid "Exit the wizard" +msgstr "De gucheler ofslúte" + +# +msgid "Expert" +msgstr "Avansearre" + +msgid "Extend sleeptimer 15 minutes" +msgstr "" + +# +msgid "Extended Software" +msgstr "" + +# +msgid "Extended Software Plugin" +msgstr "" + +# +#, fuzzy +msgid "Extended network setup plugin..." +msgstr "Utwreide Netwurkynstellingen Ynstekker..." + +# +#, fuzzy +msgid "Extended setup..." +msgstr "Utwreide Ynstellingen..." + +# +msgid "Extensions" +msgstr "Utwreidingen" + +# +msgid "Extensions management" +msgstr "" + +msgid "External PiP" +msgstr "" + +msgid "External subtitle color" +msgstr "" + +msgid "Extra motor options" +msgstr "" + +# +msgid "FEC" +msgstr "FEC" + +msgid "FTA" +msgstr "" + +# +msgid "Factory reset" +msgstr "Fabryks ynstellingen" + +# +msgid "Failed" +msgstr "mislearre" + +msgid "Failed to write /tmp/positionersetup.log: " +msgstr "" + +# +#, python-format +msgid "Fan %d" +msgstr "" + +# +#, python-format +msgid "Fan %d PWM" +msgstr "" + +# +#, fuzzy, python-format +msgid "Fan %d voltage" +msgstr "Ferheeche spanning" + +msgid "Fan operation" +msgstr "" + +msgid "Fan speed" +msgstr "" + +# +msgid "Fast" +msgstr "Rap" + +# +msgid "Fast DiSEqC" +msgstr "Rappe DiSEqC" + +msgid "Fast Scan" +msgstr "" + +# +msgid "Fast epoch" +msgstr "Snelle epoch" + +# +#, fuzzy +msgid "Fast forward speeds" +msgstr "Rap foarút faasje" + +# +msgid "Favourites" +msgstr "Favoryten" + +msgid "File appears to be busy.\n" +msgstr "" + +msgid "Filesystem check" +msgstr "" + +msgid "Final position at" +msgstr "" + +msgid "Final position at index" +msgstr "" + +msgid "Fine movement" +msgstr "" + +# +msgid "Finetune" +msgstr "Fyn ôfstemme" + +# +msgid "Finished" +msgstr "Ofrûn" + +# +msgid "Finished configuring your network" +msgstr "Klear mei ynstellen fan it netwurk" + +# +msgid "Finished restarting your network" +msgstr "Klear mei it opnei starten fan it netwurk" + +# +msgid "Finnish" +msgstr "Finsk" + +msgid "Fixed" +msgstr "" + +# +msgid "Flash" +msgstr "Flash" + +# +msgid "Flashing failed" +msgstr "Flashen misljearre" + +# +msgid "Following tasks will be done after you press OK!" +msgstr "" + +# +msgid "Format" +msgstr "Formaat" + +msgid "Forward volume keys" +msgstr "" + +# +msgid "Frame size in full view" +msgstr "gedielte yn folslein skerm" + +# +msgid "French" +msgstr "Frans" + +# +msgid "Frequency" +msgstr "Frekwinsje" + +# +msgid "Frequency bands" +msgstr "Frekwinsje bânnen" + +# +msgid "Frequency scan step size(khz)" +msgstr "Frekwinsje sykjen stap grutte(kHz)" + +# +msgid "Frequency steps" +msgstr "Oantal Frekwinsje stappen" + +msgid "Frequency:" +msgstr "" + +# +msgid "Fri" +msgstr "Fre" + +# +msgid "Friday" +msgstr "Freed" + +msgid "From :" +msgstr "" + +# +#, python-format +msgid "Frontprocessor version: %d" +msgstr "Foarprocessor ferzje: %d" + +msgid "Full transparency" +msgstr "" + +msgid "Fulview resulution" +msgstr "" + +msgid "Function of OK button" +msgstr "" + +msgid "Further Options" +msgstr "" + +# +msgid "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" +msgstr "" +"De GUI moat opnij starte fan wege de nije skin\n" +"Wolle jo de GUI no opnei starte ?" + +# +msgid "Gateway" +msgstr "Gateway" + +msgid "General AC3 delay" +msgstr "" + +msgid "General PCM delay" +msgstr "" + +# +msgid "Genre" +msgstr "Sjenre" + +# +msgid "German" +msgstr "Dúts" + +msgid "Get latest experimental image" +msgstr "" + +msgid "Get latest release image" +msgstr "" + +# +msgid "Getting plugin information. Please wait..." +msgstr "Binnenhelje fan ynstekker ynformaasje...." + +msgid "Go down the list" +msgstr "" + +msgid "Go to first movie or last item" +msgstr "" + +msgid "Go to first movie or top of list" +msgstr "" + +# +#, fuzzy +msgid "Go to first service" +msgstr "Neit it earste menu item gean" + +# +#, fuzzy +msgid "Go to last service" +msgstr "Befeilich kanalen" + +# +#, fuzzy +msgid "Go to next event" +msgstr "Nei it folgende menu item gean" + +# +#, fuzzy +msgid "Go to next page of service" +msgstr "Gjin nei folgende undersender" + +# +#, fuzzy +msgid "Go to previous event" +msgstr "Nei it foarige menu item " + +# +#, fuzzy +msgid "Go to previous page of service" +msgstr "Werom nei foariche service" + +msgid "Go up the list" +msgstr "" + +msgid "Goto" +msgstr "" + +# +msgid "Goto 0" +msgstr "Gjin nei 0" + +msgid "Goto :" +msgstr "" + +msgid "Goto X" +msgstr "" + +msgid "Goto index position" +msgstr "" + +msgid "Goto next day of events" +msgstr "" + +msgid "Goto next page of events" +msgstr "" + +# +msgid "Goto position" +msgstr "Gjin nei posysje" + +msgid "Goto previous day of events" +msgstr "" + +msgid "Goto previous page of events" +msgstr "" + +msgid "Goto specific date/time" +msgstr "" + +msgid "GotoX calibration" +msgstr "" + +msgid "GraphMultiEpg Settings" +msgstr "" + +# +msgid "Graphical Multi EPG" +msgstr "Grafyske Multi EPG" + +# +msgid "Greek" +msgstr "Gryks" + +# +msgid "Green boost" +msgstr "" + +msgid "Guard interval" +msgstr "" + +msgid "HD list" +msgstr "" + +msgid "HDMI-CEC setup" +msgstr "" + +msgid "Handle standby from TV" +msgstr "" + +msgid "Handle wakeup from TV" +msgstr "" + +# +#, fuzzy +msgid "Hard disk" +msgstr "Hurde skiif" + +# +#, fuzzy +msgid "Hard disk setup" +msgstr "Hurde skiif ynstellingen" + +# +#, fuzzy +msgid "Hard disk standby after" +msgstr "Hurde skiif yn sliipstand nei" + +# +msgid "Harddisk" +msgstr "Hurde skiif" + +msgid "Hardware: " +msgstr "" + +msgid "Hebrew" +msgstr "" + +msgid "Helps setting up your dish" +msgstr "" + +msgid "Hidden network" +msgstr "" + +msgid "Hide CI messages" +msgstr "" + +msgid "Hide channel list in radio mode" +msgstr "" + +msgid "Hide known extensions" +msgstr "" + +msgid "Hide number markers" +msgstr "" + +# +#, fuzzy +msgid "Hide player" +msgstr "spieler ferbergje" + +msgid "Hide zap errors" +msgstr "" + +msgid "Hierarchy info" +msgstr "" + +# +#, fuzzy +msgid "Hierarchy information" +msgstr "Hiërarchie Ynformaasje" + +# +msgid "High bitrate support" +msgstr "" + +msgid "Hold screen" +msgstr "" + +msgid "Hold till locked" +msgstr "" + +msgid "Home" +msgstr "" + +# +msgid "Horizontal" +msgstr "" + +msgid "Horizontal turning speed" +msgstr "" + +# +msgid "How many minutes do you want to record?" +msgstr "Hoe folle minuten wolle jo opnimme?" + +# +msgid "Hue" +msgstr "" + +# +msgid "Hungarian" +msgstr "Hongaarsk" + +# +#, fuzzy +msgid "IP address" +msgstr "IP Adres" + +# +msgid "ISO file is too large for this filesystem!" +msgstr "ISO triem is te grut foar dit bestânsysteem!" + +# +msgid "ISO path" +msgstr "ISO paad" + +msgid "Icons" +msgstr "" + +# +msgid "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." +msgstr "" +"Ot jo dit leze, is der iets raar skeef mei\n" +"jo skart oansluting. Druk OK om werom te gean." + +# +msgid "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." +msgstr "" +"Skeakelje in helderens of kontrast ferbettering op jo TV út. Is der iets mei de namme \"dynamysk\", set it nei standert. Set it eftergrûn helderens nivo nei jo eigen smaak. Set it konstrast sa leech mooglik op jo TV.\n" +"Dan, set it helderens nivo sa leech as mooglik, mar soargje dat de twa leechste griistinten krek anwêzig bliuwe\n" +"Meitsje jo net drok om de helderenstinten no. Die komme werom yn de folgende stap\n" +"Binne jo tefreden mei it resultaat, druk OK" + +msgid "Image: " +msgstr "" + +# +#, fuzzy +msgid "Immediate shutdown" +msgstr "direkt útskeakelje" + +# +msgid "In order to record a timer, the TV was switched to the recording service!\n" +msgstr "Op in barren op te nimmen, wurd de TV nei opnimmen skeakele!\n" + +# +#, fuzzy +msgid "In progress" +msgstr "Dwaande" + +msgid "Inactivity Sleeptimer" +msgstr "" + +msgid "Include AIT in http streams" +msgstr "" + +msgid "Include ECM in http streams" +msgstr "" + +msgid "Include EIT in http streams" +msgstr "" + +msgid "Incorrect type service for PiP!" +msgstr "" + +# +msgid "Increased voltage" +msgstr "Ferheeche spanning" + +# +msgid "Index" +msgstr "Yndex" + +msgid "Index allocated:" +msgstr "" + +# +msgid "Info" +msgstr "" + +# +#, fuzzy +msgid "Info bar" +msgstr "Ynfobalke" + +# +#, fuzzy +msgid "Info bar timeout" +msgstr "Ynfobalke tiid" + +msgid "Infobar frontend data source" +msgstr "" + +# +msgid "Information" +msgstr "Ynformaasje" + +# +msgid "Init" +msgstr "Initialisearje" + +# +#, fuzzy +msgid "Initial fast forward speed" +msgstr "Rap foarút faasje" + +# +msgid "Initial location in new timers" +msgstr "" + +msgid "Initial lock ratio" +msgstr "" + +# +#, fuzzy +msgid "Initial rewind speed" +msgstr "Werom spiel faasje" + +msgid "Initial signal quality" +msgstr "" + +msgid "Initial signal quality:" +msgstr "" + +# +msgid "Initialization" +msgstr "" + +# +msgid "Initialize" +msgstr "Formattearje HDD" + +msgid "Initializing storage device..." +msgstr "" + +# +msgid "Input" +msgstr "Ynfier" + +msgid "Input device setup" +msgstr "" + +msgid "Input devices" +msgstr "" + +# +msgid "Install" +msgstr "" + +# +msgid "Install a new image with a USB stick" +msgstr "" + +# +msgid "Install a new image with your web browser" +msgstr "" + +# +#, fuzzy +msgid "Install channel list" +msgstr "set folgende kanaal in skiednis" + +msgid "Install extensions" +msgstr "" + +# +msgid "Install extensions." +msgstr "" + +# +msgid "Install local extension" +msgstr "" + +msgid "Install picons on" +msgstr "" + +# +#, fuzzy +msgid "Install softcam" +msgstr "Software oan it ynstallearjen..." + +msgid "Installation has completed." +msgstr "" + +msgid "Installation or removal has completed." +msgstr "" + +# +msgid "Installing" +msgstr "Oan it ynstallearjen" + +# +#, fuzzy +msgid "Installing software..." +msgstr "Software oan it ynstallearjen..." + +# +#, fuzzy +msgid "Instant recording location" +msgstr "feroarje opnim tiiden" + +# +#, fuzzy +msgid "Instant recording..." +msgstr "In direct opnimmen..." + +# +msgid "Interface: " +msgstr "" + +# +msgid "Intermediate" +msgstr "Yntermediate" + +# +#, fuzzy +msgid "Internal flash" +msgstr "Ynterne Flash" + +msgid "Internal hdd only" +msgstr "" + +msgid "Interval between keys when repeating:" +msgstr "" + +# +#, python-format +msgid "Invalid directory selected: %s" +msgstr "Unjildige map selektearre: %s" + +# +#, fuzzy +msgid "Invalid location" +msgstr "Plak net tastien" + +msgid "Invalid transponder data" +msgstr "" + +# +msgid "Inversion" +msgstr "Infertearring" + +msgid "Invert" +msgstr "" + +# +msgid "Ipkg" +msgstr "" + +msgid "Is this setting ok?" +msgstr "" + +# +#, fuzzy +msgid "Is this video mode ok?" +msgstr "Kies fideo moadus" + +# +msgid "Italian" +msgstr "Italiaansk" + +msgid "Items per page " +msgstr "" + +msgid "Items per page for list screen" +msgstr "" + +# +#, fuzzy +msgid "Job overview" +msgstr "Opdracht oansjoch" + +msgid "Jump to beginning of list" +msgstr "" + +# +#, fuzzy +msgid "Jump to end of list" +msgstr "spring nei ein fan lyst" + +# +#, fuzzy +msgid "Jump to next marked position" +msgstr "spring nei folgende index punt" + +# +#, fuzzy +msgid "Jump to previous marked position" +msgstr "spring nei foarige index punt" + +# +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect) +#, fuzzy +msgid "Just scale" +msgstr "Alinne skale" + +msgid "Keep service" +msgstr "" + +# +#, fuzzy +msgid "Kernel version: " +msgstr "Nije ferzje:" + +# +msgid "Keyboard" +msgstr "" + +# +#, fuzzy +msgid "Keyboard map" +msgstr "Toetseboerd Map" + +# +#, fuzzy +msgid "Keyboard setup" +msgstr "Toetseboerd Ynstellingen" + +# +#, fuzzy +msgid "LAN adapter" +msgstr "LAN oanslúting" + +msgid "LAN connection" +msgstr "" + +# +msgid "LNB" +msgstr "LNB" + +# +msgid "Language" +msgstr "Taal" + +# +msgid "Language selection" +msgstr "Taal Kieze" + +# +msgid "Last config" +msgstr "" + +# +msgid "Last speed" +msgstr "Lêste faasje" + +msgid "Last upgrade: " +msgstr "" + +msgid "Latest Commits" +msgstr "" + +# +msgid "Latitude" +msgstr "Bridtegraad" + +# +msgid "Latvian" +msgstr "" + +# +#, fuzzy +msgid "Leave DVD player?" +msgstr "DVD Spieler ôfslúte ?" + +# +msgid "Left" +msgstr "Links" + +msgid "Left from servicename" +msgstr "" + +msgid "Leisure hobbies" +msgstr "" + +# +#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term. +msgid "Letterbox" +msgstr "Letterbox" + +msgid "Letterbox zoom" +msgstr "" + +msgid "Limit character set for recording filenames" +msgstr "" + +# +msgid "Limit east" +msgstr "Limyt east" + +msgid "Limit the characters that can be used in recording filenames to (7 bit) ascii. This ensures compatibility with operating systems or file systems with limited character sets." +msgstr "" + +# +msgid "Limit west" +msgstr "Limyt west" + +msgid "Limits cancelled" +msgstr "" + +msgid "Limits enabled" +msgstr "" + +# +msgid "Limits off" +msgstr "Limyten út" + +# +msgid "Limits on" +msgstr "Limyt oan" + +msgid "Link quality:" +msgstr "" + +# +msgid "Link:" +msgstr "Link:" + +# +msgid "Linked titles with a DVD menu" +msgstr "Keppele titels mei in DVD menu" + +msgid "List EPG functions..." +msgstr "" + +msgid "List available networks" +msgstr "" + +msgid "List mode" +msgstr "" + +# +#, fuzzy +msgid "List of storage devices" +msgstr "Lyst Opslach Apparatuur" + +msgid "List type" +msgstr "" + +#, python-format +msgid "List version %d, found %d channel" +msgid_plural "List version %d, found %d channels" +msgstr[0] "" +msgstr[1] "" + +# +#, fuzzy +msgid "Listen to the radio..." +msgstr "nei radio harkje..." + +msgid "Lists reloaded!" +msgstr "" + +# +msgid "Lithuanian" +msgstr "Lithuaniansk" + +# +msgid "Load" +msgstr "Laad" + +msgid "Load Length of Movies in Movielist" +msgstr "" + +# +#, fuzzy +msgid "Load length of movies in movie list" +msgstr "Laad lengte fan films yn filmlyst" + +# +#, fuzzy +msgid "Load playlist" +msgstr "ofspiellyst lade" + +# +#, fuzzy +msgid "Local network" +msgstr "Lokaal netwurk" + +# +msgid "Location" +msgstr "Doel" + +# +msgid "Location for instant recordings" +msgstr "" + +msgid "Lock ratio" +msgstr "" + +# +msgid "Lock:" +msgstr "Slot:" + +# +msgid "Log results to harddisk" +msgstr "" + +msgid "Long filenames" +msgstr "" + +# +#, fuzzy +msgid "Long key press" +msgstr "Lang taste yndrukken" + +# +msgid "Longitude" +msgstr "Lingtegraad" + +msgid "Loop through to" +msgstr "" + +msgid "Luxembourgish" +msgstr "" + +# +#, fuzzy +msgid "MMC card" +msgstr "MMC kaart" + +# +msgid "MORE" +msgstr "MEER" + +# +msgid "Main menu" +msgstr "Haad menu" + +msgid "Maintain old EPG data for" +msgstr "" + +# +msgid "Make this mark an 'in' point" +msgstr "Markeer dit as in 'yn' punt" + +# +msgid "Make this mark an 'out' point" +msgstr "Markeer dit as in 'út' punt" + +# +msgid "Make this mark just a mark" +msgstr "Meitsje dit in gewoan markeer punt" + +# +msgid "Manage extensions" +msgstr "" + +# +msgid "Manage your receiver's software" +msgstr "" + +msgid "Manual" +msgstr "" + +# +msgid "Manual Scan" +msgstr "Hanmatig sykje" + +msgid "Manual configuration" +msgstr "" + +# +#, fuzzy +msgid "Manual scan" +msgstr "Hanmatig sykje" + +# +msgid "Manual transponder" +msgstr "Hanmatige transponder" + +# +msgid "Manufacturer" +msgstr "" + +# +#, fuzzy +msgid "Margin after recording (minutes)" +msgstr "Extra tiid foar by it opnimmen" + +# +#, fuzzy +msgid "Margin before recording (minutes)" +msgstr "Extra tiid foar by it opnimmen" + +msgid "Max memory positions" +msgstr "" + +msgid "Max. bitrate: " +msgstr "" + +# +msgid "Media player" +msgstr "Media Spieler" + +# +#, fuzzy +msgid "Media scanner" +msgstr "Media Spieler" + +# +msgid "Medium is not a writeable DVD!" +msgstr "Medium is net in skriuwbêre DVD!" + +# +msgid "Medium is not empty!" +msgstr "Medium is net leech!" + +msgid "Memory" +msgstr "" + +msgid "Memory index" +msgstr "" + +# +msgid "Menu" +msgstr "Menu" + +# +msgid "Message" +msgstr "Berjocht" + +# +msgid "Message..." +msgstr "" + +#, python-format +msgid "Minimum age %d years" +msgstr "" + +msgid "Minimum send interval" +msgstr "" + +msgid "Missing " +msgstr "" + +# +#, fuzzy +msgctxt "Satellite configuration mode" +msgid "Mode" +msgstr "Moadus" + +# +#, fuzzy +msgctxt "Video output mode" +msgid "Mode" +msgstr "Moadus" + +# +msgid "Model: " +msgstr "Model: " + +# +msgid "Modulation" +msgstr "Modulaasje" + +# +msgid "Modulator" +msgstr "Modulator" + +# +msgid "Mon" +msgstr "Moan" + +# +msgid "Mon-Fri" +msgstr "Moan - Fre" + +# +msgid "Monday" +msgstr "Moandei" + +# +msgid "Mosquito noise reduction" +msgstr "" + +msgid "Mount" +msgstr "" + +msgid "Move" +msgstr "" + +# +#, fuzzy +msgid "Move PiP to main picture" +msgstr "ferplaats PiP nei haad skerm" + +# +msgid "Move Picture in Picture" +msgstr "Ferpleats Byld yn Byld" + +# +msgid "Move east" +msgstr "Draai nei east" + +msgid "Move to other directory" +msgstr "" + +msgid "Move to position X" +msgstr "" + +# +msgid "Move west" +msgstr "Draai nei west" + +msgid "Moved to position 0" +msgstr "" + +msgid "Moved to position at index" +msgstr "" + +msgid "Movement" +msgstr "" + +msgid "Movie List Configuration" +msgstr "" + +msgid "Movie Selection" +msgstr "" + +# +#, fuzzy +msgid "Movie list configuration" +msgstr "Tuner ynstellingen" + +# +msgid "Movie location" +msgstr "" + +# +#, fuzzy +msgid "Movie selection" +msgstr "Tiidsbarren seleksje" + +msgid "Movie/Drama" +msgstr "" + +# +msgid "Movielist menu" +msgstr "Filmlyst menu" + +msgid "Moving" +msgstr "" + +msgid "Moving east ..." +msgstr "" + +msgid "Moving to position" +msgstr "" + +msgid "Moving west ..." +msgstr "" + +# +msgid "Multi EPG" +msgstr "Multi EPG" + +msgid "Multi-EPG bouquet selection" +msgstr "" + +# +msgid "Multimedia" +msgstr "" + +# +msgid "Multiple service support" +msgstr "Kin meardere utstjoeringen oan" + +msgid "Multiplex" +msgstr "" + +# +msgid "Multisat" +msgstr "Multisat" + +msgid "Multisat all select" +msgstr "" + +msgid "Music/Ballet/Dance" +msgstr "" + +# +msgid "Mute" +msgstr "Mute" + +# +msgid "N/A" +msgstr "Net oanwêzig" + +# +msgid "NEXT" +msgstr "Folgende" + +msgid "NFI image flashing" +msgstr "" + +# +msgid "NFI image flashing completed. Press Yellow to Reboot!" +msgstr "NFI image flashen is klear. Druk giel om nei te starten!" + +msgid "NIM" +msgstr "" + +# +msgid "NOW" +msgstr "No" + +# +msgid "NTSC" +msgstr "NTSC" + +# +msgid "Name" +msgstr "Namme" + +# +msgid "Nameserver" +msgstr "Nammeserver" + +# +#, python-format +msgid "Nameserver %d" +msgstr "Nammeserver %d" + +# +msgid "Nameserver settings" +msgstr "Nammeserver ynstellingen" + +# +#, fuzzy +msgid "Nameserver setup" +msgstr "Nammeserver Ynstellingen" + +msgid "Namespace" +msgstr "" + +# +msgid "Netmask" +msgstr "Netmasker" + +# +msgid "Network" +msgstr "" + +msgid "Network ID" +msgstr "" + +# +#, fuzzy +msgid "Network configuration..." +msgstr "Netwurk configuraasje" + +# +#, fuzzy +msgid "Network mount" +msgstr "Netwurk oankeppelingen" + +# +#, fuzzy, python-format +msgid "Network mount %s" +msgstr "Netwurk oankeppelingen" + +msgid "Network name (SSID)" +msgstr "" + +# +msgid "Network scan" +msgstr "Netwurk ôfsykje" + +# +msgid "Network setup" +msgstr "Netwurk ynstellingen" + +# +msgid "Network test" +msgstr "Netwurk test" + +# +msgid "Network test..." +msgstr "Netwurk test..." + +msgid "Network test: " +msgstr "" + +# +#, fuzzy +msgid "Network wizard" +msgstr "Netwurk gûcheler" + +# +msgid "Network:" +msgstr "Netwurk:" + +# +msgid "New" +msgstr "Nij" + +msgid "New PIN" +msgstr "" + +# +msgid "New version:" +msgstr "Nije ferzje:" + +msgid "News Current Affairs" +msgstr "" + +msgctxt "button label, 'next screen'" +msgid "Next" +msgstr "" + +msgctxt "now/next: 'next' event label" +msgid "Next" +msgstr "" + +# +msgid "No" +msgstr "Nee" + +# +msgid "No (supported) DVDROM found!" +msgstr "Gjin (ondersteunde) DVDROM fûn!" + +# +msgid "No Connection" +msgstr "" + +# +msgid "No HDD found or HDD not initialized!" +msgstr "Gjin hurde skiif fûn of HDD net formatearre!" + +# +msgid "No backup needed" +msgstr "Gjin backup nedich" + +msgid "No cable tuner found!" +msgstr "" + +# +msgid "" +"No data on transponder!\n" +"(Timeout reading PAT)" +msgstr "" +"Gjin data op transponder\n" +"(tiid fan lêzen PAT)" + +msgid "No delay" +msgstr "" + +# +msgid "No description available." +msgstr "" + +# +msgid "No details for this image file" +msgstr "Gjin details beskikber foar dit image triem" + +# +msgid "No displayable files on this medium found!" +msgstr "" + +# +msgid "No event info found, recording indefinitely." +msgstr "Gjin barren ynfo fûn, giit foar altiid troch mei opnimmen.." + +# +msgid "No fast winding possible yet.. but you can use the number buttons to skip forward/backward!" +msgstr "" + +msgid "No free index available" +msgstr "" + +# +msgid "No free tuner!" +msgstr "Gjin tuner oer" + +# +msgid "No network connection available." +msgstr "" + +# +msgid "No networks found" +msgstr "" + +msgid "No new plugins found" +msgstr "" + +# +msgid "No positioner capable frontend found." +msgstr "Gjin posysjesyker foarein fûn." + +msgid "No satellites configured. Plese check your tuner setup." +msgstr "" + +msgid "No service" +msgstr "" + +msgid "No services/providers selected" +msgstr "" + +# +#, fuzzy +msgid "No standby" +msgstr "gjin paraatstand" + +msgid "No suitable sat tuner found!" +msgstr "" + +# +msgid "No tags are set on these movies." +msgstr "Gjin merkers oanwêzig op dizze films" + +# +#, fuzzy +msgid "No timeout" +msgstr "gjin tiidslimyt" + +# +msgid "No to all" +msgstr "" + +msgid "No transparency" +msgstr "" + +# +msgid "No tuner is configured for use with a diseqc positioner!" +msgstr "Der is gjin tuner ynsteld foar gebrûk mei in diseqc posysje syker!" + +# +msgid "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Gjin tuner aktief!\n" +"Stel dizze earst yn foar jo kanalen sykje kinne." + +msgid "No updates available" +msgstr "" + +msgid "No updates available. Please try again later." +msgstr "" + +# +msgid "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" +msgstr "" +"Gjin jildige service PIN fûn !\n" +"Wolle jo dizze no ynstelle ?\n" +"By 'nee' wurd de service befeiliging útskeakele !" + +# +msgid "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" +msgstr "" +"Gjin jildige ynstellingen PIN fûn !\n" +"Wolle jo dizze no ynstelle ?\n" +"By 'nee' wurd de ynstellingen befeiliging útskeakele !" + +msgid "No wireless networks found! Searching..." +msgstr "" + +# +msgid "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." +msgstr "" +"Gjin wurkende netwurk adatpter fûn.\n" +"Sjoch nei ot in kabel oanslúten is en it netwurk goed ynsteld is." + +# +msgid "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." +msgstr "" +"Gjin wurkende triidloaze netwurk adatpter fûn.\n" +"Sjoch nei ot in WLAN adapter oanslúten is en it netwurk goed ynsteld is." + +# +msgid "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." +msgstr "" +"Gjin wurkende triidloaze netwurk adatpter fûn.\n" +"Sjoch nei ot in WLAN adapter oanslúten is of skeakelje de lokale netwurk ynterface yn." + +# +msgid "No, but restart from begin" +msgstr "Nee, mar start fanôf it begjin" + +# +msgid "No, do nothing." +msgstr "Nee, doch neat.." + +msgid "No, just start my receiver" +msgstr "" + +msgid "No, never" +msgstr "" + +# +msgid "None" +msgstr "Gjin" + +# +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right) +msgid "Nonlinear" +msgstr "Net lineair" + +msgid "Normal mode" +msgstr "" + +# +msgid "North" +msgstr "Noard" + +# +msgid "Norwegian" +msgstr "Noarsk" + +msgid "Not associated" +msgstr "" + +msgid "Not configured" +msgstr "" + +# +#, fuzzy, python-format +msgid "Not enough disk space. Please free up some disk space and try again. (%d MB required, %d MB available)" +msgstr "Net genôch diskrûmte. Rûmje wat rotzooi op en besykje opnei. (%d MB nedich, %d oanwêzich)" + +msgid "Nothing connected" +msgstr "" + +# +msgid "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Neat te sykjen\n" +"Earst de tuner ynstellingen dwaan, foar jo senders sykje kinne." + +msgctxt "now/next: 'now' event label" +msgid "Now" +msgstr "" + +# +#, fuzzy +msgid "Now playing" +msgstr "No oan it ôfspieljen" + +# +msgid "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." +msgstr "No, feroare it helderens nivo en set it sa heech, mar wêz seker dat jo altiid nog it ferskil sjogge tusken de twa helderste skaadnivos.Binne jo klear, druk OK" + +# +msgid "OK" +msgstr "Ok" + +# +msgid "OK, guide me through the upgrade process" +msgstr "Ok, rin troch it bywurkjen proces" + +msgid "ONID" +msgstr "" + +msgid "OSD name request" +msgstr "" + +# +#, fuzzy +msgid "OSD settings" +msgstr "OSD-ynstellingen" + +msgid "OSD transparency" +msgstr "" + +# +msgid "Off" +msgstr "Ut" + +msgid "Offline decode delay (ms)" +msgstr "" + +msgid "Ok" +msgstr "" + +# +msgid "On" +msgstr "Oan" + +msgid "On end of movie" +msgstr "" + +msgid "On end of movie (as menu)" +msgstr "" + +# +msgid "One" +msgstr "Ien" + +# +msgid "Only extensions." +msgstr "" + +# +#, fuzzy +msgid "Only free scan" +msgstr "Allinne Freie útstjoeringen" + +# +#, fuzzy +msgid "Open service list" +msgstr "iepenje kanaallyst" + +# +#, fuzzy +msgid "Open the movie list" +msgstr "Werom nei de film lyst" + +msgid "Orbital position" +msgstr "" + +msgid "Original" +msgstr "" + +msgid "Other" +msgstr "" + +msgid "Output" +msgstr "" + +msgid "Overwrite configuration files during software upgrade?" +msgstr "" + +# +#, fuzzy +msgid "Overwrite configuration files?" +msgstr "Tuner ynstellingen" + +# +msgid "PAL" +msgstr "PAL" + +msgid "PCR PID" +msgstr "" + +# +msgid "PIDs" +msgstr "PIDs" + +# +#, fuzzy +msgid "PIN code needed" +msgstr "Pinkode is needich" + +msgid "PLP ID" +msgstr "" + +msgid "PMT PID" +msgstr "" + +# +msgid "Package list update" +msgstr "Bywurkje pakketlyst " + +# +msgid "Packet management" +msgstr "Pakket beheer" + +# +msgid "Packet manager" +msgstr "" + +# +#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term +#, fuzzy +msgid "Pan&scan" +msgstr "Pan&Scan" + +# +#, fuzzy +msgid "Parent directory" +msgstr "Boppelizzende map" + +# +msgid "Parental control" +msgstr "Alderlik tasjoch" + +# +#, fuzzy +msgid "Parental control services editor" +msgstr "Alderlik tasjoch bewurker" + +# +msgid "Parental control setup" +msgstr "Alderlik tasjoch" + +# +msgid "Parental control type" +msgstr "Alderlik tasjoch type" + +# +msgid "Password" +msgstr "" + +# +#, fuzzy +msgid "Pause" +msgstr "pause" + +# +msgid "Pause movie at end" +msgstr "Film op pause by ein" + +# +#, fuzzy +msgid "Pause playback" +msgstr "Fierder gean mei ôfspieljen" + +msgid "Pauze/Continue playback" +msgstr "" + +msgid "Percentage left" +msgstr "" + +# +#, fuzzy +msgid "Percentage right" +msgstr "circular rjochts" + +msgid "Permanently delete all recordings in the trash can?" +msgstr "" + +msgid "Permanently remove all deleted items" +msgstr "" + +msgid "Persian" +msgstr "" + +# +msgid "Phone number" +msgstr "" + +# +#, fuzzy +msgid "PiP setup" +msgstr "PIP Ynstellingen" + +msgid "Picon" +msgstr "" + +msgid "Picon and service name" +msgstr "" + +# +#, fuzzy +msgid "Picture player" +msgstr "Plaatsje spieler" + +# +#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term. +msgid "Pillarbox" +msgstr "Pillar box" + +# +msgid "Pilot" +msgstr "Pilot" + +# +msgid "Play" +msgstr "Ofspylje" + +# +msgid "Play DVD" +msgstr "" + +msgid "Play audio in background" +msgstr "" + +# +#, fuzzy +msgid "Play audio-CD..." +msgstr "Ofspylje fan Audio-CD..." + +msgid "Play back media files" +msgstr "" + +# +#, fuzzy +msgid "Play entry" +msgstr "rigele ofspielje" + +# +#, fuzzy +msgid "Play from next mark or playlist entry" +msgstr "Spielje fanôf it folgende punt of ôfspiellyst rigele" + +# +#, fuzzy +msgid "Play from previous mark or playlist entry" +msgstr "Spielje fanôf it foarige punt of ôfspiellyst rigele" + +# +#, fuzzy +msgid "Play music..." +msgstr "Ofspylje fan Audio-CD..." + +msgid "Play next" +msgstr "" + +msgid "Play next (return to movie list)" +msgstr "" + +msgid "Play next (return to previous service)" +msgstr "" + +msgid "Play previous" +msgstr "" + +# +msgid "Play recorded movies..." +msgstr "Opname films ôfspielje..." + +# +msgid "Please add titles to the compilation." +msgstr "" + +# +msgid "Please change recording endtime" +msgstr "Graach eintiid fan it opnimmen feroarje." + +# +msgid "Please check your network settings!" +msgstr "Graach netwurk ynstellingen neisjen!" + +# +msgid "Please choose an extension..." +msgstr "Kies in uitbreiding..." + +# +msgid "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" + +# +msgid "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" + +msgid "Please connect your receiver to the internet" +msgstr "" + +# +msgid "Please do not change any values unless you know what you are doing!" +msgstr "Feroarje gjin waarden, wannear jo net witte wat jo dogge!" + +# +msgid "Please enter a name for the new bouquet" +msgstr "Namme ynjefte foar it nije bouquet" + +# +msgid "Please enter a name for the new marker" +msgstr "Namme ynjefte foar in nije markering" + +# +msgid "Please enter a new filename" +msgstr "Jou in nije bestânnamme yn" + +# +msgid "Please enter filename (empty = use current date)" +msgstr "Jou in triemnamme yn (leech = datum fan hjoed)" + +# +msgid "Please enter name of the new directory" +msgstr "Jou in namme yn foar de nije map" + +msgid "Please enter new name:" +msgstr "" + +# +msgid "Please enter the correct pin code" +msgstr "Graach de júste pinkode yn jaan" + +msgid "Please enter the old PIN code" +msgstr "" + +# +msgid "Please follow the instructions on the TV" +msgstr "Folgje de ynstruksjes op TV" + +# +msgid "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." +msgstr "Tink der om dat de foarige selektearre media net oansprutsen wurde koe, en dêrom de standert map brûkt wurd." + +# +msgid "Please press OK to continue." +msgstr "Druk OK om fierder te gean." + +msgid "Please select a default EPG type..." +msgstr "" + +# +msgid "Please select a playlist to delete..." +msgstr "Selektearje in ofspiellyst om te ferwiderjen..." + +# +msgid "Please select a playlist..." +msgstr "Selektearje in ofspiellyst" + +# +#, fuzzy +msgid "Please select a sub service..." +msgstr "Selektearje in undersender..." + +# +msgid "Please select a subservice to record..." +msgstr "Jou in undersender op, om op te nimmen." + +# +msgid "Please select a subservice..." +msgstr "Selektearje in undersender..." + +msgid "Please select an NFI file and press green key to flash!" +msgstr "" + +# +#, fuzzy +msgid "Please select medium to be scanned" +msgstr "Graach Medium kieze om ôf te sykjen" + +# +msgid "Please select medium to use as backup location" +msgstr "" + +# +msgid "Please select tag to filter..." +msgstr "Selektearje diel foar it filterjen..." + +# +msgid "Please select the movie path..." +msgstr "Selektearje it paad nei de film" + +# +msgid "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." +msgstr "" + +# +msgid "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." +msgstr "" + +# +#, fuzzy +msgid "Please set up tuner A" +msgstr "ynstelle fan tuner B" + +# +msgid "Please set up tuner B" +msgstr "ynstelle fan tuner B" + +# +msgid "Please set up tuner C" +msgstr "ynstelle fan tuner C" + +# +msgid "Please set up tuner D" +msgstr "ynstelle fan tuner D" + +# +msgid "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." +msgstr "" +"Pylkje knoppen om BIB finster te ferskowen.\n" +"Druk Bouquet +/- om finstergrutte te feroarjen" + +# +msgid "Please use the UP and DOWN keys to select your language. Afterwards press the OK button." +msgstr "Brúk de op en del toets om jo taal te kiezen. Dernei druk op OK" + +msgid "Please wait" +msgstr "" + +# +#, fuzzy +msgid "Please wait (downloading channel list)" +msgstr "Lyst wurd laden..." + +# +#, fuzzy +msgid "Please wait (downloading softcam)" +msgstr "Lyst wurd laden..." + +# +#, fuzzy +msgid "Please wait (updating packages)" +msgstr "plaatsje wurd laden..." + +# +msgid "Please wait for activation of your network configuration..." +msgstr "Wachtsje op it aktief wurden fan de netwurk konfiguraasje" + +# +msgid "Please wait while scanning is in progress..." +msgstr "" + +# +msgid "Please wait while we configure your network..." +msgstr "Wachtsje oant it netwurk ynstelt wurden is..." + +# +msgid "Please wait while we prepare your network interfaces..." +msgstr "" + +# +msgid "Please wait while we test your network..." +msgstr "" + +# +msgid "Please wait while your network is restarting..." +msgstr "Wachtsje oant it netwurk opnei start is..." + +# +msgid "Please wait..." +msgstr "Graach eefkes wachtsje.." + +# +msgid "Please wait... Loading list..." +msgstr "Lyst wurd laden..." + +# +msgid "Plugin browser" +msgstr "Ynstekker browser" + +# +msgid "Plugin manager activity information" +msgstr "" + +# +msgid "Plugin manager help" +msgstr "" + +# +msgid "Plugins" +msgstr "Ynstekkers" + +msgid "Polarisation" +msgstr "" + +msgid "Polarisation:" +msgstr "" + +# +msgid "Polarization" +msgstr "Polarisaasje" + +# +msgid "Polish" +msgstr "Poolsk" + +# +msgid "Port A" +msgstr "Poort A" + +# +msgid "Port B" +msgstr "Poort B" + +# +msgid "Port C" +msgstr "Poort C" + +# +msgid "Port D" +msgstr "Poort D" + +# +msgid "Portuguese" +msgstr "Portugeesk" + +msgid "Position of completed timers in timerlist" +msgstr "" + +msgid "Position stored at index" +msgstr "" + +# +msgid "Positioner" +msgstr "Rotor" + +msgid "Positioner (selecting satellites)" +msgstr "" + +msgid "Positioner Setup" +msgstr "" + +# +msgid "Positioner setup" +msgstr "Rotor ynstellingen" + +# +msgid "Power threshold in mA" +msgstr "Stroom nivo yn mA" + +# +msgid "Predefined transponder" +msgstr "Foarôf ynstelde transponder" + +msgid "Prefer AC3 track" +msgstr "" + +msgid "Prefer AC3+ track" +msgstr "" + +msgid "Prefer audio track stored by service" +msgstr "" + +msgid "Prefer graphical DVB subtitles" +msgstr "" + +msgid "Prefer subtitles for hearing impaired" +msgstr "" + +msgid "Prefer subtitles stored by service" +msgstr "" + +msgid "Preferred tuner" +msgstr "" + +msgid "Preferred tuner for recordings" +msgstr "" + +msgid "Prepare another USB stick for image flashing" +msgstr "" + +# +msgid "Preparing... Please wait" +msgstr "Foarbereide fan... Eefkes wachtsje" + +msgid "Press '0' to toggle PiP mode" +msgstr "" + +msgid "Press INFO on your remote control for additional information." +msgstr "" + +msgid "Press MENU on your remote control for additional options." +msgstr "" + +# +msgid "Press OK on your remote control to continue." +msgstr "Druk OK op of ôfstandsbestjinning om fierder te gean." + +# +msgid "Press OK to activate the selected skin." +msgstr "" + +# +msgid "Press OK to activate the settings." +msgstr "Druk Ok om ynstellingen aktief te meitsjen." + +# +msgid "Press OK to edit the settings." +msgstr "Druk OK om dizze ynstellingen te bewurkjen" + +# +#, python-format +msgid "Press OK to get further details for %s" +msgstr "" + +# +msgid "Press OK to scan" +msgstr "Druk Ok om te sykjen" + +# +#, fuzzy +msgid "Press OK to select a provider." +msgstr "Druk Ok om te sykjen" + +msgid "Press OK to select satellites" +msgstr "" + +# +msgid "Press OK to select/deselect a CAId." +msgstr "" + +# +msgid "Press OK to start the scan" +msgstr "Druk Ok om sykjen te starten" + +msgid "Press OK to toggle the selection" +msgstr "" + +# +msgid "Press OK to toggle the selection." +msgstr "" + +# +msgid "Press yellow to set this interface as default interface." +msgstr "" + +msgctxt "button label, 'previous screen'" +msgid "Prev" +msgstr "" + +# +msgid "Preview" +msgstr "Foar-oanskouwing" + +# +msgid "Preview menu" +msgstr "Foarige menu" + +msgid "Preview selected channel" +msgstr "" + +# +msgid "Primary DNS" +msgstr "Eerste DNS" + +# +msgid "Priority" +msgstr "" + +# +msgid "Process" +msgstr "" + +msgid "Progress" +msgstr "" + +msgid "Progress bar left" +msgstr "" + +msgid "Progress bar right" +msgstr "" + +# +msgid "Properties of current title" +msgstr "Eigenskippen fan dizze titel" + +# +msgid "Protect services" +msgstr "Befeilich kanalen" + +# +msgid "Protect setup" +msgstr "Ynstellingen befeiligje" + +# +msgid "Provider" +msgstr "Leveransier" + +# +msgid "Provider to scan" +msgstr "Utstjoerder ôfsykje" + +# +msgid "Providers" +msgstr "Providers" + +msgid "Put TV in standby" +msgstr "" + +msgid "Put receiver in standby" +msgstr "" + +# +msgid "Python frontend for /tmp/mmi.socket" +msgstr "" + +# +msgid "Quick" +msgstr "" + +# +#, fuzzy +msgid "Quick zap" +msgstr "Rapzappe" + +# +msgid "RF output" +msgstr "RF Ynstellingen" + +# +msgid "RGB" +msgstr "RGB" + +# +msgid "Radio" +msgstr "Radio" + +# +#, fuzzy +msgid "Ram disk" +msgstr "Ram Disk" + +# +msgid "Random" +msgstr "" + +#, python-format +msgid "Rating defined by broadcaster - %d" +msgstr "" + +msgid "Rating undefined" +msgstr "" + +# +msgid "Really close without saving settings?" +msgstr "Slúte sunder op te slaan ?" + +# +msgid "Really delete done timers?" +msgstr "Ferwiderje diene tiidsbarren?" + +# +msgid "Really exit the subservices quickzap?" +msgstr "De undersender rapzap ôfslúte?" + +# +msgid "Really reboot now?" +msgstr "Wier no kompleet opnei starte ?" + +# +msgid "Really restart now?" +msgstr "Wier no nei starte ?" + +# +msgid "Really shutdown now?" +msgstr "Wier no kompleet útskeakelje ?" + +msgid "Really upgrade the frontprocessor and reboot now?" +msgstr "" + +msgid "Really upgrade your settop box and reboot now?" +msgstr "" + +# +msgid "Reboot" +msgstr "kompleet nei starte" + +msgid "Rec" +msgstr "" + +# +#, fuzzy +msgid "Reception settings" +msgstr "Untfangst Ynstellingen" + +# +msgid "Record" +msgstr "Opnimme" + +# +#, python-format +msgid "Record time limited due to conflicting timer %s" +msgstr "" + +# +msgid "Recorded files..." +msgstr "Opnâme bestannen..." + +# +msgid "Recording" +msgstr "An it opnimmen" + +msgid "Recording in progress" +msgstr "" + +# +msgid "Recording paths" +msgstr "" + +msgid "Recording type" +msgstr "" + +# +msgid "Recording(s) are in progress or coming up in few seconds!" +msgstr "In Opnimmen is dwaande of start binnen in pear sekonden!" + +# +msgid "Recordings" +msgstr "" + +# +msgid "Recordings always have priority" +msgstr "Opnimmen hat altiid foarrang" + +msgid "Red button..." +msgstr "" + +msgid "Reenter new PIN" +msgstr "" + +# +#, fuzzy +msgid "Refresh rate" +msgstr "Fernij faasje" + +# +msgid "Refresh rate selection." +msgstr "Fernij faasje seleksje" + +msgid "Regard deep standby as standby" +msgstr "" + +msgid "Relative" +msgstr "" + +# +msgid "Reload" +msgstr "" + +msgid "Reload black-/white lists" +msgstr "" + +msgid "Reloading bouquets and services..." +msgstr "" + +msgid "Remember last service in PiP" +msgstr "" + +msgid "Remember service PIN" +msgstr "" + +msgid "Remember these settings for each folder" +msgstr "" + +msgid "Reminder, you have chosen to save timeshift file." +msgstr "" + +# +#, fuzzy +msgid "Remote control type" +msgstr "Alderlik tasjoch type" + +msgid "Removal has completed." +msgstr "" + +# +msgid "Remove" +msgstr "" + +# +msgid "Remove a mark" +msgstr "Ferwiderje in Markeerder" + +# +#, fuzzy +msgid "Remove a nameserver entry" +msgstr "Ferwiderje in nammeserver" + +# +#, fuzzy +msgid "Remove bookmark" +msgstr "boekmerk ferwiderje" + +msgid "Remove completed timers after (days)" +msgstr "" + +# +msgid "Remove currently selected title" +msgstr "Ferwiderje it selektearre bestan" + +msgid "Remove items from trash can after (days)" +msgstr "" + +# +msgid "Remove plugins" +msgstr "Ferwiderje ynstekker" + +# +msgid "Remove title" +msgstr "Ferwiderje de titel" + +# +msgid "Removing" +msgstr "" + +# +#, python-format +msgid "Removing directory %s failed. (Maybe not empty.)" +msgstr "Ferwiderje fan map %s mislearre ( miskien is der net leech )" + +# +#, fuzzy +msgid "Removing partition table" +msgstr "Ferwiderje de titel" + +# +msgid "Rename" +msgstr "Omneame" + +msgid "Repeat" +msgstr "" + +# +#, fuzzy +msgid "Repeat type" +msgstr "Herhelje Type" + +# +msgid "Repeating event currently recording... What do you want to do?" +msgstr "Herhelle barren an it opnimmen... Wat wolle jo dwaan ?" + +# +msgid "Repeats" +msgstr "Herhellingen" + +msgid "Require authentication for http streams" +msgstr "" + +# +msgid "Required medium type:" +msgstr "" + +msgid "Rereading partition table" +msgstr "" + +msgid "Reserved" +msgstr "" + +# +msgid "Reset" +msgstr "Reset" + +# +msgid "Reset and renumerate title names" +msgstr "Titel nammen opnei oanmeitsje en nûmerje.." + +msgid "Reset playback position" +msgstr "" + +# +msgid "Reset video enhancement settings to system defaults?" +msgstr "" + +# +msgid "Reset video enhancement settings to your last configuration?" +msgstr "" + +# +msgid "Resolution" +msgstr "Skermresolusje" + +# +msgid "Restart" +msgstr "Opnij starte" + +# +msgid "Restart GUI now?" +msgstr "GUI no opnij starte?" + +msgid "Restart enigma" +msgstr "" + +# +msgid "Restart network" +msgstr "Netwurk nij starte" + +# +msgid "Restart test" +msgstr "Test nij starte" + +# +msgid "Restart your network connection and interfaces.\n" +msgstr "netwurk oanslúting en interfaces nij starte.\n" + +# +msgid "Restore" +msgstr "Werom sette" + +# +msgid "Restore backups" +msgstr "" + +# +msgid "Restore is running..." +msgstr "" + +# +msgid "Restore system settings" +msgstr "" + +# +#, fuzzy +msgid "Restoring..." +msgstr "an it opnimmen..." + +# +msgid "Resume from last position" +msgstr "Fierder gean fanôf lêste posysje" + +# +#, python-format +msgid "Resume position at %s" +msgstr "" + +# +#. TRANSLATORS: The string "Resuming playback" flashes for a moment +#. TRANSLATORS: at the start of a movie, when the user has selected +#. TRANSLATORS: "Resume from last position" as start behavior. +#. TRANSLATORS: The purpose is to notify the user that the movie starts +#. TRANSLATORS: in the middle somewhere and not from the beginning. +#. TRANSLATORS: (Some translators seem to have interpreted it as a +#. TRANSLATORS: question or a choice, but it is a statement.) +msgid "Resuming playback" +msgstr "Fierder gean mei ôfspieljen" + +# +msgid "Return to movie list" +msgstr "Werom nei de film lyst" + +# +msgid "Return to previous service" +msgstr "Werom nei foariche service" + +msgid "Reverse bouquet buttons" +msgstr "" + +msgid "Reverse list" +msgstr "" + +# +msgid "Rewind speeds" +msgstr "Werom spiel faasje" + +msgid "Rewrap teletext subtitles" +msgstr "" + +# +msgid "Right" +msgstr "Rjochts" + +msgid "Right from servicename" +msgstr "" + +msgid "Roll-off" +msgstr "" + +msgid "Romanian" +msgstr "" + +msgid "Root directory" +msgstr "" + +msgid "Rotor step position:" +msgstr "" + +# +msgid "Rotor turning speed" +msgstr "Rotor rotaasje faasje" + +msgid "Round start time on" +msgstr "" + +# +msgid "Russian" +msgstr "Russysk" + +# +msgid "S-Video" +msgstr "S Video" + +msgid "SID" +msgstr "" + +# +msgid "SINGLE LAYER DVD" +msgstr "" + +# +msgid "SNR" +msgstr "SNR" + +# +msgid "SNR:" +msgstr "SNR:" + +# +msgid "SSID:" +msgstr "" + +msgid "Same resolution as skin" +msgstr "" + +# +msgid "Sat" +msgstr "Sneon" + +# +msgid "Satellite" +msgstr "Satellyt" + +# +#, fuzzy +msgid "Satellite dish setup" +msgstr "Satellyt ynstellingen" + +# +msgid "Satellite equipment" +msgstr "" + +# +#, fuzzy +msgid "Satellite equipment setup" +msgstr "Satellyt ynstellingen" + +msgid "Satellite longitude:" +msgstr "" + +# +msgid "Satellites" +msgstr "Satellyten" + +# +msgid "Satfinder" +msgstr "Sat syker" + +# +msgid "Sats" +msgstr "Sats" + +# +msgid "Saturation" +msgstr "" + +# +msgid "Saturday" +msgstr "Sneon" + +# +msgid "Save" +msgstr "Opslaan" + +# +#, fuzzy +msgid "Save playlist" +msgstr "ofspiellyst opslaan" + +msgid "Save timeshift file" +msgstr "" + +msgid "Save timeshift file in movie directory" +msgstr "" + +# +msgid "Scaler sharpness" +msgstr "" + +# +#, fuzzy +msgid "Scaling mode" +msgstr "Skaal Moadus" + +msgid "Scan" +msgstr "" + +# +msgid "Scan " +msgstr "Sykje" + +# +#. TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' +#, fuzzy, python-format +msgid "Scan %s" +msgstr "Sykje" + +# +#. TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' +#, fuzzy, python-format +msgid "Scan %s band" +msgstr "Sykje op bân EU MID" + +# +msgid "Scan additional SR" +msgstr "Sykje op in oanfullende SR" + +# +#, fuzzy +msgid "Scan files..." +msgstr "Opnâme bestannen..." + +# +#, fuzzy +msgid "Scan wireless networks" +msgstr "Sykje Triitloaze netwerken" + +msgid "Scan your network for wireless access points and connect to them using your selected wireless device.\n" +msgstr "" + +#, python-format +msgid "Scanning %s..." +msgstr "" + +#. TRANSLATORS: The stb is performing a channel scan, progress percentage is printed in '%d' (and '%%' will show a single '%' symbol) +#, python-format +msgid "Scanning - %d%% completed" +msgid_plural "Scanning - %d%% completed" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "Scanning completed, %d channel found" +msgid_plural "Scanning completed, %d channels found" +msgstr[0] "" +msgstr[1] "" + +msgid "Scanning failed!" +msgstr "" + +msgid "Scanning..." +msgstr "" + +# +msgid "Scans default lamedbs sorted by satellite with a connected dish positioner" +msgstr "Sykje standert lame dbs, neffens de sattelyt mei in oanslúten panne ôfsteller" + +# +msgid "Search east" +msgstr "Sykje east" + +# +msgid "Search west" +msgstr "Sykje west" + +msgid "Searching" +msgstr "" + +msgid "Searching east ..." +msgstr "" + +# +msgid "Searching for available updates. Please wait..." +msgstr "" + +# +msgid "Searching for new installed or removed packages. Please wait..." +msgstr "" + +msgid "Searching west ..." +msgstr "" + +msgid "Second cable of motorized LNB" +msgstr "" + +# +msgid "Secondary DNS" +msgstr "Twadde DNS" + +# +msgid "Seek" +msgstr "Sykje" + +# +#, fuzzy +msgid "Seek backward" +msgstr "efterút oerslaan" + +# +#, fuzzy +msgid "Seek backward (enter time)" +msgstr "efterút oerslaan (tiid ynjaan)" + +# +#, fuzzy +msgid "Seek forward" +msgstr "foarút oerslaan" + +# +#, fuzzy +msgid "Seek forward (enter time)" +msgstr "foarút oerslaan (tiid ynjaan)" + +# +msgid "Select" +msgstr "" + +# +#, fuzzy +msgid "Select CAId" +msgstr "Kies hurde skiif" + +# +msgid "Select HDD" +msgstr "Kies hurde skiif" + +# +#, fuzzy +msgid "Select a bouquet" +msgstr "Kies in film" + +# +msgid "Select a movie" +msgstr "Kies in film" + +# +#, fuzzy +msgid "Select a network adapter" +msgstr "Kies Netwurk Adapter" + +# +#, fuzzy +msgid "Select a skin" +msgstr "Kies in film" + +# +#, fuzzy +msgid "Select a tuner" +msgstr "Kies in film" + +# +#, fuzzy +msgid "Select a wireless network" +msgstr "Sykje Triitloaze netwerken" + +msgid "Select action" +msgstr "" + +#, python-format +msgid "Select action for timer %s:" +msgstr "" + +msgid "Select all" +msgstr "" + +msgid "Select an image to be downloaded" +msgstr "" + +# +msgid "Select audio track" +msgstr "Kies lûd spoor" + +# +#, fuzzy +msgid "Select backup files" +msgstr "Kies in film" + +# +#, fuzzy +msgid "Select backup location" +msgstr "Kies Lokaasje" + +# +msgid "Select channel to record from" +msgstr "Kies kanaal om fan op te nimmen" + +msgid "Select copy destination for:" +msgstr "" + +msgid "Select default EPG type..." +msgstr "" + +msgid "Select desired image from feed list" +msgstr "" + +msgid "Select destination for:" +msgstr "" + +msgid "Select files for backup." +msgstr "" + +# +msgid "Select files/folders to backup" +msgstr "" + +msgid "Select input device" +msgstr "" + +msgid "Select input device." +msgstr "" + +# +msgid "Select interface" +msgstr "" + +# +#, fuzzy +msgid "Select location" +msgstr "Kies Lokaasje" + +# +#, fuzzy +msgid "Select movie" +msgstr "Kies in film" + +# +msgid "Select provider to add..." +msgstr "" + +# +msgid "Select refresh rate" +msgstr "Kies faasje fan fernije" + +msgid "Select satellites" +msgstr "" + +# +msgid "Select service to add..." +msgstr "" + +msgid "Select sort method:" +msgstr "" + +# +#, fuzzy +msgid "Select target folder" +msgstr "Kies doel map" + +# +#, fuzzy +msgid "Select the movie path" +msgstr "kies it film paad" + +# +#, fuzzy +msgid "Select upgrade source" +msgstr "Kies fideo moadus" + +# +msgid "Select upgrade source to edit." +msgstr "" + +# +msgid "Select video input with up/down buttons" +msgstr "" + +# +msgid "Select video mode" +msgstr "Kies fideo moadus" + +# +msgid "Select wireless network" +msgstr "" + +msgid "Select your provider, and press OK to start the scan" +msgstr "" + +msgid "Selecting satellites 1 (USALS)" +msgstr "" + +msgid "Selecting satellites 2 (USALS)" +msgstr "" + +# +msgid "Send DiSEqC only on satellite change" +msgstr "Stjoer DiSEqC alline by feroarjen fan satellyt" + +# +msgid "Separate titles with a main menu" +msgstr "Aparte triemen mei in haad menu" + +# +msgid "Sequence repeat" +msgstr "folch oarde herhelling" + +# +msgid "Serbian" +msgstr "" + +# +msgid "Service" +msgstr "Kanaal ynfo" + +# +msgid "Service has been added to the favourites." +msgstr "Kanaal is tafoege oan favorieten." + +# +msgid "Service has been added to the selected bouquet." +msgstr "Kanaal is tafoege oan selektearre bouquet." + +# +#, fuzzy +msgid "Service info" +msgstr "Kanaal ynformaasje" + +# +msgid "" +"Service invalid!\n" +"(Timeout reading PMT)" +msgstr "" +"Kanaal net jildig!\n" +"(Tiidsoerskriding lêzen fan PMT)" + +# +#, fuzzy +msgid "Service name" +msgstr "Kanaal sykje" + +# +msgid "" +"Service not found!\n" +"(SID not found in PAT)" +msgstr "" +"Service net fûn!\n" +"(SID net fûn yn PAT)" + +msgid "Service reference" +msgstr "" + +# +msgid "Service scan" +msgstr "Kanaal sykje" + +# +#, fuzzy +msgid "Service searching" +msgstr "Kanalen sykje" + +# +#, fuzzy +msgid "Service title mode" +msgstr "Kies fideo moadus" + +# +msgid "" +"Service unavailable!\n" +"Check tuner configuration!" +msgstr "Kanaal net beskikber!<br> Sjoch tuner ynstellingen nei." + +# +msgid "Services" +msgstr "Kanalen" + +msgid "Set default" +msgstr "" + +# +#, fuzzy +msgid "Set end time" +msgstr "Eintiid" + +msgid "Set fixed" +msgstr "" + +msgid "Set fps for external subtitles" +msgstr "" + +# +msgid "Set interface as default Interface" +msgstr "Set ynterface as standerd ynterface" + +msgid "Set limits" +msgstr "" + +msgid "Set the type of the progress indication in the channel selection screen." +msgstr "" + +msgid "Set time window to 1 hour" +msgstr "" + +msgid "Set time window to 2 hours" +msgstr "" + +msgid "Set time window to 3 hours" +msgstr "" + +msgid "Set time window to 4 hours" +msgstr "" + +msgid "Set time window to 5 hours" +msgstr "" + +msgid "Set time window to 6 hours" +msgstr "" + +# +#, fuzzy +msgid "Set voltage and 22KHz" +msgstr "Set spanning en 22 kHz" + +# +msgid "Settings" +msgstr "Ynstellingen" + +# +msgid "Setup" +msgstr "Ynstelle" + +msgid "Setup menu" +msgstr "" + +# +#, fuzzy +msgid "Setup mode" +msgstr "Ynstellingen Moadus" + +msgid "Setup your positioner" +msgstr "" + +# +#, fuzzy +msgid "Setup your satellite equipment" +msgstr "Satellyt ynstellingen" + +# +#, python-format +msgid "Shall the USB stick wizard proceed and program the image file %s into flash memory?" +msgstr "" + +# +msgid "Sharpness" +msgstr "" + +msgid "Short filenames" +msgstr "" + +msgid "Show EIT now/next in infobar" +msgstr "" + +# +#, fuzzy +msgid "Show EPG for current channel..." +msgstr "Ynfobalke sjen litte by barren wiksel" + +# +#, fuzzy +msgid "Show EPG..." +msgstr "EPG sjen litte..." + +msgid "Show Games show" +msgstr "" + +msgid "Show SNR percentage instead of dB value" +msgstr "" + +msgid "Show VCR scart on main menu" +msgstr "" + +# +#, fuzzy +msgid "Show WLAN status" +msgstr "WLAN status sjen litte" + +msgid "Show animation while busy" +msgstr "" + +# +#, fuzzy +msgid "Show background in radio mode" +msgstr "Eftergrûn ôfbylding" + +msgid "Show bouquet selection menu" +msgstr "" + +msgid "Show busy indicator when the system is busy." +msgstr "" + +msgid "Show channel numbers in channel selection" +msgstr "" + +msgid "Show columns" +msgstr "" + +msgid "Show crypto icons" +msgstr "" + +msgid "Show crypto info in infobar" +msgstr "" + +msgid "Show detailed event info" +msgstr "" + +# +#, fuzzy +msgid "Show event details" +msgstr "EPG details sjen litte" + +# +msgid "Show event-progress in channel selection" +msgstr "" + +# +#, fuzzy +msgid "Show extended description" +msgstr "útbreide beskriuwing sjen litte" + +# +#, fuzzy +msgid "Show extensions..." +msgstr "lit útbreidingen sjen..." + +msgid "Show icon for new/unseen items" +msgstr "" + +msgid "Show in extensions menu" +msgstr "" + +# +#, fuzzy +msgid "Show info" +msgstr "Ynformaasje sjen litte" + +# +#, fuzzy +msgid "Show info line" +msgstr "Infolyne sjen litte" + +# +msgid "Show infobar on channel change" +msgstr "Ynfobalke sjen litte by kanaal wiksel" + +# +msgid "Show infobar on event change" +msgstr "Ynfobalke sjen litte by barren wiksel" + +# +msgid "Show infobar on skip forward/backward" +msgstr "Ynfobalke sjen by rap foarút / efterút" + +msgid "Show latest commits on sourceforge" +msgstr "" + +msgid "Show message when recording starts" +msgstr "" + +# +#, fuzzy +msgid "Show movie lengths in movielist" +msgstr "Laad lengte fan films yn filmlyst" + +msgid "Show multi channel EPG" +msgstr "" + +msgid "Show picons in channel list" +msgstr "" + +# +msgid "Show positioner movement" +msgstr "Rotor beweching sjen litte" + +msgid "Show screensaver" +msgstr "" + +msgid "Show second infobar" +msgstr "" + +msgid "Show service type icons" +msgstr "" + +# +msgid "Show services beginning with" +msgstr "Kanalen sjen litte beginnent mei" + +# +#, fuzzy +msgid "Show shutdown menu" +msgstr "útskeakel menu sjen litte" + +msgid "Show single service EPG" +msgstr "" + +msgid "Show status icons in Movielist" +msgstr "" + +msgid "Show status icons in movie list" +msgstr "" + +msgid "Show status icons in movielist" +msgstr "" + +# +#, fuzzy +msgid "Show tag menu" +msgstr "label menu sjen litte" + +# +msgid "Show the radio player..." +msgstr "Radio spieler sjen litte..." + +# +msgid "Show the tv player..." +msgstr "TV Spieler sjen litte..." + +msgid "Show warning when timeshift is stopped" +msgstr "" + +# +msgid "Shows the state of your wireless LAN connection.\n" +msgstr "Status fan WLAN sjen litte.\n" + +# +#, fuzzy +msgid "Shuffle playlist" +msgstr "meitsje willekeurige ôfspiellyst" + +# +msgid "Shutdown" +msgstr "" + +msgid "Shutdown when in Standby" +msgstr "" + +msgid "Side by side" +msgstr "" + +msgid "Signal OK, proceeding" +msgstr "" + +msgid "Signal quality" +msgstr "" + +msgid "Signal strength:" +msgstr "" + +# +msgid "Signal: " +msgstr "" + +# +msgid "Similar" +msgstr "Gelykese" + +# +msgid "Similar broadcasts:" +msgstr "Gelykese utsjoeringen" + +# +msgid "Simple" +msgstr "Simpel" + +# +msgid "Simple titleset (compatibility for legacy players)" +msgstr "Simpele titelset (ek geskikt foar standaard spielers)" + +# +msgid "Single" +msgstr "Inkel" + +# +msgid "Single EPG" +msgstr "Inkele EPG" + +# +msgid "Single satellite" +msgstr "Ien satellyt" + +# +#, fuzzy +msgid "Single step (GOP)" +msgstr "Ien stap (GOP)" + +# +msgid "Single transponder" +msgstr "Ien transponder" + +msgid "Site latitude" +msgstr "" + +msgid "Site longitude" +msgstr "" + +# +msgid "Skin" +msgstr "" + +# +msgid "Skins" +msgstr "" + +# +#, fuzzy +msgid "Skip empty services" +msgstr "Befeilich kanalen" + +msgid "Skip internet connection check (disables automatic package installation)" +msgstr "" + +# +#, fuzzy +msgid "Sleep timer" +msgstr "Tiidstjoering" + +msgid "SleepTimer Configuration" +msgstr "" + +msgid "Sleeptimer" +msgstr "" + +# +#, fuzzy +msgid "Slide picture in loop" +msgstr "Plaatjes efter mekoar sjen litte" + +# +#, fuzzy +msgid "Slide show interval (sec.)" +msgstr "Slide foarstelling tiid (sec.)" + +# +#, python-format +msgid "Slot %d" +msgstr "Slot %d" + +msgid "Slovak" +msgstr "" + +# +msgid "Slovenian" +msgstr "" + +# +msgid "Slow" +msgstr "Langsaam" + +# +#, fuzzy +msgid "Slow motion speeds" +msgstr "Langsaam beweechjen faasje" + +# +#, fuzzy +msgid "Small progress" +msgstr "Dwaande" + +msgid "Social/Political/Economics" +msgstr "" + +msgid "SoftCam / CI" +msgstr "" + +msgid "Softcam type" +msgstr "" + +# +msgid "Software" +msgstr "" + +# +msgid "Software management" +msgstr "" + +msgid "Software manager setup" +msgstr "" + +# +msgid "Software restore" +msgstr "" + +# +msgid "Software update" +msgstr "" + +msgid "Softwaremanager information" +msgstr "" + +# +msgid "Some plugins are not available:\n" +msgstr "Inkele ynstekkers binne net anwêzig:\n" + +#, python-format +msgid "Sorry, %s has not been installed!" +msgstr "" + +msgid "Sorry, deleting directories can (for now) only be done through the trash can." +msgstr "" + +msgid "Sorry, no backups found!" +msgstr "" + +msgid "Sorry, no details available!" +msgstr "" + +# +#, fuzzy +msgid "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." +msgstr "" +"Sorry.. Jo Reserve kopie plak bestiit net\n" +"\n" +"Kies in oar plak aub..." + +msgid "Sort" +msgstr "" + +# +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort A-Z" +msgstr "Sorteer op A-Z" + +msgid "Sort by" +msgstr "" + +msgid "Sort list:" +msgstr "" + +# +#. TRANSLATORS: This must fit into the header button in the EPG-List +#, fuzzy +msgid "Sort time" +msgstr "Sorteer op Tiid" + +# +msgid "Sound" +msgstr "Lûd" + +# +#, fuzzy +msgid "Sound carrier" +msgstr "Lûd-drager" + +msgid "Source request" +msgstr "" + +# +msgid "South" +msgstr "Sud" + +# +msgid "Spanish" +msgstr "Spaans" + +msgid "Specify the end time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the end time until the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify the start time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the start time when the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify timeframe to ignore inactivity sleeptimer" +msgstr "" + +msgid "Specify timeframe to ignore the shutdown in standby" +msgstr "" + +# +msgid "Split preview mode" +msgstr "" + +msgid "Splitscreen" +msgstr "" + +msgid "Sports" +msgstr "" + +# +#, fuzzy +msgid "Standard" +msgstr "standert" + +msgid "Standart list" +msgstr "" + +# +msgid "Standby" +msgstr "Paraatmode" + +# +#, fuzzy +msgid "Standby / restart" +msgstr "Paraatmode / Nijstart" + +msgid "Standby after current event" +msgstr "" + +#, python-format +msgid "Standby fan %d PWM" +msgstr "" + +#, python-format +msgid "Standby fan %d voltage" +msgstr "" + +msgid "Standby in " +msgstr "" + +msgid "StandbyLED" +msgstr "" + +# +msgid "Start from the beginning" +msgstr "Start fanôf it begjin" + +msgid "Start offline decode" +msgstr "" + +# +msgid "Start recording?" +msgstr "Start opnimmen?" + +# +msgid "Start test" +msgstr "Start test" + +# +#, fuzzy +msgid "Start time" +msgstr "Starttiid" + +msgid "Start time to ignore inactivity sleeptimer" +msgstr "" + +msgid "Start time to ignore shutdown in standby" +msgstr "" + +# +#, fuzzy +msgid "Start timeshift" +msgstr "tiidskowen starte" + +msgid "Start with list screen" +msgstr "" + +# +msgid "Starting on" +msgstr "Starte op" + +msgid "Startup the set top box in standby" +msgstr "" + +msgid "Startup to Standby" +msgstr "" + +# +msgid "Step east" +msgstr "Stap nei east" + +# +msgid "Step west" +msgstr "Stap nei west" + +msgid "Stepped east" +msgstr "" + +msgid "Stepped west" +msgstr "" + +# +msgid "Stop" +msgstr "Stop" + +# +#, fuzzy +msgid "Stop PiP" +msgstr "stopje PiP" + +# +msgid "Stop current event and disable coming events" +msgstr "Stopje hjoeddeiske en ankommend barren" + +# +msgid "Stop current event but not coming events" +msgstr "Stopje hjoeddeiske mar net ankommend barren" + +# +#, fuzzy +msgid "Stop entry" +msgstr "stopje rigele" + +# +msgid "Stop playing this movie?" +msgstr "Stopje ôfspieljen fan dizze film?" + +msgid "Stop recording" +msgstr "" + +msgid "Stop recording and delete" +msgstr "" + +msgid "Stop service on return to movie list" +msgstr "" + +# +msgid "Stop test" +msgstr "Stop test" + +# +msgid "Stop testing plane after # failed transponders" +msgstr "" + +# +msgid "Stop testing plane after # successful transponders" +msgstr "" + +msgid "Stop timer recording" +msgstr "" + +# +#, fuzzy +msgid "Stop timeshift" +msgstr "tiidskowen stopje" + +# +#, fuzzy +msgid "Stop timeshift?" +msgstr "Tiidsskowen stopje?" + +msgid "Stopped" +msgstr "" + +msgid "Store at index" +msgstr "" + +# +msgid "Store position" +msgstr "Posysje opslaan" + +# +msgid "Stored position" +msgstr "Opsleine posysje" + +msgid "Stream" +msgstr "" + +msgid "Stream request" +msgstr "" + +msgid "Strongest position" +msgstr "" + +# +msgid "Subservice list..." +msgstr "UnderSender lyst..." + +# +msgid "Subservices" +msgstr "UnderSender" + +msgid "Subtitle Quickmenu" +msgstr "" + +# +#, fuzzy +msgid "Subtitle alignment" +msgstr "Undertitel seleksje" + +msgid "Subtitle border width" +msgstr "" + +msgid "Subtitle delay when timing is bad" +msgstr "" + +msgid "Subtitle delay when timing lacks" +msgstr "" + +# +#, fuzzy +msgid "Subtitle font size" +msgstr "Undertitels" + +msgid "Subtitle language selection 1" +msgstr "" + +msgid "Subtitle language selection 2" +msgstr "" + +msgid "Subtitle language selection 3" +msgstr "" + +msgid "Subtitle language selection 4" +msgstr "" + +# +#, fuzzy +msgid "Subtitle position" +msgstr "Undertitel seleksje" + +# +msgid "Subtitle selection" +msgstr "Undertitel seleksje" + +msgid "Subtitle selection..." +msgstr "" + +msgid "Subtitle settings" +msgstr "" + +# +msgid "Subtitles" +msgstr "Undertitels" + +# +msgid "Sun" +msgstr "Sne" + +# +msgid "Sunday" +msgstr "Snein" + +# +#, fuzzy +msgid "Swap PiP and main picture" +msgstr "Pip en haad skerm wikselje" + +# +#, fuzzy +msgid "Swap services" +msgstr "Kanalen wikselje" + +# +msgid "Swedish" +msgstr "Zweeds" + +msgid "Switch TV to correct input" +msgstr "" + +msgid "Switch between filelist/playlist" +msgstr "" + +msgid "Switch between normal mode and list mode" +msgstr "" + +msgid "Switch to HDMI in mode" +msgstr "" + +# +#, fuzzy +msgid "Switch to filelist" +msgstr "skeakelje nei triemlyst" + +msgid "Switch to next channel" +msgstr "" + +# +#, fuzzy +msgid "Switch to next channel in history" +msgstr "set folgende kanaal in skiednis" + +# +#, fuzzy +msgid "Switch to next sub service" +msgstr "Gjin nei folgende undersender" + +# +#, fuzzy +msgid "Switch to playlist" +msgstr "skeakelje nei ofspiellyst" + +# +#, fuzzy +msgid "Switch to previous channel" +msgstr "Gjin nei foarige undersender" + +# +#, fuzzy +msgid "Switch to previous channel in history" +msgstr "set foarich kanaal yn skiednis" + +# +#, fuzzy +msgid "Switch to previous sub service" +msgstr "Gjin nei foarige undersender" + +# +msgid "Switchable tuner types:" +msgstr "" + +msgid "Symbol rate" +msgstr "" + +msgid "Symbol rate:" +msgstr "" + +msgid "Sync failure moving back to origin !" +msgstr "" + +# +msgid "System" +msgstr "Systeem" + +# +#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) +msgid "TRANSLATOR_INFO" +msgstr "Oersetter ynfo" + +# +msgid "TS file is too large for ISO9660 level 1!" +msgstr "TS triem is te grut foar ISO 9660 level 1!" + +msgid "TSID" +msgstr "" + +msgid "TV physical address report" +msgstr "" + +msgid "TXT PID" +msgstr "" + +# +#, fuzzy +msgid "Table of contents for collection" +msgstr "Ynhalds tabel foar kolleksje" + +# +msgid "Tags" +msgstr "Merkers" + +msgid "Teletext subtitle color" +msgstr "" + +# +#, fuzzy +msgid "Temperature and fan control" +msgstr "Alderlik tasjoch" + +# +msgid "Terrestrial" +msgstr "Ether" + +# +msgid "Terrestrial provider" +msgstr "Ether útstjoerder" + +# +msgid "Test DiSEqC settings" +msgstr "" + +# +msgid "Test mode" +msgstr "Test moadus" + +msgid "Test the network configuration of your receiver.\n" +msgstr "" + +# +#, fuzzy +msgid "Test type" +msgstr "Test moadus" + +# +#, fuzzy +msgid "Text color" +msgstr "tekst kleur" + +msgid "Thai" +msgstr "" + +# +msgid "" +"Thank you for using the wizard.\n" +"Please press OK to continue." +msgstr "" + +msgid "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." +msgstr "" + +msgid "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?" +msgstr "" + +msgid "The PIN code has been changed successfully." +msgstr "" + +msgid "The PIN codes you entered are different." +msgstr "" + +msgid "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" +msgstr "" + +# +msgid "The backup failed. Please choose a different backup location." +msgstr "Backup is mislearre. Kies in oare backup lokaasje." + +#, python-format +msgid "" +"The current beta image might not be stable.\n" +"For more information see %s." +msgstr "" + +# +#, python-format +msgid "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." +msgstr "" + +# +#, python-format +msgid "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" +msgstr "" +"It folgende apparaat wie fûn:\n" +"\n" +"%s\n" +"\n" +"Wolle jo de USB flasher nei dizze stick skriuwe ?" + +# +msgid "The following files were found..." +msgstr "" + +msgid "The md5sum validation failed, the file may be corrupted!" +msgstr "" + +# +#, fuzzy +msgid "" +"The network wizard extension is not installed!\n" +"Please install it." +msgstr "" +"De WLAN ynstekker is net ynstallearre!\n" +"Ynstallearje dizze earst." + +# +#, python-format +msgid "The path %s already exists." +msgstr "It paad %s bestiit al." + +# +msgid "The pin code you entered is wrong." +msgstr "De ynjûne pinkode is ferkeard." + +# +#, python-format +msgid "The results have been written to %s." +msgstr "" + +# +msgid "The sleep timer has been activated." +msgstr "De sliep tiid klok is aktiveert." + +# +msgid "The sleep timer has been disabled." +msgstr "De sliep tiid klok is útskeakele" + +# +#, fuzzy +msgid "" +"The software management extension is not installed!\n" +"Please install it." +msgstr "" +"De WLAN ynstekker is net ynstallearre!\n" +"Ynstallearje dizze earst." + +#, python-format +msgid "The status of the current beta image could not be checked because %s can not be reached." +msgstr "" + +# +msgid "The timer file (timers.xml) is corrupt and could not be loaded." +msgstr "De tiidsbarrenlyst is korrupt en koe net laden wurde." + +# +#, fuzzy +msgid "The user interface of your receiver is restarting" +msgstr "Wachtsje oant it netwurk opnei start is..." + +msgid "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" +msgstr "" + +# +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." +msgstr "" + +# +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it." +msgstr "" +"De WLAN ynstekker is net ynstallearre!\n" +"Ynstallearje dizze earst." + +# +msgid "The wizard can backup your current settings. Do you want to do a backup now?" +msgstr "De gucheler kin jo ynstellingen efterút sette. Wolle jo no een backup meitsje ?" + +#, python-format +msgid "The wizard found a configuration backup. Do you want to restore your old settings from %s?" +msgstr "" + +# +msgid "The wizard is finished now." +msgstr "De gucheler is klear." + +# +msgid "There are at least " +msgstr "" + +#, python-format +msgid "There are at least %s updates available." +msgstr "" + +# +msgid "There are currently no outstanding actions." +msgstr "" + +# +msgid "There are no updates available." +msgstr "" + +msgid "There is no signal to lock on !" +msgstr "" + +# +msgid "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" +msgstr "" +"Blikber is der net genôch rûmte op de koazen partysje.\n" +"Wolle jo trochgean ?" + +# +msgid "This DVD RW medium is already formatted - reformatting will erase all content on the disc." +msgstr "Dit DVD RW medium is al formattearre. Wer opnei dwaan sil alle gegevens op disk wiskje." + +msgid "" +"This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!" +msgstr "" + +# +msgid "This plugin is installed." +msgstr "" + +# +msgid "This plugin is not installed." +msgstr "" + +# +msgid "This plugin will be installed." +msgstr "" + +# +msgid "This plugin will be removed." +msgstr "" + +#, python-format +msgid "This receiver cannot decode %s streams!" +msgstr "" + +# +#, fuzzy +msgid "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration" +msgstr "" +"Dizze test sjocht nei ynstelde nammeservers.\n" +"Krije jo in \"net befestige\" berjocht :\n" +"- Sjoch nei de DHCP, kabels/tridden en adapter ynstellingen\n" +"- By hânmatig ynstellen fan nammeservers, sjoch nei de ynjeftes yn de \"nammeservers\" konfiguraasje" + +# +#, fuzzy +msgid "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" +msgstr "" +"Dizze test sjocht nei in oanslúten LAN adapter.\n" +"Krije jo in \"net oanslúten\" berjocht :\n" +"- Sjoch nei wol of net oanslúten kabels/tridden\n" +"- Sjoch ot de kabel miskien net brutsen is" + +# +#, fuzzy +msgid "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" +msgstr "" +"Dizze test sjocht nei ynstelde IP adressen foar de LAN adapter.\n" +"Krije jo in \"net befestige\" berjocht :\n" +"- Is der in jildig IP adres ynstelt ?\n" +"- Sjoch nei de DHCP, kabels/tridden en adapter ynstellingen" + +# +#, fuzzy +msgid "" +"This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." +msgstr "" +"Dizze test sjocht ot de LAN adapter ynsteld is foar automatysk IP Adres ferkrije troch DHCP.\n" +"Krije jo in \"útskeakele\" berjocht :\n" +"- In hânmatig IP adres is ynstelt ?\n" +"- Is de ynjûne IP ynformaasje goed, yn it Adapterynstellingen menu ?\n" +"Krije jo in \"ynskeakele\" berjocht :\n" +"- Is der ek een DHCP server aktyf yn jo netwurk ?" + +# +#, fuzzy +msgid "This test detects your configured LAN adapter." +msgstr "Dizze test syket nei de ynstelde LAN-Adapter" + +msgid "" +"This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\n" +"Are you sure?" +msgstr "" + +# +msgid "Three" +msgstr "Trije" + +# +msgid "Threshold" +msgstr "Drompel" + +# +msgid "Thu" +msgstr "Tong" + +# +msgid "Thumbnails" +msgstr "Tumkegrutte" + +# +msgid "Thursday" +msgstr "Tongersdei" + +# +msgid "Time" +msgstr "Tiid" + +# +#, fuzzy +msgid "Time scale" +msgstr "Tiidsbarren seleksje" + +# +msgid "Timer" +msgstr "Tiidssjtoering" + +msgid "Timer Overview" +msgstr "" + +# +#, fuzzy +msgid "Timer edit" +msgstr "Tiidsbarren bewurkje" + +# +#, fuzzy +msgid "Timer editor" +msgstr "Tiidsbarren bewurker" + +# +msgid "Timer entry" +msgstr "Tiidsbarren item" + +# +msgid "Timer log" +msgstr "Tiidsbarren log" + +# +msgid "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" +msgstr "" +"Tiidstjoerings conflicten fûn yn timers.xml\n" +"Graach nei sjen en meitsje!" + +# +#, fuzzy +msgid "Timer overview" +msgstr "Tiidsbarren item" + +# +#, fuzzy +msgid "Timer recording location" +msgstr "feroarje opnim tiiden" + +# +msgid "Timer sanity error" +msgstr "Tiidsbarren kontrole flater" + +# +msgid "Timer selection" +msgstr "Tiidsbarren seleksje" + +msgid "Timer selection..." +msgstr "" + +# +#, fuzzy +msgid "Timer type" +msgstr "Tiidsbarren type" + +# +msgid "Timeshift" +msgstr "Tiidsskowen" + +msgid "Timeshift Live" +msgstr "" + +# +msgid "Timeshift location" +msgstr "" + +# +msgid "Timeshift not possible!" +msgstr "Tiidsskowen is net mooglik !" + +# +msgid "Timezone" +msgstr "Tiidszone" + +# +msgid "Title" +msgstr "Titel" + +# +msgid "Title properties" +msgstr "Titel eigenskippen" + +# +msgid "Titleset mode" +msgstr "Titelset moadus" + +msgid "To audio selection" +msgstr "" + +msgid "To subtitle selection" +msgstr "" + +msgid "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." +msgstr "" + +# +msgid "Today" +msgstr "Hjoed" + +# +#, fuzzy +msgid "Toggle a cut mark at the current position" +msgstr "merker oan/út op dizze posysje" + +# +#, fuzzy +msgid "Tone amplitude" +msgstr "Toan moadus" + +# +msgid "Tone mode" +msgstr "Toan moadus" + +# +msgid "Toneburst" +msgstr "Toan piek" + +# +msgid "Toneburst A/B" +msgstr "Toneburst A/B" + +msgid "Top and bottom" +msgstr "" + +# +msgid "Track" +msgstr "Nummer" + +# +msgid "Translation" +msgstr "Oersetting" + +# +msgid "Translation:" +msgstr "Oersetting:" + +msgid "Translations" +msgstr "" + +# +msgid "Transmission mode" +msgstr "Oerstjoeren type" + +# +msgid "Transponder" +msgstr "Transponder" + +# +#, fuzzy +msgid "Transponder type" +msgstr "Transponder type" + +msgid "Trash can" +msgstr "" + +# +msgid "Tries left:" +msgstr "Oantal kearen besykjen oer:" + +# +msgid "Try to find used transponders in cable network.. please wait..." +msgstr "Besykje brûkte transponders te finen yn kabel netwurk.. " + +# +msgid "Trying to download a new packetlist. Please wait..." +msgstr "" + +# +msgid "Tue" +msgstr "Tiis" + +# +msgid "Tuesday" +msgstr "Tiisdei" + +# +msgid "Tune" +msgstr "Ofstimme" + +# +#, fuzzy +msgid "Tune and focus" +msgstr "Tuner status" + +# +msgid "Tune failed!" +msgstr "Ofstimme mislearre !" + +# +msgid "Tuner" +msgstr "Tuner" + +# +msgid "Tuner configuration" +msgstr "Tuner ynstellingen" + +msgid "Tuner is not supported" +msgstr "" + +# +#, fuzzy +msgid "Tuner slot" +msgstr "Tuner Slot" + +# +msgid "Tuner status" +msgstr "Tuner status" + +# +#, fuzzy, python-format +msgid "Tuner status %s" +msgstr "Tuner status" + +# +msgid "Tuner type" +msgstr "" + +# +msgid "Turkish" +msgstr "Turks" + +msgid "Turn on the power LED during standby." +msgstr "" + +msgid "Turning step size" +msgstr "" + +# +msgid "Two" +msgstr "Twa" + +# +msgid "Type" +msgstr "" + +# +msgid "Type of scan" +msgstr "Type fan sykjen" + +# +msgid "USALS" +msgstr "USALS" + +msgid "USALS calibration" +msgstr "" + +# +#, fuzzy +msgid "USB stick" +msgstr "USB Stick" + +# +msgid "USB stick wizard" +msgstr "USB stick gûcheler" + +msgid "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" + +# +msgid "Undo install" +msgstr "" + +# +msgid "Undo uninstall" +msgstr "" + +msgid "Unencrypted" +msgstr "" + +# +msgid "UnhandledKey" +msgstr "" + +# +msgid "Unicable" +msgstr "" + +# +msgid "Unicable LNB" +msgstr "" + +# +msgid "Unicable Martix" +msgstr "" + +# +msgid "Uninstall" +msgstr "" + +# +msgid "Universal LNB" +msgstr "Unifersele LNB" + +msgid "Unknown" +msgstr "" + +msgid "Unmount" +msgstr "" + +# +msgid "Unsupported" +msgstr "" + +# +msgid "Update" +msgstr "Bywurkje" + +msgid "Update and ask to reboot" +msgstr "" + +msgid "Update and reboot (recommended)" +msgstr "" + +# +#, fuzzy +msgid "Update channel list only" +msgstr "set folgende kanaal in skiednis" + +#, python-format +msgid "Update completed, %d package was installed." +msgid_plural "Update completed, %d packages were installed." +msgstr[0] "" +msgstr[1] "" + +msgid "Update completed. Do you want to reboot your receiver?" +msgstr "" + +msgid "Update failed. Your receiver does not have a working internet connection." +msgstr "" + +msgid "Update has completed." +msgstr "" + +# +msgid "Updatefeed not available." +msgstr "" + +# +msgid "Updating software catalog" +msgstr "" + +# +msgid "Upgrading" +msgstr "An it bywurkjen" + +# +msgid "Use" +msgstr "Brûk" + +# +msgid "Use DHCP" +msgstr "DHCP brûke" + +msgid "Use EIT EPG information when it is available." +msgstr "" + +msgid "Use FreeSat EPG information when it is available." +msgstr "" + +msgid "Use MHW EPG information when it is available." +msgstr "" + +msgid "Use Netmed EPG information when it is available." +msgstr "" + +msgid "Use TV remote control" +msgstr "" + +# +#, fuzzy +msgid "Use USALS for this sat" +msgstr "USALS foar dizze satellyt brûke" + +msgid "Use ViaSat EPG information when it is available." +msgstr "" + +msgid "Use Virgin EPG information when it is available." +msgstr "" + +# +msgid "Use a gateway" +msgstr "In gateway brûke" + +msgid "Use fastscan channel names" +msgstr "" + +msgid "Use fastscan channel numbering" +msgstr "" + +msgid "Use frequency or channel" +msgstr "" + +msgid "Use individual settings for each directory" +msgstr "" + +# +#, fuzzy +msgid "Use interface" +msgstr "Brûk ynterface" + +msgid "Use official channel numbering" +msgstr "" + +msgid "Use original DVB subtitle position" +msgstr "" + +msgid "Use original teletext position" +msgstr "" + +# +msgid "Use power measurement" +msgstr "Fermogensmjitting brûke" + +# +#, fuzzy +msgid "Use the network wizard to configure selected network adapter" +msgstr "Bruk de netwurk gûcheler om it netwurk yn te stellen\n" + +# +#, fuzzy +msgid "Use the network wizard to configure your network\n" +msgstr "Bruk de netwurk gûcheler om it netwurk yn te stellen\n" + +# +msgid "Use the up/down keys on your remote control to select an option. After that, press OK." +msgstr "Knoppen op en del brûke om in opsje te kiezen. Dêrnei druk Ok" + +# +#, fuzzy +msgid "Use the wizard to set up basic features" +msgstr "Gucheler foar basis ynstellingen brûke" + +# +#, fuzzy +msgid "Use these input device settings?" +msgstr "Slúte sunder op te slaan ?" + +# +#, fuzzy +msgid "Use these settings?" +msgstr "Nammeserver ynstellingen" + +# +msgid "Use this video enhancement settings?" +msgstr "" + +# +#, fuzzy +msgid "Use trash can in movielist" +msgstr "Werom nei de film lyst" + +# +msgid "Used service scan type" +msgstr "Brukte type kanaal sykjen" + +msgid "User - bouquets" +msgstr "" + +# +msgid "User defined" +msgstr "Gebruker ynstelling" + +msgid "User defined transponder" +msgstr "" + +# +#, fuzzy +msgid "User interface" +msgstr "Brûk ynterface" + +# +msgid "Username" +msgstr "" + +#, python-format +msgid "Using LNB %d" +msgstr "" + +msgid "Using fixed address" +msgstr "" + +#, python-format +msgid "Using tuner %s" +msgstr "" + +msgid "Usually when the subtitle language is the same as the audio language, the subtitles will not be used. Enable this option to allow these subtitles to be used." +msgstr "" + +# +msgid "VCR scart" +msgstr "VCR scart" + +# +msgid "VMGM (intro trailer)" +msgstr "VMGM (yntro fan film)" + +# +msgid "Vertical" +msgstr "" + +msgid "Vertical turning speed" +msgstr "" + +msgid "Video PID" +msgstr "" + +# +msgid "Video enhancement preview" +msgstr "" + +# +msgid "Video enhancement settings" +msgstr "" + +# +msgid "Video enhancement setup" +msgstr "" + +# +#, fuzzy +msgid "Video fine tuning" +msgstr "Fideo fyn ynstellen" + +# +#, fuzzy +msgid "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." +msgstr "" +"Fideo yngong seleksje\n" +"\n" +"Druk OK wannear jo dit sjen kinne op jo TV (of kies in oare yngong).\n" +"\n" +"De folgende yngong wurd automatysk probearre yn 10 seconden." + +# +msgid "Video mode selection." +msgstr "Fideo moadus seleksje" + +# +#, fuzzy +msgid "Video output" +msgstr "Fideo útgong" + +# +#, fuzzy +msgid "Video setup" +msgstr "Fideo ynstellingen" + +# +#, fuzzy +msgid "Video wizard" +msgstr "Fideo gucheler" + +#, python-format +msgid "Video: %s fps" +msgstr "" + +msgid "VideoMode" +msgstr "" + +msgid "Videocodec" +msgstr "" + +msgid "Videoformat" +msgstr "" + +msgid "Videosize" +msgstr "" + +# +msgid "View Rass interactive..." +msgstr "Rass interaktief sjen litte" + +# +msgid "View details" +msgstr "" + +# +msgid "View list of available " +msgstr "" + +# +msgid "View list of available CommonInterface extensions" +msgstr "" + +# +msgid "View list of available EPG extensions." +msgstr "" + +# +msgid "View list of available Satellite equipment extensions." +msgstr "" + +# +msgid "View list of available communication extensions." +msgstr "" + +# +msgid "View list of available default settings" +msgstr "" + +msgid "View list of available display and userinterface extensions." +msgstr "" + +# +msgid "View list of available multimedia extensions." +msgstr "" + +# +msgid "View list of available networking extensions" +msgstr "" + +# +msgid "View list of available recording extensions" +msgstr "" + +# +msgid "View list of available skins" +msgstr "" + +# +msgid "View list of available software extensions" +msgstr "" + +# +msgid "View list of available system extensions" +msgstr "" + +# +#, fuzzy +msgid "View photos..." +msgstr "lit útbreidingen sjen..." + +# +msgid "View teletext..." +msgstr "tiletekst toane..." + +msgid "View video CD..." +msgstr "" + +# +#, fuzzy +msgid "Virtual keyboard" +msgstr "Virtueel Toetseboerd" + +# +msgid "Voltage mode" +msgstr "Spanning mode" + +# +msgid "Volume" +msgstr "Lûdsterkte" + +# +msgid "W" +msgstr "W" + +# +msgid "WEP" +msgstr "WEP" + +msgid "WLAN connection" +msgstr "" + +# +msgid "WPA" +msgstr "WPA" + +# +msgid "WPA or WPA2" +msgstr "WPA of WPA2" + +# +msgid "WPA2" +msgstr "WPA2" + +# +msgid "WSS on 4:3" +msgstr "WSS by 4:3" + +# +msgid "Waiting" +msgstr "Oan it wachtsjen" + +msgid "Waiting for mount" +msgstr "" + +msgid "Waiting for partition" +msgstr "" + +msgid "Wakeup" +msgstr "" + +msgid "Wakeup TV from standby" +msgstr "" + +msgid "Wakeup receiver for start timer" +msgstr "" + +msgid "Wakeup receiver from standby" +msgstr "" + +msgid "Wakeup signal from TV" +msgstr "" + +msgid "Wakeup type" +msgstr "" + +msgid "Warning: no LNB; using factory defaults." +msgstr "" + +# +#, fuzzy +msgid "Watch movies..." +msgstr "Opname films ôfspielje..." + +# +#, fuzzy +msgid "Watch recordings..." +msgstr "an it opnimmen..." + +# +msgid "Wed" +msgstr "Woa" + +# +msgid "Wednesday" +msgstr "Woansdei" + +# +msgid "Weekday" +msgstr "Wiekdei" + +msgid "Weighted position" +msgstr "" + +# +#, fuzzy +msgid "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." +msgstr "" +"Wolkom by de Cutlist bewurker.\n" +"\n" +"Sykje oant it begjin fan wat jo fuorthelje wolle. Druk OK, kies start cut.\n" +"\n" +"Dan kies oant it ein, druk OK, kies ein cut. Klear.." + +msgid "Welcome to the image upgrade wizard. The wizard will assist you in upgrading the firmware of your receiver by providing a backup facility for your current settings and a short explanation of how to upgrade your firmware." +msgstr "" + +msgid "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" +msgstr "" + +msgid "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." +msgstr "" + +# +msgid "Welcome..." +msgstr "Wolkom..." + +# +msgid "West" +msgstr "West" + +msgid "West limit set" +msgstr "" + +# +msgid "What do you want to scan?" +msgstr "Wat wolle jo ôfsykje ?" + +msgid "When enabled the PiP can be closed by the exit button." +msgstr "" + +msgid "When enabled the arrow buttons around the OK button will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled the left, right, CH+/-, B+/-, P+/- buttons will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled you can specify a timeframe to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "When enabled you can specify a timeframe were the inactivity sleeptimer is ignored. Not the detection is disabled during this timeframe but the inactivity timeout is disabled" +msgstr "" + +msgid "When enabled you can zap channels with the CH+/-, B+/-, P+/- buttons instead of opening the channel selection list." +msgstr "" + +msgid "When enabled you get the channel selection list via the OK button, the infobar toggle is then transfered to exit button" +msgstr "" + +msgid "When enabled, AIT data will be included in http streams. This allows a client receiver to use HbbTV." +msgstr "" + +msgid "When enabled, ECM data will be included in http streams. This allows a client receiver to do the descrambling." +msgstr "" + +msgid "When enabled, EIT data will be included in http streams. This allows a client receiver to show EPG." +msgstr "" + +msgid "When enabled, a popup message will be shown when a movie has finished and the next one will start." +msgstr "" + +msgid "When enabled, a popup message will be shown when a recording starts." +msgstr "" + +msgid "When enabled, a radio background image will be visible while listening to a radio channel." +msgstr "" + +msgid "When enabled, a recording is allowed to interrupt live tv, when there are no free tuners." +msgstr "" + +msgid "When enabled, a warning will be displayed and the user will get an option to stop or to continue the timeshift." +msgstr "" + +msgid "When enabled, authentication is required to watch http streams." +msgstr "" + +msgid "When enabled, channel numbering will start at '1' for each bouquet." +msgstr "" + +msgid "When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen." +msgstr "" + +msgid "When enabled, continue to the next bouquet when the last channel of the current bouquet is reached while changing channels." +msgstr "" + +msgid "When enabled, deleted recordings are moved to the trash can, instead of being deleted immediately." +msgstr "" + +msgid "When enabled, display the EIT now/next eventdata in infobar. When disabled, display now/next eventdata from the EPG cache instead." +msgstr "" + +msgid "When enabled, encryption info will be shown in the infobar (when supported by the skin)." +msgstr "" + +msgid "When enabled, error messages related to the Common Interface module will not be shown." +msgstr "" + +msgid "When enabled, error messages related to zapping will not be shown." +msgstr "" + +msgid "When enabled, external subtitles will be always turned on for playback movie." +msgstr "" + +msgid "When enabled, graphical DVB subtitles are preferred over teletext subtitles, when both types are available." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be centered horizontally." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be displayed at their original position." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be displayed in yellow, instead of the original color." +msgstr "" + +msgid "When enabled, http streams are descrambled on the server side. The (remote) client receiver does not have to do descrambling." +msgstr "" + +msgid "When enabled, it is possible to leave the movieplayer with exit." +msgstr "" + +msgid "When enabled, measure power consumption to detect when the rotor stops turning (when supported by the tuner)." +msgstr "" + +msgid "When enabled, number markers will be hiden." +msgstr "" + +msgid "When enabled, services may be grouped in multiple bouquets." +msgstr "" + +msgid "When enabled, show channel numbers in the channel selection screen." +msgstr "" + +msgid "When enabled, subtitles for the hearing impaired can be used." +msgstr "" + +msgid "When enabled, subtitles for the hearing impaired will be preferred over normal subtitles, when both types are available." +msgstr "" + +msgid "When enabled, teletext pages will be cached, allowing faster access." +msgstr "" + +msgid "When enabled, teletext subtitles will be displayed at their original position." +msgstr "" + +msgid "When enabled, the VCR scart option will be shown on the main menu" +msgstr "" + +msgid "When enabled, the channel selection list will be hidden while listening to a radio channel" +msgstr "" + +msgid "When enabled, the infobar will be displayed when a new event starts." +msgstr "" + +msgid "When enabled, the infobar will be displayed when changing channels." +msgstr "" + +msgid "When enabled, the infobar will be displayed when skipping forwards/backwards during media playback." +msgstr "" + +msgid "When enabled, the lenght of each recording will be shown in the movielist (this might cause some additional loading time)." +msgstr "" + +msgid "When enabled, the original line breaks will be removed from the teletext subtitles." +msgstr "" + +msgid "When enabled, the receiver will automatically use the audio track which you selected before." +msgstr "" + +msgid "When enabled, the receiver will automatically use the subtitles which you selected before." +msgstr "" + +msgid "When enabled, the receiver will no longer monitor the tuned transponder for possible changes. Do not use this option unless you know what you are doing." +msgstr "" + +msgid "When enabled, the receiver will select an AC3 track (when available)." +msgstr "" + +msgid "When enabled, the receiver will select an AC3+ track (when available)." +msgstr "" + +msgid "When enabled, timeshift starts automatically in background after specified time." +msgstr "" + +# +#, fuzzy +msgid "When enabled, use DHCP for the IP configuration." +msgstr "Iepenje nammeserver konfiguraasje" + +msgid "When enabled, your receiver will detect activity on the VCR SCART input." +msgstr "" + +msgid "When nonzero, a recording will start earlier than the starting time indicated by the EPG." +msgstr "" + +msgid "When nonzero, a recording will stop later than the ending time indicated by the EPG." +msgstr "" + +msgid "When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture." +msgstr "" + +msgid "When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture." +msgstr "" + +# +msgid "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" +msgstr "" + +# +msgid "Where do you want to backup your settings?" +msgstr "Wêr wolle jo de gegevens opslaan?" + +# +msgid "Where to save temporary timeshift recordings?" +msgstr "Wêr moatte it opnimmen mei tiidsferskowing opslein wurde ?" + +# +msgid "Wireless LAN" +msgstr "" + +# +#, fuzzy +msgid "Wireless network" +msgstr "Triidloas netwurk" + +# +#, fuzzy +msgid "Wireless network configuration..." +msgstr "Netwurk configuraasje" + +msgid "Wireless network connection setup" +msgstr "" + +msgid "Wireless network connection setup." +msgstr "" + +msgid "Wireless network state" +msgstr "" + +msgid "With popup" +msgstr "" + +msgid "Without popup" +msgstr "" + +msgid "Would you like to install a softcam?" +msgstr "" + +# +msgid "Write error while recording. Disk full?\n" +msgstr "Skriuw flater by it opnimmen. Skiif fol ?\n" + +# +msgid "Write failed!" +msgstr "Skriuw flater!" + +# +msgid "YPbPr" +msgstr "YPbPr" + +# +msgid "Year" +msgstr "Jier" + +msgid "Yellow DVB subtitles" +msgstr "" + +# +msgid "Yes" +msgstr "Ja" + +msgid "Yes and save" +msgstr "" + +msgid "Yes and save in movie dir" +msgstr "" + +# +msgid "Yes to all" +msgstr "" + +msgid "Yes, always" +msgstr "" + +# +msgid "Yes, and delete this movie" +msgstr "Ja, en ferwiderje dizze film" + +# +msgid "Yes, backup my settings!" +msgstr "Ja, myn ynstellingen extra bewarje" + +msgid "Yes, delete this movie and return to movie list" +msgstr "" + +# +msgid "Yes, do a manual scan now" +msgstr "Ja, no hânmatig sykje" + +# +msgid "Yes, do an automatic scan now" +msgstr "Ja, no automatysk sykje" + +# +msgid "Yes, do another manual scan now" +msgstr "Ja, no nochris hânmatig sykje" + +# +msgid "Yes, perform a shutdown now." +msgstr "Ja, no útskeakelje" + +# +msgid "Yes, restore the settings now" +msgstr "Ja, no de ynstellingen werom sette" + +# +msgid "Yes, returning to movie list" +msgstr "Ja, werom nei de film lyst" + +msgid "Yesterday" +msgstr "" + +#, python-format +msgid "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" +msgstr "" + +# +msgid "You can cancel the installation." +msgstr "" + +# +msgid "You can cancel the removal." +msgstr "" + +msgid "You can continue watching TV etc. while this is running." +msgstr "" + +# +msgid "You can install this plugin." +msgstr "" + +msgid "You can only burn receiver recordings!" +msgstr "" + +# +msgid "You can remove this plugin." +msgstr "" + +# +msgid "You cannot delete this!" +msgstr "Jo kinne dit net ferwiderje!" + +msgid "You didn't select a channel to record from." +msgstr "" + +# +msgid "You have chosen to backup your settings. Please press OK to start the backup now." +msgstr "" + +# +msgid "You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased." +msgstr "Jo hawwe koazen in neie .NFI opstart USB stick te meitsjen. Dit sil de USB opnei partitionearje en sa sil alle data ferlên gean." + +# +msgid "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." +msgstr "" + +# +#, python-format +msgid "You have to wait %s!" +msgstr "Jo moatte %s wachtsje!" + +msgid "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." +msgstr "" + +msgid "You system does not support ext4" +msgstr "" + +# +msgid "Your backup succeeded. We will now continue to explain the further upgrade process." +msgstr "It extra bewarjen is slagge. Wy gjinne jo fierder mei utlizzen fan it bywurk proces." + +# +msgid "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" +msgstr "" + +# +msgid "Your current collection will get lost!" +msgstr "" + +# +msgid "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." +msgstr "" +"Jo foarprocessor software moat bywurke wurde\n" +"Druk Ok om te begjinnen." + +msgid "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" + +# +msgid "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." +msgstr "" + +#, python-format +msgid "Your internet connection is working (ip: %s)" +msgstr "" + +# +msgid "Your network configuration has been activated." +msgstr "Netwurk ynstellingen binne no aktief." + +msgid "Your receiver does not have an internet connection" +msgstr "" + +msgid "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" +msgstr "" + +msgid "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." +msgstr "" + +msgid "Your receiver is rebooting" +msgstr "" + +msgid "Your receiver is shutting down" +msgstr "" + +msgid "Your receiver is shutting down. Please stand by..." +msgstr "" + +msgid "Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver." +msgstr "" + +msgid "Your receiver will got to stand by due to the sleeptimer." +msgstr "" + +msgid "Your receiver will got to standby due to inactivity." +msgstr "" + +msgid "Your receiver will restart after pressing OK on your remote control." +msgstr "" + +# +msgid "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." +msgstr "" + +msgid "Zap" +msgstr "" + +# +msgid "Zap back to previously tuned service?" +msgstr "" + +# +msgid "Zap back to service before positioner setup?" +msgstr "Werom zappe nei kanaal foar rotor ynstellingen?" + +# +msgid "Zap back to service before tuner setup?" +msgstr "" + +msgid "Zap focus to Picture in Picture" +msgstr "" + +msgid "Zap focus to main screen" +msgstr "" + +msgid "Zap mode" +msgstr "" + +msgid "Zap to selected channel" +msgstr "" + +msgid "Zap to selected channel, or show detailed event info (depends on configuration)" +msgstr "" + +# +msgid "[alternative edit]" +msgstr "[alternatief bewurkje]" + +# +msgid "[bouquet edit]" +msgstr "[bouquet bewurkje]" + +# +msgid "[favourite edit]" +msgstr "[favorieten bewurkje]" + +# +msgid "[move mode]" +msgstr "[Ferpleats moadus]" + +# +msgid "a gui to assign services/providers to common interface modules" +msgstr "" + +# +msgid "a gui to assign services/providers/caids to common interface modules" +msgstr "" + +# +msgid "abort alternatives edit" +msgstr "alternatieven bewurkjen ôfbrekke" + +# +msgid "abort bouquet edit" +msgstr "boeket bewurkjen ôfbrekke" + +# +msgid "abort favourites edit" +msgstr "favoriet bewurkje ôfbrekke" + +# +msgid "about to start" +msgstr "op it punt om te starten" + +# +msgid "activate network adapter configuration" +msgstr "" + +# +msgid "add alternatives" +msgstr "alernatief tafoegje" + +# +msgid "add bookmark" +msgstr "boekmerk tafoegje" + +# +msgid "add bouquet" +msgstr "boeket tafoegje" + +# +msgid "add marker" +msgstr "marker tafoegje" + +# +msgid "add service to bouquet" +msgstr "kanaal tafoegje oan bouquet" + +# +msgid "add service to favourites" +msgstr "kanaal tafoegje oan favorieten" + +# +msgid "add to parental protection" +msgstr "âlderlik tasjoch tafoegje " + +msgid "adult movie/drama" +msgstr "" + +# +msgid "advanced" +msgstr "afansjearre" + +msgid "adventure/western/war" +msgstr "" + +msgid "advertisement/shopping" +msgstr "" + +msgid "after " +msgstr "" + +# +#, fuzzy +msgid "alphabetic" +msgstr "sortearje op alfabet" + +msgid "alphabetic reverse" +msgstr "" + +msgid "alternative" +msgstr "" + +msgid "always" +msgstr "" + +msgid "and select next channel" +msgstr "" + +msgid "and select previous channel" +msgstr "" + +msgid "arts/culture (without music, general)" +msgstr "" + +msgid "arts/culture magazine" +msgstr "" + +msgid "athletics" +msgstr "" + +# +msgid "audio tracks" +msgstr "audio spoor" + +# +msgid "auto" +msgstr "auto" + +# +#, fuzzy +msgid "automatic" +msgstr "Automatysk" + +# +msgid "back" +msgstr "werom" + +# +msgid "background image" +msgstr "Eftergrûn ôfbylding" + +msgid "ballet" +msgstr "" + +#, python-format +msgid "bc%s" +msgstr "" + +# +msgid "better" +msgstr "better" + +# +msgid "black" +msgstr "swart" + +msgid "black & white" +msgstr "" + +# +msgid "blacklist" +msgstr "swarte lyst" + +# +msgid "blue" +msgstr "blauw" + +msgid "broadcasting/press" +msgstr "" + +# +#, fuzzy +msgid "by date" +msgstr "sortearje op datum" + +msgid "cartoon/puppets" +msgstr "" + +msgid "center" +msgstr "" + +msgid "centered" +msgstr "" + +msgid "centered, wrapped" +msgstr "" + +# +msgid "chapters" +msgstr "Haadstikken" + +msgid "childrens's/youth program (general)" +msgstr "" + +# +msgid "circular left" +msgstr "circular links" + +# +msgid "circular right" +msgstr "circular rjochts" + +msgid "comedy" +msgstr "" + +# +msgid "complex" +msgstr "complex" + +# +msgid "config menu" +msgstr "konfiguraasje menu" + +# +msgid "confirmed" +msgstr "befestigt" + +# +msgid "connected" +msgstr "oanslúten" + +# +msgid "continue" +msgstr "gjea fierder" + +msgid "cooking" +msgstr "" + +# +msgid "copy to bouquets" +msgstr "kopieer nei boeketten" + +# +msgid "create directory" +msgstr "map meitsje" + +#, python-format +msgid "currently installed image: %s" +msgstr "" + +# +msgid "daily" +msgstr "eltse dei" + +# +msgid "day" +msgstr "dei" + +msgid "default" +msgstr "" + +# +msgid "delete cut" +msgstr "ferwiderje stik" + +msgid "delete..." +msgstr "" + +msgid "descramble and record ecm" +msgstr "" + +msgid "detective/thriller" +msgstr "" + +# +msgid "disable" +msgstr "utskeakelje" + +# +msgid "disable move mode" +msgstr "ferpleats modus útskeakelje" + +# +msgid "disabled" +msgstr "útskeakele" + +# +msgid "disconnected" +msgstr "net oanslúten" + +msgid "discussion/interview/debate" +msgstr "" + +# +msgid "do nothing" +msgstr "doch neat" + +msgid "documentary" +msgstr "" + +msgid "don't descramble, record ecm" +msgstr "" + +# +msgid "done!" +msgstr "Klear!" + +msgid "east" +msgstr "" + +msgid "economics/social advisory" +msgstr "" + +# +msgid "edit alternatives" +msgstr "bewurkje alternatief" + +msgid "education/science/factual topics (general)" +msgstr "" + +# +msgid "empty" +msgstr "leeg" + +# +msgid "enable" +msgstr "ynskeakelje" + +# +msgid "enable bouquet edit" +msgstr "bewurkjen boeket oan" + +# +msgid "enable favourite edit" +msgstr "bewurkjen favorieten oan" + +# +msgid "enable move mode" +msgstr "ferpleatsen mode oan" + +# +msgid "enabled" +msgstr "ynskeakele" + +# +msgid "end alternatives edit" +msgstr "bewurkjen alternatief út" + +# +msgid "end bouquet edit" +msgstr "bewurkjen boeket út" + +# +msgid "end cut here" +msgstr "stop stik hjirre" + +# +msgid "end favourites edit" +msgstr "bewurkjen favoriet út" + +msgid "entertainment (10-16 year old)" +msgstr "" + +msgid "entertainment (6-14 year old)" +msgstr "" + +# +msgid "equal to" +msgstr "gelyk oan" + +msgid "equestrian" +msgstr "" + +# +msgid "exit DVD player or return to file browser" +msgstr "DVD spieler ferlitte en werom nei triem browser" + +msgid "exit movielist" +msgstr "" + +# +msgid "exit network adapter configuration" +msgstr "netwurk adapter konfiguraasje ferlitte" + +# +msgid "exit networkadapter setup menu" +msgstr "netwurkadapter ynstellingen menu ferlitte" + +msgid "experimental film/video" +msgstr "" + +msgid "false" +msgstr "" + +msgid "fashion" +msgstr "" + +# +msgid "fileformats (BMP, PNG, JPG, GIF)" +msgstr "triemformaat (BMP, PNG, JPG, GIF)" + +# +msgid "filename" +msgstr "triemnamme" + +msgid "film/cinema" +msgstr "" + +msgid "fine arts" +msgstr "" + +# +msgid "fine-tune your display" +msgstr "it skerm fyn tune" + +msgid "fitness & health" +msgstr "" + +# +#, fuzzy +msgid "flat alphabetic" +msgstr "sortearje op alfabet" + +# +#, fuzzy +msgid "flat alphabetic reverse" +msgstr "sortearje op alfabet" + +msgid "folk/traditional music" +msgstr "" + +msgid "football/soccer" +msgstr "" + +msgid "foreign countries/expeditions" +msgstr "" + +# +msgid "forward to the next chapter" +msgstr "foarút nei it folgende haadstik" + +# +msgid "free" +msgstr "frij" + +msgid "from" +msgstr "" + +msgid "further education" +msgstr "" + +msgid "game show/quiz/contest" +msgstr "" + +msgid "gardening" +msgstr "" + +# +msgid "go to deep standby" +msgstr "gean nei djip paraatstand" + +# +msgid "go to standby" +msgstr "gean nei paraatstand" + +# +msgid "grab this frame as bitmap" +msgstr "" + +# +msgid "green" +msgstr "grien" + +msgid "handicraft" +msgstr "" + +msgid "height" +msgstr "" + +# +msgid "help..." +msgstr "help..." + +# +msgid "horizontal" +msgstr "horizontal" + +msgid "information/education/school program" +msgstr "" + +# +msgid "init module" +msgstr "CI-Module initialisearje" + +# +msgid "init modules" +msgstr "" + +# +msgid "insert mark here" +msgstr "tuskenfoegje marker" + +msgid "invalid type" +msgstr "" + +msgid "jazz" +msgstr "" + +# +msgid "jump back to the previous title" +msgstr "werom nei de foarige titel" + +# +msgid "jump forward to the next title" +msgstr "foarút nei de folgende titel" + +msgid "languages" +msgstr "" + +# +msgid "leave movie player..." +msgstr "film ôfspieljen ferlitte..." + +# +msgid "left" +msgstr "links" + +msgid "left, wrapped" +msgstr "" + +msgid "leisure hobbies (general)" +msgstr "" + +# +msgid "length" +msgstr "lengte" + +msgid "limit ..., aborting !" +msgstr "" + +# +msgid "list style compact" +msgstr "lyst styl kompakt" + +# +msgid "list style compact with description" +msgstr "lyst styl kompakt mei beskriuwing" + +# +msgid "list style default" +msgstr "lyst styl standert" + +# +msgid "list style single line" +msgstr "lyst styl ien rigele" + +msgid "literature" +msgstr "" + +msgid "live broadcast" +msgstr "" + +# +msgid "locked" +msgstr "op slot" + +# +msgid "loopthrough to" +msgstr "trochskeakele nei" + +msgid "magazines/reports/documentary" +msgstr "" + +# +msgid "manual" +msgstr "hânmatig" + +msgid "martial sports" +msgstr "" + +msgid "medicine/physiology/psychology" +msgstr "" + +# +msgid "menu" +msgstr "menu" + +# +msgid "mins" +msgstr "min" + +# +msgid "minutes" +msgstr "minuten" + +# +msgid "month" +msgstr "maand" + +msgid "motor sport" +msgstr "" + +msgid "motoring" +msgstr "" + +# +msgid "move down to last entry" +msgstr "Nei it lêste menu item gean" + +# +msgid "move down to next entry" +msgstr "Nei it folgende menu item gean" + +# +msgid "move up to first entry" +msgstr "Neit it earste menu item gean" + +# +msgid "move up to previous entry" +msgstr "Nei it foarige menu item " + +msgid "movie/drama (general)" +msgstr "" + +# +msgid "multinorm" +msgstr "multinorm" + +msgid "music/ballet/dance (general)" +msgstr "" + +msgid "musical/opera" +msgstr "" + +msgid "nature/animals/environment" +msgstr "" + +# +msgid "never" +msgstr "nea" + +msgid "new media" +msgstr "" + +msgid "news magazine" +msgstr "" + +msgid "news/current affairs (general)" +msgstr "" + +msgid "news/weather report" +msgstr "" + +# +msgid "no" +msgstr "nee" + +# +msgid "no CAId selected" +msgstr "" + +# +msgid "no CI slots found" +msgstr "" + +# +msgid "no module found" +msgstr "gjin CI-Module fûn" + +msgid "no storage devices found" +msgstr "" + +# +msgid "none" +msgstr "gjin" + +msgid "normal" +msgstr "" + +# +msgid "not configured" +msgstr "" + +# +msgid "not locked" +msgstr "net op slot" + +msgid "not supported" +msgstr "" + +# +msgid "not used" +msgstr "" + +# +msgid "nothing connected" +msgstr "neat anslúten" + +# +msgid "of a DUAL layer medium used." +msgstr "fan in DUAL layer medium brûkt" + +# +msgid "of a SINGLE layer medium used." +msgstr "fan in SINGLE layer medium brûkt" + +# +msgid "off" +msgstr "uit" + +msgid "offset is" +msgstr "" + +# +msgid "on" +msgstr "oan" + +# +msgid "on READ ONLY medium." +msgstr "fan in ALLINNE-LEZE medium" + +msgid "on end of movie" +msgstr "" + +# +msgid "once" +msgstr "ienmalig" + +msgid "only from deep standby" +msgstr "" + +msgid "only from standby" +msgstr "" + +msgid "open EPG..." +msgstr "" + +msgid "open Info..." +msgstr "" + +# +msgid "open nameserver configuration" +msgstr "Iepenje nammeserver konfiguraasje" + +msgid "original" +msgstr "" + +msgid "original language" +msgstr "" + +# +msgid "pass" +msgstr "trochgean" + +msgid "performing arts" +msgstr "" + +msgid "play as picture in picture" +msgstr "" + +msgid "play in mainwindow" +msgstr "" + +# +msgid "please press OK when ready" +msgstr "druk Ok wanneer klear" + +# +msgid "please wait, loading picture..." +msgstr "plaatsje wurd laden..." + +msgid "popular culture/traditional arts" +msgstr "" + +msgid "pre-school children's program" +msgstr "" + +msgid "receiver software because updates are available." +msgstr "" + +# +msgid "record" +msgstr "opnimme" + +# +msgid "recording..." +msgstr "an it opnimmen..." + +# +msgid "red" +msgstr "read" + +msgid "religion" +msgstr "" + +msgid "remarkable people" +msgstr "" + +# +msgid "remove after this position" +msgstr "nei dizze posysje alles ferwiderje" + +# +msgid "remove all alternatives" +msgstr "ferwiderje alle alternatieven" + +# +msgid "remove all new found flags" +msgstr "ferwiderje nij fûn flaggen" + +# +msgid "remove before this position" +msgstr "foar dizze posysje alles ferwiderje" + +# +msgid "remove bookmark" +msgstr "boekmerk ferwiderje" + +# +msgid "remove directory" +msgstr "map ferwiderje" + +# +msgid "remove entry" +msgstr "ferwiderje yngong" + +# +msgid "remove from parental protection" +msgstr "ferwiderje út alderlik tasjoch" + +# +msgid "remove new found flag" +msgstr "ferwiderje nij fun flagge" + +# +msgid "remove selected satellite" +msgstr "selektearre sat ferwiderje" + +# +msgid "remove this mark" +msgstr "ferwiderje punt" + +msgid "rename entry" +msgstr "" + +# +msgid "repeat playlist" +msgstr "ôfspyllyst opnei spylje" + +# +msgid "repeated" +msgstr "herhelle" + +msgid "reverse by date" +msgstr "" + +# +msgid "rewind to the previous chapter" +msgstr "werom spile nei it foarige haadstik" + +# +msgid "right" +msgstr "rjochts" + +msgid "right, wrapped" +msgstr "" + +msgid "rock/pop" +msgstr "" + +msgid "romance" +msgstr "" + +# +msgid "save last directory on exit" +msgstr "Lêste map opslaan by ôfsluten" + +# +msgid "save playlist on exit" +msgstr "Ofspiellyst opslaan by ôfsluten" + +# +msgid "scan state" +msgstr "sykjen status" + +msgid "science fiction/fantasy/horror" +msgstr "" + +# +msgid "second cable of motorized LNB" +msgstr "twadde kabel fan LNB-motor" + +# +msgid "seconds" +msgstr "seconden" + +# +msgid "select" +msgstr "kies" + +# +msgid "select CAId's" +msgstr "" + +msgid "select EPG..." +msgstr "" + +msgid "select Info..." +msgstr "" + +# +msgid "select menu entry" +msgstr "Kies menu item" + +# +msgid "select movie" +msgstr "kies film" + +msgid "select the movie path" +msgstr "" + +msgid "serious music/classic music" +msgstr "" + +msgid "serious/classical/religious/historical movie/drama" +msgstr "" + +msgid "service PIN" +msgstr "" + +msgid "set as startup service" +msgstr "" + +msgid "setup PIN" +msgstr "" + +# +msgid "show DVD main menu" +msgstr "DVD haadmenu sjen litte" + +msgid "show all tags" +msgstr "" + +# +msgid "show alternatives" +msgstr "alternatieven sjen litte" + +# +msgid "show event details" +msgstr "EPG details sjen litte" + +msgid "show extended description" +msgstr "" + +msgid "show mediaplayer on mainmenu" +msgstr "" + +msgid "show softwaremanager in setup menu" +msgstr "" + +msgid "show softwaremanager on blue button" +msgstr "" + +msgid "show tag menu" +msgstr "" + +# +msgid "show transponder info" +msgstr "transponder ynfo sjen litte" + +msgid "show/game show (general)" +msgstr "" + +msgid "shuffle" +msgstr "" + +# +msgid "shut down" +msgstr "" + +# +msgid "simple" +msgstr "simpel" + +# +msgid "skip backward" +msgstr "efterút oerslaan" + +# +msgid "skip forward" +msgstr "foarút oerslaan" + +msgid "soap/melodram/folkloric" +msgstr "" + +msgid "social/political issues/economics (general)" +msgstr "" + +msgid "social/spiritual science" +msgstr "" + +msgid "sorting of playlists" +msgstr "" + +# +msgid "special characters" +msgstr "" + +msgid "special events" +msgstr "" + +msgid "special format data DVD (HDTV compatible)" +msgstr "" + +msgid "sports (general)" +msgstr "" + +msgid "sports magazine" +msgstr "" + +# +msgid "standard" +msgstr "standert" + +# +msgid "start cut here" +msgstr "start stik hjirre" + +# +msgid "start directory" +msgstr "start map" + +msgid "stepsize" +msgstr "" + +# +msgid "stereo" +msgstr "stereo" + +msgid "stop using as startup service" +msgstr "" + +# +msgid "switch to bookmarks" +msgstr "skeakelje nei boekmerkers" + +# +msgid "switch to filelist" +msgstr "skeakelje nei triemlyst" + +# +msgid "switch to the next angle" +msgstr "" + +# +msgid "switch to the next audio track" +msgstr "skeakelje nei it folgende lûd spoor" + +# +msgid "switch to the next subtitle language" +msgstr "skeakelje nei de folgende undertiteling taal" + +msgid "talk show" +msgstr "" + +msgid "team sports" +msgstr "" + +msgid "technology/natural science" +msgstr "" + +# +msgid "template file" +msgstr "sjabloon triem" + +msgid "tennis/squash" +msgstr "" + +# +msgid "this recording" +msgstr "dit opnimmen" + +# +msgid "this service is protected by a parental control pin" +msgstr "dit kanaal is net beskikber troch it alderlik tasjoch." + +# +msgid "toggle time, chapter, audio, subtitle info" +msgstr "tiid, haadstik, lûd en undertiteling ynfo omskeakelje" + +msgid "top" +msgstr "" + +msgid "tourism/travel" +msgstr "" + +msgid "true" +msgstr "" + +msgid "unavailable" +msgstr "" + +# +msgid "unconfirmed" +msgstr "net befestigt" + +msgid "undefined" +msgstr "" + +# +msgid "unknown" +msgstr "" + +# +msgid "unknown service" +msgstr "unbeneame kanaal" + +msgid "unpublished" +msgstr "" + +# +msgid "until standby/restart" +msgstr "" + +# +msgid "user defined" +msgstr "brûkers ynstelling" + +msgid "variety show" +msgstr "" + +# +msgid "vertical" +msgstr "ferticaal" + +# +msgid "wait for ci..." +msgstr "wachtsje op ci..." + +# +msgid "wait for mmi..." +msgstr "wachtsje op mmi" + +# +msgid "waiting" +msgstr "oan it wachtsjen" + +msgid "water sport" +msgstr "" + +# +msgid "weekly" +msgstr "wikeliks" + +msgid "west" +msgstr "" + +msgid "when PiPzap enabled zap channel down..." +msgstr "" + +msgid "when PiPzap enabled zap channel up..." +msgstr "" + +msgid "white" +msgstr "" + +# +msgid "whitelist" +msgstr "wyte lyst" + +msgid "width" +msgstr "" + +msgid "winter sport" +msgstr "" + +msgid "wireless network interface" +msgstr "" + +#, python-format +msgid "with %d error" +msgid_plural "with %d errors" +msgstr[0] "" +msgstr[1] "" + +# +msgid "working" +msgstr "" + +# +msgid "yellow" +msgstr "giel" + +# +msgid "yes" +msgstr "ja" + +# +msgid "yes (keep feeds)" +msgstr "ja (feeds hâlde)" + +# +msgid "zap" +msgstr "knip" + +msgid "zap and record" +msgstr "" + +# +msgid "zapped" +msgstr "knipt" + +# +#~ msgid "AA" +#~ msgstr "AA" + +# +#~ msgid "AB" +#~ msgstr "AB" + +# +#, fuzzy +#~ msgid "Activate PiP" +#~ msgstr "PIP ynskeakelje" + +# +#, fuzzy +#~ msgid "Add/remove timer for current event" +#~ msgstr "opnimmen tafoegje (stopje nei dit barren)" + +# +#, fuzzy +#~ msgid "All satellites" +#~ msgstr "Alle Satellyten" + +# +#~ msgid "BA" +#~ msgstr "BA" + +# +#~ msgid "BB" +#~ msgstr "BB" + +# +#~ msgid "Behavior of 'pause' when paused" +#~ msgstr "Gedrach fan 'pause' yn pause mode" + +# +#~ msgid "Committed DiSEqC command" +#~ msgstr "Oanwizen DiSEqC kommando" + +# +#~ msgid "DiSEqC repeats" +#~ msgstr "DiSEqC herhellingen" + +# +#~ msgid "No satellite frontend found!!" +#~ msgstr "Gjin sattelyt foarein fûn." + +# +#~ msgid "Send DiSEqC" +#~ msgstr "Stjoer DiSEqC" + +# +#, fuzzy +#~ msgid "Switch next channel" +#~ msgstr "folgend kanaal" + +# +#~ msgid "Uncommitted DiSEqC command" +#~ msgstr "Net oanwizen DiSEqC kommando" + +# +#~ msgid "Zap back to service before satfinder?" +#~ msgstr "Werom zappe nei kanaal foar satellytsyker?" diff --git a/po/he.po b/po/he.po new file mode 100644 index 0000000..aa08446 --- /dev/null +++ b/po/he.po @@ -0,0 +1,8876 @@ +# Arabic translations for tuxbox-enigma package. +# Copyright (C) 2005 THE tuxbox-enigma'S COPYRIGHT HOLDER +# This file is distributed under the same license as the tuxbox-enigma package. +# Automatically generated, 2005. +# +msgid "" +msgstr "" +"Project-Id-Version: tuxbox-enigma 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-07-21 19:08+0200\n" +"PO-Revision-Date: 2012-03-08 10:40+0330\n" +"Last-Translator: \n" +"Language-Team: Arabic <moustafagamal@hotmail.com>\n" +"Language: he\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Pootle 2.0.3\n" +"X-Poedit-Language: Arabic\n" +"X-Poedit-Country: EGYPT\n" +"X-Poedit-SourceCharset: iso-8859-15\n" + +msgid "" +"\n" +"Advanced options and settings." +msgstr "" +"\n" +"אפשרויות מתקדמות והגדרות" + +msgid "" +"\n" +"After pressing OK, please wait!" +msgstr "" +"\n" +"!אחרי לחיצה על אשר,נא המתן" + +msgid "" +"\n" +"Backup your receiver settings." +msgstr "" + +# +msgid "" +"\n" +"Edit the upgrade source address." +msgstr "" +"\n" +"ערוך את כתובת מקור העדכון" + +msgid "" +"\n" +"Manage extensions or plugins for your receiver" +msgstr "" + +msgid "" +"\n" +"Online update of your receiver software." +msgstr "" + +# +msgid "" +"\n" +"Press OK on your remote control to continue." +msgstr "" +"\n" +"לחץ אשר על השלט בכדי להמשיך" + +# +msgid "" +"\n" +"Restore your backups by date." +msgstr "" +"\n" +"שיחזור גיבויים לפי תאריך" + +msgid "" +"\n" +"Restore your receiver settings." +msgstr "" + +msgid "" +"\n" +"Restore your receiver with a new firmware." +msgstr "" + +# +msgid "" +"\n" +"Scan for local extensions and install them." +msgstr "" +"\n" +"סרוק לתוספות מקומיות והתקן אותם" + +msgid "" +"\n" +"Select your backup device.\n" +"Current device: " +msgstr "" +"\n" +".בחר את התקן הגיבוי\n" +":ההתקן הנוכחי " + +msgid "" +"\n" +"View, install and remove available or installed packages." +msgstr "" +"\n" +".הצג, התקן או הסר חבילות זמינות או מותקנות " + +msgid " (PiP)" +msgstr "" + +msgid " (Radio)" +msgstr "" + +msgid " (TV)" +msgstr "" + +msgid " (disabled)" +msgstr "" + +msgid " (higher than any auto)" +msgstr "" + +msgid " (higher than rotor any auto)" +msgstr "" + +msgid " (lower than any auto)" +msgstr "" + +# +msgid " extensions." +msgstr "תוספות" + +msgid " ms" +msgstr "ms" + +msgid " packages selected." +msgstr "חבילות נבחרו" + +# +msgid " updates available." +msgstr "עדכונים זמינים" + +#. TRANSLATORS: short time representation hour:minute +#, python-format +msgid "%2d:%02d" +msgstr "" + +#. TRANSLATORS: full time representation hour:minute:seconds +#, python-format +msgid "%2d:%02d:%02d" +msgstr "" + +msgid "%A %d %B" +msgstr "" + +#. TRANSLATORS: long date representations dayname daynum monthname in strftime() format! See 'man strftime' +msgid "%A %e %B" +msgstr "" + +#. TRANSLATORS: full date representation dayname daynum monthname year in strftime() format! See 'man strftime' +msgid "%A %e %B %Y" +msgstr "" + +msgid "%H:%M" +msgstr "%H:%M" + +#. TRANSLATORS: short date representation short dayname daynum short monthname in strftime() format! See 'man strftime' +msgid "%a %e/%m" +msgstr "" + +#. TRANSLATORS: long date representation short dayname daynum short monthname hour:minute in strftime() format! See 'man strftime' +msgid "%a %e/%m %-H:%M" +msgstr "" + +# +#. TRANSLATORS: Intermediate scanning result, '%d' channel(s) have been found so far +#, fuzzy, python-format +msgid "%d channel found" +msgid_plural "%d channels found" +msgstr[0] "!שירותים נמצאו %d" +msgstr[1] "!שירותים נמצאו %d" + +#, python-format +msgid "%d file" +msgid_plural "%d files" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "" +msgstr[1] "" + +# +#, fuzzy, python-format +msgid "%d job is running in the background!" +msgid_plural "%d jobs are running in the background!" +msgstr[0] "!עבודות רצות ברקע %d " +msgstr[1] "!עבודות רצות ברקע %d " + +# +#, python-format +msgid "%d min" +msgstr "דקות %d" + +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d minutes" +msgstr "" + +#, python-format +msgid "%d pixel wide" +msgid_plural "%d pixels wide" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "" +msgstr[1] "" + +#, fuzzy, python-format +msgid "%d subdirectory" +msgid_plural "%d subdirectories" +msgstr[0] "התחל תיקיה" +msgstr[1] "התחל תיקיה" + +# +#, fuzzy, python-format +msgid "%d wireless network found!" +msgid_plural "%d wireless networks found!" +msgstr[0] "נמצאה רשת אלחוטית אחת" +msgstr[1] "נמצאה רשת אלחוטית אחת" + +msgid "%d-%b-%Y %-H:%M" +msgstr "" + +msgid "%d-%m" +msgstr "" + +msgid "%d.%B %Y" +msgstr "%d.%B %Y" + +#. TRANSLATORS: VFD hour:minute daynum short monthname in strftime() format! See 'man strftime' +msgid "%k:%M %e/%m" +msgstr "" + +# +#, fuzzy, python-format +msgid "%s %s free disk space" +msgstr "מקום פנוי בכונן הקשיח" + +#, python-format +msgid "%s (%s)\n" +msgstr "%s (%s)\n" + +#. TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. +#, python-format +msgid "%s is no longer used. Should it be deleted?" +msgstr "" + +# +#, fuzzy, python-format +msgid "%s updated package available" +msgid_plural "%s updated packages available" +msgstr[0] "עדכונים זמינים" +msgstr[1] "עדכונים זמינים" + +#, python-format +msgid "%s%d min" +msgstr "" + +#, python-format +msgid "%s/%s: %s" +msgstr "" + +msgid "(ZAP)" +msgstr "(זיפזופ)" + +msgid "(empty)" +msgstr "(ריק)" + +msgid "(show optional DVD audio menu)" +msgstr "(הצג תפריטי קול אפשריים לדי וי די)" + +msgid "* Only available if more than one interface is active." +msgstr "אפשרי רק מעל לממשק אחד פעיל *" + +msgid "/s" +msgstr "" + +msgid "0" +msgstr "0" + +msgid "1" +msgstr "1" + +msgid "1.0" +msgstr "1.0" + +msgid "1.1" +msgstr "1.1" + +msgid "1.2" +msgstr "1.2" + +# +msgid "12V output" +msgstr "12V output" + +# +msgid "13 V" +msgstr "13 V" + +msgid "16:10" +msgstr "16:10" + +# +msgid "16:10 Letterbox" +msgstr "16:10 Letterbox" + +# +msgid "16:10 PanScan" +msgstr "16:10 PanScan" + +msgid "16:9" +msgstr "16:9" + +# +msgid "16:9 Letterbox" +msgstr "16:9 Letterbox" + +msgid "16:9 always" +msgstr "16:9 תמיד" + +# +msgid "18 V" +msgstr "18 V" + +msgid "2" +msgstr "2" + +msgid "23.976" +msgstr "" + +msgid "24" +msgstr "" + +msgid "25" +msgstr "" + +msgid "29.97" +msgstr "" + +msgid "3" +msgstr "3" + +msgid "30" +msgstr "" + +msgid "3d mode" +msgstr "" + +msgid "4" +msgstr "4" + +msgid "4:3" +msgstr "4:3" + +# +msgid "4:3 Letterbox" +msgstr "4:3 Letterbox" + +# +msgid "4:3 PanScan" +msgstr "4:3 PanScan" + +msgid "5" +msgstr "5" + +msgid "6" +msgstr "6" + +msgid "7" +msgstr "7" + +msgid "8" +msgstr "8" + +msgid "9" +msgstr "9" + +#, python-format +msgid ": %s" +msgstr "" + +# +msgid "<Current movielist location>" +msgstr "<מיקום רשימת סרטים בפועל>" + +# +msgid "<Default movie location>" +msgstr "<מיקום רשימת סרטים ברירת מחדל>" + +# +msgid "<Last timer location>" +msgstr "<מיקום אחרון לטיימר>" + +msgid "<unknown>" +msgstr "<לא ידוע>" + +msgid "??" +msgstr "؟؟" + +# +msgid "A" +msgstr "A" + +#, fuzzy, python-format +msgid "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" +msgstr "" +"עודכן מאז ההתקנה (%s) קובץ ההגדרות.\n" +"? האם אתה מעוניין לשמור על הגירסה שלך" + +#, python-format +msgid "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" +msgstr "" +"עודכן מאז ההתקנה (%s) קובץ ההגדרות.\n" +"? האם אתה מעוניין לשמור על הגירסה שלך" + +msgid "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" + +msgid "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" + +msgid "A graphical EPG for all services of an specific bouquet" +msgstr "תצוגה גראפית לאי.פי.גי לכל התחנות בתיקייה ספציפית" + +#, python-format +msgid "" +"A record has been started:\n" +"%s" +msgstr "" +":הקלטה התחילה\n" +"%s" + +msgid "" +"A recording is currently running.\n" +"What do you want to do?" +msgstr "" +"הקלטה כרגע פועלת \n" +"? מה אתה מעוניין לעשות" + +msgid "A recording is currently running. Please stop the recording before trying to configure the positioner." +msgstr ".הקלטה פועלת כרגע, בבקשה עצור את ההקלטה לפני הגדרת הפוזישינר" + +msgid "A recording is currently running. Please stop the recording before trying to scan." +msgstr "" + +msgid "A recording is currently running. Please stop the recording before trying to start the satfinder." +msgstr ".הקלטה פועלת כרגע, בבקשה עצור את ההקלטה לפני הפעלת הסאטפיינדר" + +#, python-format +msgid "A required tool (%s) was not found." +msgstr " (%s) :הכלי הבא - לא נמצא" + +# +msgid "A search for available updates is currently in progress." +msgstr "בדיקת עדכונים זמינים בפועל" + +msgid "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" +msgstr "" +".נמצא ממשק רשת משני מוגדר\n" +"\n" +"האם ברצונך להשבית את הממשק השני" + +msgid "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" + +msgid "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" + +# +msgid "A small overview of the available icon states and actions." +msgstr "" + +msgid "" +"A timer failed to record!\n" +"Disable TV and try again?\n" +msgstr "" +"הטיימר לא הצליח להקליט\n" +"?האם להשבית את הטלויזיה ולנסות שוב\n" + +# +#, fuzzy +msgid "A/V settings" +msgstr "A/V הגדרות" + +msgid "AC3/DTS downmix" +msgstr "" + +# +msgid "Abort" +msgstr "חדל" + +# +msgid "About" +msgstr "אודות" + +# +msgid "About..." +msgstr "...אודות" + +# +msgid "Accesspoint:" +msgstr ":נקודת גישה" + +# +msgid "Action on long powerbutton press" +msgstr "הפעולה שתתבצע בלחיצה ארוכה" + +# +msgid "Action on short powerbutton press" +msgstr "הפעולה שתתבצע בלחיצה קצרה" + +# +msgid "Activate Picture in Picture" +msgstr "הפעל תמונה בתוך תמונה" + +#, fuzzy +msgid "Activate current configuration" +msgstr "activate current configuration" + +# +msgid "Activate network settings" +msgstr "הפעל הגדרות רשת" + +# +#, fuzzy +msgid "Activate the configured network settings." +msgstr "הפעל הגדרות רשת" + +# +msgid "Adapter settings" +msgstr "הגדרת מתאם" + +# +msgid "Add" +msgstr "הוסף" + +# +msgid "Add Bookmark" +msgstr "הוסף סימניה" + +# +msgid "Add a mark" +msgstr "הוסף סמן" + +#, fuzzy +msgid "Add a nameserver entry" +msgstr "add a nameserver entry" + +# +msgid "Add a new title" +msgstr "הוסף כותרת חדשה" + +#, fuzzy +msgid "Add bookmark" +msgstr "add bookmark" + +#, fuzzy +msgid "Add directory to playlist" +msgstr "add directory to playlist" + +#, fuzzy +msgid "Add file to playlist" +msgstr "add file to playlist" + +#, fuzzy +msgid "Add files to playlist" +msgstr "add files to playlist" + +msgid "Add more details to the crash log" +msgstr "" + +#, fuzzy +msgid "Add provider" +msgstr "add Provider" + +#, fuzzy +msgid "Add recording (enter recording duration)" +msgstr "הקלט - הזן משך ההקלטה" + +#, fuzzy +msgid "Add recording (enter recording endtime)" +msgstr "הקלט - הכנס שעת סיום" + +#, fuzzy +msgid "Add recording (indefinitely)" +msgstr "הקלט" + +#, fuzzy +msgid "Add recording (stop after current event)" +msgstr "הקלט - עצור אחרי סיום התוכנית הנוכחית" + +#, fuzzy +msgid "Add service" +msgstr "add Service" + +# +msgid "Add timer" +msgstr "הוסף טיימר" + +msgid "Add title" +msgstr "הוסף כותרת" + +# +msgid "Add to bouquet" +msgstr "הוסף תיקיית ערוצים" + +# +msgid "Add to favourites" +msgstr "הוסף למועדפים" + +msgid "Add/remove change timer for current event" +msgstr "" + +msgid "Adjust 3D settings" +msgstr "" + +msgid "Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens." +msgstr "כוונו את הגדרות הצבעים, כך שכל גווני צבע יראו, אך רווים ככל האפשר. במידה ואתם שמחים עם התוצאה, לחצו על אישור כדי לסגור את הכוונון העדין, או השתמשו במקשי המספרים בכדי לבחור מסכי מבחן אחרים." + +msgid "Advanced" +msgstr "" + +# +#, fuzzy +msgid "Advanced options" +msgstr "אפשרויות מתקדמות" + +# +msgid "Advanced restore" +msgstr "שחזור מתקדם" + +# +#, fuzzy +msgid "Advanced software" +msgstr "תוכנות מתקדמות" + +# +#, fuzzy +msgid "Advanced software plugin" +msgstr "פלאגינים מתקדמים לתוכנה" + +# +#, fuzzy +msgid "Advanced video enhancement setup" +msgstr "הגדרות מתקדמות לשיפור הוידאו" + +# +#, fuzzy +msgid "Advanced video setup" +msgstr "הגדרות וידאו מתקדמות" + +# +msgid "After event" +msgstr "לאחר התוכנית" + +# +msgid "Album" +msgstr "אלבום" + +msgid "Alignment of events" +msgstr "" + +msgid "Alignment of service names" +msgstr "" + +# +msgid "All" +msgstr "כולם" + +msgid "All ages" +msgstr "" + +msgid "All satellites 1 (USALS)" +msgstr "" + +msgid "All satellites 2 (USALS)" +msgstr "" + +msgid "All satellites 3 (USALS)" +msgstr "" + +msgid "All satellites 4 (USALS)" +msgstr "" + +msgid "Allocate" +msgstr "" + +msgid "Allocate unused memory index" +msgstr "" + +msgid "Allow quit movieplayer with exit" +msgstr "" + +msgid "Allow subtitle language to equal audio language" +msgstr "" + +msgid "Allow subtitles for hearing impaired" +msgstr "" + +# +msgid "Alpha" +msgstr "Alpha" + +#, fuzzy +msgid "Alternative" +msgstr "add alternatives" + +# +#, fuzzy +msgid "Alternative numbering mode" +msgstr "Alternative radio mode" + +msgid "Alternative services tuner priority" +msgstr "Alternative services tuner priority" + +msgid "Always ask" +msgstr "" + +msgid "Always hide infobar" +msgstr "" + +# +msgid "An empty filename is illegal." +msgstr "קובץ ריק לא חוקי" + +# +#, fuzzy +msgid "An error occurred while downloading the packetlist. Please try again." +msgstr "There was an error downloading the packetlist. Please try again." + +msgid "An unknown error occurred!" +msgstr "! אירעה שגיאה לא ידועה" + +msgid "And will put your receiver in standby over " +msgstr "" + +msgid "Any activity" +msgstr "" + +msgid "Arabic" +msgstr "ערבית" + +msgid "Are you sure to remove this entry?" +msgstr "" + +msgid "" +"Are you sure you want to activate this network configuration?\n" +"\n" +msgstr "" +"? האם אתה מעוניין להפעיל את הגדרות הרשת האלו\n" +"\n" + +#, fuzzy +msgid "" +"Are you sure you want to delete\n" +"the following backup:\n" +msgstr "" +"האם אתה מעוניין למחוק את\n" +":הגיבוי הבא\n" + +msgid "Are you sure you want to exit this wizard?" +msgstr "? האם אתה מעוניין לצאת מהאשף" + +msgid "" +"Are you sure you want to restart your network interfaces?\n" +"\n" +msgstr "" +"?האם אתה בטוח שאתה רוצה לאתחל את ממשקי הרשת\n" +"\n" + +#, fuzzy, python-format +msgid "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"? האם אתה בטוח שאתה רוצה לשחזר את הגיבוי של אניגמה2\n" +"אניגמה2 תופעל מחדש לאחר שיחזור" + +#, fuzzy +msgid "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"? האם אתה בטוח שאתה רוצה לשחזר את הגיבוי של אניגמה2\n" +"אניגמה2 תופעל מחדש לאחר שיחזור" + +msgid "Artist" +msgstr "אומן" + +msgid "Arts/Culture" +msgstr "" + +msgid "Ask user" +msgstr "שאל משתמש" + +#, fuzzy +msgid "Aspect ratio" +msgstr "Aspect Ratio" + +msgid "Assigned CAIds:" +msgstr "" + +msgid "Assigned services/provider:" +msgstr "" + +# +#, fuzzy +msgid "At beginning" +msgstr "התחל מההתחלה" + +msgid "At end" +msgstr "" + +# +msgid "Audio" +msgstr "קול" + +msgid "Audio PID" +msgstr "" + +msgid "Audio language selection 1" +msgstr "" + +msgid "Audio language selection 2" +msgstr "" + +msgid "Audio language selection 3" +msgstr "" + +msgid "Audio language selection 4" +msgstr "" + +#, fuzzy +msgid "Audio options..." +msgstr "...אפשרויות קול" + +# +#, fuzzy, python-format +msgid "Audio track (%s) format" +msgstr "audio tracks" + +#, python-format +msgid "Audio track (%s) language" +msgstr "" + +msgid "Author: " +msgstr ":מחבר" + +# +msgid "Authoring mode" +msgstr "" + +# +#. TRANSLATORS: (aspect ratio policy: always try to display as fullscreen, when there is no content (black bars) on left/right, even if this breaks the aspect. +msgid "Auto" +msgstr "אוטומטי" + +# +msgid "Auto chapter split every ? minutes (0=never)" +msgstr "" + +# +msgid "Auto flesh" +msgstr "" + +msgid "Auto focus" +msgstr "" + +msgid "Auto focus commencing ..." +msgstr "" + +msgid "Auto language selection" +msgstr "" + +msgid "Auto scart switching" +msgstr "Auto scart switching" + +msgid "Automatic" +msgstr "אוטומטי" + +# +#, fuzzy +msgid "Automatic scan" +msgstr "סריקה אוטומטית" + +msgid "Automatically start timeshift after" +msgstr "" + +msgid "Automatically turn on external subtitles" +msgstr "" + +msgid "Available format variables" +msgstr "Available format variables" + +# +msgid "B" +msgstr "B" + +# +msgid "BER" +msgstr "BER" + +# +msgid "BER:" +msgstr "BER:" + +msgid "Back" +msgstr "Back" + +msgid "Background" +msgstr "רקע" + +#, fuzzy +msgid "Background color" +msgstr "צבע רקע" + +msgid "Background delete option" +msgstr "" + +msgid "Background delete speed" +msgstr "" + +#, fuzzy +msgid "Backup completed." +msgstr ".הגיבוי נכשל" + +msgid "Backup failed." +msgstr ".הגיבוי נכשל" + +msgid "Backup is running..." +msgstr "...........גיבוי מתבצע" + +msgid "Backup system settings" +msgstr "גיבוי הגדרות מערכת" + +msgid "Band" +msgstr "Band" + +msgid "Bandwidth" +msgstr "רוחב פס" + +msgid "Basque" +msgstr "" + +# +msgid "Begin time" +msgstr "Begin time" + +msgid "Behavior of 'pause and ok' when paused" +msgstr "" + +msgid "Behavior of 0 key in PiP-mode" +msgstr "פעולת מקש ה - 0 במצב תמונה בתוך תמונה" + +# +msgid "Behavior when a movie is started" +msgstr "הפעולה כאשר סרט מתחיל" + +# +msgid "Behavior when a movie is stopped" +msgstr "הפעולה כאשר סרט נעצר " + +# +msgid "Behavior when a movie reaches the end" +msgstr "הפעולה כאשר סרט מגיע לסוף " + +msgid "Big PiP" +msgstr "" + +# +msgid "Bitrate:" +msgstr "" + +msgid "Black screen" +msgstr "" + +msgid "Black screen till locked" +msgstr "" + +# +msgid "Block noise reduction" +msgstr "Block noise reduction" + +# +msgid "Blue boost" +msgstr "Blue boost" + +msgid "Bookmarks" +msgstr "סימניות" + +# +msgid "Brightness" +msgstr "בהירות" + +msgid "Bulgarian" +msgstr "" + +# +msgid "Burn DVD" +msgstr "צרוב די.וי.די" + +# +#, fuzzy, python-format +msgid "Burn audio track (%s)" +msgstr "audio tracks" + +# +msgid "Burn existing image to DVD" +msgstr "צרוב קובץ מוכן לדי.וי.די" + +# +msgid "Burn to DVD" +msgstr "צרוב לדי.וי.די" + +msgid "Bus: " +msgstr "" + +msgid "By default, SNR will be shown in dB (when supported by the tuner). This setting forces SNR to be shown as a percentage instead." +msgstr "" + +msgid "C" +msgstr "C" + +msgid "C-Band" +msgstr "C-Band" + +msgid "CH" +msgstr "" + +# +msgid "CI assignment" +msgstr "" + +# +msgid "CVBS" +msgstr "" + +msgid "Cable" +msgstr "Cable" + +msgid "Cable Scan" +msgstr "" + +msgid "Cache thumbnails" +msgstr "" + +msgid "Calculate" +msgstr "" + +msgid "Calculate all positions" +msgstr "" + +msgid "Calculation complete" +msgstr "" + +msgid "Calibrate" +msgstr "" + +msgid "Can be used for different fps between external subtitles and video." +msgstr "" + +# +msgid "Cancel" +msgstr "בטל" + +msgid "Cannot determine" +msgstr "" + +msgid "Cannot find any signal ..., aborting !" +msgstr "" + +msgid "Cannot move files on a different disk or system to the trash can" +msgstr "" + +msgid "Cannot move to trash can" +msgstr "" + +# +msgid "Capacity: " +msgstr ":נפח" + +msgid "Card" +msgstr "כרטיס" + +msgid "Cascade PiP" +msgstr "" + +msgid "Center DVB subtitles" +msgstr "" + +msgid "Center time-labels and remove date" +msgstr "" + +# +msgid "Change bouquets in quickzap" +msgstr "" + +# +msgid "Change pin code" +msgstr "שנה קוד אבטחה" + +#, fuzzy +msgid "Change recording (duration)" +msgstr "שנה הקלטה - משך הקלטה" + +#, fuzzy +msgid "Change recording (endtime)" +msgstr "שנה הקלטה - שעת סיום" + +msgid "Change repeat and delay settings?" +msgstr "" + +msgid "Change service PIN" +msgstr "" + +msgid "Change service PINs" +msgstr "" + +msgid "Change setup PIN" +msgstr "" + +# +msgid "Change step size" +msgstr "Change step size" + +msgid "Change timer" +msgstr "" + +msgid "Changelog" +msgstr "" + +# +msgid "Channel" +msgstr "ערוץ" + +#, fuzzy +msgid "Channel list type" +msgstr "תפריט רשימת הערוצים" + +# +msgid "Channel not in services list" +msgstr "הערוץ לא ברשימת השירותים" + +# +#, fuzzy +msgid "Channel selection" +msgstr "בחירת ערוץ" + +# +msgid "Channel:" +msgstr ":ערוץ" + +msgid "Channellist menu" +msgstr "תפריט רשימת הערוצים" + +msgid "Chap." +msgstr "Chap." + +msgid "Chapter" +msgstr "פרק" + +msgid "Chapter:" +msgstr ":פרק" + +msgid "Check" +msgstr "בדוק" + +msgid "Check the internet connection" +msgstr "" + +msgid "Check the internet connection again" +msgstr "" + +#, fuzzy +msgid "Checking filesystem..." +msgstr "...בודק קבצי מערכת" + +msgid "Checking the internet connection" +msgstr "" + +#, python-format +msgid "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" +msgstr "" + +msgid "Children/Youth" +msgstr "" + +msgid "Choose which tuner to configure." +msgstr "" + +msgid "Circular left" +msgstr "Circular left" + +msgid "Circular right" +msgstr "Circular right" + +msgid "Cleanup" +msgstr "נקיון" + +msgid "Clear" +msgstr "" + +msgid "Clear before scan" +msgstr "Clear before scan" + +msgid "Clear fixed" +msgstr "" + +# +msgid "Clear log" +msgstr "נקה לוג" + +#, fuzzy +msgid "Clear playlist" +msgstr "clear playlist" + +msgid "Close" +msgstr "סגור" + +msgid "Close PiP on exit" +msgstr "" + +msgid "Close title selection" +msgstr "סגור בחירת כותרת" + +msgid "Code rate HP" +msgstr "" + +msgid "Code rate LP" +msgstr "" + +msgid "Coderate HP" +msgstr "" + +msgid "Coderate LP" +msgstr "" + +msgid "Collection name" +msgstr "שם האוסף" + +msgid "Collection settings" +msgstr "הגדרות האוסף" + +#, fuzzy +msgid "Color format" +msgstr "תבנית צבע" + +msgid "Command execution..." +msgstr "...הרצת פקודה" + +msgid "Command order" +msgstr "סדר פקודה" + +# +msgid "Common Interface" +msgstr "ממשק משותף" + +#, fuzzy +msgid "Common Interface assignment" +msgstr "הקצאת ממשק משותף" + +msgid "Communication" +msgstr "תקשורת" + +#, fuzzy +msgid "Compact flash" +msgstr "Compact Flash" + +msgid "Complete" +msgstr "שלם" + +msgid "Complex (allows mixing audio tracks and aspects)" +msgstr "Complex (allows mixing audio tracks and aspects)" + +msgid "Composition of the recording filenames" +msgstr "" + +#, fuzzy +msgid "Configuration mode" +msgstr "תצורת הגדרה" + +#, fuzzy, python-format +msgid "Configuration mode: %s" +msgstr "תצורת הגדרה" + +#, fuzzy +msgid "Configuration..." +msgstr "...הגדרת רשת" + +msgid "Configure an additional delay to improve external subtitle synchronisation." +msgstr "" + +msgid "Configure an additional delay to improve subtitle synchronisation." +msgstr "" + +msgid "Configure for how long the infobar will remain visible after activation." +msgstr "" + +msgid "Configure for how many minutes finished events should remain visible in the EPG. Useful when you need information about an event which has just finished, or has been delayed." +msgstr "" + +msgid "Configure how recording filenames are constructed." +msgstr "" + +msgid "Configure how the fan should operate" +msgstr "" + +msgid "Configure if and how crypto icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how long the latest service in the PiP will be remembered." +msgstr "" + +msgid "Configure if and how service type icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how wide columns will be shown in the channel selection list." +msgstr "" + +msgid "Configure if service picons will be shown in the channel selection list." +msgstr "" + +msgid "Configure interface" +msgstr "הגדרת ממשק" + +msgid "Configure nameservers" +msgstr "Configure nameservers" + +msgid "Configure on which devices the background delete option should be used." +msgstr "" + +# +#, fuzzy +msgid "Configure remote control type" +msgstr "סוג בקרת הורים" + +msgid "Configure the DiSEqC mode for this LNB." +msgstr "" + +#, fuzzy +msgid "Configure the IP address." +msgstr "הגדרת ממשק" + +msgid "Configure the aspect ratio of the screen." +msgstr "" + +msgid "Configure the behavior of the 'pause and ok' key when movie playback is already paused." +msgstr "" + +# +#, fuzzy +msgid "Configure the behavior when movie playback is manually stopped." +msgstr "הפעולה כאשר סרט נעצר " + +# +#, fuzzy +msgid "Configure the behavior when movie playback is started." +msgstr "הפעולה כאשר סרט מתחיל" + +msgid "Configure the behavior when reaching the end of a movie, during movie playback." +msgstr "" + +msgid "Configure the border width of the subtitles. The dark border makes the subtitles easier to read on a light background." +msgstr "" + +msgid "Configure the brightness level of the front panel display during standby." +msgstr "" + +msgid "Configure the brightness level of the front panel display." +msgstr "" + +msgid "Configure the color of the external subtitles, alternative (normal in white, italic in yellow, bold in cyan, underscore in green), white or yellow." +msgstr "" + +msgid "Configure the color of the teletext subtitles." +msgstr "" + +msgid "Configure the contrast level of the front panel display." +msgstr "" + +msgid "Configure the cursor behaviour in the channel selection list. When opening the channel selection list you can keep on the current service or already select up/down and you are able to revert the B+/B- buttons." +msgstr "" + +msgid "Configure the duration in hours the receiver should go to standby when the receiver is not controlled." +msgstr "" + +msgid "Configure the duration in minutes for the screensaver." +msgstr "" + +msgid "Configure the duration in minutes for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +msgstr "" + +msgid "Configure the duration when the receiver should go to shut down in case the receiver is in standby mode." +msgstr "" + +msgid "Configure the first audio language (highest priority)." +msgstr "" + +msgid "Configure the first subtitle language (highest priority)." +msgstr "" + +msgid "Configure the font size of the subtitles." +msgstr "" + +msgid "Configure the fourth audio language." +msgstr "" + +#, fuzzy +msgid "Configure the fourth subtitle language." +msgstr "העבר לשפת תרגום הבאה" + +msgid "Configure the function of a long press on the power button." +msgstr "" + +msgid "Configure the function of a short press on the power button." +msgstr "" + +msgid "Configure the function of the '0' button do when PIP is active." +msgstr "" + +#, fuzzy +msgid "Configure the gateway." +msgstr "הגדרת ממשק" + +msgid "Configure the general audio delay of Dolby Digital sound tracks." +msgstr "" + +msgid "Configure the general audio delay of stereo sound tracks." +msgstr "" + +msgid "Configure the hard disk drive to go to standby after the specified idle time." +msgstr "" + +msgid "Configure the horizontal alignment of the subtitles." +msgstr "" + +msgid "Configure the initial fast forward speed. When you press the fast forward button, winding will start at this speed." +msgstr "" + +msgid "Configure the initial rewind speed. When you press the rewind button, winding will start at this speed." +msgstr "" + +msgid "Configure the latitude of your location." +msgstr "" + +msgid "Configure the longitude of your location." +msgstr "" + +msgid "Configure the minimum amount of disk space to be available for recordings. When the amount of space drops below this value, deleted items will be removed from the trash can." +msgstr "" + +#, fuzzy +msgid "Configure the nameserver (DNS)." +msgstr "Configure nameservers" + +#, fuzzy +msgid "Configure the netmask." +msgstr "הגדרת ממשק" + +msgid "Configure the number of days after which items are automaticaly removed from the trash can." +msgstr "" + +msgid "Configure the number of days old timers are kept before they are automatically removed from the timer list." +msgstr "" + +msgid "Configure the offline decoding delay in milliseconds. The configured delay is observed at each control word parity change." +msgstr "" + +msgid "Configure the possible fast forward speeds." +msgstr "" + +msgid "Configure the possible rewind speeds." +msgstr "" + +msgid "Configure the primary EPG language." +msgstr "" + +msgid "Configure the refresh rate of the screen." +msgstr "" + +msgid "Configure the screen resolution in PC output mode." +msgstr "" + +msgid "Configure the second audio language." +msgstr "" + +#, fuzzy +msgid "Configure the second subtitle language." +msgstr "העבר לשפת תרגום הבאה" + +msgid "Configure the secondary EPG language." +msgstr "" + +msgid "Configure the sharpness of the video scaling." +msgstr "" + +msgid "Configure the skip time interval for the '1'/'3' buttons." +msgstr "" + +msgid "Configure the skip time interval for the '4'/'6' buttons." +msgstr "" + +msgid "Configure the skip time interval for the '7'/'9' buttons." +msgstr "" + +#, fuzzy +msgid "Configure the slow motion speeds." +msgstr "Slow Motion speeds" + +msgid "Configure the source of the frontend data as shown on the infobars. 'Settings' is as stored on the settings. 'Tuner' is as reported by the tuner." +msgstr "" + +msgid "Configure the speed of the background deletion process. Lower speed will consume less hard disk drive performance." +msgstr "" + +msgid "Configure the speed of the fan" +msgstr "" + +msgid "Configure the subtitle delay when timing information is not available." +msgstr "" + +msgid "Configure the third audio language." +msgstr "" + +#, fuzzy +msgid "Configure the third subtitle language." +msgstr "העבר לשפת תרגום הבאה" + +msgid "Configure the transparency of the OSD." +msgstr "" + +msgid "Configure the transparency of the black background of graphical DVB subtitles." +msgstr "" + +#, fuzzy +msgid "Configure the tuner mode." +msgstr "תצורת הגדרה" + +msgid "Configure the type of status indication icons shown in the movielist." +msgstr "" + +msgid "Configure the vertical position of the subtitles, measured from the bottom of the screen." +msgstr "" + +msgid "Configure the video output mode (or resolution)." +msgstr "" + +msgid "Configure the way in which the receiver changes channels." +msgstr "" + +msgid "Configure where completed timers show up in the timer list." +msgstr "" + +msgid "Configure whether (and for how long) a second infobar will be shown when OK is pressed twice. The second infobar contains additional information about the current channel." +msgstr "" + +msgid "Configure whether multi channel sound tracks should be downmixed to stereo." +msgstr "" + +msgid "Configure whether or not an icon should be shown when your motorized dish is moving." +msgstr "" + +msgid "Configure which access level to use for the configuration menu. Expert level gives access to all items." +msgstr "" + +msgid "Configure which color format should be used on the SCART output." +msgstr "" + +msgid "Configure which tuner for recordings will be preferred, when more than one tuner is available." +msgstr "" + +msgid "Configure which tuner type will be preferred, when the same service is available on different types of tuners." +msgstr "" + +msgid "Configure which tuner will be preferred, when more than one tuner is available. If set to 'auto' the system will give priority to the tuner having the lowest number of channels/satellites." +msgstr "" + +msgid "Configure your internal LAN" +msgstr "הגדרת הרשת הפנימית שלך" + +msgid "Configure your network again" +msgstr "הגדרת הרשת שלך שוב" + +msgid "Configure your network settings, and press OK to start the scan" +msgstr "" + +msgid "Configure your wireless LAN again" +msgstr "הגדרת הרשת האלחוטית שוב" + +msgid "Configures which video output connector will be used." +msgstr "" + +msgid "Configuring" +msgstr "מגדיר" + +msgid "Conflicting timer" +msgstr "טיימר מתנגש" + +msgid "Connect" +msgstr "התחבר" + +#, fuzzy +msgid "Connect to a wireless network" +msgstr "התחבר לרשת אלחוטית" + +msgid "Connected satellites" +msgstr "" + +msgid "Connected to" +msgstr "מחובר אל" + +msgid "Connected!" +msgstr "! התחבר" + +msgid "Constellation" +msgstr "Constellation" + +msgid "Content does not fit on DVD!" +msgstr "!תכולה לא מתאימה לדי.וי.די" + +msgid "Continue" +msgstr "" + +msgid "Continue in background" +msgstr "המשך ברקע" + +#, fuzzy +msgid "Continue playback" +msgstr "המשך לנגן" + +msgid "Continue playing" +msgstr "המשך לנגן" + +msgid "Continues play (loop)" +msgstr "" + +msgid "Contrast" +msgstr "ניגודיות" + +msgid "Convert ext3 filesystem to ext4" +msgstr "" + +msgid "Convert ext3 to ext4" +msgstr "" + +msgid "Converting ext3 to ext4..." +msgstr "" + +msgid "Copy" +msgstr "" + +msgid "Could not connect to receiver .NFI image feed server:" +msgstr "" + +msgid "Could not find installed channel list." +msgstr "" + +# +#, fuzzy +msgid "Could not load medium! No disc inserted?" +msgstr "Could not load Medium! No disc inserted?" + +msgid "Could not open Picture in Picture" +msgstr "לא יכול לפתוח תמונה בתוך תמונה" + +# +#, fuzzy, python-format +msgid "Could not record due to conflicting timer %s" +msgstr "%s לא יכול להקליט עקב התנגשות בטיימר" + +# +#, fuzzy, python-format +msgid "Could not record due to invalid service %s" +msgstr "%s לא יכול להקליט עקב התנגשות בטיימר" + +# +msgid "Create DVD-ISO" +msgstr "DVD-ISO צור " + +msgid "Create more detailed crash log" +msgstr "" + +#, python-format +msgid "Creating directory %s failed." +msgstr ".נכשלה %s יצירת תיקייה" + +#, fuzzy +msgid "Creating filesystem" +msgstr "...בודק קבצי מערכת" + +msgid "Creating partition" +msgstr "" + +# +msgid "Croatian" +msgstr "קרואטית" + +msgid "Current CEC address" +msgstr "" + +msgid "Current device: " +msgstr "" + +msgid "Current event EPG" +msgstr "" + +#, python-format +msgid "Current mode: %s \n" +msgstr "" + +msgid "Current settings:" +msgstr "Current settings:" + +#, fuzzy +msgid "Current transponder" +msgstr "Current Transponder" + +msgid "Current value: " +msgstr "Current value: " + +msgid "Current version:" +msgstr "Current version:" + +msgid "Currently installed image" +msgstr "" + +msgid "Currently the commit log cannot be retrieved - please try later again" +msgstr "" + +msgid "Custom skip time for '1'/'3' buttons" +msgstr "" + +msgid "Custom skip time for '4'/'6' buttons" +msgstr "" + +msgid "Custom skip time for '7'/'9' buttons" +msgstr "" + +msgid "Customize" +msgstr "התאמה אישית" + +msgid "Customize channel list cursor behavior" +msgstr "" + +msgid "Cut" +msgstr "חתוך" + +msgid "Cutlist editor..." +msgstr "Cutlist עורך..." + +msgid "Czech" +msgstr "צ'כית" + +msgid "D" +msgstr "D" + +msgid "DHCP" +msgstr "DHCP" + +#, fuzzy +msgid "DMM advanced" +msgstr "מתקדם" + +msgid "DMM normal" +msgstr "" + +msgid "DUAL LAYER DVD" +msgstr "Dual Layer DVD" + +msgid "DVB subtitle black transparency" +msgstr "" + +msgid "DVB-C" +msgstr "" + +msgid "DVB-C ANNEX C" +msgstr "" + +msgid "DVB-S" +msgstr "DVB-S" + +msgid "DVB-S2" +msgstr "DVB-S2" + +msgid "DVB-T" +msgstr "" + +msgid "DVB-T2" +msgstr "" + +msgid "DVD data format" +msgstr "" + +#, fuzzy +msgid "DVD file browser" +msgstr "DVD מציג קבצי" + +# +msgid "DVD media toolbox" +msgstr "DVD media toolbox" + +#, fuzzy +msgid "DVD player" +msgstr "DVD נגן" + +#, fuzzy +msgid "DVD titlelist" +msgstr "DVD Titlelist" + +msgid "Danish" +msgstr "דנית" + +msgid "Date" +msgstr "תאריך" + +msgid "Date/time input" +msgstr "" + +#, fuzzy +msgid "Deep standby" +msgstr "המתנה עמוקה" + +msgid "Default" +msgstr "ברירת מחדל" + +msgid "Default movie location" +msgstr "ברירת מחדל למיקום סרטים" + +#, fuzzy +msgid "Default settings" +msgstr "הגדרות ברירת מחדל" + +msgid "Delay before key repeat starts:" +msgstr "" + +msgid "Delay for external subtitles" +msgstr "" + +# +msgid "Delete" +msgstr "מחק" + +msgid "Delete entry" +msgstr "מחק רשומה" + +# +msgid "Delete failed!" +msgstr "!מחיקה נכשלה" + +#, fuzzy +msgid "Delete file" +msgstr "מחק קובץ" + +#, fuzzy +msgid "Delete playlist entry" +msgstr "delete playlist entry" + +# +#, fuzzy +msgid "Delete saved playlist" +msgstr "delete saved playlist" + +msgid "Delete timer" +msgstr "" + +# +#, fuzzy +msgid "Delete..." +msgstr "...מחק" + +msgid "Deleted" +msgstr "" + +msgid "Deleted items" +msgstr "" + +msgid "Depth" +msgstr "" + +msgid "Descramble http streams" +msgstr "" + +# +msgid "Description" +msgstr "תאור" + +msgid "Deselect" +msgstr "בטל בחירה" + +msgid "Details for plugin: " +msgstr "" + +msgid "Detected HDD:" +msgstr "Detected HDD:" + +# +msgid "Detected NIMs:" +msgstr "Detected NIMs:" + +msgid "Devicename:" +msgstr "" + +msgid "Devide" +msgstr "" + +msgid "DiSEqC" +msgstr "DiSEqC" + +msgid "DiSEqC 1.0 command" +msgstr "" + +msgid "DiSEqC 1.1 command" +msgstr "" + +msgid "DiSEqC 1.1 repeats" +msgstr "" + +# +msgid "DiSEqC A/B" +msgstr "DiSEqC A/B" + +# +msgid "DiSEqC A/B/C/D" +msgstr "DiSEqC A/B/C/D" + +# +msgid "DiSEqC mode" +msgstr "DiSEqC mode" + +#, fuzzy, python-format +msgid "DiSEqC port %s: %s" +msgstr "DiSEqC repeats" + +#, fuzzy +msgid "DiSEqC-tester settings" +msgstr "Test DiSEqC settings" + +msgid "Dialing:" +msgstr ":מחייג" + +msgid "Digital contour removal" +msgstr "Digital contour removal" + +msgid "Direct playback of linked titles without menu" +msgstr "Direct playback of linked titles without menu" + +msgid "Directory" +msgstr "" + +#, fuzzy, python-format +msgid "Directory %s does not exist." +msgstr " .לא קיימת %s הספרייה" + +#, python-format +msgid "Directory %s nonexistent." +msgstr "" + +# +msgid "Directory browser" +msgstr "סייר תיקיות" + +#, python-format +msgid "Directory contains %d file(s) and %d sub-directories.\n" +msgstr "" + +#, fuzzy, python-format +msgid "Directory contains %s and %s." +msgstr " .לא קיימת %s הספרייה" + +msgid "Disable" +msgstr "השבת" + +# +msgid "Disable Picture in Picture" +msgstr "השבת תמונה בתוך תמונה" + +msgid "Disable background scanning" +msgstr "" + +msgid "Disable timer" +msgstr "" + +# +msgid "Disabled" +msgstr "הושבת" + +# +msgid "Disconnect" +msgstr "לנתק" + +msgid "Disk space to reserve for recordings (in GB)" +msgstr "" + +msgid "Display 16:9 content as" +msgstr "Display 16:9 content as" + +msgid "Display 4:3 content as" +msgstr "Display 4:3 content as" + +# +msgid "Display >16:9 content as" +msgstr "" + +#, fuzzy +msgid "Display and userinterface" +msgstr "תצוגה וממשק משתמש" + +msgid "Display message before playing next movie" +msgstr "" + +#, fuzzy +msgid "Display setup" +msgstr "הצג הגדרות" + +#, fuzzy +msgid "Do not change" +msgstr "do not change" + +#, fuzzy +msgid "Do not record" +msgstr "אל תקליט" + +#, fuzzy +msgid "Do nothing" +msgstr "do nothing" + +msgid "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" +msgstr "" +"? האם ברצונך לסמן את קבצי המערכת\n" +"!זה עלול לקחת הרבה זמן" + +msgid "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" +msgstr "" + +#, python-format +msgid "Do you really want to delete %s?" +msgstr "? %s האם ברצוך למחוק את" + +#, python-format +msgid "" +"Do you really want to download\n" +"the plugin \"%s\"?" +msgstr "" +"האם ברצונך להוריד\n" +"את הפלאגין \"%s\"?" + +msgid "Do you really want to exit?" +msgstr "? האם ברצונך לצאת" + +msgid "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" +msgstr "" + +#, fuzzy, python-format +msgid "" +"Do you really want to remove\n" +"the plugin \"%s\"?" +msgstr "" +"האם ברצונך להוריד\n" +"את הפלאגין \"%s\"?" + +#, python-format +msgid "Do you really want to remove directory %s from the disk?" +msgstr "? מהכונן %s האם ברצונך למחוק את התיקיה" + +#, python-format +msgid "Do you really want to remove your bookmark of %s?" +msgstr "%s ?האם ברצונך להסיר את הסימניה " + +msgid "Do you want this?" +msgstr "" + +# +msgid "Do you want to burn this collection to DVD medium?" +msgstr "האם ברצונך לצרוב את התוכן לדי.וי.די" + +# +msgid "Do you want to do a service scan?" +msgstr "?האם ברצונך לבצע סריקת שירותים" + +msgid "Do you want to do another manual service scan?" +msgstr "? האם ברצונך לבצע שוב סריקת שירותים ידנית" + +#, python-format +msgid "Do you want to download the image to %s ?" +msgstr "" + +#, fuzzy +msgid "Do you want to install a channel list?" +msgstr ":האם ברצונך להתקין את החבילה\n" + +msgid "Do you want to install the package:\n" +msgstr ":האם ברצונך להתקין את החבילה\n" + +# +msgid "Do you want to play DVD in drive?" +msgstr "? האם ברצונך לנגן את הדי.וי.די שבכונן" + +# +msgid "Do you want to preview this DVD before burning?" +msgstr "?האם ברצונך להציג את הדי.וי.די לפני הצריבה" + +msgid "Do you want to reboot your receiver?" +msgstr "" + +msgid "Do you want to remove the package:\n" +msgstr "האם ברצונך להסיר את החבילה\n" + +msgid "Do you want to restore your settings?" +msgstr "? האם ברצונך לשחזר את ההגדרות" + +# +msgid "Do you want to resume this playback?" +msgstr "?האם ברצונך להמשיך ולנגן את זה" + +#, fuzzy, python-format +msgid "Do you want to update your receiver to %s?" +msgstr "? האם ברצונך לשחזר את ההגדרות" + +msgid "Do you want to update your receiver?" +msgstr "" + +msgid "Do you want to upgrade the package:\n" +msgstr "?האם ברצונך לשדרג את החבילה\n" + +msgid "Don't stop current event but disable coming events" +msgstr "אל תפסיק אירוע נוכחי אך בטל את כל הבאים בתור" + +#, fuzzy, python-format +msgid "Done - Installed, upgraded or removed %d package (%s)" +msgid_plural "Done - Installed, upgraded or removed %d packages (%s)" +msgstr[0] "תקלות %d חבילות עם %d בוצע - הותקנו, עודכנו או הוסרו" +msgstr[1] "תקלות %d חבילות עם %d בוצע - הותקנו, עודכנו או הוסרו" + +msgid "Download" +msgstr "הורד" + +#, python-format +msgid "Download %s from server" +msgstr "" + +msgid "Download .NFI-files for USB-flasher" +msgstr "" + +#, fuzzy +msgid "Download plugins" +msgstr "הורד פלאגינים" + +msgid "Downloadable new plugins" +msgstr "פלאגינים חדשים להורדה" + +msgid "Downloadable plugins" +msgstr "פלאגינים להורדה" + +msgid "Downloading" +msgstr "מוריד" + +msgid "Downloading plugin information. Please wait..." +msgstr "...מוריד פרטים על הפלאגין, אנא המתן" + +# +msgid "Dutch" +msgstr "הולנדית" + +msgid "Dynamic contrast" +msgstr "Dynamic contrast" + +msgid "E" +msgstr "" + +msgid "EPG" +msgstr "" + +msgid "EPG language selection 1" +msgstr "" + +msgid "EPG language selection 2" +msgstr "" + +# +#, fuzzy +msgid "EPG selection" +msgstr "EPG בחירת" + +msgid "EPG settings" +msgstr "" + +# +#, python-format +msgid "ERROR - failed to scan (%s)!" +msgstr "(%s) !שגיאה - נכשל בסריקה" + +# +msgid "East" +msgstr "מזרח" + +msgid "East limit set" +msgstr "" + +msgid "Edit" +msgstr "ערוך" + +# +msgid "Edit DNS" +msgstr "DNS ערוך" + +msgid "Edit bouquets list" +msgstr "ערוך רשימת תיקיות ערוצים" + +msgid "Edit chapters of current title" +msgstr "ערוך פרקים של הכותרת הנוכחית" + +msgid "Edit services list" +msgstr "ערוך רשימת שירותים" + +# +msgid "Edit settings" +msgstr "ערוך הגדרות" + +#, fuzzy +msgid "Edit the nameserver configuration of your receiver.\n" +msgstr "exit nameserver configuration" + +msgid "Edit the network configuration of your receiver.\n" +msgstr "" + +msgid "Edit timer" +msgstr "" + +msgid "Edit title" +msgstr "ערוך כותרת" + +# +msgid "Edit upgrade source url." +msgstr "Edit upgrade source url." + +msgid "Education/Science/..." +msgstr "" + +msgid "Electronic Program Guide" +msgstr "Electronic Program Guide" + +# +msgid "Enable" +msgstr "אפשר" + +msgid "Enable 'neutrino' style channel select controlling" +msgstr "" + +msgid "Enable 'neutrino' style zap controlling" +msgstr "" + +msgid "Enable 5V for active antenna" +msgstr "Enable 5V for active antenna" + +msgid "Enable EIT EPG" +msgstr "" + +msgid "Enable MHW EPG" +msgstr "" + +msgid "Enable Netmed EPG" +msgstr "" + +msgid "Enable OK for channel selection" +msgstr "" + +msgid "Enable ViaSat EPG" +msgstr "" + +msgid "Enable Virgin EPG" +msgstr "" + +msgid "Enable Wake On LAN" +msgstr "" + +msgid "Enable auto fast scan" +msgstr "" + +# +#, fuzzy +msgid "Enable bouquet selection in multi-EPG" +msgstr "enable bouquet edit" + +msgid "Enable freesat EPG" +msgstr "" + +# +msgid "Enable multiple bouquets" +msgstr "אפשר תיקיות ערוצים מרובות" + +# +msgid "Enable parental control" +msgstr "אפשר בקרת הורים" + +msgid "Enable teletext caching" +msgstr "" + +msgid "Enable zapping with CH+/-, B+/-, P+/-" +msgstr "" + +# +msgid "Enabled" +msgstr "אפשר" + +# +msgid "Encrypted: " +msgstr ":קידוד" + +msgid "Encryption" +msgstr "קידוד" + +#, fuzzy +msgid "Encryption key" +msgstr "מפתח קידוד" + +#, fuzzy +msgid "Encryption key type" +msgstr "שיטת מפתח קידוד" + +msgid "Encryption:" +msgstr ":קידוד" + +# +msgid "End time" +msgstr "שעת סיום" + +msgid "End time to ignore inactivity sleeptimer" +msgstr "" + +msgid "End time to ignore shutdown in standby" +msgstr "" + +# +msgid "English" +msgstr "אנגלית" + +msgid "Enigma2 skin selector" +msgstr "" + +msgid "Enter main menu..." +msgstr "...כנס לתפריט ראשי" + +msgid "Enter pin code" +msgstr ":הכנס קוד אבטחה" + +msgid "Enter the service pin" +msgstr "הכנס קוד האבטחה של השירות" + +msgid "Equal to" +msgstr "" + +msgid "Error" +msgstr "שגיאה" + +msgid "Error code" +msgstr "" + +msgid "Error executing plugin" +msgstr "שגיאה בהרצת הפלאגין" + +#, python-format +msgid "" +"Error: %s\n" +"Retry?" +msgstr "" +"שגיאה: %s\n" +"לנסות שוב?" + +msgid "Estonian" +msgstr "אסטוניה" + +msgid "Ethernet network interface" +msgstr "" + +msgid "Event font size (relative to skin size)" +msgstr "" + +# +#, fuzzy +msgid "Event view" +msgstr "Eventview" + +# +#, fuzzy +msgid "Event view menu" +msgstr "Eventview" + +msgid "Everywhere" +msgstr "" + +# +msgid "Exceeds dual layer medium!" +msgstr "Exceeds dual layer medium!" + +msgid "Execution finished!!" +msgstr "!!הרצה הסתיימה" + +#, fuzzy +msgid "Execution progress:" +msgstr ":הרצה בפעולה" + +msgid "Exif" +msgstr "Exif" + +msgid "Exit" +msgstr "יציאה" + +msgid "Exit EPG" +msgstr "" + +msgid "Exit editor" +msgstr "יציאה מהעורך" + +msgid "Exit input device selection." +msgstr "" + +msgid "Exit media player?" +msgstr "" + +#, fuzzy +msgid "Exit mediaplayer" +msgstr "exit mediaplayer" + +#, fuzzy +msgid "Exit movie list" +msgstr "exit movielist" + +#, fuzzy +msgid "Exit movie player?" +msgstr "exit mediaplayer" + +#, fuzzy +msgid "Exit nameserver configuration" +msgstr "exit nameserver configuration" + +#, fuzzy +msgid "Exit network interface list" +msgstr "exit network interface list" + +msgid "Exit network wizard" +msgstr "צא מאשף הרשת" + +msgid "Exit the wizard" +msgstr "צא מהאשף" + +msgid "Expert" +msgstr "הגדרות מומחים" + +msgid "Extend sleeptimer 15 minutes" +msgstr "" + +msgid "Extended Software" +msgstr "Extended Software" + +msgid "Extended Software Plugin" +msgstr "Extended Software פלאגין ל" + +#, fuzzy +msgid "Extended network setup plugin..." +msgstr "...פלאגין הגדרת רשת נרחב" + +#, fuzzy +msgid "Extended setup..." +msgstr "הגדרות נרחבות" + +msgid "Extensions" +msgstr "תוספות" + +msgid "Extensions management" +msgstr "ניהול תוספות" + +msgid "External PiP" +msgstr "" + +msgid "External subtitle color" +msgstr "" + +msgid "Extra motor options" +msgstr "" + +msgid "FEC" +msgstr "FEC" + +msgid "FTA" +msgstr "" + +msgid "Factory reset" +msgstr "שיחזור להגדרות יצרן" + +msgid "Failed" +msgstr "נכשל" + +msgid "Failed to write /tmp/positionersetup.log: " +msgstr "" + +# +#, python-format +msgid "Fan %d" +msgstr " מאוורר %d" + +# +#, python-format +msgid "Fan %d PWM" +msgstr "" + +# +#, fuzzy, python-format +msgid "Fan %d voltage" +msgstr " מאוורר %d מתח" + +msgid "Fan operation" +msgstr "" + +msgid "Fan speed" +msgstr "" + +# +msgid "Fast" +msgstr "מהיר" + +# +msgid "Fast DiSEqC" +msgstr "DiSEqC מהיר" + +msgid "Fast Scan" +msgstr "" + +# +msgid "Fast epoch" +msgstr "" + +#, fuzzy +msgid "Fast forward speeds" +msgstr "מהירות העברה קדימה" + +# +msgid "Favourites" +msgstr "מועדפים" + +msgid "File appears to be busy.\n" +msgstr "" + +msgid "Filesystem check" +msgstr "" + +msgid "Final position at" +msgstr "" + +msgid "Final position at index" +msgstr "" + +msgid "Fine movement" +msgstr "" + +# +msgid "Finetune" +msgstr "כיוונון עדין" + +msgid "Finished" +msgstr "הסתיים" + +msgid "Finished configuring your network" +msgstr "הגדרת הרשת הסתיימה" + +msgid "Finished restarting your network" +msgstr "פעולת איתחול הרשת הסתיימה" + +msgid "Finnish" +msgstr "פינית" + +msgid "Fixed" +msgstr "" + +msgid "Flash" +msgstr "Flash" + +msgid "Flashing failed" +msgstr "Flashing failed" + +msgid "Following tasks will be done after you press OK!" +msgstr "OK הפעולה הבאה תתבצע לאחר לחיצה על" + +msgid "Format" +msgstr "פורמט" + +msgid "Forward volume keys" +msgstr "" + +# +msgid "Frame size in full view" +msgstr "" + +# +msgid "French" +msgstr "צרפתית" + +# +msgid "Frequency" +msgstr "תדר" + +msgid "Frequency bands" +msgstr "קבוצת תדרים" + +# +msgid "Frequency scan step size(khz)" +msgstr "" + +# +msgid "Frequency steps" +msgstr "קפיצות תדרים" + +msgid "Frequency:" +msgstr "" + +# +msgid "Fri" +msgstr "Fri" + +# +msgid "Friday" +msgstr "שישי" + +msgid "From :" +msgstr "" + +# +#, python-format +msgid "Frontprocessor version: %d" +msgstr "" + +msgid "Full transparency" +msgstr "" + +msgid "Fulview resulution" +msgstr "" + +msgid "Function of OK button" +msgstr "" + +msgid "Further Options" +msgstr "" + +# +msgid "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" +msgstr "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" + +# +msgid "Gateway" +msgstr "" + +msgid "General AC3 delay" +msgstr "" + +msgid "General PCM delay" +msgstr "" + +# +msgid "Genre" +msgstr "" + +# +msgid "German" +msgstr "גרמנית" + +msgid "Get latest experimental image" +msgstr "" + +msgid "Get latest release image" +msgstr "" + +# +msgid "Getting plugin information. Please wait..." +msgstr "...מקבל מידע אודות הפלאגין. אנא המתן" + +msgid "Go down the list" +msgstr "" + +msgid "Go to first movie or last item" +msgstr "" + +msgid "Go to first movie or top of list" +msgstr "" + +#, fuzzy +msgid "Go to first service" +msgstr "move up to first entry" + +#, fuzzy +msgid "Go to last service" +msgstr "Protect services" + +#, fuzzy +msgid "Go to next event" +msgstr "move down to next entry" + +# +#, fuzzy +msgid "Go to next page of service" +msgstr "Switch to next subservice" + +#, fuzzy +msgid "Go to previous event" +msgstr "move up to previous entry" + +#, fuzzy +msgid "Go to previous page of service" +msgstr "Return to previous service" + +msgid "Go up the list" +msgstr "" + +msgid "Goto" +msgstr "" + +# +msgid "Goto 0" +msgstr "Goto 0" + +msgid "Goto :" +msgstr "" + +msgid "Goto X" +msgstr "" + +msgid "Goto index position" +msgstr "" + +msgid "Goto next day of events" +msgstr "" + +msgid "Goto next page of events" +msgstr "" + +msgid "Goto position" +msgstr "Goto position" + +msgid "Goto previous day of events" +msgstr "" + +msgid "Goto previous page of events" +msgstr "" + +msgid "Goto specific date/time" +msgstr "" + +msgid "GotoX calibration" +msgstr "" + +msgid "GraphMultiEpg Settings" +msgstr "" + +# +msgid "Graphical Multi EPG" +msgstr " גראפי Multi EPG" + +msgid "Greek" +msgstr "יוונית" + +msgid "Green boost" +msgstr "Green boost" + +msgid "Guard interval" +msgstr "" + +msgid "HD list" +msgstr "" + +msgid "HDMI-CEC setup" +msgstr "" + +msgid "Handle standby from TV" +msgstr "" + +msgid "Handle wakeup from TV" +msgstr "" + +# +#, fuzzy +msgid "Hard disk" +msgstr "כונן קשיח" + +#, fuzzy +msgid "Hard disk setup" +msgstr "הגדרת כונן קשיח" + +#, fuzzy +msgid "Hard disk standby after" +msgstr "מעבר כונן למצב שינה אחרי" + +# +msgid "Harddisk" +msgstr "כונן קשיח" + +msgid "Hardware: " +msgstr "" + +msgid "Hebrew" +msgstr "" + +msgid "Helps setting up your dish" +msgstr "" + +msgid "Hidden network" +msgstr "" + +msgid "Hide CI messages" +msgstr "" + +msgid "Hide channel list in radio mode" +msgstr "" + +msgid "Hide known extensions" +msgstr "" + +msgid "Hide number markers" +msgstr "" + +#, fuzzy +msgid "Hide player" +msgstr "hide player" + +msgid "Hide zap errors" +msgstr "" + +msgid "Hierarchy info" +msgstr "" + +#, fuzzy +msgid "Hierarchy information" +msgstr "Plugin manager activity information" + +msgid "High bitrate support" +msgstr "High bitrate support" + +msgid "Hold screen" +msgstr "" + +msgid "Hold till locked" +msgstr "" + +msgid "Home" +msgstr "" + +msgid "Horizontal" +msgstr "Horizontal" + +msgid "Horizontal turning speed" +msgstr "" + +msgid "How many minutes do you want to record?" +msgstr "? כמה דקות אתה מעוניין להקליט" + +msgid "Hue" +msgstr "Hue" + +# +msgid "Hungarian" +msgstr "הונגרית" + +# +#, fuzzy +msgid "IP address" +msgstr "IP כתובת" + +msgid "ISO file is too large for this filesystem!" +msgstr "ISO file is too large for this filesystem!" + +msgid "ISO path" +msgstr "ISO path" + +msgid "Icons" +msgstr "" + +msgid "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." +msgstr "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." + +msgid "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." +msgstr "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." + +msgid "Image: " +msgstr "" + +#, fuzzy +msgid "Immediate shutdown" +msgstr "כיבוי מיידי" + +# +msgid "In order to record a timer, the TV was switched to the recording service!\n" +msgstr "!על מנת להקליט את הטיימר, הערוץ עבר לערוץ המוקלט\n" + +# +#, fuzzy +msgid "In progress" +msgstr "בפעולה" + +msgid "Inactivity Sleeptimer" +msgstr "" + +msgid "Include AIT in http streams" +msgstr "" + +msgid "Include ECM in http streams" +msgstr "" + +msgid "Include EIT in http streams" +msgstr "" + +msgid "Incorrect type service for PiP!" +msgstr "" + +# +msgid "Increased voltage" +msgstr "Increased voltage" + +msgid "Index" +msgstr "אינדקס" + +msgid "Index allocated:" +msgstr "" + +# +msgid "Info" +msgstr "פרטים" + +# +#, fuzzy +msgid "Info bar" +msgstr "InfoBar" + +#, fuzzy +msgid "Info bar timeout" +msgstr "Infobar timeout" + +msgid "Infobar frontend data source" +msgstr "" + +# +msgid "Information" +msgstr "מידע" + +# +msgid "Init" +msgstr "" + +#, fuzzy +msgid "Initial fast forward speed" +msgstr "מהירות העברה קדימה" + +# +msgid "Initial location in new timers" +msgstr "" + +msgid "Initial lock ratio" +msgstr "" + +#, fuzzy +msgid "Initial rewind speed" +msgstr "מהירות הרצה אחורנית" + +msgid "Initial signal quality" +msgstr "" + +msgid "Initial signal quality:" +msgstr "" + +msgid "Initialization" +msgstr "" + +# +msgid "Initialize" +msgstr "מאתחל" + +msgid "Initializing storage device..." +msgstr "" + +msgid "Input" +msgstr "Input" + +msgid "Input device setup" +msgstr "" + +msgid "Input devices" +msgstr "" + +# +msgid "Install" +msgstr "התקן" + +# +msgid "Install a new image with a USB stick" +msgstr "" + +msgid "Install a new image with your web browser" +msgstr "התקן אימג' חדש עם הדפדפן שלך" + +#, fuzzy +msgid "Install channel list" +msgstr "next channel in history" + +msgid "Install extensions" +msgstr "" + +msgid "Install extensions." +msgstr ".התקן תוספות" + +msgid "Install local extension" +msgstr "התקן תוספת מקומית" + +msgid "Install picons on" +msgstr "" + +#, fuzzy +msgid "Install softcam" +msgstr "...מתקין תוכנה" + +#, fuzzy +msgid "Installation has completed." +msgstr ".התקנה הסתיימה" + +#, fuzzy +msgid "Installation or removal has completed." +msgstr ".התקנה או הסרה הסתיימה" + +msgid "Installing" +msgstr "מתקין" + +#, fuzzy +msgid "Installing software..." +msgstr "...מתקין תוכנה" + +#, fuzzy +msgid "Instant recording location" +msgstr "מיקום הקלטה מיידית" + +#, fuzzy +msgid "Instant recording..." +msgstr "...הקלטה מיידית" + +msgid "Interface: " +msgstr ":ממשק" + +msgid "Intermediate" +msgstr "ביניים" + +# +#, fuzzy +msgid "Internal flash" +msgstr " פנימי Flash" + +msgid "Internal hdd only" +msgstr "" + +msgid "Interval between keys when repeating:" +msgstr "" + +#, python-format +msgid "Invalid directory selected: %s" +msgstr "%s :נבחרה תיקיה שגויה" + +#, fuzzy +msgid "Invalid location" +msgstr "מיקום שגוי" + +msgid "Invalid transponder data" +msgstr "" + +# +msgid "Inversion" +msgstr "Inversion" + +msgid "Invert" +msgstr "" + +# +msgid "Ipkg" +msgstr "" + +# +#, fuzzy +msgid "Is this setting ok?" +msgstr "? האם מוד הוידאו הזה בסדר" + +# +#, fuzzy +msgid "Is this video mode ok?" +msgstr "? האם מוד הוידאו הזה בסדר" + +msgid "Italian" +msgstr "איטלקית" + +msgid "Items per page " +msgstr "" + +msgid "Items per page for list screen" +msgstr "" + +msgid "Job overview" +msgstr "" + +msgid "Jump to beginning of list" +msgstr "" + +#, fuzzy +msgid "Jump to end of list" +msgstr "jump to listend" + +# +#, fuzzy +msgid "Jump to next marked position" +msgstr "Stored position" + +# +#, fuzzy +msgid "Jump to previous marked position" +msgstr "play from previous mark or playlist entry" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect) +msgid "Just scale" +msgstr "" + +msgid "Keep service" +msgstr "" + +# +#, fuzzy +msgid "Kernel version: " +msgstr ":גרסה חדשה" + +msgid "Keyboard" +msgstr "מקלדת" + +# +#, fuzzy +msgid "Keyboard map" +msgstr "מיפוי מקלדת" + +# +#, fuzzy +msgid "Keyboard setup" +msgstr "הגדרת מקלדת" + +# +#, fuzzy +msgid "LAN adapter" +msgstr "מתאם רשת" + +msgid "LAN connection" +msgstr "חיבור רשת" + +# +msgid "LNB" +msgstr "" + +# +msgid "Language" +msgstr "שפה" + +# +msgid "Language selection" +msgstr "בחירת שפה" + +# +msgid "Last config" +msgstr "הגדרה קודמת" + +# +msgid "Last speed" +msgstr "מהירות קודמת" + +msgid "Last upgrade: " +msgstr "" + +msgid "Latest Commits" +msgstr "" + +# +msgid "Latitude" +msgstr "Latitude" + +# +msgid "Latvian" +msgstr "" + +# +#, fuzzy +msgid "Leave DVD player?" +msgstr "Leave DVD Player?" + +# +msgid "Left" +msgstr "שמאל" + +msgid "Left from servicename" +msgstr "" + +msgid "Leisure hobbies" +msgstr "" + +# +#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term. +msgid "Letterbox" +msgstr "" + +msgid "Letterbox zoom" +msgstr "" + +#, fuzzy +msgid "Limit character set for recording filenames" +msgstr "Limited character set for recording filenames" + +# +msgid "Limit east" +msgstr "הגבל מזרח" + +msgid "Limit the characters that can be used in recording filenames to (7 bit) ascii. This ensures compatibility with operating systems or file systems with limited character sets." +msgstr "" + +# +msgid "Limit west" +msgstr "הגבל מערב" + +msgid "Limits cancelled" +msgstr "" + +msgid "Limits enabled" +msgstr "" + +# +msgid "Limits off" +msgstr "" + +# +msgid "Limits on" +msgstr "" + +msgid "Link quality:" +msgstr "" + +# +msgid "Link:" +msgstr "" + +# +msgid "Linked titles with a DVD menu" +msgstr "" + +msgid "List EPG functions..." +msgstr "" + +msgid "List available networks" +msgstr "" + +msgid "List mode" +msgstr "" + +# +#, fuzzy +msgid "List of storage devices" +msgstr "רשימת התקני אחסון" + +msgid "List type" +msgstr "" + +#, python-format +msgid "List version %d, found %d channel" +msgid_plural "List version %d, found %d channels" +msgstr[0] "" +msgstr[1] "" + +#, fuzzy +msgid "Listen to the radio..." +msgstr "hear radio..." + +msgid "Lists reloaded!" +msgstr "" + +# +msgid "Lithuanian" +msgstr "ליטא" + +# +msgid "Load" +msgstr "טען" + +msgid "Load Length of Movies in Movielist" +msgstr "" + +# +#, fuzzy +msgid "Load length of movies in movie list" +msgstr "טען אורך הסרט ברשימת הסרטים" + +#, fuzzy +msgid "Load playlist" +msgstr "load playlist" + +#, fuzzy +msgid "Local network" +msgstr "רשת מקומית" + +msgid "Location" +msgstr "מיקום" + +msgid "Location for instant recordings" +msgstr "מיקום להקלטה מיידית" + +msgid "Lock ratio" +msgstr "" + +# +msgid "Lock:" +msgstr "" + +# +msgid "Log results to harddisk" +msgstr "" + +msgid "Long filenames" +msgstr "" + +# +#, fuzzy +msgid "Long key press" +msgstr "לחיצת מקש ארוכה" + +# +msgid "Longitude" +msgstr "Longitude" + +msgid "Loop through to" +msgstr "" + +msgid "Luxembourgish" +msgstr "" + +msgid "MMC card" +msgstr "" + +msgid "MORE" +msgstr "עוד" + +# +msgid "Main menu" +msgstr "תפריט ראשי" + +msgid "Maintain old EPG data for" +msgstr "" + +# +msgid "Make this mark an 'in' point" +msgstr "" + +# +msgid "Make this mark an 'out' point" +msgstr "Make this mark an 'out' point" + +# +msgid "Make this mark just a mark" +msgstr "Make this mark just a mark" + +# +msgid "Manage extensions" +msgstr "נהל תוספים" + +# +msgid "Manage your receiver's software" +msgstr "נהל את תוכנת הממיר שלך" + +msgid "Manual" +msgstr "" + +# +msgid "Manual Scan" +msgstr "סריקה ידנית" + +msgid "Manual configuration" +msgstr "" + +# +#, fuzzy +msgid "Manual scan" +msgstr "סריקה ידנית" + +msgid "Manual transponder" +msgstr " ידני transponder" + +msgid "Manufacturer" +msgstr "יצרן" + +#, fuzzy +msgid "Margin after recording (minutes)" +msgstr "מרווח לפני הקלטה" + +#, fuzzy +msgid "Margin before recording (minutes)" +msgstr "מרווח לפני הקלטה" + +msgid "Max memory positions" +msgstr "" + +msgid "Max. bitrate: " +msgstr "" + +# +msgid "Media player" +msgstr "נגן המוזיקה" + +# +#, fuzzy +msgid "Media scanner" +msgstr "נגן המוזיקה" + +# +msgid "Medium is not a writeable DVD!" +msgstr "" + +msgid "Medium is not empty!" +msgstr "!המדיה איננה ריקה" + +msgid "Memory" +msgstr "" + +msgid "Memory index" +msgstr "" + +# +msgid "Menu" +msgstr "תפריט" + +# +msgid "Message" +msgstr "הודעה" + +msgid "Message..." +msgstr "...הודעה" + +#, python-format +msgid "Minimum age %d years" +msgstr "" + +msgid "Minimum send interval" +msgstr "" + +msgid "Missing " +msgstr "" + +# +#, fuzzy +msgctxt "Satellite configuration mode" +msgid "Mode" +msgstr "מוד" + +# +#, fuzzy +msgctxt "Video output mode" +msgid "Mode" +msgstr "מוד" + +# +msgid "Model: " +msgstr ":דגם" + +# +msgid "Modulation" +msgstr "Modulation" + +# +msgid "Modulator" +msgstr "" + +# +msgid "Mon" +msgstr "שני" + +# +msgid "Mon-Fri" +msgstr "שני-שישי" + +# +msgid "Monday" +msgstr "שני" + +# +msgid "Mosquito noise reduction" +msgstr "" + +msgid "Mount" +msgstr "" + +msgid "Move" +msgstr "" + +#, fuzzy +msgid "Move PiP to main picture" +msgstr "move PiP to main picture" + +msgid "Move Picture in Picture" +msgstr "Move Picture in Picture" + +msgid "Move east" +msgstr "Move east" + +msgid "Move to other directory" +msgstr "" + +msgid "Move to position X" +msgstr "" + +msgid "Move west" +msgstr "Move west" + +msgid "Moved to position 0" +msgstr "" + +msgid "Moved to position at index" +msgstr "" + +msgid "Movement" +msgstr "" + +msgid "Movie List Configuration" +msgstr "" + +msgid "Movie Selection" +msgstr "" + +#, fuzzy +msgid "Movie list configuration" +msgstr "Tuner הגדרת" + +msgid "Movie location" +msgstr "מיקום סרטים" + +#, fuzzy +msgid "Movie selection" +msgstr "מיקום סרטים" + +msgid "Movie/Drama" +msgstr "" + +msgid "Movielist menu" +msgstr "תפריט רשימת הסרטים" + +msgid "Moving" +msgstr "" + +msgid "Moving east ..." +msgstr "" + +msgid "Moving to position" +msgstr "" + +msgid "Moving west ..." +msgstr "" + +# +msgid "Multi EPG" +msgstr "Multi EPG" + +msgid "Multi-EPG bouquet selection" +msgstr "" + +msgid "Multimedia" +msgstr "מולטימדיה" + +msgid "Multiple service support" +msgstr "Multiple service support" + +msgid "Multiplex" +msgstr "" + +# +msgid "Multisat" +msgstr "Multisat" + +msgid "Multisat all select" +msgstr "" + +msgid "Music/Ballet/Dance" +msgstr "" + +msgid "Mute" +msgstr "השתק" + +# +msgid "N/A" +msgstr "N/A" + +# +msgid "NEXT" +msgstr "הבא" + +# +#, fuzzy +msgid "NFI image flashing" +msgstr "NFI צריבת אימג" + +# +msgid "NFI image flashing completed. Press Yellow to Reboot!" +msgstr "! הסתיימה. לחץ על הצהוב בכדי לאתחל NFI צריבת אימג" + +msgid "NIM" +msgstr "" + +msgid "NOW" +msgstr "עכשיו" + +# +msgid "NTSC" +msgstr "NTSC" + +# +msgid "Name" +msgstr "שם" + +msgid "Nameserver" +msgstr "Nameserver" + +#, python-format +msgid "Nameserver %d" +msgstr "Nameserver %d" + +msgid "Nameserver settings" +msgstr "Nameserver settings" + +#, fuzzy +msgid "Nameserver setup" +msgstr "Nameserver Setup" + +msgid "Namespace" +msgstr "" + +msgid "Netmask" +msgstr "Netmask" + +msgid "Network" +msgstr "רשת" + +msgid "Network ID" +msgstr "" + +#, fuzzy +msgid "Network configuration..." +msgstr "...הגדרת רשת" + +# +#, fuzzy +msgid "Network mount" +msgstr "מיפוי רשת" + +# +#, fuzzy, python-format +msgid "Network mount %s" +msgstr "מיפוי רשת" + +#, fuzzy +msgid "Network name (SSID)" +msgstr "Network test: " + +msgid "Network scan" +msgstr "Network scan" + +msgid "Network setup" +msgstr "Network setup" + +msgid "Network test" +msgstr "Network test" + +msgid "Network test..." +msgstr "Network test..." + +msgid "Network test: " +msgstr "Network test: " + +#, fuzzy +msgid "Network wizard" +msgstr "אשף הרשת" + +msgid "Network:" +msgstr ":רשת" + +# +msgid "New" +msgstr "חדש" + +msgid "New PIN" +msgstr "" + +# +msgid "New version:" +msgstr ":גרסה חדשה" + +msgid "News Current Affairs" +msgstr "" + +msgctxt "button label, 'next screen'" +msgid "Next" +msgstr "" + +msgctxt "now/next: 'next' event label" +msgid "Next" +msgstr "" + +# +msgid "No" +msgstr "לא" + +# +msgid "No (supported) DVDROM found!" +msgstr "" + +msgid "No Connection" +msgstr "אין חיבור" + +# +msgid "No HDD found or HDD not initialized!" +msgstr "! לא נמצא כונן קשיח או לא אותחל" + +# +msgid "No backup needed" +msgstr "לא נדרש גיבוי" + +msgid "No cable tuner found!" +msgstr "" + +# +msgid "" +"No data on transponder!\n" +"(Timeout reading PAT)" +msgstr "" + +msgid "No delay" +msgstr "" + +# +msgid "No description available." +msgstr "אין מידע נוסף" + +# +msgid "No details for this image file" +msgstr "אין מידע נוסף לאימג' הזה" + +# +msgid "No displayable files on this medium found!" +msgstr "!לא נמצאו קבצים מתאימים לתצוגה על המדיה הזו" + +# +msgid "No event info found, recording indefinitely." +msgstr "" + +# +msgid "No fast winding possible yet.. but you can use the number buttons to skip forward/backward!" +msgstr "" + +msgid "No free index available" +msgstr "" + +msgid "No free tuner!" +msgstr "!הטיונר בשימוש" + +# +msgid "No network connection available." +msgstr ".אין חיבור רשת זמין" + +# +msgid "No networks found" +msgstr "לא נמצאו רשתות" + +msgid "No new plugins found" +msgstr "" + +# +msgid "No positioner capable frontend found." +msgstr "" + +msgid "No satellites configured. Plese check your tuner setup." +msgstr "" + +msgid "No service" +msgstr "" + +msgid "No services/providers selected" +msgstr "" + +#, fuzzy +msgid "No standby" +msgstr "מצב המתנה" + +msgid "No suitable sat tuner found!" +msgstr "" + +# +msgid "No tags are set on these movies." +msgstr "" + +#, fuzzy +msgid "No timeout" +msgstr "Infobar timeout" + +# +msgid "No to all" +msgstr "לא להכל" + +msgid "No transparency" +msgstr "" + +msgid "No tuner is configured for use with a diseqc positioner!" +msgstr "!לא נמצא טיונר המוגדר לעבודה עם דייסק פוזישינר" + +msgid "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"!טיונר לא מוגדר\n" +".הגדר את הטיונר לפני סריקת תדרים" + +# +#, fuzzy +msgid "No updates available" +msgstr "עדכונים זמינים" + +msgid "No updates available. Please try again later." +msgstr "" + +# +msgid "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" +msgstr "" + +# +msgid "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" +msgstr "" + +msgid "No wireless networks found! Searching..." +msgstr "" + +msgid "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." +msgstr "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." + +msgid "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." +msgstr "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." + +msgid "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." +msgstr "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." + +msgid "No, but restart from begin" +msgstr "לא, אך התחל מחדש" + +msgid "No, do nothing." +msgstr ".לא, לא לעשות כלום" + +msgid "No, just start my receiver" +msgstr "" + +msgid "No, never" +msgstr "" + +# +msgid "None" +msgstr "אף אחד" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right) +msgid "Nonlinear" +msgstr "Nonlinear" + +msgid "Normal mode" +msgstr "" + +# +msgid "North" +msgstr "North" + +# +msgid "Norwegian" +msgstr "נורווגית" + +msgid "Not associated" +msgstr "" + +msgid "Not configured" +msgstr "" + +# +#, fuzzy, python-format +msgid "Not enough disk space. Please free up some disk space and try again. (%d MB required, %d MB available)" +msgstr "אין מקום בכונן הקשיח, פנה מעט מקום ונסה שוב (%d MB required, %d MB available)" + +msgid "Nothing connected" +msgstr "" + +msgid "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"!אין מה לסרוק\n" +".הגדר את הטינר לפני סריקת התדרים" + +msgctxt "now/next: 'now' event label" +msgid "Now" +msgstr "" + +# +#, fuzzy +msgid "Now playing" +msgstr "כעת מתנגן" + +msgid "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." +msgstr "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." + +# +msgid "OK" +msgstr "אשר" + +msgid "OK, guide me through the upgrade process" +msgstr "בסדר, הדרך אותי במהלך השידרוג" + +msgid "ONID" +msgstr "" + +msgid "OSD name request" +msgstr "" + +# +#, fuzzy +msgid "OSD settings" +msgstr " הגדרות OSD" + +msgid "OSD transparency" +msgstr "" + +# +msgid "Off" +msgstr "כבוי" + +msgid "Offline decode delay (ms)" +msgstr "" + +msgid "Ok" +msgstr "" + +# +msgid "On" +msgstr "דלוק" + +msgid "On end of movie" +msgstr "" + +msgid "On end of movie (as menu)" +msgstr "" + +# +msgid "One" +msgstr "אחד" + +msgid "Only extensions." +msgstr ".רק תוספים" + +# +#, fuzzy +msgid "Only free scan" +msgstr "Only Free scan" + +#, fuzzy +msgid "Open service list" +msgstr "open servicelist" + +#, fuzzy +msgid "Open the movie list" +msgstr "חזור לרשימת הסרטים" + +msgid "Orbital position" +msgstr "" + +msgid "Original" +msgstr "" + +msgid "Other" +msgstr "" + +msgid "Output" +msgstr "" + +msgid "Overwrite configuration files during software upgrade?" +msgstr "" + +#, fuzzy +msgid "Overwrite configuration files?" +msgstr "Tuner הגדרת" + +# +msgid "PAL" +msgstr "PAL" + +msgid "PCR PID" +msgstr "" + +msgid "PIDs" +msgstr "PIDs" + +#, fuzzy +msgid "PIN code needed" +msgstr "קוד נדרש" + +msgid "PLP ID" +msgstr "" + +msgid "PMT PID" +msgstr "" + +# +msgid "Package list update" +msgstr "עדכון רשימת חבילות" + +msgid "Packet management" +msgstr "Packet management" + +msgid "Packet manager" +msgstr "Packet manager" + +#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term +msgid "Pan&scan" +msgstr "" + +# +#, fuzzy +msgid "Parent directory" +msgstr "Parent Directory" + +# +msgid "Parental control" +msgstr "בקרת הורים" + +#, fuzzy +msgid "Parental control services editor" +msgstr "בקרת הורים, עריכת שירותים" + +# +msgid "Parental control setup" +msgstr "הגדרת בקרת הורים" + +# +msgid "Parental control type" +msgstr "סוג בקרת הורים" + +# +msgid "Password" +msgstr "סיסמא" + +#, fuzzy +msgid "Pause" +msgstr "pause" + +msgid "Pause movie at end" +msgstr "עצור סרט בסופו" + +# +#, fuzzy +msgid "Pause playback" +msgstr "Resuming playback" + +msgid "Pauze/Continue playback" +msgstr "" + +msgid "Percentage left" +msgstr "" + +#, fuzzy +msgid "Percentage right" +msgstr "Circular right" + +msgid "Permanently delete all recordings in the trash can?" +msgstr "" + +msgid "Permanently remove all deleted items" +msgstr "" + +msgid "Persian" +msgstr "" + +# +msgid "Phone number" +msgstr "מספר טלפון" + +#, fuzzy +msgid "PiP setup" +msgstr "הגדרת תמונה בתוך תמונה" + +msgid "Picon" +msgstr "" + +msgid "Picon and service name" +msgstr "" + +#, fuzzy +msgid "Picture player" +msgstr "נגן התמונות" + +#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term. +msgid "Pillarbox" +msgstr "Pillarbox" + +# +msgid "Pilot" +msgstr "" + +# +msgid "Play" +msgstr "נגן" + +# +msgid "Play DVD" +msgstr "Play DVD" + +msgid "Play audio in background" +msgstr "" + +# +#, fuzzy +msgid "Play audio-CD..." +msgstr "Play Audio-CD..." + +msgid "Play back media files" +msgstr "" + +# +#, fuzzy +msgid "Play entry" +msgstr "נגן רשומה" + +#, fuzzy +msgid "Play from next mark or playlist entry" +msgstr "play from next mark or playlist entry" + +# +#, fuzzy +msgid "Play from previous mark or playlist entry" +msgstr "play from previous mark or playlist entry" + +# +#, fuzzy +msgid "Play music..." +msgstr "...נגן מוזיקה" + +msgid "Play next" +msgstr "" + +msgid "Play next (return to movie list)" +msgstr "" + +msgid "Play next (return to previous service)" +msgstr "" + +msgid "Play previous" +msgstr "" + +# +msgid "Play recorded movies..." +msgstr "...נגן סרטים שהוקלטו" + +msgid "Please add titles to the compilation." +msgstr "Please add titles to the compilation." + +msgid "Please change recording endtime" +msgstr "אנא שנה את זמן סוף ההקלטה" + +msgid "Please check your network settings!" +msgstr "Please check your network settings!" + +msgid "Please choose an extension..." +msgstr "Please choose an extension..." + +msgid "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." + +msgid "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." + +msgid "Please connect your receiver to the internet" +msgstr "" + +msgid "Please do not change any values unless you know what you are doing!" +msgstr "Please do not change any values unless you know what you are doing!" + +msgid "Please enter a name for the new bouquet" +msgstr "בבקשה הכנס שם לתיקית הערוצים החדשה" + +msgid "Please enter a name for the new marker" +msgstr "בבקשה הכנס שם לסמן החדש" + +msgid "Please enter a new filename" +msgstr "בבקשה הכנס שם קובץ חדש" + +msgid "Please enter filename (empty = use current date)" +msgstr "Please enter filename (empty = use current date)" + +msgid "Please enter name of the new directory" +msgstr "בבקשה הכנס שם לתיקיה החדשה" + +msgid "Please enter new name:" +msgstr "" + +msgid "Please enter the correct pin code" +msgstr "בבקשה הכנס את הקוד המתאים" + +msgid "Please enter the old PIN code" +msgstr "" + +msgid "Please follow the instructions on the TV" +msgstr "אנא עקוב אחר ההוראות בטלויזיה" + +msgid "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." +msgstr "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." + +msgid "Please press OK to continue." +msgstr ".אנא לחץ אשר על מנת להמשיך" + +msgid "Please select a default EPG type..." +msgstr "" + +msgid "Please select a playlist to delete..." +msgstr "...אנא בחר רשימת שמע למחיקה" + +msgid "Please select a playlist..." +msgstr "...אנא בחר רשימת שמע " + +# +#, fuzzy +msgid "Please select a sub service..." +msgstr "Please select a subservice..." + +msgid "Please select a subservice to record..." +msgstr "Please select a subservice to record..." + +# +msgid "Please select a subservice..." +msgstr "Please select a subservice..." + +msgid "Please select an NFI file and press green key to flash!" +msgstr "" + +#, fuzzy +msgid "Please select medium to be scanned" +msgstr "Please Select Medium to be Scanned" + +msgid "Please select medium to use as backup location" +msgstr "Please select medium to use as backup location" + +# +msgid "Please select tag to filter..." +msgstr "" + +msgid "Please select the movie path..." +msgstr "Please select the movie path..." + +msgid "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." + +msgid "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." + +#, fuzzy +msgid "Please set up tuner A" +msgstr "Please set up tuner B" + +msgid "Please set up tuner B" +msgstr "Please set up tuner B" + +msgid "Please set up tuner C" +msgstr "Please set up tuner C" + +msgid "Please set up tuner D" +msgstr "Please set up tuner D" + +msgid "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." +msgstr "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." + +msgid "Please use the UP and DOWN keys to select your language. Afterwards press the OK button." +msgstr ".אנא בחר את השפה, לאחר מכן לחץ על אשר" + +msgid "Please wait" +msgstr "" + +#, fuzzy +msgid "Please wait (downloading channel list)" +msgstr "...נא המתן...טוען רשימה" + +#, fuzzy +msgid "Please wait (downloading softcam)" +msgstr "...נא המתן...טוען רשימה" + +#, fuzzy +msgid "Please wait (updating packages)" +msgstr "...נא המתן, טוען תמונה" + +msgid "Please wait for activation of your network configuration..." +msgstr "...נא המתן בזמן הפעלת הגדרות הרשת" + +msgid "Please wait while scanning is in progress..." +msgstr "...נא המתן , הסריקה בעיצומה" + +msgid "Please wait while we configure your network..." +msgstr "...נא המתן בעת הגדרת הרשת שלך" + +msgid "Please wait while we prepare your network interfaces..." +msgstr "...נא המתן בעת הכנת ממשקי הרשת" + +msgid "Please wait while we test your network..." +msgstr "...נא המתן בעת בדיקת הרשת" + +msgid "Please wait while your network is restarting..." +msgstr "...נא המתן בעת איתחול הרשת" + +msgid "Please wait..." +msgstr "...נא המתן" + +msgid "Please wait... Loading list..." +msgstr "...נא המתן...טוען רשימה" + +# +msgid "Plugin browser" +msgstr "סייר הפלאגינים" + +msgid "Plugin manager activity information" +msgstr "Plugin manager activity information" + +# +msgid "Plugin manager help" +msgstr "Plugin manager help" + +# +msgid "Plugins" +msgstr "פלאגינים" + +msgid "Polarisation" +msgstr "" + +msgid "Polarisation:" +msgstr "" + +# +msgid "Polarization" +msgstr "Polarization" + +# +msgid "Polish" +msgstr "פולנית" + +# +msgid "Port A" +msgstr "Port A" + +# +msgid "Port B" +msgstr "Port B" + +# +msgid "Port C" +msgstr "Port C" + +# +msgid "Port D" +msgstr "Port D" + +# +msgid "Portuguese" +msgstr "פורטוגזית" + +msgid "Position of completed timers in timerlist" +msgstr "" + +msgid "Position stored at index" +msgstr "" + +# +msgid "Positioner" +msgstr "Positioner" + +msgid "Positioner (selecting satellites)" +msgstr "" + +msgid "Positioner Setup" +msgstr "" + +msgid "Positioner setup" +msgstr "Positioner setup" + +# +msgid "Power threshold in mA" +msgstr "" + +# +msgid "Predefined transponder" +msgstr "" + +msgid "Prefer AC3 track" +msgstr "" + +msgid "Prefer AC3+ track" +msgstr "" + +msgid "Prefer audio track stored by service" +msgstr "" + +msgid "Prefer graphical DVB subtitles" +msgstr "" + +msgid "Prefer subtitles for hearing impaired" +msgstr "" + +msgid "Prefer subtitles stored by service" +msgstr "" + +msgid "Preferred tuner" +msgstr "" + +msgid "Preferred tuner for recordings" +msgstr "" + +msgid "Prepare another USB stick for image flashing" +msgstr "" + +# +msgid "Preparing... Please wait" +msgstr "מכין...נא המתן" + +msgid "Press '0' to toggle PiP mode" +msgstr "" + +msgid "Press INFO on your remote control for additional information." +msgstr "" + +msgid "Press MENU on your remote control for additional options." +msgstr "" + +# +msgid "Press OK on your remote control to continue." +msgstr " על השלט על מנת להמשיך OK לחץ " + +msgid "Press OK to activate the selected skin." +msgstr "Press OK to activate the selected skin." + +# +msgid "Press OK to activate the settings." +msgstr "Press OK to activate the settings." + +msgid "Press OK to edit the settings." +msgstr "Press OK to edit the settings." + +#, python-format +msgid "Press OK to get further details for %s" +msgstr "Press OK to get further details for %s" + +# +msgid "Press OK to scan" +msgstr "לחץ אשר לסריקה" + +#, fuzzy +msgid "Press OK to select a provider." +msgstr "Press OK to select a Provider." + +msgid "Press OK to select satellites" +msgstr "" + +msgid "Press OK to select/deselect a CAId." +msgstr "Press OK to select/deselect a CAId." + +# +msgid "Press OK to start the scan" +msgstr "לחץ אשר לתחילת הסריקה" + +msgid "Press OK to toggle the selection" +msgstr "" + +msgid "Press OK to toggle the selection." +msgstr "Press OK to toggle the selection." + +msgid "Press yellow to set this interface as default interface." +msgstr "לחץ על הצהוב לקביעת הממשק הזה כברירת מחדל" + +msgctxt "button label, 'previous screen'" +msgid "Prev" +msgstr "" + +msgid "Preview" +msgstr "תצוגה מקדימה" + +msgid "Preview menu" +msgstr "תצוגה מקדימה לתפריט" + +msgid "Preview selected channel" +msgstr "" + +msgid "Primary DNS" +msgstr "Primary DNS" + +msgid "Priority" +msgstr "עדיפות" + +msgid "Process" +msgstr "Process" + +msgid "Progress" +msgstr "" + +msgid "Progress bar left" +msgstr "" + +msgid "Progress bar right" +msgstr "" + +msgid "Properties of current title" +msgstr "Properties of current title" + +msgid "Protect services" +msgstr "Protect services" + +msgid "Protect setup" +msgstr "Protect setup" + +msgid "Provider" +msgstr "Provider" + +msgid "Provider to scan" +msgstr "Provider to scan" + +# +msgid "Providers" +msgstr "Providers" + +msgid "Put TV in standby" +msgstr "" + +msgid "Put receiver in standby" +msgstr "" + +# +msgid "Python frontend for /tmp/mmi.socket" +msgstr "" + +msgid "Quick" +msgstr "מהיר" + +#, fuzzy +msgid "Quick zap" +msgstr "זיפזופ מהיר" + +msgid "RF output" +msgstr "RF output" + +msgid "RGB" +msgstr "RGB" + +msgid "Radio" +msgstr "רדיו" + +# +#, fuzzy +msgid "Ram disk" +msgstr "כונן קשיח" + +msgid "Random" +msgstr "רנדומלי" + +#, python-format +msgid "Rating defined by broadcaster - %d" +msgstr "" + +msgid "Rating undefined" +msgstr "" + +msgid "Really close without saving settings?" +msgstr "?לסגור מבלי לשמור את השינויים" + +msgid "Really delete done timers?" +msgstr "?האם למחוק טיימרים שבוצעו" + +# +msgid "Really exit the subservices quickzap?" +msgstr "" + +msgid "Really reboot now?" +msgstr "?לבצע איתחול עכשיו" + +msgid "Really restart now?" +msgstr "?לבצע איתחול עכשיו" + +msgid "Really shutdown now?" +msgstr "?לבצע כיבוי עכשיו" + +msgid "Really upgrade the frontprocessor and reboot now?" +msgstr "" + +msgid "Really upgrade your settop box and reboot now?" +msgstr "" + +msgid "Reboot" +msgstr "איתחול" + +msgid "Rec" +msgstr "" + +# +#, fuzzy +msgid "Reception settings" +msgstr "Reception Settings" + +# +msgid "Record" +msgstr "הקלטה" + +# +#, python-format +msgid "Record time limited due to conflicting timer %s" +msgstr "%s זמן הקלטה הוגבל עקב התנגשות בין טיימרים" + +msgid "Recorded files..." +msgstr "...קבצים שהוקלטו" + +# +msgid "Recording" +msgstr "מקליט" + +msgid "Recording in progress" +msgstr "" + +msgid "Recording paths" +msgstr "מיקומי הקלטה" + +msgid "Recording type" +msgstr "" + +msgid "Recording(s) are in progress or coming up in few seconds!" +msgstr "Recording(s) are in progress or coming up in few seconds!" + +msgid "Recordings" +msgstr "הקלטות" + +msgid "Recordings always have priority" +msgstr "Recordings always have priority" + +msgid "Red button..." +msgstr "" + +msgid "Reenter new PIN" +msgstr "" + +#, fuzzy +msgid "Refresh rate" +msgstr "Refresh Rate" + +msgid "Refresh rate selection." +msgstr "Refresh rate selection." + +msgid "Regard deep standby as standby" +msgstr "" + +msgid "Relative" +msgstr "" + +msgid "Reload" +msgstr "טען מחדש" + +# +#, fuzzy +msgid "Reload black-/white lists" +msgstr "Reload Black-/Whitelists" + +msgid "Reloading bouquets and services..." +msgstr "" + +msgid "Remember last service in PiP" +msgstr "" + +msgid "Remember service PIN" +msgstr "" + +msgid "Remember these settings for each folder" +msgstr "" + +msgid "Reminder, you have chosen to save timeshift file." +msgstr "" + +# +#, fuzzy +msgid "Remote control type" +msgstr "סוג בקרת הורים" + +#, fuzzy +msgid "Removal has completed." +msgstr ".הסרה נכשלה" + +msgid "Remove" +msgstr "הסר" + +msgid "Remove a mark" +msgstr "הסר סמן" + +# +#, fuzzy +msgid "Remove a nameserver entry" +msgstr "remove a nameserver entry" + +# +#, fuzzy +msgid "Remove bookmark" +msgstr "remove bookmark" + +msgid "Remove completed timers after (days)" +msgstr "" + +msgid "Remove currently selected title" +msgstr "Remove currently selected title" + +msgid "Remove items from trash can after (days)" +msgstr "" + +msgid "Remove plugins" +msgstr "הסר פלאגינים" + +msgid "Remove title" +msgstr "הסר כותרת" + +msgid "Removing" +msgstr "מסיר" + +#, python-format +msgid "Removing directory %s failed. (Maybe not empty.)" +msgstr "Removing directory %s failed. (Maybe not empty.)" + +#, fuzzy +msgid "Removing partition table" +msgstr "הסר כותרת" + +msgid "Rename" +msgstr "שנה שם" + +msgid "Repeat" +msgstr "" + +#, fuzzy +msgid "Repeat type" +msgstr "Repeat Type" + +# +msgid "Repeating event currently recording... What do you want to do?" +msgstr "" + +msgid "Repeats" +msgstr "Repeats" + +msgid "Require authentication for http streams" +msgstr "" + +msgid "Required medium type:" +msgstr "Required medium type:" + +msgid "Rereading partition table" +msgstr "" + +msgid "Reserved" +msgstr "" + +# +msgid "Reset" +msgstr "Reset" + +# +msgid "Reset and renumerate title names" +msgstr "" + +msgid "Reset playback position" +msgstr "" + +msgid "Reset video enhancement settings to system defaults?" +msgstr "Reset video enhancement settings to system defaults?" + +msgid "Reset video enhancement settings to your last configuration?" +msgstr "Reset video enhancement settings to your last configuration?" + +# +msgid "Resolution" +msgstr "" + +# +msgid "Restart" +msgstr "איתחול" + +msgid "Restart GUI now?" +msgstr "GUI ?איתחול עכשיו" + +msgid "Restart enigma" +msgstr "" + +msgid "Restart network" +msgstr "איתחול רשת" + +msgid "Restart test" +msgstr "איתחול בדיקה" + +msgid "Restart your network connection and interfaces.\n" +msgstr ".איתחול חיבורי רשת וממשקים\n" + +msgid "Restore" +msgstr "שחזור" + +msgid "Restore backups" +msgstr "שחזור גיבויים" + +msgid "Restore is running..." +msgstr "...שחזור בפעולה" + +msgid "Restore system settings" +msgstr "שחזור הגדרות מערכת" + +#, fuzzy +msgid "Restoring..." +msgstr "...מקליט" + +msgid "Resume from last position" +msgstr "Resume from last position" + +#, python-format +msgid "Resume position at %s" +msgstr "Resume position at %s" + +# +#. TRANSLATORS: The string "Resuming playback" flashes for a moment +#. TRANSLATORS: at the start of a movie, when the user has selected +#. TRANSLATORS: "Resume from last position" as start behavior. +#. TRANSLATORS: The purpose is to notify the user that the movie starts +#. TRANSLATORS: in the middle somewhere and not from the beginning. +#. TRANSLATORS: (Some translators seem to have interpreted it as a +#. TRANSLATORS: question or a choice, but it is a statement.) +msgid "Resuming playback" +msgstr "Resuming playback" + +msgid "Return to movie list" +msgstr "חזור לרשימת הסרטים" + +msgid "Return to previous service" +msgstr "Return to previous service" + +msgid "Reverse bouquet buttons" +msgstr "" + +msgid "Reverse list" +msgstr "" + +msgid "Rewind speeds" +msgstr "מהירות הרצה אחורנית" + +msgid "Rewrap teletext subtitles" +msgstr "" + +msgid "Right" +msgstr "ימין" + +msgid "Right from servicename" +msgstr "" + +msgid "Roll-off" +msgstr "" + +msgid "Romanian" +msgstr "" + +msgid "Root directory" +msgstr "" + +msgid "Rotor step position:" +msgstr "" + +# +msgid "Rotor turning speed" +msgstr "Rotor turning speed" + +msgid "Round start time on" +msgstr "" + +# +msgid "Russian" +msgstr "רוסית" + +msgid "S-Video" +msgstr "S-Video" + +msgid "SID" +msgstr "" + +# +msgid "SINGLE LAYER DVD" +msgstr "SINGLE LAYER DVD" + +# +msgid "SNR" +msgstr "SNR" + +# +msgid "SNR:" +msgstr "SNR:" + +# +msgid "SSID:" +msgstr "SSID:" + +msgid "Same resolution as skin" +msgstr "" + +# +msgid "Sat" +msgstr "Sat" + +# +msgid "Satellite" +msgstr "לוויין" + +# +#, fuzzy +msgid "Satellite dish setup" +msgstr "הגדרת ציוד לוויין" + +msgid "Satellite equipment" +msgstr "ציוד לוויין" + +# +#, fuzzy +msgid "Satellite equipment setup" +msgstr "הגדרת ציוד לוויין" + +msgid "Satellite longitude:" +msgstr "" + +# +msgid "Satellites" +msgstr "לוויינים" + +msgid "Satfinder" +msgstr "Satfinder" + +# +msgid "Sats" +msgstr "Sats" + +msgid "Saturation" +msgstr "Saturation" + +# +msgid "Saturday" +msgstr "שבת" + +msgid "Save" +msgstr "שמור" + +#, fuzzy +msgid "Save playlist" +msgstr "save playlist" + +msgid "Save timeshift file" +msgstr "" + +msgid "Save timeshift file in movie directory" +msgstr "" + +# +msgid "Scaler sharpness" +msgstr "" + +#, fuzzy +msgid "Scaling mode" +msgstr "Scaling Mode" + +msgid "Scan" +msgstr "" + +msgid "Scan " +msgstr "סרוק" + +#. TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' +#, fuzzy, python-format +msgid "Scan %s" +msgstr "סרוק" + +#. TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' +#, python-format +msgid "Scan %s band" +msgstr "" + +# +msgid "Scan additional SR" +msgstr "Scan additional SR" + +# +#, fuzzy +msgid "Scan files..." +msgstr "...סרוק קבצים" + +#, fuzzy +msgid "Scan wireless networks" +msgstr "סרוק רשתות אלחוטיות" + +msgid "Scan your network for wireless access points and connect to them using your selected wireless device.\n" +msgstr "Scan your network for wireless access points and connect to them using your selected wireless device.\n" + +#, python-format +msgid "Scanning %s..." +msgstr "" + +#. TRANSLATORS: The stb is performing a channel scan, progress percentage is printed in '%d' (and '%%' will show a single '%' symbol) +#, python-format +msgid "Scanning - %d%% completed" +msgid_plural "Scanning - %d%% completed" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "Scanning completed, %d channel found" +msgid_plural "Scanning completed, %d channels found" +msgstr[0] "" +msgstr[1] "" + +msgid "Scanning failed!" +msgstr "" + +msgid "Scanning..." +msgstr "" + +# +msgid "Scans default lamedbs sorted by satellite with a connected dish positioner" +msgstr "" + +msgid "Search east" +msgstr "Search east" + +msgid "Search west" +msgstr "Search west" + +msgid "Searching" +msgstr "" + +msgid "Searching east ..." +msgstr "" + +msgid "Searching for available updates. Please wait..." +msgstr "Searching for available updates. Please wait..." + +msgid "Searching for new installed or removed packages. Please wait..." +msgstr "Searching for new installed or removed packages. Please wait..." + +msgid "Searching west ..." +msgstr "" + +msgid "Second cable of motorized LNB" +msgstr "" + +msgid "Secondary DNS" +msgstr "Secondary DNS" + +# +msgid "Seek" +msgstr "Seek" + +#, fuzzy +msgid "Seek backward" +msgstr "דלג אחורה" + +#, fuzzy +msgid "Seek backward (enter time)" +msgstr "דלג אחורה - הכנס זמן" + +#, fuzzy +msgid "Seek forward" +msgstr "דלג קדימה" + +#, fuzzy +msgid "Seek forward (enter time)" +msgstr "דלג קדימה - הכנס זמן" + +msgid "Select" +msgstr "בחר" + +#, fuzzy +msgid "Select CAId" +msgstr "בחר" + +# +msgid "Select HDD" +msgstr "Select HDD" + +# +#, fuzzy +msgid "Select a bouquet" +msgstr "Select a movie" + +# +msgid "Select a movie" +msgstr "Select a movie" + +#, fuzzy +msgid "Select a network adapter" +msgstr "Select Network Adapter" + +# +#, fuzzy +msgid "Select a skin" +msgstr "Select a movie" + +# +#, fuzzy +msgid "Select a tuner" +msgstr "Select a movie" + +#, fuzzy +msgid "Select a wireless network" +msgstr "בחר רשת אלחוטית" + +msgid "Select action" +msgstr "" + +#, python-format +msgid "Select action for timer %s:" +msgstr "" + +msgid "Select all" +msgstr "" + +msgid "Select an image to be downloaded" +msgstr "" + +msgid "Select audio track" +msgstr "Select audio track" + +#, fuzzy +msgid "Select backup files" +msgstr "בחר קבצי גיבוי" + +#, fuzzy +msgid "Select backup location" +msgstr "בחר מקום גיבוי" + +# +msgid "Select channel to record from" +msgstr "Select channel to record from" + +msgid "Select copy destination for:" +msgstr "" + +msgid "Select default EPG type..." +msgstr "" + +msgid "Select desired image from feed list" +msgstr "" + +msgid "Select destination for:" +msgstr "" + +msgid "Select files for backup." +msgstr "" + +msgid "Select files/folders to backup" +msgstr "Select files/folders to backup" + +msgid "Select input device" +msgstr "" + +msgid "Select input device." +msgstr "" + +msgid "Select interface" +msgstr "בחר ממשק" + +#, fuzzy +msgid "Select location" +msgstr "Select Location" + +# +#, fuzzy +msgid "Select movie" +msgstr "Select a movie" + +msgid "Select provider to add..." +msgstr "Select provider to add..." + +msgid "Select refresh rate" +msgstr "Select refresh rate" + +msgid "Select satellites" +msgstr "" + +msgid "Select service to add..." +msgstr "Select service to add..." + +msgid "Select sort method:" +msgstr "" + +# +#, fuzzy +msgid "Select target folder" +msgstr "בחר תיקיית יעד" + +#, fuzzy +msgid "Select the movie path" +msgstr "select the movie path" + +#, fuzzy +msgid "Select upgrade source" +msgstr "Select upgrade source to edit." + +msgid "Select upgrade source to edit." +msgstr "Select upgrade source to edit." + +# +msgid "Select video input with up/down buttons" +msgstr "Select video input with up/down buttons" + +msgid "Select video mode" +msgstr "Select video mode" + +msgid "Select wireless network" +msgstr "בחר רשת אלחוטית" + +msgid "Select your provider, and press OK to start the scan" +msgstr "" + +msgid "Selecting satellites 1 (USALS)" +msgstr "" + +msgid "Selecting satellites 2 (USALS)" +msgstr "" + +msgid "Send DiSEqC only on satellite change" +msgstr "Send DiSEqC only on satellite change" + +msgid "Separate titles with a main menu" +msgstr "Separate titles with a main menu" + +msgid "Sequence repeat" +msgstr "Sequence repeat" + +# +msgid "Serbian" +msgstr "סרבית" + +# +msgid "Service" +msgstr "שירות" + +# +msgid "Service has been added to the favourites." +msgstr "Service has been added to the favourites." + +msgid "Service has been added to the selected bouquet." +msgstr "Service has been added to the selected bouquet." + +# +#, fuzzy +msgid "Service info" +msgstr "Serviceinfo" + +# +msgid "" +"Service invalid!\n" +"(Timeout reading PMT)" +msgstr "" + +# +#, fuzzy +msgid "Service name" +msgstr "סרוקת שירות" + +# +msgid "" +"Service not found!\n" +"(SID not found in PAT)" +msgstr "" + +msgid "Service reference" +msgstr "" + +# +msgid "Service scan" +msgstr "סריקת שירותים" + +# +#, fuzzy +msgid "Service searching" +msgstr "סורק שירות" + +#, fuzzy +msgid "Service title mode" +msgstr "Select video mode" + +msgid "" +"Service unavailable!\n" +"Check tuner configuration!" +msgstr "" +"!שירותלא זמין\n" +"בדוק הגדרות טיונר" + +# +msgid "Services" +msgstr "שירותים" + +msgid "Set default" +msgstr "" + +# +#, fuzzy +msgid "Set end time" +msgstr "כוון זמן סיום" + +msgid "Set fixed" +msgstr "" + +msgid "Set fps for external subtitles" +msgstr "" + +# +msgid "Set interface as default Interface" +msgstr "Set interface as default Interface" + +msgid "Set limits" +msgstr "" + +msgid "Set the type of the progress indication in the channel selection screen." +msgstr "" + +msgid "Set time window to 1 hour" +msgstr "" + +msgid "Set time window to 2 hours" +msgstr "" + +msgid "Set time window to 3 hours" +msgstr "" + +msgid "Set time window to 4 hours" +msgstr "" + +msgid "Set time window to 5 hours" +msgstr "" + +msgid "Set time window to 6 hours" +msgstr "" + +# +#, fuzzy +msgid "Set voltage and 22KHz" +msgstr "Set Voltage and 22KHz" + +msgid "Settings" +msgstr "הגדרות" + +# +msgid "Setup" +msgstr "הגדרות" + +msgid "Setup menu" +msgstr "" + +#, fuzzy +msgid "Setup mode" +msgstr "Setup Mode" + +msgid "Setup your positioner" +msgstr "" + +#, fuzzy +msgid "Setup your satellite equipment" +msgstr "ציוד לוויין" + +# +#, python-format +msgid "Shall the USB stick wizard proceed and program the image file %s into flash memory?" +msgstr "" + +msgid "Sharpness" +msgstr "חדות" + +msgid "Short filenames" +msgstr "" + +msgid "Show EIT now/next in infobar" +msgstr "" + +#, fuzzy +msgid "Show EPG for current channel..." +msgstr "Show infobar on event change" + +# +#, fuzzy +msgid "Show EPG..." +msgstr " הראה EPG..." + +msgid "Show Games show" +msgstr "" + +msgid "Show SNR percentage instead of dB value" +msgstr "" + +msgid "Show VCR scart on main menu" +msgstr "" + +# +#, fuzzy +msgid "Show WLAN status" +msgstr "הצג סטטוס רשת אלחוטית" + +msgid "Show animation while busy" +msgstr "" + +#, fuzzy +msgid "Show background in radio mode" +msgstr "תמונת רקע" + +msgid "Show bouquet selection menu" +msgstr "" + +msgid "Show busy indicator when the system is busy." +msgstr "" + +msgid "Show channel numbers in channel selection" +msgstr "" + +msgid "Show columns" +msgstr "" + +msgid "Show crypto icons" +msgstr "" + +msgid "Show crypto info in infobar" +msgstr "" + +msgid "Show detailed event info" +msgstr "" + +#, fuzzy +msgid "Show event details" +msgstr "הצג מידע על האירוע" + +# +msgid "Show event-progress in channel selection" +msgstr "" + +#, fuzzy +msgid "Show extended description" +msgstr "הראה מידע מורחב" + +#, fuzzy +msgid "Show extensions..." +msgstr "...הצג תוספות" + +msgid "Show icon for new/unseen items" +msgstr "" + +msgid "Show in extensions menu" +msgstr "" + +# +#, fuzzy +msgid "Show info" +msgstr "הצג מידע" + +#, fuzzy +msgid "Show info line" +msgstr "show Infoline" + +msgid "Show infobar on channel change" +msgstr "Show infobar on channel change" + +msgid "Show infobar on event change" +msgstr "Show infobar on event change" + +msgid "Show infobar on skip forward/backward" +msgstr "Show infobar on skip forward/backward" + +msgid "Show latest commits on sourceforge" +msgstr "" + +# +#, fuzzy +msgid "Show message when recording starts" +msgstr "הצג הודעה כאשר הקלטה מתחילה" + +# +#, fuzzy +msgid "Show movie lengths in movielist" +msgstr "טען אורך הסרט ברשימת הסרטים" + +msgid "Show multi channel EPG" +msgstr "" + +msgid "Show picons in channel list" +msgstr "" + +msgid "Show positioner movement" +msgstr "Show positioner movement" + +msgid "Show screensaver" +msgstr "" + +msgid "Show second infobar" +msgstr "" + +msgid "Show service type icons" +msgstr "" + +# +msgid "Show services beginning with" +msgstr "Show services beginning with" + +#, fuzzy +msgid "Show shutdown menu" +msgstr "הראה תפריט כיבוי" + +msgid "Show single service EPG" +msgstr "" + +msgid "Show status icons in Movielist" +msgstr "" + +msgid "Show status icons in movie list" +msgstr "" + +msgid "Show status icons in movielist" +msgstr "" + +# +#, fuzzy +msgid "Show tag menu" +msgstr "show DVD main menu" + +# +msgid "Show the radio player..." +msgstr "...הצג את נגן הרדיו" + +# +msgid "Show the tv player..." +msgstr "Show the tv player..." + +msgid "Show warning when timeshift is stopped" +msgstr "" + +# +msgid "Shows the state of your wireless LAN connection.\n" +msgstr ".הצג סטטוס חיבור של הרשת האלחוטית\n" + +#, fuzzy +msgid "Shuffle playlist" +msgstr "clear playlist" + +# +msgid "Shutdown" +msgstr "כיבוי" + +msgid "Shutdown when in Standby" +msgstr "" + +msgid "Side by side" +msgstr "" + +msgid "Signal OK, proceeding" +msgstr "" + +msgid "Signal quality" +msgstr "" + +# +#, fuzzy +msgid "Signal strength:" +msgstr "Signal Strength:" + +# +msgid "Signal: " +msgstr "Signal: " + +# +msgid "Similar" +msgstr "Similar" + +msgid "Similar broadcasts:" +msgstr "Similar broadcasts:" + +# +msgid "Simple" +msgstr "Simple" + +# +msgid "Simple titleset (compatibility for legacy players)" +msgstr "" + +# +msgid "Single" +msgstr "Single" + +msgid "Single EPG" +msgstr " יחיד EPG" + +# +msgid "Single satellite" +msgstr "יחיד satellite" + +# +#, fuzzy +msgid "Single step (GOP)" +msgstr "יחיד satellite" + +# +msgid "Single transponder" +msgstr "Single transponder" + +msgid "Site latitude" +msgstr "" + +msgid "Site longitude" +msgstr "" + +# +msgid "Skin" +msgstr "Skin" + +# +msgid "Skins" +msgstr "Skins" + +#, fuzzy +msgid "Skip empty services" +msgstr "Protect services" + +msgid "Skip internet connection check (disables automatic package installation)" +msgstr "" + +# +#, fuzzy +msgid "Sleep timer" +msgstr "טיימר שינה" + +msgid "SleepTimer Configuration" +msgstr "" + +msgid "Sleeptimer" +msgstr "" + +#, fuzzy +msgid "Slide picture in loop" +msgstr "הצג תמונות בלולאה" + +#, fuzzy +msgid "Slide show interval (sec.)" +msgstr "משך המצגת (sec.)" + +#, python-format +msgid "Slot %d" +msgstr "Slot %d" + +msgid "Slovak" +msgstr "" + +# +msgid "Slovenian" +msgstr "סלובנית" + +msgid "Slow" +msgstr "Slow" + +#, fuzzy +msgid "Slow motion speeds" +msgstr "Slow Motion speeds" + +# +#, fuzzy +msgid "Small progress" +msgstr "בפעולה" + +msgid "Social/Political/Economics" +msgstr "" + +msgid "SoftCam / CI" +msgstr "" + +#, fuzzy +msgid "Softcam type" +msgstr "תוכנה" + +msgid "Software" +msgstr "תוכנה" + +msgid "Software management" +msgstr "ניהול תוכנה" + +msgid "Software manager setup" +msgstr "" + +msgid "Software restore" +msgstr "שחזור תוכנה" + +msgid "Software update" +msgstr "עדכון תוכנה" + +msgid "Softwaremanager information" +msgstr "" + +msgid "Some plugins are not available:\n" +msgstr "מספר פלאגינים לא זמינים:\n" + +#, python-format +msgid "Sorry, %s has not been installed!" +msgstr "" + +msgid "Sorry, deleting directories can (for now) only be done through the trash can." +msgstr "" + +#, fuzzy +msgid "Sorry, no backups found!" +msgstr "!לא נמצאו גיבויים" + +# +#, fuzzy +msgid "Sorry, no details available!" +msgstr "!סליחה, אין פרטים זמינים" + +#, fuzzy +msgid "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." +msgstr "" +".יעד הגיבוי לא ניתן לכתיבה\n" +".אנא בחר מיקום אחר" + +msgid "Sort" +msgstr "" + +# +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort A-Z" +msgstr "Sort A-Z" + +msgid "Sort by" +msgstr "" + +msgid "Sort list:" +msgstr "" + +# +#. TRANSLATORS: This must fit into the header button in the EPG-List +#, fuzzy +msgid "Sort time" +msgstr "Sort Time" + +# +msgid "Sound" +msgstr "קול" + +# +#, fuzzy +msgid "Sound carrier" +msgstr "Soundcarrier" + +msgid "Source request" +msgstr "" + +# +msgid "South" +msgstr "South" + +# +msgid "Spanish" +msgstr "ספרדית" + +msgid "Specify the end time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the end time until the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify the start time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the start time when the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify timeframe to ignore inactivity sleeptimer" +msgstr "" + +msgid "Specify timeframe to ignore the shutdown in standby" +msgstr "" + +# +msgid "Split preview mode" +msgstr "Split preview mode" + +msgid "Splitscreen" +msgstr "" + +msgid "Sports" +msgstr "" + +#, fuzzy +msgid "Standard" +msgstr "סטנדרטי" + +msgid "Standart list" +msgstr "" + +msgid "Standby" +msgstr "המתנה" + +#, fuzzy +msgid "Standby / restart" +msgstr " איתחול / המתנה" + +msgid "Standby after current event" +msgstr "" + +#, python-format +msgid "Standby fan %d PWM" +msgstr "" + +# +#, fuzzy, python-format +msgid "Standby fan %d voltage" +msgstr " מאוורר %d מתח" + +msgid "Standby in " +msgstr "" + +msgid "StandbyLED" +msgstr "" + +# +msgid "Start from the beginning" +msgstr "התחל מההתחלה" + +msgid "Start offline decode" +msgstr "" + +# +msgid "Start recording?" +msgstr "?התחל להקליט" + +# +msgid "Start test" +msgstr "התחל בדיקה" + +# +#, fuzzy +msgid "Start time" +msgstr "זמן התחלה" + +msgid "Start time to ignore inactivity sleeptimer" +msgstr "" + +msgid "Start time to ignore shutdown in standby" +msgstr "" + +#, fuzzy +msgid "Start timeshift" +msgstr "timeshift התחל" + +msgid "Start with list screen" +msgstr "" + +msgid "Starting on" +msgstr "מתחיל ב" + +msgid "Startup the set top box in standby" +msgstr "" + +msgid "Startup to Standby" +msgstr "" + +# +msgid "Step east" +msgstr "Step east" + +# +msgid "Step west" +msgstr "Step west" + +msgid "Stepped east" +msgstr "" + +msgid "Stepped west" +msgstr "" + +# +msgid "Stop" +msgstr "Stop" + +#, fuzzy +msgid "Stop PiP" +msgstr "עצור תמונה בתוך תמונה" + +# +msgid "Stop current event and disable coming events" +msgstr "Stop current event and disable coming events" + +# +msgid "Stop current event but not coming events" +msgstr "Stop current event but not coming events" + +# +#, fuzzy +msgid "Stop entry" +msgstr "עצור בדיקה" + +# +msgid "Stop playing this movie?" +msgstr "?האם לעצור את הסרט" + +msgid "Stop recording" +msgstr "" + +msgid "Stop recording and delete" +msgstr "" + +msgid "Stop service on return to movie list" +msgstr "" + +# +msgid "Stop test" +msgstr "עצור בדיקה" + +msgid "Stop testing plane after # failed transponders" +msgstr "Stop testing plane after # failed transponders" + +msgid "Stop testing plane after # successful transponders" +msgstr "Stop testing plane after # successful transponders" + +msgid "Stop timer recording" +msgstr "" + +#, fuzzy +msgid "Stop timeshift" +msgstr "timeshift עצור" + +# +#, fuzzy +msgid "Stop timeshift?" +msgstr "? Timeshift עצור" + +msgid "Stopped" +msgstr "" + +msgid "Store at index" +msgstr "" + +msgid "Store position" +msgstr "Store position" + +# +msgid "Stored position" +msgstr "Stored position" + +msgid "Stream" +msgstr "" + +msgid "Stream request" +msgstr "" + +msgid "Strongest position" +msgstr "" + +# +msgid "Subservice list..." +msgstr "Subservice list..." + +# +msgid "Subservices" +msgstr "Subservices" + +msgid "Subtitle Quickmenu" +msgstr "" + +# +#, fuzzy +msgid "Subtitle alignment" +msgstr "בחירת תרגום" + +msgid "Subtitle border width" +msgstr "" + +msgid "Subtitle delay when timing is bad" +msgstr "" + +msgid "Subtitle delay when timing lacks" +msgstr "" + +# +#, fuzzy +msgid "Subtitle font size" +msgstr "תרגום" + +msgid "Subtitle language selection 1" +msgstr "" + +msgid "Subtitle language selection 2" +msgstr "" + +msgid "Subtitle language selection 3" +msgstr "" + +msgid "Subtitle language selection 4" +msgstr "" + +# +#, fuzzy +msgid "Subtitle position" +msgstr "בחירת תרגום" + +# +msgid "Subtitle selection" +msgstr "בחירת תרגום" + +msgid "Subtitle selection..." +msgstr "" + +msgid "Subtitle settings" +msgstr "" + +# +msgid "Subtitles" +msgstr "תרגום" + +# +msgid "Sun" +msgstr "ראשון" + +# +msgid "Sunday" +msgstr "ראשון" + +#, fuzzy +msgid "Swap PiP and main picture" +msgstr "move PiP to main picture" + +# +#, fuzzy +msgid "Swap services" +msgstr "שירותים" + +# +msgid "Swedish" +msgstr "שוודית" + +msgid "Switch TV to correct input" +msgstr "" + +msgid "Switch between filelist/playlist" +msgstr "" + +msgid "Switch between normal mode and list mode" +msgstr "" + +msgid "Switch to HDMI in mode" +msgstr "" + +#, fuzzy +msgid "Switch to filelist" +msgstr "העבר לרשימת הקבצים" + +msgid "Switch to next channel" +msgstr "" + +#, fuzzy +msgid "Switch to next channel in history" +msgstr "next channel in history" + +# +#, fuzzy +msgid "Switch to next sub service" +msgstr "Switch to next subservice" + +#, fuzzy +msgid "Switch to playlist" +msgstr "העבר לרשימת השמע" + +# +#, fuzzy +msgid "Switch to previous channel" +msgstr "Switch to previous subservice" + +# +#, fuzzy +msgid "Switch to previous channel in history" +msgstr "previous channel in history" + +# +#, fuzzy +msgid "Switch to previous sub service" +msgstr "Switch to previous subservice" + +# +msgid "Switchable tuner types:" +msgstr "" + +msgid "Symbol rate" +msgstr "" + +msgid "Symbol rate:" +msgstr "" + +msgid "Sync failure moving back to origin !" +msgstr "" + +# +msgid "System" +msgstr "מערכת" + +# +#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) +msgid "TRANSLATOR_INFO" +msgstr "" + +# +msgid "TS file is too large for ISO9660 level 1!" +msgstr "" + +msgid "TSID" +msgstr "" + +msgid "TV physical address report" +msgstr "" + +msgid "TXT PID" +msgstr "" + +msgid "Table of contents for collection" +msgstr "" + +msgid "Tags" +msgstr "Tags" + +msgid "Teletext subtitle color" +msgstr "" + +#, fuzzy +msgid "Temperature and fan control" +msgstr "טמפרטורה ובקרת מאוורר" + +# +msgid "Terrestrial" +msgstr "" + +msgid "Terrestrial provider" +msgstr "Terrestrial provider" + +msgid "Test DiSEqC settings" +msgstr "Test DiSEqC settings" + +# +msgid "Test mode" +msgstr "Test mode" + +msgid "Test the network configuration of your receiver.\n" +msgstr "" + +# +#, fuzzy +msgid "Test type" +msgstr "Test Type" + +#, fuzzy +msgid "Text color" +msgstr "צבע טקסט" + +msgid "Thai" +msgstr "" + +msgid "" +"Thank you for using the wizard.\n" +"Please press OK to continue." +msgstr "" +"Thank you for using the wizard.\n" +"Please press OK to continue." + +#, fuzzy +msgid "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." +msgstr "" +"Thank you for using the wizard.\n" +"Please press OK to continue." + +msgid "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?" +msgstr "" + +msgid "The PIN code has been changed successfully." +msgstr "" + +msgid "The PIN codes you entered are different." +msgstr "" + +msgid "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" +msgstr "" + +msgid "The backup failed. Please choose a different backup location." +msgstr "The backup failed. Please choose a different backup location." + +#, python-format +msgid "" +"The current beta image might not be stable.\n" +"For more information see %s." +msgstr "" + +# +#, python-format +msgid "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." +msgstr "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." + +#, python-format +msgid "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" +msgstr "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" + +# +msgid "The following files were found..." +msgstr "The following files were found..." + +msgid "The md5sum validation failed, the file may be corrupted!" +msgstr "" + +#, fuzzy +msgid "" +"The network wizard extension is not installed!\n" +"Please install it." +msgstr "" +"The NetworkWizard extension is not installed!\n" +"Please install it." + +#, python-format +msgid "The path %s already exists." +msgstr "The path %s already exists." + +# +msgid "The pin code you entered is wrong." +msgstr ".הקוד שהכנסת שגוי" + +# +#, python-format +msgid "The results have been written to %s." +msgstr "" + +# +msgid "The sleep timer has been activated." +msgstr ".טיימר השינה הופעל" + +# +msgid "The sleep timer has been disabled." +msgstr ".טיימר השינה בוטל" + +#, fuzzy +msgid "" +"The software management extension is not installed!\n" +"Please install it." +msgstr "" +"The Softwaremanagement extension is not installed!\n" +"Please install it." + +#, python-format +msgid "The status of the current beta image could not be checked because %s can not be reached." +msgstr "" + +msgid "The timer file (timers.xml) is corrupt and could not be loaded." +msgstr "The timer file (timers.xml) is corrupt and could not be loaded." + +#, fuzzy +msgid "The user interface of your receiver is restarting" +msgstr "...נא המתן בעת איתחול הרשת" + +msgid "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" +msgstr "" + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." +msgstr "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it." +msgstr "" +"The wireless LAN plugin is not installed!\n" +"Please install it." + +msgid "The wizard can backup your current settings. Do you want to do a backup now?" +msgstr "?האשף יכול לבצע גיבוי להגדרות. האם אתה מעוניין לעשות זאת עכשיו" + +#, python-format +msgid "The wizard found a configuration backup. Do you want to restore your old settings from %s?" +msgstr "" + +msgid "The wizard is finished now." +msgstr "The wizard is finished now." + +msgid "There are at least " +msgstr "There are at least " + +#, fuzzy, python-format +msgid "There are at least %s updates available." +msgstr ".אין עדכונים זמינים" + +# +msgid "There are currently no outstanding actions." +msgstr "" + +msgid "There are no updates available." +msgstr ".אין עדכונים זמינים" + +msgid "There is no signal to lock on !" +msgstr "" + +msgid "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" +msgstr "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" + +# +msgid "This DVD RW medium is already formatted - reformatting will erase all content on the disc." +msgstr "" + +msgid "" +"This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!" +msgstr "" + +msgid "This plugin is installed." +msgstr ".הפלאגין הזה הותקן" + +msgid "This plugin is not installed." +msgstr ".הפלאגין הזה לא הותקן" + +msgid "This plugin will be installed." +msgstr ".הפלאגין הזה יותקן" + +msgid "This plugin will be removed." +msgstr ".הפלאגין הזה יוסר" + +#, python-format +msgid "This receiver cannot decode %s streams!" +msgstr "" + +#, fuzzy +msgid "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration" +msgstr "" +"This test checks for configured Nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and Adapter setup\n" +"- if you configured your Nameservers manually please verify your entries in the \"Nameserver\" Configuration" + +#, fuzzy +msgid "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" +msgstr "" +"This test checks whether a network cable is connected to your LAN-Adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" + +#, fuzzy +msgid "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" +msgstr "" +"This test checks whether a valid IP Address is found for your LAN Adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP Address was found\n" +"- please check your DHCP, cabling and adapter setup" + +msgid "" +"This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." +msgstr "" + +#, fuzzy +msgid "This test detects your configured LAN adapter." +msgstr "This test detects your configured LAN-Adapter." + +msgid "" +"This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\n" +"Are you sure?" +msgstr "" + +# +msgid "Three" +msgstr "שלוש" + +# +msgid "Threshold" +msgstr "" + +# +msgid "Thu" +msgstr "" + +# +msgid "Thumbnails" +msgstr "" + +# +msgid "Thursday" +msgstr "יום חמישי" + +# +msgid "Time" +msgstr "זמן" + +# +#, fuzzy +msgid "Time scale" +msgstr "בחירת טיימר" + +# +msgid "Timer" +msgstr "טיימר" + +msgid "Timer Overview" +msgstr "" + +# +#, fuzzy +msgid "Timer edit" +msgstr "עריכת טיימר" + +# +#, fuzzy +msgid "Timer editor" +msgstr "עורך הטיימר" + +# +msgid "Timer entry" +msgstr "רשומת טיימר" + +msgid "Timer log" +msgstr "טיימר לוג" + +# +msgid "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" +msgstr "" + +# +#, fuzzy +msgid "Timer overview" +msgstr "רשומת טיימר" + +# +#, fuzzy +msgid "Timer recording location" +msgstr "מיקום הקלטה לטיימר" + +# +msgid "Timer sanity error" +msgstr "Timer sanity error" + +# +msgid "Timer selection" +msgstr "בחירת טיימר" + +msgid "Timer selection..." +msgstr "" + +# +#, fuzzy +msgid "Timer type" +msgstr "סוג הטיימר" + +# +msgid "Timeshift" +msgstr "Timeshift" + +msgid "Timeshift Live" +msgstr "" + +# +msgid "Timeshift location" +msgstr "Timeshift מיקום ה" + +# +msgid "Timeshift not possible!" +msgstr "Timeshift not possible!" + +# +msgid "Timezone" +msgstr "איזור זמן" + +# +msgid "Title" +msgstr "כותרת" + +# +msgid "Title properties" +msgstr "מאפייני הכותרת" + +# +msgid "Titleset mode" +msgstr "" + +msgid "To audio selection" +msgstr "" + +msgid "To subtitle selection" +msgstr "" + +msgid "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." +msgstr "" + +# +msgid "Today" +msgstr "היום" + +msgid "Toggle a cut mark at the current position" +msgstr "" + +# +#, fuzzy +msgid "Tone amplitude" +msgstr "Tone Amplitude" + +# +msgid "Tone mode" +msgstr "Tone mode" + +# +msgid "Toneburst" +msgstr "Toneburst" + +# +msgid "Toneburst A/B" +msgstr "Toneburst A/B" + +msgid "Top and bottom" +msgstr "" + +# +msgid "Track" +msgstr "Track" + +# +msgid "Translation" +msgstr "תרגום" + +# +msgid "Translation:" +msgstr "תרגום:" + +msgid "Translations" +msgstr "" + +# +msgid "Transmission mode" +msgstr "Transmission mode" + +# +msgid "Transponder" +msgstr "Transponder" + +# +#, fuzzy +msgid "Transponder type" +msgstr "Transponder" + +msgid "Trash can" +msgstr "" + +# +msgid "Tries left:" +msgstr "" + +msgid "Try to find used transponders in cable network.. please wait..." +msgstr "Try to find used transponders in cable network.. please wait..." + +# +msgid "Trying to download a new packetlist. Please wait..." +msgstr "" + +# +msgid "Tue" +msgstr "שלישי" + +# +msgid "Tuesday" +msgstr "יום שלישי" + +msgid "Tune" +msgstr "Tune" + +#, fuzzy +msgid "Tune and focus" +msgstr "Tuner מצב ה" + +msgid "Tune failed!" +msgstr "Tune failed!" + +# +msgid "Tuner" +msgstr "Tuner" + +msgid "Tuner configuration" +msgstr "Tuner הגדרת" + +msgid "Tuner is not supported" +msgstr "" + +#, fuzzy +msgid "Tuner slot" +msgstr "Tuner Slot" + +msgid "Tuner status" +msgstr "Tuner מצב ה" + +#, fuzzy, python-format +msgid "Tuner status %s" +msgstr "Tuner מצב ה" + +msgid "Tuner type" +msgstr "Tuner סוג ה" + +msgid "Turkish" +msgstr "טורקית" + +msgid "Turn on the power LED during standby." +msgstr "" + +msgid "Turning step size" +msgstr "" + +# +msgid "Two" +msgstr "שתיים" + +# +msgid "Type" +msgstr "סוג" + +# +msgid "Type of scan" +msgstr "סוג סריקה" + +# +msgid "USALS" +msgstr "USALS" + +msgid "USALS calibration" +msgstr "" + +msgid "USB stick" +msgstr "" + +# +msgid "USB stick wizard" +msgstr "" + +msgid "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" + +msgid "Undo install" +msgstr "Undo install" + +msgid "Undo uninstall" +msgstr "Undo uninstall" + +msgid "Unencrypted" +msgstr "" + +# +msgid "UnhandledKey" +msgstr "" + +# +msgid "Unicable" +msgstr "" + +# +msgid "Unicable LNB" +msgstr "" + +# +msgid "Unicable Martix" +msgstr "" + +msgid "Uninstall" +msgstr "הסר" + +# +msgid "Universal LNB" +msgstr "" + +msgid "Unknown" +msgstr "" + +msgid "Unmount" +msgstr "" + +msgid "Unsupported" +msgstr "לא נתמך" + +# +msgid "Update" +msgstr "עדכן" + +msgid "Update and ask to reboot" +msgstr "" + +msgid "Update and reboot (recommended)" +msgstr "" + +#, fuzzy +msgid "Update channel list only" +msgstr "next channel in history" + +#, python-format +msgid "Update completed, %d package was installed." +msgid_plural "Update completed, %d packages were installed." +msgstr[0] "" +msgstr[1] "" + +msgid "Update completed. Do you want to reboot your receiver?" +msgstr "" + +msgid "Update failed. Your receiver does not have a working internet connection." +msgstr "" + +msgid "Update has completed." +msgstr "" + +# +msgid "Updatefeed not available." +msgstr "Updatefeed not available." + +# +msgid "Updating software catalog" +msgstr "מעדכן קטלוג תוכנה" + +# +msgid "Upgrading" +msgstr "משדרג" + +# +msgid "Use" +msgstr "Use" + +# +msgid "Use DHCP" +msgstr "Use DHCP" + +msgid "Use EIT EPG information when it is available." +msgstr "" + +msgid "Use FreeSat EPG information when it is available." +msgstr "" + +msgid "Use MHW EPG information when it is available." +msgstr "" + +msgid "Use Netmed EPG information when it is available." +msgstr "" + +msgid "Use TV remote control" +msgstr "" + +# +#, fuzzy +msgid "Use USALS for this sat" +msgstr "Use usals for this sat" + +msgid "Use ViaSat EPG information when it is available." +msgstr "" + +msgid "Use Virgin EPG information when it is available." +msgstr "" + +# +msgid "Use a gateway" +msgstr "" + +msgid "Use fastscan channel names" +msgstr "" + +msgid "Use fastscan channel numbering" +msgstr "" + +msgid "Use frequency or channel" +msgstr "" + +msgid "Use individual settings for each directory" +msgstr "" + +#, fuzzy +msgid "Use interface" +msgstr "Use Interface" + +msgid "Use official channel numbering" +msgstr "" + +msgid "Use original DVB subtitle position" +msgstr "" + +msgid "Use original teletext position" +msgstr "" + +msgid "Use power measurement" +msgstr "Use power measurement" + +#, fuzzy +msgid "Use the network wizard to configure selected network adapter" +msgstr "Use the Networkwizard to configure selected network adapter" + +#, fuzzy +msgid "Use the network wizard to configure your network\n" +msgstr "Use the Networkwizard to configure your Network\n" + +msgid "Use the up/down keys on your remote control to select an option. After that, press OK." +msgstr ".השתמש במקשי השלט על מנת לבחור באפשרות. בסוף, לחץ אשר" + +#, fuzzy +msgid "Use the wizard to set up basic features" +msgstr "Use wizard to set up basic features" + +#, fuzzy +msgid "Use these input device settings?" +msgstr "Use this video enhancement settings?" + +#, fuzzy +msgid "Use these settings?" +msgstr "שחזור הגדרות מערכת" + +msgid "Use this video enhancement settings?" +msgstr "Use this video enhancement settings?" + +#, fuzzy +msgid "Use trash can in movielist" +msgstr "חזור לרשימת הסרטים" + +# +msgid "Used service scan type" +msgstr "Used service scan type" + +msgid "User - bouquets" +msgstr "" + +# +msgid "User defined" +msgstr "User defined" + +msgid "User defined transponder" +msgstr "" + +#, fuzzy +msgid "User interface" +msgstr "Use Interface" + +# +msgid "Username" +msgstr "שם משתמש" + +#, python-format +msgid "Using LNB %d" +msgstr "" + +msgid "Using fixed address" +msgstr "" + +#, python-format +msgid "Using tuner %s" +msgstr "" + +msgid "Usually when the subtitle language is the same as the audio language, the subtitles will not be used. Enable this option to allow these subtitles to be used." +msgstr "" + +# +msgid "VCR scart" +msgstr "VCR scart" + +# +msgid "VMGM (intro trailer)" +msgstr "" + +msgid "Vertical" +msgstr "Vertical" + +msgid "Vertical turning speed" +msgstr "" + +msgid "Video PID" +msgstr "" + +msgid "Video enhancement preview" +msgstr "Video enhancement preview" + +msgid "Video enhancement settings" +msgstr "Video enhancement settings" + +msgid "Video enhancement setup" +msgstr "Video enhancement setup" + +#, fuzzy +msgid "Video fine tuning" +msgstr "Video Fine-Tuning" + +msgid "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." +msgstr "" + +msgid "Video mode selection." +msgstr "Video mode selection." + +# +#, fuzzy +msgid "Video output" +msgstr "Video Output" + +# +#, fuzzy +msgid "Video setup" +msgstr "Video הגדרת" + +# +#, fuzzy +msgid "Video wizard" +msgstr "Video אשף ה" + +#, python-format +msgid "Video: %s fps" +msgstr "" + +msgid "VideoMode" +msgstr "" + +msgid "Videocodec" +msgstr "" + +msgid "Videoformat" +msgstr "" + +msgid "Videosize" +msgstr "" + +# +msgid "View Rass interactive..." +msgstr "" + +# +msgid "View details" +msgstr "הצג פרטים" + +# +msgid "View list of available " +msgstr "" + +# +msgid "View list of available CommonInterface extensions" +msgstr "View list of available CommonInterface extensions" + +# +msgid "View list of available EPG extensions." +msgstr "" + +msgid "View list of available Satellite equipment extensions." +msgstr "View list of available Satellite equipment extensions." + +msgid "View list of available communication extensions." +msgstr "View list of available communication extensions." + +msgid "View list of available default settings" +msgstr "View list of available default settings" + +#, fuzzy +msgid "View list of available display and userinterface extensions." +msgstr "View list of available Display and Userinterface extensions." + +msgid "View list of available multimedia extensions." +msgstr "View list of available multimedia extensions." + +msgid "View list of available networking extensions" +msgstr "View list of available networking extensions" + +msgid "View list of available recording extensions" +msgstr "View list of available recording extensions" + +msgid "View list of available skins" +msgstr "View list of available skins" + +msgid "View list of available software extensions" +msgstr "View list of available software extensions" + +msgid "View list of available system extensions" +msgstr "View list of available system extensions" + +# +#, fuzzy +msgid "View photos..." +msgstr "הצג תמונות" + +# +msgid "View teletext..." +msgstr "" + +# +#, fuzzy +msgid "View video CD..." +msgstr "View Video CD..." + +# +#, fuzzy +msgid "Virtual keyboard" +msgstr "מקלדת וירטואלית" + +# +msgid "Voltage mode" +msgstr "Voltage mode" + +# +msgid "Volume" +msgstr "Volume" + +# +msgid "W" +msgstr "" + +# +msgid "WEP" +msgstr "" + +msgid "WLAN connection" +msgstr "WLAN connection" + +# +msgid "WPA" +msgstr "WPA" + +# +msgid "WPA or WPA2" +msgstr "WPA or WPA2" + +# +msgid "WPA2" +msgstr "WPA2" + +# +msgid "WSS on 4:3" +msgstr "" + +# +msgid "Waiting" +msgstr "ממתין" + +msgid "Waiting for mount" +msgstr "" + +msgid "Waiting for partition" +msgstr "" + +msgid "Wakeup" +msgstr "" + +msgid "Wakeup TV from standby" +msgstr "" + +msgid "Wakeup receiver for start timer" +msgstr "" + +msgid "Wakeup receiver from standby" +msgstr "" + +msgid "Wakeup signal from TV" +msgstr "" + +msgid "Wakeup type" +msgstr "" + +msgid "Warning: no LNB; using factory defaults." +msgstr "" + +# +#, fuzzy +msgid "Watch movies..." +msgstr "...נגן סרטים שהוקלטו" + +#, fuzzy +msgid "Watch recordings..." +msgstr "...מקליט" + +# +msgid "Wed" +msgstr "רביעי" + +# +msgid "Wednesday" +msgstr "יום רביעי" + +# +msgid "Weekday" +msgstr "Weekday" + +msgid "Weighted position" +msgstr "" + +msgid "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." +msgstr "" + +msgid "Welcome to the image upgrade wizard. The wizard will assist you in upgrading the firmware of your receiver by providing a backup facility for your current settings and a short explanation of how to upgrade your firmware." +msgstr "" + +msgid "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" +msgstr "" + +msgid "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." +msgstr "" + +# +msgid "Welcome..." +msgstr "...ברוך הבא" + +# +msgid "West" +msgstr "West" + +msgid "West limit set" +msgstr "" + +# +msgid "What do you want to scan?" +msgstr "?מה ברצונל לסרוק" + +msgid "When enabled the PiP can be closed by the exit button." +msgstr "" + +msgid "When enabled the arrow buttons around the OK button will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled the left, right, CH+/-, B+/-, P+/- buttons will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled you can specify a timeframe to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "When enabled you can specify a timeframe were the inactivity sleeptimer is ignored. Not the detection is disabled during this timeframe but the inactivity timeout is disabled" +msgstr "" + +msgid "When enabled you can zap channels with the CH+/-, B+/-, P+/- buttons instead of opening the channel selection list." +msgstr "" + +msgid "When enabled you get the channel selection list via the OK button, the infobar toggle is then transfered to exit button" +msgstr "" + +msgid "When enabled, AIT data will be included in http streams. This allows a client receiver to use HbbTV." +msgstr "" + +msgid "When enabled, ECM data will be included in http streams. This allows a client receiver to do the descrambling." +msgstr "" + +msgid "When enabled, EIT data will be included in http streams. This allows a client receiver to show EPG." +msgstr "" + +msgid "When enabled, a popup message will be shown when a movie has finished and the next one will start." +msgstr "" + +msgid "When enabled, a popup message will be shown when a recording starts." +msgstr "" + +msgid "When enabled, a radio background image will be visible while listening to a radio channel." +msgstr "" + +msgid "When enabled, a recording is allowed to interrupt live tv, when there are no free tuners." +msgstr "" + +msgid "When enabled, a warning will be displayed and the user will get an option to stop or to continue the timeshift." +msgstr "" + +msgid "When enabled, authentication is required to watch http streams." +msgstr "" + +msgid "When enabled, channel numbering will start at '1' for each bouquet." +msgstr "" + +msgid "When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen." +msgstr "" + +msgid "When enabled, continue to the next bouquet when the last channel of the current bouquet is reached while changing channels." +msgstr "" + +msgid "When enabled, deleted recordings are moved to the trash can, instead of being deleted immediately." +msgstr "" + +msgid "When enabled, display the EIT now/next eventdata in infobar. When disabled, display now/next eventdata from the EPG cache instead." +msgstr "" + +msgid "When enabled, encryption info will be shown in the infobar (when supported by the skin)." +msgstr "" + +msgid "When enabled, error messages related to the Common Interface module will not be shown." +msgstr "" + +msgid "When enabled, error messages related to zapping will not be shown." +msgstr "" + +msgid "When enabled, external subtitles will be always turned on for playback movie." +msgstr "" + +msgid "When enabled, graphical DVB subtitles are preferred over teletext subtitles, when both types are available." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be centered horizontally." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be displayed at their original position." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be displayed in yellow, instead of the original color." +msgstr "" + +msgid "When enabled, http streams are descrambled on the server side. The (remote) client receiver does not have to do descrambling." +msgstr "" + +msgid "When enabled, it is possible to leave the movieplayer with exit." +msgstr "" + +msgid "When enabled, measure power consumption to detect when the rotor stops turning (when supported by the tuner)." +msgstr "" + +msgid "When enabled, number markers will be hiden." +msgstr "" + +msgid "When enabled, services may be grouped in multiple bouquets." +msgstr "" + +msgid "When enabled, show channel numbers in the channel selection screen." +msgstr "" + +msgid "When enabled, subtitles for the hearing impaired can be used." +msgstr "" + +msgid "When enabled, subtitles for the hearing impaired will be preferred over normal subtitles, when both types are available." +msgstr "" + +msgid "When enabled, teletext pages will be cached, allowing faster access." +msgstr "" + +msgid "When enabled, teletext subtitles will be displayed at their original position." +msgstr "" + +msgid "When enabled, the VCR scart option will be shown on the main menu" +msgstr "" + +msgid "When enabled, the channel selection list will be hidden while listening to a radio channel" +msgstr "" + +msgid "When enabled, the infobar will be displayed when a new event starts." +msgstr "" + +msgid "When enabled, the infobar will be displayed when changing channels." +msgstr "" + +msgid "When enabled, the infobar will be displayed when skipping forwards/backwards during media playback." +msgstr "" + +msgid "When enabled, the lenght of each recording will be shown in the movielist (this might cause some additional loading time)." +msgstr "" + +msgid "When enabled, the original line breaks will be removed from the teletext subtitles." +msgstr "" + +msgid "When enabled, the receiver will automatically use the audio track which you selected before." +msgstr "" + +msgid "When enabled, the receiver will automatically use the subtitles which you selected before." +msgstr "" + +msgid "When enabled, the receiver will no longer monitor the tuned transponder for possible changes. Do not use this option unless you know what you are doing." +msgstr "" + +msgid "When enabled, the receiver will select an AC3 track (when available)." +msgstr "" + +msgid "When enabled, the receiver will select an AC3+ track (when available)." +msgstr "" + +msgid "When enabled, timeshift starts automatically in background after specified time." +msgstr "" + +#, fuzzy +msgid "When enabled, use DHCP for the IP configuration." +msgstr "open nameserver configuration" + +msgid "When enabled, your receiver will detect activity on the VCR SCART input." +msgstr "" + +msgid "When nonzero, a recording will start earlier than the starting time indicated by the EPG." +msgstr "" + +msgid "When nonzero, a recording will stop later than the ending time indicated by the EPG." +msgstr "" + +msgid "When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture." +msgstr "" + +msgid "When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture." +msgstr "" + +msgid "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" +msgstr "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" + +msgid "Where do you want to backup your settings?" +msgstr "Where do you want to backup your settings?" + +# +msgid "Where to save temporary timeshift recordings?" +msgstr "Where to save temporary timeshift recordings?" + +msgid "Wireless LAN" +msgstr "Wireless LAN" + +#, fuzzy +msgid "Wireless network" +msgstr "Wireless Network" + +#, fuzzy +msgid "Wireless network configuration..." +msgstr "...הגדרת רשת" + +msgid "Wireless network connection setup" +msgstr "" + +msgid "Wireless network connection setup." +msgstr "" + +msgid "Wireless network state" +msgstr "" + +msgid "With popup" +msgstr "" + +msgid "Without popup" +msgstr "" + +msgid "Would you like to install a softcam?" +msgstr "" + +msgid "Write error while recording. Disk full?\n" +msgstr "Write error while recording. Disk full?\n" + +msgid "Write failed!" +msgstr "Write failed!" + +msgid "YPbPr" +msgstr "YPbPr" + +msgid "Year" +msgstr "שנה" + +msgid "Yellow DVB subtitles" +msgstr "" + +# +msgid "Yes" +msgstr "כן" + +msgid "Yes and save" +msgstr "" + +msgid "Yes and save in movie dir" +msgstr "" + +msgid "Yes to all" +msgstr "כן לכל" + +msgid "Yes, always" +msgstr "" + +msgid "Yes, and delete this movie" +msgstr "כן, ומחק את הסרט הזה" + +# +msgid "Yes, backup my settings!" +msgstr "!כן, גבה את ההגדרות" + +msgid "Yes, delete this movie and return to movie list" +msgstr "" + +msgid "Yes, do a manual scan now" +msgstr "Yes, do a manual scan now" + +msgid "Yes, do an automatic scan now" +msgstr "Yes, do an automatic scan now" + +msgid "Yes, do another manual scan now" +msgstr "Yes, do another manual scan now" + +msgid "Yes, perform a shutdown now." +msgstr "Yes, perform a shutdown now." + +msgid "Yes, restore the settings now" +msgstr "Yes, restore the settings now" + +msgid "Yes, returning to movie list" +msgstr "Yes, returning to movie list" + +msgid "Yesterday" +msgstr "" + +#, python-format +msgid "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" +msgstr "" + +msgid "You can cancel the installation." +msgstr "You can cancel the installation." + +msgid "You can cancel the removal." +msgstr "You can cancel the removal." + +msgid "You can continue watching TV etc. while this is running." +msgstr "" + +msgid "You can install this plugin." +msgstr "You can install this plugin." + +msgid "You can only burn receiver recordings!" +msgstr "" + +msgid "You can remove this plugin." +msgstr "You can remove this plugin." + +# +msgid "You cannot delete this!" +msgstr "!אין אפשרות למחוק את הקובץ הזה" + +msgid "You didn't select a channel to record from." +msgstr "" + +msgid "You have chosen to backup your settings. Please press OK to start the backup now." +msgstr "You have chosen to backup your settings. Please press OK to start the backup now." + +# +msgid "You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased." +msgstr "" + +msgid "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." +msgstr "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." + +#, python-format +msgid "You have to wait %s!" +msgstr "You have to wait %s!" + +msgid "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." +msgstr "" + +msgid "You system does not support ext4" +msgstr "" + +msgid "Your backup succeeded. We will now continue to explain the further upgrade process." +msgstr "Your backup succeeded. We will now continue to explain the further upgrade process." + +msgid "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" +msgstr "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" + +msgid "Your current collection will get lost!" +msgstr "Your current collection will get lost!" + +# +msgid "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." +msgstr "" + +msgid "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" + +msgid "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." +msgstr "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." + +#, python-format +msgid "Your internet connection is working (ip: %s)" +msgstr "" + +msgid "Your network configuration has been activated." +msgstr "Your network configuration has been activated." + +msgid "Your receiver does not have an internet connection" +msgstr "" + +#, fuzzy +msgid "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" +msgstr "" +"Your Dreambox is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" + +msgid "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." +msgstr "" + +msgid "Your receiver is rebooting" +msgstr "" + +msgid "Your receiver is shutting down" +msgstr "" + +msgid "Your receiver is shutting down. Please stand by..." +msgstr "" + +msgid "Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver." +msgstr "" + +msgid "Your receiver will got to stand by due to the sleeptimer." +msgstr "" + +msgid "Your receiver will got to standby due to inactivity." +msgstr "" + +msgid "Your receiver will restart after pressing OK on your remote control." +msgstr "" + +# +msgid "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." +msgstr "" + +msgid "Zap" +msgstr "" + +# +msgid "Zap back to previously tuned service?" +msgstr "?לזפזפ אחורנית לערוץ הקודם" + +# +msgid "Zap back to service before positioner setup?" +msgstr "?לזפזפ אחורנית לערוץ הקודם" + +# +msgid "Zap back to service before tuner setup?" +msgstr "?לזפזפ אחורנית לערוץ הקודם" + +msgid "Zap focus to Picture in Picture" +msgstr "" + +msgid "Zap focus to main screen" +msgstr "" + +msgid "Zap mode" +msgstr "" + +msgid "Zap to selected channel" +msgstr "" + +msgid "Zap to selected channel, or show detailed event info (depends on configuration)" +msgstr "" + +msgid "[alternative edit]" +msgstr "[alternative edit]" + +msgid "[bouquet edit]" +msgstr "[bouquet edit]" + +msgid "[favourite edit]" +msgstr "[favourite edit]" + +# +msgid "[move mode]" +msgstr "[move mode]" + +# +msgid "a gui to assign services/providers to common interface modules" +msgstr "" + +# +msgid "a gui to assign services/providers/caids to common interface modules" +msgstr "" + +msgid "abort alternatives edit" +msgstr "abort alternatives edit" + +# +msgid "abort bouquet edit" +msgstr "abort bouquet edit" + +# +msgid "abort favourites edit" +msgstr "abort favourites edit" + +msgid "about to start" +msgstr "about to start" + +msgid "activate network adapter configuration" +msgstr "activate network adapter configuration" + +msgid "add alternatives" +msgstr "add alternatives" + +msgid "add bookmark" +msgstr "add bookmark" + +msgid "add bouquet" +msgstr "add bouquet" + +msgid "add marker" +msgstr "הוסף סמן" + +# +msgid "add service to bouquet" +msgstr "הוסף את הערוץ לתיקית הערוצים" + +# +msgid "add service to favourites" +msgstr "הוסף את הערוץ למועדפים" + +msgid "add to parental protection" +msgstr "הוסף לבקרת הורים" + +msgid "adult movie/drama" +msgstr "" + +msgid "advanced" +msgstr "מתקדם" + +msgid "adventure/western/war" +msgstr "" + +msgid "advertisement/shopping" +msgstr "" + +msgid "after " +msgstr "" + +#, fuzzy +msgid "alphabetic" +msgstr "alphabetic sort" + +msgid "alphabetic reverse" +msgstr "" + +msgid "alternative" +msgstr "" + +msgid "always" +msgstr "" + +msgid "and select next channel" +msgstr "" + +msgid "and select previous channel" +msgstr "" + +msgid "arts/culture (without music, general)" +msgstr "" + +msgid "arts/culture magazine" +msgstr "" + +msgid "athletics" +msgstr "" + +# +msgid "audio tracks" +msgstr "audio tracks" + +msgid "auto" +msgstr "אוטומטי" + +#, fuzzy +msgid "automatic" +msgstr "אוטומטי" + +# +msgid "back" +msgstr "אחורנית" + +msgid "background image" +msgstr "תמונת רקע" + +msgid "ballet" +msgstr "" + +#, python-format +msgid "bc%s" +msgstr "" + +msgid "better" +msgstr "better" + +msgid "black" +msgstr "black" + +msgid "black & white" +msgstr "" + +msgid "blacklist" +msgstr "blacklist" + +msgid "blue" +msgstr "blue" + +msgid "broadcasting/press" +msgstr "" + +#, fuzzy +msgid "by date" +msgstr "מיין לפי תאריך" + +msgid "cartoon/puppets" +msgstr "" + +msgid "center" +msgstr "" + +msgid "centered" +msgstr "" + +msgid "centered, wrapped" +msgstr "" + +# +msgid "chapters" +msgstr "chapters" + +msgid "childrens's/youth program (general)" +msgstr "" + +# +msgid "circular left" +msgstr "circular left" + +# +msgid "circular right" +msgstr "circular right" + +msgid "comedy" +msgstr "" + +# +msgid "complex" +msgstr "complex" + +# +msgid "config menu" +msgstr "תפריט הגדרות" + +msgid "confirmed" +msgstr "אושר" + +msgid "connected" +msgstr "התחבר" + +msgid "continue" +msgstr "המשך" + +msgid "cooking" +msgstr "" + +msgid "copy to bouquets" +msgstr "העתק לתיקית ערוצים" + +msgid "create directory" +msgstr "צור תיקיה" + +#, python-format +msgid "currently installed image: %s" +msgstr "" + +# +msgid "daily" +msgstr "יומי" + +# +msgid "day" +msgstr "יום" + +#, fuzzy +msgid "default" +msgstr "ברירת מחדל" + +msgid "delete cut" +msgstr "delete cut" + +msgid "delete..." +msgstr "" + +msgid "descramble and record ecm" +msgstr "" + +msgid "detective/thriller" +msgstr "" + +msgid "disable" +msgstr "הפסק" + +msgid "disable move mode" +msgstr "disable move mode" + +msgid "disabled" +msgstr "disabled" + +msgid "disconnected" +msgstr "disconnected" + +msgid "discussion/interview/debate" +msgstr "" + +msgid "do nothing" +msgstr "do nothing" + +msgid "documentary" +msgstr "" + +msgid "don't descramble, record ecm" +msgstr "" + +msgid "done!" +msgstr "!בוצע" + +msgid "east" +msgstr "" + +msgid "economics/social advisory" +msgstr "" + +msgid "edit alternatives" +msgstr "edit alternatives" + +msgid "education/science/factual topics (general)" +msgstr "" + +msgid "empty" +msgstr "ריק" + +msgid "enable" +msgstr "אפשר" + +# +msgid "enable bouquet edit" +msgstr "enable bouquet edit" + +# +msgid "enable favourite edit" +msgstr "enable favourite edit" + +# +msgid "enable move mode" +msgstr "enable move mode" + +msgid "enabled" +msgstr "אופשר" + +msgid "end alternatives edit" +msgstr "end alternatives edit" + +# +msgid "end bouquet edit" +msgstr "end bouquet edit" + +msgid "end cut here" +msgstr "end cut here" + +# +msgid "end favourites edit" +msgstr "end favourites edit" + +msgid "entertainment (10-16 year old)" +msgstr "" + +msgid "entertainment (6-14 year old)" +msgstr "" + +msgid "equal to" +msgstr "equal to" + +msgid "equestrian" +msgstr "" + +msgid "exit DVD player or return to file browser" +msgstr "exit DVD player or return to file browser" + +msgid "exit movielist" +msgstr "" + +msgid "exit network adapter configuration" +msgstr "exit network adapter configuration" + +msgid "exit networkadapter setup menu" +msgstr "exit networkadapter setup menu" + +msgid "experimental film/video" +msgstr "" + +msgid "false" +msgstr "" + +msgid "fashion" +msgstr "" + +# +msgid "fileformats (BMP, PNG, JPG, GIF)" +msgstr "" + +msgid "filename" +msgstr "filename" + +msgid "film/cinema" +msgstr "" + +msgid "fine arts" +msgstr "" + +msgid "fine-tune your display" +msgstr "fine-tune your display" + +msgid "fitness & health" +msgstr "" + +#, fuzzy +msgid "flat alphabetic" +msgstr "alphabetic sort" + +#, fuzzy +msgid "flat alphabetic reverse" +msgstr "alphabetic sort" + +msgid "folk/traditional music" +msgstr "" + +msgid "football/soccer" +msgstr "" + +msgid "foreign countries/expeditions" +msgstr "" + +# +msgid "forward to the next chapter" +msgstr "" + +# +msgid "free" +msgstr "" + +msgid "from" +msgstr "" + +msgid "further education" +msgstr "" + +msgid "game show/quiz/contest" +msgstr "" + +msgid "gardening" +msgstr "" + +msgid "go to deep standby" +msgstr "go to deep standby" + +msgid "go to standby" +msgstr "go to standby" + +# +msgid "grab this frame as bitmap" +msgstr "" + +msgid "green" +msgstr "ירוק" + +msgid "handicraft" +msgstr "" + +msgid "height" +msgstr "" + +msgid "help..." +msgstr "...עזרה" + +msgid "horizontal" +msgstr "horizontal" + +msgid "information/education/school program" +msgstr "" + +# +msgid "init module" +msgstr "init module" + +# +msgid "init modules" +msgstr "" + +msgid "insert mark here" +msgstr "הכנס סמן כאן" + +msgid "invalid type" +msgstr "" + +msgid "jazz" +msgstr "" + +msgid "jump back to the previous title" +msgstr "jump back to the previous title" + +msgid "jump forward to the next title" +msgstr "jump forward to the next title" + +msgid "languages" +msgstr "" + +# +msgid "leave movie player..." +msgstr "leave movie player..." + +msgid "left" +msgstr "left" + +msgid "left, wrapped" +msgstr "" + +msgid "leisure hobbies (general)" +msgstr "" + +msgid "length" +msgstr "length" + +msgid "limit ..., aborting !" +msgstr "" + +# +msgid "list style compact" +msgstr "" + +# +msgid "list style compact with description" +msgstr "" + +# +msgid "list style default" +msgstr "" + +# +msgid "list style single line" +msgstr "" + +msgid "literature" +msgstr "" + +msgid "live broadcast" +msgstr "" + +msgid "locked" +msgstr "locked" + +msgid "loopthrough to" +msgstr "" + +msgid "magazines/reports/documentary" +msgstr "" + +# +msgid "manual" +msgstr "ידני" + +msgid "martial sports" +msgstr "" + +msgid "medicine/physiology/psychology" +msgstr "" + +msgid "menu" +msgstr "תפריט" + +msgid "mins" +msgstr "דקות" + +msgid "minutes" +msgstr "דקות" + +msgid "month" +msgstr "חודש" + +msgid "motor sport" +msgstr "" + +msgid "motoring" +msgstr "" + +msgid "move down to last entry" +msgstr "move down to last entry" + +msgid "move down to next entry" +msgstr "move down to next entry" + +msgid "move up to first entry" +msgstr "move up to first entry" + +msgid "move up to previous entry" +msgstr "move up to previous entry" + +msgid "movie/drama (general)" +msgstr "" + +msgid "multinorm" +msgstr "multinorm" + +msgid "music/ballet/dance (general)" +msgstr "" + +msgid "musical/opera" +msgstr "" + +msgid "nature/animals/environment" +msgstr "" + +msgid "never" +msgstr "לעולם" + +msgid "new media" +msgstr "" + +msgid "news magazine" +msgstr "" + +msgid "news/current affairs (general)" +msgstr "" + +msgid "news/weather report" +msgstr "" + +# +msgid "no" +msgstr "לא" + +# +msgid "no CAId selected" +msgstr "" + +# +msgid "no CI slots found" +msgstr "" + +# +msgid "no module found" +msgstr "no module found" + +msgid "no storage devices found" +msgstr "" + +# +msgid "none" +msgstr "none" + +msgid "normal" +msgstr "" + +msgid "not configured" +msgstr "not configured" + +msgid "not locked" +msgstr "not locked" + +msgid "not supported" +msgstr "" + +msgid "not used" +msgstr "לא בשימוש" + +msgid "nothing connected" +msgstr "nothing connected" + +msgid "of a DUAL layer medium used." +msgstr "of a DUAL layer medium used." + +msgid "of a SINGLE layer medium used." +msgstr "of a SINGLE layer medium used." + +# +msgid "off" +msgstr "כבוי" + +msgid "offset is" +msgstr "" + +# +msgid "on" +msgstr "דלוק" + +msgid "on READ ONLY medium." +msgstr "on READ ONLY medium." + +msgid "on end of movie" +msgstr "" + +# +msgid "once" +msgstr "once" + +msgid "only from deep standby" +msgstr "" + +msgid "only from standby" +msgstr "" + +msgid "open EPG..." +msgstr "" + +msgid "open Info..." +msgstr "" + +msgid "open nameserver configuration" +msgstr "open nameserver configuration" + +msgid "original" +msgstr "" + +msgid "original language" +msgstr "" + +msgid "pass" +msgstr "pass" + +msgid "performing arts" +msgstr "" + +msgid "play as picture in picture" +msgstr "" + +msgid "play in mainwindow" +msgstr "" + +msgid "please press OK when ready" +msgstr "please press OK when ready" + +msgid "please wait, loading picture..." +msgstr "...נא המתן, טוען תמונה" + +msgid "popular culture/traditional arts" +msgstr "" + +msgid "pre-school children's program" +msgstr "" + +msgid "receiver software because updates are available." +msgstr "" + +msgid "record" +msgstr "הקלט" + +msgid "recording..." +msgstr "...מקליט" + +msgid "red" +msgstr "אדום" + +msgid "religion" +msgstr "" + +msgid "remarkable people" +msgstr "" + +# +msgid "remove after this position" +msgstr "remove after this position" + +msgid "remove all alternatives" +msgstr "remove all alternatives" + +msgid "remove all new found flags" +msgstr "remove all new found flags" + +# +msgid "remove before this position" +msgstr "remove before this position" + +# +msgid "remove bookmark" +msgstr "remove bookmark" + +msgid "remove directory" +msgstr "remove directory" + +msgid "remove entry" +msgstr "remove entry" + +msgid "remove from parental protection" +msgstr "remove from parental protection" + +# +msgid "remove new found flag" +msgstr "remove new found flag" + +msgid "remove selected satellite" +msgstr "remove selected satellite" + +msgid "remove this mark" +msgstr "remove this mark" + +msgid "rename entry" +msgstr "" + +msgid "repeat playlist" +msgstr "repeat playlist" + +# +msgid "repeated" +msgstr "repeated" + +msgid "reverse by date" +msgstr "" + +msgid "rewind to the previous chapter" +msgstr "rewind to the previous chapter" + +msgid "right" +msgstr "ימין" + +msgid "right, wrapped" +msgstr "" + +msgid "rock/pop" +msgstr "" + +msgid "romance" +msgstr "" + +msgid "save last directory on exit" +msgstr "save last directory on exit" + +msgid "save playlist on exit" +msgstr "save playlist on exit" + +# +msgid "scan state" +msgstr "מצב סריקה" + +msgid "science fiction/fantasy/horror" +msgstr "" + +# +msgid "second cable of motorized LNB" +msgstr "" + +msgid "seconds" +msgstr "שניות" + +msgid "select" +msgstr "בחר" + +# +msgid "select CAId's" +msgstr "" + +msgid "select EPG..." +msgstr "" + +msgid "select Info..." +msgstr "" + +# +msgid "select menu entry" +msgstr "בחר רשומה בתפריט" + +msgid "select movie" +msgstr "בחר סרט" + +msgid "select the movie path" +msgstr "" + +msgid "serious music/classic music" +msgstr "" + +msgid "serious/classical/religious/historical movie/drama" +msgstr "" + +msgid "service PIN" +msgstr "" + +msgid "set as startup service" +msgstr "" + +msgid "setup PIN" +msgstr "" + +# +msgid "show DVD main menu" +msgstr "show DVD main menu" + +msgid "show all tags" +msgstr "" + +msgid "show alternatives" +msgstr "הראה אלטרנטיבות" + +msgid "show event details" +msgstr "הצג מידע על האירוע" + +msgid "show extended description" +msgstr "" + +msgid "show mediaplayer on mainmenu" +msgstr "" + +msgid "show softwaremanager in setup menu" +msgstr "" + +msgid "show softwaremanager on blue button" +msgstr "" + +msgid "show tag menu" +msgstr "" + +msgid "show transponder info" +msgstr "transponder הראה מידע על ה" + +msgid "show/game show (general)" +msgstr "" + +msgid "shuffle" +msgstr "" + +msgid "shut down" +msgstr "כיבוי" + +msgid "simple" +msgstr "פשוט" + +msgid "skip backward" +msgstr "דלג אחורה" + +msgid "skip forward" +msgstr "דלג קדימה" + +msgid "soap/melodram/folkloric" +msgstr "" + +msgid "social/political issues/economics (general)" +msgstr "" + +msgid "social/spiritual science" +msgstr "" + +msgid "sorting of playlists" +msgstr "" + +msgid "special characters" +msgstr "תוויות מיוחדות" + +msgid "special events" +msgstr "" + +msgid "special format data DVD (HDTV compatible)" +msgstr "" + +msgid "sports (general)" +msgstr "" + +msgid "sports magazine" +msgstr "" + +msgid "standard" +msgstr "סטנדרטי" + +msgid "start cut here" +msgstr "התחל גזירה כאן" + +msgid "start directory" +msgstr "התחל תיקיה" + +msgid "stepsize" +msgstr "" + +msgid "stereo" +msgstr "סטריאו" + +msgid "stop using as startup service" +msgstr "" + +# +msgid "switch to bookmarks" +msgstr "העבר לסימניות" + +msgid "switch to filelist" +msgstr "העבר לרשימת הקבצים" + +msgid "switch to the next angle" +msgstr "העבר לזווית הבאה" + +msgid "switch to the next audio track" +msgstr "העבר לפס השמע הבא" + +msgid "switch to the next subtitle language" +msgstr "העבר לשפת תרגום הבאה" + +msgid "talk show" +msgstr "" + +msgid "team sports" +msgstr "" + +msgid "technology/natural science" +msgstr "" + +msgid "template file" +msgstr "קובץ תבנית" + +msgid "tennis/squash" +msgstr "" + +msgid "this recording" +msgstr "ההקלטה הזו" + +msgid "this service is protected by a parental control pin" +msgstr "שירות זה מוגן על ידי בקרת הורים" + +# +msgid "toggle time, chapter, audio, subtitle info" +msgstr "" + +msgid "top" +msgstr "" + +msgid "tourism/travel" +msgstr "" + +msgid "true" +msgstr "" + +msgid "unavailable" +msgstr "" + +msgid "unconfirmed" +msgstr "לא אושר" + +msgid "undefined" +msgstr "" + +msgid "unknown" +msgstr "לא ידוע" + +# +msgid "unknown service" +msgstr "שירות לא ידוע" + +msgid "unpublished" +msgstr "" + +# +msgid "until standby/restart" +msgstr "until standby/restart" + +# +msgid "user defined" +msgstr "user defined" + +msgid "variety show" +msgstr "" + +# +msgid "vertical" +msgstr "vertical" + +# +msgid "wait for ci..." +msgstr "wait for ci..." + +# +msgid "wait for mmi..." +msgstr "wait for mmi..." + +msgid "waiting" +msgstr "ממתין" + +msgid "water sport" +msgstr "" + +# +msgid "weekly" +msgstr "שבועי" + +msgid "west" +msgstr "" + +msgid "when PiPzap enabled zap channel down..." +msgstr "" + +msgid "when PiPzap enabled zap channel up..." +msgstr "" + +msgid "white" +msgstr "" + +msgid "whitelist" +msgstr "רשימה לבנה" + +msgid "width" +msgstr "" + +msgid "winter sport" +msgstr "" + +msgid "wireless network interface" +msgstr "" + +#, python-format +msgid "with %d error" +msgid_plural "with %d errors" +msgstr[0] "" +msgstr[1] "" + +msgid "working" +msgstr "עובד" + +msgid "yellow" +msgstr "צהוב" + +# +msgid "yes" +msgstr "כן" + +msgid "yes (keep feeds)" +msgstr "כן (שמור פידים)" + +msgid "zap" +msgstr "זיפזופ" + +msgid "zap and record" +msgstr "" + +msgid "zapped" +msgstr "זופזפ" + +# +#~ msgid "AA" +#~ msgstr "AA" + +# +#~ msgid "AB" +#~ msgstr "AB" + +# +#, fuzzy +#~ msgid "Activate PiP" +#~ msgstr "הפעל תמונה בתוך תמונה" + +#, fuzzy +#~ msgid "Add/remove timer for current event" +#~ msgstr "הקלט - עצור אחרי סיום התוכנית הנוכחית" + +# +#, fuzzy +#~ msgid "All satellites" +#~ msgstr "כל הלוויינים" + +# +#~ msgid "BA" +#~ msgstr "BA" + +# +#~ msgid "BB" +#~ msgstr "BB" + +#~ msgid "DiSEqC repeats" +#~ msgstr "DiSEqC repeats" + +#~ msgid "No satellite frontend found!!" +#~ msgstr "No satellite frontend found!!" + +#~ msgid "Remove timer" +#~ msgstr "הסר טיימר" + +#~ msgid "Send DiSEqC" +#~ msgstr "Send DiSEqC" + +# +#, fuzzy +#~ msgid "Switch next channel" +#~ msgstr "הערוץ הבא" + +# +#~ msgid "Zap back to service before satfinder?" +#~ msgstr "?לזפזפ אחורנית לערוץ הקודם" diff --git a/po/hr.po b/po/hr.po new file mode 100644 index 0000000..84a83d0 --- /dev/null +++ b/po/hr.po @@ -0,0 +1,9455 @@ +# Croatian translations for Enigma2. +# +msgid "" +msgstr "" +"Project-Id-Version: enigma2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-07-21 19:08+0200\n" +"PO-Revision-Date: 2008-01-27 23:38+0100\n" +"Last-Translator: Jurica <jurica@clarkdigital.com>\n" +"Language-Team: <jurica@dream-multimedia.eu>\n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Poedit-Language: Croatian\n" +"X-Poedit-Country: CROATIA\n" + +# +msgid "" +"\n" +"Advanced options and settings." +msgstr "" + +# +msgid "" +"\n" +"After pressing OK, please wait!" +msgstr "" + +msgid "" +"\n" +"Backup your receiver settings." +msgstr "" + +# +msgid "" +"\n" +"Edit the upgrade source address." +msgstr "" + +msgid "" +"\n" +"Manage extensions or plugins for your receiver" +msgstr "" + +msgid "" +"\n" +"Online update of your receiver software." +msgstr "" + +# +msgid "" +"\n" +"Press OK on your remote control to continue." +msgstr "" + +# +msgid "" +"\n" +"Restore your backups by date." +msgstr "" + +msgid "" +"\n" +"Restore your receiver settings." +msgstr "" + +msgid "" +"\n" +"Restore your receiver with a new firmware." +msgstr "" + +# +msgid "" +"\n" +"Scan for local extensions and install them." +msgstr "" + +# +msgid "" +"\n" +"Select your backup device.\n" +"Current device: " +msgstr "" + +# +msgid "" +"\n" +"View, install and remove available or installed packages." +msgstr "" + +msgid " (PiP)" +msgstr "" + +msgid " (Radio)" +msgstr "" + +msgid " (TV)" +msgstr "" + +msgid " (disabled)" +msgstr "" + +msgid " (higher than any auto)" +msgstr "" + +msgid " (higher than rotor any auto)" +msgstr "" + +msgid " (lower than any auto)" +msgstr "" + +# +msgid " extensions." +msgstr "" + +msgid " ms" +msgstr "" + +# +msgid " packages selected." +msgstr "" + +# +msgid " updates available." +msgstr "" + +#. TRANSLATORS: short time representation hour:minute +#, python-format +msgid "%2d:%02d" +msgstr "" + +#. TRANSLATORS: full time representation hour:minute:seconds +#, python-format +msgid "%2d:%02d:%02d" +msgstr "" + +msgid "%A %d %B" +msgstr "" + +#. TRANSLATORS: long date representations dayname daynum monthname in strftime() format! See 'man strftime' +msgid "%A %e %B" +msgstr "" + +#. TRANSLATORS: full date representation dayname daynum monthname year in strftime() format! See 'man strftime' +msgid "%A %e %B %Y" +msgstr "" + +# +msgid "%H:%M" +msgstr "%S:%M" + +#. TRANSLATORS: short date representation short dayname daynum short monthname in strftime() format! See 'man strftime' +msgid "%a %e/%m" +msgstr "" + +#. TRANSLATORS: long date representation short dayname daynum short monthname hour:minute in strftime() format! See 'man strftime' +msgid "%a %e/%m %-H:%M" +msgstr "" + +# +#. TRANSLATORS: Intermediate scanning result, '%d' channel(s) have been found so far +#, fuzzy, python-format +msgid "%d channel found" +msgid_plural "%d channels found" +msgstr[0] "%d usluga pronađeno!" +msgstr[1] "%d usluga pronađeno!" + +#, python-format +msgid "%d file" +msgid_plural "%d files" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d job is running in the background!" +msgid_plural "%d jobs are running in the background!" +msgstr[0] "" +msgstr[1] "" + +# +#, python-format +msgid "%d min" +msgstr "%d min" + +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d minutes" +msgstr "" + +#, python-format +msgid "%d pixel wide" +msgid_plural "%d pixels wide" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "" +msgstr[1] "" + +# +#, fuzzy, python-format +msgid "%d subdirectory" +msgid_plural "%d subdirectories" +msgstr[0] "/var direktorij" +msgstr[1] "/var direktorij" + +#, python-format +msgid "%d wireless network found!" +msgid_plural "%d wireless networks found!" +msgstr[0] "" +msgstr[1] "" + +msgid "%d-%b-%Y %-H:%M" +msgstr "" + +msgid "%d-%m" +msgstr "" + +# +msgid "%d.%B %Y" +msgstr "%d.%B %Y" + +#. TRANSLATORS: VFD hour:minute daynum short monthname in strftime() format! See 'man strftime' +msgid "%k:%M %e/%m" +msgstr "" + +# +#, fuzzy, python-format +msgid "%s %s free disk space" +msgstr "slobodan prostor na disku" + +# +#, python-format +msgid "%s (%s)\n" +msgstr "%s (%s)\n" + +#. TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. +#, python-format +msgid "%s is no longer used. Should it be deleted?" +msgstr "" + +#, python-format +msgid "%s updated package available" +msgid_plural "%s updated packages available" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%s%d min" +msgstr "" + +#, python-format +msgid "%s/%s: %s" +msgstr "" + +# +msgid "(ZAP)" +msgstr "(ZAP)" + +# +msgid "(empty)" +msgstr "(prazno)" + +# +msgid "(show optional DVD audio menu)" +msgstr "" + +# +msgid "* Only available if more than one interface is active." +msgstr "" + +msgid "/s" +msgstr "" + +# +msgid "0" +msgstr "0" + +# +msgid "1" +msgstr "1" + +# +msgid "1.0" +msgstr "1.0" + +# +msgid "1.1" +msgstr "1.1" + +# +msgid "1.2" +msgstr "1.2" + +# +msgid "12V output" +msgstr "12V izlaz" + +# +msgid "13 V" +msgstr "13 V" + +# +msgid "16:10" +msgstr "" + +# +msgid "16:10 Letterbox" +msgstr "16:10 Letterbox" + +# +msgid "16:10 PanScan" +msgstr "16:10 PanScan" + +# +msgid "16:9" +msgstr "16:9" + +# +msgid "16:9 Letterbox" +msgstr "16:9 Letterbox" + +# +msgid "16:9 always" +msgstr "uvijek 16:9 " + +# +msgid "18 V" +msgstr "18 V" + +# +msgid "2" +msgstr "2" + +msgid "23.976" +msgstr "" + +msgid "24" +msgstr "" + +msgid "25" +msgstr "" + +msgid "29.97" +msgstr "" + +# +msgid "3" +msgstr "3" + +msgid "30" +msgstr "" + +msgid "3d mode" +msgstr "" + +# +msgid "4" +msgstr "4" + +# +msgid "4:3" +msgstr "" + +# +msgid "4:3 Letterbox" +msgstr "4:3 Letterbox" + +# +msgid "4:3 PanScan" +msgstr "4:3 PanScan" + +# +msgid "5" +msgstr "5" + +# +msgid "6" +msgstr "6" + +# +msgid "7" +msgstr "7" + +# +msgid "8" +msgstr "8" + +# +msgid "9" +msgstr "9" + +#, python-format +msgid ": %s" +msgstr "" + +# +msgid "<Current movielist location>" +msgstr "" + +# +msgid "<Default movie location>" +msgstr "" + +# +msgid "<Last timer location>" +msgstr "" + +# +msgid "<unknown>" +msgstr "<nepoznato>" + +# +msgid "??" +msgstr "??" + +# +msgid "A" +msgstr "A" + +# +#, fuzzy, python-format +msgid "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" +msgstr "" +"Datoteka konfiguracije (%s) je bila promjenjena nakon instalacije.\n" +"Želite li zadržati vašu verziju?" + +# +#, python-format +msgid "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" +msgstr "" +"Datoteka konfiguracije (%s) je bila promjenjena nakon instalacije.\n" +"Želite li zadržati vašu verziju?" + +msgid "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" + +msgid "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" + +# +msgid "A graphical EPG for all services of an specific bouquet" +msgstr "Grafički EPG za sve usluge od specifičnog paketa" + +# +#, python-format +msgid "" +"A record has been started:\n" +"%s" +msgstr "" +"Snimanje je započeto:\n" +"%s" + +# +msgid "" +"A recording is currently running.\n" +"What do you want to do?" +msgstr "" +"Digitalno snimanje je trenutno u tijeku.\n" +"Što želite učiniti?" + +# +msgid "A recording is currently running. Please stop the recording before trying to configure the positioner." +msgstr "Snimanje je u tijeku. Molim zaustavite snimanje prije nego pokušate konfigurirati motor." + +msgid "A recording is currently running. Please stop the recording before trying to scan." +msgstr "" + +# +msgid "A recording is currently running. Please stop the recording before trying to start the satfinder." +msgstr "Snimanje je trenutno u tijeku. Molim zaustavite prvo snimanje prije negoli pokrenete Sat tražitelj." + +# +#, python-format +msgid "A required tool (%s) was not found." +msgstr "" + +# +msgid "A search for available updates is currently in progress." +msgstr "" + +# +msgid "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" +msgstr "" + +msgid "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" + +msgid "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" + +# +msgid "A small overview of the available icon states and actions." +msgstr "" + +# +msgid "" +"A timer failed to record!\n" +"Disable TV and try again?\n" +msgstr "" +"Tajmer je neuspjelo pokušao snimiti!\n" +"Onemogućite TV i pokušati ponovno?\n" + +# +#, fuzzy +msgid "A/V settings" +msgstr "Postavke TV-a" + +msgid "AC3/DTS downmix" +msgstr "" + +# +msgid "Abort" +msgstr "" + +# +msgid "About" +msgstr "O programu" + +# +msgid "About..." +msgstr "O prijemniku..." + +# +msgid "Accesspoint:" +msgstr "" + +# +msgid "Action on long powerbutton press" +msgstr "Djelovanje za dugo pritisnutu tipku paljenja" + +# +msgid "Action on short powerbutton press" +msgstr "" + +# +msgid "Activate Picture in Picture" +msgstr "Aktiviraj Sliku u Slici" + +# +#, fuzzy +msgid "Activate current configuration" +msgstr "Konfiguracija Tunera" + +# +msgid "Activate network settings" +msgstr "Aktiviraj mrežne postavke" + +# +#, fuzzy +msgid "Activate the configured network settings." +msgstr "Aktiviraj mrežne postavke" + +# +msgid "Adapter settings" +msgstr "" + +# +msgid "Add" +msgstr "Dodaj" + +msgid "Add Bookmark" +msgstr "" + +# +msgid "Add a mark" +msgstr "Dodaj oznaku" + +# +#, fuzzy +msgid "Add a nameserver entry" +msgstr "Postavke Nameservera" + +# +msgid "Add a new title" +msgstr "Dodaj novi titl" + +# +#, fuzzy +msgid "Add bookmark" +msgstr "Dodaj oznaku" + +# +#, fuzzy +msgid "Add directory to playlist" +msgstr "dodaj direktorij u playlistu" + +# +#, fuzzy +msgid "Add file to playlist" +msgstr "dodaj datoteku u playlistu" + +# +#, fuzzy +msgid "Add files to playlist" +msgstr "dodaj datoteke u playlistu" + +msgid "Add more details to the crash log" +msgstr "" + +# +#, fuzzy +msgid "Add provider" +msgstr "Pružatelji" + +# +#, fuzzy +msgid "Add recording (enter recording duration)" +msgstr "dodaj snimanje (unesite dužinu snimanja)" + +# +#, fuzzy +msgid "Add recording (enter recording endtime)" +msgstr "dodaj snimanje (unesi završno vrijeme snimanja)" + +# +#, fuzzy +msgid "Add recording (indefinitely)" +msgstr "dodaj snimanje (nedefinirano)" + +# +#, fuzzy +msgid "Add recording (stop after current event)" +msgstr "dodaj snimanje (zaustavi nakon trenutnog događaja)" + +# +#, fuzzy +msgid "Add service" +msgstr "Usluge " + +# +msgid "Add timer" +msgstr "Dodaj Tajmer" + +# +msgid "Add title" +msgstr "" + +# +msgid "Add to bouquet" +msgstr "Dodaj u paket" + +# +msgid "Add to favourites" +msgstr "Dodaj u favorite" + +msgid "Add/remove change timer for current event" +msgstr "" + +msgid "Adjust 3D settings" +msgstr "" + +# +msgid "Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens." +msgstr "" + +msgid "Advanced" +msgstr "" + +# +#, fuzzy +msgid "Advanced options" +msgstr "Napredne video postavke" + +# +msgid "Advanced restore" +msgstr "" + +msgid "Advanced software" +msgstr "" + +msgid "Advanced software plugin" +msgstr "" + +# +#, fuzzy +msgid "Advanced video enhancement setup" +msgstr "Napredne video postavke" + +# +#, fuzzy +msgid "Advanced video setup" +msgstr "Napredne video postavke" + +# +msgid "After event" +msgstr "Nakon događaja" + +# +msgid "Album" +msgstr "Album" + +msgid "Alignment of events" +msgstr "" + +msgid "Alignment of service names" +msgstr "" + +# +msgid "All" +msgstr "Svi" + +msgid "All ages" +msgstr "" + +msgid "All satellites 1 (USALS)" +msgstr "" + +msgid "All satellites 2 (USALS)" +msgstr "" + +msgid "All satellites 3 (USALS)" +msgstr "" + +msgid "All satellites 4 (USALS)" +msgstr "" + +msgid "Allocate" +msgstr "" + +msgid "Allocate unused memory index" +msgstr "" + +msgid "Allow quit movieplayer with exit" +msgstr "" + +msgid "Allow subtitle language to equal audio language" +msgstr "" + +msgid "Allow subtitles for hearing impaired" +msgstr "" + +# +msgid "Alpha" +msgstr "Alpha" + +# +#, fuzzy +msgid "Alternative" +msgstr "dodaj alternative" + +# +#, fuzzy +msgid "Alternative numbering mode" +msgstr "Alternativni radio mod" + +# +msgid "Alternative services tuner priority" +msgstr "Prioritet alternativnih usluga tunera" + +msgid "Always ask" +msgstr "" + +msgid "Always hide infobar" +msgstr "" + +# +msgid "An empty filename is illegal." +msgstr "" + +msgid "An error occurred while downloading the packetlist. Please try again." +msgstr "" + +# +msgid "An unknown error occurred!" +msgstr "" + +msgid "And will put your receiver in standby over " +msgstr "" + +msgid "Any activity" +msgstr "" + +# +msgid "Arabic" +msgstr "Arabski" + +msgid "Are you sure to remove this entry?" +msgstr "" + +# +msgid "" +"Are you sure you want to activate this network configuration?\n" +"\n" +msgstr "" + +# +#, fuzzy +msgid "" +"Are you sure you want to delete\n" +"the following backup:\n" +msgstr "" +"Želite li stvarno vratiti sljedeću\n" +"sigurnosnu kopiju:\n" + +# +msgid "Are you sure you want to exit this wizard?" +msgstr "" + +# +msgid "" +"Are you sure you want to restart your network interfaces?\n" +"\n" +msgstr "" + +#, python-format +msgid "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" + +msgid "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" + +# +msgid "Artist" +msgstr "Izvođač" + +msgid "Arts/Culture" +msgstr "" + +# +msgid "Ask user" +msgstr "" + +# +#, fuzzy +msgid "Aspect ratio" +msgstr "Omjer slike" + +msgid "Assigned CAIds:" +msgstr "" + +msgid "Assigned services/provider:" +msgstr "" + +msgid "At beginning" +msgstr "" + +msgid "At end" +msgstr "" + +# +msgid "Audio" +msgstr "Zvuk" + +msgid "Audio PID" +msgstr "" + +msgid "Audio language selection 1" +msgstr "" + +msgid "Audio language selection 2" +msgstr "" + +msgid "Audio language selection 3" +msgstr "" + +msgid "Audio language selection 4" +msgstr "" + +# +#, fuzzy +msgid "Audio options..." +msgstr "Zvučne opcije..." + +#, python-format +msgid "Audio track (%s) format" +msgstr "" + +#, python-format +msgid "Audio track (%s) language" +msgstr "" + +# +msgid "Author: " +msgstr "" + +# +msgid "Authoring mode" +msgstr "" + +# +#. TRANSLATORS: (aspect ratio policy: always try to display as fullscreen, when there is no content (black bars) on left/right, even if this breaks the aspect. +msgid "Auto" +msgstr "Auto" + +# +msgid "Auto chapter split every ? minutes (0=never)" +msgstr "" + +# +msgid "Auto flesh" +msgstr "" + +msgid "Auto focus" +msgstr "" + +msgid "Auto focus commencing ..." +msgstr "" + +msgid "Auto language selection" +msgstr "" + +# +msgid "Auto scart switching" +msgstr "" + +# +msgid "Automatic" +msgstr "" + +# +#, fuzzy +msgid "Automatic scan" +msgstr "Automatsko skeniranje " + +msgid "Automatically start timeshift after" +msgstr "" + +msgid "Automatically turn on external subtitles" +msgstr "" + +# +msgid "Available format variables" +msgstr "" + +# +msgid "B" +msgstr "B" + +# +msgid "BER" +msgstr "BER" + +# +msgid "BER:" +msgstr "BER:" + +# +msgid "Back" +msgstr "" + +# +msgid "Background" +msgstr "" + +msgid "Background color" +msgstr "" + +msgid "Background delete option" +msgstr "" + +msgid "Background delete speed" +msgstr "" + +# +#, fuzzy +msgid "Backup completed." +msgstr "Mod sigurnosne kopije" + +# +msgid "Backup failed." +msgstr "" + +# +msgid "Backup is running..." +msgstr "" + +# +msgid "Backup system settings" +msgstr "" + +# +msgid "Band" +msgstr "Band" + +# +msgid "Bandwidth" +msgstr "Propusnost" + +msgid "Basque" +msgstr "" + +# +msgid "Begin time" +msgstr "Početno vrijeme" + +msgid "Behavior of 'pause and ok' when paused" +msgstr "" + +# +msgid "Behavior of 0 key in PiP-mode" +msgstr "Uloga tipke 0 u PIP-modu" + +# +msgid "Behavior when a movie is started" +msgstr "" + +# +msgid "Behavior when a movie is stopped" +msgstr "" + +# +msgid "Behavior when a movie reaches the end" +msgstr "" + +msgid "Big PiP" +msgstr "" + +# +msgid "Bitrate:" +msgstr "" + +msgid "Black screen" +msgstr "" + +msgid "Black screen till locked" +msgstr "" + +# +msgid "Block noise reduction" +msgstr "" + +# +msgid "Blue boost" +msgstr "" + +# +msgid "Bookmarks" +msgstr "" + +# +msgid "Brightness" +msgstr "Svjetlost" + +msgid "Bulgarian" +msgstr "" + +# +msgid "Burn DVD" +msgstr "Snimi DVD" + +# +#, fuzzy, python-format +msgid "Burn audio track (%s)" +msgstr "Odaberi zvučni nosioc" + +# +msgid "Burn existing image to DVD" +msgstr "" + +# +#, fuzzy +msgid "Burn to DVD" +msgstr "Snimi DVD" + +# +msgid "Bus: " +msgstr "Bus:" + +msgid "By default, SNR will be shown in dB (when supported by the tuner). This setting forces SNR to be shown as a percentage instead." +msgstr "" + +# +msgid "C" +msgstr "" + +# +msgid "C-Band" +msgstr "C-Band" + +msgid "CH" +msgstr "" + +# +msgid "CI assignment" +msgstr "" + +# +msgid "CVBS" +msgstr "CVBS" + +# +msgid "Cable" +msgstr "Kabel" + +msgid "Cable Scan" +msgstr "" + +# +#, fuzzy +msgid "Cache thumbnails" +msgstr "Učitaj sličice" + +msgid "Calculate" +msgstr "" + +msgid "Calculate all positions" +msgstr "" + +msgid "Calculation complete" +msgstr "" + +msgid "Calibrate" +msgstr "" + +msgid "Can be used for different fps between external subtitles and video." +msgstr "" + +# +msgid "Cancel" +msgstr "Odustani" + +msgid "Cannot determine" +msgstr "" + +msgid "Cannot find any signal ..., aborting !" +msgstr "" + +msgid "Cannot move files on a different disk or system to the trash can" +msgstr "" + +msgid "Cannot move to trash can" +msgstr "" + +# +msgid "Capacity: " +msgstr "Kapacitet:" + +# +msgid "Card" +msgstr "Kartica" + +msgid "Cascade PiP" +msgstr "" + +msgid "Center DVB subtitles" +msgstr "" + +msgid "Center time-labels and remove date" +msgstr "" + +# +msgid "Change bouquets in quickzap" +msgstr "Promjeni pakete u brzom prebacivanju" + +# +msgid "Change pin code" +msgstr "Promjeni pin kod" + +# +#, fuzzy +msgid "Change recording (duration)" +msgstr "promjeni dužinu snimanja" + +# +#, fuzzy +msgid "Change recording (endtime)" +msgstr "promjeni snimanje (završno vijeme)" + +msgid "Change repeat and delay settings?" +msgstr "" + +msgid "Change service PIN" +msgstr "" + +msgid "Change service PINs" +msgstr "" + +msgid "Change setup PIN" +msgstr "" + +# +msgid "Change step size" +msgstr "" + +msgid "Change timer" +msgstr "" + +msgid "Changelog" +msgstr "" + +# +msgid "Channel" +msgstr "Kanal" + +# +#, fuzzy +msgid "Channel list type" +msgstr "Izbornik liste kanala" + +# +msgid "Channel not in services list" +msgstr "" + +# +#, fuzzy +msgid "Channel selection" +msgstr "Sekcija kanala" + +# +msgid "Channel:" +msgstr "Kanal:" + +# +msgid "Channellist menu" +msgstr "Izbornik liste kanala" + +# +msgid "Chap." +msgstr "" + +# +msgid "Chapter" +msgstr "" + +# +msgid "Chapter:" +msgstr "" + +# +msgid "Check" +msgstr "" + +msgid "Check the internet connection" +msgstr "" + +msgid "Check the internet connection again" +msgstr "" + +msgid "Checking filesystem..." +msgstr "" + +msgid "Checking the internet connection" +msgstr "" + +#, python-format +msgid "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" +msgstr "" + +msgid "Children/Youth" +msgstr "" + +msgid "Choose which tuner to configure." +msgstr "" + +# +msgid "Circular left" +msgstr "" + +# +msgid "Circular right" +msgstr "" + +# +msgid "Cleanup" +msgstr "Čišćenje" + +msgid "Clear" +msgstr "" + +# +msgid "Clear before scan" +msgstr "Obriši prije skeniranja" + +msgid "Clear fixed" +msgstr "" + +# +msgid "Clear log" +msgstr "Obriši log" + +# +#, fuzzy +msgid "Clear playlist" +msgstr "očisti Playlistu" + +# +msgid "Close" +msgstr "" + +msgid "Close PiP on exit" +msgstr "" + +# +msgid "Close title selection" +msgstr "" + +msgid "Code rate HP" +msgstr "" + +msgid "Code rate LP" +msgstr "" + +# +msgid "Coderate HP" +msgstr "Kodrata HP" + +# +msgid "Coderate LP" +msgstr "Kodrata LP" + +# +msgid "Collection name" +msgstr "" + +# +msgid "Collection settings" +msgstr "" + +# +#, fuzzy +msgid "Color format" +msgstr "Kolor format" + +# +msgid "Command execution..." +msgstr "" + +# +msgid "Command order" +msgstr "Command slijed" + +# +msgid "Common Interface" +msgstr "Zajedničko sučelje" + +# +#, fuzzy +msgid "Common Interface assignment" +msgstr "Zajedničko sučelje" + +# +msgid "Communication" +msgstr "" + +# +#, fuzzy +msgid "Compact flash" +msgstr "Kompakt Flash" + +# +msgid "Complete" +msgstr "Kompletno" + +# +msgid "Complex (allows mixing audio tracks and aspects)" +msgstr "" + +msgid "Composition of the recording filenames" +msgstr "" + +# +#, fuzzy +msgid "Configuration mode" +msgstr "Mod Konfiguracije" + +# +#, fuzzy, python-format +msgid "Configuration mode: %s" +msgstr "Mod Konfiguracije" + +# +#, fuzzy +msgid "Configuration..." +msgstr "Mod Konfiguracije" + +msgid "Configure an additional delay to improve external subtitle synchronisation." +msgstr "" + +msgid "Configure an additional delay to improve subtitle synchronisation." +msgstr "" + +msgid "Configure for how long the infobar will remain visible after activation." +msgstr "" + +msgid "Configure for how many minutes finished events should remain visible in the EPG. Useful when you need information about an event which has just finished, or has been delayed." +msgstr "" + +msgid "Configure how recording filenames are constructed." +msgstr "" + +msgid "Configure how the fan should operate" +msgstr "" + +msgid "Configure if and how crypto icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how long the latest service in the PiP will be remembered." +msgstr "" + +msgid "Configure if and how service type icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how wide columns will be shown in the channel selection list." +msgstr "" + +msgid "Configure if service picons will be shown in the channel selection list." +msgstr "" + +# +msgid "Configure interface" +msgstr "" + +# +msgid "Configure nameservers" +msgstr "" + +msgid "Configure on which devices the background delete option should be used." +msgstr "" + +# +#, fuzzy +msgid "Configure remote control type" +msgstr "Vrsta roditeljske zaštite" + +msgid "Configure the DiSEqC mode for this LNB." +msgstr "" + +msgid "Configure the IP address." +msgstr "" + +msgid "Configure the aspect ratio of the screen." +msgstr "" + +msgid "Configure the behavior of the 'pause and ok' key when movie playback is already paused." +msgstr "" + +msgid "Configure the behavior when movie playback is manually stopped." +msgstr "" + +msgid "Configure the behavior when movie playback is started." +msgstr "" + +msgid "Configure the behavior when reaching the end of a movie, during movie playback." +msgstr "" + +msgid "Configure the border width of the subtitles. The dark border makes the subtitles easier to read on a light background." +msgstr "" + +msgid "Configure the brightness level of the front panel display during standby." +msgstr "" + +msgid "Configure the brightness level of the front panel display." +msgstr "" + +msgid "Configure the color of the external subtitles, alternative (normal in white, italic in yellow, bold in cyan, underscore in green), white or yellow." +msgstr "" + +msgid "Configure the color of the teletext subtitles." +msgstr "" + +msgid "Configure the contrast level of the front panel display." +msgstr "" + +msgid "Configure the cursor behaviour in the channel selection list. When opening the channel selection list you can keep on the current service or already select up/down and you are able to revert the B+/B- buttons." +msgstr "" + +msgid "Configure the duration in hours the receiver should go to standby when the receiver is not controlled." +msgstr "" + +msgid "Configure the duration in minutes for the screensaver." +msgstr "" + +msgid "Configure the duration in minutes for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +msgstr "" + +msgid "Configure the duration when the receiver should go to shut down in case the receiver is in standby mode." +msgstr "" + +msgid "Configure the first audio language (highest priority)." +msgstr "" + +msgid "Configure the first subtitle language (highest priority)." +msgstr "" + +msgid "Configure the font size of the subtitles." +msgstr "" + +msgid "Configure the fourth audio language." +msgstr "" + +msgid "Configure the fourth subtitle language." +msgstr "" + +msgid "Configure the function of a long press on the power button." +msgstr "" + +msgid "Configure the function of a short press on the power button." +msgstr "" + +msgid "Configure the function of the '0' button do when PIP is active." +msgstr "" + +msgid "Configure the gateway." +msgstr "" + +msgid "Configure the general audio delay of Dolby Digital sound tracks." +msgstr "" + +msgid "Configure the general audio delay of stereo sound tracks." +msgstr "" + +msgid "Configure the hard disk drive to go to standby after the specified idle time." +msgstr "" + +msgid "Configure the horizontal alignment of the subtitles." +msgstr "" + +msgid "Configure the initial fast forward speed. When you press the fast forward button, winding will start at this speed." +msgstr "" + +msgid "Configure the initial rewind speed. When you press the rewind button, winding will start at this speed." +msgstr "" + +msgid "Configure the latitude of your location." +msgstr "" + +msgid "Configure the longitude of your location." +msgstr "" + +msgid "Configure the minimum amount of disk space to be available for recordings. When the amount of space drops below this value, deleted items will be removed from the trash can." +msgstr "" + +msgid "Configure the nameserver (DNS)." +msgstr "" + +msgid "Configure the netmask." +msgstr "" + +msgid "Configure the number of days after which items are automaticaly removed from the trash can." +msgstr "" + +msgid "Configure the number of days old timers are kept before they are automatically removed from the timer list." +msgstr "" + +msgid "Configure the offline decoding delay in milliseconds. The configured delay is observed at each control word parity change." +msgstr "" + +msgid "Configure the possible fast forward speeds." +msgstr "" + +msgid "Configure the possible rewind speeds." +msgstr "" + +msgid "Configure the primary EPG language." +msgstr "" + +msgid "Configure the refresh rate of the screen." +msgstr "" + +msgid "Configure the screen resolution in PC output mode." +msgstr "" + +msgid "Configure the second audio language." +msgstr "" + +msgid "Configure the second subtitle language." +msgstr "" + +msgid "Configure the secondary EPG language." +msgstr "" + +msgid "Configure the sharpness of the video scaling." +msgstr "" + +msgid "Configure the skip time interval for the '1'/'3' buttons." +msgstr "" + +msgid "Configure the skip time interval for the '4'/'6' buttons." +msgstr "" + +msgid "Configure the skip time interval for the '7'/'9' buttons." +msgstr "" + +msgid "Configure the slow motion speeds." +msgstr "" + +msgid "Configure the source of the frontend data as shown on the infobars. 'Settings' is as stored on the settings. 'Tuner' is as reported by the tuner." +msgstr "" + +msgid "Configure the speed of the background deletion process. Lower speed will consume less hard disk drive performance." +msgstr "" + +msgid "Configure the speed of the fan" +msgstr "" + +msgid "Configure the subtitle delay when timing information is not available." +msgstr "" + +msgid "Configure the third audio language." +msgstr "" + +msgid "Configure the third subtitle language." +msgstr "" + +msgid "Configure the transparency of the OSD." +msgstr "" + +msgid "Configure the transparency of the black background of graphical DVB subtitles." +msgstr "" + +# +#, fuzzy +msgid "Configure the tuner mode." +msgstr "Mod Konfiguracije" + +msgid "Configure the type of status indication icons shown in the movielist." +msgstr "" + +msgid "Configure the vertical position of the subtitles, measured from the bottom of the screen." +msgstr "" + +msgid "Configure the video output mode (or resolution)." +msgstr "" + +msgid "Configure the way in which the receiver changes channels." +msgstr "" + +msgid "Configure where completed timers show up in the timer list." +msgstr "" + +msgid "Configure whether (and for how long) a second infobar will be shown when OK is pressed twice. The second infobar contains additional information about the current channel." +msgstr "" + +msgid "Configure whether multi channel sound tracks should be downmixed to stereo." +msgstr "" + +msgid "Configure whether or not an icon should be shown when your motorized dish is moving." +msgstr "" + +msgid "Configure which access level to use for the configuration menu. Expert level gives access to all items." +msgstr "" + +msgid "Configure which color format should be used on the SCART output." +msgstr "" + +msgid "Configure which tuner for recordings will be preferred, when more than one tuner is available." +msgstr "" + +msgid "Configure which tuner type will be preferred, when the same service is available on different types of tuners." +msgstr "" + +msgid "Configure which tuner will be preferred, when more than one tuner is available. If set to 'auto' the system will give priority to the tuner having the lowest number of channels/satellites." +msgstr "" + +# +msgid "Configure your internal LAN" +msgstr "" + +# +msgid "Configure your network again" +msgstr "" + +msgid "Configure your network settings, and press OK to start the scan" +msgstr "" + +# +msgid "Configure your wireless LAN again" +msgstr "" + +msgid "Configures which video output connector will be used." +msgstr "" + +# +msgid "Configuring" +msgstr "Konfiguriram" + +# +msgid "Conflicting timer" +msgstr "Konflikt tajmera" + +# +msgid "Connect" +msgstr "" + +msgid "Connect to a wireless network" +msgstr "" + +msgid "Connected satellites" +msgstr "" + +# +msgid "Connected to" +msgstr "" + +# +msgid "Connected!" +msgstr "" + +# +msgid "Constellation" +msgstr "Konstalacija" + +# +msgid "Content does not fit on DVD!" +msgstr "" + +msgid "Continue" +msgstr "" + +# +msgid "Continue in background" +msgstr "" + +msgid "Continue playback" +msgstr "" + +# +msgid "Continue playing" +msgstr "" + +msgid "Continues play (loop)" +msgstr "" + +# +msgid "Contrast" +msgstr "Kontrast" + +msgid "Convert ext3 filesystem to ext4" +msgstr "" + +msgid "Convert ext3 to ext4" +msgstr "" + +msgid "Converting ext3 to ext4..." +msgstr "" + +msgid "Copy" +msgstr "" + +msgid "Could not connect to receiver .NFI image feed server:" +msgstr "" + +msgid "Could not find installed channel list." +msgstr "" + +msgid "Could not load medium! No disc inserted?" +msgstr "" + +# +msgid "Could not open Picture in Picture" +msgstr "" + +#, python-format +msgid "Could not record due to conflicting timer %s" +msgstr "" + +#, python-format +msgid "Could not record due to invalid service %s" +msgstr "" + +# +msgid "Create DVD-ISO" +msgstr "" + +msgid "Create more detailed crash log" +msgstr "" + +# +#, python-format +msgid "Creating directory %s failed." +msgstr "" + +msgid "Creating filesystem" +msgstr "" + +msgid "Creating partition" +msgstr "" + +# +msgid "Croatian" +msgstr "Hrvatski" + +msgid "Current CEC address" +msgstr "" + +msgid "Current device: " +msgstr "" + +msgid "Current event EPG" +msgstr "" + +#, python-format +msgid "Current mode: %s \n" +msgstr "" + +# +msgid "Current settings:" +msgstr "Trenutne postavke" + +# +#, fuzzy +msgid "Current transponder" +msgstr "Trenutni transponder" + +# +msgid "Current value: " +msgstr "" + +# +msgid "Current version:" +msgstr "Trenutna verzija:" + +msgid "Currently installed image" +msgstr "" + +msgid "Currently the commit log cannot be retrieved - please try later again" +msgstr "" + +# +#, fuzzy +msgid "Custom skip time for '1'/'3' buttons" +msgstr "Podesivo vrijeme preskoka za '1'/'3'-ključa" + +# +#, fuzzy +msgid "Custom skip time for '4'/'6' buttons" +msgstr "Podesivo vrijeme preskoka za '1'/'3'-ključa" + +# +#, fuzzy +msgid "Custom skip time for '7'/'9' buttons" +msgstr "Podesivo vrijeme preskoka za '1'/'3'-ključa" + +# +msgid "Customize" +msgstr "Prilagodi" + +msgid "Customize channel list cursor behavior" +msgstr "" + +# +msgid "Cut" +msgstr "Odreži" + +# +msgid "Cutlist editor..." +msgstr "Odreži listu editora..." + +# +msgid "Czech" +msgstr "Češki" + +# +msgid "D" +msgstr "" + +# +msgid "DHCP" +msgstr "" + +# +#, fuzzy +msgid "DMM advanced" +msgstr "napredno" + +msgid "DMM normal" +msgstr "" + +# +msgid "DUAL LAYER DVD" +msgstr "" + +msgid "DVB subtitle black transparency" +msgstr "" + +msgid "DVB-C" +msgstr "" + +msgid "DVB-C ANNEX C" +msgstr "" + +# +msgid "DVB-S" +msgstr "DVB-S" + +# +msgid "DVB-S2" +msgstr "DVB-S2" + +msgid "DVB-T" +msgstr "" + +msgid "DVB-T2" +msgstr "" + +msgid "DVD data format" +msgstr "" + +# +#, fuzzy +msgid "DVD file browser" +msgstr "Preglednik dodataka" + +# +msgid "DVD media toolbox" +msgstr "" + +# +#, fuzzy +msgid "DVD player" +msgstr "sakri player" + +# +#, fuzzy +msgid "DVD titlelist" +msgstr "bijelalista" + +# +msgid "Danish" +msgstr "Danski" + +# +msgid "Date" +msgstr "Datum" + +# +#, fuzzy +msgid "Date/time input" +msgstr "Unos Vremena/Datuma" + +# +#, fuzzy +msgid "Deep standby" +msgstr "Isključi Dreambox" + +# +msgid "Default" +msgstr "Tvorni?ko" + +# +msgid "Default movie location" +msgstr "" + +# +#, fuzzy +msgid "Default settings" +msgstr "Trenutne postavke" + +msgid "Delay before key repeat starts:" +msgstr "" + +msgid "Delay for external subtitles" +msgstr "" + +# +msgid "Delete" +msgstr "Obriši" + +# +msgid "Delete entry" +msgstr "Obriši unos" + +# +msgid "Delete failed!" +msgstr "Brisanje neuspješno!" + +# +#, fuzzy +msgid "Delete file" +msgstr "Brisanje neuspješno!" + +# +#, fuzzy +msgid "Delete playlist entry" +msgstr "obriši unos playliste" + +# +#, fuzzy +msgid "Delete saved playlist" +msgstr "obriši pohranjenu playlistu" + +msgid "Delete timer" +msgstr "" + +# +#, fuzzy +msgid "Delete..." +msgstr "Obriši..." + +msgid "Deleted" +msgstr "" + +msgid "Deleted items" +msgstr "" + +msgid "Depth" +msgstr "" + +msgid "Descramble http streams" +msgstr "" + +# +msgid "Description" +msgstr "Opis" + +# +msgid "Deselect" +msgstr "" + +msgid "Details for plugin: " +msgstr "" + +# +msgid "Detected HDD:" +msgstr "Detektirani Disk:" + +# +msgid "Detected NIMs:" +msgstr "Detektirani NIMs:" + +msgid "Devicename:" +msgstr "" + +msgid "Devide" +msgstr "" + +# +msgid "DiSEqC" +msgstr "DiSEqC" + +msgid "DiSEqC 1.0 command" +msgstr "" + +msgid "DiSEqC 1.1 command" +msgstr "" + +msgid "DiSEqC 1.1 repeats" +msgstr "" + +# +msgid "DiSEqC A/B" +msgstr "DiSEqC A/B" + +# +msgid "DiSEqC A/B/C/D" +msgstr "DiSEqC A/B/C/D" + +# +msgid "DiSEqC mode" +msgstr "DiSEqC mod" + +# +#, fuzzy, python-format +msgid "DiSEqC port %s: %s" +msgstr "DiSEqC ponavljanja" + +# +#, fuzzy +msgid "DiSEqC-tester settings" +msgstr "Trenutne postavke" + +# +msgid "Dialing:" +msgstr "" + +# +msgid "Digital contour removal" +msgstr "" + +# +msgid "Direct playback of linked titles without menu" +msgstr "" + +msgid "Directory" +msgstr "" + +#, python-format +msgid "Directory %s does not exist." +msgstr "" + +#, python-format +msgid "Directory %s nonexistent." +msgstr "" + +# +msgid "Directory browser" +msgstr "" + +#, python-format +msgid "Directory contains %d file(s) and %d sub-directories.\n" +msgstr "" + +#, python-format +msgid "Directory contains %s and %s." +msgstr "" + +# +msgid "Disable" +msgstr "Onemogući" + +# +msgid "Disable Picture in Picture" +msgstr "Isključi Sliku u Slici" + +msgid "Disable background scanning" +msgstr "" + +msgid "Disable timer" +msgstr "" + +# +msgid "Disabled" +msgstr "Onemogućeno" + +# +msgid "Disconnect" +msgstr "" + +msgid "Disk space to reserve for recordings (in GB)" +msgstr "" + +# +msgid "Display 16:9 content as" +msgstr "" + +# +msgid "Display 4:3 content as" +msgstr "" + +# +msgid "Display >16:9 content as" +msgstr "" + +msgid "Display and userinterface" +msgstr "" + +msgid "Display message before playing next movie" +msgstr "" + +# +#, fuzzy +msgid "Display setup" +msgstr "Postavke prednjeg zaslona" + +# +#, fuzzy +msgid "Do not change" +msgstr "ne mijenjaj" + +# +#, fuzzy +msgid "Do not record" +msgstr "ne snimaj" + +# +#, fuzzy +msgid "Do nothing" +msgstr "ništa ne čini" + +# +msgid "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" +msgstr "" + +msgid "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" +msgstr "" + +# +#, python-format +msgid "Do you really want to delete %s?" +msgstr "Jeste li sigurni da želite obrisati datoteku %s?" + +# +#, python-format +msgid "" +"Do you really want to download\n" +"the plugin \"%s\"?" +msgstr "" + +# +msgid "Do you really want to exit?" +msgstr "Želite li stvarno izaći?" + +msgid "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" +msgstr "" + +# +#, fuzzy, python-format +msgid "" +"Do you really want to remove\n" +"the plugin \"%s\"?" +msgstr "Jeste li sigurni da želite obrisati datoteku %s?" + +# +#, python-format +msgid "Do you really want to remove directory %s from the disk?" +msgstr "" + +# +#, python-format +msgid "Do you really want to remove your bookmark of %s?" +msgstr "" + +msgid "Do you want this?" +msgstr "" + +# +msgid "Do you want to burn this collection to DVD medium?" +msgstr "" + +# +msgid "Do you want to do a service scan?" +msgstr "Želite li napraviti skeniranje usluga?" + +# +msgid "Do you want to do another manual service scan?" +msgstr "Želite li započeti drugu ručnu pretragu usluga sada?" + +#, python-format +msgid "Do you want to download the image to %s ?" +msgstr "" + +# +#, fuzzy +msgid "Do you want to install a channel list?" +msgstr "Želite li napraviti skeniranje usluga?" + +# +msgid "Do you want to install the package:\n" +msgstr "" + +# +msgid "Do you want to play DVD in drive?" +msgstr "" + +# +msgid "Do you want to preview this DVD before burning?" +msgstr "" + +msgid "Do you want to reboot your receiver?" +msgstr "" + +# +msgid "Do you want to remove the package:\n" +msgstr "" + +# +msgid "Do you want to restore your settings?" +msgstr "Želite li vratiti vašu listu kanala iz sigurnosne kopije?" + +# +msgid "Do you want to resume this playback?" +msgstr "Želite li nastaviti snimku?" + +# +#, fuzzy, python-format +msgid "Do you want to update your receiver to %s?" +msgstr "Želite li vratiti vašu listu kanala iz sigurnosne kopije?" + +msgid "Do you want to update your receiver?" +msgstr "" + +# +msgid "Do you want to upgrade the package:\n" +msgstr "" + +# +msgid "Don't stop current event but disable coming events" +msgstr "Ne zaustavljaj trenutni događaj ali onemogući nadolazeće događaje" + +# +#, fuzzy, python-format +msgid "Done - Installed, upgraded or removed %d package (%s)" +msgid_plural "Done - Installed, upgraded or removed %d packages (%s)" +msgstr[0] "Učinjeno - Instalirano i nadograđeno %d paketa" +msgstr[1] "Učinjeno - Instalirano i nadograđeno %d paketa" + +# +msgid "Download" +msgstr "" + +#, python-format +msgid "Download %s from server" +msgstr "" + +msgid "Download .NFI-files for USB-flasher" +msgstr "" + +# +#, fuzzy +msgid "Download plugins" +msgstr "Skini dodatak" + +# +msgid "Downloadable new plugins" +msgstr "Novi dodaci za skidanje" + +# +msgid "Downloadable plugins" +msgstr "Skini i instaliraj dodatke" + +# +msgid "Downloading" +msgstr "Skidam" + +# +msgid "Downloading plugin information. Please wait..." +msgstr "Skidam informacije o dodacima. Molim pričekajte..." + +# +msgid "Dutch" +msgstr "Nizozemski" + +# +msgid "Dynamic contrast" +msgstr "" + +# +msgid "E" +msgstr "E" + +msgid "EPG" +msgstr "" + +msgid "EPG language selection 1" +msgstr "" + +msgid "EPG language selection 2" +msgstr "" + +# +#, fuzzy +msgid "EPG selection" +msgstr "EPG selektor " + +msgid "EPG settings" +msgstr "" + +# +#, python-format +msgid "ERROR - failed to scan (%s)!" +msgstr "GREAŠKA - neuspjelo skeniranje (%s)!" + +# +msgid "East" +msgstr "Istok" + +msgid "East limit set" +msgstr "" + +# +msgid "Edit" +msgstr "" + +# +msgid "Edit DNS" +msgstr "" + +# +msgid "Edit bouquets list" +msgstr "" + +# +msgid "Edit chapters of current title" +msgstr "" + +# +msgid "Edit services list" +msgstr "Editiraj list usluga" + +# +msgid "Edit settings" +msgstr "" + +msgid "Edit the nameserver configuration of your receiver.\n" +msgstr "" + +msgid "Edit the network configuration of your receiver.\n" +msgstr "" + +msgid "Edit timer" +msgstr "" + +# +msgid "Edit title" +msgstr "" + +# +msgid "Edit upgrade source url." +msgstr "" + +msgid "Education/Science/..." +msgstr "" + +# +msgid "Electronic Program Guide" +msgstr "Elektronički Programski Vodič" + +# +msgid "Enable" +msgstr "Omogući" + +msgid "Enable 'neutrino' style channel select controlling" +msgstr "" + +msgid "Enable 'neutrino' style zap controlling" +msgstr "" + +# +msgid "Enable 5V for active antenna" +msgstr "Uključi 5V za aktivnu antenu" + +msgid "Enable EIT EPG" +msgstr "" + +msgid "Enable MHW EPG" +msgstr "" + +msgid "Enable Netmed EPG" +msgstr "" + +msgid "Enable OK for channel selection" +msgstr "" + +msgid "Enable ViaSat EPG" +msgstr "" + +msgid "Enable Virgin EPG" +msgstr "" + +msgid "Enable Wake On LAN" +msgstr "" + +msgid "Enable auto fast scan" +msgstr "" + +# +#, fuzzy +msgid "Enable bouquet selection in multi-EPG" +msgstr "omogući editanje paketa" + +msgid "Enable freesat EPG" +msgstr "" + +# +msgid "Enable multiple bouquets" +msgstr "Uključi višestruke pakete" + +# +msgid "Enable parental control" +msgstr "Uključi roditeljsku zaštitu" + +msgid "Enable teletext caching" +msgstr "" + +msgid "Enable zapping with CH+/-, B+/-, P+/-" +msgstr "" + +# +msgid "Enabled" +msgstr "Omogućeno" + +# +msgid "Encrypted: " +msgstr "" + +# +msgid "Encryption" +msgstr "" + +msgid "Encryption key" +msgstr "" + +msgid "Encryption key type" +msgstr "" + +# +msgid "Encryption:" +msgstr "" + +# +msgid "End time" +msgstr "Završno vrijeme" + +msgid "End time to ignore inactivity sleeptimer" +msgstr "" + +msgid "End time to ignore shutdown in standby" +msgstr "" + +# +msgid "English" +msgstr "Engleski" + +msgid "Enigma2 skin selector" +msgstr "" + +# +msgid "Enter main menu..." +msgstr "Uđi u Glavni Izbornik" + +# +msgid "Enter pin code" +msgstr "" + +# +msgid "Enter the service pin" +msgstr "Unesite pin za Usluge" + +msgid "Equal to" +msgstr "" + +# +msgid "Error" +msgstr "Greška" + +msgid "Error code" +msgstr "" + +# +msgid "Error executing plugin" +msgstr "" + +# +#, python-format +msgid "" +"Error: %s\n" +"Retry?" +msgstr "" + +# +msgid "Estonian" +msgstr "" + +msgid "Ethernet network interface" +msgstr "" + +msgid "Event font size (relative to skin size)" +msgstr "" + +# +#, fuzzy +msgid "Event view" +msgstr "Pregled događaja" + +# +#, fuzzy +msgid "Event view menu" +msgstr "Pregled događaja" + +msgid "Everywhere" +msgstr "" + +# +msgid "Exceeds dual layer medium!" +msgstr "" + +# +msgid "Execution finished!!" +msgstr "Izvođenje završeno!!" + +# +#, fuzzy +msgid "Execution progress:" +msgstr "Tijek izvođenja:" + +# +msgid "Exif" +msgstr "" + +# +msgid "Exit" +msgstr "" + +msgid "Exit EPG" +msgstr "" + +# +msgid "Exit editor" +msgstr "Izađi iz editora" + +msgid "Exit input device selection." +msgstr "" + +msgid "Exit media player?" +msgstr "" + +# +#, fuzzy +msgid "Exit mediaplayer" +msgstr "Izađi iz preglednika medija" + +# +#, fuzzy +msgid "Exit movie list" +msgstr "izađi iz izbornika filmova" + +# +#, fuzzy +msgid "Exit movie player?" +msgstr "Izađi iz preglednika medija" + +# +#, fuzzy +msgid "Exit nameserver configuration" +msgstr "Konfiguracija Tunera" + +# +#, fuzzy +msgid "Exit network interface list" +msgstr "Editiraj list usluga" + +# +msgid "Exit network wizard" +msgstr "" + +# +msgid "Exit the wizard" +msgstr "Izađite iz čarobnjaka" + +# +msgid "Expert" +msgstr "Ekspert" + +msgid "Extend sleeptimer 15 minutes" +msgstr "" + +# +msgid "Extended Software" +msgstr "" + +# +msgid "Extended Software Plugin" +msgstr "" + +# +#, fuzzy +msgid "Extended network setup plugin..." +msgstr "Proširene postavke..." + +# +#, fuzzy +msgid "Extended setup..." +msgstr "Proširene postavke..." + +# +msgid "Extensions" +msgstr "Ekstenzije" + +# +msgid "Extensions management" +msgstr "" + +msgid "External PiP" +msgstr "" + +msgid "External subtitle color" +msgstr "" + +msgid "Extra motor options" +msgstr "" + +# +msgid "FEC" +msgstr "FEC" + +msgid "FTA" +msgstr "" + +# +msgid "Factory reset" +msgstr "" + +# +msgid "Failed" +msgstr "" + +msgid "Failed to write /tmp/positionersetup.log: " +msgstr "" + +# +#, python-format +msgid "Fan %d" +msgstr "" + +# +#, python-format +msgid "Fan %d PWM" +msgstr "" + +# +#, fuzzy, python-format +msgid "Fan %d voltage" +msgstr "Povećani napon" + +msgid "Fan operation" +msgstr "" + +msgid "Fan speed" +msgstr "" + +# +msgid "Fast" +msgstr "Brzo" + +# +msgid "Fast DiSEqC" +msgstr "Brzi DiSEqC" + +msgid "Fast Scan" +msgstr "" + +# +msgid "Fast epoch" +msgstr "Brza epoha" + +msgid "Fast forward speeds" +msgstr "" + +# +msgid "Favourites" +msgstr "Favoriti" + +msgid "File appears to be busy.\n" +msgstr "" + +msgid "Filesystem check" +msgstr "" + +msgid "Final position at" +msgstr "" + +msgid "Final position at index" +msgstr "" + +msgid "Fine movement" +msgstr "" + +# +msgid "Finetune" +msgstr "Fino pod." + +# +msgid "Finished" +msgstr "" + +# +msgid "Finished configuring your network" +msgstr "" + +# +msgid "Finished restarting your network" +msgstr "" + +# +msgid "Finnish" +msgstr "Finski" + +msgid "Fixed" +msgstr "" + +# +msgid "Flash" +msgstr "" + +# +msgid "Flashing failed" +msgstr "" + +# +msgid "Following tasks will be done after you press OK!" +msgstr "" + +# +msgid "Format" +msgstr "" + +msgid "Forward volume keys" +msgstr "" + +# +msgid "Frame size in full view" +msgstr "" + +# +msgid "French" +msgstr "Francuski" + +# +msgid "Frequency" +msgstr "Frekvencija" + +# +msgid "Frequency bands" +msgstr "Band frekvencije" + +# +msgid "Frequency scan step size(khz)" +msgstr "Veličina frekvenskih koraka (khz)" + +# +msgid "Frequency steps" +msgstr "Frekvenski koraci" + +msgid "Frequency:" +msgstr "" + +# +msgid "Fri" +msgstr "Pet" + +# +msgid "Friday" +msgstr "Petak" + +msgid "From :" +msgstr "" + +# +#, python-format +msgid "Frontprocessor version: %d" +msgstr "Verzija Frontprocesora: %d" + +msgid "Full transparency" +msgstr "" + +msgid "Fulview resulution" +msgstr "" + +msgid "Function of OK button" +msgstr "" + +msgid "Further Options" +msgstr "" + +# +msgid "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" +msgstr "" +"GUI se treba restartati da se primjeni novo sučelje\n" +" Želite li restartati GUI sada ?" + +# +msgid "Gateway" +msgstr "Gateway" + +msgid "General AC3 delay" +msgstr "" + +msgid "General PCM delay" +msgstr "" + +# +msgid "Genre" +msgstr "Žanrovi" + +# +msgid "German" +msgstr "Njemački" + +msgid "Get latest experimental image" +msgstr "" + +msgid "Get latest release image" +msgstr "" + +# +msgid "Getting plugin information. Please wait..." +msgstr "Skidam informacije o dodatku. Molim pričekajte..." + +msgid "Go down the list" +msgstr "" + +msgid "Go to first movie or last item" +msgstr "" + +msgid "Go to first movie or top of list" +msgstr "" + +# +#, fuzzy +msgid "Go to first service" +msgstr "Zaštiti usluge" + +# +#, fuzzy +msgid "Go to last service" +msgstr "Zaštiti usluge" + +msgid "Go to next event" +msgstr "" + +# +#, fuzzy +msgid "Go to next page of service" +msgstr "prebaci na sljedeću poduslugu " + +# +#, fuzzy +msgid "Go to previous event" +msgstr "prebaci u predhodnu poduslugu " + +# +#, fuzzy +msgid "Go to previous page of service" +msgstr "prebaci u predhodnu poduslugu " + +msgid "Go up the list" +msgstr "" + +msgid "Goto" +msgstr "" + +# +msgid "Goto 0" +msgstr "Pođi do 0" + +msgid "Goto :" +msgstr "" + +msgid "Goto X" +msgstr "" + +msgid "Goto index position" +msgstr "" + +msgid "Goto next day of events" +msgstr "" + +msgid "Goto next page of events" +msgstr "" + +# +msgid "Goto position" +msgstr "Goto pozicija" + +msgid "Goto previous day of events" +msgstr "" + +msgid "Goto previous page of events" +msgstr "" + +msgid "Goto specific date/time" +msgstr "" + +msgid "GotoX calibration" +msgstr "" + +msgid "GraphMultiEpg Settings" +msgstr "" + +# +msgid "Graphical Multi EPG" +msgstr "Grafički Multi EPG" + +# +msgid "Greek" +msgstr "Grčki" + +# +msgid "Green boost" +msgstr "" + +msgid "Guard interval" +msgstr "" + +msgid "HD list" +msgstr "" + +msgid "HDMI-CEC setup" +msgstr "" + +msgid "Handle standby from TV" +msgstr "" + +msgid "Handle wakeup from TV" +msgstr "" + +# +#, fuzzy +msgid "Hard disk" +msgstr "Tvrdi disk" + +# +#, fuzzy +msgid "Hard disk setup" +msgstr "Postavke tvrdog diska" + +# +#, fuzzy +msgid "Hard disk standby after" +msgstr "Isključi tvrdi disk nakon" + +# +msgid "Harddisk" +msgstr "Tvrdi disk" + +msgid "Hardware: " +msgstr "" + +msgid "Hebrew" +msgstr "" + +msgid "Helps setting up your dish" +msgstr "" + +msgid "Hidden network" +msgstr "" + +msgid "Hide CI messages" +msgstr "" + +msgid "Hide channel list in radio mode" +msgstr "" + +msgid "Hide known extensions" +msgstr "" + +msgid "Hide number markers" +msgstr "" + +# +#, fuzzy +msgid "Hide player" +msgstr "sakri player" + +msgid "Hide zap errors" +msgstr "" + +msgid "Hierarchy info" +msgstr "" + +# +#, fuzzy +msgid "Hierarchy information" +msgstr "Informacije hierhije" + +# +msgid "High bitrate support" +msgstr "" + +msgid "Hold screen" +msgstr "" + +msgid "Hold till locked" +msgstr "" + +msgid "Home" +msgstr "" + +# +msgid "Horizontal" +msgstr "" + +msgid "Horizontal turning speed" +msgstr "" + +# +msgid "How many minutes do you want to record?" +msgstr "Koliko minuta želite snimati ?" + +# +msgid "Hue" +msgstr "" + +# +msgid "Hungarian" +msgstr "Mađarski" + +# +#, fuzzy +msgid "IP address" +msgstr "IP Adresa" + +# +msgid "ISO file is too large for this filesystem!" +msgstr "" + +# +msgid "ISO path" +msgstr "" + +msgid "Icons" +msgstr "" + +# +msgid "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." +msgstr "" +"Ukoliko vidite ovu poruku, nešto je pogrešno\n" +"s vašim SKART priključkom. Pritisnite OK za povratak." + +# +msgid "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." +msgstr "" + +msgid "Image: " +msgstr "" + +# +#, fuzzy +msgid "Immediate shutdown" +msgstr "odmah isključi" + +# +msgid "In order to record a timer, the TV was switched to the recording service!\n" +msgstr "Slijedom da se snimi događaj postavljen u tajmeru, TV je prebačen na uslugu za snimanje!\n" + +# +#, fuzzy +msgid "In progress" +msgstr "Tijek izvođenja:" + +msgid "Inactivity Sleeptimer" +msgstr "" + +msgid "Include AIT in http streams" +msgstr "" + +msgid "Include ECM in http streams" +msgstr "" + +msgid "Include EIT in http streams" +msgstr "" + +msgid "Incorrect type service for PiP!" +msgstr "" + +# +msgid "Increased voltage" +msgstr "Povećani napon" + +# +msgid "Index" +msgstr "Index" + +msgid "Index allocated:" +msgstr "" + +# +msgid "Info" +msgstr "" + +# +#, fuzzy +msgid "Info bar" +msgstr "InfoBar " + +# +#, fuzzy +msgid "Info bar timeout" +msgstr "Vrem. istek Infobara" + +msgid "Infobar frontend data source" +msgstr "" + +# +msgid "Information" +msgstr "Informacije" + +# +msgid "Init" +msgstr "Init" + +msgid "Initial fast forward speed" +msgstr "" + +# +msgid "Initial location in new timers" +msgstr "" + +msgid "Initial lock ratio" +msgstr "" + +# +#, fuzzy +msgid "Initial rewind speed" +msgstr "Inicijaliziraj" + +msgid "Initial signal quality" +msgstr "" + +msgid "Initial signal quality:" +msgstr "" + +# +msgid "Initialization" +msgstr "" + +# +msgid "Initialize" +msgstr "Inicijaliziraj" + +msgid "Initializing storage device..." +msgstr "" + +# +msgid "Input" +msgstr "Ulaz " + +msgid "Input device setup" +msgstr "" + +msgid "Input devices" +msgstr "" + +# +msgid "Install" +msgstr "" + +# +msgid "Install a new image with a USB stick" +msgstr "" + +# +msgid "Install a new image with your web browser" +msgstr "" + +# +#, fuzzy +msgid "Install channel list" +msgstr "sljedeći kanal u povijesti" + +msgid "Install extensions" +msgstr "" + +# +msgid "Install extensions." +msgstr "" + +# +msgid "Install local extension" +msgstr "" + +msgid "Install picons on" +msgstr "" + +# +#, fuzzy +msgid "Install softcam" +msgstr "Instaliram Softver..." + +msgid "Installation has completed." +msgstr "" + +msgid "Installation or removal has completed." +msgstr "" + +# +msgid "Installing" +msgstr "Instaliram" + +# +#, fuzzy +msgid "Installing software..." +msgstr "Instaliram Softver..." + +# +#, fuzzy +msgid "Instant recording location" +msgstr "promjeni dužinu snimanja" + +# +#, fuzzy +msgid "Instant recording..." +msgstr "Trenutno Snimanje..." + +# +msgid "Interface: " +msgstr "" + +# +msgid "Intermediate" +msgstr "Srednje" + +# +#, fuzzy +msgid "Internal flash" +msgstr "Unutarnji Flash" + +msgid "Internal hdd only" +msgstr "" + +msgid "Interval between keys when repeating:" +msgstr "" + +# +#, python-format +msgid "Invalid directory selected: %s" +msgstr "" + +msgid "Invalid location" +msgstr "" + +msgid "Invalid transponder data" +msgstr "" + +# +msgid "Inversion" +msgstr "Inverzija" + +# +msgid "Invert" +msgstr "Invertni" + +# +msgid "Ipkg" +msgstr "" + +msgid "Is this setting ok?" +msgstr "" + +msgid "Is this video mode ok?" +msgstr "" + +# +msgid "Italian" +msgstr "Talijanski" + +msgid "Items per page " +msgstr "" + +msgid "Items per page for list screen" +msgstr "" + +msgid "Job overview" +msgstr "" + +msgid "Jump to beginning of list" +msgstr "" + +# +#, fuzzy +msgid "Jump to end of list" +msgstr "skoči na kraj liste" + +# +#, fuzzy +msgid "Jump to next marked position" +msgstr "skoči do sljedeće označene pozicije" + +# +#, fuzzy +msgid "Jump to previous marked position" +msgstr "skoči do predhodne označene pozicije" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect) +msgid "Just scale" +msgstr "" + +msgid "Keep service" +msgstr "" + +# +#, fuzzy +msgid "Kernel version: " +msgstr "Nova verzija:" + +# +msgid "Keyboard" +msgstr "" + +# +#, fuzzy +msgid "Keyboard map" +msgstr "Mapa tipkovnice" + +# +#, fuzzy +msgid "Keyboard setup" +msgstr "Postavke tipkovnice" + +msgid "LAN adapter" +msgstr "" + +msgid "LAN connection" +msgstr "" + +# +msgid "LNB" +msgstr "LNB" + +# +msgid "Language" +msgstr "Jezik" + +# +msgid "Language selection" +msgstr "Odaberite Jezik" + +# +msgid "Last config" +msgstr "" + +# +msgid "Last speed" +msgstr "" + +msgid "Last upgrade: " +msgstr "" + +msgid "Latest Commits" +msgstr "" + +# +msgid "Latitude" +msgstr "Latituda" + +# +msgid "Latvian" +msgstr "" + +# +#, fuzzy +msgid "Leave DVD player?" +msgstr "napusti video ..." + +# +msgid "Left" +msgstr "Lijevo" + +msgid "Left from servicename" +msgstr "" + +msgid "Leisure hobbies" +msgstr "" + +# +#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term. +msgid "Letterbox" +msgstr "" + +msgid "Letterbox zoom" +msgstr "" + +msgid "Limit character set for recording filenames" +msgstr "" + +# +msgid "Limit east" +msgstr "Istočni limit" + +msgid "Limit the characters that can be used in recording filenames to (7 bit) ascii. This ensures compatibility with operating systems or file systems with limited character sets." +msgstr "" + +# +msgid "Limit west" +msgstr "Zapadni limit" + +msgid "Limits cancelled" +msgstr "" + +msgid "Limits enabled" +msgstr "" + +# +msgid "Limits off" +msgstr "Isključi limite" + +# +msgid "Limits on" +msgstr "Limite na" + +msgid "Link quality:" +msgstr "" + +# +msgid "Link:" +msgstr "" + +# +msgid "Linked titles with a DVD menu" +msgstr "" + +msgid "List EPG functions..." +msgstr "" + +msgid "List available networks" +msgstr "" + +msgid "List mode" +msgstr "" + +# +#, fuzzy +msgid "List of storage devices" +msgstr "Lista uređaja za pohranu" + +msgid "List type" +msgstr "" + +#, python-format +msgid "List version %d, found %d channel" +msgid_plural "List version %d, found %d channels" +msgstr[0] "" +msgstr[1] "" + +# +#, fuzzy +msgid "Listen to the radio..." +msgstr "slušaj radio..." + +msgid "Lists reloaded!" +msgstr "" + +# +msgid "Lithuanian" +msgstr "Litvanski" + +# +msgid "Load" +msgstr "" + +msgid "Load Length of Movies in Movielist" +msgstr "" + +msgid "Load length of movies in movie list" +msgstr "" + +# +#, fuzzy +msgid "Load playlist" +msgstr "učitaj playlistu" + +# +#, fuzzy +msgid "Local network" +msgstr "MreA3a" + +# +msgid "Location" +msgstr "" + +# +msgid "Location for instant recordings" +msgstr "" + +msgid "Lock ratio" +msgstr "" + +# +msgid "Lock:" +msgstr "Lock:" + +# +msgid "Log results to harddisk" +msgstr "" + +msgid "Long filenames" +msgstr "" + +# +#, fuzzy +msgid "Long key press" +msgstr "Dugi pritis tipke" + +# +msgid "Longitude" +msgstr "Longituda" + +msgid "Loop through to" +msgstr "" + +msgid "Luxembourgish" +msgstr "" + +# +#, fuzzy +msgid "MMC card" +msgstr "MMC Kartica" + +# +msgid "MORE" +msgstr "VIŠE" + +# +msgid "Main menu" +msgstr "Glavni izbornik " + +msgid "Maintain old EPG data for" +msgstr "" + +# +msgid "Make this mark an 'in' point" +msgstr "Napravi ovu oznaku kao 'ulaznu' točku" + +# +msgid "Make this mark an 'out' point" +msgstr "Napravi ovu oznaku kao 'izlaznu' točku" + +# +msgid "Make this mark just a mark" +msgstr "Napravi ovu oznaku samo kao oznaku" + +# +msgid "Manage extensions" +msgstr "" + +# +msgid "Manage your receiver's software" +msgstr "" + +msgid "Manual" +msgstr "" + +# +msgid "Manual Scan" +msgstr "Ručno skeniranje" + +msgid "Manual configuration" +msgstr "" + +# +#, fuzzy +msgid "Manual scan" +msgstr "Ručno skeniranje" + +# +msgid "Manual transponder" +msgstr "Ručno uneseni transponder" + +# +msgid "Manufacturer" +msgstr "" + +# +#, fuzzy +msgid "Margin after recording (minutes)" +msgstr "Rub prije snimanja (u minutama)" + +# +#, fuzzy +msgid "Margin before recording (minutes)" +msgstr "Rub prije snimanja (u minutama)" + +msgid "Max memory positions" +msgstr "" + +msgid "Max. bitrate: " +msgstr "" + +# +msgid "Media player" +msgstr "Preglednik Medija" + +# +#, fuzzy +msgid "Media scanner" +msgstr "Preglednik Medija" + +# +msgid "Medium is not a writeable DVD!" +msgstr "" + +# +msgid "Medium is not empty!" +msgstr "" + +msgid "Memory" +msgstr "" + +msgid "Memory index" +msgstr "" + +# +msgid "Menu" +msgstr "Izbornik " + +# +msgid "Message" +msgstr "Poruka" + +# +msgid "Message..." +msgstr "" + +#, python-format +msgid "Minimum age %d years" +msgstr "" + +msgid "Minimum send interval" +msgstr "" + +msgid "Missing " +msgstr "" + +# +#, fuzzy +msgctxt "Satellite configuration mode" +msgid "Mode" +msgstr "Mod" + +# +#, fuzzy +msgctxt "Video output mode" +msgid "Mode" +msgstr "Mod" + +# +msgid "Model: " +msgstr "Model:" + +# +msgid "Modulation" +msgstr "Modulacija" + +# +msgid "Modulator" +msgstr "Modulator" + +# +msgid "Mon" +msgstr "Pon" + +# +msgid "Mon-Fri" +msgstr "Pon-Pet" + +# +msgid "Monday" +msgstr "Ponedeljak" + +# +msgid "Mosquito noise reduction" +msgstr "" + +msgid "Mount" +msgstr "" + +msgid "Move" +msgstr "" + +# +#, fuzzy +msgid "Move PiP to main picture" +msgstr "premjesti PiP na glavnu sliku" + +# +msgid "Move Picture in Picture" +msgstr "Premjesti Sliku u Slici" + +# +msgid "Move east" +msgstr "Pokreći na istok" + +msgid "Move to other directory" +msgstr "" + +msgid "Move to position X" +msgstr "" + +# +msgid "Move west" +msgstr "Pokreći na zapad" + +msgid "Moved to position 0" +msgstr "" + +msgid "Moved to position at index" +msgstr "" + +msgid "Movement" +msgstr "" + +msgid "Movie List Configuration" +msgstr "" + +msgid "Movie Selection" +msgstr "" + +# +#, fuzzy +msgid "Movie list configuration" +msgstr "Konfiguracija Tunera" + +# +msgid "Movie location" +msgstr "" + +# +#, fuzzy +msgid "Movie selection" +msgstr "Korekcija vremena " + +msgid "Movie/Drama" +msgstr "" + +# +msgid "Movielist menu" +msgstr "Meni izbornika filmova" + +msgid "Moving" +msgstr "" + +msgid "Moving east ..." +msgstr "" + +msgid "Moving to position" +msgstr "" + +msgid "Moving west ..." +msgstr "" + +# +msgid "Multi EPG" +msgstr "Multi EPG" + +msgid "Multi-EPG bouquet selection" +msgstr "" + +# +msgid "Multimedia" +msgstr "" + +# +msgid "Multiple service support" +msgstr "Podrška za višestruke usluge" + +msgid "Multiplex" +msgstr "" + +# +msgid "Multisat" +msgstr "Multisat" + +msgid "Multisat all select" +msgstr "" + +msgid "Music/Ballet/Dance" +msgstr "" + +# +msgid "Mute" +msgstr "Priguši" + +# +msgid "N/A" +msgstr "N/A" + +# +msgid "NEXT" +msgstr "SLJEDEĆE" + +msgid "NFI image flashing" +msgstr "" + +# +msgid "NFI image flashing completed. Press Yellow to Reboot!" +msgstr "" + +msgid "NIM" +msgstr "" + +# +msgid "NOW" +msgstr "SADA" + +# +msgid "NTSC" +msgstr "NTSC" + +# +msgid "Name" +msgstr "Ime" + +# +msgid "Nameserver" +msgstr "Nameserver" + +# +#, python-format +msgid "Nameserver %d" +msgstr "Namerserver %d" + +# +msgid "Nameserver settings" +msgstr "" + +# +#, fuzzy +msgid "Nameserver setup" +msgstr "Postavke Nameservera" + +msgid "Namespace" +msgstr "" + +# +msgid "Netmask" +msgstr "Netmask" + +# +msgid "Network" +msgstr "MreA3a" + +msgid "Network ID" +msgstr "" + +# +#, fuzzy +msgid "Network configuration..." +msgstr "Konfiguracija Tunera" + +# +#, fuzzy +msgid "Network mount" +msgstr "Montiranje mreže" + +# +#, fuzzy, python-format +msgid "Network mount %s" +msgstr "Montiranje mreže" + +msgid "Network name (SSID)" +msgstr "" + +# +msgid "Network scan" +msgstr "Pretraga mreže" + +# +msgid "Network setup" +msgstr "Mrežne postavke " + +# +msgid "Network test" +msgstr "" + +# +msgid "Network test..." +msgstr "" + +msgid "Network test: " +msgstr "" + +# +#, fuzzy +msgid "Network wizard" +msgstr "Pretraga mreže" + +# +msgid "Network:" +msgstr "" + +# +msgid "New" +msgstr "Novo" + +msgid "New PIN" +msgstr "" + +# +msgid "New version:" +msgstr "Nova verzija:" + +msgid "News Current Affairs" +msgstr "" + +msgctxt "button label, 'next screen'" +msgid "Next" +msgstr "" + +msgctxt "now/next: 'next' event label" +msgid "Next" +msgstr "" + +# +msgid "No" +msgstr "Ne" + +# +msgid "No (supported) DVDROM found!" +msgstr "" + +# +msgid "No Connection" +msgstr "" + +# +msgid "No HDD found or HDD not initialized!" +msgstr "Disk nije pronađen ili neinicijaliziran!" + +# +msgid "No backup needed" +msgstr "Sigurnosna kopija nije potrebana" + +msgid "No cable tuner found!" +msgstr "" + +# +msgid "" +"No data on transponder!\n" +"(Timeout reading PAT)" +msgstr "" +"Nema podataka na transponderu!\n" +"(Isteklo vrijeme čitanja PAT)" + +msgid "No delay" +msgstr "" + +# +msgid "No description available." +msgstr "" + +# +msgid "No details for this image file" +msgstr "" + +# +msgid "No displayable files on this medium found!" +msgstr "" + +# +msgid "No event info found, recording indefinitely." +msgstr "Informacije o događaju nisu pronađene, snimanje nedefinirano." + +# +msgid "No fast winding possible yet.. but you can use the number buttons to skip forward/backward!" +msgstr "" + +msgid "No free index available" +msgstr "" + +# +msgid "No free tuner!" +msgstr "Nema slobodnog tunera!" + +# +msgid "No network connection available." +msgstr "" + +# +msgid "No networks found" +msgstr "" + +msgid "No new plugins found" +msgstr "" + +# +msgid "No positioner capable frontend found." +msgstr "Niti jedan kompatibilan motor nije pronađen." + +msgid "No satellites configured. Plese check your tuner setup." +msgstr "" + +msgid "No service" +msgstr "" + +msgid "No services/providers selected" +msgstr "" + +# +#, fuzzy +msgid "No standby" +msgstr "ne stanje pripravnosti" + +msgid "No suitable sat tuner found!" +msgstr "" + +# +msgid "No tags are set on these movies." +msgstr "" + +# +#, fuzzy +msgid "No timeout" +msgstr "nema vremenskog ograničenja" + +# +msgid "No to all" +msgstr "" + +msgid "No transparency" +msgstr "" + +# +msgid "No tuner is configured for use with a diseqc positioner!" +msgstr "Niti jedan Tuner nije konfiguriran za rad s DiSEqC motorom!" + +# +msgid "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Niti jedan Tuner nije uključen!\n" +"Molim podesite postavke tunera prije nego počnete pretragu usluga." + +msgid "No updates available" +msgstr "" + +msgid "No updates available. Please try again later." +msgstr "" + +# +msgid "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" +msgstr "" +"Ispravan PIN za 'Usluge' nije pronađen!\n" +"Želite li promjeniti PIN sada?\n" +"Ukoliko kažete 'Ne' ovdje, Usluge ostaju nezaštićene." + +# +msgid "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" +msgstr "" +"Ispravan PIN za 'Postavke' nije pronađene!\n" +"Želite li promjeniti PIN sada?\n" +"Ukoliko kažete 'Ne' ovdje, Postavke uređaja ostaju nezaštićene." + +msgid "No wireless networks found! Searching..." +msgstr "" + +# +msgid "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." +msgstr "" + +# +msgid "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." +msgstr "" + +# +msgid "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." +msgstr "" + +# +msgid "No, but restart from begin" +msgstr "Ne, ali restartaj od početka" + +# +msgid "No, do nothing." +msgstr "Ne, ništa ne čini " + +msgid "No, just start my receiver" +msgstr "" + +msgid "No, never" +msgstr "" + +# +msgid "None" +msgstr "Prazno" + +# +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right) +msgid "Nonlinear" +msgstr "" + +msgid "Normal mode" +msgstr "" + +# +msgid "North" +msgstr "Sjever" + +# +msgid "Norwegian" +msgstr "Norveški" + +msgid "Not associated" +msgstr "" + +msgid "Not configured" +msgstr "" + +#, python-format +msgid "Not enough disk space. Please free up some disk space and try again. (%d MB required, %d MB available)" +msgstr "" + +msgid "Nothing connected" +msgstr "" + +# +msgid "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Nema ništa za skenirati!\n" +"Molim podesite postavke Tunera prije početka skeniranja." + +msgctxt "now/next: 'now' event label" +msgid "Now" +msgstr "" + +# +#, fuzzy +msgid "Now playing" +msgstr "Trenutno pokrenuto" + +# +msgid "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." +msgstr "" + +# +msgid "OK" +msgstr "OK" + +# +msgid "OK, guide me through the upgrade process" +msgstr "OK, vodi me kroz postupak nadogradnje" + +msgid "ONID" +msgstr "" + +msgid "OSD name request" +msgstr "" + +# +#, fuzzy +msgid "OSD settings" +msgstr "Postavke OSD" + +msgid "OSD transparency" +msgstr "" + +# +msgid "Off" +msgstr "Isključi" + +msgid "Offline decode delay (ms)" +msgstr "" + +msgid "Ok" +msgstr "" + +# +msgid "On" +msgstr "Uključeno" + +msgid "On end of movie" +msgstr "" + +msgid "On end of movie (as menu)" +msgstr "" + +# +msgid "One" +msgstr "Jedan" + +# +msgid "Only extensions." +msgstr "" + +# +#, fuzzy +msgid "Only free scan" +msgstr "Obriši prije skeniranja" + +# +#, fuzzy +msgid "Open service list" +msgstr "otvori listu usluga" + +# +#, fuzzy +msgid "Open the movie list" +msgstr "izađi iz izbornika filmova" + +msgid "Orbital position" +msgstr "" + +msgid "Original" +msgstr "" + +msgid "Other" +msgstr "" + +msgid "Output" +msgstr "" + +msgid "Overwrite configuration files during software upgrade?" +msgstr "" + +# +#, fuzzy +msgid "Overwrite configuration files?" +msgstr "Konfiguracija Tunera" + +# +msgid "PAL" +msgstr "PAL" + +msgid "PCR PID" +msgstr "" + +# +msgid "PIDs" +msgstr "PIDs" + +# +#, fuzzy +msgid "PIN code needed" +msgstr "Pin kod je potreban" + +msgid "PLP ID" +msgstr "" + +msgid "PMT PID" +msgstr "" + +# +msgid "Package list update" +msgstr "Nadogradnja liste paketa" + +# +msgid "Packet management" +msgstr "Rukovanje paketima" + +# +msgid "Packet manager" +msgstr "" + +#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term +msgid "Pan&scan" +msgstr "" + +# +#, fuzzy +msgid "Parent directory" +msgstr "/var direktorij" + +# +msgid "Parental control" +msgstr "Roditeljska zaštita" + +# +#, fuzzy +msgid "Parental control services editor" +msgstr "Editor Usluga za roditeljsku zaštitu" + +# +msgid "Parental control setup" +msgstr "Postavke roditeljske zaštite" + +# +msgid "Parental control type" +msgstr "Vrsta roditeljske zaštite" + +# +msgid "Password" +msgstr "" + +# +#, fuzzy +msgid "Pause" +msgstr "pauza" + +# +msgid "Pause movie at end" +msgstr "" + +msgid "Pause playback" +msgstr "" + +msgid "Pauze/Continue playback" +msgstr "" + +msgid "Percentage left" +msgstr "" + +# +#, fuzzy +msgid "Percentage right" +msgstr "desni cirkularni" + +msgid "Permanently delete all recordings in the trash can?" +msgstr "" + +msgid "Permanently remove all deleted items" +msgstr "" + +msgid "Persian" +msgstr "" + +# +msgid "Phone number" +msgstr "" + +# +#, fuzzy +msgid "PiP setup" +msgstr "PiPPostavke" + +msgid "Picon" +msgstr "" + +msgid "Picon and service name" +msgstr "" + +# +#, fuzzy +msgid "Picture player" +msgstr "sakri player" + +# +#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term. +msgid "Pillarbox" +msgstr "" + +# +msgid "Pilot" +msgstr "" + +# +msgid "Play" +msgstr "" + +# +msgid "Play DVD" +msgstr "" + +msgid "Play audio in background" +msgstr "" + +msgid "Play audio-CD..." +msgstr "" + +msgid "Play back media files" +msgstr "" + +# +#, fuzzy +msgid "Play entry" +msgstr "pokreni unos" + +# +#, fuzzy +msgid "Play from next mark or playlist entry" +msgstr "obriši unos playliste" + +msgid "Play from previous mark or playlist entry" +msgstr "" + +msgid "Play music..." +msgstr "" + +msgid "Play next" +msgstr "" + +msgid "Play next (return to movie list)" +msgstr "" + +msgid "Play next (return to previous service)" +msgstr "" + +msgid "Play previous" +msgstr "" + +# +msgid "Play recorded movies..." +msgstr "Pokreni snimljene filmove..." + +# +msgid "Please add titles to the compilation." +msgstr "" + +# +msgid "Please change recording endtime" +msgstr "Molim promjenite završno vijeme snimanja" + +# +msgid "Please check your network settings!" +msgstr "" + +# +msgid "Please choose an extension..." +msgstr "Molim odaberite ekstenziju..." + +# +msgid "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" + +# +msgid "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" + +msgid "Please connect your receiver to the internet" +msgstr "" + +# +msgid "Please do not change any values unless you know what you are doing!" +msgstr "Molim ne mijenjate vrijednosti ukoliko ne znate što radite!" + +# +msgid "Please enter a name for the new bouquet" +msgstr "Unesi ime za novi paket " + +# +msgid "Please enter a name for the new marker" +msgstr "Molim unesite ime za novu oznaku" + +# +msgid "Please enter a new filename" +msgstr "" + +# +msgid "Please enter filename (empty = use current date)" +msgstr "Molim unesite ime datoteke (prazno = koristi današnji datum)" + +# +msgid "Please enter name of the new directory" +msgstr "" + +msgid "Please enter new name:" +msgstr "" + +# +msgid "Please enter the correct pin code" +msgstr "Molim unesite ispravan pin kod" + +msgid "Please enter the old PIN code" +msgstr "" + +# +msgid "Please follow the instructions on the TV" +msgstr "" + +# +msgid "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." +msgstr "" + +# +msgid "Please press OK to continue." +msgstr "" + +msgid "Please select a default EPG type..." +msgstr "" + +# +msgid "Please select a playlist to delete..." +msgstr "Molim odaberite playlistu za brisanje..." + +# +msgid "Please select a playlist..." +msgstr "Molim odaberite playlistu..." + +# +#, fuzzy +msgid "Please select a sub service..." +msgstr "Molim odaberite poduslugu..." + +# +msgid "Please select a subservice to record..." +msgstr "Molim odaberite uslugu za snimanje..." + +# +msgid "Please select a subservice..." +msgstr "Molim odaberite poduslugu..." + +msgid "Please select an NFI file and press green key to flash!" +msgstr "" + +# +#, fuzzy +msgid "Please select medium to be scanned" +msgstr "Molim odaberite uslugu za snimanje..." + +# +msgid "Please select medium to use as backup location" +msgstr "" + +# +msgid "Please select tag to filter..." +msgstr "" + +# +msgid "Please select the movie path..." +msgstr "" + +# +msgid "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." +msgstr "" + +# +msgid "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." +msgstr "" + +# +#, fuzzy +msgid "Please set up tuner A" +msgstr "Molim podesite tuner B" + +# +msgid "Please set up tuner B" +msgstr "Molim podesite tuner B" + +# +msgid "Please set up tuner C" +msgstr "Molim podesite tuner C" + +# +msgid "Please set up tuner D" +msgstr "Molim podesite tuner D" + +# +msgid "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." +msgstr "" +"Molim koristite tipke s smjernicama za premještanje PiP prozora.\n" +"Pritisnite Bouquet +/- tipke za promjenu prozora.\n" +"Pritisnite OK za povratak u TV mod ili EXIT za prekid premještanja." + +# +msgid "Please use the UP and DOWN keys to select your language. Afterwards press the OK button." +msgstr "" + +msgid "Please wait" +msgstr "" + +# +#, fuzzy +msgid "Please wait (downloading channel list)" +msgstr "Molim pričekajte... Učitavam listu..." + +# +#, fuzzy +msgid "Please wait (downloading softcam)" +msgstr "Molim pričekajte... Učitavam listu..." + +# +#, fuzzy +msgid "Please wait (updating packages)" +msgstr "molim pričekajte, učitavam sliku..." + +# +msgid "Please wait for activation of your network configuration..." +msgstr "" + +# +msgid "Please wait while scanning is in progress..." +msgstr "" + +# +msgid "Please wait while we configure your network..." +msgstr "" + +# +msgid "Please wait while we prepare your network interfaces..." +msgstr "" + +# +msgid "Please wait while we test your network..." +msgstr "" + +# +msgid "Please wait while your network is restarting..." +msgstr "" + +# +msgid "Please wait..." +msgstr "" + +# +msgid "Please wait... Loading list..." +msgstr "Molim pričekajte... Učitavam listu..." + +# +msgid "Plugin browser" +msgstr "Preglednik dodataka" + +# +msgid "Plugin manager activity information" +msgstr "" + +# +msgid "Plugin manager help" +msgstr "" + +# +msgid "Plugins" +msgstr "Dodaci" + +msgid "Polarisation" +msgstr "" + +msgid "Polarisation:" +msgstr "" + +# +msgid "Polarization" +msgstr "Polarizacija" + +# +msgid "Polish" +msgstr "Poljski" + +# +msgid "Port A" +msgstr "Port A" + +# +msgid "Port B" +msgstr "Port B" + +# +msgid "Port C" +msgstr "Port C" + +# +msgid "Port D" +msgstr "Port D" + +# +msgid "Portuguese" +msgstr "Portugalski" + +msgid "Position of completed timers in timerlist" +msgstr "" + +msgid "Position stored at index" +msgstr "" + +# +msgid "Positioner" +msgstr "Motor" + +msgid "Positioner (selecting satellites)" +msgstr "" + +msgid "Positioner Setup" +msgstr "" + +# +msgid "Positioner setup" +msgstr "Postavke Motora" + +# +msgid "Power threshold in mA" +msgstr "Granica snage u mA" + +# +msgid "Predefined transponder" +msgstr "Predefinirani transponder" + +msgid "Prefer AC3 track" +msgstr "" + +msgid "Prefer AC3+ track" +msgstr "" + +msgid "Prefer audio track stored by service" +msgstr "" + +msgid "Prefer graphical DVB subtitles" +msgstr "" + +msgid "Prefer subtitles for hearing impaired" +msgstr "" + +msgid "Prefer subtitles stored by service" +msgstr "" + +msgid "Preferred tuner" +msgstr "" + +msgid "Preferred tuner for recordings" +msgstr "" + +msgid "Prepare another USB stick for image flashing" +msgstr "" + +# +msgid "Preparing... Please wait" +msgstr "Pripremam... Molim pričekajte" + +msgid "Press '0' to toggle PiP mode" +msgstr "" + +msgid "Press INFO on your remote control for additional information." +msgstr "" + +msgid "Press MENU on your remote control for additional options." +msgstr "" + +# +msgid "Press OK on your remote control to continue." +msgstr "" + +# +msgid "Press OK to activate the selected skin." +msgstr "" + +# +msgid "Press OK to activate the settings." +msgstr "Pritisnite OK za aktiviranje postavki." + +# +msgid "Press OK to edit the settings." +msgstr "" + +# +#, python-format +msgid "Press OK to get further details for %s" +msgstr "" + +# +msgid "Press OK to scan" +msgstr "Pritisnite ok za skeniranje" + +# +#, fuzzy +msgid "Press OK to select a provider." +msgstr "Pritisnite ok za skeniranje" + +msgid "Press OK to select satellites" +msgstr "" + +# +msgid "Press OK to select/deselect a CAId." +msgstr "" + +# +msgid "Press OK to start the scan" +msgstr "Pritisnite ok za početak skeniranja" + +msgid "Press OK to toggle the selection" +msgstr "" + +# +msgid "Press OK to toggle the selection." +msgstr "" + +# +msgid "Press yellow to set this interface as default interface." +msgstr "" + +msgctxt "button label, 'previous screen'" +msgid "Prev" +msgstr "" + +# +msgid "Preview" +msgstr "" + +# +msgid "Preview menu" +msgstr "" + +msgid "Preview selected channel" +msgstr "" + +# +msgid "Primary DNS" +msgstr "" + +# +msgid "Priority" +msgstr "" + +# +msgid "Process" +msgstr "" + +msgid "Progress" +msgstr "" + +msgid "Progress bar left" +msgstr "" + +msgid "Progress bar right" +msgstr "" + +# +msgid "Properties of current title" +msgstr "" + +# +msgid "Protect services" +msgstr "Zaštiti usluge" + +# +msgid "Protect setup" +msgstr "Zaštićene postavke" + +# +msgid "Provider" +msgstr "Pružatelji" + +# +msgid "Provider to scan" +msgstr "Pružatelj usluga za skeniranje" + +# +msgid "Providers" +msgstr "Pružatelji" + +msgid "Put TV in standby" +msgstr "" + +msgid "Put receiver in standby" +msgstr "" + +# +msgid "Python frontend for /tmp/mmi.socket" +msgstr "" + +# +msgid "Quick" +msgstr "Brzo" + +# +#, fuzzy +msgid "Quick zap" +msgstr "Brzizap" + +# +msgid "RF output" +msgstr "RF Izlaz" + +# +msgid "RGB" +msgstr "RGB" + +# +msgid "Radio" +msgstr "Radio" + +# +#, fuzzy +msgid "Ram disk" +msgstr "Ram Disk" + +# +msgid "Random" +msgstr "" + +#, python-format +msgid "Rating defined by broadcaster - %d" +msgstr "" + +msgid "Rating undefined" +msgstr "" + +# +msgid "Really close without saving settings?" +msgstr "Želite li stvarno zatvoriti bez pohrane ?" + +# +msgid "Really delete done timers?" +msgstr "Želite li stvarno obrisati gotove tajmere?" + +# +msgid "Really exit the subservices quickzap?" +msgstr "Želite li stvarno izaći iz podusluge brzogzap-a?" + +# +msgid "Really reboot now?" +msgstr "" + +# +msgid "Really restart now?" +msgstr "" + +# +msgid "Really shutdown now?" +msgstr "" + +msgid "Really upgrade the frontprocessor and reboot now?" +msgstr "" + +msgid "Really upgrade your settop box and reboot now?" +msgstr "" + +# +msgid "Reboot" +msgstr "" + +msgid "Rec" +msgstr "" + +# +#, fuzzy +msgid "Reception settings" +msgstr "Postavke prijema" + +# +msgid "Record" +msgstr "Snimi " + +# +#, python-format +msgid "Record time limited due to conflicting timer %s" +msgstr "" + +# +msgid "Recorded files..." +msgstr "Snimljene datoteke..." + +# +msgid "Recording" +msgstr "Snimanje" + +msgid "Recording in progress" +msgstr "" + +# +msgid "Recording paths" +msgstr "" + +msgid "Recording type" +msgstr "" + +# +msgid "Recording(s) are in progress or coming up in few seconds!" +msgstr "" + +# +msgid "Recordings" +msgstr "" + +# +msgid "Recordings always have priority" +msgstr "Snimanje uvijek ima prioritet" + +msgid "Red button..." +msgstr "" + +msgid "Reenter new PIN" +msgstr "" + +# +#, fuzzy +msgid "Refresh rate" +msgstr "Brzina osvježavanja" + +# +msgid "Refresh rate selection." +msgstr "" + +msgid "Regard deep standby as standby" +msgstr "" + +msgid "Relative" +msgstr "" + +# +msgid "Reload" +msgstr "" + +msgid "Reload black-/white lists" +msgstr "" + +msgid "Reloading bouquets and services..." +msgstr "" + +msgid "Remember last service in PiP" +msgstr "" + +msgid "Remember service PIN" +msgstr "" + +msgid "Remember these settings for each folder" +msgstr "" + +msgid "Reminder, you have chosen to save timeshift file." +msgstr "" + +# +#, fuzzy +msgid "Remote control type" +msgstr "Vrsta roditeljske zaštite" + +msgid "Removal has completed." +msgstr "" + +# +msgid "Remove" +msgstr "" + +# +msgid "Remove a mark" +msgstr "Obriši oznaku" + +msgid "Remove a nameserver entry" +msgstr "" + +# +#, fuzzy +msgid "Remove bookmark" +msgstr "Obriši oznaku" + +msgid "Remove completed timers after (days)" +msgstr "" + +# +msgid "Remove currently selected title" +msgstr "Ukloni trenutno odabrani titl" + +msgid "Remove items from trash can after (days)" +msgstr "" + +# +msgid "Remove plugins" +msgstr "Obriši dodatke" + +# +msgid "Remove title" +msgstr "Ukloni titl" + +# +msgid "Removing" +msgstr "" + +# +#, python-format +msgid "Removing directory %s failed. (Maybe not empty.)" +msgstr "" + +# +#, fuzzy +msgid "Removing partition table" +msgstr "Ukloni titl" + +# +msgid "Rename" +msgstr "" + +msgid "Repeat" +msgstr "" + +# +#, fuzzy +msgid "Repeat type" +msgstr "Tip ponavljanja" + +# +msgid "Repeating event currently recording... What do you want to do?" +msgstr "Snimanje ponovljenog događaja je u tijeku...Što želite učiniti?" + +# +msgid "Repeats" +msgstr "" + +msgid "Require authentication for http streams" +msgstr "" + +# +msgid "Required medium type:" +msgstr "" + +msgid "Rereading partition table" +msgstr "" + +msgid "Reserved" +msgstr "" + +# +msgid "Reset" +msgstr "Resetiraj" + +# +msgid "Reset and renumerate title names" +msgstr "" + +msgid "Reset playback position" +msgstr "" + +# +msgid "Reset video enhancement settings to system defaults?" +msgstr "" + +# +msgid "Reset video enhancement settings to your last configuration?" +msgstr "" + +# +msgid "Resolution" +msgstr "" + +# +msgid "Restart" +msgstr "Restart" + +# +msgid "Restart GUI now?" +msgstr "Restart GUI sada?" + +msgid "Restart enigma" +msgstr "" + +# +msgid "Restart network" +msgstr "" + +# +msgid "Restart test" +msgstr "" + +# +msgid "Restart your network connection and interfaces.\n" +msgstr "" + +# +msgid "Restore" +msgstr "Vrati u poč.stanje" + +# +msgid "Restore backups" +msgstr "" + +# +msgid "Restore is running..." +msgstr "" + +# +msgid "Restore system settings" +msgstr "" + +# +#, fuzzy +msgid "Restoring..." +msgstr "snimanje..." + +# +msgid "Resume from last position" +msgstr "" + +# +#, python-format +msgid "Resume position at %s" +msgstr "" + +# +#. TRANSLATORS: The string "Resuming playback" flashes for a moment +#. TRANSLATORS: at the start of a movie, when the user has selected +#. TRANSLATORS: "Resume from last position" as start behavior. +#. TRANSLATORS: The purpose is to notify the user that the movie starts +#. TRANSLATORS: in the middle somewhere and not from the beginning. +#. TRANSLATORS: (Some translators seem to have interpreted it as a +#. TRANSLATORS: question or a choice, but it is a statement.) +msgid "Resuming playback" +msgstr "" + +# +msgid "Return to movie list" +msgstr "" + +# +msgid "Return to previous service" +msgstr "" + +msgid "Reverse bouquet buttons" +msgstr "" + +msgid "Reverse list" +msgstr "" + +# +msgid "Rewind speeds" +msgstr "" + +msgid "Rewrap teletext subtitles" +msgstr "" + +# +msgid "Right" +msgstr "Desno" + +msgid "Right from servicename" +msgstr "" + +msgid "Roll-off" +msgstr "" + +msgid "Romanian" +msgstr "" + +msgid "Root directory" +msgstr "" + +msgid "Rotor step position:" +msgstr "" + +# +msgid "Rotor turning speed" +msgstr "Brzina okretanja rotora" + +msgid "Round start time on" +msgstr "" + +# +msgid "Russian" +msgstr "Ruski" + +# +msgid "S-Video" +msgstr "S-Video" + +msgid "SID" +msgstr "" + +# +msgid "SINGLE LAYER DVD" +msgstr "" + +# +msgid "SNR" +msgstr "SNR" + +# +msgid "SNR:" +msgstr "SNR:" + +# +msgid "SSID:" +msgstr "" + +msgid "Same resolution as skin" +msgstr "" + +# +msgid "Sat" +msgstr "Sat" + +# +msgid "Satellite" +msgstr "Satelit" + +# +#, fuzzy +msgid "Satellite dish setup" +msgstr "Postavke Satelitske Opreme" + +# +msgid "Satellite equipment" +msgstr "" + +# +#, fuzzy +msgid "Satellite equipment setup" +msgstr "Postavke Satelitske Opreme" + +msgid "Satellite longitude:" +msgstr "" + +# +msgid "Satellites" +msgstr "Sateliti" + +# +msgid "Satfinder" +msgstr "Sat tražitelj" + +# +msgid "Sats" +msgstr "" + +# +msgid "Saturation" +msgstr "" + +# +msgid "Saturday" +msgstr "Subota" + +# +msgid "Save" +msgstr "" + +# +#, fuzzy +msgid "Save playlist" +msgstr "pohrani playlistu" + +msgid "Save timeshift file" +msgstr "" + +msgid "Save timeshift file in movie directory" +msgstr "" + +# +msgid "Scaler sharpness" +msgstr "" + +# +#, fuzzy +msgid "Scaling mode" +msgstr "Mod razmjera" + +msgid "Scan" +msgstr "" + +# +msgid "Scan " +msgstr "Skeniraj" + +# +#. TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' +#, fuzzy, python-format +msgid "Scan %s" +msgstr "Skeniraj" + +# +#. TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' +#, fuzzy, python-format +msgid "Scan %s band" +msgstr "Skeniraj band EU MID" + +# +msgid "Scan additional SR" +msgstr "Skeniraj dodatne SR" + +# +#, fuzzy +msgid "Scan files..." +msgstr "Snimljene datoteke..." + +msgid "Scan wireless networks" +msgstr "" + +msgid "Scan your network for wireless access points and connect to them using your selected wireless device.\n" +msgstr "" + +#, python-format +msgid "Scanning %s..." +msgstr "" + +#. TRANSLATORS: The stb is performing a channel scan, progress percentage is printed in '%d' (and '%%' will show a single '%' symbol) +#, python-format +msgid "Scanning - %d%% completed" +msgid_plural "Scanning - %d%% completed" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "Scanning completed, %d channel found" +msgid_plural "Scanning completed, %d channels found" +msgstr[0] "" +msgstr[1] "" + +msgid "Scanning failed!" +msgstr "" + +msgid "Scanning..." +msgstr "" + +# +msgid "Scans default lamedbs sorted by satellite with a connected dish positioner" +msgstr "" + +# +msgid "Search east" +msgstr "Pretraži istok" + +# +msgid "Search west" +msgstr "Pretraži zapad" + +msgid "Searching" +msgstr "" + +msgid "Searching east ..." +msgstr "" + +# +msgid "Searching for available updates. Please wait..." +msgstr "" + +# +msgid "Searching for new installed or removed packages. Please wait..." +msgstr "" + +msgid "Searching west ..." +msgstr "" + +msgid "Second cable of motorized LNB" +msgstr "" + +# +msgid "Secondary DNS" +msgstr "" + +# +msgid "Seek" +msgstr "Traži" + +# +#, fuzzy +msgid "Seek backward" +msgstr "preskoči unazad" + +# +#, fuzzy +msgid "Seek backward (enter time)" +msgstr "preskoči unazad (unesi vrijeme)" + +# +#, fuzzy +msgid "Seek forward" +msgstr "preskoči unaprijed" + +# +#, fuzzy +msgid "Seek forward (enter time)" +msgstr "preskoči naprijed (unesi vrijeme)" + +# +msgid "Select" +msgstr "" + +# +#, fuzzy +msgid "Select CAId" +msgstr "Odaberi Tvrdi Disk" + +# +msgid "Select HDD" +msgstr "Odaberi Tvrdi Disk" + +# +#, fuzzy +msgid "Select a bouquet" +msgstr "Odaberi film" + +# +msgid "Select a movie" +msgstr "Odaberi film" + +# +#, fuzzy +msgid "Select a network adapter" +msgstr "Odaberi Mrežni adapter" + +# +#, fuzzy +msgid "Select a skin" +msgstr "Odaberi film" + +# +#, fuzzy +msgid "Select a tuner" +msgstr "Odaberi film" + +# +#, fuzzy +msgid "Select a wireless network" +msgstr "Odaberi zvučni nosioc" + +msgid "Select action" +msgstr "" + +#, python-format +msgid "Select action for timer %s:" +msgstr "" + +msgid "Select all" +msgstr "" + +msgid "Select an image to be downloaded" +msgstr "" + +# +msgid "Select audio track" +msgstr "Odaberi zvučni nosioc" + +# +#, fuzzy +msgid "Select backup files" +msgstr "Odaberi film" + +# +#, fuzzy +msgid "Select backup location" +msgstr "Lokacija sigurnosne kopije" + +# +msgid "Select channel to record from" +msgstr "Odaberi Kanal za snimanje od" + +msgid "Select copy destination for:" +msgstr "" + +msgid "Select default EPG type..." +msgstr "" + +msgid "Select desired image from feed list" +msgstr "" + +msgid "Select destination for:" +msgstr "" + +msgid "Select files for backup." +msgstr "" + +# +msgid "Select files/folders to backup" +msgstr "" + +msgid "Select input device" +msgstr "" + +msgid "Select input device." +msgstr "" + +# +msgid "Select interface" +msgstr "" + +# +#, fuzzy +msgid "Select location" +msgstr "EPG selektor " + +# +#, fuzzy +msgid "Select movie" +msgstr "Odaberi film" + +# +msgid "Select provider to add..." +msgstr "" + +# +msgid "Select refresh rate" +msgstr "" + +msgid "Select satellites" +msgstr "" + +# +msgid "Select service to add..." +msgstr "" + +msgid "Select sort method:" +msgstr "" + +# +#, fuzzy +msgid "Select target folder" +msgstr "Odaberi film" + +# +#, fuzzy +msgid "Select the movie path" +msgstr "Odaberi film" + +# +#, fuzzy +msgid "Select upgrade source" +msgstr "Odaberi film" + +# +msgid "Select upgrade source to edit." +msgstr "" + +# +msgid "Select video input with up/down buttons" +msgstr "" + +# +msgid "Select video mode" +msgstr "" + +# +msgid "Select wireless network" +msgstr "" + +msgid "Select your provider, and press OK to start the scan" +msgstr "" + +msgid "Selecting satellites 1 (USALS)" +msgstr "" + +msgid "Selecting satellites 2 (USALS)" +msgstr "" + +# +msgid "Send DiSEqC only on satellite change" +msgstr "" + +# +msgid "Separate titles with a main menu" +msgstr "" + +# +msgid "Sequence repeat" +msgstr "Ponovi slijed" + +# +msgid "Serbian" +msgstr "" + +# +msgid "Service" +msgstr "Usluge " + +# +msgid "Service has been added to the favourites." +msgstr "Usluga je dodana u listu favorita." + +# +msgid "Service has been added to the selected bouquet." +msgstr "Usluga je dodana u odabrani paket." + +# +#, fuzzy +msgid "Service info" +msgstr "Info Usluge" + +# +msgid "" +"Service invalid!\n" +"(Timeout reading PMT)" +msgstr "" +"Neispravna usluga!\n" +"(Isteklo čitanje PMT)" + +# +#, fuzzy +msgid "Service name" +msgstr "Pretraživanje usluge" + +# +msgid "" +"Service not found!\n" +"(SID not found in PAT)" +msgstr "" +"Usluga nije pronađena!\n" +"(SID nije pronađen u PATu)" + +msgid "Service reference" +msgstr "" + +# +msgid "Service scan" +msgstr "Pretraga usluga" + +# +#, fuzzy +msgid "Service searching" +msgstr "Pretraživanje usluga" + +# +#, fuzzy +msgid "Service title mode" +msgstr "Info Usluge" + +# +msgid "" +"Service unavailable!\n" +"Check tuner configuration!" +msgstr "" +"Usluga nije dostupna!\n" +"Provjerite konfiguraciju tunera" + +# +msgid "Services" +msgstr "Usluge" + +msgid "Set default" +msgstr "" + +# +#, fuzzy +msgid "Set end time" +msgstr "Završno vrijeme" + +msgid "Set fixed" +msgstr "" + +msgid "Set fps for external subtitles" +msgstr "" + +# +msgid "Set interface as default Interface" +msgstr "" + +msgid "Set limits" +msgstr "" + +msgid "Set the type of the progress indication in the channel selection screen." +msgstr "" + +msgid "Set time window to 1 hour" +msgstr "" + +msgid "Set time window to 2 hours" +msgstr "" + +msgid "Set time window to 3 hours" +msgstr "" + +msgid "Set time window to 4 hours" +msgstr "" + +msgid "Set time window to 5 hours" +msgstr "" + +msgid "Set time window to 6 hours" +msgstr "" + +msgid "Set voltage and 22KHz" +msgstr "" + +# +msgid "Settings" +msgstr "Postavke" + +# +msgid "Setup" +msgstr "Postavi" + +msgid "Setup menu" +msgstr "" + +# +#, fuzzy +msgid "Setup mode" +msgstr "Mod Postavki" + +msgid "Setup your positioner" +msgstr "" + +# +#, fuzzy +msgid "Setup your satellite equipment" +msgstr "Postavke Satelitske Opreme" + +# +#, python-format +msgid "Shall the USB stick wizard proceed and program the image file %s into flash memory?" +msgstr "" + +# +msgid "Sharpness" +msgstr "" + +msgid "Short filenames" +msgstr "" + +msgid "Show EIT now/next in infobar" +msgstr "" + +# +#, fuzzy +msgid "Show EPG for current channel..." +msgstr "Prikaži info traku pri promjeni događaja" + +# +#, fuzzy +msgid "Show EPG..." +msgstr "prikaži EPG..." + +msgid "Show Games show" +msgstr "" + +msgid "Show SNR percentage instead of dB value" +msgstr "" + +msgid "Show VCR scart on main menu" +msgstr "" + +msgid "Show WLAN status" +msgstr "" + +msgid "Show animation while busy" +msgstr "" + +msgid "Show background in radio mode" +msgstr "" + +msgid "Show bouquet selection menu" +msgstr "" + +msgid "Show busy indicator when the system is busy." +msgstr "" + +msgid "Show channel numbers in channel selection" +msgstr "" + +msgid "Show columns" +msgstr "" + +msgid "Show crypto icons" +msgstr "" + +msgid "Show crypto info in infobar" +msgstr "" + +msgid "Show detailed event info" +msgstr "" + +# +#, fuzzy +msgid "Show event details" +msgstr "prikaži proširene infor. " + +# +msgid "Show event-progress in channel selection" +msgstr "" + +# +#, fuzzy +msgid "Show extended description" +msgstr "prikaži proširene informacije" + +# +#, fuzzy +msgid "Show extensions..." +msgstr "gledaj ekstenzije..." + +msgid "Show icon for new/unseen items" +msgstr "" + +msgid "Show in extensions menu" +msgstr "" + +msgid "Show info" +msgstr "" + +msgid "Show info line" +msgstr "" + +# +msgid "Show infobar on channel change" +msgstr "Prikaži infobar na promjeni kanala" + +# +msgid "Show infobar on event change" +msgstr "Prikaži info traku pri promjeni događaja" + +# +msgid "Show infobar on skip forward/backward" +msgstr "Prikaži info traku na presk. naprijed/unazad" + +msgid "Show latest commits on sourceforge" +msgstr "" + +msgid "Show message when recording starts" +msgstr "" + +msgid "Show movie lengths in movielist" +msgstr "" + +msgid "Show multi channel EPG" +msgstr "" + +msgid "Show picons in channel list" +msgstr "" + +# +msgid "Show positioner movement" +msgstr "Prikaži kretanje motora" + +msgid "Show screensaver" +msgstr "" + +msgid "Show second infobar" +msgstr "" + +msgid "Show service type icons" +msgstr "" + +# +msgid "Show services beginning with" +msgstr "Prikaži usluge koje počinju s" + +# +#, fuzzy +msgid "Show shutdown menu" +msgstr "prikaži izbornik isključivanja" + +msgid "Show single service EPG" +msgstr "" + +msgid "Show status icons in Movielist" +msgstr "" + +msgid "Show status icons in movie list" +msgstr "" + +msgid "Show status icons in movielist" +msgstr "" + +# +#, fuzzy +msgid "Show tag menu" +msgstr "prikaži citat menia" + +# +msgid "Show the radio player..." +msgstr "Prikaži Radio ..." + +# +msgid "Show the tv player..." +msgstr "Prikaži tv player..." + +msgid "Show warning when timeshift is stopped" +msgstr "" + +# +msgid "Shows the state of your wireless LAN connection.\n" +msgstr "" + +# +#, fuzzy +msgid "Shuffle playlist" +msgstr "sam biraj iz playliste" + +# +msgid "Shutdown" +msgstr "" + +msgid "Shutdown when in Standby" +msgstr "" + +msgid "Side by side" +msgstr "" + +msgid "Signal OK, proceeding" +msgstr "" + +msgid "Signal quality" +msgstr "" + +msgid "Signal strength:" +msgstr "" + +# +msgid "Signal: " +msgstr "" + +# +msgid "Similar" +msgstr "Slično" + +# +msgid "Similar broadcasts:" +msgstr "Slični pružatelji:" + +# +msgid "Simple" +msgstr "Jednostavno" + +# +msgid "Simple titleset (compatibility for legacy players)" +msgstr "" + +# +msgid "Single" +msgstr "Jedan" + +# +msgid "Single EPG" +msgstr "Jedan EPG" + +# +msgid "Single satellite" +msgstr "Jedan satelit" + +# +#, fuzzy +msgid "Single step (GOP)" +msgstr "Jedan satelit" + +# +msgid "Single transponder" +msgstr "Jedan Transponder" + +msgid "Site latitude" +msgstr "" + +msgid "Site longitude" +msgstr "" + +# +msgid "Skin" +msgstr "" + +# +msgid "Skins" +msgstr "" + +# +#, fuzzy +msgid "Skip empty services" +msgstr "Zaštiti usluge" + +msgid "Skip internet connection check (disables automatic package installation)" +msgstr "" + +# +#, fuzzy +msgid "Sleep timer" +msgstr "Tajmer spavanja" + +msgid "SleepTimer Configuration" +msgstr "" + +msgid "Sleeptimer" +msgstr "" + +msgid "Slide picture in loop" +msgstr "" + +# +#, fuzzy +msgid "Slide show interval (sec.)" +msgstr "Interval pokaz.prezentacije(sek.)" + +# +#, python-format +msgid "Slot %d" +msgstr "Utor %d" + +msgid "Slovak" +msgstr "" + +# +msgid "Slovenian" +msgstr "" + +# +msgid "Slow" +msgstr "Usporeno" + +msgid "Slow motion speeds" +msgstr "" + +msgid "Small progress" +msgstr "" + +msgid "Social/Political/Economics" +msgstr "" + +msgid "SoftCam / CI" +msgstr "" + +msgid "Softcam type" +msgstr "" + +# +msgid "Software" +msgstr "" + +# +msgid "Software management" +msgstr "" + +msgid "Software manager setup" +msgstr "" + +# +msgid "Software restore" +msgstr "" + +# +msgid "Software update" +msgstr "" + +msgid "Softwaremanager information" +msgstr "" + +# +msgid "Some plugins are not available:\n" +msgstr "Neki dodaci nisu dostupni:\n" + +#, python-format +msgid "Sorry, %s has not been installed!" +msgstr "" + +msgid "Sorry, deleting directories can (for now) only be done through the trash can." +msgstr "" + +msgid "Sorry, no backups found!" +msgstr "" + +msgid "Sorry, no details available!" +msgstr "" + +# +#, fuzzy +msgid "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." +msgstr "" +"Oprostite, vaša destinacija za sigurnosnu kopiju ne postoji\n" +"\n" +"Molim odaberite drugu lokaciju." + +msgid "Sort" +msgstr "" + +# +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort A-Z" +msgstr "Sortiraj A-Z" + +msgid "Sort by" +msgstr "" + +msgid "Sort list:" +msgstr "" + +# +#. TRANSLATORS: This must fit into the header button in the EPG-List +#, fuzzy +msgid "Sort time" +msgstr "Vrijeme Sortiranja" + +# +msgid "Sound" +msgstr "Zvuk" + +# +#, fuzzy +msgid "Sound carrier" +msgstr "Zvučni nosioc" + +msgid "Source request" +msgstr "" + +# +msgid "South" +msgstr "Jug" + +# +msgid "Spanish" +msgstr "Španjolski" + +msgid "Specify the end time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the end time until the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify the start time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the start time when the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify timeframe to ignore inactivity sleeptimer" +msgstr "" + +msgid "Specify timeframe to ignore the shutdown in standby" +msgstr "" + +# +msgid "Split preview mode" +msgstr "" + +msgid "Splitscreen" +msgstr "" + +msgid "Sports" +msgstr "" + +# +#, fuzzy +msgid "Standard" +msgstr "standardno" + +msgid "Standart list" +msgstr "" + +# +msgid "Standby" +msgstr "Stanje sprem." + +# +#, fuzzy +msgid "Standby / restart" +msgstr "stanje sprem./ restart" + +msgid "Standby after current event" +msgstr "" + +#, python-format +msgid "Standby fan %d PWM" +msgstr "" + +#, python-format +msgid "Standby fan %d voltage" +msgstr "" + +msgid "Standby in " +msgstr "" + +msgid "StandbyLED" +msgstr "" + +# +msgid "Start from the beginning" +msgstr "" + +msgid "Start offline decode" +msgstr "" + +# +msgid "Start recording?" +msgstr "Započeti Snimanje?" + +# +msgid "Start test" +msgstr "" + +# +#, fuzzy +msgid "Start time" +msgstr "Početno vrijeme " + +msgid "Start time to ignore inactivity sleeptimer" +msgstr "" + +msgid "Start time to ignore shutdown in standby" +msgstr "" + +# +#, fuzzy +msgid "Start timeshift" +msgstr "pokreni vrem.pomak" + +msgid "Start with list screen" +msgstr "" + +# +msgid "Starting on" +msgstr "Pokrećem" + +msgid "Startup the set top box in standby" +msgstr "" + +msgid "Startup to Standby" +msgstr "" + +# +msgid "Step east" +msgstr "Koran na istok" + +# +msgid "Step west" +msgstr "Korak na zapad" + +msgid "Stepped east" +msgstr "" + +msgid "Stepped west" +msgstr "" + +# +msgid "Stop" +msgstr "Zaustavi " + +# +#, fuzzy +msgid "Stop PiP" +msgstr "zaustavi PiP" + +# +msgid "Stop current event and disable coming events" +msgstr "Zaustavi trenutni događaj i ostale dolazeće također." + +# +msgid "Stop current event but not coming events" +msgstr "Zaustavi trenutni događaj ali ne i ostale dolazeće" + +# +#, fuzzy +msgid "Stop entry" +msgstr "zaustavi unos" + +# +msgid "Stop playing this movie?" +msgstr "Zaustaviti ovaj Film?" + +msgid "Stop recording" +msgstr "" + +msgid "Stop recording and delete" +msgstr "" + +msgid "Stop service on return to movie list" +msgstr "" + +# +msgid "Stop test" +msgstr "" + +# +msgid "Stop testing plane after # failed transponders" +msgstr "" + +# +msgid "Stop testing plane after # successful transponders" +msgstr "" + +msgid "Stop timer recording" +msgstr "" + +# +#, fuzzy +msgid "Stop timeshift" +msgstr "zaustavi vrem.pomak" + +# +#, fuzzy +msgid "Stop timeshift?" +msgstr "Zaustaviti vremenski pomak?" + +msgid "Stopped" +msgstr "" + +msgid "Store at index" +msgstr "" + +# +msgid "Store position" +msgstr "Pohrani poziciju" + +# +msgid "Stored position" +msgstr "Pohranjene pozicije" + +msgid "Stream" +msgstr "" + +msgid "Stream request" +msgstr "" + +msgid "Strongest position" +msgstr "" + +# +msgid "Subservice list..." +msgstr "lista podusluga..." + +# +msgid "Subservices" +msgstr "Podusluge " + +msgid "Subtitle Quickmenu" +msgstr "" + +# +#, fuzzy +msgid "Subtitle alignment" +msgstr "Sekcija titlova" + +msgid "Subtitle border width" +msgstr "" + +msgid "Subtitle delay when timing is bad" +msgstr "" + +msgid "Subtitle delay when timing lacks" +msgstr "" + +# +#, fuzzy +msgid "Subtitle font size" +msgstr "Titlovi" + +msgid "Subtitle language selection 1" +msgstr "" + +msgid "Subtitle language selection 2" +msgstr "" + +msgid "Subtitle language selection 3" +msgstr "" + +msgid "Subtitle language selection 4" +msgstr "" + +# +#, fuzzy +msgid "Subtitle position" +msgstr "Sekcija titlova" + +# +msgid "Subtitle selection" +msgstr "Sekcija titlova" + +msgid "Subtitle selection..." +msgstr "" + +msgid "Subtitle settings" +msgstr "" + +# +msgid "Subtitles" +msgstr "Titlovi" + +# +msgid "Sun" +msgstr "Ned" + +# +msgid "Sunday" +msgstr "Nedelja" + +# +#, fuzzy +msgid "Swap PiP and main picture" +msgstr "zamijeni PiP sa glavnom slikom" + +# +#, fuzzy +msgid "Swap services" +msgstr "Zamjeni prozore" + +# +msgid "Swedish" +msgstr "Švedski" + +msgid "Switch TV to correct input" +msgstr "" + +msgid "Switch between filelist/playlist" +msgstr "" + +msgid "Switch between normal mode and list mode" +msgstr "" + +msgid "Switch to HDMI in mode" +msgstr "" + +# +#, fuzzy +msgid "Switch to filelist" +msgstr "prebaci u datoteknu listu" + +msgid "Switch to next channel" +msgstr "" + +# +#, fuzzy +msgid "Switch to next channel in history" +msgstr "sljedeći kanal u povijesti" + +# +#, fuzzy +msgid "Switch to next sub service" +msgstr "prebaci na sljedeću poduslugu " + +# +#, fuzzy +msgid "Switch to playlist" +msgstr "prebaci u playlistu" + +# +#, fuzzy +msgid "Switch to previous channel" +msgstr "prebaci u predhodnu poduslugu " + +# +#, fuzzy +msgid "Switch to previous channel in history" +msgstr "predhodni kanal u povijesti" + +# +#, fuzzy +msgid "Switch to previous sub service" +msgstr "prebaci u predhodnu poduslugu " + +# +msgid "Switchable tuner types:" +msgstr "" + +msgid "Symbol rate" +msgstr "" + +msgid "Symbol rate:" +msgstr "" + +msgid "Sync failure moving back to origin !" +msgstr "" + +# +msgid "System" +msgstr "Sistem " + +# +#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) +msgid "TRANSLATOR_INFO" +msgstr "" + +# +msgid "TS file is too large for ISO9660 level 1!" +msgstr "" + +msgid "TSID" +msgstr "" + +msgid "TV physical address report" +msgstr "" + +msgid "TXT PID" +msgstr "" + +msgid "Table of contents for collection" +msgstr "" + +# +msgid "Tags" +msgstr "" + +msgid "Teletext subtitle color" +msgstr "" + +# +#, fuzzy +msgid "Temperature and fan control" +msgstr "Roditeljska zaštita" + +# +msgid "Terrestrial" +msgstr "Zemaljski" + +# +msgid "Terrestrial provider" +msgstr "Zemaljski pružatelj" + +# +msgid "Test DiSEqC settings" +msgstr "" + +# +msgid "Test mode" +msgstr "Test mod" + +msgid "Test the network configuration of your receiver.\n" +msgstr "" + +# +#, fuzzy +msgid "Test type" +msgstr "Test mod" + +msgid "Text color" +msgstr "" + +msgid "Thai" +msgstr "" + +# +msgid "" +"Thank you for using the wizard.\n" +"Please press OK to continue." +msgstr "" + +msgid "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." +msgstr "" + +msgid "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?" +msgstr "" + +msgid "The PIN code has been changed successfully." +msgstr "" + +msgid "The PIN codes you entered are different." +msgstr "" + +msgid "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" +msgstr "" + +# +msgid "The backup failed. Please choose a different backup location." +msgstr "Neuspjela izrada sigurnosne kopije. Molim odaberite drugu lokaciju." + +#, python-format +msgid "" +"The current beta image might not be stable.\n" +"For more information see %s." +msgstr "" + +# +#, python-format +msgid "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." +msgstr "" + +# +#, python-format +msgid "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" +msgstr "" + +# +msgid "The following files were found..." +msgstr "" + +msgid "The md5sum validation failed, the file may be corrupted!" +msgstr "" + +msgid "" +"The network wizard extension is not installed!\n" +"Please install it." +msgstr "" + +# +#, python-format +msgid "The path %s already exists." +msgstr "" + +# +msgid "The pin code you entered is wrong." +msgstr "Unešeni pin kod je krivi." + +# +#, python-format +msgid "The results have been written to %s." +msgstr "" + +# +msgid "The sleep timer has been activated." +msgstr "Tajmer spavanja je aktiviran." + +# +msgid "The sleep timer has been disabled." +msgstr "Tajmer je onemogućen." + +msgid "" +"The software management extension is not installed!\n" +"Please install it." +msgstr "" + +#, python-format +msgid "The status of the current beta image could not be checked because %s can not be reached." +msgstr "" + +# +msgid "The timer file (timers.xml) is corrupt and could not be loaded." +msgstr "" + +msgid "The user interface of your receiver is restarting" +msgstr "" + +msgid "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" +msgstr "" + +# +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." +msgstr "" + +# +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it." +msgstr "" + +# +msgid "The wizard can backup your current settings. Do you want to do a backup now?" +msgstr "Čarobnjak može napraviti sigurnosnu kopiju postavki. Želite li je napraviti sada?" + +#, python-format +msgid "The wizard found a configuration backup. Do you want to restore your old settings from %s?" +msgstr "" + +# +msgid "The wizard is finished now." +msgstr "Čarobnjak je gotov." + +# +msgid "There are at least " +msgstr "" + +#, python-format +msgid "There are at least %s updates available." +msgstr "" + +# +msgid "There are currently no outstanding actions." +msgstr "" + +# +msgid "There are no updates available." +msgstr "" + +msgid "There is no signal to lock on !" +msgstr "" + +# +msgid "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" +msgstr "" + +# +msgid "This DVD RW medium is already formatted - reformatting will erase all content on the disc." +msgstr "" + +msgid "" +"This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!" +msgstr "" + +# +msgid "This plugin is installed." +msgstr "" + +# +msgid "This plugin is not installed." +msgstr "" + +# +msgid "This plugin will be installed." +msgstr "" + +# +msgid "This plugin will be removed." +msgstr "" + +#, python-format +msgid "This receiver cannot decode %s streams!" +msgstr "" + +msgid "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration" +msgstr "" + +msgid "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" +msgstr "" + +msgid "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" +msgstr "" + +msgid "" +"This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." +msgstr "" + +msgid "This test detects your configured LAN adapter." +msgstr "" + +msgid "" +"This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\n" +"Are you sure?" +msgstr "" + +# +msgid "Three" +msgstr "Tri" + +# +msgid "Threshold" +msgstr "Prag" + +# +msgid "Thu" +msgstr "Čet" + +# +msgid "Thumbnails" +msgstr "" + +# +msgid "Thursday" +msgstr "Četvrtak" + +# +msgid "Time" +msgstr "Vrijeme" + +# +#, fuzzy +msgid "Time scale" +msgstr "Korekcija vremena " + +# +msgid "Timer" +msgstr "Tajmer" + +msgid "Timer Overview" +msgstr "" + +# +#, fuzzy +msgid "Timer edit" +msgstr "Editiranje tajmera" + +# +#, fuzzy +msgid "Timer editor" +msgstr "Editor tajmera" + +# +msgid "Timer entry" +msgstr "Unos Tajmera" + +# +msgid "Timer log" +msgstr "Tajmer log" + +# +msgid "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" +msgstr "" + +# +#, fuzzy +msgid "Timer overview" +msgstr "Unos Tajmera" + +# +#, fuzzy +msgid "Timer recording location" +msgstr "promjeni dužinu snimanja" + +# +msgid "Timer sanity error" +msgstr "Greška nerazumnog tajmera" + +# +msgid "Timer selection" +msgstr "Korekcija vremena " + +msgid "Timer selection..." +msgstr "" + +# +#, fuzzy +msgid "Timer type" +msgstr "Tip tajmer" + +# +msgid "Timeshift" +msgstr "Vrem.pomak" + +msgid "Timeshift Live" +msgstr "" + +# +msgid "Timeshift location" +msgstr "" + +# +msgid "Timeshift not possible!" +msgstr "Vremenski pomak nije moguć!" + +# +msgid "Timezone" +msgstr "Vremenska zona" + +# +msgid "Title" +msgstr "Titl" + +# +msgid "Title properties" +msgstr "" + +# +msgid "Titleset mode" +msgstr "" + +msgid "To audio selection" +msgstr "" + +msgid "To subtitle selection" +msgstr "" + +msgid "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." +msgstr "" + +# +msgid "Today" +msgstr "Danas" + +# +#, fuzzy +msgid "Toggle a cut mark at the current position" +msgstr "aktiviraj rezanje na trenutno označenoj poziciji" + +# +#, fuzzy +msgid "Tone amplitude" +msgstr "Ton mod" + +# +msgid "Tone mode" +msgstr "Ton mod" + +# +msgid "Toneburst" +msgstr "Toneburst" + +# +msgid "Toneburst A/B" +msgstr "Toneburst A/B" + +msgid "Top and bottom" +msgstr "" + +# +msgid "Track" +msgstr "" + +# +msgid "Translation" +msgstr "Prijevod" + +# +msgid "Translation:" +msgstr "Prijevod:" + +msgid "Translations" +msgstr "" + +# +msgid "Transmission mode" +msgstr "Mod transmisije" + +# +msgid "Transponder" +msgstr "Transponder" + +# +#, fuzzy +msgid "Transponder type" +msgstr "Tip Transpondera" + +msgid "Trash can" +msgstr "" + +# +msgid "Tries left:" +msgstr "Pokušaja ostalo:" + +# +msgid "Try to find used transponders in cable network.. please wait..." +msgstr "Pokušavam pronaći korištene transpondere u kabelskoj mreži.. molim pričekajte..." + +# +msgid "Trying to download a new packetlist. Please wait..." +msgstr "" + +# +msgid "Tue" +msgstr "Uto" + +# +msgid "Tuesday" +msgstr "Utorak" + +# +msgid "Tune" +msgstr "Tune" + +# +#, fuzzy +msgid "Tune and focus" +msgstr "Status tunera" + +# +msgid "Tune failed!" +msgstr "Greška tunera!" + +# +msgid "Tuner" +msgstr "Tuner" + +# +msgid "Tuner configuration" +msgstr "Konfiguracija Tunera" + +msgid "Tuner is not supported" +msgstr "" + +# +#, fuzzy +msgid "Tuner slot" +msgstr "Utor Tunera" + +# +msgid "Tuner status" +msgstr "Status tunera" + +# +#, fuzzy, python-format +msgid "Tuner status %s" +msgstr "Status tunera" + +# +msgid "Tuner type" +msgstr "" + +# +msgid "Turkish" +msgstr "Turski" + +msgid "Turn on the power LED during standby." +msgstr "" + +msgid "Turning step size" +msgstr "" + +# +msgid "Two" +msgstr "Dva" + +# +msgid "Type" +msgstr "" + +# +msgid "Type of scan" +msgstr "Tip skeniranja" + +# +msgid "USALS" +msgstr "USALS" + +msgid "USALS calibration" +msgstr "" + +# +#, fuzzy +msgid "USB stick" +msgstr "USB Disk" + +# +msgid "USB stick wizard" +msgstr "" + +msgid "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" + +# +msgid "Undo install" +msgstr "" + +# +msgid "Undo uninstall" +msgstr "" + +msgid "Unencrypted" +msgstr "" + +# +msgid "UnhandledKey" +msgstr "" + +# +msgid "Unicable" +msgstr "" + +# +msgid "Unicable LNB" +msgstr "" + +# +msgid "Unicable Martix" +msgstr "" + +# +msgid "Uninstall" +msgstr "" + +# +msgid "Universal LNB" +msgstr "Univerzalni LNB" + +msgid "Unknown" +msgstr "" + +msgid "Unmount" +msgstr "" + +# +msgid "Unsupported" +msgstr "" + +# +msgid "Update" +msgstr "" + +msgid "Update and ask to reboot" +msgstr "" + +msgid "Update and reboot (recommended)" +msgstr "" + +# +#, fuzzy +msgid "Update channel list only" +msgstr "sljedeći kanal u povijesti" + +#, python-format +msgid "Update completed, %d package was installed." +msgid_plural "Update completed, %d packages were installed." +msgstr[0] "" +msgstr[1] "" + +msgid "Update completed. Do you want to reboot your receiver?" +msgstr "" + +msgid "Update failed. Your receiver does not have a working internet connection." +msgstr "" + +msgid "Update has completed." +msgstr "" + +# +msgid "Updatefeed not available." +msgstr "" + +# +msgid "Updating software catalog" +msgstr "" + +# +msgid "Upgrading" +msgstr "Nadograđujem" + +# +msgid "Use" +msgstr "" + +# +msgid "Use DHCP" +msgstr "Koristi DHCP" + +msgid "Use EIT EPG information when it is available." +msgstr "" + +msgid "Use FreeSat EPG information when it is available." +msgstr "" + +msgid "Use MHW EPG information when it is available." +msgstr "" + +msgid "Use Netmed EPG information when it is available." +msgstr "" + +msgid "Use TV remote control" +msgstr "" + +# +#, fuzzy +msgid "Use USALS for this sat" +msgstr "Koristi USALS za ovaj satelit" + +msgid "Use ViaSat EPG information when it is available." +msgstr "" + +msgid "Use Virgin EPG information when it is available." +msgstr "" + +# +msgid "Use a gateway" +msgstr "Koristi gateway" + +msgid "Use fastscan channel names" +msgstr "" + +msgid "Use fastscan channel numbering" +msgstr "" + +msgid "Use frequency or channel" +msgstr "" + +msgid "Use individual settings for each directory" +msgstr "" + +# +#, fuzzy +msgid "Use interface" +msgstr "Zajedničko sučelje" + +msgid "Use official channel numbering" +msgstr "" + +msgid "Use original DVB subtitle position" +msgstr "" + +msgid "Use original teletext position" +msgstr "" + +# +msgid "Use power measurement" +msgstr "Koristi mjerenje snage" + +msgid "Use the network wizard to configure selected network adapter" +msgstr "" + +msgid "Use the network wizard to configure your network\n" +msgstr "" + +# +msgid "Use the up/down keys on your remote control to select an option. After that, press OK." +msgstr "Koristite gore/dolje tipke na vašem bežičnom upravljaču za odabir opcije. Nakon toga, pritisnite OK." + +# +#, fuzzy +msgid "Use the wizard to set up basic features" +msgstr "Čarobnjaka za postavljanje osnovnih postavki" + +# +#, fuzzy +msgid "Use these input device settings?" +msgstr "Želite li stvarno zatvoriti bez pohrane ?" + +# +#, fuzzy +msgid "Use these settings?" +msgstr "Da, vratite pohranjene postavke sada" + +# +msgid "Use this video enhancement settings?" +msgstr "" + +# +#, fuzzy +msgid "Use trash can in movielist" +msgstr "izađi iz izbornika filmova" + +# +msgid "Used service scan type" +msgstr "Vrste korištenih usluga za skeniranje" + +msgid "User - bouquets" +msgstr "" + +# +msgid "User defined" +msgstr "Korisnički def" + +msgid "User defined transponder" +msgstr "" + +# +#, fuzzy +msgid "User interface" +msgstr "Korisnički def" + +# +msgid "Username" +msgstr "" + +#, python-format +msgid "Using LNB %d" +msgstr "" + +msgid "Using fixed address" +msgstr "" + +#, python-format +msgid "Using tuner %s" +msgstr "" + +msgid "Usually when the subtitle language is the same as the audio language, the subtitles will not be used. Enable this option to allow these subtitles to be used." +msgstr "" + +# +msgid "VCR scart" +msgstr "VCR skart" + +# +msgid "VMGM (intro trailer)" +msgstr "" + +# +msgid "Vertical" +msgstr "" + +msgid "Vertical turning speed" +msgstr "" + +msgid "Video PID" +msgstr "" + +# +msgid "Video enhancement preview" +msgstr "" + +# +msgid "Video enhancement settings" +msgstr "" + +# +msgid "Video enhancement setup" +msgstr "" + +# +#, fuzzy +msgid "Video fine tuning" +msgstr "Video postavke" + +msgid "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." +msgstr "" + +# +msgid "Video mode selection." +msgstr "" + +# +#, fuzzy +msgid "Video output" +msgstr "Video izlaz" + +# +#, fuzzy +msgid "Video setup" +msgstr "Video postavke" + +# +#, fuzzy +msgid "Video wizard" +msgstr "Video čarobnjak" + +#, python-format +msgid "Video: %s fps" +msgstr "" + +msgid "VideoMode" +msgstr "" + +msgid "Videocodec" +msgstr "" + +msgid "Videoformat" +msgstr "" + +msgid "Videosize" +msgstr "" + +# +msgid "View Rass interactive..." +msgstr "Gledaj Rass interaktivno..." + +# +msgid "View details" +msgstr "" + +# +msgid "View list of available " +msgstr "" + +# +msgid "View list of available CommonInterface extensions" +msgstr "" + +# +msgid "View list of available EPG extensions." +msgstr "" + +# +msgid "View list of available Satellite equipment extensions." +msgstr "" + +# +msgid "View list of available communication extensions." +msgstr "" + +# +msgid "View list of available default settings" +msgstr "" + +msgid "View list of available display and userinterface extensions." +msgstr "" + +# +msgid "View list of available multimedia extensions." +msgstr "" + +# +msgid "View list of available networking extensions" +msgstr "" + +# +msgid "View list of available recording extensions" +msgstr "" + +# +msgid "View list of available skins" +msgstr "" + +# +msgid "View list of available software extensions" +msgstr "" + +# +msgid "View list of available system extensions" +msgstr "" + +# +#, fuzzy +msgid "View photos..." +msgstr "gledaj ekstenzije..." + +# +msgid "View teletext..." +msgstr "Pregled teleteksta..." + +msgid "View video CD..." +msgstr "" + +msgid "Virtual keyboard" +msgstr "" + +# +msgid "Voltage mode" +msgstr "Mod Napona" + +# +msgid "Volume" +msgstr "Volumen" + +# +msgid "W" +msgstr "W" + +# +msgid "WEP" +msgstr "" + +msgid "WLAN connection" +msgstr "" + +# +msgid "WPA" +msgstr "" + +# +msgid "WPA or WPA2" +msgstr "" + +# +msgid "WPA2" +msgstr "" + +# +msgid "WSS on 4:3" +msgstr "WSS na 4:3" + +# +msgid "Waiting" +msgstr "" + +msgid "Waiting for mount" +msgstr "" + +msgid "Waiting for partition" +msgstr "" + +msgid "Wakeup" +msgstr "" + +msgid "Wakeup TV from standby" +msgstr "" + +msgid "Wakeup receiver for start timer" +msgstr "" + +msgid "Wakeup receiver from standby" +msgstr "" + +msgid "Wakeup signal from TV" +msgstr "" + +msgid "Wakeup type" +msgstr "" + +msgid "Warning: no LNB; using factory defaults." +msgstr "" + +# +#, fuzzy +msgid "Watch movies..." +msgstr "Pokreni snimljene filmove..." + +# +#, fuzzy +msgid "Watch recordings..." +msgstr "snimanje..." + +# +msgid "Wed" +msgstr "Sri" + +# +msgid "Wednesday" +msgstr "Srijeda" + +# +msgid "Weekday" +msgstr "Tjedni dan" + +msgid "Weighted position" +msgstr "" + +msgid "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." +msgstr "" + +msgid "Welcome to the image upgrade wizard. The wizard will assist you in upgrading the firmware of your receiver by providing a backup facility for your current settings and a short explanation of how to upgrade your firmware." +msgstr "" + +msgid "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" +msgstr "" + +msgid "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." +msgstr "" + +# +msgid "Welcome..." +msgstr "" + +# +msgid "West" +msgstr "Zapad" + +msgid "West limit set" +msgstr "" + +# +msgid "What do you want to scan?" +msgstr "Što želite skenirati?" + +msgid "When enabled the PiP can be closed by the exit button." +msgstr "" + +msgid "When enabled the arrow buttons around the OK button will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled the left, right, CH+/-, B+/-, P+/- buttons will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled you can specify a timeframe to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "When enabled you can specify a timeframe were the inactivity sleeptimer is ignored. Not the detection is disabled during this timeframe but the inactivity timeout is disabled" +msgstr "" + +msgid "When enabled you can zap channels with the CH+/-, B+/-, P+/- buttons instead of opening the channel selection list." +msgstr "" + +msgid "When enabled you get the channel selection list via the OK button, the infobar toggle is then transfered to exit button" +msgstr "" + +msgid "When enabled, AIT data will be included in http streams. This allows a client receiver to use HbbTV." +msgstr "" + +msgid "When enabled, ECM data will be included in http streams. This allows a client receiver to do the descrambling." +msgstr "" + +msgid "When enabled, EIT data will be included in http streams. This allows a client receiver to show EPG." +msgstr "" + +msgid "When enabled, a popup message will be shown when a movie has finished and the next one will start." +msgstr "" + +msgid "When enabled, a popup message will be shown when a recording starts." +msgstr "" + +msgid "When enabled, a radio background image will be visible while listening to a radio channel." +msgstr "" + +msgid "When enabled, a recording is allowed to interrupt live tv, when there are no free tuners." +msgstr "" + +msgid "When enabled, a warning will be displayed and the user will get an option to stop or to continue the timeshift." +msgstr "" + +msgid "When enabled, authentication is required to watch http streams." +msgstr "" + +msgid "When enabled, channel numbering will start at '1' for each bouquet." +msgstr "" + +msgid "When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen." +msgstr "" + +msgid "When enabled, continue to the next bouquet when the last channel of the current bouquet is reached while changing channels." +msgstr "" + +msgid "When enabled, deleted recordings are moved to the trash can, instead of being deleted immediately." +msgstr "" + +msgid "When enabled, display the EIT now/next eventdata in infobar. When disabled, display now/next eventdata from the EPG cache instead." +msgstr "" + +msgid "When enabled, encryption info will be shown in the infobar (when supported by the skin)." +msgstr "" + +msgid "When enabled, error messages related to the Common Interface module will not be shown." +msgstr "" + +msgid "When enabled, error messages related to zapping will not be shown." +msgstr "" + +msgid "When enabled, external subtitles will be always turned on for playback movie." +msgstr "" + +msgid "When enabled, graphical DVB subtitles are preferred over teletext subtitles, when both types are available." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be centered horizontally." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be displayed at their original position." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be displayed in yellow, instead of the original color." +msgstr "" + +msgid "When enabled, http streams are descrambled on the server side. The (remote) client receiver does not have to do descrambling." +msgstr "" + +msgid "When enabled, it is possible to leave the movieplayer with exit." +msgstr "" + +msgid "When enabled, measure power consumption to detect when the rotor stops turning (when supported by the tuner)." +msgstr "" + +msgid "When enabled, number markers will be hiden." +msgstr "" + +msgid "When enabled, services may be grouped in multiple bouquets." +msgstr "" + +msgid "When enabled, show channel numbers in the channel selection screen." +msgstr "" + +msgid "When enabled, subtitles for the hearing impaired can be used." +msgstr "" + +msgid "When enabled, subtitles for the hearing impaired will be preferred over normal subtitles, when both types are available." +msgstr "" + +msgid "When enabled, teletext pages will be cached, allowing faster access." +msgstr "" + +msgid "When enabled, teletext subtitles will be displayed at their original position." +msgstr "" + +msgid "When enabled, the VCR scart option will be shown on the main menu" +msgstr "" + +msgid "When enabled, the channel selection list will be hidden while listening to a radio channel" +msgstr "" + +msgid "When enabled, the infobar will be displayed when a new event starts." +msgstr "" + +msgid "When enabled, the infobar will be displayed when changing channels." +msgstr "" + +msgid "When enabled, the infobar will be displayed when skipping forwards/backwards during media playback." +msgstr "" + +msgid "When enabled, the lenght of each recording will be shown in the movielist (this might cause some additional loading time)." +msgstr "" + +msgid "When enabled, the original line breaks will be removed from the teletext subtitles." +msgstr "" + +msgid "When enabled, the receiver will automatically use the audio track which you selected before." +msgstr "" + +msgid "When enabled, the receiver will automatically use the subtitles which you selected before." +msgstr "" + +msgid "When enabled, the receiver will no longer monitor the tuned transponder for possible changes. Do not use this option unless you know what you are doing." +msgstr "" + +msgid "When enabled, the receiver will select an AC3 track (when available)." +msgstr "" + +msgid "When enabled, the receiver will select an AC3+ track (when available)." +msgstr "" + +msgid "When enabled, timeshift starts automatically in background after specified time." +msgstr "" + +msgid "When enabled, use DHCP for the IP configuration." +msgstr "" + +msgid "When enabled, your receiver will detect activity on the VCR SCART input." +msgstr "" + +msgid "When nonzero, a recording will start earlier than the starting time indicated by the EPG." +msgstr "" + +msgid "When nonzero, a recording will stop later than the ending time indicated by the EPG." +msgstr "" + +msgid "When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture." +msgstr "" + +msgid "When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture." +msgstr "" + +# +msgid "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" +msgstr "" + +# +msgid "Where do you want to backup your settings?" +msgstr "Gdje želite pohraniti ovu sigurnosnu kopiju liste kanala?" + +# +msgid "Where to save temporary timeshift recordings?" +msgstr "" + +# +msgid "Wireless LAN" +msgstr "" + +msgid "Wireless network" +msgstr "" + +# +#, fuzzy +msgid "Wireless network configuration..." +msgstr "Konfiguracija Tunera" + +msgid "Wireless network connection setup" +msgstr "" + +msgid "Wireless network connection setup." +msgstr "" + +msgid "Wireless network state" +msgstr "" + +msgid "With popup" +msgstr "" + +msgid "Without popup" +msgstr "" + +msgid "Would you like to install a softcam?" +msgstr "" + +# +msgid "Write error while recording. Disk full?\n" +msgstr "Greška tijekom snimanja. Disk Pun?\n" + +# +msgid "Write failed!" +msgstr "" + +# +msgid "YPbPr" +msgstr "YPbPr" + +# +msgid "Year" +msgstr "Godina" + +msgid "Yellow DVB subtitles" +msgstr "" + +# +msgid "Yes" +msgstr "Da" + +msgid "Yes and save" +msgstr "" + +msgid "Yes and save in movie dir" +msgstr "" + +# +msgid "Yes to all" +msgstr "" + +msgid "Yes, always" +msgstr "" + +# +msgid "Yes, and delete this movie" +msgstr "" + +# +msgid "Yes, backup my settings!" +msgstr "Da, napravi sigurnosnu kopiju mojih postavki." + +msgid "Yes, delete this movie and return to movie list" +msgstr "" + +# +msgid "Yes, do a manual scan now" +msgstr "Da, započeti ručnu pretragu sada" + +# +msgid "Yes, do an automatic scan now" +msgstr "Da, započni automatsko pretraživanje sada" + +# +msgid "Yes, do another manual scan now" +msgstr "Da, započni drugu ručnu pretragu sada" + +# +msgid "Yes, perform a shutdown now." +msgstr "Da, započni isključivanje sada" + +# +msgid "Yes, restore the settings now" +msgstr "Da, vratite pohranjene postavke sada" + +# +msgid "Yes, returning to movie list" +msgstr "" + +msgid "Yesterday" +msgstr "" + +#, python-format +msgid "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" +msgstr "" + +# +msgid "You can cancel the installation." +msgstr "" + +# +msgid "You can cancel the removal." +msgstr "" + +msgid "You can continue watching TV etc. while this is running." +msgstr "" + +# +msgid "You can install this plugin." +msgstr "" + +msgid "You can only burn receiver recordings!" +msgstr "" + +# +msgid "You can remove this plugin." +msgstr "" + +# +msgid "You cannot delete this!" +msgstr "Ne možete obrisati ovo!" + +msgid "You didn't select a channel to record from." +msgstr "" + +# +msgid "You have chosen to backup your settings. Please press OK to start the backup now." +msgstr "" + +# +msgid "You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased." +msgstr "" + +# +msgid "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." +msgstr "" + +# +#, python-format +msgid "You have to wait %s!" +msgstr "Morate pričekati %s!" + +msgid "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." +msgstr "" + +msgid "You system does not support ext4" +msgstr "" + +# +msgid "Your backup succeeded. We will now continue to explain the further upgrade process." +msgstr "Sigurnosna kopija je uspješno napravljena. Sada ćemo dalje objasniti za sljedeći proces nadogradnje." + +# +msgid "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" +msgstr "" + +# +msgid "Your current collection will get lost!" +msgstr "" + +# +msgid "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." +msgstr "" +"Vaš softver frontprocesora mora biti nadograđen.\n" +"Pritisnite OK za početak nadogradnje." + +msgid "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" + +# +msgid "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." +msgstr "" + +#, python-format +msgid "Your internet connection is working (ip: %s)" +msgstr "" + +# +msgid "Your network configuration has been activated." +msgstr "" + +msgid "Your receiver does not have an internet connection" +msgstr "" + +msgid "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" +msgstr "" + +msgid "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." +msgstr "" + +msgid "Your receiver is rebooting" +msgstr "" + +msgid "Your receiver is shutting down" +msgstr "" + +msgid "Your receiver is shutting down. Please stand by..." +msgstr "" + +msgid "Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver." +msgstr "" + +msgid "Your receiver will got to stand by due to the sleeptimer." +msgstr "" + +msgid "Your receiver will got to standby due to inactivity." +msgstr "" + +msgid "Your receiver will restart after pressing OK on your remote control." +msgstr "" + +# +msgid "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." +msgstr "" + +msgid "Zap" +msgstr "" + +# +msgid "Zap back to previously tuned service?" +msgstr "" + +# +msgid "Zap back to service before positioner setup?" +msgstr "Prebaciti natrag na zadnju uslugu prije postavki motora?" + +# +msgid "Zap back to service before tuner setup?" +msgstr "" + +msgid "Zap focus to Picture in Picture" +msgstr "" + +msgid "Zap focus to main screen" +msgstr "" + +msgid "Zap mode" +msgstr "" + +msgid "Zap to selected channel" +msgstr "" + +msgid "Zap to selected channel, or show detailed event info (depends on configuration)" +msgstr "" + +# +msgid "[alternative edit]" +msgstr "[editiranje alternative]" + +# +msgid "[bouquet edit]" +msgstr "[editiranje paketa]" + +# +msgid "[favourite edit]" +msgstr "[editiranje favorita]" + +# +msgid "[move mode]" +msgstr "[mod premjestanja]" + +# +msgid "a gui to assign services/providers to common interface modules" +msgstr "" + +# +msgid "a gui to assign services/providers/caids to common interface modules" +msgstr "" + +# +msgid "abort alternatives edit" +msgstr "odustani od editiranja alternative" + +# +msgid "abort bouquet edit" +msgstr "prekini editiranje paketa" + +# +msgid "abort favourites edit" +msgstr "odustani od editiranja favorita" + +# +msgid "about to start" +msgstr "spremni za početak" + +# +msgid "activate network adapter configuration" +msgstr "" + +# +msgid "add alternatives" +msgstr "dodaj alternative" + +# +msgid "add bookmark" +msgstr "" + +# +msgid "add bouquet" +msgstr "dodaj paket" + +# +msgid "add marker" +msgstr "dodaj oznaku" + +# +msgid "add service to bouquet" +msgstr "dodaj uslugu u paket " + +# +msgid "add service to favourites" +msgstr "dodaj uslugu u favorite" + +# +msgid "add to parental protection" +msgstr "dodaj u roditeljsku zaštitu" + +msgid "adult movie/drama" +msgstr "" + +# +msgid "advanced" +msgstr "napredno" + +msgid "adventure/western/war" +msgstr "" + +msgid "advertisement/shopping" +msgstr "" + +msgid "after " +msgstr "" + +# +#, fuzzy +msgid "alphabetic" +msgstr "sortiraj abecedno" + +msgid "alphabetic reverse" +msgstr "" + +msgid "alternative" +msgstr "" + +msgid "always" +msgstr "" + +msgid "and select next channel" +msgstr "" + +msgid "and select previous channel" +msgstr "" + +msgid "arts/culture (without music, general)" +msgstr "" + +msgid "arts/culture magazine" +msgstr "" + +msgid "athletics" +msgstr "" + +# +msgid "audio tracks" +msgstr "" + +# +msgid "auto" +msgstr "" + +# +#, fuzzy +msgid "automatic" +msgstr "Automatsko skeniranje " + +# +msgid "back" +msgstr "natrag" + +# +msgid "background image" +msgstr "" + +msgid "ballet" +msgstr "" + +#, python-format +msgid "bc%s" +msgstr "" + +# +msgid "better" +msgstr "bolje" + +# +msgid "black" +msgstr "" + +msgid "black & white" +msgstr "" + +# +msgid "blacklist" +msgstr "crnalista" + +# +msgid "blue" +msgstr "" + +msgid "broadcasting/press" +msgstr "" + +# +#, fuzzy +msgid "by date" +msgstr "sortiraj po datumu" + +msgid "cartoon/puppets" +msgstr "" + +msgid "center" +msgstr "" + +msgid "centered" +msgstr "" + +msgid "centered, wrapped" +msgstr "" + +# +msgid "chapters" +msgstr "" + +msgid "childrens's/youth program (general)" +msgstr "" + +# +msgid "circular left" +msgstr "lijevi cirkularni" + +# +msgid "circular right" +msgstr "desni cirkularni" + +msgid "comedy" +msgstr "" + +# +msgid "complex" +msgstr "kompleksno" + +# +msgid "config menu" +msgstr "konfiguracijski izbornik" + +# +msgid "confirmed" +msgstr "" + +# +msgid "connected" +msgstr "" + +# +msgid "continue" +msgstr "nastavi" + +msgid "cooking" +msgstr "" + +# +msgid "copy to bouquets" +msgstr "kopiraj u pakete" + +# +msgid "create directory" +msgstr "" + +#, python-format +msgid "currently installed image: %s" +msgstr "" + +# +msgid "daily" +msgstr "dnevno" + +# +msgid "day" +msgstr "" + +# +#, fuzzy +msgid "default" +msgstr "Tvorni?ko" + +# +msgid "delete cut" +msgstr "obriši rez" + +msgid "delete..." +msgstr "" + +msgid "descramble and record ecm" +msgstr "" + +msgid "detective/thriller" +msgstr "" + +# +msgid "disable" +msgstr "onemogući" + +# +msgid "disable move mode" +msgstr "onemoguće mod premještanja" + +# +msgid "disabled" +msgstr "onemogućeno" + +# +msgid "disconnected" +msgstr "" + +msgid "discussion/interview/debate" +msgstr "" + +# +msgid "do nothing" +msgstr "ništa ne čini" + +msgid "documentary" +msgstr "" + +msgid "don't descramble, record ecm" +msgstr "" + +# +msgid "done!" +msgstr "Učinjeno!" + +msgid "east" +msgstr "" + +msgid "economics/social advisory" +msgstr "" + +# +msgid "edit alternatives" +msgstr "editiraj alternative" + +msgid "education/science/factual topics (general)" +msgstr "" + +# +msgid "empty" +msgstr "prazno" + +# +msgid "enable" +msgstr "omogući" + +# +msgid "enable bouquet edit" +msgstr "omogući editanje paketa" + +# +msgid "enable favourite edit" +msgstr "omogući editiranje favorita" + +# +msgid "enable move mode" +msgstr "uključi mod za premještanje" + +# +msgid "enabled" +msgstr "omogućeno" + +# +msgid "end alternatives edit" +msgstr "kraj editiranja alternativa" + +# +msgid "end bouquet edit" +msgstr "završi editiranje paketa" + +# +msgid "end cut here" +msgstr "završi rez ovdje" + +# +msgid "end favourites edit" +msgstr "završi editiranje favorita" + +msgid "entertainment (10-16 year old)" +msgstr "" + +msgid "entertainment (6-14 year old)" +msgstr "" + +# +msgid "equal to" +msgstr "" + +msgid "equestrian" +msgstr "" + +# +msgid "exit DVD player or return to file browser" +msgstr "" + +msgid "exit movielist" +msgstr "" + +# +msgid "exit network adapter configuration" +msgstr "" + +# +msgid "exit networkadapter setup menu" +msgstr "" + +msgid "experimental film/video" +msgstr "" + +msgid "false" +msgstr "" + +msgid "fashion" +msgstr "" + +# +msgid "fileformats (BMP, PNG, JPG, GIF)" +msgstr "" + +# +msgid "filename" +msgstr "" + +msgid "film/cinema" +msgstr "" + +msgid "fine arts" +msgstr "" + +# +msgid "fine-tune your display" +msgstr "" + +msgid "fitness & health" +msgstr "" + +# +#, fuzzy +msgid "flat alphabetic" +msgstr "sortiraj abecedno" + +# +#, fuzzy +msgid "flat alphabetic reverse" +msgstr "sortiraj abecedno" + +msgid "folk/traditional music" +msgstr "" + +msgid "football/soccer" +msgstr "" + +msgid "foreign countries/expeditions" +msgstr "" + +# +msgid "forward to the next chapter" +msgstr "" + +# +msgid "free" +msgstr "" + +msgid "from" +msgstr "" + +msgid "further education" +msgstr "" + +msgid "game show/quiz/contest" +msgstr "" + +msgid "gardening" +msgstr "" + +# +msgid "go to deep standby" +msgstr "pokreni Isključivanje Dreamboxa" + +# +msgid "go to standby" +msgstr "pođi u pripravnost" + +# +msgid "grab this frame as bitmap" +msgstr "" + +# +msgid "green" +msgstr "" + +msgid "handicraft" +msgstr "" + +msgid "height" +msgstr "" + +# +msgid "help..." +msgstr "pomoć..." + +# +msgid "horizontal" +msgstr "horizontala" + +msgid "information/education/school program" +msgstr "" + +# +msgid "init module" +msgstr "init modula" + +# +msgid "init modules" +msgstr "" + +# +msgid "insert mark here" +msgstr "unesi oznaku ovdje" + +msgid "invalid type" +msgstr "" + +msgid "jazz" +msgstr "" + +# +msgid "jump back to the previous title" +msgstr "" + +# +msgid "jump forward to the next title" +msgstr "" + +msgid "languages" +msgstr "" + +# +msgid "leave movie player..." +msgstr "napusti video ..." + +# +msgid "left" +msgstr "lijevi" + +msgid "left, wrapped" +msgstr "" + +msgid "leisure hobbies (general)" +msgstr "" + +# +msgid "length" +msgstr "" + +msgid "limit ..., aborting !" +msgstr "" + +# +msgid "list style compact" +msgstr "kompaktni stil liste" + +# +msgid "list style compact with description" +msgstr "kompaktni stil liste sa opisom" + +# +msgid "list style default" +msgstr "standardne postavke stila liste" + +# +msgid "list style single line" +msgstr "Kompaktni jednostruki stil liste" + +msgid "literature" +msgstr "" + +msgid "live broadcast" +msgstr "" + +# +msgid "locked" +msgstr "prihvaćen" + +# +msgid "loopthrough to" +msgstr "" + +msgid "magazines/reports/documentary" +msgstr "" + +# +msgid "manual" +msgstr "Ručno" + +msgid "martial sports" +msgstr "" + +msgid "medicine/physiology/psychology" +msgstr "" + +# +msgid "menu" +msgstr "meni" + +# +msgid "mins" +msgstr "mins" + +# +msgid "minutes" +msgstr "minute" + +# +msgid "month" +msgstr "" + +msgid "motor sport" +msgstr "" + +msgid "motoring" +msgstr "" + +# +msgid "move down to last entry" +msgstr "" + +# +msgid "move down to next entry" +msgstr "" + +# +msgid "move up to first entry" +msgstr "" + +# +msgid "move up to previous entry" +msgstr "" + +msgid "movie/drama (general)" +msgstr "" + +# +msgid "multinorm" +msgstr "multinorm" + +msgid "music/ballet/dance (general)" +msgstr "" + +msgid "musical/opera" +msgstr "" + +msgid "nature/animals/environment" +msgstr "" + +# +msgid "never" +msgstr "nikad" + +msgid "new media" +msgstr "" + +msgid "news magazine" +msgstr "" + +msgid "news/current affairs (general)" +msgstr "" + +msgid "news/weather report" +msgstr "" + +# +msgid "no" +msgstr "Ne" + +# +msgid "no CAId selected" +msgstr "" + +# +msgid "no CI slots found" +msgstr "" + +# +msgid "no module found" +msgstr "nema modula " + +msgid "no storage devices found" +msgstr "" + +# +msgid "none" +msgstr "prazno" + +msgid "normal" +msgstr "" + +# +msgid "not configured" +msgstr "" + +# +msgid "not locked" +msgstr "nije prihvaćen" + +msgid "not supported" +msgstr "" + +# +msgid "not used" +msgstr "" + +# +msgid "nothing connected" +msgstr "ništa nije spojeno" + +# +msgid "of a DUAL layer medium used." +msgstr "" + +# +msgid "of a SINGLE layer medium used." +msgstr "" + +# +msgid "off" +msgstr "isključi" + +msgid "offset is" +msgstr "" + +# +msgid "on" +msgstr "uključi" + +# +msgid "on READ ONLY medium." +msgstr "" + +msgid "on end of movie" +msgstr "" + +# +msgid "once" +msgstr "jednom" + +msgid "only from deep standby" +msgstr "" + +msgid "only from standby" +msgstr "" + +msgid "open EPG..." +msgstr "" + +msgid "open Info..." +msgstr "" + +# +msgid "open nameserver configuration" +msgstr "" + +msgid "original" +msgstr "" + +msgid "original language" +msgstr "" + +# +msgid "pass" +msgstr "lozinka" + +msgid "performing arts" +msgstr "" + +msgid "play as picture in picture" +msgstr "" + +msgid "play in mainwindow" +msgstr "" + +# +msgid "please press OK when ready" +msgstr "pritisni OK kada si spreman" + +# +msgid "please wait, loading picture..." +msgstr "molim pričekajte, učitavam sliku..." + +msgid "popular culture/traditional arts" +msgstr "" + +msgid "pre-school children's program" +msgstr "" + +msgid "receiver software because updates are available." +msgstr "" + +# +msgid "record" +msgstr "Snimi" + +# +msgid "recording..." +msgstr "snimanje..." + +# +msgid "red" +msgstr "" + +msgid "religion" +msgstr "" + +msgid "remarkable people" +msgstr "" + +# +msgid "remove after this position" +msgstr "obriši nakon ove pozicije" + +# +msgid "remove all alternatives" +msgstr "obriši sve alternative" + +# +msgid "remove all new found flags" +msgstr "obriši sve novo nađene zastave" + +# +msgid "remove before this position" +msgstr "obriši prije ove pozicije" + +# +msgid "remove bookmark" +msgstr "" + +# +msgid "remove directory" +msgstr "" + +# +msgid "remove entry" +msgstr "obriši unos" + +# +msgid "remove from parental protection" +msgstr "obriši iz roditeljske zaštite" + +# +msgid "remove new found flag" +msgstr "obriši novo nađenu zastavu" + +# +msgid "remove selected satellite" +msgstr "" + +# +msgid "remove this mark" +msgstr "obriši ovu oznaku" + +msgid "rename entry" +msgstr "" + +# +msgid "repeat playlist" +msgstr "" + +# +msgid "repeated" +msgstr "ponavljam" + +msgid "reverse by date" +msgstr "" + +# +msgid "rewind to the previous chapter" +msgstr "" + +# +msgid "right" +msgstr "desni" + +msgid "right, wrapped" +msgstr "" + +msgid "rock/pop" +msgstr "" + +msgid "romance" +msgstr "" + +# +msgid "save last directory on exit" +msgstr "" + +# +msgid "save playlist on exit" +msgstr "" + +# +msgid "scan state" +msgstr "status skeniranja" + +msgid "science fiction/fantasy/horror" +msgstr "" + +# +msgid "second cable of motorized LNB" +msgstr "drugi kabel od motoriziranog LNB-a" + +# +msgid "seconds" +msgstr "sekundi" + +# +msgid "select" +msgstr "" + +# +msgid "select CAId's" +msgstr "" + +msgid "select EPG..." +msgstr "" + +msgid "select Info..." +msgstr "" + +# +msgid "select menu entry" +msgstr "" + +# +msgid "select movie" +msgstr "odaberi film" + +msgid "select the movie path" +msgstr "" + +msgid "serious music/classic music" +msgstr "" + +msgid "serious/classical/religious/historical movie/drama" +msgstr "" + +msgid "service PIN" +msgstr "" + +msgid "set as startup service" +msgstr "" + +msgid "setup PIN" +msgstr "" + +# +msgid "show DVD main menu" +msgstr "" + +msgid "show all tags" +msgstr "" + +# +msgid "show alternatives" +msgstr "prikaži alternative" + +# +msgid "show event details" +msgstr "prikaži proširene infor. " + +msgid "show extended description" +msgstr "" + +msgid "show mediaplayer on mainmenu" +msgstr "" + +msgid "show softwaremanager in setup menu" +msgstr "" + +msgid "show softwaremanager on blue button" +msgstr "" + +msgid "show tag menu" +msgstr "" + +# +msgid "show transponder info" +msgstr "prikaži info transpondera" + +msgid "show/game show (general)" +msgstr "" + +msgid "shuffle" +msgstr "" + +# +msgid "shut down" +msgstr "" + +# +msgid "simple" +msgstr "jednostavno" + +# +msgid "skip backward" +msgstr "preskoči unazad" + +# +msgid "skip forward" +msgstr "preskoči unaprijed" + +msgid "soap/melodram/folkloric" +msgstr "" + +msgid "social/political issues/economics (general)" +msgstr "" + +msgid "social/spiritual science" +msgstr "" + +msgid "sorting of playlists" +msgstr "" + +# +msgid "special characters" +msgstr "" + +msgid "special events" +msgstr "" + +msgid "special format data DVD (HDTV compatible)" +msgstr "" + +msgid "sports (general)" +msgstr "" + +msgid "sports magazine" +msgstr "" + +# +msgid "standard" +msgstr "standardno" + +# +msgid "start cut here" +msgstr "počni rez ovdje" + +# +msgid "start directory" +msgstr "" + +msgid "stepsize" +msgstr "" + +# +msgid "stereo" +msgstr "stereo" + +msgid "stop using as startup service" +msgstr "" + +# +msgid "switch to bookmarks" +msgstr "" + +# +msgid "switch to filelist" +msgstr "prebaci u datoteknu listu" + +# +msgid "switch to the next angle" +msgstr "" + +# +msgid "switch to the next audio track" +msgstr "" + +# +msgid "switch to the next subtitle language" +msgstr "" + +msgid "talk show" +msgstr "" + +msgid "team sports" +msgstr "" + +msgid "technology/natural science" +msgstr "" + +# +msgid "template file" +msgstr "" + +msgid "tennis/squash" +msgstr "" + +# +msgid "this recording" +msgstr "ovo snimanje" + +# +msgid "this service is protected by a parental control pin" +msgstr "usluga je zaštićena s pin kodom roditeljske kontrole" + +# +msgid "toggle time, chapter, audio, subtitle info" +msgstr "" + +msgid "top" +msgstr "" + +msgid "tourism/travel" +msgstr "" + +msgid "true" +msgstr "" + +msgid "unavailable" +msgstr "" + +# +msgid "unconfirmed" +msgstr "" + +msgid "undefined" +msgstr "" + +# +msgid "unknown" +msgstr "" + +# +msgid "unknown service" +msgstr "Nepoznata usluga" + +msgid "unpublished" +msgstr "" + +# +msgid "until standby/restart" +msgstr "" + +# +msgid "user defined" +msgstr "korisnički definirano" + +msgid "variety show" +msgstr "" + +# +msgid "vertical" +msgstr "vertikala" + +# +msgid "wait for ci..." +msgstr "čekaj ci..." + +# +msgid "wait for mmi..." +msgstr "čekam mmi..." + +# +msgid "waiting" +msgstr "čekam" + +msgid "water sport" +msgstr "" + +# +msgid "weekly" +msgstr "tjedno" + +msgid "west" +msgstr "" + +msgid "when PiPzap enabled zap channel down..." +msgstr "" + +msgid "when PiPzap enabled zap channel up..." +msgstr "" + +msgid "white" +msgstr "" + +# +msgid "whitelist" +msgstr "bijelalista" + +msgid "width" +msgstr "" + +msgid "winter sport" +msgstr "" + +msgid "wireless network interface" +msgstr "" + +#, python-format +msgid "with %d error" +msgid_plural "with %d errors" +msgstr[0] "" +msgstr[1] "" + +# +msgid "working" +msgstr "" + +# +msgid "yellow" +msgstr "" + +# +msgid "yes" +msgstr "Da " + +# +msgid "yes (keep feeds)" +msgstr "Da ( zadrži feedove)" + +# +msgid "zap" +msgstr "zap" + +msgid "zap and record" +msgstr "" + +# +msgid "zapped" +msgstr "prebačen" + +# +#~ msgid "AA" +#~ msgstr "AA" + +# +#~ msgid "AB" +#~ msgstr "AB" + +# +#, fuzzy +#~ msgid "Activate PiP" +#~ msgstr "Aktiviraj Sliku u Slici" + +# +#, fuzzy +#~ msgid "Add/remove timer for current event" +#~ msgstr "dodaj snimanje (zaustavi nakon trenutnog događaja)" + +# +#, fuzzy +#~ msgid "All satellites" +#~ msgstr "Sateliti" + +# +#~ msgid "BA" +#~ msgstr "BA" + +# +#~ msgid "BB" +#~ msgstr "BB" + +# +#~ msgid "Committed DiSEqC command" +#~ msgstr "Committed DiSEqC cmd" + +# +#~ msgid "DiSEqC repeats" +#~ msgstr "DiSEqC ponavljanja" + +# +#~ msgid "No satellite frontend found!!" +#~ msgstr "Nije pronađen Satelitski tuner!!" + +# +#, fuzzy +#~ msgid "Switch next channel" +#~ msgstr "sljedeći kanal" + +# +#~ msgid "Uncommitted DiSEqC command" +#~ msgstr "Uncommitted DiSEqC command" + +# +#~ msgid "Zap back to service before satfinder?" +#~ msgstr "Prebaciti natrag na uslugu prije sat. tražitelja?" diff --git a/po/hu.po b/po/hu.po new file mode 100644 index 0000000..7abc3df --- /dev/null +++ b/po/hu.po @@ -0,0 +1,8098 @@ +# English translations for tuxbox-enigma package. +# Copyright (C) 2005 THE tuxbox-enigma'S COPYRIGHT HOLDER +# This file is distributed under the same license as the tuxbox-enigma package. +# Automatically generated, 2005. +msgid "" +msgstr "" +"Project-Id-Version: tuxbox-enigma 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-07-21 19:08+0200\n" +"PO-Revision-Date: 2014-02-11 21:04+0100\n" +"Last-Translator: robertut <robertut@yahoo.com>\n" +"Language-Team: Mediavox, robertut <info@mediavox.hu, robertut@yahoo.com>\n" +"Language: hu_HU\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Poedit 1.6.4\n" + +msgid "" +"\n" +"Advanced options and settings." +msgstr "" +"\n" +"Haladó beállítási lehetőségek." + +msgid "" +"\n" +"After pressing OK, please wait!" +msgstr "" +"\n" +"Az OK gomb lenyomása után, kérem, várjon!" + +msgid "" +"\n" +"Backup your receiver settings." +msgstr "" +"\n" +"A készülék beállításainak mentése." + +msgid "" +"\n" +"Edit the upgrade source address." +msgstr "" +"\n" +"A szoftver-frissítési forrás címének módosítása." + +msgid "" +"\n" +"Manage extensions or plugins for your receiver" +msgstr "" +"\n" +"Pluginek és bővítmények kezelése" + +msgid "" +"\n" +"Online update of your receiver software." +msgstr "" +"\n" +"A készülék szoftverének frissítése online." + +msgid "" +"\n" +"Press OK on your remote control to continue." +msgstr "" +"\n" +"Nyomja le az OK gombot a távírányítón a folytatáshoz." + +msgid "" +"\n" +"Restore your backups by date." +msgstr "" +"\n" +"Visszaállítás dátum szerint." + +msgid "" +"\n" +"Restore your receiver settings." +msgstr "" +"\n" +"A készülék beállításainak visszaállítása." + +msgid "" +"\n" +"Restore your receiver with a new firmware." +msgstr "" +"\n" +"A készülék visszaállítása egy új firmware-el." + +msgid "" +"\n" +"Scan for local extensions and install them." +msgstr "" +"\n" +"Helyileg bemásolt bővítmények keresése, telepítése." + +msgid "" +"\n" +"Select your backup device.\n" +"Current device: " +msgstr "" +"\n" +"Válasszon célt, a mentéshez.\n" +"Aktuális eszköz: " + +msgid "" +"\n" +"View, install and remove available or installed packages." +msgstr "" +"\n" +"Szoftvercsomagok megtekintése, telepítése vagy eltávolítása." + +msgid " (PiP)" +msgstr " (Kép-a-Képben)" + +msgid " (Radio)" +msgstr " (Rádió)" + +msgid " (TV)" +msgstr " (TV)" + +msgid " (disabled)" +msgstr "" + +msgid " (higher than any auto)" +msgstr "" + +msgid " (higher than rotor any auto)" +msgstr "" + +msgid " (lower than any auto)" +msgstr "" + +msgid " extensions." +msgstr " bővítmény." + +msgid " ms" +msgstr " ms" + +msgid " packages selected." +msgstr " szoftvercsomag kiválasztva." + +msgid " updates available." +msgstr " frissítés elérhető." + +#. TRANSLATORS: short time representation hour:minute +#, python-format +msgid "%2d:%02d" +msgstr "%2d:%02d" + +#. TRANSLATORS: full time representation hour:minute:seconds +#, python-format +msgid "%2d:%02d:%02d" +msgstr "%2d:%02d:%02d" + +msgid "%A %d %B" +msgstr "%B %d. %A" + +#. TRANSLATORS: long date representations dayname daynum monthname in strftime() format! See 'man strftime' +msgid "%A %e %B" +msgstr "%B %e. %A" + +#. TRANSLATORS: full date representation dayname daynum monthname year in strftime() format! See 'man strftime' +msgid "%A %e %B %Y" +msgstr "%Y. %B %e. %A" + +msgid "%H:%M" +msgstr "%H:%M" + +#. TRANSLATORS: short date representation short dayname daynum short monthname in strftime() format! See 'man strftime' +msgid "%a %e/%m" +msgstr "%m. %e %a" + +#. TRANSLATORS: long date representation short dayname daynum short monthname hour:minute in strftime() format! See 'man strftime' +msgid "%a %e/%m %-H:%M" +msgstr "%m. %e %a %-H:%M" + +#. TRANSLATORS: Intermediate scanning result, '%d' channel(s) have been found so far +#, python-format +msgid "%d channel found" +msgid_plural "%d channels found" +msgstr[0] "%d talált csatorna" +msgstr[1] "%d talált csatorna" + +#, python-format +msgid "%d file" +msgid_plural "%d files" +msgstr[0] "%d fájl" +msgstr[1] "%d fájl" + +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d óra" +msgstr[1] "%d óra" + +#, python-format +msgid "%d job is running in the background!" +msgid_plural "%d jobs are running in the background!" +msgstr[0] "%d feladat fut a háttérben!" +msgstr[1] "%d feladat fut a háttérben!" + +#, python-format +msgid "%d min" +msgstr "%d perc" + +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d perc" +msgstr[1] "%d perc" + +#, python-format +msgid "%d minutes" +msgstr "%d perc" + +#, python-format +msgid "%d pixel wide" +msgid_plural "%d pixels wide" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "%d másodperc" +msgstr[1] "%d másodperc" + +#, python-format +msgid "%d subdirectory" +msgid_plural "%d subdirectories" +msgstr[0] "%d al-mappa" +msgstr[1] "%d al-mappa" + +#, python-format +msgid "%d wireless network found!" +msgid_plural "%d wireless networks found!" +msgstr[0] "%d elérhető vezeték nélküli hálózat!" +msgstr[1] "%d elérhető vezeték nélküli hálózat!" + +msgid "%d-%b-%Y %-H:%M" +msgstr "%m. %e %a %-H:%M" + +msgid "%d-%m" +msgstr "%d-%m" + +msgid "%d.%B %Y" +msgstr "%Y. %B %d." + +#. TRANSLATORS: VFD hour:minute daynum short monthname in strftime() format! See 'man strftime' +msgid "%k:%M %e/%m" +msgstr "%k:%M %m.%e" + +#, python-format +msgid "%s %s free disk space" +msgstr "%s %s szabad tárterület a háttértáron." + +#, python-format +msgid "%s (%s)\n" +msgstr "%s (%s)\n" + +#. TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. +#, python-format +msgid "%s is no longer used. Should it be deleted?" +msgstr "%s nincs többé használatban. Töröhető?" + +#, python-format +msgid "%s updated package available" +msgid_plural "%s updated packages available" +msgstr[0] "%s frissítés elérhető." +msgstr[1] "%s frissítés elérhető." + +#, python-format +msgid "%s%d min" +msgstr "%s%d perc" + +#, python-format +msgid "%s/%s: %s" +msgstr "%s/%s: %s" + +msgid "(ZAP)" +msgstr "(UGRÁS)" + +msgid "(empty)" +msgstr "(üres)" + +msgid "(show optional DVD audio menu)" +msgstr "(DVD audió menü megjelenítése, ha van)" + +msgid "* Only available if more than one interface is active." +msgstr "* Csak akkor érvényes, ha egynél több interfész aktív." + +msgid "/s" +msgstr "/s" + +msgid "0" +msgstr "0" + +msgid "1" +msgstr "1" + +msgid "1.0" +msgstr "1.0" + +msgid "1.1" +msgstr "1.1" + +msgid "1.2" +msgstr "1.2" + +msgid "12V output" +msgstr "12V kimenet" + +msgid "13 V" +msgstr "13 V" + +msgid "16:10" +msgstr "16:10" + +msgid "16:10 Letterbox" +msgstr "16:10 Letterbox" + +msgid "16:10 PanScan" +msgstr "16:10 PanScan" + +msgid "16:9" +msgstr "16:9" + +msgid "16:9 Letterbox" +msgstr "16:9 Letterbox" + +msgid "16:9 always" +msgstr "mindig 16:9" + +msgid "18 V" +msgstr "18 V" + +msgid "2" +msgstr "2" + +msgid "23.976" +msgstr "23.976" + +msgid "24" +msgstr "24" + +msgid "25" +msgstr "25" + +msgid "29.97" +msgstr "29.97" + +msgid "3" +msgstr "3" + +msgid "30" +msgstr "30" + +msgid "3d mode" +msgstr "3D mód" + +msgid "4" +msgstr "4" + +msgid "4:3" +msgstr "4:3" + +msgid "4:3 Letterbox" +msgstr "4:3 Letterbox" + +msgid "4:3 PanScan" +msgstr "4:3 PanScan" + +msgid "5" +msgstr "5" + +msgid "6" +msgstr "6" + +msgid "7" +msgstr "7" + +msgid "8" +msgstr "8" + +msgid "9" +msgstr "9" + +#, python-format +msgid ": %s" +msgstr "" + +msgid "<Current movielist location>" +msgstr "<Fájllista aktuális tárhelye>" + +msgid "<Default movie location>" +msgstr "<Felvételek tárhelye>" + +msgid "<Last timer location>" +msgstr "<Időzítés utolsó pozíciója>" + +msgid "<unknown>" +msgstr "<ismeretlen>" + +msgid "??" +msgstr "??" + +msgid "A" +msgstr "A" + +#, python-format +msgid "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" +msgstr "" +"A telepítés óta a (%s) konfigurációs fájl módosítva lett.\n" +"Meg akarja tartani az Ön verzióját?" + +#, python-format +msgid "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" +msgstr "" +"A telepítés óta a (%s) konfigurációs fájl módosítva lett.\n" +"Meg akarja tartani az Ön verzióját?" + +msgid "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"Egy befejezett időzítés le akarja kapcsolni\n" +"a készüléket készenléti módba. Engedélyezi?" + +msgid "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"Egy befejezett időzítés ki akarja kapcsolni\n" +"a készüléket. Engedélyezi?" + +msgid "A graphical EPG for all services of an specific bouquet" +msgstr "Grafikus EPG egy adott bouquet összes csatornájához" + +#, python-format +msgid "" +"A record has been started:\n" +"%s" +msgstr "" +"A következő műsor felvétele elindult:\n" +"%s" + +msgid "" +"A recording is currently running.\n" +"What do you want to do?" +msgstr "" +"Egy felvétel éppen fut. \n" +"Mit szeretne tenni?" + +msgid "A recording is currently running. Please stop the recording before trying to configure the positioner." +msgstr "Egy felvétel éppen folyamatban van. Ha a forgatórendszert be akarja állítani, akkor elötte állítsa meg a felvételt." + +msgid "A recording is currently running. Please stop the recording before trying to scan." +msgstr "Egy felvétel most folyamatban van. Kérem, előbb állítsa azt meg a kereséshez." + +msgid "A recording is currently running. Please stop the recording before trying to start the satfinder." +msgstr "Egy felvétel éppen folyamatban van. Ha futtani kívánja a Műholdkeresőt, akkor elötte állítsa meg a felvételt." + +#, python-format +msgid "A required tool (%s) was not found." +msgstr "A keresett eszköz (%s) nem található." + +msgid "A search for available updates is currently in progress." +msgstr "Az elérhető frissítések keresése folyamatban van." + +msgid "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" +msgstr "" +"Egy második bekonfigurált interfész is van a rendszerben.\n" +"\n" +"Le szeretné tiltani a második hálózati interfészt?" + +msgid "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"Az elalvásidőzítő le akarja kapcsolni\n" +"a készüléket készenléti módba. Engedélyezi?" + +msgid "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"Az elalvásidőzítő ki akarja kapcsolni\n" +"a készüléket. Engedélyezi?" + +msgid "A small overview of the available icon states and actions." +msgstr "Egy gyors áttekintés az elérhető ikonokról és állapotokról." + +msgid "" +"A timer failed to record!\n" +"Disable TV and try again?\n" +msgstr "" +"Az időzítő nem tud felvenni!\n" +"Próbálja újra TV megjelenítés nélkül?\n" + +msgid "A/V settings" +msgstr "A/V beállítások" + +msgid "AC3/DTS downmix" +msgstr "AC3/DTS lekeverés" + +msgid "Abort" +msgstr "Mégsem" + +msgid "About" +msgstr "Névjegy" + +msgid "About..." +msgstr "Névjegy..." + +msgid "Accesspoint:" +msgstr "Hozzáférési pont:" + +msgid "Action on long powerbutton press" +msgstr "Be/Ki gomb hosszan lenyomva" + +msgid "Action on short powerbutton press" +msgstr "Be/Ki gomb röviden lenyomva" + +msgid "Activate Picture in Picture" +msgstr "Kép-a-Képben bekapcsolása" + +msgid "Activate current configuration" +msgstr "Aktuális konfiguráció aktiválása" + +msgid "Activate network settings" +msgstr "Hálózati beállítások aktiválása" + +msgid "Activate the configured network settings." +msgstr "Hálózati beállítások aktiválása" + +msgid "Adapter settings" +msgstr "Adapter beállításai" + +msgid "Add" +msgstr "Hozzáadás" + +msgid "Add Bookmark" +msgstr "Bookmark hozzáadása" + +msgid "Add a mark" +msgstr "Jelző hozzáadása" + +msgid "Add a nameserver entry" +msgstr "Névszerver hozzáadása" + +msgid "Add a new title" +msgstr "Új cím hozzáadása" + +msgid "Add bookmark" +msgstr "bookmark hozzáadása" + +msgid "Add directory to playlist" +msgstr "mappa hozzáadása a playlistához" + +msgid "Add file to playlist" +msgstr "fájl hozzáadása a playlistához" + +msgid "Add files to playlist" +msgstr "fájlok hozzáadása a playlistához" + +msgid "Add more details to the crash log" +msgstr "Részletesebb hibanapló generálása fájlba, zöldhalál esetén" + +msgid "Add provider" +msgstr "Szolgáltató hozzáadása" + +msgid "Add recording (enter recording duration)" +msgstr "felvétel hozzáadása (adja meg a felvétel hosszát)" + +msgid "Add recording (enter recording endtime)" +msgstr "felvétel hozzáadása (adja meg a felvétel vége időpontját)" + +msgid "Add recording (indefinitely)" +msgstr "felvétel hozzáadása (korlátlan)" + +msgid "Add recording (stop after current event)" +msgstr "felvétel hozzáadása (esemény után leáll)" + +msgid "Add service" +msgstr "Csatorna hozzáadása" + +msgid "Add timer" +msgstr "Időzítés" + +msgid "Add title" +msgstr "Cím hozzáadása" + +msgid "Add to bouquet" +msgstr "Hozzáadás a bouquet listához" + +msgid "Add to favourites" +msgstr "Hozzáadás a kedvencekhez" + +msgid "Add/remove change timer for current event" +msgstr "" + +msgid "Adjust 3D settings" +msgstr "3D beállítások" + +msgid "Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens." +msgstr "Állítsa be úgy a színeket, hogy a színcsíkok megkülönböztethetők legyenek, de a telítettség a lehető legmegfelelőbb legyen. Ha az eredménnyel elégedett, akkor nyomja meg az OK gombot a video finombeállítások bezárásához, vagy a számgombok segítségével válasszon másik teszt ábrát." + +msgid "Advanced" +msgstr "" + +msgid "Advanced options" +msgstr "Haladó beállítások" + +msgid "Advanced restore" +msgstr "Haladó visszaállítás" + +msgid "Advanced software" +msgstr "Haladó szoftver" + +msgid "Advanced software plugin" +msgstr "Haladó szoftver plugin" + +msgid "Advanced video enhancement setup" +msgstr "Haladó képjavító beállítása " + +msgid "Advanced video setup" +msgstr "Haladó videó beállítások" + +msgid "After event" +msgstr "Esemény után" + +msgid "Album" +msgstr "Album" + +msgid "Alignment of events" +msgstr "Események elrendezése" + +msgid "Alignment of service names" +msgstr "Csatorna nevek elrendezése" + +msgid "All" +msgstr "Összes" + +msgid "All ages" +msgstr "Minden korosztály" + +msgid "All satellites 1 (USALS)" +msgstr "" + +msgid "All satellites 2 (USALS)" +msgstr "" + +msgid "All satellites 3 (USALS)" +msgstr "" + +msgid "All satellites 4 (USALS)" +msgstr "" + +msgid "Allocate" +msgstr "Hozzárendelés" + +msgid "Allocate unused memory index" +msgstr "Használatlan memóriaindex hozzárendelés" + +msgid "Allow quit movieplayer with exit" +msgstr "Média lejátszó bezárása kilépés gombbal" + +msgid "Allow subtitle language to equal audio language" +msgstr "Azonos nyelvű hangsáv és felirat összerendelése" + +msgid "Allow subtitles for hearing impaired" +msgstr "Hallássérülteknek szánt feliratok engedélyezése" + +msgid "Alpha" +msgstr "Alfa" + +msgid "Alternative" +msgstr "Alternatív" + +msgid "Alternative numbering mode" +msgstr "Alternatív számozás" + +msgid "Alternative services tuner priority" +msgstr "Alternatív csatornák tuner prioritása" + +msgid "Always ask" +msgstr "Mindig rákérdez" + +msgid "Always hide infobar" +msgstr "" + +msgid "An empty filename is illegal." +msgstr "Egy üres fájlnév érvénytelen." + +msgid "An error occurred while downloading the packetlist. Please try again." +msgstr "A szoftvercsomag-lista letöltése hiba miatt lehetetlen. Kérem, próbálja meg újra." + +msgid "An unknown error occurred!" +msgstr "Ismeretlen hiba keletkezett!" + +msgid "And will put your receiver in standby over " +msgstr "Készenlétbe kerülés: " + +msgid "Any activity" +msgstr "Bármilyen aktivitás" + +msgid "Arabic" +msgstr "Arab" + +msgid "Are you sure to remove this entry?" +msgstr "" + +msgid "" +"Are you sure you want to activate this network configuration?\n" +"\n" +msgstr "" +"Biztos benne, hogy aktiválni kívánja ezt a hálózati konfigurációt?\n" +"\n" + +msgid "" +"Are you sure you want to delete\n" +"the following backup:\n" +msgstr "" +"Biztos benne, hogy törölni kívánja\n" +"ezt a mentést:\n" + +msgid "Are you sure you want to exit this wizard?" +msgstr "Biztos benne, hogy kilép a Varázslóból?" + +msgid "" +"Are you sure you want to restart your network interfaces?\n" +"\n" +msgstr "" +"Biztos hogy újra akarja indítani a hálózati interfészt?\n" +"\n" + +#, python-format +msgid "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Biztos benne, hogy vissza szeretné állítani \n" +"az alábbi mentést?\n" +"%s\n" +"A készülék újra fog indulni a visszaállítás után." + +msgid "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Biztos benne, hogy vissza szeretné állítani a mentést?\n" +"A készülék újra fog indulni a visszaállítás után." + +msgid "Artist" +msgstr "Előadó" + +msgid "Arts/Culture" +msgstr "Művészet/Kultúra" + +msgid "Ask user" +msgstr "Felhasználó kérdezése" + +msgid "Aspect ratio" +msgstr "Kép méretarány" + +msgid "Assigned CAIds:" +msgstr "hozzárendelt CAId-ek:" + +msgid "Assigned services/provider:" +msgstr "hozzárendelt szolgáltató:" + +msgid "At beginning" +msgstr "az elején" + +msgid "At end" +msgstr "a végén" + +msgid "Audio" +msgstr "Hang" + +msgid "Audio PID" +msgstr "Audió PID" + +msgid "Audio language selection 1" +msgstr "Elsődleges előnyben részesített hangsáv" + +msgid "Audio language selection 2" +msgstr "Másodlagos előnyben részesített hangsáv" + +msgid "Audio language selection 3" +msgstr "Harmadlagos előnyben részesített hangsáv" + +msgid "Audio language selection 4" +msgstr "Negyedleges előnyben részesített hangsáv" + +msgid "Audio options..." +msgstr "Hang beállítások..." + +#, python-format +msgid "Audio track (%s) format" +msgstr "hangsáv (%s) formátuma" + +#, python-format +msgid "Audio track (%s) language" +msgstr "hangsáv (%s) nyelve" + +msgid "Author: " +msgstr "Szerző: " + +msgid "Authoring mode" +msgstr "Authoring mód" + +#. TRANSLATORS: (aspect ratio policy: always try to display as fullscreen, when there is no content (black bars) on left/right, even if this breaks the aspect. +msgid "Auto" +msgstr "Automata" + +msgid "Auto chapter split every ? minutes (0=never)" +msgstr "Automatikus fejezet készítés ? percenként (0=soha)" + +msgid "Auto flesh" +msgstr "Auto-flash" + +msgid "Auto focus" +msgstr "Autofókusz" + +msgid "Auto focus commencing ..." +msgstr "Autofókusz kezdődik..." + +msgid "Auto language selection" +msgstr "Automatikus nyelvválasztás" + +msgid "Auto scart switching" +msgstr "Automatikus SCART átkapcsolás" + +msgid "Automatic" +msgstr "Automatikus" + +msgid "Automatic scan" +msgstr "Automatikus keresés" + +msgid "Automatically start timeshift after" +msgstr "Időcsúszatás automatikus bekapcsolása ennyi idő múlva" + +msgid "Automatically turn on external subtitles" +msgstr "Külső feliratok automatikus megjelenítése" + +msgid "Available format variables" +msgstr "Lehetséges formátum variációk" + +msgid "B" +msgstr "B" + +msgid "BER" +msgstr "BER" + +msgid "BER:" +msgstr "BER:" + +msgid "Back" +msgstr "Vissza" + +msgid "Background" +msgstr "Háttér" + +msgid "Background color" +msgstr "háttér szín" + +msgid "Background delete option" +msgstr "Törlés a háttérben" + +msgid "Background delete speed" +msgstr "Törlés sebessége" + +msgid "Backup completed." +msgstr "Mentés sikertelen." + +msgid "Backup failed." +msgstr "Mentés sikertelen." + +msgid "Backup is running..." +msgstr "Mentés folyamatban..." + +msgid "Backup system settings" +msgstr "Rendszerbeállítás mentése" + +msgid "Band" +msgstr "Sáv" + +msgid "Bandwidth" +msgstr "Sávszélesség" + +msgid "Basque" +msgstr "Baszk" + +msgid "Begin time" +msgstr "Kezdési idő" + +msgid "Behavior of 'pause and ok' when paused" +msgstr "" + +msgid "Behavior of 0 key in PiP-mode" +msgstr "Kép-a-Képben esetén a 0 gomb jelentése" + +msgid "Behavior when a movie is started" +msgstr "Amikor egy lejátszás elindul" + +msgid "Behavior when a movie is stopped" +msgstr "Amikor egy lejátszás meg van állítva" + +msgid "Behavior when a movie reaches the end" +msgstr "Amikor egy lejátszás a végére ér" + +msgid "Big PiP" +msgstr "" + +msgid "Bitrate:" +msgstr "Bitráta" + +msgid "Black screen" +msgstr "Fekete képernyő" + +msgid "Black screen till locked" +msgstr "Fekete képernyő lezárásig" + +msgid "Block noise reduction" +msgstr "Blokk-zaj csökkentés" + +msgid "Blue boost" +msgstr "Kék erősítés" + +msgid "Bookmarks" +msgstr "Bookmark-ok" + +msgid "Brightness" +msgstr "Fényerő" + +msgid "Bulgarian" +msgstr "Bolgár" + +msgid "Burn DVD" +msgstr "DVD írás" + +#, python-format +msgid "Burn audio track (%s)" +msgstr "hangsáv írása (%s)" + +msgid "Burn existing image to DVD" +msgstr "A meglévő képfájl DVD-re írása" + +msgid "Burn to DVD" +msgstr "DVD-re kiírás..." + +msgid "Bus: " +msgstr "Busz: " + +msgid "By default, SNR will be shown in dB (when supported by the tuner). This setting forces SNR to be shown as a percentage instead." +msgstr "Alapértelmezetten, a Jel/Zaj viszony (SNR) decibelben jeleník meg (ha a tuner támogatja). Ezzel a beállítással mindenképp százalékra kényszerítheti a megjelenítést." + +msgid "C" +msgstr "C" + +msgid "C-Band" +msgstr "C-sáv" + +msgid "CH" +msgstr "" + +msgid "CI assignment" +msgstr "CI hozzárendelés" + +msgid "CVBS" +msgstr "CVBS" + +msgid "Cable" +msgstr "Kábel" + +msgid "Cable Scan" +msgstr "Kábel keresés" + +msgid "Cache thumbnails" +msgstr "Cache ikonok" + +msgid "Calculate" +msgstr "Számítás" + +msgid "Calculate all positions" +msgstr "Minden pozíció kiszámítása" + +msgid "Calculation complete" +msgstr "Számítás kész" + +msgid "Calibrate" +msgstr "Kalibrálás" + +msgid "Can be used for different fps between external subtitles and video." +msgstr "Ha a film és a felirat eltérő FPS-el rendelkeznek, akkor itt adható ez meg a felirat számára." + +msgid "Cancel" +msgstr "Mégse" + +msgid "Cannot determine" +msgstr "Nem lehet megállapítani" + +msgid "Cannot find any signal ..., aborting !" +msgstr "Nem található jel... művelet megszakítva!" + +msgid "Cannot move files on a different disk or system to the trash can" +msgstr "Más meghajtóról származó fájlok nem helyezhetők át a kukába" + +msgid "Cannot move to trash can" +msgstr "Nem helyezthető a kukába" + +msgid "Capacity: " +msgstr "Kapacitás:" + +msgid "Card" +msgstr "Kártya" + +msgid "Cascade PiP" +msgstr "" + +msgid "Center DVB subtitles" +msgstr "Középre zárt DVB felirat" + +msgid "Center time-labels and remove date" +msgstr "Idő-címkék középre zárása, dátum eltávolítása" + +msgid "Change bouquets in quickzap" +msgstr "Bouquet-ek változtatása a gyors ugrásban" + +msgid "Change pin code" +msgstr "PIN kód megváltoztatása" + +msgid "Change recording (duration)" +msgstr "felvétel módosítása (hossz)" + +msgid "Change recording (endtime)" +msgstr "felvétel módosítása (vége időpont)" + +msgid "Change repeat and delay settings?" +msgstr "Billentyű ismétlést/késletletést megváltoztatja?" + +msgid "Change service PIN" +msgstr "Szerviz PIN módosítás" + +msgid "Change service PINs" +msgstr "Szerviz PIN-ek módosítása" + +msgid "Change setup PIN" +msgstr "Beállítások PIN módosítás" + +msgid "Change step size" +msgstr "Lépésmérték módosítása" + +msgid "Change timer" +msgstr "" + +msgid "Changelog" +msgstr "Változási napló" + +msgid "Channel" +msgstr "Csatorna" + +msgid "Channel list type" +msgstr "Csatornalista menü" + +msgid "Channel not in services list" +msgstr "A csatorna nem szerepel a szolgáltatási listában" + +msgid "Channel selection" +msgstr "Csatorna választás" + +msgid "Channel:" +msgstr "Csatorna:" + +msgid "Channellist menu" +msgstr "Csatornalista menü" + +msgid "Chap." +msgstr "Chap." + +msgid "Chapter" +msgstr "Fejezet" + +msgid "Chapter:" +msgstr "Fejezet:" + +msgid "Check" +msgstr "Ellenőrzés" + +msgid "Check the internet connection" +msgstr "Internetkapcsolat ellenőrzése" + +msgid "Check the internet connection again" +msgstr "Internetkapcsolat ismételt ellenőrzése" + +msgid "Checking filesystem..." +msgstr "Fájlrendszer ellenőrzése..." + +msgid "Checking the internet connection" +msgstr "Internetkapcsolat ellenőrzése..." + +#, python-format +msgid "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" +msgstr "" +"Tuner beállítás: %d\n" +"DiSEqC port %s a %s-ből" + +msgid "Children/Youth" +msgstr "Gyermek/Fiatalság" + +msgid "Choose which tuner to configure." +msgstr "Válassza ki a beállítandó tunert." + +msgid "Circular left" +msgstr "Forgó balos" + +msgid "Circular right" +msgstr "Forgó jobbos" + +msgid "Cleanup" +msgstr "Takarítás" + +msgid "Clear" +msgstr "Törlés" + +msgid "Clear before scan" +msgstr "Keresés elött törlés" + +msgid "Clear fixed" +msgstr "Rögzítettek törlése" + +msgid "Clear log" +msgstr "Napló törlése" + +msgid "Clear playlist" +msgstr "playlista törlése" + +msgid "Close" +msgstr "Bezárás" + +msgid "Close PiP on exit" +msgstr "Kép-a-Képben bezárása kilépéskor" + +msgid "Close title selection" +msgstr "Címválasztás bezárása" + +msgid "Code rate HP" +msgstr "HP kódarány" + +msgid "Code rate LP" +msgstr "LP kódarány" + +msgid "Coderate HP" +msgstr "HP kódarány" + +msgid "Coderate LP" +msgstr "LP kódarány" + +msgid "Collection name" +msgstr "Gyűjtemény neve" + +msgid "Collection settings" +msgstr "Gyűjtemény beállítások" + +msgid "Color format" +msgstr "Színformátum" + +msgid "Command execution..." +msgstr "Parancs végrehajtása..." + +msgid "Command order" +msgstr "Parancs sorrend" + +msgid "Common Interface" +msgstr "CI modulfogadó" + +msgid "Common Interface assignment" +msgstr "CI hozzárendelés" + +msgid "Communication" +msgstr "Kommunikáció" + +msgid "Compact flash" +msgstr "Compact Flash" + +msgid "Complete" +msgstr "Kész" + +msgid "Complex (allows mixing audio tracks and aspects)" +msgstr "Komplex (engedélyezi a hangfolyamok és méretarányok keverését)" + +msgid "Composition of the recording filenames" +msgstr "A felvételi fájlnevek összeállítása" + +msgid "Configuration mode" +msgstr "Konfigurációs mód: " + +#, python-format +msgid "Configuration mode: %s" +msgstr "Konfigurációs mód: %s" + +msgid "Configuration..." +msgstr "Beállítások..." + +msgid "Configure an additional delay to improve external subtitle synchronisation." +msgstr "Extra késleltetés beállítása külső feliratfájl esetén, szinkronizáció hibák korrigálásához." + +msgid "Configure an additional delay to improve subtitle synchronisation." +msgstr "Extra késleltetés beállítása felirathoz, szinkronizáció hibák korrigálásához." + +msgid "Configure for how long the infobar will remain visible after activation." +msgstr "Ennyi ideig maradjon látható az információs sáv mejelenítést követően." + +msgid "Configure for how many minutes finished events should remain visible in the EPG. Useful when you need information about an event which has just finished, or has been delayed." +msgstr "Ennyi percig maradjon látható az EPG-ben a múlt. Hasznos lehet ha egy lejárt, vagy egy elcsúszott műsorról szeretne tájékozódni." + +msgid "Configure how recording filenames are constructed." +msgstr "A felvétel fájl-neveinek összetétele." + +msgid "Configure how the fan should operate" +msgstr "" + +msgid "Configure if and how crypto icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how long the latest service in the PiP will be remembered." +msgstr "" + +msgid "Configure if and how service type icons will be shown in the channel selection list." +msgstr "A csatornák típusának (földi, műholdas, stb.) megjelenítése, és annak módja és csatornalistában." + +msgid "Configure if and how wide columns will be shown in the channel selection list." +msgstr "" + +msgid "Configure if service picons will be shown in the channel selection list." +msgstr "A csatornák pikonjainak megjelenítése a csatornalistában." + +msgid "Configure interface" +msgstr "Interfész konfigurálása" + +msgid "Configure nameservers" +msgstr "Névszerverek konfigurálása" + +msgid "Configure on which devices the background delete option should be used." +msgstr "Milyen eszközökre legyen érvényes a háttérben történő törölgetés." + +msgid "Configure remote control type" +msgstr "eredeti távirányító" + +msgid "Configure the DiSEqC mode for this LNB." +msgstr "A DiSEqC mód beállítása ehhez az fejhez." + +msgid "Configure the IP address." +msgstr "Interfész konfigurálása" + +msgid "Configure the aspect ratio of the screen." +msgstr "A kép méret-arányának beállítása." + +msgid "Configure the behavior of the 'pause and ok' key when movie playback is already paused." +msgstr "" + +msgid "Configure the behavior when movie playback is manually stopped." +msgstr "Mi történjen amikor egy fájl lejátszása kézzel meg van állítva." + +msgid "Configure the behavior when movie playback is started." +msgstr "Mi történjen amikor egy fájl lejátszása elindul" + +msgid "Configure the behavior when reaching the end of a movie, during movie playback." +msgstr "Mi történjen amikor egy fájl lejátszása véget ér, lejátszás közben." + +msgid "Configure the border width of the subtitles. The dark border makes the subtitles easier to read on a light background." +msgstr "A feliratok körvonalának beállítása. Egy sötét körvonal a betűkön könnyebben olvashatóvá teszi a feliratot." + +msgid "Configure the brightness level of the front panel display during standby." +msgstr "Az előlap kijelzőjének fényereje a készülék kikapcsolt állapotában." + +msgid "Configure the brightness level of the front panel display." +msgstr "Az előlap kijelzőjének fényereje." + +msgid "Configure the color of the external subtitles, alternative (normal in white, italic in yellow, bold in cyan, underscore in green), white or yellow." +msgstr "A külső fájlban lévő feliratok színe: fehér, sárga vagy alternatív (normál-fehér, dőlt-sárga, vastag-cián, aláhúzott-zöld)" + +msgid "Configure the color of the teletext subtitles." +msgstr "A teletextben sugárzott feliratok színe." + +msgid "Configure the contrast level of the front panel display." +msgstr "Az előlap kijelzőjének kontrasztja." + +msgid "Configure the cursor behaviour in the channel selection list. When opening the channel selection list you can keep on the current service or already select up/down and you are able to revert the B+/B- buttons." +msgstr "" + +msgid "Configure the duration in hours the receiver should go to standby when the receiver is not controlled." +msgstr "" + +msgid "Configure the duration in minutes for the screensaver." +msgstr "A képernyőkímélő várakozási ideje percben." + +msgid "Configure the duration in minutes for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +msgstr "" + +msgid "Configure the duration when the receiver should go to shut down in case the receiver is in standby mode." +msgstr "Mennyi idő múlva kapcsoljon ki teljesen a készülék készenlétbe térés után." + +msgid "Configure the first audio language (highest priority)." +msgstr "Többnyelvű csatornáknál ezt a hangsávot választja automatikusan, legmagasabb prioritással." + +msgid "Configure the first subtitle language (highest priority)." +msgstr "Többnyelvű csatornáknál ezt a feliratot választja automatikusan, legmagasabb prioritással." + +msgid "Configure the font size of the subtitles." +msgstr "A feliratok betűméretének beállítása." + +msgid "Configure the fourth audio language." +msgstr "Többnyelvű csatornáknál ezt a hangsávot választja automatikusan, negyedik prioritással." + +msgid "Configure the fourth subtitle language." +msgstr "Többnyelvű csatornáknál ezt a feliratot választja automatikusan, negyedik prioritással." + +msgid "Configure the function of a long press on the power button." +msgstr "A Be/Ki kapcsoló gomb működése hosszan tartott lenyomásnál." + +msgid "Configure the function of a short press on the power button." +msgstr "A Be/Ki kapcsoló gomb működése rövid (normális) lenyomásnál." + +msgid "Configure the function of the '0' button do when PIP is active." +msgstr "A '0' gomb működése aktív Kép-a-Képben funkció mellett." + +msgid "Configure the gateway." +msgstr "Interfész konfigurálása" + +msgid "Configure the general audio delay of Dolby Digital sound tracks." +msgstr "A Dolby Digital hangsávok általános késleltetése." + +msgid "Configure the general audio delay of stereo sound tracks." +msgstr "A sztereó hangsávok általános késleltetése." + +msgid "Configure the hard disk drive to go to standby after the specified idle time." +msgstr "A beépített háttértár készenlétbe léptetése ennyi tétlen idő után." + +msgid "Configure the horizontal alignment of the subtitles." +msgstr "A feliratok vízszintes elrendezése." + +msgid "Configure the initial fast forward speed. When you press the fast forward button, winding will start at this speed." +msgstr "Kezdeti előre-tekerési sebesség. Amikor előre tekeri a felvételt, ennyi lesz a kezdeti sebesség." + +msgid "Configure the initial rewind speed. When you press the rewind button, winding will start at this speed." +msgstr "Kezdeti vissza-tekerési sebesség. Amikor vissza tekeri a felvételt, ennyi lesz a kezdeti sebesség." + +msgid "Configure the latitude of your location." +msgstr "Az antenna telepítés helyének földrajzi szélessége." + +msgid "Configure the longitude of your location." +msgstr "Az antenna telepítés helyének földrajzi hosszúsága." + +msgid "Configure the minimum amount of disk space to be available for recordings. When the amount of space drops below this value, deleted items will be removed from the trash can." +msgstr "A felvételekhez szükséges minimális szabad tárhely. Ha az elérhető szabad tárterület ennyi alá esik, a kukába helyezett elemek véglegesen törölve lesznek." + +msgid "Configure the nameserver (DNS)." +msgstr "Névszerverek (DNS) konfigurálása." + +msgid "Configure the netmask." +msgstr "Interfész konfigurálása" + +msgid "Configure the number of days after which items are automaticaly removed from the trash can." +msgstr "Ennyi nap után lesznek a kukába helyezett elemek véglegesen törölve." + +msgid "Configure the number of days old timers are kept before they are automatically removed from the timer list." +msgstr "Ennyi nap után lesznek a lejárt időzítések véglegesen törölve a listából." + +msgid "Configure the offline decoding delay in milliseconds. The configured delay is observed at each control word parity change." +msgstr "Az offline dekódolás késleltetése miliszekundumban. A beállított késleltetés a CW paritásának változásakor vehető észre." + +msgid "Configure the possible fast forward speeds." +msgstr "Kezdeti előre-tekerési sebesség" + +msgid "Configure the possible rewind speeds." +msgstr "A lehetséges tekerési sebességek beállítása" + +msgid "Configure the primary EPG language." +msgstr "Többnyelvű EPG-t sugárzó csatornáknál ezt a nyelvet választja automatikusan, legmagasabb prioritással." + +msgid "Configure the refresh rate of the screen." +msgstr "A képernyő-frissítési gyakoriság beállítása." + +msgid "Configure the screen resolution in PC output mode." +msgstr "A képernyő felbontás PC-kimenet módban." + +msgid "Configure the second audio language." +msgstr "Többnyelvű csatornáknál ezt a hangsávot választja automatikusan, második prioritással." + +msgid "Configure the second subtitle language." +msgstr "Többnyelvű csatornáknál ezt a feliratot választja automatikusan, másdik prioritással." + +msgid "Configure the secondary EPG language." +msgstr "Többnyelvű EPG-t sugárzó csatornáknál ezt a nyelvet választja automatikusan, második prioritással." + +msgid "Configure the sharpness of the video scaling." +msgstr "A kép átméretezés utáni élesség." + +msgid "Configure the skip time interval for the '1'/'3' buttons." +msgstr "Ennyi időt ugrik az '1' (vissza) és a '3' (előre) gombok megnyomásakor." + +msgid "Configure the skip time interval for the '4'/'6' buttons." +msgstr "Ennyi időt ugrik a '4' (vissza) és a '6' (előre) gombok megnyomásakor." + +msgid "Configure the skip time interval for the '7'/'9' buttons." +msgstr "Ennyi időt ugrik a '7' (vissza) és a '9' (előre) gombok megnyomásakor." + +msgid "Configure the slow motion speeds." +msgstr "Lassítási sebességek" + +msgid "Configure the source of the frontend data as shown on the infobars. 'Settings' is as stored on the settings. 'Tuner' is as reported by the tuner." +msgstr "" + +msgid "Configure the speed of the background deletion process. Lower speed will consume less hard disk drive performance." +msgstr "A törléshez szükséges sebesség korlátozása. Alacsonyabb törlési sebesség mellett több erőforrás áll rendelkezésre a háttértár részéről." + +msgid "Configure the speed of the fan" +msgstr "" + +msgid "Configure the subtitle delay when timing information is not available." +msgstr "A felirat késleltetése, ha nincs benne időzítési információ." + +msgid "Configure the third audio language." +msgstr "Többnyelvű csatornáknál ezt a hangsávot választja automatikusan, harmadik prioritással." + +msgid "Configure the third subtitle language." +msgstr "Többnyelvű csatornáknál ezt a feliratot választja automatikusan, harmadik prioritással." + +msgid "Configure the transparency of the OSD." +msgstr "Az OSD menü áttetszősége." + +msgid "Configure the transparency of the black background of graphical DVB subtitles." +msgstr "A DVB grafikus feliratok hátterének áttetszősége." + +msgid "Configure the tuner mode." +msgstr "A tuner mód beállítása." + +msgid "Configure the type of status indication icons shown in the movielist." +msgstr "A felvételek listájában látható státusz ikonok típusa." + +msgid "Configure the vertical position of the subtitles, measured from the bottom of the screen." +msgstr "A feliratok függőleges elrendezése, mérve a képernyő aljától." + +msgid "Configure the video output mode (or resolution)." +msgstr "A videó kimenet és a felbontás beállítása." + +msgid "Configure the way in which the receiver changes channels." +msgstr "A csatornaváltás módja." + +msgid "Configure where completed timers show up in the timer list." +msgstr "A lejárt időzítések megjelenítésének módja a listában." + +msgid "Configure whether (and for how long) a second infobar will be shown when OK is pressed twice. The second infobar contains additional information about the current channel." +msgstr "Egy második, bővebb információs ablak megjelenítése az aktuális csatornáról és mennyi ideig, ha az 'OK' gombot másodjára nyomjuk meg." + +msgid "Configure whether multi channel sound tracks should be downmixed to stereo." +msgstr "A többcsatornás hangsávok (pl. 5.1-es) lekeverése sztereóra." + +msgid "Configure whether or not an icon should be shown when your motorized dish is moving." +msgstr "Jelenjen meg egy ikon a képernyőn, miközben az antenna forgatómotorja dolgozik." + +msgid "Configure which access level to use for the configuration menu. Expert level gives access to all items." +msgstr "Milyen szintű hozzáférése legyen a menürendszernek. A 'Haladó' szint minden menü elemet hozzáférhetővé tesz." + +msgid "Configure which color format should be used on the SCART output." +msgstr "Milyen típusú videó jel jelenjen meg a SCART kimeneten." + +msgid "Configure which tuner for recordings will be preferred, when more than one tuner is available." +msgstr "" + +msgid "Configure which tuner type will be preferred, when the same service is available on different types of tuners." +msgstr "Milyen tuner típus legyen automatikusan választva, ha ugyanaz a csatorna egyszerre több típusú tuneren keresztül is fogható (a csatornának vannak beállított alternatívái)." + +msgid "Configure which tuner will be preferred, when more than one tuner is available. If set to 'auto' the system will give priority to the tuner having the lowest number of channels/satellites." +msgstr "Melyik tuner legyen választva, ha ugyanaz a csatorna egyszerre több tuneren keresztül is fogható (a csatornának vannak beállított alternatívái). Ha ez 'Automatikus', akkor mindig a legkevesebb csatornákat fogó tuner lesz választva." + +msgid "Configure your internal LAN" +msgstr "A hálózat konfigurálása" + +msgid "Configure your network again" +msgstr "A hálózat újrakonfigurálása" + +msgid "Configure your network settings, and press OK to start the scan" +msgstr "Állítsa be a hálózati paramétereket, majd nyomja meg az OK gombot a kereséshez" + +msgid "Configure your wireless LAN again" +msgstr "A vezeték nélküli hálózat újrakonfigurálása" + +msgid "Configures which video output connector will be used." +msgstr "Melyik videó kimeneti csatlakozó van bekötve." + +msgid "Configuring" +msgstr "Konfigurálás" + +msgid "Conflicting timer" +msgstr "Időzítés ütközés" + +msgid "Connect" +msgstr "Csatlakozás" + +msgid "Connect to a wireless network" +msgstr "Csatlakozás vezeték nélküli hálózathoz" + +msgid "Connected satellites" +msgstr "" + +msgid "Connected to" +msgstr "Csatlakoztatva ehhez: " + +msgid "Connected!" +msgstr "Csatlakoztatva!" + +msgid "Constellation" +msgstr "Együttállás" + +msgid "Content does not fit on DVD!" +msgstr "A tartalom nem fér fel a DVD-re!" + +msgid "Continue" +msgstr "Folytatás" + +msgid "Continue in background" +msgstr "Folytatás a háttérben" + +msgid "Continue playback" +msgstr "Lejátszás folytatása" + +msgid "Continue playing" +msgstr "Lejátszás folytatása" + +msgid "Continues play (loop)" +msgstr "Ismétléses lejátszás" + +msgid "Contrast" +msgstr "Kontraszt" + +msgid "Convert ext3 filesystem to ext4" +msgstr "Fájlrendszer konvertálása ext3-ról ext4-re" + +msgid "Convert ext3 to ext4" +msgstr "Konvertálás ext3-ról ext4-re" + +msgid "Converting ext3 to ext4..." +msgstr "Konvertálás ext3 > ext4" + +msgid "Copy" +msgstr "Másolás" + +msgid "Could not connect to receiver .NFI image feed server:" +msgstr "Nem lehet csatlakozni az .NFI Image feed szerverhez: " + +msgid "Could not find installed channel list." +msgstr "Nem található telepített csatornalista." + +msgid "Could not load medium! No disc inserted?" +msgstr "Nem lehet betölteni a hordozót! Van bennt lemez?" + +msgid "Could not open Picture in Picture" +msgstr "A Kép-a-Képben funkció nem indítható el" + +#, python-format +msgid "Could not record due to conflicting timer %s" +msgstr "A felvétel nem tud elindulni időzítés ütközés miatt: %s" + +#, python-format +msgid "Could not record due to invalid service %s" +msgstr "Az %s érvénytelen csatorna miatt a felvétel nem lehetséges" + +msgid "Create DVD-ISO" +msgstr "DVD képfájl készítés" + +msgid "Create more detailed crash log" +msgstr "Részletesebb hibanapló generálása" + +#, python-format +msgid "Creating directory %s failed." +msgstr "A %s mappa létrehozása nem sikerült." + +msgid "Creating filesystem" +msgstr "Fájlrendszer létrehozása" + +msgid "Creating partition" +msgstr "Partíció létrehozása" + +msgid "Croatian" +msgstr "Horvát" + +msgid "Current CEC address" +msgstr "Aktuális CEC cím" + +msgid "Current device: " +msgstr "Aktuális eszköz: " + +msgid "Current event EPG" +msgstr "Aktuális esemény EPG-je" + +#, python-format +msgid "Current mode: %s \n" +msgstr "" + +msgid "Current settings:" +msgstr "Aktuális beállítások:" + +msgid "Current transponder" +msgstr "Aktuális transzponder" + +msgid "Current value: " +msgstr "Aktuális érték:" + +msgid "Current version:" +msgstr "Aktuális verzió:" + +msgid "Currently installed image" +msgstr "A telepített image" + +msgid "Currently the commit log cannot be retrieved - please try later again" +msgstr "" + +msgid "Custom skip time for '1'/'3' buttons" +msgstr "Ugrás az '1'/'3' gombokkal (másodperc)" + +msgid "Custom skip time for '4'/'6' buttons" +msgstr "Ugrás a '4'/'6' gombokkal (másodperc)" + +msgid "Custom skip time for '7'/'9' buttons" +msgstr "Ugrás a '7'/'9' gombokkal (másodperc)" + +msgid "Customize" +msgstr "Testreszabás" + +msgid "Customize channel list cursor behavior" +msgstr "A csatornalista kurzorának testreszabása" + +msgid "Cut" +msgstr "Vágás" + +msgid "Cutlist editor..." +msgstr "Film-vágó..." + +msgid "Czech" +msgstr "Cseh" + +msgid "D" +msgstr "D" + +msgid "DHCP" +msgstr "DHCP" + +msgid "DMM advanced" +msgstr "haladó" + +msgid "DMM normal" +msgstr "hagyományos" + +msgid "DUAL LAYER DVD" +msgstr "Kétréteges DVD" + +msgid "DVB subtitle black transparency" +msgstr "DVB felirat fekete-áttetszőssége" + +msgid "DVB-C" +msgstr "DVB-C" + +msgid "DVB-C ANNEX C" +msgstr "DVB-C Annex C" + +msgid "DVB-S" +msgstr "DVB-S" + +msgid "DVB-S2" +msgstr "DVB-S2" + +msgid "DVB-T" +msgstr "DVB-T" + +msgid "DVB-T2" +msgstr "DVB-T2" + +msgid "DVD data format" +msgstr "DVD adat formátum" + +msgid "DVD file browser" +msgstr "DVD Fájlkezelő" + +msgid "DVD media toolbox" +msgstr "DVD media toolbox" + +msgid "DVD player" +msgstr "DVD lejátszó" + +msgid "DVD titlelist" +msgstr "DVD Címlista" + +msgid "Danish" +msgstr "Dán" + +msgid "Date" +msgstr "Dátum" + +msgid "Date/time input" +msgstr "Idő/Dátum megadása" + +msgid "Deep standby" +msgstr "Mély-készenlét" + +msgid "Default" +msgstr "Alapértelmezett" + +msgid "Default movie location" +msgstr "Felvételek tárhelye" + +msgid "Default settings" +msgstr "Alapértelmezett beállítások" + +msgid "Delay before key repeat starts:" +msgstr "Késleltetés ismétlések előtt:" + +msgid "Delay for external subtitles" +msgstr "Külső feliratok késleltetése" + +msgid "Delete" +msgstr "Törlés" + +msgid "Delete entry" +msgstr "Adat törlése" + +msgid "Delete failed!" +msgstr "A törlés sikertelen!" + +msgid "Delete file" +msgstr "fájl törlése" + +msgid "Delete playlist entry" +msgstr "playlista bejegyzés törlése" + +msgid "Delete saved playlist" +msgstr "mentett playlista törlése" + +msgid "Delete timer" +msgstr "" + +msgid "Delete..." +msgstr "törlés..." + +msgid "Deleted" +msgstr "Törölve" + +msgid "Deleted items" +msgstr "Kuka" + +msgid "Depth" +msgstr "Mélység" + +msgid "Descramble http streams" +msgstr "HTTP jelfolyamook dekódolása" + +msgid "Description" +msgstr "Leírás" + +msgid "Deselect" +msgstr "Kijelölés törlése" + +msgid "Details for plugin: " +msgstr "Plugin részletei: " + +msgid "Detected HDD:" +msgstr "Telepített háttértár:" + +msgid "Detected NIMs:" +msgstr "Telepített tunerek:" + +msgid "Devicename:" +msgstr "Eszköznév" + +msgid "Devide" +msgstr "" + +msgid "DiSEqC" +msgstr "DiSEqC" + +msgid "DiSEqC 1.0 command" +msgstr "" + +msgid "DiSEqC 1.1 command" +msgstr "" + +msgid "DiSEqC 1.1 repeats" +msgstr "" + +msgid "DiSEqC A/B" +msgstr "DiSEqC A/B" + +msgid "DiSEqC A/B/C/D" +msgstr "DiSEqC A/B/C/D" + +msgid "DiSEqC mode" +msgstr "DiSEqC mód" + +#, python-format +msgid "DiSEqC port %s: %s" +msgstr "DiSEqC port %s: %s" + +msgid "DiSEqC-tester settings" +msgstr "DiSEqC-Teszter beállításai" + +msgid "Dialing:" +msgstr "Tárcsázás: " + +msgid "Digital contour removal" +msgstr "Digitális körvonal-eltávolítás" + +msgid "Direct playback of linked titles without menu" +msgstr "Linkelt tételek menü nélküli közvetlen lejátszása" + +msgid "Directory" +msgstr "Mappa" + +#, python-format +msgid "Directory %s does not exist." +msgstr "A %s mappa nem létezik" + +#, python-format +msgid "Directory %s nonexistent." +msgstr "%s mappa nem létezik." + +msgid "Directory browser" +msgstr "Mappa tallózása" + +#, python-format +msgid "Directory contains %d file(s) and %d sub-directories.\n" +msgstr "A mappa %d fájlt és %d al-mappát tartalmaz.\n" + +#, python-format +msgid "Directory contains %s and %s." +msgstr "A mappa tartalma %s és %s." + +msgid "Disable" +msgstr "Letiltás" + +msgid "Disable Picture in Picture" +msgstr "Kép-a-Képben kikapcsolása" + +msgid "Disable background scanning" +msgstr "Háttér-keresés tiltása" + +msgid "Disable timer" +msgstr "" + +msgid "Disabled" +msgstr "Letiltva" + +msgid "Disconnect" +msgstr "Kapcsolat bontása" + +msgid "Disk space to reserve for recordings (in GB)" +msgstr "Felvételeknek fenntartott tárterület (GB-ban)" + +msgid "Display 16:9 content as" +msgstr "16:9 tartalom megjelenítése:" + +msgid "Display 4:3 content as" +msgstr "4:3 tartalom megjelenítése:" + +msgid "Display >16:9 content as" +msgstr "16:9-nél szélesebb tartalom megjelenítése:" + +msgid "Display and userinterface" +msgstr "Képernyő és felhasználói felület" + +msgid "Display message before playing next movie" +msgstr "A következő fájl lejátszása előtt üzenet megjelenítése" + +msgid "Display setup" +msgstr "Előlapi kijelző" + +msgid "Do not change" +msgstr "ne változtassa meg" + +msgid "Do not record" +msgstr "ne vegye fel" + +msgid "Do nothing" +msgstr "ne csináljon semmit" + +msgid "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" +msgstr "" +"Biztos benne, hogy le szeretné ellenőrizni a fájlrendszert?\n" +"Ez hosszú ideig is eltarthat!" + +msgid "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" +msgstr "" +"Biztos benne, hogy konvertálni szeretné a fájlrendszert?\n" +"Ez visszafordíthatatlan lesz!" + +#, python-format +msgid "Do you really want to delete %s?" +msgstr "Biztos benne, hogy törölni szeretné ezt a tételt: %s?" + +#, python-format +msgid "" +"Do you really want to download\n" +"the plugin \"%s\"?" +msgstr "" +"Biztos benne, hogy hogy le szeretné tölteni\n" +"a \"%s\" plugint?" + +msgid "Do you really want to exit?" +msgstr "Biztos benne, hogy ki szeretne lépni?" + +msgid "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" +msgstr "" +"Biztos benne, hogy inicializálni szeretné a háttértárolót?\n" +"Annak összes adata el fog veszni!" + +#, python-format +msgid "" +"Do you really want to remove\n" +"the plugin \"%s\"?" +msgstr "" +"Biztos benne, hogy hogy le szeretné tölteni\n" +"a \"%s\" plugint?" + +#, python-format +msgid "Do you really want to remove directory %s from the disk?" +msgstr "Biztos benne, hogy el szeretné távolítani a %s mappaat a háttértárról?" + +#, python-format +msgid "Do you really want to remove your bookmark of %s?" +msgstr "Biztos benne, hogy el szeretné távolítani a %s bolkmark-ot?" + +msgid "Do you want this?" +msgstr "Biztos benne, hogy ezt szeretné?" + +msgid "Do you want to burn this collection to DVD medium?" +msgstr "Fel szeretné írni ezt a gyűjteményt a DVD lemezre?" + +msgid "Do you want to do a service scan?" +msgstr "Szeretne most egy csatornakeresést lefuttatni?" + +msgid "Do you want to do another manual service scan?" +msgstr "Szeretne most egy másik kézi keresést lefuttatni?" + +#, python-format +msgid "Do you want to download the image to %s ?" +msgstr "Biztos benne, hogy le szeretné tölteni a %s image-t?" + +msgid "Do you want to install a channel list?" +msgstr "Biztos benne, hogy feltelepíti ezt a csatornalistát?" + +msgid "Do you want to install the package:\n" +msgstr "Biztos benne, hogy feltelepíti ezt a csomagot:\n" + +msgid "Do you want to play DVD in drive?" +msgstr "Le szeretné játszani a behelyezett DVD-t?" + +msgid "Do you want to preview this DVD before burning?" +msgstr "Kiírás előtt meg szeretné tekinteni a DVD tartalmat?" + +msgid "Do you want to reboot your receiver?" +msgstr "Szeretné újraindítani a készüléket?" + +msgid "Do you want to remove the package:\n" +msgstr "Biztos benne, hogy eltávolítja ezt a csomagot:\n" + +msgid "Do you want to restore your settings?" +msgstr "Szeretné visszaállítani a beállításait?" + +msgid "Do you want to resume this playback?" +msgstr "Szeretné folytatni ezt a lejátszást?" + +#, python-format +msgid "Do you want to update your receiver to %s?" +msgstr "Szeretné frissíteni a készülék szoftverét %s-re?" + +msgid "Do you want to update your receiver?" +msgstr "Szeretné frissíteni a készülék szoftverét?" + +msgid "Do you want to upgrade the package:\n" +msgstr "Biztos benne, hogy frissíteni szeretné ezt a csomagot:\n" + +msgid "Don't stop current event but disable coming events" +msgstr "Ne állítsa le a futó eseményt, inkább kapcsolja le a következőt" + +#, python-format +msgid "Done - Installed, upgraded or removed %d package (%s)" +msgid_plural "Done - Installed, upgraded or removed %d packages (%s)" +msgstr[0] "%d szoftvercsomag telepítése, frissítése vagy eltávolítása elkészült (%s)" +msgstr[1] "%d szoftvercsomag telepítése, frissítése vagy eltávolítása elkészült (%s)" + +msgid "Download" +msgstr "Letöltés" + +#, python-format +msgid "Download %s from server" +msgstr "%s letöltése a szerverről" + +msgid "Download .NFI-files for USB-flasher" +msgstr ".NFI fájlok letöltése az USB Flasherhez" + +msgid "Download plugins" +msgstr "Pluginek letöltése" + +msgid "Downloadable new plugins" +msgstr "Letölthető új pluginek" + +msgid "Downloadable plugins" +msgstr "Letölthető pluginek" + +msgid "Downloading" +msgstr "Letöltés" + +msgid "Downloading plugin information. Please wait..." +msgstr "Plugin-lista letöltése. Kérem, várjon..." + +msgid "Dutch" +msgstr "Holland" + +msgid "Dynamic contrast" +msgstr "Dinamikus kontraszt" + +msgid "E" +msgstr "K" + +msgid "EPG" +msgstr "EPG" + +msgid "EPG language selection 1" +msgstr "EPG nyelvválasztás 1." + +msgid "EPG language selection 2" +msgstr "EPG nyelvválasztás 2." + +msgid "EPG selection" +msgstr "Elektronikus műsorújság" + +msgid "EPG settings" +msgstr "EPG beállítások" + +#, python-format +msgid "ERROR - failed to scan (%s)!" +msgstr "HIBA - nem sikerült a keresés (%s)!" + +msgid "East" +msgstr "Kelet" + +msgid "East limit set" +msgstr "Keleti limit beállítás" + +msgid "Edit" +msgstr "Szerkesztés" + +msgid "Edit DNS" +msgstr "DNS módosítása" + +msgid "Edit bouquets list" +msgstr "Bouquet-listák szerkesztése" + +msgid "Edit chapters of current title" +msgstr "Aktuális cím jeleneteinek módosítása" + +msgid "Edit services list" +msgstr "Csatornalista szerkesztése" + +msgid "Edit settings" +msgstr "Beállítások módosítása" + +msgid "Edit the nameserver configuration of your receiver.\n" +msgstr "A készülék névszerver beállításainak módosítása.\n" + +msgid "Edit the network configuration of your receiver.\n" +msgstr "A készülék hálózati beállításainak módosítása.\n" + +msgid "Edit timer" +msgstr "" + +msgid "Edit title" +msgstr "Cím módosítása" + +msgid "Edit upgrade source url." +msgstr "A frissítési forrás URL-jének szerkesztése." + +msgid "Education/Science/..." +msgstr "Oktatás/Tudomány" + +msgid "Electronic Program Guide" +msgstr "Elektronikus Műsorújság" + +msgid "Enable" +msgstr "Engedélyezve" + +msgid "Enable 'neutrino' style channel select controlling" +msgstr "" + +msgid "Enable 'neutrino' style zap controlling" +msgstr "" + +msgid "Enable 5V for active antenna" +msgstr "5V kimenet az akítv antennához engedélyezve" + +msgid "Enable EIT EPG" +msgstr "EIT EPG engedélyezése" + +msgid "Enable MHW EPG" +msgstr "MHW EPG engedélyezése" + +msgid "Enable Netmed EPG" +msgstr "Netmed EPG engedélyezése" + +msgid "Enable OK for channel selection" +msgstr "" + +msgid "Enable ViaSat EPG" +msgstr "ViaSat EPG engedélyezése" + +msgid "Enable Virgin EPG" +msgstr "" + +msgid "Enable Wake On LAN" +msgstr "" + +msgid "Enable auto fast scan" +msgstr "" + +msgid "Enable bouquet selection in multi-EPG" +msgstr "Bouquet-választás lehetősége a Multi-EPG-ben" + +msgid "Enable freesat EPG" +msgstr "Freesat EPG engedélyezése" + +msgid "Enable multiple bouquets" +msgstr "Többszörös bouquetek engedélyezése" + +msgid "Enable parental control" +msgstr "Gyermekzár engedélyezése" + +msgid "Enable teletext caching" +msgstr "Teletext gyorsítótárazása" + +msgid "Enable zapping with CH+/-, B+/-, P+/-" +msgstr "" + +msgid "Enabled" +msgstr "Engedélyezve" + +msgid "Encrypted: " +msgstr "Kódolva: " + +msgid "Encryption" +msgstr "Kódolás" + +msgid "Encryption key" +msgstr "Kódolási kulcs" + +msgid "Encryption key type" +msgstr "Kódolási kulcstípus" + +msgid "Encryption:" +msgstr "Kódolás:" + +msgid "End time" +msgstr "Vége időpont" + +msgid "End time to ignore inactivity sleeptimer" +msgstr "Inaktivitás figyelmen kívül hagyása eddig:" + +msgid "End time to ignore shutdown in standby" +msgstr "" + +msgid "English" +msgstr "Angol" + +msgid "Enigma2 skin selector" +msgstr "enigma2 és hálózat" + +msgid "Enter main menu..." +msgstr "Belépés a főmenübe..." + +msgid "Enter pin code" +msgstr "PIN-Kód:" + +msgid "Enter the service pin" +msgstr "Adja meg a csatornavédelem PIN kódját" + +msgid "Equal to" +msgstr "" + +msgid "Error" +msgstr "Hiba" + +msgid "Error code" +msgstr "Hibakód" + +msgid "Error executing plugin" +msgstr "Plugin indítási hiba" + +#, python-format +msgid "" +"Error: %s\n" +"Retry?" +msgstr "" +"Hiba? %s\n" +"Próbáljam újra?" + +msgid "Estonian" +msgstr "Észt" + +msgid "Ethernet network interface" +msgstr "Ethernet hálózati interfész" + +msgid "Event font size (relative to skin size)" +msgstr "Esemény betűméret (skin-hez relatív)" + +msgid "Event view" +msgstr "Eseménynézet" + +msgid "Event view menu" +msgstr "Esemény-nézet menü" + +msgid "Everywhere" +msgstr "mindenhonnan" + +msgid "Exceeds dual layer medium!" +msgstr "Meghaladja a kétrétegű hordozó kapacitását!" + +msgid "Execution finished!!" +msgstr "Végrehajtás befejezve!" + +msgid "Execution progress:" +msgstr "Végrehajtási állapot:" + +msgid "Exif" +msgstr "Exif" + +msgid "Exit" +msgstr "Kilépés" + +msgid "Exit EPG" +msgstr "Kilépés az EPG-ből" + +msgid "Exit editor" +msgstr "Kilépés a szerkesztőből" + +msgid "Exit input device selection." +msgstr "Kilépés a bemeneti eszközválasztásból." + +msgid "Exit media player?" +msgstr "Kilépés a médialejátszóból?" + +msgid "Exit mediaplayer" +msgstr "kilépés a mediaplayerből" + +msgid "Exit movie list" +msgstr "Kilépés a fájl-listából" + +msgid "Exit movie player?" +msgstr "kilépés a mediaplayerből" + +msgid "Exit nameserver configuration" +msgstr "kliépés a névszerver beállításaiból" + +msgid "Exit network interface list" +msgstr "kliépés a hálózati interfészek listájából" + +msgid "Exit network wizard" +msgstr "Kilépés a Hálózati Varázslóból" + +msgid "Exit the wizard" +msgstr "Kilépés a Varázslóból" + +msgid "Expert" +msgstr "Haladó" + +msgid "Extend sleeptimer 15 minutes" +msgstr "Elalvás időzítése 15 perccel későbbre" + +msgid "Extended Software" +msgstr "Bővített Szoftver" + +msgid "Extended Software Plugin" +msgstr "Bővített Szoftver Plugin" + +msgid "Extended network setup plugin..." +msgstr "Bővített hálózati beállítások Plugin..." + +msgid "Extended setup..." +msgstr "Bővített beállítások..." + +msgid "Extensions" +msgstr "Bővítmények" + +msgid "Extensions management" +msgstr "Bővítmények kezelése" + +msgid "External PiP" +msgstr "" + +msgid "External subtitle color" +msgstr "Külső feliratok szine" + +msgid "Extra motor options" +msgstr "" + +msgid "FEC" +msgstr "FEC" + +msgid "FTA" +msgstr "FTA" + +msgid "Factory reset" +msgstr "Gyári alapbeállítások" + +msgid "Failed" +msgstr "Sikertelen" + +msgid "Failed to write /tmp/positionersetup.log: " +msgstr "Írási hiba a /tmp/positionersetup.log-ba: " + +#, python-format +msgid "Fan %d" +msgstr "%d. Vent." + +#, python-format +msgid "Fan %d PWM" +msgstr "%d. Ventilátor PWM" + +#, python-format +msgid "Fan %d voltage" +msgstr "%d. Ventilátor tápfeszültség" + +msgid "Fan operation" +msgstr "" + +msgid "Fan speed" +msgstr "" + +msgid "Fast" +msgstr "Gyors" + +msgid "Fast DiSEqC" +msgstr "Gyors DiSEqC" + +msgid "Fast Scan" +msgstr "Szolgáltatói keresés" + +msgid "Fast epoch" +msgstr "Gyors korszak" + +msgid "Fast forward speeds" +msgstr "Előre-tekerési sebességek" + +msgid "Favourites" +msgstr "Kedvencek" + +msgid "File appears to be busy.\n" +msgstr "A fájl használatban van.\n" + +msgid "Filesystem check" +msgstr "Fájlrendszer ellenőrzése" + +msgid "Final position at" +msgstr "Végleges pozíció" + +msgid "Final position at index" +msgstr "Végleges pozíció indexe" + +msgid "Fine movement" +msgstr "Finom mozgatás" + +msgid "Finetune" +msgstr "Finomhangolás" + +msgid "Finished" +msgstr "Kész" + +msgid "Finished configuring your network" +msgstr "A hálózati beállítás befejeződött" + +msgid "Finished restarting your network" +msgstr "A hálózati kapcsolat újraindítása befejeződött" + +msgid "Finnish" +msgstr "Finn" + +msgid "Fixed" +msgstr "fix" + +msgid "Flash" +msgstr "Flash" + +msgid "Flashing failed" +msgstr "Flashelés sikertelen" + +msgid "Following tasks will be done after you press OK!" +msgstr "Végrehajtás az OK gomb lenyomása után történik" + +msgid "Format" +msgstr "Formázás" + +msgid "Forward volume keys" +msgstr "Hangerőszabályzás továbbítása" + +msgid "Frame size in full view" +msgstr "Képméret teljesképernyő nézetbe" + +msgid "French" +msgstr "Francia" + +msgid "Frequency" +msgstr "Frekvencia" + +msgid "Frequency bands" +msgstr "Frekvencia sávok" + +msgid "Frequency scan step size(khz)" +msgstr "Frekvencia léptetés mérete (kHz)" + +msgid "Frequency steps" +msgstr "Frekvencia lépések" + +msgid "Frequency:" +msgstr "Frekvencia:" + +msgid "Fri" +msgstr "Pén" + +msgid "Friday" +msgstr "Péntek" + +msgid "From :" +msgstr "Innen" + +#, python-format +msgid "Frontprocessor version: %d" +msgstr "Főprocesszor verziója: %d" + +msgid "Full transparency" +msgstr "Teljesen áttetsző" + +msgid "Fulview resulution" +msgstr "Teljes képernyő felbontás" + +msgid "Function of OK button" +msgstr "Az OK gomb funkciója" + +msgid "Further Options" +msgstr "" + +msgid "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" +msgstr "" +"Az új skin betöltéséhez újra kell indítani a kezelő felületet.\n" +"Megtörténhet ez most azonnal?" + +msgid "Gateway" +msgstr "Átjáró IP címe" + +msgid "General AC3 delay" +msgstr "Általános AC3 késleltetés" + +msgid "General PCM delay" +msgstr "Általános PCM késleltetés" + +msgid "Genre" +msgstr "Zsáner" + +msgid "German" +msgstr "Német" + +msgid "Get latest experimental image" +msgstr "A legújabb kísérleti image megszerzése" + +msgid "Get latest release image" +msgstr "A legújabb hivatalos image megszerzése" + +msgid "Getting plugin information. Please wait..." +msgstr "Plugin-lista letöltése. Kérem, várjon..." + +msgid "Go down the list" +msgstr "A listán lefelé" + +msgid "Go to first movie or last item" +msgstr "Az első filmre vagy utolsó elemre ugrás" + +msgid "Go to first movie or top of list" +msgstr "Az első filmre vagy első elemre ugrás" + +msgid "Go to first service" +msgstr "Ugrás az első csatornára" + +msgid "Go to last service" +msgstr "Ugrás az utolsó csatornára" + +msgid "Go to next event" +msgstr "Ugrás a következő eseményre" + +msgid "Go to next page of service" +msgstr "Ugrás a következő csatornalapra" + +msgid "Go to previous event" +msgstr "Ugrás az előző eseményre" + +msgid "Go to previous page of service" +msgstr "Ugrás az előző csatornalapra" + +msgid "Go up the list" +msgstr "A listán felfelé" + +msgid "Goto" +msgstr "Menj" + +msgid "Goto 0" +msgstr "0-ra" + +msgid "Goto :" +msgstr "Ide:" + +msgid "Goto X" +msgstr "Goto X" + +msgid "Goto index position" +msgstr "Ugrás az indexre" + +msgid "Goto next day of events" +msgstr "Következő napra" + +msgid "Goto next page of events" +msgstr "Ugrás a következő eseménylapra" + +msgid "Goto position" +msgstr "Pozícióra ugrás" + +msgid "Goto previous day of events" +msgstr "Előző napra" + +msgid "Goto previous page of events" +msgstr "Ugrás az előző eseménylapra" + +msgid "Goto specific date/time" +msgstr "" + +msgid "GotoX calibration" +msgstr "'Goto X' kalibrálása" + +msgid "GraphMultiEpg Settings" +msgstr "Grafikus EPG beállítások" + +msgid "Graphical Multi EPG" +msgstr "Grafikus multi EPG" + +msgid "Greek" +msgstr "Görög" + +msgid "Green boost" +msgstr "Zöld erősítés" + +msgid "Guard interval" +msgstr "Védelmi intervallum" + +msgid "HD list" +msgstr "HD csatornák" + +msgid "HDMI-CEC setup" +msgstr "" + +msgid "Handle standby from TV" +msgstr "Készenlét fogadása a TV-től" + +msgid "Handle wakeup from TV" +msgstr "Bekapcsolás fogadása a TV-től" + +msgid "Hard disk" +msgstr "Háttértár" + +msgid "Hard disk setup" +msgstr "Háttértár beállítások" + +msgid "Hard disk standby after" +msgstr "Merevlemez leállítása megadott idö után" + +msgid "Harddisk" +msgstr "Háttértár" + +msgid "Hardware: " +msgstr "Hardver: " + +msgid "Hebrew" +msgstr "Héber" + +msgid "Helps setting up your dish" +msgstr "Segítség az antenna beállításhoz" + +msgid "Hidden network" +msgstr "Rejtett hálózat" + +msgid "Hide CI messages" +msgstr "CI-üzenetek elrejtése" + +msgid "Hide channel list in radio mode" +msgstr "A csatornalista elrejtése rádió módban" + +msgid "Hide known extensions" +msgstr "Ismert fájlkiterjesztések elrejtése" + +msgid "Hide number markers" +msgstr "Sorszámozott elválasztók elrejtése" + +msgid "Hide player" +msgstr "lejátszó elrejtése" + +msgid "Hide zap errors" +msgstr "Csatornaváltási hibák elrejtése" + +msgid "Hierarchy info" +msgstr "Hierarchikus mód" + +msgid "Hierarchy information" +msgstr "Hierarchia információk" + +msgid "High bitrate support" +msgstr "Magas bitráta támogatása" + +msgid "Hold screen" +msgstr "Képernyő megtartás" + +msgid "Hold till locked" +msgstr "Megtartás hangolásig" + +msgid "Home" +msgstr "Haza" + +msgid "Horizontal" +msgstr "Horrizontális" + +msgid "Horizontal turning speed" +msgstr "Horrizontális fordulási sebesség" + +msgid "How many minutes do you want to record?" +msgstr "Hány percet szeretne felvenni?" + +msgid "Hue" +msgstr "Színárnyalat" + +msgid "Hungarian" +msgstr "Magyar" + +msgid "IP address" +msgstr "IP cím" + +msgid "ISO file is too large for this filesystem!" +msgstr "Az ISO fájl túl nagy ehhez a fájlrendszerhez!" + +msgid "ISO path" +msgstr "ISO útvonala" + +msgid "Icons" +msgstr "Ikonok" + +msgid "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." +msgstr "" +"Ha ezt látja, akkor valami nem stimmel a\n" +"scart csatlakozással. OK-val visszaléphet." + +msgid "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." +msgstr "" +"Amennyiben a TV készülékében van fényerő vagy kontraszt javító opció, akkor azt kérem kapcsolja ki. Ha van valamilyen speciális beállítás mint pl. \"dinamikus\" vagy hasonló, azt állítsa alaphelyzetbe. Állítsa be a háttérfény erejét az Önnek megfelelő erősségüre. Vegye le a kontrasztot a TV készüléken amennyire csak lehetséges.\n" +"Majd vegye le a fényerőt olyan alacsonyra amennyire csak lehetséges, de figyelje a két legalsó szürke csíkot, hogy azok éppen megkülönböztethetőek legyenek.\n" +"Most ne törődjön a fényes csíkokkal. Ezeket a következő lépésben fogjuk beállítani.\n" +"Amennyiben az eredmény megfelelő, nyomja meg az OK gombot." + +msgid "Image: " +msgstr "Image: " + +msgid "Immediate shutdown" +msgstr "azonnali kikapcsolás" + +msgid "In order to record a timer, the TV was switched to the recording service!\n" +msgstr "Az időzítés esedékessége miatt átkapcsoltam a beprogramozott csatornára!\n" + +msgid "In progress" +msgstr "Folyamatban" + +msgid "Inactivity Sleeptimer" +msgstr "Elalvás inaktivitás miatt" + +msgid "Include AIT in http streams" +msgstr "Legyen AIT a HTTP jelfolyamba" + +msgid "Include ECM in http streams" +msgstr "Legyen ECM a HTTP jelfolyamba" + +msgid "Include EIT in http streams" +msgstr "Legyen EIT a HTTP jelfolyamba" + +msgid "Incorrect type service for PiP!" +msgstr "" + +msgid "Increased voltage" +msgstr "Magasabb feszültség" + +msgid "Index" +msgstr "Index" + +msgid "Index allocated:" +msgstr "Hozzárendelt index:" + +msgid "Info" +msgstr "Információ" + +msgid "Info bar" +msgstr "Információs sáv" + +msgid "Info bar timeout" +msgstr "Információs sáv megjelenítési ideje" + +msgid "Infobar frontend data source" +msgstr "" + +msgid "Information" +msgstr "Információk" + +msgid "Init" +msgstr "Inicializálás" + +msgid "Initial fast forward speed" +msgstr "Kezdeti előre-tekerési sebesség" + +msgid "Initial location in new timers" +msgstr "Kezdeti hely, az új időzítők esetén" + +msgid "Initial lock ratio" +msgstr "Kezdeti hangolási arány" + +msgid "Initial rewind speed" +msgstr "Kezdeti vissza-tekerési sebesség" + +msgid "Initial signal quality" +msgstr "Eredeti jelminőség" + +msgid "Initial signal quality:" +msgstr "Eredeti jelminőség:" + +msgid "Initialization" +msgstr "Inicializálás" + +msgid "Initialize" +msgstr "Inicializál" + +msgid "Initializing storage device..." +msgstr "Háttértár inicializálása..." + +msgid "Input" +msgstr "Bevitel" + +msgid "Input device setup" +msgstr "Beviteli eszközök beállítása" + +msgid "Input devices" +msgstr "Beviteli eszközök" + +msgid "Install" +msgstr "Telepítés" + +msgid "Install a new image with a USB stick" +msgstr "Új image telepítése USB meghajtóról" + +msgid "Install a new image with your web browser" +msgstr "Új image telepítése webes felületről" + +msgid "Install channel list" +msgstr "Köv. csatorna az előzményekben" + +msgid "Install extensions" +msgstr "" + +msgid "Install extensions." +msgstr "Bővítmények telepítése." + +msgid "Install local extension" +msgstr "Helyi bővítmények telepítése" + +msgid "Install picons on" +msgstr "Pikonok telepítése ide:" + +msgid "Install softcam" +msgstr "Szoftver telepítése..." + +msgid "Installation has completed." +msgstr "Számítás kész" + +msgid "Installation or removal has completed." +msgstr "A telepítés vagy eltávolítás befejeződött." + +msgid "Installing" +msgstr "Telepítés" + +msgid "Installing software..." +msgstr "Szoftver telepítése..." + +msgid "Instant recording location" +msgstr "Azonnali felvételek:" + +msgid "Instant recording..." +msgstr "Felvétel azonnali indítása..." + +msgid "Interface: " +msgstr "Interfész: " + +msgid "Intermediate" +msgstr "Középfokú" + +msgid "Internal flash" +msgstr "Belső Flash" + +msgid "Internal hdd only" +msgstr "csak a belső háttértárról" + +msgid "Interval between keys when repeating:" +msgstr "Billentyű-ismétlés időköze:" + +#, python-format +msgid "Invalid directory selected: %s" +msgstr "A kiválasztott mappa érvénytelen: %s" + +msgid "Invalid location" +msgstr "Érvénytelen hely" + +msgid "Invalid transponder data" +msgstr "" + +msgid "Inversion" +msgstr "Invertálás" + +msgid "Invert" +msgstr "Invertálás" + +msgid "Ipkg" +msgstr "Ipkg" + +msgid "Is this setting ok?" +msgstr "Ezen beállítások használata?" + +msgid "Is this video mode ok?" +msgstr "Megfelelő ez a videómód?" + +msgid "Italian" +msgstr "Olasz" + +msgid "Items per page " +msgstr "elem oldalanként" + +msgid "Items per page for list screen" +msgstr "Elemek oldalanként Listanézetben" + +msgid "Job overview" +msgstr "Folyamat nézet" + +msgid "Jump to beginning of list" +msgstr "Ugrás a lista elejére" + +msgid "Jump to end of list" +msgstr "ugrás a lista végére" + +msgid "Jump to next marked position" +msgstr "ugrás a következő megjelölt ponthoz" + +msgid "Jump to previous marked position" +msgstr "ugrás az előző megjelölt ponthoz" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect) +msgid "Just scale" +msgstr "Skálázás (nyújtás)" + +msgid "Keep service" +msgstr "" + +msgid "Kernel version: " +msgstr "Kernel verzió: " + +msgid "Keyboard" +msgstr "Billentyűzet" + +msgid "Keyboard map" +msgstr "Billentyűkiozsztás" + +msgid "Keyboard setup" +msgstr "Billentyűzet beállítása" + +msgid "LAN adapter" +msgstr "Hálózati adapter" + +msgid "LAN connection" +msgstr "Helyi privát" + +msgid "LNB" +msgstr "Fej" + +msgid "Language" +msgstr "Kezelő felület nyelve" + +msgid "Language selection" +msgstr "Nyelvválasztás" + +msgid "Last config" +msgstr "Utolsó konfiguráció" + +msgid "Last speed" +msgstr "Utolsó sebesség" + +msgid "Last upgrade: " +msgstr "Utolsó frissítés: " + +msgid "Latest Commits" +msgstr "" + +msgid "Latitude" +msgstr "Földrajzi szélességi fok" + +msgid "Latvian" +msgstr "Lett" + +msgid "Leave DVD player?" +msgstr "Kilépés a DVD lejátszóból?" + +msgid "Left" +msgstr "Bal" + +msgid "Left from servicename" +msgstr "A csatornanév bal oldalán" + +msgid "Leisure hobbies" +msgstr "Pihenés/Hobby" + +#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term. +msgid "Letterbox" +msgstr "Letterbox (fekete csíkok alul/felül)" + +msgid "Letterbox zoom" +msgstr "Letterbox zoom" + +msgid "Limit character set for recording filenames" +msgstr "Korlátozott betűkészlet a felvételek fájlneveiben" + +msgid "Limit east" +msgstr "Keleti limit" + +msgid "Limit the characters that can be used in recording filenames to (7 bit) ascii. This ensures compatibility with operating systems or file systems with limited character sets." +msgstr "A fájlnevekben használt karaktertábla (7 bites) ASCII-re legyen korlátozva. Ezáltal a kompatibilitás garantált olyan operációs rendszerekkel is, melyekben limitált a karakterkészlet." + +msgid "Limit west" +msgstr "Nyugati limit" + +msgid "Limits cancelled" +msgstr "Limitek felfüggesztve" + +msgid "Limits enabled" +msgstr "Limitek érvényben" + +msgid "Limits off" +msgstr "Limitek kikapcsolva" + +msgid "Limits on" +msgstr "Limitek bekapcsolva" + +msgid "Link quality:" +msgstr "Kapcsolat minősége:" + +msgid "Link:" +msgstr "Kapcsolat:" + +msgid "Linked titles with a DVD menu" +msgstr "DVD menüvel linkelt címek" + +msgid "List EPG functions..." +msgstr "EPG-nézetek listája..." + +msgid "List available networks" +msgstr "Elérhető hálózatok listázása" + +msgid "List mode" +msgstr "Listázás módja" + +msgid "List of storage devices" +msgstr "Tárolóeszközök listája" + +msgid "List type" +msgstr "Típuslista" + +#, python-format +msgid "List version %d, found %d channel" +msgid_plural "List version %d, found %d channels" +msgstr[0] "%d listaverzió, %d csatornát találtam" +msgstr[1] "%d listaverzió, %d csatornát találtam" + +msgid "Listen to the radio..." +msgstr "Rádiólista megnyitása..." + +msgid "Lists reloaded!" +msgstr "" + +msgid "Lithuanian" +msgstr "Litván" + +msgid "Load" +msgstr "Betöltés" + +msgid "Load Length of Movies in Movielist" +msgstr "Filmek hosszának betöltése a filmlistában" + +msgid "Load length of movies in movie list" +msgstr "Filmek hosszának betöltése a filmlistában" + +msgid "Load playlist" +msgstr "playlista betöltése" + +msgid "Local network" +msgstr "Helyi hálózat" + +msgid "Location" +msgstr "Tárhely" + +msgid "Location for instant recordings" +msgstr "Azonnali felvételek helye" + +msgid "Lock ratio" +msgstr "Hangolási arány" + +msgid "Lock:" +msgstr "Hangolás:" + +msgid "Log results to harddisk" +msgstr "Eredmények naplózása háttértárra" + +msgid "Long filenames" +msgstr "Hosszú fájlnevek" + +msgid "Long key press" +msgstr "Hosszú gombnyomás" + +msgid "Longitude" +msgstr "Földrajzi hosszúsági fok" + +msgid "Loop through to" +msgstr "" + +msgid "Luxembourgish" +msgstr "Luxemburgi" + +msgid "MMC card" +msgstr "MMC kártya" + +msgid "MORE" +msgstr "MÉG" + +msgid "Main menu" +msgstr "Főmenü" + +msgid "Maintain old EPG data for" +msgstr "Múlt EPG adat tárolás eddig:" + +msgid "Make this mark an 'in' point" +msgstr "Legyen ez a kezdési pont" + +msgid "Make this mark an 'out' point" +msgstr "Legyen ez a vége pont" + +msgid "Make this mark just a mark" +msgstr "Legyen ez csak egy jelölőpont" + +msgid "Manage extensions" +msgstr "Bővítmények kezelése" + +msgid "Manage your receiver's software" +msgstr "A készülék szoftverének kezelése" + +msgid "Manual" +msgstr "" + +msgid "Manual Scan" +msgstr "Kézi keresés" + +msgid "Manual configuration" +msgstr "Kézi konfiguráció" + +msgid "Manual scan" +msgstr "Kézi keresés" + +msgid "Manual transponder" +msgstr "Kézi transzponder" + +msgid "Manufacturer" +msgstr "Gyártó" + +msgid "Margin after recording (minutes)" +msgstr "Felvétel utáni ráhagyás (perc)" + +msgid "Margin before recording (minutes)" +msgstr "Felvétel előtti ráhagyás (perc)" + +msgid "Max memory positions" +msgstr "" + +msgid "Max. bitrate: " +msgstr "Max. Bitráta: " + +msgid "Media player" +msgstr "Médialejátszó" + +msgid "Media scanner" +msgstr "Médialejátszó" + +msgid "Medium is not a writeable DVD!" +msgstr "A hordozó nem írható DVD" + +msgid "Medium is not empty!" +msgstr "A hordozó nem üres!" + +msgid "Memory" +msgstr "Memória" + +msgid "Memory index" +msgstr "Memóriaindex" + +msgid "Menu" +msgstr "Menü" + +msgid "Message" +msgstr "Üzenet" + +msgid "Message..." +msgstr "Üzenet..." + +#, python-format +msgid "Minimum age %d years" +msgstr "Minimális korhatár %d év" + +msgid "Minimum send interval" +msgstr "Minimális ismétlési időköz" + +msgid "Missing " +msgstr "Hiányzó" + +msgctxt "Satellite configuration mode" +msgid "Mode" +msgstr "Mód" + +msgctxt "Video output mode" +msgid "Mode" +msgstr "Felbontás" + +msgid "Model: " +msgstr "Modell:" + +msgid "Modulation" +msgstr "Moduláció" + +msgid "Modulator" +msgstr "Modulátor" + +msgid "Mon" +msgstr "Hét" + +msgid "Mon-Fri" +msgstr "Hétfőtől péntekig" + +msgid "Monday" +msgstr "Hétfő" + +msgid "Mosquito noise reduction" +msgstr "Hangya-zajcsökkentés" + +msgid "Mount" +msgstr "Csatlakozás" + +msgid "Move" +msgstr "Áthelyezés" + +msgid "Move PiP to main picture" +msgstr "Kép-a-Képben váltása a főképre" + +msgid "Move Picture in Picture" +msgstr "Kép-A-Képben mozgatása" + +msgid "Move east" +msgstr "Kelet felé" + +msgid "Move to other directory" +msgstr "Áthelyezés másik mappába" + +msgid "Move to position X" +msgstr "Mozgatás az X pozícióra" + +msgid "Move west" +msgstr "Nyugat felé" + +msgid "Moved to position 0" +msgstr "Mozgatás a 0-ra" + +msgid "Moved to position at index" +msgstr "Mozgatás sorszámra" + +msgid "Movement" +msgstr "Mozgás" + +msgid "Movie List Configuration" +msgstr "Fájllista konfigurációja" + +msgid "Movie Selection" +msgstr "Film választása" + +msgid "Movie list configuration" +msgstr "Fájllista konfigurációja" + +msgid "Movie location" +msgstr "Fájlok tárhelye" + +msgid "Movie selection" +msgstr "Filmválasztás" + +msgid "Movie/Drama" +msgstr "Mozi/Színház" + +msgid "Movielist menu" +msgstr "Fájllista menü" + +msgid "Moving" +msgstr "Mozgatás" + +msgid "Moving east ..." +msgstr "Mozgatás kelet felé..." + +msgid "Moving to position" +msgstr "Mozgatás erre: " + +msgid "Moving west ..." +msgstr "Mozgatás nyugat felé..." + +msgid "Multi EPG" +msgstr "Multi EPG" + +msgid "Multi-EPG bouquet selection" +msgstr "Multi-EPG bouquet-választás" + +msgid "Multimedia" +msgstr "Multimédia" + +msgid "Multiple service support" +msgstr "Több csatorna támogatása" + +msgid "Multiplex" +msgstr "Multiplex" + +msgid "Multisat" +msgstr "Több műholdat" + +msgid "Multisat all select" +msgstr "" + +msgid "Music/Ballet/Dance" +msgstr "Zene/Balett/Tánc" + +msgid "Mute" +msgstr "Némítás" + +msgid "N/A" +msgstr "N/A" + +msgid "NEXT" +msgstr "KÖVETKEZŐ" + +msgid "NFI image flashing" +msgstr "NFI Image Flash-elés" + +msgid "NFI image flashing completed. Press Yellow to Reboot!" +msgstr "NFI image flashelése megörtént. Nyomja meg a Sárga gombot az újraindításhoz!" + +msgid "NIM" +msgstr "NIM" + +msgid "NOW" +msgstr "MOST" + +msgid "NTSC" +msgstr "NTSC" + +msgid "Name" +msgstr "Név" + +msgid "Nameserver" +msgstr "Névszerver" + +#, python-format +msgid "Nameserver %d" +msgstr "Névszerver %d" + +msgid "Nameserver settings" +msgstr "Névszerver beállítások" + +msgid "Nameserver setup" +msgstr "Névszerver beállítások" + +msgid "Namespace" +msgstr "Névköz" + +msgid "Netmask" +msgstr "Alhál. maszk" + +msgid "Network" +msgstr "Hálózat" + +msgid "Network ID" +msgstr "Hálózat ID" + +msgid "Network configuration..." +msgstr "Hálózati beállítások..." + +msgid "Network mount" +msgstr "Hálózat felépítése" + +#, python-format +msgid "Network mount %s" +msgstr "Hálózati csatlakozás %s" + +msgid "Network name (SSID)" +msgstr "Hálózatnév (SSID)" + +msgid "Network scan" +msgstr "Hálózat keresése" + +msgid "Network setup" +msgstr "Hálózati beállítások" + +msgid "Network test" +msgstr "Hálózat ellenőrzése" + +msgid "Network test..." +msgstr "Hálózat ellenőrzése..." + +msgid "Network test: " +msgstr "Hálózat Varázsló" + +msgid "Network wizard" +msgstr "Hálózati Varázsló" + +msgid "Network:" +msgstr "Hálózat:" + +msgid "New" +msgstr "Új" + +msgid "New PIN" +msgstr "Új PIN" + +msgid "New version:" +msgstr "Új verzió:" + +msgid "News Current Affairs" +msgstr "Hírek/Gazdaság" + +msgctxt "button label, 'next screen'" +msgid "Next" +msgstr "Következő" + +msgctxt "now/next: 'next' event label" +msgid "Next" +msgstr "Következik" + +msgid "No" +msgstr "Nem" + +msgid "No (supported) DVDROM found!" +msgstr "Nincs (támogatott) DVD ROM!" + +msgid "No Connection" +msgstr "Nincs kapcsolat" + +msgid "No HDD found or HDD not initialized!" +msgstr "Nem észlelhető háttértár, vagy az nem lett inicializálva!" + +msgid "No backup needed" +msgstr "Nincs mentésre szükség" + +msgid "No cable tuner found!" +msgstr "Nem található kábeltuner!" + +msgid "" +"No data on transponder!\n" +"(Timeout reading PAT)" +msgstr "" +"Nincs adat a transzponderen!\n" +"(PAT olvasási időtúllépés)" + +msgid "No delay" +msgstr "nincs késleltetés" + +msgid "No description available." +msgstr "Nincs elérhető leírás" + +msgid "No details for this image file" +msgstr "Ehhez az image fájlhoz nincs leírás" + +msgid "No displayable files on this medium found!" +msgstr "A hordozón nem található lejátszható fájl!" + +msgid "No event info found, recording indefinitely." +msgstr "Nincs esemény infó, felvétel korlátlanul." + +msgid "No fast winding possible yet.. but you can use the number buttons to skip forward/backward!" +msgstr "Gyorscsévélési lehetőség nincs még... de a szám-gombokkal lehet ugranni előre vagy hátra!" + +msgid "No free index available" +msgstr "Nincs szabad index" + +msgid "No free tuner!" +msgstr "Nincs szabad tuner!" + +msgid "No network connection available." +msgstr "Nincs elérhető hálózati kapcsolat." + +msgid "No networks found" +msgstr "Nem észlelhető hálózat" + +msgid "No new plugins found" +msgstr "Nincsenek új plug-in-ek" + +msgid "No positioner capable frontend found." +msgstr "Nem találtam forgatómotort támogató tunert." + +msgid "No satellites configured. Plese check your tuner setup." +msgstr "" + +msgid "No service" +msgstr "Nincs csatorna" + +msgid "No services/providers selected" +msgstr "nincs szolgáltató kiválasztva" + +msgid "No standby" +msgstr "Nincs kikapcsolás" + +msgid "No suitable sat tuner found!" +msgstr "Nincs megfelelő sat tuner!" + +msgid "No tags are set on these movies." +msgstr "Ezeknek a felvételekre nincsenek metaadataik." + +msgid "No timeout" +msgstr "Nincs timeout" + +msgid "No to all" +msgstr "Mindenre NEM" + +msgid "No transparency" +msgstr "Áttetszőség" + +msgid "No tuner is configured for use with a diseqc positioner!" +msgstr "Az egyik tuner sincs beállítva DiSEqC forgatómotorra!" + +msgid "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Nincs engedélyezett tuner!\n" +"Csatornakeresés előtt állítsa be a tunereket." + +msgid "No updates available" +msgstr "Nincs elérhető frissítés" + +msgid "No updates available. Please try again later." +msgstr "Nincs elérhető frissítés. Kérem, próbálja meg később." + +msgid "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" +msgstr "" +"Nem találtam érvényes csatornavédelem PIN kódot!\n" +"Meg szeretné most változtatni a csatornavédelem PIN kódot?\n" +"Ha 'Nem'-el válaszol, akkor a csatornavédelem kikapcsolva marad!" + +msgid "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" +msgstr "" +"Nem találtam érvényes menüvédelmi PIN kódot!\n" +"Meg szeretné most változtatni a menüvédelmi PIN kódot?\n" +"Ha 'Nem'-el válaszol, akkor a menüvédelem kikapcsolva marad!" + +msgid "No wireless networks found! Searching..." +msgstr "Nem észlelhető vezeték nélküli hálózat! Keresés..." + +msgid "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." +msgstr "" +"Nem található egyetlen működőképes helyi hálózati illesztő sem.\n" +"Kérem, ellenőrizze, hogy a hálózati kábel csatlakoztatva van, és a hálózati paraméterek megfelelően be vannak állítva." + +msgid "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." +msgstr "" +"Nem található egyetlen működőképes vezeték nélküli hálózati illesztő sem.\n" +"Kérem, ellenőrizze, hogy egy kompatibilis vezeték nélküli hálózati illesztő csatlakoztatva van, és a hálózati paraméterek megfelelően be vannak állítva." + +msgid "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." +msgstr "" +"Nem található egyetlen működőképes vezeték nélküli hálózati illesztő sem.\n" +"Kérem, ellenőrizze, hogy egy kompatibilis vezeték nélküli hálózati illesztő csatlakoztatva van, és a hálózati paraméterek megfelelően be vannak állítva." + +msgid "No, but restart from begin" +msgstr "Nem, de indítsa elölröl" + +msgid "No, do nothing." +msgstr "Nem, ne csináljon semmit." + +msgid "No, just start my receiver" +msgstr "Nem, csak indítsa el a készüléket" + +msgid "No, never" +msgstr "Nem, soha" + +msgid "None" +msgstr "nincs" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right) +msgid "Nonlinear" +msgstr "Nem-lineáris (szélek széthúzása)" + +msgid "Normal mode" +msgstr "Hagyományos mód" + +msgid "North" +msgstr "Észak" + +msgid "Norwegian" +msgstr "Norvég" + +msgid "Not associated" +msgstr "Nem-csatlakozott" + +msgid "Not configured" +msgstr "" + +#, python-format +msgid "Not enough disk space. Please free up some disk space and try again. (%d MB required, %d MB available)" +msgstr "Nincs elég tárhely. Kérem, szabadítson fel némi helyet és próbálja meg újra. (%d MB területre lenne szükség, %d MB hely szabad jelenleg)" + +msgid "Nothing connected" +msgstr "" + +msgid "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Nincs mit lekeresni!\n" +"Elöbb állítsa be a tunert mielött elindítja a keresést." + +msgctxt "now/next: 'now' event label" +msgid "Now" +msgstr "Most" + +msgid "Now playing" +msgstr "Most " + +msgid "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." +msgstr "Most a kontraszt beállító funkció segítségével állítsa be a háttér világosságát a lehető legmagasabb értékre, de arra ügyeljen hogy a két világosság csík között lásson különbséget. Ha készen van, nyomja meg az OK gombot." + +msgid "OK" +msgstr "OK" + +msgid "OK, guide me through the upgrade process" +msgstr "OK, vezessen végig a frissítési folyamaton" + +msgid "ONID" +msgstr "ONID" + +msgid "OSD name request" +msgstr "OSD név kérés" + +msgid "OSD settings" +msgstr "OSD beállítások" + +msgid "OSD transparency" +msgstr "OSD áttetszőség" + +msgid "Off" +msgstr "Ki" + +msgid "Offline decode delay (ms)" +msgstr "Offline dekódolási késleltetés (ms)" + +msgid "Ok" +msgstr "OK" + +msgid "On" +msgstr "Be" + +msgid "On end of movie" +msgstr "Film végén" + +msgid "On end of movie (as menu)" +msgstr "" + +msgid "One" +msgstr "Egy" + +msgid "Only extensions." +msgstr "Csak bővítmények!" + +msgid "Only free scan" +msgstr "Csak FTA keresés" + +msgid "Open service list" +msgstr "Csatornalista megnyitása" + +msgid "Open the movie list" +msgstr "Visszatérés a felvételek listájához" + +msgid "Orbital position" +msgstr "Orbitális pozíció" + +msgid "Original" +msgstr "eredeti" + +msgid "Other" +msgstr "Más" + +msgid "Output" +msgstr "Kimenet" + +msgid "Overwrite configuration files during software upgrade?" +msgstr "Konfigurációs fájlok felülírása szoftverfrissítése alkalmával?" + +msgid "Overwrite configuration files?" +msgstr "Konfigurációs fájlok felülírása?" + +msgid "PAL" +msgstr "PAL" + +msgid "PCR PID" +msgstr "PCR PID" + +msgid "PIDs" +msgstr "PID-ek" + +msgid "PIN code needed" +msgstr "PIN-kód szükséges" + +msgid "PLP ID" +msgstr "PLP ID" + +msgid "PMT PID" +msgstr "PMT PID" + +msgid "Package list update" +msgstr "Csomaglista frissítés" + +msgid "Packet management" +msgstr "Szoftvercsomag-kezelő" + +msgid "Packet manager" +msgstr "Szoftvercsomag-kezelő" + +#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term +msgid "Pan&scan" +msgstr "Pan&Scan (belenagyítva)" + +msgid "Parent directory" +msgstr "Szülő mappa" + +msgid "Parental control" +msgstr "Gyermekzár" + +msgid "Parental control services editor" +msgstr "Csatorna editor gyermekzárja" + +msgid "Parental control setup" +msgstr "Gyermekzár beállítások" + +msgid "Parental control type" +msgstr "Gyermekzár típusa" + +msgid "Password" +msgstr "Jelszó" + +msgid "Pause" +msgstr "Szünet" + +msgid "Pause movie at end" +msgstr "Film megállítása a végén" + +msgid "Pause playback" +msgstr "Lejátszás folytatása" + +msgid "Pauze/Continue playback" +msgstr "" + +msgid "Percentage left" +msgstr "Százalék hátra" + +msgid "Percentage right" +msgstr "Forgó jobbos" + +msgid "Permanently delete all recordings in the trash can?" +msgstr "A kuka véglegesen kiüríthető?" + +msgid "Permanently remove all deleted items" +msgstr "Minden törölt elem végleges eltávolítása" + +msgid "Persian" +msgstr "Perzsa" + +msgid "Phone number" +msgstr "Telefonszám" + +msgid "PiP setup" +msgstr "Kép-a-Képben beállítások" + +msgid "Picon" +msgstr "Pikon" + +msgid "Picon and service name" +msgstr "Pikon és csatornanév" + +msgid "Picture player" +msgstr "Kép lejátszó" + +#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term. +msgid "Pillarbox" +msgstr "Pillarbox (fekete csíkok oldalakon)" + +msgid "Pilot" +msgstr "Pilot" + +msgid "Play" +msgstr "Lejátszás" + +msgid "Play DVD" +msgstr "DVD lejátszás" + +msgid "Play audio in background" +msgstr "Hanglejátszás a háttérben" + +msgid "Play audio-CD..." +msgstr "Audio-CD lejátszás..." + +msgid "Play back media files" +msgstr "Médiafájlok lejátszása" + +msgid "Play entry" +msgstr "bejegyzés lejátszása" + +msgid "Play from next mark or playlist entry" +msgstr "lejátszás a következő markertől vagy lépjen be a playlistába" + +msgid "Play from previous mark or playlist entry" +msgstr "lejátszás az előző markertől vagy lépjen be a playlistába" + +msgid "Play music..." +msgstr "Zenelejátszás" + +msgid "Play next" +msgstr "Következő lejátszása" + +msgid "Play next (return to movie list)" +msgstr "Következő lejátszása (visszatérés a listához)" + +msgid "Play next (return to previous service)" +msgstr "Következő lejátszása (visszatérés az előző csatornára)" + +msgid "Play previous" +msgstr "Előző lejátszása" + +msgid "Play recorded movies..." +msgstr "Felvett filmek lejátszása..." + +msgid "Please add titles to the compilation." +msgstr "Kérem, adjon a válogatáshoz hozzá tételeket." + +msgid "Please change recording endtime" +msgstr "Kérem, változtassa meg a felvétel vége idejét" + +msgid "Please check your network settings!" +msgstr "Kérem, ellenőrizze a hálózati beállításokat!" + +msgid "Please choose an extension..." +msgstr "Kérem, válasszon egy funkciót..." + +msgid "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Kérem, ellenőrizze vagy állítsa be a névszervereket, a kért adatok kitöltésével.\n" +"Befejezés után, nyomja le az OK gombot a folytatáshoz." + +msgid "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Kérem, állítsa be az interket kapcsolatát a kért adatok kitöltésével.\n" +"Befejezés után, nyomja le az OK gombot a folytatáshoz." + +msgid "Please connect your receiver to the internet" +msgstr "Kérem, csatlakoztassa az internethez a készüléket." + +msgid "Please do not change any values unless you know what you are doing!" +msgstr "Ha nem tudja mi mit jelent, akkor kérem, ne változtassa meg az adatokat!" + +msgid "Please enter a name for the new bouquet" +msgstr "Adja meg az új bouquet nevét" + +msgid "Please enter a name for the new marker" +msgstr "Adja meg az új marker nevét" + +msgid "Please enter a new filename" +msgstr "Adja meg az új fájlnevet" + +msgid "Please enter filename (empty = use current date)" +msgstr "Adja meg a fájlnevet (üres = jelenlegi adatok használata)" + +msgid "Please enter name of the new directory" +msgstr "Kérem, adja meg az új mappa nevét" + +msgid "Please enter new name:" +msgstr "Kérem, adja meg az új nevet:" + +msgid "Please enter the correct pin code" +msgstr "Kérem, adja meg a helyes PIN kódot" + +msgid "Please enter the old PIN code" +msgstr "Régi PIN kód" + +msgid "Please follow the instructions on the TV" +msgstr "Kérem, kövesse a képernyőn megjelenő instrukciókat." + +msgid "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." +msgstr "Az előbb kiválaszott média nem elérhető és ezért inkább az alapmappa lesz használva." + +msgid "Please press OK to continue." +msgstr "A folytatáshoz nyomja le az OK-t." + +msgid "Please select a default EPG type..." +msgstr "Kérem, válasszon egy alapértelmezett EPG típust..." + +msgid "Please select a playlist to delete..." +msgstr "Válasszon egy lejátszási listát amit törölni szeretne..." + +msgid "Please select a playlist..." +msgstr "Válasszon egy lejátszási listát..." + +msgid "Please select a sub service..." +msgstr "Válasszon egy alcsatornát..." + +msgid "Please select a subservice to record..." +msgstr "Válasszon egy alcsatornát a felvételhez..." + +msgid "Please select a subservice..." +msgstr "Válasszon egy alcsatornát..." + +msgid "Please select an NFI file and press green key to flash!" +msgstr "Kérem, válasszon egy NFI fájlt, majd nyomja meg a Zöld gombot a flash-eléshez!" + +msgid "Please select medium to be scanned" +msgstr "Kérem, válassza ki a keresendő hordozót" + +msgid "Please select medium to use as backup location" +msgstr "Kérem, jelölje ki a biztonsági mentés helyét" + +msgid "Please select tag to filter..." +msgstr "Válassza ki, milyen metaadatok legyenek szűrve..." + +msgid "Please select the movie path..." +msgstr "Válassza ki a felvételek útvonalát..." + +msgid "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Kérem, válassza ki azt a hálózati interfészt, amit használni kíván az internet kapcsolathoz.\n" +"\n" +"Nyomja le az OK gombot a folytatáshoz." + +msgid "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Kérem, válassza ki a vezeték nélküli hálózatot, amihez csatlakozni kíván.\n" +"\n" +"Nyomja le az OK gombot a folytatáshoz." + +msgid "Please set up tuner A" +msgstr "Állítsa be a B tunert" + +msgid "Please set up tuner B" +msgstr "Állítsa be a B tunert" + +msgid "Please set up tuner C" +msgstr "Állítsa be a C tunert" + +msgid "Please set up tuner D" +msgstr "Állítsa be a D tunert" + +msgid "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." +msgstr "" +"Az iránygombokkal mozgathatja a Kép-a-Képben ablakot.\n" +"A Bouquet +/- gombokkal átméretezheti az ablakot.\n" +"Az OK gombbal visszamehet a TV módra, vagy az EXIT gombbal befejezheti a mozgatást." + +msgid "Please use the UP and DOWN keys to select your language. Afterwards press the OK button." +msgstr "Kérem, használja a FEL és LE gombokat a nyelv kiválasztásához. Ez után nyomja le az OK gombot." + +msgid "Please wait" +msgstr "" + +msgid "Please wait (downloading channel list)" +msgstr "Kérem, várjon... Lista betöltése..." + +msgid "Please wait (downloading softcam)" +msgstr "Kérem, várjon... Lista betöltése..." + +msgid "Please wait (updating packages)" +msgstr "kérem vérjon, kép betöltése..." + +msgid "Please wait for activation of your network configuration..." +msgstr "Kérem, várjon, ameddig a hálózati konfiguráció élesedik..." + +msgid "Please wait while scanning is in progress..." +msgstr "Kérem, várjon, ameddig a keresés folyamatban van..." + +msgid "Please wait while we configure your network..." +msgstr "Kérem, várjon, ameddig a hálózati konfiguráció elkészül..." + +msgid "Please wait while we prepare your network interfaces..." +msgstr "Kérem, várjon, ameddig a hálózati interfészek elkészülnek..." + +msgid "Please wait while we test your network..." +msgstr "Kérem, várjon, ameddig a hálózati teszt lezajlik..." + +msgid "Please wait while your network is restarting..." +msgstr "Kérem, várjon, ameddig a hálózati konfiguráció újraindul..." + +msgid "Please wait..." +msgstr "Kérem, várjon" + +msgid "Please wait... Loading list..." +msgstr "Kérem, várjon... Lista betöltése..." + +msgid "Plugin browser" +msgstr "Telepített Pluginek" + +msgid "Plugin manager activity information" +msgstr "Bővítménykezelő - végrehajtási információk" + +msgid "Plugin manager help" +msgstr "Bővítménykezelő - súgó" + +msgid "Plugins" +msgstr "Pluginek" + +msgid "Polarisation" +msgstr "Polarizáció" + +msgid "Polarisation:" +msgstr "Polarizáció:" + +msgid "Polarization" +msgstr "Polarizáció" + +msgid "Polish" +msgstr "Lengyel" + +msgid "Port A" +msgstr "A Port" + +msgid "Port B" +msgstr "B Port" + +msgid "Port C" +msgstr "C Port" + +msgid "Port D" +msgstr "D Port" + +msgid "Portuguese" +msgstr "Portugál" + +msgid "Position of completed timers in timerlist" +msgstr "Befejezett időzítések helye az időzítések listájában" + +msgid "Position stored at index" +msgstr "Pozíció mentve ide: " + +msgid "Positioner" +msgstr "Forgatómotor" + +msgid "Positioner (selecting satellites)" +msgstr "" + +msgid "Positioner Setup" +msgstr "Forgatómotor Beálltások" + +msgid "Positioner setup" +msgstr "Forgatómotor beállítás" + +msgid "Power threshold in mA" +msgstr "Áram határérték (mA)" + +msgid "Predefined transponder" +msgstr "ismert transzponderen" + +msgid "Prefer AC3 track" +msgstr "AC3 hangsáv előnyben részesítése" + +msgid "Prefer AC3+ track" +msgstr "" + +msgid "Prefer audio track stored by service" +msgstr "A hangsáv választás mentése csatornánként" + +msgid "Prefer graphical DVB subtitles" +msgstr "DVB (grafikus) feliratok előnyben részesítése" + +msgid "Prefer subtitles for hearing impaired" +msgstr "Hallássérülteknek szánt feliratok előnyben részesítése" + +msgid "Prefer subtitles stored by service" +msgstr "A felirat választás mentése csatornánként" + +msgid "Preferred tuner" +msgstr "Előnyben részesített tuner" + +msgid "Preferred tuner for recordings" +msgstr "" + +msgid "Prepare another USB stick for image flashing" +msgstr "Egy másuk USB adathordozó előkészítése készülék-frissítésre." + +msgid "Preparing... Please wait" +msgstr "Előkészítés... Kérem, várjon." + +msgid "Press '0' to toggle PiP mode" +msgstr "" + +msgid "Press INFO on your remote control for additional information." +msgstr "Nyomja le az INFO gombot a távírányítón a részletekért." + +msgid "Press MENU on your remote control for additional options." +msgstr "Nyomja le a MENÜ gombot a távírányítón további opciókért." + +msgid "Press OK on your remote control to continue." +msgstr "Nyomja le az OK gombot a távirányítón a folytatáshoz." + +msgid "Press OK to activate the selected skin." +msgstr "Nyomja le az OK gombot az új skin aktiválásához." + +msgid "Press OK to activate the settings." +msgstr "Az OK gombbal aktiválhatja a beállításokat." + +msgid "Press OK to edit the settings." +msgstr "Az OK gombbal módosíthatja a beállításokat." + +#, python-format +msgid "Press OK to get further details for %s" +msgstr "Nyomja le az OK gombot több részletért %s kapcsán" + +msgid "Press OK to scan" +msgstr "Az OK gombbal indíthatja a keresést" + +msgid "Press OK to select a provider." +msgstr "Nyomja le az OK gombot egy szolgáltató kiválasztásához." + +msgid "Press OK to select satellites" +msgstr "" + +msgid "Press OK to select/deselect a CAId." +msgstr "Nyomja le az OK gombot a CAId ki/bejelöléséhez." + +msgid "Press OK to start the scan" +msgstr "Az OK gombbal indíthatja a keresést" + +msgid "Press OK to toggle the selection" +msgstr "" + +msgid "Press OK to toggle the selection." +msgstr "Nyomja le az OK gombot a jelölés változtatásához." + +msgid "Press yellow to set this interface as default interface." +msgstr "Nyomja le a sárga gombot, hogy ezt az interfészt jelölje alapértelmezettnek." + +msgctxt "button label, 'previous screen'" +msgid "Prev" +msgstr "Előző" + +msgid "Preview" +msgstr "Előnézet" + +msgid "Preview menu" +msgstr "Előnézeti menü" + +msgid "Preview selected channel" +msgstr "Kijelőlt csatorna előnézete" + +msgid "Primary DNS" +msgstr "Elsődl. DNS" + +msgid "Priority" +msgstr "Prioritás" + +msgid "Process" +msgstr "Futtatás" + +msgid "Progress" +msgstr "Folyamat" + +msgid "Progress bar left" +msgstr "Folyamat kicsi" + +msgid "Progress bar right" +msgstr "Folyamat kicsi" + +msgid "Properties of current title" +msgstr "Az aktuális tétel tulajdonságai" + +msgid "Protect services" +msgstr "Csatornák védelme" + +msgid "Protect setup" +msgstr "Menürendszer védelme" + +msgid "Provider" +msgstr "Szolgáltató" + +msgid "Provider to scan" +msgstr "Lekeresendő szolgáltató" + +msgid "Providers" +msgstr "Szolgáltatók" + +msgid "Put TV in standby" +msgstr "TV kikapcsolása" + +msgid "Put receiver in standby" +msgstr "Készülék kikapcsolása" + +msgid "Python frontend for /tmp/mmi.socket" +msgstr "Python felület a /tmp/mmi.socket-hez" + +msgid "Quick" +msgstr "Gyors" + +msgid "Quick zap" +msgstr "GyorsUGRÁS" + +msgid "RF output" +msgstr "RF kimenet" + +msgid "RGB" +msgstr "RGB" + +msgid "Radio" +msgstr "Rádió" + +msgid "Ram disk" +msgstr "Ram Disk" + +msgid "Random" +msgstr "Véletlenszerű" + +#, python-format +msgid "Rating defined by broadcaster - %d" +msgstr "Adás besorolása - %d" + +msgid "Rating undefined" +msgstr "Nincs besorolás" + +msgid "Really close without saving settings?" +msgstr "Bezárjam mentés nélkül?" + +msgid "Really delete done timers?" +msgstr "Töröljem a befejezett idözítéseket?" + +msgid "Really exit the subservices quickzap?" +msgstr "Biztos ki szeretne lépni az alcsatorna gyorsUGRÁS módból?" + +msgid "Really reboot now?" +msgstr "Biztos újraindítsam most?" + +msgid "Really restart now?" +msgstr "Biztos újraindítsam most?" + +msgid "Really shutdown now?" +msgstr "Biztos lekapcsoljam most?" + +msgid "Really upgrade the frontprocessor and reboot now?" +msgstr "Biztos benne, hogy frissíteni szeretné a frontprocesszort, majd újraindítani a készüléket?" + +msgid "Really upgrade your settop box and reboot now?" +msgstr "Indulhat a frissítés, majd újraindítás?" + +msgid "Reboot" +msgstr "Újraindítás" + +msgid "Rec" +msgstr "Felvétel" + +msgid "Reception settings" +msgstr "Vételi beállítások" + +msgid "Record" +msgstr "Felvétel" + +#, python-format +msgid "Record time limited due to conflicting timer %s" +msgstr "A felvételi idő rövidítve lett időzítés ütközés miatt: %s" + +msgid "Recorded files..." +msgstr "Felvett filmek..." + +msgid "Recording" +msgstr "Felvétel" + +msgid "Recording in progress" +msgstr "Felvétel folyamatban" + +msgid "Recording paths" +msgstr "Felvételek tárhelye" + +msgid "Recording type" +msgstr "Felvétel típusa" + +msgid "Recording(s) are in progress or coming up in few seconds!" +msgstr "Felvétel folyamatban, vagy hamarosan indulni fog!" + +msgid "Recordings" +msgstr "Felvételek" + +msgid "Recordings always have priority" +msgstr "A felvételnek mindíg elsőbbsége van" + +msgid "Red button..." +msgstr "Piros gomb..." + +msgid "Reenter new PIN" +msgstr "Új PIN-kód mégegyszer" + +msgid "Refresh rate" +msgstr "Képernyő-frissítés" + +msgid "Refresh rate selection." +msgstr "Frissítés kiválasztása." + +msgid "Regard deep standby as standby" +msgstr "A mély-készenlét legyen az alapértelmezett készenlét" + +msgid "Relative" +msgstr "relatív" + +msgid "Reload" +msgstr "Újratöltés" + +msgid "Reload black-/white lists" +msgstr "Fekete és fehérlisták újratöltése" + +msgid "Reloading bouquets and services..." +msgstr "Bouquet-ek és csatornák újratöltése..." + +msgid "Remember last service in PiP" +msgstr "" + +msgid "Remember service PIN" +msgstr "Szerviz-PIN megjegyzése" + +msgid "Remember these settings for each folder" +msgstr "Beállítások megtartása minden mappára" + +msgid "Reminder, you have chosen to save timeshift file." +msgstr "Figyelem, azt választotta, hogy az időcsűsztatás felvétele ne törlődjön." + +msgid "Remote control type" +msgstr "Gyermekzár típusa" + +msgid "Removal has completed." +msgstr "Az eltávolítás sikertelen." + +msgid "Remove" +msgstr "Eltávolítás" + +msgid "Remove a mark" +msgstr "Egy marker eltávolítása" + +msgid "Remove a nameserver entry" +msgstr "névszerver eltávolítása" + +msgid "Remove bookmark" +msgstr "bookmark eltávolítása" + +msgid "Remove completed timers after (days)" +msgstr "Lejárt időzítések törlése ennyi nap után" + +msgid "Remove currently selected title" +msgstr "Kijelölt címek eltávolítása" + +msgid "Remove items from trash can after (days)" +msgstr "Kuka kiürítése ennyi nap után" + +msgid "Remove plugins" +msgstr "Pluginek eltávolítása" + +msgid "Remove title" +msgstr "Cím eltávolítása" + +msgid "Removing" +msgstr "Eltávolítás" + +#, python-format +msgid "Removing directory %s failed. (Maybe not empty.)" +msgstr "%s mappaak eltávolítása sikertelen. (Lehet nem üres.)" + +msgid "Removing partition table" +msgstr "Partíciótábla újraolvasása" + +msgid "Rename" +msgstr "Átnevezés" + +msgid "Repeat" +msgstr "Ismétlés" + +msgid "Repeat type" +msgstr "Ismétlés típusa" + +msgid "Repeating event currently recording... What do you want to do?" +msgstr "Ismétlődő felvétel megy... Mit csináljak?" + +msgid "Repeats" +msgstr "Ismétlések" + +msgid "Require authentication for http streams" +msgstr "" + +msgid "Required medium type:" +msgstr "Szükséges hordozó típusa" + +msgid "Rereading partition table" +msgstr "Partíciótábla újraolvasása" + +msgid "Reserved" +msgstr "Fenntartva" + +msgid "Reset" +msgstr "Visszaállítás" + +msgid "Reset and renumerate title names" +msgstr "A tételek újraszámozása" + +msgid "Reset playback position" +msgstr "Lejátszási pozíció nullázása" + +msgid "Reset video enhancement settings to system defaults?" +msgstr "Videó-beállítások visszaállítása a gyári értékekre?" + +msgid "Reset video enhancement settings to your last configuration?" +msgstr "Videó-beállítások visszaállítása az előbbi értékekre?" + +msgid "Resolution" +msgstr "Felbontás" + +msgid "Restart" +msgstr "Újraindítás" + +msgid "Restart GUI now?" +msgstr "Indítsam újra most a kezelő felületet?" + +msgid "Restart enigma" +msgstr "A kezelő felület újraindítása" + +msgid "Restart network" +msgstr "Hálózat újraindítása" + +msgid "Restart test" +msgstr "Teszt újraindítása" + +msgid "Restart your network connection and interfaces.\n" +msgstr "Hálózati kapcsolatok és interfészek újraindítása.\n" + +msgid "Restore" +msgstr "Visszaállítás" + +msgid "Restore backups" +msgstr "Mentések visszaállítása" + +msgid "Restore is running..." +msgstr "Visszaállítás folyamatban..." + +msgid "Restore system settings" +msgstr "Rendszerbeállítás visszaállítása" + +msgid "Restoring..." +msgstr "felvétel..." + +msgid "Resume from last position" +msgstr "Folytatás az utolsó pozíciótól" + +#, python-format +msgid "Resume position at %s" +msgstr "Lejátszás folytatása innen: %s" + +#. TRANSLATORS: The string "Resuming playback" flashes for a moment +#. TRANSLATORS: at the start of a movie, when the user has selected +#. TRANSLATORS: "Resume from last position" as start behavior. +#. TRANSLATORS: The purpose is to notify the user that the movie starts +#. TRANSLATORS: in the middle somewhere and not from the beginning. +#. TRANSLATORS: (Some translators seem to have interpreted it as a +#. TRANSLATORS: question or a choice, but it is a statement.) +msgid "Resuming playback" +msgstr "Lejátszás folytatása" + +msgid "Return to movie list" +msgstr "Visszatérés a felvételek listájához" + +msgid "Return to previous service" +msgstr "Visszatérés az előző csatornához" + +msgid "Reverse bouquet buttons" +msgstr "" + +msgid "Reverse list" +msgstr "" + +msgid "Rewind speeds" +msgstr "Visza-tekerési sebességek" + +msgid "Rewrap teletext subtitles" +msgstr "Teletext felirat sorainak átrendezése" + +msgid "Right" +msgstr "Jobb" + +msgid "Right from servicename" +msgstr "A csatornanév jobb oldalán" + +msgid "Roll-off" +msgstr "Roll-off" + +msgid "Romanian" +msgstr "Román" + +msgid "Root directory" +msgstr "Gyökérmappa" + +msgid "Rotor step position:" +msgstr "Motor léptető pozíció: " + +msgid "Rotor turning speed" +msgstr "Fogratómotor sebesség" + +msgid "Round start time on" +msgstr "Kerek kezdési idő" + +msgid "Russian" +msgstr "Orosz" + +msgid "S-Video" +msgstr "S-Video" + +msgid "SID" +msgstr "SID" + +msgid "SINGLE LAYER DVD" +msgstr "Egyrétegű DVD" + +msgid "SNR" +msgstr "SNR" + +msgid "SNR:" +msgstr "SNR:" + +msgid "SSID:" +msgstr "SSID:" + +msgid "Same resolution as skin" +msgstr "Ugyanaz a felbontás, mint a skin" + +msgid "Sat" +msgstr "Szo" + +msgid "Satellite" +msgstr "Műhold" + +msgid "Satellite dish setup" +msgstr "Műholdvevö eszköz beállítása" + +msgid "Satellite equipment" +msgstr "Műholvevő-berendezés" + +msgid "Satellite equipment setup" +msgstr "Műholdvevö eszköz beállítása" + +msgid "Satellite longitude:" +msgstr "Műhold pozíció:" + +msgid "Satellites" +msgstr "Műholdak" + +msgid "Satfinder" +msgstr "Műholdkereső" + +msgid "Sats" +msgstr "Műholdak" + +msgid "Saturation" +msgstr "Színtelítettség" + +msgid "Saturday" +msgstr "Szombat" + +msgid "Save" +msgstr "Mentés" + +msgid "Save playlist" +msgstr "playlista mentése" + +msgid "Save timeshift file" +msgstr "Időcsúsztatás felvételének megtartása" + +msgid "Save timeshift file in movie directory" +msgstr "Időcsúsztatás felvételének megtartása a felvételek mappájában" + +msgid "Scaler sharpness" +msgstr "Skálázó élesség" + +msgid "Scaling mode" +msgstr "Skálázási mód" + +msgid "Scan" +msgstr "Keresés" + +msgid "Scan " +msgstr "Keresés" + +#. TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' +#, python-format +msgid "Scan %s" +msgstr "%s keresés" + +#. TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' +#, python-format +msgid "Scan %s band" +msgstr "%s sáv szkennelése" + +msgid "Scan additional SR" +msgstr "Egyéb SR-ek szkennelése" + +msgid "Scan files..." +msgstr "Fájlok keresése..." + +msgid "Scan wireless networks" +msgstr "Vezeték nélküli hálózat keresése" + +msgid "Scan your network for wireless access points and connect to them using your selected wireless device.\n" +msgstr "Vezeték nélküli hálózatok keresése, és csatlakoztatása a kiválasztott vezeték nélküli adapter segítségével.\n" + +#, python-format +msgid "Scanning %s..." +msgstr "%s keresés..." + +#. TRANSLATORS: The stb is performing a channel scan, progress percentage is printed in '%d' (and '%%' will show a single '%' symbol) +#, python-format +msgid "Scanning - %d%% completed" +msgid_plural "Scanning - %d%% completed" +msgstr[0] "Keresés folyamatban - %d%% kész" +msgstr[1] "Keresés folyamatban - %d%% kész" + +#, python-format +msgid "Scanning completed, %d channel found" +msgid_plural "Scanning completed, %d channels found" +msgstr[0] "A keresés befejeződött, és %d csatornát talált" +msgstr[1] "A keresés befejeződött, és %d csatornát talált" + +msgid "Scanning failed!" +msgstr "A keresés sikertelen!" + +msgid "Scanning..." +msgstr "Keresés..." + +msgid "Scans default lamedbs sorted by satellite with a connected dish positioner" +msgstr "Műholdanként rendezett Lamedb keresése csatlakoztatott pozícionerhez" + +msgid "Search east" +msgstr "Léptetés kelet felé" + +msgid "Search west" +msgstr "Léptetés nyugat felé" + +msgid "Searching" +msgstr "Keresés" + +msgid "Searching east ..." +msgstr "Keresés keletre..." + +msgid "Searching for available updates. Please wait..." +msgstr "Elérhető frissítések keresése. Kérem, várjon..." + +msgid "Searching for new installed or removed packages. Please wait..." +msgstr "Újonnan telepített, vagy eltávolított szoftvercsomagok keresése. Kérem, várjon..." + +msgid "Searching west ..." +msgstr "Keresés nyugatra..." + +msgid "Second cable of motorized LNB" +msgstr "" + +msgid "Secondary DNS" +msgstr "Másodl. DNS" + +msgid "Seek" +msgstr "Ugrás" + +msgid "Seek backward" +msgstr "Vissza kihagyása" + +msgid "Seek backward (enter time)" +msgstr "Ugrás visszafelé (adja meg az időt)" + +msgid "Seek forward" +msgstr "Előre kihagyása" + +msgid "Seek forward (enter time)" +msgstr "Ugrás előre (adja meg az időt)" + +msgid "Select" +msgstr "Megjelölés" + +msgid "Select CAId" +msgstr "CAId kijelölés" + +msgid "Select HDD" +msgstr "Háttértár kiválasztása" + +msgid "Select a bouquet" +msgstr "Felvétel kiválasztása" + +msgid "Select a movie" +msgstr "Felvétel kiválasztása" + +msgid "Select a network adapter" +msgstr "Válasszon hálózati adaptert" + +msgid "Select a skin" +msgstr "Felvétel kiválasztása" + +msgid "Select a tuner" +msgstr "Felvétel kiválasztása" + +msgid "Select a wireless network" +msgstr "Válasszon vezeték nélküli hálózatot" + +msgid "Select action" +msgstr "" + +#, python-format +msgid "Select action for timer %s:" +msgstr "" + +msgid "Select all" +msgstr "" + +msgid "Select an image to be downloaded" +msgstr "Válasszon egy letöltendő image-t" + +msgid "Select audio track" +msgstr "Hangsáv kiválasztása" + +msgid "Select backup files" +msgstr "Válasszon mentés-fájlokat" + +msgid "Select backup location" +msgstr "Válasszon mentés-helyet" + +msgid "Select channel to record from" +msgstr "Csatorna kiválasztása melyről fel szeretne venni" + +msgid "Select copy destination for:" +msgstr "Másolási cél kiválasztása ehhez:" + +msgid "Select default EPG type..." +msgstr "Alapértelmezett EPG típus-választás..." + +msgid "Select desired image from feed list" +msgstr "Válassza ki a listából a kívánt image-et" + +msgid "Select destination for:" +msgstr "Cél kiválasztása ehhez:" + +msgid "Select files for backup." +msgstr "Biztonsági mentésbe helyezendő fájlok." + +msgid "Select files/folders to backup" +msgstr "Válasszon fájlokat/mappákat a biztonsági mentéshez" + +msgid "Select input device" +msgstr "Válasszon beviteli eszközt" + +msgid "Select input device." +msgstr "Válasszon beviteli eszközt." + +msgid "Select interface" +msgstr "Interfész kiválasztása" + +msgid "Select location" +msgstr "Válassza ki a helyet" + +msgid "Select movie" +msgstr "Felvétel kiválasztása" + +msgid "Select provider to add..." +msgstr "Válasszon hozzáadandó szolgáltatót..." + +msgid "Select refresh rate" +msgstr "Válassza ki a frissítési arányt" + +msgid "Select satellites" +msgstr "" + +msgid "Select service to add..." +msgstr "Válasszon hozzáadandó csatornát..." + +msgid "Select sort method:" +msgstr "" + +msgid "Select target folder" +msgstr "Válassza ki a célmappaat" + +msgid "Select the movie path" +msgstr "válassza ki a felvételek útvonalát" + +msgid "Select upgrade source" +msgstr "Válasszon szerkesztendő frissítési forrást" + +msgid "Select upgrade source to edit." +msgstr "Válasszon szerkesztendő frissítési forrást" + +msgid "Select video input with up/down buttons" +msgstr "Válasszon videó bemenetet a FEL/LE gombokkal" + +msgid "Select video mode" +msgstr "Válassza ki a video módot" + +msgid "Select wireless network" +msgstr "Válasszon vezeték nélküli hálózatot" + +msgid "Select your provider, and press OK to start the scan" +msgstr "Válassza ki a szolgáltatóját, nyomja le az OK-t" + +msgid "Selecting satellites 1 (USALS)" +msgstr "" + +msgid "Selecting satellites 2 (USALS)" +msgstr "" + +msgid "Send DiSEqC only on satellite change" +msgstr "DiSEqC parancs küldésése csak műholdváltáskor" + +msgid "Separate titles with a main menu" +msgstr "Címek elválasztása egy főmenüvel" + +msgid "Sequence repeat" +msgstr "Szekvencia ismétlés" + +msgid "Serbian" +msgstr "Szerb" + +msgid "Service" +msgstr "Csatorna információ" + +msgid "Service has been added to the favourites." +msgstr "A csatornát hozzáadtam a kedvencekhez." + +msgid "Service has been added to the selected bouquet." +msgstr "A csatornát hozzáadtam a kiválasztott bouquethez." + +msgid "Service info" +msgstr "Csatorna" + +msgid "" +"Service invalid!\n" +"(Timeout reading PMT)" +msgstr "" +"Érvénytelen csatorna!\n" +"(PMT olvasási időtúllépés)" + +msgid "Service name" +msgstr "Csatornanév" + +msgid "" +"Service not found!\n" +"(SID not found in PAT)" +msgstr "" +"A csatorna nem található!\n" +"(Nincs SID a PAT-ban)" + +msgid "Service reference" +msgstr "Referencia szám" + +msgid "Service scan" +msgstr "Csatornakeresés" + +msgid "Service searching" +msgstr "Csatornakeresés" + +msgid "Service title mode" +msgstr "Csatornanév mód" + +msgid "" +"Service unavailable!\n" +"Check tuner configuration!" +msgstr "" +"A csatorna nem elérhető!\n" +"Kérem, ellenőrizze a tuner beállításokat." + +msgid "Services" +msgstr "Csatornák" + +msgid "Set default" +msgstr "" + +msgid "Set end time" +msgstr "Befejezési idő" + +msgid "Set fixed" +msgstr "Beállítás fixre" + +msgid "Set fps for external subtitles" +msgstr "Külső feliratokhoz FPS" + +msgid "Set interface as default Interface" +msgstr "Jelölje meg mint alapértelmezett interfészt" + +msgid "Set limits" +msgstr "Limitek beállítása" + +msgid "Set the type of the progress indication in the channel selection screen." +msgstr "Esemény-haladás megjelenítése csatornalistában" + +msgid "Set time window to 1 hour" +msgstr "Időablak beállítása 1 órára" + +msgid "Set time window to 2 hours" +msgstr "Időablak beállítása 2 órára" + +msgid "Set time window to 3 hours" +msgstr "Időablak beállítása 3 órára" + +msgid "Set time window to 4 hours" +msgstr "Időablak beállítása 4 órára" + +msgid "Set time window to 5 hours" +msgstr "Időablak beállítása 5 órára" + +msgid "Set time window to 6 hours" +msgstr "Az időablak " + +msgid "Set voltage and 22KHz" +msgstr "Feszültség és 22KHz beállítása" + +msgid "Settings" +msgstr "Beállítások" + +msgid "Setup" +msgstr "Beállítások" + +msgid "Setup menu" +msgstr "Beállítások menü" + +msgid "Setup mode" +msgstr "Beállítás módja" + +msgid "Setup your positioner" +msgstr "Forgatómotor beállítása" + +msgid "Setup your satellite equipment" +msgstr "Műholvevő-berendezés" + +#, python-format +msgid "Shall the USB stick wizard proceed and program the image file %s into flash memory?" +msgstr "Biztos benne, hogy az USB meghajtón lévő %s image-et flash-elni szeretné a készülékre?" + +msgid "Sharpness" +msgstr "Élesség" + +msgid "Short filenames" +msgstr "Rövid fájlnevek" + +msgid "Show EIT now/next in infobar" +msgstr "Most/Következik információ EIT-ből származzon" + +msgid "Show EPG for current channel..." +msgstr "Az aktuális csatorna EPG-jének megjelenítése..." + +msgid "Show EPG..." +msgstr "EPG megnyitása..." + +msgid "Show Games show" +msgstr "Játék/Show" + +msgid "Show SNR percentage instead of dB value" +msgstr "A Jel/Zaj viszony (SNR) megjelenítése százalékban dB helyett" + +msgid "Show VCR scart on main menu" +msgstr "VCR Scart opció megjelenítése a főmenüben" + +msgid "Show WLAN status" +msgstr "A vezeték nélküli hálózat állapotának megjelenítése" + +msgid "Show animation while busy" +msgstr "Animáció megjelenítése amikor a szoftver foglalt" + +msgid "Show background in radio mode" +msgstr "Rádió módban háttérkép megjelenítése" + +msgid "Show bouquet selection menu" +msgstr "Boquet-választó menü megjelenítése" + +msgid "Show busy indicator when the system is busy." +msgstr "A foglaltság animált ikonnal történő megjelenítése." + +msgid "Show channel numbers in channel selection" +msgstr "Csatornaszámok megjelenítése a csatornalistában" + +msgid "Show columns" +msgstr "" + +msgid "Show crypto icons" +msgstr "" + +msgid "Show crypto info in infobar" +msgstr "Kódolási információ megjelenítése az infosorban" + +msgid "Show detailed event info" +msgstr "Részletes esemény információ" + +msgid "Show event details" +msgstr "részletes adatok megjelenítése" + +msgid "Show event-progress in channel selection" +msgstr "Esemény-haladás megjelenítése csatornalistában" + +msgid "Show extended description" +msgstr "bővített leírás megjelenítése" + +msgid "Show extensions..." +msgstr "Bővítmények megtekintése..." + +msgid "Show icon for new/unseen items" +msgstr "Új elemeknél ikon megjelenítése" + +msgid "Show in extensions menu" +msgstr "Megjelenítés a bővítmények menüjében" + +msgid "Show info" +msgstr "Info megjelenítése" + +msgid "Show info line" +msgstr "Információs sáv megjelenítése" + +msgid "Show infobar on channel change" +msgstr "Információs sáv megjelenítése csatornaváltáskor" + +msgid "Show infobar on event change" +msgstr "Információs sáv megjelenítése új műsor esetén" + +msgid "Show infobar on skip forward/backward" +msgstr "Információs sáv megjelenítése Előre/Hátra ugrás esetén" + +msgid "Show latest commits on sourceforge" +msgstr "A legutolsó változási naplók megtekintése a sourceforge-ról" + +msgid "Show message when recording starts" +msgstr "Üzenet megjelenítése amikor a felévtel indul" + +msgid "Show movie lengths in movielist" +msgstr "A felvételek hosszának megjelenítése a felvétel-listában" + +msgid "Show multi channel EPG" +msgstr "Több csatornás EPG megjelenítése" + +msgid "Show picons in channel list" +msgstr "Pikonok mejelenítése a csatornalistában" + +msgid "Show positioner movement" +msgstr "A forgatómotor mozgásának megjelenítése" + +msgid "Show screensaver" +msgstr "Képernyőkímélő megjelenítése" + +msgid "Show second infobar" +msgstr "Második információs sáv megjelenítése" + +msgid "Show service type icons" +msgstr "Csatorna típusának megjelenítése" + +msgid "Show services beginning with" +msgstr "Csatornák, melyek első betűje" + +msgid "Show shutdown menu" +msgstr "kikapcsolási menü" + +msgid "Show single service EPG" +msgstr "Egy csatorna EPG-jének megjelenítése" + +msgid "Show status icons in Movielist" +msgstr "Státusz ikonok megjelenítése a listában" + +msgid "Show status icons in movie list" +msgstr "Állapot-jelző ikonok megjelenítése a felvétel-listában" + +msgid "Show status icons in movielist" +msgstr "Állapot-jelző ikonok megjelenítése a felvétel-listában" + +msgid "Show tag menu" +msgstr "cimke menü megjelenítése" + +msgid "Show the radio player..." +msgstr "Rádió csatornalista..." + +msgid "Show the tv player..." +msgstr "TV csatorna lista..." + +msgid "Show warning when timeshift is stopped" +msgstr "Figyelmeztetés időcsúsztatás megálításakor" + +msgid "Shows the state of your wireless LAN connection.\n" +msgstr "Megjeleníti a vezeték nélküli kapcsolat aktuális állapotát.\n" + +msgid "Shuffle playlist" +msgstr "playlista megkeverése" + +msgid "Shutdown" +msgstr "Kikapcsolás" + +msgid "Shutdown when in Standby" +msgstr "Kikapcsolás készenlétbe lépés után" + +msgid "Side by side" +msgstr "Kétoldalt" + +msgid "Signal OK, proceeding" +msgstr "Jelszint rendben, kezdem" + +msgid "Signal quality" +msgstr "Jelminőség" + +msgid "Signal strength:" +msgstr "Jelerősség:" + +msgid "Signal: " +msgstr "Jel:" + +msgid "Similar" +msgstr "Ismétlések" + +msgid "Similar broadcasts:" +msgstr "Ismétlések, hasonló adások:" + +msgid "Simple" +msgstr "Egyszerű" + +msgid "Simple titleset (compatibility for legacy players)" +msgstr "Egyszerű tétellista (kompatibilis régebbi lejátszókal)" + +msgid "Single" +msgstr "Egyetlen" + +msgid "Single EPG" +msgstr "Műsorújság" + +msgid "Single satellite" +msgstr "Egyetlen műhold" + +msgid "Single step (GOP)" +msgstr "Lépés (GOP)" + +msgid "Single transponder" +msgstr "Egyetlen transzponder" + +msgid "Site latitude" +msgstr "Földrajzi szélességi fok" + +msgid "Site longitude" +msgstr "Földrajzi hosszúsági fok" + +msgid "Skin" +msgstr "Skin" + +msgid "Skins" +msgstr "Skin-ek" + +msgid "Skip empty services" +msgstr "Üres csatornák átugrása" + +msgid "Skip internet connection check (disables automatic package installation)" +msgstr "Internet-kapcsolat ellenőrzésének mellőzése (automatikus csomag-telepítés is tiltva lesz)" + +msgid "Sleep timer" +msgstr "Elalvás időzítő" + +msgid "SleepTimer Configuration" +msgstr "Elalvás időzítő beállításai" + +msgid "Sleeptimer" +msgstr "Elalvás időzítő" + +msgid "Slide picture in loop" +msgstr "képek megjelenítése végtelenül" + +msgid "Slide show interval (sec.)" +msgstr "Slideshow intervallum (mp.)" + +#, python-format +msgid "Slot %d" +msgstr "%d nyílás" + +msgid "Slovak" +msgstr "Szlovák" + +msgid "Slovenian" +msgstr "Szolvén" + +msgid "Slow" +msgstr "Lassú" + +msgid "Slow motion speeds" +msgstr "Lassítási sebességek" + +msgid "Small progress" +msgstr "Folyamatban" + +msgid "Social/Political/Economics" +msgstr "Szociális/Politika/Gazdaság" + +msgid "SoftCam / CI" +msgstr "SoftCam/CI" + +msgid "Softcam type" +msgstr "Szoftver" + +msgid "Software" +msgstr "Szoftver" + +msgid "Software management" +msgstr "Szoftverkezelés" + +msgid "Software manager setup" +msgstr "Szoftverkezelés" + +msgid "Software restore" +msgstr "Szoftver visszaállítás" + +msgid "Software update" +msgstr "Szoftver frissítés" + +msgid "Softwaremanager information" +msgstr "Szoftverkezeló információ" + +msgid "Some plugins are not available:\n" +msgstr "Egyes pluginek nem elérhetőek:\n" + +#, python-format +msgid "Sorry, %s has not been installed!" +msgstr "Sajnálom, a %s nincs feltelepítve!" + +msgid "Sorry, deleting directories can (for now) only be done through the trash can." +msgstr "Mappák törlése csak a kukába helyezéssel lehetséges." + +msgid "Sorry, no backups found!" +msgstr "Nem található rendszerbeállítás mentés!" + +msgid "Sorry, no details available!" +msgstr "Nincs több elérhető információ!" + +msgid "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." +msgstr "" +"A biztonsági mentés helyén nincs írási jogosultság.\n" +"Kérem, válasszon új mappát." + +msgid "Sort" +msgstr "Rendezés" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort A-Z" +msgstr "Rendez: ABC" + +msgid "Sort by" +msgstr "" + +msgid "Sort list:" +msgstr "" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort time" +msgstr "Rendez: Idő" + +msgid "Sound" +msgstr "Hang" + +msgid "Sound carrier" +msgstr "Hangvivő" + +msgid "Source request" +msgstr "Forrás-kérés" + +msgid "South" +msgstr "Dél" + +msgid "Spanish" +msgstr "Spanyol" + +msgid "Specify the end time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the end time until the inactivity sleeptimer should be ignored" +msgstr "Az tétlenség figyelmen kívül hagyása eddig az időpontig történjen" + +msgid "Specify the start time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the start time when the inactivity sleeptimer should be ignored" +msgstr "Az tétlenség figyelmen kívül hagyása ettől az időponttól történjen" + +msgid "Specify timeframe to ignore inactivity sleeptimer" +msgstr "Inaktivitás figyelmen kívül hagyása megadott időszakban" + +msgid "Specify timeframe to ignore the shutdown in standby" +msgstr "" + +msgid "Split preview mode" +msgstr "Megosztott előnézeti mód" + +msgid "Splitscreen" +msgstr "" + +msgid "Sports" +msgstr "Sport" + +msgid "Standard" +msgstr "hagyományos" + +msgid "Standart list" +msgstr "" + +msgid "Standby" +msgstr "Készenlét" + +msgid "Standby / restart" +msgstr "Kikapcsolás" + +msgid "Standby after current event" +msgstr "Készenlét az aktuális műsor végén" + +#, python-format +msgid "Standby fan %d PWM" +msgstr "%d. Vent. készenlét PWM" + +#, python-format +msgid "Standby fan %d voltage" +msgstr "%d. Vent. készenlét feszültség" + +msgid "Standby in " +msgstr "Készenlétbe: " + +msgid "StandbyLED" +msgstr "" + +msgid "Start from the beginning" +msgstr "Indítsa az elejétől" + +msgid "Start offline decode" +msgstr "Offline dekódolás" + +msgid "Start recording?" +msgstr "Indítsam a felvételt?" + +msgid "Start test" +msgstr "Teszt indítása" + +msgid "Start time" +msgstr "Kezdési időpont" + +msgid "Start time to ignore inactivity sleeptimer" +msgstr "Inaktivitás figyelmen kívül hagyása ettől:" + +msgid "Start time to ignore shutdown in standby" +msgstr "" + +msgid "Start timeshift" +msgstr "időcsúsztatás elindítása" + +msgid "Start with list screen" +msgstr "Indítás lista-nézettel" + +msgid "Starting on" +msgstr "Mely dátumtól?" + +msgid "Startup the set top box in standby" +msgstr "" + +msgid "Startup to Standby" +msgstr "" + +msgid "Step east" +msgstr "Léptetés kelet felé" + +msgid "Step west" +msgstr "Léptetés nyugat felé" + +msgid "Stepped east" +msgstr "Keletre léptetve" + +msgid "Stepped west" +msgstr "Nyugatra léptetve" + +msgid "Stop" +msgstr "Állj" + +msgid "Stop PiP" +msgstr "Kép-a-Képben leállítása" + +msgid "Stop current event and disable coming events" +msgstr "Futó időzítés és a soron következők leállítása" + +msgid "Stop current event but not coming events" +msgstr "Futó időzítés leállítása de a soron következők futtatása" + +msgid "Stop entry" +msgstr "bejegyzés leállítása" + +msgid "Stop playing this movie?" +msgstr "Megállítsam ezt a lejátszást?" + +msgid "Stop recording" +msgstr "Felvétel leállítása" + +msgid "Stop recording and delete" +msgstr "Felvétel leállítás és törlés" + +msgid "Stop service on return to movie list" +msgstr "" + +msgid "Stop test" +msgstr "Teszt megállítása" + +msgid "Stop testing plane after # failed transponders" +msgstr "Próbálkozások befejezése ennyi sikertelen transzponder után" + +msgid "Stop testing plane after # successful transponders" +msgstr "Próbálkozások befejezése ennyi sikeres transzponder után" + +msgid "Stop timer recording" +msgstr "Az időzített felvétel megállítása" + +msgid "Stop timeshift" +msgstr "időcsúsztatás leállítása" + +msgid "Stop timeshift?" +msgstr "Leállítsam az időcsúsztatást?" + +msgid "Stopped" +msgstr "Leállítva" + +msgid "Store at index" +msgstr "Mentés ide:" + +msgid "Store position" +msgstr "Pozíció tárolása" + +msgid "Stored position" +msgstr "Tárolt pozíció" + +msgid "Stream" +msgstr "Adatfolyam" + +msgid "Stream request" +msgstr "Adatfolyam kérés" + +msgid "Strongest position" +msgstr "Legerősebb pozíció" + +msgid "Subservice list..." +msgstr "Alcsatorna lista..." + +msgid "Subservices" +msgstr "Alcsatornák" + +msgid "Subtitle Quickmenu" +msgstr "Felirat gyorsmenü" + +msgid "Subtitle alignment" +msgstr "Egyedi felirat elrendezés" + +msgid "Subtitle border width" +msgstr "Betűk körvonal-vastagsága" + +msgid "Subtitle delay when timing is bad" +msgstr "Felirat csúsztatása rossz időzítés esetén" + +msgid "Subtitle delay when timing lacks" +msgstr "Felirat időtartama, ha nincs időzítve" + +msgid "Subtitle font size" +msgstr "Betűméret" + +msgid "Subtitle language selection 1" +msgstr "Elsődleges előnyben részesített felirat" + +msgid "Subtitle language selection 2" +msgstr "Másodlagos előnyben részesített felirat" + +msgid "Subtitle language selection 3" +msgstr "Harmadlagos előnyben részesített felirat" + +msgid "Subtitle language selection 4" +msgstr "Negyedleges előnyben részesített felirat" + +msgid "Subtitle position" +msgstr "Felirat elhelyezése" + +msgid "Subtitle selection" +msgstr "Felirat kiválasztása" + +msgid "Subtitle selection..." +msgstr "Felirat választás..." + +msgid "Subtitle settings" +msgstr "Feliratozás" + +msgid "Subtitles" +msgstr "Feliratok" + +msgid "Sun" +msgstr "Vas" + +msgid "Sunday" +msgstr "Vasárnap" + +msgid "Swap PiP and main picture" +msgstr "Kép-a-Képben és főkép megcserélése" + +msgid "Swap services" +msgstr "Csatornák cserélése" + +msgid "Swedish" +msgstr "Svéd" + +msgid "Switch TV to correct input" +msgstr "TV-bemenet kiválasztása" + +msgid "Switch between filelist/playlist" +msgstr "Fájllista és playlista közötti váltás" + +msgid "Switch between normal mode and list mode" +msgstr "Hagyományos / listanézet váltás" + +msgid "Switch to HDMI in mode" +msgstr "" + +msgid "Switch to filelist" +msgstr "Váltás fájllistára" + +msgid "Switch to next channel" +msgstr "" + +msgid "Switch to next channel in history" +msgstr "Köv. csatorna az előzményekben" + +msgid "Switch to next sub service" +msgstr "Ugrás a köv. alcsatornára" + +msgid "Switch to playlist" +msgstr "kapcsolás playlistára" + +msgid "Switch to previous channel" +msgstr "Ugrás az előző alcsatornára" + +msgid "Switch to previous channel in history" +msgstr "Előző csatorna az előzményekben" + +msgid "Switch to previous sub service" +msgstr "Ugrás az előző alcsatornára" + +msgid "Switchable tuner types:" +msgstr "Váltható tuner típusok:" + +msgid "Symbol rate" +msgstr "Szimbólumsebesség" + +msgid "Symbol rate:" +msgstr "Szimbólumsebesség:" + +msgid "Sync failure moving back to origin !" +msgstr "Szinkronhiba 0-hoz visszatérésk!" + +msgid "System" +msgstr "Rendszer" + +#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) +msgid "TRANSLATOR_INFO" +msgstr "" +"Fordította: MediaVox-Team\n" +"Kiegészítette, véglegesítette: robertut\n" +"A magyar nyelvű fájl kiegészítése az OpenPLI projekt-hez készült.\n" +"Bővebb információ: http://openpli.org" + +msgid "TS file is too large for ISO9660 level 1!" +msgstr "A TS fájl túl nagy az 'ISO9660 level 1' szabvány szerint!" + +msgid "TSID" +msgstr "TSID" + +msgid "TV physical address report" +msgstr "TV fizikai port-cím" + +msgid "TXT PID" +msgstr "Teletext PID" + +msgid "Table of contents for collection" +msgstr "Gyűjtemény tartalmának táblázata" + +msgid "Tags" +msgstr "Metaadatok" + +msgid "Teletext subtitle color" +msgstr "Teletext felirat színe:" + +msgid "Temperature and fan control" +msgstr "Hőmérséklet és ventilátor beállításai" + +msgid "Terrestrial" +msgstr "Földi" + +msgid "Terrestrial provider" +msgstr "Földi szolgáltató" + +msgid "Test DiSEqC settings" +msgstr "DiSEqC beállítások tesztelése" + +msgid "Test mode" +msgstr "Teszt mód" + +msgid "Test the network configuration of your receiver.\n" +msgstr "A készülék hálózati konfigurációjának ellenőrzése.\n" + +msgid "Test type" +msgstr "Teszt típusa" + +msgid "Text color" +msgstr "szöveg színe" + +msgid "Thai" +msgstr "Thái" + +msgid "" +"Thank you for using the wizard.\n" +"Please press OK to continue." +msgstr "" +"Köszönöm, hogy használta a Varázslót.\n" +"Kérem, nyomja le az OK gombot a folytatáshoz." + +msgid "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." +msgstr "" +"Köszönjük hogy használta a Varázslót. A készüléke most már be van állítva.\n" +"Az OK gomb megnyomása után máris használatba veheti a készülékét." + +msgid "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?" +msgstr "A DVD szabvány nem támogatja a H.264 (HDTV) videó streamet. Szeretne ehelyett létrehozni egy speciális formátumú adat DVD-t (mely azonban nem játszható le a hagyományos lejátszókban)?" + +msgid "The PIN code has been changed successfully." +msgstr "A PIN-kódot sikeresen megváltoztatta." + +msgid "The PIN codes you entered are different." +msgstr "A megadott PIN-kódok eltérnek egymástól." + +msgid "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" +msgstr "" +"Az USB meghajtó bootolható lett.\n" +"Most már tölthető rá NFI fájl!" + +msgid "The backup failed. Please choose a different backup location." +msgstr "A mentés nem sikerült. Válasszon másik célt ahova menthetem." + +#, python-format +msgid "" +"The current beta image might not be stable.\n" +"For more information see %s." +msgstr "" +"Az aktuális beta image nem stabil\n" +"Bővebb információk itt: %s" + +#, python-format +msgid "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." +msgstr "" +"%s mappa nem írható.\n" +"Kérem, válasszon egy írási jogosultságokkal rendelkező mappát." + +#, python-format +msgid "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" +msgstr "" +"A következő eszközt találtam:\n" +"\n" +"%s\n" +"\n" +"Fel szeretné írni az USB flashert erre a stickre?" + +msgid "The following files were found..." +msgstr "Az alábbi fájlokat találta a rendszer..." + +msgid "The md5sum validation failed, the file may be corrupted!" +msgstr "Az md5 ellenőrzés sikertelen, a fájl valószínűleg sérült!" + +msgid "" +"The network wizard extension is not installed!\n" +"Please install it." +msgstr "" +"A NetworkWizard bővítmémy nincs feltelepítve!\n" +"Kérem, telepítse fel." + +#, python-format +msgid "The path %s already exists." +msgstr "A %s útvonal már létezik." + +msgid "The pin code you entered is wrong." +msgstr "A megadott PIN kód helytelen." + +#, python-format +msgid "The results have been written to %s." +msgstr "Az eredmények ide lettek kiírva: %s" + +msgid "The sleep timer has been activated." +msgstr "Az elalvás időzítő aktiválva lett." + +msgid "The sleep timer has been disabled." +msgstr "Az elalvásidőzítő ki van kapcsolva" + +msgid "" +"The software management extension is not installed!\n" +"Please install it." +msgstr "" +"A Softwaremanagement bővítmémy nincs feltelepítve!\n" +"Kérem, telepítse fel." + +#, python-format +msgid "The status of the current beta image could not be checked because %s can not be reached." +msgstr "Az aktuális beta image állapota nem ellenőrizhető, mert a %s oldal nem elérhető." + +msgid "The timer file (timers.xml) is corrupt and could not be loaded." +msgstr "A timer fájl (timers.xml) sérült és nem lehet betölteni." + +msgid "The user interface of your receiver is restarting" +msgstr "A kezelőfelület újraindítása folyamatban van" + +msgid "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" +msgstr "" +"A kezelőfelület újraindítása folyamatban van\n" +"egy, a mytest.py fájlban lévő hiba miatt" + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." +msgstr "" +"A vezeték nélküli bővítmény nincs telepítve!\n" +"Kérem, telepítse fel előbb, majd folytassa." + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it." +msgstr "" +"A wireless LAN plugin nincs telepítve!\n" +"Kérem, telepítse." + +msgid "The wizard can backup your current settings. Do you want to do a backup now?" +msgstr "A varázsló el tudja menteni a jelenlegi beállításait. szeretne most egy mentést csinálni?" + +#, python-format +msgid "The wizard found a configuration backup. Do you want to restore your old settings from %s?" +msgstr "A Varázsló talált egy korábbi mentést. Szeretné visszaállítani a beállításokat %s-ből?" + +msgid "The wizard is finished now." +msgstr "A varázsló befejezte feladatát." + +msgid "There are at least " +msgstr "Legalább" + +#, python-format +msgid "There are at least %s updates available." +msgstr "Legalább %s frissítés elérhető." + +msgid "There are currently no outstanding actions." +msgstr "Semmilyen kiemelkedő esemény nem következik." + +msgid "There are no updates available." +msgstr "Nincs elérhető frissítés." + +msgid "There is no signal to lock on !" +msgstr "Nincs jel!" + +msgid "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" +msgstr "" +"Nincs elég hely a kiválasztott partíción.\n" +"Biztos folytatni szeretné?" + +msgid "This DVD RW medium is already formatted - reformatting will erase all content on the disc." +msgstr "Ez a DVD RW medium már meg van formázva - a lemez újraformázásával minden adat el fog veszni." + +msgid "" +"This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!" +msgstr "" + +msgid "This plugin is installed." +msgstr "A plugin telepítve van." + +msgid "This plugin is not installed." +msgstr "A plugin nincs telepítve." + +msgid "This plugin will be installed." +msgstr "A plugin telepítve lesz." + +msgid "This plugin will be removed." +msgstr "A plugin el lesz távolítva." + +#, python-format +msgid "This receiver cannot decode %s streams!" +msgstr "Ez a készülék nem képes %s folyamokat dekódolni!" + +msgid "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration" +msgstr "" +"Ez a teszt leellenőrzi a beállított névszervereket.\n" +"Ha eredményként \"nem igazolt\", akkor:\n" +"- ellenőrizze a DHCP beállítást, a kábelezért és az adapter beállításait\n" +"- ha a névszervert kézzel állította be, akkor ellenőrizze a bejegyzéseket a \"Névszerver\" beállításokban" + +msgid "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" +msgstr "" +"Ez a teszt leellenőrzi hogy a LAN-Adapterhez van-e hálózati kábel csatlakoztatva.\n" +"Ha válaszként a \"nincs csatlakoztatva\" üzenetet kapja, akkor:\n" +"- van-e kábel csatlakoztatva\n" +"- ellenőrizze hogy a csatlakoztatott kábel szakadt-e" + +msgid "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" +msgstr "" +"Ez a teszt leellenőrzi hogy van-e érvényes IP cím a LAN Adapterben.\n" +"Ha válaszként a \"nem igazolt\" választ kapja, akkor:\n" +"- nem található érvényes IP cím\n" +"- ellenőrizze a DHCP beállításokat, a kábelezést és az interfész beállításait" + +msgid "" +"This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." +msgstr "" +"Ez a teszt leellenőrzi hogy a hálótzati interfész be lett-e állítva az automatikus IP cím lekéréséhez DHCP-vel.\n" +"Ha válaszként a \"kikapcsolva\" üzenetet kapja, akkor:\n" +"- a LAN Adapter csak manuális IP cím megadására lett beállítva\n" +"- ellenőrizze, hogy helyes IP adatokat adott meg az Adapter beállításaiban\n" +"Ha válaszként a \"engedélyezve\" üzenetet kapja, akkor:\n" +"- ellenőrizze hogy a hálózatában létezik-e jól beállított és működő DHCP szerver." + +msgid "This test detects your configured LAN adapter." +msgstr "Ez a teszt leellenőrzi a beállított hálótzati adaptert." + +msgid "" +"This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\n" +"Are you sure?" +msgstr "" +"Ez által minden pozíció újra lesz számítva a forgatómotorban, az előző értékek és finomhangolások elvészhetnek!\n" +"Biztos benne?" + +msgid "Three" +msgstr "Három" + +msgid "Threshold" +msgstr "Threshold" + +msgid "Thu" +msgstr "Csü" + +msgid "Thumbnails" +msgstr "Ikonok" + +msgid "Thursday" +msgstr "Csütörtök" + +msgid "Time" +msgstr "Idő" + +msgid "Time scale" +msgstr "Időskála" + +msgid "Timer" +msgstr "Időzítő" + +msgid "Timer Overview" +msgstr "" + +msgid "Timer edit" +msgstr "Időzítő módosítása" + +msgid "Timer editor" +msgstr "Időzítések" + +msgid "Timer entry" +msgstr "Időzítés megadása" + +msgid "Timer log" +msgstr "Időzítő lognapló" + +msgid "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" +msgstr "" +"Időzítési átfedést találtam a timers.xml fájlban!\n" +"Kérem, ellenőrizze!" + +msgid "Timer overview" +msgstr "Időzítések áttekintése" + +msgid "Timer recording location" +msgstr "Időztett felvételek:" + +msgid "Timer sanity error" +msgstr "Időzítési logikai hiba" + +msgid "Timer selection" +msgstr "Időzítés kiválasztása" + +msgid "Timer selection..." +msgstr "Időzítés kiválasztása..." + +msgid "Timer type" +msgstr "Időzítés típusa" + +msgid "Timeshift" +msgstr "Időcsúsztatás" + +msgid "Timeshift Live" +msgstr "" + +msgid "Timeshift location" +msgstr "Időcsúsztatás tárhelye" + +msgid "Timeshift not possible!" +msgstr "Időcsúsztatás nem lehetséges!" + +msgid "Timezone" +msgstr "Időzóna" + +msgid "Title" +msgstr "Cím" + +msgid "Title properties" +msgstr "Tétel tulajdonságai" + +msgid "Titleset mode" +msgstr "Tétel-szett mód" + +msgid "To audio selection" +msgstr "Hangcsatorna kiválasztása" + +msgid "To subtitle selection" +msgstr "Felirat kiválasztása" + +msgid "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." +msgstr "" +"A készülék szoftverének frissítéséhez, az alábbi lépéseket tegye meg:\n" +"1) Áramtalanítsa a készüléket, majd csatlakoztassa az USB-s adathordozót.\n" +"2) Helyezze áram alá a készüléket, közben tartsa lenyomva az előlapon a LE gombot 10 másodpercig.\n" +"3) Várjon a boot-olás befejezésére, majd kövesse a Varázsló utasításait." + +msgid "Today" +msgstr "Ma" + +msgid "Toggle a cut mark at the current position" +msgstr "jelenlegi pozícióra vágási jelet tenni" + +msgid "Tone amplitude" +msgstr "Hangerő" + +msgid "Tone mode" +msgstr "Tone" + +msgid "Toneburst" +msgstr "Toneburst" + +msgid "Toneburst A/B" +msgstr "Toneburst A/B" + +msgid "Top and bottom" +msgstr "Teteje és Alja" + +msgid "Track" +msgstr "Sáv" + +msgid "Translation" +msgstr "Fordítás" + +msgid "Translation:" +msgstr "Fordítás:" + +msgid "Translations" +msgstr "Magyar fordítás" + +msgid "Transmission mode" +msgstr "Adási mód" + +msgid "Transponder" +msgstr "Transzponder" + +msgid "Transponder type" +msgstr "Transzponder típusa" + +msgid "Trash can" +msgstr "Törölt tételek" + +msgid "Tries left:" +msgstr "Hátralevő próbálkozások száma:" + +msgid "Try to find used transponders in cable network.. please wait..." +msgstr "Felhasználói transzponderek keresése a kábeles hálózaton.. Kérem, várjon..." + +msgid "Trying to download a new packetlist. Please wait..." +msgstr "Az új csomaglitsa letöltése folyamatban. Kérem, várjon..." + +msgid "Tue" +msgstr "Ked" + +msgid "Tuesday" +msgstr "Kedd" + +msgid "Tune" +msgstr "Hangolás" + +msgid "Tune and focus" +msgstr "Hangolás és Fókusz" + +msgid "Tune failed!" +msgstr "Hangolás sikertelen!" + +msgid "Tuner" +msgstr "Tuner" + +msgid "Tuner configuration" +msgstr "Tuner beállítások" + +msgid "Tuner is not supported" +msgstr "" + +msgid "Tuner slot" +msgstr "Tuner nyílás" + +msgid "Tuner status" +msgstr "Tuner" + +#, python-format +msgid "Tuner status %s" +msgstr "Tuner állapota %s" + +msgid "Tuner type" +msgstr "Tuner típus" + +msgid "Turkish" +msgstr "Török" + +msgid "Turn on the power LED during standby." +msgstr "" + +msgid "Turning step size" +msgstr "" + +msgid "Two" +msgstr "Kettő" + +msgid "Type" +msgstr "Típus" + +msgid "Type of scan" +msgstr "Keresés típusa" + +msgid "USALS" +msgstr "USALS" + +msgid "USALS calibration" +msgstr "USALS kalibrálás" + +msgid "USB stick" +msgstr "USB Stick" + +msgid "USB stick wizard" +msgstr "USB-s hordozó Varázsló" + +msgid "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Az automatikus frissítés folyamatban van\n" +"Ez eltarthat néhány percig\n" +"Kérem, várjon, a készüléke hamarosan újraindul" + +msgid "Undo install" +msgstr "Telepítés visszavonása" + +msgid "Undo uninstall" +msgstr "Eltávolítás visszavonása" + +msgid "Unencrypted" +msgstr "Kódolatlan" + +msgid "UnhandledKey" +msgstr "UnhandledKey" + +msgid "Unicable" +msgstr "Unicable" + +msgid "Unicable LNB" +msgstr "Unicable fej" + +msgid "Unicable Martix" +msgstr "Unicable Mátrix" + +msgid "Uninstall" +msgstr "Eltávolítás" + +msgid "Universal LNB" +msgstr "Univerzális fej" + +msgid "Unknown" +msgstr "Ismeretlen" + +msgid "Unmount" +msgstr "Leválasztás" + +msgid "Unsupported" +msgstr "Nem támogatott" + +msgid "Update" +msgstr "Frissítés" + +msgid "Update and ask to reboot" +msgstr "Frissítés, majd rákérdezés az újraindításra" + +msgid "Update and reboot (recommended)" +msgstr "Frissítés és automatikus újraindítás (ajánlott)" + +msgid "Update channel list only" +msgstr "Köv. csatorna az előzményekben" + +#, python-format +msgid "Update completed, %d package was installed." +msgid_plural "Update completed, %d packages were installed." +msgstr[0] "A frissítés elkészült, %d csaomag lett feltelepítve." +msgstr[1] "A frissítés elkészült, %d csaomag lett feltelepítve." + +msgid "Update completed. Do you want to reboot your receiver?" +msgstr "Frissiítés sikeres. Újraindítsam most a készüléket?" + +msgid "Update failed. Your receiver does not have a working internet connection." +msgstr "A frissítés nem sikerült. A készüléknek nincs egy működőképes kapcsolata az internettel." + +msgid "Update has completed." +msgstr "A frissítés elkészült." + +msgid "Updatefeed not available." +msgstr "Frissítő szerver nem elérhető" + +msgid "Updating software catalog" +msgstr "Szoftver-katalógus frissítése" + +msgid "Upgrading" +msgstr "Frissítés" + +msgid "Use" +msgstr "Használ" + +msgid "Use DHCP" +msgstr "DHCP használata" + +msgid "Use EIT EPG information when it is available." +msgstr "EPG információk beolvasása a DVB jelfolyamból (EIT)." + +msgid "Use FreeSat EPG information when it is available." +msgstr "EPG információk beolvasása a FreeSat jelfolyamból." + +msgid "Use MHW EPG information when it is available." +msgstr "EPG információk beolvasása az MHW jelfolyamból." + +msgid "Use Netmed EPG information when it is available." +msgstr "EPG információk beolvasása a Netmed jelfolyamból." + +msgid "Use TV remote control" +msgstr "TV-távvezérlő használata" + +msgid "Use USALS for this sat" +msgstr "Ennél a műholdnál használja az USALS-t" + +msgid "Use ViaSat EPG information when it is available." +msgstr "EPG információk beolvasása a ViaSat jelfolyamból." + +msgid "Use Virgin EPG information when it is available." +msgstr "" + +msgid "Use a gateway" +msgstr "Átjáró használata" + +msgid "Use fastscan channel names" +msgstr "Szolgáltató által megadott csatorna elnevezés" + +msgid "Use fastscan channel numbering" +msgstr "Szolgáltató által megadott csatorna számozás" + +msgid "Use frequency or channel" +msgstr "" + +msgid "Use individual settings for each directory" +msgstr "Beállítások mentése egyedileg mappánként" + +msgid "Use interface" +msgstr "Interfész használata" + +msgid "Use official channel numbering" +msgstr "Hivatalos csatornaszámozás használata" + +msgid "Use original DVB subtitle position" +msgstr "DVB feliratok pozíciójának megtartása" + +msgid "Use original teletext position" +msgstr "Eredeti teletext-elhelyezés megtartása" + +msgid "Use power measurement" +msgstr "Teljesítmény-felvétel mérése" + +msgid "Use the network wizard to configure selected network adapter" +msgstr "A hálózati Varázsló használata a kijelölt hálózati interfész konfigurálásához" + +msgid "Use the network wizard to configure your network\n" +msgstr "A hálózat beállításához használja a hálózati Varázslót\n" + +msgid "Use the up/down keys on your remote control to select an option. After that, press OK." +msgstr "A fel/le nyílgombokkal változtathatja az opciót. Ez után nyomja meg az OK-t." + +msgid "Use the wizard to set up basic features" +msgstr "Használja a varázslót az alapbeállításokhoz" + +msgid "Use these input device settings?" +msgstr "Használhatók ezek a beviteli eszköz beállítások?" + +msgid "Use these settings?" +msgstr "Ezen beállítások használata?" + +msgid "Use this video enhancement settings?" +msgstr "Alkalmazhatók a Videó-beállítások?" + +msgid "Use trash can in movielist" +msgstr "Kuka használata a felvétel-listában" + +msgid "Used service scan type" +msgstr "Csatornakeresés típusa" + +msgid "User - bouquets" +msgstr "Felhasználói bouquet-ek" + +msgid "User defined" +msgstr "Felh. által megadva" + +msgid "User defined transponder" +msgstr "alább beállított transzponderen" + +msgid "User interface" +msgstr "Felhasználói felület" + +msgid "Username" +msgstr "Felhasználónév" + +#, python-format +msgid "Using LNB %d" +msgstr "%d fej használatával" + +msgid "Using fixed address" +msgstr "Fix cím használatával" + +#, python-format +msgid "Using tuner %s" +msgstr "%s tuner használatával" + +msgid "Usually when the subtitle language is the same as the audio language, the subtitles will not be used. Enable this option to allow these subtitles to be used." +msgstr "Amikor egy csatornán a felirat nyelve és a hangsáv nyelve megegyezik, a felirat megjelenítése nem szükséges. Ezzel az opcióval ez részletesen testreszabható." + +msgid "VCR scart" +msgstr "VCR scart" + +msgid "VMGM (intro trailer)" +msgstr "VMGM (Intro trailer)" + +msgid "Vertical" +msgstr "Vertikális" + +msgid "Vertical turning speed" +msgstr "Vertikális fordulási sebesség" + +msgid "Video PID" +msgstr "Videó PID" + +msgid "Video enhancement preview" +msgstr "Videó-beállítások előnézete" + +msgid "Video enhancement settings" +msgstr "Videó-beállítások" + +msgid "Video enhancement setup" +msgstr "Videó-beállítások" + +msgid "Video fine tuning" +msgstr "Kép finomhangolás" + +msgid "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." +msgstr "" +"Video bementi kiválasztás\n" +"\n" +"Nyomja meg az OK-t ha látja ezt a képet a TV képernyőn (vagy válasszon más bemeneti portot).\n" +"A következő bemeneti port automatikusan átkapcsol 10 mp múlva." + +msgid "Video mode selection." +msgstr "Video mód kiválasztás" + +msgid "Video output" +msgstr "Videó kimenet" + +msgid "Video setup" +msgstr "Videó beállítások" + +msgid "Video wizard" +msgstr "Video varázsló" + +#, python-format +msgid "Video: %s fps" +msgstr "Videó: %s fps" + +msgid "VideoMode" +msgstr "Videó mód" + +msgid "Videocodec" +msgstr "Videó kodek" + +msgid "Videoformat" +msgstr "Videó formátum" + +msgid "Videosize" +msgstr "Videó méret" + +msgid "View Rass interactive..." +msgstr "Rass interaktív szolgáltatás használata..." + +msgid "View details" +msgstr "Részletek megtekintése" + +msgid "View list of available " +msgstr "Az elérhetők listázása: " + +msgid "View list of available CommonInterface extensions" +msgstr "Az elérhető CI-Bővítmények listázása" + +msgid "View list of available EPG extensions." +msgstr "Az elérhető EPG-bővítmények listája" + +msgid "View list of available Satellite equipment extensions." +msgstr "Az elérhető múholdvevő-berendezés bővítmények listázása" + +msgid "View list of available communication extensions." +msgstr "Az elérhető kommunikációs bővítmények listázása" + +msgid "View list of available default settings" +msgstr "Az elérhető csatornalisták listázása" + +msgid "View list of available display and userinterface extensions." +msgstr "Az elérhető képernyő- és felhasználói felület bővítmények listázása" + +msgid "View list of available multimedia extensions." +msgstr "Az elérhető multimédia bővítmények listázása" + +msgid "View list of available networking extensions" +msgstr "Az elérhető hálózati bővítmények listázása" + +msgid "View list of available recording extensions" +msgstr "Az elérhető felvételi bővítmények listázása" + +msgid "View list of available skins" +msgstr "Az elérhető skin-ek listázása" + +msgid "View list of available software extensions" +msgstr "Az elérhető szoftveres bővítmények listázása" + +msgid "View list of available system extensions" +msgstr "Az elérhető rendszer-Bővítmények listázása" + +msgid "View photos..." +msgstr "Képnézés..." + +msgid "View teletext..." +msgstr "Teletext megtekintése..." + +msgid "View video CD..." +msgstr "Videó-CD nézés..." + +msgid "Virtual keyboard" +msgstr "Virtuális Billentyűzet" + +msgid "Voltage mode" +msgstr "Feszültség" + +msgid "Volume" +msgstr "Hangerő" + +msgid "W" +msgstr "Ny" + +msgid "WEP" +msgstr "WEP" + +msgid "WLAN connection" +msgstr "Vezeték nélküli kapcsolat" + +msgid "WPA" +msgstr "WPA" + +msgid "WPA or WPA2" +msgstr "WPA vagy WPA2" + +msgid "WPA2" +msgstr "WPA2" + +msgid "WSS on 4:3" +msgstr "WSS 4:3-on" + +msgid "Waiting" +msgstr "Várakozás" + +msgid "Waiting for mount" +msgstr "Várakozás a megosztás csatlakozására" + +msgid "Waiting for partition" +msgstr "Várakozás a partícióra" + +msgid "Wakeup" +msgstr "Bekapcsolás" + +msgid "Wakeup TV from standby" +msgstr "A TV bekapcsolása" + +msgid "Wakeup receiver for start timer" +msgstr "" + +msgid "Wakeup receiver from standby" +msgstr "A készülék bekapcsolása" + +msgid "Wakeup signal from TV" +msgstr "Bekapcsolási jelzés a TV-től" + +msgid "Wakeup type" +msgstr "" + +msgid "Warning: no LNB; using factory defaults." +msgstr "Figyelem: nincs fej; gyári alapbeállítások használata" + +msgid "Watch movies..." +msgstr "Felvett filmek lejátszása..." + +msgid "Watch recordings..." +msgstr "felvétel..." + +msgid "Wed" +msgstr "Sze" + +msgid "Wednesday" +msgstr "Szerda" + +msgid "Weekday" +msgstr "Hétköznap" + +msgid "Weighted position" +msgstr "Kiegyensúlyzozott pozíció" + +msgid "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." +msgstr "" +"Üdvözlöm a Vágólista szerkesztőben.\n" +"\n" +"Keresse meg a kivágandó rész elejét majd nyomja meg az OK gombot és válassza ki a 'Vágás eleje' opciót.\n" +"\n" +"Majd menjen a kivágandó rész végére, nyomja meg az OK gombot és válassza a \"Vágás vége\" opciót. Ennyi az egész." + +msgid "Welcome to the image upgrade wizard. The wizard will assist you in upgrading the firmware of your receiver by providing a backup facility for your current settings and a short explanation of how to upgrade your firmware." +msgstr "Üdvözlöm az Image frissítés varázslójában. A varázsló segít Önnek a készülékének firmware frissítésében. Ismerteti a mentési tulajdonságokat, így beállításai sem vesznek el, továbbá elmagyarázza hogyan frissítse készülékét az új firmware-el." + +msgid "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" +msgstr "" +"Üdvözüljük.\n" +"\n" +"Ha szeretné a készülékét az Internetre csatlakoztatni, ez a Varázsló segíthet Önnek, hogy az alap-konfigurációt létrehozhassa.\n" +"\n" +"Kérem, nyomja le az OK gombot a hákózat konfigurálásához" + +msgid "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." +msgstr "" +"Üdvözlöm.\n" +"\n" +"Ez az Indítási Varázsló végig fogja Önt vezetni a készülék alapbeállításain.\n" +"Nyomja meg az OK gombot a távirányítón a következő lépéshez." + +msgid "Welcome..." +msgstr "Üdvözlöm..." + +msgid "West" +msgstr "Nyugat" + +msgid "West limit set" +msgstr "Nyugati limit beállítás" + +msgid "What do you want to scan?" +msgstr "Mit szeretne lekeresni?" + +msgid "When enabled the PiP can be closed by the exit button." +msgstr "Kép-a-Képben bezárása a távírányító 'Exit' gomb megnyomásakor." + +msgid "When enabled the arrow buttons around the OK button will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled the left, right, CH+/-, B+/-, P+/- buttons will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled you can specify a timeframe to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "When enabled you can specify a timeframe were the inactivity sleeptimer is ignored. Not the detection is disabled during this timeframe but the inactivity timeout is disabled" +msgstr "Meg lehet adni egy napi időszakot, amikor nincs figyelembe véve az inaktivitás, azaz, ebben az időszakban tétlenség miatt nem fog kikapcsolni a készülék." + +msgid "When enabled you can zap channels with the CH+/-, B+/-, P+/- buttons instead of opening the channel selection list." +msgstr "" + +msgid "When enabled you get the channel selection list via the OK button, the infobar toggle is then transfered to exit button" +msgstr "" + +msgid "When enabled, AIT data will be included in http streams. This allows a client receiver to use HbbTV." +msgstr "A HTTP jelfolyamba kerüljön bele a DVB-ből származó AID adatcsomag is. Ezáltal a fogadó készülék képes lesz HbbTV-t is kezelni." + +msgid "When enabled, ECM data will be included in http streams. This allows a client receiver to do the descrambling." +msgstr "A HTTP jelfolyamba kerüljön bele a DVB-ből származó ECM adatcsomag is. Ezáltal a fogadó készüléknek kell a dekódolást végezni." + +msgid "When enabled, EIT data will be included in http streams. This allows a client receiver to show EPG." +msgstr "A HTTP jelfolyamba kerüljön bele a DVB-ből származó EIT adatcsomag is. Ezáltal a fogadó készülék képes lesz EPG-t is megjeleníteni." + +msgid "When enabled, a popup message will be shown when a movie has finished and the next one will start." +msgstr "Egy figyelmeztető buborék jelenjen meg a képernyőn amikor egy fájl a végéhez ért és a következő elindul." + +msgid "When enabled, a popup message will be shown when a recording starts." +msgstr "Egy figyelmeztető buborék jelenjen meg a képernyőn amikor a felvétel elindul." + +msgid "When enabled, a radio background image will be visible while listening to a radio channel." +msgstr "Rádiócsatorna hallgatása közben egy háttérkép megjelenítése." + +msgid "When enabled, a recording is allowed to interrupt live tv, when there are no free tuners." +msgstr "Egy felvétel megszakíthatja a TV-nézést, ha nem áll rendelkezésre másik szabad tuner a felvételhez." + +msgid "When enabled, a warning will be displayed and the user will get an option to stop or to continue the timeshift." +msgstr "Egy figyelmeztetés jelenjen meg a képernyőn választható lehetőséggel, az időcsúsztatás megállítása vagy folytatása." + +msgid "When enabled, authentication is required to watch http streams." +msgstr "" + +msgid "When enabled, channel numbering will start at '1' for each bouquet." +msgstr "Minden egyes bouquet-ben a csatornalista számozása 1-el kezdődjön." + +msgid "When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen." +msgstr "Egy 4:3-as kép méretarányú tartalom szét lesz nyújtva a képernyő teljes szélességére." + +msgid "When enabled, continue to the next bouquet when the last channel of the current bouquet is reached while changing channels." +msgstr "Csatornaváltás közben, ha a bouquet utolsó csatornájához értünk, ugorjon-e a következő bouquet-be vagy sem." + +msgid "When enabled, deleted recordings are moved to the trash can, instead of being deleted immediately." +msgstr "A törölt fájlok kukába kerüljenek, azonnali megsemmisítés helyett." + +msgid "When enabled, display the EIT now/next eventdata in infobar. When disabled, display now/next eventdata from the EPG cache instead." +msgstr "Az információs sávba közvetlenül az EIT-jelfolyamból származzon a 'Most/Következik' információ, vagy az EPG cache-ból vegye ki." + +msgid "When enabled, encryption info will be shown in the infobar (when supported by the skin)." +msgstr "A kódolási információ jelenjen-e meg vagy sem az információs sávban (amennyiben a skin támogatja)." + +msgid "When enabled, error messages related to the Common Interface module will not be shown." +msgstr "A CI-modullal kapcsolatos hibaüzenetek ne jelenjenek meg a képernyőn." + +msgid "When enabled, error messages related to zapping will not be shown." +msgstr "A csatornaváltással kapcsolatos hibaüzenetek ne jelenjenek meg a képernyőn." + +msgid "When enabled, external subtitles will be always turned on for playback movie." +msgstr "A külön fájlban lévő feliratok automatikusan jelenjenek meg film lejátszás esetén." + +msgid "When enabled, graphical DVB subtitles are preferred over teletext subtitles, when both types are available." +msgstr "Ha egy csatornán egyszerre elérhető DVB-felirat és Teletext felirat is, mindig a DVB feliratot válassza." + +msgid "When enabled, graphical DVB subtitles will be centered horizontally." +msgstr "A DVB felirat középre zárása." + +msgid "When enabled, graphical DVB subtitles will be displayed at their original position." +msgstr "A DVB felirat eredeti helyen történő megjelenítése." + +msgid "When enabled, graphical DVB subtitles will be displayed in yellow, instead of the original color." +msgstr "A DVB felirat átszínezése sárgára, az eredeti szín helyett." + +msgid "When enabled, http streams are descrambled on the server side. The (remote) client receiver does not have to do descrambling." +msgstr "A dekódolás a HTTP szerver oldalon történjen. A távoli kliens készülék már nem kell dekódolja a jelfolyamot." + +msgid "When enabled, it is possible to leave the movieplayer with exit." +msgstr "Lehessen kilépni a lejátszóból az 'Exit' gomb megnyomásával." + +msgid "When enabled, measure power consumption to detect when the rotor stops turning (when supported by the tuner)." +msgstr "Ezzel a funkcióval a motor forgását az áramfelvétel mérésével lehet ellenőrizni (amennyiben a tuner támogatja)." + +msgid "When enabled, number markers will be hiden." +msgstr "A csatornalistában esetleg lévő, sorszámozott elválasztó elemek elrejtése." + +msgid "When enabled, services may be grouped in multiple bouquets." +msgstr "A csatornák lehessenek egyszerre akár több bouquet tagjai." + +msgid "When enabled, show channel numbers in the channel selection screen." +msgstr "Csatornaszámok megjelenítése a csatornalistában" + +msgid "When enabled, subtitles for the hearing impaired can be used." +msgstr "A hallássérülteknek szánt feliratok megjelenítése." + +msgid "When enabled, subtitles for the hearing impaired will be preferred over normal subtitles, when both types are available." +msgstr "A hallássérülteknek szánt feliratok megjelenítése a normál feliratok helyett, amennyiben mindkettő egyszerre elérhető egy csatornán." + +msgid "When enabled, teletext pages will be cached, allowing faster access." +msgstr "A teletext-oldalak cache-elése gyorsítótárban, gyorsabb elérés érdekében." + +msgid "When enabled, teletext subtitles will be displayed at their original position." +msgstr "A teletext feliratok megjelenítése az eredeti helyükön." + +msgid "When enabled, the VCR scart option will be shown on the main menu" +msgstr "Egy 'VCR Scart' menü megjelenítése a főmenüben." + +msgid "When enabled, the channel selection list will be hidden while listening to a radio channel" +msgstr "A csatornalista elrejtése rádió hallgatása közben." + +msgid "When enabled, the infobar will be displayed when a new event starts." +msgstr "Az információs sáv automatikus felbukkanása egy új műsor EPG szerinti kezdetekor." + +msgid "When enabled, the infobar will be displayed when changing channels." +msgstr "Az információs sáv automatikus felbukkanása csatornaváltás után." + +msgid "When enabled, the infobar will be displayed when skipping forwards/backwards during media playback." +msgstr "Az információs sáv megjelenítése előre/hátra ugráskor fájl lejátszása közben." + +msgid "When enabled, the lenght of each recording will be shown in the movielist (this might cause some additional loading time)." +msgstr "Minden egyes fájl hossza jelenjen meg a filmlistában (megnövelheti a listának a betöltési idejét)." + +msgid "When enabled, the original line breaks will be removed from the teletext subtitles." +msgstr "Az eredeti sorvégződések eltávolítása a teletext feliratokból." + +msgid "When enabled, the receiver will automatically use the audio track which you selected before." +msgstr "A készülék ugyanazt a hangsávot fogja legközelebb is kiválasztani, amit Ön legutoljára kiválasztott." + +msgid "When enabled, the receiver will automatically use the subtitles which you selected before." +msgstr "A készülék ugyanazt a feliratot fogja legközelebb is kiválasztani, amit Ön legutoljára kiválasztott." + +msgid "When enabled, the receiver will no longer monitor the tuned transponder for possible changes. Do not use this option unless you know what you are doing." +msgstr "A készülék nem fogja a behangolt transzpondert figyelni esetleges változásokért. Ne módosítsa ezt az opciót anélkül, hogy pontosan tudná mit szeretne." + +msgid "When enabled, the receiver will select an AC3 track (when available)." +msgstr "A készülék egy AC3 hangsávot válasszon mindig, amikor ilyen van a csatornán." + +msgid "When enabled, the receiver will select an AC3+ track (when available)." +msgstr "" + +msgid "When enabled, timeshift starts automatically in background after specified time." +msgstr "Az időcsúsztatás induljon el automatikusan a háttérben a megadott idő után." + +msgid "When enabled, use DHCP for the IP configuration." +msgstr "névszerver konfiguráció megnyítása" + +msgid "When enabled, your receiver will detect activity on the VCR SCART input." +msgstr "A készülék figyelje, hogy történik-e valami a VCR Scart bemenetén." + +msgid "When nonzero, a recording will start earlier than the starting time indicated by the EPG." +msgstr "Ennyivel korábban kezdje a felvételt, mint amennyi időt mond az EPG." + +msgid "When nonzero, a recording will stop later than the ending time indicated by the EPG." +msgstr "Ennyivel később fejezze be a felvételt, mint amennyi időt mond az EPG." + +msgid "When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture." +msgstr "Egy 16:9-es kép méretarányú tartalom nagyítva vagy széthúzva legyen." + +msgid "When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture." +msgstr "Egy 4:3-as kép méretarányú tartalom nagyítva vagy széthúzva legyen." + +msgid "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" +msgstr "" +"Ha visszaállítja a készüléket a gyári állapotba, minden beállítása el fog veszni\n" +"(beleérve a bouquet-eket, a kedvenceket, lekeresett csatornákat, műholdakat...)!\n" +"A gyári állapotba helyezés után, a készülék automatikusan újra fog indulni.\n" +"\n" +"Biztos benne, hogy gyári állapotba állítja a készüléket?" + +msgid "Where do you want to backup your settings?" +msgstr "Hova szeretné elmenteni a beállításait?" + +msgid "Where to save temporary timeshift recordings?" +msgstr "Hová kerüljenek az átmeneti időcsúsztatás felvételek?" + +msgid "Wireless LAN" +msgstr "Vezeték nélküli hálózat" + +msgid "Wireless network" +msgstr "Vezeték nélküli hálózat" + +msgid "Wireless network configuration..." +msgstr "Vezeték nélküli hálózat beállítása..." + +msgid "Wireless network connection setup" +msgstr "Vezeték nélküli hálózat beállítása" + +msgid "Wireless network connection setup." +msgstr "Vezeték nélküli hálózat beállítása." + +msgid "Wireless network state" +msgstr "Vezeték nélküli hálózat állapota" + +msgid "With popup" +msgstr "Figyelmeztetéssel" + +msgid "Without popup" +msgstr "Figyelmeztetés nélkül" + +msgid "Would you like to install a softcam?" +msgstr "Szeretne telepíteni egy softcam-et?" + +msgid "Write error while recording. Disk full?\n" +msgstr "Felvétel közben írási hiba történt. Megtelt a lemez?\n" + +msgid "Write failed!" +msgstr "Az írás sikertelen!" + +msgid "YPbPr" +msgstr "YPbPr" + +msgid "Year" +msgstr "Év" + +msgid "Yellow DVB subtitles" +msgstr "DVB feliratok színe: sárga" + +msgid "Yes" +msgstr "Igen" + +msgid "Yes and save" +msgstr "Igen, mentéssel" + +msgid "Yes and save in movie dir" +msgstr "Igen, mentéssel a filmek mappájába" + +msgid "Yes to all" +msgstr "Mindenre IGEN" + +msgid "Yes, always" +msgstr "Igen, mindig" + +msgid "Yes, and delete this movie" +msgstr "Igen, és felvétel törlése" + +msgid "Yes, backup my settings!" +msgstr "Igen, mentse el a beállításaim!" + +msgid "Yes, delete this movie and return to movie list" +msgstr "" + +msgid "Yes, do a manual scan now" +msgstr "Igen, indítsunk most el egy kézi keresést" + +msgid "Yes, do an automatic scan now" +msgstr "Igen, indítsunk most el egy automatikus keresést" + +msgid "Yes, do another manual scan now" +msgstr "Igen, indítsunk most el egy másik keresést" + +msgid "Yes, perform a shutdown now." +msgstr "Igen, hajtsunk végre most egy kikapcsolást." + +msgid "Yes, restore the settings now" +msgstr "Igen, állítsuk vissza most a beállításokat" + +msgid "Yes, returning to movie list" +msgstr "Igen, térjen vissza a felvételek listájához" + +msgid "Yesterday" +msgstr "Tegnap" + +#, python-format +msgid "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" +msgstr "" +"Már van egy csatornalista telepítve,\n" +"biztos benne, hogy el szeretné távolítani\n" +"\"%s\"-t?" + +msgid "You can cancel the installation." +msgstr "A telepítés folyamata leállítható." + +msgid "You can cancel the removal." +msgstr "Az eltávolítás folyamata leállítható." + +msgid "You can continue watching TV etc. while this is running." +msgstr "A készülék használatát folytathatja a megszokott módon." + +msgid "You can install this plugin." +msgstr "A plugin telepíthető." + +msgid "You can only burn receiver recordings!" +msgstr "Csak ezzel a készüléktípussal felvett anyagokat lehet kiírni!" + +msgid "You can remove this plugin." +msgstr "A plugin eltávolítható" + +msgid "You cannot delete this!" +msgstr "Ez nem törölheti le!" + +msgid "You didn't select a channel to record from." +msgstr "Nem választott ki csatornát, ahonnan történjen a felvétel." + +msgid "You have chosen to backup your settings. Please press OK to start the backup now." +msgstr "Ön azt választotta, hogy a beállításairól egy biztonsági másolatot készít. Kérem, nyomja le az OK gombot a folytatáshoz." + +msgid "You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased." +msgstr "Azt választotta hogy létrehoz egy új .NFI flasher bootolható USB sticket. Ez az USB sticket újra fogja partícionálni, ezért az azon található összes adat el fog veszni." + +msgid "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." +msgstr "Ön azt választotta, hogy a beállításokat visszaállítja egy koráábi biztonsági mentésből. A folyamat végén, az Enigma2 újra fog indulni. Kérem, nyomja le az OK gombot a folytatáshoz." + +#, python-format +msgid "You have to wait %s!" +msgstr "Várnia kell (%s)!" + +msgid "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." +msgstr "" + +msgid "You system does not support ext4" +msgstr "Az ön rendszere nem támogatja az ext4-et." + +msgid "Your backup succeeded. We will now continue to explain the further upgrade process." +msgstr "A mentés sikerült. Most folytatjuk és elmagyarázom Önnek a további frissítési folyamatot." + +msgid "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" +msgstr "A gyüjteményének mérete meghaladja egy sima rétegű DVD kapacitását, egy dupla-rétegű üres DVD lemezre lesz szüksége!" + +msgid "Your current collection will get lost!" +msgstr "Az aktuális kapcsolata meg fog szűnni!" + +msgid "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." +msgstr "" +"Az előlapi processzor firmware-jét frissíteni kell.\n" +"Az OK gombbal indíthatja a frissítést." + +msgid "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"A frontprocesszor frissítve lesz.\n" +"Kérem, várjon, míg a készülék újraindul.\n" +"Ez eltarthat néhány percig..." + +msgid "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." +msgstr "" +"Az internetkapcsolata nem működik!\n" +"Kérem, válassza ki, mi legyen a teendő." + +#, python-format +msgid "Your internet connection is working (ip: %s)" +msgstr "Az internetkapcsolat működik (IP: %s)" + +msgid "Your network configuration has been activated." +msgstr "A hálózati konfiguráció aktiválva lett." + +msgid "Your receiver does not have an internet connection" +msgstr "A készüléknek nincs kapcsolata az internettel." + +msgid "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" +msgstr "" +"A készülék most már használható állapotban van.\n" +"\n" +"Az internetkapcsolata működőképes.\n" +"\n" + +msgid "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." +msgstr "" +"A készülék most már használható állapotban van.\n" +"\n" +"Az internetkapcsolata működőképes.\n" +"\n" +"Nyomja le az OK gombot a folytatáshoz." + +msgid "Your receiver is rebooting" +msgstr "A készülék most újraindul" + +msgid "Your receiver is shutting down" +msgstr "A készülék most kikapcsol" + +msgid "Your receiver is shutting down. Please stand by..." +msgstr "A készülék most kikapcsol. Kérem, várjon..." + +msgid "Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver." +msgstr "A készüléke most lehet, hogy használhatatlanná vált. Kérem, vegye fel a kapcsolatot a szervízzel, vagy szakemberrel újraindítás elött." + +msgid "Your receiver will got to stand by due to the sleeptimer." +msgstr "A készülék most készenlétbe kapcsol elalvás-időzítés miatt." + +msgid "Your receiver will got to standby due to inactivity." +msgstr "A készülék most készenlétbe kapcsol inaktivitás miatt." + +msgid "Your receiver will restart after pressing OK on your remote control." +msgstr "Az OK gomb megnyomása után a készülék újra fog indulni." + +msgid "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." +msgstr "" +"A vezeték nélküli hálózati kapcsolata nem hozható létre!\n" +"Csatlakoztatva van az USB-s vezeték nélküli adapter?\n" +"\n" +"Kérem, válassza ki, mi legyen a teendő." + +msgid "Zap" +msgstr "Ugrás" + +msgid "Zap back to previously tuned service?" +msgstr "Ugorjunk vissza az elöbb nézett csatornára?" + +msgid "Zap back to service before positioner setup?" +msgstr "Ugorjunk vissza a forgatómotor beállítás elött nézett csatornához?" + +msgid "Zap back to service before tuner setup?" +msgstr "Ugorjunk vissza a tuner beállítása elött nézett csatornához?" + +msgid "Zap focus to Picture in Picture" +msgstr "A Kép-a-Képben-ablak kezelése" + +msgid "Zap focus to main screen" +msgstr "A főképernyő kezelése" + +msgid "Zap mode" +msgstr "Ugrás mód" + +msgid "Zap to selected channel" +msgstr "Ugrás a kijelölt csatornára" + +msgid "Zap to selected channel, or show detailed event info (depends on configuration)" +msgstr "Ugrás a kijelölt csatornára, vagy részletes műsorinformáció megjelenítése (konfiguráció-függő)" + +msgid "[alternative edit]" +msgstr "[alternatív módosítás]" + +msgid "[bouquet edit]" +msgstr "[bouquet módosítása]" + +msgid "[favourite edit]" +msgstr "[kedvencek módosítása]" + +msgid "[move mode]" +msgstr "[mozgatás mód]" + +msgid "a gui to assign services/providers to common interface modules" +msgstr "egy felhasználói felület, mely lehetővé teszi szolgáltatók/csatornák hozzárendelését CI modulokhoz" + +msgid "a gui to assign services/providers/caids to common interface modules" +msgstr "egy felhasználói felület, mely lehetővé teszi szolgáltatók/csatornák/CAId-ek hozzárendelését CI modulokhoz" + +msgid "abort alternatives edit" +msgstr "alternatív módosítás megszakítása" + +msgid "abort bouquet edit" +msgstr "bouquet módosítás megszakítása" + +msgid "abort favourites edit" +msgstr "kedvencek módosításának megszakítása" + +msgid "about to start" +msgstr "az indításról" + +msgid "activate network adapter configuration" +msgstr "Hálózati adapter konfiguráció aktiválása" + +msgid "add alternatives" +msgstr "alternatívák hozzáadása" + +msgid "add bookmark" +msgstr "bookmark hozzáadása" + +msgid "add bouquet" +msgstr "bouquet hozzáadása" + +msgid "add marker" +msgstr "marker hozzáadása" + +msgid "add service to bouquet" +msgstr "csatorna hozzáadása a bouquethez" + +msgid "add service to favourites" +msgstr "csatorna hozzáadása a kedvencekhez" + +msgid "add to parental protection" +msgstr "hozzáadás a gyermekzár védelemhez" + +msgid "adult movie/drama" +msgstr "Felnőtt/Dráma" + +msgid "advanced" +msgstr "haladó" + +msgid "adventure/western/war" +msgstr "Kaland/Western/Háború" + +msgid "advertisement/shopping" +msgstr "Reklám/Televíziós vásárlás" + +msgid "after " +msgstr "kikapcsolás: " + +msgid "alphabetic" +msgstr "ábécé szerinti rendezés" + +msgid "alphabetic reverse" +msgstr "fordított ABC" + +msgid "alternative" +msgstr "alternatív" + +msgid "always" +msgstr "" + +msgid "and select next channel" +msgstr "" + +msgid "and select previous channel" +msgstr "" + +msgid "arts/culture (without music, general)" +msgstr "Művészet/Kultúra (prózai, általános)" + +msgid "arts/culture magazine" +msgstr "Művészet/Kultúra magazin" + +msgid "athletics" +msgstr "Atlétika" + +msgid "audio tracks" +msgstr "hangsávok" + +msgid "auto" +msgstr "Automatikus" + +msgid "automatic" +msgstr "Automatikus" + +msgid "back" +msgstr "vissza" + +msgid "background image" +msgstr "háttérkép" + +msgid "ballet" +msgstr "Balett" + +#, python-format +msgid "bc%s" +msgstr "bc%s" + +msgid "better" +msgstr "jobb" + +msgid "black" +msgstr "fekete" + +msgid "black & white" +msgstr "Fekete/Fehér" + +msgid "blacklist" +msgstr "feketelista" + +msgid "blue" +msgstr "kék" + +msgid "broadcasting/press" +msgstr "közvetítés/sajtó" + +msgid "by date" +msgstr "rendezés dátum szerint" + +msgid "cartoon/puppets" +msgstr "Rajzfilm/Báb" + +msgid "center" +msgstr "középre" + +msgid "centered" +msgstr "középre" + +msgid "centered, wrapped" +msgstr "középen sortöréssel" + +msgid "chapters" +msgstr "jelenetek" + +msgid "childrens's/youth program (general)" +msgstr "Általános gyermekműsor" + +msgid "circular left" +msgstr "forgó balos" + +msgid "circular right" +msgstr "forgó jobbos" + +msgid "comedy" +msgstr "vígjáték" + +msgid "complex" +msgstr "komplex" + +msgid "config menu" +msgstr "konfig. menü" + +msgid "confirmed" +msgstr "visszaigazolt" + +msgid "connected" +msgstr "csatlakoztatva" + +msgid "continue" +msgstr "Folytatás" + +msgid "cooking" +msgstr "főzés" + +msgid "copy to bouquets" +msgstr "másolás a bouquetek-be" + +msgid "create directory" +msgstr "mappa létrehozása" + +#, python-format +msgid "currently installed image: %s" +msgstr "aktuálisan feltelepített image: %s" + +msgid "daily" +msgstr "naponta" + +msgid "day" +msgstr "nap" + +msgid "default" +msgstr "Alapértelmezett" + +msgid "delete cut" +msgstr "vágópont törlése" + +msgid "delete..." +msgstr "törlés..." + +msgid "descramble and record ecm" +msgstr "ECM felvétel és dekódolás" + +msgid "detective/thriller" +msgstr "dekektív/thriller" + +msgid "disable" +msgstr "letiltás" + +msgid "disable move mode" +msgstr "mozgatási mód letiltása" + +msgid "disabled" +msgstr "kikapcsolva" + +msgid "disconnected" +msgstr "nincs csatlakoztatva" + +msgid "discussion/interview/debate" +msgstr "beszélgetés/interjú/vita" + +msgid "do nothing" +msgstr "ne csináljon semmit" + +msgid "documentary" +msgstr "dokumentum" + +msgid "don't descramble, record ecm" +msgstr "ECM felvétel dekódolás nélkül" + +msgid "done!" +msgstr "kész!" + +msgid "east" +msgstr "kelet" + +msgid "economics/social advisory" +msgstr "gazdaság/szocilális" + +msgid "edit alternatives" +msgstr "alternatívák módosítása" + +msgid "education/science/factual topics (general)" +msgstr "oktatás/tudomány/tényszerü általános" + +msgid "empty" +msgstr "üres" + +msgid "enable" +msgstr "engedélyezés" + +msgid "enable bouquet edit" +msgstr "bouquet módosítás engedélyezése" + +msgid "enable favourite edit" +msgstr "kedvencek módosításának engedélyezése" + +msgid "enable move mode" +msgstr "mozgatási mód engedélyezése" + +msgid "enabled" +msgstr "engedélyezve" + +msgid "end alternatives edit" +msgstr "alternatívák módosításának vége" + +msgid "end bouquet edit" +msgstr "bouquet módosítás vége" + +msgid "end cut here" +msgstr "vágás kilépő pontja" + +msgid "end favourites edit" +msgstr "kedvencek módosításának vége" + +msgid "entertainment (10-16 year old)" +msgstr "szórakoztató (10-16 éves korosztály" + +msgid "entertainment (6-14 year old)" +msgstr "szórakoztató (6-14 éves korosztály" + +msgid "equal to" +msgstr "egyenlő" + +msgid "equestrian" +msgstr "lovaglás" + +msgid "exit DVD player or return to file browser" +msgstr "DVD Player bezárása és visszatérés a keresőbe" + +msgid "exit movielist" +msgstr "Kilépés" + +msgid "exit network adapter configuration" +msgstr "kliépés a hálózati adapter beállításaiból" + +msgid "exit networkadapter setup menu" +msgstr "kliépés a hálózati adapter beállításaiból" + +msgid "experimental film/video" +msgstr "kísérleti filmezés" + +msgid "false" +msgstr "nem" + +msgid "fashion" +msgstr "divat" + +msgid "fileformats (BMP, PNG, JPG, GIF)" +msgstr "fájlformátumok (BMP, PNG, JPG, GIF)" + +msgid "filename" +msgstr "fájlnév" + +msgid "film/cinema" +msgstr "mozi" + +msgid "fine arts" +msgstr "művészet" + +msgid "fine-tune your display" +msgstr "megjelenítő finom beállítása" + +msgid "fitness & health" +msgstr "fitnessz / egészség" + +msgid "flat alphabetic" +msgstr "ábécé szerinti rendezés" + +msgid "flat alphabetic reverse" +msgstr "fordított ABC" + +msgid "folk/traditional music" +msgstr "folklór/népzene" + +msgid "football/soccer" +msgstr "futball/foci" + +msgid "foreign countries/expeditions" +msgstr "külföldi országok/kirándulás" + +msgid "forward to the next chapter" +msgstr "ugrás a következő fejezethez" + +msgid "free" +msgstr "szabad" + +msgid "from" +msgstr "" + +msgid "further education" +msgstr "továbboktatás" + +msgid "game show/quiz/contest" +msgstr "játék/show/kvíz" + +msgid "gardening" +msgstr "kertészet" + +msgid "go to deep standby" +msgstr "lekapcsolás mély-készenléti módba" + +msgid "go to standby" +msgstr "lekapcsolás készenléti módba" + +msgid "grab this frame as bitmap" +msgstr "pillanatkép mentése" + +msgid "green" +msgstr "zöld" + +msgid "handicraft" +msgstr "kézművesség" + +msgid "height" +msgstr "magasság" + +msgid "help..." +msgstr "Súgó..." + +msgid "horizontal" +msgstr "horrizontális" + +msgid "information/education/school program" +msgstr "információ/oktatás/isklola" + +msgid "init module" +msgstr "modul inicializálása" + +msgid "init modules" +msgstr "modul inicializálás" + +msgid "insert mark here" +msgstr "jelző elhelyezése ide" + +msgid "invalid type" +msgstr "helytelen típus" + +msgid "jazz" +msgstr "jazz" + +msgid "jump back to the previous title" +msgstr "vissza az előző chapterhez" + +msgid "jump forward to the next title" +msgstr "ugrás a következő címhez" + +msgid "languages" +msgstr "nyelvek" + +msgid "leave movie player..." +msgstr "kilépés a lejátszóból..." + +msgid "left" +msgstr "bal" + +msgid "left, wrapped" +msgstr "bal oldalon sortöréssel" + +msgid "leisure hobbies (general)" +msgstr "hobbi/szórakozás (általános)" + +msgid "length" +msgstr "hossz" + +msgid "limit ..., aborting !" +msgstr "limit... abbahagytam!" + +msgid "list style compact" +msgstr "kompakt lista stílus" + +msgid "list style compact with description" +msgstr "kompakt lista stílus leírással" + +msgid "list style default" +msgstr "alapértelmezett lista stílus" + +msgid "list style single line" +msgstr "egyvonalas lista stílus" + +msgid "literature" +msgstr "irodalom" + +msgid "live broadcast" +msgstr "élő adás" + +msgid "locked" +msgstr "hangolva" + +msgid "loopthrough to" +msgstr "átfűzés ide" + +msgid "magazines/reports/documentary" +msgstr "magazin/riport/dokumentum" + +msgid "manual" +msgstr "kézi" + +msgid "martial sports" +msgstr "harci sportok" + +msgid "medicine/physiology/psychology" +msgstr "egészség" + +msgid "menu" +msgstr "menü" + +msgid "mins" +msgstr "perc" + +msgid "minutes" +msgstr "perc" + +msgid "month" +msgstr "hónap" + +msgid "motor sport" +msgstr "motorsport" + +msgid "motoring" +msgstr "motor" + +msgid "move down to last entry" +msgstr "ugrás a legutolsó tételhez" + +msgid "move down to next entry" +msgstr "ugrás a következő tételhez" + +msgid "move up to first entry" +msgstr "ugrás az első tételhez" + +msgid "move up to previous entry" +msgstr "ugrás az előző tételhez" + +msgid "movie/drama (general)" +msgstr "mozi/színház (általános)" + +msgid "multinorm" +msgstr "többnormás" + +msgid "music/ballet/dance (general)" +msgstr "zene/balett/tánc (általános)" + +msgid "musical/opera" +msgstr "musical/opera" + +msgid "nature/animals/environment" +msgstr "természet/állatvilág/környezet" + +msgid "never" +msgstr "soha" + +msgid "new media" +msgstr "új média" + +msgid "news magazine" +msgstr "hírmagazin" + +msgid "news/current affairs (general)" +msgstr "hírek/gazdaság (általános)" + +msgid "news/weather report" +msgstr "hírek/időjárás" + +msgid "no" +msgstr "nem" + +msgid "no CAId selected" +msgstr "nincs kijelölt CAId" + +msgid "no CI slots found" +msgstr "nincs található CI foglalat" + +msgid "no module found" +msgstr "nincs behelyezve modul" + +msgid "no storage devices found" +msgstr "nem található semmilyen háttértár" + +msgid "none" +msgstr "nincs" + +msgid "normal" +msgstr "hagyományos" + +msgid "not configured" +msgstr "nem konfigurált" + +msgid "not locked" +msgstr "nem hangolt" + +msgid "not supported" +msgstr "nem támogatott" + +msgid "not used" +msgstr "nem használt" + +msgid "nothing connected" +msgstr "semmi sincs csatlakoztatva" + +msgid "of a DUAL layer medium used." +msgstr "a kétréteges lemezből felhasználva." + +msgid "of a SINGLE layer medium used." +msgstr "egyoldalas (single layer) medium felhasználva." + +msgid "off" +msgstr "ki" + +msgid "offset is" +msgstr "offszett:" + +msgid "on" +msgstr "be" + +msgid "on READ ONLY medium." +msgstr "a csak olvasható hordozón." + +msgid "on end of movie" +msgstr "film lejátszás végén" + +msgid "once" +msgstr "egyszeri" + +msgid "only from deep standby" +msgstr "" + +msgid "only from standby" +msgstr "" + +msgid "open EPG..." +msgstr "" + +msgid "open Info..." +msgstr "" + +msgid "open nameserver configuration" +msgstr "névszerver konfiguráció megnyítása" + +msgid "original" +msgstr "eredeti" + +msgid "original language" +msgstr "eredeti nyelv" + +msgid "pass" +msgstr "művelet" + +msgid "performing arts" +msgstr "Előadóművészet" + +msgid "play as picture in picture" +msgstr "megjelenítés Kép-a-Képben" + +msgid "play in mainwindow" +msgstr "lejátszás a főképernyőn" + +msgid "please press OK when ready" +msgstr "nyomja le az OK-t ha kész" + +msgid "please wait, loading picture..." +msgstr "kérem vérjon, kép betöltése..." + +msgid "popular culture/traditional arts" +msgstr "néprajz" + +msgid "pre-school children's program" +msgstr "óvodásoknak" + +msgid "receiver software because updates are available." +msgstr "készülék szoftvere, frisstések elérhetők" + +msgid "record" +msgstr "felvétel" + +msgid "recording..." +msgstr "felvétel..." + +msgid "red" +msgstr "piros" + +msgid "religion" +msgstr "vallás" + +msgid "remarkable people" +msgstr "nevezetes emberek" + +msgid "remove after this position" +msgstr "e pont után mindent töröljön" + +msgid "remove all alternatives" +msgstr "összes alternatíva törlése" + +msgid "remove all new found flags" +msgstr "minden újtalálat jelzö törlése" + +msgid "remove before this position" +msgstr "e pont elött mindent töröljön" + +msgid "remove bookmark" +msgstr "bookmark eltávolítása" + +msgid "remove directory" +msgstr "mappa eltávolítása" + +msgid "remove entry" +msgstr "bejegyzés törlése" + +msgid "remove from parental protection" +msgstr "eltávolítás a gyermekzár védelem alól" + +msgid "remove new found flag" +msgstr "'új' jelző eltávolítása" + +msgid "remove selected satellite" +msgstr "kiválasztott műhold törlése" + +msgid "remove this mark" +msgstr "e jelzö eltávolítása" + +msgid "rename entry" +msgstr "átnevezés" + +msgid "repeat playlist" +msgstr "playlista ismétlése" + +msgid "repeated" +msgstr "többszöri" + +msgid "reverse by date" +msgstr "dátum szerint csökkenő" + +msgid "rewind to the previous chapter" +msgstr "visszatekerés az előző chapterhez" + +msgid "right" +msgstr "jobb" + +msgid "right, wrapped" +msgstr "jobb oldalon sortöréssel" + +msgid "rock/pop" +msgstr "rock/pop" + +msgid "romance" +msgstr "románc" + +msgid "save last directory on exit" +msgstr "az utolsó mappa mentése kilépéskor" + +msgid "save playlist on exit" +msgstr "lejátszási lista mentése kilépéskor" + +msgid "scan state" +msgstr "keresési állapot" + +msgid "science fiction/fantasy/horror" +msgstr "szcifi/fantasy/horror" + +msgid "second cable of motorized LNB" +msgstr "forgatós fej második kábele" + +msgid "seconds" +msgstr "másodperc" + +msgid "select" +msgstr "válasszon" + +msgid "select CAId's" +msgstr "CAId-ek kijelölése" + +msgid "select EPG..." +msgstr "" + +msgid "select Info..." +msgstr "" + +msgid "select menu entry" +msgstr "válasszon menütételt" + +msgid "select movie" +msgstr "felvétel kiválasztása" + +msgid "select the movie path" +msgstr "válassza ki a felvételek útvonalát" + +msgid "serious music/classic music" +msgstr "komolyzene" + +msgid "serious/classical/religious/historical movie/drama" +msgstr "komolyzene/klasszikus/vallási/történelmi/dráma" + +msgid "service PIN" +msgstr "szerviz-PIN" + +msgid "set as startup service" +msgstr "beállítás indítási csatornának" + +msgid "setup PIN" +msgstr "PIN-kód beállítása" + +msgid "show DVD main menu" +msgstr "DVD főmenü megjelenítése" + +msgid "show all tags" +msgstr "minden metaadat megjelenítése" + +msgid "show alternatives" +msgstr "alternatívák megjelenítése" + +msgid "show event details" +msgstr "részletes adatok megjelenítése" + +msgid "show extended description" +msgstr "részletes leírás megjelenítése" + +msgid "show mediaplayer on mainmenu" +msgstr "Médialejátszó megjelenítése a főmenüben" + +msgid "show softwaremanager in setup menu" +msgstr "Szoftverkezelő megjelenítése a beállítások menüben" + +msgid "show softwaremanager on blue button" +msgstr "Szoftverkezelő megjelenítése a kék-gombos menüben" + +msgid "show tag menu" +msgstr "metaadat menü megjelenítése" + +msgid "show transponder info" +msgstr "transzponder infó megjelenítése" + +msgid "show/game show (general)" +msgstr "show/háték (általános)" + +msgid "shuffle" +msgstr "összekever" + +msgid "shut down" +msgstr "kikapcsolás" + +msgid "simple" +msgstr "egyszerű" + +msgid "skip backward" +msgstr "Vissza kihagyása" + +msgid "skip forward" +msgstr "Előre kihagyása" + +msgid "soap/melodram/folkloric" +msgstr "szappan/melodráma" + +msgid "social/political issues/economics (general)" +msgstr "szociális/politikai (általános)" + +msgid "social/spiritual science" +msgstr "szociális/spirituális" + +msgid "sorting of playlists" +msgstr "lejátszási listák rendezése" + +msgid "special characters" +msgstr "speciális karakterek" + +msgid "special events" +msgstr "különleges események" + +msgid "special format data DVD (HDTV compatible)" +msgstr "speciális adat-DVD (HDTV-kompatibilis)" + +msgid "sports (general)" +msgstr "sport (általános)" + +msgid "sports magazine" +msgstr "sportmagazin" + +msgid "standard" +msgstr "hagyományos" + +msgid "start cut here" +msgstr "vágás belépő pontja" + +msgid "start directory" +msgstr "Kiindulási mappa" + +msgid "stepsize" +msgstr "lépték mérték" + +msgid "stereo" +msgstr "sztereó" + +msgid "stop using as startup service" +msgstr "beállítás indítási csatornának" + +msgid "switch to bookmarks" +msgstr "átkapcsolás a bookmarkokra" + +msgid "switch to filelist" +msgstr "kapcsolás fájllistára" + +msgid "switch to the next angle" +msgstr "váltás a következő nézőszögre" + +msgid "switch to the next audio track" +msgstr "átkapcsolás a következő hangsávra" + +msgid "switch to the next subtitle language" +msgstr "átkapcsolás a következő felirat nyelvre" + +msgid "talk show" +msgstr "beszédműsor" + +msgid "team sports" +msgstr "csapat-sport" + +msgid "technology/natural science" +msgstr "technológia/természettudomány" + +msgid "template file" +msgstr "sablon-fájl" + +msgid "tennis/squash" +msgstr "tenisz/fallabda" + +msgid "this recording" +msgstr "ez a felvétel" + +msgid "this service is protected by a parental control pin" +msgstr "a csatorna gyermekzárral védve van" + +msgid "toggle time, chapter, audio, subtitle info" +msgstr "idő, chapter, hangsáv, feliratsáv választás" + +msgid "top" +msgstr "teteje" + +msgid "tourism/travel" +msgstr "turizmus/utazás" + +msgid "true" +msgstr "igaz" + +msgid "unavailable" +msgstr "nem elérhető" + +msgid "unconfirmed" +msgstr "nem igazolt" + +msgid "undefined" +msgstr "nincs meghatározva" + +msgid "unknown" +msgstr "ismeretlen" + +msgid "unknown service" +msgstr "ismeretlen csatorna" + +msgid "unpublished" +msgstr "kiadatlan" + +msgid "until standby/restart" +msgstr "kikapcsolásig/újraindításig" + +msgid "user defined" +msgstr "egyedi meghatározás" + +msgid "variety show" +msgstr "varieté" + +msgid "vertical" +msgstr "vertikális" + +msgid "wait for ci..." +msgstr "várakozás modulra..." + +msgid "wait for mmi..." +msgstr "várakozás mmi-re..." + +msgid "waiting" +msgstr "várakozás" + +msgid "water sport" +msgstr "vizi sport" + +msgid "weekly" +msgstr "hetente" + +msgid "west" +msgstr "nyugat" + +msgid "when PiPzap enabled zap channel down..." +msgstr "" + +msgid "when PiPzap enabled zap channel up..." +msgstr "" + +msgid "white" +msgstr "fehér" + +msgid "whitelist" +msgstr "engedélyezett lista" + +msgid "width" +msgstr "szélesség" + +msgid "winter sport" +msgstr "téli sport" + +msgid "wireless network interface" +msgstr "Vezeték nélküli hálózati interfész" + +#, python-format +msgid "with %d error" +msgid_plural "with %d errors" +msgstr[0] "%d hibával" +msgstr[1] "%d hibákkal" + +msgid "working" +msgstr "működőképes" + +msgid "yellow" +msgstr "sárga" + +msgid "yes" +msgstr "igen" + +msgid "yes (keep feeds)" +msgstr "igen (feed-ek megtartása)" + +msgid "zap" +msgstr "ugrás" + +msgid "zap and record" +msgstr "ugrás és felvétel" + +msgid "zapped" +msgstr "ugrott" + +#~ msgid "AA" +#~ msgstr "AA" + +#~ msgid "AB" +#~ msgstr "AB" + +#~ msgid "Activate PiP" +#~ msgstr "Kép-a-Képben bekapcsolása" + +#~ msgid "Add/remove timer for current event" +#~ msgstr "Aktuális esemény időzítésének kezelése" + +#~ msgid "Adjust HDMI CEC settings" +#~ msgstr "HDMI CEC távvezérlési beállítások" + +#~ msgid "All satellites" +#~ msgstr "Összes műhold" + +#~ msgid "And will shutdown your receiver over " +#~ msgstr "Kikapcsolás:" + +#~ msgid "BA" +#~ msgstr "BA" + +#~ msgid "BB" +#~ msgstr "BB" + +#~ msgid "Behavior of 'pause' when paused" +#~ msgstr "A 'szünet' gomb amikor a lejátszás szüneteltetve van" + +#~ msgid "Committed DiSEqC command" +#~ msgstr "Elkötelezett DiSEqC parancs" + +#~ msgid "Configure if and how service type icons will be shown." +#~ msgstr "A csatornák típusának megjelenítésének módja és lehetősége a csatornalistában" + +#~ msgid "Configure if service picons will be shown in the servicelist." +#~ msgstr "A csatornák pikonjainak megjelenítésének módja és lehetősége a csatornalistában." + +#~ msgid "Configure the behavior of the 'pause' key when movie playback is already paused." +#~ msgstr "A 'szünet' gomb működése abban az esetben, amikor a lejástás már szüneteltetett állapotban van." + +#~ msgid "Configure the duration in hours and action, which could be shut down or standby, when the receiver is not controlled." +#~ msgstr "Ennyi óra tétlenség után mi történjen: kikapcsolás, készenlét." + +#~ msgid "Configure the duration in minutes and action, which could be shut down or standby, for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +#~ msgstr "Ennyi perc után mi történjen: kikapcsolás, készenlét (elalvás időzítés). Válassza ezt a menüpontot, majd az OK vagy a zöld gomb lenyomásával aktiválja a beállítást az elalváshoz." + +#~ msgid "DiSEqC repeats" +#~ msgstr "DiSEqC ismétlések" + +#~ msgid "Goto specific data/time" +#~ msgstr "Ugrás bizonyos dátum/időre" + +#~ msgid "Hide numbered markers" +#~ msgstr "Sorszámozott elválasztók elrejtése" + +#~ msgid "Memory positions" +#~ msgstr "Pozíció memória" + +#~ msgid "No satellite frontend found!!" +#~ msgstr "Nem találtam műholdas tunert!!" + +#~ msgid "Open service list and select next channel" +#~ msgstr "Csatornalista megnnyítása és a következő csatorna választása" + +#~ msgid "Open service list and select previous channel" +#~ msgstr "Csatornalista megnnyítása és az előző csatorna választása" + +#~ msgid "PPanels" +#~ msgstr "PPanel-ek" + +#~ msgid "Press '0' to toggle internal/external PiP." +#~ msgstr "A Kép-a-Képben felcserélése a '0' gombbal történik." + +#~ msgid "Remove timer" +#~ msgstr "Időzítés eltávolítása" + +#~ msgid "Send DiSEqC" +#~ msgstr "DiSEqC-küldés" + +#~ msgid "Show picons in servicelist" +#~ msgstr "Pikonok mejelenítése a csatornalistában" + +#~ msgid "Shutdown after current event" +#~ msgstr "Kikapcsolás az aktuális műsor végén" + +#~ msgid "Shutdown in " +#~ msgstr "Kikapcsolás: " + +#~ msgid "Switch next channel" +#~ msgstr "Következő csatorna" + +#~ msgid "Tuning step size" +#~ msgstr "Hangolás léptéke" + +#~ msgid "Uncommitted DiSEqC command" +#~ msgstr "Nem elkötelezett DiSEqC parancs" + +#~ msgid "When enabled, numbered markers will be hiden." +#~ msgstr "A csatornalistában esetleg lévő, sorszámozott elválasztó elemek elrejtése." + +#~ msgid "Your receiver will shutdown due to inactivity." +#~ msgstr "A készülék most kikapcsol inaktivitás miatt." + +#~ msgid "Your receiver will shutdown due to the sleeptimer." +#~ msgstr "A készülék most kikapcsol elalvás-időzítés miatt." + +#~ msgid "Zap back to service before satfinder?" +#~ msgstr "Ugorjunk vissza a műholdkereső elött nézett csatornához?" + +#~ msgid "tuner is not supported" +#~ msgstr "nem támogatott tuner" diff --git a/po/is.po b/po/is.po new file mode 100644 index 0000000..ed9d2a0 --- /dev/null +++ b/po/is.po @@ -0,0 +1,9473 @@ +# Icelandic translations for Enigma2. +# +msgid "" +msgstr "" +"Project-Id-Version: enigma2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-07-21 19:08+0200\n" +"PO-Revision-Date: 2011-05-07 12:23+0200\n" +"Last-Translator: Baldur <bsveinsson@gmail.com>\n" +"Language-Team: Polar Team/LT Team <baddi@oreind.is>\n" +"Language: is\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Pootle 2.0.3\n" +"X-Poedit-Language: Icelandic\n" +"X-Poedit-SourceCharset: utf-8\n" +"X-Poedit-Country: ICELAND\n" + +msgid "" +"\n" +"Advanced options and settings." +msgstr "" +"\n" +"Auka sérfræði stillingar." + +msgid "" +"\n" +"After pressing OK, please wait!" +msgstr "" +"\n" +"Bíðið eftir að hafa ýtt á OK!" + +msgid "" +"\n" +"Backup your receiver settings." +msgstr "" + +msgid "" +"\n" +"Edit the upgrade source address." +msgstr "" +"\n" +"Breyta veffangi uppfærslu uppruna." + +msgid "" +"\n" +"Manage extensions or plugins for your receiver" +msgstr "" + +msgid "" +"\n" +"Online update of your receiver software." +msgstr "" + +# +msgid "" +"\n" +"Press OK on your remote control to continue." +msgstr "" +"\n" +"Ýtið á OK á fjarstýringunni til að halda áfram." + +# +msgid "" +"\n" +"Restore your backups by date." +msgstr "" +"\n" +"Setja inn stilligar eftir dagsetningu." + +msgid "" +"\n" +"Restore your receiver settings." +msgstr "" + +msgid "" +"\n" +"Restore your receiver with a new firmware." +msgstr "" + +msgid "" +"\n" +"Scan for local extensions and install them." +msgstr "" +"\n" +"Leita að viðbótum á móttakara og setja þær upp." + +# +msgid "" +"\n" +"Select your backup device.\n" +"Current device: " +msgstr "" +"\n" +"Veldu afritunar tæki.\n" +"Núverandi tæki:" + +# +msgid "" +"\n" +"View, install and remove available or installed packages." +msgstr "" +"\n" +"Skoða, setja inn og taka út hugbúnaðar pakka." + +msgid " (PiP)" +msgstr "" + +msgid " (Radio)" +msgstr "" + +msgid " (TV)" +msgstr "" + +msgid " (disabled)" +msgstr "" + +msgid " (higher than any auto)" +msgstr "" + +msgid " (higher than rotor any auto)" +msgstr "" + +msgid " (lower than any auto)" +msgstr "" + +msgid " extensions." +msgstr " viðbætur." + +msgid " ms" +msgstr " ms" + +# +msgid " packages selected." +msgstr " pakkar valdir." + +# +msgid " updates available." +msgstr " uppfærslur tiltækar." + +#. TRANSLATORS: short time representation hour:minute +#, python-format +msgid "%2d:%02d" +msgstr "" + +#. TRANSLATORS: full time representation hour:minute:seconds +#, python-format +msgid "%2d:%02d:%02d" +msgstr "" + +msgid "%A %d %B" +msgstr "" + +#. TRANSLATORS: long date representations dayname daynum monthname in strftime() format! See 'man strftime' +msgid "%A %e %B" +msgstr "" + +#. TRANSLATORS: full date representation dayname daynum monthname year in strftime() format! See 'man strftime' +msgid "%A %e %B %Y" +msgstr "" + +# +msgid "%H:%M" +msgstr "%H:%M" + +#. TRANSLATORS: short date representation short dayname daynum short monthname in strftime() format! See 'man strftime' +msgid "%a %e/%m" +msgstr "" + +#. TRANSLATORS: long date representation short dayname daynum short monthname hour:minute in strftime() format! See 'man strftime' +msgid "%a %e/%m %-H:%M" +msgstr "" + +# +#. TRANSLATORS: Intermediate scanning result, '%d' channel(s) have been found so far +#, fuzzy, python-format +msgid "%d channel found" +msgid_plural "%d channels found" +msgstr[0] "%d rásir fundnar!" +msgstr[1] "%d rásir fundnar!" + +#, python-format +msgid "%d file" +msgid_plural "%d files" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "" +msgstr[1] "" + +# +#, fuzzy, python-format +msgid "%d job is running in the background!" +msgid_plural "%d jobs are running in the background!" +msgstr[0] "%d verk eru í vinnslu í bakgrunni!" +msgstr[1] "%d verk eru í vinnslu í bakgrunni!" + +# +#, python-format +msgid "%d min" +msgstr "%d min" + +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d minutes" +msgstr "" + +#, python-format +msgid "%d pixel wide" +msgid_plural "%d pixels wide" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "" +msgstr[1] "" + +# +#, fuzzy, python-format +msgid "%d subdirectory" +msgid_plural "%d subdirectories" +msgstr[0] "/var mappa" +msgstr[1] "/var mappa" + +# +#, fuzzy, python-format +msgid "%d wireless network found!" +msgid_plural "%d wireless networks found!" +msgstr[0] "fann 1 þráðlaust net!" +msgstr[1] "fann 1 þráðlaust net!" + +msgid "%d-%b-%Y %-H:%M" +msgstr "" + +msgid "%d-%m" +msgstr "" + +# +msgid "%d.%B %Y" +msgstr "%d.%B %Y" + +#. TRANSLATORS: VFD hour:minute daynum short monthname in strftime() format! See 'man strftime' +msgid "%k:%M %e/%m" +msgstr "" + +# +#, fuzzy, python-format +msgid "%s %s free disk space" +msgstr "laust diskpláss" + +# +#, python-format +msgid "%s (%s)\n" +msgstr "%s (%s)\n" + +#. TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. +#, python-format +msgid "%s is no longer used. Should it be deleted?" +msgstr "" + +# +#, fuzzy, python-format +msgid "%s updated package available" +msgid_plural "%s updated packages available" +msgstr[0] " uppfærslur tiltækar." +msgstr[1] " uppfærslur tiltækar." + +#, python-format +msgid "%s%d min" +msgstr "" + +#, python-format +msgid "%s/%s: %s" +msgstr "" + +# +msgid "(ZAP)" +msgstr "(STÖKK)" + +# +msgid "(empty)" +msgstr "(tómt)" + +# +msgid "(show optional DVD audio menu)" +msgstr "(sýna viðbótar DVD hljóð valmynd)" + +# +msgid "* Only available if more than one interface is active." +msgstr "* Bara virkt ef að fleira en eitt tæki er virkt." + +msgid "/s" +msgstr "" + +# +msgid "0" +msgstr "0" + +# +msgid "1" +msgstr "1" + +# +msgid "1.0" +msgstr "1.0" + +# +msgid "1.1" +msgstr "1.1" + +# +msgid "1.2" +msgstr "1.2" + +# +msgid "12V output" +msgstr "12V út" + +# +msgid "13 V" +msgstr "13 V" + +# +msgid "16:10" +msgstr "16:10" + +# +msgid "16:10 Letterbox" +msgstr "16:10 Letterbox" + +# +msgid "16:10 PanScan" +msgstr "16:10 PanScan" + +# +msgid "16:9" +msgstr "16:9" + +# +msgid "16:9 Letterbox" +msgstr "16:9 Letterbox" + +# +msgid "16:9 always" +msgstr "16:9 alltaf" + +# +msgid "18 V" +msgstr "18 V" + +# +msgid "2" +msgstr "2" + +msgid "23.976" +msgstr "" + +msgid "24" +msgstr "" + +msgid "25" +msgstr "" + +msgid "29.97" +msgstr "" + +# +msgid "3" +msgstr "3" + +msgid "30" +msgstr "" + +msgid "3d mode" +msgstr "" + +# +msgid "4" +msgstr "4" + +# +msgid "4:3" +msgstr "4:3" + +# +msgid "4:3 Letterbox" +msgstr "4:3 Letterbox" + +# +msgid "4:3 PanScan" +msgstr "4:3 PanScan" + +# +msgid "5" +msgstr "5" + +# +msgid "6" +msgstr "6" + +# +msgid "7" +msgstr "7" + +# +msgid "8" +msgstr "8" + +# +msgid "9" +msgstr "9" + +#, python-format +msgid ": %s" +msgstr "" + +msgid "<Current movielist location>" +msgstr "<Núverandi staður bíómyndalista>" + +msgid "<Default movie location>" +msgstr "<Sjálfgefinn staður bíómynda>" + +msgid "<Last timer location>" +msgstr "<Síðasti staður tímastillinga>" + +msgid "<unknown>" +msgstr "<óþekkt>" + +msgid "??" +msgstr "??" + +msgid "A" +msgstr "A" + +# +#, fuzzy, python-format +msgid "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" +msgstr "" +"Stillingaskrá (%s) er breytt síðan uppsetning var gerð.\n" +"Viltu halda þinni útgáfu?" + +# +#, python-format +msgid "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" +msgstr "" +"Stillingaskrá (%s) er breytt síðan uppsetning var gerð.\n" +"Viltu halda þinni útgáfu?" + +msgid "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" + +msgid "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" + +# +msgid "A graphical EPG for all services of an specific bouquet" +msgstr "Myndrænt EPG fyrir allar rásir á ákveðnum rásavendi" + +# +#, python-format +msgid "" +"A record has been started:\n" +"%s" +msgstr "" +"Upptaka hefur hafist:\n" +"%s" + +# +msgid "" +"A recording is currently running.\n" +"What do you want to do?" +msgstr "" +"Upptaka er nú í gangi.\n" +"Hvað viltu núna gera?" + +# +msgid "A recording is currently running. Please stop the recording before trying to configure the positioner." +msgstr "Upptaka er nú í gangi. Stoppið vinsamlega upptökuna áður en að þú reynir að stilla staðsetjara." + +msgid "A recording is currently running. Please stop the recording before trying to scan." +msgstr "" + +# +msgid "A recording is currently running. Please stop the recording before trying to start the satfinder." +msgstr "Upptaka er í gangi núna. Stoppaðu upptökuna áður en að þú byrjar gervihnattaleit." + +# +#, python-format +msgid "A required tool (%s) was not found." +msgstr "Nauðsynlegt tól (%s) fannst ekki." + +msgid "A search for available updates is currently in progress." +msgstr "Leit að tiltækum uppfærslum í gangi." + +msgid "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" +msgstr "" +"Annað uppsett netkort fannst.\n" +"\n" +"Viltu hætta að nota það?" + +msgid "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" + +msgid "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" + +# +msgid "A small overview of the available icon states and actions." +msgstr "Einfalt yfirlit yfir stöðu smámynda og aðgerða." + +msgid "" +"A timer failed to record!\n" +"Disable TV and try again?\n" +msgstr "" +"Tímastillt upptaka mistókst!\n" +"Hætta og reyna aftur?\n" + +# +#, fuzzy +msgid "A/V settings" +msgstr "Stilla hljóð/mynd" + +msgid "AC3/DTS downmix" +msgstr "" + +# +msgid "Abort" +msgstr "Hætta við" + +msgid "About" +msgstr "Um" + +msgid "About..." +msgstr "Um..." + +# +msgid "Accesspoint:" +msgstr "Aðgangspunktur:" + +# +msgid "Action on long powerbutton press" +msgstr "Hvað skal gera ef ýtt er lengi á power takka" + +msgid "Action on short powerbutton press" +msgstr "Hvað skal gera ef ýtt er stutt á straumrofa" + +# +msgid "Activate Picture in Picture" +msgstr "Virkja Mynd í Mynd" + +# +#, fuzzy +msgid "Activate current configuration" +msgstr "virkja núverandi stillingar" + +# +msgid "Activate network settings" +msgstr "Virkja netkerfis stillingar" + +# +#, fuzzy +msgid "Activate the configured network settings." +msgstr "Virkja netkerfis stillingar" + +# +msgid "Adapter settings" +msgstr "Stilling tækis" + +# +msgid "Add" +msgstr "Viðbót" + +# +msgid "Add Bookmark" +msgstr "Bæta við bókamerki" + +# +msgid "Add a mark" +msgstr "Bæta við merki" + +# +#, fuzzy +msgid "Add a nameserver entry" +msgstr "bæta við nafnaþjón" + +# +msgid "Add a new title" +msgstr "Bæta við nýjum titli" + +# +#, fuzzy +msgid "Add bookmark" +msgstr "bæta við bókamerki" + +# +#, fuzzy +msgid "Add directory to playlist" +msgstr "bæta möppu við spilunarlista" + +# +#, fuzzy +msgid "Add file to playlist" +msgstr "bæta skrá við spilunarlista" + +# +#, fuzzy +msgid "Add files to playlist" +msgstr "bæta rásum við spilunarlista" + +msgid "Add more details to the crash log" +msgstr "" + +# +#, fuzzy +msgid "Add provider" +msgstr "bæta við sendanda" + +# +#, fuzzy +msgid "Add recording (enter recording duration)" +msgstr "bæta við upptöku (stilla tíma á upptöku)" + +# +#, fuzzy +msgid "Add recording (enter recording endtime)" +msgstr "bæta við upptöku (velja tímalok upptöku)" + +# +#, fuzzy +msgid "Add recording (indefinitely)" +msgstr "bæta við upptöku (endalaus)" + +# +#, fuzzy +msgid "Add recording (stop after current event)" +msgstr "bæta við upptöku (stoppa eftir núverandi atriði)" + +# +#, fuzzy +msgid "Add service" +msgstr "bæta við rás" + +msgid "Add timer" +msgstr "Taka upp" + +msgid "Add title" +msgstr "Bæta við titli" + +msgid "Add to bouquet" +msgstr "Bæta við rásavönd" + +msgid "Add to favourites" +msgstr "Bæta við eftirlætisrásir" + +msgid "Add/remove change timer for current event" +msgstr "" + +msgid "Adjust 3D settings" +msgstr "" + +msgid "Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens." +msgstr "Stilltu lita stillingar þannig að öll litablæbrigði séu aðgreinanleg og eru eins björt og hægt er. Ef þú ert ánægður með árangurinn, ýttu þá á OK til að loka stillinga skjánum eða ýttu á númeralykil til að velja aðra prufumynd." + +msgid "Advanced" +msgstr "" + +#, fuzzy +msgid "Advanced options" +msgstr "Sérfræði stillingar" + +msgid "Advanced restore" +msgstr "Sérfræði innsetning afrita" + +#, fuzzy +msgid "Advanced software" +msgstr "Hugbúnaður sérfræðinga" + +#, fuzzy +msgid "Advanced software plugin" +msgstr "Sérfræði íforrit" + +#, fuzzy +msgid "Advanced video enhancement setup" +msgstr "Myndstillingar fyrir lengra komna" + +#, fuzzy +msgid "Advanced video setup" +msgstr "Sérfræði myndstillingar" + +msgid "After event" +msgstr "Eftir atriði" + +msgid "Album" +msgstr "Album" + +msgid "Alignment of events" +msgstr "" + +msgid "Alignment of service names" +msgstr "" + +msgid "All" +msgstr "Allt" + +msgid "All ages" +msgstr "" + +msgid "All satellites 1 (USALS)" +msgstr "" + +msgid "All satellites 2 (USALS)" +msgstr "" + +msgid "All satellites 3 (USALS)" +msgstr "" + +msgid "All satellites 4 (USALS)" +msgstr "" + +msgid "Allocate" +msgstr "" + +msgid "Allocate unused memory index" +msgstr "" + +msgid "Allow quit movieplayer with exit" +msgstr "" + +msgid "Allow subtitle language to equal audio language" +msgstr "" + +msgid "Allow subtitles for hearing impaired" +msgstr "" + +msgid "Alpha" +msgstr "Gegnsæi" + +# +#, fuzzy +msgid "Alternative" +msgstr "bæta við valkosti" + +#, fuzzy +msgid "Alternative numbering mode" +msgstr "Möguleika útvarps stilling" + +msgid "Alternative services tuner priority" +msgstr "Móttakara forgangur við rásaval" + +msgid "Always ask" +msgstr "Spyrja alltaf" + +msgid "Always hide infobar" +msgstr "" + +msgid "An empty filename is illegal." +msgstr "Það þarf að vera skráarnafn." + +# +#, fuzzy +msgid "An error occurred while downloading the packetlist. Please try again." +msgstr "Það varð villa við niðurhal pakka listans. Vinsamlega prófaðu aftur." + +msgid "An unknown error occurred!" +msgstr "Óþekkt villa varð!" + +msgid "And will put your receiver in standby over " +msgstr "" + +msgid "Any activity" +msgstr "" + +msgid "Arabic" +msgstr "Arabíska" + +msgid "Are you sure to remove this entry?" +msgstr "" + +msgid "" +"Are you sure you want to activate this network configuration?\n" +"\n" +msgstr "" +"Ertu viss um að þú viljir virkja þessa net stillingu?\n" +"\n" + +#, fuzzy +msgid "" +"Are you sure you want to delete\n" +"the following backup:\n" +msgstr "" +"Ertu viss um að þú viljir eyða\n" +"eftirfarandi afriti:\n" + +msgid "Are you sure you want to exit this wizard?" +msgstr "Ertu viss um að þú viljir hætta í ráðgjafanum?" + +msgid "" +"Are you sure you want to restart your network interfaces?\n" +"\n" +msgstr "" +"Ertu viss um að þú viljir endurræsa netkortið?\n" +"\n" + +#, fuzzy, python-format +msgid "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Ertu viss um að þú viljir setja inn þetta Enigma2 afrit?\n" +"Enigma2 mun endurræsa eftir innsetningu" + +#, fuzzy +msgid "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Ertu viss um að þú viljir setja inn þetta Enigma2 afrit?\n" +"Enigma2 mun endurræsa eftir innsetningu" + +msgid "Artist" +msgstr "Listamaður" + +msgid "Arts/Culture" +msgstr "" + +msgid "Ask user" +msgstr "Spyrja notanda" + +#, fuzzy +msgid "Aspect ratio" +msgstr "Stærðarhlutfall" + +# +#, fuzzy +msgid "Assigned CAIds:" +msgstr "úthlutað CAIds:" + +# +#, fuzzy +msgid "Assigned services/provider:" +msgstr "úthlutaðar rásir/sendendur:" + +#, fuzzy +msgid "At beginning" +msgstr "að byrjun" + +#, fuzzy +msgid "At end" +msgstr "að enda" + +msgid "Audio" +msgstr "Hljóð" + +msgid "Audio PID" +msgstr "Hljóð PID" + +msgid "Audio language selection 1" +msgstr "" + +msgid "Audio language selection 2" +msgstr "" + +msgid "Audio language selection 3" +msgstr "" + +msgid "Audio language selection 4" +msgstr "" + +#, fuzzy +msgid "Audio options..." +msgstr "Hljóð stillingar..." + +# +#, fuzzy, python-format +msgid "Audio track (%s) format" +msgstr "hljóð rás (%s) form" + +# +#, fuzzy, python-format +msgid "Audio track (%s) language" +msgstr "hljóð rás (%s) tungumál" + +msgid "Author: " +msgstr "Höfundur:" + +msgid "Authoring mode" +msgstr "Höfunda hamur" + +#. TRANSLATORS: (aspect ratio policy: always try to display as fullscreen, when there is no content (black bars) on left/right, even if this breaks the aspect. +msgid "Auto" +msgstr "Sjálfvirkt" + +msgid "Auto chapter split every ? minutes (0=never)" +msgstr "Skipta í kafla hverja ? mínútu (0=aldrei)" + +msgid "Auto flesh" +msgstr "Sjálfvirkt skinn" + +msgid "Auto focus" +msgstr "" + +msgid "Auto focus commencing ..." +msgstr "" + +msgid "Auto language selection" +msgstr "" + +msgid "Auto scart switching" +msgstr "Sjálfvirk skipting á scarti" + +msgid "Automatic" +msgstr "Sjálfvirkt" + +#, fuzzy +msgid "Automatic scan" +msgstr "Sjálfvirk leit" + +msgid "Automatically start timeshift after" +msgstr "" + +msgid "Automatically turn on external subtitles" +msgstr "" + +msgid "Available format variables" +msgstr "Útfærslur tiltækra forma" + +msgid "B" +msgstr "B" + +msgid "BER" +msgstr "BER" + +msgid "BER:" +msgstr "BER:" + +msgid "Back" +msgstr "Til baka" + +msgid "Background" +msgstr "Bakgrunnur" + +# +#, fuzzy +msgid "Background color" +msgstr "bakgrunnslitur" + +msgid "Background delete option" +msgstr "" + +msgid "Background delete speed" +msgstr "" + +#, fuzzy +msgid "Backup completed." +msgstr "Afritun tókst ekki." + +msgid "Backup failed." +msgstr "Afritun tókst ekki." + +msgid "Backup is running..." +msgstr "Afritun í vinnslu..." + +msgid "Backup system settings" +msgstr "Afrita kerfis stillingar" + +msgid "Band" +msgstr "Tíðnisvið" + +msgid "Bandwidth" +msgstr "Bandbreidd" + +msgid "Basque" +msgstr "" + +msgid "Begin time" +msgstr "Byrjunar tími" + +msgid "Behavior of 'pause and ok' when paused" +msgstr "" + +msgid "Behavior of 0 key in PiP-mode" +msgstr "Virkun 0 hnapps í PiP-ham" + +msgid "Behavior when a movie is started" +msgstr "Aðgerð þegar mynd byrjar" + +msgid "Behavior when a movie is stopped" +msgstr "Aðgerð þegar mynd er stoppuð" + +msgid "Behavior when a movie reaches the end" +msgstr "Aðgerð þegar mynd er búin" + +msgid "Big PiP" +msgstr "" + +msgid "Bitrate:" +msgstr "Bitahraði:" + +msgid "Black screen" +msgstr "" + +msgid "Black screen till locked" +msgstr "" + +msgid "Block noise reduction" +msgstr "Suð deyfing" + +msgid "Blue boost" +msgstr "Auka bláan" + +msgid "Bookmarks" +msgstr "Bókamerki" + +msgid "Brightness" +msgstr "Birta" + +msgid "Bulgarian" +msgstr "" + +msgid "Burn DVD" +msgstr "Brenna DVD" + +# +#, fuzzy, python-format +msgid "Burn audio track (%s)" +msgstr "brenna hljóð rás (%s)" + +msgid "Burn existing image to DVD" +msgstr "Brenna tilbúna mynd á DVD" + +msgid "Burn to DVD" +msgstr "Brenna á DVD" + +msgid "Bus: " +msgstr "Rás:" + +msgid "By default, SNR will be shown in dB (when supported by the tuner). This setting forces SNR to be shown as a percentage instead." +msgstr "" + +msgid "C" +msgstr "C" + +msgid "C-Band" +msgstr "C-Band" + +msgid "CH" +msgstr "" + +msgid "CI assignment" +msgstr "CI stillingar" + +msgid "CVBS" +msgstr "CVBS" + +msgid "Cable" +msgstr "Kapalkerfi" + +msgid "Cable Scan" +msgstr "" + +#, fuzzy +msgid "Cache thumbnails" +msgstr "Taka nyndir í skyndiminni" + +msgid "Calculate" +msgstr "" + +msgid "Calculate all positions" +msgstr "" + +msgid "Calculation complete" +msgstr "" + +msgid "Calibrate" +msgstr "" + +msgid "Can be used for different fps between external subtitles and video." +msgstr "" + +msgid "Cancel" +msgstr "Hætta við" + +msgid "Cannot determine" +msgstr "" + +msgid "Cannot find any signal ..., aborting !" +msgstr "" + +msgid "Cannot move files on a different disk or system to the trash can" +msgstr "" + +msgid "Cannot move to trash can" +msgstr "" + +msgid "Capacity: " +msgstr "Stærð:" + +msgid "Card" +msgstr "Kort" + +msgid "Cascade PiP" +msgstr "" + +msgid "Center DVB subtitles" +msgstr "" + +msgid "Center time-labels and remove date" +msgstr "" + +msgid "Change bouquets in quickzap" +msgstr "Skipta á milli rása flétta í rásastökki" + +msgid "Change pin code" +msgstr "Breyta aðgangskóða" + +# +#, fuzzy +msgid "Change recording (duration)" +msgstr "breyta upptöku (tíma)" + +# +#, fuzzy +msgid "Change recording (endtime)" +msgstr "breyta upptöku (lokatíma)" + +msgid "Change repeat and delay settings?" +msgstr "" + +msgid "Change service PIN" +msgstr "Breyta aðgangsorði fyrir rásir" + +msgid "Change service PINs" +msgstr "Breyta aðgangsorðum fyrir rásir" + +msgid "Change setup PIN" +msgstr "Breyta aðgangsorði fyrir uppsetningu" + +msgid "Change step size" +msgstr "Breyta skrefa stærð" + +msgid "Change timer" +msgstr "" + +msgid "Changelog" +msgstr "Breytingaskrá" + +msgid "Channel" +msgstr "Rás" + +#, fuzzy +msgid "Channel list type" +msgstr "Valmynd rásalista" + +msgid "Channel not in services list" +msgstr "Rás ekki á rásalista" + +#, fuzzy +msgid "Channel selection" +msgstr "Rása val" + +msgid "Channel:" +msgstr "Rás:" + +msgid "Channellist menu" +msgstr "Valmynd rásalista" + +msgid "Chap." +msgstr "Kafli." + +msgid "Chapter" +msgstr "Kafli" + +msgid "Chapter:" +msgstr "Kafli:" + +msgid "Check" +msgstr "Athuga" + +msgid "Check the internet connection" +msgstr "" + +msgid "Check the internet connection again" +msgstr "" + +#, fuzzy +msgid "Checking filesystem..." +msgstr "Athuga skráarkerfi..." + +msgid "Checking the internet connection" +msgstr "" + +#, python-format +msgid "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" +msgstr "" + +msgid "Children/Youth" +msgstr "" + +msgid "Choose which tuner to configure." +msgstr "" + +msgid "Circular left" +msgstr "Hringpólun vinstri" + +msgid "Circular right" +msgstr "Hringpólun hægri" + +msgid "Cleanup" +msgstr "Hreinsa" + +msgid "Clear" +msgstr "" + +msgid "Clear before scan" +msgstr "Eyða fyrir leit" + +msgid "Clear fixed" +msgstr "" + +msgid "Clear log" +msgstr "Tæma lista" + +# +#, fuzzy +msgid "Clear playlist" +msgstr "hreinsa spilunarlista" + +msgid "Close" +msgstr "Loka" + +msgid "Close PiP on exit" +msgstr "" + +msgid "Close title selection" +msgstr "Loka titils vali" + +msgid "Code rate HP" +msgstr "Bitahraði HP" + +msgid "Code rate LP" +msgstr "Bitahraði LP" + +msgid "Coderate HP" +msgstr "Gagnahraði HP" + +msgid "Coderate LP" +msgstr "Gagnahraði LP" + +msgid "Collection name" +msgstr "Nafn safns" + +msgid "Collection settings" +msgstr "Stillingar safns" + +#, fuzzy +msgid "Color format" +msgstr "Lita kerfi" + +msgid "Command execution..." +msgstr "Keyrsla skipunar..." + +msgid "Command order" +msgstr "Röðun skipana" + +msgid "Common Interface" +msgstr "Afruglara tengi" + +#, fuzzy +msgid "Common Interface assignment" +msgstr "Stillingar afruglara tengis" + +msgid "Communication" +msgstr "Samskipti" + +#, fuzzy +msgid "Compact flash" +msgstr "Compact Flash" + +msgid "Complete" +msgstr "Allt" + +msgid "Complex (allows mixing audio tracks and aspects)" +msgstr "Flókið (mögulegt að blanda hljóð rásir og stærðar hlutföll)" + +msgid "Composition of the recording filenames" +msgstr "Samsetning nafna á upptökum" + +#, fuzzy +msgid "Configuration mode" +msgstr "Stillinga hamur" + +#, fuzzy, python-format +msgid "Configuration mode: %s" +msgstr "Stillinga hamur" + +# +#, fuzzy +msgid "Configuration..." +msgstr "Stilling nettengingar..." + +msgid "Configure an additional delay to improve external subtitle synchronisation." +msgstr "" + +msgid "Configure an additional delay to improve subtitle synchronisation." +msgstr "" + +msgid "Configure for how long the infobar will remain visible after activation." +msgstr "" + +msgid "Configure for how many minutes finished events should remain visible in the EPG. Useful when you need information about an event which has just finished, or has been delayed." +msgstr "" + +msgid "Configure how recording filenames are constructed." +msgstr "" + +msgid "Configure how the fan should operate" +msgstr "" + +msgid "Configure if and how crypto icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how long the latest service in the PiP will be remembered." +msgstr "" + +msgid "Configure if and how service type icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how wide columns will be shown in the channel selection list." +msgstr "" + +msgid "Configure if service picons will be shown in the channel selection list." +msgstr "" + +msgid "Configure interface" +msgstr "Stilla netkort" + +msgid "Configure nameservers" +msgstr "Stilla nafnaþjón" + +msgid "Configure on which devices the background delete option should be used." +msgstr "" + +# +#, fuzzy +msgid "Configure remote control type" +msgstr "Gerð foreldrastýringar" + +msgid "Configure the DiSEqC mode for this LNB." +msgstr "" + +#, fuzzy +msgid "Configure the IP address." +msgstr "Stilla netkort" + +msgid "Configure the aspect ratio of the screen." +msgstr "" + +msgid "Configure the behavior of the 'pause and ok' key when movie playback is already paused." +msgstr "" + +#, fuzzy +msgid "Configure the behavior when movie playback is manually stopped." +msgstr "Aðgerð þegar mynd er stoppuð" + +#, fuzzy +msgid "Configure the behavior when movie playback is started." +msgstr "Aðgerð þegar mynd byrjar" + +msgid "Configure the behavior when reaching the end of a movie, during movie playback." +msgstr "" + +msgid "Configure the border width of the subtitles. The dark border makes the subtitles easier to read on a light background." +msgstr "" + +msgid "Configure the brightness level of the front panel display during standby." +msgstr "" + +msgid "Configure the brightness level of the front panel display." +msgstr "" + +msgid "Configure the color of the external subtitles, alternative (normal in white, italic in yellow, bold in cyan, underscore in green), white or yellow." +msgstr "" + +msgid "Configure the color of the teletext subtitles." +msgstr "" + +msgid "Configure the contrast level of the front panel display." +msgstr "" + +msgid "Configure the cursor behaviour in the channel selection list. When opening the channel selection list you can keep on the current service or already select up/down and you are able to revert the B+/B- buttons." +msgstr "" + +msgid "Configure the duration in hours the receiver should go to standby when the receiver is not controlled." +msgstr "" + +msgid "Configure the duration in minutes for the screensaver." +msgstr "" + +msgid "Configure the duration in minutes for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +msgstr "" + +msgid "Configure the duration when the receiver should go to shut down in case the receiver is in standby mode." +msgstr "" + +msgid "Configure the first audio language (highest priority)." +msgstr "" + +msgid "Configure the first subtitle language (highest priority)." +msgstr "" + +msgid "Configure the font size of the subtitles." +msgstr "" + +msgid "Configure the fourth audio language." +msgstr "" + +# +#, fuzzy +msgid "Configure the fourth subtitle language." +msgstr "skipta á næsta undirtexta" + +msgid "Configure the function of a long press on the power button." +msgstr "" + +msgid "Configure the function of a short press on the power button." +msgstr "" + +msgid "Configure the function of the '0' button do when PIP is active." +msgstr "" + +#, fuzzy +msgid "Configure the gateway." +msgstr "Stilla netkort" + +msgid "Configure the general audio delay of Dolby Digital sound tracks." +msgstr "" + +msgid "Configure the general audio delay of stereo sound tracks." +msgstr "" + +msgid "Configure the hard disk drive to go to standby after the specified idle time." +msgstr "" + +msgid "Configure the horizontal alignment of the subtitles." +msgstr "" + +msgid "Configure the initial fast forward speed. When you press the fast forward button, winding will start at this speed." +msgstr "" + +msgid "Configure the initial rewind speed. When you press the rewind button, winding will start at this speed." +msgstr "" + +msgid "Configure the latitude of your location." +msgstr "" + +msgid "Configure the longitude of your location." +msgstr "" + +msgid "Configure the minimum amount of disk space to be available for recordings. When the amount of space drops below this value, deleted items will be removed from the trash can." +msgstr "" + +#, fuzzy +msgid "Configure the nameserver (DNS)." +msgstr "Stilla nafnaþjón" + +#, fuzzy +msgid "Configure the netmask." +msgstr "Stilla netkort" + +msgid "Configure the number of days after which items are automaticaly removed from the trash can." +msgstr "" + +msgid "Configure the number of days old timers are kept before they are automatically removed from the timer list." +msgstr "" + +msgid "Configure the offline decoding delay in milliseconds. The configured delay is observed at each control word parity change." +msgstr "" + +#, fuzzy +msgid "Configure the possible fast forward speeds." +msgstr "Byrjunar hraði hraðspólunar áfram" + +msgid "Configure the possible rewind speeds." +msgstr "" + +msgid "Configure the primary EPG language." +msgstr "" + +msgid "Configure the refresh rate of the screen." +msgstr "" + +msgid "Configure the screen resolution in PC output mode." +msgstr "" + +msgid "Configure the second audio language." +msgstr "" + +# +#, fuzzy +msgid "Configure the second subtitle language." +msgstr "skipta á næsta undirtexta" + +msgid "Configure the secondary EPG language." +msgstr "" + +msgid "Configure the sharpness of the video scaling." +msgstr "" + +msgid "Configure the skip time interval for the '1'/'3' buttons." +msgstr "" + +msgid "Configure the skip time interval for the '4'/'6' buttons." +msgstr "" + +msgid "Configure the skip time interval for the '7'/'9' buttons." +msgstr "" + +# +#, fuzzy +msgid "Configure the slow motion speeds." +msgstr "Hraði hægspilunar" + +msgid "Configure the source of the frontend data as shown on the infobars. 'Settings' is as stored on the settings. 'Tuner' is as reported by the tuner." +msgstr "" + +msgid "Configure the speed of the background deletion process. Lower speed will consume less hard disk drive performance." +msgstr "" + +msgid "Configure the speed of the fan" +msgstr "" + +msgid "Configure the subtitle delay when timing information is not available." +msgstr "" + +msgid "Configure the third audio language." +msgstr "" + +# +#, fuzzy +msgid "Configure the third subtitle language." +msgstr "skipta á næsta undirtexta" + +msgid "Configure the transparency of the OSD." +msgstr "" + +msgid "Configure the transparency of the black background of graphical DVB subtitles." +msgstr "" + +#, fuzzy +msgid "Configure the tuner mode." +msgstr "Stillinga hamur" + +msgid "Configure the type of status indication icons shown in the movielist." +msgstr "" + +msgid "Configure the vertical position of the subtitles, measured from the bottom of the screen." +msgstr "" + +msgid "Configure the video output mode (or resolution)." +msgstr "" + +msgid "Configure the way in which the receiver changes channels." +msgstr "" + +msgid "Configure where completed timers show up in the timer list." +msgstr "" + +msgid "Configure whether (and for how long) a second infobar will be shown when OK is pressed twice. The second infobar contains additional information about the current channel." +msgstr "" + +msgid "Configure whether multi channel sound tracks should be downmixed to stereo." +msgstr "" + +msgid "Configure whether or not an icon should be shown when your motorized dish is moving." +msgstr "" + +msgid "Configure which access level to use for the configuration menu. Expert level gives access to all items." +msgstr "" + +msgid "Configure which color format should be used on the SCART output." +msgstr "" + +msgid "Configure which tuner for recordings will be preferred, when more than one tuner is available." +msgstr "" + +msgid "Configure which tuner type will be preferred, when the same service is available on different types of tuners." +msgstr "" + +msgid "Configure which tuner will be preferred, when more than one tuner is available. If set to 'auto' the system will give priority to the tuner having the lowest number of channels/satellites." +msgstr "" + +msgid "Configure your internal LAN" +msgstr "Stilla innbyggt netkort" + +msgid "Configure your network again" +msgstr "Stilla netkortið þitt aftur" + +msgid "Configure your network settings, and press OK to start the scan" +msgstr "" + +msgid "Configure your wireless LAN again" +msgstr "Stilla þráðlausa netkortið þitt aftur" + +msgid "Configures which video output connector will be used." +msgstr "" + +msgid "Configuring" +msgstr "Stilli" + +msgid "Conflicting timer" +msgstr "Tímastilling skarast" + +msgid "Connect" +msgstr "Tengi" + +#, fuzzy +msgid "Connect to a wireless network" +msgstr "Tengist við þráðlaust net" + +msgid "Connected satellites" +msgstr "" + +msgid "Connected to" +msgstr "Tengd við" + +msgid "Connected!" +msgstr "Tengdur!" + +msgid "Constellation" +msgstr "Constellation" + +msgid "Content does not fit on DVD!" +msgstr "Innihald passar ekki á DVD!" + +# +msgid "Continue" +msgstr "Áfram" + +msgid "Continue in background" +msgstr "Halda áfram í bakgrunni" + +#, fuzzy +msgid "Continue playback" +msgstr "Halda áfram að spila" + +msgid "Continue playing" +msgstr "Halda áfram að spila" + +msgid "Continues play (loop)" +msgstr "" + +msgid "Contrast" +msgstr "Skerpa" + +msgid "Convert ext3 filesystem to ext4" +msgstr "" + +msgid "Convert ext3 to ext4" +msgstr "" + +msgid "Converting ext3 to ext4..." +msgstr "" + +msgid "Copy" +msgstr "" + +msgid "Could not connect to receiver .NFI image feed server:" +msgstr "" + +msgid "Could not find installed channel list." +msgstr "" + +#, fuzzy +msgid "Could not load medium! No disc inserted?" +msgstr "Gat ekki lesið disk! Er enginn diskur í drifi?" + +msgid "Could not open Picture in Picture" +msgstr "Gat ekki opnað mynd í mynd" + +#, fuzzy, python-format +msgid "Could not record due to conflicting timer %s" +msgstr "Gat ekki tekið upp vegna skörunar á tímastillingum %s" + +#, fuzzy, python-format +msgid "Could not record due to invalid service %s" +msgstr "Gat ekki tekið upp vegna þess að rásin %s er ekki í lagi" + +msgid "Create DVD-ISO" +msgstr "Búa til DVD-ISO" + +msgid "Create more detailed crash log" +msgstr "" + +#, python-format +msgid "Creating directory %s failed." +msgstr "Tókst ekki að búa möppuna %s." + +#, fuzzy +msgid "Creating filesystem" +msgstr "Athuga skráarkerfi..." + +msgid "Creating partition" +msgstr "" + +msgid "Croatian" +msgstr "Króatíska" + +msgid "Current CEC address" +msgstr "" + +msgid "Current device: " +msgstr "Núverandi tæki: " + +msgid "Current event EPG" +msgstr "" + +#, python-format +msgid "Current mode: %s \n" +msgstr "" + +msgid "Current settings:" +msgstr "Núverandi stilling:" + +#, fuzzy +msgid "Current transponder" +msgstr "Núverandi sendir" + +msgid "Current value: " +msgstr "Núverandi val:" + +msgid "Current version:" +msgstr "Núverandi útgáfa:" + +msgid "Currently installed image" +msgstr "Núverandi stýrikerfi" + +msgid "Currently the commit log cannot be retrieved - please try later again" +msgstr "" + +#, fuzzy +msgid "Custom skip time for '1'/'3' buttons" +msgstr "Stilltur stökktími fyrir 1 og 3 takka" + +#, fuzzy +msgid "Custom skip time for '4'/'6' buttons" +msgstr "Stilltur stökk fyrir 4 og 6 takka" + +#, fuzzy +msgid "Custom skip time for '7'/'9' buttons" +msgstr "Stilltur stökk fyrir 7 og 9 takka" + +msgid "Customize" +msgstr "Aðrar stillingar" + +msgid "Customize channel list cursor behavior" +msgstr "" + +msgid "Cut" +msgstr "Klippa" + +msgid "Cutlist editor..." +msgstr "Klippingastjóri..." + +msgid "Czech" +msgstr "Tékkneska" + +msgid "D" +msgstr "D" + +msgid "DHCP" +msgstr "DHCP" + +# +#, fuzzy +msgid "DMM advanced" +msgstr "meiri stillingar" + +msgid "DMM normal" +msgstr "" + +msgid "DUAL LAYER DVD" +msgstr "Tveggja laga DVD" + +msgid "DVB subtitle black transparency" +msgstr "" + +msgid "DVB-C" +msgstr "" + +msgid "DVB-C ANNEX C" +msgstr "" + +msgid "DVB-S" +msgstr "DVB-S" + +# +msgid "DVB-S2" +msgstr "DVB-S2" + +msgid "DVB-T" +msgstr "" + +msgid "DVB-T2" +msgstr "" + +msgid "DVD data format" +msgstr "" + +#, fuzzy +msgid "DVD file browser" +msgstr "DVD skráar stjóri" + +# +msgid "DVD media toolbox" +msgstr "DVD miðla tól" + +# +#, fuzzy +msgid "DVD player" +msgstr "DVD spilari" + +# +#, fuzzy +msgid "DVD titlelist" +msgstr "DVD titlaskrá" + +# +msgid "Danish" +msgstr "Danska" + +# +msgid "Date" +msgstr "Dags" + +# +#, fuzzy +msgid "Date/time input" +msgstr "Tíma/Dags Innsláttur" + +# +#, fuzzy +msgid "Deep standby" +msgstr "Djúp biðstaða" + +# +msgid "Default" +msgstr "Venjulegt" + +msgid "Default movie location" +msgstr "Sjálfgefin staðsetning bíómynda" + +# +#, fuzzy +msgid "Default settings" +msgstr "Upphafs stillingar" + +msgid "Delay before key repeat starts:" +msgstr "" + +msgid "Delay for external subtitles" +msgstr "" + +# +msgid "Delete" +msgstr "Eyða" + +# +msgid "Delete entry" +msgstr "Eyða innslætti" + +# +msgid "Delete failed!" +msgstr "Tókst ekki að eyða!" + +# +#, fuzzy +msgid "Delete file" +msgstr "eyða skrá" + +# +#, fuzzy +msgid "Delete playlist entry" +msgstr "eyða atriði úr spilunarlista" + +# +#, fuzzy +msgid "Delete saved playlist" +msgstr "eyða vistuðum spilunarlista" + +msgid "Delete timer" +msgstr "" + +# +#, fuzzy +msgid "Delete..." +msgstr "eyða...." + +msgid "Deleted" +msgstr "" + +msgid "Deleted items" +msgstr "" + +msgid "Depth" +msgstr "" + +msgid "Descramble http streams" +msgstr "" + +# +msgid "Description" +msgstr "Lýsing" + +# +msgid "Deselect" +msgstr "Ekki velja" + +msgid "Details for plugin: " +msgstr "Upplýsingar um íforrit:" + +# +msgid "Detected HDD:" +msgstr "Fann harðan disk:" + +# +msgid "Detected NIMs:" +msgstr "Fann NIM:" + +msgid "Devicename:" +msgstr "" + +msgid "Devide" +msgstr "" + +# +msgid "DiSEqC" +msgstr "DiSEqC" + +msgid "DiSEqC 1.0 command" +msgstr "" + +msgid "DiSEqC 1.1 command" +msgstr "" + +msgid "DiSEqC 1.1 repeats" +msgstr "" + +# +msgid "DiSEqC A/B" +msgstr "DiSEqC A/B" + +# +msgid "DiSEqC A/B/C/D" +msgstr "DiSEqC A/B/C/D" + +# +msgid "DiSEqC mode" +msgstr "DiSEqC gerð" + +# +#, fuzzy, python-format +msgid "DiSEqC port %s: %s" +msgstr "DiSEqC endurtekning" + +# +#, fuzzy +msgid "DiSEqC-tester settings" +msgstr "DiSEqC prufu stillingar" + +# +msgid "Dialing:" +msgstr "Hringi:" + +# +msgid "Digital contour removal" +msgstr "Fjarlægja stafrænt contour" + +# +msgid "Direct playback of linked titles without menu" +msgstr "Spila beint tengda titla án valmyndar" + +msgid "Directory" +msgstr "" + +# +#, fuzzy, python-format +msgid "Directory %s does not exist." +msgstr "Mappa %s ekki til." + +#, python-format +msgid "Directory %s nonexistent." +msgstr "" + +# +msgid "Directory browser" +msgstr "Möppu vafri" + +#, python-format +msgid "Directory contains %d file(s) and %d sub-directories.\n" +msgstr "" + +# +#, fuzzy, python-format +msgid "Directory contains %s and %s." +msgstr "Mappa %s ekki til." + +# +msgid "Disable" +msgstr "Gera óvirkt" + +# +msgid "Disable Picture in Picture" +msgstr "Gera Mynd í Mynd óvirka" + +msgid "Disable background scanning" +msgstr "" + +msgid "Disable timer" +msgstr "" + +# +msgid "Disabled" +msgstr "Óvirkt" + +# +msgid "Disconnect" +msgstr "Aftengja" + +msgid "Disk space to reserve for recordings (in GB)" +msgstr "" + +# +msgid "Display 16:9 content as" +msgstr "Sýna 16:9 innihald sem" + +# +msgid "Display 4:3 content as" +msgstr "Sýna 4:3 innihald sem" + +# +msgid "Display >16:9 content as" +msgstr "Sýna >16:9 efni sem" + +# +#, fuzzy +msgid "Display and userinterface" +msgstr "Skjár og notenda viðmót" + +msgid "Display message before playing next movie" +msgstr "" + +# +#, fuzzy +msgid "Display setup" +msgstr "Uppsetning skjás" + +# +#, fuzzy +msgid "Do not change" +msgstr "ekki breyta" + +# +#, fuzzy +msgid "Do not record" +msgstr "ekki taka upp" + +# +#, fuzzy +msgid "Do nothing" +msgstr "ekki gera neitt" + +# +msgid "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" +msgstr "" +"Viltu örugglega athuga skráarkerfi?\n" +"Það tekur langan tíma!" + +msgid "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" +msgstr "" + +# +#, python-format +msgid "Do you really want to delete %s?" +msgstr "Viltu virkilega eyða %s?" + +#, python-format +msgid "" +"Do you really want to download\n" +"the plugin \"%s\"?" +msgstr "" +"Viltu örugglega hala niður\n" +"íforritinu \"%s\"?" + +# +msgid "Do you really want to exit?" +msgstr "Viltu virkilega hætta?" + +msgid "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" +msgstr "" + +#, fuzzy, python-format +msgid "" +"Do you really want to remove\n" +"the plugin \"%s\"?" +msgstr "" +"Viltu örugglega hala niður\n" +"íforritinu \"%s\"?" + +# +#, python-format +msgid "Do you really want to remove directory %s from the disk?" +msgstr "Viltu örugglega eyða möppunni %s af diskinum?" + +# +#, python-format +msgid "Do you really want to remove your bookmark of %s?" +msgstr "Viltu örugglega eyða bókamerkinu %s?" + +msgid "Do you want this?" +msgstr "" + +# +msgid "Do you want to burn this collection to DVD medium?" +msgstr "Viltu brenna þessa skráar safn á DVD disk?" + +# +msgid "Do you want to do a service scan?" +msgstr "Viltu leita að rásum?" + +# +msgid "Do you want to do another manual service scan?" +msgstr "Viltu leita aftur handvirkt?" + +#, python-format +msgid "Do you want to download the image to %s ?" +msgstr "Viltu hlaða niður stýrikerfinu á %s ?" + +# +#, fuzzy +msgid "Do you want to install a channel list?" +msgstr "Viltu setja inn pakkann:\n" + +# +msgid "Do you want to install the package:\n" +msgstr "Viltu setja inn pakkann:\n" + +# +msgid "Do you want to play DVD in drive?" +msgstr "Viltu spila DVD diskinn sem er í spilaranum?" + +# +msgid "Do you want to preview this DVD before burning?" +msgstr "Viltu forskoða þennan DVD disk fyrir brennslu?" + +msgid "Do you want to reboot your receiver?" +msgstr "" + +# +msgid "Do you want to remove the package:\n" +msgstr "Viltu taka út pakkann:\n" + +# +msgid "Do you want to restore your settings?" +msgstr "Viltu setja inn stillingarnar þínar aftur?" + +# +msgid "Do you want to resume this playback?" +msgstr "Viltu halda áfram að spila þetta?" + +#, fuzzy, python-format +msgid "Do you want to update your receiver to %s?" +msgstr "Viltu hlaða niður stýrikerfinu á %s ?" + +msgid "Do you want to update your receiver?" +msgstr "" + +# +msgid "Do you want to upgrade the package:\n" +msgstr "Viltu uppfæra pakkann:\n" + +# +msgid "Don't stop current event but disable coming events" +msgstr "Ekki stoppa núverandi atriði en hætta við næsta" + +# +#, fuzzy, python-format +msgid "Done - Installed, upgraded or removed %d package (%s)" +msgid_plural "Done - Installed, upgraded or removed %d packages (%s)" +msgstr[0] "Búin, setti inn, uppfærði eða tót út %d pakka með %d villum" +msgstr[1] "Búin, setti inn, uppfærði eða tót út %d pakka með %d villum" + +# +msgid "Download" +msgstr "Hlaða niður" + +#, fuzzy, python-format +msgid "Download %s from server" +msgstr "Hleð niður %s frá vefþjón" + +msgid "Download .NFI-files for USB-flasher" +msgstr "Hlaða niður .NFI skrár fyrir keyranlegt USB" + +#, fuzzy +msgid "Download plugins" +msgstr "Hala niður íforritum" + +msgid "Downloadable new plugins" +msgstr "Niðurhalanleg ný íforrit" + +msgid "Downloadable plugins" +msgstr "Niðurhalanleg íforrit" + +msgid "Downloading" +msgstr "Hleð niður" + +msgid "Downloading plugin information. Please wait..." +msgstr "Hala niður íforrits upplýsingum. Vinsamlega bíðið..." + +# +msgid "Dutch" +msgstr "Hollenska" + +msgid "Dynamic contrast" +msgstr "Dýnamísk skerpa" + +# +msgid "E" +msgstr "E" + +msgid "EPG" +msgstr "" + +msgid "EPG language selection 1" +msgstr "" + +msgid "EPG language selection 2" +msgstr "" + +# +#, fuzzy +msgid "EPG selection" +msgstr "EPG val" + +msgid "EPG settings" +msgstr "" + +#, python-format +msgid "ERROR - failed to scan (%s)!" +msgstr "VILLA - gat ekki leitað (%s)!" + +# +msgid "East" +msgstr "Austur" + +msgid "East limit set" +msgstr "" + +# +msgid "Edit" +msgstr "Breyta" + +# +msgid "Edit DNS" +msgstr "Breyta DNS" + +msgid "Edit bouquets list" +msgstr "Breyta rásavanda lista" + +msgid "Edit chapters of current title" +msgstr "Breyta köflum núverandi titils" + +# +msgid "Edit services list" +msgstr "Breyta rása lista" + +# +msgid "Edit settings" +msgstr "Breyta stillingum" + +# +#, fuzzy +msgid "Edit the nameserver configuration of your receiver.\n" +msgstr "fara úr nafnaþjóns stillingum" + +msgid "Edit the network configuration of your receiver.\n" +msgstr "" + +msgid "Edit timer" +msgstr "" + +# +msgid "Edit title" +msgstr "Breyta titili" + +msgid "Edit upgrade source url." +msgstr "Breyta uppfærslu uppruna slóð." + +msgid "Education/Science/..." +msgstr "" + +# +msgid "Electronic Program Guide" +msgstr "Rafrænn dagskrárstjóri (EPG)" + +# +msgid "Enable" +msgstr "Virkja" + +msgid "Enable 'neutrino' style channel select controlling" +msgstr "" + +msgid "Enable 'neutrino' style zap controlling" +msgstr "" + +# +msgid "Enable 5V for active antenna" +msgstr "Kveikja á 5V fyrir loftnet með magnara" + +msgid "Enable EIT EPG" +msgstr "" + +msgid "Enable MHW EPG" +msgstr "" + +msgid "Enable Netmed EPG" +msgstr "" + +msgid "Enable OK for channel selection" +msgstr "" + +msgid "Enable ViaSat EPG" +msgstr "" + +msgid "Enable Virgin EPG" +msgstr "" + +msgid "Enable Wake On LAN" +msgstr "" + +msgid "Enable auto fast scan" +msgstr "" + +# +#, fuzzy +msgid "Enable bouquet selection in multi-EPG" +msgstr "byrja féttu breytingu" + +msgid "Enable freesat EPG" +msgstr "" + +# +msgid "Enable multiple bouquets" +msgstr "Virkja marga rásavendi" + +# +msgid "Enable parental control" +msgstr "Virkja foreldra stýringu" + +msgid "Enable teletext caching" +msgstr "" + +msgid "Enable zapping with CH+/-, B+/-, P+/-" +msgstr "" + +# +msgid "Enabled" +msgstr "Virkt" + +msgid "Encrypted: " +msgstr "Kóðun:" + +# +msgid "Encryption" +msgstr "Kóðun" + +# +#, fuzzy +msgid "Encryption key" +msgstr "Kóðunar lykill" + +# +#, fuzzy +msgid "Encryption key type" +msgstr "Kóðunar lykilgerð" + +msgid "Encryption:" +msgstr "Kóðun:" + +# +msgid "End time" +msgstr "Loka tími" + +msgid "End time to ignore inactivity sleeptimer" +msgstr "" + +msgid "End time to ignore shutdown in standby" +msgstr "" + +# +msgid "English" +msgstr "Enska" + +# +#, fuzzy +msgid "Enigma2 skin selector" +msgstr "enigma2 og netkerfi" + +# +msgid "Enter main menu..." +msgstr "Fara í aðal valmynd..." + +msgid "Enter pin code" +msgstr "Slá inn kóða" + +msgid "Enter the service pin" +msgstr "Sláðu inn rása kóða" + +msgid "Equal to" +msgstr "" + +# +msgid "Error" +msgstr "Villa" + +msgid "Error code" +msgstr "" + +msgid "Error executing plugin" +msgstr "Villa við keyrslu íforrits" + +# +#, python-format +msgid "" +"Error: %s\n" +"Retry?" +msgstr "" +"Villa: %s\n" +"Reyna aftur?" + +# +msgid "Estonian" +msgstr "Eistneska" + +msgid "Ethernet network interface" +msgstr "Ethernet netkort" + +msgid "Event font size (relative to skin size)" +msgstr "" + +# +#, fuzzy +msgid "Event view" +msgstr "Skoða atriði" + +# +#, fuzzy +msgid "Event view menu" +msgstr "Skoða atriði" + +msgid "Everywhere" +msgstr "" + +msgid "Exceeds dual layer medium!" +msgstr "Þarf meira en tveggja laga disk!" + +msgid "Execution finished!!" +msgstr "Keyrslu lokið!!" + +# +#, fuzzy +msgid "Execution progress:" +msgstr "Framganga keyrslu:" + +# +msgid "Exif" +msgstr "Exif" + +# +msgid "Exit" +msgstr "Hætta" + +msgid "Exit EPG" +msgstr "" + +# +msgid "Exit editor" +msgstr "Hætta í breytingum" + +msgid "Exit input device selection." +msgstr "Hætta í inntaks tækja vali." + +msgid "Exit media player?" +msgstr "" + +# +#, fuzzy +msgid "Exit mediaplayer" +msgstr "hætta í spilara" + +# +#, fuzzy +msgid "Exit movie list" +msgstr "loka myndalista" + +# +#, fuzzy +msgid "Exit movie player?" +msgstr "hætta í spilara" + +# +#, fuzzy +msgid "Exit nameserver configuration" +msgstr "fara úr nafnaþjóns stillingum" + +# +#, fuzzy +msgid "Exit network interface list" +msgstr "fara út úr netkorta lista" + +msgid "Exit network wizard" +msgstr "Hætta í netkerfis ráðgjafa" + +msgid "Exit the wizard" +msgstr "Hætta í ráðgjafa" + +# +msgid "Expert" +msgstr "Sérfræði" + +msgid "Extend sleeptimer 15 minutes" +msgstr "" + +msgid "Extended Software" +msgstr "Viðbótar forrit" + +msgid "Extended Software Plugin" +msgstr "Viðbótar hugbúnaðar íforrit" + +#, fuzzy +msgid "Extended network setup plugin..." +msgstr "Íforrit fyrir nánari stillingar netkerfis..." + +#, fuzzy +msgid "Extended setup..." +msgstr "Viðbótar stillingar..." + +# +msgid "Extensions" +msgstr "Viðbætur" + +msgid "Extensions management" +msgstr "Viðbóta umsýsla" + +msgid "External PiP" +msgstr "" + +msgid "External subtitle color" +msgstr "" + +msgid "Extra motor options" +msgstr "" + +# +msgid "FEC" +msgstr "FEC" + +msgid "FTA" +msgstr "" + +# +msgid "Factory reset" +msgstr "Verksmiðju stilling" + +# +msgid "Failed" +msgstr "Tókst ekki" + +msgid "Failed to write /tmp/positionersetup.log: " +msgstr "" + +#, python-format +msgid "Fan %d" +msgstr "Vifta %d" + +#, python-format +msgid "Fan %d PWM" +msgstr "Vifta %d PWM" + +#, fuzzy, python-format +msgid "Fan %d voltage" +msgstr "Viftu %d Spenna" + +msgid "Fan operation" +msgstr "" + +msgid "Fan speed" +msgstr "" + +# +msgid "Fast" +msgstr "Hratt" + +# +msgid "Fast DiSEqC" +msgstr "Hratt DiSEqC" + +msgid "Fast Scan" +msgstr "" + +# +msgid "Fast epoch" +msgstr "Hratt tímabil" + +# +#, fuzzy +msgid "Fast forward speeds" +msgstr "Hraðspólunar hraði áfram" + +msgid "Favourites" +msgstr "Eftirlætis listar" + +msgid "File appears to be busy.\n" +msgstr "" + +#, fuzzy +msgid "Filesystem check" +msgstr "Skráarkerfis athugun" + +msgid "Final position at" +msgstr "" + +msgid "Final position at index" +msgstr "" + +msgid "Fine movement" +msgstr "" + +# +msgid "Finetune" +msgstr "Fínstilla" + +# +msgid "Finished" +msgstr "Búið" + +# +msgid "Finished configuring your network" +msgstr "Búið að stilla netkerfið" + +# +msgid "Finished restarting your network" +msgstr "Búið að endurræsa netkerfið" + +# +msgid "Finnish" +msgstr "Finnska" + +msgid "Fixed" +msgstr "" + +# +msgid "Flash" +msgstr "Forritun" + +# +msgid "Flashing failed" +msgstr "Forritun tókt ekki" + +msgid "Following tasks will be done after you press OK!" +msgstr "Eftirfarandi aðgerðir verða framkvæmdar eftir að þú ýtir á OK!" + +# +msgid "Format" +msgstr "Forma" + +msgid "Forward volume keys" +msgstr "" + +# +msgid "Frame size in full view" +msgstr "Stærð ramma í fullri stærð" + +# +msgid "French" +msgstr "Franska" + +# +msgid "Frequency" +msgstr "Tíðni" + +# +msgid "Frequency bands" +msgstr "Tíðni bönd" + +# +msgid "Frequency scan step size(khz)" +msgstr "Skref við tíðnileit (khz)" + +# +msgid "Frequency steps" +msgstr "Tíðniskref" + +msgid "Frequency:" +msgstr "" + +# +msgid "Fri" +msgstr "Fös" + +# +msgid "Friday" +msgstr "Föstudagur" + +msgid "From :" +msgstr "" + +# +#, python-format +msgid "Frontprocessor version: %d" +msgstr "Útgáfa framheila: %d" + +msgid "Full transparency" +msgstr "" + +msgid "Fulview resulution" +msgstr "" + +msgid "Function of OK button" +msgstr "" + +msgid "Further Options" +msgstr "" + +# +msgid "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" +msgstr "" +"Gluggakerfi þarf að endurræsa til að virkja nýtt skinn\n" +"Viltu endurræsa gluggakerfi núna?" + +# +msgid "Gateway" +msgstr "Beinir" + +# +#, fuzzy +msgid "General AC3 delay" +msgstr "Heildar AC3 seinkun" + +# +#, fuzzy +msgid "General PCM delay" +msgstr "Heildar PCM seinkun" + +# +msgid "Genre" +msgstr "Gerð" + +# +msgid "German" +msgstr "Þýska" + +msgid "Get latest experimental image" +msgstr "Ná í nýjustu prufuútgáfu stýrikerfis" + +msgid "Get latest release image" +msgstr "Ná í nýjasta útgefið stýrikerfi" + +msgid "Getting plugin information. Please wait..." +msgstr "Næ í upplýsingar um íforrit. Vinsamlega bíðið..." + +msgid "Go down the list" +msgstr "" + +msgid "Go to first movie or last item" +msgstr "" + +msgid "Go to first movie or top of list" +msgstr "" + +# +#, fuzzy +msgid "Go to first service" +msgstr "fara upp í fyrsta atriði" + +# +#, fuzzy +msgid "Go to last service" +msgstr "Læsa rásum" + +# +#, fuzzy +msgid "Go to next event" +msgstr "fara niður í næsta atriði" + +# +#, fuzzy +msgid "Go to next page of service" +msgstr "Skipta á næstu undirrás" + +# +#, fuzzy +msgid "Go to previous event" +msgstr "fara upp í næsta atriði" + +# +#, fuzzy +msgid "Go to previous page of service" +msgstr "Til baka á síðustu rás" + +msgid "Go up the list" +msgstr "" + +msgid "Goto" +msgstr "" + +msgid "Goto 0" +msgstr "Fara á 0" + +msgid "Goto :" +msgstr "" + +msgid "Goto X" +msgstr "" + +msgid "Goto index position" +msgstr "" + +msgid "Goto next day of events" +msgstr "" + +msgid "Goto next page of events" +msgstr "" + +# +msgid "Goto position" +msgstr "Fara á staðsetningu" + +msgid "Goto previous day of events" +msgstr "" + +msgid "Goto previous page of events" +msgstr "" + +msgid "Goto specific date/time" +msgstr "" + +msgid "GotoX calibration" +msgstr "" + +msgid "GraphMultiEpg Settings" +msgstr "" + +# +msgid "Graphical Multi EPG" +msgstr "Myndrænn dagskrárstjóri (EPG)" + +# +msgid "Greek" +msgstr "Gríska" + +# +msgid "Green boost" +msgstr "Auka grænan" + +msgid "Guard interval" +msgstr "Guard interval" + +msgid "HD list" +msgstr "" + +msgid "HDMI-CEC setup" +msgstr "" + +msgid "Handle standby from TV" +msgstr "" + +msgid "Handle wakeup from TV" +msgstr "" + +# +#, fuzzy +msgid "Hard disk" +msgstr "Harður diskur" + +# +#, fuzzy +msgid "Hard disk setup" +msgstr "Uppsetning harða disks" + +# +#, fuzzy +msgid "Hard disk standby after" +msgstr "Harði diskur í biðstöðu eftir" + +# +msgid "Harddisk" +msgstr "Harður diskur" + +msgid "Hardware: " +msgstr "" + +msgid "Hebrew" +msgstr "" + +msgid "Helps setting up your dish" +msgstr "" + +msgid "Hidden network" +msgstr "Falið netkerfi" + +msgid "Hide CI messages" +msgstr "" + +msgid "Hide channel list in radio mode" +msgstr "" + +msgid "Hide known extensions" +msgstr "" + +msgid "Hide number markers" +msgstr "" + +# +#, fuzzy +msgid "Hide player" +msgstr "fela spilara" + +msgid "Hide zap errors" +msgstr "" + +msgid "Hierarchy info" +msgstr "Hierarchy upplýsingar" + +# +#, fuzzy +msgid "Hierarchy information" +msgstr "Stigskipta upplýsingar" + +# +msgid "High bitrate support" +msgstr "Háhraða stuðningur" + +msgid "Hold screen" +msgstr "" + +msgid "Hold till locked" +msgstr "" + +msgid "Home" +msgstr "" + +# +msgid "Horizontal" +msgstr "Lárétt" + +msgid "Horizontal turning speed" +msgstr "" + +# +msgid "How many minutes do you want to record?" +msgstr "Í hvað margar mínútur viltu taka upp?" + +# +msgid "Hue" +msgstr "Litatónn" + +# +msgid "Hungarian" +msgstr "Ungverska" + +# +#, fuzzy +msgid "IP address" +msgstr "IP Netfang" + +# +msgid "ISO file is too large for this filesystem!" +msgstr "Iso skrá er of stór fyrir þetta skráarkerfi!" + +# +msgid "ISO path" +msgstr "Slóð ISO skráar" + +msgid "Icons" +msgstr "" + +# +msgid "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." +msgstr "" +"Ef þú sérð þetta þá er eitthvað að scart\n" +"tengingunni.Ýttu á OK til að fara til baka." + +# +msgid "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." +msgstr "" +"Ef sjónvarpið þitt hefur skerpu aukningu (contrast enhancement), slökktu þá á því. Ef það er með eitthvað kallað \"dynamic\", settu það þá á Standard eða Normal. Stilltu birtu baklýsingar eins og þér finnst best. Minnkaðu skerpu (contrast) stillingu sjónvarpsins eins mikið og hægt er en vertu samt viss um að rétt sjá dekkstu tvo grátónana.\n" +"Ekki hafa áhyggjur af björtum svæðum núna. Þeir verða stilltir næst.\n" +"Ef stillingin er orðin eins og þér finnst best ýttu þá á OK." + +msgid "Image: " +msgstr "" + +# +#, fuzzy +msgid "Immediate shutdown" +msgstr "slökkva strax" + +# +msgid "In order to record a timer, the TV was switched to the recording service!\n" +msgstr "Til að taka upp á tíma stillingu þá var sjónvarpið stillt á upptökurás!\n" + +# +#, fuzzy +msgid "In progress" +msgstr "Í vinnslu" + +msgid "Inactivity Sleeptimer" +msgstr "" + +msgid "Include AIT in http streams" +msgstr "" + +msgid "Include ECM in http streams" +msgstr "" + +msgid "Include EIT in http streams" +msgstr "" + +msgid "Incorrect type service for PiP!" +msgstr "" + +# +msgid "Increased voltage" +msgstr "Aukin spenna" + +# +msgid "Index" +msgstr "Yfirlit" + +msgid "Index allocated:" +msgstr "" + +# +msgid "Info" +msgstr "Upplýsingar" + +# +#, fuzzy +msgid "Info bar" +msgstr "Upplýsingar" + +# +#, fuzzy +msgid "Info bar timeout" +msgstr "Tími upplýsingaborða" + +msgid "Infobar frontend data source" +msgstr "" + +# +msgid "Information" +msgstr "Upplýsingar" + +# +msgid "Init" +msgstr "Stilli" + +#, fuzzy +msgid "Initial fast forward speed" +msgstr "Byrjunar hraði hraðspólunar áfram" + +msgid "Initial location in new timers" +msgstr "Sjálfgefin staður í nýjum tímastillingum" + +msgid "Initial lock ratio" +msgstr "" + +#, fuzzy +msgid "Initial rewind speed" +msgstr "Byrjunar hraði hraðspólunar afturábak" + +msgid "Initial signal quality" +msgstr "" + +msgid "Initial signal quality:" +msgstr "" + +msgid "Initialization" +msgstr "Frumstilling" + +# +msgid "Initialize" +msgstr "Frumstiling" + +msgid "Initializing storage device..." +msgstr "" + +# +msgid "Input" +msgstr "Inntak" + +msgid "Input device setup" +msgstr "Inntaks tækja uppsetning" + +msgid "Input devices" +msgstr "Inntaks tæki" + +# +msgid "Install" +msgstr "Setja inn" + +# +msgid "Install a new image with a USB stick" +msgstr "Setja inn nýtt stýrikerfi með USB staut" + +# +msgid "Install a new image with your web browser" +msgstr "Setja inn nýtt stýrikerfi með vafra" + +# +#, fuzzy +msgid "Install channel list" +msgstr "næsta rás í sögu" + +msgid "Install extensions" +msgstr "" + +msgid "Install extensions." +msgstr "Setja inn viðbót." + +msgid "Install local extension" +msgstr "Setja inn viðbót af boxi" + +msgid "Install picons on" +msgstr "" + +#, fuzzy +msgid "Install softcam" +msgstr "Set inn hugbúnað..." + +# +#, fuzzy +msgid "Installation has completed." +msgstr "Uppsetning búin." + +# +#, fuzzy +msgid "Installation or removal has completed." +msgstr "Innsetning eða fjarlæging tókst." + +# +msgid "Installing" +msgstr "Set inn" + +#, fuzzy +msgid "Installing software..." +msgstr "Set inn hugbúnað..." + +#, fuzzy +msgid "Instant recording location" +msgstr "Skyndi upptöku staðsetning" + +# +#, fuzzy +msgid "Instant recording..." +msgstr "Skyndi upptaka..." + +msgid "Interface: " +msgstr "Netkort:" + +# +msgid "Intermediate" +msgstr "millistig" + +# +#, fuzzy +msgid "Internal flash" +msgstr "Innra Flash minni" + +msgid "Internal hdd only" +msgstr "" + +msgid "Interval between keys when repeating:" +msgstr "" + +# +#, python-format +msgid "Invalid directory selected: %s" +msgstr "Ógild mappa valin: %s" + +# +#, fuzzy +msgid "Invalid location" +msgstr "Ógildur staður" + +msgid "Invalid transponder data" +msgstr "" + +# +msgid "Inversion" +msgstr "Umbreyting" + +# +msgid "Invert" +msgstr "Snúa við" + +# +msgid "Ipkg" +msgstr "Ipkg" + +#, fuzzy +msgid "Is this setting ok?" +msgstr "Nota þessar stillingar?" + +# +#, fuzzy +msgid "Is this video mode ok?" +msgstr "Er þessi stilling í lagi?" + +# +msgid "Italian" +msgstr "Ítalska" + +msgid "Items per page " +msgstr "" + +msgid "Items per page for list screen" +msgstr "" + +# +#, fuzzy +msgid "Job overview" +msgstr "Skoða vinnslu" + +msgid "Jump to beginning of list" +msgstr "" + +# +#, fuzzy +msgid "Jump to end of list" +msgstr "fara í enda listans" + +# +#, fuzzy +msgid "Jump to next marked position" +msgstr "fara til næstu merkingar" + +# +#, fuzzy +msgid "Jump to previous marked position" +msgstr "fara til fyrri merkingar" + +# +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect) +#, fuzzy +msgid "Just scale" +msgstr "Bara full mynd" + +msgid "Keep service" +msgstr "" + +# +#, fuzzy +msgid "Kernel version: " +msgstr "Ný útgáfa:" + +# +msgid "Keyboard" +msgstr "Lyklaborð" + +# +#, fuzzy +msgid "Keyboard map" +msgstr "Lyklaborðs stilling" + +# +#, fuzzy +msgid "Keyboard setup" +msgstr "Uppsetning lyklaborðs" + +# +#, fuzzy +msgid "LAN adapter" +msgstr "Netkort" + +msgid "LAN connection" +msgstr "LAN tenging" + +# +msgid "LNB" +msgstr "LNB" + +# +msgid "Language" +msgstr "Tungumál" + +# +msgid "Language selection" +msgstr "Val tungumáls" + +# +msgid "Last config" +msgstr "Síðasta stilling" + +# +msgid "Last speed" +msgstr "Síðasti hraði" + +msgid "Last upgrade: " +msgstr "" + +msgid "Latest Commits" +msgstr "" + +# +msgid "Latitude" +msgstr "Breiddargráða" + +# +msgid "Latvian" +msgstr "Lettneska" + +# +#, fuzzy +msgid "Leave DVD player?" +msgstr "Hætta í DVD spilara?" + +# +msgid "Left" +msgstr "Vinstri" + +msgid "Left from servicename" +msgstr "" + +msgid "Leisure hobbies" +msgstr "" + +# +#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term. +msgid "Letterbox" +msgstr "Letterbox" + +msgid "Letterbox zoom" +msgstr "" + +# +#, fuzzy +msgid "Limit character set for recording filenames" +msgstr "Takmarkað stafa úrval fyrir skráar nöfn á upptökum" + +# +msgid "Limit east" +msgstr "Mörk í austur" + +msgid "Limit the characters that can be used in recording filenames to (7 bit) ascii. This ensures compatibility with operating systems or file systems with limited character sets." +msgstr "" + +# +msgid "Limit west" +msgstr "Mörk í vestur" + +msgid "Limits cancelled" +msgstr "" + +msgid "Limits enabled" +msgstr "" + +# +msgid "Limits off" +msgstr "Mörk ekki stillt" + +# +msgid "Limits on" +msgstr "Mörk á" + +# +#, fuzzy +msgid "Link quality:" +msgstr "Gæði tengingar:" + +msgid "Link:" +msgstr "Tenging:" + +# +msgid "Linked titles with a DVD menu" +msgstr "Tengdir titlar við DVD valmynd" + +#, fuzzy +msgid "List EPG functions..." +msgstr "listi EPG skoðunar..." + +msgid "List available networks" +msgstr "Sýna netkerfi í boði" + +msgid "List mode" +msgstr "" + +#, fuzzy +msgid "List of storage devices" +msgstr "Listi geymslu tækja" + +msgid "List type" +msgstr "" + +#, python-format +msgid "List version %d, found %d channel" +msgid_plural "List version %d, found %d channels" +msgstr[0] "" +msgstr[1] "" + +# +#, fuzzy +msgid "Listen to the radio..." +msgstr "hlusta á útvarp...." + +msgid "Lists reloaded!" +msgstr "" + +# +msgid "Lithuanian" +msgstr "Litháíska" + +# +msgid "Load" +msgstr "Hleð" + +msgid "Load Length of Movies in Movielist" +msgstr "" + +#, fuzzy +msgid "Load length of movies in movie list" +msgstr "Hlaða inn lengd myndar í myndalista" + +# +#, fuzzy +msgid "Load playlist" +msgstr "hlaða inn spilunarlista" + +# +#, fuzzy +msgid "Local network" +msgstr "Nærnet" + +# +msgid "Location" +msgstr "Staðsetning" + +msgid "Location for instant recordings" +msgstr "Staðsetning fyrir skyndi upptökur" + +msgid "Lock ratio" +msgstr "" + +# +msgid "Lock:" +msgstr "Lás:" + +# +msgid "Log results to harddisk" +msgstr "Skýrslur á harðadisk" + +msgid "Long filenames" +msgstr "Löng skráarnöfn" + +# +#, fuzzy +msgid "Long key press" +msgstr "Ýtt lengi á hnapp" + +# +msgid "Longitude" +msgstr "Lengdargráða" + +msgid "Loop through to" +msgstr "" + +msgid "Luxembourgish" +msgstr "" + +# +#, fuzzy +msgid "MMC card" +msgstr "MMC kort" + +# +msgid "MORE" +msgstr "MEIRA" + +# +msgid "Main menu" +msgstr "Aðalvalmynd" + +msgid "Maintain old EPG data for" +msgstr "" + +# +msgid "Make this mark an 'in' point" +msgstr "Gera þetta merki að 'inn' merki" + +# +msgid "Make this mark an 'out' point" +msgstr "Gera þetta merki að 'út' merki" + +# +msgid "Make this mark just a mark" +msgstr "Gera þetta merki bara að merki" + +msgid "Manage extensions" +msgstr "Sýsla með íforrit" + +# +msgid "Manage your receiver's software" +msgstr "Stjórna hugbúnaði móttakarans" + +msgid "Manual" +msgstr "" + +# +msgid "Manual Scan" +msgstr "Handvirk leitun" + +msgid "Manual configuration" +msgstr "Handvirk stilling" + +# +#, fuzzy +msgid "Manual scan" +msgstr "Handvirk leitun" + +# +msgid "Manual transponder" +msgstr "Handvirk leit á sendi" + +# +msgid "Manufacturer" +msgstr "Framleiðandi" + +# +#, fuzzy +msgid "Margin after recording (minutes)" +msgstr "Mörk fyrir upptöku (mínútur)" + +# +#, fuzzy +msgid "Margin before recording (minutes)" +msgstr "Mörk fyrir upptöku (mínútur)" + +msgid "Max memory positions" +msgstr "" + +#, fuzzy +msgid "Max. bitrate: " +msgstr "Mesti bitahraði:" + +# +msgid "Media player" +msgstr "Spilari" + +# +#, fuzzy +msgid "Media scanner" +msgstr "Spilari" + +# +msgid "Medium is not a writeable DVD!" +msgstr "Diskur er ekki skrifanlegur DVD diskur!" + +# +msgid "Medium is not empty!" +msgstr "Diskur er ekki tómur!" + +msgid "Memory" +msgstr "" + +msgid "Memory index" +msgstr "" + +# +msgid "Menu" +msgstr "Valmynd" + +# +msgid "Message" +msgstr "Skilaboð" + +# +msgid "Message..." +msgstr "Skilaboð..." + +#, python-format +msgid "Minimum age %d years" +msgstr "" + +#, fuzzy +msgid "Minimum send interval" +msgstr "Guard interval" + +msgid "Missing " +msgstr "" + +# +#, fuzzy +msgctxt "Satellite configuration mode" +msgid "Mode" +msgstr "Hamur" + +# +#, fuzzy +msgctxt "Video output mode" +msgid "Mode" +msgstr "Hamur" + +# +msgid "Model: " +msgstr "Gerð:" + +# +msgid "Modulation" +msgstr "Mótun" + +# +msgid "Modulator" +msgstr "Mótari" + +# +msgid "Mon" +msgstr "Mán" + +# +msgid "Mon-Fri" +msgstr "Mán-Fös" + +# +msgid "Monday" +msgstr "Mánudagur" + +# +msgid "Mosquito noise reduction" +msgstr "Mosquito suð deyfing" + +msgid "Mount" +msgstr "" + +msgid "Move" +msgstr "" + +# +#, fuzzy +msgid "Move PiP to main picture" +msgstr "nota mynd glugga sem aðal mynd" + +# +msgid "Move Picture in Picture" +msgstr "Færa Mynd í Mynd" + +# +msgid "Move east" +msgstr "Færa austur" + +msgid "Move to other directory" +msgstr "" + +msgid "Move to position X" +msgstr "" + +# +msgid "Move west" +msgstr "Færa vestur" + +msgid "Moved to position 0" +msgstr "" + +msgid "Moved to position at index" +msgstr "" + +msgid "Movement" +msgstr "" + +msgid "Movie List Configuration" +msgstr "" + +msgid "Movie Selection" +msgstr "" + +#, fuzzy +msgid "Movie list configuration" +msgstr "Handvirk stilling" + +msgid "Movie location" +msgstr "Staðsetning bíómynda" + +#, fuzzy +msgid "Movie selection" +msgstr "Staðsetning bíómynda" + +msgid "Movie/Drama" +msgstr "" + +# +msgid "Movielist menu" +msgstr "Bíómynda valmynd" + +msgid "Moving" +msgstr "" + +msgid "Moving east ..." +msgstr "" + +msgid "Moving to position" +msgstr "" + +msgid "Moving west ..." +msgstr "" + +# +msgid "Multi EPG" +msgstr "Mörg EPG" + +msgid "Multi-EPG bouquet selection" +msgstr "Mörg-EPG rásavanda val" + +# +msgid "Multimedia" +msgstr "Margmiðlun" + +# +msgid "Multiple service support" +msgstr "Styður margar rásir" + +msgid "Multiplex" +msgstr "Margar rásir" + +# +msgid "Multisat" +msgstr "Margir gervihnettir" + +msgid "Multisat all select" +msgstr "" + +msgid "Music/Ballet/Dance" +msgstr "" + +# +msgid "Mute" +msgstr "Hljóð Af" + +# +msgid "N/A" +msgstr "Ekki til" + +# +msgid "NEXT" +msgstr "NÆST" + +#, fuzzy +msgid "NFI image flashing" +msgstr "NFI stýrikerfis forritun" + +# +msgid "NFI image flashing completed. Press Yellow to Reboot!" +msgstr "NFI forritun er lokið. Ýttu á gulan til að endurræsa!" + +msgid "NIM" +msgstr "NIM" + +# +msgid "NOW" +msgstr "NÚNA" + +# +msgid "NTSC" +msgstr "NTSC" + +# +msgid "Name" +msgstr "Nafn" + +# +msgid "Nameserver" +msgstr "Nafnaþjónn" + +# +#, python-format +msgid "Nameserver %d" +msgstr "Nafnaþjónn %d" + +# +msgid "Nameserver settings" +msgstr "Uppsetning nafnaþjóns" + +# +#, fuzzy +msgid "Nameserver setup" +msgstr "Uppsetning nafnaþjóns" + +msgid "Namespace" +msgstr "Nafnabox" + +# +msgid "Netmask" +msgstr "Netmaski" + +# +msgid "Network" +msgstr "Netkerfi" + +msgid "Network ID" +msgstr "" + +# +#, fuzzy +msgid "Network configuration..." +msgstr "Stilling nettengingar..." + +# +#, fuzzy +msgid "Network mount" +msgstr "Tengingar við netkerfi" + +# +#, fuzzy, python-format +msgid "Network mount %s" +msgstr "Tengingar við netkerfi" + +#, fuzzy +msgid "Network name (SSID)" +msgstr "Netkerfis nafn (SSID)" + +# +msgid "Network scan" +msgstr "Leita netkerfið allt" + +# +msgid "Network setup" +msgstr "Stillingar netkerfis" + +# +msgid "Network test" +msgstr "Prufa nettengingu" + +# +msgid "Network test..." +msgstr "Prufa nettengingu..." + +msgid "Network test: " +msgstr "Prufa nettengingu:" + +#, fuzzy +msgid "Network wizard" +msgstr "Netkerfis ráðgjafi" + +# +msgid "Network:" +msgstr "Nettenging:" + +# +msgid "New" +msgstr "Nýtt" + +msgid "New PIN" +msgstr "Nýtt PIN númer" + +# +msgid "New version:" +msgstr "Ný útgáfa:" + +msgid "News Current Affairs" +msgstr "" + +msgctxt "button label, 'next screen'" +msgid "Next" +msgstr "" + +msgctxt "now/next: 'next' event label" +msgid "Next" +msgstr "" + +# +msgid "No" +msgstr "Nei" + +# +msgid "No (supported) DVDROM found!" +msgstr "Enginn (studdur) DVDROM fannst!" + +# +msgid "No Connection" +msgstr "Engin tenging" + +# +msgid "No HDD found or HDD not initialized!" +msgstr "Fann ekki harðan disk eða hann ekki formaður!" + +# +msgid "No backup needed" +msgstr "Afritun óþörf" + +msgid "No cable tuner found!" +msgstr "" + +# +msgid "" +"No data on transponder!\n" +"(Timeout reading PAT)" +msgstr "" +"Engin gögn á sendi!\n" +"(Rann út á tíma við lestur PAT)" + +msgid "No delay" +msgstr "" + +# +msgid "No description available." +msgstr "Engin lýsing tiltæk." + +# +msgid "No details for this image file" +msgstr "Engar upplýsingar um þetta stýrikerfi" + +# +msgid "No displayable files on this medium found!" +msgstr "Engar skrár fundust á þessu tæki!" + +# +msgid "No event info found, recording indefinitely." +msgstr "Engar upplýsingar um atriði fundust, tek upp endalaust." + +msgid "No fast winding possible yet.. but you can use the number buttons to skip forward/backward!" +msgstr "Ekki mögulegt að hraðspóla enn, þú getur notað númera takkana til að stökkva áfram/afturábak!" + +msgid "No free index available" +msgstr "" + +# +msgid "No free tuner!" +msgstr "Enginn laus móttakari!" + +msgid "No network connection available." +msgstr "Engin nettenging virk." + +# +msgid "No networks found" +msgstr "Ekkert netkerfi fannst" + +msgid "No new plugins found" +msgstr "" + +# +msgid "No positioner capable frontend found." +msgstr "Það fannst ekki móttakari sem styður staðsetjara." + +msgid "No satellites configured. Plese check your tuner setup." +msgstr "" + +msgid "No service" +msgstr "" + +# +#, fuzzy +msgid "No services/providers selected" +msgstr "engar rásir/sendar valdir" + +# +#, fuzzy +msgid "No standby" +msgstr "ekki biðstaða" + +msgid "No suitable sat tuner found!" +msgstr "" + +# +msgid "No tags are set on these movies." +msgstr "Engin merki sett á þessa mynd." + +# +#, fuzzy +msgid "No timeout" +msgstr "ekki tímalok" + +msgid "No to all" +msgstr "Nei við öllu" + +msgid "No transparency" +msgstr "" + +# +msgid "No tuner is configured for use with a diseqc positioner!" +msgstr "Enginn móttakari er stilltur til að nota með staðsetjara!" + +# +msgid "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Enginn móttakari er valinn!\n" +"Stilltu móttakara áður er að þú ferð að leita að rásum." + +# +#, fuzzy +msgid "No updates available" +msgstr " uppfærslur tiltækar." + +msgid "No updates available. Please try again later." +msgstr "" + +msgid "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" +msgstr "" +"Enginn virkur kóði fyrir rásalæsingu fannst!\n" +"Viltu búa til nýjan kóða núna?\n" +"Ef þú svarar \"Nei\" þá er engin læsing virk!" + +msgid "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" +msgstr "" +"Enginn virkur kóði fyrir uppsetningu fannst!\n" +"Viltu búa til nýjan kóða núna?\n" +"Ef þú svarar \"Nei\" þá er engin læsing virk!" + +msgid "No wireless networks found! Searching..." +msgstr "Ekkert þráðlaust net fannst! Leita..." + +# +msgid "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." +msgstr "" +"Ekkert virkt netkort fannst.\n" +"Athugaðu hvort að það sé tengdur netkapallinn og netið sé rétt stillt." + +# +msgid "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." +msgstr "" +"Ekkert virkt þráðlaust netkort fannst.\n" +"Athugaðu hvort að það sé tengt samhæft þráðlaust netkort og að það sé rétt stillt." + +# +msgid "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." +msgstr "" +"Ekkert virkt þráðlaust netkort fannst.\n" +" Athugaðu hvort að það sé tengt samhæft þráðlaust netkort eða athugaðu með stillingar á því." + +# +msgid "No, but restart from begin" +msgstr "Nei, en byrja frá byrjun" + +# +msgid "No, do nothing." +msgstr "Nei, ekki gera neitt." + +msgid "No, just start my receiver" +msgstr "" + +msgid "No, never" +msgstr "Nei, aldrei" + +# +msgid "None" +msgstr "Enginn" + +# +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right) +msgid "Nonlinear" +msgstr "Teygð mynd" + +msgid "Normal mode" +msgstr "" + +# +msgid "North" +msgstr "Norður" + +# +msgid "Norwegian" +msgstr "Norska" + +#, fuzzy +msgid "Not associated" +msgstr "Ekki tengt" + +msgid "Not configured" +msgstr "" + +# +#, fuzzy, python-format +msgid "Not enough disk space. Please free up some disk space and try again. (%d MB required, %d MB available)" +msgstr "Ekki nóg diskpláss. Taktu til á diskinum og reyndu aftur. (%d MB þarf, %d MB tiltæk)" + +msgid "Nothing connected" +msgstr "" + +# +msgid "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Ekkert til að leita!\n" +"Stilltu inn móttakarann áður en að þú byrjar rása leit." + +msgctxt "now/next: 'now' event label" +msgid "Now" +msgstr "" + +# +#, fuzzy +msgid "Now playing" +msgstr "Spila núna" + +# +msgid "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." +msgstr "Notaðu núna skerpu (contrast) stillingar til að auka birtu bakgrunns eins mikið og hægt er en vertu samt viss um að sjá mun á björtustu tveim hlutum myndarinnar. Þegar þú hefur gert það ýttu þá á OK." + +# +msgid "OK" +msgstr "OK" + +# +msgid "OK, guide me through the upgrade process" +msgstr "Leiðbeindu mér með uppfærsluna" + +msgid "ONID" +msgstr "ONID" + +msgid "OSD name request" +msgstr "" + +# +#, fuzzy +msgid "OSD settings" +msgstr "Stilling valmynda" + +msgid "OSD transparency" +msgstr "" + +# +msgid "Off" +msgstr "Af" + +msgid "Offline decode delay (ms)" +msgstr "" + +msgid "Ok" +msgstr "" + +# +msgid "On" +msgstr "Á" + +msgid "On end of movie" +msgstr "" + +msgid "On end of movie (as menu)" +msgstr "" + +# +msgid "One" +msgstr "Einn" + +msgid "Only extensions." +msgstr "Bara viðbætur." + +# +#, fuzzy +msgid "Only free scan" +msgstr "Bara fríar rásir" + +# +#, fuzzy +msgid "Open service list" +msgstr "opna rása lista" + +# +#, fuzzy +msgid "Open the movie list" +msgstr "Til baka til mynda lista" + +msgid "Orbital position" +msgstr "Staðsetning hnattar" + +msgid "Original" +msgstr "" + +msgid "Other" +msgstr "" + +msgid "Output" +msgstr "" + +msgid "Overwrite configuration files during software upgrade?" +msgstr "Skrifa yfir stillinga skrár við hugbúnaðar uppfærslu?" + +#, fuzzy +msgid "Overwrite configuration files?" +msgstr "Skrifa yfir stillinga skrár ?" + +# +msgid "PAL" +msgstr "PAL" + +msgid "PCR PID" +msgstr "PCR PID" + +# +msgid "PIDs" +msgstr "PIDs" + +# +#, fuzzy +msgid "PIN code needed" +msgstr "Kóða vantar" + +msgid "PLP ID" +msgstr "" + +msgid "PMT PID" +msgstr "PMT PID" + +# +msgid "Package list update" +msgstr "Listi uppfærðra pakka" + +# +msgid "Packet management" +msgstr "Pakka meðhöndlun" + +# +msgid "Packet manager" +msgstr "Hugbúnaðarpakka stjóri" + +# +#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term +#, fuzzy +msgid "Pan&scan" +msgstr "Pan&Scan" + +#, fuzzy +msgid "Parent directory" +msgstr "Hýsingar mappa" + +# +msgid "Parental control" +msgstr "Foreldrastýring" + +# +#, fuzzy +msgid "Parental control services editor" +msgstr "Forritun foreldrakóða á rásir" + +# +msgid "Parental control setup" +msgstr "Uppsetning á foreldrastýringu" + +# +msgid "Parental control type" +msgstr "Gerð foreldrastýringar" + +# +msgid "Password" +msgstr "Aðgangsorð" + +# +#, fuzzy +msgid "Pause" +msgstr "pása" + +# +msgid "Pause movie at end" +msgstr "Setja á pásu við enda myndar" + +# +#, fuzzy +msgid "Pause playback" +msgstr "Held áfram spilun" + +msgid "Pauze/Continue playback" +msgstr "" + +msgid "Percentage left" +msgstr "" + +#, fuzzy +msgid "Percentage right" +msgstr "Hringpólun hægri" + +msgid "Permanently delete all recordings in the trash can?" +msgstr "" + +msgid "Permanently remove all deleted items" +msgstr "" + +msgid "Persian" +msgstr "Persneska" + +# +msgid "Phone number" +msgstr "Síma númer" + +# +#, fuzzy +msgid "PiP setup" +msgstr "Uppsetning Mynd í Mynd" + +msgid "Picon" +msgstr "" + +msgid "Picon and service name" +msgstr "" + +# +#, fuzzy +msgid "Picture player" +msgstr "Mynd spilari" + +# +#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term. +msgid "Pillarbox" +msgstr "Pillarbox" + +# +msgid "Pilot" +msgstr "Stjóri" + +# +msgid "Play" +msgstr "Spila" + +# +msgid "Play DVD" +msgstr "Spila DVD" + +msgid "Play audio in background" +msgstr "" + +# +#, fuzzy +msgid "Play audio-CD..." +msgstr "Spila hljóð disk..." + +msgid "Play back media files" +msgstr "" + +# +#, fuzzy +msgid "Play entry" +msgstr "innsláttur" + +# +#, fuzzy +msgid "Play from next mark or playlist entry" +msgstr "spila frá næsta merki eða atriði úr spilunarlista" + +# +#, fuzzy +msgid "Play from previous mark or playlist entry" +msgstr "spila frá fyrra merki eða atriði úr spilunarlista" + +# +#, fuzzy +msgid "Play music..." +msgstr "Spila tónlist..." + +msgid "Play next" +msgstr "" + +msgid "Play next (return to movie list)" +msgstr "" + +msgid "Play next (return to previous service)" +msgstr "" + +msgid "Play previous" +msgstr "" + +msgid "Play recorded movies..." +msgstr "Spila uppteknar bíómyndir..." + +msgid "Please add titles to the compilation." +msgstr "Vinsamlega bætið við titlum við efnið." + +msgid "Please change recording endtime" +msgstr "Vinsamlega breytið lokatíma upptöku" + +# +msgid "Please check your network settings!" +msgstr "Vinsamlega athugaðu stillingar netkerfis!" + +msgid "Please choose an extension..." +msgstr "Vinsamlega veldu viðbót..." + +# +msgid "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Ýttu á stilla eða að athugaðu Nafnaþjóns stillingar.\n" +"Ýttu á OK þegar þú ert búinn." + +# +msgid "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Til að stilla nettengingu filltu þá út viðeigandi gildi.\n" +"Ýttu þá á OK til að halda áfram." + +msgid "Please connect your receiver to the internet" +msgstr "" + +# +msgid "Please do not change any values unless you know what you are doing!" +msgstr "Ekki breyta gildum ef þú veist ekki hvað þú ert að gera!" + +# +msgid "Please enter a name for the new bouquet" +msgstr "Settu inn nafn á nýjum rása vendi" + +# +msgid "Please enter a name for the new marker" +msgstr "Sláðu inn nafn fyrir nýja merkingu" + +# +msgid "Please enter a new filename" +msgstr "Sláðu inn nýtt skráarnafn" + +# +msgid "Please enter filename (empty = use current date)" +msgstr "Sláðu inn skráarnafn (tómt = nota núverandi dag)" + +# +msgid "Please enter name of the new directory" +msgstr "Sláðu inn nafn á nýju möppunni" + +msgid "Please enter new name:" +msgstr "" + +# +msgid "Please enter the correct pin code" +msgstr "Sláðu inn réttan kóða" + +msgid "Please enter the old PIN code" +msgstr "Sláðu inn gamla PIN kóðann þinn" + +msgid "Please follow the instructions on the TV" +msgstr "Fylgdu leiðbeiningum á skjá" + +# +msgid "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." +msgstr "Vinsamlega athugið að áður valinn diskur er ekki tiltækur núna og þá verður notuð sjálfgefin mappa í staðinn." + +# +msgid "Please press OK to continue." +msgstr "Ýttu á OK til að halda áfram." + +msgid "Please select a default EPG type..." +msgstr "" + +# +msgid "Please select a playlist to delete..." +msgstr "Veldu spilunarlista til að eyða..." + +# +msgid "Please select a playlist..." +msgstr "Vinsamlega veldu spilunarlista..." + +# +#, fuzzy +msgid "Please select a sub service..." +msgstr "Vinsamlega veldu undirrás..." + +# +msgid "Please select a subservice to record..." +msgstr "Velja undirrás til að taka upp..." + +# +msgid "Please select a subservice..." +msgstr "Vinsamlega veldu undirrás..." + +msgid "Please select an NFI file and press green key to flash!" +msgstr "Vinsamlega veldu NFI stýrikerfi og ýttu á græna takkann til að setja inn!" + +#, fuzzy +msgid "Please select medium to be scanned" +msgstr "Vinsamlega veljið tæki sem á að leita" + +# +msgid "Please select medium to use as backup location" +msgstr "Vinsamlega veljið tæki til að nota sem afritunar stað" + +# +msgid "Please select tag to filter..." +msgstr "Vinsamlega veldu merki til að sía út..." + +# +msgid "Please select the movie path..." +msgstr "Veldu slóð að mynd..." + +# +msgid "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Veldu það netkort sem að þú vilt nota fyrir veraldarvefs tengingu.\n" +"\n" +"Ýttu á OK til að halda áfram." + +# +msgid "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Vinsamlegast veldu það þráðlausa net sem að þú vilt tengjast.\n" +"\n" +"Ýttu á OK til að halda áfram." + +# +#, fuzzy +msgid "Please set up tuner A" +msgstr "Vinsamlega settu upp móttakara B" + +# +msgid "Please set up tuner B" +msgstr "Vinsamlega settu upp móttakara B" + +# +msgid "Please set up tuner C" +msgstr "Vinsamlega settu upp móttakara C" + +# +msgid "Please set up tuner D" +msgstr "Vinsamlega settu upp móttakara D" + +# +msgid "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." +msgstr "" +"Vinsamlega notið örvatakka til að færa Mynd í Mynd glugga.\n" +"Ýttu á Bouquet +/- til að breyta stærð á glugga.\n" +"Ýttu á OK til að fara aftur í venjulega stillingu eða EXIT til að hætta við." + +# +msgid "Please use the UP and DOWN keys to select your language. Afterwards press the OK button." +msgstr "Vinsamlega notið UP og NIÐUR takka til að velja tungumál. Ýttu svo á OK til að nota." + +msgid "Please wait" +msgstr "" + +#, fuzzy +msgid "Please wait (downloading channel list)" +msgstr "Vinsamlega bíðið.. les inn lista..." + +#, fuzzy +msgid "Please wait (downloading softcam)" +msgstr "Vinsamlega bíðið.. les inn lista..." + +# +#, fuzzy +msgid "Please wait (updating packages)" +msgstr "hleð inn mynd, vinsamlegast bíðið.." + +# +msgid "Please wait for activation of your network configuration..." +msgstr "Vinsamlega bíðið eftir virkjun á netkerfis stillingum..." + +# +msgid "Please wait while scanning is in progress..." +msgstr "Vinsamlega bíðið á meðan leit fer fram..." + +# +msgid "Please wait while we configure your network..." +msgstr "Vinsamlega bíðið á meðan stilling fer fram á netkerfinu..." + +# +msgid "Please wait while we prepare your network interfaces..." +msgstr "Vinsamlegast bíðið á meðan við stillum netkort..." + +# +msgid "Please wait while we test your network..." +msgstr "Vinsamlega bíðið á meðan við prufum net tengingu..." + +# +msgid "Please wait while your network is restarting..." +msgstr "Vinsamlega bíðið á meðan netkerfið er endurræst..." + +# +msgid "Please wait..." +msgstr "Vinsamlega bíðið..." + +msgid "Please wait... Loading list..." +msgstr "Vinsamlega bíðið.. les inn lista..." + +msgid "Plugin browser" +msgstr "Íforrita leit" + +msgid "Plugin manager activity information" +msgstr "Íforritstjóra aðgerða upplýsingar" + +msgid "Plugin manager help" +msgstr "Íforritsstjóra hjálp" + +msgid "Plugins" +msgstr "Íforrit" + +msgid "Polarisation" +msgstr "" + +msgid "Polarisation:" +msgstr "" + +# +msgid "Polarization" +msgstr "Pólun" + +# +msgid "Polish" +msgstr "Pólska" + +# +msgid "Port A" +msgstr "Tengi A" + +# +msgid "Port B" +msgstr "Tengi B" + +# +msgid "Port C" +msgstr "Tengi C" + +# +msgid "Port D" +msgstr "Tengi D" + +# +msgid "Portuguese" +msgstr "Portúgalska" + +#, fuzzy +msgid "Position of completed timers in timerlist" +msgstr "Staður lokinna tímastilltra upptaka í listanum" + +msgid "Position stored at index" +msgstr "" + +# +msgid "Positioner" +msgstr "Mótorstýring" + +msgid "Positioner (selecting satellites)" +msgstr "" + +msgid "Positioner Setup" +msgstr "" + +# +msgid "Positioner setup" +msgstr "Uppsetning mótors" + +# +msgid "Power threshold in mA" +msgstr "Aflmörk í mA" + +# +msgid "Predefined transponder" +msgstr "Fyrirfram forritaður sendir" + +msgid "Prefer AC3 track" +msgstr "" + +msgid "Prefer AC3+ track" +msgstr "" + +msgid "Prefer audio track stored by service" +msgstr "" + +msgid "Prefer graphical DVB subtitles" +msgstr "" + +msgid "Prefer subtitles for hearing impaired" +msgstr "" + +msgid "Prefer subtitles stored by service" +msgstr "" + +msgid "Preferred tuner" +msgstr "" + +msgid "Preferred tuner for recordings" +msgstr "" + +msgid "Prepare another USB stick for image flashing" +msgstr "Undirbúa annan USB staut fyrir stýrikerfis forritun" + +# +msgid "Preparing... Please wait" +msgstr "Undirbý...vinsamlega bíðið" + +msgid "Press '0' to toggle PiP mode" +msgstr "" + +msgid "Press INFO on your remote control for additional information." +msgstr "Ýttu á INFO á fjarstýringunni fyrir nánari upplýsingar." + +msgid "Press MENU on your remote control for additional options." +msgstr "Ýttu á MENU á fjarstýringunni til að sjá meiri möguleika." + +# +msgid "Press OK on your remote control to continue." +msgstr "Ýttu á OK á fjarstýringunni til að halda áfram." + +# +msgid "Press OK to activate the selected skin." +msgstr "Ýttu á OK til að velja valið skinn." + +# +msgid "Press OK to activate the settings." +msgstr "Ýtið á OK til að virkja stillingar." + +# +msgid "Press OK to edit the settings." +msgstr "Ýttu á OK til að breyta stillingum." + +# +#, python-format +msgid "Press OK to get further details for %s" +msgstr "Ýttu á OK til að fá nánari upplýsingar um %s" + +# +msgid "Press OK to scan" +msgstr "Ýtið á OK til að leita" + +# +#, fuzzy +msgid "Press OK to select a provider." +msgstr "Ýttu á OK til að velja sendanda." + +msgid "Press OK to select satellites" +msgstr "" + +# +msgid "Press OK to select/deselect a CAId." +msgstr "Ýttu á OK til að velja eða ekki velja CAId." + +# +msgid "Press OK to start the scan" +msgstr "Ýtið á OK til að byrja að leita" + +msgid "Press OK to toggle the selection" +msgstr "" + +# +msgid "Press OK to toggle the selection." +msgstr "Ýttu á OK til að velja á milli." + +# +msgid "Press yellow to set this interface as default interface." +msgstr "Ýttu á gula til að hafa þetta netkort sem sjálfvalið." + +msgctxt "button label, 'previous screen'" +msgid "Prev" +msgstr "" + +msgid "Preview" +msgstr "Forsýn" + +# +msgid "Preview menu" +msgstr "Forskoða valmynd" + +msgid "Preview selected channel" +msgstr "" + +# +msgid "Primary DNS" +msgstr "Aðal DNS" + +# +msgid "Priority" +msgstr "Forgangur" + +# +msgid "Process" +msgstr "Verk" + +msgid "Progress" +msgstr "" + +msgid "Progress bar left" +msgstr "" + +msgid "Progress bar right" +msgstr "" + +# +msgid "Properties of current title" +msgstr "Nánari upplýsingar um titil" + +# +msgid "Protect services" +msgstr "Læsa rásum" + +# +msgid "Protect setup" +msgstr "Læsa valmynd" + +# +msgid "Provider" +msgstr "Sendandi" + +# +msgid "Provider to scan" +msgstr "Sendandi sem leita á" + +# +msgid "Providers" +msgstr "Sendendur" + +msgid "Put TV in standby" +msgstr "" + +msgid "Put receiver in standby" +msgstr "" + +# +msgid "Python frontend for /tmp/mmi.socket" +msgstr "Python framendi fyrir /tmp/mmi.socket" + +# +msgid "Quick" +msgstr "Hratt" + +# +#, fuzzy +msgid "Quick zap" +msgstr "Hraðstökk" + +# +msgid "RF output" +msgstr "Loftnetsrás" + +# +msgid "RGB" +msgstr "RGB" + +# +msgid "Radio" +msgstr "Útvarp" + +# +#, fuzzy +msgid "Ram disk" +msgstr "Ram Diskur" + +# +msgid "Random" +msgstr "Handahóf" + +#, python-format +msgid "Rating defined by broadcaster - %d" +msgstr "" + +msgid "Rating undefined" +msgstr "" + +# +msgid "Really close without saving settings?" +msgstr "Viltu loka án þess að vista stillingar?" + +# +msgid "Really delete done timers?" +msgstr "Viltu eyða liðnum tímastillingum?" + +# +msgid "Really exit the subservices quickzap?" +msgstr "Viltu hætta í undirrása hraðstökki?" + +# +msgid "Really reboot now?" +msgstr "Viltu örugglega endurræsa núna?" + +# +msgid "Really restart now?" +msgstr "Viltu örugglega endurræsa núna?" + +# +msgid "Really shutdown now?" +msgstr "Viltu örugglega slökkva núna?" + +msgid "Really upgrade the frontprocessor and reboot now?" +msgstr "" + +msgid "Really upgrade your settop box and reboot now?" +msgstr "" + +# +msgid "Reboot" +msgstr "Endurræsi" + +msgid "Rec" +msgstr "" + +# +#, fuzzy +msgid "Reception settings" +msgstr "Stilling móttöku" + +# +msgid "Record" +msgstr "Upptaka" + +# +#, python-format +msgid "Record time limited due to conflicting timer %s" +msgstr "Upptöku tími takmarkaður vegna annarar tímastillingar, %s" + +# +msgid "Recorded files..." +msgstr "Uppteknar skrár..." + +# +msgid "Recording" +msgstr "Upptaka" + +msgid "Recording in progress" +msgstr "" + +msgid "Recording paths" +msgstr "Upptöku slóð" + +msgid "Recording type" +msgstr "" + +# +msgid "Recording(s) are in progress or coming up in few seconds!" +msgstr "Upptaka (tökur) eru í gangi núna eða eru væntanlegar fljótlega!" + +# +msgid "Recordings" +msgstr "Upptökur" + +# +msgid "Recordings always have priority" +msgstr "Upptaka hefur alltaf forgang" + +msgid "Red button..." +msgstr "" + +msgid "Reenter new PIN" +msgstr "Sláðu aftur inn nýtt PIN" + +# +#, fuzzy +msgid "Refresh rate" +msgstr "Hressingar tíðni" + +# +msgid "Refresh rate selection." +msgstr "Hressingar tíðni val." + +msgid "Regard deep standby as standby" +msgstr "" + +msgid "Relative" +msgstr "" + +# +msgid "Reload" +msgstr "Endurlesa" + +#, fuzzy +msgid "Reload black-/white lists" +msgstr "Endurhlaða svart-/hvítlista" + +msgid "Reloading bouquets and services..." +msgstr "" + +msgid "Remember last service in PiP" +msgstr "" + +msgid "Remember service PIN" +msgstr "Muna eftir PIN númeri rásar" + +msgid "Remember these settings for each folder" +msgstr "" + +msgid "Reminder, you have chosen to save timeshift file." +msgstr "" + +# +#, fuzzy +msgid "Remote control type" +msgstr "Gerð foreldrastýringar" + +# +#, fuzzy +msgid "Removal has completed." +msgstr "Tókst ekki að taka út." + +# +msgid "Remove" +msgstr "Eyða" + +# +msgid "Remove a mark" +msgstr "Eyða merkingu" + +# +#, fuzzy +msgid "Remove a nameserver entry" +msgstr "taka út nafnaþjón" + +# +#, fuzzy +msgid "Remove bookmark" +msgstr "eyða bókamerki" + +msgid "Remove completed timers after (days)" +msgstr "" + +# +msgid "Remove currently selected title" +msgstr "Taka út þegar valinn titil" + +msgid "Remove items from trash can after (days)" +msgstr "" + +msgid "Remove plugins" +msgstr "Taka út íforrit" + +# +msgid "Remove title" +msgstr "Taka út titil" + +# +msgid "Removing" +msgstr "Eyði" + +# +#, python-format +msgid "Removing directory %s failed. (Maybe not empty.)" +msgstr "Tókst ekki að taka út möppuna %s. (kannski ekki tóm.)" + +# +#, fuzzy +msgid "Removing partition table" +msgstr "Taka út titil" + +# +msgid "Rename" +msgstr "Endurnefna" + +msgid "Repeat" +msgstr "" + +# +#, fuzzy +msgid "Repeat type" +msgstr "Gerð endurtekningar" + +# +msgid "Repeating event currently recording... What do you want to do?" +msgstr "Endurtaka atriði sem er í upptöku.. hvað viltu gera núna?" + +# +msgid "Repeats" +msgstr "Endurtekningar" + +msgid "Require authentication for http streams" +msgstr "" + +msgid "Required medium type:" +msgstr "Þarf gerð disks:" + +msgid "Rereading partition table" +msgstr "" + +msgid "Reserved" +msgstr "" + +# +msgid "Reset" +msgstr "Endursetja" + +# +msgid "Reset and renumerate title names" +msgstr "Endursetja og endurnúmera nöfn titla" + +msgid "Reset playback position" +msgstr "" + +# +msgid "Reset video enhancement settings to system defaults?" +msgstr "Endursetja mynd stillingar á sjálfvaldar kerfis stillingar?" + +# +msgid "Reset video enhancement settings to your last configuration?" +msgstr "Endursetja mynd bóta stillingar á síðast valdar stillingar?" + +# +msgid "Resolution" +msgstr "Upplausn" + +# +msgid "Restart" +msgstr "Endurræsa" + +# +msgid "Restart GUI now?" +msgstr "Endurræsa gluggakerfi núna?" + +msgid "Restart enigma" +msgstr "" + +# +msgid "Restart network" +msgstr "Endurræsi netkort" + +# +msgid "Restart test" +msgstr "Prufa aftur" + +# +msgid "Restart your network connection and interfaces.\n" +msgstr "Endurræsa nettengingu og netkort.\n" + +# +msgid "Restore" +msgstr "Setja inn" + +# +msgid "Restore backups" +msgstr "Setja inn afrit" + +# +msgid "Restore is running..." +msgstr "Set inn afrit..." + +# +msgid "Restore system settings" +msgstr "Setja inn kerfis stillingar" + +# +#, fuzzy +msgid "Restoring..." +msgstr "tek upp...." + +# +msgid "Resume from last position" +msgstr "Halda áfram frá sama stað og síðast" + +#, python-format +msgid "Resume position at %s" +msgstr "Byrja aftur eftir %s" + +# +#. TRANSLATORS: The string "Resuming playback" flashes for a moment +#. TRANSLATORS: at the start of a movie, when the user has selected +#. TRANSLATORS: "Resume from last position" as start behavior. +#. TRANSLATORS: The purpose is to notify the user that the movie starts +#. TRANSLATORS: in the middle somewhere and not from the beginning. +#. TRANSLATORS: (Some translators seem to have interpreted it as a +#. TRANSLATORS: question or a choice, but it is a statement.) +msgid "Resuming playback" +msgstr "Held áfram spilun" + +# +msgid "Return to movie list" +msgstr "Til baka til mynda lista" + +# +msgid "Return to previous service" +msgstr "Til baka á síðustu rás" + +msgid "Reverse bouquet buttons" +msgstr "" + +msgid "Reverse list" +msgstr "" + +# +msgid "Rewind speeds" +msgstr "Hraði hraðspólunar til baka" + +msgid "Rewrap teletext subtitles" +msgstr "" + +# +msgid "Right" +msgstr "Hægri" + +msgid "Right from servicename" +msgstr "" + +msgid "Roll-off" +msgstr "" + +msgid "Romanian" +msgstr "" + +msgid "Root directory" +msgstr "" + +msgid "Rotor step position:" +msgstr "" + +# +msgid "Rotor turning speed" +msgstr "Hraði mótors" + +msgid "Round start time on" +msgstr "" + +# +msgid "Russian" +msgstr "Rússneska" + +# +msgid "S-Video" +msgstr "S-Video" + +msgid "SID" +msgstr "SID" + +msgid "SINGLE LAYER DVD" +msgstr "SINGLE LAYER DVD" + +# +msgid "SNR" +msgstr "SNR" + +# +msgid "SNR:" +msgstr "SNR:" + +# +msgid "SSID:" +msgstr "SSID:" + +msgid "Same resolution as skin" +msgstr "" + +# +msgid "Sat" +msgstr "Lau" + +# +msgid "Satellite" +msgstr "Gervihnöttur" + +# +#, fuzzy +msgid "Satellite dish setup" +msgstr "Uppsetning Gervihnattabúnaðar" + +msgid "Satellite equipment" +msgstr "Gervihnatta búnaður" + +# +#, fuzzy +msgid "Satellite equipment setup" +msgstr "Uppsetning Gervihnattabúnaðar" + +msgid "Satellite longitude:" +msgstr "" + +# +msgid "Satellites" +msgstr "Gervihnettir" + +# +msgid "Satfinder" +msgstr "Gervihnattaleit" + +msgid "Sats" +msgstr "Gervihn." + +# +msgid "Saturation" +msgstr "Lita mettun" + +# +msgid "Saturday" +msgstr "Laugardagur" + +# +msgid "Save" +msgstr "Vista" + +# +#, fuzzy +msgid "Save playlist" +msgstr "vista spilunarlista" + +msgid "Save timeshift file" +msgstr "" + +msgid "Save timeshift file in movie directory" +msgstr "" + +# +msgid "Scaler sharpness" +msgstr "Skölunar skerpa" + +# +#, fuzzy +msgid "Scaling mode" +msgstr "Kvörðunar aðferð" + +msgid "Scan" +msgstr "" + +# +msgid "Scan " +msgstr "Leita" + +# +#. TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' +#, fuzzy, python-format +msgid "Scan %s" +msgstr "Leita" + +# +#. TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' +#, fuzzy, python-format +msgid "Scan %s band" +msgstr "Leita á bandi EU MID" + +# +msgid "Scan additional SR" +msgstr "Leita á fleiri SR" + +# +#, fuzzy +msgid "Scan files..." +msgstr "Leita að skrám..." + +# +#, fuzzy +msgid "Scan wireless networks" +msgstr "Leita að þráðlausu neti" + +msgid "Scan your network for wireless access points and connect to them using your selected wireless device.\n" +msgstr "Leita að þráðlausu neti og tengjast þeim með völdu netkorti.\n" + +#, python-format +msgid "Scanning %s..." +msgstr "" + +#. TRANSLATORS: The stb is performing a channel scan, progress percentage is printed in '%d' (and '%%' will show a single '%' symbol) +#, python-format +msgid "Scanning - %d%% completed" +msgid_plural "Scanning - %d%% completed" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "Scanning completed, %d channel found" +msgid_plural "Scanning completed, %d channels found" +msgstr[0] "" +msgstr[1] "" + +msgid "Scanning failed!" +msgstr "" + +msgid "Scanning..." +msgstr "" + +# +msgid "Scans default lamedbs sorted by satellite with a connected dish positioner" +msgstr "Leita sjálfgefna gervihnetti, raðað eftir hnöttum með tengdum mótor" + +# +msgid "Search east" +msgstr "Leita austur" + +msgid "Search west" +msgstr "Leita vestur" + +msgid "Searching" +msgstr "" + +msgid "Searching east ..." +msgstr "" + +msgid "Searching for available updates. Please wait..." +msgstr "Leita að tiltækum uppfærslum. Vinsamlega bíðið..." + +# +msgid "Searching for new installed or removed packages. Please wait..." +msgstr "Leita að nýinnsettum eða fjarlægðum pökkum. Vinsamlega bíðið..." + +msgid "Searching west ..." +msgstr "" + +msgid "Second cable of motorized LNB" +msgstr "" + +# +msgid "Secondary DNS" +msgstr "Vara DNS" + +# +msgid "Seek" +msgstr "Leita" + +# +#, fuzzy +msgid "Seek backward" +msgstr "fara til baka" + +# +#, fuzzy +msgid "Seek backward (enter time)" +msgstr "stökkva til baka (slá inn tíma)" + +# +#, fuzzy +msgid "Seek forward" +msgstr "fara áfram" + +# +#, fuzzy +msgid "Seek forward (enter time)" +msgstr "stökkva áfram (slá inn tíma)" + +# +msgid "Select" +msgstr "Veldu" + +# +#, fuzzy +msgid "Select CAId" +msgstr "veldu CAId" + +# +msgid "Select HDD" +msgstr "Veldu harðadisk" + +# +#, fuzzy +msgid "Select a bouquet" +msgstr "Veldu mynd" + +# +msgid "Select a movie" +msgstr "Veldu mynd" + +# +#, fuzzy +msgid "Select a network adapter" +msgstr "Veldu Netkort" + +# +#, fuzzy +msgid "Select a skin" +msgstr "Veldu mynd" + +# +#, fuzzy +msgid "Select a tuner" +msgstr "Veldu mynd" + +# +#, fuzzy +msgid "Select a wireless network" +msgstr "Veldu þráðlaust net" + +msgid "Select action" +msgstr "" + +#, python-format +msgid "Select action for timer %s:" +msgstr "" + +msgid "Select all" +msgstr "" + +#, fuzzy +msgid "Select an image to be downloaded" +msgstr "Veldu stýrikerfi til að hlaða niður" + +# +msgid "Select audio track" +msgstr "Veldu hljóð rás" + +#, fuzzy +msgid "Select backup files" +msgstr "Veldu afrits skrár" + +#, fuzzy +msgid "Select backup location" +msgstr "Veldu stað fyrir afrit" + +# +msgid "Select channel to record from" +msgstr "Veldu rás til að taka upp frá" + +msgid "Select copy destination for:" +msgstr "" + +msgid "Select default EPG type..." +msgstr "" + +msgid "Select desired image from feed list" +msgstr "Veldu stýrikerfi af listanum" + +msgid "Select destination for:" +msgstr "" + +msgid "Select files for backup." +msgstr "Veldu skrár fyrir afrit." + +# +msgid "Select files/folders to backup" +msgstr "Veldu skrár/möppur til afritunar" + +msgid "Select input device" +msgstr "Veldu inntaks tæki" + +msgid "Select input device." +msgstr "Veldu inntaks tæki." + +# +msgid "Select interface" +msgstr "Veldu netkort" + +# +#, fuzzy +msgid "Select location" +msgstr "Velja staðsetningu" + +# +#, fuzzy +msgid "Select movie" +msgstr "Veldu mynd" + +# +msgid "Select provider to add..." +msgstr "Veldu sendanda til að bæta við..." + +msgid "Select refresh rate" +msgstr "Veldu hressingar tíðni" + +msgid "Select satellites" +msgstr "" + +# +msgid "Select service to add..." +msgstr "Veldur rás til að bæta við..." + +msgid "Select sort method:" +msgstr "" + +#, fuzzy +msgid "Select target folder" +msgstr "Velja úttaks möppu" + +# +#, fuzzy +msgid "Select the movie path" +msgstr "velja slóð að mynd" + +# +#, fuzzy +msgid "Select upgrade source" +msgstr "Veldu upphafs slóð til að breyta." + +# +msgid "Select upgrade source to edit." +msgstr "Veldu upphafs slóð til að breyta." + +# +msgid "Select video input with up/down buttons" +msgstr "Veldu mynd inngang með up/niður tökkum" + +# +msgid "Select video mode" +msgstr "Veldu mynd stillingu" + +# +msgid "Select wireless network" +msgstr "Veldu þráðlaust net" + +msgid "Select your provider, and press OK to start the scan" +msgstr "" + +msgid "Selecting satellites 1 (USALS)" +msgstr "" + +msgid "Selecting satellites 2 (USALS)" +msgstr "" + +# +msgid "Send DiSEqC only on satellite change" +msgstr "Senda DiSEqC bara við að skipta á annan gevihnött" + +# +msgid "Separate titles with a main menu" +msgstr "Taka út titla af aðalvalmynd" + +# +msgid "Sequence repeat" +msgstr "Endurtaka runu" + +# +msgid "Serbian" +msgstr "Serneska" + +# +msgid "Service" +msgstr "Rás" + +msgid "Service has been added to the favourites." +msgstr "Rás hefur verið bætt við eftirlætis lista." + +# +msgid "Service has been added to the selected bouquet." +msgstr "Rás hefur verið bætt við valinn rásavöndul." + +# +#, fuzzy +msgid "Service info" +msgstr "Upplýsingar" + +# +msgid "" +"Service invalid!\n" +"(Timeout reading PMT)" +msgstr "" +"Rás ógild!\n" +"(Rann út á tíma við lestur PMT)" + +# +#, fuzzy +msgid "Service name" +msgstr "Leita að rásum" + +# +msgid "" +"Service not found!\n" +"(SID not found in PAT)" +msgstr "" +"Rás fannst ekki!\n" +"(SID fannst ekki í PAT)" + +msgid "Service reference" +msgstr "Rása upplýsingar" + +# +msgid "Service scan" +msgstr "Rása leit" + +# +#, fuzzy +msgid "Service searching" +msgstr "Leita að rásum" + +# +#, fuzzy +msgid "Service title mode" +msgstr "Veldu mynd stillingu" + +# +msgid "" +"Service unavailable!\n" +"Check tuner configuration!" +msgstr "" +"Rás finnst ekki!\n" +"Athugaðu stillingar móttakara!" + +# +msgid "Services" +msgstr "Rásir" + +msgid "Set default" +msgstr "" + +#, fuzzy +msgid "Set end time" +msgstr "Stilla loka tíma" + +msgid "Set fixed" +msgstr "" + +msgid "Set fps for external subtitles" +msgstr "" + +# +msgid "Set interface as default Interface" +msgstr "Gera að sjálfgefnu korti" + +msgid "Set limits" +msgstr "" + +#, fuzzy +msgid "Set the type of the progress indication in the channel selection screen." +msgstr "Sýna framvindu atriðis við rásaval" + +msgid "Set time window to 1 hour" +msgstr "" + +msgid "Set time window to 2 hours" +msgstr "" + +msgid "Set time window to 3 hours" +msgstr "" + +msgid "Set time window to 4 hours" +msgstr "" + +msgid "Set time window to 5 hours" +msgstr "" + +msgid "Set time window to 6 hours" +msgstr "" + +# +#, fuzzy +msgid "Set voltage and 22KHz" +msgstr "Setja spennu og 22KHz" + +# +msgid "Settings" +msgstr "Stillingar" + +# +msgid "Setup" +msgstr "Uppsetning" + +msgid "Setup menu" +msgstr "" + +# +#, fuzzy +msgid "Setup mode" +msgstr "Uppsetninga hamur" + +msgid "Setup your positioner" +msgstr "" + +#, fuzzy +msgid "Setup your satellite equipment" +msgstr "Gervihnatta búnaður" + +#, python-format +msgid "Shall the USB stick wizard proceed and program the image file %s into flash memory?" +msgstr "Á USB stauts ráðgjafi að halda áfram og setja stýrikerfi %s inn í minni móttakarans?" + +# +msgid "Sharpness" +msgstr "Skerpa" + +msgid "Short filenames" +msgstr "Stutt skráarnöfn" + +msgid "Show EIT now/next in infobar" +msgstr "" + +# +#, fuzzy +msgid "Show EPG for current channel..." +msgstr "Sýna upplýsinga borða við breytingu á atriði" + +# +#, fuzzy +msgid "Show EPG..." +msgstr "sýna EPG" + +msgid "Show Games show" +msgstr "" + +msgid "Show SNR percentage instead of dB value" +msgstr "" + +msgid "Show VCR scart on main menu" +msgstr "" + +# +#, fuzzy +msgid "Show WLAN status" +msgstr "Sýna WLAN stöðu" + +msgid "Show animation while busy" +msgstr "" + +# +#, fuzzy +msgid "Show background in radio mode" +msgstr "bakgrunns mynd" + +msgid "Show bouquet selection menu" +msgstr "" + +msgid "Show busy indicator when the system is busy." +msgstr "" + +msgid "Show channel numbers in channel selection" +msgstr "" + +msgid "Show columns" +msgstr "" + +msgid "Show crypto icons" +msgstr "" + +msgid "Show crypto info in infobar" +msgstr "" + +msgid "Show detailed event info" +msgstr "" + +# +#, fuzzy +msgid "Show event details" +msgstr "sýna atriði nánar" + +msgid "Show event-progress in channel selection" +msgstr "Sýna framvindu atriðis við rásaval" + +# +#, fuzzy +msgid "Show extended description" +msgstr "sýna auka upplýsingar" + +#, fuzzy +msgid "Show extensions..." +msgstr "skoða íforrit..." + +msgid "Show icon for new/unseen items" +msgstr "" + +msgid "Show in extensions menu" +msgstr "" + +# +#, fuzzy +msgid "Show info" +msgstr "Sýna upplýsingar" + +# +#, fuzzy +msgid "Show info line" +msgstr "sýna upplýsingalínu" + +# +msgid "Show infobar on channel change" +msgstr "Sýna upplýsingaborða við að skipta um stöð" + +# +msgid "Show infobar on event change" +msgstr "Sýna upplýsinga borða við breytingu á atriði" + +# +msgid "Show infobar on skip forward/backward" +msgstr "Sýna upplýsingaborða við stökk fram eða aftur" + +msgid "Show latest commits on sourceforge" +msgstr "" + +# +#, fuzzy +msgid "Show message when recording starts" +msgstr "Sýna skilaboð við byrjun upptöku" + +#, fuzzy +msgid "Show movie lengths in movielist" +msgstr "Hlaða inn lengd myndar í myndalista" + +msgid "Show multi channel EPG" +msgstr "" + +msgid "Show picons in channel list" +msgstr "" + +# +msgid "Show positioner movement" +msgstr "Sýna færslu mótors" + +msgid "Show screensaver" +msgstr "" + +msgid "Show second infobar" +msgstr "" + +msgid "Show service type icons" +msgstr "" + +# +msgid "Show services beginning with" +msgstr "Sýna rásir sem byrja á" + +# +#, fuzzy +msgid "Show shutdown menu" +msgstr "sýna slökkva valmynd" + +msgid "Show single service EPG" +msgstr "" + +msgid "Show status icons in Movielist" +msgstr "" + +msgid "Show status icons in movie list" +msgstr "" + +msgid "Show status icons in movielist" +msgstr "" + +# +#, fuzzy +msgid "Show tag menu" +msgstr "sýna merkja valmynd" + +# +msgid "Show the radio player..." +msgstr "Sýna útvarpsspilara..." + +msgid "Show the tv player..." +msgstr "Sýna sjónvarpsspilara..." + +msgid "Show warning when timeshift is stopped" +msgstr "" + +# +msgid "Shows the state of your wireless LAN connection.\n" +msgstr "Sýnir stöðu þráðlausrar nettenginar.\n" + +# +#, fuzzy +msgid "Shuffle playlist" +msgstr "spila af handahófi úr lista" + +msgid "Shutdown" +msgstr "Slökkva" + +msgid "Shutdown when in Standby" +msgstr "" + +msgid "Side by side" +msgstr "" + +msgid "Signal OK, proceeding" +msgstr "" + +msgid "Signal quality" +msgstr "" + +# +#, fuzzy +msgid "Signal strength:" +msgstr "Styrkur merkis:" + +# +msgid "Signal: " +msgstr "Merki:" + +# +msgid "Similar" +msgstr "Svipað" + +# +msgid "Similar broadcasts:" +msgstr "Svipuð útsending:" + +# +msgid "Simple" +msgstr "Einfalt" + +# +msgid "Simple titleset (compatibility for legacy players)" +msgstr "Einföld valmynd (virkar fyrir flesta spilara)" + +# +msgid "Single" +msgstr "Einn" + +# +msgid "Single EPG" +msgstr "Eitt EPG" + +# +msgid "Single satellite" +msgstr "Einn gervihnöttur" + +# +#, fuzzy +msgid "Single step (GOP)" +msgstr "Eitt skref (GOP)" + +# +msgid "Single transponder" +msgstr "Einn sendir" + +msgid "Site latitude" +msgstr "" + +msgid "Site longitude" +msgstr "" + +# +msgid "Skin" +msgstr "Skinn" + +# +msgid "Skins" +msgstr "Skinn" + +# +#, fuzzy +msgid "Skip empty services" +msgstr "Læsa rásum" + +msgid "Skip internet connection check (disables automatic package installation)" +msgstr "" + +# +#, fuzzy +msgid "Sleep timer" +msgstr "Tímastilling" + +msgid "SleepTimer Configuration" +msgstr "" + +msgid "Sleeptimer" +msgstr "" + +# +#, fuzzy +msgid "Slide picture in loop" +msgstr "sýna myndir í aftur og aftur" + +# +#, fuzzy +msgid "Slide show interval (sec.)" +msgstr "Tími milli mynda (sek.)" + +# +#, python-format +msgid "Slot %d" +msgstr "Sleði %d" + +msgid "Slovak" +msgstr "" + +# +msgid "Slovenian" +msgstr "Slovenian" + +# +msgid "Slow" +msgstr "Hægt" + +# +#, fuzzy +msgid "Slow motion speeds" +msgstr "Hraði hægspilunar" + +# +#, fuzzy +msgid "Small progress" +msgstr "Í vinnslu" + +msgid "Social/Political/Economics" +msgstr "" + +msgid "SoftCam / CI" +msgstr "" + +# +#, fuzzy +msgid "Softcam type" +msgstr "Hugbúnaður" + +# +msgid "Software" +msgstr "Hugbúnaður" + +msgid "Software management" +msgstr "Hugbúnaðar umsýsla" + +msgid "Software manager setup" +msgstr "Uppsetning hugbúnaðar umsýslu" + +# +msgid "Software restore" +msgstr "Hugbúnaðar endurinnsetning" + +# +msgid "Software update" +msgstr "Hugbúnaðar uppfærsla" + +msgid "Softwaremanager information" +msgstr "Upplýsingar hugbúnaðar umsýslu" + +msgid "Some plugins are not available:\n" +msgstr "Sum íforrit eru ekki til:\n" + +# +#, fuzzy, python-format +msgid "Sorry, %s has not been installed!" +msgstr "Þvímiður er Margmiðlunarleitari ekki innsettur!" + +msgid "Sorry, deleting directories can (for now) only be done through the trash can." +msgstr "" + +# +#, fuzzy +msgid "Sorry, no backups found!" +msgstr "Þvímiður fannst ekkert afrit!" + +# +#, fuzzy +msgid "Sorry, no details available!" +msgstr "Því miður, engar nánari upplýsingar til!" + +# +#, fuzzy +msgid "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." +msgstr "" +"Því miður er ekki hægt að skrifa á valinn afritunar stað.\n" +"Vinsamlega veldu annan stað fyrir afritið." + +msgid "Sort" +msgstr "" + +# +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort A-Z" +msgstr "Raða A-Ö" + +msgid "Sort by" +msgstr "" + +msgid "Sort list:" +msgstr "" + +# +#. TRANSLATORS: This must fit into the header button in the EPG-List +#, fuzzy +msgid "Sort time" +msgstr "Raða Tíma" + +# +msgid "Sound" +msgstr "Hljóð" + +# +#, fuzzy +msgid "Sound carrier" +msgstr "Hljóðburðarbylgja" + +msgid "Source request" +msgstr "" + +# +msgid "South" +msgstr "Suður" + +# +msgid "Spanish" +msgstr "Spænska" + +msgid "Specify the end time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the end time until the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify the start time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the start time when the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify timeframe to ignore inactivity sleeptimer" +msgstr "" + +msgid "Specify timeframe to ignore the shutdown in standby" +msgstr "" + +# +msgid "Split preview mode" +msgstr "Skipta forsýn" + +msgid "Splitscreen" +msgstr "" + +msgid "Sports" +msgstr "" + +# +#, fuzzy +msgid "Standard" +msgstr "venjulegt" + +msgid "Standart list" +msgstr "" + +# +msgid "Standby" +msgstr "Biðstaða" + +# +#, fuzzy +msgid "Standby / restart" +msgstr "Biðstaða / Endurræsing" + +msgid "Standby after current event" +msgstr "" + +#, fuzzy, python-format +msgid "Standby fan %d PWM" +msgstr "Vifta í biðstöðu %d PWM" + +#, fuzzy, python-format +msgid "Standby fan %d voltage" +msgstr "%d Volt á viftu í biðstöðu " + +msgid "Standby in " +msgstr "" + +msgid "StandbyLED" +msgstr "" + +# +msgid "Start from the beginning" +msgstr "Byrja frá byrjun" + +msgid "Start offline decode" +msgstr "" + +# +msgid "Start recording?" +msgstr "Byrja upptöku?" + +# +msgid "Start test" +msgstr "Byrja prófun" + +# +#, fuzzy +msgid "Start time" +msgstr "Byrjunartími" + +msgid "Start time to ignore inactivity sleeptimer" +msgstr "" + +msgid "Start time to ignore shutdown in standby" +msgstr "" + +# +#, fuzzy +msgid "Start timeshift" +msgstr "byrja lifandi pásu" + +msgid "Start with list screen" +msgstr "" + +# +msgid "Starting on" +msgstr "Byrja á" + +msgid "Startup the set top box in standby" +msgstr "" + +msgid "Startup to Standby" +msgstr "" + +# +msgid "Step east" +msgstr "Skref austur" + +# +msgid "Step west" +msgstr "Skref vestur" + +msgid "Stepped east" +msgstr "" + +msgid "Stepped west" +msgstr "" + +# +msgid "Stop" +msgstr "Stopp" + +# +#, fuzzy +msgid "Stop PiP" +msgstr "hætta með PiP" + +# +msgid "Stop current event and disable coming events" +msgstr "Stoppa núverandi atriði og hætta við komandi atriði" + +# +msgid "Stop current event but not coming events" +msgstr "Stoppa núverandi atriði en halda komandi atriðum" + +# +#, fuzzy +msgid "Stop entry" +msgstr "hætta innslætti" + +# +msgid "Stop playing this movie?" +msgstr "Stoppa spilun?" + +msgid "Stop recording" +msgstr "" + +msgid "Stop recording and delete" +msgstr "" + +msgid "Stop service on return to movie list" +msgstr "" + +# +msgid "Stop test" +msgstr "Stoppa prófun" + +# +msgid "Stop testing plane after # failed transponders" +msgstr "Hætta að prufa eftir # senda sem fundust ekki" + +# +msgid "Stop testing plane after # successful transponders" +msgstr "Hætta að prufa eftir að # sendar fundust" + +msgid "Stop timer recording" +msgstr "" + +# +#, fuzzy +msgid "Stop timeshift" +msgstr "stoppa lifandi pásu" + +# +#, fuzzy +msgid "Stop timeshift?" +msgstr "Stoppa tímafærslu?" + +msgid "Stopped" +msgstr "" + +msgid "Store at index" +msgstr "" + +# +msgid "Store position" +msgstr "Vista staðsetningu" + +# +msgid "Stored position" +msgstr "Vistuð staða" + +msgid "Stream" +msgstr "" + +msgid "Stream request" +msgstr "" + +msgid "Strongest position" +msgstr "" + +# +msgid "Subservice list..." +msgstr "Listi undirrása..." + +# +msgid "Subservices" +msgstr "Undirþjónusta" + +msgid "Subtitle Quickmenu" +msgstr "" + +# +#, fuzzy +msgid "Subtitle alignment" +msgstr "Velja undirtexta" + +msgid "Subtitle border width" +msgstr "" + +msgid "Subtitle delay when timing is bad" +msgstr "" + +msgid "Subtitle delay when timing lacks" +msgstr "" + +# +#, fuzzy +msgid "Subtitle font size" +msgstr "Undirtextar" + +msgid "Subtitle language selection 1" +msgstr "" + +msgid "Subtitle language selection 2" +msgstr "" + +msgid "Subtitle language selection 3" +msgstr "" + +msgid "Subtitle language selection 4" +msgstr "" + +# +#, fuzzy +msgid "Subtitle position" +msgstr "Velja undirtexta" + +# +msgid "Subtitle selection" +msgstr "Velja undirtexta" + +msgid "Subtitle selection..." +msgstr "" + +msgid "Subtitle settings" +msgstr "" + +# +msgid "Subtitles" +msgstr "Undirtextar" + +# +msgid "Sun" +msgstr "Sun" + +# +msgid "Sunday" +msgstr "Sunnudagur" + +# +#, fuzzy +msgid "Swap PiP and main picture" +msgstr "skipta á PiP og aðal mynd" + +# +#, fuzzy +msgid "Swap services" +msgstr "Skipta á rásum" + +# +msgid "Swedish" +msgstr "Sænskt" + +msgid "Switch TV to correct input" +msgstr "" + +msgid "Switch between filelist/playlist" +msgstr "" + +msgid "Switch between normal mode and list mode" +msgstr "" + +msgid "Switch to HDMI in mode" +msgstr "" + +# +#, fuzzy +msgid "Switch to filelist" +msgstr "skipta í skráarlista" + +msgid "Switch to next channel" +msgstr "" + +# +#, fuzzy +msgid "Switch to next channel in history" +msgstr "næsta rás í sögu" + +# +#, fuzzy +msgid "Switch to next sub service" +msgstr "Skipta á næstu undirrás" + +# +#, fuzzy +msgid "Switch to playlist" +msgstr "skipta í spilunar lista" + +# +#, fuzzy +msgid "Switch to previous channel" +msgstr "Skipta á fyrri undirrás" + +# +#, fuzzy +msgid "Switch to previous channel in history" +msgstr "fyrri rás í sögu" + +# +#, fuzzy +msgid "Switch to previous sub service" +msgstr "Skipta á fyrri undirrás" + +msgid "Switchable tuner types:" +msgstr "Gerðir umskiptanlegra móttakara:" + +msgid "Symbol rate" +msgstr "Bitahraði" + +msgid "Symbol rate:" +msgstr "" + +msgid "Sync failure moving back to origin !" +msgstr "" + +# +msgid "System" +msgstr "Kerfi" + +# +#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) +msgid "TRANSLATOR_INFO" +msgstr "" +"Dreifingaraðili á Íslandi:\n" +" Öreind sf. Auðbrekka 3\n" +"200 Kópavogur\n" +"\n" +"Email: oreind@oreind.is\n" +"Vefur: http://www.oreind.is" + +# +msgid "TS file is too large for ISO9660 level 1!" +msgstr "TS skrá er of stór fyrir ISO9660 level 1!" + +msgid "TSID" +msgstr "TSID" + +msgid "TV physical address report" +msgstr "" + +msgid "TXT PID" +msgstr "TXT PID" + +# +#, fuzzy +msgid "Table of contents for collection" +msgstr "Efnisyfirlit yfir safn" + +# +msgid "Tags" +msgstr "Merki" + +msgid "Teletext subtitle color" +msgstr "" + +#, fuzzy +msgid "Temperature and fan control" +msgstr "Hiti og viftu stillingar" + +# +msgid "Terrestrial" +msgstr "Stafrænt í lofti" + +# +msgid "Terrestrial provider" +msgstr "Sendandi á landi" + +# +msgid "Test DiSEqC settings" +msgstr "Prufa DiSEqC stillingar" + +# +msgid "Test mode" +msgstr "Prufu hamur" + +msgid "Test the network configuration of your receiver.\n" +msgstr "" + +# +#, fuzzy +msgid "Test type" +msgstr "Prufa gerð" + +# +#, fuzzy +msgid "Text color" +msgstr "textalitur" + +msgid "Thai" +msgstr "" + +# +msgid "" +"Thank you for using the wizard.\n" +"Please press OK to continue." +msgstr "" +"Takk fyrir að nota álfinn.\n" +"Ýttu á OK til að halda áfram." + +# +#, fuzzy +msgid "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." +msgstr "" +"Takk fyrir að nota álfinn.\n" +"Ýttu á OK til að halda áfram." + +msgid "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?" +msgstr "" + +msgid "The PIN code has been changed successfully." +msgstr "Það tókst að breyta PIN kóðanum." + +msgid "The PIN codes you entered are different." +msgstr "PIN númerin sem að þú slóst inn eru ekki eins." + +msgid "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" +msgstr "" +"USB stauturinn var gerður ræsanlegur.\n" +"Núna getur þú hlaðið niður NFI stýrikerfis skrá!" + +# +msgid "The backup failed. Please choose a different backup location." +msgstr "Afritun mistókst. Veldu annan stað fyrir afritið." + +#, python-format +msgid "" +"The current beta image might not be stable.\n" +"For more information see %s." +msgstr "" + +#, python-format +msgid "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." +msgstr "" +"Mappan %s er ekki skrifanleg.\n" +"Vertu viss um að velja möppu sem má skrifa í." + +# +#, python-format +msgid "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" +msgstr "" +"Eftirfarandi tæki fannst:\n" +"\n" +"%s\n" +"\n" +"Viltu skrifa USB keyrslu skrá á þennan staut?" + +# +msgid "The following files were found..." +msgstr "Eftirfarandi skrár fundust..." + +msgid "The md5sum validation failed, the file may be corrupted!" +msgstr "Md5sum prufun tókst ekki, skráin er sennilega skemmd!" + +#, fuzzy +msgid "" +"The network wizard extension is not installed!\n" +"Please install it." +msgstr "" +"Netkerfis ráðgjafinn er ekki innsettur!\n" +"Vinsamlega settu hann inn." + +# +#, python-format +msgid "The path %s already exists." +msgstr "Slóðin %s er þegar til." + +# +msgid "The pin code you entered is wrong." +msgstr "Kóðinn sem þú slóst inn er rangur." + +# +#, python-format +msgid "The results have been written to %s." +msgstr "Útkoman hefur verið skrifuð á %s." + +# +msgid "The sleep timer has been activated." +msgstr "Tíma stilling fyrir svefn er virk." + +# +msgid "The sleep timer has been disabled." +msgstr "Tímastilling til að slökkva er óvirkur." + +#, fuzzy +msgid "" +"The software management extension is not installed!\n" +"Please install it." +msgstr "" +"Hugbúnaðar umsýslu viðbót er ekki innsett!\n" +"Vinsamlega settu það inn." + +#, python-format +msgid "The status of the current beta image could not be checked because %s can not be reached." +msgstr "" + +# +msgid "The timer file (timers.xml) is corrupt and could not be loaded." +msgstr "Atriða skrá (timer.xml) er skemmd og var ekki hægt að lesa hana." + +# +#, fuzzy +msgid "The user interface of your receiver is restarting" +msgstr "Vinsamlega bíðið á meðan netkerfið er endurræst..." + +msgid "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" +msgstr "" + +# +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." +msgstr "" +"Forrit fyrir þráðlausa net ekki uppsett!\n" +"Settu það inn og veldu hvað þú vilt gera næst." + +# +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it." +msgstr "" +"Þráðlausa netkortið er ekki tengt!\n" +"Vinsamlega tengið það." + +msgid "The wizard can backup your current settings. Do you want to do a backup now?" +msgstr "Ráðgjafinn getur tekið afrit af stillingum þínum. Viltu taka afrit núna?" + +#, python-format +msgid "The wizard found a configuration backup. Do you want to restore your old settings from %s?" +msgstr "Ráðgjafinn fann afrit af stillingum. Viltu setja inn stillingar síðan %s?" + +msgid "The wizard is finished now." +msgstr "Ráðgjafinn er búinn núna." + +# +msgid "There are at least " +msgstr "Það eru allavega " + +#, fuzzy, python-format +msgid "There are at least %s updates available." +msgstr "Það er engin uppfærsla tiltæk." + +msgid "There are currently no outstanding actions." +msgstr "Það er ekkert atriði sem að liggur fyrir." + +msgid "There are no updates available." +msgstr "Það er engin uppfærsla tiltæk." + +msgid "There is no signal to lock on !" +msgstr "" + +# +msgid "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" +msgstr "" +"Það gæti verið of lítið pláss á valinni disksneið,\n" +"Viltu örugglega halda áfram?" + +# +msgid "This DVD RW medium is already formatted - reformatting will erase all content on the disc." +msgstr "Þessi DVD RW diskur er þegar formaður - endurformun mun eyða öllum gögnum af honum." + +msgid "" +"This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!" +msgstr "" + +msgid "This plugin is installed." +msgstr "Þetta íforrit er uppsett." + +msgid "This plugin is not installed." +msgstr "Þetta íforrit er ekki sett upp." + +msgid "This plugin will be installed." +msgstr "Þetta íforrit verður sett inn." + +msgid "This plugin will be removed." +msgstr "Þetta íforrit verður tekið út." + +#, python-format +msgid "This receiver cannot decode %s streams!" +msgstr "" + +# +#, fuzzy +msgid "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration" +msgstr "" +"Þessi prufun athugar stillingar nafnaþjóns.\n" +"Ef þú færð \"óstaðfest\" skilaboð:\n" +"- athugaðu DHCP þjónustu, tengingar og uppsetningu\n" +"- ef að þú hefur sett upp nafnaþjón handvirkt athugaðu þá þínar nafnaþjóns stillingar." + +# +#, fuzzy +msgid "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" +msgstr "" +"Þessi prufun athugar hvort að netkapallinn sé tengdur við netkortið þitt.\n" +"Ef þú færð skilaboðin \"ótengt\":\n" +"- athugaðu hvort að kapallinn sé tengur\n" +"- athugaðu hvort að kapallinn sé skemmdur" + +# +#, fuzzy +msgid "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" +msgstr "" +"Þessi prufun athugar hvort að gild IP tala fannst fyrir þitt netkort.\n" +"Ef þú færð skilaboðin \"óstaðfest\":\n" +"- það fannst ekki gild IP tala\n" +"- athugaðu DHCP uppsetningu, tengingar eða uppsetningu nets" + +# +#, fuzzy +msgid "" +"This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." +msgstr "" +"Þessi prufun athugar hvort að netkortið þitt sé sett upp fyrir sjálfvirka úthlutun á IP tölu með DHCP þjón.\n" +"Ef þú færð skilaboðiin \"óvirkt\":\n" +"- þá er netkortið stillt fyrir handvirka IP uppsetningu\n" +"- athugaðu hvort að þú hafir sett inn réttar IP uppsetngingar í stillingum netkorts\n" +"Ef þú færð skilaboðin \"virkt\":\n" +"- athugaðu hvort að það sé DHCP þjónn sem úthlutar IP tölum á innra neti þínu" + +# +#, fuzzy +msgid "This test detects your configured LAN adapter." +msgstr "Þessi prufun skynjar innstillt netkort." + +msgid "" +"This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\n" +"Are you sure?" +msgstr "" + +# +msgid "Three" +msgstr "Þrír" + +# +msgid "Threshold" +msgstr "Mörk" + +# +msgid "Thu" +msgstr "Fim" + +# +msgid "Thumbnails" +msgstr "Smámyndir" + +# +msgid "Thursday" +msgstr "Fimmtudagur" + +# +msgid "Time" +msgstr "Tími" + +# +#, fuzzy +msgid "Time scale" +msgstr "Tímastillinga val" + +# +msgid "Timer" +msgstr "Tímastilling" + +msgid "Timer Overview" +msgstr "" + +# +#, fuzzy +msgid "Timer edit" +msgstr "Breyta Tímastillingu" + +# +#, fuzzy +msgid "Timer editor" +msgstr "Breyta Tímastillingum" + +# +msgid "Timer entry" +msgstr "Innsláttur tímastilltra atriða" + +# +msgid "Timer log" +msgstr "Tíma skrá" + +# +msgid "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" +msgstr "" +"Tímastillingar ná yfir hvorn annan!\n" +"Vinsamlega athugið það!" + +# +#, fuzzy +msgid "Timer overview" +msgstr "Innsláttur tímastilltra atriða" + +#, fuzzy +msgid "Timer recording location" +msgstr "Staður fyrir tímastilltar upptökur" + +# +msgid "Timer sanity error" +msgstr "Villa í tímastillingu" + +# +msgid "Timer selection" +msgstr "Tímastillinga val" + +msgid "Timer selection..." +msgstr "" + +# +#, fuzzy +msgid "Timer type" +msgstr "Gerð Tímastillngar" + +# +msgid "Timeshift" +msgstr "Lifandi pása" + +msgid "Timeshift Live" +msgstr "" + +msgid "Timeshift location" +msgstr "Staður fyrir lifandi pásu" + +# +msgid "Timeshift not possible!" +msgstr "Tímabreyting ekki möguleg!" + +# +msgid "Timezone" +msgstr "Tímabelti" + +# +msgid "Title" +msgstr "Titill" + +# +msgid "Title properties" +msgstr "Upplýsingar titils" + +# +msgid "Titleset mode" +msgstr "Titla stillingar" + +msgid "To audio selection" +msgstr "" + +msgid "To subtitle selection" +msgstr "" + +msgid "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." +msgstr "" + +# +msgid "Today" +msgstr "Í dag" + +# +#, fuzzy +msgid "Toggle a cut mark at the current position" +msgstr "setja merki á núverandi stað" + +#, fuzzy +msgid "Tone amplitude" +msgstr "Styrkur tóns" + +# +msgid "Tone mode" +msgstr "Tón stilling" + +# +msgid "Toneburst" +msgstr "Tónstýring" + +# +msgid "Toneburst A/B" +msgstr "Tón stýring A/B" + +msgid "Top and bottom" +msgstr "" + +# +msgid "Track" +msgstr "Spor" + +# +msgid "Translation" +msgstr "Þýðing" + +# +msgid "Translation:" +msgstr "Þýðing:" + +msgid "Translations" +msgstr "" + +# +msgid "Transmission mode" +msgstr "Sendi stilling" + +# +msgid "Transponder" +msgstr "Sendir" + +# +#, fuzzy +msgid "Transponder type" +msgstr "Gerð sendis" + +msgid "Trash can" +msgstr "" + +# +msgid "Tries left:" +msgstr "Tilraunir eftir:" + +# +msgid "Try to find used transponders in cable network.. please wait..." +msgstr "Reyni að finna sendi í kapalkerfi.. vinsamlega bíðið..." + +# +msgid "Trying to download a new packetlist. Please wait..." +msgstr "Reyni að hlaða niður nýjum pakka lista. Vinsamlega bíðið..." + +# +msgid "Tue" +msgstr "Þri" + +# +msgid "Tuesday" +msgstr "Þriðjudagur" + +# +msgid "Tune" +msgstr "Stilla" + +# +#, fuzzy +msgid "Tune and focus" +msgstr "Móttakari" + +# +msgid "Tune failed!" +msgstr "Tókst ekki að stilla inn!" + +# +msgid "Tuner" +msgstr "Móttakari" + +# +msgid "Tuner configuration" +msgstr "Stilling móttakara" + +msgid "Tuner is not supported" +msgstr "" + +# +#, fuzzy +msgid "Tuner slot" +msgstr "Móttakara tengi" + +# +msgid "Tuner status" +msgstr "Móttakari" + +# +#, fuzzy, python-format +msgid "Tuner status %s" +msgstr "Móttakari" + +msgid "Tuner type" +msgstr "Gerð móttakara" + +# +msgid "Turkish" +msgstr "Tyrkneska" + +msgid "Turn on the power LED during standby." +msgstr "" + +msgid "Turning step size" +msgstr "" + +# +msgid "Two" +msgstr "Tveir" + +# +msgid "Type" +msgstr "Gerð" + +# +msgid "Type of scan" +msgstr "Gerð leitunar" + +# +msgid "USALS" +msgstr "USALS" + +msgid "USALS calibration" +msgstr "" + +# +#, fuzzy +msgid "USB stick" +msgstr "USB stautur" + +# +msgid "USB stick wizard" +msgstr "USB stauta stjóri" + +msgid "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" + +msgid "Undo install" +msgstr "Hætta við innsetningu" + +msgid "Undo uninstall" +msgstr "Hætta við að hætta við" + +msgid "Unencrypted" +msgstr "Opin rás" + +msgid "UnhandledKey" +msgstr "Ónotaður" + +# +msgid "Unicable" +msgstr "Unicable" + +# +msgid "Unicable LNB" +msgstr "Unicable LNB" + +# +msgid "Unicable Martix" +msgstr "Unicable Martix" + +msgid "Uninstall" +msgstr "Taka út" + +# +msgid "Universal LNB" +msgstr "Venjulegt LNB" + +msgid "Unknown" +msgstr "Óþekkt" + +msgid "Unmount" +msgstr "" + +# +msgid "Unsupported" +msgstr "Ekki stutt" + +# +msgid "Update" +msgstr "Uppfæra" + +msgid "Update and ask to reboot" +msgstr "" + +msgid "Update and reboot (recommended)" +msgstr "" + +# +#, fuzzy +msgid "Update channel list only" +msgstr "næsta rás í sögu" + +#, python-format +msgid "Update completed, %d package was installed." +msgid_plural "Update completed, %d packages were installed." +msgstr[0] "" +msgstr[1] "" + +msgid "Update completed. Do you want to reboot your receiver?" +msgstr "" + +msgid "Update failed. Your receiver does not have a working internet connection." +msgstr "" + +msgid "Update has completed." +msgstr "" + +msgid "Updatefeed not available." +msgstr "Uppfærslur á fæðirásum ekki tiltækar." + +msgid "Updating software catalog" +msgstr "Uppfæri efnisyfirlit hugbúnaðar" + +# +msgid "Upgrading" +msgstr "Uppfæri" + +# +msgid "Use" +msgstr "Nota" + +# +msgid "Use DHCP" +msgstr "Nota DHCP" + +msgid "Use EIT EPG information when it is available." +msgstr "" + +msgid "Use FreeSat EPG information when it is available." +msgstr "" + +msgid "Use MHW EPG information when it is available." +msgstr "" + +msgid "Use Netmed EPG information when it is available." +msgstr "" + +msgid "Use TV remote control" +msgstr "" + +# +#, fuzzy +msgid "Use USALS for this sat" +msgstr "Nota usals fyrir þennan hnött" + +msgid "Use ViaSat EPG information when it is available." +msgstr "" + +msgid "Use Virgin EPG information when it is available." +msgstr "" + +# +msgid "Use a gateway" +msgstr "Nota beini" + +msgid "Use fastscan channel names" +msgstr "" + +msgid "Use fastscan channel numbering" +msgstr "" + +msgid "Use frequency or channel" +msgstr "" + +msgid "Use individual settings for each directory" +msgstr "" + +# +#, fuzzy +msgid "Use interface" +msgstr "Nota netkort" + +msgid "Use official channel numbering" +msgstr "" + +msgid "Use original DVB subtitle position" +msgstr "" + +msgid "Use original teletext position" +msgstr "" + +# +msgid "Use power measurement" +msgstr "Nota aflmælingu" + +#, fuzzy +msgid "Use the network wizard to configure selected network adapter" +msgstr "Nota ráðgjafa til að stilla valið netkort" + +# +#, fuzzy +msgid "Use the network wizard to configure your network\n" +msgstr "Nota netkerfis álf til að stilla inn netkerfið\n" + +# +msgid "Use the up/down keys on your remote control to select an option. After that, press OK." +msgstr "Ýttu á up/niður takka á fjarstýringu til að velja. Ýttu svo á OK." + +# +#, fuzzy +msgid "Use the wizard to set up basic features" +msgstr "Nota álfinn til að setja upp grunnstillingar" + +#, fuzzy +msgid "Use these input device settings?" +msgstr "Nota þessar stillingar fyrir inntaks tæki?" + +#, fuzzy +msgid "Use these settings?" +msgstr "Nota þessar stillingar?" + +# +msgid "Use this video enhancement settings?" +msgstr "Nota mynd endurbóta stillingar?" + +# +#, fuzzy +msgid "Use trash can in movielist" +msgstr "Til baka til mynda lista" + +# +msgid "Used service scan type" +msgstr "Notuð leitunaraðferð" + +msgid "User - bouquets" +msgstr "" + +# +msgid "User defined" +msgstr "Stillt af notanda" + +msgid "User defined transponder" +msgstr "" + +# +#, fuzzy +msgid "User interface" +msgstr "Nota netkort" + +# +msgid "Username" +msgstr "Notandanafn" + +#, python-format +msgid "Using LNB %d" +msgstr "" + +msgid "Using fixed address" +msgstr "" + +#, python-format +msgid "Using tuner %s" +msgstr "" + +msgid "Usually when the subtitle language is the same as the audio language, the subtitles will not be used. Enable this option to allow these subtitles to be used." +msgstr "" + +# +msgid "VCR scart" +msgstr "Vídeó scart" + +# +msgid "VMGM (intro trailer)" +msgstr "VMGM (mynd sýnishorn)" + +# +msgid "Vertical" +msgstr "Lóðrétt" + +msgid "Vertical turning speed" +msgstr "" + +msgid "Video PID" +msgstr "Video PID" + +# +msgid "Video enhancement preview" +msgstr "Mynd endurbóta forsýn" + +# +msgid "Video enhancement settings" +msgstr "Mynd endurbóta stillingar" + +# +msgid "Video enhancement setup" +msgstr "Mynd endurbóta uppsetnging" + +# +#, fuzzy +msgid "Video fine tuning" +msgstr "Mynd fínstillingar" + +# +#, fuzzy +msgid "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." +msgstr "" +"Mynd inngangs val\n" +" \n" +"Ýttu á OK ef að þú sérð þessa mynd á sjónvarpinu (eða veldu annan inngang).\n" +"\n" +"Næsti inngangur verður prófaður eftir 10 sekúndur." + +# +msgid "Video mode selection." +msgstr "Mynd hams stilling." + +# +#, fuzzy +msgid "Video output" +msgstr "Mynd útgangur" + +# +#, fuzzy +msgid "Video setup" +msgstr "Mynd uppsetning" + +#, fuzzy +msgid "Video wizard" +msgstr "Mynd ráðgjafi" + +#, python-format +msgid "Video: %s fps" +msgstr "" + +msgid "VideoMode" +msgstr "" + +msgid "Videocodec" +msgstr "" + +msgid "Videoformat" +msgstr "" + +msgid "Videosize" +msgstr "" + +# +msgid "View Rass interactive..." +msgstr "Skoða gagnvirkt Útvarp" + +# +msgid "View details" +msgstr "Skoða nánar" + +# +msgid "View list of available " +msgstr "Skoða lista af tiltækum" + +# +msgid "View list of available CommonInterface extensions" +msgstr "Skoða lista af tiltækum CommonInterface viðbótum." + +# +msgid "View list of available EPG extensions." +msgstr "Skoða lista af tiltækum EPG viðbótum." + +msgid "View list of available Satellite equipment extensions." +msgstr "Skoða lista af tiltækum gervihnatta viðbótum." + +# +msgid "View list of available communication extensions." +msgstr "Skoða lista af tiltækum samskipta viðbótum." + +# +msgid "View list of available default settings" +msgstr "Skoða lista af tiltækum sjálfgefnum stillingum" + +# +#, fuzzy +msgid "View list of available display and userinterface extensions." +msgstr "Skoða lista af tiltækum Skjá og viðmóts viðbótum." + +# +msgid "View list of available multimedia extensions." +msgstr "Skoða lista af tiltækum magmiðlunar viðbótum." + +# +msgid "View list of available networking extensions" +msgstr "Skoða lista af tiltækum netkerfis viðbótum" + +# +msgid "View list of available recording extensions" +msgstr "Skoða lista af tiltækum upptöku viðbótum" + +# +msgid "View list of available skins" +msgstr "Skoða lista af tiltækum skinnum" + +# +msgid "View list of available software extensions" +msgstr "Skoða lista af tiltækum hugbúnaðar viðbótum" + +# +msgid "View list of available system extensions" +msgstr "Skoða lista af tiltækum kerfis viðbótum" + +# +#, fuzzy +msgid "View photos..." +msgstr "Skoða ljósmyndir..." + +# +msgid "View teletext..." +msgstr "Skoða textavarp..." + +# +#, fuzzy +msgid "View video CD..." +msgstr "Skoða Video CD..." + +# +#, fuzzy +msgid "Virtual keyboard" +msgstr "Sýndar lyklaborð" + +# +msgid "Voltage mode" +msgstr "Spennu stýring" + +# +msgid "Volume" +msgstr "Styrkur" + +# +msgid "W" +msgstr "W" + +# +msgid "WEP" +msgstr "WEP" + +msgid "WLAN connection" +msgstr "WLAN nettenging" + +# +msgid "WPA" +msgstr "WPA" + +# +msgid "WPA or WPA2" +msgstr "WPA eða WPA2" + +# +msgid "WPA2" +msgstr "WPA2" + +# +msgid "WSS on 4:3" +msgstr "WSS á 4:3" + +# +msgid "Waiting" +msgstr "Bíð" + +msgid "Waiting for mount" +msgstr "" + +msgid "Waiting for partition" +msgstr "" + +msgid "Wakeup" +msgstr "" + +msgid "Wakeup TV from standby" +msgstr "" + +msgid "Wakeup receiver for start timer" +msgstr "" + +msgid "Wakeup receiver from standby" +msgstr "" + +msgid "Wakeup signal from TV" +msgstr "" + +msgid "Wakeup type" +msgstr "" + +msgid "Warning: no LNB; using factory defaults." +msgstr "" + +#, fuzzy +msgid "Watch movies..." +msgstr "Spila uppteknar bíómyndir..." + +# +#, fuzzy +msgid "Watch recordings..." +msgstr "tek upp...." + +# +msgid "Wed" +msgstr "Mið" + +# +msgid "Wednesday" +msgstr "Miðvikudagur" + +# +msgid "Weekday" +msgstr "Vikudagur" + +msgid "Weighted position" +msgstr "" + +# +#, fuzzy +msgid "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." +msgstr "" +"Velkominn í klippinga stjórann.\n" +"\n" +"Farðu að byrjun á því sem að þú ætlar að klippa. Ýttu á OK og veldu 'byrja klippingu'.\n" +"\n" +"Farðu þá að enda þess og ýttu á OK, veldu 'enda klippingu'. Það er allt og sumt." + +msgid "Welcome to the image upgrade wizard. The wizard will assist you in upgrading the firmware of your receiver by providing a backup facility for your current settings and a short explanation of how to upgrade your firmware." +msgstr "" + +msgid "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" +msgstr "" + +msgid "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." +msgstr "" + +# +msgid "Welcome..." +msgstr "Velkomin(n)..." + +# +msgid "West" +msgstr "Vestur" + +msgid "West limit set" +msgstr "" + +# +msgid "What do you want to scan?" +msgstr "Að hverju viltu leita?" + +msgid "When enabled the PiP can be closed by the exit button." +msgstr "" + +msgid "When enabled the arrow buttons around the OK button will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled the left, right, CH+/-, B+/-, P+/- buttons will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled you can specify a timeframe to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "When enabled you can specify a timeframe were the inactivity sleeptimer is ignored. Not the detection is disabled during this timeframe but the inactivity timeout is disabled" +msgstr "" + +msgid "When enabled you can zap channels with the CH+/-, B+/-, P+/- buttons instead of opening the channel selection list." +msgstr "" + +msgid "When enabled you get the channel selection list via the OK button, the infobar toggle is then transfered to exit button" +msgstr "" + +msgid "When enabled, AIT data will be included in http streams. This allows a client receiver to use HbbTV." +msgstr "" + +msgid "When enabled, ECM data will be included in http streams. This allows a client receiver to do the descrambling." +msgstr "" + +msgid "When enabled, EIT data will be included in http streams. This allows a client receiver to show EPG." +msgstr "" + +msgid "When enabled, a popup message will be shown when a movie has finished and the next one will start." +msgstr "" + +msgid "When enabled, a popup message will be shown when a recording starts." +msgstr "" + +msgid "When enabled, a radio background image will be visible while listening to a radio channel." +msgstr "" + +msgid "When enabled, a recording is allowed to interrupt live tv, when there are no free tuners." +msgstr "" + +msgid "When enabled, a warning will be displayed and the user will get an option to stop or to continue the timeshift." +msgstr "" + +msgid "When enabled, authentication is required to watch http streams." +msgstr "" + +msgid "When enabled, channel numbering will start at '1' for each bouquet." +msgstr "" + +msgid "When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen." +msgstr "" + +msgid "When enabled, continue to the next bouquet when the last channel of the current bouquet is reached while changing channels." +msgstr "" + +msgid "When enabled, deleted recordings are moved to the trash can, instead of being deleted immediately." +msgstr "" + +msgid "When enabled, display the EIT now/next eventdata in infobar. When disabled, display now/next eventdata from the EPG cache instead." +msgstr "" + +msgid "When enabled, encryption info will be shown in the infobar (when supported by the skin)." +msgstr "" + +msgid "When enabled, error messages related to the Common Interface module will not be shown." +msgstr "" + +msgid "When enabled, error messages related to zapping will not be shown." +msgstr "" + +msgid "When enabled, external subtitles will be always turned on for playback movie." +msgstr "" + +msgid "When enabled, graphical DVB subtitles are preferred over teletext subtitles, when both types are available." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be centered horizontally." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be displayed at their original position." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be displayed in yellow, instead of the original color." +msgstr "" + +msgid "When enabled, http streams are descrambled on the server side. The (remote) client receiver does not have to do descrambling." +msgstr "" + +msgid "When enabled, it is possible to leave the movieplayer with exit." +msgstr "" + +msgid "When enabled, measure power consumption to detect when the rotor stops turning (when supported by the tuner)." +msgstr "" + +msgid "When enabled, number markers will be hiden." +msgstr "" + +msgid "When enabled, services may be grouped in multiple bouquets." +msgstr "" + +msgid "When enabled, show channel numbers in the channel selection screen." +msgstr "" + +msgid "When enabled, subtitles for the hearing impaired can be used." +msgstr "" + +msgid "When enabled, subtitles for the hearing impaired will be preferred over normal subtitles, when both types are available." +msgstr "" + +msgid "When enabled, teletext pages will be cached, allowing faster access." +msgstr "" + +msgid "When enabled, teletext subtitles will be displayed at their original position." +msgstr "" + +msgid "When enabled, the VCR scart option will be shown on the main menu" +msgstr "" + +msgid "When enabled, the channel selection list will be hidden while listening to a radio channel" +msgstr "" + +msgid "When enabled, the infobar will be displayed when a new event starts." +msgstr "" + +msgid "When enabled, the infobar will be displayed when changing channels." +msgstr "" + +msgid "When enabled, the infobar will be displayed when skipping forwards/backwards during media playback." +msgstr "" + +msgid "When enabled, the lenght of each recording will be shown in the movielist (this might cause some additional loading time)." +msgstr "" + +msgid "When enabled, the original line breaks will be removed from the teletext subtitles." +msgstr "" + +msgid "When enabled, the receiver will automatically use the audio track which you selected before." +msgstr "" + +msgid "When enabled, the receiver will automatically use the subtitles which you selected before." +msgstr "" + +msgid "When enabled, the receiver will no longer monitor the tuned transponder for possible changes. Do not use this option unless you know what you are doing." +msgstr "" + +msgid "When enabled, the receiver will select an AC3 track (when available)." +msgstr "" + +msgid "When enabled, the receiver will select an AC3+ track (when available)." +msgstr "" + +msgid "When enabled, timeshift starts automatically in background after specified time." +msgstr "" + +# +#, fuzzy +msgid "When enabled, use DHCP for the IP configuration." +msgstr "opna nafnaþjóns stillingar" + +msgid "When enabled, your receiver will detect activity on the VCR SCART input." +msgstr "" + +msgid "When nonzero, a recording will start earlier than the starting time indicated by the EPG." +msgstr "" + +msgid "When nonzero, a recording will stop later than the ending time indicated by the EPG." +msgstr "" + +msgid "When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture." +msgstr "" + +msgid "When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture." +msgstr "" + +# +msgid "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" +msgstr "" +"Þegar þú velur verksmiðju stillingu þá missir þú út ALLAR stillingar\n" +"(þar með talið rásavendi, rásir, gervihnattaupplýsingar...)\n" +"Eftir að búið er að setja inn verksmiðju stillingar þá mun móttakarinn endurræsa sig.\n" +"Ertu viss um að þú viljir setja inn verksmiðju stillingar?" + +# +msgid "Where do you want to backup your settings?" +msgstr "Hvar viltu vista afritið?" + +# +msgid "Where to save temporary timeshift recordings?" +msgstr "Hvar á að vista tímabundnar tímafærslu upptökur?" + +# +msgid "Wireless LAN" +msgstr "­Þráðlaust net" + +# +#, fuzzy +msgid "Wireless network" +msgstr "Þráðlaust netkerfi" + +#, fuzzy +msgid "Wireless network configuration..." +msgstr "Uppsetning á þráðlausu neti." + +msgid "Wireless network connection setup" +msgstr "Uppsetning á þráðlausu neti" + +msgid "Wireless network connection setup." +msgstr "Uppsetning á þráðlausu neti." + +msgid "Wireless network state" +msgstr "Staða þráðlausa nets" + +msgid "With popup" +msgstr "" + +msgid "Without popup" +msgstr "" + +msgid "Would you like to install a softcam?" +msgstr "" + +# +msgid "Write error while recording. Disk full?\n" +msgstr "Villla við upptöku. Diskur fullur?\n" + +# +msgid "Write failed!" +msgstr "Tókst ekki að skrifa!" + +# +msgid "YPbPr" +msgstr "YPbPr" + +# +msgid "Year" +msgstr "Ár" + +msgid "Yellow DVB subtitles" +msgstr "" + +# +msgid "Yes" +msgstr "Já" + +msgid "Yes and save" +msgstr "" + +msgid "Yes and save in movie dir" +msgstr "" + +msgid "Yes to all" +msgstr "Já við allt" + +msgid "Yes, always" +msgstr "Já, alltaf" + +# +msgid "Yes, and delete this movie" +msgstr "Já, og eyða þessari bíómynd" + +# +msgid "Yes, backup my settings!" +msgstr "Já, taka afrit að stilinunum!" + +msgid "Yes, delete this movie and return to movie list" +msgstr "" + +# +msgid "Yes, do a manual scan now" +msgstr "Já, leita handvirkt núna" + +# +msgid "Yes, do an automatic scan now" +msgstr "Já, leita sjálfvirkt núna" + +# +msgid "Yes, do another manual scan now" +msgstr "Já, leitaðu aftur handvirkt núna" + +# +msgid "Yes, perform a shutdown now." +msgstr "Já, slökkva núna" + +# +msgid "Yes, restore the settings now" +msgstr "Já, settu inn afritið núna" + +# +msgid "Yes, returning to movie list" +msgstr "Já, fara til baka á mynda lista" + +msgid "Yesterday" +msgstr "" + +#, python-format +msgid "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" +msgstr "" + +# +msgid "You can cancel the installation." +msgstr "Þú getur hætt við uppsetninguna." + +# +msgid "You can cancel the removal." +msgstr "Þú getur hætt við að fjarlægja." + +msgid "You can continue watching TV etc. while this is running." +msgstr "" + +msgid "You can install this plugin." +msgstr "Þú getur sett inn þetta íforrit." + +msgid "You can only burn receiver recordings!" +msgstr "" + +msgid "You can remove this plugin." +msgstr "Þú getur tekið út þetta íforrit." + +# +msgid "You cannot delete this!" +msgstr "Þú getur ekki eytt þessu!" + +msgid "You didn't select a channel to record from." +msgstr "Þú valdir ekki rás til að taka upp af." + +# +msgid "You have chosen to backup your settings. Please press OK to start the backup now." +msgstr "Þú hefur valið að taka afrit af stillingum þínum. Ýttu á OK til að byrja að taka afrit núna." + +# +msgid "You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased." +msgstr "Þú hefur valið að búa til nýjan keyranlegan .NFI USB staut. Þetta veldur því að öllum gögnum af USB stautum verður eytt." + +# +msgid "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." +msgstr "Þú hefur valið að setja inn eldra afrit. Enigma2 mun endurræsa eftir innsetningu. Ýttu á OK til að byrja að setja inn afritið núna." + +# +#, python-format +msgid "You have to wait %s!" +msgstr "Þú þarf að bíða %s!" + +msgid "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." +msgstr "" + +msgid "You system does not support ext4" +msgstr "" + +# +msgid "Your backup succeeded. We will now continue to explain the further upgrade process." +msgstr "Það tókst að taka afrit. Nú höldum við áfram með uppfærsluna." + +# +msgid "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" +msgstr "Safn þitt er of stórt fyrir disk með einfalt lag. Þú þarft tóman disk með tveim lögum." + +msgid "Your current collection will get lost!" +msgstr "Núverandi safn þitt mun glatast!" + +# +msgid "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." +msgstr "" +"Það þarf að uppfæra heila í framtölvu.\n" +"Ýtið á OK til að byrja uppfærslu." + +msgid "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" + +# +msgid "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." +msgstr "" +"Veraldarvefs tenging virkar ekki!\n" +"Vinsamlega veldu hvað þú vilt gera næst." + +#, python-format +msgid "Your internet connection is working (ip: %s)" +msgstr "" + +# +msgid "Your network configuration has been activated." +msgstr "Stillingar netkerfis hafa verið gerðar virkar." + +msgid "Your receiver does not have an internet connection" +msgstr "" + +#, fuzzy +msgid "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" +msgstr "" +"Dreamboxið þitt er nú tilbúið til notkunar.\n" +"\n" +"Veraldarvefs tengingin er virk núna.\n" +"\n" + +msgid "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." +msgstr "" + +msgid "Your receiver is rebooting" +msgstr "" + +msgid "Your receiver is shutting down" +msgstr "" + +msgid "Your receiver is shutting down. Please stand by..." +msgstr "" + +msgid "Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver." +msgstr "" + +msgid "Your receiver will got to stand by due to the sleeptimer." +msgstr "" + +msgid "Your receiver will got to standby due to inactivity." +msgstr "" + +msgid "Your receiver will restart after pressing OK on your remote control." +msgstr "" + +# +msgid "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." +msgstr "" +"Það tókst ekki að ræsa þráðlausu net tenginguna þína!\n" +"Ertu búinn að tengja þráðlausa USB stautinn?\n" +"\n" +"Vinsamlega veldu hvað þú vilt gera næst." + +msgid "Zap" +msgstr "" + +msgid "Zap back to previously tuned service?" +msgstr "Fara aftur á rás sem áður var stillt á?" + +# +msgid "Zap back to service before positioner setup?" +msgstr "Fara aftur á rás fyrir stillingu á mótorstýringu?" + +msgid "Zap back to service before tuner setup?" +msgstr "Fara aftur á rás fyrir stillingu móttakara?" + +msgid "Zap focus to Picture in Picture" +msgstr "" + +msgid "Zap focus to main screen" +msgstr "" + +msgid "Zap mode" +msgstr "" + +msgid "Zap to selected channel" +msgstr "" + +msgid "Zap to selected channel, or show detailed event info (depends on configuration)" +msgstr "" + +# +msgid "[alternative edit]" +msgstr "[breyta valkostum]" + +# +msgid "[bouquet edit]" +msgstr "[breyta fléttu]" + +msgid "[favourite edit]" +msgstr "[breyta eftirlætis lista]" + +# +msgid "[move mode]" +msgstr "[færslu staða]" + +# +msgid "a gui to assign services/providers to common interface modules" +msgstr "viðmót til að tengja rásir/sendendur við afruglara í tengi fyrir afruglara" + +# +msgid "a gui to assign services/providers/caids to common interface modules" +msgstr "viðmót til að tengja rásir/sendendur/caid við afruglara í tengi fyrir afruglara" + +# +msgid "abort alternatives edit" +msgstr "hætta við að breyta valkostum" + +# +msgid "abort bouquet edit" +msgstr "hætta við að breyta fléttu" + +msgid "abort favourites edit" +msgstr "hætta við að breyta eftirlætis lista" + +# +msgid "about to start" +msgstr "er að byrja" + +msgid "activate network adapter configuration" +msgstr "virkja stillingar netkorts" + +# +msgid "add alternatives" +msgstr "bæta við valkosti" + +# +msgid "add bookmark" +msgstr "bæta við bókamerki" + +# +msgid "add bouquet" +msgstr "bæta rásavendi við" + +# +msgid "add marker" +msgstr "bæta við merki" + +# +msgid "add service to bouquet" +msgstr "bæta rás við fléttu" + +msgid "add service to favourites" +msgstr "bæta rás við eftirlætis lista" + +# +msgid "add to parental protection" +msgstr "bæta við foreldra lás" + +msgid "adult movie/drama" +msgstr "" + +# +msgid "advanced" +msgstr "meiri stillingar" + +msgid "adventure/western/war" +msgstr "" + +msgid "advertisement/shopping" +msgstr "" + +msgid "after " +msgstr "" + +# +#, fuzzy +msgid "alphabetic" +msgstr "raða í stafrófsröð" + +msgid "alphabetic reverse" +msgstr "" + +msgid "alternative" +msgstr "" + +msgid "always" +msgstr "" + +msgid "and select next channel" +msgstr "" + +msgid "and select previous channel" +msgstr "" + +msgid "arts/culture (without music, general)" +msgstr "" + +msgid "arts/culture magazine" +msgstr "" + +msgid "athletics" +msgstr "" + +# +msgid "audio tracks" +msgstr "hljóð rás" + +# +msgid "auto" +msgstr "sjálfvirkt" + +#, fuzzy +msgid "automatic" +msgstr "Sjálfvirkt" + +# +msgid "back" +msgstr "til baka" + +# +msgid "background image" +msgstr "bakgrunns mynd" + +msgid "ballet" +msgstr "" + +#, python-format +msgid "bc%s" +msgstr "" + +# +msgid "better" +msgstr "betra" + +# +msgid "black" +msgstr "svartur" + +msgid "black & white" +msgstr "" + +# +msgid "blacklist" +msgstr "svarti listi" + +# +msgid "blue" +msgstr "blár" + +msgid "broadcasting/press" +msgstr "" + +# +#, fuzzy +msgid "by date" +msgstr "raða eftir dagsetningu" + +msgid "cartoon/puppets" +msgstr "" + +msgid "center" +msgstr "" + +msgid "centered" +msgstr "" + +msgid "centered, wrapped" +msgstr "" + +# +msgid "chapters" +msgstr "kaflar" + +msgid "childrens's/youth program (general)" +msgstr "" + +# +msgid "circular left" +msgstr "hringpólun vinstri" + +# +msgid "circular right" +msgstr "hringpólun hægri" + +msgid "comedy" +msgstr "" + +# +msgid "complex" +msgstr "flókinn" + +# +msgid "config menu" +msgstr "stillinga valmynd" + +# +msgid "confirmed" +msgstr "staðfest" + +# +msgid "connected" +msgstr "tengt" + +# +msgid "continue" +msgstr "halda áfram" + +msgid "cooking" +msgstr "" + +# +msgid "copy to bouquets" +msgstr "afrita til rásavanda" + +# +msgid "create directory" +msgstr "búa til möppu" + +#, python-format +msgid "currently installed image: %s" +msgstr "núverandi stýrikerfi: %s" + +# +msgid "daily" +msgstr "daglega" + +# +msgid "day" +msgstr "dagur" + +# +#, fuzzy +msgid "default" +msgstr "Venjulegt" + +# +msgid "delete cut" +msgstr "eyða klippingu" + +msgid "delete..." +msgstr "" + +msgid "descramble and record ecm" +msgstr "" + +msgid "detective/thriller" +msgstr "" + +# +msgid "disable" +msgstr "óvirkt" + +# +msgid "disable move mode" +msgstr "hætta í færslu stöðu" + +# +msgid "disabled" +msgstr "óvirkt" + +# +msgid "disconnected" +msgstr "ótengt" + +msgid "discussion/interview/debate" +msgstr "" + +# +msgid "do nothing" +msgstr "ekki gera neitt" + +msgid "documentary" +msgstr "" + +msgid "don't descramble, record ecm" +msgstr "" + +# +msgid "done!" +msgstr "búinn!" + +msgid "east" +msgstr "" + +msgid "economics/social advisory" +msgstr "" + +# +msgid "edit alternatives" +msgstr "breyta valkosti" + +msgid "education/science/factual topics (general)" +msgstr "" + +# +msgid "empty" +msgstr "tómt" + +# +msgid "enable" +msgstr "virkt" + +# +msgid "enable bouquet edit" +msgstr "byrja féttu breytingu" + +msgid "enable favourite edit" +msgstr "virkja breytingu eftirlætis lista" + +# +msgid "enable move mode" +msgstr "virkja færlsu stöðu" + +# +msgid "enabled" +msgstr "virkt" + +# +msgid "end alternatives edit" +msgstr "hætta breytingum valkosta" + +# +msgid "end bouquet edit" +msgstr "hætta að breyta fléttu" + +# +msgid "end cut here" +msgstr "enda klippingu hér" + +msgid "end favourites edit" +msgstr "hætta breytingum eftirlætis lista" + +msgid "entertainment (10-16 year old)" +msgstr "" + +msgid "entertainment (6-14 year old)" +msgstr "" + +# +msgid "equal to" +msgstr "jafnt og" + +msgid "equestrian" +msgstr "" + +# +msgid "exit DVD player or return to file browser" +msgstr "hætta í DVD spilara og fara til baka í skráarvafra" + +msgid "exit movielist" +msgstr "" + +# +msgid "exit network adapter configuration" +msgstr "fara úr netkorts stillingum" + +# +msgid "exit networkadapter setup menu" +msgstr "hætta í netkorts stillingum" + +msgid "experimental film/video" +msgstr "" + +msgid "false" +msgstr "" + +msgid "fashion" +msgstr "" + +# +msgid "fileformats (BMP, PNG, JPG, GIF)" +msgstr "skráarform (BMP, PNG, JPG, GIF)" + +# +msgid "filename" +msgstr "skráarnafn" + +msgid "film/cinema" +msgstr "" + +msgid "fine arts" +msgstr "" + +# +msgid "fine-tune your display" +msgstr "fínstilla sjónvarpið" + +msgid "fitness & health" +msgstr "" + +# +#, fuzzy +msgid "flat alphabetic" +msgstr "raða í stafrófsröð" + +# +#, fuzzy +msgid "flat alphabetic reverse" +msgstr "raða í stafrófsröð" + +msgid "folk/traditional music" +msgstr "" + +msgid "football/soccer" +msgstr "" + +msgid "foreign countries/expeditions" +msgstr "" + +# +msgid "forward to the next chapter" +msgstr "stökkva í næsta kafla" + +# +msgid "free" +msgstr "laust" + +msgid "from" +msgstr "" + +msgid "further education" +msgstr "" + +msgid "game show/quiz/contest" +msgstr "" + +msgid "gardening" +msgstr "" + +# +msgid "go to deep standby" +msgstr "fara í djúpsvefn" + +# +msgid "go to standby" +msgstr "fara í biðstöðu" + +# +msgid "grab this frame as bitmap" +msgstr "grípa þennan ramma sem bitmap" + +# +msgid "green" +msgstr "grænn" + +msgid "handicraft" +msgstr "" + +msgid "height" +msgstr "" + +# +msgid "help..." +msgstr "hjálp..." + +# +msgid "horizontal" +msgstr "lárétt" + +msgid "information/education/school program" +msgstr "" + +# +msgid "init module" +msgstr "stilli einingu" + +# +msgid "init modules" +msgstr "stilla einingar" + +# +msgid "insert mark here" +msgstr "setja merki hér" + +msgid "invalid type" +msgstr "" + +msgid "jazz" +msgstr "" + +# +msgid "jump back to the previous title" +msgstr "stökkva til baka í fyrri titil" + +# +msgid "jump forward to the next title" +msgstr "stökkva áfram í næsta titil" + +msgid "languages" +msgstr "" + +# +msgid "leave movie player..." +msgstr "hætta í spilara" + +# +msgid "left" +msgstr "vinstri" + +msgid "left, wrapped" +msgstr "" + +msgid "leisure hobbies (general)" +msgstr "" + +# +msgid "length" +msgstr "lengd" + +msgid "limit ..., aborting !" +msgstr "" + +# +msgid "list style compact" +msgstr "stíll lista lítill" + +# +msgid "list style compact with description" +msgstr "stíll lista lítill með lýsingu" + +# +msgid "list style default" +msgstr "stíll lista venjulegur" + +# +msgid "list style single line" +msgstr "stíll lista, ein lína" + +msgid "literature" +msgstr "" + +msgid "live broadcast" +msgstr "" + +# +msgid "locked" +msgstr "læst" + +# +msgid "loopthrough to" +msgstr "tengt saman við" + +msgid "magazines/reports/documentary" +msgstr "" + +# +msgid "manual" +msgstr "handvirkt" + +msgid "martial sports" +msgstr "" + +msgid "medicine/physiology/psychology" +msgstr "" + +# +msgid "menu" +msgstr "valmynd" + +# +msgid "mins" +msgstr "mín" + +# +msgid "minutes" +msgstr "mínútur" + +# +msgid "month" +msgstr "mánuður" + +msgid "motor sport" +msgstr "" + +msgid "motoring" +msgstr "" + +# +msgid "move down to last entry" +msgstr "fara niður í síðasta atriði" + +# +msgid "move down to next entry" +msgstr "fara niður í næsta atriði" + +# +msgid "move up to first entry" +msgstr "fara upp í fyrsta atriði" + +# +msgid "move up to previous entry" +msgstr "fara upp í næsta atriði" + +msgid "movie/drama (general)" +msgstr "" + +# +msgid "multinorm" +msgstr "fjölkerfa" + +msgid "music/ballet/dance (general)" +msgstr "" + +msgid "musical/opera" +msgstr "" + +msgid "nature/animals/environment" +msgstr "" + +# +msgid "never" +msgstr "aldrei" + +msgid "new media" +msgstr "" + +msgid "news magazine" +msgstr "" + +msgid "news/current affairs (general)" +msgstr "" + +msgid "news/weather report" +msgstr "" + +# +msgid "no" +msgstr "nei" + +# +msgid "no CAId selected" +msgstr "ekkert CAId valið" + +# +msgid "no CI slots found" +msgstr "fann engin CI tengi" + +# +msgid "no module found" +msgstr "fann ekki einingu" + +msgid "no storage devices found" +msgstr "" + +# +msgid "none" +msgstr "engin" + +msgid "normal" +msgstr "" + +msgid "not configured" +msgstr "ekki stillt" + +# +msgid "not locked" +msgstr "ekki læst" + +msgid "not supported" +msgstr "ekki stutt" + +# +msgid "not used" +msgstr "ekki notað" + +# +msgid "nothing connected" +msgstr "ekkert tengt" + +# +msgid "of a DUAL layer medium used." +msgstr "af tveggja laga DVD." + +# +msgid "of a SINGLE layer medium used." +msgstr "af eins lags DVD disk." + +# +msgid "off" +msgstr "af" + +msgid "offset is" +msgstr "" + +# +msgid "on" +msgstr "á" + +# +msgid "on READ ONLY medium." +msgstr "á READ ONLY disk." + +msgid "on end of movie" +msgstr "" + +# +msgid "once" +msgstr "einu sinni" + +msgid "only from deep standby" +msgstr "" + +msgid "only from standby" +msgstr "" + +msgid "open EPG..." +msgstr "" + +msgid "open Info..." +msgstr "" + +# +msgid "open nameserver configuration" +msgstr "opna nafnaþjóns stillingar" + +msgid "original" +msgstr "" + +msgid "original language" +msgstr "" + +# +msgid "pass" +msgstr "í lagi" + +msgid "performing arts" +msgstr "" + +msgid "play as picture in picture" +msgstr "" + +msgid "play in mainwindow" +msgstr "" + +# +msgid "please press OK when ready" +msgstr "vinsamlega ýtið á OK þegar tilbúið" + +# +msgid "please wait, loading picture..." +msgstr "hleð inn mynd, vinsamlegast bíðið.." + +msgid "popular culture/traditional arts" +msgstr "" + +msgid "pre-school children's program" +msgstr "" + +msgid "receiver software because updates are available." +msgstr "" + +# +msgid "record" +msgstr "taka upp" + +# +msgid "recording..." +msgstr "tek upp...." + +# +msgid "red" +msgstr "rauður" + +msgid "religion" +msgstr "" + +msgid "remarkable people" +msgstr "" + +# +msgid "remove after this position" +msgstr "eyða fyrir aftan þetta" + +# +msgid "remove all alternatives" +msgstr "taka út alla valkosti" + +# +msgid "remove all new found flags" +msgstr "eyða öllum merkingum um nýfundna rás" + +# +msgid "remove before this position" +msgstr "eyða fyrir framan þetta" + +# +msgid "remove bookmark" +msgstr "eyða bókamerki" + +# +msgid "remove directory" +msgstr "eyða möppu" + +# +msgid "remove entry" +msgstr "taka út" + +# +msgid "remove from parental protection" +msgstr "taka foreldralæsingu af" + +# +msgid "remove new found flag" +msgstr "eyða merkingu um nýfundna rás" + +# +msgid "remove selected satellite" +msgstr "eyða völdum gervihnetti" + +# +msgid "remove this mark" +msgstr "taka út þetta merki" + +msgid "rename entry" +msgstr "" + +# +msgid "repeat playlist" +msgstr "endurtaka spilunarlista" + +# +msgid "repeated" +msgstr "endurtekinn" + +msgid "reverse by date" +msgstr "" + +# +msgid "rewind to the previous chapter" +msgstr "fara til baka á fyrri kafla" + +# +msgid "right" +msgstr "hægri" + +msgid "right, wrapped" +msgstr "" + +msgid "rock/pop" +msgstr "" + +msgid "romance" +msgstr "" + +# +msgid "save last directory on exit" +msgstr "vista síðustu möppu þegar hætt er" + +# +msgid "save playlist on exit" +msgstr "vista spilunarlista þegar hætt er" + +# +msgid "scan state" +msgstr "leitar staða" + +msgid "science fiction/fantasy/horror" +msgstr "" + +# +msgid "second cable of motorized LNB" +msgstr "annar kapall frá mótorstýrðu LNB" + +# +msgid "seconds" +msgstr "sekúndur" + +# +msgid "select" +msgstr "veldu" + +# +msgid "select CAId's" +msgstr "veldu CAId" + +msgid "select EPG..." +msgstr "" + +msgid "select Info..." +msgstr "" + +# +msgid "select menu entry" +msgstr "veldu valmynda atriði" + +# +msgid "select movie" +msgstr "veldu mynd" + +msgid "select the movie path" +msgstr "" + +msgid "serious music/classic music" +msgstr "" + +msgid "serious/classical/religious/historical movie/drama" +msgstr "" + +msgid "service PIN" +msgstr "rása PIN" + +msgid "set as startup service" +msgstr "" + +msgid "setup PIN" +msgstr "valmynda PIN" + +# +msgid "show DVD main menu" +msgstr "sýna aðalvalmynd DVD " + +msgid "show all tags" +msgstr "" + +# +msgid "show alternatives" +msgstr "súna valkosti" + +# +msgid "show event details" +msgstr "sýna atriði nánar" + +msgid "show extended description" +msgstr "" + +msgid "show mediaplayer on mainmenu" +msgstr "" + +msgid "show softwaremanager in setup menu" +msgstr "" + +msgid "show softwaremanager on blue button" +msgstr "" + +msgid "show tag menu" +msgstr "" + +# +msgid "show transponder info" +msgstr "sýna upplýsingar um sendi" + +msgid "show/game show (general)" +msgstr "" + +msgid "shuffle" +msgstr "" + +msgid "shut down" +msgstr "slökkva" + +# +msgid "simple" +msgstr "einfalt" + +# +msgid "skip backward" +msgstr "fara til baka" + +# +msgid "skip forward" +msgstr "fara áfram" + +msgid "soap/melodram/folkloric" +msgstr "" + +msgid "social/political issues/economics (general)" +msgstr "" + +msgid "social/spiritual science" +msgstr "" + +msgid "sorting of playlists" +msgstr "" + +msgid "special characters" +msgstr "sérstafir" + +msgid "special events" +msgstr "" + +msgid "special format data DVD (HDTV compatible)" +msgstr "" + +msgid "sports (general)" +msgstr "" + +msgid "sports magazine" +msgstr "" + +# +msgid "standard" +msgstr "venjulegt" + +msgid "start cut here" +msgstr "byrja klippingu hér" + +# +msgid "start directory" +msgstr "byrjunar mappa" + +msgid "stepsize" +msgstr "" + +# +msgid "stereo" +msgstr "víðóma" + +msgid "stop using as startup service" +msgstr "" + +# +msgid "switch to bookmarks" +msgstr "fara á bókamerki" + +# +msgid "switch to filelist" +msgstr "skipta í skráarlista" + +# +msgid "switch to the next angle" +msgstr "skipta í næstu sýn" + +# +msgid "switch to the next audio track" +msgstr "skipta á næstu hljóð rás" + +# +msgid "switch to the next subtitle language" +msgstr "skipta á næsta undirtexta" + +msgid "talk show" +msgstr "" + +msgid "team sports" +msgstr "" + +msgid "technology/natural science" +msgstr "" + +# +msgid "template file" +msgstr "sniðmáts skrá" + +msgid "tennis/squash" +msgstr "" + +# +msgid "this recording" +msgstr "þessi upptaka" + +# +msgid "this service is protected by a parental control pin" +msgstr "þessi rás er læst með kóða" + +# +msgid "toggle time, chapter, audio, subtitle info" +msgstr "skipta á milli tíma, kafla, undirtexta upplýsingar" + +msgid "top" +msgstr "" + +msgid "tourism/travel" +msgstr "" + +msgid "true" +msgstr "" + +# +msgid "unavailable" +msgstr "ekki tiltækt" + +# +msgid "unconfirmed" +msgstr "óstaðfest" + +msgid "undefined" +msgstr "" + +# +msgid "unknown" +msgstr "óþekktur" + +# +msgid "unknown service" +msgstr "óþekkt rás" + +msgid "unpublished" +msgstr "" + +msgid "until standby/restart" +msgstr "bíða til biðstöðu/endurræsingu" + +# +msgid "user defined" +msgstr "stillt af notanda" + +msgid "variety show" +msgstr "" + +# +msgid "vertical" +msgstr "lóðrétt" + +# +msgid "wait for ci..." +msgstr "bíð eftir afruglara.." + +# +msgid "wait for mmi..." +msgstr "bíð eftir mmi..." + +# +msgid "waiting" +msgstr "bíð" + +msgid "water sport" +msgstr "" + +# +msgid "weekly" +msgstr "vikulega" + +msgid "west" +msgstr "" + +msgid "when PiPzap enabled zap channel down..." +msgstr "" + +msgid "when PiPzap enabled zap channel up..." +msgstr "" + +msgid "white" +msgstr "" + +# +msgid "whitelist" +msgstr "hvíti listi" + +msgid "width" +msgstr "" + +msgid "winter sport" +msgstr "" + +msgid "wireless network interface" +msgstr "þráðlaust netkort" + +#, python-format +msgid "with %d error" +msgid_plural "with %d errors" +msgstr[0] "" +msgstr[1] "" + +# +msgid "working" +msgstr "er að vinna" + +# +msgid "yellow" +msgstr "gulur" + +# +msgid "yes" +msgstr "já" + +# +msgid "yes (keep feeds)" +msgstr "já (halda fæðirásum)" + +# +msgid "zap" +msgstr "stökk" + +msgid "zap and record" +msgstr "" + +# +msgid "zapped" +msgstr "stokkið" + +# +#~ msgid "AA" +#~ msgstr "AA" + +# +#~ msgid "AB" +#~ msgstr "AB" + +# +#, fuzzy +#~ msgid "Activate PiP" +#~ msgstr "Virkja Mynd í Mynd" + +# +#, fuzzy +#~ msgid "Add/remove timer for current event" +#~ msgstr "bæta við upptöku (stoppa eftir núverandi atriði)" + +#, fuzzy +#~ msgid "All satellites" +#~ msgstr "Allir gervihnettir" + +#~ msgid "BA" +#~ msgstr "BA" + +#~ msgid "BB" +#~ msgstr "BB" + +#~ msgid "Behavior of 'pause' when paused" +#~ msgstr "Aðgerð þegar ýtt er á pásu" + +#~ msgid "Committed DiSEqC command" +#~ msgstr "Fyrsta DiSEqC rofa stýring" + +# +#~ msgid "DiSEqC repeats" +#~ msgstr "DiSEqC endurtekning" + +# +#~ msgid "No satellite frontend found!!" +#~ msgstr "Það fannst ekki gervihnattamóttakari!!" + +# +#~ msgid "Remove timer" +#~ msgstr "Eyða tímastillingu" + +# +#~ msgid "Send DiSEqC" +#~ msgstr "Senda DiSEqC" + +# +#, fuzzy +#~ msgid "Switch next channel" +#~ msgstr "næsta rás" + +# +#~ msgid "Uncommitted DiSEqC command" +#~ msgstr "Uncommitted DiSEqC stýring" + +# +#~ msgid "Zap back to service before satfinder?" +#~ msgstr "Fara aftur á rás fyrir rásaleitun?" + +#~ msgid "tuner is not supported" +#~ msgstr "móttakari er ekki studdur" diff --git a/po/it.po b/po/it.po new file mode 100644 index 0000000..39c0c9b --- /dev/null +++ b/po/it.po @@ -0,0 +1,9417 @@ +# Italian translations for OpenPLiEnigma2. +# Signed-off-by: Dario Croci <spaeleus@croci.org> +# +msgid "" +msgstr "" +"Project-Id-Version: OpenPLi-enigma2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-07-21 19:08+0200\n" +"PO-Revision-Date: 2012-12-18 21:51+0100\n" +"Last-Translator: Spaeleus <spaeleus@croci.org>\n" +"Language-Team: www.linsat.net <spaeleus@croci.org>\n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Pootle 2.0.3\n" +"X-Poedit-Language: Italian\n" +"X-Poedit-SourceCharset: iso-8859-1\n" +"X-Poedit-Country: ITALY\n" + +# +msgid "" +"\n" +"Advanced options and settings." +msgstr "" +"\n" +"Opzioni e Impostazioni avanzate." + +# +msgid "" +"\n" +"After pressing OK, please wait!" +msgstr "" +"\n" +"Dopo aver premuto OK, attendere!" + +msgid "" +"\n" +"Backup your receiver settings." +msgstr "" +"\n" +"Backup impostazioni ricevitore." + +# +msgid "" +"\n" +"Edit the upgrade source address." +msgstr "" +"\n" +"Modificare indirizzo sorgenti aggiornamento." + +msgid "" +"\n" +"Manage extensions or plugins for your receiver" +msgstr "" +"\n" +"Gestire plugin ed estensioni del ricevitore." + +msgid "" +"\n" +"Online update of your receiver software." +msgstr "" +"\n" +"Aggiornare online il software del ricevitore." + +# +msgid "" +"\n" +"Press OK on your remote control to continue." +msgstr "" +"\n" +"Premere OK per continuare." + +# +msgid "" +"\n" +"Restore your backups by date." +msgstr "" +"\n" +"Ripristinare i backup per data." + +msgid "" +"\n" +"Restore your receiver settings." +msgstr "" +"\n" +"Ripristinare le impostazioni del ricevitore." + +msgid "" +"\n" +"Restore your receiver with a new firmware." +msgstr "" +"\n" +"Ripristinare il ricevitore con un nuovo firmware." + +# +msgid "" +"\n" +"Scan for local extensions and install them." +msgstr "" +"\n" +"Ricercare estensioni locali e installarle." + +msgid "" +"\n" +"Select your backup device.\n" +"Current device: " +msgstr "" +"\n" +"Selezionare il supporto per il backup.\n" +"Supporto corrente: " + +# +msgid "" +"\n" +"View, install and remove available or installed packages." +msgstr "" +"\n" +"Elencare, installare e rimuovere i pacchetti disponibili o installati." + +msgid " (PiP)" +msgstr " (PiP)" + +msgid " (Radio)" +msgstr " (Radio)" + +msgid " (TV)" +msgstr " (TV)" + +msgid " (disabled)" +msgstr "" + +msgid " (higher than any auto)" +msgstr "" + +msgid " (higher than rotor any auto)" +msgstr "" + +msgid " (lower than any auto)" +msgstr "" + +msgid " extensions." +msgstr " estensioni" + +msgid " ms" +msgstr " ms" + +# +msgid " packages selected." +msgstr " pacchetti selezionati." + +# +msgid " updates available." +msgstr " aggiornamenti disponibili." + +#. TRANSLATORS: short time representation hour:minute +#, python-format +msgid "%2d:%02d" +msgstr "%2d:%02d" + +#. TRANSLATORS: full time representation hour:minute:seconds +#, python-format +msgid "%2d:%02d:%02d" +msgstr "%2d:%02d:%02d" + +msgid "%A %d %B" +msgstr "%A %d %B" + +#. TRANSLATORS: long date representations dayname daynum monthname in strftime() format! See 'man strftime' +msgid "%A %e %B" +msgstr "%A %e %B" + +#. TRANSLATORS: full date representation dayname daynum monthname year in strftime() format! See 'man strftime' +msgid "%A %e %B %Y" +msgstr "%A %e %B %Y" + +# +msgid "%H:%M" +msgstr "%H:%M" + +#. TRANSLATORS: short date representation short dayname daynum short monthname in strftime() format! See 'man strftime' +msgid "%a %e/%m" +msgstr "%a %e/%m" + +#. TRANSLATORS: long date representation short dayname daynum short monthname hour:minute in strftime() format! See 'man strftime' +msgid "%a %e/%m %-H:%M" +msgstr "%a %e/%m %-H:%M" + +# +#. TRANSLATORS: Intermediate scanning result, '%d' channel(s) have been found so far +#, python-format +msgid "%d channel found" +msgid_plural "%d channels found" +msgstr[0] "Trovato %d canale." +msgstr[1] "Trovati %d canali." + +#, python-format +msgid "%d file" +msgid_plural "%d files" +msgstr[0] "%d Datei" +msgstr[1] "%d Dateien" + +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d ora" +msgstr[1] "%d ore" + +# +#, python-format +msgid "%d job is running in the background!" +msgid_plural "%d jobs are running in the background!" +msgstr[0] "%d processo attivo in background." +msgstr[1] "%d processi attivi in background." + +# +#, python-format +msgid "%d min" +msgstr "%d min" + +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d minuto" +msgstr[1] "%d minuti" + +#, python-format +msgid "%d minutes" +msgstr "%d minuti" + +#, python-format +msgid "%d pixel wide" +msgid_plural "%d pixels wide" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "%d secondo" +msgstr[1] "%d secondi" + +#, python-format +msgid "%d subdirectory" +msgid_plural "%d subdirectories" +msgstr[0] "%d sottodirectory" +msgstr[1] "%d sottodirectory" + +# +#, python-format +msgid "%d wireless network found!" +msgid_plural "%d wireless networks found!" +msgstr[0] "Rilevata %d rete wireless." +msgstr[1] "Rilevate %d reti wireless." + +msgid "%d-%b-%Y %-H:%M" +msgstr "%d-%b-%Y %-H:%M" + +msgid "%d-%m" +msgstr "%d-%m" + +# +msgid "%d.%B %Y" +msgstr "%d.%B %Y" + +#. TRANSLATORS: VFD hour:minute daynum short monthname in strftime() format! See 'man strftime' +msgid "%k:%M %e/%m" +msgstr "%k:%M %e/%m" + +# +#, python-format +msgid "%s %s free disk space" +msgstr "%s %s di spazio libero su disco" + +# +#, python-format +msgid "%s (%s)\n" +msgstr "%s (%s)\n" + +#. TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. +#, python-format +msgid "%s is no longer used. Should it be deleted?" +msgstr "%s non è più in uso. Cancellarlo?" + +# +#, python-format +msgid "%s updated package available" +msgid_plural "%s updated packages available" +msgstr[0] "Disponibile %s pacchetto aggiornato" +msgstr[1] "Disponibili %s pacchetti aggiornati" + +#, python-format +msgid "%s%d min" +msgstr "" + +#, python-format +msgid "%s/%s: %s" +msgstr "%s/%s: %s" + +# +msgid "(ZAP)" +msgstr "(ZAP)" + +# +msgid "(empty)" +msgstr "(vuoto)" + +# +msgid "(show optional DVD audio menu)" +msgstr "(Mostrare il menu opzionale DVD audio)" + +# +msgid "* Only available if more than one interface is active." +msgstr "* Disponibile solo se più di un'interfaccia è attiva." + +msgid "/s" +msgstr "" + +# +msgid "0" +msgstr "0" + +# +msgid "1" +msgstr "1" + +# +msgid "1.0" +msgstr "1.0" + +# +msgid "1.1" +msgstr "1.1" + +# +msgid "1.2" +msgstr "1.2" + +# +msgid "12V output" +msgstr "12V output" + +# +msgid "13 V" +msgstr "13 V" + +# +msgid "16:10" +msgstr "16:10" + +# +msgid "16:10 Letterbox" +msgstr "16:10 Letterbox" + +# +msgid "16:10 PanScan" +msgstr "16:10 PanScan" + +# +msgid "16:9" +msgstr "16:9" + +# +msgid "16:9 Letterbox" +msgstr "16:9 Letterbox" + +# +msgid "16:9 always" +msgstr "16:9 sempre" + +# +msgid "18 V" +msgstr "18 V" + +# +msgid "2" +msgstr "2" + +msgid "23.976" +msgstr "" + +msgid "24" +msgstr "" + +msgid "25" +msgstr "" + +msgid "29.97" +msgstr "" + +# +msgid "3" +msgstr "3" + +msgid "30" +msgstr "" + +msgid "3d mode" +msgstr "Modalità 3d" + +# +msgid "4" +msgstr "4" + +# +msgid "4:3" +msgstr "4:3" + +# +msgid "4:3 Letterbox" +msgstr "4:3 Letterbox" + +# +msgid "4:3 PanScan" +msgstr "4:3 PanScan" + +# +msgid "5" +msgstr "5" + +# +msgid "6" +msgstr "6" + +# +msgid "7" +msgstr "7" + +# +msgid "8" +msgstr "8" + +# +msgid "9" +msgstr "9" + +#, python-format +msgid ": %s" +msgstr "" + +# +msgid "<Current movielist location>" +msgstr "<Percorso corrente>" + +# +msgid "<Default movie location>" +msgstr "<Percorso predefinito>" + +# +msgid "<Last timer location>" +msgstr "<Ultimo percorso timer>" + +# +msgid "<unknown>" +msgstr "<sconosciuto>" + +# +msgid "??" +msgstr "??" + +# +msgid "A" +msgstr "A" + +# +#, python-format +msgid "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" +msgstr "" +"Un file di configurazione originale (%s) è stato modificato.\n" +"Mantenere la propria versione?" + +# +#, python-format +msgid "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" +msgstr "" +"Un file di configurazione originale (%s) è stato modificato.\n" +"Mantenere la propria versione?" + +msgid "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"Il termine di una registrazione programmata prevede\n" +"di porre il ricevitore in standby. Eseguire?" + +msgid "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"Il termine di una registrazione programmata prevede\n" +"di porre il ricevitore in standby. Eseguire?" + +msgid "A graphical EPG for all services of an specific bouquet" +msgstr "EPG grafico per i canali di uno specifico bouquet" + +# +#, python-format +msgid "" +"A record has been started:\n" +"%s" +msgstr "" +"Registrazione avviata:\n" +"%s" + +# +msgid "" +"A recording is currently running.\n" +"What do you want to do?" +msgstr "" +"Registrazione in corso!\n" +"Cosa si desidera fare?" + +# +msgid "A recording is currently running. Please stop the recording before trying to configure the positioner." +msgstr "Registrazioni in corso! Prima di poter configurare il motore, è necessario arrestarle!" + +msgid "A recording is currently running. Please stop the recording before trying to scan." +msgstr "Registrazioni in corso. Prima di avviare una ricerca canali, è necessario arrestarle." + +# +msgid "A recording is currently running. Please stop the recording before trying to start the satfinder." +msgstr "Registrazioni in corso! Prima di avviare una ricerca satelliti, è necessario arrestarle!" + +# +#, python-format +msgid "A required tool (%s) was not found." +msgstr "Uno strumento richiesto (%s) non è stato rilevato." + +# +msgid "A search for available updates is currently in progress." +msgstr "Ricerca aggiornamenti disponibili in corso." + +# +msgid "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" +msgstr "" +"Rilevata una seconda interfaccia di rete configurata.\n" +"\n" +"Disabilitare la seconda interfaccia di rete?" + +msgid "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"Un timer di spegnimento prevede di\n" +"porre in standby il ricevitore. Eseguire?" + +msgid "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"Un timer di spegnimento prevede\n" +"l'arresto del ricevitore. Eseguire?" + +msgid "A small overview of the available icon states and actions." +msgstr "Ecco una rapida panoramica delle icone di stato e delle azioni disponibili." + +# +msgid "" +"A timer failed to record!\n" +"Disable TV and try again?\n" +msgstr "" +"Avvio registrazione programmata fallito!\n" +"Disabilitare la TV e riprovare?\n" + +# +msgid "A/V settings" +msgstr "Impostazioni A/V" + +msgid "AC3/DTS downmix" +msgstr "Downmix AC3/DTS" + +# +msgid "Abort" +msgstr "Annullare" + +# +msgid "About" +msgstr "Info" + +# +msgid "About..." +msgstr "Informazioni..." + +# +msgid "Accesspoint:" +msgstr "Accesspoint:" + +msgid "Action on long powerbutton press" +msgstr "Su press. prolungata tasto power" + +msgid "Action on short powerbutton press" +msgstr "Su press. breve tasto power" + +# +msgid "Activate Picture in Picture" +msgstr "Attivare PiP" + +# +msgid "Activate current configuration" +msgstr "Attivare Le impostazioni correnti" + +# +msgid "Activate network settings" +msgstr "Attivare le impostazioni di rete" + +# +msgid "Activate the configured network settings." +msgstr "Attivare la configurazione di rete impostata." + +# +msgid "Adapter settings" +msgstr "Impostazioni interfaccia" + +# +msgid "Add" +msgstr "Aggiungere" + +msgid "Add Bookmark" +msgstr "" + +# +msgid "Add a mark" +msgstr "Agg. contr." + +# +msgid "Add a nameserver entry" +msgstr "Aggiungere nameserver" + +# +msgid "Add a new title" +msgstr "Aggiungere nuovo titolo" + +# +msgid "Add bookmark" +msgstr "Agg. contrass." + +# +msgid "Add directory to playlist" +msgstr "Aggiungere directory alla playlist" + +# +msgid "Add file to playlist" +msgstr "Aggiungere file alla playlist" + +# +msgid "Add files to playlist" +msgstr "Aggiungere file alla playlist" + +msgid "Add more details to the crash log" +msgstr "Opzione per aggiungere dettagli estesi al crashlog" + +# +msgid "Add provider" +msgstr "Agg. provider" + +# +msgid "Add recording (enter recording duration)" +msgstr "Aggiungere registrazione (inserire durata)" + +# +msgid "Add recording (enter recording endtime)" +msgstr "Aggiungere registrazione (inserire ora termine)" + +# +msgid "Add recording (indefinitely)" +msgstr "Aggiungere registrazione (illimitata)" + +# +msgid "Add recording (stop after current event)" +msgstr "Aggiungere registrazione (evento corrente)" + +# +msgid "Add service" +msgstr "Agg. canale" + +# +msgid "Add timer" +msgstr "Agg. timer" + +# +msgid "Add title" +msgstr "Agg. titolo" + +# +msgid "Add to bouquet" +msgstr "Aggiungere al bouquet" + +# +msgid "Add to favourites" +msgstr "Aggiungere a preferiti" + +msgid "Add/remove change timer for current event" +msgstr "" + +msgid "Adjust 3D settings" +msgstr "Configurare opzioni 3D" + +# +msgid "Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens." +msgstr "Regolare il colore in modo che tutte le sfumature risultino visibili, ma appaiano le più sature possibile. Se il risultato appare soddisfacente, premere Ok per uscire dalla impostazione avanzata video, o utilizzare i tasti numerici per accedere alle altre schermate." + +msgid "Advanced" +msgstr "" + +# +msgid "Advanced options" +msgstr "Opzioni avanzate" + +# +msgid "Advanced restore" +msgstr "Ripristino avanzato" + +# +msgid "Advanced software" +msgstr "Software avanzato" + +# +msgid "Advanced software plugin" +msgstr "Plugin Software avanzato" + +# +msgid "Advanced video enhancement setup" +msgstr "Impostazioni avanzate miglioramento immagine" + +# +msgid "Advanced video setup" +msgstr "Impostazioni avanzate video" + +# +msgid "After event" +msgstr "Dopo l'evento" + +# +msgid "Album" +msgstr "Album" + +msgid "Alignment of events" +msgstr "" + +msgid "Alignment of service names" +msgstr "" + +# +msgid "All" +msgstr "Tutti" + +msgid "All ages" +msgstr "Tutte le età" + +msgid "All satellites 1 (USALS)" +msgstr "" + +msgid "All satellites 2 (USALS)" +msgstr "" + +msgid "All satellites 3 (USALS)" +msgstr "" + +msgid "All satellites 4 (USALS)" +msgstr "" + +msgid "Allocate" +msgstr "Allocare" + +msgid "Allocate unused memory index" +msgstr "Allocare l'ndice della memoria inutilizzata" + +msgid "Allow quit movieplayer with exit" +msgstr "" + +msgid "Allow subtitle language to equal audio language" +msgstr "Associare la lingua sottotitoli alla lingua audio" + +msgid "Allow subtitles for hearing impaired" +msgstr "Abilitare sottotitoli per non udenti" + +# +msgid "Alpha" +msgstr "Trasparenza" + +# +msgid "Alternative" +msgstr "Alternative" + +# +msgid "Alternative numbering mode" +msgstr "Numerazione alternativa" + +# +msgid "Alternative services tuner priority" +msgstr "Priorità tuner" + +msgid "Always ask" +msgstr "Chiedere sempre" + +msgid "Always hide infobar" +msgstr "" + +# +msgid "An empty filename is illegal." +msgstr "Nome di file vuoto: non consentito!" + +# +msgid "An error occurred while downloading the packetlist. Please try again." +msgstr "Errore nel download elenco pacchetti! Riprovare." + +# +msgid "An unknown error occurred!" +msgstr "Si è verificato un errore sconosciuto!" + +msgid "And will put your receiver in standby over " +msgstr "" + +msgid "Any activity" +msgstr "Tutte le attività" + +# +msgid "Arabic" +msgstr "Arabo" + +msgid "Are you sure to remove this entry?" +msgstr "" + +# +msgid "" +"Are you sure you want to activate this network configuration?\n" +"\n" +msgstr "" +"Attivare queste impostazioni di rete?\n" +"\n" + +# +msgid "" +"Are you sure you want to delete\n" +"the following backup:\n" +msgstr "" +"Rimuovere\n" +"questo backup:\n" + +# +msgid "Are you sure you want to exit this wizard?" +msgstr "Uscire da questa configurazione guidata?" + +# +msgid "" +"Are you sure you want to restart your network interfaces?\n" +"\n" +msgstr "" +"Riavviare le interfacce di rete?\n" +"\n" + +# +#, python-format +msgid "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Ripristinare il seguente backup2?\n" +"\n" +"%s\n" +"Al termine del ripristino, il ricevitore verrà riavviato." + +# +msgid "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Ripristinare il backup?\n" +"Al termine del ripristino, il ricevitore verrà riavviato." + +# +msgid "Artist" +msgstr "Artista" + +msgid "Arts/Culture" +msgstr "Arte/Cultura" + +# +msgid "Ask user" +msgstr "Chiedere" + +# +msgid "Aspect ratio" +msgstr "Rapporto d'aspetto" + +# +msgid "Assigned CAIds:" +msgstr "CAIds assegnati:" + +# +msgid "Assigned services/provider:" +msgstr "Canali/Provider assegnati:" + +msgid "At beginning" +msgstr "All'inizio" + +msgid "At end" +msgstr "Alla fine" + +# +msgid "Audio" +msgstr "Audio" + +msgid "Audio PID" +msgstr "PID audio" + +msgid "Audio language selection 1" +msgstr "Lingua audio 1" + +msgid "Audio language selection 2" +msgstr "Lingua audio 2" + +msgid "Audio language selection 3" +msgstr "Lingua audio 3" + +msgid "Audio language selection 4" +msgstr "Lingua audio 4" + +# +msgid "Audio options..." +msgstr "Opzioni audio..." + +# +#, python-format +msgid "Audio track (%s) format" +msgstr "Formato traccia audio (%s)" + +# +#, python-format +msgid "Audio track (%s) language" +msgstr "Lingua traccia audio (%s)" + +msgid "Author: " +msgstr "Autore: " + +msgid "Authoring mode" +msgstr "Modalità authoring" + +# +#. TRANSLATORS: (aspect ratio policy: always try to display as fullscreen, when there is no content (black bars) on left/right, even if this breaks the aspect. +msgid "Auto" +msgstr "Auto" + +msgid "Auto chapter split every ? minutes (0=never)" +msgstr "Divisione automatica capitoli ogni x minuti (0=mai)" + +msgid "Auto flesh" +msgstr "Correzione colore automatica (auto flesh)" + +msgid "Auto focus" +msgstr "Auto focus" + +msgid "Auto focus commencing ..." +msgstr "Avvio puntamento automatico..." + +msgid "Auto language selection" +msgstr "Selezione automatica lingua" + +# +msgid "Auto scart switching" +msgstr "Scambio automatico scart" + +# +msgid "Automatic" +msgstr "Automatico" + +# +msgid "Automatic scan" +msgstr "Ricerca automatica" + +msgid "Automatically start timeshift after" +msgstr "" + +msgid "Automatically turn on external subtitles" +msgstr "" + +# +msgid "Available format variables" +msgstr "Formati disponibili" + +# +msgid "B" +msgstr "B" + +# +msgid "BER" +msgstr "BER" + +# +msgid "BER:" +msgstr "BER:" + +# +msgid "Back" +msgstr "Indietro" + +# +msgid "Background" +msgstr "Sfondo" + +# +msgid "Background color" +msgstr "Colore sfondo" + +msgid "Background delete option" +msgstr "Rimozione in background" + +msgid "Background delete speed" +msgstr "Velocità rimozione in background" + +# +msgid "Backup completed." +msgstr "Backup completato." + +# +msgid "Backup failed." +msgstr "Backup fallito!" + +# +msgid "Backup is running..." +msgstr "Backup in corso..." + +# +msgid "Backup system settings" +msgstr "Backup conf. sistema" + +# +msgid "Band" +msgstr "Banda" + +# +msgid "Bandwidth" +msgstr "Banda passante" + +msgid "Basque" +msgstr "Basco" + +# +msgid "Begin time" +msgstr "Ora inizio" + +msgid "Behavior of 'pause and ok' when paused" +msgstr "" + +msgid "Behavior of 0 key in PiP-mode" +msgstr "Effetto tasto 0 in modalità PiP" + +# +msgid "Behavior when a movie is started" +msgstr "Su avvio riproduzione" + +# +msgid "Behavior when a movie is stopped" +msgstr "Su arresto riproduzione" + +# +msgid "Behavior when a movie reaches the end" +msgstr "Su riproduzione terminata" + +msgid "Big PiP" +msgstr "" + +# +msgid "Bitrate:" +msgstr "Bitrate:" + +msgid "Black screen" +msgstr "Schermo nero" + +msgid "Black screen till locked" +msgstr "Schermo nero fino al lock" + +# +msgid "Block noise reduction" +msgstr "Riduzione disturbo blocchi" + +# +msgid "Blue boost" +msgstr "Intensificare il blu" + +# +msgid "Bookmarks" +msgstr "Contrassegni" + +# +msgid "Brightness" +msgstr "Luminosità" + +msgid "Bulgarian" +msgstr "Bulgaro" + +# +msgid "Burn DVD" +msgstr "Masterizzare DVD" + +# +#, python-format +msgid "Burn audio track (%s)" +msgstr "Masterizzare traccia audio (%s)" + +# +msgid "Burn existing image to DVD" +msgstr "Scrivere immagine esistente su DVD" + +msgid "Burn to DVD" +msgstr "Masterizzare su DVD" + +# +msgid "Bus: " +msgstr "Bus: " + +msgid "By default, SNR will be shown in dB (when supported by the tuner). This setting forces SNR to be shown as a percentage instead." +msgstr "Opzione per forzare la visualizzazione SNR come percentuale.Come opzione predefinita, il livello di SNR è espresso in dB (se supportato dal tuner). " + +# +msgid "C" +msgstr "C" + +# +msgid "C-Band" +msgstr "Banda C" + +msgid "CH" +msgstr "" + +# +msgid "CI assignment" +msgstr "Assegnazione CI" + +# +msgid "CVBS" +msgstr "CVBS" + +# +msgid "Cable" +msgstr "Cavo" + +msgid "Cable Scan" +msgstr "Scansione su cavo" + +# +msgid "Cache thumbnails" +msgstr "Cache miniature" + +msgid "Calculate" +msgstr "Calcolare" + +msgid "Calculate all positions" +msgstr "Calcolare tutte le posizioni" + +msgid "Calculation complete" +msgstr "Calcolo completato" + +msgid "Calibrate" +msgstr "Calibrare" + +msgid "Can be used for different fps between external subtitles and video." +msgstr "" + +# +msgid "Cancel" +msgstr "Annullare" + +msgid "Cannot determine" +msgstr "Impossibile determinare" + +msgid "Cannot find any signal ..., aborting !" +msgstr "Segnale non rilevato, si annulla." + +msgid "Cannot move files on a different disk or system to the trash can" +msgstr "Impossibile spostare nel cestino file che risiedono su disco o sistema differenti" + +msgid "Cannot move to trash can" +msgstr "Impossibile spostare nel cestino" + +# +msgid "Capacity: " +msgstr "Capacità: " + +# +msgid "Card" +msgstr "Card" + +msgid "Cascade PiP" +msgstr "" + +msgid "Center DVB subtitles" +msgstr "Centrare sottotitoli DVB" + +msgid "Center time-labels and remove date" +msgstr "" + +# +msgid "Change bouquets in quickzap" +msgstr "Cambio di bouquet nello zapping veloce" + +# +msgid "Change pin code" +msgstr "Cambiare codice PIN" + +# +msgid "Change recording (duration)" +msgstr "Cambiare durata registrazione" + +# +msgid "Change recording (endtime)" +msgstr "Cambiare ora fine registrazione" + +msgid "Change repeat and delay settings?" +msgstr "Modificare i valori di ritardo e ripetizione?" + +msgid "Change service PIN" +msgstr "Cambiare il PIN canale" + +msgid "Change service PINs" +msgstr "Cambiare i PIN canale" + +msgid "Change setup PIN" +msgstr "Cambiare il PIN protezione configurazione" + +# +msgid "Change step size" +msgstr "Cambiare dimensioni passo" + +msgid "Change timer" +msgstr "" + +msgid "Changelog" +msgstr "Changelog" + +# +msgid "Channel" +msgstr "Canale" + +# +msgid "Channel list type" +msgstr "Tipo elenco canali" + +# +msgid "Channel not in services list" +msgstr "Canale non in elenco" + +# +msgid "Channel selection" +msgstr "Selezione canale" + +# +msgid "Channel:" +msgstr "Canale:" + +# +msgid "Channellist menu" +msgstr "Menu elenco canali" + +# +msgid "Chap." +msgstr "Cap." + +# +msgid "Chapter" +msgstr "Capitolo" + +# +msgid "Chapter:" +msgstr "Capitolo:" + +# +msgid "Check" +msgstr "Verificare" + +msgid "Check the internet connection" +msgstr "Verificare la connessione a internet" + +msgid "Check the internet connection again" +msgstr "Verificare di nuovo la connessione a internet" + +# +msgid "Checking filesystem..." +msgstr "Verifica filesystem in corso..." + +msgid "Checking the internet connection" +msgstr "Verifica della connessione a internet in corso" + +#, python-format +msgid "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" +msgstr "" +"Verifica in corso: tuner %d\n" +"Porta DiSEqC %s per %s" + +msgid "Children/Youth" +msgstr "Bambini/Giovani" + +msgid "Choose which tuner to configure." +msgstr "Selezionare il tuner da configurare." + +# +msgid "Circular left" +msgstr "Circolare a sinistra" + +# +msgid "Circular right" +msgstr "Circolare a destra" + +# +msgid "Cleanup" +msgstr "Ripulire" + +msgid "Clear" +msgstr "Rimuovere" + +# +msgid "Clear before scan" +msgstr "Rimuovere prima di cercare" + +msgid "Clear fixed" +msgstr "Nuovo indirizzo" + +# +msgid "Clear log" +msgstr "Canc. log" + +# +msgid "Clear playlist" +msgstr "Rimuovere playlist" + +# +msgid "Close" +msgstr "Chiudere" + +msgid "Close PiP on exit" +msgstr "" + +# +msgid "Close title selection" +msgstr "Chiudere selezione sottotitoli" + +msgid "Code rate HP" +msgstr "Code rate HP" + +msgid "Code rate LP" +msgstr "Code rate LP" + +# +msgid "Coderate HP" +msgstr "Coderate HP" + +# +msgid "Coderate LP" +msgstr "Coderate LP" + +# +msgid "Collection name" +msgstr "Nome raccolta" + +# +msgid "Collection settings" +msgstr "Impostazione raccolta" + +# +msgid "Color format" +msgstr "Formato colore" + +# +msgid "Command execution..." +msgstr "Esecuzione comando..." + +# +msgid "Command order" +msgstr "Ordine comandi" + +# +msgid "Common Interface" +msgstr "Common Interface" + +# +msgid "Common Interface assignment" +msgstr "Assegnazione Common Interface" + +# +msgid "Communication" +msgstr "Comunicazione" + +# +msgid "Compact flash" +msgstr "Compact Flash" + +# +msgid "Complete" +msgstr "Completo" + +# +msgid "Complex (allows mixing audio tracks and aspects)" +msgstr "Complessa (permette mix tracce audio e aspetti)" + +msgid "Composition of the recording filenames" +msgstr "Struttura dei nomi dei file registrazioni" + +# +msgid "Configuration mode" +msgstr "Modalità configurazione" + +# +#, python-format +msgid "Configuration mode: %s" +msgstr "Modalità configurazione: %s" + +# +msgid "Configuration..." +msgstr "Impostazioni..." + +msgid "Configure an additional delay to improve external subtitle synchronisation." +msgstr "" + +msgid "Configure an additional delay to improve subtitle synchronisation." +msgstr "" + +msgid "Configure for how long the infobar will remain visible after activation." +msgstr "Opzione per impostare la persistenza della barra informazioni." + +msgid "Configure for how many minutes finished events should remain visible in the EPG. Useful when you need information about an event which has just finished, or has been delayed." +msgstr "Opzione per impostare la persistenza (in minuti) degli eventi terminati nell'EPG. Utile quando si necessitano informazioni su di un evento appena terminato o ritardato." + +msgid "Configure how recording filenames are constructed." +msgstr "Opzione per impostare la struttura dei nomi di file da assegnare alle registrazioni." + +msgid "Configure how the fan should operate" +msgstr "" + +msgid "Configure if and how crypto icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how long the latest service in the PiP will be remembered." +msgstr "" + +msgid "Configure if and how service type icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how wide columns will be shown in the channel selection list." +msgstr "" + +msgid "Configure if service picons will be shown in the channel selection list." +msgstr "" + +# +msgid "Configure interface" +msgstr "Opzione per impostare l'interfaccia" + +# +msgid "Configure nameservers" +msgstr "Opzione per impostare i nameserver" + +msgid "Configure on which devices the background delete option should be used." +msgstr "Opzione per impostare i supporti sui quali attivare l'opzione rimozione in background." + +msgid "Configure remote control type" +msgstr "Opzione per impostare il tipo di telecomando" + +msgid "Configure the DiSEqC mode for this LNB." +msgstr "Opzione per impostare la modalità DiSEqC per questo LNB." + +# +msgid "Configure the IP address." +msgstr "Opzione per impostare l'indirizzo IP" + +msgid "Configure the aspect ratio of the screen." +msgstr "Opzione per impostare il rapporto d'aspetto dello schermo." + +msgid "Configure the behavior of the 'pause and ok' key when movie playback is already paused." +msgstr "" + +# +msgid "Configure the behavior when movie playback is manually stopped." +msgstr "Opzione per impostare il comportamento del ricevitore quando la riproduzione di una registrazione viene arrestata manualmente." + +# +msgid "Configure the behavior when movie playback is started." +msgstr "Opzione per impostare il comportamento del ricevitore quando viene avviata la riproduzione di una registrazione." + +msgid "Configure the behavior when reaching the end of a movie, during movie playback." +msgstr "Opzione per impostare il comportamento del ricevitore qualora venisse raggiunto il termine di una registrazione durante la sua riproduzione." + +msgid "Configure the border width of the subtitles. The dark border makes the subtitles easier to read on a light background." +msgstr "Opzione per impostare lo spessore bordi dei sottotitoli. Bordi scuri su uno sfondo chiaro renderanno più agevole la loro lettura." + +msgid "Configure the brightness level of the front panel display during standby." +msgstr "Opzione per impostare la luminosità del display del ricevitore quando si trovi in standby." + +msgid "Configure the brightness level of the front panel display." +msgstr "Opzione per impostare la luminosità del display del ricevitore." + +msgid "Configure the color of the external subtitles, alternative (normal in white, italic in yellow, bold in cyan, underscore in green), white or yellow." +msgstr "" + +msgid "Configure the color of the teletext subtitles." +msgstr "Opzione per impostare il colore dei sottotitoli televideo." + +msgid "Configure the contrast level of the front panel display." +msgstr "Opzione per impostare il contrasto del display del ricevitore." + +msgid "Configure the cursor behaviour in the channel selection list. When opening the channel selection list you can keep on the current service or already select up/down and you are able to revert the B+/B- buttons." +msgstr "" + +msgid "Configure the duration in hours the receiver should go to standby when the receiver is not controlled." +msgstr "" + +msgid "Configure the duration in minutes for the screensaver." +msgstr "" + +msgid "Configure the duration in minutes for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +msgstr "" + +msgid "Configure the duration when the receiver should go to shut down in case the receiver is in standby mode." +msgstr "" + +msgid "Configure the first audio language (highest priority)." +msgstr "Opzione per impostare la lingua audio primaria (priorità più alta)." + +msgid "Configure the first subtitle language (highest priority)." +msgstr "Opzione per impostare la lingua sottotitoli primaria (priorità più alta)." + +msgid "Configure the font size of the subtitles." +msgstr "Opzione per impostare la dimensione carattere dei sottotitoli." + +msgid "Configure the fourth audio language." +msgstr "Opzione per impostare la quarta lingua audio." + +# +msgid "Configure the fourth subtitle language." +msgstr "Opzione per impostare la quarta lingua sottotitoli." + +msgid "Configure the function of a long press on the power button." +msgstr "Opzione per impostare la funzione associata alla pressione prolungata del tasto power." + +msgid "Configure the function of a short press on the power button." +msgstr "Opzione per impostare la funzione associata alla pressione breve del tasto power." + +msgid "Configure the function of the '0' button do when PIP is active." +msgstr "Opzione per impostare la funzione associata al tasto \"0\" quando la PiP è attiva." + +# +msgid "Configure the gateway." +msgstr "Opzione per impostare il gateway" + +msgid "Configure the general audio delay of Dolby Digital sound tracks." +msgstr "Opzione per impostare il ritardo generale delle tracce audio Dolby Digital." + +msgid "Configure the general audio delay of stereo sound tracks." +msgstr "Opzione per impostare il ritardo generale delle tracce audio Stereo." + +msgid "Configure the hard disk drive to go to standby after the specified idle time." +msgstr "Opzione per impostare il tempo di inattività trascorso il quale l'harddisk verrà posto in standby." + +msgid "Configure the horizontal alignment of the subtitles." +msgstr "Opzione per impostare l'allineamento orizzontale dei sottotitoli." + +msgid "Configure the initial fast forward speed. When you press the fast forward button, winding will start at this speed." +msgstr "Opzione per impostare la velocità iniziale per la funzione FFW. Premendo il tasto FFW, l'avanzamento veloce si avvierà a questa velocità." + +msgid "Configure the initial rewind speed. When you press the rewind button, winding will start at this speed." +msgstr "Opzione per impostare la velocità iniziale per la funzione REW. Premendo il tasto REW, il riavvolgimento veloce si avvierà a questa velocità." + +msgid "Configure the latitude of your location." +msgstr "Opzione per impostare la latitudine della propria posizione." + +msgid "Configure the longitude of your location." +msgstr "Opzione per impostare la longitudine della propria posizione." + +msgid "Configure the minimum amount of disk space to be available for recordings. When the amount of space drops below this value, deleted items will be removed from the trash can." +msgstr "Opzione per impostare lo spazio minimo da lasciare a disposizione delle registrazioni. Qualora lo spazio disponibile scendesse al di sotto di questo valore, verranno rimossi gli elementi eliminati e contenuti nel cestino." + +# +msgid "Configure the nameserver (DNS)." +msgstr "Opzione per impostare i nameserver (DNS)" + +# +msgid "Configure the netmask." +msgstr "Opzione per impostare la netmask" + +msgid "Configure the number of days after which items are automaticaly removed from the trash can." +msgstr "Opzione per impostare il numero di giorni trascorsi i quali gli elementi contenuti nel cestino verranno automaticamente rimossi." + +msgid "Configure the number of days old timers are kept before they are automatically removed from the timer list." +msgstr "Opzione per impostare il numero di giorni trascorsi i quali i timer conclusi verranno automaticamente rimossi dall'elenco." + +msgid "Configure the offline decoding delay in milliseconds. The configured delay is observed at each control word parity change." +msgstr "Opzione per impostare il ritardo per la decodifica offline (millisecondi). Il ritardo impostato sarà applicato ad ogni controllo del cambio di parità word." + +msgid "Configure the possible fast forward speeds." +msgstr "Opzione per impostare le velocità FFW disponibili." + +msgid "Configure the possible rewind speeds." +msgstr "Opzione per impostare le velocità REW disponibili." + +msgid "Configure the primary EPG language." +msgstr "Opzione per impostare la lingua primaria per l'EPG." + +msgid "Configure the refresh rate of the screen." +msgstr "Opzione per impostare la frequenza di refresh dello schermo." + +msgid "Configure the screen resolution in PC output mode." +msgstr "Opzione per impostare la risoluzione schermo in modalità PC." + +msgid "Configure the second audio language." +msgstr "Opzione per impostare la lingua audio secondaria." + +# +msgid "Configure the second subtitle language." +msgstr "Opzione per impostare la lingua sottotitoli secondaria." + +msgid "Configure the secondary EPG language." +msgstr "Opzione per impostare la lingua secondaria per l'EPG." + +msgid "Configure the sharpness of the video scaling." +msgstr "Opzione per impostare la nitidezza dello scaling video." + +msgid "Configure the skip time interval for the '1'/'3' buttons." +msgstr "Opzione per impostare il salto di tempo personalizzato assegnato ai tasti 1 e 3." + +msgid "Configure the skip time interval for the '4'/'6' buttons." +msgstr "Opzione per impostare il salto di tempo personalizzato assegnato ai tasti 4 e 6." + +msgid "Configure the skip time interval for the '7'/'9' buttons." +msgstr "Opzione per impostare il salto di tempo personalizzato assegnato ai tasti 7 e 9." + +# +msgid "Configure the slow motion speeds." +msgstr "Opzione per impostare le velocità assegnate alla funzione rallenty." + +msgid "Configure the source of the frontend data as shown on the infobars. 'Settings' is as stored on the settings. 'Tuner' is as reported by the tuner." +msgstr "" + +msgid "Configure the speed of the background deletion process. Lower speed will consume less hard disk drive performance." +msgstr "Opzione per impostare la velocità assegnata al processo di rimozione in background. Velocità inferiori incideranno meno sulle prestazione dell'harddisk." + +msgid "Configure the speed of the fan" +msgstr "" + +msgid "Configure the subtitle delay when timing information is not available." +msgstr "Opzione per impostare la temporizzazione dei sottotitoli da utilizzare quando le informazioni di tempo non sono disponibili." + +msgid "Configure the third audio language." +msgstr "Opzione per impostare la terza ligua audio." + +# +msgid "Configure the third subtitle language." +msgstr "Opzione per impostare la terza lingua per i sottotitoli." + +msgid "Configure the transparency of the OSD." +msgstr "Opzione per impostare la trasparenza dell'OSD." + +msgid "Configure the transparency of the black background of graphical DVB subtitles." +msgstr "Opzione per impostare la trasparenza dello sfondo nero per i sottotitoli grafici DVB." + +# +msgid "Configure the tuner mode." +msgstr "Opzione per impostare la modalità per il tuner." + +msgid "Configure the type of status indication icons shown in the movielist." +msgstr "Opzione per impostare il tipo di icone indicanti lo stato da mostrare in elenco registrazioni." + +msgid "Configure the vertical position of the subtitles, measured from the bottom of the screen." +msgstr "Opzione per impostare la posizione dei sottotitoli, misurata rispetto la parte inferiore dello schermo." + +msgid "Configure the video output mode (or resolution)." +msgstr "Opzione per impostare la modalità dell'uscita video (risoluzione)." + +msgid "Configure the way in which the receiver changes channels." +msgstr "Opzione per impostare la modalità di cambio canale del ricevitore." + +msgid "Configure where completed timers show up in the timer list." +msgstr "Opzione per impostare l'ordine di visualizzazione delle voci concluse nell'elenco timer." + +msgid "Configure whether (and for how long) a second infobar will be shown when OK is pressed twice. The second infobar contains additional information about the current channel." +msgstr "Opzione per determinare se debba essere visualizzata una seconda barra informazioni su doppia pressione del tasto Ok, e la sua persistenza. Tale barra conterrà informazioni aggiuntive sul canale sintonizzato." + +msgid "Configure whether multi channel sound tracks should be downmixed to stereo." +msgstr "Opzione per determinare se debba essere eseguito il downmix stereo dei canali audio multipli." + +msgid "Configure whether or not an icon should be shown when your motorized dish is moving." +msgstr "Opzione per abilitare la visualizzazione di un'icona durante il movimento di una parabola motorizzata." + +msgid "Configure which access level to use for the configuration menu. Expert level gives access to all items." +msgstr "Opzione per impostare il livello di accesso al menu impostazioni. Il livello \"Esperto\" consentirà l'accesso completo." + +msgid "Configure which color format should be used on the SCART output." +msgstr "Opzione per impostare il formato colore da utilizzare sull'uscita SCART." + +msgid "Configure which tuner for recordings will be preferred, when more than one tuner is available." +msgstr "" + +msgid "Configure which tuner type will be preferred, when the same service is available on different types of tuners." +msgstr "Opzione per impostare il tuner preferenziale da utilizzarsi quando lo stesso canale è disponibile su differenti tipologie di tuner." + +msgid "Configure which tuner will be preferred, when more than one tuner is available. If set to 'auto' the system will give priority to the tuner having the lowest number of channels/satellites." +msgstr "Opzione per impostare il tuner preferenziale, da utilizzarsi quando più di un tuner risultasse disponibile. L'opzione \"Auto\" assegnerà la priorità al tuner sul quale risulta configurato il minor numero di canali/satelliti." + +# +msgid "Configure your internal LAN" +msgstr "Impostare la rete locale (cablata)." + +# +msgid "Configure your network again" +msgstr "Impostare di nuovo la rete locale." + +msgid "Configure your network settings, and press OK to start the scan" +msgstr "Configurare le proprie impostazioni di rete, poi premere Ok per iniziare la ricerca" + +# +msgid "Configure your wireless LAN again" +msgstr "Impostare di nuovo la rete locale wireless." + +msgid "Configures which video output connector will be used." +msgstr "Impostare l'uscita video da utilizzare." + +# +msgid "Configuring" +msgstr "Impostazione in corso" + +# +msgid "Conflicting timer" +msgstr "Timer in conflitto" + +# +msgid "Connect" +msgstr "Connettere" + +# +msgid "Connect to a wireless network" +msgstr "Connettere a rete wireless" + +msgid "Connected satellites" +msgstr "" + +# +msgid "Connected to" +msgstr "Connesso a:" + +# +msgid "Connected!" +msgstr "Connesso." + +# +msgid "Constellation" +msgstr "Costellazione" + +# +msgid "Content does not fit on DVD!" +msgstr "I contenuti superano la capacità del DVD." + +# +msgid "Continue" +msgstr "Proseguire" + +# +msgid "Continue in background" +msgstr "Proseguire in background" + +# +msgid "Continue playback" +msgstr "Proseguire la riproduzione" + +# +msgid "Continue playing" +msgstr "Proseguire la riproduzione" + +msgid "Continues play (loop)" +msgstr "Riproduzione continua (loop)" + +# +msgid "Contrast" +msgstr "Contrasto" + +msgid "Convert ext3 filesystem to ext4" +msgstr "Convertire filesystem ext3 in ext4" + +msgid "Convert ext3 to ext4" +msgstr "ext3 >> ext4" + +msgid "Converting ext3 to ext4..." +msgstr "Conversione da ext3 a ext4 in corso..." + +msgid "Copy" +msgstr "Copiare" + +msgid "Could not connect to receiver .NFI image feed server:" +msgstr "Impossibile connettersi al server feed immagini .NFI:" + +msgid "Could not find installed channel list." +msgstr "Impossibile trovare l'elenco dei canali installati." + +# +msgid "Could not load medium! No disc inserted?" +msgstr "Impossibile caricare supporto. Disco non inserito?" + +# +msgid "Could not open Picture in Picture" +msgstr "Impossibile attivare PiP" + +# +#, python-format +msgid "Could not record due to conflicting timer %s" +msgstr "Impossibile registrare, timer %s in conflitto." + +#, python-format +msgid "Could not record due to invalid service %s" +msgstr "Impossibile registrare: canale %s non valido" + +# +msgid "Create DVD-ISO" +msgstr "Creare DVD-ISO" + +msgid "Create more detailed crash log" +msgstr "Creare crash log dettagliati" + +# +#, python-format +msgid "Creating directory %s failed." +msgstr "Creazione cartella %s fallita." + +# +msgid "Creating filesystem" +msgstr "Creazione filesystem in corso" + +msgid "Creating partition" +msgstr "Creazione partizione in corso" + +# +msgid "Croatian" +msgstr "Croato" + +msgid "Current CEC address" +msgstr "Indirizzo CEC corrente" + +msgid "Current device: " +msgstr "Dispositivo corrente: " + +msgid "Current event EPG" +msgstr "Evento EPG corrente" + +#, python-format +msgid "Current mode: %s \n" +msgstr "" + +# +msgid "Current settings:" +msgstr "Impostazioni attuali:" + +# +msgid "Current transponder" +msgstr "Transponder attuale" + +# +msgid "Current value: " +msgstr "Valore attuale: " + +# +msgid "Current version:" +msgstr "Versione attuale:" + +msgid "Currently installed image" +msgstr "Immagine installata attualmente" + +msgid "Currently the commit log cannot be retrieved - please try later again" +msgstr "" + +msgid "Custom skip time for '1'/'3' buttons" +msgstr "Salto di tempo per i tasti 1-3" + +msgid "Custom skip time for '4'/'6' buttons" +msgstr "Salto di tempo per i tasti 4-6" + +msgid "Custom skip time for '7'/'9' buttons" +msgstr "Salto di tempo per i tasti 7-9" + +# +msgid "Customize" +msgstr "Personalizzazioni" + +msgid "Customize channel list cursor behavior" +msgstr "" + +# +msgid "Cut" +msgstr "Tagliare" + +# +msgid "Cutlist editor..." +msgstr "Editor elenco tagli..." + +# +msgid "Czech" +msgstr "Ceco" + +# +msgid "D" +msgstr "D" + +# +msgid "DHCP" +msgstr "DHCP" + +# +msgid "DMM advanced" +msgstr "DMM avanzato" + +msgid "DMM normal" +msgstr "DMM normale" + +msgid "DUAL LAYER DVD" +msgstr "DVD doppio strato" + +msgid "DVB subtitle black transparency" +msgstr "Trasparenza nero sottotitoli DVB" + +msgid "DVB-C" +msgstr "DVB-C" + +msgid "DVB-C ANNEX C" +msgstr "DVB-C ANNEX C" + +# +msgid "DVB-S" +msgstr "DVB-S" + +# +msgid "DVB-S2" +msgstr "DVB-S2" + +msgid "DVB-T" +msgstr "DVB-T" + +msgid "DVB-T2" +msgstr "DVB-T2" + +msgid "DVD data format" +msgstr "Formato dati DVD" + +# +msgid "DVD file browser" +msgstr "File browser DVD" + +# +msgid "DVD media toolbox" +msgstr "Strumenti DVD" + +# +msgid "DVD player" +msgstr "Player DVD" + +# +msgid "DVD titlelist" +msgstr "Elenco titoli DVD" + +# +msgid "Danish" +msgstr "Danese" + +# +msgid "Date" +msgstr "Data" + +# +msgid "Date/time input" +msgstr "Inserimento Data/Ora" + +# +msgid "Deep standby" +msgstr "Deep standby" + +# +msgid "Default" +msgstr "Predefinito" + +# +msgid "Default movie location" +msgstr "Percorso predefinito registrazioni" + +# +msgid "Default settings" +msgstr "Configurazioni predefinite" + +msgid "Delay before key repeat starts:" +msgstr "Ritardo inizio ripetizione tasto:" + +msgid "Delay for external subtitles" +msgstr "" + +msgid "Delete" +msgstr "Rimuovere" + +# +msgid "Delete entry" +msgstr "Rimuovere la voce" + +# +msgid "Delete failed!" +msgstr "Rimozione fallita!" + +# +msgid "Delete file" +msgstr "Rimuovere file" + +# +msgid "Delete playlist entry" +msgstr "Rimuovere voce dalla playlist" + +# +msgid "Delete saved playlist" +msgstr "Rimuovere la playlist salvata" + +msgid "Delete timer" +msgstr "" + +msgid "Delete..." +msgstr "Rimuovere..." + +msgid "Deleted" +msgstr "Rimosso" + +msgid "Deleted items" +msgstr "Registrazioni rimosse" + +msgid "Depth" +msgstr "Profondità" + +msgid "Descramble http streams" +msgstr "Decodificare stream http" + +# +msgid "Description" +msgstr "Descrizione" + +# +msgid "Deselect" +msgstr "Deselezionare" + +msgid "Details for plugin: " +msgstr "Dettagli per il plugin: " + +# +msgid "Detected HDD:" +msgstr "HDD rilevato:" + +# +msgid "Detected NIMs:" +msgstr "Tuner rilevati:" + +msgid "Devicename:" +msgstr "Nome dispositivo:" + +msgid "Devide" +msgstr "" + +# +msgid "DiSEqC" +msgstr "DiSEqC" + +msgid "DiSEqC 1.0 command" +msgstr "" + +msgid "DiSEqC 1.1 command" +msgstr "" + +msgid "DiSEqC 1.1 repeats" +msgstr "" + +# +msgid "DiSEqC A/B" +msgstr "DiSEqC A/B" + +# +msgid "DiSEqC A/B/C/D" +msgstr "DiSEqC A/B/C/D" + +# +msgid "DiSEqC mode" +msgstr "Modalità DiSEqC" + +# +#, python-format +msgid "DiSEqC port %s: %s" +msgstr "Porta DiSEqC %s: %s" + +# +msgid "DiSEqC-tester settings" +msgstr "Impostazioni DiSEqC-Tester" + +# +msgid "Dialing:" +msgstr "Composizione:" + +# +msgid "Digital contour removal" +msgstr "Rimozione contorni" + +# +msgid "Direct playback of linked titles without menu" +msgstr "Riproduzione diretta dei titoli collegati, senza menu" + +msgid "Directory" +msgstr "Directory" + +# +#, python-format +msgid "Directory %s does not exist." +msgstr "La directory %s non esiste." + +#, python-format +msgid "Directory %s nonexistent." +msgstr "" + +# +msgid "Directory browser" +msgstr "Browser cartelle" + +#, python-format +msgid "Directory contains %d file(s) and %d sub-directories.\n" +msgstr "" + +#, python-format +msgid "Directory contains %s and %s." +msgstr "Contenuto directory: %s e %s." + +# +msgid "Disable" +msgstr "Disabilitare" + +# +msgid "Disable Picture in Picture" +msgstr "Disabiltare PiP" + +msgid "Disable background scanning" +msgstr "Disabilitare la ricerca in background" + +msgid "Disable timer" +msgstr "" + +# +msgid "Disabled" +msgstr "Disabilitato" + +# +msgid "Disconnect" +msgstr "Disconnettere" + +msgid "Disk space to reserve for recordings (in GB)" +msgstr "Spazio su disco da riservare alle registrazioni (in GB)" + +# +msgid "Display 16:9 content as" +msgstr "Mostrare contenuti in 16:9 come" + +# +msgid "Display 4:3 content as" +msgstr "Mostrare contenuti in 4:3 come" + +# +msgid "Display >16:9 content as" +msgstr "Mostrare contenuti > di 16:9 come" + +# +msgid "Display and userinterface" +msgstr "Display e Interfaccia utente" + +msgid "Display message before playing next movie" +msgstr "Visualizzare un messaggio prima di riprodurre la registrazione successiva" + +# +msgid "Display setup" +msgstr "Impostazioni display" + +# +msgid "Do not change" +msgstr "Non cambiare" + +# +msgid "Do not record" +msgstr "Non registrare" + +# +msgid "Do nothing" +msgstr "Non fare nulla" + +# +msgid "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" +msgstr "" +"Eseguire una verifica del filesystem?\n" +"Attenzione, potrebbe richiedere molto tempo!" + +msgid "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" +msgstr "" +"Si conferma la conversione del filesystem?\n" +"Non sarà possibile annullare." + +#, python-format +msgid "Do you really want to delete %s?" +msgstr "Rimuovere %s?" + +# +#, python-format +msgid "" +"Do you really want to download\n" +"the plugin \"%s\"?" +msgstr "" +"Si conferma il download\n" +"del plugin \"%s\"?" + +msgid "Do you really want to exit?" +msgstr "Si conferma l'uscita?" + +msgid "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" +msgstr "" +"Si confema la formattazione del supporto?\n" +"Tutti i dati in esso contenuti verranno persi." + +# +#, python-format +msgid "" +"Do you really want to remove\n" +"the plugin \"%s\"?" +msgstr "" +"Rimuovere il plugin\n" +"\"%s\"?" + +# +#, python-format +msgid "Do you really want to remove directory %s from the disk?" +msgstr "Rimuovere la cartella %s dal disco?" + +# +#, python-format +msgid "Do you really want to remove your bookmark of %s?" +msgstr "Rimuovere il contrassegno per %s?" + +msgid "Do you want this?" +msgstr "" + +# +msgid "Do you want to burn this collection to DVD medium?" +msgstr "Masterizzare la raccolta su DVD?" + +# +msgid "Do you want to do a service scan?" +msgstr "Effettuare una ricerca canali?" + +# +msgid "Do you want to do another manual service scan?" +msgstr "Effettuare un'altra ricerca canali manuale?" + +#, python-format +msgid "Do you want to download the image to %s ?" +msgstr "Scaricare l'immagine in %s?" + +# +msgid "Do you want to install a channel list?" +msgstr "Installare un elenco canali?" + +# +msgid "Do you want to install the package:\n" +msgstr "Installare il pacchetto:\n" + +# +msgid "Do you want to play DVD in drive?" +msgstr "Riprodurre il DVD inserito?" + +# +msgid "Do you want to preview this DVD before burning?" +msgstr "Mostrare l'anteprima del DVD prima di masterizzare?" + +msgid "Do you want to reboot your receiver?" +msgstr "Riavviare il ricevitore?" + +# +msgid "Do you want to remove the package:\n" +msgstr "Rimuovere il pacchetto?\n" + +# +msgid "Do you want to restore your settings?" +msgstr "Ripristinare le impostazioni?" + +# +msgid "Do you want to resume this playback?" +msgstr "Riprendere la riproduzione?" + +#, python-format +msgid "Do you want to update your receiver to %s?" +msgstr "Aggiornare il ricevitore a %s?" + +msgid "Do you want to update your receiver?" +msgstr "Aggiornare il ricevitore?" + +# +msgid "Do you want to upgrade the package:\n" +msgstr "Aggiornare il pacchetto:\n" + +# +msgid "Don't stop current event but disable coming events" +msgstr "Non interrompere l'evento corrente ma annullare i futuri" + +# +#, python-format +msgid "Done - Installed, upgraded or removed %d package (%s)" +msgid_plural "Done - Installed, upgraded or removed %d packages (%s)" +msgstr[0] "Terminato. Installati, aggiornato o rimosso %d pacchetto (%s)" +msgstr[1] "Terminato. Installati, aggiornati o rimossi %d pacchetti (%s)" + +# +msgid "Download" +msgstr "Download" + +#, python-format +msgid "Download %s from server" +msgstr "Scaricare %s dal server" + +msgid "Download .NFI-files for USB-flasher" +msgstr "Download file .nfi per flasher USB" + +# +msgid "Download plugins" +msgstr "Download plugin" + +# +msgid "Downloadable new plugins" +msgstr "Nuovi plugin scaricabili" + +# +msgid "Downloadable plugins" +msgstr "Plugin scaricabili" + +# +msgid "Downloading" +msgstr "Download in corso" + +# +msgid "Downloading plugin information. Please wait..." +msgstr "Ricerca informazioni sui plugin in corso. Attendere..." + +# +msgid "Dutch" +msgstr "Olandese" + +# +msgid "Dynamic contrast" +msgstr "Contrasto dinamico" + +# +msgid "E" +msgstr "E" + +msgid "EPG" +msgstr "EPG" + +msgid "EPG language selection 1" +msgstr "EPG: lingua 1" + +msgid "EPG language selection 2" +msgstr "EPG: lingua 2" + +# +msgid "EPG selection" +msgstr "Selezione EPG" + +msgid "EPG settings" +msgstr "Impostazioni EPG" + +# +#, python-format +msgid "ERROR - failed to scan (%s)!" +msgstr "ERRORE - Ricerca fallita (%s)!" + +# +msgid "East" +msgstr "Est" + +msgid "East limit set" +msgstr "Conf. limite Est" + +# +msgid "Edit" +msgstr "Modif." + +# +msgid "Edit DNS" +msgstr "Mod. DNS" + +msgid "Edit bouquets list" +msgstr "Modificare elenco bouquet" + +# +msgid "Edit chapters of current title" +msgstr "Modificare capitoli del titolo corrente" + +# +msgid "Edit services list" +msgstr "Modificare elenco canali" + +# +msgid "Edit settings" +msgstr "Mod. configurazione" + +# +msgid "Edit the nameserver configuration of your receiver.\n" +msgstr "Modificare le impostazioni nameserver del ricevitore.\n" + +msgid "Edit the network configuration of your receiver.\n" +msgstr "Modificare le impostazioni di rete del ricevitore.\n" + +msgid "Edit timer" +msgstr "" + +# +msgid "Edit title" +msgstr "Mod. titolo" + +# +msgid "Edit upgrade source url." +msgstr "Modificare URL sorgenti aggiornamento." + +msgid "Education/Science/..." +msgstr "Didattica/Scienza/..." + +# +msgid "Electronic Program Guide" +msgstr "Guida Programmi Elettronica" + +# +msgid "Enable" +msgstr "Abilitare" + +msgid "Enable 'neutrino' style channel select controlling" +msgstr "" + +msgid "Enable 'neutrino' style zap controlling" +msgstr "" + +# +msgid "Enable 5V for active antenna" +msgstr "Abilitare 5V per antenna attiva" + +msgid "Enable EIT EPG" +msgstr "Abilitare EPG EIT" + +msgid "Enable MHW EPG" +msgstr "Abilitare EPG MHW" + +msgid "Enable Netmed EPG" +msgstr "Abilitare EPG Netmed" + +msgid "Enable OK for channel selection" +msgstr "" + +msgid "Enable ViaSat EPG" +msgstr "Abilitare EPG ViaSat" + +msgid "Enable Virgin EPG" +msgstr "" + +msgid "Enable Wake On LAN" +msgstr "" + +msgid "Enable auto fast scan" +msgstr "" + +# +msgid "Enable bouquet selection in multi-EPG" +msgstr "Abilitare selezione bouquet in multi-EPG" + +msgid "Enable freesat EPG" +msgstr "Abilitare EPG freesat" + +# +msgid "Enable multiple bouquets" +msgstr "Abilitare bouquet multipli" + +msgid "Enable parental control" +msgstr "Attivare il controllo parentale" + +msgid "Enable teletext caching" +msgstr "Abilitare cache televideo" + +msgid "Enable zapping with CH+/-, B+/-, P+/-" +msgstr "" + +# +msgid "Enabled" +msgstr "Abilitato" + +# +msgid "Encrypted: " +msgstr "Codificato: " + +# +msgid "Encryption" +msgstr "Codifica" + +# +msgid "Encryption key" +msgstr "Chiave codifica" + +# +msgid "Encryption key type" +msgstr "Tipo chiave codifica" + +# +msgid "Encryption:" +msgstr "Codifica:" + +# +msgid "End time" +msgstr "Ora fine" + +msgid "End time to ignore inactivity sleeptimer" +msgstr "" + +msgid "End time to ignore shutdown in standby" +msgstr "" + +# +msgid "English" +msgstr "Inglese" + +# +msgid "Enigma2 skin selector" +msgstr "Selezione skin enigma2" + +# +msgid "Enter main menu..." +msgstr "Menu principale..." + +msgid "Enter pin code" +msgstr "Inserire il codice PIN" + +# +msgid "Enter the service pin" +msgstr "Inserire il codice PIN canale" + +msgid "Equal to" +msgstr "" + +# +msgid "Error" +msgstr "Errore" + +msgid "Error code" +msgstr "Codice errore" + +# +msgid "Error executing plugin" +msgstr "Errore in esecuzione plugin!" + +# +#, python-format +msgid "" +"Error: %s\n" +"Retry?" +msgstr "" +"Errore: %s\n" +"Riprovare?" + +# +msgid "Estonian" +msgstr "Estone" + +msgid "Ethernet network interface" +msgstr "Interfaccia di rete Ethernet" + +msgid "Event font size (relative to skin size)" +msgstr "Dimensioni carattere evento (relative alle dimensioni skin)" + +# +msgid "Event view" +msgstr "Vista eventi" + +# +msgid "Event view menu" +msgstr "Menu vista eventi" + +msgid "Everywhere" +msgstr "Ovunque" + +msgid "Exceeds dual layer medium!" +msgstr "Supera la capacità di supporto doppio strato!" + +# +msgid "Execution finished!!" +msgstr "Esecuzione terminata!!" + +# +msgid "Execution progress:" +msgstr "Progresso in esecuzione:" + +# +msgid "Exif" +msgstr "Exif" + +# +msgid "Exit" +msgstr "Uscire" + +msgid "Exit EPG" +msgstr "Uscire dall'EPG" + +# +msgid "Exit editor" +msgstr "Uscire dall'editor" + +msgid "Exit input device selection." +msgstr "Uscire dalla selezione dispositivo di input." + +msgid "Exit media player?" +msgstr "" + +# +msgid "Exit mediaplayer" +msgstr "Uscire da Mediaplayer" + +# +msgid "Exit movie list" +msgstr "Uscire da elenco registrazioni" + +# +msgid "Exit movie player?" +msgstr "Uscire dal movie player" + +# +msgid "Exit nameserver configuration" +msgstr "Uscire da impostazioni nameserver" + +# +msgid "Exit network interface list" +msgstr "Uscire da elenco interfacce di rete" + +# +msgid "Exit network wizard" +msgstr "Uscire da conf. guidata" + +# +msgid "Exit the wizard" +msgstr "Uscire dal wizard" + +# +msgid "Expert" +msgstr "Esperto" + +msgid "Extend sleeptimer 15 minutes" +msgstr "" + +# +msgid "Extended Software" +msgstr "Software esteso" + +# +msgid "Extended Software Plugin" +msgstr "Plugin Software esteso" + +# +msgid "Extended network setup plugin..." +msgstr "Plugin di configurazione avanzata rete..." + +# +msgid "Extended setup..." +msgstr "Impostazioni avanzate..." + +# +msgid "Extensions" +msgstr "Estensioni" + +# +msgid "Extensions management" +msgstr "Gestione delle estensioni" + +msgid "External PiP" +msgstr "" + +msgid "External subtitle color" +msgstr "" + +msgid "Extra motor options" +msgstr "" + +# +msgid "FEC" +msgstr "FEC" + +msgid "FTA" +msgstr "FTA" + +# +msgid "Factory reset" +msgstr "Reset configurazioni di fabbrica" + +# +msgid "Failed" +msgstr "Fallito" + +msgid "Failed to write /tmp/positionersetup.log: " +msgstr "Scrittura su /tmp/positionersetuplog fallita: " + +# +#, python-format +msgid "Fan %d" +msgstr "Ventola %d" + +#, python-format +msgid "Fan %d PWM" +msgstr "PWM ventola %d" + +# +#, python-format +msgid "Fan %d voltage" +msgstr "Tensione ventola %d" + +msgid "Fan operation" +msgstr "" + +msgid "Fan speed" +msgstr "" + +# +msgid "Fast" +msgstr "Veloce" + +# +msgid "Fast DiSEqC" +msgstr "DiSEqC veloce" + +msgid "Fast Scan" +msgstr "Ricerca veloce" + +# +msgid "Fast epoch" +msgstr "Epoch veloce" + +# +msgid "Fast forward speeds" +msgstr "Velocità FFW" + +# +msgid "Favourites" +msgstr "Preferiti" + +msgid "File appears to be busy.\n" +msgstr "Il file sembra essere occupato.\n" + +msgid "Filesystem check" +msgstr "Verifica filesystem" + +msgid "Final position at" +msgstr "Posizione finale a" + +msgid "Final position at index" +msgstr "Indice posizione finale" + +msgid "Fine movement" +msgstr "Controllo fine" + +# +msgid "Finetune" +msgstr "Sint. fine" + +# +msgid "Finished" +msgstr "Terminato" + +# +msgid "Finished configuring your network" +msgstr "La configurazione di rete è terminata" + +# +msgid "Finished restarting your network" +msgstr "Riavvio rete terminato" + +# +msgid "Finnish" +msgstr "Finlandese" + +msgid "Fixed" +msgstr "Fissa" + +# +msgid "Flash" +msgstr "Flash" + +# +msgid "Flashing failed" +msgstr "Flash fallito!" + +msgid "Following tasks will be done after you press OK!" +msgstr "I processi seguenti saranno eseguiti premendo Ok!" + +msgid "Format" +msgstr "Formattare" + +msgid "Forward volume keys" +msgstr "Riportare i comandi volume" + +# +msgid "Frame size in full view" +msgstr "Dimensione frame in visualizzazione piena" + +# +msgid "French" +msgstr "Francese" + +# +msgid "Frequency" +msgstr "Frequenza" + +# +msgid "Frequency bands" +msgstr "Bande di frequenza" + +# +msgid "Frequency scan step size(khz)" +msgstr "Passo di frequenza ricerca (kHz)" + +# +msgid "Frequency steps" +msgstr "Passi di frequenza" + +msgid "Frequency:" +msgstr "" + +# +msgid "Fri" +msgstr "Ven" + +# +msgid "Friday" +msgstr "Venerdì" + +msgid "From :" +msgstr "Da:" + +# +#, python-format +msgid "Frontprocessor version: %d" +msgstr "Versione frontprocessor: %d" + +msgid "Full transparency" +msgstr "Trasparenza piena" + +msgid "Fulview resulution" +msgstr "" + +msgid "Function of OK button" +msgstr "Funzione assegnata al tasto Ok" + +msgid "Further Options" +msgstr "" + +msgid "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" +msgstr "" +"L'attivazione della nuova skin richiede\n" +"il riavvio di enigma2. Riavviare ora?" + +# +msgid "Gateway" +msgstr "Gateway" + +# +msgid "General AC3 delay" +msgstr "Ritardo generale AC3" + +# +msgid "General PCM delay" +msgstr "Ritardo generale PCM" + +# +msgid "Genre" +msgstr "Genere" + +# +msgid "German" +msgstr "Tedesco" + +msgid "Get latest experimental image" +msgstr "Ottenere l'immagine \\\"esperimental\\\" più recente" + +msgid "Get latest release image" +msgstr "Ottenere l'ultima immagine rilasciata" + +# +msgid "Getting plugin information. Please wait..." +msgstr "Ricezione informazioni sul plugin. Attendere..." + +msgid "Go down the list" +msgstr "Elenco giù" + +msgid "Go to first movie or last item" +msgstr "Andare alla prima registrazione o all'ultima voce" + +msgid "Go to first movie or top of list" +msgstr "Andate alla prima registrazione o all'inizio dell'elenco" + +# +msgid "Go to first service" +msgstr "Al primo canale" + +# +msgid "Go to last service" +msgstr "All'ultomo canale" + +# +msgid "Go to next event" +msgstr "Andare all'evento successivo" + +# +msgid "Go to next page of service" +msgstr "Passare alla pagina canali successiva" + +# +msgid "Go to previous event" +msgstr "Tornare all'evento precedente" + +# +msgid "Go to previous page of service" +msgstr "Passare alla pagina canali precedente" + +msgid "Go up the list" +msgstr "Elenco sù" + +msgid "Goto" +msgstr "Goto" + +# +msgid "Goto 0" +msgstr "Goto 0" + +msgid "Goto :" +msgstr "Goto :" + +msgid "Goto X" +msgstr "Goto X" + +msgid "Goto index position" +msgstr "Goto posizione indice" + +msgid "Goto next day of events" +msgstr "" + +msgid "Goto next page of events" +msgstr "Passare alla pagina eventi successiva" + +msgid "Goto position" +msgstr "Posizione goto" + +msgid "Goto previous day of events" +msgstr "" + +msgid "Goto previous page of events" +msgstr "Passare alla pagina eventi precedente" + +msgid "Goto specific date/time" +msgstr "" + +msgid "GotoX calibration" +msgstr "Calibrazione GotoX" + +msgid "GraphMultiEpg Settings" +msgstr "Impostazioni GraphMultiEpg" + +# +msgid "Graphical Multi EPG" +msgstr "Multi EPG grafico" + +# +msgid "Greek" +msgstr "Greco" + +# +msgid "Green boost" +msgstr "Intensificare il verde" + +msgid "Guard interval" +msgstr "Intervallo di guardia" + +msgid "HD list" +msgstr "Elenco HD" + +msgid "HDMI-CEC setup" +msgstr "" + +msgid "Handle standby from TV" +msgstr "Gestire lo standby dalla TV" + +msgid "Handle wakeup from TV" +msgstr "Gestire l'accensione dalla TV" + +# +msgid "Hard disk" +msgstr "Harddisk" + +# +msgid "Hard disk setup" +msgstr "Impostazioni harddisk" + +# +msgid "Hard disk standby after" +msgstr "Standby harddisk dopo" + +# +msgid "Harddisk" +msgstr "Harddisk" + +msgid "Hardware: " +msgstr "Hardware: " + +msgid "Hebrew" +msgstr "Ebraico" + +msgid "Helps setting up your dish" +msgstr "" + +msgid "Hidden network" +msgstr "Rete nascosta" + +msgid "Hide CI messages" +msgstr "Nascondere i messaggi CI" + +msgid "Hide channel list in radio mode" +msgstr "Nascondere elenco canali in modalità radio" + +msgid "Hide known extensions" +msgstr "" + +msgid "Hide number markers" +msgstr "" + +# +msgid "Hide player" +msgstr "Nascondere il player" + +msgid "Hide zap errors" +msgstr "Nascondere gli errori di zap" + +msgid "Hierarchy info" +msgstr "Informazioni gerarchia" + +# +msgid "Hierarchy information" +msgstr "Informazioni gerarchia" + +# +msgid "High bitrate support" +msgstr "Supporto hight bitrate" + +msgid "Hold screen" +msgstr "Bloccare lo schermo" + +msgid "Hold till locked" +msgstr "Bloccare fino al lock" + +msgid "Home" +msgstr "Home" + +# +msgid "Horizontal" +msgstr "Orizzontale" + +msgid "Horizontal turning speed" +msgstr "Velocità di rotazione orizzontale" + +# +msgid "How many minutes do you want to record?" +msgstr "Durata registrazione (minuti):" + +# +msgid "Hue" +msgstr "Colore" + +# +msgid "Hungarian" +msgstr "Ungherese" + +# +msgid "IP address" +msgstr "Indirizzo IP" + +# +msgid "ISO file is too large for this filesystem!" +msgstr "File ISO troppo grande per questo filesystem!" + +# +msgid "ISO path" +msgstr "Percorso ISO" + +msgid "Icons" +msgstr "Icone" + +msgid "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." +msgstr "" +"La connessione SCART non funziona\n" +"correttamente! Premere Ok per uscire." + +msgid "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." +msgstr "" +"Se la TV dispone di un controllo per il miglioramento del contrasto, disattivarlo. Se dispone di un controllo definito [Dinamico], impostarlo a standard. Regolare la retro-illuminazione ad un livello di gradimento. Abbassare il più possibile il contrasto.\n" +"Abbassare al minimo la luminosità, assicurandosi tuttavia che le due sfumature più scure di grigio rimangano distinguibili.\n" +"Per il momento non preoccuparsi delle sfumature chiare: saranno regolate successivamente.\n" +"Quando il risultato appare soddisfacente, premere OK." + +msgid "Image: " +msgstr "Immagine:" + +# +msgid "Immediate shutdown" +msgstr "Spegnimento immediato" + +# +msgid "In order to record a timer, the TV was switched to the recording service!\n" +msgstr "In seguito a registr. programmata: la TV è stata sintonizzata sul canale da registrare!\n" + +# +msgid "In progress" +msgstr "In corso" + +msgid "Inactivity Sleeptimer" +msgstr "" + +msgid "Include AIT in http streams" +msgstr "Includere AIT negli stream http" + +msgid "Include ECM in http streams" +msgstr "Includere ECM negli stream http" + +msgid "Include EIT in http streams" +msgstr "Includere EIT negli stream http" + +msgid "Incorrect type service for PiP!" +msgstr "" + +# +msgid "Increased voltage" +msgstr "Voltaggio aumentato" + +# +msgid "Index" +msgstr "Indice" + +msgid "Index allocated:" +msgstr "Indice assegnato:" + +# +msgid "Info" +msgstr "Info" + +# +msgid "Info bar" +msgstr "Barra informazioni" + +# +msgid "Info bar timeout" +msgstr "Persistenza barra informazioni" + +msgid "Infobar frontend data source" +msgstr "" + +# +msgid "Information" +msgstr "Informazioni" + +# +msgid "Init" +msgstr "Init" + +msgid "Initial fast forward speed" +msgstr "Velocità iniziale FFW" + +# +msgid "Initial location in new timers" +msgstr "Percorso iniziale nuovi timer" + +msgid "Initial lock ratio" +msgstr "Rapporto iniziale di lock" + +msgid "Initial rewind speed" +msgstr "Velocità iniziale REW" + +msgid "Initial signal quality" +msgstr "Qualità segnale iniziale" + +msgid "Initial signal quality:" +msgstr "Qualità segnale iniziale:" + +msgid "Initialization" +msgstr "Formattazione" + +# +msgid "Initialize" +msgstr "Formattare" + +msgid "Initializing storage device..." +msgstr "Formattazione dispositivo in corso..." + +# +msgid "Input" +msgstr "Input" + +msgid "Input device setup" +msgstr "Impostazioni dispositivo di input" + +msgid "Input devices" +msgstr "Dispositivi di input" + +# +msgid "Install" +msgstr "Installare" + +# +msgid "Install a new image with a USB stick" +msgstr "Installare nuova immagine tramite penna USB" + +# +msgid "Install a new image with your web browser" +msgstr "Installare nuova immagine tramite web browser" + +# +msgid "Install channel list" +msgstr "Installare elenco canali" + +msgid "Install extensions" +msgstr "" + +# +msgid "Install extensions." +msgstr "Installare estensioni" + +# +msgid "Install local extension" +msgstr "Installare estensioni locali" + +msgid "Install picons on" +msgstr "Installare picon su" + +# +msgid "Install softcam" +msgstr "Installare sofcam" + +# +msgid "Installation has completed." +msgstr "Installazione terminata." + +# +msgid "Installation or removal has completed." +msgstr "Installazione/Rimozione terminata." + +# +msgid "Installing" +msgstr "Inst. in corso" + +# +msgid "Installing software..." +msgstr "Installazione software in corso..." + +# +msgid "Instant recording location" +msgstr "Destinazione registrazioni istantanee" + +# +msgid "Instant recording..." +msgstr "Registrazione istantanea..." + +# +msgid "Interface: " +msgstr "Interfaccia: " + +# +msgid "Intermediate" +msgstr "Intermedio" + +# +msgid "Internal flash" +msgstr "Flash interna" + +msgid "Internal hdd only" +msgstr "Solo HDD interno" + +msgid "Interval between keys when repeating:" +msgstr "Intervallo tra i tasti durante la ripetizione:" + +# +#, python-format +msgid "Invalid directory selected: %s" +msgstr "La cartella selezionata non è valida: %s" + +# +msgid "Invalid location" +msgstr "Destinazione non valida" + +msgid "Invalid transponder data" +msgstr "" + +# +msgid "Inversion" +msgstr "Inversione" + +msgid "Invert" +msgstr "Invertire" + +# +msgid "Ipkg" +msgstr "Ipkg" + +msgid "Is this setting ok?" +msgstr "Le impostazioni sono corrette?" + +# +msgid "Is this video mode ok?" +msgstr "La modalità video è corretta?" + +# +msgid "Italian" +msgstr "Italiano" + +msgid "Items per page " +msgstr "Voci per pagina" + +msgid "Items per page for list screen" +msgstr "Voci per pagina negli elenchi" + +# +msgid "Job overview" +msgstr "Panoramica processi" + +msgid "Jump to beginning of list" +msgstr "Saltare all'inizio dell'elenco" + +# +msgid "Jump to end of list" +msgstr "Andare a fine elenco" + +# +msgid "Jump to next marked position" +msgstr "Andare al contrassegno successivo" + +# +msgid "Jump to previous marked position" +msgstr "Andare al contrassegno precedente" + +# +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect) +msgid "Just scale" +msgstr "Scalare solamente" + +msgid "Keep service" +msgstr "" + +# +msgid "Kernel version: " +msgstr "Versione Kernel:" + +# +msgid "Keyboard" +msgstr "Tastiera" + +# +msgid "Keyboard map" +msgstr "Mappa tastiera" + +# +msgid "Keyboard setup" +msgstr "Impostazioni tastiera" + +# +msgid "LAN adapter" +msgstr "Scheda di rete" + +msgid "LAN connection" +msgstr "Connessione LAN" + +# +msgid "LNB" +msgstr "LNB" + +# +msgid "Language" +msgstr "Lingua" + +# +msgid "Language selection" +msgstr "Selezione lingua" + +# +msgid "Last config" +msgstr "Ult. config." + +# +msgid "Last speed" +msgstr "Ultima velocità" + +msgid "Last upgrade: " +msgstr "Ultimo aggiornamento:" + +msgid "Latest Commits" +msgstr "" + +# +msgid "Latitude" +msgstr "Latitudine" + +# +msgid "Latvian" +msgstr "Lettone" + +# +msgid "Leave DVD player?" +msgstr "Uscire dal Player DVD?" + +# +msgid "Left" +msgstr "Sinistra" + +msgid "Left from servicename" +msgstr "" + +msgid "Leisure hobbies" +msgstr "Tempo libero/Hobby" + +# +#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term. +msgid "Letterbox" +msgstr "Letterbox" + +msgid "Letterbox zoom" +msgstr "" + +# +msgid "Limit character set for recording filenames" +msgstr "Set di caratteri limitato per i nomi dei file registrazioni" + +# +msgid "Limit east" +msgstr "Limite est" + +msgid "Limit the characters that can be used in recording filenames to (7 bit) ascii. This ensures compatibility with operating systems or file systems with limited character sets." +msgstr "Opzione per limitare i caratteri disponibili per i nomi dei file registrazioni ad ascii (7bit). L'opzione permette di garantire la compatibilità con sistemi operativi o filesystem che dispongano di set di caratteri limitati." + +# +msgid "Limit west" +msgstr "Limite ovest" + +msgid "Limits cancelled" +msgstr "Limiti rimossi" + +msgid "Limits enabled" +msgstr "Limiti abilitati" + +msgid "Limits off" +msgstr "Limiti off" + +msgid "Limits on" +msgstr "Limiti on" + +# +msgid "Link quality:" +msgstr "Qualità link:" + +# +msgid "Link:" +msgstr "Link:" + +# +msgid "Linked titles with a DVD menu" +msgstr "Titoli collegati ad un Menu DVD" + +msgid "List EPG functions..." +msgstr "Elenco funzioni EPG..." + +msgid "List available networks" +msgstr "Elencare le reti disponibili" + +msgid "List mode" +msgstr "Modalità elenco" + +# +msgid "List of storage devices" +msgstr "Elenco supporti memorizzazione" + +msgid "List type" +msgstr "Tipo elenco" + +#, python-format +msgid "List version %d, found %d channel" +msgid_plural "List version %d, found %d channels" +msgstr[0] "Versione elenco: %d. %d canale rilevato." +msgstr[1] "Versione elenco: %d. %d canali rilevati." + +# +msgid "Listen to the radio..." +msgstr "Radio..." + +msgid "Lists reloaded!" +msgstr "" + +# +msgid "Lithuanian" +msgstr "Lituano" + +# +msgid "Load" +msgstr "Caricare" + +msgid "Load Length of Movies in Movielist" +msgstr "" + +# +msgid "Load length of movies in movie list" +msgstr "Caricare in elenco la durata registrazioni" + +# +msgid "Load playlist" +msgstr "Caricare la playlist" + +# +msgid "Local network" +msgstr "Rete locale" + +# +msgid "Location" +msgstr "Percorso" + +# +msgid "Location for instant recordings" +msgstr "Percorso per registrazioni istantanee" + +msgid "Lock ratio" +msgstr "Rapporto di lock" + +# +msgid "Lock:" +msgstr "Lock:" + +# +msgid "Log results to harddisk" +msgstr "Salvare log su harddisk" + +msgid "Long filenames" +msgstr "Nomi estesi" + +# +msgid "Long key press" +msgstr "Press. prolungata tasto" + +# +msgid "Longitude" +msgstr "Longitudine" + +msgid "Loop through to" +msgstr "" + +msgid "Luxembourgish" +msgstr "Lussemburghese" + +# +msgid "MMC card" +msgstr "Card MMC" + +# +msgid "MORE" +msgstr "SUCCESSIVI" + +# +msgid "Main menu" +msgstr "Menu principale" + +msgid "Maintain old EPG data for" +msgstr "Persistenza dati EPG eventi terminati" + +msgid "Make this mark an 'in' point" +msgstr "Contrassegnare come punto IN" + +msgid "Make this mark an 'out' point" +msgstr "Contrassegnare come punto OUT" + +# +msgid "Make this mark just a mark" +msgstr "Contrassegnare solamente" + +# +msgid "Manage extensions" +msgstr "Gestire le estensioni" + +# +msgid "Manage your receiver's software" +msgstr "Gestire il software del ricevitore" + +msgid "Manual" +msgstr "" + +# +msgid "Manual Scan" +msgstr "Ricerca manuale" + +msgid "Manual configuration" +msgstr "Configurazione manuale" + +# +msgid "Manual scan" +msgstr "Ricerca manuale" + +# +msgid "Manual transponder" +msgstr "Transponder manuale" + +# +msgid "Manufacturer" +msgstr "Costruttore" + +# +msgid "Margin after recording (minutes)" +msgstr "Margine fine registrazione (minuti)" + +# +msgid "Margin before recording (minutes)" +msgstr "Margine inizio registrazione (minuti)" + +msgid "Max memory positions" +msgstr "" + +# +msgid "Max. bitrate: " +msgstr "Bitrate Max: " + +# +msgid "Media player" +msgstr "Media player" + +# +msgid "Media scanner" +msgstr "Media scanner" + +# +msgid "Medium is not a writeable DVD!" +msgstr "Il supporto non è un DVD masterizzabile!" + +# +msgid "Medium is not empty!" +msgstr "Il supporto non è vuoto!" + +msgid "Memory" +msgstr "Memoria" + +msgid "Memory index" +msgstr "Indice memoria" + +# +msgid "Menu" +msgstr "Menu" + +# +msgid "Message" +msgstr "Messaggio" + +# +msgid "Message..." +msgstr "Messaggio..." + +#, python-format +msgid "Minimum age %d years" +msgstr "Età massima anni: %d" + +msgid "Minimum send interval" +msgstr "Intervallo minimo d'invio" + +msgid "Missing " +msgstr "Mancante" + +# +msgctxt "Satellite configuration mode" +msgid "Mode" +msgstr "Modalità" + +# +msgctxt "Video output mode" +msgid "Mode" +msgstr "Modalità" + +# +msgid "Model: " +msgstr "Modello: " + +# +msgid "Modulation" +msgstr "Modulazione" + +# +msgid "Modulator" +msgstr "Modulatore" + +# +msgid "Mon" +msgstr "Lun" + +# +msgid "Mon-Fri" +msgstr "Lun-Ven" + +# +msgid "Monday" +msgstr "Lunedì" + +# +msgid "Mosquito noise reduction" +msgstr "Riduzione sfarfallio" + +msgid "Mount" +msgstr "Mount" + +msgid "Move" +msgstr "Spostare" + +# +msgid "Move PiP to main picture" +msgstr "Inviare PiP a schermo principale" + +# +msgid "Move Picture in Picture" +msgstr "Muovere PiP" + +# +msgid "Move east" +msgstr "Muovere a est" + +msgid "Move to other directory" +msgstr "Spostare in altra directory" + +msgid "Move to position X" +msgstr "Spostare alla posizione X" + +# +msgid "Move west" +msgstr "Muovere a ovest" + +msgid "Moved to position 0" +msgstr "Spostato alla posizione 0" + +msgid "Moved to position at index" +msgstr "Spostato alla posizione all'indice" + +msgid "Movement" +msgstr "Movimento" + +msgid "Movie List Configuration" +msgstr "" + +msgid "Movie Selection" +msgstr "" + +msgid "Movie list configuration" +msgstr "Impostazioni elenco registrazioni" + +# +msgid "Movie location" +msgstr "Percorso registrazione" + +# +msgid "Movie selection" +msgstr "Selezione registrazione" + +msgid "Movie/Drama" +msgstr "Cinema/Teatro" + +# +msgid "Movielist menu" +msgstr "Menu elenco registrazioni" + +msgid "Moving" +msgstr "In movimento" + +msgid "Moving east ..." +msgstr "In movimento verso est..." + +msgid "Moving to position" +msgstr "In movimento verso la posizione" + +msgid "Moving west ..." +msgstr "In movimento verso ovest..." + +# +msgid "Multi EPG" +msgstr "Multi EPG" + +msgid "Multi-EPG bouquet selection" +msgstr "Selezione bouquet Multi-EPG" + +# +msgid "Multimedia" +msgstr "Multimedia" + +# +msgid "Multiple service support" +msgstr "Supporto canali multipli" + +msgid "Multiplex" +msgstr "Multiplex" + +# +msgid "Multisat" +msgstr "Multisat" + +msgid "Multisat all select" +msgstr "" + +msgid "Music/Ballet/Dance" +msgstr "Musica/Balletto/Danza" + +# +msgid "Mute" +msgstr "Muto" + +# +msgid "N/A" +msgstr "N/A" + +# +msgid "NEXT" +msgstr "PROSSIMI" + +# +msgid "NFI image flashing" +msgstr "Flash immagine NFI in corso" + +msgid "NFI image flashing completed. Press Yellow to Reboot!" +msgstr "Installazione immagine NFI completata. Giallo >> Riavviare" + +msgid "NIM" +msgstr "NIM" + +# +msgid "NOW" +msgstr "IN ONDA" + +# +msgid "NTSC" +msgstr "NTSC" + +# +msgid "Name" +msgstr "Nome" + +# +msgid "Nameserver" +msgstr "Nameserver" + +# +#, python-format +msgid "Nameserver %d" +msgstr "Nameserver %d" + +# +msgid "Nameserver settings" +msgstr "Impostazioni nameserver" + +# +msgid "Nameserver setup" +msgstr "Configurazione nameserver" + +msgid "Namespace" +msgstr "Spazio dei nomi" + +# +msgid "Netmask" +msgstr "Netmask" + +# +msgid "Network" +msgstr "Rete" + +msgid "Network ID" +msgstr "ID rete" + +# +msgid "Network configuration..." +msgstr "Configurazione rete..." + +# +msgid "Network mount" +msgstr "Mount di rete" + +# +#, python-format +msgid "Network mount %s" +msgstr "Mount di rete %s" + +msgid "Network name (SSID)" +msgstr "Nome rete (SSID)" + +# +msgid "Network scan" +msgstr "Ricerca rete" + +# +msgid "Network setup" +msgstr "Configurazione rete" + +# +msgid "Network test" +msgstr "Test della rete" + +# +msgid "Network test..." +msgstr "Test rete..." + +msgid "Network test: " +msgstr "Test della rete: " + +# +msgid "Network wizard" +msgstr "Conf. guidata rete" + +# +msgid "Network:" +msgstr "Rete:" + +# +msgid "New" +msgstr "Nuovo" + +msgid "New PIN" +msgstr "Nuovo PIN" + +# +msgid "New version:" +msgstr "Nuova versione:" + +msgid "News Current Affairs" +msgstr "Notizie/Attualità" + +msgctxt "button label, 'next screen'" +msgid "Next" +msgstr "Successivo" + +msgctxt "now/next: 'next' event label" +msgid "Next" +msgstr "Successivo" + +# +msgid "No" +msgstr "No" + +# +msgid "No (supported) DVDROM found!" +msgstr "Nessun DVD-ROM (supportato) disponibile." + +# +msgid "No Connection" +msgstr "Nessuna connessione" + +# +msgid "No HDD found or HDD not initialized!" +msgstr "HDD non disponbile o non formattato." + +# +msgid "No backup needed" +msgstr "Backup non necessario" + +msgid "No cable tuner found!" +msgstr "Nessun tuner via cavo disponibile." + +# +msgid "" +"No data on transponder!\n" +"(Timeout reading PAT)" +msgstr "" +"Nessuna dato sul transponder!\n" +"(Timeout in lettura PAT)" + +msgid "No delay" +msgstr "Nessun ritardo" + +# +msgid "No description available." +msgstr "Descrizione non disponibile." + +# +msgid "No details for this image file" +msgstr "Dettagli file immagine non disponibili!" + +# +msgid "No displayable files on this medium found!" +msgstr "Il supporto non contiene file riproducibili." + +# +msgid "No event info found, recording indefinitely." +msgstr "Informazioni evento non disponibili, registrazione illimitata." + +# +msgid "No fast winding possible yet.. but you can use the number buttons to skip forward/backward!" +msgstr "FFW/REW non ancora disponibile... Utilizzare i tasti numerici per avanzare/arretrare nella riproduzione!" + +msgid "No free index available" +msgstr "Nessun indice libero disponibile" + +# +msgid "No free tuner!" +msgstr "Nessun tuner disponibile!" + +# +msgid "No network connection available." +msgstr "Connessione di rete non disponibile." + +# +msgid "No networks found" +msgstr "Nessuna rete rilevata!" + +msgid "No new plugins found" +msgstr "" + +# +msgid "No positioner capable frontend found." +msgstr "Nessun apparato in grado di pilotare un motore è disponibile!" + +msgid "No satellites configured. Plese check your tuner setup." +msgstr "" + +msgid "No service" +msgstr "" + +# +msgid "No services/providers selected" +msgstr "Nessun canale/provider selezionato" + +# +msgid "No standby" +msgstr "Nessuno standby" + +msgid "No suitable sat tuner found!" +msgstr "" + +# +msgid "No tags are set on these movies." +msgstr "Nessuna etichetta configurata su queste registrazioni." + +# +msgid "No timeout" +msgstr "Nessun timeout" + +# +msgid "No to all" +msgstr "No a tutto" + +msgid "No transparency" +msgstr "Nessuna trasparenza" + +# +msgid "No tuner is configured for use with a diseqc positioner!" +msgstr "Nessun tuner è configurato per l'utilizzo di un motore!" + +# +msgid "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Nessun tuner abilitato!\n" +"Configurare i tuner prima di effettuare una ricerca canali." + +# +msgid "No updates available" +msgstr "Nessun aggiornamento disponibile" + +msgid "No updates available. Please try again later." +msgstr "Nessun aggiornamento disponibile. Riprovare più tardi." + +msgid "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" +msgstr "" +"Nessun codice PIN canale valido trovato!\n" +"Cambiare il codice PIN canale ora?\n" +"Scegliendo NO la protezione del canale sarà disabilitata!" + +msgid "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" +msgstr "" +"Nessun codice PIN configurazione valido trovato!\n" +"Cambiare il codice PIN configurazione ora?\n" +"Scegliendo NO la protezione configurazione sarà disabilitata!" + +msgid "No wireless networks found! Searching..." +msgstr "Nessuna rete wireless trovata! Ricerca in corso..." + +# +msgid "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." +msgstr "" +"Nessuna scheda di rete locate trovata!\n" +"Verificare che il cavo sia collegato e che la rete sia configurata correttamente." + +# +msgid "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." +msgstr "" +"Nessun adattatore di rete wireless trovato!\n" +"Verificare di aver collegato un adattatore WLAN compatibile e che la rete sia configurata correttamente." + +# +msgid "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." +msgstr "" +"Nessuna interfaccia wireless attiva trovata!\n" +"Verificare di aver collegato un dispositivo WLAN compatibile e di aver abilitato l'interfaccia di rete locale." + +# +msgid "No, but restart from begin" +msgstr "No, ma riprendere dall'inizio" + +# +msgid "No, do nothing." +msgstr "No, non fare nulla." + +msgid "No, just start my receiver" +msgstr "No, avviare il ricevitore" + +msgid "No, never" +msgstr "No, mai" + +# +msgid "None" +msgstr "Nessuno" + +# +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right) +msgid "Nonlinear" +msgstr "Non lineare" + +msgid "Normal mode" +msgstr "Modalità normale" + +# +msgid "North" +msgstr "Nord" + +# +msgid "Norwegian" +msgstr "Norvegese" + +msgid "Not associated" +msgstr "Non associato" + +msgid "Not configured" +msgstr "" + +# +#, python-format +msgid "Not enough disk space. Please free up some disk space and try again. (%d MB required, %d MB available)" +msgstr "Spazio su disco insufficiente. Liberare spazio sul disco e riprovare. (%d MB richiesti, %d MB disponibili)" + +msgid "Nothing connected" +msgstr "" + +# +msgid "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Impossibile effettuare la ricerca!\n" +"Configurare i tuner prima di effettuare una ricerca canali." + +msgctxt "now/next: 'now' event label" +msgid "Now" +msgstr "Ora" + +# +msgid "Now playing" +msgstr "In riproduzione" + +msgid "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." +msgstr "Ora utilizzare il controllo contrasto per aumentare la luminosità dello sfondo il più possibile, ma assicurarsi di poter distinguere la differenza tra le due sfumature più chiare. Alla fine premere OK." + +# +msgid "OK" +msgstr "Ok" + +# +msgid "OK, guide me through the upgrade process" +msgstr "Visualizzare una guida sul processo di aggiornamento" + +msgid "ONID" +msgstr "ONID" + +msgid "OSD name request" +msgstr "Richiesta nome OSD" + +# +msgid "OSD settings" +msgstr "Impostazioni OSD" + +msgid "OSD transparency" +msgstr "Trasparenza OSD" + +# +msgid "Off" +msgstr "Off" + +msgid "Offline decode delay (ms)" +msgstr "Ritardo decodifica offline (ms)" + +msgid "Ok" +msgstr "Ok" + +# +msgid "On" +msgstr "On" + +msgid "On end of movie" +msgstr "Termine registrazione" + +msgid "On end of movie (as menu)" +msgstr "" + +# +msgid "One" +msgstr "Uno" + +# +msgid "Only extensions." +msgstr "Solo estensioni" + +# +msgid "Only free scan" +msgstr "Solo canali in chiaro" + +# +msgid "Open service list" +msgstr "Aprire elenco canali" + +# +msgid "Open the movie list" +msgstr "Aprire a elenco registrazioni" + +msgid "Orbital position" +msgstr "Posizione orbitale" + +msgid "Original" +msgstr "Originale" + +msgid "Other" +msgstr "Altro" + +msgid "Output" +msgstr "Uscita" + +msgid "Overwrite configuration files during software upgrade?" +msgstr "Sovrascrivere i file di configurazione a seguito di un aggiornamento software?" + +msgid "Overwrite configuration files?" +msgstr "Sovrascrivere i file di configurazione?" + +# +msgid "PAL" +msgstr "PAL" + +msgid "PCR PID" +msgstr "PID PCR" + +# +msgid "PIDs" +msgstr "PIDs" + +# +msgid "PIN code needed" +msgstr "Richiesto codice PIN" + +msgid "PLP ID" +msgstr "" + +msgid "PMT PID" +msgstr "PID PMT" + +# +msgid "Package list update" +msgstr "Aggiornamento elenco pacchetti" + +# +msgid "Packet management" +msgstr "Gestione pacchetti" + +# +msgid "Packet manager" +msgstr "Gestore pacchetti" + +# +#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term +msgid "Pan&scan" +msgstr "Pan&Scan" + +# +msgid "Parent directory" +msgstr "Directory padre" + +# +msgid "Parental control" +msgstr "Controllo parentale" + +# +msgid "Parental control services editor" +msgstr "Editor Controllo parentale canali" + +msgid "Parental control setup" +msgstr "Configurazione controllo parentale" + +msgid "Parental control type" +msgstr "Tipo controllo parentale" + +# +msgid "Password" +msgstr "Password" + +# +msgid "Pause" +msgstr "Pausa" + +# +msgid "Pause movie at end" +msgstr "A termine riproduzione, mettere in pausa" + +# +msgid "Pause playback" +msgstr "Pausa riproduzione" + +msgid "Pauze/Continue playback" +msgstr "" + +msgid "Percentage left" +msgstr "Percentuale a Sx" + +# +msgid "Percentage right" +msgstr "Percentuale destra" + +msgid "Permanently delete all recordings in the trash can?" +msgstr "Rimuovere definitivamente tuute le registrazioni dal cestino?" + +msgid "Permanently remove all deleted items" +msgstr "Rimuovere definitivamente tutte le voci cancellate" + +msgid "Persian" +msgstr "Persiano" + +# +msgid "Phone number" +msgstr "Numero telefonico" + +# +msgid "PiP setup" +msgstr "Configurazione PiP" + +msgid "Picon" +msgstr "Picon" + +msgid "Picon and service name" +msgstr "Picon e nome canale" + +# +msgid "Picture player" +msgstr "PicturePlayer" + +# +#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term. +msgid "Pillarbox" +msgstr "Pillarbox" + +# +msgid "Pilot" +msgstr "Pilot" + +# +msgid "Play" +msgstr "Play" + +# +msgid "Play DVD" +msgstr "Riprodurre DVD" + +msgid "Play audio in background" +msgstr "Riprodurre audio in background" + +# +msgid "Play audio-CD..." +msgstr "Riprodurre CD audio..." + +msgid "Play back media files" +msgstr "Riproduzione di file multimediali" + +# +msgid "Play entry" +msgstr "Riprodurre voce" + +msgid "Play from next mark or playlist entry" +msgstr "Riprodurre da contrassegno/voce in playlist successiva" + +msgid "Play from previous mark or playlist entry" +msgstr "Riprodurre da contrassegno/voce in playlist precedente" + +# +msgid "Play music..." +msgstr "Riprodurre musica..." + +msgid "Play next" +msgstr "Riprodurre la successiva" + +msgid "Play next (return to movie list)" +msgstr "Riprodurre la successiva (tornare all'elenco registrazioni)" + +msgid "Play next (return to previous service)" +msgstr "Riprodurre la successiva (tornare al canale precedente)" + +msgid "Play previous" +msgstr "Riprodurre la precedente" + +# +msgid "Play recorded movies..." +msgstr "Riprodurre registrazioni..." + +msgid "Please add titles to the compilation." +msgstr "Aggiungere titoli alla collezione" + +# +msgid "Please change recording endtime" +msgstr "Cambiare ora fine registrazione" + +# +msgid "Please check your network settings!" +msgstr "Verificare la configurazione di rete!" + +# +msgid "Please choose an extension..." +msgstr "Selezionare un'estensione..." + +# +msgid "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Configurare o verificare i nameserver inserendo i parametri richiesti.\n" +"Quando pronti, premere OK per continuare." + +# +msgid "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Configurare la connessione a Internet inserendo i parametri richiesti.\n" +"Quando pronti, premere OK per continuare." + +msgid "Please connect your receiver to the internet" +msgstr "Collegare il ricevitore a internet" + +# +msgid "Please do not change any values unless you know what you are doing!" +msgstr "Non modificare alcun parametro se non si è certi di quello che si sta facendo!" + +# +msgid "Please enter a name for the new bouquet" +msgstr "Inserire un nome per il nuovo bouquet" + +# +msgid "Please enter a name for the new marker" +msgstr "Inserire un nome per il nuovo contrassegno" + +# +msgid "Please enter a new filename" +msgstr "Inserire un nome per il nuovo file" + +# +msgid "Please enter filename (empty = use current date)" +msgstr "Inserire un nome per il file (nulla >>data corrente)" + +# +msgid "Please enter name of the new directory" +msgstr "Inserire un nome per la nuova cartella" + +msgid "Please enter new name:" +msgstr "" + +# +msgid "Please enter the correct pin code" +msgstr "Inserire il codice PIN corretto" + +msgid "Please enter the old PIN code" +msgstr "Inserire il vecchio codice PIN" + +msgid "Please follow the instructions on the TV" +msgstr "Seguire le istruzioni mostrate sullo schermo" + +# +msgid "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." +msgstr "Il supporto selezionato in precedenza non è accessibile: sarà utilizzata la cartella predefinita." + +# +msgid "Please press OK to continue." +msgstr "Premere OK per proseguire." + +msgid "Please select a default EPG type..." +msgstr "Selezionare un tipo di EPG predefinito..." + +msgid "Please select a playlist to delete..." +msgstr "Selezionare la playlist da rimuovere..." + +# +msgid "Please select a playlist..." +msgstr "Selezionare una playlist..." + +# +msgid "Please select a sub service..." +msgstr "Selezionare un sottocanale..." + +# +msgid "Please select a subservice to record..." +msgstr "Selezionare un sottocanale da registrare..." + +# +msgid "Please select a subservice..." +msgstr "Selezionare un sottocanale..." + +msgid "Please select an NFI file and press green key to flash!" +msgstr "Selezionare un file .NFI, poi premere il tasto verde! " + +# +msgid "Please select medium to be scanned" +msgstr "Selezionare il supporto su cui cercare" + +# +msgid "Please select medium to use as backup location" +msgstr "Selezionare il supporto su cui effettuare il backup" + +# +msgid "Please select tag to filter..." +msgstr "Selezionare una etichetta come filtro..." + +# +msgid "Please select the movie path..." +msgstr "Selezionare cartella video..." + +# +msgid "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Selezionare l'interfaccia di rete che verrà utilizzata per la connessione a Internet.\n" +"\n" +"Premere OK per continuare." + +# +msgid "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Selezionare la rete wireless a cui connettersi.\n" +"\n" +"Premere OK per continuare." + +# +msgid "Please set up tuner A" +msgstr "Configurare il Tuner A" + +# +msgid "Please set up tuner B" +msgstr "Configurare il Tuner B." + +# +msgid "Please set up tuner C" +msgstr "Configurare il Tuner C." + +# +msgid "Please set up tuner D" +msgstr "Configurare il Tuner D." + +# +msgid "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." +msgstr "" +"Utilizzare i tasti <|> per muovere la finestra PiP.\n" +"Utilizzare Bouquet +/- per ridimensionare la finestra.\n" +"Premere OK per tornare alla modalità TV o EXIT per annullare lo spostamento." + +# +msgid "Please use the UP and DOWN keys to select your language. Afterwards press the OK button." +msgstr "Selezionare la propria lingua utilizzando i tasti Sù/Giù. Premere OK per confermare." + +msgid "Please wait" +msgstr "" + +# +msgid "Please wait (downloading channel list)" +msgstr "Elenco canali in download. Attendere..." + +# +msgid "Please wait (downloading softcam)" +msgstr "Softcam in download. Attendere..." + +# +msgid "Please wait (updating packages)" +msgstr "Immagine in caricamento. Attendere..." + +# +msgid "Please wait for activation of your network configuration..." +msgstr "Attivazione configurazione di rete in corso. Attendere..." + +# +msgid "Please wait while scanning is in progress..." +msgstr "Scansione in corso. Attendere..." + +# +msgid "Please wait while we configure your network..." +msgstr "Configurazione rete in corso. Attendere..." + +# +msgid "Please wait while we prepare your network interfaces..." +msgstr "Configurazione interfacce di rete in corso. Attendere..." + +# +msgid "Please wait while we test your network..." +msgstr "Test della rete in corso. Attendere..." + +# +msgid "Please wait while your network is restarting..." +msgstr "Riavvio della rete in corso. Attendere..." + +# +msgid "Please wait..." +msgstr "Attendere..." + +# +msgid "Please wait... Loading list..." +msgstr "Elenco in caricamento. Attendere..." + +# +msgid "Plugin browser" +msgstr "Browser plugin" + +# +msgid "Plugin manager activity information" +msgstr "Informazioni attività gestore plugin..." + +# +msgid "Plugin manager help" +msgstr "Aiuto gestore plugin..." + +# +msgid "Plugins" +msgstr "Plugin" + +msgid "Polarisation" +msgstr "Polarizzazione" + +msgid "Polarisation:" +msgstr "" + +# +msgid "Polarization" +msgstr "Polarizzazione" + +# +msgid "Polish" +msgstr "Polacco" + +# +msgid "Port A" +msgstr "Porta A" + +# +msgid "Port B" +msgstr "Porta B" + +# +msgid "Port C" +msgstr "Porta C" + +# +msgid "Port D" +msgstr "Porta D" + +# +msgid "Portuguese" +msgstr "Portoghese" + +msgid "Position of completed timers in timerlist" +msgstr "Posizione dei timer conclusi in elenco timer" + +msgid "Position stored at index" +msgstr "Posizione memorizzata all'indice" + +# +msgid "Positioner" +msgstr "Motore" + +msgid "Positioner (selecting satellites)" +msgstr "" + +msgid "Positioner Setup" +msgstr "" + +# +msgid "Positioner setup" +msgstr "Configurazione motore" + +# +msgid "Power threshold in mA" +msgstr "Limite di potenza in mA" + +# +msgid "Predefined transponder" +msgstr "Transponder predefinito" + +msgid "Prefer AC3 track" +msgstr "Privilegiare le tracce AC3" + +msgid "Prefer AC3+ track" +msgstr "" + +msgid "Prefer audio track stored by service" +msgstr "Privilegiare la traccia audio fornita dal canale" + +msgid "Prefer graphical DVB subtitles" +msgstr "Privilegiare i sottotitoli grafici DVB" + +msgid "Prefer subtitles for hearing impaired" +msgstr "Privilegiare i sottotitoli per non udenti" + +msgid "Prefer subtitles stored by service" +msgstr "Privilegiare i sottotitoli forniti dal canale" + +msgid "Preferred tuner" +msgstr "Tuner preferito" + +msgid "Preferred tuner for recordings" +msgstr "" + +msgid "Prepare another USB stick for image flashing" +msgstr "Preparare un'altra penna USB per il caricamento immagine" + +# +msgid "Preparing... Please wait" +msgstr "In preparazione. Attendere..." + +msgid "Press '0' to toggle PiP mode" +msgstr "" + +msgid "Press INFO on your remote control for additional information." +msgstr "INFO >> Informazioni addizionali" + +msgid "Press MENU on your remote control for additional options." +msgstr "MENU >> Informazioni addizionali" + +# +msgid "Press OK on your remote control to continue." +msgstr "Ok >> continuare." + +# +msgid "Press OK to activate the selected skin." +msgstr "Ok >> attivare la skin selezionata." + +# +msgid "Press OK to activate the settings." +msgstr "Ok >> attivare configurazione." + +# +msgid "Press OK to edit the settings." +msgstr "Ok >> modificare la configurazione." + +# +#, python-format +msgid "Press OK to get further details for %s" +msgstr "Ok >> maggiori dettagli su %s." + +# +msgid "Press OK to scan" +msgstr "Ok >> ricercare" + +# +msgid "Press OK to select a provider." +msgstr "Ok >> Selezionare un provider" + +msgid "Press OK to select satellites" +msgstr "" + +# +msgid "Press OK to select/deselect a CAId." +msgstr "Ok >> commutare la selezione CAid." + +# +msgid "Press OK to start the scan" +msgstr "Ok >> iniziare la ricerca" + +msgid "Press OK to toggle the selection" +msgstr "" + +# +msgid "Press OK to toggle the selection." +msgstr "Ok >> commutare la selezione." + +# +msgid "Press yellow to set this interface as default interface." +msgstr "Giallo >> configurare l'interfaccia come predefinita." + +msgctxt "button label, 'previous screen'" +msgid "Prev" +msgstr "Prec." + +# +msgid "Preview" +msgstr "Anteprima" + +# +msgid "Preview menu" +msgstr "Menu anteprima" + +msgid "Preview selected channel" +msgstr "Anteprima del canale selezionato" + +# +msgid "Primary DNS" +msgstr "DNS primario" + +# +msgid "Priority" +msgstr "Priorità" + +# +msgid "Process" +msgstr "Processo" + +msgid "Progress" +msgstr "Progressione" + +msgid "Progress bar left" +msgstr "Barra progressione a Sx" + +msgid "Progress bar right" +msgstr "Barra progressione a Dx" + +# +msgid "Properties of current title" +msgstr "Proprietà titolo corrente" + +# +msgid "Protect services" +msgstr "Proteggere canali" + +# +msgid "Protect setup" +msgstr "Proteggere configurazione" + +# +msgid "Provider" +msgstr "Provider" + +# +msgid "Provider to scan" +msgstr "Provider su cui cercare" + +# +msgid "Providers" +msgstr "Provider" + +msgid "Put TV in standby" +msgstr "Porre la TV in standby" + +msgid "Put receiver in standby" +msgstr "Porre il ricevitore in standby" + +msgid "Python frontend for /tmp/mmi.socket" +msgstr "Frontend python per /tmp/mmi.socket" + +# +msgid "Quick" +msgstr "Veloce" + +# +msgid "Quick zap" +msgstr "Zapping veloce" + +# +msgid "RF output" +msgstr "Output RF" + +# +msgid "RGB" +msgstr "RGB" + +# +msgid "Radio" +msgstr "Radio" + +# +msgid "Ram disk" +msgstr "Disco Ram" + +# +msgid "Random" +msgstr "Casuale" + +#, python-format +msgid "Rating defined by broadcaster - %d" +msgstr "Valutazione fornita dal broadcaster - %d" + +msgid "Rating undefined" +msgstr "Valutazione non definita" + +# +msgid "Really close without saving settings?" +msgstr "Chiudere senza salvare le modifiche?" + +msgid "Really delete done timers?" +msgstr "Rimuovere i timer conclusi?" + +# +msgid "Really exit the subservices quickzap?" +msgstr "Uscire dallo zapping veloce sottocanali?" + +# +msgid "Really reboot now?" +msgstr "Riavviare ora?" + +# +msgid "Really restart now?" +msgstr "Riavviare ora?" + +# +msgid "Really shutdown now?" +msgstr "Spegnere ora?" + +msgid "Really upgrade the frontprocessor and reboot now?" +msgstr "Aggiornare il frontprocessor e riavviare?" + +msgid "Really upgrade your settop box and reboot now?" +msgstr "Aggiornare il ricevitore e riavviare?" + +# +msgid "Reboot" +msgstr "Riavviare" + +msgid "Rec" +msgstr "Rec" + +# +msgid "Reception settings" +msgstr "Configurazione ricezione" + +# +msgid "Record" +msgstr "Registrazioni" + +# +#, python-format +msgid "Record time limited due to conflicting timer %s" +msgstr "Tempo di registrazione limitato: timer %s in conflitto!" + +# +msgid "Recorded files..." +msgstr "Registrazioni..." + +# +msgid "Recording" +msgstr "Registrazione..." + +msgid "Recording in progress" +msgstr "Registrazione in corso" + +msgid "Recording paths" +msgstr "Percorsi registrazioni" + +msgid "Recording type" +msgstr "Tipo registrazione" + +# +msgid "Recording(s) are in progress or coming up in few seconds!" +msgstr "Registrazioni in corso o in avvio a breve!" + +# +msgid "Recordings" +msgstr "Registrazioni" + +# +msgid "Recordings always have priority" +msgstr "Le registrazioni hanno sempre la priorità" + +msgid "Red button..." +msgstr "Tasto rosso..." + +msgid "Reenter new PIN" +msgstr "Ripetere il nuovo PIN" + +# +msgid "Refresh rate" +msgstr "Frequenza di refresh" + +# +msgid "Refresh rate selection." +msgstr "Selezione frequenza di refresh." + +msgid "Regard deep standby as standby" +msgstr "Gestire il deep standby come standby" + +msgid "Relative" +msgstr "Relativa" + +# +msgid "Reload" +msgstr "Ricaricare" + +msgid "Reload black-/white lists" +msgstr "Ricaricare black-whitelist" + +msgid "Reloading bouquets and services..." +msgstr "Ricarica bouquet e canali in corso..." + +msgid "Remember last service in PiP" +msgstr "" + +msgid "Remember service PIN" +msgstr "Ricordare il PIN canale" + +msgid "Remember these settings for each folder" +msgstr "Memorizzare queste impostazioni per ogni directory" + +msgid "Reminder, you have chosen to save timeshift file." +msgstr "" + +msgid "Remote control type" +msgstr "Tipo telecomando" + +# +msgid "Removal has completed." +msgstr "Rimozione completata." + +# +msgid "Remove" +msgstr "Rimuovere" + +# +msgid "Remove a mark" +msgstr "Rim. contr." + +# +msgid "Remove a nameserver entry" +msgstr "Rimuovere voce nameserver" + +# +msgid "Remove bookmark" +msgstr "Rim. contrass." + +msgid "Remove completed timers after (days)" +msgstr "Rimuovere i timer conclusi dopo (giorni)" + +# +msgid "Remove currently selected title" +msgstr "Rimuovere il titolo selezionato" + +msgid "Remove items from trash can after (days)" +msgstr "Rimuovere gli elementi dal cestino dopo (giorni)" + +# +msgid "Remove plugins" +msgstr "Rimuovere plugin" + +# +msgid "Remove title" +msgstr "Rim. titolo" + +# +msgid "Removing" +msgstr "Rimozione in corso..." + +# +#, python-format +msgid "Removing directory %s failed. (Maybe not empty.)" +msgstr "Rimozione cartella %s fallita! (Forse non è vuota!)" + +# +msgid "Removing partition table" +msgstr "Rimuovere tavola partizioni" + +# +msgid "Rename" +msgstr "Rinominare" + +msgid "Repeat" +msgstr "" + +# +msgid "Repeat type" +msgstr "Tipo ripetizione" + +# +msgid "Repeating event currently recording... What do you want to do?" +msgstr "Registrazione in corso di evento ricorrente. Cosa si desidera fare?" + +# +msgid "Repeats" +msgstr "Ripetizioni" + +msgid "Require authentication for http streams" +msgstr "" + +msgid "Required medium type:" +msgstr "Tipo di supporto richiesto:" + +msgid "Rereading partition table" +msgstr "Rilettura tavola partizioni in corso" + +msgid "Reserved" +msgstr "Riservato" + +# +msgid "Reset" +msgstr "Reset" + +# +msgid "Reset and renumerate title names" +msgstr "Reset e nuova numerazione titoli" + +msgid "Reset playback position" +msgstr "Ripristinare la posizione di riproduzione" + +# +msgid "Reset video enhancement settings to system defaults?" +msgstr "Riportare la configurazione miglioramento immagine ai valori predefiniti?" + +# +msgid "Reset video enhancement settings to your last configuration?" +msgstr "Riportare la configurazione miglioramento immagine agli ultimi valori selezionati?" + +# +msgid "Resolution" +msgstr "Risoluzione" + +# +msgid "Restart" +msgstr "Riavviare" + +# +msgid "Restart GUI now?" +msgstr "Riavviare la GUI?" + +msgid "Restart enigma" +msgstr "Riavviare enigma" + +# +msgid "Restart network" +msgstr "Riavviare la rete" + +# +msgid "Restart test" +msgstr "Ripetere il test" + +# +msgid "Restart your network connection and interfaces.\n" +msgstr "Riavviare connessioni di rete e relative interfacce.\n" + +# +msgid "Restore" +msgstr "Ripristinare" + +# +msgid "Restore backups" +msgstr "Ripristino backup." + +# +msgid "Restore is running..." +msgstr "Ripristino in corso..." + +# +msgid "Restore system settings" +msgstr "Ripristino conf. sistema" + +# +msgid "Restoring..." +msgstr "Ripristino in corso..." + +# +msgid "Resume from last position" +msgstr "Riprendere dall'ultima posizione" + +#, python-format +msgid "Resume position at %s" +msgstr "Riprendere dalla posizione %s" + +# +#. TRANSLATORS: The string "Resuming playback" flashes for a moment +#. TRANSLATORS: at the start of a movie, when the user has selected +#. TRANSLATORS: "Resume from last position" as start behavior. +#. TRANSLATORS: The purpose is to notify the user that the movie starts +#. TRANSLATORS: in the middle somewhere and not from the beginning. +#. TRANSLATORS: (Some translators seem to have interpreted it as a +#. TRANSLATORS: question or a choice, but it is a statement.) +msgid "Resuming playback" +msgstr "Riavvio riproduzione..." + +# +msgid "Return to movie list" +msgstr "Tornare a elenco registrazioni" + +# +msgid "Return to previous service" +msgstr "Tornare al canale precedente" + +msgid "Reverse bouquet buttons" +msgstr "" + +msgid "Reverse list" +msgstr "" + +# +msgid "Rewind speeds" +msgstr "Velocità REW" + +msgid "Rewrap teletext subtitles" +msgstr "Rewrap sottotitoli televideo" + +# +msgid "Right" +msgstr "Destra" + +msgid "Right from servicename" +msgstr "" + +msgid "Roll-off" +msgstr "Roll-off" + +msgid "Romanian" +msgstr "Rumeno" + +msgid "Root directory" +msgstr "Directory root" + +msgid "Rotor step position:" +msgstr "Posizione passo rotore:" + +# +msgid "Rotor turning speed" +msgstr "Velocità rotazione motore" + +msgid "Round start time on" +msgstr "Ora di inizio della rotazione" + +# +msgid "Russian" +msgstr "Russo" + +# +msgid "S-Video" +msgstr "S-Video" + +msgid "SID" +msgstr "SID" + +msgid "SINGLE LAYER DVD" +msgstr "DVD singolo strato" + +# +msgid "SNR" +msgstr "SNR" + +# +msgid "SNR:" +msgstr "SNR:" + +# +msgid "SSID:" +msgstr "SSID:" + +msgid "Same resolution as skin" +msgstr "" + +# +msgid "Sat" +msgstr "Sab" + +# +msgid "Satellite" +msgstr "Satellite" + +# +msgid "Satellite dish setup" +msgstr "Configurazione parabola" + +msgid "Satellite equipment" +msgstr "Dispositivo satellitare" + +# +msgid "Satellite equipment setup" +msgstr "Configurazione dispositivo satellitare" + +msgid "Satellite longitude:" +msgstr "Longitudine satellite:" + +# +msgid "Satellites" +msgstr "Satelliti" + +# +msgid "Satfinder" +msgstr "Satfinder" + +# +msgid "Sats" +msgstr "Satelliti" + +# +msgid "Saturation" +msgstr "Saturazione" + +# +msgid "Saturday" +msgstr "Sabato" + +# +msgid "Save" +msgstr "Salvare" + +# +msgid "Save playlist" +msgstr "Salvare la playlist" + +msgid "Save timeshift file" +msgstr "" + +msgid "Save timeshift file in movie directory" +msgstr "" + +# +msgid "Scaler sharpness" +msgstr "Nitidezza scaler" + +# +msgid "Scaling mode" +msgstr "Modalità scaling" + +msgid "Scan" +msgstr "" + +msgid "Scan " +msgstr "Ricercare su " + +#. TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' +#, python-format +msgid "Scan %s" +msgstr "Ricercare %s" + +# +#. TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' +#, python-format +msgid "Scan %s band" +msgstr "Ricerca su banda %s" + +# +msgid "Scan additional SR" +msgstr "Ricerca su SR aggiuntivi" + +# +msgid "Scan files..." +msgstr "Ricerca file..." + +# +msgid "Scan wireless networks" +msgstr "Ricerca reti wireless" + +msgid "Scan your network for wireless access points and connect to them using your selected wireless device.\n" +msgstr "Analizzare la rete alla ricerca di access point wireless e collegarsi ad essi tramite l'adattatore WLAN selezionato\n" + +#, python-format +msgid "Scanning %s..." +msgstr "Ricerca in corso su %s..." + +#. TRANSLATORS: The stb is performing a channel scan, progress percentage is printed in '%d' (and '%%' will show a single '%' symbol) +#, python-format +msgid "Scanning - %d%% completed" +msgid_plural "Scanning - %d%% completed" +msgstr[0] "Suche - %d%% beendet" +msgstr[1] "Suche - %d%% beendet" + +#, python-format +msgid "Scanning completed, %d channel found" +msgid_plural "Scanning completed, %d channels found" +msgstr[0] "Ricerca completata, rilevato %d canale" +msgstr[1] "Ricerca completata, rilevati %d canali" + +msgid "Scanning failed!" +msgstr "Ricerca fallita." + +msgid "Scanning..." +msgstr "Ricerca in corso..." + +# +msgid "Scans default lamedbs sorted by satellite with a connected dish positioner" +msgstr "Ricerca lamedb predefiniti, ordinati per satellite, tramite parabola motorizzata" + +# +msgid "Search east" +msgstr "Cercare a est" + +# +msgid "Search west" +msgstr "Cercare a ovest" + +msgid "Searching" +msgstr "Ricerca in corso" + +msgid "Searching east ..." +msgstr "Ricerca in corso a est..." + +# +msgid "Searching for available updates. Please wait..." +msgstr "Ricerca aggiornamenti disponibili in corso. Attendere..." + +# +msgid "Searching for new installed or removed packages. Please wait..." +msgstr "Ricerca nuovi pacchetti installati o rimossi in corso. Attendere..." + +msgid "Searching west ..." +msgstr "Ricerca in corso a ovest..." + +msgid "Second cable of motorized LNB" +msgstr "" + +# +msgid "Secondary DNS" +msgstr "DNS Secondario" + +# +msgid "Seek" +msgstr "Ricerca" + +# +msgid "Seek backward" +msgstr "Ricercare indietro" + +# +msgid "Seek backward (enter time)" +msgstr "Ricercare indietro (inserire tempo)" + +# +msgid "Seek forward" +msgstr "Ricercare avanti" + +# +msgid "Seek forward (enter time)" +msgstr "Ricercare avanti (inserire tempo)" + +# +msgid "Select" +msgstr "Selezionare" + +# +msgid "Select CAId" +msgstr "Selezionare CAId" + +# +msgid "Select HDD" +msgstr "Selezionare HDD" + +# +msgid "Select a bouquet" +msgstr "Selezionare un bouquet" + +# +msgid "Select a movie" +msgstr "Selezionare una registrazione" + +# +msgid "Select a network adapter" +msgstr "Selezionare adattatore di rete" + +# +msgid "Select a skin" +msgstr "Selezionare una skin" + +# +msgid "Select a tuner" +msgstr "Selezionare un tuner" + +# +msgid "Select a wireless network" +msgstr "Selezionare una rete wireless" + +msgid "Select action" +msgstr "" + +#, python-format +msgid "Select action for timer %s:" +msgstr "" + +msgid "Select all" +msgstr "" + +msgid "Select an image to be downloaded" +msgstr "Selezionare l'immagine da scaricare" + +# +msgid "Select audio track" +msgstr "Selezionare una traccia audio" + +# +msgid "Select backup files" +msgstr "Selezionare file di backup" + +# +msgid "Select backup location" +msgstr "Selezionare destinazione backup" + +# +msgid "Select channel to record from" +msgstr "Selezionare il canale di registrazione" + +msgid "Select copy destination for:" +msgstr "Selezionare la destinazione per la copia di:" + +msgid "Select default EPG type..." +msgstr "Selezionare il tipo di EPG predefinito..." + +msgid "Select desired image from feed list" +msgstr "Selezionare l'immagine desiderata dalla lista feed" + +msgid "Select destination for:" +msgstr "Selezionare la destinazione per:" + +msgid "Select files for backup." +msgstr "Selezionare i file per il backup" + +# +msgid "Select files/folders to backup" +msgstr "Selezionare file/cartelle per il backup." + +msgid "Select input device" +msgstr "Selezionare il dispositivo di input" + +msgid "Select input device." +msgstr "Selezionare il dispositivo di input." + +# +msgid "Select interface" +msgstr "Selezionare l'interfaccia" + +# +msgid "Select location" +msgstr "Selezionare destinazione" + +# +msgid "Select movie" +msgstr "Selezionare registrazione" + +# +msgid "Select provider to add..." +msgstr "Selezionare il provider da aggiungere..." + +# +msgid "Select refresh rate" +msgstr "Selezionare la frequenza di refresh" + +msgid "Select satellites" +msgstr "" + +# +msgid "Select service to add..." +msgstr "Selezionare il canale da aggiungere..." + +msgid "Select sort method:" +msgstr "" + +# +msgid "Select target folder" +msgstr "Selezionare cartella destinazione" + +# +msgid "Select the movie path" +msgstr "Selezionare percorso registrazioni" + +# +msgid "Select upgrade source" +msgstr "Selezionare la sorgente aggiornamento" + +# +msgid "Select upgrade source to edit." +msgstr "Selezionare la sorgente aggiornamento da modificare." + +# +msgid "Select video input with up/down buttons" +msgstr "Selezionare l'ingresso video con i tasti Sù/Giù" + +# +msgid "Select video mode" +msgstr "Selezionare la modalità video" + +# +msgid "Select wireless network" +msgstr "Selezionare una rete wireless" + +msgid "Select your provider, and press OK to start the scan" +msgstr "Selezionare il proprio provider. Ok >> Avviare la ricerca" + +msgid "Selecting satellites 1 (USALS)" +msgstr "" + +msgid "Selecting satellites 2 (USALS)" +msgstr "" + +# +msgid "Send DiSEqC only on satellite change" +msgstr "Inviare DiSEqC solo su cambio satellite" + +msgid "Separate titles with a main menu" +msgstr "Separare i titoli con un menu principale" + +# +msgid "Sequence repeat" +msgstr "Ripetizione sequenza" + +# +msgid "Serbian" +msgstr "Serbo" + +# +msgid "Service" +msgstr "Canale" + +# +msgid "Service has been added to the favourites." +msgstr "Canale aggiunto a preferiti!" + +# +msgid "Service has been added to the selected bouquet." +msgstr "Canale aggiunto al bouquet selezionato!" + +msgid "Service info" +msgstr "Info canale" + +# +msgid "" +"Service invalid!\n" +"(Timeout reading PMT)" +msgstr "" +"Canale non valido!\n" +"(Timeout in lettura PMT)" + +# +msgid "Service name" +msgstr "Nome canale" + +# +msgid "" +"Service not found!\n" +"(SID not found in PAT)" +msgstr "" +"Canale non trovato!\n" +"(SID non trovato in PAT)" + +msgid "Service reference" +msgstr "Rif. canale:" + +# +msgid "Service scan" +msgstr "Ricerca canali" + +# +msgid "Service searching" +msgstr "Ricerca canali" + +# +msgid "Service title mode" +msgstr "Modalità titolo canale" + +# +msgid "" +"Service unavailable!\n" +"Check tuner configuration!" +msgstr "" +"Canale non disponibile!\n" +"Controllare la configurazione tuner!" + +# +msgid "Services" +msgstr "Canali" + +msgid "Set default" +msgstr "" + +msgid "Set end time" +msgstr "Conf. ora fine" + +msgid "Set fixed" +msgstr "Indirizzo statico" + +msgid "Set fps for external subtitles" +msgstr "" + +msgid "Set interface as default Interface" +msgstr ">> interfaccia predefinita" + +msgid "Set limits" +msgstr "Impostare i limiti" + +msgid "Set the type of the progress indication in the channel selection screen." +msgstr "Configurare l'indicatore di progresso in selezione canali." + +msgid "Set time window to 1 hour" +msgstr "Impostare la finestra temporale a 1 ora" + +msgid "Set time window to 2 hours" +msgstr "Impostare la finestra temporale a 2 ore" + +msgid "Set time window to 3 hours" +msgstr "Impostare la finestra temporale a 3 ore" + +msgid "Set time window to 4 hours" +msgstr "Impostare la finestra temporale a 4 ore" + +msgid "Set time window to 5 hours" +msgstr "Impostare la finestra temporale a 5 ore" + +msgid "Set time window to 6 hours" +msgstr "" + +# +msgid "Set voltage and 22KHz" +msgstr "Configurare voltaggio e 22KHz" + +# +msgid "Settings" +msgstr "Config." + +# +msgid "Setup" +msgstr "Impostazioni" + +msgid "Setup menu" +msgstr "Menu impostazioni" + +# +msgid "Setup mode" +msgstr "Livello di accesso impostazioni" + +msgid "Setup your positioner" +msgstr "Configurare il posizionatore" + +msgid "Setup your satellite equipment" +msgstr "Configurazione dispositivo satellitare" + +#, python-format +msgid "Shall the USB stick wizard proceed and program the image file %s into flash memory?" +msgstr "Procedere con la configurazione guidata e installare il file immagine %s nella memoria flash?" + +# +msgid "Sharpness" +msgstr "Nitidezza" + +msgid "Short filenames" +msgstr "Nomi brevi" + +msgid "Show EIT now/next in infobar" +msgstr "Mostrare evento in corso/successivo sulla barra informazioni" + +# +msgid "Show EPG for current channel..." +msgstr "Mostrare EPG per il canale corrente..." + +# +msgid "Show EPG..." +msgstr "Mostrare EPG..." + +msgid "Show Games show" +msgstr "Show/Telequiz" + +msgid "Show SNR percentage instead of dB value" +msgstr "Mostrare la percentuale SNR anzichè il valore in dB" + +msgid "Show VCR scart on main menu" +msgstr "" + +# +msgid "Show WLAN status" +msgstr "Mostrare stato WLAN" + +msgid "Show animation while busy" +msgstr "Mostrare animazione se occupato" + +# +msgid "Show background in radio mode" +msgstr "Mostrare sfondo in modalità radio" + +msgid "Show bouquet selection menu" +msgstr "Mostrare il menu di selezione bouquet" + +msgid "Show busy indicator when the system is busy." +msgstr "Opzione per abilitare la visualizzazione di un indicatore quando il sistema è occupato." + +msgid "Show channel numbers in channel selection" +msgstr "Visualizzare il numero del canale in selezione canali" + +msgid "Show columns" +msgstr "" + +msgid "Show crypto icons" +msgstr "" + +msgid "Show crypto info in infobar" +msgstr "Mostrare informazioni codifica nella barra informazioni." + +msgid "Show detailed event info" +msgstr "Mostrare informazioni dettagliate evento" + +# +msgid "Show event details" +msgstr "Mostrare dettagli evento" + +msgid "Show event-progress in channel selection" +msgstr "Mostrare il progresso evento in selezione canali" + +# +msgid "Show extended description" +msgstr "Mostrare descrizione estesa" + +# +msgid "Show extensions..." +msgstr "Mostrare estensioni..." + +msgid "Show icon for new/unseen items" +msgstr "Visualizzare icona per elementi nuovi/non visti" + +msgid "Show in extensions menu" +msgstr "" + +# +msgid "Show info" +msgstr "Mostrare info" + +msgid "Show info line" +msgstr "Mostrare info" + +# +msgid "Show infobar on channel change" +msgstr "Mostrare barra informazioni su cambio canale" + +# +msgid "Show infobar on event change" +msgstr "Mostrare barra informazioni su cambio evento" + +# +msgid "Show infobar on skip forward/backward" +msgstr "Mostrare barra informazioni su FFW/REW" + +msgid "Show latest commits on sourceforge" +msgstr "" + +# +msgid "Show message when recording starts" +msgstr "Mostrare messaggio su avvio registrazione" + +# +msgid "Show movie lengths in movielist" +msgstr "Caricare durata registrazioni nell'elenco" + +msgid "Show multi channel EPG" +msgstr "" + +msgid "Show picons in channel list" +msgstr "" + +# +msgid "Show positioner movement" +msgstr "Mostrare il movimento motore" + +msgid "Show screensaver" +msgstr "" + +msgid "Show second infobar" +msgstr "Mostrare la seconda barra informazioni per" + +msgid "Show service type icons" +msgstr "" + +# +msgid "Show services beginning with" +msgstr "Mostrare i canali che iniziano per" + +# +msgid "Show shutdown menu" +msgstr "Mostrare menu di arresto" + +msgid "Show single service EPG" +msgstr "" + +msgid "Show status icons in Movielist" +msgstr "" + +msgid "Show status icons in movie list" +msgstr "Mostrare icone di stato in elenco registrazioni" + +msgid "Show status icons in movielist" +msgstr "Mostrare icone di stato in elenco registrazioni" + +# +msgid "Show tag menu" +msgstr "Mostrare il menu etichette" + +# +msgid "Show the radio player..." +msgstr "Radio..." + +# +msgid "Show the tv player..." +msgstr "TV..." + +msgid "Show warning when timeshift is stopped" +msgstr "" + +msgid "Shows the state of your wireless LAN connection.\n" +msgstr "Mostrare lo stato della connessione di rete wireless.\n" + +# +msgid "Shuffle playlist" +msgstr "Riproduzione casuale" + +# +msgid "Shutdown" +msgstr "Spegnere" + +msgid "Shutdown when in Standby" +msgstr "" + +msgid "Side by side" +msgstr "Fianco a fianco" + +msgid "Signal OK, proceeding" +msgstr "Segnale Ok, si procede" + +msgid "Signal quality" +msgstr "Qualità segnale" + +# +msgid "Signal strength:" +msgstr "Potenza Segnale:" + +msgid "Signal: " +msgstr "Segnale: " + +# +msgid "Similar" +msgstr "Simile" + +# +msgid "Similar broadcasts:" +msgstr "Programmi simili:" + +# +msgid "Simple" +msgstr "Semplice" + +# +msgid "Simple titleset (compatibility for legacy players)" +msgstr "Set titoli semplice (compatibilità con player legacy)" + +# +msgid "Single" +msgstr "Singolo" + +# +msgid "Single EPG" +msgstr "EPG singolo" + +# +msgid "Single satellite" +msgstr "Satellite singolo" + +# +msgid "Single step (GOP)" +msgstr "Passo-Passo (GOP)" + +# +msgid "Single transponder" +msgstr "Transponder singolo" + +msgid "Site latitude" +msgstr "Latitudine" + +msgid "Site longitude" +msgstr "Longitudine" + +# +msgid "Skin" +msgstr "Skin" + +# +msgid "Skins" +msgstr "Skin..." + +# +msgid "Skip empty services" +msgstr "Trascurare i canali vuoti" + +msgid "Skip internet connection check (disables automatic package installation)" +msgstr "Omettere la verifica della connessione a internet (disabiliterà l'installazione automatica di pachetti)" + +# +msgid "Sleep timer" +msgstr "Timer di spegnimento" + +msgid "SleepTimer Configuration" +msgstr "" + +msgid "Sleeptimer" +msgstr "" + +# +msgid "Slide picture in loop" +msgstr "Riproduzione continua" + +# +msgid "Slide show interval (sec.)" +msgstr "Intevallo slideshow (sec.)" + +# +#, python-format +msgid "Slot %d" +msgstr "Slot %d" + +msgid "Slovak" +msgstr "Slovacco" + +# +msgid "Slovenian" +msgstr "Sloveno" + +# +msgid "Slow" +msgstr "Lento" + +# +msgid "Slow motion speeds" +msgstr "Velocità rallenty" + +# +msgid "Small progress" +msgstr "Barra progressione (piccola)" + +msgid "Social/Political/Economics" +msgstr "Sociale/Politica/Economia" + +msgid "SoftCam / CI" +msgstr "SoftCam / CI" + +# +msgid "Softcam type" +msgstr "Tipo softcam" + +# +msgid "Software" +msgstr "Software" + +# +msgid "Software management" +msgstr "Gestione software" + +msgid "Software manager setup" +msgstr "Configurazione software manager" + +# +msgid "Software restore" +msgstr "Ripristino software" + +# +msgid "Software update" +msgstr "Aggiornamento software" + +msgid "Softwaremanager information" +msgstr "Informazioni su software manager" + +# +msgid "Some plugins are not available:\n" +msgstr "Alcuni plugin non sono disponibili:\n" + +# +#, python-format +msgid "Sorry, %s has not been installed!" +msgstr "%s non installato." + +msgid "Sorry, deleting directories can (for now) only be done through the trash can." +msgstr "Le directory possono essere cancellate solo attraverso il cestino (per ora)." + +# +msgid "Sorry, no backups found!" +msgstr "Nessun backup trovato." + +# +msgid "Sorry, no details available!" +msgstr "Dettagli non disponibili." + +# +msgid "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." +msgstr "" +"Destinazione backup non aggiornabile.\n" +"Selezionarne un'altra." + +msgid "Sort" +msgstr "Ordine" + +# +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort A-Z" +msgstr "Ordine A-Z" + +msgid "Sort by" +msgstr "" + +msgid "Sort list:" +msgstr "" + +# +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort time" +msgstr "Ordine per ora" + +# +msgid "Sound" +msgstr "Audio" + +# +msgid "Sound carrier" +msgstr "Portante audio" + +msgid "Source request" +msgstr "Richiesta sorgente" + +# +msgid "South" +msgstr "Sud" + +# +msgid "Spanish" +msgstr "Spagnolo" + +msgid "Specify the end time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the end time until the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify the start time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the start time when the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify timeframe to ignore inactivity sleeptimer" +msgstr "" + +msgid "Specify timeframe to ignore the shutdown in standby" +msgstr "" + +# +msgid "Split preview mode" +msgstr "Modalità anteprima separata" + +msgid "Splitscreen" +msgstr "" + +msgid "Sports" +msgstr "Sport" + +# +msgid "Standard" +msgstr "Predefinito" + +msgid "Standart list" +msgstr "" + +# +msgid "Standby" +msgstr "Standby" + +# +msgid "Standby / restart" +msgstr "Standby / Riavvio" + +msgid "Standby after current event" +msgstr "" + +#, python-format +msgid "Standby fan %d PWM" +msgstr "PWM standby ventola %d" + +#, python-format +msgid "Standby fan %d voltage" +msgstr "Voltaggio standby ventola %d" + +msgid "Standby in " +msgstr "" + +msgid "StandbyLED" +msgstr "" + +# +msgid "Start from the beginning" +msgstr "Partire dall'inizio" + +msgid "Start offline decode" +msgstr "Avviare decodifica offline" + +# +msgid "Start recording?" +msgstr "Avviare la registrazione?" + +# +msgid "Start test" +msgstr "Avviare il test" + +# +msgid "Start time" +msgstr "Ora avvio" + +msgid "Start time to ignore inactivity sleeptimer" +msgstr "" + +msgid "Start time to ignore shutdown in standby" +msgstr "" + +# +msgid "Start timeshift" +msgstr "Avviare timeshift" + +msgid "Start with list screen" +msgstr "Avviare con schermata elenco" + +# +msgid "Starting on" +msgstr "Avvio il" + +msgid "Startup the set top box in standby" +msgstr "" + +msgid "Startup to Standby" +msgstr "" + +msgid "Step east" +msgstr "Passo a est" + +msgid "Step west" +msgstr "Passo a ovest" + +msgid "Stepped east" +msgstr "Corretto a est" + +msgid "Stepped west" +msgstr "Corretto a ovest" + +# +msgid "Stop" +msgstr "Stop" + +# +msgid "Stop PiP" +msgstr "Chiudere PiP" + +# +msgid "Stop current event and disable coming events" +msgstr "Arrestare l'evento corrente e disabilitare i futuri" + +# +msgid "Stop current event but not coming events" +msgstr "Arrestare l'evento corrente ma non i futuri" + +# +msgid "Stop entry" +msgstr "Arrestare voce" + +# +msgid "Stop playing this movie?" +msgstr "Arrestare la riproduzione?" + +msgid "Stop recording" +msgstr "Arrestare registrazione" + +msgid "Stop recording and delete" +msgstr "Arrestare la registrazione e rimuoverla" + +msgid "Stop service on return to movie list" +msgstr "" + +# +msgid "Stop test" +msgstr "Arrestare il test" + +msgid "Stop testing plane after # failed transponders" +msgstr "Arrestare il test dopo # transponder falliti" + +msgid "Stop testing plane after # successful transponders" +msgstr "Arrestare il test dopo # transponder controllati correttamente" + +msgid "Stop timer recording" +msgstr "" + +# +msgid "Stop timeshift" +msgstr "Arrestare timeshift" + +# +msgid "Stop timeshift?" +msgstr "Arrestare timeshift ?" + +msgid "Stopped" +msgstr "Arrestato" + +msgid "Store at index" +msgstr "Memorizzare all'indice" + +# +msgid "Store position" +msgstr "Memorizzare posizione" + +# +msgid "Stored position" +msgstr "Posizione memorizzata" + +msgid "Stream" +msgstr "Stream" + +msgid "Stream request" +msgstr "Richiesta stream" + +msgid "Strongest position" +msgstr "Miglior posizione" + +# +msgid "Subservice list..." +msgstr "Elenco sottocanali..." + +# +msgid "Subservices" +msgstr "Sottocanali" + +msgid "Subtitle Quickmenu" +msgstr "" + +# +msgid "Subtitle alignment" +msgstr "Allineamento sottotitoli" + +msgid "Subtitle border width" +msgstr "Spessore bordi sottotitoli" + +msgid "Subtitle delay when timing is bad" +msgstr "" + +msgid "Subtitle delay when timing lacks" +msgstr "Ritardo sottotitoli su mancanza temporizzazione" + +# +msgid "Subtitle font size" +msgstr "Dimensione carattere sottotitoli" + +msgid "Subtitle language selection 1" +msgstr "Sottotitoli: lingua 1" + +msgid "Subtitle language selection 2" +msgstr "Sottotitoli: lingua 2" + +msgid "Subtitle language selection 3" +msgstr "Sottotitoli: lingua 3" + +msgid "Subtitle language selection 4" +msgstr "Sottotitoli: lingua 4" + +# +msgid "Subtitle position" +msgstr "Posizione sottotitoli" + +# +msgid "Subtitle selection" +msgstr "Selezione sottotitoli" + +msgid "Subtitle selection..." +msgstr "Selezione sottotitoli..." + +msgid "Subtitle settings" +msgstr "Configurazione sottotitoli" + +# +msgid "Subtitles" +msgstr "Sottotitoli" + +# +msgid "Sun" +msgstr "Dom" + +# +msgid "Sunday" +msgstr "Domenica" + +# +msgid "Swap PiP and main picture" +msgstr "Scambiare PiP e schermo principale" + +msgid "Swap services" +msgstr "Scambiare canali" + +# +msgid "Swedish" +msgstr "Svedese" + +msgid "Switch TV to correct input" +msgstr "Commutare la TV sull'ingresso corretto" + +msgid "Switch between filelist/playlist" +msgstr "" + +msgid "Switch between normal mode and list mode" +msgstr "Commutare tra modalità normale ed elenco" + +msgid "Switch to HDMI in mode" +msgstr "" + +# +msgid "Switch to filelist" +msgstr "Passare all'elenco file" + +msgid "Switch to next channel" +msgstr "" + +# +msgid "Switch to next channel in history" +msgstr "Canale successivo nella cronologia" + +# +msgid "Switch to next sub service" +msgstr "Sottocanale seguente" + +# +msgid "Switch to playlist" +msgstr "Passare alla playlist" + +# +msgid "Switch to previous channel" +msgstr "Sottocanale precedente" + +# +msgid "Switch to previous channel in history" +msgstr "Canale precedente nella cronologia" + +# +msgid "Switch to previous sub service" +msgstr "Sottocanale precedente" + +msgid "Switchable tuner types:" +msgstr "Tipi di tuner commutabili:" + +msgid "Symbol rate" +msgstr "Symbol rate" + +msgid "Symbol rate:" +msgstr "" + +msgid "Sync failure moving back to origin !" +msgstr "Sincronizzazione fallita tornando all'origine" + +# +msgid "System" +msgstr "Sistema" + +#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) +msgid "TRANSLATOR_INFO" +msgstr "" +"Traduzione italiana\n" +"OpenPLi enigma2\n" +"a cura di Dario Croci\n" +"www.linsat.net\n" +"Supporto: spaeleus@croci.org\n" +"aggiornamento: 18 dicembre 2012" + +# +msgid "TS file is too large for ISO9660 level 1!" +msgstr "File TS troppo grande per ISO9660 livello 1!" + +msgid "TSID" +msgstr "TSID" + +msgid "TV physical address report" +msgstr "Riportare l'indirizzo fisico della TV" + +msgid "TXT PID" +msgstr "PID TXT" + +# +msgid "Table of contents for collection" +msgstr "Elenco contenuti raccolta" + +# +msgid "Tags" +msgstr "Etichette" + +msgid "Teletext subtitle color" +msgstr "Colore sottotitoli televideo" + +# +msgid "Temperature and fan control" +msgstr "Controllo temperatura e ventola" + +# +msgid "Terrestrial" +msgstr "Terrestre" + +# +msgid "Terrestrial provider" +msgstr "Provider terrestre" + +# +msgid "Test DiSEqC settings" +msgstr "Test configurazione DiSEqC" + +# +msgid "Test mode" +msgstr "Modalità test" + +msgid "Test the network configuration of your receiver.\n" +msgstr "Verificare la configurazione di rete del ricevitore.\n" + +# +msgid "Test type" +msgstr "Tipo test" + +# +msgid "Text color" +msgstr "Colore testo" + +msgid "Thai" +msgstr "Thai" + +# +msgid "" +"Thank you for using the wizard.\n" +"Please press OK to continue." +msgstr "" +"Grazie per aver utilizzato questa configurazione guidata.\n" +"Premere OK per continuare." + +# +msgid "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." +msgstr "Il ricevitore è ora pronto per essere utilizzato./nOK >> continuare." + +msgid "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?" +msgstr "Lo standard DVD non supporta stream video H.264 (HDTV). Creare un DVD con formato dati speciale? (non sarà leggibile da lettori DVD standard)" + +msgid "The PIN code has been changed successfully." +msgstr "Codice PIN aggiornato correttamente." + +msgid "The PIN codes you entered are different." +msgstr "I codici PIN inseriti sono diversi!" + +msgid "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" +msgstr "" +"La penna USB è stata configurata per essere avviabile.\n" +"Ora si può scaricare il file immagine .NFI!" + +# +msgid "The backup failed. Please choose a different backup location." +msgstr "Backup fallito! Selezionare una destinazione differente per il backup." + +#, python-format +msgid "" +"The current beta image might not be stable.\n" +"For more information see %s." +msgstr "" +"L'immagine beta corrente potrebbe non essere stabile.\n" +"Per maggiori informazioni: %s." + +#, python-format +msgid "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." +msgstr "" +"La directory %s è in sola lettura.\n" +"Controllare di aver scelto una directory in cui sia possibile scrivere." + +# +#, python-format +msgid "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" +msgstr "" +"Rilevato il seguente dispositivo:\n" +"\n" +"%s\n" +"\n" +"Installare il flasher USB su questa penna?" + +# +msgid "The following files were found..." +msgstr "Trovati i seguenti file..." + +msgid "The md5sum validation failed, the file may be corrupted!" +msgstr "Verifica md5sum fallita: il file potrebbe essere corrotto!" + +# +msgid "" +"The network wizard extension is not installed!\n" +"Please install it." +msgstr "" +"L'estensione NetworkWizard non è installata.\n" +"Provvedere a installarla." + +# +#, python-format +msgid "The path %s already exists." +msgstr "Percorso %s già esistente." + +# +msgid "The pin code you entered is wrong." +msgstr "Inserito codice PIN errato!" + +# +#, python-format +msgid "The results have been written to %s." +msgstr "Risultati salvati su %s." + +# +msgid "The sleep timer has been activated." +msgstr "Timer di spegnimento attivato!" + +# +msgid "The sleep timer has been disabled." +msgstr "Timer di spegnimento disattivato!" + +# +msgid "" +"The software management extension is not installed!\n" +"Please install it." +msgstr "" +"L'estensione Sofwaremanagement non è installata.\n" +"Provvedere a installarla." + +#, python-format +msgid "The status of the current beta image could not be checked because %s can not be reached." +msgstr "Lo stato della immagine beta corrente non può essere verificato: %s non raggiungibile." + +# +msgid "The timer file (timers.xml) is corrupt and could not be loaded." +msgstr "File Timer (timers.xml) corrotto: NON caricabile!" + +# +msgid "The user interface of your receiver is restarting" +msgstr "Riavvio interfaccia utente del ricevitore in corso" + +msgid "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" +msgstr "" +"L'interfaccia utente del ricevitore si sta riavviando\n" +"a causa di un errore in mytest.py" + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." +msgstr "" +"Il plugin WirelessLan non è installato!\n" +"Installarlo per poterlo configurare." + +# +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it." +msgstr "" +"Plugin WirelessLAN non installato!\n" +"Installarlo per poterlo abilitare." + +# +msgid "The wizard can backup your current settings. Do you want to do a backup now?" +msgstr "Il wizard permette di effettuare un backup della configurazione. Farlo ora?" + +#, python-format +msgid "The wizard found a configuration backup. Do you want to restore your old settings from %s?" +msgstr "Il wizard ha rilevato un backup delle configurazioni. Ripristinare le vecchie configurazioni da %s?" + +# +msgid "The wizard is finished now." +msgstr "Il wizard è terminato!" + +# +msgid "There are at least " +msgstr "Sono presenti almeno " + +# +#, python-format +msgid "There are at least %s updates available." +msgstr "Aggiornamenti disponibili: %s (minimo)" + +# +msgid "There are currently no outstanding actions." +msgstr "Nessuna azione in sospeso al momento." + +# +msgid "There are no updates available." +msgstr "Nessun aggiornamento disponibile." + +msgid "There is no signal to lock on !" +msgstr "Lock impossibile: segnale non presente." + +# +msgid "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" +msgstr "" +"Potrebbe non esserci spazio sufficiente sulla partizione prescelta.\n" +"Procedere comunque?" + +# +msgid "This DVD RW medium is already formatted - reformatting will erase all content on the disc." +msgstr "Il DVD-RW è già formattato - una nuova formattazione cancellerà tutto il contenuto del disco!" + +msgid "" +"This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!" +msgstr "" +"Questo plugin permette di configurare una penna USB in modo che possa essere utilizzata per ripristinare il firmware del ricevitore senza l'utilizzo di rete o connessione WLAN.\n" +"Per prima cosa occorre predisporre la penna USB in modo che risulti avviabile.\n" +"Successivamente, un'immagine .NFI potrà essere scaricata dal server aggiornamenti e salvata sulla penna USB.\n" +"Se si dispone di una penna USB già configurata come avviabile, inserirla ora. In caso contrario inserire una penna USB dalla capacità di almeno 64 MB." + +# +msgid "This plugin is installed." +msgstr "Questo plugin è installato." + +# +msgid "This plugin is not installed." +msgstr "Questo plugin non è installato." + +# +msgid "This plugin will be installed." +msgstr "Questo plugin verrà installato." + +# +msgid "This plugin will be removed." +msgstr "Questo plugin verrà rimosso." + +#, python-format +msgid "This receiver cannot decode %s streams!" +msgstr "Impossibile decodificare stream %s." + +msgid "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration" +msgstr "" +"Questo test verifica la configurazione dei Nameserver.\n" +"Se si ottiene il messaggio \"non confermato\":\n" +"- Verificare la configurazione della scheda, del servizio DHCP e dei cavi;\n" +"- Se i nameserver sono stati configurati manualmente verificare le voci della configurazione Nameserver." + +msgid "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" +msgstr "" +"Questo test verifica la funzionalità della connessione di rete cablata.\n" +"Se si ottiene il messaggio \"non connesso\":\n" +"- Verificare che il cavo sia collegato correttamente;\n" +"- Verificare che il cavo sia integro e del tipo adatto." + +msgid "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" +msgstr "" +"Questo test verifica che alla scheda venga assegnato un indirizzo IP valido.\n" +"Se si ottiene il messaggio \"non confermato\":\n" +"- Non è stato trovato un indirizzo valido;\n" +"- Controllare il servizio DHCP, i cavi e la configurazione della scheda." + +msgid "" +"This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." +msgstr "" +"Questo test verifica se la connessione di rete locale è configurata per l'assegnazione automatica IP tramite DHCP.\n" +"Se si ottiene il messaggio [Disabilitato]:\n" +"- La rete locale è configurata per utilizzare l'assegnazione manuale dell'indirizzo IP;\n" +"- Verificare di aver inserito le informazioni corrette nel menu di configurazione della rete.\n" +"Se si ottiene il messaggio [Abilitato]:\n" +"- Verificare che il servizio DHCP sulla rete sia configurato correttamente e operativo." + +# +msgid "This test detects your configured LAN adapter." +msgstr "Questo test individua la scheda di rete locale installata." + +msgid "" +"This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\n" +"Are you sure?" +msgstr "" +"L'operazione (ri)calcolerà tutte le posizioni del rotore e potrebbe rimuovere posizioni già memorizzate in precedenza.\n" +"Eseguire?" + +# +msgid "Three" +msgstr "Tre" + +# +msgid "Threshold" +msgstr "Soglia" + +# +msgid "Thu" +msgstr "Gio" + +# +msgid "Thumbnails" +msgstr "Miniature" + +# +msgid "Thursday" +msgstr "Giovedì" + +# +msgid "Time" +msgstr "Ora" + +# +msgid "Time scale" +msgstr "Scala tempo" + +# +msgid "Timer" +msgstr "Timer" + +msgid "Timer Overview" +msgstr "" + +# +msgid "Timer edit" +msgstr "Mod. timer" + +# +msgid "Timer editor" +msgstr "Editor timer" + +# +msgid "Timer entry" +msgstr "Voce timer" + +# +msgid "Timer log" +msgstr "Log timer" + +# +msgid "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" +msgstr "" +"Sovrapposizione timer rilevata in timers.xml!\n" +"Ricontrollare!" + +# +msgid "Timer overview" +msgstr "Panoramica timer" + +# +msgid "Timer recording location" +msgstr "Destinazione timer registrazioni" + +# +msgid "Timer sanity error" +msgstr "Errore congruenza timer!" + +# +msgid "Timer selection" +msgstr "Selezione timer" + +msgid "Timer selection..." +msgstr "" + +# +msgid "Timer type" +msgstr "Tipo timer" + +# +msgid "Timeshift" +msgstr "Timeshift" + +msgid "Timeshift Live" +msgstr "" + +# +msgid "Timeshift location" +msgstr "Percorso timeshift" + +# +msgid "Timeshift not possible!" +msgstr "Timeshift impossibile!" + +# +msgid "Timezone" +msgstr "Fuso orario" + +# +msgid "Title" +msgstr "Titolo" + +# +msgid "Title properties" +msgstr "Proprietà titolo" + +# +msgid "Titleset mode" +msgstr "Modalità set titoli" + +msgid "To audio selection" +msgstr ">> Selezione audio" + +msgid "To subtitle selection" +msgstr ">> Selezione sottotitoli" + +msgid "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." +msgstr "" +"Per aggiornare il firmware del ricevitore, seguire le seguenti indicazioni:\n" +"1) Spegnere il ricevitore (interruttore posteriore) e assicurarsi di inserire una penna USB avviabile.\n" +"2) Riaccendere il ricevitore (interrutore posteriore) tenendo premuto il pulsante GIÙ per 10 secondi.\n" +"3) Attendere l'avvio del ricevitore e seguire le istruzioni della procedura guidata." + +# +msgid "Today" +msgstr "Oggi" + +# +msgid "Toggle a cut mark at the current position" +msgstr "Commutare contrassegno di taglio qui" + +# +msgid "Tone amplitude" +msgstr "Ampiezza tono" + +# +msgid "Tone mode" +msgstr "Modalità tono" + +# +msgid "Toneburst" +msgstr "Toneburst" + +# +msgid "Toneburst A/B" +msgstr "Toneburst A/B" + +msgid "Top and bottom" +msgstr "Alto e basso" + +# +msgid "Track" +msgstr "Traccia" + +# +msgid "Translation" +msgstr "Traduzione" + +# +msgid "Translation:" +msgstr "Traduzione:" + +msgid "Translations" +msgstr "" + +# +msgid "Transmission mode" +msgstr "Modalità trasmissione" + +# +msgid "Transponder" +msgstr "Transponder" + +# +msgid "Transponder type" +msgstr "Tipo transponder" + +msgid "Trash can" +msgstr "Cestino" + +# +msgid "Tries left:" +msgstr "Tentativi residui:" + +# +msgid "Try to find used transponders in cable network.. please wait..." +msgstr "Ricerca transponder utilizzati sulla rete via cavo. Attendere..." + +# +msgid "Trying to download a new packetlist. Please wait..." +msgstr "Download nuovo elenco pacchetti. Attendere..." + +# +msgid "Tue" +msgstr "Mar" + +# +msgid "Tuesday" +msgstr "Martedì" + +# +msgid "Tune" +msgstr "Sintonizzare" + +# +msgid "Tune and focus" +msgstr "Puntamento e sintonia" + +# +msgid "Tune failed!" +msgstr "Sintonia fallita!" + +# +msgid "Tuner" +msgstr "Tuner" + +# +msgid "Tuner configuration" +msgstr "Configurazione tuner" + +msgid "Tuner is not supported" +msgstr "" + +# +msgid "Tuner slot" +msgstr "Slot tuner" + +# +msgid "Tuner status" +msgstr "Stato tuner" + +# +#, python-format +msgid "Tuner status %s" +msgstr "Stato tuner %s" + +msgid "Tuner type" +msgstr "Tipo tuner" + +# +msgid "Turkish" +msgstr "Turco" + +msgid "Turn on the power LED during standby." +msgstr "" + +msgid "Turning step size" +msgstr "" + +# +msgid "Two" +msgstr "Due" + +# +msgid "Type" +msgstr "Tipo" + +# +msgid "Type of scan" +msgstr "Tipo ricerca" + +# +msgid "USALS" +msgstr "USALS" + +msgid "USALS calibration" +msgstr "Calibrazione USALS" + +# +msgid "USB stick" +msgstr "Penna USB" + +# +msgid "USB stick wizard" +msgstr "Wizard penna USB" + +msgid "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Aggiornamento automatico in corso.\n" +"Attendere il riavvio del ricevitore:\n" +"potrebbero essere necessari alcuni minuti." + +# +msgid "Undo install" +msgstr "Annullare inst." + +# +msgid "Undo uninstall" +msgstr "Annull. rimoz." + +msgid "Unencrypted" +msgstr "In chiaro" + +msgid "UnhandledKey" +msgstr "Tasto non gestito" + +# +msgid "Unicable" +msgstr "Unicable" + +# +msgid "Unicable LNB" +msgstr "LNB Unicable" + +# +msgid "Unicable Martix" +msgstr "Matrice Unicable" + +# +msgid "Uninstall" +msgstr "Rimuovere" + +# +msgid "Universal LNB" +msgstr "LNB Universale" + +msgid "Unknown" +msgstr "Sconosciuto" + +msgid "Unmount" +msgstr "Unmount" + +# +msgid "Unsupported" +msgstr "Non supportata" + +# +msgid "Update" +msgstr "Aggiornare" + +msgid "Update and ask to reboot" +msgstr "Aggiornare e al termine chiedere se riavviare" + +msgid "Update and reboot (recommended)" +msgstr "Aggiornare e al termine riavviare (raccomandato)" + +# +msgid "Update channel list only" +msgstr "Aggiornate solamente l'elenco canali" + +#, python-format +msgid "Update completed, %d package was installed." +msgid_plural "Update completed, %d packages were installed." +msgstr[0] "Aggiornamento completato. Installato %d pacchetto." +msgstr[1] "Aggiornamento completato. Installati %d pacchetti." + +msgid "Update completed. Do you want to reboot your receiver?" +msgstr "Aggiornamento completato. Riavviare il ricevitore?" + +msgid "Update failed. Your receiver does not have a working internet connection." +msgstr "Aggiornamento fallito. La connessione a internet non è attiva." + +msgid "Update has completed." +msgstr "Aggiornamento completato." + +msgid "Updatefeed not available." +msgstr "Feed aggiornamenti non disponibile." + +# +msgid "Updating software catalog" +msgstr "Aggiornamento catalogo software in corso" + +# +msgid "Upgrading" +msgstr "Agg. in corso" + +# +msgid "Use" +msgstr "Utilizzare" + +# +msgid "Use DHCP" +msgstr "Utilizzare DHCP" + +msgid "Use EIT EPG information when it is available." +msgstr "Opzione per abilitare l'utilizzo delle informazioni EPG EIT, quando disponibili." + +msgid "Use FreeSat EPG information when it is available." +msgstr "Opzione per abilitare l'utilizzo delle informazioni EPG FreeSat, quando disponibili." + +msgid "Use MHW EPG information when it is available." +msgstr "Opzione per abilitare l'utilizzo delle informazioni EPG MHW, quando disponibili." + +msgid "Use Netmed EPG information when it is available." +msgstr "Opzione per abilitare l'utilizzo delle informazioni EPG Netmed, quando disponibili." + +msgid "Use TV remote control" +msgstr "Utilizzare il telecomando TV" + +# +msgid "Use USALS for this sat" +msgstr "Utilizzare USALS per questo satellite" + +msgid "Use ViaSat EPG information when it is available." +msgstr "Opzione per abilitare l'utilizzo delle informazioni EPG ViaSat, quando disponibili." + +msgid "Use Virgin EPG information when it is available." +msgstr "" + +# +msgid "Use a gateway" +msgstr "Utilizzare un gateway" + +msgid "Use fastscan channel names" +msgstr "Utilizzare i nomi canale da scansione rapida" + +msgid "Use fastscan channel numbering" +msgstr "Utilizzare i numeri canale da scansione rapida" + +msgid "Use frequency or channel" +msgstr "" + +msgid "Use individual settings for each directory" +msgstr "" + +# +msgid "Use interface" +msgstr "Utilizzare l'Interfaccia" + +msgid "Use official channel numbering" +msgstr "Utilizzare la numerazione canale ufficiale" + +msgid "Use original DVB subtitle position" +msgstr "Utlizzare posizione originale sottotitoli DVB" + +msgid "Use original teletext position" +msgstr "Utilizzare la posizione originale televideo" + +# +msgid "Use power measurement" +msgstr "Utilizzare misurazione di potenza" + +msgid "Use the network wizard to configure selected network adapter" +msgstr "Utilizzare NetworkWizard per configurare l'adattatore di rete selezionato" + +# +msgid "Use the network wizard to configure your network\n" +msgstr "Utilizzare la configurazione guidata rete\n" + +# +msgid "Use the up/down keys on your remote control to select an option. After that, press OK." +msgstr "Utilizzare i tasti Sù/Giù del telecomando per selezionare un'opzione, poi premere OK." + +# +msgid "Use the wizard to set up basic features" +msgstr "Configurazione guidata opzioni di base" + +msgid "Use these input device settings?" +msgstr "Utilizzare questa configurazione per il dispositivo di input?" + +msgid "Use these settings?" +msgstr "Utilizzare questa configurazione?" + +# +msgid "Use this video enhancement settings?" +msgstr "Utilizzare questa configurazione per il miglioramento immagine?" + +# +msgid "Use trash can in movielist" +msgstr "Utilizzare cestino in elenco registrazioni" + +# +msgid "Used service scan type" +msgstr "Tipo ricerca canali in uso" + +msgid "User - bouquets" +msgstr "Bouquet personalizzati" + +# +msgid "User defined" +msgstr "Definito dall'utente" + +msgid "User defined transponder" +msgstr "" + +# +msgid "User interface" +msgstr "Interfaccia utente" + +msgid "Username" +msgstr "Nome user" + +#, python-format +msgid "Using LNB %d" +msgstr "LNB in uso: %d" + +msgid "Using fixed address" +msgstr "Indirizzo statico in uso" + +#, python-format +msgid "Using tuner %s" +msgstr "Tuner in uso: %s" + +msgid "Usually when the subtitle language is the same as the audio language, the subtitles will not be used. Enable this option to allow these subtitles to be used." +msgstr "Normalmente, se la lingua audio e quella dei sottotitoli coincidono, i sottotitoli non vengono utilizzati. Abilitare questa opzione per consentirne l'utilizzo." + +# +msgid "VCR scart" +msgstr "Scart VCR" + +# +msgid "VMGM (intro trailer)" +msgstr "VMGM (trailer introduttivo)" + +# +msgid "Vertical" +msgstr "Verticale" + +msgid "Vertical turning speed" +msgstr "Velocità di rotazione verticale" + +msgid "Video PID" +msgstr "PID Video" + +# +msgid "Video enhancement preview" +msgstr "Anteprima miglioramento immagine" + +# +msgid "Video enhancement settings" +msgstr "Miglioramento immagine" + +# +msgid "Video enhancement setup" +msgstr "Configurazione miglioramento immagine" + +# +msgid "Video fine tuning" +msgstr "Regolazione fine video" + +# +msgid "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." +msgstr "" +"Selezione ingresso video\n" +"\n" +"Se questa pagina è visibile, premere OK o selezionare un ingresso video differente.\n" +"\n" +"L'ingresso video successivo sarà testato automaticamente tra 10 secondi." + +# +msgid "Video mode selection." +msgstr "Selezione modalità video." + +# +msgid "Video output" +msgstr "Uscita video" + +# +msgid "Video setup" +msgstr "Configurazione video" + +# +msgid "Video wizard" +msgstr "Procedura guidata video" + +#, python-format +msgid "Video: %s fps" +msgstr "" + +msgid "VideoMode" +msgstr "" + +msgid "Videocodec" +msgstr "Codec video" + +msgid "Videoformat" +msgstr "Formato video" + +msgid "Videosize" +msgstr "Risoluzione video:" + +# +msgid "View Rass interactive..." +msgstr "Rass interattivi..." + +# +msgid "View details" +msgstr "Dettagli..." + +msgid "View list of available " +msgstr "Visualizzare elenco disponibilità " + +# +msgid "View list of available CommonInterface extensions" +msgstr "Elenco estensioni Common Interface disponibili." + +# +msgid "View list of available EPG extensions." +msgstr "Elenco estensioni EPG disponibili." + +msgid "View list of available Satellite equipment extensions." +msgstr "Elenco delle estensioni per dispositivo satellitare disponibili." + +# +msgid "View list of available communication extensions." +msgstr "Elenco estensioni comunicazione disponibili." + +# +msgid "View list of available default settings" +msgstr "Elenco configurazioni predefinite disponibili." + +# +msgid "View list of available display and userinterface extensions." +msgstr "Elenco estensioni display e interfaccia utente disponibili." + +# +msgid "View list of available multimedia extensions." +msgstr "Elenco estensioni multimediali disponibili." + +# +msgid "View list of available networking extensions" +msgstr "Elenco estensioni di rete disponibili." + +# +msgid "View list of available recording extensions" +msgstr "Elenco estensioni registrazioni disponibili." + +# +msgid "View list of available skins" +msgstr "Elenco skin disponibili." + +# +msgid "View list of available software extensions" +msgstr "Elenco estensioni software disponibili." + +# +msgid "View list of available system extensions" +msgstr "Elenco estensioni di sistema disponibili." + +# +msgid "View photos..." +msgstr "Visualizzare foto..." + +# +msgid "View teletext..." +msgstr "Televideo..." + +# +msgid "View video CD..." +msgstr "Riprodurre CD video..." + +# +msgid "Virtual keyboard" +msgstr "Tastiera virtuale" + +# +msgid "Voltage mode" +msgstr "Modalità voltaggio" + +# +msgid "Volume" +msgstr "Volume" + +# +msgid "W" +msgstr "O" + +# +msgid "WEP" +msgstr "WEP" + +msgid "WLAN connection" +msgstr "Connessione WLAN" + +# +msgid "WPA" +msgstr "WPA" + +# +msgid "WPA or WPA2" +msgstr "WPA o WPA2" + +# +msgid "WPA2" +msgstr "WPA2" + +# +msgid "WSS on 4:3" +msgstr "WSS su 4:3" + +# +msgid "Waiting" +msgstr "In attesa" + +msgid "Waiting for mount" +msgstr "In attesa del mount" + +msgid "Waiting for partition" +msgstr "In attesa della partizione" + +msgid "Wakeup" +msgstr "Riattivare" + +msgid "Wakeup TV from standby" +msgstr "Riattivare la TV dallo standby" + +msgid "Wakeup receiver for start timer" +msgstr "" + +msgid "Wakeup receiver from standby" +msgstr "Riattivare il ricevotore dallo standby" + +msgid "Wakeup signal from TV" +msgstr "Segnale di accensione dalla TV" + +msgid "Wakeup type" +msgstr "" + +msgid "Warning: no LNB; using factory defaults." +msgstr "Attenzione:nessun LNB. Usati valori predefiniti." + +# +msgid "Watch movies..." +msgstr "Riprodurre registrazioni..." + +# +msgid "Watch recordings..." +msgstr "Riprodurre registrazioni..." + +# +msgid "Wed" +msgstr "Mer" + +# +msgid "Wednesday" +msgstr "Mercoledì" + +# +msgid "Weekday" +msgstr "Giorno della settimana" + +msgid "Weighted position" +msgstr "Posizione pesata" + +msgid "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." +msgstr "" +"Plugin che consente di eseguire tagli nelle registrazioni.\n" +"\n" +"Portarsi all'inizio della sequenza da rimuovere. Premere Ok, selezionare \"Inizio taglio\".\n" +"\n" +"Portarsi quindi alla fine della sequenza da rimuovere, premere Ok, selezionare \"Fine taglio\". E' tutto." + +msgid "Welcome to the image upgrade wizard. The wizard will assist you in upgrading the firmware of your receiver by providing a backup facility for your current settings and a short explanation of how to upgrade your firmware." +msgstr "Benvenuti nella procedura guidata aggiornamento immagine. La procedura fornirà assistenza durante l'aggiornamento tramite un backup guidato delle impostazioni correnti e una breve guida sulla funzione di upgrade del firmware." + +msgid "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" +msgstr "" +"Benvenuti.\n" +"\n" +"Se si desidera collegare il ricevitore a internet, questa procedura guidata fornirà supporto nella configurazione di rete del ricevitore.\n" +"\n" +"Ok >> Iniziare la configurazione della rete." + +msgid "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." +msgstr "" +"Benvenuti.\n" +"\n" +"Questa procedura guidata sarà di supporto nella configurazione iniziale del ricevitore.\n" +"Ok >> Passare alla fase successiva." + +# +msgid "Welcome..." +msgstr "Benvenuti..." + +# +msgid "West" +msgstr "Ovest" + +msgid "West limit set" +msgstr "Conf. limite ovest" + +# +msgid "What do you want to scan?" +msgstr "Cosa si intende cercare?" + +msgid "When enabled the PiP can be closed by the exit button." +msgstr "" + +msgid "When enabled the arrow buttons around the OK button will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled the left, right, CH+/-, B+/-, P+/- buttons will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled you can specify a timeframe to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "When enabled you can specify a timeframe were the inactivity sleeptimer is ignored. Not the detection is disabled during this timeframe but the inactivity timeout is disabled" +msgstr "" + +msgid "When enabled you can zap channels with the CH+/-, B+/-, P+/- buttons instead of opening the channel selection list." +msgstr "" + +msgid "When enabled you get the channel selection list via the OK button, the infobar toggle is then transfered to exit button" +msgstr "" + +msgid "When enabled, AIT data will be included in http streams. This allows a client receiver to use HbbTV." +msgstr "Opzione per abilitare l'inserimento dei dati AIT negli stream http. Ciò permetterà ad un ricevitore client di utilizzare Hbb TV." + +msgid "When enabled, ECM data will be included in http streams. This allows a client receiver to do the descrambling." +msgstr "Opzione per abilitare l'inserimento dei dati ECM negli stream http, così che un ricevitore client li possa decodificare." + +msgid "When enabled, EIT data will be included in http streams. This allows a client receiver to show EPG." +msgstr "Opzione per abilitare l'inserimento dei dati EIT negli stream http, così che un ricevitore client possa visualizzare l'EPG." + +msgid "When enabled, a popup message will be shown when a movie has finished and the next one will start." +msgstr "Opzione per abilitare la visualizzazione di un messaggio popup quando la riproduzione di una registrazione ha termine e viene avviata la riproduzione della successiva." + +msgid "When enabled, a popup message will be shown when a recording starts." +msgstr "Opzione per visualizzare un messaggio popup all'avvio di una registrazione." + +msgid "When enabled, a radio background image will be visible while listening to a radio channel." +msgstr "Opzione per abiltare la visualizzazione di un'immagine di sfondo durante l'ascolto di un canale radio." + +msgid "When enabled, a recording is allowed to interrupt live tv, when there are no free tuners." +msgstr "Opzione per abilitare la priorità delle registrazioni quando non ci sono tuner disponibili." + +msgid "When enabled, a warning will be displayed and the user will get an option to stop or to continue the timeshift." +msgstr "" + +msgid "When enabled, authentication is required to watch http streams." +msgstr "" + +msgid "When enabled, channel numbering will start at '1' for each bouquet." +msgstr "Opzione per abilitare la numerazione dei canali ripartendo da 1 in ogni bouquet." + +msgid "When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen." +msgstr "Opzione per abilitare il ridimensionamento dell'immagine per adeguarsi allo schermo dei contenuti trasmessi con rapporto d'aspetto di 4:3." + +msgid "When enabled, continue to the next bouquet when the last channel of the current bouquet is reached while changing channels." +msgstr "Opzione per abilitare il passaggio automatico al bouquet successivo quando si raggiunge l'ultimo canale memorizzato nel bouquet corrente." + +msgid "When enabled, deleted recordings are moved to the trash can, instead of being deleted immediately." +msgstr "Opzione per abilitare lo spostamento delle registrazioni rimosse nel cestino anzichè eliminarle immediatamente." + +msgid "When enabled, display the EIT now/next eventdata in infobar. When disabled, display now/next eventdata from the EPG cache instead." +msgstr "Opzione per visualizzare nella barra informazioni gli eventi \"In onda/Successivo\" in base a quanto contenuto nei dati EIT. Se disabilitata, verrà usata la cache EPG." + +msgid "When enabled, encryption info will be shown in the infobar (when supported by the skin)." +msgstr "Opzione per abilitare la visualizzazione di informazioni sulla codifica nella barra informazioni (se previste nella skin)." + +msgid "When enabled, error messages related to the Common Interface module will not be shown." +msgstr "Opzione per disabilitare la visualizzazione di messaggi di errore relativi al modulo Common Interface." + +msgid "When enabled, error messages related to zapping will not be shown." +msgstr "Opzione per disabilitare la visualizzazione di messaggi di errore relativi allo zapping." + +msgid "When enabled, external subtitles will be always turned on for playback movie." +msgstr "" + +msgid "When enabled, graphical DVB subtitles are preferred over teletext subtitles, when both types are available." +msgstr "Opzione per abilitare la prevalenza dei sottotitoli DVB grafici su quelli televideo, qualora entrambi fossero disponibili." + +msgid "When enabled, graphical DVB subtitles will be centered horizontally." +msgstr "Opzione per abilitare la centratura orizzontale dei sottotitoli DVB grafici." + +msgid "When enabled, graphical DVB subtitles will be displayed at their original position." +msgstr "Opzione per abilitare la visualizzazione dei sottotitoli DVB grafici nella loro posizione originale." + +msgid "When enabled, graphical DVB subtitles will be displayed in yellow, instead of the original color." +msgstr "Opzione per abilitare la visualizzazione in giallo dei sottotitoli DVB grafici, anziché nel loro colore originale." + +msgid "When enabled, http streams are descrambled on the server side. The (remote) client receiver does not have to do descrambling." +msgstr "Opzione per abilitare la decodifica degli stream http sul server. Il client remoto non dovrà effettuare la decodifica." + +msgid "When enabled, it is possible to leave the movieplayer with exit." +msgstr "" + +msgid "When enabled, measure power consumption to detect when the rotor stops turning (when supported by the tuner)." +msgstr "Opzione per abilitare la misura dell'assorbimento elettrico del rotore per determinare il momento in cui si arresta. (se supportata dal tuner)." + +msgid "When enabled, number markers will be hiden." +msgstr "" + +msgid "When enabled, services may be grouped in multiple bouquets." +msgstr "Opzione per abilitare il raggruppamento dei canali in bouquet multipli." + +msgid "When enabled, show channel numbers in the channel selection screen." +msgstr "Opzione per abilitare la visualizzazione del numero del canale nella schermata di selezione canali." + +msgid "When enabled, subtitles for the hearing impaired can be used." +msgstr "Opzione per abilitare l'utilizzo dei sottotitoli per non udenti." + +msgid "When enabled, subtitles for the hearing impaired will be preferred over normal subtitles, when both types are available." +msgstr "Opzione per abilitare la prevalenza dei sottotitoli per non udenti sui sottotitoli normali, qualora entrambi fossero disponibili" + +msgid "When enabled, teletext pages will be cached, allowing faster access." +msgstr "Opzione per abilitare la cache delle pagine televideo, consentendo così un accesso più veloce." + +msgid "When enabled, teletext subtitles will be displayed at their original position." +msgstr "Opzione per abilitare la visualizzazione dei sottotitoli televideo nella loro posizione originale." + +msgid "When enabled, the VCR scart option will be shown on the main menu" +msgstr "" + +msgid "When enabled, the channel selection list will be hidden while listening to a radio channel" +msgstr "Opzione per nascondere l'elenco canali durante l'ascolto di un canale radio." + +msgid "When enabled, the infobar will be displayed when a new event starts." +msgstr "Opzione per abilitare la visualizzazione della barra informazioni all'inizio di un nuovo evento." + +msgid "When enabled, the infobar will be displayed when changing channels." +msgstr "Opzione per abilitare la visualizzazione della barra informazioni su un cambio di canale." + +msgid "When enabled, the infobar will be displayed when skipping forwards/backwards during media playback." +msgstr "Opzione per abilitare la visualizzazione della barra informazioni su avanzamento/riavvolgimento veloci durante la riproduzione di una registrazione." + +msgid "When enabled, the lenght of each recording will be shown in the movielist (this might cause some additional loading time)." +msgstr "Opzione per visualizzare nell'elenco la lunghezza di ogni registrazione (potrebbe rallentare le operazioni di caricamento)." + +msgid "When enabled, the original line breaks will be removed from the teletext subtitles." +msgstr "Opzione per rimuovere le interruzioni di linea originali nei sottotitoli televideo." + +msgid "When enabled, the receiver will automatically use the audio track which you selected before." +msgstr "Opzione per abilitare il ricevitore a utilizzare automaticamente la traccia audio selezionata tra le opzioni disponibili e associata al canale." + +msgid "When enabled, the receiver will automatically use the subtitles which you selected before." +msgstr "Opzione per abilitare il ricevitore a utilizzare automaticamente i sottotitoli selezionati tra le opzioni disponibili e associati al canale." + +msgid "When enabled, the receiver will no longer monitor the tuned transponder for possible changes. Do not use this option unless you know what you are doing." +msgstr "Opzione per disabilitare il monitoraggio di possibili modifiche nel transponder sintonizzato. Utilizzare l'opzione SOLO se si è certi di quello che si sta facendo." + +msgid "When enabled, the receiver will select an AC3 track (when available)." +msgstr "Opzione per abilitare l'utilizzo della traccia audio AC3 (se disponibile)." + +msgid "When enabled, the receiver will select an AC3+ track (when available)." +msgstr "" + +msgid "When enabled, timeshift starts automatically in background after specified time." +msgstr "" + +# +msgid "When enabled, use DHCP for the IP configuration." +msgstr "Opzione per abilitare l'uso di DHCP per le impostazioni IP." + +msgid "When enabled, your receiver will detect activity on the VCR SCART input." +msgstr "Opzione per abilitare la rilevazione di attività sull'ingresso SCRT VCR." + +msgid "When nonzero, a recording will start earlier than the starting time indicated by the EPG." +msgstr "Opzione per impostare il margine di anticipo con cui far avviare una registrazione, rispetto all'orario di inizio previsto dall'EPG (in minuti). " + +msgid "When nonzero, a recording will stop later than the ending time indicated by the EPG." +msgstr "Opzione per impostare il margine di ritardo con cui far terminare una registrazione, rispetto all'orario di termine previsto dall'EPG (in minuti). " + +msgid "When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture." +msgstr "Opzione per impostare la modalità di scaling/stretch dell'immagine per i contenuti trasmessi con un rapporto d'aspetto di 16:9." + +msgid "When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture." +msgstr "Opzione per impostare la modalità di scaling/stretch dell'immagine per i contenuti trasmessi con un rapporto d'aspetto di 4:3." + +msgid "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" +msgstr "" +"Con il ripristino alla configurazione di fabbrica,\n" +"tutte le configurazioni personalizzate\n" +"(compresi bouquet, canali, dati satelliti...) saranno perdute.\n" +"Dopo il ripristino il ricevitore sarà automaticamente riavviato!\n" +"\n" +"Procedere comunque con il ripristino?" + +# +msgid "Where do you want to backup your settings?" +msgstr "Destinazione backup configurazione:" + +# +msgid "Where to save temporary timeshift recordings?" +msgstr "Cartella salvataggio registrazioni temporanee timeshift" + +# +msgid "Wireless LAN" +msgstr "LAN Wireless" + +# +msgid "Wireless network" +msgstr "Rete wireless" + +msgid "Wireless network configuration..." +msgstr "Configurazione connessione rete wireless." + +msgid "Wireless network connection setup" +msgstr "Configurazione connessione rete wireless" + +msgid "Wireless network connection setup." +msgstr "Configurazione connessione rete wireless." + +msgid "Wireless network state" +msgstr "Stato rete wireless" + +msgid "With popup" +msgstr "" + +msgid "Without popup" +msgstr "" + +msgid "Would you like to install a softcam?" +msgstr "Installare una softcam?" + +# +msgid "Write error while recording. Disk full?\n" +msgstr "Errore di scrittura in registrazione! Disco pieno?\n" + +# +msgid "Write failed!" +msgstr "Scrittura fallita!" + +# +msgid "YPbPr" +msgstr "YPbPr" + +# +msgid "Year" +msgstr "Anno" + +msgid "Yellow DVB subtitles" +msgstr "Sottotitoli DVB gialli" + +# +msgid "Yes" +msgstr "Sì" + +msgid "Yes and save" +msgstr "" + +msgid "Yes and save in movie dir" +msgstr "" + +# +msgid "Yes to all" +msgstr "Sì a tutto" + +msgid "Yes, always" +msgstr "Sì, sempre" + +msgid "Yes, and delete this movie" +msgstr "Sì, e rimuovere questa registrazione" + +# +msgid "Yes, backup my settings!" +msgstr "Sì, eseguire backup configurazione!" + +msgid "Yes, delete this movie and return to movie list" +msgstr "" + +# +msgid "Yes, do a manual scan now" +msgstr "Sì, fare una ricerca manuale ora" + +# +msgid "Yes, do an automatic scan now" +msgstr "Sì, fare una ricerca automatica ora" + +# +msgid "Yes, do another manual scan now" +msgstr "Sì, fare un'altra ricerca manuale ora" + +# +msgid "Yes, perform a shutdown now." +msgstr "Sì, spegnere ora." + +# +msgid "Yes, restore the settings now" +msgstr "Sì, ripristinare la configurazione" + +# +msgid "Yes, returning to movie list" +msgstr "Sì, tornare all'elenco registrazioni" + +msgid "Yesterday" +msgstr "Ieri" + +#, python-format +msgid "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" +msgstr "" +"Un elenco canali risulta già installato.\n" +"Rimuovere\n" +"%s?" + +# +msgid "You can cancel the installation." +msgstr "E' possibile annullare l'installazione." + +# +msgid "You can cancel the removal." +msgstr "E' possibile annullare la rimozione" + +msgid "You can continue watching TV etc. while this is running." +msgstr "Durante l'esecuzione sarà possibile continuare la visione." + +# +msgid "You can install this plugin." +msgstr "E' possibile installare questo plugin." + +msgid "You can only burn receiver recordings!" +msgstr "È possibile masterizzare solo registrazioni del ricevitore." + +# +msgid "You can remove this plugin." +msgstr "E' possibile rimuovere questo plugin." + +msgid "You cannot delete this!" +msgstr "Impossibile rimuovere!" + +msgid "You didn't select a channel to record from." +msgstr "Non è stato selezionato alcun canale da cui registrare." + +# +msgid "You have chosen to backup your settings. Please press OK to start the backup now." +msgstr "Si è scelto di effettuare un backup configurazione. Premere OK per iniziare ora." + +# +msgid "You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased." +msgstr "La creazione di un nuovo flasher .nfi avviabile su penna USB richiede la riscrittura delle partizioni. Tutti i dati presenti sulla penna saranno cancellati!" + +msgid "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." +msgstr "Si è scelto di ripristinare la configurazione. Enigma2 verrà riavviato dopo il ripristino. Premere OK per iniziare ora" + +# +#, python-format +msgid "You have to wait %s!" +msgstr "Occorre attendere per %s!" + +msgid "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." +msgstr "" +"È necessario che un PC sia connesso al ricevitori. Se occorressero maggiori istruzioni, visitare il sito http://www.dm7025.de.\n" +"Il DreamBox sarà arrestato, e al termine delle operazioni il nuovo firmware chiederà di ripristinare le configurazioni." + +msgid "You system does not support ext4" +msgstr "Il sistema non supporta ext4" + +# +msgid "Your backup succeeded. We will now continue to explain the further upgrade process." +msgstr "Backup eseguito correttamente! Ora proseguirà il processo di aggiornamento." + +# +msgid "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" +msgstr "La Collezione supera la capacità di un disco singolo strato. Sarà necessario utilizzare un DVD vergine doppio strato!" + +msgid "Your current collection will get lost!" +msgstr "La collezione corrente sarà perduta!" + +# +msgid "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." +msgstr "" +"Il firmware del frontprocessor deve essere aggiornato.\n" +"OK >> iniziare l'aggiornamento." + +msgid "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Il frontprocessor sarà aggiornato.\n" +"Attendere il riavvio del ricevitore.\n" +"Potrebbero essere necessari alcuni minuti." + +# +msgid "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." +msgstr "" +"La connessione a Internet non funziona!\n" +"Selezionare un'opzione per proseguire." + +#, python-format +msgid "Your internet connection is working (ip: %s)" +msgstr "La connessione internet è attiva (IP: %s)" + +# +msgid "Your network configuration has been activated." +msgstr "Configurazione di rete attivata correttamente." + +msgid "Your receiver does not have an internet connection" +msgstr "Il ricevitore non dispone di una connessione a internet" + +# +msgid "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" +msgstr "" +"Il ricevitore è ora pronto per l'uso.\n" +"\n" +"La connessione a Internet è attiva.\n" +"\n" + +msgid "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Il ricevitore è pronto per l'uso.\n" +"\n" +"La connessione a Internet è attiva.\n" +"\n" +"Ok >> Continuare" + +msgid "Your receiver is rebooting" +msgstr "Il ricevitore è in fase di riavvio" + +msgid "Your receiver is shutting down" +msgstr "Il ricevitore è in fase di spegnimento" + +msgid "Your receiver is shutting down. Please stand by..." +msgstr "Attendere: ricevitore in fase di spegnimento." + +msgid "Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver." +msgstr "Il ricevotore ora potrebbe risultare inutilizzabile. Prima di riavviarlo consultare il manuale per ottenete ulteriori istruzioni." + +msgid "Your receiver will got to stand by due to the sleeptimer." +msgstr "" + +msgid "Your receiver will got to standby due to inactivity." +msgstr "" + +msgid "Your receiver will restart after pressing OK on your remote control." +msgstr "Ok >> riavviare il ricevitore." + +# +msgid "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." +msgstr "" +"La connessione a Internet su rete locale wireless non può essere avviata!\n" +"Controllare che la penna WLAN USB sia collegata correttamente.\n" +"\n" +"Selezionare un'opzione per proseguire." + +msgid "Zap" +msgstr "Zap" + +msgid "Zap back to previously tuned service?" +msgstr "Tornare al canale sintonizzato in precedenza?" + +# +msgid "Zap back to service before positioner setup?" +msgstr "" +"Ritornare al canale attivo\n" +"prima della configurazione motore?" + +msgid "Zap back to service before tuner setup?" +msgstr "Ritornare al canale attivo prima della configurazione tuner?" + +msgid "Zap focus to Picture in Picture" +msgstr "Fuoco zap nella PiP" + +msgid "Zap focus to main screen" +msgstr "Fuoco zap nello schermo principale" + +msgid "Zap mode" +msgstr "Modalità zap" + +msgid "Zap to selected channel" +msgstr "Zap al canale selezionato" + +msgid "Zap to selected channel, or show detailed event info (depends on configuration)" +msgstr "Zap al canale selezionato, o mostrare informazioni dettagliate evento (secondo configurazione)" + +# +msgid "[alternative edit]" +msgstr "[edit alternative]" + +# +msgid "[bouquet edit]" +msgstr "[edit bouquet]" + +# +msgid "[favourite edit]" +msgstr "[edit preferiti]" + +# +msgid "[move mode]" +msgstr "[modalità muovere]" + +msgid "a gui to assign services/providers to common interface modules" +msgstr "Assegnazione canali/provider a moduli common interface tramite GUI" + +msgid "a gui to assign services/providers/caids to common interface modules" +msgstr "Assegnazione canali/provider/CAIDs a moduli common interface tramite GUI" + +# +msgid "abort alternatives edit" +msgstr "Annullare edit alternative" + +# +msgid "abort bouquet edit" +msgstr "Annullare edit bouquet" + +# +msgid "abort favourites edit" +msgstr "Annullare edit preferiti" + +# +msgid "about to start" +msgstr "Avvio in corso" + +# +msgid "activate network adapter configuration" +msgstr "Attivare la configurazione interfaccia di rete" + +# +msgid "add alternatives" +msgstr "Aggiungere alternative" + +# +msgid "add bookmark" +msgstr "Agg. contrass." + +# +msgid "add bouquet" +msgstr "Aggiungere bouquet" + +# +msgid "add marker" +msgstr "Aggiungere contrassegno" + +# +msgid "add service to bouquet" +msgstr "Aggiungere canale al bouquet" + +# +msgid "add service to favourites" +msgstr "Aggiungere canale a preferiti" + +msgid "add to parental protection" +msgstr "Aggiungere al controllo parentale" + +msgid "adult movie/drama" +msgstr "Film per adulti/Drammatici" + +# +msgid "advanced" +msgstr "Avanzato" + +msgid "adventure/western/war" +msgstr "Avventura/Western/Guerra" + +msgid "advertisement/shopping" +msgstr "Pubblicità/Shopping" + +msgid "after " +msgstr "" + +# +msgid "alphabetic" +msgstr "Alfabetico" + +msgid "alphabetic reverse" +msgstr "Alfabetico inverso" + +msgid "alternative" +msgstr "" + +msgid "always" +msgstr "" + +msgid "and select next channel" +msgstr "" + +msgid "and select previous channel" +msgstr "" + +msgid "arts/culture (without music, general)" +msgstr "Arte/Cultura (generiche, no musica)" + +msgid "arts/culture magazine" +msgstr "Arte/Magazine di cultura" + +msgid "athletics" +msgstr "Atletica" + +# +msgid "audio tracks" +msgstr "Tracce audio" + +# +msgid "auto" +msgstr "Auto" + +# +msgid "automatic" +msgstr "Automatico" + +# +msgid "back" +msgstr "Indietro" + +# +msgid "background image" +msgstr "Immagine di sfondo" + +msgid "ballet" +msgstr "Balletto" + +#, python-format +msgid "bc%s" +msgstr "bc%s" + +# +msgid "better" +msgstr "Migliore" + +# +msgid "black" +msgstr "Nero" + +msgid "black & white" +msgstr "Bianco e nero" + +# +msgid "blacklist" +msgstr "Lista nera" + +# +msgid "blue" +msgstr "Blu" + +msgid "broadcasting/press" +msgstr "Diffusione radio TV/Stampa" + +# +msgid "by date" +msgstr "Per data (crescente)" + +msgid "cartoon/puppets" +msgstr "Cartoni/Pupazzi" + +msgid "center" +msgstr "Centro" + +msgid "centered" +msgstr "" + +msgid "centered, wrapped" +msgstr "" + +# +msgid "chapters" +msgstr "Capitoli" + +msgid "childrens's/youth program (general)" +msgstr "Bambini/Programmi per giovani (generale)" + +# +msgid "circular left" +msgstr "Circolare a sinistra" + +# +msgid "circular right" +msgstr "Circolare a destra" + +msgid "comedy" +msgstr "Commedia" + +# +msgid "complex" +msgstr "Complesso" + +# +msgid "config menu" +msgstr "Menu configurazione" + +# +msgid "confirmed" +msgstr "Confermato" + +# +msgid "connected" +msgstr "Connesso" + +# +msgid "continue" +msgstr "Continuare" + +msgid "cooking" +msgstr "Cucina" + +# +msgid "copy to bouquets" +msgstr "Copiare nei bouquet" + +# +msgid "create directory" +msgstr "Creare cartella" + +#, python-format +msgid "currently installed image: %s" +msgstr "Immagine installata: %s" + +# +msgid "daily" +msgstr "Giornaliero" + +# +msgid "day" +msgstr "Giorno" + +# +msgid "default" +msgstr "Predefinito" + +# +msgid "delete cut" +msgstr "Rimuovere taglio" + +msgid "delete..." +msgstr "" + +msgid "descramble and record ecm" +msgstr "Decodificare e registrare ecm" + +msgid "detective/thriller" +msgstr "Polizieschi/Triller" + +# +msgid "disable" +msgstr "Disabilitare" + +# +msgid "disable move mode" +msgstr "Disabilitare spostamento" + +# +msgid "disabled" +msgstr "Disabilitato" + +# +msgid "disconnected" +msgstr "Disconnesso" + +msgid "discussion/interview/debate" +msgstr "Conferenze/Interviste/Dibattiti" + +# +msgid "do nothing" +msgstr "Non fare nulla" + +msgid "documentary" +msgstr "Documentari" + +msgid "don't descramble, record ecm" +msgstr "Non decodificare, registrare ecm" + +# +msgid "done!" +msgstr "Fatto!" + +msgid "east" +msgstr "Est" + +msgid "economics/social advisory" +msgstr "Economia/Sociale" + +# +msgid "edit alternatives" +msgstr "Edit alternative" + +msgid "education/science/factual topics (general)" +msgstr "Istruzione/Scienza/Vita reale (generale)" + +# +msgid "empty" +msgstr "Vuoto" + +# +msgid "enable" +msgstr "Abilitare" + +# +msgid "enable bouquet edit" +msgstr "Abilitare edit bouquet" + +# +msgid "enable favourite edit" +msgstr "Abilitare edit preferiti" + +# +msgid "enable move mode" +msgstr "Abilitare spostamento" + +# +msgid "enabled" +msgstr "Abilitato" + +# +msgid "end alternatives edit" +msgstr "Fine edit alternative" + +# +msgid "end bouquet edit" +msgstr "Fine edit bouquet" + +# +msgid "end cut here" +msgstr "Fine taglio" + +# +msgid "end favourites edit" +msgstr "Fine edit preferiti" + +msgid "entertainment (10-16 year old)" +msgstr "Intrattenimento (10-16 anni)" + +msgid "entertainment (6-14 year old)" +msgstr "Intrattenimento (6-14 anni)" + +# +msgid "equal to" +msgstr "Uguale a:" + +msgid "equestrian" +msgstr "Ippica" + +# +msgid "exit DVD player or return to file browser" +msgstr "Uscire dal Player DVD e tornare all'elenco file" + +msgid "exit movielist" +msgstr "" + +# +msgid "exit network adapter configuration" +msgstr "Uscire da configurazione interfaccia di rete" + +# +msgid "exit networkadapter setup menu" +msgstr "Uscire da menu configurazione interfaccia di rete" + +msgid "experimental film/video" +msgstr "Film/video sperimentali" + +msgid "false" +msgstr "Falso" + +msgid "fashion" +msgstr "Moda" + +# +msgid "fileformats (BMP, PNG, JPG, GIF)" +msgstr "Formati file (BMP, PNG, JPG, GIF)" + +# +msgid "filename" +msgstr "Nome file" + +msgid "film/cinema" +msgstr "Film/Cinema" + +msgid "fine arts" +msgstr "Belle arti" + +# +msgid "fine-tune your display" +msgstr "Regolazione fine schermo" + +msgid "fitness & health" +msgstr "Fitness & salute" + +# +msgid "flat alphabetic" +msgstr "Alfabetico stretto" + +# +msgid "flat alphabetic reverse" +msgstr "Alfabetico stretto inverso" + +msgid "folk/traditional music" +msgstr "Musica tradizionale/Folk" + +msgid "football/soccer" +msgstr "Football/Calcio" + +msgid "foreign countries/expeditions" +msgstr "Paesi stranieri/Spedizioni" + +# +msgid "forward to the next chapter" +msgstr "Passare al capitolo successivo" + +# +msgid "free" +msgstr "Libero" + +msgid "from" +msgstr "" + +msgid "further education" +msgstr "Formazione continua" + +msgid "game show/quiz/contest" +msgstr "Telequiz/Quiz/Gare" + +msgid "gardening" +msgstr "Giardinaggio" + +msgid "go to deep standby" +msgstr "Spegnimento (deep standby)" + +# +msgid "go to standby" +msgstr "Standby" + +msgid "grab this frame as bitmap" +msgstr "Grab dell'mmagine come bitmap" + +# +msgid "green" +msgstr "Verde" + +msgid "handicraft" +msgstr "Artigianato" + +msgid "height" +msgstr "Altezza" + +# +msgid "help..." +msgstr "Aiuto..." + +# +msgid "horizontal" +msgstr "Orizzontale" + +msgid "information/education/school program" +msgstr "Informazione/Educazione/Programmi scolastici" + +# +msgid "init module" +msgstr "Init modulo" + +# +msgid "init modules" +msgstr "Init moduli" + +# +msgid "insert mark here" +msgstr "Inserire contrassegno" + +msgid "invalid type" +msgstr "Tipo non valido" + +msgid "jazz" +msgstr "jazz" + +# +msgid "jump back to the previous title" +msgstr "Tornare al titolo precedente" + +# +msgid "jump forward to the next title" +msgstr "Passare al titolo successivo" + +msgid "languages" +msgstr "Lingue" + +# +msgid "leave movie player..." +msgstr "Uscire da riproduzione registrazioni..." + +# +msgid "left" +msgstr "Sinistro" + +msgid "left, wrapped" +msgstr "" + +msgid "leisure hobbies (general)" +msgstr "Tempo libero (generale)" + +# +msgid "length" +msgstr "Durata" + +msgid "limit ..., aborting !" +msgstr "Limite... Annullamento in corso." + +# +msgid "list style compact" +msgstr "Elenco compatto" + +# +msgid "list style compact with description" +msgstr "Elenco compatto con descrizioni" + +# +msgid "list style default" +msgstr "Elenco standard" + +# +msgid "list style single line" +msgstr "Elenco su singola riga" + +msgid "literature" +msgstr "Letteratura" + +msgid "live broadcast" +msgstr "Trasmissione dal vivo" + +# +msgid "locked" +msgstr "Bloccato" + +# +msgid "loopthrough to" +msgstr "In cascata da:" + +msgid "magazines/reports/documentary" +msgstr "Riviste/Report/Documentari" + +# +msgid "manual" +msgstr "Manuale" + +msgid "martial sports" +msgstr "Arti marziali" + +msgid "medicine/physiology/psychology" +msgstr "Medicina/Fisiologia/Psicologia" + +# +msgid "menu" +msgstr "Menu" + +# +msgid "mins" +msgstr "Min" + +# +msgid "minutes" +msgstr "Minuti" + +# +msgid "month" +msgstr "Mese" + +msgid "motor sport" +msgstr "Sport motoristici" + +msgid "motoring" +msgstr "Motori" + +# +msgid "move down to last entry" +msgstr "Andare all'ultima voce" + +# +msgid "move down to next entry" +msgstr "Andare alla voce successiva" + +# +msgid "move up to first entry" +msgstr "Andare alla prima voce" + +# +msgid "move up to previous entry" +msgstr "Tornare alla voce precedente" + +msgid "movie/drama (general)" +msgstr "Film/Teatro (generale)" + +# +msgid "multinorm" +msgstr "Multistandard" + +msgid "music/ballet/dance (general)" +msgstr "Musica/Balletto/Danza (generale)" + +msgid "musical/opera" +msgstr "Musical/Opera" + +msgid "nature/animals/environment" +msgstr "Natura/Animali/Ambiente" + +# +msgid "never" +msgstr "Mai" + +msgid "new media" +msgstr "Nuovi media" + +msgid "news magazine" +msgstr "Magazine di informazione" + +msgid "news/current affairs (general)" +msgstr "Notizie/Attualità (generale)" + +msgid "news/weather report" +msgstr "Notizie/Meteo" + +# +msgid "no" +msgstr "No" + +# +msgid "no CAId selected" +msgstr "Nessun CAId selezionato!" + +# +msgid "no CI slots found" +msgstr "Nessun slot CI trovato!" + +# +msgid "no module found" +msgstr "Nessun modulo trovato!" + +msgid "no storage devices found" +msgstr "Nessun supporto di memorizzazione disponibile" + +# +msgid "none" +msgstr "Nessuno" + +msgid "normal" +msgstr "Normale" + +msgid "not configured" +msgstr "non configurato" + +# +msgid "not locked" +msgstr "Non bloccato" + +msgid "not supported" +msgstr "Non supportato" + +# +msgid "not used" +msgstr "Non in uso" + +# +msgid "nothing connected" +msgstr "Non collegato" + +# +msgid "of a DUAL layer medium used." +msgstr "di DVD doppio strato utilizzato." + +# +msgid "of a SINGLE layer medium used." +msgstr "di DVD Singolo strato utilizzato." + +# +msgid "off" +msgstr "Off" + +msgid "offset is" +msgstr "L'offset è" + +# +msgid "on" +msgstr "On" + +# +msgid "on READ ONLY medium." +msgstr "su supporto A SOLA LETTURA." + +msgid "on end of movie" +msgstr "" + +# +msgid "once" +msgstr "Una volta" + +msgid "only from deep standby" +msgstr "" + +msgid "only from standby" +msgstr "" + +msgid "open EPG..." +msgstr "" + +msgid "open Info..." +msgstr "" + +# +msgid "open nameserver configuration" +msgstr "Configurazione nameserver" + +msgid "original" +msgstr "Originale" + +msgid "original language" +msgstr "Lingua originale" + +# +msgid "pass" +msgstr "Pass" + +msgid "performing arts" +msgstr "Performing art" + +msgid "play as picture in picture" +msgstr "Riprodurre nella PiP" + +msgid "play in mainwindow" +msgstr "Riprodurre nella finestra principale" + +# +msgid "please press OK when ready" +msgstr "Premere OK quando pronti" + +# +msgid "please wait, loading picture..." +msgstr "Immagine in caricamento, attendere..." + +msgid "popular culture/traditional arts" +msgstr "Cultura popolare/Arte tradizionale" + +msgid "pre-school children's program" +msgstr "Bambini in età prescolare" + +msgid "receiver software because updates are available." +msgstr "il software del ricevitore perchè sono disponibili aggiornamenti." + +# +msgid "record" +msgstr "Registrare" + +# +msgid "recording..." +msgstr "Registrazione..." + +# +msgid "red" +msgstr "Rosso" + +msgid "religion" +msgstr "Religione" + +msgid "remarkable people" +msgstr "Persone straordinarie" + +# +msgid "remove after this position" +msgstr "Rimuovere dopo questa pos." + +# +msgid "remove all alternatives" +msgstr "Rimuovere tutte le alternative" + +# +msgid "remove all new found flags" +msgstr "Rimuovere tutti i nuovi contrassegni trovati" + +# +msgid "remove before this position" +msgstr "Rimuovere prima di questa pos." + +# +msgid "remove bookmark" +msgstr "Rim. contrass." + +# +msgid "remove directory" +msgstr "Rimuovere cartella" + +# +msgid "remove entry" +msgstr "Rimuovere voce" + +msgid "remove from parental protection" +msgstr "Rimuovere dal controllo parentale" + +# +msgid "remove new found flag" +msgstr "Rimuovere nuovo contrassegno trovato" + +# +msgid "remove selected satellite" +msgstr "Rimuovere il satellite selezionato" + +# +msgid "remove this mark" +msgstr "Rimuovere contrassegno" + +msgid "rename entry" +msgstr "" + +msgid "repeat playlist" +msgstr "Ripetere playlist" + +# +msgid "repeated" +msgstr "Ricorrente" + +msgid "reverse by date" +msgstr "Per data (decrescente)" + +# +msgid "rewind to the previous chapter" +msgstr "Tornare al capitolo precedente" + +# +msgid "right" +msgstr "Destro" + +msgid "right, wrapped" +msgstr "" + +msgid "rock/pop" +msgstr "rock/pop" + +msgid "romance" +msgstr "Romanticismo" + +# +msgid "save last directory on exit" +msgstr "In uscita, salvare l'ultima cartella" + +# +msgid "save playlist on exit" +msgstr "In uscita, salvare la playlist" + +# +msgid "scan state" +msgstr "Stato ricerca" + +msgid "science fiction/fantasy/horror" +msgstr "Fantascienza/Fantasy/Horror" + +# +msgid "second cable of motorized LNB" +msgstr "Cavo secondario da LNB motorizzato" + +# +msgid "seconds" +msgstr "Secondi" + +# +msgid "select" +msgstr "Selezionare" + +# +msgid "select CAId's" +msgstr "Selezionare CAId's" + +msgid "select EPG..." +msgstr "" + +msgid "select Info..." +msgstr "" + +# +msgid "select menu entry" +msgstr "Selezionare voce menu" + +msgid "select movie" +msgstr "" + +msgid "select the movie path" +msgstr "" + +msgid "serious music/classic music" +msgstr "Musica impegnata/Musica classica" + +msgid "serious/classical/religious/historical movie/drama" +msgstr "Impegnata/Classica/Religiosa/Film storici/Teatro" + +msgid "service PIN" +msgstr "PIN canale" + +msgid "set as startup service" +msgstr "Impostare come canale di avvio" + +msgid "setup PIN" +msgstr "PIN configurazione" + +# +msgid "show DVD main menu" +msgstr "Mostrare il Menu principale DVD" + +msgid "show all tags" +msgstr "Mostrare tutte le etichette" + +# +msgid "show alternatives" +msgstr "Mostrare alternative" + +# +msgid "show event details" +msgstr "Mostrare dettagli evento" + +msgid "show extended description" +msgstr "" + +msgid "show mediaplayer on mainmenu" +msgstr "Mostrare MediaPlayer nel menu principale" + +msgid "show softwaremanager in setup menu" +msgstr "Mostrare SoftwareManager nel menu impostazioni" + +msgid "show softwaremanager on blue button" +msgstr "Mostrare SoftwareManager su pressione tasto Blu" + +msgid "show tag menu" +msgstr "" + +# +msgid "show transponder info" +msgstr "Informazioni transponder" + +msgid "show/game show (general)" +msgstr "Show/Telequiz (generale)" + +msgid "shuffle" +msgstr "Casuale" + +# +msgid "shut down" +msgstr "Spegnimento" + +# +msgid "simple" +msgstr "Semplice" + +# +msgid "skip backward" +msgstr "Skip indietro" + +# +msgid "skip forward" +msgstr "Skip avanti" + +msgid "soap/melodram/folkloric" +msgstr "Soap/Melodrammi/Folclore" + +msgid "social/political issues/economics (general)" +msgstr "Sociale/Politica/Economia (generale)" + +msgid "social/spiritual science" +msgstr "Sociale/Spiritualità" + +msgid "sorting of playlists" +msgstr "Ordinamento playlist" + +msgid "special characters" +msgstr "Caratteri speciali" + +msgid "special events" +msgstr "Eventi particolari" + +msgid "special format data DVD (HDTV compatible)" +msgstr "DVD dati in formato speciale (compatibile HDTV)" + +msgid "sports (general)" +msgstr "Sport (generale)" + +msgid "sports magazine" +msgstr "Magazine di sport" + +# +msgid "standard" +msgstr "Predefinito" + +# +msgid "start cut here" +msgstr "Inizio taglio" + +# +msgid "start directory" +msgstr "Cartella di avvio" + +msgid "stepsize" +msgstr "Passo" + +# +msgid "stereo" +msgstr "Stereo" + +msgid "stop using as startup service" +msgstr "Non Utilizzare più come canale di avvio" + +# +msgid "switch to bookmarks" +msgstr "Passare ai contrassegni" + +# +msgid "switch to filelist" +msgstr "Passare all'elenco file" + +# +msgid "switch to the next angle" +msgstr "Passare all'angolazione successiva" + +# +msgid "switch to the next audio track" +msgstr "Passare alla traccia audio successiva" + +# +msgid "switch to the next subtitle language" +msgstr "Passare alla lingua sottotitoli successiva" + +msgid "talk show" +msgstr "talk show" + +msgid "team sports" +msgstr "Sport di squadra" + +msgid "technology/natural science" +msgstr "Tecnologia/Scienze naturali" + +# +msgid "template file" +msgstr "File modello" + +msgid "tennis/squash" +msgstr "tennis/squash" + +# +msgid "this recording" +msgstr "Questa registrazione" + +msgid "this service is protected by a parental control pin" +msgstr "Canale protetto da codice PIN (controllo parentale)." + +msgid "toggle time, chapter, audio, subtitle info" +msgstr "Info tempo, capitolo, audio, sottotitoli >> on/off" + +msgid "top" +msgstr "Alto" + +msgid "tourism/travel" +msgstr "Viaggi/Turismo" + +msgid "true" +msgstr "Vero" + +# +msgid "unavailable" +msgstr "non disponibile" + +# +msgid "unconfirmed" +msgstr "Non confermato" + +msgid "undefined" +msgstr "Indefinito" + +# +msgid "unknown" +msgstr "Sconosciuto" + +# +msgid "unknown service" +msgstr "Canale sconosciuto" + +msgid "unpublished" +msgstr "Non pubblicato" + +msgid "until standby/restart" +msgstr "Fino allo standby/riavvio" + +# +msgid "user defined" +msgstr "Definito dall'utente" + +msgid "variety show" +msgstr "Varietà" + +# +msgid "vertical" +msgstr "Verticale" + +# +msgid "wait for ci..." +msgstr "Attendere per la CI..." + +# +msgid "wait for mmi..." +msgstr "Attendere per mmi..." + +# +msgid "waiting" +msgstr "In attesa" + +msgid "water sport" +msgstr "Sport acquatici" + +# +msgid "weekly" +msgstr "Settimanale" + +msgid "west" +msgstr "Ovest" + +msgid "when PiPzap enabled zap channel down..." +msgstr "" + +msgid "when PiPzap enabled zap channel up..." +msgstr "" + +msgid "white" +msgstr "Bianco" + +# +msgid "whitelist" +msgstr "Lista bianca" + +msgid "width" +msgstr "Larghezza" + +msgid "winter sport" +msgstr "Sport invernali" + +msgid "wireless network interface" +msgstr "Interfaccia di rete wireless" + +#, python-format +msgid "with %d error" +msgid_plural "with %d errors" +msgstr[0] "mit %d Fehler" +msgstr[1] "mit %d Fehlern" + +# +msgid "working" +msgstr "Test in corso..." + +# +msgid "yellow" +msgstr "Giallo" + +# +msgid "yes" +msgstr "Sì" + +# +msgid "yes (keep feeds)" +msgstr "Sì (mantenere feed)" + +# +msgid "zap" +msgstr "Zap" + +msgid "zap and record" +msgstr "" + +# +msgid "zapped" +msgstr "Zap eseguito" + +# +#~ msgid "AA" +#~ msgstr "AA" + +# +#~ msgid "AB" +#~ msgstr "AB" + +# +#~ msgid "Activate PiP" +#~ msgstr "Attivare PiP" + +# +#~ msgid "Add/remove timer for current event" +#~ msgstr "Aggiungere/Rimuovere timer per evento corrente" + +#~ msgid "Adjust HDMI CEC settings" +#~ msgstr "Regolare le impostazioni CEC HDMI" + +# +#~ msgid "All satellites" +#~ msgstr "Tutti i satelliti" + +# +#~ msgid "BA" +#~ msgstr "BA" + +# +#~ msgid "BB" +#~ msgstr "BB" + +#~ msgid "Behavior of 'pause' when paused" +#~ msgstr "Effetto tasto pausa, quando in pausa" + +# +#~ msgid "Committed DiSEqC command" +#~ msgstr "Comando DiSEqC committed" + +#~ msgid "Configure the behavior of the 'pause' key when movie playback is already paused." +#~ msgstr "Opzione per impostare l'effetto del tasto \"Pausa\" quando una riproduzione si trova già in pausa." + +# +#~ msgid "DiSEqC repeats" +#~ msgstr "Ripetizioni DiSEqC" + +#~ msgid "Goto specific data/time" +#~ msgstr "Andare a data/ora specifiche" + +# +#~ msgid "No satellite frontend found!!" +#~ msgstr "Nessun apparato satellitare trovato!!!" + +#~ msgid "Open service list and select next channel" +#~ msgstr "Aprire l'elenco canali e selezionare il canale successivo" + +#~ msgid "Open service list and select previous channel" +#~ msgstr "Aprire l'elenco canali e selezionare il canale precedente" + +#~ msgid "Press '0' to toggle internal/external PiP." +#~ msgstr "0 >> Commutare PiP interna/esterna" + +# +#~ msgid "Remove timer" +#~ msgstr "Rim. timer" + +# +#~ msgid "Send DiSEqC" +#~ msgstr "Inviare DiSEqC" + +# +#~ msgid "Switch next channel" +#~ msgstr "Canale successivo" + +#~ msgid "Tuning step size" +#~ msgstr "Ampiezza passo" + +# +#~ msgid "Uncommitted DiSEqC command" +#~ msgstr "Comando DiSEqC uncommitted" + +# +#~ msgid "Zap back to service before satfinder?" +#~ msgstr "" +#~ "Ritornare al canale attivo\n" +#~ "prima della ricerca satelliti?" + +#~ msgid "tuner is not supported" +#~ msgstr "Tuner non supportato" diff --git a/po/ku.po b/po/ku.po new file mode 100644 index 0000000..cd122f2 --- /dev/null +++ b/po/ku.po @@ -0,0 +1,8157 @@ +# English translations for enigma2 package. +# Copyright (C) 2012 THE enigma2'S COPYRIGHT HOLDER +# This file is distributed under the same license as the enigma2 package. +# Automatically generated, 2012. +# +msgid "" +msgstr "" +"Project-Id-Version: enigma2 Kurdish translation\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-07-21 19:08+0200\n" +"PO-Revision-Date: 2013-04-22 04:29+0330\n" +"Last-Translator: dimili21\n" +"Language-Team: \n" +"Language: en\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Poedit 1.5.5\n" +"X-Poedit-Language: Kurdish\n" +"X-Poedit-Country: IRAQ\n" + +msgid "" +"\n" +"Advanced options and settings." +msgstr "" +"\n" +"Ayaré Zéde " + +msgid "" +"\n" +"After pressing OK, please wait!" +msgstr "" +"\n" +"Pay Ok bine bisekin!" + +msgid "" +"\n" +"Backup your receiver settings." +msgstr "" +"\n" +"yedeka bigre...." + +msgid "" +"\n" +"Edit the upgrade source address." +msgstr "" +"\n" +"Upgrate ra Eyaran Çékin" + +msgid "" +"\n" +"Manage extensions or plugins for your receiver" +msgstr "" +"\n" +"Manage extensions or plugins for your receiver" + +msgid "" +"\n" +"Online update of your receiver software." +msgstr "" +"\n" +"Zindi Update bikin" + +msgid "" +"\n" +"Press OK on your remote control to continue." +msgstr "" +"\n" +"Ji Kumanda pay Ok bisekin." + +msgid "" +"\n" +"Restore your backups by date." +msgstr "" +"\n" +"backup xwu restore bikin" + +msgid "" +"\n" +"Restore your receiver settings." +msgstr "" +"\n" +"Risiver restore bikin" + +msgid "" +"\n" +"Restore your receiver with a new firmware." +msgstr "" +"\n" +"Restore bikin Firmwaré nu ra" + +msgid "" +"\n" +"Scan for local extensions and install them." +msgstr "" +"\n" +"Giradiye mehali bigeri " + +msgid "" +"\n" +"Select your backup device.\n" +"Current device: " +msgstr "" +"\n" +"Select your backup device.\n" +"Current device: " + +msgid "" +"\n" +"View, install and remove available or installed packages." +msgstr "" +"\n" +"View, install and remove available or installed packages." + +msgid " (PiP)" +msgstr " (PiP)" + +msgid " (Radio)" +msgstr " (Radio)" + +msgid " (TV)" +msgstr " (TV)" + +msgid " (disabled)" +msgstr "" + +msgid " (higher than any auto)" +msgstr "" + +msgid " (higher than rotor any auto)" +msgstr "" + +msgid " (lower than any auto)" +msgstr "" + +msgid " extensions." +msgstr "Diréji" + +msgid " ms" +msgstr " ms" + +msgid " packages selected." +msgstr " paket binirxine" + +msgid " updates available." +msgstr " updates tuneye" + +#. TRANSLATORS: short time representation hour:minute +#, python-format +msgid "%2d:%02d" +msgstr "%2d:%02d" + +#. TRANSLATORS: full time representation hour:minute:seconds +#, python-format +msgid "%2d:%02d:%02d" +msgstr "%2d:%02d:%02d" + +msgid "%A %d %B" +msgstr "%A %d %B" + +#. TRANSLATORS: long date representations dayname daynum monthname in strftime() format! See 'man strftime' +msgid "%A %e %B" +msgstr "%A %e %B" + +#. TRANSLATORS: full date representation dayname daynum monthname year in strftime() format! See 'man strftime' +msgid "%A %e %B %Y" +msgstr "%A %e %B %Y" + +msgid "%H:%M" +msgstr "%H:%M" + +#. TRANSLATORS: short date representation short dayname daynum short monthname in strftime() format! See 'man strftime' +msgid "%a %e/%m" +msgstr "%a %e/%m" + +#. TRANSLATORS: long date representation short dayname daynum short monthname hour:minute in strftime() format! See 'man strftime' +msgid "%a %e/%m %-H:%M" +msgstr "%a %e/%m %-H:%M" + +#. TRANSLATORS: Intermediate scanning result, '%d' channel(s) have been found so far +#, fuzzy, python-format +msgid "%d channel found" +msgid_plural "%d channels found" +msgstr[0] "%d services found!" +msgstr[1] "%d services found!" + +#, python-format +msgid "%d file" +msgid_plural "%d files" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d hour" +msgstr[1] "%d hours" + +#, fuzzy, python-format +msgid "%d job is running in the background!" +msgid_plural "%d jobs are running in the background!" +msgstr[0] "%d jobs are running in the background!" +msgstr[1] "%d jobs are running in the background!" + +#, python-format +msgid "%d min" +msgstr "%d deqa" + +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d minute" +msgstr[1] "%d minutes" + +#, python-format +msgid "%d minutes" +msgstr "%d deqan" + +#, python-format +msgid "%d pixel wide" +msgid_plural "%d pixels wide" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "%d second" +msgstr[1] "%d seconds" + +#, fuzzy, python-format +msgid "%d subdirectory" +msgid_plural "%d subdirectories" +msgstr[0] "Root directory" +msgstr[1] "Root directory" + +#, python-format +msgid "%d wireless network found!" +msgid_plural "%d wireless networks found!" +msgstr[0] "%d wireless network found!" +msgstr[1] "%d wireless networks found!" + +msgid "%d-%b-%Y %-H:%M" +msgstr "%d-%b-%Y %-H:%M" + +msgid "%d-%m" +msgstr "%d-%m" + +msgid "%d.%B %Y" +msgstr "%d.%B %Y" + +#. TRANSLATORS: VFD hour:minute daynum short monthname in strftime() format! See 'man strftime' +msgid "%k:%M %e/%m" +msgstr "%k:%M %e/%m" + +#, python-format +msgid "%s %s free disk space" +msgstr "%s %s nav diké da vekiri" + +#, python-format +msgid "%s (%s)\n" +msgstr "%s (%s)\n" + +#. TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. +#, python-format +msgid "%s is no longer used. Should it be deleted?" +msgstr "%s is no longer used. Should it be deleted?" + +#, python-format +msgid "%s updated package available" +msgid_plural "%s updated packages available" +msgstr[0] "%s updated package available" +msgstr[1] "%s updated packages available" + +#, python-format +msgid "%s%d min" +msgstr "" + +#, python-format +msgid "%s/%s: %s" +msgstr "%s/%s: %s" + +msgid "(ZAP)" +msgstr "(KANAL B)IGERI" + +msgid "(empty)" +msgstr "(vala)" + +msgid "(show optional DVD audio menu)" +msgstr "(show optional DVD dengé menu)" + +msgid "* Only available if more than one interface is active." +msgstr "* Only available if more than one interface is active." + +msgid "/s" +msgstr "" + +msgid "0" +msgstr "0" + +msgid "1" +msgstr "1" + +msgid "1.0" +msgstr "1.0" + +msgid "1.1" +msgstr "1.1" + +msgid "1.2" +msgstr "1.2" + +msgid "12V output" +msgstr "12V derve" + +msgid "13 V" +msgstr "13 V" + +msgid "16:10" +msgstr "16:10" + +msgid "16:10 Letterbox" +msgstr "16:10 Letterbox" + +msgid "16:10 PanScan" +msgstr "16:10 PanScan" + +msgid "16:9" +msgstr "16:9" + +msgid "16:9 Letterbox" +msgstr "16:9 Letterbox" + +msgid "16:9 always" +msgstr "16:9 daim" + +msgid "18 V" +msgstr "18 V" + +msgid "2" +msgstr "2" + +msgid "23.976" +msgstr "" + +msgid "24" +msgstr "" + +msgid "25" +msgstr "" + +msgid "29.97" +msgstr "" + +msgid "3" +msgstr "3" + +msgid "30" +msgstr "" + +msgid "3d mode" +msgstr "3d mode" + +msgid "4" +msgstr "4" + +msgid "4:3" +msgstr "4:3" + +msgid "4:3 Letterbox" +msgstr "4:3 Letterbox" + +msgid "4:3 PanScan" +msgstr "4:3 PanScan" + +msgid "5" +msgstr "5" + +msgid "6" +msgstr "6" + +msgid "7" +msgstr "7" + +msgid "8" +msgstr "8" + +msgid "9" +msgstr "9" + +#, python-format +msgid ": %s" +msgstr "" + +msgid "<Current movielist location>" +msgstr "<konuma listekén filma>" + +msgid "<Default movie location>" +msgstr "<Default Nava Filma>" + +msgid "<Last timer location>" +msgstr "<Last timer location>" + +msgid "<unknown>" +msgstr "<unknown>" + +msgid "??" +msgstr "??" + +msgid "A" +msgstr "A" + +#, python-format +msgid "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" +msgstr "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" + +#, python-format +msgid "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" +msgstr "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" + +msgid "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" + +msgid "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" + +msgid "A graphical EPG for all services of an specific bouquet" +msgstr "A graphical EPG for all services of an specific bouquet" + +#, python-format +msgid "" +"A record has been started:\n" +"%s" +msgstr "" +"A record has been started:\n" +"%s" + +msgid "" +"A recording is currently running.\n" +"What do you want to do?" +msgstr "" +"A recording is currently running.\n" +"What do you want to do?" + +msgid "A recording is currently running. Please stop the recording before trying to configure the positioner." +msgstr "A recording is currently running. Please stop the recording before trying to configure the positioner." + +msgid "A recording is currently running. Please stop the recording before trying to scan." +msgstr "A recording is currently running. Please stop the recording before trying to scan." + +msgid "A recording is currently running. Please stop the recording before trying to start the satfinder." +msgstr "A recording is currently running. Please stop the recording before trying to start the satfinder." + +#, python-format +msgid "A required tool (%s) was not found." +msgstr "A required tool (%s) was not found." + +msgid "A search for available updates is currently in progress." +msgstr "A search for available updates is currently in progress." + +msgid "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" +msgstr "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" + +msgid "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" + +msgid "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" + +msgid "A small overview of the available icon states and actions." +msgstr "A small overview of the available icon states and actions." + +msgid "" +"A timer failed to record!\n" +"Disable TV and try again?\n" +msgstr "" +"A timer failed to record!\n" +"Disable TV and try again?\n" + +msgid "A/V settings" +msgstr "A/V Çékirin" + +msgid "AC3/DTS downmix" +msgstr "AC3/DTS downmix" + +msgid "Abort" +msgstr "Bettal Bike" + +msgid "About" +msgstr "Heqé wi" + +msgid "About..." +msgstr "Heqé wi..." + +msgid "Accesspoint:" +msgstr "Bigehize (Access Point):" + +msgid "Action on long powerbutton press" +msgstr "Diréj pay Qumanda Girtin bike." + +msgid "Action on short powerbutton press" +msgstr "Hédi Pay Qumanda Girtin bike" + +msgid "Activate Picture in Picture" +msgstr "Aktif bike resm o resm" + +msgid "Activate current configuration" +msgstr "Ti dixwazi aktif biki" + +msgid "Activate network settings" +msgstr "Eyare Networké Aktif bike" + +msgid "Activate the configured network settings." +msgstr "Actif bike eyaré networké.." + +msgid "Adapter settings" +msgstr "Adaptör Çéki" + +msgid "Add" +msgstr "Çéki lé giréde" + +msgid "Add Bookmark" +msgstr "" + +msgid "Add a mark" +msgstr "İşareté léki" + +msgid "Add a nameserver entry" +msgstr "Yek Navé nu léke" + +msgid "Add a new title" +msgstr "Navé Seroki" + +msgid "Add bookmark" +msgstr "Léke bookmark" + +msgid "Add directory to playlist" +msgstr "Listeya Xebatéra dosya léke" + +msgid "Add file to playlist" +msgstr "Listeya Xebatéra dosya léke" + +msgid "Add files to playlist" +msgstr "Listeya Xebatéra dosya léke" + +msgid "Add more details to the crash log" +msgstr "Add more details to the crash log" + +msgid "Add provider" +msgstr "Add provider" + +msgid "Add recording (enter recording duration)" +msgstr "Add recording (enter recording duration)" + +msgid "Add recording (enter recording endtime)" +msgstr "Add recording (enter recording endtime)" + +msgid "Add recording (indefinitely)" +msgstr "Add recording (indefinitely)" + +msgid "Add recording (stop after current event)" +msgstr "Add recording (stop after current event)" + +msgid "Add service" +msgstr "Hizmeté Nu girédi" + +msgid "Add timer" +msgstr "Add timer" + +msgid "Add title" +msgstr "Add title" + +msgid "Add to bouquet" +msgstr "bouqueta nu girédi" + +msgid "Add to favourites" +msgstr "Favoriye Nu Girédi" + +msgid "Add/remove change timer for current event" +msgstr "" + +msgid "Adjust 3D settings" +msgstr "Adjust 3D settings" + +msgid "Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens." +msgstr "Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens." + +msgid "Advanced" +msgstr "" + +msgid "Advanced options" +msgstr "Seçeneké Zéde" + +msgid "Advanced restore" +msgstr "Advanced restore" + +msgid "Advanced software" +msgstr "Firmwaré Zéde" + +msgid "Advanced software plugin" +msgstr "Firmwaré Zéde Girédin" + +msgid "Advanced video enhancement setup" +msgstr "Video Eyaré zéde çékin" + +msgid "Advanced video setup" +msgstr "Zéde Video Eyar bikin" + +msgid "After event" +msgstr "After event" + +msgid "Album" +msgstr "Album" + +msgid "Alignment of events" +msgstr "" + +msgid "Alignment of service names" +msgstr "" + +msgid "All" +msgstr "Temami" + +msgid "All ages" +msgstr "Hemu Kes" + +msgid "All satellites 1 (USALS)" +msgstr "" + +msgid "All satellites 2 (USALS)" +msgstr "" + +msgid "All satellites 3 (USALS)" +msgstr "" + +msgid "All satellites 4 (USALS)" +msgstr "" + +msgid "Allocate" +msgstr "Biqetinin" + +msgid "Allocate unused memory index" +msgstr "Allocate unused memory index" + +msgid "Allow quit movieplayer with exit" +msgstr "" + +msgid "Allow subtitle language to equal audio language" +msgstr "Allow subtitle language to equal audio language" + +msgid "Allow subtitles for hearing impaired" +msgstr "Allow subtitles for hearing impaired" + +msgid "Alpha" +msgstr "Alpha" + +msgid "Alternative" +msgstr "Evé din" + +msgid "Alternative numbering mode" +msgstr "Evé din numara" + +msgid "Alternative services tuner priority" +msgstr "Alternative services tuner priority" + +msgid "Always ask" +msgstr "Always ask" + +msgid "Always hide infobar" +msgstr "" + +msgid "An empty filename is illegal." +msgstr "An empty filename is illegal." + +msgid "An error occurred while downloading the packetlist. Please try again." +msgstr "An error occurred while downloading the packetlist. Please try again." + +msgid "An unknown error occurred!" +msgstr "An unknown error occurred!" + +msgid "And will put your receiver in standby over " +msgstr "" + +msgid "Any activity" +msgstr "Any activity" + +msgid "Arabic" +msgstr "Arabi" + +msgid "Are you sure to remove this entry?" +msgstr "" + +msgid "" +"Are you sure you want to activate this network configuration?\n" +"\n" +msgstr "" +"Are you sure you want to activate this network configuration?\n" +"\n" + +msgid "" +"Are you sure you want to delete\n" +"the following backup:\n" +msgstr "" +"Are you sure you want to delete\n" +"the following backup:\n" + +msgid "Are you sure you want to exit this wizard?" +msgstr "Are you sure you want to exit this wizard?" + +msgid "" +"Are you sure you want to restart your network interfaces?\n" +"\n" +msgstr "" +"Are you sure you want to restart your network interfaces?\n" +"\n" + +#, python-format +msgid "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" + +msgid "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" + +msgid "Artist" +msgstr "Artist" + +msgid "Arts/Culture" +msgstr "Sanat u Kultur" + +msgid "Ask user" +msgstr "Xebatkar Pirski" + +msgid "Aspect ratio" +msgstr "Aspect ratio" + +msgid "Assigned CAIds:" +msgstr "Assigned CAIds:" + +msgid "Assigned services/provider:" +msgstr "Assigned services/provider:" + +msgid "At beginning" +msgstr "At beginning" + +msgid "At end" +msgstr "At end" + +msgid "Audio" +msgstr "Deng" + +msgid "Audio PID" +msgstr "Deng PID" + +msgid "Audio language selection 1" +msgstr "Dengé ziman 1" + +msgid "Audio language selection 2" +msgstr "Dengé ziman 2" + +msgid "Audio language selection 3" +msgstr "Dengé ziman 3" + +msgid "Audio language selection 4" +msgstr "Dengé ziman 4" + +msgid "Audio options..." +msgstr "Eyaré deng..." + +#, python-format +msgid "Audio track (%s) format" +msgstr "Deng track (%s) format" + +#, python-format +msgid "Audio track (%s) language" +msgstr "Deng track (%s) language" + +msgid "Author: " +msgstr "Niviskar: " + +msgid "Authoring mode" +msgstr "modé Nivisi" + +#. TRANSLATORS: (aspect ratio policy: always try to display as fullscreen, when there is no content (black bars) on left/right, even if this breaks the aspect. +msgid "Auto" +msgstr "Auto" + +msgid "Auto chapter split every ? minutes (0=never)" +msgstr "Auto chapter split every ? minutes (0=never)" + +msgid "Auto flesh" +msgstr "Auto flesh" + +msgid "Auto focus" +msgstr "Auto focus" + +msgid "Auto focus commencing ..." +msgstr "Auto netkirin ..." + +msgid "Auto language selection" +msgstr "Auto Ziman Çékirin" + +msgid "Auto scart switching" +msgstr "Auto scart switching" + +msgid "Automatic" +msgstr "Serbuxwe" + +msgid "Automatic scan" +msgstr "Automatic Légerin" + +msgid "Automatically start timeshift after" +msgstr "" + +msgid "Automatically turn on external subtitles" +msgstr "" + +msgid "Available format variables" +msgstr "Available format variables" + +msgid "B" +msgstr "B" + +msgid "BER" +msgstr "BER" + +msgid "BER:" +msgstr "BER:" + +msgid "Back" +msgstr "Paş" + +msgid "Background" +msgstr "Paş Reng" + +msgid "Background color" +msgstr "Rengé Paşi" + +msgid "Background delete option" +msgstr "Rengé paşi paqişki" + +msgid "Background delete speed" +msgstr "Zu paqişki" + +msgid "Backup completed." +msgstr "Temami Backup " + +msgid "Backup failed." +msgstr "Backup failed." + +msgid "Backup is running..." +msgstr "Backup bixebtine" + +msgid "Backup system settings" +msgstr "Eyari Backup system" + +msgid "Band" +msgstr "Band" + +msgid "Bandwidth" +msgstr "Frehiya Band" + +msgid "Basque" +msgstr "Basque" + +msgid "Begin time" +msgstr "zeman dest pédike" + +msgid "Behavior of 'pause and ok' when paused" +msgstr "" + +msgid "Behavior of 0 key in PiP-mode" +msgstr "Behavior of 0 key in PiP-mode" + +msgid "Behavior when a movie is started" +msgstr "Behavior when a movie is started" + +msgid "Behavior when a movie is stopped" +msgstr "Behavior when a movie is stopped" + +msgid "Behavior when a movie reaches the end" +msgstr "Behavior when a movie reaches the end" + +msgid "Big PiP" +msgstr "" + +msgid "Bitrate:" +msgstr "Zu leziya Bit:" + +msgid "Black screen" +msgstr "Ekrana Reş" + +msgid "Black screen till locked" +msgstr "Ekrana reş kilitke" + +msgid "Block noise reduction" +msgstr "Dengé zéde kémke" + +msgid "Blue boost" +msgstr "Pişgiriya mawi" + +msgid "Bookmarks" +msgstr "Bookmarks" + +msgid "Brightness" +msgstr "Ronahi" + +msgid "Bulgarian" +msgstr "Bulgari" + +msgid "Burn DVD" +msgstr "Bişewiti DVD" + +#, python-format +msgid "Burn audio track (%s)" +msgstr "bişewiti deng temaşe (%s)" + +msgid "Burn existing image to DVD" +msgstr "Burn existing image to DVD" + +msgid "Burn to DVD" +msgstr "Burn to DVD" + +msgid "Bus: " +msgstr "Bus: " + +msgid "By default, SNR will be shown in dB (when supported by the tuner). This setting forces SNR to be shown as a percentage instead." +msgstr "By default, SNR will be shown in dB (when supported by the tuner). This setting forces SNR to be shown as a percentage instead." + +msgid "C" +msgstr "C" + +msgid "C-Band" +msgstr "C-Band" + +msgid "CH" +msgstr "" + +msgid "CI assignment" +msgstr "CI assignment" + +msgid "CVBS" +msgstr "CVBS" + +msgid "Cable" +msgstr "Qablo" + +msgid "Cable Scan" +msgstr "Cable Légerin" + +msgid "Cache thumbnails" +msgstr "Aqilé piçuk" + +msgid "Calculate" +msgstr "hesab bike" + +msgid "Calculate all positions" +msgstr "Her daim hesab bike" + +msgid "Calculation complete" +msgstr "Temami Hesapki" + +msgid "Calibrate" +msgstr "Eyari bike" + +msgid "Can be used for different fps between external subtitles and video." +msgstr "" + +msgid "Cancel" +msgstr "Berdi" + +msgid "Cannot determine" +msgstr "Tişt çé nebu" + +msgid "Cannot find any signal ..., aborting !" +msgstr "Heta Neha min Sinyal Nedi... Bettal ki!" + +msgid "Cannot move files on a different disk or system to the trash can" +msgstr "Kutuya Çöp ti nikani valaki" + +msgid "Cannot move to trash can" +msgstr "Cannot move to trash can" + +msgid "Capacity: " +msgstr "Capacity: " + +msgid "Card" +msgstr "Card" + +msgid "Cascade PiP" +msgstr "" + +msgid "Center DVB subtitles" +msgstr "Center DVB subtitles" + +msgid "Center time-labels and remove date" +msgstr "" + +msgid "Change bouquets in quickzap" +msgstr "Zu Buketa çédki" + +msgid "Change pin code" +msgstr "Kodé pin bedilni" + +msgid "Change recording (duration)" +msgstr "Qeydi bedilni" + +msgid "Change recording (endtime)" +msgstr "Change recording (endtime)" + +msgid "Change repeat and delay settings?" +msgstr "Change repeat and delay settings?" + +msgid "Change service PIN" +msgstr "Kodé Hizmeté PIN" + +msgid "Change service PINs" +msgstr "Kodé Hizmeté PIN" + +msgid "Change setup PIN" +msgstr "Kodé Hizmeté PIN" + +msgid "Change step size" +msgstr "Change step size" + +msgid "Change timer" +msgstr "" + +msgid "Changelog" +msgstr "Tewirna" + +msgid "Channel" +msgstr "Qanal" + +msgid "Channel list type" +msgstr "Qanal Liste " + +msgid "Channel not in services list" +msgstr "Channel not in services list" + +msgid "Channel selection" +msgstr "Channel selection" + +msgid "Channel:" +msgstr "Qenal:" + +msgid "Channellist menu" +msgstr "Menu Qenal Liste" + +msgid "Chap." +msgstr "Mirov" + +msgid "Chapter" +msgstr "Chapter" + +msgid "Chapter:" +msgstr "Chapter:" + +msgid "Check" +msgstr "Qontrol" + +msgid "Check the internet connection" +msgstr "Girédayiya İnterneté Qonrol Bike" + +msgid "Check the internet connection again" +msgstr "Disa Qontrola İnternet Bikin" + +msgid "Checking filesystem..." +msgstr "Sistema dosya binéri" + +msgid "Checking the internet connection" +msgstr "Qontrola İnternet" + +#, python-format +msgid "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" +msgstr "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" + +msgid "Children/Youth" +msgstr "Zaruk/Xort" + +msgid "Choose which tuner to configure." +msgstr "Çékirina Tuner Binirxine" + +msgid "Circular left" +msgstr "Çepa daira" + +msgid "Circular right" +msgstr "Raştiya daira" + +msgid "Cleanup" +msgstr "Paqişi" + +msgid "Clear" +msgstr "Paqiş" + +msgid "Clear before scan" +msgstr "Paqişi paş légerin" + +msgid "Clear fixed" +msgstr "Clear fixed" + +msgid "Clear log" +msgstr "Clear log" + +msgid "Clear playlist" +msgstr "Clear playlist" + +msgid "Close" +msgstr "Veqeti" + +msgid "Close PiP on exit" +msgstr "" + +msgid "Close title selection" +msgstr "Close title selection" + +msgid "Code rate HP" +msgstr "Code rate HP" + +msgid "Code rate LP" +msgstr "Code rate LP" + +msgid "Coderate HP" +msgstr "Coderate HP" + +msgid "Coderate LP" +msgstr "Coderate LP" + +msgid "Collection name" +msgstr "Nav Koleksiyon" + +msgid "Collection settings" +msgstr "Eyara Kolleksiyon" + +msgid "Color format" +msgstr "Formata Renga" + +msgid "Command execution..." +msgstr "Command execution..." + +msgid "Command order" +msgstr "Command order" + +msgid "Common Interface" +msgstr "Qerta Ortax" + +msgid "Common Interface assignment" +msgstr "Common Interface assignment" + +msgid "Communication" +msgstr "Hevra Girédayi" + +msgid "Compact flash" +msgstr "Compact flash" + +msgid "Complete" +msgstr "Temami" + +msgid "Complex (allows mixing audio tracks and aspects)" +msgstr "Complex (allows mixing audio tracks and aspects)" + +msgid "Composition of the recording filenames" +msgstr "Composition of the recording filenames" + +msgid "Configuration mode" +msgstr "Çékirina Ru" + +#, python-format +msgid "Configuration mode: %s" +msgstr "Configuration mode: %s" + +msgid "Configuration..." +msgstr "Çékirin..." + +msgid "Configure an additional delay to improve external subtitle synchronisation." +msgstr "" + +msgid "Configure an additional delay to improve subtitle synchronisation." +msgstr "" + +msgid "Configure for how long the infobar will remain visible after activation." +msgstr "Configure for how long the infobar will remain visible after activation." + +msgid "Configure for how many minutes finished events should remain visible in the EPG. Useful when you need information about an event which has just finished, or has been delayed." +msgstr "Configure for how many minutes finished events should remain visible in the EPG. Useful when you need information about an event which has just finished, or has been delayed." + +msgid "Configure how recording filenames are constructed." +msgstr "Configure how recording filenames are constructed." + +msgid "Configure how the fan should operate" +msgstr "" + +msgid "Configure if and how crypto icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how long the latest service in the PiP will be remembered." +msgstr "" + +msgid "Configure if and how service type icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how wide columns will be shown in the channel selection list." +msgstr "" + +msgid "Configure if service picons will be shown in the channel selection list." +msgstr "" + +msgid "Configure interface" +msgstr "Configure interface" + +msgid "Configure nameservers" +msgstr "Configure nameservers" + +msgid "Configure on which devices the background delete option should be used." +msgstr "Configure on which devices the background delete option should be used." + +msgid "Configure remote control type" +msgstr "Configure remote control type" + +msgid "Configure the DiSEqC mode for this LNB." +msgstr "Configure the DiSEqC mode for this LNB." + +msgid "Configure the IP address." +msgstr "Configure the IP address." + +msgid "Configure the aspect ratio of the screen." +msgstr "Configure the aspect ratio of the screen." + +msgid "Configure the behavior of the 'pause and ok' key when movie playback is already paused." +msgstr "" + +msgid "Configure the behavior when movie playback is manually stopped." +msgstr "Configure the behavior when movie playback is manually stopped." + +msgid "Configure the behavior when movie playback is started." +msgstr "Configure the behavior when movie playback is started." + +msgid "Configure the behavior when reaching the end of a movie, during movie playback." +msgstr "Configure the behavior when reaching the end of a movie, during movie playback." + +msgid "Configure the border width of the subtitles. The dark border makes the subtitles easier to read on a light background." +msgstr "Configure the border width of the subtitles. The dark border makes the subtitles easier to read on a light background." + +msgid "Configure the brightness level of the front panel display during standby." +msgstr "Configure the brightness level of the front panel display during standby." + +msgid "Configure the brightness level of the front panel display." +msgstr "Configure the brightness level of the front panel display." + +msgid "Configure the color of the external subtitles, alternative (normal in white, italic in yellow, bold in cyan, underscore in green), white or yellow." +msgstr "" + +msgid "Configure the color of the teletext subtitles." +msgstr "Configure the color of the teletext subtitles." + +msgid "Configure the contrast level of the front panel display." +msgstr "Configure the contrast level of the front panel display." + +msgid "Configure the cursor behaviour in the channel selection list. When opening the channel selection list you can keep on the current service or already select up/down and you are able to revert the B+/B- buttons." +msgstr "" + +msgid "Configure the duration in hours the receiver should go to standby when the receiver is not controlled." +msgstr "" + +msgid "Configure the duration in minutes for the screensaver." +msgstr "" + +msgid "Configure the duration in minutes for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +msgstr "" + +msgid "Configure the duration when the receiver should go to shut down in case the receiver is in standby mode." +msgstr "" + +msgid "Configure the first audio language (highest priority)." +msgstr "Configure the first audio language (highest priority)." + +msgid "Configure the first subtitle language (highest priority)." +msgstr "Configure the first subtitle language (highest priority)." + +msgid "Configure the font size of the subtitles." +msgstr "Configure the font size of the subtitles." + +msgid "Configure the fourth audio language." +msgstr "Configure the fourth audio language." + +msgid "Configure the fourth subtitle language." +msgstr "Configure the fourth subtitle language." + +msgid "Configure the function of a long press on the power button." +msgstr "Configure the function of a long press on the power button." + +msgid "Configure the function of a short press on the power button." +msgstr "Configure the function of a short press on the power button." + +msgid "Configure the function of the '0' button do when PIP is active." +msgstr "Configure the function of the '0' button do when PIP is active." + +msgid "Configure the gateway." +msgstr "Configure the gateway." + +msgid "Configure the general audio delay of Dolby Digital sound tracks." +msgstr "Configure the general audio delay of Dolby Digital sound tracks." + +msgid "Configure the general audio delay of stereo sound tracks." +msgstr "Configure the general audio delay of stereo sound tracks." + +msgid "Configure the hard disk drive to go to standby after the specified idle time." +msgstr "Configure the hard disk drive to go to standby after the specified idle time." + +msgid "Configure the horizontal alignment of the subtitles." +msgstr "Configure the horizontal alignment of the subtitles." + +msgid "Configure the initial fast forward speed. When you press the fast forward button, winding will start at this speed." +msgstr "Configure the initial fast forward speed. When you press the fast forward button, winding will start at this speed." + +msgid "Configure the initial rewind speed. When you press the rewind button, winding will start at this speed." +msgstr "Configure the initial rewind speed. When you press the rewind button, winding will start at this speed." + +msgid "Configure the latitude of your location." +msgstr "Configure the latitude of your location." + +msgid "Configure the longitude of your location." +msgstr "Configure the longitude of your location." + +msgid "Configure the minimum amount of disk space to be available for recordings. When the amount of space drops below this value, deleted items will be removed from the trash can." +msgstr "Configure the minimum amount of disk space to be available for recordings. When the amount of space drops below this value, deleted items will be removed from the trash can." + +msgid "Configure the nameserver (DNS)." +msgstr "Configure the nameserver (DNS)." + +msgid "Configure the netmask." +msgstr "Configure the netmask." + +msgid "Configure the number of days after which items are automaticaly removed from the trash can." +msgstr "Configure the number of days after which items are automaticaly removed from the trash can." + +msgid "Configure the number of days old timers are kept before they are automatically removed from the timer list." +msgstr "Configure the number of days old timers are kept before they are automatically removed from the timer list." + +msgid "Configure the offline decoding delay in milliseconds. The configured delay is observed at each control word parity change." +msgstr "Configure the offline decoding delay in milliseconds. The configured delay is observed at each control word parity change." + +msgid "Configure the possible fast forward speeds." +msgstr "Configure the possible fast forward speeds." + +msgid "Configure the possible rewind speeds." +msgstr "Configure the possible rewind speeds." + +msgid "Configure the primary EPG language." +msgstr "Configure the primary EPG language." + +msgid "Configure the refresh rate of the screen." +msgstr "Configure the refresh rate of the screen." + +msgid "Configure the screen resolution in PC output mode." +msgstr "Configure the screen resolution in PC output mode." + +msgid "Configure the second audio language." +msgstr "Configure the second audio language." + +msgid "Configure the second subtitle language." +msgstr "Configure the second subtitle language." + +msgid "Configure the secondary EPG language." +msgstr "Configure the secondary EPG language." + +msgid "Configure the sharpness of the video scaling." +msgstr "Configure the sharpness of the video scaling." + +msgid "Configure the skip time interval for the '1'/'3' buttons." +msgstr "Configure the skip time interval for the '1'/'3' buttons." + +msgid "Configure the skip time interval for the '4'/'6' buttons." +msgstr "Configure the skip time interval for the '4'/'6' buttons." + +msgid "Configure the skip time interval for the '7'/'9' buttons." +msgstr "Configure the skip time interval for the '7'/'9' buttons." + +msgid "Configure the slow motion speeds." +msgstr "Configure the slow motion speeds." + +msgid "Configure the source of the frontend data as shown on the infobars. 'Settings' is as stored on the settings. 'Tuner' is as reported by the tuner." +msgstr "" + +msgid "Configure the speed of the background deletion process. Lower speed will consume less hard disk drive performance." +msgstr "Configure the speed of the background deletion process. Lower speed will consume less hard disk drive performance." + +msgid "Configure the speed of the fan" +msgstr "" + +msgid "Configure the subtitle delay when timing information is not available." +msgstr "Configure the subtitle delay when timing information is not available." + +msgid "Configure the third audio language." +msgstr "Configure the third audio language." + +msgid "Configure the third subtitle language." +msgstr "Configure the third subtitle language." + +msgid "Configure the transparency of the OSD." +msgstr "Configure the transparency of the OSD." + +msgid "Configure the transparency of the black background of graphical DVB subtitles." +msgstr "Configure the transparency of the black background of graphical DVB subtitles." + +msgid "Configure the tuner mode." +msgstr "Configure the tuner mode." + +msgid "Configure the type of status indication icons shown in the movielist." +msgstr "Configure the type of status indication icons shown in the movielist." + +msgid "Configure the vertical position of the subtitles, measured from the bottom of the screen." +msgstr "Configure the vertical position of the subtitles, measured from the bottom of the screen." + +msgid "Configure the video output mode (or resolution)." +msgstr "Configure the video output mode (or resolution)." + +msgid "Configure the way in which the receiver changes channels." +msgstr "Configure the way in which the receiver changes channels." + +msgid "Configure where completed timers show up in the timer list." +msgstr "Configure where completed timers show up in the timer list." + +msgid "Configure whether (and for how long) a second infobar will be shown when OK is pressed twice. The second infobar contains additional information about the current channel." +msgstr "Configure whether (and for how long) a second infobar will be shown when OK is pressed twice. The second infobar contains additional information about the current channel." + +msgid "Configure whether multi channel sound tracks should be downmixed to stereo." +msgstr "Configure whether multi channel sound tracks should be downmixed to stereo." + +msgid "Configure whether or not an icon should be shown when your motorized dish is moving." +msgstr "Configure whether or not an icon should be shown when your motorized dish is moving." + +msgid "Configure which access level to use for the configuration menu. Expert level gives access to all items." +msgstr "Configure which access level to use for the configuration menu. Expert level gives access to all items." + +msgid "Configure which color format should be used on the SCART output." +msgstr "Configure which color format should be used on the SCART output." + +msgid "Configure which tuner for recordings will be preferred, when more than one tuner is available." +msgstr "" + +msgid "Configure which tuner type will be preferred, when the same service is available on different types of tuners." +msgstr "Configure which tuner type will be preferred, when the same service is available on different types of tuners." + +msgid "Configure which tuner will be preferred, when more than one tuner is available. If set to 'auto' the system will give priority to the tuner having the lowest number of channels/satellites." +msgstr "Configure which tuner will be preferred, when more than one tuner is available. If set to 'auto' the system will give priority to the tuner having the lowest number of channels/satellites." + +msgid "Configure your internal LAN" +msgstr "Configure your internal LAN" + +msgid "Configure your network again" +msgstr "Configure your network again" + +msgid "Configure your network settings, and press OK to start the scan" +msgstr "Configure your network settings, and press OK to start the scan" + +msgid "Configure your wireless LAN again" +msgstr "Configure your wireless LAN again" + +msgid "Configures which video output connector will be used." +msgstr "Configures which video output connector will be used." + +msgid "Configuring" +msgstr "Configuring" + +msgid "Conflicting timer" +msgstr "Conflicting timer" + +msgid "Connect" +msgstr "Giréda" + +msgid "Connect to a wireless network" +msgstr "Girédibi wireless network" + +msgid "Connected satellites" +msgstr "" + +msgid "Connected to" +msgstr "Girédi " + +msgid "Connected!" +msgstr "Girédya!" + +msgid "Constellation" +msgstr "Constellation" + +msgid "Content does not fit on DVD!" +msgstr "Content does not fit on DVD!" + +msgid "Continue" +msgstr "Dowmke" + +msgid "Continue in background" +msgstr "Continue in background" + +msgid "Continue playback" +msgstr "Continue playback" + +msgid "Continue playing" +msgstr "Continue playing" + +msgid "Continues play (loop)" +msgstr "Continues play (loop)" + +msgid "Contrast" +msgstr "Contrast" + +msgid "Convert ext3 filesystem to ext4" +msgstr "Convert ext3 filesystem to ext4" + +msgid "Convert ext3 to ext4" +msgstr "Convert ext3 to ext4" + +msgid "Converting ext3 to ext4..." +msgstr "Converting ext3 to ext4..." + +msgid "Copy" +msgstr "Copy" + +msgid "Could not connect to receiver .NFI image feed server:" +msgstr "Could not connect to receiver .NFI image feed server:" + +msgid "Could not find installed channel list." +msgstr "Could not find installed channel list." + +msgid "Could not load medium! No disc inserted?" +msgstr "Could not load medium! No disc inserted?" + +msgid "Could not open Picture in Picture" +msgstr "Could not open Picture in Picture" + +#, python-format +msgid "Could not record due to conflicting timer %s" +msgstr "Could not record due to conflicting timer %s" + +#, python-format +msgid "Could not record due to invalid service %s" +msgstr "Could not record due to invalid service %s" + +msgid "Create DVD-ISO" +msgstr "Create DVD-ISO" + +msgid "Create more detailed crash log" +msgstr "Create more detailed crash log" + +#, python-format +msgid "Creating directory %s failed." +msgstr "Creating directory %s failed." + +msgid "Creating filesystem" +msgstr "Creating filesystem" + +msgid "Creating partition" +msgstr "Creating partition" + +msgid "Croatian" +msgstr "Xitwat" + +msgid "Current CEC address" +msgstr "Current CEC address" + +msgid "Current device: " +msgstr "Current device: " + +msgid "Current event EPG" +msgstr "Current event EPG" + +#, python-format +msgid "Current mode: %s \n" +msgstr "" + +msgid "Current settings:" +msgstr "Current settings:" + +msgid "Current transponder" +msgstr "Current transponder" + +msgid "Current value: " +msgstr "Current value: " + +msgid "Current version:" +msgstr "Current version:" + +msgid "Currently installed image" +msgstr "Currently installed image" + +msgid "Currently the commit log cannot be retrieved - please try later again" +msgstr "" + +msgid "Custom skip time for '1'/'3' buttons" +msgstr "Custom skip time for '1'/'3' buttons" + +msgid "Custom skip time for '4'/'6' buttons" +msgstr "Custom skip time for '4'/'6' buttons" + +msgid "Custom skip time for '7'/'9' buttons" +msgstr "Custom skip time for '7'/'9' buttons" + +msgid "Customize" +msgstr "Weki Xwu Çéki" + +msgid "Customize channel list cursor behavior" +msgstr "" + +msgid "Cut" +msgstr "Cut" + +msgid "Cutlist editor..." +msgstr "Cutlist editor..." + +msgid "Czech" +msgstr "Czech" + +msgid "D" +msgstr "D" + +msgid "DHCP" +msgstr "DHCP" + +msgid "DMM advanced" +msgstr "DMM advanced" + +msgid "DMM normal" +msgstr "DMM normal" + +msgid "DUAL LAYER DVD" +msgstr "DUAL LAYER DVD" + +msgid "DVB subtitle black transparency" +msgstr "DVB subtitle black transparency" + +msgid "DVB-C" +msgstr "DVB-C" + +msgid "DVB-C ANNEX C" +msgstr "DVB-C ANNEX C" + +msgid "DVB-S" +msgstr "DVB-S" + +msgid "DVB-S2" +msgstr "DVB-S2" + +msgid "DVB-T" +msgstr "DVB-T" + +msgid "DVB-T2" +msgstr "DVB-T2" + +msgid "DVD data format" +msgstr "DVD data format" + +msgid "DVD file browser" +msgstr "DVD file browser" + +msgid "DVD media toolbox" +msgstr "DVD media toolbox" + +msgid "DVD player" +msgstr "DVD player" + +msgid "DVD titlelist" +msgstr "DVD titlelist" + +msgid "Danish" +msgstr "Danish" + +msgid "Date" +msgstr "Dirok" + +msgid "Date/time input" +msgstr "Date/time input" + +msgid "Deep standby" +msgstr "Deep standby" + +msgid "Default" +msgstr "Default" + +msgid "Default movie location" +msgstr "Default movie location" + +msgid "Default settings" +msgstr "Default settings" + +msgid "Delay before key repeat starts:" +msgstr "Delay before key repeat starts:" + +msgid "Delay for external subtitles" +msgstr "" + +msgid "Delete" +msgstr "Paqiş" + +msgid "Delete entry" +msgstr "Delete entry" + +msgid "Delete failed!" +msgstr "Delete failed!" + +msgid "Delete file" +msgstr "Delete file" + +msgid "Delete playlist entry" +msgstr "Delete playlist entry" + +msgid "Delete saved playlist" +msgstr "Delete saved playlist" + +msgid "Delete timer" +msgstr "" + +msgid "Delete..." +msgstr "Paqiş...." + +msgid "Deleted" +msgstr "Paqişi" + +msgid "Deleted items" +msgstr "Deleted items" + +msgid "Depth" +msgstr "Depth" + +msgid "Descramble http streams" +msgstr "Descramble http streams" + +msgid "Description" +msgstr "Description" + +msgid "Deselect" +msgstr "Deselect" + +msgid "Details for plugin: " +msgstr "Details for plugin: " + +msgid "Detected HDD:" +msgstr "Detected HDD:" + +msgid "Detected NIMs:" +msgstr "Detected NIMs:" + +msgid "Devicename:" +msgstr "Devicename:" + +msgid "Devide" +msgstr "" + +msgid "DiSEqC" +msgstr "DiSEqC" + +msgid "DiSEqC 1.0 command" +msgstr "" + +msgid "DiSEqC 1.1 command" +msgstr "" + +msgid "DiSEqC 1.1 repeats" +msgstr "" + +msgid "DiSEqC A/B" +msgstr "DiSEqC A/B" + +msgid "DiSEqC A/B/C/D" +msgstr "DiSEqC A/B/C/D" + +msgid "DiSEqC mode" +msgstr "DiSEqC mode" + +#, python-format +msgid "DiSEqC port %s: %s" +msgstr "DiSEqC port %s: %s" + +msgid "DiSEqC-tester settings" +msgstr "DiSEqC-tester settings" + +msgid "Dialing:" +msgstr "Dialing:" + +msgid "Digital contour removal" +msgstr "Digital contour removal" + +msgid "Direct playback of linked titles without menu" +msgstr "Direct playback of linked titles without menu" + +msgid "Directory" +msgstr "Directory" + +#, python-format +msgid "Directory %s does not exist." +msgstr "Directory %s does not exist." + +#, python-format +msgid "Directory %s nonexistent." +msgstr "" + +msgid "Directory browser" +msgstr "Directory browser" + +#, python-format +msgid "Directory contains %d file(s) and %d sub-directories.\n" +msgstr "" + +#, fuzzy, python-format +msgid "Directory contains %s and %s." +msgstr "Directory contains %d file(s) and %d sub-directories.\n" + +msgid "Disable" +msgstr "Disable" + +msgid "Disable Picture in Picture" +msgstr "Disable Picture in Picture" + +msgid "Disable background scanning" +msgstr "Disable background scanning" + +msgid "Disable timer" +msgstr "Disable timer" + +msgid "Disabled" +msgstr "Disabled" + +msgid "Disconnect" +msgstr "Veqetya" + +msgid "Disk space to reserve for recordings (in GB)" +msgstr "Disk space to reserve for recordings (in GB)" + +msgid "Display 16:9 content as" +msgstr "Display 16:9 content as" + +msgid "Display 4:3 content as" +msgstr "Display 4:3 content as" + +msgid "Display >16:9 content as" +msgstr "Display >16:9 content as" + +msgid "Display and userinterface" +msgstr "Display and userinterface" + +msgid "Display message before playing next movie" +msgstr "Display message before playing next movie" + +msgid "Display setup" +msgstr "Çékirina Roniya Ekran" + +msgid "Do not change" +msgstr "Do not change" + +msgid "Do not record" +msgstr "Do not record" + +msgid "Do nothing" +msgstr "Do nothing" + +msgid "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" +msgstr "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" + +msgid "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" +msgstr "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" + +#, python-format +msgid "Do you really want to delete %s?" +msgstr "Do you really want to delete %s?" + +#, python-format +msgid "" +"Do you really want to download\n" +"the plugin \"%s\"?" +msgstr "" +"Do you really want to download\n" +"the plugin \"%s\"?" + +msgid "Do you really want to exit?" +msgstr "Do you really want to exit?" + +msgid "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" +msgstr "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" + +#, python-format +msgid "" +"Do you really want to remove\n" +"the plugin \"%s\"?" +msgstr "" +"Do you really want to remove\n" +"the plugin \"%s\"?" + +#, python-format +msgid "Do you really want to remove directory %s from the disk?" +msgstr "Do you really want to remove directory %s from the disk?" + +#, python-format +msgid "Do you really want to remove your bookmark of %s?" +msgstr "Do you really want to remove your bookmark of %s?" + +msgid "Do you want this?" +msgstr "" + +msgid "Do you want to burn this collection to DVD medium?" +msgstr "Do you want to burn this collection to DVD medium?" + +msgid "Do you want to do a service scan?" +msgstr "Do you want to do a service scan?" + +msgid "Do you want to do another manual service scan?" +msgstr "Do you want to do another manual service scan?" + +#, python-format +msgid "Do you want to download the image to %s ?" +msgstr "Do you want to download the image to %s ?" + +msgid "Do you want to install a channel list?" +msgstr "Do you want to install a channel list?" + +msgid "Do you want to install the package:\n" +msgstr "Do you want to install the package:\n" + +msgid "Do you want to play DVD in drive?" +msgstr "Do you want to play DVD in drive?" + +msgid "Do you want to preview this DVD before burning?" +msgstr "Do you want to preview this DVD before burning?" + +msgid "Do you want to reboot your receiver?" +msgstr "Do you want to reboot your receiver?" + +msgid "Do you want to remove the package:\n" +msgstr "Do you want to remove the package:\n" + +msgid "Do you want to restore your settings?" +msgstr "Do you want to restore your settings?" + +msgid "Do you want to resume this playback?" +msgstr "Do you want to resume this playback?" + +#, python-format +msgid "Do you want to update your receiver to %s?" +msgstr "Do you want to update your receiver to %s?" + +msgid "Do you want to update your receiver?" +msgstr "Do you want to update your receiver?" + +msgid "Do you want to upgrade the package:\n" +msgstr "Do you want to upgrade the package:\n" + +msgid "Don't stop current event but disable coming events" +msgstr "Don't stop current event but disable coming events" + +#, fuzzy, python-format +msgid "Done - Installed, upgraded or removed %d package (%s)" +msgid_plural "Done - Installed, upgraded or removed %d packages (%s)" +msgstr[0] "Done - Installed, upgraded or removed %d packages with %d errors" +msgstr[1] "Done - Installed, upgraded or removed %d packages with %d errors" + +msgid "Download" +msgstr "Dayni" + +#, python-format +msgid "Download %s from server" +msgstr "Download %s from server" + +msgid "Download .NFI-files for USB-flasher" +msgstr "Download .NFI-files for USB-flasher" + +msgid "Download plugins" +msgstr "Dayni Girédayi" + +msgid "Downloadable new plugins" +msgstr "Dayni Girédayiyé nu" + +msgid "Downloadable plugins" +msgstr "Downloadable plugins" + +msgid "Downloading" +msgstr "Girédya" + +msgid "Downloading plugin information. Please wait..." +msgstr "Girédayi ti daxirstin..." + +msgid "Dutch" +msgstr "Xolanda" + +msgid "Dynamic contrast" +msgstr "Dynamic contrast" + +msgid "E" +msgstr "E" + +msgid "EPG" +msgstr "EPG" + +msgid "EPG language selection 1" +msgstr "EPG ziman 1" + +msgid "EPG language selection 2" +msgstr "EPG ziman2" + +msgid "EPG selection" +msgstr "EPG selection" + +msgid "EPG settings" +msgstr "EPG Çékirin" + +#, python-format +msgid "ERROR - failed to scan (%s)!" +msgstr "ERROR - failed to scan (%s)!" + +msgid "East" +msgstr "East" + +msgid "East limit set" +msgstr "East limit set" + +msgid "Edit" +msgstr "Edit" + +msgid "Edit DNS" +msgstr "Edit DNS" + +msgid "Edit bouquets list" +msgstr "Edit bouquets list" + +msgid "Edit chapters of current title" +msgstr "Edit chapters of current title" + +msgid "Edit services list" +msgstr "Edit services list" + +msgid "Edit settings" +msgstr "Edit settings" + +msgid "Edit the nameserver configuration of your receiver.\n" +msgstr "Edit the nameserver configuration of your receiver.\n" + +msgid "Edit the network configuration of your receiver.\n" +msgstr "Edit the network configuration of your receiver.\n" + +msgid "Edit timer" +msgstr "" + +msgid "Edit title" +msgstr "Edit title" + +msgid "Edit upgrade source url." +msgstr "Edit upgrade source url." + +msgid "Education/Science/..." +msgstr "Education/Science/..." + +msgid "Electronic Program Guide" +msgstr "Electronic Program Guide" + +msgid "Enable" +msgstr "Enable" + +msgid "Enable 'neutrino' style channel select controlling" +msgstr "" + +msgid "Enable 'neutrino' style zap controlling" +msgstr "" + +msgid "Enable 5V for active antenna" +msgstr "Enable 5V for active antenna" + +msgid "Enable EIT EPG" +msgstr "Enable EIT EPG" + +msgid "Enable MHW EPG" +msgstr "Enable MHW EPG" + +msgid "Enable Netmed EPG" +msgstr "Enable Netmed EPG" + +msgid "Enable OK for channel selection" +msgstr "" + +msgid "Enable ViaSat EPG" +msgstr "Enable ViaSat EPG" + +msgid "Enable Virgin EPG" +msgstr "" + +msgid "Enable Wake On LAN" +msgstr "" + +msgid "Enable auto fast scan" +msgstr "" + +msgid "Enable bouquet selection in multi-EPG" +msgstr "Enable bouquet selection in multi-EPG" + +msgid "Enable freesat EPG" +msgstr "Enable freesat EPG" + +msgid "Enable multiple bouquets" +msgstr "Enable multiple bouquets" + +msgid "Enable parental control" +msgstr "Enable parental control" + +msgid "Enable teletext caching" +msgstr "Enable teletext caching" + +msgid "Enable zapping with CH+/-, B+/-, P+/-" +msgstr "" + +msgid "Enabled" +msgstr "Enabled" + +msgid "Encrypted: " +msgstr "Encrypted: " + +msgid "Encryption" +msgstr "Encryption" + +msgid "Encryption key" +msgstr "Encryption key" + +msgid "Encryption key type" +msgstr "Encryption key type" + +msgid "Encryption:" +msgstr "Encryption:" + +msgid "End time" +msgstr "Vext derbas bu" + +msgid "End time to ignore inactivity sleeptimer" +msgstr "" + +msgid "End time to ignore shutdown in standby" +msgstr "" + +msgid "English" +msgstr "Engiliz" + +msgid "Enigma2 skin selector" +msgstr "Enigma2 skin selector" + +msgid "Enter main menu..." +msgstr "Enter main menu..." + +msgid "Enter pin code" +msgstr "Enter pin code" + +msgid "Enter the service pin" +msgstr "Enter the service pin" + +msgid "Equal to" +msgstr "" + +msgid "Error" +msgstr "Error" + +msgid "Error code" +msgstr "Error code" + +msgid "Error executing plugin" +msgstr "Error executing plugin" + +#, python-format +msgid "" +"Error: %s\n" +"Retry?" +msgstr "" +"Error: %s\n" +"Retry?" + +msgid "Estonian" +msgstr "Estonian" + +msgid "Ethernet network interface" +msgstr "Ethernet network interface" + +msgid "Event font size (relative to skin size)" +msgstr "Event font size (relative to skin size)" + +msgid "Event view" +msgstr "Event view" + +msgid "Event view menu" +msgstr "Event view menu" + +msgid "Everywhere" +msgstr "Everywhere" + +msgid "Exceeds dual layer medium!" +msgstr "Exceeds dual layer medium!" + +msgid "Execution finished!!" +msgstr "Execution finished!!" + +msgid "Execution progress:" +msgstr "Execution progress:" + +msgid "Exif" +msgstr "Exif" + +msgid "Exit" +msgstr "Exit" + +msgid "Exit EPG" +msgstr "Exit EPG" + +msgid "Exit editor" +msgstr "Exit editor" + +msgid "Exit input device selection." +msgstr "Exit input device selection." + +msgid "Exit media player?" +msgstr "" + +msgid "Exit mediaplayer" +msgstr "Exit mediaplayer" + +msgid "Exit movie list" +msgstr "Exit movie list" + +msgid "Exit movie player?" +msgstr "Exit movie player?" + +msgid "Exit nameserver configuration" +msgstr "Exit nameserver configuration" + +msgid "Exit network interface list" +msgstr "Exit network interface list" + +msgid "Exit network wizard" +msgstr "Exit network wizard" + +msgid "Exit the wizard" +msgstr "Exit the wizard" + +msgid "Expert" +msgstr "Expert" + +msgid "Extend sleeptimer 15 minutes" +msgstr "" + +msgid "Extended Software" +msgstr "Extended Software" + +msgid "Extended Software Plugin" +msgstr "Extended Software Plugin" + +msgid "Extended network setup plugin..." +msgstr "Extended network setup plugin..." + +msgid "Extended setup..." +msgstr "Extended setup..." + +msgid "Extensions" +msgstr "Extensions" + +msgid "Extensions management" +msgstr "Extensions management" + +msgid "External PiP" +msgstr "" + +msgid "External subtitle color" +msgstr "" + +msgid "Extra motor options" +msgstr "" + +msgid "FEC" +msgstr "FEC" + +msgid "FTA" +msgstr "FTA" + +msgid "Factory reset" +msgstr "Reseta Fabrikayé " + +msgid "Failed" +msgstr "Failed" + +msgid "Failed to write /tmp/positionersetup.log: " +msgstr "Failed to write /tmp/positionersetup.log: " + +#, python-format +msgid "Fan %d" +msgstr "Fan %d" + +#, python-format +msgid "Fan %d PWM" +msgstr "Fan %d PWM" + +#, python-format +msgid "Fan %d voltage" +msgstr "Fan %d voltage" + +msgid "Fan operation" +msgstr "" + +msgid "Fan speed" +msgstr "" + +msgid "Fast" +msgstr "Fast" + +msgid "Fast DiSEqC" +msgstr "Fast DiSEqC" + +msgid "Fast Scan" +msgstr "Lezi Légerin" + +msgid "Fast epoch" +msgstr "Fast epoch" + +msgid "Fast forward speeds" +msgstr "Fast forward speeds" + +msgid "Favourites" +msgstr "Favourites" + +msgid "File appears to be busy.\n" +msgstr "File appears to be busy.\n" + +msgid "Filesystem check" +msgstr "Filesystem check" + +msgid "Final position at" +msgstr "Final position at" + +msgid "Final position at index" +msgstr "Final position at index" + +msgid "Fine movement" +msgstr "Fine movement" + +msgid "Finetune" +msgstr "Finetune" + +msgid "Finished" +msgstr "Finished" + +msgid "Finished configuring your network" +msgstr "Finished configuring your network" + +msgid "Finished restarting your network" +msgstr "Finished restarting your network" + +msgid "Finnish" +msgstr "Finnish" + +msgid "Fixed" +msgstr "Fixed" + +msgid "Flash" +msgstr "Flash" + +msgid "Flashing failed" +msgstr "Flashing failed" + +msgid "Following tasks will be done after you press OK!" +msgstr "Following tasks will be done after you press OK!" + +msgid "Format" +msgstr "Format" + +msgid "Forward volume keys" +msgstr "Forward volume keys" + +msgid "Frame size in full view" +msgstr "Frame size in full view" + +msgid "French" +msgstr "French" + +msgid "Frequency" +msgstr "Frequency" + +msgid "Frequency bands" +msgstr "Frequency bands" + +msgid "Frequency scan step size(khz)" +msgstr "Frequency scan step size(khz)" + +msgid "Frequency steps" +msgstr "Frequency steps" + +msgid "Frequency:" +msgstr "" + +msgid "Fri" +msgstr "Fri" + +msgid "Friday" +msgstr "İn" + +msgid "From :" +msgstr "From :" + +#, python-format +msgid "Frontprocessor version: %d" +msgstr "Frontprocessor version: %d" + +msgid "Full transparency" +msgstr "Full transparency" + +msgid "Fulview resulution" +msgstr "" + +msgid "Function of OK button" +msgstr "Function of OK button" + +msgid "Further Options" +msgstr "" + +msgid "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" +msgstr "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" + +msgid "Gateway" +msgstr "Gateway" + +msgid "General AC3 delay" +msgstr "General AC3 delay" + +msgid "General PCM delay" +msgstr "General PCM delay" + +msgid "Genre" +msgstr "Genre" + +msgid "German" +msgstr "German" + +msgid "Get latest experimental image" +msgstr "Get latest experimental image" + +msgid "Get latest release image" +msgstr "Get latest release image" + +msgid "Getting plugin information. Please wait..." +msgstr "Getting plugin information. Please wait..." + +msgid "Go down the list" +msgstr "Go down the list" + +msgid "Go to first movie or last item" +msgstr "Go to first movie or last item" + +msgid "Go to first movie or top of list" +msgstr "Go to first movie or top of list" + +msgid "Go to first service" +msgstr "Go to first service" + +msgid "Go to last service" +msgstr "Go to last service" + +msgid "Go to next event" +msgstr "Go to next event" + +msgid "Go to next page of service" +msgstr "Go to next page of service" + +msgid "Go to previous event" +msgstr "Go to previous event" + +msgid "Go to previous page of service" +msgstr "Go to previous page of service" + +msgid "Go up the list" +msgstr "Go up the list" + +msgid "Goto" +msgstr "Goto" + +msgid "Goto 0" +msgstr "Goto 0" + +msgid "Goto :" +msgstr "Goto :" + +msgid "Goto X" +msgstr "Goto X" + +msgid "Goto index position" +msgstr "Goto index position" + +msgid "Goto next day of events" +msgstr "" + +msgid "Goto next page of events" +msgstr "Goto next page of events" + +msgid "Goto position" +msgstr "Goto position" + +msgid "Goto previous day of events" +msgstr "" + +msgid "Goto previous page of events" +msgstr "Goto previous page of events" + +msgid "Goto specific date/time" +msgstr "" + +msgid "GotoX calibration" +msgstr "GotoX calibration" + +msgid "GraphMultiEpg Settings" +msgstr "GraphMultiEpg Settings" + +msgid "Graphical Multi EPG" +msgstr "Graphical Multi EPG" + +msgid "Greek" +msgstr "Greek" + +msgid "Green boost" +msgstr "Green boost" + +msgid "Guard interval" +msgstr "Guard interval" + +msgid "HD list" +msgstr "HD list" + +msgid "HDMI-CEC setup" +msgstr "" + +msgid "Handle standby from TV" +msgstr "Handle standby from TV" + +msgid "Handle wakeup from TV" +msgstr "Handle wakeup from TV" + +msgid "Hard disk" +msgstr "Hard disk" + +msgid "Hard disk setup" +msgstr "Hard disk setup" + +msgid "Hard disk standby after" +msgstr "Hard disk standby after" + +msgid "Harddisk" +msgstr "Harddisk" + +msgid "Hardware: " +msgstr "Hardware: " + +msgid "Hebrew" +msgstr "Hebrew" + +msgid "Helps setting up your dish" +msgstr "" + +msgid "Hidden network" +msgstr "Hidden network" + +msgid "Hide CI messages" +msgstr "Hide CI messages" + +msgid "Hide channel list in radio mode" +msgstr "Hide channel list in radio mode" + +msgid "Hide known extensions" +msgstr "" + +msgid "Hide number markers" +msgstr "" + +msgid "Hide player" +msgstr "Hide player" + +msgid "Hide zap errors" +msgstr "Hide zap errors" + +msgid "Hierarchy info" +msgstr "Hierarchy info" + +msgid "Hierarchy information" +msgstr "Hierarchy information" + +msgid "High bitrate support" +msgstr "High bitrate support" + +msgid "Hold screen" +msgstr "Hold screen" + +msgid "Hold till locked" +msgstr "Hold till locked" + +msgid "Home" +msgstr "Home" + +msgid "Horizontal" +msgstr "Horizontal" + +msgid "Horizontal turning speed" +msgstr "Horizontal turning speed" + +msgid "How many minutes do you want to record?" +msgstr "How many minutes do you want to record?" + +msgid "Hue" +msgstr "Hue" + +msgid "Hungarian" +msgstr "Hungarian" + +msgid "IP address" +msgstr "IP address" + +msgid "ISO file is too large for this filesystem!" +msgstr "ISO file is too large for this filesystem!" + +msgid "ISO path" +msgstr "ISO path" + +msgid "Icons" +msgstr "Icons" + +msgid "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." +msgstr "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." + +msgid "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." +msgstr "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." + +msgid "Image: " +msgstr "Image: " + +msgid "Immediate shutdown" +msgstr "Immediate shutdown" + +msgid "In order to record a timer, the TV was switched to the recording service!\n" +msgstr "In order to record a timer, the TV was switched to the recording service!\n" + +msgid "In progress" +msgstr "In progress" + +msgid "Inactivity Sleeptimer" +msgstr "" + +msgid "Include AIT in http streams" +msgstr "Include AIT in http streams" + +msgid "Include ECM in http streams" +msgstr "Include ECM in http streams" + +msgid "Include EIT in http streams" +msgstr "Include EIT in http streams" + +msgid "Incorrect type service for PiP!" +msgstr "" + +msgid "Increased voltage" +msgstr "Increased voltage" + +msgid "Index" +msgstr "Index" + +msgid "Index allocated:" +msgstr "Index allocated:" + +msgid "Info" +msgstr "Info" + +msgid "Info bar" +msgstr "Info bar" + +msgid "Info bar timeout" +msgstr "Info bar timeout" + +msgid "Infobar frontend data source" +msgstr "" + +msgid "Information" +msgstr "Hakké İmagéda" + +msgid "Init" +msgstr "Init" + +msgid "Initial fast forward speed" +msgstr "Initial fast forward speed" + +msgid "Initial location in new timers" +msgstr "Initial location in new timers" + +msgid "Initial lock ratio" +msgstr "Initial lock ratio" + +msgid "Initial rewind speed" +msgstr "Initial rewind speed" + +msgid "Initial signal quality" +msgstr "Initial signal quality" + +msgid "Initial signal quality:" +msgstr "Initial signal quality:" + +msgid "Initialization" +msgstr "Initialization" + +msgid "Initialize" +msgstr "Initialize" + +msgid "Initializing storage device..." +msgstr "Initializing storage device..." + +msgid "Input" +msgstr "Input" + +msgid "Input device setup" +msgstr "Input device setup" + +msgid "Input devices" +msgstr "device girédayi" + +msgid "Install" +msgstr "Install" + +msgid "Install a new image with a USB stick" +msgstr "Install a new image with a USB stick" + +msgid "Install a new image with your web browser" +msgstr "Install a new image with your web browser" + +msgid "Install channel list" +msgstr "Install channel list" + +msgid "Install extensions" +msgstr "" + +msgid "Install extensions." +msgstr "Install extensions." + +msgid "Install local extension" +msgstr "Install local extension" + +msgid "Install picons on" +msgstr "Install picons on" + +msgid "Install softcam" +msgstr "Install softcam" + +msgid "Installation has completed." +msgstr "Installation has completed." + +msgid "Installation or removal has completed." +msgstr "Installation or removal has completed." + +msgid "Installing" +msgstr "Installing" + +msgid "Installing software..." +msgstr "Installing software..." + +msgid "Instant recording location" +msgstr "Instant recording location" + +msgid "Instant recording..." +msgstr "Instant recording..." + +msgid "Interface: " +msgstr "Interface: " + +msgid "Intermediate" +msgstr "Intermediate" + +msgid "Internal flash" +msgstr "Internal flash" + +msgid "Internal hdd only" +msgstr "Internal hdd only" + +msgid "Interval between keys when repeating:" +msgstr "Interval between keys when repeating:" + +#, python-format +msgid "Invalid directory selected: %s" +msgstr "Invalid directory selected: %s" + +msgid "Invalid location" +msgstr "Invalid location" + +msgid "Invalid transponder data" +msgstr "" + +msgid "Inversion" +msgstr "Inversion" + +msgid "Invert" +msgstr "Invert" + +msgid "Ipkg" +msgstr "Ipkg" + +msgid "Is this setting ok?" +msgstr "Is this setting ok?" + +msgid "Is this video mode ok?" +msgstr "Is this video mode ok?" + +msgid "Italian" +msgstr "Italian" + +msgid "Items per page " +msgstr "Items per page " + +msgid "Items per page for list screen" +msgstr "Items per page for list screen" + +msgid "Job overview" +msgstr "Job overview" + +msgid "Jump to beginning of list" +msgstr "Jump to beginning of list" + +msgid "Jump to end of list" +msgstr "Jump to end of list" + +msgid "Jump to next marked position" +msgstr "Jump to next marked position" + +msgid "Jump to previous marked position" +msgstr "Jump to previous marked position" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect) +msgid "Just scale" +msgstr "Just scale" + +msgid "Keep service" +msgstr "" + +msgid "Kernel version: " +msgstr "Kernel version: " + +msgid "Keyboard" +msgstr "Keyboard" + +msgid "Keyboard map" +msgstr "Keyboard map" + +msgid "Keyboard setup" +msgstr "Keyboard setup" + +msgid "LAN adapter" +msgstr "LAN adapter" + +msgid "LAN connection" +msgstr "LAN connection" + +msgid "LNB" +msgstr "LNB" + +msgid "Language" +msgstr "Ziman" + +msgid "Language selection" +msgstr "Language selection" + +msgid "Last config" +msgstr "Last config" + +msgid "Last speed" +msgstr "Last speed" + +msgid "Last upgrade: " +msgstr "Last upgrade: " + +msgid "Latest Commits" +msgstr "" + +msgid "Latitude" +msgstr "Latitude" + +msgid "Latvian" +msgstr "Latvian" + +msgid "Leave DVD player?" +msgstr "Leave DVD player?" + +msgid "Left" +msgstr "Left" + +msgid "Left from servicename" +msgstr "" + +msgid "Leisure hobbies" +msgstr "Leisure hobbies" + +#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term. +msgid "Letterbox" +msgstr "Letterbox" + +msgid "Letterbox zoom" +msgstr "" + +msgid "Limit character set for recording filenames" +msgstr "Limit character set for recording filenames" + +msgid "Limit east" +msgstr "Limit east" + +msgid "Limit the characters that can be used in recording filenames to (7 bit) ascii. This ensures compatibility with operating systems or file systems with limited character sets." +msgstr "Limit the characters that can be used in recording filenames to (7 bit) ascii. This ensures compatibility with operating systems or file systems with limited character sets." + +msgid "Limit west" +msgstr "Limit west" + +msgid "Limits cancelled" +msgstr "Limits cancelled" + +msgid "Limits enabled" +msgstr "Limits enabled" + +msgid "Limits off" +msgstr "Limits off" + +msgid "Limits on" +msgstr "Limits on" + +msgid "Link quality:" +msgstr "Link quality:" + +msgid "Link:" +msgstr "Link:" + +msgid "Linked titles with a DVD menu" +msgstr "Linked titles with a DVD menu" + +msgid "List EPG functions..." +msgstr "List EPG functions..." + +msgid "List available networks" +msgstr "List available networks" + +msgid "List mode" +msgstr "List mode" + +msgid "List of storage devices" +msgstr "List of storage devices" + +msgid "List type" +msgstr "List type" + +#, fuzzy, python-format +msgid "List version %d, found %d channel" +msgid_plural "List version %d, found %d channels" +msgstr[0] "List version %d, found %d channels" +msgstr[1] "List version %d, found %d channels" + +msgid "Listen to the radio..." +msgstr "Listen to the radio..." + +msgid "Lists reloaded!" +msgstr "" + +msgid "Lithuanian" +msgstr "Lithuanian" + +msgid "Load" +msgstr "Load" + +msgid "Load Length of Movies in Movielist" +msgstr "" + +msgid "Load length of movies in movie list" +msgstr "Load length of movies in movie list" + +msgid "Load playlist" +msgstr "Load playlist" + +msgid "Local network" +msgstr "Local network" + +msgid "Location" +msgstr "Location" + +msgid "Location for instant recordings" +msgstr "Location for instant recordings" + +msgid "Lock ratio" +msgstr "Lock ratio" + +msgid "Lock:" +msgstr "Lock:" + +msgid "Log results to harddisk" +msgstr "Log results to harddisk" + +msgid "Long filenames" +msgstr "Long filenames" + +msgid "Long key press" +msgstr "Long key press" + +msgid "Longitude" +msgstr "Longitude" + +msgid "Loop through to" +msgstr "" + +msgid "Luxembourgish" +msgstr "Luxembourgish" + +msgid "MMC card" +msgstr "MMC card" + +msgid "MORE" +msgstr "MORE" + +msgid "Main menu" +msgstr "Main menu" + +msgid "Maintain old EPG data for" +msgstr "Maintain old EPG data for" + +msgid "Make this mark an 'in' point" +msgstr "Make this mark an 'in' point" + +msgid "Make this mark an 'out' point" +msgstr "Make this mark an 'out' point" + +msgid "Make this mark just a mark" +msgstr "Make this mark just a mark" + +msgid "Manage extensions" +msgstr "Manage extensions" + +msgid "Manage your receiver's software" +msgstr "Manage your receiver's software" + +msgid "Manual" +msgstr "" + +msgid "Manual Scan" +msgstr "Bi dest Légerin" + +msgid "Manual configuration" +msgstr "Manual configuration" + +msgid "Manual scan" +msgstr "Manual scan" + +msgid "Manual transponder" +msgstr "Manual transponder" + +msgid "Manufacturer" +msgstr "Manufacturer" + +msgid "Margin after recording (minutes)" +msgstr "Margin after recording (minutes)" + +msgid "Margin before recording (minutes)" +msgstr "Margin before recording (minutes)" + +msgid "Max memory positions" +msgstr "" + +msgid "Max. bitrate: " +msgstr "Max. bitrate: " + +msgid "Media player" +msgstr "Media player" + +msgid "Media scanner" +msgstr "Media scanner" + +msgid "Medium is not a writeable DVD!" +msgstr "Medium is not a writeable DVD!" + +msgid "Medium is not empty!" +msgstr "Medium is not empty!" + +msgid "Memory" +msgstr "Memory" + +msgid "Memory index" +msgstr "Memory index" + +msgid "Menu" +msgstr "Menu" + +msgid "Message" +msgstr "Message" + +msgid "Message..." +msgstr "Message..." + +#, python-format +msgid "Minimum age %d years" +msgstr "Minimum age %d years" + +#, fuzzy +msgid "Minimum send interval" +msgstr "Minimum age %d years" + +msgid "Missing " +msgstr "Missing " + +msgctxt "Satellite configuration mode" +msgid "Mode" +msgstr "Mode" + +msgctxt "Video output mode" +msgid "Mode" +msgstr "Mode" + +msgid "Model: " +msgstr "Model: " + +msgid "Modulation" +msgstr "Modulation" + +msgid "Modulator" +msgstr "Modulator" + +msgid "Mon" +msgstr "Mon" + +msgid "Mon-Fri" +msgstr "Mon-Fri" + +msgid "Monday" +msgstr "Yekşem" + +msgid "Mosquito noise reduction" +msgstr "Mosquito noise reduction" + +msgid "Mount" +msgstr "Mount" + +msgid "Move" +msgstr "Move" + +msgid "Move PiP to main picture" +msgstr "Move PiP to main picture" + +msgid "Move Picture in Picture" +msgstr "Move Picture in Picture" + +msgid "Move east" +msgstr "Move east" + +msgid "Move to other directory" +msgstr "Move to other directory" + +msgid "Move to position X" +msgstr "Move to position X" + +msgid "Move west" +msgstr "Move west" + +msgid "Moved to position 0" +msgstr "Moved to position 0" + +msgid "Moved to position at index" +msgstr "Moved to position at index" + +msgid "Movement" +msgstr "Movement" + +msgid "Movie List Configuration" +msgstr "" + +msgid "Movie Selection" +msgstr "" + +msgid "Movie list configuration" +msgstr "Movie list configuration" + +msgid "Movie location" +msgstr "Movie location" + +msgid "Movie selection" +msgstr "Movie selection" + +msgid "Movie/Drama" +msgstr "Movie/Drama" + +msgid "Movielist menu" +msgstr "Movielist menu" + +msgid "Moving" +msgstr "Moving" + +msgid "Moving east ..." +msgstr "Moving east ..." + +msgid "Moving to position" +msgstr "Moving to position" + +msgid "Moving west ..." +msgstr "Moving west ..." + +msgid "Multi EPG" +msgstr "Multi EPG" + +msgid "Multi-EPG bouquet selection" +msgstr "Multi-EPG bouquet selection" + +msgid "Multimedia" +msgstr "Multimedia" + +msgid "Multiple service support" +msgstr "Multiple service support" + +msgid "Multiplex" +msgstr "Multiplex" + +msgid "Multisat" +msgstr "Multisat" + +msgid "Multisat all select" +msgstr "" + +msgid "Music/Ballet/Dance" +msgstr "Music/Ballet/Dance" + +msgid "Mute" +msgstr "Mute" + +msgid "N/A" +msgstr "N/A" + +msgid "NEXT" +msgstr "NEXT" + +msgid "NFI image flashing" +msgstr "NFI image flashing" + +msgid "NFI image flashing completed. Press Yellow to Reboot!" +msgstr "NFI image flashing completed. Press Yellow to Reboot!" + +msgid "NIM" +msgstr "NIM" + +msgid "NOW" +msgstr "NOW" + +msgid "NTSC" +msgstr "NTSC" + +msgid "Name" +msgstr "Name" + +msgid "Nameserver" +msgstr "Nameserver" + +#, python-format +msgid "Nameserver %d" +msgstr "Nameserver %d" + +msgid "Nameserver settings" +msgstr "Nameserver settings" + +msgid "Nameserver setup" +msgstr "Nameserver setup" + +msgid "Namespace" +msgstr "Namespace" + +msgid "Netmask" +msgstr "Netmask" + +msgid "Network" +msgstr "Çékirina Network" + +msgid "Network ID" +msgstr "Network ID" + +msgid "Network configuration..." +msgstr "Network configuration..." + +msgid "Network mount" +msgstr "Network mount" + +#, python-format +msgid "Network mount %s" +msgstr "Network mount %s" + +msgid "Network name (SSID)" +msgstr "Network name (SSID)" + +msgid "Network scan" +msgstr "Network scan" + +msgid "Network setup" +msgstr "Network setup" + +msgid "Network test" +msgstr "Network test" + +msgid "Network test..." +msgstr "Network test..." + +msgid "Network test: " +msgstr "Network test: " + +msgid "Network wizard" +msgstr "Network wizard" + +msgid "Network:" +msgstr "Network:" + +msgid "New" +msgstr "New" + +msgid "New PIN" +msgstr "New PIN" + +msgid "New version:" +msgstr "New version:" + +msgid "News Current Affairs" +msgstr "News Current Affairs" + +msgctxt "button label, 'next screen'" +msgid "Next" +msgstr "Next" + +msgctxt "now/next: 'next' event label" +msgid "Next" +msgstr "Next" + +msgid "No" +msgstr "No" + +msgid "No (supported) DVDROM found!" +msgstr "No (supported) DVDROM found!" + +msgid "No Connection" +msgstr "No Connection" + +msgid "No HDD found or HDD not initialized!" +msgstr "No HDD found or HDD not initialized!" + +msgid "No backup needed" +msgstr "No backup needed" + +msgid "No cable tuner found!" +msgstr "No cable tuner found!" + +msgid "" +"No data on transponder!\n" +"(Timeout reading PAT)" +msgstr "" +"No data on transponder!\n" +"(Timeout reading PAT)" + +msgid "No delay" +msgstr "No delay" + +msgid "No description available." +msgstr "No description available." + +msgid "No details for this image file" +msgstr "No details for this image file" + +msgid "No displayable files on this medium found!" +msgstr "No displayable files on this medium found!" + +msgid "No event info found, recording indefinitely." +msgstr "No event info found, recording indefinitely." + +msgid "No fast winding possible yet.. but you can use the number buttons to skip forward/backward!" +msgstr "No fast winding possible yet.. but you can use the number buttons to skip forward/backward!" + +msgid "No free index available" +msgstr "No free index available" + +msgid "No free tuner!" +msgstr "No free tuner!" + +msgid "No network connection available." +msgstr "No network connection available." + +msgid "No networks found" +msgstr "No networks found" + +msgid "No new plugins found" +msgstr "" + +msgid "No positioner capable frontend found." +msgstr "No positioner capable frontend found." + +msgid "No satellites configured. Plese check your tuner setup." +msgstr "" + +msgid "No service" +msgstr "" + +msgid "No services/providers selected" +msgstr "No services/providers selected" + +msgid "No standby" +msgstr "No standby" + +msgid "No suitable sat tuner found!" +msgstr "" + +msgid "No tags are set on these movies." +msgstr "No tags are set on these movies." + +msgid "No timeout" +msgstr "No timeout" + +msgid "No to all" +msgstr "No to all" + +msgid "No transparency" +msgstr "No transparency" + +msgid "No tuner is configured for use with a diseqc positioner!" +msgstr "No tuner is configured for use with a diseqc positioner!" + +msgid "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." + +msgid "No updates available" +msgstr "No updates available" + +msgid "No updates available. Please try again later." +msgstr "No updates available. Please try again later." + +msgid "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" +msgstr "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" + +msgid "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" +msgstr "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" + +msgid "No wireless networks found! Searching..." +msgstr "No wireless networks found! Searching..." + +msgid "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." +msgstr "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." + +msgid "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." +msgstr "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." + +msgid "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." +msgstr "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." + +msgid "No, but restart from begin" +msgstr "No, but restart from begin" + +msgid "No, do nothing." +msgstr "No, do nothing." + +msgid "No, just start my receiver" +msgstr "No, just start my receiver" + +msgid "No, never" +msgstr "No, never" + +msgid "None" +msgstr "None" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right) +msgid "Nonlinear" +msgstr "Nonlinear" + +msgid "Normal mode" +msgstr "Normal mode" + +msgid "North" +msgstr "North" + +msgid "Norwegian" +msgstr "Norwegian" + +msgid "Not associated" +msgstr "Not associated" + +msgid "Not configured" +msgstr "" + +#, python-format +msgid "Not enough disk space. Please free up some disk space and try again. (%d MB required, %d MB available)" +msgstr "Not enough disk space. Please free up some disk space and try again. (%d MB required, %d MB available)" + +msgid "Nothing connected" +msgstr "" + +msgid "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." + +msgctxt "now/next: 'now' event label" +msgid "Now" +msgstr "Now" + +msgid "Now playing" +msgstr "Now playing" + +msgid "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." +msgstr "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." + +msgid "OK" +msgstr "OK" + +msgid "OK, guide me through the upgrade process" +msgstr "OK, guide me through the upgrade process" + +msgid "ONID" +msgstr "ONID" + +msgid "OSD name request" +msgstr "OSD name request" + +msgid "OSD settings" +msgstr "OSD settings" + +msgid "OSD transparency" +msgstr "OSD transparency" + +msgid "Off" +msgstr "Off" + +msgid "Offline decode delay (ms)" +msgstr "Offline decode delay (ms)" + +msgid "Ok" +msgstr "Ok" + +msgid "On" +msgstr "On" + +msgid "On end of movie" +msgstr "On end of movie" + +msgid "On end of movie (as menu)" +msgstr "" + +msgid "One" +msgstr "One" + +msgid "Only extensions." +msgstr "Only extensions." + +msgid "Only free scan" +msgstr "Only free scan" + +msgid "Open service list" +msgstr "Open service list" + +msgid "Open the movie list" +msgstr "Open the movie list" + +msgid "Orbital position" +msgstr "Orbital position" + +msgid "Original" +msgstr "Original" + +msgid "Other" +msgstr "Other" + +msgid "Output" +msgstr "Output" + +msgid "Overwrite configuration files during software upgrade?" +msgstr "Overwrite configuration files during software upgrade?" + +msgid "Overwrite configuration files?" +msgstr "Overwrite configuration files?" + +msgid "PAL" +msgstr "PAL" + +msgid "PCR PID" +msgstr "PCR PID" + +msgid "PIDs" +msgstr "PIDs" + +msgid "PIN code needed" +msgstr "PIN code needed" + +msgid "PLP ID" +msgstr "" + +msgid "PMT PID" +msgstr "PMT PID" + +msgid "Package list update" +msgstr "Package list update" + +msgid "Packet management" +msgstr "Packet management" + +msgid "Packet manager" +msgstr "Packet manager" + +#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term +msgid "Pan&scan" +msgstr "Pan&scan" + +msgid "Parent directory" +msgstr "Parent directory" + +msgid "Parental control" +msgstr "Kilita Gede" + +msgid "Parental control services editor" +msgstr "Parental control services editor" + +msgid "Parental control setup" +msgstr "Parental control setup" + +msgid "Parental control type" +msgstr "Parental control type" + +msgid "Password" +msgstr "Password" + +msgid "Pause" +msgstr "Pause" + +msgid "Pause movie at end" +msgstr "Pause movie at end" + +msgid "Pause playback" +msgstr "Pause playback" + +msgid "Pauze/Continue playback" +msgstr "" + +msgid "Percentage left" +msgstr "Percentage left" + +msgid "Percentage right" +msgstr "Percentage right" + +msgid "Permanently delete all recordings in the trash can?" +msgstr "Permanently delete all recordings in the trash can?" + +msgid "Permanently remove all deleted items" +msgstr "Permanently remove all deleted items" + +msgid "Persian" +msgstr "Persian" + +msgid "Phone number" +msgstr "Phone number" + +msgid "PiP setup" +msgstr "PiP setup" + +msgid "Picon" +msgstr "Picon" + +msgid "Picon and service name" +msgstr "Picon and service name" + +msgid "Picture player" +msgstr "Picture player" + +#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term. +msgid "Pillarbox" +msgstr "Pillarbox" + +msgid "Pilot" +msgstr "Pilot" + +msgid "Play" +msgstr "Play" + +msgid "Play DVD" +msgstr "Play DVD" + +msgid "Play audio in background" +msgstr "Play audio in background" + +msgid "Play audio-CD..." +msgstr "Play audio-CD..." + +msgid "Play back media files" +msgstr "Play back media files" + +msgid "Play entry" +msgstr "Play entry" + +msgid "Play from next mark or playlist entry" +msgstr "Play from next mark or playlist entry" + +msgid "Play from previous mark or playlist entry" +msgstr "Play from previous mark or playlist entry" + +msgid "Play music..." +msgstr "Play music..." + +msgid "Play next" +msgstr "Play next" + +msgid "Play next (return to movie list)" +msgstr "Play next (return to movie list)" + +msgid "Play next (return to previous service)" +msgstr "Play next (return to previous service)" + +msgid "Play previous" +msgstr "Play previous" + +msgid "Play recorded movies..." +msgstr "Play recorded movies..." + +msgid "Please add titles to the compilation." +msgstr "Please add titles to the compilation." + +msgid "Please change recording endtime" +msgstr "Please change recording endtime" + +msgid "Please check your network settings!" +msgstr "Please check your network settings!" + +msgid "Please choose an extension..." +msgstr "Please choose an extension..." + +msgid "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." + +msgid "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." + +msgid "Please connect your receiver to the internet" +msgstr "Please connect your receiver to the internet" + +msgid "Please do not change any values unless you know what you are doing!" +msgstr "Please do not change any values unless you know what you are doing!" + +msgid "Please enter a name for the new bouquet" +msgstr "Please enter a name for the new bouquet" + +msgid "Please enter a name for the new marker" +msgstr "Please enter a name for the new marker" + +msgid "Please enter a new filename" +msgstr "Please enter a new filename" + +msgid "Please enter filename (empty = use current date)" +msgstr "Please enter filename (empty = use current date)" + +msgid "Please enter name of the new directory" +msgstr "Please enter name of the new directory" + +msgid "Please enter new name:" +msgstr "" + +msgid "Please enter the correct pin code" +msgstr "Please enter the correct pin code" + +msgid "Please enter the old PIN code" +msgstr "Please enter the old PIN code" + +msgid "Please follow the instructions on the TV" +msgstr "Please follow the instructions on the TV" + +msgid "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." +msgstr "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." + +msgid "Please press OK to continue." +msgstr "Please press OK to continue." + +msgid "Please select a default EPG type..." +msgstr "Please select a default EPG type..." + +msgid "Please select a playlist to delete..." +msgstr "Please select a playlist to delete..." + +msgid "Please select a playlist..." +msgstr "Please select a playlist..." + +msgid "Please select a sub service..." +msgstr "Please select a sub service..." + +msgid "Please select a subservice to record..." +msgstr "Please select a subservice to record..." + +msgid "Please select a subservice..." +msgstr "Please select a subservice..." + +msgid "Please select an NFI file and press green key to flash!" +msgstr "Please select an NFI file and press green key to flash!" + +msgid "Please select medium to be scanned" +msgstr "Please select medium to be scanned" + +msgid "Please select medium to use as backup location" +msgstr "Please select medium to use as backup location" + +msgid "Please select tag to filter..." +msgstr "Please select tag to filter..." + +msgid "Please select the movie path..." +msgstr "Please select the movie path..." + +msgid "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." + +msgid "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." + +msgid "Please set up tuner A" +msgstr "Please set up tuner A" + +msgid "Please set up tuner B" +msgstr "Please set up tuner B" + +msgid "Please set up tuner C" +msgstr "Please set up tuner C" + +msgid "Please set up tuner D" +msgstr "Please set up tuner D" + +msgid "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." +msgstr "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." + +msgid "Please use the UP and DOWN keys to select your language. Afterwards press the OK button." +msgstr "Please use the UP and DOWN keys to select your language. Afterwards press the OK button." + +msgid "Please wait" +msgstr "" + +msgid "Please wait (downloading channel list)" +msgstr "Please wait (downloading channel list)" + +msgid "Please wait (downloading softcam)" +msgstr "Please wait (downloading softcam)" + +msgid "Please wait (updating packages)" +msgstr "Please wait (updating packages)" + +msgid "Please wait for activation of your network configuration..." +msgstr "Please wait for activation of your network configuration..." + +msgid "Please wait while scanning is in progress..." +msgstr "Please wait while scanning is in progress..." + +msgid "Please wait while we configure your network..." +msgstr "Please wait while we configure your network..." + +msgid "Please wait while we prepare your network interfaces..." +msgstr "Please wait while we prepare your network interfaces..." + +msgid "Please wait while we test your network..." +msgstr "Please wait while we test your network..." + +msgid "Please wait while your network is restarting..." +msgstr "Please wait while your network is restarting..." + +msgid "Please wait..." +msgstr "Please wait..." + +msgid "Please wait... Loading list..." +msgstr "Please wait... Loading list..." + +msgid "Plugin browser" +msgstr "Plugin browser" + +msgid "Plugin manager activity information" +msgstr "Plugin manager activity information" + +msgid "Plugin manager help" +msgstr "Plugin manager help" + +msgid "Plugins" +msgstr "Girédayi" + +msgid "Polarisation" +msgstr "Polarisation" + +msgid "Polarisation:" +msgstr "" + +msgid "Polarization" +msgstr "Polarization" + +msgid "Polish" +msgstr "Polish" + +msgid "Port A" +msgstr "Port A" + +msgid "Port B" +msgstr "Port B" + +msgid "Port C" +msgstr "Port C" + +msgid "Port D" +msgstr "Port D" + +msgid "Portuguese" +msgstr "Portuguese" + +msgid "Position of completed timers in timerlist" +msgstr "Position of completed timers in timerlist" + +msgid "Position stored at index" +msgstr "Position stored at index" + +msgid "Positioner" +msgstr "Positioner" + +msgid "Positioner (selecting satellites)" +msgstr "" + +msgid "Positioner Setup" +msgstr "" + +msgid "Positioner setup" +msgstr "Pozisyoner Çéki" + +msgid "Power threshold in mA" +msgstr "Power threshold in mA" + +msgid "Predefined transponder" +msgstr "Predefined transponder" + +msgid "Prefer AC3 track" +msgstr "Prefer AC3 track" + +msgid "Prefer AC3+ track" +msgstr "" + +msgid "Prefer audio track stored by service" +msgstr "Prefer audio track stored by service" + +msgid "Prefer graphical DVB subtitles" +msgstr "Prefer graphical DVB subtitles" + +msgid "Prefer subtitles for hearing impaired" +msgstr "Prefer subtitles for hearing impaired" + +msgid "Prefer subtitles stored by service" +msgstr "Prefer subtitles stored by service" + +msgid "Preferred tuner" +msgstr "Preferred tuner" + +msgid "Preferred tuner for recordings" +msgstr "" + +msgid "Prepare another USB stick for image flashing" +msgstr "Prepare another USB stick for image flashing" + +msgid "Preparing... Please wait" +msgstr "Preparing... Please wait" + +msgid "Press '0' to toggle PiP mode" +msgstr "" + +msgid "Press INFO on your remote control for additional information." +msgstr "Press INFO on your remote control for additional information." + +msgid "Press MENU on your remote control for additional options." +msgstr "Press MENU on your remote control for additional options." + +msgid "Press OK on your remote control to continue." +msgstr "Press OK on your remote control to continue." + +msgid "Press OK to activate the selected skin." +msgstr "Press OK to activate the selected skin." + +msgid "Press OK to activate the settings." +msgstr "Press OK to activate the settings." + +msgid "Press OK to edit the settings." +msgstr "Press OK to edit the settings." + +#, python-format +msgid "Press OK to get further details for %s" +msgstr "Press OK to get further details for %s" + +msgid "Press OK to scan" +msgstr "Press OK to scan" + +msgid "Press OK to select a provider." +msgstr "Press OK to select a provider." + +msgid "Press OK to select satellites" +msgstr "" + +msgid "Press OK to select/deselect a CAId." +msgstr "Press OK to select/deselect a CAId." + +msgid "Press OK to start the scan" +msgstr "Press OK to start the scan" + +msgid "Press OK to toggle the selection" +msgstr "" + +msgid "Press OK to toggle the selection." +msgstr "Press OK to toggle the selection." + +msgid "Press yellow to set this interface as default interface." +msgstr "Press yellow to set this interface as default interface." + +msgctxt "button label, 'previous screen'" +msgid "Prev" +msgstr "Prev" + +msgid "Preview" +msgstr "Preview" + +msgid "Preview menu" +msgstr "Preview menu" + +msgid "Preview selected channel" +msgstr "Preview selected channel" + +msgid "Primary DNS" +msgstr "Primary DNS" + +msgid "Priority" +msgstr "Priority" + +msgid "Process" +msgstr "Process" + +msgid "Progress" +msgstr "Progress" + +msgid "Progress bar left" +msgstr "Progress bar left" + +msgid "Progress bar right" +msgstr "Progress bar right" + +msgid "Properties of current title" +msgstr "Properties of current title" + +msgid "Protect services" +msgstr "Protect services" + +msgid "Protect setup" +msgstr "Protect setup" + +msgid "Provider" +msgstr "Provider" + +msgid "Provider to scan" +msgstr "Provider to scan" + +msgid "Providers" +msgstr "Providers" + +msgid "Put TV in standby" +msgstr "Put TV in standby" + +msgid "Put receiver in standby" +msgstr "Put receiver in standby" + +msgid "Python frontend for /tmp/mmi.socket" +msgstr "Python frontend for /tmp/mmi.socket" + +msgid "Quick" +msgstr "Quick" + +msgid "Quick zap" +msgstr "Quick zap" + +msgid "RF output" +msgstr "RF output" + +msgid "RGB" +msgstr "RGB" + +msgid "Radio" +msgstr "Radio" + +msgid "Ram disk" +msgstr "Ram disk" + +msgid "Random" +msgstr "Random" + +#, python-format +msgid "Rating defined by broadcaster - %d" +msgstr "Rating defined by broadcaster - %d" + +msgid "Rating undefined" +msgstr "Rating undefined" + +msgid "Really close without saving settings?" +msgstr "Really close without saving settings?" + +msgid "Really delete done timers?" +msgstr "Really delete done timers?" + +msgid "Really exit the subservices quickzap?" +msgstr "Really exit the subservices quickzap?" + +msgid "Really reboot now?" +msgstr "Really reboot now?" + +msgid "Really restart now?" +msgstr "Really restart now?" + +msgid "Really shutdown now?" +msgstr "Really shutdown now?" + +msgid "Really upgrade the frontprocessor and reboot now?" +msgstr "Really upgrade the frontprocessor and reboot now?" + +msgid "Really upgrade your settop box and reboot now?" +msgstr "Really upgrade your settop box and reboot now?" + +msgid "Reboot" +msgstr "Reboot" + +msgid "Rec" +msgstr "Rec" + +msgid "Reception settings" +msgstr "Reception settings" + +msgid "Record" +msgstr "Qeyd" + +#, python-format +msgid "Record time limited due to conflicting timer %s" +msgstr "Record time limited due to conflicting timer %s" + +msgid "Recorded files..." +msgstr "Recorded files..." + +msgid "Recording" +msgstr "Recording" + +msgid "Recording in progress" +msgstr "Recording in progress" + +msgid "Recording paths" +msgstr "Réya Qeyda" + +msgid "Recording type" +msgstr "Recording type" + +msgid "Recording(s) are in progress or coming up in few seconds!" +msgstr "Recording(s) are in progress or coming up in few seconds!" + +msgid "Recordings" +msgstr "Recordings" + +msgid "Recordings always have priority" +msgstr "Recordings always have priority" + +msgid "Red button..." +msgstr "Red button..." + +msgid "Reenter new PIN" +msgstr "Reenter new PIN" + +msgid "Refresh rate" +msgstr "Refresh rate" + +msgid "Refresh rate selection." +msgstr "Refresh rate selection." + +msgid "Regard deep standby as standby" +msgstr "Regard deep standby as standby" + +msgid "Relative" +msgstr "Relative" + +msgid "Reload" +msgstr "Reload" + +msgid "Reload black-/white lists" +msgstr "Reload black-/white lists" + +msgid "Reloading bouquets and services..." +msgstr "Reloading bouquets and services..." + +msgid "Remember last service in PiP" +msgstr "" + +msgid "Remember service PIN" +msgstr "Remember service PIN" + +msgid "Remember these settings for each folder" +msgstr "Remember these settings for each folder" + +msgid "Reminder, you have chosen to save timeshift file." +msgstr "" + +msgid "Remote control type" +msgstr "Remote control type" + +msgid "Removal has completed." +msgstr "Removal has completed." + +msgid "Remove" +msgstr "Remove" + +msgid "Remove a mark" +msgstr "Remove a mark" + +msgid "Remove a nameserver entry" +msgstr "Remove a nameserver entry" + +msgid "Remove bookmark" +msgstr "Remove bookmark" + +msgid "Remove completed timers after (days)" +msgstr "Remove completed timers after (days)" + +msgid "Remove currently selected title" +msgstr "Remove currently selected title" + +msgid "Remove items from trash can after (days)" +msgstr "Remove items from trash can after (days)" + +msgid "Remove plugins" +msgstr "Remove plugins" + +msgid "Remove title" +msgstr "Remove title" + +msgid "Removing" +msgstr "Removing" + +#, python-format +msgid "Removing directory %s failed. (Maybe not empty.)" +msgstr "Removing directory %s failed. (Maybe not empty.)" + +msgid "Removing partition table" +msgstr "Removing partition table" + +msgid "Rename" +msgstr "Rename" + +msgid "Repeat" +msgstr "" + +msgid "Repeat type" +msgstr "Repeat type" + +msgid "Repeating event currently recording... What do you want to do?" +msgstr "Repeating event currently recording... What do you want to do?" + +msgid "Repeats" +msgstr "Repeats" + +msgid "Require authentication for http streams" +msgstr "" + +msgid "Required medium type:" +msgstr "Required medium type:" + +msgid "Rereading partition table" +msgstr "Rereading partition table" + +msgid "Reserved" +msgstr "Reserved" + +msgid "Reset" +msgstr "Reset" + +msgid "Reset and renumerate title names" +msgstr "Reset and renumerate title names" + +msgid "Reset playback position" +msgstr "Reset playback position" + +msgid "Reset video enhancement settings to system defaults?" +msgstr "Reset video enhancement settings to system defaults?" + +msgid "Reset video enhancement settings to your last configuration?" +msgstr "Reset video enhancement settings to your last configuration?" + +msgid "Resolution" +msgstr "Resolution" + +msgid "Restart" +msgstr "Restart" + +msgid "Restart GUI now?" +msgstr "Restart GUI now?" + +msgid "Restart enigma" +msgstr "Restart enigma" + +msgid "Restart network" +msgstr "Restart network" + +msgid "Restart test" +msgstr "Restart test" + +msgid "Restart your network connection and interfaces.\n" +msgstr "Restart your network connection and interfaces.\n" + +msgid "Restore" +msgstr "Restore" + +msgid "Restore backups" +msgstr "Restore backups" + +msgid "Restore is running..." +msgstr "Restore is running..." + +msgid "Restore system settings" +msgstr "Restore system settings" + +msgid "Restoring..." +msgstr "Restoring..." + +msgid "Resume from last position" +msgstr "Resume from last position" + +#, python-format +msgid "Resume position at %s" +msgstr "Resume position at %s" + +#. TRANSLATORS: The string "Resuming playback" flashes for a moment +#. TRANSLATORS: at the start of a movie, when the user has selected +#. TRANSLATORS: "Resume from last position" as start behavior. +#. TRANSLATORS: The purpose is to notify the user that the movie starts +#. TRANSLATORS: in the middle somewhere and not from the beginning. +#. TRANSLATORS: (Some translators seem to have interpreted it as a +#. TRANSLATORS: question or a choice, but it is a statement.) +msgid "Resuming playback" +msgstr "Resuming playback" + +msgid "Return to movie list" +msgstr "Return to movie list" + +msgid "Return to previous service" +msgstr "Return to previous service" + +msgid "Reverse bouquet buttons" +msgstr "" + +msgid "Reverse list" +msgstr "" + +msgid "Rewind speeds" +msgstr "Rewind speeds" + +msgid "Rewrap teletext subtitles" +msgstr "Rewrap teletext subtitles" + +msgid "Right" +msgstr "Right" + +msgid "Right from servicename" +msgstr "" + +msgid "Roll-off" +msgstr "Roll-off" + +msgid "Romanian" +msgstr "Romanian" + +msgid "Root directory" +msgstr "Root directory" + +msgid "Rotor step position:" +msgstr "Rotor step position:" + +msgid "Rotor turning speed" +msgstr "Rotor turning speed" + +msgid "Round start time on" +msgstr "Round start time on" + +msgid "Russian" +msgstr "Russian" + +msgid "S-Video" +msgstr "S-Video" + +msgid "SID" +msgstr "SID" + +msgid "SINGLE LAYER DVD" +msgstr "SINGLE LAYER DVD" + +msgid "SNR" +msgstr "SNR" + +msgid "SNR:" +msgstr "SNR:" + +msgid "SSID:" +msgstr "SSID:" + +msgid "Same resolution as skin" +msgstr "" + +msgid "Sat" +msgstr "Sat" + +msgid "Satellite" +msgstr "Satellite" + +msgid "Satellite dish setup" +msgstr "Satellite dish setup" + +msgid "Satellite equipment" +msgstr "Satellite equipment" + +msgid "Satellite equipment setup" +msgstr "Satellite equipment setup" + +msgid "Satellite longitude:" +msgstr "Satellite longitude:" + +msgid "Satellites" +msgstr "Satellites" + +msgid "Satfinder" +msgstr "Sat (Uydu) Bine" + +msgid "Sats" +msgstr "Sats" + +msgid "Saturation" +msgstr "Saturation" + +msgid "Saturday" +msgstr "Sift" + +msgid "Save" +msgstr "Save" + +msgid "Save playlist" +msgstr "Save playlist" + +msgid "Save timeshift file" +msgstr "" + +msgid "Save timeshift file in movie directory" +msgstr "" + +msgid "Scaler sharpness" +msgstr "Scaler sharpness" + +msgid "Scaling mode" +msgstr "Scaling mode" + +msgid "Scan" +msgstr "" + +msgid "Scan " +msgstr "Scan " + +#. TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' +#, python-format +msgid "Scan %s" +msgstr "Scan %s" + +#. TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' +#, python-format +msgid "Scan %s band" +msgstr "Scan %s band" + +msgid "Scan additional SR" +msgstr "Scan additional SR" + +msgid "Scan files..." +msgstr "Scan files..." + +msgid "Scan wireless networks" +msgstr "Scan wireless networks" + +msgid "Scan your network for wireless access points and connect to them using your selected wireless device.\n" +msgstr "Scan your network for wireless access points and connect to them using your selected wireless device.\n" + +#, python-format +msgid "Scanning %s..." +msgstr "Scanning %s..." + +#. TRANSLATORS: The stb is performing a channel scan, progress percentage is printed in '%d' (and '%%' will show a single '%' symbol) +#, fuzzy, python-format +msgid "Scanning - %d%% completed" +msgid_plural "Scanning - %d%% completed" +msgstr[0] "Scanning completed, %d channels found" +msgstr[1] "Scanning completed, %d channels found" + +#, fuzzy, python-format +msgid "Scanning completed, %d channel found" +msgid_plural "Scanning completed, %d channels found" +msgstr[0] "Scanning completed, %d channels found" +msgstr[1] "Scanning completed, %d channels found" + +msgid "Scanning failed!" +msgstr "Scanning failed!" + +msgid "Scanning..." +msgstr "Scanning..." + +msgid "Scans default lamedbs sorted by satellite with a connected dish positioner" +msgstr "Scans default lamedbs sorted by satellite with a connected dish positioner" + +msgid "Search east" +msgstr "Search east" + +msgid "Search west" +msgstr "Search west" + +msgid "Searching" +msgstr "Searching" + +msgid "Searching east ..." +msgstr "Searching east ..." + +msgid "Searching for available updates. Please wait..." +msgstr "Searching for available updates. Please wait..." + +msgid "Searching for new installed or removed packages. Please wait..." +msgstr "Searching for new installed or removed packages. Please wait..." + +msgid "Searching west ..." +msgstr "Searching west ..." + +msgid "Second cable of motorized LNB" +msgstr "" + +msgid "Secondary DNS" +msgstr "Secondary DNS" + +msgid "Seek" +msgstr "Seek" + +msgid "Seek backward" +msgstr "Seek backward" + +msgid "Seek backward (enter time)" +msgstr "Seek backward (enter time)" + +msgid "Seek forward" +msgstr "Seek forward" + +msgid "Seek forward (enter time)" +msgstr "Seek forward (enter time)" + +msgid "Select" +msgstr "Select" + +msgid "Select CAId" +msgstr "Select CAId" + +msgid "Select HDD" +msgstr "Select HDD" + +msgid "Select a bouquet" +msgstr "Select a bouquet" + +msgid "Select a movie" +msgstr "Select a movie" + +msgid "Select a network adapter" +msgstr "Select a network adapter" + +msgid "Select a skin" +msgstr "Select a skin" + +msgid "Select a tuner" +msgstr "Select a tuner" + +msgid "Select a wireless network" +msgstr "Select a wireless network" + +msgid "Select action" +msgstr "" + +#, python-format +msgid "Select action for timer %s:" +msgstr "" + +msgid "Select all" +msgstr "" + +msgid "Select an image to be downloaded" +msgstr "Select an image to be downloaded" + +msgid "Select audio track" +msgstr "Select audio track" + +msgid "Select backup files" +msgstr "Select backup files" + +msgid "Select backup location" +msgstr "Select backup location" + +msgid "Select channel to record from" +msgstr "Select channel to record from" + +msgid "Select copy destination for:" +msgstr "Select copy destination for:" + +msgid "Select default EPG type..." +msgstr "Select default EPG type..." + +msgid "Select desired image from feed list" +msgstr "Select desired image from feed list" + +msgid "Select destination for:" +msgstr "Select destination for:" + +msgid "Select files for backup." +msgstr "Select files for backup." + +msgid "Select files/folders to backup" +msgstr "Select files/folders to backup" + +msgid "Select input device" +msgstr "Select input device" + +msgid "Select input device." +msgstr "Select input device." + +msgid "Select interface" +msgstr "Select interface" + +msgid "Select location" +msgstr "Select location" + +msgid "Select movie" +msgstr "Select movie" + +msgid "Select provider to add..." +msgstr "Select provider to add..." + +msgid "Select refresh rate" +msgstr "Select refresh rate" + +msgid "Select satellites" +msgstr "" + +msgid "Select service to add..." +msgstr "Select service to add..." + +msgid "Select sort method:" +msgstr "" + +msgid "Select target folder" +msgstr "Select target folder" + +msgid "Select the movie path" +msgstr "Select the movie path" + +msgid "Select upgrade source" +msgstr "Select upgrade source" + +msgid "Select upgrade source to edit." +msgstr "Select upgrade source to edit." + +msgid "Select video input with up/down buttons" +msgstr "Select video input with up/down buttons" + +msgid "Select video mode" +msgstr "Select video mode" + +msgid "Select wireless network" +msgstr "Select wireless network" + +msgid "Select your provider, and press OK to start the scan" +msgstr "Select your provider, and press OK to start the scan" + +msgid "Selecting satellites 1 (USALS)" +msgstr "" + +msgid "Selecting satellites 2 (USALS)" +msgstr "" + +msgid "Send DiSEqC only on satellite change" +msgstr "Send DiSEqC only on satellite change" + +msgid "Separate titles with a main menu" +msgstr "Separate titles with a main menu" + +msgid "Sequence repeat" +msgstr "Sequence repeat" + +msgid "Serbian" +msgstr "Serbian" + +msgid "Service" +msgstr "Hizmeti" + +msgid "Service has been added to the favourites." +msgstr "Service has been added to the favourites." + +msgid "Service has been added to the selected bouquet." +msgstr "Service has been added to the selected bouquet." + +msgid "Service info" +msgstr "Service info" + +msgid "" +"Service invalid!\n" +"(Timeout reading PMT)" +msgstr "" +"Service invalid!\n" +"(Timeout reading PMT)" + +msgid "Service name" +msgstr "Service name" + +msgid "" +"Service not found!\n" +"(SID not found in PAT)" +msgstr "" +"Service not found!\n" +"(SID not found in PAT)" + +msgid "Service reference" +msgstr "Service reference" + +msgid "Service scan" +msgstr "Service scan" + +msgid "Service searching" +msgstr "Çékirina Anten" + +msgid "Service title mode" +msgstr "Service title mode" + +msgid "" +"Service unavailable!\n" +"Check tuner configuration!" +msgstr "" +"Service unavailable!\n" +"Check tuner configuration!" + +msgid "Services" +msgstr "Services" + +msgid "Set default" +msgstr "" + +msgid "Set end time" +msgstr "Set end time" + +msgid "Set fixed" +msgstr "Set fixed" + +msgid "Set fps for external subtitles" +msgstr "" + +msgid "Set interface as default Interface" +msgstr "Set interface as default Interface" + +msgid "Set limits" +msgstr "Set limits" + +msgid "Set the type of the progress indication in the channel selection screen." +msgstr "Set the type of the progress indication in the channel selection screen." + +msgid "Set time window to 1 hour" +msgstr "Set time window to 1 hour" + +msgid "Set time window to 2 hours" +msgstr "Set time window to 2 hours" + +msgid "Set time window to 3 hours" +msgstr "Set time window to 3 hours" + +msgid "Set time window to 4 hours" +msgstr "Set time window to 4 hours" + +msgid "Set time window to 5 hours" +msgstr "Set time window to 5 hours" + +msgid "Set time window to 6 hours" +msgstr "" + +msgid "Set voltage and 22KHz" +msgstr "Set voltage and 22KHz" + +msgid "Settings" +msgstr "Settings" + +msgid "Setup" +msgstr "Çékirin" + +msgid "Setup menu" +msgstr "Setup menu" + +msgid "Setup mode" +msgstr "Setup mode" + +msgid "Setup your positioner" +msgstr "Setup your positioner" + +msgid "Setup your satellite equipment" +msgstr "Setup your satellite equipment" + +#, python-format +msgid "Shall the USB stick wizard proceed and program the image file %s into flash memory?" +msgstr "Shall the USB stick wizard proceed and program the image file %s into flash memory?" + +msgid "Sharpness" +msgstr "Sharpness" + +msgid "Short filenames" +msgstr "Short filenames" + +msgid "Show EIT now/next in infobar" +msgstr "Show EIT now/next in infobar" + +msgid "Show EPG for current channel..." +msgstr "Show EPG for current channel..." + +msgid "Show EPG..." +msgstr "Show EPG..." + +msgid "Show Games show" +msgstr "Show Games show" + +msgid "Show SNR percentage instead of dB value" +msgstr "Show SNR percentage instead of dB value" + +msgid "Show VCR scart on main menu" +msgstr "" + +msgid "Show WLAN status" +msgstr "Show WLAN status" + +msgid "Show animation while busy" +msgstr "Show animation while busy" + +msgid "Show background in radio mode" +msgstr "Show background in radio mode" + +msgid "Show bouquet selection menu" +msgstr "Show bouquet selection menu" + +msgid "Show busy indicator when the system is busy." +msgstr "Show busy indicator when the system is busy." + +msgid "Show channel numbers in channel selection" +msgstr "Show channel numbers in channel selection" + +msgid "Show columns" +msgstr "" + +msgid "Show crypto icons" +msgstr "" + +msgid "Show crypto info in infobar" +msgstr "Show crypto info in infobar" + +msgid "Show detailed event info" +msgstr "Show detailed event info" + +msgid "Show event details" +msgstr "Show event details" + +msgid "Show event-progress in channel selection" +msgstr "Show event-progress in channel selection" + +msgid "Show extended description" +msgstr "Show extended description" + +msgid "Show extensions..." +msgstr "Show extensions..." + +msgid "Show icon for new/unseen items" +msgstr "Show icon for new/unseen items" + +msgid "Show in extensions menu" +msgstr "" + +msgid "Show info" +msgstr "Show info" + +msgid "Show info line" +msgstr "Show info line" + +msgid "Show infobar on channel change" +msgstr "Show infobar on channel change" + +msgid "Show infobar on event change" +msgstr "Show infobar on event change" + +msgid "Show infobar on skip forward/backward" +msgstr "Show infobar on skip forward/backward" + +msgid "Show latest commits on sourceforge" +msgstr "" + +msgid "Show message when recording starts" +msgstr "Show message when recording starts" + +msgid "Show movie lengths in movielist" +msgstr "Show movie lengths in movielist" + +msgid "Show multi channel EPG" +msgstr "" + +msgid "Show picons in channel list" +msgstr "" + +msgid "Show positioner movement" +msgstr "Show positioner movement" + +msgid "Show screensaver" +msgstr "" + +msgid "Show second infobar" +msgstr "Show second infobar" + +msgid "Show service type icons" +msgstr "" + +msgid "Show services beginning with" +msgstr "Show services beginning with" + +msgid "Show shutdown menu" +msgstr "Show shutdown menu" + +msgid "Show single service EPG" +msgstr "" + +msgid "Show status icons in Movielist" +msgstr "" + +msgid "Show status icons in movie list" +msgstr "Show status icons in movie list" + +msgid "Show status icons in movielist" +msgstr "Show status icons in movielist" + +msgid "Show tag menu" +msgstr "Show tag menu" + +msgid "Show the radio player..." +msgstr "Show the radio player..." + +msgid "Show the tv player..." +msgstr "Show the tv player..." + +msgid "Show warning when timeshift is stopped" +msgstr "" + +msgid "Shows the state of your wireless LAN connection.\n" +msgstr "Shows the state of your wireless LAN connection.\n" + +msgid "Shuffle playlist" +msgstr "Shuffle playlist" + +msgid "Shutdown" +msgstr "Shutdown" + +msgid "Shutdown when in Standby" +msgstr "" + +msgid "Side by side" +msgstr "Side by side" + +msgid "Signal OK, proceeding" +msgstr "Signal OK, proceeding" + +msgid "Signal quality" +msgstr "Signal quality" + +msgid "Signal strength:" +msgstr "Signal strength:" + +msgid "Signal: " +msgstr "Signal: " + +msgid "Similar" +msgstr "Similar" + +msgid "Similar broadcasts:" +msgstr "Similar broadcasts:" + +msgid "Simple" +msgstr "Simple" + +msgid "Simple titleset (compatibility for legacy players)" +msgstr "Simple titleset (compatibility for legacy players)" + +msgid "Single" +msgstr "Single" + +msgid "Single EPG" +msgstr "Single EPG" + +msgid "Single satellite" +msgstr "Single satellite" + +msgid "Single step (GOP)" +msgstr "Single step (GOP)" + +msgid "Single transponder" +msgstr "Single transponder" + +msgid "Site latitude" +msgstr "Site latitude" + +msgid "Site longitude" +msgstr "Site longitude" + +msgid "Skin" +msgstr "Ruyé Cihaz" + +msgid "Skins" +msgstr "Skins" + +msgid "Skip empty services" +msgstr "Skip empty services" + +msgid "Skip internet connection check (disables automatic package installation)" +msgstr "Skip internet connection check (disables automatic package installation)" + +msgid "Sleep timer" +msgstr "Sleep timer" + +msgid "SleepTimer Configuration" +msgstr "" + +msgid "Sleeptimer" +msgstr "" + +msgid "Slide picture in loop" +msgstr "Slide picture in loop" + +msgid "Slide show interval (sec.)" +msgstr "Slide show interval (sec.)" + +#, python-format +msgid "Slot %d" +msgstr "Slot %d" + +msgid "Slovak" +msgstr "Slovak" + +msgid "Slovenian" +msgstr "Slovenian" + +msgid "Slow" +msgstr "Slow" + +msgid "Slow motion speeds" +msgstr "Slow motion speeds" + +msgid "Small progress" +msgstr "Small progress" + +msgid "Social/Political/Economics" +msgstr "Social/Political/Economics" + +msgid "SoftCam / CI" +msgstr "SoftCam / CI" + +msgid "Softcam type" +msgstr "Softcam type" + +msgid "Software" +msgstr "Software" + +msgid "Software management" +msgstr "Software management" + +msgid "Software manager setup" +msgstr "Software manager setup" + +msgid "Software restore" +msgstr "Software restore" + +msgid "Software update" +msgstr "Nisisiya İmage Bine" + +msgid "Softwaremanager information" +msgstr "Softwaremanager information" + +msgid "Some plugins are not available:\n" +msgstr "Some plugins are not available:\n" + +#, python-format +msgid "Sorry, %s has not been installed!" +msgstr "Sorry, %s has not been installed!" + +msgid "Sorry, deleting directories can (for now) only be done through the trash can." +msgstr "Sorry, deleting directories can (for now) only be done through the trash can." + +msgid "Sorry, no backups found!" +msgstr "Sorry, no backups found!" + +msgid "Sorry, no details available!" +msgstr "Sorry, no details available!" + +msgid "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." +msgstr "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." + +msgid "Sort" +msgstr "Sort" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort A-Z" +msgstr "Sort A-Z" + +msgid "Sort by" +msgstr "" + +msgid "Sort list:" +msgstr "" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort time" +msgstr "Sort time" + +msgid "Sound" +msgstr "Sound" + +msgid "Sound carrier" +msgstr "Sound carrier" + +msgid "Source request" +msgstr "Source request" + +msgid "South" +msgstr "South" + +msgid "Spanish" +msgstr "Spanish" + +msgid "Specify the end time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the end time until the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify the start time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the start time when the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify timeframe to ignore inactivity sleeptimer" +msgstr "" + +msgid "Specify timeframe to ignore the shutdown in standby" +msgstr "" + +msgid "Split preview mode" +msgstr "Split preview mode" + +msgid "Splitscreen" +msgstr "" + +msgid "Sports" +msgstr "Sports" + +msgid "Standard" +msgstr "Standard" + +msgid "Standart list" +msgstr "" + +msgid "Standby" +msgstr "Standby" + +msgid "Standby / restart" +msgstr "Bigiri / Nu Vegeri" + +msgid "Standby after current event" +msgstr "" + +#, python-format +msgid "Standby fan %d PWM" +msgstr "Standby fan %d PWM" + +#, python-format +msgid "Standby fan %d voltage" +msgstr "Standby fan %d voltage" + +msgid "Standby in " +msgstr "" + +msgid "StandbyLED" +msgstr "" + +msgid "Start from the beginning" +msgstr "Start from the beginning" + +msgid "Start offline decode" +msgstr "Start offline decode" + +msgid "Start recording?" +msgstr "Start recording?" + +msgid "Start test" +msgstr "Start test" + +msgid "Start time" +msgstr "Start time" + +msgid "Start time to ignore inactivity sleeptimer" +msgstr "" + +msgid "Start time to ignore shutdown in standby" +msgstr "" + +msgid "Start timeshift" +msgstr "Start timeshift" + +msgid "Start with list screen" +msgstr "Start with list screen" + +msgid "Starting on" +msgstr "Starting on" + +msgid "Startup the set top box in standby" +msgstr "" + +msgid "Startup to Standby" +msgstr "" + +msgid "Step east" +msgstr "Step east" + +msgid "Step west" +msgstr "Step west" + +msgid "Stepped east" +msgstr "Stepped east" + +msgid "Stepped west" +msgstr "Stepped west" + +msgid "Stop" +msgstr "Stop" + +msgid "Stop PiP" +msgstr "Stop PiP" + +msgid "Stop current event and disable coming events" +msgstr "Stop current event and disable coming events" + +msgid "Stop current event but not coming events" +msgstr "Stop current event but not coming events" + +msgid "Stop entry" +msgstr "Stop entry" + +msgid "Stop playing this movie?" +msgstr "Stop playing this movie?" + +msgid "Stop recording" +msgstr "Stop recording" + +msgid "Stop recording and delete" +msgstr "Stop recording and delete" + +msgid "Stop service on return to movie list" +msgstr "" + +msgid "Stop test" +msgstr "Stop test" + +msgid "Stop testing plane after # failed transponders" +msgstr "Stop testing plane after # failed transponders" + +msgid "Stop testing plane after # successful transponders" +msgstr "Stop testing plane after # successful transponders" + +msgid "Stop timer recording" +msgstr "" + +msgid "Stop timeshift" +msgstr "Stop timeshift" + +msgid "Stop timeshift?" +msgstr "Stop timeshift?" + +msgid "Stopped" +msgstr "Stopped" + +msgid "Store at index" +msgstr "Store at index" + +msgid "Store position" +msgstr "Store position" + +msgid "Stored position" +msgstr "Stored position" + +msgid "Stream" +msgstr "Stream" + +msgid "Stream request" +msgstr "Stream request" + +msgid "Strongest position" +msgstr "Strongest position" + +msgid "Subservice list..." +msgstr "Subservice list..." + +msgid "Subservices" +msgstr "Subservices" + +msgid "Subtitle Quickmenu" +msgstr "" + +msgid "Subtitle alignment" +msgstr "Subtitle alignment" + +msgid "Subtitle border width" +msgstr "Subtitle border width" + +msgid "Subtitle delay when timing is bad" +msgstr "" + +msgid "Subtitle delay when timing lacks" +msgstr "Subtitle delay when timing lacks" + +msgid "Subtitle font size" +msgstr "Subtitle font size" + +msgid "Subtitle language selection 1" +msgstr "Subtitle language selection 1" + +msgid "Subtitle language selection 2" +msgstr "Subtitle language selection 2" + +msgid "Subtitle language selection 3" +msgstr "Subtitle language selection 3" + +msgid "Subtitle language selection 4" +msgstr "Subtitle language selection 4" + +msgid "Subtitle position" +msgstr "Subtitle position" + +msgid "Subtitle selection" +msgstr "Subtitle selection" + +msgid "Subtitle selection..." +msgstr "Subtitle selection..." + +msgid "Subtitle settings" +msgstr "Çékirina Bin nivisi" + +msgid "Subtitles" +msgstr "Subtitles" + +msgid "Sun" +msgstr "Sun" + +msgid "Sunday" +msgstr "Bazaar" + +msgid "Swap PiP and main picture" +msgstr "Swap PiP and main picture" + +msgid "Swap services" +msgstr "Swap services" + +msgid "Swedish" +msgstr "Swedish" + +msgid "Switch TV to correct input" +msgstr "Switch TV to correct input" + +msgid "Switch between filelist/playlist" +msgstr "" + +msgid "Switch between normal mode and list mode" +msgstr "Switch between normal mode and list mode" + +msgid "Switch to HDMI in mode" +msgstr "" + +msgid "Switch to filelist" +msgstr "Switch to filelist" + +msgid "Switch to next channel" +msgstr "" + +msgid "Switch to next channel in history" +msgstr "Switch to next channel in history" + +msgid "Switch to next sub service" +msgstr "Switch to next sub service" + +msgid "Switch to playlist" +msgstr "Switch to playlist" + +msgid "Switch to previous channel" +msgstr "Switch to previous channel" + +msgid "Switch to previous channel in history" +msgstr "Switch to previous channel in history" + +msgid "Switch to previous sub service" +msgstr "Switch to previous sub service" + +msgid "Switchable tuner types:" +msgstr "Switchable tuner types:" + +msgid "Symbol rate" +msgstr "Symbol rate" + +msgid "Symbol rate:" +msgstr "" + +msgid "Sync failure moving back to origin !" +msgstr "Sync failure moving back to origin !" + +msgid "System" +msgstr "Systemé wi" + +#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) +msgid "TRANSLATOR_INFO" +msgstr "TRANSLATOR_INFO" + +msgid "TS file is too large for ISO9660 level 1!" +msgstr "TS file is too large for ISO9660 level 1!" + +msgid "TSID" +msgstr "TSID" + +msgid "TV physical address report" +msgstr "TV physical address report" + +msgid "TXT PID" +msgstr "TXT PID" + +msgid "Table of contents for collection" +msgstr "Table of contents for collection" + +msgid "Tags" +msgstr "Tags" + +msgid "Teletext subtitle color" +msgstr "Teletext subtitle color" + +msgid "Temperature and fan control" +msgstr "Temperature and fan control" + +msgid "Terrestrial" +msgstr "Terrestrial" + +msgid "Terrestrial provider" +msgstr "Terrestrial provider" + +msgid "Test DiSEqC settings" +msgstr "Test DiSEqC settings" + +msgid "Test mode" +msgstr "Test mode" + +msgid "Test the network configuration of your receiver.\n" +msgstr "Test the network configuration of your receiver.\n" + +msgid "Test type" +msgstr "Test type" + +msgid "Text color" +msgstr "Text color" + +msgid "Thai" +msgstr "Thai" + +msgid "" +"Thank you for using the wizard.\n" +"Please press OK to continue." +msgstr "" +"Thank you for using the wizard.\n" +"Please press OK to continue." + +msgid "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." +msgstr "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." + +msgid "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?" +msgstr "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?" + +msgid "The PIN code has been changed successfully." +msgstr "The PIN code has been changed successfully." + +msgid "The PIN codes you entered are different." +msgstr "The PIN codes you entered are different." + +msgid "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" +msgstr "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" + +msgid "The backup failed. Please choose a different backup location." +msgstr "The backup failed. Please choose a different backup location." + +#, python-format +msgid "" +"The current beta image might not be stable.\n" +"For more information see %s." +msgstr "" +"The current beta image might not be stable.\n" +"For more information see %s." + +#, python-format +msgid "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." +msgstr "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." + +#, python-format +msgid "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" +msgstr "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" + +msgid "The following files were found..." +msgstr "The following files were found..." + +msgid "The md5sum validation failed, the file may be corrupted!" +msgstr "The md5sum validation failed, the file may be corrupted!" + +msgid "" +"The network wizard extension is not installed!\n" +"Please install it." +msgstr "" +"The network wizard extension is not installed!\n" +"Please install it." + +#, python-format +msgid "The path %s already exists." +msgstr "The path %s already exists." + +msgid "The pin code you entered is wrong." +msgstr "The pin code you entered is wrong." + +#, python-format +msgid "The results have been written to %s." +msgstr "The results have been written to %s." + +msgid "The sleep timer has been activated." +msgstr "The sleep timer has been activated." + +msgid "The sleep timer has been disabled." +msgstr "The sleep timer has been disabled." + +msgid "" +"The software management extension is not installed!\n" +"Please install it." +msgstr "" +"The software management extension is not installed!\n" +"Please install it." + +#, python-format +msgid "The status of the current beta image could not be checked because %s can not be reached." +msgstr "The status of the current beta image could not be checked because %s can not be reached." + +msgid "The timer file (timers.xml) is corrupt and could not be loaded." +msgstr "The timer file (timers.xml) is corrupt and could not be loaded." + +msgid "The user interface of your receiver is restarting" +msgstr "The user interface of your receiver is restarting" + +msgid "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" +msgstr "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." +msgstr "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it." +msgstr "" +"The wireless LAN plugin is not installed!\n" +"Please install it." + +msgid "The wizard can backup your current settings. Do you want to do a backup now?" +msgstr "The wizard can backup your current settings. Do you want to do a backup now?" + +#, python-format +msgid "The wizard found a configuration backup. Do you want to restore your old settings from %s?" +msgstr "The wizard found a configuration backup. Do you want to restore your old settings from %s?" + +msgid "The wizard is finished now." +msgstr "The wizard is finished now." + +msgid "There are at least " +msgstr "There are at least " + +#, python-format +msgid "There are at least %s updates available." +msgstr "There are at least %s updates available." + +msgid "There are currently no outstanding actions." +msgstr "There are currently no outstanding actions." + +msgid "There are no updates available." +msgstr "There are no updates available." + +msgid "There is no signal to lock on !" +msgstr "There is no signal to lock on !" + +msgid "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" +msgstr "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" + +msgid "This DVD RW medium is already formatted - reformatting will erase all content on the disc." +msgstr "This DVD RW medium is already formatted - reformatting will erase all content on the disc." + +msgid "" +"This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!" +msgstr "" +"This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!" + +msgid "This plugin is installed." +msgstr "This plugin is installed." + +msgid "This plugin is not installed." +msgstr "This plugin is not installed." + +msgid "This plugin will be installed." +msgstr "This plugin will be installed." + +msgid "This plugin will be removed." +msgstr "This plugin will be removed." + +#, python-format +msgid "This receiver cannot decode %s streams!" +msgstr "This receiver cannot decode %s streams!" + +msgid "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration" +msgstr "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration" + +msgid "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" +msgstr "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" + +msgid "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" +msgstr "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" + +msgid "" +"This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." +msgstr "" +"This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." + +msgid "This test detects your configured LAN adapter." +msgstr "This test detects your configured LAN adapter." + +msgid "" +"This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\n" +"Are you sure?" +msgstr "" +"This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\n" +"Are you sure?" + +msgid "Three" +msgstr "Three" + +msgid "Threshold" +msgstr "Threshold" + +msgid "Thu" +msgstr "Thu" + +msgid "Thumbnails" +msgstr "Thumbnails" + +msgid "Thursday" +msgstr "Péncşem" + +msgid "Time" +msgstr "Time" + +msgid "Time scale" +msgstr "Time scale" + +msgid "Timer" +msgstr "Vext" + +msgid "Timer Overview" +msgstr "" + +msgid "Timer edit" +msgstr "Timer edit" + +msgid "Timer editor" +msgstr "Timer editor" + +msgid "Timer entry" +msgstr "Timer entry" + +msgid "Timer log" +msgstr "Timer log" + +msgid "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" +msgstr "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" + +msgid "Timer overview" +msgstr "Timer overview" + +msgid "Timer recording location" +msgstr "Timer recording location" + +msgid "Timer sanity error" +msgstr "Timer sanity error" + +msgid "Timer selection" +msgstr "Timer selection" + +msgid "Timer selection..." +msgstr "" + +msgid "Timer type" +msgstr "Timer type" + +msgid "Timeshift" +msgstr "Timeshift" + +msgid "Timeshift Live" +msgstr "" + +msgid "Timeshift location" +msgstr "Timeshift location" + +msgid "Timeshift not possible!" +msgstr "Timeshift not possible!" + +msgid "Timezone" +msgstr "Wextu Zeman" + +msgid "Title" +msgstr "Title" + +msgid "Title properties" +msgstr "Title properties" + +msgid "Titleset mode" +msgstr "Titleset mode" + +msgid "To audio selection" +msgstr "To audio selection" + +msgid "To subtitle selection" +msgstr "To subtitle selection" + +msgid "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." +msgstr "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." + +msgid "Today" +msgstr "Today" + +msgid "Toggle a cut mark at the current position" +msgstr "Toggle a cut mark at the current position" + +msgid "Tone amplitude" +msgstr "Tone amplitude" + +msgid "Tone mode" +msgstr "Tone mode" + +msgid "Toneburst" +msgstr "Toneburst" + +msgid "Toneburst A/B" +msgstr "Toneburst A/B" + +msgid "Top and bottom" +msgstr "Top and bottom" + +msgid "Track" +msgstr "Track" + +msgid "Translation" +msgstr "Translation" + +msgid "Translation:" +msgstr "Translation:" + +msgid "Translations" +msgstr "" + +msgid "Transmission mode" +msgstr "Transmission mode" + +msgid "Transponder" +msgstr "Transponder" + +msgid "Transponder type" +msgstr "Transponder type" + +msgid "Trash can" +msgstr "Trash can" + +msgid "Tries left:" +msgstr "Tries left:" + +msgid "Try to find used transponders in cable network.. please wait..." +msgstr "Try to find used transponders in cable network.. please wait..." + +msgid "Trying to download a new packetlist. Please wait..." +msgstr "Trying to download a new packetlist. Please wait..." + +msgid "Tue" +msgstr "Tue" + +msgid "Tuesday" +msgstr "Duşem" + +msgid "Tune" +msgstr "Tune" + +msgid "Tune and focus" +msgstr "Tune and focus" + +msgid "Tune failed!" +msgstr "Tune failed!" + +msgid "Tuner" +msgstr "Tuner" + +msgid "Tuner configuration" +msgstr "Çékirina Tuner " + +msgid "Tuner is not supported" +msgstr "" + +msgid "Tuner slot" +msgstr "Tuner slot" + +msgid "Tuner status" +msgstr "Tuner status" + +#, python-format +msgid "Tuner status %s" +msgstr "Tuner status %s" + +msgid "Tuner type" +msgstr "Tuner type" + +msgid "Turkish" +msgstr "Turkish" + +msgid "Turn on the power LED during standby." +msgstr "" + +msgid "Turning step size" +msgstr "" + +msgid "Two" +msgstr "Two" + +msgid "Type" +msgstr "Type" + +msgid "Type of scan" +msgstr "Type of scan" + +msgid "USALS" +msgstr "USALS" + +msgid "USALS calibration" +msgstr "USALS calibration" + +msgid "USB stick" +msgstr "USB stick" + +msgid "USB stick wizard" +msgstr "USB stick wizard" + +msgid "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" + +msgid "Undo install" +msgstr "Undo install" + +msgid "Undo uninstall" +msgstr "Undo uninstall" + +msgid "Unencrypted" +msgstr "Unencrypted" + +msgid "UnhandledKey" +msgstr "UnhandledKey" + +msgid "Unicable" +msgstr "Unicable" + +msgid "Unicable LNB" +msgstr "Unicable LNB" + +msgid "Unicable Martix" +msgstr "Unicable Martix" + +msgid "Uninstall" +msgstr "Uninstall" + +msgid "Universal LNB" +msgstr "Universal LNB" + +msgid "Unknown" +msgstr "Unknown" + +msgid "Unmount" +msgstr "Unmount" + +msgid "Unsupported" +msgstr "Unsupported" + +msgid "Update" +msgstr "Update" + +msgid "Update and ask to reboot" +msgstr "Update and ask to reboot" + +msgid "Update and reboot (recommended)" +msgstr "Update and reboot (recommended)" + +msgid "Update channel list only" +msgstr "Update channel list only" + +#, python-format +msgid "Update completed, %d package was installed." +msgid_plural "Update completed, %d packages were installed." +msgstr[0] "Update completed, %d package was installed." +msgstr[1] "Update completed, %d packages were installed." + +msgid "Update completed. Do you want to reboot your receiver?" +msgstr "Update completed. Do you want to reboot your receiver?" + +msgid "Update failed. Your receiver does not have a working internet connection." +msgstr "Update failed. Your receiver does not have a working internet connection." + +msgid "Update has completed." +msgstr "Update has completed." + +msgid "Updatefeed not available." +msgstr "Updatefeed not available." + +msgid "Updating software catalog" +msgstr "Updating software catalog" + +msgid "Upgrading" +msgstr "Upgrading" + +msgid "Use" +msgstr "Use" + +msgid "Use DHCP" +msgstr "Use DHCP" + +msgid "Use EIT EPG information when it is available." +msgstr "Use EIT EPG information when it is available." + +msgid "Use FreeSat EPG information when it is available." +msgstr "Use FreeSat EPG information when it is available." + +msgid "Use MHW EPG information when it is available." +msgstr "Use MHW EPG information when it is available." + +msgid "Use Netmed EPG information when it is available." +msgstr "Use Netmed EPG information when it is available." + +msgid "Use TV remote control" +msgstr "Use TV remote control" + +msgid "Use USALS for this sat" +msgstr "Use USALS for this sat" + +msgid "Use ViaSat EPG information when it is available." +msgstr "Use ViaSat EPG information when it is available." + +msgid "Use Virgin EPG information when it is available." +msgstr "" + +msgid "Use a gateway" +msgstr "Use a gateway" + +msgid "Use fastscan channel names" +msgstr "Use fastscan channel names" + +msgid "Use fastscan channel numbering" +msgstr "Use fastscan channel numbering" + +msgid "Use frequency or channel" +msgstr "" + +msgid "Use individual settings for each directory" +msgstr "" + +msgid "Use interface" +msgstr "Use interface" + +msgid "Use official channel numbering" +msgstr "Use official channel numbering" + +msgid "Use original DVB subtitle position" +msgstr "Use original DVB subtitle position" + +msgid "Use original teletext position" +msgstr "Use original teletext position" + +msgid "Use power measurement" +msgstr "Use power measurement" + +msgid "Use the network wizard to configure selected network adapter" +msgstr "Use the network wizard to configure selected network adapter" + +msgid "Use the network wizard to configure your network\n" +msgstr "Use the network wizard to configure your network\n" + +msgid "Use the up/down keys on your remote control to select an option. After that, press OK." +msgstr "Use the up/down keys on your remote control to select an option. After that, press OK." + +msgid "Use the wizard to set up basic features" +msgstr "Use the wizard to set up basic features" + +msgid "Use these input device settings?" +msgstr "Use these input device settings?" + +msgid "Use these settings?" +msgstr "Use these settings?" + +msgid "Use this video enhancement settings?" +msgstr "Use this video enhancement settings?" + +msgid "Use trash can in movielist" +msgstr "Use trash can in movielist" + +msgid "Used service scan type" +msgstr "Used service scan type" + +msgid "User - bouquets" +msgstr "User - bouquets" + +msgid "User defined" +msgstr "User defined" + +msgid "User defined transponder" +msgstr "" + +msgid "User interface" +msgstr "Çékirina te" + +msgid "Username" +msgstr "Username" + +#, python-format +msgid "Using LNB %d" +msgstr "Using LNB %d" + +msgid "Using fixed address" +msgstr "Using fixed address" + +#, python-format +msgid "Using tuner %s" +msgstr "Using tuner %s" + +msgid "Usually when the subtitle language is the same as the audio language, the subtitles will not be used. Enable this option to allow these subtitles to be used." +msgstr "Usually when the subtitle language is the same as the audio language, the subtitles will not be used. Enable this option to allow these subtitles to be used." + +msgid "VCR scart" +msgstr "VCR scart" + +msgid "VMGM (intro trailer)" +msgstr "VMGM (intro trailer)" + +msgid "Vertical" +msgstr "Vertical" + +msgid "Vertical turning speed" +msgstr "Vertical turning speed" + +msgid "Video PID" +msgstr "Video PID" + +msgid "Video enhancement preview" +msgstr "Video enhancement preview" + +msgid "Video enhancement settings" +msgstr "Video enhancement settings" + +msgid "Video enhancement setup" +msgstr "Video enhancement setup" + +msgid "Video fine tuning" +msgstr "Eyaré Video Tenik" + +msgid "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." +msgstr "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." + +msgid "Video mode selection." +msgstr "Video mode selection." + +msgid "Video output" +msgstr "Video output" + +msgid "Video setup" +msgstr "Video setup" + +msgid "Video wizard" +msgstr "Video wizard" + +#, python-format +msgid "Video: %s fps" +msgstr "" + +msgid "VideoMode" +msgstr "" + +msgid "Videocodec" +msgstr "Videocodec" + +msgid "Videoformat" +msgstr "Videoformat" + +msgid "Videosize" +msgstr "Videosize" + +msgid "View Rass interactive..." +msgstr "View Rass interactive..." + +msgid "View details" +msgstr "View details" + +msgid "View list of available " +msgstr "View list of available " + +msgid "View list of available CommonInterface extensions" +msgstr "View list of available CommonInterface extensions" + +msgid "View list of available EPG extensions." +msgstr "View list of available EPG extensions." + +msgid "View list of available Satellite equipment extensions." +msgstr "View list of available Satellite equipment extensions." + +msgid "View list of available communication extensions." +msgstr "View list of available communication extensions." + +msgid "View list of available default settings" +msgstr "View list of available default settings" + +msgid "View list of available display and userinterface extensions." +msgstr "View list of available display and userinterface extensions." + +msgid "View list of available multimedia extensions." +msgstr "View list of available multimedia extensions." + +msgid "View list of available networking extensions" +msgstr "View list of available networking extensions" + +msgid "View list of available recording extensions" +msgstr "View list of available recording extensions" + +msgid "View list of available skins" +msgstr "View list of available skins" + +msgid "View list of available software extensions" +msgstr "View list of available software extensions" + +msgid "View list of available system extensions" +msgstr "View list of available system extensions" + +msgid "View photos..." +msgstr "View photos..." + +msgid "View teletext..." +msgstr "View teletext..." + +msgid "View video CD..." +msgstr "View video CD..." + +msgid "Virtual keyboard" +msgstr "Virtual keyboard" + +msgid "Voltage mode" +msgstr "Voltage mode" + +msgid "Volume" +msgstr "Volume" + +msgid "W" +msgstr "W" + +msgid "WEP" +msgstr "WEP" + +msgid "WLAN connection" +msgstr "WLAN connection" + +msgid "WPA" +msgstr "WPA" + +msgid "WPA or WPA2" +msgstr "WPA or WPA2" + +msgid "WPA2" +msgstr "WPA2" + +msgid "WSS on 4:3" +msgstr "WSS on 4:3" + +msgid "Waiting" +msgstr "Waiting" + +msgid "Waiting for mount" +msgstr "Waiting for mount" + +msgid "Waiting for partition" +msgstr "Waiting for partition" + +msgid "Wakeup" +msgstr "Wakeup" + +msgid "Wakeup TV from standby" +msgstr "Wakeup TV from standby" + +msgid "Wakeup receiver for start timer" +msgstr "" + +msgid "Wakeup receiver from standby" +msgstr "Wakeup receiver from standby" + +msgid "Wakeup signal from TV" +msgstr "Wakeup signal from TV" + +msgid "Wakeup type" +msgstr "" + +msgid "Warning: no LNB; using factory defaults." +msgstr "Warning: no LNB; using factory defaults." + +msgid "Watch movies..." +msgstr "Watch movies..." + +msgid "Watch recordings..." +msgstr "Watch recordings..." + +msgid "Wed" +msgstr "Wed" + +msgid "Wednesday" +msgstr "Çarşem" + +msgid "Weekday" +msgstr "Weekday" + +msgid "Weighted position" +msgstr "Weighted position" + +msgid "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." +msgstr "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." + +msgid "Welcome to the image upgrade wizard. The wizard will assist you in upgrading the firmware of your receiver by providing a backup facility for your current settings and a short explanation of how to upgrade your firmware." +msgstr "Welcome to the image upgrade wizard. The wizard will assist you in upgrading the firmware of your receiver by providing a backup facility for your current settings and a short explanation of how to upgrade your firmware." + +msgid "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" +msgstr "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" + +msgid "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." +msgstr "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." + +msgid "Welcome..." +msgstr "Welcome..." + +msgid "West" +msgstr "West" + +msgid "West limit set" +msgstr "West limit set" + +msgid "What do you want to scan?" +msgstr "What do you want to scan?" + +msgid "When enabled the PiP can be closed by the exit button." +msgstr "" + +msgid "When enabled the arrow buttons around the OK button will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled the left, right, CH+/-, B+/-, P+/- buttons will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled you can specify a timeframe to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "When enabled you can specify a timeframe were the inactivity sleeptimer is ignored. Not the detection is disabled during this timeframe but the inactivity timeout is disabled" +msgstr "" + +msgid "When enabled you can zap channels with the CH+/-, B+/-, P+/- buttons instead of opening the channel selection list." +msgstr "" + +msgid "When enabled you get the channel selection list via the OK button, the infobar toggle is then transfered to exit button" +msgstr "" + +msgid "When enabled, AIT data will be included in http streams. This allows a client receiver to use HbbTV." +msgstr "When enabled, AIT data will be included in http streams. This allows a client receiver to use HbbTV." + +msgid "When enabled, ECM data will be included in http streams. This allows a client receiver to do the descrambling." +msgstr "When enabled, ECM data will be included in http streams. This allows a client receiver to do the descrambling." + +msgid "When enabled, EIT data will be included in http streams. This allows a client receiver to show EPG." +msgstr "When enabled, EIT data will be included in http streams. This allows a client receiver to show EPG." + +msgid "When enabled, a popup message will be shown when a movie has finished and the next one will start." +msgstr "When enabled, a popup message will be shown when a movie has finished and the next one will start." + +msgid "When enabled, a popup message will be shown when a recording starts." +msgstr "When enabled, a popup message will be shown when a recording starts." + +msgid "When enabled, a radio background image will be visible while listening to a radio channel." +msgstr "When enabled, a radio background image will be visible while listening to a radio channel." + +msgid "When enabled, a recording is allowed to interrupt live tv, when there are no free tuners." +msgstr "When enabled, a recording is allowed to interrupt live tv, when there are no free tuners." + +msgid "When enabled, a warning will be displayed and the user will get an option to stop or to continue the timeshift." +msgstr "" + +msgid "When enabled, authentication is required to watch http streams." +msgstr "" + +msgid "When enabled, channel numbering will start at '1' for each bouquet." +msgstr "When enabled, channel numbering will start at '1' for each bouquet." + +msgid "When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen." +msgstr "When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen." + +msgid "When enabled, continue to the next bouquet when the last channel of the current bouquet is reached while changing channels." +msgstr "When enabled, continue to the next bouquet when the last channel of the current bouquet is reached while changing channels." + +msgid "When enabled, deleted recordings are moved to the trash can, instead of being deleted immediately." +msgstr "When enabled, deleted recordings are moved to the trash can, instead of being deleted immediately." + +msgid "When enabled, display the EIT now/next eventdata in infobar. When disabled, display now/next eventdata from the EPG cache instead." +msgstr "When enabled, display the EIT now/next eventdata in infobar. When disabled, display now/next eventdata from the EPG cache instead." + +msgid "When enabled, encryption info will be shown in the infobar (when supported by the skin)." +msgstr "When enabled, encryption info will be shown in the infobar (when supported by the skin)." + +msgid "When enabled, error messages related to the Common Interface module will not be shown." +msgstr "When enabled, error messages related to the Common Interface module will not be shown." + +msgid "When enabled, error messages related to zapping will not be shown." +msgstr "When enabled, error messages related to zapping will not be shown." + +msgid "When enabled, external subtitles will be always turned on for playback movie." +msgstr "" + +msgid "When enabled, graphical DVB subtitles are preferred over teletext subtitles, when both types are available." +msgstr "When enabled, graphical DVB subtitles are preferred over teletext subtitles, when both types are available." + +msgid "When enabled, graphical DVB subtitles will be centered horizontally." +msgstr "When enabled, graphical DVB subtitles will be centered horizontally." + +msgid "When enabled, graphical DVB subtitles will be displayed at their original position." +msgstr "When enabled, graphical DVB subtitles will be displayed at their original position." + +msgid "When enabled, graphical DVB subtitles will be displayed in yellow, instead of the original color." +msgstr "When enabled, graphical DVB subtitles will be displayed in yellow, instead of the original color." + +msgid "When enabled, http streams are descrambled on the server side. The (remote) client receiver does not have to do descrambling." +msgstr "When enabled, http streams are descrambled on the server side. The (remote) client receiver does not have to do descrambling." + +msgid "When enabled, it is possible to leave the movieplayer with exit." +msgstr "" + +msgid "When enabled, measure power consumption to detect when the rotor stops turning (when supported by the tuner)." +msgstr "When enabled, measure power consumption to detect when the rotor stops turning (when supported by the tuner)." + +msgid "When enabled, number markers will be hiden." +msgstr "" + +msgid "When enabled, services may be grouped in multiple bouquets." +msgstr "When enabled, services may be grouped in multiple bouquets." + +msgid "When enabled, show channel numbers in the channel selection screen." +msgstr "When enabled, show channel numbers in the channel selection screen." + +msgid "When enabled, subtitles for the hearing impaired can be used." +msgstr "When enabled, subtitles for the hearing impaired can be used." + +msgid "When enabled, subtitles for the hearing impaired will be preferred over normal subtitles, when both types are available." +msgstr "When enabled, subtitles for the hearing impaired will be preferred over normal subtitles, when both types are available." + +msgid "When enabled, teletext pages will be cached, allowing faster access." +msgstr "When enabled, teletext pages will be cached, allowing faster access." + +msgid "When enabled, teletext subtitles will be displayed at their original position." +msgstr "When enabled, teletext subtitles will be displayed at their original position." + +msgid "When enabled, the VCR scart option will be shown on the main menu" +msgstr "" + +msgid "When enabled, the channel selection list will be hidden while listening to a radio channel" +msgstr "When enabled, the channel selection list will be hidden while listening to a radio channel" + +msgid "When enabled, the infobar will be displayed when a new event starts." +msgstr "When enabled, the infobar will be displayed when a new event starts." + +msgid "When enabled, the infobar will be displayed when changing channels." +msgstr "When enabled, the infobar will be displayed when changing channels." + +msgid "When enabled, the infobar will be displayed when skipping forwards/backwards during media playback." +msgstr "When enabled, the infobar will be displayed when skipping forwards/backwards during media playback." + +msgid "When enabled, the lenght of each recording will be shown in the movielist (this might cause some additional loading time)." +msgstr "When enabled, the lenght of each recording will be shown in the movielist (this might cause some additional loading time)." + +msgid "When enabled, the original line breaks will be removed from the teletext subtitles." +msgstr "When enabled, the original line breaks will be removed from the teletext subtitles." + +msgid "When enabled, the receiver will automatically use the audio track which you selected before." +msgstr "When enabled, the receiver will automatically use the audio track which you selected before." + +msgid "When enabled, the receiver will automatically use the subtitles which you selected before." +msgstr "When enabled, the receiver will automatically use the subtitles which you selected before." + +msgid "When enabled, the receiver will no longer monitor the tuned transponder for possible changes. Do not use this option unless you know what you are doing." +msgstr "When enabled, the receiver will no longer monitor the tuned transponder for possible changes. Do not use this option unless you know what you are doing." + +msgid "When enabled, the receiver will select an AC3 track (when available)." +msgstr "When enabled, the receiver will select an AC3 track (when available)." + +msgid "When enabled, the receiver will select an AC3+ track (when available)." +msgstr "" + +msgid "When enabled, timeshift starts automatically in background after specified time." +msgstr "" + +msgid "When enabled, use DHCP for the IP configuration." +msgstr "When enabled, use DHCP for the IP configuration." + +#, fuzzy +msgid "When enabled, your receiver will detect activity on the VCR SCART input." +msgstr "When enabled, the receiver will select an AC3 track (when available)." + +msgid "When nonzero, a recording will start earlier than the starting time indicated by the EPG." +msgstr "When nonzero, a recording will start earlier than the starting time indicated by the EPG." + +msgid "When nonzero, a recording will stop later than the ending time indicated by the EPG." +msgstr "When nonzero, a recording will stop later than the ending time indicated by the EPG." + +msgid "When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture." +msgstr "When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture." + +msgid "When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture." +msgstr "When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture." + +msgid "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" +msgstr "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" + +msgid "Where do you want to backup your settings?" +msgstr "Where do you want to backup your settings?" + +msgid "Where to save temporary timeshift recordings?" +msgstr "Where to save temporary timeshift recordings?" + +msgid "Wireless LAN" +msgstr "Wireless LAN" + +msgid "Wireless network" +msgstr "Wireless network" + +msgid "Wireless network configuration..." +msgstr "Wireless network configuration..." + +msgid "Wireless network connection setup" +msgstr "Wireless network connection setup" + +msgid "Wireless network connection setup." +msgstr "Wireless network connection setup." + +msgid "Wireless network state" +msgstr "Wireless network state" + +msgid "With popup" +msgstr "" + +msgid "Without popup" +msgstr "" + +msgid "Would you like to install a softcam?" +msgstr "Would you like to install a softcam?" + +msgid "Write error while recording. Disk full?\n" +msgstr "Write error while recording. Disk full?\n" + +msgid "Write failed!" +msgstr "Write failed!" + +msgid "YPbPr" +msgstr "YPbPr" + +msgid "Year" +msgstr "Year" + +msgid "Yellow DVB subtitles" +msgstr "Yellow DVB subtitles" + +msgid "Yes" +msgstr "Yes" + +msgid "Yes and save" +msgstr "" + +msgid "Yes and save in movie dir" +msgstr "" + +msgid "Yes to all" +msgstr "Yes to all" + +msgid "Yes, always" +msgstr "Yes, always" + +msgid "Yes, and delete this movie" +msgstr "Yes, and delete this movie" + +msgid "Yes, backup my settings!" +msgstr "Yes, backup my settings!" + +msgid "Yes, delete this movie and return to movie list" +msgstr "" + +msgid "Yes, do a manual scan now" +msgstr "Yes, do a manual scan now" + +msgid "Yes, do an automatic scan now" +msgstr "Yes, do an automatic scan now" + +msgid "Yes, do another manual scan now" +msgstr "Yes, do another manual scan now" + +msgid "Yes, perform a shutdown now." +msgstr "Yes, perform a shutdown now." + +msgid "Yes, restore the settings now" +msgstr "Yes, restore the settings now" + +msgid "Yes, returning to movie list" +msgstr "Yes, returning to movie list" + +msgid "Yesterday" +msgstr "Yesterday" + +#, python-format +msgid "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" +msgstr "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" + +msgid "You can cancel the installation." +msgstr "You can cancel the installation." + +msgid "You can cancel the removal." +msgstr "You can cancel the removal." + +msgid "You can continue watching TV etc. while this is running." +msgstr "You can continue watching TV etc. while this is running." + +msgid "You can install this plugin." +msgstr "You can install this plugin." + +msgid "You can only burn receiver recordings!" +msgstr "You can only burn receiver recordings!" + +msgid "You can remove this plugin." +msgstr "You can remove this plugin." + +msgid "You cannot delete this!" +msgstr "You cannot delete this!" + +msgid "You didn't select a channel to record from." +msgstr "You didn't select a channel to record from." + +msgid "You have chosen to backup your settings. Please press OK to start the backup now." +msgstr "You have chosen to backup your settings. Please press OK to start the backup now." + +msgid "You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased." +msgstr "You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased." + +msgid "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." +msgstr "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." + +#, python-format +msgid "You have to wait %s!" +msgstr "You have to wait %s!" + +msgid "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." +msgstr "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." + +msgid "You system does not support ext4" +msgstr "You system does not support ext4" + +msgid "Your backup succeeded. We will now continue to explain the further upgrade process." +msgstr "Your backup succeeded. We will now continue to explain the further upgrade process." + +msgid "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" +msgstr "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" + +msgid "Your current collection will get lost!" +msgstr "Your current collection will get lost!" + +msgid "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." +msgstr "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." + +msgid "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" + +msgid "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." +msgstr "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." + +#, python-format +msgid "Your internet connection is working (ip: %s)" +msgstr "Your internet connection is working (ip: %s)" + +msgid "Your network configuration has been activated." +msgstr "Your network configuration has been activated." + +msgid "Your receiver does not have an internet connection" +msgstr "Your receiver does not have an internet connection" + +msgid "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" +msgstr "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" + +msgid "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." + +msgid "Your receiver is rebooting" +msgstr "Your receiver is rebooting" + +msgid "Your receiver is shutting down" +msgstr "Your receiver is shutting down" + +msgid "Your receiver is shutting down. Please stand by..." +msgstr "Your receiver is shutting down. Please stand by..." + +msgid "Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver." +msgstr "Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver." + +msgid "Your receiver will got to stand by due to the sleeptimer." +msgstr "" + +msgid "Your receiver will got to standby due to inactivity." +msgstr "" + +msgid "Your receiver will restart after pressing OK on your remote control." +msgstr "Your receiver will restart after pressing OK on your remote control." + +msgid "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." +msgstr "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." + +msgid "Zap" +msgstr "Zap" + +msgid "Zap back to previously tuned service?" +msgstr "Zap back to previously tuned service?" + +msgid "Zap back to service before positioner setup?" +msgstr "Zap back to service before positioner setup?" + +msgid "Zap back to service before tuner setup?" +msgstr "Zap back to service before tuner setup?" + +msgid "Zap focus to Picture in Picture" +msgstr "Zap focus to Picture in Picture" + +msgid "Zap focus to main screen" +msgstr "Zap focus to main screen" + +msgid "Zap mode" +msgstr "Zap mode" + +msgid "Zap to selected channel" +msgstr "Zap to selected channel" + +msgid "Zap to selected channel, or show detailed event info (depends on configuration)" +msgstr "Zap to selected channel, or show detailed event info (depends on configuration)" + +msgid "[alternative edit]" +msgstr "[alternative edit]" + +msgid "[bouquet edit]" +msgstr "[bouquet edit]" + +msgid "[favourite edit]" +msgstr "[favourite edit]" + +msgid "[move mode]" +msgstr "[move mode]" + +msgid "a gui to assign services/providers to common interface modules" +msgstr "a gui to assign services/providers to common interface modules" + +msgid "a gui to assign services/providers/caids to common interface modules" +msgstr "a gui to assign services/providers/caids to common interface modules" + +msgid "abort alternatives edit" +msgstr "abort alternatives edit" + +msgid "abort bouquet edit" +msgstr "abort bouquet edit" + +msgid "abort favourites edit" +msgstr "abort favourites edit" + +msgid "about to start" +msgstr "about to start" + +msgid "activate network adapter configuration" +msgstr "activate network adapter configuration" + +msgid "add alternatives" +msgstr "add alternatives" + +msgid "add bookmark" +msgstr "add bookmark" + +msgid "add bouquet" +msgstr "add bouquet" + +msgid "add marker" +msgstr "add marker" + +msgid "add service to bouquet" +msgstr "add service to bouquet" + +msgid "add service to favourites" +msgstr "add service to favourites" + +msgid "add to parental protection" +msgstr "add to parental protection" + +msgid "adult movie/drama" +msgstr "adult movie/drama" + +msgid "advanced" +msgstr "advanced" + +msgid "adventure/western/war" +msgstr "adventure/western/war" + +msgid "advertisement/shopping" +msgstr "advertisement/shopping" + +msgid "after " +msgstr "" + +msgid "alphabetic" +msgstr "alphabetic" + +msgid "alphabetic reverse" +msgstr "alphabetic reverse" + +msgid "alternative" +msgstr "" + +msgid "always" +msgstr "" + +msgid "and select next channel" +msgstr "" + +msgid "and select previous channel" +msgstr "" + +msgid "arts/culture (without music, general)" +msgstr "arts/culture (without music, general)" + +msgid "arts/culture magazine" +msgstr "arts/culture magazine" + +msgid "athletics" +msgstr "athletics" + +msgid "audio tracks" +msgstr "audio tracks" + +msgid "auto" +msgstr "auto" + +msgid "automatic" +msgstr "automatic" + +msgid "back" +msgstr "back" + +msgid "background image" +msgstr "background image" + +msgid "ballet" +msgstr "ballet" + +#, python-format +msgid "bc%s" +msgstr "bc%s" + +msgid "better" +msgstr "better" + +msgid "black" +msgstr "black" + +msgid "black & white" +msgstr "black & white" + +msgid "blacklist" +msgstr "blacklist" + +msgid "blue" +msgstr "blue" + +msgid "broadcasting/press" +msgstr "broadcasting/press" + +msgid "by date" +msgstr "by date" + +msgid "cartoon/puppets" +msgstr "cartoon/puppets" + +msgid "center" +msgstr "center" + +msgid "centered" +msgstr "" + +msgid "centered, wrapped" +msgstr "" + +msgid "chapters" +msgstr "chapters" + +msgid "childrens's/youth program (general)" +msgstr "childrens's/youth program (general)" + +msgid "circular left" +msgstr "circular left" + +msgid "circular right" +msgstr "circular right" + +msgid "comedy" +msgstr "comedy" + +msgid "complex" +msgstr "complex" + +msgid "config menu" +msgstr "config menu" + +msgid "confirmed" +msgstr "confirmed" + +msgid "connected" +msgstr "connected" + +msgid "continue" +msgstr "continue" + +msgid "cooking" +msgstr "cooking" + +msgid "copy to bouquets" +msgstr "copy to bouquets" + +msgid "create directory" +msgstr "create directory" + +#, python-format +msgid "currently installed image: %s" +msgstr "currently installed image: %s" + +msgid "daily" +msgstr "daily" + +msgid "day" +msgstr "day" + +msgid "default" +msgstr "default" + +msgid "delete cut" +msgstr "delete cut" + +msgid "delete..." +msgstr "" + +msgid "descramble and record ecm" +msgstr "descramble and record ecm" + +msgid "detective/thriller" +msgstr "detective/thriller" + +msgid "disable" +msgstr "disable" + +msgid "disable move mode" +msgstr "disable move mode" + +msgid "disabled" +msgstr "disabled" + +msgid "disconnected" +msgstr "disconnected" + +msgid "discussion/interview/debate" +msgstr "discussion/interview/debate" + +msgid "do nothing" +msgstr "do nothing" + +msgid "documentary" +msgstr "documentary" + +msgid "don't descramble, record ecm" +msgstr "don't descramble, record ecm" + +msgid "done!" +msgstr "done!" + +msgid "east" +msgstr "east" + +msgid "economics/social advisory" +msgstr "economics/social advisory" + +msgid "edit alternatives" +msgstr "edit alternatives" + +msgid "education/science/factual topics (general)" +msgstr "education/science/factual topics (general)" + +msgid "empty" +msgstr "empty" + +msgid "enable" +msgstr "enable" + +msgid "enable bouquet edit" +msgstr "enable bouquet edit" + +msgid "enable favourite edit" +msgstr "enable favourite edit" + +msgid "enable move mode" +msgstr "enable move mode" + +msgid "enabled" +msgstr "enabled" + +msgid "end alternatives edit" +msgstr "end alternatives edit" + +msgid "end bouquet edit" +msgstr "end bouquet edit" + +msgid "end cut here" +msgstr "end cut here" + +msgid "end favourites edit" +msgstr "end favourites edit" + +msgid "entertainment (10-16 year old)" +msgstr "entertainment (10-16 year old)" + +msgid "entertainment (6-14 year old)" +msgstr "entertainment (6-14 year old)" + +msgid "equal to" +msgstr "equal to" + +msgid "equestrian" +msgstr "equestrian" + +msgid "exit DVD player or return to file browser" +msgstr "exit DVD player or return to file browser" + +msgid "exit movielist" +msgstr "" + +msgid "exit network adapter configuration" +msgstr "exit network adapter configuration" + +msgid "exit networkadapter setup menu" +msgstr "exit networkadapter setup menu" + +msgid "experimental film/video" +msgstr "experimental film/video" + +msgid "false" +msgstr "false" + +msgid "fashion" +msgstr "fashion" + +msgid "fileformats (BMP, PNG, JPG, GIF)" +msgstr "fileformats (BMP, PNG, JPG, GIF)" + +msgid "filename" +msgstr "filename" + +msgid "film/cinema" +msgstr "film/cinema" + +msgid "fine arts" +msgstr "fine arts" + +msgid "fine-tune your display" +msgstr "fine-tune your display" + +msgid "fitness & health" +msgstr "fitness & health" + +msgid "flat alphabetic" +msgstr "flat alphabetic" + +msgid "flat alphabetic reverse" +msgstr "flat alphabetic reverse" + +msgid "folk/traditional music" +msgstr "folk/traditional music" + +msgid "football/soccer" +msgstr "football/soccer" + +msgid "foreign countries/expeditions" +msgstr "foreign countries/expeditions" + +msgid "forward to the next chapter" +msgstr "forward to the next chapter" + +msgid "free" +msgstr "free" + +msgid "from" +msgstr "" + +msgid "further education" +msgstr "further education" + +msgid "game show/quiz/contest" +msgstr "game show/quiz/contest" + +msgid "gardening" +msgstr "gardening" + +msgid "go to deep standby" +msgstr "go to deep standby" + +msgid "go to standby" +msgstr "go to standby" + +msgid "grab this frame as bitmap" +msgstr "grab this frame as bitmap" + +msgid "green" +msgstr "green" + +msgid "handicraft" +msgstr "handicraft" + +msgid "height" +msgstr "height" + +msgid "help..." +msgstr "help..." + +msgid "horizontal" +msgstr "horizontal" + +msgid "information/education/school program" +msgstr "information/education/school program" + +msgid "init module" +msgstr "init module" + +msgid "init modules" +msgstr "init modules" + +msgid "insert mark here" +msgstr "insert mark here" + +msgid "invalid type" +msgstr "invalid type" + +msgid "jazz" +msgstr "jazz" + +msgid "jump back to the previous title" +msgstr "jump back to the previous title" + +msgid "jump forward to the next title" +msgstr "jump forward to the next title" + +msgid "languages" +msgstr "languages" + +msgid "leave movie player..." +msgstr "leave movie player..." + +msgid "left" +msgstr "left" + +msgid "left, wrapped" +msgstr "" + +msgid "leisure hobbies (general)" +msgstr "leisure hobbies (general)" + +msgid "length" +msgstr "length" + +msgid "limit ..., aborting !" +msgstr "limit ..., aborting !" + +msgid "list style compact" +msgstr "list style compact" + +msgid "list style compact with description" +msgstr "list style compact with description" + +msgid "list style default" +msgstr "list style default" + +msgid "list style single line" +msgstr "list style single line" + +msgid "literature" +msgstr "literature" + +msgid "live broadcast" +msgstr "live broadcast" + +msgid "locked" +msgstr "locked" + +msgid "loopthrough to" +msgstr "loopthrough to" + +msgid "magazines/reports/documentary" +msgstr "magazines/reports/documentary" + +msgid "manual" +msgstr "manual" + +msgid "martial sports" +msgstr "martial sports" + +msgid "medicine/physiology/psychology" +msgstr "medicine/physiology/psychology" + +msgid "menu" +msgstr "menu" + +msgid "mins" +msgstr "mins" + +msgid "minutes" +msgstr "minutes" + +msgid "month" +msgstr "month" + +msgid "motor sport" +msgstr "motor sport" + +msgid "motoring" +msgstr "motoring" + +msgid "move down to last entry" +msgstr "move down to last entry" + +msgid "move down to next entry" +msgstr "move down to next entry" + +msgid "move up to first entry" +msgstr "move up to first entry" + +msgid "move up to previous entry" +msgstr "move up to previous entry" + +msgid "movie/drama (general)" +msgstr "movie/drama (general)" + +msgid "multinorm" +msgstr "multinorm" + +msgid "music/ballet/dance (general)" +msgstr "music/ballet/dance (general)" + +msgid "musical/opera" +msgstr "musical/opera" + +msgid "nature/animals/environment" +msgstr "nature/animals/environment" + +msgid "never" +msgstr "never" + +msgid "new media" +msgstr "new media" + +msgid "news magazine" +msgstr "news magazine" + +msgid "news/current affairs (general)" +msgstr "news/current affairs (general)" + +msgid "news/weather report" +msgstr "news/weather report" + +msgid "no" +msgstr "no" + +msgid "no CAId selected" +msgstr "no CAId selected" + +msgid "no CI slots found" +msgstr "no CI slots found" + +msgid "no module found" +msgstr "no module found" + +msgid "no storage devices found" +msgstr "no storage devices found" + +msgid "none" +msgstr "none" + +msgid "normal" +msgstr "normal" + +msgid "not configured" +msgstr "not configured" + +msgid "not locked" +msgstr "not locked" + +msgid "not supported" +msgstr "not supported" + +msgid "not used" +msgstr "not used" + +msgid "nothing connected" +msgstr "nothing connected" + +msgid "of a DUAL layer medium used." +msgstr "of a DUAL layer medium used." + +msgid "of a SINGLE layer medium used." +msgstr "of a SINGLE layer medium used." + +msgid "off" +msgstr "off" + +msgid "offset is" +msgstr "offset is" + +msgid "on" +msgstr "on" + +msgid "on READ ONLY medium." +msgstr "on READ ONLY medium." + +msgid "on end of movie" +msgstr "" + +msgid "once" +msgstr "once" + +msgid "only from deep standby" +msgstr "" + +msgid "only from standby" +msgstr "" + +msgid "open EPG..." +msgstr "" + +msgid "open Info..." +msgstr "" + +msgid "open nameserver configuration" +msgstr "open nameserver configuration" + +msgid "original" +msgstr "original" + +msgid "original language" +msgstr "original language" + +msgid "pass" +msgstr "pass" + +msgid "performing arts" +msgstr "performing arts" + +msgid "play as picture in picture" +msgstr "play as picture in picture" + +msgid "play in mainwindow" +msgstr "play in mainwindow" + +msgid "please press OK when ready" +msgstr "please press OK when ready" + +msgid "please wait, loading picture..." +msgstr "please wait, loading picture..." + +msgid "popular culture/traditional arts" +msgstr "popular culture/traditional arts" + +msgid "pre-school children's program" +msgstr "pre-school children's program" + +msgid "receiver software because updates are available." +msgstr "receiver software because updates are available." + +msgid "record" +msgstr "record" + +msgid "recording..." +msgstr "recording..." + +msgid "red" +msgstr "red" + +msgid "religion" +msgstr "religion" + +msgid "remarkable people" +msgstr "remarkable people" + +msgid "remove after this position" +msgstr "remove after this position" + +msgid "remove all alternatives" +msgstr "remove all alternatives" + +msgid "remove all new found flags" +msgstr "remove all new found flags" + +msgid "remove before this position" +msgstr "remove before this position" + +msgid "remove bookmark" +msgstr "remove bookmark" + +msgid "remove directory" +msgstr "remove directory" + +msgid "remove entry" +msgstr "remove entry" + +msgid "remove from parental protection" +msgstr "remove from parental protection" + +msgid "remove new found flag" +msgstr "remove new found flag" + +msgid "remove selected satellite" +msgstr "remove selected satellite" + +msgid "remove this mark" +msgstr "remove this mark" + +msgid "rename entry" +msgstr "" + +msgid "repeat playlist" +msgstr "repeat playlist" + +msgid "repeated" +msgstr "repeated" + +msgid "reverse by date" +msgstr "reverse by date" + +msgid "rewind to the previous chapter" +msgstr "rewind to the previous chapter" + +msgid "right" +msgstr "right" + +msgid "right, wrapped" +msgstr "" + +msgid "rock/pop" +msgstr "rock/pop" + +msgid "romance" +msgstr "romance" + +msgid "save last directory on exit" +msgstr "save last directory on exit" + +msgid "save playlist on exit" +msgstr "save playlist on exit" + +msgid "scan state" +msgstr "scan state" + +msgid "science fiction/fantasy/horror" +msgstr "science fiction/fantasy/horror" + +msgid "second cable of motorized LNB" +msgstr "second cable of motorized LNB" + +msgid "seconds" +msgstr "seconds" + +msgid "select" +msgstr "select" + +msgid "select CAId's" +msgstr "select CAId's" + +msgid "select EPG..." +msgstr "" + +msgid "select Info..." +msgstr "" + +msgid "select menu entry" +msgstr "select menu entry" + +msgid "select movie" +msgstr "" + +msgid "select the movie path" +msgstr "" + +msgid "serious music/classic music" +msgstr "serious music/classic music" + +msgid "serious/classical/religious/historical movie/drama" +msgstr "serious/classical/religious/historical movie/drama" + +msgid "service PIN" +msgstr "service PIN" + +msgid "set as startup service" +msgstr "set as startup service" + +msgid "setup PIN" +msgstr "setup PIN" + +msgid "show DVD main menu" +msgstr "show DVD main menu" + +msgid "show all tags" +msgstr "show all tags" + +msgid "show alternatives" +msgstr "show alternatives" + +msgid "show event details" +msgstr "show event details" + +msgid "show extended description" +msgstr "" + +msgid "show mediaplayer on mainmenu" +msgstr "show mediaplayer on mainmenu" + +msgid "show softwaremanager in setup menu" +msgstr "show softwaremanager in setup menu" + +msgid "show softwaremanager on blue button" +msgstr "show softwaremanager on blue button" + +msgid "show tag menu" +msgstr "" + +msgid "show transponder info" +msgstr "show transponder info" + +msgid "show/game show (general)" +msgstr "show/game show (general)" + +msgid "shuffle" +msgstr "shuffle" + +msgid "shut down" +msgstr "shut down" + +msgid "simple" +msgstr "simple" + +msgid "skip backward" +msgstr "skip backward" + +msgid "skip forward" +msgstr "skip forward" + +msgid "soap/melodram/folkloric" +msgstr "soap/melodram/folkloric" + +msgid "social/political issues/economics (general)" +msgstr "social/political issues/economics (general)" + +msgid "social/spiritual science" +msgstr "social/spiritual science" + +msgid "sorting of playlists" +msgstr "sorting of playlists" + +msgid "special characters" +msgstr "special characters" + +msgid "special events" +msgstr "special events" + +msgid "special format data DVD (HDTV compatible)" +msgstr "special format data DVD (HDTV compatible)" + +msgid "sports (general)" +msgstr "sports (general)" + +msgid "sports magazine" +msgstr "sports magazine" + +msgid "standard" +msgstr "standard" + +msgid "start cut here" +msgstr "start cut here" + +msgid "start directory" +msgstr "start directory" + +msgid "stepsize" +msgstr "stepsize" + +msgid "stereo" +msgstr "stereo" + +msgid "stop using as startup service" +msgstr "stop using as startup service" + +msgid "switch to bookmarks" +msgstr "switch to bookmarks" + +msgid "switch to filelist" +msgstr "switch to filelist" + +msgid "switch to the next angle" +msgstr "switch to the next angle" + +msgid "switch to the next audio track" +msgstr "switch to the next audio track" + +msgid "switch to the next subtitle language" +msgstr "switch to the next subtitle language" + +msgid "talk show" +msgstr "talk show" + +msgid "team sports" +msgstr "team sports" + +msgid "technology/natural science" +msgstr "technology/natural science" + +msgid "template file" +msgstr "template file" + +msgid "tennis/squash" +msgstr "tennis/squash" + +msgid "this recording" +msgstr "this recording" + +msgid "this service is protected by a parental control pin" +msgstr "this service is protected by a parental control pin" + +msgid "toggle time, chapter, audio, subtitle info" +msgstr "toggle time, chapter, audio, subtitle info" + +msgid "top" +msgstr "top" + +msgid "tourism/travel" +msgstr "tourism/travel" + +msgid "true" +msgstr "true" + +msgid "unavailable" +msgstr "unavailable" + +msgid "unconfirmed" +msgstr "unconfirmed" + +msgid "undefined" +msgstr "undefined" + +msgid "unknown" +msgstr "unknown" + +msgid "unknown service" +msgstr "unknown service" + +msgid "unpublished" +msgstr "unpublished" + +msgid "until standby/restart" +msgstr "until standby/restart" + +msgid "user defined" +msgstr "user defined" + +msgid "variety show" +msgstr "variety show" + +msgid "vertical" +msgstr "vertical" + +msgid "wait for ci..." +msgstr "wait for ci..." + +msgid "wait for mmi..." +msgstr "wait for mmi..." + +msgid "waiting" +msgstr "waiting" + +msgid "water sport" +msgstr "water sport" + +msgid "weekly" +msgstr "weekly" + +msgid "west" +msgstr "west" + +msgid "when PiPzap enabled zap channel down..." +msgstr "" + +msgid "when PiPzap enabled zap channel up..." +msgstr "" + +msgid "white" +msgstr "white" + +msgid "whitelist" +msgstr "whitelist" + +msgid "width" +msgstr "width" + +msgid "winter sport" +msgstr "winter sport" + +msgid "wireless network interface" +msgstr "wireless network interface" + +#, python-format +msgid "with %d error" +msgid_plural "with %d errors" +msgstr[0] "" +msgstr[1] "" + +msgid "working" +msgstr "working" + +msgid "yellow" +msgstr "yellow" + +msgid "yes" +msgstr "yes" + +msgid "yes (keep feeds)" +msgstr "yes (keep feeds)" + +msgid "zap" +msgstr "zap" + +msgid "zap and record" +msgstr "" + +msgid "zapped" +msgstr "zapped" + +#~ msgid "A demo plugin for TPM usage." +#~ msgstr "A demo plugin for TPM usage." + +#~ msgid "AA" +#~ msgstr "AA" + +#~ msgid "AB" +#~ msgstr "AB" + +#~ msgid "AC3 downmix" +#~ msgstr "AC3 downmix" + +#~ msgid "Action:" +#~ msgstr "Eylem:" + +#~ msgid "Activate PiP" +#~ msgstr "Aktif bike" + +#~ msgid "Add/remove timer for current event" +#~ msgstr "Add/remove timer for current event" + +#~ msgid "Adjust HDMI CEC settings" +#~ msgstr "Adjust HDMI CEC settings" + +#~ msgid "All satellites" +#~ msgstr "Hemu satellites" + +#~ msgid "BA" +#~ msgstr "BA" + +#~ msgid "BB" +#~ msgstr "BB" + +#~ msgid "Behavior of 'pause' when paused" +#~ msgstr "Behavior of 'pause' when paused" + +#~ msgid "Committed DiSEqC command" +#~ msgstr "Qomuta Disegi" + +#~ msgid "Configure the behavior of the 'pause' key when movie playback is already paused." +#~ msgstr "Configure the behavior of the 'pause' key when movie playback is already paused." + +#~ msgid "Confirm shutdown:" +#~ msgstr "Confirm shutdown:" + +#~ msgid "DTS downmix" +#~ msgstr "DTS downmix" + +#~ msgid "DiSEqC repeats" +#~ msgstr "DiSEqC repeats" + +#~ msgid "Dish" +#~ msgstr "Dish" + +#~ msgid "Enable timer" +#~ msgstr "Enable timer" + +#~ msgid "General AC3 delay (ms)" +#~ msgstr "General AC3 delay (ms)" + +#~ msgid "General PCM delay (ms)" +#~ msgstr "General PCM delay (ms)" + +#~ msgid "Goto specific data/time" +#~ msgstr "Goto specific data/time" + +#~ msgid "No sat tuner found!" +#~ msgstr "No sat tuner found!" + +#~ msgid "No satellite frontend found!!" +#~ msgstr "No satellite frontend found!!" + +#~ msgid "No, but restart from beginning" +#~ msgstr "No, but restart from beginning" + +#~ msgid "Open service list and select next channel" +#~ msgstr "Open service list and select next channel" + +#~ msgid "Open service list and select previous channel" +#~ msgstr "Open service list and select previous channel" + +#~ msgid "Press '0' to toggle internal/external PiP." +#~ msgstr "Press '0' to toggle internal/external PiP." + +#~ msgid "Remove timer" +#~ msgstr "Remove timer" + +#~ msgid "Send DiSEqC" +#~ msgstr "Send DiSEqC" + +#~ msgid "Shutdown receiver after" +#~ msgstr "Shutdown receiver after" + +#~ msgid "Sleep timer action:" +#~ msgstr "Sleep timer action:" + +#~ msgid "Standby / Restart" +#~ msgstr "Standby / Restart" + +#~ msgid "Switch next channel" +#~ msgstr "Switch next channel" + +#~ msgid "TV system" +#~ msgstr "TV system" + +#~ msgid "Timer status:" +#~ msgstr "Timer status:" + +#~ msgid "Tuning step size" +#~ msgstr "Tuning step size" + +#~ msgid "Uncommitted DiSEqC command" +#~ msgstr "Uncommitted DiSEqC command" + +#~ msgid "Use time of currently running service" +#~ msgstr "Use time of currently running service" + +#~ msgid "When enabled, external subtitles (in media files) will be displayed in yellow, instead of the original color." +#~ msgstr "When enabled, external subtitles (in media files) will be displayed in yellow, instead of the original color." + +#~ msgid "When enabled, your TV will automatically select the SCART input when you switch on your receiver." +#~ msgstr "When enabled, your TV will automatically select the SCART input when you switch on your receiver." + +#~ msgid "Yellow external subtitles" +#~ msgstr "Yellow external subtitles" + +#~ msgid "Zap back to service before satfinder?" +#~ msgstr "Zap back to service before satfinder?" + +#~ msgid "dreambox advanced remote control (native)" +#~ msgstr "dreambox advanced remote control (native)" + +#~ msgid "dreambox front panel" +#~ msgstr "dreambox front panel" + +#~ msgid "dreambox ir keyboard" +#~ msgstr "dreambox ir keyboard" + +#~ msgid "dreambox ir mouse" +#~ msgstr "dreambox ir mouse" + +#~ msgid "dreambox remote control (native)" +#~ msgstr "dreambox remote control (native)" + +#~ msgid "play from next mark or playlist entry" +#~ msgstr "play from next mark or playlist entry" + +#~ msgid "play from previous mark or playlist entry" +#~ msgstr "play from previous mark or playlist entry" + +#~ msgid "scan done!" +#~ msgstr "scan done!" + +#~ msgid "scan in progress - %d%% done!" +#~ msgstr "scan in progress - %d%% done!" + +#~ msgid "shutdown" +#~ msgstr "shutdown" + +#~ msgid "standby" +#~ msgstr "standby" + +#~ msgid "tuner is not supported" +#~ msgstr "tuner is not supported" diff --git a/po/lt.po b/po/lt.po new file mode 100644 index 0000000..fa12afb --- /dev/null +++ b/po/lt.po @@ -0,0 +1,8337 @@ +# Copyright (C) 2005 THE tuxbox-enigma'S COPYRIGHT HOLDER +# This file is distributed under the same license as the tuxbox-enigma package. +# Automatically generated, 2005. +msgid "" +msgstr "" +"Project-Id-Version: tuxbox-enigma 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-07-21 19:08+0200\n" +"PO-Revision-Date: 2010-04-03 17:28+0200\n" +"Last-Translator: Audronis Grincevicius <audrgrin@takas.lt>\n" +"Language-Team: \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Poedit-SourceCharset: utf-8\n" + +msgid "" +"\n" +"Advanced options and settings." +msgstr "" +"\n" +"Išplėstiniai pasirinkimai ir nustatymai." + +msgid "" +"\n" +"After pressing OK, please wait!" +msgstr "" +"\n" +"Paspaudus OK, prašome laukti!" + +msgid "" +"\n" +"Backup your receiver settings." +msgstr "" + +msgid "" +"\n" +"Edit the upgrade source address." +msgstr "" +"\n" +"Redaguoti atnaujinimo šaltinio adresus." + +msgid "" +"\n" +"Manage extensions or plugins for your receiver" +msgstr "" + +msgid "" +"\n" +"Online update of your receiver software." +msgstr "" + +msgid "" +"\n" +"Press OK on your remote control to continue." +msgstr "" +"\n" +"Spauskite OK ant jūsų distancinio valdymo pulto, kad tęsti." + +msgid "" +"\n" +"Restore your backups by date." +msgstr "" +"\n" +"Atkurti jūsų atsarginę kopiją pagal datą." + +msgid "" +"\n" +"Restore your receiver settings." +msgstr "" + +msgid "" +"\n" +"Restore your receiver with a new firmware." +msgstr "" + +msgid "" +"\n" +"Scan for local extensions and install them." +msgstr "" +"\n" +"Skanuoti vietinius paketus ir įdiegti juos." + +msgid "" +"\n" +"Select your backup device.\n" +"Current device: " +msgstr "" +"\n" +"Pasirinkite jūsų atsarginės kopijos įrenginį.\n" +"Dabartinis įrenginys: " + +msgid "" +"\n" +"View, install and remove available or installed packages." +msgstr "" +"\n" +"Peržiūrėkite, įdiekite ir pašalinkite esamus arba įdiegtus paketus." + +msgid " (PiP)" +msgstr "" + +msgid " (Radio)" +msgstr "" + +msgid " (TV)" +msgstr "" + +msgid " (disabled)" +msgstr "" + +msgid " (higher than any auto)" +msgstr "" + +msgid " (higher than rotor any auto)" +msgstr "" + +msgid " (lower than any auto)" +msgstr "" + +msgid " extensions." +msgstr " išplėtimai." + +msgid " ms" +msgstr " ms" + +msgid " packages selected." +msgstr " paketai išsirinkti." + +msgid " updates available." +msgstr " pasiekiami atnaujinimai." + +#. TRANSLATORS: short time representation hour:minute +#, python-format +msgid "%2d:%02d" +msgstr "" + +#. TRANSLATORS: full time representation hour:minute:seconds +#, python-format +msgid "%2d:%02d:%02d" +msgstr "" + +msgid "%A %d %B" +msgstr "" + +#. TRANSLATORS: long date representations dayname daynum monthname in strftime() format! See 'man strftime' +msgid "%A %e %B" +msgstr "" + +#. TRANSLATORS: full date representation dayname daynum monthname year in strftime() format! See 'man strftime' +msgid "%A %e %B %Y" +msgstr "" + +msgid "%H:%M" +msgstr "%H:%M" + +#. TRANSLATORS: short date representation short dayname daynum short monthname in strftime() format! See 'man strftime' +msgid "%a %e/%m" +msgstr "" + +#. TRANSLATORS: long date representation short dayname daynum short monthname hour:minute in strftime() format! See 'man strftime' +msgid "%a %e/%m %-H:%M" +msgstr "" + +#. TRANSLATORS: Intermediate scanning result, '%d' channel(s) have been found so far +#, fuzzy, python-format +msgid "%d channel found" +msgid_plural "%d channels found" +msgstr[0] "%d kanalai surasti!" +msgstr[1] "%d kanalai surasti!" + +#, python-format +msgid "%d file" +msgid_plural "%d files" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "" +msgstr[1] "" + +#, fuzzy, python-format +msgid "%d job is running in the background!" +msgid_plural "%d jobs are running in the background!" +msgstr[0] "%d darbas yra veikiantis fone!" +msgstr[1] "%d darbas yra veikiantis fone!" + +#, python-format +msgid "%d min" +msgstr "%d min" + +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d minutes" +msgstr "" + +#, python-format +msgid "%d pixel wide" +msgid_plural "%d pixels wide" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "" +msgstr[1] "" + +#, fuzzy, python-format +msgid "%d subdirectory" +msgid_plural "%d subdirectories" +msgstr[0] "/var direktoriją" +msgstr[1] "/var direktoriją" + +#, fuzzy, python-format +msgid "%d wireless network found!" +msgid_plural "%d wireless networks found!" +msgstr[0] "rastas 1 belaidis tinklas!" +msgstr[1] "rastas 1 belaidis tinklas!" + +msgid "%d-%b-%Y %-H:%M" +msgstr "" + +msgid "%d-%m" +msgstr "" + +msgid "%d.%B %Y" +msgstr "%d.%B %Y" + +#. TRANSLATORS: VFD hour:minute daynum short monthname in strftime() format! See 'man strftime' +msgid "%k:%M %e/%m" +msgstr "" + +#, fuzzy, python-format +msgid "%s %s free disk space" +msgstr "laisvos vietos diske" + +#, python-format +msgid "%s (%s)\n" +msgstr "%s (%s)\n" + +#. TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. +#, python-format +msgid "%s is no longer used. Should it be deleted?" +msgstr "" + +#, fuzzy, python-format +msgid "%s updated package available" +msgid_plural "%s updated packages available" +msgstr[0] " pasiekiami atnaujinimai." +msgstr[1] " pasiekiami atnaujinimai." + +#, python-format +msgid "%s%d min" +msgstr "" + +#, python-format +msgid "%s/%s: %s" +msgstr "" + +msgid "(ZAP)" +msgstr "(JUNGTI)" + +msgid "(empty)" +msgstr "(laisva)" + +msgid "(show optional DVD audio menu)" +msgstr "(rodyti pasirenkamą DVD garso meniu)" + +msgid "* Only available if more than one interface is active." +msgstr "*Pasiekiamas tiktai, jei daugiau kaip viena sąsaja yra aktyvi." + +msgid "/s" +msgstr "" + +msgid "0" +msgstr "0" + +msgid "1" +msgstr "1" + +msgid "1.0" +msgstr "1.0" + +msgid "1.1" +msgstr "1.1" + +msgid "1.2" +msgstr "1.2" + +msgid "12V output" +msgstr "12V išėjimas" + +msgid "13 V" +msgstr "13 V" + +msgid "16:10" +msgstr "16:10" + +msgid "16:10 Letterbox" +msgstr "16:10 Letterbox" + +msgid "16:10 PanScan" +msgstr "16:10 PanScan" + +msgid "16:9" +msgstr "16:9" + +msgid "16:9 Letterbox" +msgstr "16:9 Letterbox" + +msgid "16:9 always" +msgstr "16:9 visada" + +msgid "18 V" +msgstr "18 V" + +msgid "2" +msgstr "2" + +msgid "23.976" +msgstr "" + +msgid "24" +msgstr "" + +msgid "25" +msgstr "" + +msgid "29.97" +msgstr "" + +msgid "3" +msgstr "3" + +msgid "30" +msgstr "" + +msgid "3d mode" +msgstr "" + +msgid "4" +msgstr "4" + +msgid "4:3" +msgstr "4:3" + +msgid "4:3 Letterbox" +msgstr "4:3 Letterbox" + +msgid "4:3 PanScan" +msgstr "4:3 PanScan" + +msgid "5" +msgstr "5" + +msgid "6" +msgstr "6" + +msgid "7" +msgstr "7" + +msgid "8" +msgstr "8" + +msgid "9" +msgstr "9" + +#, python-format +msgid ": %s" +msgstr "" + +msgid "<Current movielist location>" +msgstr "<Dabartinė filmų sąrašo vieta>" + +msgid "<Default movie location>" +msgstr "<Numatyta filmų vieta>" + +msgid "<Last timer location>" +msgstr "<Paskutinio laikmačio vieta>" + +msgid "<unknown>" +msgstr "<nežinomas>" + +msgid "??" +msgstr "??" + +msgid "A" +msgstr "A" + +#, fuzzy, python-format +msgid "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" +msgstr "" +"Konfigūracijos failas (%s) bus pakeistas pradedant nuo įdiegimo.\n" +"Ar norite išsaugoti savo versiją?" + +#, python-format +msgid "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" +msgstr "" +"Konfigūracijos failas (%s) bus pakeistas pradedant nuo įdiegimo.\n" +"Ar norite išsaugoti savo versiją?" + +msgid "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" + +msgid "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" + +msgid "A graphical EPG for all services of an specific bouquet" +msgstr "Grafinis EPG visiems kanalams iš specifinio paketo" + +#, python-format +msgid "" +"A record has been started:\n" +"%s" +msgstr "" +"Įrašymas prasidės:\n" +"%s" + +msgid "" +"A recording is currently running.\n" +"What do you want to do?" +msgstr "" +"Vyksta įrašymas.\n" +"Ką Jūs norite padaryti?" + +msgid "A recording is currently running. Please stop the recording before trying to configure the positioner." +msgstr "Vyksta įrašymas. Prašome sustabdyti įrašymą prieš pozicionieriaus konfigūravimą." + +msgid "A recording is currently running. Please stop the recording before trying to scan." +msgstr "" + +msgid "A recording is currently running. Please stop the recording before trying to start the satfinder." +msgstr "Vyksta įrašymas. Prašome sustabdyti įrašymą prieš pozicionieriaus konfigūravimą." + +#, python-format +msgid "A required tool (%s) was not found." +msgstr "Reikalingas įrankis (%s) nebuvo surastas." + +msgid "A search for available updates is currently in progress." +msgstr "Vyksta dabar pasiekiamų atnaujinimų paieška." + +msgid "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" +msgstr "" +"Rasta antra sukonfigūruotas sąsaja.\n" +"\n" +"Jūs norite išjungti antrą tinklo sąsają?" + +msgid "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" + +msgid "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" + +msgid "A small overview of the available icon states and actions." +msgstr "Čia yra maža turimų ikonų peržiūra." + +msgid "" +"A timer failed to record!\n" +"Disable TV and try again?\n" +msgstr "" +"Laikmatis nutraukė įrašymą!\n" +"Išjungti TV ir pakartoti iš pradžių?\n" + +#, fuzzy +msgid "A/V settings" +msgstr "Garso / vaizdo nustatymai" + +msgid "AC3/DTS downmix" +msgstr "" + +msgid "Abort" +msgstr "Nutraukti" + +msgid "About" +msgstr "Apie" + +msgid "About..." +msgstr "Apie..." + +msgid "Accesspoint:" +msgstr "Prieigos taškas:" + +msgid "Action on long powerbutton press" +msgstr "Veiksmas, ilgai spaudžiant įtampos mygtuką" + +msgid "Action on short powerbutton press" +msgstr "Veiksmas, trumpai spaudžiant įtampos mygtuką" + +msgid "Activate Picture in Picture" +msgstr "Aktyvuoti paveikslėlį paveikslėlyje" + +#, fuzzy +msgid "Activate current configuration" +msgstr "aktyvuokite dabartinę konfigūraciją" + +msgid "Activate network settings" +msgstr "Aktyvuoti tinklo nustatymus" + +#, fuzzy +msgid "Activate the configured network settings." +msgstr "Aktyvuoti tinklo nustatymus" + +msgid "Adapter settings" +msgstr "Tinklo nustatymai" + +msgid "Add" +msgstr "Pridėti" + +msgid "Add Bookmark" +msgstr "Pridėti žymę" + +msgid "Add a mark" +msgstr "Pridėti žymeklį" + +#, fuzzy +msgid "Add a nameserver entry" +msgstr "pridėkite serverio pavadinimo įėjimą" + +msgid "Add a new title" +msgstr "Pridėkite naują pavadinimą" + +#, fuzzy +msgid "Add bookmark" +msgstr "pridėti žymę" + +#, fuzzy +msgid "Add directory to playlist" +msgstr "pridėti direktoriją į grojaraštį" + +#, fuzzy +msgid "Add file to playlist" +msgstr "pridėti failą į grojaraštį" + +#, fuzzy +msgid "Add files to playlist" +msgstr "pridėti failus į grojaraštį" + +msgid "Add more details to the crash log" +msgstr "" + +#, fuzzy +msgid "Add provider" +msgstr "pridėti Tiekėją" + +#, fuzzy +msgid "Add recording (enter recording duration)" +msgstr "pridėti įrašą (įrašykite įrašo ilgį)" + +#, fuzzy +msgid "Add recording (enter recording endtime)" +msgstr "pridėti įrašą (įrašykite įrašymo pabaigos laiką) " + +#, fuzzy +msgid "Add recording (indefinitely)" +msgstr "pridėti įrašą (identišką)" + +#, fuzzy +msgid "Add recording (stop after current event)" +msgstr "pridėti įrašą (stabdyti po esamo įvykio)" + +#, fuzzy +msgid "Add service" +msgstr "pridėti Kanalą" + +msgid "Add timer" +msgstr "Laikmatis" + +msgid "Add title" +msgstr "Pavadinimas" + +msgid "Add to bouquet" +msgstr "Pridėti į paketą" + +msgid "Add to favourites" +msgstr "Pridėti į mėgstamiausius" + +msgid "Add/remove change timer for current event" +msgstr "" + +msgid "Adjust 3D settings" +msgstr "" + +msgid "Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens." +msgstr "Sureguliuokite spalvas taip, kad visos spalvos ir atspalviai būtų atskiriami, bet atrodytų taip prisotinti, kiek galima. Jei jūs esate patenkinti rezultatu, spauskite OK, kad uždarytumėte vaizdo tikslų suderinimą, ar pasinaudokite skaičių mygtukais, kad išrinktumėte kitus bandomuosius ekranus." + +msgid "Advanced" +msgstr "" + +#, fuzzy +msgid "Advanced options" +msgstr "Išplėstiniai nustatymai" + +msgid "Advanced restore" +msgstr "Išplėstinis atkūrimas" + +#, fuzzy +msgid "Advanced software" +msgstr "Išplėstinė programinė įranga" + +#, fuzzy +msgid "Advanced software plugin" +msgstr "Išplėstinė programinės įrangos papildoma programa" + +#, fuzzy +msgid "Advanced video enhancement setup" +msgstr "Išplėstas vaizdo stiprinimo valdymas" + +#, fuzzy +msgid "Advanced video setup" +msgstr "Išplėstiniai vaizdo nustatymai" + +msgid "After event" +msgstr "Po įvykio" + +msgid "Album" +msgstr "Albumas" + +msgid "Alignment of events" +msgstr "" + +msgid "Alignment of service names" +msgstr "" + +msgid "All" +msgstr "Visi" + +msgid "All ages" +msgstr "" + +msgid "All satellites 1 (USALS)" +msgstr "" + +msgid "All satellites 2 (USALS)" +msgstr "" + +msgid "All satellites 3 (USALS)" +msgstr "" + +msgid "All satellites 4 (USALS)" +msgstr "" + +msgid "Allocate" +msgstr "" + +msgid "Allocate unused memory index" +msgstr "" + +msgid "Allow quit movieplayer with exit" +msgstr "" + +msgid "Allow subtitle language to equal audio language" +msgstr "" + +msgid "Allow subtitles for hearing impaired" +msgstr "" + +msgid "Alpha" +msgstr "Permatoma" + +#, fuzzy +msgid "Alternative" +msgstr "pridėti kitus" + +#, fuzzy +msgid "Alternative numbering mode" +msgstr "Kitoks radijo būdas" + +msgid "Alternative services tuner priority" +msgstr "Kitų kanalų imtuvo pirmenybė" + +msgid "Always ask" +msgstr "Visada klausti" + +msgid "Always hide infobar" +msgstr "" + +msgid "An empty filename is illegal." +msgstr "Tuščias failo pavadinimas negalimas" + +#, fuzzy +msgid "An error occurred while downloading the packetlist. Please try again." +msgstr "Įvyko klaida, parsisiunčiant paketo sąrašą. Prašome pabandyti dar kartą." + +msgid "An unknown error occurred!" +msgstr "Įvyko nežinoma klaida!" + +msgid "And will put your receiver in standby over " +msgstr "" + +msgid "Any activity" +msgstr "" + +msgid "Arabic" +msgstr "Arabų" + +msgid "Are you sure to remove this entry?" +msgstr "" + +msgid "" +"Are you sure you want to activate this network configuration?\n" +"\n" +msgstr "" +"Jūs esate įsitikinęs, kad jūs norite aktyvuoti šią tinklo konfigūraciją?\n" +"\n" + +#, fuzzy +msgid "" +"Are you sure you want to delete\n" +"the following backup:\n" +msgstr "" +"Jūs tikrai norite trinti\n" +"atsarginę kopiją:\n" + +msgid "Are you sure you want to exit this wizard?" +msgstr "Jūs esate įsitikinęs, kad norite išjungti šį vedlį?" + +msgid "" +"Are you sure you want to restart your network interfaces?\n" +"\n" +msgstr "" +"Jūs esate įsitikinęs, kad norite iš naujo paleisti savo tinklo sąsajas? \n" +"\n" + +#, fuzzy, python-format +msgid "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Jūs esate įsitikinęs, kad norite atkurti savo Enigma2 atsarginę kopiją?\n" +"Enigma2 iš naujo pasileis po atkūrimo" + +#, fuzzy +msgid "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Jūs esate įsitikinęs, kad norite atkurti savo Enigma2 atsarginę kopiją?\n" +"Enigma2 iš naujo pasileis po atkūrimo" + +msgid "Artist" +msgstr "Atlikėjas" + +msgid "Arts/Culture" +msgstr "" + +msgid "Ask user" +msgstr "Klausti vartotojo" + +#, fuzzy +msgid "Aspect ratio" +msgstr "Vaizdo formatas" + +#, fuzzy +msgid "Assigned CAIds:" +msgstr "paskirtas CAIds:" + +#, fuzzy +msgid "Assigned services/provider:" +msgstr "paskirtos Kanalai/Tiekėjai:" + +#, fuzzy +msgid "At beginning" +msgstr "pradžioje" + +#, fuzzy +msgid "At end" +msgstr "pabaigoje" + +msgid "Audio" +msgstr "Garsas" + +msgid "Audio PID" +msgstr "Garso PID" + +msgid "Audio language selection 1" +msgstr "" + +msgid "Audio language selection 2" +msgstr "" + +msgid "Audio language selection 3" +msgstr "" + +msgid "Audio language selection 4" +msgstr "" + +#, fuzzy +msgid "Audio options..." +msgstr "Garso nustatymai..." + +#, fuzzy, python-format +msgid "Audio track (%s) format" +msgstr "Garso takelio (%s) formatas" + +#, fuzzy, python-format +msgid "Audio track (%s) language" +msgstr "garso takelio (%s) kalba" + +msgid "Author: " +msgstr "Autorius:" + +msgid "Authoring mode" +msgstr "Būdo kūrimas" + +#. TRANSLATORS: (aspect ratio policy: always try to display as fullscreen, when there is no content (black bars) on left/right, even if this breaks the aspect. +msgid "Auto" +msgstr "Automatinis" + +msgid "Auto chapter split every ? minutes (0=never)" +msgstr "Automatinis skyriaus perskėlimas kiekvieną? minutę (0=niekada)" + +msgid "Auto flesh" +msgstr "Auto minkštinimas" + +msgid "Auto focus" +msgstr "" + +msgid "Auto focus commencing ..." +msgstr "" + +msgid "Auto language selection" +msgstr "" + +msgid "Auto scart switching" +msgstr "Automatinis skarto perjungimas" + +msgid "Automatic" +msgstr "Automatinis" + +#, fuzzy +msgid "Automatic scan" +msgstr "Automatinė paieška" + +msgid "Automatically start timeshift after" +msgstr "" + +msgid "Automatically turn on external subtitles" +msgstr "" + +msgid "Available format variables" +msgstr "Galimi formatai" + +msgid "B" +msgstr "B" + +msgid "BER" +msgstr "BER" + +msgid "BER:" +msgstr "BER:" + +msgid "Back" +msgstr "Atgal" + +msgid "Background" +msgstr "Fonas" + +#, fuzzy +msgid "Background color" +msgstr "foninė spalva" + +msgid "Background delete option" +msgstr "" + +msgid "Background delete speed" +msgstr "" + +#, fuzzy +msgid "Backup completed." +msgstr "Atsarginė kopija nepavyko." + +msgid "Backup failed." +msgstr "Atsarginė kopija nepavyko." + +msgid "Backup is running..." +msgstr "Daroma atsarginė kopija..." + +msgid "Backup system settings" +msgstr "Atsarginė sisteminių nustatymų kopija" + +msgid "Band" +msgstr "Juosta" + +msgid "Bandwidth" +msgstr "Juostos plotis" + +msgid "Basque" +msgstr "" + +msgid "Begin time" +msgstr "Pradžios laikas" + +msgid "Behavior of 'pause and ok' when paused" +msgstr "" + +msgid "Behavior of 0 key in PiP-mode" +msgstr "0 mygtuko padėtis PiP režime" + +msgid "Behavior when a movie is started" +msgstr "Elgsena, kai filmas prasidėjęs" + +msgid "Behavior when a movie is stopped" +msgstr "Elgsena, kai filmas sustabdytas" + +msgid "Behavior when a movie reaches the end" +msgstr "Elgsena, kai filmas pasiekia pabaigą" + +msgid "Big PiP" +msgstr "" + +msgid "Bitrate:" +msgstr "Sparta bitais:" + +msgid "Black screen" +msgstr "" + +msgid "Black screen till locked" +msgstr "" + +msgid "Block noise reduction" +msgstr "Blokuoti triukšmo mažėjimą" + +msgid "Blue boost" +msgstr "Daugiau mėlynos" + +msgid "Bookmarks" +msgstr "Žymės" + +msgid "Brightness" +msgstr "Šviesumas" + +msgid "Bulgarian" +msgstr "" + +msgid "Burn DVD" +msgstr "Įrašyti DVD" + +#, fuzzy, python-format +msgid "Burn audio track (%s)" +msgstr "įrašyti garso takelį (%s)" + +msgid "Burn existing image to DVD" +msgstr "Įrašyti esamą atvaizdą į DVD" + +msgid "Burn to DVD" +msgstr "Įrašyti į DVD" + +msgid "Bus: " +msgstr "Bus: " + +msgid "By default, SNR will be shown in dB (when supported by the tuner). This setting forces SNR to be shown as a percentage instead." +msgstr "" + +msgid "C" +msgstr "C" + +msgid "C-Band" +msgstr "C-juosta" + +msgid "CH" +msgstr "" + +msgid "CI assignment" +msgstr "CI nustatymas" + +msgid "CVBS" +msgstr "CVBS" + +msgid "Cable" +msgstr "Kabelinė" + +msgid "Cable Scan" +msgstr "" + +#, fuzzy +msgid "Cache thumbnails" +msgstr "Slėpti nedidelius" + +msgid "Calculate" +msgstr "" + +msgid "Calculate all positions" +msgstr "" + +msgid "Calculation complete" +msgstr "" + +msgid "Calibrate" +msgstr "" + +msgid "Can be used for different fps between external subtitles and video." +msgstr "" + +msgid "Cancel" +msgstr "Atšaukti" + +msgid "Cannot determine" +msgstr "" + +msgid "Cannot find any signal ..., aborting !" +msgstr "" + +msgid "Cannot move files on a different disk or system to the trash can" +msgstr "" + +msgid "Cannot move to trash can" +msgstr "" + +msgid "Capacity: " +msgstr "Talpa: " + +msgid "Card" +msgstr "Kortelė" + +msgid "Cascade PiP" +msgstr "" + +msgid "Center DVB subtitles" +msgstr "" + +msgid "Center time-labels and remove date" +msgstr "" + +msgid "Change bouquets in quickzap" +msgstr "Keisti paketus greitai perjungiant" + +msgid "Change pin code" +msgstr "Keisti PIN kodą" + +#, fuzzy +msgid "Change recording (duration)" +msgstr "keisti įrašymą (trukmę)" + +#, fuzzy +msgid "Change recording (endtime)" +msgstr "keisti įrašymą (pabaigos laiką)" + +msgid "Change repeat and delay settings?" +msgstr "" + +msgid "Change service PIN" +msgstr "Keisti kanalo PIN kodą" + +msgid "Change service PINs" +msgstr "Keisti kanalų PIN kodus" + +msgid "Change setup PIN" +msgstr "Keisti valdymo PIN kodą" + +msgid "Change step size" +msgstr "Keisti žingsnio dydį" + +msgid "Change timer" +msgstr "" + +msgid "Changelog" +msgstr "Pakeitimų sąrašas" + +msgid "Channel" +msgstr "Kanalas" + +#, fuzzy +msgid "Channel list type" +msgstr "Kanalų meniu sąrašas" + +msgid "Channel not in services list" +msgstr "Kanalo nėra kanalų sąraše" + +#, fuzzy +msgid "Channel selection" +msgstr "Kanalo pasirinkimas" + +msgid "Channel:" +msgstr "Kanalas:" + +msgid "Channellist menu" +msgstr "Kanalų meniu sąrašas" + +msgid "Chap." +msgstr "Skyr." + +msgid "Chapter" +msgstr "Skyrius" + +msgid "Chapter:" +msgstr "Skyrius:" + +msgid "Check" +msgstr "Tikrinti" + +msgid "Check the internet connection" +msgstr "" + +msgid "Check the internet connection again" +msgstr "" + +#, fuzzy +msgid "Checking filesystem..." +msgstr "Tikrinti failų sistemą..." + +msgid "Checking the internet connection" +msgstr "" + +#, python-format +msgid "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" +msgstr "" + +msgid "Children/Youth" +msgstr "" + +msgid "Choose which tuner to configure." +msgstr "" + +msgid "Circular left" +msgstr "Apskritiminė kairė" + +msgid "Circular right" +msgstr "Apskritiminė dešinė" + +msgid "Cleanup" +msgstr "Išvalyti" + +msgid "Clear" +msgstr "" + +msgid "Clear before scan" +msgstr "Išvalyti prieš skanavimą" + +msgid "Clear fixed" +msgstr "" + +msgid "Clear log" +msgstr "Išvalyti log" + +#, fuzzy +msgid "Clear playlist" +msgstr "išvalyti grojaraštį" + +msgid "Close" +msgstr "Uždaryti" + +msgid "Close PiP on exit" +msgstr "" + +msgid "Close title selection" +msgstr "Uždaryti pavadinimo pasirinkimą" + +msgid "Code rate HP" +msgstr "Kodinė norma HP" + +msgid "Code rate LP" +msgstr "Kodinė norma LP" + +msgid "Coderate HP" +msgstr "Kodavimo greitis HP" + +msgid "Coderate LP" +msgstr "Kodavimo greitis LP" + +msgid "Collection name" +msgstr "Kolekcijos pavadinimas" + +msgid "Collection settings" +msgstr "Kolekcijos nustatymai" + +#, fuzzy +msgid "Color format" +msgstr "Spalvų formatas" + +msgid "Command execution..." +msgstr "Vykdoma komanda..." + +msgid "Command order" +msgstr "Komandų seka" + +msgid "Common Interface" +msgstr "Įstatomi moduliai" + +#, fuzzy +msgid "Common Interface assignment" +msgstr "Įstatomo modulio priskyrimas" + +msgid "Communication" +msgstr "Komunikacija" + +#, fuzzy +msgid "Compact flash" +msgstr "Kompaktinė atmintinė" + +msgid "Complete" +msgstr "Įvykdyta" + +msgid "Complex (allows mixing audio tracks and aspects)" +msgstr "Kompleksas (leidžia sumaišyti garso takelius ir aspektus)," + +msgid "Composition of the recording filenames" +msgstr "Įrašo failų sudėtis" + +#, fuzzy +msgid "Configuration mode" +msgstr "Konfigūravimo būdas" + +#, fuzzy, python-format +msgid "Configuration mode: %s" +msgstr "Konfigūravimo būdas" + +#, fuzzy +msgid "Configuration..." +msgstr "Tinklo konfigūracija..." + +msgid "Configure an additional delay to improve external subtitle synchronisation." +msgstr "" + +msgid "Configure an additional delay to improve subtitle synchronisation." +msgstr "" + +msgid "Configure for how long the infobar will remain visible after activation." +msgstr "" + +msgid "Configure for how many minutes finished events should remain visible in the EPG. Useful when you need information about an event which has just finished, or has been delayed." +msgstr "" + +msgid "Configure how recording filenames are constructed." +msgstr "" + +msgid "Configure how the fan should operate" +msgstr "" + +msgid "Configure if and how crypto icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how long the latest service in the PiP will be remembered." +msgstr "" + +msgid "Configure if and how service type icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how wide columns will be shown in the channel selection list." +msgstr "" + +msgid "Configure if service picons will be shown in the channel selection list." +msgstr "" + +msgid "Configure interface" +msgstr "Konfigūruokite sąsają" + +msgid "Configure nameservers" +msgstr "Konfigūruokite serverių pavadinimus" + +msgid "Configure on which devices the background delete option should be used." +msgstr "" + +#, fuzzy +msgid "Configure remote control type" +msgstr "Tėvų kontrolės rūšis" + +msgid "Configure the DiSEqC mode for this LNB." +msgstr "" + +#, fuzzy +msgid "Configure the IP address." +msgstr "Konfigūruokite sąsają" + +msgid "Configure the aspect ratio of the screen." +msgstr "" + +msgid "Configure the behavior of the 'pause and ok' key when movie playback is already paused." +msgstr "" + +#, fuzzy +msgid "Configure the behavior when movie playback is manually stopped." +msgstr "Elgsena, kai filmas sustabdytas" + +#, fuzzy +msgid "Configure the behavior when movie playback is started." +msgstr "Elgsena, kai filmas prasidėjęs" + +msgid "Configure the behavior when reaching the end of a movie, during movie playback." +msgstr "" + +msgid "Configure the border width of the subtitles. The dark border makes the subtitles easier to read on a light background." +msgstr "" + +msgid "Configure the brightness level of the front panel display during standby." +msgstr "" + +msgid "Configure the brightness level of the front panel display." +msgstr "" + +msgid "Configure the color of the external subtitles, alternative (normal in white, italic in yellow, bold in cyan, underscore in green), white or yellow." +msgstr "" + +msgid "Configure the color of the teletext subtitles." +msgstr "" + +msgid "Configure the contrast level of the front panel display." +msgstr "" + +msgid "Configure the cursor behaviour in the channel selection list. When opening the channel selection list you can keep on the current service or already select up/down and you are able to revert the B+/B- buttons." +msgstr "" + +msgid "Configure the duration in hours the receiver should go to standby when the receiver is not controlled." +msgstr "" + +msgid "Configure the duration in minutes for the screensaver." +msgstr "" + +msgid "Configure the duration in minutes for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +msgstr "" + +msgid "Configure the duration when the receiver should go to shut down in case the receiver is in standby mode." +msgstr "" + +msgid "Configure the first audio language (highest priority)." +msgstr "" + +msgid "Configure the first subtitle language (highest priority)." +msgstr "" + +msgid "Configure the font size of the subtitles." +msgstr "" + +msgid "Configure the fourth audio language." +msgstr "" + +#, fuzzy +msgid "Configure the fourth subtitle language." +msgstr "perjungti į kitą subtitrų kalbą" + +msgid "Configure the function of a long press on the power button." +msgstr "" + +msgid "Configure the function of a short press on the power button." +msgstr "" + +msgid "Configure the function of the '0' button do when PIP is active." +msgstr "" + +#, fuzzy +msgid "Configure the gateway." +msgstr "Konfigūruokite sąsają" + +msgid "Configure the general audio delay of Dolby Digital sound tracks." +msgstr "" + +msgid "Configure the general audio delay of stereo sound tracks." +msgstr "" + +msgid "Configure the hard disk drive to go to standby after the specified idle time." +msgstr "" + +msgid "Configure the horizontal alignment of the subtitles." +msgstr "" + +msgid "Configure the initial fast forward speed. When you press the fast forward button, winding will start at this speed." +msgstr "" + +msgid "Configure the initial rewind speed. When you press the rewind button, winding will start at this speed." +msgstr "" + +msgid "Configure the latitude of your location." +msgstr "" + +msgid "Configure the longitude of your location." +msgstr "" + +msgid "Configure the minimum amount of disk space to be available for recordings. When the amount of space drops below this value, deleted items will be removed from the trash can." +msgstr "" + +#, fuzzy +msgid "Configure the nameserver (DNS)." +msgstr "Konfigūruokite serverių pavadinimus" + +#, fuzzy +msgid "Configure the netmask." +msgstr "Konfigūruokite sąsają" + +msgid "Configure the number of days after which items are automaticaly removed from the trash can." +msgstr "" + +msgid "Configure the number of days old timers are kept before they are automatically removed from the timer list." +msgstr "" + +msgid "Configure the offline decoding delay in milliseconds. The configured delay is observed at each control word parity change." +msgstr "" + +#, fuzzy +msgid "Configure the possible fast forward speeds." +msgstr "Pradinis greito persukimo greitis" + +msgid "Configure the possible rewind speeds." +msgstr "" + +msgid "Configure the primary EPG language." +msgstr "" + +msgid "Configure the refresh rate of the screen." +msgstr "" + +msgid "Configure the screen resolution in PC output mode." +msgstr "" + +msgid "Configure the second audio language." +msgstr "" + +#, fuzzy +msgid "Configure the second subtitle language." +msgstr "perjungti į kitą subtitrų kalbą" + +msgid "Configure the secondary EPG language." +msgstr "" + +msgid "Configure the sharpness of the video scaling." +msgstr "" + +msgid "Configure the skip time interval for the '1'/'3' buttons." +msgstr "" + +msgid "Configure the skip time interval for the '4'/'6' buttons." +msgstr "" + +msgid "Configure the skip time interval for the '7'/'9' buttons." +msgstr "" + +#, fuzzy +msgid "Configure the slow motion speeds." +msgstr "Palėtinto judėjimo greitis" + +msgid "Configure the source of the frontend data as shown on the infobars. 'Settings' is as stored on the settings. 'Tuner' is as reported by the tuner." +msgstr "" + +msgid "Configure the speed of the background deletion process. Lower speed will consume less hard disk drive performance." +msgstr "" + +msgid "Configure the speed of the fan" +msgstr "" + +msgid "Configure the subtitle delay when timing information is not available." +msgstr "" + +msgid "Configure the third audio language." +msgstr "" + +#, fuzzy +msgid "Configure the third subtitle language." +msgstr "perjungti į kitą subtitrų kalbą" + +msgid "Configure the transparency of the OSD." +msgstr "" + +msgid "Configure the transparency of the black background of graphical DVB subtitles." +msgstr "" + +#, fuzzy +msgid "Configure the tuner mode." +msgstr "Konfigūravimo būdas" + +msgid "Configure the type of status indication icons shown in the movielist." +msgstr "" + +msgid "Configure the vertical position of the subtitles, measured from the bottom of the screen." +msgstr "" + +msgid "Configure the video output mode (or resolution)." +msgstr "" + +msgid "Configure the way in which the receiver changes channels." +msgstr "" + +msgid "Configure where completed timers show up in the timer list." +msgstr "" + +msgid "Configure whether (and for how long) a second infobar will be shown when OK is pressed twice. The second infobar contains additional information about the current channel." +msgstr "" + +msgid "Configure whether multi channel sound tracks should be downmixed to stereo." +msgstr "" + +msgid "Configure whether or not an icon should be shown when your motorized dish is moving." +msgstr "" + +msgid "Configure which access level to use for the configuration menu. Expert level gives access to all items." +msgstr "" + +msgid "Configure which color format should be used on the SCART output." +msgstr "" + +msgid "Configure which tuner for recordings will be preferred, when more than one tuner is available." +msgstr "" + +msgid "Configure which tuner type will be preferred, when the same service is available on different types of tuners." +msgstr "" + +msgid "Configure which tuner will be preferred, when more than one tuner is available. If set to 'auto' the system will give priority to the tuner having the lowest number of channels/satellites." +msgstr "" + +msgid "Configure your internal LAN" +msgstr "Konfigūruokite savo vidinį tinklą" + +msgid "Configure your network again" +msgstr "Konfigūruokite savo tinklą dar kartą" + +msgid "Configure your network settings, and press OK to start the scan" +msgstr "" + +msgid "Configure your wireless LAN again" +msgstr "Konfigūruokite savo belaidį tinklą dar kartą" + +msgid "Configures which video output connector will be used." +msgstr "" + +msgid "Configuring" +msgstr "Konfigūruojama" + +msgid "Conflicting timer" +msgstr "Laikmačio nesuderinamumas" + +msgid "Connect" +msgstr "Jungtis" + +#, fuzzy +msgid "Connect to a wireless network" +msgstr "Jungtis prie Belaidžio Tinklo" + +msgid "Connected satellites" +msgstr "" + +msgid "Connected to" +msgstr "Prisijungta prie" + +msgid "Connected!" +msgstr "Prisijungta!" + +msgid "Constellation" +msgstr "Žvaigždynas" + +msgid "Content does not fit on DVD!" +msgstr "Turinys netinka dėl DVD!" + +msgid "Continue" +msgstr "Tęsti" + +msgid "Continue in background" +msgstr "Tęsti fone" + +#, fuzzy +msgid "Continue playback" +msgstr "Tęsti žiūrėjimą" + +msgid "Continue playing" +msgstr "Tęsti žiūrėjimą" + +msgid "Continues play (loop)" +msgstr "" + +msgid "Contrast" +msgstr "Kontrastas" + +msgid "Convert ext3 filesystem to ext4" +msgstr "" + +msgid "Convert ext3 to ext4" +msgstr "" + +msgid "Converting ext3 to ext4..." +msgstr "" + +msgid "Copy" +msgstr "" + +msgid "Could not connect to receiver .NFI image feed server:" +msgstr "" + +msgid "Could not find installed channel list." +msgstr "" + +#, fuzzy +msgid "Could not load medium! No disc inserted?" +msgstr "Negalima užkrauti! Joks diskas neįdėtas?" + +msgid "Could not open Picture in Picture" +msgstr "Negalima atidaryti paveikslėlio paveikslėlyje" + +#, fuzzy, python-format +msgid "Could not record due to conflicting timer %s" +msgstr "Neįrašyta dėl prieštaringo laikmačio %s" + +#, fuzzy, python-format +msgid "Could not record due to invalid service %s" +msgstr "Negalėjo įrašyti dėl negaliojančios paslaugos %s" + +msgid "Create DVD-ISO" +msgstr "Sukurkite DVD-ISO" + +msgid "Create more detailed crash log" +msgstr "" + +#, python-format +msgid "Creating directory %s failed." +msgstr "Direktorijos sukurti %s nepavyko." + +#, fuzzy +msgid "Creating filesystem" +msgstr "Tikrinti failų sistemą..." + +msgid "Creating partition" +msgstr "" + +msgid "Croatian" +msgstr "Kroatų" + +msgid "Current CEC address" +msgstr "" + +msgid "Current device: " +msgstr "Dabartinis prietaisas:" + +msgid "Current event EPG" +msgstr "" + +#, python-format +msgid "Current mode: %s \n" +msgstr "" + +msgid "Current settings:" +msgstr "Dabartiniai nustatymai:" + +#, fuzzy +msgid "Current transponder" +msgstr "Dabartinis transponderis" + +msgid "Current value: " +msgstr "Einamoji reikšmė: " + +msgid "Current version:" +msgstr "Dabartinė versija:" + +msgid "Currently installed image" +msgstr "Šiuo metu įdiegtas atvaizdas" + +msgid "Currently the commit log cannot be retrieved - please try later again" +msgstr "" + +#, fuzzy +msgid "Custom skip time for '1'/'3' buttons" +msgstr "Praleisti laiką pasirinktinai '1'/'3'-mygtukams" + +#, fuzzy +msgid "Custom skip time for '4'/'6' buttons" +msgstr "Praleisti laiką pasirinktinai '4'/'6'-mygtukams" + +#, fuzzy +msgid "Custom skip time for '7'/'9' buttons" +msgstr "Praleisti laiką pasirinktinai '7'/'9'-mygtukams" + +msgid "Customize" +msgstr "Vartotojo pasirinkimai" + +msgid "Customize channel list cursor behavior" +msgstr "" + +msgid "Cut" +msgstr "Iškirpti" + +msgid "Cutlist editor..." +msgstr "Iškirpimo redaktorius..." + +msgid "Czech" +msgstr "Čekų" + +msgid "D" +msgstr "D" + +msgid "DHCP" +msgstr "DHCP" + +#, fuzzy +msgid "DMM advanced" +msgstr "Išplėstas" + +msgid "DMM normal" +msgstr "" + +msgid "DUAL LAYER DVD" +msgstr "DVIGUBAS DVD" + +msgid "DVB subtitle black transparency" +msgstr "" + +msgid "DVB-C" +msgstr "" + +msgid "DVB-C ANNEX C" +msgstr "" + +msgid "DVB-S" +msgstr "DVB-S" + +msgid "DVB-S2" +msgstr "DVB-S2" + +msgid "DVB-T" +msgstr "" + +msgid "DVB-T2" +msgstr "" + +msgid "DVD data format" +msgstr "" + +#, fuzzy +msgid "DVD file browser" +msgstr "DVD failų naršyklė" + +msgid "DVD media toolbox" +msgstr "DVD priemonių komplektas" + +#, fuzzy +msgid "DVD player" +msgstr "DVD grotuvas" + +#, fuzzy +msgid "DVD titlelist" +msgstr "DVD pavadinimo sąrašas" + +msgid "Danish" +msgstr "Danų" + +msgid "Date" +msgstr "Data" + +#, fuzzy +msgid "Date/time input" +msgstr "Laikas / Data" + +#, fuzzy +msgid "Deep standby" +msgstr "Visiškai išjungti" + +msgid "Default" +msgstr "Numatyta" + +msgid "Default movie location" +msgstr "Numatyta filmų vieta" + +#, fuzzy +msgid "Default settings" +msgstr "Numatytieji nustatymai" + +msgid "Delay before key repeat starts:" +msgstr "" + +msgid "Delay for external subtitles" +msgstr "" + +msgid "Delete" +msgstr "Trinti" + +msgid "Delete entry" +msgstr "Trinti užduotį" + +msgid "Delete failed!" +msgstr "Ištrinti nepavyko!" + +#, fuzzy +msgid "Delete file" +msgstr "trinti failą" + +#, fuzzy +msgid "Delete playlist entry" +msgstr "trinti įrašą iš grojaraščio " + +#, fuzzy +msgid "Delete saved playlist" +msgstr "trinti išsaugotą grojaraštį" + +msgid "Delete timer" +msgstr "" + +#, fuzzy +msgid "Delete..." +msgstr "trinti..." + +msgid "Deleted" +msgstr "" + +msgid "Deleted items" +msgstr "" + +msgid "Depth" +msgstr "" + +msgid "Descramble http streams" +msgstr "" + +msgid "Description" +msgstr "Aprašymas" + +msgid "Deselect" +msgstr "Nepasirinkti" + +msgid "Details for plugin: " +msgstr "Informacija apie priedą:" + +msgid "Detected HDD:" +msgstr "Rastas HDD:" + +msgid "Detected NIMs:" +msgstr "Rasti imtuvai:" + +msgid "Devicename:" +msgstr "" + +msgid "Devide" +msgstr "" + +msgid "DiSEqC" +msgstr "DiSEqC" + +msgid "DiSEqC 1.0 command" +msgstr "" + +msgid "DiSEqC 1.1 command" +msgstr "" + +msgid "DiSEqC 1.1 repeats" +msgstr "" + +msgid "DiSEqC A/B" +msgstr "DiSEqC A/B" + +msgid "DiSEqC A/B/C/D" +msgstr "DiSEqC A/B/C/D" + +msgid "DiSEqC mode" +msgstr "DiSEqC būdas" + +#, fuzzy, python-format +msgid "DiSEqC port %s: %s" +msgstr "DiSEqC pakartojimai" + +#, fuzzy +msgid "DiSEqC-tester settings" +msgstr "DiSEqC-Tester nustatymai" + +msgid "Dialing:" +msgstr "Telefono numerio surinkimas:" + +msgid "Digital contour removal" +msgstr "Skaitmeninis kontūro pašalinimas" + +msgid "Direct playback of linked titles without menu" +msgstr "Tiesioginis atkūrimas sujungtų pavadinimų be meniu" + +msgid "Directory" +msgstr "" + +#, fuzzy, python-format +msgid "Directory %s does not exist." +msgstr "Direktorijos %s nėra." + +#, python-format +msgid "Directory %s nonexistent." +msgstr "" + +msgid "Directory browser" +msgstr "Direktorijų naršyklė" + +#, python-format +msgid "Directory contains %d file(s) and %d sub-directories.\n" +msgstr "" + +#, fuzzy, python-format +msgid "Directory contains %s and %s." +msgstr "Direktorijos %s nėra." + +msgid "Disable" +msgstr "Išjungti" + +msgid "Disable Picture in Picture" +msgstr "Išjungti paveikslėlį paveikslėlyje" + +msgid "Disable background scanning" +msgstr "Išjungti foninį skanavimą" + +msgid "Disable timer" +msgstr "" + +msgid "Disabled" +msgstr "Išjungtas" + +msgid "Disconnect" +msgstr "Atsijungti" + +msgid "Disk space to reserve for recordings (in GB)" +msgstr "Disko talpa įrašų rezervavimui (GB)" + +msgid "Display 16:9 content as" +msgstr "Rodyti kaip 16:9" + +msgid "Display 4:3 content as" +msgstr "Rodyti kaip 4:3 " + +msgid "Display >16:9 content as" +msgstr "Monitorius >16:9 turinys kaip" + +#, fuzzy +msgid "Display and userinterface" +msgstr "Monitorius ir vartotojo sąsaja" + +msgid "Display message before playing next movie" +msgstr "" + +#, fuzzy +msgid "Display setup" +msgstr "Monitoriaus parametrai" + +#, fuzzy +msgid "Do not change" +msgstr "nieko nekeisti" + +#, fuzzy +msgid "Do not record" +msgstr "nerašyti" + +#, fuzzy +msgid "Do nothing" +msgstr "nieko nedaryti" + +msgid "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" +msgstr "" +"Tikrai norite atlikti failų sistemos tikrinimą?\n" +"Tai gali trukti ilgą laiką!" + +msgid "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" +msgstr "" + +#, python-format +msgid "Do you really want to delete %s?" +msgstr "Jūs tikrai norite pašalinti %s?" + +#, python-format +msgid "" +"Do you really want to download\n" +"the plugin \"%s\"?" +msgstr "" +"Jūs iš tikrųjų norite parsisiųsti\n" +"papildomą programą \"%s \"?" + +msgid "Do you really want to exit?" +msgstr "Jūs tikrai norite išeiti?" + +msgid "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" +msgstr "" +"Tikrai norite atlikti įrenginio inicializavimą?\n" +"Visi duomenys bus prarasti!" + +#, fuzzy, python-format +msgid "" +"Do you really want to remove\n" +"the plugin \"%s\"?" +msgstr "" +"Jūs iš tikrųjų norite parsisiųsti\n" +"papildomą programą \"%s \"?" + +#, python-format +msgid "Do you really want to remove directory %s from the disk?" +msgstr "Jūs iš tikrųjų norite pašalinti direktoriją %s iš disko?" + +#, python-format +msgid "Do you really want to remove your bookmark of %s?" +msgstr "Jūs iš tikrųjų norite pašalinti savo %s žymę?" + +msgid "Do you want this?" +msgstr "" + +msgid "Do you want to burn this collection to DVD medium?" +msgstr "Jūs norite įrašyti šią kolekciją į DVD?" + +msgid "Do you want to do a service scan?" +msgstr "Jūs norite skanuoti palydovą?" + +msgid "Do you want to do another manual service scan?" +msgstr "Jūs norite atlikti rankinį kanalų skanavimą?" + +#, python-format +msgid "Do you want to download the image to %s ?" +msgstr "Jūs norite parsisiųsti atvaizdą į %s ?" + +#, fuzzy +msgid "Do you want to install a channel list?" +msgstr "Jūs norite įdiegti paketą:\n" + +msgid "Do you want to install the package:\n" +msgstr "Jūs norite įdiegti paketą:\n" + +msgid "Do you want to play DVD in drive?" +msgstr "Jūs norite paleisti DVD?" + +msgid "Do you want to preview this DVD before burning?" +msgstr "Jūs norite peržiūrėti šį DVD prieš įrašymą?" + +msgid "Do you want to reboot your receiver?" +msgstr "" + +msgid "Do you want to remove the package:\n" +msgstr "Jūs norite pašalinti paketą:\n" + +msgid "Do you want to restore your settings?" +msgstr "Jūs norite atkurti nustatymus?" + +msgid "Do you want to resume this playback?" +msgstr "Jūs norite tęsti šį atkūrimą?" + +#, fuzzy, python-format +msgid "Do you want to update your receiver to %s?" +msgstr "Jūs norite parsisiųsti atvaizdą į %s ?" + +msgid "Do you want to update your receiver?" +msgstr "" + +msgid "Do you want to upgrade the package:\n" +msgstr "Jūs norite atnaujinti paketą:\n" + +msgid "Don't stop current event but disable coming events" +msgstr "Nestabdyti dabartinės užduoties, o išjungti sekančią užduotį" + +#, fuzzy, python-format +msgid "Done - Installed, upgraded or removed %d package (%s)" +msgid_plural "Done - Installed, upgraded or removed %d packages (%s)" +msgstr[0] "Baigta - Įdiegti, patobulinti ar pašalinti %d paketai su %d klaidomis" +msgstr[1] "Baigta - Įdiegti, patobulinti ar pašalinti %d paketai su %d klaidomis" + +msgid "Download" +msgstr "Parsisiuntimas" + +#, fuzzy, python-format +msgid "Download %s from server" +msgstr "Parsisiųsta %s iš serverio" + +msgid "Download .NFI-files for USB-flasher" +msgstr "Parsisiunčiami .NFI failai į USB diegėją" + +#, fuzzy +msgid "Download plugins" +msgstr "Parsisiųsti papildomas programas" + +msgid "Downloadable new plugins" +msgstr "Galimos įdiegti naujos papildomos programos" + +msgid "Downloadable plugins" +msgstr "Galimos įdiegti papildomos programos" + +msgid "Downloading" +msgstr "Parsisiunčiama" + +msgid "Downloading plugin information. Please wait..." +msgstr "Parsiunčiama informacija apie papildomas programas. Prašome palaukti..." + +msgid "Dutch" +msgstr "Olandų" + +msgid "Dynamic contrast" +msgstr "Dinamiškas kontrastas" + +msgid "E" +msgstr "E" + +msgid "EPG" +msgstr "" + +msgid "EPG language selection 1" +msgstr "" + +msgid "EPG language selection 2" +msgstr "" + +#, fuzzy +msgid "EPG selection" +msgstr "EPG pasirinkimas" + +msgid "EPG settings" +msgstr "" + +#, python-format +msgid "ERROR - failed to scan (%s)!" +msgstr "KLAIDA - nenuskanuota (%s)!" + +msgid "East" +msgstr "Rytai" + +msgid "East limit set" +msgstr "" + +msgid "Edit" +msgstr "Redaguoti" + +msgid "Edit DNS" +msgstr "Redaguoti DNS" + +msgid "Edit bouquets list" +msgstr "Redaguoti paketų sąrašą" + +msgid "Edit chapters of current title" +msgstr "Redaguokite dabartinio pavadinimo skyrius" + +msgid "Edit services list" +msgstr "Redaguoti kanalų sąrašą" + +msgid "Edit settings" +msgstr "Redaguoti nustatymus" + +#, fuzzy +msgid "Edit the nameserver configuration of your receiver.\n" +msgstr "išeiti iš serverio pavadinimo konfigūracijos" + +msgid "Edit the network configuration of your receiver.\n" +msgstr "" + +msgid "Edit timer" +msgstr "" + +msgid "Edit title" +msgstr "Redaguoti" + +msgid "Edit upgrade source url." +msgstr "Suredaguokite atnaujinimo šaltinio url." + +msgid "Education/Science/..." +msgstr "" + +msgid "Electronic Program Guide" +msgstr "Elektroninis programų gidas" + +msgid "Enable" +msgstr "Įjungti" + +msgid "Enable 'neutrino' style channel select controlling" +msgstr "" + +msgid "Enable 'neutrino' style zap controlling" +msgstr "" + +msgid "Enable 5V for active antenna" +msgstr "Įjungti 5V aktyviai antenai" + +msgid "Enable EIT EPG" +msgstr "Įjungti EIT EPG" + +msgid "Enable MHW EPG" +msgstr "Įjungti MHW EPG" + +msgid "Enable Netmed EPG" +msgstr "" + +msgid "Enable OK for channel selection" +msgstr "" + +msgid "Enable ViaSat EPG" +msgstr "Įjungti ViaSat EPG" + +msgid "Enable Virgin EPG" +msgstr "" + +msgid "Enable Wake On LAN" +msgstr "" + +msgid "Enable auto fast scan" +msgstr "" + +#, fuzzy +msgid "Enable bouquet selection in multi-EPG" +msgstr "įjungti paketo redagavimą" + +msgid "Enable freesat EPG" +msgstr "Įjungti freesat EPG" + +msgid "Enable multiple bouquets" +msgstr "Įjungti daugiau paketų" + +msgid "Enable parental control" +msgstr "Įjungti tėvų kontrolę" + +msgid "Enable teletext caching" +msgstr "Įjungti teleteksto kaupimą" + +msgid "Enable zapping with CH+/-, B+/-, P+/-" +msgstr "" + +msgid "Enabled" +msgstr "Įjungta" + +msgid "Encrypted: " +msgstr "Užšifruota:" + +msgid "Encryption" +msgstr "Užšifravimas" + +#, fuzzy +msgid "Encryption key" +msgstr "Užšifravimo mygtukas" + +#, fuzzy +msgid "Encryption key type" +msgstr "Mygtuko užšifravimo tipas" + +msgid "Encryption:" +msgstr "Užšifravimas:" + +msgid "End time" +msgstr "Pabaigos laikas" + +msgid "End time to ignore inactivity sleeptimer" +msgstr "" + +msgid "End time to ignore shutdown in standby" +msgstr "" + +msgid "English" +msgstr "Anglų" + +#, fuzzy +msgid "Enigma2 skin selector" +msgstr "enigma2 ir tinklas" + +msgid "Enter main menu..." +msgstr "Eiti į pagrindinį meniu..." + +msgid "Enter pin code" +msgstr "Įrašykite pin kodą" + +msgid "Enter the service pin" +msgstr "Įrašykite kanalo PIN" + +msgid "Equal to" +msgstr "" + +msgid "Error" +msgstr "Klaida" + +msgid "Error code" +msgstr "" + +msgid "Error executing plugin" +msgstr "Klaida paleidžiant papildomą programą" + +#, python-format +msgid "" +"Error: %s\n" +"Retry?" +msgstr "" +"Klaida: %s\n" +"Kartoti?" + +msgid "Estonian" +msgstr "Estų" + +msgid "Ethernet network interface" +msgstr "Ethernet tinklo sąsaja" + +msgid "Event font size (relative to skin size)" +msgstr "" + +#, fuzzy +msgid "Event view" +msgstr "Įvykių peržiūra" + +#, fuzzy +msgid "Event view menu" +msgstr "Įvykių peržiūra" + +msgid "Everywhere" +msgstr "" + +msgid "Exceeds dual layer medium!" +msgstr "Viršyja dvejų sluoksnių laikmeną!" + +msgid "Execution finished!!" +msgstr "Vykdymas baigtas!!" + +#, fuzzy +msgid "Execution progress:" +msgstr "Vykdymo eiga:" + +msgid "Exif" +msgstr "Exif" + +msgid "Exit" +msgstr "Išeiti" + +msgid "Exit EPG" +msgstr "" + +msgid "Exit editor" +msgstr "Išeiti iš redaktoriaus" + +msgid "Exit input device selection." +msgstr "Išeiti iš įvesto prietaiso pasirinkimo." + +msgid "Exit media player?" +msgstr "" + +#, fuzzy +msgid "Exit mediaplayer" +msgstr "išjungti media grotuvą" + +#, fuzzy +msgid "Exit movie list" +msgstr "uždaryti filmų sąrašą" + +#, fuzzy +msgid "Exit movie player?" +msgstr "išjungti media grotuvą" + +#, fuzzy +msgid "Exit nameserver configuration" +msgstr "išeiti iš serverio pavadinimo konfigūracijos" + +#, fuzzy +msgid "Exit network interface list" +msgstr "išeiti iš tinklo sąsajos sąrašo" + +msgid "Exit network wizard" +msgstr "Išeiti iš tinklo vedlio" + +msgid "Exit the wizard" +msgstr "Išeiti iš nustatymų vedlio" + +msgid "Expert" +msgstr "Išplėstinis" + +msgid "Extend sleeptimer 15 minutes" +msgstr "" + +msgid "Extended Software" +msgstr "Išplėsta programinė įranga" + +msgid "Extended Software Plugin" +msgstr "Išplėsta programinės įrangos papildoma programa..." + +#, fuzzy +msgid "Extended network setup plugin..." +msgstr "Išplėsta tinklo nustatymų papildoma programa..." + +#, fuzzy +msgid "Extended setup..." +msgstr "Išplėstiniai nustatymai..." + +msgid "Extensions" +msgstr "Išplėtimai" + +msgid "Extensions management" +msgstr "Išplėtimų valdymas" + +msgid "External PiP" +msgstr "" + +msgid "External subtitle color" +msgstr "" + +msgid "Extra motor options" +msgstr "" + +msgid "FEC" +msgstr "FEC" + +msgid "FTA" +msgstr "" + +msgid "Factory reset" +msgstr "Gamykliniai nustatymai" + +msgid "Failed" +msgstr "Klaidingas" + +msgid "Failed to write /tmp/positionersetup.log: " +msgstr "" + +#, python-format +msgid "Fan %d" +msgstr "Aušintuvas %d" + +#, python-format +msgid "Fan %d PWM" +msgstr "Aušintuvo %d PWM" + +#, fuzzy, python-format +msgid "Fan %d voltage" +msgstr "Aušintuvo %d įtampa" + +msgid "Fan operation" +msgstr "" + +msgid "Fan speed" +msgstr "" + +msgid "Fast" +msgstr "Greitas" + +msgid "Fast DiSEqC" +msgstr "Greitas DiSEqC" + +msgid "Fast Scan" +msgstr "" + +msgid "Fast epoch" +msgstr "Greita epocha" + +#, fuzzy +msgid "Fast forward speeds" +msgstr "Greito prasukimo greičiai" + +msgid "Favourites" +msgstr "Geriausi" + +msgid "File appears to be busy.\n" +msgstr "" + +#, fuzzy +msgid "Filesystem check" +msgstr "Failų sistemos tikrinimas" + +msgid "Final position at" +msgstr "" + +msgid "Final position at index" +msgstr "" + +msgid "Fine movement" +msgstr "" + +msgid "Finetune" +msgstr "Tiksliau" + +msgid "Finished" +msgstr "Baigtas" + +msgid "Finished configuring your network" +msgstr "Baigtas jūsų tinklo konfigūravimas" + +msgid "Finished restarting your network" +msgstr "Baigtas jūsų tinklo paleidimas iš naujo" + +msgid "Finnish" +msgstr "Suomių" + +msgid "Fixed" +msgstr "" + +msgid "Flash" +msgstr "Vidinė atmintis" + +msgid "Flashing failed" +msgstr "Diegimas klaidingas" + +msgid "Following tasks will be done after you press OK!" +msgstr "Kitos užduotys bus atliktos po to, kai jūs paspausite OK!" + +msgid "Format" +msgstr "Formatas" + +msgid "Forward volume keys" +msgstr "" + +msgid "Frame size in full view" +msgstr "Kadro dydis pilname vaizde" + +msgid "French" +msgstr "Prancūzų" + +msgid "Frequency" +msgstr "Dažnis" + +msgid "Frequency bands" +msgstr "Dažnio juostos" + +msgid "Frequency scan step size(khz)" +msgstr "Skanavimo dažnio žingsnio dydis(khz)" + +msgid "Frequency steps" +msgstr "Dažnio žingsniai" + +msgid "Frequency:" +msgstr "" + +msgid "Fri" +msgstr "Pen" + +msgid "Friday" +msgstr "Penktadienis" + +msgid "From :" +msgstr "" + +#, python-format +msgid "Frontprocessor version: %d" +msgstr "Priekinio procesoriaus versija: %d" + +msgid "Full transparency" +msgstr "" + +msgid "Fulview resulution" +msgstr "" + +msgid "Function of OK button" +msgstr "" + +msgid "Further Options" +msgstr "" + +msgid "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" +msgstr "" +"Reikia paleisti iš naujo Enigma2 ,kad patvirtinti naują temą\n" +"Jūs norite paleisti iš naujo Enigma2 dabar?" + +msgid "Gateway" +msgstr "Šliuzas" + +#, fuzzy +msgid "General AC3 delay" +msgstr "Bendras AC3 užlaikymas" + +#, fuzzy +msgid "General PCM delay" +msgstr "Bendras PCM užlaikymas" + +msgid "Genre" +msgstr "Žanras" + +msgid "German" +msgstr "Vokiečių" + +msgid "Get latest experimental image" +msgstr "Gaukite paskutinį bandomąjį atvaizdą" + +msgid "Get latest release image" +msgstr "Gaukite paskutinį atvaizdą" + +msgid "Getting plugin information. Please wait..." +msgstr "Gaunama informacija apie papildomas programas. Prašome palaukti..." + +msgid "Go down the list" +msgstr "" + +msgid "Go to first movie or last item" +msgstr "" + +msgid "Go to first movie or top of list" +msgstr "" + +#, fuzzy +msgid "Go to first service" +msgstr "perkelti aukštyn prie pirmo įėjimo" + +#, fuzzy +msgid "Go to last service" +msgstr "nustatyti kaip paleidimo kanalą" + +#, fuzzy +msgid "Go to next event" +msgstr "perkelti žemyn prie kito įėjimo" + +#, fuzzy +msgid "Go to next page of service" +msgstr "Perjungti į sekantį subkanalą" + +#, fuzzy +msgid "Go to previous event" +msgstr "perkelti aukštyn prie ankstesnio įėjimo" + +#, fuzzy +msgid "Go to previous page of service" +msgstr "Grįžkite į buvusį kanalą" + +msgid "Go up the list" +msgstr "" + +msgid "Goto" +msgstr "" + +msgid "Goto 0" +msgstr "Eiti į 0" + +msgid "Goto :" +msgstr "" + +msgid "Goto X" +msgstr "" + +msgid "Goto index position" +msgstr "" + +msgid "Goto next day of events" +msgstr "" + +msgid "Goto next page of events" +msgstr "" + +msgid "Goto position" +msgstr "Eiti į poziciją" + +msgid "Goto previous day of events" +msgstr "" + +msgid "Goto previous page of events" +msgstr "" + +msgid "Goto specific date/time" +msgstr "" + +msgid "GotoX calibration" +msgstr "" + +msgid "GraphMultiEpg Settings" +msgstr "" + +msgid "Graphical Multi EPG" +msgstr "Grafinis kelių kanalų EPG" + +msgid "Greek" +msgstr "Graikų" + +msgid "Green boost" +msgstr "Žalio didėjimas" + +msgid "Guard interval" +msgstr "Apsaugos intervalas" + +msgid "HD list" +msgstr "" + +msgid "HDMI-CEC setup" +msgstr "" + +msgid "Handle standby from TV" +msgstr "" + +msgid "Handle wakeup from TV" +msgstr "" + +#, fuzzy +msgid "Hard disk" +msgstr "Kietas diskas" + +#, fuzzy +msgid "Hard disk setup" +msgstr "Kieto disko nustatymas" + +#, fuzzy +msgid "Hard disk standby after" +msgstr "Kietas diskas išsijungs po" + +msgid "Harddisk" +msgstr "Kietas diskas" + +msgid "Hardware: " +msgstr "" + +msgid "Hebrew" +msgstr "" + +msgid "Helps setting up your dish" +msgstr "" + +msgid "Hidden network" +msgstr "Paslėptas tinklas" + +msgid "Hide CI messages" +msgstr "Slėpti CI pranešimus" + +msgid "Hide channel list in radio mode" +msgstr "" + +msgid "Hide known extensions" +msgstr "" + +msgid "Hide number markers" +msgstr "" + +#, fuzzy +msgid "Hide player" +msgstr "slėpti grotuvą" + +msgid "Hide zap errors" +msgstr "Slėpti perjungimo klaidas" + +msgid "Hierarchy info" +msgstr "Hierarchijos informacija" + +#, fuzzy +msgid "Hierarchy information" +msgstr "Hierarchijos informacija" + +msgid "High bitrate support" +msgstr "Aukštos bitų spartos palaikymas" + +msgid "Hold screen" +msgstr "" + +msgid "Hold till locked" +msgstr "" + +msgid "Home" +msgstr "" + +msgid "Horizontal" +msgstr "Horizontalus" + +msgid "Horizontal turning speed" +msgstr "" + +msgid "How many minutes do you want to record?" +msgstr "Kiek minučių norite daryti įrašą?" + +msgid "Hue" +msgstr "Atspalvis" + +msgid "Hungarian" +msgstr "Vengrų" + +#, fuzzy +msgid "IP address" +msgstr "IP adresas" + +msgid "ISO file is too large for this filesystem!" +msgstr "ISO failas yra per didelis šiai failų sistemai!" + +msgid "ISO path" +msgstr "ISO kelias" + +msgid "Icons" +msgstr "" + +msgid "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." +msgstr "" +"Jeigu Jūs tai skaitote, kažkas negerai su\n" +"jūsų skarto pajungimu. Spauskite OK norint grįžti." + +msgid "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." +msgstr "" +"Jeigu jūsų televizorius turi šviesumo arba kontrasto padidinimą, patvirtinkite tai. Jeigu yra kažkas pavadinta kaip \"dinaminis \", tai nustatykite tai, kaip standartą. Nustatykite šviesumo lygį, kuris yra jums tinkamiausias. Nustatykite kontrastą savo televizoriui tiek, kiek tai įmanoma.\n" +"Tada nustatykite šviesumą tiek mažai kiek tai įmanoma, bet įsitikinkite kad du patys žemiausi pilki atspalviai yra atskirti. \n" +"Dabar nebesirūpinkite šviesiais atspalviais . Jie bus nustatyti sekančiame žingsnyje.\n" +"Jeigu Jūs patenkinti gautu rezultatu, spauskite OK." + +msgid "Image: " +msgstr "" + +#, fuzzy +msgid "Immediate shutdown" +msgstr "neatidėliotinas išjungimas" + +msgid "In order to record a timer, the TV was switched to the recording service!\n" +msgstr "Pradėjus rašyti pagal pasirinktą laikmatį, TV bus perjungtas į įrašomą kanalą!\n" + +#, fuzzy +msgid "In progress" +msgstr "Vykdymas" + +msgid "Inactivity Sleeptimer" +msgstr "" + +msgid "Include AIT in http streams" +msgstr "" + +msgid "Include ECM in http streams" +msgstr "" + +msgid "Include EIT in http streams" +msgstr "" + +msgid "Incorrect type service for PiP!" +msgstr "" + +msgid "Increased voltage" +msgstr "Padidinta įtampa" + +msgid "Index" +msgstr "Indeksas" + +msgid "Index allocated:" +msgstr "" + +msgid "Info" +msgstr "Informacija" + +#, fuzzy +msgid "Info bar" +msgstr "Infojuosta" + +#, fuzzy +msgid "Info bar timeout" +msgstr "Infojuosta išsijungs po" + +msgid "Infobar frontend data source" +msgstr "" + +msgid "Information" +msgstr "Informacija" + +msgid "Init" +msgstr "Inicializacija" + +#, fuzzy +msgid "Initial fast forward speed" +msgstr "Pradinis greito persukimo greitis" + +msgid "Initial location in new timers" +msgstr "Pradinė naujų laikmačių vieta" + +msgid "Initial lock ratio" +msgstr "" + +#, fuzzy +msgid "Initial rewind speed" +msgstr "Pradinis atsukimo greitis" + +msgid "Initial signal quality" +msgstr "" + +msgid "Initial signal quality:" +msgstr "" + +msgid "Initialization" +msgstr "Inicializavimas" + +msgid "Initialize" +msgstr "Inicializuoti" + +msgid "Initializing storage device..." +msgstr "Įrenginio inicializavimas..." + +msgid "Input" +msgstr "Įėjimas" + +msgid "Input device setup" +msgstr "Prietaiso įvesties valdymas" + +msgid "Input devices" +msgstr "Įvesties prietaisai" + +msgid "Install" +msgstr "Įdiegti" + +msgid "Install a new image with a USB stick" +msgstr "Įdiekite naują atvaizdą su USB raktu" + +msgid "Install a new image with your web browser" +msgstr "Įdiekite naują atvaizdą su savo tinklo naršykle" + +#, fuzzy +msgid "Install channel list" +msgstr "kitas kanalas į istoriją" + +msgid "Install extensions" +msgstr "" + +msgid "Install extensions." +msgstr "Įdiekite išplėtimus." + +msgid "Install local extension" +msgstr "Įdiekite vietinį išplėtimą" + +msgid "Install picons on" +msgstr "" + +#, fuzzy +msgid "Install softcam" +msgstr "Įdiegiama programinė įranga..." + +#, fuzzy +msgid "Installation has completed." +msgstr "Įdiegimas baigtas." + +#, fuzzy +msgid "Installation or removal has completed." +msgstr "Įdiegimas arba pašalinimas baigtas." + +msgid "Installing" +msgstr "Įdiegiama" + +#, fuzzy +msgid "Installing software..." +msgstr "Įdiegiama programinė įranga..." + +#, fuzzy +msgid "Instant recording location" +msgstr "Greito įrašo vieta" + +#, fuzzy +msgid "Instant recording..." +msgstr "Greitas įrašas..." + +msgid "Interface: " +msgstr "Sąsaja:" + +msgid "Intermediate" +msgstr "Normalus" + +#, fuzzy +msgid "Internal flash" +msgstr "Vidinė atmintinė" + +msgid "Internal hdd only" +msgstr "" + +msgid "Interval between keys when repeating:" +msgstr "" + +#, python-format +msgid "Invalid directory selected: %s" +msgstr "Negaliojanti pasirinkta direktorija: %s" + +#, fuzzy +msgid "Invalid location" +msgstr "Neteisinga vieta" + +msgid "Invalid transponder data" +msgstr "" + +msgid "Inversion" +msgstr "Pervertimas" + +msgid "Invert" +msgstr "" + +msgid "Ipkg" +msgstr "Ipkg" + +#, fuzzy +msgid "Is this setting ok?" +msgstr "Naudoti šiuos nustatymus?" + +#, fuzzy +msgid "Is this video mode ok?" +msgstr "Šis vaizdo būdas geras?" + +msgid "Italian" +msgstr "Italų" + +msgid "Items per page " +msgstr "" + +msgid "Items per page for list screen" +msgstr "" + +#, fuzzy +msgid "Job overview" +msgstr "Darbo vaizdas" + +msgid "Jump to beginning of list" +msgstr "" + +#, fuzzy +msgid "Jump to end of list" +msgstr "šuolis į pabaigos sąrašą" + +#, fuzzy +msgid "Jump to next marked position" +msgstr "šuolis į sekančią pažymėtą vietą" + +#, fuzzy +msgid "Jump to previous marked position" +msgstr "šuolis į ankstesnę pažymėtą vietą" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect) +#, fuzzy +msgid "Just scale" +msgstr "Tik skalė" + +msgid "Keep service" +msgstr "" + +#, fuzzy +msgid "Kernel version: " +msgstr "Nauja versija:" + +msgid "Keyboard" +msgstr "Klaviatūra" + +#, fuzzy +msgid "Keyboard map" +msgstr "Klaviatūros išdėstymas" + +#, fuzzy +msgid "Keyboard setup" +msgstr "Klaviatūros nustatymas" + +#, fuzzy +msgid "LAN adapter" +msgstr "Tinklo adapteris" + +msgid "LAN connection" +msgstr "LAN prisijungimas" + +msgid "LNB" +msgstr "LNB konverteris" + +msgid "Language" +msgstr "Kalba" + +msgid "Language selection" +msgstr "Kalbos pasirinkimas" + +msgid "Last config" +msgstr "Paskutinis config" + +msgid "Last speed" +msgstr "Paskutinis greitis" + +msgid "Last upgrade: " +msgstr "" + +msgid "Latest Commits" +msgstr "" + +msgid "Latitude" +msgstr "Platuma" + +msgid "Latvian" +msgstr "Latvių" + +#, fuzzy +msgid "Leave DVD player?" +msgstr "Išeiti iš DVD grotuvo?" + +msgid "Left" +msgstr "Kairė" + +msgid "Left from servicename" +msgstr "" + +msgid "Leisure hobbies" +msgstr "" + +#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term. +msgid "Letterbox" +msgstr "Letterbox" + +msgid "Letterbox zoom" +msgstr "" + +#, fuzzy +msgid "Limit character set for recording filenames" +msgstr "Ribotas simbolių pasirinkimas , dėl įrašytų failų pavadinimų" + +msgid "Limit east" +msgstr "Rytų riba" + +msgid "Limit the characters that can be used in recording filenames to (7 bit) ascii. This ensures compatibility with operating systems or file systems with limited character sets." +msgstr "" + +msgid "Limit west" +msgstr "Vakarų riba" + +msgid "Limits cancelled" +msgstr "" + +msgid "Limits enabled" +msgstr "" + +msgid "Limits off" +msgstr "Ribos išjungtos" + +msgid "Limits on" +msgstr "Ribos įjungtos" + +#, fuzzy +msgid "Link quality:" +msgstr "Sąsajos Kokybė:" + +msgid "Link:" +msgstr "Sąsaja:" + +msgid "Linked titles with a DVD menu" +msgstr "Sujungti pavadinimai su DVD meniu" + +#, fuzzy +msgid "List EPG functions..." +msgstr "EPG vaizdų sąrašas..." + +msgid "List available networks" +msgstr "Galimų tinklų sąrašas" + +msgid "List mode" +msgstr "" + +#, fuzzy +msgid "List of storage devices" +msgstr "Išsaugotų įrenginių sąrašas" + +msgid "List type" +msgstr "" + +#, python-format +msgid "List version %d, found %d channel" +msgid_plural "List version %d, found %d channels" +msgstr[0] "" +msgstr[1] "" + +#, fuzzy +msgid "Listen to the radio..." +msgstr "klausytis radijo..." + +msgid "Lists reloaded!" +msgstr "" + +msgid "Lithuanian" +msgstr "Lietuvių" + +msgid "Load" +msgstr "Užkraunama" + +msgid "Load Length of Movies in Movielist" +msgstr "" + +#, fuzzy +msgid "Load length of movies in movie list" +msgstr "Užkrauti kino filmų ilgį filmo sąraše" + +#, fuzzy +msgid "Load playlist" +msgstr "užkraunamas grojaraštis" + +#, fuzzy +msgid "Local network" +msgstr "Vietinis tinklas" + +msgid "Location" +msgstr "Vieta" + +msgid "Location for instant recordings" +msgstr "Vieta greitiems įrašams" + +msgid "Lock ratio" +msgstr "" + +msgid "Lock:" +msgstr "Lock:" + +msgid "Log results to harddisk" +msgstr "Log rezultatus į kietą diską" + +msgid "Long filenames" +msgstr "Ilgi failų pavadinimai" + +#, fuzzy +msgid "Long key press" +msgstr "Ilgas mygtuko spaudimas" + +msgid "Longitude" +msgstr "Ilguma" + +msgid "Loop through to" +msgstr "" + +msgid "Luxembourgish" +msgstr "" + +#, fuzzy +msgid "MMC card" +msgstr "MMC kortelė" + +msgid "MORE" +msgstr "DAUGIAU" + +msgid "Main menu" +msgstr "Pagrindinis meniu" + +msgid "Maintain old EPG data for" +msgstr "" + +msgid "Make this mark an 'in' point" +msgstr "Padarykite šį žymeklį 'įėjimo' taške" + +msgid "Make this mark an 'out' point" +msgstr "Padarykite šį žymeklį 'išėjimo' taške" + +msgid "Make this mark just a mark" +msgstr "Padarykite šį žymeklį kaip žymekliu" + +msgid "Manage extensions" +msgstr "Išplėtimų valdymas" + +msgid "Manage your receiver's software" +msgstr "Valdykite savo imtuvo programinę įrangą" + +msgid "Manual" +msgstr "" + +msgid "Manual Scan" +msgstr "Rankinė paieška" + +msgid "Manual configuration" +msgstr "Rankinė konfigūracija" + +#, fuzzy +msgid "Manual scan" +msgstr "Rankinė paieška" + +msgid "Manual transponder" +msgstr "Rankinis transponderis" + +msgid "Manufacturer" +msgstr "Gamintojas" + +#, fuzzy +msgid "Margin after recording (minutes)" +msgstr "Sujungti prieš įrašymą (minutėmis)" + +#, fuzzy +msgid "Margin before recording (minutes)" +msgstr "Sujungti prieš įrašymą (minutėmis)" + +msgid "Max memory positions" +msgstr "" + +#, fuzzy +msgid "Max. bitrate: " +msgstr "Maks. Sparta bitais:" + +msgid "Media player" +msgstr "Media grotuvas" + +#, fuzzy +msgid "Media scanner" +msgstr "Media grotuvas" + +msgid "Medium is not a writeable DVD!" +msgstr "Tai ne įrašomas DVD!" + +msgid "Medium is not empty!" +msgstr "Ne tuščias!" + +msgid "Memory" +msgstr "" + +msgid "Memory index" +msgstr "" + +msgid "Menu" +msgstr "Meniu" + +msgid "Message" +msgstr "Pranešimas" + +msgid "Message..." +msgstr "Žinutė..." + +#, python-format +msgid "Minimum age %d years" +msgstr "" + +#, fuzzy +msgid "Minimum send interval" +msgstr "Apsaugos intervalas" + +msgid "Missing " +msgstr "" + +#, fuzzy +msgctxt "Satellite configuration mode" +msgid "Mode" +msgstr "Pasirinkimas" + +#, fuzzy +msgctxt "Video output mode" +msgid "Mode" +msgstr "Pasirinkimas" + +msgid "Model: " +msgstr "Modelis:" + +msgid "Modulation" +msgstr "Paaukštėjimas" + +msgid "Modulator" +msgstr "Moduliatorius" + +msgid "Mon" +msgstr "Pir" + +msgid "Mon-Fri" +msgstr "Pir-Pen" + +msgid "Monday" +msgstr "Pirmadienis" + +msgid "Mosquito noise reduction" +msgstr "Uodo triukšmo sumažėjimas" + +msgid "Mount" +msgstr "" + +msgid "Move" +msgstr "" + +#, fuzzy +msgid "Move PiP to main picture" +msgstr "perkelti PiP į mano paveikslėlį" + +msgid "Move Picture in Picture" +msgstr "Perkelti paveikslėlį į paveikslėlį" + +msgid "Move east" +msgstr "Sukti į rytus" + +msgid "Move to other directory" +msgstr "" + +msgid "Move to position X" +msgstr "" + +msgid "Move west" +msgstr "Sukti į vakarus" + +msgid "Moved to position 0" +msgstr "" + +msgid "Moved to position at index" +msgstr "" + +msgid "Movement" +msgstr "" + +msgid "Movie List Configuration" +msgstr "" + +msgid "Movie Selection" +msgstr "" + +#, fuzzy +msgid "Movie list configuration" +msgstr "Rankinė konfigūracija" + +msgid "Movie location" +msgstr "Filmo vieta" + +#, fuzzy +msgid "Movie selection" +msgstr "Filmo vieta" + +msgid "Movie/Drama" +msgstr "" + +msgid "Movielist menu" +msgstr "Filmų sąrašo meniu" + +msgid "Moving" +msgstr "" + +msgid "Moving east ..." +msgstr "" + +msgid "Moving to position" +msgstr "" + +msgid "Moving west ..." +msgstr "" + +msgid "Multi EPG" +msgstr "Kanalų EPG" + +msgid "Multi-EPG bouquet selection" +msgstr "Multi-EPG paketų pasirinkimas" + +msgid "Multimedia" +msgstr "Multimedija" + +msgid "Multiple service support" +msgstr "Kelių kanalų palaikymas" + +msgid "Multiplex" +msgstr "Sudėtingas" + +msgid "Multisat" +msgstr "Daug palydovų" + +msgid "Multisat all select" +msgstr "" + +msgid "Music/Ballet/Dance" +msgstr "" + +msgid "Mute" +msgstr "Be garso" + +msgid "N/A" +msgstr "N/A" + +msgid "NEXT" +msgstr "KITAS" + +#, fuzzy +msgid "NFI image flashing" +msgstr "NFI atvaizdo įdiegimas" + +msgid "NFI image flashing completed. Press Yellow to Reboot!" +msgstr "NFI atvaizdo diegimas baigtas. Spauskite geltoną mygtuką, kad paleisti iš naujo!" + +msgid "NIM" +msgstr "NIM" + +msgid "NOW" +msgstr "DABAR" + +msgid "NTSC" +msgstr "NTSC" + +msgid "Name" +msgstr "Pavadinimas" + +msgid "Nameserver" +msgstr "Serverio pavadinimas" + +#, python-format +msgid "Nameserver %d" +msgstr "Serverio pavadinimas %d" + +msgid "Nameserver settings" +msgstr "Serverio pavadinimas" + +#, fuzzy +msgid "Nameserver setup" +msgstr "Serverio nustatymas" + +msgid "Namespace" +msgstr "Pavadinimnų erdvė" + +msgid "Netmask" +msgstr "Potinklio kaukė" + +msgid "Network" +msgstr "Tinklas" + +msgid "Network ID" +msgstr "" + +#, fuzzy +msgid "Network configuration..." +msgstr "Tinklo konfigūracija..." + +#, fuzzy +msgid "Network mount" +msgstr "Pajungti tinklą" + +#, fuzzy, python-format +msgid "Network mount %s" +msgstr "Pajungti tinklą" + +#, fuzzy +msgid "Network name (SSID)" +msgstr "Tinklo pavadinimas (SSID)" + +msgid "Network scan" +msgstr "Tinklo skanavimas" + +msgid "Network setup" +msgstr "Tinklo nustatymas" + +msgid "Network test" +msgstr "Tinklo testavimas" + +msgid "Network test..." +msgstr "Tinklo testavimas..." + +msgid "Network test: " +msgstr "Tinklo bandymas:" + +#, fuzzy +msgid "Network wizard" +msgstr "Tinklo vedlys" + +msgid "Network:" +msgstr "Tinklas:" + +msgid "New" +msgstr "Naujas" + +msgid "New PIN" +msgstr "Naujas PIN" + +msgid "New version:" +msgstr "Nauja versija:" + +msgid "News Current Affairs" +msgstr "" + +msgctxt "button label, 'next screen'" +msgid "Next" +msgstr "" + +msgctxt "now/next: 'next' event label" +msgid "Next" +msgstr "" + +msgid "No" +msgstr "Ne" + +msgid "No (supported) DVDROM found!" +msgstr "Palaikomas DVDROM nesurastas!" + +msgid "No Connection" +msgstr "Nėra prisijungimo" + +msgid "No HDD found or HDD not initialized!" +msgstr "Kietas diskas nerastas arba neinicializuotas!" + +msgid "No backup needed" +msgstr "Atsarginės kopijos nereikia" + +msgid "No cable tuner found!" +msgstr "" + +msgid "" +"No data on transponder!\n" +"(Timeout reading PAT)" +msgstr "" +"Nėra duomenų iš transponderio!\n" +"(Skaitymo pertrauka PAT)" + +msgid "No delay" +msgstr "" + +msgid "No description available." +msgstr "Joks apibūdinimas nepasiekiamas." + +msgid "No details for this image file" +msgstr "Nėra informacijos apie šį atvaizdą" + +msgid "No displayable files on this medium found!" +msgstr "Jokių failų čia nerasta!" + +msgid "No event info found, recording indefinitely." +msgstr "Informacija apie įvykius nerasta, tęsiamas įrašymas." + +msgid "No fast winding possible yet.. but you can use the number buttons to skip forward/backward!" +msgstr "Joks greitas vingiavimas, galimas dar.. bet jūs galite panaudoti skaičių mygtukus, kad praleistumėte pirmyn/atgal!" + +msgid "No free index available" +msgstr "" + +msgid "No free tuner!" +msgstr "Nėra laisvo imtuvo!" + +msgid "No network connection available." +msgstr "Joks tinklo ryšys nepasiekiamas." + +msgid "No networks found" +msgstr "Jokie tinklai nesurasti" + +msgid "No new plugins found" +msgstr "" + +msgid "No positioner capable frontend found." +msgstr "Nėra pozicionieriaus, kuris rastų priekinį kraštą." + +msgid "No satellites configured. Plese check your tuner setup." +msgstr "" + +msgid "No service" +msgstr "" + +#, fuzzy +msgid "No services/providers selected" +msgstr "jokie Kanalai/Tiekėjai neišsirinkti" + +#, fuzzy +msgid "No standby" +msgstr "nebudėti" + +msgid "No suitable sat tuner found!" +msgstr "" + +msgid "No tags are set on these movies." +msgstr "Jokios kortelės su užrašu nėra nustatytos šiems kino filmams" + +#, fuzzy +msgid "No timeout" +msgstr "nedaryti pertraukos" + +msgid "No to all" +msgstr "Ne į visus" + +msgid "No transparency" +msgstr "" + +msgid "No tuner is configured for use with a diseqc positioner!" +msgstr "Nėra imtuvo, suderinto naudotis su diseqc pozicionieriumi!" + +msgid "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Imtuvas neįjungtas!\n" +"Prašome nustatyti Jūsų imtuvą, prieš pradedant ieškoti kanalų." + +#, fuzzy +msgid "No updates available" +msgstr " pasiekiami atnaujinimai." + +msgid "No updates available. Please try again later." +msgstr "" + +msgid "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" +msgstr "" +"Teisingas kanalo PIN nerastas!\n" +"Jūs norite pakeisti kanalo PIN dabar?\n" +"Jeigu jūs atsakysite 'NE', tai kanalo apsauga \n" +"nebus įjungta!" + +msgid "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" +msgstr "" +"Teisingas nustatymų PIN nerastas!\n" +"Jūs norite pakeisti nustatymų PIN dabar?\n" +"Jeigu jūs atsakysite 'NE', tai kanalo apsauga \n" +"nebus įjungta!" + +msgid "No wireless networks found! Searching..." +msgstr "Belaidžių tinklų nerasta! Vyksta paieška ..." + +msgid "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." +msgstr "" +"Joks veikiantis vietinio tinklo adapteris, nerastas.\n" +"Prašome patikrinti, ar jūs prijungėte tinklo kabelį, ir ar jūsų tinklas yra sukonfigūruotas teisingai." + +msgid "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." +msgstr "" +"Joks veikiantis belaidžio tinklo adapteris nerastas.\n" +"Prašome patikrinti, ar jūs pridėjote suderinamą WLAN prietaisą, ir ar jūsų tinklas yra sukonfigūruotas teisingai." + +msgid "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." +msgstr "" +"Jokia veikianti belaidžio tinklo sąsaja nerasta.\n" +"Prašome patikrinti, kad jūs pridėjote suderinamą WLAN prietaisą ar įjungėte jūsų vietinio tinklo sąsają." + +msgid "No, but restart from begin" +msgstr "Ne, paleisti nuo pradžių" + +msgid "No, do nothing." +msgstr "Ne, nereikia" + +msgid "No, just start my receiver" +msgstr "" + +msgid "No, never" +msgstr "Ne, niekada" + +msgid "None" +msgstr "Joks" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right) +msgid "Nonlinear" +msgstr "Nelinijinis" + +msgid "Normal mode" +msgstr "" + +msgid "North" +msgstr "Šiaurė" + +msgid "Norwegian" +msgstr "Norvegų" + +#, fuzzy +msgid "Not associated" +msgstr "Ne-Asocijuotas" + +msgid "Not configured" +msgstr "" + +#, fuzzy, python-format +msgid "Not enough disk space. Please free up some disk space and try again. (%d MB required, %d MB available)" +msgstr "Nepakanka laisvos vietos diske. Prašome atlaisvinti vietos diske ir pabandyti dar kartą. (Reikalinga %d MB, %d esama MB)" + +msgid "Nothing connected" +msgstr "" + +msgid "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Nėra ko ieškoti!\n" +"Prašome, suderinkite savo imtuvą prieš paleidžiant kanalų skanavimą." + +msgctxt "now/next: 'now' event label" +msgid "Now" +msgstr "" + +#, fuzzy +msgid "Now playing" +msgstr "Dabar grojama" + +msgid "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." +msgstr "Dabar, atlikite kontrasto nustatymą, kad padidinti fono šviesumą tiek kiek įmanoma, bet įsitikinkite, kad jūs galite vis dar pamatyti skirtumą tarp dviejų ryškiausių atspalvių lygmenų. Jei jūs baigėte,tai spauskite OK." + +msgid "OK" +msgstr "Gerai" + +msgid "OK, guide me through the upgrade process" +msgstr "Gerai, informuoti mane apie atnaujinimo eigą" + +msgid "ONID" +msgstr "ONID" + +msgid "OSD name request" +msgstr "" + +#, fuzzy +msgid "OSD settings" +msgstr "OSD nustatymai" + +msgid "OSD transparency" +msgstr "" + +msgid "Off" +msgstr "Išjungta" + +msgid "Offline decode delay (ms)" +msgstr "" + +msgid "Ok" +msgstr "" + +msgid "On" +msgstr "Įjungta" + +msgid "On end of movie" +msgstr "" + +msgid "On end of movie (as menu)" +msgstr "" + +msgid "One" +msgstr "Vienas" + +msgid "Only extensions." +msgstr "Tik išplėtimus." + +#, fuzzy +msgid "Only free scan" +msgstr "Tik nekoduotus" + +#, fuzzy +msgid "Open service list" +msgstr "atidaryti kanalų sąrašą" + +#, fuzzy +msgid "Open the movie list" +msgstr "Grįžti į filmų sąrašą" + +msgid "Orbital position" +msgstr "Pozicija orbitoje" + +msgid "Original" +msgstr "" + +msgid "Other" +msgstr "" + +msgid "Output" +msgstr "" + +msgid "Overwrite configuration files during software upgrade?" +msgstr "Perrašyti konfigūracijos failus per programinės įrangos atnaujinimą?" + +#, fuzzy +msgid "Overwrite configuration files?" +msgstr "Perrašyti konfigūracijos failus ?" + +msgid "PAL" +msgstr "PAL" + +msgid "PCR PID" +msgstr "PCR PID" + +msgid "PIDs" +msgstr "PIDs" + +#, fuzzy +msgid "PIN code needed" +msgstr "Reikalingas pin kodas" + +msgid "PLP ID" +msgstr "" + +msgid "PMT PID" +msgstr "PMT PID" + +msgid "Package list update" +msgstr "Paketo sąrašo atnaujinimas" + +msgid "Packet management" +msgstr "Paketų valdymas" + +msgid "Packet manager" +msgstr "Paketo valdytojas" + +#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term +#, fuzzy +msgid "Pan&scan" +msgstr "Pan&Scan" + +#, fuzzy +msgid "Parent directory" +msgstr "Pagrindinė direktorija" + +msgid "Parental control" +msgstr "Tėvų kontrolė" + +#, fuzzy +msgid "Parental control services editor" +msgstr "Tėvų kontrolės kanalų redaktorius" + +msgid "Parental control setup" +msgstr "Tėvų kontrolės nustatymai" + +msgid "Parental control type" +msgstr "Tėvų kontrolės rūšis" + +msgid "Password" +msgstr "Slaptažodis" + +#, fuzzy +msgid "Pause" +msgstr "pauzė" + +msgid "Pause movie at end" +msgstr "Filmo pauzė pabaigoje" + +#, fuzzy +msgid "Pause playback" +msgstr "Tęsti leidimą" + +msgid "Pauze/Continue playback" +msgstr "" + +msgid "Percentage left" +msgstr "" + +#, fuzzy +msgid "Percentage right" +msgstr "Apskritiminė dešinė" + +msgid "Permanently delete all recordings in the trash can?" +msgstr "" + +msgid "Permanently remove all deleted items" +msgstr "" + +msgid "Persian" +msgstr "Persų" + +msgid "Phone number" +msgstr "Telefono numeris" + +#, fuzzy +msgid "PiP setup" +msgstr "PiP nustatymas" + +msgid "Picon" +msgstr "" + +msgid "Picon and service name" +msgstr "" + +#, fuzzy +msgid "Picture player" +msgstr "Paveikslėlių grotuvas" + +#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term. +msgid "Pillarbox" +msgstr "Pillarbox" + +msgid "Pilot" +msgstr "Pilot" + +msgid "Play" +msgstr "Leisti" + +msgid "Play DVD" +msgstr "Leisti DVD" + +msgid "Play audio in background" +msgstr "" + +#, fuzzy +msgid "Play audio-CD..." +msgstr "Paleisti Garso-CD..." + +msgid "Play back media files" +msgstr "" + +#, fuzzy +msgid "Play entry" +msgstr "leisti įrašą" + +#, fuzzy +msgid "Play from next mark or playlist entry" +msgstr "leisti nuo kito žymeklio arba grojaraščio užduoties" + +#, fuzzy +msgid "Play from previous mark or playlist entry" +msgstr "leisti nuo buvusio žymeklio arba grojaraščio užduoties" + +#, fuzzy +msgid "Play music..." +msgstr "Groti muziką..." + +msgid "Play next" +msgstr "" + +msgid "Play next (return to movie list)" +msgstr "" + +msgid "Play next (return to previous service)" +msgstr "" + +msgid "Play previous" +msgstr "" + +msgid "Play recorded movies..." +msgstr "Leisti įrašytus filmus..." + +msgid "Please add titles to the compilation." +msgstr "Prašome pridėti pavadinimus į kompiliaciją." + +msgid "Please change recording endtime" +msgstr "Prašome pakeisti įrašymo pabaigos laiką" + +msgid "Please check your network settings!" +msgstr "Prašome tikrinti savo tinklo nustatymus!" + +msgid "Please choose an extension..." +msgstr "Prašome išsirinkti papildymus..." + +msgid "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Prašome sukonfigūruoti savo serverių pavadinimus, užpildydami būtinas reikšmes. \n" +"Kai jūs esate pasiruošęs, prašome spausti OK, kad tęsti." + +msgid "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Prašome sukonfigūruoti savo interneto ryšį, užpildydami būtinas reikšmes. \n" +"Kai jūs esate pasiruošęs, prašome spausti OK, kad tęsti." + +msgid "Please connect your receiver to the internet" +msgstr "" + +msgid "Please do not change any values unless you know what you are doing!" +msgstr "Prašome nekeisti reikšmių, jeigu Jūs nežinote ką darote! " + +msgid "Please enter a name for the new bouquet" +msgstr "Prašome įrašyti naujo paketo pavadinimą" + +msgid "Please enter a name for the new marker" +msgstr "Prašome įrašyti naujo žymeklio pavadinimą" + +msgid "Please enter a new filename" +msgstr "Prašome įrašyti naują failo pavadinimą" + +msgid "Please enter filename (empty = use current date)" +msgstr "Prašome įrašyti failo pavadinimą (tuščias = dabartiniai duomenys)" + +msgid "Please enter name of the new directory" +msgstr "Prašome įrašyti naujos direktorijos pavadinimą" + +msgid "Please enter new name:" +msgstr "" + +msgid "Please enter the correct pin code" +msgstr "Prašome įrašyti teisingą PIN kodą" + +msgid "Please enter the old PIN code" +msgstr "Prašome įrašyti seną PIN kodą" + +msgid "Please follow the instructions on the TV" +msgstr "Prašome sekti instrukcijas televizoriuje" + +msgid "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." +msgstr "Prašome žinoti, kad prie anksčiau išsirinktos medios negalėjote gauti prieigos, ir todėl numatyta direktorija yra naudojama vietoj tos." + +msgid "Please press OK to continue." +msgstr "Prašome spausti OK, kad tęsti." + +msgid "Please select a default EPG type..." +msgstr "" + +msgid "Please select a playlist to delete..." +msgstr "Prašome išsirinkti ką norite trinti iš grojaraščio..." + +msgid "Please select a playlist..." +msgstr "Prašome išsirinkti grojaraštį" + +#, fuzzy +msgid "Please select a sub service..." +msgstr "Prašome išsirinkti subkanalą..." + +msgid "Please select a subservice to record..." +msgstr "Prašome išsirinkti subkanalą dėl įrašymo..." + +msgid "Please select a subservice..." +msgstr "Prašome išsirinkti subkanalą..." + +msgid "Please select an NFI file and press green key to flash!" +msgstr "Prašome išsirinkti NFI failą ir spauskite žalią mygtuką atvaizdo užkrovumui!" + +#, fuzzy +msgid "Please select medium to be scanned" +msgstr "Prašome išsirinkti sritį kuri bus skanuojama" + +msgid "Please select medium to use as backup location" +msgstr "Prašome išsirinkti tai, kaip atsarginės kopijos vietą" + +msgid "Please select tag to filter..." +msgstr "Prašome išsirinkti kortelę filtravimui..." + +msgid "Please select the movie path..." +msgstr "Prašome išsirinkti filmo kelią..." + +msgid "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Prašome išsirinkti tinklo sąsają, kurią jūs norite panaudoti jūsų interneto ryšiui.\n" +"\n" +"Prašome spausti OK, kad tęsti." + +msgid "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Prašome išsirinkti belaidį tinklą, prie kurio norite prisijungti.\n" +"\n" +"Prašome spausti OK, kad tęsti." + +#, fuzzy +msgid "Please set up tuner A" +msgstr "Prašome nustatyti imtuvą B" + +msgid "Please set up tuner B" +msgstr "Prašome nustatyti imtuvą B" + +msgid "Please set up tuner C" +msgstr "Prašome nustatyti imtuvą C" + +msgid "Please set up tuner D" +msgstr "Prašome nustatyti imtuvą D" + +msgid "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." +msgstr "" +"Prašome, naudoti valdymo mygtukus dėl PiP lango perkėlimo.\n" +"Spauskite Bouquet +/- dėl lango dydžio pakeitimo.\n" +"Spauskite OK norint grįžti į TV arba EXIT norint nutraukti judėjimą." + +msgid "Please use the UP and DOWN keys to select your language. Afterwards press the OK button." +msgstr "Prašome naudoti AUKŠTYN IR ŽEMYN mygtukus, kad išsirinktumėte savo kalbą. Po to spauskite OK mygtuką." + +msgid "Please wait" +msgstr "" + +#, fuzzy +msgid "Please wait (downloading channel list)" +msgstr "Prašome laukti... Užkraunamas sąrašas..." + +#, fuzzy +msgid "Please wait (downloading softcam)" +msgstr "Prašome laukti... Užkraunamas sąrašas..." + +#, fuzzy +msgid "Please wait (updating packages)" +msgstr "laukite...užkraunamas paveikslėlis" + +msgid "Please wait for activation of your network configuration..." +msgstr "Prašome laukti jūsų tinklo konfigūracijos aktyvavimo..." + +msgid "Please wait while scanning is in progress..." +msgstr "Prašome laukti kol vyksta skanavimas..." + +msgid "Please wait while we configure your network..." +msgstr "Prašome laukti kol konfigūruojamas jūsų tinklas..." + +msgid "Please wait while we prepare your network interfaces..." +msgstr "Prašome laukti kol ruošiame jūsų tinklo sąsajas..." + +msgid "Please wait while we test your network..." +msgstr "Prašome laukti kol testuojamas jūsų tinklas..." + +msgid "Please wait while your network is restarting..." +msgstr "Prašome laukti kol paleidžiamas iš naujo jūsų tinklas..." + +msgid "Please wait..." +msgstr "Prašome laukti..." + +msgid "Please wait... Loading list..." +msgstr "Prašome laukti... Užkraunamas sąrašas..." + +msgid "Plugin browser" +msgstr "Papildomų programų naršyklė" + +msgid "Plugin manager activity information" +msgstr "Papildomų programų aktyvumo informacija" + +msgid "Plugin manager help" +msgstr "Papildomų programų valdymo pagalba" + +msgid "Plugins" +msgstr "Papildomos programos" + +msgid "Polarisation" +msgstr "" + +msgid "Polarisation:" +msgstr "" + +msgid "Polarization" +msgstr "Poliarizacija" + +msgid "Polish" +msgstr "Lenkų" + +msgid "Port A" +msgstr "Jungtis A" + +msgid "Port B" +msgstr "Jungtis B" + +msgid "Port C" +msgstr "Jungtis C" + +msgid "Port D" +msgstr "Jungtis D" + +msgid "Portuguese" +msgstr "Portugalų" + +#, fuzzy +msgid "Position of completed timers in timerlist" +msgstr "Baigtų laikmačių padėtis laikmačio sąraše" + +msgid "Position stored at index" +msgstr "" + +msgid "Positioner" +msgstr "Pozicionierius" + +msgid "Positioner (selecting satellites)" +msgstr "" + +msgid "Positioner Setup" +msgstr "" + +msgid "Positioner setup" +msgstr "Pozicionieriaus nustatymas" + +msgid "Power threshold in mA" +msgstr "Įtampos galia mA" + +msgid "Predefined transponder" +msgstr "Nustatytas transponderis" + +msgid "Prefer AC3 track" +msgstr "" + +msgid "Prefer AC3+ track" +msgstr "" + +msgid "Prefer audio track stored by service" +msgstr "" + +msgid "Prefer graphical DVB subtitles" +msgstr "" + +msgid "Prefer subtitles for hearing impaired" +msgstr "" + +msgid "Prefer subtitles stored by service" +msgstr "" + +msgid "Preferred tuner" +msgstr "Imtuvo pirmenybė" + +msgid "Preferred tuner for recordings" +msgstr "" + +msgid "Prepare another USB stick for image flashing" +msgstr "Paruoškite kitą USB laikmeną atvaizdo užkrovimui" + +msgid "Preparing... Please wait" +msgstr "Pasiruošiama... Prašome laukti" + +msgid "Press '0' to toggle PiP mode" +msgstr "" + +msgid "Press INFO on your remote control for additional information." +msgstr "Spauskite INFO ant savo distancinio valdymo pulto dėl papildomos informacijos." + +msgid "Press MENU on your remote control for additional options." +msgstr "Spauskite MENU ant savo distancinio valdymo pulto papildomam pasirinkimui." + +msgid "Press OK on your remote control to continue." +msgstr "Spauskite OK savo valdymo pulte ir tęskite." + +msgid "Press OK to activate the selected skin." +msgstr "Spauskite OK, kad aktyvuoti pasirinktą temą." + +msgid "Press OK to activate the settings." +msgstr "Spauskite OK norėdami aktyvuoti nustatymus" + +msgid "Press OK to edit the settings." +msgstr "Spauskite OK ir redaguokite nustatymus." + +#, python-format +msgid "Press OK to get further details for %s" +msgstr "Spauskite OK, kad gautumėte tolimesnes detales dėl %s" + +msgid "Press OK to scan" +msgstr "Spauskite OK paieškai." + +#, fuzzy +msgid "Press OK to select a provider." +msgstr "Spauskite OK, kad pasirinkti tiekėją." + +msgid "Press OK to select satellites" +msgstr "" + +msgid "Press OK to select/deselect a CAId." +msgstr "Spauskite OK, kad pasirinkti/nepasirinkti CAId." + +msgid "Press OK to start the scan" +msgstr "Spauskite OK norėdami pradėti paiešką." + +msgid "Press OK to toggle the selection" +msgstr "" + +msgid "Press OK to toggle the selection." +msgstr "Spauskite OK dėl pasirinkimo." + +msgid "Press yellow to set this interface as default interface." +msgstr "Spauskite geltoną, kad nustatyti šią sąsają kaip numatytąją." + +msgctxt "button label, 'previous screen'" +msgid "Prev" +msgstr "" + +msgid "Preview" +msgstr "Peržiūra" + +msgid "Preview menu" +msgstr "Peržiūros meniu" + +msgid "Preview selected channel" +msgstr "" + +msgid "Primary DNS" +msgstr "Pirminis DNS" + +msgid "Priority" +msgstr "Pirmenybė" + +msgid "Process" +msgstr "Procesas" + +msgid "Progress" +msgstr "" + +msgid "Progress bar left" +msgstr "" + +msgid "Progress bar right" +msgstr "" + +msgid "Properties of current title" +msgstr "Dabartinio pavadinimo ypatybės" + +msgid "Protect services" +msgstr "Apsaugoti kanalus" + +msgid "Protect setup" +msgstr "Apsaugoti nustatymus" + +msgid "Provider" +msgstr "Tiekėjas" + +msgid "Provider to scan" +msgstr "Tiekėjas, kurį norite skanuoti" + +msgid "Providers" +msgstr "Tiekėjai" + +msgid "Put TV in standby" +msgstr "" + +msgid "Put receiver in standby" +msgstr "" + +msgid "Python frontend for /tmp/mmi.socket" +msgstr "Python pradinė fazė dėl /tmp/mmi.socket" + +msgid "Quick" +msgstr "Greitas" + +#, fuzzy +msgid "Quick zap" +msgstr "Greitas perjungimas" + +msgid "RF output" +msgstr "RF išėjimas" + +msgid "RGB" +msgstr "RGB" + +msgid "Radio" +msgstr "Radijas" + +#, fuzzy +msgid "Ram disk" +msgstr "Ram Diskas" + +msgid "Random" +msgstr "Atsitiktinis" + +#, python-format +msgid "Rating defined by broadcaster - %d" +msgstr "" + +msgid "Rating undefined" +msgstr "" + +msgid "Really close without saving settings?" +msgstr "Tikrai uždaryti be nustatymų išsaugojimo ?" + +msgid "Really delete done timers?" +msgstr "Tikrai pašalinti baigtus laikmačius?" + +msgid "Really exit the subservices quickzap?" +msgstr "Tikrai išeiti iš subkanalų greito perjungimo?" + +msgid "Really reboot now?" +msgstr "Tikrai perjungti dabar?" + +msgid "Really restart now?" +msgstr "Tikrai paleisti iš naujo dabar?" + +msgid "Really shutdown now?" +msgstr "Tikrai išjungti dabar?" + +msgid "Really upgrade the frontprocessor and reboot now?" +msgstr "" + +msgid "Really upgrade your settop box and reboot now?" +msgstr "" + +msgid "Reboot" +msgstr "Paleisti iš naujo" + +msgid "Rec" +msgstr "" + +#, fuzzy +msgid "Reception settings" +msgstr "Priėmimo nustatymai" + +msgid "Record" +msgstr "Įrašas" + +#, python-format +msgid "Record time limited due to conflicting timer %s" +msgstr "Įrašo laikas apribotas dėl prieštaringo laikmačio %s" + +msgid "Recorded files..." +msgstr "Įrašyti failai..." + +msgid "Recording" +msgstr "Įrašymas" + +msgid "Recording in progress" +msgstr "" + +msgid "Recording paths" +msgstr "Įrašų keliai" + +msgid "Recording type" +msgstr "" + +msgid "Recording(s) are in progress or coming up in few seconds!" +msgstr "Įrašas (ai) yra vykdymas arba bus prieinamas po kelių sekundžių!" + +msgid "Recordings" +msgstr "Įrašai" + +msgid "Recordings always have priority" +msgstr "Įrašai visada turi pirmenybę" + +msgid "Red button..." +msgstr "" + +msgid "Reenter new PIN" +msgstr "Iš naujo įrašykite naują PIN" + +#, fuzzy +msgid "Refresh rate" +msgstr "Atnaujinimo norma" + +msgid "Refresh rate selection." +msgstr "Atnaujinkite normos pasirinkimą" + +msgid "Regard deep standby as standby" +msgstr "" + +msgid "Relative" +msgstr "" + +msgid "Reload" +msgstr "Užkrauti" + +#, fuzzy +msgid "Reload black-/white lists" +msgstr "Perkrauti Juodus-/Baltus sąrašus" + +msgid "Reloading bouquets and services..." +msgstr "" + +msgid "Remember last service in PiP" +msgstr "" + +msgid "Remember service PIN" +msgstr "Atsiminti kanalo PIN" + +msgid "Remember these settings for each folder" +msgstr "" + +msgid "Reminder, you have chosen to save timeshift file." +msgstr "" + +#, fuzzy +msgid "Remote control type" +msgstr "Tėvų kontrolės rūšis" + +#, fuzzy +msgid "Removal has completed." +msgstr "Pašalinimas klaidingas." + +msgid "Remove" +msgstr "Pašalinti" + +msgid "Remove a mark" +msgstr "Pašalinti žymeklį" + +#, fuzzy +msgid "Remove a nameserver entry" +msgstr "pašalinkite serverio pavadinimo įėjimą" + +#, fuzzy +msgid "Remove bookmark" +msgstr "pašalinti žymę" + +#, fuzzy +msgid "Remove completed timers after (days)" +msgstr "Pašalinti elementus iš šiukšlinės po (dienų)" + +msgid "Remove currently selected title" +msgstr "Pašalinti dabartinį pasirinktą pavadinimą" + +#, fuzzy +msgid "Remove items from trash can after (days)" +msgstr "Pašalinti elementus iš šiukšlinės po (dienų)" + +msgid "Remove plugins" +msgstr "Pašalinti papildomas programas" + +msgid "Remove title" +msgstr "Pašalinti " + +msgid "Removing" +msgstr "Pašalinimas" + +#, python-format +msgid "Removing directory %s failed. (Maybe not empty.)" +msgstr "Direktorijos pašalinimas %s klaidingas. (Galbūt ne tuščia.)" + +#, fuzzy +msgid "Removing partition table" +msgstr "Pašalinti " + +msgid "Rename" +msgstr "Pervardinti" + +msgid "Repeat" +msgstr "" + +#, fuzzy +msgid "Repeat type" +msgstr "Pakartojimo būdas" + +msgid "Repeating event currently recording... What do you want to do?" +msgstr "Kartojama užduotis dabar įrašinėjama... Jūs norite tai padaryti?" + +msgid "Repeats" +msgstr "Pakartojimai" + +msgid "Require authentication for http streams" +msgstr "" + +msgid "Required medium type:" +msgstr "Reikalingas laikmenos tipas:" + +msgid "Rereading partition table" +msgstr "" + +msgid "Reserved" +msgstr "" + +msgid "Reset" +msgstr "Perjungti" + +msgid "Reset and renumerate title names" +msgstr "Perjungti ir pernumeruoti antraštės pavadinimus" + +msgid "Reset playback position" +msgstr "" + +msgid "Reset video enhancement settings to system defaults?" +msgstr "Perjungti vaizdo stiprinimo nustatymus į sisteminius numatytus?" + +msgid "Reset video enhancement settings to your last configuration?" +msgstr "Perjungti vaizdo stiprinimo nustatymus į jūsų paskutinę vaizdo konfigūraciją?" + +msgid "Resolution" +msgstr "Rezoliucija" + +msgid "Restart" +msgstr "Paleisti iš naujo" + +msgid "Restart GUI now?" +msgstr "Paleisti iš naujo GUI dabar?" + +msgid "Restart enigma" +msgstr "Paleisti iš naujo Enigma2" + +msgid "Restart network" +msgstr "Paleisti iš naujo tinklą" + +msgid "Restart test" +msgstr "Paleisti iš naujo testą" + +msgid "Restart your network connection and interfaces.\n" +msgstr "Iš naujo paleiskite savo tinklo ryšį ir sąsajas. \n" + +msgid "Restore" +msgstr "Atkurti" + +msgid "Restore backups" +msgstr "Atkurti atsargines kopijas" + +msgid "Restore is running..." +msgstr "Vyksta atkūrimas..." + +msgid "Restore system settings" +msgstr "Atkurkite sisteminius nustatymus" + +#, fuzzy +msgid "Restoring..." +msgstr "įrašoma..." + +msgid "Resume from last position" +msgstr "Tęsti nuo paskutinės pozicijos" + +#, python-format +msgid "Resume position at %s" +msgstr "Tęsti poziciją% s" + +#. TRANSLATORS: The string "Resuming playback" flashes for a moment +#. TRANSLATORS: at the start of a movie, when the user has selected +#. TRANSLATORS: "Resume from last position" as start behavior. +#. TRANSLATORS: The purpose is to notify the user that the movie starts +#. TRANSLATORS: in the middle somewhere and not from the beginning. +#. TRANSLATORS: (Some translators seem to have interpreted it as a +#. TRANSLATORS: question or a choice, but it is a statement.) +msgid "Resuming playback" +msgstr "Tęsti leidimą" + +msgid "Return to movie list" +msgstr "Grįžti į filmų sąrašą" + +msgid "Return to previous service" +msgstr "Grįžkite į buvusį kanalą" + +msgid "Reverse bouquet buttons" +msgstr "" + +msgid "Reverse list" +msgstr "" + +msgid "Rewind speeds" +msgstr "Persukimo greitis" + +msgid "Rewrap teletext subtitles" +msgstr "" + +msgid "Right" +msgstr "Dešinys" + +msgid "Right from servicename" +msgstr "" + +msgid "Roll-off" +msgstr "Roll-off" + +msgid "Romanian" +msgstr "" + +msgid "Root directory" +msgstr "" + +msgid "Rotor step position:" +msgstr "" + +msgid "Rotor turning speed" +msgstr "Pozicionieriaus sukimosi greitis" + +msgid "Round start time on" +msgstr "" + +msgid "Russian" +msgstr "Rusų" + +msgid "S-Video" +msgstr "S-Video" + +msgid "SID" +msgstr "SID" + +msgid "SINGLE LAYER DVD" +msgstr "VIENO SLUOKSNIO DVD" + +msgid "SNR" +msgstr "SNR" + +msgid "SNR:" +msgstr "SNR:" + +msgid "SSID:" +msgstr "SSID:" + +msgid "Same resolution as skin" +msgstr "" + +msgid "Sat" +msgstr "Šeš" + +msgid "Satellite" +msgstr "Palydovas" + +#, fuzzy +msgid "Satellite dish setup" +msgstr "Palydovinės įrangos nustatymas" + +msgid "Satellite equipment" +msgstr "Palydovinė įranga" + +#, fuzzy +msgid "Satellite equipment setup" +msgstr "Palydovinės įrangos nustatymas" + +msgid "Satellite longitude:" +msgstr "" + +msgid "Satellites" +msgstr "Palydovai" + +msgid "Satfinder" +msgstr "Palydovų paieška" + +msgid "Sats" +msgstr "Palydovai" + +msgid "Saturation" +msgstr "Prisotinimas" + +msgid "Saturday" +msgstr "Šeštadienis" + +msgid "Save" +msgstr "Saugoti" + +#, fuzzy +msgid "Save playlist" +msgstr "išsaugoti grojaraštį" + +msgid "Save timeshift file" +msgstr "" + +msgid "Save timeshift file in movie directory" +msgstr "" + +msgid "Scaler sharpness" +msgstr "Skalės aštrumas" + +#, fuzzy +msgid "Scaling mode" +msgstr "Skalės režimas" + +msgid "Scan" +msgstr "" + +msgid "Scan " +msgstr "Skanuoti" + +#. TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' +#, fuzzy, python-format +msgid "Scan %s" +msgstr "Skanuoti" + +#. TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' +#, fuzzy, python-format +msgid "Scan %s band" +msgstr "Skanuoti diapazoną EU MID" + +msgid "Scan additional SR" +msgstr "Papildomai skanuoti SR" + +#, fuzzy +msgid "Scan files..." +msgstr "Skanuoti failus..." + +#, fuzzy +msgid "Scan wireless networks" +msgstr "Skanuoti Bevielį Tinklą" + +msgid "Scan your network for wireless access points and connect to them using your selected wireless device.\n" +msgstr "Peržiūrėkite savo tinklą belaidžiams prieigos taškams ir junkitės prie jų naudojant jūsų išsirinktą belaidžio tinklo įrenginį.\n" + +#, python-format +msgid "Scanning %s..." +msgstr "" + +#. TRANSLATORS: The stb is performing a channel scan, progress percentage is printed in '%d' (and '%%' will show a single '%' symbol) +#, python-format +msgid "Scanning - %d%% completed" +msgid_plural "Scanning - %d%% completed" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "Scanning completed, %d channel found" +msgid_plural "Scanning completed, %d channels found" +msgstr[0] "" +msgstr[1] "" + +msgid "Scanning failed!" +msgstr "" + +msgid "Scanning..." +msgstr "" + +msgid "Scans default lamedbs sorted by satellite with a connected dish positioner" +msgstr "Skanuokite numatytą lamedbs, surūšiuotą pagal palydovą su prijungta prie pozicionieriaus antena" + +msgid "Search east" +msgstr "Ieškokite rytų" + +msgid "Search west" +msgstr "Ieškokite vakarų" + +msgid "Searching" +msgstr "" + +msgid "Searching east ..." +msgstr "" + +msgid "Searching for available updates. Please wait..." +msgstr "Ieškoma pasiekiamų atnaujinimų. Prašome laukti..." + +msgid "Searching for new installed or removed packages. Please wait..." +msgstr "Naujai įdiegtų ar pašalintų paketų paieška. Prašome laukti..." + +msgid "Searching west ..." +msgstr "" + +msgid "Second cable of motorized LNB" +msgstr "" + +msgid "Secondary DNS" +msgstr "Antrinis DNS" + +msgid "Seek" +msgstr "Ieškoti" + +#, fuzzy +msgid "Seek backward" +msgstr "praleisti sukimą atgal" + +#, fuzzy +msgid "Seek backward (enter time)" +msgstr "praleisti atgal (įrašykite laiką)" + +#, fuzzy +msgid "Seek forward" +msgstr "praleisti sukimą į priekį" + +#, fuzzy +msgid "Seek forward (enter time)" +msgstr "praleisti pirmyn (įrašykite laiką)" + +msgid "Select" +msgstr "Išsirinkite" + +#, fuzzy +msgid "Select CAId" +msgstr "išsirinkite CAId" + +msgid "Select HDD" +msgstr "Išsirinkite kietą diską" + +#, fuzzy +msgid "Select a bouquet" +msgstr "Išsirinkite filmą" + +msgid "Select a movie" +msgstr "Išsirinkite filmą" + +#, fuzzy +msgid "Select a network adapter" +msgstr "Išsirinkite tinklo adapterį" + +#, fuzzy +msgid "Select a skin" +msgstr "Išsirinkite filmą" + +#, fuzzy +msgid "Select a tuner" +msgstr "Išsirinkite filmą" + +#, fuzzy +msgid "Select a wireless network" +msgstr "Išsirinkite bevielį tinklą" + +msgid "Select action" +msgstr "" + +#, python-format +msgid "Select action for timer %s:" +msgstr "" + +msgid "Select all" +msgstr "" + +#, fuzzy +msgid "Select an image to be downloaded" +msgstr "Pasirinkite atvaizdą parsisiuntimui" + +msgid "Select audio track" +msgstr "Išsirinkite garso takelį" + +#, fuzzy +msgid "Select backup files" +msgstr "Išsirinkite atsarginės kopijos failus" + +#, fuzzy +msgid "Select backup location" +msgstr "Išsirinkite atsarginės kopijos vietą" + +msgid "Select channel to record from" +msgstr "Išsirinkite kanalą įrašymui" + +msgid "Select copy destination for:" +msgstr "" + +msgid "Select default EPG type..." +msgstr "" + +msgid "Select desired image from feed list" +msgstr "Išsirinkite pageidaujamą atvaizdą iš perdavimo sąrašo" + +msgid "Select destination for:" +msgstr "" + +msgid "Select files for backup." +msgstr "Pasirinkite failus atsarginei kopijai." + +msgid "Select files/folders to backup" +msgstr "Išsirinkite failus/aplankus dėl atsarginės kopijos" + +msgid "Select input device" +msgstr "Išsirinkite įvesties prietaisą" + +msgid "Select input device." +msgstr "Išsirinkite įvesties prietaisą." + +msgid "Select interface" +msgstr "Išsrinkite sąsają" + +#, fuzzy +msgid "Select location" +msgstr "Išsirinkite vietą" + +#, fuzzy +msgid "Select movie" +msgstr "Išsirinkite filmą" + +msgid "Select provider to add..." +msgstr "Išsirinkite tiekėją, kurį norite pridėti..." + +msgid "Select refresh rate" +msgstr "Išsirinkite atnujinimo normą" + +msgid "Select satellites" +msgstr "" + +msgid "Select service to add..." +msgstr "Išsirinkite kanalą, kurį norite pridėti..." + +msgid "Select sort method:" +msgstr "" + +#, fuzzy +msgid "Select target folder" +msgstr "Išsirinkite aplanką" + +#, fuzzy +msgid "Select the movie path" +msgstr "pasirinkite filmo kelią" + +#, fuzzy +msgid "Select upgrade source" +msgstr "Išsirinkite atnaujinimo šaltinį dėl redagavimo." + +msgid "Select upgrade source to edit." +msgstr "Išsirinkite atnaujinimo šaltinį dėl redagavimo." + +msgid "Select video input with up/down buttons" +msgstr "Išsirinkite vaizdo įėjimą su mygtukais aukštyn/žemyn" + +msgid "Select video mode" +msgstr "Išsirinkite vaizdo būdą" + +msgid "Select wireless network" +msgstr "Išsirinkite bevielį tinklą" + +msgid "Select your provider, and press OK to start the scan" +msgstr "" + +msgid "Selecting satellites 1 (USALS)" +msgstr "" + +msgid "Selecting satellites 2 (USALS)" +msgstr "" + +msgid "Send DiSEqC only on satellite change" +msgstr "Siųskite DiSEqC tik palydovo pakeitimui" + +msgid "Separate titles with a main menu" +msgstr "Pavadinimai su pagrindiniu meniu" + +msgid "Sequence repeat" +msgstr "Sekos pakartojimas" + +msgid "Serbian" +msgstr "Serbų" + +msgid "Service" +msgstr "Apie kanalą" + +msgid "Service has been added to the favourites." +msgstr "Kanalas buvo įtrauktas į mėgstamiausius." + +msgid "Service has been added to the selected bouquet." +msgstr "Kanalas buvo įtrauktas į pasirinktą paketą." + +#, fuzzy +msgid "Service info" +msgstr "Kanalo informacija" + +msgid "" +"Service invalid!\n" +"(Timeout reading PMT)" +msgstr "" +"Kanalo nėra!\n" +"(Skaitymo pertrauka PMT)" + +#, fuzzy +msgid "Service name" +msgstr "Kanalų skanavimas" + +msgid "" +"Service not found!\n" +"(SID not found in PAT)" +msgstr "" +"Kanalas nerastas!\n" +"(SID nėra PAT)" + +msgid "Service reference" +msgstr "Kanalo nuoroda" + +msgid "Service scan" +msgstr "Kanalo skanavimas" + +#, fuzzy +msgid "Service searching" +msgstr "Kanalų paieška" + +#, fuzzy +msgid "Service title mode" +msgstr "Išsirinkite vaizdo būdą" + +msgid "" +"Service unavailable!\n" +"Check tuner configuration!" +msgstr "" +"Kanalas nepasiekiamas!\n" +"Patikrinkite imtuvo nustatymus!" + +msgid "Services" +msgstr "Kanalai" + +msgid "Set default" +msgstr "" + +#, fuzzy +msgid "Set end time" +msgstr "Nustatyti pabaigos laiką" + +msgid "Set fixed" +msgstr "" + +msgid "Set fps for external subtitles" +msgstr "" + +msgid "Set interface as default Interface" +msgstr "Nustatykite sąsają, kaip numatytą sąsają" + +msgid "Set limits" +msgstr "" + +#, fuzzy +msgid "Set the type of the progress indication in the channel selection screen." +msgstr "Rodyti atvejo eigą kanalo pasirinkime" + +msgid "Set time window to 1 hour" +msgstr "" + +msgid "Set time window to 2 hours" +msgstr "" + +msgid "Set time window to 3 hours" +msgstr "" + +msgid "Set time window to 4 hours" +msgstr "" + +msgid "Set time window to 5 hours" +msgstr "" + +msgid "Set time window to 6 hours" +msgstr "" + +#, fuzzy +msgid "Set voltage and 22KHz" +msgstr "Nustatyti įtampą ir 22 KHZ" + +msgid "Settings" +msgstr "Nustatymai" + +msgid "Setup" +msgstr "Nustatymai" + +msgid "Setup menu" +msgstr "" + +#, fuzzy +msgid "Setup mode" +msgstr "Valdymo būdas" + +msgid "Setup your positioner" +msgstr "" + +#, fuzzy +msgid "Setup your satellite equipment" +msgstr "Palydovinė įranga" + +#, python-format +msgid "Shall the USB stick wizard proceed and program the image file %s into flash memory?" +msgstr "Ar USB atmintinės vedliui vykdyti programos atvaizdo failą %s į \"vidinę\" atmintį?" + +msgid "Sharpness" +msgstr "Aštrumas" + +msgid "Short filenames" +msgstr "Trumpi failų pavadinimai" + +msgid "Show EIT now/next in infobar" +msgstr "Rodyti EIT dabar/kitas infojuostoje" + +#, fuzzy +msgid "Show EPG for current channel..." +msgstr "Rodyti infojuostą pasikeičiant užduočiai" + +#, fuzzy +msgid "Show EPG..." +msgstr "rodyti EPG..." + +msgid "Show Games show" +msgstr "" + +msgid "Show SNR percentage instead of dB value" +msgstr "" + +msgid "Show VCR scart on main menu" +msgstr "" + +#, fuzzy +msgid "Show WLAN status" +msgstr "Rodyti belaidžio tinklo būseną" + +msgid "Show animation while busy" +msgstr "Rodyti animaciją tuo metu, kai užimta" + +#, fuzzy +msgid "Show background in radio mode" +msgstr "foninis atvaizdas" + +msgid "Show bouquet selection menu" +msgstr "" + +msgid "Show busy indicator when the system is busy." +msgstr "" + +msgid "Show channel numbers in channel selection" +msgstr "" + +msgid "Show columns" +msgstr "" + +msgid "Show crypto icons" +msgstr "" + +msgid "Show crypto info in infobar" +msgstr "Rodyti kodavimo informaciją infojuostoje" + +msgid "Show detailed event info" +msgstr "" + +#, fuzzy +msgid "Show event details" +msgstr "rodyti užduočių detales" + +msgid "Show event-progress in channel selection" +msgstr "Rodyti atvejo eigą kanalo pasirinkime" + +#, fuzzy +msgid "Show extended description" +msgstr "rodyti išplėstą informaciją" + +#, fuzzy +msgid "Show extensions..." +msgstr "žiūrėti papildymus" + +msgid "Show icon for new/unseen items" +msgstr "" + +msgid "Show in extensions menu" +msgstr "" + +#, fuzzy +msgid "Show info" +msgstr "Rodyti informaciją" + +#, fuzzy +msgid "Show info line" +msgstr "rodyti informacijos eilutę" + +msgid "Show infobar on channel change" +msgstr "Rodyti infojuostą perjungiant kanalą" + +msgid "Show infobar on event change" +msgstr "Rodyti infojuostą pasikeičiant užduočiai" + +msgid "Show infobar on skip forward/backward" +msgstr "Rodyti infojuostą praleidžiant į priekį/atgal" + +msgid "Show latest commits on sourceforge" +msgstr "" + +#, fuzzy +msgid "Show message when recording starts" +msgstr "Rodyti žinutę, kai prasideda įrašymas" + +#, fuzzy +msgid "Show movie lengths in movielist" +msgstr "Rodyti statuso ikonas filmų sąraše" + +msgid "Show multi channel EPG" +msgstr "" + +msgid "Show picons in channel list" +msgstr "" + +msgid "Show positioner movement" +msgstr "Rodyti pozicionieriaus judėjimą" + +msgid "Show screensaver" +msgstr "" + +msgid "Show second infobar" +msgstr "" + +msgid "Show service type icons" +msgstr "" + +msgid "Show services beginning with" +msgstr "Rodyti kanalus, prasidedančius su" + +#, fuzzy +msgid "Show shutdown menu" +msgstr "išjungimo meniu" + +msgid "Show single service EPG" +msgstr "" + +msgid "Show status icons in Movielist" +msgstr "" + +#, fuzzy +msgid "Show status icons in movie list" +msgstr "Rodyti statuso ikonas filmų sąraše" + +#, fuzzy +msgid "Show status icons in movielist" +msgstr "Rodyti statuso ikonas filmų sąraše" + +#, fuzzy +msgid "Show tag menu" +msgstr "rodyti etiketės meniu" + +msgid "Show the radio player..." +msgstr "Rodyti radijo grotuvą..." + +msgid "Show the tv player..." +msgstr "Rodyti TV grotuvą ..." + +msgid "Show warning when timeshift is stopped" +msgstr "" + +msgid "Shows the state of your wireless LAN connection.\n" +msgstr "Rodyti jūsų belaidžio tinklo prisijungimo ribas.\n" + +#, fuzzy +msgid "Shuffle playlist" +msgstr "sukeisti vietomis grojaraštį" + +msgid "Shutdown" +msgstr "Išjungti" + +msgid "Shutdown when in Standby" +msgstr "" + +msgid "Side by side" +msgstr "" + +msgid "Signal OK, proceeding" +msgstr "" + +msgid "Signal quality" +msgstr "" + +#, fuzzy +msgid "Signal strength:" +msgstr "Signalo stiprumas:" + +msgid "Signal: " +msgstr "Signalas:" + +msgid "Similar" +msgstr "Kartojama" + +msgid "Similar broadcasts:" +msgstr "Kartojamos laidos:" + +msgid "Simple" +msgstr "Paprastas" + +msgid "Simple titleset (compatibility for legacy players)" +msgstr "Paprastas pavadinimo nustatymas (suderinamas žaidėjams)" + +msgid "Single" +msgstr "Vienintelis" + +msgid "Single EPG" +msgstr "Kanalo EPG" + +msgid "Single satellite" +msgstr "Vienintelis palydovas" + +#, fuzzy +msgid "Single step (GOP)" +msgstr "Vienpakopis (GOP)" + +msgid "Single transponder" +msgstr "Vienintelis transponderis" + +msgid "Site latitude" +msgstr "" + +msgid "Site longitude" +msgstr "" + +msgid "Skin" +msgstr "Tema" + +msgid "Skins" +msgstr "Temos" + +#, fuzzy +msgid "Skip empty services" +msgstr "Apsaugoti kanalus" + +msgid "Skip internet connection check (disables automatic package installation)" +msgstr "" + +#, fuzzy +msgid "Sleep timer" +msgstr "Budėjimo laikmatis" + +msgid "SleepTimer Configuration" +msgstr "" + +msgid "Sleeptimer" +msgstr "" + +#, fuzzy +msgid "Slide picture in loop" +msgstr "skaidrės paveikslėlis kontūre" + +#, fuzzy +msgid "Slide show interval (sec.)" +msgstr "Paveikslėlių rodymo tarpas (sеk.)" + +#, python-format +msgid "Slot %d" +msgstr "Modulis %d" + +msgid "Slovak" +msgstr "" + +msgid "Slovenian" +msgstr "Slovėnų" + +msgid "Slow" +msgstr "Lėtas" + +#, fuzzy +msgid "Slow motion speeds" +msgstr "Palėtinto judėjimo greitis" + +#, fuzzy +msgid "Small progress" +msgstr "Vykdymas" + +msgid "Social/Political/Economics" +msgstr "" + +msgid "SoftCam / CI" +msgstr "EMU / Įstatomi moduliai" + +#, fuzzy +msgid "Softcam type" +msgstr "Programinė įranga" + +msgid "Software" +msgstr "Programinė įranga" + +msgid "Software management" +msgstr "Programinės įrangos valdymas" + +msgid "Software manager setup" +msgstr "Programinės įrangos valdymo nustatymas" + +msgid "Software restore" +msgstr "Programinės įrangos atkūrimas" + +msgid "Software update" +msgstr "Programinės įrangos atnaujinimas" + +msgid "Softwaremanager information" +msgstr "Programinės įrangos valdymo informacija" + +msgid "Some plugins are not available:\n" +msgstr "Kai kurių papildomų programų nėra:\n" + +#, fuzzy, python-format +msgid "Sorry, %s has not been installed!" +msgstr "Gaila MediaScanner nėra įdiegtas!" + +msgid "Sorry, deleting directories can (for now) only be done through the trash can." +msgstr "" + +#, fuzzy +msgid "Sorry, no backups found!" +msgstr "Gaila, jokios atsarginės kopijos nerastos!" + +#, fuzzy +msgid "Sorry, no details available!" +msgstr "Gaila, smulkesnės informacijos nėra!" + +#, fuzzy +msgid "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." +msgstr "" +"Gaila, jūsų atsarginės kopijos pasirinkimas nėra tinkamas rašymui.\n" +"Prašome pasirinkti kitą." + +msgid "Sort" +msgstr "" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort A-Z" +msgstr "Rūšiuoti A-Z" + +msgid "Sort by" +msgstr "" + +msgid "Sort list:" +msgstr "" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +#, fuzzy +msgid "Sort time" +msgstr "Rūšiuoti laiką" + +msgid "Sound" +msgstr "Garsas" + +#, fuzzy +msgid "Sound carrier" +msgstr "Garso nešančioji" + +msgid "Source request" +msgstr "" + +msgid "South" +msgstr "Pietūs" + +msgid "Spanish" +msgstr "Ispanų" + +msgid "Specify the end time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the end time until the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify the start time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the start time when the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify timeframe to ignore inactivity sleeptimer" +msgstr "" + +msgid "Specify timeframe to ignore the shutdown in standby" +msgstr "" + +msgid "Split preview mode" +msgstr "Skilimo peržiūros būdas" + +msgid "Splitscreen" +msgstr "" + +msgid "Sports" +msgstr "" + +#, fuzzy +msgid "Standard" +msgstr "standartinis" + +msgid "Standart list" +msgstr "" + +msgid "Standby" +msgstr "Budėjimas" + +#, fuzzy +msgid "Standby / restart" +msgstr "Budėti / Perkrauti" + +msgid "Standby after current event" +msgstr "" + +#, fuzzy, python-format +msgid "Standby fan %d PWM" +msgstr "Aušintuvo budėjimo %d PWM" + +#, fuzzy, python-format +msgid "Standby fan %d voltage" +msgstr "Aušintuvo budėjimo %d įtampa" + +msgid "Standby in " +msgstr "" + +msgid "StandbyLED" +msgstr "" + +msgid "Start from the beginning" +msgstr "Pradžia nuo pradžios" + +msgid "Start offline decode" +msgstr "" + +msgid "Start recording?" +msgstr "Pradėti įrašymą?" + +msgid "Start test" +msgstr "Pradėti testą" + +#, fuzzy +msgid "Start time" +msgstr "Paleidimo pradžia" + +msgid "Start time to ignore inactivity sleeptimer" +msgstr "" + +msgid "Start time to ignore shutdown in standby" +msgstr "" + +#, fuzzy +msgid "Start timeshift" +msgstr "pradėti laiko poslinkį" + +msgid "Start with list screen" +msgstr "" + +msgid "Starting on" +msgstr "Paleidimas įjungtas" + +msgid "Startup the set top box in standby" +msgstr "" + +msgid "Startup to Standby" +msgstr "" + +msgid "Step east" +msgstr "Žingsnis į rytus" + +msgid "Step west" +msgstr "Žingsnis į vakarus" + +msgid "Stepped east" +msgstr "" + +msgid "Stepped west" +msgstr "" + +msgid "Stop" +msgstr "Stabdyti" + +#, fuzzy +msgid "Stop PiP" +msgstr "stabdyti PiP" + +msgid "Stop current event and disable coming events" +msgstr "Sustabdyti dabartinę užduotį ir išjungti sekančią užduotį" + +msgid "Stop current event but not coming events" +msgstr "Sustabdyti dabartinę užduotį, nevykdant sekančių užduočių" + +#, fuzzy +msgid "Stop entry" +msgstr "stabdyti įrašą" + +msgid "Stop playing this movie?" +msgstr "Sustabdyti šio filmo žiūrėjimą ?" + +msgid "Stop recording" +msgstr "" + +msgid "Stop recording and delete" +msgstr "" + +msgid "Stop service on return to movie list" +msgstr "" + +msgid "Stop test" +msgstr "Stabdyti testavimą" + +msgid "Stop testing plane after # failed transponders" +msgstr "Stabdykite testavimą po to kai # klaidingi transponderiai" + +msgid "Stop testing plane after # successful transponders" +msgstr "Stabdykite testavimą po to kai # pavykę transponderiai" + +msgid "Stop timer recording" +msgstr "" + +#, fuzzy +msgid "Stop timeshift" +msgstr "išjungti laiko poslinkį" + +#, fuzzy +msgid "Stop timeshift?" +msgstr "Sustabdyti laiko poslinkį?" + +msgid "Stopped" +msgstr "" + +msgid "Store at index" +msgstr "" + +msgid "Store position" +msgstr "Išsaugoti padėtį" + +msgid "Stored position" +msgstr "Išsaugota padėtis" + +msgid "Stream" +msgstr "" + +msgid "Stream request" +msgstr "" + +msgid "Strongest position" +msgstr "" + +msgid "Subservice list..." +msgstr "Subkanalų sąrašas..." + +msgid "Subservices" +msgstr "Subkanalai" + +msgid "Subtitle Quickmenu" +msgstr "" + +#, fuzzy +msgid "Subtitle alignment" +msgstr "Subtitrų pasirinkimas" + +msgid "Subtitle border width" +msgstr "" + +msgid "Subtitle delay when timing is bad" +msgstr "" + +msgid "Subtitle delay when timing lacks" +msgstr "" + +#, fuzzy +msgid "Subtitle font size" +msgstr "Subtitrai" + +msgid "Subtitle language selection 1" +msgstr "" + +msgid "Subtitle language selection 2" +msgstr "" + +msgid "Subtitle language selection 3" +msgstr "" + +msgid "Subtitle language selection 4" +msgstr "" + +#, fuzzy +msgid "Subtitle position" +msgstr "Subtitrų pasirinkimas" + +msgid "Subtitle selection" +msgstr "Subtitrų pasirinkimas" + +msgid "Subtitle selection..." +msgstr "" + +msgid "Subtitle settings" +msgstr "" + +msgid "Subtitles" +msgstr "Subtitrai" + +msgid "Sun" +msgstr "Sek" + +msgid "Sunday" +msgstr "Sekmadienis" + +#, fuzzy +msgid "Swap PiP and main picture" +msgstr "perkelti PiP į mano paveikslėlį" + +#, fuzzy +msgid "Swap services" +msgstr "Keisti kanalus" + +msgid "Swedish" +msgstr "Švedų" + +msgid "Switch TV to correct input" +msgstr "" + +msgid "Switch between filelist/playlist" +msgstr "" + +msgid "Switch between normal mode and list mode" +msgstr "" + +msgid "Switch to HDMI in mode" +msgstr "" + +#, fuzzy +msgid "Switch to filelist" +msgstr "perjungti į failų sąrašą" + +msgid "Switch to next channel" +msgstr "" + +#, fuzzy +msgid "Switch to next channel in history" +msgstr "kitas kanalas į istoriją" + +#, fuzzy +msgid "Switch to next sub service" +msgstr "Perjungti į sekantį subkanalą" + +#, fuzzy +msgid "Switch to playlist" +msgstr "perjungti į grojaraštį" + +#, fuzzy +msgid "Switch to previous channel" +msgstr "Perjungti į ankstesnį subkanalą" + +#, fuzzy +msgid "Switch to previous channel in history" +msgstr "buvęs kanalas į istoriją" + +#, fuzzy +msgid "Switch to previous sub service" +msgstr "Perjungti į ankstesnį subkanalą" + +msgid "Switchable tuner types:" +msgstr "Perjungiamų imtuvą tipai:" + +msgid "Symbol rate" +msgstr "Simbolių greitis" + +msgid "Symbol rate:" +msgstr "" + +msgid "Sync failure moving back to origin !" +msgstr "" + +msgid "System" +msgstr "Sistema" + +#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) +msgid "TRANSLATOR_INFO" +msgstr "Audronis Grincevičius (ADGA) Pasvalys, Lietuva" + +msgid "TS file is too large for ISO9660 level 1!" +msgstr "TS failas yra per didelis ISO9660 lygmeniui 1!" + +msgid "TSID" +msgstr "TSID" + +msgid "TV physical address report" +msgstr "" + +msgid "TXT PID" +msgstr "TXT PID" + +#, fuzzy +msgid "Table of contents for collection" +msgstr "Turinio lentelė dėl kolekcijos" + +msgid "Tags" +msgstr "Kortelės" + +msgid "Teletext subtitle color" +msgstr "" + +#, fuzzy +msgid "Temperature and fan control" +msgstr "Temperatūros ir aušintuvo kontrolė" + +msgid "Terrestrial" +msgstr "Antžeminė" + +msgid "Terrestrial provider" +msgstr "Antžeminis tiekėjas" + +msgid "Test DiSEqC settings" +msgstr "Testuoti DiSEqC nustatymus" + +msgid "Test mode" +msgstr "Testuoti" + +msgid "Test the network configuration of your receiver.\n" +msgstr "" + +#, fuzzy +msgid "Test type" +msgstr "Testo tipas" + +#, fuzzy +msgid "Text color" +msgstr "teksto spalva" + +msgid "Thai" +msgstr "" + +msgid "" +"Thank you for using the wizard.\n" +"Please press OK to continue." +msgstr "" +"Ačiū, kad naudojatės nustatymų vedliu.\n" +"Prašome spausti OK, kad tęsti." + +#, fuzzy +msgid "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." +msgstr "" +"Ačiū, kad naudojatės nustatymų vedliu.\n" +"Prašome spausti OK, kad tęsti." + +msgid "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?" +msgstr "" + +msgid "The PIN code has been changed successfully." +msgstr "PIN kodas buvo pakeistas sėkmingai." + +msgid "The PIN codes you entered are different." +msgstr "Jūsų įvesti PIN kodai yra skirtingi." + +msgid "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" +msgstr "" +"USB laikmena buvo paruošta paleidimui.\n" +"Dabar, jūs galite parsisiųsti NFI atvaizdo failą!" + +msgid "The backup failed. Please choose a different backup location." +msgstr "Išsaugoti nepavyko. Pasirinkite kitą vietą išsaugojimui. " + +#, python-format +msgid "" +"The current beta image might not be stable.\n" +"For more information see %s." +msgstr "" + +#, python-format +msgid "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." +msgstr "" +"Direktorija % s nėra įrašoma.\n" +"Įsitikinkite, kad pasirinkote rašymui tinkamą katalogą." + +#, python-format +msgid "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" +msgstr "" +"Surastas įrenginys:\n" +"\n" +"%s\n" +"\n" +"Jūs norite įrašyti USB diegėją į šį raktelį?" + +msgid "The following files were found..." +msgstr "Kiti failai buvo surasti..." + +msgid "The md5sum validation failed, the file may be corrupted!" +msgstr "Md5sum patvirtinimas nepasisekė, failas gali būti sugadintas!" + +#, fuzzy +msgid "" +"The network wizard extension is not installed!\n" +"Please install it." +msgstr "" +"Tinklo vedlio programa neįdiegta!\n" +"Prašome įdiegti tai." + +#, python-format +msgid "The path %s already exists." +msgstr "Kelias %s jau egzistuoja." + +msgid "The pin code you entered is wrong." +msgstr "Surinktas PIN kodas neteisingas." + +#, python-format +msgid "The results have been written to %s." +msgstr "Rezultatai buvo įrašyti į %s." + +msgid "The sleep timer has been activated." +msgstr "Budėjimo laikmatis jau aktyvuotas." + +msgid "The sleep timer has been disabled." +msgstr "Budėjimo laikmatis jau išjungtas." + +#, fuzzy +msgid "" +"The software management extension is not installed!\n" +"Please install it." +msgstr "" +"Programinės įrangos valdymo programa neįdiegta!\n" +"Prašome įdiegti tai." + +#, python-format +msgid "The status of the current beta image could not be checked because %s can not be reached." +msgstr "" + +msgid "The timer file (timers.xml) is corrupt and could not be loaded." +msgstr "Laikmačio failas (timers.xml) yra sugadintas ir nebuvo užkrautas." + +#, fuzzy +msgid "The user interface of your receiver is restarting" +msgstr "Prašome laukti kol paleidžiamas iš naujo jūsų tinklas..." + +msgid "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" +msgstr "" + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." +msgstr "" +"Belaidžio tinklo programa neįdiegta!\n" +"Prašome įdiegti tai ir pasirinkite ką jūs norite daryti vėliau." + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it." +msgstr "" +"Belaidžio tinklo programa neįdiegta!\n" +"Prašome įdiegti tai." + +msgid "The wizard can backup your current settings. Do you want to do a backup now?" +msgstr "Nustatymų vedlys gali išsaugoti Jūsų dabartinius nustatymus. Jūs norite tai padaryti dabar?" + +#, python-format +msgid "The wizard found a configuration backup. Do you want to restore your old settings from %s?" +msgstr "Vedlys surado konfigūracijos atsarginę kopiją. Jūs norite atkurti savo senus nustatymus iš %s?" + +msgid "The wizard is finished now." +msgstr "Nustatymų vedlys baigė darbą." + +msgid "There are at least " +msgstr "Bent jau yra" + +#, fuzzy, python-format +msgid "There are at least %s updates available." +msgstr "Nėra jokių pasiekiamų atnaujinimų." + +msgid "There are currently no outstanding actions." +msgstr "Nėra šiuo metu jokių neatliktų veiksmų." + +msgid "There are no updates available." +msgstr "Nėra jokių pasiekiamų atnaujinimų." + +msgid "There is no signal to lock on !" +msgstr "" + +msgid "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" +msgstr "" +"Gali trukti laisvos vietos pasirinktame skaidinyje.\n" +"Ar norite tęsti?" + +msgid "This DVD RW medium is already formatted - reformatting will erase all content on the disc." +msgstr "Šis DVD RW diskas jau yra suformatuotas - formatavimas iš naujo, ištrins visą disko turinį." + +msgid "" +"This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!" +msgstr "" + +msgid "This plugin is installed." +msgstr "Ši papildoma programa yra įdiegta." + +msgid "This plugin is not installed." +msgstr "Ši papildoma programa nėra įdiegta." + +msgid "This plugin will be installed." +msgstr "Ši papildoma programa bus įdiegta." + +msgid "This plugin will be removed." +msgstr "Ši papildoma programa jau pašalinta." + +#, python-format +msgid "This receiver cannot decode %s streams!" +msgstr "" + +#, fuzzy +msgid "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration" +msgstr "" +"Šis testas tikrina serverių pavadinimų konfigūravimą.\n" +"Jei jūs gaunate \"nepatvirtintas \" pranešimas:\n" +"- prašome tikrinti savo DHCP, kabelio ir adapterio nustatymą\n" +"- jei jūs sukonfigūravote savo serverių pavadinimus rankomis, prašome patikrinti savo įėjimus \"Serverio pavadinimas \" Konfigūracija" + +#, fuzzy +msgid "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" +msgstr "" +"Šis testas tikrina, ar tinklo kabelis yra prijungtas prie jūsų tinklo adapterio.\n" +"Jei jūs gaunate \"atjungtas \" pranešimą:\n" +"- patikrina, ar tinklo kabelis yra prijungtas\n" +" - patikrina, ar kabelis nėra brokuotas" + +#, fuzzy +msgid "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" +msgstr "" +"Šis testas tikrina, ar galiojantis IP Adresas yra surastas jūsų tinklo adapteriui. \n" +"Jei jūs gaunate \"nepatvirtintas \" pranešimą:\n" +" - joks galiojantis IP adresas nebuvo rastas\n" +" - prašome tikrinti savo DHCP, kabelio ir adapterio nustatymą" + +#, fuzzy +msgid "" +"This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." +msgstr "" +"Šis testas tikrina, ar jūsų tinklo adapteris yra nustatytas automatinei IP Adreso konfigūracijai su DHCP.\n" +"Jei jūs gaunate \"išjungtas \" pranešimą:\n" +" - tada, jūsų tinklo adapteris yra sukonfigūruotas rankiniam IP nustatymui\n" +"- patikrina ar jūs įrašėte teisingas IP informacijas į adapterio nustatymuose. \n" +"Jei jūs gaunate \"įjungtas \" pranešimą:\n" +"- patikrina, ar jūs turite sukonfigūruotą ir veikiantį DHCP serverį savo tinkle." + +#, fuzzy +msgid "This test detects your configured LAN adapter." +msgstr "Šis testas aptinka jūsų sukonfigūruotą tinklo adapterįį." + +msgid "" +"This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\n" +"Are you sure?" +msgstr "" + +msgid "Three" +msgstr "Trys" + +msgid "Threshold" +msgstr "Heterodinas" + +msgid "Thu" +msgstr "Ket" + +msgid "Thumbnails" +msgstr "Miniatiūros" + +msgid "Thursday" +msgstr "Ketvirtadienis" + +msgid "Time" +msgstr "Laikas" + +#, fuzzy +msgid "Time scale" +msgstr "Laikmačio pasirinkimas" + +msgid "Timer" +msgstr "Laikmatis" + +msgid "Timer Overview" +msgstr "" + +#, fuzzy +msgid "Timer edit" +msgstr "Redaguoti laikmatį" + +#, fuzzy +msgid "Timer editor" +msgstr "Laikmačio redaktorius" + +msgid "Timer entry" +msgstr "Laikmačio užduotis" + +msgid "Timer log" +msgstr "Laikmačio log" + +msgid "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" +msgstr "" +"Aptiktas laikmačio timers.xml sutapimas! \n" +" prašome iš naujo tikrinti tai!" + +#, fuzzy +msgid "Timer overview" +msgstr "Laikmačio užduotis" + +#, fuzzy +msgid "Timer recording location" +msgstr "Laikmačio įrašo vieta" + +msgid "Timer sanity error" +msgstr "Laikmačio padėties klaida" + +msgid "Timer selection" +msgstr "Laikmačio pasirinkimas" + +msgid "Timer selection..." +msgstr "" + +#, fuzzy +msgid "Timer type" +msgstr "Laikmačio būdas" + +msgid "Timeshift" +msgstr "Laiko poslinkis" + +msgid "Timeshift Live" +msgstr "" + +msgid "Timeshift location" +msgstr "Laiko poslinkio vieta" + +msgid "Timeshift not possible!" +msgstr "Laiko poslinkis negalimas!" + +msgid "Timezone" +msgstr "Laiko juosta" + +msgid "Title" +msgstr "Antraštė" + +msgid "Title properties" +msgstr "Ypatybės" + +msgid "Titleset mode" +msgstr "Pavadinimo nustatymo būdas" + +msgid "To audio selection" +msgstr "" + +msgid "To subtitle selection" +msgstr "" + +msgid "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." +msgstr "" + +msgid "Today" +msgstr "Šiandien" + +#, fuzzy +msgid "Toggle a cut mark at the current position" +msgstr "iškirpti žymeklį dabartinėje pozicijoje" + +#, fuzzy +msgid "Tone amplitude" +msgstr "Tono Platumas" + +msgid "Tone mode" +msgstr "Tonas" + +msgid "Toneburst" +msgstr "Tono signalas" + +msgid "Toneburst A/B" +msgstr "Tono signalas A/B" + +msgid "Top and bottom" +msgstr "" + +msgid "Track" +msgstr "Takelis" + +msgid "Translation" +msgstr "Vertimas" + +msgid "Translation:" +msgstr "Vertimas:" + +msgid "Translations" +msgstr "" + +msgid "Transmission mode" +msgstr "Perdavimo būdas" + +msgid "Transponder" +msgstr "Transponderis" + +#, fuzzy +msgid "Transponder type" +msgstr "Transponderio tipas" + +msgid "Trash can" +msgstr "" + +msgid "Tries left:" +msgstr "Bandymo kartų:" + +msgid "Try to find used transponders in cable network.. please wait..." +msgstr "Bandoma surasti Transponderius kabeliniuose tinkluose.. prašome laukti..." + +msgid "Trying to download a new packetlist. Please wait..." +msgstr "Bandoma parsisiųsti naują paketo sąrašą. Prašome laukti..." + +msgid "Tue" +msgstr "Ant" + +msgid "Tuesday" +msgstr "Antradienis" + +msgid "Tune" +msgstr "Suderinti" + +#, fuzzy +msgid "Tune and focus" +msgstr "Imtuvo būsena " + +msgid "Tune failed!" +msgstr "Suderinimas nepavyko!" + +msgid "Tuner" +msgstr "Imtuvas" + +msgid "Tuner configuration" +msgstr "Imtuvo konfigūravimas" + +msgid "Tuner is not supported" +msgstr "" + +#, fuzzy +msgid "Tuner slot" +msgstr "Imtuvo vieta" + +msgid "Tuner status" +msgstr "Imtuvo būsena " + +#, fuzzy, python-format +msgid "Tuner status %s" +msgstr "Imtuvo būsena " + +msgid "Tuner type" +msgstr "Imtuvo tipas" + +msgid "Turkish" +msgstr "Turkų" + +msgid "Turn on the power LED during standby." +msgstr "" + +msgid "Turning step size" +msgstr "" + +msgid "Two" +msgstr "Du" + +msgid "Type" +msgstr "Tipas" + +msgid "Type of scan" +msgstr "Skanavimo būdas" + +msgid "USALS" +msgstr "USALS" + +msgid "USALS calibration" +msgstr "" + +#, fuzzy +msgid "USB stick" +msgstr "USB raktas" + +msgid "USB stick wizard" +msgstr "USB rakto vedlys" + +msgid "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" + +msgid "Undo install" +msgstr "Atšaukti įdiegimą" + +msgid "Undo uninstall" +msgstr "Atšaukti šalinimą" + +msgid "Unencrypted" +msgstr "Nešifruota" + +msgid "UnhandledKey" +msgstr "Nežinomas mygtukas" + +msgid "Unicable" +msgstr "Unicable" + +msgid "Unicable LNB" +msgstr "Unicable LNB" + +msgid "Unicable Martix" +msgstr "Unicable Martix" + +msgid "Uninstall" +msgstr "Šalinti" + +msgid "Universal LNB" +msgstr "Universali LNB" + +msgid "Unknown" +msgstr "Nežinoma" + +msgid "Unmount" +msgstr "" + +msgid "Unsupported" +msgstr "Nepalaikoma" + +msgid "Update" +msgstr "Atnaujinimas" + +msgid "Update and ask to reboot" +msgstr "" + +msgid "Update and reboot (recommended)" +msgstr "" + +#, fuzzy +msgid "Update channel list only" +msgstr "kitas kanalas į istoriją" + +#, python-format +msgid "Update completed, %d package was installed." +msgid_plural "Update completed, %d packages were installed." +msgstr[0] "" +msgstr[1] "" + +msgid "Update completed. Do you want to reboot your receiver?" +msgstr "" + +msgid "Update failed. Your receiver does not have a working internet connection." +msgstr "" + +msgid "Update has completed." +msgstr "" + +msgid "Updatefeed not available." +msgstr "Atnaujinimo perdavimas nepasiekiamas." + +msgid "Updating software catalog" +msgstr "Programinės įrangos katalogo atnaujinimas" + +msgid "Upgrading" +msgstr "Atnaujinama" + +msgid "Use" +msgstr "Naudoti" + +msgid "Use DHCP" +msgstr "Naudoti DHCP" + +msgid "Use EIT EPG information when it is available." +msgstr "" + +msgid "Use FreeSat EPG information when it is available." +msgstr "" + +msgid "Use MHW EPG information when it is available." +msgstr "" + +msgid "Use Netmed EPG information when it is available." +msgstr "" + +msgid "Use TV remote control" +msgstr "" + +#, fuzzy +msgid "Use USALS for this sat" +msgstr "Naudoti USALS šiam palydovui " + +msgid "Use ViaSat EPG information when it is available." +msgstr "" + +msgid "Use Virgin EPG information when it is available." +msgstr "" + +msgid "Use a gateway" +msgstr "Naudoti šliuzą" + +msgid "Use fastscan channel names" +msgstr "" + +msgid "Use fastscan channel numbering" +msgstr "" + +msgid "Use frequency or channel" +msgstr "" + +msgid "Use individual settings for each directory" +msgstr "" + +#, fuzzy +msgid "Use interface" +msgstr "Naudoti sąsają" + +msgid "Use official channel numbering" +msgstr "" + +msgid "Use original DVB subtitle position" +msgstr "" + +msgid "Use original teletext position" +msgstr "" + +msgid "Use power measurement" +msgstr "Naudoti įtampos išmatavimus" + +#, fuzzy +msgid "Use the network wizard to configure selected network adapter" +msgstr "Panaudokite Tinklo vedlį, kad sukonfigūruotumėte savo tinklo plokštę" + +#, fuzzy +msgid "Use the network wizard to configure your network\n" +msgstr "Panaudokite Tinklo vedlį, kad sukonfigūruotumėte savo tinklą\n" + +msgid "Use the up/down keys on your remote control to select an option. After that, press OK." +msgstr "Naudokitės mygtukais aukštyn/žemyn valdymo pulte, nustatymų pasirinkimui. Po to spauskite OK." + +#, fuzzy +msgid "Use the wizard to set up basic features" +msgstr "Naudoti vedlį pagrindiniams nustatymams" + +#, fuzzy +msgid "Use these input device settings?" +msgstr "Naudoti šiuos įvesties prietaiso nustatymus?" + +#, fuzzy +msgid "Use these settings?" +msgstr "Naudoti šiuos nustatymus?" + +msgid "Use this video enhancement settings?" +msgstr "Naudoti šiuos vaizdo stiprinimo nustatymus?" + +#, fuzzy +msgid "Use trash can in movielist" +msgstr "Naudokite šiukšlinę filmų sąraše" + +msgid "Used service scan type" +msgstr "Naudojamas kanalo skanavimo būdas" + +msgid "User - bouquets" +msgstr "" + +msgid "User defined" +msgstr "Vartotojo pasirinktas" + +msgid "User defined transponder" +msgstr "" + +#, fuzzy +msgid "User interface" +msgstr "Naudoti sąsają" + +msgid "Username" +msgstr "Vartotojas" + +#, python-format +msgid "Using LNB %d" +msgstr "" + +msgid "Using fixed address" +msgstr "" + +#, python-format +msgid "Using tuner %s" +msgstr "" + +msgid "Usually when the subtitle language is the same as the audio language, the subtitles will not be used. Enable this option to allow these subtitles to be used." +msgstr "" + +msgid "VCR scart" +msgstr "Vaizdo grotuvas" + +msgid "VMGM (intro trailer)" +msgstr "VMGM (įvadas)" + +msgid "Vertical" +msgstr "Vertikalus" + +msgid "Vertical turning speed" +msgstr "" + +msgid "Video PID" +msgstr "Vaizdo PID" + +msgid "Video enhancement preview" +msgstr "Vaizdo pakėlimo peržiūra" + +msgid "Video enhancement settings" +msgstr "Vaizdo pakėlimo nustatymai" + +msgid "Video enhancement setup" +msgstr "Vaizdo pakėlimo valdymas" + +#, fuzzy +msgid "Video fine tuning" +msgstr "Tikslus vaizdo suderinimas" + +#, fuzzy +msgid "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." +msgstr "" +"Vaizdo įėjimo pasirinkimas\n" +"\n" +" Prašome spausti OK, jei jūs galite matyti šį puslapį savo televizoriuje (ar išrinkti skirtingą įėjimo jungtį).\n" +"\n" +"Kita įėjimo jungtis bus automatiškai išbandyta po 10 sekundžių." + +msgid "Video mode selection." +msgstr "Vaizdo būdo pasirinkimas." + +#, fuzzy +msgid "Video output" +msgstr "Vaizdo išėjimas" + +#, fuzzy +msgid "Video setup" +msgstr "Vaizdo nustatymai" + +#, fuzzy +msgid "Video wizard" +msgstr "Vaizdo nustatymo vedlys" + +#, python-format +msgid "Video: %s fps" +msgstr "" + +msgid "VideoMode" +msgstr "" + +msgid "Videocodec" +msgstr "" + +msgid "Videoformat" +msgstr "" + +msgid "Videosize" +msgstr "" + +msgid "View Rass interactive..." +msgstr "Žiūrėti Rass interaktyviai..." + +msgid "View details" +msgstr "Smulkiau" + +msgid "View list of available " +msgstr "Peržiūrėti sąrašą pasiekiamų" + +msgid "View list of available CommonInterface extensions" +msgstr "Peržiūrėti sąrašą galimam Įstatomų modulių papildymui" + +msgid "View list of available EPG extensions." +msgstr "Peržiūrėti sąrašą galimam EPG papildymui." + +msgid "View list of available Satellite equipment extensions." +msgstr "Peržiūrėti sąrašą galimam palydovinės įrangos papildymui." + +msgid "View list of available communication extensions." +msgstr "Peržiūrėti sąrašą galimam komunikacijos papildymui." + +msgid "View list of available default settings" +msgstr "Peržiūrėti sąrašą galimų numatytų nustatymų" + +#, fuzzy +msgid "View list of available display and userinterface extensions." +msgstr "Peržiūrėti sąrašą galimam monitoriaus ir vartotojo sąsajos papildymui." + +msgid "View list of available multimedia extensions." +msgstr "Peržiūrėti sąrašą galimam multimedijos papildymui." + +msgid "View list of available networking extensions" +msgstr "Peržiūrėti sąrašą galimam tinklo papildymui." + +msgid "View list of available recording extensions" +msgstr "Peržiūrėti sąrašą galimam įrašų papildymui." + +msgid "View list of available skins" +msgstr "Peržiūrėti sąrašą galimų temų" + +msgid "View list of available software extensions" +msgstr "Peržiūrėti sąrašą galimos programinės įrangos papildymui." + +msgid "View list of available system extensions" +msgstr "Peržiūrėti sąrašą galimam sistemos papildymui." + +#, fuzzy +msgid "View photos..." +msgstr "Žiūrėti fotografijas..." + +msgid "View teletext..." +msgstr "Peržiūrėti teletekstą..." + +#, fuzzy +msgid "View video CD..." +msgstr "Žiūrėti vaizdo CD..." + +#, fuzzy +msgid "Virtual keyboard" +msgstr "Virtuali Klaviatūra" + +msgid "Voltage mode" +msgstr "Įtampa" + +msgid "Volume" +msgstr "Garsumas" + +msgid "W" +msgstr "W" + +msgid "WEP" +msgstr "WEP" + +msgid "WLAN connection" +msgstr "Ryšys su WLAN tinklu" + +msgid "WPA" +msgstr "WPA" + +msgid "WPA or WPA2" +msgstr "WPA arba WPA2" + +msgid "WPA2" +msgstr "WPA2" + +msgid "WSS on 4:3" +msgstr "WSS į 4:3" + +msgid "Waiting" +msgstr "Laukite" + +msgid "Waiting for mount" +msgstr "" + +msgid "Waiting for partition" +msgstr "" + +msgid "Wakeup" +msgstr "" + +msgid "Wakeup TV from standby" +msgstr "" + +msgid "Wakeup receiver for start timer" +msgstr "" + +msgid "Wakeup receiver from standby" +msgstr "" + +msgid "Wakeup signal from TV" +msgstr "" + +msgid "Wakeup type" +msgstr "" + +msgid "Warning: no LNB; using factory defaults." +msgstr "" + +#, fuzzy +msgid "Watch movies..." +msgstr "Leisti įrašytus filmus..." + +#, fuzzy +msgid "Watch recordings..." +msgstr "įrašoma..." + +msgid "Wed" +msgstr "Tre" + +msgid "Wednesday" +msgstr "Trečiadienis" + +msgid "Weekday" +msgstr "Savaitės diena" + +msgid "Weighted position" +msgstr "" + +#, fuzzy +msgid "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." +msgstr "" +"Sveiki atvykę į Cutlist redaktorių \n" +"\n" +"Ieškokite pradžios, kurią jūs norite iškirpti. Spauskite OK, išsirinkite ' iškirpimo pradžią'.\n" +"\n" +"Tada ieškokite pabaigos, spauskite OK, pasirinkite 'iškirpimo pabaigą'. Štai ir viskas." + +msgid "Welcome to the image upgrade wizard. The wizard will assist you in upgrading the firmware of your receiver by providing a backup facility for your current settings and a short explanation of how to upgrade your firmware." +msgstr "" + +msgid "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" +msgstr "" + +msgid "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." +msgstr "" + +msgid "Welcome..." +msgstr "Sveiki atvykę..." + +msgid "West" +msgstr "Vakarai" + +msgid "West limit set" +msgstr "" + +msgid "What do you want to scan?" +msgstr "Ką Jūs norite skanuoti?" + +msgid "When enabled the PiP can be closed by the exit button." +msgstr "" + +msgid "When enabled the arrow buttons around the OK button will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled the left, right, CH+/-, B+/-, P+/- buttons will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled you can specify a timeframe to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "When enabled you can specify a timeframe were the inactivity sleeptimer is ignored. Not the detection is disabled during this timeframe but the inactivity timeout is disabled" +msgstr "" + +msgid "When enabled you can zap channels with the CH+/-, B+/-, P+/- buttons instead of opening the channel selection list." +msgstr "" + +msgid "When enabled you get the channel selection list via the OK button, the infobar toggle is then transfered to exit button" +msgstr "" + +msgid "When enabled, AIT data will be included in http streams. This allows a client receiver to use HbbTV." +msgstr "" + +msgid "When enabled, ECM data will be included in http streams. This allows a client receiver to do the descrambling." +msgstr "" + +msgid "When enabled, EIT data will be included in http streams. This allows a client receiver to show EPG." +msgstr "" + +msgid "When enabled, a popup message will be shown when a movie has finished and the next one will start." +msgstr "" + +msgid "When enabled, a popup message will be shown when a recording starts." +msgstr "" + +msgid "When enabled, a radio background image will be visible while listening to a radio channel." +msgstr "" + +msgid "When enabled, a recording is allowed to interrupt live tv, when there are no free tuners." +msgstr "" + +msgid "When enabled, a warning will be displayed and the user will get an option to stop or to continue the timeshift." +msgstr "" + +msgid "When enabled, authentication is required to watch http streams." +msgstr "" + +msgid "When enabled, channel numbering will start at '1' for each bouquet." +msgstr "" + +msgid "When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen." +msgstr "" + +msgid "When enabled, continue to the next bouquet when the last channel of the current bouquet is reached while changing channels." +msgstr "" + +msgid "When enabled, deleted recordings are moved to the trash can, instead of being deleted immediately." +msgstr "" + +msgid "When enabled, display the EIT now/next eventdata in infobar. When disabled, display now/next eventdata from the EPG cache instead." +msgstr "" + +msgid "When enabled, encryption info will be shown in the infobar (when supported by the skin)." +msgstr "" + +msgid "When enabled, error messages related to the Common Interface module will not be shown." +msgstr "" + +msgid "When enabled, error messages related to zapping will not be shown." +msgstr "" + +msgid "When enabled, external subtitles will be always turned on for playback movie." +msgstr "" + +msgid "When enabled, graphical DVB subtitles are preferred over teletext subtitles, when both types are available." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be centered horizontally." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be displayed at their original position." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be displayed in yellow, instead of the original color." +msgstr "" + +msgid "When enabled, http streams are descrambled on the server side. The (remote) client receiver does not have to do descrambling." +msgstr "" + +msgid "When enabled, it is possible to leave the movieplayer with exit." +msgstr "" + +msgid "When enabled, measure power consumption to detect when the rotor stops turning (when supported by the tuner)." +msgstr "" + +msgid "When enabled, number markers will be hiden." +msgstr "" + +msgid "When enabled, services may be grouped in multiple bouquets." +msgstr "" + +msgid "When enabled, show channel numbers in the channel selection screen." +msgstr "" + +msgid "When enabled, subtitles for the hearing impaired can be used." +msgstr "" + +msgid "When enabled, subtitles for the hearing impaired will be preferred over normal subtitles, when both types are available." +msgstr "" + +msgid "When enabled, teletext pages will be cached, allowing faster access." +msgstr "" + +msgid "When enabled, teletext subtitles will be displayed at their original position." +msgstr "" + +msgid "When enabled, the VCR scart option will be shown on the main menu" +msgstr "" + +msgid "When enabled, the channel selection list will be hidden while listening to a radio channel" +msgstr "" + +msgid "When enabled, the infobar will be displayed when a new event starts." +msgstr "" + +msgid "When enabled, the infobar will be displayed when changing channels." +msgstr "" + +msgid "When enabled, the infobar will be displayed when skipping forwards/backwards during media playback." +msgstr "" + +msgid "When enabled, the lenght of each recording will be shown in the movielist (this might cause some additional loading time)." +msgstr "" + +msgid "When enabled, the original line breaks will be removed from the teletext subtitles." +msgstr "" + +msgid "When enabled, the receiver will automatically use the audio track which you selected before." +msgstr "" + +msgid "When enabled, the receiver will automatically use the subtitles which you selected before." +msgstr "" + +msgid "When enabled, the receiver will no longer monitor the tuned transponder for possible changes. Do not use this option unless you know what you are doing." +msgstr "" + +msgid "When enabled, the receiver will select an AC3 track (when available)." +msgstr "" + +msgid "When enabled, the receiver will select an AC3+ track (when available)." +msgstr "" + +msgid "When enabled, timeshift starts automatically in background after specified time." +msgstr "" + +#, fuzzy +msgid "When enabled, use DHCP for the IP configuration." +msgstr "atidaryti serverio pavadinimo konfigūraciją" + +msgid "When enabled, your receiver will detect activity on the VCR SCART input." +msgstr "" + +msgid "When nonzero, a recording will start earlier than the starting time indicated by the EPG." +msgstr "" + +msgid "When nonzero, a recording will stop later than the ending time indicated by the EPG." +msgstr "" + +msgid "When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture." +msgstr "" + +msgid "When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture." +msgstr "" + +msgid "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" +msgstr "" +"Jeigu jūs atkursite gamyklinius nustatymus, jūs prarasite VISUS savo konfigūracijos duomenis\n" +"(įskaitant paketus, kanalus, palydovinius duomenis...) \n" +"Po to, kai bus atkurti gamykliniai nustatymai imtuvas pasileis iš naujo automatiškai!\n" +"\n" +"Iš tikrųjų norite atkurti?" + +msgid "Where do you want to backup your settings?" +msgstr "Kur Jūs norite išsaugoti nustatymų atsarginę kopiją?" + +msgid "Where to save temporary timeshift recordings?" +msgstr "Kur saugoti laikinus laiko poslinkio įrašus?" + +msgid "Wireless LAN" +msgstr "Belaidis LAN" + +#, fuzzy +msgid "Wireless network" +msgstr "Belaidis tinklas" + +#, fuzzy +msgid "Wireless network configuration..." +msgstr "Belaidžio tinklo prisijungimo nustatymas." + +msgid "Wireless network connection setup" +msgstr "Belaidžio tinklo prisijungimo nustatymas" + +msgid "Wireless network connection setup." +msgstr "Belaidžio tinklo prisijungimo nustatymas." + +msgid "Wireless network state" +msgstr "Belaidžio tinklo būklė" + +msgid "With popup" +msgstr "" + +msgid "Without popup" +msgstr "" + +msgid "Would you like to install a softcam?" +msgstr "" + +msgid "Write error while recording. Disk full?\n" +msgstr "Įrašymo klaida. Diskas pilnas?\n" + +msgid "Write failed!" +msgstr "Įrašymas klaidingas!" + +msgid "YPbPr" +msgstr "YPbPr" + +msgid "Year" +msgstr "Metai" + +msgid "Yellow DVB subtitles" +msgstr "" + +msgid "Yes" +msgstr "Taip" + +msgid "Yes and save" +msgstr "" + +msgid "Yes and save in movie dir" +msgstr "" + +msgid "Yes to all" +msgstr "Taip į visus" + +msgid "Yes, always" +msgstr "Taip, visada" + +msgid "Yes, and delete this movie" +msgstr "Taip, ir trinti šį filmą" + +msgid "Yes, backup my settings!" +msgstr "Taip, padarykite atsarginę kopiją mano nustatymų!" + +msgid "Yes, delete this movie and return to movie list" +msgstr "" + +msgid "Yes, do a manual scan now" +msgstr "Taip, atlikti rankinę paiešką" + +msgid "Yes, do an automatic scan now" +msgstr "Taip, atlikti automatinę paiešką" + +msgid "Yes, do another manual scan now" +msgstr "Taip, atlikti dar kitą rankinę paiešką" + +msgid "Yes, perform a shutdown now." +msgstr "Taip, atlikti išjungimą dabar." + +msgid "Yes, restore the settings now" +msgstr "Taip, atkurti nustatymus dabar" + +msgid "Yes, returning to movie list" +msgstr "Taip, grįžti į filmų sąrašą" + +msgid "Yesterday" +msgstr "" + +#, python-format +msgid "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" +msgstr "" + +msgid "You can cancel the installation." +msgstr "Jūs galite panaikinti įdiegimą." + +msgid "You can cancel the removal." +msgstr "Jūs galite panaikinti pašalinimą." + +msgid "You can continue watching TV etc. while this is running." +msgstr "" + +msgid "You can install this plugin." +msgstr "Jūs galite įdiegti šią papildomą programą." + +msgid "You can only burn receiver recordings!" +msgstr "" + +msgid "You can remove this plugin." +msgstr "Jūs galite pašalinti šią papildomą programą." + +msgid "You cannot delete this!" +msgstr "Jūs negalite to ištrinti!" + +msgid "You didn't select a channel to record from." +msgstr "Jūs nepasirinkote kanalo, kad įrašyti." + +msgid "You have chosen to backup your settings. Please press OK to start the backup now." +msgstr "Jūs nusprendėte padaryti atsarginę kopiją savo nustatymų. Prašome spausti OK, kad pradėtumėte atsarginę kopiją dabar." + +msgid "You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased." +msgstr "Jūs nusprendėte sukurti naują .NFI diegėją USB rakte. Tada bus perdalintas USB raktas ir visi duomenys jame bus ištrinti." + +msgid "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." +msgstr "Jūs nusprendėte atkurti savo nustatymus. Enigma2 iš naujo pasileis po atkūrimo. Prašome spausti OK, kad pradėtumėte atkūrimą dabar." + +#, python-format +msgid "You have to wait %s!" +msgstr "Jūs turite laukti %s!" + +msgid "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." +msgstr "" + +msgid "You system does not support ext4" +msgstr "" + +msgid "Your backup succeeded. We will now continue to explain the further upgrade process." +msgstr "Atsarginė kopija sukurta. Dabar mes tęsime atnaujinimą. " + +msgid "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" +msgstr "Jūsų kolekcija viršyja vieno sluoksnio DVD disko dydį, jums reikės tuščio dvigubo sluoksnio DVD!" + +msgid "Your current collection will get lost!" +msgstr "Jūsų dabartinė kolekcija bus prarasta!" + +msgid "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." +msgstr "" +"Reikalingas priekinio procesoriaus atnaujinimas.\n" +"Spauskite OK, kad pradėti atnaujinimą." + +msgid "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" + +msgid "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." +msgstr "" +"Jūsų interneto prisijungimas neveikia!\n" +"Prašome pasirinkti tai, ką jūs norite padaryti vėliau." + +#, python-format +msgid "Your internet connection is working (ip: %s)" +msgstr "" + +msgid "Your network configuration has been activated." +msgstr "Jūsų tinklo konfigūracija aktyvuota." + +msgid "Your receiver does not have an internet connection" +msgstr "" + +#, fuzzy +msgid "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" +msgstr "" +"Jūsų imtuvas paruoštas naudojimui.\n" +"\n" +"Jūsų interneto prisijungimas dabar veikia.\n" +"\n" + +msgid "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." +msgstr "" + +msgid "Your receiver is rebooting" +msgstr "" + +msgid "Your receiver is shutting down" +msgstr "" + +msgid "Your receiver is shutting down. Please stand by..." +msgstr "" + +msgid "Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver." +msgstr "" + +msgid "Your receiver will got to stand by due to the sleeptimer." +msgstr "" + +msgid "Your receiver will got to standby due to inactivity." +msgstr "" + +msgid "Your receiver will restart after pressing OK on your remote control." +msgstr "" + +msgid "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." +msgstr "" +"Jūsų belaidžio LAN interneto prisijungimas neveikia!\n" +"Jūs prijungėte savo USB WLAN įrenginį?\n" +"\n" +"Prašome pasirinkti tai, ką jūs norite daryti vėliau." + +msgid "Zap" +msgstr "" + +msgid "Zap back to previously tuned service?" +msgstr "Perjungti į ankstesnį suderintą kanalą?" + +msgid "Zap back to service before positioner setup?" +msgstr "Perjungti atgal į kanalą po pozicionieriaus nustatymo?" + +msgid "Zap back to service before tuner setup?" +msgstr "Perjungti atgal į kanalą po imtuvo nustatymo?" + +msgid "Zap focus to Picture in Picture" +msgstr "" + +msgid "Zap focus to main screen" +msgstr "" + +msgid "Zap mode" +msgstr "" + +msgid "Zap to selected channel" +msgstr "" + +msgid "Zap to selected channel, or show detailed event info (depends on configuration)" +msgstr "" + +msgid "[alternative edit]" +msgstr "[kitų redagavimas]" + +msgid "[bouquet edit]" +msgstr "[paketo redagavimas]" + +msgid "[favourite edit]" +msgstr "[mėgstamiausių redagavimas]" + +msgid "[move mode]" +msgstr "[perkėlimas]" + +msgid "a gui to assign services/providers to common interface modules" +msgstr "kad paskirtų kanalus/tiekėjus bendriems įstatomiems moduliams" + +msgid "a gui to assign services/providers/caids to common interface modules" +msgstr "kad paskirtų kanalus/tiekėjus/caids bendriems įstatomiems moduliams" + +msgid "abort alternatives edit" +msgstr "nutraukti kitų redagavimą" + +msgid "abort bouquet edit" +msgstr "nutraukti paketo redagavimą" + +msgid "abort favourites edit" +msgstr "nutraukti mėgstamiausių redagavimą" + +msgid "about to start" +msgstr "apie pradžią" + +msgid "activate network adapter configuration" +msgstr "aktyvuokite tinklo plokštės konfigūraciją" + +msgid "add alternatives" +msgstr "pridėti kitus" + +msgid "add bookmark" +msgstr "pridėti žymę" + +msgid "add bouquet" +msgstr "pridėti paketą" + +msgid "add marker" +msgstr "pridėti žymeklį" + +msgid "add service to bouquet" +msgstr "pridėti kanalą į paketą" + +msgid "add service to favourites" +msgstr "pridėti kanalą į mėgstamiausi" + +msgid "add to parental protection" +msgstr "pridėti į tėvų kontrolę" + +msgid "adult movie/drama" +msgstr "" + +msgid "advanced" +msgstr "Išplėstas" + +msgid "adventure/western/war" +msgstr "" + +msgid "advertisement/shopping" +msgstr "" + +msgid "after " +msgstr "" + +#, fuzzy +msgid "alphabetic" +msgstr "pagal abėcėlę" + +msgid "alphabetic reverse" +msgstr "" + +msgid "alternative" +msgstr "" + +msgid "always" +msgstr "" + +msgid "and select next channel" +msgstr "" + +msgid "and select previous channel" +msgstr "" + +msgid "arts/culture (without music, general)" +msgstr "" + +msgid "arts/culture magazine" +msgstr "" + +msgid "athletics" +msgstr "" + +msgid "audio tracks" +msgstr "garso takeliai" + +msgid "auto" +msgstr "auto" + +#, fuzzy +msgid "automatic" +msgstr "Automatinis" + +msgid "back" +msgstr "atgal" + +msgid "background image" +msgstr "foninis atvaizdas" + +msgid "ballet" +msgstr "" + +#, python-format +msgid "bc%s" +msgstr "" + +msgid "better" +msgstr "geriau" + +msgid "black" +msgstr "juodas" + +msgid "black & white" +msgstr "" + +msgid "blacklist" +msgstr "juodas sąrašas" + +msgid "blue" +msgstr "mėlynas" + +msgid "broadcasting/press" +msgstr "" + +#, fuzzy +msgid "by date" +msgstr "rūšiuoti pagal datą" + +msgid "cartoon/puppets" +msgstr "" + +msgid "center" +msgstr "" + +msgid "centered" +msgstr "" + +msgid "centered, wrapped" +msgstr "" + +msgid "chapters" +msgstr "skyriai" + +msgid "childrens's/youth program (general)" +msgstr "" + +msgid "circular left" +msgstr "apskritiminė kairė" + +msgid "circular right" +msgstr "apskritiminė dešinė" + +msgid "comedy" +msgstr "" + +msgid "complex" +msgstr "sudėtinis" + +msgid "config menu" +msgstr "konfigūracijos meniu" + +msgid "confirmed" +msgstr "patvirtinta" + +msgid "connected" +msgstr "prisijungta" + +msgid "continue" +msgstr "tęsti" + +msgid "cooking" +msgstr "" + +msgid "copy to bouquets" +msgstr "kopijuoti į paketus" + +msgid "create directory" +msgstr "kurti direktoriją" + +#, python-format +msgid "currently installed image: %s" +msgstr "šiuo metu įdiegtas atvaizdas: %s" + +msgid "daily" +msgstr "kasdien" + +msgid "day" +msgstr "diena" + +#, fuzzy +msgid "default" +msgstr "Numatyta" + +msgid "delete cut" +msgstr "trinti iškirpimą" + +msgid "delete..." +msgstr "" + +msgid "descramble and record ecm" +msgstr "" + +msgid "detective/thriller" +msgstr "" + +msgid "disable" +msgstr "išjungti" + +msgid "disable move mode" +msgstr "išjungti perkėlimą" + +msgid "disabled" +msgstr "išjungtas" + +msgid "disconnected" +msgstr "atsijungta" + +msgid "discussion/interview/debate" +msgstr "" + +msgid "do nothing" +msgstr "nieko nedaryti" + +msgid "documentary" +msgstr "" + +msgid "don't descramble, record ecm" +msgstr "" + +msgid "done!" +msgstr "baigta!" + +msgid "east" +msgstr "" + +msgid "economics/social advisory" +msgstr "" + +msgid "edit alternatives" +msgstr "redaguoti kitus" + +msgid "education/science/factual topics (general)" +msgstr "" + +msgid "empty" +msgstr "tuščias" + +msgid "enable" +msgstr "įjungti" + +msgid "enable bouquet edit" +msgstr "įjungti paketo redagavimą" + +msgid "enable favourite edit" +msgstr "įjungti mėgstamiausių redagavimą" + +msgid "enable move mode" +msgstr "įjungti perkėlimą" + +msgid "enabled" +msgstr "įjungtas" + +msgid "end alternatives edit" +msgstr "baigti kitų redagavimą" + +msgid "end bouquet edit" +msgstr "baigti paketo redagavimą" + +msgid "end cut here" +msgstr "kirpimo pabaiga čia" + +msgid "end favourites edit" +msgstr "baigti mėgstamiausių redagavimą" + +msgid "entertainment (10-16 year old)" +msgstr "" + +msgid "entertainment (6-14 year old)" +msgstr "" + +msgid "equal to" +msgstr "lygus į" + +msgid "equestrian" +msgstr "" + +msgid "exit DVD player or return to file browser" +msgstr "išeiti iš DVD grotuvo arba sugrįžti į failų naršyklę" + +msgid "exit movielist" +msgstr "" + +msgid "exit network adapter configuration" +msgstr "išeiti iš tinklo adapterio konfigūracijos" + +msgid "exit networkadapter setup menu" +msgstr "išeiti iš tinklo adapterio nustatymų meniu" + +msgid "experimental film/video" +msgstr "" + +msgid "false" +msgstr "" + +msgid "fashion" +msgstr "" + +msgid "fileformats (BMP, PNG, JPG, GIF)" +msgstr "failų formatai (BMP, PNG, JPG, GIF)" + +msgid "filename" +msgstr "failo pavadinimas" + +msgid "film/cinema" +msgstr "" + +msgid "fine arts" +msgstr "" + +msgid "fine-tune your display" +msgstr "tikslus jūsų ekrano suderinimas" + +msgid "fitness & health" +msgstr "" + +#, fuzzy +msgid "flat alphabetic" +msgstr "pagal abėcėlę" + +#, fuzzy +msgid "flat alphabetic reverse" +msgstr "pagal abėcėlę" + +msgid "folk/traditional music" +msgstr "" + +msgid "football/soccer" +msgstr "" + +msgid "foreign countries/expeditions" +msgstr "" + +msgid "forward to the next chapter" +msgstr "persukti į kitą skyrių" + +msgid "free" +msgstr "laisvi" + +msgid "from" +msgstr "" + +msgid "further education" +msgstr "" + +msgid "game show/quiz/contest" +msgstr "" + +msgid "gardening" +msgstr "" + +msgid "go to deep standby" +msgstr "eiti į visišką išjungimą" + +msgid "go to standby" +msgstr "eiti į išjungimą" + +msgid "grab this frame as bitmap" +msgstr "užgriebti šį rėmą kaip taškinę grafiką" + +msgid "green" +msgstr "žalias" + +msgid "handicraft" +msgstr "" + +msgid "height" +msgstr "" + +msgid "help..." +msgstr "pagalba..." + +msgid "horizontal" +msgstr "horizontali" + +msgid "information/education/school program" +msgstr "" + +msgid "init module" +msgstr "aptinkamas modulis" + +msgid "init modules" +msgstr "aptinkami moduliai" + +msgid "insert mark here" +msgstr "įterpkite žymeklį čia" + +msgid "invalid type" +msgstr "" + +msgid "jazz" +msgstr "" + +msgid "jump back to the previous title" +msgstr "šuolis atgal į ankstesnį pavadinimą" + +msgid "jump forward to the next title" +msgstr "šuolis priekin į kitą pavadinimą" + +msgid "languages" +msgstr "" + +msgid "leave movie player..." +msgstr "palikti grotuvą..." + +msgid "left" +msgstr "kairys" + +msgid "left, wrapped" +msgstr "" + +msgid "leisure hobbies (general)" +msgstr "" + +msgid "length" +msgstr "ilgis" + +msgid "limit ..., aborting !" +msgstr "" + +msgid "list style compact" +msgstr "sąrašo stilius kompaktiškas" + +msgid "list style compact with description" +msgstr "sąrašo stilius kompaktiškas su aprašymu" + +msgid "list style default" +msgstr "numatytas sąrašo stilius" + +msgid "list style single line" +msgstr "sąrašo stilius viena linija" + +msgid "literature" +msgstr "" + +msgid "live broadcast" +msgstr "" + +msgid "locked" +msgstr "užrakinta" + +msgid "loopthrough to" +msgstr "šiurkštus į" + +msgid "magazines/reports/documentary" +msgstr "" + +msgid "manual" +msgstr "rankinis" + +msgid "martial sports" +msgstr "" + +msgid "medicine/physiology/psychology" +msgstr "" + +msgid "menu" +msgstr "meniu" + +msgid "mins" +msgstr "min (ių)" + +msgid "minutes" +msgstr "minučių" + +msgid "month" +msgstr "mėnuo" + +msgid "motor sport" +msgstr "" + +msgid "motoring" +msgstr "" + +msgid "move down to last entry" +msgstr "perkelti žemyn prie paskutinio įėjimo" + +msgid "move down to next entry" +msgstr "perkelti žemyn prie kito įėjimo" + +msgid "move up to first entry" +msgstr "perkelti aukštyn prie pirmo įėjimo" + +msgid "move up to previous entry" +msgstr "perkelti aukštyn prie ankstesnio įėjimo" + +msgid "movie/drama (general)" +msgstr "" + +msgid "multinorm" +msgstr "multinorma" + +msgid "music/ballet/dance (general)" +msgstr "" + +msgid "musical/opera" +msgstr "" + +msgid "nature/animals/environment" +msgstr "" + +msgid "never" +msgstr "niekada" + +msgid "new media" +msgstr "" + +msgid "news magazine" +msgstr "" + +msgid "news/current affairs (general)" +msgstr "" + +msgid "news/weather report" +msgstr "" + +msgid "no" +msgstr "ne" + +msgid "no CAId selected" +msgstr "joks CAId neišsirinktas" + +msgid "no CI slots found" +msgstr "jokie CI skaitytuvai nesurasti" + +msgid "no module found" +msgstr "modulis nerastas" + +msgid "no storage devices found" +msgstr "" + +msgid "none" +msgstr "jokio" + +msgid "normal" +msgstr "" + +msgid "not configured" +msgstr "nesukonfigūruotas" + +msgid "not locked" +msgstr "neužrakintas" + +msgid "not supported" +msgstr "nepalaikomas" + +msgid "not used" +msgstr "nenaudojamas" + +msgid "nothing connected" +msgstr "niekas nepajungta" + +msgid "of a DUAL layer medium used." +msgstr "iš DVIEJŲ sluoksnių naudojama." + +msgid "of a SINGLE layer medium used." +msgstr "iš VIENO sluoksnio naudojama." + +msgid "off" +msgstr "išjungta" + +msgid "offset is" +msgstr "" + +msgid "on" +msgstr "įjungta" + +msgid "on READ ONLY medium." +msgstr "diskas TIK SKAITYMUI." + +msgid "on end of movie" +msgstr "" + +msgid "once" +msgstr "vieną kartą" + +msgid "only from deep standby" +msgstr "" + +msgid "only from standby" +msgstr "" + +msgid "open EPG..." +msgstr "" + +msgid "open Info..." +msgstr "" + +msgid "open nameserver configuration" +msgstr "atidaryti serverio pavadinimo konfigūraciją" + +msgid "original" +msgstr "" + +msgid "original language" +msgstr "" + +msgid "pass" +msgstr "perduoti" + +msgid "performing arts" +msgstr "" + +msgid "play as picture in picture" +msgstr "rodyti paveikslėlį paveikslėlyje" + +msgid "play in mainwindow" +msgstr "" + +msgid "please press OK when ready" +msgstr "prašome paspausti OK, kai būsite pasiruošę" + +msgid "please wait, loading picture..." +msgstr "laukite...užkraunamas paveikslėlis" + +msgid "popular culture/traditional arts" +msgstr "" + +msgid "pre-school children's program" +msgstr "" + +msgid "receiver software because updates are available." +msgstr "" + +msgid "record" +msgstr "įrašas" + +msgid "recording..." +msgstr "įrašoma..." + +msgid "red" +msgstr "raudonas" + +msgid "religion" +msgstr "" + +msgid "remarkable people" +msgstr "" + +msgid "remove after this position" +msgstr "pašalinti po šios vietos" + +msgid "remove all alternatives" +msgstr "pašalinti visus kitus" + +msgid "remove all new found flags" +msgstr "šalinti visus žymeklius 'naujas'" + +msgid "remove before this position" +msgstr "pašalinti po šios vietos" + +msgid "remove bookmark" +msgstr "pašalinti žymę" + +msgid "remove directory" +msgstr "pašalinti direktoriją" + +msgid "remove entry" +msgstr "pašalinti" + +msgid "remove from parental protection" +msgstr "panaikinti tėvų kontrolę" + +msgid "remove new found flag" +msgstr "šalinti žymeklį 'naujas'" + +msgid "remove selected satellite" +msgstr "pašalinti pasirinktą palydovą" + +msgid "remove this mark" +msgstr "šalinti šį žymeklį" + +msgid "rename entry" +msgstr "" + +msgid "repeat playlist" +msgstr "pakartoti grojaraštį" + +msgid "repeated" +msgstr "pakartotinis" + +msgid "reverse by date" +msgstr "" + +msgid "rewind to the previous chapter" +msgstr "atsukti į ankstesnį skyrių" + +msgid "right" +msgstr "dešinys" + +msgid "right, wrapped" +msgstr "" + +msgid "rock/pop" +msgstr "" + +msgid "romance" +msgstr "" + +msgid "save last directory on exit" +msgstr "išsaugoti paskutinę direktoriją išeinant" + +msgid "save playlist on exit" +msgstr "išsaugoti grojaraštį išeinant" + +msgid "scan state" +msgstr "paieškos eiga" + +msgid "science fiction/fantasy/horror" +msgstr "" + +msgid "second cable of motorized LNB" +msgstr "antras kabelis nuo poliarizuotos LNB" + +msgid "seconds" +msgstr "sekundžių" + +msgid "select" +msgstr "pasirinkti" + +msgid "select CAId's" +msgstr "išsirinkite CAId's" + +msgid "select EPG..." +msgstr "" + +msgid "select Info..." +msgstr "" + +msgid "select menu entry" +msgstr "išsirinkite meniu įėjimą" + +msgid "select movie" +msgstr "pasirinkite filmą" + +msgid "select the movie path" +msgstr "" + +msgid "serious music/classic music" +msgstr "" + +msgid "serious/classical/religious/historical movie/drama" +msgstr "" + +msgid "service PIN" +msgstr "kanalo PIN" + +msgid "set as startup service" +msgstr "nustatyti kaip paleidimo kanalą" + +msgid "setup PIN" +msgstr "valdymo PIN" + +msgid "show DVD main menu" +msgstr "rodyti DVD pagrindinį meniu" + +msgid "show all tags" +msgstr "" + +msgid "show alternatives" +msgstr "rodyti kitus" + +msgid "show event details" +msgstr "rodyti užduočių detales" + +msgid "show extended description" +msgstr "" + +msgid "show mediaplayer on mainmenu" +msgstr "" + +msgid "show softwaremanager in setup menu" +msgstr "" + +msgid "show softwaremanager on blue button" +msgstr "" + +msgid "show tag menu" +msgstr "" + +msgid "show transponder info" +msgstr "transponderio informacija" + +msgid "show/game show (general)" +msgstr "" + +msgid "shuffle" +msgstr "" + +msgid "shut down" +msgstr "išjungti" + +msgid "simple" +msgstr "paprastas" + +msgid "skip backward" +msgstr "praleisti sukimą atgal" + +msgid "skip forward" +msgstr "praleisti sukimą į priekį" + +msgid "soap/melodram/folkloric" +msgstr "" + +msgid "social/political issues/economics (general)" +msgstr "" + +msgid "social/spiritual science" +msgstr "" + +msgid "sorting of playlists" +msgstr "" + +msgid "special characters" +msgstr "ypatingi požymiai" + +msgid "special events" +msgstr "" + +msgid "special format data DVD (HDTV compatible)" +msgstr "" + +msgid "sports (general)" +msgstr "" + +msgid "sports magazine" +msgstr "" + +msgid "standard" +msgstr "standartinis" + +msgid "start cut here" +msgstr "pradėti iškirpimą čia" + +msgid "start directory" +msgstr "pradėti direktoriją" + +msgid "stepsize" +msgstr "" + +msgid "stereo" +msgstr "stereo" + +msgid "stop using as startup service" +msgstr "" + +msgid "switch to bookmarks" +msgstr "perjungti į žymes" + +msgid "switch to filelist" +msgstr "perjungti į failų sąrašą" + +msgid "switch to the next angle" +msgstr "perjunkite į kitą kampą" + +msgid "switch to the next audio track" +msgstr "perjungti į kitą garso takelį" + +msgid "switch to the next subtitle language" +msgstr "perjungti į kitą subtitrų kalbą" + +msgid "talk show" +msgstr "" + +msgid "team sports" +msgstr "" + +msgid "technology/natural science" +msgstr "" + +msgid "template file" +msgstr "šablono failas" + +msgid "tennis/squash" +msgstr "" + +msgid "this recording" +msgstr "tai įrašyta" + +msgid "this service is protected by a parental control pin" +msgstr "šis kanalas apsaugotas tėvų kontrolės PIN kodu" + +msgid "toggle time, chapter, audio, subtitle info" +msgstr "laikas, skyrius, garsas, subtitrų informacija" + +msgid "top" +msgstr "" + +msgid "tourism/travel" +msgstr "" + +msgid "true" +msgstr "" + +msgid "unavailable" +msgstr "nepasiekiamas" + +msgid "unconfirmed" +msgstr "neparvirtintas" + +msgid "undefined" +msgstr "" + +msgid "unknown" +msgstr "nežinoma" + +msgid "unknown service" +msgstr "nežinomas kanalas" + +msgid "unpublished" +msgstr "" + +msgid "until standby/restart" +msgstr "iki budėjimo/paleisti iš naujo" + +msgid "user defined" +msgstr "vartotojo nustatytas" + +msgid "variety show" +msgstr "" + +msgid "vertical" +msgstr "vertikali" + +msgid "wait for ci..." +msgstr "laukite atsakymo iš CI..." + +msgid "wait for mmi..." +msgstr "laukite atsakymo iš mmi..." + +msgid "waiting" +msgstr "laukimas" + +msgid "water sport" +msgstr "" + +msgid "weekly" +msgstr "kas savaitę" + +msgid "west" +msgstr "" + +msgid "when PiPzap enabled zap channel down..." +msgstr "" + +msgid "when PiPzap enabled zap channel up..." +msgstr "" + +msgid "white" +msgstr "baltas" + +msgid "whitelist" +msgstr "baltas sąrašas" + +msgid "width" +msgstr "" + +msgid "winter sport" +msgstr "" + +msgid "wireless network interface" +msgstr "bevielio tinklo sąsaja" + +#, python-format +msgid "with %d error" +msgid_plural "with %d errors" +msgstr[0] "" +msgstr[1] "" + +msgid "working" +msgstr "dirba" + +msgid "yellow" +msgstr "geltonas" + +msgid "yes" +msgstr "taip" + +msgid "yes (keep feeds)" +msgstr "taip (saugoti feeds)" + +msgid "zap" +msgstr "jungti" + +msgid "zap and record" +msgstr "" + +msgid "zapped" +msgstr "įjungta" + +#~ msgid "AA" +#~ msgstr "AA" + +#~ msgid "AB" +#~ msgstr "AB" + +#, fuzzy +#~ msgid "Activate PiP" +#~ msgstr "Aktyvuoti paveikslėlį paveikslėlyje" + +#, fuzzy +#~ msgid "Add/remove timer for current event" +#~ msgstr "pridėti įrašą (stabdyti po esamo įvykio)" + +#, fuzzy +#~ msgid "All satellites" +#~ msgstr "Visi palydovai" + +#~ msgid "BA" +#~ msgstr "BA" + +#~ msgid "BB" +#~ msgstr "BB" + +#~ msgid "Behavior of 'pause' when paused" +#~ msgstr "Pauzės elgsena, kai daroma pauzė" + +#~ msgid "Committed DiSEqC command" +#~ msgstr "DiSEqC perjungimo komanda" + +#~ msgid "DiSEqC repeats" +#~ msgstr "DiSEqC pakartojimai" + +#~ msgid "No satellite frontend found!!" +#~ msgstr "Nerastas palydovas!!" + +#~ msgid "Remove timer" +#~ msgstr "Pašalinti laikmatį" + +#~ msgid "Send DiSEqC" +#~ msgstr "Siųskite DiSEqC" + +#, fuzzy +#~ msgid "Switch next channel" +#~ msgstr "kitas kanalas" + +#~ msgid "Uncommitted DiSEqC command" +#~ msgstr "Perjungimo komanda DiSEqC" + +#~ msgid "Zap back to service before satfinder?" +#~ msgstr "Perjungti atgal į kanalą po palydovo paieškos?" + +#~ msgid "tuner is not supported" +#~ msgstr "imtuvas nepalaikomas" diff --git a/po/lv.po b/po/lv.po new file mode 100644 index 0000000..126d770 --- /dev/null +++ b/po/lv.po @@ -0,0 +1,8095 @@ +# Latvian translations for Enigma2. +msgid "" +msgstr "" +"Project-Id-Version: enigma2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-07-21 19:08+0200\n" +"PO-Revision-Date: 2013-11-09 00:59+0200\n" +"Last-Translator: Tapat <taapat@gmail.com>\n" +"Language-Team: Taapat <taapat@gmail.com>\n" +"Language: lv_LV\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Poedit-SourceCharset: UTF-8\n" +"X-Generator: Poedit 1.5.4\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n" + +msgid "" +"\n" +"Advanced options and settings." +msgstr "" +"\n" +"Papildus opcijas un iestatījumi." + +msgid "" +"\n" +"After pressing OK, please wait!" +msgstr "" +"\n" +"Pēc OK nospiešanas uzgaidiet!" + +msgid "" +"\n" +"Backup your receiver settings." +msgstr "" +"\n" +"Izveidot iestatījumu dublējumkopiju." + +msgid "" +"\n" +"Edit the upgrade source address." +msgstr "" +"\n" +"Rediģēt atjaunināšanas avota adresi." + +msgid "" +"\n" +"Manage extensions or plugins for your receiver" +msgstr "" +"\n" +"Pārvaldīt uztvērēja paplašinājumus vai spraudņus" + +msgid "" +"\n" +"Online update of your receiver software." +msgstr "" +"\n" +"Uztvērēja programmatūras atjaunošana no interneta." + +msgid "" +"\n" +"Press OK on your remote control to continue." +msgstr "" +"\n" +"Lai turpinātu spiediet OK uz tālvadības pults." + +msgid "" +"\n" +"Restore your backups by date." +msgstr "" +"\n" +"Atjaunot dublējumkopijas pēc datuma." + +msgid "" +"\n" +"Restore your receiver settings." +msgstr "" +"\n" +"Atjaunot uztvērēja iestatījumus." + +msgid "" +"\n" +"Restore your receiver with a new firmware." +msgstr "" +"\n" +"Atjaunot uztvērēju ar jauno programaparatūru." + +msgid "" +"\n" +"Scan for local extensions and install them." +msgstr "" +"\n" +"Meklēt un uzstādīt lokālos paplašinājumus." + +msgid "" +"\n" +"Select your backup device.\n" +"Current device: " +msgstr "" +"\n" +"Izvēlieties dublējumkopijas ierīci.\n" +"Pašreizējā ierīce: " + +msgid "" +"\n" +"View, install and remove available or installed packages." +msgstr "" +"\n" +"Skatīt, uzstādīt un dzēst pieejamās vai uzstādītās pakotnes." + +msgid " (PiP)" +msgstr " (PiP)" + +msgid " (Radio)" +msgstr " (Radio)" + +msgid " (TV)" +msgstr " (TV)" + +msgid " (disabled)" +msgstr "" + +msgid " (higher than any auto)" +msgstr "" + +msgid " (higher than rotor any auto)" +msgstr "" + +msgid " (lower than any auto)" +msgstr "" + +msgid " extensions." +msgstr "paplašinājumi." + +msgid " ms" +msgstr " ms" + +msgid " packages selected." +msgstr "izvēlētas pakotnes." + +msgid " updates available." +msgstr "atjaunojumi pieejami." + +#. TRANSLATORS: short time representation hour:minute +#, python-format +msgid "%2d:%02d" +msgstr "%2d:%02d" + +#. TRANSLATORS: full time representation hour:minute:seconds +#, python-format +msgid "%2d:%02d:%02d" +msgstr "%2d:%02d:%02d" + +msgid "%A %d %B" +msgstr "%A %d %B" + +#. TRANSLATORS: long date representations dayname daynum monthname in strftime() format! See 'man strftime' +msgid "%A %e %B" +msgstr "%A %e %B" + +#. TRANSLATORS: full date representation dayname daynum monthname year in strftime() format! See 'man strftime' +msgid "%A %e %B %Y" +msgstr "%A %e %B %Y" + +msgid "%H:%M" +msgstr "%H:%M" + +#. TRANSLATORS: short date representation short dayname daynum short monthname in strftime() format! See 'man strftime' +msgid "%a %e/%m" +msgstr "%a %e/%m" + +#. TRANSLATORS: long date representation short dayname daynum short monthname hour:minute in strftime() format! See 'man strftime' +msgid "%a %e/%m %-H:%M" +msgstr "%a %e/%m %-H:%M" + +#. TRANSLATORS: Intermediate scanning result, '%d' channel(s) have been found so far +#, python-format +msgid "%d channel found" +msgid_plural "%d channels found" +msgstr[0] "%d kanāls atrasts" +msgstr[1] "%d kanāli atrasti" +msgstr[2] "%d kanāli atrasti" + +#, python-format +msgid "%d file" +msgid_plural "%d files" +msgstr[0] "%d fails" +msgstr[1] "%d faili" +msgstr[2] "%d faili" + +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d stunda" +msgstr[1] "%d stundas" +msgstr[2] "%d stundas" + +#, python-format +msgid "%d job is running in the background!" +msgid_plural "%d jobs are running in the background!" +msgstr[0] "%d darbs tiek veikts fonā!" +msgstr[1] "%d darbi tiek veikti fonā!" +msgstr[2] "%d darbi tiek veikti fonā!" + +#, python-format +msgid "%d min" +msgstr "%d min" + +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d minūte" +msgstr[1] "%d minūtes" +msgstr[2] "%d minūtes" + +#, python-format +msgid "%d minutes" +msgstr "%d minūtes" + +#, python-format +msgid "%d pixel wide" +msgid_plural "%d pixels wide" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "%d sekunde" +msgstr[1] "%d sekundes" +msgstr[2] "%d sekundes" + +#, python-format +msgid "%d subdirectory" +msgid_plural "%d subdirectories" +msgstr[0] "%d apakšmape" +msgstr[1] "%d apakšmapes" +msgstr[2] "%d apakšmapes" + +#, python-format +msgid "%d wireless network found!" +msgid_plural "%d wireless networks found!" +msgstr[0] "%d bezvadu tīkls atrasts!" +msgstr[1] "%d bezvadu tīkli atrasti!" +msgstr[2] "%d bezvadu tīkli atrasti!" + +msgid "%d-%b-%Y %-H:%M" +msgstr "%d-%b-%Y %-H:%M" + +msgid "%d-%m" +msgstr "%d-%m" + +msgid "%d.%B %Y" +msgstr "%d.%B %Y" + +#. TRANSLATORS: VFD hour:minute daynum short monthname in strftime() format! See 'man strftime' +msgid "%k:%M %e/%m" +msgstr "%k:%M %e/%m" + +#, python-format +msgid "%s %s free disk space" +msgstr "%s %s brīva vieta uz diska" + +#, python-format +msgid "%s (%s)\n" +msgstr "%s (%s)\n" + +#. TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. +#, python-format +msgid "%s is no longer used. Should it be deleted?" +msgstr "%s vairs neizmanto. Vai izdzēst?" + +#, python-format +msgid "%s updated package available" +msgid_plural "%s updated packages available" +msgstr[0] "%s pakotnes atjaunojums pieejams" +msgstr[1] "%s pakotņu atjaunojumi pieejami" +msgstr[2] "%s pakotņu atjaunojumi pieejami" + +#, python-format +msgid "%s%d min" +msgstr "%s%d min" + +#, python-format +msgid "%s/%s: %s" +msgstr "%s/%s: %s" + +msgid "(ZAP)" +msgstr "(PĀRSLĒGT)" + +msgid "(empty)" +msgstr "(tukšs)" + +msgid "(show optional DVD audio menu)" +msgstr "(rādīt papildu DVD skaņas izvēlni)" + +msgid "* Only available if more than one interface is active." +msgstr "* Pieejams ja ir aktīvs vairāk nekā viens interfeiss." + +msgid "/s" +msgstr "/s" + +msgid "0" +msgstr "0" + +msgid "1" +msgstr "1" + +msgid "1.0" +msgstr "1.0" + +msgid "1.1" +msgstr "1.1" + +msgid "1.2" +msgstr "1.2" + +msgid "12V output" +msgstr "12V izeja" + +msgid "13 V" +msgstr "13 V" + +msgid "16:10" +msgstr "16:10" + +msgid "16:10 Letterbox" +msgstr "16:10 platekrāns" + +msgid "16:10 PanScan" +msgstr "16:10 PanScan" + +msgid "16:9" +msgstr "16:9" + +msgid "16:9 Letterbox" +msgstr "16:9 platekrāns" + +msgid "16:9 always" +msgstr "16:9 vienmēr" + +msgid "18 V" +msgstr "18 V" + +msgid "2" +msgstr "2" + +msgid "23.976" +msgstr "23.976" + +msgid "24" +msgstr "24" + +msgid "25" +msgstr "25" + +msgid "29.97" +msgstr "29.97" + +msgid "3" +msgstr "3" + +msgid "30" +msgstr "30" + +msgid "3d mode" +msgstr "3d režīms" + +msgid "4" +msgstr "4" + +msgid "4:3" +msgstr "4:3" + +msgid "4:3 Letterbox" +msgstr "4:3 platekrāns" + +msgid "4:3 PanScan" +msgstr "4:3 PanScan" + +msgid "5" +msgstr "5" + +msgid "6" +msgstr "6" + +msgid "7" +msgstr "7" + +msgid "8" +msgstr "8" + +msgid "9" +msgstr "9" + +#, python-format +msgid ": %s" +msgstr "" + +msgid "<Current movielist location>" +msgstr "<Tekošā filmu saraksta atrašanās vieta>" + +msgid "<Default movie location>" +msgstr "<Filmu atrašanās vieta pēc noklusējuma>" + +msgid "<Last timer location>" +msgstr "<Pēdējā taimera atrašanās vieta>" + +msgid "<unknown>" +msgstr "<nezināms>" + +msgid "??" +msgstr "??" + +msgid "A" +msgstr "A" + +#, python-format +msgid "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" +msgstr "" +"Konfigurācijas fails (%s) kopš uzstādīšanas ir izmainīts.\n" +"Vai vēlaties paturēt izmainīto versiju?" + +#, python-format +msgid "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" +msgstr "" +"Konfigurācijas fails (%s) kopš uzstādīšanas ir izmainīts.\n" +"Vai vēlaties paturēt izmainīto versiju?" + +msgid "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"Taimeris ir beidzis ierakstu un vēlas izslēgt\n" +"uzvērēju gaidstāvē. Vai to darīt?" + +msgid "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"Taimeris ir beidzis ierakstu un vēlas izslēgt\n" +"uzvērēju. Vai izslēgt?" + +msgid "A graphical EPG for all services of an specific bouquet" +msgstr "Grafiskais EPG visiem kanāliem izvēlētajā buķetē" + +#, python-format +msgid "" +"A record has been started:\n" +"%s" +msgstr "" +"Ieraksts ir sācies:\n" +"%s" + +msgid "" +"A recording is currently running.\n" +"What do you want to do?" +msgstr "" +"Pašreiz notiek ieraksts.\n" +"Ko Jūs vēlaties darīt?" + +msgid "A recording is currently running. Please stop the recording before trying to configure the positioner." +msgstr "Pašreiz notiek ieraksts. Pirms konfigurējat pozicionieri lūdzu apturiet ierakstu." + +msgid "A recording is currently running. Please stop the recording before trying to scan." +msgstr "Pašreiz notiek ieraksts. Pirms mēģināt meklēt lūdzu apturiet ierakstu." + +msgid "A recording is currently running. Please stop the recording before trying to start the satfinder." +msgstr "Pašreiz notiek ieraksts. Pirms startējiet sat-meklētāju lūdzu apturiet ierakstu." + +#, python-format +msgid "A required tool (%s) was not found." +msgstr "Vajadzīgais rīks (%s) netika atrasts." + +msgid "A search for available updates is currently in progress." +msgstr "Notiek pieejamo atjaunojumu meklēšana." + +msgid "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" +msgstr "" +"Atrasta otra nokonfigurēta tīkla iekārta.\n" +"\n" +"Vai vēlaties izslēgt otru tīkla iekārtu?" + +msgid "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"Miega taimeris vēlas uztvērēju\n" +"izslēgt gaidstāvē. Vai to darīt?" + +msgid "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"Miega taimeris vēlas izslēgt\n" +"uzvērēju. Vai izslēgt?" + +msgid "A small overview of the available icon states and actions." +msgstr "Vienkāršs pārskats par pieejamām ikonām un darbībām." + +msgid "" +"A timer failed to record!\n" +"Disable TV and try again?\n" +msgstr "" +"Taimerim neizdevās uzsākt ierakstu!\n" +"Izslēgt TV un mēģināt vēlreiz?\n" + +msgid "A/V settings" +msgstr "A/V iestatījumi" + +msgid "AC3/DTS downmix" +msgstr "AC3/DTS pārveidošana" + +msgid "Abort" +msgstr "Atcelt" + +msgid "About" +msgstr "Par" + +msgid "About..." +msgstr "Par..." + +msgid "Accesspoint:" +msgstr "Piekļuves punkts:" + +msgid "Action on long powerbutton press" +msgstr "Ilgstoši nospiežot izslēgšanas taustiņu" + +msgid "Action on short powerbutton press" +msgstr "Īsi nospiežot izslēgšanas taustiņu" + +msgid "Activate Picture in Picture" +msgstr "Aktivizēt funkciju attēls attēlā" + +msgid "Activate current configuration" +msgstr "Aktivizēt pašreizējo konfigurāciju" + +msgid "Activate network settings" +msgstr "Aktivizēt tīkla iestatījumus" + +msgid "Activate the configured network settings." +msgstr "Aktivizēt nokonfigurētos tīkla iestatījumus" + +msgid "Adapter settings" +msgstr "Adaptera iestatījumi" + +msgid "Add" +msgstr "Pievienot" + +msgid "Add Bookmark" +msgstr "Pievienot grāmatzīmi" + +msgid "Add a mark" +msgstr "Pievienot iezīmi" + +msgid "Add a nameserver entry" +msgstr "Pievienot DNS ierakstu" + +msgid "Add a new title" +msgstr "Pievienot jaunu nosaukumu" + +msgid "Add bookmark" +msgstr "Pievienot grāmatzīmi" + +msgid "Add directory to playlist" +msgstr "Pievienot mapi repertuāram" + +msgid "Add file to playlist" +msgstr "Pievienot failu repertuāram" + +msgid "Add files to playlist" +msgstr "Pievienot failus repertuāram" + +msgid "Add more details to the crash log" +msgstr "Pievienot vairāk informācijas avārijas logam" + +msgid "Add provider" +msgstr "Pievienot operatoru" + +msgid "Add recording (enter recording duration)" +msgstr "Sākt ierakstu (ievadīt ieraksta ilgumu)" + +msgid "Add recording (enter recording endtime)" +msgstr "Sākt ierakstu (ievadīt ieraksta beigu laiku)" + +msgid "Add recording (indefinitely)" +msgstr "Sākt ierakstu (nenoteikti)" + +msgid "Add recording (stop after current event)" +msgstr "Sākt ierakstu (apturēt pēc pašreizējā notikuma)" + +msgid "Add service" +msgstr "Pievienot kanālo" + +msgid "Add timer" +msgstr "Pievienot taimeri" + +msgid "Add title" +msgstr "Pievienot nosaukumu" + +msgid "Add to bouquet" +msgstr "Pievienot buķetei" + +msgid "Add to favourites" +msgstr "Pievienot favorītiem" + +msgid "Add/remove change timer for current event" +msgstr "" + +msgid "Adjust 3D settings" +msgstr "Pielāgot 3D iestatījumus" + +msgid "Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens." +msgstr "Regulēt krāsu iestatījumus tā, lai visi krāsu toņi ir izšķirami bet, cik iespējams, piesātināti. Ja esat apmierināti ar rezultātu tad spiediet OK, lai aizvērtu video precizēšanu vai izmantojiet ciparu taustiņus, lai izvēlētos citus testēšanas attēlus." + +msgid "Advanced" +msgstr "" + +msgid "Advanced options" +msgstr "Papildus iespējas" + +msgid "Advanced restore" +msgstr "Papildus atjaunošana" + +msgid "Advanced software" +msgstr "Papildus programmatūra" + +msgid "Advanced software plugin" +msgstr "Papildus programmatūras spraudnis" + +msgid "Advanced video enhancement setup" +msgstr "Video uzlabošanas papildus iestatījumi" + +msgid "Advanced video setup" +msgstr "Papildus video iestatījumi" + +msgid "After event" +msgstr "Pēc notikuma" + +msgid "Album" +msgstr "Albums" + +msgid "Alignment of events" +msgstr "Notikumu izvietojums" + +msgid "Alignment of service names" +msgstr "Kanāla nosaukumu izvietojums" + +msgid "All" +msgstr "Visi" + +msgid "All ages" +msgstr "Visi vecumi" + +msgid "All satellites 1 (USALS)" +msgstr "" + +msgid "All satellites 2 (USALS)" +msgstr "" + +msgid "All satellites 3 (USALS)" +msgstr "" + +msgid "All satellites 4 (USALS)" +msgstr "" + +msgid "Allocate" +msgstr "Iedalīt" + +msgid "Allocate unused memory index" +msgstr "Piešķirt neizmantoto atmiņas indeksu" + +msgid "Allow quit movieplayer with exit" +msgstr "Izejot atļut izslēgt filmu atskaņotāju" + +msgid "Allow subtitle language to equal audio language" +msgstr "Atļaut subtitru valodu vienādu ar audio valodu" + +msgid "Allow subtitles for hearing impaired" +msgstr "Atļaut subtitrus dzirdes traucējumiem" + +msgid "Alpha" +msgstr "Alfa" + +msgid "Alternative" +msgstr "Alternatīvas" + +msgid "Alternative numbering mode" +msgstr "Alternatīvais numuru režīms" + +msgid "Alternative services tuner priority" +msgstr "Alternatīvo uztvērēju prioritāte" + +msgid "Always ask" +msgstr "Vienmēr jautāt" + +msgid "Always hide infobar" +msgstr "vienmēr slēpt infojoslu" + +msgid "An empty filename is illegal." +msgstr "Faila nosaukums nevar būt tukšs." + +msgid "An error occurred while downloading the packetlist. Please try again." +msgstr "Kļūda lejupielādējot pakotņu sarakstu. Lūdzu mēģiniet vēlreiz." + +msgid "An unknown error occurred!" +msgstr "Nezināma kļūda!" + +msgid "And will put your receiver in standby over " +msgstr "Un iestatīt uztvērēju gaidstāvē pēc " + +msgid "Any activity" +msgstr "Jebkura aktivitāte" + +msgid "Arabic" +msgstr "Arābu" + +msgid "Are you sure to remove this entry?" +msgstr "Vai tiešām vēlaties dzēst šo ierakstu?" + +msgid "" +"Are you sure you want to activate this network configuration?\n" +"\n" +msgstr "" +"Vai tiešām vēlaties aktivizēt šo tīkla konfigurāciju?\n" +"\n" + +msgid "" +"Are you sure you want to delete\n" +"the following backup:\n" +msgstr "" +"Vai tiešām vēlaties dzēst\n" +"šo dublējumkopiju:\n" + +msgid "Are you sure you want to exit this wizard?" +msgstr "Vai tiešām vēlaties iziet no šī veidņa?" + +msgid "" +"Are you sure you want to restart your network interfaces?\n" +"\n" +msgstr "" +"Vai tiešām vēlaties pārstartēt tīkla interfeisus? \n" +"\n" + +#, python-format +msgid "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Vai tiešām vēlaties atjaunot\n" +"šo dublējumkopiju:\n" +"%s\n" +"Uztvērējs pārstartēsies pēc atjaunošanas!" + +msgid "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Vai tiešām vēlaties atjaunot dublējumkopiju?\n" +"Uztvērējs pārstartēsies pēc atjaunošanas!" + +msgid "Artist" +msgstr "Izpildītājs" + +msgid "Arts/Culture" +msgstr "Māksla/Kultūra" + +msgid "Ask user" +msgstr "Jautāt" + +msgid "Aspect ratio" +msgstr "Malu attiecība" + +msgid "Assigned CAIds:" +msgstr "Piešķirtie CAId:" + +msgid "Assigned services/provider:" +msgstr "Piešķirtie servisi/operatori:" + +msgid "At beginning" +msgstr "Sākt no sākuma" + +msgid "At end" +msgstr "Uz beigām" + +msgid "Audio" +msgstr "Skaņa" + +msgid "Audio PID" +msgstr "Audio PID" + +msgid "Audio language selection 1" +msgstr "Audio valodas izvēle 1" + +msgid "Audio language selection 2" +msgstr "Audio valodas izvēle 2" + +msgid "Audio language selection 3" +msgstr "Audio valodas izvēle 3" + +msgid "Audio language selection 4" +msgstr "Audio valodas izvēle 4" + +msgid "Audio options..." +msgstr "Skaņas opcijas..." + +#, python-format +msgid "Audio track (%s) format" +msgstr "Skaņas celiņa (%s) formāts" + +#, python-format +msgid "Audio track (%s) language" +msgstr "Skaņas celiņa (%s) valoda" + +msgid "Author: " +msgstr "Autors: " + +msgid "Authoring mode" +msgstr "Autorizēšanas režīms" + +#. TRANSLATORS: (aspect ratio policy: always try to display as fullscreen, when there is no content (black bars) on left/right, even if this breaks the aspect. +msgid "Auto" +msgstr "Automātiski" + +msgid "Auto chapter split every ? minutes (0=never)" +msgstr "Automātiska nodaļu veidošana katras ? minūtes (0=neveidot)" + +msgid "Auto flesh" +msgstr "Automātiska ielāde" + +msgid "Auto focus" +msgstr "Automātisks fokuss" + +msgid "Auto focus commencing ..." +msgstr "Automātisks fokuss sākas ..." + +msgid "Auto language selection" +msgstr "Automātiska valodas izvēle" + +msgid "Auto scart switching" +msgstr "Automātiska SCART pārslēgšana" + +msgid "Automatic" +msgstr "Automātiski" + +msgid "Automatic scan" +msgstr "Automātiskā meklēšana" + +msgid "Automatically start timeshift after" +msgstr "Automātiski sākt laika aizturi pēc" + +msgid "Automatically turn on external subtitles" +msgstr "Automātiski ieslēgt ārējos subtitrus" + +msgid "Available format variables" +msgstr "Pieejamie mainīgo formāti" + +msgid "B" +msgstr "B" + +msgid "BER" +msgstr "BER" + +msgid "BER:" +msgstr "BER:" + +msgid "Back" +msgstr "Atpakaļ" + +msgid "Background" +msgstr "Fons" + +msgid "Background color" +msgstr "Fona krāsa" + +msgid "Background delete option" +msgstr "Dzēšanu fonā lieto" + +msgid "Background delete speed" +msgstr "Dzēšanas fonā ātrums" + +msgid "Backup completed." +msgstr "Dublējumkopija izveidota." + +msgid "Backup failed." +msgstr "Dublējumkopija neizdevās." + +msgid "Backup is running..." +msgstr "Tiek veidota dublējumkopija..." + +msgid "Backup system settings" +msgstr "Veidot iestatījumu dublējumkopiju" + +msgid "Band" +msgstr "Josla" + +msgid "Bandwidth" +msgstr "Joslas platums" + +msgid "Basque" +msgstr "Basku" + +msgid "Begin time" +msgstr "Sākuma laiks" + +msgid "Behavior of 'pause and ok' when paused" +msgstr "" + +msgid "Behavior of 0 key in PiP-mode" +msgstr "0 taustiņa nozīme PiP režīmā" + +msgid "Behavior when a movie is started" +msgstr "Kad filma ir palaista" + +msgid "Behavior when a movie is stopped" +msgstr "Kad filma ir apturēta" + +msgid "Behavior when a movie reaches the end" +msgstr "Kad filma beidzas" + +msgid "Big PiP" +msgstr "" + +msgid "Bitrate:" +msgstr "Bitreits:" + +msgid "Black screen" +msgstr "Melns ekrāns" + +msgid "Black screen till locked" +msgstr "Melns ekrāns līdz noenkurojies" + +msgid "Block noise reduction" +msgstr "Bloķēt trokšņu slāpēšanu" + +msgid "Blue boost" +msgstr "Zilā piesātinājums" + +msgid "Bookmarks" +msgstr "Grāmatzīmes" + +msgid "Brightness" +msgstr "Spilgtums" + +msgid "Bulgarian" +msgstr "Bulgāru" + +msgid "Burn DVD" +msgstr "Rakstīt DVD" + +#, python-format +msgid "Burn audio track (%s)" +msgstr "Rakstīt skaņas celiņu (%s)" + +msgid "Burn existing image to DVD" +msgstr "Ierakstīt esošo imidžu uz DVD" + +msgid "Burn to DVD" +msgstr "Ierakstīt uz DVD" + +msgid "Bus: " +msgstr "Kopne: " + +msgid "By default, SNR will be shown in dB (when supported by the tuner). This setting forces SNR to be shown as a percentage instead." +msgstr "Pēc noklusējuma SNR tiek attēlots dB (ja atļauj uztvērējs). Šis iestatījums ieslēgs SNR attēlošanu procentos." + +msgid "C" +msgstr "C" + +msgid "C-Band" +msgstr "C-josla" + +msgid "CH" +msgstr "" + +msgid "CI assignment" +msgstr "CI piešķiršana" + +msgid "CVBS" +msgstr "CVBS" + +msgid "Cable" +msgstr "Kabeļu" + +msgid "Cable Scan" +msgstr "Kabeļu meklēšana" + +msgid "Cache thumbnails" +msgstr "Kešot sīkattēlus" + +msgid "Calculate" +msgstr "Izskaitļot" + +msgid "Calculate all positions" +msgstr "Izskaitļot visas pozīcijas" + +msgid "Calculation complete" +msgstr "Izskaitļošana pabeigta" + +msgid "Calibrate" +msgstr "Kalibrēt" + +msgid "Can be used for different fps between external subtitles and video." +msgstr "Tiek lietots dažādiem fps starp ārējiem subtitriem un video" + +msgid "Cancel" +msgstr "Atcelt" + +msgid "Cannot determine" +msgstr "Nevar noteikt" + +msgid "Cannot find any signal ..., aborting !" +msgstr "Nevar atrast nevienu signālu ..., pārtraukts!" + +msgid "Cannot move files on a different disk or system to the trash can" +msgstr "Nevar pārvietot failus uz citu disku vai uz sistēmas miskasti" + +msgid "Cannot move to trash can" +msgstr "Nevar pārvietot uz miskasti" + +msgid "Capacity: " +msgstr "Ietilpība: " + +msgid "Card" +msgstr "Karte" + +msgid "Cascade PiP" +msgstr "" + +msgid "Center DVB subtitles" +msgstr "Centrēt DVB subtitrus" + +msgid "Center time-labels and remove date" +msgstr "Centrēt laika iezīmes un nomest datumu" + +msgid "Change bouquets in quickzap" +msgstr "Mainīt buķetes ātrās slēgšanas režīmā" + +msgid "Change pin code" +msgstr "Mainīt PIN kodu" + +msgid "Change recording (duration)" +msgstr "Mainīt ierakstu (ilgumu)" + +msgid "Change recording (endtime)" +msgstr "Mainīt ierakstu (beigu laiku)" + +msgid "Change repeat and delay settings?" +msgstr "Mainīt atkārtošanas un aiztures iestatījumus?" + +msgid "Change service PIN" +msgstr "Mainīt kanāla PIN" + +msgid "Change service PINs" +msgstr "Mainīt kanālu PINus" + +msgid "Change setup PIN" +msgstr "Mainīt iestatījumu PIN" + +msgid "Change step size" +msgstr "Mainīt soļa lielumu" + +msgid "Change timer" +msgstr "" + +msgid "Changelog" +msgstr "Izmaiņas" + +msgid "Channel" +msgstr "Kanāls" + +msgid "Channel list type" +msgstr "Kanālu saraksta veids" + +msgid "Channel not in services list" +msgstr "Kanāls nav kanālu sarakstā" + +msgid "Channel selection" +msgstr "Kanālu izvēle" + +msgid "Channel:" +msgstr "Kanāls:" + +msgid "Channellist menu" +msgstr "Kanālu saraksta izvēlne" + +msgid "Chap." +msgstr "Nod." + +msgid "Chapter" +msgstr "Nodaļa" + +msgid "Chapter:" +msgstr "Nodaļa:" + +msgid "Check" +msgstr "Pārbaude" + +msgid "Check the internet connection" +msgstr "Pārbaudīt interneta savienojumu" + +msgid "Check the internet connection again" +msgstr "Pārbaudīt interneta savienojumu vēlreiz" + +msgid "Checking filesystem..." +msgstr "Pārbauda failsistēmu..." + +msgid "Checking the internet connection" +msgstr "Pārbauda interneta savienojumu" + +#, python-format +msgid "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" +msgstr "" +"Pārbauda uztvērēju %d\n" +"DiSEqC ports %s no %s" + +msgid "Children/Youth" +msgstr "Bērni/Jaunieši" + +msgid "Choose which tuner to configure." +msgstr "Izvēlieties kuru uztvērēju konfigurēt" + +msgid "Circular left" +msgstr "Cirkulārā kreisā" + +msgid "Circular right" +msgstr "Cirkulārā labā" + +msgid "Cleanup" +msgstr "Tīrīšana" + +msgid "Clear" +msgstr "Notīrīt" + +msgid "Clear before scan" +msgstr "Notīrīt pirms meklēšanas" + +msgid "Clear fixed" +msgstr "Notīrīšana fiksēta" + +msgid "Clear log" +msgstr "Dzēst žurnālu" + +msgid "Clear playlist" +msgstr "Notīrīt repertuāru" + +msgid "Close" +msgstr "Aizvērt" + +msgid "Close PiP on exit" +msgstr "Izejot aizvēt PiP" + +msgid "Close title selection" +msgstr "Aizvērt virsrakstu atlasi" + +msgid "Code rate HP" +msgstr "Koda ātrums HP" + +msgid "Code rate LP" +msgstr "Koda ātrums LP" + +msgid "Coderate HP" +msgstr "Koda ātrums HP" + +msgid "Coderate LP" +msgstr "Koda ātrums LP" + +msgid "Collection name" +msgstr "Kolekcijas nosaukums" + +msgid "Collection settings" +msgstr "Kolekcijas iestatījumi" + +msgid "Color format" +msgstr "Krāsu formāts" + +msgid "Command execution..." +msgstr "Izpilda komandu..." + +msgid "Command order" +msgstr "Komandu secība" + +msgid "Common Interface" +msgstr "Common interfeiss" + +msgid "Common Interface assignment" +msgstr "Common interfeisa piešķiršana" + +msgid "Communication" +msgstr "Komunikācija" + +msgid "Compact flash" +msgstr "Zibatmiņa" + +msgid "Complete" +msgstr "Gatavs" + +msgid "Complex (allows mixing audio tracks and aspects)" +msgstr "Komplicēts (pieļauj skaņas celiņu un aspektu jaukšanu)" + +msgid "Composition of the recording filenames" +msgstr "Ieraksta faila nosaukuma veidošana" + +msgid "Configuration mode" +msgstr "Konfigurēšanas režīms" + +#, python-format +msgid "Configuration mode: %s" +msgstr "Konfigurēšanas režīms: %s" + +msgid "Configuration..." +msgstr "Konfigurācija..." + +msgid "Configure an additional delay to improve external subtitle synchronisation." +msgstr "Uzstāda papildus aizturi lai darbotos ārējo subtitru sinhronizācija." + +msgid "Configure an additional delay to improve subtitle synchronisation." +msgstr "Uzstāda papildus aizturi lai darbotos subtitru sinhronizācija." + +msgid "Configure for how long the infobar will remain visible after activation." +msgstr "Uzstāda cik ilgi infojosla paliek redzama pēc aktivizācijas." + +msgid "Configure for how many minutes finished events should remain visible in the EPG. Useful when you need information about an event which has just finished, or has been delayed." +msgstr "Uzstāda cik minūtes pabeigtiem notikumiem jāpaliek redzamiem EPG. Noderīgi, ja jums ir nepieciešama informācija par kādu notikumu, kas tikko ir pabeigts, vai ir atlikts." + +msgid "Configure how recording filenames are constructed." +msgstr "Uzstāda kā tiek sastādīti ierakstu failu vārdi." + +msgid "Configure how the fan should operate" +msgstr "" + +msgid "Configure if and how crypto icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how long the latest service in the PiP will be remembered." +msgstr "" + +msgid "Configure if and how service type icons will be shown in the channel selection list." +msgstr "Uzstāda vai un kā tiks rādītas kanālu tipu ikonas kanālu srakstā." + +msgid "Configure if and how wide columns will be shown in the channel selection list." +msgstr "" + +msgid "Configure if service picons will be shown in the channel selection list." +msgstr "Uzstāda vai kanālu pikonas tiks rādītas kanālu sarakstā." + +msgid "Configure interface" +msgstr "Uzstādīt interfeisu" + +msgid "Configure nameservers" +msgstr "Uzstādīt DNS" + +msgid "Configure on which devices the background delete option should be used." +msgstr "Uzstāda uz kuras ierīces būtu jāizmanto fona dzēšanas iespēja." + +msgid "Configure remote control type" +msgstr "Uzstādīt vadības pults tipu" + +msgid "Configure the DiSEqC mode for this LNB." +msgstr "Uzstādīt DiSEqC veidu šim LNB." + +msgid "Configure the IP address." +msgstr "Uzstādīt IP adresi." + +msgid "Configure the aspect ratio of the screen." +msgstr "Uzstādīt ekrāna proporcijas." + +msgid "Configure the behavior of the 'pause and ok' key when movie playback is already paused." +msgstr "" + +msgid "Configure the behavior when movie playback is manually stopped." +msgstr "Uzstāda darbību kad filma ir manuāli apturēta." + +msgid "Configure the behavior when movie playback is started." +msgstr "Uzstāda darbību, kad filma ir palaista." + +msgid "Configure the behavior when reaching the end of a movie, during movie playback." +msgstr "Uzstāda darbību kad atskaņošanas laikā tiek sasniegtas filmas beigas." + +msgid "Configure the border width of the subtitles. The dark border makes the subtitles easier to read on a light background." +msgstr "Uzstāda apmales platumu subtitriem. Tumša robeža atļauj vieglāk lasīt subtitrus uz gaiša fona." + +msgid "Configure the brightness level of the front panel display during standby." +msgstr "Uzstāda spilgtuma līmeni priekšējā paneļa displejā gaidīšanas režīmā." + +msgid "Configure the brightness level of the front panel display." +msgstr "Uzstāda spilgtuma līmeni priekšējā paneļa displejā." + +msgid "Configure the color of the external subtitles, alternative (normal in white, italic in yellow, bold in cyan, underscore in green), white or yellow." +msgstr "Uzstāda ārējo subtitru krāsu, altrenatīvi (normāli balti, slīpi dzelteni, trekni gaiši zili, pasvītroti zaļi), balti vai dzelteni." + +msgid "Configure the color of the teletext subtitles." +msgstr "Uzstāda teleteksta subtitru krāsa." + +msgid "Configure the contrast level of the front panel display." +msgstr "Uzstāda kontrasta līmeni priekšējā paneļa displejā." + +msgid "Configure the cursor behaviour in the channel selection list. When opening the channel selection list you can keep on the current service or already select up/down and you are able to revert the B+/B- buttons." +msgstr "Uzstāda kursora darbību atverot kanālu srakstu ar augšup/lejup taustiņiem. Kad atverat kanālu srakstu jūs varat iezīmēt aktīvo kanālu, vai iezīmēt un revertēt nākošo ar B+/B- taustiņiem." + +msgid "Configure the duration in hours the receiver should go to standby when the receiver is not controlled." +msgstr "" + +msgid "Configure the duration in minutes for the screensaver." +msgstr "Uzstāda laiku minūtēs ekrānsaudzētājam." + +msgid "Configure the duration in minutes for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +msgstr "" + +msgid "Configure the duration when the receiver should go to shut down in case the receiver is in standby mode." +msgstr "Uzstāda laiku pēc kura uztvērējam jāizslēdzas, ja tas atrodas gaidstāves režīmā." + +msgid "Configure the first audio language (highest priority)." +msgstr "Uzstāda primāro audio valodu (augstākā prioritāte)." + +msgid "Configure the first subtitle language (highest priority)." +msgstr "Uzstāda primāro subtitru valodu (augstākā prioritāte)." + +msgid "Configure the font size of the subtitles." +msgstr "Uzstāda subtitru fontu izmēru." + +msgid "Configure the fourth audio language." +msgstr "Uzstāda nākamo audio valodu." + +msgid "Configure the fourth subtitle language." +msgstr "Uzstāda nākamo subtitru valodu." + +msgid "Configure the function of a long press on the power button." +msgstr "Uzstāda barošanas pogas ilgstošas nospiešanas funkciju." + +msgid "Configure the function of a short press on the power button." +msgstr "Uzstāda barošanas pogas īslaicīgas nospiešanas funkciju." + +msgid "Configure the function of the '0' button do when PIP is active." +msgstr "Uzstāda kādu funkciju veic taustiņš '0' ja PiP ir aktīvs." + +msgid "Configure the gateway." +msgstr "Uzstādīt vārteju." + +msgid "Configure the general audio delay of Dolby Digital sound tracks." +msgstr "Uzstāda vispārējo audio aizturi Dolby Digital skaņu ierakstiem." + +msgid "Configure the general audio delay of stereo sound tracks." +msgstr "Uzstāda vispārējo aizturi stereo skaņu ierakstiem." + +msgid "Configure the hard disk drive to go to standby after the specified idle time." +msgstr "Uzstāda lai cietais disks dodas gaidstāvē pēc noteiktā laika." + +msgid "Configure the horizontal alignment of the subtitles." +msgstr "Uzstāda subtitru horizontālo izlīdzināšanu." + +msgid "Configure the initial fast forward speed. When you press the fast forward button, winding will start at this speed." +msgstr "Uzstāda sākotnējo pārtīšanas uz priekšu ātrumu. Kad nospiežat tīt uz priekšu pogu, pārtīšana sāksies ar šo ātrumu." + +msgid "Configure the initial rewind speed. When you press the rewind button, winding will start at this speed." +msgstr "Uzstāda sākotnējo attīšanas ātrumu. Kad nospiežat tīt atpakaļ pogu, attīšana sāksies ar šo ātrumu." + +msgid "Configure the latitude of your location." +msgstr "Uzstāda Jūsu atrašanās vietas platumu." + +msgid "Configure the longitude of your location." +msgstr "Uzstāda Jūsu atrašanās vietas garumu." + +msgid "Configure the minimum amount of disk space to be available for recordings. When the amount of space drops below this value, deleted items will be removed from the trash can." +msgstr "Uzstāda minimālo brīvās vietas daudzumu uz diska lai tas būtu pieejams ierakstiem. Kad vietas apjoms samazinās zem šīs vērtības izdzēstās vienības tiks dzēstas no miskastes." + +msgid "Configure the nameserver (DNS)." +msgstr "Uzstāda domēnu vārdu serveri (DNS)." + +msgid "Configure the netmask." +msgstr "Uzstāda tīkla masku." + +msgid "Configure the number of days after which items are automaticaly removed from the trash can." +msgstr "Uzstāda dienu skaitu, pēc kura faili automātiski tiks dzēstas no miskastes." + +msgid "Configure the number of days old timers are kept before they are automatically removed from the timer list." +msgstr "Uzstāda dienu skaitu cik ilgi vecie taimeri tiks saglabāti pirms tie automātiski tiks dzēsti no taimeru saraksta." + +msgid "Configure the offline decoding delay in milliseconds. The configured delay is observed at each control word parity change." +msgstr "Uzstāda bezsaistes dekodēšanas aizturi milisekundēs. Uzstādītais kavējums ir novērojams pie katrām kontroles vārdu paritātes izmaiņām." + +msgid "Configure the possible fast forward speeds." +msgstr "Uzstāda iespējamos ātrās pārtīšanas ātrumus." + +msgid "Configure the possible rewind speeds." +msgstr "Uzstāda iespējamos ātrās attīšanas ātrumus." + +msgid "Configure the primary EPG language." +msgstr "Uzstāda primāro EPG valodu." + +msgid "Configure the refresh rate of the screen." +msgstr "Uzstāda ekrāna atjaunošanas ātrumu." + +msgid "Configure the screen resolution in PC output mode." +msgstr "Uzstāda ekrāna izšķirtspēju datora savienojuma režīmā." + +msgid "Configure the second audio language." +msgstr "Uzstāda otro audio valodu." + +msgid "Configure the second subtitle language." +msgstr "Uzstāda otro subtitru valodu" + +msgid "Configure the secondary EPG language." +msgstr "Uzstāda otro EPG valodu." + +msgid "Configure the sharpness of the video scaling." +msgstr "Uzstāda video asuma skalu." + +msgid "Configure the skip time interval for the '1'/'3' buttons." +msgstr "Uzstāda taustiņu '1'/'3' pārlēkšanas laika intervālus." + +msgid "Configure the skip time interval for the '4'/'6' buttons." +msgstr "Uzstāda taustiņu '4'/'6' pārlēkšanas laika intervālus." + +msgid "Configure the skip time interval for the '7'/'9' buttons." +msgstr "Uzstāda taustiņu '7'/'9' pārlēkšanas laika intervālus." + +msgid "Configure the slow motion speeds." +msgstr "Uzstāda palēninātās kustības ātrumus." + +msgid "Configure the source of the frontend data as shown on the infobars. 'Settings' is as stored on the settings. 'Tuner' is as reported by the tuner." +msgstr "" + +msgid "Configure the speed of the background deletion process. Lower speed will consume less hard disk drive performance." +msgstr "Uzstāda ātrumu fona dzēšanai. Zemāks ātrums patērē mazāk cietā diska resursus." + +msgid "Configure the speed of the fan" +msgstr "" + +msgid "Configure the subtitle delay when timing information is not available." +msgstr "Uzstāda subtitru parādīšanas laika aizturi kad laika aiztures informācija nav pieejama." + +msgid "Configure the third audio language." +msgstr "Uzstāda trešo audio valodu." + +msgid "Configure the third subtitle language." +msgstr "Uzstāda trešo subtitru valodu" + +msgid "Configure the transparency of the OSD." +msgstr "Uzstāda OSD caurspīdīgumu." + +msgid "Configure the transparency of the black background of graphical DVB subtitles." +msgstr "Uzstāda grafisko DVB subtitru melnā fona caurspīdīgumu." + +msgid "Configure the tuner mode." +msgstr "Uzstāda uztvērēja režīmu." + +msgid "Configure the type of status indication icons shown in the movielist." +msgstr "Uzstāda statusa indikatora ikonas tipu filmu sarakstā." + +msgid "Configure the vertical position of the subtitles, measured from the bottom of the screen." +msgstr "Uzstāda subtitru vertikālo pozīciju no ekrāna apakšas." + +msgid "Configure the video output mode (or resolution)." +msgstr "Uzstāda video izejas režīmu (vai izšķirtspēju)." + +msgid "Configure the way in which the receiver changes channels." +msgstr "Uzstāda veidu kā uztvērējs pārslēdz kanālus." + +msgid "Configure where completed timers show up in the timer list." +msgstr "Uzstāda kur pabeigtie taimeri tiek parādīti taimeru sarakstā." + +msgid "Configure whether (and for how long) a second infobar will be shown when OK is pressed twice. The second infobar contains additional information about the current channel." +msgstr "Uzstāda kur (un cik ilgi) otrais infopanelis tiek attēlots kad divreiz nospiests OK. Otrais infopanelis satur papildus informāciju par tekošo kanālu." + +msgid "Configure whether multi channel sound tracks should be downmixed to stereo." +msgstr "Uzstāda kā daudzkanālu skaņu celiņi tiks dekodēti uz stereo." + +msgid "Configure whether or not an icon should be shown when your motorized dish is moving." +msgstr "Uzstāda vai tiks parādīta ikona kad antena ar motoru pārvietosies." + +msgid "Configure which access level to use for the configuration menu. Expert level gives access to all items." +msgstr "Uzstāda kādu iestatījumu līmeni lietot iestatījumu izvēlnē. Eksperta līmenis atļauj piekļuvi visiem iestatījumiem." + +msgid "Configure which color format should be used on the SCART output." +msgstr "Uzstāda kādu krāsu formātu lietot SCART izejā." + +msgid "Configure which tuner for recordings will be preferred, when more than one tuner is available." +msgstr "" + +msgid "Configure which tuner type will be preferred, when the same service is available on different types of tuners." +msgstr "Uzstāda kādam uztvērēja tipam dot priekšroku, ja viens un tas pats kanāls pieejams dažādos uztvērējos." + +msgid "Configure which tuner will be preferred, when more than one tuner is available. If set to 'auto' the system will give priority to the tuner having the lowest number of channels/satellites." +msgstr "Uzstāda kuram uztvērējam dot priekšroku ja pieejams vairāk kā viens uztvērējs. Ja norādīsiet 'auto', sistēma izvēlēsies uztvērēju ar mazāko kanāla/pavadoņa numuru." + +msgid "Configure your internal LAN" +msgstr "Uzstādīt jūsu tīklu (LAN)" + +msgid "Configure your network again" +msgstr "Atkārtoti uzstādīt jūsu tīklu" + +msgid "Configure your network settings, and press OK to start the scan" +msgstr "Uztādiet jūsu tīkla iestatījumus un nospiediet OK lai sāktu pārbaudi" + +msgid "Configure your wireless LAN again" +msgstr "Atkārtoti uzstāda jūsu bezvadu tīklu" + +msgid "Configures which video output connector will be used." +msgstr "Uzstāda kura video izeja tiks lietota." + +msgid "Configuring" +msgstr "Konfigurē" + +msgid "Conflicting timer" +msgstr "Konfliktējošs taimeris" + +msgid "Connect" +msgstr "Savienoties" + +msgid "Connect to a wireless network" +msgstr "Savienoties ar bezvadu tīklu" + +msgid "Connected satellites" +msgstr "" + +msgid "Connected to" +msgstr "Pieslēgts" + +msgid "Connected!" +msgstr "Savienots!" + +msgid "Constellation" +msgstr "Modulācijas veids" + +msgid "Content does not fit on DVD!" +msgstr "Saturs neietilpst DVD!" + +msgid "Continue" +msgstr "Turpināt" + +msgid "Continue in background" +msgstr "Turpināt fonā" + +msgid "Continue playback" +msgstr "Turpināt atskaņošanu" + +msgid "Continue playing" +msgstr "Turpināt atskaņošanu" + +msgid "Continues play (loop)" +msgstr "Nepārtraukta atskaņošana (loop)" + +msgid "Contrast" +msgstr "Kontrasts" + +msgid "Convert ext3 filesystem to ext4" +msgstr "Konvertēt ext3 failsistēmu uz ext4" + +msgid "Convert ext3 to ext4" +msgstr "Konvertēt ext3 uz ext4" + +msgid "Converting ext3 to ext4..." +msgstr "Konvertē ext3 uz ext4..." + +msgid "Copy" +msgstr "Kopēt" + +msgid "Could not connect to receiver .NFI image feed server:" +msgstr "Nevar pieslēgties uztvērēja .NFI imidžu serverim:" + +msgid "Could not find installed channel list." +msgstr "Nevar atrast uzstādīto kanālu sarakstu." + +msgid "Could not load medium! No disc inserted?" +msgstr "Nevar ielādēt datu nesēju! Disks nav ievietots?" + +msgid "Could not open Picture in Picture" +msgstr "Nevar atvērt attēlu attēlā" + +#, python-format +msgid "Could not record due to conflicting timer %s" +msgstr "Nevar ierakstīt dēļ taimeru konflikta %s" + +#, python-format +msgid "Could not record due to invalid service %s" +msgstr "Nevar ierakstīt dēļ kļūdaina kanāla %s" + +msgid "Create DVD-ISO" +msgstr "Izveidot DVD-ISO" + +msgid "Create more detailed crash log" +msgstr "Izveidot detalizētāku avārijas logu" + +#, python-format +msgid "Creating directory %s failed." +msgstr "Neizdevās izveidot mapi %s." + +msgid "Creating filesystem" +msgstr "Izveido failsistēmu" + +msgid "Creating partition" +msgstr "Izveidot partīciju" + +msgid "Croatian" +msgstr "Horvātu" + +msgid "Current CEC address" +msgstr "Pašreizējā CEC adrese" + +msgid "Current device: " +msgstr "Pašreizējā iekārta: " + +msgid "Current event EPG" +msgstr "Pašreizējā notikuma EPG" + +#, python-format +msgid "Current mode: %s \n" +msgstr "" + +msgid "Current settings:" +msgstr "Pašreizējie iestatījumi:" + +msgid "Current transponder" +msgstr "Pašreizējais transponderis" + +msgid "Current value: " +msgstr "Pašreizējā vērtība: " + +msgid "Current version:" +msgstr "Pašreizējā versija:" + +msgid "Currently installed image" +msgstr "Pašreiz uzstādītais imidžs" + +msgid "Currently the commit log cannot be retrieved - please try later again" +msgstr "" + +msgid "Custom skip time for '1'/'3' buttons" +msgstr "Pārlēciena laiks '1'/'3' taustiņiem" + +msgid "Custom skip time for '4'/'6' buttons" +msgstr "Pārlēciena laiks '4'/'6' taustiņiem" + +msgid "Custom skip time for '7'/'9' buttons" +msgstr "Pārlēciena laiks '7'/'9' taustiņiem" + +msgid "Customize" +msgstr "Iestatījumi" + +msgid "Customize channel list cursor behavior" +msgstr "Kursora darbība atverot kanālu srakstu" + +msgid "Cut" +msgstr "Griezt" + +msgid "Cutlist editor..." +msgstr "Griešanas redaktors..." + +msgid "Czech" +msgstr "Čehu" + +msgid "D" +msgstr "D" + +msgid "DHCP" +msgstr "DHCP" + +msgid "DMM advanced" +msgstr "DMM paplašināts" + +msgid "DMM normal" +msgstr "DMM normāls" + +msgid "DUAL LAYER DVD" +msgstr "Dubultslāņu DVD" + +msgid "DVB subtitle black transparency" +msgstr "DVB subtitru melnā caurspīdīgums" + +msgid "DVB-C" +msgstr "DVB-C" + +msgid "DVB-C ANNEX C" +msgstr "DVB-C ANNEX C" + +msgid "DVB-S" +msgstr "DVB-S" + +msgid "DVB-S2" +msgstr "DVB-S2" + +msgid "DVB-T" +msgstr "DVB-T" + +msgid "DVB-T2" +msgstr "DVB-T2" + +msgid "DVD data format" +msgstr "DVD datu formāts" + +msgid "DVD file browser" +msgstr "DVD failu pārlūks" + +msgid "DVD media toolbox" +msgstr "DVD mediju aprīkojums" + +msgid "DVD player" +msgstr "DVD atskaņotājs" + +msgid "DVD titlelist" +msgstr "DVD nosaukumi" + +msgid "Danish" +msgstr "Dāņu" + +msgid "Date" +msgstr "Datums" + +msgid "Date/time input" +msgstr "Datuma/laika ievade" + +msgid "Deep standby" +msgstr "Dziļā gaidstāve" + +msgid "Default" +msgstr "Noklusējuma" + +msgid "Default movie location" +msgstr "Filmu atrašanās vieta pēc noklusējuma" + +msgid "Default settings" +msgstr "Noklusējuma iestatījumi" + +msgid "Delay before key repeat starts:" +msgstr "Aizture pirms taustiņu atkārtošanas:" + +msgid "Delay for external subtitles" +msgstr "Aizture ārējiem subtitriem" + +msgid "Delete" +msgstr "Dzēst" + +msgid "Delete entry" +msgstr "Dzēst ierakstu " + +msgid "Delete failed!" +msgstr "Dzēšana neizdevās!" + +msgid "Delete file" +msgstr "Dzēst failu" + +msgid "Delete playlist entry" +msgstr "Dzēst repertuāra ierakstu" + +msgid "Delete saved playlist" +msgstr "Dzēst saglabāto repertuāru" + +msgid "Delete timer" +msgstr "" + +msgid "Delete..." +msgstr "Dzēš..." + +msgid "Deleted" +msgstr "Izdzēsts" + +msgid "Deleted items" +msgstr "Dzēsts" + +msgid "Depth" +msgstr "Dziļi" + +msgid "Descramble http streams" +msgstr "Dekodēt http plūsmas" + +msgid "Description" +msgstr "Apraksts" + +msgid "Deselect" +msgstr "Atcelt izvēli" + +msgid "Details for plugin: " +msgstr "Spraudņu papildinformācija:" + +msgid "Detected HDD:" +msgstr "Atrasts HDD:" + +msgid "Detected NIMs:" +msgstr "Atrasts NIMs:" + +msgid "Devicename:" +msgstr "Iekārtas nosaukums:" + +msgid "Devide" +msgstr "" + +msgid "DiSEqC" +msgstr "DiSEqC" + +msgid "DiSEqC 1.0 command" +msgstr "" + +msgid "DiSEqC 1.1 command" +msgstr "" + +msgid "DiSEqC 1.1 repeats" +msgstr "" + +msgid "DiSEqC A/B" +msgstr "DiSEqC A/B" + +msgid "DiSEqC A/B/C/D" +msgstr "DiSEqC A/B/C/D" + +msgid "DiSEqC mode" +msgstr "DiSEqC režīms" + +#, python-format +msgid "DiSEqC port %s: %s" +msgstr "DiSEqC ports: %s: %s" + +msgid "DiSEqC-tester settings" +msgstr "DiSEqC-testera iestatījumi" + +msgid "Dialing:" +msgstr "Zvana:" + +msgid "Digital contour removal" +msgstr "Digitālo kontūru noņemšana" + +msgid "Direct playback of linked titles without menu" +msgstr "Saistīto nosaukumu tiešā atskaņošana bez izvēlnes" + +msgid "Directory" +msgstr "Mape" + +#, python-format +msgid "Directory %s does not exist." +msgstr "Mape %s neeksistē." + +#, python-format +msgid "Directory %s nonexistent." +msgstr "Mape %s neeksistē." + +msgid "Directory browser" +msgstr "Mapju pārlūks" + +#, python-format +msgid "Directory contains %d file(s) and %d sub-directories.\n" +msgstr "Mape satur %d failu(s) un %d apakšmapes.\n" + +#, python-format +msgid "Directory contains %s and %s." +msgstr "Mape satur %s un %s." + +msgid "Disable" +msgstr "Izslēgt" + +msgid "Disable Picture in Picture" +msgstr "Izslēgt Atēls Atēlā" + +msgid "Disable background scanning" +msgstr "Atslēgt skenēšanu fonā" + +msgid "Disable timer" +msgstr "" + +msgid "Disabled" +msgstr "Izslēgts" + +msgid "Disconnect" +msgstr "Atvienot" + +msgid "Disk space to reserve for recordings (in GB)" +msgstr "Rezerve ierakstiem diskā (GB)" + +msgid "Display 16:9 content as" +msgstr "Attēlot 16:9 saturu" + +msgid "Display 4:3 content as" +msgstr "Attēlot 4:3 saturu" + +msgid "Display >16:9 content as" +msgstr "Attēlot >16:9 saturu" + +msgid "Display and userinterface" +msgstr "Attēla un lietotāja interfeiss" + +msgid "Display message before playing next movie" +msgstr "Parādīt paziņojumu pirms atskaņo nākošo filmu" + +# ? +msgid "Display setup" +msgstr "Displeja iestatījumi" + +msgid "Do not change" +msgstr "Nemainīt" + +msgid "Do not record" +msgstr "Nerakstīt" + +msgid "Do nothing" +msgstr "Nedarīt neko" + +msgid "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" +msgstr "" +"Vai tiešām vēlaties pārbaudīt failsistēmu?\n" +"Tas var prasīt daudz laika!" + +msgid "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" +msgstr "" +"Vai tiešam vēlaties konvertēt failu sistēmu?\n" +"Atgriezties nebūs iespējams!" + +#, python-format +msgid "Do you really want to delete %s?" +msgstr "Vai tiešām vēlaties dzēst %s?" + +#, python-format +msgid "" +"Do you really want to download\n" +"the plugin \"%s\"?" +msgstr "" +"Vai tiešām vēlaties lejuplādēt\n" +"spraudni \"%s \"?" + +msgid "Do you really want to exit?" +msgstr "Vai tiešām vēlaties iziet?" + +msgid "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" +msgstr "" +"Vai tiešām vēlaties formatēt iekārtu?\n" +"Visi dati uz diska tiks zaudēti!" + +#, python-format +msgid "" +"Do you really want to remove\n" +"the plugin \"%s\"?" +msgstr "" +"Vai tiešām vēlaties dzēst\n" +"spraudni \"%s \"?" + +#, python-format +msgid "Do you really want to remove directory %s from the disk?" +msgstr "Vai tiešām vēlaties dzēst mapi %s no diska?" + +#, python-format +msgid "Do you really want to remove your bookmark of %s?" +msgstr "Vai tiešām vēlaties dzēst grāmatzīmi %s?" + +msgid "Do you want this?" +msgstr "Vai to vēlaties?" + +msgid "Do you want to burn this collection to DVD medium?" +msgstr "Vai vēlaties ierakstīt šo kolekciju uz DVD nesēja?" + +msgid "Do you want to do a service scan?" +msgstr "Vai vēlaties meklēt kanālus?" + +msgid "Do you want to do another manual service scan?" +msgstr "Vai vēlaties manuāli meklēt citus kanālus?" + +#, python-format +msgid "Do you want to download the image to %s ?" +msgstr "Vai vēlaties lejupielādēt imidžu uz %s ?" + +msgid "Do you want to install a channel list?" +msgstr "Vai vēlaties uzstādīt kanālu sarakstu?" + +msgid "Do you want to install the package:\n" +msgstr "Vai vēlaties uzstādīt pakotni:\n" + +msgid "Do you want to play DVD in drive?" +msgstr "Vai vēlaties atskaņot DVD?" + +msgid "Do you want to preview this DVD before burning?" +msgstr "Vai vēlaties priekšskatīt šo DVD pirms rakstīšanas?" + +msgid "Do you want to reboot your receiver?" +msgstr "Vai vēlaties pārstartēt uztvērēju?" + +msgid "Do you want to remove the package:\n" +msgstr "Vai vēlaties dzēst pakotni:\n" + +msgid "Do you want to restore your settings?" +msgstr "Vai vēlaties atjaunot jūsu iestatījumus?" + +msgid "Do you want to resume this playback?" +msgstr "Vai vēlaties turpināt atskaņošanu?" + +#, python-format +msgid "Do you want to update your receiver to %s?" +msgstr "Vai vēlaties atjaunot uztvērēju uz %s?" + +msgid "Do you want to update your receiver?" +msgstr "Vai vēlaties atjaunot uztvērēju?" + +msgid "Do you want to upgrade the package:\n" +msgstr "Vai vēlaties atjaunināt pakotni:\n" + +msgid "Don't stop current event but disable coming events" +msgstr "Neapturēt pašreizējo notikumu bet izslēgt nākamos notikumus" + +#, python-format +msgid "Done - Installed, upgraded or removed %d package (%s)" +msgid_plural "Done - Installed, upgraded or removed %d packages (%s)" +msgstr[0] "Pabeigts - uzstādīta, atjaunināta vai dzēsta %d pakotne (%s)" +msgstr[1] "Pabeigts - uzstādītas, atjauninātas vai dzēstas %d pakotnes (%s)" +msgstr[2] "Pabeigts - uzstādītas, atjauninātas vai dzēstas %d pakotnes (%s)" + +msgid "Download" +msgstr "Lejuplādēt" + +#, python-format +msgid "Download %s from server" +msgstr "Lejuplādēt %s no servera" + +msgid "Download .NFI-files for USB-flasher" +msgstr "Lejuplādēt .NFI-failus USB ielādei" + +msgid "Download plugins" +msgstr "Lejuplādēt spraudņus" + +msgid "Downloadable new plugins" +msgstr "Lejuplādējamie jaunie spraudņi" + +msgid "Downloadable plugins" +msgstr "Lejuplādējamie spraudņi" + +msgid "Downloading" +msgstr "Lejuplādē" + +msgid "Downloading plugin information. Please wait..." +msgstr "Lejuplādē spraudņu informāciju. Lūdzu uzgaidiet..." + +msgid "Dutch" +msgstr "Holandiešu" + +msgid "Dynamic contrast" +msgstr "Dinamiskais kontrasts" + +msgid "E" +msgstr "E" + +msgid "EPG" +msgstr "EPG" + +msgid "EPG language selection 1" +msgstr "EPG valodas izvēle 1" + +msgid "EPG language selection 2" +msgstr "EPG valodas izvēle 2" + +msgid "EPG selection" +msgstr "EPG izvēle" + +msgid "EPG settings" +msgstr "EPG iestatījumi" + +#, python-format +msgid "ERROR - failed to scan (%s)!" +msgstr "KĻŪDA - meklēšana neizdevās (%s)!" + +msgid "East" +msgstr "Austrumi" + +msgid "East limit set" +msgstr "Uzstādīt austrumu limitu" + +msgid "Edit" +msgstr "Rediģēt" + +msgid "Edit DNS" +msgstr "Rediģēt DNS" + +msgid "Edit bouquets list" +msgstr "Rediģēt buķešu sarakstu" + +msgid "Edit chapters of current title" +msgstr "Rediģēt pašreizējā nosaukuma nodaļas" + +msgid "Edit services list" +msgstr "Rediģēt kanālu sarakstu" + +msgid "Edit settings" +msgstr "Rediģēt iestatījumus" + +msgid "Edit the nameserver configuration of your receiver.\n" +msgstr "Rediģēt uztvērēja DNS uzstādījumus.\n" + +msgid "Edit the network configuration of your receiver.\n" +msgstr "Rediģēt uztvērēja tīkla uzstādījumus.\n" + +msgid "Edit timer" +msgstr "" + +msgid "Edit title" +msgstr "Rediģēt nosaukumu" + +msgid "Edit upgrade source url." +msgstr "Rediģēt atjaunināšanas avota adresi." + +msgid "Education/Science/..." +msgstr "Izglītība/Zinātne/..." + +msgid "Electronic Program Guide" +msgstr "Elektroniskais Programmu Gids" + +msgid "Enable" +msgstr "Aktivizēt" + +msgid "Enable 'neutrino' style channel select controlling" +msgstr "" + +msgid "Enable 'neutrino' style zap controlling" +msgstr "" + +msgid "Enable 5V for active antenna" +msgstr "Aktivizēt 5V aktīvai antenai" + +msgid "Enable EIT EPG" +msgstr "Aktivizēt EIT EPG" + +msgid "Enable MHW EPG" +msgstr "Aktivizēt MHW EPG" + +msgid "Enable Netmed EPG" +msgstr "Aktivizēt Netmed EPG" + +msgid "Enable OK for channel selection" +msgstr "" + +msgid "Enable ViaSat EPG" +msgstr "Aktivizēt ViaSat EPG" + +msgid "Enable Virgin EPG" +msgstr "" + +msgid "Enable Wake On LAN" +msgstr "" + +msgid "Enable auto fast scan" +msgstr "" + +msgid "Enable bouquet selection in multi-EPG" +msgstr "Aktivizēt buķešu izvēli multi-EPG" + +msgid "Enable freesat EPG" +msgstr "Aktivizēt freesat EPG" + +msgid "Enable multiple bouquets" +msgstr "Aktivizēt vairāk-buķešu režīmu" + +msgid "Enable parental control" +msgstr "Aktivizēt vecāku kontroli" + +msgid "Enable teletext caching" +msgstr "Aktivizēt teleteksta kešošanu" + +msgid "Enable zapping with CH+/-, B+/-, P+/-" +msgstr "" + +msgid "Enabled" +msgstr "Aktivizēts" + +msgid "Encrypted: " +msgstr "Šifrēts: " + +msgid "Encryption" +msgstr "Šifrēšana" + +msgid "Encryption key" +msgstr "Šifrēšanas atslēga" + +msgid "Encryption key type" +msgstr "Šifrēšanas atslēgas veids" + +msgid "Encryption:" +msgstr "Šifrēšana:" + +msgid "End time" +msgstr "Beigu laiks" + +msgid "End time to ignore inactivity sleeptimer" +msgstr "Beigu laiks kad ignorēt neaktivitātes miega taimeri" + +msgid "End time to ignore shutdown in standby" +msgstr "" + +msgid "English" +msgstr "Angļu" + +msgid "Enigma2 skin selector" +msgstr "Enigma2 ādiņas izvēle" + +msgid "Enter main menu..." +msgstr "Atvērt galveno izvēlni..." + +msgid "Enter pin code" +msgstr "Ievadiet pin kodu" + +msgid "Enter the service pin" +msgstr "Ievadiet kanāla PIN" + +msgid "Equal to" +msgstr "" + +msgid "Error" +msgstr "Kļūda" + +msgid "Error code" +msgstr "Kļūdas kods" + +msgid "Error executing plugin" +msgstr "Kļūda, palaižot spraudni" + +#, python-format +msgid "" +"Error: %s\n" +"Retry?" +msgstr "" +"Kļūda: %s\n" +"Atkārtot?" + +msgid "Estonian" +msgstr "Igauņu" + +msgid "Ethernet network interface" +msgstr "Ethernet tīkla interfeiss" + +msgid "Event font size (relative to skin size)" +msgstr "Notikuma fontu izmērs (salīdzinājumā ar ādiņas izmēru)" + +msgid "Event view" +msgstr "Notikumu skats" + +msgid "Event view menu" +msgstr "Notikumu skata izvēlne" + +msgid "Everywhere" +msgstr "Jebkur" + +msgid "Exceeds dual layer medium!" +msgstr "Pārsniedz divslāņu datu nesēja ietilpību!" + +msgid "Execution finished!!" +msgstr "Izpilde pabeigta!!" + +msgid "Execution progress:" +msgstr "Izpildes norise:" + +msgid "Exif" +msgstr "Exif" + +msgid "Exit" +msgstr "Iziet" + +msgid "Exit EPG" +msgstr "Iziet no EPG" + +msgid "Exit editor" +msgstr "Iziet no redaktora" + +msgid "Exit input device selection." +msgstr "Iziet no ievades iekārtas izvēlnes." + +msgid "Exit media player?" +msgstr "Iziet no mediju atskaņotāja?" + +msgid "Exit mediaplayer" +msgstr "Iziet no mediju atskaņotāja" + +msgid "Exit movie list" +msgstr "Iziet no filmu saraksta" + +msgid "Exit movie player?" +msgstr "Iziet no filmu atskaņotāja?" + +msgid "Exit nameserver configuration" +msgstr "Iziet no DNS konfigurācijas" + +msgid "Exit network interface list" +msgstr "Iziet no tīkla interfeisu saraksta" + +msgid "Exit network wizard" +msgstr "Iziet no tīkla iestatīšanas vedņa" + +msgid "Exit the wizard" +msgstr "Iziet no vedņa" + +msgid "Expert" +msgstr "Lietpratēja" + +msgid "Extend sleeptimer 15 minutes" +msgstr "Paildzināt miega taimeri par 15 minūtēm" + +msgid "Extended Software" +msgstr "Papildus programmatūra" + +msgid "Extended Software Plugin" +msgstr "Paplašinātās programmatūras spraudnis" + +msgid "Extended network setup plugin..." +msgstr "Tīkla papildus iestatījumu spraudnis..." + +msgid "Extended setup..." +msgstr "Papildus iestatījumi..." + +msgid "Extensions" +msgstr "Paplašinājumi" + +msgid "Extensions management" +msgstr "Paplašinājumu pārvaldīšana" + +msgid "External PiP" +msgstr "" + +msgid "External subtitle color" +msgstr "Ārējo subtitru krāsa" + +msgid "Extra motor options" +msgstr "" + +msgid "FEC" +msgstr "FEC" + +msgid "FTA" +msgstr "FTA" + +msgid "Factory reset" +msgstr "Rūpnīcas iestatījumi" + +msgid "Failed" +msgstr "Neizdevās" + +msgid "Failed to write /tmp/positionersetup.log: " +msgstr "Neizdevās ierakstīt /tmp/positionersetup.log:" + +#, python-format +msgid "Fan %d" +msgstr "Ventilators %d" + +#, python-format +msgid "Fan %d PWM" +msgstr "Ventilatora apgriezieni %d" + +#, python-format +msgid "Fan %d voltage" +msgstr "Ventilatora spriegums %d" + +msgid "Fan operation" +msgstr "" + +msgid "Fan speed" +msgstr "" + +msgid "Fast" +msgstr "Ātrs" + +msgid "Fast DiSEqC" +msgstr "Ātrais DiSEqC" + +msgid "Fast Scan" +msgstr "Ātrā meklēšana" + +msgid "Fast epoch" +msgstr "Ātrā epoha" + +msgid "Fast forward speeds" +msgstr "Pārtīšanas ātrumi" + +msgid "Favourites" +msgstr "Favorīti" + +msgid "File appears to be busy.\n" +msgstr "Fails šķiet aizņemts.\n" + +msgid "Filesystem check" +msgstr "Failsistēmas pārbaude" + +msgid "Final position at" +msgstr "Beigu pozīcija" + +msgid "Final position at index" +msgstr "Beigu pozīcija indeksā" + +msgid "Fine movement" +msgstr "Precīzā pārvietošana" + +msgid "Finetune" +msgstr "Precīzā regulēšana" + +msgid "Finished" +msgstr "Pabeigts" + +msgid "Finished configuring your network" +msgstr "Tīkla konfigurēšana pabeigta" + +msgid "Finished restarting your network" +msgstr "Tīkla pārstartēšana pabeigta" + +msgid "Finnish" +msgstr "Somu" + +msgid "Fixed" +msgstr "Fiksēts" + +msgid "Flash" +msgstr "Iekšējā atmiņa" + +msgid "Flashing failed" +msgstr "Pāršūšana neizdevās" + +msgid "Following tasks will be done after you press OK!" +msgstr "Šādi uzdevumi tiks veikti pēc tam, kad nospiedīsiet OK!" + +msgid "Format" +msgstr "Formatēt" + +msgid "Forward volume keys" +msgstr "Pāradresēt skaļuma taustiņus" + +msgid "Frame size in full view" +msgstr "Kadra izmērs pilnskatā" + +msgid "French" +msgstr "Franču" + +msgid "Frequency" +msgstr "Frekvence" + +msgid "Frequency bands" +msgstr "Frekvenču joslas" + +msgid "Frequency scan step size(khz)" +msgstr "Frekvenču skenēšanas solis (khz)" + +msgid "Frequency steps" +msgstr "Frekvenču soļi" + +msgid "Frequency:" +msgstr "Frekvence:" + +msgid "Fri" +msgstr "Pk" + +msgid "Friday" +msgstr "Piektdiena" + +msgid "From :" +msgstr "No :" + +#, python-format +msgid "Frontprocessor version: %d" +msgstr "Frontprocesora versija: %d" + +msgid "Full transparency" +msgstr "Pilnīgi caurspīdīgs" + +msgid "Fulview resulution" +msgstr "Pilnekrāna izšķirtspēja" + +msgid "Function of OK button" +msgstr "OK pogas funkcija" + +msgid "Further Options" +msgstr "" + +msgid "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" +msgstr "" +"Lai lietotu jauno ādiņu nepieciešams pārstartēt GUI,\n" +"vai vēlaties pārstartēt GUI tagad?" + +msgid "Gateway" +msgstr "Vārteja" + +msgid "General AC3 delay" +msgstr "Vispārējā AC3 aizture" + +msgid "General PCM delay" +msgstr "Vispārējā PCM aizture" + +msgid "Genre" +msgstr "Žanrs" + +msgid "German" +msgstr "Vācu" + +msgid "Get latest experimental image" +msgstr "Iegūt jaunāko eksperimentālo imidžu" + +msgid "Get latest release image" +msgstr "Iegūt jaunāko imidža versiju" + +msgid "Getting plugin information. Please wait..." +msgstr "Iegūst spraudņa informāciju. Lūdzu gaidiet..." + +msgid "Go down the list" +msgstr "Iet uz saraksta leju" + +msgid "Go to first movie or last item" +msgstr "Iet uz pirmo vai pēdējo filmu" + +msgid "Go to first movie or top of list" +msgstr "Iet uz pirmo filmu vai augšējo sarakstā" + +msgid "Go to first service" +msgstr "Iet uz pirmo kanālu" + +msgid "Go to last service" +msgstr "Iet uz pēdējo kanālu" + +msgid "Go to next event" +msgstr "Iet uz nākamo notikumu" + +msgid "Go to next page of service" +msgstr "Iet uz nākamo kanālu lapu" + +msgid "Go to previous event" +msgstr "Iet uz iepriekšējo notikumu" + +msgid "Go to previous page of service" +msgstr "Iet uz iepriekšējo kanālu lapu" + +msgid "Go up the list" +msgstr "Iet uz saraksta augšu" + +msgid "Goto" +msgstr "Iet uz" + +msgid "Goto 0" +msgstr "Iet uz 0" + +msgid "Goto :" +msgstr "Iet uz :" + +msgid "Goto X" +msgstr "Iet uz X" + +msgid "Goto index position" +msgstr "Iet uz indeksa pozīciju" + +msgid "Goto next day of events" +msgstr "Iet uz nākošo dienu notikumiem" + +msgid "Goto next page of events" +msgstr "Iet uz nākošo notikumu lapu" + +msgid "Goto position" +msgstr "Iet uz pozīciju" + +msgid "Goto previous day of events" +msgstr "Iet uz iepriekšējo dienu notikumiem" + +msgid "Goto previous page of events" +msgstr "Iet uz iepriekšējo notikumu lapu" + +msgid "Goto specific date/time" +msgstr "" + +msgid "GotoX calibration" +msgstr "Iet uz X kalibrēšanu" + +msgid "GraphMultiEpg Settings" +msgstr "GraphMultiEpg iestatījumi" + +msgid "Graphical Multi EPG" +msgstr "Grafiskais daudzkanālu EPG" + +msgid "Greek" +msgstr "Grieķu" + +msgid "Green boost" +msgstr "Zaļā piesātinājums" + +msgid "Guard interval" +msgstr "Guard intervāls" + +msgid "HD list" +msgstr "HD saraksts" + +msgid "HDMI-CEC setup" +msgstr "" + +msgid "Handle standby from TV" +msgstr "Ieslēgt gaidstāvi no TV" + +msgid "Handle wakeup from TV" +msgstr "Ieslēgt pamošanos no TV" + +msgid "Hard disk" +msgstr "Cietais disks" + +msgid "Hard disk setup" +msgstr "Cietā diska iestatījumi" + +msgid "Hard disk standby after" +msgstr "Cietā diska gaidstāve pēc" + +msgid "Harddisk" +msgstr "Cietais disks" + +msgid "Hardware: " +msgstr "Aparatūra:" + +msgid "Hebrew" +msgstr "Ebreju" + +msgid "Helps setting up your dish" +msgstr "Palīdzēs ietstīt jūsu antenu" + +msgid "Hidden network" +msgstr "Neredzams tīkls" + +msgid "Hide CI messages" +msgstr "Slēpt CI paziņojumus" + +msgid "Hide channel list in radio mode" +msgstr "Slēpt kanālu sarakstu radio režīmā" + +msgid "Hide known extensions" +msgstr "Slēpt zināmos paplašinājumus" + +msgid "Hide number markers" +msgstr "Slēpt numurus" + +msgid "Hide player" +msgstr "Slēpt atskaņotāju" + +msgid "Hide zap errors" +msgstr "Slēpt noskaņošanas kļūdas" + +msgid "Hierarchy info" +msgstr "Hierarhijas info" + +msgid "Hierarchy information" +msgstr "Hierarhijas informācija" + +msgid "High bitrate support" +msgstr "Augsta bitreita atbalsts" + +msgid "Hold screen" +msgstr "Noturēt ekrānu" + +msgid "Hold till locked" +msgstr "Noturēt līdz noenkurojies" + +msgid "Home" +msgstr "Mājas" + +msgid "Horizontal" +msgstr "Horizontālā" + +msgid "Horizontal turning speed" +msgstr "Horizontālais noskaņošanas ātrums" + +msgid "How many minutes do you want to record?" +msgstr "Cik minūšu vēlaties ierakstīt?" + +msgid "Hue" +msgstr "Tonis" + +msgid "Hungarian" +msgstr "Ungāru" + +msgid "IP address" +msgstr "IP adrese" + +msgid "ISO file is too large for this filesystem!" +msgstr "ISO fails ir par lielu šai failsistēmai!" + +msgid "ISO path" +msgstr "ISO ceļš" + +msgid "Icons" +msgstr "Ikona" + +msgid "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." +msgstr "" +"Ja jūs šo redzat, kaut kas nav kārtībā ar\n" +"SCART savienojumu. Spiediet OK, lai atgrieztos." + +msgid "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." +msgstr "" +"Ja Jūsu TV ir ieslēgta spilgtuma vai kontrasta uzlabošana, deaktivizējiet to. Ja ir iestatījums ar nosaukumu \"dinamiskā \", lietojiet standarta iestatījumu. Noregulējiet fona līmeni līdz jums tīkamai vērtībai. Noregulējiet iespējami zemu TV kontrastu.\n" +"Tad noregulējiet iespējami zemu spilgtuma iestatījumu, bet pārliecinieties, ka divi apakšējie pelēkā toņi ir izšķirami.\n" +"Pašreiz nepievērsiet uzmanību spilgtajiem toņiem. Tie tiks uzstādīti nākamajā solī.\n" +"Ja esat apmierināts ar rezultātu, spiediet OK." + +msgid "Image: " +msgstr "Imidžs:" + +msgid "Immediate shutdown" +msgstr "Tūlītēja izslēgšana" + +msgid "In order to record a timer, the TV was switched to the recording service!\n" +msgstr "Lai uzsāktu ierakstu pēc taimera, TV tika pārslēgts uz ierakstāmo kanālu!\n" + +msgid "In progress" +msgstr "Izpilda" + +msgid "Inactivity Sleeptimer" +msgstr "Neaktivitātes miega taimeris" + +msgid "Include AIT in http streams" +msgstr "Ietvert AIT http plūsmās" + +msgid "Include ECM in http streams" +msgstr "Ietvert ECM http plūsmās" + +msgid "Include EIT in http streams" +msgstr "Ietvert EIT http plūsmās" + +msgid "Incorrect type service for PiP!" +msgstr "" + +msgid "Increased voltage" +msgstr "Palielināt spriegumu" + +msgid "Index" +msgstr "Indekss" + +msgid "Index allocated:" +msgstr "Indekss piešķirts:" + +msgid "Info" +msgstr "Info" + +msgid "Info bar" +msgstr "Infojosla" + +msgid "Info bar timeout" +msgstr "Infojoslas noildze" + +msgid "Infobar frontend data source" +msgstr "" + +msgid "Information" +msgstr "Informācija" + +msgid "Init" +msgstr "Inic" + +msgid "Initial fast forward speed" +msgstr "Sākotnējais pārtīšanas ātrums" + +msgid "Initial location in new timers" +msgstr "Sākotnējā atrašanās vieta jaunam taimerim" + +msgid "Initial lock ratio" +msgstr "Sākotnējā noenkurošanās attiecība" + +msgid "Initial rewind speed" +msgstr "Sākotnējais attīšanas ātrums" + +msgid "Initial signal quality" +msgstr "Sākotnējā signāla kvalitāte" + +msgid "Initial signal quality:" +msgstr "Sākotnējā signāla kvalitāte:" + +msgid "Initialization" +msgstr "Inicializācija" + +msgid "Initialize" +msgstr "Inicializēt" + +msgid "Initializing storage device..." +msgstr "Inicializēt ieraksta ierīci..." + +msgid "Input" +msgstr "Ievade" + +msgid "Input device setup" +msgstr "Ievades ierīces iestatījumi" + +msgid "Input devices" +msgstr "Ievades ierīces" + +msgid "Install" +msgstr "Uzstādīt" + +msgid "Install a new image with a USB stick" +msgstr "Uzstādīt jaunu imidžu no USB zibatmiņas" + +msgid "Install a new image with your web browser" +msgstr "Uzstādīt jaunu imidžu no tīmekļa pārlūka" + +msgid "Install channel list" +msgstr "Uzstādīt kanālu srakstu" + +msgid "Install extensions" +msgstr "" + +msgid "Install extensions." +msgstr "Uzstādīt paplašinājumus." + +msgid "Install local extension" +msgstr "Uzstādīt lokālo paplašinājumu" + +msgid "Install picons on" +msgstr "Uzstādīt pikonas" + +msgid "Install softcam" +msgstr "Uzstāda softcam" + +msgid "Installation has completed." +msgstr "Uzstādīšana pabeigta." + +msgid "Installation or removal has completed." +msgstr "Uzstādīšana vai noņemšana pabeigta." + +msgid "Installing" +msgstr "Uzstādīšana" + +msgid "Installing software..." +msgstr "Uzstāda programmatūru..." + +msgid "Instant recording location" +msgstr "Sākotnējā ieraksta vieta" + +msgid "Instant recording..." +msgstr "Tūlītējs ieraksts..." + +msgid "Interface: " +msgstr "Interfeiss: " + +msgid "Intermediate" +msgstr "Vidējs" + +msgid "Internal flash" +msgstr "Iekšējā atmiņa" + +msgid "Internal hdd only" +msgstr "Tikai iekšējais hdd" + +msgid "Interval between keys when repeating:" +msgstr "Intervāls starp taustiņiem, kad atkārtojas:" + +#, python-format +msgid "Invalid directory selected: %s" +msgstr "Izvēlēta nepareiza mape: %s" + +msgid "Invalid location" +msgstr "Nederīga vieta" + +msgid "Invalid transponder data" +msgstr "" + +msgid "Inversion" +msgstr "Inversija" + +msgid "Invert" +msgstr "Invertēt" + +msgid "Ipkg" +msgstr "Ipkg" + +msgid "Is this setting ok?" +msgstr "Vai šie iestatījumi der?" + +msgid "Is this video mode ok?" +msgstr "Vai šis video režīms der?" + +msgid "Italian" +msgstr "Itāļu" + +msgid "Items per page " +msgstr "Daudzums lapā" + +msgid "Items per page for list screen" +msgstr "Daudzums lapā saraksta logā" + +msgid "Job overview" +msgstr "Darbu skats" + +msgid "Jump to beginning of list" +msgstr "Pārlekt uz saraksta sākumu" + +msgid "Jump to end of list" +msgstr "Pārlēkt uz saraksta beigām" + +msgid "Jump to next marked position" +msgstr "Pārlēkt uz nākamo iezīmēto pozīciju" + +msgid "Jump to previous marked position" +msgstr "Pārlēkt uz iepriekšējo iezīmēto pozīciju" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect) +msgid "Just scale" +msgstr "Vienkārši mērogot" + +msgid "Keep service" +msgstr "Paturēt kanālu" + +msgid "Kernel version: " +msgstr "Kerneļa versija:" + +msgid "Keyboard" +msgstr "Klaviatūra" + +msgid "Keyboard map" +msgstr "Klaviatūras izkārtojums" + +msgid "Keyboard setup" +msgstr "Klaviatūras iestatījumi" + +msgid "LAN adapter" +msgstr "Tīkla adapteris" + +msgid "LAN connection" +msgstr "Tīkla savienojums" + +msgid "LNB" +msgstr "LNB" + +msgid "Language" +msgstr "Valoda" + +msgid "Language selection" +msgstr "Valodas izvēle" + +msgid "Last config" +msgstr "Pēdējie iestatījumi" + +msgid "Last speed" +msgstr "Pēdējais ātrums" + +msgid "Last upgrade: " +msgstr "Pēdējā atjaunošana:" + +msgid "Latest Commits" +msgstr "Pēdējie kommiti" + +msgid "Latitude" +msgstr "Platums" + +msgid "Latvian" +msgstr "Latviešu" + +msgid "Leave DVD player?" +msgstr "Iziet no DVD atskaņotāja?" + +msgid "Left" +msgstr "Kreisais" + +msgid "Left from servicename" +msgstr "Pa kreisi no kanāla nosaukuma" + +msgid "Leisure hobbies" +msgstr "Brīvā laika hobiji" + +#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term. +msgid "Letterbox" +msgstr "Platekrāns" + +msgid "Letterbox zoom" +msgstr "Platekrāna tuvinājums" + +msgid "Limit character set for recording filenames" +msgstr "Limitēt rakstzīmju lietošanu ierakstāmajiem failu vārdiem" + +msgid "Limit east" +msgstr "Austrumu limits" + +msgid "Limit the characters that can be used in recording filenames to (7 bit) ascii. This ensures compatibility with operating systems or file systems with limited character sets." +msgstr "Limitēt rakstzīmju lietošanu ierakstāmajiem failu vārdiem ar (7 bit) ascii. Tas nodrošina savietojamību ar operētājsistēmām vai failu sistēmās ar ierobežotām rakstzīmju kopām." + +msgid "Limit west" +msgstr "Rietumu limits" + +msgid "Limits cancelled" +msgstr "Limiti atcelti" + +msgid "Limits enabled" +msgstr "Limiti iespējoti" + +msgid "Limits off" +msgstr "Limiti izslēgti" + +msgid "Limits on" +msgstr "Limiti ieslēgti" + +msgid "Link quality:" +msgstr "Saites kvalitāte:" + +msgid "Link:" +msgstr "Saite:" + +msgid "Linked titles with a DVD menu" +msgstr "Saistītie nosaukumi ar DVD izvēlni" + +msgid "List EPG functions..." +msgstr "EPG funkciju saraksts..." + +msgid "List available networks" +msgstr "Skatīt pieejamos tīklus" + +msgid "List mode" +msgstr "Saraksta režīms" + +msgid "List of storage devices" +msgstr "Atmiņas ierīču saraksts" + +msgid "List type" +msgstr "Saraksta tips" + +#, python-format +msgid "List version %d, found %d channel" +msgid_plural "List version %d, found %d channels" +msgstr[0] "Saraksta versija %d, atrasts %d kanāls" +msgstr[1] "Saraksta versija %d, atrasti %d kanāli" +msgstr[2] "Saraksta versija %d, atrasti %d kanāli" + +msgid "Listen to the radio..." +msgstr "Klausīties radio..." + +msgid "Lists reloaded!" +msgstr "" + +msgid "Lithuanian" +msgstr "Lietuviešu" + +msgid "Load" +msgstr "Ielādēt" + +msgid "Load Length of Movies in Movielist" +msgstr "Ielādēt filmu sarakstā filmu garumus" + +msgid "Load length of movies in movie list" +msgstr "Ielādēt filmu sarakstā filmu garumus" + +msgid "Load playlist" +msgstr "Ielādēt repertuāru" + +msgid "Local network" +msgstr "Lokālais tīkls" + +msgid "Location" +msgstr "Atrašanās vieta" + +msgid "Location for instant recordings" +msgstr "Ierakstu atrašanās vieta" + +msgid "Lock ratio" +msgstr "Noenkurošanās attiecība" + +msgid "Lock:" +msgstr "Noenkuroties:" + +msgid "Log results to harddisk" +msgstr "Žurnalēt rezultātus uz cietā diska" + +msgid "Long filenames" +msgstr "Garie failu vārdi" + +msgid "Long key press" +msgstr "Ilgstoša taustiņa nospiešana" + +msgid "Longitude" +msgstr "Garums" + +msgid "Loop through to" +msgstr "" + +msgid "Luxembourgish" +msgstr "Luksemburgiešu" + +msgid "MMC card" +msgstr "MMC karte" + +msgid "MORE" +msgstr "VAIRĀK" + +msgid "Main menu" +msgstr "Galvenā izvēlne" + +msgid "Maintain old EPG data for" +msgstr "Saglabāt vecos EPG datus" + +msgid "Make this mark an 'in' point" +msgstr "Padarīt šo zīmi par 'ieejas' punktu" + +msgid "Make this mark an 'out' point" +msgstr "Padarīt šo zīmi par 'izejas' punktu" + +msgid "Make this mark just a mark" +msgstr "Padarīt šo atzīmi vienkārši par atzīmi" + +msgid "Manage extensions" +msgstr "Pārvaldīt paplašinājumus" + +msgid "Manage your receiver's software" +msgstr "Pārvaldīt uztvērēja programmatūru" + +msgid "Manual" +msgstr "" + +msgid "Manual Scan" +msgstr "Manuālā meklēšana" + +msgid "Manual configuration" +msgstr "Manuālā konfigurācija" + +msgid "Manual scan" +msgstr "Manuālā meklēšana" + +msgid "Manual transponder" +msgstr "Manuāls transponderis" + +msgid "Manufacturer" +msgstr "Ražotājs" + +msgid "Margin after recording (minutes)" +msgstr "Atstarpe pēc ieraksta (minūtēs)" + +msgid "Margin before recording (minutes)" +msgstr "Atstarpe pirms ieraksta (minūtēs)" + +msgid "Max memory positions" +msgstr "" + +msgid "Max. bitrate: " +msgstr "Max. bitreits:" + +msgid "Media player" +msgstr "Mediju atskaņotājs" + +msgid "Media scanner" +msgstr "Mediju skanētājs" + +msgid "Medium is not a writeable DVD!" +msgstr "Datu nesējs nav ierakstāms DVD!" + +msgid "Medium is not empty!" +msgstr "Datu nesējs nav tukšs!" + +msgid "Memory" +msgstr "Atmiņa" + +msgid "Memory index" +msgstr "Atmiņas indekss" + +msgid "Menu" +msgstr "Izvēlne" + +msgid "Message" +msgstr "Paziņojums" + +msgid "Message..." +msgstr "Paziņojums..." + +#, python-format +msgid "Minimum age %d years" +msgstr "Minimālais vecums %d gadi" + +msgid "Minimum send interval" +msgstr "Minimālais sūtīšanas intervāls" + +msgid "Missing " +msgstr "Trūkst" + +msgctxt "Satellite configuration mode" +msgid "Mode" +msgstr "Režīms" + +msgctxt "Video output mode" +msgid "Mode" +msgstr "Režīms" + +msgid "Model: " +msgstr "Modelis: " + +msgid "Modulation" +msgstr "Modulācija" + +msgid "Modulator" +msgstr "Modulators" + +msgid "Mon" +msgstr "Pr" + +msgid "Mon-Fri" +msgstr "Pr-Pk" + +msgid "Monday" +msgstr "Pirmdiena" + +msgid "Mosquito noise reduction" +msgstr "Mosquito trokšņu slāpēšana" + +msgid "Mount" +msgstr "Montēt" + +msgid "Move" +msgstr "Pārvietot" + +msgid "Move PiP to main picture" +msgstr "Pārvietot PiP uz galveno attēlu" + +msgid "Move Picture in Picture" +msgstr "Pārvietot attēlu attēlā" + +msgid "Move east" +msgstr "Griezt uz austrumiem" + +msgid "Move to other directory" +msgstr "Griezt otrā virzienā" + +msgid "Move to position X" +msgstr "Griezt uz pozīciju X" + +msgid "Move west" +msgstr "Griezt uz rietumiem" + +msgid "Moved to position 0" +msgstr "Griezt uz pozīciju 0" + +msgid "Moved to position at index" +msgstr "Griezt uz pozīciju indeksā" + +msgid "Movement" +msgstr "Kustība" + +msgid "Movie List Configuration" +msgstr "Filmu saraksta konfigurācija" + +msgid "Movie Selection" +msgstr "Filmu izvēle" + +msgid "Movie list configuration" +msgstr "Filmu saraksta konfigurācija" + +msgid "Movie location" +msgstr "Filmu atrašanās vieta" + +msgid "Movie selection" +msgstr "Filmu izvēle" + +msgid "Movie/Drama" +msgstr "Filma/Drāma" + +msgid "Movielist menu" +msgstr "Filmu saraksta izvēlne" + +msgid "Moving" +msgstr "Griezt" + +msgid "Moving east ..." +msgstr "Griezt uz austrumiem..." + +msgid "Moving to position" +msgstr "Griezt uz pozīciju" + +msgid "Moving west ..." +msgstr "Griezt uz rietumiem..." + +msgid "Multi EPG" +msgstr "Daudzkanālu EPG" + +msgid "Multi-EPG bouquet selection" +msgstr "Daudzkanālu EPG buķetes izvēle" + +msgid "Multimedia" +msgstr "Multimedija" + +msgid "Multiple service support" +msgstr "Daudzkanālu atbalsts" + +msgid "Multiplex" +msgstr "Multiplex" + +msgid "Multisat" +msgstr "Daudzpavadoņu" + +msgid "Multisat all select" +msgstr "" + +msgid "Music/Ballet/Dance" +msgstr "Mūzika/Balets/Dejas" + +msgid "Mute" +msgstr "Klusēt" + +msgid "N/A" +msgstr "N/A" + +msgid "NEXT" +msgstr "NĀKAMAIS" + +msgid "NFI image flashing" +msgstr "NFI imidža pāršūšana" + +msgid "NFI image flashing completed. Press Yellow to Reboot!" +msgstr "NFI imidža paršūšana pabeigta. Spiediet dzelteno pogu, lai pārstartētu!" + +msgid "NIM" +msgstr "NIM" + +msgid "NOW" +msgstr "PAŠREIZ" + +msgid "NTSC" +msgstr "NTSC" + +msgid "Name" +msgstr "Nosaukums" + +msgid "Nameserver" +msgstr "Domēna vārdu serveris" + +#, python-format +msgid "Nameserver %d" +msgstr "Domēna vārdu serveris %d" + +msgid "Nameserver settings" +msgstr "DNS iestatījumi" + +msgid "Nameserver setup" +msgstr "DNS iestatīšana" + +msgid "Namespace" +msgstr "Namespace" + +msgid "Netmask" +msgstr "Tīkla maska" + +msgid "Network" +msgstr "Tīkls" + +msgid "Network ID" +msgstr "Tīkla ID" + +msgid "Network configuration..." +msgstr "Tīkla konfigurācija..." + +msgid "Network mount" +msgstr "Tīkla montējumi" + +#, python-format +msgid "Network mount %s" +msgstr "Tīkla montējums %s" + +msgid "Network name (SSID)" +msgstr "Tīkla vārds (SSID)" + +msgid "Network scan" +msgstr "Tīkla meklēšana" + +msgid "Network setup" +msgstr "Tīkla iestatījumi" + +msgid "Network test" +msgstr "Tīkla pārbaude" + +msgid "Network test..." +msgstr "Tīkla pārbaude..." + +msgid "Network test: " +msgstr "Tīkla pārbaude:" + +msgid "Network wizard" +msgstr "Tīkla vednis" + +msgid "Network:" +msgstr "Tīkls:" + +msgid "New" +msgstr "Jauns" + +msgid "New PIN" +msgstr "Jauns PIN" + +msgid "New version:" +msgstr "Jauna versija:" + +msgid "News Current Affairs" +msgstr "Jaunumi Aktualitātes" + +msgctxt "button label, 'next screen'" +msgid "Next" +msgstr "Nākamais" + +msgctxt "now/next: 'next' event label" +msgid "Next" +msgstr "Nākamais" + +msgid "No" +msgstr "Nē" + +msgid "No (supported) DVDROM found!" +msgstr "DVDROM ierīce netika atrasta (atbalstīta)!" + +msgid "No Connection" +msgstr "Nav savienojuma" + +msgid "No HDD found or HDD not initialized!" +msgstr "Nav atrasts vai inicializēts cietais disks!" + +msgid "No backup needed" +msgstr "Dublējumkopija nav neieciešama" + +msgid "No cable tuner found!" +msgstr "Kabeļu uztvērējs nav atrasts!" + +msgid "" +"No data on transponder!\n" +"(Timeout reading PAT)" +msgstr "" +"Nav datu uz transpondera!\n" +"(PAT lasīšanas noildze)" + +msgid "No delay" +msgstr "Nav aiztures" + +msgid "No description available." +msgstr "Apraksts nav pieejams." + +msgid "No details for this image file" +msgstr "Nav informācijas par šo imidža failu" + +msgid "No displayable files on this medium found!" +msgstr "Šinī datu nesējā nav atrasti attēlojami faili!" + +msgid "No event info found, recording indefinitely." +msgstr "Nav atrasta informācija par notikumiem, ieraksts uz nenoteiktu laiku." + +msgid "No fast winding possible yet.. but you can use the number buttons to skip forward/backward!" +msgstr "Pārtīšana pašreiz nav iespējama.. bet varat lietot ciparu taustiņus lai pārlektu uz priekšu/atpakaļ!" + +msgid "No free index available" +msgstr "Nav pieiejami brīvi indeksi" + +msgid "No free tuner!" +msgstr "Nav brīva uztvērēja!" + +msgid "No network connection available." +msgstr "Tīkla savienojums nav pieejams." + +msgid "No networks found" +msgstr "Tīkli nav atrasti" + +msgid "No new plugins found" +msgstr "Nav atrasti jauni sparudņi" + +msgid "No positioner capable frontend found." +msgstr "Nav atrasts pozicionierim piemērots pavadonis." + +msgid "No satellites configured. Plese check your tuner setup." +msgstr "Nav nokonfigurētu pavadoņu. Lūdzu pārbaudiet uztvērēja uzstādījumus." + +msgid "No service" +msgstr "Nav kanāla" + +msgid "No services/providers selected" +msgstr "Nav izvēlēti kanāli/operatori" + +msgid "No standby" +msgstr "Nav gaidstāves" + +msgid "No suitable sat tuner found!" +msgstr "Nav atrasts piemērots sat uztvērējs!" + +msgid "No tags are set on these movies." +msgstr "Šīm filmām nav pievienotas etiķetes" + +msgid "No timeout" +msgstr "Nav noildzes" + +msgid "No to all" +msgstr "Nē visiem" + +msgid "No transparency" +msgstr "Necaurspīdīgs" + +msgid "No tuner is configured for use with a diseqc positioner!" +msgstr "Uztvērējs nav konfigurēts lietošanai ar diseqc pozicionieri!" + +msgid "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Nav aktīva uztvērēja!\n" +"Lūdzu iestatiet uztvērēju pirms sākat meklēt kanālus." + +msgid "No updates available" +msgstr "Atjaunojumi nav pieejami" + +msgid "No updates available. Please try again later." +msgstr "Atjaunojumi nav pieejami. Lūdzu mēģiniet vēlāk." + +msgid "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" +msgstr "" +"Derīgs kanāla PIN netika atrasts!\n" +"Vai vēlaties tulīt mainīt kanāla PIN?\n" +"Ja teiksiet 'NĒ', kanāla aizsardzība paliks neaktīva!" + +msgid "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" +msgstr "" +"Derīgi PIN iestatījumi netika atrasti!\n" +"Vai vēlaties tulīt mainīt PIN iestatījumus?\n" +"Ja teiksiet 'NĒ', aizsardzības iestatījumi paliks neaktīvi!" + +msgid "No wireless networks found! Searching..." +msgstr "Bezvadu tīkli nav atrasti! Meklē..." + +msgid "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." +msgstr "" +"Netika atrasts strādājošs lokālā tīkla adapteris.\n" +"Lūdzu pārliecinieties, ka ir pievienots tīkla kabelis un tīkls ir pareizi uzstādīts." + +msgid "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." +msgstr "" +"Netika atrasts strādājošs bezvadu tīkla adapteris.\n" +"Lūdzu pārliecinieties, ka ir pievienota saderīga bezvadu tīkla ierīce un tīkls ir pareizi uzstādīts." + +msgid "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." +msgstr "" +"Netika atrasts strādājošs bezvadu tīkls.\n" +" Lūdzu pārliecinieties, ka ir pievienota saderīga bezvadu tīkla ierīce vai aktivizējiet lokālā tīkla interfeisu." + +msgid "No, but restart from begin" +msgstr "Nē, bet pārstartēt no sākuma" + +msgid "No, do nothing." +msgstr "Nē, nedarīt neko" + +msgid "No, just start my receiver" +msgstr "Nē, tikai startēt uztvērēju" + +msgid "No, never" +msgstr "Nē, nekad" + +msgid "None" +msgstr "Nav" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right) +msgid "Nonlinear" +msgstr "Nelineāri mērogot" + +msgid "Normal mode" +msgstr "Normāls režīms" + +msgid "North" +msgstr "Ziemeļi" + +msgid "Norwegian" +msgstr "Norvēģu" + +msgid "Not associated" +msgstr "Nav piešķirts" + +msgid "Not configured" +msgstr "" + +#, python-format +msgid "Not enough disk space. Please free up some disk space and try again. (%d MB required, %d MB available)" +msgstr "Nav pietiekami vietas uz diska. Lūdzu atbrīvot vietu uz diska un mēģināt vēlreiz. (%d MB ir nepieciešami, bet %d MB pieejami)" + +msgid "Nothing connected" +msgstr "" + +msgid "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Nav ko meklēt!\n" +"Lūdzu iestatiet uztvērēju pirms sākat meklēt kanālus." + +msgctxt "now/next: 'now' event label" +msgid "Now" +msgstr "Pašreiz" + +msgid "Now playing" +msgstr "Atskaņo" + +msgid "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." +msgstr "Tagad lietojiet kontrasta iestatīšanu lai palielinātu fona spilgtumu cik vien iespējams, bet pārliecinieties, ka divi spilgtāko toņu līmeņi joprojām ir izšķirami. Ja esat to izdarījuši, spiediet OK." + +msgid "OK" +msgstr "OK" + +msgid "OK, guide me through the upgrade process" +msgstr "OK, pavadi mani atjaunināšanas procesā" + +msgid "ONID" +msgstr "ONID" + +msgid "OSD name request" +msgstr "OSD nosaukuma pieprasījums" + +msgid "OSD settings" +msgstr "OSD iestatījumi" + +msgid "OSD transparency" +msgstr "OSD caurspīdīgums" + +msgid "Off" +msgstr "Izslēgts" + +msgid "Offline decode delay (ms)" +msgstr "Bezsaistes dekodēšanas aizture (ms)" + +msgid "Ok" +msgstr "Ok" + +msgid "On" +msgstr "Ieslēgts" + +msgid "On end of movie" +msgstr "Uz filmas beigās" + +msgid "On end of movie (as menu)" +msgstr "" + +msgid "One" +msgstr "Viens" + +msgid "Only extensions." +msgstr "Tikai paplašinājumi." + +msgid "Only free scan" +msgstr "Tikai nekodētos" + +msgid "Open service list" +msgstr "Atvērt kanālu sarakstu" + +msgid "Open the movie list" +msgstr "Atvērt filmu sarakstu" + +msgid "Orbital position" +msgstr "Orbitālajā pozīcija" + +msgid "Original" +msgstr "Oriģināls" + +msgid "Other" +msgstr "Cits" + +msgid "Output" +msgstr "Izeja" + +msgid "Overwrite configuration files during software upgrade?" +msgstr "Pārrakstīt konfigurācijas failus atjaunojot programmatūru?" + +msgid "Overwrite configuration files?" +msgstr "Pārrakstīt konfigurācijas failus?" + +msgid "PAL" +msgstr "PAL" + +msgid "PCR PID" +msgstr "PCR PID" + +msgid "PIDs" +msgstr "PIDi" + +msgid "PIN code needed" +msgstr "Vajadzīgs PIN kods" + +msgid "PLP ID" +msgstr "PLP ID" + +msgid "PMT PID" +msgstr "PMT PID" + +msgid "Package list update" +msgstr "Pakotņu saraksta atjaunināšana" + +msgid "Packet management" +msgstr "Pakotņu pārvaldība" + +msgid "Packet manager" +msgstr "Pakotņu pārvaldnieks" + +#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term +msgid "Pan&scan" +msgstr "Pan&Scan" + +msgid "Parent directory" +msgstr "Iepriekšējā mape" + +msgid "Parental control" +msgstr "Vecāku kontrole" + +msgid "Parental control services editor" +msgstr "Vecāku kontroles kanālu redaktors" + +msgid "Parental control setup" +msgstr "Vecāku kontroles iestatījumi" + +msgid "Parental control type" +msgstr "Vecāku kontroles veids" + +msgid "Password" +msgstr "Parole" + +msgid "Pause" +msgstr "Pauze" + +msgid "Pause movie at end" +msgstr "Apturēt filmas beigās" + +msgid "Pause playback" +msgstr "Apturēt atskaņošanu" + +msgid "Pauze/Continue playback" +msgstr "" + +msgid "Percentage left" +msgstr "Procenti kreisā pusē" + +msgid "Percentage right" +msgstr "Procenti labā pusē" + +msgid "Permanently delete all recordings in the trash can?" +msgstr "Neatgriezeniski dzēst visus ierakstus miskastē?" + +msgid "Permanently remove all deleted items" +msgstr "Neatgriezeniski dzēst visus dzēstos" + +msgid "Persian" +msgstr "Persiešu" + +msgid "Phone number" +msgstr "Tālruņa numurs" + +msgid "PiP setup" +msgstr "PiP iestatījumi" + +msgid "Picon" +msgstr "Pikona" + +msgid "Picon and service name" +msgstr "Pikona un kanāla nosaukums" + +msgid "Picture player" +msgstr "Attēlu rādītājs" + +#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term. +msgid "Pillarbox" +msgstr "Pillarbox" + +msgid "Pilot" +msgstr "Pilot" + +msgid "Play" +msgstr "Atskaņot" + +msgid "Play DVD" +msgstr "Atskaņot DVD" + +msgid "Play audio in background" +msgstr "Atskaņot audio fonā" + +msgid "Play audio-CD..." +msgstr "Atskaņot mūzikas CD..." + +msgid "Play back media files" +msgstr "Atskaņot mediju failus" + +msgid "Play entry" +msgstr "Atskaņot ierakstu" + +msgid "Play from next mark or playlist entry" +msgstr "Atskaņot no nākamās iezīmes vai repertuāra ieraksta" + +msgid "Play from previous mark or playlist entry" +msgstr "Atskaņot no iepriekšējās iezīmes vai repertuāra ieraksta" + +msgid "Play music..." +msgstr "Atskaņot mūziku..." + +msgid "Play next" +msgstr "Atskaņot nākošo" + +msgid "Play next (return to movie list)" +msgstr "Atskaņot nākošo (atgriesties filmu sarakstā)" + +msgid "Play next (return to previous service)" +msgstr "Atskaņot nākošo (atgriezties iepriekšējā kanālā)" + +msgid "Play previous" +msgstr "Atskaņot iepriekšējo" + +msgid "Play recorded movies..." +msgstr "Atskaņot ierakstītās filmas..." + +msgid "Please add titles to the compilation." +msgstr "Lūdzu pievienot virsrakstus kompilācijai." + +msgid "Please change recording endtime" +msgstr "Lūdzu nomainiet ieraksta beigu laiku" + +msgid "Please check your network settings!" +msgstr "Lūdzu pārbaudiet tīkla iestatījumus!" + +msgid "Please choose an extension..." +msgstr "Lūdzu izvēlieties paplašinājumu..." + +msgid "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Lūdzu konfigurējiet vai pārbaudiet DNS aizpildot nepieciešamās vērtības.\n" +"Kad esat gatavs nospiediet OK, lai turpinātu." + +msgid "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Lūdzu konfigurējiet interneta pieslēgumu aizpildot nepieciešamās vērtības.\n" +"Kad esat gatavs nospiediet OK, lai turpinātu." + +msgid "Please connect your receiver to the internet" +msgstr "Lūdzu pieslēdziet uztvērēju internetam" + +msgid "Please do not change any values unless you know what you are doing!" +msgstr "Lūdzu nemainiet jebkādas vērtības, izņemot ja skaidri apzināties ko darāt!" + +msgid "Please enter a name for the new bouquet" +msgstr "Lūdzu ievadiet jaunās buķetes nosaukumu" + +msgid "Please enter a name for the new marker" +msgstr "Lūdzu ievadiet jaunā marķiera nosaukumu" + +msgid "Please enter a new filename" +msgstr "Lūdzu ievadiet jauno faila nosaukumu" + +msgid "Please enter filename (empty = use current date)" +msgstr "Lūdzu ievadiet faila nosaukumu (tukšs = lietot pašreizējo datumu)" + +msgid "Please enter name of the new directory" +msgstr "Lūdzu ievadiet jaunās mapes nosaukumu" + +msgid "Please enter new name:" +msgstr "Lūdzu ievadiet jauno nosaukumu:" + +msgid "Please enter the correct pin code" +msgstr "Lūdzu ievadiet pareizu PIN kodu" + +msgid "Please enter the old PIN code" +msgstr "Lūdzu ievadiet iepriekšējo PIN kodu" + +msgid "Please follow the instructions on the TV" +msgstr "Lūdzu sekojiet instrukcijām TV ekrānā" + +msgid "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." +msgstr "Lūdzu ievērojiet, ka iepriekš izvēlētais datu nesējs nebija pieejams, tādēļ tā vietā tika lietota noklusētā mape." + +msgid "Please press OK to continue." +msgstr "Lūdzu spiediet OK, lai turpinātu." + +msgid "Please select a default EPG type..." +msgstr "Lūdzu izvēlieties noklusēto EPG veidu..." + +msgid "Please select a playlist to delete..." +msgstr "Lūdzu izvēlieties repertuāru dzēšanai..." + +msgid "Please select a playlist..." +msgstr "Lūdzu izvēlieties repertuāru..." + +msgid "Please select a sub service..." +msgstr "Lūdzu izvēlieties papildkanālu..." + +msgid "Please select a subservice to record..." +msgstr "Lūdzu izvēlieties papildkanālu ierakstam..." + +msgid "Please select a subservice..." +msgstr "Lūdzu izvēlieties papildkanālu..." + +msgid "Please select an NFI file and press green key to flash!" +msgstr "Lūdzu izvēlieties NFI failu un spiediet zaļo taustiņu lai pāršūtu!" + +msgid "Please select medium to be scanned" +msgstr "Lūdzu izvēlieties datu nesēju skanēšanai" + +msgid "Please select medium to use as backup location" +msgstr "Lūdzu izvēlieties datu nesēju dublējumkopijas veidošanai" + +msgid "Please select tag to filter..." +msgstr "Lūdzu izvēlieties etiķeti filtrēšanai..." + +msgid "Please select the movie path..." +msgstr "Lūdzu izvēlieties ceļu filmām..." + +msgid "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Lūdzu izvēlieties tīkla interfeisu, ko vēlaties izmantot savam interneta savienojumam.\n" +"\n" +"Lūdzu nospiediet OK, lai turpinātu." + +msgid "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Lūdzu izvēlieties bezvadu tīklu ar kuru veidot savienojumu.\n" +"\n" +"Lūdzu nospiediet OK, lai turpinātu." + +msgid "Please set up tuner A" +msgstr "Lūdzu iestatiet uztvērēju A" + +msgid "Please set up tuner B" +msgstr "Lūdzu iestatiet uztvērēju B" + +msgid "Please set up tuner C" +msgstr "Lūdzu iestatiet uztvērēju C" + +msgid "Please set up tuner D" +msgstr "Lūdzu iestatiet uztvērēju D" + +msgid "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." +msgstr "" +"Lūdzu lietojiet virzienu taustiņus, lai pārvietotu PiP logu.\n" +"Spiediet Buķetes +/- lai mainītu loga izmēru.\n" +"Spiediet OK, lai atgrieztos TV režīmā vai IZIET, lai atceltu pārvietošanu." + +msgid "Please use the UP and DOWN keys to select your language. Afterwards press the OK button." +msgstr "Lūdzu lietojiet AUGŠUP un LEJUP taustiņus, lai izvēlētos valodu. Pēc tam spiediet OK." + +msgid "Please wait" +msgstr "Lūdzu uzgaidiet" + +msgid "Please wait (downloading channel list)" +msgstr "Lūdzu uzgaidiet (ielādē kanālu sarakstu)" + +msgid "Please wait (downloading softcam)" +msgstr "Lūdzu uzgaidiet (ielādē softcam.)" + +msgid "Please wait (updating packages)" +msgstr "Lūdzu uzgaidiet (atjauno pakotnes)" + +msgid "Please wait for activation of your network configuration..." +msgstr "Lūdzu uzgaidiet kamēr tīkla konfigurācija tiek aktivizēta..." + +msgid "Please wait while scanning is in progress..." +msgstr "Lūdzu uzgaidiet kamēr notiek meklēšana..." + +msgid "Please wait while we configure your network..." +msgstr "Lūdzu uzgaidiet kamēr tiek uzstādīts tīkls..." + +msgid "Please wait while we prepare your network interfaces..." +msgstr "Lūdzu uzgaidiet kamēr sagatavo tīkla interfeisus..." + +msgid "Please wait while we test your network..." +msgstr "Lūdzu uzgaidiet kamēr pārbauda tīklu..." + +msgid "Please wait while your network is restarting..." +msgstr "Lūdzu uzgaidiet kamēr tīkls tiek pārstartēts..." + +msgid "Please wait..." +msgstr "Lūdzu uzgaidiet..." + +msgid "Please wait... Loading list..." +msgstr "Lūdzu uzgaidiet... Ielādē sarakstu..." + +msgid "Plugin browser" +msgstr "Spraudņu pārlūks" + +msgid "Plugin manager activity information" +msgstr "Spraudņu pārlūka aktivitātes informācija" + +msgid "Plugin manager help" +msgstr "Spraudņu pārlūka palīdzība" + +msgid "Plugins" +msgstr "Spraudņi" + +msgid "Polarisation" +msgstr "Polarizācija" + +msgid "Polarisation:" +msgstr "Polarizācija:" + +msgid "Polarization" +msgstr "Polarizācija" + +msgid "Polish" +msgstr "Poļu" + +msgid "Port A" +msgstr "Ports A" + +msgid "Port B" +msgstr "Ports B" + +msgid "Port C" +msgstr "Ports C" + +msgid "Port D" +msgstr "Ports D" + +msgid "Portuguese" +msgstr "Portugāļu" + +msgid "Position of completed timers in timerlist" +msgstr "Pabeigto taimeru pozīcija taimeru sarakstā" + +msgid "Position stored at index" +msgstr "Pozīcija saglabāta indeksā" + +msgid "Positioner" +msgstr "Pozicionieris" + +msgid "Positioner (selecting satellites)" +msgstr "" + +msgid "Positioner Setup" +msgstr "Pozicioniera iestatījumi" + +msgid "Positioner setup" +msgstr "Pozicioniera iestatījumi" + +msgid "Power threshold in mA" +msgstr "Barošanas robežvērtība mA" + +msgid "Predefined transponder" +msgstr "Definēts transponderis" + +msgid "Prefer AC3 track" +msgstr "Ieteicamais AC3 celiņš" + +msgid "Prefer AC3+ track" +msgstr "" + +msgid "Prefer audio track stored by service" +msgstr "Katram kanālam saglabāt ieteicamo audio celiņu" + +msgid "Prefer graphical DVB subtitles" +msgstr "Ieteicamie grafiskie DVB subtitri" + +msgid "Prefer subtitles for hearing impaired" +msgstr "Ieteicamie subtitri cilvēkiem ar dzirdes traucējumiem" + +msgid "Prefer subtitles stored by service" +msgstr "Katram kanālam saglabāt ieteicamos subtitrus" + +msgid "Preferred tuner" +msgstr "Ieteicamais uztvērējs" + +msgid "Preferred tuner for recordings" +msgstr "" + +msgid "Prepare another USB stick for image flashing" +msgstr "Sagatavo citu USB ierīci imidža pāršūšanai" + +msgid "Preparing... Please wait" +msgstr "Sagatavo... Lūdzu uzgaidiet" + +msgid "Press '0' to toggle PiP mode" +msgstr "" + +msgid "Press INFO on your remote control for additional information." +msgstr "Papildus informācijai spiediet INFO uz tālvadības pults." + +msgid "Press MENU on your remote control for additional options." +msgstr "Papildus iespējām spiediet MENU uz tālvadības pults." + +msgid "Press OK on your remote control to continue." +msgstr "Spiediet OK uz tālvadības pults, lai turpinātu." + +msgid "Press OK to activate the selected skin." +msgstr "Spiediet OK lai aktivizētu izvēlēto ādiņu." + +msgid "Press OK to activate the settings." +msgstr "Spiediet OK, lai aktivizētu iestatījumus." + +msgid "Press OK to edit the settings." +msgstr "Spiediet OK, lai rediģētu iestatījumus." + +#, python-format +msgid "Press OK to get further details for %s" +msgstr "Spiediet OK turpmākai informācijai priekš %s" + +msgid "Press OK to scan" +msgstr "Spiediet OK, lai meklētu" + +msgid "Press OK to select a provider." +msgstr "Spiediet OK, lai izvēlētos operatoru." + +msgid "Press OK to select satellites" +msgstr "" + +msgid "Press OK to select/deselect a CAId." +msgstr "Spiediet OK, lai izvēlētos/neizvēlētos CAId." + +msgid "Press OK to start the scan" +msgstr "Spiediet OK, lai uzsāktu meklēšanu." + +msgid "Press OK to toggle the selection" +msgstr "" + +msgid "Press OK to toggle the selection." +msgstr "Nospiediet OK, lai pārslēgtu izvēli." + +msgid "Press yellow to set this interface as default interface." +msgstr "Spiediet dzelteno, lai iestatītu šo interfeisu kā noklusējuma." + +msgctxt "button label, 'previous screen'" +msgid "Prev" +msgstr "Iepriekšējais" + +msgid "Preview" +msgstr "Priekšskatījums" + +msgid "Preview menu" +msgstr "Priekšskatījuma izvēlne" + +msgid "Preview selected channel" +msgstr "Izvēlētā kanāla priekšskatījums" + +msgid "Primary DNS" +msgstr "Primārais DNS" + +msgid "Priority" +msgstr "Prioritāte" + +msgid "Process" +msgstr "Norise" + +msgid "Progress" +msgstr "Progress" + +msgid "Progress bar left" +msgstr "Progresa josla pa kreisi" + +msgid "Progress bar right" +msgstr "Progresa josla pa labi" + +msgid "Properties of current title" +msgstr "Aktīvā nosaukuma parametri" + +msgid "Protect services" +msgstr "Aizsargāt kanālus" + +msgid "Protect setup" +msgstr "Aizsargāt iestatījumus" + +msgid "Provider" +msgstr "Operators" + +msgid "Provider to scan" +msgstr "Operators, kuru vēlaties meklēt" + +msgid "Providers" +msgstr "Operatori" + +msgid "Put TV in standby" +msgstr "Iestatīt TV gaidstāvē" + +msgid "Put receiver in standby" +msgstr "Iestatīt uztvērēju gaidstāvē" + +msgid "Python frontend for /tmp/mmi.socket" +msgstr "Python frontend /tmp/mmi.socket" + +msgid "Quick" +msgstr "Ātrais" + +msgid "Quick zap" +msgstr "Ātrā pārslēgšana" + +msgid "RF output" +msgstr "RF izeja" + +msgid "RGB" +msgstr "RGB" + +msgid "Radio" +msgstr "Radio" + +msgid "Ram disk" +msgstr "Ram disks" + +msgid "Random" +msgstr "Nejauša" + +#, python-format +msgid "Rating defined by broadcaster - %d" +msgstr "Raidorganizācijas vērtējums - %d" + +msgid "Rating undefined" +msgstr "Vērtējums nav definēts" + +msgid "Really close without saving settings?" +msgstr "Vai tiešām aizvērt, nesaglabājot iestatījumus?" + +msgid "Really delete done timers?" +msgstr "Vai tiešām dzēst izpildītos taimerus?" + +msgid "Really exit the subservices quickzap?" +msgstr "Vai tiešām iziet no papildkanālu ātrās pārslēgšanas režīma?" + +msgid "Really reboot now?" +msgstr "Vai tiešām pārstartēt tagad?" + +msgid "Really restart now?" +msgstr "Vai tiešām pārstartēt tagad?" + +msgid "Really shutdown now?" +msgstr "Vai tiešām izslēgt tagad?" + +msgid "Really upgrade the frontprocessor and reboot now?" +msgstr "Vai tiešām atjaunot frontprocesoru un pārstartēt tagad?" + +msgid "Really upgrade your settop box and reboot now?" +msgstr "Vai tiešām atjaunot uztvērēju un pārstartēt tagad?" + +msgid "Reboot" +msgstr "Pārstartēt" + +msgid "Rec" +msgstr "Ier" + +msgid "Reception settings" +msgstr "Uztveršanas iestatījumi" + +msgid "Record" +msgstr "Ieraksta iestatījumi" + +#, python-format +msgid "Record time limited due to conflicting timer %s" +msgstr "Ierobežots ieraksta laiks dēļ taimera konflikta %s" + +msgid "Recorded files..." +msgstr "Ierakstītie faili..." + +msgid "Recording" +msgstr "Ieraksta" + +msgid "Recording in progress" +msgstr "Ieraksts notiek" + +msgid "Recording paths" +msgstr "Ierakstīšanas ceļš" + +msgid "Recording type" +msgstr "Ieraksta tips" + +msgid "Recording(s) are in progress or coming up in few seconds!" +msgstr "Pašreiz notiek ieraksts(i), vai tas sāksies dažu sekunžu laikā!" + +msgid "Recordings" +msgstr "Ieraksti" + +msgid "Recordings always have priority" +msgstr "Ierakstiem vienmēr ir prioritāte" + +msgid "Red button..." +msgstr "Sarkanā poga..." + +msgid "Reenter new PIN" +msgstr "Atkārtoti ievadiet jauno PIN kodu" + +msgid "Refresh rate" +msgstr "Atjaunināšanas ātrums" + +msgid "Refresh rate selection." +msgstr "Atjaunināšanas ātruma izvēle." + +msgid "Regard deep standby as standby" +msgstr "Pieņemt dziļo gaidīšanu kā gaidīšanu" + +msgid "Relative" +msgstr "Relatīvs" + +msgid "Reload" +msgstr "Pārlādēt" + +msgid "Reload black-/white lists" +msgstr "Pārlādēt melno-/balto sarakstu" + +msgid "Reloading bouquets and services..." +msgstr "Pārlādē buķetes un kanālus..." + +msgid "Remember last service in PiP" +msgstr "" + +msgid "Remember service PIN" +msgstr "Atcerēties kanāla PIN" + +msgid "Remember these settings for each folder" +msgstr "Atcerēties šos iestatījumus katrai mapei." + +msgid "Reminder, you have chosen to save timeshift file." +msgstr "Atgādinājums, jums jāizvēlas lai saglabātu laika aiztures failu." + +msgid "Remote control type" +msgstr "Pults tips" + +msgid "Removal has completed." +msgstr "Dzēšana pabeigta." + +msgid "Remove" +msgstr "Dzēst" + +msgid "Remove a mark" +msgstr "Dzēst iezīmi" + +msgid "Remove a nameserver entry" +msgstr "Dzēst DNS ierakstu" + +msgid "Remove bookmark" +msgstr "Dzēst grāmatzīmi" + +msgid "Remove completed timers after (days)" +msgstr "Dzēst pabeigtos taimerus pēc (dienām)" + +msgid "Remove currently selected title" +msgstr "Dzēst pašreiz atlasīto virsrakstu" + +msgid "Remove items from trash can after (days)" +msgstr "Dzēst no miskastes pēc (dienām)" + +msgid "Remove plugins" +msgstr "Dzēst spraudņus" + +msgid "Remove title" +msgstr "Dzēst virsrakstu" + +msgid "Removing" +msgstr "Dzēšana" + +#, python-format +msgid "Removing directory %s failed. (Maybe not empty.)" +msgstr "Neizdevās izdzēst mapi %s. (Varbūt nav tukša.)" + +msgid "Removing partition table" +msgstr "Dzēst partīciju tabulu" + +msgid "Rename" +msgstr "Pārsaukt" + +msgid "Repeat" +msgstr "Atkārtot" + +msgid "Repeat type" +msgstr "Atkārtošanas veids" + +msgid "Repeating event currently recording... What do you want to do?" +msgstr "Atkārtotais notikums pašreiz ierakstās... Ko vēlaties darīt?" + +msgid "Repeats" +msgstr "Atkārto" + +msgid "Require authentication for http streams" +msgstr "" + +msgid "Required medium type:" +msgstr "Nepieciešamais veids:" + +msgid "Rereading partition table" +msgstr "Lasa partīciju tabulu" + +msgid "Reserved" +msgstr "Rezervēts" + +msgid "Reset" +msgstr "Atstatīt" + +msgid "Reset and renumerate title names" +msgstr "Atstatīt un pārnumurēt virsrakstu nosaukumus" + +msgid "Reset playback position" +msgstr "Atstatīt atskaņošanas pozīciju" + +msgid "Reset video enhancement settings to system defaults?" +msgstr "Atstatīt video uzlabošanas iestatījumus uz noklusējuma?" + +msgid "Reset video enhancement settings to your last configuration?" +msgstr "Atstatīt video uzlabošanas iestatījumus uz pēdējiem uzstādītajiem?" + +msgid "Resolution" +msgstr "Izšķirtspēja" + +msgid "Restart" +msgstr "Pārstartēt" + +msgid "Restart GUI now?" +msgstr "Pārstartēt GUI tagad?" + +msgid "Restart enigma" +msgstr "Pārstartēt enigmu" + +msgid "Restart network" +msgstr "Pārstartēt tīklu" + +msgid "Restart test" +msgstr "Atkārtot testu" + +msgid "Restart your network connection and interfaces.\n" +msgstr "Pārstartēt tīkla savienojumu un interfeisus. \n" + +msgid "Restore" +msgstr "Atjaunot" + +msgid "Restore backups" +msgstr "Atjaunot dublējumkopiju" + +msgid "Restore is running..." +msgstr "Notiek atjaunošana..." + +msgid "Restore system settings" +msgstr "Atjaunot sistēmas iestatījumus" + +msgid "Restoring..." +msgstr "Atjauno..." + +msgid "Resume from last position" +msgstr "Turpina no pēdējā stāvokļa" + +#, python-format +msgid "Resume position at %s" +msgstr "Turpinās no vietas %s" + +#. TRANSLATORS: The string "Resuming playback" flashes for a moment +#. TRANSLATORS: at the start of a movie, when the user has selected +#. TRANSLATORS: "Resume from last position" as start behavior. +#. TRANSLATORS: The purpose is to notify the user that the movie starts +#. TRANSLATORS: in the middle somewhere and not from the beginning. +#. TRANSLATORS: (Some translators seem to have interpreted it as a +#. TRANSLATORS: question or a choice, but it is a statement.) +msgid "Resuming playback" +msgstr "Turpina atskaņošanu" + +msgid "Return to movie list" +msgstr "Atgriezties uz filmu sarakstu" + +msgid "Return to previous service" +msgstr "Atgriezties uz iepriekšējo kanālu" + +msgid "Reverse bouquet buttons" +msgstr "Reversēt buķešu taustiņus" + +msgid "Reverse list" +msgstr "" + +msgid "Rewind speeds" +msgstr "Attīšanas ātrumi" + +msgid "Rewrap teletext subtitles" +msgstr "Pārpakot teleteksta subtitrus" + +msgid "Right" +msgstr "Labais" + +msgid "Right from servicename" +msgstr "Pa labi no kanāla nosaukuma" + +msgid "Roll-off" +msgstr "Skrullēt-uz" + +msgid "Romanian" +msgstr "Rumāņu" + +msgid "Root directory" +msgstr "Root mape" + +msgid "Rotor step position:" +msgstr "Pozicioniera soļa pozīcija:" + +msgid "Rotor turning speed" +msgstr "Pozicioniera griešanās ātrums" + +msgid "Round start time on" +msgstr "Raunda sākuma laiks" + +msgid "Russian" +msgstr "Krievu" + +msgid "S-Video" +msgstr "S-Video" + +msgid "SID" +msgstr "SID" + +msgid "SINGLE LAYER DVD" +msgstr "SINGLE LAYER DVD" + +msgid "SNR" +msgstr "SNR" + +msgid "SNR:" +msgstr "SNR:" + +msgid "SSID:" +msgstr "SSID:" + +msgid "Same resolution as skin" +msgstr "Tāda pati izšķirtspēja kā ādiņai" + +msgid "Sat" +msgstr "Se" + +msgid "Satellite" +msgstr "Pavadonis" + +msgid "Satellite dish setup" +msgstr "Satelītantenas iestatījumi" + +msgid "Satellite equipment" +msgstr "Satelīta iekārtas" + +msgid "Satellite equipment setup" +msgstr "Satelīta iekārtu iestatījumi" + +msgid "Satellite longitude:" +msgstr "Pavadoņa garuma pozīcija:" + +msgid "Satellites" +msgstr "Pavadoņi" + +msgid "Satfinder" +msgstr "Sat-meklētājs" + +msgid "Sats" +msgstr "Pavad" + +msgid "Saturation" +msgstr "Piesātinājums" + +msgid "Saturday" +msgstr "Sestdiena" + +msgid "Save" +msgstr "Saglabāt" + +msgid "Save playlist" +msgstr "Saglabāt repertuāru" + +msgid "Save timeshift file" +msgstr "Saglabāt laika aiztures failu" + +msgid "Save timeshift file in movie directory" +msgstr "Saglabāt laika aiztures failu filmu mapē" + +msgid "Scaler sharpness" +msgstr "Asuma skala" + +msgid "Scaling mode" +msgstr "Mērogošanas režīms" + +msgid "Scan" +msgstr "Meklēt" + +msgid "Scan " +msgstr "Meklēt " + +#. TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' +#, python-format +msgid "Scan %s" +msgstr "Meklēt %s" + +#. TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' +#, python-format +msgid "Scan %s band" +msgstr "Meklēt %s diapazonā" + +msgid "Scan additional SR" +msgstr "Meklēt papildu SR" + +msgid "Scan files..." +msgstr "Meklē failus..." + +msgid "Scan wireless networks" +msgstr "Meklēt bezvadu tīklus" + +msgid "Scan your network for wireless access points and connect to them using your selected wireless device.\n" +msgstr "Meklē jūsu bezvadu pieejas punktus un pieslēdzas tiem lietojot jūsu izvēlēto bezvadu ierīci.\n" + +#, python-format +msgid "Scanning %s..." +msgstr "Meklē %s..." + +#. TRANSLATORS: The stb is performing a channel scan, progress percentage is printed in '%d' (and '%%' will show a single '%' symbol) +#, python-format +msgid "Scanning - %d%% completed" +msgid_plural "Scanning - %d%% completed" +msgstr[0] "Meklēšana - %d%% pabeigts" +msgstr[1] "Meklēšana - %d%% pabeigti" +msgstr[2] "Meklēšana - %d%% pabeigti" + +#, python-format +msgid "Scanning completed, %d channel found" +msgid_plural "Scanning completed, %d channels found" +msgstr[0] "Meklēšana pabeigta, %d kanāls atrasts" +msgstr[1] "Meklēšana pabeigta, %d kanāli atrasti" +msgstr[2] "Meklēšana pabeigta, %d kanāli atrasti" + +msgid "Scanning failed!" +msgstr "Meklēšana pārtraukta!" + +msgid "Scanning..." +msgstr "Meklēšana..." + +msgid "Scans default lamedbs sorted by satellite with a connected dish positioner" +msgstr "Meklē noklusētos lamedbs, sakārtotus pēc pavadoņiem ar pievienotu pozicioniera antenu" + +msgid "Search east" +msgstr "Meklēt austrumos" + +msgid "Search west" +msgstr "Meklēt rietumos" + +msgid "Searching" +msgstr "Meklē" + +msgid "Searching east ..." +msgstr "Meklē austrumos ..." + +msgid "Searching for available updates. Please wait..." +msgstr "Meklē pieejamos atjaunojumus. Lūdzu uzgaidiet..." + +msgid "Searching for new installed or removed packages. Please wait..." +msgstr "Meklē no jauna uzstādītās vai dzēstās pakotnes. Lūdzu uzgaidiet..." + +msgid "Searching west ..." +msgstr "Meklē rietumos ..." + +msgid "Second cable of motorized LNB" +msgstr "" + +msgid "Secondary DNS" +msgstr "Sekundārais DNS" + +msgid "Seek" +msgstr "Meklēt" + +msgid "Seek backward" +msgstr "Pārlēkt atpakaļ" + +msgid "Seek backward (enter time)" +msgstr "Pārlēkt atpakaļ (ievadīt laiku)" + +msgid "Seek forward" +msgstr "Pārlēkt uz priekšu" + +msgid "Seek forward (enter time)" +msgstr "Pārlēkt uz priekšu (ievadīt laiku)" + +msgid "Select" +msgstr "Izvēlēties" + +msgid "Select CAId" +msgstr "Izvēlieties CAId" + +msgid "Select HDD" +msgstr "Izvēlieties cieto disku" + +msgid "Select a bouquet" +msgstr "Izvēlieties buķeti" + +msgid "Select a movie" +msgstr "Izvēlieties filmu" + +msgid "Select a network adapter" +msgstr "Izvēlieties tīkla adapteri" + +msgid "Select a skin" +msgstr "Izvēlieties ādiņu" + +msgid "Select a tuner" +msgstr "Izvēlieties uztvērēju" + +msgid "Select a wireless network" +msgstr "Izvēlieties bezvadu tīklu" + +msgid "Select action" +msgstr "" + +#, python-format +msgid "Select action for timer %s:" +msgstr "" + +msgid "Select all" +msgstr "" + +msgid "Select an image to be downloaded" +msgstr "Izvēlieties imidžu, ko lejuplādēt" + +msgid "Select audio track" +msgstr "Izvēlieties skaņas celiņu" + +msgid "Select backup files" +msgstr "Izvēlieties dublējumkopijas failus" + +msgid "Select backup location" +msgstr "Izvēlieties dublējumkopijas atrašanās vietu" + +msgid "Select channel to record from" +msgstr "Izvēlieties ierakstāmo kanālu" + +msgid "Select copy destination for:" +msgstr "Izvēlieties kopijas mērķi no:" + +msgid "Select default EPG type..." +msgstr "Izvēlieties noklusējuma EPG tipu..." + +msgid "Select desired image from feed list" +msgstr "Izvēlieties vēlamo imidžu no barotņu saraksta" + +msgid "Select destination for:" +msgstr "Izvēlieties mērķi no:" + +msgid "Select files for backup." +msgstr "Izvēlieties failus dublējumkopijai" + +msgid "Select files/folders to backup" +msgstr "Izvēlieties failus/mapes dublējumkopijai" + +msgid "Select input device" +msgstr "Izvēlieties ievades ierīci" + +msgid "Select input device." +msgstr "Izvēlieties ievades ierīci." + +msgid "Select interface" +msgstr "Izvēlieties interfeisu" + +msgid "Select location" +msgstr "Izvēlieties atrašanās vietu" + +msgid "Select movie" +msgstr "Izvēlieties filmu" + +msgid "Select provider to add..." +msgstr "Izvēlieties operatoru kuru pievienot..." + +msgid "Select refresh rate" +msgstr "Izvēlieties atsvaidzināšanas biežumu" + +msgid "Select satellites" +msgstr "" + +msgid "Select service to add..." +msgstr "Izvēlieties kanālu kuru pievienot..." + +msgid "Select sort method:" +msgstr "" + +msgid "Select target folder" +msgstr "Izvēlieties mērķa mapi" + +msgid "Select the movie path" +msgstr "Izvēlieties filmas ceļu" + +msgid "Select upgrade source" +msgstr "Izvēlieties atjaunināšanas avotu" + +msgid "Select upgrade source to edit." +msgstr "Izvēlieties atjaunināšanas avotu lai rediģētu." + +msgid "Select video input with up/down buttons" +msgstr "Izvēlieties video ieeju ar augšup/lejup pogām" + +msgid "Select video mode" +msgstr "Izvēlieties video režīmu" + +msgid "Select wireless network" +msgstr "Izvēlieties bezvadu tīklu" + +msgid "Select your provider, and press OK to start the scan" +msgstr "Izvēlieties jūsu operatoru un nospiediet OK lai sāktu meklēt" + +msgid "Selecting satellites 1 (USALS)" +msgstr "" + +msgid "Selecting satellites 2 (USALS)" +msgstr "" + +msgid "Send DiSEqC only on satellite change" +msgstr "Sūtīt DiSEqC tikai mainoties pavadonim" + +msgid "Separate titles with a main menu" +msgstr "Atsevišķi nosaukumi ar galveno izvēlni" + +msgid "Sequence repeat" +msgstr "Secības atkārtojums" + +msgid "Serbian" +msgstr "Serbu" + +msgid "Service" +msgstr "Kanāls" + +msgid "Service has been added to the favourites." +msgstr "Kanāls tika pievienots favorītiem." + +msgid "Service has been added to the selected bouquet." +msgstr "Kanāls tika pievienots izvēlētajai buķetei." + +msgid "Service info" +msgstr "Kanāla info" + +msgid "" +"Service invalid!\n" +"(Timeout reading PMT)" +msgstr "" +"Kanāls neeksistē!\n" +"(PMT lasīšanas noildze)" + +msgid "Service name" +msgstr "Kanāla nosaukums" + +msgid "" +"Service not found!\n" +"(SID not found in PAT)" +msgstr "" +"Kanāls nav atrasts!\n" +"(SID nav atrasts iekš PAT)" + +msgid "Service reference" +msgstr "Kanāla atsauce" + +msgid "Service scan" +msgstr "Kanālu meklēšana" + +msgid "Service searching" +msgstr "Kanālu meklēšana" + +msgid "Service title mode" +msgstr "Izvēlieties kanāla attēla režīmu" + +msgid "" +"Service unavailable!\n" +"Check tuner configuration!" +msgstr "" +"Kanāls nav pieejams!\n" +"Pārbaudiet uztvērēja konfigurāciju!" + +msgid "Services" +msgstr "Kanāli" + +msgid "Set default" +msgstr "" + +msgid "Set end time" +msgstr "Iestatīt beigu laiku" + +msgid "Set fixed" +msgstr "Fiksētā" + +msgid "Set fps for external subtitles" +msgstr "Uzstādīt fps ārējiem subtitriem" + +msgid "Set interface as default Interface" +msgstr "Iestatīt interfeisu kā noklusēto" + +msgid "Set limits" +msgstr "Iestatīt limitus" + +msgid "Set the type of the progress indication in the channel selection screen." +msgstr "Iestatīt norises indikatora tipu kanālu pārslēgšanas logā." + +msgid "Set time window to 1 hour" +msgstr "Iestatīt laika logu uz 1 stundu" + +msgid "Set time window to 2 hours" +msgstr "Iestatīt laika logu uz 2 stundām" + +msgid "Set time window to 3 hours" +msgstr "Iestatīt laika logu uz 3 stundām" + +msgid "Set time window to 4 hours" +msgstr "Iestatīt laika logu uz 4 stundām" + +msgid "Set time window to 5 hours" +msgstr "Iestatīt laika logu uz 5 stundām" + +msgid "Set time window to 6 hours" +msgstr "Iestatīt laika logu uz 6 stundām" + +msgid "Set voltage and 22KHz" +msgstr "Iestatīt spriegumu un 22 KHZ" + +msgid "Settings" +msgstr "Iestatījumi" + +msgid "Setup" +msgstr "Iestatījumi" + +msgid "Setup menu" +msgstr "Iestatījumu izvēlne" + +msgid "Setup mode" +msgstr "Iestatījumu režīms" + +msgid "Setup your positioner" +msgstr "Pozicioniera iestatījumi" + +msgid "Setup your satellite equipment" +msgstr "Satelīta iekārtu iestatījumi" + +#, python-format +msgid "Shall the USB stick wizard proceed and program the image file %s into flash memory?" +msgstr "Vai USB zibatmiņas vednis var uzstādīt imidža failu %s uz flešatmiņas?" + +msgid "Sharpness" +msgstr "Asums" + +msgid "Short filenames" +msgstr "Īsie failu nosaukumi" + +msgid "Show EIT now/next in infobar" +msgstr "Rādīt EIT pašreiz/nākošais infojoslā" + +msgid "Show EPG for current channel..." +msgstr "Rādīt EPG pašreizējam kanālam..." + +msgid "Show EPG..." +msgstr "Rādīt EPG..." + +msgid "Show Games show" +msgstr "Rādīt Games show" + +msgid "Show SNR percentage instead of dB value" +msgstr "Rādīt SNR procentos dB vietā" + +msgid "Show VCR scart on main menu" +msgstr "Rādīt VCR scart galvenā izvēlnē" + +msgid "Show WLAN status" +msgstr "Rādīt bezvadu tīkla statusu" + +msgid "Show animation while busy" +msgstr "Rādīt animāciju kad aizņemts" + +msgid "Show background in radio mode" +msgstr "Rādīt fona attēlu radio režīmā" + +msgid "Show bouquet selection menu" +msgstr "Rādīt buķešu atlases izvēlni" + +msgid "Show busy indicator when the system is busy." +msgstr "Rādīt aizņemtības indikatoru kad sistēma aizņemta." + +msgid "Show channel numbers in channel selection" +msgstr "Rādīt kanālu numurus kanālu izvēlnē" + +msgid "Show columns" +msgstr "" + +msgid "Show crypto icons" +msgstr "" + +msgid "Show crypto info in infobar" +msgstr "Rādīt šifrēšanas info infojoslā" + +msgid "Show detailed event info" +msgstr "Rādīt detalizētu notikumu info" + +msgid "Show event details" +msgstr "Rādīt notikuma detaļas" + +msgid "Show event-progress in channel selection" +msgstr "Rādīt notikuma norisi kanālu izvēlnē" + +msgid "Show extended description" +msgstr "Rādīt paplašināto aprakstu" + +msgid "Show extensions..." +msgstr "Skatīt paplašinājumus..." + +msgid "Show icon for new/unseen items" +msgstr "Rādīt ikonu jauniem/neredzētiem" + +msgid "Show in extensions menu" +msgstr "Rādīt paplašinājumu izvēlnē" + +msgid "Show info" +msgstr "Rādīt informāciju" + +msgid "Show info line" +msgstr "Rādīt infojoslu" + +msgid "Show infobar on channel change" +msgstr "Rādīt infojoslu mainot kanālus" + +msgid "Show infobar on event change" +msgstr "Rādīt infojoslu mainoties notikumiem" + +msgid "Show infobar on skip forward/backward" +msgstr "Rādīt infojoslu pārlēciena turp/atpakaļ laikā" + +msgid "Show latest commits on sourceforge" +msgstr "Parādīt pēdējo sourceforge kommitu" + +msgid "Show message when recording starts" +msgstr "Rādīt paziņojumu kad ieraksts sākas" + +msgid "Show movie lengths in movielist" +msgstr "Rādīt filmu garumus filmu sarakstā" + +msgid "Show multi channel EPG" +msgstr "Rādīt daudzkanālu EPG" + +msgid "Show picons in channel list" +msgstr "Rādīr pikonas kanālu srakstā" + +msgid "Show positioner movement" +msgstr "Rādīt pozicioniera kustību" + +msgid "Show screensaver" +msgstr "Rādīt ekrānsaudzētāju" + +msgid "Show second infobar" +msgstr "Rādīt otro infojoslu" + +msgid "Show service type icons" +msgstr "Rādīt kanālu tipu ikonas" + +msgid "Show services beginning with" +msgstr "Rādīt kanālus, kas sākas ar" + +msgid "Show shutdown menu" +msgstr "Rādīt izslēgšanas izvēlni" + +msgid "Show single service EPG" +msgstr "Rādīt atsevišķa kanāla EPG" + +msgid "Show status icons in Movielist" +msgstr "Rādīt statusa ikonu filmu sarakstā" + +msgid "Show status icons in movie list" +msgstr "Statusa ikona filmu sarakstā" + +msgid "Show status icons in movielist" +msgstr "Statusa ikona filmu sarakstā" + +msgid "Show tag menu" +msgstr "Rādīt etiķetes izvēlni" + +msgid "Show the radio player..." +msgstr "Klausīties radio..." + +msgid "Show the tv player..." +msgstr "Skatīties TV..." + +msgid "Show warning when timeshift is stopped" +msgstr "Rādīt brīdinājumu kad laika aizture apturēta" + +msgid "Shows the state of your wireless LAN connection.\n" +msgstr "Rādīt bezvadu tīkla savienojuma statusu.\n" + +msgid "Shuffle playlist" +msgstr "Jaukts repertuārs" + +msgid "Shutdown" +msgstr "Izslēgt" + +msgid "Shutdown when in Standby" +msgstr "Izslēgt kad ir gaidstāvē" + +msgid "Side by side" +msgstr "Salīdzināt pēc satura" + +msgid "Signal OK, proceeding" +msgstr "Signāls kārtībā, turpinu" + +msgid "Signal quality" +msgstr "Signāla kvalitāte" + +msgid "Signal strength:" +msgstr "Signāla stiprums:" + +msgid "Signal: " +msgstr "Signāls: " + +msgid "Similar" +msgstr "Līdzīgi" + +msgid "Similar broadcasts:" +msgstr "Līdzīgi raidījumi:" + +msgid "Simple" +msgstr "Vienkāršs" + +msgid "Simple titleset (compatibility for legacy players)" +msgstr "Vienkāršu simbolu lietojums nosaukumos (savietojamībai ar parastiem atskaņotājiem)" + +msgid "Single" +msgstr "Viens" + +msgid "Single EPG" +msgstr "Kanāla EPG" + +msgid "Single satellite" +msgstr "Viens pavadonis" + +msgid "Single step (GOP)" +msgstr "Viensolis (GOP)" + +msgid "Single transponder" +msgstr "Viens transponderis" + +msgid "Site latitude" +msgstr "Vietas platums" + +msgid "Site longitude" +msgstr "Vietas garums" + +msgid "Skin" +msgstr "Ādiņa" + +msgid "Skins" +msgstr "Ādiņas" + +msgid "Skip empty services" +msgstr "Izlaist tukšos kanālus" + +msgid "Skip internet connection check (disables automatic package installation)" +msgstr "Izlaist interneta savienojuma pārbudi (atspējo automātisku pakotņu uzstādīšanu)" + +msgid "Sleep timer" +msgstr "Miega taimeris" + +msgid "SleepTimer Configuration" +msgstr "Miega taimera iestatījumi" + +msgid "Sleeptimer" +msgstr "Miega taimeris" + +msgid "Slide picture in loop" +msgstr "Rādīt attēlus pa apli" + +msgid "Slide show interval (sec.)" +msgstr "Slīdrādes intervāls (sek.)" + +#, python-format +msgid "Slot %d" +msgstr "Karšu lasītājs %d" + +msgid "Slovak" +msgstr "Slovāku" + +msgid "Slovenian" +msgstr "Slovēņu" + +msgid "Slow" +msgstr "Lēni" + +msgid "Slow motion speeds" +msgstr "Palēninātās kustības ātrumi" + +msgid "Small progress" +msgstr "Izpilda" + +msgid "Social/Political/Economics" +msgstr "Sociālie/Politika/Ekonomika" + +msgid "SoftCam / CI" +msgstr "SoftCam / CI" + +msgid "Softcam type" +msgstr "Softcam tips" + +msgid "Software" +msgstr "Programmatūra" + +msgid "Software management" +msgstr "Programmatūras pārvaldīšana" + +msgid "Software manager setup" +msgstr "Programmatūras pārvaldīšanas iestatījumi" + +msgid "Software restore" +msgstr "Programmatūras atjaunošana" + +msgid "Software update" +msgstr "Programmatūras atjaunināšana" + +msgid "Softwaremanager information" +msgstr "Programmatūras pārvaldnieka informācija" + +msgid "Some plugins are not available:\n" +msgstr "Daži spraudņi nav pieejami:\n" + +#, python-format +msgid "Sorry, %s has not been installed!" +msgstr "Atvainojiet, %s nav uzstādīts!" + +msgid "Sorry, deleting directories can (for now) only be done through the trash can." +msgstr "Atvainojiet, nodzēstās mapes var (pašreiz) vienīgi caur miskasti." + +msgid "Sorry, no backups found!" +msgstr "Atvainojiet, dublējumkopijas nav atrastas!" + +msgid "Sorry, no details available!" +msgstr "Atvainojiet, informācija nav pieejama!" + +msgid "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." +msgstr "" +"Izvēlētais dublējumkopijas galamērķis nav ierakstāms.\n" +"Lūdzu izvēlieties citu." + +msgid "Sort" +msgstr "Kārtot" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort A-Z" +msgstr "Kārtot A-Z" + +msgid "Sort by" +msgstr "" + +msgid "Sort list:" +msgstr "" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort time" +msgstr "Kārt. laiks" + +msgid "Sound" +msgstr "Skaņa" + +msgid "Sound carrier" +msgstr "Skaņas nesējs" + +msgid "Source request" +msgstr "Аvots" + +msgid "South" +msgstr "Dienvidi" + +msgid "Spanish" +msgstr "Spāņu" + +msgid "Specify the end time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the end time until the inactivity sleeptimer should be ignored" +msgstr "Iestatīt beigu laiku līdz kuram neaktivitātes miega taimeris tiks ignorēts" + +msgid "Specify the start time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the start time when the inactivity sleeptimer should be ignored" +msgstr "Iestatīt sākuma laiku līdz kuram neaktivitātes miega taimeris tiks ignorēts" + +msgid "Specify timeframe to ignore inactivity sleeptimer" +msgstr "Iestatīt laiku neaktivitātes miega taimeria ignorēšanai" + +msgid "Specify timeframe to ignore the shutdown in standby" +msgstr "" + +msgid "Split preview mode" +msgstr "Sadalīt priekšskatīšanas režīmu" + +msgid "Splitscreen" +msgstr "" + +msgid "Sports" +msgstr "Sports" + +msgid "Standard" +msgstr "Standarta" + +msgid "Standart list" +msgstr "" + +msgid "Standby" +msgstr "Gaidstāve" + +msgid "Standby / restart" +msgstr "Gaidstāve / pārstartēt" + +msgid "Standby after current event" +msgstr "Gaidstāve pēc pašreizējā notikuma" + +#, python-format +msgid "Standby fan %d PWM" +msgstr "Ventilatora apgriezieni %d gaidstāvē" + +#, python-format +msgid "Standby fan %d voltage" +msgstr "Ventilatora spriegums %d gaidstāvē" + +msgid "Standby in " +msgstr "Gaidstāvē " + +msgid "StandbyLED" +msgstr "" + +msgid "Start from the beginning" +msgstr "Sākt no sākuma" + +msgid "Start offline decode" +msgstr "Sākt bezsaistes dekodēšanu" + +msgid "Start recording?" +msgstr "Sākt ierakstu?" + +msgid "Start test" +msgstr "Sākt pārbaudi" + +msgid "Start time" +msgstr "Sākuma laiks" + +msgid "Start time to ignore inactivity sleeptimer" +msgstr "Sākuma laiks pēc kura ignorēt neaktivitātes miega taimeri" + +msgid "Start time to ignore shutdown in standby" +msgstr "" + +msgid "Start timeshift" +msgstr "Sākt laika aizturi" + +msgid "Start with list screen" +msgstr "Sākt ar saraksta logu" + +msgid "Starting on" +msgstr "Sākot ar" + +msgid "Startup the set top box in standby" +msgstr "" + +msgid "Startup to Standby" +msgstr "" + +msgid "Step east" +msgstr "Soli uz austrumiem" + +msgid "Step west" +msgstr "Solis uz rietumiem" + +msgid "Stepped east" +msgstr "Soļo uz austrumiem" + +msgid "Stepped west" +msgstr "Soļo uz rietumiem" + +msgid "Stop" +msgstr "Apturēt" + +msgid "Stop PiP" +msgstr "Apturēt PiP" + +msgid "Stop current event and disable coming events" +msgstr "Apturēt pašreizējo notikumu un izslēgt nākamos notikumus" + +msgid "Stop current event but not coming events" +msgstr "Apturēt pašreizējo notikumu, bet ne nākamos notikumus" + +msgid "Stop entry" +msgstr "Apturēt ievadi" + +msgid "Stop playing this movie?" +msgstr "Apturēt filmas atskaņošanu?" + +msgid "Stop recording" +msgstr "Apturēt ierakstu" + +msgid "Stop recording and delete" +msgstr "Apturēt ierakstu un nodzēst" + +msgid "Stop service on return to movie list" +msgstr "" + +msgid "Stop test" +msgstr "Apturēt pārbaudi" + +msgid "Stop testing plane after # failed transponders" +msgstr "Apturēt testēšanu pēc # neatrastiem transponderiem" + +msgid "Stop testing plane after # successful transponders" +msgstr "Apturēt testēšanu pēc # atrastiem transponderiem" + +msgid "Stop timer recording" +msgstr "Apturēt taimera ierakstu" + +msgid "Stop timeshift" +msgstr "Apturēt laika aizturi" + +msgid "Stop timeshift?" +msgstr "Apturēt laika aizturi?" + +msgid "Stopped" +msgstr "Apturēt" + +msgid "Store at index" +msgstr "Saglabāt indeksā" + +msgid "Store position" +msgstr "Saglabāt pozīciju" + +msgid "Stored position" +msgstr "Saglabātā pozīcija" + +msgid "Stream" +msgstr "Plūsma" + +msgid "Stream request" +msgstr "Plūsmas pieprasījums" + +msgid "Strongest position" +msgstr "Ciešā pozīcija" + +msgid "Subservice list..." +msgstr "Papildkanālu saraksts..." + +msgid "Subservices" +msgstr "Papildkanāli" + +msgid "Subtitle Quickmenu" +msgstr "Subtitru ātrā izvēlne" + +msgid "Subtitle alignment" +msgstr "Subtitru izvēle" + +msgid "Subtitle border width" +msgstr "Subtitru apmales biezums" + +msgid "Subtitle delay when timing is bad" +msgstr "Subtitru aizture ja nav informācijas" + +msgid "Subtitle delay when timing lacks" +msgstr "Subtitru aizture kad nav norādīta laika aizture" + +msgid "Subtitle font size" +msgstr "Subtitru fonta izmērs" + +msgid "Subtitle language selection 1" +msgstr "Subtitru valodas izvēle 1" + +msgid "Subtitle language selection 2" +msgstr "Subtitru valodas izvēle 2" + +msgid "Subtitle language selection 3" +msgstr "Subtitru valodas izvēle 3" + +msgid "Subtitle language selection 4" +msgstr "Subtitru valodas izvēle 4" + +msgid "Subtitle position" +msgstr "Subtitru pozīcija" + +msgid "Subtitle selection" +msgstr "Subtitru izvēle" + +msgid "Subtitle selection..." +msgstr "Subtitru izvēle..." + +msgid "Subtitle settings" +msgstr "Subtitru izvēle" + +msgid "Subtitles" +msgstr "Subtitri" + +msgid "Sun" +msgstr "Sv" + +msgid "Sunday" +msgstr "Svētdiena" + +msgid "Swap PiP and main picture" +msgstr "Mainīt PiP un galveno attēlu" + +msgid "Swap services" +msgstr "Samainīt kanālus" + +msgid "Swedish" +msgstr "Zviedru" + +msgid "Switch TV to correct input" +msgstr "Pārslēgt TV uz pareizu ieeju" + +msgid "Switch between filelist/playlist" +msgstr "Pārslēgties starp failu/atskaņošanas režīmiem" + +msgid "Switch between normal mode and list mode" +msgstr "Pārslēgties starp normālo un saraksta režīmu" + +msgid "Switch to HDMI in mode" +msgstr "" + +msgid "Switch to filelist" +msgstr "Iet uz failu sarakstu" + +msgid "Switch to next channel" +msgstr "" + +msgid "Switch to next channel in history" +msgstr "Pārslēgt uz nākamo kanālu vēsturē" + +msgid "Switch to next sub service" +msgstr "Pārslēgt uz nākamo papildkanālu" + +msgid "Switch to playlist" +msgstr "Pārslēgt uz repertuāru" + +msgid "Switch to previous channel" +msgstr "Pārslēgt iepriekšējo kanālu" + +msgid "Switch to previous channel in history" +msgstr "Pārslēgt uz iepriekšējo kanālu vēsturē" + +msgid "Switch to previous sub service" +msgstr "Pārslēgt uz iepriekšējo papildkanālu" + +msgid "Switchable tuner types:" +msgstr "Pārslēdzamo uztvērēju tipi:" + +msgid "Symbol rate" +msgstr "Simbola vērtība" + +msgid "Symbol rate:" +msgstr "Simbola vērtība:" + +msgid "Sync failure moving back to origin !" +msgstr "Sinhronizēšana pārtraukta, atiestata uz oriģinālu!" + +msgid "System" +msgstr "Sistēma" + +#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) +msgid "TRANSLATOR_INFO" +msgstr "Taapat, Madars Auns Latvija, Talsi" + +msgid "TS file is too large for ISO9660 level 1!" +msgstr "TS fails ir par lielu priekš ISO9660 level 1!" + +msgid "TSID" +msgstr "TSID" + +msgid "TV physical address report" +msgstr "TV fiziskās adreses ziņojums" + +msgid "TXT PID" +msgstr "TXT PID" + +msgid "Table of contents for collection" +msgstr "Satura rādītājs kolekcijai" + +msgid "Tags" +msgstr "Etiķetes" + +msgid "Teletext subtitle color" +msgstr "Teleteksta subtitru krāsa" + +msgid "Temperature and fan control" +msgstr "Temperatūras un ventilatora kontrole" + +msgid "Terrestrial" +msgstr "Virszemes" + +msgid "Terrestrial provider" +msgstr "Virszemes operators" + +msgid "Test DiSEqC settings" +msgstr "Pārbaudīt DiSEqC iestatījumus" + +msgid "Test mode" +msgstr "Testa režīms" + +msgid "Test the network configuration of your receiver.\n" +msgstr "Pārbaudīt uztvērēja tīkla iestatījumus.\n" + +msgid "Test type" +msgstr "Pārbaudes veids" + +msgid "Text color" +msgstr "Teksta krāsa" + +msgid "Thai" +msgstr "Taiešu" + +msgid "" +"Thank you for using the wizard.\n" +"Please press OK to continue." +msgstr "" +"Paldies ka izmantojāt vedni.\n" +"Lūdzu nospiediet OK, lai turpinātu." + +msgid "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." +msgstr "" +"Paldies ka izmantojāt vedni. Jūsu uztvērējs ir gatavs lietošanai.\n" +"Nospiediet OK, lai sāktu lietot savu uztvērēju." + +msgid "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?" +msgstr "DVD standarts neatbalsta H.264 (HDTV) video. Vai jūs vēlaties izveidot īpaša formāta datu DVD (kuru nevarēs atskaņot standarta DVD atskaņotāji)?" + +msgid "The PIN code has been changed successfully." +msgstr "PIN kods nomainīts veiksmīgi." + +msgid "The PIN codes you entered are different." +msgstr "Ievadītie PIN kodi atšķiras." + +msgid "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" +msgstr "" +"USB zibatmiņa izveidota sāknējama.\n" +"Tagad varat lejupielādēt NFI imidža failu!" + +msgid "The backup failed. Please choose a different backup location." +msgstr "Dublējumkopēšana neizdevās. Lūdzu izvēlieties citu vietu dublējumkopijai. " + +#, python-format +msgid "" +"The current beta image might not be stable.\n" +"For more information see %s." +msgstr "" +"Šis beta imidžs var nebūt stabils.\n" +"Vairāk informācijas skatīt %s." + +#, python-format +msgid "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." +msgstr "" +"Mape %s nav rakstāma.\n" +"Pārliecinieties, ka jūs izvēlieties ierakstāmu direktoriju." + +#, python-format +msgid "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" +msgstr "" +"Atrasta sekojoša ierīce:\n" +"\n" +"%s\n" +"\n" +"Vai vēlaties ierakstīt USB lādētāju šajā atmiņas ierīcē?" + +msgid "The following files were found..." +msgstr "Tika atrasti sekojoši faili..." + +msgid "The md5sum validation failed, the file may be corrupted!" +msgstr "md5sum validācija neizdevās, iespējams, ka fails ir bojāts!" + +msgid "" +"The network wizard extension is not installed!\n" +"Please install it." +msgstr "" +"Bezvadu tīkla spraudnis nav uzstādīts!\n" +"Lūdzu uzstādiet to." + +#, python-format +msgid "The path %s already exists." +msgstr "Ceļš %s jau eksistē." + +msgid "The pin code you entered is wrong." +msgstr "Jūsu ievadītais PIN kods ir nepareizs." + +#, python-format +msgid "The results have been written to %s." +msgstr "Rezultāti saglabāti %s." + +msgid "The sleep timer has been activated." +msgstr "Miega taimeris tika aktivizēts." + +msgid "The sleep timer has been disabled." +msgstr "Miega taimeris tika izslēgts." + +msgid "" +"The software management extension is not installed!\n" +"Please install it." +msgstr "" +"Programmatūras pārvaldīšanas spraudnis nav uzstādīts!\n" +"Lūdzu uzstādiet to." + +#, python-format +msgid "The status of the current beta image could not be checked because %s can not be reached." +msgstr "Esošo beta imidža statusu nevar pārbaudīt, jo %s nevar tikt panākts." + +msgid "The timer file (timers.xml) is corrupt and could not be loaded." +msgstr "Taimera fails (timers.xml) ir bojāts un to nevar ielādēt." + +msgid "The user interface of your receiver is restarting" +msgstr "Uztvērēja lietotāja interfeiss tiek pārstartēts" + +msgid "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" +msgstr "" +"Lietotāja interfeiss tiek pārstartēts\n" +"dēļ kļūdas failā mytest.py" + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." +msgstr "" +"Bezvadu tīkla spraudnis nav uzstādīts!\n" +"Lūdzu uzstādiet to un izvēlieties ko gribat darīt nākamo." + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it." +msgstr "" +"Bezvadu tīkla spraudnis nav uzstādīts!\n" +"Lūdzu uzstādiet to." + +msgid "The wizard can backup your current settings. Do you want to do a backup now?" +msgstr "Vednis var izveidot pašreizējo iestatījumu dublējumkopiju. Vai vēlaties veidot dublējumkopiju tulīt?" + +#, python-format +msgid "The wizard found a configuration backup. Do you want to restore your old settings from %s?" +msgstr "Vednis atradis iestatījumu dublējumkopiju. Vai vēlaties atjaunot iepriekšējos iestatījumus no %s?" + +msgid "The wizard is finished now." +msgstr "Vednis ir pabeidzis darbu." + +msgid "There are at least " +msgstr "Pastāv vismaz " + +#, python-format +msgid "There are at least %s updates available." +msgstr "Pastāv vismaz %s atjaunojumi." + +msgid "There are currently no outstanding actions." +msgstr "Pašlaik nav aktuālu darbību." + +msgid "There are no updates available." +msgstr "Pašlaik atjauninājumi nav pieejami." + +msgid "There is no signal to lock on !" +msgstr "Pašlaik nav signāla uz ko noenkuroties!" + +msgid "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" +msgstr "" +"Izvēlētajā sadaļā var nebūt pietiekami daudz vietas.\n" +"Vai tiešām vēlaties turpināt?" + +msgid "This DVD RW medium is already formatted - reformatting will erase all content on the disc." +msgstr "Šis DVD RW disks jau ir formatēts - atkārtota formatēšana dzēsīs visu diska saturu." + +msgid "" +"This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!" +msgstr "" +"Šis spraudnis izveidos USB zibatmiņu ko var izmantot lai atjauninātu uztvērēja programatūru, neizmantojot tīklu vai bezvadu savienojumu.\n" +"Vispirms, USB zibatmiņa ir jāsagatavo tā, lai tā būtu sāknējama.\n" +"Nākamajā solī, NFI imidža failu var lejupielādēt no atjauninājumu servera un saglabāt uz USB zibatmiņas.\n" +"Ja jums jau ir sagatavota sāknējama USB zibatmiņa, lūdzu ievietojiet to tagad. Pretējā gadījumā iespraudiet USB zibatmiņu ar minimālo izmēru 64 MB!" + +msgid "This plugin is installed." +msgstr "Šis spraudnis ir uzstādīts." + +msgid "This plugin is not installed." +msgstr "Šis spraudnis nav uzstādīts." + +msgid "This plugin will be installed." +msgstr "Šis spraudnis tiks uzstādīs." + +msgid "This plugin will be removed." +msgstr "Šis spraudnis tiks noņemts." + +#, python-format +msgid "This receiver cannot decode %s streams!" +msgstr "Uztvērējs nevar dekodēt %s plūsmas!" + +msgid "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration" +msgstr "" +"Šis tests pārbauda domēna vārdu serveru (DNS) konfigurāciju.\n" +"Ja Jūs saņemat \"neapstiprināts \" paziņojumu:\n" +"- lūdzu pārbaudiet DHCP, kabeļus un adaptera iestījumus\n" +"- ja uzstādījāt domēna vārdu serverus manuāli, pārbaudiet savus ierakstus \"DNS \" uzstādījumi" + +msgid "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" +msgstr "" +"Šis tests pārbauda vai tīkla kabelis ir savienots ar tīkla adapteri.\n" +"Ja Jūs saņemat \"atvienots \" paziņojumu:\n" +"- pārliecinieties, ka tīkla kabelis ir pievienots\n" +"- pārliecinieties, ka kabelis nav bojāts" + +msgid "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" +msgstr "" +"Šis tests pārbauda vai tīkla adapterim ir atrasta derīga IP adrese. \n" +"Ja Jūs saņemat \"neapstiprināts \" paziņojumu:\n" +"- nav atrasta derīga IP adrese\n" +"- lūdzu pārbaudiet DHCP, kabeļus un adaptera iestījumus" + +msgid "" +"This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." +msgstr "" +"Šis tests pārbauda vai tīkla adapteris ir iestatīts automātiskai IP adrešu konfigurēšanai ar DHCP.\n" +"Ja saņemat \"neaktīvs \" paziņojumu:\n" +"- tīkla adapteris ir konfigurēts manuālai IP iestatīšanai\n" +"- pārbaudiet, vai ir ievadīta korekta IP informācija adaptera iestatījumu dialoglogā. \n" +"Ja saņemat \"aktīvs \" paziņojumu:\n" +"- pārbaudiet, vai DHCP serveris ir konfigurēts un darbojas jūsu tīklā." + +msgid "This test detects your configured LAN adapter." +msgstr "Šis tests atrod konfigurēto tīkla adapteri." + +msgid "" +"This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\n" +"Are you sure?" +msgstr "" +"Šis pārrēķina visas pozīcijas jūsu pozicionierim un var nodzēst iepriekš iegaumētas pozīcijas un precizēšanu!\n" +"Vai esat pārliecināts?" + +msgid "Three" +msgstr "Koks" + +msgid "Threshold" +msgstr "Heterodīns" + +msgid "Thu" +msgstr "Ce" + +msgid "Thumbnails" +msgstr "Sīktēli" + +msgid "Thursday" +msgstr "Ceturtdiena" + +msgid "Time" +msgstr "Laiks" + +msgid "Time scale" +msgstr "Laika skala" + +msgid "Timer" +msgstr "Taimeris" + +msgid "Timer Overview" +msgstr "" + +msgid "Timer edit" +msgstr "Rediģēt taimeri" + +msgid "Timer editor" +msgstr "Taimera redaktors" + +msgid "Timer entry" +msgstr "Taimera ieraksts" + +msgid "Timer log" +msgstr "Taimera žurnāls" + +msgid "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" +msgstr "" +"Konstatēta taimeru pārklāšanās failā timers.xml! \n" +"Lūdzu pārbaudiet vēlreiz!" + +msgid "Timer overview" +msgstr "Taimera pārskats" + +msgid "Timer recording location" +msgstr "Taimera ieraksta vieta" + +msgid "Timer sanity error" +msgstr "Taimera kļūda" + +msgid "Timer selection" +msgstr "Taimeru izvēle" + +msgid "Timer selection..." +msgstr "Taimeru izvēle..." + +msgid "Timer type" +msgstr "Taimera veids" + +msgid "Timeshift" +msgstr "Laika aizture" + +msgid "Timeshift Live" +msgstr "" + +msgid "Timeshift location" +msgstr "Laika aiztures vieta" + +msgid "Timeshift not possible!" +msgstr "Laika aizture nav iespējama!" + +msgid "Timezone" +msgstr "Laika josla" + +msgid "Title" +msgstr "Nosaukums" + +msgid "Title properties" +msgstr "Nosaukuma parametri" + +msgid "Titleset mode" +msgstr "Nosaukuma iestatīšanas režīms" + +msgid "To audio selection" +msgstr "Uz audio iestatīšanu" + +msgid "To subtitle selection" +msgstr "Uz subtitru iestatīšanu" + +msgid "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." +msgstr "" +"Lai atjauninātu savu uztvērēja programmatūru, lūdzu rīkojieties šādi:\n" +"1) Izslēdziet uztvērēju ar aizmugurējo barošanas slēdzis un pārliecinieties ka sāknējama USB zibatmiņa ir pieslēgta.\n" +"2) Ieslēdziet elektroapgādi atpakaļ un turiet DOWN pogu uz priekšējā paneļa nospiestu 10 sekundes.\n" +"3) Gaidiet sāknēšanu un sekojiet veidņa norādījumiem." + +msgid "Today" +msgstr "Šodien" + +msgid "Toggle a cut mark at the current position" +msgstr "Ie/izslēgt griešanas iezīmi pašreizējā pozīcijā" + +msgid "Tone amplitude" +msgstr "Toņa amplitūda" + +msgid "Tone mode" +msgstr "Toņa režīms" + +msgid "Toneburst" +msgstr "Toņsignāls" + +msgid "Toneburst A/B" +msgstr "Toņsignāls A/B" + +msgid "Top and bottom" +msgstr "Augšējā un apakšējā" + +msgid "Track" +msgstr "Celiņš" + +msgid "Translation" +msgstr "Tulkojums" + +msgid "Translation:" +msgstr "Tulkojums:" + +msgid "Translations" +msgstr "Tulkojumi" + +msgid "Transmission mode" +msgstr "Pārraides režīms" + +msgid "Transponder" +msgstr "Transponderis" + +msgid "Transponder type" +msgstr "Transpondera veids" + +msgid "Trash can" +msgstr "Miskaste" + +msgid "Tries left:" +msgstr "Atlikuši mēģinājumi:" + +msgid "Try to find used transponders in cable network.. please wait..." +msgstr "Mēģina atrast izmantotus transponderus kabeļu tīklā.. lūdzu gaidiet..." + +msgid "Trying to download a new packetlist. Please wait..." +msgstr "Mēģina lejuplādēt jaunu pakotņu sarakstu. Lūdzu gaidiet..." + +msgid "Tue" +msgstr "Ot" + +msgid "Tuesday" +msgstr "Otrdiena" + +msgid "Tune" +msgstr "Uztvert" + +msgid "Tune and focus" +msgstr "Uztvērēja statuss" + +msgid "Tune failed!" +msgstr "Uztveršana neizdevās!" + +msgid "Tuner" +msgstr "Uztvērējs" + +msgid "Tuner configuration" +msgstr "Uztvērēja konfigurācija" + +msgid "Tuner is not supported" +msgstr "" + +msgid "Tuner slot" +msgstr "Uztvērēja slots" + +msgid "Tuner status" +msgstr "Uztvērēja statuss" + +#, python-format +msgid "Tuner status %s" +msgstr "Uztvērēja statuss %s" + +msgid "Tuner type" +msgstr "Uztvērēja tips" + +msgid "Turkish" +msgstr "Turku" + +msgid "Turn on the power LED during standby." +msgstr "" + +msgid "Turning step size" +msgstr "" + +msgid "Two" +msgstr "Divi" + +msgid "Type" +msgstr "Veids" + +msgid "Type of scan" +msgstr "Meklēšanas veids" + +msgid "USALS" +msgstr "USALS" + +msgid "USALS calibration" +msgstr "USALS kalibrēšana" + +msgid "USB stick" +msgstr "USB zibatmiņa" + +msgid "USB stick wizard" +msgstr "USB zibatmiņas vednis" + +msgid "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Notiek neuzraudzīts jauninājums\n" +"Lūdzu uzgaidiet, kamēr jūsu uztvērējs pārstartējas\n" +"Tas var aizņemt dažas minūtes" + +msgid "Undo install" +msgstr "Atsukt uzstādīšanu" + +msgid "Undo uninstall" +msgstr "Atsaukt atinstalēšanu" + +msgid "Unencrypted" +msgstr "Nešifrēts" + +msgid "UnhandledKey" +msgstr "Neapstrādāta poga" + +msgid "Unicable" +msgstr "Vienkabeļa" + +msgid "Unicable LNB" +msgstr "Vienkabeļa LNB" + +msgid "Unicable Martix" +msgstr "Vienkabeļa Martix" + +msgid "Uninstall" +msgstr "Atinstalēt" + +msgid "Universal LNB" +msgstr "Universālā LNB" + +msgid "Unknown" +msgstr "Nezināms" + +msgid "Unmount" +msgstr "Atmontēt" + +msgid "Unsupported" +msgstr "Neatbalstāms" + +msgid "Update" +msgstr "Atjaunināt" + +msgid "Update and ask to reboot" +msgstr "Atjaunināt un jautāt vai pārstartēt" + +msgid "Update and reboot (recommended)" +msgstr "Atjaunināt un pārstartēt (ieteicams)" + +msgid "Update channel list only" +msgstr "Atjaunināt tikai kanālu sarakstu" + +#, python-format +msgid "Update completed, %d package was installed." +msgid_plural "Update completed, %d packages were installed." +msgstr[0] "Atjaunināšana pabeigta, %d pakotne uzstādīta." +msgstr[1] "Atjaunināšana pabeigta, %d pakotnes uzstādītas." +msgstr[2] "Atjaunināšana pabeigta, %d pakotnes uzstādītas." + +msgid "Update completed. Do you want to reboot your receiver?" +msgstr "Atjaunināšana pabeigta. Vai vēlaties pārstartēt uztvērēju?" + +msgid "Update failed. Your receiver does not have a working internet connection." +msgstr "Atjaunināšana pārtraukta. Uztvērējam nestrādā interneta savienojums." + +msgid "Update has completed." +msgstr "Atjaunināšana pabeigta." + +msgid "Updatefeed not available." +msgstr "Barotnes nav pieejamas." + +msgid "Updating software catalog" +msgstr "Atjauno programmatūras katalogu" + +msgid "Upgrading" +msgstr "Atjaunošana" + +msgid "Use" +msgstr "Lietot" + +msgid "Use DHCP" +msgstr "Lietot DHCP" + +msgid "Use EIT EPG information when it is available." +msgstr "Lietot EIT EPG informāciju kad pieejama." + +msgid "Use FreeSat EPG information when it is available." +msgstr "Lietot FreeSat EPG informāciju kad pieejama." + +msgid "Use MHW EPG information when it is available." +msgstr "Lietot MHW EPG informāciju kad pieejama." + +msgid "Use Netmed EPG information when it is available." +msgstr "Lietot Netmed EPG informāciju kad pieejama." + +msgid "Use TV remote control" +msgstr "Lietot TV tālvadības pulti." + +msgid "Use USALS for this sat" +msgstr "Lietot USALS šim pavadonim " + +msgid "Use ViaSat EPG information when it is available." +msgstr "Lietot ViaSat EPG informāciju kad pieejama." + +msgid "Use Virgin EPG information when it is available." +msgstr "" + +msgid "Use a gateway" +msgstr "Lietot vārteju" + +msgid "Use fastscan channel names" +msgstr "Lietot ātrās meklēšanas kanālu nosaukumus" + +msgid "Use fastscan channel numbering" +msgstr "Lietot ātrās meklēšanas kanālu numurus" + +msgid "Use frequency or channel" +msgstr "" + +msgid "Use individual settings for each directory" +msgstr "Lietot individuālus uzstādījumus katrai mapei" + +msgid "Use interface" +msgstr "Lietot interfeisu" + +msgid "Use official channel numbering" +msgstr "Lietot oficiālo kanālu numurēšnu" + +msgid "Use original DVB subtitle position" +msgstr "Lietot oriģinālo DVB subtitru pozīciju" + +msgid "Use original teletext position" +msgstr "Lietot oriģinālo teleteksta pozīciju" + +msgid "Use power measurement" +msgstr "Lietot sprieguma mērīšanu" + +msgid "Use the network wizard to configure selected network adapter" +msgstr "Lietot tīkla vedni adaptera uzstādīšanai" + +msgid "Use the network wizard to configure your network\n" +msgstr "Lietot vedni tīkla uzstādīšanai\n" + +msgid "Use the up/down keys on your remote control to select an option. After that, press OK." +msgstr "Lietojiet tālvadības pults augšup/lejup taustiņus, lai izdarītu izvēli. Pēc tam spiediet OK." + +msgid "Use the wizard to set up basic features" +msgstr "Lietot vedni galveno iespēju iestatīšanai" + +msgid "Use these input device settings?" +msgstr "Lietot šos ievades ierīces iestatījumus?" + +msgid "Use these settings?" +msgstr "Lietot šos iestatījumus?" + +msgid "Use this video enhancement settings?" +msgstr "Lietot šos video uzlabošanas iestatījumus?" + +msgid "Use trash can in movielist" +msgstr "Lietot miskasti filmu sarakstā" + +msgid "Used service scan type" +msgstr "Lietotais kanālu meklēšanas veids" + +msgid "User - bouquets" +msgstr "Lietotāja - buķetes" + +msgid "User defined" +msgstr "Lietotāja definēts" + +msgid "User defined transponder" +msgstr "Lietotāja definēts transponderis" + +msgid "User interface" +msgstr "Lietotāja interfeiss" + +msgid "Username" +msgstr "Lietotāja vārds" + +#, python-format +msgid "Using LNB %d" +msgstr "Lietot LNB %d" + +msgid "Using fixed address" +msgstr "Lietot fiksētu adresi" + +#, python-format +msgid "Using tuner %s" +msgstr "Lietot uztvērēju %s" + +msgid "Usually when the subtitle language is the same as the audio language, the subtitles will not be used. Enable this option to allow these subtitles to be used." +msgstr "Parasti, kad subtitru valoda ir tāda pati kā audio valodu, subtitri netiek izmantoti. Ieslēdziet lai atļautu izmantot subtitrus." + +msgid "VCR scart" +msgstr "VCR scart" + +msgid "VMGM (intro trailer)" +msgstr "VMGM (ievada treileris)" + +msgid "Vertical" +msgstr "Vertikālā" + +msgid "Vertical turning speed" +msgstr "Vertikālās noskaņošanas ātrums" + +msgid "Video PID" +msgstr "Video PID" + +msgid "Video enhancement preview" +msgstr "Video uzlabošanas priekšskatījums" + +msgid "Video enhancement settings" +msgstr "Video uzlabošanas iestatījumi" + +msgid "Video enhancement setup" +msgstr "Video uzlabošanas uzstādījumi" + +msgid "Video fine tuning" +msgstr "Precīzā video regulēšana" + +msgid "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." +msgstr "" +"Attēla ieejas izvēle\n" +"\n" +"Ja redzat šo lappusi uz sava TV, spiediet OK (vai izvēlieties citu ieeju).\n" +"\n" +"Pēc 20 sekundēm tiks automātiski aktivizēta nākamā ieeja." + +msgid "Video mode selection." +msgstr "Video režīma izvēle." + +msgid "Video output" +msgstr "Video izeja" + +msgid "Video setup" +msgstr "Video iestatījumi" + +msgid "Video wizard" +msgstr "Video vednis" + +#, python-format +msgid "Video: %s fps" +msgstr "Video: %s fps" + +msgid "VideoMode" +msgstr "Video režīms" + +msgid "Videocodec" +msgstr "Video kodeks" + +msgid "Videoformat" +msgstr "Video formāts" + +msgid "Videosize" +msgstr "Video izmērs" + +msgid "View Rass interactive..." +msgstr "Skatīt Rass interaktīvi..." + +msgid "View details" +msgstr "Skatīt detaļas" + +msgid "View list of available " +msgstr "Skatīt sarakstu ar pieejamiem " + +msgid "View list of available CommonInterface extensions" +msgstr "Skatīt sarakstu ar pieejamiem CommonInterfeisa paplašinājumiem" + +msgid "View list of available EPG extensions." +msgstr "Skatīt sarakstu ar pieejamiem EPG paplašinājumiem." + +msgid "View list of available Satellite equipment extensions." +msgstr "Skatīt sarakstu ar pieejamiem satelītu iekārtu paplašinājumiem." + +msgid "View list of available communication extensions." +msgstr "Skatīt sarakstu ar pieejamiem komunikāciju paplašinājumiem" + +msgid "View list of available default settings" +msgstr "Skatīt sarakstu ar pieejamiem noklusējuma iestatījumiem" + +msgid "View list of available display and userinterface extensions." +msgstr "Skatīt sarakstu ar pieejamiem attēla un lietotāja interfeisa paplašinājumiem." + +msgid "View list of available multimedia extensions." +msgstr "Skatīt sarakstu ar pieejamiem multimediju paplašinājumiem." + +msgid "View list of available networking extensions" +msgstr "Skatīt sarakstu ar pieejamiem tīkla paplašinājumiem" + +msgid "View list of available recording extensions" +msgstr "Skatīt sarakstu ar pieejamiem ieraksta paplašinājumiem" + +msgid "View list of available skins" +msgstr "Skatīt sarakstu ar pieejamām ādiņām" + +msgid "View list of available software extensions" +msgstr "Skatīt sarakstu ar pieejamiem programmatūras paplašinājumiem" + +msgid "View list of available system extensions" +msgstr "Skatīt sarakstu ar pieejamiem sistēmas paplašinājumiem" + +msgid "View photos..." +msgstr "Skatīt fotogrāfijas..." + +msgid "View teletext..." +msgstr "Skatīt teletekstu..." + +msgid "View video CD..." +msgstr "Skatīt video CD..." + +msgid "Virtual keyboard" +msgstr "Virtuālā klaviatūra" + +msgid "Voltage mode" +msgstr "Sprieguma režīms" + +msgid "Volume" +msgstr "Skaļums" + +msgid "W" +msgstr "W" + +msgid "WEP" +msgstr "WEP" + +msgid "WLAN connection" +msgstr "Bezvadu savienojums" + +msgid "WPA" +msgstr "WPA" + +msgid "WPA or WPA2" +msgstr "WPA vai WPA2" + +msgid "WPA2" +msgstr "WPA2" + +msgid "WSS on 4:3" +msgstr "WSS uz 4:3" + +msgid "Waiting" +msgstr "Gaida" + +msgid "Waiting for mount" +msgstr "Gaida montēšanu" + +msgid "Waiting for partition" +msgstr "Gaida partīciju dalīšanu" + +msgid "Wakeup" +msgstr "Pamodināt" + +msgid "Wakeup TV from standby" +msgstr "Pamodināt TV no gidstāves" + +msgid "Wakeup receiver for start timer" +msgstr "" + +msgid "Wakeup receiver from standby" +msgstr "Pamodināt uztvērēju no gidstāves" + +msgid "Wakeup signal from TV" +msgstr "Pamodināšanas signāls no TV" + +msgid "Wakeup type" +msgstr "" + +msgid "Warning: no LNB; using factory defaults." +msgstr "Uzmanību: nav LNB; lieto noklusētos iestatījumus" + +msgid "Watch movies..." +msgstr "Skatīt filmas..." + +msgid "Watch recordings..." +msgstr "Skatīt ierakstus..." + +msgid "Wed" +msgstr "Tr" + +msgid "Wednesday" +msgstr "Trešdiena" + +msgid "Weekday" +msgstr "Nedēļas diena" + +msgid "Weighted position" +msgstr "Pozīcijas nozīmīgums" + +msgid "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." +msgstr "" +"Sveicināti griešanas redaktorā.\n" +"\n" +"Ejiet uz fragmenta, kuru jūs vēlaties izgriezt, sākumu. Spiediet OK, lai izvēlētos 'griezuma sākumu'.\n" +"\n" +"Tad ejiet uz beigām, spiediet OK, izvēlieties 'griezuma beigas'. Tas arī viss." + +msgid "Welcome to the image upgrade wizard. The wizard will assist you in upgrading the firmware of your receiver by providing a backup facility for your current settings and a short explanation of how to upgrade your firmware." +msgstr "Laipni lūdzam imidža atjaunināšanas vednī. Vednis palīdzēs jums atjaunot uztvērēja programmatūru nodrošinot dublējumkopiju pašreizējiem iestatījumiem, kā arī īsumā izskaidros kā veikt programmatūras atjaunošanu." + +msgid "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" +msgstr "" +"Laipni lūdzam.\n" +"\n" +"Ja jūs vēlaties, savienot jūsu uztvērēju ar internetu šis vednis veiks pamata tīkla iestatīšanu.\n" +"\n" +"Nospiediet OK, lai sāktu sava tīkla konfigurēšanu" + +msgid "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." +msgstr "" +"Laipni lūdzam.\n" +"\n" +"Šis starta vednis veiks uztvērēja pamata iestatījumus.\n" +"Nospiediet pogu OK uz tālvadības pults, lai pārietu uz nākamo soli." + +msgid "Welcome..." +msgstr "Sveicināti..." + +msgid "West" +msgstr "Rietumi" + +msgid "West limit set" +msgstr "Uzstādīt rietumu limitu" + +msgid "What do you want to scan?" +msgstr "Ko Jūs vēlaties meklēt?" + +msgid "When enabled the PiP can be closed by the exit button." +msgstr "Ja iespējots attēls attēlā, var aizvērt ar exit taustiņu." + +msgid "When enabled the arrow buttons around the OK button will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled the left, right, CH+/-, B+/-, P+/- buttons will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled you can specify a timeframe to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "When enabled you can specify a timeframe were the inactivity sleeptimer is ignored. Not the detection is disabled during this timeframe but the inactivity timeout is disabled" +msgstr "Ja iespējots jūs varat iestatīt laiku kad neaktivitātes miega taimeris tiks ignorēts. Šinī laikā neaktivitātes noteikšna ir atspējota bet arī neaktivitātes aizture ir atspējota" + +msgid "When enabled you can zap channels with the CH+/-, B+/-, P+/- buttons instead of opening the channel selection list." +msgstr "" + +msgid "When enabled you get the channel selection list via the OK button, the infobar toggle is then transfered to exit button" +msgstr "" + +msgid "When enabled, AIT data will be included in http streams. This allows a client receiver to use HbbTV." +msgstr "Ja iespējots, AIT dati tiks iekļauti http plūsmās. Tas atļaus klienta uztvērējam lietot HbbTV." + +msgid "When enabled, ECM data will be included in http streams. This allows a client receiver to do the descrambling." +msgstr "Ja iespējots, ECM dati tiks iekļauti http plūsmās. Tas atļaus klienta uztvērējam tos atkodēt." + +msgid "When enabled, EIT data will be included in http streams. This allows a client receiver to show EPG." +msgstr "Ja iespējots, EIT dati tiks iekļauti http plūsmās. Tas atļaus klienta uztvērējam attēlot EPG." + +msgid "When enabled, a popup message will be shown when a movie has finished and the next one will start." +msgstr "Ja iespējots, kad filma beigsies tiks parādīts paziņojums, un sāksies nākošā." + +msgid "When enabled, a popup message will be shown when a recording starts." +msgstr "Ja iespējots, tiks parādīts paziņojums kad sākas ieraksts." + +msgid "When enabled, a radio background image will be visible while listening to a radio channel." +msgstr "Ja iespējots, kad skatīsieties radio kanālus būs redzams fona attēls." + +msgid "When enabled, a recording is allowed to interrupt live tv, when there are no free tuners." +msgstr "Ja iespējots, tiks atļauts ieraksts ignorējot tiešās pārraides ja nav brīvu uztvērēju." + +msgid "When enabled, a warning will be displayed and the user will get an option to stop or to continue the timeshift." +msgstr "Ja iespējots, tiks parādīts brīdinājums un lietotājs varēs izvēlēties vai apstādīnāt, vai turpināt laika aizturi." + +msgid "When enabled, authentication is required to watch http streams." +msgstr "" + +msgid "When enabled, channel numbering will start at '1' for each bouquet." +msgstr "Ja iespējots, katrā buķetē kanālu numerācija sāksies ar '1'." + +msgid "When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen." +msgstr "Ja iespējots, saturs ar izšķirtspēju 4:3 būs izstiepts pa visu ekrānu." + +msgid "When enabled, continue to the next bouquet when the last channel of the current bouquet is reached while changing channels." +msgstr "Ja iespējots, pārslēdzot kanālus pārslēgšana turpināsies nākošajā buķetē, ja beigsies kanālu saraksts esošajā buķetē." + +msgid "When enabled, deleted recordings are moved to the trash can, instead of being deleted immediately." +msgstr "Ja iespējots, dzēstie ieraksti tiks pārvietoti uz miskasti nevis neatgriezeniski dzēsti." + +msgid "When enabled, display the EIT now/next eventdata in infobar. When disabled, display now/next eventdata from the EPG cache instead." +msgstr "Ja iespējots, attēlos pašreiz/nākošais EIT notikumus infojoslā. Ja atspējots pašreiz/nākošais notikumi netiks rādīti no EPG kešatmiņas." + +msgid "When enabled, encryption info will be shown in the infobar (when supported by the skin)." +msgstr "Ja iespējots, infojoslā tiks attēlota kodēšanas informācija (ja to uztur ādiņa)." + +msgid "When enabled, error messages related to the Common Interface module will not be shown." +msgstr "Ja iespējots, netiks parādītas kļūdas no common interfeisa moduļa." + +msgid "When enabled, error messages related to zapping will not be shown." +msgstr "Ja iespējots, netiks parādītas kļūdas pārslēdzoties kanāliem." + +msgid "When enabled, external subtitles will be always turned on for playback movie." +msgstr "Ja iespējots, atskaņojot filmas vienmēr tiks izmantoti ārējie subtitri." + +msgid "When enabled, graphical DVB subtitles are preferred over teletext subtitles, when both types are available." +msgstr "Ja iespējots, priekšroka tiks dota grafiskajiem DVB subtitriem ja pieejami abu tipu subtitri." + +msgid "When enabled, graphical DVB subtitles will be centered horizontally." +msgstr "Ja iespējots, grafiskie DVB subtitri tiks centrēti horizontāli." + +msgid "When enabled, graphical DVB subtitles will be displayed at their original position." +msgstr "Ja iespējots, grafiskie DVB subtitri tiks parādīti to oriģinālajā pozīcijā." + +msgid "When enabled, graphical DVB subtitles will be displayed in yellow, instead of the original color." +msgstr "Ja iespējots, grafiskie DVB subtitri tiks rādīti dzeltenā krāsā, neatkarīgi no oriģinālās." + +msgid "When enabled, http streams are descrambled on the server side. The (remote) client receiver does not have to do descrambling." +msgstr "Ja iespējots, http plūsmas tiks dekodētas serverī. Attālinātiem klientu uztvērējiem nebūs jādekodē." + +msgid "When enabled, it is possible to leave the movieplayer with exit." +msgstr "Ja iespējots, ir iespējams iziet no filmu atskaņotāja ar exit taustiņu." + +msgid "When enabled, measure power consumption to detect when the rotor stops turning (when supported by the tuner)." +msgstr "Ja iespējots, tiks mērīta patērētā jauda lai noskaidrotu kad pozicionieris apstājies (ja to uztur uztvērējs)." + +msgid "When enabled, number markers will be hiden." +msgstr "Ja iespējots, numuri tiks paslēpti." + +msgid "When enabled, services may be grouped in multiple bouquets." +msgstr "Ja iespējots, kanāli tiks sagrupēti dažādās buķetēs." + +msgid "When enabled, show channel numbers in the channel selection screen." +msgstr "Ja iespējots, kanālu pārslēgšanas logā tiks parādīti kanālu numuri." + +msgid "When enabled, subtitles for the hearing impaired can be used." +msgstr "Ja iespējots, tiks lietoti subtitri cilvēkiem ar dzirdes traucējumiem." + +msgid "When enabled, subtitles for the hearing impaired will be preferred over normal subtitles, when both types are available." +msgstr "Ja iespējots, ja pieejami vairāku tipu subtitri, priekšroka tiks dota subtitriem cilvēkiem ar dzirdes traucējumiem," + +msgid "When enabled, teletext pages will be cached, allowing faster access." +msgstr "Ja iespējots, teleteksta lapas tiks saglabātas kešatmiņā lai būtu ātrāka piekļuve." + +msgid "When enabled, teletext subtitles will be displayed at their original position." +msgstr "Ja iespējots, teleteksta subtirtri tiks attēloti to oriģinālajā pozīcijā." + +msgid "When enabled, the VCR scart option will be shown on the main menu" +msgstr "Ja iespējots, VCR scart tiks rādīts galvenajā izvēlnē" + +msgid "When enabled, the channel selection list will be hidden while listening to a radio channel" +msgstr "Ja iespējots, klausoties radio kanālu pārslēgšanas saraksts netiks rādīts." + +msgid "When enabled, the infobar will be displayed when a new event starts." +msgstr "Ja iespējots, sākoties jaunam notikumam tiks parādīta infojosla." + +msgid "When enabled, the infobar will be displayed when changing channels." +msgstr "Ja iespējots, pārslēdzot kanālus tiks parādīta infojosla." + +msgid "When enabled, the infobar will be displayed when skipping forwards/backwards during media playback." +msgstr "Ja iespējots, pārtinot uz priekšu vai atpakaļ mediju failus tiks parādīta infojosla." + +msgid "When enabled, the lenght of each recording will be shown in the movielist (this might cause some additional loading time)." +msgstr "Ja iespējots, filmu sarakstā tiks parādīts katra ieraksta garums (tas prasa zināmu ielādes laiku)." + +msgid "When enabled, the original line breaks will be removed from the teletext subtitles." +msgstr "Ja iespējots, teletekstu subtitos netiks ņemti vērā oriģinālie rindu dalījumi." + +msgid "When enabled, the receiver will automatically use the audio track which you selected before." +msgstr "Ja iespējots, uztvērējs automātiski lietos audio celiņu, kuru iepriekš norādījāt." + +msgid "When enabled, the receiver will automatically use the subtitles which you selected before." +msgstr "Ja iespējots, uztvērējs automātiski lietos subtitrus, kurus iepriekš norādījāt." + +msgid "When enabled, the receiver will no longer monitor the tuned transponder for possible changes. Do not use this option unless you know what you are doing." +msgstr "Ja iespējots, uztvērējs vairs nesekos iespējamām izmaiņām noskaņotajā transponderā. Neizmantojiet šo iespēju, ja vien jūs zināt, ko jūs darāt." + +msgid "When enabled, the receiver will select an AC3 track (when available)." +msgstr "Ja iespējots, uztvērējs izvēlēsies AC3 celiņu (ja pieejams)." + +msgid "When enabled, the receiver will select an AC3+ track (when available)." +msgstr "" + +msgid "When enabled, timeshift starts automatically in background after specified time." +msgstr "Ja iespējots, pēc norādītā laika laika aizture sāksies fonā automātiski." + +msgid "When enabled, use DHCP for the IP configuration." +msgstr "Ja iespējots, lieto DHCP IP konfigurācijai" + +msgid "When enabled, your receiver will detect activity on the VCR SCART input." +msgstr "Ja iespējots, jūsu uztvērējs noteiks aktivitāti VRC SCART ieejā." + +msgid "When nonzero, a recording will start earlier than the starting time indicated by the EPG." +msgstr "Ja nav nulle, ieraksts sāksies ātrāk, nevis laikā kas parādīts EPG." + +msgid "When nonzero, a recording will stop later than the ending time indicated by the EPG." +msgstr "Ja nav nulle, ieraksts sāksies vēlāk, nevis laikā kas parādīts EPG." + +msgid "When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture." +msgstr "Ja attēla malu attiecība ir 16:9 izvēlieties, kā palielināt/stiept attēlu." + +msgid "When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture." +msgstr "Ja attēla malu attiecība ir 4:3 izvēlieties, kā palielināt/stiept attēlu." + +msgid "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" +msgstr "" +"Atjaunojot rūpnīcas iestatījumus, jūs zaudēsiet VISUS konfigurācijas datus\n" +"(ieskaitot buķetes, kanālus, pavadoņu datus ...)\n" +"Pēc rūpnīcas iestatījumu atjaunošanas, ierīce automātiski pārstartēsies!\n" +"\n" +"Vai tiešām atjaunot rūpnīcas iestatījumus?" + +msgid "Where do you want to backup your settings?" +msgstr "Kur Jūs vēlaties veidot savu iestatījumu dublējumkopiju?" + +msgid "Where to save temporary timeshift recordings?" +msgstr "Kur saglabāt pagaidu laika aiztures ierakstus?" + +msgid "Wireless LAN" +msgstr "Bezvadu tīkls" + +msgid "Wireless network" +msgstr "Bezvadu tīkls" + +msgid "Wireless network configuration..." +msgstr "Bezvadu tīkla konfigurācija..." + +msgid "Wireless network connection setup" +msgstr "Bezvadu tīkla savienojuma iestatījumi" + +msgid "Wireless network connection setup." +msgstr "Bezvadu tīkla savienojuma iestatījumi." + +msgid "Wireless network state" +msgstr "Bezvadu tīkla statuss" + +msgid "With popup" +msgstr "Ar uznirstošo logu" + +msgid "Without popup" +msgstr "Bez uznirstošā loga" + +msgid "Would you like to install a softcam?" +msgstr "Vai vēlaties uzstādīt softcam?" + +msgid "Write error while recording. Disk full?\n" +msgstr "Rakstīšanas kļūda ieraksta laikā. Vai disks ir pilns?\n" + +msgid "Write failed!" +msgstr "Rakstīšana neizdevās!" + +msgid "YPbPr" +msgstr "YPbPr" + +msgid "Year" +msgstr "Gads" + +msgid "Yellow DVB subtitles" +msgstr "Dzelteni DVB subtitri" + +msgid "Yes" +msgstr "Jā" + +msgid "Yes and save" +msgstr "Jā un saglabāt" + +msgid "Yes and save in movie dir" +msgstr "Jā un saglabāt filmu mapē" + +msgid "Yes to all" +msgstr "Jā visiem" + +msgid "Yes, always" +msgstr "Jā vienmēr" + +msgid "Yes, and delete this movie" +msgstr "Jā, un dzēst šo filmu" + +msgid "Yes, backup my settings!" +msgstr "Jā, veidot iestatījumu dublējumkopiju!" + +msgid "Yes, delete this movie and return to movie list" +msgstr "" + +msgid "Yes, do a manual scan now" +msgstr "Jā, veikt manuālo meklēšanu tagad" + +msgid "Yes, do an automatic scan now" +msgstr "Jā, veikt automātisko meklēšanu tagad" + +msgid "Yes, do another manual scan now" +msgstr "Jā, veikt vēl vienu manuālo meklēšanu tagad" + +msgid "Yes, perform a shutdown now." +msgstr "Jā, izslēgt tagad." + +msgid "Yes, restore the settings now" +msgstr "Jā, atjaunot iestatījumus tagad" + +msgid "Yes, returning to movie list" +msgstr "Jā, atgriezties uz filmu sarakstu" + +msgid "Yesterday" +msgstr "Vakar" + +#, python-format +msgid "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" +msgstr "" +"Jūs jau esat iestatījis kanālu sarakstu,\n" +"vai vēlaties to nodzēst\n" +"\"%s\"?" + +msgid "You can cancel the installation." +msgstr "Jūs varat atcelt uzstādīšanu." + +msgid "You can cancel the removal." +msgstr "Jūs varat atcelt nodzēšanu." + +msgid "You can continue watching TV etc. while this is running." +msgstr "Jūs varat turpināt skatīties TV kamēr šis notiek." + +msgid "You can install this plugin." +msgstr "Jūs varat uzstādīt šo spraudni." + +msgid "You can only burn receiver recordings!" +msgstr "Jūs varat ierakstīt tikai uztvērēja ierakstus!" + +msgid "You can remove this plugin." +msgstr "Jūs varat izdzēst šo spraudni." + +msgid "You cannot delete this!" +msgstr "Jūs šo nevarat dzēst!" + +msgid "You didn't select a channel to record from." +msgstr "Jūs nenorādījāt ierakstāmo kanālu." + +msgid "You have chosen to backup your settings. Please press OK to start the backup now." +msgstr "Jūs izvēlējāties veidot iestatījumu dublējumkopiju. Lūdzu spiediet OK, lai sāktu kopijas veidošanu." + +msgid "You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased." +msgstr "Jūs izvēlējāties veidot jaunu .NFI pāršuvēja sāknējamu USB zibatmiņu. Tadēļ USB zibatmiņa tiks pārdalīta un dzēsti visi tajā esošie dati." + +msgid "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." +msgstr "Jūs izvēlējāties atjaunot jūsu iestatījumus. Enigma2 pēc atjaunošanas pārstartēsies. Lūdzu nospiediet OK, lai sāktu atjaunošanu." + +#, python-format +msgid "You have to wait %s!" +msgstr "Jums jāuzgaida %s!" + +msgid "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." +msgstr "" +"Jūsu datoram jābū savienotam ar uztvērēju. Ja jums nepieciešama papildus informācija, lūdzu apmeklējiet http://openpli.org/.\n" +"Jūsu uztvērējs tagad tiks apturēts. Pēc tam, kad ir veiktas atjaunināšanas instrukcijas no mājas lapas, jūsu jaunā programmatūra piedāvās jums atjaunot iestatījumus." + +msgid "You system does not support ext4" +msgstr "Jūsu sistēma neatbalsta ext4" + +msgid "Your backup succeeded. We will now continue to explain the further upgrade process." +msgstr "Dublējumkopija izveidota. Tagad izskaidrosim turpmāko atjaunināšanas procesu. " + +msgid "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" +msgstr "Jūsu kolekcija pārsniedz diska lielumu, jums ir nepieciešams tukšs dubultslāņa DVD!" + +msgid "Your current collection will get lost!" +msgstr "Jūsu pašreizējā kolekcija zudīs!" + +msgid "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." +msgstr "" +"Jūsu fronprocesora programmatūru nepieciešams atjaunināt.\n" +"Spiediet OK, lai sāktu atjaunināšanu." + +msgid "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Jūsu fronprocesors tiks atjaunots\n" +"Lūdzu uzgaidiet kamēr jūsu uztvērējs pārstartēsies\n" +"Tas var prasīt kādu laiku" + +msgid "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." +msgstr "" +"Jūsu interneta savienojums nestrādā!\n" +"Lūdzu izvēlieties ko vēlaties darīt tālāk." + +#, python-format +msgid "Your internet connection is working (ip: %s)" +msgstr "Jūsu interneta savienojums strādā (ip: %s)" + +msgid "Your network configuration has been activated." +msgstr "Tīkla konfigurācija aktivizēta." + +msgid "Your receiver does not have an internet connection" +msgstr "Jūsu uztvērējam nav interneta savienojuma" + +msgid "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" +msgstr "" +"Jūsu uztvērējs ir gatavs lietošanai.\n" +"\n" +"Jūsu interneta savienojums strādā.\n" +"\n" + +msgid "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Jūsu uztvērējs ir gatavs lietošanai.\n" +"\n" +"Jūsu interneta savienojums strādā.\n" +"\n" +"Lūdzu nospiediet OK lai turpinātu." + +msgid "Your receiver is rebooting" +msgstr "Jūsu uztvērējs pārstartējas" + +msgid "Your receiver is shutting down" +msgstr "Jūsu uztvērējs izslēdzas" + +msgid "Your receiver is shutting down. Please stand by..." +msgstr "Jūsu uztvērējs izslēdzas. Lūdzu uzgaidiet..." + +msgid "Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver." +msgstr "Jūsu uztvērējs nav lietojams. Pirms uztvērēja pārstartēšanas, lai saņemtu palīdzību lūdzu izlasiet rokasgrāmatu." + +msgid "Your receiver will got to stand by due to the sleeptimer." +msgstr "Jūsu uztvērējs miega taimera dēļ pāriet gaidstāvē." + +msgid "Your receiver will got to standby due to inactivity." +msgstr "Jūsu uztvērējs pāriet gaidstāvē jo nav aktivitātes." + +msgid "Your receiver will restart after pressing OK on your remote control." +msgstr "Jūsu uztvērējs pārstartēsies pēc tam kad nospiedīsiet OK uz tālvadības pults." + +msgid "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." +msgstr "" +"Jūsu bezvadu LAN interneta pieslēgumu nevar uzsākt!\n" +"Vai esat pievienots USB WLAN adapteri?\n" +"\n" +"Lūdzu izvēlieties, ko jūs vēlaties darīt tālāk." + +msgid "Zap" +msgstr "Pārslēgt" + +msgid "Zap back to previously tuned service?" +msgstr "Atgriezties uz iepriekš uztverto kanālu?" + +msgid "Zap back to service before positioner setup?" +msgstr "Atgriezties uz kanālu pirms pozicioniera iestatīšanas?" + +msgid "Zap back to service before tuner setup?" +msgstr "Atgriezties uz kanālu pirms uztvērēja iestatīšanas?" + +msgid "Zap focus to Picture in Picture" +msgstr "Pārslēgties uz Attēlu Attēlā" + +msgid "Zap focus to main screen" +msgstr "Pārslēgties uz pamata ekrānu" + +msgid "Zap mode" +msgstr "Pārslēgšanās režīms" + +msgid "Zap to selected channel" +msgstr "Pārslēgties uz izvēlēto kanālu" + +msgid "Zap to selected channel, or show detailed event info (depends on configuration)" +msgstr "Pārslēgties uz izvēlēto kanālu, vai parādīt detalizētu notikuma informāciju (atkarībā no uzstādījumiem)" + +msgid "[alternative edit]" +msgstr "[alternatīvu rediģēšana]" + +msgid "[bouquet edit]" +msgstr "[buķešu rediģēšana]" + +msgid "[favourite edit]" +msgstr "[favorītu rediģēšana]" + +msgid "[move mode]" +msgstr "[pārvietošanas režīms]" + +msgid "a gui to assign services/providers to common interface modules" +msgstr "gui ko piešķirt kanāliem/operatoriem common interfeisa moduļos" + +msgid "a gui to assign services/providers/caids to common interface modules" +msgstr "gui ko piešķirt kanāliem/operatoriem/caidiem common interfeisa moduļos" + +msgid "abort alternatives edit" +msgstr "pārtraukt alternatīvu rediģēšanu" + +msgid "abort bouquet edit" +msgstr "pārtraukt buķešu rediģēšanu" + +msgid "abort favourites edit" +msgstr "pārtraukt favorītu rediģēšanu" + +msgid "about to start" +msgstr "gatavojas sākt" + +msgid "activate network adapter configuration" +msgstr "aktivizēt tīkla adaptera konfigurāciju" + +msgid "add alternatives" +msgstr "pievienot alternatīvas" + +msgid "add bookmark" +msgstr "pievienot grāmatzīmi" + +msgid "add bouquet" +msgstr "pievienot buķeti" + +msgid "add marker" +msgstr "pievienot marķieri" + +msgid "add service to bouquet" +msgstr "pievienot kanālu buķetei" + +msgid "add service to favourites" +msgstr "pievienot kanālu favorītiem" + +msgid "add to parental protection" +msgstr "pievienot vecāku kontrolei" + +msgid "adult movie/drama" +msgstr "pieaugušo filma/drāma" + +msgid "advanced" +msgstr "paplašināts" + +msgid "adventure/western/war" +msgstr "piedzīvojumi/vesterns/kara" + +msgid "advertisement/shopping" +msgstr "reklāma/iepirkšanās" + +msgid "after " +msgstr "pēc" + +msgid "alphabetic" +msgstr "pēc alfabēta" + +msgid "alphabetic reverse" +msgstr "alfabētiski reversā" + +msgid "alternative" +msgstr "alternatīvi" + +msgid "always" +msgstr "" + +msgid "and select next channel" +msgstr "" + +msgid "and select previous channel" +msgstr "" + +msgid "arts/culture (without music, general)" +msgstr "māksla/kultūra (bez mūzikas, kopējā)" + +msgid "arts/culture magazine" +msgstr "māksla/kultūra žurnāli" + +msgid "athletics" +msgstr "atlētika" + +msgid "audio tracks" +msgstr "skaņas celiņi" + +msgid "auto" +msgstr "auto" + +msgid "automatic" +msgstr "automātiski" + +msgid "back" +msgstr "atpakaļ" + +msgid "background image" +msgstr "fona attēls" + +msgid "ballet" +msgstr "balets" + +#, python-format +msgid "bc%s" +msgstr "bc%s" + +msgid "better" +msgstr "labāks" + +msgid "black" +msgstr "melns" + +msgid "black & white" +msgstr "melns un balts" + +msgid "blacklist" +msgstr "melnais saraksts" + +msgid "blue" +msgstr "zilā" + +msgid "broadcasting/press" +msgstr "apraide/prese" + +msgid "by date" +msgstr "pēc datuma" + +msgid "cartoon/puppets" +msgstr "multfilmas/leļļu" + +msgid "center" +msgstr "centrs" + +msgid "centered" +msgstr "centrēti" + +msgid "centered, wrapped" +msgstr "centrēti, saspiesti" + +msgid "chapters" +msgstr "nodaļas" + +msgid "childrens's/youth program (general)" +msgstr "bērnu/jauniešu programmas (vispārīgi)" + +msgid "circular left" +msgstr "cirkulārā kreisā" + +msgid "circular right" +msgstr "cirkulārā labā" + +msgid "comedy" +msgstr "komēdija" + +msgid "complex" +msgstr "komplicēts" + +msgid "config menu" +msgstr "konfigurācijas izvēlne" + +msgid "confirmed" +msgstr "apstiprināts" + +msgid "connected" +msgstr "savienots" + +msgid "continue" +msgstr "turpināt" + +msgid "cooking" +msgstr "cepšana" + +msgid "copy to bouquets" +msgstr "kopēt uz buķetēm" + +msgid "create directory" +msgstr "izveidot mapi" + +#, python-format +msgid "currently installed image: %s" +msgstr "pašreiz uzstādīts imidžs: %s" + +msgid "daily" +msgstr "ik dienu" + +msgid "day" +msgstr "diena" + +msgid "default" +msgstr "noklusējuma" + +msgid "delete cut" +msgstr "dzēst griezumu" + +msgid "delete..." +msgstr "dzēš..." + +msgid "descramble and record ecm" +msgstr "dekodēt un ierakstīt ecm" + +msgid "detective/thriller" +msgstr "detektīvs/trilleris" + +msgid "disable" +msgstr "izslēgt" + +msgid "disable move mode" +msgstr "izslēgt pārvietošanas režīmu" + +msgid "disabled" +msgstr "izslēgts" + +msgid "disconnected" +msgstr "atvienots" + +msgid "discussion/interview/debate" +msgstr "diskusijas/intervbijas/debates" + +msgid "do nothing" +msgstr "neko nedarīt" + +msgid "documentary" +msgstr "dokumentālais" + +msgid "don't descramble, record ecm" +msgstr "nedekodēt, ierakstīt ecm" + +msgid "done!" +msgstr "gatavs!" + +msgid "east" +msgstr "austrumi" + +msgid "economics/social advisory" +msgstr "ekonomika/sociālā konsultatīvā" + +msgid "edit alternatives" +msgstr "rediģēt alternatīvas" + +msgid "education/science/factual topics (general)" +msgstr "izglītība/zinātne/faktiskās tēmas (vispārīgi)" + +msgid "empty" +msgstr "tukšs" + +msgid "enable" +msgstr "aktivizēt" + +msgid "enable bouquet edit" +msgstr "aktivizēt buķešu rediģēšanu" + +msgid "enable favourite edit" +msgstr "aktivizēt favorītu rediģēšanu" + +msgid "enable move mode" +msgstr "aktivizēt pārvietošanas režīmu" + +msgid "enabled" +msgstr "aktivizēts" + +msgid "end alternatives edit" +msgstr "beigt alternatīvu rediģēšanu" + +msgid "end bouquet edit" +msgstr "beigt buķešu rediģēšanu" + +msgid "end cut here" +msgstr "beigt griešanu šeit" + +msgid "end favourites edit" +msgstr "beigt favorītu rediģēšanu" + +msgid "entertainment (10-16 year old)" +msgstr "izklaide (10-16 gadu veciem)" + +msgid "entertainment (6-14 year old)" +msgstr "izklaide (6-14 gadu veciem)" + +msgid "equal to" +msgstr "vienāds ar" + +msgid "equestrian" +msgstr "jātnieka" + +msgid "exit DVD player or return to file browser" +msgstr "iziet no DVD atskaņotāja un atgriezties failu pārlūkā" + +msgid "exit movielist" +msgstr "iziet no filmu saraksta" + +msgid "exit network adapter configuration" +msgstr "iziet no tīkla adaptera konfigurācijas" + +msgid "exit networkadapter setup menu" +msgstr "iziet no tīkla adaptera iestatīšanas izvēlnes" + +msgid "experimental film/video" +msgstr "eksperimentālās filmas/video" + +msgid "false" +msgstr "nepatiess" + +msgid "fashion" +msgstr "mode" + +msgid "fileformats (BMP, PNG, JPG, GIF)" +msgstr "failu formāti (BMP, PNG, JPG, GIF)" + +msgid "filename" +msgstr "faila nosaukums" + +msgid "film/cinema" +msgstr "filmas/kino" + +msgid "fine arts" +msgstr "tēlotājmāksla" + +msgid "fine-tune your display" +msgstr "displeja precīzā pieregulēšana" + +msgid "fitness & health" +msgstr "fitness un veselība" + +msgid "flat alphabetic" +msgstr "sakārtot pēc alfabēta" + +msgid "flat alphabetic reverse" +msgstr "sakārtot pēc alfabēta reversi" + +msgid "folk/traditional music" +msgstr "folks/tautas mūzika" + +msgid "football/soccer" +msgstr "futbols" + +msgid "foreign countries/expeditions" +msgstr "ārvalstis/ekspedīcijas" + +msgid "forward to the next chapter" +msgstr "pāradresēt uz nākamo nodaļu" + +msgid "free" +msgstr "brīvs" + +msgid "from" +msgstr "" + +msgid "further education" +msgstr "tālākizglītība" + +msgid "game show/quiz/contest" +msgstr "spēļu šovi/viktorīna/konkurss" + +msgid "gardening" +msgstr "dārzkopība" + +msgid "go to deep standby" +msgstr "iet uz dziļo gaidstāvi" + +msgid "go to standby" +msgstr "iet uz gaidstāvi" + +msgid "grab this frame as bitmap" +msgstr "tvert kadru bitmap formātā" + +msgid "green" +msgstr "zaļā" + +msgid "handicraft" +msgstr "rokdarbi" + +msgid "height" +msgstr "augstums" + +msgid "help..." +msgstr "palīdzība..." + +msgid "horizontal" +msgstr "horizontālā" + +msgid "information/education/school program" +msgstr "informācija/izglītība/skolas programma" + +msgid "init module" +msgstr "inicializēt moduli" + +msgid "init modules" +msgstr "inicializēt moduļus" + +msgid "insert mark here" +msgstr "ievietot iezīmi" + +msgid "invalid type" +msgstr "nepareizs tips" + +msgid "jazz" +msgstr "džezs" + +msgid "jump back to the previous title" +msgstr "pārlēkt uz iepriekšējo nosaukumu" + +msgid "jump forward to the next title" +msgstr "pārlēkt uz nākamo nosaukumu" + +msgid "languages" +msgstr "valodas" + +msgid "leave movie player..." +msgstr "iziet no filmu atskaņotāja..." + +msgid "left" +msgstr "kreisā" + +msgid "left, wrapped" +msgstr "pa kreisi, saspiesti" + +msgid "leisure hobbies (general)" +msgstr "atpūtas hobiji (vispārīgi)" + +msgid "length" +msgstr "garums" + +msgid "limit ..., aborting !" +msgstr "limits ..., pārtrauc !" + +msgid "list style compact" +msgstr "kompakts saraksta stils" + +msgid "list style compact with description" +msgstr "kompakts saraksta stils ar aprakstu" + +msgid "list style default" +msgstr "noklusētais saraksta stils" + +msgid "list style single line" +msgstr "vienlīnijas saraksta stils" + +msgid "literature" +msgstr "literatūra" + +msgid "live broadcast" +msgstr "dzīvais raidījums" + +msgid "locked" +msgstr "noenkurojies" + +msgid "loopthrough to" +msgstr "loopthrough to" + +msgid "magazines/reports/documentary" +msgstr "avīzes/atskaites/dokumentālais" + +msgid "manual" +msgstr "manuāls" + +msgid "martial sports" +msgstr "cīņas sports" + +msgid "medicine/physiology/psychology" +msgstr "medicīna/fizioloģija/psiholoģija" + +msgid "menu" +msgstr "izvēlne" + +msgid "mins" +msgstr "min." + +msgid "minutes" +msgstr "minūtēm" + +msgid "month" +msgstr "mēnesis" + +msgid "motor sport" +msgstr "motosports" + +msgid "motoring" +msgstr "autosports" + +msgid "move down to last entry" +msgstr "pārvietot lejup uz pēdējo ierakstu" + +msgid "move down to next entry" +msgstr "pārvietot lejup uz nākamo ierakstu" + +msgid "move up to first entry" +msgstr "pārvietot augšup uz pirmo ierakstu" + +msgid "move up to previous entry" +msgstr "pārvietot augšup uz iepriekšējo ierakstu" + +msgid "movie/drama (general)" +msgstr "filmas/drāma (vispārīgi)" + +msgid "multinorm" +msgstr "multinorma" + +msgid "music/ballet/dance (general)" +msgstr "mūzika/balets/dejas (vispārīgi)" + +msgid "musical/opera" +msgstr "mūzika/opera" + +msgid "nature/animals/environment" +msgstr "daba/dzīvnieki/vide" + +msgid "never" +msgstr "nekad" + +msgid "new media" +msgstr "jauni mēdiji" + +msgid "news magazine" +msgstr "ziņas žurnāli" + +msgid "news/current affairs (general)" +msgstr "jaunumi/aktualitātes (vispārīgi)" + +msgid "news/weather report" +msgstr "jaunumi/laika ziņas" + +msgid "no" +msgstr "nē" + +msgid "no CAId selected" +msgstr "nav izvēlēts CAId" + +msgid "no CI slots found" +msgstr "nav atrasti CI sloti" + +msgid "no module found" +msgstr "modulis nav atrasts" + +msgid "no storage devices found" +msgstr "atmiņas ierīce nav atrasta" + +msgid "none" +msgstr "nav" + +msgid "normal" +msgstr "normāli" + +msgid "not configured" +msgstr "nav uzstādīts" + +msgid "not locked" +msgstr "nav noenkurojies" + +msgid "not supported" +msgstr "nav atbalstīts" + +msgid "not used" +msgstr "neizmantots" + +msgid "nothing connected" +msgstr "nekas nav pievienots" + +msgid "of a DUAL layer medium used." +msgstr "no lietotā DIVSLĀŅU datu nesēja." + +msgid "of a SINGLE layer medium used." +msgstr "no lietotā VIENSLĀŅA datu nesēja." + +msgid "off" +msgstr "izslēgts" + +msgid "offset is" +msgstr "kompensē" + +msgid "on" +msgstr "ieslēgts" + +msgid "on READ ONLY medium." +msgstr "uz TIKAI LASĀMA datu nesēja." + +msgid "on end of movie" +msgstr "uz filmas beigām" + +msgid "once" +msgstr "vienreiz" + +msgid "only from deep standby" +msgstr "" + +msgid "only from standby" +msgstr "" + +msgid "open EPG..." +msgstr "" + +msgid "open Info..." +msgstr "" + +msgid "open nameserver configuration" +msgstr "atvērt DNS konfigurāciju" + +msgid "original" +msgstr "oriģināls" + +msgid "original language" +msgstr "oriģinālā valoda" + +msgid "pass" +msgstr "šobrīd" + +msgid "performing arts" +msgstr "skatuves māksla" + +msgid "play as picture in picture" +msgstr "atskaņot kā attēlu attēlā" + +msgid "play in mainwindow" +msgstr "atskaņot pamatlogā" + +msgid "please press OK when ready" +msgstr "kad gatavs, lūdzu spiediet OK" + +msgid "please wait, loading picture..." +msgstr "lūdzu uzgaidiet, ielādē attēlu..." + +msgid "popular culture/traditional arts" +msgstr "tautas kultūra/tradicionālā māksla" + +msgid "pre-school children's program" +msgstr "pirmskolas bērnu programma" + +msgid "receiver software because updates are available." +msgstr "uztvērēja programmatūru jo atjaunojumi pieejami." + +msgid "record" +msgstr "ierakstīt" + +msgid "recording..." +msgstr "ieraksta..." + +msgid "red" +msgstr "sarkanā" + +msgid "religion" +msgstr "reliģija" + +msgid "remarkable people" +msgstr "ievērojami cilvēki" + +msgid "remove after this position" +msgstr "dzēst pēc šīs pozīcijas" + +msgid "remove all alternatives" +msgstr "dzēst visas alternatīvas" + +msgid "remove all new found flags" +msgstr "dzēst visus 'jaunatrasts' marķējumus" + +msgid "remove before this position" +msgstr "dzēst pirms šīs pozīcijas" + +msgid "remove bookmark" +msgstr "dzēst grāmatzīmi" + +msgid "remove directory" +msgstr "dzēst mapi" + +msgid "remove entry" +msgstr "dzēst ierakstu" + +msgid "remove from parental protection" +msgstr "dzēst no vecāku kontroles" + +msgid "remove new found flag" +msgstr "dzēst 'jaunatrasts' marķējumu" + +msgid "remove selected satellite" +msgstr "dzēst izvēlēto pavadoni" + +msgid "remove this mark" +msgstr "dzēst iezīmi" + +msgid "rename entry" +msgstr "pārsaukt ierakstu" + +msgid "repeat playlist" +msgstr "atkārtot repertuāru" + +msgid "repeated" +msgstr "atkārtots" + +msgid "reverse by date" +msgstr "otrādi pēc datuma" + +msgid "rewind to the previous chapter" +msgstr "atgriezties uz iepriekšējo nodaļu" + +msgid "right" +msgstr "labā" + +msgid "right, wrapped" +msgstr "pa labi, saspiesti" + +msgid "rock/pop" +msgstr "roks/pops" + +msgid "romance" +msgstr "romance" + +msgid "save last directory on exit" +msgstr "izejot, saglabāt pēdējo mapi" + +msgid "save playlist on exit" +msgstr "izejot, saglabāt repertuāru" + +msgid "scan state" +msgstr "meklēšanas statuss" + +msgid "science fiction/fantasy/horror" +msgstr "zinātniskā fantastika/fantāzijas/šausmu" + +msgid "second cable of motorized LNB" +msgstr "otrs motorizētās LNB kabelis" + +msgid "seconds" +msgstr "sekundes" + +msgid "select" +msgstr "izvēlēties" + +msgid "select CAId's" +msgstr "izvēlieties CAIdus" + +msgid "select EPG..." +msgstr "" + +msgid "select Info..." +msgstr "" + +msgid "select menu entry" +msgstr "norādīt izvēlnes ierakstu" + +msgid "select movie" +msgstr "izvēlēties filmu" + +msgid "select the movie path" +msgstr "izvēlēties ceļu uz filmām" + +msgid "serious music/classic music" +msgstr "nopietnā mūzika/klasiskā mūzika" + +msgid "serious/classical/religious/historical movie/drama" +msgstr "nopietnā/klasiskā/reliģiskā/vēsturiskā filma/drāma" + +msgid "service PIN" +msgstr "kanāla PIN" + +msgid "set as startup service" +msgstr "uzstādīt kā starta kanālu" + +msgid "setup PIN" +msgstr "iestatījumu PIN" + +msgid "show DVD main menu" +msgstr "rādīt DVD galveno izvēlni" + +msgid "show all tags" +msgstr "rādīt visas etiķetes" + +msgid "show alternatives" +msgstr "rādīt alternatīvas" + +msgid "show event details" +msgstr "rādīt notikuma detaļas" + +msgid "show extended description" +msgstr "rādīt paplašināto aprakstu" + +msgid "show mediaplayer on mainmenu" +msgstr "parādīt mediju atskaņotāju pamata izvēlnē" + +msgid "show softwaremanager in setup menu" +msgstr "parādīt programmatūras pārvaldnieku iestatījumu izvēlnē" + +msgid "show softwaremanager on blue button" +msgstr "parādīt programmatūras pārvaldnieku ar zilo pogu" + +msgid "show tag menu" +msgstr "rdīt etiķetes izvēlni" + +msgid "show transponder info" +msgstr "rādīt transpondera informāciju" + +msgid "show/game show (general)" +msgstr "šovi/spēļu šovi (vispārīgi)" + +msgid "shuffle" +msgstr "jaukts" + +msgid "shut down" +msgstr "izslēgt" + +msgid "simple" +msgstr "vienkāršs" + +msgid "skip backward" +msgstr "pārlēkt atpakaļ" + +msgid "skip forward" +msgstr "pārlēkt uz priekšu" + +msgid "soap/melodram/folkloric" +msgstr "ziepju opera/melodrāma/folklora" + +msgid "social/political issues/economics (general)" +msgstr "sociālie/politiskie jautājumi/ekonomika (vispārīgi)" + +msgid "social/spiritual science" +msgstr "sociālie/garīgā zinātne" + +msgid "sorting of playlists" +msgstr "kārtot atskaņošanas sarakstu" + +msgid "special characters" +msgstr "speciālās rakstzīmes" + +msgid "special events" +msgstr "speciālie notikumi" + +msgid "special format data DVD (HDTV compatible)" +msgstr "īpaša formāta datu DVD (HDTV)" + +msgid "sports (general)" +msgstr "sprts (vispārīgi)" + +msgid "sports magazine" +msgstr "sporta žurnāls" + +msgid "standard" +msgstr "standarta" + +msgid "start cut here" +msgstr "sākt griešanu šeit" + +msgid "start directory" +msgstr "sākuma mape" + +msgid "stepsize" +msgstr "soļa lielums" + +msgid "stereo" +msgstr "stereo" + +msgid "stop using as startup service" +msgstr "pārtraukt lietot kā ieslēgšanas kanālu" + +msgid "switch to bookmarks" +msgstr "iet uz grāmatzīmēm" + +msgid "switch to filelist" +msgstr "pāriet uz failu sarakstu" + +msgid "switch to the next angle" +msgstr "pārslēgt uz nākamo leņķi" + +msgid "switch to the next audio track" +msgstr "pārslēgt uz nākošo skaņas celiņu" + +msgid "switch to the next subtitle language" +msgstr "pārslēgt uz nākamo subtitru valodu" + +msgid "talk show" +msgstr "runu šovi" + +msgid "team sports" +msgstr "komandu sports" + +msgid "technology/natural science" +msgstr "tehnoloģijas/dabaszinātna" + +msgid "template file" +msgstr "šablona fails" + +msgid "tennis/squash" +msgstr "teniss/skvošs" + +msgid "this recording" +msgstr "šim ierakstam" + +msgid "this service is protected by a parental control pin" +msgstr "šis kanāls ir aizsargāts ar vecāku kontroles PIN kodu" + +msgid "toggle time, chapter, audio, subtitle info" +msgstr "Ie/izslēgt laiku, nodaļu, skaņu, subtitru informāciju" + +msgid "top" +msgstr "augša" + +msgid "tourism/travel" +msgstr "tūrisma/ceļošana" + +msgid "true" +msgstr "patiesība" + +msgid "unavailable" +msgstr "nepieejams" + +msgid "unconfirmed" +msgstr "neapstiprināts" + +msgid "undefined" +msgstr "nedefināts" + +msgid "unknown" +msgstr "nezināms" + +msgid "unknown service" +msgstr "nezināms kanāls" + +msgid "unpublished" +msgstr "nepublicēts" + +msgid "until standby/restart" +msgstr "līdz gaidstāvei/pārstartēšanai" + +msgid "user defined" +msgstr "lietotāja definēts" + +msgid "variety show" +msgstr "varietē šovi" + +msgid "vertical" +msgstr "vertikālā" + +msgid "wait for ci..." +msgstr "gaidiet atbildi no CI..." + +msgid "wait for mmi..." +msgstr "gaidiet atbildi no mmi..." + +msgid "waiting" +msgstr "gaida" + +msgid "water sport" +msgstr "ūdens sports" + +msgid "weekly" +msgstr "ik nedēļu" + +msgid "west" +msgstr "rietumi" + +msgid "when PiPzap enabled zap channel down..." +msgstr "" + +msgid "when PiPzap enabled zap channel up..." +msgstr "" + +msgid "white" +msgstr "balts" + +msgid "whitelist" +msgstr "baltais saraksts" + +msgid "width" +msgstr "platums" + +msgid "winter sport" +msgstr "ziemas sports" + +msgid "wireless network interface" +msgstr "bezvadu tīkla interfeiss" + +#, python-format +msgid "with %d error" +msgid_plural "with %d errors" +msgstr[0] "ar %d kļūdu" +msgstr[1] "ar %d kļūdām" +msgstr[2] "ar %d kļūdām" + +msgid "working" +msgstr "darbojas" + +msgid "yellow" +msgstr "dzeltenā" + +msgid "yes" +msgstr "jā" + +msgid "yes (keep feeds)" +msgstr "jā (paturēt barotnes)" + +msgid "zap" +msgstr "pārslēgt" + +msgid "zap and record" +msgstr "pārslēgt un ierakstīt" + +msgid "zapped" +msgstr "pārslēgts" + +#~ msgid "AA" +#~ msgstr "AA" + +#~ msgid "AB" +#~ msgstr "AB" + +#~ msgid "Activate PiP" +#~ msgstr "Aktivizēt PiP" + +#~ msgid "Add/remove timer for current event" +#~ msgstr "Pievienot/noņemt taimeri pašreizējam notikumam" + +#~ msgid "Adjust HDMI CEC settings" +#~ msgstr "Pielāgot HDMI CEC iestatījumus" + +#~ msgid "All satellites" +#~ msgstr "Visi pavadoņi" + +#~ msgid "And will shutdown your receiver over " +#~ msgstr "Un izslēgt uztvērēju pēc " + +#~ msgid "BA" +#~ msgstr "BA" + +#~ msgid "BB" +#~ msgstr "BB" + +#~ msgid "Behavior of 'pause' when paused" +#~ msgstr "Pauzē nospiežot taustiņu 'pauze'" + +#~ msgid "Committed DiSEqC command" +#~ msgstr "Aktīvā DiSEqC komanda" + +#~ msgid "Configure the behavior of the 'pause' key when movie playback is already paused." +#~ msgstr "Uzstāda pauzes taustiņa darbību, kad filmas atskaņošana ir nopauzēta." + +#~ msgid "Configure the duration in hours and action, which could be shut down or standby, when the receiver is not controlled." +#~ msgstr "Uzstāda laiku stundās un darbību- vai būs izslēgšana vai gaidstāve, ja uztvērēju nekontrolē." + +#~ msgid "Configure the duration in minutes and action, which could be shut down or standby, for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +#~ msgstr "Uzstāda laiku minūtēs un darbību miega taimerim- vai būs izslēgšana vai gaidstāve. Izvēlieties šo ierakstu un nospiediet OK vai zaļo lai palaistu/apstādinātu miega taimeri" + +#~ msgid "Currently the commit log cannot be retreived - please try later again" +#~ msgstr "Pašreiz kommitu logs nav pieejams - lūdzu mēginiet vēlāk" + +#~ msgid "DiSEqC repeats" +#~ msgstr "DiSEqC atkārtojums" + +#~ msgid "Goto specific data/time" +#~ msgstr "Iet uz noteiktu datumu/laiku" + +#~ msgid "Memory positions" +#~ msgstr "Atmiņas pozīcijas" + +#~ msgid "Open service list and select next channel" +#~ msgstr "Atvērt kanālu sarakstu un izvēlēties nākamo kanālu" + +#~ msgid "Open service list and select previous channel" +#~ msgstr "Atvērt kanālu sarakstu un izvēlēties iepriekšējo kanālu" + +#~ msgid "Press '0' to toggle internal/external PiP." +#~ msgstr "Spiediet '0', lai pārslēgtu iekšējo/ārējo PiP." + +#~ msgid "Remove timer" +#~ msgstr "Dzēst taimeri" + +#~ msgid "Send DiSEqC" +#~ msgstr "Sūtīt DiSEqC" + +#~ msgid "Shutdown after current event" +#~ msgstr "Izslēgt pēc pašreizējā notikuma" + +#~ msgid "Shutdown in " +#~ msgstr "Izslēgt " + +#~ msgid "Switch next channel" +#~ msgstr "Pārslēgt uz nākamo kanālu" + +#~ msgid "Tuning step size" +#~ msgstr "Noskaņošanas soļa izmērs" + +#~ msgid "Uncommitted DiSEqC command" +#~ msgstr "Pasīvā DiSEqC komanda" + +#~ msgid "Your receiver will shutdown due to inactivity." +#~ msgstr "Jūsu uztvērējs izslēgsies jo nav aktivitātes." + +#~ msgid "Your receiver will shutdown due to the sleeptimer." +#~ msgstr "Jūsu uztvērējs izslēdzas dēļ miega taimera." + +#~ msgid "tuner is not supported" +#~ msgstr "uztvērējs netiek atbalstīts" diff --git a/po/nl.po b/po/nl.po new file mode 100644 index 0000000..0fb1213 --- /dev/null +++ b/po/nl.po @@ -0,0 +1,8992 @@ +msgid "" +msgstr "" +"Project-Id-Version: enigma\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-07-21 19:08+0200\n" +"PO-Revision-Date: \n" +"Last-Translator: Tech <tech@openpli.org>\n" +"Language-Team: PLiteam <translators@openpli.org>\n" +"Language: nl\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Poedit 1.6.7\n" + +msgid "" +"\n" +"Advanced options and settings." +msgstr "" +"\n" +"Geavanceerde opties en instellingen." + +msgid "" +"\n" +"After pressing OK, please wait!" +msgstr "" +"\n" +"Na indrukken van OK, een moment geduld aub!" + +msgid "" +"\n" +"Backup your receiver settings." +msgstr "" +"\n" +"Backup de ontvangerinstellingen." + +msgid "" +"\n" +"Edit the upgrade source address." +msgstr "" +"\n" +"Wijzig het bronadres voor de upgrade." + +msgid "" +"\n" +"Manage extensions or plugins for your receiver" +msgstr "" +"\n" +"Beheer applicaties of plugins voor uw ontvanger" + +msgid "" +"\n" +"Online update of your receiver software." +msgstr "" +"\n" +"Online update van de ontvangersoftware." + +msgid "" +"\n" +"Press OK on your remote control to continue." +msgstr "" +"\n" +"Druk op de OK toets om door te gaan." + +msgid "" +"\n" +"Restore your backups by date." +msgstr "" +"\n" +"Zet een backup van een bepaalde datum terug." + +msgid "" +"\n" +"Restore your receiver settings." +msgstr "" +"\n" +"Herstel de ontvangerinstellingen" + +msgid "" +"\n" +"Restore your receiver with a new firmware." +msgstr "" +"\n" +"Herstel de ontvanger met nieuwe firmware." + +msgid "" +"\n" +"Scan for local extensions and install them." +msgstr "" +"\n" +"Zoek naar locale applicaties en installeer deze." + +msgid "" +"\n" +"Select your backup device.\n" +"Current device: " +msgstr "" +"\n" +"Kies een apparaat voor de backup.\n" +"Huidig apparaat: " + +msgid "" +"\n" +"View, install and remove available or installed packages." +msgstr "" +"\n" +"Bekijk, installeer en verwijder beschikbare of geïnstalleerde pakketten." + +msgid " (PiP)" +msgstr "(PiP)" + +msgid " (Radio)" +msgstr "(Radio)" + +msgid " (TV)" +msgstr "(TV)" + +msgid " (disabled)" +msgstr "(uitgeschakeld)" + +msgid " (higher than any auto)" +msgstr " (hoger dan elke 'auto')" + +msgid " (higher than rotor any auto)" +msgstr "(hoger dan de rotor van elke 'auto')" + +msgid " (lower than any auto)" +msgstr "(lager dan elke auto)" + +msgid " extensions." +msgstr " applicaties." + +msgid " ms" +msgstr "ms" + +msgid " packages selected." +msgstr "geselecteerde pakketten." + +msgid " updates available." +msgstr "updates beschikbaar." + +#. TRANSLATORS: short time representation hour:minute +#, python-format +msgid "%2d:%02d" +msgstr "%2d:%02d" + +#. TRANSLATORS: full time representation hour:minute:seconds +#, python-format +msgid "%2d:%02d:%02d" +msgstr "%2d:%02d:%02d" + +msgid "%A %d %B" +msgstr "%A %d %B" + +#. TRANSLATORS: long date representations dayname daynum monthname in strftime() format! See 'man strftime' +msgid "%A %e %B" +msgstr "%A %e %B" + +#. TRANSLATORS: full date representation dayname daynum monthname year in strftime() format! See 'man strftime' +msgid "%A %e %B %Y" +msgstr "%A %e %B %Y" + +msgid "%H:%M" +msgstr "%H:%M" + +#. TRANSLATORS: short date representation short dayname daynum short monthname in strftime() format! See 'man strftime' +msgid "%a %e/%m" +msgstr "%a %e/%m" + +#. TRANSLATORS: long date representation short dayname daynum short monthname hour:minute in strftime() format! See 'man strftime' +msgid "%a %e/%m %-H:%M" +msgstr "%a %e/%m %-H:%M" + +#. TRANSLATORS: Intermediate scanning result, '%d' channel(s) have been found so far +#, python-format +msgid "%d channel found" +msgid_plural "%d channels found" +msgstr[0] "%d kanaal gevonden" +msgstr[1] "%d kanalen gevonden" + +#, python-format +msgid "%d file" +msgid_plural "%d files" +msgstr[0] "%d bestand" +msgstr[1] "%d bestanden" + +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d uur" +msgstr[1] "%d uren" + +#, python-format +msgid "%d job is running in the background!" +msgid_plural "%d jobs are running in the background!" +msgstr[0] "%d opdracht draait op de achtergrond." +msgstr[1] "%d opdrachten draaien op de achtergrond." + +#, python-format +msgid "%d min" +msgstr "%d min" + +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d minuut" +msgstr[1] "%d minuten" + +#, python-format +msgid "%d minutes" +msgstr "%d minuten" + +#, python-format +msgid "%d pixel wide" +msgid_plural "%d pixels wide" +msgstr[0] "%d pixelbreedte" +msgstr[1] "%d pixels breed" + +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "%d seconde" +msgstr[1] "%d seconden" + +#, python-format +msgid "%d subdirectory" +msgid_plural "%d subdirectories" +msgstr[0] "%d subdirectory" +msgstr[1] "%d subdirectories" + +#, python-format +msgid "%d wireless network found!" +msgid_plural "%d wireless networks found!" +msgstr[0] "%d draadloos netwerk gevonden!" +msgstr[1] "%d draadloze netwerken gevonden!" + +msgid "%d-%b-%Y %-H:%M" +msgstr "%d-%b/%Y %-H:%M" + +msgid "%d-%m" +msgstr "%d-%m" + +msgid "%d.%B %Y" +msgstr "%d-%m-%Y" + +#. TRANSLATORS: VFD hour:minute daynum short monthname in strftime() format! See 'man strftime' +msgid "%k:%M %e/%m" +msgstr "%k:%M %e/%m" + +#, python-format +msgid "%s %s free disk space" +msgstr "%s %s beschikbare schijfruimte" + +#, python-format +msgid "%s (%s)\n" +msgstr "%s (%s)\n" + +#. TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. +#, python-format +msgid "%s is no longer used. Should it be deleted?" +msgstr "%s wordt niet langer gebruikt. Kan deze verwijderd worden?" + +#, python-format +msgid "%s updated package available" +msgid_plural "%s updated packages available" +msgstr[0] "%s nieuw pakket beschikbaar" +msgstr[1] "%s nieuwe pakketten beschikbaar" + +#, python-format +msgid "%s%d min" +msgstr "%s%d min" + +#, python-format +msgid "%s/%s: %s" +msgstr "%s/%s: %s" + +msgid "(ZAP)" +msgstr "(ZAP)" + +msgid "(empty)" +msgstr "(leeg)" + +msgid "(show optional DVD audio menu)" +msgstr "(optioneel DVD audio menu weergeven)" + +msgid "* Only available if more than one interface is active." +msgstr "* Alleen beschikbaar indien meer dan één interface is geactiveerd." + +msgid "/s" +msgstr "/s" + +msgid "0" +msgstr "0" + +msgid "1" +msgstr "1" + +msgid "1.0" +msgstr "1.0" + +msgid "1.1" +msgstr "1.1" + +msgid "1.2" +msgstr "1.2" + +msgid "12V output" +msgstr "12V uitgang" + +msgid "13 V" +msgstr "13V" + +msgid "16:10" +msgstr "16:10" + +msgid "16:10 Letterbox" +msgstr "16:10 Letterbox" + +msgid "16:10 PanScan" +msgstr "16:10 PanScan" + +msgid "16:9" +msgstr "16:9" + +msgid "16:9 Letterbox" +msgstr "16:9 Letterbox" + +msgid "16:9 always" +msgstr "Altijd 16:9" + +msgid "18 V" +msgstr "18V" + +msgid "2" +msgstr "2" + +msgid "23.976" +msgstr "23.976" + +msgid "24" +msgstr "24" + +msgid "25" +msgstr "25" + +msgid "29.97" +msgstr "29.97" + +msgid "3" +msgstr "3" + +msgid "30" +msgstr "30" + +msgid "3d mode" +msgstr "3d mode" + +msgid "4" +msgstr "4" + +msgid "4:3" +msgstr "4:3" + +msgid "4:3 Letterbox" +msgstr "4:3 Letterbox" + +msgid "4:3 PanScan" +msgstr "4:3 PanScan" + +msgid "5" +msgstr "5" + +msgid "6" +msgstr "6" + +msgid "7" +msgstr "7" + +msgid "8" +msgstr "8" + +msgid "9" +msgstr "9" + +#, python-format +msgid ": %s" +msgstr ":%s" + +msgid "<Current movielist location>" +msgstr "<Huidige opnamelijstlocatie>" + +msgid "<Default movie location>" +msgstr "<Standaard opnamelocatie>" + +msgid "<Last timer location>" +msgstr "<Laatste timerlocatie>" + +msgid "<unknown>" +msgstr "<onbekend>" + +msgid "??" +msgstr "??" + +msgid "A" +msgstr "A" + +#, python-format +msgid "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" +msgstr "" +"Een configuratiebestand (%s) is sinds de installatie gewijzigd.\n" +"Wilt u uw aanpassingen behouden?" + +#, python-format +msgid "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" +msgstr "" +"Een configuratiebestand (%s) is sinds de installatie gewijzigd.\n" +"Wilt u uw versie behouden?" + +msgid "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"Een opname die gereed is wil de ontvanger\n" +"in standby zetten. Wilt u dat?" + +msgid "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"Een opname die gereed is wil de ontvanger\n" +"uitschakelen. Wilt u dat?" + +msgid "A graphical EPG for all services of an specific bouquet" +msgstr "Grafische EPG voor alle zenders uit een specifiek bouquet" + +#, python-format +msgid "" +"A record has been started:\n" +"%s" +msgstr "" +"Een opname is gestart:\n" +"%s" + +msgid "" +"A recording is currently running.\n" +"What do you want to do?" +msgstr "" +"Bezig met opnemen.\n" +"Wat wilt u doen?" + +msgid "" +"A recording is currently running. Please stop the recording before trying to " +"configure the positioner." +msgstr "" +"U bent aan het opnemen. Stop de opname voordat u de rotorinstellingen " +"probeert te wijzigen." + +msgid "" +"A recording is currently running. Please stop the recording before trying to " +"scan." +msgstr "Een opname is nu bezig. Stop de opname voor u gaat scannen." + +msgid "" +"A recording is currently running. Please stop the recording before trying to " +"start the satfinder." +msgstr "" +"U bent aan het opnemen. Stop de opname voordat u de signaalmeting start." + +#, python-format +msgid "A required tool (%s) was not found." +msgstr "Een noodzakelijke tool (%s) is niet gevonden." + +msgid "A search for available updates is currently in progress." +msgstr "Bezig met zoeken naar updates." + +msgid "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" +msgstr "" +"Er is een tweede geconfigureerde interface gevonden.\n" +"\n" +"Wilt u de tweede netwerkinterface uitschakelen?" + +msgid "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"Een slaaptimer wil de ontvanger\n" +"in standby zetten. Wilt u dat?" + +msgid "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"Een slaaptimer wil de ontvanger\n" +"uitschakelen. Nu uitschakelen?" + +msgid "A small overview of the available icon states and actions." +msgstr "Een beperkt overzicht van beschikbare icon-statussen en acties." + +msgid "" +"A timer failed to record!\n" +"Disable TV and try again?\n" +msgstr "" +"Timer opname mislukt!\n" +"Verander van zender en probeer het opnieuw.\n" + +msgid "A/V settings" +msgstr "A/V instellingen" + +msgid "AC3/DTS downmix" +msgstr "AC3/DTS downmix" + +msgid "Abort" +msgstr "Afbreken" + +msgid "About" +msgstr "Uw ontvanger" + +msgid "About..." +msgstr "Informatie over uw ontvanger" + +msgid "Accesspoint:" +msgstr "Accesspoint:" + +msgid "Action on long powerbutton press" +msgstr "Actie bij lang indrukken van de aan / uit toets" + +msgid "Action on short powerbutton press" +msgstr "Actie na het kort indrukken van de aan / uit toets" + +msgid "Activate Picture in Picture" +msgstr "Activeer Picture In Picture" + +msgid "Activate current configuration" +msgstr "Activeer de huidige configuratie" + +msgid "Activate network settings" +msgstr "Activeer de netwerkinstellingen" + +msgid "Activate the configured network settings." +msgstr "Activeer de geconfigureerde netwerkinstellingen" + +msgid "Adapter settings" +msgstr "Adapterinstellingen" + +msgid "Add" +msgstr "Voeg toe" + +msgid "Add Bookmark" +msgstr "markeerpunt toevoegen" + +msgid "Add a mark" +msgstr "Plaats een markering" + +msgid "Add a nameserver entry" +msgstr "Voeg een nameserver toe" + +msgid "Add a new title" +msgstr "Voeg een nieuwe titel toe" + +msgid "Add bookmark" +msgstr "Maak markeerpunt" + +msgid "Add directory to playlist" +msgstr "Voeg de map aan de afspeellijst toe" + +msgid "Add file to playlist" +msgstr "Voeg het bestand toe aan de afspeellijst" + +msgid "Add files to playlist" +msgstr "Voeg de bestanden toe aan de afspeellijst" + +msgid "Add more details to the crash log" +msgstr "" +"Indien geactiveerd, dan worden er extra details aan het crashlog toegevoegd." + +msgid "Add provider" +msgstr "Provider toevoegen" + +msgid "Add recording (enter recording duration)" +msgstr "Voeg een opname toe (voer de opnameduur in)" + +msgid "Add recording (enter recording endtime)" +msgstr "Voeg een opname toe (voer de eindtijd in)" + +msgid "Add recording (indefinitely)" +msgstr "Voeg een opname toe (doorlopend)" + +msgid "Add recording (stop after current event)" +msgstr "Voeg een opname toe (stop na huidige uitzending)" + +msgid "Add service" +msgstr "Voeg een zender toe" + +msgid "Add timer" +msgstr "Timer toevoegen" + +msgid "Add title" +msgstr "Voeg titel toe" + +msgid "Add to bouquet" +msgstr "Voeg toe aan een bouquet" + +msgid "Add to favourites" +msgstr "Voeg toe aan favorieten" + +msgid "Add/remove change timer for current event" +msgstr "Voeg toe / verwijder een timerwijziging voor het huidige programma" + +msgid "Adjust 3D settings" +msgstr "3D instellingen aanpassen" + +msgid "" +"Adjust the color settings so that all the color shades are distinguishable, " +"but appear as saturated as possible. If you are happy with the result, press " +"OK to close the video fine-tuning, or use the number keys to select other " +"test screens." +msgstr "" +"Wijzig de kleuren zodanig dat alle tinten te onderscheiden zijn, maar wel zo " +"verzadigd mogelijk zijn. Zodra het resultaat u bevalt, drukt u op OK om dit " +"menu af te sluiten of selecteert u een ander testscherm d.m.v. de " +"nummertoetsen." + +msgid "Advanced" +msgstr "geavanceerd" + +msgid "Advanced options" +msgstr "Geavanceerde opties" + +msgid "Advanced restore" +msgstr "Geavanceerd herstellen" + +msgid "Advanced software" +msgstr "Geavanceerde software" + +msgid "Advanced software plugin" +msgstr "Geavanceerde software plugin" + +msgid "Advanced video enhancement setup" +msgstr "Geavanceerde videoverbeteringsinstellingen" + +msgid "Advanced video setup" +msgstr "Geavanceerde videoinstellingen" + +msgid "After event" +msgstr "Na opname" + +msgid "Album" +msgstr "Album" + +msgid "Alignment of events" +msgstr "Uitlijnen van gebeurtenissen" + +msgid "Alignment of service names" +msgstr "Uitlijnen van services" + +msgid "All" +msgstr "Alles" + +msgid "All ages" +msgstr "Alle leeftijden" + +msgid "All satellites 1 (USALS)" +msgstr "Alle satellieten 1 (USALS)" + +msgid "All satellites 2 (USALS)" +msgstr "Alle satellieten 2 (USALS)" + +msgid "All satellites 3 (USALS)" +msgstr "Alle satellieten 3 (USALS)" + +msgid "All satellites 4 (USALS)" +msgstr "Alle satellieten 4 (USALS)" + +msgid "Allocate" +msgstr "Toewijzen" + +msgid "Allocate unused memory index" +msgstr "Wijs de ongebruikte memory index toe" + +msgid "Allow quit movieplayer with exit" +msgstr "Verlaat de movieplayer d.m.v. de 'exit' toets" + +msgid "Allow subtitle language to equal audio language" +msgstr "Sta toe dat de ondertiteling gelijk is aan de audio-instelling" + +msgid "Allow subtitles for hearing impaired" +msgstr "Sta de ondertiteling voor doven en slechthorenden toe" + +msgid "Alpha" +msgstr "Transparantie" + +msgid "Alternative" +msgstr "Alternatieven" + +msgid "Alternative numbering mode" +msgstr "Alternatieve telmodus" + +msgid "Alternative services tuner priority" +msgstr "Alternatieve tunerprioriteit" + +msgid "Always ask" +msgstr "Altijd vragen" + +msgid "Always hide infobar" +msgstr "Infobalk altijd verbergen" + +msgid "An empty filename is illegal." +msgstr "Een lege bestandsnaam is ongeldig." + +msgid "An error occurred while downloading the packetlist. Please try again." +msgstr "" +"Er is een fout opgetreden bij het downloaden van de pakketlijst. Probeer het " +"aub opnieuw." + +msgid "An unknown error occurred!" +msgstr "Er heeft zich een onbekende fout voorgedaan!" + +msgid "And will put your receiver in standby over " +msgstr "En zet uw ontvanger in standby na " + +msgid "Any activity" +msgstr "Elke activiteit" + +msgid "Arabic" +msgstr "Arabisch" + +msgid "Are you sure to remove this entry?" +msgstr "Weet u zeker dat u dit item wilt verwijderen?" + +msgid "" +"Are you sure you want to activate this network configuration?\n" +"\n" +msgstr "" +"Wilt u deze netwerkconfiguratie nu activeren?\n" +"\n" + +msgid "" +"Are you sure you want to delete\n" +"the following backup:\n" +msgstr "" +"Weet u zeker dat u deze backup\n" +"wilt verwijderen:\n" + +msgid "Are you sure you want to exit this wizard?" +msgstr "Wilt u deze wizard afsluiten?" + +msgid "" +"Are you sure you want to restart your network interfaces?\n" +"\n" +msgstr "" +"Weet u zeker dat u de netwerkinterface wilt herstarten?\n" +"\n" + +#, python-format +msgid "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Weet u zeker dat u deze backup wilt terugplaatsen?\n" +"%s\n" +"Uw ontvanger zal herstarten nadat herstel van de backup gereed is. " + +msgid "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Weet u zeker dat u de backup wilt terugplaatsen?\n" +"Uw ontvanger zal herstarten nadat herstel van de backup gereed is." + +msgid "Artist" +msgstr "Artiest" + +msgid "Arts/Culture" +msgstr "kunst / cultuur" + +msgid "Ask user" +msgstr "Vraag gebruiker" + +msgid "Aspect ratio" +msgstr "Beeldverhouding" + +msgid "Assigned CAIds:" +msgstr "Toegewezen CAIds:" + +msgid "Assigned services/provider:" +msgstr "Toegewezen zenders/providers" + +msgid "At beginning" +msgstr "Bovenaan de lijst" + +msgid "At end" +msgstr "Onderaan de lijst" + +msgid "Attempt to recover lost mounts (in background)" +msgstr "Probeer verbroken mounts te herstellen (achtergrond proces) " + +msgid "Audio" +msgstr "Audio" + +msgid "Audio PID" +msgstr "Audio PID" + +msgid "Audio language selection 1" +msgstr "Audio taalkeuze 1" + +msgid "Audio language selection 2" +msgstr "Audio taalkeuze 2" + +msgid "Audio language selection 3" +msgstr "Audio taalkeuze 3" + +msgid "Audio language selection 4" +msgstr "Audio taalkeuze 4" + +msgid "Audio options..." +msgstr "Audio opties..." + +#, python-format +msgid "Audio track (%s) format" +msgstr "Audiospoor (%s) formaat" + +#, python-format +msgid "Audio track (%s) language" +msgstr "Audiospoor (%s) taal" + +msgid "Author: " +msgstr "Auteur:" + +msgid "Authoring mode" +msgstr "Creatiewijze" + +#. TRANSLATORS: (aspect ratio policy: always try to display as fullscreen, when there is no content (black bars) on left/right, even if this breaks the aspect. +msgid "Auto" +msgstr "Auto" + +msgid "Auto chapter split every ? minutes (0=never)" +msgstr "Automatisch hoofdstuk splitsen elke ? min (0=nooit)" + +msgid "Auto flesh" +msgstr "Automatische huidskleurtint" + +msgid "Auto focus" +msgstr "Auto focus" + +msgid "Auto focus commencing ..." +msgstr "Starten van de auto focus..." + +msgid "Auto language selection" +msgstr "Automatische taalkeuzeselectie" + +msgid "Auto scart switching" +msgstr "Automatisch scart schakelen" + +msgid "Automatic" +msgstr "Automatisch" + +msgid "Automatic scan" +msgstr "Automatisch zoeken" + +msgid "Automatically start timeshift after" +msgstr "Timeshift automatisch starten na" + +msgid "Automatically turn on external subtitles" +msgstr "Schakel de externe ondertitel automatisch in" + +msgid "Available format variables" +msgstr "Beschikbare formaten" + +msgid "B" +msgstr "B" + +msgid "BER" +msgstr "BER" + +msgid "BER:" +msgstr "BER:" + +msgid "Back" +msgstr "Terug" + +msgid "Background" +msgstr "Achtergrond" + +msgid "Background color" +msgstr "Achtergrondkleur" + +msgid "Background delete option" +msgstr "Wisoptie (achtergrondproces)" + +msgid "Background delete speed" +msgstr "Wissnelheid (achtergrondproces)" + +msgid "Backup completed." +msgstr "Backup voltooid." + +msgid "Backup failed." +msgstr "Backup is mislukt." + +msgid "Backup is running..." +msgstr "Backup wordt uitgevoerd..." + +msgid "Backup system settings" +msgstr "Backup uw instellingen" + +msgid "Band" +msgstr "Band" + +msgid "Bandwidth" +msgstr "Bandbreedte" + +msgid "Basque" +msgstr "Baskisch" + +msgid "Begin time" +msgstr "Starttijd" + +msgid "Behavior of 'pause and ok' when paused" +msgstr "Het gedrag van de 'pauze en ok toets' indien gepauzeerd" + +msgid "Behavior of 0 key in PiP-mode" +msgstr "Functie van de 0-toets in PiP-modus" + +msgid "Behavior when a movie is started" +msgstr "Actie na 'start afspelen'" + +msgid "Behavior when a movie is stopped" +msgstr "Actie na 'stop afspelen'" + +msgid "Behavior when a movie reaches the end" +msgstr "Actie bij het einde van de opname" + +msgid "Big PiP" +msgstr "Grote PIP" + +msgid "Bitrate:" +msgstr "Bitrate:" + +msgid "Black screen" +msgstr "Zwart beeld" + +msgid "Black screen till locked" +msgstr "Zwart beeld totdat de zender 'gelockt' is" + +msgid "Block noise reduction" +msgstr "Blokruisvermindering" + +msgid "Blue boost" +msgstr "Blauwe impuls" + +msgid "Bookmarks" +msgstr "Markeerpunten" + +msgid "Brightness" +msgstr "Helderheid" + +msgid "Bulgarian" +msgstr "Bulgaars" + +msgid "Burn DVD" +msgstr "Brand DVD" + +#, python-format +msgid "Burn audio track (%s)" +msgstr "Brandt geluidstrack (%s)" + +msgid "Burn existing image to DVD" +msgstr "Brand deze image op DVD" + +msgid "Burn to DVD" +msgstr "Naar DVD branden" + +msgid "Bus: " +msgstr "Bus: " + +msgid "" +"By default, SNR will be shown in dB (when supported by the tuner). This " +"setting forces SNR to be shown as a percentage instead." +msgstr "" +"Indien geactiveerd, dan wijzigt de waarde van de weergave van het signaal " +"in dB. Standaard wordt de signaalwaarde getoond in procenten. Dit werkt " +"alleen indien dit door de tuner wordt ondersteund." + +msgid "C" +msgstr "C" + +msgid "C-Band" +msgstr "C-Band" + +msgid "CH" +msgstr "CH" + +msgid "CI assignment" +msgstr "CI toewijzing" + +msgid "CVBS" +msgstr "CVBS" + +msgid "Cable" +msgstr "Kabel" + +msgid "Cable Scan" +msgstr "Kabel scan" + +msgid "Cache thumbnails" +msgstr "Cachen van miniatuurafbeeldingen" + +msgid "Calculate" +msgstr "Berekenen" + +msgid "Calculate all positions" +msgstr "Bereken alle posities" + +msgid "Calculation complete" +msgstr "Berekening gereed" + +msgid "Calibrate" +msgstr "Calibreren" + +msgid "Can be used for different fps between external subtitles and video." +msgstr "" +"Met deze optie stelt u de verschillende fps in voor een verbeterde " +"synchronisatie tussen de externe ondertitels en video.\n" +"\n" +"U kunt dit instellen met de cursor R / L toetsen. U kunt hierbij kiezen van " +"origineel of een waarde instellen van 23.976 - 30 fps." + +msgid "Cancel" +msgstr "Annuleren" + +msgid "Cannot determine" +msgstr "Kan niet vaststellen" + +msgid "Cannot find any signal ..., aborting !" +msgstr "Kan geen signaal vinden..., gestopt!" + +msgid "Cannot move files on a different disk or system to the trash can" +msgstr "" +"Kan geen bestanden van een andere schijf of systeem naar de prullenbak " +"verplaatsen" + +msgid "Cannot move to trash can" +msgstr "Kan geen bestanden naar de prullenbak verplaatsen" + +msgid "Capacity: " +msgstr "Capaciteit: " + +msgid "Card" +msgstr "Kaart" + +msgid "Cascade PiP" +msgstr "Trapsgewijze PIP" + +msgid "Center DVB subtitles" +msgstr "Centreer DVB ondertitels" + +msgid "Center time-labels and remove date" +msgstr "Centreer de tijds-labels en verwijder de datum" + +msgid "Change bouquets in quickzap" +msgstr "Verander van bouquet tijdens zappen" + +msgid "Change pin code" +msgstr "Verander pincode" + +msgid "Change recording (duration)" +msgstr "Wijzig de opname (tijdsduur)" + +msgid "Change recording (endtime)" +msgstr "Wijzig opname (eindtijd)" + +msgid "Change repeat and delay settings?" +msgstr "Verander herhalings- en vertragingsinstellingen?" + +msgid "Change service PIN" +msgstr "Wijzig de service pincode" + +msgid "Change service PINs" +msgstr "Wijzig de service pincodes" + +msgid "Change setup PIN" +msgstr "Wijzig de setup pincode" + +msgid "Change step size" +msgstr "Wijzig stapgrootte" + +msgid "Change timer" +msgstr "Wijzig timer" + +msgid "Changelog" +msgstr "Changelog" + +msgid "Channel" +msgstr "Kanaal" + +msgid "Channel list type" +msgstr "Zenderlijsttype" + +msgid "Channel not in services list" +msgstr "Kanaal komt niet voor in de zenderlijst" + +msgid "Channel selection" +msgstr "Zenderkeuze" + +msgid "Channel:" +msgstr "Zender:" + +msgid "Channellist menu" +msgstr "Zenderlijstmenu" + +msgid "Chap." +msgstr "Hfdst." + +msgid "Chapter" +msgstr "Hoofdstuk" + +msgid "Chapter:" +msgstr "Hoofdstuk:" + +msgid "Check" +msgstr "Controleer" + +msgid "Check the internet connection" +msgstr "Controleer of u een internetverbinding heeft" + +msgid "Check the internet connection again" +msgstr "Controleer nogmaals of u een internetverbinding heeft" + +msgid "Checking filesystem..." +msgstr "Controleert bestandssysteem..." + +msgid "Checking the internet connection" +msgstr "Controleert de internetverbinding" + +#, python-format +msgid "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" +msgstr "" +"Controleert tuner %d\n" +"DiSEqC poort %s voor %s" + +msgid "Children/Youth" +msgstr "kinderen / jeugd" + +msgid "Choose which tuner to configure." +msgstr "Kies de in te stellen tuner." + +msgid "Circular left" +msgstr "Circulaire links" + +msgid "Circular right" +msgstr "Circulaire rechts" + +msgid "Cleanup" +msgstr "Opruimen" + +msgid "Clear" +msgstr "Wissen" + +msgid "Clear before scan" +msgstr "Voor zoeken alle zenders wissen?" + +msgid "Clear fixed" +msgstr "Wis fixed" + +msgid "Clear log" +msgstr "Log wissen" + +msgid "Clear playlist" +msgstr "Afspeellijst leeg maken" + +msgid "Close" +msgstr "Sluiten" + +msgid "Close PiP on exit" +msgstr "Sluit PIP met 'exit'" + +msgid "Close title selection" +msgstr "Sluit titelselectie" + +msgid "Code rate HP" +msgstr "Code rate HP" + +msgid "Code rate LP" +msgstr "Code rate LP" + +msgid "Coderate HP" +msgstr "Coderate HP" + +msgid "Coderate LP" +msgstr "Coderate LP" + +msgid "Collection name" +msgstr "DVD naam" + +msgid "Collection settings" +msgstr "Verzamelinstellingen" + +msgid "Color format" +msgstr "Kleurformaat" + +msgid "Command execution..." +msgstr "Commando uitvoeren..." + +msgid "Command order" +msgstr "Commando volgorde" + +msgid "Common Interface" +msgstr "Common Interface" + +msgid "Common Interface assignment" +msgstr "Common Interface taken" + +msgid "Communication" +msgstr "Mededeling" + +msgid "Compact flash" +msgstr "Compact flash" + +msgid "Complete" +msgstr "Compleet" + +msgid "Complex (allows mixing audio tracks and aspects)" +msgstr "Complex (mixen audio sporen en aspecten)" + +msgid "Composition of the recording filenames" +msgstr "Samenstelling van de bestandsnamen" + +msgid "Configuration mode" +msgstr "Configuratiemodus" + +#, python-format +msgid "Configuration mode: %s" +msgstr "Configuratiemodus: %s" + +msgid "Configuration..." +msgstr "Configuratie..." + +msgid "" +"Configure an additional delay to improve external subtitle synchronisation." +msgstr "" +"Met deze optie stelt u een extra vertraging in ter verbetering van de " +"synchronisatie van de externe ondertitels.\n" +"\n" +"U kunt dit instellen met de cursor R / L toetsen tussen -10 en +20 sec. De " +"standaardwaarde is 'geen vertraging'." + +msgid "Configure an additional delay to improve subtitle synchronisation." +msgstr "" +"Met deze optie configureert u een extra vertraging ter verbetering van de " +"synchronisatie van de ondertitels.\n" +"\n" +"U kunt dit instellen met de cursor R / L toetsen van -10 tot +20 sec. De " +"standaardwaarde is 'geen vertraging'." + +msgid "" +"Configure for how long the infobar will remain visible after activation." +msgstr "" +"Met deze optie stelt u in hoe lang de informatiebalk zichtbaar blijft indien " +"deze geactiveerd is. Deze kan ook zichtbaar blijven totdat (opnieuw) op 'ok' " +"gedrukt wordt. Kies dan voor 'geen timeout'.\n" +"\n" +"U kunt kiezen tussen 'geen timeout' of van 1 tot 11 sec." + +msgid "" +"Configure for how many minutes finished events should remain visible in the " +"EPG. Useful when you need information about an event which has just " +"finished, or has been delayed." +msgstr "" +"Configureer hoe lang afgelopen programma's zichtbaar moet blijven in de EPG. " +"Dit is vooral handig indien u informatie wenst over een programma wat net " +"afgelopen is, of vertraagd is.\n" +"\n" +"U kunt kiezen tussen 0-120 min in stappen van 15 min." + +msgid "Configure how recording filenames are constructed." +msgstr "" +"Met deze optie stelt u in op welke wijze de bestandsnamen van opnames " +"samengesteld worden.\n" +"\n" +"U kunt kiezen uit, standaard, korte bestandsnamen of lange bestandsnamen." + +msgid "Configure how the fan should operate" +msgstr "" +"Met deze optie stelt u in hoe de ventilator dient te functioneren.\n" +"\n" +"U kunt kiezen uit automatisch, aan of uit." + +msgid "" +"Configure if and how crypto icons will be shown in the channel selection " +"list." +msgstr "" +"Indien geactiveerd kunt u aangeven of en waar het \"gecodeerd\" icoon " +"weergegeven wordt in de zenderlijst.\n" +"\n" +"U kunt kiezen uit links of rechts van de kanaalnaam, of geen weergave." + +msgid "" +"Configure if and how long the latest service in the PiP will be remembered." +msgstr "" +"Hiermee stel je in of en hoe lang het laatste kanaal in de PIP wordt " +"onthouden.\n" +"U kunt een keuze maken uit Gedeactiveerd, Geen timeout of tussen 1-60 " +"minuten." + +msgid "" +"Configure if and how the record indicator will be shown in the channel " +"selection list." +msgstr "" +"Indien geactiveerd kunt u aangeven of en waar de \"opname\" indicatie " +"weergegeven wordt in de zenderlijst.\n" +"\n" +"U kunt kiezen uit links of rechts van de zendernaam, rode zendernaam of geen " +"weergave." + +msgid "" +"Configure if and how service type icons will be shown in the channel " +"selection list." +msgstr "" +"Indien geactiveerd kunt u aangeven of en hoe de \"service iconen\" " +"weergegeven worden in de zenderlijst.\n" +"\n" +"U kunt kiezen uit links of rechts van de kanaalnaam, of geen weergave." + +msgid "" +"Configure if and how wide columns will be shown in the channel selection " +"list." +msgstr "" +"Indien geactiveerd kunt u aangeven of en hoe breed de kolommen weergegeven " +"worden in de zenderlijst.\n" +"\n" +"U kunt kiezen tussen 100 - 1200 pixels, verdelen of uitschakelen." + +msgid "" +"Configure if service picons will be shown in the channel selection list." +msgstr "" +"Indien geactiveerd, dan worden de picons weergegeven in de zenderlijst." + +msgid "Configure interface" +msgstr "Configureer interface" + +msgid "Configure nameservers" +msgstr "Configureer nameservers" + +msgid "Configure on which devices the background delete option should be used." +msgstr "" +"Met deze optie stelt u in op welk apparaat de optie 'verwijder opnames op de " +"achtergrond' gebruikt wordt.\n" +"\n" +"U kunt kiezen uit, alleen de interne harddisk, overal of n.v.t." + +msgid "Configure remote control type" +msgstr "Configureer het type afstandbediening" + +msgid "Configure the DiSEqC mode for this LNB." +msgstr "Configureer de DiSEqC modus voor deze LNB." + +msgid "Configure the IP address." +msgstr "Configureer het IP-adres" + +msgid "Configure the aspect ratio of the screen." +msgstr "Configureer de beeldverhouding van het scherm." + +msgid "" +"Configure the behavior of the 'pause and ok' key when movie playback is " +"already paused." +msgstr "" +"Met deze optie stelt u het gedrag van de 'pauze en ok toets' in als de film " +"gepauzeerd is.\n" +"\n" +" U kunt kiezen uit 'afspelen', 'stap voor stap (GOP)' of 'laatste snelheid'." + +msgid "Configure the behavior when movie playback is manually stopped." +msgstr "" +"Met deze optie stelt u in wat er gebeurt indien het afspelen van films " +"handmatig wordt gestopt.\n" +"\n" +"U kunt kiezen uit de volgende opties. Terug naar de opnamelijst, terug naar " +"de laatste zender of vraag het de gebruiker." + +msgid "Configure the behavior when movie playback is started." +msgstr "" +"Met deze optie stelt u in wat er gebeurt indien een film gestart wordt.\n" +"\n" +"U kunt kiezen uit de volgende opties. Ga door op laatste positie, start " +"vanaf het begin of vraag het de gebruiker." + +msgid "" +"Configure the behavior when reaching the end of a movie, during movie " +"playback." +msgstr "" +"Met deze optie stelt u in wat er gebeurt aan het eind van de weergave van " +"een film.\n" +"\n" +"U kunt kiezen uit de volgende opties. Terug naar de opnamelijst, terug naar " +"de laatste zender, pauzeer de weergave, speel de volgende (terug naar de " +"lijst), speel de volgende (terug naar Live TV), continu afspelen of vraag " +"het de gebruiker." + +msgid "" +"Configure the border width of the subtitles. The dark border makes the " +"subtitles easier to read on a light background." +msgstr "" +"Met deze optie stelt u de randdikte van de ondertitels in. Een donkere rand " +"maakt de ondertiteling makkelijker leesbaar op een lichte achtergrond.\n" +"\n" +"U kunt hier een waarde kiezen van 1- 5 mm. De standaardwaarde is 3 mm." + +msgid "" +"Configure the brightness level of the front panel display during standby." +msgstr "" +"Met deze optie stelt u traploos de helderheid van het display in tijdens " +"standby." + +msgid "Configure the brightness level of the front panel display." +msgstr "Met deze optie stelt u traploos de helderheid van het display in." + +msgid "" +"Configure the color of the external subtitles, alternative (normal in white, " +"italic in yellow, bold in cyan, underscore in green), white or yellow." +msgstr "" +"Met deze optie stelt u de kleur van de externe ondertitels in.\n" +"\n" +"Met de cursor R / L toetsen kiest u tussen alternatief, standaard in het " +"wit, italic in geel, vet in cyaan, understreept in groen, wit of geel. De " +"standaardwaarde is 'alternatief'." + +msgid "Configure the color of the teletext subtitles." +msgstr "" +"Met deze optie stelt u de kleur van de teletekst ondertitels in.\n" +"\n" +"U kunt hier kiezen uit de volgende kleuren. Origineel, geel of wit. De " +"standaardkleur is wit." + +msgid "Configure the contrast level of the front panel display." +msgstr "Stel het contrast van het display in." + +msgid "" +"Configure the cursor behaviour in the channel selection list. When opening " +"the channel selection list you can keep on the current service or already " +"select up/down and you are able to revert the B+/B- buttons." +msgstr "" +"Met deze optie stelt u het gedrag van de cursor in de zenderlijst in. U kunt " +"de huidige zender behouden of alvast met omhoog / omlaag een zender " +"selecteren en u kunt het gedrag van de B+ / B- toetsen omkeren." + +msgid "" +"Configure the duration in hours the receiver should go to standby when the " +"receiver is not controlled." +msgstr "" +"Stel de tijdsduur (in uren en lopende activiteit) in waarna de STB wordt " +"afgesloten of naar standby gaat, indien de ontvanger niet wordt bediend." + +msgid "Configure the duration in minutes for the screensaver." +msgstr "" +"Met deze optie kunt u de screensaver activeren en stelt u tevens de tijd in " +"na hoeveel minuten deze start.\n" +"\n" +"U kunt kiezen om dit tussen 0 - 60 minuten in te stellen." + +msgid "" +"Configure the duration in minutes for the sleeptimer. Select this entry and " +"click OK or green to start/stop the sleeptimer" +msgstr "" +"Stel tijd in minuten in voor de sleeptimer. Selecteer deze invoer en druk op " +"OK of de groene toets om de sleeptimer te starten / stoppen." + +msgid "" +"Configure the duration when the receiver should go to shut down in case the " +"receiver is in standby mode." +msgstr "" +"Configureer na hoeveel tijd de ontvanger moet afsluiten in het geval dat " +"deze in standby staat." + +msgid "Configure the first audio language (highest priority)." +msgstr "Stel de eerste audio taal in (hoogste prioriteit)." + +msgid "Configure the first subtitle language (highest priority)." +msgstr "Stel de eerste ondertitel taal in (hoogste prioriteit)." + +msgid "Configure the font size of the subtitles." +msgstr "" +"Met deze optie stelt u de fontgrootte van de ondertitels in.\n" +"\n" +"U kunt de grootte instellen met de cursor R / L toets van 18-54. De " +"standaardgrootte is 34." + +msgid "Configure the fourth audio language." +msgstr "Stel de vierde audio taal in." + +msgid "Configure the fourth subtitle language." +msgstr "Bepaal de vierde ondertitel taalselectie" + +msgid "Configure the function of a long press on the power button." +msgstr "" +"Met deze optie stelt u de functie in van het lang indrukken van de aan / uit-" +"toet.\n" +"\n" +"U kunt kiezen uit, het afsluitmenu weergeven, direct uitschakelen of ga naar " +"standby." + +msgid "Configure the function of a short press on the power button." +msgstr "" +"Met deze optie stelt u de functie in van het kort indrukken van de aan / uit-" +"toets.\n" +"\n" +"U kunt kiezen uit, ga naar standby, het afsluitmenu weergeven of direct " +"uitschakelen." + +msgid "Configure the function of the '0' button do when PIP is active." +msgstr "" +"Met deze optie stelt u de functie in van de '0' toets indien PIP actief is.\n" +"\n" +"U kunt kiezen uit, standaard, wisselen tussen PIP en het hoofdscherm, " +"verplaats het PIP scherm naar het hoofdscherm of beëindig de PIP functie." + +msgid "Configure the gateway." +msgstr "Configureer de gateway." + +msgid "Configure the general audio delay of Dolby Digital sound tracks." +msgstr "" +"Met deze optie stelt u de algemene audio vertraging van Dolby digital geluid " +"in." + +msgid "Configure the general audio delay of stereo sound tracks." +msgstr "" +"Met deze optie stelt u de algemene audio vertraging van stereo geluid in." + +msgid "" +"Configure the hard disk drive to go to standby after the specified idle time." +msgstr "Stel in binnen welk tijdsbestek de harde schijf in standby gaat." + +msgid "Configure the horizontal alignment of the subtitles." +msgstr "" +"Met deze optie stelt u de horizontale uitlijning van de ondertitels in.\n" +"\n" +"U kunt hier kiezen tussen links, rechts of gecentreerd. De standaardwaarde " +"is gecentreerd." + +msgid "" +"Configure the initial fast forward speed. When you press the fast forward " +"button, winding will start at this speed." +msgstr "" +"Met deze optie stelt u de initiële voorwaartse spoelsnelheid in. Zodra u, " +"tijdens een weergave, op FF drukt zal het spoelen starten met deze " +"snelheid. \n" +"\n" +"Instellen met de cursor naar rechts / links toetsen en bevestigen met ok. De " +"standaardwaarde is 2x. " + +msgid "" +"Configure the initial rewind speed. When you press the rewind button, " +"winding will start at this speed." +msgstr "" +"Met deze optie stelt u de initiële achterwaartse spoelsnelheid in. Zodra u, " +"tijdens een weergave, op REW drukt zal het spoelen starten met deze " +"snelheid. \n" +"\n" +"U kunt dit instellen met de cursor rechts / links toetsen tussen 2x en 128x, " +"en bevestigen met ok. De standaardwaarde bedraagt 2x" + +msgid "Configure the latitude of your location." +msgstr "Stel de breedtegraad van uw locatie in." + +msgid "Configure the longitude of your location." +msgstr "Stel de lengtegraad van uw locatie in." + +msgid "" +"Configure the minimum amount of disk space to be available for recordings. " +"When the amount of space drops below this value, deleted items will be " +"removed from the trash can." +msgstr "" +"Met deze optie stelt u de minimaal beschikbare ruimte voor opnames in. Zodra " +"de vrije ruimte kleiner is dan deze waarde, dan worden de te wissen opnames " +"uit de prullenmand verwijderd.\n" +"\n" +"U kunt hier zelf een waarde ingeven. De standaardwaarde is 40 Gb" + +msgid "Configure the nameserver (DNS)." +msgstr "Configureer de naamserver (DNS)" + +msgid "Configure the netmask." +msgstr "Configureer netmask." + +msgid "" +"Configure the number of days after which items are automaticaly removed from " +"the trash can." +msgstr "" +"Met deze optie stelt in na hoeveel dagen te wissen items automatisch uit de " +"prullenmand verwijderd worden.\n" +"\n" +"U kunt hier zelf een waarde ingeven. De standaardwaarde is 8 dagen." + +msgid "" +"Configure the number of days old timers are kept before they are " +"automatically removed from the timer list." +msgstr "" +"Met deze optie stelt u in hoeveel dagen de gebruikte timers bewaard blijven, " +"voordat deze automatisch uit de timerlijst verwijderd worden.\n" +"\n" +"U kunt hier zelf een waarde ingeven. De standaardwaarde is 7 dagen." + +msgid "" +"Configure the offline decoding delay in milliseconds. The configured delay " +"is observed at each control word parity change." +msgstr "" +"Met deze optie stelt u de vertraging van de 'offline decoding' in msec in. " +"De vertraging wordt bepaald bij iedere wijziging van het CW.\n" +"\n" +"U kunt hier zelf een waarde in msec ingeven. De standaardwaarde is 1000 ms" + +msgid "Configure the possible fast forward speeds." +msgstr "" +"Met deze optie stelt u de mogelijke voorwaartse spoelsnelheid in.\n" +"(De snelheden variëren van 2x - 128x)\n" +"\n" +"Stel dit in met cursur naar rechts en bevestig met ok." + +msgid "Configure the possible rewind speeds." +msgstr "" +"Met deze optie stelt u de mogelijke achterwaartse spoelsnelheid in.\n" +"(De snelheden variëren van 2x - 128x)\n" +"\n" +"Stel dit in met cursur naar rechts en bevestig met ok." + +msgid "Configure the primary EPG language." +msgstr "Stel de eerste EPG taal in." + +msgid "Configure the refresh rate of the screen." +msgstr "" +"Met deze optie stelt u de verversingssnelheid van het scherm in.\n" +"\n" +"U kunt kiezen voor multi, 50Hz of 60Hz." + +msgid "Configure the screen resolution in PC output mode." +msgstr "Met deze optie stelt u de schermresolutie in bij de PC output modus." + +msgid "Configure the second audio language." +msgstr "Stel de tweede audio taal in." + +msgid "Configure the second subtitle language." +msgstr "Bepaal de tweede ondertitel taalselectie" + +msgid "Configure the secondary EPG language." +msgstr "Stel de tweede EPG taal in." + +msgid "Configure the sharpness of the video scaling." +msgstr "Met deze optie stelt u scherpte van de videoconverting in." + +msgid "Configure the skip time interval for the '1'/'3' buttons." +msgstr "" +"Met deze optie stelt u in hoeveel minuten u met één druk op de toetsen " +"'1'/'3' verder of terug kunt gaan in een lopende weergave.\n" +"\n" +"U kunt hier zelf een waarde ingeven. De standaardwaarde is 15 sec." + +msgid "Configure the skip time interval for the '4'/'6' buttons." +msgstr "" +"Met deze optie stelt u in hoeveel minuten u met één druk op de toetsen " +"'4'/'6' verder of terug kunt gaan in een lopende weergave.\n" +"\n" +"U kunt hier zelf en waarde ingeven. De standaardwaarde is 60 sec." + +msgid "Configure the skip time interval for the '7'/'9' buttons." +msgstr "" +"Met deze optie stelt u in hoeveel minuten u met één druk op de toetsen " +"'7'/'9' verder of terug kunt gaan in een lopende weergave.\n" +"\n" +"U kunt hier zelf een waarde ingeven. De standaardwaarde is 300 sec / 5 min." + +msgid "Configure the slow motion speeds." +msgstr "" +"Met deze optie stelt u de slowmotion snelheden in.\n" +"(De snelheden variëren van 1/2, 1/4 - 1/25 van de normale weergave)\n" +"\n" +"Stel dit in met cursur naar rechts en bevestig met ok." + +msgid "" +"Configure the source of the frontend data as shown on the infobars. " +"'Settings' is as stored on the settings. 'Tuner' is as reported by the tuner." +msgstr "" +"Configureer de bron van de frontend data zoals deze te zien is in de " +"informatiebalk.\n" +"\n" +"U kunt kiezen uit:\n" +"'Settings' zoals deze is opgeslagen in de settings, of voor 'Tuner' zoals " +"deze doorgegeven wordt door de tuner." + +msgid "" +"Configure the speed of the background deletion process. Lower speed will " +"consume less hard disk drive performance." +msgstr "" +"Met deze optie stelt u de snelheid in van het op de achtergrond verwijderen " +"van opnames. Een lagere snelheid zal minder performance van de harde schijf " +"eisen.\n" +"\n" +"U kunt hier een waarde kiezen tussen 10 - 100Mb/sec. De standaardwaarde is " +"20 Mb." + +msgid "Configure the speed of the fan" +msgstr "Met deze optie stelt u traploos de snelheid van de ventilator in." + +msgid "Configure the subtitle delay when timing information is not available." +msgstr "" +"Met deze optie stelt u de vertraging van de ondertitels in indien er geen " +"timinginformatie beschikbaar is.\n" +"\n" +"U kunt dit instellen met de cursor R / L toetsen tussen -10 tot +20 sec in " +"stappen van 0.5 sec. De standaardwaarde is 3.5 sec." + +msgid "Configure the third audio language." +msgstr "Stel de derde audiotaal in." + +msgid "Configure the third subtitle language." +msgstr "Stel de derde ondertitel taalselectie in." + +msgid "Configure the transparency of the OSD." +msgstr "Met deze optie stelt u de transparantie van de OSD in." + +msgid "" +"Configure the transparency of the black background of graphical DVB " +"subtitles." +msgstr "" +"Met deze optie stelt u de transparantie in van de zwarte achtergrond van de " +"grafische ondertitels.\n" +"\n" +"U kunt dit instellen met cursor R / L van geen transparantie tot volledig, " +"in stappen van 10%. De standaardwaarde is geen." + +msgid "Configure the tuner mode." +msgstr "Bepaal de tuner modus." + +msgid "Configure the type of status indication icons shown in the movielist." +msgstr "" +"Met deze optie stelt u de weergave van het statusicoon in bij weergave van " +"de opnamelijst.\n" +"\n" +"Uit kunt kiezen uit de volgende opties. Uit, voortgang, kleine stapjes " +"voorwaarts of de iconen." + +msgid "" +"Configure the vertical position of the subtitles, measured from the bottom " +"of the screen." +msgstr "" +"Met deze optie stelt u de verticale positie van de ondertitels in. Dit is " +"gemeten vanaf de onderzijde van het scherm.\n" +"\n" +"U kunt hier een waarde kiezen van 0 - 450 pixels. De standaardwaarde is 50 " +"pixels." + +msgid "Configure the video output mode (or resolution)." +msgstr "" +"Stel de modus (resolutie) van de videouitgang in.\n" +"\n" +"U kunt, afhankelijk van uw ontvanger, kiezen uit 1080P, 1080i, 576p, 480p, " +"576i, 480i of 720p" + +msgid "Configure the way in which the receiver changes channels." +msgstr "" +"Met deze optie stelt u in hoe het beeld weergegeven wordt tijdens het " +"zappen.\n" +"\n" +"U kunt kiezen uit een zwart of een stilstaand beeld, al dan niet afhankelijk " +"van een lock van de betreffende zender." + +msgid "Configure where completed timers show up in the timer list." +msgstr "" +"Met deze optie stelt u in waar in het timeroverzicht de uitgevoerde timers " +"getoond worden.\n" +"\n" +"U kunt kiezen tussen bovenaan of onderaan de lijst. " + +msgid "" +"Configure whether (and for how long) a second infobar will be shown when OK " +"is pressed twice. The second infobar contains additional information about " +"the current channel." +msgstr "" +"Met deze optie stelt u in of, en zo ja, hoe lang het uitgebreide " +"informatiescherm getoond moet worden. Het uitgebreide informatiescherm toont " +"aanvullende informatie betreffende de huidige zender.\n" +"\n" +"U kunt kiezen uit, geen weergave, geen timeout, tussen 1-11 sec of bij een " +"EPG update." + +msgid "" +"Configure whether multi channel sound tracks should be downmixed to stereo." +msgstr "" +"Indien geactiveerd stelt u in of zenders met meerdere geluidskananelen, of " +"deze kanalen omgezet moeten worden naar stereo." + +msgid "" +"Configure whether or not an icon should be shown when your motorized dish is " +"moving." +msgstr "" +"Indien geactiveerd, dan is de activiteit van de DiSEqC-motor zichtbaar. " + +msgid "" +"Configure which access level to use for the configuration menu. Expert level " +"gives access to all items." +msgstr "" +"Met deze optie stelt u het toegangsniveau in van het het instellingsmenu van " +"uw ontvanger. De expertmodus geeft toegang tot alle instellingen.\n" +"\n" +"U kunt kiezen uit standaard, gevorderd of de expertmodus." + +msgid "Configure which color format should be used on the SCART output." +msgstr "Stel in welk kleurformaat gebruikt wordt bij weergave via de scart." + +msgid "" +"Configure which tuner for recordings will be preferred, when more than one " +"tuner is available." +msgstr "" +"Met deze optie stelt u in welke tuner de voorkeurstuner is voor opnames " +"indien er meerdere tuners beschikbaar zijn.\n" +"\n" +"U kunt, afhankelijk van het aantal beschikbare tuners, kiezen uit " +"automatisch of de handmatig door u gekozen tuner." + +msgid "" +"Configure which tuner type will be preferred, when the same service is " +"available on different types of tuners." +msgstr "" +"Met deze optie stelt u in welke tuner de voorkeurstuner is indien de " +"betreffende zender op verschillende (type) tuners beschikbaar is.\n" +"\n" +"U kunt kiezen uit de volgende mogelijkheden:\n" +"DVB-S/-C/-T, DVB-S/-T/-C, DVB-C/-S/-T, \n" +"DVB-C/-T/-S, DVB-T/-C/-S of DVB-T/-S/-C." + +msgid "" +"Configure which tuner will be preferred, when more than one tuner is " +"available. If set to 'auto' the system will give priority to the tuner " +"having the lowest number of channels/satellites." +msgstr "" +"Met deze optie stelt u in welke tuner de voorkeurstuner is indien er " +"meerdere tuners beschikbaar zijn. Indien gekozen wordt voor 'auto' zal er " +"gekozen worden voor de tuner met het minste aantal zenders / satellieten. " + +msgid "Configure your internal LAN" +msgstr "Configureer uw interne netwerk" + +msgid "Configure your network again" +msgstr "Configureer uw netwerk opnieuw" + +msgid "Configure your network settings, and press OK to start the scan" +msgstr "Configureer uw netwerkinstellingen en druk OK om de scan te starten" + +msgid "Configure your wireless LAN again" +msgstr "Configureer uw draadloos netwerk opnieuw" + +msgid "Configures which video output connector will be used." +msgstr "" +"Met deze optie kiest u de gewenste videouitgang.\n" +"\n" +"U kunt kiezen uit HDMI (default), component of scart." + +msgid "Configuring" +msgstr "Configureren" + +msgid "Conflicting timer" +msgstr "Timer conflict!" + +msgid "Connect" +msgstr "Verbinden" + +msgid "Connect to a wireless network" +msgstr "Verbind met een draadloos netwerk" + +msgid "Connected satellites" +msgstr "Verbonden satellieten" + +msgid "Connected to" +msgstr "Verbonden met" + +msgid "Connected!" +msgstr "Verbonden!" + +msgid "Constellation" +msgstr "Constellatie" + +msgid "Content does not fit on DVD!" +msgstr "De inhoud past niet op deze DVD!" + +msgid "Continue" +msgstr "Doorgaan" + +msgid "Continue in background" +msgstr "Verder op de achtergrond" + +msgid "Continue playback" +msgstr "Doorlopend afspelen" + +msgid "Continue playing" +msgstr "Afspelen voortzetten" + +msgid "Continues play (loop)" +msgstr "Continu afspelen (lus)" + +msgid "Contrast" +msgstr "Contrast" + +msgid "Convert ext3 filesystem to ext4" +msgstr "Converteer het bestandssysteem van ext3 naar ext4" + +msgid "Convert ext3 to ext4" +msgstr "Converteer ext3 naar ext 4" + +msgid "Converting ext3 to ext4..." +msgstr "Converteert ext3 naar ext4...." + +msgid "Copy" +msgstr "Kopieër " + +msgid "Could not connect to receiver .NFI image feed server:" +msgstr "Kan geen verbinding maken met .NFI Image bronserver:" + +msgid "Could not find installed channel list." +msgstr "Ik kon geen geïnstalleerde zenderlijst vinden." + +msgid "Could not load medium! No disc inserted?" +msgstr "Kon het medium niet laden! Is er geen schijf geplaatst?" + +msgid "Could not open Picture in Picture" +msgstr "Kan Picture In Picture niet openen" + +#, python-format +msgid "Could not record due to conflicting timer %s" +msgstr "Kon niet opnemen vanwege conflicterende timer %s" + +#, python-format +msgid "Could not record due to invalid service %s" +msgstr "Kon niet opnemen vanwege een ongeldige service %s" + +msgid "Create DVD-ISO" +msgstr "DVD-ISO maken" + +msgid "Create more detailed crash log" +msgstr "Extra informatie toevoegen aan het crashlog" + +#, python-format +msgid "Creating directory %s failed." +msgstr "Het aanmaken van de map %s is mislukt." + +msgid "Creating filesystem" +msgstr "Maakt bestandssysteem" + +msgid "Creating partition" +msgstr "Maakt een partitie" + +msgid "Croatian" +msgstr "Kroatisch" + +msgid "Current CEC address" +msgstr "Huidig CEC adres" + +msgid "Current device: " +msgstr "Huidig apparaat:" + +msgid "Current event EPG" +msgstr "Huidige programma EPG" + +#, python-format +msgid "Current mode: %s \n" +msgstr "Huidige modus: %s \n" + +msgid "Current settings:" +msgstr "Huidige instellingen:" + +msgid "Current transponder" +msgstr "Huidige transponder" + +msgid "Current value: " +msgstr "Huidige waarde:" + +msgid "Current version:" +msgstr "Huidige versie:" + +msgid "Currently installed image" +msgstr "Huidig geïnstalleerde image" + +msgid "Currently the commit log cannot be retrieved - please try later again" +msgstr "" +"Op dit moment kan het commitlog niet bereikt worden - probeer het later " +"opnieuw" + +msgid "Custom skip time for '1'/'3' buttons" +msgstr "Aangepaste skiptijd voor de '1'/'3'-toetsen" + +msgid "Custom skip time for '4'/'6' buttons" +msgstr "Aangepaste skiptijd voor de '4'/'6'-toetsen" + +msgid "Custom skip time for '7'/'9' buttons" +msgstr "Aangepaste skiptijd voor de '7'/'9'-toetsen" + +msgid "Customize" +msgstr "Diverse instellingen" + +msgid "Customize channel list cursor behavior" +msgstr "Pas het gedrag van de zenderlijst cursor aan" + +msgid "Cut" +msgstr "Knip" + +msgid "Cutlist editor..." +msgstr "Cutlijst editor" + +msgid "Czech" +msgstr "Tsjechisch" + +msgid "D" +msgstr "D" + +msgid "DHCP" +msgstr "DHCP" + +msgid "DMM advanced" +msgstr "DMM geavanceerd" + +msgid "DMM normal" +msgstr "DMM normaal" + +msgid "DUAL LAYER DVD" +msgstr "DUAL LAYER DVD" + +msgid "DVB subtitle black transparency" +msgstr "Zwarte transparantie van DVB ondertitels" + +msgid "DVB-C" +msgstr "DVB-C" + +msgid "DVB-C ANNEX C" +msgstr "DVB-C ANNEX C" + +msgid "DVB-S" +msgstr "DVB-S" + +msgid "DVB-S2" +msgstr "DVB-S2" + +msgid "DVB-T" +msgstr "DVB-T" + +msgid "DVB-T2" +msgstr "DVB-T2" + +msgid "DVD data format" +msgstr "DVD dataformaat" + +msgid "DVD file browser" +msgstr "DVD bestandszoeker" + +msgid "DVD media toolbox" +msgstr "DVD medium gereedschap" + +msgid "DVD player" +msgstr "DVD-speler" + +msgid "DVD titlelist" +msgstr "DVD titellijst" + +msgid "Danish" +msgstr "Deens" + +msgid "Date" +msgstr "Datum" + +msgid "Date/time input" +msgstr "Tijd / Datum invoer" + +msgid "Deep standby" +msgstr "Volledig uitschakelen" + +msgid "Default" +msgstr "Standaard" + +msgid "Default movie location" +msgstr "Standaard opnamelocatie" + +msgid "Default settings" +msgstr "Standaard instellingen" + +msgid "Delay before key repeat starts:" +msgstr "Wachttijd voor toetsherhaling begint:" + +msgid "Delay for external subtitles" +msgstr "Vertraging voor externe ondertitels" + +msgid "Delete" +msgstr "Verwijderen" + +msgid "Delete entry" +msgstr "Verwijder invoer" + +msgid "Delete failed!" +msgstr "Verwijderen mislukt!" + +msgid "Delete file" +msgstr "Verwijder bestand" + +msgid "Delete playlist entry" +msgstr "Verwijder een item uit de afspeellijst" + +msgid "Delete saved playlist" +msgstr "Verwijder een opgeslagen afspeellijst" + +msgid "Delete timer" +msgstr "Verwijder timer" + +msgid "Delete..." +msgstr "Verwijder..." + +msgid "Deleted" +msgstr "Verwijderd" + +msgid "Deleted items" +msgstr "Verwijderde bestanden" + +msgid "Depth" +msgstr "Diepte" + +msgid "Descramble http streams" +msgstr "Decoderen van http streams" + +msgid "Description" +msgstr "Beschrijving" + +msgid "Deselect" +msgstr "Deselecteer" + +msgid "Details for plugin: " +msgstr "Plugin details:" + +msgid "Detected HDD:" +msgstr "Gedetecteerde harde schijf:" + +msgid "Detected NIMs:" +msgstr "Gedetecteerde tuners:" + +msgid "Devicename:" +msgstr "Apparaatnaam:" + +msgid "Devide" +msgstr "Verdelen" + +msgid "DiSEqC" +msgstr "DiSEqC" + +msgid "DiSEqC 1.0 command" +msgstr "DiSEqC 1.0 commando" + +msgid "DiSEqC 1.1 command" +msgstr "DiSEqC 1.1 commando" + +msgid "DiSEqC 1.1 repeats" +msgstr "DiSEqC 1.1 herhalingen" + +msgid "DiSEqC A/B" +msgstr "DiSEqC A/B" + +msgid "DiSEqC A/B/C/D" +msgstr "DiSEqC A/B/C/D" + +msgid "DiSEqC mode" +msgstr "DiSEqC-modus" + +#, python-format +msgid "DiSEqC port %s: %s" +msgstr "DiSEqC poort %s: %s" + +msgid "DiSEqC-tester settings" +msgstr "DiSEqC tester instellingen" + +msgid "Dialing:" +msgstr "Kiezen:" + +msgid "Digital contour removal" +msgstr "Digitale contour verwijderen" + +msgid "Direct playback of linked titles without menu" +msgstr "Direct afspelen van titels zonder menu" + +msgid "Directory" +msgstr "Map" + +#, python-format +msgid "Directory %s does not exist." +msgstr "Map %s bestaat niet." + +#, python-format +msgid "Directory %s nonexistent." +msgstr "Directory %s bestaat niet." + +msgid "Directory browser" +msgstr "Bestandsverkenner" + +#, python-format +msgid "Directory contains %d file(s) and %d sub-directories.\n" +msgstr "Deze directory bevat %d bestand(en) en %d sub-directories.\n" + +#, python-format +msgid "Directory contains %s and %s." +msgstr "Directory bevat %s en %s." + +msgid "Disable" +msgstr "Uit" + +msgid "Disable Picture in Picture" +msgstr "Picture In Picture uitschakelen" + +msgid "Disable background scanning" +msgstr "Achtergrondscan uitschakelen" + +msgid "Disable timer" +msgstr "Timer uitschakelen" + +msgid "Disabled" +msgstr "Gedeactiveerd" + +msgid "Disconnect" +msgstr "Verbreken" + +msgid "Disk space to reserve for recordings (in GB)" +msgstr "Te reserveren schijfruimte voor opnames (in GB)" + +msgid "Display 16:9 content as" +msgstr "Toon 16:9 materiaal als" + +msgid "Display 4:3 content as" +msgstr "Toon 4:3 materiaal als" + +msgid "Display >16:9 content as" +msgstr "Toon >16:9 materiaal als" + +msgid "Display and userinterface" +msgstr "Display en gebruikersinterface" + +msgid "Display message before playing next movie" +msgstr "Een bericht weergeven voordat de volgende film start" + +msgid "Display setup" +msgstr "Instellingen voor het display" + +msgid "Do not change" +msgstr "Niet wijzigen" + +msgid "Do not record" +msgstr "Niet opnemen" + +msgid "Do nothing" +msgstr "Geen actie" + +msgid "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" +msgstr "" +"Wilt u het bestandssysteem echt controleren?\n" +"Dit kan heel lang duren!" + +msgid "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" +msgstr "" +"Bent u er zeker van dat u het bestandssysteem wilt converteren?\n" +"Er is geen weg terug!" + +#, python-format +msgid "Do you really want to delete %s?" +msgstr "Wilt u %s echt wissen?" + +#, python-format +msgid "" +"Do you really want to download\n" +"the plugin \"%s\"?" +msgstr "" +"Wilt u echt de plugin \n" +"\"%s\" downloaden?" + +msgid "Do you really want to exit?" +msgstr "Echt afbreken?" + +msgid "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" +msgstr "" +"Wilt u het apparaat echt initialiseren?\n" +"Alle gegevens worden dan verwijderd!" + +#, python-format +msgid "" +"Do you really want to remove\n" +"the plugin \"%s\"?" +msgstr "" +"Wilt u de \"%s\" plugin\n" +"echt verwijderen ?" + +#, python-format +msgid "Do you really want to remove directory %s from the disk?" +msgstr "Weet u zeker dat u map %s van de harde schijf wilt wissen?" + +#, python-format +msgid "Do you really want to remove your bookmark of %s?" +msgstr "Weet u zeker dat u de het markeerpunt van %s wilt wissen?" + +msgid "Do you want this?" +msgstr "Wilt u dit doen?" + +msgid "Do you want to burn this collection to DVD medium?" +msgstr "Wilt u deze selectie op een DVD branden?" + +msgid "Do you want to do a service scan?" +msgstr "Wilt u nu zenders gaan zoeken?" + +msgid "Do you want to do another manual service scan?" +msgstr "Wilt u opnieuw handmatig zoeken?" + +#, python-format +msgid "Do you want to download the image to %s ?" +msgstr "Wilt u de image naar %s downloaden?" + +msgid "Do you want to install a channel list?" +msgstr "Wilt u een zenderlijst installeren?" + +msgid "Do you want to install the package:\n" +msgstr "Wilt u dit pakket installeren:\n" + +msgid "Do you want to play DVD in drive?" +msgstr "Wilt u de DVD in de speler afspelen?" + +msgid "Do you want to preview this DVD before burning?" +msgstr "Wilt u de DVD bekijken alvorens deze te branden?" + +msgid "Do you want to reboot your receiver?" +msgstr "Wilt u de ontvanger opnieuw opstarten?" + +msgid "Do you want to remove the package:\n" +msgstr "Wilt u dit pakket verwijderen:\n" + +msgid "Do you want to restore your settings?" +msgstr "Wilt u uw instellingen nu terugzetten?" + +msgid "Do you want to resume this playback?" +msgstr "Wilt u het afspelen vervolgen?" + +#, python-format +msgid "Do you want to update your receiver to %s?" +msgstr "Wilt u uw ontvanger updaten naar %s?" + +msgid "Do you want to update your receiver?" +msgstr "Wilt u de ontvanger updaten?" + +msgid "Do you want to upgrade the package:\n" +msgstr "Wilt u een upgrade van dit pakket:\n" + +msgid "Don't stop current event but disable coming events" +msgstr "Huidige timer niet stoppen, maar toekomstige timers uitschakelen" + +#, python-format +msgid "Done - Installed, upgraded or removed %d package (%s)" +msgid_plural "Done - Installed, upgraded or removed %d packages (%s)" +msgstr[0] "Gereed - %d pakket geïnstalleerd, vervangen of verwijderd (%s)" +msgstr[1] "Gereed - %d pakketten geïnstalleerd, vervangen of verwijderd (%s)" + +msgid "Download" +msgstr "Downloaden" + +#, python-format +msgid "Download %s from server" +msgstr "Download %s van de server" + +msgid "Download .NFI-files for USB-flasher" +msgstr "Download .NFI-bestanden voor USB-flasher" + +msgid "Download plugins" +msgstr "Downloaden" + +msgid "Downloadable new plugins" +msgstr "Beschikbare plugins" + +msgid "Downloadable plugins" +msgstr "Beschikbare plugins" + +msgid "Downloading" +msgstr "Bezig met downloaden" + +msgid "Downloading plugin information. Please wait..." +msgstr "Applicatie informatie ophalen. Een ogenblik aub..." + +msgid "Dutch" +msgstr "Nederlands" + +msgid "Dynamic contrast" +msgstr "Dynamisch contrast" + +msgid "E" +msgstr "O" + +msgid "EPG" +msgstr "EPG" + +msgid "EPG language selection 1" +msgstr "EPG taalselectie 1" + +msgid "EPG language selection 2" +msgstr "EPG taalselectie 2" + +msgid "EPG selection" +msgstr "EPG selectie" + +msgid "EPG settings" +msgstr "EPG instellingen" + +#, python-format +msgid "ERROR - failed to scan (%s)!" +msgstr "Fout - zoeken mislukt (%s)!" + +msgid "East" +msgstr "Oost" + +msgid "East limit set" +msgstr "Oost-limiet gezet" + +msgid "Edit" +msgstr "Bewerk" + +msgid "Edit DNS" +msgstr "DNS wijzigen" + +msgid "Edit bouquets list" +msgstr "Bouquetlijst aanpassen" + +msgid "Edit chapters of current title" +msgstr "Wijzig hoofdstuk van de huidige titel" + +msgid "Edit services list" +msgstr "Wijzig zenderlijst" + +msgid "Edit settings" +msgstr "Instellingen wijzigen" + +msgid "Edit the nameserver configuration of your receiver.\n" +msgstr "" +"Pas de nameserver-configuratie van uw ontvanger aan.\n" +"\n" + +msgid "Edit the network configuration of your receiver.\n" +msgstr "" +"Pas de netwerk-configuratie aan.\n" +"\n" + +msgid "Edit timer" +msgstr "Wijzig timer" + +msgid "Edit title" +msgstr "Wijzig titel" + +msgid "Edit upgrade source url." +msgstr "Upgrade url bewerken." + +msgid "Education/Science/..." +msgstr "educatie/wetenschap/..." + +msgid "Electronic Program Guide" +msgstr "Elektronische Programma Gids" + +msgid "Enable" +msgstr "Aan" + +msgid "Enable 'neutrino' style channel select controlling" +msgstr "Kanaalkeuze volgens de 'neutrino stijl' aktiveren " + +msgid "Enable 'neutrino' style zap controlling" +msgstr "Gebruik de 'neutrino' manier om te zappen" + +msgid "Enable 5V for active antenna" +msgstr "5V voor actieve antenne inschakelen" + +msgid "Enable EIT EPG" +msgstr "EIT EPG inschakelen" + +msgid "Enable MHW EPG" +msgstr "MHW EPG inschakelen" + +msgid "Enable Netmed EPG" +msgstr "Netmed EPG inschakelen" + +msgid "Enable OK for channel selection" +msgstr "Zenderlijst via OK openen" + +msgid "Enable ViaSat EPG" +msgstr "Viasat EPG inschakelen" + +msgid "Enable Virgin EPG" +msgstr "Virgin EPG inschakelen" + +msgid "Enable Wake On LAN" +msgstr "Activeer Wake On LAN" + +msgid "Enable auto fast scan" +msgstr "Activeer auto fastscan" + +msgid "Enable bouquet selection in multi-EPG" +msgstr "" +"Indien geactiveerd, dan wordt het bouquet selectiemenu weergegeven in de " +"multi-EPG." + +msgid "Enable freesat EPG" +msgstr "Freesat EPG inschakelen" + +msgid "Enable multiple bouquets" +msgstr "Zenders in meerdere bouquetten toestaan" + +msgid "Enable parental control" +msgstr "Kinderslot inschakelen" + +msgid "Enable teletext caching" +msgstr "Teletext caching inschakelen" + +msgid "Enable zapping with CH+/-, B+/-, P+/-" +msgstr "Zappen met de CH +/-, B +/-, P +/- inschakelen" + +msgid "Enabled" +msgstr "Ingeschakeld" + +msgid "Encrypted: " +msgstr "Gecodeerd" + +msgid "Encryption" +msgstr "Codering" + +msgid "Encryption key" +msgstr "Coderingssleutel" + +msgid "Encryption key type" +msgstr "Coderingssleuteltype" + +msgid "Encryption:" +msgstr "Codering:" + +msgid "End time" +msgstr "Eindtijd" + +msgid "End time to ignore inactivity sleeptimer" +msgstr "De eindtijd die de inactiviteit sleeptimer negeert" + +msgid "End time to ignore shutdown in standby" +msgstr "Eind tijd om in standby gaan te negeren" + +msgid "English" +msgstr "Engels" + +msgid "Enigma2 skin selector" +msgstr "Enigma2 skinkeuze" + +msgid "Enter main menu..." +msgstr "Ga naar hoofdmenu..." + +msgid "Enter pin code" +msgstr "Voer pincode in" + +msgid "Enter the service pin" +msgstr "Voer de zender pincode in" + +msgid "Equal to" +msgstr "gelijk aan" + +msgid "Error" +msgstr "Fout" + +msgid "Error code" +msgstr "Foutcode" + +msgid "Error executing plugin" +msgstr "Fout bij uitvoeren plugin" + +#, python-format +msgid "" +"Error: %s\n" +"Retry?" +msgstr "" +"Fout: %s\n" +"Opnieuw?" + +msgid "Estonian" +msgstr "Ests" + +msgid "Ethernet network interface" +msgstr "Ethernet netwerkinterface" + +msgid "Event font size (relative to skin size)" +msgstr "Fontgrootte van de programmaomschrijving (skinafhankelijke grootte)" + +msgid "Event view" +msgstr "Programmaoverzicht" + +msgid "Event view menu" +msgstr "Programmaoverzichtsmenu" + +msgid "Everywhere" +msgstr "Overal" + +msgid "Exceeds dual layer medium!" +msgstr "Overschrijdt een dual layer schijf" + +msgid "Execution finished!!" +msgstr "Voortgang voltooid!" + +msgid "Execution progress:" +msgstr "Voortgang extern commando:" + +msgid "Exif" +msgstr "Exif" + +msgid "Exit" +msgstr "Afsluiten" + +msgid "Exit EPG" +msgstr "EPG afsluiten" + +msgid "Exit editor" +msgstr "Editor afsluiten" + +msgid "Exit input device selection." +msgstr "Beëindig invoerapparaatselectie" + +msgid "Exit media player?" +msgstr "Mediaplayer afsluiten?" + +msgid "Exit mediaplayer" +msgstr "Mediaspeler afsluiten" + +msgid "Exit movie list" +msgstr "Verlaten van de opnamelijst" + +msgid "Exit movie player?" +msgstr "Movieplayer beëindigen?" + +msgid "Exit nameserver configuration" +msgstr "Verlaat de naamserver configuratie" + +msgid "Exit network interface list" +msgstr "Verlaat het netwerkinterfaceoverzicht" + +msgid "Exit network wizard" +msgstr "Verlaat netwerkwizard" + +msgid "Exit the wizard" +msgstr "Wizard afsluiten" + +msgid "Expert" +msgstr "Expert" + +msgid "Extend sleeptimer 15 minutes" +msgstr "Verleng de sleeptimer met 15 minuten" + +msgid "Extended Software" +msgstr "Uitgebreide software" + +msgid "Extended Software Plugin" +msgstr "Uitgebreide software plugin" + +msgid "Extended network setup plugin..." +msgstr "Uitgebreide netwerkinstellingen plugin..." + +msgid "Extended setup..." +msgstr "Uitgebreide instellingen..." + +msgid "Extensions" +msgstr "Applicaties" + +msgid "Extensions management" +msgstr "Beheer Applicaties" + +msgid "External PiP" +msgstr "Externe PIP" + +msgid "External subtitle color" +msgstr "Kleur van de externe ondertitel" + +msgid "Extra motor options" +msgstr "Extra motor opties" + +msgid "FEC" +msgstr "FEC" + +msgid "FTA" +msgstr "FTA" + +msgid "Factory reset" +msgstr "Fabrieksinstellingen" + +msgid "Failed" +msgstr "Mislukt" + +msgid "Failed to write /tmp/positionersetup.log: " +msgstr "Kan niet naar /tmp/positionersetup.log schrijven: " + +#, python-format +msgid "Fan %d" +msgstr "Ventilator %d" + +#, python-format +msgid "Fan %d PWM" +msgstr "Ventilator %d PWM" + +#, python-format +msgid "Fan %d voltage" +msgstr "Ventilator %d voltage" + +msgid "Fan operation" +msgstr "Ventilator " + +msgid "Fan speed" +msgstr "Ventilator snelheid" + +msgid "Fast" +msgstr "Snel" + +msgid "Fast DiSEqC" +msgstr "Snelle DiSEqC" + +msgid "Fast Scan" +msgstr "Fast Scan" + +msgid "Fast epoch" +msgstr "Snel spoelen" + +msgid "Fast forward speeds" +msgstr "Vooruitspoelsnelheden" + +msgid "Favourites" +msgstr "Favorieten" + +msgid "File appears to be busy.\n" +msgstr "Bestand mogelijk in gebruik door ander proces.\n" + +msgid "Filesystem check" +msgstr "Bestandssysteemcontrole" + +msgid "Final position at" +msgstr "Eindpositie op" + +msgid "Final position at index" +msgstr "Eindpositie op index" + +msgid "Fine movement" +msgstr "Exact positioneren" + +msgid "Finetune" +msgstr "Fijn afst." + +msgid "Finished" +msgstr "Voltooid" + +msgid "Finished configuring your network" +msgstr "Klaar met het configureren van uw netwerk" + +msgid "Finished restarting your network" +msgstr "Herstarten van uw netwerk is voltooid" + +msgid "Finnish" +msgstr "Fins" + +msgid "Fixed" +msgstr "Vast" + +msgid "Flash" +msgstr "Flash" + +msgid "Flashing failed" +msgstr "Flashen mislukt" + +msgid "Following tasks will be done after you press OK!" +msgstr "Nadat u op OK drukt worden de volgende taken uitgevoerd!" + +msgid "Format" +msgstr "Formaat" + +msgid "Forward volume keys" +msgstr "Volumetoetsen doorsturen" + +msgid "Frame size in full view" +msgstr "Framegrootte in vol beeld" + +msgid "French" +msgstr "Frans" + +msgid "Frequency" +msgstr "Frequentie" + +msgid "Frequency bands" +msgstr "Frequentiebanden" + +msgid "Frequency scan step size(khz)" +msgstr "Frequentie scan stapgrootte(kHz)" + +msgid "Frequency steps" +msgstr "Frequentie stappen" + +msgid "Frequency:" +msgstr "Frequentie:" + +msgid "Fri" +msgstr "Vr" + +msgid "Friday" +msgstr "Vrijdag" + +msgid "From :" +msgstr "Van:" + +#, python-format +msgid "Frontprocessor version: %d" +msgstr "Frontprocessor versie: %d" + +msgid "Full transparency" +msgstr "Volledige transparantie" + +msgid "Fulview resulution" +msgstr "Resolutie van de volledige beeldgrootte" + +msgid "Function of OK button" +msgstr "De functie van de OK toets" + +msgid "Further Options" +msgstr "Extra opties" + +msgid "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" +msgstr "" +"De gebruikersinterface moet herstart worden om\n" +"de nieuwe skin te activeren. Nu herstarten?" + +msgid "Gateway" +msgstr "Gateway" + +msgid "General AC3 delay" +msgstr "Algehele AC3 vertraging" + +msgid "General PCM delay" +msgstr "Algehele PCM vertraging" + +msgid "Genre" +msgstr "Genre" + +msgid "German" +msgstr "Duits" + +msgid "Get latest experimental image" +msgstr "Haal de laatste experimentele image" + +msgid "Get latest release image" +msgstr "Haal de laatste release image" + +msgid "Getting plugin information. Please wait..." +msgstr "Gegevens worden opgehaald. Een ogenblik geduld aub..." + +msgid "Go down the list" +msgstr "Ga naar beneden" + +msgid "Go to first movie or last item" +msgstr "Ga naar de eerste film of einde van de lijst" + +msgid "Go to first movie or top of list" +msgstr "Ga naar de eerste film of begin van de lijst" + +msgid "Go to first service" +msgstr "Ga naar het eerste kanaal" + +msgid "Go to last service" +msgstr "Ga naar het laatste kanaal" + +msgid "Go to next event" +msgstr "Ga naar de volgende EPG info" + +msgid "Go to next page of service" +msgstr "Ga naar volgende pagina met kanalen" + +msgid "Go to previous event" +msgstr "Ga naar de vorige EPG info" + +msgid "Go to previous page of service" +msgstr "Ga naar de vorige pagina met kanalen" + +msgid "Go up the list" +msgstr "Ga naar boven" + +msgid "Goto" +msgstr "Ga naar" + +msgid "Goto 0" +msgstr "Naar 0 positie" + +msgid "Goto :" +msgstr "Ga naar:" + +msgid "Goto X" +msgstr "Goto X" + +msgid "Goto index position" +msgstr "Naar indexpositie" + +msgid "Goto next day of events" +msgstr "Ga naar de gebeurtenissen van de volgende dag " + +msgid "Goto next page of events" +msgstr "Naar de volgende pagina met EPG info" + +msgid "Goto position" +msgstr "Naar positie draaien" + +msgid "Goto previous day of events" +msgstr "Ga naar de gebeurtenissen van de vorige dag" + +msgid "Goto previous page of events" +msgstr "Naar vorige pagina met EPG info" + +msgid "Goto specific date/time" +msgstr "ga naar een specifieke datum / tijd" + +msgid "GotoX calibration" +msgstr "GotoX calibratie" + +msgid "GraphMultiEpg Settings" +msgstr "GraphMultiEPG instellingen" + +msgid "Graphical Multi EPG" +msgstr "Grafische Multi EPG" + +msgid "Greek" +msgstr "Grieks" + +msgid "Green boost" +msgstr "Groene impuls" + +msgid "Guard interval" +msgstr "Guard interval" + +msgid "HD list" +msgstr "HD lijst" + +msgid "HDMI-CEC setup" +msgstr "HDMI-CEC instellingen" + +msgid "Handle standby from TV" +msgstr "Reageer op TV standby" + +msgid "Handle wakeup from TV" +msgstr "Reageer op TV aanzetten" + +msgid "Hard disk" +msgstr "Harde schijf " + +msgid "Hard disk setup" +msgstr "Harde schijfinstellingen" + +msgid "Hard disk standby after" +msgstr "Harde schijf gaat in standby na" + +msgid "Harddisk" +msgstr "Harde schijf" + +msgid "Hardware: " +msgstr "Hardware: " + +msgid "Hebrew" +msgstr "Hebreeuws" + +msgid "Helps setting up your dish" +msgstr "Helpt u uw schotel in te stellen" + +msgid "Hidden network" +msgstr "Verborgen netwerk" + +msgid "Hide CI messages" +msgstr "Verberg CI meldingen" + +msgid "Hide channel list in radio mode" +msgstr "Verberg de zenderlijst gedurende radiomodus" + +msgid "Hide known extensions" +msgstr "Verberg bekende extenties" + +msgid "Hide number markers" +msgstr "Verberg de numerieke markeringen" + +msgid "Hide player" +msgstr "Afspelen op de achtergrond" + +msgid "Hide zap errors" +msgstr "Verberg zap fouten" + +msgid "Hierarchy info" +msgstr "Hiërarchie-info" + +msgid "Hierarchy information" +msgstr "Hiërarchie-informatie" + +msgid "High bitrate support" +msgstr "Hoge bitrate-ondersteuning" + +msgid "Hold screen" +msgstr "Stilstaand beeld" + +msgid "Hold till locked" +msgstr "Stilstaand beeld totdat de zender gelockt is" + +msgid "Home" +msgstr "Home" + +msgid "Horizontal" +msgstr "Horizontaal" + +msgid "Horizontal turning speed" +msgstr "Horizontale draaisnelheid" + +msgid "How many minutes do you want to record?" +msgstr "Hoeveel minuten wilt u opnemen?" + +msgid "Hue" +msgstr "Tint" + +msgid "Hungarian" +msgstr "Hongaars" + +msgid "IP address" +msgstr "IP-adres" + +msgid "ISO file is too large for this filesystem!" +msgstr "ISO betand is te groot voor dit bestandsysteem!" + +msgid "ISO path" +msgstr "ISO pad" + +msgid "Icons" +msgstr "Iconen" + +msgid "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." +msgstr "" +"Wanneer u dit ziet, is er iets mis met uw\n" +"scart aansluiting. Druk op OK om terug te keren." + +msgid "" +"If your TV has a brightness or contrast enhancement, disable it. If there is " +"something called \"dynamic\", set it to standard. Adjust the backlight level " +"to a value suiting your taste. Turn down contrast on your TV as much as " +"possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the " +"two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next " +"step.\n" +"If you are happy with the result, press OK." +msgstr "" +"Indien uw TV over contrast- of helderheidsoptimalisatie opties en andere " +"'beeldverbeteraars' beschikt, zet deze dan uit!\n" +"Instellingen als 'Dynamic', op standaard instellen.\n" +"Stel bij een LCD TV de achtergrondverlichting op een niveau in dat u " +"bevalt.\n" +"Zet het 'contrast' zo laag mogelijk.\n" +"Daarna de 'helderheid' zo laag mogelijk instellen, maar wel zodanig dat ook " +"de donkerste grijstinten zichtbaar zijn.\n" +"Let nu even niet op de heldere vlakken. Die worden pas bij de volgende stap " +"ingesteld.\n" +"\n" +"Indien het resultaat nu goed is, drukt u op OK." + +msgid "Image: " +msgstr "Image: " + +msgid "Immediate shutdown" +msgstr "Direct uitschakelen" + +msgid "" +"In order to record a timer, the TV was switched to the recording service!\n" +msgstr "Vanwege een geplande opname is naar het juiste kanaal geschakeld!\n" + +msgid "In progress" +msgstr "Is bezig" + +msgid "Inactivity Sleeptimer" +msgstr "Inactiviteits Sleeptimer" + +msgid "Include AIT in http streams" +msgstr "Neem AIT op in http streams" + +msgid "Include ECM in http streams" +msgstr "Neem ECM op in http streams" + +msgid "Include EIT in http streams" +msgstr "Neem EIT op in http streams" + +msgid "Incorrect type service for PiP!" +msgstr "Onjuist service type voor PIP!" + +msgid "Increased voltage" +msgstr "Verhoogd voltage" + +msgid "Index" +msgstr "Index" + +msgid "Index allocated:" +msgstr "Index gespecificeerd:" + +msgid "Info" +msgstr "Informatie" + +msgid "Info bar" +msgstr "Informatiebalk" + +msgid "Info bar timeout" +msgstr "Informatiebalk time-out" + +msgid "Infobar frontend data source" +msgstr "Infobalk data bron" + +msgid "Information" +msgstr "Informatie" + +msgid "Init" +msgstr "Initialiseren" + +msgid "Initial fast forward speed" +msgstr "Initiële vooruitspoelsnelheid" + +msgid "Initial location in new timers" +msgstr "Initiële plaats in nieuwe timers" + +msgid "Initial lock ratio" +msgstr "Initiële lock verhouding" + +msgid "Initial rewind speed" +msgstr "Initiële terugspoelsnelheid" + +msgid "Initial signal quality" +msgstr "Initiële signaalkwaliteit" + +msgid "Initial signal quality:" +msgstr "Initiële signaalkwaliteit:" + +msgid "Initialization" +msgstr "Initialiseren" + +msgid "Initialize" +msgstr "Initialiseer" + +msgid "Initializing storage device..." +msgstr "Opslagapparaat initialiseren" + +msgid "Input" +msgstr "Invoer" + +msgid "Input device setup" +msgstr "Invoerapparaat setup" + +msgid "Input devices" +msgstr "Invoerapparaten" + +msgid "Install" +msgstr "Installeer" + +msgid "Install a new image with a USB stick" +msgstr "Installeer een nieuwe image d.m.v. een USB-stick" + +msgid "Install a new image with your web browser" +msgstr "Installeer een nieuwe image via uw browser" + +msgid "Install channel list" +msgstr "Plaats een zenderlijst" + +msgid "Install extensions" +msgstr "Installeer applicaties" + +msgid "Install extensions." +msgstr "Installeer applicaties." + +msgid "Install local extension" +msgstr "Installeer plugins lokaal" + +msgid "Install picons on" +msgstr "Installeer picons op" + +msgid "Install softcam" +msgstr "Installeer softcam" + +msgid "Installation has completed." +msgstr "Installatie is gereed" + +msgid "Installation or removal has completed." +msgstr "Het installeren of verwijderen is voltooid." + +msgid "Installing" +msgstr "Installeert" + +msgid "Installing software..." +msgstr "De software wordt geïnstalleerd..." + +msgid "Instant recording location" +msgstr "Opnamelocatie directe opnames" + +msgid "Instant recording..." +msgstr "Directe opname..." + +msgid "Interface: " +msgstr "Interface: " + +msgid "Intermediate" +msgstr "Gevorderde" + +msgid "Internal flash" +msgstr "Intern geheugen" + +msgid "Internal hdd only" +msgstr "Alleen interne harddisk" + +msgid "Interval between keys when repeating:" +msgstr "Tijd tussen toetsherhaling" + +#, python-format +msgid "Invalid directory selected: %s" +msgstr "Ongeldige map geselecteerd: %s" + +msgid "Invalid location" +msgstr "Ongeldige locatie" + +msgid "Invalid transponder data" +msgstr "Onjuiste transponder data" + +msgid "Inversion" +msgstr "Inversie" + +msgid "Invert" +msgstr "Iverteer" + +msgid "Ipkg" +msgstr "Ipkg" + +msgid "Is this setting ok?" +msgstr "Zijn deze instellingen correct?" + +msgid "Is this video mode ok?" +msgstr "Is deze videomode correct?" + +msgid "Italian" +msgstr "Italiaans" + +msgid "Items per page " +msgstr "Items per pagina" + +msgid "Items per page for list screen" +msgstr "Aantal regels in de lijstmode" + +msgid "Job overview" +msgstr "Voortgang" + +msgid "Jump to beginning of list" +msgstr "Spring naar het begin van de lijst" + +msgid "Jump to end of list" +msgstr "Stap naar het eind van de lijst" + +msgid "Jump to next marked position" +msgstr "Spring naar de volgende markering" + +msgid "Jump to previous marked position" +msgstr "Spring naar de vorige markering" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect) +msgid "Just scale" +msgstr "Alleen schalen" + +msgid "Keep service" +msgstr "Behoud service" + +msgid "Kernel version: " +msgstr "Kernel versie: " + +msgid "Keyboard" +msgstr "Toetsenbord..." + +msgid "Keyboard map" +msgstr "Toetsenbordlayout" + +msgid "Keyboard setup" +msgstr "Toetsenbordinstelling" + +msgid "LAN adapter" +msgstr "LANadapter" + +msgid "LAN connection" +msgstr "LAN verbinding" + +msgid "LNB" +msgstr "LNB" + +msgid "Language" +msgstr "Taal" + +msgid "Language selection" +msgstr "Taalkeuze" + +msgid "Last config" +msgstr "Laatste configuratie" + +msgid "Last speed" +msgstr "Laatste snelheid" + +msgid "Last upgrade: " +msgstr "Laatste upgrade: " + +msgid "Latest Commits" +msgstr "Laatste Commits" + +msgid "Latitude" +msgstr "Breedtegraad" + +msgid "Latvian" +msgstr "Lets" + +msgid "Leave DVD player?" +msgstr "Verlaat de DVD-speler?" + +msgid "Left" +msgstr "Links" + +msgid "Left from servicename" +msgstr "Links van de kanaalnaam" + +msgid "Leisure hobbies" +msgstr "Vrijetijd hobbies" + +#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term. +msgid "Letterbox" +msgstr "Letterbox" + +msgid "Letterbox zoom" +msgstr "Letterbox zoom" + +msgid "Limit character set for recording filenames" +msgstr "Beperk de tekenset voor de namen van de opnames" + +msgid "Limit east" +msgstr "Limiet oost" + +msgid "" +"Limit the characters that can be used in recording filenames to (7 bit) " +"ascii. This ensures compatibility with operating systems or file systems " +"with limited character sets." +msgstr "" +"Indien geactiveerd beperkt u het aantal karakters wat gebruikt wordt voor de " +"namen van de opnames (7 bit ascii). Dit zorgt ervoor dat de compatibiliteit " +"tussen besturings-systemen of bestandssystemen met een beperkte tekenset " +"gewaarborgd is." + +msgid "Limit west" +msgstr "Limiet west" + +msgid "Limits cancelled" +msgstr "Limieten afgebroken" + +msgid "Limits enabled" +msgstr "Limieten aangezet" + +msgid "Limits off" +msgstr "Limieten uit" + +msgid "Limits on" +msgstr "Limieten aan" + +msgid "Link quality:" +msgstr "Kwaliteit van de verbinding:" + +msgid "Link:" +msgstr "Verbinding:" + +msgid "Linked titles with a DVD menu" +msgstr "Verbind titels met een DVD menu" + +msgid "List EPG functions..." +msgstr "Overzicht van EPG functies..." + +msgid "List available networks" +msgstr "Toon beschikbare netwerken" + +msgid "List mode" +msgstr "Lijstmode" + +msgid "List of storage devices" +msgstr "Overzicht van opslagmedia" + +msgid "List type" +msgstr "Lijsttype" + +#, python-format +msgid "List version %d, found %d channel" +msgid_plural "List version %d, found %d channels" +msgstr[0] "Lijstversie %d, %d zender gevonden" +msgstr[1] "Lijstversie %d, %d zenders gevonden" + +msgid "Listen to the radio..." +msgstr "Luister naar de radio..." + +msgid "Lists reloaded!" +msgstr "Lijsten opnieuw ingeladen!" + +msgid "Lithuanian" +msgstr "Litouws" + +msgid "Load" +msgstr "Laden" + +msgid "Load Length of Movies in Movielist" +msgstr "Laadt de tijdsduur van de films in de opnamelijst" + +msgid "Load length of movies in movie list" +msgstr "Toon lengte van opnames in opnamemenu" + +msgid "Load playlist" +msgstr "Afspeellijst laden" + +msgid "Local network" +msgstr "Locaal netwerk" + +msgid "Location" +msgstr "Locatie" + +msgid "Location for instant recordings" +msgstr "Opnamelocatie directe opnames" + +msgid "Lock ratio" +msgstr "Lock verhouding" + +msgid "Lock:" +msgstr "Lock:" + +msgid "Log results to harddisk" +msgstr "Schrijf resultaten naar de harde schijf" + +msgid "Long filenames" +msgstr "Lange bestandsnamen" + +msgid "Long key press" +msgstr "Lange toetsdruk" + +msgid "Longitude" +msgstr "Lengtegraad" + +msgid "Loop through to" +msgstr "doorlus naar" + +msgid "Luxembourgish" +msgstr "Luxemburgs" + +msgid "MMC card" +msgstr "MMC kaart" + +msgid "MORE" +msgstr "MEER" + +msgid "Main menu" +msgstr "Hoofdmenu" + +msgid "Maintain old EPG data for" +msgstr "Oude EPG data bewaren voor" + +msgid "Make this mark an 'in' point" +msgstr "Markeer dit als 'in' punt" + +msgid "Make this mark an 'out' point" +msgstr "Markeer dit als 'uit' punt" + +msgid "Make this mark just a mark" +msgstr "Universele markering" + +msgid "Manage extensions" +msgstr "Beheer applicaties" + +msgid "Manage your receiver's software" +msgstr "Beheer de software van uw ontvanger" + +msgid "Manual" +msgstr "Handmatig" + +msgid "Manual Scan" +msgstr "Handmatig zoeken" + +msgid "Manual configuration" +msgstr "Handmatige configuratie" + +msgid "Manual scan" +msgstr "Handmatig zoeken" + +msgid "Manual transponder" +msgstr "Transponder handmatig" + +msgid "Manufacturer" +msgstr "Fabrikant" + +msgid "Margin after recording (minutes)" +msgstr "Marge na een opname (minuten)" + +msgid "Margin before recording (minutes)" +msgstr "Marge voor een opname (minuten)" + +msgid "Max memory positions" +msgstr "Maximale aantal geheugenposities" + +msgid "Max. bitrate: " +msgstr "Max. bitrate: " + +msgid "Media player" +msgstr "Mediaspeler" + +msgid "Media scanner" +msgstr "Mediascanner" + +msgid "Medium is not a writeable DVD!" +msgstr "Dit medium is geen beschrijfbare DVD!" + +msgid "Medium is not empty!" +msgstr "Medium is niet leeg!" + +msgid "Memory" +msgstr "Geheugen" + +msgid "Memory index" +msgstr "Geheugenindex" + +msgid "Menu" +msgstr "Menu" + +msgid "Message" +msgstr "Bericht" + +msgid "Message..." +msgstr "Bericht..." + +#, python-format +msgid "Minimum age %d years" +msgstr "Minimumleeftijd %d jaar" + +msgid "Minimum send interval" +msgstr "Minimum verzend interval" + +msgid "Missing " +msgstr "Ontbrekend" + +msgctxt "Satellite configuration mode" +msgid "Mode" +msgstr "Modus " + +msgctxt "Video output mode" +msgid "Mode" +msgstr "Modus " + +msgid "Model: " +msgstr "Model: " + +msgid "Modulation" +msgstr "Modulatie" + +msgid "Modulator" +msgstr "Modulator" + +msgid "Mon" +msgstr "Ma" + +msgid "Mon-Fri" +msgstr "Ma - Vr" + +msgid "Monday" +msgstr "Maandag" + +msgid "Mosquito noise reduction" +msgstr "Omgevingsgeluidonderdrukking" + +msgid "Mount" +msgstr "Mount" + +msgid "Mount again" +msgstr "Opnieuw mounten" + +msgid "Move" +msgstr "Verplaats" + +msgid "Move PiP to main picture" +msgstr "Verplaats het PiP beeld naar het hoofdbeeld" + +msgid "Move Picture in Picture" +msgstr "Verplaats het PiP scherm" + +msgid "Move east" +msgstr "Draai oost" + +msgid "Move to other directory" +msgstr "Verplaats naar andere directory" + +msgid "Move to position X" +msgstr "Ga naar positie X" + +msgid "Move west" +msgstr "Draai west" + +msgid "Moved to position 0" +msgstr "Naar positie 0 gedraaid" + +msgid "Moved to position at index" +msgstr "Gedraaid naar positie op index" + +msgid "Movement" +msgstr "Verdraaiing" + +msgid "Movie List Configuration" +msgstr "Opnamelijst configuratie" + +msgid "Movie Selection" +msgstr "Filmkeuze" + +msgid "Movie list configuration" +msgstr "Configuratie van de opnamelijst" + +msgid "Movie location" +msgstr "Opnamelocatie" + +msgid "Movie selection" +msgstr "Filmselectie" + +msgid "Movie/Drama" +msgstr "film / drama" + +msgid "Movielist menu" +msgstr "Opnamelijstmenu" + +msgid "Moving" +msgstr "Draaien" + +msgid "Moving east ..." +msgstr "Draaien naar oost ..." + +msgid "Moving to position" +msgstr "Draaien naar positie" + +msgid "Moving west ..." +msgstr "Draaien naar west ..." + +msgid "Multi EPG" +msgstr "Multi EPG" + +msgid "Multi-EPG bouquet selection" +msgstr "Multi-EPG bouquet selectie" + +msgid "Multimedia" +msgstr "Multimedia" + +msgid "Multiple service support" +msgstr "Geschikt voor meervoudig decoderen" + +msgid "Multiplex" +msgstr "Multiplex" + +msgid "Multisat" +msgstr "Multisat. Handmatig" + +msgid "Multisat all select" +msgstr "Multisat, alles geselecteerd" + +msgid "Music/Ballet/Dance" +msgstr "muziek / ballet / dans" + +msgid "Mute" +msgstr "Geluid uit" + +msgid "N/A" +msgstr "Niet beschikbaar" + +msgid "NEXT" +msgstr "VOLGENDE" + +msgid "NFI image flashing" +msgstr "NFI image flashen" + +msgid "NFI image flashing completed. Press Yellow to Reboot!" +msgstr "NFI image schrijven is gereed. Druk op gele toets om te herstarten!" + +msgid "NIM" +msgstr "NIM" + +msgid "NOW" +msgstr "NU" + +msgid "NTSC" +msgstr "NTSC" + +msgid "Name" +msgstr "Naam" + +msgid "Nameserver" +msgstr "Nameserver" + +#, python-format +msgid "Nameserver %d" +msgstr "Nameserver %d" + +msgid "Nameserver settings" +msgstr "Nameserver-instellingen" + +msgid "Nameserver setup" +msgstr "Instellingen van de nameserver" + +msgid "Namespace" +msgstr "Ruimte voor naam" + +msgid "Netmask" +msgstr "Netmask" + +msgid "Network" +msgstr "Netwerk" + +msgid "Network ID" +msgstr "Netwerk ID" + +msgid "Network configuration..." +msgstr "Netwerkconfiguratie..." + +msgid "Network mount" +msgstr "Netwerkmount" + +#, python-format +msgid "Network mount %s" +msgstr "Netwerkmount %s" + +msgid "Network name (SSID)" +msgstr "Netwerknaam (SSID)" + +msgid "Network scan" +msgstr "Netwerk doorzoeken" + +msgid "Network setup" +msgstr "Netwerkinstellingen" + +msgid "Network test" +msgstr "Netwerktest" + +msgid "Network test..." +msgstr "Netwerktest..." + +msgid "Network test: " +msgstr "Netwerktest: " + +msgid "Network wizard" +msgstr "Netwerkwizard" + +msgid "Network:" +msgstr "Netwerk:" + +msgid "New" +msgstr "Nieuw" + +msgid "New PIN" +msgstr "Nieuwe pincode" + +msgid "New version:" +msgstr "Nieuwe versie:" + +msgid "News Current Affairs" +msgstr "nieuws / actualiteiten" + +msgctxt "button label, 'next screen'" +msgid "Next" +msgstr "Volgende" + +msgctxt "now/next: 'next' event label" +msgid "Next" +msgstr "Straks" + +msgid "No" +msgstr "Nee" + +msgid "No (supported) DVDROM found!" +msgstr "Geen (ondersteunde) DVDROM gevonden!" + +msgid "No Connection" +msgstr "Geen verbinding" + +msgid "No HDD found or HDD not initialized!" +msgstr "Geen harde schijf gevonden of de harde schijf is niet geïnitialiseerd!" + +msgid "No backup needed" +msgstr "Geen backup nodig" + +msgid "No cable tuner found!" +msgstr "Geen kabeltuner gevonden!" + +msgid "" +"No data on transponder!\n" +"(Timeout reading PAT)" +msgstr "" +"Geen data op de transponder!\n" +"(Timeout reading PAT)" + +msgid "No delay" +msgstr "Geen vertraging" + +msgid "No description available." +msgstr "Geen beschrijving beschikbaar." + +msgid "No details for this image file" +msgstr "Geen details voor dit bestand:" + +msgid "No displayable files on this medium found!" +msgstr "Geen weer te geven bestanden op dit medium gevonden!" + +msgid "No event info found, recording indefinitely." +msgstr "Geen EPG gegevens gevonden. Opname voor onbepaalde tijd." + +msgid "" +"No fast winding possible yet.. but you can use the number buttons to skip " +"forward/backward!" +msgstr "" +"Snel spoelen is nog niet mogelijk.... u kunt echter de cijfertoetsen " +"gebruiken om te springen" + +msgid "No free index available" +msgstr "Geen vrije index beschikbaar" + +msgid "No free tuner!" +msgstr "Geen vrije tuner!" + +msgid "No network connection available." +msgstr "Geen netwerkverbinding beschikbaar" + +msgid "No networks found" +msgstr "Geen netwerken gevonden" + +msgid "No new plugins found" +msgstr "Geen nieuwe plugins gevonden" + +msgid "No positioner capable frontend found." +msgstr "Geen geschikte positioner gevonden." + +msgid "No satellites configured. Plese check your tuner setup." +msgstr "Geen satellieten ingesteld. Controleer uw tunerinstellingen." + +msgid "No service" +msgstr "Geen uitzending" + +msgid "No services/providers selected" +msgstr "Geen zender / provider gekozen" + +msgid "No standby" +msgstr "Geen standby" + +msgid "No suitable sat tuner found!" +msgstr "Geen passende satelliettuner gevonden!" + +msgid "No tags are set on these movies." +msgstr "Geen markeringen geplaatst op deze opnames." + +msgid "No timeout" +msgstr "Geen timeout" + +msgid "No to all" +msgstr "Nee op alles" + +msgid "No transparency" +msgstr "Geen transparantie" + +msgid "No tuner is configured for use with a diseqc positioner!" +msgstr "Er is geen tuner ingesteld voor gebruik van een DiSEqC motor!" + +msgid "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Geen tuner geactiveerd!\n" +"Controleer uw tunerinstellingen alvorens zenders te zoeken." + +msgid "No updates available" +msgstr " Geen updates beschikbaar." + +msgid "No updates available. Please try again later." +msgstr "Geen update beschikbaar. Probeer het later nogmaals." + +msgid "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" +msgstr "" +"Ongeldige pincode!\n" +"Wilt u de pincode nu wijzigen?\n" +"Indien u 'nee' kiest, blijft de zender onbeveiligd!" + +msgid "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" +msgstr "" +"Ongeldige menupincode!\n" +"Wilt u de menu pincode nu wijzigen?\n" +"Indien u 'nee' kiest, blijft het menu onbeveiligd!" + +msgid "No wireless networks found! Searching..." +msgstr "Geen draadloze netwerken gevonden! Zoeken..." + +msgid "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is " +"configured correctly." +msgstr "" +"Geen werkende locale netwerkadapter gevonden.\n" +"Controleer of er een netwerkkabel is aangesloten en of uw netwerk correct is " +"geconfigureerd." + +msgid "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your " +"network is configured correctly." +msgstr "" +"Geen werkende WIFI-adapter gevonden.\n" +"Controleer of er een compatibel WLAN apparaat is geplaatst en uw netwerk " +"correct is geconfigureerd." + +msgid "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable " +"your local network interface." +msgstr "" +"Geen werkende draadloze netwerkinterface gevonden.\n" +"Controleer of er een compatibel WLAN apparaat is geplaatst of activeer uw " +"locale netwerkinterface." + +msgid "No, but restart from begin" +msgstr "Nee, maar start opnieuw" + +msgid "No, do nothing." +msgstr "Nee, geen actie." + +msgid "No, just start my receiver" +msgstr "Nee, start de ontvanger." + +msgid "No, never" +msgstr "Nee, nooit" + +msgid "None" +msgstr "Geen" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right) +msgid "Nonlinear" +msgstr "Nonlineair" + +msgid "Normal mode" +msgstr "Normale mode" + +msgid "North" +msgstr "Noord" + +msgid "Norwegian" +msgstr "Noors" + +msgid "Not associated" +msgstr "Geen verband" + +msgid "Not configured" +msgstr "niet ingesteld" + +#, python-format +msgid "" +"Not enough disk space. Please free up some disk space and try again. (%d MB " +"required, %d MB available)" +msgstr "" +"Onvoldoende schijfruimte. Maak ruimte vrij en probeer het opnieuw (%d MB " +"noodzakelijk, %d MB beschikbaar)" + +msgid "Nothing connected" +msgstr "Niets aangesloten" + +msgid "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Niets gevonden!\n" +"Vóór het zoeken dient uw tuner correct ingesteld te zijn." + +msgctxt "now/next: 'now' event label" +msgid "Now" +msgstr "Nu" + +msgid "Now playing" +msgstr "Huidige weergave" + +msgid "" +"Now, use the contrast setting to turn up the brightness of the background as " +"much as possible, but make sure that you can still see the difference " +"between the two brightest levels of shades.If you have done that, press OK." +msgstr "" +"Gebruik nu 'contrast' om de helderheid van de achtergrond zo hoog mogelijk " +"in te stellen, maar zorg er wel voor dat u nog steeds de helderste grijze " +"vlakken van elkaar kunt onderscheiden.\n" +"\n" +"Indien het resultaat goed is, drukt u op OK." + +msgid "OK" +msgstr "Bevestigen" + +msgid "OK, guide me through the upgrade process" +msgstr "OK, mij tijdens de software update begeleiden" + +msgid "ONID" +msgstr "ONID" + +msgid "OSD name request" +msgstr "OSD naam aanvragen" + +msgid "OSD settings" +msgstr "OSD instellingen" + +msgid "OSD transparency" +msgstr "OSD transparantie" + +msgid "Off" +msgstr "Uit" + +msgid "Offline decode delay (ms)" +msgstr "Vertraging voor achteraf decoderen (ms)" + +msgid "Ok" +msgstr "Ok" + +msgid "On" +msgstr "Aan" + +msgid "On end of movie" +msgstr "Op het einde van de opname" + +msgid "On end of movie (as menu)" +msgstr "Aan het einde van de film (conform menu)" + +msgid "One" +msgstr "Een" + +msgid "Only extensions." +msgstr "Alleen applicaties." + +msgid "Only free scan" +msgstr "Alleen FTA zenders scannen" + +msgid "Open service list" +msgstr "Open de zenderlijst" + +msgid "Open the movie list" +msgstr "Open de opnamelijst" + +msgid "Orbital position" +msgstr "Orbit positie" + +msgid "Original" +msgstr "Origineel" + +msgid "Other" +msgstr "Anders" + +msgid "Output" +msgstr "Uitgang" + +msgid "Overwrite configuration files during software upgrade?" +msgstr "Configuratie bestanden tijdens de software update overschrijven?" + +msgid "Overwrite configuration files?" +msgstr "Configuratie bestanden overschrijven?" + +msgid "PAL" +msgstr "PAL" + +msgid "PCR PID" +msgstr "PCR PID" + +msgid "PIDs" +msgstr "PIDs" + +msgid "PIN code needed" +msgstr "Pincode benodigd" + +msgid "PLP ID" +msgstr "PLP ID" + +msgid "PMT PID" +msgstr "PMT PID" + +msgid "Package list update" +msgstr "Pakketlijst vernieuwen" + +msgid "Packet management" +msgstr "Pakketbeheer" + +msgid "Packet manager" +msgstr "Pakketbeheer" + +#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term +msgid "Pan&scan" +msgstr "Pan & Scan" + +msgid "Parent directory" +msgstr "Bovengelegen map" + +msgid "Parental control" +msgstr "Kinderslot" + +msgid "Parental control services editor" +msgstr "Kinderslot zendereditor" + +msgid "Parental control setup" +msgstr "Kinderslotinstellingen" + +msgid "Parental control type" +msgstr "Kinderslottype" + +msgid "Password" +msgstr "Wachtwoord" + +msgid "Pause" +msgstr "Pauze" + +msgid "Pause movie at end" +msgstr "Pauzeer afspelen aan het einde" + +msgid "Pause playback" +msgstr "Zet de weergave op pauze" + +msgid "Pauze/Continue playback" +msgstr "Pauze / Hervat afspelen" + +msgid "Percentage left" +msgstr "Percentage links" + +msgid "Percentage right" +msgstr "Percentage rechts" + +msgid "Permanently delete all recordings in the trash can?" +msgstr "Alle bestanden in de prullenbak nu permanent verwijderen?" + +msgid "Permanently remove all deleted items" +msgstr "Prullenbak leegmaken" + +msgid "Persian" +msgstr "Perzisch" + +msgid "Phone number" +msgstr "Telefoonnummer" + +msgid "PiP setup" +msgstr "PiP instellingen" + +msgid "Picon" +msgstr "Picon" + +msgid "Picon and service name" +msgstr "Picon en zendernaam" + +msgid "Picture player" +msgstr "Slideshow" + +#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term. +msgid "Pillarbox" +msgstr "Pillarbox" + +msgid "Pilot" +msgstr "Navigatie" + +msgid "Play" +msgstr "Afspelen" + +msgid "Play DVD" +msgstr "DVD afspelen" + +msgid "Play audio in background" +msgstr "Audio op de achtergrond afspelen" + +msgid "Play audio-CD..." +msgstr "Muziek CD afspelen..." + +msgid "Play back media files" +msgstr "Speel mediabestanden af" + +msgid "Play entry" +msgstr "Afspelen" + +msgid "Play from next mark or playlist entry" +msgstr "Afspelen vanaf het volgende markeerpunt of de volgende opname" + +msgid "Play from previous mark or playlist entry" +msgstr "Afspelen vanaf het vorige markeerpunt of de vorige opname" + +msgid "Play music..." +msgstr "Muziek afspelen..." + +msgid "Play next" +msgstr "Volgende afspelen" + +msgid "Play next (return to movie list)" +msgstr "Speel volgende (terug naar lijst)" + +msgid "Play next (return to previous service)" +msgstr "Speel volgende (terug naar live TV)" + +msgid "Play previous" +msgstr "Vorige afspelen" + +msgid "Play recorded movies..." +msgstr "Opname afspelen..." + +msgid "Please add titles to the compilation." +msgstr "Voeg aub titels toe aan de compilatie" + +msgid "Please change recording endtime" +msgstr "Wijzig de opname eindtijd aub." + +msgid "Please check your network settings!" +msgstr "Controleer uw netwerkinstellingen aub.!" + +msgid "Please choose an extension..." +msgstr "Kies een plugin aub..." + +msgid "" +"Please configure or verify your Nameservers by filling out the required " +"values.\n" +"When you are ready press OK to continue." +msgstr "" +"Configureer of controleer uw nameservers door de verplichte velden in te " +"vullen.\n" +"Druk op OK om verder te gaan." + +msgid "" +"Please configure your internet connection by filling out the required " +"values.\n" +"When you are ready press OK to continue." +msgstr "" +"Configureer uw internetverbinding door de verplichte velden in te vullen.\n" +"Druk op OK om verder te gaan." + +msgid "Please connect your receiver to the internet" +msgstr "Verbind uw ontvanger aub met het internet" + +msgid "Please do not change any values unless you know what you are doing!" +msgstr "Wijzig hier geen instellingen tenzij u precies weet wat u doet" + +msgid "Please enter a name for the new bouquet" +msgstr "Voer de naam voor uw nieuwe bouquet in" + +msgid "Please enter a name for the new marker" +msgstr "Voer de naam voor uw nieuwe markeerpunt in" + +msgid "Please enter a new filename" +msgstr "Voer aub een bestandsnaam in " + +msgid "Please enter filename (empty = use current date)" +msgstr "Voer een bestandsnaam in (leeg= huidige datum)" + +msgid "Please enter name of the new directory" +msgstr "Voer de naam van de nieuwe map in aub." + +msgid "Please enter new name:" +msgstr "Geef aub een nieuwe naam in:" + +msgid "Please enter the correct pin code" +msgstr "Gelieve de juiste pincode in te voeren" + +msgid "Please enter the old PIN code" +msgstr "Toets de oude pincode in aub." + +msgid "Please follow the instructions on the TV" +msgstr "Volg nu de instructies op uw TV" + +msgid "" +"Please note that the previously selected media could not be accessed and " +"therefore the default directory is being used instead." +msgstr "" +"Het eerder geselecteerde medium kon niet worden benaderd en om die reden " +"wordt nu de standaard map gebruikt." + +msgid "Please press OK to continue." +msgstr "Druk op OK om door te gaan." + +msgid "Please select a default EPG type..." +msgstr "Selecteer een standaard EPG type aub..." + +msgid "Please select a playlist to delete..." +msgstr "Selecteer de afspeellijst die u wilt verwijderen..." + +msgid "Please select a playlist..." +msgstr "Selecteer een afspeellijst..." + +msgid "Please select a sub service..." +msgstr "Selecteer aub een subzender..." + +msgid "Please select a subservice to record..." +msgstr "Selecteer een subzender voor opname aub..." + +msgid "Please select a subservice..." +msgstr "Selecteer een subzender..." + +msgid "Please select an NFI file and press green key to flash!" +msgstr "" +"Kies een NFI bestand en druk op de groene toets om het flashproces te " +"starten!" + +msgid "Please select medium to be scanned" +msgstr "Selecteer het te scannen medium..." + +msgid "Please select medium to use as backup location" +msgstr "Selecteer het te gebruiken medium als backuplocatie..." + +msgid "Please select tag to filter..." +msgstr "Selecteer markering om te filteren..." + +msgid "Please select the movie path..." +msgstr "Selecteer het opnamepad..." + +msgid "" +"Please select the network interface that you want to use for your internet " +"connection.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Selecteer de netwerkinterface die u wilt gebruiken voor uw " +"internetverbinding.\n" +"\n" +"Druk op OK om verder te gaan." + +msgid "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Selecteer het draadloze netwerk dat u wenst te gebruiken.\n" +"\n" +"Druk op OK om verder te gaan." + +msgid "Please set up tuner A" +msgstr "Stel aub Tuner A in" + +msgid "Please set up tuner B" +msgstr "Instellingen voor Tuner B" + +msgid "Please set up tuner C" +msgstr "Instellingen voor Tuner C" + +msgid "Please set up tuner D" +msgstr "Instellingen voor Tuner D" + +msgid "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." +msgstr "" +"Gebruik de pijltoetsen om het PiP venster te verplaatsen.\n" +"Druk op bouquet +/- om PiP venster te vergroten of verkleinen.\n" +"Druk op OK om terug te gaan naar TV modus of EXIT na verplaatsen." + +msgid "" +"Please use the UP and DOWN keys to select your language. Afterwards press " +"the OK button." +msgstr "" +"Gebruik de omhoog/omlaag toetsen om de gewenste taal te selecteren. Druk " +"daarna op OK." + +msgid "Please wait" +msgstr "Even geduld aub" + +msgid "Please wait (downloading channel list)" +msgstr "Even geduld... (de zenderlijst wordt gedownload)" + +msgid "Please wait (downloading softcam)" +msgstr "Even geduld... (de softcam wordt gedownload)" + +msgid "Please wait (updating packages)" +msgstr "Een ogenblik geduld (de pakketten worden geactualiseerd)" + +msgid "Please wait for activation of your network configuration..." +msgstr "Een ogenblikje geduld terwijl we uw netwerk activeren..." + +msgid "Please wait while scanning is in progress..." +msgstr "Een ogenblikje geduld, zoeken is bezig..." + +msgid "Please wait while we configure your network..." +msgstr "Een ogenblik geduld aub terwijl we uw netwerk configureren..." + +msgid "Please wait while we prepare your network interfaces..." +msgstr "Een ogenblik geduld aub terwijl we uw netwerkinterface prepareren..." + +msgid "Please wait while we test your network..." +msgstr "Een ogenblik geduld aub terwijl uw netwerk getest wordt..." + +msgid "Please wait while your network is restarting..." +msgstr "Een ogenblik geduld aub terwijl uw netwerk wordt herstart..." + +msgid "Please wait..." +msgstr "Even geduld aub..." + +msgid "Please wait... Loading list..." +msgstr "Even geduld... De lijst wordt geladen..." + +msgid "Plugin browser" +msgstr "Plugin browser" + +msgid "Plugin manager activity information" +msgstr "Pluginmanager achtergrondinformatie" + +msgid "Plugin manager help" +msgstr "Pluginmanager helpfunctie" + +msgid "Plugins" +msgstr "Applicaties" + +msgid "Polarisation" +msgstr "Polarisatie" + +msgid "Polarisation:" +msgstr "Polarisatie:" + +msgid "Polarization" +msgstr "Polarisatie" + +msgid "Polish" +msgstr "Pools" + +msgid "Port A" +msgstr "Poort A" + +msgid "Port B" +msgstr "Poort B" + +msgid "Port C" +msgstr "Poort C" + +msgid "Port D" +msgstr "Poort D" + +msgid "Portuguese" +msgstr "Portugees" + +msgid "Position of completed timers in timerlist" +msgstr "Positie van de uitgevoerde timers in de timerlijst" + +msgid "Position stored at index" +msgstr "Positie opgeslagen op index" + +msgid "Positioner" +msgstr "Rotor" + +msgid "Positioner (selecting satellites)" +msgstr "Rotor (selecteert satellieten)" + +msgid "Positioner Setup" +msgstr "Instellen DiSEqC-motor" + +msgid "Positioner setup" +msgstr "Rotorinstellingen" + +msgid "Power threshold in mA" +msgstr "Drempel stroomverbruik in mA" + +msgid "Predefined transponder" +msgstr "Vooraf ingestelde transponder" + +msgid "Prefer AC3 track" +msgstr "AC3 voorkeur" + +msgid "Prefer AC3+ track" +msgstr "AC3+ voorkeur" + +msgid "Prefer audio track stored by service" +msgstr "Voorkeur voor het geluidsspoor zoals dit per zender opgeslagen is" + +msgid "Prefer graphical DVB subtitles" +msgstr "Voorkeur voor de grafische DVB ondertitels" + +msgid "Prefer subtitles for hearing impaired" +msgstr "Voorkeur voor ondertitels voor doven en slechthorenden" + +msgid "Prefer subtitles stored by service" +msgstr "Voorkeur voor ondertitels zoals deze per zender opgeslagen zijn" + +msgid "Preferred tuner" +msgstr "Voorkeurstuner" + +msgid "Preferred tuner for recordings" +msgstr "Voorkeurstuner voor opnames" + +msgid "Prepare another USB stick for image flashing" +msgstr "Bereid een andere USB stick voor om de image te flashen" + +msgid "Preparing... Please wait" +msgstr "Voorbereiden... Een ogenblik geduld aub." + +msgid "Press '0' to toggle PiP mode" +msgstr "Druk '0' om tussen de PiP modes te schakelen." + +msgid "Press INFO on your remote control for additional information." +msgstr "Druk INFO op uw afstandsbediening voor meer informatie." + +msgid "Press MENU on your remote control for additional options." +msgstr "Druk MENU op uw afstandsbediening voor meer opties." + +msgid "Press OK on your remote control to continue." +msgstr "Druk OK op uw afstandsbediening om verder te gaan." + +msgid "Press OK to activate the selected skin." +msgstr "Druk op OK om de geselecteerde skin te activeren." + +msgid "Press OK to activate the settings." +msgstr "Druk op OK om op te slaan" + +msgid "Press OK to edit the settings." +msgstr "Druk op OK om te wijzigen." + +#, python-format +msgid "Press OK to get further details for %s" +msgstr "Druk op OK voor meer detail over: %s" + +msgid "Press OK to scan" +msgstr "Druk OK om te zoeken." + +msgid "Press OK to select a provider." +msgstr "Druk op OK om een provider te kiezen." + +msgid "Press OK to select satellites" +msgstr "Druk OK om de satellieten te selecteren" + +msgid "Press OK to select/deselect a CAId." +msgstr "Druk op OK om de CAId aan/uit te zetten." + +msgid "Press OK to start the scan" +msgstr "Druk OK om te zoeken." + +msgid "Press OK to toggle the selection" +msgstr "Druk OK om uw keuze te wijzigen" + +msgid "Press OK to toggle the selection." +msgstr "Druk op OK om de selectie te de/activeren." + +msgid "Press yellow to set this interface as default interface." +msgstr "Druk op geel om deze interface als standaard in te stellen." + +msgctxt "button label, 'previous screen'" +msgid "Prev" +msgstr "Vorige" + +msgid "Preview" +msgstr "Voorbeeld" + +msgid "Preview menu" +msgstr "Voorbeeld menu" + +msgid "Preview selected channel" +msgstr "Preview geselecteerd kanaal" + +msgid "Primary DNS" +msgstr "Primaire DNS" + +msgid "Priority" +msgstr "Prioriteit" + +msgid "Process" +msgstr "Proces" + +msgid "Progress" +msgstr "Voortgang" + +msgid "Progress bar left" +msgstr "Voortgangsbalk links" + +msgid "Progress bar right" +msgstr "Voortgangsbalk rechts" + +msgid "Properties of current title" +msgstr "Eigenschappen van huidige titel" + +msgid "Protect services" +msgstr "Beveilig zenders" + +msgid "Protect setup" +msgstr "Beveilig menu" + +msgid "Provider" +msgstr "Provider" + +msgid "Provider to scan" +msgstr "Zoek op provider" + +msgid "Providers" +msgstr "Providers" + +msgid "Put TV in standby" +msgstr "Zet de TV in standby" + +msgid "Put receiver in standby" +msgstr "Zet de receiver in standby" + +msgid "Python frontend for /tmp/mmi.socket" +msgstr "Python frontend voor /tmp/mmi.socket" + +msgid "Quick" +msgstr "Snel" + +msgid "Quick zap" +msgstr "Snelzap" + +msgid "RF output" +msgstr "RF modulator" + +msgid "RGB" +msgstr "RGB" + +msgid "Radio" +msgstr "Radio" + +msgid "Ram disk" +msgstr "Ramdisk" + +msgid "Random" +msgstr "Willekeurig" + +#, python-format +msgid "Rating defined by broadcaster - %d" +msgstr "Beoordeling door provider - %d" + +msgid "Rating undefined" +msgstr "Beoordeling niet gedefinieerd" + +msgid "Really close without saving settings?" +msgstr "Afsluiten zonder opslaan?" + +msgid "Really delete done timers?" +msgstr "Wilt u de gebruikte timers echt wissen?" + +msgid "Really exit the subservices quickzap?" +msgstr "Subzenders snelzap verlaten?" + +msgid "Really reboot now?" +msgstr "Nu herstarten?" + +msgid "Really restart now?" +msgstr "Nu herstarten?" + +msgid "Really shutdown now?" +msgstr "Nu uitschakelen?" + +msgid "Really upgrade the frontprocessor and reboot now?" +msgstr "Wilt u de frontprocessor nu echt updaten en herstarten?" + +msgid "Really upgrade your settop box and reboot now?" +msgstr "Wilt u de ontvanger werkelijk updaten en herstarten?" + +msgid "Reboot" +msgstr "Herstarten" + +msgid "Rec" +msgstr "Rec" + +msgid "Reception settings" +msgstr "Ontvangstinstellingen" + +msgid "Record" +msgstr "Opname" + +#, python-format +msgid "Record time limited due to conflicting timer %s" +msgstr "Opnametijd beperkt vanwege conflicterende timer %s" + +msgid "Recorded files..." +msgstr "Opnames..." + +msgid "Recording" +msgstr "Opname" + +msgid "Recording in progress" +msgstr "Opnemen bezig" + +msgid "Recording paths" +msgstr "Opnamelocaties" + +msgid "Recording type" +msgstr "Opnamesoort" + +msgid "Recording(s) are in progress or coming up in few seconds!" +msgstr "Een opname is bezig of kan elk moment aanvangen!" + +msgid "Recordings" +msgstr "Opnames" + +msgid "Recordings always have priority" +msgstr "Een opname heeft altijd voorrang" + +msgid "Red button..." +msgstr "Rode toets..." + +msgid "Red colored" +msgstr "Rood gekleurd" + +msgid "Reenter new PIN" +msgstr "Voer nieuwe pincode nogmaals in" + +msgid "Refresh rate" +msgstr "Herhaalfrequentie" + +msgid "Refresh rate selection." +msgstr "Herhalingsfrequentie" + +msgid "Regard deep standby as standby" +msgstr "Beschouw de diepe standby als normale standby" + +msgid "Relative" +msgstr "Relatief" + +msgid "Reload" +msgstr "Herlaad" + +msgid "Reload black-/white lists" +msgstr "Herladen van de black-/whitelists" + +msgid "Reloading bouquets and services..." +msgstr "Bouquetten en zenders opnieuw inladen" + +msgid "Remember last service in PiP" +msgstr "Onthoudt de laatste gekozen zender in PIP" + +msgid "Remember service PIN" +msgstr "Onthoud zender pincode" + +msgid "Remember these settings for each folder" +msgstr "Onthoud deze instellingen voor elke map" + +msgid "Reminder, you have chosen to save timeshift file." +msgstr "Herinnering, u heeft ervoor gekozen om de timeshiftopname op te slaan." + +msgid "Remote control type" +msgstr "Type afstandsbediening" + +msgid "Removal has completed." +msgstr "Verwijderen is afgerond." + +msgid "Remove" +msgstr "Verwijderen" + +msgid "Remove a mark" +msgstr "Wis markeerpunt" + +msgid "Remove a nameserver entry" +msgstr "Verwijder een nameserver ingave " + +msgid "Remove bookmark" +msgstr "Wis markeerpunt" + +msgid "Remove completed timers after (days)" +msgstr "Verwijder de afgeronde timers na X dagen" + +msgid "Remove currently selected title" +msgstr "Verwijder de huidig geselecteerde titel" + +msgid "Remove items from trash can after (days)" +msgstr "Verwijder opnames uit de prullenbak na X dagen" + +msgid "Remove plugins" +msgstr "Verwijderen" + +msgid "Remove title" +msgstr "Titel verwijderen" + +msgid "Removing" +msgstr "Bezig met verwijderen" + +#, python-format +msgid "Removing directory %s failed. (Maybe not empty.)" +msgstr "Verwijderen van map %s mislukt (map niet leeg?)." + +msgid "Removing partition table" +msgstr "Verwijderd de partitietabel" + +msgid "Rename" +msgstr "Hernoemen" + +msgid "Repeat" +msgstr "Herhaal" + +msgid "Repeat type" +msgstr "Herhaal type" + +msgid "Repeating event currently recording... What do you want to do?" +msgstr "Een herhaalde timer maakt nu een opname... Wat wilt u doen?" + +msgid "Repeats" +msgstr "Herhalingen" + +msgid "Require authentication for http streams" +msgstr "Authenticatie voor http streams noodzakelijk" + +msgid "Required medium type:" +msgstr "Benodigd medium type" + +msgid "Rereading partition table" +msgstr "Lees de partitietabel opnieuw" + +msgid "Reserved" +msgstr "Gereserveerd" + +msgid "Reset" +msgstr "Herstel" + +msgid "Reset and renumerate title names" +msgstr "Herstel en renumerate titel namen" + +msgid "Reset playback position" +msgstr "Zet afspeelpunt terug naar begin" + +msgid "Reset video enhancement settings to system defaults?" +msgstr "Herstel videoverbetering-instellingen naar de standaard?" + +msgid "Reset video enhancement settings to your last configuration?" +msgstr "Herstel videoverbetering-instellingen naar de laatste configuratie?" + +msgid "Resolution" +msgstr "Resolutie" + +msgid "Restart" +msgstr "Herstarten" + +msgid "Restart GUI now?" +msgstr "Herstart Enigma2 nu?" + +msgid "Restart enigma" +msgstr "Herstart enigma" + +msgid "Restart network" +msgstr "Netwerk herstarten" + +msgid "Restart test" +msgstr "Herstart test" + +msgid "Restart your network connection and interfaces.\n" +msgstr "" +"Herstart het netwerk en alle adapters.\n" +"\n" + +msgid "Restore" +msgstr "Herstellen" + +msgid "Restore backups" +msgstr "Backups terugzetten" + +msgid "Restore is running..." +msgstr "Herstellen wordt uitgevoerd..." + +msgid "Restore system settings" +msgstr "Herstel uw instellingen" + +msgid "Restoring..." +msgstr "Herstellen..." + +msgid "Resume from last position" +msgstr "Ga door op laatste positie" + +#, python-format +msgid "Resume position at %s" +msgstr "Hervat positie op %s" + +#. TRANSLATORS: The string "Resuming playback" flashes for a moment +#. TRANSLATORS: at the start of a movie, when the user has selected +#. TRANSLATORS: "Resume from last position" as start behavior. +#. TRANSLATORS: The purpose is to notify the user that the movie starts +#. TRANSLATORS: in the middle somewhere and not from the beginning. +#. TRANSLATORS: (Some translators seem to have interpreted it as a +#. TRANSLATORS: question or a choice, but it is a statement.) +msgid "Resuming playback" +msgstr "Afspelen wordt hervat" + +msgid "Return to movie list" +msgstr "Terug naar de opnamelijst" + +msgid "Return to previous service" +msgstr "Terug naar laatste zender" + +msgid "Reverse bouquet buttons" +msgstr "Keer bouquet knoppen om" + +msgid "Reverse list" +msgstr "Omgekeerde volgorde" + +msgid "Rewind speeds" +msgstr "Terugspoelsnelheid" + +msgid "Rewrap teletext subtitles" +msgstr "Teletext ondertitels opnieuw indelen" + +msgid "Right" +msgstr "Rechts" + +msgid "Right from servicename" +msgstr "Rechts van de kanaalnaam" + +msgid "Roll-off" +msgstr "Roll-off" + +msgid "Romanian" +msgstr "Roemeens" + +msgid "Root directory" +msgstr "Hoofddirectory" + +msgid "Rotor step position:" +msgstr "Rotor stappositie:" + +msgid "Rotor turning speed" +msgstr "Rotor draaisnelheid" + +msgid "Round start time on" +msgstr "Starttijd afronden op" + +msgid "Russian" +msgstr "Russisch" + +msgid "S-Video" +msgstr "S-Video" + +msgid "SID" +msgstr "SID" + +msgid "SINGLE LAYER DVD" +msgstr "SINGLE LAYER DVD" + +msgid "SNR" +msgstr "SNR" + +msgid "SNR:" +msgstr "SNR:" + +msgid "SSID:" +msgstr "SSID:" + +msgid "Same resolution as skin" +msgstr "Identieke resolutie als de skin" + +msgid "Sat" +msgstr "Za" + +msgid "Satellite" +msgstr "Satelliet" + +msgid "Satellite dish setup" +msgstr "Schotelconfiguratie" + +msgid "Satellite equipment" +msgstr "Satellietapparatuur" + +msgid "Satellite equipment setup" +msgstr "Satellietapparatuur instellingen" + +msgid "Satellite longitude:" +msgstr "Lengtegraad satelliet:" + +msgid "Satellites" +msgstr "Satellieten" + +msgid "Satfinder" +msgstr "Signaalzoeker" + +msgid "Sats" +msgstr "Satellieten" + +msgid "Saturation" +msgstr "Verzadiging" + +msgid "Saturday" +msgstr "Zaterdag" + +msgid "Save" +msgstr "Opslaan" + +msgid "Save playlist" +msgstr "Sla de afspeellijst op" + +msgid "Save timeshift file" +msgstr "Sla de timeshiftopname op" + +msgid "Save timeshift file in movie directory" +msgstr "Sla de timeshiftopname in de movie directory op" + +msgid "Scaler sharpness" +msgstr "Scaler scherpte" + +msgid "Scaling mode" +msgstr "Schaalmodus" + +msgid "Scan" +msgstr "Scan" + +msgid "Scan " +msgstr "Zoeken" + +#. TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' +#, python-format +msgid "Scan %s" +msgstr "Zoeken %s" + +#. TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' +#, python-format +msgid "Scan %s band" +msgstr "Zoek %s band" + +msgid "Scan additional SR" +msgstr "Zoek tevens op SR" + +msgid "Scan files..." +msgstr "Zoek bestanden..." + +msgid "Scan wireless networks" +msgstr "Zoek naar WiFi netwerken" + +msgid "" +"Scan your network for wireless access points and connect to them using your " +"selected wireless device.\n" +msgstr "" +"Scan in uw netwerk naar accesspoints en maak een verbinding met het door u " +"geselecteerde draadloze apparaat.\n" + +#, python-format +msgid "Scanning %s..." +msgstr "Zoeken %s..." + +#. TRANSLATORS: The stb is performing a channel scan, progress percentage is printed in '%d' (and '%%' will show a single '%' symbol) +#, python-format +msgid "Scanning - %d%% completed" +msgid_plural "Scanning - %d%% completed" +msgstr[0] "Zoeken - %d%% voltooid" +msgstr[1] "Zoeken - %d%% voltooid" + +#, python-format +msgid "Scanning completed, %d channel found" +msgid_plural "Scanning completed, %d channels found" +msgstr[0] "Zoeken voltooid, %d zender gevonden" +msgstr[1] "Zoeken voltooid, %d zenders gevonden" + +msgid "Scanning failed!" +msgstr "Zoeken mislukt!" + +msgid "Scanning..." +msgstr "Zoeken..." + +msgid "" +"Scans default lamedbs sorted by satellite with a connected dish positioner" +msgstr "" +"Doorzoekt standaard lamedbs gesorteerd op satelliet met een DiSEqC rotor" + +msgid "Search east" +msgstr "Zoek oost" + +msgid "Search west" +msgstr "Zoek west" + +msgid "Searching" +msgstr "Zoeken" + +msgid "Searching east ..." +msgstr "Oost zoeken ..." + +msgid "Searching for available updates. Please wait..." +msgstr "Zoeken naar update's. Een moment aub." + +msgid "Searching for new installed or removed packages. Please wait..." +msgstr "" +"Zoeken naar nieuw geïnstalleerde of verwijderde pakketten. Een ogenblikje..." + +msgid "Searching west ..." +msgstr "West zoeken ..." + +msgid "Second cable of motorized LNB" +msgstr "Tweede kabel van een draaibare LNB" + +msgid "Secondary DNS" +msgstr "Secondaire DNS" + +msgid "Seek" +msgstr "Zoeken" + +msgid "Seek backward" +msgstr "Achteruit springen" + +msgid "Seek backward (enter time)" +msgstr "Spring achterwaarts (tijd invoeren)" + +msgid "Seek forward" +msgstr "Vooruit springen" + +msgid "Seek forward (enter time)" +msgstr "Spring voorwaarts (tijd invoeren)" + +msgid "Select" +msgstr "Selecteer" + +msgid "Select CAId" +msgstr "Selecteer CAId" + +msgid "Select HDD" +msgstr "Kies harde schijf" + +msgid "Select a bouquet" +msgstr "Kies een bouquet" + +msgid "Select a movie" +msgstr "Kies een opname" + +msgid "Select a network adapter" +msgstr "Kies een netwerkadapter" + +msgid "Select a skin" +msgstr "Kies een skin" + +msgid "Select a tuner" +msgstr "Kies een tuner" + +msgid "Select a wireless network" +msgstr "Secteer draadloos netwerk" + +msgid "Select action" +msgstr "Maak uw keuze" + +#, python-format +msgid "Select action for timer %s:" +msgstr "Selecteer wat u moet doen bij de timer %s:" + +msgid "Select all" +msgstr "Markeer alles" + +msgid "Select an image to be downloaded" +msgstr "Kies de image die u wilt downloaden" + +msgid "Select audio track" +msgstr "Kies audiospoor" + +msgid "Select backup files" +msgstr "Kies backupbestanden" + +msgid "Select backup location" +msgstr "Kies een backuplocatie" + +msgid "Select channel to record from" +msgstr "Kies de juiste zender om van op te nemen" + +msgid "Select copy destination for:" +msgstr "Kies kopieerbestemming voor:" + +msgid "Select default EPG type..." +msgstr "Selecteer voorkeur EPG type..." + +msgid "Select desired image from feed list" +msgstr "Selecteer de gewenste image uit feed lijst" + +msgid "Select destination for:" +msgstr "Selecteer bestemming voor:" + +msgid "Select files for backup." +msgstr "Selecteer backup bestanden." + +msgid "Select files/folders to backup" +msgstr "Kies bestanden / mappen voor de backup" + +msgid "Select input device" +msgstr "Kies invoerapparaat" + +msgid "Select input device." +msgstr "Kies invoerapparaat." + +msgid "Select interface" +msgstr "Selecteer interface" + +msgid "Select location" +msgstr "Kies een locatie" + +msgid "Select movie" +msgstr "Kies een film" + +msgid "Select provider to add..." +msgstr "Selecteer provider om toe te voegen..." + +msgid "Select refresh rate" +msgstr "Selecteer herhalingsfrequentie" + +msgid "Select satellites" +msgstr "Kies de satellieten" + +msgid "Select service to add..." +msgstr "Selecteer zender om toe te voegen..." + +msgid "Select sort method:" +msgstr "Kies de sorteermethode:" + +msgid "Select target folder" +msgstr "Kies de doelmap" + +msgid "Select the movie path" +msgstr "Selecteer het opnamepad" + +msgid "Select upgrade source" +msgstr "Kies de bron om te upgraden" + +msgid "Select upgrade source to edit." +msgstr "Kies de te wijzigen upgradefeed." + +msgid "Select video input with up/down buttons" +msgstr "Selecteer video-ingang met de omhoog / omlaag toetsen" + +msgid "Select video mode" +msgstr "Selecteer videomodus" + +msgid "Select wireless network" +msgstr "Secteer draadloos netwerk" + +msgid "Select your provider, and press OK to start the scan" +msgstr "Kies uw provider en druk OK om de scan te starten" + +msgid "Selecting satellites 1 (USALS)" +msgstr "Kies satelieten1 (USALS)" + +msgid "Selecting satellites 2 (USALS)" +msgstr "Kies satellieten2 (USALS)" + +msgid "Send DiSEqC only on satellite change" +msgstr "Verstuur DiSEqC enkel bij satellietwijziging" + +msgid "Separate titles with a main menu" +msgstr "Scheid titels met een hoofdmenu" + +msgid "Sequence repeat" +msgstr "Herhaal sequence" + +msgid "Serbian" +msgstr "Servisch" + +msgid "Service" +msgstr "Zender" + +msgid "Service has been added to the favourites." +msgstr "De zender is toegevoegd aan de favorieten." + +msgid "Service has been added to the selected bouquet." +msgstr "De zender is toegevoegd aan het geselecteerd bouquet." + +msgid "Service info" +msgstr "Zenderinfo" + +msgid "" +"Service invalid!\n" +"(Timeout reading PMT)" +msgstr "" +"Zender ongeldig!\n" +"(Timeout reading PMT)" + +msgid "Service name" +msgstr "Zendernaam" + +msgid "" +"Service not found!\n" +"(SID not found in PAT)" +msgstr "" +"Zender niet gevonden!\n" +"(SID not found in PAT)" + +msgid "Service reference" +msgstr "Zenderreferentie" + +msgid "Service scan" +msgstr "Zenders zoeken" + +msgid "Service searching" +msgstr "Zenders zoeken" + +msgid "Service title mode" +msgstr "Zenders titel mode" + +msgid "" +"Service unavailable!\n" +"Check tuner configuration!" +msgstr "" +"Zender niet beschikbaar\n" +"Controleer uw tuner configuratie!" + +msgid "Services" +msgstr "Kanalen" + +msgid "Set default" +msgstr "Zet als standaard" + +msgid "Set end time" +msgstr "Stel de eindtijd in" + +msgid "Set fixed" +msgstr "Zet vast" + +msgid "Set fps for external subtitles" +msgstr "Stel de fps in voor de externe ondertitels" + +msgid "Set interface as default Interface" +msgstr "Stel deze interface in als standaard" + +msgid "Set limits" +msgstr "Zet de limieten" + +msgid "" +"Set the type of the progress indication in the channel selection screen." +msgstr "" +"Met deze optie stelt u de weergave van de programmavoortgangindicatie in het " +"kanaalselectiescherm in.\n" +"\n" +"U kunt kiezen uit, geen voortgang, voortgang rechts weergeven, voortgang " +"links weergeven, programma-percentage rechts weergeven of programma-" +"percentage links weergeven." + +msgid "Set time window to 1 hour" +msgstr "Tijdinterval 1 uur" + +msgid "Set time window to 2 hours" +msgstr "Tijdinterval 2 uur" + +msgid "Set time window to 3 hours" +msgstr "Tijdinterval 3 uur" + +msgid "Set time window to 4 hours" +msgstr "Tijdinterval 4 uur" + +msgid "Set time window to 5 hours" +msgstr "Tijdinterval 5 uur" + +msgid "Set time window to 6 hours" +msgstr "Zet tijdsduur op 6 uur" + +msgid "Set voltage and 22KHz" +msgstr "Stel de spanning en 22kHz optie in" + +msgid "Settings" +msgstr "Settings" + +msgid "Setup" +msgstr "Instellingen" + +msgid "Setup menu" +msgstr "Instellingen menu" + +msgid "Setup mode" +msgstr "Toegangsniveau instellen" + +msgid "Setup your positioner" +msgstr "Instellen rotor" + +msgid "Setup your satellite equipment" +msgstr "Stel uw satellietapparatuur in" + +#, python-format +msgid "" +"Shall the USB stick wizard proceed and program the image file %s into flash " +"memory?" +msgstr "" +"Moet de USB-stick wizzard doorgaan en het imagebestand %s naar de flash " +"schrijven?" + +msgid "Sharpness" +msgstr "Scherpte" + +msgid "Short filenames" +msgstr "Korte bestandsnamen" + +msgid "Show EIT now/next in infobar" +msgstr "Toon EIT nu / straks in informatiebalk" + +msgid "Show EPG for current channel..." +msgstr "Toon de EPG van de huidige zender" + +msgid "Show EPG..." +msgstr "Toon de EPG..." + +msgid "Show Games show" +msgstr "show / quiz" + +msgid "Show SNR percentage instead of dB value" +msgstr "Toon SNR in percentage i.p.v. de waarde in dB" + +msgid "Show VCR scart on main menu" +msgstr "Toon VCR scart in het hoofdmenu" + +msgid "Show WLAN status" +msgstr "WIFIstatus weergeven" + +msgid "Show animation while busy" +msgstr "Laat een animatie zien bij lopende activiteiten" + +msgid "Show background in radio mode" +msgstr "De radioachtergrond weergeven" + +msgid "Show bouquet selection menu" +msgstr "Bouquet selectiemenu weergeven" + +msgid "Show busy indicator when the system is busy." +msgstr "" +"Indien geactiveerd, dan worden de tandwielen getoond zolang er activiteiten " +"plaats vinden." + +msgid "Show channel numbers in channel selection" +msgstr "Toon kanaalnummers in zender selectie" + +msgid "Show columns" +msgstr "Toon / wijzig de kolommen" + +msgid "Show crypto icons" +msgstr "Toon icoon indien gecodeerd" + +msgid "Show crypto info in infobar" +msgstr "Laat gebruikte kaartlezer zien in informatiebalk" + +msgid "Show detailed event info" +msgstr "Gedetailleerde EPG info weergeven" + +msgid "Show event details" +msgstr "EPG details weergeven" + +msgid "Show event-progress in channel selection" +msgstr "Toon programmavoortgang in kanaalselectie" + +msgid "Show extended description" +msgstr "Weergave met uitgebreide informatie" + +msgid "Show extensions..." +msgstr "Toon de applicaties ..." + +msgid "Show icon for new/unseen items" +msgstr "Icoon tonen voor nieuw- of niet bekeken items" + +msgid "Show in extensions menu" +msgstr "In applicatie-menu tonen" + +msgid "Show info" +msgstr "Toon de informatie" + +msgid "Show info line" +msgstr "Toon de infolijn" + +msgid "Show infobar on channel change" +msgstr "Informatiebalk zichtbaar na zenderwissel" + +msgid "Show infobar on event change" +msgstr "Informatiebalk weergeven zodra een programma begint" + +msgid "Show infobar on skip forward/backward" +msgstr "Informatiebalk zichtbaar na overslaan, vooruit / achteruit" + +msgid "Show latest commits on sourceforge" +msgstr "Toon laatste commits op sourceforge" + +msgid "Show message when recording starts" +msgstr "Toon een bericht zodra de opname start" + +msgid "Show movie lengths in movielist" +msgstr "Laat de opnamelengte zien in opnamelijst" + +msgid "Show multi channel EPG" +msgstr "Toon de meerkanaals EPG" + +msgid "Show picons in channel list" +msgstr "Toon de picons in de zenderlijst" + +msgid "Show positioner movement" +msgstr "Rotorbewegingen zichtbaar" + +msgid "Show record indicator" +msgstr "Toon opname indicatie" + +msgid "Show screensaver" +msgstr "Screensaver tonen na" + +msgid "Show second infobar" +msgstr "Uitgebreid informatiescherm weergeven" + +msgid "Show service type icons" +msgstr "Toon iconen van het type service " + +msgid "Show services beginning with" +msgstr "Laat zenders zien die beginnen met" + +msgid "Show shutdown menu" +msgstr "Afsluitmenu weergeven" + +msgid "Show single service EPG" +msgstr "Toon de EPG van een enkel kanaal" + +msgid "Show status icons in Movielist" +msgstr "Toon de statusiconen in de opnamelijst" + +msgid "Show status icons in movie list" +msgstr "Laat de statusiconen in opnamelijst zien" + +msgid "Show status icons in movielist" +msgstr "Laat de statusiconen in de opnamelijst zien" + +msgid "Show tag menu" +msgstr "Markeringsmenu weergeven" + +msgid "Show the radio player..." +msgstr "Radio weergave modus..." + +msgid "Show the tv player..." +msgstr "TV weergave modus..." + +msgid "Show warning when timeshift is stopped" +msgstr "Toon een waarschuwing indien de timeshift is gestopt" + +msgid "Shows the state of your wireless LAN connection.\n" +msgstr "Geeft de status van uw WiFi verbinding weer.\n" + +msgid "Shuffle playlist" +msgstr "Afspeellijst in willekeurige volgorde" + +msgid "Shutdown" +msgstr "Afsluiten" + +msgid "Shutdown when in Standby" +msgstr "Sluit af indien in Standby" + +msgid "Side by side" +msgstr "Naast elkaar" + +msgid "Signal OK, proceeding" +msgstr "Signaal ok, doorgaan" + +msgid "Signal quality" +msgstr "Signaalkwaliteit" + +msgid "Signal strength:" +msgstr "Signaalsterkte:" + +msgid "Signal: " +msgstr "Signaal:" + +msgid "Similar" +msgstr "Gelijksoortig" + +msgid "Similar broadcasts:" +msgstr "Gelijksoortige uitzendingen:" + +msgid "Simple" +msgstr "Standaardgebruiker" + +msgid "Simple titleset (compatibility for legacy players)" +msgstr "Eenvoudige titelset (compatibel met gewone spelers)" + +msgid "Single" +msgstr "Enkel" + +msgid "Single EPG" +msgstr "Zender EPG" + +msgid "Single satellite" +msgstr "Eén satelliet" + +msgid "Single step (GOP)" +msgstr "Stap voor stap (GOP)" + +msgid "Single transponder" +msgstr "Eén transponder" + +msgid "Site latitude" +msgstr "Breedtegraad van de locatie" + +msgid "Site longitude" +msgstr "Lengtegraad van de locatie" + +msgid "Skin" +msgstr "Skin selectie" + +msgid "Skins" +msgstr "Skins" + +msgid "Skip empty services" +msgstr "Sla de lege kanalen over" + +msgid "" +"Skip internet connection check (disables automatic package installation)" +msgstr "" +"Sla de internet controle over (hiermee vervalt de automatische installatie " +"van pakketten)" + +msgid "Sleep timer" +msgstr "Sleeptimer" + +msgid "SleepTimer Configuration" +msgstr "Configuratie van de sleeptimer" + +msgid "Sleeptimer" +msgstr "Sleeptimer" + +msgid "Sleeptimer (not activated)" +msgstr "Sleeptimer (inaktief)" + +msgid "Slide picture in loop" +msgstr "Toon foto's opnieuw aan het eind" + +msgid "Slide show interval (sec.)" +msgstr "Diavoorstelling interval in (sec.)" + +#, python-format +msgid "Slot %d" +msgstr "Slot %d" + +msgid "Slovak" +msgstr "Slovaaks" + +msgid "Slovenian" +msgstr "Sloveens" + +msgid "Slow" +msgstr "Langzaam" + +msgid "Slow motion speeds" +msgstr "Slowmotion snelheden" + +msgid "Small progress" +msgstr "Kleine stapjes voorwaarts" + +msgid "Social/Political/Economics" +msgstr "Sociaal / politiek / economisch" + +msgid "SoftCam / CI" +msgstr "Softcam / CI" + +msgid "Softcam type" +msgstr "Softcamtype" + +msgid "Software" +msgstr "Software" + +msgid "Software management" +msgstr "Softwarebeheer" + +msgid "Software manager setup" +msgstr "Softwarebeheer setup" + +msgid "Software restore" +msgstr "Software herstellen" + +msgid "Software update" +msgstr "Software update" + +msgid "Softwaremanager information" +msgstr "Softwarebeheerinformatie" + +msgid "Some plugins are not available:\n" +msgstr "Enkele plugins zijn niet beschikbaar:\n" + +#, python-format +msgid "Sorry, %s has not been installed!" +msgstr "Sorry, %s is niet geïnstalleerd!" + +msgid "" +"Sorry, deleting directories can (for now) only be done through the trash can." +msgstr "Sorry, verwijderen van mappen kan (momenteel) enkel via de afvalbak." + +msgid "Sorry, no backups found!" +msgstr "Sorry, er zijn geen backups gevonden!" + +msgid "Sorry, no details available!" +msgstr "Sorry, er zijn geen details beschikbaar!" + +msgid "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." +msgstr "" +"Sorry, uw backupbestemming is niet beschrijfbaar.\n" +"Kies aub een andere locatie." + +msgid "Sort" +msgstr "Sorteren" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort A-Z" +msgstr "Sorteer A-Z" + +msgid "Sort by" +msgstr "Sorteren op ..." + +msgid "Sort list:" +msgstr "Sorteren op:" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort time" +msgstr "Sorteertijd" + +msgid "Sound" +msgstr "Geluid" + +msgid "Sound carrier" +msgstr "Geluidskanaal" + +msgid "Source request" +msgstr "Verzoek bron" + +msgid "South" +msgstr "Zuid" + +msgid "Spanish" +msgstr "Spaans" + +msgid "" +"Specify the end time to ignore the shutdown timer when the receiver is in " +"standby mode" +msgstr "" +"Specificeer de eind tijd wanneer de uitschakeltimer genegeerd moet worden " +"wanneer de ontvanger in standby is." + +msgid "Specify the end time until the inactivity sleeptimer should be ignored" +msgstr "" +"Selecteer het eind tijdstip vanaf wanneer de sleeptimer moet worden genegeerd" + +msgid "" +"Specify the start time to ignore the shutdown timer when the receiver is in " +"standby mode" +msgstr "" +"Specificeer de start tijd wanneer de uitschakeltimer genegeerd moet worden " +"wanneer de ontvanger in standby is." + +msgid "Specify the start time when the inactivity sleeptimer should be ignored" +msgstr "" +"Selecteer het start tijdstip vanaf wanneer de sleeptimer moet worden " +"genegeerd" + +msgid "Specify timeframe to ignore inactivity sleeptimer" +msgstr "Geef de tijdperiode op waarin de sleeptimer wordt genegeerd" + +msgid "Specify timeframe to ignore the shutdown in standby" +msgstr "Specificeer tijdsruimte om in standby te gaan te negeren" + +msgid "Split preview mode" +msgstr "Splits preview-modus" + +msgid "Splitscreen" +msgstr "Gedeeld scherm" + +msgid "Sports" +msgstr "sport" + +msgid "Standard" +msgstr "Standaard" + +msgid "Standart list" +msgstr "Standaard lijst" + +msgid "Standby" +msgstr "Standby" + +msgid "Standby / restart" +msgstr "Standby / herstart" + +msgid "Standby after current event" +msgstr "Standby na de huidige actie" + +#, python-format +msgid "Standby fan %d PWM" +msgstr "Standby Ventilator %d PWM" + +#, python-format +msgid "Standby fan %d voltage" +msgstr "Standby ventilator %d spanning" + +msgid "Standby in " +msgstr "Standby over " + +msgid "StandbyLED" +msgstr "StandbyLED" + +msgid "Start from the beginning" +msgstr "Start vanaf het begin" + +msgid "Start offline decode" +msgstr "Start achteraf decoderen" + +msgid "Start recording?" +msgstr "Start opname?" + +msgid "Start test" +msgstr "Start test" + +msgid "Start time" +msgstr "Starttijd" + +msgid "Start time to ignore inactivity sleeptimer" +msgstr "Tijdsduur hoe lang de inactiviteitssleeptimer genegeerd wordt" + +msgid "Start time to ignore shutdown in standby" +msgstr "Start tijd om in standby gaan te negeren" + +msgid "Start timeshift" +msgstr "Start de timeshift" + +msgid "Start with list screen" +msgstr "Start met een zichtbare lijst" + +msgid "Starting on" +msgstr "Start op" + +msgid "Startup the set top box in standby" +msgstr "" +"Met deze optie stelt u in, of de ontvanger naar standby moet gaan na het " +"opstarten." + +msgid "Startup to Standby" +msgstr "Opstarten en naar standby" + +msgid "Step east" +msgstr "Stap > oost" + +msgid "Step west" +msgstr "Stap > west" + +msgid "Stepped east" +msgstr "Naar oost gestapt" + +msgid "Stepped west" +msgstr "Naar west gestapt" + +msgid "Stop" +msgstr "Stop" + +msgid "Stop PiP" +msgstr "Beëindig de PiP" + +msgid "Stop current event and disable coming events" +msgstr "Stop huidige timer en annuleer de volgende timers" + +msgid "Stop current event but not coming events" +msgstr "Stop de huidige timer, maar alle volgende timers toestaan" + +msgid "Stop entry" +msgstr "Stop de invoer" + +msgid "Stop playing this movie?" +msgstr "Stop afspelen van deze opname?" + +msgid "Stop recording" +msgstr "Stop opname" + +msgid "Stop recording and delete" +msgstr "Stop opname en wis deze" + +msgid "Stop service on return to movie list" +msgstr "Stop Zender bij terugkeren naar opname lijst" + +msgid "Stop test" +msgstr "Stop test" + +msgid "Stop testing plane after # failed transponders" +msgstr "Stop testen na # falende transponders" + +msgid "Stop testing plane after # successful transponders" +msgstr "Stop testen na # succesvolle transponders" + +msgid "Stop timer recording" +msgstr "Stop timeropname" + +msgid "Stop timeshift" +msgstr "Beëindig de timeshift" + +msgid "Stop timeshift?" +msgstr "Beëindig de timeshift?" + +msgid "Stopped" +msgstr "Gestopt" + +msgid "Store at index" +msgstr "Opslaan op index" + +msgid "Store position" +msgstr "Sla positie op" + +msgid "Stored position" +msgstr "Opgeslagen positie" + +msgid "Stream" +msgstr "Stream" + +msgid "Stream request" +msgstr "Stream verzoek" + +msgid "Strongest position" +msgstr "Sterkste positie" + +msgid "Subservice list..." +msgstr "Subzenderlijst..." + +msgid "Subservices" +msgstr "Subkanalen" + +msgid "Subtitle Quickmenu" +msgstr "Ondertitel Snelmenu" + +msgid "Subtitle alignment" +msgstr "Uitlijning van ondertitels" + +msgid "Subtitle border width" +msgstr "Randdikte van de ondertitels" + +msgid "Subtitle delay when timing is bad" +msgstr "Vertraging van de ondertitels indien de timing slecht is" + +msgid "Subtitle delay when timing lacks" +msgstr "Ondertitel vertraging indien timing ontbreekt" + +msgid "Subtitle font size" +msgstr "Lettergrootte van de ondertitels" + +msgid "Subtitle language selection 1" +msgstr "Ondertitel taalkeuze 1" + +msgid "Subtitle language selection 2" +msgstr "Ondertitel taalkeuze 2" + +msgid "Subtitle language selection 3" +msgstr "Ondertitel taalkeuze 3" + +msgid "Subtitle language selection 4" +msgstr "Ondertitel taalkeuze 4" + +msgid "Subtitle position" +msgstr "Positie van de ondertitels" + +msgid "Subtitle selection" +msgstr "Ondertitelselectie" + +msgid "Subtitle selection..." +msgstr "Ondertitelselectie..." + +msgid "Subtitle settings" +msgstr "Ondertitelinstellingen" + +msgid "Subtitles" +msgstr "Ondertitels" + +msgid "Sun" +msgstr "Zo" + +msgid "Sunday" +msgstr "Zondag" + +msgid "Swap PiP and main picture" +msgstr "Wissel tussen PiP & hoofdscherm" + +msgid "Swap services" +msgstr "Zenders omwisselen" + +msgid "Swedish" +msgstr "Zweeds" + +msgid "Switch TV to correct input" +msgstr "Schakel de TV naar de juiste ingang" + +msgid "Switch between filelist/playlist" +msgstr "Schakel tussen de bestandenlijst / afspeellijst" + +msgid "Switch between normal mode and list mode" +msgstr "Wissel tussen de normale en de lijstmode" + +msgid "Switch to HDMI in mode" +msgstr "Schakel naar de HDMI in modus" + +msgid "Switch to filelist" +msgstr "Ga naar de bestandenlijst" + +msgid "Switch to next channel" +msgstr "Ga naar de volgende zender" + +msgid "Switch to next channel in history" +msgstr "Ga naar de volgende zender in de geschiedenis" + +msgid "Switch to next sub service" +msgstr "Ga naar het volgende subkanaal" + +msgid "Switch to playlist" +msgstr "Ga naar afspeellijst" + +msgid "Switch to previous channel" +msgstr "Ga naar de vorige zender" + +msgid "Switch to previous channel in history" +msgstr "Schakel naar de vorige zender in de geschiedenis" + +msgid "Switch to previous sub service" +msgstr "Ga naar het vorige subkanaal" + +msgid "Switchable tuner types:" +msgstr "Schakelbare tunertypes:" + +msgid "Symbol rate" +msgstr "Symbolrate" + +msgid "Symbol rate:" +msgstr "Symbol rate:" + +msgid "Sync failure moving back to origin !" +msgstr "Sync probleem bij draaiing naar nulpunt !" + +msgid "System" +msgstr "Systeem" + +#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) +msgid "TRANSLATOR_INFO" +msgstr "" +"Deze vertaling wordt u aangeboden door :\n" +"- het OpenPLi team\n" +"\n" +"- Voor aanvullingen en opmerkingen stuurt u een mail naar:\n" +" translators@openpli.org" + +msgid "TS file is too large for ISO9660 level 1!" +msgstr "TS bestand is te groot voor ISO9660 level1!" + +msgid "TSID" +msgstr "TSID" + +msgid "TV physical address report" +msgstr "TV fysiek adres overzicht" + +msgid "TXT PID" +msgstr "TXT PID" + +msgid "Table of contents for collection" +msgstr "Inhoudsoverzicht voor de verzameling" + +msgid "Tags" +msgstr "Markeringen" + +msgid "Teletext subtitle color" +msgstr "Teletekst kleur van de ondertitel" + +msgid "Temperature and fan control" +msgstr "Temperatuur- en ventilatorcontrole" + +msgid "Terrestrial" +msgstr "Terrestrial" + +msgid "Terrestrial provider" +msgstr "Regio" + +msgid "Test DiSEqC settings" +msgstr "Test DiSEqC instellingen" + +msgid "Test mode" +msgstr "Test modus" + +msgid "Test the network configuration of your receiver.\n" +msgstr "" +"Test de netwerkconfiguratie.\n" +"\n" + +msgid "Test type" +msgstr "Testtype" + +msgid "Text color" +msgstr "Tekstkleur" + +msgid "Thai" +msgstr "Thais" + +msgid "" +"Thank you for using the wizard.\n" +"Please press OK to continue." +msgstr "" +"Bedankt voor het gebruik van deze wizard.\n" +"Druk op OK om verder te gaan." + +msgid "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." +msgstr "" +"Bedankt voor het gebruik van de wizard. Uw ontvanger is nu gebruiksklaar.\n" +"Druk op OK om uw ontvanger in gebruik te nemen." + +msgid "" +"The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to " +"create a special format data DVD (which will not play in stand-alone DVD " +"players) instead?" +msgstr "" +"De DVD standaard support geen H.264 (HDTV). Wilt u een speciaal dataformaat " +"DVD aanmaken (veel DVD spelers kunnen dat niet afspelen)?" + +msgid "The PIN code has been changed successfully." +msgstr "De pincode is gewijzigd." + +msgid "The PIN codes you entered are different." +msgstr "De ingevoerde pincodes zijn niet gelijk." + +msgid "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" +msgstr "" +"De USB stick is geschikt gemaakt om van te booten.\n" +"U kunt nu een NFI image bestand downloaden! " + +msgid "The backup failed. Please choose a different backup location." +msgstr "Backup is mislukt. Kies een andere back-uplocatie aub." + +#, python-format +msgid "" +"The current beta image might not be stable.\n" +"For more information see %s." +msgstr "" +"De huidige beta image kan onstabiel zijn.\n" +"Voor aanvullende informatie kijk op %s" + +#, python-format +msgid "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." +msgstr "" +"De %s directory is niet beschrijfbaar.\n" +"Zorg ervoor dat u een beschrijfbare directory kiest. " + +#, python-format +msgid "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" +msgstr "" +"Het volgende apparaat is gevonden:\n" +"\n" +"%s\n" +"\n" +"Wilt u de USB flasher op deze stick te schrijven?" + +msgid "The following files were found..." +msgstr "De volgende bestanden werden gevonden..." + +msgid "The md5sum validation failed, the file may be corrupted!" +msgstr "De md5sum validatie is mislukt, het bestand kan beschadigd zijn!" + +msgid "" +"The network wizard extension is not installed!\n" +"Please install it." +msgstr "" +"De netwerkwizard-plugin is niet geïnstalleerd!\n" +"Installeer deze aub." + +#, python-format +msgid "The path %s already exists." +msgstr "Het pad %s bestaat al." + +msgid "The pin code you entered is wrong." +msgstr "De ingevoerde pincode is onjuist." + +#, python-format +msgid "The results have been written to %s." +msgstr "De resultaten zijn bewaard op %s." + +msgid "The sleep timer has been activated." +msgstr "De slaaptimer is geactiveerd." + +msgid "The sleep timer has been disabled." +msgstr "De slaaptimer is uitgeschakeld." + +msgid "" +"The software management extension is not installed!\n" +"Please install it." +msgstr "" +"De Softwaremanagement plugin is niet geïnstalleerd!\n" +"Installeer deze aub." + +#, python-format +msgid "" +"The status of the current beta image could not be checked because %s can not " +"be reached." +msgstr "" +"De status van de huidige beta image kan niet worden bepaald omdat %s om " +"onbekende reden niet te bereiken is." + +msgid "The timer file (timers.xml) is corrupt and could not be loaded." +msgstr "" +"Het timer bestand (timer.xml) is beschadigd en kan niet worden geladen." + +msgid "The user interface of your receiver is restarting" +msgstr "De gebruikersomgeving van uw ontvanger wordt herstart." + +msgid "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" +msgstr "" +"De gebruikersomgeving van uw ontvanger wordt opnieuw opgestart\n" +"als gevolg van een geconstateerd probleem in mytest.py" + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." +msgstr "" +"De WIFI plugin is niet geïnstalleerd!\n" +"Installeer deze en kies wat u vervolgens wilt doen." + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it." +msgstr "" +"De WiFi plugin is niet geïnstalleerd. Deze plugin eerst installeren aub." + +msgid "" +"The wizard can backup your current settings. Do you want to do a backup now?" +msgstr "" +"De wizard kan uw huidige instellingen opslaan. Wilt u nu een backup maken?" + +#, python-format +msgid "" +"The wizard found a configuration backup. Do you want to restore your old " +"settings from %s?" +msgstr "" +"De wizard heeft een configuratie backup gevonden. Wilt u uw instellingen van " +"%s herstellen?" + +msgid "The wizard is finished now." +msgstr "De wizard is nu gereed." + +msgid "There are at least " +msgstr "Er zijn ten minste" + +#, python-format +msgid "There are at least %s updates available." +msgstr "Er zijn minimaal %s updates beschikbaar" + +msgid "There are currently no outstanding actions." +msgstr "Er zijn geen uitstaande acties" + +msgid "There are no updates available." +msgstr "Er zijn momenteel geen updates beschikbaar" + +msgid "There is no signal to lock on !" +msgstr "Er is geen signaal om te locken !" + +msgid "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" +msgstr "" +"Er is mogelijk niet genoeg ruimte vrij op de geselecteerde partitie.\n" +"Weet u zeker dat u wilt doorgaan?" + +msgid "" +"This DVD RW medium is already formatted - reformatting will erase all " +"content on the disc." +msgstr "" +"Dit DVD-RW medium is reeds geformatteerd - herformatteren zal alles wissen " +"op deze disk." + +msgid "" +"This plugin creates a USB stick which can be used to update the firmware of " +"your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server " +"and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. " +"Otherwise plug in a USB stick with a minimum size of 64 MB!" +msgstr "" +"Deze plugin creëert een USB stick die gebruikt kan worden om de firmware te " +"updaten zonder noodzaak van een netwerkverbinding. Bekabeld of via wifi. " +"Allereerst moet de stick bootable gemaakt worden.\n" +"Bij de volgende stap kan je een NFI image downloaden van de updateserver. " +"Sla deze vervolgens op de stick op.\n" +"Indien je al een voorbereide en bootable USBstick gereed hebt, steek deze nu " +"in de receiver. Anders plaats een USB stick met een minimale ruimte van " +"64MB! " + +msgid "This plugin is installed." +msgstr "Deze plugin is geïnstalleerd." + +msgid "This plugin is not installed." +msgstr "Deze plugin is niet geïnstalleerd." + +msgid "This plugin will be installed." +msgstr "Deze plugin wordt geïnstalleerd." + +msgid "This plugin will be removed." +msgstr "Deze plugin wordt verwijderd." + +#, python-format +msgid "This receiver cannot decode %s streams!" +msgstr "Deze ontvanger kan geen %s streams decoderen!" + +msgid "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in " +"the \"Nameserver\" configuration" +msgstr "" +"Deze test controleert de nameservers.\n" +"Indien u een bericht \" niet bevestigd\" ziet:\n" +"- controleer dan uw DHCP server, kabels en instellingen\n" +"- Indien de nameservers handmatig ingesteld zijn, controleer deze dan." + +msgid "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" +msgstr "" +"Deze test controleert of er een netwerkkabel met uw LAN adapter verbonden " +"is.\n" +"Indien u een melding \"niets verbonden\" ziet:\n" +"- controleer dan of de netwerkkabel goed aangesloten is\n" +"- of controleer of de kabel niet defect is." + +msgid "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" +msgstr "" +"Deze test controleert of er voor uw LAN adapter een geldig IP adres gevonden " +"is.\n" +"Indien u de melding \"niet bevestigd\" ziet:\n" +"- dan is er geen geldig IP adres gevonden\n" +"- U dient uw DHCP server, kabels en instellingen te controleren" + +msgid "" +"This test checks whether your LAN adapter is set up for automatic IP address " +"configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup " +"dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." +msgstr "" +"Deze test controleert of uw LAN adapter automatisch via DHCP zijn IPadres " +"verkrijgt.\n" +"Indien u de melding \"uitgeschakeld\" krijgt:\n" +" - dan is uw LAN ingesteld om handmatig geconfigureerd te worden\n" +"- controleer of u de juiste IP informatie ingegeven heeft in de setup van de " +"LAN adapter.\n" +"Als u de melding \"ingeschakeld\" ziet:\n" +"-controleer dan of u een correct werkende DHCP server in uw netwerk heeft." + +msgid "This test detects your configured LAN adapter." +msgstr "Deze test detecteert uw ingestelde LAN adapter." + +msgid "" +"This will (re-)calculate all positions of your rotor and may remove " +"previously memorised positions and fine-tuning!\n" +"Are you sure?" +msgstr "" +"Alle posities van de rotor worden opnieuw berekend. Hierdoor kunnen oude " +"instellingen en optimalisaties verloren gaan!\n" +"Doorgaan?" + +msgid "Three" +msgstr "Drie" + +msgid "Threshold" +msgstr "Drempelwaarde" + +msgid "Thu" +msgstr "Do" + +msgid "Thumbnails" +msgstr "Voorbeelden" + +msgid "Thursday" +msgstr "Donderdag" + +msgid "Time" +msgstr "Tijd" + +msgid "Time scale" +msgstr "Tijdschaal" + +msgid "Timer" +msgstr "Timer" + +msgid "Timer Overview" +msgstr "Timeroverzicht" + +msgid "Timer edit" +msgstr "Timer bewerken" + +msgid "Timer editor" +msgstr "Timereditor" + +msgid "Timer entry" +msgstr "Timerinvoer" + +msgid "Timer log" +msgstr "Timerlog" + +msgid "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" +msgstr "" +"Overlappende timers gevonden in timers.xml!\n" +"Controleer deze!" + +msgid "Timer overview" +msgstr "Timeroverzicht" + +msgid "Timer recording location" +msgstr "Opnamelocatie timeropnames" + +msgid "Timer sanity error" +msgstr "Timerlogica fout" + +msgid "Timer selection" +msgstr "Timerselectie" + +msgid "Timer selection..." +msgstr "Timerselectie" + +msgid "Timer type" +msgstr "Timer type" + +msgid "Timeshift" +msgstr "Timeshift" + +msgid "Timeshift Live" +msgstr "Live timeshift" + +msgid "Timeshift location" +msgstr "Opnamelocatie timeshift opnames" + +msgid "Timeshift not possible!" +msgstr "Timeshift is niet mogelijk!" + +msgid "Timezone" +msgstr "Tijdzone" + +msgid "Title" +msgstr "Titel" + +msgid "Title properties" +msgstr "Titelinstellingen" + +msgid "Titleset mode" +msgstr "Titelset modus" + +msgid "To audio selection" +msgstr "Naar audioselectie" + +msgid "To subtitle selection" +msgstr "Naar ondertitelselectie" + +msgid "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable " +"USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed " +"for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." +msgstr "" +"Voer de volgende handelingen uit om uw ontvanger te voorzien van nieuwe " +"firmware:\n" +"1: Schakel de spanning uit met de schakelaar aan de achterzijde en plaats " +"vervolgens de USB stick.\n" +"2: Schakel de spanning in en druk en houd gedurende 10 sec de DOWN knop op " +"het voorpaneel ingedrukt.\n" +"3: Wacht tot de receiver gaat opstarten en volg daarna de instructies op het " +"display op." + +msgid "Today" +msgstr "Vandaag" + +msgid "Toggle a cut mark at the current position" +msgstr "Op de huidige positie een snijmarkering aanbrengen" + +msgid "Tone amplitude" +msgstr "Toonhoogte" + +msgid "Tone mode" +msgstr "Tone modus" + +msgid "Toneburst" +msgstr "Toneburst" + +msgid "Toneburst A/B" +msgstr "Toneburst A/B" + +msgid "Top and bottom" +msgstr "Boven en onderzijde" + +msgid "Track" +msgstr "Spoor" + +msgid "Translation" +msgstr "Vertaling" + +msgid "Translation:" +msgstr "Vertaling:" + +msgid "Translations" +msgstr "Vertalingen" + +msgid "Transmission mode" +msgstr "Transmissiemodus" + +msgid "Transponder" +msgstr "Transponder" + +msgid "Transponder type" +msgstr "Transpondertype" + +msgid "Trash can" +msgstr "Prullenbak" + +msgid "Tries left:" +msgstr "Aantal pogingen over:" + +msgid "Try to find used transponders in cable network.. please wait..." +msgstr "" +"Probeert gebruikte transponders op het kabelnetwerk te vinden. Een ogenblik " +"aub..." + +msgid "Trying to download a new packetlist. Please wait..." +msgstr "Probeert een nieuwe pakketlijst te downloaden. Een ogenblik aub..." + +msgid "Tue" +msgstr "Di" + +msgid "Tuesday" +msgstr "Dinsdag" + +msgid "Tune" +msgstr "Afstemmen" + +msgid "Tune and focus" +msgstr "Afstemmen en focussen" + +msgid "Tune failed!" +msgstr "Afstemmen mislukt!" + +msgid "Tuner" +msgstr "Tuner" + +msgid "Tuner configuration" +msgstr "Tunerconfiguratie" + +msgid "Tuner is not supported" +msgstr "De tuner wordt niet ondersteund" + +msgid "Tuner slot" +msgstr "Tunerslot" + +msgid "Tuner status" +msgstr "Tunerstatus" + +#, python-format +msgid "Tuner status %s" +msgstr "Tunerstatus %s" + +msgid "Tuner type" +msgstr "Tunertype" + +msgid "Turkish" +msgstr "Turks" + +msgid "Turn on the power LED during standby." +msgstr "" +"Met deze optie bepaalt u of de Power Led brandt als de ontvanger standby " +"staat." + +msgid "Turning step size" +msgstr "Stap voor stap draaien" + +msgid "Two" +msgstr "Twee" + +msgid "Type" +msgstr "Type" + +msgid "Type of scan" +msgstr "Zoekmodus" + +msgid "USALS" +msgstr "USALS" + +msgid "USALS calibration" +msgstr "USALS calibratie" + +msgid "USB stick" +msgstr "USB stick" + +msgid "USB stick wizard" +msgstr "USB stick wizard" + +msgid "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Er is een update actief zonder statusmeldingen\n" +"Wacht aub tot de ontvanger opnieuw opstart\n" +"Dit kan een paar minuten in beslag nemen." + +msgid "Undo install" +msgstr "Installatie ongedaan maken" + +msgid "Undo uninstall" +msgstr "Maak de-instaleren ongedaan" + +msgid "Unencrypted" +msgstr "Ongecodeerd" + +msgid "UnhandledKey" +msgstr "Ongeldige toets" + +msgid "Unicable" +msgstr "Unicable" + +msgid "Unicable LNB" +msgstr "Unicable LNB" + +msgid "Unicable Martix" +msgstr "Unicable Martix" + +msgid "Uninstall" +msgstr "De-installeer" + +msgid "Universal LNB" +msgstr "Universeel LNB" + +msgid "Unknown" +msgstr "Onbekend" + +msgid "Unmount" +msgstr "Ontkoppel" + +msgid "Unsupported" +msgstr "Niet ondersteund" + +msgid "Update" +msgstr "Update" + +msgid "Update and ask to reboot" +msgstr "Updaten en daarna vragen om te herstarten" + +msgid "Update and reboot (recommended)" +msgstr "Update en herstart (aanbevolen)" + +msgid "Update channel list only" +msgstr "Alleen de zenderlijst updaten" + +#, python-format +msgid "Update completed, %d package was installed." +msgid_plural "Update completed, %d packages were installed." +msgstr[0] "De update is gereed, %d pakket geinstalleerd." +msgstr[1] "De update is gereed, %d pakketten geinstalleerd." + +msgid "Update completed. Do you want to reboot your receiver?" +msgstr "De update is gereed. Wilt u uw ontvanger herstarten?" + +msgid "" +"Update failed. Your receiver does not have a working internet connection." +msgstr "Update mislukt. Uw ontvanger heeft geen actieve internetaansluiting." + +msgid "Update has completed." +msgstr "De update is gereed." + +msgid "Updatefeed not available." +msgstr "Updatefeed niet beschikbaar." + +msgid "Updating software catalog" +msgstr "Software catalogus wordt geüpdatet" + +msgid "Upgrading" +msgstr "Bezig met update" + +msgid "Use" +msgstr "Gebruik" + +msgid "Use DHCP" +msgstr "Automatisch IP verkrijgen (DHCP)" + +msgid "Use EIT EPG information when it is available." +msgstr "" +"Indien geactiveerd kunt u, indien deze beschikbaar is, de EIT EPG informatie " +"inschakelen." + +msgid "Use FreeSat EPG information when it is available." +msgstr "" +"Indien geactiveerd kunt u, indien deze beschikbaar is, de Freesat EPG " +"informatie inschakelen." + +msgid "Use MHW EPG information when it is available." +msgstr "" +"Indien geactiveerd kunt u, indien deze beschikbaar is, de MHW EPG informatie " +"inschakelen." + +msgid "Use Netmed EPG information when it is available." +msgstr "" +"Indien geactiveerd kunt u, indien deze beschikbaar is, de Netmed EPG " +"informatie inschakelen." + +msgid "Use TV remote control" +msgstr "Gebruik de afstandsbediening van de TV" + +msgid "Use USALS for this sat" +msgstr "Gebruik USALS voor de satelliet" + +msgid "Use ViaSat EPG information when it is available." +msgstr "" +"Indien geactiveerd kunt u, indien deze beschikbaar is, de Viasat EPG " +"informatie inschakelen." + +msgid "Use Virgin EPG information when it is available." +msgstr "" +"Indien geactiveerd kunt u, indien deze beschikbaar is, de Virgin EPG " +"informatie inschakelen." + +msgid "Use a gateway" +msgstr "Gateway gebruiken" + +msgid "Use fastscan channel names" +msgstr "Gebruik fastscan kanaalnamen" + +msgid "Use fastscan channel numbering" +msgstr "Gebruik fastscan zendervolgorde" + +msgid "Use frequency or channel" +msgstr "Gebruik frequentie of kanaal" + +msgid "Use individual settings for each directory" +msgstr "Gebruik afzonderlijke instellingen voor iedere directory" + +msgid "Use interface" +msgstr "Netwerk interface inschakelen" + +msgid "Use official channel numbering" +msgstr "Gebruik officiële kanaalvolgorde" + +msgid "Use original DVB subtitle position" +msgstr "Gebruik de oorspronkelijk positie van DVB ondertitels" + +msgid "Use original teletext position" +msgstr "Originele teletextpositie gebruiken" + +msgid "Use power measurement" +msgstr "Meet stroomopname" + +msgid "Use the network wizard to configure selected network adapter" +msgstr "" +"Gebruik de netwerkwizard om de geselecteerde netwerkadapter te configureren" + +msgid "Use the network wizard to configure your network\n" +msgstr "Gebruik de netwerkwizard om uw netwerk in te stellen\n" + +msgid "" +"Use the up/down keys on your remote control to select an option. After that, " +"press OK." +msgstr "" +"U kunt met de omhoog / omlaag toets op uw afstandsbediening een optie " +"kiezen. Druk daarna op OK." + +msgid "Use the wizard to set up basic features" +msgstr "Start de wizard voor de basisinstellingen" + +msgid "Use these input device settings?" +msgstr "Instellingen voor dit apparaat gebruiken?" + +msgid "Use these settings?" +msgstr "Deze instellingen gebruiken?" + +msgid "Use this video enhancement settings?" +msgstr "Gebruik deze videoverbeteringsinstellingen?" + +msgid "Use trash can in movielist" +msgstr "Gebruik de prullenbak in de opnamelijst" + +msgid "Used service scan type" +msgstr "Gebruikte zoekmethode" + +msgid "User - bouquets" +msgstr "Gebruiker - bouquets" + +msgid "User defined" +msgstr "Door u ingesteld" + +msgid "User defined transponder" +msgstr "Gebruikergedefinieerde transponder" + +msgid "User interface" +msgstr "Gebruikersinterface" + +msgid "Username" +msgstr "Gebruikersnaam" + +#, python-format +msgid "Using LNB %d" +msgstr "Gebruik LNB %d" + +msgid "Using fixed address" +msgstr "Gebruik vast ingesteld adres" + +#, python-format +msgid "Using tuner %s" +msgstr "Gebruik tuner %s" + +msgid "" +"Usually when the subtitle language is the same as the audio language, the " +"subtitles will not be used. Enable this option to allow these subtitles to " +"be used." +msgstr "" +"Standaard, indien de taal van de ondertitels identiek is aan de taal van het " +"geluidsspoor, dan worden de ondertitels niet weergegeven. Activeer deze " +"optie om weergave van ondertitels alsnog mogelijk te maken." + +msgid "VCR scart" +msgstr "VCR scart" + +msgid "VMGM (intro trailer)" +msgstr "VMGM (intro trailer)" + +msgid "Vertical" +msgstr "Verticaal" + +msgid "Vertical turning speed" +msgstr "Verticale draaisnelheid" + +msgid "Video PID" +msgstr "Video PID" + +msgid "Video enhancement preview" +msgstr "Videoverbetering preview" + +msgid "Video enhancement settings" +msgstr "Videoverbeteringsinstellingen..." + +msgid "Video enhancement setup" +msgstr "Videoverbeteringsinstelling..." + +msgid "Video fine tuning" +msgstr "Video fijnafstellingen" + +msgid "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different " +"input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." +msgstr "" +"Videouitgangsselectie\n" +"\n" +"Druk op OK zodra u dit bericht kunt zien (of selecteer een andere uitgang).\n" +"De volgende videooptie wordt over +/- 10 seconden automatisch geprobeerd." + +msgid "Video mode selection." +msgstr "Videomodeselectie" + +msgid "Video output" +msgstr "Video uitgang" + +msgid "Video setup" +msgstr "Video instellingen" + +msgid "Video wizard" +msgstr "Video wizard" + +#, python-format +msgid "Video: %s fps" +msgstr "Video: %s fps" + +msgid "VideoMode" +msgstr "VideoModus" + +msgid "Videocodec" +msgstr "Videocodec" + +msgid "Videoformat" +msgstr "Videoformaat" + +msgid "Videosize" +msgstr "Videogrootte" + +msgid "View Rass interactive..." +msgstr "Rass Interactive weergeven" + +msgid "View details" +msgstr "Bekijk details" + +msgid "View list of available " +msgstr "Bekijk de lijst met beschikbare " + +msgid "View list of available CommonInterface extensions" +msgstr "Bekijk de lijst met beschikbare Common-Interface plugins" + +msgid "View list of available EPG extensions." +msgstr "Bekijk de lijst met beschikbare EPG applicaties." + +msgid "View list of available Satellite equipment extensions." +msgstr "Bekijk lijst met beschikbare satellietapparatuur applicaties." + +msgid "View list of available communication extensions." +msgstr "Bekijk de lijst met beschikbare communicatie applicaties." + +msgid "View list of available default settings" +msgstr "Bekijk de lijst met beschikbare standaardinstellingen" + +msgid "View list of available display and userinterface extensions." +msgstr "" +"Bekijk het overzicht van de beschikbare display- en gebruikersinterface " +"applicaties." + +msgid "View list of available multimedia extensions." +msgstr "Bekijk de lijst van beschikbare multimedia-applicaties." + +msgid "View list of available networking extensions" +msgstr "Bekijk de lijst met beschikbare netwerk-applicaties" + +msgid "View list of available recording extensions" +msgstr "Bekijk de lijst met beschikbare opname applicaties" + +msgid "View list of available skins" +msgstr "Bekijk de lijst met beschikbare skins" + +msgid "View list of available software extensions" +msgstr "Bekijk de lijst met beschikbare softwareplugins" + +msgid "View list of available system extensions" +msgstr "Bekijk de lijst met beschikbare systeemplugins" + +msgid "View photos..." +msgstr "Bekijk foto's..." + +msgid "View teletext..." +msgstr "Teletekst weergeven..." + +msgid "View video CD..." +msgstr "Bekijk Video CD..." + +msgid "Virtual keyboard" +msgstr "Virtueel toetsenbord" + +msgid "Voltage mode" +msgstr "Spanningsmodus" + +msgid "Volume" +msgstr "Volume" + +msgid "W" +msgstr "W" + +msgid "WEP" +msgstr "WEP" + +msgid "WLAN connection" +msgstr "WLAN connectie" + +msgid "WPA" +msgstr "WPA" + +msgid "WPA or WPA2" +msgstr "WPA of WPA2" + +msgid "WPA2" +msgstr "WPA2" + +msgid "WSS on 4:3" +msgstr "WSS bij 4:3" + +msgid "Waiting" +msgstr "Wacht..." + +msgid "Waiting for mount" +msgstr "Wachten op de mount" + +msgid "Waiting for partition" +msgstr "Wacht op een verdeelpunt" + +msgid "Wakeup" +msgstr "Actief worden" + +msgid "Wakeup TV from standby" +msgstr "Activeer de TV vanuit standby" + +msgid "Wakeup receiver for start timer" +msgstr "Haal de ontvanger uit standby om een timeropname te starten" + +msgid "Wakeup receiver from standby" +msgstr "Activeer de ontvanger vanuit standby" + +msgid "Wakeup signal from TV" +msgstr "Activeer het signaal van TV" + +msgid "Wakeup type" +msgstr "Type 'Wakeup'" + +msgid "Warning: no LNB; using factory defaults." +msgstr "Waarschuwing: geen LNB; standaardwaardes worden gebruikt." + +msgid "Watch movies..." +msgstr "Films bekijken....." + +msgid "Watch recordings..." +msgstr "Opnames bekijken..." + +msgid "Wed" +msgstr "Wo" + +msgid "Wednesday" +msgstr "Woensdag" + +msgid "Weekday" +msgstr "Dag van de week" + +msgid "Weighted position" +msgstr "Gewogen positie" + +msgid "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start " +"cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." +msgstr "" +"Welkom bij de Cutlist editor.\n" +"\n" +"Start met zoeken welke passage u wenst te verwijderen. Druk op OK, selecteer " +"'start'.\n" +"\n" +"Ga naar het einde, druk op OK, selecteer 'eindpunt'. Eenvoudiger kan niet." + +msgid "" +"Welcome to the image upgrade wizard. The wizard will assist you in upgrading " +"the firmware of your receiver by providing a backup facility for your " +"current settings and a short explanation of how to upgrade your firmware." +msgstr "" +"Welkom bij de software updatewizard. De wizard assisteert u bij het " +"opwaarderen van de software van uw ontvanger door u een backupmogelijkheid " +"aan te bieden voor uw huidige instellingen, gecombineerd met een korte " +"uitleg hoe u de software kunt updaten." + +msgid "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide " +"you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" +msgstr "" +"Welkom.\n" +"\n" +"Indien u uw ontvanger aan het internet wilt koppelen zal de wizard u daarbij " +"begeleiden om de basis netwerksettings te plaatsen.\n" +"\n" +"Druk OK om te beginnen met de configuratie van uw netwerk." + +msgid "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." +msgstr "" +"Welkom.\n" +"\n" +"Deze opstarthulp voert u langs de basis instellingen van uw ontvanger.\n" +"Druk de OK toets op uw afstandsbediening om naar de volgende stap te gaan." + +msgid "Welcome..." +msgstr "Welkom..." + +msgid "West" +msgstr "West" + +msgid "West limit set" +msgstr "Westlimiet gezet" + +msgid "What do you want to scan?" +msgstr "Wat wilt u zoeken?" + +msgid "When enabled the PiP can be closed by the exit button." +msgstr "" +"Met deze optie stelt u in op welke wijze de PiP beëindigd kan worden met de " +"exit knop.\n" +"\n" +"U kunt kiezen uit, niet mogelijk, zonder popup of met popup." + +msgid "" +"When enabled the arrow buttons around the OK button will follow the " +"'neutrino' style zap controls instead of the enigma2 style." +msgstr "" +"Indien geactiveerd dan functioneren de toetsen rondom de OK toets zoals in " +"de 'neutrino stijl' in plaats van de 'enigma2 stijl'." + +msgid "" +"When enabled the left, right, CH+/-, B+/-, P+/- buttons will follow the " +"'neutrino' style zap controls instead of the enigma2 style." +msgstr "" +"Indien geactiveerd, dan werken de links, rechts, CH +/-, B +/-, P +/- " +"toetsen in de 'neutrino stijl' in plaats van de 'enigma2 stijl'." + +msgid "" +"When enabled you can specify a timeframe to ignore the shutdown timer when " +"the receiver is in standby mode" +msgstr "" +"Indien geactiveerd dan kan een tijdsruimte worden gespecificeerd waarbinnen " +"de uitschakel timer wordt genegeerd wanneer de tuner al in standby is." + +msgid "" +"When enabled you can specify a timeframe were the inactivity sleeptimer is " +"ignored. Not the detection is disabled during this timeframe but the " +"inactivity timeout is disabled" +msgstr "" +"Je kunt een periode opgeven waarin de inactiviteits sleeptimer wordt " +"genegeerd. De detectie wordt niet uitgeschakeld maar de inactiviteits " +"timeout wordt uitgeschakeld." + +msgid "" +"When enabled you can zap channels with the CH+/-, B+/-, P+/- buttons " +"instead of opening the channel selection list." +msgstr "" +"Indien geactiveerd, dan kan er gezapt worden met de CH +/-, B +/-, P +/- " +"knoppen in plaats van het openen zenderkeuze lijst." + +msgid "" +"When enabled you get the channel selection list via the OK button, the " +"infobar toggle is then transfered to exit button" +msgstr "" +"Indien geactiveerd opent de kanalenlijst met de 'Ok' toets. De " +"informatiebalk opent met de 'exit' toets." + +msgid "" +"When enabled, AIT data will be included in http streams. This allows a " +"client receiver to use HbbTV." +msgstr "" +"Indien geactiveerd, dan zal de AIT data worden toegevoegd aan de http " +"streams. Hiermee kan een cliënt-ontvanger HbbTV gebruiken." + +msgid "" +"When enabled, ECM data will be included in http streams. This allows a " +"client receiver to do the descrambling." +msgstr "" +"Indien geactiveerd, dan zal de ECM data worden toegevoegd aan de http " +"streams. Hiermee kan een cliënt-ontvanger de decodering uitvoeren." + +msgid "" +"When enabled, EIT data will be included in http streams. This allows a " +"client receiver to show EPG." +msgstr "" +"Indien geactiveerd, dan zal de EIT data toegevoegd worden aan de http " +"streams. Hiermee kan ook een cliënt-ontvanger de EPG tonen." + +msgid "" +"When enabled, a popup message will be shown when a movie has finished and " +"the next one will start." +msgstr "" +"Indien geactiveerd, dan zal er een bericht op het scherm getoond worden " +"zodra een film afgelopen is en een nieuwe zal starten." + +msgid "When enabled, a popup message will be shown when a recording starts." +msgstr "" +"Indien geactiveerd, dan zal er een bericht getoond worden bij het starten " +"van een opname." + +msgid "" +"When enabled, a radio background image will be visible while listening to a " +"radio channel." +msgstr "" +"Indien geactiveerd, dan zal er een achtergrondafbeelding getoond worden bij " +"het beluisteren van de radio." + +msgid "" +"When enabled, a recording is allowed to interrupt live tv, when there are no " +"free tuners." +msgstr "" +"Indien geactiveerd, dan kan een opname live TV onderbreken indien er geen " +"vrije tuners meer beschikbaar zijn." + +msgid "" +"When enabled, a warning will be displayed and the user will get an option to " +"stop or to continue the timeshift." +msgstr "" +"Indien geactiveerd, dan zal de gebruiker de optie worden getoond om de " +"timeshift te stoppen of door te laten lopen." + +msgid "When enabled, authentication is required to watch http streams." +msgstr "" +"Indien geactiveerd, dan dient u een wachtwoord in te vullen om http streams " +"te kunnen zien." + +msgid "When enabled, channel numbering will start at '1' for each bouquet." +msgstr "" +"Indien geactiveerd, dan zullen de kanaalnummers van ieder bouquet beginnen " +"bij '1'." + +msgid "" +"When enabled, content with an aspect ratio of 4:3 will be stretched to fit " +"the screen." +msgstr "" +"Indien geactiveerd, dan zal een 4:3 weergave omgezet worden tot een passend " +"beeld op het scherm." + +msgid "" +"When enabled, continue to the next bouquet when the last channel of the " +"current bouquet is reached while changing channels." +msgstr "" +"Indien geactiveerd, dan kunt u doorzappen naar het volgende bouquet indien " +"de laatste zender uit het huidige bouquet bereikt is." + +msgid "" +"When enabled, deleted recordings are moved to the trash can, instead of " +"being deleted immediately." +msgstr "" +"Indien geactiveerd, dan zullen gewiste opnames verplaatst worden naar de " +"prullenmand i.p.v. dat deze direct verwijderd worden." + +msgid "" +"When enabled, display the EIT now/next eventdata in infobar. When disabled, " +"display now/next eventdata from the EPG cache instead." +msgstr "" +"Indien geactiveerd, dan wordt de EIT nu / straks informatie in de " +"informatiebalk getoond. Zo niet, toon dan de nu / straks informatie vanuit " +"de EPG cache." + +msgid "" +"When enabled, encryption info will be shown in the infobar (when supported " +"by the skin)." +msgstr "" +"Indien geactiveerd, dan wordt de gebruikte kaartlezer + de coderingsinfo " +"getoond in de informatiebalk." + +msgid "" +"When enabled, error messages related to the Common Interface module will not " +"be shown." +msgstr "" +"Indien geactiveerd, dan worden de Common Interface gerelateerde meldingen " +"niet meer weergegeven. " + +msgid "When enabled, error messages related to zapping will not be shown." +msgstr "" +"Indien geactiveerd, dan worden fouten a.g.v. zappen niet meer weergegeven." + +msgid "" +"When enabled, external subtitles will be always turned on for playback movie." +msgstr "" +"Indien geactiveerd, dan zullen de externe ondertitels altijd worden " +"weergegeven tijdens het afspelen van een film. " + +msgid "" +"When enabled, graphical DVB subtitles are preferred over teletext subtitles, " +"when both types are available." +msgstr "" +"Indien geactiveerd, dan wordt, indien beide types ondertitels beschikbaar " +"zijn, de voorkeur gegeven aan de grafische DVB ondertitels t.o.v. de " +"teletext ondertitels." + +msgid "When enabled, graphical DVB subtitles will be centered horizontally." +msgstr "" +"Indien geactiveerd, dan worden de grafische DVB ondertitels horizontaal " +"gecentreerd." + +msgid "" +"When enabled, graphical DVB subtitles will be displayed at their original " +"position." +msgstr "" +"Indien geactiveerd, dan worden de grafische DVB ondertitels op hun " +"oorspronkelijke locatie weergegeven.\n" +"\n" +"U kunt dit instellen met de cursor R / L toetsen tussen origineel, vast of " +"relatief. De standaardwaarde is relatief." + +msgid "" +"When enabled, graphical DVB subtitles will be displayed in yellow, instead " +"of the original color." +msgstr "" +"Indien geactiveerd, dan worden de grafische DVB ondertitels in geel " +"weergegeven i.p.v. in de originele kleur." + +msgid "" +"When enabled, http streams are descrambled on the server side. The (remote) " +"client receiver does not have to do descrambling." +msgstr "" +"Indien geactiveerd, dan worden de http streams aan de serverzijde " +"gedecodeerd. De cliënt-ontvanger hoeft deze dan niet meer te decoderen. " + +msgid "When enabled, it is possible to leave the movieplayer with exit." +msgstr "" +"Met deze optie stelt u in of de 'exit' toets gebruikt mag worden om de " +"movieplayer te sluiten, en zo ja, op welke manier.\n" +"\n" +"U kunt kiezen uit niet mogelijk, met popup of zonder popup." + +msgid "" +"When enabled, measure power consumption to detect when the rotor stops " +"turning (when supported by the tuner)." +msgstr "" +"Indien geactiveerd, dan wordt het door de rotor opgenomen vermogen " +"gedetecteerd indien deze stopt met draaien. (indien door de tuner " +"ondersteund)" + +msgid "When enabled, number markers will be hiden." +msgstr "" +"Indien geactiveerd, zullen de kanaalnummers van lege zenders niet in de " +"zenderlijst worden getoond.\n" +"\n" +"Deze optie is alleen van toepassing op een zenderlijst of bouquet, gemaakt " +"met de FastScan en/of KabelScan optie." + +msgid "When enabled, services may be grouped in multiple bouquets." +msgstr "" +"Indien geactiveerd, dan worden zenders in verschillende bouquetten " +"gegroepeerd." + +msgid "When enabled, show channel numbers in the channel selection screen." +msgstr "Indien geactiveerd, toon dan de kanaalnummers in de zenderselectie." + +msgid "When enabled, subtitles for the hearing impaired can be used." +msgstr "" +"Indien geactiveerd, dan kunnen de ondertitels t.b.v. gehoorgestoorden " +"gebruikt worden." + +msgid "" +"When enabled, subtitles for the hearing impaired will be preferred over " +"normal subtitles, when both types are available." +msgstr "" +"Indien geactiveerd, dan wordt er, indien beide types beschikbaar, de " +"voorkeur gegeven aan de ondertitels voor gehoorgestoorden tegen de normale " +"ondertitels. " + +msgid "When enabled, teletext pages will be cached, allowing faster access." +msgstr "" +"Indien geactiveerd, dan wordt de teletext informatie gecached waardoor er " +"sneller door de teletext pagina's gebladerd kan worden." + +msgid "" +"When enabled, teletext subtitles will be displayed at their original " +"position." +msgstr "" +"Indien geactiveerd, dan worden teletext ondertitels op hun oorspronkelijk " +"locatie weergegeven." + +msgid "When enabled, the VCR scart option will be shown on the main menu" +msgstr "" +"Indien geactiveerd, dan zullen de VCR scartopties weergegeven worden in het " +"hoofdmenu." + +msgid "" +"When enabled, the channel selection list will be hidden while listening to a " +"radio channel" +msgstr "" +"Indien geactiveerd, dan wordt de zenderlijst niet weergegeven tijdens het " +"luisteren naar de radio." + +msgid "When enabled, the infobar will be displayed when a new event starts." +msgstr "" +"Indien geactiveerd, dan wordt de informatiebalk weergegeven indien een nieuw " +"programma start." + +msgid "When enabled, the infobar will be displayed when changing channels." +msgstr "" +"Indien geactiveerd, dan wordt de informatiebalk weergegeven bij wisseling " +"van zenders." + +msgid "" +"When enabled, the infobar will be displayed when skipping forwards/backwards " +"during media playback." +msgstr "" +"Indien geactiveerd, dan wordt de informatiebalk weergegeven tijdens het " +"voorwaarts / achterwaarts spoelen tijdens het afspelen van mediabestanden." + +msgid "" +"When enabled, the lenght of each recording will be shown in the movielist " +"(this might cause some additional loading time)." +msgstr "" +"Indien geactiveerd, dan wordt de lengte van iedere opname weergegeven in de " +"opnamelijst. (Hierdoor kan de laadtijd van de opnamelijst toenemen)." + +msgid "" +"When enabled, the original line breaks will be removed from the teletext " +"subtitles." +msgstr "" +"Indien geactiveerd, dan worden de originele CR verwijderd vanuit de teletext " +"ondertitels." + +msgid "" +"When enabled, the receiver will automatically use the audio track which you " +"selected before." +msgstr "" +"Indien geactiveerd, dan zal de tuner automatisch het eerder geselecteerde " +"audiospoor gebruiken." + +msgid "" +"When enabled, the receiver will automatically use the subtitles which you " +"selected before." +msgstr "" +"Indien geactiveerd, dan zal de ontvanger automatisch de eerder gekozen " +"ondertitels gebruiken." + +msgid "" +"When enabled, the receiver will no longer monitor the tuned transponder for " +"possible changes. Do not use this option unless you know what you are doing." +msgstr "" +"Indien geactiveerd, dan zal de ontvanger de huidige transponder niet meer " +"automatisch scannen op mogelijke wijzigingen. Gebruik deze optie niet indien " +"u deze optie niet exact begrijpt. " + +msgid "When enabled, the receiver will select an AC3 track (when available)." +msgstr "" +"Indien geactiveerd, dan selecteert de ontvanger een AC3 spoor indien deze " +"beschikbaar is." + +msgid "When enabled, the receiver will select an AC3+ track (when available)." +msgstr "" +"Indien geactiveerd, dan selecteert de ontvanger een AC3+ spoor indien deze " +"beschikbaar is." + +msgid "" +"When enabled, timeshift starts automatically in background after specified " +"time." +msgstr "" +"Met deze optie stelt u de tijdsduur in na hoeveel tijd de functie timeshift " +"automatisch op de achtergrond gestart wordt.\n" +"\n" +"U kunt kiezen tussen 0 - 5 minuten maximaal." + +msgid "When enabled, use DHCP for the IP configuration." +msgstr "Indien geactiveerd, gebruik dan DHCP om uw IPadres te bepalen." + +msgid "" +"When enabled, your receiver will detect activity on the VCR SCART input." +msgstr "" +"Indien geactiveerd, herkent de ontvanger een signaal op de VCR SCART ingang." + +msgid "" +"When nonzero, a recording will start earlier than the starting time " +"indicated by the EPG." +msgstr "" +"Met deze optie stelt u het aantal minuten in dat de opname eerder moet " +"starten t.o.v. het in de EPG of uw papieren TV gids aangegeven tijdsstip.\n" +"\n" +"U kunt hier zelf een waarde ingeven. " + +msgid "" +"When nonzero, a recording will stop later than the ending time indicated by " +"the EPG." +msgstr "" +"Met deze optie stelt u het aantal minuten in dat de lopende opname later " +"moet eindigen t.o.v. het in de EPG of uw papieren TV gids aangegeven " +"tijdsstip.\n" +"\n" +"U kunt hier zelf een waarde ingeven." + +msgid "" +"When the content has an aspect ratio of 16:9, choose whether to scale/" +"stretch the picture." +msgstr "" +"Indien het beeld een beeldverhouding heeft van >16:9, kies dan of je het " +"beeld geschaald of uitgerekt wenst te zien.\n" +"\n" +"U kunt kiezen uit letterbox, schalen, automatisch of pan & scan." + +msgid "" +"When the content has an aspect ratio of 4:3, choose whether to scale/stretch " +"the picture." +msgstr "" +"Indien het beeld een beeldverhouding heeft van 4:3, kies dan of je het beeld " +"geschaald of uitgerekt wenst te zien.\n" +"\n" +"U kunt kiezen uit pillarbox, schalen, automatisch, non liniair of pan & scan." + +msgid "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart " +"automatically!\n" +"\n" +"Really do a factory reset?" +msgstr "" +"Wanneer u terug gaat naar de fabrieksinstellingen verliest u al uw " +"instellingen\n" +"(inclusief bouquetten, zenders, satellietdata, etc ...)\n" +"Na het terugzetten van de fabrieksinstellingen zal uw ontvanger automatisch " +"herstarten!\n" +"\n" +"Wilt u deze actie daadwerkelijk uitvoeren?" + +msgid "Where do you want to backup your settings?" +msgstr "Waar wilt u de backup van uw instellingen opslaan?" + +msgid "Where to save temporary timeshift recordings?" +msgstr "Waar wilt u de tijdelijke timeshift opnames opslaan?" + +msgid "Wireless LAN" +msgstr "Draadloos netwerk" + +msgid "Wireless network" +msgstr "WIFI netwerk" + +msgid "Wireless network configuration..." +msgstr "WIFI netwerk instellingen..." + +msgid "Wireless network connection setup" +msgstr "Installatie van het draadloos netwerk" + +msgid "Wireless network connection setup." +msgstr "Installatie van het draadloos netwerk." + +msgid "Wireless network state" +msgstr "Status draadloos netwerk" + +msgid "With popup" +msgstr "Met popup" + +msgid "Without popup" +msgstr "Zonder popup" + +msgid "Would you like to install a softcam?" +msgstr "Wilt u een softcam installeren?" + +msgid "Write error while recording. Disk full?\n" +msgstr "Schrijffout tijdens opname. Harde schijf vol?\n" + +msgid "Write failed!" +msgstr "Schrijven mislukt!" + +msgid "YPbPr" +msgstr "Component" + +msgid "Year" +msgstr "Jaar" + +msgid "Yellow DVB subtitles" +msgstr "Gele DVB ondertiteling" + +msgid "Yes" +msgstr "Ja" + +msgid "Yes and save" +msgstr "Ja en sla op" + +msgid "Yes and save in movie dir" +msgstr "Ja en sla op in de opnamedirectory" + +msgid "Yes to all" +msgstr "Ja op alles" + +msgid "Yes, always" +msgstr "Ja, altijd" + +msgid "Yes, and delete this movie" +msgstr "Ja, en verwijder dit bestand" + +msgid "Yes, backup my settings!" +msgstr "Ja, ik wil een backup maken van mijn instellingen!" + +msgid "Yes, delete this movie and return to movie list" +msgstr "Ja, verwijder deze opname en keer terug naar het opnameoverzicht" + +msgid "Yes, do a manual scan now" +msgstr "Ja, voer nu de handmatige zoekfunctie uit" + +msgid "Yes, do an automatic scan now" +msgstr "Ja, voer nu de automatische zoekfunctie uit" + +msgid "Yes, do another manual scan now" +msgstr "Ja, ik wil nogmaals handmatig zoeken" + +msgid "Yes, perform a shutdown now." +msgstr "Ja, ik wil nu afsluiten." + +msgid "Yes, restore the settings now" +msgstr "Ja, de gegevens nu terugplaatsen" + +msgid "Yes, returning to movie list" +msgstr "Ja, terug naar de opname lijst" + +msgid "Yesterday" +msgstr "Gisteren" + +#, python-format +msgid "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" +msgstr "" +"Er is al een kanalenlijst geïnstalleerd.\n" +"Mag die verwijderd worden\n" +"\"%s\"?" + +msgid "You can cancel the installation." +msgstr "De installatie kan worden geannuleerd." + +msgid "You can cancel the removal." +msgstr "Verwijderen kan worden geannuleerd." + +msgid "You can continue watching TV etc. while this is running." +msgstr "U kunt TV enz. blijven kijken terwijl deze actie loopt." + +msgid "You can install this plugin." +msgstr "Deze plugin kunt u installeren." + +msgid "You can only burn receiver recordings!" +msgstr "U kunt enkel opnames branden die door uw receiver gemaakt zijn!" + +msgid "You can remove this plugin." +msgstr "Deze plugin kunt u verwijderen." + +msgid "You cannot delete this!" +msgstr "U kunt dit niet wissen!" + +msgid "You didn't select a channel to record from." +msgstr "U heeft geen kanaal geselecteerd om van op te nemen." + +msgid "" +"You have chosen to backup your settings. Please press OK to start the backup " +"now." +msgstr "" +"U heeft gekozen een backup van uw instellingen te maken. Druk op OK om te " +"beginnen." + +msgid "" +"You have chosen to create a new .NFI flasher bootable USB stick. This will " +"repartition the USB stick and therefore all data on it will be erased." +msgstr "" +"U heeft gekozen om een nieuwe .NFI flasher opstart USB stick aan te maken. " +"Alle data op de USB stick gaat onherroepelijk verloren." + +msgid "" +"You have chosen to restore your settings. Enigma2 will restart after " +"restore. Please press OK to start the restore now." +msgstr "" +"U heeft gekozen om uw instellingen te herstellen. Enigma2 zal herstarten na " +"het herstel. Druk op OK om te beginnen met het herstel." + +#, python-format +msgid "You have to wait %s!" +msgstr "Wacht op %s!" + +msgid "" +"You need a PC connected to your receiver. If you need further instructions, " +"please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update " +"instructions from the website, your new firmware will ask you to restore " +"your settings." +msgstr "" +"U heeft een PC nodig die met uw ontvanger verbonden is. Voor verdere " +"instructies brengt u een bezoek aan de website http://openpli.org/wiki/" +"HomePage.\n" +"Uw ontvanger stopt nu. Zodra u de juiste update instructies van de website " +"gevolgd hebt zal uw nieuwe firmware u vragen of uw voormalige settings " +"teruggeplaatst moeten worden. " + +msgid "You system does not support ext4" +msgstr "Uw systeem ondersteunt geen ext4" + +msgid "" +"Your backup succeeded. We will now continue to explain the further upgrade " +"process." +msgstr "" +"De backup is geslaagd. U krijgt nu een korte uitleg over het vervolg van het " +"update proces." + +msgid "" +"Your collection exceeds the size of a single layer medium, you will need a " +"blank dual layer DVD!" +msgstr "" +"Uw verzameling is groter dan wat erop een single layer medium past, u heeft " +"een lege dual layer DVD nodig!" + +msgid "Your current collection will get lost!" +msgstr "Uw huidige collectie zal verloren gaan!" + +msgid "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." +msgstr "" +"De frontprocessor firmware moet vernieuwd worden.\n" +"Druk op OK, om dit proces te starten." + +msgid "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Uw frontprocessor zal opgewaardeerd worden.\n" +"Wacht aub totdat uw ontvanger herstart.\n" +"Dit kan enige minuten duren." + +msgid "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." +msgstr "" +"Uw internetverbinding werkt helaas niet!\n" +"Kies wat u hierna wilt te doen." + +#, python-format +msgid "Your internet connection is working (ip: %s)" +msgstr "Uw internetverbinding is actief. Uw Ipadres is (ip: %s) " + +msgid "Your network configuration has been activated." +msgstr "De configuratie van uw netwerk is geactiveerd." + +msgid "Your receiver does not have an internet connection" +msgstr "Uw ontvanger heeft geen (actieve) internetverbinding." + +msgid "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" +msgstr "" +"Uw ontvanger is nu gereed voor gebruik.\n" +"\n" +"Uw internetverbinding werkt correct.\n" +"\n" + +msgid "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Uw ontvanger is gereed voor gebruik.\n" +"\n" +"Uw internetverbinding is nu actief.\n" +"\n" +"Druk OK om verder te gaan." + +msgid "Your receiver is rebooting" +msgstr "De ontvanger wordt herstart." + +msgid "Your receiver is shutting down" +msgstr "De ontvanger gaat uit" + +msgid "Your receiver is shutting down. Please stand by..." +msgstr "De ontvanger wordt uitgeschakeld. Even geduld AUB..." + +msgid "" +"Your receiver might be unusable now. Please consult the manual for further " +"assistance before rebooting your receiver." +msgstr "" +"Uw ontvanger kan nu onbruikbaar zijn. Lees eerst de handleiding voor extra " +"informatie voordat u de ontvanger herstart." + +msgid "Your receiver will got to stand by due to the sleeptimer." +msgstr "Uw ontvanger wordt door de sleeptimer in standby geschakeld." + +msgid "Your receiver will got to standby due to inactivity." +msgstr "Uw ontvanger wordt vanwege inaktiviteit, naar standby geschakeld." + +msgid "Your receiver will restart after pressing OK on your remote control." +msgstr "De ontvanger zal herstarten nadat u op OK gedrukt heeft." + +msgid "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." +msgstr "" +"Uw WIFI internetverbinding kan niet gestart worden!\n" +"Heeft u de USB WLAN Stick in de box geplaatst?\n" +"\n" +"Kies wat u vervolgens wilt doen." + +msgid "Zap" +msgstr "Zap" + +msgid "Zap back to previously tuned service?" +msgstr "Wilt u terug naar het vorige kanaal?" + +msgid "Zap back to service before positioner setup?" +msgstr "Wilt u terugkeren naar de vorige zender?" + +msgid "Zap back to service before tuner setup?" +msgstr "Wilt u terug naar het vorige kanaal" + +msgid "Zap focus to Picture in Picture" +msgstr "Zappen in PiP scherm" + +msgid "Zap focus to main screen" +msgstr "Zappen in hoofdscherm" + +msgid "Zap mode" +msgstr "Zapmodus" + +msgid "Zap to selected channel" +msgstr "Ga naar het geselecteerde kanaal" + +msgid "" +"Zap to selected channel, or show detailed event info (depends on " +"configuration)" +msgstr "" +"Zap naar de gekozen zender of toon gedetailleerde programmainformatie (dit " +"hangt van de configuratie af) " + +msgid "[alternative edit]" +msgstr "[alternatieven bewerken]" + +msgid "[bouquet edit]" +msgstr "[bouquetten bewerken]" + +msgid "[favourite edit]" +msgstr "[favorieten bewerken]" + +msgid "[move mode]" +msgstr "[verplaats modus]" + +msgid "a gui to assign services/providers to common interface modules" +msgstr "een GUI om zenders / providers aan de CI modules toe te voegen" + +msgid "a gui to assign services/providers/caids to common interface modules" +msgstr "een GUI om zenders / providers/ caids aan de CI modules toe te voegen" + +msgid "abort alternatives edit" +msgstr "Alternatieven bewerken afsluiten" + +msgid "abort bouquet edit" +msgstr "Bouquet bewerken afsluiten" + +msgid "abort favourites edit" +msgstr "Favorieten bewerken afsluiten" + +msgid "about to start" +msgstr "start zodadelijk" + +msgid "activate network adapter configuration" +msgstr "start de netwerkadapter configuratie" + +msgid "add alternatives" +msgstr "Alternatieven toevoegen" + +msgid "add bookmark" +msgstr "Markeerpunt toevoegen" + +msgid "add bouquet" +msgstr "bouquet toevoegen" + +msgid "add marker" +msgstr "Markeerpunt invoegen" + +msgid "add service to bouquet" +msgstr "Zender toevoegen aan bouquet" + +msgid "add service to favourites" +msgstr "Zender toevoegen aan favorieten" + +msgid "add to parental protection" +msgstr "Zender op kinderslot zetten" + +msgid "adult movie/drama" +msgstr "erotiek / drama" + +msgid "advanced" +msgstr "geavanceerd" + +msgid "adventure/western/war" +msgstr "avontuur / western / oorlog" + +msgid "advertisement/shopping" +msgstr "reclame / shopping" + +msgid "after " +msgstr "na " + +msgid "alphabetic" +msgstr "alfabetisch" + +msgid "alphabetic reverse" +msgstr "alfabetisch terug" + +msgid "alternative" +msgstr "Alternatief" + +msgid "always" +msgstr "altijd" + +msgid "and select next channel" +msgstr "en kies volgende zender" + +msgid "and select previous channel" +msgstr "en kies vorige zender" + +msgid "arts/culture (without music, general)" +msgstr "kunst / cultuur (algemeen)" + +msgid "arts/culture magazine" +msgstr "kunst / cultuurmagazine" + +msgid "athletics" +msgstr "atletiek" + +msgid "audio tracks" +msgstr "audiosporen" + +msgid "auto" +msgstr "auto" + +msgid "automatic" +msgstr "automatisch" + +msgid "back" +msgstr "terug" + +msgid "background image" +msgstr "achtergrondafbeelding" + +msgid "ballet" +msgstr "ballet" + +#, python-format +msgid "bc%s" +msgstr "bc%s" + +msgid "better" +msgstr "beter" + +msgid "black" +msgstr "zwart" + +msgid "black & white" +msgstr "zwart & wit" + +msgid "blacklist" +msgstr "zwarte lijst" + +msgid "blue" +msgstr "blauw" + +msgid "broadcasting/press" +msgstr "feeds / pers" + +msgid "by date" +msgstr "op datum" + +msgid "cartoon/puppets" +msgstr "tekenfilm / animatie" + +msgid "center" +msgstr "Centreer" + +msgid "centered" +msgstr "gecentreerd" + +msgid "centered, wrapped" +msgstr "gecentreerd, gedraaid" + +msgid "chapters" +msgstr "hoofdstukken" + +msgid "childrens's/youth program (general)" +msgstr "kinderen / jeugd (algemeen)" + +msgid "circular left" +msgstr "circular links" + +msgid "circular right" +msgstr "circular rechts" + +msgid "comedy" +msgstr "komedie" + +msgid "complex" +msgstr "complex" + +msgid "config menu" +msgstr "configuratiemenu" + +msgid "confirmed" +msgstr "bevestigd" + +msgid "connected" +msgstr "verbonden" + +msgid "continue" +msgstr "doorgaan" + +msgid "cooking" +msgstr "kookprogramma" + +msgid "copy to bouquets" +msgstr "Kopieer naar bouquetten" + +msgid "create directory" +msgstr "Map aanmaken" + +#, python-format +msgid "currently installed image: %s" +msgstr "huidig geïnstalleerde image: %s" + +msgid "daily" +msgstr "dagelijks" + +msgid "day" +msgstr "dag" + +msgid "default" +msgstr "standaard" + +msgid "delete cut" +msgstr "Wis snijpunt" + +msgid "delete..." +msgstr "verwijder..." + +msgid "descramble and record ecm" +msgstr "ecm decoderen en opnemen" + +msgid "detective/thriller" +msgstr "detective / thriller" + +msgid "disable" +msgstr "deactiveren" + +msgid "disable move mode" +msgstr "Verplaatsmode deactiveren" + +msgid "disabled" +msgstr "gedeactiveerd" + +msgid "disconnected" +msgstr "Verbroken" + +msgid "discussion/interview/debate" +msgstr "discussie / interview / debatten" + +msgid "do nothing" +msgstr "Geen actie" + +msgid "documentary" +msgstr "documentaire" + +msgid "don't descramble, record ecm" +msgstr "ecm niet decoderen maar wel opnemen" + +msgid "done!" +msgstr "gereed!" + +msgid "east" +msgstr "oost" + +msgid "economics/social advisory" +msgstr "economisch / sociaal" + +msgid "edit alternatives" +msgstr "Alternatieven bewerken" + +msgid "education/science/factual topics (general)" +msgstr "educatief / wetenschap / feiten (algemeen)" + +msgid "empty" +msgstr "leeg" + +msgid "enable" +msgstr "activeren" + +msgid "enable bouquet edit" +msgstr "Bouquet bewerken activeren" + +msgid "enable favourite edit" +msgstr "Favorieten bewerken activeren" + +msgid "enable move mode" +msgstr "Verplaatsmodus activeren" + +msgid "enabled" +msgstr "geactiveerd" + +msgid "end alternatives edit" +msgstr "Alternatieven bewerken stoppen" + +msgid "end bouquet edit" +msgstr "Bouquet bewerken stoppen" + +msgid "end cut here" +msgstr "Stop snijpunt hier" + +msgid "end favourites edit" +msgstr "Favorieten bewerken stoppen " + +msgid "entertainment (10-16 year old)" +msgstr "amusement (10-16 jaar)" + +msgid "entertainment (6-14 year old)" +msgstr "amusement (6-14 jaar)" + +msgid "equal to" +msgstr "gelijk aan" + +msgid "equestrian" +msgstr "ruitersport" + +msgid "exit DVD player or return to file browser" +msgstr "DVD speler afsluiten of terug naar bestandslijst" + +msgid "exit movielist" +msgstr "verlaat het opname overzicht" + +msgid "exit network adapter configuration" +msgstr "verlaat de netwerkadapter configuratie" + +msgid "exit networkadapter setup menu" +msgstr "verlaat het netwerkadapter instellingenmenu" + +msgid "experimental film/video" +msgstr "experimentele films / video" + +msgid "false" +msgstr "incorrect" + +msgid "fashion" +msgstr "mode" + +msgid "fileformats (BMP, PNG, JPG, GIF)" +msgstr "Bestandsformaat (BMP, PNG, JPG, GIF)" + +msgid "filename" +msgstr "bestandnaam" + +msgid "film/cinema" +msgstr "film / bioscoop" + +msgid "fine arts" +msgstr "fijne kunst" + +msgid "fine-tune your display" +msgstr "Uw scherm secuur afstellen" + +msgid "find currently played service" +msgstr "zoek service welke momenteel speelt" + +msgid "fitness & health" +msgstr "fitness & gezondheid" + +msgid "flat alphabetic" +msgstr "enkel alfabetisch" + +msgid "flat alphabetic reverse" +msgstr "enkel alfabetisch achterwaarts" + +msgid "folk/traditional music" +msgstr "Folk / Traditionele muziek" + +msgid "football/soccer" +msgstr "voetbal" + +msgid "foreign countries/expeditions" +msgstr "onbekende landen / expedities" + +msgid "forward to the next chapter" +msgstr "Verder naar het volgende hoofdstuk" + +msgid "free" +msgstr "vrij" + +msgid "from" +msgstr "van" + +msgid "further education" +msgstr "meer educatie" + +msgid "game show/quiz/contest" +msgstr "speshow / quiz / wedstrijd" + +msgid "gardening" +msgstr "tuinieren" + +msgid "go to deep standby" +msgstr "uitschakelen" + +msgid "go to standby" +msgstr "standby" + +msgid "grab this frame as bitmap" +msgstr "Maak van dit scherm een screenshot" + +msgid "green" +msgstr "groen" + +msgid "handicraft" +msgstr "ambacht" + +msgid "height" +msgstr "hoogte" + +msgid "help..." +msgstr "Help..." + +msgid "horizontal" +msgstr "horizontaal" + +msgid "information/education/school program" +msgstr "informatie / educatief / school TV" + +msgid "init module" +msgstr "module initialiseren" + +msgid "init modules" +msgstr "initialiseer modules" + +msgid "insert mark here" +msgstr "Markeerpunt invoegen" + +msgid "invalid type" +msgstr "ongeldig type" + +msgid "jazz" +msgstr "jazz" + +msgid "jump back to the previous title" +msgstr "terug naar vorige titel" + +msgid "jump forward to the next title" +msgstr "vooruit naar volgende titel" + +msgid "languages" +msgstr "talen" + +msgid "leave movie player..." +msgstr "PVR afsluiten" + +msgid "left" +msgstr "links" + +msgid "left, wrapped" +msgstr "links, eromheen" + +msgid "leisure hobbies (general)" +msgstr "ontspanning / hobbies (algemeen)" + +msgid "length" +msgstr "lengte" + +msgid "limit ..., aborting !" +msgstr "limiet niet bepalen. Stoppen!" + +msgid "list style compact" +msgstr "Weergave: Compact" + +msgid "list style compact with description" +msgstr "Weergave: Compact met omschrijving" + +msgid "list style default" +msgstr "Weergave: Standaard" + +msgid "list style single line" +msgstr "Weergave: Enkele regel" + +msgid "literature" +msgstr "literatuur" + +msgid "live broadcast" +msgstr "live uitzending" + +msgid "locked" +msgstr "locked" + +msgid "loopthrough to" +msgstr "Doorlus naar" + +msgid "magazines/reports/documentary" +msgstr "magazines / verslagen / documentaires" + +msgid "manual" +msgstr "handmatig" + +msgid "martial sports" +msgstr "vechtsport" + +msgid "medicine/physiology/psychology" +msgstr "geneeskunde / physiologie / psychologie" + +msgid "menu" +msgstr "menu" + +msgid "mins" +msgstr "min" + +msgid "minutes" +msgstr "minuten" + +msgid "month" +msgstr "maand" + +msgid "motor sport" +msgstr "motorsport" + +msgid "motoring" +msgstr "motors" + +msgid "move down to last entry" +msgstr "verplaats omlaag naar laatste ingave" + +msgid "move down to next entry" +msgstr "verplaats omlaag naar volgende ingave" + +msgid "move up to first entry" +msgstr "verplaats omhoog naar eerste ingave" + +msgid "move up to previous entry" +msgstr "verplaats omhoog naar vorige ingave" + +msgid "movie/drama (general)" +msgstr "film / drama (algemeen)" + +msgid "multinorm" +msgstr "multinorm" + +msgid "music/ballet/dance (general)" +msgstr "muziek / ballet / dans (algemeen)" + +msgid "musical/opera" +msgstr "musical / opera" + +msgid "nature/animals/environment" +msgstr "natuur / dieren / milieu" + +msgid "never" +msgstr "nooit" + +msgid "new media" +msgstr "nieuwe media" + +msgid "news magazine" +msgstr "nieuwsmagazine" + +msgid "news/current affairs (general)" +msgstr "nieuws / actualiteiten (algemeen)" + +msgid "news/weather report" +msgstr "nieuws / weer" + +msgid "no" +msgstr "nee" + +msgid "no CAId selected" +msgstr "Geen CAId geselecteerd" + +msgid "no CI slots found" +msgstr "Geen CI slots gevonden" + +msgid "no module found" +msgstr "Geen module gevonden" + +msgid "no storage devices found" +msgstr "geen opslagmedia gevonden" + +msgid "none" +msgstr "geen" + +msgid "normal" +msgstr "normaal" + +msgid "not configured" +msgstr "niet ingesteld" + +msgid "not locked" +msgstr "niet gelockt" + +msgid "not supported" +msgstr "niet ondersteund" + +msgid "not used" +msgstr "niet gebruikt" + +msgid "nothing connected" +msgstr "niets aangesloten" + +msgid "of a DUAL layer medium used." +msgstr "op een DUAL layer medium gebruikt." + +msgid "of a SINGLE layer medium used." +msgstr "op een SINGLE layer medium gebruikt." + +msgid "off" +msgstr "uit" + +msgid "offset is" +msgstr "afstand is" + +msgid "on" +msgstr "aan" + +msgid "on READ ONLY medium." +msgstr "op ALLEEN LEZEN medium." + +msgid "on end of movie" +msgstr "aan het einde van de opname" + +msgid "once" +msgstr "éénmalig" + +msgid "only from deep standby" +msgstr "enkel vanuit 'deep standby'" + +msgid "only from standby" +msgstr "enkel vanuit 'standby'" + +msgid "open EPG..." +msgstr "open EPG..." + +msgid "open Info..." +msgstr "open Info..." + +msgid "open nameserver configuration" +msgstr "Open nameserver configuratie" + +msgid "original" +msgstr "origineel" + +msgid "original language" +msgstr "orginele taal" + +msgid "pass" +msgstr "passage" + +msgid "performing arts" +msgstr "uitvoerende kunsten" + +msgid "play as picture in picture" +msgstr "speel als picture in picture" + +msgid "play in mainwindow" +msgstr "afspelen in hoofdscherm" + +msgid "please press OK when ready" +msgstr "druk op OK als u gereed bent" + +msgid "please wait, loading picture..." +msgstr "Een ogenblik geduld, de foto wordt geladen..." + +msgid "popular culture/traditional arts" +msgstr "moderne cultuur / traditionele kunst" + +msgid "pre-school children's program" +msgstr "peuter / kinderprogramma" + +msgid "receiver software because updates are available." +msgstr "ontvanger software omdat updates verkrijgbaar zijn." + +msgid "record" +msgstr "opname" + +msgid "recording..." +msgstr "opnemen..." + +msgid "red" +msgstr "rood" + +msgid "religion" +msgstr "religie" + +msgid "remarkable people" +msgstr "opmerkelijke personen" + +msgid "remove after this position" +msgstr "Verwijder achter deze positie" + +msgid "remove all alternatives" +msgstr "Verwijder alle alternatieven" + +msgid "remove all new found flags" +msgstr "verwijder alle 'nieuw gevonden' markeringen" + +msgid "remove before this position" +msgstr "Verwijder voor deze positie" + +msgid "remove bookmark" +msgstr "Markeerpunt verwijderen" + +msgid "remove directory" +msgstr "Map verwijderen" + +msgid "remove entry" +msgstr "Invoer verwijderen" + +msgid "remove from parental protection" +msgstr "Verwijder kinderslot" + +msgid "remove new found flag" +msgstr "verwijder 'nieuw gevonden' markering" + +msgid "remove selected satellite" +msgstr "Deze satelliet verwijderen" + +msgid "remove this mark" +msgstr "verwijder deze markering" + +msgid "rename entry" +msgstr "hernoem de ingave" + +msgid "repeat playlist" +msgstr "Herhaal afspeellijst" + +msgid "repeated" +msgstr "herhalen" + +msgid "reverse by date" +msgstr "terug op datum" + +msgid "rewind to the previous chapter" +msgstr "terugspoelen naar vorig hoofdstuk" + +msgid "right" +msgstr "rechts" + +msgid "right, wrapped" +msgstr "rechts, gedraaid" + +msgid "rock/pop" +msgstr "rock / pop" + +msgid "romance" +msgstr "romantiek" + +msgid "save last directory on exit" +msgstr "Bewaar laatste map bij het beëindigen" + +msgid "save playlist on exit" +msgstr "Bewaar afspeellijst bij het beëindigen" + +msgid "scan state" +msgstr "zoekstatus" + +msgid "science fiction/fantasy/horror" +msgstr "science fiction / fantasie / horror" + +msgid "second cable of motorized LNB" +msgstr "2e kabel van gemotoriseerde LNB" + +msgid "seconds" +msgstr "seconden" + +msgid "select" +msgstr "selecteer" + +msgid "select CAId's" +msgstr "Selecteer CAId's" + +msgid "select EPG..." +msgstr "kies de EPG..." + +msgid "select Info..." +msgstr "kies de Info..." + +msgid "select menu entry" +msgstr "selecteer menuitem" + +msgid "select movie" +msgstr "kies de opname" + +msgid "select the movie path" +msgstr "kies de opname map" + +msgid "serious music/classic music" +msgstr "serieuse / klassieke muziek" + +msgid "serious/classical/religious/historical movie/drama" +msgstr "serieuze / klassiek / religieus / historische film / drama" + +msgid "service PIN" +msgstr "service pincode" + +msgid "set as startup service" +msgstr "kanaal kiezen bij opstarten" + +msgid "setup PIN" +msgstr "Stel pincode in" + +msgid "show DVD main menu" +msgstr "DVD hoofdmenu weergeven" + +msgid "show all tags" +msgstr "Laat alle tags zien" + +msgid "show alternatives" +msgstr "Alternatieven weergeven" + +msgid "show event details" +msgstr "EPG details weergeven" + +msgid "show extended description" +msgstr "toon de uitgebreide omschrijving" + +msgid "show mediaplayer on mainmenu" +msgstr "mediaplayer op hoofdmenu tonen" + +msgid "show softwaremanager in setup menu" +msgstr "Softwaremanager zichtbaar in setup menu" + +msgid "show softwaremanager on blue button" +msgstr "Softwaremanager zichtbaar onder blauwe knop" + +msgid "show tag menu" +msgstr "toon het tag menu" + +msgid "show transponder info" +msgstr "Transponder info weergeven" + +msgid "show/game show (general)" +msgstr "show / quiz (algemeen)" + +msgid "shuffle" +msgstr "willekeurig" + +msgid "shut down" +msgstr "uitschakelen" + +msgid "simple" +msgstr "eenvoudig" + +msgid "skip backward" +msgstr "Achteruit springen" + +msgid "skip forward" +msgstr "Vooruit springen" + +msgid "soap/melodram/folkloric" +msgstr "soap / melodrama / folklore" + +msgid "social/political issues/economics (general)" +msgstr "sociaal / politiek / economisch (algemeen)" + +msgid "social/spiritual science" +msgstr "sociale / geestelijke wetenschap" + +msgid "sorting of playlists" +msgstr "sorteren van afspeellijsten" + +msgid "special characters" +msgstr "speciale tekens" + +msgid "special events" +msgstr "speciale gebeurtenissen" + +msgid "special format data DVD (HDTV compatible)" +msgstr "speciaal formaat data DVD (HDTV compatible)" + +msgid "sports (general)" +msgstr "sport (algemeen)" + +msgid "sports magazine" +msgstr "sportmagazine" + +msgid "standard" +msgstr "Standaard" + +msgid "start cut here" +msgstr "Start knippen hier" + +msgid "start directory" +msgstr "Start map" + +msgid "stepsize" +msgstr "stapgrootte" + +msgid "stereo" +msgstr "stereo" + +msgid "stop using as startup service" +msgstr "stop met het gebruiken als opstartzender" + +msgid "switch to bookmarks" +msgstr "Ga naar markeerpunten" + +msgid "switch to filelist" +msgstr "Ga naar bestandenlijst" + +msgid "switch to the next angle" +msgstr "schakel naar de volgende hoek" + +msgid "switch to the next audio track" +msgstr "Volgend audiospoor" + +msgid "switch to the next subtitle language" +msgstr "Volgende ondertiteltaal" + +msgid "talk show" +msgstr "talkshow" + +msgid "team sports" +msgstr "teamsporten" + +msgid "technology/natural science" +msgstr "technologisch / natuurwetenschappen" + +msgid "template file" +msgstr "sjabloonbestand" + +msgid "tennis/squash" +msgstr "tennis / squash" + +msgid "this recording" +msgstr "deze opname" + +msgid "this service is protected by a parental control pin" +msgstr "Dit kanaal is beveiligd met een kinderslot" + +msgid "toggle time, chapter, audio, subtitle info" +msgstr "Tijd, hoofdstuk, audio en ondertitels instellen" + +msgid "top" +msgstr "top" + +msgid "tourism/travel" +msgstr "toerisme / reizen" + +msgid "true" +msgstr "juist" + +msgid "unavailable" +msgstr "niet beschikbaar" + +msgid "unconfirmed" +msgstr "onbevestigd" + +msgid "undefined" +msgstr "geen gedefinieerd" + +msgid "unknown" +msgstr "onbekend" + +msgid "unknown service" +msgstr "onbekende zender" + +msgid "unpublished" +msgstr "niet gepubliceerd" + +msgid "until standby/restart" +msgstr "tot standby / herstart" + +msgid "user defined" +msgstr "door u gedefinieerd" + +msgid "variety show" +msgstr "variété / show" + +msgid "vertical" +msgstr "verticaal" + +msgid "wait for ci..." +msgstr "wacht op CI..." + +msgid "wait for mmi..." +msgstr "wacht op mmi..." + +msgid "waiting" +msgstr "ingepland" + +msgid "water sport" +msgstr "watersport" + +msgid "weekly" +msgstr "wekelijks" + +msgid "west" +msgstr "west" + +msgid "when PiPzap enabled zap channel down..." +msgstr "indien PIPzap actief is, zap naar een lager kanaal..." + +msgid "when PiPzap enabled zap channel up..." +msgstr "indien PIPzap actief is, zap naar een hoger kanaal..." + +msgid "white" +msgstr "wit" + +msgid "whitelist" +msgstr "witte lijst" + +msgid "width" +msgstr "breedte" + +msgid "winter sport" +msgstr "wintersport" + +msgid "wireless network interface" +msgstr "draadloze netwerkinterface" + +#, python-format +msgid "with %d error" +msgid_plural "with %d errors" +msgstr[0] "met %d fout" +msgstr[1] "met %d fouten" + +msgid "working" +msgstr "bezig" + +msgid "yellow" +msgstr "geel" + +msgid "yes" +msgstr "ja" + +msgid "yes (keep feeds)" +msgstr "ja (bewaar feeds)" + +msgid "zap" +msgstr "zap" + +msgid "zap and record" +msgstr "zap en neem op" + +msgid "zapped" +msgstr "zapte" + +msgid "(not activated)" +msgstr "(gedeactiveerd)" + +msgid "(activated +%d min)" +msgstr "(geactiveerd +%d min)" + +#~ msgid "AA" +#~ msgstr "AA" + +#~ msgid "AB" +#~ msgstr "AB" + +#~ msgid "Activate PiP" +#~ msgstr "Activeer PiP" + +#~ msgid "Add/remove timer for current event" +#~ msgstr "Verwijderen of voeg een timer toe voor het huidige programma" + +#~ msgid "Adjust HDMI CEC settings" +#~ msgstr "HDMI CEC instellingen aanpassen" + +#~ msgid "All satellites" +#~ msgstr "Alle satellieten" + +#~ msgid "And will shutdown your receiver over " +#~ msgstr "En sluit uw ontvanger af na" + +#~ msgid "BA" +#~ msgstr "BA" + +#~ msgid "BB" +#~ msgstr "BB" + +#~ msgid "Behavior of 'pause' when paused" +#~ msgstr "Functie van de 'pauzetoets' gedurende pauze" + +#~ msgid "Choose your Skin" +#~ msgstr "Skin selectie" + +#~ msgid "Committed DiSEqC command" +#~ msgstr "Vastgelegd DiSEqC commando" + +#~ msgid "Configure if and how service type icons will be shown." +#~ msgstr "" +#~ "Configureer of en hoe de picons weergegeven worden in de zenderlijst" + +#~ msgid "Configure if service picons will be shown in the servicelist." +#~ msgstr "Configureer of de picons weergegeven worden in de zenderlijst." + +#~ msgid "" +#~ "Configure of and how long the latest service in the PiP will be " +#~ "remembered." +#~ msgstr "" +#~ "Hiermee stelt u in hoe lang de laatst gebruikte zender zender in PIP " +#~ "onthouden blijft." + +#~ msgid "" +#~ "Configure the behavior of the 'pause' key when movie playback is already " +#~ "paused." +#~ msgstr "" +#~ "Met deze optie stelt u in hoe de \"pauzetoets\" reageert indien een film " +#~ "al gepauzeerd is.\n" +#~ "\n" +#~ "U kunt kiezen uit afspelen, stap voor stap of afspelen met de laatste " +#~ "snelheid." + +#~ msgid "" +#~ "Configure the duration in hours and action, which could be shut down or " +#~ "standby, when the receiver is not controlled." +#~ msgstr "" +#~ "Stel de tijdsduur (in uren en lopende activiteit) in waarna de STB wordt " +#~ "afgesloten of naar standby gaat, indien de ontvanger niet wordt bediend." + +#~ msgid "" +#~ "Configure the duration in minutes and action, which could be shut down or " +#~ "standby, for the sleeptimer. Select this entry and click OK or green to " +#~ "start/stop the sleeptimer" +#~ msgstr "" +#~ "Met deze optie stelt u de tijdsduur in minuten of lopende acties in voor " +#~ "de sleeptimer, waarna de STB wordt afgesloten of naar standby gaat. Kies " +#~ "de gewenste waarde en druk op OK of de groene toets om de sleeptimer te " +#~ "starten/stoppen. " + +#~ msgid "Current mode:" +#~ msgstr "Huidige mode:" + +#~ msgid "Delete mount" +#~ msgstr "Verwijder mount" + +#~ msgid "DiSEqC repeats" +#~ msgstr "DiSEqC herhaling" + +#~ msgid "Enable neutrino style zap controlling" +#~ msgstr "Kies voor de 'neutrino' manier van zappen" + +#~ msgid "Goto specific data/time" +#~ msgstr "Naar een specifieke datum/tijd" + +#~ msgid "Memory positions" +#~ msgstr "Geheugenposities" + +#~ msgid "Nameserver Setup" +#~ msgstr "Instellingen van de nameserver" + +#~ msgid "Network Configuration" +#~ msgstr "Netwerkconfiguratie" + +#~ msgid "Network Setup" +#~ msgstr "Netwerkinstellingen" + +#~ msgid "No satellite frontend found!!" +#~ msgstr "Geen satelliettuner gevonden." + +#~ msgid "Press '0' to toggle internal/external PiP." +#~ msgstr "Druk '0' om tussen de interne/externe PiP te schakelen." + +#~ msgid "Remove timer" +#~ msgstr "Verwijder timer" + +#~ msgid "Select Network Adapter" +#~ msgstr "Selecteer Netwerk Adapter" + +#~ msgid "Select action for timer " +#~ msgstr "Selecteer actie voor timer " + +#~ msgid "Send DiSEqC" +#~ msgstr "Verstuur DiSEqC" + +#~ msgid "Show picons in servicelist" +#~ msgstr "Toon picons in de zenderlijst" + +#~ msgid "Show softcam setup in extensions menu" +#~ msgstr "Toon softcam instelling in uitbreidings menu" + +#~ msgid "Shutdown after current event" +#~ msgstr "Sluit de ontvanger af na de huidige actie" + +#~ msgid "Shutdown in " +#~ msgstr "Sluit af na" + +#~ msgid "Switch next channel" +#~ msgstr "Ga naar het volgende kanaal" + +#~ msgid "Toggle InfoBar" +#~ msgstr "Open / sluit Informatiebalk" + +#~ msgid "Tuning step size" +#~ msgstr "Afstemmen, stapgrootte" + +#~ msgid "Uncommitted DiSEqC command" +#~ msgstr "Uncommitted DiSEqC commando" + +#~ msgid "" +#~ "When enabled the arrow buttons around the OK button will follow the " +#~ "neutrino style zap controls instead of the enigma2 style." +#~ msgstr "" +#~ "Indien geactiveerd, dan werken de pijltoetsen rond de OK knop volgens de " +#~ "oude 'Neutrino' manier in plaats van Enigma2." + +#~ msgid "" +#~ "When enabled you get the channel selection list via the OK button, the " +#~ "infobar toggle is then transfered to the CH+/-, B+/-, P+/- buttons" +#~ msgstr "" +#~ "Indien geactiveerd, dan kan met de OK toets de zenderlijst geopend " +#~ "worden. Met de CH +/-, B +/-, P +/- toetsen kan dan de informatiebalk " +#~ "getoond worden." + +#~ msgid "Your receiver will shutdown due to inactivity." +#~ msgstr "Uw ontvanger wordt vanwege inaktiviteit, uitgeschakeld." + +#~ msgid "Your receiver will shutdown due to the sleeptimer." +#~ msgstr "Uw ontvanger zal afsluiten als gevolg van een sleeptimer." + +#~ msgid "Zap back to service before satfinder?" +#~ msgstr "Wilt u terugkeren naar de vorige zender?" + +#~ msgid "pixels wide" +#~ msgstr "pixels breed" + +#~ msgid "tuner is not supported" +#~ msgstr "tuner wordt niet ondersteund" diff --git a/po/no.po b/po/no.po new file mode 100644 index 0000000..dee4d8f --- /dev/null +++ b/po/no.po @@ -0,0 +1,9156 @@ +# Norwegian translations for Enigma2. +# +msgid "" +msgstr "" +"Project-Id-Version: enigma2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-07-21 19:08+0200\n" +"PO-Revision-Date: 2013-10-23 19:15+0100\n" +"Last-Translator: andy1 <dmmm8000pvr@gmail.com>\n" +"Language-Team: none\n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Poedit-SourceCharset: iso-8859-15\n" +"X-Generator: Poedit 1.5.7\n" +"X-Poedit-Bookmarks: -1,-1,-1,-1,-1,31,1959,-1,-1,-1\n" + +msgid "" +"\n" +"Advanced options and settings." +msgstr "" +"\n" +"Utvidede alternativer og innstillinger." + +# +msgid "" +"\n" +"After pressing OK, please wait!" +msgstr "" +"\n" +"Etter å ha trykket OK, vennligst vent!" + +msgid "" +"\n" +"Backup your receiver settings." +msgstr "" +"\n" +"Ta sikkerhetskopi av mottakerinnstillinger." + +msgid "" +"\n" +"Edit the upgrade source address." +msgstr "" +"\n" +"Endre oppdateringsadresse." + +msgid "" +"\n" +"Manage extensions or plugins for your receiver" +msgstr "" +"\n" +"Administrere programvare utvidelser til mottakeren." + +msgid "" +"\n" +"Online update of your receiver software." +msgstr "" +"\n" +"Online oppdatering av din mottaker" + +# +msgid "" +"\n" +"Press OK on your remote control to continue." +msgstr "" +"\n" +"Trykk OK på fjernkontrollen for å fortsette." + +msgid "" +"\n" +"Restore your backups by date." +msgstr "" +"\n" +"Gjenopprette sikkerhetskopier etter dato." + +msgid "" +"\n" +"Restore your receiver settings." +msgstr "" +"\n" +"Gjenopprette mottakeren." + +msgid "" +"\n" +"Restore your receiver with a new firmware." +msgstr "" +"\n" +"Gjenopprette mottakeren med ny programvare." + +msgid "" +"\n" +"Scan for local extensions and install them." +msgstr "" +"\n" +"Søke etter og installere lokale utvidelser." + +# +msgid "" +"\n" +"Select your backup device.\n" +"Current device: " +msgstr "" +"\n" +"Velg din sikkerhetskopi.\n" +"Nåværende kopi:" + +msgid "" +"\n" +"View, install and remove available or installed packages." +msgstr "" +"\n" +"Se gjennom, installere/ avinstallere programpakker." + +msgid " (PiP)" +msgstr "" + +msgid " (Radio)" +msgstr "" + +msgid " (TV)" +msgstr "" + +msgid " (disabled)" +msgstr "" + +msgid " (higher than any auto)" +msgstr "" + +msgid " (higher than rotor any auto)" +msgstr "" + +msgid " (lower than any auto)" +msgstr "" + +# +msgid " extensions." +msgstr " utvidelser." + +msgid " ms" +msgstr "" + +msgid " packages selected." +msgstr " valgte pakker." + +msgid " updates available." +msgstr " oppdateringer er tilgjengelig." + +#. TRANSLATORS: short time representation hour:minute +#, python-format +msgid "%2d:%02d" +msgstr "" + +#. TRANSLATORS: full time representation hour:minute:seconds +#, python-format +msgid "%2d:%02d:%02d" +msgstr "" + +msgid "%A %d %B" +msgstr "" + +#. TRANSLATORS: long date representations dayname daynum monthname in strftime() format! See 'man strftime' +msgid "%A %e %B" +msgstr "" + +#. TRANSLATORS: full date representation dayname daynum monthname year in strftime() format! See 'man strftime' +msgid "%A %e %B %Y" +msgstr "" + +msgid "%H:%M" +msgstr "" + +#. TRANSLATORS: short date representation short dayname daynum short monthname in strftime() format! See 'man strftime' +msgid "%a %e/%m" +msgstr "" + +#. TRANSLATORS: long date representation short dayname daynum short monthname hour:minute in strftime() format! See 'man strftime' +msgid "%a %e/%m %-H:%M" +msgstr "" + +# +#. TRANSLATORS: Intermediate scanning result, '%d' channel(s) have been found so far +#, python-format +msgid "%d channel found" +msgid_plural "%d channels found" +msgstr[0] "%d kanal funnet!" +msgstr[1] "%d kanaler funnet!" + +#, python-format +msgid "%d file" +msgid_plural "%d files" +msgstr[0] "%d mappe" +msgstr[1] "%d mapper" + +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d time" +msgstr[1] "%d timer" + +#, python-format +msgid "%d job is running in the background!" +msgid_plural "%d jobs are running in the background!" +msgstr[0] "%d arbeid pågår i bakgrunnen!" +msgstr[1] "%d arbeider pågår i bakgrunnen!" + +# +#, python-format +msgid "%d min" +msgstr "" + +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d minutt" +msgstr[1] "%d minutter" + +#, python-format +msgid "%d minutes" +msgstr "%d minutter" + +#, python-format +msgid "%d pixel wide" +msgid_plural "%d pixels wide" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "%d sekund" +msgstr[1] "%d sekunder" + +#, python-format +msgid "%d subdirectory" +msgid_plural "%d subdirectories" +msgstr[0] "%d rotkatalog" +msgstr[1] "%d rotkataloger" + +# +#, python-format +msgid "%d wireless network found!" +msgid_plural "%d wireless networks found!" +msgstr[0] "%d trådløst nettverk er funnet!" +msgstr[1] "%d trådløse nettverk er funnet!" + +msgid "%d-%b-%Y %-H:%M" +msgstr "" + +msgid "%d-%m" +msgstr "" + +msgid "%d.%B %Y" +msgstr "" + +#. TRANSLATORS: VFD hour:minute daynum short monthname in strftime() format! See 'man strftime' +msgid "%k:%M %e/%m" +msgstr "" + +#, python-format +msgid "%s %s free disk space" +msgstr "%s %s ledig diskplass" + +#, python-format +msgid "%s (%s)\n" +msgstr "" + +#. TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. +#, python-format +msgid "%s is no longer used. Should it be deleted?" +msgstr "%s er ikke lenger i bruk. Skal den slettes?" + +#, python-format +msgid "%s updated package available" +msgid_plural "%s updated packages available" +msgstr[0] "%s oppdatert programvare er tilgjengelig" +msgstr[1] "%s oppdaterte programvarepakker er tilgjengelig" + +# +#, python-format +msgid "%s%d min" +msgstr "" + +#, python-format +msgid "%s/%s: %s" +msgstr "" + +msgid "(ZAP)" +msgstr "(GÅ TIL)" + +# +msgid "(empty)" +msgstr "(tom)" + +# +msgid "(show optional DVD audio menu)" +msgstr "(vis alternativ DVD lydmeny)" + +msgid "* Only available if more than one interface is active." +msgstr "* Bare tilgjengelig hvis en eller flere grensesnitt er aktive." + +msgid "/s" +msgstr "" + +# +msgid "0" +msgstr "" + +# +msgid "1" +msgstr "" + +# +msgid "1.0" +msgstr "" + +# +msgid "1.1" +msgstr "" + +# +msgid "1.2" +msgstr "" + +# +msgid "12V output" +msgstr "12V utgang" + +# +msgid "13 V" +msgstr "" + +# +msgid "16:10" +msgstr "" + +# +msgid "16:10 Letterbox" +msgstr "" + +msgid "16:10 PanScan" +msgstr "" + +# +msgid "16:9" +msgstr "" + +msgid "16:9 Letterbox" +msgstr "" + +# +msgid "16:9 always" +msgstr "16:9 alltid" + +# +msgid "18 V" +msgstr "" + +# +msgid "2" +msgstr "" + +msgid "23.976" +msgstr "" + +# +msgid "24" +msgstr "" + +# +msgid "25" +msgstr "" + +msgid "29.97" +msgstr "" + +# +msgid "3" +msgstr "" + +# +msgid "30" +msgstr "" + +msgid "3d mode" +msgstr "3d valg" + +# +msgid "4" +msgstr "" + +# +msgid "4:3" +msgstr "" + +# +msgid "4:3 Letterbox" +msgstr "" + +msgid "4:3 PanScan" +msgstr "" + +# +msgid "5" +msgstr "" + +# +msgid "6" +msgstr "" + +# +msgid "7" +msgstr "" + +# +msgid "8" +msgstr "" + +# +msgid "9" +msgstr "" + +#, python-format +msgid ": %s" +msgstr "" + +msgid "<Current movielist location>" +msgstr "<Gjeldende spilliste>" + +msgid "<Default movie location>" +msgstr "<Standard spilliste>" + +msgid "<Last timer location>" +msgstr "<Siste plassering av tidtaker>" + +# +msgid "<unknown>" +msgstr "<ukjent>" + +# +msgid "??" +msgstr "" + +# +msgid "A" +msgstr "" + +# +#, python-format +msgid "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" +msgstr "" +"En konfigurasjonsfil (%s) har blitt endret siden installering.\n" +"Vil du beholde dine endringer?" + +# +#, python-format +msgid "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" +msgstr "" +"En konfigurasjonsfil (%s) har blitt endret siden installering.\n" +"Vil du bruke din versjon ?" + +msgid "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"Et tidtakeropptak er ferdig og ønsker å sette\n" +"mottakeren i standby. Gjøre det nå?" + +msgid "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"Et tidtakeropptak er ferdig og ønsker å slå av\n" +"mottakeren. Slå av nå?" + +# +msgid "A graphical EPG for all services of an specific bouquet" +msgstr "Grafisk EPG for alle kanaler i en bestemt kanalliste" + +#, python-format +msgid "" +"A record has been started:\n" +"%s" +msgstr "" +"Et opptak har startet:\n" +"%s" + +msgid "" +"A recording is currently running.\n" +"What do you want to do?" +msgstr "" +"Et opptak er igang.\n" +"Hva vil du gjøre?" + +msgid "A recording is currently running. Please stop the recording before trying to configure the positioner." +msgstr "Et opptak er igang. Vennligst stopp opptaket før du konfigurerer motoren." + +msgid "A recording is currently running. Please stop the recording before trying to scan." +msgstr "Et opptak er igang. Vennligst stopp opptaket før du starter et søk." + +msgid "A recording is currently running. Please stop the recording before trying to start the satfinder." +msgstr "Et opptak er igang. Vennligst stopp opptaket før du starter et satellittsøk." + +# +#, python-format +msgid "A required tool (%s) was not found." +msgstr "Et nødvendig verktøy (%s) ble ikke funnet." + +msgid "A search for available updates is currently in progress." +msgstr "Søker etter tilgjengelige oppdateringer.." + +msgid "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" +msgstr "" +"Et annet nettverkskort ble funnet.\n" +"Vil du frakoble det andre nettverksortet?" + +msgid "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"En tidtaker ønsker å slå\n" +"mottakeren i standby. Gjøre det nå?" + +msgid "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"En tidtaker ønsker å slå av\n" +"mottakeren. Slå av nå?" + +msgid "A small overview of the available icon states and actions." +msgstr "Et lite overblikk over tilgjengelige status varsler og handlinger." + +msgid "" +"A timer failed to record!\n" +"Disable TV and try again?\n" +msgstr "" +"En tidtaker startet ikke opptak.\n" +"Skifte program og prøve igjen?\n" + +msgid "A/V settings" +msgstr "A/V-innstilling" + +msgid "AC3/DTS downmix" +msgstr "AC3/DTS blanding" + +# +msgid "Abort" +msgstr "Avbryt" + +# +msgid "About" +msgstr "Om" + +# +msgid "About..." +msgstr "Om..." + +# +msgid "Accesspoint:" +msgstr "Tilgangspunkt:" + +# +msgid "Action on long powerbutton press" +msgstr "Handling ved langt trykk på strømknappen" + +# +msgid "Action on short powerbutton press" +msgstr "Handling ved kort trykk på strømknappen" + +# +msgid "Activate Picture in Picture" +msgstr "Aktivere bilde i bilde" + +# +msgid "Activate current configuration" +msgstr "Aktivere gjeldende konfigurasjon" + +# +msgid "Activate network settings" +msgstr "Aktivere nettverksinnstillinger" + +msgid "Activate the configured network settings." +msgstr "Aktivere nettverksinnstillinger." + +# +msgid "Adapter settings" +msgstr "Nettverksinstillinger" + +# +msgid "Add" +msgstr "Legge til" + +# +msgid "Add Bookmark" +msgstr "Legge til bokmerke" + +# +msgid "Add a mark" +msgstr "Legge til markør" + +# +msgid "Add a nameserver entry" +msgstr "Legge til navneserver inngang" + +# +msgid "Add a new title" +msgstr "Legge til nytt navn" + +# +msgid "Add bookmark" +msgstr "Legge til bokmerke" + +msgid "Add directory to playlist" +msgstr "Legge til katalog i spilliste" + +# +msgid "Add file to playlist" +msgstr "Legge til fil i spilliste" + +# +msgid "Add files to playlist" +msgstr "Legge til filer i spilliste" + +msgid "Add more details to the crash log" +msgstr "Legge til flere detaljer i krasj logg" + +# +msgid "Add provider" +msgstr "Legge til leverandør" + +msgid "Add recording (enter recording duration)" +msgstr "Legge til et opptak (velg opptaks lengde)" + +msgid "Add recording (enter recording endtime)" +msgstr "Legge til et opptak (velg opptaks sluttid)" + +# +msgid "Add recording (indefinitely)" +msgstr "Legge til et opptak (uendelig)" + +# +msgid "Add recording (stop after current event)" +msgstr "Legge til opptak (stop etter nåværende program)" + +# +msgid "Add service" +msgstr "Legge til kanal" + +# +msgid "Add timer" +msgstr "Legg til tidtaker" + +# +msgid "Add title" +msgstr "Legge til navn" + +# +msgid "Add to bouquet" +msgstr "Legge til i kanalliste" + +# +msgid "Add to favourites" +msgstr "Legge til i favoritter" + +msgid "Add/remove change timer for current event" +msgstr "" + +msgid "Adjust 3D settings" +msgstr "Justere 3D settinger" + +msgid "Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens." +msgstr "Justere fargene i testbildet slik at de kan skilles mellom. Alle bør blir så gjennomtrengende som mulig. Trykk OK eller nummerknappene for flere testbilder.Trykk exit knappen når du er ferdig" + +msgid "Advanced" +msgstr "" + +msgid "Advanced options" +msgstr "Alternativer" + +msgid "Advanced restore" +msgstr "Velg sikkerhetskopi etter dato" + +msgid "Advanced software" +msgstr "Programvare" + +msgid "Advanced software plugin" +msgstr "Programvaretillegg" + +msgid "Advanced video enhancement setup" +msgstr "Oppsett for ekstra videoutstyr" + +msgid "Advanced video setup" +msgstr "Video oppsett" + +# +msgid "After event" +msgstr "Etter program" + +# +msgid "Album" +msgstr "Album" + +msgid "Alignment of events" +msgstr "Programjusteringer" + +msgid "Alignment of service names" +msgstr "Plassering av kanal navn" + +# +msgid "All" +msgstr "Alle" + +msgid "All ages" +msgstr "Alle aldre" + +msgid "All satellites 1 (USALS)" +msgstr "" + +msgid "All satellites 2 (USALS)" +msgstr "" + +msgid "All satellites 3 (USALS)" +msgstr "" + +msgid "All satellites 4 (USALS)" +msgstr "" + +msgid "Allocate" +msgstr "Tildele" + +msgid "Allocate unused memory index" +msgstr "Tildele ubrukt minneregister" + +msgid "Allow quit movieplayer with exit" +msgstr "Tillate å avslutte mediespiller med exit knapp" + +msgid "Allow subtitle language to equal audio language" +msgstr "Tillate at undertekst språk er samme som lyd språk" + +msgid "Allow subtitles for hearing impaired" +msgstr "Tillate underteksting for hørselshemmede" + +# +msgid "Alpha" +msgstr "Alfa" + +# +msgid "Alternative" +msgstr "Alternativ" + +# +msgid "Alternative numbering mode" +msgstr "Alternativt nummervalg" + +# +msgid "Alternative services tuner priority" +msgstr "Alternativt tunervalg for kanaler" + +msgid "Always ask" +msgstr "Alltid spørre" + +msgid "Always hide infobar" +msgstr "" + +# +msgid "An empty filename is illegal." +msgstr "Et tomt filnavn er ikke tillatt" + +msgid "An error occurred while downloading the packetlist. Please try again." +msgstr "En feil oppstod under nedlasting av programvare. Vennligst prøv igjen." + +# +msgid "An unknown error occurred!" +msgstr "En ukjent feil oppstod!" + +msgid "And will put your receiver in standby over " +msgstr "Og mottakeren vil slåes av etter" + +msgid "Any activity" +msgstr "Noe aktivitet" + +# +msgid "Arabic" +msgstr "Arabisk" + +msgid "Are you sure to remove this entry?" +msgstr "" + +msgid "" +"Are you sure you want to activate this network configuration?\n" +"\n" +msgstr "" +"Vil du bruke dette nettverksoppsettet?\n" +"\n" + +# +msgid "" +"Are you sure you want to delete\n" +"the following backup:\n" +msgstr "" +"Vil du slette\n" +"følgende backup:\n" + +# +msgid "Are you sure you want to exit this wizard?" +msgstr "Vil du avslutte veiviseren?" + +msgid "" +"Are you sure you want to restart your network interfaces?\n" +"\n" +msgstr "Vil du starte nettverkskortet på nytt?\n" + +#, python-format +msgid "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Vil du gjenopprette\n" +"følgende sikkerhetskopi:\n" +"%s\n" +"Mottakeren vil starte på nytt når sikkerhetskopien har blitt gjenopprettet!" + +msgid "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Vil du gjenopprette sikkerhetskopien?\n" +"Mottakeren vil starte på nytt når sikkerhetskopien har blitt gjenopprettet!" + +# +msgid "Artist" +msgstr "" + +msgid "Arts/Culture" +msgstr "kunst/kultur" + +# +msgid "Ask user" +msgstr "Spør bruker" + +# +msgid "Aspect ratio" +msgstr "Sideforhold" + +msgid "Assigned CAIds:" +msgstr "Tildelte CAId:" + +msgid "Assigned services/provider:" +msgstr "Tildelte kanaler/leverandører:" + +# +msgid "At beginning" +msgstr "Ved begynnelsen" + +msgid "At end" +msgstr "Ved slutten" + +# +msgid "Audio" +msgstr "Lyd" + +msgid "Audio PID" +msgstr "Lyd PID" + +msgid "Audio language selection 1" +msgstr "Språkvalg 1" + +msgid "Audio language selection 2" +msgstr "Språkvalg 2" + +msgid "Audio language selection 3" +msgstr "Språkvalg 3" + +msgid "Audio language selection 4" +msgstr "Språkvalg 4" + +# +msgid "Audio options..." +msgstr "Lyd valg..." + +#, python-format +msgid "Audio track (%s) format" +msgstr "Lyd (%s) format" + +#, python-format +msgid "Audio track (%s) language" +msgstr "Lyd (%s) språk" + +# +msgid "Author: " +msgstr "Forfatter:" + +# +msgid "Authoring mode" +msgstr "Administrator modus" + +#. TRANSLATORS: (aspect ratio policy: always try to display as fullscreen, when there is no content (black bars) on left/right, even if this breaks the aspect. +msgid "Auto" +msgstr "" + +# +msgid "Auto chapter split every ? minutes (0=never)" +msgstr "Auto oppdeling hvert ? minutter (0=aldri)" + +# +msgid "Auto flesh" +msgstr "Auto rens" + +msgid "Auto focus" +msgstr "Auto fokus" + +msgid "Auto focus commencing ..." +msgstr "Auto fokus begynner ..." + +msgid "Auto language selection" +msgstr "Språkvalg innstilling" + +# +msgid "Auto scart switching" +msgstr "Auto scart bytte" + +# +msgid "Automatic" +msgstr "Automatisk" + +msgid "Automatic scan" +msgstr "Automatisk søk" + +msgid "Automatically start timeshift after" +msgstr "Start automatisk timeshift etter" + +msgid "Automatically turn on external subtitles" +msgstr "Automatisk påslått tekst-TV undertekst" + +# +msgid "Available format variables" +msgstr "Tilgjengelige format" + +# +msgid "B" +msgstr "" + +# +msgid "BER" +msgstr "" + +# +msgid "BER:" +msgstr "" + +# +msgid "Back" +msgstr "Tilbake" + +# +msgid "Background" +msgstr "Bakgrunn" + +msgid "Background color" +msgstr "Bakgrunnsfarge" + +msgid "Background delete option" +msgstr "Valg for bakgrunnssletting" + +msgid "Background delete speed" +msgstr "Hastighet for bakgrunnssletting" + +# +msgid "Backup completed." +msgstr "Sikkerhetskopi fullført." + +# +msgid "Backup failed." +msgstr "Sikkerhetskopi feilet." + +# +msgid "Backup is running..." +msgstr "Sikkerhetskopi kjører..." + +# +msgid "Backup system settings" +msgstr "Sikkerhetskopier system innstillinger" + +# +msgid "Band" +msgstr "Bånd" + +# +msgid "Bandwidth" +msgstr "Båndbredde" + +msgid "Basque" +msgstr "Baskisk" + +# +msgid "Begin time" +msgstr "Starttid" + +msgid "Behavior of 'pause and ok' when paused" +msgstr "" + +# +msgid "Behavior of 0 key in PiP-mode" +msgstr "Innstilling for 0 knapp i PiP (bilde i bilde modus)" + +msgid "Behavior when a movie is started" +msgstr "Innstilling når en film startes" + +msgid "Behavior when a movie is stopped" +msgstr "Innstilling når en film stoppes" + +msgid "Behavior when a movie reaches the end" +msgstr "Innstilling når en film er ferdig" + +msgid "Big PiP" +msgstr "" + +# +msgid "Bitrate:" +msgstr "Bithastighet:" + +msgid "Black screen" +msgstr "Sort skjerm" + +msgid "Black screen till locked" +msgstr "Sort skjerm låst" + +# +msgid "Block noise reduction" +msgstr "Blokkere støy reduksjon" + +# +msgid "Blue boost" +msgstr "Blå boost" + +# +msgid "Bookmarks" +msgstr "Bokmerker" + +# +msgid "Brightness" +msgstr "Lysstyrke" + +msgid "Bulgarian" +msgstr "Bulgarsk" + +# +msgid "Burn DVD" +msgstr "Brenne DVD" + +# +#, python-format +msgid "Burn audio track (%s)" +msgstr "Brenne lydspor (%s)" + +# +msgid "Burn existing image to DVD" +msgstr "Brenne eksisternde bilde på DVD" + +# +msgid "Burn to DVD" +msgstr "Brenne på DVD" + +# +msgid "Bus: " +msgstr "Buss: " + +msgid "By default, SNR will be shown in dB (when supported by the tuner). This setting forces SNR to be shown as a percentage instead." +msgstr "Som standard vil SNR (signalstyrke) vises i dB (desibel) hvis tuneren støtter dette. Med denne innstillingen vises SNR i prosent." + +# +msgid "C" +msgstr "" + +# +msgid "C-Band" +msgstr "C-bånd" + +msgid "CH" +msgstr "" + +# +msgid "CI assignment" +msgstr "CI tildeling" + +# +msgid "CVBS" +msgstr "" + +# +msgid "Cable" +msgstr "Kabel" + +msgid "Cable Scan" +msgstr "Kabel-TV søk" + +# +msgid "Cache thumbnails" +msgstr "Mellomlagre miniatyrbilder" + +msgid "Calculate" +msgstr "Kalkulere" + +msgid "Calculate all positions" +msgstr "Kalkulere alle posisjoner" + +msgid "Calculation complete" +msgstr "Kalkulasjonen er ferdig" + +msgid "Calibrate" +msgstr "Kalibrere" + +msgid "Can be used for different fps between external subtitles and video." +msgstr "Kan brukes for forskjellig fps (bilde per sekund) mellom tekst-TV undertekster og bilde" + +# +msgid "Cancel" +msgstr "Avbryt" + +msgid "Cannot determine" +msgstr "Kan ikke fastslå" + +msgid "Cannot find any signal ..., aborting !" +msgstr "Finner ikke signal..., avbryter!" + +msgid "Cannot move files on a different disk or system to the trash can" +msgstr "Kan ikke flytte filer med forskjellige filsystem til papirkurven" + +msgid "Cannot move to trash can" +msgstr "Kan ikke flytte til papirkurv" + +# +msgid "Capacity: " +msgstr "Kapasitet: " + +# +msgid "Card" +msgstr "Kort" + +msgid "Cascade PiP" +msgstr "" + +msgid "Center DVB subtitles" +msgstr "Sentrere DVB undertekst" + +msgid "Center time-labels and remove date" +msgstr "Sentrere tidsangivelse og fjerne dato" + +# +msgid "Change bouquets in quickzap" +msgstr "Bytte kanallister i hurtigvalg" + +msgid "Change pin code" +msgstr "Endre PIN kode" + +# +msgid "Change recording (duration)" +msgstr "Endre opptaks (lengde)" + +# +msgid "Change recording (endtime)" +msgstr "Endre opptaks (sluttid)" + +msgid "Change repeat and delay settings?" +msgstr "Endre forsinkelses innstilling?" + +msgid "Change service PIN" +msgstr "Endre PIN kode for kanal" + +msgid "Change service PINs" +msgstr "Endre PIN kode for kanaler" + +msgid "Change setup PIN" +msgstr "Endre oppsetts PIN" + +# +msgid "Change step size" +msgstr "Endre steg lengde" + +msgid "Change timer" +msgstr "" + +msgid "Changelog" +msgstr "Endringslogg" + +# +msgid "Channel" +msgstr "Kanal" + +# +msgid "Channel list type" +msgstr "Kanalliste-valg" + +# +msgid "Channel not in services list" +msgstr "Kanalen er ikke i listen" + +msgid "Channel selection" +msgstr "Kanalvalg" + +# +msgid "Channel:" +msgstr "Kanal:" + +# +msgid "Channellist menu" +msgstr "Kanalliste-meny" + +# +msgid "Chap." +msgstr "Kap." + +# +msgid "Chapter" +msgstr "Kapittel" + +# +msgid "Chapter:" +msgstr "Kapittel:" + +# +msgid "Check" +msgstr "Kontroller" + +msgid "Check the internet connection" +msgstr "Undersøk internett forbindelsen" + +msgid "Check the internet connection again" +msgstr "Undersøk internett forbindelsen igjen" + +# +msgid "Checking filesystem..." +msgstr "Undersøker filsystem..." + +msgid "Checking the internet connection" +msgstr "Undersøker internett forbindelsen" + +#, python-format +msgid "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" +msgstr "" +"Undersøker mottakeren %d\n" +"DiSEqC port %s for %s" + +msgid "Children/Youth" +msgstr "barn/ungdom" + +msgid "Choose which tuner to configure." +msgstr "Velg tuner som skal stilles inn." + +# +msgid "Circular left" +msgstr "Sirkulær venstre" + +# +msgid "Circular right" +msgstr "Sirkulær høyre" + +msgid "Cleanup" +msgstr "Rydde opp" + +msgid "Clear" +msgstr "Klar" + +msgid "Clear before scan" +msgstr "Slett kanaler før søk" + +msgid "Clear fixed" +msgstr "Klargjort" + +# +msgid "Clear log" +msgstr "Tøm logg" + +# +msgid "Clear playlist" +msgstr "Tøm spilliste" + +# +msgid "Close" +msgstr "Lukke" + +msgid "Close PiP on exit" +msgstr "Slå av PiP (bilde i bilde) med exit knapp" + +# +msgid "Close title selection" +msgstr "Lukke navnevalg" + +msgid "Code rate HP" +msgstr "Kode hastighet HP" + +msgid "Code rate LP" +msgstr "Kode hastighet LP" + +# +msgid "Coderate HP" +msgstr "Kode hastighet HP" + +# +msgid "Coderate LP" +msgstr "Kode hastighet LP" + +# +msgid "Collection name" +msgstr "Navnesamling" + +# +msgid "Collection settings" +msgstr "Samlingsinnstilling" + +# +msgid "Color format" +msgstr "Farge format" + +# +msgid "Command execution..." +msgstr "Kommando utføres..." + +# +msgid "Command order" +msgstr "Kommando rekkefølge" + +# +msgid "Common Interface" +msgstr "Common Interface" + +msgid "Common Interface assignment" +msgstr "Common Interface" + +# +msgid "Communication" +msgstr "Kommunikasjon" + +# +msgid "Compact flash" +msgstr "Kompakt flash minne" + +# +msgid "Complete" +msgstr "Komplett" + +# +msgid "Complex (allows mixing audio tracks and aspects)" +msgstr "Kompleks (tillater blanding av lyd spor)" + +msgid "Composition of the recording filenames" +msgstr "Sammensetning på opptakenes filnavn" + +msgid "Configuration mode" +msgstr "Oppsettstype" + +# +#, python-format +msgid "Configuration mode: %s" +msgstr "Oppsettstype: %s" + +# +msgid "Configuration..." +msgstr "Konfigurasjon..." + +msgid "Configure an additional delay to improve external subtitle synchronisation." +msgstr "Still inn ekstra forsinkelse for å forbedre tekst-TV undertekst synkronisering." + +msgid "Configure an additional delay to improve subtitle synchronisation." +msgstr "Still inn ekstra forsinkelse for å forbedre undertekst synkronisering." + +msgid "Configure for how long the infobar will remain visible after activation." +msgstr "Still inn hvor lenge informasjonslinjen skal være synlig etter aktivering." + +msgid "Configure for how many minutes finished events should remain visible in the EPG. Useful when you need information about an event which has just finished, or has been delayed." +msgstr "Still inn hvor mange minutter avsluttede program skal vises i EPG. Nyttig når du trenger informasjon om et program som akkurat er ferdig eller har blitt forsinket." + +msgid "Configure how recording filenames are constructed." +msgstr "Still inn lengden på filnavn som skal brukes til opptak." + +msgid "Configure how the fan should operate" +msgstr "" + +msgid "Configure if and how crypto icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how long the latest service in the PiP will be remembered." +msgstr "" + +msgid "Configure if and how service type icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how wide columns will be shown in the channel selection list." +msgstr "" + +msgid "Configure if service picons will be shown in the channel selection list." +msgstr "" + +# +msgid "Configure interface" +msgstr "Still inn grensesnitt" + +# +msgid "Configure nameservers" +msgstr "Still inn navnetjenerne" + +msgid "Configure on which devices the background delete option should be used." +msgstr "Still inn på hvilke enheter bakgrunnssletting skal benyttes." + +# +msgid "Configure remote control type" +msgstr "Still inn fjernkontroll valg" + +msgid "Configure the DiSEqC mode for this LNB." +msgstr "Still inn DiSEqC valg for denne LNB." + +msgid "Configure the IP address." +msgstr "Still inn IP adresse." + +msgid "Configure the aspect ratio of the screen." +msgstr "Still inn sideforholdet på skjermen." + +msgid "Configure the behavior of the 'pause and ok' key when movie playback is already paused." +msgstr "" + +msgid "Configure the behavior when movie playback is manually stopped." +msgstr "Still inn oppførsel når en avspilling stoppes manuelt." + +msgid "Configure the behavior when movie playback is started." +msgstr "Still inn oppførsel når avspilling startes." + +msgid "Configure the behavior when reaching the end of a movie, during movie playback." +msgstr "Still inn oppførsel når en avspilling slutter." + +msgid "Configure the border width of the subtitles. The dark border makes the subtitles easier to read on a light background." +msgstr "Still inn kontrast på undertekster. Den mørke fargen gjør tekstingen lettere å lese på lys bakgrunn." + +msgid "Configure the brightness level of the front panel display during standby." +msgstr "Still inn lysstyrken på frontpanelets display når mottakeren er avslått." + +msgid "Configure the brightness level of the front panel display." +msgstr "Still inn lysstyrken på frontpanelets display når mottakeren er påslått." + +msgid "Configure the color of the external subtitles, alternative (normal in white, italic in yellow, bold in cyan, underscore in green), white or yellow." +msgstr "Still inn fargen på tekst-TV undertekster. Alternativ (normal på hvit, kursiv på gul, fet på cyan, understrek på grønn) hvit eller gul." + +msgid "Configure the color of the teletext subtitles." +msgstr "Still inn fargen på tekst-TV undertekst." + +msgid "Configure the contrast level of the front panel display." +msgstr "Still inn lysstyrken på frontpanel." + +msgid "Configure the cursor behaviour in the channel selection list. When opening the channel selection list you can keep on the current service or already select up/down and you are able to revert the B+/B- buttons." +msgstr "" + +msgid "Configure the duration in hours the receiver should go to standby when the receiver is not controlled." +msgstr "" + +msgid "Configure the duration in minutes for the screensaver." +msgstr "Still inn skjermsparerens varighet i minutter." + +msgid "Configure the duration in minutes for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +msgstr "" + +msgid "Configure the duration when the receiver should go to shut down in case the receiver is in standby mode." +msgstr "Still inn tiden mottakeren skal bruke på å slå helt av i tilfelle mottakeren er satt i vanlig standby stilling." + +msgid "Configure the first audio language (highest priority)." +msgstr "Still inn førstevalg på lyd språk (høyeste prioritet)." + +msgid "Configure the first subtitle language (highest priority)." +msgstr "Still inn førstevalg på undertekst språk (høyeste prioritet)." + +msgid "Configure the font size of the subtitles." +msgstr "Still inn skriftstørrelse på undertekster." + +msgid "Configure the fourth audio language." +msgstr "Still inn fjerdevalg på lyd språk." + +msgid "Configure the fourth subtitle language." +msgstr "Still inn fjerdevalg på undertekst språk." + +msgid "Configure the function of a long press on the power button." +msgstr "Still inn funksjonen et langt trykk på strømknappen." + +msgid "Configure the function of a short press on the power button." +msgstr "Still inn funksjonen et kort trykk på strømknappen." + +msgid "Configure the function of the '0' button do when PIP is active." +msgstr "Still inn funksjonen for '0' knappen når PiP (bilde i bilde) er aktiv." + +msgid "Configure the gateway." +msgstr "Still inn inngangsport." + +msgid "Configure the general audio delay of Dolby Digital sound tracks." +msgstr "Still inn standard lyd forsinkelse i Dolby Digital lyd." + +msgid "Configure the general audio delay of stereo sound tracks." +msgstr "Still inn ønsket lydforsinkelse for stereo lyd spor." + +msgid "Configure the hard disk drive to go to standby after the specified idle time." +msgstr "Still inn når disk skal å gå i hvilestilling etter angitt inaktiv tid." + +msgid "Configure the horizontal alignment of the subtitles." +msgstr "Still inn horisontal justering av undertekster." + +msgid "Configure the initial fast forward speed. When you press the fast forward button, winding will start at this speed." +msgstr "Still inn hurtigspolingshastighet framover. Når du trykker på framoverspolings knappen, vil hastigheten starte på denne fart." + +msgid "Configure the initial rewind speed. When you press the rewind button, winding will start at this speed." +msgstr "Still inn hurtigspolingshastighet bakover. Når du trykker på tilbakespolings knappen, vil hastigheten starte på denne fart." + +msgid "Configure the latitude of your location." +msgstr "Still inn breddegraden på stedet." + +msgid "Configure the longitude of your location." +msgstr "Still inn lengdegraden på stedet." + +msgid "Configure the minimum amount of disk space to be available for recordings. When the amount of space drops below this value, deleted items will be removed from the trash can." +msgstr "Still inn minimum diskplass som skal være tilgjengelig for opptak. Når mengden av plass nærmer seg denne verdien, vil papirkurven tømmes." + +msgid "Configure the nameserver (DNS)." +msgstr "Still inn navnetjener (DNS)." + +msgid "Configure the netmask." +msgstr "Still inn nettmaske." + +msgid "Configure the number of days after which items are automaticaly removed from the trash can." +msgstr "Still inn antall dager elementer holdes før de automatisk slettes fra papirkurven." + +msgid "Configure the number of days old timers are kept before they are automatically removed from the timer list." +msgstr "Still inn antall dager gamle tidtakere holdes før de automatisk fjernes fra tidtakerlisten." + +msgid "Configure the offline decoding delay in milliseconds. The configured delay is observed at each control word parity change." +msgstr "Still inn avkodingsforsinkelsen i millisekunder.(offline). Den innstilte forsinkelsen iakttas ved hver paritetsendring" + +msgid "Configure the possible fast forward speeds." +msgstr "Still inn de ønskede hastighetstrinn for hurtigspoling framover." + +msgid "Configure the possible rewind speeds." +msgstr "Still inn de ønskede hastighetstrinn for hurtigspoling bakover." + +msgid "Configure the primary EPG language." +msgstr "Still inn førstevalg for EPG språk (høyeste prioritet)." + +msgid "Configure the refresh rate of the screen." +msgstr "Velg oppfriskningsrate for TV skjerm" + +msgid "Configure the screen resolution in PC output mode." +msgstr "Still inn skjermoppløsning for PC utgang" + +msgid "Configure the second audio language." +msgstr "Still inn andrevalg på lyd språk." + +msgid "Configure the second subtitle language." +msgstr "Still inn andrevalg på undertekst språk." + +msgid "Configure the secondary EPG language." +msgstr "Still inn andrevalg på EPG språk." + +msgid "Configure the sharpness of the video scaling." +msgstr "Still inn skarpheten på bildet." + +msgid "Configure the skip time interval for the '1'/'3' buttons." +msgstr "Still inn hopptid for '1'/'3' knappene." + +msgid "Configure the skip time interval for the '4'/'6' buttons." +msgstr "Still inn hopptid for '4'/'6' knappene." + +msgid "Configure the skip time interval for the '7'/'9' buttons." +msgstr "Still inn hopptid for '7'/'9' knappene." + +msgid "Configure the slow motion speeds." +msgstr "Still inn hastighet for saktefilm." + +msgid "Configure the source of the frontend data as shown on the infobars. 'Settings' is as stored on the settings. 'Tuner' is as reported by the tuner." +msgstr "" + +msgid "Configure the speed of the background deletion process. Lower speed will consume less hard disk drive performance." +msgstr "Still inn hastighetsprosessen for bakgrunnssletting. Lavere hastighet vil bruke mindre disk ytelse." + +msgid "Configure the speed of the fan" +msgstr "" + +msgid "Configure the subtitle delay when timing information is not available." +msgstr "Still inn forsinkelse på undertekst når tidtakingsinformasjon mangler." + +msgid "Configure the third audio language." +msgstr "Still inn tredjevalg på lyd språk." + +msgid "Configure the third subtitle language." +msgstr "Still inn tredjevalg på undertekst språk." + +msgid "Configure the transparency of the OSD." +msgstr "Still inn lysstyrken på skjermmeny." + +msgid "Configure the transparency of the black background of graphical DVB subtitles." +msgstr "Still inn sort-visningsnivå på DVB undertekster." + +# +msgid "Configure the tuner mode." +msgstr "Still inn tunervalg." + +msgid "Configure the type of status indication icons shown in the movielist." +msgstr "Still inn hvordan avspillingsindikatoren skal vises i opptakslisten." + +msgid "Configure the vertical position of the subtitles, measured from the bottom of the screen." +msgstr "Still inn vertikal plassering av undertekster, målt fra bunnen av skjermen." + +msgid "Configure the video output mode (or resolution)." +msgstr "Velg videoutgang (eller oppløsning)." + +msgid "Configure the way in which the receiver changes channels." +msgstr "Still inn metoden mottakeren benytter mellom kanalskifte." + +msgid "Configure where completed timers show up in the timer list." +msgstr "Velg hvor fullførte tidtakere skal vises i tidtakerlisten." + +msgid "Configure whether (and for how long) a second infobar will be shown when OK is pressed twice. The second infobar contains additional information about the current channel." +msgstr "Velg om (og hvor lenge) ekstra informasjonslinje skal vises når du trykker OK to ganger. Den ekstra informasjonslinjen inneholder tilleggsinformasjon om den aktuelle kanalen." + +msgid "Configure whether multi channel sound tracks should be downmixed to stereo." +msgstr "Velg om flerkanals lyd skal blandes til stereolyd." + +msgid "Configure whether or not an icon should be shown when your motorized dish is moving." +msgstr "Velg om et varsel skal vises når motorisert parabol er i bevegelse." + +msgid "Configure which access level to use for the configuration menu. Expert level gives access to all items." +msgstr "Velg tilgangsnivået som skal brukes på meny oppsettet. Ekspert nivå gir tilgang til alle elementer." + +msgid "Configure which color format should be used on the SCART output." +msgstr "Still inn fargeformatet som skal brukes på SCART-utgang." + +msgid "Configure which tuner for recordings will be preferred, when more than one tuner is available." +msgstr "" + +msgid "Configure which tuner type will be preferred, when the same service is available on different types of tuners." +msgstr "Velg tuneren som skal foretrekkes når samme kanal er tilgjengelig på flere tunertyper." + +msgid "Configure which tuner will be preferred, when more than one tuner is available. If set to 'auto' the system will give priority to the tuner having the lowest number of channels/satellites." +msgstr "Velg den tuneren som skal foretrekkes når flere tunere er tilgjengelige. Hvis satt til 'auto', vil systemet gi prioritet til den tuneren som har lavest antall kanaler/satellitter." + +# +msgid "Configure your internal LAN" +msgstr "Still inn ditt lokale LAN nettverk" + +# +msgid "Configure your network again" +msgstr "Still inn nettverket på nytt" + +msgid "Configure your network settings, and press OK to start the scan" +msgstr "Still inn nettverksinnstillingene, og trykk OK for å starte søket" + +msgid "Configure your wireless LAN again" +msgstr "Still inn det trådløse nettverket igjen" + +msgid "Configures which video output connector will be used." +msgstr "Velg videoutgang som skal brukes." + +# +msgid "Configuring" +msgstr "Stiller inn" + +# +msgid "Conflicting timer" +msgstr "Tidtakerkollisjon" + +# +msgid "Connect" +msgstr "Koble til" + +# +msgid "Connect to a wireless network" +msgstr "Koble til et trådløst nettverk" + +msgid "Connected satellites" +msgstr "" + +# +msgid "Connected to" +msgstr "Koblet til" + +# +msgid "Connected!" +msgstr "Sammenkoblet!" + +# +msgid "Constellation" +msgstr "Konstellasjon" + +# +msgid "Content does not fit on DVD!" +msgstr "Innholdet passer ikke på DVD!" + +msgid "Continue" +msgstr "Fortsett" + +# +msgid "Continue in background" +msgstr "Fortsett i bakgrunnen" + +# +msgid "Continue playback" +msgstr "Fortsett avspillingen" + +# +msgid "Continue playing" +msgstr "Fortsett avspilling" + +msgid "Continues play (loop)" +msgstr "Fortsetter å spille (om igjen)" + +# +msgid "Contrast" +msgstr "Kontrast" + +msgid "Convert ext3 filesystem to ext4" +msgstr "Konvertere ext3 filsystem til ext4" + +msgid "Convert ext3 to ext4" +msgstr "Konvertere ext3 til ext4" + +msgid "Converting ext3 to ext4..." +msgstr "Konverterer ext3 til ext4..." + +msgid "Copy" +msgstr "Kopi" + +msgid "Could not connect to receiver .NFI image feed server:" +msgstr "Kunne ikke koble til mottakeren. NFI image feed server:" + +msgid "Could not find installed channel list." +msgstr "Kunne ikke finne kanallisten." + +msgid "Could not load medium! No disc inserted?" +msgstr "Kunne ikke laste medium! Ingen plate er satt inn?" + +msgid "Could not open Picture in Picture" +msgstr "Kunne ikke åpne bilde i bilde" + +#, python-format +msgid "Could not record due to conflicting timer %s" +msgstr "Kunne ikke spille inn på grunn av motstridende tidtaker%s" + +#, python-format +msgid "Could not record due to invalid service %s" +msgstr "Kunne ikke spille inn på grunn av utilgjengelig kanal %s" + +# +msgid "Create DVD-ISO" +msgstr "Lag DVD-ISO" + +msgid "Create more detailed crash log" +msgstr "Lage mer detaljert krasj logg" + +#, python-format +msgid "Creating directory %s failed." +msgstr "Oppretter katalog %s mislyktes." + +# +msgid "Creating filesystem" +msgstr "Oppretter filsystem" + +msgid "Creating partition" +msgstr "Oppretter partisjon" + +# +msgid "Croatian" +msgstr "Kroatisk" + +msgid "Current CEC address" +msgstr "Gjeldende CEC adresse" + +msgid "Current device: " +msgstr "Gjeldende enhet:" + +msgid "Current event EPG" +msgstr "Aktuell EPG programoversikt" + +#, python-format +msgid "Current mode: %s \n" +msgstr "" + +# +msgid "Current settings:" +msgstr "Nåværende innstilling:" + +# +msgid "Current transponder" +msgstr "Gjeldende transponder" + +# +msgid "Current value: " +msgstr "Gjeldende verdi:" + +# +msgid "Current version:" +msgstr "Gjeldende versjon:" + +msgid "Currently installed image" +msgstr "Gjeldende installerte image" + +msgid "Currently the commit log cannot be retrieved - please try later again" +msgstr "" + +msgid "Custom skip time for '1'/'3' buttons" +msgstr "Egendefinert hopptid for '1'/'3'-knappene" + +msgid "Custom skip time for '4'/'6' buttons" +msgstr "Egendefinert hopptid for '4'/'6'-knappene" + +msgid "Custom skip time for '7'/'9' buttons" +msgstr "Egendefinert hopptid for '7'/'9'-knappene" + +# +msgid "Customize" +msgstr "Tilpasse" + +msgid "Customize channel list cursor behavior" +msgstr "" + +# +msgid "Cut" +msgstr "Klipp" + +# +msgid "Cutlist editor..." +msgstr "Klippliste editor..." + +# +msgid "Czech" +msgstr "Tjekkisk" + +# +msgid "D" +msgstr "" + +# +msgid "DHCP" +msgstr "" + +# +msgid "DMM advanced" +msgstr "DMM avansert" + +msgid "DMM normal" +msgstr "" + +# +msgid "DUAL LAYER DVD" +msgstr "To lags DVD" + +msgid "DVB subtitle black transparency" +msgstr "Sort-visningsnivå for DVB undertekst" + +msgid "DVB-C" +msgstr "" + +msgid "DVB-C ANNEX C" +msgstr "DVB-C VEDLEGG C" + +# +msgid "DVB-S" +msgstr "" + +# +msgid "DVB-S2" +msgstr "" + +msgid "DVB-T" +msgstr "" + +msgid "DVB-T2" +msgstr "" + +msgid "DVD data format" +msgstr "" + +# +msgid "DVD file browser" +msgstr "DVD fil leser" + +# +msgid "DVD media toolbox" +msgstr "DVD medie verktøykasse" + +# +msgid "DVD player" +msgstr "DVD spiller" + +# +msgid "DVD titlelist" +msgstr "DVD navneliste" + +# +msgid "Danish" +msgstr "Dansk" + +# +msgid "Date" +msgstr "Dato" + +msgid "Date/time input" +msgstr "Still inn tid/dato" + +msgid "Deep standby" +msgstr "Slå helt av" + +# +msgid "Default" +msgstr "Standard" + +msgid "Default movie location" +msgstr "Standard opptaksliste" + +# +msgid "Default settings" +msgstr "Standardinnstilling" + +msgid "Delay before key repeat starts:" +msgstr "Tidsforsinkelse før repeterende tast starter:" + +msgid "Delay for external subtitles" +msgstr "Forsinkelse for tekst-TV undertekst" + +# +msgid "Delete" +msgstr "Slette" + +# +msgid "Delete entry" +msgstr "Slette tidtaker" + +# +msgid "Delete failed!" +msgstr "Sletting feilet!" + +# +msgid "Delete file" +msgstr "Slette fil" + +# +msgid "Delete playlist entry" +msgstr "Slette oppføring i spilliste" + +# +msgid "Delete saved playlist" +msgstr "Slette lagret spilliste" + +msgid "Delete timer" +msgstr "" + +# +msgid "Delete..." +msgstr "Slette..." + +msgid "Deleted" +msgstr "Slettet" + +msgid "Deleted items" +msgstr "Slettede elementer" + +msgid "Depth" +msgstr "Dybde" + +msgid "Descramble http streams" +msgstr "Dekode http data" + +# +msgid "Description" +msgstr "Beskrivelse" + +# +msgid "Deselect" +msgstr "Angre" + +msgid "Details for plugin: " +msgstr "Programtillegg detaljer:" + +# +msgid "Detected HDD:" +msgstr "Gjenkjent lagring:" + +# +msgid "Detected NIMs:" +msgstr "Gjenkjent modul:" + +msgid "Devicename:" +msgstr "Enhetsnavn:" + +msgid "Devide" +msgstr "" + +msgid "DiSEqC" +msgstr "DiSEqC (Digital Satellite Equipment Control)" + +msgid "DiSEqC 1.0 command" +msgstr "" + +msgid "DiSEqC 1.1 command" +msgstr "" + +msgid "DiSEqC 1.1 repeats" +msgstr "" + +msgid "DiSEqC A/B" +msgstr "DiSEqC A/B" + +msgid "DiSEqC A/B/C/D" +msgstr "DiSEqC A/B/C/D" + +msgid "DiSEqC mode" +msgstr "DiSEqC type" + +#, python-format +msgid "DiSEqC port %s: %s" +msgstr "DiSEqC port %s: %s" + +msgid "DiSEqC-tester settings" +msgstr "DiSEqC testinnstilling" + +# +msgid "Dialing:" +msgstr "Ringer opp:" + +# +msgid "Digital contour removal" +msgstr "Fjerne digital støy" + +# +msgid "Direct playback of linked titles without menu" +msgstr "Direkte avspilling av navn på DVD'en, uten menybruk" + +msgid "Directory" +msgstr "katalog" + +#, python-format +msgid "Directory %s does not exist." +msgstr "Katalog %s finnes ikke." + +#, python-format +msgid "Directory %s nonexistent." +msgstr "Katalog %s ikke eksisterende." + +msgid "Directory browser" +msgstr "Søk i kataloger" + +#, python-format +msgid "Directory contains %d file(s) and %d sub-directories.\n" +msgstr "Katalogen inneholder %d fil(er) og %d under-kataloger.\n" + +#, python-format +msgid "Directory contains %s and %s." +msgstr "Katalogen inneholder %s og %s." + +# +msgid "Disable" +msgstr "Deaktivere" + +msgid "Disable Picture in Picture" +msgstr "Stopp bilde i bilde funksjon" + +msgid "Disable background scanning" +msgstr "Deaktivere bakgrunnssøk" + +msgid "Disable timer" +msgstr "" + +# +msgid "Disabled" +msgstr "Deaktivert" + +# +msgid "Disconnect" +msgstr "Frakoble" + +msgid "Disk space to reserve for recordings (in GB)" +msgstr "Diskplass avsatt til opptak (i GB)" + +# +msgid "Display 16:9 content as" +msgstr "Vis 16:9 innhold som" + +# +msgid "Display 4:3 content as" +msgstr "Vis 4:3 innhold som" + +# +msgid "Display >16:9 content as" +msgstr "Vis 16:9 innhold som" + +msgid "Display and userinterface" +msgstr "Skjerm og oppsett" + +msgid "Display message before playing next movie" +msgstr "Vis melding før neste avspilling starter" + +msgid "Display setup" +msgstr "Frontpanel" + +# +msgid "Do not change" +msgstr "Ikke endre" + +# +msgid "Do not record" +msgstr "Ikke ta opp" + +# +msgid "Do nothing" +msgstr "Gjør ingenting" + +# +msgid "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" +msgstr "" +"Er du sikker på at du vil sjekke filsystemet?\n" +"Det kan ta veldig lang tid!" + +msgid "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" +msgstr "" +"Er du sikker på at du vil konvertere filsystemet?\n" +"Du kan ikke angre!" + +# +#, python-format +msgid "Do you really want to delete %s?" +msgstr "Er du sikker på at du vil slette %s" + +# +#, python-format +msgid "" +"Do you really want to download\n" +"the plugin \"%s\"?" +msgstr "" +"Er du sikker på at du vil laste ned\n" +"dette programtillegg \"%s\"?" + +# +msgid "Do you really want to exit?" +msgstr "Er du sikker på at du vil avslutte?" + +msgid "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" +msgstr "" +"Er du sikker på at du vil klargjøre enheten?\n" +"Alle data på disken vil gå tapt!" + +# +#, python-format +msgid "" +"Do you really want to remove\n" +"the plugin \"%s\"?" +msgstr "" +"Er du sikker på at du vil slette\n" +"dette programtillegg\"%s\"?" + +#, python-format +msgid "Do you really want to remove directory %s from the disk?" +msgstr "Er du sikker på at du vil fjerne katalog%s fra disken?" + +# +#, python-format +msgid "Do you really want to remove your bookmark of %s?" +msgstr "Er du sikker på at du vil fjerne bokmerket %s?" + +# +msgid "Do you want this?" +msgstr "Ønsker du dette?" + +# +msgid "Do you want to burn this collection to DVD medium?" +msgstr "Vil du brenne denne samlingen pål DVD?" + +msgid "Do you want to do a service scan?" +msgstr "Vil du gjøre et kanalsøk?" + +msgid "Do you want to do another manual service scan?" +msgstr "Vil du gjøre enda et manuelt kanalsøk?" + +#, python-format +msgid "Do you want to download the image to %s ?" +msgstr "Vil du laste ned bildet til %s ?" + +# +msgid "Do you want to install a channel list?" +msgstr "Vil du legge til en kanalliste?" + +# +msgid "Do you want to install the package:\n" +msgstr "Vil du installerere pakken:\n" + +# +msgid "Do you want to play DVD in drive?" +msgstr "Vil du spille DVD?" + +# +msgid "Do you want to preview this DVD before burning?" +msgstr "Vil du forhåndsvise denne DVD før brenning?" + +msgid "Do you want to reboot your receiver?" +msgstr "Vil du starte mottakeren på nytt?" + +# +msgid "Do you want to remove the package:\n" +msgstr "Vil du fjerne pakken:\n" + +# +msgid "Do you want to restore your settings?" +msgstr "Vil du gjenopprette dine innstillinger?" + +# +msgid "Do you want to resume this playback?" +msgstr "Vil du gjenoppta avspillingen ?" + +# +#, python-format +msgid "Do you want to update your receiver to %s?" +msgstr "Vil du oppdatere mottaker til %s?" + +msgid "Do you want to update your receiver?" +msgstr "Vil du oppdatere din mottaker?" + +# +msgid "Do you want to upgrade the package:\n" +msgstr "Vil du oppdatere pakken:\n" + +msgid "Don't stop current event but disable coming events" +msgstr "Ikke stopp nåværende program men slå av neste program" + +# +#, python-format +msgid "Done - Installed, upgraded or removed %d package (%s)" +msgid_plural "Done - Installed, upgraded or removed %d packages (%s)" +msgstr[0] "Ferdig - Installert, oppdatert eller fjernet %d pakke (%s)" +msgstr[1] "Ferdig - Installert, oppdatert eller fjernet %d pakker (%s)" + +# +msgid "Download" +msgstr "Last ned" + +#, python-format +msgid "Download %s from server" +msgstr "Last ned %s fra server" + +msgid "Download .NFI-files for USB-flasher" +msgstr "Last ned .NFI-filer for USB-flasher" + +# +msgid "Download plugins" +msgstr "Last ned proramvaretillegg" + +# +msgid "Downloadable new plugins" +msgstr "Nye programtillegg til nedlasting" + +# +msgid "Downloadable plugins" +msgstr "Programtillegg til nedlasting" + +# +msgid "Downloading" +msgstr "Laster ned" + +# +msgid "Downloading plugin information. Please wait..." +msgstr "Henter informasjon om programtillegg. Vennligst vent..." + +msgid "Dutch" +msgstr "Nederlandsk" + +# +msgid "Dynamic contrast" +msgstr "Dynamisk kontrast" + +# +msgid "E" +msgstr "" + +msgid "EPG" +msgstr "" + +msgid "EPG language selection 1" +msgstr "EPG språkvalg 1" + +msgid "EPG language selection 2" +msgstr "EPG språkvalg 2" + +# +msgid "EPG selection" +msgstr "EPG valg" + +msgid "EPG settings" +msgstr "EPG innstilling" + +#, python-format +msgid "ERROR - failed to scan (%s)!" +msgstr "FEIL - kunne ikke søke (%s)!" + +# +msgid "East" +msgstr "Øst" + +msgid "East limit set" +msgstr "Sett øst grense" + +msgid "Edit" +msgstr "Endre" + +# +msgid "Edit DNS" +msgstr "Endre DNS" + +msgid "Edit bouquets list" +msgstr "Redigere kanallister" + +msgid "Edit chapters of current title" +msgstr "Redigere gjeldende navn i katalog" + +msgid "Edit services list" +msgstr "Redigere kanallister" + +msgid "Edit settings" +msgstr "Redigere innstillinger" + +msgid "Edit the nameserver configuration of your receiver.\n" +msgstr "Endre mottakerens navneserverinnstilling.\n" + +msgid "Edit the network configuration of your receiver.\n" +msgstr "Endre mottakerens nettverksinnstilling.\n" + +msgid "Edit timer" +msgstr "" + +msgid "Edit title" +msgstr "Endre navn" + +msgid "Edit upgrade source url." +msgstr "Endre oppdateringens internettadresse." + +msgid "Education/Science/..." +msgstr "utdanning/vitenskap/..." + +# +msgid "Electronic Program Guide" +msgstr "Elektronisk Program Guide" + +# +msgid "Enable" +msgstr "Aktivere" + +msgid "Enable 'neutrino' style channel select controlling" +msgstr "" + +msgid "Enable 'neutrino' style zap controlling" +msgstr "" + +# +msgid "Enable 5V for active antenna" +msgstr "Aktivere 5V for aktiv antenne" + +msgid "Enable EIT EPG" +msgstr "Aktivere EIT EPG" + +msgid "Enable MHW EPG" +msgstr "Aktivere MHW EPG" + +msgid "Enable Netmed EPG" +msgstr "Aktivere Netmed EPG" + +msgid "Enable OK for channel selection" +msgstr "" + +msgid "Enable ViaSat EPG" +msgstr "Aktivere ViaSat EPG" + +msgid "Enable Virgin EPG" +msgstr "" + +msgid "Enable Wake On LAN" +msgstr "" + +msgid "Enable auto fast scan" +msgstr "" + +# +msgid "Enable bouquet selection in multi-EPG" +msgstr "Aktivere kanalliste utvalg i multi-EPG" + +msgid "Enable freesat EPG" +msgstr "Aktivere freesat EPG" + +# +msgid "Enable multiple bouquets" +msgstr "Aktivere flere kanallister" + +# +msgid "Enable parental control" +msgstr "Aktivere foreldrekontroll" + +msgid "Enable teletext caching" +msgstr "Aktivere tekst-TV lagring" + +msgid "Enable zapping with CH+/-, B+/-, P+/-" +msgstr "" + +# +msgid "Enabled" +msgstr "Aktivert" + +# +msgid "Encrypted: " +msgstr "Kryptert:" + +# +msgid "Encryption" +msgstr "Kryptering" + +# +msgid "Encryption key" +msgstr "Krypteringsnøkkel" + +# +msgid "Encryption key type" +msgstr "Krypteringsnøkkel type" + +# +msgid "Encryption:" +msgstr "Kryptering:" + +# +msgid "End time" +msgstr "Slutt tid" + +msgid "End time to ignore inactivity sleeptimer" +msgstr "Sluttid til ignorering av inaktiv tidtaker" + +msgid "End time to ignore shutdown in standby" +msgstr "" + +# +msgid "English" +msgstr "Engelsk" + +msgid "Enigma2 skin selector" +msgstr "Enigma2 skin velger" + +# +msgid "Enter main menu..." +msgstr "Åpne hovedmenyen" + +# +msgid "Enter pin code" +msgstr "Tast inn pin kode" + +# +msgid "Enter the service pin" +msgstr "Skriv inn kanal pin" + +msgid "Equal to" +msgstr "" + +# +msgid "Error" +msgstr "Feil" + +msgid "Error code" +msgstr "Feil kode" + +# +msgid "Error executing plugin" +msgstr "Feil under kjøring av programtillegg" + +# +#, python-format +msgid "" +"Error: %s\n" +"Retry?" +msgstr "" +"Feil: %s\n" +"Prøve på nytt?" + +# +msgid "Estonian" +msgstr "Estlandsk" + +msgid "Ethernet network interface" +msgstr "Ethernet nettverkskort" + +msgid "Event font size (relative to skin size)" +msgstr "Program- skriftstørrelse (i forhold til skin størrelse)" + +# +msgid "Event view" +msgstr "Programoversikt" + +# +msgid "Event view menu" +msgstr "Meny programoversikt" + +msgid "Everywhere" +msgstr "Overalt" + +# +msgid "Exceeds dual layer medium!" +msgstr "Overgår to lags medium!" + +# +msgid "Execution finished!!" +msgstr "Utførelse ferdig!" + +# +msgid "Execution progress:" +msgstr "Utførelse pågår:" + +# +msgid "Exif" +msgstr "" + +# +msgid "Exit" +msgstr "Avslutte" + +msgid "Exit EPG" +msgstr "Avslutte EPG" + +# +msgid "Exit editor" +msgstr "Avslutte redigerer" + +msgid "Exit input device selection." +msgstr "Avslutte inndataenhet." + +# +msgid "Exit media player?" +msgstr "Avslutte mediespiller?" + +# +msgid "Exit mediaplayer" +msgstr "Avslutte mediespiller" + +msgid "Exit movie list" +msgstr "Avslutte opptaksliste" + +msgid "Exit movie player?" +msgstr "Avslutte mediespiller?" + +# +msgid "Exit nameserver configuration" +msgstr "Avslutte innstilling for navnetjener" + +# +msgid "Exit network interface list" +msgstr "Avslutte nettverksgrensesnitt" + +# +msgid "Exit network wizard" +msgstr "Avslutte nettverksveiviseren" + +# +msgid "Exit the wizard" +msgstr "Avslutte veiviseren" + +# +msgid "Expert" +msgstr "Ekspert" + +msgid "Extend sleeptimer 15 minutes" +msgstr "Utvide tidtakerlengde med 15 minutter" + +# +msgid "Extended Software" +msgstr "Utvidet programvare" + +# +msgid "Extended Software Plugin" +msgstr "Utvidet programvaretillegg" + +# +msgid "Extended network setup plugin..." +msgstr "Utvidet innstilling for nettverksoppsett..." + +# +msgid "Extended setup..." +msgstr "Utvidet oppsett..." + +# +msgid "Extensions" +msgstr "Utvidelser" + +# +msgid "Extensions management" +msgstr "Utvidelsessenter" + +msgid "External PiP" +msgstr "" + +msgid "External subtitle color" +msgstr "Tekst-TV undertekstfarge" + +msgid "Extra motor options" +msgstr "" + +# +msgid "FEC" +msgstr "" + +msgid "FTA" +msgstr "" + +msgid "Factory reset" +msgstr "Gjenopprette mottaker" + +# +msgid "Failed" +msgstr "Feilet" + +msgid "Failed to write /tmp/positionersetup.log: " +msgstr "Kunne ikke skrive til /tmp/positionersetup.log:" + +# +#, python-format +msgid "Fan %d" +msgstr "Vifte %d" + +# +#, python-format +msgid "Fan %d PWM" +msgstr "Vifte %d PWM" + +# +#, python-format +msgid "Fan %d voltage" +msgstr "Vifte %d spenning" + +msgid "Fan operation" +msgstr "" + +msgid "Fan speed" +msgstr "" + +# +msgid "Fast" +msgstr "Hurtig" + +msgid "Fast DiSEqC" +msgstr "Hurtig DiSEqC" + +msgid "Fast Scan" +msgstr "Hurtigsøk" + +msgid "Fast epoch" +msgstr "Hurtig epoch" + +# +msgid "Fast forward speeds" +msgstr "Framoverspolings hastigheter" + +# +msgid "Favourites" +msgstr "Favorittliste" + +msgid "File appears to be busy.\n" +msgstr "Filen ser ut til å være opptatt.\n" + +msgid "Filesystem check" +msgstr "Sjekk av filsystem" + +msgid "Final position at" +msgstr "Siste posisjon ved" + +msgid "Final position at index" +msgstr "Siste posisjon i liste" + +msgid "Fine movement" +msgstr "Sakte bevegelse" + +msgid "Finetune" +msgstr "Fininnstilling" + +# +msgid "Finished" +msgstr "Ferdig" + +msgid "Finished configuring your network" +msgstr "Nettverksoppsettet er konfigurert" + +msgid "Finished restarting your network" +msgstr "Nettverket ble startet på nytt" + +# +msgid "Finnish" +msgstr "Finsk" + +msgid "Fixed" +msgstr "Løst" + +msgid "Flash" +msgstr "Flash" + +# +msgid "Flashing failed" +msgstr "Flashing feilet" + +msgid "Following tasks will be done after you press OK!" +msgstr "Følgende oppgaver vil bli utført etter at du trykker OK!" + +# +msgid "Format" +msgstr "Format" + +msgid "Forward volume keys" +msgstr "Volumtaster opp" + +# +msgid "Frame size in full view" +msgstr "Rammestørrelse i fullvisning" + +# +msgid "French" +msgstr "Fransk" + +# +msgid "Frequency" +msgstr "Frekvens" + +# +msgid "Frequency bands" +msgstr "Frekvensbånd" + +msgid "Frequency scan step size(khz)" +msgstr "Frekvenssøking steg størrelse(khz)" + +# +msgid "Frequency steps" +msgstr "Frekvens steg" + +# +msgid "Frequency:" +msgstr "Frekvens:" + +# +msgid "Fri" +msgstr "Fre" + +# +msgid "Friday" +msgstr "Fredag" + +msgid "From :" +msgstr "Fra:" + +# +#, python-format +msgid "Frontprocessor version: %d" +msgstr "Frontprosessor versjon: %d" + +msgid "Full transparency" +msgstr "Maksimal gjennomsiktighet" + +msgid "Fulview resulution" +msgstr "Fullskjermsoppløsning" + +msgid "Function of OK button" +msgstr "Funksjon for OK knapp" + +msgid "Further Options" +msgstr "" + +msgid "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" +msgstr "" +"GUI skal startes på nytt for aktivering av nytt skin\n" +"Vil du starte på nytt nå?" + +# +msgid "Gateway" +msgstr "Gateway" + +msgid "General AC3 delay" +msgstr "AC3 forsinkelse" + +msgid "General PCM delay" +msgstr "PCM forsinkelse" + +# +msgid "Genre" +msgstr "Sjanger" + +# +msgid "German" +msgstr "Tysk" + +msgid "Get latest experimental image" +msgstr "Hente det siste eksperimentelle image" + +msgid "Get latest release image" +msgstr "Hente det nyeste image" + +# +msgid "Getting plugin information. Please wait..." +msgstr "Henter informasjon om programtillegg. Vennligst vent..." + +msgid "Go down the list" +msgstr "Gå nedover listen" + +msgid "Go to first movie or last item" +msgstr "Gå til første film eller siste opptak" + +msgid "Go to first movie or top of list" +msgstr "Gå til første opptak eller øverst på listen" + +# +msgid "Go to first service" +msgstr "Gå til første kanal" + +# +msgid "Go to last service" +msgstr "Gå til siste kanal" + +msgid "Go to next event" +msgstr "Gå til neste program" + +# +msgid "Go to next page of service" +msgstr "Gå til neste kanal side" + +# +msgid "Go to previous event" +msgstr "Gå til forrige program" + +# +msgid "Go to previous page of service" +msgstr "Gå til forrige kanal side" + +msgid "Go up the list" +msgstr "Gå oppover listen" + +msgid "Goto" +msgstr "Valg" + +# +msgid "Goto 0" +msgstr "Gå til 0" + +msgid "Goto :" +msgstr "Gå til :" + +msgid "Goto X" +msgstr "Gå til X" + +msgid "Goto index position" +msgstr "Gå til startposisjon" + +msgid "Goto next day of events" +msgstr "Gå til neste dags program" + +msgid "Goto next page of events" +msgstr "Gå til neste programside" + +# +msgid "Goto position" +msgstr "Gå til posisjon" + +msgid "Goto previous day of events" +msgstr "Gå til forrige dags program" + +msgid "Goto previous page of events" +msgstr "Gå til forrige programside" + +msgid "Goto specific date/time" +msgstr "" + +msgid "GotoX calibration" +msgstr "Gå til X kalibrering" + +msgid "GraphMultiEpg Settings" +msgstr "Grafisk multi EPG innstilling" + +# +msgid "Graphical Multi EPG" +msgstr "Grafisk multi EPG" + +# +msgid "Greek" +msgstr "Gresk" + +# +msgid "Green boost" +msgstr "Green boost" + +msgid "Guard interval" +msgstr "Guard interval" + +msgid "HD list" +msgstr "HD liste" + +msgid "HDMI-CEC setup" +msgstr "" + +msgid "Handle standby from TV" +msgstr "Håndtere 'slå av' fra TV" + +msgid "Handle wakeup from TV" +msgstr "Håndtere 'oppvåkning' fra TV" + +msgid "Hard disk" +msgstr "Disk" + +msgid "Hard disk setup" +msgstr "Disk oppsett" + +msgid "Hard disk standby after" +msgstr "Slå av disk etter" + +msgid "Harddisk" +msgstr "Disk" + +msgid "Hardware: " +msgstr "Maskinvare:" + +msgid "Hebrew" +msgstr "Hebraisk" + +msgid "Helps setting up your dish" +msgstr "Hjelper til med ditt paraboloppsett" + +msgid "Hidden network" +msgstr "Skjult nettverk" + +msgid "Hide CI messages" +msgstr "Skjul CI beskjeder" + +msgid "Hide channel list in radio mode" +msgstr "Skjul kanalliste i radiomodus" + +# +msgid "Hide known extensions" +msgstr "Skjul kjente utvidelser" + +msgid "Hide number markers" +msgstr "Skjul nummermarkører" + +# +msgid "Hide player" +msgstr "Skjul spiller" + +msgid "Hide zap errors" +msgstr "Skjul hopp feil" + +msgid "Hierarchy info" +msgstr "Hierarki info" + +# +msgid "Hierarchy information" +msgstr "Hierarki informasjon" + +# +msgid "High bitrate support" +msgstr "Høy bitrate støtte" + +msgid "Hold screen" +msgstr "Hold skjermen" + +msgid "Hold till locked" +msgstr "Hold til låst" + +msgid "Home" +msgstr "Hjem" + +# +msgid "Horizontal" +msgstr "Horisontal" + +msgid "Horizontal turning speed" +msgstr "Horisontal dreiehastighet" + +# +msgid "How many minutes do you want to record?" +msgstr "Hvor mange minutter vil du ta opp?" + +# +msgid "Hue" +msgstr "Fargetone" + +# +msgid "Hungarian" +msgstr "Ungarsk" + +# +msgid "IP address" +msgstr "IP adresse" + +# +msgid "ISO file is too large for this filesystem!" +msgstr "ISO-fil er for stor til dette filsystemet!" + +# +msgid "ISO path" +msgstr "ISO bane" + +msgid "Icons" +msgstr "Varsler" + +msgid "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." +msgstr "" +"Hvis du ser dette, er det noe galt med\n" +"din scart forbindelse. Trykk OK for å gå tilbake." + +msgid "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." +msgstr "" +"Hvis din TV har lysstyrke eller kontrastforbedring anbefales denne avslått. Finnes en 'dynamisk' innstilling anbefales denne satt til standard. Juster baklys nivået til en innstilling som ser bra ut og bruk så lite kontrast som mulig.\n" +"Sett lysstyrken så lavt som mulig, men pass på at de to laveste grå nivåene kan skilles.\n" +"Ikke ta hensyn til de lyse nivåene. De blir justert i neste trinn.\n" +"Trykk OK når du er ferdig." + +msgid "Image: " +msgstr "Image:" + +msgid "Immediate shutdown" +msgstr "Slå helt av" + +# +msgid "In order to record a timer, the TV was switched to the recording service!\n" +msgstr "Et tidtakeropptak startet og TV kanalen skiftet over til opptaket!\n" + +# +msgid "In progress" +msgstr "Pågår" + +msgid "Inactivity Sleeptimer" +msgstr "Inaktivitets tidtaker" + +msgid "Include AIT in http streams" +msgstr "Inkludere AIT i http dataprotokoll" + +msgid "Include ECM in http streams" +msgstr "Inkludere ECM i http dataprotokoll" + +msgid "Include EIT in http streams" +msgstr "Inkludere EIT i http dataprotokoll" + +msgid "Incorrect type service for PiP!" +msgstr "" + +# +msgid "Increased voltage" +msgstr "Økt spenning" + +# +msgid "Index" +msgstr "Innholdsfortegnelse" + +msgid "Index allocated:" +msgstr "Innholdsfortegnelse tildelt:" + +# +msgid "Info" +msgstr "Info" + +# +msgid "Info bar" +msgstr "Informasjonslinje" + +# +msgid "Info bar timeout" +msgstr "Tidsavbrudd på informasjonslinje" + +msgid "Infobar frontend data source" +msgstr "" + +# +msgid "Information" +msgstr "Informasjon" + +# +msgid "Init" +msgstr "Igangsette" + +# +msgid "Initial fast forward speed" +msgstr "Hurtigspoling framover" + +# +msgid "Initial location in new timers" +msgstr "Plassering av nye tidtakere" + +msgid "Initial lock ratio" +msgstr "Nåværende låse forhold" + +# +msgid "Initial rewind speed" +msgstr "Hurtigspoling bakover" + +msgid "Initial signal quality" +msgstr "Nåværende signal kvalitet" + +msgid "Initial signal quality:" +msgstr "Nåværende signal kvalitet:" + +# +msgid "Initialization" +msgstr "Diskoppstarting" + +# +msgid "Initialize" +msgstr "Igangkjøre" + +msgid "Initializing storage device..." +msgstr "Igangkjører lagringsenhet ..." + +# +msgid "Input" +msgstr "Inngang" + +msgid "Input device setup" +msgstr "Inndata oppsett" + +msgid "Input devices" +msgstr "Mottaker enheter" + +# +msgid "Install" +msgstr "Installere" + +# +msgid "Install a new image with a USB stick" +msgstr "Installere et nytt image ved hjelp av en USB pinne" + +# +msgid "Install a new image with your web browser" +msgstr "Installere et nytt image ved hjelp av din nettleser" + +# +msgid "Install channel list" +msgstr "Installere kanalliste" + +msgid "Install extensions" +msgstr "" + +# +msgid "Install extensions." +msgstr "Installere utvidelser." + +# +msgid "Install local extension" +msgstr "Installere lokal utvidelse" + +msgid "Install picons on" +msgstr "Installere picons på" + +# +msgid "Install softcam" +msgstr "Installere softcam" + +msgid "Installation has completed." +msgstr "Installasjonen er ferdig" + +msgid "Installation or removal has completed." +msgstr "Installasjonen/avinstalleringen er ferdig." + +# +msgid "Installing" +msgstr "Installerer" + +# +msgid "Installing software..." +msgstr "Installerer programvare..." + +# +msgid "Instant recording location" +msgstr "Plassering for direkteopptak" + +# +msgid "Instant recording..." +msgstr "Direkte opptak..." + +# +msgid "Interface: " +msgstr "Grensesnitt:" + +# +msgid "Intermediate" +msgstr "Mellomnivå" + +# +msgid "Internal flash" +msgstr "Internt flash" + +msgid "Internal hdd only" +msgstr "Bare for intern hdd/ssd" + +msgid "Interval between keys when repeating:" +msgstr "Tidsintervall mellom repeterende tastetrykk" + +#, python-format +msgid "Invalid directory selected: %s" +msgstr "Ugyldig katalog valgt:%s" + +# +msgid "Invalid location" +msgstr "Ugyldig plassering" + +msgid "Invalid transponder data" +msgstr "" + +msgid "Inversion" +msgstr "Krenging" + +msgid "Invert" +msgstr "Vend" + +# +msgid "Ipkg" +msgstr "" + +msgid "Is this setting ok?" +msgstr "Er denne innstilling OK?" + +# +msgid "Is this video mode ok?" +msgstr "Er denne videoinnstilling OK?" + +# +msgid "Italian" +msgstr "Italiensk" + +msgid "Items per page " +msgstr "Kanaler pr. side" + +msgid "Items per page for list screen" +msgstr "Kanaler pr. side på skjermmeny" + +# +msgid "Job overview" +msgstr "Arbeidsoversikt" + +msgid "Jump to beginning of list" +msgstr "Gå til begynnelse av listen" + +# +msgid "Jump to end of list" +msgstr "Gå til slutten av listen" + +# +msgid "Jump to next marked position" +msgstr "Gå til neste markerte posisjon" + +# +msgid "Jump to previous marked position" +msgstr "Gå til forrige markerte posisjon" + +# +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect) +msgid "Just scale" +msgstr "Bare skalere" + +msgid "Keep service" +msgstr "" + +# +msgid "Kernel version: " +msgstr "Linuxkjerne versjon: " + +# +msgid "Keyboard" +msgstr "Tastatur" + +# +msgid "Keyboard map" +msgstr "Tastaturspråk" + +# +msgid "Keyboard setup" +msgstr "Tastaturoppsett" + +# +msgid "LAN adapter" +msgstr "LAN adapter" + +msgid "LAN connection" +msgstr "LAN oppkobling" + +# +msgid "LNB" +msgstr "" + +# +msgid "Language" +msgstr "Språk" + +# +msgid "Language selection" +msgstr "Språkvalg" + +# +msgid "Last config" +msgstr "Siste innstilling" + +# +msgid "Last speed" +msgstr "Siste hastighet" + +msgid "Last upgrade: " +msgstr "Siste oppdatering:" + +msgid "Latest Commits" +msgstr "" + +# +msgid "Latitude" +msgstr "Breddegrad" + +# +msgid "Latvian" +msgstr "Latvisk" + +# +msgid "Leave DVD player?" +msgstr "Avslutte DVD spiller?" + +# +msgid "Left" +msgstr "Venstre" + +# +msgid "Left from servicename" +msgstr "Venstre for kanalnavn" + +msgid "Leisure hobbies" +msgstr "fritidssysler" + +#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term. +msgid "Letterbox" +msgstr "Brevformat" + +msgid "Letterbox zoom" +msgstr "Letterbox forstørrelse" + +msgid "Limit character set for recording filenames" +msgstr "Begrense antall tegn på opptaksnavn" + +# +msgid "Limit east" +msgstr "Østgrense" + +msgid "Limit the characters that can be used in recording filenames to (7 bit) ascii. This ensures compatibility with operating systems or file systems with limited character sets." +msgstr "Begrense antall tegn som skal brukes i opptaksnavn til (7 bit) ascii. Dette sikrer kompatibilitet med operativsystem eller filsystemer med begrenset antall tegnsett." + +# +msgid "Limit west" +msgstr "Vestgrense" + +msgid "Limits cancelled" +msgstr "Grenser kansellert" + +msgid "Limits enabled" +msgstr "Grenser aktivert" + +# +msgid "Limits off" +msgstr "Grenser av" + +# +msgid "Limits on" +msgstr "Grenser på" + +msgid "Link quality:" +msgstr "Signalstyrke:" + +# +msgid "Link:" +msgstr "Signal:" + +# +msgid "Linked titles with a DVD menu" +msgstr "Koblede navn med en DVD-meny" + +msgid "List EPG functions..." +msgstr "Vis EPG funksjoner..." + +msgid "List available networks" +msgstr "Vis tilgjengelige nettverk" + +msgid "List mode" +msgstr "Vis liste" + +# +msgid "List of storage devices" +msgstr "Liste over lagringsenheter" + +msgid "List type" +msgstr "Vis type" + +#, python-format +msgid "List version %d, found %d channel" +msgid_plural "List version %d, found %d channels" +msgstr[0] "Vis versjon %d, funnet %d kanal" +msgstr[1] "Vis versjon %d, funnet %d kanaler" + +# +msgid "Listen to the radio..." +msgstr "Lytte til radio..." + +msgid "Lists reloaded!" +msgstr "" + +# +msgid "Lithuanian" +msgstr "Litauisk" + +# +msgid "Load" +msgstr "Last inn" + +msgid "Load Length of Movies in Movielist" +msgstr "Vis opptakslengde i listen" + +msgid "Load length of movies in movie list" +msgstr "Last inn opptakslengden i opptaksliste" + +# +msgid "Load playlist" +msgstr "Last inn spilliste" + +# +msgid "Local network" +msgstr "Lokalt nettverk" + +# +msgid "Location" +msgstr "Plassering" + +# +msgid "Location for instant recordings" +msgstr "Plassering for direkte opptak" + +msgid "Lock ratio" +msgstr "Låsforhold" + +# +msgid "Lock:" +msgstr "Lås:" + +msgid "Log results to harddisk" +msgstr "Lagre resultatene til hdd/ssd" + +msgid "Long filenames" +msgstr "Lange filnavn" + +# +msgid "Long key press" +msgstr "Langt tastetrykk" + +# +msgid "Longitude" +msgstr "Lengdegrad" + +msgid "Loop through to" +msgstr "" + +msgid "Luxembourgish" +msgstr "Luxemburgsk" + +# +msgid "MMC card" +msgstr "MMC kort" + +# +msgid "MORE" +msgstr "" + +# +msgid "Main menu" +msgstr "Hovedmeny" + +msgid "Maintain old EPG data for" +msgstr "Oppretthold gamle EPG data i" + +# +msgid "Make this mark an 'in' point" +msgstr "Gjør denne markør til et 'inn' punkt" + +# +msgid "Make this mark an 'out' point" +msgstr "Gjør denne markør til et 'ut' punkt" + +# +msgid "Make this mark just a mark" +msgstr "Gjør dette merke til bare et merke" + +# +msgid "Manage extensions" +msgstr "Administrer utvidelser" + +# +msgid "Manage your receiver's software" +msgstr "Administrer din mottakers programvare" + +msgid "Manual" +msgstr "" + +msgid "Manual Scan" +msgstr "Manuelt søk" + +msgid "Manual configuration" +msgstr "Manuell innstilling" + +msgid "Manual scan" +msgstr "Manuelt søk" + +# +msgid "Manual transponder" +msgstr "Manuell transponder" + +# +msgid "Manufacturer" +msgstr "Produsent" + +# +msgid "Margin after recording (minutes)" +msgstr "Stopptid etter opptak (minutter)" + +# +msgid "Margin before recording (minutes)" +msgstr "Starttid før opptak (minutter)" + +msgid "Max memory positions" +msgstr "" + +msgid "Max. bitrate: " +msgstr "Maksimal bithastighet:" + +# +msgid "Media player" +msgstr "Mediespiller" + +msgid "Media scanner" +msgstr "Mediesøker" + +# +msgid "Medium is not a writeable DVD!" +msgstr "Mediet er en ikke skrivbar DVD!" + +# +msgid "Medium is not empty!" +msgstr "Mediet er ikke tomt!" + +msgid "Memory" +msgstr "Minne" + +msgid "Memory index" +msgstr "Minne oversikt" + +msgid "Menu" +msgstr "Meny" + +msgid "Message" +msgstr "Beskjed" + +msgid "Message..." +msgstr "Beskjed..." + +#, python-format +msgid "Minimum age %d years" +msgstr "Minimumsalder %d år" + +msgid "Minimum send interval" +msgstr "Minimum sendingsintervall" + +msgid "Missing " +msgstr "Savnet" + +# +msgctxt "Satellite configuration mode" +msgid "Mode" +msgstr "Type" + +# +msgctxt "Video output mode" +msgid "Mode" +msgstr "Type" + +# +msgid "Model: " +msgstr "Modell:" + +# +msgid "Modulation" +msgstr "Modulasjon" + +# +msgid "Modulator" +msgstr "Modulator" + +# +msgid "Mon" +msgstr "Man" + +# +msgid "Mon-Fri" +msgstr "Man-Fre" + +# +msgid "Monday" +msgstr "Mandag" + +# +msgid "Mosquito noise reduction" +msgstr "Moskito- støyreduksjon" + +msgid "Mount" +msgstr "Montere" + +msgid "Move" +msgstr "Kjøre" + +# +msgid "Move PiP to main picture" +msgstr "Flytt PiP (bilde i bilde) til hovedvindu" + +# +msgid "Move Picture in Picture" +msgstr "Flytt Bilde i Bilde" + +# +msgid "Move east" +msgstr "Kjør østover" + +msgid "Move to other directory" +msgstr "Flytt til annen katalog" + +msgid "Move to position X" +msgstr "Flyttet til posisjon X" + +# +msgid "Move west" +msgstr "Kjør vestover" + +msgid "Moved to position 0" +msgstr "Flyttet til posisjon 0" + +msgid "Moved to position at index" +msgstr "Flyttet til startposisjon" + +msgid "Movement" +msgstr "Bevegelse" + +msgid "Movie List Configuration" +msgstr "Innstilling for opptaksliste" + +msgid "Movie Selection" +msgstr "Opptaksvalg" + +msgid "Movie list configuration" +msgstr "Innstilling for opptaksliste" + +msgid "Movie location" +msgstr "Plassering av opptak" + +msgid "Movie selection" +msgstr "Opptaksvalg" + +msgid "Movie/Drama" +msgstr "film/drama" + +msgid "Movielist menu" +msgstr "Opptaksliste" + +msgid "Moving" +msgstr "Kjører" + +msgid "Moving east ..." +msgstr "Kjører østover..." + +msgid "Moving to position" +msgstr "Kjører til posisjon" + +msgid "Moving west ..." +msgstr "Kjører vestover..." + +# +msgid "Multi EPG" +msgstr "Fullstendig EPG" + +msgid "Multi-EPG bouquet selection" +msgstr "Fullstendig EPG kanallisteutvalg" + +# +msgid "Multimedia" +msgstr "" + +# +msgid "Multiple service support" +msgstr "Flerkanal støtte" + +msgid "Multiplex" +msgstr "Multiplex" + +# +msgid "Multisat" +msgstr "Multisat" + +msgid "Multisat all select" +msgstr "" + +msgid "Music/Ballet/Dance" +msgstr "musikk/ballett/dans" + +# +msgid "Mute" +msgstr "Demp" + +msgid "N/A" +msgstr "N/A" + +# +msgid "NEXT" +msgstr "NESTE" + +msgid "NFI image flashing" +msgstr "NFI image flashing" + +# +msgid "NFI image flashing completed. Press Yellow to Reboot!" +msgstr "NFI image flashing er ferdig. Trykk Gul knapp for å starte på nytt!" + +msgid "NIM" +msgstr "Tuner" + +# +msgid "NOW" +msgstr "NÅ" + +# +msgid "NTSC" +msgstr "NTSC" + +# +msgid "Name" +msgstr "Navn" + +# +msgid "Nameserver" +msgstr "Navneserver" + +# +#, python-format +msgid "Nameserver %d" +msgstr "Navneserver %d" + +# +msgid "Nameserver settings" +msgstr "Navneserver innstillinger" + +# +msgid "Nameserver setup" +msgstr "Oppsett for navneserver" + +msgid "Namespace" +msgstr "Navneområde" + +# +msgid "Netmask" +msgstr "Nettverksmaske" + +# +msgid "Network" +msgstr "Nettverk" + +msgid "Network ID" +msgstr "Nettverks ID" + +# +msgid "Network configuration..." +msgstr "Nettverksinnstilling..." + +# +msgid "Network mount" +msgstr "Nettverks mount" + +# +#, python-format +msgid "Network mount %s" +msgstr "Nettverks mount %s" + +msgid "Network name (SSID)" +msgstr "Nettverksnavn (SSID)" + +msgid "Network scan" +msgstr "Nettverkssøk" + +# +msgid "Network setup" +msgstr "Nettverksinstillinger" + +# +msgid "Network test" +msgstr "Nettverkstest" + +# +msgid "Network test..." +msgstr "Nettverkstest..." + +msgid "Network test: " +msgstr "Nettverkstest:" + +# +msgid "Network wizard" +msgstr "Nettverksveiviser" + +# +msgid "Network:" +msgstr "Nettverk:" + +# +msgid "New" +msgstr "Ny" + +msgid "New PIN" +msgstr "Ny PIN" + +# +msgid "New version:" +msgstr "Ny versjon:" + +msgid "News Current Affairs" +msgstr "Nyheter aktuelle saker" + +msgctxt "button label, 'next screen'" +msgid "Next" +msgstr "Neste" + +msgctxt "now/next: 'next' event label" +msgid "Next" +msgstr "Neste" + +# +msgid "No" +msgstr "Nei" + +# +msgid "No (supported) DVDROM found!" +msgstr "Ingen (støttet) DVD-ROM funnet!" + +# +msgid "No Connection" +msgstr "Ingen forbindelse" + +msgid "No HDD found or HDD not initialized!" +msgstr "" +"Ingen hdd/ssd er funnet eller\n" +"hdd/ssd er ikke klargjort!" + +# +msgid "No backup needed" +msgstr "Ingen sikkerhetskopi er nødvendig" + +msgid "No cable tuner found!" +msgstr "Ingen kabel-TV tuner er funnet!" + +# +msgid "" +"No data on transponder!\n" +"(Timeout reading PAT)" +msgstr "" +"Ingen data på transponder!\n" +"(Tidsavbrudd ved lesing av PAT)" + +msgid "No delay" +msgstr "Ingen forsinkelse" + +# +msgid "No description available." +msgstr "Ingen forklaring er tilgjengelig." + +# +msgid "No details for this image file" +msgstr "Ingen detaljer for denne bilde fil" + +# +msgid "No displayable files on this medium found!" +msgstr "Ingen visbare filer på dette mediet funnet!" + +# +msgid "No event info found, recording indefinitely." +msgstr "Ingen kanalinfo er funnet, innspiller på ubestemt tid." + +msgid "No fast winding possible yet.. but you can use the number buttons to skip forward/backward!" +msgstr "Ingen hurtigspoling er mulig nå .. men du kan bruke talltastene til å hoppe framover/bakover!" + +msgid "No free index available" +msgstr "Ingen innholdsfortegnelse er tilgjengelig" + +# +msgid "No free tuner!" +msgstr "Ingen ledig tuner!" + +# +msgid "No network connection available." +msgstr "Ingen nettverksforbindelse er tilgjengelig." + +# +msgid "No networks found" +msgstr "Ingen nettverk ble funnet" + +# +msgid "No new plugins found" +msgstr "Ingen nye programtillegg ble funnet" + +# +msgid "No positioner capable frontend found." +msgstr "Ingen brukbar posisjon ble funnet." + +msgid "No satellites configured. Plese check your tuner setup." +msgstr "" + +# +msgid "No service" +msgstr "Ingen service" + +msgid "No services/providers selected" +msgstr "Ingen kanaler/leverandører er valgt" + +# +msgid "No standby" +msgstr "Ingen standby" + +msgid "No suitable sat tuner found!" +msgstr "Ingen passende sat tuner ble funnet!" + +msgid "No tags are set on these movies." +msgstr "Ingen tagger er satt på disse opptakene." + +# +msgid "No timeout" +msgstr "Ingen tidsavbrudd" + +# +msgid "No to all" +msgstr "Nei til alle" + +msgid "No transparency" +msgstr "Ingen gjennomsiktighet" + +msgid "No tuner is configured for use with a diseqc positioner!" +msgstr "Ingen tuner er satt opp til bruk av DiSEqC motor!" + +msgid "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Ingen tuner er aktivert!\n" +"Vennligst still inn tuner før du starter kanalsøk." + +msgid "No updates available" +msgstr "Det finnes ingen nye oppdateringer" + +msgid "No updates available. Please try again later." +msgstr "Det finnes ingen nye oppdateringer. Vennligst prøv igjen senere." + +# +msgid "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" +msgstr "" +"Ingen gyldig PIN kode ble funnet!\n" +"Vil du endre kanal PIN nå?\n" +"Velger du 'Nei' vil kanal beskyttelsen være deaktivert!" + +# +msgid "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" +msgstr "" +"Ingen gyldig PIN kode ble funnet!\n" +"Vil du endre PIN kode nå?\n" +"Velger du 'Nei' vil oppsetts beskyttelsen være deaktivert!" + +msgid "No wireless networks found! Searching..." +msgstr "Ingen trådløse nettverk ble funnet! Søker..." + +msgid "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." +msgstr "" +"Finner ikke noe nettverkskort.\n" +"Kontroller at du har tilkoblet en nettverkskabel og at alt er riktig innstilt." + +# +msgid "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." +msgstr "" +"Finner ikke noe trådløst nettverkskort.\n" +"Kontroller at du har tilkoblet en kompatibel WLAN-enhet og at nettverket er satt opp riktig." + +# +msgid "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." +msgstr "" +"Finner ikke noe trådløst nettverkskort.\n" +" Kontroller at du har tilkoblet en kompatibel WLAN-enhet eller aktiver ditt lokale nettverkskort." + +msgid "No, but restart from begin" +msgstr "Nei, men start på nytt" + +# +msgid "No, do nothing." +msgstr "Nei, gjør ingenting" + +msgid "No, just start my receiver" +msgstr "Nei, bare start min mottaker" + +msgid "No, never" +msgstr "Nei, aldri" + +# +msgid "None" +msgstr "Ingen" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right) +msgid "Nonlinear" +msgstr "Ikke lineær" + +msgid "Normal mode" +msgstr "Normal type" + +# +msgid "North" +msgstr "Nord" + +# +msgid "Norwegian" +msgstr "Norsk" + +msgid "Not associated" +msgstr "Ikke tilknyttet" + +msgid "Not configured" +msgstr "" + +#, python-format +msgid "Not enough disk space. Please free up some disk space and try again. (%d MB required, %d MB available)" +msgstr "Ikke nok diskplass. Vennligst frigjør litt diskplass og prøv på nytt. (%d MB nødvendig, %d MB tilgjengelig)" + +msgid "Nothing connected" +msgstr "" + +msgid "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Ikke noe å søke!\n" +"Vennligst still inn tuner før søking etter kanaler." + +msgctxt "now/next: 'now' event label" +msgid "Now" +msgstr "Nå" + +# +msgid "Now playing" +msgstr "Nå spilles" + +msgid "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." +msgstr "Bruk kontrastinstillningen på din TV for å justere opp lysstyrken så mye som mulig. Pass på at du fortsatt kan skille mellom de to lyseste skyggenivåene. Trykk OK når du er ferdig." + +# +msgid "OK" +msgstr "" + +msgid "OK, guide me through the upgrade process" +msgstr "OK, ta meg gjennom oppdateringsprosessen" + +msgid "ONID" +msgstr "" + +msgid "OSD name request" +msgstr "OSD navn forespørsel" + +# +msgid "OSD settings" +msgstr "OSD instillinger" + +msgid "OSD transparency" +msgstr "OSD visning" + +# +msgid "Off" +msgstr "Av" + +msgid "Offline decode delay (ms)" +msgstr "Frakoblet dekodingsforsinkelse (ms)" + +msgid "Ok" +msgstr "" + +# +msgid "On" +msgstr "På" + +msgid "On end of movie" +msgstr "På slutten av filmen" + +msgid "On end of movie (as menu)" +msgstr "" + +# +msgid "One" +msgstr "En" + +# +msgid "Only extensions." +msgstr "Bare utvidelser." + +msgid "Only free scan" +msgstr "Bare søk etter gratis kanaler" + +# +msgid "Open service list" +msgstr "Åpne kanallisten" + +msgid "Open the movie list" +msgstr "Åpne spillisten" + +msgid "Orbital position" +msgstr "Baneposisjon" + +msgid "Original" +msgstr "Original" + +msgid "Other" +msgstr "Annen" + +msgid "Output" +msgstr "Utgang" + +msgid "Overwrite configuration files during software upgrade?" +msgstr "Overskrive konfigurerte filer under programvareoppdateringen?" + +# +msgid "Overwrite configuration files?" +msgstr "Overskrive innstilte filer?" + +# +msgid "PAL" +msgstr "" + +msgid "PCR PID" +msgstr "" + +# +msgid "PIDs" +msgstr "" + +# +msgid "PIN code needed" +msgstr "PIN-kode er nødvendig" + +msgid "PLP ID" +msgstr "" + +msgid "PMT PID" +msgstr "" + +# +msgid "Package list update" +msgstr "Oppdaterer programvare" + +msgid "Packet management" +msgstr "Velg programpakker" + +msgid "Packet manager" +msgstr "Pakkeforvalter" + +#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term +msgid "Pan&scan" +msgstr "" + +msgid "Parent directory" +msgstr "Overordnet katalog" + +# +msgid "Parental control" +msgstr "Foreldrekontroll" + +# +msgid "Parental control services editor" +msgstr "Foreldrekontroll og kanalinnstillinger" + +# +msgid "Parental control setup" +msgstr "Foreldrekontroll oppsett" + +# +msgid "Parental control type" +msgstr "Foreldrekontroll type" + +# +msgid "Password" +msgstr "Passord" + +# +msgid "Pause" +msgstr "" + +msgid "Pause movie at end" +msgstr "Stopp opptak ved slutt" + +# +msgid "Pause playback" +msgstr "Pause avspilling" + +msgid "Pauze/Continue playback" +msgstr "" + +msgid "Percentage left" +msgstr "Prosent venstre" + +# +msgid "Percentage right" +msgstr "Prosent høyre" + +msgid "Permanently delete all recordings in the trash can?" +msgstr "Permanent slette alle opptak som ligger i papirkurven?" + +msgid "Permanently remove all deleted items" +msgstr "Permanent fjerne alle slettede elementer" + +msgid "Persian" +msgstr "Persisk" + +# +msgid "Phone number" +msgstr "Tlf. nr." + +# +msgid "PiP setup" +msgstr "PiP-bilde i bilde oppsett" + +msgid "Picon" +msgstr "" + +msgid "Picon and service name" +msgstr "Picon og kanal navn" + +# +msgid "Picture player" +msgstr "Bildeviser" + +#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term. +msgid "Pillarbox" +msgstr "Sorte kanter" + +# +msgid "Pilot" +msgstr "" + +# +msgid "Play" +msgstr "Spille av" + +# +msgid "Play DVD" +msgstr "Spille DVD" + +msgid "Play audio in background" +msgstr "Spille av lyd i bakgrunnen" + +msgid "Play audio-CD..." +msgstr "Spille av lyd CD..." + +msgid "Play back media files" +msgstr "Spille av mediefiler" + +# +msgid "Play entry" +msgstr "Spilloppføring" + +# +msgid "Play from next mark or playlist entry" +msgstr "Spille fra neste markør i spilliste" + +# +msgid "Play from previous mark or playlist entry" +msgstr "Spille fra siste markør i spilliste" + +msgid "Play music..." +msgstr "Spille musikk..." + +msgid "Play next" +msgstr "Spille neste" + +msgid "Play next (return to movie list)" +msgstr "Spille neste (gå tilbake til spilliste)" + +msgid "Play next (return to previous service)" +msgstr "Spille neste (gå tilbake til siste kanal)" + +msgid "Play previous" +msgstr "Spille siste" + +msgid "Play recorded movies..." +msgstr "Spille av opptak..." + +# +msgid "Please add titles to the compilation." +msgstr "Vennligst legg til navn i samlingen." + +# +msgid "Please change recording endtime" +msgstr "Vennligst endre sluttid for opptak" + +# +msgid "Please check your network settings!" +msgstr "Vennligst kontroller nettverksinnstillingene!" + +# +msgid "Please choose an extension..." +msgstr "Vennligst velg en utvidelse" + +msgid "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Vennligst skriv inn nødvendig informasjon for dine navnetjenere.\n" +"Når du er klar, trykk OK for å fortsette." + +msgid "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Vennligst skriv inn nødvendig informasjon for internett-oppkoblingen.\n" +"Når du er klar, trykk OK for å fortsette." + +msgid "Please connect your receiver to the internet" +msgstr "Vennligst, koble mottakeren til internett" + +# +msgid "Please do not change any values unless you know what you are doing!" +msgstr "Vennligst ikke endre verdier, hvis du ikke vet hva du gjør!" + +# +msgid "Please enter a name for the new bouquet" +msgstr "Vennligst skriv et navn på den nye kanalliste" + +# +msgid "Please enter a name for the new marker" +msgstr "Vennligst skriv navn for den nye markøren" + +# +msgid "Please enter a new filename" +msgstr "Vennligst skriv et nytt filnavn" + +# +msgid "Please enter filename (empty = use current date)" +msgstr "Vennligst skriv filnavn (tomt= bruker nåværende dato)" + +msgid "Please enter name of the new directory" +msgstr "Vennligst skriv navnet på den nye katalogen" + +# +msgid "Please enter new name:" +msgstr "Vennligst skriv et nytt navn" + +msgid "Please enter the correct pin code" +msgstr "Vennligst tast inn riktig pin kode" + +msgid "Please enter the old PIN code" +msgstr "Vennligst tast inn den gamle PIN koden" + +msgid "Please follow the instructions on the TV" +msgstr "Vennligst følg instruksjonene på TV skjermen" + +msgid "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." +msgstr "Vær oppmerksom at tidligere valgt medie ikke kunne nåes. Istedenfor brukes standard katalog." + +msgid "Please press OK to continue." +msgstr "Vennligst trykk OK for å fortsette." + +msgid "Please select a default EPG type..." +msgstr "Vennligst velg standard EPG..." + +# +msgid "Please select a playlist to delete..." +msgstr "Vennligst velg spilliste å slette..." + +# +msgid "Please select a playlist..." +msgstr "Vennligst velg en spilliste" + +# +msgid "Please select a sub service..." +msgstr "Vennligst velg en underkanal..." + +# +msgid "Please select a subservice to record..." +msgstr "Vennligst velg en underkanal til opptak" + +# +msgid "Please select a subservice..." +msgstr "Vennligst velg en underkanal" + +msgid "Please select an NFI file and press green key to flash!" +msgstr "Vennligst velg en NFI fil og trykk grønn knapp for å flashe!" + +msgid "Please select medium to be scanned" +msgstr "Vennligst velg medium som skal gjennomsøkes" + +# +msgid "Please select medium to use as backup location" +msgstr "Vennligst velg hvor du skal lagre sikkerhetskopi" + +# +msgid "Please select tag to filter..." +msgstr "Vennligst velg en markør til filter..." + +msgid "Please select the movie path..." +msgstr "Vennligst velg sti for lagring av opptak..." + +msgid "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Vennligst velg nettverksgrensesnittet du vil bruke for Internett-tilkobling.\n" +"\n" +"Vennligst trykk OK for å fortsette." + +msgid "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Vennligst velg trådløst nettverk som du vil koble til.\n" +"\n" +"Vennligst trykk OK for å fortsette." + +msgid "Please set up tuner A" +msgstr "Vennligst still inn tuner A" + +msgid "Please set up tuner B" +msgstr "Vennligst still inn tuner B" + +msgid "Please set up tuner C" +msgstr "Vennligst still inn tuner C" + +msgid "Please set up tuner D" +msgstr "Vennligst still inn tuner D" + +msgid "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." +msgstr "" +"Vennligst bruk pilknappene for å flytte PiP vinduet.\n" +"Trykk Bouquet +/- for å endre vindustørrelse.\n" +"Trykk OK for å gå tilbake til TV eller EXIT for ikke å utføre flytting." + +msgid "Please use the UP and DOWN keys to select your language. Afterwards press the OK button." +msgstr "Vennligst bruk OPP og NED-knappene for å velge språk. Etterpå trykker du OK." + +msgid "Please wait" +msgstr "" + +# +msgid "Please wait (downloading channel list)" +msgstr "Vennligst vent (laster ned kanalliste)" + +# +msgid "Please wait (downloading softcam)" +msgstr "Vennligst vent (laster ned softcam)" + +# +msgid "Please wait (updating packages)" +msgstr "Vennligst vent (oppdaterer pakker)" + +# +msgid "Please wait for activation of your network configuration..." +msgstr "Vennligst vent til nettverksaktivering er klar..." + +msgid "Please wait while scanning is in progress..." +msgstr "Vennligst vent mens søking pågår..." + +# +msgid "Please wait while we configure your network..." +msgstr "Vennligst vent mens vi stiller inn nettverket..." + +# +msgid "Please wait while we prepare your network interfaces..." +msgstr "Vennligst vent mens vi forbereder nettverksgrensesnitt..." + +# +msgid "Please wait while we test your network..." +msgstr "Vennligst vent mens vi tester nettverket..." + +msgid "Please wait while your network is restarting..." +msgstr "Vennligst vent mens nettverket starter på nytt ..." + +# +msgid "Please wait..." +msgstr "Vennligst vent..." + +# +msgid "Please wait... Loading list..." +msgstr "Vennligst vent... henter liste..." + +# +msgid "Plugin browser" +msgstr "Oversikt over programtillegg" + +msgid "Plugin manager activity information" +msgstr "Aktivitets informasjon for programtillegg" + +msgid "Plugin manager help" +msgstr "Hjelp for programtillegg" + +# +msgid "Plugins" +msgstr "Programtillegg" + +msgid "Polarisation" +msgstr "Polarisasjon" + +msgid "Polarisation:" +msgstr "Polarisasjon:" + +# +msgid "Polarization" +msgstr "Polarisasjon" + +# +msgid "Polish" +msgstr "Polsk" + +# +msgid "Port A" +msgstr "Inngang A" + +# +msgid "Port B" +msgstr "Inngang B" + +# +msgid "Port C" +msgstr "Inngang C" + +# +msgid "Port D" +msgstr "Inngang D" + +# +msgid "Portuguese" +msgstr "Portugisisk" + +msgid "Position of completed timers in timerlist" +msgstr "Plassering av fullførte tidtakere i liste" + +msgid "Position stored at index" +msgstr "Posisjon lagret i tabell" + +# +msgid "Positioner" +msgstr "Motor" + +msgid "Positioner (selecting satellites)" +msgstr "" + +# +msgid "Positioner Setup" +msgstr "Posisjons oppsett" + +# +msgid "Positioner setup" +msgstr "Motoroppsett" + +msgid "Power threshold in mA" +msgstr "Strømverdi i mA" + +# +msgid "Predefined transponder" +msgstr "Forhåndsdefinert transponder" + +msgid "Prefer AC3 track" +msgstr "Foretrekk AC3 lyd" + +msgid "Prefer AC3+ track" +msgstr "" + +msgid "Prefer audio track stored by service" +msgstr "Foretrekk lyd utsendt av kanal" + +msgid "Prefer graphical DVB subtitles" +msgstr "Foretrekk DVB undertekster" + +msgid "Prefer subtitles for hearing impaired" +msgstr "Foretrekk undertekster beregnet for hørselshemmede" + +msgid "Prefer subtitles stored by service" +msgstr "Foretrekk undertekster utsendt av kanal" + +msgid "Preferred tuner" +msgstr "Foretrukket tuner" + +msgid "Preferred tuner for recordings" +msgstr "" + +msgid "Prepare another USB stick for image flashing" +msgstr "Forberede en USB minnepinne for image brenning" + +# +msgid "Preparing... Please wait" +msgstr "Forbereder.. vennligst vent" + +msgid "Press '0' to toggle PiP mode" +msgstr "" + +msgid "Press INFO on your remote control for additional information." +msgstr "Trykk INFO på fjernkontrollen for ytterligere informasjon." + +msgid "Press MENU on your remote control for additional options." +msgstr "Trykk på MENU på fjernkontrollen for flere alternativer." + +msgid "Press OK on your remote control to continue." +msgstr "Trykk OK for å fortsette." + +msgid "Press OK to activate the selected skin." +msgstr "Trykk OK for å ta i bruk det valgte skin." + +msgid "Press OK to activate the settings." +msgstr "Trykk OK for å aktivere instillingene" + +msgid "Press OK to edit the settings." +msgstr "Trykk OK for å endre innstillinger." + +#, python-format +msgid "Press OK to get further details for %s" +msgstr "Trykk OK for å få ytterligere detaljer for %s" + +msgid "Press OK to scan" +msgstr "Trykk OK for å søke." + +msgid "Press OK to select a provider." +msgstr "Trykk OK for å velge en leverandør." + +msgid "Press OK to select satellites" +msgstr "" + +msgid "Press OK to select/deselect a CAId." +msgstr "Trykk OK for å velge/fjerne en CAId." + +msgid "Press OK to start the scan" +msgstr "Trykk OK for å starte søk." + +msgid "Press OK to toggle the selection" +msgstr "" + +msgid "Press OK to toggle the selection." +msgstr "Trykk OK for å veksle mellom valgene." + +msgid "Press yellow to set this interface as default interface." +msgstr "Trykk gul for å velge dette som standard grensesnitt." + +msgctxt "button label, 'previous screen'" +msgid "Prev" +msgstr "Forrige" + +# +msgid "Preview" +msgstr "Forhåndsvisning" + +# +msgid "Preview menu" +msgstr "Forhåndsvisning meny" + +msgid "Preview selected channel" +msgstr "Forhåndsvis valgte kanal" + +# +msgid "Primary DNS" +msgstr "Primær DNS" + +# +msgid "Priority" +msgstr "Prioritet" + +# +msgid "Process" +msgstr "Prosess" + +msgid "Progress" +msgstr "Framdrift" + +msgid "Progress bar left" +msgstr "Framdriftslinje venstre" + +msgid "Progress bar right" +msgstr "Framdriftslinje høyre" + +# +msgid "Properties of current title" +msgstr "Egenskaper for gjeldende navn" + +# +msgid "Protect services" +msgstr "Beskytte kanaler" + +# +msgid "Protect setup" +msgstr "Beskytte oppsett" + +# +msgid "Provider" +msgstr "Leverandører" + +msgid "Provider to scan" +msgstr "Søke leverandører" + +# +msgid "Providers" +msgstr "Leverandører" + +msgid "Put TV in standby" +msgstr "Slå av TV" + +msgid "Put receiver in standby" +msgstr "Slå av mottaker" + +msgid "Python frontend for /tmp/mmi.socket" +msgstr "" + +# +msgid "Quick" +msgstr "Hurtig" + +# +msgid "Quick zap" +msgstr "Hurtig bytte" + +# +msgid "RF output" +msgstr "RF utgang" + +# +msgid "RGB" +msgstr "RGB" + +# +msgid "Radio" +msgstr "Radio" + +# +msgid "Ram disk" +msgstr "" + +# +msgid "Random" +msgstr "Tilfeldig" + +#, python-format +msgid "Rating defined by broadcaster - %d" +msgstr "Rangering definert av kringkasteren -%d" + +msgid "Rating undefined" +msgstr "Rangering udefinert" + +# +msgid "Really close without saving settings?" +msgstr "Vil du lukke uten å lagre?" + +# +msgid "Really delete done timers?" +msgstr "Vil du slette ferdige tidtakere?" + +# +msgid "Really exit the subservices quickzap?" +msgstr "Vil du avslutte hurtigbytte i underkanaler" + +# +msgid "Really reboot now?" +msgstr "Starte på nytt nå?" + +msgid "Really restart now?" +msgstr "Starte på nytt nå?" + +msgid "Really shutdown now?" +msgstr "Slå av nå?" + +msgid "Really upgrade the frontprocessor and reboot now?" +msgstr "Vil du oppdatere frontprosessor og starte på nytt nå?" + +msgid "Really upgrade your settop box and reboot now?" +msgstr "Vil du oppdatere mottakeren og starte på nytt nå?" + +msgid "Reboot" +msgstr "Starte på nytt" + +msgid "Rec" +msgstr "Opptak" + +# +msgid "Reception settings" +msgstr "Mottakerfohold" + +msgid "Record" +msgstr "Opptaks innstilling" + +#, python-format +msgid "Record time limited due to conflicting timer %s" +msgstr "Opptakstid begrenset på grunn av motstridende tidtaker %s" + +msgid "Recorded files..." +msgstr "Opptaks mapper..." + +# +msgid "Recording" +msgstr "Tar opp" + +msgid "Recording in progress" +msgstr "Opptak pågår" + +msgid "Recording paths" +msgstr "Opptaksbaner" + +msgid "Recording type" +msgstr "Opptakstype" + +msgid "Recording(s) are in progress or coming up in few seconds!" +msgstr "Opptak starter opp om få sekunder!" + +msgid "Recordings" +msgstr "Opptak innstilling" + +msgid "Recordings always have priority" +msgstr "Opptak har alltid prioritet" + +msgid "Red button..." +msgstr "Rød knapp..." + +msgid "Reenter new PIN" +msgstr "Skriv inn PIN kode på nytt" + +# +msgid "Refresh rate" +msgstr "Oppfriskningsrate" + +# +msgid "Refresh rate selection." +msgstr "Valg av oppfriskningsrate" + +msgid "Regard deep standby as standby" +msgstr "Betrakt 'helt slått av' samme som 'avslått'" + +msgid "Relative" +msgstr "Forhold" + +msgid "Reload" +msgstr "Restart" + +msgid "Reload black-/white lists" +msgstr "Restart sort-/hvit lister" + +msgid "Reloading bouquets and services..." +msgstr "Restarter kanallister..." + +msgid "Remember last service in PiP" +msgstr "" + +msgid "Remember service PIN" +msgstr "Lagre PIN kode" + +msgid "Remember these settings for each folder" +msgstr "Lagre disse innstillinger for hver mappe" + +msgid "Reminder, you have chosen to save timeshift file." +msgstr "Påminnelse, du har valgt å lagre en timeshift fil" + +# +msgid "Remote control type" +msgstr "Fjernkontroll type" + +msgid "Removal has completed." +msgstr "Sletting er fullført." + +# +msgid "Remove" +msgstr "Slette" + +# +msgid "Remove a mark" +msgstr "Slette en markør" + +msgid "Remove a nameserver entry" +msgstr "Slette en navnetjener" + +# +msgid "Remove bookmark" +msgstr "Slett bokmerke" + +msgid "Remove completed timers after (days)" +msgstr "Slette fullførte tidtakere etter (dager)" + +# +msgid "Remove currently selected title" +msgstr "Slette den valgte tittelen" + +msgid "Remove items from trash can after (days)" +msgstr "Tøm papirkurven etter (dager)" + +# +msgid "Remove plugins" +msgstr "Slette programtillegg" + +# +msgid "Remove title" +msgstr "Slette overskrift" + +# +msgid "Removing" +msgstr "Sletter" + +#, python-format +msgid "Removing directory %s failed. (Maybe not empty.)" +msgstr "Sletting av katalog %s mislyktes. (Kanskje ikke tom.)" + +msgid "Removing partition table" +msgstr "Sletter partisjonstabellen" + +# +msgid "Rename" +msgstr "Gi nytt navn" + +# +msgid "Repeat" +msgstr "Gjenta" + +# +msgid "Repeat type" +msgstr "Gjentagelsestype" + +# +msgid "Repeating event currently recording... What do you want to do?" +msgstr "Gjentakende program spiller inn... Hva vil du gjøre?" + +# +msgid "Repeats" +msgstr "Gjentakelser" + +msgid "Require authentication for http streams" +msgstr "" + +# +msgid "Required medium type:" +msgstr "Nødvendig medium:" + +msgid "Rereading partition table" +msgstr "Leser partisjonstabellen på nytt" + +msgid "Reserved" +msgstr "Reservert" + +# +msgid "Reset" +msgstr "Tilbakestill" + +# +msgid "Reset and renumerate title names" +msgstr "Tilbakestill og nummerere navn på nytt" + +msgid "Reset playback position" +msgstr "Tilbakestill avspillingsposisjon" + +# +msgid "Reset video enhancement settings to system defaults?" +msgstr "Skal video innstillingene tilbakestilles til systemets standardinnstillinger?" + +# +msgid "Reset video enhancement settings to your last configuration?" +msgstr "Skal video innstillingene tilbakestilles til din siste innstilling?" + +# +msgid "Resolution" +msgstr "Oppløsning" + +msgid "Restart" +msgstr "Start på nytt" + +msgid "Restart GUI now?" +msgstr "Starte GUI på nytt?" + +msgid "Restart enigma" +msgstr "Starte enigma2 på nytt" + +msgid "Restart network" +msgstr "Starte nettverk på nytt" + +msgid "Restart test" +msgstr "Starte på nytt- test" + +msgid "Restart your network connection and interfaces.\n" +msgstr "Starte nettverksforbindelse på nytt.\n" + +# +msgid "Restore" +msgstr "Gjenopprette" + +# +msgid "Restore backups" +msgstr "Gjenopprette sikkerhetskopier" + +# +msgid "Restore is running..." +msgstr "Gjenopprettingen er igang..." + +# +msgid "Restore system settings" +msgstr "Gjenopprette systeminnstillinger" + +# +msgid "Restoring..." +msgstr "Gjenoppretter..." + +# +msgid "Resume from last position" +msgstr "Fortsette fra siste posisjon" + +# +#, python-format +msgid "Resume position at %s" +msgstr "Gjenoppta posisjonen ved %s" + +# +#. TRANSLATORS: The string "Resuming playback" flashes for a moment +#. TRANSLATORS: at the start of a movie, when the user has selected +#. TRANSLATORS: "Resume from last position" as start behavior. +#. TRANSLATORS: The purpose is to notify the user that the movie starts +#. TRANSLATORS: in the middle somewhere and not from the beginning. +#. TRANSLATORS: (Some translators seem to have interpreted it as a +#. TRANSLATORS: question or a choice, but it is a statement.) +msgid "Resuming playback" +msgstr "Fortsetter avspilling" + +msgid "Return to movie list" +msgstr "Gå tilbake til spilliste" + +msgid "Return to previous service" +msgstr "Gå tilbake til forrige kanal" + +msgid "Reverse bouquet buttons" +msgstr "" + +msgid "Reverse list" +msgstr "" + +# +msgid "Rewind speeds" +msgstr "Tilbakespolings hastigheter" + +msgid "Rewrap teletext subtitles" +msgstr "Bryt tekst-TV undertekst" + +# +msgid "Right" +msgstr "Høyre" + +msgid "Right from servicename" +msgstr "Høyre for kanalnavn" + +msgid "Roll-off" +msgstr "" + +msgid "Romanian" +msgstr "Rumensk" + +msgid "Root directory" +msgstr "Rotkatalog" + +msgid "Rotor step position:" +msgstr "Motorposisjon:" + +msgid "Rotor turning speed" +msgstr "Motorhastighet" + +msgid "Round start time on" +msgstr "Rundetid på" + +# +msgid "Russian" +msgstr "Russisk" + +# +msgid "S-Video" +msgstr "" + +msgid "SID" +msgstr "" + +# +msgid "SINGLE LAYER DVD" +msgstr "ETTLAGS DVD" + +# +msgid "SNR" +msgstr "" + +# +msgid "SNR:" +msgstr "" + +# +msgid "SSID:" +msgstr "" + +# +msgid "Same resolution as skin" +msgstr "Samme oppløsning som skin" + +# +msgid "Sat" +msgstr "Lør" + +msgid "Satellite" +msgstr "Satellittliste" + +msgid "Satellite dish setup" +msgstr "Paraboloppsett" + +msgid "Satellite equipment" +msgstr "Satellittutstyr (DiSEqC)" + +msgid "Satellite equipment setup" +msgstr "DiSEqC oppsett" + +msgid "Satellite longitude:" +msgstr "Satellitt lengdegrad:" + +msgid "Satellites" +msgstr "Distributører" + +msgid "Satfinder" +msgstr "Satellittsøker" + +# +msgid "Sats" +msgstr "" + +# +msgid "Saturation" +msgstr "Metning" + +# +msgid "Saturday" +msgstr "Lørdag" + +# +msgid "Save" +msgstr "Lagre" + +msgid "Save playlist" +msgstr "Lagre spilliste" + +# +msgid "Save timeshift file" +msgstr "Lagre timeshift fil" + +msgid "Save timeshift file in movie directory" +msgstr "Lagre timeshift filen i film katalogen" + +# +msgid "Scaler sharpness" +msgstr "Juster skarphet" + +# +msgid "Scaling mode" +msgstr "Fininnstilling" + +msgid "Scan" +msgstr "Søk" + +msgid "Scan " +msgstr "Søk" + +#. TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' +#, python-format +msgid "Scan %s" +msgstr "Søk %s" + +#. TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' +#, python-format +msgid "Scan %s band" +msgstr "Søk %s bånd" + +msgid "Scan additional SR" +msgstr "Søk etter flere SR" + +msgid "Scan files..." +msgstr "Søker filer..." + +msgid "Scan wireless networks" +msgstr "Søk etter trådløse nettverk" + +msgid "Scan your network for wireless access points and connect to them using your selected wireless device.\n" +msgstr "Søker i nettverket etter trådløse aksesspunkter og kobler til den valgte trådløse enheten.\n" + +#, python-format +msgid "Scanning %s..." +msgstr "Søker %s..." + +#. TRANSLATORS: The stb is performing a channel scan, progress percentage is printed in '%d' (and '%%' will show a single '%' symbol) +#, python-format +msgid "Scanning - %d%% completed" +msgid_plural "Scanning - %d%% completed" +msgstr[0] "Søker %d%% er ferdig" +msgstr[1] "Søker %d%% er ferdig" + +#, python-format +msgid "Scanning completed, %d channel found" +msgid_plural "Scanning completed, %d channels found" +msgstr[0] "Søket er ferdig, %d kanal er funnet" +msgstr[1] "Søket er ferdig, %d kanaler er funnet" + +msgid "Scanning failed!" +msgstr "Søket feilet!" + +msgid "Scanning..." +msgstr "Søker..." + +msgid "Scans default lamedbs sorted by satellite with a connected dish positioner" +msgstr "Søker standard satellittrekkefølge med en tilsluttet parabolmotor" + +# +msgid "Search east" +msgstr "Søk øst" + +# +msgid "Search west" +msgstr "Søk vest" + +msgid "Searching" +msgstr "Søker" + +msgid "Searching east ..." +msgstr "Søker østover..." + +msgid "Searching for available updates. Please wait..." +msgstr "Søker etter tilgjengelige oppdateringer. Vennligst vent ..." + +# +msgid "Searching for new installed or removed packages. Please wait..." +msgstr "Søker etter nye installerte eller avinstallerte pakker. Vennligst vent ..." + +msgid "Searching west ..." +msgstr "Søker vestover..." + +msgid "Second cable of motorized LNB" +msgstr "" + +# +msgid "Secondary DNS" +msgstr "Sekundær DNS" + +# +msgid "Seek" +msgstr "Søk" + +# +msgid "Seek backward" +msgstr "Søk bakover" + +# +msgid "Seek backward (enter time)" +msgstr "Søk bakover (skriv inn tid)" + +# +msgid "Seek forward" +msgstr "Søk framover" + +# +msgid "Seek forward (enter time)" +msgstr "Søk framover (skriv inn tid)" + +# +msgid "Select" +msgstr "Velg" + +# +msgid "Select CAId" +msgstr "Velg CAId" + +msgid "Select HDD" +msgstr "Velg hdd/ssd" + +# +msgid "Select a bouquet" +msgstr "Velg en kanalliste" + +msgid "Select a movie" +msgstr "Velg en film" + +# +msgid "Select a network adapter" +msgstr "Velg et nettverkskort" + +# +msgid "Select a skin" +msgstr "Velg et skin" + +# +msgid "Select a tuner" +msgstr "Velg tuner" + +# +msgid "Select a wireless network" +msgstr "Velg et trådløst nettverk" + +msgid "Select action" +msgstr "" + +#, python-format +msgid "Select action for timer %s:" +msgstr "" + +msgid "Select all" +msgstr "" + +msgid "Select an image to be downloaded" +msgstr "Velg et image som skal lastes ned" + +# +msgid "Select audio track" +msgstr "Velg lydspor" + +# +msgid "Select backup files" +msgstr "Velg sikkerhetskopifiler" + +msgid "Select backup location" +msgstr "Velg sikkerhetskopi" + +msgid "Select channel to record from" +msgstr "Velg kanal for opptak" + +msgid "Select copy destination for:" +msgstr "Velg kopierings mål for:" + +msgid "Select default EPG type..." +msgstr "Velg standard EPG..." + +msgid "Select desired image from feed list" +msgstr "Velg ønsket image fra menyliste" + +msgid "Select destination for:" +msgstr "Velg målet for:" + +msgid "Select files for backup." +msgstr "Velg filer for sikkerhetskopiering." + +msgid "Select files/folders to backup" +msgstr "Velg filer/mapper for sikkerhetskopiering" + +msgid "Select input device" +msgstr "Velg enhet" + +msgid "Select input device." +msgstr "Velg enhet." + +# +msgid "Select interface" +msgstr "Velg grensesnitt" + +# +msgid "Select location" +msgstr "Velg plassering" + +msgid "Select movie" +msgstr "Velg opptak" + +# +msgid "Select provider to add..." +msgstr "Velg leverandør å legge til..." + +msgid "Select refresh rate" +msgstr "Velg frekvensrate" + +msgid "Select satellites" +msgstr "" + +# +msgid "Select service to add..." +msgstr "Velg kanal som skal legges til..." + +msgid "Select sort method:" +msgstr "" + +# +msgid "Select target folder" +msgstr "Velg målmappe" + +msgid "Select the movie path" +msgstr "Velg målmappe for opptak" + +msgid "Select upgrade source" +msgstr "Velg oppdateringssted" + +msgid "Select upgrade source to edit." +msgstr "Velg og endre oppdateringssted." + +msgid "Select video input with up/down buttons" +msgstr "Velg videoinngang med opp/ned tastene" + +# +msgid "Select video mode" +msgstr "Velg video modus" + +# +msgid "Select wireless network" +msgstr "Velg trådløst nettverk" + +msgid "Select your provider, and press OK to start the scan" +msgstr "Velg leverandør og trykk OK for å starte søk" + +msgid "Selecting satellites 1 (USALS)" +msgstr "" + +msgid "Selecting satellites 2 (USALS)" +msgstr "" + +msgid "Send DiSEqC only on satellite change" +msgstr "Send DiSEqC bare ved satellittskifte" + +# +msgid "Separate titles with a main menu" +msgstr "Del opp navn i hovedmeny" + +msgid "Sequence repeat" +msgstr "Sekvens gjentakelse" + +# +msgid "Serbian" +msgstr "Serbisk" + +# +msgid "Service" +msgstr "Kanal" + +msgid "Service has been added to the favourites." +msgstr "Kanalen ble lagt til i favorittlisten." + +msgid "Service has been added to the selected bouquet." +msgstr "Kanal ble lagt til i den valgte kanallisten." + +msgid "Service info" +msgstr "Kanalinfo" + +msgid "" +"Service invalid!\n" +"(Timeout reading PMT)" +msgstr "" +"Kanalfeil!\n" +"(Tidsavbrudd ved lesing av PMT)" + +# +msgid "Service name" +msgstr "Kanalnavn" + +msgid "" +"Service not found!\n" +"(SID not found in PAT)" +msgstr "" +"Kanalen ble ikke funnet!\n" +"(SID ikke funnet i PAT)" + +msgid "Service reference" +msgstr "Kanalreferanse" + +msgid "Service scan" +msgstr "Kanalsøk" + +msgid "Service searching" +msgstr "Kanalsøk" + +# +msgid "Service title mode" +msgstr "Kanalvalg" + +msgid "" +"Service unavailable!\n" +"Check tuner configuration!" +msgstr "" +"Kanal utilgjengelig!\n" +"Kontroller tuner konfigurasjon!" + +# +msgid "Services" +msgstr "Kanaler" + +msgid "Set default" +msgstr "" + +# +msgid "Set end time" +msgstr "Sett slutt tid" + +msgid "Set fixed" +msgstr "Sett fast" + +msgid "Set fps for external subtitles" +msgstr "Still inn fps (bilde per sekund) for tekst-TV undertekst" + +msgid "Set interface as default Interface" +msgstr "Bruk dette som standard" + +msgid "Set limits" +msgstr "Sett grenser" + +msgid "Set the type of the progress indication in the channel selection screen." +msgstr "Angi framdriftstype på kanalvalgs skjermen." + +msgid "Set time window to 1 hour" +msgstr "Still tidsvinduet til 1 time" + +msgid "Set time window to 2 hours" +msgstr "Still tidsvinduet til 2 timer" + +msgid "Set time window to 3 hours" +msgstr "Still tidsvinduet til 3 timer" + +msgid "Set time window to 4 hours" +msgstr "Still tidsvinduet til 4 timer" + +msgid "Set time window to 5 hours" +msgstr "Still tidsvinduet til 5 timer" + +msgid "Set time window to 6 hours" +msgstr "Velg tidsvindu til 6 timer" + +msgid "Set voltage and 22KHz" +msgstr "Still inn spenning og 22kHz" + +msgid "Settings" +msgstr "Innstillinger" + +# +msgid "Setup" +msgstr "Innstilling" + +msgid "Setup menu" +msgstr "Menyoppsett" + +# +msgid "Setup mode" +msgstr "Menyoppsett" + +msgid "Setup your positioner" +msgstr "Posisjonsoppsett" + +msgid "Setup your satellite equipment" +msgstr "Satellittoppsett" + +#, python-format +msgid "Shall the USB stick wizard proceed and program the image file %s into flash memory?" +msgstr "Skal veiviseren for USB minnepinne fortsette å programmere image filen%s til flash-minnet?" + +# +msgid "Sharpness" +msgstr "Skarphet" + +msgid "Short filenames" +msgstr "Korte filnavn" + +msgid "Show EIT now/next in infobar" +msgstr "Vis EIT nå/neste på informasjonslinjen" + +# +msgid "Show EPG for current channel..." +msgstr "Vis EPG for nåværende kanal..." + +# +msgid "Show EPG..." +msgstr "Vis EPG..." + +msgid "Show Games show" +msgstr "Vis Games show" + +msgid "Show SNR percentage instead of dB value" +msgstr "Vis SNR i prosent i stedenfor dB i verdi" + +# +msgid "Show VCR scart on main menu" +msgstr "Vis VCR scart på hovedmenyen" + +# +msgid "Show WLAN status" +msgstr "Vis WLAN status" + +msgid "Show animation while busy" +msgstr "Vis varsel når opptatt" + +msgid "Show background in radio mode" +msgstr "Vis bakgrunn ved radiolytting" + +msgid "Show bouquet selection menu" +msgstr "Vis kanalliste menyen" + +msgid "Show busy indicator when the system is busy." +msgstr "Vis opptattvarsel når systemet er opptatt." + +msgid "Show channel numbers in channel selection" +msgstr "Vis kanalnummer i kanalvalg" + +msgid "Show columns" +msgstr "" + +msgid "Show crypto icons" +msgstr "" + +msgid "Show crypto info in infobar" +msgstr "Vis krypteringsinfo på informasjonslinjen" + +msgid "Show detailed event info" +msgstr "Vis detaljert programinformasjon" + +# +msgid "Show event details" +msgstr "Vis programdetaljer" + +msgid "Show event-progress in channel selection" +msgstr "Vis programbasert framgang i kanalvalg" + +# +msgid "Show extended description" +msgstr "Vis utvidet beskrivelse" + +# +msgid "Show extensions..." +msgstr "Vis utvidelser..." + +msgid "Show icon for new/unseen items" +msgstr "Vis varsel for nye/ukjente elementer" + +# +msgid "Show in extensions menu" +msgstr "Vis i utvidet meny" + +# +msgid "Show info" +msgstr "Vis info" + +# +msgid "Show info line" +msgstr "Vis informasjonslinje" + +# +msgid "Show infobar on channel change" +msgstr "Vis informasjonslinje ved kanalbytte" + +# +msgid "Show infobar on event change" +msgstr "Vis informasjonslinje ved programbytte" + +msgid "Show infobar on skip forward/backward" +msgstr "Vis informasjonslinje ved kanalhopp framover/bakover" + +msgid "Show latest commits on sourceforge" +msgstr "" + +msgid "Show message when recording starts" +msgstr "Vis melding når opptaket starter" + +msgid "Show movie lengths in movielist" +msgstr "Vis opptakslengde i liste " + +msgid "Show multi channel EPG" +msgstr "Vis utvidet kanal EPG" + +msgid "Show picons in channel list" +msgstr "" + +# +msgid "Show positioner movement" +msgstr "Vis motorbevegelse" + +msgid "Show screensaver" +msgstr "Vis skjermsparer" + +msgid "Show second infobar" +msgstr "Vis ekstra informasjonslinje" + +# +msgid "Show service type icons" +msgstr "Vis kanal picons" + +# +msgid "Show services beginning with" +msgstr "Vis kanaler som begynner med" + +msgid "Show shutdown menu" +msgstr "Vis av/på meny" + +msgid "Show single service EPG" +msgstr "Vis enkel kanal EPG" + +msgid "Show status icons in Movielist" +msgstr "Vis framgangs status i opptaksliste" + +msgid "Show status icons in movie list" +msgstr "Vis programbasert framgang i opptaksliste" + +msgid "Show status icons in movielist" +msgstr "Vis programbasert framgang i opptaksliste" + +# +msgid "Show tag menu" +msgstr "Vis tag meny" + +# +msgid "Show the radio player..." +msgstr "Vis radiospilleren" + +# +msgid "Show the tv player..." +msgstr "Vis TV spilleren..." + +msgid "Show warning when timeshift is stopped" +msgstr "Vis en advarsel når timeshift stoppes" + +# +msgid "Shows the state of your wireless LAN connection.\n" +msgstr "Viser status for din trådløse LAN forbindelse.\n" + +# +msgid "Shuffle playlist" +msgstr "Miks spilliste" + +msgid "Shutdown" +msgstr "Slå av" + +msgid "Shutdown when in Standby" +msgstr "Slå helt av ved standby" + +msgid "Side by side" +msgstr "Side om side" + +msgid "Signal OK, proceeding" +msgstr "Signal OK, fortsetter" + +msgid "Signal quality" +msgstr "Signalkvalitet" + +msgid "Signal strength:" +msgstr "Signalstyrke:" + +# +msgid "Signal: " +msgstr "Signal:" + +# +msgid "Similar" +msgstr "Samme" + +# +msgid "Similar broadcasts:" +msgstr "Like utsendelser" + +# +msgid "Simple" +msgstr "Enkel" + +# +msgid "Simple titleset (compatibility for legacy players)" +msgstr "Enkel navneinnstilling(kompatibilitet for eldre spillere)" + +# +msgid "Single" +msgstr "Enkel" + +# +msgid "Single EPG" +msgstr "Enkel EPG" + +msgid "Single satellite" +msgstr "En satellitt" + +# +msgid "Single step (GOP)" +msgstr "Enkeltrinn (GOP)" + +# +msgid "Single transponder" +msgstr "En transponder" + +msgid "Site latitude" +msgstr "Din breddegrad" + +msgid "Site longitude" +msgstr "Din lengdegrad" + +# +msgid "Skin" +msgstr "" + +# +msgid "Skins" +msgstr "" + +# +msgid "Skip empty services" +msgstr "Hopp over ubrukte kanaler" + +msgid "Skip internet connection check (disables automatic package installation)" +msgstr "Hopp over internett tilkobling (automatisk pakke installasjon deaktiveres)" + +msgid "Sleep timer" +msgstr "Slå av med hjelp av tidtaker" + +msgid "SleepTimer Configuration" +msgstr "Tidtaker innstilling" + +msgid "Sleeptimer" +msgstr "Tidtaker" + +msgid "Slide picture in loop" +msgstr "Vis bilde om igjen" + +# +msgid "Slide show interval (sec.)" +msgstr "Bildevisnings intervall (sek.)" + +# +#, python-format +msgid "Slot %d" +msgstr "Spor %d" + +msgid "Slovak" +msgstr "Slovakisk" + +# +msgid "Slovenian" +msgstr "Slovensk" + +# +msgid "Slow" +msgstr "Langsom" + +msgid "Slow motion speeds" +msgstr "Hastighet for saktefilm" + +# +msgid "Small progress" +msgstr "Lite framgang" + +msgid "Social/Political/Economics" +msgstr "sosial/politisk/økonomisk" + +msgid "SoftCam / CI" +msgstr "" + +msgid "Softcam type" +msgstr "" + +# +msgid "Software" +msgstr "Programvare" + +# +msgid "Software management" +msgstr "Programvareadministrasjon" + +msgid "Software manager setup" +msgstr "Programvare oppsett" + +# +msgid "Software restore" +msgstr "Gjenopprette programvare" + +msgid "Software update" +msgstr "Programvareoppdatering" + +msgid "Softwaremanager information" +msgstr "Programvareadministrasjon" + +# +msgid "Some plugins are not available:\n" +msgstr "Noen programtillegg er ikke tilgjengelig:\n" + +#, python-format +msgid "Sorry, %s has not been installed!" +msgstr "Beklager, %s har ikke blitt installert!" + +msgid "Sorry, deleting directories can (for now) only be done through the trash can." +msgstr "Beklager, kataloger kan bare slettes i papirkurven. (fra nå av)" + +msgid "Sorry, no backups found!" +msgstr "Beklager, fant ingen sikkerhetskopi!" + +msgid "Sorry, no details available!" +msgstr "Beklager, ingen detaljer er tilgjengelig!" + +# +msgid "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." +msgstr "" +"Beklager, sikkerhetskopien er ikke skrivbar.\n" +"Vennligst velg en annen." + +msgid "Sort" +msgstr "Sortere" + +# +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort A-Z" +msgstr "Sortere A-Z" + +msgid "Sort by" +msgstr "" + +msgid "Sort list:" +msgstr "" + +# +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort time" +msgstr "Sortere tid" + +# +msgid "Sound" +msgstr "Lyd" + +# +msgid "Sound carrier" +msgstr "Lydbærer" + +msgid "Source request" +msgstr "Server forespørsel" + +# +msgid "South" +msgstr "Sør" + +# +msgid "Spanish" +msgstr "Spansk" + +msgid "Specify the end time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the end time until the inactivity sleeptimer should be ignored" +msgstr "Sett sluttid når inaktiv tidtaker skal oversees" + +msgid "Specify the start time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the start time when the inactivity sleeptimer should be ignored" +msgstr "Sett starttid når inaktiv tidtaker skal oversees" + +msgid "Specify timeframe to ignore inactivity sleeptimer" +msgstr "Sett tidsrommet når inaktiv tidtaker skal oversees" + +msgid "Specify timeframe to ignore the shutdown in standby" +msgstr "" + +# +msgid "Split preview mode" +msgstr "Del forhåndsvisning" + +msgid "Splitscreen" +msgstr "" + +msgid "Sports" +msgstr "Sport" + +# +msgid "Standard" +msgstr "Standard" + +msgid "Standart list" +msgstr "" + +msgid "Standby" +msgstr "Slå av" + +msgid "Standby / restart" +msgstr "Av/på strømvalg" + +# +msgid "Standby after current event" +msgstr "Slå av etter nåværende program" + +#, python-format +msgid "Standby fan %d PWM" +msgstr "Standby vifte %d PWM (hastighetsregulering)" + +#, python-format +msgid "Standby fan %d voltage" +msgstr "Standby vifte %d spenning" + +msgid "Standby in " +msgstr "Slå av om" + +msgid "StandbyLED" +msgstr "" + +# +msgid "Start from the beginning" +msgstr "Starte fra begynnelsen" + +msgid "Start offline decode" +msgstr "Starte offline dekoding" + +msgid "Start recording?" +msgstr "Start opptak?" + +# +msgid "Start test" +msgstr "" + +# +msgid "Start time" +msgstr "Starttid" + +msgid "Start time to ignore inactivity sleeptimer" +msgstr "Starttid til ignorering av inaktiv tidtaker" + +msgid "Start time to ignore shutdown in standby" +msgstr "" + +# +msgid "Start timeshift" +msgstr "Starte tidsskift" + +msgid "Start with list screen" +msgstr "Start med listevisning" + +# +msgid "Starting on" +msgstr "Starter på" + +msgid "Startup the set top box in standby" +msgstr "" + +msgid "Startup to Standby" +msgstr "" + +# +msgid "Step east" +msgstr "Gå østover" + +# +msgid "Step west" +msgstr "Gå vestover" + +msgid "Stepped east" +msgstr "Gå trinnvis østover" + +msgid "Stepped west" +msgstr "Gå trinnvis vestover" + +# +msgid "Stop" +msgstr "Stoppe" + +# +msgid "Stop PiP" +msgstr "Stoppe PiP (bilde i bilde)" + +# +msgid "Stop current event and disable coming events" +msgstr "Stoppe nåværende og kommende program" + +# +msgid "Stop current event but not coming events" +msgstr "Stoppe nåværende program men ikke stopp kommende" + +# +msgid "Stop entry" +msgstr "Stoppe oppføring" + +msgid "Stop playing this movie?" +msgstr "Stoppe avspillingen?" + +msgid "Stop recording" +msgstr "Stoppe opptak" + +msgid "Stop recording and delete" +msgstr "Stoppe opptak og slette" + +msgid "Stop service on return to movie list" +msgstr "" + +# +msgid "Stop test" +msgstr "Stoppe test" + +msgid "Stop testing plane after # failed transponders" +msgstr "Stoppe testing etter # mislykkede transpondere" + +msgid "Stop testing plane after # successful transponders" +msgstr "Stoppe testing etter # vellykkede transpondere" + +msgid "Stop timer recording" +msgstr "Stoppe tidtaker opptak" + +# +msgid "Stop timeshift" +msgstr "Stoppe tidsskift" + +# +msgid "Stop timeshift?" +msgstr "Stoppe tidsskift?" + +msgid "Stopped" +msgstr "Stoppet" + +msgid "Store at index" +msgstr "Lagre i meny" + +# +msgid "Store position" +msgstr "Lagre posisjon" + +# +msgid "Stored position" +msgstr "Lagret posisjon" + +msgid "Stream" +msgstr "Datastrøm" + +msgid "Stream request" +msgstr "Datastrøm forespørsel" + +msgid "Strongest position" +msgstr "Sterkeste posisjon" + +# +msgid "Subservice list..." +msgstr "Underkanal liste..." + +# +msgid "Subservices" +msgstr "Underkanaler" + +msgid "Subtitle Quickmenu" +msgstr "Hurtigmeny for undertekst" + +msgid "Subtitle alignment" +msgstr "Undertekst justering" + +msgid "Subtitle border width" +msgstr "Undertekst kontrast" + +msgid "Subtitle delay when timing is bad" +msgstr "Undertekst forsinkelse når tidtakingen er dårlig" + +msgid "Subtitle delay when timing lacks" +msgstr "Undertekst forsinkelse når tidtaking mangler" + +msgid "Subtitle font size" +msgstr "Undertekst skriftstørrelse" + +msgid "Subtitle language selection 1" +msgstr "Undertekst språkvalg 1" + +msgid "Subtitle language selection 2" +msgstr "Undertekst språkvalg 2" + +msgid "Subtitle language selection 3" +msgstr "Undertekst språkvalg 3" + +msgid "Subtitle language selection 4" +msgstr "Undertekst språkvalg 4" + +msgid "Subtitle position" +msgstr "Undertekst plassering" + +msgid "Subtitle selection" +msgstr "Undertekst valg" + +msgid "Subtitle selection..." +msgstr "Undertekst valg..." + +msgid "Subtitle settings" +msgstr "Undertekst innstilling" + +msgid "Subtitles" +msgstr "Undertekster" + +# +msgid "Sun" +msgstr "Søn" + +# +msgid "Sunday" +msgstr "Søndag" + +# +msgid "Swap PiP and main picture" +msgstr "Bytt PiP (bilde i bilde) med hovedbildet" + +# +msgid "Swap services" +msgstr "Bytte kanaler" + +# +msgid "Swedish" +msgstr "Svensk" + +msgid "Switch TV to correct input" +msgstr "Bytte til riktig TV inngang" + +# +msgid "Switch between filelist/playlist" +msgstr "Skifte mellom mappeliste og avspillingsliste" + +msgid "Switch between normal mode and list mode" +msgstr "Bytte mellom normal eller listemodus" + +msgid "Switch to HDMI in mode" +msgstr "" + +# +msgid "Switch to filelist" +msgstr "Gå til mappe liste" + +msgid "Switch to next channel" +msgstr "" + +# +msgid "Switch to next channel in history" +msgstr "Gå til neste kanal i listen" + +# +msgid "Switch to next sub service" +msgstr "Gå til neste subservice" + +# +msgid "Switch to playlist" +msgstr "Gå til spilliste" + +# +msgid "Switch to previous channel" +msgstr "Gå til forrige kanal" + +# +msgid "Switch to previous channel in history" +msgstr "Gå til forrige kanal i listen" + +# +msgid "Switch to previous sub service" +msgstr "Gå til forrige subservice" + +# +msgid "Switchable tuner types:" +msgstr "Valgbare tuner typer:" + +msgid "Symbol rate" +msgstr "Symbolrate" + +msgid "Symbol rate:" +msgstr "" + +msgid "Sync failure moving back to origin !" +msgstr "Synkroniseringsfeil, går tilbake til start!" + +# +msgid "System" +msgstr "System" + +#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) +msgid "TRANSLATOR_INFO" +msgstr "Norsk bokmålsoversettelse. 24.10.2013" + +# +msgid "TS file is too large for ISO9660 level 1!" +msgstr "TS filen er for stor for ISO9660 nivå 1!" + +msgid "TSID" +msgstr "TSID" + +msgid "TV physical address report" +msgstr "TV fysiske adresse" + +msgid "TXT PID" +msgstr "" + +msgid "Table of contents for collection" +msgstr "Innholdsfortegnelse" + +# +msgid "Tags" +msgstr "Tagger" + +msgid "Teletext subtitle color" +msgstr "Tekst-TV undertekstfarge" + +# +msgid "Temperature and fan control" +msgstr "Temperatur og viftestyring" + +# +msgid "Terrestrial" +msgstr "Bakkenett" + +# +msgid "Terrestrial provider" +msgstr "Bakkenett leverandør" + +# +msgid "Test DiSEqC settings" +msgstr "Testinnstilling for DiSEqC" + +# +msgid "Test mode" +msgstr "Testmodus" + +msgid "Test the network configuration of your receiver.\n" +msgstr "Test nettverksinnstillinger til mottakeren.\n" + +# +msgid "Test type" +msgstr "Test type" + +msgid "Text color" +msgstr "Tekst farge" + +msgid "Thai" +msgstr "Thailandsk" + +msgid "" +"Thank you for using the wizard.\n" +"Please press OK to continue." +msgstr "" +"Takk for at du bruker veiviseren.\n" +"Vennligst trykk OK for å fortsette." + +msgid "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." +msgstr "" +"Takk for at du bruker veiviseren. Mottakeren er nå klar til bruk.\n" +"Trykk OK for å starte bruk av mottakeren." + +msgid "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?" +msgstr "DVD-standarden støtter ikke H.264 (HDTV) video. Vil du heller opprette et spesielt dataformat for DVD? (dette vil ikke kunne spille i frittstående DVD-spillere)" + +msgid "The PIN code has been changed successfully." +msgstr "PIN-koden har blitt endret." + +msgid "The PIN codes you entered are different." +msgstr "Du har tastet inn feil PIN kode" + +msgid "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" +msgstr "" +"USB minnepinnen ble klargjort til å være oppstartbar.\n" +"Nå kan du laste ned en NFI image fil!" + +# +msgid "The backup failed. Please choose a different backup location." +msgstr "Sikkerhetskopien feilet. Vennligst velg en annen." + +#, python-format +msgid "" +"The current beta image might not be stable.\n" +"For more information see %s." +msgstr "" +"Den nyeste beta programvaren kan være ustabilt.\n" +"For mer informasjon se %s." + +#, python-format +msgid "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." +msgstr "" +"Katalogen%s er ikke skrivbar.\n" +"Pass på at du velger en skrivbar katalog." + +# +#, python-format +msgid "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" +msgstr "" +"Følgende enhet ble funnet:\n" +"\n" +"%s\n" +"\n" +"Vil du å lagre på denne USB minnepinnen?" + +# +msgid "The following files were found..." +msgstr "Følgende filer ble funnet..." + +msgid "The md5sum validation failed, the file may be corrupted!" +msgstr "md5 valideringssum mislyktes. Filen kan være skadet!" + +msgid "" +"The network wizard extension is not installed!\n" +"Please install it." +msgstr "" +"Utvidelsen for nettverksveiviseren er ikke installert!\n" +"Vennligst installer den." + +# +#, python-format +msgid "The path %s already exists." +msgstr "Banen %s finnes allerede." + +# +msgid "The pin code you entered is wrong." +msgstr "Pin koden er feil." + +# +#, python-format +msgid "The results have been written to %s." +msgstr "Resultatene har blitt skrevet til %s." + +# +msgid "The sleep timer has been activated." +msgstr "Tidtaker har blitt aktivert:" + +# +msgid "The sleep timer has been disabled." +msgstr "Tidtaker har blitt deaktivert:" + +msgid "" +"The software management extension is not installed!\n" +"Please install it." +msgstr "" +"Programutvidelsen er ikke installert!\n" +"Vennligst installer den." + +#, python-format +msgid "The status of the current beta image could not be checked because %s can not be reached." +msgstr "Status for dagens beta programvare kan ikke kontrolleres fordi %s kan ikke nåes." + +# +msgid "The timer file (timers.xml) is corrupt and could not be loaded." +msgstr "Tidtakerfilen (timers.xml) feilet og kunne ikke lastes." + +msgid "The user interface of your receiver is restarting" +msgstr "Enigma2 starter på nytt" + +msgid "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" +msgstr "" +"Mottakerens brukergrensesnitt må startes på nytt\n" +"på grunn av en feil i mytest.py" + +# +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." +msgstr "" +"Det trådløse LAN programtillegg er ikke installert!\n" +"Vennligst installer det og velg hva som skal gjøres videre." + +# +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it." +msgstr "" +"Det trådløse LAN programtillegg er ikke installert!\n" +"Vennligst installer det." + +# +msgid "The wizard can backup your current settings. Do you want to do a backup now?" +msgstr "Veiviseren kan ta sikkerhetskopi av dine nåværende innstillinger. Vil du sikkerhetskopiere nå?" + +#, python-format +msgid "The wizard found a configuration backup. Do you want to restore your old settings from %s?" +msgstr "Veiviseren fant en sikkerhetskopi. Vil du gjenopprette de gamle innstillingene fra %s?" + +# +msgid "The wizard is finished now." +msgstr "Veiviseren er ferdig." + +# +msgid "There are at least " +msgstr "Det finnes minst" + +#, python-format +msgid "There are at least %s updates available." +msgstr "Det er minst %s oppdateringer tilgjengelig." + +# +msgid "There are currently no outstanding actions." +msgstr "Det er for tiden ingen utestående handlinger." + +msgid "There are no updates available." +msgstr "Det er ingen oppdateringer tilgjengelig." + +msgid "There is no signal to lock on !" +msgstr "Det finnes ikke noe signal og låse seg på!" + +# +msgid "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" +msgstr "" +"Det er muligens ikke nok plass på den valgte partisjonen.\n" +"Vil du fortsette likevel?" + +# +msgid "This DVD RW medium is already formatted - reformatting will erase all content on the disc." +msgstr "Denne DVD RW er allerede formatert - reformatering sletter alt innhold på platen." + +msgid "" +"This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!" +msgstr "" +"Dette programtillegget bruker en USB minnepinne til å oppdatere programvaren på mottakeren uten behov for nettverk eller WLAN tilkobling.\n" +"Først må en USB minnepinne være forberedt slik at den blir oppstartbar.\n" +"I neste trinn, kan en NFI bildefil lastes ned fra serveren og lagres på USB-pinnen.\n" +"Hvis du allerede har forberedt en oppstartbar USB minnepinne kan du sette den inn nå. USB minnepinnen må være på minimum 64MB!" + +# +msgid "This plugin is installed." +msgstr "Dette programtillegget er installert." + +# +msgid "This plugin is not installed." +msgstr "Dette programtillegget er ikke installert." + +# +msgid "This plugin will be installed." +msgstr "Dette programtillegget vil bli installert." + +# +msgid "This plugin will be removed." +msgstr "Dette programtillegget vil bli fjernet." + +#, python-format +msgid "This receiver cannot decode %s streams!" +msgstr "Denne mottakeren kan ikke dekode %s datastrømmer!" + +# +msgid "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration" +msgstr "" +"Denne testen søker opp navnetjenere.\n" +"Hvis du får en \"ubekreftet\"-melding:\n" +"- vennligst kontroller DHCP, kabling og nettverksoppsett\n" +"- hvis navnetjenere er satt opp manuelt må du bekrefte oppføringene i \"Navnetjener\" innstilling" + +# +msgid "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" +msgstr "" +"Denne testen sjekker om nettverkskabelen er koblet til nettverkskortet.\n" +"Hvis du får en \"frakoblet\" melding:\n" +"- bekreft at nettverkskabelen er tilkoblet\n" +"- kontroller at kabelen ikke er skadet" + +# +msgid "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" +msgstr "" +"Denne testen sjekker om nettverkskortet har en gyldig IP-adresse.\n" +"Hvis du får en \"ubekreftet\" melding:\n" +"- ingen gyldig IP adresse ble funnet\n" +"- vennligst sjekk din DHCP, kabling og nettverksinnstilling" + +msgid "" +"This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." +msgstr "" +"Denne testen sjekker om nettverkskortet er satt opp med automatisk DHCP IP-adresse.\n" +"Hvis du får en \"deaktivert\" melding:\n" +" - eller om nettverkskortet er satt opp med manuelt IP oppsett\n" +"- sjekk at du har tastet inn riktig IP informasjon i nettverksinnstillingen\n" +"Hvis du får en \"aktiver\" melding:\n" +"-kontroller at du har en fungerende DHCP server/ruter i nettverket ditt." + +# +msgid "This test detects your configured LAN adapter." +msgstr "Denne testen søker opp nettverkskortet." + +msgid "" +"This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\n" +"Are you sure?" +msgstr "" +"Dette vil beregne alle posisjoner (på nytt) for motor og kan fjerne tidligere lagrede posisjoner og finjusteringer!\n" +"Er du sikker?" + +# +msgid "Three" +msgstr "Tre" + +# +msgid "Threshold" +msgstr "Grense" + +# +msgid "Thu" +msgstr "Tors" + +# +msgid "Thumbnails" +msgstr "Miniatyrbilder" + +# +msgid "Thursday" +msgstr "Torsdag" + +# +msgid "Time" +msgstr "Tid" + +# +msgid "Time scale" +msgstr "Tids måler" + +# +msgid "Timer" +msgstr "Tidtaker" + +msgid "Timer Overview" +msgstr "" + +# +msgid "Timer edit" +msgstr "Tidtaker innstilling" + +# +msgid "Timer editor" +msgstr "Tidtaker innstiller" + +# +msgid "Timer entry" +msgstr "Tidtaker innstilling" + +# +msgid "Timer log" +msgstr "Tidtaker logg" + +# +msgid "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" +msgstr "" +"Tidtaker overlapping i timers.xml oppdaget!\n" +"Vennligst kontroller det på nytt!" + +# +msgid "Timer overview" +msgstr "Tidtaker oversikt" + +msgid "Timer recording location" +msgstr "Tidtaker opptak" + +# +msgid "Timer sanity error" +msgstr "Tidtaker feil" + +# +msgid "Timer selection" +msgstr "Tidtaker valg" + +# +msgid "Timer selection..." +msgstr "Tidtaker valg..." + +# +msgid "Timer type" +msgstr "Tidtaker type" + +# +msgid "Timeshift" +msgstr "" + +msgid "Timeshift Live" +msgstr "" + +# +msgid "Timeshift location" +msgstr "Timeshift plassering" + +# +msgid "Timeshift not possible!" +msgstr "Timeshift er ikke mulig!" + +# +msgid "Timezone" +msgstr "Tidssone" + +# +msgid "Title" +msgstr "Navn" + +# +msgid "Title properties" +msgstr "Egenskaper" + +# +msgid "Titleset mode" +msgstr "Navnevalg" + +msgid "To audio selection" +msgstr "Til lyd utvalg" + +msgid "To subtitle selection" +msgstr "Til valg av undertekster" + +msgid "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." +msgstr "" +"For å oppdatere mottakerens programvare, følger du disse trinnene:\n" +"1) Slå av boksen med bakre strømbryter. Sørg for at oppstartbar USB minnepinne er satt inn.\n" +"2) Slå strøm på igjen og hold NED-knappen på frontpanelet inne i 10 sekunder.\n" +"3) Vent til oppstart og følg instruksjonen i veiviseren." + +# +msgid "Today" +msgstr "Idag" + +# +msgid "Toggle a cut mark at the current position" +msgstr "Bytte mellom klipp på den aktuelle posisjonen" + +# +msgid "Tone amplitude" +msgstr "Tone amplityde" + +msgid "Tone mode" +msgstr "Tone modus" + +msgid "Toneburst" +msgstr "Tonekontroll" + +msgid "Toneburst A/B" +msgstr "Tonekontroll A/B" + +msgid "Top and bottom" +msgstr "Topp og bunn" + +# +msgid "Track" +msgstr "Spor" + +# +msgid "Translation" +msgstr "Oversetting" + +# +msgid "Translation:" +msgstr "Oversetting:" + +# +msgid "Translations" +msgstr "Oversettinger" + +# +msgid "Transmission mode" +msgstr "Sendingstype" + +# +msgid "Transponder" +msgstr "" + +# +msgid "Transponder type" +msgstr "" + +msgid "Trash can" +msgstr "Papirkurv" + +# +msgid "Tries left:" +msgstr "Forsøk igjen:" + +# +msgid "Try to find used transponders in cable network.. please wait..." +msgstr "Leter etter transpondere i kabel-TV nettverket.. vennligst vent..." + +# +msgid "Trying to download a new packetlist. Please wait..." +msgstr "Leter etter ny pakkeliste. Vennligst vent..." + +# +msgid "Tue" +msgstr "Tir" + +# +msgid "Tuesday" +msgstr "Tirsdag" + +# +msgid "Tune" +msgstr "Søk" + +# +msgid "Tune and focus" +msgstr "Søke inn og skarpstille" + +# +msgid "Tune failed!" +msgstr "Søking feilet!" + +# +msgid "Tuner" +msgstr "Tuner" + +msgid "Tuner configuration" +msgstr "Tuneroppsett" + +msgid "Tuner is not supported" +msgstr "" + +# +msgid "Tuner slot" +msgstr "Tuner spalte" + +# +msgid "Tuner status" +msgstr "Tuner status" + +# +#, python-format +msgid "Tuner status %s" +msgstr "Tuner status %s" + +# +msgid "Tuner type" +msgstr "Tuner type" + +# +msgid "Turkish" +msgstr "Tyrkisk" + +msgid "Turn on the power LED during standby." +msgstr "" + +msgid "Turning step size" +msgstr "" + +# +msgid "Two" +msgstr "To" + +# +msgid "Type" +msgstr "Type" + +msgid "Type of scan" +msgstr "Søketype" + +# +msgid "USALS" +msgstr "" + +msgid "USALS calibration" +msgstr "USALS kalibrering" + +# +msgid "USB stick" +msgstr "USB minnepinne" + +# +msgid "USB stick wizard" +msgstr "Veiviser for USB minnepinne " + +msgid "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Oppdatering pågår\n" +"Vennligst vent til mottakeren starter på nytt\n" +"Dette kan ta flere minutter" + +# +msgid "Undo install" +msgstr "Angre installering" + +# +msgid "Undo uninstall" +msgstr "Angre avinstallering" + +msgid "Unencrypted" +msgstr "Ukryptert" + +# +msgid "UnhandledKey" +msgstr "Ubrukt tast" + +# +msgid "Unicable" +msgstr "Unikabel" + +# +msgid "Unicable LNB" +msgstr "Unikabel LNB" + +# +msgid "Unicable Martix" +msgstr "Unikabel Martix" + +# +msgid "Uninstall" +msgstr "Avinstallere" + +# +msgid "Universal LNB" +msgstr "" + +msgid "Unknown" +msgstr "Ukjent" + +msgid "Unmount" +msgstr "Demonter" + +# +msgid "Unsupported" +msgstr "Ikke støttet" + +msgid "Update" +msgstr "Oppdater" + +msgid "Update and ask to reboot" +msgstr "Oppdater og start på nytt manuelt" + +msgid "Update and reboot (recommended)" +msgstr "Oppdater og start på nytt automatisk (anbefalt)" + +# +msgid "Update channel list only" +msgstr "Oppdater kun kanallisten" + +#, python-format +msgid "Update completed, %d package was installed." +msgid_plural "Update completed, %d packages were installed." +msgstr[0] "Oppdateringen er ferdig, %d pakke ble installert." +msgstr[1] "Oppdateringen er ferdig, %d pakker ble installert." + +msgid "Update completed. Do you want to reboot your receiver?" +msgstr "Oppdateringen er ferdig. Mottakeren må startes på nytt for at endringene skal tre i kraft." + +msgid "Update failed. Your receiver does not have a working internet connection." +msgstr "Oppdateringen mislyktes. Mottakeren mangler internettforbindelse." + +msgid "Update has completed." +msgstr "Oppdateringen er ferdig." + +msgid "Updatefeed not available." +msgstr "Oppdateringsstedet er ikke tilgjengelig." + +# +msgid "Updating software catalog" +msgstr "Oppdaterer programvare katalog" + +# +msgid "Upgrading" +msgstr "Oppdaterer" + +# +msgid "Use" +msgstr "Bruk" + +# +msgid "Use DHCP" +msgstr "Motta IP-adresse (DHCP)" + +msgid "Use EIT EPG information when it is available." +msgstr "Bruk EIT (Event Information Table) EPG informasjon når den er tilgjengelig." + +msgid "Use FreeSat EPG information when it is available." +msgstr "Bruk FreeSat EPG informasjon når den er tilgjengelig." + +msgid "Use MHW EPG information when it is available." +msgstr "Bruk MHW (Media High Way) EPG informasjon når den er tilgjengelig." + +msgid "Use Netmed EPG information when it is available." +msgstr "Bruk Netmed EPG informasjon når den er tilgjengelig." + +msgid "Use TV remote control" +msgstr "Bruk fjernkontroll tilhørende TV" + +msgid "Use USALS for this sat" +msgstr "Bruk USALS for satellittposisjonering" + +msgid "Use ViaSat EPG information when it is available." +msgstr "Bruk ViaSat EPG informasjon når den er tilgjengelig." + +msgid "Use Virgin EPG information when it is available." +msgstr "" + +msgid "Use a gateway" +msgstr "Bruk gateway" + +msgid "Use fastscan channel names" +msgstr "Bruk kanaler beregnet for 'fastscan'" + +msgid "Use fastscan channel numbering" +msgstr "Bruk kanalnummerering beregnet for 'fastscan'" + +msgid "Use frequency or channel" +msgstr "" + +msgid "Use individual settings for each directory" +msgstr "Bruke egne innstillinger for hver katalog" + +# +msgid "Use interface" +msgstr "Bruk nettverkskort" + +msgid "Use official channel numbering" +msgstr "Bruk standard kanalnummerering" + +msgid "Use original DVB subtitle position" +msgstr "Bruk standard DVB undertekst posisjon" + +msgid "Use original teletext position" +msgstr "Bruk standard tekst-TV posisjon" + +msgid "Use power measurement" +msgstr "Bruk strøm-måling" + +# +msgid "Use the network wizard to configure selected network adapter" +msgstr "Bruk nettverksveiviseren for oppsett av nettverkskortet" + +# +msgid "Use the network wizard to configure your network\n" +msgstr "Bruk nettverksveiviseren for oppsett av nettverket\n" + +msgid "Use the up/down keys on your remote control to select an option. After that, press OK." +msgstr "Bruk pil opp/ned på fjernkontrollen for å velge. Trykk deretter OK." + +# +msgid "Use the wizard to set up basic features" +msgstr "Bruk veiviseren for å sette opp grunnleggende funksjoner" + +# +msgid "Use these input device settings?" +msgstr "Bruke disse innstillinger for inndataenheter?" + +# +msgid "Use these settings?" +msgstr "Bruke disse innstillinger?" + +# +msgid "Use this video enhancement settings?" +msgstr "Bruke disse video innstillinger?" + +msgid "Use trash can in movielist" +msgstr "Bruk papirkurven i opptaksliste" + +msgid "Used service scan type" +msgstr "Kanalsøksvalg" + +msgid "User - bouquets" +msgstr "Kanallister" + +# +msgid "User defined" +msgstr "Brukerdefinert" + +# +msgid "User defined transponder" +msgstr "Brukerdefinert transponder" + +# +msgid "User interface" +msgstr "Innstilling" + +# +msgid "Username" +msgstr "Brukernavn" + +#, python-format +msgid "Using LNB %d" +msgstr "Bruker LNB %d" + +msgid "Using fixed address" +msgstr "Bruker fast adresse" + +#, python-format +msgid "Using tuner %s" +msgstr "Bruker tuner %s" + +msgid "Usually when the subtitle language is the same as the audio language, the subtitles will not be used. Enable this option to allow these subtitles to be used." +msgstr "Når undertekstspråket er det samme som lydspråket vil tekstingen normalt ikke brukes. Aktiver dette for å tillate bruk av undertekstene." + +msgid "VCR scart" +msgstr "" + +msgid "VMGM (intro trailer)" +msgstr "VMGM (intro trailer)" + +# +msgid "Vertical" +msgstr "Vertikal" + +msgid "Vertical turning speed" +msgstr "Vertikal dreiehastighet" + +msgid "Video PID" +msgstr "Bilde PID" + +# +msgid "Video enhancement preview" +msgstr "Video forhåndsvisning" + +# +msgid "Video enhancement settings" +msgstr "Video innstillinger" + +# +msgid "Video enhancement setup" +msgstr "Video oppsett" + +# +msgid "Video fine tuning" +msgstr "Finjustering av bilde" + +msgid "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." +msgstr "" +"Video inngangsvalg\n" +"\n" +"Vennligst trykk OK hvis TV kan vise denne siden (eller velg en annen inngang).\n" +"\n" +"Den neste inngangen vil automatisk bli analysert i 20 sekunder." + +msgid "Video mode selection." +msgstr "Videoinnstilling" + +# +msgid "Video output" +msgstr "Videoutgang" + +# +msgid "Video setup" +msgstr "Videooppsett" + +# +msgid "Video wizard" +msgstr "Video veiviser" + +# +#, python-format +msgid "Video: %s fps" +msgstr "Bilde: %s fps" + +msgid "VideoMode" +msgstr "Bildevisning" + +msgid "Videocodec" +msgstr "Videokoding" + +msgid "Videoformat" +msgstr "Videoformat" + +msgid "Videosize" +msgstr "Videostørrelse" + +# +msgid "View Rass interactive..." +msgstr "Vis Rass interaktiv..." + +msgid "View details" +msgstr "Se detaljer" + +msgid "View list of available " +msgstr "Vis tilgjengelighet" + +msgid "View list of available CommonInterface extensions" +msgstr "Vis en liste over alle Common Interface-valg" + +msgid "View list of available EPG extensions." +msgstr "Vis en liste over alle EPG valg." + +msgid "View list of available Satellite equipment extensions." +msgstr "Vis en liste over alle satellittinnstillinger." + +msgid "View list of available communication extensions." +msgstr "Vis en liste over alle kommunikasjonsvalg." + +msgid "View list of available default settings" +msgstr "Vis en liste over alle standardinnstillinger" + +msgid "View list of available display and userinterface extensions." +msgstr "Vis en liste over alle brukergrensesnitt og skjermvalg" + +msgid "View list of available multimedia extensions." +msgstr "Vis en liste over alle multimediavalg." + +msgid "View list of available networking extensions" +msgstr "Vis en liste over alle nettverksvalg" + +msgid "View list of available recording extensions" +msgstr "Vis en liste over alle opptaksvalg" + +msgid "View list of available skins" +msgstr "Vis en liste over alle skin" + +msgid "View list of available software extensions" +msgstr "Vis en liste over alle programvaretillegg" + +msgid "View list of available system extensions" +msgstr "Vis en liste over alle systemvalg" + +# +msgid "View photos..." +msgstr "Vis fotografier..." + +# +msgid "View teletext..." +msgstr "Se tekst-TV..." + +msgid "View video CD..." +msgstr "Se video CD..." + +msgid "Virtual keyboard" +msgstr "Virtuelt tastatur" + +# +msgid "Voltage mode" +msgstr "Volt modus" + +# +msgid "Volume" +msgstr "Volum" + +# +msgid "W" +msgstr "" + +# +msgid "WEP" +msgstr "WEP" + +msgid "WLAN connection" +msgstr "WLAN oppkobling" + +# +msgid "WPA" +msgstr "" + +# +msgid "WPA or WPA2" +msgstr "WPA eller WPA2" + +# +msgid "WPA2" +msgstr "" + +# +msgid "WSS on 4:3" +msgstr "WSS på 4:3" + +# +msgid "Waiting" +msgstr "Venter" + +msgid "Waiting for mount" +msgstr "Venter på mount" + +msgid "Waiting for partition" +msgstr "Venter på partisjon" + +msgid "Wakeup" +msgstr "Våkne" + +msgid "Wakeup TV from standby" +msgstr "Våkne TV fra avslått stilling" + +msgid "Wakeup receiver for start timer" +msgstr "" + +msgid "Wakeup receiver from standby" +msgstr "Våkne mottakeren fra avslått stilling" + +msgid "Wakeup signal from TV" +msgstr "Våkne signal fra TV" + +msgid "Wakeup type" +msgstr "" + +msgid "Warning: no LNB; using factory defaults." +msgstr "Advarsel: ingen LNB; bruker standardinnstillinger." + +msgid "Watch movies..." +msgstr "Se filmer..." + +msgid "Watch recordings..." +msgstr "Se på opptak..." + +# +msgid "Wed" +msgstr "Ons" + +# +msgid "Wednesday" +msgstr "Onsdag" + +# +msgid "Weekday" +msgstr "Ukedag" + +msgid "Weighted position" +msgstr "Hovedposisjon" + +msgid "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." +msgstr "" +"Velkommen til klipp og redigering.\n" +"\n" +"Gå til starten av det du ønsker å klippe bort. Trykk OK, velg 'start klipp'.\n" +"\n" +"Deretter gå til slutten, trykk OK, velg 'klipp slutt'. Det var det hele." + +msgid "Welcome to the image upgrade wizard. The wizard will assist you in upgrading the firmware of your receiver by providing a backup facility for your current settings and a short explanation of how to upgrade your firmware." +msgstr "Velkommen til veiviseren. Denne vil hjelpe deg med å oppdatere programvare og sikkerhetskopiere dine innstillinger-" + +msgid "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" +msgstr "" +"Velkommen.\n" +"\n" +"Hvis du vil koble mottakeren til internett, vil veiviseren hjelpe deg med å sette opp de vanligste innstillingene av mottakerens nettverk.\n" +"\n" +"Trykk OK for å komme igang." + +msgid "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." +msgstr "" +"Velkommen.\n" +"\n" +"Denne veiviseren vil hjelpe deg gjennom det grunnleggende oppsettet av mottakeren.\n" +"Trykk OK for å komme igang." + +msgid "Welcome..." +msgstr "Velkommen..." + +# +msgid "West" +msgstr "Vest" + +msgid "West limit set" +msgstr "Sett vest grense" + +msgid "What do you want to scan?" +msgstr "Hva vil du søke etter?" + +msgid "When enabled the PiP can be closed by the exit button." +msgstr "Når dette er valgt, kan PiP (bilde i bilde) bli avsluttet med exit knappen." + +msgid "When enabled the arrow buttons around the OK button will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled the left, right, CH+/-, B+/-, P+/- buttons will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled you can specify a timeframe to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "When enabled you can specify a timeframe were the inactivity sleeptimer is ignored. Not the detection is disabled during this timeframe but the inactivity timeout is disabled" +msgstr "Når dette er valgt, kan du stille inn et tidsrom den inaktive tidtakeren ignoreres. Det er ikke deteksjonen som frakobles men den inaktive sluttid som frakobles i tidsrommet" + +msgid "When enabled you can zap channels with the CH+/-, B+/-, P+/- buttons instead of opening the channel selection list." +msgstr "" + +msgid "When enabled you get the channel selection list via the OK button, the infobar toggle is then transfered to exit button" +msgstr "" + +msgid "When enabled, AIT data will be included in http streams. This allows a client receiver to use HbbTV." +msgstr "Når dette er valgt, vil AIT data (Application Information Table) inngå i http dataprotokoll. Dette tillater en klient mottaker å bruke HbbTV. (Hybrid broadcast broadband TV)" + +msgid "When enabled, ECM data will be included in http streams. This allows a client receiver to do the descrambling." +msgstr "Når dette er valgt, vil ECM data inngå i http datastrømmen . Dette tillater en klient mottaker å gjøre dekoding." + +msgid "When enabled, EIT data will be included in http streams. This allows a client receiver to show EPG." +msgstr "Når dette er valgt, vil EIT data (Event Information Table) inngå i http datastrømmen. Dette tillater en klient mottaker å vise EPG." + +msgid "When enabled, a popup message will be shown when a movie has finished and the next one will start." +msgstr "Når dette er valgt, vil et skjermvarsel vises når en avspilling er ferdig og den neste starter." + +msgid "When enabled, a popup message will be shown when a recording starts." +msgstr "Når dette er valgt, vil et skjermvarsel vises når opptak starter." + +msgid "When enabled, a radio background image will be visible while listening to a radio channel." +msgstr "Når dette er valgt, vil et bakgrunnsbilde vises på skjermen ved radiolytting." + +msgid "When enabled, a recording is allowed to interrupt live tv, when there are no free tuners." +msgstr "Når dette er valgt, vil et opptak kunne avbryte direktesendt TV når det ikke finnes ledige tunere." + +msgid "When enabled, a warning will be displayed and the user will get an option to stop or to continue the timeshift." +msgstr "Når dette er valgt, vil et skjermvarsel vises med valget stoppe eller fortsette timeshift." + +msgid "When enabled, authentication is required to watch http streams." +msgstr "" + +msgid "When enabled, channel numbering will start at '1' for each bouquet." +msgstr "Når dette er valgt, vil kanal nummereringen starte på '1' for hver kanalliste." + +msgid "When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen." +msgstr "Når dette er valgt, vil et 4:3 bilde strekkes ut for å tilpasse seg skjermen." + +msgid "When enabled, continue to the next bouquet when the last channel of the current bouquet is reached while changing channels." +msgstr "Når dette er valgt, fortsettes automatisk til neste kanalliste når den siste kanalen i nåværende liste er nådd." + +msgid "When enabled, deleted recordings are moved to the trash can, instead of being deleted immediately." +msgstr "Når dette er valgt, flyttes slettede opptak til papirkurven i stedet for å bli slettet umiddelbart." + +msgid "When enabled, display the EIT now/next eventdata in infobar. When disabled, display now/next eventdata from the EPG cache instead." +msgstr "Når dette er valgt, vises EIT nå/neste programdata på informasjonslinjen. Hvis deaktivert, vises nå/neste programdata fra EPG minne." + +msgid "When enabled, encryption info will be shown in the infobar (when supported by the skin)." +msgstr "Når dette er valgt, vises krypteringsinfo på informasjonslinjen (når det støttes av skin)." + +msgid "When enabled, error messages related to the Common Interface module will not be shown." +msgstr "Når dette er valgt, skjules feilmeldinger knyttet til Common Interface modulen." + +msgid "When enabled, error messages related to zapping will not be shown." +msgstr "Når dette er valgt, skjules feilmeldinger knyttet til kanalbytte." + +msgid "When enabled, external subtitles will be always turned on for playback movie." +msgstr "Når dette er valgt, vises tekst-TV undertekst på opptak." + +msgid "When enabled, graphical DVB subtitles are preferred over teletext subtitles, when both types are available." +msgstr "Når dette er valgt, foretrekkes DVB undertekst framfor tekst-TV undertekst når begge typer er tilgjengelig." + +msgid "When enabled, graphical DVB subtitles will be centered horizontally." +msgstr "Når dette er valgt, vil DVB underteksten være sentrert horisontalt." + +msgid "When enabled, graphical DVB subtitles will be displayed at their original position." +msgstr "Når dette er valgt, vises DVB underteksten på sin opprinnelige posisjon." + +msgid "When enabled, graphical DVB subtitles will be displayed in yellow, instead of the original color." +msgstr "Når dette er valgt, vises DVB underteksten i gult i stedet for den opprinnelige fargen." + +msgid "When enabled, http streams are descrambled on the server side. The (remote) client receiver does not have to do descrambling." +msgstr "Når dette er valgt, vil http dataprotokoll bli dekodet på serversiden. (Ekstern) Klient mottaker trenger ikke å gjøre dekoding." + +msgid "When enabled, it is possible to leave the movieplayer with exit." +msgstr "Når dette er valgt, kan mediespilleren avsluttes med exit knappen." + +msgid "When enabled, measure power consumption to detect when the rotor stops turning (when supported by the tuner)." +msgstr "Når dette er valgt, vil motorens strømforbruk bli målt for å oppdage når motorbevegelsen stopper (hvis det støttes av tuner)." + +msgid "When enabled, number markers will be hiden." +msgstr "Når dette er valgt, skjules nummermarkører." + +msgid "When enabled, services may be grouped in multiple bouquets." +msgstr "Når dette er valgt, vil kanalene kunne grupperes i flere kanallister." + +msgid "When enabled, show channel numbers in the channel selection screen." +msgstr "Når dette er valgt, vises kanalnummer på kanalvalgs skjermen" + +msgid "When enabled, subtitles for the hearing impaired can be used." +msgstr "Når dette er valgt, kan undertekst for hørselshemmede brukes." + +msgid "When enabled, subtitles for the hearing impaired will be preferred over normal subtitles, when both types are available." +msgstr "Når dette er valgt, foretrekkes undertekst for hørselshemmede framfor vanlig undertekst, når begge typer er tilgjengelig." + +msgid "When enabled, teletext pages will be cached, allowing faster access." +msgstr "Når dette er valgt, lagres tekst-TV sider for raskere tilgang." + +msgid "When enabled, teletext subtitles will be displayed at their original position." +msgstr "Når dette er valgt, vises tekst-TV undertekst på sin opprinnelige posisjon." + +msgid "When enabled, the VCR scart option will be shown on the main menu" +msgstr "Når dette er valgt, vises VCR scart innstillingen på hovedmenyen." + +msgid "When enabled, the channel selection list will be hidden while listening to a radio channel" +msgstr "Når dette er valgt, vil kanalinfo være skjult ved radiolytting" + +msgid "When enabled, the infobar will be displayed when a new event starts." +msgstr "Når dette er valgt, vises informasjonslinjen når neste program starter." + +msgid "When enabled, the infobar will be displayed when changing channels." +msgstr "Når dette er valgt, vises informasjonslinjen ved kanalbytte." + +msgid "When enabled, the infobar will be displayed when skipping forwards/backwards during media playback." +msgstr "Når dette er valgt, vises informasjonslinjen ved hopping framover/bakover under medie avspilling." + +msgid "When enabled, the lenght of each recording will be shown in the movielist (this might cause some additional loading time)." +msgstr "Når dette er valgt, vises lengden på hvert opptak i opptakslisten (dette kan medføre noe ekstra laste tid)." + +msgid "When enabled, the original line breaks will be removed from the teletext subtitles." +msgstr "Når dette er valgt, vil opprinnelig linjeskift automatisk bli fjernet fra tekst-TV undertekst." + +msgid "When enabled, the receiver will automatically use the audio track which you selected before." +msgstr "Når dette er valgt, vil mottakeren automatisk bruke lyd som tidligere ble aktivert." + +msgid "When enabled, the receiver will automatically use the subtitles which you selected before." +msgstr "Når dette er valgt, vil mottakeren automatisk bruke undertekst som tidligere ble aktivert." + +msgid "When enabled, the receiver will no longer monitor the tuned transponder for possible changes. Do not use this option unless you know what you are doing." +msgstr "Når dette er valgt, vil transponder endringer ikke bli overvåket av tuner. Ikke bruk dette alternativet hvis du er i tvil." + +msgid "When enabled, the receiver will select an AC3 track (when available)." +msgstr "Når dette er valgt, vil mottakeren bruke AC3 lyd (når tilgjengelig)." + +msgid "When enabled, the receiver will select an AC3+ track (when available)." +msgstr "" + +msgid "When enabled, timeshift starts automatically in background after specified time." +msgstr "Når dette er valgt, vil timeshift starte automatisk i bakgrunnen etter en forhåndsdefinert tid." + +msgid "When enabled, use DHCP for the IP configuration." +msgstr "Når dette er valgt, vil DHCP brukes til IP-konfigurasjon." + +msgid "When enabled, your receiver will detect activity on the VCR SCART input." +msgstr "Når dette er valgt, vil mottakeren oppdage aktivitet på VCR SCART inngangen." + +msgid "When nonzero, a recording will start earlier than the starting time indicated by the EPG." +msgstr "Når annet enn null er valgt vil et opptak starte tidligere enn starttidspunktet angitt av EPG." + +msgid "When nonzero, a recording will stop later than the ending time indicated by the EPG." +msgstr "Når annet enn null er valgt vil et opptak stoppe senere enn sluttidspunktet angitt av EPG." + +msgid "When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture." +msgstr "Når innholdet har et sideforhold på 16:9, velg om bildet skal skaleres/strekkes ut." + +msgid "When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture." +msgstr "Når innholdet har et sideforhold på 4:3, velg om bildet skal skaleres/strekkes ut." + +msgid "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" +msgstr "" +"Hvis du velger å gjenopprette mottakeren vil ALLE innstilte data gå tapt\n" +"(inkludert kanallister, tjenester, satellittdata ...)\n" +"Når gjenopprettingen er ferdig vil mottakeren automatisk starte på nytt!\n" +"\n" +"Er du helt sikker på å gjenopprette?" + +# +msgid "Where do you want to backup your settings?" +msgstr "Hvor skal sikkerhetskopien lagres?" + +msgid "Where to save temporary timeshift recordings?" +msgstr "Hvor skal midlertidige tidtakeropptak lagres?" + +# +msgid "Wireless LAN" +msgstr "Trådløst LAN" + +# +msgid "Wireless network" +msgstr "Trådløst nettverk" + +# +msgid "Wireless network configuration..." +msgstr "Trådløst nettverksoppsett..." + +msgid "Wireless network connection setup" +msgstr "Trådløst nettverksoppsett" + +msgid "Wireless network connection setup." +msgstr "Trådløst nettverksoppsett." + +msgid "Wireless network state" +msgstr "Trådløs nettverkstilstand" + +msgid "With popup" +msgstr "Med varsel" + +msgid "Without popup" +msgstr "Uten varsel" + +msgid "Would you like to install a softcam?" +msgstr "Vil du installere en softcam?" + +msgid "Write error while recording. Disk full?\n" +msgstr "Skrivefeil under opptak. Er disken full?\n" + +# +msgid "Write failed!" +msgstr "Skriving feilet!" + +# +msgid "YPbPr" +msgstr "" + +# +msgid "Year" +msgstr "År" + +msgid "Yellow DVB subtitles" +msgstr "Gul DVB undertekst" + +# +msgid "Yes" +msgstr "Ja" + +msgid "Yes and save" +msgstr "Ja og lagre" + +msgid "Yes and save in movie dir" +msgstr "Ja, og lagre i innspillingskatalog" + +# +msgid "Yes to all" +msgstr "Ja til alt" + +msgid "Yes, always" +msgstr "Ja, alltid" + +msgid "Yes, and delete this movie" +msgstr "Ja, og slett denne filmen" + +# +msgid "Yes, backup my settings!" +msgstr "Ja, ta sikkerhetskopi av innstillingene!" + +msgid "Yes, delete this movie and return to movie list" +msgstr "" + +msgid "Yes, do a manual scan now" +msgstr "Ja, gjør et manuelt søk nå" + +msgid "Yes, do an automatic scan now" +msgstr "Ja, gjør et automatisk søk nå" + +msgid "Yes, do another manual scan now" +msgstr "Ja, gjør et nytt manuelt søk nå" + +msgid "Yes, perform a shutdown now." +msgstr "Ja, slå av nå." + +# +msgid "Yes, restore the settings now" +msgstr "Ja, legg tilbake innstillingene nå" + +msgid "Yes, returning to movie list" +msgstr "Ja, returnerer til opptaksliste" + +msgid "Yesterday" +msgstr "I går" + +#, python-format +msgid "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" +msgstr "" +"Du har allerede installert en kanalliste,\n" +"vil du fjerne\n" +"\"%s\"?" + +# +msgid "You can cancel the installation." +msgstr "Du kan avbryte installasjonen." + +# +msgid "You can cancel the removal." +msgstr "Du kan avbryte slettingen." + +msgid "You can continue watching TV etc. while this is running." +msgstr "Du kan fortsette å se på TV mens dette pågår." + +# +msgid "You can install this plugin." +msgstr "Du kan installere dette programtillegg." + +msgid "You can only burn receiver recordings!" +msgstr "Du kan bare brenne opptak som er gjort av mottakeren!" + +# +msgid "You can remove this plugin." +msgstr "Du kan fjerne dette programtillegg." + +# +msgid "You cannot delete this!" +msgstr "Du kan ikke slette dette!" + +msgid "You didn't select a channel to record from." +msgstr "Du har ikke valgt kanal for opptak." + +msgid "You have chosen to backup your settings. Please press OK to start the backup now." +msgstr "Du har valgt å sikkerhetskopiere innstillingene. Vennligst trykk OK for å starte sikkerhetskopieringen." + +# +msgid "You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased." +msgstr "Du har valgt å opprette en ny NFI oppstartbar USB minnepinne. USB minnepinnen vil bli partisjonert på nytt og alle data vil bli slettet." + +msgid "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." +msgstr "Du har valgt å gjenopprette innstillingene dine. Enigma2 vil starte på nytt etter gjenoppretting. Vennligst trykk OK for å starte gjenopprettingen nå." + +# +#, python-format +msgid "You have to wait %s!" +msgstr "Du må vente %s!" + +msgid "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." +msgstr "" +"En PC må kobles til mottakeren. For ytterligere instruksjoner, besøk nettstedet http://www.dm7025.de.\n" +"Mottakeren vil bli stanset. Etter å ha utført oppdateringsinstrukser fra nettsiden, vil den nye proramvaren be deg om å gjenopprette innstillingene." + +msgid "You system does not support ext4" +msgstr "Systemet ditt støtter ikke ext4" + +msgid "Your backup succeeded. We will now continue to explain the further upgrade process." +msgstr "Din sikkerhetskopi er OK. Vi vil nå hjelpe deg videre i oppdateringsprosessen." + +msgid "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" +msgstr "Samlingen din overstiger plassen du har tilgjengelig på enkeltlagsplaten, du trenger en tolags DVD!" + +# +msgid "Your current collection will get lost!" +msgstr "Din nåværende samling vil gå tapt!" + +msgid "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." +msgstr "" +"Frontprosessorens programvare må oppdateres.\n" +"Trykk OK for å starte oppdatering." + +msgid "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Frontprosessoren vil bli oppdatert\n" +"Vennligst vent til mottakeren starter på nytt\n" +"Dette kan ta flere minutter" + +# +msgid "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." +msgstr "" +"Internettforbindelsen fungerer ikke!\n" +"Velg hva du vil gjøre videre." + +#, python-format +msgid "Your internet connection is working (ip: %s)" +msgstr "Internettforbindelsen fungerer (ip:%s)" + +# +msgid "Your network configuration has been activated." +msgstr "Nettverksoppsettet er aktivert." + +msgid "Your receiver does not have an internet connection" +msgstr "Mottakeren mangler internettforbindelse" + +msgid "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" +msgstr "" +"Mottakeren er klar til bruk.\n" +"\n" +"Internettforbindelsen fungerer.\n" +"\n" + +msgid "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Mottakeren er klar til bruk.\n" +"\n" +"Internett forbindelsen fungerer.\n" +"\n" +"Vennligst trykk OK for å fortsette." + +msgid "Your receiver is rebooting" +msgstr "Mottakeren starter på nytt" + +msgid "Your receiver is shutting down" +msgstr "Mottakeren blir slått av" + +msgid "Your receiver is shutting down. Please stand by..." +msgstr "Mottakeren blir slått av. Vennligst vent..." + +msgid "Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver." +msgstr "Mottakeren kan være ubrukelig. Slå opp i håndboken for å få hjelp før omstart av mottakeren." + +msgid "Your receiver will got to stand by due to the sleeptimer." +msgstr "Mottakeren vil nå bli slått av etter fastsatt tidtakerinnstilling" + +msgid "Your receiver will got to standby due to inactivity." +msgstr "Mottakeren vil nå bli slått av på grunn av inaktivitet" + +msgid "Your receiver will restart after pressing OK on your remote control." +msgstr "Mottakeren starter på nytt når du har trykket OK på fjernkontrollen." + +# +msgid "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." +msgstr "" +"Din trådløse LAN internett tilkobling kan ikke startes!\n" +"Har du koblet til din USB WLAN minnepinne?\n" +"\n" +"Velg hva du vil gjøre videre." + +msgid "Zap" +msgstr "Gå til" + +# +msgid "Zap back to previously tuned service?" +msgstr "Gå tilbake til forrige kanal?" + +# +msgid "Zap back to service before positioner setup?" +msgstr "Gå tilbake til kanal før motoroppsett?" + +# +msgid "Zap back to service before tuner setup?" +msgstr "Gå tilbake til kanal før oppsett av tuner?" + +msgid "Zap focus to Picture in Picture" +msgstr "Gå til Bilde i Bilde (PiP)" + +msgid "Zap focus to main screen" +msgstr "Gå til hovedmeny" + +msgid "Zap mode" +msgstr "Gå til" + +msgid "Zap to selected channel" +msgstr "Gå til valgt kanal" + +msgid "Zap to selected channel, or show detailed event info (depends on configuration)" +msgstr "Gå til til valgt kanal, eller vis detaljert program info (avhengig av innstilling)" + +# +msgid "[alternative edit]" +msgstr "[alternativ redigering]" + +# +msgid "[bouquet edit]" +msgstr "[kanalliste redigering]" + +# +msgid "[favourite edit]" +msgstr "[favorittliste redigering]" + +# +msgid "[move mode]" +msgstr "[flyttemodus]" + +msgid "a gui to assign services/providers to common interface modules" +msgstr "et grafisk brukergrensesnitt for å tildele kanaler/leverandører til common interface moduler" + +msgid "a gui to assign services/providers/caids to common interface modules" +msgstr "et grafisk brukergrensesnitt for å tildele kanaler/leverandører/caids til common interface moduler" + +msgid "abort alternatives edit" +msgstr "avbryt alternativ redigering" + +# +msgid "abort bouquet edit" +msgstr "avbryt redigering av kanalliste" + +# +msgid "abort favourites edit" +msgstr "avbryt favorittliste redigering" + +# +msgid "about to start" +msgstr "starter opp" + +# +msgid "activate network adapter configuration" +msgstr "aktiver nettverksinnstilling" + +# +msgid "add alternatives" +msgstr "legge til alternativer" + +# +msgid "add bookmark" +msgstr "legge til bokmerker" + +# +msgid "add bouquet" +msgstr "legge til kanalliste" + +msgid "add marker" +msgstr "legge til markør" + +msgid "add service to bouquet" +msgstr "legge til kanal i kanalliste" + +msgid "add service to favourites" +msgstr "legge til kanal i favorittliste" + +# +msgid "add to parental protection" +msgstr "legge til i foreldrekontrollen" + +msgid "adult movie/drama" +msgstr "voksenfilm/drama" + +# +msgid "advanced" +msgstr "utvidet" + +msgid "adventure/western/war" +msgstr "eventyr/western/krig" + +msgid "advertisement/shopping" +msgstr "reklame/shopping" + +# +msgid "after " +msgstr "etter" + +# +msgid "alphabetic" +msgstr "alfabetisk" + +msgid "alphabetic reverse" +msgstr "alfabetisk bakover" + +# +msgid "alternative" +msgstr "alternativ" + +msgid "always" +msgstr "" + +msgid "and select next channel" +msgstr "" + +msgid "and select previous channel" +msgstr "" + +msgid "arts/culture (without music, general)" +msgstr "kunst/kultur (uten musikk, generelt)" + +msgid "arts/culture magazine" +msgstr "kunst/kultur magasin" + +msgid "athletics" +msgstr "friidrett" + +# +msgid "audio tracks" +msgstr "lydfiler" + +# +msgid "auto" +msgstr "auto" + +# +msgid "automatic" +msgstr "automatisk" + +# +msgid "back" +msgstr "tilbake" + +# +msgid "background image" +msgstr "bakgrunns bilde" + +msgid "ballet" +msgstr "ballett" + +#, python-format +msgid "bc%s" +msgstr "bc%s" + +# +msgid "better" +msgstr "best" + +# +msgid "black" +msgstr "sort" + +msgid "black & white" +msgstr "sort & hvitt" + +msgid "blacklist" +msgstr "svarteliste" + +# +msgid "blue" +msgstr "blå" + +msgid "broadcasting/press" +msgstr "kringkasting/presse" + +# +msgid "by date" +msgstr "etter dato" + +msgid "cartoon/puppets" +msgstr "tegneserie/dukker" + +msgid "center" +msgstr "sentrum" + +msgid "centered" +msgstr "sentrert" + +msgid "centered, wrapped" +msgstr "sentrert, brytning" + +# +msgid "chapters" +msgstr "kapitler" + +msgid "childrens's/youth program (general)" +msgstr "barne/ungdomsprogram (generelt)" + +# +msgid "circular left" +msgstr "sirkulær venstre" + +# +msgid "circular right" +msgstr "sirkulær høyre" + +msgid "comedy" +msgstr "komedie" + +msgid "complex" +msgstr "kompleks" + +# +msgid "config menu" +msgstr "innstillingsmeny" + +# +msgid "confirmed" +msgstr "bekreftet" + +# +msgid "connected" +msgstr "tilkoblet" + +# +msgid "continue" +msgstr "fortsett" + +msgid "cooking" +msgstr "matlaging" + +# +msgid "copy to bouquets" +msgstr "kopiere til kanallister" + +msgid "create directory" +msgstr "opprette katalog" + +#, python-format +msgid "currently installed image: %s" +msgstr "installerte image: %s" + +# +msgid "daily" +msgstr "daglig" + +# +msgid "day" +msgstr "dag" + +# +msgid "default" +msgstr "standard" + +# +msgid "delete cut" +msgstr "slette klipp" + +# +msgid "delete..." +msgstr "slett..." + +msgid "descramble and record ecm" +msgstr "dekode og ta opp ecm" + +msgid "detective/thriller" +msgstr "detektime/spenning" + +# +msgid "disable" +msgstr "deaktivere" + +msgid "disable move mode" +msgstr "slå av flytte modus" + +# +msgid "disabled" +msgstr "deaktivert" + +# +msgid "disconnected" +msgstr "frakoblet" + +msgid "discussion/interview/debate" +msgstr "diskusjon/intervju/debatt" + +# +msgid "do nothing" +msgstr "ikke gjør noe" + +msgid "documentary" +msgstr "dokumentar" + +msgid "don't descramble, record ecm" +msgstr "ikke dekode, ta opp ecm" + +# +msgid "done!" +msgstr "ferdig!" + +msgid "east" +msgstr "øst" + +msgid "economics/social advisory" +msgstr "økonomi/sosial rådgivende" + +msgid "edit alternatives" +msgstr "alternativer" + +msgid "education/science/factual topics (general)" +msgstr "utdanning/vitenskap/faktaprogram (generelt)" + +# +msgid "empty" +msgstr "tom" + +# +msgid "enable" +msgstr "aktivere" + +# +msgid "enable bouquet edit" +msgstr "aktivere kanalliste redigering" + +# +msgid "enable favourite edit" +msgstr "aktivere favorittliste redigering" + +# +msgid "enable move mode" +msgstr "aktivere flytte modus" + +# +msgid "enabled" +msgstr "aktivert" + +# +msgid "end alternatives edit" +msgstr "avslutte redigering" + +# +msgid "end bouquet edit" +msgstr "avslutt redigering av kanalliste" + +# +msgid "end cut here" +msgstr "avslutt klippet her" + +# +msgid "end favourites edit" +msgstr "avslutte favorittliste redigering" + +msgid "entertainment (10-16 year old)" +msgstr "underholdning (10-16 år)" + +msgid "entertainment (6-14 year old)" +msgstr "underholdning (6-14 år)" + +# +msgid "equal to" +msgstr "lik" + +msgid "equestrian" +msgstr "hestesport" + +# +msgid "exit DVD player or return to file browser" +msgstr "avslutt DVD spiller eller gå til til fil søker" + +msgid "exit movielist" +msgstr "Avslutte opptaksliste" + +# +msgid "exit network adapter configuration" +msgstr "avslutt nettverksinnstilling" + +# +msgid "exit networkadapter setup menu" +msgstr "avslutt nettverksmeny" + +msgid "experimental film/video" +msgstr "Eksperimentell film/Video" + +msgid "false" +msgstr "falsk" + +msgid "fashion" +msgstr "mote" + +# +msgid "fileformats (BMP, PNG, JPG, GIF)" +msgstr "filformat (BMP, PNG, JPG, GIF)" + +# +msgid "filename" +msgstr "filnavn" + +msgid "film/cinema" +msgstr "film/kino" + +msgid "fine arts" +msgstr "kunst" + +# +msgid "fine-tune your display" +msgstr "fininnstill din skjerm" + +msgid "fitness & health" +msgstr "trening & helse" + +# +msgid "flat alphabetic" +msgstr "sorter alfabetisk" + +# +msgid "flat alphabetic reverse" +msgstr "sorter alfabetisk baklengs" + +msgid "folk/traditional music" +msgstr "folk/tradisjonell musikk" + +msgid "football/soccer" +msgstr "fotball" + +msgid "foreign countries/expeditions" +msgstr "utland/ekspedisjoner" + +# +msgid "forward to the next chapter" +msgstr "framover til neste kapittel" + +# +msgid "free" +msgstr "ledig" + +msgid "from" +msgstr "" + +msgid "further education" +msgstr "videreutdanning" + +msgid "game show/quiz/contest" +msgstr "game show/spørrekonkurranse" + +msgid "gardening" +msgstr "hagearbeid" + +# +msgid "go to deep standby" +msgstr "slå helt av" + +msgid "go to standby" +msgstr "slå av" + +# +msgid "grab this frame as bitmap" +msgstr "grip denne rammen som bitmap" + +# +msgid "green" +msgstr "grønn" + +msgid "handicraft" +msgstr "håndverk" + +msgid "height" +msgstr "høyde" + +# +msgid "help..." +msgstr "hjelp..." + +# +msgid "horizontal" +msgstr "horisontal" + +msgid "information/education/school program" +msgstr "informasjon/utdanning/skoleprogram" + +msgid "init module" +msgstr "igangsett modul" + +# +msgid "init modules" +msgstr "igangsette moduler" + +msgid "insert mark here" +msgstr "sett markør her" + +msgid "invalid type" +msgstr "ugyldig type" + +msgid "jazz" +msgstr "jazz" + +# +msgid "jump back to the previous title" +msgstr "gå tilbake til forrige tittel" + +# +msgid "jump forward to the next title" +msgstr "gå framover til neste tittel" + +msgid "languages" +msgstr "språk" + +msgid "leave movie player..." +msgstr "avslutte mediespiller..." + +# +msgid "left" +msgstr "venstre" + +msgid "left, wrapped" +msgstr "venstre, brytning" + +msgid "leisure hobbies (general)" +msgstr "fritidshobby (generelt)" + +# +msgid "length" +msgstr "lengde" + +msgid "limit ..., aborting !" +msgstr "grense ..., avbryter!" + +# +msgid "list style compact" +msgstr "kompakt liste" + +# +msgid "list style compact with description" +msgstr "kompakt liste med beskrivelse" + +# +msgid "list style default" +msgstr "standard liste" + +# +msgid "list style single line" +msgstr "enkel liste" + +msgid "literature" +msgstr "litteratur" + +msgid "live broadcast" +msgstr "direktesending" + +# +msgid "locked" +msgstr "låst" + +msgid "loopthrough to" +msgstr "gjennomgang til" + +msgid "magazines/reports/documentary" +msgstr "magasiner/rapporter/dokumentarer" + +# +msgid "manual" +msgstr "brukerveiledning" + +msgid "martial sports" +msgstr "kampsport" + +msgid "medicine/physiology/psychology" +msgstr "medisin/fysiologi/psykologi" + +# +msgid "menu" +msgstr "meny" + +# +msgid "mins" +msgstr "min" + +# +msgid "minutes" +msgstr "minutter" + +# +msgid "month" +msgstr "måned" + +msgid "motor sport" +msgstr "Motorsport" + +msgid "motoring" +msgstr "kjører" + +# +msgid "move down to last entry" +msgstr "gå til til siste oppføring" + +# +msgid "move down to next entry" +msgstr "gå til til neste oppføring" + +# +msgid "move up to first entry" +msgstr "gå til til første oppføring" + +# +msgid "move up to previous entry" +msgstr "gå til til forrige oppføring" + +msgid "movie/drama (general)" +msgstr "film/drama (generelt)" + +# +msgid "multinorm" +msgstr "multinorm" + +msgid "music/ballet/dance (general)" +msgstr "musikk/ballett/dans (generelt)" + +msgid "musical/opera" +msgstr "musikal/opera" + +msgid "nature/animals/environment" +msgstr "natur/dyr/miljø" + +# +msgid "never" +msgstr "aldri" + +msgid "new media" +msgstr "ny media" + +msgid "news magazine" +msgstr "nyhets magasin" + +msgid "news/current affairs (general)" +msgstr "nyheter/aktuelt (generelt)" + +msgid "news/weather report" +msgstr "nyheter/værmelding" + +# +msgid "no" +msgstr "nei" + +# +msgid "no CAId selected" +msgstr "ingen CAId er valgt" + +# +msgid "no CI slots found" +msgstr "ingen CI slot er funnet" + +# +msgid "no module found" +msgstr "Ingen modul er funnet" + +msgid "no storage devices found" +msgstr "ingen lagringsenheter er funnet" + +# +msgid "none" +msgstr "Ingen" + +msgid "normal" +msgstr "normal" + +# +msgid "not configured" +msgstr "ikke konfigurert" + +# +msgid "not locked" +msgstr "Ikke låst" + +msgid "not supported" +msgstr "ikke støttet" + +# +msgid "not used" +msgstr "ikke i bruk" + +# +msgid "nothing connected" +msgstr "ikke noe er tilkoblet" + +# +msgid "of a DUAL layer medium used." +msgstr "av et to lags medium som brukes." + +msgid "of a SINGLE layer medium used." +msgstr "av et enkeltlags medium som brukes." + +# +msgid "off" +msgstr "av" + +msgid "offset is" +msgstr "offset er" + +# +msgid "on" +msgstr "på" + +# +msgid "on READ ONLY medium." +msgstr "på READ ONLY medium." + +msgid "on end of movie" +msgstr "på slutten av opptaket" + +# +msgid "once" +msgstr "en gang" + +msgid "only from deep standby" +msgstr "" + +msgid "only from standby" +msgstr "" + +msgid "open EPG..." +msgstr "" + +msgid "open Info..." +msgstr "" + +# +msgid "open nameserver configuration" +msgstr "åpne innstilling for navneserver " + +msgid "original" +msgstr "original" + +msgid "original language" +msgstr "opprinnelig språk" + +# +msgid "pass" +msgstr "klart" + +msgid "performing arts" +msgstr "scenekunst" + +msgid "play as picture in picture" +msgstr "Vis som bilde i bilde" + +msgid "play in mainwindow" +msgstr "spill av i hovedvinduet" + +msgid "please press OK when ready" +msgstr "vennligst trykk OK for å fortsette" + +# +msgid "please wait, loading picture..." +msgstr "vennligst vent, henter bilde" + +msgid "popular culture/traditional arts" +msgstr "populær kultur/tradisjonell kunst" + +msgid "pre-school children's program" +msgstr "førskolebarn/barneprogram" + +msgid "receiver software because updates are available." +msgstr "mottaker programvare fordi oppdateringer er tilgjengelige." + +# +msgid "record" +msgstr "spill inn" + +# +msgid "recording..." +msgstr "spiller inn..." + +# +msgid "red" +msgstr "rød" + +msgid "religion" +msgstr "" + +msgid "remarkable people" +msgstr "bemerkelsesverdige mennesker" + +msgid "remove after this position" +msgstr "slette etter denne posisjon" + +msgid "remove all alternatives" +msgstr "slette alle alternativer" + +msgid "remove all new found flags" +msgstr "slette nye flagg" + +msgid "remove before this position" +msgstr "fjerne før denne posisjonen" + +msgid "remove bookmark" +msgstr "slette bokmerke" + +msgid "remove directory" +msgstr "slette katalog" + +msgid "remove entry" +msgstr "fjerne denne" + +msgid "remove from parental protection" +msgstr "fjerne fra foreldrekontroll" + +msgid "remove new found flag" +msgstr "slette nye flagg" + +msgid "remove selected satellite" +msgstr "slett valgt satellitt" + +msgid "remove this mark" +msgstr "slett markøren" + +msgid "rename entry" +msgstr "endre navn i oppføringen" + +# +msgid "repeat playlist" +msgstr "gjenta spilliste" + +# +msgid "repeated" +msgstr "gjentatt" + +msgid "reverse by date" +msgstr "bakover etter dato" + +# +msgid "rewind to the previous chapter" +msgstr "spol tilbake til forrige kapittel" + +# +msgid "right" +msgstr "høyre" + +msgid "right, wrapped" +msgstr "høyre, brytning" + +msgid "rock/pop" +msgstr "rock/pop" + +msgid "romance" +msgstr "romantikk" + +msgid "save last directory on exit" +msgstr "lagre siste katalog ved avslutning" + +msgid "save playlist on exit" +msgstr "lagre spilliste ved avslutning" + +msgid "scan state" +msgstr "søkestatus" + +msgid "science fiction/fantasy/horror" +msgstr "science fiction/fantasi/skrekk" + +# +msgid "second cable of motorized LNB" +msgstr "sekundær kabel for motorisert LNB" + +# +msgid "seconds" +msgstr "sekunder" + +# +msgid "select" +msgstr "velg" + +# +msgid "select CAId's" +msgstr "velg CAId's" + +msgid "select EPG..." +msgstr "" + +msgid "select Info..." +msgstr "" + +# +msgid "select menu entry" +msgstr "velg meny" + +msgid "select movie" +msgstr "Velge opptak" + +msgid "select the movie path" +msgstr "Velg målmappen for opptak" + +msgid "serious music/classic music" +msgstr "seriøs musikk/klassisk musikk" + +msgid "serious/classical/religious/historical movie/drama" +msgstr "seriøs/klassisk/religiøs/historisk film/drama" + +msgid "service PIN" +msgstr "kanal PIN" + +msgid "set as startup service" +msgstr "sett som oppstartskanal" + +msgid "setup PIN" +msgstr "velg PIN" + +# +msgid "show DVD main menu" +msgstr "vis DVD hovedmeny" + +msgid "show all tags" +msgstr "vis alle tagger" + +# +msgid "show alternatives" +msgstr "vis alternativer" + +# +msgid "show event details" +msgstr "vis programdetaljer" + +# +msgid "show extended description" +msgstr "Vis utvidet beskrivelse" + +msgid "show mediaplayer on mainmenu" +msgstr "vis mediespiller på hovedmeny" + +msgid "show softwaremanager in setup menu" +msgstr "vis programvareoppsett" + +msgid "show softwaremanager on blue button" +msgstr "vis programvareoppsett med blå knapp" + +# +msgid "show tag menu" +msgstr "Vis tag meny" + +# +msgid "show transponder info" +msgstr "vis transponder info" + +msgid "show/game show (general)" +msgstr "underholdning/game show (generelt)" + +msgid "shuffle" +msgstr "tilfeldig rekkefølge" + +msgid "shut down" +msgstr "slå av" + +# +msgid "simple" +msgstr "enkel" + +# +msgid "skip backward" +msgstr "gå tilbake" + +# +msgid "skip forward" +msgstr "gå framover" + +msgid "soap/melodram/folkloric" +msgstr "såpe/melodrama/folklore" + +msgid "social/political issues/economics (general)" +msgstr "sosial/politiske spørsmål/økonomi (generelt)" + +msgid "social/spiritual science" +msgstr "sosial/åndsvitenskap" + +msgid "sorting of playlists" +msgstr "sortering av spillister" + +# +msgid "special characters" +msgstr "spesial tegn" + +msgid "special events" +msgstr "spesial program" + +msgid "special format data DVD (HDTV compatible)" +msgstr "spesiell data DVD (HDTV-kompatibel)" + +msgid "sports (general)" +msgstr "sport (generelt)" + +msgid "sports magazine" +msgstr "sportsmagasin" + +# +msgid "standard" +msgstr "standard" + +# +msgid "start cut here" +msgstr "start klipp her" + +msgid "start directory" +msgstr "start katalog" + +msgid "stepsize" +msgstr "steg størrelse" + +# +msgid "stereo" +msgstr "" + +msgid "stop using as startup service" +msgstr "slutt og bruke som oppstarttjeneste" + +msgid "switch to bookmarks" +msgstr "gå til bokmerker" + +msgid "switch to filelist" +msgstr "gå til filliste" + +msgid "switch to the next angle" +msgstr "gå til neste posisjon" + +msgid "switch to the next audio track" +msgstr "gå til neste lydspor" + +msgid "switch to the next subtitle language" +msgstr "bytt til neste tekstspråk" + +msgid "talk show" +msgstr "talk show" + +msgid "team sports" +msgstr "lagidrett" + +msgid "technology/natural science" +msgstr "teknologi/naturvitenskap" + +# +msgid "template file" +msgstr "filformat" + +msgid "tennis/squash" +msgstr "tennis/squash" + +msgid "this recording" +msgstr "dette opptaket" + +# +msgid "this service is protected by a parental control pin" +msgstr "denne kanalen er beskyttet av en foreldrekontroll kode" + +msgid "toggle time, chapter, audio, subtitle info" +msgstr "juster tid, kapittel, lyd, undertekst info" + +msgid "top" +msgstr "topp" + +msgid "tourism/travel" +msgstr "turisme/reise" + +msgid "true" +msgstr "sant" + +msgid "unavailable" +msgstr "utilgjengelig" + +# +msgid "unconfirmed" +msgstr "ubekreftet" + +msgid "undefined" +msgstr "ubestemt" + +# +msgid "unknown" +msgstr "ukjent" + +# +msgid "unknown service" +msgstr "ukjent kanal" + +msgid "unpublished" +msgstr "ikke publisert" + +msgid "until standby/restart" +msgstr "til slår av/starter på nytt" + +# +msgid "user defined" +msgstr "brukerbestemt" + +msgid "variety show" +msgstr "varieté show" + +# +msgid "vertical" +msgstr "vertikal" + +# +msgid "wait for ci..." +msgstr "vent på ci..." + +# +msgid "wait for mmi..." +msgstr "venter på mmi..." + +# +msgid "waiting" +msgstr "venter" + +msgid "water sport" +msgstr "Vannsport" + +# +msgid "weekly" +msgstr "ukentlig" + +msgid "west" +msgstr "vest" + +msgid "when PiPzap enabled zap channel down..." +msgstr "" + +msgid "when PiPzap enabled zap channel up..." +msgstr "" + +msgid "white" +msgstr "hvit" + +# +msgid "whitelist" +msgstr "hvitliste" + +msgid "width" +msgstr "bredde" + +msgid "winter sport" +msgstr "Vintersport" + +msgid "wireless network interface" +msgstr "trådløst nettverk" + +#, python-format +msgid "with %d error" +msgid_plural "with %d errors" +msgstr[0] "med %d feil" +msgstr[1] "med %d feil" + +# +msgid "working" +msgstr "fungerer" + +# +msgid "yellow" +msgstr "gul" + +# +msgid "yes" +msgstr "ja" + +# +msgid "yes (keep feeds)" +msgstr "ja (behold feeder)" + +# +msgid "zap" +msgstr "gå til" + +# +msgid "zap and record" +msgstr " gå til og spill inn" + +# +msgid "zapped" +msgstr "gått til" + +#~ msgid "A demo plugin for TPM usage." +#~ msgstr "En test- app til TPM bruk." + +#~ msgid "AC3 downmix" +#~ msgstr "AC3 blanding" + +# +#~ msgid "Activate PiP" +#~ msgstr "Aktivere PiP (bilde i bilde)" + +#~ msgid "Add/remove timer for current event" +#~ msgstr "Legge til/slett tidtaker i nåværende program" + +#~ msgid "Adjust HDMI CEC settings" +#~ msgstr "Justere HDMI CEC innstillinger" + +#~ msgid "All satellites" +#~ msgstr "Alle satellitter" + +#~ msgid "And will shutdown your receiver over " +#~ msgstr "Og mottakeren vil slåes helt av etter" + +# +#~ msgid "Behavior of 'pause' when paused" +#~ msgstr "Innstilling for 'pause' knappen når satt i pause" + +#~ msgid "Committed DiSEqC command" +#~ msgstr "Utvidet DiSEqC kommando" + +#~ msgid "Configure if and how service type icons will be shown." +#~ msgstr "Still inn om eller hvordan kanal picons skal vises." + +#~ msgid "Configure if service picons will be shown in the servicelist." +#~ msgstr "Still inn om kanal picons skal vises i kanallisten." + +#~ msgid "Configure the behavior of the 'pause' key when movie playback is already paused." +#~ msgstr "Still inn oppførsel til 'pause' knappen når en avspilling er satt i pause." + +#~ msgid "Configure the duration in hours and action, which could be shut down or standby, when the receiver is not controlled." +#~ msgstr "Still inn varigheten i antall timer fra mottakeren er inaktiv til den automatisk skal slåes av/slåes helt av." + +#~ msgid "Configure the duration in minutes and action, which could be shut down or standby, for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +#~ msgstr "Still inn varigheten i antall minutter når tidtakeren skal velge å slå av/slå helt av mottakeren. Velg denne oppføringen og klikk OK eller grønn knapp for start/stopp av tidtakeren" + +#~ msgid "DiSEqC repeats" +#~ msgstr "DiSEqC gjentakelse" + +#~ msgid "Goto specific data/time" +#~ msgstr "Gå til en bestemt data/tid" + +# +#~ msgid "Memory positions" +#~ msgstr "Lagre posisjoner" + +#~ msgid "No satellite frontend found!!" +#~ msgstr "Ingen satellitt posisjon ble funnet!!" + +#~ msgid "Open service list and select next channel" +#~ msgstr "Åpne kanallisten og velg neste kanal" + +#~ msgid "Open service list and select previous channel" +#~ msgstr "Åpne kanallisten og velg forrige kanal" + +#~ msgid "Press '0' to toggle internal/external PiP." +#~ msgstr "Trykk '0' for å bytte internt/eksternt PiP (Bilde i bilde)." + +# +#~ msgid "Remove timer" +#~ msgstr "Slette tidtaker" + +#~ msgid "Send DiSEqC" +#~ msgstr "Send DiSEqC" + +#~ msgid "Show picons in servicelist" +#~ msgstr "Vis picons i kanalliste" + +# +#~ msgid "Shutdown after current event" +#~ msgstr "Slå av etter nåværende program" + +#~ msgid "Shutdown in " +#~ msgstr "Slå helt av om" + +# +#~ msgid "Switch next channel" +#~ msgstr "Gå til neste kanal" + +#~ msgid "Tuning step size" +#~ msgstr "Søketrinnstørrelse" + +# +#~ msgid "Uncommitted DiSEqC command" +#~ msgstr "Uncommitted DiSEqC kommando" + +#~ msgid "Your receiver will shutdown due to inactivity." +#~ msgstr "Mottakeren slåes av på grunn av inaktivitet." + +#~ msgid "Your receiver will shutdown due to the sleeptimer." +#~ msgstr "Mottakeren slåes av etter tidtakerinnstillingen." + +#~ msgid "Zap back to service before satfinder?" +#~ msgstr "Gå tilbake til kanal og avslutt satellittsøker?" + +#~ msgid "tuner is not supported" +#~ msgstr "tuner er ikke støttet" diff --git a/po/pl.po b/po/pl.po new file mode 100644 index 0000000..219dc51 --- /dev/null +++ b/po/pl.po @@ -0,0 +1,9804 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: \n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-07-21 19:08+0200\n" +"PO-Revision-Date: 2014-06-28 16:58+0100\n" +"Last-Translator: blzr <blzr@o2.pl>\n" +"Language-Team: \n" +"Language: pl_PL\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" + +msgid "" +"\n" +"Advanced options and settings." +msgstr "" +"\n" +"Zaawansowane opcje i ustawienia." + +# +msgid "" +"\n" +"After pressing OK, please wait!" +msgstr "" +"\n" +"Po naciśnięciu OK czekaj!" + +msgid "" +"\n" +"Backup your receiver settings." +msgstr "" +"\n" +"Wykonaj kopię ustawień." + +msgid "" +"\n" +"Edit the upgrade source address." +msgstr "" +"\n" +"Edytuj adres aktualizacji." + +msgid "" +"\n" +"Manage extensions or plugins for your receiver" +msgstr "" +"\n" +"Zarządzaj rozszerzeniami i pluginami" + +msgid "" +"\n" +"Online update of your receiver software." +msgstr "" +"\n" +"Aktualizacja oprogramowania online." + +# +msgid "" +"\n" +"Press OK on your remote control to continue." +msgstr "" +"\n" +"Wciśnij OK aby kontynuować." + +# +msgid "" +"\n" +"Restore your backups by date." +msgstr "" +"\n" +"Przywróć backup według daty." + +msgid "" +"\n" +"Restore your receiver settings." +msgstr "" +"\n" +"Przywróć własne ustawienia odbiornika." + +msgid "" +"\n" +"Restore your receiver with a new firmware." +msgstr "" +"\n" +"Przywróć własne ustawienia odbiornika w nowym sofcie" + +msgid "" +"\n" +"Scan for local extensions and install them." +msgstr "" +"\n" +"Szukaj lokalnych rozszerzeń i zainstaluj je." + +# +msgid "" +"\n" +"Select your backup device.\n" +"Current device: " +msgstr "" +"\n" +"Wybierz lokalizację dla backupu.\n" +"Aktualna lokalizacja: " + +# +msgid "" +"\n" +"View, install and remove available or installed packages." +msgstr "" +"\n" +"Zobacz, zainstaluj lub usuń dostępne lub zainstalowane pakiety." + +msgid " (PiP)" +msgstr "" + +msgid " (Radio)" +msgstr " (Radio)" + +msgid " (TV)" +msgstr "" + +# +msgid " (disabled)" +msgstr " (wyłączony)" + +msgid " (higher than any auto)" +msgstr " (wyższy niż każdy auto)" + +msgid " (higher than rotor any auto)" +msgstr " (wyższy niż auto dla obrotnicy)" + +msgid " (lower than any auto)" +msgstr " (niższy niż każdy auto)" + +msgid " extensions." +msgstr " rozszerzenia." + +msgid " ms" +msgstr " ms" + +# +msgid " packages selected." +msgstr " pakiety wybrane." + +# +msgid " updates available." +msgstr " aktualizacje dostępne." + +#. TRANSLATORS: short time representation hour:minute +#, python-format +msgid "%2d:%02d" +msgstr "" + +#. TRANSLATORS: full time representation hour:minute:seconds +#, python-format +msgid "%2d:%02d:%02d" +msgstr "" + +msgid "%A %d %B" +msgstr "" + +#. TRANSLATORS: long date representations dayname daynum monthname in strftime() format! See 'man strftime' +msgid "%A %e %B" +msgstr "" + +#. TRANSLATORS: full date representation dayname daynum monthname year in strftime() format! See 'man strftime' +msgid "%A %e %B %Y" +msgstr "" + +# +msgid "%H:%M" +msgstr "%H:%M" + +#. TRANSLATORS: short date representation short dayname daynum short monthname in strftime() format! See 'man strftime' +msgid "%a %e/%m" +msgstr "" + +#. TRANSLATORS: long date representation short dayname daynum short monthname hour:minute in strftime() format! See 'man strftime' +msgid "%a %e/%m %-H:%M" +msgstr "" + +#. TRANSLATORS: Intermediate scanning result, '%d' channel(s) have been found so far +#, python-format +msgid "%d channel found" +msgid_plural "%d channels found" +msgstr[0] "%d znaleziony kanał!" +msgstr[1] "%d znalezione kanały!" +msgstr[2] "%d znalezionych kanałów!" + +#, python-format +msgid "%d file" +msgid_plural "%d files" +msgstr[0] "%d plik" +msgstr[1] "%d pliki" +msgstr[2] "%d plików" + +# +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d godzina" +msgstr[1] "%d godziny" +msgstr[2] "%d godzin" + +# +#, python-format +msgid "%d job is running in the background!" +msgid_plural "%d jobs are running in the background!" +msgstr[0] "%d zadanie jest wykonywane w tle!" +msgstr[1] "%d zadania są wykonywane w tle!" +msgstr[2] "%d zadań jest wykonywanych w tle!" + +# +#, python-format +msgid "%d min" +msgstr "%d min" + +# +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d minuta" +msgstr[1] "%d minuty" +msgstr[2] "%d minut" + +# +#, python-format +msgid "%d minutes" +msgstr "%d minut" + +#, python-format +msgid "%d pixel wide" +msgid_plural "%d pixels wide" +msgstr[0] "%d pikseli" +msgstr[1] "%d piksele" +msgstr[2] "%d pikseli" + +# +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "%d sekunda" +msgstr[1] "%d sekundy" +msgstr[2] "%d sekund" + +# +#, python-format +msgid "%d subdirectory" +msgid_plural "%d subdirectories" +msgstr[0] "%d podkatalog" +msgstr[1] "%d podkatalogi" +msgstr[2] "%d podkatalogów" + +# +#, python-format +msgid "%d wireless network found!" +msgid_plural "%d wireless networks found!" +msgstr[0] "Znaleziono %d sieć bezprzewodową!" +msgstr[1] "Znaleziono %d sieci bezprzewodowe!" +msgstr[2] "Znaleziono %d sieci bezprzewodowych!" + +msgid "%d-%b-%Y %-H:%M" +msgstr "" + +msgid "%d-%m" +msgstr "" + +# +msgid "%d.%B %Y" +msgstr "%d.%B %Y" + +#. TRANSLATORS: VFD hour:minute daynum short monthname in strftime() format! See 'man strftime' +msgid "%k:%M %e/%m" +msgstr "" + +# +#, python-format +msgid "%s %s free disk space" +msgstr "%s %s wolnej przestrzeni dyskowej" + +# +#, python-format +msgid "%s (%s)\n" +msgstr "%s (%s)\n" + +#. TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. +#, python-format +msgid "%s is no longer used. Should it be deleted?" +msgstr "%s nie jest już używany. Usunąć?" + +# +#, python-format +msgid "%s updated package available" +msgid_plural "%s updated packages available" +msgstr[0] " %s zaktualizowany pakiet dostępny." +msgstr[1] " %s zaktualizowane pakiety dostępne." +msgstr[2] " %s zaktualizowanych pakietów dostępnych." + +#, python-format +msgid "%s%d min" +msgstr "" + +#, python-format +msgid "%s/%s: %s" +msgstr "" + +# +msgid "(ZAP)" +msgstr "(Przełącz)" + +# +msgid "(empty)" +msgstr "(puste)" + +# +msgid "(show optional DVD audio menu)" +msgstr "(pokaż opcjonalne menu audio DVD)" + +# +msgid "* Only available if more than one interface is active." +msgstr "* Dostępne tylko gdy więcej niż jeden interfejs jest aktywny." + +msgid "/s" +msgstr "" + +# +msgid "0" +msgstr "0" + +# +msgid "1" +msgstr "1" + +# +msgid "1.0" +msgstr "1.0" + +# +msgid "1.1" +msgstr "1.1" + +# +msgid "1.2" +msgstr "1.2" + +# +msgid "12V output" +msgstr "Wyjście 12V" + +# +msgid "13 V" +msgstr "13 V" + +# +msgid "16:10" +msgstr "16:10" + +# +msgid "16:10 Letterbox" +msgstr "16:10 Letterbox" + +# +msgid "16:10 PanScan" +msgstr "16:10 PanScan" + +# +msgid "16:9" +msgstr "16:9" + +# +msgid "16:9 Letterbox" +msgstr "16:9 Letterbox" + +# +msgid "16:9 always" +msgstr "16:9 zawsze" + +# +msgid "18 V" +msgstr "18 V" + +# +msgid "2" +msgstr "2" + +msgid "23.976" +msgstr "" + +msgid "24" +msgstr "" + +msgid "25" +msgstr "" + +msgid "29.97" +msgstr "" + +# +msgid "3" +msgstr "3" + +msgid "30" +msgstr "" + +msgid "3d mode" +msgstr "tryb 3d" + +# +msgid "4" +msgstr "4" + +# +msgid "4:3" +msgstr "4:3" + +# +msgid "4:3 Letterbox" +msgstr "4:3 Letterbox" + +# +msgid "4:3 PanScan" +msgstr "4:3 PanScan" + +# +msgid "5" +msgstr "5" + +# +msgid "6" +msgstr "6" + +# +msgid "7" +msgstr "7" + +# +msgid "8" +msgstr "8" + +# +msgid "9" +msgstr "9" + +#, python-format +msgid ": %s" +msgstr "" + +# +msgid "<Current movielist location>" +msgstr "<Bieżąca lokalizacja nagrań>" + +# +msgid "<Default movie location>" +msgstr "<Domyślna lokalizacja nagrań>" + +# +msgid "<Last timer location>" +msgstr "<Ostatnia lokalizacja timera>" + +# +msgid "<unknown>" +msgstr "<nieznany>" + +# +msgid "??" +msgstr "??" + +# +msgid "A" +msgstr "A" + +# +#, python-format +msgid "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" +msgstr "" +"Plik konfiguracyjny (%s) został zmodyfikowany od czasu instalacji.\n" +"Chcesz zachować swoją wersję?" + +# +#, python-format +msgid "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" +msgstr "" +"Plik konfiguracyjny (%s) został zmodyfikowany od czasu instalacji.\n" +"Chcesz zachować swoją wersję?" + +msgid "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"Wykonany timer nagrywania chce przełączyć\n" +"odbiornik w stan czuwania. Zrobić to teraz?" + +msgid "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"Wykonany timer nagrywania chce wyłączyć\n" +"odbiornik. Wyłączyć teraz?" + +# +msgid "A graphical EPG for all services of an specific bouquet" +msgstr "Graficzny EPG dla wszystkich kanałów danego bukietu" + +# +#, python-format +msgid "" +"A record has been started:\n" +"%s" +msgstr "" +"Nagrywanie rozpoczęło się:\n" +"%s" + +# +msgid "" +"A recording is currently running.\n" +"What do you want to do?" +msgstr "" +"Nagrywanie w toku...\n" +"Co chcesz zrobić?" + +# +msgid "A recording is currently running. Please stop the recording before trying to configure the positioner." +msgstr "Nagrywanie w toku. Zatrzymaj nagrywanie przed rozpoczęciem ustawiania pozycjonera." + +msgid "A recording is currently running. Please stop the recording before trying to scan." +msgstr "Trwa nagrywanie. Zatrzymaj nagrywanie zanim rozpoczniesz skanowanie." + +# +msgid "A recording is currently running. Please stop the recording before trying to start the satfinder." +msgstr "Nagrywanie w toku . Zatrzymaj nagrywanie przed uruchomieniem miernika sygnału." + +# +#, python-format +msgid "A required tool (%s) was not found." +msgstr "Narzędzie (%s) nie zostało znalezione." + +# +msgid "A search for available updates is currently in progress." +msgstr "Wyszukiwanie dostępnych aktualizacji w toku." + +# +msgid "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" +msgstr "" +"Drugi skonfigurowany interfejs został znaleziony.\n" +"\n" +"Czy chcesz wyłączyć drugi interfejs sieciowy?" + +msgid "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"Wyłącznik czasowy chce przełączyć\n" +"odbiornik w tryb czuwania. Zrobić to teraz?" + +msgid "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"Wyłącznik czasowy chce wyłączyć\n" +"odbiornik. Wyłączyć teraz?" + +# +msgid "A small overview of the available icon states and actions." +msgstr "Podgląd dostępnych ikon stanu i działania" + +# +msgid "" +"A timer failed to record!\n" +"Disable TV and try again?\n" +msgstr "" +"Nagrywanie z timera nie powiodło się!\n" +"Wyłączyć TV i spróbować ponownie?\n" + +# +msgid "A/V settings" +msgstr "Audio/Video" + +msgid "AC3/DTS downmix" +msgstr "" + +# +msgid "Abort" +msgstr "Przerwij" + +# +msgid "About" +msgstr "O tunerze..." + +# +msgid "About..." +msgstr "O tunerze..." + +# +msgid "Accesspoint:" +msgstr "Punkt dostępowy:" + +# +msgid "Action on long powerbutton press" +msgstr "Akcja po długim naciśnięciu 'Power'" + +# +msgid "Action on short powerbutton press" +msgstr "Akcja po krótkim przyciśnięciu 'Power'" + +# +msgid "Activate Picture in Picture" +msgstr "Włącz PiP" + +# +msgid "Activate current configuration" +msgstr "Aktywuj aktualną konfigurację" + +# +msgid "Activate network settings" +msgstr "Aktywuj ustawienia sieci" + +# +msgid "Activate the configured network settings." +msgstr "Aktywuj ustawienia skonfigurowanej sieci" + +# +msgid "Adapter settings" +msgstr "Ustawienia adaptera" + +# +msgid "Add" +msgstr "Dodaj" + +# +msgid "Add Bookmark" +msgstr "Dodaj zakładkę" + +# +msgid "Add a mark" +msgstr "Dodaj znacznik" + +# +msgid "Add a nameserver entry" +msgstr "Dodaj wpis DNS" + +# +msgid "Add a new title" +msgstr "Dodaj nowy tytuł" + +# +msgid "Add bookmark" +msgstr "Dodaj zakładkę" + +# +msgid "Add directory to playlist" +msgstr "Dodaj katalog do playlisty " + +# +msgid "Add file to playlist" +msgstr "Dodaj plik do playlisty" + +# +msgid "Add files to playlist" +msgstr "Dodaj pliki do playlisty" + +# +msgid "Add more details to the crash log" +msgstr "Twórz szczegółowe crashlogi" + +# +msgid "Add provider" +msgstr "Dodaj nadawcę" + +# +msgid "Add recording (enter recording duration)" +msgstr "Nagrywaj (wpisz czas trwania nagrania)" + +# +msgid "Add recording (enter recording endtime)" +msgstr "Nagrywaj (wpisz czas zakończenia nagrania)" + +# +msgid "Add recording (indefinitely)" +msgstr "Nagrywaj (czas nieokreślony)" + +# +msgid "Add recording (stop after current event)" +msgstr "Nagrywaj (zatrzymaj po aktualnym wydarzeniu)" + +# +msgid "Add service" +msgstr "Dodaj kanał" + +# +msgid "Add timer" +msgstr "Dodaj timer" + +# +msgid "Add title" +msgstr "Dodaj tytuł" + +# +msgid "Add to bouquet" +msgstr "Dodaj do bukietu" + +# +msgid "Add to favourites" +msgstr "Dodaj do ulubionych" + +msgid "Add/remove change timer for current event" +msgstr "Dodaj/usuń timer dla bieżącej audycji" + +msgid "Adjust 3D settings" +msgstr "Dostosuj ustawienia 3d" + +# +msgid "Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens." +msgstr "Dostosuj ustawienia koloru, tak aby wszystkie odcienie były rozróżnialne, ale jak najbardziej nasycone. Jeśli jesteś zadowolony z rezultatu wciśnij OK aby wyjść z tego menu lub użyj klawiszy numerycznych aby zobaczyć inne ekrany testowe." + +# +msgid "Advanced" +msgstr "Zaawansowane" + +# +msgid "Advanced options" +msgstr "Opcje zaawansowane" + +# +msgid "Advanced restore" +msgstr "Przywracanie zaawansowane" + +# +msgid "Advanced software" +msgstr "Oprogramowanie zaawansowane" + +# +msgid "Advanced software plugin" +msgstr "Zaawansowane pluginy" + +# +msgid "Advanced video enhancement setup" +msgstr "Zaawansowane ustawienia korekcji obrazu" + +# +msgid "Advanced video setup" +msgstr "Zawansowane ustawienia obrazu" + +# +msgid "After event" +msgstr "Po wydarzeniu" + +# +msgid "Album" +msgstr "Album" + +msgid "Alignment of events" +msgstr "Wyrównanie tytułów audycji" + +msgid "Alignment of service names" +msgstr "Wyrównanie nazw kanałów" + +# +msgid "All" +msgstr "Wszystkie" + +msgid "All ages" +msgstr "b/o" + +# +msgid "All satellites 1 (USALS)" +msgstr "Wszystkie satelity 1 (USALS)" + +# +msgid "All satellites 2 (USALS)" +msgstr "Wszystkie satelity 2 (USALS)" + +# +msgid "All satellites 3 (USALS)" +msgstr "Wszystkie satelity 3 (USALS)" + +# +msgid "All satellites 4 (USALS)" +msgstr "Wszystkie satelity 4 (USALS)" + +msgid "Allocate" +msgstr "Przydziel" + +msgid "Allocate unused memory index" +msgstr "Przydziel nieużywany indeks pamięci" + +msgid "Allow quit movieplayer with exit" +msgstr "Pozwól na wyjście z odtwarzacza klawiszem exit" + +# +msgid "Allow subtitle language to equal audio language" +msgstr "Zezwalaj na napisy jak ścieżka audio" + +# +msgid "Allow subtitles for hearing impaired" +msgstr "Zezwalaj na napisy dla niesłyszących" + +# +msgid "Alpha" +msgstr "Przezroczystość" + +# +msgid "Alternative" +msgstr "Alternatywne" + +# +msgid "Alternative numbering mode" +msgstr "Alternatywny tryb numerowania" + +# +msgid "Alternative services tuner priority" +msgstr "Priorytet tunera dla serwisów alternatywnych" + +msgid "Always ask" +msgstr "Zawsze pytaj" + +msgid "Always hide infobar" +msgstr "Zawsze ukrywaj infobar" + +# +msgid "An empty filename is illegal." +msgstr "Pusta nazwa pliku jest niedozwolona." + +# +msgid "An error occurred while downloading the packetlist. Please try again." +msgstr "Wystąpił błąd podczas pobierania listy pakietów. Spróbuj ponownie." + +# +msgid "An unknown error occurred!" +msgstr "Wystąpił nieznany błąd!" + +msgid "And will put your receiver in standby over " +msgstr "Odbiornik przejdzie w stan czuwania za" + +# +msgid "Any activity" +msgstr "Każda aktywność" + +# +msgid "Arabic" +msgstr "Arabski" + +# +msgid "Are you sure to remove this entry?" +msgstr "Jesteś pewien, że chcesz usunąć?" + +# +msgid "" +"Are you sure you want to activate this network configuration?\n" +"\n" +msgstr "" +"Czy chcesz aktywować konfigurację sieci?\n" +"\n" + +# +msgid "" +"Are you sure you want to delete\n" +"the following backup:\n" +msgstr "" +"Jesteś pewien, że chcesz usunąć\n" +"następujący backup:\n" + +# +msgid "Are you sure you want to exit this wizard?" +msgstr "Jesteś pewien, że chcesz wyjść?" + +# +msgid "" +"Are you sure you want to restart your network interfaces?\n" +"\n" +msgstr "" +"Chcesz zrestartować interfejs sieciowy?\n" +"\n" + +# +#, python-format +msgid "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Jesteś pewien, że chcesz przywrócić\n" +"następujący backup:\n" +"%s\n" +"Odbiornik zrestartuje się po przywróceniu backupu!" + +# +msgid "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Jesteś pewien że chcesz przywrócić backup?\n" +"Odbiornik zrestartuje się po przywróceniu backupu!" + +# +msgid "Artist" +msgstr "Artysta" + +msgid "Arts/Culture" +msgstr "Kultura/Sztuka" + +# +msgid "Ask user" +msgstr "Zapytaj użytkownika" + +msgid "Aspect ratio" +msgstr "" + +# +msgid "Assigned CAIds:" +msgstr "Przyporządkowane CAIDy:" + +# +msgid "Assigned services/provider:" +msgstr "Przyporządkowane kanały/nadawcy" + +# +msgid "At beginning" +msgstr "Na początku" + +# +msgid "At end" +msgstr "Na końcu" + +# +msgid "Audio" +msgstr "Dźwięk" + +msgid "Audio PID" +msgstr "" + +# +msgid "Audio language selection 1" +msgstr "Preferowana ścieżka audio 1" + +# +msgid "Audio language selection 2" +msgstr "Preferowana ścieżka audio 2" + +# +msgid "Audio language selection 3" +msgstr "Preferowana ścieżka audio 3" + +# +msgid "Audio language selection 4" +msgstr "Preferowana ścieżka audio 4" + +# +msgid "Audio options..." +msgstr "Opcje dźwięku..." + +# +#, python-format +msgid "Audio track (%s) format" +msgstr "Format ścieżki audio (%s)" + +# +#, python-format +msgid "Audio track (%s) language" +msgstr "Język ścieżki audio (%s)" + +# +msgid "Author: " +msgstr "Autor: " + +# +msgid "Authoring mode" +msgstr "Tryb tworzenia" + +# +#. TRANSLATORS: (aspect ratio policy: always try to display as fullscreen, when there is no content (black bars) on left/right, even if this breaks the aspect. +msgid "Auto" +msgstr "Auto" + +# +msgid "Auto chapter split every ? minutes (0=never)" +msgstr "Automatyczny podział rozdziałów co ? minuty (0=nigdy)" + +# +msgid "Auto flesh" +msgstr "Auto flesh" + +msgid "Auto focus" +msgstr "Auto wyostrzanie" + +msgid "Auto focus commencing ..." +msgstr "Auto wyostrzanie rozpoczęte..." + +# +msgid "Auto language selection" +msgstr "Automatyczny wybór języka" + +# +msgid "Auto scart switching" +msgstr "Automatyczne przełączanie 'scart'" + +# +msgid "Automatic" +msgstr "Automatycznie" + +# +msgid "Automatic scan" +msgstr "Skanowanie automatyczne" + +msgid "Automatically start timeshift after" +msgstr "Automatycznie uruchom timeshift po" + +msgid "Automatically turn on external subtitles" +msgstr "Automatycznie włącz napisy zewnętrzne" + +# +msgid "Available format variables" +msgstr "Dostępne zmienne formatu" + +# +msgid "B" +msgstr "B" + +# +msgid "BER" +msgstr "BER" + +# +msgid "BER:" +msgstr "BER:" + +# +msgid "Back" +msgstr "Powrót" + +# +msgid "Background" +msgstr "Tło" + +# +msgid "Background color" +msgstr "Kolor tła" + +# +msgid "Background delete option" +msgstr "Usuwanie plików w tle" + +# +msgid "Background delete speed" +msgstr "Szybkość usuwania plików w tle" + +# +msgid "Backup completed." +msgstr "Zakończono tworzenie backupu." + +# +msgid "Backup failed." +msgstr "Tworzenie backupu bie powiódło się." + +# +msgid "Backup is running..." +msgstr "Tworzenie backupu..." + +# +msgid "Backup system settings" +msgstr "Backup ustawień systemowych" + +# +msgid "Band" +msgstr "Pasmo" + +# +msgid "Bandwidth" +msgstr "Pasmo" + +msgid "Basque" +msgstr "Baskijski" + +# +msgid "Begin time" +msgstr "Czas rozpoczęcia" + +msgid "Behavior of 'pause and ok' when paused" +msgstr "" + +# +msgid "Behavior of 0 key in PiP-mode" +msgstr "Zachowanie przycisku 0 w trybie PiP" + +# +msgid "Behavior when a movie is started" +msgstr "Zachowanie przy rozpoczęciu odtwarzania" + +# +msgid "Behavior when a movie is stopped" +msgstr "Zachowanie po zastopowaniu odtwarzania" + +# +msgid "Behavior when a movie reaches the end" +msgstr "Zachowanie gdy film osiąga koniec" + +msgid "Big PiP" +msgstr "" + +# +msgid "Bitrate:" +msgstr "" + +msgid "Black screen" +msgstr "" + +msgid "Black screen till locked" +msgstr "" + +# +msgid "Block noise reduction" +msgstr "Blokowa redukcja szumów" + +# +msgid "Blue boost" +msgstr "Niebieski" + +# +msgid "Bookmarks" +msgstr "Zakładki" + +# +msgid "Brightness" +msgstr "Jasność" + +msgid "Bulgarian" +msgstr "Bułgarski" + +# +msgid "Burn DVD" +msgstr "Nagraj DVD" + +# +#, python-format +msgid "Burn audio track (%s)" +msgstr "Nagraj ścieżkę audio (%s)" + +# +msgid "Burn existing image to DVD" +msgstr "Nagraj istniejący 'obraz' na DVD" + +msgid "Burn to DVD" +msgstr "Nagraj na DVD..." + +# +msgid "Bus: " +msgstr "Bus:" + +msgid "By default, SNR will be shown in dB (when supported by the tuner). This setting forces SNR to be shown as a percentage instead." +msgstr "Domyślnie SNR jest wyświetlana w dB (jeśli wspierane przez tuner). To ustawienie wymusza wyświetlanie SNR w procentach." + +# +msgid "C" +msgstr "C" + +# +msgid "C-Band" +msgstr "Pasmo C" + +# +msgid "CH" +msgstr "" + +# +msgid "CI assignment" +msgstr "Zadania CI" + +# +msgid "CVBS" +msgstr "CVBS" + +# +msgid "Cable" +msgstr "Kablówka" + +# +msgid "Cable Scan" +msgstr "Skanowanie kablówki" + +# +msgid "Cache thumbnails" +msgstr "Trzymaj (w cache) miniatury " + +msgid "Calculate" +msgstr "Oblicz" + +msgid "Calculate all positions" +msgstr "Skalkuluj wszystkie pozycje" + +msgid "Calculation complete" +msgstr "Kalkulowanie zakończone" + +msgid "Calibrate" +msgstr "Kalibruj" + +msgid "Can be used for different fps between external subtitles and video." +msgstr "Można użyć tej opcji gdy fps w napisach zewnętrznych i w filmie różni się" + +# +msgid "Cancel" +msgstr "Anuluj" + +msgid "Cannot determine" +msgstr "Nie można określić" + +msgid "Cannot find any signal ..., aborting !" +msgstr "Brak sygnału...., przerywam!" + +msgid "Cannot move files on a different disk or system to the trash can" +msgstr "Plików z innego dysku/systemu nie można przenieść do kosza." + +# +msgid "Cannot move to trash can" +msgstr "Nie można przenieść do 'Kosza'" + +# +msgid "Capacity: " +msgstr "Pojemność:" + +# +msgid "Card" +msgstr "Karta" + +msgid "Cascade PiP" +msgstr "" + +# +msgid "Center DVB subtitles" +msgstr "Wyśrodkuj napisy DVB" + +msgid "Center time-labels and remove date" +msgstr "Wyśrodkuj etykiety czasu i usuń datę" + +# +msgid "Change bouquets in quickzap" +msgstr "Automatyczna zmiana bukietów" + +# +msgid "Change pin code" +msgstr "Zmień kod pin" + +# +msgid "Change recording (duration)" +msgstr "Zmień czas trwania nagrania" + +# +msgid "Change recording (endtime)" +msgstr "Zmień czas zakończenia nagrania" + +msgid "Change repeat and delay settings?" +msgstr "Zmienić ustawienia powtórzeń i opóźnienia?" + +# +msgid "Change service PIN" +msgstr "Zmien PIN kanału" + +# +msgid "Change service PINs" +msgstr "Zmień PIN kanałów" + +# +msgid "Change setup PIN" +msgstr "Zmień PIN ustawień" + +# +msgid "Change step size" +msgstr "Zmień rozmiar kroku" + +# +msgid "Change timer" +msgstr "Zmień timer" + +msgid "Changelog" +msgstr "" + +# +msgid "Channel" +msgstr "Kanał" + +# +msgid "Channel list type" +msgstr "Typ listy kanałów" + +# +msgid "Channel not in services list" +msgstr "Kanału nie ma na liście serwisów" + +# +msgid "Channel selection" +msgstr "Wybór kanałów" + +# +msgid "Channel:" +msgstr "Kanał:" + +# +msgid "Channellist menu" +msgstr "Menu listy kanałów" + +# +msgid "Chap." +msgstr "Rozdz." + +# +msgid "Chapter" +msgstr "Rozdział" + +# +msgid "Chapter:" +msgstr "Rozdział:" + +# +msgid "Check" +msgstr "Sprawdź" + +msgid "Check the internet connection" +msgstr "Sprawdź połączenie internetowe" + +msgid "Check the internet connection again" +msgstr "Sprawdź połączenie internetowe ponownie" + +# +msgid "Checking filesystem..." +msgstr "Sprawdzanie systemu plików..." + +msgid "Checking the internet connection" +msgstr "Sprawdzanie połączenia internetowego" + +#, python-format +msgid "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" +msgstr "" +"Sprawdzanie tunera %d\n" +"DiSEqC port %s dla %s" + +msgid "Children/Youth" +msgstr "Dla dzieci/młodzieży" + +msgid "Choose which tuner to configure." +msgstr "Wybierz tuner do skonfigurowania" + +# +msgid "Circular left" +msgstr "Kołowa lewa" + +# +msgid "Circular right" +msgstr "Kołowa prawa" + +# +msgid "Cleanup" +msgstr "Czyszczenie" + +msgid "Clear" +msgstr "Czyść" + +# +msgid "Clear before scan" +msgstr "Czyść przed skanowaniem" + +# +msgid "Clear fixed" +msgstr "Wyczyść stały" + +# +msgid "Clear log" +msgstr "Wyczyść log" + +# +msgid "Clear playlist" +msgstr "Wyczyść playlistę" + +# +msgid "Close" +msgstr "Zamknij" + +msgid "Close PiP on exit" +msgstr "Wyłączaj PiP klawiszem exit" + +# +msgid "Close title selection" +msgstr "Zamknij wybór tytułu" + +msgid "Code rate HP" +msgstr "" + +msgid "Code rate LP" +msgstr "" + +# +msgid "Coderate HP" +msgstr "Coderate HP" + +# +msgid "Coderate LP" +msgstr "Coderate LP" + +# +msgid "Collection name" +msgstr "Nazwa kolekcji" + +# +msgid "Collection settings" +msgstr "Ustawienia kolekcji" + +# +msgid "Color format" +msgstr "Format koloru" + +# +msgid "Command execution..." +msgstr "Wykonywanie polecenia..." + +# +msgid "Command order" +msgstr "Kolejność poleceń" + +# +msgid "Common Interface" +msgstr "Moduł dostępu CI" + +# +msgid "Common Interface assignment" +msgstr "Zadania Modułu CI" + +# +msgid "Communication" +msgstr "Komunikacja" + +# +msgid "Compact flash" +msgstr "Compact flash" + +# +msgid "Complete" +msgstr "Zakończ" + +# +msgid "Complex (allows mixing audio tracks and aspects)" +msgstr "Kompleksowe (pozwala mixować ścieżki i rodzaje audio)" + +# +msgid "Composition of the recording filenames" +msgstr "Składnia nazw nagrań" + +msgid "Configuration mode" +msgstr "Tryb konfiguracji" + +#, python-format +msgid "Configuration mode: %s" +msgstr "Tryb konfiguracji: %s" + +# +msgid "Configuration..." +msgstr "Konfiguracja..." + +msgid "Configure an additional delay to improve external subtitle synchronisation." +msgstr "Ustaw dodatkowe opóźnienie, aby polepszyć synchronizację napisów zewnętrznych" + +msgid "Configure an additional delay to improve subtitle synchronisation." +msgstr "Ustaw dodatkowe opóźnienie, aby polepszyć synchronizację napisów" + +msgid "Configure for how long the infobar will remain visible after activation." +msgstr "Skonfiguruj czas wyświetlania paska info" + +msgid "Configure for how many minutes finished events should remain visible in the EPG. Useful when you need information about an event which has just finished, or has been delayed." +msgstr "Skonfiguruj przez ile minut zakończone audycje pozostaną widoczne w EPG. Przydatne, gdy potrzebujesz informacji o programie, który właśnie się zakończył lub opóźnił się ." + +msgid "Configure how recording filenames are constructed." +msgstr "Skonfiguruj jak mają wyglądać nazwy plików nagrań." + +msgid "Configure how the fan should operate" +msgstr "Skonfiguruj tryb pracy wentylatora" + +msgid "Configure if and how crypto icons will be shown in the channel selection list." +msgstr "Skonfiguruj czy i jak wyświetlać w liście ikony informujące o tym, że kanał jest kodowany." + +msgid "Configure if and how long the latest service in the PiP will be remembered." +msgstr "" + +msgid "Configure if and how service type icons will be shown in the channel selection list." +msgstr "Skonfiguruj czy i jak wyświetlać ikony typu w liście kanałów." + +msgid "Configure if and how wide columns will be shown in the channel selection list." +msgstr "Skonfiguruj czy i jakiej szerokości wyświetlać kolumny w liście wyboru kanałów. Liczba pikseli wyznacza szerokość kolumny z nazwami kanałów" + +msgid "Configure if service picons will be shown in the channel selection list." +msgstr "Skonfiguruj czy wyświetlać pikony w liście kanałów." + +# +msgid "Configure interface" +msgstr "Konfiguracja interfejsu" + +# +msgid "Configure nameservers" +msgstr "Konfiguracja DNS" + +msgid "Configure on which devices the background delete option should be used." +msgstr "Skonfiguruj dla jakich urządzeń opcja usuwania w tle ma być użyta." + +# +msgid "Configure remote control type" +msgstr "Skonfiguruj typ pilota zdalnego sterowania" + +msgid "Configure the DiSEqC mode for this LNB." +msgstr "Skonfiguruj tryb DiSEqC dla tego LNB." + +# +msgid "Configure the IP address." +msgstr "Ustaw adres IP" + +msgid "Configure the aspect ratio of the screen." +msgstr "Skonfiguruj aspect ratio." + +msgid "Configure the behavior of the 'pause and ok' key when movie playback is already paused." +msgstr "" + +# +msgid "Configure the behavior when movie playback is manually stopped." +msgstr "Skonfiguruj zachowanie po zastopowaniu odtwarzania." + +# +msgid "Configure the behavior when movie playback is started." +msgstr "Skonfiguruj zachowanie przy rozpoczęciu odtwarzania." + +msgid "Configure the behavior when reaching the end of a movie, during movie playback." +msgstr "Skonfiguruj zachowanie gdy odtwarzanie filmu osiągnie koniec." + +msgid "Configure the border width of the subtitles. The dark border makes the subtitles easier to read on a light background." +msgstr "Skonfiguruj szerokość obramowania napisów. Ciemne obramowanie sprawia, że napisy są bardziej czytelne na jasnym tle. " + +msgid "Configure the brightness level of the front panel display during standby." +msgstr "Skonfiguruj jasność wyświetlacza w trybie standby." + +msgid "Configure the brightness level of the front panel display." +msgstr "Sknfiguruj jasność wyświetlacza na panelu frontowym." + +msgid "Configure the color of the external subtitles, alternative (normal in white, italic in yellow, bold in cyan, underscore in green), white or yellow." +msgstr "Wybierz kolor napisów zewnętrznych: alternatywny (normalne - białe, kursywa- żółte, pogrubione - niebieskie), biały lub żółty." + +msgid "Configure the color of the teletext subtitles." +msgstr "Skonfiguruj kolor napisów teletext," + +msgid "Configure the contrast level of the front panel display." +msgstr "Skonfiguruj kontrast wyświetlacza na frontowym panelu." + +msgid "Configure the cursor behaviour in the channel selection list. When opening the channel selection list you can keep on the current service or already select up/down and you are able to revert the B+/B- buttons." +msgstr "Skonfiguruj zachowanie kursora w liście wyboru kanałów. Można skonfigurować aby kursor był zawsze na aktualnie włączonym kanale przy wejściu w listę kanałów strzałkami góra/dół; można także odwrócić przełączanie bukietów klawiszami B+/B- w liście." + +msgid "Configure the duration in hours the receiver should go to standby when the receiver is not controlled." +msgstr "Ustaw czas (w godzinach) po jakim odbiornik przełączy się w tryb czuwania, gdy pozostaje nieaktywny." + +msgid "Configure the duration in minutes for the screensaver." +msgstr "Ustaw w minutach czas po jakim pojawi się wygaszacz ekranu." + +msgid "Configure the duration in minutes for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +msgstr "Ustaw czas (w minutach) dla wyłącznika czasowego. Wybierz opcję i wciśnij OK lub zielony aby uruchomić/zatrzymać sleeptimer. " + +msgid "Configure the duration when the receiver should go to shut down in case the receiver is in standby mode." +msgstr "Ustaw czas przebywania w trybie czuwania, po jakim odbiornik automatycznie wyłączy się." + +msgid "Configure the first audio language (highest priority)." +msgstr "Skonfiguruj pierwszy język ścieżki audio (najwyższy priorytet)" + +msgid "Configure the first subtitle language (highest priority)." +msgstr "Skonfiguruj pierwszy język napisów (najwyższy priorytet)" + +msgid "Configure the font size of the subtitles." +msgstr "Skonfiguruj rozmiar czcionki napisów teletext." + +msgid "Configure the fourth audio language." +msgstr "Skonfiguruj język czwartej ścieżki audio," + +# +msgid "Configure the fourth subtitle language." +msgstr "Skonfiguruj czwarty język napisów" + +msgid "Configure the function of a long press on the power button." +msgstr "Skonfiguruj zachowanie przycisku 'power' przy długim naciśnięciu." + +msgid "Configure the function of a short press on the power button." +msgstr "Skonfiguruj zachowanie przycisku 'power' przy krótkim naciśnięciu." + +msgid "Configure the function of the '0' button do when PIP is active." +msgstr "Skonfiguruj zachowanie przycisku '0' gdy PiP jest aktywny. " + +# +msgid "Configure the gateway." +msgstr "Skonfiguruj ustawienia 'bramy'." + +msgid "Configure the general audio delay of Dolby Digital sound tracks." +msgstr "Skonfiguruj ogólne opóźnienie dla ścieżek audio Dolby Digital." + +msgid "Configure the general audio delay of stereo sound tracks." +msgstr "Skonfiguruj ogólne opóźnienie dla ścieżek audio stereo." + +msgid "Configure the hard disk drive to go to standby after the specified idle time." +msgstr "Skonfiguruj czas po jakim dysk twardy ma przechodzić w tryb uśpienia." + +msgid "Configure the horizontal alignment of the subtitles." +msgstr "Skonfiguruj poziome wyrównanie napisów." + +msgid "Configure the initial fast forward speed. When you press the fast forward button, winding will start at this speed." +msgstr "Skonfiguruj początkową prędkość przewijania w przód. Gdy wciśniesz przycisk [>>] przewijanie rozpocznie się z tą prędkością." + +msgid "Configure the initial rewind speed. When you press the rewind button, winding will start at this speed." +msgstr "Skonfiguruj początkową prędkość przewijania wstecz. Gdy wciśniesz przycisk [<<] przewijanie rozpocznie się z tą prędkością." + +msgid "Configure the latitude of your location." +msgstr "Skonfiguruj szerokość geograficzną dla swojej lokalizacji." + +msgid "Configure the longitude of your location." +msgstr "Skonfiguruj długość geograficzną swojej lokalizacji." + +msgid "Configure the minimum amount of disk space to be available for recordings. When the amount of space drops below this value, deleted items will be removed from the trash can." +msgstr "Określ minimalną przestrzeń dyskowej zarezerwowaną dla nagrań. W przypadku spadku poniżej tego progu, usunięte pliki zostaną wykasowane z kosza." + +# +msgid "Configure the nameserver (DNS)." +msgstr "Skonfiguruj nameserver (DNS)." + +# +msgid "Configure the netmask." +msgstr "Skonfiguruj maskę sieci." + +msgid "Configure the number of days after which items are automaticaly removed from the trash can." +msgstr "Skonfiguruj ilość dni po których kosz zostaje automatycznie opróżniony." + +msgid "Configure the number of days old timers are kept before they are automatically removed from the timer list." +msgstr "Skonfiguruj ilość dni przez jaką są trzymane wykonane timery, zanim zostaną automatycznie usunięte z listy." + +msgid "Configure the offline decoding delay in milliseconds. The configured delay is observed at each control word parity change." +msgstr "Skonfiguruj opóźnienie dekodowania offline w milisekundach. Opóźnienie jest uwzględniane przy każdej zmianie CW." + +# +msgid "Configure the possible fast forward speeds." +msgstr "Skonfiguruj dostępne prędkości przewijania w przód" + +msgid "Configure the possible rewind speeds." +msgstr "Skonfiguruj dostępne prędkości przewijania w tył." + +msgid "Configure the primary EPG language." +msgstr "Skonfiguruj pierwszy język EPG." + +msgid "Configure the refresh rate of the screen." +msgstr "Skonfiguruj wartość odświeżania ekranu." + +msgid "Configure the screen resolution in PC output mode." +msgstr "Skonfiguruj rozdzielczość ekranu w trybie PC." + +msgid "Configure the second audio language." +msgstr "Skonfiguruj język drugiej ścieżki audio." + +# +msgid "Configure the second subtitle language." +msgstr "Skonfiguruj drugi język napisów." + +msgid "Configure the secondary EPG language." +msgstr "Skonfiguruj drugi język EPG." + +msgid "Configure the sharpness of the video scaling." +msgstr "Skonfiguruj ostrość skalowania video" + +msgid "Configure the skip time interval for the '1'/'3' buttons." +msgstr "Skonfiguruj czas przeskoku dla klawiszy '1'/'3'." + +msgid "Configure the skip time interval for the '4'/'6' buttons." +msgstr "Skonfiguruj czas przeskoku dla klawiszy '4'/'6'." + +msgid "Configure the skip time interval for the '7'/'9' buttons." +msgstr "Skonfiguruj czas przeskoku dla klawiszy '7'/'9'." + +# +msgid "Configure the slow motion speeds." +msgstr "Prędkości odtwarzanie w zwolnionym tempie" + +msgid "Configure the source of the frontend data as shown on the infobars. 'Settings' is as stored on the settings. 'Tuner' is as reported by the tuner." +msgstr "Skonfiguruj źródło danych frontend pokazywanych na pasku info: 'Ustawienia'- tak jak zapisane w liście kanałów, 'Tuner' - tak jak zgłaszane przez tuner." + +msgid "Configure the speed of the background deletion process. Lower speed will consume less hard disk drive performance." +msgstr "Skonfiguruj prędkość usuwania plików w tle. Niższa prędkość będzie w mniejszym stopniu ograniczać wydajność dysku." + +msgid "Configure the speed of the fan" +msgstr "Skonfiguruj prędkość pracy wentylatora" + +msgid "Configure the subtitle delay when timing information is not available." +msgstr "Skonfiguruj opóźnienie napisów, gdy brak informacje o timingu. " + +msgid "Configure the third audio language." +msgstr "Skonfiguruj trzeci język ścieżki audio." + +# +msgid "Configure the third subtitle language." +msgstr "Skonfiguruj trzeci język napisów." + +msgid "Configure the transparency of the OSD." +msgstr "Skonfiguruj przezroczystość OSD." + +msgid "Configure the transparency of the black background of graphical DVB subtitles." +msgstr "Skonfiguruj przezroczystość czarnego tła napisów DVB." + +msgid "Configure the tuner mode." +msgstr "Skonfiguruj tryb tunera." + +msgid "Configure the type of status indication icons shown in the movielist." +msgstr "Skonfiguruj rodzaj ikon statusu wyświetlanych w liscie nagrań." + +msgid "Configure the vertical position of the subtitles, measured from the bottom of the screen." +msgstr "Skonfiguruj pionowe położenie napisów, mierzone od dołu ekranu." + +msgid "Configure the video output mode (or resolution)." +msgstr "Skonfiguruj tryb wyjścia video (lub rozdzielczość)." + +msgid "Configure the way in which the receiver changes channels." +msgstr "Skonfiguruj tryb zmiany kanałów." + +msgid "Configure where completed timers show up in the timer list." +msgstr "Skonfiguruj gdzie wykonane timery mają być wyświetlane w liście." + +msgid "Configure whether (and for how long) a second infobar will be shown when OK is pressed twice. The second infobar contains additional information about the current channel." +msgstr "Skonfiguruj czy (i jak długo) 'second infobar' będzie wyświetlany po dwukrotnym naciśnięciu OK. 'Second infobar' zawiera dodatkowe informacje o aktualnie oglądanym kanale." + +msgid "Configure whether multi channel sound tracks should be downmixed to stereo." +msgstr "Skonfiguruj czy wielokanałowe ścieżki audio mają być downmix'owane do stereo." + +msgid "Configure whether or not an icon should be shown when your motorized dish is moving." +msgstr "Skonfiguruj czy podczas ruchu obrotnicy, ma być wyświetlana ikonka." + +msgid "Configure which access level to use for the configuration menu. Expert level gives access to all items." +msgstr "Skonfiguruj poziom dostępu do menu konfiguracyjnego. Poziom 'Expert' daje dostęp do wszystkich opcji." + +msgid "Configure which color format should be used on the SCART output." +msgstr "Skonfiguruj jaki format koloru ma być użyty na wyjściu SCART." + +msgid "Configure which tuner for recordings will be preferred, when more than one tuner is available." +msgstr "Skonfiguruj, który tuner ma być preferowany dla nagrywania, jeżeli więcej niż jeden tuner jest dostępny." + +msgid "Configure which tuner type will be preferred, when the same service is available on different types of tuners." +msgstr "Skonfiguruj który tuner ma być preferowany, jeżeli kanał jest dostępny z różnych typów tunerów." + +msgid "Configure which tuner will be preferred, when more than one tuner is available. If set to 'auto' the system will give priority to the tuner having the lowest number of channels/satellites." +msgstr "Skonfiguruj który tuner będzie preferowany gdy więcej niż jeden jest dostępny. Gdy ustawione na 'auto', priorytet będzie nadany tunerowi z najniższą ilością kanałów/satelit." + +# +msgid "Configure your internal LAN" +msgstr "Konfiguracja wewnętrznej sieci LAN" + +# +msgid "Configure your network again" +msgstr "Skonfiguruj sieć ponownie" + +# +msgid "Configure your network settings, and press OK to start the scan" +msgstr "Skonfiguruj ustawienia sieci i wciśnij OK aby rozpocząć skanowanie " + +# +msgid "Configure your wireless LAN again" +msgstr "Skonfiguruj ponownie sieć bezprzewodową" + +msgid "Configures which video output connector will be used." +msgstr "Skonfiguruj które wyście wideo ma być użyte." + +# +msgid "Configuring" +msgstr "Konfigurowanie" + +# +msgid "Conflicting timer" +msgstr "Konflikt timera" + +# +msgid "Connect" +msgstr "Połącz" + +# +msgid "Connect to a wireless network" +msgstr "Połącz z siecią bezprzewodową" + +# +msgid "Connected satellites" +msgstr "Podłączone satelity" + +# +msgid "Connected to" +msgstr "Podłączony do" + +# +msgid "Connected!" +msgstr "Połączony!" + +# +msgid "Constellation" +msgstr "Konstelacja" + +# +msgid "Content does not fit on DVD!" +msgstr "Zawartość nie pasuje do DVD!" + +# +msgid "Continue" +msgstr "Kontynuuj" + +# +msgid "Continue in background" +msgstr "Kontynuuj w tle" + +# +msgid "Continue playback" +msgstr "Kontynuuj odtwarzanie" + +# +msgid "Continue playing" +msgstr "Kontynuuj odtwarzanie" + +msgid "Continues play (loop)" +msgstr "Odtwarzaj kolejne (w pętli)" + +# +msgid "Contrast" +msgstr "Kontrast" + +msgid "Convert ext3 filesystem to ext4" +msgstr "Konwertuj ext3 do ext4" + +msgid "Convert ext3 to ext4" +msgstr "Konwertuj ext3 do ext4" + +msgid "Converting ext3 to ext4..." +msgstr "Konwertuje ext3 do ext4..." + +# +msgid "Copy" +msgstr "Kopiuj" + +msgid "Could not connect to receiver .NFI image feed server:" +msgstr "" + +msgid "Could not find installed channel list." +msgstr "Nie znaleziono zainstalowanej listy kanałów. " + +# +msgid "Could not load medium! No disc inserted?" +msgstr "Nie można odczytać nośnika. Czy płyta jest w napędzie?" + +# +msgid "Could not open Picture in Picture" +msgstr "Nie mozna otworzyć PiP" + +# +#, python-format +msgid "Could not record due to conflicting timer %s" +msgstr "Nie można nagrać z powodu konfliktu timera %s" + +# +#, python-format +msgid "Could not record due to invalid service %s" +msgstr "Nie można nagrywać z powodu nieprawidłowego %s kanału" + +# +msgid "Create DVD-ISO" +msgstr "Utwórz DVD-ISO" + +# +msgid "Create more detailed crash log" +msgstr "Twórz szczegółowe crashlogi" + +# +#, python-format +msgid "Creating directory %s failed." +msgstr "Tworzenie katalogu %s nie powiodło się." + +msgid "Creating filesystem" +msgstr "Tworzenie systemu plików" + +msgid "Creating partition" +msgstr "Tworzenie partycji" + +# +msgid "Croatian" +msgstr "Chorwacki" + +# +msgid "Current CEC address" +msgstr "Aktualny adres CEC" + +# +msgid "Current device: " +msgstr "Bieżące urządzenie:" + +msgid "Current event EPG" +msgstr "EPG aktualego wydarzenia" + +# +#, python-format +msgid "Current mode: %s \n" +msgstr "Aktualny tryb: %s \n" + +# +msgid "Current settings:" +msgstr "Aktualne ustawienia:" + +# +msgid "Current transponder" +msgstr "Aktualny transponder" + +# +msgid "Current value: " +msgstr "Aktualna wartość:" + +# +msgid "Current version:" +msgstr "Aktualna wersja:" + +# +msgid "Currently installed image" +msgstr "Aktualnie zainstalowane image" + +msgid "Currently the commit log cannot be retrieved - please try later again" +msgstr "Commit log nie może zostać teraz pobrany - spróbuj ponownie później" + +# +msgid "Custom skip time for '1'/'3' buttons" +msgstr "Czas przeskoku dla klawiszy '1'/'3'" + +# +msgid "Custom skip time for '4'/'6' buttons" +msgstr "Czas przeskoku dla klawiszy '4'/'6'" + +# +msgid "Custom skip time for '7'/'9' buttons" +msgstr "Czas przeskoku dla klawiszy '7'/'9'" + +# +msgid "Customize" +msgstr "Konfiguracja" + +msgid "Customize channel list cursor behavior" +msgstr "Zachowanie kursora w liście kanałów" + +# +msgid "Cut" +msgstr "Wytnij" + +# +msgid "Cutlist editor..." +msgstr "Edytor cięcia filmu" + +# +msgid "Czech" +msgstr "Czeski" + +# +msgid "D" +msgstr "D" + +# +msgid "DHCP" +msgstr "DHCP" + +# +msgid "DMM advanced" +msgstr "DMM zaawansowane" + +msgid "DMM normal" +msgstr "" + +# +msgid "DUAL LAYER DVD" +msgstr "DUAL LAYER DVD" + +# +msgid "DVB subtitle black transparency" +msgstr "Przezroczystość tła napisów DVB" + +msgid "DVB-C" +msgstr "" + +msgid "DVB-C ANNEX C" +msgstr "" + +# +msgid "DVB-S" +msgstr "DVB-S" + +# +msgid "DVB-S2" +msgstr "DVB-S2" + +msgid "DVB-T" +msgstr "" + +msgid "DVB-T2" +msgstr "" + +msgid "DVD data format" +msgstr "Frormat danych DVD" + +# +msgid "DVD file browser" +msgstr "Przeglądarka DVD" + +# +msgid "DVD media toolbox" +msgstr "Narzędzia DVD" + +# +msgid "DVD player" +msgstr "Odtwarzacz DVD" + +# +msgid "DVD titlelist" +msgstr "Tytuły DVD" + +# +msgid "Danish" +msgstr "Duński" + +# +msgid "Date" +msgstr "Data" + +# +msgid "Date/time input" +msgstr "Czas / Data" + +# +msgid "Deep standby" +msgstr "Głębokie czuwanie" + +# +msgid "Default" +msgstr "Domyślny" + +# +msgid "Default movie location" +msgstr "Domyślna lokalizacja nagrań" + +# +msgid "Default settings" +msgstr "Ustawienia domyślne" + +msgid "Delay before key repeat starts:" +msgstr "Opóźnienie przed rozpoczęciem powtórzenia klawisza:" + +msgid "Delay for external subtitles" +msgstr "Opóźnienie dla napisów zewnętrznych" + +# +msgid "Delete" +msgstr "Usuń" + +# +msgid "Delete entry" +msgstr "Skasuj wpis" + +# +msgid "Delete failed!" +msgstr "Usunięcie nie powiodło się!" + +# +msgid "Delete file" +msgstr "Usuń plik" + +# +msgid "Delete playlist entry" +msgstr "Usuń pozycję playlisty" + +# +msgid "Delete saved playlist" +msgstr "Usuń zachowaną playlistę" + +# +msgid "Delete timer" +msgstr "Usuń timer" + +# +msgid "Delete..." +msgstr "Usuń..." + +# +msgid "Deleted" +msgstr "Usunięto" + +# +msgid "Deleted items" +msgstr "Usunięte pliki" + +msgid "Depth" +msgstr "Głębia" + +# +msgid "Descramble http streams" +msgstr "Dekoduj stream http" + +# +msgid "Description" +msgstr "Opis" + +# +msgid "Deselect" +msgstr "Odznacz" + +msgid "Details for plugin: " +msgstr "Szczegóły dotyczące wtyczki:" + +# +msgid "Detected HDD:" +msgstr "Wykryto HDD:" + +# +msgid "Detected NIMs:" +msgstr "Wykryto tunery:" + +msgid "Devicename:" +msgstr "Nazwa urządzenia:" + +msgid "Devide" +msgstr "Podziel" + +# +msgid "DiSEqC" +msgstr "DiSEqC" + +# +msgid "DiSEqC 1.0 command" +msgstr "Komenda DiSEqC 1.0" + +# +msgid "DiSEqC 1.1 command" +msgstr "Komenda DiSEqC 1.1" + +# +msgid "DiSEqC 1.1 repeats" +msgstr "Powtórzenia DiSEqC 1.1" + +# +msgid "DiSEqC A/B" +msgstr "DiSEqC A/B" + +# +msgid "DiSEqC A/B/C/D" +msgstr "DiSEqC A/B/C/D" + +# +msgid "DiSEqC mode" +msgstr "Tryb DiSEqC" + +# +#, python-format +msgid "DiSEqC port %s: %s" +msgstr "Port DiSEqC %s: %s" + +# +msgid "DiSEqC-tester settings" +msgstr "DiSEqC - ustawienia testera" + +# +msgid "Dialing:" +msgstr "Wybieranie:" + +# +msgid "Digital contour removal" +msgstr "Cyfrowe usunięcie konturu" + +# +msgid "Direct playback of linked titles without menu" +msgstr "Bezpośrednie odtwarzanie tytułów bez menu" + +msgid "Directory" +msgstr "Katalog" + +# +#, python-format +msgid "Directory %s does not exist." +msgstr "Katalog %s nie istnieje." + +# +#, python-format +msgid "Directory %s nonexistent." +msgstr "Katalog %s nie istnieje." + +# +msgid "Directory browser" +msgstr "Przeglądarka katalogów" + +#, python-format +msgid "Directory contains %d file(s) and %d sub-directories.\n" +msgstr "Katalog zawiera %d plików i %d podkatalogów.\n" + +#, python-format +msgid "Directory contains %s and %s." +msgstr "Katalog zawiera %s i %s." + +# +msgid "Disable" +msgstr "Wyłącz" + +# +msgid "Disable Picture in Picture" +msgstr "Wyłącz PiP" + +# +msgid "Disable background scanning" +msgstr "Wyłącz skanowanie w tle" + +# +msgid "Disable timer" +msgstr "Wyłącz timer" + +# +msgid "Disabled" +msgstr "Wyłączone" + +# +msgid "Disconnect" +msgstr "Rozłącz" + +# +msgid "Disk space to reserve for recordings (in GB)" +msgstr "Przestrzeń dyskowa zarezerwowana dla nagrań (w GB)" + +# +msgid "Display 16:9 content as" +msgstr "Wyświetlaj zawartość 16:9 jako" + +# +msgid "Display 4:3 content as" +msgstr "Wyświetlaj zawartość 4:3 jako" + +# +msgid "Display >16:9 content as" +msgstr "Wyświetlaj zawartość >16:9 jako" + +# +msgid "Display and userinterface" +msgstr "Wyświetlacz i interfejs użytkownika" + +msgid "Display message before playing next movie" +msgstr "Wyświetlaj info przed odtworzeniem kolejnego filmu" + +# +msgid "Display setup" +msgstr "Wyświetlacz" + +# +msgid "Do not change" +msgstr "Nie zmieniaj" + +# +msgid "Do not record" +msgstr "Nie nagrywaj" + +# +msgid "Do nothing" +msgstr "Nic nie rób" + +# +msgid "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" +msgstr "" +"Czy chcesz sprawdzić sysem plików?\n" +"To może zająć dużo czasu!" + +msgid "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" +msgstr "" +"Czy na pewno chcesz zmienić system plików?\n" +"Operacja jest nieodwracalna!" + +# +#, python-format +msgid "Do you really want to delete %s?" +msgstr "Czy na pewno chcesz usunąć %s?" + +# +#, python-format +msgid "" +"Do you really want to download\n" +"the plugin \"%s\"?" +msgstr "" +"Czy chcesz pobrać\n" +"plugin \"%s\" ?" + +# +msgid "Do you really want to exit?" +msgstr "Czy na pewno chcesz wyjść?" + +# +msgid "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" +msgstr "" +"Czy na pewno chcesz zainicjalizować urządzenie?\n" +"Wszystkie dane zostaną utracone!" + +# +#, python-format +msgid "" +"Do you really want to remove\n" +"the plugin \"%s\"?" +msgstr "" +"Czy chcesz usunąć\n" +"plugin \"%s\" ?" + +# +#, python-format +msgid "Do you really want to remove directory %s from the disk?" +msgstr "Czy na pewno chcesz usunąć katalog %s z dysku?" + +# +#, python-format +msgid "Do you really want to remove your bookmark of %s?" +msgstr "Czy na pewno chcesz usunąć zakładkę %s?" + +msgid "Do you want this?" +msgstr "Czy tego chcesz?" + +# +msgid "Do you want to burn this collection to DVD medium?" +msgstr "Czy chcesz nagrać tą kolekcję na DVD?" + +# +msgid "Do you want to do a service scan?" +msgstr "Czy chcesz wykonać skanowanie kanałów?" + +# +msgid "Do you want to do another manual service scan?" +msgstr "Czy chcesz wykonać kolejne ręczne skanowanie?" + +#, python-format +msgid "Do you want to download the image to %s ?" +msgstr "Czy chcesz pobrać image do %s ?" + +# +msgid "Do you want to install a channel list?" +msgstr "Chcesz zainstalować listę kanałów?" + +# +msgid "Do you want to install the package:\n" +msgstr "Chcesz zainstalować pakiet:\n" + +# +msgid "Do you want to play DVD in drive?" +msgstr "Czy chcesz odtworzyć DVD znajdujące się w napędzie?" + +# +msgid "Do you want to preview this DVD before burning?" +msgstr "Czy chcesz obejrzeć DVD przed jego nagraniem?" + +msgid "Do you want to reboot your receiver?" +msgstr "Chcesz uruchomić ponownie odbiornik?" + +# +msgid "Do you want to remove the package:\n" +msgstr "Chcesz usunąć pakiet:\n" + +# +msgid "Do you want to restore your settings?" +msgstr "Czy chcesz przywrócić własne ustawienia?" + +# +msgid "Do you want to resume this playback?" +msgstr "Czy chcesz wznowić odtwarzanie?" + +#, python-format +msgid "Do you want to update your receiver to %s?" +msgstr "Chcesz zaktualizować oprogramowanie odbiornika do %s?" + +msgid "Do you want to update your receiver?" +msgstr "Chcesz zaktualizować oprogramowanie odbiornika?" + +# +msgid "Do you want to upgrade the package:\n" +msgstr "Chcesz zaktualizować pakiet:\n" + +# +msgid "Don't stop current event but disable coming events" +msgstr "Nie zatrzymuj aktualnego wydarzenia ale wyłącz przyszłe" + +# +#, python-format +msgid "Done - Installed, upgraded or removed %d package (%s)" +msgid_plural "Done - Installed, upgraded or removed %d packages (%s)" +msgstr[0] "Gotowe - zainstalowano, zaktualizowano lub usunięto %d pakiet (%s)" +msgstr[1] "Gotowe - zainstalowano, zaktualizowano lub usunięto %d pakiety (%s)" +msgstr[2] "Gotowe - zainstalowano, zaktualizowano lub usunięto %d pakietów (%s)" + +# +msgid "Download" +msgstr "Pobierz" + +# +#, python-format +msgid "Download %s from server" +msgstr "Pobierz %s z serwera" + +msgid "Download .NFI-files for USB-flasher" +msgstr "" + +# +msgid "Download plugins" +msgstr "Pobierz pluginy" + +# +msgid "Downloadable new plugins" +msgstr "Nowe pluginy do pobrania" + +# +msgid "Downloadable plugins" +msgstr "Pluginy do pobrania" + +# +msgid "Downloading" +msgstr "Pobieranie" + +# +msgid "Downloading plugin information. Please wait..." +msgstr "Pobieranie informacji o pluginach. Proszę czekać..." + +# +msgid "Dutch" +msgstr "Holenderski" + +# +msgid "Dynamic contrast" +msgstr "Dynamiczny kontrast" + +# +msgid "E" +msgstr "E" + +msgid "EPG" +msgstr "" + +# +msgid "EPG language selection 1" +msgstr "Preferowany język EPG 1" + +# +msgid "EPG language selection 2" +msgstr "Preferowany język EPG 2" + +# +msgid "EPG selection" +msgstr "Wybór EPG" + +msgid "EPG settings" +msgstr "EPG" + +# +#, python-format +msgid "ERROR - failed to scan (%s)!" +msgstr "BŁĄD - skanowanie (%s) nie powiodło się!" + +# +msgid "East" +msgstr "Wschód" + +msgid "East limit set" +msgstr "Ustaw limit East" + +# +msgid "Edit" +msgstr "Edytuj" + +# +msgid "Edit DNS" +msgstr "Edytuj DNS" + +# +msgid "Edit bouquets list" +msgstr "Edytuj listę bukietów" + +# +msgid "Edit chapters of current title" +msgstr "Edycja rozdziałów bieżącego tytułu" + +# +msgid "Edit services list" +msgstr "Edytuj listę kanałów" + +# +msgid "Edit settings" +msgstr "Edytuj ustawienia" + +msgid "Edit the nameserver configuration of your receiver.\n" +msgstr "Edytuj ustawienia DNS odbiornika.\n" + +msgid "Edit the network configuration of your receiver.\n" +msgstr "Edytuj ustawienia sieci.\n" + +# +msgid "Edit timer" +msgstr "Edytuj timer" + +# +msgid "Edit title" +msgstr "Edytuj tytuł" + +# +msgid "Edit upgrade source url." +msgstr "Edytuj adres aktualizacji" + +msgid "Education/Science/..." +msgstr "Edukacja/Nauka" + +# +msgid "Electronic Program Guide" +msgstr "EPG" + +# +msgid "Enable" +msgstr "Włącz" + +msgid "Enable 'neutrino' style channel select controlling" +msgstr "" + +msgid "Enable 'neutrino' style zap controlling" +msgstr "" + +# +msgid "Enable 5V for active antenna" +msgstr "Włącz 5V dla aktywnej anteny" + +# +msgid "Enable EIT EPG" +msgstr "Włącz EIT EPG" + +# +msgid "Enable MHW EPG" +msgstr "Włącz MHW EPG" + +# +msgid "Enable Netmed EPG" +msgstr "Włącz Netmed EPG" + +# +msgid "Enable OK for channel selection" +msgstr "Wywołanie listy kanałów klawiszem OK" + +# +msgid "Enable ViaSat EPG" +msgstr "Włącz Viasat EPG" + +# +msgid "Enable Virgin EPG" +msgstr "Włącz Virgin EPG" + +msgid "Enable Wake On LAN" +msgstr "Włącz Wake On LAN" + +msgid "Enable auto fast scan" +msgstr "Włącz automatyczny fast scan" + +msgid "Enable bouquet selection in multi-EPG" +msgstr "Włącz wybór bukietów w multi-EPG" + +# +msgid "Enable freesat EPG" +msgstr "Włącz freesat EPG" + +# +msgid "Enable multiple bouquets" +msgstr "Włącz tryb wielu bukietów" + +# +msgid "Enable parental control" +msgstr "Włącz kontrolę rodzicielską" + +# +msgid "Enable teletext caching" +msgstr "Włącz pamięć telegazety" + +msgid "Enable zapping with CH+/-, B+/-, P+/-" +msgstr "Włącz przełączanie kanałów przyciskami CH+/-, B+/-, P+/-" + +# +msgid "Enabled" +msgstr "Włączone" + +# +msgid "Encrypted: " +msgstr "Szyfrowany:" + +# +msgid "Encryption" +msgstr "Szyfrowanie" + +# +msgid "Encryption key" +msgstr "Klucz szyfrujący" + +# +msgid "Encryption key type" +msgstr "Typ klucza szyfrującego" + +# +msgid "Encryption:" +msgstr "Szyfrowanie:" + +# +msgid "End time" +msgstr "Czas zakończenia" + +msgid "End time to ignore inactivity sleeptimer" +msgstr "Koniec czasu ignorowania sleeptimera bezczynności" + +msgid "End time to ignore shutdown in standby" +msgstr "Koniec ignorowania 'timera wyłączania' w standby" + +# +msgid "English" +msgstr "Angielski" + +# +msgid "Enigma2 skin selector" +msgstr "Enigma2 wybór skina" + +# +msgid "Enter main menu..." +msgstr "Wejdź do menu głównego..." + +# +msgid "Enter pin code" +msgstr "Wpisz PIN" + +# +msgid "Enter the service pin" +msgstr "Wpisz PIN kanału" + +# +msgid "Equal to" +msgstr "Równy" + +# +msgid "Error" +msgstr "Błąd" + +msgid "Error code" +msgstr "Kod błędu" + +# +msgid "Error executing plugin" +msgstr "Błąd podczas uruchamiania pluginu" + +# +#, python-format +msgid "" +"Error: %s\n" +"Retry?" +msgstr "" +"Błąd: %s\n" +"Ponowić?" + +# +msgid "Estonian" +msgstr "Estoński" + +msgid "Ethernet network interface" +msgstr "Interfejs sieciowy ethernet" + +msgid "Event font size (relative to skin size)" +msgstr "Wielkość czcionki (w stos. do czcionki w skinie)" + +# +msgid "Event view" +msgstr "Opis wydarzenia" + +msgid "Event view menu" +msgstr "Menu opisu wydarzenia" + +# +msgid "Everywhere" +msgstr "Wszędzie" + +msgid "Exceeds dual layer medium!" +msgstr "Przekroczona pojemność nośnika dual layer!" + +# +msgid "Execution finished!!" +msgstr "Wykonywanie zakończone!" + +# +msgid "Execution progress:" +msgstr "Postęp wykonywania:" + +# +msgid "Exif" +msgstr "" + +# +msgid "Exit" +msgstr "Wyjście" + +msgid "Exit EPG" +msgstr "Wyjdź z EPG" + +# +msgid "Exit editor" +msgstr "Opuść edytor" + +# +msgid "Exit input device selection." +msgstr "Opuść wybór urządzenia wejściowego." + +msgid "Exit media player?" +msgstr "Wyjść z odtwarzacza?" + +# +msgid "Exit mediaplayer" +msgstr "Wyjdź z mediaplayera" + +# +msgid "Exit movie list" +msgstr "Wyjdź z listy filmów" + +# +msgid "Exit movie player?" +msgstr "Wyjść z odtwarzacza?" + +# +msgid "Exit nameserver configuration" +msgstr "Zamknij menu konfiguracji DNS" + +# +msgid "Exit network interface list" +msgstr "Zamknij listę interfejsów sieciowych" + +# +msgid "Exit network wizard" +msgstr "Opuść konfigurację sieci" + +# +msgid "Exit the wizard" +msgstr "Opuść kreatora" + +# +msgid "Expert" +msgstr "Ekspert" + +msgid "Extend sleeptimer 15 minutes" +msgstr "Wydłuż sleeptimer o 15 minut" + +# +msgid "Extended Software" +msgstr "Rozszerzone oprogramowanie" + +# +msgid "Extended Software Plugin" +msgstr "Rozszerzony plugin" + +# +msgid "Extended network setup plugin..." +msgstr "Plugin do zaawansowanych ustawień sieci..." + +# +msgid "Extended setup..." +msgstr "Ustawienia zaawansowane..." + +# +msgid "Extensions" +msgstr "Rozszerzenia" + +# +msgid "Extensions management" +msgstr "Zarządzanie dodatkami" + +msgid "External PiP" +msgstr "" + +msgid "External subtitle color" +msgstr "Kolor napisów zewnętrznych" + +msgid "Extra motor options" +msgstr "Dodatkowe ustawienia obrotnicy" + +# +msgid "FEC" +msgstr "" + +msgid "FTA" +msgstr "" + +# +msgid "Factory reset" +msgstr "Ustawienia fabryczne" + +# +msgid "Failed" +msgstr "Błąd" + +msgid "Failed to write /tmp/positionersetup.log: " +msgstr "Zapis do /tmp/positionersetup.log nieudany:" + +# +#, python-format +msgid "Fan %d" +msgstr "" + +# +#, python-format +msgid "Fan %d PWM" +msgstr "" + +# +#, python-format +msgid "Fan %d voltage" +msgstr " Napięcie wentylatora %d" + +# +msgid "Fan operation" +msgstr "Tryb pracy wentylatora" + +# +msgid "Fan speed" +msgstr "Prędkość wentylatora" + +# +msgid "Fast" +msgstr "Szybko" + +# +msgid "Fast DiSEqC" +msgstr "Szybki DiSEqC" + +msgid "Fast Scan" +msgstr "" + +# +msgid "Fast epoch" +msgstr "Szybkie odtwarzanie" + +# +msgid "Fast forward speeds" +msgstr "Prędkości przewijania w przód" + +# +msgid "Favourites" +msgstr "Ulubione" + +msgid "File appears to be busy.\n" +msgstr "Plik wydaje się zajęty.\n" + +# +msgid "Filesystem check" +msgstr "Sprawdzanie systemu plików" + +msgid "Final position at" +msgstr "Końcowa pozycja na" + +msgid "Final position at index" +msgstr "Koncowa pozycja z indeksem" + +msgid "Fine movement" +msgstr "Precyzyjne ruchy" + +# +msgid "Finetune" +msgstr "Dostrajanie" + +# +msgid "Finished" +msgstr "Skończone" + +# +msgid "Finished configuring your network" +msgstr "Zakończono konfigurowanie sieci" + +msgid "Finished restarting your network" +msgstr "Zakończono restert sieci" + +# +msgid "Finnish" +msgstr "Fiński" + +# +msgid "Fixed" +msgstr "Stała" + +# +msgid "Flash" +msgstr "Flash" + +# +msgid "Flashing failed" +msgstr "Flashowanie nie powiodło się" + +# +msgid "Following tasks will be done after you press OK!" +msgstr "Poniższe zadania będą wykonane po wciśnięciu OK!" + +# +msgid "Format" +msgstr "Format" + +# +msgid "Forward volume keys" +msgstr "Przekazuj klawisze głośności" + +# +msgid "Frame size in full view" +msgstr "Rozmiar ramki w pełnym widoku" + +# +msgid "French" +msgstr "Francuski" + +# +msgid "Frequency" +msgstr "Częstotliwość" + +# +msgid "Frequency bands" +msgstr "Pasma częstotliwości" + +# +msgid "Frequency scan step size(khz)" +msgstr "Rozmiar kroku skanowania (khz)" + +# +msgid "Frequency steps" +msgstr "Kroki częstotliwości" + +msgid "Frequency:" +msgstr "Częstotliwość:" + +# +msgid "Fri" +msgstr "Pią" + +# +msgid "Friday" +msgstr "Piątek" + +msgid "From :" +msgstr "Z:" + +# +#, python-format +msgid "Frontprocessor version: %d" +msgstr "Wersja frontprocesora: %d" + +# +msgid "Full transparency" +msgstr "Pełna przezroczystość" + +msgid "Fulview resulution" +msgstr "Rozdzielczość w pełnym widoku" + +msgid "Function of OK button" +msgstr "Funkcje klawisza OK" + +msgid "Further Options" +msgstr "Opcje dodatkowe" + +# +msgid "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" +msgstr "" +"GUI musi zostać zrestartowane, aby zastosować nowy skin\n" +"Czy chcesz zrobić restart teraz?" + +# +msgid "Gateway" +msgstr "Brama" + +# +msgid "General AC3 delay" +msgstr "Ogólne opóźnienie AC3" + +# +msgid "General PCM delay" +msgstr "Ogólne opóźnienie PCM" + +# +msgid "Genre" +msgstr "Gatunek" + +# +msgid "German" +msgstr "Niemiecki" + +msgid "Get latest experimental image" +msgstr "" + +msgid "Get latest release image" +msgstr "" + +# +msgid "Getting plugin information. Please wait..." +msgstr "Pobieranie info o pluginach. Proszę czekać..." + +msgid "Go down the list" +msgstr "Przejdź w dół listy" + +msgid "Go to first movie or last item" +msgstr "Idź do pierwszego filmu lub ostatniej pozycji" + +msgid "Go to first movie or top of list" +msgstr "Idź do pierwszego filmu lub na początek listy" + +msgid "Go to first service" +msgstr "Idż do pierwszego kanału" + +msgid "Go to last service" +msgstr "Idż do ostatniego kanału" + +msgid "Go to next event" +msgstr "Idź do następnej audycji" + +msgid "Go to next page of service" +msgstr "Idź do następnej strony z audycjami" + +msgid "Go to previous event" +msgstr "Idź do poprzedniej audycji" + +msgid "Go to previous page of service" +msgstr "Idź do poprzedniej strony z audycjami" + +msgid "Go up the list" +msgstr "Idź w górę listy" + +# +msgid "Goto" +msgstr "" + +# +msgid "Goto 0" +msgstr "" + +msgid "Goto :" +msgstr "" + +msgid "Goto X" +msgstr "" + +msgid "Goto index position" +msgstr "" + +msgid "Goto next day of events" +msgstr "Idź do następnego dnia wydarzeń" + +msgid "Goto next page of events" +msgstr "Idź do następnej strony z audycjami" + +# +msgid "Goto position" +msgstr "Idź na pozycję" + +msgid "Goto previous day of events" +msgstr "Idź do poprzedniego dnia wydarzeń" + +msgid "Goto previous page of events" +msgstr "Idź do poprzedniej strony z audycjami" + +msgid "Goto specific date/time" +msgstr "Idź do konkretnej daty/godziny" + +msgid "GotoX calibration" +msgstr "" + +msgid "GraphMultiEpg Settings" +msgstr "Ustawienia GraphMultiEpg" + +# +msgid "Graphical Multi EPG" +msgstr "Graficzny Multi EPG" + +# +msgid "Greek" +msgstr "Grecki" + +# +msgid "Green boost" +msgstr "Zielony" + +msgid "Guard interval" +msgstr "" + +# +msgid "HD list" +msgstr "Lista HD" + +msgid "HDMI-CEC setup" +msgstr "Ustawienia HDMI-CEC" + +# +msgid "Handle standby from TV" +msgstr "Obsługuj komendę 'standby' z TV" + +# +msgid "Handle wakeup from TV" +msgstr "Obsługuj komendę 'wakeup' z TV" + +# +msgid "Hard disk" +msgstr "Dysk twardy" + +# +msgid "Hard disk setup" +msgstr "Ustawienia dysku HDD" + +# +msgid "Hard disk standby after" +msgstr "'Uśpij' dysk twardy po" + +# +msgid "Harddisk" +msgstr "Dysk twardy" + +msgid "Hardware: " +msgstr "" + +msgid "Hebrew" +msgstr "Hebrajski" + +msgid "Helps setting up your dish" +msgstr "Pomaga ustawić antenę SAT" + +# +msgid "Hidden network" +msgstr "Ukryta sieć" + +# +msgid "Hide CI messages" +msgstr "Ukryj komunikaty CI" + +msgid "Hide channel list in radio mode" +msgstr "Ukryj listę wyboru kanałów w trybie radio" + +msgid "Hide known extensions" +msgstr "Ukryj znane rozszerzenia" + +msgid "Hide number markers" +msgstr "Ukryj markery numeryczne" + +# +msgid "Hide player" +msgstr "Ukryj odtwarzacz" + +# +msgid "Hide zap errors" +msgstr "Ukryj komunikaty błędów przy przełączaniu" + +# +msgid "Hierarchy info" +msgstr "Informacje o hierarchii" + +# +msgid "Hierarchy information" +msgstr "Informacja hierarchii" + +# +msgid "High bitrate support" +msgstr "Obsługa wysokiego bitrate" + +msgid "Hold screen" +msgstr "" + +msgid "Hold till locked" +msgstr "" + +# +msgid "Home" +msgstr "" + +# +msgid "Horizontal" +msgstr "Pozioma (H)" + +msgid "Horizontal turning speed" +msgstr "Prędkość obrotu w poziomie" + +# +msgid "How many minutes do you want to record?" +msgstr "Ile minut ma trwać nagranie?" + +# +msgid "Hue" +msgstr "Odcień" + +# +msgid "Hungarian" +msgstr "Węgierski" + +# +msgid "IP address" +msgstr "Adres IP" + +# +msgid "ISO file is too large for this filesystem!" +msgstr "Plik ISO jest za duży dla tego systemu plików!" + +# +msgid "ISO path" +msgstr "Ścieżka ISO" + +# +msgid "Icons" +msgstr "Ikony" + +# +msgid "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." +msgstr "" +"Jeśli widzisz ten komunikat, coś jest nie tak\n" +"z połączeniem 'scart'. Naciśnij OK aby powrócić." + +# +msgid "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." +msgstr "" +"Jeśli Twój TV posiada poprawę jasności i kontrastu, wyłącz je. Jeśli masz włączoną opcję \"Dynamiczne\", zmień ją na standardową. Dostosuj poziom jasności do własnych upodobań. Zmniejsz kontrast w TV jak tylko możliwe.\n" +"Następnie ustaw jak najniżej poziom jasności, ale tak, aby dwa najniższe odcienie szarości były rozróżnialne.\n" +"Na razie nie troszcz się o odcienie jasności. Zostaną ustawione w kolejnym kroku.\n" +"Jeśli jesteś zadowolony z rezultatu wciśnij OK." + +msgid "Image: " +msgstr "" + +# +msgid "Immediate shutdown" +msgstr "Natychmiastowe wyłączenie" + +# +msgid "In order to record a timer, the TV was switched to the recording service!\n" +msgstr "Aby nagrywać z timera, TV został przełączony na nagrywany kanał!\n" + +# +msgid "In progress" +msgstr "W toku" + +msgid "Inactivity Sleeptimer" +msgstr "Sleeptimer bezczynności" + +# +msgid "Include AIT in http streams" +msgstr "AIT w streamie http" + +# +msgid "Include ECM in http streams" +msgstr "ECMy w streamie http" + +# +msgid "Include EIT in http streams" +msgstr "EIT w streamie http" + +msgid "Incorrect type service for PiP!" +msgstr "Typ serwisu nieobsługiwany w PiP!" + +# +msgid "Increased voltage" +msgstr "Zwiększone napięcie" + +# +msgid "Index" +msgstr "Indeks" + +msgid "Index allocated:" +msgstr "Indeks przypisany:" + +# +msgid "Info" +msgstr "Info" + +# +msgid "Info bar" +msgstr "Pasek info" + +# +msgid "Info bar timeout" +msgstr "Czas wyświetlania paska info" + +msgid "Infobar frontend data source" +msgstr "Źródło danych frontend dla infobar" + +# +msgid "Information" +msgstr "Informacje" + +# +msgid "Init" +msgstr "Init" + +# +msgid "Initial fast forward speed" +msgstr "Początkowa prędkość przewijania w przód" + +# +msgid "Initial location in new timers" +msgstr "Początkowa lokalizacja nowego timera" + +msgid "Initial lock ratio" +msgstr "" + +# +msgid "Initial rewind speed" +msgstr "Początkowa prędkość przewijania wstecz" + +msgid "Initial signal quality" +msgstr "" + +msgid "Initial signal quality:" +msgstr "" + +# +msgid "Initialization" +msgstr "Inicjalizacja" + +# +msgid "Initialize" +msgstr "Inicjuj" + +msgid "Initializing storage device..." +msgstr "Inicjalizacja urządzenia..." + +# +msgid "Input" +msgstr "Wejście" + +msgid "Input device setup" +msgstr "Konfiguracjia urządzenia wejściowego" + +# +msgid "Input devices" +msgstr "Urządzenia wejścia" + +# +msgid "Install" +msgstr "Instalacja" + +# +msgid "Install a new image with a USB stick" +msgstr "Instaluj nowe image z pamięci USB" + +# +msgid "Install a new image with your web browser" +msgstr "Instaluj nowe image z przeglądarki www" + +# +msgid "Install channel list" +msgstr "Zainstaluj listę kanałów" + +# +msgid "Install extensions" +msgstr "Instaluj rozszerzenia" + +# +msgid "Install extensions." +msgstr "Instaluj rozszerzenia" + +# +msgid "Install local extension" +msgstr "Instaluj lokalny pakiet" + +# +msgid "Install picons on" +msgstr "Zainstaluj picony na" + +# +msgid "Install softcam" +msgstr "Zainstaluj softcam" + +msgid "Installation has completed." +msgstr "Instalacja zakończona." + +# +msgid "Installation or removal has completed." +msgstr "Instalacja lub usuwanie zakończone." + +# +msgid "Installing" +msgstr "Instalowanie" + +# +msgid "Installing software..." +msgstr "Instalowanie oprogramowania..." + +# +msgid "Instant recording location" +msgstr "Lokalizacja 'natychmiastowego' nagrania" + +# +msgid "Instant recording..." +msgstr "Natychmiastowe nagranie..." + +# +msgid "Interface: " +msgstr "Interfejs: " + +# +msgid "Intermediate" +msgstr "Pośredni" + +# +msgid "Internal flash" +msgstr "Wewnętrzny flash" + +# +msgid "Internal hdd only" +msgstr "Tylko wewnętrzny hdd" + +msgid "Interval between keys when repeating:" +msgstr "Interwał pomiędzy klawiszami przy powtarzaniu:" + +# +#, python-format +msgid "Invalid directory selected: %s" +msgstr "Wybrano niewłaściwy katalog: %s" + +# +msgid "Invalid location" +msgstr "Nieprawidłowa lokalizacja" + +# +msgid "Invalid transponder data" +msgstr "Błędne dane transpondera" + +# +msgid "Inversion" +msgstr "Inwersja" + +msgid "Invert" +msgstr "Odwróć" + +# +msgid "Ipkg" +msgstr "Ipkg" + +msgid "Is this setting ok?" +msgstr "Użyć tych ustawień?" + +# +msgid "Is this video mode ok?" +msgstr "Czy ten tryb video jest ok?" + +# +msgid "Italian" +msgstr "Włoski" + +msgid "Items per page " +msgstr "Linii na stronie" + +msgid "Items per page for list screen" +msgstr "Linii na stronie (tryb listy)" + +# +msgid "Job overview" +msgstr "Podgląd zadań" + +msgid "Jump to beginning of list" +msgstr "Skocz do początku listy" + +# +msgid "Jump to end of list" +msgstr "Skocz do końca listy" + +# +msgid "Jump to next marked position" +msgstr "Skocz do następnej zaznaczonej pozycji" + +# +msgid "Jump to previous marked position" +msgstr "Skocz do poprzedniej zaznaczonej pozycji" + +# +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect) +msgid "Just scale" +msgstr "Po prostu skaluj" + +msgid "Keep service" +msgstr "Zostaw na aktualnym" + +msgid "Kernel version: " +msgstr "Wersja kernela:" + +# +msgid "Keyboard" +msgstr "Klawiatura" + +# +msgid "Keyboard map" +msgstr "Układ klawiatury" + +# +msgid "Keyboard setup" +msgstr "Ustawienia klawiatury" + +# +msgid "LAN adapter" +msgstr "Adapter LAN" + +msgid "LAN connection" +msgstr "Połączenie LAN" + +# +msgid "LNB" +msgstr "LNB" + +# +msgid "Language" +msgstr "Język" + +# +msgid "Language selection" +msgstr "Wybór języka" + +# +msgid "Last config" +msgstr "Ostatnie ustawienia" + +# +msgid "Last speed" +msgstr "Ostatnia prędkość" + +msgid "Last upgrade: " +msgstr "Ostatnia aktualizacja:" + +msgid "Latest Commits" +msgstr "Ostatnie commit'y" + +# +msgid "Latitude" +msgstr "Szerokość geogr." + +# +msgid "Latvian" +msgstr "Łotewski" + +# +msgid "Leave DVD player?" +msgstr "Opuścić odtwarzacz DVD?" + +# +msgid "Left" +msgstr "Lewy" + +msgid "Left from servicename" +msgstr "Na lewo od nazwy kanału" + +msgid "Leisure hobbies" +msgstr "Hobby/czas wolny" + +# +#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term. +msgid "Letterbox" +msgstr "Letterbox" + +msgid "Letterbox zoom" +msgstr "" + +# +msgid "Limit character set for recording filenames" +msgstr "Limit znaków w nazwie nagrania" + +# +msgid "Limit east" +msgstr "Limit wschodni" + +msgid "Limit the characters that can be used in recording filenames to (7 bit) ascii. This ensures compatibility with operating systems or file systems with limited character sets." +msgstr "Ogranicz znaki które mogą być użyte w nazwach nagrań do (7bit) ascii. To zapewnia kompatybilność z systemami operacyjnymi lub systemami plików z ograniczonymi zestawami znaków." + +# +msgid "Limit west" +msgstr "Limit zachodni" + +msgid "Limits cancelled" +msgstr "Limity wyłaczone" + +msgid "Limits enabled" +msgstr "Limity właczone" + +# +msgid "Limits off" +msgstr "Limity wyłączone" + +# +msgid "Limits on" +msgstr "Limity włączone" + +# +msgid "Link quality:" +msgstr "Jakość sygnału:" + +# +msgid "Link:" +msgstr "Połączenie:" + +# +msgid "Linked titles with a DVD menu" +msgstr "Dostępne tytuły DVD z menu" + +# +msgid "List EPG functions..." +msgstr "Lista rodzajów EPG..." + +# +msgid "List available networks" +msgstr "Lista dostępnych sieci" + +msgid "List mode" +msgstr "Tryb listy" + +# +msgid "List of storage devices" +msgstr "Lista urządzeń przechowywania danych" + +msgid "List type" +msgstr "Typ listy" + +#, python-format +msgid "List version %d, found %d channel" +msgid_plural "List version %d, found %d channels" +msgstr[0] "Wersja listy %d, znaleziono %d kanał" +msgstr[1] "Wersja listy %d, znaleziono %d kanały" +msgstr[2] "Wersja listy %d, znaleziono %d kanałów" + +# +msgid "Listen to the radio..." +msgstr "Słuchaj radia..." + +msgid "Lists reloaded!" +msgstr "" + +# +msgid "Lithuanian" +msgstr "Litewski" + +# +msgid "Load" +msgstr "Otwórz" + +# +msgid "Load Length of Movies in Movielist" +msgstr "Wyświetlaj długości filmów w liście" + +# +msgid "Load length of movies in movie list" +msgstr "Wyświetlaj długości filmów w liście" + +# +msgid "Load playlist" +msgstr "Załaduj playlistę" + +# +msgid "Local network" +msgstr "Sieć lokalna" + +# +msgid "Location" +msgstr "Lokalizacja" + +# +msgid "Location for instant recordings" +msgstr "Lokalizacja dla 'natychmiastowych' nagrań" + +msgid "Lock ratio" +msgstr "" + +# +msgid "Lock:" +msgstr "" + +# +msgid "Log results to harddisk" +msgstr "Zapisuj log na HDD" + +# +msgid "Long filenames" +msgstr "Długie nazwy plików" + +# +msgid "Long key press" +msgstr "Długie naciśnięcie klawisza" + +# +msgid "Longitude" +msgstr "Długość geogr." + +# +msgid "Loop through to" +msgstr "Przez przelotkę do" + +msgid "Luxembourgish" +msgstr "luxemburski" + +# +msgid "MMC card" +msgstr "Karta MMC" + +# +msgid "MORE" +msgstr "Więcej" + +# +msgid "Main menu" +msgstr "Menu główne" + +msgid "Maintain old EPG data for" +msgstr "Trzymaj stare dane EPG przez (w min.)" + +# +msgid "Make this mark an 'in' point" +msgstr "Traktuj znacznik jako punkt 'wejścia'" + +# +msgid "Make this mark an 'out' point" +msgstr "Traktuj znacznik jako punkt 'wyjścia'" + +# +msgid "Make this mark just a mark" +msgstr "Znacznik uniwersalny" + +# +msgid "Manage extensions" +msgstr "Zarządzaj rozszerzeniami" + +# +msgid "Manage your receiver's software" +msgstr "Zarządzaj oprogramowaniem odbiornika" + +# +msgid "Manual" +msgstr "Ręcznie" + +# +msgid "Manual Scan" +msgstr "Skanowanie ręczne" + +# +msgid "Manual configuration" +msgstr "Ręczna konfiguracja" + +# +msgid "Manual scan" +msgstr "Skanowanie ręczne" + +# +msgid "Manual transponder" +msgstr "Własny transponder" + +# +msgid "Manufacturer" +msgstr "Producent" + +# +msgid "Margin after recording (minutes)" +msgstr "Margines po nagraniu (w min)" + +# +msgid "Margin before recording (minutes)" +msgstr "Margines przed nagraniem (w min)" + +# +msgid "Max memory positions" +msgstr "Max. pozycji pamięci" + +msgid "Max. bitrate: " +msgstr "" + +# +msgid "Media player" +msgstr "Odtwarzacz" + +# +msgid "Media scanner" +msgstr "" + +# +msgid "Medium is not a writeable DVD!" +msgstr "Nośnik nie jest zapisywalnym DVD!" + +# +msgid "Medium is not empty!" +msgstr "Nośnik nie jest pusty!" + +msgid "Memory" +msgstr "Pamięć" + +msgid "Memory index" +msgstr "Indeks pamięci" + +# +msgid "Menu" +msgstr "Menu" + +# +msgid "Message" +msgstr "Wiadomość" + +# +msgid "Message..." +msgstr "Wiadomość..." + +#, python-format +msgid "Minimum age %d years" +msgstr "Wiek minimalny %d lat" + +msgid "Minimum send interval" +msgstr "Minimalny interwał wysyłania" + +# +msgid "Missing " +msgstr "Brak" + +# +msgctxt "Satellite configuration mode" +msgid "Mode" +msgstr "Tryb" + +# +msgctxt "Video output mode" +msgid "Mode" +msgstr "Tryb" + +# +msgid "Model: " +msgstr "Model: " + +# +msgid "Modulation" +msgstr "Modulacja" + +# +msgid "Modulator" +msgstr "Modulator" + +# +msgid "Mon" +msgstr "Pon" + +# +msgid "Mon-Fri" +msgstr "Pon-Pią" + +# +msgid "Monday" +msgstr "Poniedziałek" + +# +msgid "Mosquito noise reduction" +msgstr "Punktowa redukcja szumów" + +msgid "Mount" +msgstr "Podmontuj" + +# +msgid "Move" +msgstr "Przenieś" + +# +msgid "Move PiP to main picture" +msgstr "Przełącz PiP do głównego ekranu" + +# +msgid "Move Picture in Picture" +msgstr "Przesuń PiP" + +# +msgid "Move east" +msgstr "Przesuń na wschód" + +# +msgid "Move to other directory" +msgstr "Przenieś do innego folderu" + +msgid "Move to position X" +msgstr "Idź do pozycji X" + +# +msgid "Move west" +msgstr "Przesuń na zachód" + +msgid "Moved to position 0" +msgstr "Przesunięto na pozycję 0" + +msgid "Moved to position at index" +msgstr "Przesunięto na pozycję z indeksem" + +msgid "Movement" +msgstr "Ruch" + +msgid "Movie List Configuration" +msgstr "Konfiguracja listy nagrań" + +msgid "Movie Selection" +msgstr "Filmy / Multimedia" + +msgid "Movie list configuration" +msgstr "Konfiguracja listy kanałów" + +# +msgid "Movie location" +msgstr "Lokalizacja nagrań" + +msgid "Movie selection" +msgstr "Filmy / Multimedia" + +msgid "Movie/Drama" +msgstr "Film/Dramat" + +# +msgid "Movielist menu" +msgstr "Menu listy nagrań" + +msgid "Moving" +msgstr "Dojazd" + +msgid "Moving east ..." +msgstr "Idzie na wscód" + +msgid "Moving to position" +msgstr "Idzie na pozycję" + +msgid "Moving west ..." +msgstr "Idzie na zachód" + +# +msgid "Multi EPG" +msgstr "" + +# +msgid "Multi-EPG bouquet selection" +msgstr "Wybór bukietów w Multi EPG" + +# +msgid "Multimedia" +msgstr "" + +# +msgid "Multiple service support" +msgstr "Wsparcie wielokronego dekodowania" + +msgid "Multiplex" +msgstr "" + +# +msgid "Multisat" +msgstr "" + +# +msgid "Multisat all select" +msgstr "Multisat wybierz wszystkie" + +msgid "Music/Ballet/Dance" +msgstr "Muzyka/Balet/Taniec" + +# +msgid "Mute" +msgstr "Wycisz" + +# +msgid "N/A" +msgstr "N/A" + +# +msgid "NEXT" +msgstr "Następny" + +msgid "NFI image flashing" +msgstr "" + +msgid "NFI image flashing completed. Press Yellow to Reboot!" +msgstr "" + +# +msgid "NIM" +msgstr "Tuner" + +# +msgid "NOW" +msgstr "Teraz" + +# +msgid "NTSC" +msgstr "" + +# +msgid "Name" +msgstr "Nazwa" + +# +msgid "Nameserver" +msgstr "Nameserver (DNS)" + +# +#, python-format +msgid "Nameserver %d" +msgstr "Nameserver %d" + +# +msgid "Nameserver settings" +msgstr "Ustawienia DNS" + +# +msgid "Nameserver setup" +msgstr "Ustawienia DNS" + +msgid "Namespace" +msgstr "Nazwa" + +# +msgid "Netmask" +msgstr "Maska sieci" + +# +msgid "Network" +msgstr "Sieć" + +# +msgid "Network ID" +msgstr "ID sieci" + +# +msgid "Network configuration..." +msgstr "Konfiguracja sieci..." + +# +msgid "Network mount" +msgstr "Udział sieciowy" + +# +#, python-format +msgid "Network mount %s" +msgstr "Udział sieciowy %s" + +msgid "Network name (SSID)" +msgstr "Nazwa sieci (SSID)" + +# +msgid "Network scan" +msgstr "Skanowanie sieci" + +# +msgid "Network setup" +msgstr "Ustawienia sieci" + +# +msgid "Network test" +msgstr "Test sieci" + +# +msgid "Network test..." +msgstr "Test połączenia sieciowego..." + +msgid "Network test: " +msgstr "Test sieci:" + +# +msgid "Network wizard" +msgstr "Wizard konfiguracji sieci" + +# +msgid "Network:" +msgstr "Sieć:" + +# +msgid "New" +msgstr "Nowe" + +# +msgid "New PIN" +msgstr "Nowy PIN" + +# +msgid "New version:" +msgstr "Nowa wersja:" + +msgid "News Current Affairs" +msgstr "Wiadomości / Aktualności" + +msgctxt "button label, 'next screen'" +msgid "Next" +msgstr "Następny" + +msgctxt "now/next: 'next' event label" +msgid "Next" +msgstr "Następnie" + +# +msgid "No" +msgstr "Nie" + +# +msgid "No (supported) DVDROM found!" +msgstr "Nie znaleziono (obsługiwanego) napędu DVDROM!" + +# +msgid "No Connection" +msgstr "Brak połączenia" + +# +msgid "No HDD found or HDD not initialized!" +msgstr "Nie znaleziono HDD lub dysk nie jest zainicjowany!" + +# +msgid "No backup needed" +msgstr "Kopia zapasowa nie jest potrzebna" + +msgid "No cable tuner found!" +msgstr "Nie znaleziono tunera kablowego" + +# +msgid "" +"No data on transponder!\n" +"(Timeout reading PAT)" +msgstr "" +"Brak danych na transponderze!\n" +"(Koniec czasu czytania PAT)" + +# +msgid "No delay" +msgstr "Brak" + +# +msgid "No description available." +msgstr "Brak dostępnego opisu." + +# +msgid "No details for this image file" +msgstr "Brak opisu dla tego image" + +# +msgid "No displayable files on this medium found!" +msgstr "Brak plików do wyświetlenia na tym nośniku!" + +# +msgid "No event info found, recording indefinitely." +msgstr "Nie znaleziono informacji o wydarzeniu, nagrywanie na czas nieokreślony." + +# +msgid "No fast winding possible yet.. but you can use the number buttons to skip forward/backward!" +msgstr "'Przewijanie' nie dostępne (jeszcze)... można użyć klawiszy numerycznych aby przeskoczyć w przód/tył!" + +msgid "No free index available" +msgstr "Brak wolnego indeksu" + +# +msgid "No free tuner!" +msgstr "Brak wolnego tunera!" + +# +msgid "No network connection available." +msgstr "Brak połączenia z siecią." + +# +msgid "No networks found" +msgstr "Nie znaleziono sieci" + +msgid "No new plugins found" +msgstr "Nie znaleziono nowych pluginów" + +# +msgid "No positioner capable frontend found." +msgstr "Nie znaleziono pozycjonera." + +msgid "No satellites configured. Plese check your tuner setup." +msgstr "Brak skonfigurowanych satelitów. Sprawdź ustawienia." + +msgid "No service" +msgstr "Brak kanału" + +# +msgid "No services/providers selected" +msgstr "Brak wybranych kanałów/nadawców" + +# +msgid "No standby" +msgstr "Bez stanu czuwania" + +msgid "No suitable sat tuner found!" +msgstr "Nie znaleziono odpowiedniej głowicy sat!" + +# +msgid "No tags are set on these movies." +msgstr "Brak 'tagów' na tych filmach." + +# +msgid "No timeout" +msgstr "Bez końca" + +# +msgid "No to all" +msgstr "Nie dla wszystkich" + +# +msgid "No transparency" +msgstr "Brak" + +# +msgid "No tuner is configured for use with a diseqc positioner!" +msgstr "Brak skonfigurowanego tunera do współpracy z pozycjonerem diseqc!" + +# +msgid "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Brak włączonego tunera!\n" +"Skonfiguruj tuner przed rozpoczęciem skanowania." + +# +msgid "No updates available" +msgstr "Brak dostępnych aktualizacji." + +msgid "No updates available. Please try again later." +msgstr "Brak aktualizacji. Spróbuj ponownie później." + +# +msgid "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" +msgstr "" +"Nie znaleziono kodu PIN dla kanału!\n" +"Czy chcesz zmienić PIN kanału?\n" +"Gdy wciśniesz NIE ochrona kanału pozostanie wyłączona!" + +# +msgid "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" +msgstr "" +"Nie znaleziono kodu PIN ustawień!\n" +"Czy chcesz zmienić PIN ustawień?\n" +"Gdy wciśniesz NIE ochrona ustawień zostanie wyłączona!" + +msgid "No wireless networks found! Searching..." +msgstr "Nie znaleziono sieci bezprzewodowych! Wyszukiwanie..." + +# +msgid "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." +msgstr "" +"Nie znaleziono działającego adaptera sieciowego.\n" +"Sprawdź czy podłączyłeś kabel sieciowy i czy twoja sieć jest poprawnie skonfigurowana." + +# +msgid "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." +msgstr "" +"Nie znaleziono działającego adaptera sieci bezprzewowej.\n" +"Sprawdź czy podłączyłeś kompatybilne urządzenie WLAN i czy twoja sieć jest poprawnie skonfigurowana." + +# +msgid "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." +msgstr "" +"Nie znaleziono działającego interfejsu sieci bezprzewodowej.\n" +" Sprawdź czy podłączyłeś kompatybilne urządzenie WLAN lub czy włączyłeś twój lokalny interfejs sieciowy." + +# +msgid "No, but restart from begin" +msgstr "Nie, ale odtwórz od początku" + +# +msgid "No, do nothing." +msgstr "Nie, nie rób nic." + +msgid "No, just start my receiver" +msgstr "Nie, po prostu włącz odbiornik" + +msgid "No, never" +msgstr "Nie, nigdy" + +# +msgid "None" +msgstr "Brak" + +# +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right) +msgid "Nonlinear" +msgstr "Nielinearny" + +msgid "Normal mode" +msgstr "Tryb standardowy" + +# +msgid "North" +msgstr "Północ" + +# +msgid "Norwegian" +msgstr "Norweski" + +msgid "Not associated" +msgstr "Nie powiązane" + +# +msgid "Not configured" +msgstr "Nieskonfigurowany" + +# +#, python-format +msgid "Not enough disk space. Please free up some disk space and try again. (%d MB required, %d MB available)" +msgstr "Nie wystarczająca ilość przestrzeni dyskowej. Zwolnij miejsce na dysku i spróbuj ponownie. (%d MB wymagane, %d MB dostępne)" + +# +msgid "Nothing connected" +msgstr "Nic nie podłączono" + +# +msgid "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Nic do skanowania!\n" +"Skonfiguruj tuner przed rozpoczeciem skanowania." + +msgctxt "now/next: 'now' event label" +msgid "Now" +msgstr "Teraz" + +# +msgid "Now playing" +msgstr "Teraz odtwarzane" + +# +msgid "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." +msgstr "Teraz użyj ustawień kontrastu aby ustawić jak nawiększą jasność tła, ale tak, żeby nadal widać było różnicę pomiędzy dwoma najjaśniejszymi odcieniami, Jeśli skończyłeś, wciśnij OK." + +# +msgid "OK" +msgstr "OK" + +# +msgid "OK, guide me through the upgrade process" +msgstr "OK, przeprowadź mnie poprzez proces aktualizacji" + +msgid "ONID" +msgstr "" + +# +msgid "OSD name request" +msgstr "Żądanie nazwy OSD" + +# +msgid "OSD settings" +msgstr "Ustawienia OSD" + +# +msgid "OSD transparency" +msgstr "Przezroczystość OSD" + +# +msgid "Off" +msgstr "Wyłącz" + +msgid "Offline decode delay (ms)" +msgstr "Opóźnienie dekodowania offline (ms)" + +msgid "Ok" +msgstr "" + +# +msgid "On" +msgstr "Włącz" + +msgid "On end of movie" +msgstr "Na końcu filmu" + +msgid "On end of movie (as menu)" +msgstr "Na końcu (menu)" + +# +msgid "One" +msgstr "Jeden" + +# +msgid "Only extensions." +msgstr "Tylko rozszerzenia." + +# +msgid "Only free scan" +msgstr "Skanuj tylko FTA" + +# +msgid "Open service list" +msgstr "Otwórz listę kanałów" + +# +msgid "Open the movie list" +msgstr "Powrót do listy filmów" + +msgid "Orbital position" +msgstr "Pozycja sat" + +msgid "Original" +msgstr "Oryginalny" + +# +msgid "Other" +msgstr "Inne" + +msgid "Output" +msgstr "Wyjście" + +# +msgid "Overwrite configuration files during software upgrade?" +msgstr "Nadpisać pliki konfiguracyjne podczas aktualizacji?" + +# +msgid "Overwrite configuration files?" +msgstr "Nadpisać pliki konfiguracyjne?" + +# +msgid "PAL" +msgstr "" + +msgid "PCR PID" +msgstr "" + +# +msgid "PIDs" +msgstr "PIDy" + +# +msgid "PIN code needed" +msgstr "Wymagany kod PIN" + +msgid "PLP ID" +msgstr "" + +msgid "PMT PID" +msgstr "" + +# +msgid "Package list update" +msgstr "Aktualizacja listy pakietów" + +# +msgid "Packet management" +msgstr "Zarządzanie pakietami" + +# +msgid "Packet manager" +msgstr "Menadżer pakietów" + +#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term +msgid "Pan&scan" +msgstr "" + +# +msgid "Parent directory" +msgstr "Katalog nadrzędny" + +# +msgid "Parental control" +msgstr "Kontrola rodzicielska" + +# +msgid "Parental control services editor" +msgstr "Edytor kanałów objętych kontrolę rodzicielską" + +# +msgid "Parental control setup" +msgstr "Ustawienia kontroli rodzicielskiej" + +# +msgid "Parental control type" +msgstr "Typ kontroli rodzicielskiej" + +# +msgid "Password" +msgstr "Hasło" + +# +msgid "Pause" +msgstr "Pauza" + +# +msgid "Pause movie at end" +msgstr "Zatrzymaj film na końcu" + +# +msgid "Pause playback" +msgstr "Wstrzymaj odtwarzanie" + +msgid "Pauze/Continue playback" +msgstr "" + +msgid "Percentage left" +msgstr "Procenty po lewej" + +# +msgid "Percentage right" +msgstr "Procenty po prawej" + +# +msgid "Permanently delete all recordings in the trash can?" +msgstr "Trwale usunąć wszystkie nagrania z 'Kosza'?" + +# +msgid "Permanently remove all deleted items" +msgstr "Usuń wszystkie pliki z 'Kosza'" + +# +msgid "Persian" +msgstr "Perski" + +# +msgid "Phone number" +msgstr "Numer telefonu" + +# +msgid "PiP setup" +msgstr "Ustawienia PiP" + +msgid "Picon" +msgstr "" + +msgid "Picon and service name" +msgstr "Picon i nazwa" + +# +msgid "Picture player" +msgstr "Odtwarzacz zdjęć" + +# +#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term. +msgid "Pillarbox" +msgstr "" + +# +msgid "Pilot" +msgstr "Pilot" + +# +msgid "Play" +msgstr "Odtwarzaj" + +# +msgid "Play DVD" +msgstr "Odtwórz DVD" + +# +msgid "Play audio in background" +msgstr "Odtwarzaj audio w tle" + +# +msgid "Play audio-CD..." +msgstr "Odtwórz CD-Audio..." + +msgid "Play back media files" +msgstr "Odtwórz pliki multimedialne" + +# +msgid "Play entry" +msgstr "Odtwórz" + +# +msgid "Play from next mark or playlist entry" +msgstr "Odtwórz od następnego zaznaczenia lub pozycji playlisty" + +# +msgid "Play from previous mark or playlist entry" +msgstr "Odtwórz od poprzedniego zaznaczenia lub pozycji playlisty" + +# +msgid "Play music..." +msgstr "Odtwórz muzykę..." + +msgid "Play next" +msgstr "Odtwórz następny" + +msgid "Play next (return to movie list)" +msgstr "Odtwarzaj kolejne...>| wróć do listy" + +msgid "Play next (return to previous service)" +msgstr "Odtwarzaj kolejne...>| wróć do TV" + +msgid "Play previous" +msgstr "Odtwórz poprzedni" + +# +msgid "Play recorded movies..." +msgstr "Odtwórz nagrane filmy..." + +# +msgid "Please add titles to the compilation." +msgstr "Dodaj tytuły do kompilacji." + +# +msgid "Please change recording endtime" +msgstr "Zmień czas zkończenia nagrywania" + +# +msgid "Please check your network settings!" +msgstr "Sprawdź ustawienia sieci!" + +# +msgid "Please choose an extension..." +msgstr "Menu rozszerzeń" + +# +msgid "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Skonfiguruj lub sprawdź dane nameserver (DNS).\n" +"Następnie, aby kontynuować wciśnij OK" + +# +msgid "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Skonfiguruj połączenie z internetem.\n" +"Następnie, aby kontynuować wciśnij OK" + +msgid "Please connect your receiver to the internet" +msgstr "Podłącz odbiornik do internetu" + +# +msgid "Please do not change any values unless you know what you are doing!" +msgstr "Nie zmieniaj żadnych wartości (chyba, że wiesz co robisz...)!" + +# +msgid "Please enter a name for the new bouquet" +msgstr "Wpisz nazwę dla nowego bukietu" + +# +msgid "Please enter a name for the new marker" +msgstr "Wpisz nazwę dla nowego znacznika" + +# +msgid "Please enter a new filename" +msgstr "Wpisz nową nazwę pliku" + +# +msgid "Please enter filename (empty = use current date)" +msgstr "Wpisz nazwę pliku (pusty = aktualna data)" + +# +msgid "Please enter name of the new directory" +msgstr "Podaj nazwę dla nowego katalogu" + +msgid "Please enter new name:" +msgstr "Wpisz nową nazwę:" + +# +msgid "Please enter the correct pin code" +msgstr "Wpisz poprawny kod pin" + +# +msgid "Please enter the old PIN code" +msgstr "Wpisz poprzedni kod PIN" + +# +msgid "Please follow the instructions on the TV" +msgstr "Podążaj za instrukcjami na TV" + +# +msgid "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." +msgstr "Brak dostępu do uprzednio wybranych plików. Użyto katalogu domyślnego." + +# +msgid "Please press OK to continue." +msgstr "Naciśnij OK aby kontynuować." + +msgid "Please select a default EPG type..." +msgstr "Wybierz domyślny typ EPG..." + +# +msgid "Please select a playlist to delete..." +msgstr "Wybierz playlistę do usunięcia..." + +# +msgid "Please select a playlist..." +msgstr "Wybierz playlistę..." + +# +msgid "Please select a sub service..." +msgstr "Wybierz subserwis..." + +# +msgid "Please select a subservice to record..." +msgstr "Wybierz subserwis do nagrania..." + +# +msgid "Please select a subservice..." +msgstr "Wybierz subserwis..." + +msgid "Please select an NFI file and press green key to flash!" +msgstr "" + +# +msgid "Please select medium to be scanned" +msgstr "Wybierz nośnik do przeszukania" + +# +msgid "Please select medium to use as backup location" +msgstr "Wybierz nośnik do użycia jako miejsce backupu" + +# +msgid "Please select tag to filter..." +msgstr "Wybierz 'tag' do filtrowania..." + +# +msgid "Please select the movie path..." +msgstr "Wybierz ścieżkę do filmu..." + +# +msgid "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Wybierz interfejs za pomocą którego będziesz się łączył z internetem.\n" +"Wcisnij OK aby kontynuować" + +# +msgid "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Wybierz sieć WiFi z którą chcesz się połączyć.\n" +"\n" +"Wcisnij OK aby kontynuować." + +# +msgid "Please set up tuner A" +msgstr "Skonfiguruj tuner A" + +# +msgid "Please set up tuner B" +msgstr "Skonfiguruj Tuner B" + +# +msgid "Please set up tuner C" +msgstr "Skonfiguruj Tuner C" + +# +msgid "Please set up tuner D" +msgstr "Skonfiguruj Tuner D" + +# +msgid "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." +msgstr "" +"Użyj przycisków 'strzałek', aby przesunąć okno PiP.\n" +"Wciśnij 'Bouquet +/-' (lub 'Channel+/-') aby zmienić rozmiar okna.\n" +"Wciśnij OK aby wrócić do trybu TV lub EXIT aby przerwać przesuwanie." + +# +msgid "Please use the UP and DOWN keys to select your language. Afterwards press the OK button." +msgstr "W celu wyboru języka użyj klawiszy GÓRA i DÓŁ. Nastepnie nacisnij przycisk OK." + +# +msgid "Please wait" +msgstr "Czekaj..." + +# +msgid "Please wait (downloading channel list)" +msgstr "Czekaj (pobieranie listy kanałów)" + +# +msgid "Please wait (downloading softcam)" +msgstr "Czekaj (pobieranie softcamu)" + +# +msgid "Please wait (updating packages)" +msgstr "Czekaj (aktualizacja pakietów)" + +# +msgid "Please wait for activation of your network configuration..." +msgstr "Poczekaj na aktywację twojej konfiguracji sieci..." + +# +msgid "Please wait while scanning is in progress..." +msgstr "Czekaj, trwa skanowanie..." + +# +msgid "Please wait while we configure your network..." +msgstr "Czekaj, trwa konfuguracja sieci..." + +# +msgid "Please wait while we prepare your network interfaces..." +msgstr "Czekaj, trwa przygotowanie karty sieciowej..." + +# +msgid "Please wait while we test your network..." +msgstr "Czekaj, trwa test sieci..." + +msgid "Please wait while your network is restarting..." +msgstr "Czekaj, sieć jest restartowana..." + +# +msgid "Please wait..." +msgstr "Czekaj..." + +# +msgid "Please wait... Loading list..." +msgstr "Czekaj... Ładowanie listy..." + +# +msgid "Plugin browser" +msgstr "Przeglądarka pluginów" + +# +msgid "Plugin manager activity information" +msgstr "Informacja o działaniu menadżera pluginów" + +# +msgid "Plugin manager help" +msgstr "Menedżer pluginów - pomoc" + +# +msgid "Plugins" +msgstr "Pluginy" + +msgid "Polarisation" +msgstr "Polaryzacja" + +msgid "Polarisation:" +msgstr "Polaryzacja:" + +# +msgid "Polarization" +msgstr "Polaryzacja" + +# +msgid "Polish" +msgstr "Polski" + +# +msgid "Port A" +msgstr "Port A" + +# +msgid "Port B" +msgstr "Port B" + +# +msgid "Port C" +msgstr "Port C" + +# +msgid "Port D" +msgstr "Port D" + +# +msgid "Portuguese" +msgstr "Portugalski" + +# +msgid "Position of completed timers in timerlist" +msgstr "Pozycja wykonanych timerów w liście" + +msgid "Position stored at index" +msgstr "Pozycja zapisana z indeksem" + +# +msgid "Positioner" +msgstr "Pozycjoner" + +# +msgid "Positioner (selecting satellites)" +msgstr "Obrotnica (wybór satelitów)" + +msgid "Positioner Setup" +msgstr "Ustawienia pozycjonera" + +# +msgid "Positioner setup" +msgstr "Ustawienia pozycjonera" + +# +msgid "Power threshold in mA" +msgstr "Próg mocy w mA" + +# +msgid "Predefined transponder" +msgstr "Pre-definiowany transponder" + +# +msgid "Prefer AC3 track" +msgstr "Preferuj AC3" + +# +msgid "Prefer AC3+ track" +msgstr "Preferuj AC3+" + +# +msgid "Prefer audio track stored by service" +msgstr "Preferuj ścieżkę audio zapamiętaną dla kanału" + +# +msgid "Prefer graphical DVB subtitles" +msgstr "Preferuj napisy DVB" + +# +msgid "Prefer subtitles for hearing impaired" +msgstr "Preferuj napisy dla niesłyszących" + +# +msgid "Prefer subtitles stored by service" +msgstr "Preferuj napisy zapamiętane dla kanału" + +# +msgid "Preferred tuner" +msgstr "Tuner preferowany" + +# +msgid "Preferred tuner for recordings" +msgstr "Tuner preferowany dla nagrywania" + +# +msgid "Prepare another USB stick for image flashing" +msgstr "Przygotuj inny pen USB do flash'owania" + +# +msgid "Preparing... Please wait" +msgstr "Przygotowywanie... Prosze czekać" + +msgid "Press '0' to toggle PiP mode" +msgstr "Wciśnij '0' aby przełączać tryby PiP" + +# +msgid "Press INFO on your remote control for additional information." +msgstr "Wciśnij INFO aby uzyskać dodatkowe informacje" + +# +msgid "Press MENU on your remote control for additional options." +msgstr "Wciśnij MENU aby mieć dostęp do dodatkowych opcji" + +# +msgid "Press OK on your remote control to continue." +msgstr "Wciśnij OK, aby kontynuować." + +# +msgid "Press OK to activate the selected skin." +msgstr "Wciśnij OK, aby aktywować wybrany skin." + +# +msgid "Press OK to activate the settings." +msgstr "Wciśnij OK, aby aktywować ustawienia" + +# +msgid "Press OK to edit the settings." +msgstr "Aby edytować ustawienia, wciśnij OK." + +# +#, python-format +msgid "Press OK to get further details for %s" +msgstr "Wciśnij OK, aby uzyskać więcej info o %s" + +# +msgid "Press OK to scan" +msgstr "Wciśnij OK, aby skanować" + +# +msgid "Press OK to select a provider." +msgstr "Wciśnij OK, aby wybrać nadawcę." + +# +msgid "Press OK to select satellites" +msgstr "Wciśnij OK, aby wybrać satelity." + +# +msgid "Press OK to select/deselect a CAId." +msgstr "Wciśnij OK, aby wybrać/usunąć CAId" + +# +msgid "Press OK to start the scan" +msgstr "Wciśnij OK, aby rozpocząć skanowanie" + +# +msgid "Press OK to toggle the selection" +msgstr "Wciśnij OK, aby wybrać lub 'odznaczyć'" + +# +msgid "Press OK to toggle the selection." +msgstr "Wciśnij OK, aby zmienić wybór" + +# +msgid "Press yellow to set this interface as default interface." +msgstr "Wciśnij 'żółty', aby ustawić ten interfejs jako domyślny" + +msgctxt "button label, 'previous screen'" +msgid "Prev" +msgstr "Poprzedni" + +# +msgid "Preview" +msgstr "Podgląd" + +# +msgid "Preview menu" +msgstr "Menu podglądu" + +msgid "Preview selected channel" +msgstr "Podgląd wybranego kanału" + +# +msgid "Primary DNS" +msgstr "Pierwszy DNS" + +# +msgid "Priority" +msgstr "Priorytet konwertera" + +# +msgid "Process" +msgstr "Proces" + +# +msgid "Progress" +msgstr "Pasek postępu" + +# +msgid "Progress bar left" +msgstr "Pasek postępu z lewej" + +# +msgid "Progress bar right" +msgstr "Pasek postępu z prawej" + +# +msgid "Properties of current title" +msgstr "Właściwości aktualnego tytułu" + +# +msgid "Protect services" +msgstr "Zabezpiecz kanały" + +# +msgid "Protect setup" +msgstr "Zabezpiecz ustawienia" + +# +msgid "Provider" +msgstr "Nadawcy" + +# +msgid "Provider to scan" +msgstr "Nadawca do skanowania" + +# +msgid "Providers" +msgstr "Nadawcy" + +# +msgid "Put TV in standby" +msgstr "Przełączaj TV w stan czuwania" + +# +msgid "Put receiver in standby" +msgstr "Przełączaj odbiornik w stan czuwania" + +# +msgid "Python frontend for /tmp/mmi.socket" +msgstr "Python frontend dla /tmp/mmi.socket" + +# +msgid "Quick" +msgstr "Szybko" + +# +msgid "Quick zap" +msgstr "Szybkie przełączanie" + +# +msgid "RF output" +msgstr "Wyjście RF" + +# +msgid "RGB" +msgstr "" + +# +msgid "Radio" +msgstr "" + +# +msgid "Ram disk" +msgstr "" + +# +msgid "Random" +msgstr "Losowo" + +#, python-format +msgid "Rating defined by broadcaster - %d" +msgstr "Ograniczenie nadawcy - %d" + +msgid "Rating undefined" +msgstr "Ograniczenie niezdefiniowane" + +# +msgid "Really close without saving settings?" +msgstr "Wyjść bez zapisywania ustawień?" + +# +msgid "Really delete done timers?" +msgstr "Usunąć wykonane timery?" + +# +msgid "Really exit the subservices quickzap?" +msgstr "Wyjść z subserwisów?" + +# +msgid "Really reboot now?" +msgstr "Wykonać reboot teraz?" + +# +msgid "Really restart now?" +msgstr "Zrestartować teraz?" + +# +msgid "Really shutdown now?" +msgstr "Wyłączyć teraz?" + +msgid "Really upgrade the frontprocessor and reboot now?" +msgstr "Wykonać teraz upgrade frontprocesora i zrestartować STB?" + +msgid "Really upgrade your settop box and reboot now?" +msgstr "Wykonać upgrade odbiornika i zrestartować?" + +# +msgid "Reboot" +msgstr "Reboot" + +msgid "Rec" +msgstr "" + +# +msgid "Reception settings" +msgstr "Ustawienia odbioru" + +# +msgid "Record" +msgstr "Nagrania" + +# +#, python-format +msgid "Record time limited due to conflicting timer %s" +msgstr "Czas nagrywania ograniczony z powodu konfliktu timera %s" + +# +msgid "Recorded files..." +msgstr "Nagrane pliki..." + +# +msgid "Recording" +msgstr "Nagranie" + +msgid "Recording in progress" +msgstr "Nagrywanie w toku" + +# +msgid "Recording paths" +msgstr "Lokalizacja nagrań" + +msgid "Recording type" +msgstr "Typ nagrania" + +# +msgid "Recording(s) are in progress or coming up in few seconds!" +msgstr "Nagrywanie(a) jest w toku lub rozpocznie się za kilka sekund!" + +# +msgid "Recordings" +msgstr "Nagrania" + +# +msgid "Recordings always have priority" +msgstr "Nagrywanie zawsze ma priorytet" + +msgid "Red button..." +msgstr "Czerwony..." + +# +msgid "Reenter new PIN" +msgstr "Wpisz ponownie nowy PIN" + +# +msgid "Refresh rate" +msgstr "Częstotliwość odświeżania" + +# +msgid "Refresh rate selection." +msgstr "Wybór częstotliwości odświeżania" + +# +msgid "Regard deep standby as standby" +msgstr "Traktuj głębokie czuwanie jak standby" + +# +msgid "Relative" +msgstr "Względna" + +# +msgid "Reload" +msgstr "Przeładuj" + +# +msgid "Reload black-/white lists" +msgstr "Przeładuj Black-/White lists" + +# +msgid "Reloading bouquets and services..." +msgstr "Przeładowanie bukietów i kanałów" + +# +msgid "Remember last service in PiP" +msgstr "Pamiętaj ostatni kanał w PiP" + +# +msgid "Remember service PIN" +msgstr "Pamiętaj PIN kanału" + +msgid "Remember these settings for each folder" +msgstr "" + +msgid "Reminder, you have chosen to save timeshift file." +msgstr "Pamietaj, wybrałeś zapisywanie pliku timeshift." + +# +msgid "Remote control type" +msgstr "Typ pilota" + +# +msgid "Removal has completed." +msgstr "Usuwanie zakończone." + +# +msgid "Remove" +msgstr "Usuń" + +# +msgid "Remove a mark" +msgstr "Usuń znacznik" + +# +msgid "Remove a nameserver entry" +msgstr "Usuń wpis DNS" + +# +msgid "Remove bookmark" +msgstr "Usuń zakładkę" + +# +msgid "Remove completed timers after (days)" +msgstr "Usuń wykonane timery po (dni)" + +# +msgid "Remove currently selected title" +msgstr "Usuń aktualnie wybrany tytuł" + +# +msgid "Remove items from trash can after (days)" +msgstr "Usuń pliki z 'Kosza' po (dni)" + +# +msgid "Remove plugins" +msgstr "Usuń pluginy" + +# +msgid "Remove title" +msgstr "Usuń tytuł" + +# +msgid "Removing" +msgstr "Usuwanie" + +# +#, python-format +msgid "Removing directory %s failed. (Maybe not empty.)" +msgstr "Usuniecie katalogu %s nie powiodło się. (Być może nie jest pusty?)" + +msgid "Removing partition table" +msgstr "Usuwanie tablicy partycji" + +# +msgid "Rename" +msgstr "Zmień nazwę" + +msgid "Repeat" +msgstr "Powtórz" + +# +msgid "Repeat type" +msgstr "Rozdzaj powtórzeń" + +# +msgid "Repeating event currently recording... What do you want to do?" +msgstr "Powtarzane wydarzenie właśnie jest nagrywane... Co chcesz zrobić?" + +# +msgid "Repeats" +msgstr "Powtórzenia" + +msgid "Require authentication for http streams" +msgstr "Wymagaj uwierzytelnienia dla streamów http" + +# +msgid "Required medium type:" +msgstr "Wymagany typ nośnika:" + +msgid "Rereading partition table" +msgstr "Ponowne odczytywanie tablicy partycji" + +msgid "Reserved" +msgstr "Zarezerwowany" + +# +msgid "Reset" +msgstr "Resetuj" + +# +msgid "Reset and renumerate title names" +msgstr "Zresetuj i zmień numerację nazw tytułów" + +# +msgid "Reset playback position" +msgstr "Resetuj pozycję startu odtwarzania" + +# +msgid "Reset video enhancement settings to system defaults?" +msgstr "Zresetować ustawienia do domyślnych?" + +# +msgid "Reset video enhancement settings to your last configuration?" +msgstr "Zresetować ustawienia do poprzedniej konfiguracji?" + +# +msgid "Resolution" +msgstr "Rozdzielczość" + +# +msgid "Restart" +msgstr "Restart odbiornika" + +# +msgid "Restart GUI now?" +msgstr "Zrestartować GUI teraz?" + +# +msgid "Restart enigma" +msgstr "Restart enigmy" + +# +msgid "Restart network" +msgstr "Restartuj sieć" + +# +msgid "Restart test" +msgstr "Powtórz test" + +# +msgid "Restart your network connection and interfaces.\n" +msgstr "Restart adaptera i połączenia sieciowego.\n" + +# +msgid "Restore" +msgstr "Przywróć" + +# +msgid "Restore backups" +msgstr "Przywróć backup" + +# +msgid "Restore is running..." +msgstr "Trwa przywracanie..." + +# +msgid "Restore system settings" +msgstr "Przywróć ustawienia systemowe" + +# +msgid "Restoring..." +msgstr "Przywracanie..." + +# +msgid "Resume from last position" +msgstr "Wznów od ostatniej pozycji" + +# +#, python-format +msgid "Resume position at %s" +msgstr "Pozycja wznowienia na %s" + +# +#. TRANSLATORS: The string "Resuming playback" flashes for a moment +#. TRANSLATORS: at the start of a movie, when the user has selected +#. TRANSLATORS: "Resume from last position" as start behavior. +#. TRANSLATORS: The purpose is to notify the user that the movie starts +#. TRANSLATORS: in the middle somewhere and not from the beginning. +#. TRANSLATORS: (Some translators seem to have interpreted it as a +#. TRANSLATORS: question or a choice, but it is a statement.) +msgid "Resuming playback" +msgstr "Wznawianie odtwarzania" + +# +msgid "Return to movie list" +msgstr "Powrót do listy filmów" + +# +msgid "Return to previous service" +msgstr "Powrót do poprzedniego kanału" + +msgid "Reverse bouquet buttons" +msgstr "Zamień przyciski bukietów" + +# +msgid "Reverse list" +msgstr "Odwróć listę" + +# +msgid "Rewind speeds" +msgstr "Prędkości przewijania w tył" + +# +msgid "Rewrap teletext subtitles" +msgstr "Poprawiaj rozłożenie napisów teletekst" + +# +msgid "Right" +msgstr "Prawo" + +msgid "Right from servicename" +msgstr "Na prawo od nazwy kanału" + +msgid "Roll-off" +msgstr "" + +msgid "Romanian" +msgstr "Rumuński" + +# +msgid "Root directory" +msgstr "Katalog root" + +msgid "Rotor step position:" +msgstr "Pozycja kroku obrotnicy:" + +# +msgid "Rotor turning speed" +msgstr "Prędkość obrotu rotora" + +msgid "Round start time on" +msgstr "Zaokrąglaj czas startu do" + +# +msgid "Russian" +msgstr "Rosyjski" + +# +msgid "S-Video" +msgstr "" + +msgid "SID" +msgstr "" + +# +msgid "SINGLE LAYER DVD" +msgstr "Jednowarstwowe DVD" + +# +msgid "SNR" +msgstr "" + +# +msgid "SNR:" +msgstr "" + +# +msgid "SSID:" +msgstr "" + +msgid "Same resolution as skin" +msgstr "Taka sama rozdzielczość jak skina" + +# +msgid "Sat" +msgstr "Sob" + +# +msgid "Satellite" +msgstr "Satelita" + +# +msgid "Satellite dish setup" +msgstr "Ustawienia anteny" + +# +msgid "Satellite equipment" +msgstr "Wyposażenie sat" + +# +msgid "Satellite equipment setup" +msgstr "Ustawienia wyposażenia SAT" + +msgid "Satellite longitude:" +msgstr "Długość geogr. satelity:" + +# +msgid "Satellites" +msgstr "Satelity" + +# +msgid "Satfinder" +msgstr "Miernik sygnału" + +# +msgid "Sats" +msgstr "Satelity" + +# +msgid "Saturation" +msgstr "Nasycenie" + +# +msgid "Saturday" +msgstr "Sobota" + +# +msgid "Save" +msgstr "Zapisz" + +# +msgid "Save playlist" +msgstr "Zapisz playlistę" + +msgid "Save timeshift file" +msgstr "Zapisz plik timeshift" + +msgid "Save timeshift file in movie directory" +msgstr "Zapisz plik timeshift w katalogu movie" + +# +msgid "Scaler sharpness" +msgstr "Ostrość skalera" + +# +msgid "Scaling mode" +msgstr "Tryb skalowania" + +msgid "Scan" +msgstr "Skanuj" + +# +msgid "Scan " +msgstr "Skanuj" + +# +#. TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' +#, python-format +msgid "Scan %s" +msgstr "Skanuj %s" + +# +#. TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' +#, python-format +msgid "Scan %s band" +msgstr "Skanuj pasmo %s" + +# +msgid "Scan additional SR" +msgstr "Skanuj dodatkowy SR" + +# +msgid "Scan files..." +msgstr "Przeszukaj pliki..." + +# +msgid "Scan wireless networks" +msgstr "Skanuj sieci bezprzewodowe" + +# +msgid "Scan your network for wireless access points and connect to them using your selected wireless device.\n" +msgstr "Skanuj sieć w poszukiwaniu punktów dostępu i połącz z nimi używając wybranego urządzenia.\n" + +#, python-format +msgid "Scanning %s..." +msgstr "Skanowanie %s..." + +#. TRANSLATORS: The stb is performing a channel scan, progress percentage is printed in '%d' (and '%%' will show a single '%' symbol) +#, python-format +msgid "Scanning - %d%% completed" +msgid_plural "Scanning - %d%% completed" +msgstr[0] "Skanowanie - ukończono %d%%" +msgstr[1] "Skanowanie - ukończono %d%%" +msgstr[2] "Skanowanie - ukończono %d%%" + +#, python-format +msgid "Scanning completed, %d channel found" +msgid_plural "Scanning completed, %d channels found" +msgstr[0] "Skanowanie zakończone, znaleziono %d kanał" +msgstr[1] "Skanowanie zakończone, znaleziono %d kanały" +msgstr[2] "Skanowanie zakończone, znaleziono %d kanałów" + +# +msgid "Scanning failed!" +msgstr "Skanowanie nie powiodło się!" + +# +msgid "Scanning..." +msgstr "Skanowanie..." + +# +msgid "Scans default lamedbs sorted by satellite with a connected dish positioner" +msgstr "Domyślne skanuje lamedbs wg satelit z podłączonym pozycjonerem" + +# +msgid "Search east" +msgstr "Szukaj na wschód" + +# +msgid "Search west" +msgstr "Szukaj na zachód" + +msgid "Searching" +msgstr "Szukanie" + +msgid "Searching east ..." +msgstr "Przeszukuje wschód (E)..." + +# +msgid "Searching for available updates. Please wait..." +msgstr "Wyszukiwanie dostępnych aktualizacji. Proszę czekać..." + +# +msgid "Searching for new installed or removed packages. Please wait..." +msgstr "Wyszukiwanie nowo zainstalowanych lub usuniętych pakietów. Proszę czekać..." + +msgid "Searching west ..." +msgstr "Przeszukuje zachód (W)" + +# +msgid "Second cable of motorized LNB" +msgstr "Drugi kabel zmotoryzowanego LNB" + +# +msgid "Secondary DNS" +msgstr "Drugi DNS" + +# +msgid "Seek" +msgstr "Wyszukiwanie" + +# +msgid "Seek backward" +msgstr "Skocz wstecz" + +# +msgid "Seek backward (enter time)" +msgstr "Skocz wstecz (wpisz czas)" + +# +msgid "Seek forward" +msgstr "Skocz w przód" + +# +msgid "Seek forward (enter time)" +msgstr "Skocz w przód (wpisz czas)" + +# +msgid "Select" +msgstr "Wybierz" + +# +msgid "Select CAId" +msgstr "Wybierz CAId" + +# +msgid "Select HDD" +msgstr "Wybierz HDD" + +# +msgid "Select a bouquet" +msgstr "Wybierz bukiet" + +# +msgid "Select a movie" +msgstr "Wybierz film" + +# +msgid "Select a network adapter" +msgstr "Wybierz adapter sieciowy" + +# +msgid "Select a skin" +msgstr "Wybierz skin" + +# +msgid "Select a tuner" +msgstr "Wybierz tuner" + +# +msgid "Select a wireless network" +msgstr "Wybierz sieć bezprzewodową" + +# +msgid "Select action" +msgstr "Wybierz działanie" + +# +#, python-format +msgid "Select action for timer %s:" +msgstr "Wybierz działanie dla timera %s:" + +# +msgid "Select all" +msgstr "Wybierz wszystkie" + +# +msgid "Select an image to be downloaded" +msgstr "Wybierz image do pobrania" + +# +msgid "Select audio track" +msgstr "Wybierz ścieżkę audio" + +# +msgid "Select backup files" +msgstr "Wybierz pliki do backupu" + +# +msgid "Select backup location" +msgstr "Wybierz lokalizację backupu" + +# +msgid "Select channel to record from" +msgstr "Wybierz kanał z którego nagrywać" + +msgid "Select copy destination for:" +msgstr "Wybierz miejsce docelowe kopii dla:" + +msgid "Select default EPG type..." +msgstr "Wybierz domyślny typ EPG..." + +# +msgid "Select desired image from feed list" +msgstr "Wybierz image z listy" + +# +msgid "Select destination for:" +msgstr "Wybierz miejsce dla:" + +# +msgid "Select files for backup." +msgstr "Wybierz pliki do backupu" + +# +msgid "Select files/folders to backup" +msgstr "Wybierz pliki/foldery do backupu" + +# +msgid "Select input device" +msgstr "Wybierz urządzenie wejścia" + +msgid "Select input device." +msgstr "Wybierz urządzenie wejściowe." + +# +msgid "Select interface" +msgstr "Wybierz interfejs" + +# +msgid "Select location" +msgstr "Wybierz lokalizację" + +# +msgid "Select movie" +msgstr "Wybierz film" + +# +msgid "Select provider to add..." +msgstr "Wybierz nadawcę do dodania..." + +# +msgid "Select refresh rate" +msgstr "Wybierz częstotliwość odświeżania" + +# +msgid "Select satellites" +msgstr "Wybierz satelity" + +# +msgid "Select service to add..." +msgstr "Wybierz kanał do dodania..." + +# +msgid "Select sort method:" +msgstr "Sposób sortowania:" + +# +msgid "Select target folder" +msgstr "Wybierz folder docelowy" + +# +msgid "Select the movie path" +msgstr "Wybierz ścieżkę do filmu" + +# +msgid "Select upgrade source" +msgstr "Wybierz źródło aktualizacji" + +# +msgid "Select upgrade source to edit." +msgstr "Wybierz źródło aktualizacji do edycji" + +# +msgid "Select video input with up/down buttons" +msgstr "Wybierz wejście video przyciskami góra/dół" + +# +msgid "Select video mode" +msgstr "Wybierz tryb wideo" + +# +msgid "Select wireless network" +msgstr "Wybierz sieć bezprzewodową" + +msgid "Select your provider, and press OK to start the scan" +msgstr "Wybierz nadawcę i wciśnij OK aby rozpocząć skanowanie" + +# +msgid "Selecting satellites 1 (USALS)" +msgstr "Wybór satelitów 1 (USALS)" + +# +msgid "Selecting satellites 2 (USALS)" +msgstr "Wybór satelitów 2 (USALS)" + +# +msgid "Send DiSEqC only on satellite change" +msgstr "Wyślij DiSEqC tylko podczas zmiany satelity" + +# +msgid "Separate titles with a main menu" +msgstr "Oddziel tytuły posiadjące menu" + +# +msgid "Sequence repeat" +msgstr "Powtórka sekwencji" + +# +msgid "Serbian" +msgstr "Serbski" + +# +msgid "Service" +msgstr "O serwisie..." + +# +msgid "Service has been added to the favourites." +msgstr "Kanał został dodany do ulubionych." + +# +msgid "Service has been added to the selected bouquet." +msgstr "Kanał został dodany do wybranego bukietu." + +# +msgid "Service info" +msgstr "O serwisie..." + +# +msgid "" +"Service invalid!\n" +"(Timeout reading PMT)" +msgstr "" +"Kanał nieprawidłowy!\n" +"(Koniec czasu czytania PMT)" + +msgid "Service name" +msgstr "Nazwa kanału" + +# +msgid "" +"Service not found!\n" +"(SID not found in PAT)" +msgstr "" +"Kanał nie znaleziony!\n" +"(SID nie znaleziony w PAT)" + +# +msgid "Service reference" +msgstr "" + +# +msgid "Service scan" +msgstr "Skanowanie kanałów" + +# +msgid "Service searching" +msgstr "Szukanie kanałów" + +msgid "Service title mode" +msgstr "Identyfikacja kanału" + +# +msgid "" +"Service unavailable!\n" +"Check tuner configuration!" +msgstr "" +"Kanał niedostępny!\n" +"Sprawdź konfigurację tunera!" + +# +msgid "Services" +msgstr "Kanały" + +# +msgid "Set default" +msgstr "Ustaw domyślny" + +# +msgid "Set end time" +msgstr "Ustaw czas zakończenia" + +msgid "Set fixed" +msgstr "Ustaw stały" + +msgid "Set fps for external subtitles" +msgstr "FPS dla zewnętrznych napisów" + +# +msgid "Set interface as default Interface" +msgstr "Ustaw interfejs jako domyślny" + +msgid "Set limits" +msgstr "Ustaw limity" + +# +msgid "Set the type of the progress indication in the channel selection screen." +msgstr "Ustaw typ paska postępu wydarzenia w liście wyboru kanałów." + +msgid "Set time window to 1 hour" +msgstr "Ustaw przedział czasowy na 1 godzinę" + +msgid "Set time window to 2 hours" +msgstr "Ustaw przedział czasowy na 2 godziny" + +msgid "Set time window to 3 hours" +msgstr "Ustaw przedział czasowy na 3 godziny" + +msgid "Set time window to 4 hours" +msgstr "Ustaw przedział czasowy na 4 godziny" + +msgid "Set time window to 5 hours" +msgstr "Ustaw przedział czasowy na 5 godzin" + +msgid "Set time window to 6 hours" +msgstr "Ustaw przedział czasowy na 6 godzin" + +# +msgid "Set voltage and 22KHz" +msgstr "Ustaw napięcie i 22KHz" + +# +msgid "Settings" +msgstr "Ustawienia" + +# +msgid "Setup" +msgstr "Ustawienia" + +msgid "Setup menu" +msgstr "Menu ustawień" + +# +msgid "Setup mode" +msgstr "Tryb konfiguracji" + +msgid "Setup your positioner" +msgstr "Konfiguracja pozycjonera" + +# +msgid "Setup your satellite equipment" +msgstr "Ustawienia wyposażenie SAT" + +#, python-format +msgid "Shall the USB stick wizard proceed and program the image file %s into flash memory?" +msgstr "Czy kreator pamięci USB powinien rozpocząć proces instalacji image %s do pamięci flash?" + +# +msgid "Sharpness" +msgstr "Ostrość" + +# +msgid "Short filenames" +msgstr "Krótkie nazwy plików" + +# +msgid "Show EIT now/next in infobar" +msgstr "Dane EIT teraz/następny na pasku info" + +# +msgid "Show EPG for current channel..." +msgstr "Pokaż EPG dla aktualnego kanału..." + +# +msgid "Show EPG..." +msgstr "Pokaż EPG..." + +msgid "Show Games show" +msgstr "Rozrywka" + +msgid "Show SNR percentage instead of dB value" +msgstr "SNR w procentach zamiast dB" + +msgid "Show VCR scart on main menu" +msgstr "VCR scart w głównym menu" + +# +msgid "Show WLAN status" +msgstr "Pokaż status WLAN" + +# +msgid "Show animation while busy" +msgstr "Wyświetl 'trybiki' gdy zajęty" + +# +msgid "Show background in radio mode" +msgstr "Tapeta w trybie radio" + +msgid "Show bouquet selection menu" +msgstr "Pokaż menu listy bukietów" + +msgid "Show busy indicator when the system is busy." +msgstr "Wyświetl 'trybiki' gdy system jest zajęty." + +# +msgid "Show channel numbers in channel selection" +msgstr "Numery kanałow w liście" + +msgid "Show columns" +msgstr "Kolumny w liście wyboru kanałów" + +msgid "Show crypto icons" +msgstr "Ikony kodowania kanału" + +# +msgid "Show crypto info in infobar" +msgstr "System kodowania na pasku info" + +msgid "Show detailed event info" +msgstr "Pokaż szczegółowy opis audycji" + +# +msgid "Show event details" +msgstr "Pokaż szczegóły wydarzenia" + +# +msgid "Show event-progress in channel selection" +msgstr "Pasek postępu wydarzenia w liście kanałów" + +# +msgid "Show extended description" +msgstr "Pokaż rozszerzony opis" + +# +msgid "Show extensions..." +msgstr "Wyświetl rozszerzenia..." + +# +msgid "Show icon for new/unseen items" +msgstr "Ikony dla nowych/nieoglądanych filmów" + +msgid "Show in extensions menu" +msgstr "Wyświetl w menu rozszerzeń" + +# +msgid "Show info" +msgstr "Pokaż info" + +# +msgid "Show info line" +msgstr "Pokaż pasek Info" + +# +msgid "Show infobar on channel change" +msgstr "Pokaż pasek info przy zmianie kanału" + +# +msgid "Show infobar on event change" +msgstr "Pokaż pasek info przy zmianie wydarzenia" + +# +msgid "Show infobar on skip forward/backward" +msgstr "Pokaż pasek info przy przewijaniu przód/tył" + +msgid "Show latest commits on sourceforge" +msgstr "Pokaż ostatnie commit'y na sourceforge" + +# +msgid "Show message when recording starts" +msgstr "Pokaż info przy rozpoczęciu nagrywania" + +# +msgid "Show movie lengths in movielist" +msgstr "Długość filmów w liście" + +msgid "Show multi channel EPG" +msgstr "Wyświetl EPG dla wielu kanałów" + +msgid "Show picons in channel list" +msgstr "Pikony w liście kanałów" + +# +msgid "Show positioner movement" +msgstr "Pokaż ruchy pozycjonera" + +msgid "Show screensaver" +msgstr "Wygaszacz ekranu" + +# +msgid "Show second infobar" +msgstr "Wyświetlanie SecondInfobar" + +msgid "Show service type icons" +msgstr "Ikony typu kanału" + +# +msgid "Show services beginning with" +msgstr "Pokaż kanały rozpoczynające się na" + +# +msgid "Show shutdown menu" +msgstr "Pokaż menu wyłączania" + +msgid "Show single service EPG" +msgstr "Wyświetl EPG pojedynczego kanału" + +# +msgid "Show status icons in Movielist" +msgstr "Ikony stanu w liście filmów" + +# +msgid "Show status icons in movie list" +msgstr "Ikony stanu w liście filmów" + +# +msgid "Show status icons in movielist" +msgstr "Ikony stanu w liście filmów" + +# +msgid "Show tag menu" +msgstr "Pokaż menu tagów" + +# +msgid "Show the radio player..." +msgstr "Przejdź w tryb radio..." + +# +msgid "Show the tv player..." +msgstr "Przejdź w tryb TV..." + +msgid "Show warning when timeshift is stopped" +msgstr "Ostrzeżenie przy zatrzymywaniu timeshiftu" + +# +msgid "Shows the state of your wireless LAN connection.\n" +msgstr "Pokazuje status połączenia bezprzewodowego LAN.\n" + +# +msgid "Shuffle playlist" +msgstr "Odtwórz w losowej kolejności" + +# +msgid "Shutdown" +msgstr "Wyłącz" + +msgid "Shutdown when in Standby" +msgstr "Wyłączaj, gdy w trybie czuwania" + +msgid "Side by side" +msgstr "" + +msgid "Signal OK, proceeding" +msgstr "Sygnał OK, wykonuję" + +msgid "Signal quality" +msgstr "Jakość sygnału" + +# +msgid "Signal strength:" +msgstr "Siła sygnału:" + +# +msgid "Signal: " +msgstr "Sygnał:" + +# +msgid "Similar" +msgstr "Podobne" + +# +msgid "Similar broadcasts:" +msgstr "Podobne audycje:" + +# +msgid "Simple" +msgstr "Prosty" + +# +msgid "Simple titleset (compatibility for legacy players)" +msgstr "Proste tytuły (kompatybilne z odtwarzaczami)" + +# +msgid "Single" +msgstr "Pojedynczy" + +# +msgid "Single EPG" +msgstr "Zwykłe EPG" + +# +msgid "Single satellite" +msgstr "Jeden satelita" + +# +msgid "Single step (GOP)" +msgstr "Pojedynczy krok (GOP)" + +# +msgid "Single transponder" +msgstr "Jeden transponder" + +msgid "Site latitude" +msgstr "Szerokość gegraficzna" + +msgid "Site longitude" +msgstr "Długość geograficzna" + +# +msgid "Skin" +msgstr "Skiny" + +# +msgid "Skins" +msgstr "Skiny" + +msgid "Skip empty services" +msgstr "Pomijaj puste serwisy" + +msgid "Skip internet connection check (disables automatic package installation)" +msgstr "Pomiń sprawdzenie połączenia internetowego (wyłącza automatyczną instalację pakietów)" + +# +msgid "Sleep timer" +msgstr "Wyłącznik czasowy" + +msgid "SleepTimer Configuration" +msgstr "Ustawienia sleeptimer'a" + +msgid "Sleeptimer" +msgstr "Wyłącznik czasowy" + +# +msgid "Slide picture in loop" +msgstr "Zapętlony pokaz slajdów" + +# +msgid "Slide show interval (sec.)" +msgstr "Odstępy w pokazie slajdów (w sek.)" + +# +#, python-format +msgid "Slot %d" +msgstr "" + +msgid "Slovak" +msgstr "Słowacki" + +# +msgid "Slovenian" +msgstr "Słoweński" + +# +msgid "Slow" +msgstr "Wolno" + +# +msgid "Slow motion speeds" +msgstr "Prędkości odtwarzanie w zwolnionym tempie" + +# +msgid "Small progress" +msgstr "Postęp (mały)" + +msgid "Social/Political/Economics" +msgstr "Polityka/Ekonomia/Społeczny" + +# +msgid "SoftCam / CI" +msgstr "Softcam / CI" + +# +msgid "Softcam type" +msgstr "Typ softcamu" + +# +msgid "Software" +msgstr "Oprogramowanie" + +# +msgid "Software management" +msgstr "Zarządzanie oprogramowaniem" + +# +msgid "Software manager setup" +msgstr "Ustawienia 'Software manager'" + +# +msgid "Software restore" +msgstr "Przywracanie oprogramowania" + +# +msgid "Software update" +msgstr "Aktualizacja oprogramowania" + +# +msgid "Softwaremanager information" +msgstr "Informacje Softwaremanagera" + +# +msgid "Some plugins are not available:\n" +msgstr "Niektóre pluginy są niedostępne:\n" + +# +#, python-format +msgid "Sorry, %s has not been installed!" +msgstr "Niestety, %s nie został zainstalowany!" + +msgid "Sorry, deleting directories can (for now) only be done through the trash can." +msgstr "Niestety usuwanie katalogów możliwe (na razie) tylko przez 'kosz'. " + +# +msgid "Sorry, no backups found!" +msgstr "Nie znaleziono kopii zapasowych!" + +# +msgid "Sorry, no details available!" +msgstr "Szczegółowy opis niedostępny!" + +# +msgid "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." +msgstr "" +"Wybrane miejsce na backup jest niezapisywalne.\n" +"Wybierz inną loklizację." + +# +msgid "Sort" +msgstr "Sortowanie" + +# +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort A-Z" +msgstr "Sortuj A-Z" + +# +msgid "Sort by" +msgstr "Sortuj wg" + +# +msgid "Sort list:" +msgstr "Sortuj listę:" + +# +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort time" +msgstr "Sortuj wg czasu" + +# +msgid "Sound" +msgstr "Dźwięk" + +# +msgid "Sound carrier" +msgstr "Transporter dźwięku" + +# +msgid "Source request" +msgstr "Żądanie źródła" + +# +msgid "South" +msgstr "Południe" + +# +msgid "Spanish" +msgstr "Hiszpański" + +msgid "Specify the end time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "Ustaw koniec czasu ignorowania 'timera wyłączania' gdy odbiornik jest w trybie czuwania." + +msgid "Specify the end time until the inactivity sleeptimer should be ignored" +msgstr "Określ koniec przedziału czasowego, w którym sleeptimer bezczynności ma być ignorowany." + +msgid "Specify the start time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "Ustaw początek czasu ignorowania 'timera wyłączania' gdy odbiornik jest w trybie czuwania." + +msgid "Specify the start time when the inactivity sleeptimer should be ignored" +msgstr "Określ początek przedziału czasowego, w którym sleeptimer bezczynności ma być ignorowany" + +msgid "Specify timeframe to ignore inactivity sleeptimer" +msgstr "Przedział czasowy, gdy sleeptimer bezczynności ma być ignorowany" + +msgid "Specify timeframe to ignore the shutdown in standby" +msgstr "Przedział czasowy, gdy 'timer wyłączania' ma być ignorowany." + +# +msgid "Split preview mode" +msgstr "Podzielony tryb podglądu" + +msgid "Splitscreen" +msgstr "" + +msgid "Sports" +msgstr "Sport" + +# +msgid "Standard" +msgstr "Standardowe" + +# +msgid "Standart list" +msgstr "Lista standardowa" + +# +msgid "Standby" +msgstr "Czuwanie" + +# +msgid "Standby / restart" +msgstr "Czuwanie / Restart" + +msgid "Standby after current event" +msgstr "Przejdź w tryb czuwania po bieżącym wydarzeniu" + +# +#, python-format +msgid "Standby fan %d PWM" +msgstr "Wiatrak w standby %d PWM" + +# +#, python-format +msgid "Standby fan %d voltage" +msgstr "Wiatrak w standby %d napięcie" + +msgid "Standby in " +msgstr "Tryb czuwania za" + +# +msgid "StandbyLED" +msgstr "Dioda w trybie czuwania" + +# +msgid "Start from the beginning" +msgstr "Rozpocznij od początku" + +msgid "Start offline decode" +msgstr "Rozpocznij dekodowanie offline" + +# +msgid "Start recording?" +msgstr "Rozpocząć nagrywanie?" + +# +msgid "Start test" +msgstr "Testuj" + +# +msgid "Start time" +msgstr "Czas rozpoczęcia" + +msgid "Start time to ignore inactivity sleeptimer" +msgstr "Początek ignorowania sleeptimera bezczynności" + +msgid "Start time to ignore shutdown in standby" +msgstr "Początek ignorowania 'timera wyłączania' w standby" + +# +msgid "Start timeshift" +msgstr "Rozpocznij timeshift" + +msgid "Start with list screen" +msgstr "Rozpocznij ekranem z listą" + +# +msgid "Starting on" +msgstr "Rozpocznij od" + +msgid "Startup the set top box in standby" +msgstr "Po uruchomieniu odbiornika przejdź w tryb czuwania" + +# +msgid "Startup to Standby" +msgstr "" + +# +msgid "Step east" +msgstr "Krok na wschód" + +# +msgid "Step west" +msgstr "Krok na zachód" + +msgid "Stepped east" +msgstr "Krok na wschód (E)" + +msgid "Stepped west" +msgstr "Krok na zachód (W)" + +# +msgid "Stop" +msgstr "Zatrzymaj" + +# +msgid "Stop PiP" +msgstr "Zatrzymaj PiP" + +# +msgid "Stop current event and disable coming events" +msgstr "Zatrzymaj aktualne wydarzenie i wyłącz nadchodzące wydarzenia" + +# +msgid "Stop current event but not coming events" +msgstr "Zatrzymaj aktualne wydarzenie, ale nie nadchodzące" + +# +msgid "Stop entry" +msgstr "Zatrzymaj" + +# +msgid "Stop playing this movie?" +msgstr "Zatrzymać odtwarzanie tego filmu?" + +msgid "Stop recording" +msgstr "Zatrzymaj nagrywanie" + +msgid "Stop recording and delete" +msgstr "Zatrzymaj nagrywanie i usuń" + +# +msgid "Stop service on return to movie list" +msgstr "Zatrzymaj podgląd kanału przy powrocie do listy filmów" + +# +msgid "Stop test" +msgstr "Zakończ test" + +# +msgid "Stop testing plane after # failed transponders" +msgstr "Zatrzymaj testowanie poziomu po # nieudanych transponderach" + +# +msgid "Stop testing plane after # successful transponders" +msgstr "Zatrzymaj testowanie poziomu po # udanych transponderach" + +msgid "Stop timer recording" +msgstr "Zatrzymaj nagrywanie z timera" + +# +msgid "Stop timeshift" +msgstr "Zatrzymaj timeshift" + +# +msgid "Stop timeshift?" +msgstr "Zatrzymać timeshift?" + +msgid "Stopped" +msgstr "Zatrzymany" + +msgid "Store at index" +msgstr "Zapisz z indeksem" + +# +msgid "Store position" +msgstr "Zapamiętaj pozycję" + +# +msgid "Stored position" +msgstr "Pozycja zapamiętana" + +# +msgid "Stream" +msgstr "Strumień" + +# +msgid "Stream request" +msgstr "Żądanie strumienia" + +msgid "Strongest position" +msgstr "Najmocniejsza pozycja" + +# +msgid "Subservice list..." +msgstr "Lista subserwisów..." + +# +msgid "Subservices" +msgstr "Subserwisy" + +msgid "Subtitle Quickmenu" +msgstr "'Szybkie' menu napisów" + +# +msgid "Subtitle alignment" +msgstr "Wyrównanie napisów" + +# +msgid "Subtitle border width" +msgstr "Szerokość obramowania napisów" + +msgid "Subtitle delay when timing is bad" +msgstr "Opóźnienie napisów gdy zły timing" + +# +msgid "Subtitle delay when timing lacks" +msgstr "Opóźnienie napisów gdy nie niezsynchronizowane" + +# +msgid "Subtitle font size" +msgstr "Rozmiar czcionki napisów" + +# +msgid "Subtitle language selection 1" +msgstr "Preferowany język napisów 1" + +# +msgid "Subtitle language selection 2" +msgstr "Preferowany język napisów 2" + +# +msgid "Subtitle language selection 3" +msgstr "Preferowany język napisów 3" + +# +msgid "Subtitle language selection 4" +msgstr "Preferowany język napisów 4" + +# +msgid "Subtitle position" +msgstr "Pozycja napisów" + +# +msgid "Subtitle selection" +msgstr "Wybór napisów" + +# +msgid "Subtitle selection..." +msgstr "Wybór napisów..." + +# +msgid "Subtitle settings" +msgstr "Napisy" + +# +msgid "Subtitles" +msgstr "Napisy" + +# +msgid "Sun" +msgstr "Nie" + +# +msgid "Sunday" +msgstr "Niedziela" + +# +msgid "Swap PiP and main picture" +msgstr "Zamień PiP z ekranem głównym" + +# +msgid "Swap services" +msgstr "Zamień kanały" + +# +msgid "Swedish" +msgstr "Szwedzki" + +# +msgid "Switch TV to correct input" +msgstr "Przełączaj TV na odpowiednie wejście" + +msgid "Switch between filelist/playlist" +msgstr "Przełącz pomiędzy listą plików / listą odtwarzania" + +msgid "Switch between normal mode and list mode" +msgstr "Przełącz z trybu standard na tryb listy" + +# +msgid "Switch to HDMI in mode" +msgstr "Przełącz na HDMI w trybie" + +# +msgid "Switch to filelist" +msgstr "Przjdź do listy plików" + +# +msgid "Switch to next channel" +msgstr "Przełącz na następny kanał" + +# +msgid "Switch to next channel in history" +msgstr "Następny kanał w historii" + +# +msgid "Switch to next sub service" +msgstr "Przełącz na następny subserwis" + +# +msgid "Switch to playlist" +msgstr "Przejdź do playlisty" + +# +msgid "Switch to previous channel" +msgstr "Przełącz na poprzedni kanał" + +# +msgid "Switch to previous channel in history" +msgstr "Poprzedni kanał w historii" + +# +msgid "Switch to previous sub service" +msgstr "Przełącz na poprzedni subserwis" + +# +msgid "Switchable tuner types:" +msgstr "Wymienne typy tunerów:" + +msgid "Symbol rate" +msgstr "Wartość SR" + +msgid "Symbol rate:" +msgstr "" + +msgid "Sync failure moving back to origin !" +msgstr "Błąd synchronizacji, powrót do punktu wyjścia!" + +# +msgid "System" +msgstr "" + +# +#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) +msgid "TRANSLATOR_INFO" +msgstr "" +"specjalnie dla OpenPLi - @blzr\n" +"http://openpli.org/forums\n" +"ostatnia aktualizacja 2014.06.22" + +# +msgid "TS file is too large for ISO9660 level 1!" +msgstr "Plik TS jest za duży dla ISO9660 level 1!" + +msgid "TSID" +msgstr "" + +msgid "TV physical address report" +msgstr "Raportuj fizyczny adres TV" + +msgid "TXT PID" +msgstr "" + +# +msgid "Table of contents for collection" +msgstr "Lista zawartości dla kolekcji" + +# +msgid "Tags" +msgstr "Tagi" + +# +msgid "Teletext subtitle color" +msgstr "Kolor napisów teletekst" + +# +msgid "Temperature and fan control" +msgstr "Sterowanie temperaturą i wentylatorem" + +# +msgid "Terrestrial" +msgstr "Naziemna" + +# +msgid "Terrestrial provider" +msgstr "Nadawca DVB-T" + +# +msgid "Test DiSEqC settings" +msgstr "Test ustawień DiSEqC" + +# +msgid "Test mode" +msgstr "Tryb testowy" + +msgid "Test the network configuration of your receiver.\n" +msgstr "Testuj konfiguracjię sieci.\n" + +# +msgid "Test type" +msgstr "Typ testu" + +# +msgid "Text color" +msgstr "Kolor tekstu" + +msgid "Thai" +msgstr "Tajski" + +# +msgid "" +"Thank you for using the wizard.\n" +"Please press OK to continue." +msgstr "" +"Dziekuję za skorzystanie z kreatora.\n" +"Wciśnij OK aby kontynuować" + +msgid "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." +msgstr "" +"Dziękuję za skorzystanie z wizarda. Odbiornik jest już gotowy do użycia.\n" +"Wciśnij OK aby kontynuować." + +msgid "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?" +msgstr "Standard DVD nie wspiera strumienia video H.264 (HDTV). Czy zamiast tego nagrać dane w formacie data DVD? Dane nie będą czytane w stacjonarnych odtwarzaczach DVD." + +# +msgid "The PIN code has been changed successfully." +msgstr "Kod PIN został zmieniony pomyślnie." + +# +msgid "The PIN codes you entered are different." +msgstr "Kody PIN które wpisałeś różnią się." + +msgid "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" +msgstr "" + +# +msgid "The backup failed. Please choose a different backup location." +msgstr "Tworzenie backupu nie powiodło się. Wybierz inna lokalizacje dla kopii." + +# +#, python-format +msgid "" +"The current beta image might not be stable.\n" +"For more information see %s." +msgstr "" +"Aktualne beta image może być niestabilne.\n" +"Aby uzyskać więcej informacji zobacz %s." + +# +#, python-format +msgid "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." +msgstr "" +"Katalog %s jest niezapisywalny.\n" +"Upewnij się, że zamiast niego wybrałeś zapisywalny katalog." + +#, python-format +msgid "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" +msgstr "" + +# +msgid "The following files were found..." +msgstr "Następujące pliki zostały znalezione..." + +# +msgid "The md5sum validation failed, the file may be corrupted!" +msgstr "Suma kontrolna md5sum nieprawidłowa, plik może być uszkodzony!" + +# +msgid "" +"The network wizard extension is not installed!\n" +"Please install it." +msgstr "" +"Wizard sieci nie jest zainstalowany!\n" +"Zainstaluj go najpierw." + +# +#, python-format +msgid "The path %s already exists." +msgstr "Ścieżka %s już istnieje." + +# +msgid "The pin code you entered is wrong." +msgstr "Wpisany kod PIN jest niepoprawny." + +# +#, python-format +msgid "The results have been written to %s." +msgstr "Wyniki zostały zapisane w %s." + +# +msgid "The sleep timer has been activated." +msgstr "Wyłącznik czasowy został aktywowany." + +# +msgid "The sleep timer has been disabled." +msgstr "Wyłącznik czasowy został wyłączony." + +# +msgid "" +"The software management extension is not installed!\n" +"Please install it." +msgstr "" +"Rozszerzenie 'Zarządzanie oprogramowaniem' nie jest zainstalowane!\n" +"Zainstaluj je najpierw." + +# +#, python-format +msgid "The status of the current beta image could not be checked because %s can not be reached." +msgstr "Status aktualnego beta image nie może zostać zweryfikowany ze względu na brak dostępu do %s." + +# +msgid "The timer file (timers.xml) is corrupt and could not be loaded." +msgstr "Plik Timera (timers.xml) jest uszkodzony i nie może być załadowany." + +msgid "The user interface of your receiver is restarting" +msgstr "Trwa restart GUI odbiornika" + +msgid "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" +msgstr "" +"Trwa restart GUI odbiornika\n" +"z powodu błędu w mytest.py" + +# +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." +msgstr "" +"Plugin sieci bezprzewodowej nie jest zainstalowany! \n" +"Zainstaluj go i wybierz co dalej." + +# +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it." +msgstr "" +"Plugin sieci bezprzewodowej nie jest zainstalowany!\n" +"Zainstaluj go." + +# +msgid "The wizard can backup your current settings. Do you want to do a backup now?" +msgstr "Kreator może utworzyć backup aktualnych ustawień. Chcesz zrobić kopię teraz?" + +#, python-format +msgid "The wizard found a configuration backup. Do you want to restore your old settings from %s?" +msgstr "Kreator znalazł backup plików konfiguracyjnych, Przywrócić stare ustawienia z %s?" + +# +msgid "The wizard is finished now." +msgstr "Działanie kreatora zakończone." + +# +msgid "There are at least " +msgstr "Jest co namniej" + +# +#, python-format +msgid "There are at least %s updates available." +msgstr "Dostępnych co najmniej %s aktualizacji." + +# +msgid "There are currently no outstanding actions." +msgstr "Obecnie nie ma zaległych działań." + +# +msgid "There are no updates available." +msgstr "Brak dostępnych aktualizacji" + +msgid "There is no signal to lock on !" +msgstr "Brak sygnału do złapania!" + +# +msgid "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" +msgstr "" +"Nie ma wystarczającej ilości miejsca na wybranej partycji.\n" +"Czy kontynuować?" + +# +msgid "This DVD RW medium is already formatted - reformatting will erase all content on the disc." +msgstr "Nosnik DVD RW jest już sformatowany - jego ponowny format spowoduje utratę wszystkich danych." + +msgid "" +"This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!" +msgstr "" + +# +msgid "This plugin is installed." +msgstr "Plugin zainstalowany" + +# +msgid "This plugin is not installed." +msgstr "Plugin nie zainstalowany" + +# +msgid "This plugin will be installed." +msgstr "Plugin zostanie zainstalowany" + +# +msgid "This plugin will be removed." +msgstr "Plugin zostanie usunięty" + +#, python-format +msgid "This receiver cannot decode %s streams!" +msgstr "Ten odbiornik nie może zdekodować %s strumieni!" + +# +msgid "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration" +msgstr "" +"Ten test sprawdzi poprawność konfiguracji nameservera.\n" +"Jeśli zobaczysz informację:\"niepotwierdzony\"\n" +"- sprawdź ustawienia DHCP, przewody i ustawienia adaptera sieciowego\n" +"- jeśli dokonałeś ręcznej konfiguracji serwera nazw sprawdź ponownie wpisy w konfiguracji \"Nameserver\"" + +# +msgid "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" +msgstr "" +"Ten test sprawdzi czy podłączono kabel sieciowy.\n" +"Jeśli zobaczysz \"rozłączony\":\n" +"- sprawdź czy kabel sieciowy jest podłączony\n" +"- sprawdź czy kabel sieciowy nie jest uszkodzony" + +# +msgid "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" +msgstr "" +"Ten test sprawdzi poprawność adresu IP przypisanego do adaptera LAN.\n" +"Jeśli otrzymasz wiadomość \"niepotwierdzony\":\n" +"- nie znaleziono poprawnego adresu IP\n" +"- sprawdź DHCP, kabel i adapter sieciowy" + +# +msgid "" +"This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." +msgstr "" +"Ten test sprawdzi czy adapter LAN jest ustawiony w tryb DHCP.\n" +"Jeśli otrzymasz komunikat \"wyłączony\":\n" +"- adapter LAN jest ustawiony na 'ręczne' IP\n" +"- sprawdź czy wpisano poprawne IP w oknie ustawień adaptera sieciowego\n" +"Jesli otrzymasz wiadomość \"włączony\":\n" +"- sprawdź czy w sieci znajduje się skonfigurowany i włączony serwer DHCP." + +# +msgid "This test detects your configured LAN adapter." +msgstr "Test wykrywa skonfigurowany adapter sieci LAN." + +msgid "" +"This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\n" +"Are you sure?" +msgstr "" +"Wszystkie pozycje dla twojej obrotnicy zostaną przekalkulowane, to może usunąć wcześniej zapisane pozycje i dostrojenie!\n" +"Chcesz kontynuować?" + +# +msgid "Three" +msgstr "Trzy" + +# +msgid "Threshold" +msgstr "Próg" + +# +msgid "Thu" +msgstr "Czw" + +# +msgid "Thumbnails" +msgstr "Miniatury" + +# +msgid "Thursday" +msgstr "Czwartek" + +# +msgid "Time" +msgstr "Czas" + +msgid "Time scale" +msgstr "Przedział czasowy" + +# +msgid "Timer" +msgstr "Timery" + +msgid "Timer Overview" +msgstr "Lista timerów" + +# +msgid "Timer edit" +msgstr "Edycja timera" + +# +msgid "Timer editor" +msgstr "Edytor timera" + +# +msgid "Timer entry" +msgstr "Szczegóły timera" + +# +msgid "Timer log" +msgstr "Log timera" + +# +msgid "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" +msgstr "" +"W pliku timer.xml wykryto 'nakładanie się' timerów!\n" +"Sprawdź to!" + +msgid "Timer overview" +msgstr "Opis timera" + +# +msgid "Timer recording location" +msgstr "Lokalizacja nagrań z timera" + +# +msgid "Timer sanity error" +msgstr "Błąd timera" + +# +msgid "Timer selection" +msgstr "Wybór timera" + +msgid "Timer selection..." +msgstr "Wybór timera..." + +# +msgid "Timer type" +msgstr "Typ timera" + +# +msgid "Timeshift" +msgstr "" + +msgid "Timeshift Live" +msgstr "" + +# +msgid "Timeshift location" +msgstr "Lokalizacja timeshift" + +# +msgid "Timeshift not possible!" +msgstr "Timeshift niemożliwy!" + +# +msgid "Timezone" +msgstr "Strefa czasowa" + +# +msgid "Title" +msgstr "Tytuł" + +# +msgid "Title properties" +msgstr "Właściwości tytułu" + +# +msgid "Titleset mode" +msgstr "Tryb tytułów" + +# +msgid "To audio selection" +msgstr "Przejdź do wyboru ścieżki audio" + +# +msgid "To subtitle selection" +msgstr "Przejdź do wyboru napisów" + +msgid "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." +msgstr "" + +# +msgid "Today" +msgstr "Dzisiaj" + +# +msgid "Toggle a cut mark at the current position" +msgstr "Wstaw znacznik cięcia w aktualnej pozycji" + +# +msgid "Tone amplitude" +msgstr "" + +# +msgid "Tone mode" +msgstr "" + +# +msgid "Toneburst" +msgstr "" + +# +msgid "Toneburst A/B" +msgstr "" + +msgid "Top and bottom" +msgstr "" + +# +msgid "Track" +msgstr "Ścieżka" + +# +msgid "Translation" +msgstr "Tłumaczenie" + +# +msgid "Translation:" +msgstr "Tłumaczenie:" + +msgid "Translations" +msgstr "Tłumaczenie" + +# +msgid "Transmission mode" +msgstr "Tryb transmisji" + +# +msgid "Transponder" +msgstr "" + +# +msgid "Transponder type" +msgstr "Typ transpondera" + +msgid "Trash can" +msgstr "Kosz" + +# +msgid "Tries left:" +msgstr "Pozostało prób:" + +# +msgid "Try to find used transponders in cable network.. please wait..." +msgstr "Próbuje odnaleźć transpondery używane w sieci kablowej... Proszę czekać..." + +# +msgid "Trying to download a new packetlist. Please wait..." +msgstr "Próbuje pobrać nową listę pakietów. Proszę czekać..." + +# +msgid "Tue" +msgstr "Wto" + +# +msgid "Tuesday" +msgstr "Wtorek" + +# +msgid "Tune" +msgstr "Ustawienia" + +# +msgid "Tune and focus" +msgstr "" + +# +msgid "Tune failed!" +msgstr "Dostrojenie nie powiodło się!" + +# +msgid "Tuner" +msgstr "" + +# +msgid "Tuner configuration" +msgstr "Konfiguracja tunera" + +msgid "Tuner is not supported" +msgstr "Tuner nieobsługiwany" + +# +msgid "Tuner slot" +msgstr "Slot tunera" + +# +msgid "Tuner status" +msgstr "Status tunera" + +# +#, python-format +msgid "Tuner status %s" +msgstr "Status tunera %s" + +# +msgid "Tuner type" +msgstr "Typ tunera" + +# +msgid "Turkish" +msgstr "Turecki" + +msgid "Turn on the power LED during standby." +msgstr "Włączaj diodę zasilania w trybie czuwania" + +msgid "Turning step size" +msgstr "Rozmiar kroku obrotu" + +# +msgid "Two" +msgstr "Dwa" + +# +msgid "Type" +msgstr "Typ" + +# +msgid "Type of scan" +msgstr "Typ skanowania" + +# +msgid "USALS" +msgstr "" + +msgid "USALS calibration" +msgstr "Kalibracja USALS" + +# +msgid "USB stick" +msgstr "Pen USB" + +# +msgid "USB stick wizard" +msgstr "Kreator pena USB" + +# +msgid "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Trwa aktualizacja\n" +"Czekaj aż nastąpi restart odbiornika\n" +"To może potrwać kilka minut" + +# +msgid "Undo install" +msgstr "Anuluj instalację" + +# +msgid "Undo uninstall" +msgstr "Anuluj odinstalowanie" + +msgid "Unencrypted" +msgstr "Nieszyfrowane" + +# +msgid "UnhandledKey" +msgstr "Klawisz nieobsługiwany" + +# +msgid "Unicable" +msgstr "" + +# +msgid "Unicable LNB" +msgstr "" + +# +msgid "Unicable Martix" +msgstr "" + +# +msgid "Uninstall" +msgstr "Odinstaluj" + +# +msgid "Universal LNB" +msgstr "Uniwersalny LNB" + +msgid "Unknown" +msgstr "Nieznany" + +# +msgid "Unmount" +msgstr "Odmontuj" + +# +msgid "Unsupported" +msgstr "Nieobsługiwany" + +# +msgid "Update" +msgstr "Aktualizacja" + +# +msgid "Update and ask to reboot" +msgstr "Zaktualizuj i zapytaj o restart" + +msgid "Update and reboot (recommended)" +msgstr "Zaktualizuj i zrestartuj (rekomendowane)" + +# +msgid "Update channel list only" +msgstr "Zaktualizuj tylko listę kanałów" + +#, python-format +msgid "Update completed, %d package was installed." +msgid_plural "Update completed, %d packages were installed." +msgstr[0] "Aktualizacja zakończona, zainstalowano %d pakiet." +msgstr[1] "Aktualizacja zakończona, zainstalowano %d pakiety." +msgstr[2] "Aktualizacja zakończona, zainstalowano %d pakietów." + +msgid "Update completed. Do you want to reboot your receiver?" +msgstr "Aktualizacja zakończona. Czy chcesz zrestartować odbiornik?" + +msgid "Update failed. Your receiver does not have a working internet connection." +msgstr "Aktualizacja nie powiodła się. Brak działającego połączenia internetowego." + +msgid "Update has completed." +msgstr "Aktualizacja zakończona." + +# +msgid "Updatefeed not available." +msgstr "Aktualizacje nie dostępne." + +# +msgid "Updating software catalog" +msgstr "Aktualizowanie katalogu oprogramowania" + +# +msgid "Upgrading" +msgstr "Aktualizowanie" + +# +msgid "Use" +msgstr "Użyj" + +# +msgid "Use DHCP" +msgstr "Użyj DHCP" + +msgid "Use EIT EPG information when it is available." +msgstr "Użyj informacji EIT EPG gdy dostępne." + +msgid "Use FreeSat EPG information when it is available." +msgstr "Użyj informacji EPG FreeSat gdy dostępne." + +msgid "Use MHW EPG information when it is available." +msgstr "Użyj informacji EPG MHW gdy dostępne." + +msgid "Use Netmed EPG information when it is available." +msgstr "Użyj informacji EPG Netmed gdy dostępne." + +# +msgid "Use TV remote control" +msgstr "Użyj pilota od TV" + +# +msgid "Use USALS for this sat" +msgstr "Użyj USALS dla tego satelity" + +msgid "Use ViaSat EPG information when it is available." +msgstr "Użyj informacji EPG Viasat gdy dostępne." + +msgid "Use Virgin EPG information when it is available." +msgstr "Użyj informacji EPG Virgin gdy dostępne." + +# +msgid "Use a gateway" +msgstr "Użyj bramy" + +msgid "Use fastscan channel names" +msgstr "Użyj nazw kanałów z Fastscan" + +msgid "Use fastscan channel numbering" +msgstr "Użyj numeracji kanałów z Fastscan" + +msgid "Use frequency or channel" +msgstr "Użyj częstotliwości lub kanału" + +msgid "Use individual settings for each directory" +msgstr "Użyj osobnych ustawień dla każdego folderu" + +# +msgid "Use interface" +msgstr "Użyj intrefejsu" + +# +msgid "Use official channel numbering" +msgstr "Użyj oficjalnej numeracji kanałów" + +# +msgid "Use original DVB subtitle position" +msgstr "Użyj oryginalnej pozycji napisów DVB" + +# +msgid "Use original teletext position" +msgstr "Użyj oryginalnej pozycji jak w teletekst" + +# +msgid "Use power measurement" +msgstr "Użyj pomiaru mocy" + +# +msgid "Use the network wizard to configure selected network adapter" +msgstr "Użyj wizarda sieci do konfiguracji wybranego adaptera" + +# +msgid "Use the network wizard to configure your network\n" +msgstr "Użyj wizarda, aby skonfigurować sieć\n" + +# +msgid "Use the up/down keys on your remote control to select an option. After that, press OK." +msgstr "Użyj przycisków góra/dół aby wybrać opcje. Następnie wciśnij OK." + +# +msgid "Use the wizard to set up basic features" +msgstr "Użyj wizarda aby ustawić podstawowe funkcje" + +# +msgid "Use these input device settings?" +msgstr "Użyć tych ustawień dla urządzenia?" + +msgid "Use these settings?" +msgstr "Użyć tych ustawień?" + +# +msgid "Use this video enhancement settings?" +msgstr "Użyć tych ustawień korekcji obrazu?" + +# +msgid "Use trash can in movielist" +msgstr "Użyj 'Kosza' w liście filmów" + +# +msgid "Used service scan type" +msgstr "Używany typ skanowania kanałów" + +msgid "User - bouquets" +msgstr "Bukiety" + +# +msgid "User defined" +msgstr "Zdefiniowany przez użytkownika" + +msgid "User defined transponder" +msgstr "Transponder zdefiniowany przez użytkownika" + +msgid "User interface" +msgstr "Interfejs użytkownika" + +# +msgid "Username" +msgstr "Nazwa użytkownika" + +#, python-format +msgid "Using LNB %d" +msgstr "Używany LNB %d" + +# +msgid "Using fixed address" +msgstr "Użyty stały adres" + +#, python-format +msgid "Using tuner %s" +msgstr "Używany tuner %s" + +msgid "Usually when the subtitle language is the same as the audio language, the subtitles will not be used. Enable this option to allow these subtitles to be used." +msgstr "Normalnie gdy język napisów jest taki sam jak ścieżka audio napisy nie są wyświetlane. Włączenie tej opcji pozwala wyświetlić napisy w takiej sytuacji." + +# +msgid "VCR scart" +msgstr "" + +msgid "VMGM (intro trailer)" +msgstr "" + +# +msgid "Vertical" +msgstr "Pionowa (V)" + +msgid "Vertical turning speed" +msgstr "Prędkość obrotu w pionie" + +msgid "Video PID" +msgstr "Video PID" + +# +msgid "Video enhancement preview" +msgstr "Podgląd korekcji obrazu" + +# +msgid "Video enhancement settings" +msgstr "Korekcja obrazu" + +# +msgid "Video enhancement setup" +msgstr "Ustawienia korekcji obrazu" + +# +msgid "Video fine tuning" +msgstr "Ustawienia obrazu" + +# +msgid "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." +msgstr "" +"Wybór wejścia video\n" +"\n" +"Wciśnij OK, jeśli widzisz tą stronę na ekranie TV (lub wybierz inne wejście).\n" +"\n" +"Kolejne wejście będzie wypróbowane za 20 sekund." + +# +msgid "Video mode selection." +msgstr "Wybór trybu wideo" + +# +msgid "Video output" +msgstr "Wyjście video" + +# +msgid "Video setup" +msgstr "Ustawienia video" + +# +msgid "Video wizard" +msgstr "" + +#, python-format +msgid "Video: %s fps" +msgstr "" + +msgid "VideoMode" +msgstr "" + +# +msgid "Videocodec" +msgstr "" + +msgid "Videoformat" +msgstr "" + +msgid "Videosize" +msgstr "" + +msgid "View Rass interactive..." +msgstr "" + +# +msgid "View details" +msgstr "Pokaż szczegóły" + +# +msgid "View list of available " +msgstr "Zobacz listę dostępnych" + +# +msgid "View list of available CommonInterface extensions" +msgstr "Zobacz listę dostępnych rozszerzeń dla Modułu CI" + +# +msgid "View list of available EPG extensions." +msgstr "Zobacz listę dostępnych rozszerzeń dla EPG" + +# +msgid "View list of available Satellite equipment extensions." +msgstr "Zobacz listę dostępnych rozszerzeń dla wyposażenia sat." + +# +msgid "View list of available communication extensions." +msgstr "Zobacz listę dostępnych rozszerzeń dla komunikacji" + +# +msgid "View list of available default settings" +msgstr "Zobacz listę dostępnych ustawień domyślnych" + +# +msgid "View list of available display and userinterface extensions." +msgstr "Zobacz listę dostępnych rozszerzeń dla wyświetlacza i GUI" + +# +msgid "View list of available multimedia extensions." +msgstr "Zobacz listę dostępnych rozszerzeń dla multimediów" + +# +msgid "View list of available networking extensions" +msgstr "Zobacz listę dostępnych rozszerzeń sieci" + +# +msgid "View list of available recording extensions" +msgstr "Zobacz listę dostępnych rozszerzeń nagrywania" + +# +msgid "View list of available skins" +msgstr "Zobacz listę dostępnych skinów" + +# +msgid "View list of available software extensions" +msgstr "Zobacz listę dostępnych rozszerzeń oprogramowania" + +# +msgid "View list of available system extensions" +msgstr "Zobacz listę dostępnych rozszerzeń systemu" + +# +msgid "View photos..." +msgstr "Wyświetl zdjęcia..." + +# +msgid "View teletext..." +msgstr "Wyświetl teletext..." + +# +msgid "View video CD..." +msgstr "Odtwórz video CD..." + +# +msgid "Virtual keyboard" +msgstr "Wirtualna klawiatura" + +# +msgid "Voltage mode" +msgstr "Tryb napięcia" + +# +msgid "Volume" +msgstr "Głośność" + +# +msgid "W" +msgstr "W" + +# +msgid "WEP" +msgstr "WEP" + +msgid "WLAN connection" +msgstr "Połączenie WLAN." + +# +msgid "WPA" +msgstr "WPA" + +# +msgid "WPA or WPA2" +msgstr "WPA lub WPA2" + +# +msgid "WPA2" +msgstr "WPA2" + +# +msgid "WSS on 4:3" +msgstr "WSS na 4:3" + +# +msgid "Waiting" +msgstr "Oczekiwanie" + +msgid "Waiting for mount" +msgstr "Czekaj na podmontowanie" + +msgid "Waiting for partition" +msgstr "Czekaj na utworzenie partycji" + +# +msgid "Wakeup" +msgstr "Wybudzenie" + +# +msgid "Wakeup TV from standby" +msgstr "Wybudzaj TV ze stanu czuwania" + +# +msgid "Wakeup receiver for start timer" +msgstr "Wybudzaj odbiornik aby uruchomić timer" + +# +msgid "Wakeup receiver from standby" +msgstr "Wybudzaj odbiornik ze stanu czuwania" + +# +msgid "Wakeup signal from TV" +msgstr "Sygnał wybudzenia z TV" + +# +msgid "Wakeup type" +msgstr "Typ wybudzania" + +msgid "Warning: no LNB; using factory defaults." +msgstr "UWAGA: brak LNB; użyto ustawień domyślnych" + +# +msgid "Watch movies..." +msgstr "Oglądaj filmy..." + +# +msgid "Watch recordings..." +msgstr "Oglądaj nagrania..." + +# +msgid "Wed" +msgstr "Śro" + +# +msgid "Wednesday" +msgstr "Środa" + +# +msgid "Weekday" +msgstr "Dzień tygodnia" + +msgid "Weighted position" +msgstr "Pozycja ważona" + +# +msgid "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." +msgstr "" +"Witamy w edytorze cięcia filmu.\n" +"\n" +"Przejdź do miejsca, które ma być nowym początkiem pliku. Naciśnij OK, wybierz 'początek cięcia'.\n" +"\n" +"Przejdź do miejsca, które ma być nowym końcem pliku. Naciśnij OK, wybierz 'koniec cięcia'. To wszystko." + +msgid "Welcome to the image upgrade wizard. The wizard will assist you in upgrading the firmware of your receiver by providing a backup facility for your current settings and a short explanation of how to upgrade your firmware." +msgstr "Witaj w wizardzie aktualizacji oprogramowania. Wizard będzie asystował przy aktualizacji oprogramowania odbiornika ułatwiając backup aktualnych ustawień i krótko wyjaśni jak zaktualizować oprogramowanie." + +msgid "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" +msgstr "" +"Witam. \n" +"\n" +"Jeśli chcesz się połączyć z internetem, ten kreator przeprowdzi cię przez uproszczoną konfigurację odbiornika. \n" +"Nacisnij OK aby rozpocząć konfigurację sieci." + +msgid "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." +msgstr "" +"Witaj.\n" +"\n" +"Ten kreator przeprowadzi Cię przez podstawowe ustawienia odbiornika.\n" +"Wciśnij OK, aby przejść do kolejnego kroku." + +# +msgid "Welcome..." +msgstr "Witaj..." + +# +msgid "West" +msgstr "Zachód" + +msgid "West limit set" +msgstr "Limit zachodni (W) ustawiony" + +# +msgid "What do you want to scan?" +msgstr "Co chcesz skanować?" + +msgid "When enabled the PiP can be closed by the exit button." +msgstr "Gdy włączone, PiP może być wyłączony klawiszem exit" + +msgid "When enabled the arrow buttons around the OK button will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled the left, right, CH+/-, B+/-, P+/- buttons will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled you can specify a timeframe to ignore the shutdown timer when the receiver is in standby mode" +msgstr "Gdy włączone, można określić przedział czasowy, w którym 'timer wyłączania' ma być ignorowany, gdy odbiornik jest w trybie czuwania." + +msgid "When enabled you can specify a timeframe were the inactivity sleeptimer is ignored. Not the detection is disabled during this timeframe but the inactivity timeout is disabled" +msgstr "Gdy włączone, można określić przedział czasowy w któym sleeptimer bezczynności będzie ignorowany." + +msgid "When enabled you can zap channels with the CH+/-, B+/-, P+/- buttons instead of opening the channel selection list." +msgstr "Gdy włączone, przyciski CH+/-, B+/-, P+/- przełączają kanały, a nie otwierają listę wyboru kanałów." + +msgid "When enabled you get the channel selection list via the OK button, the infobar toggle is then transfered to exit button" +msgstr "Gdy włączone, lista wyboru kanałów jest wywoływana przyciskiem OK, natomiast za wyświetlanie/ukrywanie paska info odpowiada przycisk exit." + +msgid "When enabled, AIT data will be included in http streams. This allows a client receiver to use HbbTV." +msgstr "Gdy włączone, dane AIT będą zawarte w streamach http. To pozwala używać HbbTV na odbiorniku 'kliencie'." + +msgid "When enabled, ECM data will be included in http streams. This allows a client receiver to do the descrambling." +msgstr "Gdy włączone, dane ECM będą zawarte w streamach http. To pozwala wykonać odkodowanie na odbiorniku 'kliencie'." + +msgid "When enabled, EIT data will be included in http streams. This allows a client receiver to show EPG." +msgstr "Gdy włączone, dane EIT będą zawarte w streamach http. To pozwala wyświetlić EPG na odbiorniku 'kliencie'." + +msgid "When enabled, a popup message will be shown when a movie has finished and the next one will start." +msgstr "Gdy włączone, gdy film się zakończy i następny rozpocznie, na ekranie zostanie wyświetlona wiadomość." + +msgid "When enabled, a popup message will be shown when a recording starts." +msgstr "Gdy włączone, gdy rozpocznie się nagrywanie, na ekranie zostanie wyświetlona wiadomość." + +msgid "When enabled, a radio background image will be visible while listening to a radio channel." +msgstr "Gdy włączone, radio logo będzie wyświtlane jako tło podczas słuchania." + +msgid "When enabled, a recording is allowed to interrupt live tv, when there are no free tuners." +msgstr "Gdy włączone, nagrywanie może przerwać oglądanie 'na żywo', gdy brak wolnego tunera." + +msgid "When enabled, a warning will be displayed and the user will get an option to stop or to continue the timeshift." +msgstr "Gdy właczone, wyświetli się ostrzeżenie i użytkownik będzie miał możliwość wyboru czy zatrzymać czy kontynuować timeshift" + +msgid "When enabled, authentication is required to watch http streams." +msgstr "Gdy włączone, aby uruchmić stream http z odbiornika wymagane będzie uwierzytelnienie." + +msgid "When enabled, channel numbering will start at '1' for each bouquet." +msgstr "Gdy włączone, numerowanie kanałów będzie zaczynać się od '1' dla każdego bukietu." + +msgid "When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen." +msgstr "Gdy włączone, zawartość z aspect ratio 4:3 będzie rozciągana aby dopasować do ekranu." + +msgid "When enabled, continue to the next bouquet when the last channel of the current bouquet is reached while changing channels." +msgstr "Gdy włączone, po dojściu do ostatniego kanału w danym bukiecie podczas przełączania, automatycznie nastąpi przejście do kolejnego bukietu." + +msgid "When enabled, deleted recordings are moved to the trash can, instead of being deleted immediately." +msgstr "Gdy włączone, usunięte nagrania zostaną przeniesione do 'Kosza', zamiast natychmiastowego usunięcia." + +msgid "When enabled, display the EIT now/next eventdata in infobar. When disabled, display now/next eventdata from the EPG cache instead." +msgstr "Gdy włączone, w paski info są wyświetlane dane EIT teraz/następnie dla danej audycji. Gdy wyłączone, wyświetlane są dane z cache EPG." + +msgid "When enabled, encryption info will be shown in the infobar (when supported by the skin)." +msgstr "Gdy włączone, info o kodowaniu będzie wyświetlane w pasku info (jeśli wspierane przez skin)." + +msgid "When enabled, error messages related to the Common Interface module will not be shown." +msgstr "Gdy włączone, komunikaty błędów związanych z modułem CI nie będą wyświetlane." + +msgid "When enabled, error messages related to zapping will not be shown." +msgstr "Gdy włączone, komunikaty błędów związanych z przełączaniem kanałów nie będą wyświetlane." + +msgid "When enabled, external subtitles will be always turned on for playback movie." +msgstr "Gdy włączone, napisy zewnętrzne będą zawsze uruchamiane automatycznie przy odtwarzaniu filmu" + +msgid "When enabled, graphical DVB subtitles are preferred over teletext subtitles, when both types are available." +msgstr "Gdy włączone, graficzne napisy DVB będą preferowane przed napisami teletekst, gdy oba rodzaje są dostępne." + +msgid "When enabled, graphical DVB subtitles will be centered horizontally." +msgstr "Gdy włączone, graficzne napisy DVB będą wyśrodkowane poziomo." + +msgid "When enabled, graphical DVB subtitles will be displayed at their original position." +msgstr "Gdy włączone, graficzne napisy DVB będą wyświetlane w oryginalnym położeniu." + +msgid "When enabled, graphical DVB subtitles will be displayed in yellow, instead of the original color." +msgstr "Gdy włączone, graficzne napisy DVB będą wyświetlane na żółto zamiast oryginalnego koloru." + +msgid "When enabled, http streams are descrambled on the server side. The (remote) client receiver does not have to do descrambling." +msgstr "Gdy włączone, streamy http będą odkodowywane po stronie serwera. Zdalny odbiornik (klient) nie będzie musiał wykonywać odkodowywania." + +msgid "When enabled, it is possible to leave the movieplayer with exit." +msgstr "Gdy właczone, można wyjść z odtwarzacza za pomocą klawisza exit" + +msgid "When enabled, measure power consumption to detect when the rotor stops turning (when supported by the tuner)." +msgstr "Gdy włączone, pobierana moc będzie mierzona w celu wykrycia czy obrotnica zakończyła ruch (jeżeli wspierane przez tuner)." + +msgid "When enabled, number markers will be hiden." +msgstr "Gdy włączone, markery numeryczne będą ukryte " + +msgid "When enabled, services may be grouped in multiple bouquets." +msgstr "Gdy włączone, kanały mogą być grupowane w wiele bukietów." + +# +msgid "When enabled, show channel numbers in the channel selection screen." +msgstr "Gdy włączone, wyświetla numery w liście wyboru kanałów" + +msgid "When enabled, subtitles for the hearing impaired can be used." +msgstr "Gdy włączone, napisy dla niesłyszących mogą być wyświetlane." + +msgid "When enabled, subtitles for the hearing impaired will be preferred over normal subtitles, when both types are available." +msgstr "Gdy włączone, napisy dla niesłyszących będą preferowane przed normalnymi napisami, jeżeli oba rodzaje są dostępne. " + +msgid "When enabled, teletext pages will be cached, allowing faster access." +msgstr "Gdy włączone, strony teletextu będą cache'owane, co pozwoli na szybszy dostęp." + +msgid "When enabled, teletext subtitles will be displayed at their original position." +msgstr "Gdy włączone, napisy teletext będą wyświetlane w oryginalnym położeniu." + +msgid "When enabled, the VCR scart option will be shown on the main menu" +msgstr "Gdy włączone, opcja VCR scart będzie wyświetlana w menu głównym " + +msgid "When enabled, the channel selection list will be hidden while listening to a radio channel" +msgstr "Gdy włączone, lista wyboru kanałów będzie ukryta podczas słuchania radia." + +msgid "When enabled, the infobar will be displayed when a new event starts." +msgstr "Gdy włączone, infobar będzie wyświetlany przy starcie nowej audycji." + +msgid "When enabled, the infobar will be displayed when changing channels." +msgstr "Gdy włączone, infobar będzie wyświetlany przy zmianie kanałów." + +msgid "When enabled, the infobar will be displayed when skipping forwards/backwards during media playback." +msgstr "Gdy włączone, infobar będzie wyświetlany przy przewijaniu w przód/tył podczas odtwarzania." + +msgid "When enabled, the lenght of each recording will be shown in the movielist (this might cause some additional loading time)." +msgstr "Gdy włączone, długość każdego nagrania będzie pokazywana w liście filmów (może to wydłużyć czas ładowania listy)." + +msgid "When enabled, the original line breaks will be removed from the teletext subtitles." +msgstr "Gdy włączone, oryginalne podziały linii zostaną usunięte z napisów teletext." + +msgid "When enabled, the receiver will automatically use the audio track which you selected before." +msgstr "Gdy włączone, automatycznie zostanie włączona ścieżka audio ostatnio wybrana na danym kanale." + +msgid "When enabled, the receiver will automatically use the subtitles which you selected before." +msgstr "Gdy włączone, automatycznie zostaną włączone napisy ostatnio wybrane na danym kanale." + +msgid "When enabled, the receiver will no longer monitor the tuned transponder for possible changes. Do not use this option unless you know what you are doing." +msgstr "Gdy włączone, odbiornik nie będzie automatycznie przeszukiwał bieżącego transpondera w poszukiwaniu zmian. Użyj tej opcji TYLKO jeżeli wiesz co robisz ;-)..." + +msgid "When enabled, the receiver will select an AC3 track (when available)." +msgstr "Gdy włączone, automatycznie zostanie wybrana ścieżka audio AC3 (gdy dostępna)." + +msgid "When enabled, the receiver will select an AC3+ track (when available)." +msgstr "Gdy włączone, automatycznie zostanie wybrana ścieżka audio AC3+ (gdy dostępna)." + +msgid "When enabled, timeshift starts automatically in background after specified time." +msgstr "Gdy włączone, timeshift zostanie uruchomiony w tle po określonym czasie" + +# +msgid "When enabled, use DHCP for the IP configuration." +msgstr "Gdy włączone, używa DHCP do konfiguracji IP." + +msgid "When enabled, your receiver will detect activity on the VCR SCART input." +msgstr "Gdy włączone, odbiornik automatycznie wykryje urządzenia na wejściu VCR SCART." + +msgid "When nonzero, a recording will start earlier than the starting time indicated by the EPG." +msgstr "Gdy różne od 0, nagranie wystartuje wcześniej niż czas rozpoczęcia określony w EPG." + +msgid "When nonzero, a recording will stop later than the ending time indicated by the EPG." +msgstr "Gdy różne od 0, nagranie zatrzyma się później niż czas zakończenia określony w EPG." + +msgid "When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture." +msgstr "Wybierz czy skalować/rozciągać zawartość z aspect ratio 16:9." + +msgid "When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture." +msgstr "Wybierz czy skalować/rozciągać zawartość z aspect ratio 4:3." + +# +msgid "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" +msgstr "" +"Gdy wybierzesz powrót do ustawień fabrycznych, utracisz wszystkie dane konfiguracyjne\n" +"(w tym bukiety, kanały, satelity...)\n" +"Po przywróceniu ustawień fabrycznych twój tuner zrestartuje się!\n" +"\n" +"Czy chcesz przywrócić ustawienia fabryczne?" + +# +msgid "Where do you want to backup your settings?" +msgstr "Gdzie chcesz umieścić kopie zapasową ustawień?" + +# +msgid "Where to save temporary timeshift recordings?" +msgstr "Gdzie zapisywać tymczasowe nagrania timeshift?" + +# +msgid "Wireless LAN" +msgstr "Sieć bezprzewodowa" + +# +msgid "Wireless network" +msgstr "Sieć bezprzewodowa" + +# +msgid "Wireless network configuration..." +msgstr "Konfiguracja sieci bezprzewodowej..." + +# +msgid "Wireless network connection setup" +msgstr "Konfiguracjia sieci bezprzewodowej" + +# +msgid "Wireless network connection setup." +msgstr "Konfiguracjia sieci bezprzewodowej." + +# +msgid "Wireless network state" +msgstr "Status sieci bezprzewodowej" + +msgid "With popup" +msgstr "Wyświetl popup" + +msgid "Without popup" +msgstr "Bez ostrzeżenia" + +msgid "Would you like to install a softcam?" +msgstr "Czy chcesz zainstalować softcam?" + +# +msgid "Write error while recording. Disk full?\n" +msgstr "Błąd zapisu podczas nagrywania. Dysk jest pełny?\n" + +# +msgid "Write failed!" +msgstr "Błąd zapisu!" + +# +msgid "YPbPr" +msgstr "Component" + +# +msgid "Year" +msgstr "Rok" + +# +msgid "Yellow DVB subtitles" +msgstr "Żółte napisy DVB" + +# +msgid "Yes" +msgstr "Tak" + +msgid "Yes and save" +msgstr "Tak i zapisz" + +msgid "Yes and save in movie dir" +msgstr "Tak, i zapisz w katalogu movie" + +# +msgid "Yes to all" +msgstr "Tak dla wszystkich" + +msgid "Yes, always" +msgstr "Tak, zawsze" + +# +msgid "Yes, and delete this movie" +msgstr "Tak, i usuń ten film" + +# +msgid "Yes, backup my settings!" +msgstr "Tak, zrób kopie moich ustawień!" + +# +msgid "Yes, delete this movie and return to movie list" +msgstr "Tak, usuń i wróć do listy filmów" + +# +msgid "Yes, do a manual scan now" +msgstr "Tak, rozpocznij ręczne skanowanie" + +# +msgid "Yes, do an automatic scan now" +msgstr "Tak, rozpocznij automatyczne skanowanie" + +# +msgid "Yes, do another manual scan now" +msgstr "Tak, rozpocznij kolejne ręczne skanowanie" + +# +msgid "Yes, perform a shutdown now." +msgstr "Tak, wyłącz teraz." + +# +msgid "Yes, restore the settings now" +msgstr "Tak, przywróć ustawienia teraz" + +# +msgid "Yes, returning to movie list" +msgstr "Tak, powróć do listy filmów" + +# +msgid "Yesterday" +msgstr "Wczoraj" + +#, python-format +msgid "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" +msgstr "" +"Masz już zainstalowaną listę kanałów,\n" +"czy chcesz usunąć\n" +"\"%s\"?" + +# +msgid "You can cancel the installation." +msgstr "Możesz anulować instalację" + +# +msgid "You can cancel the removal." +msgstr "Możesz anulować usuwanie" + +msgid "You can continue watching TV etc. while this is running." +msgstr "Możesz nadal oglądać tv itd. w trakcie..." + +# +msgid "You can install this plugin." +msgstr "Możesz zainstalować ten plugin" + +msgid "You can only burn receiver recordings!" +msgstr "\"Możesz wypalać tylko nagrania!" + +# +msgid "You can remove this plugin." +msgstr "Możesz usunąć ten plugin" + +# +msgid "You cannot delete this!" +msgstr "Tego nie można usunąć!" + +msgid "You didn't select a channel to record from." +msgstr "Nie wybrałeś kanału z którego nagrywać" + +# +msgid "You have chosen to backup your settings. Please press OK to start the backup now." +msgstr "Wybrałeś utworzenie backupu swoich ustawień. Wciśnij OK aby rozpocząć." + +msgid "You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased." +msgstr "" + +# +msgid "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." +msgstr "Wybrałeś przywrócenie swoich ustawień. Enigma zostanie zrestartowana po przywróceniu. Wciśnij OK aby rozpocząć." + +# +#, python-format +msgid "You have to wait %s!" +msgstr "Musisz poczekać na %s!" + +msgid "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." +msgstr "" +"Potrzebujesz PC połączonego z odbiornikiem. Więcej informacji na stronie http://www.dm7025.de.\n" +"Teraz odbiornik zostanie wyłączony. Po wykonaniu instrukcji aktualizacji ze strony, nowe oprogramowanie zapyta czy przywrócić ustawienia." + +msgid "You system does not support ext4" +msgstr "Twój system nie wspiera ext4" + +# +msgid "Your backup succeeded. We will now continue to explain the further upgrade process." +msgstr "Backup został utworzony. Będziemy kontynuować wyjaśnianie procesu aktualizacji." + +# +msgid "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" +msgstr "Twoja kolekcja przekracza rozmiar zwykłego nośnika DVD, będziesz potrzebował czystegodwuwarstwowego DVD!" + +# +msgid "Your current collection will get lost!" +msgstr "Twoja obecna kolekcja zostanie utracona!" + +# +msgid "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." +msgstr "" +"Frontprocessor musi zostać zaktualizowany.\n" +"Naciśnij OK aby rozpocząć aktualizację." + +msgid "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Nastąpi upgrade frontprocesora\n" +"Czekaj aż odbiornik zrestartuje się\n" +"To może potrwać kilka minut" + +# +msgid "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." +msgstr "" +"Brak połączenia internetowego! \n" +"Wybierz co chcesz zrobić dalej." + +#, python-format +msgid "Your internet connection is working (ip: %s)" +msgstr "Połączenie internetowe aktywne (IP: %s)" + +# +msgid "Your network configuration has been activated." +msgstr "Konfiguracja sieci została aktywowana." + +msgid "Your receiver does not have an internet connection" +msgstr "Brak połączenia internetowego" + +# +msgid "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" +msgstr "" +"Odbiornik jest gotowy do użytku.\n" +"\n" +"Połączenie z internetem jest aktywne.\n" +"\n" + +msgid "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Odbiornik jest gotowy do użytku.\n" +"\n" +"Połączenie z internetem jest aktywne.\n" +"\n" +"Wciśnij OK aby kontynuować" + +msgid "Your receiver is rebooting" +msgstr "Trwa restart odbiornika" + +msgid "Your receiver is shutting down" +msgstr "Trwa wyłączanie odbiornika" + +msgid "Your receiver is shutting down. Please stand by..." +msgstr "Trwa wyłączanie odbiornika" + +msgid "Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver." +msgstr "Odbiornik może być teraz niezdatny do użytku. Zajrzyj do instrukcji użytkownika przed ponownym uruchomieniem." + +msgid "Your receiver will got to stand by due to the sleeptimer." +msgstr "Sleeptimer przełączy odbiornik w tryb czuwania" + +msgid "Your receiver will got to standby due to inactivity." +msgstr "Odbiornik przejdzie w tryb czuwania z powodu bezczynności" + +msgid "Your receiver will restart after pressing OK on your remote control." +msgstr "Odbiornik zostanie zrestartowany po wciśnięciu OK." + +# +msgid "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." +msgstr "" +"Połączenie bezprzewodowe z internetem nie może zostać zainicjowane \n" +"Podłączyłeś USB WLAN? \n" +"\n" +"Wybierz co chcesz zrobić dalej." + +msgid "Zap" +msgstr "Przełącz" + +# +msgid "Zap back to previously tuned service?" +msgstr "Przełączyć z powrotem na poprzedni kanał?" + +# +msgid "Zap back to service before positioner setup?" +msgstr "Powrócić na kanał sprzed ustawiania pozycjonera?" + +# +msgid "Zap back to service before tuner setup?" +msgstr "Powrócić na kanał sprzed konfiguracji tunera?" + +# +msgid "Zap focus to Picture in Picture" +msgstr "Przełączanie w oknie PiP" + +# +msgid "Zap focus to main screen" +msgstr "Przełączanie w głównym oknie" + +msgid "Zap mode" +msgstr " Tryb przełączania kanałów" + +msgid "Zap to selected channel" +msgstr "Przełącz na wybrany kanał" + +msgid "Zap to selected channel, or show detailed event info (depends on configuration)" +msgstr "Przełącz na wybrany kanał lub pokaż info o audycji (w zależności od konfiguracji)" + +# +msgid "[alternative edit]" +msgstr "[edycja alternatywnych]" + +# +msgid "[bouquet edit]" +msgstr "[edycja bukietu]" + +# +msgid "[favourite edit]" +msgstr "[edycja ulubionych]" + +# +msgid "[move mode]" +msgstr "[tryb przenoszenia]" + +# +msgid "a gui to assign services/providers to common interface modules" +msgstr "Menu do przyporządkowywania kanałów/nadawców dla modułów CI" + +# +msgid "a gui to assign services/providers/caids to common interface modules" +msgstr "Menu do przyporządkowywania kanałów/nadawców/CAIDów dla modułów CI" + +# +msgid "abort alternatives edit" +msgstr "Przerwij edycję alternatywnych" + +# +msgid "abort bouquet edit" +msgstr "Przerwij edycję bukietów" + +# +msgid "abort favourites edit" +msgstr "Przerwij edycję ulubionych" + +# +msgid "about to start" +msgstr "zaraz się rozpocznie" + +# +msgid "activate network adapter configuration" +msgstr "Aktywuj konfigurację adaptera sieciowego" + +# +msgid "add alternatives" +msgstr "Dodaj alternatywne kanały" + +# +msgid "add bookmark" +msgstr "Dodaj zakładkę" + +# +msgid "add bouquet" +msgstr "Dodaj bukiet" + +# +msgid "add marker" +msgstr "Dodaj znacznik" + +# +msgid "add service to bouquet" +msgstr "Dodaj kanał do bukietu" + +# +msgid "add service to favourites" +msgstr "Dodaj kanał do ulubionych" + +# +msgid "add to parental protection" +msgstr "Dodaj do kontroli rodzicielskiej" + +msgid "adult movie/drama" +msgstr "Film/Dramat dla dorosłych" + +# +msgid "advanced" +msgstr "Zaawansowane" + +msgid "adventure/western/war" +msgstr "Przygoda/Wojenny/Western" + +msgid "advertisement/shopping" +msgstr "Reaklama/Zakupy" + +msgid "after " +msgstr "po" + +# +msgid "alphabetic" +msgstr "Alfabetycznie" + +msgid "alphabetic reverse" +msgstr "Alfabetycznie (Z>A)" + +msgid "alternative" +msgstr "alternatywny" + +# +msgid "always" +msgstr "zawsze" + +msgid "and select next channel" +msgstr "i wybierz kolejny kanał" + +msgid "and select previous channel" +msgstr "i wybierz poprzedni kanał." + +msgid "arts/culture (without music, general)" +msgstr "Kultura/Sztuka (bez muzyki, ogólna)" + +msgid "arts/culture magazine" +msgstr "Magazyn kulturalny" + +msgid "athletics" +msgstr "Sport" + +# +msgid "audio tracks" +msgstr "Ścieżki audio" + +# +msgid "auto" +msgstr "Auto" + +# +msgid "automatic" +msgstr "Automatycznie" + +# +msgid "back" +msgstr "Wróć" + +# +msgid "background image" +msgstr "Obraz tła" + +msgid "ballet" +msgstr "Balet" + +#, python-format +msgid "bc%s" +msgstr "" + +# +msgid "better" +msgstr "Lepszy" + +# +msgid "black" +msgstr "Czarny" + +msgid "black & white" +msgstr "Czrno-biały" + +# +msgid "blacklist" +msgstr "Blacklist" + +# +msgid "blue" +msgstr "Niebieski" + +msgid "broadcasting/press" +msgstr "Relacja" + +# +msgid "by date" +msgstr "Wg daty" + +msgid "cartoon/puppets" +msgstr "Animowany" + +# +msgid "center" +msgstr "Środek" + +msgid "centered" +msgstr "wyśrodkowane" + +msgid "centered, wrapped" +msgstr "wyśrodkowane, zawiń" + +# +msgid "chapters" +msgstr "Rozdziały" + +msgid "childrens's/youth program (general)" +msgstr "Dla dzieci/młodzieży" + +# +msgid "circular left" +msgstr "Kołowa lewa" + +# +msgid "circular right" +msgstr "Kołowa prawa" + +msgid "comedy" +msgstr "Komedia" + +# +msgid "complex" +msgstr "Złożony" + +# +msgid "config menu" +msgstr "Menu konfiguracji" + +# +msgid "confirmed" +msgstr "Potwierdzony" + +# +msgid "connected" +msgstr "Połączony" + +# +msgid "continue" +msgstr "Kontynuuj" + +msgid "cooking" +msgstr "Gotowanie" + +# +msgid "copy to bouquets" +msgstr "Kopiuj do bukietów" + +# +msgid "create directory" +msgstr "Utwórz katalog" + +#, python-format +msgid "currently installed image: %s" +msgstr "Aktualnie zainstalowane image: %s" + +# +msgid "daily" +msgstr "Codziennie" + +# +msgid "day" +msgstr "Dzień" + +# +msgid "default" +msgstr "Domyślny" + +# +msgid "delete cut" +msgstr "Usuń cięcie" + +# +msgid "delete..." +msgstr "Usuń..." + +msgid "descramble and record ecm" +msgstr "Dekoduj i nagrywaj ECM" + +msgid "detective/thriller" +msgstr "Kryminał/Thriler" + +# +msgid "disable" +msgstr "Wyłącz" + +# +msgid "disable move mode" +msgstr "Wyłącz tryb przenoszenia" + +# +msgid "disabled" +msgstr "Wyłączony" + +# +msgid "disconnected" +msgstr "Rozłączone" + +msgid "discussion/interview/debate" +msgstr "Rozmowa/Wywiad/Debata" + +# +msgid "do nothing" +msgstr "Nic nie rób" + +msgid "documentary" +msgstr "Dokument" + +msgid "don't descramble, record ecm" +msgstr "Nie dekoduj, nagrywaj ECM" + +# +msgid "done!" +msgstr "Zrobione!" + +msgid "east" +msgstr "wschód" + +msgid "economics/social advisory" +msgstr "Porady ekonomiczne/społeczne" + +# +msgid "edit alternatives" +msgstr "Edytuj alternatywne kanały" + +msgid "education/science/factual topics (general)" +msgstr "Edukacja/Nauka/Fakty" + +# +msgid "empty" +msgstr "Pusty" + +# +msgid "enable" +msgstr "Włącz" + +# +msgid "enable bouquet edit" +msgstr "Włącz edycję bukietu" + +# +msgid "enable favourite edit" +msgstr "Włącz edycję ulubionych" + +# +msgid "enable move mode" +msgstr "Włącz tryb przenoszenia" + +# +msgid "enabled" +msgstr "Włączone" + +# +msgid "end alternatives edit" +msgstr "Koniec edycji alternatywnych" + +# +msgid "end bouquet edit" +msgstr "Koniec edycji bukietów" + +# +msgid "end cut here" +msgstr "Koniec cięcia tutaj" + +# +msgid "end favourites edit" +msgstr "Koniec edycji ulubionych" + +msgid "entertainment (10-16 year old)" +msgstr "Rozrywka (10-16 lat)" + +msgid "entertainment (6-14 year old)" +msgstr "Rozrywka (6-14 lat)" + +# +msgid "equal to" +msgstr "Równy" + +msgid "equestrian" +msgstr "Jeździectwo" + +# +msgid "exit DVD player or return to file browser" +msgstr "Zamknij odtwarzacz DVD lub powróć do przeglądarki plików" + +# +msgid "exit movielist" +msgstr "Wyjdź z listy filmów" + +# +msgid "exit network adapter configuration" +msgstr "Zamknij menu konfiguracji adaptera sieciowego" + +# +msgid "exit networkadapter setup menu" +msgstr "Zamknij menu konfiguracji adaptera sieciowego" + +msgid "experimental film/video" +msgstr "Film eksprymentalny" + +# +msgid "false" +msgstr "nie" + +msgid "fashion" +msgstr "Moda" + +# +msgid "fileformats (BMP, PNG, JPG, GIF)" +msgstr "Formaty plików (BMP, PNG, JPG, GIF)" + +# +msgid "filename" +msgstr "Nazwa pliku" + +msgid "film/cinema" +msgstr "Film/Kino" + +msgid "fine arts" +msgstr "Sztuki piękne" + +# +msgid "fine-tune your display" +msgstr "Dostrajanie ustawień ekranu" + +msgid "fitness & health" +msgstr "Fittness i zdrowie" + +# +msgid "flat alphabetic" +msgstr "Alfabetycznie (+katalogi)" + +msgid "flat alphabetic reverse" +msgstr "Alfabetycznie (+ katalogi) Z>A" + +msgid "folk/traditional music" +msgstr "Folk/Muzyka tradycyjna" + +msgid "football/soccer" +msgstr "Piłka nożna" + +msgid "foreign countries/expeditions" +msgstr "Wyprawy/Podróże" + +# +msgid "forward to the next chapter" +msgstr "Przeskocz do nastepnego rozdziału" + +# +msgid "free" +msgstr "Wolne" + +msgid "from" +msgstr "z" + +msgid "further education" +msgstr "Edukacja" + +msgid "game show/quiz/contest" +msgstr "Teleturniej/Quiz/Konkurs" + +msgid "gardening" +msgstr "Ogród" + +# +msgid "go to deep standby" +msgstr "Przejdź do głębokiego czuwania" + +# +msgid "go to standby" +msgstr "Przejdź do stanu czuwania" + +# +msgid "grab this frame as bitmap" +msgstr "Zrób screenshot (.bmp)" + +# +msgid "green" +msgstr "Zielony" + +msgid "handicraft" +msgstr "Rękodzieło" + +# +msgid "height" +msgstr "Wysokość" + +# +msgid "help..." +msgstr "Pomoc..." + +# +msgid "horizontal" +msgstr "Pozioma (H)" + +msgid "information/education/school program" +msgstr "Program edukacyjny" + +# +msgid "init module" +msgstr "Zainicjuj moduł" + +# +msgid "init modules" +msgstr "Zainicjuj moduły" + +# +msgid "insert mark here" +msgstr "Wstaw znacznik tutaj" + +msgid "invalid type" +msgstr "nieprawidłowy typ" + +msgid "jazz" +msgstr "Jazz" + +# +msgid "jump back to the previous title" +msgstr "Powróć do poprzedniego tytułu" + +# +msgid "jump forward to the next title" +msgstr "Przeskocz do następnego tytułu" + +msgid "languages" +msgstr "Języki" + +# +msgid "leave movie player..." +msgstr "Zamknij odtwarzacz filmów..." + +# +msgid "left" +msgstr "Lewo" + +msgid "left, wrapped" +msgstr "do lewej, zawiń" + +msgid "leisure hobbies (general)" +msgstr "Hobby" + +# +msgid "length" +msgstr "Długość" + +msgid "limit ..., aborting !" +msgstr "limit..., przerywam!" + +# +msgid "list style compact" +msgstr "Styl listy: kompaktowy " + +# +msgid "list style compact with description" +msgstr "Styl listy: kompaktowy z opisem" + +# +msgid "list style default" +msgstr "Styl listy: domyślny" + +# +msgid "list style single line" +msgstr "Styl listy: pojedyncza linia" + +msgid "literature" +msgstr "Literatura" + +msgid "live broadcast" +msgstr "Na żywo" + +# +msgid "locked" +msgstr "Zablokowany" + +# +msgid "loopthrough to" +msgstr "Przez przelotkę do" + +msgid "magazines/reports/documentary" +msgstr "Reportaż/Dokument/Mgazyn" + +# +msgid "manual" +msgstr "Ręcznie" + +msgid "martial sports" +msgstr "Sporty walki" + +msgid "medicine/physiology/psychology" +msgstr "Medycyna/Fizjologia/Psychologia" + +# +msgid "menu" +msgstr "Menu" + +# +msgid "mins" +msgstr "min" + +# +msgid "minutes" +msgstr "minuty" + +# +msgid "month" +msgstr "miesiąc" + +msgid "motor sport" +msgstr "Sporty motorowe" + +msgid "motoring" +msgstr "Motoryzacja" + +# +msgid "move down to last entry" +msgstr "Przejdź w dół do ostatniej pozycji" + +# +msgid "move down to next entry" +msgstr "Przejdź w do następnej pozycji" + +# +msgid "move up to first entry" +msgstr "Przejdź w górę do pierwszej pozycji" + +# +msgid "move up to previous entry" +msgstr "Przejdź w górę do poprzedniej pozycji" + +msgid "movie/drama (general)" +msgstr "Film/Dramat" + +# +msgid "multinorm" +msgstr "Multinorm" + +msgid "music/ballet/dance (general)" +msgstr "Muzyka/Balet/Taniec" + +msgid "musical/opera" +msgstr "Musical/Opera" + +msgid "nature/animals/environment" +msgstr "Natura/Zwierzęta/Środowisko" + +# +msgid "never" +msgstr "Nigdy" + +msgid "new media" +msgstr "Nowe media" + +msgid "news magazine" +msgstr "Magazyn informacyjny" + +msgid "news/current affairs (general)" +msgstr "Wiadomości" + +msgid "news/weather report" +msgstr "Wiadomości/Pogoda" + +# +msgid "no" +msgstr "Nie" + +# +msgid "no CAId selected" +msgstr "Brak wybranego CAId" + +# +msgid "no CI slots found" +msgstr "Nie znaleziono slotu CI" + +# +msgid "no module found" +msgstr "Nie znaleziono modułu" + +# +msgid "no storage devices found" +msgstr "Brak urządzeń przechowywania danych" + +# +msgid "none" +msgstr "Brak" + +msgid "normal" +msgstr "Zwykły" + +# +msgid "not configured" +msgstr "Nieskonfigurowany" + +# +msgid "not locked" +msgstr "Nie zablokowany" + +msgid "not supported" +msgstr "Nieobsługiwany" + +# +msgid "not used" +msgstr "Nie wykorzystywany" + +# +msgid "nothing connected" +msgstr "Nic nie podłączono" + +# +msgid "of a DUAL layer medium used." +msgstr "nośnika dual layer zużyto." + +# +msgid "of a SINGLE layer medium used." +msgstr "nośnika single layer zużyto." + +# +msgid "off" +msgstr "Wyłączony" + +msgid "offset is" +msgstr "offset jest" + +# +msgid "on" +msgstr "Włączony" + +# +msgid "on READ ONLY medium." +msgstr "Nośnik tylko do odczytu." + +msgid "on end of movie" +msgstr "Na końcu filmu" + +# +msgid "once" +msgstr "Raz" + +# +msgid "only from deep standby" +msgstr "tyko z głębokiego czuwania" + +# +msgid "only from standby" +msgstr "tylko ze stanu czuwania" + +# +msgid "open EPG..." +msgstr "Pokaż EPG..." + +msgid "open Info..." +msgstr "Pokaż info" + +# +msgid "open nameserver configuration" +msgstr "Otwórz konfigurację DNS" + +# +msgid "original" +msgstr "Oryginalny" + +msgid "original language" +msgstr "Język oryginalny" + +# +msgid "pass" +msgstr "Przejście" + +msgid "performing arts" +msgstr "Sztuka" + +# +msgid "play as picture in picture" +msgstr "Odtwórz w PiP" + +# +msgid "play in mainwindow" +msgstr "Odtwórz w ekranie głównym" + +# +msgid "please press OK when ready" +msgstr "Wciśnij OK gdy gotowe" + +# +msgid "please wait, loading picture..." +msgstr "Czekaj, ładowanie obrazu..." + +msgid "popular culture/traditional arts" +msgstr "Popkultura/Sztuka tradycyjna" + +msgid "pre-school children's program" +msgstr "Dla przedszkolaków" + +msgid "receiver software because updates are available." +msgstr "Oprogramowanie odbiornika ponieważ aktualizacje są dostępne." + +# +msgid "record" +msgstr "Nagraj" + +# +msgid "recording..." +msgstr "Nagrywanie..." + +# +msgid "red" +msgstr "Czerwony" + +msgid "religion" +msgstr "Religia" + +msgid "remarkable people" +msgstr "Sławni ludzie" + +# +msgid "remove after this position" +msgstr "Usuń po tej pozycji" + +# +msgid "remove all alternatives" +msgstr "Usuń wszystkie alternatywne" + +# +msgid "remove all new found flags" +msgstr "Usuń wszystkie flagi 'nowo znalezione'" + +# +msgid "remove before this position" +msgstr "Usuń przed tą pozycją" + +# +msgid "remove bookmark" +msgstr "Usuń zakładkę" + +# +msgid "remove directory" +msgstr "Usuń katalog" + +# +msgid "remove entry" +msgstr "Usuń" + +# +msgid "remove from parental protection" +msgstr "Usuń z kontroli rodzicielskiej" + +# +msgid "remove new found flag" +msgstr "Usuń flagę 'nowo znaleziony'" + +# +msgid "remove selected satellite" +msgstr "Usuń wybranego satelitę" + +# +msgid "remove this mark" +msgstr "Usuń ten znacznik" + +msgid "rename entry" +msgstr "Zmień nazwę" + +# +msgid "repeat playlist" +msgstr "Powtórz playlistę" + +# +msgid "repeated" +msgstr "Powtórzone" + +msgid "reverse by date" +msgstr "Wg daty (od najstarszego)" + +# +msgid "rewind to the previous chapter" +msgstr "Cofnij do poprzedniego rozdziału" + +# +msgid "right" +msgstr "Prawy" + +msgid "right, wrapped" +msgstr "do prawej, zawiń" + +msgid "rock/pop" +msgstr "Rock/Pop" + +msgid "romance" +msgstr "Romans" + +# +msgid "save last directory on exit" +msgstr "Zapisz ostatni katalog przy wyjściu" + +# +msgid "save playlist on exit" +msgstr "Zapisz playlistę przy wyjściu" + +# +msgid "scan state" +msgstr "Status skanowania" + +msgid "science fiction/fantasy/horror" +msgstr "SF/Fantasy/Horror" + +# +msgid "second cable of motorized LNB" +msgstr "Drugi kabel zmotoryzowanego LNB" + +# +msgid "seconds" +msgstr "sekundy" + +# +msgid "select" +msgstr "Wybierz" + +# +msgid "select CAId's" +msgstr "Wybierz CAId'y" + +# +msgid "select EPG..." +msgstr "Wybierz akcję dla przycisku EPG" + +msgid "select Info..." +msgstr "Wybierz akcję dla przycisku Info" + +# +msgid "select menu entry" +msgstr "Wybierz pozycję menu" + +# +msgid "select movie" +msgstr "Wybierz film" + +# +msgid "select the movie path" +msgstr "Wybierz ścieżkę do filmu" + +msgid "serious music/classic music" +msgstr "Muzyka klasyczna" + +msgid "serious/classical/religious/historical movie/drama" +msgstr "Film klasyka/historia/religia" + +# +msgid "service PIN" +msgstr "PIN kanału" + +# +msgid "set as startup service" +msgstr "Ustaw jako kanał startowy" + +# +msgid "setup PIN" +msgstr "PIN ustawień" + +# +msgid "show DVD main menu" +msgstr "Pokaż główne menu DVD" + +msgid "show all tags" +msgstr "Pokaż wszystkie tagi" + +# +msgid "show alternatives" +msgstr "Pokaż alternatywne kanały" + +# +msgid "show event details" +msgstr "Pokaż szczegóły wydarzenia" + +# +msgid "show extended description" +msgstr "Pokaż rozszerzony opis" + +msgid "show mediaplayer on mainmenu" +msgstr "Pokaż Mediaplayer w menu głównym" + +msgid "show softwaremanager in setup menu" +msgstr "Software Manager w menu/ustawienia" + +msgid "show softwaremanager on blue button" +msgstr "Software Manager pod niebieskim" + +# +msgid "show tag menu" +msgstr "Pokaż menu tagów" + +# +msgid "show transponder info" +msgstr "Pokaż info transpondera" + +msgid "show/game show (general)" +msgstr "Rozrywka" + +msgid "shuffle" +msgstr "Wymieszaj" + +# +msgid "shut down" +msgstr "Wyłącz" + +# +msgid "simple" +msgstr "Prosty" + +# +msgid "skip backward" +msgstr "Skocz wstecz" + +# +msgid "skip forward" +msgstr "Skocz w przód" + +msgid "soap/melodram/folkloric" +msgstr "Serial/Melodramat" + +msgid "social/political issues/economics (general)" +msgstr "Poltyka/Społeczeństwo/Ekonomia" + +msgid "social/spiritual science" +msgstr "Nauki społeczne" + +msgid "sorting of playlists" +msgstr "Sortowanie listy odtwarzania" + +# +msgid "special characters" +msgstr "Znaki specjalne" + +msgid "special events" +msgstr "Wydarzenia specjalne" + +msgid "special format data DVD (HDTV compatible)" +msgstr "Format danych DVD (kompatybilny z HDTV)" + +msgid "sports (general)" +msgstr "Sport" + +msgid "sports magazine" +msgstr "Magazyn sportowy" + +# +msgid "standard" +msgstr "Standardowe" + +# +msgid "start cut here" +msgstr "Rozpocznij cięcie tutaj" + +# +msgid "start directory" +msgstr "Katalog początkowy" + +msgid "stepsize" +msgstr "Rozmiar kroku" + +# +msgid "stereo" +msgstr "Stereo" + +msgid "stop using as startup service" +msgstr "Przestań używać jako kanał startowy" + +# +msgid "switch to bookmarks" +msgstr "Przejdź do zakładek" + +# +msgid "switch to filelist" +msgstr "Przjdź do listy plików" + +# +msgid "switch to the next angle" +msgstr "Przejdź do następnego rogu" + +# +msgid "switch to the next audio track" +msgstr "Przełącz na następną ścieżkę audio" + +# +msgid "switch to the next subtitle language" +msgstr "Przełącz na następny język napisów" + +msgid "talk show" +msgstr "Talk show" + +msgid "team sports" +msgstr "Sporty zespołowe" + +msgid "technology/natural science" +msgstr "Technika/Nauka" + +# +msgid "template file" +msgstr "Szablon" + +msgid "tennis/squash" +msgstr "Tennis/Squash" + +# +msgid "this recording" +msgstr "to nagranie" + +# +msgid "this service is protected by a parental control pin" +msgstr "Ten serwis jest chroniony kodem PIN" + +# +msgid "toggle time, chapter, audio, subtitle info" +msgstr "Czas odtwarzania, rozdział, audio, informacja o napisach" + +# +msgid "top" +msgstr "Góra" + +msgid "tourism/travel" +msgstr "Podróże/Turystyka" + +# +msgid "true" +msgstr "tak" + +msgid "unavailable" +msgstr "Niedostępny" + +# +msgid "unconfirmed" +msgstr "Niepotwierdzony" + +msgid "undefined" +msgstr "Niezdefiniowany" + +# +msgid "unknown" +msgstr "Nieznany" + +# +msgid "unknown service" +msgstr "Nieznany serwis" + +msgid "unpublished" +msgstr "Niepublikowany" + +# +msgid "until standby/restart" +msgstr "Do standby/restartu" + +# +msgid "user defined" +msgstr "Zdefiniowane przez użytkownika" + +msgid "variety show" +msgstr "Rozrywka" + +# +msgid "vertical" +msgstr "Pionowa (V)" + +# +msgid "wait for ci..." +msgstr "Czekaj na CI..." + +# +msgid "wait for mmi..." +msgstr "Czekaj na MMI..." + +# +msgid "waiting" +msgstr "Oczekiwanie" + +msgid "water sport" +msgstr "Sporty wodne" + +# +msgid "weekly" +msgstr "Co tydzień" + +msgid "west" +msgstr "zachód" + +msgid "when PiPzap enabled zap channel down..." +msgstr "Przy włączonym PiPzap przełącz w oknie PiP na poprzedni kanał" + +msgid "when PiPzap enabled zap channel up..." +msgstr "Przy włączonym PiPzap przełącz w oknie PiP na następny kanał" + +# +msgid "white" +msgstr "Biały" + +# +msgid "whitelist" +msgstr "Whitelist" + +# +msgid "width" +msgstr "Szerokość" + +msgid "winter sport" +msgstr "Sporty zimowe" + +# +msgid "wireless network interface" +msgstr "interfejs sieci bezprzewodowej" + +#, python-format +msgid "with %d error" +msgid_plural "with %d errors" +msgstr[0] "z %d błędem" +msgstr[1] "z %d błędami" +msgstr[2] "z %d błędami" + +# +msgid "working" +msgstr "Pracuje" + +# +msgid "yellow" +msgstr "Żółty" + +# +msgid "yes" +msgstr "Tak" + +# +msgid "yes (keep feeds)" +msgstr "Tak (trzymaj feedy)" + +# +msgid "zap" +msgstr "Przełącz" + +msgid "zap and record" +msgstr "Przełącz i nagraj" + +# +msgid "zapped" +msgstr "Przełączony" + +# +#, fuzzy +#~ msgid "AA" +#~ msgstr "A" + +# +#, fuzzy +#~ msgid "AB" +#~ msgstr "A" + +# +#, fuzzy +#~ msgid "Activate PiP" +#~ msgstr "Włącz PiP" + +#, fuzzy +#~ msgid "Add/remove timer for current event" +#~ msgstr "Dodaj/usuń timer dla bieżącej audycji" + +#, fuzzy +#~ msgid "Adjust HDMI CEC settings" +#~ msgstr "Dostosuj ustawienia 3d" + +# +#, fuzzy +#~ msgid "All satellites" +#~ msgstr "Wybierz satelity" + +#, fuzzy +#~ msgid "And will shutdown your receiver over " +#~ msgstr "Odbiornik przejdzie w stan czuwania za" + +# +#, fuzzy +#~ msgid "BA" +#~ msgstr "A" + +# +#, fuzzy +#~ msgid "BB" +#~ msgstr "B" + +# +#~ msgid "Behavior of 'pause' when paused" +#~ msgstr "Zachowanie 'pauzy' gdy zatrzymany" + +# +#, fuzzy +#~ msgid "Committed DiSEqC command" +#~ msgstr "Komenda DiSEqC 1.0" + +#~ msgid "Configure of and how long the latest service in the PiP will be remembered." +#~ msgstr "Skonfiguruj jak długo ma być pamiętany kanał ostatnio uruchomiony w PiP." + +#~ msgid "Configure the behavior of the 'pause' key when movie playback is already paused." +#~ msgstr "skonfiguruj zachowanie klawisza 'pauza' gdy odtwarzanie filmu jest już wstrzymane." + +#, fuzzy +#~ msgid "Configure the duration in hours and action, which could be shut down or standby, when the receiver is not controlled." +#~ msgstr "Ustaw czas (w godzinach) po jakim odbiornik przełączy się w tryb czuwania, gdy pozostaje nieaktywny." + +#, fuzzy +#~ msgid "Configure the duration in minutes and action, which could be shut down or standby, for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +#~ msgstr "Ustaw czas (w minutach) dla wyłącznika czasowego. Wybierz opcję i wciśnij OK lub zielony aby uruchomić/zatrzymać sleeptimer. " + +#, fuzzy +#~ msgid "Currently the commit log cannot be retreived - please try later again" +#~ msgstr "Commit log nie może zostać teraz pobrany - spróbuj ponownie później" + +# +#, fuzzy +#~ msgid "DiSEqC repeats" +#~ msgstr "Powtórzenia DiSEqC 1.1" + +# +#~ msgid "Enable neutrino style zap controlling" +#~ msgstr "Sterowanie przełączaniem kanałów jak w neutrino" + +#, fuzzy +#~ msgid "Goto specific data/time" +#~ msgstr "Idź do konkretnej daty/godziny" + +#, fuzzy +#~ msgid "Open service list and select next channel" +#~ msgstr "i wybierz kolejny kanał" + +#, fuzzy +#~ msgid "Open service list and select previous channel" +#~ msgstr "i wybierz poprzedni kanał." + +#, fuzzy +#~ msgid "Press '0' to toggle internal/external PiP." +#~ msgstr "Wciśnij '0' aby przełączać tryby PiP" + +# +#, fuzzy +#~ msgid "Remove timer" +#~ msgstr "Usuń tytuł" + +# +#, fuzzy +#~ msgid "Send DiSEqC" +#~ msgstr "DiSEqC" + +#, fuzzy +#~ msgid "Shutdown after current event" +#~ msgstr "Przejdź w tryb czuwania po bieżącym wydarzeniu" + +# +#, fuzzy +#~ msgid "Shutdown in " +#~ msgstr "Wyłącz" + +# +#, fuzzy +#~ msgid "Switch next channel" +#~ msgstr "Przełącz na następny kanał" + +#~ msgid "Toggle InfoBar" +#~ msgstr "Wyświetl / ukryj pasek info" + +#, fuzzy +#~ msgid "Tuning step size" +#~ msgstr "Rozmiar kroku obrotu" + +# +#, fuzzy +#~ msgid "Uncommitted DiSEqC command" +#~ msgstr "Komenda DiSEqC 1.0" + +#~ msgid "When enabled the arrow buttons around the OK button will follow the neutrino style zap controls instead of the enigma2 style." +#~ msgstr "Gdy włączone, strzałki wokół przycisku OK na pilocie będą zachowywać się jak w neutrino." + +#, fuzzy +#~ msgid "Your receiver will shutdown due to inactivity." +#~ msgstr "Odbiornik przejdzie w tryb czuwania z powodu bezczynności" + +#, fuzzy +#~ msgid "Your receiver will shutdown due to the sleeptimer." +#~ msgstr "Sleeptimer przełączy odbiornik w tryb czuwania" + +#, fuzzy +#~ msgid "tuner is not supported" +#~ msgstr "Tuner nieobsługiwany" diff --git a/po/pt.po b/po/pt.po new file mode 100644 index 0000000..2658b72 --- /dev/null +++ b/po/pt.po @@ -0,0 +1,9775 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: enigma2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-07-21 19:08+0200\n" +"PO-Revision-Date: 2012-04-03 22:30-0000\n" +"Last-Translator: Phenom <phenomxy@gmail.com>\n" +"Language-Team: Muaitai <muaitai@gmail.com>\n" +"Language: Portuguese\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Poedit-Country: PORTUGAL\n" +"X-Poedit-SourceCharset: iso-8859-15\n" + +# +msgid "" +"\n" +"Advanced options and settings." +msgstr "" +"\n" +"Opções avançadas." + +# +msgid "" +"\n" +"After pressing OK, please wait!" +msgstr "" +"\n" +"Depois de carregar OK, aguarde por favor!" + +msgid "" +"\n" +"Backup your receiver settings." +msgstr "" + +# +msgid "" +"\n" +"Edit the upgrade source address." +msgstr "" +"\n" +"Editar o endereço da fonte de actualização." + +msgid "" +"\n" +"Manage extensions or plugins for your receiver" +msgstr "" + +msgid "" +"\n" +"Online update of your receiver software." +msgstr "" + +# +msgid "" +"\n" +"Press OK on your remote control to continue." +msgstr "" +"\n" +"Prima OK para continuar." + +# +msgid "" +"\n" +"Restore your backups by date." +msgstr "" +"\n" +"Restaurar os backups por data." + +msgid "" +"\n" +"Restore your receiver settings." +msgstr "" + +msgid "" +"\n" +"Restore your receiver with a new firmware." +msgstr "" + +# +msgid "" +"\n" +"Scan for local extensions and install them." +msgstr "" +"\n" +"Procurar extensões locais e instalá-las." + +# +msgid "" +"\n" +"Select your backup device.\n" +"Current device: " +msgstr "" +"\n" +"Selecione o dispositivo para backup.\n" +"Dispositivo actual:" + +# +msgid "" +"\n" +"View, install and remove available or installed packages." +msgstr "" +"\n" +"Ver, instalar e remover pacotes instalados ou disponíveis." + +msgid " (PiP)" +msgstr " (PiP)" + +msgid " (Radio)" +msgstr " (Radio)" + +msgid " (TV)" +msgstr " (TV)" + +msgid " (disabled)" +msgstr "" + +msgid " (higher than any auto)" +msgstr "" + +msgid " (higher than rotor any auto)" +msgstr "" + +msgid " (lower than any auto)" +msgstr "" + +# +msgid " extensions." +msgstr "extenções." + +msgid " ms" +msgstr "ms" + +# +msgid " packages selected." +msgstr "pacotes selecionados." + +# +msgid " updates available." +msgstr "actualizações desponiveis." + +#. TRANSLATORS: short time representation hour:minute +#, python-format +msgid "%2d:%02d" +msgstr "%2d:%02d" + +#. TRANSLATORS: full time representation hour:minute:seconds +#, python-format +msgid "%2d:%02d:%02d" +msgstr "%2d:%02d:%02d" + +msgid "%A %d %B" +msgstr "" + +#. TRANSLATORS: long date representations dayname daynum monthname in strftime() format! See 'man strftime' +msgid "%A %e %B" +msgstr "%A %e %B" + +#. TRANSLATORS: full date representation dayname daynum monthname year in strftime() format! See 'man strftime' +msgid "%A %e %B %Y" +msgstr "%A %e %B %Y" + +# +msgid "%H:%M" +msgstr "%H:%M" + +#. TRANSLATORS: short date representation short dayname daynum short monthname in strftime() format! See 'man strftime' +msgid "%a %e/%m" +msgstr "%a %e/%m" + +#. TRANSLATORS: long date representation short dayname daynum short monthname hour:minute in strftime() format! See 'man strftime' +msgid "%a %e/%m %-H:%M" +msgstr "%a %e/%m %-H:%M" + +# +#. TRANSLATORS: Intermediate scanning result, '%d' channel(s) have been found so far +#, fuzzy, python-format +msgid "%d channel found" +msgid_plural "%d channels found" +msgstr[0] "%d serviços encontrados!" +msgstr[1] "%d serviços encontrados!" + +#, python-format +msgid "%d file" +msgid_plural "%d files" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d hora" +msgstr[1] "%d horas" + +# +#, fuzzy, python-format +msgid "%d job is running in the background!" +msgid_plural "%d jobs are running in the background!" +msgstr[0] "%d tarefas estão a decorrer no background!" +msgstr[1] "%d tarefas estão a decorrer no background!" + +# +#, python-format +msgid "%d min" +msgstr "%d min" + +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d minuto" +msgstr[1] "%d minutos" + +#, python-format +msgid "%d minutes" +msgstr "%d minutos" + +#, python-format +msgid "%d pixel wide" +msgid_plural "%d pixels wide" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "%d segundo" +msgstr[1] "%d segundos" + +#, fuzzy, python-format +msgid "%d subdirectory" +msgid_plural "%d subdirectories" +msgstr[0] "Pasta raíz" +msgstr[1] "Pasta raíz" + +# +#, fuzzy, python-format +msgid "%d wireless network found!" +msgid_plural "%d wireless networks found!" +msgstr[0] "1 rede sem fios encontrada!" +msgstr[1] "1 rede sem fios encontrada!" + +#, fuzzy +msgid "%d-%b-%Y %-H:%M" +msgstr "%a %e/%m %-H:%M" + +msgid "%d-%m" +msgstr "" + +# +msgid "%d.%B %Y" +msgstr "%d.%B %Y" + +#. TRANSLATORS: VFD hour:minute daynum short monthname in strftime() format! See 'man strftime' +msgid "%k:%M %e/%m" +msgstr "%k:%M %e/%m" + +# +#, fuzzy, python-format +msgid "%s %s free disk space" +msgstr "Espaço livre" + +# +#, python-format +msgid "%s (%s)\n" +msgstr "%s (%s)\n" + +#. TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. +#, python-format +msgid "%s is no longer used. Should it be deleted?" +msgstr "" + +# +#, fuzzy, python-format +msgid "%s updated package available" +msgid_plural "%s updated packages available" +msgstr[0] "actualizações desponiveis." +msgstr[1] "actualizações desponiveis." + +#, python-format +msgid "%s%d min" +msgstr "" + +#, python-format +msgid "%s/%s: %s" +msgstr "" + +# +msgid "(ZAP)" +msgstr "(ZAP)" + +# +msgid "(empty)" +msgstr "(vazio)" + +# +msgid "(show optional DVD audio menu)" +msgstr "(mostrar menu audio opcional do DVD)" + +# +msgid "* Only available if more than one interface is active." +msgstr "* Só disponivél se houver mais que um interface activo." + +msgid "/s" +msgstr "" + +msgid "0" +msgstr "" + +msgid "1" +msgstr "" + +msgid "1.0" +msgstr "" + +msgid "1.1" +msgstr "" + +msgid "1.2" +msgstr "" + +# +msgid "12V output" +msgstr "saída 12V" + +msgid "13 V" +msgstr "" + +msgid "16:10" +msgstr "" + +# +msgid "16:10 Letterbox" +msgstr "16:10 Letterbox" + +# +msgid "16:10 PanScan" +msgstr "16:10 PanScan" + +msgid "16:9" +msgstr "" + +# +msgid "16:9 Letterbox" +msgstr "16:9 Letterbox" + +# +msgid "16:9 always" +msgstr "16:9 Sempre" + +msgid "18 V" +msgstr "" + +msgid "2" +msgstr "" + +msgid "23.976" +msgstr "" + +msgid "24" +msgstr "" + +msgid "25" +msgstr "" + +msgid "29.97" +msgstr "" + +msgid "3" +msgstr "" + +msgid "30" +msgstr "" + +# +msgid "3d mode" +msgstr "modo 3D" + +msgid "4" +msgstr "" + +msgid "4:3" +msgstr "" + +# +msgid "4:3 Letterbox" +msgstr "4:3 pal plus" + +# +msgid "4:3 PanScan" +msgstr "4:3 PanScan" + +msgid "5" +msgstr "" + +msgid "6" +msgstr "" + +msgid "7" +msgstr "" + +msgid "8" +msgstr "" + +msgid "9" +msgstr "" + +#, python-format +msgid ": %s" +msgstr "" + +# +msgid "<Current movielist location>" +msgstr "<Localização actual da lista de gravações>" + +# +msgid "<Default movie location>" +msgstr "<Localização padrão>" + +# +msgid "<Last timer location>" +msgstr "<Ultima localização de gravação>" + +# +msgid "<unknown>" +msgstr "<desconhecido>" + +msgid "??" +msgstr "" + +msgid "A" +msgstr "" + +# +#, fuzzy, python-format +msgid "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" +msgstr "" +"Alguns ficheiros (%s) foram alterados depois da instalação.\n" +"Deseja manter a sua configuração?" + +# +#, python-format +msgid "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" +msgstr "" +"Alguns ficheiros (%s) foram alterados depois da instalação.\n" +"Deseja manter a sua configuração?" + +msgid "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" + +msgid "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" + +# +msgid "A graphical EPG for all services of an specific bouquet" +msgstr "Um EPG gráfico para uma lista de favoritos" + +# +#, python-format +msgid "" +"A record has been started:\n" +"%s" +msgstr "" +"Iniciou a gravação de:\n" +"%s" + +# +msgid "" +"A recording is currently running.\n" +"What do you want to do?" +msgstr "" +"A gravação está a decorrer\n" +"O que deseja fazer?" + +# +msgid "A recording is currently running. Please stop the recording before trying to configure the positioner." +msgstr "Uma gravação está a decorrer.Por favor páre a gravação antes de tentar configurar o posicionador" + +msgid "A recording is currently running. Please stop the recording before trying to scan." +msgstr "Uma gravação está em progresso. Por favor páre antes de tentar uma busca." + +# +msgid "A recording is currently running. Please stop the recording before trying to start the satfinder." +msgstr "Uma gravação está a decorrer.Por favor páre a gravação antes de iniciar a busca de satelites" + +# +#, python-format +msgid "A required tool (%s) was not found." +msgstr "Uma ferramenta necessária (%s) não foi encontrada." + +# +msgid "A search for available updates is currently in progress." +msgstr "Está a decorrer uma pesquisa por actualizações disponíveis." + +# +msgid "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" +msgstr "" +"Um segundo interface configurado foi encontrado.\n" +"\n" +"Deseja desabilitar o segubdo interface de rede? " + +msgid "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" + +msgid "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" + +# +msgid "A small overview of the available icon states and actions." +msgstr "Uma pequena amostra dos disponíveis estados de ícones e acções." + +# +msgid "" +"A timer failed to record!\n" +"Disable TV and try again?\n" +msgstr "" +"Uma gravação agendada falhou!\n" +"Tentar de novo?\n" + +# +#, fuzzy +msgid "A/V settings" +msgstr "Definições A/V" + +msgid "AC3/DTS downmix" +msgstr "Downmix AC3/DTS" + +# +msgid "Abort" +msgstr "Abortar" + +# +msgid "About" +msgstr "Sobre" + +# +msgid "About..." +msgstr "Sobre..." + +# +msgid "Accesspoint:" +msgstr "Pono de Acesso:" + +# +msgid "Action on long powerbutton press" +msgstr "Acção ao premir longo do botão power" + +# +msgid "Action on short powerbutton press" +msgstr "Acção ao curto primir do botão desligar" + +# +msgid "Activate Picture in Picture" +msgstr "Activar Imagem na Imagem" + +# +#, fuzzy +msgid "Activate current configuration" +msgstr "activar configuração actual" + +# +msgid "Activate network settings" +msgstr "Activar definições de rede" + +# +#, fuzzy +msgid "Activate the configured network settings." +msgstr "Activar definições de rede" + +# +msgid "Adapter settings" +msgstr "Opções de Adaptador" + +# +msgid "Add" +msgstr "Adicionar" + +# +msgid "Add Bookmark" +msgstr "Adicionar Marcador" + +# +msgid "Add a mark" +msgstr "Adicionar marca" + +# +#, fuzzy +msgid "Add a nameserver entry" +msgstr "adicionar servidor de DNS" + +# +msgid "Add a new title" +msgstr "Adicionar novo titulo" + +# +#, fuzzy +msgid "Add bookmark" +msgstr "adicionar marcador" + +# +#, fuzzy +msgid "Add directory to playlist" +msgstr "adicionar pasta à lista" + +# +#, fuzzy +msgid "Add file to playlist" +msgstr "adicionar ficheiro á lista" + +# +#, fuzzy +msgid "Add files to playlist" +msgstr "adicionar á lista de reprodução" + +#, fuzzy +msgid "Add more details to the crash log" +msgstr "Criar relatório de erros mais detalhados" + +# +#, fuzzy +msgid "Add provider" +msgstr "adicionar Provider" + +# +#, fuzzy +msgid "Add recording (enter recording duration)" +msgstr "Iniciar gravação (inserir tempo de gravção)" + +# +#, fuzzy +msgid "Add recording (enter recording endtime)" +msgstr "adicionar gravação ( introduza o tempo final)" + +# +#, fuzzy +msgid "Add recording (indefinitely)" +msgstr "Iniciar gravação (indefinido)" + +# +#, fuzzy +msgid "Add recording (stop after current event)" +msgstr "Iniciar gravação (terminar no final deste programa) " + +# +#, fuzzy +msgid "Add service" +msgstr "adicionar Service" + +# +msgid "Add timer" +msgstr "Gravar" + +# +msgid "Add title" +msgstr "Adicionar título" + +# +msgid "Add to bouquet" +msgstr "Adicionar aos Bouquets" + +# +msgid "Add to favourites" +msgstr "Adicionar aos favoritos" + +msgid "Add/remove change timer for current event" +msgstr "" + +msgid "Adjust 3D settings" +msgstr "Ajustar opções 3D" + +# +msgid "Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens." +msgstr "Ajuste as cores para que as sombras fiquem visiveis, mas apareçam o mais saturado possivel. Se estiver satisfeito com o resultado, carregue OK para sair, ou use as teclas com números para selecionar outros Ecrãs." + +msgid "Advanced" +msgstr "" + +# +#, fuzzy +msgid "Advanced options" +msgstr "Opções Avançadas" + +# +msgid "Advanced restore" +msgstr "Restauro avançado" + +# +#, fuzzy +msgid "Advanced software" +msgstr "Software Avançado" + +# +#, fuzzy +msgid "Advanced software plugin" +msgstr "Plugin de Software Avançado" + +# +#, fuzzy +msgid "Advanced video enhancement setup" +msgstr "Opções de Imagem avançadas" + +# +#, fuzzy +msgid "Advanced video setup" +msgstr "Definições de Video Avançadas" + +# +msgid "After event" +msgstr "Depois do evento" + +# +msgid "Album" +msgstr "Album" + +msgid "Alignment of events" +msgstr "" + +msgid "Alignment of service names" +msgstr "" + +# +msgid "All" +msgstr "Todos" + +msgid "All ages" +msgstr "" + +msgid "All satellites 1 (USALS)" +msgstr "" + +msgid "All satellites 2 (USALS)" +msgstr "" + +msgid "All satellites 3 (USALS)" +msgstr "" + +msgid "All satellites 4 (USALS)" +msgstr "" + +msgid "Allocate" +msgstr "" + +msgid "Allocate unused memory index" +msgstr "" + +msgid "Allow quit movieplayer with exit" +msgstr "" + +#, fuzzy +msgid "Allow subtitle language to equal audio language" +msgstr "Permitir legendas iguais ao audio" + +#, fuzzy +msgid "Allow subtitles for hearing impaired" +msgstr "Permitir audiodescrição" + +# +msgid "Alpha" +msgstr "Alpha" + +# +#, fuzzy +msgid "Alternative" +msgstr "adicionar alternativas" + +# +#, fuzzy +msgid "Alternative numbering mode" +msgstr "Modo radio alternativo" + +# +msgid "Alternative services tuner priority" +msgstr "Prioridade dos serviços do Tuner" + +msgid "Always ask" +msgstr "Perguntar sempre" + +msgid "Always hide infobar" +msgstr "" + +# +msgid "An empty filename is illegal." +msgstr "Um ficheiro vazio é ilegal." + +# +#, fuzzy +msgid "An error occurred while downloading the packetlist. Please try again." +msgstr "Ocurreu um erro ao fazer o download da lista de pacotes. Por favor tente de novo." + +# +msgid "An unknown error occurred!" +msgstr "Ocorreu um erro desconhecido!" + +msgid "And will put your receiver in standby over " +msgstr "" + +msgid "Any activity" +msgstr "Qualquer actividade" + +# +msgid "Arabic" +msgstr "Arabe" + +msgid "Are you sure to remove this entry?" +msgstr "" + +# +msgid "" +"Are you sure you want to activate this network configuration?\n" +"\n" +msgstr "" +"Tem a certeza que quer activar esta configuração de rede?\n" +"\n" + +# +#, fuzzy +msgid "" +"Are you sure you want to delete\n" +"the following backup:\n" +msgstr "" +"Tem a certeza que quer apagar\n" +"este backup:\n" + +# +msgid "Are you sure you want to exit this wizard?" +msgstr "Tem a certeza que quer sair deste wizard?" + +# +msgid "" +"Are you sure you want to restart your network interfaces?\n" +"\n" +msgstr "" +"Tem a certeza que quer reiniciar o interface de rede?\n" +"\n" + +# +#, fuzzy, python-format +msgid "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Tem a certeza que quer restaurar o backup de Enigma2?\n" +"O Enigma2 vai reiniciar depois do restauro" + +# +#, fuzzy +msgid "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Tem a certeza que quer restaurar o backup de Enigma2?\n" +"O Enigma2 vai reiniciar depois do restauro" + +# +msgid "Artist" +msgstr "Artista" + +msgid "Arts/Culture" +msgstr "" + +# +msgid "Ask user" +msgstr "Consultar Utilizador" + +# +#, fuzzy +msgid "Aspect ratio" +msgstr "Aspect Ratio" + +# +#, fuzzy +msgid "Assigned CAIds:" +msgstr "CAIds atribuídos:" + +# +#, fuzzy +msgid "Assigned services/provider:" +msgstr "Services/Provider atribuídos:" + +#, fuzzy +msgid "At beginning" +msgstr "no inicio" + +#, fuzzy +msgid "At end" +msgstr "no fim" + +# +msgid "Audio" +msgstr "Audio" + +msgid "Audio PID" +msgstr "" + +msgid "Audio language selection 1" +msgstr "Idioma de audio 1" + +msgid "Audio language selection 2" +msgstr "Idioma de audio 2" + +msgid "Audio language selection 3" +msgstr "Idioma de audio 3" + +msgid "Audio language selection 4" +msgstr "Idioma de audio 4" + +# +#, fuzzy +msgid "Audio options..." +msgstr "Opções de Audio" + +# +#, fuzzy, python-format +msgid "Audio track (%s) format" +msgstr "faixa de audio (%s) formato" + +# +#, fuzzy, python-format +msgid "Audio track (%s) language" +msgstr "faixa de audio (%s) linguagem" + +# +msgid "Author: " +msgstr "Autor:" + +# +msgid "Authoring mode" +msgstr "modo de criação" + +# +#. TRANSLATORS: (aspect ratio policy: always try to display as fullscreen, when there is no content (black bars) on left/right, even if this breaks the aspect. +msgid "Auto" +msgstr "Auto" + +# +msgid "Auto chapter split every ? minutes (0=never)" +msgstr "Auto separação de capítulos ? minutos(0=nunca)" + +# +msgid "Auto flesh" +msgstr "Matéria auto" + +msgid "Auto focus" +msgstr "Auto focagem" + +msgid "Auto focus commencing ..." +msgstr "A iniciar auto focagem ..." + +msgid "Auto language selection" +msgstr "Selecção de Idioma Auto" + +# +msgid "Auto scart switching" +msgstr "UsarAuto Scart" + +# +msgid "Automatic" +msgstr "Automatico" + +# +#, fuzzy +msgid "Automatic scan" +msgstr "Busca automatica" + +msgid "Automatically start timeshift after" +msgstr "" + +msgid "Automatically turn on external subtitles" +msgstr "" + +# +msgid "Available format variables" +msgstr "Formato de variaveis disponíveis" + +msgid "B" +msgstr "" + +msgid "BER" +msgstr "" + +msgid "BER:" +msgstr "" + +# +msgid "Back" +msgstr "Voltar" + +# +msgid "Background" +msgstr "Fundo" + +# +#, fuzzy +msgid "Background color" +msgstr "cor de fundo" + +msgid "Background delete option" +msgstr "Apagar em segundo plano" + +msgid "Background delete speed" +msgstr "Velocidade ao apagar em segundo plano" + +# +#, fuzzy +msgid "Backup completed." +msgstr "Backup falhou!" + +# +msgid "Backup failed." +msgstr "Backup falhou!" + +# +msgid "Backup is running..." +msgstr "Backup a decorrer..." + +# +msgid "Backup system settings" +msgstr "Fazer backup das configurações do sistema" + +# +msgid "Band" +msgstr "Banda" + +# +msgid "Bandwidth" +msgstr "Largura de Banda" + +msgid "Basque" +msgstr "Basco" + +# +msgid "Begin time" +msgstr "Tempo de inicio" + +msgid "Behavior of 'pause and ok' when paused" +msgstr "" + +# +msgid "Behavior of 0 key in PiP-mode" +msgstr "comportamento da tecla 0 no modo PiP" + +# +msgid "Behavior when a movie is started" +msgstr "Comportamento ao iniciar um Filme" + +# +msgid "Behavior when a movie is stopped" +msgstr "Comportamento ao parar o Filme" + +# +msgid "Behavior when a movie reaches the end" +msgstr "Comportamento do Filme ao Terminar" + +msgid "Big PiP" +msgstr "" + +msgid "Bitrate:" +msgstr "" + +# +msgid "Black screen" +msgstr "Ecrã preto" + +msgid "Black screen till locked" +msgstr "Ecrã preto até trancar" + +# +msgid "Block noise reduction" +msgstr "Bloquear a redução de ruído" + +# +msgid "Blue boost" +msgstr "Boost Azul" + +# +msgid "Bookmarks" +msgstr "Marcadores" + +# +msgid "Brightness" +msgstr "Brilho" + +msgid "Bulgarian" +msgstr "Bulgaro" + +# +msgid "Burn DVD" +msgstr "Gravar DVD" + +# +#, fuzzy, python-format +msgid "Burn audio track (%s)" +msgstr "gravar faixa de audio (%s)" + +# +msgid "Burn existing image to DVD" +msgstr "Gravar imagen existente para DVD" + +msgid "Burn to DVD" +msgstr "Gravar DVD" + +msgid "Bus: " +msgstr "" + +msgid "By default, SNR will be shown in dB (when supported by the tuner). This setting forces SNR to be shown as a percentage instead." +msgstr "" + +msgid "C" +msgstr "" + +# +msgid "C-Band" +msgstr "Banda C" + +msgid "CH" +msgstr "" + +# +msgid "CI assignment" +msgstr "Escolha de CI" + +msgid "CVBS" +msgstr "" + +# +msgid "Cable" +msgstr "Cabo" + +msgid "Cable Scan" +msgstr "Busca Cabo" + +# +#, fuzzy +msgid "Cache thumbnails" +msgstr "Cache Thumbnails" + +msgid "Calculate" +msgstr "Calcular" + +msgid "Calculate all positions" +msgstr "Calcular todas as posições" + +msgid "Calculation complete" +msgstr "Calculação completa" + +msgid "Calibrate" +msgstr "Calibrar" + +msgid "Can be used for different fps between external subtitles and video." +msgstr "" + +# +msgid "Cancel" +msgstr "Cancelar" + +msgid "Cannot determine" +msgstr "Impossivél determitar" + +msgid "Cannot find any signal ..., aborting !" +msgstr "Sem sinal ..., a abortar !" + +msgid "Cannot move files on a different disk or system to the trash can" +msgstr "Impossível mover os ficheiros " + +msgid "Cannot move to trash can" +msgstr "Impossível apagar" + +# +msgid "Capacity: " +msgstr "Capacidade" + +# +msgid "Card" +msgstr "Cartão" + +msgid "Cascade PiP" +msgstr "" + +#, fuzzy +msgid "Center DVB subtitles" +msgstr "Legendas DVB centradas" + +msgid "Center time-labels and remove date" +msgstr "" + +# +msgid "Change bouquets in quickzap" +msgstr "Muda de bouquets no zap rápido" + +# +msgid "Change pin code" +msgstr "Alterar o PIN" + +# +#, fuzzy +msgid "Change recording (duration)" +msgstr "alterar a gravação (duração)" + +# +#, fuzzy +msgid "Change recording (endtime)" +msgstr "mudar na gravação (tempo final)" + +msgid "Change repeat and delay settings?" +msgstr "Mudar as configurações de repetição e atraso?" + +msgid "Change service PIN" +msgstr "Mudar o PIN do serviço" + +msgid "Change service PINs" +msgstr "Mudar os PINs do serviço" + +msgid "Change setup PIN" +msgstr "Mudar o PIN das configurações" + +# +msgid "Change step size" +msgstr "Mudar o tamanho do passo" + +msgid "Change timer" +msgstr "" + +msgid "Changelog" +msgstr "Registo de actividade" + +# +msgid "Channel" +msgstr "Canal" + +# +#, fuzzy +msgid "Channel list type" +msgstr "Menu da Lista de Canais" + +# +msgid "Channel not in services list" +msgstr "O canal não está na lista de serviços" + +# +#, fuzzy +msgid "Channel selection" +msgstr "Selecção de Canal" + +# +msgid "Channel:" +msgstr "Canal" + +# +msgid "Channellist menu" +msgstr "Menu da Lista de Canais" + +# +msgid "Chap." +msgstr "cap." + +# +msgid "Chapter" +msgstr "Capítulo" + +# +msgid "Chapter:" +msgstr "Capítulo:" + +# +msgid "Check" +msgstr "Verificar" + +msgid "Check the internet connection" +msgstr "" + +msgid "Check the internet connection again" +msgstr "" + +# +#, fuzzy +msgid "Checking filesystem..." +msgstr "Verificar sistema de ficheiros" + +msgid "Checking the internet connection" +msgstr "" + +#, python-format +msgid "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" +msgstr "" + +msgid "Children/Youth" +msgstr "" + +msgid "Choose which tuner to configure." +msgstr "" + +# +msgid "Circular left" +msgstr "Circular esquerda" + +# +msgid "Circular right" +msgstr "Circular direita" + +# +msgid "Cleanup" +msgstr "Limpar" + +msgid "Clear" +msgstr "Limpar" + +# +msgid "Clear before scan" +msgstr "Eliminar antes da Busca" + +msgid "Clear fixed" +msgstr "Limpar fixo" + +# +msgid "Clear log" +msgstr "Limpar registo" + +# +#, fuzzy +msgid "Clear playlist" +msgstr "Limpar lista" + +# +msgid "Close" +msgstr "Fechar" + +msgid "Close PiP on exit" +msgstr "" + +# +msgid "Close title selection" +msgstr "Fechar a selecção de título" + +msgid "Code rate HP" +msgstr "Rate de código HP" + +msgid "Code rate LP" +msgstr "Rate de código LP" + +# +msgid "Coderate HP" +msgstr "Coderate HP" + +# +msgid "Coderate LP" +msgstr "Coderate LP" + +# +msgid "Collection name" +msgstr "Nome da coleção" + +# +msgid "Collection settings" +msgstr "Definições da coleção" + +# +#, fuzzy +msgid "Color format" +msgstr "Formato da cor" + +# +msgid "Command execution..." +msgstr "Execução de comando..." + +# +msgid "Command order" +msgstr "Ordem de comando" + +# +msgid "Common Interface" +msgstr "Interface Comum" + +# +#, fuzzy +msgid "Common Interface assignment" +msgstr "Escolha do Interface Comum" + +# +msgid "Communication" +msgstr "Comunicação" + +# +#, fuzzy +msgid "Compact flash" +msgstr "Compact Flash" + +# +msgid "Complete" +msgstr "Completo" + +# +msgid "Complex (allows mixing audio tracks and aspects)" +msgstr "Complexo (permite misturar faixas de audio e aspetos)" + +msgid "Composition of the recording filenames" +msgstr "Composição do nome das gravações" + +# +#, fuzzy +msgid "Configuration mode" +msgstr "Modo de configuração" + +# +#, fuzzy, python-format +msgid "Configuration mode: %s" +msgstr "Modo de configuração" + +# +#, fuzzy +msgid "Configuration..." +msgstr "Configuração de Rede..." + +msgid "Configure an additional delay to improve external subtitle synchronisation." +msgstr "" + +msgid "Configure an additional delay to improve subtitle synchronisation." +msgstr "" + +msgid "Configure for how long the infobar will remain visible after activation." +msgstr "" + +msgid "Configure for how many minutes finished events should remain visible in the EPG. Useful when you need information about an event which has just finished, or has been delayed." +msgstr "" + +msgid "Configure how recording filenames are constructed." +msgstr "" + +msgid "Configure how the fan should operate" +msgstr "" + +msgid "Configure if and how crypto icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how long the latest service in the PiP will be remembered." +msgstr "" + +msgid "Configure if and how service type icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how wide columns will be shown in the channel selection list." +msgstr "" + +msgid "Configure if service picons will be shown in the channel selection list." +msgstr "" + +# +msgid "Configure interface" +msgstr "Configurar interface" + +# +msgid "Configure nameservers" +msgstr "Configurar servidor DNS" + +msgid "Configure on which devices the background delete option should be used." +msgstr "" + +#, fuzzy +msgid "Configure remote control type" +msgstr "comando de dreambox (nativo)" + +msgid "Configure the DiSEqC mode for this LNB." +msgstr "" + +# +#, fuzzy +msgid "Configure the IP address." +msgstr "Configurar interface" + +msgid "Configure the aspect ratio of the screen." +msgstr "" + +msgid "Configure the behavior of the 'pause and ok' key when movie playback is already paused." +msgstr "" + +# +#, fuzzy +msgid "Configure the behavior when movie playback is manually stopped." +msgstr "Comportamento ao parar o Filme" + +# +#, fuzzy +msgid "Configure the behavior when movie playback is started." +msgstr "Comportamento ao iniciar um Filme" + +msgid "Configure the behavior when reaching the end of a movie, during movie playback." +msgstr "" + +msgid "Configure the border width of the subtitles. The dark border makes the subtitles easier to read on a light background." +msgstr "" + +msgid "Configure the brightness level of the front panel display during standby." +msgstr "" + +msgid "Configure the brightness level of the front panel display." +msgstr "" + +msgid "Configure the color of the external subtitles, alternative (normal in white, italic in yellow, bold in cyan, underscore in green), white or yellow." +msgstr "" + +msgid "Configure the color of the teletext subtitles." +msgstr "" + +msgid "Configure the contrast level of the front panel display." +msgstr "" + +msgid "Configure the cursor behaviour in the channel selection list. When opening the channel selection list you can keep on the current service or already select up/down and you are able to revert the B+/B- buttons." +msgstr "" + +msgid "Configure the duration in hours the receiver should go to standby when the receiver is not controlled." +msgstr "" + +msgid "Configure the duration in minutes for the screensaver." +msgstr "" + +msgid "Configure the duration in minutes for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +msgstr "" + +msgid "Configure the duration when the receiver should go to shut down in case the receiver is in standby mode." +msgstr "" + +msgid "Configure the first audio language (highest priority)." +msgstr "" + +msgid "Configure the first subtitle language (highest priority)." +msgstr "" + +msgid "Configure the font size of the subtitles." +msgstr "" + +msgid "Configure the fourth audio language." +msgstr "" + +# +#, fuzzy +msgid "Configure the fourth subtitle language." +msgstr "mudar para a proxima lingua de legenda" + +msgid "Configure the function of a long press on the power button." +msgstr "" + +msgid "Configure the function of a short press on the power button." +msgstr "" + +msgid "Configure the function of the '0' button do when PIP is active." +msgstr "" + +# +#, fuzzy +msgid "Configure the gateway." +msgstr "Configurar interface" + +msgid "Configure the general audio delay of Dolby Digital sound tracks." +msgstr "" + +msgid "Configure the general audio delay of stereo sound tracks." +msgstr "" + +msgid "Configure the hard disk drive to go to standby after the specified idle time." +msgstr "" + +msgid "Configure the horizontal alignment of the subtitles." +msgstr "" + +msgid "Configure the initial fast forward speed. When you press the fast forward button, winding will start at this speed." +msgstr "" + +msgid "Configure the initial rewind speed. When you press the rewind button, winding will start at this speed." +msgstr "" + +msgid "Configure the latitude of your location." +msgstr "" + +msgid "Configure the longitude of your location." +msgstr "" + +msgid "Configure the minimum amount of disk space to be available for recordings. When the amount of space drops below this value, deleted items will be removed from the trash can." +msgstr "" + +# +#, fuzzy +msgid "Configure the nameserver (DNS)." +msgstr "Configurar servidor DNS" + +# +#, fuzzy +msgid "Configure the netmask." +msgstr "Configurar interface" + +msgid "Configure the number of days after which items are automaticaly removed from the trash can." +msgstr "" + +msgid "Configure the number of days old timers are kept before they are automatically removed from the timer list." +msgstr "" + +msgid "Configure the offline decoding delay in milliseconds. The configured delay is observed at each control word parity change." +msgstr "" + +#, fuzzy +msgid "Configure the possible fast forward speeds." +msgstr "Velocidade de avançar inicial" + +msgid "Configure the possible rewind speeds." +msgstr "" + +msgid "Configure the primary EPG language." +msgstr "" + +msgid "Configure the refresh rate of the screen." +msgstr "" + +msgid "Configure the screen resolution in PC output mode." +msgstr "" + +msgid "Configure the second audio language." +msgstr "" + +# +#, fuzzy +msgid "Configure the second subtitle language." +msgstr "mudar para a proxima lingua de legenda" + +msgid "Configure the secondary EPG language." +msgstr "" + +msgid "Configure the sharpness of the video scaling." +msgstr "" + +msgid "Configure the skip time interval for the '1'/'3' buttons." +msgstr "" + +msgid "Configure the skip time interval for the '4'/'6' buttons." +msgstr "" + +msgid "Configure the skip time interval for the '7'/'9' buttons." +msgstr "" + +# +#, fuzzy +msgid "Configure the slow motion speeds." +msgstr "Velocidades do modo camera lenta" + +msgid "Configure the source of the frontend data as shown on the infobars. 'Settings' is as stored on the settings. 'Tuner' is as reported by the tuner." +msgstr "" + +msgid "Configure the speed of the background deletion process. Lower speed will consume less hard disk drive performance." +msgstr "" + +msgid "Configure the speed of the fan" +msgstr "" + +msgid "Configure the subtitle delay when timing information is not available." +msgstr "" + +msgid "Configure the third audio language." +msgstr "" + +# +#, fuzzy +msgid "Configure the third subtitle language." +msgstr "mudar para a proxima lingua de legenda" + +msgid "Configure the transparency of the OSD." +msgstr "" + +msgid "Configure the transparency of the black background of graphical DVB subtitles." +msgstr "" + +# +#, fuzzy +msgid "Configure the tuner mode." +msgstr "Modo de configuração" + +msgid "Configure the type of status indication icons shown in the movielist." +msgstr "" + +msgid "Configure the vertical position of the subtitles, measured from the bottom of the screen." +msgstr "" + +msgid "Configure the video output mode (or resolution)." +msgstr "" + +msgid "Configure the way in which the receiver changes channels." +msgstr "" + +msgid "Configure where completed timers show up in the timer list." +msgstr "" + +msgid "Configure whether (and for how long) a second infobar will be shown when OK is pressed twice. The second infobar contains additional information about the current channel." +msgstr "" + +msgid "Configure whether multi channel sound tracks should be downmixed to stereo." +msgstr "" + +msgid "Configure whether or not an icon should be shown when your motorized dish is moving." +msgstr "" + +msgid "Configure which access level to use for the configuration menu. Expert level gives access to all items." +msgstr "" + +msgid "Configure which color format should be used on the SCART output." +msgstr "" + +msgid "Configure which tuner for recordings will be preferred, when more than one tuner is available." +msgstr "" + +msgid "Configure which tuner type will be preferred, when the same service is available on different types of tuners." +msgstr "" + +msgid "Configure which tuner will be preferred, when more than one tuner is available. If set to 'auto' the system will give priority to the tuner having the lowest number of channels/satellites." +msgstr "" + +# +msgid "Configure your internal LAN" +msgstr "Configure a sua rede LAN interna" + +# +msgid "Configure your network again" +msgstr "Configure a sua rede outra vez" + +msgid "Configure your network settings, and press OK to start the scan" +msgstr "Configure as opções de rede, prima OK para iniciar a busca" + +# +msgid "Configure your wireless LAN again" +msgstr "Configure a sua rede sem fios outra vez" + +msgid "Configures which video output connector will be used." +msgstr "" + +# +msgid "Configuring" +msgstr "A configurar" + +# +msgid "Conflicting timer" +msgstr "Conflito de gravações" + +# +msgid "Connect" +msgstr "Ligar" + +# +#, fuzzy +msgid "Connect to a wireless network" +msgstr "Ligar a Rede Wireless" + +msgid "Connected satellites" +msgstr "" + +# +msgid "Connected to" +msgstr "Ligado a" + +# +msgid "Connected!" +msgstr "Ligado!" + +# +msgid "Constellation" +msgstr "Constelação" + +# +msgid "Content does not fit on DVD!" +msgstr "O contiudo não cabe no DVD!" + +msgid "Continue" +msgstr "Continuar" + +# +msgid "Continue in background" +msgstr "Continuar em segundo plano" + +# +#, fuzzy +msgid "Continue playback" +msgstr "Continuar a reproduzir" + +# +msgid "Continue playing" +msgstr "Continuar a reproduzir" + +msgid "Continues play (loop)" +msgstr "" + +# +msgid "Contrast" +msgstr "Contraste" + +#, fuzzy +msgid "Convert ext3 filesystem to ext4" +msgstr "Converte o sitema de ficheiros ext3 em ext4" + +msgid "Convert ext3 to ext4" +msgstr "Converter ext3 em ext4" + +#, fuzzy +msgid "Converting ext3 to ext4..." +msgstr "Converter ext3 em ext4..." + +msgid "Copy" +msgstr "Copiar" + +msgid "Could not connect to receiver .NFI image feed server:" +msgstr "" + +msgid "Could not find installed channel list." +msgstr "" + +# +#, fuzzy +msgid "Could not load medium! No disc inserted?" +msgstr "Foi impossível carregar a media! Disco não inserido?" + +# +msgid "Could not open Picture in Picture" +msgstr "Foi impossível abrir o PiP" + +# +#, fuzzy, python-format +msgid "Could not record due to conflicting timer %s" +msgstr "Foi impossível grvar devido a um conflito de gravações %s" + +#, fuzzy, python-format +msgid "Could not record due to invalid service %s" +msgstr "Foi impossível grvar devido ao canal não ser valido %s" + +# +msgid "Create DVD-ISO" +msgstr "Criar DVD-ISO" + +msgid "Create more detailed crash log" +msgstr "Criar relatório de erros mais detalhados" + +# +#, python-format +msgid "Creating directory %s failed." +msgstr "A criação da pasta %s falhou." + +#, fuzzy +msgid "Creating filesystem" +msgstr "Criar sistema de ficheiros" + +#, fuzzy +msgid "Creating partition" +msgstr "Criar Partição" + +# +msgid "Croatian" +msgstr "Croata" + +msgid "Current CEC address" +msgstr "Endereço actual de CEC" + +msgid "Current device: " +msgstr "Dispositivo actual:" + +msgid "Current event EPG" +msgstr "" + +#, python-format +msgid "Current mode: %s \n" +msgstr "" + +# +msgid "Current settings:" +msgstr "Definições actuais:" + +# +#, fuzzy +msgid "Current transponder" +msgstr "Transponder actual" + +# +msgid "Current value: " +msgstr "Valor Actual:" + +# +msgid "Current version:" +msgstr "Versão instalada" + +msgid "Currently installed image" +msgstr "Imagem instalada actualmente" + +msgid "Currently the commit log cannot be retrieved - please try later again" +msgstr "" + +# +#, fuzzy +msgid "Custom skip time for '1'/'3' buttons" +msgstr "Tempo definido pelo utilizador, teclas- '1'/'3'" + +# +#, fuzzy +msgid "Custom skip time for '4'/'6' buttons" +msgstr "Definir o tempo para as teclas '4'/'6'" + +# +#, fuzzy +msgid "Custom skip time for '7'/'9' buttons" +msgstr "Definir o tempo para as teclas '7'/'9'" + +# +msgid "Customize" +msgstr "Personalizar" + +msgid "Customize channel list cursor behavior" +msgstr "" + +# +msgid "Cut" +msgstr "Cortar" + +# +msgid "Cutlist editor..." +msgstr "Editor de corte das listas" + +# +msgid "Czech" +msgstr "Checo" + +msgid "D" +msgstr "" + +msgid "DHCP" +msgstr "" + +# +#, fuzzy +msgid "DMM advanced" +msgstr "Avançados" + +#, fuzzy +msgid "DMM normal" +msgstr "normal" + +# +msgid "DUAL LAYER DVD" +msgstr "DVD de dupla face" + +msgid "DVB subtitle black transparency" +msgstr "Transparência do preto das legendas dvb" + +msgid "DVB-C" +msgstr "" + +msgid "DVB-C ANNEX C" +msgstr "" + +# +msgid "DVB-S" +msgstr "DVB-S" + +msgid "DVB-S2" +msgstr "DVB-S2" + +msgid "DVB-T" +msgstr "" + +msgid "DVB-T2" +msgstr "" + +msgid "DVD data format" +msgstr "Formato do DVD" + +# +#, fuzzy +msgid "DVD file browser" +msgstr "Explorador de fecheiros do DVD" + +# +msgid "DVD media toolbox" +msgstr "Ferramentas de media do DVD" + +# +#, fuzzy +msgid "DVD player" +msgstr "Reprodutor de DVD" + +# +#, fuzzy +msgid "DVD titlelist" +msgstr "Lista de títulos do DVD" + +# +msgid "Danish" +msgstr "Dinamarquês" + +# +msgid "Date" +msgstr "Data" + +# +#, fuzzy +msgid "Date/time input" +msgstr "Introduzir a Hora/Data" + +# +#, fuzzy +msgid "Deep standby" +msgstr "Desligar" + +# +msgid "Default" +msgstr "Padrão" + +# +msgid "Default movie location" +msgstr "Localização padrão das gravações" + +# +#, fuzzy +msgid "Default settings" +msgstr "Configurações Padrão" + +msgid "Delay before key repeat starts:" +msgstr "Atraso antes da repetição da tecla:" + +msgid "Delay for external subtitles" +msgstr "" + +# +msgid "Delete" +msgstr "Apagar" + +# +msgid "Delete entry" +msgstr "Apagar" + +# +msgid "Delete failed!" +msgstr "Falhou o apagar" + +# +#, fuzzy +msgid "Delete file" +msgstr "apagar ficheiro" + +# +#, fuzzy +msgid "Delete playlist entry" +msgstr "apagar entradads na lista" + +# +#, fuzzy +msgid "Delete saved playlist" +msgstr "apagar lista gravada" + +msgid "Delete timer" +msgstr "" + +# +#, fuzzy +msgid "Delete..." +msgstr "eliminar..." + +msgid "Deleted" +msgstr "Apagado" + +msgid "Deleted items" +msgstr "Gravações Apagadas" + +msgid "Depth" +msgstr "Profundidade" + +msgid "Descramble http streams" +msgstr "Descodificar streams http" + +# +msgid "Description" +msgstr "Descrição" + +# +msgid "Deselect" +msgstr "Deselecionar" + +msgid "Details for plugin: " +msgstr "Detalhes do plugin:" + +# +msgid "Detected HDD:" +msgstr "Disco rígido detectado:" + +# +msgid "Detected NIMs:" +msgstr "NIMs detectado:" + +msgid "Devicename:" +msgstr "Dispositivo:" + +msgid "Devide" +msgstr "" + +msgid "DiSEqC" +msgstr "" + +msgid "DiSEqC 1.0 command" +msgstr "" + +msgid "DiSEqC 1.1 command" +msgstr "" + +msgid "DiSEqC 1.1 repeats" +msgstr "" + +msgid "DiSEqC A/B" +msgstr "" + +msgid "DiSEqC A/B/C/D" +msgstr "" + +# +msgid "DiSEqC mode" +msgstr "Modo DiSEqC" + +# +#, fuzzy, python-format +msgid "DiSEqC port %s: %s" +msgstr "Repetições DiSEqC" + +# +#, fuzzy +msgid "DiSEqC-tester settings" +msgstr "DiSEqC-Configurações de teste" + +# +msgid "Dialing:" +msgstr "Marcação:" + +# +msgid "Digital contour removal" +msgstr "Remoção de contorno digital" + +# +msgid "Direct playback of linked titles without menu" +msgstr "Reprodução directa de títulos ligados sem menu" + +msgid "Directory" +msgstr "Pasta" + +# +#, fuzzy, python-format +msgid "Directory %s does not exist." +msgstr "A pasta %s não existe." + +#, python-format +msgid "Directory %s nonexistent." +msgstr "" + +# +msgid "Directory browser" +msgstr "Explorador de pastas" + +#, python-format +msgid "Directory contains %d file(s) and %d sub-directories.\n" +msgstr "" + +#, fuzzy, python-format +msgid "Directory contains %s and %s." +msgstr "A pasta contem %d ficheiro(s) e %d sub-pastas.\n" + +# +msgid "Disable" +msgstr "Desabilitar" + +# +msgid "Disable Picture in Picture" +msgstr "Desabilitar Imagem na Imagem" + +msgid "Disable background scanning" +msgstr "Desactivar busca de segundo plano" + +msgid "Disable timer" +msgstr "" + +# +msgid "Disabled" +msgstr "Desabilitado" + +# +msgid "Disconnect" +msgstr "Desligado" + +msgid "Disk space to reserve for recordings (in GB)" +msgstr "Espaço reservado no disco para gravações (GB) " + +# +msgid "Display 16:9 content as" +msgstr "Mostrar 16:9 como" + +# +msgid "Display 4:3 content as" +msgstr "Mostrar 4:3 como" + +# +msgid "Display >16:9 content as" +msgstr "Mostrar 16:9 como" + +# +#, fuzzy +msgid "Display and userinterface" +msgstr "Ecrã e Interface de Utilizador" + +msgid "Display message before playing next movie" +msgstr "" + +# +#, fuzzy +msgid "Display setup" +msgstr "Definições do Display" + +# +#, fuzzy +msgid "Do not change" +msgstr "Não alterar" + +# +#, fuzzy +msgid "Do not record" +msgstr "não gravar" + +# +#, fuzzy +msgid "Do nothing" +msgstr "espere" + +# +msgid "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" +msgstr "" +"Deseja mesmo verificar o sistema de ficheiros?\n" +"Pode levar algum tempo!!!" + +msgid "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" +msgstr "" +"Deseja mesmo converter o sistema de ficheiros?\n" +"Depois não pode voltar atrás!" + +# +#, python-format +msgid "Do you really want to delete %s?" +msgstr "Deseja mesmo apagar %s?" + +# +#, python-format +msgid "" +"Do you really want to download\n" +"the plugin \"%s\"?" +msgstr "" +"Deseja mesmo fazer o download\n" +"do plugin \"%s\"?" + +# +msgid "Do you really want to exit?" +msgstr "Deseja realmente sair?" + +msgid "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" +msgstr "" +"Deseja mesmo iniciar o dispositivo?\n" +"Tudo contido no disco será perdido!" + +# +#, fuzzy, python-format +msgid "" +"Do you really want to remove\n" +"the plugin \"%s\"?" +msgstr "" +"Deseja mesmo fazer o download\n" +"do plugin \"%s\"?" + +# +#, python-format +msgid "Do you really want to remove directory %s from the disk?" +msgstr "Deseja mesmo remover a pasta %s do disco?" + +# +#, python-format +msgid "Do you really want to remove your bookmark of %s?" +msgstr "Deseja mesmo remover o marcador de %s?" + +msgid "Do you want this?" +msgstr "" + +# +msgid "Do you want to burn this collection to DVD medium?" +msgstr "Deseja gravar esta colecção para DVD?" + +# +msgid "Do you want to do a service scan?" +msgstr "Deseja fazer uma busca de canais?" + +# +msgid "Do you want to do another manual service scan?" +msgstr "Deseja fazer outra busca manual?" + +#, python-format +msgid "Do you want to download the image to %s ?" +msgstr "Deseja fazer o download da imagem para %s ?" + +# +#, fuzzy +msgid "Do you want to install a channel list?" +msgstr "Deseja instalar o pacote:\n" + +# +msgid "Do you want to install the package:\n" +msgstr "Deseja instalar o pacote:\n" + +# +msgid "Do you want to play DVD in drive?" +msgstr "Deseja reproduzir o DVD inserido?" + +# +msgid "Do you want to preview this DVD before burning?" +msgstr "Deseja previsualizar este DVD antes de gravar?" + +msgid "Do you want to reboot your receiver?" +msgstr "" + +# +msgid "Do you want to remove the package:\n" +msgstr "Deseja remover o pacote:\n" + +# +msgid "Do you want to restore your settings?" +msgstr "Deseja fazer um restauro ás definições?" + +# +msgid "Do you want to resume this playback?" +msgstr "Deseja continuar?" + +#, fuzzy, python-format +msgid "Do you want to update your receiver to %s?" +msgstr "Deseja fazer o download da imagem para %s ?" + +msgid "Do you want to update your receiver?" +msgstr "" + +# +msgid "Do you want to upgrade the package:\n" +msgstr "Deseja actualizar o pacote:\n" + +# +msgid "Don't stop current event but disable coming events" +msgstr "Não parar o programa actual mas desbilitar novos programas" + +# +#, fuzzy, python-format +msgid "Done - Installed, upgraded or removed %d package (%s)" +msgid_plural "Done - Installed, upgraded or removed %d packages (%s)" +msgstr[0] "Terminado - Instalados, actualizados, ou removidos %d pacotes com %d erros" +msgstr[1] "Terminado - Instalados, actualizados, ou removidos %d pacotes com %d erros" + +msgid "Download" +msgstr "" + +#, fuzzy, python-format +msgid "Download %s from server" +msgstr "Download %s do Servidor" + +msgid "Download .NFI-files for USB-flasher" +msgstr "Download ficheiros .NFI para PEN Drive" + +# +#, fuzzy +msgid "Download plugins" +msgstr "Descarregar Plugins" + +# +msgid "Downloadable new plugins" +msgstr "Instalar plugins" + +# +msgid "Downloadable plugins" +msgstr "Plugins para descarregar" + +msgid "Downloading" +msgstr "" + +# +msgid "Downloading plugin information. Please wait..." +msgstr "A descarregar novos plugins. Por favor espere..." + +# +msgid "Dutch" +msgstr "Holandês" + +# +msgid "Dynamic contrast" +msgstr "Contraste dinâmico" + +msgid "E" +msgstr "" + +msgid "EPG" +msgstr "" + +msgid "EPG language selection 1" +msgstr "Idioma de EPG 1" + +msgid "EPG language selection 2" +msgstr "Idioma de EPG 2" + +# +#, fuzzy +msgid "EPG selection" +msgstr "Selecção do EPG" + +msgid "EPG settings" +msgstr "" + +# +#, python-format +msgid "ERROR - failed to scan (%s)!" +msgstr "ERRO - falha na busca (%s)!" + +# +msgid "East" +msgstr "Este" + +msgid "East limit set" +msgstr "Definir o limite a Este" + +# +msgid "Edit" +msgstr "Editar" + +# +msgid "Edit DNS" +msgstr "Editar o DNS" + +# +msgid "Edit bouquets list" +msgstr "Editar a lista de favoritos" + +# +msgid "Edit chapters of current title" +msgstr "Editar capítulos do título actual" + +# +msgid "Edit services list" +msgstr "Editar lista de canais" + +# +msgid "Edit settings" +msgstr "Editar defenições" + +# +#, fuzzy +msgid "Edit the nameserver configuration of your receiver.\n" +msgstr "sair da configuração do servidor de DNS" + +msgid "Edit the network configuration of your receiver.\n" +msgstr "" + +msgid "Edit timer" +msgstr "" + +# +msgid "Edit title" +msgstr "Editar o título" + +# +msgid "Edit upgrade source url." +msgstr "Editar o url da fonte de actualização." + +msgid "Education/Science/..." +msgstr "" + +# +msgid "Electronic Program Guide" +msgstr "Electronic Program Guide" + +# +msgid "Enable" +msgstr "Activar" + +msgid "Enable 'neutrino' style channel select controlling" +msgstr "" + +msgid "Enable 'neutrino' style zap controlling" +msgstr "" + +# +msgid "Enable 5V for active antenna" +msgstr "Activar saída de 5V para a antena" + +msgid "Enable EIT EPG" +msgstr "Activar EPG EIT" + +msgid "Enable MHW EPG" +msgstr "Activar EPG MHW" + +msgid "Enable Netmed EPG" +msgstr "Activar EPG Netmed" + +msgid "Enable OK for channel selection" +msgstr "" + +msgid "Enable ViaSat EPG" +msgstr "Activar EPG Viasat" + +msgid "Enable Virgin EPG" +msgstr "" + +msgid "Enable Wake On LAN" +msgstr "" + +msgid "Enable auto fast scan" +msgstr "" + +#, fuzzy +msgid "Enable bouquet selection in multi-EPG" +msgstr "Mostrar o menu de selecção de favoritos" + +msgid "Enable freesat EPG" +msgstr "Activar EPG freesat" + +# +msgid "Enable multiple bouquets" +msgstr "Activar Bouquets multiplos" + +# +msgid "Enable parental control" +msgstr "Activar Controle Paternal" + +msgid "Enable teletext caching" +msgstr "Activar cache de teletexto" + +msgid "Enable zapping with CH+/-, B+/-, P+/-" +msgstr "" + +# +msgid "Enabled" +msgstr "Activar" + +# +msgid "Encrypted: " +msgstr "Encriptado:" + +# +msgid "Encryption" +msgstr "Encriptação" + +# +#, fuzzy +msgid "Encryption key" +msgstr "Chave de Encriptação" + +# +#, fuzzy +msgid "Encryption key type" +msgstr "Tipo de Chave de Encriptação" + +# +msgid "Encryption:" +msgstr "Encriptação:" + +# +msgid "End time" +msgstr "Tempo final" + +msgid "End time to ignore inactivity sleeptimer" +msgstr "" + +msgid "End time to ignore shutdown in standby" +msgstr "" + +# +msgid "English" +msgstr "Inglês" + +#, fuzzy +msgid "Enigma2 skin selector" +msgstr "enigma2 e rede" + +# +msgid "Enter main menu..." +msgstr "Menu Principal" + +# +msgid "Enter pin code" +msgstr "Insira o codigo PIN" + +# +msgid "Enter the service pin" +msgstr "Introduzir o PIN" + +msgid "Equal to" +msgstr "" + +# +msgid "Error" +msgstr "Erro" + +msgid "Error code" +msgstr "Código de erro" + +# +msgid "Error executing plugin" +msgstr "Erro ao executar o plugin" + +# +#, python-format +msgid "" +"Error: %s\n" +"Retry?" +msgstr "" +"Erro: %s\n" +"Tentar de novoy?" + +# +msgid "Estonian" +msgstr "Estoniano" + +msgid "Ethernet network interface" +msgstr "Interface de rede ethernet" + +#, fuzzy +msgid "Event font size (relative to skin size)" +msgstr "Tamanho de Letra (relativo ao tamanho do tema)" + +# +#, fuzzy +msgid "Event view" +msgstr "Ver Evento" + +#, fuzzy +msgid "Event view menu" +msgstr "Menu de Eventos" + +msgid "Everywhere" +msgstr "Todo Lado" + +# +msgid "Exceeds dual layer medium!" +msgstr "É maior que a media de duapla face!" + +# +msgid "Execution finished!!" +msgstr "Terminado" + +# +#, fuzzy +msgid "Execution progress:" +msgstr "Progresso" + +msgid "Exif" +msgstr "" + +# +msgid "Exit" +msgstr "Sair" + +msgid "Exit EPG" +msgstr "Sair do EPG" + +# +msgid "Exit editor" +msgstr "Sair do Editor" + +msgid "Exit input device selection." +msgstr "Sair da selecção de dispositivos de entrada" + +msgid "Exit media player?" +msgstr "" + +# +#, fuzzy +msgid "Exit mediaplayer" +msgstr "Saír do mediaplayer" + +# +#, fuzzy +msgid "Exit movie list" +msgstr "Saír da lista de filmes" + +# +#, fuzzy +msgid "Exit movie player?" +msgstr "Saír do mediaplayer" + +# +#, fuzzy +msgid "Exit nameserver configuration" +msgstr "sair da configuração do servidor de DNS" + +# +#, fuzzy +msgid "Exit network interface list" +msgstr "sair da lista de interface de rede" + +# +msgid "Exit network wizard" +msgstr "Sair do assistente de Rede" + +# +msgid "Exit the wizard" +msgstr "Sair" + +msgid "Expert" +msgstr "" + +msgid "Extend sleeptimer 15 minutes" +msgstr "" + +# +msgid "Extended Software" +msgstr "Software Avançado" + +# +msgid "Extended Software Plugin" +msgstr "Plugin de Software Avançado" + +# +#, fuzzy +msgid "Extended network setup plugin..." +msgstr "Plugin de Configuração de Rede Avançado" + +# +#, fuzzy +msgid "Extended setup..." +msgstr "Configurações Avançadas" + +# +msgid "Extensions" +msgstr "Extensões" + +# +msgid "Extensions management" +msgstr "Gestor de extensões" + +msgid "External PiP" +msgstr "" + +msgid "External subtitle color" +msgstr "" + +msgid "Extra motor options" +msgstr "" + +msgid "FEC" +msgstr "" + +msgid "FTA" +msgstr "" + +# +msgid "Factory reset" +msgstr "Restauro de Fabrica" + +# +msgid "Failed" +msgstr "Falha" + +msgid "Failed to write /tmp/positionersetup.log: " +msgstr "" + +# +#, python-format +msgid "Fan %d" +msgstr "Ventilador %d" + +# +#, python-format +msgid "Fan %d PWM" +msgstr "Ventilador %d PWM" + +# +#, fuzzy, python-format +msgid "Fan %d voltage" +msgstr "Ventilador %d Tensão" + +msgid "Fan operation" +msgstr "" + +msgid "Fan speed" +msgstr "" + +# +msgid "Fast" +msgstr "Rápido" + +# +msgid "Fast DiSEqC" +msgstr "DiSEqC rápido" + +msgid "Fast Scan" +msgstr "Busca Rápida" + +# +msgid "Fast epoch" +msgstr "Epoch Rapido" + +# +#, fuzzy +msgid "Fast forward speeds" +msgstr "Velocidade de avançar rápida" + +# +msgid "Favourites" +msgstr "Favoritos" + +msgid "File appears to be busy.\n" +msgstr "Parece que o ficheiro está ocupado.\n" + +# +#, fuzzy +msgid "Filesystem check" +msgstr "Verificação do sistema de ficheiros" + +msgid "Final position at" +msgstr "Posição final em" + +msgid "Final position at index" +msgstr "Posição final no indice" + +msgid "Fine movement" +msgstr "Ajuste fino" + +# +msgid "Finetune" +msgstr "Sintonizar fino" + +# +msgid "Finished" +msgstr "Terminado" + +# +msgid "Finished configuring your network" +msgstr "Terminou a configuração de rede" + +# +msgid "Finished restarting your network" +msgstr "Terminou a reiniciação de rede" + +# +msgid "Finnish" +msgstr "Finlandês" + +#, fuzzy +msgid "Fixed" +msgstr "seguro" + +msgid "Flash" +msgstr "" + +# +msgid "Flashing failed" +msgstr "Falhou o Flash" + +# +msgid "Following tasks will be done after you press OK!" +msgstr "A tarefas vão terminar depois de primir OK!" + +# +msgid "Format" +msgstr "Formato" + +msgid "Forward volume keys" +msgstr "Avançar teclas de volume " + +# +msgid "Frame size in full view" +msgstr "Tamanho da janela em tamanho grande" + +# +msgid "French" +msgstr "Francês" + +# +msgid "Frequency" +msgstr "Frequencia" + +# +msgid "Frequency bands" +msgstr "bandas de frequência" + +# +msgid "Frequency scan step size(khz)" +msgstr "Tamanho das etapas de frequência(khz)" + +# +msgid "Frequency steps" +msgstr "Etapas da frequência " + +msgid "Frequency:" +msgstr "" + +# +msgid "Fri" +msgstr "Sex" + +# +msgid "Friday" +msgstr "Sexta feira" + +msgid "From :" +msgstr "De :" + +# +#, python-format +msgid "Frontprocessor version: %d" +msgstr "Versão do Processador: %d" + +#, fuzzy +msgid "Full transparency" +msgstr "transparência total" + +msgid "Fulview resulution" +msgstr "" + +msgid "Function of OK button" +msgstr "" + +msgid "Further Options" +msgstr "" + +# +msgid "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" +msgstr "" +"Gui necessita reiniciar para aplicar a nova Skin\n" +"Deseja reiniciar agora? " + +msgid "Gateway" +msgstr "" + +# +#, fuzzy +msgid "General AC3 delay" +msgstr "Atraso AC3 geral" + +# +#, fuzzy +msgid "General PCM delay" +msgstr "Atraso PCM geral" + +# +msgid "Genre" +msgstr "Genero" + +# +msgid "German" +msgstr "Alemão" + +msgid "Get latest experimental image" +msgstr "Receba a ultima imagem experimental" + +msgid "Get latest release image" +msgstr "Receba a ultima imagem" + +# +msgid "Getting plugin information. Please wait..." +msgstr "Adquirir a info do plugin.Por favor espere" + +msgid "Go down the list" +msgstr "Ir para baixo na lista" + +msgid "Go to first movie or last item" +msgstr "Ir para a primeira gravação ou ultimo iten" + +msgid "Go to first movie or top of list" +msgstr "Ir para a primeira gravação ou topo da lista" + +#, fuzzy +msgid "Go to first service" +msgstr "Ir para o primeiro canal" + +#, fuzzy +msgid "Go to last service" +msgstr "Ir para o ultimo canal" + +#, fuzzy +msgid "Go to next event" +msgstr "Ir para o evento seguinte" + +#, fuzzy +msgid "Go to next page of service" +msgstr "Ir para a próxima pagina de serviços" + +#, fuzzy +msgid "Go to previous event" +msgstr "Ir para o evento seguinte" + +#, fuzzy +msgid "Go to previous page of service" +msgstr "Ir para a pagina anterior de serviços" + +msgid "Go up the list" +msgstr "Ir para o" + +msgid "Goto" +msgstr "Ir Para" + +# +msgid "Goto 0" +msgstr "Ir para 0" + +msgid "Goto :" +msgstr "Ir Para :" + +msgid "Goto X" +msgstr "Ir Para X" + +msgid "Goto index position" +msgstr "Ir para a posição de indice" + +msgid "Goto next day of events" +msgstr "" + +msgid "Goto next page of events" +msgstr "Ir para a próxima pagina de eventos" + +# +msgid "Goto position" +msgstr "Ir para posição" + +msgid "Goto previous day of events" +msgstr "" + +msgid "Goto previous page of events" +msgstr "Ir para a pagina anterior de eventos" + +msgid "Goto specific date/time" +msgstr "" + +msgid "GotoX calibration" +msgstr "Ir para a calibração X" + +msgid "GraphMultiEpg Settings" +msgstr "" + +# +msgid "Graphical Multi EPG" +msgstr "Multi EPG Gráfico" + +# +msgid "Greek" +msgstr "Grego" + +# +msgid "Green boost" +msgstr "Boost verde" + +msgid "Guard interval" +msgstr "Inervalo de segurança" + +msgid "HD list" +msgstr "Lista HD" + +msgid "HDMI-CEC setup" +msgstr "" + +msgid "Handle standby from TV" +msgstr "Controlar o standby a partir da TV" + +msgid "Handle wakeup from TV" +msgstr "Controlar o ligar a partir da TV" + +# +#, fuzzy +msgid "Hard disk" +msgstr "Disco rigido" + +# +#, fuzzy +msgid "Hard disk setup" +msgstr "Configuração Disco Rigido" + +# +#, fuzzy +msgid "Hard disk standby after" +msgstr "Disco rigido suspenso após " + +# +msgid "Harddisk" +msgstr "Disco rigido" + +msgid "Hardware: " +msgstr "" + +msgid "Hebrew" +msgstr "Hebraico" + +msgid "Helps setting up your dish" +msgstr "" + +msgid "Hidden network" +msgstr "Rede oculta" + +msgid "Hide CI messages" +msgstr "Ocultar mensagens do CI" + +msgid "Hide channel list in radio mode" +msgstr "" + +msgid "Hide known extensions" +msgstr "" + +msgid "Hide number markers" +msgstr "" + +# +#, fuzzy +msgid "Hide player" +msgstr "Esconder reprodutor" + +msgid "Hide zap errors" +msgstr "Ocultar erros no zapping" + +msgid "Hierarchy info" +msgstr "Informação de hierarquia" + +# +#, fuzzy +msgid "Hierarchy information" +msgstr "Informação hierarquica" + +# +msgid "High bitrate support" +msgstr "Suporte para Alto bitrate" + +msgid "Hold screen" +msgstr "Manter ecrã" + +msgid "Hold till locked" +msgstr "Manter até estabilizar" + +msgid "Home" +msgstr "Origem" + +# +msgid "Horizontal" +msgstr "Horizontal" + +msgid "Horizontal turning speed" +msgstr "Velocidade de viragem horizontal" + +# +msgid "How many minutes do you want to record?" +msgstr "Quantos minutos deseja gravar?" + +# +msgid "Hue" +msgstr "Tom" + +# +msgid "Hungarian" +msgstr "Hungaro" + +# +#, fuzzy +msgid "IP address" +msgstr "Endereço IP" + +# +msgid "ISO file is too large for this filesystem!" +msgstr "O ficheiro ISO é demasiado grande para este formato! " + +# +msgid "ISO path" +msgstr "Pasta ISO" + +msgid "Icons" +msgstr "Icones" + +# +msgid "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." +msgstr "" +"Se está a ver isto, algo está mal com a sua ligação Scart.\n" +"Carregue OK." + +# +msgid "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." +msgstr "" +"Se a sua TV tiver ajuste de brilho ou contraste, desligue.Se tiver algo com o nome\"dinà¢mico\", ajuste para Standard. Ajuste o nivel da luz de fundo para um valor a seu gosto. Baixe o contraste da sua o maximo possível.\n" +"Depois ajuste o brilho para o mais baixo possivel, mas certifique-se de que as duas escalas de sombra cinza mais baixas, sejam visiveis.\n" +"Não se preocupe com as sombras brilhantes agora.Serão ajustadas no próximo passo.\n" +"Se os ajustes estão bem, carregue OK." + +msgid "Image: " +msgstr "Imagem:" + +# +#, fuzzy +msgid "Immediate shutdown" +msgstr "Desligar imediatamente" + +# +msgid "In order to record a timer, the TV was switched to the recording service!\n" +msgstr "Para proceder a uma gravação agendada, a TV mudou para o canal desejado!\n" + +# +#, fuzzy +msgid "In progress" +msgstr "Em Progresso" + +msgid "Inactivity Sleeptimer" +msgstr "" + +msgid "Include AIT in http streams" +msgstr "Incluir AIT nos streams http" + +msgid "Include ECM in http streams" +msgstr "Incluir ECM nos streams http" + +msgid "Include EIT in http streams" +msgstr "Incluir EIT nos streams http" + +msgid "Incorrect type service for PiP!" +msgstr "" + +# +msgid "Increased voltage" +msgstr "Aumento de tensão" + +# +msgid "Index" +msgstr "Indice" + +msgid "Index allocated:" +msgstr "" + +msgid "Info" +msgstr "" + +# +#, fuzzy +msgid "Info bar" +msgstr "Barra de Info" + +# +#, fuzzy +msgid "Info bar timeout" +msgstr "Tempo da Barra de Info " + +msgid "Infobar frontend data source" +msgstr "" + +# +msgid "Information" +msgstr "Informação" + +# +msgid "Init" +msgstr "Inicio" + +#, fuzzy +msgid "Initial fast forward speed" +msgstr "Velocidade de avançar inicial" + +# +msgid "Initial location in new timers" +msgstr "Localização inicial para novos agendamentos" + +msgid "Initial lock ratio" +msgstr "Racio inicial de estabelização" + +#, fuzzy +msgid "Initial rewind speed" +msgstr "Velocidade de Rewind inicial" + +msgid "Initial signal quality" +msgstr "Qualidade de sinal inicial" + +msgid "Initial signal quality:" +msgstr "Qualidade de sinal inicial:" + +# +msgid "Initialization" +msgstr "Inicialização" + +# +msgid "Initialize" +msgstr "Iniciado" + +msgid "Initializing storage device..." +msgstr "A iniciar dispositivo de armazenamento..." + +# +msgid "Input" +msgstr "Entrada" + +msgid "Input device setup" +msgstr "Definições dos dispositivos de entrada" + +msgid "Input devices" +msgstr "Dispositivos" + +# +msgid "Install" +msgstr "Instalar" + +# +msgid "Install a new image with a USB stick" +msgstr "Instalar uma nova imagem por USB" + +# +msgid "Install a new image with your web browser" +msgstr "Instalar uma nova imagem por web browser" + +# +#, fuzzy +msgid "Install channel list" +msgstr "proxima canal na memoria" + +msgid "Install extensions" +msgstr "" + +# +msgid "Install extensions." +msgstr "Instalar extensões." + +# +msgid "Install local extension" +msgstr "Instalar extensão local" + +msgid "Install picons on" +msgstr "Instalar picons em" + +# +#, fuzzy +msgid "Install softcam" +msgstr "A instalar o software..." + +#, fuzzy +msgid "Installation has completed." +msgstr "Calculação completa" + +# +#, fuzzy +msgid "Installation or removal has completed." +msgstr "Instalação ou Desinstalação terminou." + +# +msgid "Installing" +msgstr "A instalar" + +# +#, fuzzy +msgid "Installing software..." +msgstr "A instalar o software..." + +# +#, fuzzy +msgid "Instant recording location" +msgstr "Localização das gravações instantâneas" + +# +#, fuzzy +msgid "Instant recording..." +msgstr "Gravar agora..." + +msgid "Interface: " +msgstr "" + +# +msgid "Intermediate" +msgstr "Intermediario" + +# +#, fuzzy +msgid "Internal flash" +msgstr "Flash Interna" + +msgid "Internal hdd only" +msgstr "Só disco interno" + +msgid "Interval between keys when repeating:" +msgstr "Intervalo entre teclas quando a repetir:" + +# +#, python-format +msgid "Invalid directory selected: %s" +msgstr "Pasta invalida: %s" + +# +#, fuzzy +msgid "Invalid location" +msgstr "Localização Inválida" + +msgid "Invalid transponder data" +msgstr "" + +# +msgid "Inversion" +msgstr "Inversão" + +msgid "Invert" +msgstr "Inverter" + +msgid "Ipkg" +msgstr "" + +#, fuzzy +msgid "Is this setting ok?" +msgstr "Usar estas definições?" + +# +#, fuzzy +msgid "Is this video mode ok?" +msgstr "Este modo de video está correcto?" + +# +msgid "Italian" +msgstr "Italiano" + +#, fuzzy +msgid "Items per page " +msgstr "Itens por Pagina" + +#, fuzzy +msgid "Items per page for list screen" +msgstr "Itens por Pagina" + +# +#, fuzzy +msgid "Job overview" +msgstr "Vista de tarefas" + +msgid "Jump to beginning of list" +msgstr "" + +# +#, fuzzy +msgid "Jump to end of list" +msgstr "saltar parea o fim da lista" + +# +#, fuzzy +msgid "Jump to next marked position" +msgstr "saltar para a próxima marca" + +# +#, fuzzy +msgid "Jump to previous marked position" +msgstr "saltar para posição marcada anteriormente" + +# +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect) +#, fuzzy +msgid "Just scale" +msgstr "Modo Escala" + +msgid "Keep service" +msgstr "" + +#, fuzzy +msgid "Kernel version: " +msgstr "Versão do Kernel:" + +# +msgid "Keyboard" +msgstr "Teclado" + +# +#, fuzzy +msgid "Keyboard map" +msgstr "Mapa do Teclado" + +# +#, fuzzy +msgid "Keyboard setup" +msgstr "Config. do Teclado" + +# +#, fuzzy +msgid "LAN adapter" +msgstr "Adaptador LAN" + +msgid "LAN connection" +msgstr "Ligação LAN" + +msgid "LNB" +msgstr "" + +# +msgid "Language" +msgstr "Idioma" + +# +msgid "Language selection" +msgstr "Selecção do Idioma" + +# +msgid "Last config" +msgstr "Ultima configuração" + +# +msgid "Last speed" +msgstr "Ultima velocidade" + +#, fuzzy +msgid "Last upgrade: " +msgstr "Ultima actualização:" + +msgid "Latest Commits" +msgstr "" + +# +msgid "Latitude" +msgstr "Latitude" + +# +msgid "Latvian" +msgstr "Letão" + +# +#, fuzzy +msgid "Leave DVD player?" +msgstr "Sair do Reprodutor de DVD?" + +# +msgid "Left" +msgstr "Esquerda" + +msgid "Left from servicename" +msgstr "" + +msgid "Leisure hobbies" +msgstr "" + +# +#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term. +msgid "Letterbox" +msgstr "Letterbox" + +msgid "Letterbox zoom" +msgstr "" + +# +#, fuzzy +msgid "Limit character set for recording filenames" +msgstr "Limite de caracteres para o nome das gravações" + +# +msgid "Limit east" +msgstr "Limite a Este" + +msgid "Limit the characters that can be used in recording filenames to (7 bit) ascii. This ensures compatibility with operating systems or file systems with limited character sets." +msgstr "" + +# +msgid "Limit west" +msgstr "Limite a Oeste" + +msgid "Limits cancelled" +msgstr "Limites desactivos" + +msgid "Limits enabled" +msgstr "Limites activos" + +# +msgid "Limits off" +msgstr "Desligar limites" + +# +msgid "Limits on" +msgstr "Ligar limites" + +# +#, fuzzy +msgid "Link quality:" +msgstr "Qualidade de Ligação:" + +# +msgid "Link:" +msgstr "Ligação:" + +# +msgid "Linked titles with a DVD menu" +msgstr "Corresponder títulos a menu de DVD" + +# +#, fuzzy +msgid "List EPG functions..." +msgstr "lista de vistas EPG..." + +msgid "List available networks" +msgstr "Lista de redes disponíveis" + +msgid "List mode" +msgstr "" + +# +#, fuzzy +msgid "List of storage devices" +msgstr "Lista de dispositivos de armazenamento" + +msgid "List type" +msgstr "Tipo de lista" + +#, fuzzy, python-format +msgid "List version %d, found %d channel" +msgid_plural "List version %d, found %d channels" +msgstr[0] "Versão de lista %d, encontrados %d canais" +msgstr[1] "Versão de lista %d, encontrados %d canais" + +# +#, fuzzy +msgid "Listen to the radio..." +msgstr "Ouvir radio..." + +msgid "Lists reloaded!" +msgstr "" + +# +msgid "Lithuanian" +msgstr "Lituano" + +# +msgid "Load" +msgstr "Carregar" + +msgid "Load Length of Movies in Movielist" +msgstr "" + +# +#, fuzzy +msgid "Load length of movies in movie list" +msgstr "Carregar o tamanho das gravações na lista de Gravações" + +# +#, fuzzy +msgid "Load playlist" +msgstr "carregar lista" + +# +#, fuzzy +msgid "Local network" +msgstr "Rede Local" + +# +msgid "Location" +msgstr "Localização" + +# +msgid "Location for instant recordings" +msgstr "Localização das gravações instatâneas" + +msgid "Lock ratio" +msgstr "Bloquear racio" + +# +msgid "Lock:" +msgstr "Estabelecer:" + +# +msgid "Log results to harddisk" +msgstr "Resultados do relatório para o disco" + +msgid "Long filenames" +msgstr "Nome de ficheiros longos" + +# +#, fuzzy +msgid "Long key press" +msgstr "Mantenha a tecla pressionada" + +# +msgid "Longitude" +msgstr "Longitude" + +msgid "Loop through to" +msgstr "" + +msgid "Luxembourgish" +msgstr "" + +# +#, fuzzy +msgid "MMC card" +msgstr "Cartão MMC" + +# +msgid "MORE" +msgstr "MAIS" + +# +msgid "Main menu" +msgstr "Menu Principal" + +msgid "Maintain old EPG data for" +msgstr "Guardar EPG antigo por (min)" + +# +msgid "Make this mark an 'in' point" +msgstr "Marcar como ponto de entrada" + +# +msgid "Make this mark an 'out' point" +msgstr "Marcar como ponto de saída" + +# +msgid "Make this mark just a mark" +msgstr "Marcar Somente" + +# +msgid "Manage extensions" +msgstr "Gerir extensões" + +# +msgid "Manage your receiver's software" +msgstr "Gerir o software do receptor" + +msgid "Manual" +msgstr "" + +# +msgid "Manual Scan" +msgstr "Busca Manual" + +msgid "Manual configuration" +msgstr "Configuração manual" + +# +#, fuzzy +msgid "Manual scan" +msgstr "Busca Manual" + +# +msgid "Manual transponder" +msgstr "Transponder Manual" + +# +msgid "Manufacturer" +msgstr "Fabricante" + +# +#, fuzzy +msgid "Margin after recording (minutes)" +msgstr "Margem antes de gravar(minutos)" + +# +#, fuzzy +msgid "Margin before recording (minutes)" +msgstr "Margem antes de gravar(minutos)" + +msgid "Max memory positions" +msgstr "" + +# +#, fuzzy +msgid "Max. bitrate: " +msgstr "Bitrate máximo: " + +# +msgid "Media player" +msgstr "Reprodutor de Media" + +# +#, fuzzy +msgid "Media scanner" +msgstr "Reprodutor de Media" + +# +msgid "Medium is not a writeable DVD!" +msgstr "A media não é gravável no DVD!" + +# +msgid "Medium is not empty!" +msgstr "Media está vazia!" + +msgid "Memory" +msgstr "Memoria" + +msgid "Memory index" +msgstr "Indice de memoria" + +msgid "Menu" +msgstr "" + +# +msgid "Message" +msgstr "Mensagem" + +# +msgid "Message..." +msgstr "Mensagem..." + +#, python-format +msgid "Minimum age %d years" +msgstr "" + +#, fuzzy +msgid "Minimum send interval" +msgstr "Inervalo de segurança" + +msgid "Missing " +msgstr "Em Falta" + +# +#, fuzzy +msgctxt "Satellite configuration mode" +msgid "Mode" +msgstr "Modo" + +# +#, fuzzy +msgctxt "Video output mode" +msgid "Mode" +msgstr "Modo" + +# +msgid "Model: " +msgstr "Modelo:" + +# +msgid "Modulation" +msgstr "Modulação" + +# +msgid "Modulator" +msgstr "Modelador" + +# +msgid "Mon" +msgstr "Seg" + +# +msgid "Mon-Fri" +msgstr "Seg-Sex" + +# +msgid "Monday" +msgstr "Segunda-feira" + +# +msgid "Mosquito noise reduction" +msgstr "Redução de mosquitos" + +msgid "Mount" +msgstr "Montagen" + +msgid "Move" +msgstr "Mover" + +# +#, fuzzy +msgid "Move PiP to main picture" +msgstr "mover o PiP para a imagem principal" + +# +msgid "Move Picture in Picture" +msgstr "Mover Imagem na Imagem" + +# +msgid "Move east" +msgstr "Mover Este" + +msgid "Move to other directory" +msgstr "Mover para outra pasta" + +msgid "Move to position X" +msgstr "Mover para posição X" + +# +msgid "Move west" +msgstr "Mover Oeste" + +msgid "Moved to position 0" +msgstr "Movido para posição 0" + +msgid "Moved to position at index" +msgstr "movido para a posição de indice" + +msgid "Movement" +msgstr "Movimento" + +msgid "Movie List Configuration" +msgstr "" + +msgid "Movie Selection" +msgstr "" + +#, fuzzy +msgid "Movie list configuration" +msgstr "Configuração da Lista de Gravações" + +# +msgid "Movie location" +msgstr "Localização das gravações" + +#, fuzzy +msgid "Movie selection" +msgstr "Selecção de Gravação" + +msgid "Movie/Drama" +msgstr "" + +# +msgid "Movielist menu" +msgstr "Menu da lista de filmes" + +msgid "Moving" +msgstr "A mover" + +msgid "Moving east ..." +msgstr "A mover para este ..." + +msgid "Moving to position" +msgstr "A mover para a posição" + +msgid "Moving west ..." +msgstr "A mover para oeste ..." + +# +msgid "Multi EPG" +msgstr "EPG Multi" + +msgid "Multi-EPG bouquet selection" +msgstr "Multi-EPG na selecção de favoritos" + +msgid "Multimedia" +msgstr "" + +# +msgid "Multiple service support" +msgstr "Suporte para Serviços Multiplos" + +msgid "Multiplex" +msgstr "Frequência" + +# +msgid "Multisat" +msgstr "Satelites Multiplos" + +msgid "Multisat all select" +msgstr "" + +msgid "Music/Ballet/Dance" +msgstr "" + +# +msgid "Mute" +msgstr "Sem som" + +msgid "N/A" +msgstr "" + +# +msgid "NEXT" +msgstr "Próximo" + +# +#, fuzzy +msgid "NFI image flashing" +msgstr "Flash de Imagem NFI" + +# +msgid "NFI image flashing completed. Press Yellow to Reboot!" +msgstr "Flash de Imagem NFI completo. Prima Amarelo para Reiniciar!" + +msgid "NIM" +msgstr "" + +msgid "NOW" +msgstr "" + +# +msgid "NTSC" +msgstr "NTSC" + +# +msgid "Name" +msgstr "Nome" + +# +msgid "Nameserver" +msgstr "Servidor DNS" + +# +#, python-format +msgid "Nameserver %d" +msgstr "Servidor DNS %d" + +# +msgid "Nameserver settings" +msgstr "Definições de servidor DNS" + +# +#, fuzzy +msgid "Nameserver setup" +msgstr "Configuração de servidor DNS" + +msgid "Namespace" +msgstr "Espaço do nome" + +# +msgid "Netmask" +msgstr "Máscara" + +# +msgid "Network" +msgstr "Rede" + +msgid "Network ID" +msgstr "ID de Rede" + +# +#, fuzzy +msgid "Network configuration..." +msgstr "Configuração de Rede..." + +# +#, fuzzy +msgid "Network mount" +msgstr "Montagem de Rede" + +# +#, fuzzy, python-format +msgid "Network mount %s" +msgstr "Montagem de Rede" + +#, fuzzy +msgid "Network name (SSID)" +msgstr "Nome de Rede (SSID)" + +# +msgid "Network scan" +msgstr "Busca de rede" + +# +msgid "Network setup" +msgstr "Config.de rede" + +# +msgid "Network test" +msgstr "Teste de Rede" + +# +msgid "Network test..." +msgstr "Teste de Rede..." + +msgid "Network test: " +msgstr "Teste de Rede:" + +# +#, fuzzy +msgid "Network wizard" +msgstr "Assistente de Rede" + +# +msgid "Network:" +msgstr "Rede:" + +# +msgid "New" +msgstr "Novo" + +msgid "New PIN" +msgstr "Novo PIN" + +# +msgid "New version:" +msgstr "Nova Versão:" + +msgid "News Current Affairs" +msgstr "" + +msgctxt "button label, 'next screen'" +msgid "Next" +msgstr "" + +msgctxt "now/next: 'next' event label" +msgid "Next" +msgstr "" + +# +msgid "No" +msgstr "Não" + +# +msgid "No (supported) DVDROM found!" +msgstr "Nenhum DVD (suportado) encontrado!" + +# +msgid "No Connection" +msgstr "Sem Ligação" + +# +msgid "No HDD found or HDD not initialized!" +msgstr "HDD não encontrado ou Falha ao Iniciar" + +# +msgid "No backup needed" +msgstr "Não necessita de BackUp" + +msgid "No cable tuner found!" +msgstr "Tuner de cabo não encontrado!" + +# +msgid "" +"No data on transponder!\n" +"(Timeout reading PAT)" +msgstr "" +"Nenhuns dados no transponder!\n" +"(Timeout reading PAT)" + +#, fuzzy +msgid "No delay" +msgstr "Sem Atraso" + +# +msgid "No description available." +msgstr "Descrição não disponível." + +# +msgid "No details for this image file" +msgstr "Não existem detalhes para este ficheiro de imagem" + +# +msgid "No displayable files on this medium found!" +msgstr "Não foram encontrados ficheiros reproduzíveis!" + +# +msgid "No event info found, recording indefinitely." +msgstr "Não encontrou o evento, gravar indefinidamente" + +# +msgid "No fast winding possible yet.. but you can use the number buttons to skip forward/backward!" +msgstr "Não é possivél avançar rápidamente ainda...mas pode usar as teclas de número para avançar/retroceder! " + +msgid "No free index available" +msgstr "" + +# +msgid "No free tuner!" +msgstr "Nenhum tuner livre!" + +# +msgid "No network connection available." +msgstr "Não existe nenhuma ligação de rede disponível." + +# +msgid "No networks found" +msgstr "Não foram encontradas redes" + +msgid "No new plugins found" +msgstr "" + +# +msgid "No positioner capable frontend found." +msgstr "Não encontrou posicionador." + +msgid "No satellites configured. Plese check your tuner setup." +msgstr "" + +msgid "No service" +msgstr "" + +# +#, fuzzy +msgid "No services/providers selected" +msgstr "sem Services/Providers selecionados" + +# +#, fuzzy +msgid "No standby" +msgstr "não em modo espera" + +msgid "No suitable sat tuner found!" +msgstr "" + +# +msgid "No tags are set on these movies." +msgstr "Não existem etiquetas para estas gravações." + +# +#, fuzzy +msgid "No timeout" +msgstr "no timeout" + +# +msgid "No to all" +msgstr "Não para todos" + +#, fuzzy +msgid "No transparency" +msgstr "sem transparência" + +# +msgid "No tuner is configured for use with a diseqc positioner!" +msgstr "Nenhum receptor encontrado para usar como posicionador de diseqc!" + +# +msgid "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Nenhum tuner activo!\n" +"Configure o seu tuner antes de iniciar a busca de canais." + +# +#, fuzzy +msgid "No updates available" +msgstr "actualizações desponiveis." + +msgid "No updates available. Please try again later." +msgstr "" + +# +msgid "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" +msgstr "" +"PIN invalido!\n" +"Deseja alterar o PIN do canal agora?\n" +"Se responder 'NàƒO' a protecção do canal fica desabilitada!" + +# +msgid "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" +msgstr "" +"PIN invalido!\n" +"Deseja alterar o PIN do canal agora?\n" +"Se responder 'NàƒO' a protecção do canal fica desabilitada!" + +msgid "No wireless networks found! Searching..." +msgstr "Não foram encontradas redes sem fios! Em procura..." + +# +msgid "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." +msgstr "" +"Não foi encontrado nenhum adaptador de rede.\n" +"Por favor verifique se o cabo de rede está bem ligado e se a rede está bem configurada." + +# +msgid "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." +msgstr "" +"Não foi encontrado nenhum adaptador de rede sem fios.\n" +"Por favor verifique se o adptador é compativél e se a rede está bem configurada." + +# +msgid "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." +msgstr "" +"Não foi encontrado nenhum adaptador de rede sem fios.\n" +"Por favor verifique se o adptador é compativél e se a rede está bem configurada." + +# +msgid "No, but restart from begin" +msgstr "Não, reiniciar do inicio" + +# +msgid "No, do nothing." +msgstr "Não." + +msgid "No, just start my receiver" +msgstr "" + +msgid "No, never" +msgstr "Não, nunca" + +# +msgid "None" +msgstr "Nenhum" + +# +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right) +msgid "Nonlinear" +msgstr "Não Linear" + +msgid "Normal mode" +msgstr "" + +# +msgid "North" +msgstr "Norte" + +# +msgid "Norwegian" +msgstr "Norueguês" + +#, fuzzy +msgid "Not associated" +msgstr "Não-Associado" + +msgid "Not configured" +msgstr "" + +# +#, fuzzy, python-format +msgid "Not enough disk space. Please free up some disk space and try again. (%d MB required, %d MB available)" +msgstr "Não existe espaço suficiente no disco. Por favor liberte algum espaço e tente de novo. (%d MB necessário, %d MB disponível)" + +msgid "Nothing connected" +msgstr "" + +# +msgid "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Nada para pesquisar!\n" +"Por favor configure o receptor antes de iniciar uma busca." + +msgctxt "now/next: 'now' event label" +msgid "Now" +msgstr "" + +# +#, fuzzy +msgid "Now playing" +msgstr "A Reproduzir" + +# +msgid "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." +msgstr "Agora use o ajuste do contraste para aumentar o brilho da luz de fundo, o maximo possivel, mas certifique-se de que consegue ver adiferença entre os dois niveis de brilho mais altos. Quando terminar carregue OK." + +msgid "OK" +msgstr "" + +# +msgid "OK, guide me through the upgrade process" +msgstr "OK, ajude-me no processo de update" + +msgid "ONID" +msgstr "" + +msgid "OSD name request" +msgstr "Solicitação do nome de OSD" + +# +#, fuzzy +msgid "OSD settings" +msgstr "Definições OSD" + +#, fuzzy +msgid "OSD transparency" +msgstr "sem transparência" + +# +msgid "Off" +msgstr "Desligado" + +msgid "Offline decode delay (ms)" +msgstr "Atraso da descodificação Offline (ms)" + +msgid "Ok" +msgstr "" + +# +msgid "On" +msgstr "Ligado" + +msgid "On end of movie" +msgstr "" + +msgid "On end of movie (as menu)" +msgstr "" + +# +msgid "One" +msgstr "Um" + +# +msgid "Only extensions." +msgstr "Só as extensões." + +# +#, fuzzy +msgid "Only free scan" +msgstr "Buscar só serviços livres" + +# +#, fuzzy +msgid "Open service list" +msgstr "Abrir lista de canais" + +# +#, fuzzy +msgid "Open the movie list" +msgstr "Voltar à lista de filmes" + +msgid "Orbital position" +msgstr "Posição orbital" + +msgid "Original" +msgstr "Original" + +msgid "Other" +msgstr "Outra" + +msgid "Output" +msgstr "Saída" + +msgid "Overwrite configuration files during software upgrade?" +msgstr "Substituir os ficheiros de configuração durante a actualização de software?" + +#, fuzzy +msgid "Overwrite configuration files?" +msgstr "Substituir os ficheiros de configuração ?" + +msgid "PAL" +msgstr "" + +msgid "PCR PID" +msgstr "" + +msgid "PIDs" +msgstr "" + +# +#, fuzzy +msgid "PIN code needed" +msgstr "Necessita do PIN" + +msgid "PLP ID" +msgstr "" + +msgid "PMT PID" +msgstr "" + +# +msgid "Package list update" +msgstr "Lista de pacotes actualizada" + +# +msgid "Packet management" +msgstr "Gestor dos Pacotes" + +# +msgid "Packet manager" +msgstr "Gestor de Pacotes" + +# +#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term +#, fuzzy +msgid "Pan&scan" +msgstr "Pan&Scan" + +# +#, fuzzy +msgid "Parent directory" +msgstr "Pasta Superior" + +# +msgid "Parental control" +msgstr "Controle Paternal" + +# +#, fuzzy +msgid "Parental control services editor" +msgstr "Editor de Canais Controle Paternal" + +# +msgid "Parental control setup" +msgstr "Editor do Controle Paternal" + +# +msgid "Parental control type" +msgstr "Tipo de Controle Paternal" + +# +msgid "Password" +msgstr "Palavra-Passe" + +# +#, fuzzy +msgid "Pause" +msgstr "pausa" + +# +msgid "Pause movie at end" +msgstr "Pausar o filme quando terminar" + +# +#, fuzzy +msgid "Pause playback" +msgstr "A retomar... " + +msgid "Pauze/Continue playback" +msgstr "" + +msgid "Percentage left" +msgstr "" + +# +#, fuzzy +msgid "Percentage right" +msgstr "Circular direita" + +msgid "Permanently delete all recordings in the trash can?" +msgstr "Apagar definitivamente todas as gravações na reciclagem?" + +msgid "Permanently remove all deleted items" +msgstr "Apagar definitivamente todos os itens apagados" + +msgid "Persian" +msgstr "Persa" + +# +msgid "Phone number" +msgstr "Número de telefone" + +# +#, fuzzy +msgid "PiP setup" +msgstr "Configurar PiP" + +msgid "Picon" +msgstr "" + +msgid "Picon and service name" +msgstr "" + +# +#, fuzzy +msgid "Picture player" +msgstr "Visualizador de Imagens" + +# +#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term. +msgid "Pillarbox" +msgstr "Pillarbox" + +# +msgid "Pilot" +msgstr "Piloto" + +# +msgid "Play" +msgstr "Play" + +# +msgid "Play DVD" +msgstr "Reproduzir DVD" + +msgid "Play audio in background" +msgstr "Reproduzir audio em segundo plano" + +# +#, fuzzy +msgid "Play audio-CD..." +msgstr "Reproduzir CD-Audio..." + +msgid "Play back media files" +msgstr "" + +# +#, fuzzy +msgid "Play entry" +msgstr "iniciar" + +# +#, fuzzy +msgid "Play from next mark or playlist entry" +msgstr "Iniciar na proxima MARCA ou entrada na lista " + +# +#, fuzzy +msgid "Play from previous mark or playlist entry" +msgstr "Iniciar na ultima MARCA ou entrada na lista " + +# +#, fuzzy +msgid "Play music..." +msgstr "Reproduzir Musica..." + +msgid "Play next" +msgstr "Reproduzir seguinte" + +msgid "Play next (return to movie list)" +msgstr "" + +msgid "Play next (return to previous service)" +msgstr "" + +msgid "Play previous" +msgstr "Reproduzir anterior" + +# +msgid "Play recorded movies..." +msgstr "Reproduzir filmes gravados..." + +# +msgid "Please add titles to the compilation." +msgstr "Por favor adicione títulos à compilação" + +# +msgid "Please change recording endtime" +msgstr "Altere o tempo final da gravação" + +# +msgid "Please check your network settings!" +msgstr "Por favor verifique as suas definições de rede!" + +# +msgid "Please choose an extension..." +msgstr "Por favor escolha uma extensão" + +# +msgid "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Por favor configure ou veriique o servidor DNS preenchedo os valores requeridos.\n" +"Quando estiver pronto prima OK." + +# +msgid "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Por favor configure a ligação de internet preenchendo os valores necessários.\n" +"Quando estiver preparado prima OK para continuar." + +msgid "Please connect your receiver to the internet" +msgstr "" + +# +msgid "Please do not change any values unless you know what you are doing!" +msgstr "Por favor não altere os valores se não tem a certeza do que vai fazer!" + +# +msgid "Please enter a name for the new bouquet" +msgstr "Escreva o nome do novo Bouquet" + +# +msgid "Please enter a name for the new marker" +msgstr "Escreva o nome da nova marca" + +# +msgid "Please enter a new filename" +msgstr "Introduza um nome novo para o ficheiro" + +# +msgid "Please enter filename (empty = use current date)" +msgstr "Introduza o nome do ficheiro (vazio = usra data actual)" + +# +msgid "Please enter name of the new directory" +msgstr "Por favor introduza o nome da nova pasta" + +msgid "Please enter new name:" +msgstr "" + +# +msgid "Please enter the correct pin code" +msgstr "Escreva o PIN correcto" + +msgid "Please enter the old PIN code" +msgstr "Por favor intoduza o codigo PIN antigo" + +# +msgid "Please follow the instructions on the TV" +msgstr "Siga as instruções na TV" + +# +msgid "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." +msgstr "Por favor note que a media anteriormente selecionada não pôde ser assedida e por isso a pasta padrão está a ser usada." + +# +msgid "Please press OK to continue." +msgstr "Por favor prima OK para continuar." + +msgid "Please select a default EPG type..." +msgstr "" + +# +msgid "Please select a playlist to delete..." +msgstr "Seleccione uma lista para apagar..." + +# +msgid "Please select a playlist..." +msgstr "seleciona uma lista" + +# +#, fuzzy +msgid "Please select a sub service..." +msgstr "Selecione um subserviço..." + +# +msgid "Please select a subservice to record..." +msgstr "Selecione um subserviço para gravar..." + +# +msgid "Please select a subservice..." +msgstr "Selecione um subserviço..." + +msgid "Please select an NFI file and press green key to flash!" +msgstr "Por favor escolha um ficheiro .NFI e prima verde para iniciar o flash!" + +# +#, fuzzy +msgid "Please select medium to be scanned" +msgstr "Selecione o dispositivo a procurar" + +# +msgid "Please select medium to use as backup location" +msgstr "Por favor selecione uma localização para backup" + +# +msgid "Please select tag to filter..." +msgstr "Por favor teste o filtro de etiquetas..." + +# +msgid "Please select the movie path..." +msgstr "Por favor seleccione a pasta da gravação..." + +# +msgid "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Por favor selecione um interface de rede para usar como ligação de internet.\n" +"\n" +"Prima OK para continuar" + +# +msgid "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Por favor escolha a Rede sem fios ao qual se quer ligar.\n" +"\n" +"Por favor prima OK para continuar." + +# +#, fuzzy +msgid "Please set up tuner A" +msgstr "Por favor selecione o tuner B" + +# +msgid "Please set up tuner B" +msgstr "Por favor selecione o tuner B" + +# +msgid "Please set up tuner C" +msgstr "Configure tuner C" + +# +msgid "Please set up tuner D" +msgstr "Configure tuner D" + +# +msgid "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." +msgstr "" +"Por favor use as teclas direcionais para mover a janela PiP.\n" +"Carregue em Bouquet +/- para redimensionara janela.\n" +"OK para voltar ao Modo TV ou EXIT para cancelar." + +# +msgid "Please use the UP and DOWN keys to select your language. Afterwards press the OK button." +msgstr "Por favor use as teclas de Cima e Baixi para selecionar a sua língua. Depois prima OK." + +msgid "Please wait" +msgstr "" + +# +#, fuzzy +msgid "Please wait (downloading channel list)" +msgstr "Por favor espere...a carregar a lista..." + +# +#, fuzzy +msgid "Please wait (downloading softcam)" +msgstr "Por favor espere...a carregar a lista..." + +# +#, fuzzy +msgid "Please wait (updating packages)" +msgstr "Por favor espere, a carregar a imagem" + +# +msgid "Please wait for activation of your network configuration..." +msgstr "Por favor aguarde pela activação das configurações de rede..." + +# +msgid "Please wait while scanning is in progress..." +msgstr "Por favor aguarde enquato a busca está em progresso..." + +# +msgid "Please wait while we configure your network..." +msgstr "Por favor aguarde enquanto a rede é configurada..." + +# +msgid "Please wait while we prepare your network interfaces..." +msgstr "Por favor aguarde enquanto os interfaces de rede se preparam..." + +# +msgid "Please wait while we test your network..." +msgstr "Por favor aguarde enquanto a rede é testada..." + +# +msgid "Please wait while your network is restarting..." +msgstr "Por favor aguarde enquanto a rede reinicia..." + +# +msgid "Please wait..." +msgstr "Por favor aguarde..." + +# +msgid "Please wait... Loading list..." +msgstr "Por favor espere...a carregar a lista..." + +# +msgid "Plugin browser" +msgstr "Plugins Instalados" + +# +msgid "Plugin manager activity information" +msgstr "Informação de actividade do Gestor de Plugins" + +# +msgid "Plugin manager help" +msgstr "Ajuda do gestor de plugins" + +# +msgid "Plugins" +msgstr "Plugins" + +msgid "Polarisation" +msgstr "Polarização" + +msgid "Polarisation:" +msgstr "" + +# +msgid "Polarization" +msgstr "Polarização" + +# +msgid "Polish" +msgstr "Polaco" + +# +msgid "Port A" +msgstr "Porta A" + +# +msgid "Port B" +msgstr "Porta B" + +# +msgid "Port C" +msgstr "Porta C" + +# +msgid "Port D" +msgstr "Porta D" + +# +msgid "Portuguese" +msgstr "Português" + +#, fuzzy +msgid "Position of completed timers in timerlist" +msgstr "Posição das gravações terminadas na agenda de gravações" + +msgid "Position stored at index" +msgstr "Posição guardada no indice" + +# +msgid "Positioner" +msgstr "Posicionador" + +msgid "Positioner (selecting satellites)" +msgstr "" + +msgid "Positioner Setup" +msgstr "" + +# +msgid "Positioner setup" +msgstr "Definições do Posicionador" + +# +msgid "Power threshold in mA" +msgstr "Power em mA" + +# +msgid "Predefined transponder" +msgstr "Transponder pré-definido" + +#, fuzzy +msgid "Prefer AC3 track" +msgstr "Preferir AC3" + +msgid "Prefer AC3+ track" +msgstr "" + +#, fuzzy +msgid "Prefer audio track stored by service" +msgstr "Preferir audio do canal" + +#, fuzzy +msgid "Prefer graphical DVB subtitles" +msgstr "Preferir legendas DVB" + +#, fuzzy +msgid "Prefer subtitles for hearing impaired" +msgstr "Preferir audiodescrição a legendas" + +#, fuzzy +msgid "Prefer subtitles stored by service" +msgstr "Preferir legendas do canal" + +msgid "Preferred tuner" +msgstr "Tuner preferido" + +msgid "Preferred tuner for recordings" +msgstr "" + +msgid "Prepare another USB stick for image flashing" +msgstr "Prepare outra PEN Drive parao flash de imagem" + +# +msgid "Preparing... Please wait" +msgstr "Em preparação… Por favor espere " + +msgid "Press '0' to toggle PiP mode" +msgstr "" + +msgid "Press INFO on your remote control for additional information." +msgstr "Prima Info no comando remoto para informações adicionais." + +msgid "Press MENU on your remote control for additional options." +msgstr "Prima Menu no comando remoto para opções adicionais." + +# +msgid "Press OK on your remote control to continue." +msgstr "Prima OK para continuar." + +# +msgid "Press OK to activate the selected skin." +msgstr "Prima OK para activar o tema selecionado." + +# +msgid "Press OK to activate the settings." +msgstr "Carregue Ok para Activar" + +# +msgid "Press OK to edit the settings." +msgstr "Prima OK para editar as opções." + +# +#, python-format +msgid "Press OK to get further details for %s" +msgstr "Prima OK para receber detalhes de %s" + +# +msgid "Press OK to scan" +msgstr "Carregue Ok para Busca" + +# +#, fuzzy +msgid "Press OK to select a provider." +msgstr "Prima OK para selecionar um Operador." + +msgid "Press OK to select satellites" +msgstr "" + +# +msgid "Press OK to select/deselect a CAId." +msgstr "Prima OK para (de)selecional a CAId." + +# +msgid "Press OK to start the scan" +msgstr "Carregue Ok para Iniciar Busca" + +msgid "Press OK to toggle the selection" +msgstr "" + +# +msgid "Press OK to toggle the selection." +msgstr "Prima OK para mudar de selecção." + +# +msgid "Press yellow to set this interface as default interface." +msgstr "Prima amarelo para definir este interface como padrão." + +msgctxt "button label, 'previous screen'" +msgid "Prev" +msgstr "" + +# +msgid "Preview" +msgstr "Previsualizar" + +# +msgid "Preview menu" +msgstr "Menu de previsualização" + +msgid "Preview selected channel" +msgstr "" + +# +msgid "Primary DNS" +msgstr "DNS Primário" + +# +msgid "Priority" +msgstr "Prioridade" + +# +msgid "Process" +msgstr "Processo" + +msgid "Progress" +msgstr "Progresso" + +#, fuzzy +msgid "Progress bar left" +msgstr "Progresso Pequeno" + +#, fuzzy +msgid "Progress bar right" +msgstr "Progresso Pequeno" + +# +msgid "Properties of current title" +msgstr "Propriedades do título actual" + +# +msgid "Protect services" +msgstr "Proteger Serviços" + +# +msgid "Protect setup" +msgstr "Definições de Protecção" + +# +msgid "Provider" +msgstr "Operador" + +# +msgid "Provider to scan" +msgstr "Operador a procurar" + +# +msgid "Providers" +msgstr "Operadores" + +msgid "Put TV in standby" +msgstr "Colocar TV em standby" + +msgid "Put receiver in standby" +msgstr "Colocar receptor em standby" + +# +msgid "Python frontend for /tmp/mmi.socket" +msgstr "Interface Python para /tmp/mmi.socket" + +# +msgid "Quick" +msgstr "Rápido" + +# +#, fuzzy +msgid "Quick zap" +msgstr "Zap Rápido" + +# +msgid "RF output" +msgstr "Saida RF" + +# +msgid "RGB" +msgstr "RGB" + +# +msgid "Radio" +msgstr "Radio" + +# +#, fuzzy +msgid "Ram disk" +msgstr "Disco Ram" + +# +msgid "Random" +msgstr "Aleatória" + +#, python-format +msgid "Rating defined by broadcaster - %d" +msgstr "" + +msgid "Rating undefined" +msgstr "" + +# +msgid "Really close without saving settings?" +msgstr "Deseja Sair sem Gravar?" + +# +msgid "Really delete done timers?" +msgstr "Deseja apagar as gravações já realizadas?" + +# +msgid "Really exit the subservices quickzap?" +msgstr "Deseja realmente sair?" + +# +msgid "Really reboot now?" +msgstr "Reiniciar agora?" + +# +msgid "Really restart now?" +msgstr "Reiniciar agora?" + +# +msgid "Really shutdown now?" +msgstr "Desligar agora?" + +msgid "Really upgrade the frontprocessor and reboot now?" +msgstr "Actualizar o frontprocessor e reiniciar agora?" + +msgid "Really upgrade your settop box and reboot now?" +msgstr "Actualizar o receptor e reiniciar agora?" + +# +msgid "Reboot" +msgstr "Reiniciar" + +msgid "Rec" +msgstr "Rec" + +# +#, fuzzy +msgid "Reception settings" +msgstr "Definições de recepção" + +# +msgid "Record" +msgstr "Gravar" + +# +#, python-format +msgid "Record time limited due to conflicting timer %s" +msgstr "Tempo de gravação limitado devido a conflito %s" + +# +msgid "Recorded files..." +msgstr "Gravações..." + +# +msgid "Recording" +msgstr "A gravar" + +msgid "Recording in progress" +msgstr "Gravação em progresso" + +# +msgid "Recording paths" +msgstr "Pasta de Gravações" + +msgid "Recording type" +msgstr "Tipo de gravação" + +# +msgid "Recording(s) are in progress or coming up in few seconds!" +msgstr "Gravações em progresso ou a iniciarem brevemente!" + +# +msgid "Recordings" +msgstr "Gravações" + +# +msgid "Recordings always have priority" +msgstr "Gravações têm sempre prioridade" + +msgid "Red button..." +msgstr "Botão vermelho..." + +msgid "Reenter new PIN" +msgstr "Repetir novo PIN" + +# +#, fuzzy +msgid "Refresh rate" +msgstr "Refresh Rate" + +# +msgid "Refresh rate selection." +msgstr "Selecção do refresh rate" + +msgid "Regard deep standby as standby" +msgstr "Considerar suspensão como standby" + +#, fuzzy +msgid "Relative" +msgstr "relativo" + +# +msgid "Reload" +msgstr "Recarregar" + +# +#, fuzzy +msgid "Reload black-/white lists" +msgstr "Recarregar Listas Pretas-/Brancas" + +msgid "Reloading bouquets and services..." +msgstr "A recarregar a lista de canais..." + +msgid "Remember last service in PiP" +msgstr "" + +msgid "Remember service PIN" +msgstr "Lembrar do PIN do serviço" + +msgid "Remember these settings for each folder" +msgstr "Memorizar estas configurações para cada pasta" + +msgid "Reminder, you have chosen to save timeshift file." +msgstr "" + +# +#, fuzzy +msgid "Remote control type" +msgstr "Tipo de Controle Paternal" + +# +#, fuzzy +msgid "Removal has completed." +msgstr "Remoção falhou." + +# +msgid "Remove" +msgstr "Remover" + +# +msgid "Remove a mark" +msgstr "Remover Marca" + +# +#, fuzzy +msgid "Remove a nameserver entry" +msgstr "apagar servidor de DNS" + +# +#, fuzzy +msgid "Remove bookmark" +msgstr "apagar marcador" + +#, fuzzy +msgid "Remove completed timers after (days)" +msgstr "Apagar gravações da reciclagem após (dias)" + +# +msgid "Remove currently selected title" +msgstr "Remover o título actualmente selecionado " + +#, fuzzy +msgid "Remove items from trash can after (days)" +msgstr "Apagar gravações da reciclagem após (dias)" + +# +msgid "Remove plugins" +msgstr "Remover plugins" + +# +msgid "Remove title" +msgstr "Remover o título" + +# +msgid "Removing" +msgstr "A remover" + +# +#, python-format +msgid "Removing directory %s failed. (Maybe not empty.)" +msgstr "A Remoção da pasta %s falhou.(Talvez não esteja vazia.)" + +#, fuzzy +msgid "Removing partition table" +msgstr "Ler novamente a tabela de partições" + +# +msgid "Rename" +msgstr "Renomear" + +msgid "Repeat" +msgstr "" + +# +#, fuzzy +msgid "Repeat type" +msgstr "Tempo de repetição" + +# +msgid "Repeating event currently recording... What do you want to do?" +msgstr "A repetir o programa que está a gravar actualmente… Continuar? " + +# +msgid "Repeats" +msgstr "Repetições" + +msgid "Require authentication for http streams" +msgstr "" + +# +msgid "Required medium type:" +msgstr "Formato de media requerido:" + +#, fuzzy +msgid "Rereading partition table" +msgstr "Ler novamente a tabela de partições" + +msgid "Reserved" +msgstr "" + +# +msgid "Reset" +msgstr "Reset" + +# +msgid "Reset and renumerate title names" +msgstr "Reiniciar e renumerar os títulos" + +msgid "Reset playback position" +msgstr "Reiniciar a posição da reprodução" + +# +msgid "Reset video enhancement settings to system defaults?" +msgstr "Reiniciar a opções de imagem para as padrão de sistema?" + +# +msgid "Reset video enhancement settings to your last configuration?" +msgstr "Reiniciar a opções de imagem para as suas ultimas configurações?" + +# +msgid "Resolution" +msgstr "Resolução" + +# +msgid "Restart" +msgstr "Reiniciar" + +# +msgid "Restart GUI now?" +msgstr "Reiniciar GUI?" + +msgid "Restart enigma" +msgstr "Reiniciar o enigma" + +# +msgid "Restart network" +msgstr "Reiniciar a rede" + +# +msgid "Restart test" +msgstr "Teste de Reinicio" + +# +msgid "Restart your network connection and interfaces.\n" +msgstr "Reiniciar a ligação de rede e interfaces.\n" + +# +msgid "Restore" +msgstr "Restaurar" + +# +msgid "Restore backups" +msgstr "Restauro de backups" + +# +msgid "Restore is running..." +msgstr "Restauro em progresso..." + +# +msgid "Restore system settings" +msgstr "Restaurar configurações do sistema" + +# +#, fuzzy +msgid "Restoring..." +msgstr "a gravar..." + +# +msgid "Resume from last position" +msgstr "Iniciar a partir da ultima posição" + +# +#, python-format +msgid "Resume position at %s" +msgstr "Posição de resume em %s" + +# +#. TRANSLATORS: The string "Resuming playback" flashes for a moment +#. TRANSLATORS: at the start of a movie, when the user has selected +#. TRANSLATORS: "Resume from last position" as start behavior. +#. TRANSLATORS: The purpose is to notify the user that the movie starts +#. TRANSLATORS: in the middle somewhere and not from the beginning. +#. TRANSLATORS: (Some translators seem to have interpreted it as a +#. TRANSLATORS: question or a choice, but it is a statement.) +msgid "Resuming playback" +msgstr "A retomar... " + +# +msgid "Return to movie list" +msgstr "Voltar à lista de filmes" + +# +msgid "Return to previous service" +msgstr "Voltar ao canal anterior" + +msgid "Reverse bouquet buttons" +msgstr "" + +msgid "Reverse list" +msgstr "" + +# +msgid "Rewind speeds" +msgstr "Velocidade de retrocesso" + +msgid "Rewrap teletext subtitles" +msgstr "Repartir legendas de teletexto" + +# +msgid "Right" +msgstr "Direita" + +msgid "Right from servicename" +msgstr "" + +msgid "Roll-off" +msgstr "" + +msgid "Romanian" +msgstr "Roméno" + +msgid "Root directory" +msgstr "Pasta raíz" + +msgid "Rotor step position:" +msgstr "Posição de passo do motor:" + +# +msgid "Rotor turning speed" +msgstr "velocidade do motor" + +msgid "Round start time on" +msgstr "Arredondar o tempo de inicio em" + +# +msgid "Russian" +msgstr "Russo" + +# +msgid "S-Video" +msgstr "S-Video" + +msgid "SID" +msgstr "SID" + +# +msgid "SINGLE LAYER DVD" +msgstr "SINGLE LAYER DVD" + +# +msgid "SNR" +msgstr "SNR" + +# +msgid "SNR:" +msgstr "SNR:" + +# +msgid "SSID:" +msgstr "SSID:" + +msgid "Same resolution as skin" +msgstr "" + +# +msgid "Sat" +msgstr "Sab" + +# +msgid "Satellite" +msgstr "Satelite" + +# +#, fuzzy +msgid "Satellite dish setup" +msgstr "Definições do Equipamento de Satelite" + +# +msgid "Satellite equipment" +msgstr "Equipamento satélite" + +# +#, fuzzy +msgid "Satellite equipment setup" +msgstr "Definições do Equipamento de Satelite" + +msgid "Satellite longitude:" +msgstr "Longitude do satélite:" + +# +msgid "Satellites" +msgstr "Satelites" + +# +msgid "Satfinder" +msgstr "Busca Satelites" + +# +msgid "Sats" +msgstr "Sats" + +# +msgid "Saturation" +msgstr "Saturação" + +# +msgid "Saturday" +msgstr "Sábado" + +# +msgid "Save" +msgstr "Guardar" + +# +#, fuzzy +msgid "Save playlist" +msgstr "guardar lista" + +msgid "Save timeshift file" +msgstr "" + +msgid "Save timeshift file in movie directory" +msgstr "" + +# +msgid "Scaler sharpness" +msgstr "Nitidez" + +# +#, fuzzy +msgid "Scaling mode" +msgstr "Mode de Escala" + +msgid "Scan" +msgstr "" + +# +msgid "Scan " +msgstr "Busca" + +# +#. TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' +#, fuzzy, python-format +msgid "Scan %s" +msgstr "Busca" + +# +#. TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' +#, fuzzy, python-format +msgid "Scan %s band" +msgstr "Scan band EU MID" + +# +msgid "Scan additional SR" +msgstr "Scan additional SR" + +# +#, fuzzy +msgid "Scan files..." +msgstr "Buscar Ficheiros..." + +# +#, fuzzy +msgid "Scan wireless networks" +msgstr "Procurar Redes sem fios" + +msgid "Scan your network for wireless access points and connect to them using your selected wireless device.\n" +msgstr "Procurar pontos de acesso sem fios e ligar o dispositivo wireless a eles.\n" + +#, python-format +msgid "Scanning %s..." +msgstr "Em Pesquisa %s..." + +#. TRANSLATORS: The stb is performing a channel scan, progress percentage is printed in '%d' (and '%%' will show a single '%' symbol) +#, fuzzy, python-format +msgid "Scanning - %d%% completed" +msgid_plural "Scanning - %d%% completed" +msgstr[0] "Pesquisa completa, %d canais encontrados" +msgstr[1] "Pesquisa completa, %d canais encontrados" + +#, fuzzy, python-format +msgid "Scanning completed, %d channel found" +msgid_plural "Scanning completed, %d channels found" +msgstr[0] "Pesquisa completa, %d canais encontrados" +msgstr[1] "Pesquisa completa, %d canais encontrados" + +msgid "Scanning failed!" +msgstr "Pesquisa falhou!" + +msgid "Scanning..." +msgstr "Em Pesquisa..." + +# +msgid "Scans default lamedbs sorted by satellite with a connected dish positioner" +msgstr "Busca lamedbs padrões ordenados por satélites com posicionador" + +# +msgid "Search east" +msgstr "Procura Este" + +# +msgid "Search west" +msgstr "Procura Oeste" + +msgid "Searching" +msgstr "A procurar" + +msgid "Searching east ..." +msgstr "A procurar a este ..." + +# +msgid "Searching for available updates. Please wait..." +msgstr "À procura de actualizações disponíveis. Por favor aguarde..." + +# +msgid "Searching for new installed or removed packages. Please wait..." +msgstr "Em pesquisa de novos pacotes instalados ou removidos. Por favor aguarde..." + +msgid "Searching west ..." +msgstr "A procurar a oeste ..." + +msgid "Second cable of motorized LNB" +msgstr "" + +# +msgid "Secondary DNS" +msgstr "DNS secundário" + +# +msgid "Seek" +msgstr "Busca" + +# +#, fuzzy +msgid "Seek backward" +msgstr "Retroceder" + +# +#, fuzzy +msgid "Seek backward (enter time)" +msgstr "retroceder (inserir tempo)" + +# +#, fuzzy +msgid "Seek forward" +msgstr "Avançar" + +# +#, fuzzy +msgid "Seek forward (enter time)" +msgstr "avançar (inserir tempo)" + +# +msgid "Select" +msgstr "Selecionar" + +# +#, fuzzy +msgid "Select CAId" +msgstr "selecionar CAId" + +# +msgid "Select HDD" +msgstr "Seleccione o Disco" + +# +#, fuzzy +msgid "Select a bouquet" +msgstr "Selecione um filme" + +# +msgid "Select a movie" +msgstr "Selecione um filme" + +# +#, fuzzy +msgid "Select a network adapter" +msgstr "Selecione adaptador de rede" + +# +#, fuzzy +msgid "Select a skin" +msgstr "Selecione um filme" + +# +#, fuzzy +msgid "Select a tuner" +msgstr "Selecione um filme" + +# +#, fuzzy +msgid "Select a wireless network" +msgstr "Selecionar Rede sem fios" + +msgid "Select action" +msgstr "" + +#, python-format +msgid "Select action for timer %s:" +msgstr "" + +msgid "Select all" +msgstr "" + +#, fuzzy +msgid "Select an image to be downloaded" +msgstr "Escolha uma imagem para download" + +# +msgid "Select audio track" +msgstr "Selecção de audio" + +# +#, fuzzy +msgid "Select backup files" +msgstr "Escolha ficheiros de backup" + +# +#, fuzzy +msgid "Select backup location" +msgstr "Escolha um destino para backup" + +# +msgid "Select channel to record from" +msgstr "Selecione o canal que deseja gravar" + +msgid "Select copy destination for:" +msgstr "Selecione o destino para copiar:" + +msgid "Select default EPG type..." +msgstr "" + +msgid "Select desired image from feed list" +msgstr "Selecione a imagem desejada da lista" + +msgid "Select destination for:" +msgstr "Selecione um destino para:" + +msgid "Select files for backup." +msgstr "Selecione ficheiros para backup." + +# +msgid "Select files/folders to backup" +msgstr "Selecione ficheiros/pastas para backup" + +msgid "Select input device" +msgstr "Selecionar dispositivo de entrada" + +msgid "Select input device." +msgstr "Selecionar dispositivo de entrada." + +# +msgid "Select interface" +msgstr "Selecionar interface" + +# +#, fuzzy +msgid "Select location" +msgstr "Seleccione Localização" + +# +#, fuzzy +msgid "Select movie" +msgstr "Selecione um filme" + +# +msgid "Select provider to add..." +msgstr "Selecionar operador para adicionar..." + +# +msgid "Select refresh rate" +msgstr "Seleccione o Refresh Rate" + +msgid "Select satellites" +msgstr "" + +# +msgid "Select service to add..." +msgstr "Selecionar serviço para adicionar..." + +msgid "Select sort method:" +msgstr "" + +# +#, fuzzy +msgid "Select target folder" +msgstr "Seleccione " + +# +#, fuzzy +msgid "Select the movie path" +msgstr "seleccione a pasta de gracações" + +# +#, fuzzy +msgid "Select upgrade source" +msgstr "Selecionar fonte de actualizações para editar." + +# +msgid "Select upgrade source to edit." +msgstr "Selecionar fonte de actualizações para editar." + +# +msgid "Select video input with up/down buttons" +msgstr "Selecionar entrada de video com os botões de cima/baixo" + +# +msgid "Select video mode" +msgstr "Seleccione modo de Video" + +# +msgid "Select wireless network" +msgstr "Selecionar Rede sem fios" + +msgid "Select your provider, and press OK to start the scan" +msgstr "Selecione o seu operador, e primaOK para iniciar a busca" + +msgid "Selecting satellites 1 (USALS)" +msgstr "" + +msgid "Selecting satellites 2 (USALS)" +msgstr "" + +# +msgid "Send DiSEqC only on satellite change" +msgstr "Só enviar comando DISEqC ao mudar de satélite" + +# +msgid "Separate titles with a main menu" +msgstr "Separar títulos com um menu principal" + +# +msgid "Sequence repeat" +msgstr "Repita a Sequência" + +# +msgid "Serbian" +msgstr "Sérvio" + +# +msgid "Service" +msgstr "Canal" + +# +msgid "Service has been added to the favourites." +msgstr "Adicionado aos Favoritos" + +# +msgid "Service has been added to the selected bouquet." +msgstr "Adicionado ao Bouquet selecionado" + +# +#, fuzzy +msgid "Service info" +msgstr "Info " + +# +msgid "" +"Service invalid!\n" +"(Timeout reading PMT)" +msgstr "" +"Canal invalido!\n" +"(Timeout reading PMT)" + +#, fuzzy +msgid "Service name" +msgstr "Dispositivo:" + +# +msgid "" +"Service not found!\n" +"(SID not found in PAT)" +msgstr "" +"Canal não encontrado!\n" +"(SID not found in PAT)" + +msgid "Service reference" +msgstr "Referência" + +# +msgid "Service scan" +msgstr "Busca de Canais" + +# +#, fuzzy +msgid "Service searching" +msgstr "Procura de Canais" + +# +#, fuzzy +msgid "Service title mode" +msgstr "Seleccione modo de Video" + +# +msgid "" +"Service unavailable!\n" +"Check tuner configuration!" +msgstr "" +"Serviço indisponivel!\n" +"Verifique o Tuner!" + +# +msgid "Services" +msgstr "Serviços" + +msgid "Set default" +msgstr "" + +# +#, fuzzy +msgid "Set end time" +msgstr "Definir tempo final" + +msgid "Set fixed" +msgstr "Definir fixo" + +msgid "Set fps for external subtitles" +msgstr "" + +# +msgid "Set interface as default Interface" +msgstr "Definir interface como padrão" + +#, fuzzy +msgid "Set limits" +msgstr "Definir limites" + +# +#, fuzzy +msgid "Set the type of the progress indication in the channel selection screen." +msgstr "Mostrar progresso dos eventos na lista de canais" + +msgid "Set time window to 1 hour" +msgstr "Definir janela de tempo para 1 hora" + +msgid "Set time window to 2 hours" +msgstr "Definir janela de tempo para 2 hora" + +msgid "Set time window to 3 hours" +msgstr "Definir janela de tempo para 3 hora" + +msgid "Set time window to 4 hours" +msgstr "Definir janela de tempo para 4 hora" + +msgid "Set time window to 5 hours" +msgstr "Definir janela de tempo para 5 hora" + +msgid "Set time window to 6 hours" +msgstr "" + +# +#, fuzzy +msgid "Set voltage and 22KHz" +msgstr "Defenir Tensão e 22KHz" + +# +msgid "Settings" +msgstr "Definições" + +# +msgid "Setup" +msgstr "Definições" + +msgid "Setup menu" +msgstr "Menu de Definições" + +# +#, fuzzy +msgid "Setup mode" +msgstr "Modo configuração" + +msgid "Setup your positioner" +msgstr "Programe o seu posicionador" + +# +#, fuzzy +msgid "Setup your satellite equipment" +msgstr "Equipamento satélite" + +# +#, python-format +msgid "Shall the USB stick wizard proceed and program the image file %s into flash memory?" +msgstr "Decerá o Assistente de PEN Drive proceder e programar o ficheiro de imagem %s na memoria flash?" + +# +msgid "Sharpness" +msgstr "Nitidez" + +msgid "Short filenames" +msgstr "Nomes curtos de ficheiros" + +msgid "Show EIT now/next in infobar" +msgstr "Mostrar EIT agora/próximo na infobar" + +# +#, fuzzy +msgid "Show EPG for current channel..." +msgstr "Mostrar infobar ao mudar de canal" + +# +#, fuzzy +msgid "Show EPG..." +msgstr "Mostar EPG..." + +msgid "Show Games show" +msgstr "" + +msgid "Show SNR percentage instead of dB value" +msgstr "" + +msgid "Show VCR scart on main menu" +msgstr "" + +# +#, fuzzy +msgid "Show WLAN status" +msgstr "Mostrar o estado da Rede sem fios" + +msgid "Show animation while busy" +msgstr "Mostrar animação enquanto ocupado" + +#, fuzzy +msgid "Show background in radio mode" +msgstr "Mostrar fundo no Modo de Radio" + +msgid "Show bouquet selection menu" +msgstr "Mostrar o menu de selecção de favoritos" + +msgid "Show busy indicator when the system is busy." +msgstr "" + +msgid "Show channel numbers in channel selection" +msgstr "Mostrar a numeração dos canais na lista de canais" + +msgid "Show columns" +msgstr "" + +msgid "Show crypto icons" +msgstr "" + +msgid "Show crypto info in infobar" +msgstr "Mostrar a encriptação na infobar" + +msgid "Show detailed event info" +msgstr "Mostrar informação detalhada dos enventos" + +# +#, fuzzy +msgid "Show event details" +msgstr "Mostrar detalhes do programa" + +# +msgid "Show event-progress in channel selection" +msgstr "Mostrar progresso dos eventos na lista de canais" + +# +#, fuzzy +msgid "Show extended description" +msgstr "Mostrar descrição extensa" + +# +#, fuzzy +msgid "Show extensions..." +msgstr "ver extensões" + +msgid "Show icon for new/unseen items" +msgstr "Mostrar ícone para grvações novas/sem visualizações" + +msgid "Show in extensions menu" +msgstr "" + +# +#, fuzzy +msgid "Show info" +msgstr "Mostrar Info" + +# +#, fuzzy +msgid "Show info line" +msgstr "mostrar Infoline" + +# +msgid "Show infobar on channel change" +msgstr "Mostrar Info ao mudar de canal normal" + +# +msgid "Show infobar on event change" +msgstr "Mostrar infobar ao mudar de canal" + +# +msgid "Show infobar on skip forward/backward" +msgstr "Mostrar Info ao mudar de canal rapido < >" + +msgid "Show latest commits on sourceforge" +msgstr "" + +# +#, fuzzy +msgid "Show message when recording starts" +msgstr "Mostrar uma mensagem quando uma gravação iniciar" + +#, fuzzy +msgid "Show movie lengths in movielist" +msgstr "Mostrar ícones de estado na lista de gravações " + +msgid "Show multi channel EPG" +msgstr "" + +msgid "Show picons in channel list" +msgstr "" + +# +msgid "Show positioner movement" +msgstr "Mostrar movimento do posicionador" + +msgid "Show screensaver" +msgstr "" + +msgid "Show second infobar" +msgstr "Mostrar segunda infobar" + +msgid "Show service type icons" +msgstr "" + +# +msgid "Show services beginning with" +msgstr "Mostrar canais que comecem por..." + +# +#, fuzzy +msgid "Show shutdown menu" +msgstr "Mostrar menu desligar" + +msgid "Show single service EPG" +msgstr "" + +msgid "Show status icons in Movielist" +msgstr "" + +#, fuzzy +msgid "Show status icons in movie list" +msgstr "Mostrar ícones de estado na lista de gravações " + +#, fuzzy +msgid "Show status icons in movielist" +msgstr "Mostrar ícones de estado na lista de gravações " + +# +#, fuzzy +msgid "Show tag menu" +msgstr "mostrar menu de marcas" + +# +msgid "Show the radio player..." +msgstr "Mostrar o Radio" + +# +msgid "Show the tv player..." +msgstr "Mostrar TV" + +msgid "Show warning when timeshift is stopped" +msgstr "" + +# +msgid "Shows the state of your wireless LAN connection.\n" +msgstr "Mostra o estado da Rede sem fios.\n" + +# +#, fuzzy +msgid "Shuffle playlist" +msgstr "modo aleatório" + +# +msgid "Shutdown" +msgstr "Desligar" + +msgid "Shutdown when in Standby" +msgstr "" + +#, fuzzy +msgid "Side by side" +msgstr "Lado a Lado" + +msgid "Signal OK, proceeding" +msgstr "Sinal OK, a proceder" + +msgid "Signal quality" +msgstr "Qualidade do sinal" + +# +#, fuzzy +msgid "Signal strength:" +msgstr "Força do sinal:" + +# +msgid "Signal: " +msgstr "Sinal:" + +# +msgid "Similar" +msgstr "Igual" + +# +msgid "Similar broadcasts:" +msgstr "Emissões Identicas:" + +# +msgid "Simple" +msgstr "Simples" + +# +msgid "Simple titleset (compatibility for legacy players)" +msgstr "Definição simples de título (compatibilidade para os reprodutores antigos)" + +# +msgid "Single" +msgstr "Unico" + +# +msgid "Single EPG" +msgstr "EPG unico" + +# +msgid "Single satellite" +msgstr "Só um Satelite" + +# +#, fuzzy +msgid "Single step (GOP)" +msgstr "Singlestep (GOP)" + +# +msgid "Single transponder" +msgstr "Transponder unico" + +msgid "Site latitude" +msgstr "Latitude local" + +msgid "Site longitude" +msgstr "Longitude local" + +# +msgid "Skin" +msgstr "Tema" + +# +msgid "Skins" +msgstr "Temas" + +#, fuzzy +msgid "Skip empty services" +msgstr "Saltar Canais sem Programação" + +msgid "Skip internet connection check (disables automatic package installation)" +msgstr "" + +# +#, fuzzy +msgid "Sleep timer" +msgstr "Temporizador" + +msgid "SleepTimer Configuration" +msgstr "" + +msgid "Sleeptimer" +msgstr "" + +# +#, fuzzy +msgid "Slide picture in loop" +msgstr "imagem de slide em loop" + +# +#, fuzzy +msgid "Slide show interval (sec.)" +msgstr "Intervalo do visualizador de imagens (seg.)" + +# +#, python-format +msgid "Slot %d" +msgstr "Slot %d" + +msgid "Slovak" +msgstr "Eslovaco" + +# +msgid "Slovenian" +msgstr "Esloveno" + +# +msgid "Slow" +msgstr "Lento" + +# +#, fuzzy +msgid "Slow motion speeds" +msgstr "Velocidades do modo camera lenta" + +# +#, fuzzy +msgid "Small progress" +msgstr "Em Progresso" + +msgid "Social/Political/Economics" +msgstr "" + +msgid "SoftCam / CI" +msgstr "" + +msgid "Softcam type" +msgstr "" + +msgid "Software" +msgstr "" + +# +msgid "Software management" +msgstr "Gestor de Software" + +msgid "Software manager setup" +msgstr "Opções de Instalação" + +# +msgid "Software restore" +msgstr "Restauro de Software" + +# +msgid "Software update" +msgstr "Actualização de Software" + +msgid "Softwaremanager information" +msgstr "Informação do gestor de software" + +# +msgid "Some plugins are not available:\n" +msgstr "Alguns plugins não estão disponiveis:\n" + +# +#, fuzzy, python-format +msgid "Sorry, %s has not been installed!" +msgstr "Desculpe mas o MediaScanner não está instalado!" + +msgid "Sorry, deleting directories can (for now) only be done through the trash can." +msgstr "" + +# +#, fuzzy +msgid "Sorry, no backups found!" +msgstr "Desculpe mas não foram encontrados backups!" + +# +#, fuzzy +msgid "Sorry, no details available!" +msgstr "Desculpe, detalhes não disponíveis!" + +# +#, fuzzy +msgid "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." +msgstr "" +"Desculpe, o seu destino para backup não é acessivél.\n" +"Por favor escolha outro destino." + +msgid "Sort" +msgstr "Ordenar" + +# +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort A-Z" +msgstr "Ordenar A-Z" + +msgid "Sort by" +msgstr "" + +msgid "Sort list:" +msgstr "" + +# +#. TRANSLATORS: This must fit into the header button in the EPG-List +#, fuzzy +msgid "Sort time" +msgstr "Ordenar por tempo" + +# +msgid "Sound" +msgstr "Som" + +# +#, fuzzy +msgid "Sound carrier" +msgstr "Soundcarrier" + +msgid "Source request" +msgstr "Requesito de fonte" + +# +msgid "South" +msgstr "Sul" + +# +msgid "Spanish" +msgstr "Catalão" + +msgid "Specify the end time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the end time until the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify the start time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the start time when the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify timeframe to ignore inactivity sleeptimer" +msgstr "" + +msgid "Specify timeframe to ignore the shutdown in standby" +msgstr "" + +# +msgid "Split preview mode" +msgstr "Dividir modo de previsualização" + +msgid "Splitscreen" +msgstr "" + +msgid "Sports" +msgstr "" + +# +#, fuzzy +msgid "Standard" +msgstr "standard" + +msgid "Standart list" +msgstr "" + +# +msgid "Standby" +msgstr "Standby" + +# +#, fuzzy +msgid "Standby / restart" +msgstr "Stanby / Reiniciar" + +msgid "Standby after current event" +msgstr "" + +# +#, fuzzy, python-format +msgid "Standby fan %d PWM" +msgstr "Ventilador em standby %d PWM" + +# +#, fuzzy, python-format +msgid "Standby fan %d voltage" +msgstr "Tensão do ventilador em standby %d" + +msgid "Standby in " +msgstr "" + +msgid "StandbyLED" +msgstr "" + +# +msgid "Start from the beginning" +msgstr "Começar no inicio" + +msgid "Start offline decode" +msgstr "Iniciar desencriptação offline" + +# +msgid "Start recording?" +msgstr "Iniciar a gravação?" + +# +msgid "Start test" +msgstr "Iniciar teste" + +# +#, fuzzy +msgid "Start time" +msgstr "Tempo de Inicio" + +msgid "Start time to ignore inactivity sleeptimer" +msgstr "" + +msgid "Start time to ignore shutdown in standby" +msgstr "" + +# +#, fuzzy +msgid "Start timeshift" +msgstr "Iniciar timeshift" + +msgid "Start with list screen" +msgstr "" + +# +msgid "Starting on" +msgstr "A Iniciar" + +msgid "Startup the set top box in standby" +msgstr "" + +msgid "Startup to Standby" +msgstr "" + +# +msgid "Step east" +msgstr "Avançar Este" + +# +msgid "Step west" +msgstr "Avançar Oeste" + +msgid "Stepped east" +msgstr "Passo para este" + +msgid "Stepped west" +msgstr "Passo para oeste" + +# +msgid "Stop" +msgstr "Stop" + +# +#, fuzzy +msgid "Stop PiP" +msgstr "stop PiP" + +# +msgid "Stop current event and disable coming events" +msgstr "Parar programa actual e desabilitar novos programas" + +# +msgid "Stop current event but not coming events" +msgstr "Parar programa actual, mas não desabilitar novos programas" + +# +#, fuzzy +msgid "Stop entry" +msgstr "parar" + +# +msgid "Stop playing this movie?" +msgstr "Parar a reprodução?" + +msgid "Stop recording" +msgstr "Parar a gravação" + +msgid "Stop recording and delete" +msgstr "Parar e apagar a gravação" + +msgid "Stop service on return to movie list" +msgstr "" + +# +msgid "Stop test" +msgstr "Parar teste" + +# +msgid "Stop testing plane after # failed transponders" +msgstr "Parar de testar o plano depois dos # transponders falharem" + +# +msgid "Stop testing plane after # successful transponders" +msgstr "Parar de testar o plano depois dos # transponders terem sucesso" + +msgid "Stop timer recording" +msgstr "" + +# +#, fuzzy +msgid "Stop timeshift" +msgstr "Parar timeshift" + +# +#, fuzzy +msgid "Stop timeshift?" +msgstr "Parar o Timeshift?" + +msgid "Stopped" +msgstr "Parado" + +msgid "Store at index" +msgstr "Guardar no indice" + +# +msgid "Store position" +msgstr "Guardar posição" + +# +msgid "Stored position" +msgstr "Posição Guardada" + +#, fuzzy +msgid "Stream" +msgstr "Pedido de stream" + +msgid "Stream request" +msgstr "Pedido de stream" + +msgid "Strongest position" +msgstr "Posição mais forte" + +# +msgid "Subservice list..." +msgstr "Lista de Subserviços... " + +# +msgid "Subservices" +msgstr "Subserviços" + +msgid "Subtitle Quickmenu" +msgstr "" + +#, fuzzy +msgid "Subtitle alignment" +msgstr "Alinhamento das legendas" + +#, fuzzy +msgid "Subtitle border width" +msgstr "Tamanho de rebordo" + +msgid "Subtitle delay when timing is bad" +msgstr "" + +msgid "Subtitle delay when timing lacks" +msgstr "Atraso na legenda quando o tempo falha" + +#, fuzzy +msgid "Subtitle font size" +msgstr "Tamanho de letra" + +msgid "Subtitle language selection 1" +msgstr "Idioma de legenda 1" + +msgid "Subtitle language selection 2" +msgstr "Idioma de legenda 2" + +msgid "Subtitle language selection 3" +msgstr "Idioma de legenda 3" + +msgid "Subtitle language selection 4" +msgstr "Idioma de legenda 4" + +# +#, fuzzy +msgid "Subtitle position" +msgstr "Selecção de Legendas" + +# +msgid "Subtitle selection" +msgstr "Selecção de Legendas" + +msgid "Subtitle selection..." +msgstr "Selecção de Legendas..." + +msgid "Subtitle settings" +msgstr "Legendas" + +# +msgid "Subtitles" +msgstr "Legendas" + +# +msgid "Sun" +msgstr "Dom" + +# +msgid "Sunday" +msgstr "Domingo" + +# +#, fuzzy +msgid "Swap PiP and main picture" +msgstr "alterar PiP com imagem principal" + +# +#, fuzzy +msgid "Swap services" +msgstr "Troca entrecanais" + +# +msgid "Swedish" +msgstr "Sueco" + +msgid "Switch TV to correct input" +msgstr "Mudar a TV para a entrada correcta" + +msgid "Switch between filelist/playlist" +msgstr "" + +msgid "Switch between normal mode and list mode" +msgstr "" + +msgid "Switch to HDMI in mode" +msgstr "" + +# +#, fuzzy +msgid "Switch to filelist" +msgstr "Ver lista de ficheiros" + +msgid "Switch to next channel" +msgstr "" + +# +#, fuzzy +msgid "Switch to next channel in history" +msgstr "proxima canal na memoria" + +# +#, fuzzy +msgid "Switch to next sub service" +msgstr "Mudar para o proximo canal" + +# +#, fuzzy +msgid "Switch to playlist" +msgstr "Ver a lista" + +# +#, fuzzy +msgid "Switch to previous channel" +msgstr "Mudar para o canal anterior" + +# +#, fuzzy +msgid "Switch to previous channel in history" +msgstr "canal anterior na memória" + +# +#, fuzzy +msgid "Switch to previous sub service" +msgstr "Mudar para o canal anterior" + +# +msgid "Switchable tuner types:" +msgstr "Tipos de tuner selecionáveis" + +msgid "Symbol rate" +msgstr "" + +msgid "Symbol rate:" +msgstr "" + +msgid "Sync failure moving back to origin !" +msgstr "Sincronização falhou, a voltar para a origem !" + +# +msgid "System" +msgstr "Sistema" + +# +#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) +msgid "TRANSLATOR_INFO" +msgstr "TRANSLATOR_INFO" + +# +msgid "TS file is too large for ISO9660 level 1!" +msgstr "O ficheiro TS é grande demais para ISO9660 level 1!" + +msgid "TSID" +msgstr "" + +msgid "TV physical address report" +msgstr "" + +msgid "TXT PID" +msgstr "" + +# +#, fuzzy +msgid "Table of contents for collection" +msgstr "Tabela de conteudos da colecção" + +# +msgid "Tags" +msgstr "Etiquetas" + +msgid "Teletext subtitle color" +msgstr "Cor das legendas de teletexto" + +# +#, fuzzy +msgid "Temperature and fan control" +msgstr "Controlo de temperatura e ventilador" + +# +msgid "Terrestrial" +msgstr "Terrestre" + +# +msgid "Terrestrial provider" +msgstr "Provedor Terrestre" + +# +msgid "Test DiSEqC settings" +msgstr "Testar as definições de DISEqC" + +# +msgid "Test mode" +msgstr "Modo de teste" + +msgid "Test the network configuration of your receiver.\n" +msgstr "" + +# +#, fuzzy +msgid "Test type" +msgstr "Tipo de teste" + +# +#, fuzzy +msgid "Text color" +msgstr "cor do texto" + +msgid "Thai" +msgstr "Tailandês" + +# +msgid "" +"Thank you for using the wizard.\n" +"Please press OK to continue." +msgstr "" +"Obrigado por usar o Assistente.\n" +"Por favor prima OK para continuar." + +# +#, fuzzy +msgid "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." +msgstr "" +"Obrigado por usar o Assistente.\n" +"Por favor prima OK para continuar." + +msgid "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?" +msgstr "" + +msgid "The PIN code has been changed successfully." +msgstr "O código PIN foi alterado com sucesso." + +msgid "The PIN codes you entered are different." +msgstr "Os códigos PIN que introduzio são diferentes." + +msgid "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" +msgstr "" +"A PEN Drive foi preparada para ser bootable.\n" +"Agora pode fazer o download de uma imagem NFI!" + +# +msgid "The backup failed. Please choose a different backup location." +msgstr "O restauro falhou. Por favor faça o restauro noutra pasta." + +#, fuzzy, python-format +msgid "" +"The current beta image might not be stable.\n" +"For more information see %s." +msgstr "A imagem beta actual não poderá não estar estável" + +# +#, python-format +msgid "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." +msgstr "" +"Não é possivél escrever na pasta %s.\n" +"Selecione uma pasta que possa ser escrita." + +# +#, python-format +msgid "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" +msgstr "" +"O seguinte dispositivo não foi encontrado:\n" +"\n" +"%s\n" +"\n" +"Deseja escrever o USB flasher para esta PEN Drive?" + +# +msgid "The following files were found..." +msgstr "Os seguintes ficheiros não foram encontrados..." + +msgid "The md5sum validation failed, the file may be corrupted!" +msgstr "A validação md5 falhou, o ficheiro deverá estar corrupto." + +# +#, fuzzy +msgid "" +"The network wizard extension is not installed!\n" +"Please install it." +msgstr "" +"A extensão Assistente de Rede não está instalada!\n" +"Por favor instale-a." + +# +#, python-format +msgid "The path %s already exists." +msgstr "A pasta %s já existe." + +# +msgid "The pin code you entered is wrong." +msgstr "o PIN que introduziu está errado." + +# +#, python-format +msgid "The results have been written to %s." +msgstr "Os resultados foram escritos em %s." + +# +msgid "The sleep timer has been activated." +msgstr "O temporizador foi activado." + +# +msgid "The sleep timer has been disabled." +msgstr "Desactivou o temporizador" + +# +#, fuzzy +msgid "" +"The software management extension is not installed!\n" +"Please install it." +msgstr "" +"A eztensão Gestor de Software não está instalada!\n" +"Por favor intale-a." + +#, fuzzy, python-format +msgid "The status of the current beta image could not be checked because %s can not be reached." +msgstr "O estado da imagem beta actual não pôde ser verificado porque o websie www.openpli.org não pode ser aberto por alguma razão" + +# +msgid "The timer file (timers.xml) is corrupt and could not be loaded." +msgstr "O ficheiro Timer (timers.xml) esta corrompido e não pode ser carregado." + +#, fuzzy +msgid "The user interface of your receiver is restarting" +msgstr "O interface visual está a reiniciar!" + +#, fuzzy +msgid "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" +msgstr "" +"O enigma2 está a reiniciar\n" +"devido a um erro em mytest.py" + +# +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." +msgstr "" +"Este plugin de Rede sem fios não está instalado!\n" +"Por favor instale-o e escolha o que fazer a seguir." + +# +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it." +msgstr "" +"Este plugin de Rede sem fios não está instalado!\n" +"Por favor instale-o." + +# +msgid "The wizard can backup your current settings. Do you want to do a backup now?" +msgstr "O assistente pode guardar os seus dados.Deseja guardá-los agora?" + +#, python-format +msgid "The wizard found a configuration backup. Do you want to restore your old settings from %s?" +msgstr "O Assistente encontrou um backup de configurções. Deseja restaurar a configurações antigas presentes em %s?" + +# +msgid "The wizard is finished now." +msgstr "O assitente terminou." + +# +msgid "There are at least " +msgstr "Existem pelo menos" + +# +#, fuzzy, python-format +msgid "There are at least %s updates available." +msgstr "Não existem plugins disponíveis." + +# +msgid "There are currently no outstanding actions." +msgstr "Atualmente não existem acções pendentes." + +# +msgid "There are no updates available." +msgstr "Não existem plugins disponíveis." + +msgid "There is no signal to lock on !" +msgstr "Não há sinal para establecer!" + +# +msgid "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" +msgstr "" +"Não existe espaço suficiente na partiçaõ seleccionada.\n" +"Deseja continuar?" + +# +msgid "This DVD RW medium is already formatted - reformatting will erase all content on the disc." +msgstr "Este DVD RW já está formatado - reformatar irá apagar todo o conteudo do disco." + +msgid "" +"This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!" +msgstr "" + +# +msgid "This plugin is installed." +msgstr "Este plugin está instalado." + +# +msgid "This plugin is not installed." +msgstr "Este plugin não está instalado." + +# +msgid "This plugin will be installed." +msgstr "Este pluginvai ser instalado." + +# +msgid "This plugin will be removed." +msgstr "Este plugin vai ser removido." + +#, python-format +msgid "This receiver cannot decode %s streams!" +msgstr "" + +# +#, fuzzy +msgid "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration" +msgstr "" +"Este teste verifica os servidores DNS.\n" +"Se receber uma mensagem \"não confirmada\":\n" +"-por favor verifique o DHCP, opçoes do adaptador e o cabo de rede\n" +"-se configurou o servidor DNS manualmente verifique as entradas na Configurações de \"Servidor DNS\" " + +# +#, fuzzy +msgid "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" +msgstr "" +"Este teste verifica se um cabo de rede está ligado ao seu adaptador-LAN.\n" +"Se receber uma mensagem \"desligado\":\n" +"- verifique se o cabo está ligado\n" +"- verifique se o cabo não está partido" + +# +#, fuzzy +msgid "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" +msgstr "" +"Este teste verifica se um IP valido foi encontrado para o Adaptador-LAN.\n" +"Se receber uma mensagem \"não confirmado\":\n" +"- não foi encontrado nenhum endereço de IP valido\n" +"- verificar se tem o servidor DHCP configurado e a funcionar na sua rede." + +# +#, fuzzy +msgid "" +"This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." +msgstr "" +"Este teste verifica se um adaptador-LAN define um IP automaticamente com DHCP.\n" +"Se receber uma mensagem \"desabilitado\":\n" +"- Então o adaptador LAN está configurado para configuração de IP manual\n" +"- Verificar se introduziu o IP na caixa de diálogo Definições do Adaptador.\n" +"Se receber um \"activo\" mensagem:\n" +"- Verificar se tem o servidor DHCP configurado e a funcionar na sua rede." + +# +#, fuzzy +msgid "This test detects your configured LAN adapter." +msgstr "Este teste detecta as configurações do Adaptador-LAN." + +msgid "" +"This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\n" +"Are you sure?" +msgstr "" +"Isto irá (re)calcular todas as posições do motor e poderá remover posições anteriormente memorizadas e finamente afinadas!\n" +"Tem a certeza?" + +# +msgid "Three" +msgstr "Três." + +# +msgid "Threshold" +msgstr "Threshold" + +# +msgid "Thu" +msgstr "Qui" + +# +msgid "Thumbnails" +msgstr "Miniaturas" + +# +msgid "Thursday" +msgstr "Quinta-Feira" + +# +msgid "Time" +msgstr "Hora" + +#, fuzzy +msgid "Time scale" +msgstr "Escala de Tempo" + +# +msgid "Timer" +msgstr "Gravações" + +msgid "Timer Overview" +msgstr "" + +# +#, fuzzy +msgid "Timer edit" +msgstr "Editar o Temporizador" + +# +#, fuzzy +msgid "Timer editor" +msgstr "Editor do Temporizador" + +# +msgid "Timer entry" +msgstr "Agendar Gravação" + +# +msgid "Timer log" +msgstr "Registo da Gravação" + +# +msgid "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" +msgstr "" +"Sobreposição de temporizadores em timers.xml detectada!\n" +"Por favor verifique isso!" + +#, fuzzy +msgid "Timer overview" +msgstr "Gravações Agendadas" + +# +#, fuzzy +msgid "Timer recording location" +msgstr "Localização das gravações" + +# +msgid "Timer sanity error" +msgstr "Erro do Temporizador" + +# +msgid "Timer selection" +msgstr "Selecção do Temporizador" + +msgid "Timer selection..." +msgstr "" + +# +#, fuzzy +msgid "Timer type" +msgstr "Tipo de Temporizador" + +# +msgid "Timeshift" +msgstr "Timeshift" + +msgid "Timeshift Live" +msgstr "" + +# +msgid "Timeshift location" +msgstr "Localização para Timeshift" + +# +msgid "Timeshift not possible!" +msgstr "Timeshift não permitido!" + +# +msgid "Timezone" +msgstr "Zona Horária" + +# +msgid "Title" +msgstr "Título" + +# +msgid "Title properties" +msgstr "Propriedades de título" + +# +msgid "Titleset mode" +msgstr "Modo de definição de título" + +msgid "To audio selection" +msgstr "Voltar à selecção de audio" + +msgid "To subtitle selection" +msgstr "Legendas" + +msgid "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." +msgstr "" + +# +msgid "Today" +msgstr "Hoje" + +# +#, fuzzy +msgid "Toggle a cut mark at the current position" +msgstr "marcar na posição actual" + +# +#, fuzzy +msgid "Tone amplitude" +msgstr "Modo de amplitude" + +# +msgid "Tone mode" +msgstr "Modo de sintonia" + +# +msgid "Toneburst" +msgstr "Toneburst" + +# +msgid "Toneburst A/B" +msgstr "Toneburst A/B" + +#, fuzzy +msgid "Top and bottom" +msgstr "Topo e Fundo" + +# +msgid "Track" +msgstr "Faixa" + +# +msgid "Translation" +msgstr "Tradução" + +# +msgid "Translation:" +msgstr "Tradução:" + +msgid "Translations" +msgstr "" + +# +msgid "Transmission mode" +msgstr "Modo de Transmissão" + +# +msgid "Transponder" +msgstr "Transponder" + +# +#, fuzzy +msgid "Transponder type" +msgstr "Tipo deTransponder" + +#, fuzzy +msgid "Trash can" +msgstr "Reciclagem" + +# +msgid "Tries left:" +msgstr "Tries restantes:" + +# +msgid "Try to find used transponders in cable network.. please wait..." +msgstr "Tentar encontrar transponders usados na rede do cabo. esperar por favor…" + +# +msgid "Trying to download a new packetlist. Please wait..." +msgstr "A tentar o download de uma nova lista de pacotes. Por favor aguarde..." + +# +msgid "Tue" +msgstr "Ter" + +# +msgid "Tuesday" +msgstr "Terça-Feira" + +# +msgid "Tune" +msgstr "Sintonizar " + +#, fuzzy +msgid "Tune and focus" +msgstr "Sintonização e focagem" + +# +msgid "Tune failed!" +msgstr "Falhou!" + +# +msgid "Tuner" +msgstr "Tuner" + +# +msgid "Tuner configuration" +msgstr "Definições do Tuner" + +msgid "Tuner is not supported" +msgstr "" + +# +#, fuzzy +msgid "Tuner slot" +msgstr "Entrada do tuner" + +# +msgid "Tuner status" +msgstr "Estado do Tuner" + +# +#, fuzzy, python-format +msgid "Tuner status %s" +msgstr "Estado do Tuner" + +# +msgid "Tuner type" +msgstr "Tipo de tuner" + +# +msgid "Turkish" +msgstr "Turco" + +msgid "Turn on the power LED during standby." +msgstr "" + +msgid "Turning step size" +msgstr "" + +# +msgid "Two" +msgstr "Dois" + +# +msgid "Type" +msgstr "Tipo" + +# +msgid "Type of scan" +msgstr "Tipo de Busca" + +# +msgid "USALS" +msgstr "USALS" + +#, fuzzy +msgid "USALS calibration" +msgstr "Calibração USALS" + +# +#, fuzzy +msgid "USB stick" +msgstr "USB Stick" + +# +msgid "USB stick wizard" +msgstr "Assistente de USB Drive" + +msgid "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Actualização sem interface visual em progresso\n" +"Por favor aguarde até o receptor reiniciar\n" +"Isto poderá demorar alguns minutos" + +# +msgid "Undo install" +msgstr "Reverter instalação" + +# +msgid "Undo uninstall" +msgstr "Reverter desinstalação" + +msgid "Unencrypted" +msgstr "Desencriptado" + +# +msgid "UnhandledKey" +msgstr "r" + +# +msgid "Unicable" +msgstr "Cabo unico" + +# +msgid "Unicable LNB" +msgstr "LNB de cabo unico" + +# +msgid "Unicable Martix" +msgstr "Matriz de cabo unico" + +# +msgid "Uninstall" +msgstr "Desinstalar" + +# +msgid "Universal LNB" +msgstr "LNB Universal " + +msgid "Unknown" +msgstr "Desconhecido" + +msgid "Unmount" +msgstr "Desmontar" + +# +msgid "Unsupported" +msgstr "Não suportado" + +# +msgid "Update" +msgstr "Actualizar" + +#, fuzzy +msgid "Update and ask to reboot" +msgstr "Actualizar e perguntar para reiniciar" + +msgid "Update and reboot (recommended)" +msgstr "" + +# +#, fuzzy +msgid "Update channel list only" +msgstr "proxima canal na memoria" + +#, python-format +msgid "Update completed, %d package was installed." +msgid_plural "Update completed, %d packages were installed." +msgstr[0] "" +msgstr[1] "" + +msgid "Update completed. Do you want to reboot your receiver?" +msgstr "" + +msgid "Update failed. Your receiver does not have a working internet connection." +msgstr "" + +msgid "Update has completed." +msgstr "" + +# +msgid "Updatefeed not available." +msgstr "Servidor de actualizações não disponével" + +# +msgid "Updating software catalog" +msgstr "A actualizar o catalogo de software" + +# +msgid "Upgrading" +msgstr "A actualizar" + +# +msgid "Use" +msgstr "Usar" + +# +msgid "Use DHCP" +msgstr "Usar DHCP" + +msgid "Use EIT EPG information when it is available." +msgstr "" + +msgid "Use FreeSat EPG information when it is available." +msgstr "" + +msgid "Use MHW EPG information when it is available." +msgstr "" + +msgid "Use Netmed EPG information when it is available." +msgstr "" + +msgid "Use TV remote control" +msgstr "Usar o comando remoto da TV" + +# +#, fuzzy +msgid "Use USALS for this sat" +msgstr "Usar usals para este satelite" + +msgid "Use ViaSat EPG information when it is available." +msgstr "" + +msgid "Use Virgin EPG information when it is available." +msgstr "" + +# +msgid "Use a gateway" +msgstr "Use gateway" + +msgid "Use fastscan channel names" +msgstr "Usar o nome dos canais da busca rapida" + +msgid "Use fastscan channel numbering" +msgstr "Usar o número dos canais da busca rapida" + +msgid "Use frequency or channel" +msgstr "" + +msgid "Use individual settings for each directory" +msgstr "" + +# +#, fuzzy +msgid "Use interface" +msgstr "Interface de Uso" + +msgid "Use official channel numbering" +msgstr "Usar a númeração oficial dos canais" + +#, fuzzy +msgid "Use original DVB subtitle position" +msgstr "Usar a posição original das legendas DVB" + +msgid "Use original teletext position" +msgstr "Usar a posição original do teletexto" + +# +msgid "Use power measurement" +msgstr "Usar controlo da alimentação" + +# +#, fuzzy +msgid "Use the network wizard to configure selected network adapter" +msgstr "Usar o Assistente de Rede para configurar o adaptador de rede" + +# +#, fuzzy +msgid "Use the network wizard to configure your network\n" +msgstr "Usar o Assistente de Rede para configurar a sua Rede\n" + +# +msgid "Use the up/down keys on your remote control to select an option. After that, press OK." +msgstr "" +"Use os botões cima/baixo do seu comando para selecionar.\n" +"Depois carregue OK" + +# +#, fuzzy +msgid "Use the wizard to set up basic features" +msgstr "Utilizar o assistente" + +#, fuzzy +msgid "Use these input device settings?" +msgstr "Usar estas definições deste dispositivo de entrada?" + +#, fuzzy +msgid "Use these settings?" +msgstr "Usar estas definições?" + +# +msgid "Use this video enhancement settings?" +msgstr "Usar estas opções de imagem?" + +#, fuzzy +msgid "Use trash can in movielist" +msgstr "Usar reciclagem na lista de Gravações" + +# +msgid "Used service scan type" +msgstr "Tipo usado na busca" + +msgid "User - bouquets" +msgstr "Favoritos" + +# +msgid "User defined" +msgstr "Definições do utilizador" + +msgid "User defined transponder" +msgstr "" + +# +#, fuzzy +msgid "User interface" +msgstr "Interface de Uso" + +# +msgid "Username" +msgstr "Utilizador" + +#, python-format +msgid "Using LNB %d" +msgstr "" + +msgid "Using fixed address" +msgstr "Usar endereço fixo" + +#, python-format +msgid "Using tuner %s" +msgstr "" + +msgid "Usually when the subtitle language is the same as the audio language, the subtitles will not be used. Enable this option to allow these subtitles to be used." +msgstr "" + +# +msgid "VCR scart" +msgstr "Entrada VCR" + +# +msgid "VMGM (intro trailer)" +msgstr "VMGM (trailer de intro)" + +# +msgid "Vertical" +msgstr "Vertical" + +msgid "Vertical turning speed" +msgstr "Velocidade de viragem vertical" + +msgid "Video PID" +msgstr "" + +# +msgid "Video enhancement preview" +msgstr "Previsualizar Opções de Imagem" + +# +msgid "Video enhancement settings" +msgstr "Opções de Imagem" + +# +msgid "Video enhancement setup" +msgstr "Opções de Imagem" + +# +#, fuzzy +msgid "Video fine tuning" +msgstr "Sintonia fina de Video" + +# +#, fuzzy +msgid "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." +msgstr "" +"Selecção da entrada de video\n" +"\n" +"Por favor carregue OK se consegue ver esta página (ou seleccione outra porta de entrada).\n" +"\n" +"A porta seleccionada será usada automaticamente dentro de 10 segundos." + +# +msgid "Video mode selection." +msgstr "Selecção do modo de video" + +# +#, fuzzy +msgid "Video output" +msgstr "Saída de Video" + +# +#, fuzzy +msgid "Video setup" +msgstr "Definições de Video" + +# +#, fuzzy +msgid "Video wizard" +msgstr "Assistente de Video" + +#, python-format +msgid "Video: %s fps" +msgstr "" + +msgid "VideoMode" +msgstr "" + +msgid "Videocodec" +msgstr "Codec" + +msgid "Videoformat" +msgstr "Formato de Video" + +msgid "Videosize" +msgstr "Resolução" + +# +msgid "View Rass interactive..." +msgstr "Ver Rass interactivo..." + +# +msgid "View details" +msgstr "Ver detalhes" + +# +msgid "View list of available " +msgstr "Ver lista de disponíveis" + +# +msgid "View list of available CommonInterface extensions" +msgstr "Ver lista de extensões do Interface Comum disponíveis" + +# +msgid "View list of available EPG extensions." +msgstr "Ver lista de extensões de EPG disponíveis" + +# +msgid "View list of available Satellite equipment extensions." +msgstr "Ver lista de extensões de Equipamento de Satélite disponíveis" + +# +msgid "View list of available communication extensions." +msgstr "Ver lista de extensões de Comunicação disponíveis" + +# +msgid "View list of available default settings" +msgstr "Ver lista de configurações padrão disponíveis" + +# +#, fuzzy +msgid "View list of available display and userinterface extensions." +msgstr "Ver lista de extensões de Ecrã e Interface de Utilizador disponíveis" + +# +msgid "View list of available multimedia extensions." +msgstr "Ver lista de extensões de Multimedia disponíveis" + +# +msgid "View list of available networking extensions" +msgstr "Ver lista de extensões de Rede disponíveis" + +# +msgid "View list of available recording extensions" +msgstr "Ver lista de extensões de Gravações disponíveis" + +# +msgid "View list of available skins" +msgstr "Ver lista de Temas disponíveis" + +# +msgid "View list of available software extensions" +msgstr "Ver lista de extensões de Software disponíveis" + +# +msgid "View list of available system extensions" +msgstr "Ver lista de extensões de Sistema disponíveis" + +# +#, fuzzy +msgid "View photos..." +msgstr "Ver Fotos..." + +# +msgid "View teletext..." +msgstr "Ver teletexto..." + +# +#, fuzzy +msgid "View video CD..." +msgstr "Ver CD de Video..." + +# +#, fuzzy +msgid "Virtual keyboard" +msgstr "Teclado no Ecrã" + +# +msgid "Voltage mode" +msgstr "Modo de tensão" + +# +msgid "Volume" +msgstr "Volume" + +# +msgid "W" +msgstr "W" + +# +msgid "WEP" +msgstr "WEP" + +msgid "WLAN connection" +msgstr "Ligação de rede sem fios" + +# +msgid "WPA" +msgstr "WPA" + +# +msgid "WPA or WPA2" +msgstr "WPA or WPA2" + +# +msgid "WPA2" +msgstr "WPA2" + +# +msgid "WSS on 4:3" +msgstr "WSS em 4:3" + +# +msgid "Waiting" +msgstr "À espera" + +#, fuzzy +msgid "Waiting for mount" +msgstr "Esperar pela montagem" + +#, fuzzy +msgid "Waiting for partition" +msgstr "Esperar por partição" + +msgid "Wakeup" +msgstr "Acordar" + +msgid "Wakeup TV from standby" +msgstr "Acordar TV do standby" + +msgid "Wakeup receiver for start timer" +msgstr "" + +msgid "Wakeup receiver from standby" +msgstr "Acordar o receptor do standby" + +msgid "Wakeup signal from TV" +msgstr "Sinal de acordar da TV" + +msgid "Wakeup type" +msgstr "" + +msgid "Warning: no LNB; using factory defaults." +msgstr "" + +# +#, fuzzy +msgid "Watch movies..." +msgstr "Reproduzir filmes gravados..." + +# +#, fuzzy +msgid "Watch recordings..." +msgstr "a gravar..." + +# +msgid "Wed" +msgstr "Qua" + +# +msgid "Wednesday" +msgstr "Quarta-Feira" + +# +msgid "Weekday" +msgstr "Dia de Semana" + +msgid "Weighted position" +msgstr "Posição pesada" + +# +#, fuzzy +msgid "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." +msgstr "" +"Bem-vindo ao editor Cutlist.\n" +"\n" +"Procure o inicio das coisas que quer cortar. Pressione OK, selecione 'iniciar cortar'.\n" +"\n" +"De seguida, procurar até ao fim, primir OK, selecionar \"corte final\". E é só isso." + +msgid "Welcome to the image upgrade wizard. The wizard will assist you in upgrading the firmware of your receiver by providing a backup facility for your current settings and a short explanation of how to upgrade your firmware." +msgstr "" + +msgid "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" +msgstr "" + +msgid "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." +msgstr "" + +# +msgid "Welcome..." +msgstr "Bem Vindo..." + +# +msgid "West" +msgstr "Oeste" + +msgid "West limit set" +msgstr "Definir o limite a Oeste" + +# +msgid "What do you want to scan?" +msgstr "O que deseja procurar?" + +msgid "When enabled the PiP can be closed by the exit button." +msgstr "" + +msgid "When enabled the arrow buttons around the OK button will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled the left, right, CH+/-, B+/-, P+/- buttons will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled you can specify a timeframe to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "When enabled you can specify a timeframe were the inactivity sleeptimer is ignored. Not the detection is disabled during this timeframe but the inactivity timeout is disabled" +msgstr "" + +msgid "When enabled you can zap channels with the CH+/-, B+/-, P+/- buttons instead of opening the channel selection list." +msgstr "" + +msgid "When enabled you get the channel selection list via the OK button, the infobar toggle is then transfered to exit button" +msgstr "" + +msgid "When enabled, AIT data will be included in http streams. This allows a client receiver to use HbbTV." +msgstr "" + +msgid "When enabled, ECM data will be included in http streams. This allows a client receiver to do the descrambling." +msgstr "" + +msgid "When enabled, EIT data will be included in http streams. This allows a client receiver to show EPG." +msgstr "" + +msgid "When enabled, a popup message will be shown when a movie has finished and the next one will start." +msgstr "" + +msgid "When enabled, a popup message will be shown when a recording starts." +msgstr "" + +msgid "When enabled, a radio background image will be visible while listening to a radio channel." +msgstr "" + +msgid "When enabled, a recording is allowed to interrupt live tv, when there are no free tuners." +msgstr "" + +msgid "When enabled, a warning will be displayed and the user will get an option to stop or to continue the timeshift." +msgstr "" + +msgid "When enabled, authentication is required to watch http streams." +msgstr "" + +msgid "When enabled, channel numbering will start at '1' for each bouquet." +msgstr "" + +msgid "When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen." +msgstr "" + +msgid "When enabled, continue to the next bouquet when the last channel of the current bouquet is reached while changing channels." +msgstr "" + +msgid "When enabled, deleted recordings are moved to the trash can, instead of being deleted immediately." +msgstr "" + +msgid "When enabled, display the EIT now/next eventdata in infobar. When disabled, display now/next eventdata from the EPG cache instead." +msgstr "" + +msgid "When enabled, encryption info will be shown in the infobar (when supported by the skin)." +msgstr "" + +msgid "When enabled, error messages related to the Common Interface module will not be shown." +msgstr "" + +msgid "When enabled, error messages related to zapping will not be shown." +msgstr "" + +msgid "When enabled, external subtitles will be always turned on for playback movie." +msgstr "" + +msgid "When enabled, graphical DVB subtitles are preferred over teletext subtitles, when both types are available." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be centered horizontally." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be displayed at their original position." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be displayed in yellow, instead of the original color." +msgstr "" + +msgid "When enabled, http streams are descrambled on the server side. The (remote) client receiver does not have to do descrambling." +msgstr "" + +msgid "When enabled, it is possible to leave the movieplayer with exit." +msgstr "" + +msgid "When enabled, measure power consumption to detect when the rotor stops turning (when supported by the tuner)." +msgstr "" + +msgid "When enabled, number markers will be hiden." +msgstr "" + +msgid "When enabled, services may be grouped in multiple bouquets." +msgstr "" + +#, fuzzy +msgid "When enabled, show channel numbers in the channel selection screen." +msgstr "Mostrar a numeração dos canais na lista de canais" + +msgid "When enabled, subtitles for the hearing impaired can be used." +msgstr "" + +msgid "When enabled, subtitles for the hearing impaired will be preferred over normal subtitles, when both types are available." +msgstr "" + +msgid "When enabled, teletext pages will be cached, allowing faster access." +msgstr "" + +msgid "When enabled, teletext subtitles will be displayed at their original position." +msgstr "" + +msgid "When enabled, the VCR scart option will be shown on the main menu" +msgstr "" + +msgid "When enabled, the channel selection list will be hidden while listening to a radio channel" +msgstr "" + +msgid "When enabled, the infobar will be displayed when a new event starts." +msgstr "" + +msgid "When enabled, the infobar will be displayed when changing channels." +msgstr "" + +msgid "When enabled, the infobar will be displayed when skipping forwards/backwards during media playback." +msgstr "" + +msgid "When enabled, the lenght of each recording will be shown in the movielist (this might cause some additional loading time)." +msgstr "" + +msgid "When enabled, the original line breaks will be removed from the teletext subtitles." +msgstr "" + +msgid "When enabled, the receiver will automatically use the audio track which you selected before." +msgstr "" + +msgid "When enabled, the receiver will automatically use the subtitles which you selected before." +msgstr "" + +msgid "When enabled, the receiver will no longer monitor the tuned transponder for possible changes. Do not use this option unless you know what you are doing." +msgstr "" + +msgid "When enabled, the receiver will select an AC3 track (when available)." +msgstr "" + +msgid "When enabled, the receiver will select an AC3+ track (when available)." +msgstr "" + +msgid "When enabled, timeshift starts automatically in background after specified time." +msgstr "" + +# +#, fuzzy +msgid "When enabled, use DHCP for the IP configuration." +msgstr "abrir a configuração do servidor de DNS" + +msgid "When enabled, your receiver will detect activity on the VCR SCART input." +msgstr "" + +msgid "When nonzero, a recording will start earlier than the starting time indicated by the EPG." +msgstr "" + +msgid "When nonzero, a recording will stop later than the ending time indicated by the EPG." +msgstr "" + +msgid "When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture." +msgstr "" + +msgid "When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture." +msgstr "" + +# +msgid "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" +msgstr "" +"Quando é feito um restauro de fabrica, todas as configurações são perdidas\n" +"(includindo lista de canais, configurações do tuner, entre outras ...)\n" +"Depois do restauro de fabrica, o receptor vai reiniciar automaticamente!\n" +"\n" +"Continuar para o restauro de fabrica?" + +# +msgid "Where do you want to backup your settings?" +msgstr "Onde deseja guardar as suas definições?" + +# +msgid "Where to save temporary timeshift recordings?" +msgstr "Onde guardar as gravações temporárias do Timeshifth?" + +# +msgid "Wireless LAN" +msgstr "Rede sem fios" + +# +#, fuzzy +msgid "Wireless network" +msgstr "Rede sem fios" + +#, fuzzy +msgid "Wireless network configuration..." +msgstr "Opções da Rede sem fios." + +msgid "Wireless network connection setup" +msgstr "Opções da Rede sem fios" + +msgid "Wireless network connection setup." +msgstr "Opções da Rede sem fios." + +msgid "Wireless network state" +msgstr "Estado da Rede sem fios" + +msgid "With popup" +msgstr "" + +msgid "Without popup" +msgstr "" + +msgid "Would you like to install a softcam?" +msgstr "" + +# +msgid "Write error while recording. Disk full?\n" +msgstr "Erro ao gravar.Disco cheio?\n" + +# +msgid "Write failed!" +msgstr "Escritura falhou!" + +# +msgid "YPbPr" +msgstr "YPbPr" + +# +msgid "Year" +msgstr "Ano" + +msgid "Yellow DVB subtitles" +msgstr "Legendas DVB em amarelo" + +# +msgid "Yes" +msgstr "Sim" + +msgid "Yes and save" +msgstr "" + +msgid "Yes and save in movie dir" +msgstr "" + +# +msgid "Yes to all" +msgstr "Sim para todos" + +msgid "Yes, always" +msgstr "Sim, sempre" + +# +msgid "Yes, and delete this movie" +msgstr "Sim, e apagar este filme" + +# +msgid "Yes, backup my settings!" +msgstr "Sim, guarde as minhas definições!" + +msgid "Yes, delete this movie and return to movie list" +msgstr "" + +# +msgid "Yes, do a manual scan now" +msgstr "Sim, iniciar busca manual" + +# +msgid "Yes, do an automatic scan now" +msgstr "Sim, iniciar busca automática" + +# +msgid "Yes, do another manual scan now" +msgstr "Sim, continuar busca manual" + +# +msgid "Yes, perform a shutdown now." +msgstr "Sim, desligar agora" + +# +msgid "Yes, restore the settings now" +msgstr "Sim, guardar as definições" + +# +msgid "Yes, returning to movie list" +msgstr "Sim, voltar à lista de filmes" + +msgid "Yesterday" +msgstr "Ontem" + +#, python-format +msgid "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" +msgstr "" +"Já tem uma lista e canais insytalada,\n" +"deseja remove-la\n" +"\"%s\"?" + +# +msgid "You can cancel the installation." +msgstr "Pode cancelar a instalação." + +# +msgid "You can cancel the removal." +msgstr "Pode cancelar a remoção." + +msgid "You can continue watching TV etc. while this is running." +msgstr "Pode continuar a ver TV etc. enquabto isto decorre." + +# +msgid "You can install this plugin." +msgstr "Pode instalar este plugin." + +msgid "You can only burn receiver recordings!" +msgstr "" + +# +msgid "You can remove this plugin." +msgstr "Pode remover este plugin." + +# +msgid "You cannot delete this!" +msgstr "Não é possivel apagar" + +msgid "You didn't select a channel to record from." +msgstr "Não selecionou um canal para gravar." + +# +msgid "You have chosen to backup your settings. Please press OK to start the backup now." +msgstr "Escolheu fazer um backup de configurações. Por favor prima ok para fazer o backup agora." + +# +msgid "You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased." +msgstr "Escolheu criar um novo .NFI flasher bootable USB PEN Drive. Isto irá reparticionar a PEN Drive e por isso todos os dados nela contidos eram ser apagados." + +# +msgid "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." +msgstr "Escolheu restaurar as configurações. O enigma2 irá reiniciar depois do restauro. Por favor prima OK para iniciar o restauro." + +# +#, python-format +msgid "You have to wait %s!" +msgstr "Espere por favor %s!" + +msgid "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." +msgstr "" + +msgid "You system does not support ext4" +msgstr "O seu sistema não suporta ext4" + +# +msgid "Your backup succeeded. We will now continue to explain the further upgrade process." +msgstr "Operação bem sucedida.Continuar a explicar o processo de actualização." + +# +msgid "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" +msgstr "A colecção exede o tamanho de uma unica face de um DVD, vai ser necessário um DVD de dupla face!" + +# +msgid "Your current collection will get lost!" +msgstr "A sua colecção actual irá perder-se!" + +# +msgid "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." +msgstr "" +"O seu processador deve ser actualizado.\n" +"Carregue OK para iniciar" + +msgid "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"O frontprocessor irá ser actualizado\n" +"Por favor espere até o receptor reiniciar\n" +"Isto poderá demorar alguns minutos" + +# +msgid "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." +msgstr "" +"A ligação à Internet não está a funcionar!\n" +"Por favor escolha o que fazer a seguir." + +#, python-format +msgid "Your internet connection is working (ip: %s)" +msgstr "" + +# +msgid "Your network configuration has been activated." +msgstr "A configuração de rede foi actvada." + +msgid "Your receiver does not have an internet connection" +msgstr "" + +# +#, fuzzy +msgid "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" +msgstr "" +"A Dreambox está pronta a funcionar.\n" +"\n" +"A ligação à iternet está agora a funcionar.\n" +"\n" + +msgid "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." +msgstr "" + +msgid "Your receiver is rebooting" +msgstr "A Reiniciar..." + +msgid "Your receiver is shutting down" +msgstr "A Desligar..." + +msgid "Your receiver is shutting down. Please stand by..." +msgstr "" + +msgid "Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver." +msgstr "" + +msgid "Your receiver will got to stand by due to the sleeptimer." +msgstr "" + +msgid "Your receiver will got to standby due to inactivity." +msgstr "" + +msgid "Your receiver will restart after pressing OK on your remote control." +msgstr "" + +# +msgid "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." +msgstr "" +"A ligação sem fios de internet não foi establecida!\n" +"A Pen USB WLAN foi inserida?\n" +"\n" +"Por favor escolha o que fazer a seguir." + +msgid "Zap" +msgstr "" + +# +msgid "Zap back to previously tuned service?" +msgstr "Zap para o canal sintonizado anteriormente?" + +# +msgid "Zap back to service before positioner setup?" +msgstr "Voltar ao canal antes de definir o posicionador?" + +# +msgid "Zap back to service before tuner setup?" +msgstr "Zap para o canal anterior à configuração do tuner?" + +msgid "Zap focus to Picture in Picture" +msgstr "Zap para janela PiP" + +msgid "Zap focus to main screen" +msgstr "Zap para janela principal" + +msgid "Zap mode" +msgstr "modo Zap" + +msgid "Zap to selected channel" +msgstr "Zap para o canal selecionado" + +msgid "Zap to selected channel, or show detailed event info (depends on configuration)" +msgstr "" + +# +msgid "[alternative edit]" +msgstr "[alternative edit]" + +# +msgid "[bouquet edit]" +msgstr "[editar bouquet]" + +# +msgid "[favourite edit]" +msgstr "[editar favorito]" + +# +msgid "[move mode]" +msgstr "[modo desloca]" + +# +msgid "a gui to assign services/providers to common interface modules" +msgstr "um interfave visual para atribuir serviços/operadores a um modulo CI" + +# +msgid "a gui to assign services/providers/caids to common interface modules" +msgstr "um interfave visual para atribuir serviços/operadores/caids a um modulo CI" + +# +msgid "abort alternatives edit" +msgstr "abortar a edição de alternativas" + +# +msgid "abort bouquet edit" +msgstr "Cancelar a edição" + +# +msgid "abort favourites edit" +msgstr "Cancelar a edição" + +# +msgid "about to start" +msgstr "A iniciar" + +# +msgid "activate network adapter configuration" +msgstr "activar configuração do adaptador de rede" + +# +msgid "add alternatives" +msgstr "adicionar alternativas" + +# +msgid "add bookmark" +msgstr "adicionar marcador" + +# +msgid "add bouquet" +msgstr "adicionar bouquet" + +# +msgid "add marker" +msgstr "adicionar marca" + +# +msgid "add service to bouquet" +msgstr "Adicionar ao bouquet" + +# +msgid "add service to favourites" +msgstr "Adicionar aos favoritos" + +# +msgid "add to parental protection" +msgstr "Adicionar ao controle paternal" + +msgid "adult movie/drama" +msgstr "" + +# +msgid "advanced" +msgstr "Avançados" + +msgid "adventure/western/war" +msgstr "" + +msgid "advertisement/shopping" +msgstr "" + +msgid "after " +msgstr "" + +# +#, fuzzy +msgid "alphabetic" +msgstr "oedenar alfabeticamente" + +msgid "alphabetic reverse" +msgstr "alfabética invertida" + +msgid "alternative" +msgstr "" + +msgid "always" +msgstr "" + +msgid "and select next channel" +msgstr "" + +msgid "and select previous channel" +msgstr "" + +msgid "arts/culture (without music, general)" +msgstr "" + +msgid "arts/culture magazine" +msgstr "" + +msgid "athletics" +msgstr "" + +# +msgid "audio tracks" +msgstr "faixas de audio" + +# +msgid "auto" +msgstr "auto" + +# +#, fuzzy +msgid "automatic" +msgstr "Automatico" + +# +msgid "back" +msgstr "voltar" + +# +msgid "background image" +msgstr "imagem de fundo" + +msgid "ballet" +msgstr "" + +#, python-format +msgid "bc%s" +msgstr "" + +# +msgid "better" +msgstr "melhor" + +# +msgid "black" +msgstr "preto" + +msgid "black & white" +msgstr "" + +# +msgid "blacklist" +msgstr "Lista negra" + +# +msgid "blue" +msgstr "Azul" + +msgid "broadcasting/press" +msgstr "" + +# +#, fuzzy +msgid "by date" +msgstr "ordenar por data" + +msgid "cartoon/puppets" +msgstr "" + +msgid "center" +msgstr "centro" + +msgid "centered" +msgstr "" + +msgid "centered, wrapped" +msgstr "" + +# +msgid "chapters" +msgstr "capítulos" + +msgid "childrens's/youth program (general)" +msgstr "" + +# +msgid "circular left" +msgstr "circular esquerda" + +# +msgid "circular right" +msgstr "circular direita" + +msgid "comedy" +msgstr "" + +# +msgid "complex" +msgstr "complexo" + +# +msgid "config menu" +msgstr "Menu de configuração" + +# +msgid "confirmed" +msgstr "confimado" + +# +msgid "connected" +msgstr "conectado" + +# +msgid "continue" +msgstr "continuar" + +msgid "cooking" +msgstr "" + +# +msgid "copy to bouquets" +msgstr "copiar para bouquets" + +# +msgid "create directory" +msgstr "Criar pasta" + +#, python-format +msgid "currently installed image: %s" +msgstr "imagem instalada de momento: %s" + +# +msgid "daily" +msgstr "diário" + +# +msgid "day" +msgstr "dia" + +# +#, fuzzy +msgid "default" +msgstr "Padrão" + +# +msgid "delete cut" +msgstr "eliminar corte" + +msgid "delete..." +msgstr "" + +msgid "descramble and record ecm" +msgstr " desencriptar e gravar ecm" + +msgid "detective/thriller" +msgstr "" + +# +msgid "disable" +msgstr "desactivar" + +# +msgid "disable move mode" +msgstr "desactivar modo deslocar" + +# +msgid "disabled" +msgstr "desactivar" + +# +msgid "disconnected" +msgstr "desconectado" + +msgid "discussion/interview/debate" +msgstr "" + +# +msgid "do nothing" +msgstr "espere" + +msgid "documentary" +msgstr "" + +msgid "don't descramble, record ecm" +msgstr "não desencriptar, gravar ecm" + +# +msgid "done!" +msgstr "concluido!" + +msgid "east" +msgstr "este" + +msgid "economics/social advisory" +msgstr "" + +# +msgid "edit alternatives" +msgstr "editar alternativas" + +msgid "education/science/factual topics (general)" +msgstr "" + +# +msgid "empty" +msgstr "vazio" + +# +msgid "enable" +msgstr "activar" + +# +msgid "enable bouquet edit" +msgstr "activar a edição dos bouquets" + +# +msgid "enable favourite edit" +msgstr "activar a edição dos favoritos" + +# +msgid "enable move mode" +msgstr "activar modo deslocar" + +# +msgid "enabled" +msgstr "activo" + +# +msgid "end alternatives edit" +msgstr "terminar edições alternativas" + +# +msgid "end bouquet edit" +msgstr "terminar edição de bouquets" + +# +msgid "end cut here" +msgstr "terminar corte aqui" + +# +msgid "end favourites edit" +msgstr "Terminar edição de favoritos" + +msgid "entertainment (10-16 year old)" +msgstr "" + +msgid "entertainment (6-14 year old)" +msgstr "" + +# +msgid "equal to" +msgstr "igual a" + +msgid "equestrian" +msgstr "" + +# +msgid "exit DVD player or return to file browser" +msgstr "sair do reprodutor de DVD ou voltar à lista de ficheiros" + +msgid "exit movielist" +msgstr "" + +# +msgid "exit network adapter configuration" +msgstr "sair da configuração do network adapter " + +# +msgid "exit networkadapter setup menu" +msgstr "sair do menu de configuração networkadapter" + +msgid "experimental film/video" +msgstr "" + +msgid "false" +msgstr "falso" + +msgid "fashion" +msgstr "" + +# +msgid "fileformats (BMP, PNG, JPG, GIF)" +msgstr "formatos (BMP, PNG, JPG, GIF)" + +# +msgid "filename" +msgstr "nome do ficheiro" + +msgid "film/cinema" +msgstr "" + +msgid "fine arts" +msgstr "" + +# +msgid "fine-tune your display" +msgstr "Ajuste fino o seu Ecrã" + +msgid "fitness & health" +msgstr "" + +# +#, fuzzy +msgid "flat alphabetic" +msgstr "oedenar alfabeticamente" + +#, fuzzy +msgid "flat alphabetic reverse" +msgstr "alfabética invertida" + +msgid "folk/traditional music" +msgstr "" + +msgid "football/soccer" +msgstr "" + +msgid "foreign countries/expeditions" +msgstr "" + +# +msgid "forward to the next chapter" +msgstr "ir para o próximo capítulo" + +# +msgid "free" +msgstr "livre" + +msgid "from" +msgstr "" + +msgid "further education" +msgstr "" + +msgid "game show/quiz/contest" +msgstr "" + +msgid "gardening" +msgstr "" + +# +msgid "go to deep standby" +msgstr "Suspender" + +# +msgid "go to standby" +msgstr "Ir para Standy" + +# +msgid "grab this frame as bitmap" +msgstr "usar este frame como bitmap" + +# +msgid "green" +msgstr "Verde" + +msgid "handicraft" +msgstr "" + +msgid "height" +msgstr "altura" + +# +msgid "help..." +msgstr "ajuda..." + +# +msgid "horizontal" +msgstr "horizontal" + +msgid "information/education/school program" +msgstr "" + +# +msgid "init module" +msgstr "iniciar modulo" + +# +msgid "init modules" +msgstr "modulos de inicio" + +# +msgid "insert mark here" +msgstr "inserir marca" + +msgid "invalid type" +msgstr "tipo inválido" + +msgid "jazz" +msgstr "" + +# +msgid "jump back to the previous title" +msgstr "ir para o título anterior" + +# +msgid "jump forward to the next title" +msgstr "ir para o título seguinte" + +msgid "languages" +msgstr "" + +# +msgid "leave movie player..." +msgstr "Sair do reprodutor de media" + +# +msgid "left" +msgstr "esquerda" + +msgid "left, wrapped" +msgstr "" + +msgid "leisure hobbies (general)" +msgstr "" + +# +msgid "length" +msgstr "comprimento" + +msgid "limit ..., aborting !" +msgstr "limite ..., a abortar !" + +# +msgid "list style compact" +msgstr "estilo de lista compacto" + +# +msgid "list style compact with description" +msgstr "estilo de lista compacto com descrição" + +# +msgid "list style default" +msgstr "estilo da lista normal " + +# +msgid "list style single line" +msgstr "estilo de lista de linha única" + +msgid "literature" +msgstr "" + +msgid "live broadcast" +msgstr "" + +# +msgid "locked" +msgstr "Sintonizado" + +# +msgid "loopthrough to" +msgstr "loopthrough para" + +msgid "magazines/reports/documentary" +msgstr "" + +# +msgid "manual" +msgstr "manual" + +msgid "martial sports" +msgstr "" + +msgid "medicine/physiology/psychology" +msgstr "" + +# +msgid "menu" +msgstr "menu" + +# +msgid "mins" +msgstr "mins" + +# +msgid "minutes" +msgstr "minutos" + +# +msgid "month" +msgstr "mês" + +msgid "motor sport" +msgstr "" + +msgid "motoring" +msgstr "" + +# +msgid "move down to last entry" +msgstr "ir para a ultima entrada" + +# +msgid "move down to next entry" +msgstr "ir para a entrada seguinte" + +# +msgid "move up to first entry" +msgstr "ir para a primeira entrada" + +# +msgid "move up to previous entry" +msgstr "ir para a entrada anterior" + +msgid "movie/drama (general)" +msgstr "" + +# +msgid "multinorm" +msgstr "multinorma" + +msgid "music/ballet/dance (general)" +msgstr "" + +msgid "musical/opera" +msgstr "" + +msgid "nature/animals/environment" +msgstr "" + +# +msgid "never" +msgstr "nunca" + +msgid "new media" +msgstr "" + +msgid "news magazine" +msgstr "" + +msgid "news/current affairs (general)" +msgstr "" + +msgid "news/weather report" +msgstr "" + +# +msgid "no" +msgstr "não" + +# +msgid "no CAId selected" +msgstr "CAId não selecionado" + +# +msgid "no CI slots found" +msgstr "slots CI não encontrados" + +# +msgid "no module found" +msgstr "Nenhum modulo detectado" + +msgid "no storage devices found" +msgstr "despositivos de armazenamento não encontrados " + +# +msgid "none" +msgstr "nenhum" + +msgid "normal" +msgstr "normal" + +# +msgid "not configured" +msgstr "não configurado" + +# +msgid "not locked" +msgstr "Não esta sintonizado" + +msgid "not supported" +msgstr "não suportado" + +# +msgid "not used" +msgstr "não usado" + +# +msgid "nothing connected" +msgstr "Não conectado" + +# +msgid "of a DUAL layer medium used." +msgstr "de uma camada media DUAL usada." + +# +msgid "of a SINGLE layer medium used." +msgstr "de uma camada media SIMPLE usada." + +# +msgid "off" +msgstr "desligado" + +msgid "offset is" +msgstr "o desvio é" + +# +msgid "on" +msgstr "ligado" + +# +msgid "on READ ONLY medium." +msgstr "em SÓ LEITURA medio." + +msgid "on end of movie" +msgstr "" + +# +msgid "once" +msgstr "Uma só vez" + +msgid "only from deep standby" +msgstr "" + +msgid "only from standby" +msgstr "" + +msgid "open EPG..." +msgstr "" + +msgid "open Info..." +msgstr "" + +# +msgid "open nameserver configuration" +msgstr "abrir a configuração do servidor de DNS" + +msgid "original" +msgstr "original" + +msgid "original language" +msgstr "" + +# +msgid "pass" +msgstr "passar" + +msgid "performing arts" +msgstr "" + +msgid "play as picture in picture" +msgstr "reproduzir como PiP" + +msgid "play in mainwindow" +msgstr "reproduzir na janela principal" + +# +msgid "please press OK when ready" +msgstr "Carregue OK quando terminar" + +# +msgid "please wait, loading picture..." +msgstr "Por favor espere, a carregar a imagem" + +msgid "popular culture/traditional arts" +msgstr "" + +msgid "pre-school children's program" +msgstr "" + +msgid "receiver software because updates are available." +msgstr "" + +# +msgid "record" +msgstr "gravar" + +# +msgid "recording..." +msgstr "a gravar..." + +# +msgid "red" +msgstr "Vermelho" + +msgid "religion" +msgstr "" + +msgid "remarkable people" +msgstr "" + +# +msgid "remove after this position" +msgstr "remover depois desta posição" + +# +msgid "remove all alternatives" +msgstr "remover todas alternativas" + +# +msgid "remove all new found flags" +msgstr "remover as novas flags" + +# +msgid "remove before this position" +msgstr "remover antes desta posição" + +# +msgid "remove bookmark" +msgstr "apagar marcador" + +# +msgid "remove directory" +msgstr "apagar pasta" + +# +msgid "remove entry" +msgstr "remover entrada" + +# +msgid "remove from parental protection" +msgstr "remover do controle paternal" + +# +msgid "remove new found flag" +msgstr "remover a nova flag" + +# +msgid "remove selected satellite" +msgstr "apagar o satélite selecionado" + +# +msgid "remove this mark" +msgstr "Remover esta marca" + +msgid "rename entry" +msgstr "" + +# +msgid "repeat playlist" +msgstr "repetir lista de reprodução" + +# +msgid "repeated" +msgstr "repetido" + +msgid "reverse by date" +msgstr "reservar por data" + +# +msgid "rewind to the previous chapter" +msgstr "voltar ao capítulo anterior" + +# +msgid "right" +msgstr "direita" + +msgid "right, wrapped" +msgstr "" + +msgid "rock/pop" +msgstr "" + +msgid "romance" +msgstr "" + +# +msgid "save last directory on exit" +msgstr "memorizar ultima pasta ao sair" + +# +msgid "save playlist on exit" +msgstr "memorizar lista de reprodução ao sair" + +# +msgid "scan state" +msgstr "estado da busca" + +msgid "science fiction/fantasy/horror" +msgstr "" + +# +msgid "second cable of motorized LNB" +msgstr "segundo cabo do LNB motorizado" + +# +msgid "seconds" +msgstr "segundos" + +# +msgid "select" +msgstr "selecionar" + +# +msgid "select CAId's" +msgstr "selecionar CAId's" + +msgid "select EPG..." +msgstr "" + +msgid "select Info..." +msgstr "" + +# +msgid "select menu entry" +msgstr "selecionar entrada de menu" + +# +msgid "select movie" +msgstr "seleccione o filme" + +msgid "select the movie path" +msgstr "" + +msgid "serious music/classic music" +msgstr "" + +msgid "serious/classical/religious/historical movie/drama" +msgstr "" + +msgid "service PIN" +msgstr "serviço PIN" + +msgid "set as startup service" +msgstr "marcar com canal inicial" + +msgid "setup PIN" +msgstr "definir PIN" + +# +msgid "show DVD main menu" +msgstr "mostrar menu de DVD" + +msgid "show all tags" +msgstr "mostrar todas as marcas" + +# +msgid "show alternatives" +msgstr "ver alternativas" + +# +msgid "show event details" +msgstr "Mostrar detalhes do programa" + +msgid "show extended description" +msgstr "" + +msgid "show mediaplayer on mainmenu" +msgstr "mostrar mediaplayer no menu principal" + +msgid "show softwaremanager in setup menu" +msgstr "" + +msgid "show softwaremanager on blue button" +msgstr "" + +msgid "show tag menu" +msgstr "" + +# +msgid "show transponder info" +msgstr "mostrar a info do transponder " + +msgid "show/game show (general)" +msgstr "" + +msgid "shuffle" +msgstr "baralhar" + +# +msgid "shut down" +msgstr "desligar" + +# +msgid "simple" +msgstr "simples" + +# +msgid "skip backward" +msgstr "Retroceder" + +# +msgid "skip forward" +msgstr "Avançar" + +msgid "soap/melodram/folkloric" +msgstr "" + +msgid "social/political issues/economics (general)" +msgstr "" + +msgid "social/spiritual science" +msgstr "" + +msgid "sorting of playlists" +msgstr "ordem de listas de reprodução" + +# +msgid "special characters" +msgstr "caracteres especiais" + +msgid "special events" +msgstr "" + +msgid "special format data DVD (HDTV compatible)" +msgstr "" + +msgid "sports (general)" +msgstr "" + +msgid "sports magazine" +msgstr "" + +# +msgid "standard" +msgstr "standard" + +# +msgid "start cut here" +msgstr "Iniciar o corte aqui" + +# +msgid "start directory" +msgstr "pasta inicial" + +msgid "stepsize" +msgstr "tamanho de passo" + +# +msgid "stereo" +msgstr "Estereo" + +msgid "stop using as startup service" +msgstr "deixar de usar como canal inicial" + +# +msgid "switch to bookmarks" +msgstr "mudar para favoritos" + +# +msgid "switch to filelist" +msgstr "Ver lista de ficheiros" + +# +msgid "switch to the next angle" +msgstr "mudar para o proximo ângulo" + +# +msgid "switch to the next audio track" +msgstr "mudar para a proxima faixa" + +# +msgid "switch to the next subtitle language" +msgstr "mudar para a proxima lingua de legenda" + +msgid "talk show" +msgstr "" + +msgid "team sports" +msgstr "" + +msgid "technology/natural science" +msgstr "" + +# +msgid "template file" +msgstr "ficheiro modelo" + +msgid "tennis/squash" +msgstr "" + +# +msgid "this recording" +msgstr "esta gravção" + +# +msgid "this service is protected by a parental control pin" +msgstr "Este canal está protegido por PIN " + +# +msgid "toggle time, chapter, audio, subtitle info" +msgstr "tempo de alternância, capítulo, áudio, info da legenda" + +msgid "top" +msgstr "topo" + +msgid "tourism/travel" +msgstr "" + +msgid "true" +msgstr "verdadeiro" + +msgid "unavailable" +msgstr "" + +# +msgid "unconfirmed" +msgstr "não confirmado" + +msgid "undefined" +msgstr "" + +# +msgid "unknown" +msgstr "desconhecido" + +# +msgid "unknown service" +msgstr "Desconhecido" + +msgid "unpublished" +msgstr "" + +# +msgid "until standby/restart" +msgstr "até standby/reiniciar" + +# +msgid "user defined" +msgstr "Definido pelo utilizador" + +msgid "variety show" +msgstr "" + +# +msgid "vertical" +msgstr "vertical" + +# +msgid "wait for ci..." +msgstr "espere pela ci..." + +# +msgid "wait for mmi..." +msgstr "espere pelo mmi..." + +# +msgid "waiting" +msgstr "em espera" + +msgid "water sport" +msgstr "" + +# +msgid "weekly" +msgstr "Semanal" + +msgid "west" +msgstr "oeste" + +msgid "when PiPzap enabled zap channel down..." +msgstr "" + +msgid "when PiPzap enabled zap channel up..." +msgstr "" + +msgid "white" +msgstr "branco" + +# +msgid "whitelist" +msgstr "Lista Branca" + +msgid "width" +msgstr "largura" + +msgid "winter sport" +msgstr "" + +msgid "wireless network interface" +msgstr "interface de rede sem fios" + +#, python-format +msgid "with %d error" +msgid_plural "with %d errors" +msgstr[0] "" +msgstr[1] "" + +# +msgid "working" +msgstr "a trabalhar" + +# +msgid "yellow" +msgstr "Amarelo" + +# +msgid "yes" +msgstr "Sim" + +# +msgid "yes (keep feeds)" +msgstr "Sim (mantenha os feeds)" + +# +msgid "zap" +msgstr "zap" + +msgid "zap and record" +msgstr "" + +# +msgid "zapped" +msgstr "zapped" + +# +#~ msgid "AA" +#~ msgstr "AA" + +# +#~ msgid "AB" +#~ msgstr "AB" + +#, fuzzy +#~ msgid "Activate PiP" +#~ msgstr "activar PiP" + +#, fuzzy +#~ msgid "Add/remove timer for current event" +#~ msgstr "Adicionar/Remover gravação do evento actual " + +#~ msgid "Adjust HDMI CEC settings" +#~ msgstr "Ajustar opções HDMI CEC" + +# +#, fuzzy +#~ msgid "All satellites" +#~ msgstr "Todos os Satélites" + +# +#~ msgid "Behavior of 'pause' when paused" +#~ msgstr "Comporatmento da pausa, quando pausado" + +# +#~ msgid "Committed DiSEqC command" +#~ msgstr "Comando de DiSEqC comprometido" + +# +#~ msgid "DiSEqC repeats" +#~ msgstr "Repetições DiSEqC" + +#~ msgid "Goto specific data/time" +#~ msgstr "Ir para a data/tempo especificado" + +# +#~ msgid "No satellite frontend found!!" +#~ msgstr "Não encontrou o Satelite." + +#~ msgid "Press '0' to toggle internal/external PiP." +#~ msgstr "Prima '0' para trocar entre PiP interno e externo." + +# +#~ msgid "Remove timer" +#~ msgstr "Remover temporizador" + +# +#~ msgid "Send DiSEqC" +#~ msgstr "Enviar DISEqC" + +# +#, fuzzy +#~ msgid "Switch next channel" +#~ msgstr "proximo canal" + +#~ msgid "Tuning step size" +#~ msgstr "Tamanho do passo de viragem" + +# +#~ msgid "Uncommitted DiSEqC command" +#~ msgstr "Instrução de DiSEqC não permitida" + +# +#~ msgid "Zap back to service before satfinder?" +#~ msgstr "Voltar ao canal antes da busca de satélites?" + +#~ msgid "tuner is not supported" +#~ msgstr "tuner não é suportado" diff --git a/po/pt_BR.po b/po/pt_BR.po new file mode 100644 index 0000000..1bf34aa --- /dev/null +++ b/po/pt_BR.po @@ -0,0 +1,8720 @@ +# Diogo <pingflood@gmail.com>, 2013. +# Frank <franksrviana@gmail.com>, 2012. +# Samuel <samuel_leiro@hotmail.com>, 2012. +msgid "" +msgstr "" +"Project-Id-Version: enigma2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-07-21 19:08+0200\n" +"PO-Revision-Date: 2013-10-20 19:13-0300\n" +"Last-Translator: Diogo <pingflood@gmail.com>\n" +"Language-Team: Traduzido por Frank Viana <franksrviana@gmail.com>\n" +"Language: pt_BR\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Poedit 1.5.4\n" +"X-Poedit-SourceCharset: iso-8859-15\n" + +msgid "" +"\n" +"Advanced options and settings." +msgstr "" +"\n" +"Configurações e opções avançadas." + +msgid "" +"\n" +"After pressing OK, please wait!" +msgstr "" +"\n" +"Após pressionar OK, aguarde..." + +msgid "" +"\n" +"Backup your receiver settings." +msgstr "" +"\n" +"Faça um backup das configurações." + +msgid "" +"\n" +"Edit the upgrade source address." +msgstr "" +"\n" +"Editar o endereço do repositório de atualizações." + +msgid "" +"\n" +"Manage extensions or plugins for your receiver" +msgstr "" +"\n" +"Gerenciador de extensões ou plugins para o receptor" + +msgid "" +"\n" +"Online update of your receiver software." +msgstr "" +"\n" +"Atualização online do software do receptor." + +msgid "" +"\n" +"Press OK on your remote control to continue." +msgstr "" +"\n" +"Pressione OK para continuar." + +msgid "" +"\n" +"Restore your backups by date." +msgstr "" +"\n" +"Restaurar os backups por data." + +msgid "" +"\n" +"Restore your receiver settings." +msgstr "" +"\n" +"Restaurar as configurações do receptor." + +msgid "" +"\n" +"Restore your receiver with a new firmware." +msgstr "" +"\n" +"Restaurar o receptor com um firmware novo." + +msgid "" +"\n" +"Scan for local extensions and install them." +msgstr "" +"\n" +"Buscar e instalar extensões locais." + +msgid "" +"\n" +"Select your backup device.\n" +"Current device: " +msgstr "" +"\n" +"Selecione o dispositivo para backup.\n" +"Dispositivo atual: " + +msgid "" +"\n" +"View, install and remove available or installed packages." +msgstr "" +"\n" +"Ver, instalar e remover pacotes instalados ou disponíveis." + +msgid " (PiP)" +msgstr "" + +msgid " (Radio)" +msgstr " (Rádio)" + +msgid " (TV)" +msgstr "" + +msgid " (disabled)" +msgstr "" + +msgid " (higher than any auto)" +msgstr "" + +msgid " (higher than rotor any auto)" +msgstr "" + +msgid " (lower than any auto)" +msgstr "" + +msgid " extensions." +msgstr "extensões." + +msgid " ms" +msgstr "" + +msgid " packages selected." +msgstr "pacotes selecionados." + +msgid " updates available." +msgstr "atualizações disponíveis." + +#. TRANSLATORS: short time representation hour:minute +#, python-format +msgid "%2d:%02d" +msgstr "" + +#. TRANSLATORS: full time representation hour:minute:seconds +#, python-format +msgid "%2d:%02d:%02d" +msgstr "" + +msgid "%A %d %B" +msgstr "" + +#. TRANSLATORS: long date representations dayname daynum monthname in strftime() format! See 'man strftime' +msgid "%A %e %B" +msgstr "%A, %e de %B" + +#. TRANSLATORS: full date representation dayname daynum monthname year in strftime() format! See 'man strftime' +msgid "%A %e %B %Y" +msgstr "%A, %e de %B de %Y" + +msgid "%H:%M" +msgstr "" + +#. TRANSLATORS: short date representation short dayname daynum short monthname in strftime() format! See 'man strftime' +msgid "%a %e/%m" +msgstr "" + +#. TRANSLATORS: long date representation short dayname daynum short monthname hour:minute in strftime() format! See 'man strftime' +msgid "%a %e/%m %-H:%M" +msgstr "" + +#. TRANSLATORS: Intermediate scanning result, '%d' channel(s) have been found so far +#, python-format +msgid "%d channel found" +msgid_plural "%d channels found" +msgstr[0] "%d canal encontrado" +msgstr[1] "%d canais encontrados" + +#, python-format +msgid "%d file" +msgid_plural "%d files" +msgstr[0] "%d arquivo" +msgstr[1] "%d arquivos" + +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d hora" +msgstr[1] "%d horas" + +#, python-format +msgid "%d job is running in the background!" +msgid_plural "%d jobs are running in the background!" +msgstr[0] "%d tarefa rodando em segundo plano!" +msgstr[1] "%d tarefas rodando em segundo plano!" + +#, python-format +msgid "%d min" +msgstr "" + +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d minuto" +msgstr[1] "%d minutos" + +#, python-format +msgid "%d minutes" +msgstr "%d minutos" + +#, python-format +msgid "%d pixel wide" +msgid_plural "%d pixels wide" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "%d segundo" +msgstr[1] "%d segundos" + +#, python-format +msgid "%d subdirectory" +msgid_plural "%d subdirectories" +msgstr[0] "%d subdiretório" +msgstr[1] "%d subdiretórios" + +#, python-format +msgid "%d wireless network found!" +msgid_plural "%d wireless networks found!" +msgstr[0] "%d rede sem fio encontrada!" +msgstr[1] "%d redes sem fio encontradas!" + +msgid "%d-%b-%Y %-H:%M" +msgstr "%d-%b-%Y %-H:%M" + +msgid "%d-%m" +msgstr "" + +msgid "%d.%B %Y" +msgstr "" + +#. TRANSLATORS: VFD hour:minute daynum short monthname in strftime() format! See 'man strftime' +msgid "%k:%M %e/%m" +msgstr "" + +#, python-format +msgid "%s %s free disk space" +msgstr "%s %s de espaço livre" + +#, python-format +msgid "%s (%s)\n" +msgstr "" + +#. TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. +#, python-format +msgid "%s is no longer used. Should it be deleted?" +msgstr "%s não é mais usado. Remover?" + +#, python-format +msgid "%s updated package available" +msgid_plural "%s updated packages available" +msgstr[0] "%s atualização disponível" +msgstr[1] "%s atualizações disponíveis" + +#, python-format +msgid "%s%d min" +msgstr "" + +#, python-format +msgid "%s/%s: %s" +msgstr "" + +msgid "(ZAP)" +msgstr "(Assistir)" + +msgid "(empty)" +msgstr "(vazio)" + +msgid "(show optional DVD audio menu)" +msgstr "(exibir menu opcional de áudio do DVD)" + +msgid "* Only available if more than one interface is active." +msgstr "* Disponível apenas se houver mais de uma interface ativa." + +msgid "/s" +msgstr "" + +msgid "0" +msgstr "" + +msgid "1" +msgstr "" + +msgid "1.0" +msgstr "" + +msgid "1.1" +msgstr "" + +msgid "1.2" +msgstr "" + +msgid "12V output" +msgstr "Saída 12V" + +msgid "13 V" +msgstr "" + +msgid "16:10" +msgstr "" + +msgid "16:10 Letterbox" +msgstr "" + +msgid "16:10 PanScan" +msgstr "16:10 PanScan" + +msgid "16:9" +msgstr "" + +msgid "16:9 Letterbox" +msgstr "16:9 Letterbox" + +msgid "16:9 always" +msgstr "16:9 Sempre" + +msgid "18 V" +msgstr "" + +msgid "2" +msgstr "" + +msgid "23.976" +msgstr "" + +msgid "24" +msgstr "" + +msgid "25" +msgstr "" + +msgid "29.97" +msgstr "" + +msgid "3" +msgstr "" + +msgid "30" +msgstr "" + +msgid "3d mode" +msgstr "Modo 3D" + +msgid "4" +msgstr "" + +msgid "4:3" +msgstr "" + +msgid "4:3 Letterbox" +msgstr "" + +msgid "4:3 PanScan" +msgstr "" + +msgid "5" +msgstr "" + +msgid "6" +msgstr "" + +msgid "7" +msgstr "" + +msgid "8" +msgstr "" + +msgid "9" +msgstr "" + +#, python-format +msgid ": %s" +msgstr "" + +msgid "<Current movielist location>" +msgstr "<Diretório atual da lista de gravações>" + +msgid "<Default movie location>" +msgstr "<Diretório padrão das gravações>" + +msgid "<Last timer location>" +msgstr "<Último diretório de gravação>" + +msgid "<unknown>" +msgstr "<Desconhecido>" + +msgid "??" +msgstr "" + +msgid "A" +msgstr "" + +#, python-format +msgid "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" +msgstr "" +"Um arquivo de configuração (%s) foi alterado desde que foi instalado.\n" +"Deseja manter as alterações?" + +#, python-format +msgid "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" +msgstr "" +"Um arquivo de configuração (%s) foi alterado desde que foi instalado.\n" +"Deseja manter as alterações?" + +msgid "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"O temporizador vai colocar o \n" +"receptor em StandBy. Continuar?" + +msgid "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"O temporizador vai desligar \n" +"o receptor. Continuar?" + +msgid "A graphical EPG for all services of an specific bouquet" +msgstr "Um EPG gráfico para os canais de um grupo de favoritos" + +#, python-format +msgid "" +"A record has been started:\n" +"%s" +msgstr "" +"Gravação iniciada:\n" +"%s" + +msgid "" +"A recording is currently running.\n" +"What do you want to do?" +msgstr "" +"Há uma gravação em andamento.\n" +"O que deseja fazer?" + +msgid "A recording is currently running. Please stop the recording before trying to configure the positioner." +msgstr "Uma gravação está em andamento. Pare a gravação antes de tentar configurar o posicionador." + +msgid "A recording is currently running. Please stop the recording before trying to scan." +msgstr "Uma gravação está em andamento. Pare a gravação antes de realizar uma busca." + +msgid "A recording is currently running. Please stop the recording before trying to start the satfinder." +msgstr "Uma gravação está em andamento. Pare a gravação antes de usar o localizador de satélites." + +#, python-format +msgid "A required tool (%s) was not found." +msgstr "Uma ferramenta necessária (%s) não foi encontrada." + +msgid "A search for available updates is currently in progress." +msgstr "Uma busca por atualizações disponíveis está em andamento." + +msgid "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" +msgstr "" +"Há outra interface de rede configurada.\n" +"\n" +"Desativar a outra interface de rede?" + +msgid "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"O temporizador vai colocar o \n" +"receptor em StandBy. Continuar?" + +msgid "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"O temporizador vai desligar \n" +"o receptor. Continuar?" + +msgid "A small overview of the available icon states and actions." +msgstr "Uma pequena amostra dos ícones de estado e ações disponíveis." + +msgid "" +"A timer failed to record!\n" +"Disable TV and try again?\n" +msgstr "" +"Uma gravação agendada falhou!\n" +"Tentar de novo?\n" + +msgid "A/V settings" +msgstr "Áudio e vídeo" + +msgid "AC3/DTS downmix" +msgstr "Downmix AC3/DTS" + +msgid "Abort" +msgstr "Cancelar" + +msgid "About" +msgstr "Sobre" + +msgid "About..." +msgstr "Sobre" + +msgid "Accesspoint:" +msgstr "Ponto de acesso:" + +msgid "Action on long powerbutton press" +msgstr "Ação ao manter pressionado o botão Power" + +msgid "Action on short powerbutton press" +msgstr "Ação ao pressionar o botão Power" + +msgid "Activate Picture in Picture" +msgstr "Ativar PiP" + +msgid "Activate current configuration" +msgstr "Ativar configuração atual" + +msgid "Activate network settings" +msgstr "Ativar configurações de rede" + +msgid "Activate the configured network settings." +msgstr "Ativar a configuração de rede realizada." + +msgid "Adapter settings" +msgstr "Configurar adaptador" + +msgid "Add" +msgstr "Adicionar" + +msgid "Add Bookmark" +msgstr "Adicionar marcador" + +msgid "Add a mark" +msgstr "Adicionar marcador" + +msgid "Add a nameserver entry" +msgstr "Adicionar servidor DNS" + +msgid "Add a new title" +msgstr "Adicionar novo título" + +msgid "Add bookmark" +msgstr "Adicionar favorito" + +msgid "Add directory to playlist" +msgstr "Adicionar diretório à lista de reprodução" + +msgid "Add file to playlist" +msgstr "Adicionar arquivo à lista de reprodução" + +msgid "Add files to playlist" +msgstr "Adicionar arquivos à lista de reprodução" + +msgid "Add more details to the crash log" +msgstr "Adicionar mais detalhes ao relatório de erros" + +msgid "Add provider" +msgstr "Adicionar operadora" + +msgid "Add recording (enter recording duration)" +msgstr "Gravar com duração determinada" + +msgid "Add recording (enter recording endtime)" +msgstr "Gravar com final determinado" + +msgid "Add recording (indefinitely)" +msgstr "Gravar indefinidamente" + +msgid "Add recording (stop after current event)" +msgstr "Gravar até o fim do evento atual" + +msgid "Add service" +msgstr "Adicionar serviço" + +msgid "Add timer" +msgstr "Agendar" + +msgid "Add title" +msgstr "Adicionar título" + +msgid "Add to bouquet" +msgstr "Adicionar ao grupo de favoritos" + +msgid "Add to favourites" +msgstr "Adicionar aos favoritos" + +msgid "Add/remove change timer for current event" +msgstr "" + +msgid "Adjust 3D settings" +msgstr "Ajustar configurações 3D" + +msgid "Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens." +msgstr "Ajuste as cores para que as graduações fiquem visíveis, mas apareçam o mais saturado possível. Quando estiver satisfeito com o resultado pressione OK para sair ou use os botões numéricos para selecionar outras telas." + +msgid "Advanced" +msgstr "" + +msgid "Advanced options" +msgstr "Opções avançadas" + +msgid "Advanced restore" +msgstr "Restauração avançada" + +msgid "Advanced software" +msgstr "Configuração avançada de software" + +msgid "Advanced software plugin" +msgstr "Configuração avançada de plugin" + +msgid "Advanced video enhancement setup" +msgstr "Configuração avançada de imagem" + +msgid "Advanced video setup" +msgstr "Configuração avançada de vídeo" + +msgid "After event" +msgstr "Ao finalizar" + +msgid "Album" +msgstr "Álbum" + +msgid "Alignment of events" +msgstr "Alinhamento de eventos" + +msgid "Alignment of service names" +msgstr "Alinhamento de serviços" + +msgid "All" +msgstr "Todos" + +msgid "All ages" +msgstr "Todas as idades" + +msgid "All satellites 1 (USALS)" +msgstr "" + +msgid "All satellites 2 (USALS)" +msgstr "" + +msgid "All satellites 3 (USALS)" +msgstr "" + +msgid "All satellites 4 (USALS)" +msgstr "" + +msgid "Allocate" +msgstr "Alocar" + +msgid "Allocate unused memory index" +msgstr "Alocar índice de memória não utilizada" + +msgid "Allow quit movieplayer with exit" +msgstr "Allow quit movieplayer with exit" + +msgid "Allow subtitle language to equal audio language" +msgstr "Permitir legenda igual ao áudio" + +msgid "Allow subtitles for hearing impaired" +msgstr "Permitir legendas para deficientes auditivos" + +msgid "Alpha" +msgstr "" + +msgid "Alternative" +msgstr "Adicionar alternativas" + +msgid "Alternative numbering mode" +msgstr "Modo numeração alternativa" + +msgid "Alternative services tuner priority" +msgstr "Prioridade dos serviços do tuner" + +msgid "Always ask" +msgstr "Perguntar sempre" + +msgid "Always hide infobar" +msgstr "" + +msgid "An empty filename is illegal." +msgstr "Um nome de arquivo vazio é inválido." + +msgid "An error occurred while downloading the packetlist. Please try again." +msgstr "Ocorreu um erro ao obter a lista de pacotes. Tente novamente." + +msgid "An unknown error occurred!" +msgstr "Ocorreu um erro desconhecido!" + +msgid "And will put your receiver in standby over " +msgstr "E colocará o receptor em espera após" + +msgid "Any activity" +msgstr "Qualquer atividade" + +msgid "Arabic" +msgstr "Árabe" + +msgid "Are you sure to remove this entry?" +msgstr "" + +msgid "" +"Are you sure you want to activate this network configuration?\n" +"\n" +msgstr "" +"Ativar esta configuração de rede?\n" +"\n" + +msgid "" +"Are you sure you want to delete\n" +"the following backup:\n" +msgstr "Remover o seguinte backup:\n" + +msgid "Are you sure you want to exit this wizard?" +msgstr "Sair do assistente?" + +msgid "" +"Are you sure you want to restart your network interfaces?\n" +"\n" +msgstr "" +"Reiniciar a interface de rede?\n" +"\n" + +#, python-format +msgid "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Restaurar o seguinte backup:\n" +"%s\n" +"O receptor será reiniciado após a restauração!" + +msgid "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Restaurar o backup?\n" +"O receptor será reiniciado após a restauração!" + +msgid "Artist" +msgstr "Artista" + +msgid "Arts/Culture" +msgstr "Arte/Cultura" + +msgid "Ask user" +msgstr "Consultar usuário" + +msgid "Aspect ratio" +msgstr "Proporção" + +msgid "Assigned CAIds:" +msgstr "CAIDS atribuídos:" + +msgid "Assigned services/provider:" +msgstr "Serviços/operadores atribuídos:" + +msgid "At beginning" +msgstr "No início" + +msgid "At end" +msgstr "No fim" + +msgid "Audio" +msgstr "Áudio" + +msgid "Audio PID" +msgstr "Áudio PID" + +msgid "Audio language selection 1" +msgstr "Idioma de áudio 1" + +msgid "Audio language selection 2" +msgstr "Idioma de áudio 2" + +msgid "Audio language selection 3" +msgstr "Idioma de áudio 3" + +msgid "Audio language selection 4" +msgstr "Idioma de áudio 4" + +msgid "Audio options..." +msgstr "Opções de áudio" + +#, python-format +msgid "Audio track (%s) format" +msgstr "Formato da trilha de áudio (%s)" + +#, python-format +msgid "Audio track (%s) language" +msgstr "Idioma da trilha de áudio (%s)" + +msgid "Author: " +msgstr "Autor:" + +msgid "Authoring mode" +msgstr "Modo de criação" + +#. TRANSLATORS: (aspect ratio policy: always try to display as fullscreen, when there is no content (black bars) on left/right, even if this breaks the aspect. +msgid "Auto" +msgstr "" + +msgid "Auto chapter split every ? minutes (0=never)" +msgstr "Dividir capítulos automaticamente (em minutos, 0 = não dividir)" + +msgid "Auto flesh" +msgstr "" + +msgid "Auto focus" +msgstr "Auto-foco" + +msgid "Auto focus commencing ..." +msgstr "Iniciando auto-foco..." + +msgid "Auto language selection" +msgstr "Idioma de mídia" + +msgid "Auto scart switching" +msgstr "Usar auto-scart" + +msgid "Automatic" +msgstr "Automático" + +msgid "Automatic scan" +msgstr "Busca automática" + +msgid "Automatically start timeshift after" +msgstr "Iniciar timeshift automaticamente após" + +msgid "Automatically turn on external subtitles" +msgstr "Ativar automaticamente legendas externas" + +msgid "Available format variables" +msgstr "Formato de variáveis disponíveis" + +msgid "B" +msgstr "" + +msgid "BER" +msgstr "" + +msgid "BER:" +msgstr "" + +msgid "Back" +msgstr "Voltar" + +msgid "Background" +msgstr "Segundo plano" + +msgid "Background color" +msgstr "Cor de fundo" + +msgid "Background delete option" +msgstr "Remover em segundo plano" + +msgid "Background delete speed" +msgstr "Velocidade ao remover em segundo plano" + +msgid "Backup completed." +msgstr "Backup concluído." + +msgid "Backup failed." +msgstr "Falha no backup." + +msgid "Backup is running..." +msgstr "Backup em andamento..." + +msgid "Backup system settings" +msgstr "Salvar configurações do sistema" + +msgid "Band" +msgstr "Banda" + +msgid "Bandwidth" +msgstr "Largura de banda" + +msgid "Basque" +msgstr "Basco" + +msgid "Begin time" +msgstr "Hora de início" + +msgid "Behavior of 'pause and ok' when paused" +msgstr "" + +msgid "Behavior of 0 key in PiP-mode" +msgstr "Comportamento do botão 0 no modo PiP" + +msgid "Behavior when a movie is started" +msgstr "Comportamento ao iniciar um vídeo" + +msgid "Behavior when a movie is stopped" +msgstr "Comportamento ao parar um vídeo" + +msgid "Behavior when a movie reaches the end" +msgstr "Comportamento ao terminar um vídeo" + +msgid "Big PiP" +msgstr "" + +msgid "Bitrate:" +msgstr "" + +msgid "Black screen" +msgstr "Tela preta" + +msgid "Black screen till locked" +msgstr "Tela preta até travar" + +msgid "Block noise reduction" +msgstr "" + +msgid "Blue boost" +msgstr "" + +msgid "Bookmarks" +msgstr "Marcadores" + +msgid "Brightness" +msgstr "Brilho" + +msgid "Bulgarian" +msgstr "Búlgaro" + +msgid "Burn DVD" +msgstr "Gravar DVD" + +#, python-format +msgid "Burn audio track (%s)" +msgstr "Gravar trilha de áudio (%s)" + +msgid "Burn existing image to DVD" +msgstr "Gravar imagem existente para DVD" + +msgid "Burn to DVD" +msgstr "Gravar DVD" + +msgid "Bus: " +msgstr "" + +msgid "By default, SNR will be shown in dB (when supported by the tuner). This setting forces SNR to be shown as a percentage instead." +msgstr "Por padrão, o SNR será exibido em dB (quando suportado pelo tuner). Essa configuração força o SNR a ser exibido como um percentual." + +msgid "C" +msgstr "" + +msgid "C-Band" +msgstr "Banda C" + +msgid "CH" +msgstr "" + +msgid "CI assignment" +msgstr "Definição de CI" + +msgid "CVBS" +msgstr "" + +msgid "Cable" +msgstr "Cabo" + +msgid "Cable Scan" +msgstr "Busca via cabo" + +msgid "Cache thumbnails" +msgstr "Salvar miniaturas" + +msgid "Calculate" +msgstr "Calcular" + +msgid "Calculate all positions" +msgstr "Calcular todas as posições" + +msgid "Calculation complete" +msgstr "Cálculo concluído" + +msgid "Calibrate" +msgstr "Calibrar" + +msgid "Can be used for different fps between external subtitles and video." +msgstr "Pode ser usada para diferentes FPS entre as legendas externas e o vídeo." + +msgid "Cancel" +msgstr "Cancelar" + +msgid "Cannot determine" +msgstr "Impossível determinar" + +msgid "Cannot find any signal ..., aborting !" +msgstr "Sem sinal. Cancelando..." + +msgid "Cannot move files on a different disk or system to the trash can" +msgstr "Impossível mover os arquivos" + +msgid "Cannot move to trash can" +msgstr "Não foi possível mover para a lixeira" + +msgid "Capacity: " +msgstr "Capacidade:" + +msgid "Card" +msgstr "Cartão" + +msgid "Cascade PiP" +msgstr "" + +msgid "Center DVB subtitles" +msgstr "Centralizar legendas DVB" + +msgid "Center time-labels and remove date" +msgstr "Centralizar etiqueta de tempo e remover data" + +msgid "Change bouquets in quickzap" +msgstr "Mudar grupo de favoritos no zap rápido" + +msgid "Change pin code" +msgstr "Alterar a senha" + +msgid "Change recording (duration)" +msgstr "Alterar a duração da gravação" + +msgid "Change recording (endtime)" +msgstr "Alterar o tempo final da gravação" + +msgid "Change repeat and delay settings?" +msgstr "Alterar as configurações de repetição e atraso?" + +msgid "Change service PIN" +msgstr "Alterar senha dos canais" + +msgid "Change service PINs" +msgstr "Alterar senhas do serviço" + +msgid "Change setup PIN" +msgstr "Alterar senha das configurações" + +msgid "Change step size" +msgstr "Alterar tamanho do passo" + +msgid "Change timer" +msgstr "" + +msgid "Changelog" +msgstr "Histórico de atividade" + +msgid "Channel" +msgstr "Canal" + +msgid "Channel list type" +msgstr "Lista de canais" + +msgid "Channel not in services list" +msgstr "O canal não está na lista de serviços" + +msgid "Channel selection" +msgstr "Canais" + +msgid "Channel:" +msgstr "Canal:" + +msgid "Channellist menu" +msgstr "Menu da lista de canais" + +msgid "Chap." +msgstr "Cap." + +msgid "Chapter" +msgstr "Capítulo" + +msgid "Chapter:" +msgstr "Capítulo:" + +msgid "Check" +msgstr "Verificar" + +msgid "Check the internet connection" +msgstr "Verificar conexão de internet" + +msgid "Check the internet connection again" +msgstr "Verificar conexão de internet novamente" + +msgid "Checking filesystem..." +msgstr "Verificando sistema de arquivos..." + +msgid "Checking the internet connection" +msgstr "Verificando a conexão de internet" + +#, python-format +msgid "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" +msgstr "" +"Verificando tuner %d\n" +"Porta DiSEqC %s para %s" + +msgid "Children/Youth" +msgstr "Crianças/Jovens" + +msgid "Choose which tuner to configure." +msgstr "Escolha qual tuner configurar." + +msgid "Circular left" +msgstr "Circular esquerda" + +msgid "Circular right" +msgstr "Circular direita" + +msgid "Cleanup" +msgstr "Limpar" + +msgid "Clear" +msgstr "Remover" + +msgid "Clear before scan" +msgstr "Remover antes de buscar" + +msgid "Clear fixed" +msgstr "" + +msgid "Clear log" +msgstr "Limpar registro" + +msgid "Clear playlist" +msgstr "Limpar lista de reprodução" + +msgid "Close" +msgstr "Fechar" + +msgid "Close PiP on exit" +msgstr "Fechar PiP ao sair" + +msgid "Close title selection" +msgstr "Fechar a seleção de título" + +msgid "Code rate HP" +msgstr "" + +msgid "Code rate LP" +msgstr "" + +msgid "Coderate HP" +msgstr "" + +msgid "Coderate LP" +msgstr "" + +msgid "Collection name" +msgstr "Nome da coleção" + +msgid "Collection settings" +msgstr "Configurar coleção" + +msgid "Color format" +msgstr "Formato da cor" + +msgid "Command execution..." +msgstr "Execução de comando..." + +msgid "Command order" +msgstr "Ordem dos comandos" + +msgid "Common Interface" +msgstr "Interface Comum (CI)" + +msgid "Common Interface assignment" +msgstr "Escolher Interface Comum" + +msgid "Communication" +msgstr "Comunicação" + +msgid "Compact flash" +msgstr "Compact Flash" + +msgid "Complete" +msgstr "Completo" + +msgid "Complex (allows mixing audio tracks and aspects)" +msgstr "Complexo (permite misturar trilhas de áudio e aspectos)" + +msgid "Composition of the recording filenames" +msgstr "Composição do nome das gravações" + +msgid "Configuration mode" +msgstr "Modo de configuração" + +#, python-format +msgid "Configuration mode: %s" +msgstr "Modo de configuração: %s" + +msgid "Configuration..." +msgstr "Configurar" + +msgid "Configure an additional delay to improve external subtitle synchronisation." +msgstr "Configurar um atraso adicional para melhorar a sincronização das legendas externas." + +msgid "Configure an additional delay to improve subtitle synchronisation." +msgstr "Configurar um atraso adicional para melhorar a sincronização das legendas." + +msgid "Configure for how long the infobar will remain visible after activation." +msgstr "Configurar por quanto tempo a barra de informações permanecerá visível." + +msgid "Configure for how many minutes finished events should remain visible in the EPG. Useful when you need information about an event which has just finished, or has been delayed." +msgstr "Configurar por quantos minutos os eventos passados devem permanecer visíveis no EPG. Útil quando você precisar de informações sobre um evento recém finalizado ou atrasado." + +msgid "Configure how recording filenames are constructed." +msgstr "Configurar como os nomes de arquivos de gravação são construídos." + +msgid "Configure how the fan should operate" +msgstr "" + +msgid "Configure if and how crypto icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how long the latest service in the PiP will be remembered." +msgstr "" + +msgid "Configure if and how service type icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how wide columns will be shown in the channel selection list." +msgstr "" + +msgid "Configure if service picons will be shown in the channel selection list." +msgstr "" + +msgid "Configure interface" +msgstr "Configurar interface" + +msgid "Configure nameservers" +msgstr "Configurar servidor DNS" + +msgid "Configure on which devices the background delete option should be used." +msgstr "Configurar em quais dispositivos a opção de remoção em segundo plano deve ser utilizada." + +msgid "Configure remote control type" +msgstr "Configurar o tipo de controle remoto" + +msgid "Configure the DiSEqC mode for this LNB." +msgstr "Configurar o modo de DiSEqC para este LNB." + +msgid "Configure the IP address." +msgstr "Configurar endreço IP." + +msgid "Configure the aspect ratio of the screen." +msgstr "Configurar proporção da tela." + +msgid "Configure the behavior of the 'pause and ok' key when movie playback is already paused." +msgstr "" + +msgid "Configure the behavior when movie playback is manually stopped." +msgstr "Configurar o comportamento quando um vídeo é parado manualmente." + +msgid "Configure the behavior when movie playback is started." +msgstr "Configurar o comportamento ao iniciar um vídeo." + +msgid "Configure the behavior when reaching the end of a movie, during movie playback." +msgstr "Configurar a ação ao terminar um vídeo." + +msgid "Configure the border width of the subtitles. The dark border makes the subtitles easier to read on a light background." +msgstr "Configurar a largura da borda das legendas. A borda escura faz com que as legendas fiquem mais fáceis de ler em um fundo claro." + +msgid "Configure the brightness level of the front panel display during standby." +msgstr "Configurar o brilho do visor do painel frontal durante o modo de espera." + +msgid "Configure the brightness level of the front panel display." +msgstr "Configurar o brilho do visor do painel frontal." + +msgid "Configure the color of the external subtitles, alternative (normal in white, italic in yellow, bold in cyan, underscore in green), white or yellow." +msgstr "Configurar a cor das legendas externas. Alternativa (normal em branco, italico em amarelo, negrito em ciano, sublinhado em verde), branco ou amarelo." + +msgid "Configure the color of the teletext subtitles." +msgstr "Configurar a cor das legendas do teletexto." + +msgid "Configure the contrast level of the front panel display." +msgstr "Configurar o nível de contraste do painel frontal." + +msgid "Configure the cursor behaviour in the channel selection list. When opening the channel selection list you can keep on the current service or already select up/down and you are able to revert the B+/B- buttons." +msgstr "" + +msgid "Configure the duration in hours the receiver should go to standby when the receiver is not controlled." +msgstr "" + +msgid "Configure the duration in minutes for the screensaver." +msgstr "Configurar o intervalo em minutos para a proteção de tela." + +msgid "Configure the duration in minutes for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +msgstr "" + +msgid "Configure the duration when the receiver should go to shut down in case the receiver is in standby mode." +msgstr "Configurar o intervalo em que o receptor deve ser desligado após ter entrado no modo de espera." + +msgid "Configure the first audio language (highest priority)." +msgstr "Configurar o primeiro idioma de áudio (prioridade alta)." + +msgid "Configure the first subtitle language (highest priority)." +msgstr "Configurar o primeiro idioma da legenda (prioridade alta)." + +msgid "Configure the font size of the subtitles." +msgstr "Configurar o tamanho da fonte das legendas." + +msgid "Configure the fourth audio language." +msgstr "Configurar o quarto idioma de áudio." + +msgid "Configure the fourth subtitle language." +msgstr "Configurar o quarto idioma da legenda." + +msgid "Configure the function of a long press on the power button." +msgstr "Configurar a função ao manter pressionado o botão Power." + +msgid "Configure the function of a short press on the power button." +msgstr "Configurar a função ao pressionar brevemente o botão Power." + +msgid "Configure the function of the '0' button do when PIP is active." +msgstr "Configurar a função do botão 0 quando o PiP está ativo." + +msgid "Configure the gateway." +msgstr "Configurar o gateway." + +msgid "Configure the general audio delay of Dolby Digital sound tracks." +msgstr "Configurar o atraso geral das trilhas de áudio Dolby Digital." + +msgid "Configure the general audio delay of stereo sound tracks." +msgstr "Configurar o atraso geral das trilhas de áudio em estéreo." + +msgid "Configure the hard disk drive to go to standby after the specified idle time." +msgstr "Configurar a unidade de disco rígido para ir ao modo de espera após o tempo ocioso especificado." + +msgid "Configure the horizontal alignment of the subtitles." +msgstr "Configurar o alinhamento horizontal das legendas." + +msgid "Configure the initial fast forward speed. When you press the fast forward button, winding will start at this speed." +msgstr "Configurar a velocidade inicial de avanço rápido. Ao pressionar o botão de avanço, começará nesta velocidade." + +msgid "Configure the initial rewind speed. When you press the rewind button, winding will start at this speed." +msgstr "Configurar a velocidade inicial de retorno. Ao pressionar o botão de retorno, começará nesta velocidade." + +msgid "Configure the latitude of your location." +msgstr "Configurar a latitude de sua localização." + +msgid "Configure the longitude of your location." +msgstr "Configurar a longitude de sua localização." + +msgid "Configure the minimum amount of disk space to be available for recordings. When the amount of space drops below this value, deleted items will be removed from the trash can." +msgstr "Configurar o limite mínimo de espaço em disco disponível para as gravações. Quando a quantidade de espaço ultrapassar esse valor, itens serão removidos da lixeira." + +msgid "Configure the nameserver (DNS)." +msgstr "Configurar servidor DNS." + +msgid "Configure the netmask." +msgstr "Configurar máscara de rede." + +msgid "Configure the number of days after which items are automaticaly removed from the trash can." +msgstr "Configurar o número de dias após o qual os itens são automaticamente removidos da lixeira." + +msgid "Configure the number of days old timers are kept before they are automatically removed from the timer list." +msgstr "Configurar o número de dias que temporizadores antigos são mantidos antes de serem automaticamente removidos da lista." + +msgid "Configure the offline decoding delay in milliseconds. The configured delay is observed at each control word parity change." +msgstr "Configurar o atraso da decodificação offline em milissegundos. O atraso configurado é observado em cada mudança de paridade." + +msgid "Configure the possible fast forward speeds." +msgstr "Configurar a velocidade de avanço rápido." + +msgid "Configure the possible rewind speeds." +msgstr "Configurar a velocidade de retorno rápido." + +msgid "Configure the primary EPG language." +msgstr "Configurar o idioma primário do EPG." + +msgid "Configure the refresh rate of the screen." +msgstr "Configurar a taxa de atualização da tela." + +msgid "Configure the screen resolution in PC output mode." +msgstr "Configurar a resolução da tela no modo de saída VGA." + +msgid "Configure the second audio language." +msgstr "Configurar o segundo idioma de áudio." + +msgid "Configure the second subtitle language." +msgstr "Configurar o segundo idioma da legenda." + +msgid "Configure the secondary EPG language." +msgstr "Configurar o idioma secundário do EPG." + +msgid "Configure the sharpness of the video scaling." +msgstr "Configurar a nitidez do vídeo redimensionado." + +msgid "Configure the skip time interval for the '1'/'3' buttons." +msgstr "Configurar o intervalo de tempo para os botões 1/3." + +msgid "Configure the skip time interval for the '4'/'6' buttons." +msgstr "Configurar o intervalo de tempo para os botões 4/6." + +msgid "Configure the skip time interval for the '7'/'9' buttons." +msgstr "Configurar o intervalo de tempo para os botões 7/9." + +msgid "Configure the slow motion speeds." +msgstr "Configurar as velocidades da câmera lenta." + +msgid "Configure the source of the frontend data as shown on the infobars. 'Settings' is as stored on the settings. 'Tuner' is as reported by the tuner." +msgstr "" + +msgid "Configure the speed of the background deletion process. Lower speed will consume less hard disk drive performance." +msgstr "Configurar a velocidade do processo de remoção em segundo plano. Velocidades menores consumirão menos desempenho do disco rígido." + +msgid "Configure the speed of the fan" +msgstr "" + +msgid "Configure the subtitle delay when timing information is not available." +msgstr "Configurar o atraso da legenda quando informações de tempo não estão disponíveis." + +msgid "Configure the third audio language." +msgstr "Configurar o terceiro idioma de áudio." + +msgid "Configure the third subtitle language." +msgstr "Configurar o terceiro idioma da legenda." + +msgid "Configure the transparency of the OSD." +msgstr "Configurar a transparência do OSD." + +msgid "Configure the transparency of the black background of graphical DVB subtitles." +msgstr "Configurar a transparência do fundo preto de legendas DVB gráficas." + +msgid "Configure the tuner mode." +msgstr "Configurar o modo do tuner." + +msgid "Configure the type of status indication icons shown in the movielist." +msgstr "Configurar o tipo de ícones exibidos na lista de vídeos." + +msgid "Configure the vertical position of the subtitles, measured from the bottom of the screen." +msgstr "Configurar a posição vertical das legendas, medido a partir do limite inferior da tela." + +msgid "Configure the video output mode (or resolution)." +msgstr "Configurar o modo de saída de vídeo (ou resolução)." + +msgid "Configure the way in which the receiver changes channels." +msgstr "Configurar a maneira em que as mudanças de canais ocorrem no receptor." + +msgid "Configure where completed timers show up in the timer list." +msgstr "Configurar onde temporizadores concluídos aparecem na lista." + +msgid "Configure whether (and for how long) a second infobar will be shown when OK is pressed twice. The second infobar contains additional information about the current channel." +msgstr "Configurar se (e por quanto tempo) a barra de informações secundária será exibida. A barra de informações secundária contém informações adicionais sobre o canal atual." + +msgid "Configure whether multi channel sound tracks should be downmixed to stereo." +msgstr "Configurar se trilhas de áudio multicanais devem ser mixadas em estéreo." + +msgid "Configure whether or not an icon should be shown when your motorized dish is moving." +msgstr "Configurar se um ícone deve ser exibido quando sua antena motorizada está se movendo." + +msgid "Configure which access level to use for the configuration menu. Expert level gives access to all items." +msgstr "Configurar o nível de acesso para utilizar o menu de configuração. Nível Expert dá acesso a todos os itens." + +msgid "Configure which color format should be used on the SCART output." +msgstr "Configurar qual formato de cor deve ser usado na saída SCART." + +msgid "Configure which tuner for recordings will be preferred, when more than one tuner is available." +msgstr "" + +msgid "Configure which tuner type will be preferred, when the same service is available on different types of tuners." +msgstr "Configurar o tipo de tuner preferido, quando o mesmo serviço estiver disponível em diferentes tipos de tuners." + +msgid "Configure which tuner will be preferred, when more than one tuner is available. If set to 'auto' the system will give priority to the tuner having the lowest number of channels/satellites." +msgstr "Configurar a prioridade do tuner, quando mais de um tuner estiver disponível. Se for definido como automático, o sistema dará prioridade para o tuner que tiver o menor número de canais/satélites." + +msgid "Configure your internal LAN" +msgstr "Configurar rede LAN" + +msgid "Configure your network again" +msgstr "Configurar a rede novamente" + +msgid "Configure your network settings, and press OK to start the scan" +msgstr "Configure a rede e pressione OK para iniciar a busca" + +msgid "Configure your wireless LAN again" +msgstr "Configurar rede sem fio novamente" + +msgid "Configures which video output connector will be used." +msgstr "Configurar qual conector de saída de vídeo será usado." + +msgid "Configuring" +msgstr "Configurando" + +msgid "Conflicting timer" +msgstr "Conflito de temporizador" + +msgid "Connect" +msgstr "Conectar" + +msgid "Connect to a wireless network" +msgstr "Conectar a uma rede sem fio" + +msgid "Connected satellites" +msgstr "" + +msgid "Connected to" +msgstr "Conectado a" + +msgid "Connected!" +msgstr "Conectado!" + +msgid "Constellation" +msgstr "Constelação" + +msgid "Content does not fit on DVD!" +msgstr "O conteúdo não cabe no DVD!" + +msgid "Continue" +msgstr "Continuar" + +msgid "Continue in background" +msgstr "Continuar em segundo plano" + +msgid "Continue playback" +msgstr "Reprodução contínua" + +msgid "Continue playing" +msgstr "Continuar reproduzindo" + +msgid "Continues play (loop)" +msgstr "Reprodução contínua (loop)" + +msgid "Contrast" +msgstr "Contraste" + +msgid "Convert ext3 filesystem to ext4" +msgstr "Converte o sistema de arquivos EXT3 em EXT4" + +msgid "Convert ext3 to ext4" +msgstr "Converter EXT3 em EXT4" + +msgid "Converting ext3 to ext4..." +msgstr "Convertendo EXT3 em EXT4..." + +msgid "Copy" +msgstr "Copiar" + +msgid "Could not connect to receiver .NFI image feed server:" +msgstr "Impossível conectar com o servidor de imagem .NFI" + +msgid "Could not find installed channel list." +msgstr "Não foi possível encontrar a lista de canais instalados." + +msgid "Could not load medium! No disc inserted?" +msgstr "Não foi possível carregar a mídia! O disco foi inserido?" + +msgid "Could not open Picture in Picture" +msgstr "Não foi possível abrir o PiP" + +#, python-format +msgid "Could not record due to conflicting timer %s" +msgstr "Não foi possível gravar devido a um conflito com o temporizador %s" + +#, python-format +msgid "Could not record due to invalid service %s" +msgstr "Não foi possível gravar. Canal inválido %s" + +msgid "Create DVD-ISO" +msgstr "Criar DVD-ISO" + +msgid "Create more detailed crash log" +msgstr "Criar relatório de erros mais detalhados" + +#, python-format +msgid "Creating directory %s failed." +msgstr "Falha ao criar diretório %s ." + +msgid "Creating filesystem" +msgstr "Criando sistema de arquivos" + +msgid "Creating partition" +msgstr "Criando partição" + +msgid "Croatian" +msgstr "Croata" + +msgid "Current CEC address" +msgstr "Endereço atual de CEC" + +msgid "Current device: " +msgstr "Dispositivo atual: " + +msgid "Current event EPG" +msgstr "EPG atual" + +#, python-format +msgid "Current mode: %s \n" +msgstr "" + +msgid "Current settings:" +msgstr "Configurações atuais:" + +msgid "Current transponder" +msgstr "Transponder atual" + +msgid "Current value: " +msgstr "Valor atual: " + +msgid "Current version:" +msgstr "Versão instalada:" + +msgid "Currently installed image" +msgstr "Imagem instalada atualmente" + +msgid "Currently the commit log cannot be retrieved - please try later again" +msgstr "" + +msgid "Custom skip time for '1'/'3' buttons" +msgstr "Tempo de salto para os botões 1/3" + +msgid "Custom skip time for '4'/'6' buttons" +msgstr "Tempo de salto para os botões 4/6" + +msgid "Custom skip time for '7'/'9' buttons" +msgstr "Tempo de salto para os botões 7/9" + +msgid "Customize" +msgstr "Personalizar" + +msgid "Customize channel list cursor behavior" +msgstr "" + +msgid "Cut" +msgstr "Cortar" + +msgid "Cutlist editor..." +msgstr "Editor de cortes" + +msgid "Czech" +msgstr "Checo" + +msgid "D" +msgstr "" + +msgid "DHCP" +msgstr "" + +msgid "DMM advanced" +msgstr "DMM avançado" + +msgid "DMM normal" +msgstr "DMM normal" + +msgid "DUAL LAYER DVD" +msgstr "DVD Dupla Camada" + +msgid "DVB subtitle black transparency" +msgstr "Transparência do preto da legenda DVB" + +msgid "DVB-C" +msgstr "" + +msgid "DVB-C ANNEX C" +msgstr "" + +msgid "DVB-S" +msgstr "" + +msgid "DVB-S2" +msgstr "" + +msgid "DVB-T" +msgstr "" + +msgid "DVB-T2" +msgstr "" + +msgid "DVD data format" +msgstr "Formato do DVD" + +msgid "DVD file browser" +msgstr "Explorador de arquivos do DVD" + +msgid "DVD media toolbox" +msgstr "Ferramentas de mídia do DVD" + +msgid "DVD player" +msgstr "Reprodutor de DVD" + +msgid "DVD titlelist" +msgstr "Lista de títulos do DVD" + +msgid "Danish" +msgstr "Dinamarquês" + +msgid "Date" +msgstr "Data" + +msgid "Date/time input" +msgstr "Informe a data/hora" + +msgid "Deep standby" +msgstr "Desligar" + +msgid "Default" +msgstr "Padrão" + +msgid "Default movie location" +msgstr "Diretório padrão das gravações" + +msgid "Default settings" +msgstr "Configuração padrão" + +msgid "Delay before key repeat starts:" +msgstr "Atraso antes da repetição da tecla:" + +msgid "Delay for external subtitles" +msgstr "Atraso para legendas externas" + +msgid "Delete" +msgstr "Remover" + +msgid "Delete entry" +msgstr "Remover item" + +msgid "Delete failed!" +msgstr "Falha ao remover!" + +msgid "Delete file" +msgstr "Remover arquivo" + +msgid "Delete playlist entry" +msgstr "Remover item da lista de reprodução" + +msgid "Delete saved playlist" +msgstr "Remover lista de reprodução salva" + +msgid "Delete timer" +msgstr "" + +msgid "Delete..." +msgstr "Remover" + +msgid "Deleted" +msgstr "Removido" + +msgid "Deleted items" +msgstr "Itens removidos" + +msgid "Depth" +msgstr "Profundidade" + +msgid "Descramble http streams" +msgstr "Decodificar streams HTTP" + +msgid "Description" +msgstr "Descrição" + +msgid "Deselect" +msgstr "Desmarcar" + +msgid "Details for plugin: " +msgstr "Detalhes do plugin:" + +msgid "Detected HDD:" +msgstr "Disco rígido detectado:" + +msgid "Detected NIMs:" +msgstr "NIMs detectado:" + +msgid "Devicename:" +msgstr "Dispositivo:" + +msgid "Devide" +msgstr "" + +msgid "DiSEqC" +msgstr "" + +msgid "DiSEqC 1.0 command" +msgstr "" + +msgid "DiSEqC 1.1 command" +msgstr "" + +msgid "DiSEqC 1.1 repeats" +msgstr "" + +msgid "DiSEqC A/B" +msgstr "" + +msgid "DiSEqC A/B/C/D" +msgstr "" + +msgid "DiSEqC mode" +msgstr "Protocolo DiSEqC" + +#, python-format +msgid "DiSEqC port %s: %s" +msgstr "Porta DiSEqC %s: %s" + +msgid "DiSEqC-tester settings" +msgstr "Configurar DiSEqC-tester" + +msgid "Dialing:" +msgstr "Discando:" + +msgid "Digital contour removal" +msgstr "Remover contorno digital" + +msgid "Direct playback of linked titles without menu" +msgstr "Reproduzir diretamente títulos sem menu" + +msgid "Directory" +msgstr "Diretório" + +#, python-format +msgid "Directory %s does not exist." +msgstr "O diretório %s não existe." + +#, python-format +msgid "Directory %s nonexistent." +msgstr "O diretório %s não existe." + +msgid "Directory browser" +msgstr "Navegador de arquivos" + +#, python-format +msgid "Directory contains %d file(s) and %d sub-directories.\n" +msgstr "O diretório contém %d arquivo(s) e %d subdiretório(s).\n" + +#, python-format +msgid "Directory contains %s and %s." +msgstr "O diretório contém %s e %s." + +msgid "Disable" +msgstr "Desativar" + +msgid "Disable Picture in Picture" +msgstr "Desativar PiP" + +msgid "Disable background scanning" +msgstr "Desativar busca em segundo plano" + +msgid "Disable timer" +msgstr "Desativar temporizador" + +msgid "Disabled" +msgstr "Desativado" + +msgid "Disconnect" +msgstr "Desconectado" + +msgid "Disk space to reserve for recordings (in GB)" +msgstr "Espaço reservado no disco para gravações (GB) " + +msgid "Display 16:9 content as" +msgstr "Exibir 16:9 como" + +msgid "Display 4:3 content as" +msgstr "Exibir 4:3 como" + +msgid "Display >16:9 content as" +msgstr "Exibir 16:9 como" + +msgid "Display and userinterface" +msgstr "Tela e interface visual" + +msgid "Display message before playing next movie" +msgstr "Exibir mensagem antes do próximo vídeo" + +msgid "Display setup" +msgstr "Painel frontal" + +msgid "Do not change" +msgstr "Não alterar" + +msgid "Do not record" +msgstr "Não gravar" + +msgid "Do nothing" +msgstr "Não fazer nada" + +msgid "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" +msgstr "" +"Verificar o sistema de arquivos?\n" +"Isto pode levar muito tempo!" + +msgid "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" +msgstr "" +"Converter o sistema de arquivos?\n" +"Esta alteração não poderá ser desfeita!" + +#, python-format +msgid "Do you really want to delete %s?" +msgstr "Remover %s?" + +#, python-format +msgid "" +"Do you really want to download\n" +"the plugin \"%s\"?" +msgstr "" +"Instalar o plugin\n" +"\"%s\"?" + +msgid "Do you really want to exit?" +msgstr "Deseja realmente sair?" + +msgid "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" +msgstr "" +"Tem certeza de que deseja FORMATAR o dispositivo?\n" +"Todo o conteúdo do disco será perdido!" + +#, python-format +msgid "" +"Do you really want to remove\n" +"the plugin \"%s\"?" +msgstr "" +"Deseja realmente remover\n" +"o plugin \"%s\"?" + +#, python-format +msgid "Do you really want to remove directory %s from the disk?" +msgstr "Tem certeza de que deseja remover o diretório %s do disco?" + +#, python-format +msgid "Do you really want to remove your bookmark of %s?" +msgstr "Remover o favorito de %s?" + +msgid "Do you want this?" +msgstr "Está certo disto?" + +msgid "Do you want to burn this collection to DVD medium?" +msgstr "Gravar esta coleção para DVD?" + +msgid "Do you want to do a service scan?" +msgstr "Realizar uma busca de canais?" + +msgid "Do you want to do another manual service scan?" +msgstr "Realizar outra busca manual?" + +#, python-format +msgid "Do you want to download the image to %s ?" +msgstr "Realizar o download da imagem para %s ?" + +msgid "Do you want to install a channel list?" +msgstr "Deseja instalar uma lista de canais?" + +msgid "Do you want to install the package:\n" +msgstr "Deseja instalar o pacote:\n" + +msgid "Do you want to play DVD in drive?" +msgstr "Reproduzir o DVD inserido no drive?" + +msgid "Do you want to preview this DVD before burning?" +msgstr "Deseja revisar o DVD antes de gravar?" + +msgid "Do you want to reboot your receiver?" +msgstr "Deseja reiniciar o receptor?" + +msgid "Do you want to remove the package:\n" +msgstr "Deseja remover o pacote:\n" + +msgid "Do you want to restore your settings?" +msgstr "Restaurar um backup de configurações anteriores?" + +msgid "Do you want to resume this playback?" +msgstr "Continuar da posição anterior?" + +#, python-format +msgid "Do you want to update your receiver to %s?" +msgstr "Atualizar o receptor para %s?" + +msgid "Do you want to update your receiver?" +msgstr "Deseja atualizar o receptor?" + +msgid "Do you want to upgrade the package:\n" +msgstr "Deseja atualizar o pacote:\n" + +msgid "Don't stop current event but disable coming events" +msgstr "Não parar o programa atual mas desativar novos eventos" + +#, python-format +msgid "Done - Installed, upgraded or removed %d package (%s)" +msgid_plural "Done - Installed, upgraded or removed %d packages (%s)" +msgstr[0] "Terminado - Instalado, atualizado ou removido %d pacote (%s)" +msgstr[1] "Terminado - Instalados, atualizados ou removidos %d pacotes (%s)" + +msgid "Download" +msgstr "" + +#, python-format +msgid "Download %s from server" +msgstr "Baixar %s do servidor" + +msgid "Download .NFI-files for USB-flasher" +msgstr "Baixar arquivos .NFI para pendrive" + +msgid "Download plugins" +msgstr "Obter plugins" + +msgid "Downloadable new plugins" +msgstr "Lista de plugins" + +msgid "Downloadable plugins" +msgstr "Plugins disponíveis" + +msgid "Downloading" +msgstr "Fazendo o download" + +msgid "Downloading plugin information. Please wait..." +msgstr "Obtendo informações. Aguarde..." + +msgid "Dutch" +msgstr "Holandês" + +msgid "Dynamic contrast" +msgstr "Contraste dinâmico" + +msgid "E" +msgstr "" + +msgid "EPG" +msgstr "" + +msgid "EPG language selection 1" +msgstr "Idioma de EPG 1" + +msgid "EPG language selection 2" +msgstr "Idioma de EPG 2" + +msgid "EPG selection" +msgstr "Selecionar EPG" + +msgid "EPG settings" +msgstr "EPG" + +#, python-format +msgid "ERROR - failed to scan (%s)!" +msgstr "ERRO - Falha na busca (%s)!" + +msgid "East" +msgstr "Leste" + +msgid "East limit set" +msgstr "Definir o limite leste" + +msgid "Edit" +msgstr "Editar" + +msgid "Edit DNS" +msgstr "Configurar DNS" + +msgid "Edit bouquets list" +msgstr "Editar lista de grupos" + +msgid "Edit chapters of current title" +msgstr "Editar capítulos do título atual" + +msgid "Edit services list" +msgstr "Editar lista de canais" + +msgid "Edit settings" +msgstr "Editar configurações" + +msgid "Edit the nameserver configuration of your receiver.\n" +msgstr "Edita a configuração do servidor DNS.\n" + +msgid "Edit the network configuration of your receiver.\n" +msgstr "Edita a configuração de rede do receptor.\n" + +msgid "Edit timer" +msgstr "" + +msgid "Edit title" +msgstr "Editar título" + +msgid "Edit upgrade source url." +msgstr "Editar URL da fonte de atualização." + +msgid "Education/Science/..." +msgstr "Educação/Ciência" + +msgid "Electronic Program Guide" +msgstr "" + +msgid "Enable" +msgstr "Ativar" + +msgid "Enable 'neutrino' style channel select controlling" +msgstr "" + +msgid "Enable 'neutrino' style zap controlling" +msgstr "" + +msgid "Enable 5V for active antenna" +msgstr "Ativar saída de 5V para a antena" + +msgid "Enable EIT EPG" +msgstr "Ativar EPG EIT" + +msgid "Enable MHW EPG" +msgstr "Ativar EPG MHW" + +msgid "Enable Netmed EPG" +msgstr "Ativar EPG Netmed" + +msgid "Enable OK for channel selection" +msgstr "" + +msgid "Enable ViaSat EPG" +msgstr "Ativar EPG Viasat" + +msgid "Enable Virgin EPG" +msgstr "" + +msgid "Enable Wake On LAN" +msgstr "" + +msgid "Enable auto fast scan" +msgstr "" + +msgid "Enable bouquet selection in multi-EPG" +msgstr "Ativar seleção de grupo de favoritos no Multi EPG" + +msgid "Enable freesat EPG" +msgstr "Ativar EPG Freesat" + +msgid "Enable multiple bouquets" +msgstr "Ativar grupos favoritos múltiplos" + +msgid "Enable parental control" +msgstr "Ativar controle de acesso" + +msgid "Enable teletext caching" +msgstr "Ativar cache de teletexto" + +msgid "Enable zapping with CH+/-, B+/-, P+/-" +msgstr "" + +msgid "Enabled" +msgstr "Ativar" + +msgid "Encrypted: " +msgstr "Encriptado:" + +msgid "Encryption" +msgstr "Encriptação" + +msgid "Encryption key" +msgstr "Chave de encriptação" + +msgid "Encryption key type" +msgstr "Tipo de chave de encriptação" + +msgid "Encryption:" +msgstr "Encriptação:" + +msgid "End time" +msgstr "Hora do fim" + +msgid "End time to ignore inactivity sleeptimer" +msgstr "Ignorar o temporizador de inatividade até" + +msgid "End time to ignore shutdown in standby" +msgstr "" + +msgid "English" +msgstr "Inglês" + +msgid "Enigma2 skin selector" +msgstr "Selecionar tema" + +msgid "Enter main menu..." +msgstr "Menu principal" + +msgid "Enter pin code" +msgstr "Informe a senha" + +msgid "Enter the service pin" +msgstr "Informe a senha" + +msgid "Equal to" +msgstr "" + +msgid "Error" +msgstr "Erro" + +msgid "Error code" +msgstr "Código de erro" + +msgid "Error executing plugin" +msgstr "Erro ao executar o plugin" + +#, python-format +msgid "" +"Error: %s\n" +"Retry?" +msgstr "" +"Erro: %s\n" +"Tentar de novo?" + +msgid "Estonian" +msgstr "Estoniano" + +msgid "Ethernet network interface" +msgstr "Interface de rede ethernet" + +msgid "Event font size (relative to skin size)" +msgstr "Tamanho de letra (relativo ao tema)" + +msgid "Event view" +msgstr "Ver evento" + +msgid "Event view menu" +msgstr "Menu de eventos" + +msgid "Everywhere" +msgstr "Em tudo" + +msgid "Exceeds dual layer medium!" +msgstr "É maior que a mídia de dupla face!" + +msgid "Execution finished!!" +msgstr "Pronto!" + +msgid "Execution progress:" +msgstr "Progresso:" + +msgid "Exif" +msgstr "EXIF" + +msgid "Exit" +msgstr "Sair" + +msgid "Exit EPG" +msgstr "Sair do EPG" + +msgid "Exit editor" +msgstr "Sair do editor" + +msgid "Exit input device selection." +msgstr "Sair da seleção de dispositivos de entrada" + +msgid "Exit media player?" +msgstr "Sair do reprodutor de mídia?" + +msgid "Exit mediaplayer" +msgstr "Sair do reprodutor de mídia" + +msgid "Exit movie list" +msgstr "Sair da lista de vídeos" + +msgid "Exit movie player?" +msgstr "Sair do reprodutor de mídia?" + +msgid "Exit nameserver configuration" +msgstr "Sair da configuração do servidor DNS" + +msgid "Exit network interface list" +msgstr "Sair da lista de interface de rede" + +msgid "Exit network wizard" +msgstr "Sair do assistente de rede" + +msgid "Exit the wizard" +msgstr "Sair do assistente" + +msgid "Expert" +msgstr "Expert" + +msgid "Extend sleeptimer 15 minutes" +msgstr "Estender o temporizador por 15 minutos" + +msgid "Extended Software" +msgstr "Software avançado" + +msgid "Extended Software Plugin" +msgstr "Plugin de software avançado" + +msgid "Extended network setup plugin..." +msgstr "Plugin de configuração de rede avançado" + +msgid "Extended setup..." +msgstr "Configurações avançadas" + +msgid "Extensions" +msgstr "Extensões" + +msgid "Extensions management" +msgstr "Gerenciar extensões" + +msgid "External PiP" +msgstr "" + +msgid "External subtitle color" +msgstr "Cor da legenda externa" + +msgid "Extra motor options" +msgstr "" + +msgid "FEC" +msgstr "" + +msgid "FTA" +msgstr "" + +msgid "Factory reset" +msgstr "Padrão de fábrica" + +msgid "Failed" +msgstr "Falha" + +msgid "Failed to write /tmp/positionersetup.log: " +msgstr "Falha na escrita /tmp/positionersetup.log:" + +#, python-format +msgid "Fan %d" +msgstr "Vent. %d" + +#, python-format +msgid "Fan %d PWM" +msgstr "Vent. %d PWM" + +#, python-format +msgid "Fan %d voltage" +msgstr "Vent. %d Tensão" + +msgid "Fan operation" +msgstr "" + +msgid "Fan speed" +msgstr "" + +msgid "Fast" +msgstr "Rápido" + +msgid "Fast DiSEqC" +msgstr "DiSEqC rápida" + +msgid "Fast Scan" +msgstr "Buscar operadora" + +msgid "Fast epoch" +msgstr "Epoch rápido" + +msgid "Fast forward speeds" +msgstr "Velocidades de avanço rápido" + +msgid "Favourites" +msgstr "Favoritos" + +msgid "File appears to be busy.\n" +msgstr "Arquivo está em uso.\n" + +msgid "Filesystem check" +msgstr "Verificar sistema de arquivos" + +msgid "Final position at" +msgstr "Posição final em" + +msgid "Final position at index" +msgstr "Posição final no índice" + +msgid "Fine movement" +msgstr "Ajuste fino" + +msgid "Finetune" +msgstr "Sintonia fina" + +msgid "Finished" +msgstr "Pronto" + +msgid "Finished configuring your network" +msgstr "Configuração de rede finalizada" + +msgid "Finished restarting your network" +msgstr "Rede reiniciada" + +msgid "Finnish" +msgstr "Finlandês" + +msgid "Fixed" +msgstr "Fixo" + +msgid "Flash" +msgstr "" + +msgid "Flashing failed" +msgstr "A gravação falhou" + +msgid "Following tasks will be done after you press OK!" +msgstr "As tarefas irão terminar após pressionar OK!" + +msgid "Format" +msgstr "Formato" + +msgid "Forward volume keys" +msgstr "Avançar teclas de volume" + +msgid "Frame size in full view" +msgstr "Janela em tamanho grande" + +msgid "French" +msgstr "Francês" + +msgid "Frequency" +msgstr "Frequência" + +msgid "Frequency bands" +msgstr "Bandas de frequência" + +msgid "Frequency scan step size(khz)" +msgstr "Passo de frequência (kHz)" + +msgid "Frequency steps" +msgstr "Passos de frequência" + +msgid "Frequency:" +msgstr "Frequência:" + +msgid "Fri" +msgstr "Sex" + +msgid "Friday" +msgstr "Sexta-feira" + +msgid "From :" +msgstr "De:" + +#, python-format +msgid "Frontprocessor version: %d" +msgstr "Versão do processador: %d" + +msgid "Full transparency" +msgstr "Transparência total" + +msgid "Fulview resulution" +msgstr "Resolução de tela cheia" + +msgid "Function of OK button" +msgstr "Função do botão OK" + +msgid "Further Options" +msgstr "" + +msgid "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" +msgstr "" +"Interface necessita reiniciar para aplicar o novo tema.\n" +"Reiniciar agora?" + +msgid "Gateway" +msgstr "Gateway" + +msgid "General AC3 delay" +msgstr "Atraso AC3 geral" + +msgid "General PCM delay" +msgstr "Atraso PCM geral" + +msgid "Genre" +msgstr "Gênero" + +msgid "German" +msgstr "Alemão" + +msgid "Get latest experimental image" +msgstr "Obter imagem experimental mais recente" + +msgid "Get latest release image" +msgstr "Obter imagem mais recente" + +msgid "Getting plugin information. Please wait..." +msgstr "Obtendo informações. Aguarde..." + +msgid "Go down the list" +msgstr "Ir para baixo na lista" + +msgid "Go to first movie or last item" +msgstr "Ir para a primeira gravação ou último item" + +msgid "Go to first movie or top of list" +msgstr "Ir para a primeira gravação ou topo da lista" + +msgid "Go to first service" +msgstr "Ir para o primeiro canal" + +msgid "Go to last service" +msgstr "Ir para o último canal" + +msgid "Go to next event" +msgstr "Ir para o próximo evento" + +msgid "Go to next page of service" +msgstr "Ir para a próxima página de serviços" + +msgid "Go to previous event" +msgstr "Ir para o evento anterior" + +msgid "Go to previous page of service" +msgstr "Ir para a página anterior de serviços" + +msgid "Go up the list" +msgstr "Ir para o topo da lista" + +msgid "Goto" +msgstr "Ir para" + +msgid "Goto 0" +msgstr "Ir para 0" + +msgid "Goto :" +msgstr "Ir para:" + +msgid "Goto X" +msgstr "Ir para X" + +msgid "Goto index position" +msgstr "Ir para a posição de índice" + +msgid "Goto next day of events" +msgstr "Próximo dia de eventos" + +msgid "Goto next page of events" +msgstr "Próxima página de eventos" + +msgid "Goto position" +msgstr "Ir para posição" + +msgid "Goto previous day of events" +msgstr "Dia anterior de eventos" + +msgid "Goto previous page of events" +msgstr "Página anterior de eventos" + +msgid "Goto specific date/time" +msgstr "" + +msgid "GotoX calibration" +msgstr "Calibrar 'Ir para X'" + +msgid "GraphMultiEpg Settings" +msgstr "Configurar Multi EPG Gráfico" + +msgid "Graphical Multi EPG" +msgstr "Multi EPG Gráfico" + +msgid "Greek" +msgstr "Grego" + +msgid "Green boost" +msgstr "" + +msgid "Guard interval" +msgstr "Inervalo de segurança" + +msgid "HD list" +msgstr "Lista HD" + +msgid "HDMI-CEC setup" +msgstr "" + +msgid "Handle standby from TV" +msgstr "Controlar modo de espera a partir da TV" + +msgid "Handle wakeup from TV" +msgstr "Controlar ativação a partir da TV" + +msgid "Hard disk" +msgstr "Disco rígido" + +msgid "Hard disk setup" +msgstr "Configurar disco rígido" + +msgid "Hard disk standby after" +msgstr "Desligar disco rígido após" + +msgid "Harddisk" +msgstr "Disco rígido" + +msgid "Hardware: " +msgstr "" + +msgid "Hebrew" +msgstr "Hebraico" + +msgid "Helps setting up your dish" +msgstr "Ajuda a configurar sua antena" + +msgid "Hidden network" +msgstr "Rede oculta" + +msgid "Hide CI messages" +msgstr "Ocultar mensagens do CI" + +msgid "Hide channel list in radio mode" +msgstr "Esconder lista de canais no modo rádio" + +msgid "Hide known extensions" +msgstr "Ocultar extensões conhecidas." + +msgid "Hide number markers" +msgstr "Ocultar marcadores numéricos" + +msgid "Hide player" +msgstr "Esconder reprodutor" + +msgid "Hide zap errors" +msgstr "Ocultar erros no zapping" + +msgid "Hierarchy info" +msgstr "Informação hierárquica" + +msgid "Hierarchy information" +msgstr "Informação hierárquica" + +msgid "High bitrate support" +msgstr "Suporte para bitrate alto" + +msgid "Hold screen" +msgstr "Manter tela" + +msgid "Hold till locked" +msgstr "Manter até estabilizar" + +msgid "Home" +msgstr "Origem" + +msgid "Horizontal" +msgstr "Horizontal" + +msgid "Horizontal turning speed" +msgstr "Velocidade de rotação horizontal" + +msgid "How many minutes do you want to record?" +msgstr "Gravar por quantos minutos?" + +msgid "Hue" +msgstr "Tom" + +msgid "Hungarian" +msgstr "Húngaro" + +msgid "IP address" +msgstr "Endereço IP" + +msgid "ISO file is too large for this filesystem!" +msgstr "Arquivo ISO muito grande para o sistema de arquivos!" + +msgid "ISO path" +msgstr "Caminho ISO" + +msgid "Icons" +msgstr "Ícones" + +msgid "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." +msgstr "" +"Há algum problema com a conexão SCART.\n" +"Pressione OK para voltar." + +msgid "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." +msgstr "" +"Se a TV tiver ajuste de brilho ou contraste, desligue. Se tiver alguma função como \"ajuste dinâmico\", ajuste para \"padrão\". Ajuste o nível da luz de fundo para um valor a seu gosto. Baixe o contraste da TV o máximo possível.\n" +"Depois ajuste o brilho para o mais baixo possível, mas certifique-se de que as duas escalas de cinza mais baixas sejam visíveis.\n" +"Não se preocupe com os níveis de brilho agora. Serão ajustadas no próximo passo.\n" +"Pressione OK para continuar." + +msgid "Image: " +msgstr "Imagem:" + +msgid "Immediate shutdown" +msgstr "Desligar imediatamente" + +msgid "In order to record a timer, the TV was switched to the recording service!\n" +msgstr "Para iniciar uma gravação agendada, o canal foi alterado!\n" + +msgid "In progress" +msgstr "Em andamento" + +msgid "Inactivity Sleeptimer" +msgstr "Evento pro inatividade" + +msgid "Include AIT in http streams" +msgstr "Incluir AIT nos streams HTTP" + +msgid "Include ECM in http streams" +msgstr "Incluir ECM nos streams HTTP" + +msgid "Include EIT in http streams" +msgstr "Incluir EIT nos streams HTTP" + +msgid "Incorrect type service for PiP!" +msgstr "" + +msgid "Increased voltage" +msgstr "Aumento de tensão" + +msgid "Index" +msgstr "Índice" + +msgid "Index allocated:" +msgstr "Índice alocado:" + +msgid "Info" +msgstr "Informações" + +msgid "Info bar" +msgstr "Barra de informações" + +msgid "Info bar timeout" +msgstr "Tempo da barra de informações" + +msgid "Infobar frontend data source" +msgstr "" + +msgid "Information" +msgstr "Informação" + +msgid "Init" +msgstr "Início" + +msgid "Initial fast forward speed" +msgstr "Velocidade inicial de avançar" + +msgid "Initial location in new timers" +msgstr "Localização inicial para novos agendamentos" + +msgid "Initial lock ratio" +msgstr "" + +msgid "Initial rewind speed" +msgstr "Velocidade inicial de retorno" + +msgid "Initial signal quality" +msgstr "Qualidade de sinal inicial" + +msgid "Initial signal quality:" +msgstr "Qualidade de sinal inicial:" + +msgid "Initialization" +msgstr "Formatar disco rígido" + +msgid "Initialize" +msgstr "Iniciado" + +msgid "Initializing storage device..." +msgstr "Iniciando dispositivo de armazenamento..." + +msgid "Input" +msgstr "Entrada" + +msgid "Input device setup" +msgstr "Configurar dispositivos de entrada" + +msgid "Input devices" +msgstr "Dispositivos de entrada" + +msgid "Install" +msgstr "Instalar" + +msgid "Install a new image with a USB stick" +msgstr "Instalar nova imagem a partir de um pendrive" + +msgid "Install a new image with your web browser" +msgstr "Instalar uma nova imagem com o navegador" + +msgid "Install channel list" +msgstr "Instalar lista de canais" + +msgid "Install extensions" +msgstr "" + +msgid "Install extensions." +msgstr "Instalar extensões." + +msgid "Install local extension" +msgstr "Instalar extensão local" + +msgid "Install picons on" +msgstr "Instalar picons em" + +msgid "Install softcam" +msgstr "Instalar softcam" + +msgid "Installation has completed." +msgstr "Instalação concluída." + +msgid "Installation or removal has completed." +msgstr "Instalação ou desinstalação concluida." + +msgid "Installing" +msgstr "Instalando..." + +msgid "Installing software..." +msgstr "Instalando o software..." + +msgid "Instant recording location" +msgstr "Diretório das gravações instantâneas" + +msgid "Instant recording..." +msgstr "Gravação instantânea" + +msgid "Interface: " +msgstr "Interface de uso" + +msgid "Intermediate" +msgstr "Intermediário" + +msgid "Internal flash" +msgstr "Flash interna" + +msgid "Internal hdd only" +msgstr "Somente disco interno" + +msgid "Interval between keys when repeating:" +msgstr "Intervalo entre teclas quando repetir:" + +#, python-format +msgid "Invalid directory selected: %s" +msgstr "Diretório inválido: %s" + +msgid "Invalid location" +msgstr "Diretório inválido" + +msgid "Invalid transponder data" +msgstr "" + +msgid "Inversion" +msgstr "Inversão" + +msgid "Invert" +msgstr "Inverter" + +msgid "Ipkg" +msgstr "" + +msgid "Is this setting ok?" +msgstr "Usar estas configurações?" + +msgid "Is this video mode ok?" +msgstr "Este modo de vídeo está correto?" + +msgid "Italian" +msgstr "Italiano" + +msgid "Items per page " +msgstr "Itens por página" + +msgid "Items per page for list screen" +msgstr "Itens por página na lista" + +msgid "Job overview" +msgstr "Ver tarefas" + +msgid "Jump to beginning of list" +msgstr "Ir para o início da lista" + +msgid "Jump to end of list" +msgstr "Ir para o fim da lista" + +msgid "Jump to next marked position" +msgstr "Ir para a próxima marca" + +msgid "Jump to previous marked position" +msgstr "Ir para marca anterior" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect) +msgid "Just scale" +msgstr "Modo escala" + +msgid "Keep service" +msgstr "" + +msgid "Kernel version: " +msgstr "Versão do Kernel:" + +msgid "Keyboard" +msgstr "Teclado" + +msgid "Keyboard map" +msgstr "Mapa do teclado" + +msgid "Keyboard setup" +msgstr "Configuração do teclado" + +msgid "LAN adapter" +msgstr "Adaptador LAN" + +msgid "LAN connection" +msgstr "Conexão LAN" + +msgid "LNB" +msgstr "" + +msgid "Language" +msgstr "Idioma" + +msgid "Language selection" +msgstr "Selecione o idioma" + +msgid "Last config" +msgstr "Última configuração" + +msgid "Last speed" +msgstr "Última velocidade" + +msgid "Last upgrade: " +msgstr "Última atualização:" + +msgid "Latest Commits" +msgstr "" + +msgid "Latitude" +msgstr "" + +msgid "Latvian" +msgstr "Letão" + +msgid "Leave DVD player?" +msgstr "Sair do reprodutor de DVD?" + +msgid "Left" +msgstr "Esquerda" + +msgid "Left from servicename" +msgstr "Esquerda do nome do serviço" + +msgid "Leisure hobbies" +msgstr "Lazer" + +#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term. +msgid "Letterbox" +msgstr "" + +msgid "Letterbox zoom" +msgstr "" + +msgid "Limit character set for recording filenames" +msgstr "Limite de caracteres para o nome das gravações" + +msgid "Limit east" +msgstr "Limite leste" + +msgid "Limit the characters that can be used in recording filenames to (7 bit) ascii. This ensures compatibility with operating systems or file systems with limited character sets." +msgstr "Limitar os caracteres que podem ser usados ​​em nomes de gravação a (7 bits) ASCII. Isso garante a compatibilidade com sistemas operacionais, sistemas de arquivos com conjuntos de caracteres limitados." + +msgid "Limit west" +msgstr "Limite oeste" + +msgid "Limits cancelled" +msgstr "Limites cancelados" + +msgid "Limits enabled" +msgstr "Limites ativos" + +msgid "Limits off" +msgstr "Desligar limites" + +msgid "Limits on" +msgstr "Ligar limites" + +msgid "Link quality:" +msgstr "Qualidade de conexão:" + +msgid "Link:" +msgstr "Conexão:" + +msgid "Linked titles with a DVD menu" +msgstr "Corresponder títulos a menu de DVD" + +msgid "List EPG functions..." +msgstr "Listar opções do EPG" + +msgid "List available networks" +msgstr "Listar redes disponíveis" + +msgid "List mode" +msgstr "Lista" + +msgid "List of storage devices" +msgstr "Dispositivos de armazenamento" + +msgid "List type" +msgstr "Listar tipo" + +#, python-format +msgid "List version %d, found %d channel" +msgid_plural "List version %d, found %d channels" +msgstr[0] "Versão de lista %d, encontrado %d canal" +msgstr[1] "Versão de lista %d, encontrados %d canais" + +msgid "Listen to the radio..." +msgstr "Ouvir rádio" + +msgid "Lists reloaded!" +msgstr "" + +msgid "Lithuanian" +msgstr "Lituano" + +msgid "Load" +msgstr "Carregar" + +msgid "Load Length of Movies in Movielist" +msgstr "Carregar o tamanho dos vídeos na lista" + +msgid "Load length of movies in movie list" +msgstr "Carregar o tamanho das gravações" + +msgid "Load playlist" +msgstr "Carregar lista de reprodução" + +msgid "Local network" +msgstr "Rede Local" + +msgid "Location" +msgstr "Caminho" + +msgid "Location for instant recordings" +msgstr "Diretório das gravações instantâneas" + +msgid "Lock ratio" +msgstr "" + +msgid "Lock:" +msgstr "Sinal:" + +msgid "Log results to harddisk" +msgstr "Resultados do relatório para o disco" + +msgid "Long filenames" +msgstr "Nomes longos de arquivos" + +msgid "Long key press" +msgstr "Manter tecla pressionada" + +msgid "Longitude" +msgstr "" + +msgid "Loop through to" +msgstr "" + +msgid "Luxembourgish" +msgstr "Luxemburguês" + +msgid "MMC card" +msgstr "Cartão MMC" + +msgid "MORE" +msgstr "Mais" + +msgid "Main menu" +msgstr "Menu principal" + +msgid "Maintain old EPG data for" +msgstr "Manter EPG antigo (minutos)" + +msgid "Make this mark an 'in' point" +msgstr "Marcar como ponto de entrada" + +msgid "Make this mark an 'out' point" +msgstr "Marcar como ponto de saída" + +msgid "Make this mark just a mark" +msgstr "Somente marcar" + +msgid "Manage extensions" +msgstr "Gerenciar extensões" + +msgid "Manage your receiver's software" +msgstr "Gerenciar o software do receptor" + +msgid "Manual" +msgstr "" + +msgid "Manual Scan" +msgstr "Busca avançada" + +msgid "Manual configuration" +msgstr "Configuração manual" + +msgid "Manual scan" +msgstr "Busca avançada" + +msgid "Manual transponder" +msgstr "Transponder manual" + +msgid "Manufacturer" +msgstr "Fabricante" + +msgid "Margin after recording (minutes)" +msgstr "Margem após gravar (minutos)" + +msgid "Margin before recording (minutes)" +msgstr "Margem antes de gravar (minutos)" + +msgid "Max memory positions" +msgstr "" + +msgid "Max. bitrate: " +msgstr "Bitrate máximo: " + +msgid "Media player" +msgstr "Reprodutor de mídia" + +msgid "Media scanner" +msgstr "Buscar mídia" + +msgid "Medium is not a writeable DVD!" +msgstr "A mídia não é um DVD gravável!" + +msgid "Medium is not empty!" +msgstr "A mídia não está vazia!" + +msgid "Memory" +msgstr "Memória" + +msgid "Memory index" +msgstr "Índice de memória" + +msgid "Menu" +msgstr "Menu" + +msgid "Message" +msgstr "Mensagem" + +msgid "Message..." +msgstr "Mensagem" + +#, python-format +msgid "Minimum age %d years" +msgstr "Classificação: %d anos" + +msgid "Minimum send interval" +msgstr "Intervalo mínimo de envio" + +msgid "Missing " +msgstr "Faltando" + +msgctxt "Satellite configuration mode" +msgid "Mode" +msgstr "Modo" + +msgctxt "Video output mode" +msgid "Mode" +msgstr "Modo" + +msgid "Model: " +msgstr "Modelo:" + +msgid "Modulation" +msgstr "Modulação" + +msgid "Modulator" +msgstr "Modulador" + +msgid "Mon" +msgstr "Seg" + +msgid "Mon-Fri" +msgstr "Seg-Sex" + +msgid "Monday" +msgstr "Segunda-feira" + +msgid "Mosquito noise reduction" +msgstr "" + +msgid "Mount" +msgstr "Montagem" + +msgid "Move" +msgstr "Mover" + +msgid "Move PiP to main picture" +msgstr "Mover PiP para imagem principal" + +msgid "Move Picture in Picture" +msgstr "Mover PiP" + +msgid "Move east" +msgstr "Mover leste" + +msgid "Move to other directory" +msgstr "Mover para outro diretório" + +msgid "Move to position X" +msgstr "Mover para posição X" + +msgid "Move west" +msgstr "Mover oeste" + +msgid "Moved to position 0" +msgstr "Movido para posição 0" + +msgid "Moved to position at index" +msgstr "Movido para a posição de índice" + +msgid "Movement" +msgstr "Movimento" + +msgid "Movie List Configuration" +msgstr "Configurar lista de vídeos" + +msgid "Movie Selection" +msgstr "Selecionar vídeos" + +msgid "Movie list configuration" +msgstr "Configurar lista de vídeos" + +msgid "Movie location" +msgstr "Diretório das gravações" + +msgid "Movie selection" +msgstr "Selecionar vídeos" + +msgid "Movie/Drama" +msgstr "Filme/Drama" + +msgid "Movielist menu" +msgstr "Menu da lista de vídeos" + +msgid "Moving" +msgstr "Movendo..." + +msgid "Moving east ..." +msgstr "Movendo para leste..." + +msgid "Moving to position" +msgstr "Movendo para a posição" + +msgid "Moving west ..." +msgstr "Movendo para oeste..." + +msgid "Multi EPG" +msgstr "" + +msgid "Multi-EPG bouquet selection" +msgstr "Grupos Favoritos Multi EPG" + +msgid "Multimedia" +msgstr "Multimídia" + +msgid "Multiple service support" +msgstr "Suporte para serviços múltiplos" + +msgid "Multiplex" +msgstr "Mux" + +msgid "Multisat" +msgstr "Múltiplos satélites" + +msgid "Multisat all select" +msgstr "" + +msgid "Music/Ballet/Dance" +msgstr "Música/Balé/Dança" + +msgid "Mute" +msgstr "Mudo" + +msgid "N/A" +msgstr "" + +msgid "NEXT" +msgstr "Próximo" + +msgid "NFI image flashing" +msgstr "Flash de imagem NFI" + +msgid "NFI image flashing completed. Press Yellow to Reboot!" +msgstr "Flash de imagem NFI concluído. Pressione Amarelo para reiniciar!" + +msgid "NIM" +msgstr "" + +msgid "NOW" +msgstr "Agora" + +msgid "NTSC" +msgstr "" + +msgid "Name" +msgstr "Nome" + +msgid "Nameserver" +msgstr "Servidor DNS" + +#, python-format +msgid "Nameserver %d" +msgstr "Servidor DNS %d" + +msgid "Nameserver settings" +msgstr "Configurar DNS" + +msgid "Nameserver setup" +msgstr "Configurar DNS" + +msgid "Namespace" +msgstr "" + +msgid "Netmask" +msgstr "Máscara" + +msgid "Network" +msgstr "Rede" + +msgid "Network ID" +msgstr "ID de rede" + +msgid "Network configuration..." +msgstr "Configurar rede" + +msgid "Network mount" +msgstr "Montagem de rede" + +#, python-format +msgid "Network mount %s" +msgstr "Montagem de rede %s" + +msgid "Network name (SSID)" +msgstr "Nome da rede (SSID)" + +msgid "Network scan" +msgstr "Busca de rede (NIT)" + +msgid "Network setup" +msgstr "Configurar rede" + +msgid "Network test" +msgstr "Teste de rede" + +msgid "Network test..." +msgstr "Teste de rede" + +msgid "Network test: " +msgstr "Teste de rede:" + +msgid "Network wizard" +msgstr "Assistente de rede" + +msgid "Network:" +msgstr "Rede:" + +msgid "New" +msgstr "Novo" + +msgid "New PIN" +msgstr "Nova senha" + +msgid "New version:" +msgstr "Nova versão:" + +msgid "News Current Affairs" +msgstr "Notícias atuais" + +msgctxt "button label, 'next screen'" +msgid "Next" +msgstr "Próximo" + +msgctxt "now/next: 'next' event label" +msgid "Next" +msgstr "A seguir" + +msgid "No" +msgstr "Não" + +msgid "No (supported) DVDROM found!" +msgstr "Nenhum DVD suportado encontrado!" + +msgid "No Connection" +msgstr "Sem conexão" + +msgid "No HDD found or HDD not initialized!" +msgstr "Disco rígido não encontrado ou não formatado!" + +msgid "No backup needed" +msgstr "Não fazer backup" + +msgid "No cable tuner found!" +msgstr "Tuner de cabo não encontrado!" + +msgid "" +"No data on transponder!\n" +"(Timeout reading PAT)" +msgstr "" +"Sem dados no transponder!\n" +"(Timeout reading PAT)" + +msgid "No delay" +msgstr "Sem atraso" + +msgid "No description available." +msgstr "Descrição indisponível." + +msgid "No details for this image file" +msgstr "Não há detalhes para este arquivo" + +msgid "No displayable files on this medium found!" +msgstr "Nenhum arquivo compatível foi encontrado!" + +msgid "No event info found, recording indefinitely." +msgstr "Informações do evento indisponíveis. Gravando indefinidamente." + +msgid "No fast winding possible yet.. but you can use the number buttons to skip forward/backward!" +msgstr "Avanço rápido indisponível. Utilize os botões numéricos para avançar/retornar!" + +msgid "No free index available" +msgstr "Nenhum índice disponível." + +msgid "No free tuner!" +msgstr "Nenhum tuner livre!" + +msgid "No network connection available." +msgstr "Nenhuma conexão de rede disponível." + +msgid "No networks found" +msgstr "Nenhuma rede encontrada" + +msgid "No new plugins found" +msgstr "Nenhum plugin novo encontrado" + +msgid "No positioner capable frontend found." +msgstr "Nenhum posicionador encontrado." + +msgid "No satellites configured. Plese check your tuner setup." +msgstr "" + +msgid "No service" +msgstr "Sem serviço" + +msgid "No services/providers selected" +msgstr "Nenhum serviço/operadora selecionado" + +msgid "No standby" +msgstr "Sem StandBy" + +msgid "No suitable sat tuner found!" +msgstr "Nenhum tuner de satélite encontrado!" + +msgid "No tags are set on these movies." +msgstr "Não existem etiquetas para estas gravações." + +msgid "No timeout" +msgstr "Sem timeout" + +msgid "No to all" +msgstr "Não para todos" + +msgid "No transparency" +msgstr "Sem transparência" + +msgid "No tuner is configured for use with a diseqc positioner!" +msgstr "Nenhum tuner configurado para usar posicionador DiSEqC" + +msgid "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Nenhum tuner ativo!\n" +"Configure o tuner antes de iniciar a busca de canais." + +msgid "No updates available" +msgstr "Nenhuma atualização disponível." + +msgid "No updates available. Please try again later." +msgstr "Nenhuma atualização disponível. Tente novamente mais tarde." + +msgid "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" +msgstr "" +"Senha de canais não definida!\n" +"Alterar a senha de canais agora?\n" +"Se escolher 'Não' os canais ficarão desprotegidos!" + +msgid "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" +msgstr "" +"Senha de configurações não definida!\n" +"Alterar a senha de configurações agora?\n" +"Se escolher 'Não' as configurações ficarão desprotegidas!" + +msgid "No wireless networks found! Searching..." +msgstr "Nenhuma rede sem fio encontrada! Buscando..." + +msgid "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." +msgstr "" +"Nenhuma rede local ativa foi encontrada.\n" +"Verifique as conexões e as configurações de rede." + +msgid "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." +msgstr "" +"Nenhuma rede sem fio ativa foi encontrada.\n" +"Verifique se o adaptador é compatível e se a rede está configurada adequadamente." + +msgid "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." +msgstr "" +"Nenhuma rede sem fio ativa foi encontrada.\n" +"Verifique se o adaptador é compatível e se a rede está configurada adequadamente." + +msgid "No, but restart from begin" +msgstr "Não, voltar ao início" + +msgid "No, do nothing." +msgstr "Não fazer nada" + +msgid "No, just start my receiver" +msgstr "Não, apenas iniciar o receptor" + +msgid "No, never" +msgstr "Nunca" + +msgid "None" +msgstr "Nenhum" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right) +msgid "Nonlinear" +msgstr "Não linear" + +msgid "Normal mode" +msgstr "Modo normal" + +msgid "North" +msgstr "Norte" + +msgid "Norwegian" +msgstr "Norueguês" + +msgid "Not associated" +msgstr "Não associado" + +msgid "Not configured" +msgstr "" + +#, python-format +msgid "Not enough disk space. Please free up some disk space and try again. (%d MB required, %d MB available)" +msgstr "Espaço insuficiente no disco. Libere espaço e tente novamente. (%d MB necessário, %d MB disponível)" + +msgid "Nothing connected" +msgstr "" + +msgid "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Nada para buscar!\n" +"Configure o tuner antes de iniciar uma busca." + +msgctxt "now/next: 'now' event label" +msgid "Now" +msgstr "Agora" + +msgid "Now playing" +msgstr "Reproduzindo" + +msgid "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." +msgstr "Agora ajuste o contraste para aumentar o máximo possível o brilho da luz de fundo, mas certifique-se de que consegue notar diferenças entre os dois níveis de brilho mais altos. Pressione OK para continuar" + +msgid "OK" +msgstr "" + +msgid "OK, guide me through the upgrade process" +msgstr "OK, guie-me no processo de atualização" + +msgid "ONID" +msgstr "" + +msgid "OSD name request" +msgstr "" + +msgid "OSD settings" +msgstr "Configurar OSD" + +msgid "OSD transparency" +msgstr "Transparência OSD" + +msgid "Off" +msgstr "Desligado" + +msgid "Offline decode delay (ms)" +msgstr "Atraso da decodificação offline (ms)" + +msgid "Ok" +msgstr "OK" + +msgid "On" +msgstr "Ligado" + +msgid "On end of movie" +msgstr "No fim do vídeo" + +msgid "On end of movie (as menu)" +msgstr "" + +msgid "One" +msgstr "Um" + +msgid "Only extensions." +msgstr "Apenas extensões." + +msgid "Only free scan" +msgstr "Apenas FTA" + +msgid "Open service list" +msgstr "Abrir lista de canais" + +msgid "Open the movie list" +msgstr "Abrir lista de vídeos" + +msgid "Orbital position" +msgstr "Posição orbital" + +msgid "Original" +msgstr "" + +msgid "Other" +msgstr "Outra" + +msgid "Output" +msgstr "Saída" + +msgid "Overwrite configuration files during software upgrade?" +msgstr "Substituir os arquivos de configuração durante a atualização de software?" + +msgid "Overwrite configuration files?" +msgstr "Substituir os arquivos de configuração?" + +msgid "PAL" +msgstr "" + +msgid "PCR PID" +msgstr "" + +msgid "PIDs" +msgstr "" + +msgid "PIN code needed" +msgstr "A senha é necessária" + +msgid "PLP ID" +msgstr "" + +msgid "PMT PID" +msgstr "" + +msgid "Package list update" +msgstr "Atualizando a lista de pacotes." + +msgid "Packet management" +msgstr "Gerenciar pacotes" + +msgid "Packet manager" +msgstr "Gerenciar pacotes" + +#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term +msgid "Pan&scan" +msgstr "Pan & Scan" + +msgid "Parent directory" +msgstr "Diretório acima" + +msgid "Parental control" +msgstr "Controle de acesso" + +msgid "Parental control services editor" +msgstr "Editor de canais do controle de acesso" + +msgid "Parental control setup" +msgstr "Controle de acesso" + +msgid "Parental control type" +msgstr "Tipo de proteção" + +msgid "Password" +msgstr "Senha" + +msgid "Pause" +msgstr "Pausa" + +msgid "Pause movie at end" +msgstr "Pausar vídeo ao terminar" + +msgid "Pause playback" +msgstr "Pausar" + +msgid "Pauze/Continue playback" +msgstr "" + +msgid "Percentage left" +msgstr "Porcentagem à esquerda" + +msgid "Percentage right" +msgstr "Porcentagem à direita" + +msgid "Permanently delete all recordings in the trash can?" +msgstr "Deseja remover permanentemente todas os itens da lixeira?" + +msgid "Permanently remove all deleted items" +msgstr "Limpar lixeira" + +msgid "Persian" +msgstr "Persa" + +msgid "Phone number" +msgstr "Número de telefone" + +msgid "PiP setup" +msgstr "Configurar PiP" + +msgid "Picon" +msgstr "" + +msgid "Picon and service name" +msgstr "Picon e nome do serviço" + +msgid "Picture player" +msgstr "Visualizador de imagens" + +#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term. +msgid "Pillarbox" +msgstr "" + +msgid "Pilot" +msgstr "Piloto" + +msgid "Play" +msgstr "Reproduzir" + +msgid "Play DVD" +msgstr "Reproduzir DVD" + +msgid "Play audio in background" +msgstr "Reproduzir áudio em segundo plano" + +msgid "Play audio-CD..." +msgstr "Reproduzir CD de Áudio" + +msgid "Play back media files" +msgstr "Reproduz arquivos de mídia" + +msgid "Play entry" +msgstr "Reproduzir" + +msgid "Play from next mark or playlist entry" +msgstr "Iniciar na próxima marca ou entrada na lista" + +msgid "Play from previous mark or playlist entry" +msgstr "Iniciar na última marca ou entrada na lista " + +msgid "Play music..." +msgstr "Reproduzir música" + +msgid "Play next" +msgstr "Reproduzir próximo" + +msgid "Play next (return to movie list)" +msgstr "Reproduzir próximo (voltar à lista de vídeos)" + +msgid "Play next (return to previous service)" +msgstr "Reproduzir próximo (voltar ao canal anterior)" + +msgid "Play previous" +msgstr "Reproduzir anterior" + +msgid "Play recorded movies..." +msgstr "Reproduzir vídeos gravados" + +msgid "Please add titles to the compilation." +msgstr "Adicione títulos à compilação" + +msgid "Please change recording endtime" +msgstr "Altere o tempo final da gravação" + +msgid "Please check your network settings!" +msgstr "Verifique as configurações de rede!" + +msgid "Please choose an extension..." +msgstr "Escolha uma extensão" + +msgid "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Configure ou verifique o servidor DNS preenchendo os valores necessários.\n" +"Quando estiver pronto pressione OK." + +msgid "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Configure a conexão de rede preenchendo os valores necessários.\n" +"Quando estiver pronto pressione OK." + +msgid "Please connect your receiver to the internet" +msgstr "Configure a conexão de internet" + +msgid "Please do not change any values unless you know what you are doing!" +msgstr "Não altere os valores se não tiver certeza do que está fazendo!" + +msgid "Please enter a name for the new bouquet" +msgstr "Informe o nome do novo grupo de favoritos" + +msgid "Please enter a name for the new marker" +msgstr "Informe o nome do novo marcador" + +msgid "Please enter a new filename" +msgstr "Informe o nome do novo arquivo" + +msgid "Please enter filename (empty = use current date)" +msgstr "Informe o nome do arquivo (vazio = data atual)" + +msgid "Please enter name of the new directory" +msgstr "Informe o nome do novo diretório" + +msgid "Please enter new name:" +msgstr "Informe o novo nome:" + +msgid "Please enter the correct pin code" +msgstr "Informe a senha" + +msgid "Please enter the old PIN code" +msgstr "Informe a senha antiga" + +msgid "Please follow the instructions on the TV" +msgstr "Siga as instruções na tela" + +msgid "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." +msgstr "Note que a mídia anteriormente selecionada não pôde ser acessada e, portanto, o diretório padrão está sendo usado." + +msgid "Please press OK to continue." +msgstr "Pressione OK para continuar." + +msgid "Please select a default EPG type..." +msgstr "Definir padrão de EPG" + +msgid "Please select a playlist to delete..." +msgstr "Selecione uma lista para remover" + +msgid "Please select a playlist..." +msgstr "Selecione uma lista de reprodução" + +msgid "Please select a sub service..." +msgstr "Selecione um subserviço" + +msgid "Please select a subservice to record..." +msgstr "Selecione um subserviço para gravar" + +msgid "Please select a subservice..." +msgstr "Selecione um subserviço" + +msgid "Please select an NFI file and press green key to flash!" +msgstr "Selecione um arquivo .NFI e pressione Verde para iniciar o a gravação!" + +msgid "Please select medium to be scanned" +msgstr "Selecione o dispositivo para examinar" + +msgid "Please select medium to use as backup location" +msgstr "Selecione um dispositivo para backup" + +msgid "Please select tag to filter..." +msgstr "Selecione o marcador para filtrar" + +msgid "Please select the movie path..." +msgstr "Selecione o diretório de gravações" + +msgid "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Selecione uma interface de rede para conectar à internet.\n" +"\n" +"Pressione OK para continuar." + +msgid "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Escolha a rede sem fio que deseja conectar.\n" +"\n" +"Pressione OK para continuar" + +msgid "Please set up tuner A" +msgstr "Configure o tuner A" + +msgid "Please set up tuner B" +msgstr "Configure o tuner B" + +msgid "Please set up tuner C" +msgstr "Configure o tuner C" + +msgid "Please set up tuner D" +msgstr "Configure o tuner D" + +msgid "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." +msgstr "" +"Use os botões direcionais para mover a janela PiP.\n" +"Pressione bouquet ou CH +/- para redimensionar a janela.\n" +"Pressione OK para voltar ao modo TV ou EXIT para cancelar." + +msgid "Please use the UP and DOWN keys to select your language. Afterwards press the OK button." +msgstr "" +"Use os botões cima/baixo para selecionar o idioma.\n" +"Pressione OK para continuar." + +msgid "Please wait" +msgstr "" + +msgid "Please wait (downloading channel list)" +msgstr "Obtendo lista de canais. Aguarde..." + +msgid "Please wait (downloading softcam)" +msgstr "Obtendo softcam. Aguarde..." + +msgid "Please wait (updating packages)" +msgstr "Atualizando pacotes. Aguarde..." + +msgid "Please wait for activation of your network configuration..." +msgstr "Ativando as configurações de rede. Aguarde..." + +msgid "Please wait while scanning is in progress..." +msgstr "Busca em andamento. Aguarde..." + +msgid "Please wait while we configure your network..." +msgstr "Configurando a rede. Aguarde..." + +msgid "Please wait while we prepare your network interfaces..." +msgstr "Configurando as interfaces de rede. Aguarde..." + +msgid "Please wait while we test your network..." +msgstr "Testando configurações de rede. Aguarde..." + +msgid "Please wait while your network is restarting..." +msgstr "Reiniciando a rede. Aguarde..." + +msgid "Please wait..." +msgstr "Aguarde..." + +msgid "Please wait... Loading list..." +msgstr "Carregando lista. Aguarde..." + +msgid "Plugin browser" +msgstr "Plugins" + +msgid "Plugin manager activity information" +msgstr "Informação de atividade do gerenciador de plugins" + +msgid "Plugin manager help" +msgstr "Ajuda do gerenciador de plugins" + +msgid "Plugins" +msgstr "Plugins" + +msgid "Polarisation" +msgstr "Polarização" + +msgid "Polarisation:" +msgstr "Polarização:" + +msgid "Polarization" +msgstr "Polarização" + +msgid "Polish" +msgstr "Polaco" + +msgid "Port A" +msgstr "Porta A" + +msgid "Port B" +msgstr "Porta B" + +msgid "Port C" +msgstr "Porta C" + +msgid "Port D" +msgstr "Porta D" + +msgid "Portuguese" +msgstr "Português" + +msgid "Position of completed timers in timerlist" +msgstr "Gravações finalizadas na lista" + +msgid "Position stored at index" +msgstr "Posição guardada no índice" + +msgid "Positioner" +msgstr "Posicionador" + +msgid "Positioner (selecting satellites)" +msgstr "" + +msgid "Positioner Setup" +msgstr "Configurar posicionador" + +msgid "Positioner setup" +msgstr "Posicionador DiSEqC" + +msgid "Power threshold in mA" +msgstr "" + +msgid "Predefined transponder" +msgstr "Transponder predefinido" + +msgid "Prefer AC3 track" +msgstr "Preferir AC3" + +msgid "Prefer AC3+ track" +msgstr "" + +msgid "Prefer audio track stored by service" +msgstr "Preferir áudio do canal" + +msgid "Prefer graphical DVB subtitles" +msgstr "Preferir legendas DVB gráficas" + +msgid "Prefer subtitles for hearing impaired" +msgstr "Preferir legendas para deficientes auditivos" + +msgid "Prefer subtitles stored by service" +msgstr "Preferir legendas do canal" + +msgid "Preferred tuner" +msgstr "Tuner prioritário" + +msgid "Preferred tuner for recordings" +msgstr "" + +msgid "Prepare another USB stick for image flashing" +msgstr "Prepare outro pendrive para flash de imagem" + +msgid "Preparing... Please wait" +msgstr "Preparando. Aguarde..." + +msgid "Press '0' to toggle PiP mode" +msgstr "" + +msgid "Press INFO on your remote control for additional information." +msgstr "Pressione Info para informações adicionais." + +msgid "Press MENU on your remote control for additional options." +msgstr "Pressione Menu para opções adicionais." + +msgid "Press OK on your remote control to continue." +msgstr "Pressione OK para continuar." + +msgid "Press OK to activate the selected skin." +msgstr "Pressione OK para ativar o tema selecionado." + +msgid "Press OK to activate the settings." +msgstr "Pressione OK para ativar as configurações." + +msgid "Press OK to edit the settings." +msgstr "Pressione OK para editar as configurações." + +#, python-format +msgid "Press OK to get further details for %s" +msgstr "Pressione OK para mais detalhes de %s" + +msgid "Press OK to scan" +msgstr "Pressione OK para buscar." + +msgid "Press OK to select a provider." +msgstr "Pressione OK para selecionar uma operadora." + +msgid "Press OK to select satellites" +msgstr "" + +msgid "Press OK to select/deselect a CAId." +msgstr "Pressione OK para marcar/desmarcar um CAId." + +msgid "Press OK to start the scan" +msgstr "Pressione OK para buscar." + +msgid "Press OK to toggle the selection" +msgstr "" + +msgid "Press OK to toggle the selection." +msgstr "Pressione OK para alternar a seleção." + +msgid "Press yellow to set this interface as default interface." +msgstr "Pressione Amarelo para definir esta interface como padrão." + +msgctxt "button label, 'previous screen'" +msgid "Prev" +msgstr "Anterior" + +msgid "Preview" +msgstr "Pré-visualizar" + +msgid "Preview menu" +msgstr "Menu de pré-visualização" + +msgid "Preview selected channel" +msgstr "Pré-visualizar canal selecionado" + +msgid "Primary DNS" +msgstr "DNS 1" + +msgid "Priority" +msgstr "Prioridade" + +msgid "Process" +msgstr "Processo" + +msgid "Progress" +msgstr "Barra de progresso" + +msgid "Progress bar left" +msgstr "Progr. peq. (esquerda)" + +msgid "Progress bar right" +msgstr "Progr. peq. (direita)" + +msgid "Properties of current title" +msgstr "Propriedades do título atual" + +msgid "Protect services" +msgstr "Proteger canais" + +msgid "Protect setup" +msgstr "Proteger configurações" + +msgid "Provider" +msgstr "Operadora" + +msgid "Provider to scan" +msgstr "Operadora para buscar" + +msgid "Providers" +msgstr "Operadoras" + +msgid "Put TV in standby" +msgstr "Colocar a TV em espera" + +msgid "Put receiver in standby" +msgstr "Colocar o receptor em espera" + +msgid "Python frontend for /tmp/mmi.socket" +msgstr "Interface Python para /tmp/mmi.socket" + +msgid "Quick" +msgstr "Rápido" + +msgid "Quick zap" +msgstr "Zap rápido" + +msgid "RF output" +msgstr "Conexão RF" + +msgid "RGB" +msgstr "" + +msgid "Radio" +msgstr "Rádio" + +msgid "Ram disk" +msgstr "Disco Ram" + +msgid "Random" +msgstr "Aleatória" + +#, python-format +msgid "Rating defined by broadcaster - %d" +msgstr "Classificação definida na transmissão - %d" + +msgid "Rating undefined" +msgstr "Classificação indefinida" + +msgid "Really close without saving settings?" +msgstr "Sair sem salvar as configurações?" + +msgid "Really delete done timers?" +msgstr "Remover temporizadores concluídos?" + +msgid "Really exit the subservices quickzap?" +msgstr "Deseja realmente sair?" + +msgid "Really reboot now?" +msgstr "Reiniciar agora?" + +msgid "Really restart now?" +msgstr "Reiniciar agora?" + +msgid "Really shutdown now?" +msgstr "Desligar agora?" + +msgid "Really upgrade the frontprocessor and reboot now?" +msgstr "Atualizar o processador e reiniciar agora?" + +msgid "Really upgrade your settop box and reboot now?" +msgstr "Atualizar o receptor e reiniciar agora?" + +msgid "Reboot" +msgstr "Reiniciar receptor" + +msgid "Rec" +msgstr "" + +msgid "Reception settings" +msgstr "Configurar recepção" + +msgid "Record" +msgstr "Gravações" + +#, python-format +msgid "Record time limited due to conflicting timer %s" +msgstr "Tempo de gravação limitado devido a conflito com %s" + +msgid "Recorded files..." +msgstr "Arquivos gravados:" + +msgid "Recording" +msgstr "Gravando..." + +msgid "Recording in progress" +msgstr "Gravação em andamento" + +msgid "Recording paths" +msgstr "Diretórios de gravações" + +msgid "Recording type" +msgstr "Tipo de gravação" + +msgid "Recording(s) are in progress or coming up in few seconds!" +msgstr "Há gravações em andamento ou iniciando nos próximos instantes!" + +msgid "Recordings" +msgstr "Gravações" + +msgid "Recordings always have priority" +msgstr "Gravações têm sempre prioridade" + +msgid "Red button..." +msgstr "Botão vermelho" + +msgid "Reenter new PIN" +msgstr "Repita a nova senha" + +msgid "Refresh rate" +msgstr "Frequência de atualização" + +msgid "Refresh rate selection." +msgstr "Selecionar frequência de atualização." + +msgid "Regard deep standby as standby" +msgstr "Considerar Desligar como StandBy" + +msgid "Relative" +msgstr "Relativo" + +msgid "Reload" +msgstr "Recarregar" + +msgid "Reload black-/white lists" +msgstr "Recarregar lista negra/branca" + +msgid "Reloading bouquets and services..." +msgstr "Recarregando a lista de canais..." + +msgid "Remember last service in PiP" +msgstr "" + +msgid "Remember service PIN" +msgstr "Lembrar senha" + +msgid "Remember these settings for each folder" +msgstr "Lembrar configurações para todos os diretórios" + +msgid "Reminder, you have chosen to save timeshift file." +msgstr "Lembre-se, você escolheu salvar o arquivo do timeshift." + +msgid "Remote control type" +msgstr "Tipo de controle remoto" + +msgid "Removal has completed." +msgstr "Remoção concluída." + +msgid "Remove" +msgstr "Remover" + +msgid "Remove a mark" +msgstr "Remover marca" + +msgid "Remove a nameserver entry" +msgstr "Remover entrada de servidor DNS" + +msgid "Remove bookmark" +msgstr "Remover favorito" + +msgid "Remove completed timers after (days)" +msgstr "Remover gravações concluídas após (dias)" + +msgid "Remove currently selected title" +msgstr "Remover o título atualmente selecionado" + +msgid "Remove items from trash can after (days)" +msgstr "Remover gravações da lixeira após (dias)" + +msgid "Remove plugins" +msgstr "Remover plugins" + +msgid "Remove title" +msgstr "Remover título" + +msgid "Removing" +msgstr "Removendo" + +#, python-format +msgid "Removing directory %s failed. (Maybe not empty.)" +msgstr "A remoção do diretório %s falhou. (Talvez não esteja vazio)" + +msgid "Removing partition table" +msgstr "Removendo tabela de partições" + +msgid "Rename" +msgstr "Renomear" + +msgid "Repeat" +msgstr "Repetir" + +msgid "Repeat type" +msgstr "Repetição" + +msgid "Repeating event currently recording... What do you want to do?" +msgstr "Repetindo o evento em gravação. Continuar?" + +msgid "Repeats" +msgstr "Frequência" + +msgid "Require authentication for http streams" +msgstr "" + +msgid "Required medium type:" +msgstr "Formato de mídia requerido:" + +msgid "Rereading partition table" +msgstr "Ler novamente a tabela de partições" + +msgid "Reserved" +msgstr "Reservado" + +msgid "Reset" +msgstr "Redefinir" + +msgid "Reset and renumerate title names" +msgstr "Redefinir e renumerar os títulos" + +msgid "Reset playback position" +msgstr "Redefinir posição de reprodução" + +msgid "Reset video enhancement settings to system defaults?" +msgstr "Redefinir configurações de imagem para padrão de fábrica?" + +msgid "Reset video enhancement settings to your last configuration?" +msgstr "Redefinir configurações de imagem para configuração anterior?" + +msgid "Resolution" +msgstr "Resolução" + +msgid "Restart" +msgstr "Reiniciar receptor" + +msgid "Restart GUI now?" +msgstr "Reiniciar interface?" + +msgid "Restart enigma" +msgstr "Reiniciar interface" + +msgid "Restart network" +msgstr "Reiniciar rede" + +msgid "Restart test" +msgstr "Reiniciar teste" + +msgid "Restart your network connection and interfaces.\n" +msgstr "Reinicia a conexão e interfaces de rede.\n" + +msgid "Restore" +msgstr "Restaurar" + +msgid "Restore backups" +msgstr "Restaurar backups" + +msgid "Restore is running..." +msgstr "Restauração em andamento..." + +msgid "Restore system settings" +msgstr "Restaurar configurações do sistema" + +msgid "Restoring..." +msgstr "Restaurando..." + +msgid "Resume from last position" +msgstr "Continuar da última posição" + +#, python-format +msgid "Resume position at %s" +msgstr "Continuar a partir de %s" + +#. TRANSLATORS: The string "Resuming playback" flashes for a moment +#. TRANSLATORS: at the start of a movie, when the user has selected +#. TRANSLATORS: "Resume from last position" as start behavior. +#. TRANSLATORS: The purpose is to notify the user that the movie starts +#. TRANSLATORS: in the middle somewhere and not from the beginning. +#. TRANSLATORS: (Some translators seem to have interpreted it as a +#. TRANSLATORS: question or a choice, but it is a statement.) +msgid "Resuming playback" +msgstr "Continuando..." + +msgid "Return to movie list" +msgstr "Voltar à lista de vídeos" + +msgid "Return to previous service" +msgstr "Voltar ao canal anterior" + +msgid "Reverse bouquet buttons" +msgstr "" + +msgid "Reverse list" +msgstr "" + +msgid "Rewind speeds" +msgstr "Velocidades de retorno" + +msgid "Rewrap teletext subtitles" +msgstr "Dividir legendas de teletexto" + +msgid "Right" +msgstr "Direita" + +msgid "Right from servicename" +msgstr "Direita do nome do serviço" + +msgid "Roll-off" +msgstr "" + +msgid "Romanian" +msgstr "Romeno" + +msgid "Root directory" +msgstr "Diretório raiz" + +msgid "Rotor step position:" +msgstr "Posição de passo do motor:" + +msgid "Rotor turning speed" +msgstr "Velocidade de giro do motor" + +msgid "Round start time on" +msgstr "Arredondar o tempo de início em" + +msgid "Russian" +msgstr "Russo" + +msgid "S-Video" +msgstr "" + +msgid "SID" +msgstr "" + +msgid "SINGLE LAYER DVD" +msgstr "DVD Camada Simples" + +msgid "SNR" +msgstr "" + +msgid "SNR:" +msgstr "" + +msgid "SSID:" +msgstr "" + +msgid "Same resolution as skin" +msgstr "Mesma resolução do tema" + +msgid "Sat" +msgstr "Sáb" + +msgid "Satellite" +msgstr "Satélite" + +msgid "Satellite dish setup" +msgstr "Configurar antena" + +msgid "Satellite equipment" +msgstr "Equipamento de satélite" + +msgid "Satellite equipment setup" +msgstr "Configurar receptor de satélite" + +msgid "Satellite longitude:" +msgstr "Longitude do satélite:" + +msgid "Satellites" +msgstr "Satélites" + +msgid "Satfinder" +msgstr "Localizador de satélites" + +msgid "Sats" +msgstr "" + +msgid "Saturation" +msgstr "Saturação" + +msgid "Saturday" +msgstr "Sábado" + +msgid "Save" +msgstr "Salvar" + +msgid "Save playlist" +msgstr "Salvar lista de reprodução" + +msgid "Save timeshift file" +msgstr "Salvar arquivo do timeshift" + +msgid "Save timeshift file in movie directory" +msgstr "Salvar arquivo do timeshift no diretório de vídeos" + +msgid "Scaler sharpness" +msgstr "Nitidez" + +msgid "Scaling mode" +msgstr "Modo de escala" + +msgid "Scan" +msgstr "Buscar" + +msgid "Scan " +msgstr "Buscar " + +#. TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' +#, python-format +msgid "Scan %s" +msgstr "Busca %s" + +#. TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' +#, python-format +msgid "Scan %s band" +msgstr "Busca Banda %s" + +msgid "Scan additional SR" +msgstr "Busca SR adicional" + +msgid "Scan files..." +msgstr "Buscar arquivos" + +msgid "Scan wireless networks" +msgstr "Buscar redes sem fio" + +msgid "Scan your network for wireless access points and connect to them using your selected wireless device.\n" +msgstr "Busca e conecta à pontos de acesso sem fio.\n" + +#, python-format +msgid "Scanning %s..." +msgstr "Buscando %s" + +#. TRANSLATORS: The stb is performing a channel scan, progress percentage is printed in '%d' (and '%%' will show a single '%' symbol) +#, python-format +msgid "Scanning - %d%% completed" +msgid_plural "Scanning - %d%% completed" +msgstr[0] "Buscando: %d%% concluído" +msgstr[1] "Buscando: %d%% concluído" + +#, python-format +msgid "Scanning completed, %d channel found" +msgid_plural "Scanning completed, %d channels found" +msgstr[0] "Busca concluída. %d canal encontrado" +msgstr[1] "Busca concluída. %d canais encontrados" + +msgid "Scanning failed!" +msgstr "A busca falhou!" + +msgid "Scanning..." +msgstr "Buscando..." + +msgid "Scans default lamedbs sorted by satellite with a connected dish positioner" +msgstr "Busca no banco de dados satélites conectados ao posicionador" + +msgid "Search east" +msgstr "Buscar leste" + +msgid "Search west" +msgstr "Buscar oeste" + +msgid "Searching" +msgstr "Buscando" + +msgid "Searching east ..." +msgstr "Buscando a leste..." + +msgid "Searching for available updates. Please wait..." +msgstr "Buscando atualizações disponíveis. Aguarde..." + +msgid "Searching for new installed or removed packages. Please wait..." +msgstr "Buscando pacotes instalados ou removidos. Aguarde..." + +msgid "Searching west ..." +msgstr "Buscando a oeste..." + +msgid "Second cable of motorized LNB" +msgstr "" + +msgid "Secondary DNS" +msgstr "DNS 2" + +msgid "Seek" +msgstr "Busca" + +msgid "Seek backward" +msgstr "Retornar" + +msgid "Seek backward (enter time)" +msgstr "Retornar (inserir tempo)" + +msgid "Seek forward" +msgstr "Avançar" + +msgid "Seek forward (enter time)" +msgstr "Avançar (inserir tempo)" + +msgid "Select" +msgstr "Selecionar" + +msgid "Select CAId" +msgstr "Selecione o CAId" + +msgid "Select HDD" +msgstr "Selecione o disco rígido" + +msgid "Select a bouquet" +msgstr "Selecione um grupo de favoritos" + +msgid "Select a movie" +msgstr "Selecione um vídeo" + +msgid "Select a network adapter" +msgstr "Selecione um adaptador de rede" + +msgid "Select a skin" +msgstr "Selecione um tema" + +msgid "Select a tuner" +msgstr "Selecione um tuner" + +msgid "Select a wireless network" +msgstr "Selecione uma rede sem fio" + +msgid "Select action" +msgstr "" + +#, python-format +msgid "Select action for timer %s:" +msgstr "" + +msgid "Select all" +msgstr "" + +msgid "Select an image to be downloaded" +msgstr "Selecione uma imagem para download" + +msgid "Select audio track" +msgstr "Trilha de áudio" + +msgid "Select backup files" +msgstr "Arquivos de backup" + +msgid "Select backup location" +msgstr "Destino do backup" + +msgid "Select channel to record from" +msgstr "Selecione o canal a ser gravado" + +msgid "Select copy destination for:" +msgstr "Selecione o destino para copiar:" + +msgid "Select default EPG type..." +msgstr "Selecione o tipo padrão de EPG" + +msgid "Select desired image from feed list" +msgstr "Selecione a imagem desejada da lista" + +msgid "Select destination for:" +msgstr "Selecione um destino para:" + +msgid "Select files for backup." +msgstr "Selecione arquivos para backup." + +msgid "Select files/folders to backup" +msgstr "Selecione arquivos/diretórios para backup" + +msgid "Select input device" +msgstr "Selecione o dispositivo de entrada" + +msgid "Select input device." +msgstr "Selecione o dispositivo de entrada." + +msgid "Select interface" +msgstr "Selecione a interface" + +msgid "Select location" +msgstr "Selecione o caminho" + +msgid "Select movie" +msgstr "Selecione um vídeo" + +msgid "Select provider to add..." +msgstr "Selecione a operadora para adicionar" + +msgid "Select refresh rate" +msgstr "Selecione a taxa de atualização" + +msgid "Select satellites" +msgstr "" + +msgid "Select service to add..." +msgstr "Selecione o serviço para adicionar" + +msgid "Select sort method:" +msgstr "" + +msgid "Select target folder" +msgstr "Selecione o diretório de destino" + +msgid "Select the movie path" +msgstr "Selecione o diretório de gravações" + +msgid "Select upgrade source" +msgstr "Servidores de atualizações" + +msgid "Select upgrade source to edit." +msgstr "Selecione a fonte de atualizações para editar" + +msgid "Select video input with up/down buttons" +msgstr "Selecione a entrada de vídeo com os botões de cima/baixo" + +msgid "Select video mode" +msgstr "Selecione o modo de vídeo" + +msgid "Select wireless network" +msgstr "Selecione a rede sem fio" + +msgid "Select your provider, and press OK to start the scan" +msgstr "Selecione a operadora e pressione OK para buscar." + +msgid "Selecting satellites 1 (USALS)" +msgstr "" + +msgid "Selecting satellites 2 (USALS)" +msgstr "" + +msgid "Send DiSEqC only on satellite change" +msgstr "DiSEqC apenas ao mudar satélite" + +msgid "Separate titles with a main menu" +msgstr "Separar títulos com um menu principal " + +msgid "Sequence repeat" +msgstr "Repetir sequência de comandos" + +msgid "Serbian" +msgstr "Sérvio" + +msgid "Service" +msgstr "Canal" + +msgid "Service has been added to the favourites." +msgstr "Adicionado aos favoritos" + +msgid "Service has been added to the selected bouquet." +msgstr "Adicionado ao grupo de favoritos." + +msgid "Service info" +msgstr "Informações do canal" + +msgid "" +"Service invalid!\n" +"(Timeout reading PMT)" +msgstr "" +"Canal inválido!\n" +"(Timeout reading PMT)" + +msgid "Service name" +msgstr "Serviço" + +msgid "" +"Service not found!\n" +"(SID not found in PAT)" +msgstr "" +"Canal não encontrado!\n" +"(SID not found in PAT)" + +msgid "Service reference" +msgstr "Referência" + +msgid "Service scan" +msgstr "Busca de canais" + +msgid "Service searching" +msgstr "Tuner e serviços" + +msgid "Service title mode" +msgstr "" + +msgid "" +"Service unavailable!\n" +"Check tuner configuration!" +msgstr "" +"Serviço indisponível!\n" +"Verifique o tuner!" + +msgid "Services" +msgstr "Serviços" + +msgid "Set default" +msgstr "" + +msgid "Set end time" +msgstr "Definir hora final" + +msgid "Set fixed" +msgstr "Definir fixo" + +msgid "Set fps for external subtitles" +msgstr "Definir FPS das legendas externas" + +msgid "Set interface as default Interface" +msgstr "Definir como interface padrão" + +msgid "Set limits" +msgstr "Definir limites" + +msgid "Set the type of the progress indication in the channel selection screen." +msgstr "Progresso dos eventos na lista de canais." + +msgid "Set time window to 1 hour" +msgstr "Definir intervalo de tempo para 1 hora" + +msgid "Set time window to 2 hours" +msgstr "Definir intervalo de tempo para 2 horas" + +msgid "Set time window to 3 hours" +msgstr "Definir intervalo de tempo para 3 horas" + +msgid "Set time window to 4 hours" +msgstr "Definir intervalo de tempo para 4 horas" + +msgid "Set time window to 5 hours" +msgstr "Definir intervalo de tempo para 5 horas" + +msgid "Set time window to 6 hours" +msgstr "Definir intervalo de tempo para 6 horas" + +msgid "Set voltage and 22KHz" +msgstr "Ativar tensão e 22KHz" + +msgid "Settings" +msgstr "Configurações" + +msgid "Setup" +msgstr "Configurar" + +msgid "Setup menu" +msgstr "Configurações" + +msgid "Setup mode" +msgstr "Modo de configuração" + +msgid "Setup your positioner" +msgstr "Configure o posicionador" + +msgid "Setup your satellite equipment" +msgstr "Configure o receptor de satélite" + +#, python-format +msgid "Shall the USB stick wizard proceed and program the image file %s into flash memory?" +msgstr "Deseja continuar e gravar o arquivo de imagem %s na memoria flash?" + +msgid "Sharpness" +msgstr "Nitidez" + +msgid "Short filenames" +msgstr "Nomes curtos de arquivos" + +msgid "Show EIT now/next in infobar" +msgstr "Exibir EIT agora/próximo na barra de informações" + +msgid "Show EPG for current channel..." +msgstr "EPG do canal atual" + +msgid "Show EPG..." +msgstr "Exibir EPG" + +msgid "Show Games show" +msgstr "Exibir Games Show" + +msgid "Show SNR percentage instead of dB value" +msgstr "Exibir percentual SNR em vez do valor dB" + +msgid "Show VCR scart on main menu" +msgstr "Exibir VCR Scart no menu" + +msgid "Show WLAN status" +msgstr "Exibir o estado da rede sem fio" + +msgid "Show animation while busy" +msgstr "Exibir animação quando ocupado" + +msgid "Show background in radio mode" +msgstr "Exibir fundo no modo de rádio" + +msgid "Show bouquet selection menu" +msgstr "Exibir o menu de seleção de grupo de favoritos" + +msgid "Show busy indicator when the system is busy." +msgstr "Exibir o indicador de ocupado quando o sistema estiver ocupado." + +msgid "Show channel numbers in channel selection" +msgstr "Exibir numeração dos canais na lista de canais" + +msgid "Show columns" +msgstr "" + +msgid "Show crypto icons" +msgstr "" + +msgid "Show crypto info in infobar" +msgstr "Exibir encriptação na barra de informações" + +msgid "Show detailed event info" +msgstr "Exibir informação detalhada do evento" + +msgid "Show event details" +msgstr "Exibir detalhes do evento" + +msgid "Show event-progress in channel selection" +msgstr "Exibir andamento dos eventos na lista de canais" + +msgid "Show extended description" +msgstr "Exibir descrição estendida" + +msgid "Show extensions..." +msgstr "Ver extensões" + +msgid "Show icon for new/unseen items" +msgstr "Exibir ícone para gravações novas" + +msgid "Show in extensions menu" +msgstr "Exibir no menu de extensões" + +msgid "Show info" +msgstr "Exibir informações" + +msgid "Show info line" +msgstr "Exibir linha de informações" + +msgid "Show infobar on channel change" +msgstr "Barra de informações ao mudar de canal" + +msgid "Show infobar on event change" +msgstr "Barra de informações ao mudar o evento" + +msgid "Show infobar on skip forward/backward" +msgstr "Barra de informações ao avançar/retornar" + +msgid "Show latest commits on sourceforge" +msgstr "" + +msgid "Show message when recording starts" +msgstr "Exibir mensagem quando uma gravação iniciar" + +msgid "Show movie lengths in movielist" +msgstr "Exibir tamanho dos vídeos na lista de gravações" + +msgid "Show multi channel EPG" +msgstr "Exibir EPG múltiplo" + +msgid "Show picons in channel list" +msgstr "" + +msgid "Show positioner movement" +msgstr "Exibir movimento do posicionador" + +msgid "Show screensaver" +msgstr "Exibir protetor de tela" + +msgid "Show second infobar" +msgstr "Exibir barra de informações secundária" + +msgid "Show service type icons" +msgstr "Exibir ícones do tipo de serviço" + +msgid "Show services beginning with" +msgstr "Exibir canais que comecem por" + +msgid "Show shutdown menu" +msgstr "Exibir menu Desligar" + +msgid "Show single service EPG" +msgstr "Exibir EPG simples" + +msgid "Show status icons in Movielist" +msgstr "Exibir ícones de estado na lista de vídeos" + +msgid "Show status icons in movie list" +msgstr "Exibir ícones de estado na lista" + +msgid "Show status icons in movielist" +msgstr "Exibir ícones de estado na lista de gravações" + +msgid "Show tag menu" +msgstr "Exibir menu de marcas" + +msgid "Show the radio player..." +msgstr "Reprodutor de rádio" + +msgid "Show the tv player..." +msgstr "Reprodutor de TV" + +msgid "Show warning when timeshift is stopped" +msgstr "Exibir aviso ao parar o timeshift" + +msgid "Shows the state of your wireless LAN connection.\n" +msgstr "Exibe o estado da rede sem fio.\n" + +msgid "Shuffle playlist" +msgstr "Modo aleatório" + +msgid "Shutdown" +msgstr "Desligar" + +msgid "Shutdown when in Standby" +msgstr "Desligar quando em espera" + +msgid "Side by side" +msgstr "Lado a lado" + +msgid "Signal OK, proceeding" +msgstr "Sinal OK. Procedendo..." + +msgid "Signal quality" +msgstr "Qualidade do sinal" + +msgid "Signal strength:" +msgstr "Força do sinal:" + +msgid "Signal: " +msgstr "Sinal:" + +msgid "Similar" +msgstr "Similares" + +msgid "Similar broadcasts:" +msgstr "Programas similares:" + +msgid "Simple" +msgstr "Simples" + +msgid "Simple titleset (compatibility for legacy players)" +msgstr "Título simples (compatibilidade com reprodutores antigos)" + +msgid "Single" +msgstr "Um satélite" + +msgid "Single EPG" +msgstr "EPG simples" + +msgid "Single satellite" +msgstr "Satélite" + +msgid "Single step (GOP)" +msgstr "" + +msgid "Single transponder" +msgstr "Transponder" + +msgid "Site latitude" +msgstr "Latitude local" + +msgid "Site longitude" +msgstr "Longitude local" + +msgid "Skin" +msgstr "Temas" + +msgid "Skins" +msgstr "Temas" + +msgid "Skip empty services" +msgstr "Saltar canais vazios" + +msgid "Skip internet connection check (disables automatic package installation)" +msgstr "Não testar (desativa instalação automática de pacotes)" + +msgid "Sleep timer" +msgstr "Temporizador" + +msgid "SleepTimer Configuration" +msgstr "Configurar temporizador" + +msgid "Sleeptimer" +msgstr "Temporizador" + +msgid "Slide picture in loop" +msgstr "Repetir slide de imagens" + +msgid "Slide show interval (sec.)" +msgstr "Intervalo na troca de imagens (seg)" + +#, python-format +msgid "Slot %d" +msgstr "" + +msgid "Slovak" +msgstr "Eslovaco" + +msgid "Slovenian" +msgstr "Esloveno" + +msgid "Slow" +msgstr "Lento" + +msgid "Slow motion speeds" +msgstr "Velocidades da câmera lenta" + +msgid "Small progress" +msgstr "Bar. Progr. pequena" + +msgid "Social/Political/Economics" +msgstr "Social/Política/Econômica" + +msgid "SoftCam / CI" +msgstr "" + +msgid "Softcam type" +msgstr "Tipo de softcam" + +msgid "Software" +msgstr "" + +msgid "Software management" +msgstr "Gerenciar software" + +msgid "Software manager setup" +msgstr "Opções de instalação" + +msgid "Software restore" +msgstr "Restaurar software" + +msgid "Software update" +msgstr "Atualizar software" + +msgid "Softwaremanager information" +msgstr "Informação do gerenciador de software" + +msgid "Some plugins are not available:\n" +msgstr "Os seguintes plugins não estão disponíveis:\n" + +#, python-format +msgid "Sorry, %s has not been installed!" +msgstr "%s não foi instalado." + +msgid "Sorry, deleting directories can (for now) only be done through the trash can." +msgstr "Somente é possível remover diretórios através da lixeira." + +msgid "Sorry, no backups found!" +msgstr "Nenhum backup encontrado." + +msgid "Sorry, no details available!" +msgstr "Nenhum detalhe disponível." + +msgid "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." +msgstr "" +"O diretório de backup não está acessível.\n" +"Escolha outro diretório." + +msgid "Sort" +msgstr "Ordenar" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort A-Z" +msgstr "Alfabético" + +msgid "Sort by" +msgstr "" + +msgid "Sort list:" +msgstr "" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort time" +msgstr "Cronológico" + +msgid "Sound" +msgstr "Som" + +msgid "Sound carrier" +msgstr "Portadora" + +msgid "Source request" +msgstr "Requesito de fonte" + +msgid "South" +msgstr "Sul" + +msgid "Spanish" +msgstr "Espanhol" + +msgid "Specify the end time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the end time until the inactivity sleeptimer should be ignored" +msgstr "Defina a hora final em que o temporizador de inatividade deve ser ignorado" + +msgid "Specify the start time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the start time when the inactivity sleeptimer should be ignored" +msgstr "Defina a hora inicial em que o temporizador de inatividade deve ser ignorado" + +msgid "Specify timeframe to ignore inactivity sleeptimer" +msgstr "Somente intervalo" + +msgid "Specify timeframe to ignore the shutdown in standby" +msgstr "" + +msgid "Split preview mode" +msgstr "Modo de pré-visualização dividido" + +msgid "Splitscreen" +msgstr "" + +msgid "Sports" +msgstr "Esportes" + +msgid "Standard" +msgstr "Padrão" + +msgid "Standart list" +msgstr "" + +msgid "Standby" +msgstr "Espera/StandBy" + +msgid "Standby / restart" +msgstr "Desligar" + +msgid "Standby after current event" +msgstr "Em espera após o evento atual" + +#, python-format +msgid "Standby fan %d PWM" +msgstr "Vent. em StandBy %d PWM" + +#, python-format +msgid "Standby fan %d voltage" +msgstr "Tensão do vent. em StandBy %d" + +msgid "Standby in " +msgstr "Em espera em " + +msgid "StandbyLED" +msgstr "" + +msgid "Start from the beginning" +msgstr "Começar do início" + +msgid "Start offline decode" +msgstr "Iniciar decodificação offline" + +msgid "Start recording?" +msgstr "Iniciar gravação?" + +msgid "Start test" +msgstr "Iniciar teste" + +msgid "Start time" +msgstr "Hora de início" + +msgid "Start time to ignore inactivity sleeptimer" +msgstr "Ignorar o temporizador de inatividade após" + +msgid "Start time to ignore shutdown in standby" +msgstr "" + +msgid "Start timeshift" +msgstr "Iniciar timeshift" + +msgid "Start with list screen" +msgstr "Iniciar com a lista" + +msgid "Starting on" +msgstr "Iniciar em" + +msgid "Startup the set top box in standby" +msgstr "" + +msgid "Startup to Standby" +msgstr "" + +msgid "Step east" +msgstr "Passo leste" + +msgid "Step west" +msgstr "Passo oeste" + +msgid "Stepped east" +msgstr "Passo para leste" + +msgid "Stepped west" +msgstr "Passo para oeste" + +msgid "Stop" +msgstr "Parar" + +msgid "Stop PiP" +msgstr "Parar PiP" + +msgid "Stop current event and disable coming events" +msgstr "Parar programa atual e desativar novos eventos" + +msgid "Stop current event but not coming events" +msgstr "Parar programa atual, mas não desativar novos eventos" + +msgid "Stop entry" +msgstr "Parar" + +msgid "Stop playing this movie?" +msgstr "Parar a reprodução?" + +msgid "Stop recording" +msgstr "Parar gravação" + +msgid "Stop recording and delete" +msgstr "Parar e remover a gravação" + +msgid "Stop service on return to movie list" +msgstr "" + +msgid "Stop test" +msgstr "Parar teste" + +msgid "Stop testing plane after # failed transponders" +msgstr "Parar teste após a falha de # TPs" + +msgid "Stop testing plane after # successful transponders" +msgstr "Parar teste após a confirmação de # TPs" + +msgid "Stop timer recording" +msgstr "Parar gravação agendada" + +msgid "Stop timeshift" +msgstr "Parar timeshift" + +msgid "Stop timeshift?" +msgstr "Parar timeshift?" + +msgid "Stopped" +msgstr "Parado" + +msgid "Store at index" +msgstr "Salvar no índice" + +msgid "Store position" +msgstr "Salvar posição" + +msgid "Stored position" +msgstr "Posição guardada" + +msgid "Stream" +msgstr "" + +msgid "Stream request" +msgstr "Pedido de stream" + +msgid "Strongest position" +msgstr "Posição mais forte" + +msgid "Subservice list..." +msgstr "Lista de subserviços" + +msgid "Subservices" +msgstr "Subserviços" + +msgid "Subtitle Quickmenu" +msgstr "Menu de legendas" + +msgid "Subtitle alignment" +msgstr "Alinhamento da legenda" + +msgid "Subtitle border width" +msgstr "Tamanho da borda da legenda" + +msgid "Subtitle delay when timing is bad" +msgstr "Duração da legenda com tempo incorreto" + +msgid "Subtitle delay when timing lacks" +msgstr "Duração da legenda se o tempo não é informado" + +msgid "Subtitle font size" +msgstr "Tamanho da fonte da legenda" + +msgid "Subtitle language selection 1" +msgstr "Idioma da legenda 1" + +msgid "Subtitle language selection 2" +msgstr "Idioma da legenda 2" + +msgid "Subtitle language selection 3" +msgstr "Idioma da legenda 3" + +msgid "Subtitle language selection 4" +msgstr "Idioma da legenda 4" + +msgid "Subtitle position" +msgstr "Posição da legenda" + +msgid "Subtitle selection" +msgstr "Selecionar legenda" + +msgid "Subtitle selection..." +msgstr "Selecionar legenda" + +msgid "Subtitle settings" +msgstr "Legendas" + +msgid "Subtitles" +msgstr "Legendas" + +msgid "Sun" +msgstr "Dom" + +msgid "Sunday" +msgstr "Domingo" + +msgid "Swap PiP and main picture" +msgstr "Alternar PiP com imagem principal" + +msgid "Swap services" +msgstr "Alternar canais" + +msgid "Swedish" +msgstr "Sueco" + +msgid "Switch TV to correct input" +msgstr "Mudar a TV para a entrada correta" + +msgid "Switch between filelist/playlist" +msgstr "Alternar entre arquivos/playlist" + +msgid "Switch between normal mode and list mode" +msgstr "Alternar entre modo normal e modo de lista" + +msgid "Switch to HDMI in mode" +msgstr "" + +msgid "Switch to filelist" +msgstr "Ver lista de arquivos" + +msgid "Switch to next channel" +msgstr "" + +msgid "Switch to next channel in history" +msgstr "Próximo canal na memória" + +msgid "Switch to next sub service" +msgstr "Mudar para o próximo canal" + +msgid "Switch to playlist" +msgstr "Ver lista de reprodução" + +msgid "Switch to previous channel" +msgstr "Mudar para o canal anterior" + +msgid "Switch to previous channel in history" +msgstr "Canal anterior na memória" + +msgid "Switch to previous sub service" +msgstr "Mudar para o canal anterior" + +msgid "Switchable tuner types:" +msgstr "Tipos de tuner alternáveis:" + +msgid "Symbol rate" +msgstr "Symbol Rate" + +msgid "Symbol rate:" +msgstr "Symbol Rate:" + +msgid "Sync failure moving back to origin !" +msgstr "A sincronia falhou. Voltando à origem..." + +msgid "System" +msgstr "Sistema" + +#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) +msgid "TRANSLATOR_INFO" +msgstr "" + +msgid "TS file is too large for ISO9660 level 1!" +msgstr "O arquivo TS é muito grande para ISO9660 level 1!" + +msgid "TSID" +msgstr "" + +msgid "TV physical address report" +msgstr "Relatório de endereço físico da TV" + +msgid "TXT PID" +msgstr "" + +msgid "Table of contents for collection" +msgstr "Tabela de conteúdos da coleção" + +msgid "Tags" +msgstr "Etiquetas" + +msgid "Teletext subtitle color" +msgstr "Cor da legenda de teletexto" + +msgid "Temperature and fan control" +msgstr "Controle de temperatura e ventoinha" + +msgid "Terrestrial" +msgstr "Terrestre" + +msgid "Terrestrial provider" +msgstr "Operadora terrestre" + +msgid "Test DiSEqC settings" +msgstr "Testar configurações da DiSEqC" + +msgid "Test mode" +msgstr "Modo de teste" + +msgid "Test the network configuration of your receiver.\n" +msgstr "Testa a configuração de rede do receptor.\n" + +msgid "Test type" +msgstr "Tipo de teste" + +msgid "Text color" +msgstr "Cor do texto" + +msgid "Thai" +msgstr "Tailandês" + +msgid "" +"Thank you for using the wizard.\n" +"Please press OK to continue." +msgstr "" +"Obrigado por usar o assistente.\n" +"Pressione OK para continuar." + +msgid "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." +msgstr "" +"O receptor está pronto para uso.\n" +"Pressione OK para continuar." + +msgid "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?" +msgstr "O padrão de DVD não suporta vídeo H.264 (HDTV). Deseja criar DVD de dados (que poderá ser incompatível com outros reprodutores)?" + +msgid "The PIN code has been changed successfully." +msgstr "Senha alterada com sucesso." + +msgid "The PIN codes you entered are different." +msgstr "Senhas informadas não combinam." + +msgid "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" +msgstr "" +"O pendrive foi preparado para ser bootável.\n" +"Agora pode fazer o download de uma imagem NFI!" + +msgid "The backup failed. Please choose a different backup location." +msgstr "O backup falhou. Escolha outro diretório de backup e tente novamente." + +#, python-format +msgid "" +"The current beta image might not be stable.\n" +"For more information see %s." +msgstr "" +"A imagem beta atual pode não estar estável.\n" +"Para maiores informações veja %s." + +#, python-format +msgid "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." +msgstr "" +"Não é possivél escrever no diretório %s.\n" +"Selecione um diretório com permissões de escrita." + +#, python-format +msgid "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" +msgstr "" +"O seguinte dispositivo foi encontrado:\n" +"\n" +"%s\n" +"\n" +"Deseja copiar o USB flasher para este pendrive?" + +msgid "The following files were found..." +msgstr "Arquivos de mídia encontrados" + +msgid "The md5sum validation failed, the file may be corrupted!" +msgstr "A validação MD5 falhou! O arquivo pode estar corrompido." + +msgid "" +"The network wizard extension is not installed!\n" +"Please install it." +msgstr "" +"O assistente de rede não está instalado!\n" +"Instale o assistente de rede e tente novamente." + +#, python-format +msgid "The path %s already exists." +msgstr "O diretório %s já existe." + +msgid "The pin code you entered is wrong." +msgstr "Senha informada está incorreta." + +#, python-format +msgid "The results have been written to %s." +msgstr "Os resultados foram escritos em %s." + +msgid "The sleep timer has been activated." +msgstr "O temporizador foi ativado." + +msgid "The sleep timer has been disabled." +msgstr "O temporizador foi desativado." + +msgid "" +"The software management extension is not installed!\n" +"Please install it." +msgstr "" +"Gerenciador de software não está instalado!\n" +"Instale o gerenciador de software e tente novamente." + +#, python-format +msgid "The status of the current beta image could not be checked because %s can not be reached." +msgstr "Não foi possível verificar o estado da imagem beta atual. %s está inacessível." + +msgid "The timer file (timers.xml) is corrupt and could not be loaded." +msgstr "Não foi possível carregar os temporizadores. Arquivo timers.xml está corrompido." + +msgid "The user interface of your receiver is restarting" +msgstr "Reiniciando interface. Aguarde..." + +msgid "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" +msgstr "" +"A interface do receptor está reiniciando\n" +"devido a um erro em mytest.py" + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." +msgstr "" +"O plugin de rede sem fio não está instalado!\n" +"Instale o plugin de rede sem fio e tente novamente." + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it." +msgstr "" +"O plugin de rede sem fio não está instalado!\n" +"Instale o plugin de rede sem fio e tente novamente." + +msgid "The wizard can backup your current settings. Do you want to do a backup now?" +msgstr "O assistente pode fazer um backup das configurações. Fazer um backup agora?" + +#, python-format +msgid "The wizard found a configuration backup. Do you want to restore your old settings from %s?" +msgstr "O assistente encontrou um backup das configurações. Restaurar as configurações antigas de %s?" + +msgid "The wizard is finished now." +msgstr "O assistente de configuração está concluído." + +msgid "There are at least " +msgstr "Existem ao menos" + +#, python-format +msgid "There are at least %s updates available." +msgstr "Existem ao menos %s atualizações disponíveis." + +msgid "There are currently no outstanding actions." +msgstr "Atualmente não existem ações pendentes." + +msgid "There are no updates available." +msgstr "Não existem plugins disponíveis." + +msgid "There is no signal to lock on !" +msgstr "Não há sinal para estabelecer!" + +msgid "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" +msgstr "" +"Não existe espaço suficiente na partição selecionada.\n" +"Deseja continuar?" + +msgid "This DVD RW medium is already formatted - reformatting will erase all content on the disc." +msgstr "Este DVD RW já está formatado. Reformatar irá remover todo o conteúdo do disco." + +msgid "" +"This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!" +msgstr "" +"Este plugin cria um pendrive que pode ser usado para atualizar o firmware do receptor sem a necessidade de uma conexão de rede ou WLAN.\n" +"Primeiro, um pendrive precisa ser preparado para que se torne inicializável.\n" +"Na próxima etapa, um arquivo de imagem NFI pode ser baixado a partir do servidor de atualização e salvo no pendrive.\n" +"Se já existe um pendrive inicializável preparado, insira-o agora. Caso contrário, conecte um pendrive com um tamanho mínimo de 64 MB!" + +msgid "This plugin is installed." +msgstr "Este plugin está instalado." + +msgid "This plugin is not installed." +msgstr "Este plugin não está instalado." + +msgid "This plugin will be installed." +msgstr "Este plugin será instalado." + +msgid "This plugin will be removed." +msgstr "Este plugin será removido." + +#, python-format +msgid "This receiver cannot decode %s streams!" +msgstr "Este receptor não decodifica streams %s!" + +msgid "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration" +msgstr "" +"Este teste verifica os servidores DNS.\n" +"Se receber uma mensagem \"não confirmada\":\n" +"- Verifique o DHCP, nas opções do adaptador de rede\n" +"- Se configurou um servidor DNS manualmente verifique nas configurações de \"Servidor DNS\"" + +msgid "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" +msgstr "" +"Este teste verifica se um cabo de rede está conectado ao adaptador LAN.\n" +"Se receber uma mensagem \"desligado\":\n" +"- Verifique se o cabo está conectado\n" +"- Verifique se o cabo não está danificado" + +msgid "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" +msgstr "" +"Este teste verifica se um IP válido foi encontrado para o adaptador LAN.\n" +"Se receber uma mensagem \"não confirmado\":\n" +"- Não foi encontrado nenhum endereço de IP válido\n" +"- Verifique se o servidor DHCP está configurado e funcionando corretamente." + +msgid "" +"This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." +msgstr "" +"Este teste verifica se o adaptador de rede obtém um IP automaticamente com DHCP.\n" +"Se receber uma mensagem \"inativo\":\n" +"- O adaptador de rede deve estar configurado para configuração de IP manual\n" +"- Verifique se introduziu o IP na caixa de diálogo 'Configurações do adaptador'.\n" +"Se receber uma mensagem \"ativo\":\n" +"- Verifique se o servidor DHCP está configurado e funcionando corretamente." + +msgid "This test detects your configured LAN adapter." +msgstr "Este teste detecta as configurações do adaptador de rede." + +msgid "" +"This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\n" +"Are you sure?" +msgstr "" +"Todas as posições do motor serão recalculadas e posições anteriormente memorizadas com ajuste fino poderão ser perdidas!\n" +"Tem certeza de que deseja continuar?" + +msgid "Three" +msgstr "Três" + +msgid "Threshold" +msgstr "" + +msgid "Thu" +msgstr "Qui" + +msgid "Thumbnails" +msgstr "Miniaturas" + +msgid "Thursday" +msgstr "Quinta-feira" + +msgid "Time" +msgstr "Hora" + +msgid "Time scale" +msgstr "Escala de tempo" + +msgid "Timer" +msgstr "Temporizador" + +msgid "Timer Overview" +msgstr "" + +msgid "Timer edit" +msgstr "Editar temporizador" + +msgid "Timer editor" +msgstr "Editor de temporizador" + +msgid "Timer entry" +msgstr "Agendar" + +msgid "Timer log" +msgstr "Histórico de temporizador" + +msgid "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" +msgstr "" +"Sobreposição de temporizadores em timers.xml detectada!\n" +"Verifique os temporizadores conflitantes." + +msgid "Timer overview" +msgstr "Temporizador" + +msgid "Timer recording location" +msgstr "Diretório das gravações agendadas" + +msgid "Timer sanity error" +msgstr "Erro do temporizador" + +msgid "Timer selection" +msgstr "Selecionar temporizador" + +msgid "Timer selection..." +msgstr "Selecionar temporizador" + +msgid "Timer type" +msgstr "Ação do temporizador" + +msgid "Timeshift" +msgstr "" + +msgid "Timeshift Live" +msgstr "" + +msgid "Timeshift location" +msgstr "Diretório para o timeshift" + +msgid "Timeshift not possible!" +msgstr "Timeshift não permitido!" + +msgid "Timezone" +msgstr "Fuso horário" + +msgid "Title" +msgstr "Título" + +msgid "Title properties" +msgstr "Propriedades de título" + +msgid "Titleset mode" +msgstr "Modo de título" + +msgid "To audio selection" +msgstr "Selecionar áudio" + +msgid "To subtitle selection" +msgstr "Selecionar legenda" + +msgid "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." +msgstr "" +"Para atualizar o firmware do receptor, siga estes passos:\n" +"1) Desligue o receptor no interruptor de energia traseira e verifique se o pendrive inicializável foi conectado.\n" +"2) Mantenha o botão no painel frontal pressionado por 10 segundos.\n" +"3) Aguarde o o receptor ligar e siga as instruções do assistente." + +msgid "Today" +msgstr "Hoje" + +msgid "Toggle a cut mark at the current position" +msgstr "Marcar na posição atual" + +msgid "Tone amplitude" +msgstr "Amplitude do sinal" + +msgid "Tone mode" +msgstr "Sinal 22KHz" + +msgid "Toneburst" +msgstr "" + +msgid "Toneburst A/B" +msgstr "" + +msgid "Top and bottom" +msgstr "Topo e rodapé" + +msgid "Track" +msgstr "Trilha" + +msgid "Translation" +msgstr "Tradução" + +msgid "Translation:" +msgstr "Tradução:" + +msgid "Translations" +msgstr "Traduções" + +msgid "Transmission mode" +msgstr "Modo de transmissão" + +msgid "Transponder" +msgstr "" + +msgid "Transponder type" +msgstr "Tipo de transponder" + +msgid "Trash can" +msgstr "Lixeira" + +msgid "Tries left:" +msgstr "Tentativas restantes:" + +msgid "Try to find used transponders in cable network.. please wait..." +msgstr "Buscando TPs. Aguarde..." + +msgid "Trying to download a new packetlist. Please wait..." +msgstr "Obtendo lista de pacotes. Aguarde..." + +msgid "Tue" +msgstr "Ter" + +msgid "Tuesday" +msgstr "Terça-feira" + +msgid "Tune" +msgstr "Sintonizar" + +msgid "Tune and focus" +msgstr "Sintonia e foco" + +msgid "Tune failed!" +msgstr "Falhou!" + +msgid "Tuner" +msgstr "Tuner" + +msgid "Tuner configuration" +msgstr "Configurar tuner" + +msgid "Tuner is not supported" +msgstr "" + +msgid "Tuner slot" +msgstr "Entrada do tuner" + +msgid "Tuner status" +msgstr "Tuner" + +#, python-format +msgid "Tuner status %s" +msgstr "Estado do tuner %s" + +msgid "Tuner type" +msgstr "Tipo de tuner" + +msgid "Turkish" +msgstr "Turco" + +msgid "Turn on the power LED during standby." +msgstr "" + +msgid "Turning step size" +msgstr "" + +msgid "Two" +msgstr "Dois" + +msgid "Type" +msgstr "Tipo" + +msgid "Type of scan" +msgstr "Tipo de busca" + +msgid "USALS" +msgstr "" + +msgid "USALS calibration" +msgstr "Calibração USALS" + +msgid "USB stick" +msgstr "Pendrive" + +msgid "USB stick wizard" +msgstr "Assistente de pendrive" + +msgid "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Atualização sem interface visual em andamento...\n" +"Aguarde até o receptor reiniciar.\n" +"Isto poderá demorar alguns minutos." + +msgid "Undo install" +msgstr "Reverter instalação" + +msgid "Undo uninstall" +msgstr "Reverter desinstalação" + +msgid "Unencrypted" +msgstr "Decodificado" + +msgid "UnhandledKey" +msgstr "" + +msgid "Unicable" +msgstr "" + +msgid "Unicable LNB" +msgstr "" + +msgid "Unicable Martix" +msgstr "" + +msgid "Uninstall" +msgstr "Desinstalar" + +msgid "Universal LNB" +msgstr "LNB Universal" + +msgid "Unknown" +msgstr "Desconhecido" + +msgid "Unmount" +msgstr "Desmontar" + +msgid "Unsupported" +msgstr "Não suportado" + +msgid "Update" +msgstr "Atualizar" + +msgid "Update and ask to reboot" +msgstr "Atualizar e reiniciar manualmente" + +msgid "Update and reboot (recommended)" +msgstr "Atualizar e reiniciar automaticamente (recomendado)" + +msgid "Update channel list only" +msgstr "Atualizar apenas a lista de canais" + +#, python-format +msgid "Update completed, %d package was installed." +msgid_plural "Update completed, %d packages were installed." +msgstr[0] "Atualização concluída. %d pacote instalado." +msgstr[1] "Atualização concluída. %d pacotes instalados." + +msgid "Update completed. Do you want to reboot your receiver?" +msgstr "Atualização concluída. Reiniciar o receptor?" + +msgid "Update failed. Your receiver does not have a working internet connection." +msgstr "Falha na atualização. O receptor não está conectado à internet." + +msgid "Update has completed." +msgstr "Atualização concluída." + +msgid "Updatefeed not available." +msgstr "Servidor de atualizações não disponível." + +msgid "Updating software catalog" +msgstr "Atualizando o catálogo de software..." + +msgid "Upgrading" +msgstr "Atualizando..." + +msgid "Use" +msgstr "Usar" + +msgid "Use DHCP" +msgstr "Usar DHCP" + +msgid "Use EIT EPG information when it is available." +msgstr "Usar informação EIT EPG quando disponível." + +msgid "Use FreeSat EPG information when it is available." +msgstr "Usar informação Freesat EPG quando disponível." + +msgid "Use MHW EPG information when it is available." +msgstr "Usar informação MHW EPG quando disponível." + +msgid "Use Netmed EPG information when it is available." +msgstr "Usar informação Netmed EPG quando disponível." + +msgid "Use TV remote control" +msgstr "Usar o controle remoto da TV" + +msgid "Use USALS for this sat" +msgstr "Usar USALS neste satélite" + +msgid "Use ViaSat EPG information when it is available." +msgstr "Usar informação ViaSat EPG quando disponível." + +msgid "Use Virgin EPG information when it is available." +msgstr "" + +msgid "Use a gateway" +msgstr "Usar um gateway" + +msgid "Use fastscan channel names" +msgstr "Usar o nome dos canais da operadora" + +msgid "Use fastscan channel numbering" +msgstr "Usar o número dos canais da operadora" + +msgid "Use frequency or channel" +msgstr "" + +msgid "Use individual settings for each directory" +msgstr "Usar configurações individuais para cada diretório" + +msgid "Use interface" +msgstr "Usar interface" + +msgid "Use official channel numbering" +msgstr "Usar a numeração oficial dos canais" + +msgid "Use original DVB subtitle position" +msgstr "Usar a posição original da legenda DVB" + +msgid "Use original teletext position" +msgstr "Usar a posição original do teletexto" + +msgid "Use power measurement" +msgstr "Usar controle da alimentação" + +msgid "Use the network wizard to configure selected network adapter" +msgstr "Configurar o adaptador de rede" + +msgid "Use the network wizard to configure your network\n" +msgstr "Usar o assistente para configurar a rede\n" + +msgid "Use the up/down keys on your remote control to select an option. After that, press OK." +msgstr "" +"Use os botões cima/baixo do controle remoto para selecionar.\n" +"Pressione OK para continuar." + +msgid "Use the wizard to set up basic features" +msgstr "Configurar as funções básicas" + +msgid "Use these input device settings?" +msgstr "Usar estas configurações de dispositivo de entrada?" + +msgid "Use these settings?" +msgstr "Usar estas configurações?" + +msgid "Use this video enhancement settings?" +msgstr "Usar estas configurações de imagem?" + +msgid "Use trash can in movielist" +msgstr "Usar lixeira na lista de gravações" + +msgid "Used service scan type" +msgstr "Tipo usado na busca" + +msgid "User - bouquets" +msgstr "Favoritos" + +msgid "User defined" +msgstr "Manual" + +msgid "User defined transponder" +msgstr "Transponder predefinido" + +msgid "User interface" +msgstr "Interface visual" + +msgid "Username" +msgstr "Usuário" + +#, python-format +msgid "Using LNB %d" +msgstr "Usando LNB %d" + +msgid "Using fixed address" +msgstr "Usando endereço fixo" + +#, python-format +msgid "Using tuner %s" +msgstr "Usando tuner %s" + +msgid "Usually when the subtitle language is the same as the audio language, the subtitles will not be used. Enable this option to allow these subtitles to be used." +msgstr "Quando o idioma da legenda é o mesmo idioma do áudio, as legendas não serão usadas. Ative essa opção para ativar as legendas com o mesmo idioma do áudio." + +msgid "VCR scart" +msgstr "VCR Scart" + +msgid "VMGM (intro trailer)" +msgstr "" + +msgid "Vertical" +msgstr "Vertical" + +msgid "Vertical turning speed" +msgstr "Velocidade de rotação vertical" + +msgid "Video PID" +msgstr "Vídeo PID" + +msgid "Video enhancement preview" +msgstr "Pré-visualização de vídeo" + +msgid "Video enhancement settings" +msgstr "Configurar imagem" + +msgid "Video enhancement setup" +msgstr "Configurar imagem" + +msgid "Video fine tuning" +msgstr "Ajuste de imagem" + +msgid "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." +msgstr "" +"Seleção da entrada de vídeo\n" +"\n" +"Pressione OK se esta tela está sendo exibida corretamente, ou selecione outra entrada.\n" +"\n" +"A próxima entrada será testada automaticamente em 20 segundos." + +msgid "Video mode selection." +msgstr "Selecionar modo de vídeo" + +msgid "Video output" +msgstr "Saída de vídeo" + +msgid "Video setup" +msgstr "Configurar vídeo" + +msgid "Video wizard" +msgstr "Assistente de vídeo" + +#, python-format +msgid "Video: %s fps" +msgstr "Vídeo: %s FPS" + +msgid "VideoMode" +msgstr "Modo de vídeo" + +msgid "Videocodec" +msgstr "Codec de vídeo" + +msgid "Videoformat" +msgstr "Formato de vídeo" + +msgid "Videosize" +msgstr "Resolução" + +msgid "View Rass interactive..." +msgstr "Ver Rass interativo" + +msgid "View details" +msgstr "Ver detalhes" + +msgid "View list of available " +msgstr "Ver disponíveis" + +msgid "View list of available CommonInterface extensions" +msgstr "Ver extensões de CI disponíveis" + +msgid "View list of available EPG extensions." +msgstr "Ver extensões de EPG disponíveis" + +msgid "View list of available Satellite equipment extensions." +msgstr "Ver extensões de equipamento de satélite disponíveis" + +msgid "View list of available communication extensions." +msgstr "Ver extensões de comunicação disponíveis." + +msgid "View list of available default settings" +msgstr "Ver lista de opções de fábrica disponíveis" + +msgid "View list of available display and userinterface extensions." +msgstr "Ver extensões de tela e interface do usuário disponíveis." + +msgid "View list of available multimedia extensions." +msgstr "Ver extensões de multimídia disponíveis" + +msgid "View list of available networking extensions" +msgstr "Ver extensões de rede disponíveis" + +msgid "View list of available recording extensions" +msgstr "Ver extensões de gravações disponíveis" + +msgid "View list of available skins" +msgstr "Ver temas disponíveis" + +msgid "View list of available software extensions" +msgstr "Ver extensões de software disponíveis" + +msgid "View list of available system extensions" +msgstr "Ver extensões de sistema disponíveis" + +msgid "View photos..." +msgstr "Ver fotos" + +msgid "View teletext..." +msgstr "Ver teletexto" + +msgid "View video CD..." +msgstr "Ver CD de vídeo" + +msgid "Virtual keyboard" +msgstr "Teclado virtual" + +msgid "Voltage mode" +msgstr "Modo de tensão" + +msgid "Volume" +msgstr "Volume" + +msgid "W" +msgstr "" + +msgid "WEP" +msgstr "" + +msgid "WLAN connection" +msgstr "Conexão sem fio" + +msgid "WPA" +msgstr "" + +msgid "WPA or WPA2" +msgstr "WPA ou WPA2" + +msgid "WPA2" +msgstr "" + +msgid "WSS on 4:3" +msgstr "WSS em 4:3" + +msgid "Waiting" +msgstr "Aguardando" + +msgid "Waiting for mount" +msgstr "Aguardando montagem" + +msgid "Waiting for partition" +msgstr "Aguardando partição" + +msgid "Wakeup" +msgstr "Acordar" + +msgid "Wakeup TV from standby" +msgstr "Ligar a TV do StandBy" + +msgid "Wakeup receiver for start timer" +msgstr "" + +msgid "Wakeup receiver from standby" +msgstr "Ligar o receptor do StandBy" + +msgid "Wakeup signal from TV" +msgstr "Sinal de ligar a partir da TV" + +msgid "Wakeup type" +msgstr "" + +msgid "Warning: no LNB; using factory defaults." +msgstr "Atenção: sem LNB; usando opções de fábrica." + +msgid "Watch movies..." +msgstr "Ver vídeos" + +msgid "Watch recordings..." +msgstr "Ver gravações" + +msgid "Wed" +msgstr "Qua" + +msgid "Wednesday" +msgstr "Quarta-feira" + +msgid "Weekday" +msgstr "Dia de semana" + +msgid "Weighted position" +msgstr "Posição pesada" + +msgid "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." +msgstr "" +"Bem-vindo ao editor de cortes.\n" +"\n" +"Vá ao o início do conteúdo que deseja cortar, pressione OK e selecione 'iniciar corte'.\n" +"\n" +"Em seguida, vá até o fim do conteúdo, pressione OK e selecione \"finalizar corte\"." + +msgid "Welcome to the image upgrade wizard. The wizard will assist you in upgrading the firmware of your receiver by providing a backup facility for your current settings and a short explanation of how to upgrade your firmware." +msgstr "Bem-vindo ao assistente de atualização do receptor. O assistente irá guiá-lo na atualização de firmware do receptor, fornecendo opções de backup de suas configurações e uma breve explicação sobre como atualizar o firmware." + +msgid "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" +msgstr "" +"Bem-vindo.\n" +"\n" +"Se deseja conectar o receptor à internet, este assistente irá guiá-lo através da configuração básica de rede.\n" +"\n" +"Pressione OK para configurar a rede." + +msgid "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." +msgstr "" +"Bem-vindo.\n" +"\n" +"Este assistente irá guiá-lo na configuração do receptor.\n" +"Pressione OK para continuar." + +msgid "Welcome..." +msgstr "Bem-vindo..." + +msgid "West" +msgstr "Oeste" + +msgid "West limit set" +msgstr "Definir limite oeste" + +msgid "What do you want to scan?" +msgstr "O que deseja buscar?" + +msgid "When enabled the PiP can be closed by the exit button." +msgstr "Quando ativado, o PiP pode ser fechado com o botão Sair." + +msgid "When enabled the arrow buttons around the OK button will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled the left, right, CH+/-, B+/-, P+/- buttons will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled you can specify a timeframe to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "When enabled you can specify a timeframe were the inactivity sleeptimer is ignored. Not the detection is disabled during this timeframe but the inactivity timeout is disabled" +msgstr "Quando ativado, pode-se definir um intervalo onde o temporizador de inatividade é ignorado." + +msgid "When enabled you can zap channels with the CH+/-, B+/-, P+/- buttons instead of opening the channel selection list." +msgstr "" + +msgid "When enabled you get the channel selection list via the OK button, the infobar toggle is then transfered to exit button" +msgstr "" + +msgid "When enabled, AIT data will be included in http streams. This allows a client receiver to use HbbTV." +msgstr "Quando ativado, os dados AIT serão incluídos nos streams HTTP. Isto permite que um receptor de cliente possa utilizar HbbTV." + +msgid "When enabled, ECM data will be included in http streams. This allows a client receiver to do the descrambling." +msgstr "Quando ativado, os dados de ECM serão incluídos nos streams HTTP. Isto permite que um receptor de cliente possa fazer a decodificação." + +msgid "When enabled, EIT data will be included in http streams. This allows a client receiver to show EPG." +msgstr "Quando ativado, os dados do IET serão incluídos nos streams HTTP. Isto permite que um receptor cliente possa exibir EPG." + +msgid "When enabled, a popup message will be shown when a movie has finished and the next one will start." +msgstr "Quando ativado, uma mensagem será exibida quando um evento terminar ou quando o próximo começar." + +msgid "When enabled, a popup message will be shown when a recording starts." +msgstr "Quando ativado, uma mensagem será exibida ao iniciar uma gravação." + +msgid "When enabled, a radio background image will be visible while listening to a radio channel." +msgstr "Quando ativado, uma imagem de fundo será exibida ao ouvir um canal de rádio." + +msgid "When enabled, a recording is allowed to interrupt live tv, when there are no free tuners." +msgstr "Quando ativado, uma gravação pode interromper a TV ao vivo, quando não existem sintonizadores disponíveis." + +msgid "When enabled, a warning will be displayed and the user will get an option to stop or to continue the timeshift." +msgstr "Quando ativado, uma mensagem será exibida e o usuário terá a opção de parar ou continuar o timeshift." + +msgid "When enabled, authentication is required to watch http streams." +msgstr "" + +msgid "When enabled, channel numbering will start at '1' for each bouquet." +msgstr "Quando ativado, a numeração de canais inicia em 1 para cada grupo de favoritos." + +msgid "When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen." +msgstr "Quando ativado, o conteúdo com proporção de 4:3 será esticada para preencher a tela." + +msgid "When enabled, continue to the next bouquet when the last channel of the current bouquet is reached while changing channels." +msgstr "Quando ativado, continua no próximo grupo de favoritos quando o último canal do grupo atual for selecionado." + +msgid "When enabled, deleted recordings are moved to the trash can, instead of being deleted immediately." +msgstr "Quando ativado, gravações removidas são movidas para a lixeira, ao invés de serem imediatamente excluídas." + +msgid "When enabled, display the EIT now/next eventdata in infobar. When disabled, display now/next eventdata from the EPG cache instead." +msgstr "Quando ativado, exibirá o agora/próximo do IET na barra de informações. Quando desativada, exibirá agora/próximo do cache EPG." + +msgid "When enabled, encryption info will be shown in the infobar (when supported by the skin)." +msgstr "Quando ativado, informações de encriptação serão exibidas na barra de informações (quando suportado pelo tema)." + +msgid "When enabled, error messages related to the Common Interface module will not be shown." +msgstr "Quando ativado, mensagens de erro relacionadas com o módulo de Interface Comum não serão exibidas." + +msgid "When enabled, error messages related to zapping will not be shown." +msgstr "Quando ativado, mensagens de erro relacionadas ao zapping não serão exibidas." + +msgid "When enabled, external subtitles will be always turned on for playback movie." +msgstr "Quando ativado, as legendas externas serão sempre exibidas ao reproduzir um vídeo." + +msgid "When enabled, graphical DVB subtitles are preferred over teletext subtitles, when both types are available." +msgstr "Quando ativado, legendas gráficas DVB têm preferência sobre as legendas de teletexto, quando ambos os tipos estiverem disponíveis." + +msgid "When enabled, graphical DVB subtitles will be centered horizontally." +msgstr "Quando ativado, legendas gráficas DVB serão centralizadas horizontalmente." + +msgid "When enabled, graphical DVB subtitles will be displayed at their original position." +msgstr "Quando ativado, legendas gráficas DVB serão exibidas em sua posição original." + +msgid "When enabled, graphical DVB subtitles will be displayed in yellow, instead of the original color." +msgstr "Quando ativado, legendas gráficas DVB serão sempre exibidas em amarelo." + +msgid "When enabled, http streams are descrambled on the server side. The (remote) client receiver does not have to do descrambling." +msgstr "Quando ativado, streams HTTP são decodificados no servidor. O receptor do cliente (remoto) não tem que fazer a decodificação." + +msgid "When enabled, it is possible to leave the movieplayer with exit." +msgstr "Quando ativado, é possível sair do reprodutor de vídeos com o Exit." + +msgid "When enabled, measure power consumption to detect when the rotor stops turning (when supported by the tuner)." +msgstr "Quando ativado, mede o consumo de energia para detectar quando o motor para de girar (quando suportado pelo tuner)." + +msgid "When enabled, number markers will be hiden." +msgstr "Quando ativado, marcadores numéricos não serão exibidos." + +msgid "When enabled, services may be grouped in multiple bouquets." +msgstr "Quando ativado, os canais podem ser categorizados em diferentes grupos de favoritos." + +msgid "When enabled, show channel numbers in the channel selection screen." +msgstr "Quando ativado, exibe a numeração dos canais na lista de canais." + +msgid "When enabled, subtitles for the hearing impaired can be used." +msgstr "Quando ativado, legendas para os deficientes auditivos podem ser usadas." + +msgid "When enabled, subtitles for the hearing impaired will be preferred over normal subtitles, when both types are available." +msgstr "Quando ativado, legendas para os deficientes auditivos serão escolhidas sobre legendas normais, quando ambos os tipos estiverem disponíveis." + +msgid "When enabled, teletext pages will be cached, allowing faster access." +msgstr "Quando ativado, páginas de teletexto serão armazenadas na memória, permitindo um acesso mais rápido." + +msgid "When enabled, teletext subtitles will be displayed at their original position." +msgstr "Quando ativado, as legendas de teletexto serão exibidas em sua posição original." + +msgid "When enabled, the VCR scart option will be shown on the main menu" +msgstr "Quando ativado, a opção VCR Scart será exibida no menu principal" + +msgid "When enabled, the channel selection list will be hidden while listening to a radio channel" +msgstr "Quando ativado, a lista de canais ficará oculta ao ouvir um canal de rádio" + +msgid "When enabled, the infobar will be displayed when a new event starts." +msgstr "Quando ativado, a barra de informações será exibida quando um novo evento começar." + +msgid "When enabled, the infobar will be displayed when changing channels." +msgstr "Quando ativado, a barra de informações será exibida ao mudar de canal." + +msgid "When enabled, the infobar will be displayed when skipping forwards/backwards during media playback." +msgstr "Quando ativado, a barra de informações será exibida ao avançar/retornar durante a reprodução de mídia." + +msgid "When enabled, the lenght of each recording will be shown in the movielist (this might cause some additional loading time)." +msgstr "Quando ativado, a duração de cada gravação será exibida na lista de vídeos (isso pode aumentar o tempo de carregamento)." + +msgid "When enabled, the original line breaks will be removed from the teletext subtitles." +msgstr "Quando ativado, as quebras de linha originais serão removidas das legendas de teletexto." + +msgid "When enabled, the receiver will automatically use the audio track which you selected before." +msgstr "Quando ativado, o receptor usará automaticamente a trilha de áudio selecionada anteriormente." + +msgid "When enabled, the receiver will automatically use the subtitles which you selected before." +msgstr "Quando ativado, o receptor usará automaticamente a legenda selecionada anteriormente." + +msgid "When enabled, the receiver will no longer monitor the tuned transponder for possible changes. Do not use this option unless you know what you are doing." +msgstr "Quando ativado, o receptor não vai mais monitorar mudanças no transponder sintonizado. Use esta opção somente se souber o que está fazendo." + +msgid "When enabled, the receiver will select an AC3 track (when available)." +msgstr "Quando ativado, o receptor irá selecionar uma trilha AC3 (quando disponível)." + +msgid "When enabled, the receiver will select an AC3+ track (when available)." +msgstr "" + +msgid "When enabled, timeshift starts automatically in background after specified time." +msgstr "Quando ativado, o timeshift inicia automaticamente após um tempo determinado." + +msgid "When enabled, use DHCP for the IP configuration." +msgstr "Quando ativado, DHCP é usado para a configuração de IP." + +msgid "When enabled, your receiver will detect activity on the VCR SCART input." +msgstr "Quando ativado, o receptor irá detectar atividade na entrada VCR SCART." + +msgid "When nonzero, a recording will start earlier than the starting time indicated by the EPG." +msgstr "Quando diferente de zero, uma gravação vai começar mais cedo do que o horário de início indicado pelo EPG." + +msgid "When nonzero, a recording will stop later than the ending time indicated by the EPG." +msgstr "Quando diferente de zero, uma gravação vai parar mais tarde do que a hora de término indicada pelo EPG." + +msgid "When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture." +msgstr "Quando o conteúdo tem uma proporção de 16:9, escolha se deseja dimensionar/esticar a imagem." + +msgid "When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture." +msgstr "Quando o conteúdo tem uma proporção de 4:3, escolha se deseja dimensionar/esticar a imagem." + +msgid "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" +msgstr "" +"Quando é feita uma restauração aos padrões de fábrica, todas as configurações são perdidas (lista de canais, configurações do tuner, entre outras).\n" +"Depois da restauração, o receptor será reiniciado.\n" +"\n" +"Restaurar padrões de fábrica?" + +msgid "Where do you want to backup your settings?" +msgstr "Onde salvar o backup das configurações?" + +msgid "Where to save temporary timeshift recordings?" +msgstr "Onde salvar as gravações temporárias do timeshift?" + +msgid "Wireless LAN" +msgstr "Rede sem fio" + +msgid "Wireless network" +msgstr "Rede sem fio" + +msgid "Wireless network configuration..." +msgstr "Configuração de rede sem fio" + +msgid "Wireless network connection setup" +msgstr "Configurar rede sem fio" + +msgid "Wireless network connection setup." +msgstr "Configurar rede sem fio." + +msgid "Wireless network state" +msgstr "Estado da rede sem fio" + +msgid "With popup" +msgstr "Com popup" + +msgid "Without popup" +msgstr "Sem popup" + +msgid "Would you like to install a softcam?" +msgstr "Deseja instalar uma softcam?" + +msgid "Write error while recording. Disk full?\n" +msgstr "Erro ao gravar. Disco cheio?\n" + +msgid "Write failed!" +msgstr "A gravação falhou!" + +msgid "YPbPr" +msgstr "" + +msgid "Year" +msgstr "Ano" + +msgid "Yellow DVB subtitles" +msgstr "Legendas DVB em amarelo" + +msgid "Yes" +msgstr "Sim" + +msgid "Yes and save" +msgstr "Sim e salvar" + +msgid "Yes and save in movie dir" +msgstr "Sim, e salvar no diretório de vídeos" + +msgid "Yes to all" +msgstr "Sim para todos" + +msgid "Yes, always" +msgstr "Sim, sempre" + +msgid "Yes, and delete this movie" +msgstr "Sim, e remover este vídeo" + +msgid "Yes, backup my settings!" +msgstr "Sim, salve as configurações" + +msgid "Yes, delete this movie and return to movie list" +msgstr "" + +msgid "Yes, do a manual scan now" +msgstr "Sim, realizar uma busca avançada" + +msgid "Yes, do an automatic scan now" +msgstr "Sim, realizar uma busca automática" + +msgid "Yes, do another manual scan now" +msgstr "Sim, fazer outra busca avançada" + +msgid "Yes, perform a shutdown now." +msgstr "Sim, desligar agora" + +msgid "Yes, restore the settings now" +msgstr "Sim, restaurar configurações" + +msgid "Yes, returning to movie list" +msgstr "Sim, e voltar à lista de vídeos" + +msgid "Yesterday" +msgstr "Ontem" + +#, python-format +msgid "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" +msgstr "" +"Já existe uma lista de canais instalada.\n" +"Deseja remover\n" +"\"%s\"?" + +msgid "You can cancel the installation." +msgstr "A instalação pode ser cancelada." + +msgid "You can cancel the removal." +msgstr "A remoção pode ser cancelada." + +msgid "You can continue watching TV etc. while this is running." +msgstr "Pode continuar usando o receptor durante o processo." + +msgid "You can install this plugin." +msgstr "Pode instalar este plugin." + +msgid "You can only burn receiver recordings!" +msgstr "Apenas gravações são permitidas!" + +msgid "You can remove this plugin." +msgstr "Este plugin pode ser removido." + +msgid "You cannot delete this!" +msgstr "Não é possível remover" + +msgid "You didn't select a channel to record from." +msgstr "Nenhum canal foi selecionado." + +msgid "You have chosen to backup your settings. Please press OK to start the backup now." +msgstr "Foi escolhido realizar um backup das configurações. Pressione OK para fazer o backup agora." + +msgid "You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased." +msgstr "Foi escolhido criar um novo flasher .NFI inicializável para pendrive. Isto irá reparticionar o pendrive e todos os dados contidos nele serão removidos." + +msgid "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." +msgstr "Foi escolhido restaurar as configurações. O receptor irá reiniciar após a restauração. Pressione OK para restaurar agora." + +#, python-format +msgid "You have to wait %s!" +msgstr "Aguarde %s!" + +msgid "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." +msgstr "" +"É necessário um computador conectado ao receptor. Se você necessitar instruções adicionais, visite o website http://www.dm7025.de.\n" +"O receptor será reiniciado. Após seguir as instruções de atualização do site, o novo firmware irá solicitar a restauração das configurações." + +msgid "You system does not support ext4" +msgstr "O sistema não suporta EXT4." + +msgid "Your backup succeeded. We will now continue to explain the further upgrade process." +msgstr "Operação completada com sucesso. Continuando o processo de atualização..." + +msgid "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" +msgstr "A coleção excede o tamanho de um DVD de camada simples. Será necessário um DVD camada dupla." + +msgid "Your current collection will get lost!" +msgstr "A coleção atual será descartada!" + +msgid "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." +msgstr "" +"O firmware do processador frontal deve ser atualizado.\n" +"Pressione OK para iniciar a atualização." + +msgid "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"O processador frontal será atualizado.\n" +"Aguarde o receptor reiniciar.\n" +"Isto poderá demorar alguns minutos" + +msgid "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." +msgstr "" +"A conexão de internet não está funcionando!\n" +"Escolha o que fazer a seguir." + +#, python-format +msgid "Your internet connection is working (ip: %s)" +msgstr "Internet ativa. IP: %s" + +msgid "Your network configuration has been activated." +msgstr "A configuração de rede foi ativada." + +msgid "Your receiver does not have an internet connection" +msgstr "O receptor não está conectado à internet" + +msgid "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" +msgstr "" +"O receptor está pronto para uso.\n" +"\n" +"A conexão de internet está ativa.\n" +"\n" + +msgid "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." +msgstr "" +"O receptor está pronto para uso.\n" +"\n" +"A conexão de internet está ativa.\n" +"\n" +"Pressione OK para continuar." + +msgid "Your receiver is rebooting" +msgstr "Reiniciando o receptor. Aguarde..." + +msgid "Your receiver is shutting down" +msgstr "Desligando o receptor. Aguarde..." + +msgid "Your receiver is shutting down. Please stand by..." +msgstr "Desligando o receptor. Aguarde..." + +msgid "Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver." +msgstr "O receptor pode estar inutilizado agora. Consulte o manual para obter mais informações antes de reiniciar o receptor." + +msgid "Your receiver will got to stand by due to the sleeptimer." +msgstr "O receptor será colocado em espera por um temporizador." + +msgid "Your receiver will got to standby due to inactivity." +msgstr "O receptor será colocado em espera por inatividade." + +msgid "Your receiver will restart after pressing OK on your remote control." +msgstr "Pressione OK para reiniciar o receptor." + +msgid "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." +msgstr "" +"A conexão de internet sem fio não pôde ser iniciada!\n" +"Há um adaptador wireless compatível conectado?\n" +"\n" +"Escolha o que fazer a seguir." + +msgid "Zap" +msgstr "Assistir" + +msgid "Zap back to previously tuned service?" +msgstr "Voltar ao canal sintonizado anteriormente?" + +msgid "Zap back to service before positioner setup?" +msgstr "Voltar ao canal anterior à configuração do posicionador DiSEqC?" + +msgid "Zap back to service before tuner setup?" +msgstr "Voltar ao canal anterior à configuração do tuner?" + +msgid "Zap focus to Picture in Picture" +msgstr "Zap para janela PiP" + +msgid "Zap focus to main screen" +msgstr "Zap para janela principal" + +msgid "Zap mode" +msgstr "Modo Zap" + +msgid "Zap to selected channel" +msgstr "Assiste o canal selecionado" + +msgid "Zap to selected channel, or show detailed event info (depends on configuration)" +msgstr "Assiste o canal selecionado, ou exibe informações detalhadas do evento (depende da configuração)" + +msgid "[alternative edit]" +msgstr "[editar alternativas]" + +msgid "[bouquet edit]" +msgstr "[editar grupo de favoritos]" + +msgid "[favourite edit]" +msgstr "[edição de favoritos]" + +msgid "[move mode]" +msgstr "[modo mover]" + +msgid "a gui to assign services/providers to common interface modules" +msgstr "Uma interface visual para atribuir serviços/operadoras a um módulo CI" + +msgid "a gui to assign services/providers/caids to common interface modules" +msgstr "Uma interface visual para atribuir serviços/operadoras/CAIDs a um módulo CI" + +msgid "abort alternatives edit" +msgstr "Cancelar modificações" + +msgid "abort bouquet edit" +msgstr "Cancelar modificações" + +msgid "abort favourites edit" +msgstr "Cancelar modificações" + +msgid "about to start" +msgstr "iniciando em breve" + +msgid "activate network adapter configuration" +msgstr "Ativar configuração do adaptador de rede" + +msgid "add alternatives" +msgstr "Adicionar alternativas" + +msgid "add bookmark" +msgstr "Adicionar marcador" + +msgid "add bouquet" +msgstr "Adicionar grupo de favoritos" + +msgid "add marker" +msgstr "Adicionar marcador" + +msgid "add service to bouquet" +msgstr "Adicionar ao grupo de favoritos" + +msgid "add service to favourites" +msgstr "Adicionar aos favoritos" + +msgid "add to parental protection" +msgstr "Adicionar ao controle de acesso" + +msgid "adult movie/drama" +msgstr "Filme/Drama adulto" + +msgid "advanced" +msgstr "Avançado" + +msgid "adventure/western/war" +msgstr "Aventura/Velho Oeste/Guerra" + +msgid "advertisement/shopping" +msgstr "Propagandas/Compras" + +msgid "after " +msgstr "após " + +msgid "alphabetic" +msgstr "Ordenar alfabeticamente" + +msgid "alphabetic reverse" +msgstr "Ordem alfabética invertida" + +msgid "alternative" +msgstr "Alternativo" + +msgid "always" +msgstr "" + +msgid "and select next channel" +msgstr "" + +msgid "and select previous channel" +msgstr "" + +msgid "arts/culture (without music, general)" +msgstr "Arte/Cultura (sem música, geral)" + +msgid "arts/culture magazine" +msgstr "Artes/Revista de cultura" + +msgid "athletics" +msgstr "Atletismo" + +msgid "audio tracks" +msgstr "Trilhas de áudio" + +msgid "auto" +msgstr "Auto" + +msgid "automatic" +msgstr "Automático" + +msgid "back" +msgstr "Voltar" + +msgid "background image" +msgstr "Imagem de fundo" + +msgid "ballet" +msgstr "Balé" + +#, python-format +msgid "bc%s" +msgstr "bc%s" + +msgid "better" +msgstr "Melhor" + +msgid "black" +msgstr "Preto" + +msgid "black & white" +msgstr "Preto e Branco" + +msgid "blacklist" +msgstr "Lista negra" + +msgid "blue" +msgstr "Azul" + +msgid "broadcasting/press" +msgstr "Transmissão/Imprensa" + +msgid "by date" +msgstr "Por data" + +msgid "cartoon/puppets" +msgstr "Desenhos/Fantoches" + +msgid "center" +msgstr "Centro" + +msgid "centered" +msgstr "Centralizado" + +msgid "centered, wrapped" +msgstr "centralizado" + +msgid "chapters" +msgstr "Capítulos" + +msgid "childrens's/youth program (general)" +msgstr "Infantil/Adolescentes (geral)" + +msgid "circular left" +msgstr "Circular esquerda" + +msgid "circular right" +msgstr "Circular direita" + +msgid "comedy" +msgstr "Comédia" + +msgid "complex" +msgstr "Complexo" + +msgid "config menu" +msgstr "Menu de configuração" + +msgid "confirmed" +msgstr "Confirmado" + +msgid "connected" +msgstr "Conectado" + +msgid "continue" +msgstr "Continuar" + +msgid "cooking" +msgstr "Cozinha" + +msgid "copy to bouquets" +msgstr "Copiar para grupo de favoritos" + +msgid "create directory" +msgstr "Criar diretório" + +#, python-format +msgid "currently installed image: %s" +msgstr "Imagem instalada no momento: %s" + +msgid "daily" +msgstr "Diário" + +msgid "day" +msgstr "Dia" + +msgid "default" +msgstr "Padrão" + +msgid "delete cut" +msgstr "Eliminar corte" + +msgid "delete..." +msgstr "Remover" + +msgid "descramble and record ecm" +msgstr "Decodificar e gravar ECM" + +msgid "detective/thriller" +msgstr "Detetive/Thriller" + +msgid "disable" +msgstr "Desativar" + +msgid "disable move mode" +msgstr "Salvar modificações" + +msgid "disabled" +msgstr "Desativado" + +msgid "disconnected" +msgstr "Desconectado" + +msgid "discussion/interview/debate" +msgstr "Discussão/Entrevista/Debate" + +msgid "do nothing" +msgstr "Não fazer nada" + +msgid "documentary" +msgstr "Documentário" + +msgid "don't descramble, record ecm" +msgstr "Não decodificar, gravar ECM" + +msgid "done!" +msgstr "Concluído" + +msgid "east" +msgstr "Leste" + +msgid "economics/social advisory" +msgstr "Economia social/Consultivo" + +msgid "edit alternatives" +msgstr "Editar alternativas" + +msgid "education/science/factual topics (general)" +msgstr "Educação/Ciência/Temas factuais (geral)" + +msgid "empty" +msgstr "Vazio" + +msgid "enable" +msgstr "Ativar" + +msgid "enable bouquet edit" +msgstr "Editar grupo de favoritos" + +msgid "enable favourite edit" +msgstr "Editar favoritos" + +msgid "enable move mode" +msgstr "Organizar/mover itens" + +msgid "enabled" +msgstr "Ativo" + +msgid "end alternatives edit" +msgstr "Salvar modificações" + +msgid "end bouquet edit" +msgstr "Salvar modificações" + +msgid "end cut here" +msgstr "Terminar corte aqui" + +msgid "end favourites edit" +msgstr "Salvar modificações" + +msgid "entertainment (10-16 year old)" +msgstr "Entretenimento (10-16 anos)" + +msgid "entertainment (6-14 year old)" +msgstr "Entretenimento (6-14 anos)" + +msgid "equal to" +msgstr "igual a" + +msgid "equestrian" +msgstr "Equestre" + +msgid "exit DVD player or return to file browser" +msgstr "Sair do reprodutor de DVD ou voltar à lista de arquivos" + +msgid "exit movielist" +msgstr "Sair da lista de vídeos" + +msgid "exit network adapter configuration" +msgstr "Sair da configuração de rede" + +msgid "exit networkadapter setup menu" +msgstr "Sair da configuração de rede" + +msgid "experimental film/video" +msgstr "Filme/vídeo experimental " + +msgid "false" +msgstr "Falso" + +msgid "fashion" +msgstr "Moda" + +msgid "fileformats (BMP, PNG, JPG, GIF)" +msgstr "Formatos (BMP, PNG, JPG, GIF)" + +msgid "filename" +msgstr "Nome do arquivo" + +msgid "film/cinema" +msgstr "Filme/Cinema" + +msgid "fine arts" +msgstr "Belas artes" + +msgid "fine-tune your display" +msgstr "Ajuste fino da imagem" + +msgid "fitness & health" +msgstr "Fitness e Saúde" + +msgid "flat alphabetic" +msgstr "Ordenar alfabeticamente" + +msgid "flat alphabetic reverse" +msgstr "Ordem alfabética invertida" + +msgid "folk/traditional music" +msgstr "Folk/Música tradicional" + +msgid "football/soccer" +msgstr "Futebol" + +msgid "foreign countries/expeditions" +msgstr "Países estrangeiros/Expedições" + +msgid "forward to the next chapter" +msgstr "Próximo capítulo" + +msgid "free" +msgstr "Livre" + +msgid "from" +msgstr "" + +msgid "further education" +msgstr "Educação" + +msgid "game show/quiz/contest" +msgstr "Game show/Quiz/Concurso" + +msgid "gardening" +msgstr "Jardinagem" + +msgid "go to deep standby" +msgstr "Desligar" + +msgid "go to standby" +msgstr "Ir para StandBy" + +msgid "grab this frame as bitmap" +msgstr "Usar esta imagem como bitmap" + +msgid "green" +msgstr "Verde" + +msgid "handicraft" +msgstr "Artesanato" + +msgid "height" +msgstr "Altura" + +msgid "help..." +msgstr "Ajuda" + +msgid "horizontal" +msgstr "Horizontal" + +msgid "information/education/school program" +msgstr "Informação/Educação/Escola" + +msgid "init module" +msgstr "Módulo de início" + +msgid "init modules" +msgstr "Módulos de início" + +msgid "insert mark here" +msgstr "Inserir marcador aqui" + +msgid "invalid type" +msgstr "Tipo inválido" + +msgid "jazz" +msgstr "Jazz" + +msgid "jump back to the previous title" +msgstr "Título anterior" + +msgid "jump forward to the next title" +msgstr "Próximo título" + +msgid "languages" +msgstr "Idiomas" + +msgid "leave movie player..." +msgstr "Sair do reprodutor de mídia" + +msgid "left" +msgstr "Esquerda" + +msgid "left, wrapped" +msgstr "à esquerda" + +msgid "leisure hobbies (general)" +msgstr "Lazer/Hobbies (geral)" + +msgid "length" +msgstr "comprimento" + +msgid "limit ..., aborting !" +msgstr "limite. Cancelando..." + +msgid "list style compact" +msgstr "Lista compacta" + +msgid "list style compact with description" +msgstr "Lista compacta com descrição" + +msgid "list style default" +msgstr "Lista normal" + +msgid "list style single line" +msgstr "Lista em linha simples" + +msgid "literature" +msgstr "Literatura" + +msgid "live broadcast" +msgstr "Transmissão ao-vivo" + +msgid "locked" +msgstr "Sintonizado" + +msgid "loopthrough to" +msgstr "loopthrough para" + +msgid "magazines/reports/documentary" +msgstr "Revistas/Documentário" + +msgid "manual" +msgstr "Manual" + +msgid "martial sports" +msgstr "Esportes marciais" + +msgid "medicine/physiology/psychology" +msgstr "Medicina/Fisiologia/Psicologia" + +msgid "menu" +msgstr "Menu" + +msgid "mins" +msgstr "mins" + +msgid "minutes" +msgstr "minutos" + +msgid "month" +msgstr "mês" + +msgid "motor sport" +msgstr "Esporte a motor" + +msgid "motoring" +msgstr "Automobilismo" + +msgid "move down to last entry" +msgstr "Ir para a última entrada" + +msgid "move down to next entry" +msgstr "Ir para a entrada seguinte" + +msgid "move up to first entry" +msgstr "Ir para a primeira entrada" + +msgid "move up to previous entry" +msgstr "Ir para a entrada anterior" + +msgid "movie/drama (general)" +msgstr "Filme/Drama (geral)" + +msgid "multinorm" +msgstr "Multinorma" + +msgid "music/ballet/dance (general)" +msgstr "Música/Balé/Dança (geral)" + +msgid "musical/opera" +msgstr "Musical/Ópera" + +msgid "nature/animals/environment" +msgstr "Natureza/Animais/Ambiente" + +msgid "never" +msgstr "Nunca" + +msgid "new media" +msgstr "Nova mídia" + +msgid "news magazine" +msgstr "Revista de notícias" + +msgid "news/current affairs (general)" +msgstr "Notícias/Assuntos atuais (geral)" + +msgid "news/weather report" +msgstr "Notícias/Relatório do tempo" + +msgid "no" +msgstr "Não" + +msgid "no CAId selected" +msgstr "Nenhum CAID selecionado" + +msgid "no CI slots found" +msgstr "Nenhum slots CI encontrado" + +msgid "no module found" +msgstr "Nenhum modulo detectado" + +msgid "no storage devices found" +msgstr "Nenhum dispositivo de armazenamento encontrados " + +msgid "none" +msgstr "Nenhum" + +msgid "normal" +msgstr "Normal" + +msgid "not configured" +msgstr "Não configurado" + +msgid "not locked" +msgstr "Não sintonizado" + +msgid "not supported" +msgstr "Não suportado" + +msgid "not used" +msgstr "Não usado" + +msgid "nothing connected" +msgstr "Desconectado" + +msgid "of a DUAL layer medium used." +msgstr "de uma mídia com camada dupla usada." + +msgid "of a SINGLE layer medium used." +msgstr "de uma mídia com camada simples usada." + +msgid "off" +msgstr "Desligado" + +msgid "offset is" +msgstr "o desvio é" + +msgid "on" +msgstr "Ligado" + +msgid "on READ ONLY medium." +msgstr "na mídia SOMENTE LEITURA." + +msgid "on end of movie" +msgstr "No fim do vídeo" + +msgid "once" +msgstr "Uma vez" + +msgid "only from deep standby" +msgstr "" + +msgid "only from standby" +msgstr "" + +msgid "open EPG..." +msgstr "" + +msgid "open Info..." +msgstr "" + +msgid "open nameserver configuration" +msgstr "Abrir a configuração do servidor DNS" + +msgid "original" +msgstr "Original" + +msgid "original language" +msgstr "Idioma original" + +msgid "pass" +msgstr "Passar" + +msgid "performing arts" +msgstr "Artes Cênicas" + +msgid "play as picture in picture" +msgstr "Reproduzir como PiP" + +msgid "play in mainwindow" +msgstr "Reproduzir na janela principal" + +msgid "please press OK when ready" +msgstr "Pressione OK quando estiver pronto." + +msgid "please wait, loading picture..." +msgstr "Carregando a imagem. Aguarde..." + +msgid "popular culture/traditional arts" +msgstr "Cultura popular/Artes tradicionais" + +msgid "pre-school children's program" +msgstr "Programa infantil pré-escolar" + +msgid "receiver software because updates are available." +msgstr "software do receptor porque há atualizações disponíveis." + +msgid "record" +msgstr "Gravar" + +msgid "recording..." +msgstr "Gravando..." + +msgid "red" +msgstr "Vermelho" + +msgid "religion" +msgstr "Religião" + +msgid "remarkable people" +msgstr "Celebridades" + +msgid "remove after this position" +msgstr "Remover após esta posição" + +msgid "remove all alternatives" +msgstr "Remover todas as alternativas" + +msgid "remove all new found flags" +msgstr "Remover todas as marcas de \"Novo\"" + +msgid "remove before this position" +msgstr "Remover antes desta posição" + +msgid "remove bookmark" +msgstr "Remover favorito" + +msgid "remove directory" +msgstr "Remover diretório" + +msgid "remove entry" +msgstr "Remover item" + +msgid "remove from parental protection" +msgstr "Remover do controle de acesso" + +msgid "remove new found flag" +msgstr "Remover marca de \"Novo\"" + +msgid "remove selected satellite" +msgstr "Remover satélite selecionado" + +msgid "remove this mark" +msgstr "Remover esta marca" + +msgid "rename entry" +msgstr "Renomear item" + +msgid "repeat playlist" +msgstr "Repetir lista de reprodução" + +msgid "repeated" +msgstr "Repetir" + +msgid "reverse by date" +msgstr "Invertido por data" + +msgid "rewind to the previous chapter" +msgstr "Voltar ao capítulo anterior" + +msgid "right" +msgstr "Direita" + +msgid "right, wrapped" +msgstr "à direita" + +msgid "rock/pop" +msgstr "Rock/Pop" + +msgid "romance" +msgstr "Romance" + +msgid "save last directory on exit" +msgstr "Lembrar diretório ao sair" + +msgid "save playlist on exit" +msgstr "Salvar lista de reprodução ao sair" + +msgid "scan state" +msgstr "Estado da busca" + +msgid "science fiction/fantasy/horror" +msgstr "Ficção científica/Fantasia/Terror" + +msgid "second cable of motorized LNB" +msgstr "Segundo cabo do LNB motorizado" + +msgid "seconds" +msgstr "Segundos" + +msgid "select" +msgstr "Selecionar" + +msgid "select CAId's" +msgstr "Selecionar CAID's" + +msgid "select EPG..." +msgstr "" + +msgid "select Info..." +msgstr "" + +msgid "select menu entry" +msgstr "Selecionar entrada de menu" + +msgid "select movie" +msgstr "selecione o filme" + +msgid "select the movie path" +msgstr "Selecione o diretório de gravações" + +msgid "serious music/classic music" +msgstr "Música clássica" + +msgid "serious/classical/religious/historical movie/drama" +msgstr "Clássico/Religioso/Filme histórico/Drama" + +msgid "service PIN" +msgstr "Senha do canal" + +msgid "set as startup service" +msgstr "Ligar sempre neste canal" + +msgid "setup PIN" +msgstr "Configurar senha" + +msgid "show DVD main menu" +msgstr "Exibir menu de DVD" + +msgid "show all tags" +msgstr "Exibir todas as marcas" + +msgid "show alternatives" +msgstr "Ver alternativas" + +msgid "show event details" +msgstr "Exibir detalhes do evento" + +msgid "show extended description" +msgstr "Exibir descrição estendida" + +msgid "show mediaplayer on mainmenu" +msgstr "Exibir reprodutor de mídia no menu principal" + +msgid "show softwaremanager in setup menu" +msgstr "Exibir configuração de software no menu" + +msgid "show softwaremanager on blue button" +msgstr "Exibir configuração de software no botão azul" + +msgid "show tag menu" +msgstr "Exibir menu de marcadores" + +msgid "show transponder info" +msgstr "Informações do transponder" + +msgid "show/game show (general)" +msgstr "Show/Game show (geral)" + +msgid "shuffle" +msgstr "Aleatório" + +msgid "shut down" +msgstr "Desligar" + +msgid "simple" +msgstr "Simples" + +msgid "skip backward" +msgstr "Retornar" + +msgid "skip forward" +msgstr "Avançar" + +msgid "soap/melodram/folkloric" +msgstr "Novelas/Melodramas/Popular" + +msgid "social/political issues/economics (general)" +msgstr "Questões sociais/Políticas/Economia (geral)" + +msgid "social/spiritual science" +msgstr "Ciência social/espiritual" + +msgid "sorting of playlists" +msgstr "Ordenar listas de reprodução" + +msgid "special characters" +msgstr "Caracteres especiais" + +msgid "special events" +msgstr "Eventos especiais" + +msgid "special format data DVD (HDTV compatible)" +msgstr "Formato especial de DVD de dados (compatível com HDTV)" + +msgid "sports (general)" +msgstr "Esportes (geral)" + +msgid "sports magazine" +msgstr "Revista de esportes" + +msgid "standard" +msgstr "Padrão" + +msgid "start cut here" +msgstr "Iniciar corte aqui" + +msgid "start directory" +msgstr "Diretório inicial" + +msgid "stepsize" +msgstr "Tamanho do passo" + +msgid "stereo" +msgstr "Estéreo" + +msgid "stop using as startup service" +msgstr "Não usar como canal inicial" + +msgid "switch to bookmarks" +msgstr "Ir para favoritos" + +msgid "switch to filelist" +msgstr "Ir para lista de arquivos" + +msgid "switch to the next angle" +msgstr "Ver próximo ângulo" + +msgid "switch to the next audio track" +msgstr "Próxima trilha de áudio" + +msgid "switch to the next subtitle language" +msgstr "Próximo idioma de legenda" + +msgid "talk show" +msgstr "Talk show" + +msgid "team sports" +msgstr "Esportes de equipe" + +msgid "technology/natural science" +msgstr "Tecnologia/Ciências Naturais" + +msgid "template file" +msgstr "Arquivo modelo" + +msgid "tennis/squash" +msgstr "Tênis/Squash" + +msgid "this recording" +msgstr "esta gravação" + +msgid "this service is protected by a parental control pin" +msgstr "Canal protegido com senha" + +msgid "toggle time, chapter, audio, subtitle info" +msgstr "Alterna tempo, capítulo, áudio, informações da legenda" + +msgid "top" +msgstr "Topo" + +msgid "tourism/travel" +msgstr "Turismo/Viagens" + +msgid "true" +msgstr "Verdadeiro" + +msgid "unavailable" +msgstr "Indisponível" + +msgid "unconfirmed" +msgstr "Não confirmado" + +msgid "undefined" +msgstr "Indefinido" + +msgid "unknown" +msgstr "Desconhecido" + +msgid "unknown service" +msgstr "Serviço desconhecido" + +msgid "unpublished" +msgstr "Não publicado" + +msgid "until standby/restart" +msgstr "até standby/reiniciar" + +msgid "user defined" +msgstr "Manual" + +msgid "variety show" +msgstr "Show de variedades" + +msgid "vertical" +msgstr "Vertical" + +msgid "wait for ci..." +msgstr "Aguardando CI..." + +msgid "wait for mmi..." +msgstr "Aguardando MMI..." + +msgid "waiting" +msgstr "Aguardando" + +msgid "water sport" +msgstr "Esporte aquático" + +msgid "weekly" +msgstr "Semanal" + +msgid "west" +msgstr "Oeste" + +msgid "when PiPzap enabled zap channel down..." +msgstr "" + +msgid "when PiPzap enabled zap channel up..." +msgstr "" + +msgid "white" +msgstr "Branco" + +msgid "whitelist" +msgstr "Lista branca" + +msgid "width" +msgstr "largura" + +msgid "winter sport" +msgstr "Esporte de inverno" + +msgid "wireless network interface" +msgstr "Interface de rede sem fio" + +#, python-format +msgid "with %d error" +msgid_plural "with %d errors" +msgstr[0] "com %d de erro" +msgstr[1] "com %d de erros" + +msgid "working" +msgstr "trabalhando" + +msgid "yellow" +msgstr "Amarelo" + +msgid "yes" +msgstr "Sim" + +msgid "yes (keep feeds)" +msgstr "Sim (manter os feeds)" + +msgid "zap" +msgstr "Zap" + +msgid "zap and record" +msgstr "Assistir e gravar" + +msgid "zapped" +msgstr "zapped" + +#~ msgid "" +#~ "\n" +#~ "System will restart after the restore!" +#~ msgstr "" +#~ "\n" +#~ "O sistema vai reiniciar depois da restauração!" + +#~ msgid " wireless networks found!" +#~ msgstr "redes sem fios encontradas!" + +#~ msgid "/usr/share/enigma2 directory" +#~ msgstr "Pasta /usr/share/enigma2" + +#~ msgid "/var directory" +#~ msgstr "Pasta /var " + +#~ msgid "A demo plugin for TPM usage." +#~ msgstr "Demonstração de uso do plugin TPM." + +#~ msgid "AC3 downmix" +#~ msgstr "AC3 downmix" + +#~ msgid "Action:" +#~ msgstr "Ação:" + +#~ msgid "Activate PiP" +#~ msgstr "Ativar PiP" + +#~ msgid "Add WLAN configuration?" +#~ msgstr "Adicionar configuração de WLAN?" + +#~ msgid "Add network configuration?" +#~ msgstr "Adicionar configuração de rede?" + +#~ msgid "Add/remove timer for current event" +#~ msgstr "Ad/Rem temporizador do evento atual" + +#~ msgid "Adds wlan configuration if enabled." +#~ msgstr "Adiciona a configuração de rede sem fios, se ativada." + +#~ msgid "Adjust HDMI CEC settings" +#~ msgstr "Ajustar configurações HDMI CEC" + +#~ msgid "After pressing OK, please wait!" +#~ msgstr "Depois de pressionar 'OK', aguarde por favor!" + +#~ msgid "All satellites" +#~ msgstr "Todos os satélites" + +#~ msgid "Always ask before sending" +#~ msgstr "Perguntar sempre antes de enviar" + +#~ msgid "And will shutdown your receiver over " +#~ msgstr "E desligará o receptor após" + +#~ msgid "Anonymize crashlog?" +#~ msgstr "Enviar relatório de erros anônimo?" + +#~ msgid "" +#~ "Are you sure you want to restore\n" +#~ "following backup:\n" +#~ msgstr "" +#~ "Tem certeza que quer restaurar\n" +#~ "este backup:\n" + +#~ msgid "Auto-focus" +#~ msgstr "Focagem-auto" + +#~ msgid "Backup" +#~ msgstr "Backup" + +#~ msgid "Backup Location" +#~ msgstr "Local do backup" + +#~ msgid "Backup Mode" +#~ msgstr "Modo do backup" + +#~ msgid "Backup done." +#~ msgstr "O backup terminou." + +#~ msgid "Behavior of 'pause' when paused" +#~ msgstr "Comportamento do Pause, quando pausado" + +#~ msgid "By pressing the OK Button on your remote control, the info bar is being displayed." +#~ msgstr "Ao pressionar 'OK' do seu controle remoto, a barra de info irá aparecer." + +#~ msgid "CF Drive" +#~ msgstr "Drive de Compact Flash" + +#~ msgid "Choose Tuner" +#~ msgstr "Escolha o tuner" + +#~ msgid "Choose a wireless network" +#~ msgstr "Escolha uma rede sem fios" + +#~ msgid "Choose bouquet" +#~ msgstr "Escolha o bouquet" + +#~ msgid "Choose upgrade source" +#~ msgstr "Escolha um fonte de atualização" + +#~ msgid "Choose your Skin" +#~ msgstr "Escolha de tema" + +#~ msgid "Cleanup Wizard" +#~ msgstr "Assistente de limpeza" + +#~ msgid "Cleanup Wizard settings" +#~ msgstr "Configurações do assistente de limpeza" + +#~ msgid "CleanupWizard" +#~ msgstr "Assistente de limpeza" + +#~ msgid "Committed DiSEqC command" +#~ msgstr "Porta da DiSEqC (Committed)" + +#~ msgid "CommonInterface" +#~ msgstr "Interface comum" + +#~ msgid "Configure if and how service type icons will be shown." +#~ msgstr "Configurar como os icones do serviço serão exibidos." + +#~ msgid "Configure if service picons will be shown in the servicelist." +#~ msgstr "Configurar se os ícones de serviço serão exibidos na lista." + +#~ msgid "Configure the behavior of the 'pause' key when movie playback is already paused." +#~ msgstr "Configurar o comportamento do botão Pause quando a reprodução já está pausada." + +#~ msgid "Configure the duration in hours and action, which could be shut down or standby, when the receiver is not controlled." +#~ msgstr "Configurar a duração em horas e a ação, que pode ser desligar ou em espera, quando o receptor está inativo." + +#~ msgid "Configure the duration in minutes and action, which could be shut down or standby, for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +#~ msgstr "Configurar a duração em minutos e a ação, que pode ser desligar ou em espera, usando o temporizador. Selecione a opção desejada e pressione Verde ou OK para iniciar/parar o temporizador." + +#~ msgid "Confirm shutdown:" +#~ msgstr "Confirmar antes de desligar:" + +#~ msgid "Crashlog settings" +#~ msgstr "Definições de relatórios de erros" + +#~ msgid "CrashlogAutoSubmit" +#~ msgstr "Submissão automática de relatórios de erros" + +#~ msgid "CrashlogAutoSubmit settings" +#~ msgstr "Configurações de submissão automática de relatórios de erros" + +#~ msgid "CrashlogAutoSubmit settings..." +#~ msgstr "Configurações de submissão automática de relatórios de erros..." + +#~ msgid "Custom text position" +#~ msgstr "Posição das legendas" + +#~ msgid "DTS downmix" +#~ msgstr "Downmix DTS" + +#~ msgid "Decide if you want to enable or disable the Cleanup Wizard." +#~ msgstr "Decida se quer ativar ou desativar o assistente de limpeza." + +#~ msgid "Decide what should be done when crashlogs are found." +#~ msgstr "Decida o que fazer quando relatórios de erros forem encontrados." + +#~ msgid "Decide what should happen to the crashlogs after submission." +#~ msgstr "Decida o que deve acontecer aos relatórios de erros após a sua submissão." + +#~ msgid "Delete crashlogs" +#~ msgstr "Apagar os relatórios de erros" + +#~ msgid "" +#~ "Delete no more configured satellite\n" +#~ "%s?" +#~ msgstr "" +#~ "Apagar os satélites não configurados\n" +#~ "%s?" + +#~ msgid "DiSEqC repeats" +#~ msgstr "Repetir comando DiSEqC" + +#~ msgid "Disable crashlog reporting" +#~ msgstr "Desabilitar o reporte de relatórios de erros" + +#~ msgid "Dish" +#~ msgstr "Antena" + +#~ msgid "" +#~ "Do you really want to REMOVE\n" +#~ "the plugin \"%s\"?" +#~ msgstr "" +#~ "Deseja mesmo REMOVER\n" +#~ "o plugin \"%s\"?" + +#~ msgid "" +#~ "Do you want to backup now?\n" +#~ "After pressing OK, please wait!" +#~ msgstr "" +#~ "Deseja fazer o backup agora?\n" +#~ "Depois de pressionar 'OK',espere por favor!" + +#~ msgid "Do you want to submit your email address and name so that we can contact you if needed?" +#~ msgstr "Deseja enviar o seu endereço de e-mail e nome para o contactarmos se preciso?" + +#~ msgid "Do you want to view a tutorial?" +#~ msgstr "Deseja ver o manual?" + +#~ msgid "Don't ask, just send" +#~ msgstr "Não perguntar, só enviar" + +#~ msgid "Done - Installed or upgraded %d packages" +#~ msgstr "'OK' - %d pacotes instalados ou atualizados" + +#~ msgid "Edit Title" +#~ msgstr "Editar o título" + +#~ msgid "Enable Cleanup Wizard?" +#~ msgstr "Ativar \"Gestor de limpeza\"?" + +#~ msgid "Enable timer" +#~ msgstr "Temporizador ativo" + +#~ msgid "EndTime" +#~ msgstr "Terminado" + +#~ msgid "Enter your email address so that we can contact you if needed." +#~ msgstr "Insira o seu endereço de e-mail para o contactarmos se preciso." + +#~ msgid "Exit the cleanup wizard" +#~ msgstr "Sair do assistente de limpeza" + +#~ msgid "Exit wizard" +#~ msgstr "Sair" + +#~ msgid "For more information see www.openpli.org" +#~ msgstr "Para mais informações visite \"www.openpli.org\"" + +#~ msgid "General AC3 delay (ms)" +#~ msgstr "Atraso AC3 geral (ms)" + +#~ msgid "General PCM delay (ms)" +#~ msgstr "Atraso PCM geral (ms)" + +#~ msgid "Goto specific data/time" +#~ msgstr "Ir para a data/tempo específico" + +#~ msgid "Guard Interval" +#~ msgstr "Intervalo" + +#~ msgid "How to handle found crashlogs?" +#~ msgstr "O que fazer com relatórios de erros encontrados?" + +#~ msgid "Include your email and name (optional) in the mail?" +#~ msgstr "Incluir seu e-mail e nome (opcional) no e-mail?" + +#~ msgid "Install settings, skins, software..." +#~ msgstr "Instalar settings, skins, software..." + +#~ msgid "Installation finished." +#~ msgstr "Instalação terminada." + +#~ msgid "Installing default sat lists... Please wait..." +#~ msgstr "Instalando lista de canais padrão... Por favor aguarde..." + +#~ msgid "Installing defaults... Please wait..." +#~ msgstr "Instalando padrões... Por favor aguarde..." + +#~ msgid "Installing package content... Please wait..." +#~ msgstr "Instalando pacote... Por favor aguarde..." + +#~ msgid "Keep old timers for how many days" +#~ msgstr "Manter agendamentos antigos por quantos dias" + +#~ msgid "Kill partition table" +#~ msgstr "Eliminar a tabela de partições" + +#~ msgid "Letzeburgesch" +#~ msgstr "Luxemburguês" + +#~ msgid "Mainmenu" +#~ msgstr "Menu principal" + +#~ msgid "Margin after record" +#~ msgstr "Margem depois de gravar" + +#~ msgid "MediaPlayer" +#~ msgstr "Reproduzir mídia" + +#~ msgid "Memory positions" +#~ msgstr "Posições de memória" + +#~ msgid "Network Setup" +#~ msgstr "Config. de rede" + +#~ msgid "NetworkWizard" +#~ msgstr "Assistente de Rede" + +#~ msgid "No packages were upgraded yet. So you can check your network and try again." +#~ msgstr "Nenhum pacote atualizado. Verifique a sua rede e tente outra vez." + +#~ msgid "No picture on TV? Press EXIT and retry." +#~ msgstr "Sem imagem na TV? Pressione 'EXIT' e tente de novo." + +#~ msgid "No sat tuner found!" +#~ msgstr "Tuner de satélite não encontrado!" + +#~ msgid "No satellite frontend found!!" +#~ msgstr "Nenhum satélite encontrado." + +#~ msgid "No, but restart from beginning" +#~ msgstr "Não, voltar ao início" + +#~ msgid "No, not now" +#~ msgstr "Agora não" + +#~ msgid "No, scan later manually" +#~ msgstr "Não. Busca manual depois." + +#~ msgid "No, send them never" +#~ msgstr "Nunca enviar" + +#~ msgid "Nothing to upgrade" +#~ msgstr "Sem atualizações!" + +#~ msgid "OK, remove another extensions" +#~ msgstr "'OK', remova outras extensões" + +#~ msgid "OK, remove some extensions" +#~ msgstr "'OK', remova algumas extensões" + +#~ msgid "OSD visibility" +#~ msgstr "Visibilidade do OSD" + +#~ msgid "Open service list and select next channel" +#~ msgstr "Abrir a lista de canais e selecionar próximo canal" + +#~ msgid "Open service list and select previous channel" +#~ msgstr "Abrir a lista de canais e selecionar canal anterior" + +#~ msgid "Optionally enter your name if you want to." +#~ msgstr "Opcionalmente introduza o seu nome, se desejado." + +#~ msgid "Orbital Position" +#~ msgstr "Posição orbital" + +#~ msgid "Package removal failed.\n" +#~ msgstr "A remoção de pacote falhou.\n" + +#~ msgid "Package removed successfully.\n" +#~ msgstr "Pacote removido com sucesso.\n" + +#~ msgid "Packages" +#~ msgstr "Pacotes" + +#~ msgid "Please be aware, that anyone can disable the parental control, if you have not set a PIN." +#~ msgstr "Por favor tenha atenção! Qualquer um pode desabilitar o controle de pais se não definir um PIN." + +#~ msgid "Please choose the default services lists you want to install." +#~ msgstr "Por favor escolha a lista padrão que deseja instalar." + +#~ msgid "Please enter your email address here:" +#~ msgstr "Por favor introduza o seu endereço de e-mail aqui (opcional):" + +#~ msgid "Please enter your name here (optional):" +#~ msgstr "Por favor introduza o seu nome aqui (opcional):" + +#~ msgid "Please press OK!" +#~ msgstr "Pressione 'OK'!" + +#~ msgid "Please select an extension to remove." +#~ msgstr "Por favor escolha uma extensão a ser removida." + +#~ msgid "Please select an option below." +#~ msgstr "Por favor selecione uma das seguintes opções." + +#~ msgid "Please wait while removing selected package..." +#~ msgstr "Por favor aguarde enquanto o pacote selecionado é removido..." + +#~ msgid "Please wait while searching for removable packages..." +#~ msgstr "Por favor aguarde enquanto pocotes removíveis são procurados..." + +#~ msgid "Press '0' to toggle internal/external PiP." +#~ msgstr "Pressione 0 para alternar entre PiP interno/externo." + +#~ msgid "Remove Bookmark" +#~ msgstr "Remover marcador" + +#~ msgid "Remove Plugins" +#~ msgstr "Remover plugins" + +#~ msgid "Remove finished." +#~ msgstr "A remoção acabou." + +#~ msgid "Remove timer" +#~ msgstr "Remover temporizador" + +#~ msgid "Removed successfully." +#~ msgstr "A remoção foi feita com sucesso." + +#~ msgid "Rename crashlogs" +#~ msgstr "Renomear relatórios de erros" + +#~ msgid "Restore running" +#~ msgstr "Restauração em progresso" + +#~ msgid "Sat / Dish Setup" +#~ msgstr "Definições Sat / Antena" + +#~ msgid "Save Playlist" +#~ msgstr "Gravar lista" + +#~ msgid "Scan QAM128" +#~ msgstr "Scan QAM128" + +#~ msgid "Scan QAM16" +#~ msgstr "Scan QAM16" + +#~ msgid "Scan QAM256" +#~ msgstr "Scan QAM256" + +#~ msgid "Scan QAM32" +#~ msgstr "Scan QAM32" + +#~ msgid "Scan QAM64" +#~ msgstr "Scan QAM64" + +#~ msgid "Scan SR6875" +#~ msgstr "Scan SR6875" + +#~ msgid "Scan SR6900" +#~ msgstr "Scan SR6900" + +#~ msgid "Scan band EU HYPER" +#~ msgstr "Scan band EU HYPER" + +#~ msgid "Scan band EU SUPER" +#~ msgstr "Scan band EU SUPER" + +#~ msgid "Scan band EU UHF IV" +#~ msgstr "Scan band EU UHF IV" + +#~ msgid "Scan band EU UHF V" +#~ msgstr "Scan band EU UHF V" + +#~ msgid "Scan band EU VHF I" +#~ msgstr "Scan band EU VHF I" + +#~ msgid "Scan band EU VHF III" +#~ msgstr "Scan band EU VHF III" + +#~ msgid "Scan band US HIGH" +#~ msgstr "Scan band US HIGH" + +#~ msgid "Scan band US HYPER" +#~ msgstr "Scan band US HYPER" + +#~ msgid "Scan band US LOW" +#~ msgstr "Scan band US LOW" + +#~ msgid "Scan band US MID" +#~ msgstr "Scan band US MID" + +#~ msgid "Scan band US SUPER" +#~ msgstr "Scan band US SUPER" + +#~ msgid "Select package" +#~ msgstr "Selecionar pacote" + +#~ msgid "Send DiSEqC" +#~ msgstr "Enviar comando DiSEqC" + +#~ msgid "Service Scan" +#~ msgstr "Busca de canais" + +#~ msgid "Set available internal memory threshold for the warning." +#~ msgstr "Definir limite de memória interna disponível para aviso." + +#~ msgid "Show picons in servicelist" +#~ msgstr "Exibir ícones na lista de serviços" + +#~ msgid "Shutdown after current event" +#~ msgstr "Desligar após o evento atual" + +#~ msgid "Shutdown in " +#~ msgstr "Desligar em " + +#~ msgid "Sleep timer action:" +#~ msgstr "Ação do temporizador:" + +#~ msgid "" +#~ "Sorry your Backup destination does not exist\n" +#~ "\n" +#~ "Please choose an other one." +#~ msgstr "" +#~ "Desculpe mas o seu backup não existe\n" +#~ "\n" +#~ "Por favor selecione outro." + +#~ msgid "" +#~ "Sorry, your backup destination is not writeable.\n" +#~ "\n" +#~ "Please choose another one." +#~ msgstr "" +#~ "Desculpe, o seu destino para backup não é acessível.\n" +#~ "\n" +#~ "Por favor escolha outro destino." + +#~ msgid "Standby / Restart" +#~ msgstr "Standby / Reiniciar" + +#~ msgid "Swap SNR in db with SNR in percentage on OSD" +#~ msgstr "Trocar o SNR em dB por porcentagem na infobar" + +#~ msgid "Switch next channel" +#~ msgstr "Próximo canal" + +#~ msgid "TV system" +#~ msgstr "Sistema de TV" + +#~ msgid "Test-Messagebox?" +#~ msgstr "Testar caixa de mensagens?" + +#~ msgid "" +#~ "The input port should be configured now.\n" +#~ "You can now configure the screen by displaying some test pictures. Do you want to do that now?" +#~ msgstr "" +#~ "A porta de entrada deve ser configurada agora.\n" +#~ "Pode agora configurar a tela, ao exibir algumas imagens de testes. Deseja continuar?" + +#~ msgid "The installation of the default services lists is finished." +#~ msgstr "A instalação da lista de canais padrão foi concluída." + +#~ msgid "The package doesn't contain anything." +#~ msgstr "O pacote está vazio." + +#~ msgid "The package:" +#~ msgstr "O pacote:" + +#~ msgid "There are no default services lists in your image." +#~ msgstr "Não existem listas de canais padrão na sua imagem." + +#~ msgid "There are no default settings in your image." +#~ msgstr "Não existem configurações padrão na sua imagem." + +#~ msgid "There are now " +#~ msgstr "Agora existem" + +#~ msgid "There was an error. The package:" +#~ msgstr "Ocorreu um erro. O pacote:" + +#~ msgid "This is step number 2." +#~ msgstr "Passo 2." + +#~ msgid "Timer status:" +#~ msgstr "Estado do temporizador:" + +#~ msgid "Transmission Mode" +#~ msgstr "Modo de transmissão" + +#~ msgid "Try to find used Transponders in cable network.. please wait..." +#~ msgstr "Tentando encontrar transponders usados na rede do cabo. Espere por favor..." + +#~ msgid "Tuner " +#~ msgstr "Tuner" + +#~ msgid "Tuning step size" +#~ msgstr "Tamanho do passo" + +#~ msgid "Unattended upgrade without GUI and reboot system" +#~ msgstr "Atualizar sem interface visual e reiniciar o sistema" + +#~ msgid "Uncommitted DiSEqC command" +#~ msgstr "Porta da DiSEqC (Uncommitted)" + +#~ msgid "Updating finished. Here is the result:" +#~ msgstr "Atualização terminada. Resultado:" + +#~ msgid "Updating... Please wait... This can take some minutes..." +#~ msgstr "Atualizando... Espere por favor... Pode levar alguns minutos..." + +#~ msgid "Upgrade finished." +#~ msgstr "A atualização terminou." + +#~ msgid "Use Power Measurement" +#~ msgstr "Usar medidor de potência" + +#~ msgid "" +#~ "Use the left and right buttons to change an option.\n" +#~ "\n" +#~ "Please set up tuner A" +#~ msgstr "" +#~ "Use os botões direita e esquerda para selecionar.\n" +#~ "\n" +#~ "Selecione o tuner A" + +#~ msgid "Use time of currently running service" +#~ msgstr "Ao fim do programa atual" + +#~ msgid "Video Fine-Tuning Wizard" +#~ msgstr "Assistente de sintonia fina de vídeo" + +#~ msgid "Videoenhancement Setup" +#~ msgstr "Opções de imagem" + +#~ msgid "View Movies..." +#~ msgstr "Ver gravações" + +#~ msgid "Warn if free space drops below (kB):" +#~ msgstr "Avisar se o espaço livre for menos de (kB):" + +#~ msgid "What to do with submitted crashlogs?" +#~ msgstr "O que fazer com os relatórios de erros enviados?" + +#~ msgid "When enabled, external subtitles (in media files) will be displayed in yellow, instead of the original color." +#~ msgstr "Quando ativado, legendas externas (em arquivos de mídia) serão exibidas em amarelo, em vez da cor original." + +#~ msgid "When enabled, your TV will automatically select the SCART input when you switch on your receiver." +#~ msgstr "Quando ativado, a TV vai selecionar automaticamente a entrada SCART quando você ligar o seu receptor." + +#~ msgid "Yes, and don't ask again" +#~ msgstr "Sim, e não perguntar novamente" + +#~ msgid "Yes, view the tutorial" +#~ msgstr "Sim, ver o tutorial" + +#~ msgid "You can choose some default settings now. Please select the settings you want to be installed." +#~ msgstr "Pode escolher algumas configurações padrão agora. Por favor selecione as configurações a serem instaladas." + +#~ msgid "You can choose, what you want to install..." +#~ msgstr "Pode escolher o que quer instalar..." + +#~ msgid "You chose not to install any default services lists." +#~ msgstr "Escolheu não instalar nenhuma lista de canais padrão." + +#~ msgid "You chose not to install any default settings. You can however install the default settings later in the settings menu." +#~ msgstr "Escolheu não instalar nenhuma configuração. Pode instalar uma configuração depois no menu de definições." + +#~ msgid "You chose not to install anything. Please press OK finish the install wizard." +#~ msgstr "Escolheu não instalar nada. Pressione 'OK' para terminar o assistente de instalação." + +#~ msgid "" +#~ "You need to set a PIN code and hide it from your children.\n" +#~ "\n" +#~ "Do you want to set the pin now?" +#~ msgstr "" +#~ "É necessário definir um código PIN e escondê-lo das crianças.\n" +#~ "\n" +#~ "Quer definir um PIN agora?" + +#~ msgid "Your email address:" +#~ msgstr "Seu endereço de e-mail:" + +#~ msgid "Your name (optional):" +#~ msgstr "Nome (opcional):" + +#~ msgid "Your receiver will shutdown due to inactivity." +#~ msgstr "O receptor será desligado por inatividade." + +#~ msgid "Your receiver will shutdown due to the sleeptimer." +#~ msgstr "O receptor será desligado pelo temporizador." + +#~ msgid "Zap back to service before satfinder?" +#~ msgstr "Voltar ao canal anterior à busca de satélites?" + +#~ msgid "" +#~ "are you sure you want to restore\n" +#~ "following backup:\n" +#~ msgstr "" +#~ "deseja instalar\n" +#~ "arquivo guardado:\n" + +#~ msgid "could not be removed" +#~ msgstr "não foi possível remover" + +#~ msgid "dreambox advanced remote control (native)" +#~ msgstr "Controle remoto avançado de DreamBox (nativo)" + +#~ msgid "dreambox front panel" +#~ msgstr "Painel frontal do DreamBox" + +#~ msgid "dreambox ir keyboard" +#~ msgstr "Teclado IR de DreamBox" + +#~ msgid "dreambox ir mouse" +#~ msgstr "Mouse IR de DreamBox" + +#~ msgid "dreambox remote control (native)" +#~ msgstr "Controle de DreamBox (nativo)" + +#~ msgid "jump to listbegin" +#~ msgstr "saltar para o início da lista" + +#~ msgid "movie list" +#~ msgstr "lista de filmes" + +#~ msgid "open servicelist(down)" +#~ msgstr "abrir lista de canais (baixo)" + +#~ msgid "open servicelist(up)" +#~ msgstr "abrir lista de canais (cima)" + +#~ msgid "play from next mark or playlist entry" +#~ msgstr "Iniciar na próxima marca ou próxima entrada na lista de reprodução" + +#~ msgid "play from previous mark or playlist entry" +#~ msgstr "Iniciar marca anterior ou entrada anterior na lista de reprodução" + +#~ msgid "previous channel" +#~ msgstr "canal anterior" + +#~ msgid "scan done!" +#~ msgstr "busca completa!" + +#~ msgid "scan in progress - %d%% done!" +#~ msgstr "scan em progresso - %d%% pronto!" + +#~ msgid "select interface" +#~ msgstr "selecionar interface" + +#~ msgid "shutdown" +#~ msgstr "Desligar" + +#~ msgid "standby" +#~ msgstr "Espera/StandBy" + +#~ msgid "stop recording" +#~ msgstr "parar a gravação" + +#~ msgid "tuner is not supported" +#~ msgstr "Tuner não suportado" + +#~ msgid "view recordings..." +#~ msgstr "ver gravações..." + +#~ msgid "was removed successfully" +#~ msgstr "foi removido com sucesso" diff --git a/po/ro.po b/po/ro.po new file mode 100644 index 0000000..1c9e2a6 --- /dev/null +++ b/po/ro.po @@ -0,0 +1,8251 @@ +# Romanian translations for tuxbox-enigma package. +# Copyright (C) 2005 THE tuxbox-enigma'S COPYRIGHT HOLDER +# This file is distributed under the same license as the tuxbox-enigma package. +# Automatically generated, 2005. +# +msgid "" +msgstr "" +"Project-Id-Version: tuxbox-enigma 0.0.1\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-07-21 19:08+0200\n" +"PO-Revision-Date: 2010-03-09 21:03+0100\n" +"Last-Translator: \n" +"Language-Team: HDTV ROMANIA(superonic,costel_mbc,neutrin,otheitis,cipy_1982,neutrin,runcanion)\n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +msgid "" +"\n" +"Advanced options and settings." +msgstr "" +"\n" +"Optiuni avansate si setarile" + +msgid "" +"\n" +"After pressing OK, please wait!" +msgstr "" +"\n" +"Dupa apasarea OK, va rog asteptati!" + +msgid "" +"\n" +"Backup your receiver settings." +msgstr "" + +msgid "" +"\n" +"Edit the upgrade source address." +msgstr "" +"\n" +"Editati pe adresa de upgrade." + +msgid "" +"\n" +"Manage extensions or plugins for your receiver" +msgstr "" + +msgid "" +"\n" +"Online update of your receiver software." +msgstr "" + +msgid "" +"\n" +"Press OK on your remote control to continue." +msgstr "" +"\n" +"Apasati Ok pe telecomanda pentru a continua." + +msgid "" +"\n" +"Restore your backups by date." +msgstr "" +"\n" +"Restaurare backups dupa data." + +msgid "" +"\n" +"Restore your receiver settings." +msgstr "" + +msgid "" +"\n" +"Restore your receiver with a new firmware." +msgstr "" + +msgid "" +"\n" +"Scan for local extensions and install them." +msgstr "" + +msgid "" +"\n" +"Select your backup device.\n" +"Current device: " +msgstr "" +"\n" +"Alege pe backup device. \n" +"Curent device: " + +msgid "" +"\n" +"View, install and remove available or installed packages." +msgstr "" +"\n" +"Vezi,instalati si sa scoateti pachetele dinsponibile sau instalate" + +msgid " (PiP)" +msgstr "" + +msgid " (Radio)" +msgstr "" + +msgid " (TV)" +msgstr "" + +msgid " (disabled)" +msgstr "" + +msgid " (higher than any auto)" +msgstr "" + +msgid " (higher than rotor any auto)" +msgstr "" + +msgid " (lower than any auto)" +msgstr "" + +msgid " extensions." +msgstr "" + +msgid " ms" +msgstr "" + +msgid " packages selected." +msgstr "" + +msgid " updates available." +msgstr "" + +#. TRANSLATORS: short time representation hour:minute +#, python-format +msgid "%2d:%02d" +msgstr "" + +#. TRANSLATORS: full time representation hour:minute:seconds +#, python-format +msgid "%2d:%02d:%02d" +msgstr "" + +msgid "%A %d %B" +msgstr "" + +#. TRANSLATORS: long date representations dayname daynum monthname in strftime() format! See 'man strftime' +msgid "%A %e %B" +msgstr "" + +#. TRANSLATORS: full date representation dayname daynum monthname year in strftime() format! See 'man strftime' +msgid "%A %e %B %Y" +msgstr "" + +msgid "%H:%M" +msgstr "" + +#. TRANSLATORS: short date representation short dayname daynum short monthname in strftime() format! See 'man strftime' +msgid "%a %e/%m" +msgstr "" + +#. TRANSLATORS: long date representation short dayname daynum short monthname hour:minute in strftime() format! See 'man strftime' +msgid "%a %e/%m %-H:%M" +msgstr "" + +#. TRANSLATORS: Intermediate scanning result, '%d' channel(s) have been found so far +#, fuzzy, python-format +msgid "%d channel found" +msgid_plural "%d channels found" +msgstr[0] "%d servicii gasite!" +msgstr[1] "%d servicii gasite!" + +#, python-format +msgid "%d file" +msgid_plural "%d files" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "" +msgstr[1] "" + +#, fuzzy, python-format +msgid "%d job is running in the background!" +msgid_plural "%d jobs are running in the background!" +msgstr[0] "%d lucruri se executa in fundal!" +msgstr[1] "%d lucruri se executa in fundal!" + +#, python-format +msgid "%d min" +msgstr "" + +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d minutes" +msgstr "" + +#, python-format +msgid "%d pixel wide" +msgid_plural "%d pixels wide" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "" +msgstr[1] "" + +#, fuzzy, python-format +msgid "%d subdirectory" +msgid_plural "%d subdirectories" +msgstr[0] "/var director" +msgstr[1] "/var director" + +#, fuzzy, python-format +msgid "%d wireless network found!" +msgid_plural "%d wireless networks found!" +msgstr[0] "Wireless Network" +msgstr[1] "Wireless Network" + +msgid "%d-%b-%Y %-H:%M" +msgstr "" + +msgid "%d-%m" +msgstr "" + +msgid "%d.%B %Y" +msgstr "" + +#. TRANSLATORS: VFD hour:minute daynum short monthname in strftime() format! See 'man strftime' +msgid "%k:%M %e/%m" +msgstr "" + +#, fuzzy, python-format +msgid "%s %s free disk space" +msgstr "spatiu liber pe disk" + +#, python-format +msgid "%s (%s)\n" +msgstr "" + +#. TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. +#, python-format +msgid "%s is no longer used. Should it be deleted?" +msgstr "" + +#, python-format +msgid "%s updated package available" +msgid_plural "%s updated packages available" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%s%d min" +msgstr "" + +#, python-format +msgid "%s/%s: %s" +msgstr "" + +msgid "(ZAP)" +msgstr "" + +msgid "(empty)" +msgstr "(gol)" + +msgid "(show optional DVD audio menu)" +msgstr "(afiseaza optional pe DVD audio menu)" + +msgid "* Only available if more than one interface is active." +msgstr "* Disponibil doar in cazul in care mai mult de o interfata este activa." + +msgid "/s" +msgstr "" + +msgid "0" +msgstr "" + +msgid "1" +msgstr "" + +msgid "1.0" +msgstr "" + +msgid "1.1" +msgstr "" + +msgid "1.2" +msgstr "" + +msgid "12V output" +msgstr "" + +msgid "13 V" +msgstr "" + +msgid "16:10" +msgstr "" + +msgid "16:10 Letterbox" +msgstr "" + +msgid "16:10 PanScan" +msgstr "" + +msgid "16:9" +msgstr "" + +msgid "16:9 Letterbox" +msgstr "" + +msgid "16:9 always" +msgstr "16:9 mereu" + +msgid "18 V" +msgstr "" + +msgid "2" +msgstr "" + +msgid "23.976" +msgstr "" + +msgid "24" +msgstr "" + +msgid "25" +msgstr "" + +msgid "29.97" +msgstr "" + +msgid "3" +msgstr "" + +msgid "30" +msgstr "" + +msgid "3d mode" +msgstr "" + +msgid "4" +msgstr "" + +msgid "4:3" +msgstr "" + +msgid "4:3 Letterbox" +msgstr "" + +msgid "4:3 PanScan" +msgstr "" + +msgid "5" +msgstr "" + +msgid "6" +msgstr "" + +msgid "7" +msgstr "" + +msgid "8" +msgstr "" + +msgid "9" +msgstr "" + +#, python-format +msgid ": %s" +msgstr "" + +msgid "<Current movielist location>" +msgstr "" + +msgid "<Default movie location>" +msgstr "" + +msgid "<Last timer location>" +msgstr "" + +msgid "<unknown>" +msgstr "<necunoscut>" + +msgid "??" +msgstr "" + +msgid "A" +msgstr "" + +#, fuzzy, python-format +msgid "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" +msgstr "" +"Un file de configuratia (%s) a fost modificat de la instalare.\n" +"Vrei sa tinem pe versiuna?" + +#, python-format +msgid "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" +msgstr "" +"Un file de configuratia (%s) a fost modificat de la instalare.\n" +"Vrei sa tinem pe versiuna?" + +msgid "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" + +msgid "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" + +msgid "A graphical EPG for all services of an specific bouquet" +msgstr "Un EPG cu grafice pt toate servicii de la un buchet" + +#, python-format +msgid "" +"A record has been started:\n" +"%s" +msgstr "" +"O registrare a inceput:\n" +"%s" + +msgid "" +"A recording is currently running.\n" +"What do you want to do?" +msgstr "" +"O registrare este acuma activa.\n" +"Ce doresti sa facem?" + +msgid "A recording is currently running. Please stop the recording before trying to configure the positioner." +msgstr "O registrare acuma este activa. Te rog opreste pe registrare inainte sa incerci Sa configurezi pe pozitioner." + +msgid "A recording is currently running. Please stop the recording before trying to scan." +msgstr "" + +msgid "A recording is currently running. Please stop the recording before trying to start the satfinder." +msgstr "O registrare acuma este activa. Te rog opreste pe registrare inainte sa incerci Sa pornesti pe satfinder." + +#, python-format +msgid "A required tool (%s) was not found." +msgstr "Un tool necesar (%s) nu a fost gasit." + +msgid "A search for available updates is currently in progress." +msgstr "" + +msgid "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" +msgstr "" + +msgid "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" + +msgid "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" + +msgid "A small overview of the available icon states and actions." +msgstr "" + +msgid "" +"A timer failed to record!\n" +"Disable TV and try again?\n" +msgstr "" +"Un timer a esuat sa registreze!\n" +"Dezactiveaza TV si incearca din nou?\n" + +#, fuzzy +msgid "A/V settings" +msgstr "Setarile A/V" + +msgid "AC3/DTS downmix" +msgstr "" + +msgid "Abort" +msgstr "" + +msgid "About" +msgstr "Despre" + +msgid "About..." +msgstr "Despre..." + +msgid "Accesspoint:" +msgstr "" + +msgid "Action on long powerbutton press" +msgstr "Actiune cind apasam prelungit butonul power" + +msgid "Action on short powerbutton press" +msgstr "" + +msgid "Activate Picture in Picture" +msgstr "Activeaza PIP" + +#, fuzzy +msgid "Activate current configuration" +msgstr "activeaza configurarea curenta" + +msgid "Activate network settings" +msgstr "Activeaza setari retea" + +#, fuzzy +msgid "Activate the configured network settings." +msgstr "Activeaza setari retea" + +msgid "Adapter settings" +msgstr "Adaptare setari" + +msgid "Add" +msgstr "Adauga" + +msgid "Add Bookmark" +msgstr "Adauga Bookmark" + +msgid "Add a mark" +msgstr "Adauga un mark" + +#, fuzzy +msgid "Add a nameserver entry" +msgstr "adauga intrare de nameserver" + +msgid "Add a new title" +msgstr "Adauga un nou titlu" + +#, fuzzy +msgid "Add bookmark" +msgstr "adauga bookmark" + +#, fuzzy +msgid "Add directory to playlist" +msgstr "adauga director la playlist" + +#, fuzzy +msgid "Add file to playlist" +msgstr "adauga file la playlist" + +#, fuzzy +msgid "Add files to playlist" +msgstr "adauga file-uri la playlist" + +msgid "Add more details to the crash log" +msgstr "" + +#, fuzzy +msgid "Add provider" +msgstr "adauga Provider" + +#, fuzzy +msgid "Add recording (enter recording duration)" +msgstr "adauga inregistrare (pune durata inregistrarii)" + +#, fuzzy +msgid "Add recording (enter recording endtime)" +msgstr "adauga inregistrare (pune sfarsitul inregistrarii)" + +#, fuzzy +msgid "Add recording (indefinitely)" +msgstr "adauga inregistrare (indefinit)" + +#, fuzzy +msgid "Add recording (stop after current event)" +msgstr "adauga inregistrare (opreste dupa evenimentul curent)" + +#, fuzzy +msgid "Add service" +msgstr "adauga Serviciu" + +msgid "Add timer" +msgstr "Adauga timer " + +msgid "Add title" +msgstr "adauga un titlu" + +msgid "Add to bouquet" +msgstr "Adauga la buchet" + +msgid "Add to favourites" +msgstr "Adauga la favorite " + +msgid "Add/remove change timer for current event" +msgstr "" + +msgid "Adjust 3D settings" +msgstr "" + +msgid "Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens." +msgstr "Ajustati setarile de culoare,astfel incat toate nuantele de culoare se distingDaca sunteti multumit de rezultat apasati Ok pentru a inchide video fine-tuning, sau foloseste pe tastele numerice pentru a selecta altetestarea screens." + +msgid "Advanced" +msgstr "" + +#, fuzzy +msgid "Advanced options" +msgstr "Optiuni avansate" + +msgid "Advanced restore" +msgstr "Restaurare avansata" + +#, fuzzy +msgid "Advanced software" +msgstr "Restaurare avansata" + +#, fuzzy +msgid "Advanced software plugin" +msgstr "Restaurare avansata" + +#, fuzzy +msgid "Advanced video enhancement setup" +msgstr "Setarile video avansate" + +#, fuzzy +msgid "Advanced video setup" +msgstr "Setarile video avansate" + +msgid "After event" +msgstr "Dupa eventul" + +msgid "Album" +msgstr "Album" + +msgid "Alignment of events" +msgstr "" + +msgid "Alignment of service names" +msgstr "" + +msgid "All" +msgstr "Toate" + +msgid "All ages" +msgstr "" + +msgid "All satellites 1 (USALS)" +msgstr "" + +msgid "All satellites 2 (USALS)" +msgstr "" + +msgid "All satellites 3 (USALS)" +msgstr "" + +msgid "All satellites 4 (USALS)" +msgstr "" + +msgid "Allocate" +msgstr "" + +msgid "Allocate unused memory index" +msgstr "" + +msgid "Allow quit movieplayer with exit" +msgstr "" + +msgid "Allow subtitle language to equal audio language" +msgstr "" + +msgid "Allow subtitles for hearing impaired" +msgstr "" + +msgid "Alpha" +msgstr "Alpha" + +#, fuzzy +msgid "Alternative" +msgstr "adauga alternative" + +#, fuzzy +msgid "Alternative numbering mode" +msgstr "Modul radio alternativ" + +msgid "Alternative services tuner priority" +msgstr "Prioritate tuner servicii alternative" + +msgid "Always ask" +msgstr "" + +msgid "Always hide infobar" +msgstr "" + +msgid "An empty filename is illegal." +msgstr "Este illegal un gol filename." + +#, fuzzy +msgid "An error occurred while downloading the packetlist. Please try again." +msgstr "A intervenit o eroare in timpul descarcarii listei. Va rugam incercati din nou." + +msgid "An unknown error occurred!" +msgstr "S-a produs o eroare necunoscuta!" + +msgid "And will put your receiver in standby over " +msgstr "" + +msgid "Any activity" +msgstr "" + +msgid "Arabic" +msgstr "Arabic" + +msgid "Are you sure to remove this entry?" +msgstr "" + +msgid "" +"Are you sure you want to activate this network configuration?\n" +"\n" +msgstr "" +"Esti sigur ca vrei sa activezi asta configuratia de retea?\n" +"\n" + +#, fuzzy +msgid "" +"Are you sure you want to delete\n" +"the following backup:\n" +msgstr "" +"Esti sigur ca vrei sa stergi\n" +"urmarire backup:\n" + +msgid "Are you sure you want to exit this wizard?" +msgstr "" + +msgid "" +"Are you sure you want to restart your network interfaces?\n" +"\n" +msgstr "" +"Esti sigur vrei sa restartezi interfata retelei?\n" +"\n" + +#, fuzzy, python-format +msgid "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Esti sigur ca vrei sa restaurezi backup-ul Enigma2?\n" +"Enigma2 va reporni dupa restaurare" + +#, fuzzy +msgid "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Esti sigur ca vrei sa restaurezi backup-ul Enigma2?\n" +"Enigma2 va reporni dupa restaurare" + +msgid "Artist" +msgstr "Artist" + +msgid "Arts/Culture" +msgstr "" + +msgid "Ask user" +msgstr "Intreaba pe user" + +#, fuzzy +msgid "Aspect ratio" +msgstr "Aspect Ratio" + +msgid "Assigned CAIds:" +msgstr "" + +msgid "Assigned services/provider:" +msgstr "" + +#, fuzzy +msgid "At beginning" +msgstr "Incepe de la capat" + +msgid "At end" +msgstr "" + +msgid "Audio" +msgstr "Audio" + +msgid "Audio PID" +msgstr "" + +msgid "Audio language selection 1" +msgstr "" + +msgid "Audio language selection 2" +msgstr "" + +msgid "Audio language selection 3" +msgstr "" + +msgid "Audio language selection 4" +msgstr "" + +#, fuzzy +msgid "Audio options..." +msgstr "Optiune de audio..." + +#, fuzzy, python-format +msgid "Audio track (%s) format" +msgstr "track audio (%s) format" + +#, fuzzy, python-format +msgid "Audio track (%s) language" +msgstr "track audio (%s) limba" + +msgid "Author: " +msgstr "Autor: " + +msgid "Authoring mode" +msgstr "Mod de authoring" + +#. TRANSLATORS: (aspect ratio policy: always try to display as fullscreen, when there is no content (black bars) on left/right, even if this breaks the aspect. +msgid "Auto" +msgstr "Auto" + +msgid "Auto chapter split every ? minutes (0=never)" +msgstr "Auto chapter se imparte la fiecare ? minute (0=niciodate)" + +msgid "Auto flesh" +msgstr "" + +msgid "Auto focus" +msgstr "" + +msgid "Auto focus commencing ..." +msgstr "" + +msgid "Auto language selection" +msgstr "" + +msgid "Auto scart switching" +msgstr "Auto scart switching" + +msgid "Automatic" +msgstr "Automat" + +#, fuzzy +msgid "Automatic scan" +msgstr "Scanare automata" + +msgid "Automatically start timeshift after" +msgstr "" + +msgid "Automatically turn on external subtitles" +msgstr "" + +msgid "Available format variables" +msgstr "Disponibile formate viariaza" + +msgid "B" +msgstr "B" + +msgid "BER" +msgstr "BER" + +msgid "BER:" +msgstr "BER:" + +msgid "Back" +msgstr "Inapoi" + +msgid "Background" +msgstr "Fond" + +#, fuzzy +msgid "Background color" +msgstr "colorit fundal" + +msgid "Background delete option" +msgstr "" + +msgid "Background delete speed" +msgstr "" + +#, fuzzy +msgid "Backup completed." +msgstr "Backup esuat." + +msgid "Backup failed." +msgstr "Backup esuat." + +msgid "Backup is running..." +msgstr "" + +msgid "Backup system settings" +msgstr "Copie de siguranta a setarilor de sistem" + +msgid "Band" +msgstr "Banda" + +msgid "Bandwidth" +msgstr "Latime de banda" + +msgid "Basque" +msgstr "" + +msgid "Begin time" +msgstr "Momentul inceperii" + +msgid "Behavior of 'pause and ok' when paused" +msgstr "" + +msgid "Behavior of 0 key in PiP-mode" +msgstr "Efectul butonului 0 in modul PiP (imagine in imagine)" + +msgid "Behavior when a movie is started" +msgstr "Cand un film este pornit" + +msgid "Behavior when a movie is stopped" +msgstr "Cand un film este oprit" + +msgid "Behavior when a movie reaches the end" +msgstr "Cand un film ajunge la final" + +msgid "Big PiP" +msgstr "" + +msgid "Bitrate:" +msgstr "" + +msgid "Black screen" +msgstr "" + +msgid "Black screen till locked" +msgstr "" + +msgid "Block noise reduction" +msgstr "" + +msgid "Blue boost" +msgstr "" + +msgid "Bookmarks" +msgstr "Semne de carte" + +msgid "Brightness" +msgstr "Luminozitate" + +msgid "Bulgarian" +msgstr "" + +msgid "Burn DVD" +msgstr "Scrie DVD" + +#, fuzzy, python-format +msgid "Burn audio track (%s)" +msgstr "burn track audio (%s)" + +msgid "Burn existing image to DVD" +msgstr "Scrie imaginea existenta pe DVD" + +msgid "Burn to DVD" +msgstr "" + +msgid "Bus: " +msgstr "Magistrala: " + +msgid "By default, SNR will be shown in dB (when supported by the tuner). This setting forces SNR to be shown as a percentage instead." +msgstr "" + +msgid "C" +msgstr "C" + +msgid "C-Band" +msgstr "Banda C" + +msgid "CH" +msgstr "" + +msgid "CI assignment" +msgstr "Asignarea CI" + +msgid "CVBS" +msgstr "CVBS" + +msgid "Cable" +msgstr "Cablu" + +msgid "Cable Scan" +msgstr "" + +#, fuzzy +msgid "Cache thumbnails" +msgstr "Memoreaza miniaturile imaginilor" + +msgid "Calculate" +msgstr "" + +msgid "Calculate all positions" +msgstr "" + +msgid "Calculation complete" +msgstr "" + +msgid "Calibrate" +msgstr "" + +msgid "Can be used for different fps between external subtitles and video." +msgstr "" + +msgid "Cancel" +msgstr "Anuleaza" + +msgid "Cannot determine" +msgstr "" + +msgid "Cannot find any signal ..., aborting !" +msgstr "" + +msgid "Cannot move files on a different disk or system to the trash can" +msgstr "" + +msgid "Cannot move to trash can" +msgstr "" + +msgid "Capacity: " +msgstr "Capacitate: " + +msgid "Card" +msgstr "Card" + +msgid "Cascade PiP" +msgstr "" + +msgid "Center DVB subtitles" +msgstr "" + +msgid "Center time-labels and remove date" +msgstr "" + +msgid "Change bouquets in quickzap" +msgstr "Permite schimbarea buchetului prin zapping" + +msgid "Change pin code" +msgstr "Schimba codul pin" + +#, fuzzy +msgid "Change recording (duration)" +msgstr "schimba inregistrare (durata)" + +#, fuzzy +msgid "Change recording (endtime)" +msgstr "schimbare inregistrare (sfarsit)" + +msgid "Change repeat and delay settings?" +msgstr "" + +msgid "Change service PIN" +msgstr "" + +msgid "Change service PINs" +msgstr "" + +msgid "Change setup PIN" +msgstr "" + +msgid "Change step size" +msgstr "" + +msgid "Change timer" +msgstr "" + +msgid "Changelog" +msgstr "" + +msgid "Channel" +msgstr "Canal" + +#, fuzzy +msgid "Channel list type" +msgstr "Meniul lista de canale" + +msgid "Channel not in services list" +msgstr "Canalul nu se gaseste in lista de servicii" + +#, fuzzy +msgid "Channel selection" +msgstr "Selectie canal" + +msgid "Channel:" +msgstr "Canal:" + +msgid "Channellist menu" +msgstr "Meniul lista de canale" + +msgid "Chap." +msgstr "Cap." + +msgid "Chapter" +msgstr "Capitol" + +msgid "Chapter:" +msgstr "Capitolul:" + +msgid "Check" +msgstr "Verifica" + +msgid "Check the internet connection" +msgstr "" + +msgid "Check the internet connection again" +msgstr "" + +#, fuzzy +msgid "Checking filesystem..." +msgstr "Se verifica sistemul de fisiere..." + +msgid "Checking the internet connection" +msgstr "" + +#, python-format +msgid "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" +msgstr "" + +msgid "Children/Youth" +msgstr "" + +msgid "Choose which tuner to configure." +msgstr "" + +msgid "Circular left" +msgstr "Circular stang" + +msgid "Circular right" +msgstr "Circular drept" + +msgid "Cleanup" +msgstr "Curatenie" + +msgid "Clear" +msgstr "" + +msgid "Clear before scan" +msgstr "Goleste lista inainte de scanare" + +msgid "Clear fixed" +msgstr "" + +msgid "Clear log" +msgstr "Sterge logul" + +#, fuzzy +msgid "Clear playlist" +msgstr "sterge playlist" + +msgid "Close" +msgstr "Inchide" + +msgid "Close PiP on exit" +msgstr "" + +msgid "Close title selection" +msgstr "" + +msgid "Code rate HP" +msgstr "" + +msgid "Code rate LP" +msgstr "" + +msgid "Coderate HP" +msgstr "Rata de codificare HP" + +msgid "Coderate LP" +msgstr "Rata de codificare LP" + +msgid "Collection name" +msgstr "Nume colectie" + +msgid "Collection settings" +msgstr "Setari colectie" + +#, fuzzy +msgid "Color format" +msgstr "Format color" + +msgid "Command execution..." +msgstr "Executia comenzii..." + +msgid "Command order" +msgstr "Ordinea comenzilor" + +msgid "Common Interface" +msgstr "Common Interface" + +#, fuzzy +msgid "Common Interface assignment" +msgstr "Atribuirea pentru Common Interface" + +msgid "Communication" +msgstr "Comunicare" + +#, fuzzy +msgid "Compact flash" +msgstr "Compact Flash" + +msgid "Complete" +msgstr "Incheiat" + +msgid "Complex (allows mixing audio tracks and aspects)" +msgstr "Complex (permite orice combinatie de canale audio si aspecte)" + +msgid "Composition of the recording filenames" +msgstr "" + +#, fuzzy +msgid "Configuration mode" +msgstr "Mod configurare" + +#, fuzzy, python-format +msgid "Configuration mode: %s" +msgstr "Mod configurare" + +#, fuzzy +msgid "Configuration..." +msgstr "Configurare retea..." + +msgid "Configure an additional delay to improve external subtitle synchronisation." +msgstr "" + +msgid "Configure an additional delay to improve subtitle synchronisation." +msgstr "" + +msgid "Configure for how long the infobar will remain visible after activation." +msgstr "" + +msgid "Configure for how many minutes finished events should remain visible in the EPG. Useful when you need information about an event which has just finished, or has been delayed." +msgstr "" + +msgid "Configure how recording filenames are constructed." +msgstr "" + +msgid "Configure how the fan should operate" +msgstr "" + +msgid "Configure if and how crypto icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how long the latest service in the PiP will be remembered." +msgstr "" + +msgid "Configure if and how service type icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how wide columns will be shown in the channel selection list." +msgstr "" + +msgid "Configure if service picons will be shown in the channel selection list." +msgstr "" + +msgid "Configure interface" +msgstr "" + +msgid "Configure nameservers" +msgstr "" + +msgid "Configure on which devices the background delete option should be used." +msgstr "" + +#, fuzzy +msgid "Configure remote control type" +msgstr "Tip control parental" + +msgid "Configure the DiSEqC mode for this LNB." +msgstr "" + +msgid "Configure the IP address." +msgstr "" + +msgid "Configure the aspect ratio of the screen." +msgstr "" + +msgid "Configure the behavior of the 'pause and ok' key when movie playback is already paused." +msgstr "" + +#, fuzzy +msgid "Configure the behavior when movie playback is manually stopped." +msgstr "Cand un film este oprit" + +#, fuzzy +msgid "Configure the behavior when movie playback is started." +msgstr "Cand un film este pornit" + +msgid "Configure the behavior when reaching the end of a movie, during movie playback." +msgstr "" + +msgid "Configure the border width of the subtitles. The dark border makes the subtitles easier to read on a light background." +msgstr "" + +msgid "Configure the brightness level of the front panel display during standby." +msgstr "" + +msgid "Configure the brightness level of the front panel display." +msgstr "" + +msgid "Configure the color of the external subtitles, alternative (normal in white, italic in yellow, bold in cyan, underscore in green), white or yellow." +msgstr "" + +msgid "Configure the color of the teletext subtitles." +msgstr "" + +msgid "Configure the contrast level of the front panel display." +msgstr "" + +msgid "Configure the cursor behaviour in the channel selection list. When opening the channel selection list you can keep on the current service or already select up/down and you are able to revert the B+/B- buttons." +msgstr "" + +msgid "Configure the duration in hours the receiver should go to standby when the receiver is not controlled." +msgstr "" + +msgid "Configure the duration in minutes for the screensaver." +msgstr "" + +msgid "Configure the duration in minutes for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +msgstr "" + +msgid "Configure the duration when the receiver should go to shut down in case the receiver is in standby mode." +msgstr "" + +msgid "Configure the first audio language (highest priority)." +msgstr "" + +msgid "Configure the first subtitle language (highest priority)." +msgstr "" + +msgid "Configure the font size of the subtitles." +msgstr "" + +msgid "Configure the fourth audio language." +msgstr "" + +#, fuzzy +msgid "Configure the fourth subtitle language." +msgstr "mergi la urmatoarea limba pentru subtitrari" + +msgid "Configure the function of a long press on the power button." +msgstr "" + +msgid "Configure the function of a short press on the power button." +msgstr "" + +msgid "Configure the function of the '0' button do when PIP is active." +msgstr "" + +msgid "Configure the gateway." +msgstr "" + +msgid "Configure the general audio delay of Dolby Digital sound tracks." +msgstr "" + +msgid "Configure the general audio delay of stereo sound tracks." +msgstr "" + +msgid "Configure the hard disk drive to go to standby after the specified idle time." +msgstr "" + +msgid "Configure the horizontal alignment of the subtitles." +msgstr "" + +msgid "Configure the initial fast forward speed. When you press the fast forward button, winding will start at this speed." +msgstr "" + +msgid "Configure the initial rewind speed. When you press the rewind button, winding will start at this speed." +msgstr "" + +msgid "Configure the latitude of your location." +msgstr "" + +msgid "Configure the longitude of your location." +msgstr "" + +msgid "Configure the minimum amount of disk space to be available for recordings. When the amount of space drops below this value, deleted items will be removed from the trash can." +msgstr "" + +msgid "Configure the nameserver (DNS)." +msgstr "" + +msgid "Configure the netmask." +msgstr "" + +msgid "Configure the number of days after which items are automaticaly removed from the trash can." +msgstr "" + +msgid "Configure the number of days old timers are kept before they are automatically removed from the timer list." +msgstr "" + +msgid "Configure the offline decoding delay in milliseconds. The configured delay is observed at each control word parity change." +msgstr "" + +msgid "Configure the possible fast forward speeds." +msgstr "" + +msgid "Configure the possible rewind speeds." +msgstr "" + +msgid "Configure the primary EPG language." +msgstr "" + +msgid "Configure the refresh rate of the screen." +msgstr "" + +msgid "Configure the screen resolution in PC output mode." +msgstr "" + +msgid "Configure the second audio language." +msgstr "" + +#, fuzzy +msgid "Configure the second subtitle language." +msgstr "mergi la urmatoarea limba pentru subtitrari" + +msgid "Configure the secondary EPG language." +msgstr "" + +msgid "Configure the sharpness of the video scaling." +msgstr "" + +msgid "Configure the skip time interval for the '1'/'3' buttons." +msgstr "" + +msgid "Configure the skip time interval for the '4'/'6' buttons." +msgstr "" + +msgid "Configure the skip time interval for the '7'/'9' buttons." +msgstr "" + +#, fuzzy +msgid "Configure the slow motion speeds." +msgstr "Viteza imagine cu incetinitorul" + +msgid "Configure the source of the frontend data as shown on the infobars. 'Settings' is as stored on the settings. 'Tuner' is as reported by the tuner." +msgstr "" + +msgid "Configure the speed of the background deletion process. Lower speed will consume less hard disk drive performance." +msgstr "" + +msgid "Configure the speed of the fan" +msgstr "" + +msgid "Configure the subtitle delay when timing information is not available." +msgstr "" + +msgid "Configure the third audio language." +msgstr "" + +#, fuzzy +msgid "Configure the third subtitle language." +msgstr "mergi la urmatoarea limba pentru subtitrari" + +msgid "Configure the transparency of the OSD." +msgstr "" + +msgid "Configure the transparency of the black background of graphical DVB subtitles." +msgstr "" + +#, fuzzy +msgid "Configure the tuner mode." +msgstr "Mod configurare" + +msgid "Configure the type of status indication icons shown in the movielist." +msgstr "" + +msgid "Configure the vertical position of the subtitles, measured from the bottom of the screen." +msgstr "" + +msgid "Configure the video output mode (or resolution)." +msgstr "" + +msgid "Configure the way in which the receiver changes channels." +msgstr "" + +msgid "Configure where completed timers show up in the timer list." +msgstr "" + +msgid "Configure whether (and for how long) a second infobar will be shown when OK is pressed twice. The second infobar contains additional information about the current channel." +msgstr "" + +msgid "Configure whether multi channel sound tracks should be downmixed to stereo." +msgstr "" + +msgid "Configure whether or not an icon should be shown when your motorized dish is moving." +msgstr "" + +msgid "Configure which access level to use for the configuration menu. Expert level gives access to all items." +msgstr "" + +msgid "Configure which color format should be used on the SCART output." +msgstr "" + +msgid "Configure which tuner for recordings will be preferred, when more than one tuner is available." +msgstr "" + +msgid "Configure which tuner type will be preferred, when the same service is available on different types of tuners." +msgstr "" + +msgid "Configure which tuner will be preferred, when more than one tuner is available. If set to 'auto' the system will give priority to the tuner having the lowest number of channels/satellites." +msgstr "" + +msgid "Configure your internal LAN" +msgstr "" + +msgid "Configure your network again" +msgstr "" + +msgid "Configure your network settings, and press OK to start the scan" +msgstr "" + +msgid "Configure your wireless LAN again" +msgstr "" + +msgid "Configures which video output connector will be used." +msgstr "" + +msgid "Configuring" +msgstr "Se configureaza" + +msgid "Conflicting timer" +msgstr "Programare aflata in conflict" + +msgid "Connect" +msgstr "" + +#, fuzzy +msgid "Connect to a wireless network" +msgstr "Scanare retele wireless" + +msgid "Connected satellites" +msgstr "" + +msgid "Connected to" +msgstr "Conectat la" + +msgid "Connected!" +msgstr "" + +msgid "Constellation" +msgstr "Constelatie" + +msgid "Content does not fit on DVD!" +msgstr "Continutul este in cantitate prea mare pentru un DVD!" + +msgid "Continue" +msgstr "" + +msgid "Continue in background" +msgstr "Continua in fundal" + +#, fuzzy +msgid "Continue playback" +msgstr "Continua redarea" + +msgid "Continue playing" +msgstr "Continua redarea" + +msgid "Continues play (loop)" +msgstr "" + +msgid "Contrast" +msgstr "Contrast" + +msgid "Convert ext3 filesystem to ext4" +msgstr "" + +msgid "Convert ext3 to ext4" +msgstr "" + +msgid "Converting ext3 to ext4..." +msgstr "" + +msgid "Copy" +msgstr "" + +msgid "Could not connect to receiver .NFI image feed server:" +msgstr "" + +msgid "Could not find installed channel list." +msgstr "" + +#, fuzzy +msgid "Could not load medium! No disc inserted?" +msgstr "Nu s-a putut incarca! E vreun disc introdus?" + +msgid "Could not open Picture in Picture" +msgstr "" + +#, fuzzy, python-format +msgid "Could not record due to conflicting timer %s" +msgstr "Nu s-a putut porni inregistrarea din cauza programarii %s aflate in conflict" + +#, fuzzy, python-format +msgid "Could not record due to invalid service %s" +msgstr "Nu s-a putut porni inregistrarea din cauza programarii %s aflate in conflict" + +msgid "Create DVD-ISO" +msgstr "Creeaza DVD-ISO" + +msgid "Create more detailed crash log" +msgstr "" + +#, python-format +msgid "Creating directory %s failed." +msgstr "Crearea directorului %s a esuat" + +#, fuzzy +msgid "Creating filesystem" +msgstr "Se verifica sistemul de fisiere..." + +msgid "Creating partition" +msgstr "" + +msgid "Croatian" +msgstr "Croata" + +msgid "Current CEC address" +msgstr "" + +msgid "Current device: " +msgstr "" + +msgid "Current event EPG" +msgstr "" + +#, python-format +msgid "Current mode: %s \n" +msgstr "" + +msgid "Current settings:" +msgstr "Setarile curente:" + +#, fuzzy +msgid "Current transponder" +msgstr "Transponderul curent" + +msgid "Current value: " +msgstr "" + +msgid "Current version:" +msgstr "Versiunea curenta:" + +msgid "Currently installed image" +msgstr "" + +msgid "Currently the commit log cannot be retrieved - please try later again" +msgstr "" + +#, fuzzy +msgid "Custom skip time for '1'/'3' buttons" +msgstr "Butoanele '1'/'3' produc saltul cu" + +#, fuzzy +msgid "Custom skip time for '4'/'6' buttons" +msgstr "Butoanele '4'/'6' produc saltul cu" + +#, fuzzy +msgid "Custom skip time for '7'/'9' buttons" +msgstr "Butoanele '7'/'9' produc saltul cu" + +msgid "Customize" +msgstr "Personalizare" + +msgid "Customize channel list cursor behavior" +msgstr "" + +msgid "Cut" +msgstr "Taie" + +msgid "Cutlist editor..." +msgstr "Editor montaj..." + +msgid "Czech" +msgstr "Ceha" + +msgid "D" +msgstr "D" + +msgid "DHCP" +msgstr "DHCP" + +#, fuzzy +msgid "DMM advanced" +msgstr "avansat" + +msgid "DMM normal" +msgstr "" + +msgid "DUAL LAYER DVD" +msgstr "" + +msgid "DVB subtitle black transparency" +msgstr "" + +msgid "DVB-C" +msgstr "" + +msgid "DVB-C ANNEX C" +msgstr "" + +msgid "DVB-S" +msgstr "DVB-S" + +msgid "DVB-S2" +msgstr "DVB-S2" + +msgid "DVB-T" +msgstr "" + +msgid "DVB-T2" +msgstr "" + +msgid "DVD data format" +msgstr "" + +#, fuzzy +msgid "DVD file browser" +msgstr "Browser-ul plugin" + +msgid "DVD media toolbox" +msgstr "Instrumente DVD" + +#, fuzzy +msgid "DVD player" +msgstr "Player DVD" + +#, fuzzy +msgid "DVD titlelist" +msgstr "lista alba" + +msgid "Danish" +msgstr "Daneza" + +msgid "Date" +msgstr "Data" + +#, fuzzy +msgid "Date/time input" +msgstr "Intrare Ora/Data" + +#, fuzzy +msgid "Deep standby" +msgstr "Oprire completa" + +msgid "Default" +msgstr "" + +msgid "Default movie location" +msgstr "" + +#, fuzzy +msgid "Default settings" +msgstr "Setari implicite" + +msgid "Delay before key repeat starts:" +msgstr "" + +msgid "Delay for external subtitles" +msgstr "" + +msgid "Delete" +msgstr "Sterge" + +msgid "Delete entry" +msgstr "Sterge articol" + +msgid "Delete failed!" +msgstr "Stergere esuata!" + +#, fuzzy +msgid "Delete file" +msgstr "sterge file" + +#, fuzzy +msgid "Delete playlist entry" +msgstr "sterge intrare playlist" + +#, fuzzy +msgid "Delete saved playlist" +msgstr "sterge playlist salvat" + +msgid "Delete timer" +msgstr "" + +#, fuzzy +msgid "Delete..." +msgstr "sterge..." + +msgid "Deleted" +msgstr "" + +msgid "Deleted items" +msgstr "" + +msgid "Depth" +msgstr "" + +msgid "Descramble http streams" +msgstr "" + +msgid "Description" +msgstr "Descriere" + +msgid "Deselect" +msgstr "Deselectare" + +msgid "Details for plugin: " +msgstr "" + +msgid "Detected HDD:" +msgstr "HDD detectat:" + +msgid "Detected NIMs:" +msgstr "NIMuri detectate:" + +msgid "Devicename:" +msgstr "" + +msgid "Devide" +msgstr "" + +msgid "DiSEqC" +msgstr "DiSEqC" + +msgid "DiSEqC 1.0 command" +msgstr "" + +msgid "DiSEqC 1.1 command" +msgstr "" + +msgid "DiSEqC 1.1 repeats" +msgstr "" + +msgid "DiSEqC A/B" +msgstr "DiSEqC A/B" + +msgid "DiSEqC A/B/C/D" +msgstr "DiSEqC A/B/C/D" + +msgid "DiSEqC mode" +msgstr "Mod DiSEqC" + +#, fuzzy, python-format +msgid "DiSEqC port %s: %s" +msgstr "DiSEqC in cascada" + +#, fuzzy +msgid "DiSEqC-tester settings" +msgstr "Test setari DiSEqC" + +msgid "Dialing:" +msgstr "" + +msgid "Digital contour removal" +msgstr "" + +msgid "Direct playback of linked titles without menu" +msgstr "Redare directa a titlurilor fara meniu" + +msgid "Directory" +msgstr "" + +#, fuzzy, python-format +msgid "Directory %s does not exist." +msgstr "Directorul %s nu exista." + +#, python-format +msgid "Directory %s nonexistent." +msgstr "" + +msgid "Directory browser" +msgstr "" + +#, python-format +msgid "Directory contains %d file(s) and %d sub-directories.\n" +msgstr "" + +#, fuzzy, python-format +msgid "Directory contains %s and %s." +msgstr "Directorul %s nu exista." + +msgid "Disable" +msgstr "Dezactivare" + +msgid "Disable Picture in Picture" +msgstr "Dezactiveaza PiP (Imagine in Imagine)" + +msgid "Disable background scanning" +msgstr "" + +msgid "Disable timer" +msgstr "" + +msgid "Disabled" +msgstr "Dezactivat" + +msgid "Disconnect" +msgstr "" + +msgid "Disk space to reserve for recordings (in GB)" +msgstr "" + +msgid "Display 16:9 content as" +msgstr "Afiseaza continutul format 16:9 ca" + +msgid "Display 4:3 content as" +msgstr "Afiseaza continutul format 4:3 ca" + +msgid "Display >16:9 content as" +msgstr "Afiseaza continutul format >16:9 ca" + +#, fuzzy +msgid "Display and userinterface" +msgstr "Afisaj si interfata utilizator" + +msgid "Display message before playing next movie" +msgstr "" + +#, fuzzy +msgid "Display setup" +msgstr "Configurare afisaj" + +#, fuzzy +msgid "Do not change" +msgstr "nu schimba" + +#, fuzzy +msgid "Do not record" +msgstr "nu inregistra" + +#, fuzzy +msgid "Do nothing" +msgstr "nu face nimic" + +msgid "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" +msgstr "" +"Confirmati verificarea sistemului de fisiere?\n" +"Aceasta operatiune ar putea dura foarte mult" + +msgid "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" +msgstr "" + +#, python-format +msgid "Do you really want to delete %s?" +msgstr "Confirmati stergerea %s?" + +#, python-format +msgid "" +"Do you really want to download\n" +"the plugin \"%s\"?" +msgstr "" +"Confirmati descarcarea\n" +"pluginului \"%s\"?" + +msgid "Do you really want to exit?" +msgstr "" + +msgid "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" +msgstr "" + +#, fuzzy, python-format +msgid "" +"Do you really want to remove\n" +"the plugin \"%s\"?" +msgstr "" +"Confirmati descarcarea\n" +"pluginului \"%s\"?" + +#, python-format +msgid "Do you really want to remove directory %s from the disk?" +msgstr "Confirmati stergerea directorului %s de pe disc?" + +#, python-format +msgid "Do you really want to remove your bookmark of %s?" +msgstr "Confirmati stergerea semnului de carte %s?" + +msgid "Do you want this?" +msgstr "" + +msgid "Do you want to burn this collection to DVD medium?" +msgstr "Doriti scrierea acestei colectii pe discul DVD?" + +msgid "Do you want to do a service scan?" +msgstr "Doriti efectuarea unei scanari a serviciilor?" + +msgid "Do you want to do another manual service scan?" +msgstr "Doriti efectuarea unei alte operatiuni de scanare manuala?" + +#, python-format +msgid "Do you want to download the image to %s ?" +msgstr "" + +#, fuzzy +msgid "Do you want to install a channel list?" +msgstr "Doriti sa instalati pachetul:\n" + +msgid "Do you want to install the package:\n" +msgstr "Doriti sa instalati pachetul:\n" + +msgid "Do you want to play DVD in drive?" +msgstr "Doriti redarea DVD-ului introdus?" + +msgid "Do you want to preview this DVD before burning?" +msgstr "Doriti sa previzualizati acest DVD inainte de a fi scris?" + +msgid "Do you want to reboot your receiver?" +msgstr "" + +msgid "Do you want to remove the package:\n" +msgstr "Doriti sa stergeti pachetul:\n" + +msgid "Do you want to restore your settings?" +msgstr "Doriti restaurarea setarilor dvs?" + +msgid "Do you want to resume this playback?" +msgstr "Doriti continuarea redarii acestei inregistrari?" + +#, fuzzy, python-format +msgid "Do you want to update your receiver to %s?" +msgstr "Doriti restaurarea setarilor dvs?" + +msgid "Do you want to update your receiver?" +msgstr "" + +msgid "Do you want to upgrade the package:\n" +msgstr "Doriti actualizarea pachetului:\n" + +msgid "Don't stop current event but disable coming events" +msgstr "Nu opri evenimentul curent dar anuleaza evenimentele urmatoare" + +#, fuzzy, python-format +msgid "Done - Installed, upgraded or removed %d package (%s)" +msgid_plural "Done - Installed, upgraded or removed %d packages (%s)" +msgstr[0] "S-a finalizat instalarea, actualizarea sau stergerea a %d pachete cu %d erori" +msgstr[1] "S-a finalizat instalarea, actualizarea sau stergerea a %d pachete cu %d erori" + +msgid "Download" +msgstr "Descarcare" + +#, python-format +msgid "Download %s from server" +msgstr "" + +msgid "Download .NFI-files for USB-flasher" +msgstr "Descarca fisiere .NFI pentru USB-Flasher" + +#, fuzzy +msgid "Download plugins" +msgstr "Descarca Pluginuri" + +msgid "Downloadable new plugins" +msgstr "Noi Pluginuri disponibile la descarcare" + +msgid "Downloadable plugins" +msgstr "Pluginuri disponibile pentru descarcare" + +msgid "Downloading" +msgstr "Se descarca" + +msgid "Downloading plugin information. Please wait..." +msgstr "Se descarca informatiile Pluginului. Va rog sa asteptati..." + +msgid "Dutch" +msgstr "Olandeza" + +msgid "Dynamic contrast" +msgstr "" + +msgid "E" +msgstr "E" + +msgid "EPG" +msgstr "" + +msgid "EPG language selection 1" +msgstr "" + +msgid "EPG language selection 2" +msgstr "" + +#, fuzzy +msgid "EPG selection" +msgstr "Selectie EPG" + +msgid "EPG settings" +msgstr "" + +#, python-format +msgid "ERROR - failed to scan (%s)!" +msgstr "EROARE - scanare esuata (%s)!" + +msgid "East" +msgstr "Est" + +msgid "East limit set" +msgstr "" + +msgid "Edit" +msgstr "Editare" + +msgid "Edit DNS" +msgstr "Editare DNS" + +msgid "Edit bouquets list" +msgstr "" + +msgid "Edit chapters of current title" +msgstr "Editarea capitolelor titlului curent" + +msgid "Edit services list" +msgstr "Editare lista de servicii" + +msgid "Edit settings" +msgstr "Editare setari" + +#, fuzzy +msgid "Edit the nameserver configuration of your receiver.\n" +msgstr "iesire configurare nameserver" + +msgid "Edit the network configuration of your receiver.\n" +msgstr "" + +msgid "Edit timer" +msgstr "" + +msgid "Edit title" +msgstr "Editare titlu" + +msgid "Edit upgrade source url." +msgstr "" + +msgid "Education/Science/..." +msgstr "" + +msgid "Electronic Program Guide" +msgstr "Ghid Electronic de Programe (EPG)" + +msgid "Enable" +msgstr "Activeaza" + +msgid "Enable 'neutrino' style channel select controlling" +msgstr "" + +msgid "Enable 'neutrino' style zap controlling" +msgstr "" + +msgid "Enable 5V for active antenna" +msgstr "Activeaza 5V pentru antena activa" + +msgid "Enable EIT EPG" +msgstr "" + +msgid "Enable MHW EPG" +msgstr "" + +msgid "Enable Netmed EPG" +msgstr "" + +msgid "Enable OK for channel selection" +msgstr "" + +msgid "Enable ViaSat EPG" +msgstr "" + +msgid "Enable Virgin EPG" +msgstr "" + +msgid "Enable Wake On LAN" +msgstr "" + +msgid "Enable auto fast scan" +msgstr "" + +#, fuzzy +msgid "Enable bouquet selection in multi-EPG" +msgstr "activeaza editare bouquet" + +msgid "Enable freesat EPG" +msgstr "" + +msgid "Enable multiple bouquets" +msgstr "Activeaza buchete multiple" + +msgid "Enable parental control" +msgstr "Activeaza controlul parental" + +msgid "Enable teletext caching" +msgstr "" + +msgid "Enable zapping with CH+/-, B+/-, P+/-" +msgstr "" + +msgid "Enabled" +msgstr "Activat" + +msgid "Encrypted: " +msgstr "" + +msgid "Encryption" +msgstr "Criptare" + +#, fuzzy +msgid "Encryption key" +msgstr "Cheie de criptare" + +#, fuzzy +msgid "Encryption key type" +msgstr "Tipul cheii de criptare" + +msgid "Encryption:" +msgstr "" + +msgid "End time" +msgstr "Momentul incheierii" + +msgid "End time to ignore inactivity sleeptimer" +msgstr "" + +msgid "End time to ignore shutdown in standby" +msgstr "" + +msgid "English" +msgstr "Engleza" + +#, fuzzy +msgid "Enigma2 skin selector" +msgstr "enigma2 si retea" + +msgid "Enter main menu..." +msgstr "Intrati in meniul principal..." + +msgid "Enter pin code" +msgstr "" + +msgid "Enter the service pin" +msgstr "Introduceti pinul serviciului" + +msgid "Equal to" +msgstr "" + +msgid "Error" +msgstr "Eroare" + +msgid "Error code" +msgstr "" + +msgid "Error executing plugin" +msgstr "Eroare la executia pluginului" + +#, python-format +msgid "" +"Error: %s\n" +"Retry?" +msgstr "" +"Eroare: %s\n" +"Mai incerc o data?" + +msgid "Estonian" +msgstr "" + +msgid "Ethernet network interface" +msgstr "" + +msgid "Event font size (relative to skin size)" +msgstr "" + +#, fuzzy +msgid "Event view" +msgstr "Detalii eveniment" + +#, fuzzy +msgid "Event view menu" +msgstr "Detalii eveniment" + +msgid "Everywhere" +msgstr "" + +msgid "Exceeds dual layer medium!" +msgstr "" + +msgid "Execution finished!!" +msgstr "Executie finalizata!!" + +#, fuzzy +msgid "Execution progress:" +msgstr "Rezumat progres:" + +msgid "Exif" +msgstr "Exif" + +msgid "Exit" +msgstr "Iesire" + +msgid "Exit EPG" +msgstr "" + +msgid "Exit editor" +msgstr "Iesire din editor" + +msgid "Exit input device selection." +msgstr "" + +msgid "Exit media player?" +msgstr "" + +#, fuzzy +msgid "Exit mediaplayer" +msgstr "iesire mediaplayer" + +#, fuzzy +msgid "Exit movie list" +msgstr "iesire lista filme" + +#, fuzzy +msgid "Exit movie player?" +msgstr "iesire mediaplayer" + +#, fuzzy +msgid "Exit nameserver configuration" +msgstr "iesire configurare nameserver" + +#, fuzzy +msgid "Exit network interface list" +msgstr "iesire interfata retea" + +msgid "Exit network wizard" +msgstr "" + +msgid "Exit the wizard" +msgstr "Iesi din ajutorul de configurare" + +msgid "Expert" +msgstr "Expert" + +msgid "Extend sleeptimer 15 minutes" +msgstr "" + +msgid "Extended Software" +msgstr "" + +msgid "Extended Software Plugin" +msgstr "" + +#, fuzzy +msgid "Extended network setup plugin..." +msgstr "Plugin pentru setari de retea extinse..." + +#, fuzzy +msgid "Extended setup..." +msgstr "Setari extinse..." + +msgid "Extensions" +msgstr "Extensii" + +msgid "Extensions management" +msgstr "" + +msgid "External PiP" +msgstr "" + +msgid "External subtitle color" +msgstr "" + +msgid "Extra motor options" +msgstr "" + +msgid "FEC" +msgstr "FEC" + +msgid "FTA" +msgstr "" + +msgid "Factory reset" +msgstr "Restaurare setari de fabrica" + +msgid "Failed" +msgstr "Esuat" + +msgid "Failed to write /tmp/positionersetup.log: " +msgstr "" + +#, python-format +msgid "Fan %d" +msgstr "" + +#, python-format +msgid "Fan %d PWM" +msgstr "" + +#, fuzzy, python-format +msgid "Fan %d voltage" +msgstr "Voltaj marit" + +msgid "Fan operation" +msgstr "" + +msgid "Fan speed" +msgstr "" + +msgid "Fast" +msgstr "Rapid" + +msgid "Fast DiSEqC" +msgstr "DiSEqC rapid" + +msgid "Fast Scan" +msgstr "" + +msgid "Fast epoch" +msgstr "Epoch rapid" + +#, fuzzy +msgid "Fast forward speeds" +msgstr "Vitezele pentru Repede Inainte" + +msgid "Favourites" +msgstr "Favorite" + +msgid "File appears to be busy.\n" +msgstr "" + +msgid "Filesystem check" +msgstr "" + +msgid "Final position at" +msgstr "" + +msgid "Final position at index" +msgstr "" + +msgid "Fine movement" +msgstr "" + +msgid "Finetune" +msgstr "Reglaj fin" + +msgid "Finished" +msgstr "Finalizat" + +msgid "Finished configuring your network" +msgstr "S-a finalizat configurarea retelei dvs" + +msgid "Finished restarting your network" +msgstr "Reteaua dvs a fost repornita" + +msgid "Finnish" +msgstr "Finlandeza" + +msgid "Fixed" +msgstr "" + +msgid "Flash" +msgstr "Flash" + +msgid "Flashing failed" +msgstr "Operatia de flash a esuat" + +msgid "Following tasks will be done after you press OK!" +msgstr "" + +msgid "Format" +msgstr "Formatare" + +msgid "Forward volume keys" +msgstr "" + +msgid "Frame size in full view" +msgstr "Dimensiunea cadrului la vizualizarea completa" + +msgid "French" +msgstr "Franceza" + +msgid "Frequency" +msgstr "Frecventa" + +msgid "Frequency bands" +msgstr "Benzi de frecventa" + +msgid "Frequency scan step size(khz)" +msgstr "Marimea pasului de frecventa(khz)" + +msgid "Frequency steps" +msgstr "Pasi de frecventa" + +msgid "Frequency:" +msgstr "" + +msgid "Fri" +msgstr "Vin" + +msgid "Friday" +msgstr "Vineri" + +msgid "From :" +msgstr "" + +#, python-format +msgid "Frontprocessor version: %d" +msgstr "Versiune frontprocesor: %d" + +msgid "Full transparency" +msgstr "" + +msgid "Fulview resulution" +msgstr "" + +msgid "Function of OK button" +msgstr "" + +msgid "Further Options" +msgstr "" + +msgid "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" +msgstr "Interfata grafica necesita repornirea pentru aplicarea noilor decoratiuniDoriti repornirea interfetei grafice acum?" + +msgid "Gateway" +msgstr "Gateway" + +#, fuzzy +msgid "General AC3 delay" +msgstr "Intarziere AC3 generala" + +#, fuzzy +msgid "General PCM delay" +msgstr "Intarziere PCM generala" + +msgid "Genre" +msgstr "Gen" + +msgid "German" +msgstr "Germana" + +msgid "Get latest experimental image" +msgstr "" + +msgid "Get latest release image" +msgstr "" + +msgid "Getting plugin information. Please wait..." +msgstr "Se descarca informatiile despre plugin. Va rog sa asteptati..." + +msgid "Go down the list" +msgstr "" + +msgid "Go to first movie or last item" +msgstr "" + +msgid "Go to first movie or top of list" +msgstr "" + +#, fuzzy +msgid "Go to first service" +msgstr "muta sus la prima intrare" + +#, fuzzy +msgid "Go to last service" +msgstr "Servicii de protectie" + +#, fuzzy +msgid "Go to next event" +msgstr "muta jos la urmatoarea intrare" + +#, fuzzy +msgid "Go to next page of service" +msgstr "Schimba la urmatorul subserviciu" + +#, fuzzy +msgid "Go to previous event" +msgstr "muta sus la anterioara intrare" + +#, fuzzy +msgid "Go to previous page of service" +msgstr "Revenire la serviciul anterior" + +msgid "Go up the list" +msgstr "" + +msgid "Goto" +msgstr "" + +msgid "Goto 0" +msgstr "Goto 0" + +msgid "Goto :" +msgstr "" + +msgid "Goto X" +msgstr "" + +msgid "Goto index position" +msgstr "" + +msgid "Goto next day of events" +msgstr "" + +msgid "Goto next page of events" +msgstr "" + +msgid "Goto position" +msgstr "Goto pozitie" + +msgid "Goto previous day of events" +msgstr "" + +msgid "Goto previous page of events" +msgstr "" + +msgid "Goto specific date/time" +msgstr "" + +msgid "GotoX calibration" +msgstr "" + +msgid "GraphMultiEpg Settings" +msgstr "" + +msgid "Graphical Multi EPG" +msgstr "Multi-EPG grafic" + +msgid "Greek" +msgstr "Greaca" + +msgid "Green boost" +msgstr "" + +msgid "Guard interval" +msgstr "" + +msgid "HD list" +msgstr "" + +msgid "HDMI-CEC setup" +msgstr "" + +msgid "Handle standby from TV" +msgstr "" + +msgid "Handle wakeup from TV" +msgstr "" + +#, fuzzy +msgid "Hard disk" +msgstr "Hard disc" + +#, fuzzy +msgid "Hard disk setup" +msgstr "Configurare hard disc" + +#, fuzzy +msgid "Hard disk standby after" +msgstr "Comuta hard discul in standby dupa" + +msgid "Harddisk" +msgstr "Hard disc" + +msgid "Hardware: " +msgstr "" + +msgid "Hebrew" +msgstr "" + +msgid "Helps setting up your dish" +msgstr "" + +msgid "Hidden network" +msgstr "" + +msgid "Hide CI messages" +msgstr "" + +msgid "Hide channel list in radio mode" +msgstr "" + +msgid "Hide known extensions" +msgstr "" + +msgid "Hide number markers" +msgstr "" + +#, fuzzy +msgid "Hide player" +msgstr "ascunde player" + +msgid "Hide zap errors" +msgstr "" + +msgid "Hierarchy info" +msgstr "" + +#, fuzzy +msgid "Hierarchy information" +msgstr "Informatii despre ierarhie" + +msgid "High bitrate support" +msgstr "Sprijin pentru bitrate rapid" + +msgid "Hold screen" +msgstr "" + +msgid "Hold till locked" +msgstr "" + +msgid "Home" +msgstr "" + +msgid "Horizontal" +msgstr "Orizontal" + +msgid "Horizontal turning speed" +msgstr "" + +msgid "How many minutes do you want to record?" +msgstr "Pentru cate minute doriti sa inregistrati?" + +msgid "Hue" +msgstr "" + +msgid "Hungarian" +msgstr "Maghiara" + +#, fuzzy +msgid "IP address" +msgstr "IP Address" + +msgid "ISO file is too large for this filesystem!" +msgstr "Fisierul ISO este prea mare pentru acest sistem de fisiere!" + +msgid "ISO path" +msgstr "Calea ISO" + +msgid "Icons" +msgstr "" + +msgid "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." +msgstr "" +"Daca acest mesaj este vizibil, ceva nu este in regula\n" +"cu conexiunea dvs scart. Apasati OK pentru revenire." + +msgid "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." +msgstr "" + +msgid "Image: " +msgstr "" + +#, fuzzy +msgid "Immediate shutdown" +msgstr "shutdown imediat" + +msgid "In order to record a timer, the TV was switched to the recording service!\n" +msgstr "Pentru a putea porni inregistrarea programata,s-a comutat pe canalul respectiv!\n" + +#, fuzzy +msgid "In progress" +msgstr "In curs de desfasurare" + +msgid "Inactivity Sleeptimer" +msgstr "" + +msgid "Include AIT in http streams" +msgstr "" + +msgid "Include ECM in http streams" +msgstr "" + +msgid "Include EIT in http streams" +msgstr "" + +msgid "Incorrect type service for PiP!" +msgstr "" + +msgid "Increased voltage" +msgstr "Voltaj marit" + +msgid "Index" +msgstr "Index" + +msgid "Index allocated:" +msgstr "" + +msgid "Info" +msgstr "" + +#, fuzzy +msgid "Info bar" +msgstr "Bara de informatii" + +#, fuzzy +msgid "Info bar timeout" +msgstr "Timeout bara de informatii" + +msgid "Infobar frontend data source" +msgstr "" + +msgid "Information" +msgstr "Informatii" + +msgid "Init" +msgstr "Initializare" + +#, fuzzy +msgid "Initial fast forward speed" +msgstr "Vitezele pentru Repede Inainte" + +msgid "Initial location in new timers" +msgstr "" + +msgid "Initial lock ratio" +msgstr "" + +#, fuzzy +msgid "Initial rewind speed" +msgstr "Viteze de derulare" + +msgid "Initial signal quality" +msgstr "" + +msgid "Initial signal quality:" +msgstr "" + +msgid "Initialization" +msgstr "" + +msgid "Initialize" +msgstr "Se initializeaza" + +msgid "Initializing storage device..." +msgstr "" + +msgid "Input" +msgstr "Intrare" + +msgid "Input device setup" +msgstr "" + +msgid "Input devices" +msgstr "" + +msgid "Install" +msgstr "Instalare" + +msgid "Install a new image with a USB stick" +msgstr "Instalare imagine noua cu un stick USB" + +msgid "Install a new image with your web browser" +msgstr "Instalare imagine noua cu browser-ul web" + +#, fuzzy +msgid "Install channel list" +msgstr "canalul urmator in istoric" + +msgid "Install extensions" +msgstr "" + +msgid "Install extensions." +msgstr "" + +msgid "Install local extension" +msgstr "" + +msgid "Install picons on" +msgstr "" + +#, fuzzy +msgid "Install softcam" +msgstr "Instaleaza software" + +#, fuzzy +msgid "Installation has completed." +msgstr "Instalare terminata" + +#, fuzzy +msgid "Installation or removal has completed." +msgstr "Instaleaza sau elimina fisierele terminate" + +msgid "Installing" +msgstr "Instaleaza" + +#, fuzzy +msgid "Installing software..." +msgstr "Instaleaza software" + +#, fuzzy +msgid "Instant recording location" +msgstr "schimba inregistrare (durata)" + +#, fuzzy +msgid "Instant recording..." +msgstr "Inregistrare instant" + +msgid "Interface: " +msgstr "" + +msgid "Intermediate" +msgstr "Intermediar" + +#, fuzzy +msgid "Internal flash" +msgstr "Memorie Flash interna" + +msgid "Internal hdd only" +msgstr "" + +msgid "Interval between keys when repeating:" +msgstr "" + +#, python-format +msgid "Invalid directory selected: %s" +msgstr "Director selectat nevalid: %s" + +#, fuzzy +msgid "Invalid location" +msgstr "Locatie nevalida" + +msgid "Invalid transponder data" +msgstr "" + +msgid "Inversion" +msgstr "Inversare" + +msgid "Invert" +msgstr "" + +msgid "Ipkg" +msgstr "Ipkg" + +msgid "Is this setting ok?" +msgstr "" + +#, fuzzy +msgid "Is this video mode ok?" +msgstr "Selectati modul vieo" + +msgid "Italian" +msgstr "Italiana" + +msgid "Items per page " +msgstr "" + +msgid "Items per page for list screen" +msgstr "" + +#, fuzzy +msgid "Job overview" +msgstr "Vedere serviciu" + +msgid "Jump to beginning of list" +msgstr "" + +#, fuzzy +msgid "Jump to end of list" +msgstr "dai la sfarsitul listei" + +#, fuzzy +msgid "Jump to next marked position" +msgstr "dai la urmatoarea pozitie marcata" + +#, fuzzy +msgid "Jump to previous marked position" +msgstr "dai la pozitia marcata anterior" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect) +#, fuzzy +msgid "Just scale" +msgstr "Doar dimensiune" + +msgid "Keep service" +msgstr "" + +#, fuzzy +msgid "Kernel version: " +msgstr "Versiune noua:" + +msgid "Keyboard" +msgstr "Tastatura" + +#, fuzzy +msgid "Keyboard map" +msgstr "Harta tastatura" + +#, fuzzy +msgid "Keyboard setup" +msgstr "Configurare tastatura" + +#, fuzzy +msgid "LAN adapter" +msgstr "Adaptor LAN" + +msgid "LAN connection" +msgstr "" + +msgid "LNB" +msgstr "LNB" + +msgid "Language" +msgstr "" + +msgid "Language selection" +msgstr "Selectare limba" + +msgid "Last config" +msgstr "" + +msgid "Last speed" +msgstr "Ultima viteza" + +msgid "Last upgrade: " +msgstr "" + +msgid "Latest Commits" +msgstr "" + +msgid "Latitude" +msgstr "Latitudine" + +msgid "Latvian" +msgstr "Letona" + +#, fuzzy +msgid "Leave DVD player?" +msgstr "Parasiti player-ul DVD?" + +msgid "Left" +msgstr "Stanga" + +msgid "Left from servicename" +msgstr "" + +msgid "Leisure hobbies" +msgstr "" + +#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term. +msgid "Letterbox" +msgstr "Letterbox" + +msgid "Letterbox zoom" +msgstr "" + +#, fuzzy +msgid "Limit character set for recording filenames" +msgstr "Caractere limitate pentru inregistrarea numelor fisierelor" + +msgid "Limit east" +msgstr "Limita estica" + +msgid "Limit the characters that can be used in recording filenames to (7 bit) ascii. This ensures compatibility with operating systems or file systems with limited character sets." +msgstr "" + +msgid "Limit west" +msgstr "Limita vestica" + +msgid "Limits cancelled" +msgstr "" + +msgid "Limits enabled" +msgstr "" + +msgid "Limits off" +msgstr "Limite dezactivate" + +msgid "Limits on" +msgstr "Limite activate" + +msgid "Link quality:" +msgstr "" + +msgid "Link:" +msgstr "Link:" + +msgid "Linked titles with a DVD menu" +msgstr "Titluri legate cu un meniu DVD" + +msgid "List EPG functions..." +msgstr "" + +msgid "List available networks" +msgstr "" + +msgid "List mode" +msgstr "" + +#, fuzzy +msgid "List of storage devices" +msgstr "Lista cu dispozitive de stocare" + +msgid "List type" +msgstr "" + +#, python-format +msgid "List version %d, found %d channel" +msgid_plural "List version %d, found %d channels" +msgstr[0] "" +msgstr[1] "" + +#, fuzzy +msgid "Listen to the radio..." +msgstr "auzi radio" + +msgid "Lists reloaded!" +msgstr "" + +msgid "Lithuanian" +msgstr "Lituaniana" + +msgid "Load" +msgstr "Incarca" + +msgid "Load Length of Movies in Movielist" +msgstr "" + +#, fuzzy +msgid "Load length of movies in movie list" +msgstr "Incarca durata filmelor in lista cu filme" + +#, fuzzy +msgid "Load playlist" +msgstr "incarca playlist" + +#, fuzzy +msgid "Local network" +msgstr "Retea locala" + +msgid "Location" +msgstr "Locatie" + +msgid "Location for instant recordings" +msgstr "" + +msgid "Lock ratio" +msgstr "" + +msgid "Lock:" +msgstr "Blocat" + +msgid "Log results to harddisk" +msgstr "Inregistrare rezultate pe harddisk" + +msgid "Long filenames" +msgstr "" + +#, fuzzy +msgid "Long key press" +msgstr "Apasare lunga pe tasta" + +msgid "Longitude" +msgstr "Longitudine" + +msgid "Loop through to" +msgstr "" + +msgid "Luxembourgish" +msgstr "" + +#, fuzzy +msgid "MMC card" +msgstr "Card MMC" + +msgid "MORE" +msgstr "MULT" + +msgid "Main menu" +msgstr "Meniu principal" + +msgid "Maintain old EPG data for" +msgstr "" + +msgid "Make this mark an 'in' point" +msgstr "Fa acest semn un punct de intrare" + +msgid "Make this mark an 'out' point" +msgstr "Fa acest semn un punct de iesire" + +msgid "Make this mark just a mark" +msgstr "Fa acest semn doar un semn" + +msgid "Manage extensions" +msgstr "" + +msgid "Manage your receiver's software" +msgstr "Gestioneaza software-ul receiverului tau" + +msgid "Manual" +msgstr "" + +msgid "Manual Scan" +msgstr "Scanare manuala" + +msgid "Manual configuration" +msgstr "" + +#, fuzzy +msgid "Manual scan" +msgstr "Scanare manuala" + +msgid "Manual transponder" +msgstr "Transponder manual" + +msgid "Manufacturer" +msgstr "Fabricant" + +#, fuzzy +msgid "Margin after recording (minutes)" +msgstr "Creaza margini inainte de inregistrare (minute)" + +#, fuzzy +msgid "Margin before recording (minutes)" +msgstr "Creaza margini inainte de inregistrare (minute)" + +msgid "Max memory positions" +msgstr "" + +msgid "Max. bitrate: " +msgstr "" + +msgid "Media player" +msgstr "Media player" + +#, fuzzy +msgid "Media scanner" +msgstr "Media player" + +msgid "Medium is not a writeable DVD!" +msgstr "Mediul nu este un DVD inscriptibil!" + +msgid "Medium is not empty!" +msgstr "Mediul nu este gol!" + +msgid "Memory" +msgstr "" + +msgid "Memory index" +msgstr "" + +msgid "Menu" +msgstr "Meniu" + +msgid "Message" +msgstr "Mesaj" + +msgid "Message..." +msgstr "Mesaj..." + +#, python-format +msgid "Minimum age %d years" +msgstr "" + +msgid "Minimum send interval" +msgstr "" + +msgid "Missing " +msgstr "" + +#, fuzzy +msgctxt "Satellite configuration mode" +msgid "Mode" +msgstr "Mod" + +#, fuzzy +msgctxt "Video output mode" +msgid "Mode" +msgstr "Mod" + +msgid "Model: " +msgstr "Model:" + +msgid "Modulation" +msgstr "Modulatie" + +msgid "Modulator" +msgstr "Modulator" + +msgid "Mon" +msgstr "Lun" + +msgid "Mon-Fri" +msgstr "Lun-Vin" + +msgid "Monday" +msgstr "Luni" + +msgid "Mosquito noise reduction" +msgstr "" + +msgid "Mount" +msgstr "" + +msgid "Move" +msgstr "" + +#, fuzzy +msgid "Move PiP to main picture" +msgstr "muta pip la imagine principala" + +msgid "Move Picture in Picture" +msgstr "Muta picture in picture" + +msgid "Move east" +msgstr "Misca spre est" + +msgid "Move to other directory" +msgstr "" + +msgid "Move to position X" +msgstr "" + +msgid "Move west" +msgstr "Misca spre vest" + +msgid "Moved to position 0" +msgstr "" + +msgid "Moved to position at index" +msgstr "" + +msgid "Movement" +msgstr "" + +msgid "Movie List Configuration" +msgstr "" + +msgid "Movie Selection" +msgstr "" + +#, fuzzy +msgid "Movie list configuration" +msgstr "Configurare tuner" + +msgid "Movie location" +msgstr "" + +#, fuzzy +msgid "Movie selection" +msgstr "Selectare timer" + +msgid "Movie/Drama" +msgstr "" + +msgid "Movielist menu" +msgstr "Meniu lista filme" + +msgid "Moving" +msgstr "" + +msgid "Moving east ..." +msgstr "" + +msgid "Moving to position" +msgstr "" + +msgid "Moving west ..." +msgstr "" + +msgid "Multi EPG" +msgstr "Multi EPG" + +msgid "Multi-EPG bouquet selection" +msgstr "" + +msgid "Multimedia" +msgstr "Multimedia" + +msgid "Multiple service support" +msgstr "Suport pentru servicii multiple" + +msgid "Multiplex" +msgstr "" + +msgid "Multisat" +msgstr "Multisat" + +msgid "Multisat all select" +msgstr "" + +msgid "Music/Ballet/Dance" +msgstr "" + +msgid "Mute" +msgstr "Mut" + +msgid "N/A" +msgstr "N/A" + +msgid "NEXT" +msgstr "URMATORUL" + +msgid "NFI image flashing" +msgstr "" + +msgid "NFI image flashing completed. Press Yellow to Reboot!" +msgstr "Flashing complet pentru imaginea NFI. Apasati butonul galben pentru reboot!" + +msgid "NIM" +msgstr "" + +msgid "NOW" +msgstr "ACUM" + +msgid "NTSC" +msgstr "NTSC" + +msgid "Name" +msgstr "Nume" + +msgid "Nameserver" +msgstr "Nameserver" + +#, python-format +msgid "Nameserver %d" +msgstr "Numele server-ului %d" + +msgid "Nameserver settings" +msgstr "Setari nume server" + +#, fuzzy +msgid "Nameserver setup" +msgstr "Configurare nume server" + +msgid "Namespace" +msgstr "" + +msgid "Netmask" +msgstr "Netmask" + +msgid "Network" +msgstr "Retea" + +msgid "Network ID" +msgstr "" + +#, fuzzy +msgid "Network configuration..." +msgstr "Configurare retea..." + +#, fuzzy +msgid "Network mount" +msgstr "Network mount" + +#, fuzzy, python-format +msgid "Network mount %s" +msgstr "Network mount" + +msgid "Network name (SSID)" +msgstr "" + +msgid "Network scan" +msgstr "Scanare retea" + +msgid "Network setup" +msgstr "Configurare retea" + +msgid "Network test" +msgstr "Test retea" + +msgid "Network test..." +msgstr "Test retea..." + +msgid "Network test: " +msgstr "" + +#, fuzzy +msgid "Network wizard" +msgstr "Wizard de retea" + +msgid "Network:" +msgstr "Retea" + +msgid "New" +msgstr "Nou" + +msgid "New PIN" +msgstr "" + +msgid "New version:" +msgstr "Versiune noua:" + +msgid "News Current Affairs" +msgstr "" + +msgctxt "button label, 'next screen'" +msgid "Next" +msgstr "" + +msgctxt "now/next: 'next' event label" +msgid "Next" +msgstr "" + +msgid "No" +msgstr "Nu" + +msgid "No (supported) DVDROM found!" +msgstr "Nu s-a gasit niciun DVDROM (suportat)!" + +msgid "No Connection" +msgstr "" + +msgid "No HDD found or HDD not initialized!" +msgstr "Nu s-a gasit niciun HDD sau HDD neinitializat!" + +msgid "No backup needed" +msgstr "Nu este nevoie de backup" + +msgid "No cable tuner found!" +msgstr "" + +msgid "" +"No data on transponder!\n" +"(Timeout reading PAT)" +msgstr "" +"Nu exista date pe transponder!\n" +" (Timeout reading PAT)" + +msgid "No delay" +msgstr "" + +msgid "No description available." +msgstr "Descrierea nu este disponibila" + +msgid "No details for this image file" +msgstr "Nu exista detalii despre acest fisier imagine" + +msgid "No displayable files on this medium found!" +msgstr "Nu au fost gasite fisiere pe acest mediu de stocare!" + +msgid "No event info found, recording indefinitely." +msgstr "Nu s-au gasit informatii despre eveniment, inregistrare nesfarsita." + +msgid "No fast winding possible yet.. but you can use the number buttons to skip forward/backward!" +msgstr "" + +msgid "No free index available" +msgstr "" + +msgid "No free tuner!" +msgstr "Nu exista tuner disponibil!" + +msgid "No network connection available." +msgstr "" + +msgid "No networks found" +msgstr "" + +msgid "No new plugins found" +msgstr "" + +msgid "No positioner capable frontend found." +msgstr "Nu a fost gasit niciun pozitioner" + +msgid "No satellites configured. Plese check your tuner setup." +msgstr "" + +msgid "No service" +msgstr "" + +msgid "No services/providers selected" +msgstr "" + +#, fuzzy +msgid "No standby" +msgstr "fara standby" + +msgid "No suitable sat tuner found!" +msgstr "" + +msgid "No tags are set on these movies." +msgstr "Nu exista tag-uri stabilite pentru aceste filme." + +#, fuzzy +msgid "No timeout" +msgstr "fara timeout" + +msgid "No to all" +msgstr "" + +msgid "No transparency" +msgstr "" + +msgid "No tuner is configured for use with a diseqc positioner!" +msgstr "Niciun tuner nu este configurat pentru a fi folosit cu un pozitioner diseqc!" + +msgid "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Niciun tuner nu este activat!\n" +"Va rugam configurati setarile tuner-ului inainte de a incepe o scanare noua." + +#, fuzzy +msgid "No updates available" +msgstr "Descrierea nu este disponibila" + +msgid "No updates available. Please try again later." +msgstr "" + +msgid "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" +msgstr "" +"Nu a fost gasit un PIN valid!\n" +"Vreti sa schimbati PIN-ul acum?\n" +"Cand spuneti 'Nu' aici serviciul de protectie ramane dezactivat!" + +msgid "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" +msgstr "" +"Nu a fost gasit niciun PIN de configurare valid!\n" +"Doriti sa schimbati PIN-ul de configurare acum?\n" +"Cand spuneti 'Nu' aici serviciul de protectie ramane dezactivat!" + +msgid "No wireless networks found! Searching..." +msgstr "" + +msgid "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." +msgstr "" +"Nu a fost gasit un adaptor de retea locala functional.\n" +"Va rugam verificati daca ati conectat un cablu de retea si daca reteaua esteconfigurata corect." + +msgid "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." +msgstr "" +"Nu a fost gasit un adaptor de retea wireless functional.\n" +"Va rugam verificati daca ati conectat un dispozitiv WLAN compatibil si reteaua este configurata corect" + +msgid "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." +msgstr "" +"Nu a fost gasita o interfata de retea wireless functionala.\n" +"Va rugam verificati daca ati conectat un dispozitiv WLAN compatibilsi reteaua este configurata corect" + +msgid "No, but restart from begin" +msgstr "Nu, dar reluati de la capat" + +msgid "No, do nothing." +msgstr "Nu, nu face nimic." + +msgid "No, just start my receiver" +msgstr "" + +msgid "No, never" +msgstr "" + +msgid "None" +msgstr "Niciunul" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right) +msgid "Nonlinear" +msgstr "Nelinear" + +msgid "Normal mode" +msgstr "" + +msgid "North" +msgstr "Nord" + +msgid "Norwegian" +msgstr "Norvegiana" + +msgid "Not associated" +msgstr "" + +msgid "Not configured" +msgstr "" + +#, fuzzy, python-format +msgid "Not enough disk space. Please free up some disk space and try again. (%d MB required, %d MB available)" +msgstr "Nu este spatiu suficient. Va rugam eliberati din spatiu si incercati din nou. (%d MB necesari, %d MB disponibili)" + +msgid "Nothing connected" +msgstr "" + +msgid "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Nu este nimic de scanat!\n" +"Va rugam configurati setarile tuner-ului inainte de a incepe o scanare." + +msgctxt "now/next: 'now' event label" +msgid "Now" +msgstr "" + +#, fuzzy +msgid "Now playing" +msgstr "In redare acum" + +msgid "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." +msgstr "Acum, folositi setarile pentru contrast pentru a ridica luminozitatea de fundalcat mai mult posibil, dar asigurati-va ca pueti vedea inca diferentaintre umbrele cele mai luminoase. Daca ati facut aceasta, apasati OK." + +msgid "OK" +msgstr "OK" + +msgid "OK, guide me through the upgrade process" +msgstr "OK, ghideaza-ma prin procesul de actualizare" + +msgid "ONID" +msgstr "" + +msgid "OSD name request" +msgstr "" + +#, fuzzy +msgid "OSD settings" +msgstr "Setari OSD" + +msgid "OSD transparency" +msgstr "" + +msgid "Off" +msgstr "Oprit" + +msgid "Offline decode delay (ms)" +msgstr "" + +msgid "Ok" +msgstr "" + +msgid "On" +msgstr "Pornit" + +msgid "On end of movie" +msgstr "" + +msgid "On end of movie (as menu)" +msgstr "" + +msgid "One" +msgstr "Unu" + +msgid "Only extensions." +msgstr "" + +#, fuzzy +msgid "Only free scan" +msgstr "Numai scanare la programele libere" + +#, fuzzy +msgid "Open service list" +msgstr "deschide servicelist" + +#, fuzzy +msgid "Open the movie list" +msgstr "Revenire la lista de filme" + +msgid "Orbital position" +msgstr "" + +msgid "Original" +msgstr "" + +msgid "Other" +msgstr "" + +msgid "Output" +msgstr "" + +msgid "Overwrite configuration files during software upgrade?" +msgstr "" + +#, fuzzy +msgid "Overwrite configuration files?" +msgstr "Configurare tuner" + +msgid "PAL" +msgstr "PAL" + +msgid "PCR PID" +msgstr "" + +msgid "PIDs" +msgstr "PID-uri" + +#, fuzzy +msgid "PIN code needed" +msgstr "Este nevoie de codul pin" + +msgid "PLP ID" +msgstr "" + +msgid "PMT PID" +msgstr "" + +msgid "Package list update" +msgstr "Actualizare lista pachet" + +msgid "Packet management" +msgstr "Administrare pachet" + +msgid "Packet manager" +msgstr "Manager pachet" + +#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term +#, fuzzy +msgid "Pan&scan" +msgstr "Pan&Scan" + +#, fuzzy +msgid "Parent directory" +msgstr "Directorul sursa" + +msgid "Parental control" +msgstr "Control parental" + +#, fuzzy +msgid "Parental control services editor" +msgstr "Editor servicii control parental" + +msgid "Parental control setup" +msgstr "Configurare control parental" + +msgid "Parental control type" +msgstr "Tip control parental" + +msgid "Password" +msgstr "" + +#, fuzzy +msgid "Pause" +msgstr "pauza" + +msgid "Pause movie at end" +msgstr "Opreste filmul la sfarsit" + +#, fuzzy +msgid "Pause playback" +msgstr "Reluare redare" + +msgid "Pauze/Continue playback" +msgstr "" + +msgid "Percentage left" +msgstr "" + +#, fuzzy +msgid "Percentage right" +msgstr "Circular drept" + +msgid "Permanently delete all recordings in the trash can?" +msgstr "" + +msgid "Permanently remove all deleted items" +msgstr "" + +msgid "Persian" +msgstr "" + +msgid "Phone number" +msgstr "" + +#, fuzzy +msgid "PiP setup" +msgstr "Configurare PiP" + +msgid "Picon" +msgstr "" + +msgid "Picon and service name" +msgstr "" + +#, fuzzy +msgid "Picture player" +msgstr "PicturePlayer" + +#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term. +msgid "Pillarbox" +msgstr "Pillarbox" + +msgid "Pilot" +msgstr "Pilot" + +msgid "Play" +msgstr "Redare" + +msgid "Play DVD" +msgstr "Redare DVD" + +msgid "Play audio in background" +msgstr "" + +#, fuzzy +msgid "Play audio-CD..." +msgstr "Redare Audio-CD..." + +msgid "Play back media files" +msgstr "" + +#, fuzzy +msgid "Play entry" +msgstr "deschide selectarea" + +#, fuzzy +msgid "Play from next mark or playlist entry" +msgstr "deschide de la urmatoarea sau selectarea playlist" + +#, fuzzy +msgid "Play from previous mark or playlist entry" +msgstr "deschide de la anterioara sau selectarea playlist" + +#, fuzzy +msgid "Play music..." +msgstr "Redare Muzica..." + +msgid "Play next" +msgstr "" + +msgid "Play next (return to movie list)" +msgstr "" + +msgid "Play next (return to previous service)" +msgstr "" + +msgid "Play previous" +msgstr "" + +msgid "Play recorded movies..." +msgstr "Redare filme inregistrate..." + +msgid "Please add titles to the compilation." +msgstr "" + +msgid "Please change recording endtime" +msgstr "Va rugam schimbati timpul final pentru inregistrare" + +msgid "Please check your network settings!" +msgstr "Va rugam verificati setarile de retea!" + +msgid "Please choose an extension..." +msgstr "Va rugam alegeti o extensie..." + +msgid "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" + +msgid "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" + +msgid "Please connect your receiver to the internet" +msgstr "" + +msgid "Please do not change any values unless you know what you are doing!" +msgstr "Va rugam nu modificati nicio valoare numai daca sunteti sigur de ceea ce faceti!" + +msgid "Please enter a name for the new bouquet" +msgstr "Va rugam introduceti un nume pentru noul pachet" + +msgid "Please enter a name for the new marker" +msgstr "Va rugam introduceti un nume pentru marker-ul nou" + +msgid "Please enter a new filename" +msgstr "Va rugam introduceti un nou nume de fisier" + +msgid "Please enter filename (empty = use current date)" +msgstr "Va rugam introduceti numele fisierului (gol = foloseste data curenta)" + +msgid "Please enter name of the new directory" +msgstr "Va rugam introduceti numele noului director" + +msgid "Please enter new name:" +msgstr "" + +msgid "Please enter the correct pin code" +msgstr "Va rugam introduceti codul pin corect" + +msgid "Please enter the old PIN code" +msgstr "" + +msgid "Please follow the instructions on the TV" +msgstr "Va rugam sa urmati instructiunile de pe ecranul TV-ului" + +msgid "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." +msgstr "Va rugam sa retineti ca sursa media selectata anterior nu a putut fi accesata sidirectorul implicit este folosit in locul acesteia." + +msgid "Please press OK to continue." +msgstr "Va rugam apasati OK pentru a continua" + +msgid "Please select a default EPG type..." +msgstr "" + +msgid "Please select a playlist to delete..." +msgstr "Va rugam selectati o lista de redare pentru a fi stearsa..." + +msgid "Please select a playlist..." +msgstr "Va rugam selectati o lista de redare..." + +#, fuzzy +msgid "Please select a sub service..." +msgstr "Va rugam selectati un subserviciu..." + +msgid "Please select a subservice to record..." +msgstr "Va rugam selectati un subserviciu pentru a fi inregistrat..." + +msgid "Please select a subservice..." +msgstr "Va rugam selectati un subserviciu..." + +msgid "Please select an NFI file and press green key to flash!" +msgstr "" + +#, fuzzy +msgid "Please select medium to be scanned" +msgstr "Va rugam selectati mediul de scanat" + +msgid "Please select medium to use as backup location" +msgstr "Va rugam selectati mediul de stocare care va fi folosit ca locatie de rezerva" + +msgid "Please select tag to filter..." +msgstr "Va rugam selectati tag-ul care va fi filtrat..." + +msgid "Please select the movie path..." +msgstr "Va rugam selectati calea pentru film..." + +msgid "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." +msgstr "" + +msgid "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." +msgstr "" + +#, fuzzy +msgid "Please set up tuner A" +msgstr "Va rugam configurati tuner-ul B" + +msgid "Please set up tuner B" +msgstr "Va rugam configurati tuner-ul B" + +msgid "Please set up tuner C" +msgstr "Va rugam configurati tuner-ul C" + +msgid "Please set up tuner D" +msgstr "Va rugam configurati tuner-ul D" + +msgid "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." +msgstr "" +"Va rugam utilizati tastele de directie pentru a misca fereastra PiP.\n" +"Apasati Pachet +/- pentru a redimensiona fereastra.\n" +"Apasati OK pentru a reveni in modul TV sau EXIT pentru a anula miscarea." + +msgid "Please use the UP and DOWN keys to select your language. Afterwards press the OK button." +msgstr "Va rugam folositi tastele SUS si JOS pentru a selecta limba. Dupa aceea apasatitasta OK." + +msgid "Please wait" +msgstr "" + +#, fuzzy +msgid "Please wait (downloading channel list)" +msgstr "Va rugam asteptati... Se incarca lista..." + +#, fuzzy +msgid "Please wait (downloading softcam)" +msgstr "Va rugam asteptati... Se incarca lista..." + +#, fuzzy +msgid "Please wait (updating packages)" +msgstr "te rog asteapta, se incarca imagine" + +msgid "Please wait for activation of your network configuration..." +msgstr "Va rugam asteptati activarea configurarilor de retea..." + +msgid "Please wait while scanning is in progress..." +msgstr "Va rugam asteptati cat are loc scanarea..." + +msgid "Please wait while we configure your network..." +msgstr "Va rugam asteptati pana cand se configureaza reteaua..." + +msgid "Please wait while we prepare your network interfaces..." +msgstr "" + +msgid "Please wait while we test your network..." +msgstr "" + +msgid "Please wait while your network is restarting..." +msgstr "Va rugam asteptati pana cand reteaua se va restarta..." + +msgid "Please wait..." +msgstr "Va rugam asteptati..." + +msgid "Please wait... Loading list..." +msgstr "Va rugam asteptati... Se incarca lista..." + +msgid "Plugin browser" +msgstr "Browser-ul plugin" + +msgid "Plugin manager activity information" +msgstr "" + +msgid "Plugin manager help" +msgstr "" + +msgid "Plugins" +msgstr "Plugin-uri" + +msgid "Polarisation" +msgstr "" + +msgid "Polarisation:" +msgstr "" + +msgid "Polarization" +msgstr "Polarizare" + +msgid "Polish" +msgstr "Poloneza" + +msgid "Port A" +msgstr "Portul A" + +msgid "Port B" +msgstr "Portul B" + +msgid "Port C" +msgstr "Portul C" + +msgid "Port D" +msgstr "Portul D" + +msgid "Portuguese" +msgstr "Portugheza" + +msgid "Position of completed timers in timerlist" +msgstr "" + +msgid "Position stored at index" +msgstr "" + +msgid "Positioner" +msgstr "Pozitioner" + +msgid "Positioner (selecting satellites)" +msgstr "" + +msgid "Positioner Setup" +msgstr "" + +msgid "Positioner setup" +msgstr "Configurare Pozitioner" + +msgid "Power threshold in mA" +msgstr "Prag de putere in mA" + +msgid "Predefined transponder" +msgstr "Transponder predefinit" + +msgid "Prefer AC3 track" +msgstr "" + +msgid "Prefer AC3+ track" +msgstr "" + +msgid "Prefer audio track stored by service" +msgstr "" + +msgid "Prefer graphical DVB subtitles" +msgstr "" + +msgid "Prefer subtitles for hearing impaired" +msgstr "" + +msgid "Prefer subtitles stored by service" +msgstr "" + +msgid "Preferred tuner" +msgstr "" + +msgid "Preferred tuner for recordings" +msgstr "" + +msgid "Prepare another USB stick for image flashing" +msgstr "" + +msgid "Preparing... Please wait" +msgstr "Se pregateste... Va rugam asteptati" + +msgid "Press '0' to toggle PiP mode" +msgstr "" + +msgid "Press INFO on your remote control for additional information." +msgstr "" + +msgid "Press MENU on your remote control for additional options." +msgstr "" + +msgid "Press OK on your remote control to continue." +msgstr "Va rugam apasati OK de pe telecomanda pentru a continua" + +msgid "Press OK to activate the selected skin." +msgstr "" + +msgid "Press OK to activate the settings." +msgstr "Apasati OK pentru a activa setarile" + +msgid "Press OK to edit the settings." +msgstr "Apasati OK pentru a edita setarile." + +#, python-format +msgid "Press OK to get further details for %s" +msgstr "Apasati OK pentru a primi detaliile urmatoare pentru %s" + +msgid "Press OK to scan" +msgstr "Apasati OK pentru scanare" + +#, fuzzy +msgid "Press OK to select a provider." +msgstr "Apasati OK pentru scanare" + +msgid "Press OK to select satellites" +msgstr "" + +msgid "Press OK to select/deselect a CAId." +msgstr "" + +msgid "Press OK to start the scan" +msgstr "Apasati OK pentru a incepe scanarea" + +msgid "Press OK to toggle the selection" +msgstr "" + +msgid "Press OK to toggle the selection." +msgstr "" + +msgid "Press yellow to set this interface as default interface." +msgstr "" + +msgctxt "button label, 'previous screen'" +msgid "Prev" +msgstr "" + +msgid "Preview" +msgstr "" + +msgid "Preview menu" +msgstr "Meniu previzualizare" + +msgid "Preview selected channel" +msgstr "" + +msgid "Primary DNS" +msgstr "DNS Primar" + +msgid "Priority" +msgstr "Prioritate" + +msgid "Process" +msgstr "" + +msgid "Progress" +msgstr "" + +msgid "Progress bar left" +msgstr "" + +msgid "Progress bar right" +msgstr "" + +msgid "Properties of current title" +msgstr "Proprietatile titlului curent" + +msgid "Protect services" +msgstr "Servicii de protectie" + +msgid "Protect setup" +msgstr "Configurare protectie" + +msgid "Provider" +msgstr "Furnizor" + +msgid "Provider to scan" +msgstr "Furnizor ce urmeaza a fi scanat" + +msgid "Providers" +msgstr "Furnizori" + +msgid "Put TV in standby" +msgstr "" + +msgid "Put receiver in standby" +msgstr "" + +msgid "Python frontend for /tmp/mmi.socket" +msgstr "Python frontend pentru /tmp/mni.socket" + +msgid "Quick" +msgstr "Rapid" + +#, fuzzy +msgid "Quick zap" +msgstr "Zap rapid" + +msgid "RF output" +msgstr "Iesire RF" + +msgid "RGB" +msgstr "RGB" + +msgid "Radio" +msgstr "Radio" + +#, fuzzy +msgid "Ram disk" +msgstr "Disk Ram" + +msgid "Random" +msgstr "Aleator" + +#, python-format +msgid "Rating defined by broadcaster - %d" +msgstr "" + +msgid "Rating undefined" +msgstr "" + +msgid "Really close without saving settings?" +msgstr "Inchideti fara sa salvati setarile?" + +msgid "Really delete done timers?" +msgstr "Stergeti timpii de terminare?" + +msgid "Really exit the subservices quickzap?" +msgstr "Iesiti din subserviciul zap rapid?" + +msgid "Really reboot now?" +msgstr "Reporniti sistemul acum?" + +msgid "Really restart now?" +msgstr "Restartati acum?" + +msgid "Really shutdown now?" +msgstr "Inchideti acum?" + +msgid "Really upgrade the frontprocessor and reboot now?" +msgstr "" + +msgid "Really upgrade your settop box and reboot now?" +msgstr "" + +msgid "Reboot" +msgstr "Repornire sistem" + +msgid "Rec" +msgstr "" + +#, fuzzy +msgid "Reception settings" +msgstr "Setari receptie" + +msgid "Record" +msgstr "Inregistrare" + +#, python-format +msgid "Record time limited due to conflicting timer %s" +msgstr "Timp e inregistrare limitat datorat conflictului de timer %s" + +msgid "Recorded files..." +msgstr "Fisiere inregistrate" + +msgid "Recording" +msgstr "Inregistrare" + +msgid "Recording in progress" +msgstr "" + +msgid "Recording paths" +msgstr "" + +msgid "Recording type" +msgstr "" + +msgid "Recording(s) are in progress or coming up in few seconds!" +msgstr "Inregistrarea este in curs sau incepe in cateva secunde!" + +msgid "Recordings" +msgstr "Inregistrari" + +msgid "Recordings always have priority" +msgstr "Inregistrarile au intotdeauna prioritate" + +msgid "Red button..." +msgstr "" + +msgid "Reenter new PIN" +msgstr "" + +#, fuzzy +msgid "Refresh rate" +msgstr "Rata de reimprospatare" + +msgid "Refresh rate selection." +msgstr "Selectie rata de reimprospatare" + +msgid "Regard deep standby as standby" +msgstr "" + +msgid "Relative" +msgstr "" + +msgid "Reload" +msgstr "Reincarcare" + +msgid "Reload black-/white lists" +msgstr "" + +msgid "Reloading bouquets and services..." +msgstr "" + +msgid "Remember last service in PiP" +msgstr "" + +msgid "Remember service PIN" +msgstr "" + +msgid "Remember these settings for each folder" +msgstr "" + +msgid "Reminder, you have chosen to save timeshift file." +msgstr "" + +#, fuzzy +msgid "Remote control type" +msgstr "Tip control parental" + +msgid "Removal has completed." +msgstr "" + +msgid "Remove" +msgstr "Eliminare" + +msgid "Remove a mark" +msgstr "Eliminare semn" + +#, fuzzy +msgid "Remove a nameserver entry" +msgstr "elimina o intrare de nameserver" + +#, fuzzy +msgid "Remove bookmark" +msgstr "elimina bookmark-ul" + +msgid "Remove completed timers after (days)" +msgstr "" + +msgid "Remove currently selected title" +msgstr "Eliminare titlu curent selectat" + +msgid "Remove items from trash can after (days)" +msgstr "" + +msgid "Remove plugins" +msgstr "Eliminare plugin-uri" + +msgid "Remove title" +msgstr "Stergere titlu" + +msgid "Removing" +msgstr "Stergere" + +#, python-format +msgid "Removing directory %s failed. (Maybe not empty.)" +msgstr "Stergere drector %s esuata. (Probabil nu este gol.)" + +#, fuzzy +msgid "Removing partition table" +msgstr "Stergere titlu" + +msgid "Rename" +msgstr "Redenumire" + +msgid "Repeat" +msgstr "" + +#, fuzzy +msgid "Repeat type" +msgstr "Tip repetare" + +msgid "Repeating event currently recording... What do you want to do?" +msgstr "Repetare eveniment care se inregistreaza...Ce doriti a faceti?" + +msgid "Repeats" +msgstr "Repeta" + +msgid "Require authentication for http streams" +msgstr "" + +msgid "Required medium type:" +msgstr "" + +msgid "Rereading partition table" +msgstr "" + +msgid "Reserved" +msgstr "" + +msgid "Reset" +msgstr "Resetare" + +msgid "Reset and renumerate title names" +msgstr "Resetare si renumarare nume titluri" + +msgid "Reset playback position" +msgstr "" + +msgid "Reset video enhancement settings to system defaults?" +msgstr "" + +msgid "Reset video enhancement settings to your last configuration?" +msgstr "" + +msgid "Resolution" +msgstr "Rezolutie" + +msgid "Restart" +msgstr "Restart" + +msgid "Restart GUI now?" +msgstr "Restart GUI acum?" + +msgid "Restart enigma" +msgstr "" + +msgid "Restart network" +msgstr "Restart retea" + +msgid "Restart test" +msgstr "Test restart" + +msgid "Restart your network connection and interfaces.\n" +msgstr "Restartati conexiunea la retea si interfata \n" + +msgid "Restore" +msgstr "Revenire" + +msgid "Restore backups" +msgstr "" + +msgid "Restore is running..." +msgstr "" + +msgid "Restore system settings" +msgstr "Revenire la setarile sistemului" + +#, fuzzy +msgid "Restoring..." +msgstr "se inregistreaza" + +msgid "Resume from last position" +msgstr "Reluare de la ultima pozitie" + +#, python-format +msgid "Resume position at %s" +msgstr "" + +#. TRANSLATORS: The string "Resuming playback" flashes for a moment +#. TRANSLATORS: at the start of a movie, when the user has selected +#. TRANSLATORS: "Resume from last position" as start behavior. +#. TRANSLATORS: The purpose is to notify the user that the movie starts +#. TRANSLATORS: in the middle somewhere and not from the beginning. +#. TRANSLATORS: (Some translators seem to have interpreted it as a +#. TRANSLATORS: question or a choice, but it is a statement.) +msgid "Resuming playback" +msgstr "Reluare redare" + +msgid "Return to movie list" +msgstr "Revenire la lista de filme" + +msgid "Return to previous service" +msgstr "Revenire la serviciul anterior" + +msgid "Reverse bouquet buttons" +msgstr "" + +msgid "Reverse list" +msgstr "" + +msgid "Rewind speeds" +msgstr "Viteze de derulare" + +msgid "Rewrap teletext subtitles" +msgstr "" + +msgid "Right" +msgstr "Dreapta" + +msgid "Right from servicename" +msgstr "" + +msgid "Roll-off" +msgstr "" + +msgid "Romanian" +msgstr "" + +msgid "Root directory" +msgstr "" + +msgid "Rotor step position:" +msgstr "" + +msgid "Rotor turning speed" +msgstr "Viteza de intoarcere a rotorului" + +msgid "Round start time on" +msgstr "" + +msgid "Russian" +msgstr "Rusa" + +msgid "S-Video" +msgstr "S-Video" + +msgid "SID" +msgstr "" + +msgid "SINGLE LAYER DVD" +msgstr "" + +msgid "SNR" +msgstr "SNR" + +msgid "SNR:" +msgstr "SNR:" + +msgid "SSID:" +msgstr "" + +msgid "Same resolution as skin" +msgstr "" + +msgid "Sat" +msgstr "Sat" + +msgid "Satellite" +msgstr "Satelit" + +#, fuzzy +msgid "Satellite dish setup" +msgstr "Configurare Echipament Satelit" + +msgid "Satellite equipment" +msgstr "" + +#, fuzzy +msgid "Satellite equipment setup" +msgstr "Configurare Echipament Satelit" + +msgid "Satellite longitude:" +msgstr "" + +msgid "Satellites" +msgstr "Sateliti" + +msgid "Satfinder" +msgstr "Satfinder" + +msgid "Sats" +msgstr "Sateliti" + +msgid "Saturation" +msgstr "" + +msgid "Saturday" +msgstr "Sambata" + +msgid "Save" +msgstr "Salvare" + +#, fuzzy +msgid "Save playlist" +msgstr "salveaza playlist" + +msgid "Save timeshift file" +msgstr "" + +msgid "Save timeshift file in movie directory" +msgstr "" + +msgid "Scaler sharpness" +msgstr "" + +#, fuzzy +msgid "Scaling mode" +msgstr "Mod de scalare" + +msgid "Scan" +msgstr "" + +msgid "Scan " +msgstr "Scanare" + +#. TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' +#, fuzzy, python-format +msgid "Scan %s" +msgstr "Scanare" + +#. TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' +#, fuzzy, python-format +msgid "Scan %s band" +msgstr "Scanare banda EU MID" + +msgid "Scan additional SR" +msgstr "Scanare SR aditional" + +#, fuzzy +msgid "Scan files..." +msgstr "Scanare fisiere..." + +#, fuzzy +msgid "Scan wireless networks" +msgstr "Scanare retele wireless" + +msgid "Scan your network for wireless access points and connect to them using your selected wireless device.\n" +msgstr "" + +#, python-format +msgid "Scanning %s..." +msgstr "" + +#. TRANSLATORS: The stb is performing a channel scan, progress percentage is printed in '%d' (and '%%' will show a single '%' symbol) +#, python-format +msgid "Scanning - %d%% completed" +msgid_plural "Scanning - %d%% completed" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "Scanning completed, %d channel found" +msgid_plural "Scanning completed, %d channels found" +msgstr[0] "" +msgstr[1] "" + +msgid "Scanning failed!" +msgstr "" + +msgid "Scanning..." +msgstr "" + +msgid "Scans default lamedbs sorted by satellite with a connected dish positioner" +msgstr "lamedbs implicicit sortat dupa satelit cu un pozitioner conectat" + +msgid "Search east" +msgstr "Cautati spre est" + +msgid "Search west" +msgstr "Cautati spre vest" + +msgid "Searching" +msgstr "" + +msgid "Searching east ..." +msgstr "" + +msgid "Searching for available updates. Please wait..." +msgstr "" + +msgid "Searching for new installed or removed packages. Please wait..." +msgstr "Cautare pachete nou instalate sau sterse. Va rugam asteptati..." + +msgid "Searching west ..." +msgstr "" + +msgid "Second cable of motorized LNB" +msgstr "" + +msgid "Secondary DNS" +msgstr "DNS Secundar" + +msgid "Seek" +msgstr "Cautare" + +#, fuzzy +msgid "Seek backward" +msgstr "skin inapoi" + +#, fuzzy +msgid "Seek backward (enter time)" +msgstr "skin inapoi (seteaza ceas)" + +#, fuzzy +msgid "Seek forward" +msgstr "skin inainte" + +#, fuzzy +msgid "Seek forward (enter time)" +msgstr "skin inainte (seteaza ceas)" + +msgid "Select" +msgstr "Selectare" + +#, fuzzy +msgid "Select CAId" +msgstr "selecteaza CAId" + +msgid "Select HDD" +msgstr "Selectare HDD" + +#, fuzzy +msgid "Select a bouquet" +msgstr "Alegeti un film" + +msgid "Select a movie" +msgstr "Alegeti un film" + +#, fuzzy +msgid "Select a network adapter" +msgstr "Selectare Adaptor Retea" + +#, fuzzy +msgid "Select a skin" +msgstr "Alegeti un film" + +#, fuzzy +msgid "Select a tuner" +msgstr "Alegeti un film" + +#, fuzzy +msgid "Select a wireless network" +msgstr "Scanare retele wireless" + +msgid "Select action" +msgstr "" + +#, python-format +msgid "Select action for timer %s:" +msgstr "" + +msgid "Select all" +msgstr "" + +msgid "Select an image to be downloaded" +msgstr "" + +msgid "Select audio track" +msgstr "Selectare pista audio" + +#, fuzzy +msgid "Select backup files" +msgstr "Selecteaza fisierele copii de siguranta" + +#, fuzzy +msgid "Select backup location" +msgstr "Alege locatia copiei de siguranta" + +msgid "Select channel to record from" +msgstr "Selectare canal de inregistrat" + +msgid "Select copy destination for:" +msgstr "" + +msgid "Select default EPG type..." +msgstr "" + +msgid "Select desired image from feed list" +msgstr "" + +msgid "Select destination for:" +msgstr "" + +msgid "Select files for backup." +msgstr "" + +msgid "Select files/folders to backup" +msgstr "" + +msgid "Select input device" +msgstr "" + +msgid "Select input device." +msgstr "" + +msgid "Select interface" +msgstr "" + +#, fuzzy +msgid "Select location" +msgstr "Alege locatia" + +#, fuzzy +msgid "Select movie" +msgstr "Alegeti un film" + +msgid "Select provider to add..." +msgstr "Alegeti furnizor pentru a fi adaugat..." + +msgid "Select refresh rate" +msgstr "Selectati rata de reimprospatare" + +msgid "Select satellites" +msgstr "" + +msgid "Select service to add..." +msgstr "Selectati serviciul care sa fie adaugat..." + +msgid "Select sort method:" +msgstr "" + +#, fuzzy +msgid "Select target folder" +msgstr "Alege directorul destinatie" + +#, fuzzy +msgid "Select the movie path" +msgstr "selecteaza calea filmului" + +#, fuzzy +msgid "Select upgrade source" +msgstr "Alege sursa de actualizare" + +msgid "Select upgrade source to edit." +msgstr "" + +msgid "Select video input with up/down buttons" +msgstr "Selectati intrarea vieo cu tastele sus/jos" + +msgid "Select video mode" +msgstr "Selectati modul vieo" + +msgid "Select wireless network" +msgstr "" + +msgid "Select your provider, and press OK to start the scan" +msgstr "" + +msgid "Selecting satellites 1 (USALS)" +msgstr "" + +msgid "Selecting satellites 2 (USALS)" +msgstr "" + +msgid "Send DiSEqC only on satellite change" +msgstr "Trimite DiSEqC numai la schimbarea satelitului" + +msgid "Separate titles with a main menu" +msgstr "Titluri separate cu meniu princpial" + +msgid "Sequence repeat" +msgstr "Repetare secventa" + +msgid "Serbian" +msgstr "" + +msgid "Service" +msgstr "Serviciu" + +msgid "Service has been added to the favourites." +msgstr "Serviciul a fost adaugat la favorite" + +msgid "Service has been added to the selected bouquet." +msgstr "Serviciul a fost adaugat in pachetul selectat" + +#, fuzzy +msgid "Service info" +msgstr "Info serviciu" + +msgid "" +"Service invalid!\n" +"(Timeout reading PMT)" +msgstr "" +"Serviciu nevalid!\n" +"(Timeout reading PMT)" + +#, fuzzy +msgid "Service name" +msgstr "Scanare Serviciu" + +msgid "" +"Service not found!\n" +"(SID not found in PAT)" +msgstr "" +"Serviciul nu a fost gasit!\n" +"(SID nu a fost gasit in PAT)" + +msgid "Service reference" +msgstr "" + +msgid "Service scan" +msgstr "Scanare serviciu" + +#, fuzzy +msgid "Service searching" +msgstr "Cautare Serviciu" + +#, fuzzy +msgid "Service title mode" +msgstr "Selectati modul vieo" + +msgid "" +"Service unavailable!\n" +"Check tuner configuration!" +msgstr "" +"Serviciul nu este valabil!\n" +"Verificati setarile tunerului!" + +msgid "Services" +msgstr "Servicii" + +msgid "Set default" +msgstr "" + +#, fuzzy +msgid "Set end time" +msgstr "Momentul incheierii" + +msgid "Set fixed" +msgstr "" + +msgid "Set fps for external subtitles" +msgstr "" + +msgid "Set interface as default Interface" +msgstr "Setare interfata ca interfata implicita" + +msgid "Set limits" +msgstr "" + +msgid "Set the type of the progress indication in the channel selection screen." +msgstr "" + +msgid "Set time window to 1 hour" +msgstr "" + +msgid "Set time window to 2 hours" +msgstr "" + +msgid "Set time window to 3 hours" +msgstr "" + +msgid "Set time window to 4 hours" +msgstr "" + +msgid "Set time window to 5 hours" +msgstr "" + +msgid "Set time window to 6 hours" +msgstr "" + +#, fuzzy +msgid "Set voltage and 22KHz" +msgstr "Setare Voltaj si 22KHz" + +msgid "Settings" +msgstr "Setari" + +msgid "Setup" +msgstr "Configurare" + +msgid "Setup menu" +msgstr "" + +#, fuzzy +msgid "Setup mode" +msgstr "Mod configurare" + +msgid "Setup your positioner" +msgstr "" + +#, fuzzy +msgid "Setup your satellite equipment" +msgstr "Configurare Echipament Satelit" + +#, python-format +msgid "Shall the USB stick wizard proceed and program the image file %s into flash memory?" +msgstr "" + +msgid "Sharpness" +msgstr "" + +msgid "Short filenames" +msgstr "" + +msgid "Show EIT now/next in infobar" +msgstr "" + +#, fuzzy +msgid "Show EPG for current channel..." +msgstr "Arata bara de informatii la schimbarea evenimentelor" + +#, fuzzy +msgid "Show EPG..." +msgstr "arata EPG..." + +msgid "Show Games show" +msgstr "" + +msgid "Show SNR percentage instead of dB value" +msgstr "" + +msgid "Show VCR scart on main menu" +msgstr "" + +#, fuzzy +msgid "Show WLAN status" +msgstr "Arata stare WLAN" + +msgid "Show animation while busy" +msgstr "" + +#, fuzzy +msgid "Show background in radio mode" +msgstr "imagine fundal" + +msgid "Show bouquet selection menu" +msgstr "" + +msgid "Show busy indicator when the system is busy." +msgstr "" + +msgid "Show channel numbers in channel selection" +msgstr "" + +msgid "Show columns" +msgstr "" + +msgid "Show crypto icons" +msgstr "" + +msgid "Show crypto info in infobar" +msgstr "" + +msgid "Show detailed event info" +msgstr "" + +#, fuzzy +msgid "Show event details" +msgstr "arata detaliile evenimentului" + +msgid "Show event-progress in channel selection" +msgstr "" + +#, fuzzy +msgid "Show extended description" +msgstr "arata descriere extinsa" + +#, fuzzy +msgid "Show extensions..." +msgstr "arata extensii..." + +msgid "Show icon for new/unseen items" +msgstr "" + +msgid "Show in extensions menu" +msgstr "" + +#, fuzzy +msgid "Show info" +msgstr "Arata Informatii" + +#, fuzzy +msgid "Show info line" +msgstr "arata Infoline" + +msgid "Show infobar on channel change" +msgstr "Arata bara de informatii la schimbarea canalelor" + +msgid "Show infobar on event change" +msgstr "Arata bara de informatii la schimbarea evenimentelor" + +msgid "Show infobar on skip forward/backward" +msgstr "Arata bara de informatii la saltul inainte/inapoi" + +msgid "Show latest commits on sourceforge" +msgstr "" + +msgid "Show message when recording starts" +msgstr "" + +#, fuzzy +msgid "Show movie lengths in movielist" +msgstr "Incarca durata filmelor in lista cu filme" + +msgid "Show multi channel EPG" +msgstr "" + +msgid "Show picons in channel list" +msgstr "" + +msgid "Show positioner movement" +msgstr "Arata miscarea pozitionerului" + +msgid "Show screensaver" +msgstr "" + +msgid "Show second infobar" +msgstr "" + +msgid "Show service type icons" +msgstr "" + +msgid "Show services beginning with" +msgstr "Arata serviciile incepand cu" + +#, fuzzy +msgid "Show shutdown menu" +msgstr "arata meniul de shutdown" + +msgid "Show single service EPG" +msgstr "" + +msgid "Show status icons in Movielist" +msgstr "" + +msgid "Show status icons in movie list" +msgstr "" + +msgid "Show status icons in movielist" +msgstr "" + +#, fuzzy +msgid "Show tag menu" +msgstr "arata meniul de tag-uri" + +msgid "Show the radio player..." +msgstr "Arata player-ul radio" + +msgid "Show the tv player..." +msgstr "Arata player-ul tv" + +msgid "Show warning when timeshift is stopped" +msgstr "" + +msgid "Shows the state of your wireless LAN connection.\n" +msgstr "Arata statusul conexiunii LAN wireless.\n" + +#, fuzzy +msgid "Shuffle playlist" +msgstr "amesteca plylist" + +msgid "Shutdown" +msgstr "" + +msgid "Shutdown when in Standby" +msgstr "" + +msgid "Side by side" +msgstr "" + +msgid "Signal OK, proceeding" +msgstr "" + +msgid "Signal quality" +msgstr "" + +msgid "Signal strength:" +msgstr "" + +msgid "Signal: " +msgstr "" + +msgid "Similar" +msgstr "Similar" + +msgid "Similar broadcasts:" +msgstr "Transmisii similare" + +msgid "Simple" +msgstr "Simplu" + +msgid "Simple titleset (compatibility for legacy players)" +msgstr "Titlu simplu (compatibilitate pentru playerele legacy)" + +msgid "Single" +msgstr "Individual" + +msgid "Single EPG" +msgstr "EPG Individual" + +msgid "Single satellite" +msgstr "Satelit individual" + +#, fuzzy +msgid "Single step (GOP)" +msgstr "Singlestep (GOP)" + +msgid "Single transponder" +msgstr "Transponder individual" + +msgid "Site latitude" +msgstr "" + +msgid "Site longitude" +msgstr "" + +msgid "Skin" +msgstr "" + +msgid "Skins" +msgstr "Skinuri" + +#, fuzzy +msgid "Skip empty services" +msgstr "Servicii de protectie" + +msgid "Skip internet connection check (disables automatic package installation)" +msgstr "" + +#, fuzzy +msgid "Sleep timer" +msgstr "Sleep timer" + +msgid "SleepTimer Configuration" +msgstr "" + +msgid "Sleeptimer" +msgstr "" + +#, fuzzy +msgid "Slide picture in loop" +msgstr "pune poza in loop" + +#, fuzzy +msgid "Slide show interval (sec.)" +msgstr "Interval prezentare (sec.)" + +#, python-format +msgid "Slot %d" +msgstr "Slot %d" + +msgid "Slovak" +msgstr "" + +msgid "Slovenian" +msgstr "" + +msgid "Slow" +msgstr "Incet" + +#, fuzzy +msgid "Slow motion speeds" +msgstr "Viteza imagine cu incetinitorul" + +#, fuzzy +msgid "Small progress" +msgstr "In curs de desfasurare" + +msgid "Social/Political/Economics" +msgstr "" + +msgid "SoftCam / CI" +msgstr "" + +#, fuzzy +msgid "Softcam type" +msgstr "Software" + +msgid "Software" +msgstr "Software" + +msgid "Software management" +msgstr "" + +msgid "Software manager setup" +msgstr "" + +msgid "Software restore" +msgstr "Revenire la softul anterior" + +msgid "Software update" +msgstr "Actualizare software" + +msgid "Softwaremanager information" +msgstr "" + +msgid "Some plugins are not available:\n" +msgstr "Anumite plugin-uri nu sunt disponibile:\n" + +#, fuzzy, python-format +msgid "Sorry, %s has not been installed!" +msgstr "MediaScanner nu este instalat!" + +msgid "Sorry, deleting directories can (for now) only be done through the trash can." +msgstr "" + +#, fuzzy +msgid "Sorry, no backups found!" +msgstr "Nu au fost gasite fisiere backup!" + +#, fuzzy +msgid "Sorry, no details available!" +msgstr "Detaliile nu sunt disponibile!" + +#, fuzzy +msgid "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." +msgstr "" +"Destinatia aleasa pentru fisierele backup nu poate fi creata.\n" +"Va rugam alegeti alta destinatie." + +msgid "Sort" +msgstr "" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort A-Z" +msgstr "Sortare A-Z" + +msgid "Sort by" +msgstr "" + +msgid "Sort list:" +msgstr "" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +#, fuzzy +msgid "Sort time" +msgstr "Timpul de sortare" + +msgid "Sound" +msgstr "Sunet" + +#, fuzzy +msgid "Sound carrier" +msgstr "Purtatoare audio" + +msgid "Source request" +msgstr "" + +msgid "South" +msgstr "Sud" + +msgid "Spanish" +msgstr "Spaniola" + +msgid "Specify the end time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the end time until the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify the start time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the start time when the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify timeframe to ignore inactivity sleeptimer" +msgstr "" + +msgid "Specify timeframe to ignore the shutdown in standby" +msgstr "" + +msgid "Split preview mode" +msgstr "" + +msgid "Splitscreen" +msgstr "" + +msgid "Sports" +msgstr "" + +#, fuzzy +msgid "Standard" +msgstr "standard" + +msgid "Standart list" +msgstr "" + +msgid "Standby" +msgstr "Asteptare" + +#, fuzzy +msgid "Standby / restart" +msgstr "Asteptare / Restart" + +msgid "Standby after current event" +msgstr "" + +#, python-format +msgid "Standby fan %d PWM" +msgstr "" + +#, python-format +msgid "Standby fan %d voltage" +msgstr "" + +msgid "Standby in " +msgstr "" + +msgid "StandbyLED" +msgstr "" + +msgid "Start from the beginning" +msgstr "Incepe de la capat" + +msgid "Start offline decode" +msgstr "" + +msgid "Start recording?" +msgstr "Incepe inregistrarea?" + +msgid "Start test" +msgstr "Incepe test" + +#, fuzzy +msgid "Start time" +msgstr "Ora de incepere" + +msgid "Start time to ignore inactivity sleeptimer" +msgstr "" + +msgid "Start time to ignore shutdown in standby" +msgstr "" + +#, fuzzy +msgid "Start timeshift" +msgstr "start timeshift" + +msgid "Start with list screen" +msgstr "" + +msgid "Starting on" +msgstr "Incepand de la" + +msgid "Startup the set top box in standby" +msgstr "" + +msgid "Startup to Standby" +msgstr "" + +msgid "Step east" +msgstr "Un pas catre est" + +msgid "Step west" +msgstr "Un pas catre vest" + +msgid "Stepped east" +msgstr "" + +msgid "Stepped west" +msgstr "" + +msgid "Stop" +msgstr "Stop" + +#, fuzzy +msgid "Stop PiP" +msgstr "stop pip" + +msgid "Stop current event and disable coming events" +msgstr "Oprire eveniment curent si dezactivare evenimente urmatoare" + +msgid "Stop current event but not coming events" +msgstr "Oprire eveniment curent dar nu si evenimentele urmatoare" + +#, fuzzy +msgid "Stop entry" +msgstr "stop intrarea" + +msgid "Stop playing this movie?" +msgstr "Opriti redarea filmului?" + +msgid "Stop recording" +msgstr "" + +msgid "Stop recording and delete" +msgstr "" + +msgid "Stop service on return to movie list" +msgstr "" + +msgid "Stop test" +msgstr "Oprire test" + +msgid "Stop testing plane after # failed transponders" +msgstr "Oprire testare dupa # transpondere esuate" + +msgid "Stop testing plane after # successful transponders" +msgstr "Oprire testare dupa # transpondere reusite" + +msgid "Stop timer recording" +msgstr "" + +#, fuzzy +msgid "Stop timeshift" +msgstr "stop timeshift" + +#, fuzzy +msgid "Stop timeshift?" +msgstr "Oprire Timeshift" + +msgid "Stopped" +msgstr "" + +msgid "Store at index" +msgstr "" + +msgid "Store position" +msgstr "Memoreaza pozitia" + +msgid "Stored position" +msgstr "Pozitie memorata" + +msgid "Stream" +msgstr "" + +msgid "Stream request" +msgstr "" + +msgid "Strongest position" +msgstr "" + +msgid "Subservice list..." +msgstr "Lista subserviciilor..." + +msgid "Subservices" +msgstr "Subservicii" + +msgid "Subtitle Quickmenu" +msgstr "" + +#, fuzzy +msgid "Subtitle alignment" +msgstr "Selectare subtitrare" + +msgid "Subtitle border width" +msgstr "" + +msgid "Subtitle delay when timing is bad" +msgstr "" + +msgid "Subtitle delay when timing lacks" +msgstr "" + +#, fuzzy +msgid "Subtitle font size" +msgstr "Subtitrari" + +msgid "Subtitle language selection 1" +msgstr "" + +msgid "Subtitle language selection 2" +msgstr "" + +msgid "Subtitle language selection 3" +msgstr "" + +msgid "Subtitle language selection 4" +msgstr "" + +#, fuzzy +msgid "Subtitle position" +msgstr "Selectare subtitrare" + +msgid "Subtitle selection" +msgstr "Selectare subtitrare" + +msgid "Subtitle selection..." +msgstr "" + +msgid "Subtitle settings" +msgstr "" + +msgid "Subtitles" +msgstr "Subtitrari" + +msgid "Sun" +msgstr "Dum" + +msgid "Sunday" +msgstr "Duminica" + +#, fuzzy +msgid "Swap PiP and main picture" +msgstr "schimba pip si imagine principala" + +#, fuzzy +msgid "Swap services" +msgstr "Schimbare servicii" + +msgid "Swedish" +msgstr "Suedeza" + +msgid "Switch TV to correct input" +msgstr "" + +msgid "Switch between filelist/playlist" +msgstr "" + +msgid "Switch between normal mode and list mode" +msgstr "" + +msgid "Switch to HDMI in mode" +msgstr "" + +#, fuzzy +msgid "Switch to filelist" +msgstr "mergi la filelist" + +msgid "Switch to next channel" +msgstr "" + +#, fuzzy +msgid "Switch to next channel in history" +msgstr "canalul urmator in istoric" + +#, fuzzy +msgid "Switch to next sub service" +msgstr "Schimba la urmatorul subserviciu" + +#, fuzzy +msgid "Switch to playlist" +msgstr "mergi la filelist" + +#, fuzzy +msgid "Switch to previous channel" +msgstr "Schimba la subserviciul anterior" + +#, fuzzy +msgid "Switch to previous channel in history" +msgstr "canalul anterior din istoric" + +#, fuzzy +msgid "Switch to previous sub service" +msgstr "Schimba la subserviciul anterior" + +msgid "Switchable tuner types:" +msgstr "" + +msgid "Symbol rate" +msgstr "" + +msgid "Symbol rate:" +msgstr "" + +msgid "Sync failure moving back to origin !" +msgstr "" + +msgid "System" +msgstr "Sistem" + +#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) +msgid "TRANSLATOR_INFO" +msgstr "TRANSLATOR_INFO" + +msgid "TS file is too large for ISO9660 level 1!" +msgstr "Fisierul TS este prea mare pentru standardul ISO9660 nivelul 1!" + +msgid "TSID" +msgstr "" + +msgid "TV physical address report" +msgstr "" + +msgid "TXT PID" +msgstr "" + +#, fuzzy +msgid "Table of contents for collection" +msgstr "Lista continuturilor pentru colectie" + +msgid "Tags" +msgstr "Tag-uri" + +msgid "Teletext subtitle color" +msgstr "" + +#, fuzzy +msgid "Temperature and fan control" +msgstr "Control parental" + +msgid "Terrestrial" +msgstr "Terestru" + +msgid "Terrestrial provider" +msgstr "Furnizor terestru" + +msgid "Test DiSEqC settings" +msgstr "Test setari DiSEqC" + +msgid "Test mode" +msgstr "Mod de testare" + +msgid "Test the network configuration of your receiver.\n" +msgstr "" + +#, fuzzy +msgid "Test type" +msgstr "Tipul de test" + +#, fuzzy +msgid "Text color" +msgstr "textcolor" + +msgid "Thai" +msgstr "" + +msgid "" +"Thank you for using the wizard.\n" +"Please press OK to continue." +msgstr "" + +msgid "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." +msgstr "" + +msgid "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?" +msgstr "" + +msgid "The PIN code has been changed successfully." +msgstr "" + +msgid "The PIN codes you entered are different." +msgstr "" + +msgid "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" +msgstr "" + +msgid "The backup failed. Please choose a different backup location." +msgstr "Operatiunea backup nu a reusit. Va rugam alegeti o alta locatie pentru fisierele backup." + +#, python-format +msgid "" +"The current beta image might not be stable.\n" +"For more information see %s." +msgstr "" + +#, python-format +msgid "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." +msgstr "" + +#, python-format +msgid "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" +msgstr "" +"Urmatorul dispozitiv nu a fost gasit: \n" +"\n" +"%s\n" +"\n" +"Doriti sa scrieti flasher-ul USB pe stick?" + +msgid "The following files were found..." +msgstr "Urmatoarele fisiere nu au fost gasite..." + +msgid "The md5sum validation failed, the file may be corrupted!" +msgstr "" + +#, fuzzy +msgid "" +"The network wizard extension is not installed!\n" +"Please install it." +msgstr "" +"Plugin-ul LAN wireless nu este instalat!\n" +"Va rugam sa-l instalati." + +#, python-format +msgid "The path %s already exists." +msgstr "Directia %s exista deja." + +msgid "The pin code you entered is wrong." +msgstr "Codul pin introdus este gresit." + +#, python-format +msgid "The results have been written to %s." +msgstr "Rezultatele au fost scrise in %s." + +msgid "The sleep timer has been activated." +msgstr "Sleep timer a fost activat." + +msgid "The sleep timer has been disabled." +msgstr "Sleep timer a fost dezactivat." + +#, fuzzy +msgid "" +"The software management extension is not installed!\n" +"Please install it." +msgstr "" +"Plugin-ul LAN wireless nu este instalat!\n" +"Va rugam sa-l instalati." + +#, python-format +msgid "The status of the current beta image could not be checked because %s can not be reached." +msgstr "" + +msgid "The timer file (timers.xml) is corrupt and could not be loaded." +msgstr "Fisierul timer (timer.xml) este corupt si nu a putut fi incarcat." + +#, fuzzy +msgid "The user interface of your receiver is restarting" +msgstr "Va rugam asteptati pana cand reteaua se va restarta..." + +msgid "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" +msgstr "" + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." +msgstr "" + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it." +msgstr "" +"Plugin-ul LAN wireless nu este instalat!\n" +"Va rugam sa-l instalati." + +msgid "The wizard can backup your current settings. Do you want to do a backup now?" +msgstr "Aplicatia poate crea un backup pentru setarile actuale. Doriti sa faceti un backup acum?" + +#, python-format +msgid "The wizard found a configuration backup. Do you want to restore your old settings from %s?" +msgstr "" + +msgid "The wizard is finished now." +msgstr "Aplicatia s-a incheiat." + +msgid "There are at least " +msgstr "" + +#, python-format +msgid "There are at least %s updates available." +msgstr "" + +msgid "There are currently no outstanding actions." +msgstr "" + +msgid "There are no updates available." +msgstr "" + +msgid "There is no signal to lock on !" +msgstr "" + +msgid "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" +msgstr "" +"S-ar putea sa nu existe spatiu suficient pe partitia selectata.\n" +"Doriti sa continuati?" + +msgid "This DVD RW medium is already formatted - reformatting will erase all content on the disc." +msgstr "Acest DVD RW este deja formatat - reformatarea presupune stergerea tuturorfisierelor de pe disc." + +msgid "" +"This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!" +msgstr "" + +msgid "This plugin is installed." +msgstr "" + +msgid "This plugin is not installed." +msgstr "" + +msgid "This plugin will be installed." +msgstr "" + +msgid "This plugin will be removed." +msgstr "" + +#, python-format +msgid "This receiver cannot decode %s streams!" +msgstr "" + +#, fuzzy +msgid "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration" +msgstr "" +"Acest test verifica nume de servere configurate.\n" +"Daca primiti un mesaj \"neconfirmat\":\n" +"- va rugam verificati DHCP, conexiunile si configurarea adaptorului\n" +"- daca ati configurat numele serverelor manual va rugam verificati inregistrarile facute in\"Nume server\" Configurare" + +#, fuzzy +msgid "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" +msgstr "" +"Acest test verifica daca un cablu de retea este conectat la adaptorul LAN.\n" +"Daca primiti mesajul \"deconectat\":\n" +"- verificati daca un cablu de retea este conectat\n" +"- verificati daca nu cumva cablul este defect" + +#, fuzzy +msgid "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" +msgstr "" +"Acest test verifica daca o adresa IP valida este gasita pentru adaptorul LAN.\n" +"Daca primiti mesajul \"neconfirmat\":\n" +"- nu a fost gasita o adresa IP valida\n" +"- va rugam verificati DHCP, conexiunile si configurarea adaptorului" + +#, fuzzy +msgid "" +"This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." +msgstr "" +"Acest test verifica daca adaptorul LAN este setat pentru configurarea automata a adresei IP cu DHCP.\n" +"Daca primiti mesajul \"dezactivat\":\n" +"- adaptorul LAN este configurat pentru configurare IP manual\n" +"- verificati daca ati introdus informatiile corecte despre IP in configurarea adaptorului" + +#, fuzzy +msgid "This test detects your configured LAN adapter." +msgstr "Acest test detecteaza Adaptorul-LAN configurat." + +msgid "" +"This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\n" +"Are you sure?" +msgstr "" + +msgid "Three" +msgstr "Trei" + +msgid "Threshold" +msgstr "Prag" + +msgid "Thu" +msgstr "Joi" + +msgid "Thumbnails" +msgstr "Thumbnails" + +msgid "Thursday" +msgstr "Joi" + +msgid "Time" +msgstr "Ora" + +#, fuzzy +msgid "Time scale" +msgstr "Selectare timer" + +msgid "Timer" +msgstr "Timer" + +msgid "Timer Overview" +msgstr "" + +#, fuzzy +msgid "Timer edit" +msgstr "Editare timer" + +#, fuzzy +msgid "Timer editor" +msgstr "Editor Timer" + +msgid "Timer entry" +msgstr "Intrare timer" + +msgid "Timer log" +msgstr "Inregistrare timer" + +msgid "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" +msgstr "" +"Suprapunere timer detectata in timers.xml!\n" +"Te rog verifica din nou!" + +#, fuzzy +msgid "Timer overview" +msgstr "Intrare timer" + +#, fuzzy +msgid "Timer recording location" +msgstr "schimba inregistrare (durata)" + +msgid "Timer sanity error" +msgstr "Eroare timer" + +msgid "Timer selection" +msgstr "Selectare timer" + +msgid "Timer selection..." +msgstr "" + +#, fuzzy +msgid "Timer type" +msgstr "Tip Timer" + +msgid "Timeshift" +msgstr "Timeshift" + +msgid "Timeshift Live" +msgstr "" + +msgid "Timeshift location" +msgstr "" + +msgid "Timeshift not possible!" +msgstr "Timeshift nu este posibil!" + +msgid "Timezone" +msgstr "Zona de fus orar" + +msgid "Title" +msgstr "Titlu" + +msgid "Title properties" +msgstr "Proprietati titlu" + +msgid "Titleset mode" +msgstr "Mod titlu" + +msgid "To audio selection" +msgstr "" + +msgid "To subtitle selection" +msgstr "" + +msgid "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." +msgstr "" + +msgid "Today" +msgstr "Astazi" + +#, fuzzy +msgid "Toggle a cut mark at the current position" +msgstr "schimba o marcare la pozitia curenta" + +#, fuzzy +msgid "Tone amplitude" +msgstr "Mod ton" + +msgid "Tone mode" +msgstr "Mod ton" + +msgid "Toneburst" +msgstr "Toneburst" + +msgid "Toneburst A/B" +msgstr "Toneburst A/B" + +msgid "Top and bottom" +msgstr "" + +msgid "Track" +msgstr "Piesa" + +msgid "Translation" +msgstr "Traducere" + +msgid "Translation:" +msgstr "Traducere:" + +msgid "Translations" +msgstr "" + +msgid "Transmission mode" +msgstr "Mod transmisie" + +msgid "Transponder" +msgstr "Transponder" + +#, fuzzy +msgid "Transponder type" +msgstr "Tip transponder" + +msgid "Trash can" +msgstr "" + +msgid "Tries left:" +msgstr "Incercari ramase:" + +msgid "Try to find used transponders in cable network.. please wait..." +msgstr "Cautare transpondere folosite in reteaua de cablu...va rugam asteptati..." + +msgid "Trying to download a new packetlist. Please wait..." +msgstr "Descarcare a unei noi liste de pachete. Va rugam asteptati..." + +msgid "Tue" +msgstr "Mar" + +msgid "Tuesday" +msgstr "Marti" + +msgid "Tune" +msgstr "Acordare" + +#, fuzzy +msgid "Tune and focus" +msgstr "Stare tuner" + +msgid "Tune failed!" +msgstr "Acordare esuata!" + +msgid "Tuner" +msgstr "Tuner" + +msgid "Tuner configuration" +msgstr "Configurare tuner" + +msgid "Tuner is not supported" +msgstr "" + +#, fuzzy +msgid "Tuner slot" +msgstr "Slot tuner" + +msgid "Tuner status" +msgstr "Stare tuner" + +#, fuzzy, python-format +msgid "Tuner status %s" +msgstr "Stare tuner" + +msgid "Tuner type" +msgstr "" + +msgid "Turkish" +msgstr "Turca" + +msgid "Turn on the power LED during standby." +msgstr "" + +msgid "Turning step size" +msgstr "" + +msgid "Two" +msgstr "Doi" + +msgid "Type" +msgstr "Tip" + +msgid "Type of scan" +msgstr "Tipul scanarii" + +msgid "USALS" +msgstr "USALS" + +msgid "USALS calibration" +msgstr "" + +#, fuzzy +msgid "USB stick" +msgstr "USB Stick" + +msgid "USB stick wizard" +msgstr "Expert USB stick" + +msgid "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" + +msgid "Undo install" +msgstr "" + +msgid "Undo uninstall" +msgstr "" + +msgid "Unencrypted" +msgstr "" + +msgid "UnhandledKey" +msgstr "" + +msgid "Unicable" +msgstr "Unicable" + +msgid "Unicable LNB" +msgstr "Unicable LNB" + +msgid "Unicable Martix" +msgstr "Unicable Martix" + +msgid "Uninstall" +msgstr "" + +msgid "Universal LNB" +msgstr "LNBUniversal " + +msgid "Unknown" +msgstr "" + +msgid "Unmount" +msgstr "" + +msgid "Unsupported" +msgstr "" + +msgid "Update" +msgstr "Updateza" + +msgid "Update and ask to reboot" +msgstr "" + +msgid "Update and reboot (recommended)" +msgstr "" + +#, fuzzy +msgid "Update channel list only" +msgstr "canalul urmator in istoric" + +#, python-format +msgid "Update completed, %d package was installed." +msgid_plural "Update completed, %d packages were installed." +msgstr[0] "" +msgstr[1] "" + +msgid "Update completed. Do you want to reboot your receiver?" +msgstr "" + +msgid "Update failed. Your receiver does not have a working internet connection." +msgstr "" + +msgid "Update has completed." +msgstr "" + +msgid "Updatefeed not available." +msgstr "" + +msgid "Updating software catalog" +msgstr "" + +msgid "Upgrading" +msgstr "Upgradare" + +msgid "Use" +msgstr "Foloseste" + +msgid "Use DHCP" +msgstr "Foloseste DHCP" + +msgid "Use EIT EPG information when it is available." +msgstr "" + +msgid "Use FreeSat EPG information when it is available." +msgstr "" + +msgid "Use MHW EPG information when it is available." +msgstr "" + +msgid "Use Netmed EPG information when it is available." +msgstr "" + +msgid "Use TV remote control" +msgstr "" + +#, fuzzy +msgid "Use USALS for this sat" +msgstr "Foloseste usals pentru acest satelit" + +msgid "Use ViaSat EPG information when it is available." +msgstr "" + +msgid "Use Virgin EPG information when it is available." +msgstr "" + +msgid "Use a gateway" +msgstr "Foloseste un gateway" + +msgid "Use fastscan channel names" +msgstr "" + +msgid "Use fastscan channel numbering" +msgstr "" + +msgid "Use frequency or channel" +msgstr "" + +msgid "Use individual settings for each directory" +msgstr "" + +#, fuzzy +msgid "Use interface" +msgstr "Foloseste Interfata" + +msgid "Use official channel numbering" +msgstr "" + +msgid "Use original DVB subtitle position" +msgstr "" + +msgid "Use original teletext position" +msgstr "" + +msgid "Use power measurement" +msgstr "Foloseste Masurarea Energiei" + +#, fuzzy +msgid "Use the network wizard to configure selected network adapter" +msgstr "Foloseste expertul de retea, pentru a configura reteaua\n" + +#, fuzzy +msgid "Use the network wizard to configure your network\n" +msgstr "Foloseste expertul de retea, pentru a configura reteaua\n" + +msgid "Use the up/down keys on your remote control to select an option. After that, press OK." +msgstr "Foloseste tastele sus/jos pentru a selecta optiunile. Dopa asta, apasa OK." + +#, fuzzy +msgid "Use the wizard to set up basic features" +msgstr "Foloseste expertul pentru setarile de baza" + +#, fuzzy +msgid "Use these input device settings?" +msgstr "Inchideti fara sa salvati setarile?" + +#, fuzzy +msgid "Use these settings?" +msgstr "Revenire la setarile sistemului" + +msgid "Use this video enhancement settings?" +msgstr "" + +#, fuzzy +msgid "Use trash can in movielist" +msgstr "Revenire la lista de filme" + +msgid "Used service scan type" +msgstr "Tipul serviciului folosit pentru scanare" + +msgid "User - bouquets" +msgstr "" + +msgid "User defined" +msgstr "Userul ales" + +msgid "User defined transponder" +msgstr "" + +#, fuzzy +msgid "User interface" +msgstr "Foloseste Interfata" + +msgid "Username" +msgstr "" + +#, python-format +msgid "Using LNB %d" +msgstr "" + +msgid "Using fixed address" +msgstr "" + +#, python-format +msgid "Using tuner %s" +msgstr "" + +msgid "Usually when the subtitle language is the same as the audio language, the subtitles will not be used. Enable this option to allow these subtitles to be used." +msgstr "" + +msgid "VCR scart" +msgstr "VCR scart" + +msgid "VMGM (intro trailer)" +msgstr "VMGM (intro trailer)" + +msgid "Vertical" +msgstr "Vertical" + +msgid "Vertical turning speed" +msgstr "" + +msgid "Video PID" +msgstr "" + +msgid "Video enhancement preview" +msgstr "" + +msgid "Video enhancement settings" +msgstr "" + +msgid "Video enhancement setup" +msgstr "" + +#, fuzzy +msgid "Video fine tuning" +msgstr "Acord fin video" + +#, fuzzy +msgid "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." +msgstr "" +"Selectare intrare video\n" +"\n" +"Te rugam apasa Ok daca vezi aceasta pagina pe TV-ul tau(sau selecteaza un port de intrare diferit).\n" +"\n" +"Urmatorul port de intrare va fi automat probat in 10 secunde." + +msgid "Video mode selection." +msgstr "Selectare MOD VIDEO" + +#, fuzzy +msgid "Video output" +msgstr "Iesire video" + +#, fuzzy +msgid "Video setup" +msgstr "Video Setup" + +#, fuzzy +msgid "Video wizard" +msgstr "Expert Video" + +#, python-format +msgid "Video: %s fps" +msgstr "" + +msgid "VideoMode" +msgstr "" + +msgid "Videocodec" +msgstr "" + +msgid "Videoformat" +msgstr "" + +msgid "Videosize" +msgstr "" + +msgid "View Rass interactive..." +msgstr "Vezi Rass interactive..." + +msgid "View details" +msgstr "" + +msgid "View list of available " +msgstr "" + +msgid "View list of available CommonInterface extensions" +msgstr "Vezi lista cu estensiile CommonInterface disponibile" + +msgid "View list of available EPG extensions." +msgstr "Vezi lista extensiilor EPG disponible" + +msgid "View list of available Satellite equipment extensions." +msgstr "" + +msgid "View list of available communication extensions." +msgstr "Vezi lista comunicatiilor disponibile" + +msgid "View list of available default settings" +msgstr "Vezi lista setarilor predefinite disponibile" + +#, fuzzy +msgid "View list of available display and userinterface extensions." +msgstr "Vezi lista cu Display disponibile si extemsiile Interfata user" + +msgid "View list of available multimedia extensions." +msgstr "Vezi lista extensiilor multimedia disponibile " + +msgid "View list of available networking extensions" +msgstr "Vezi lista estensiilor de retea disponibile" + +msgid "View list of available recording extensions" +msgstr "Vezi lista extensiilor inregistrate disponibile" + +msgid "View list of available skins" +msgstr "Vezi lista cu skin-urile disponibile" + +msgid "View list of available software extensions" +msgstr "Vezi lista estensiilor software disponibile" + +msgid "View list of available system extensions" +msgstr "Vezi lista estensiilor sistemului disponibile" + +#, fuzzy +msgid "View photos..." +msgstr "Vezi Pozele..." + +msgid "View teletext..." +msgstr "Vezi teletext ..." + +#, fuzzy +msgid "View video CD..." +msgstr "Vezi video CD..." + +#, fuzzy +msgid "Virtual keyboard" +msgstr "Tastatura Virtuala" + +msgid "Voltage mode" +msgstr "Mod Voltaj" + +msgid "Volume" +msgstr "Volum" + +msgid "W" +msgstr "W" + +msgid "WEP" +msgstr "WEP" + +msgid "WLAN connection" +msgstr "" + +msgid "WPA" +msgstr "WPA" + +msgid "WPA or WPA2" +msgstr "WPA sau WPA2" + +msgid "WPA2" +msgstr "WPA2" + +msgid "WSS on 4:3" +msgstr "WSS on 4:3" + +msgid "Waiting" +msgstr "Asteaptare" + +msgid "Waiting for mount" +msgstr "" + +msgid "Waiting for partition" +msgstr "" + +msgid "Wakeup" +msgstr "" + +msgid "Wakeup TV from standby" +msgstr "" + +msgid "Wakeup receiver for start timer" +msgstr "" + +msgid "Wakeup receiver from standby" +msgstr "" + +msgid "Wakeup signal from TV" +msgstr "" + +msgid "Wakeup type" +msgstr "" + +msgid "Warning: no LNB; using factory defaults." +msgstr "" + +#, fuzzy +msgid "Watch movies..." +msgstr "Redare filme inregistrate..." + +#, fuzzy +msgid "Watch recordings..." +msgstr "se inregistreaza" + +msgid "Wed" +msgstr "Wed" + +msgid "Wednesday" +msgstr "Miercuri\t" + +msgid "Weekday" +msgstr "Saptamanal" + +msgid "Weighted position" +msgstr "" + +#, fuzzy +msgid "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." +msgstr "" +"Bine ai venit la editarea Cutlist.\n" +"\n" +"Cauta inceputul listei care vrei sa o editezi. Apasa Ok pt a incepe cut'.\n" +"\n" +"Cauta sfarsitul listei.Apasa ok, apoi selecteaza 'end cut'. Asta este tot" + +msgid "Welcome to the image upgrade wizard. The wizard will assist you in upgrading the firmware of your receiver by providing a backup facility for your current settings and a short explanation of how to upgrade your firmware." +msgstr "" + +msgid "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" +msgstr "" + +msgid "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." +msgstr "" + +msgid "Welcome..." +msgstr "Bine ai venit..." + +msgid "West" +msgstr "Vest" + +msgid "West limit set" +msgstr "" + +msgid "What do you want to scan?" +msgstr "Ce vrei sa scanezi" + +msgid "When enabled the PiP can be closed by the exit button." +msgstr "" + +msgid "When enabled the arrow buttons around the OK button will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled the left, right, CH+/-, B+/-, P+/- buttons will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled you can specify a timeframe to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "When enabled you can specify a timeframe were the inactivity sleeptimer is ignored. Not the detection is disabled during this timeframe but the inactivity timeout is disabled" +msgstr "" + +msgid "When enabled you can zap channels with the CH+/-, B+/-, P+/- buttons instead of opening the channel selection list." +msgstr "" + +msgid "When enabled you get the channel selection list via the OK button, the infobar toggle is then transfered to exit button" +msgstr "" + +msgid "When enabled, AIT data will be included in http streams. This allows a client receiver to use HbbTV." +msgstr "" + +msgid "When enabled, ECM data will be included in http streams. This allows a client receiver to do the descrambling." +msgstr "" + +msgid "When enabled, EIT data will be included in http streams. This allows a client receiver to show EPG." +msgstr "" + +msgid "When enabled, a popup message will be shown when a movie has finished and the next one will start." +msgstr "" + +msgid "When enabled, a popup message will be shown when a recording starts." +msgstr "" + +msgid "When enabled, a radio background image will be visible while listening to a radio channel." +msgstr "" + +msgid "When enabled, a recording is allowed to interrupt live tv, when there are no free tuners." +msgstr "" + +msgid "When enabled, a warning will be displayed and the user will get an option to stop or to continue the timeshift." +msgstr "" + +msgid "When enabled, authentication is required to watch http streams." +msgstr "" + +msgid "When enabled, channel numbering will start at '1' for each bouquet." +msgstr "" + +msgid "When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen." +msgstr "" + +msgid "When enabled, continue to the next bouquet when the last channel of the current bouquet is reached while changing channels." +msgstr "" + +msgid "When enabled, deleted recordings are moved to the trash can, instead of being deleted immediately." +msgstr "" + +msgid "When enabled, display the EIT now/next eventdata in infobar. When disabled, display now/next eventdata from the EPG cache instead." +msgstr "" + +msgid "When enabled, encryption info will be shown in the infobar (when supported by the skin)." +msgstr "" + +msgid "When enabled, error messages related to the Common Interface module will not be shown." +msgstr "" + +msgid "When enabled, error messages related to zapping will not be shown." +msgstr "" + +msgid "When enabled, external subtitles will be always turned on for playback movie." +msgstr "" + +msgid "When enabled, graphical DVB subtitles are preferred over teletext subtitles, when both types are available." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be centered horizontally." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be displayed at their original position." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be displayed in yellow, instead of the original color." +msgstr "" + +msgid "When enabled, http streams are descrambled on the server side. The (remote) client receiver does not have to do descrambling." +msgstr "" + +msgid "When enabled, it is possible to leave the movieplayer with exit." +msgstr "" + +msgid "When enabled, measure power consumption to detect when the rotor stops turning (when supported by the tuner)." +msgstr "" + +msgid "When enabled, number markers will be hiden." +msgstr "" + +msgid "When enabled, services may be grouped in multiple bouquets." +msgstr "" + +msgid "When enabled, show channel numbers in the channel selection screen." +msgstr "" + +msgid "When enabled, subtitles for the hearing impaired can be used." +msgstr "" + +msgid "When enabled, subtitles for the hearing impaired will be preferred over normal subtitles, when both types are available." +msgstr "" + +msgid "When enabled, teletext pages will be cached, allowing faster access." +msgstr "" + +msgid "When enabled, teletext subtitles will be displayed at their original position." +msgstr "" + +msgid "When enabled, the VCR scart option will be shown on the main menu" +msgstr "" + +msgid "When enabled, the channel selection list will be hidden while listening to a radio channel" +msgstr "" + +msgid "When enabled, the infobar will be displayed when a new event starts." +msgstr "" + +msgid "When enabled, the infobar will be displayed when changing channels." +msgstr "" + +msgid "When enabled, the infobar will be displayed when skipping forwards/backwards during media playback." +msgstr "" + +msgid "When enabled, the lenght of each recording will be shown in the movielist (this might cause some additional loading time)." +msgstr "" + +msgid "When enabled, the original line breaks will be removed from the teletext subtitles." +msgstr "" + +msgid "When enabled, the receiver will automatically use the audio track which you selected before." +msgstr "" + +msgid "When enabled, the receiver will automatically use the subtitles which you selected before." +msgstr "" + +msgid "When enabled, the receiver will no longer monitor the tuned transponder for possible changes. Do not use this option unless you know what you are doing." +msgstr "" + +msgid "When enabled, the receiver will select an AC3 track (when available)." +msgstr "" + +msgid "When enabled, the receiver will select an AC3+ track (when available)." +msgstr "" + +msgid "When enabled, timeshift starts automatically in background after specified time." +msgstr "" + +#, fuzzy +msgid "When enabled, use DHCP for the IP configuration." +msgstr "deschide configurarea nameserverului" + +msgid "When enabled, your receiver will detect activity on the VCR SCART input." +msgstr "" + +msgid "When nonzero, a recording will start earlier than the starting time indicated by the EPG." +msgstr "" + +msgid "When nonzero, a recording will stop later than the ending time indicated by the EPG." +msgstr "" + +msgid "When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture." +msgstr "" + +msgid "When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture." +msgstr "" + +msgid "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" +msgstr "" +"Cand faci resetare de fabrica, o sa pierzi Toate Setarile\n" +"(inclusiv Bouquets, servicii, sateliti ...)\n" +"Dupa resetare receiverul tau va reporni automat!\n" +"\n" +"Esti sigur ca vrei sa faci setari de fabrica?" + +msgid "Where do you want to backup your settings?" +msgstr "Unde vrei sa salvezi datele" + +msgid "Where to save temporary timeshift recordings?" +msgstr "Unde salvam inregistrarile temporate timeshift?" + +msgid "Wireless LAN" +msgstr "" + +#, fuzzy +msgid "Wireless network" +msgstr "Wireless Network" + +#, fuzzy +msgid "Wireless network configuration..." +msgstr "Configurare retea..." + +msgid "Wireless network connection setup" +msgstr "" + +msgid "Wireless network connection setup." +msgstr "" + +msgid "Wireless network state" +msgstr "" + +msgid "With popup" +msgstr "" + +msgid "Without popup" +msgstr "" + +msgid "Would you like to install a softcam?" +msgstr "" + +msgid "Write error while recording. Disk full?\n" +msgstr "Inregistrare esusta. Disk plin?\n" + +msgid "Write failed!" +msgstr "Scriere esuata" + +msgid "YPbPr" +msgstr "YPbPr" + +msgid "Year" +msgstr "An" + +msgid "Yellow DVB subtitles" +msgstr "" + +msgid "Yes" +msgstr "Da" + +msgid "Yes and save" +msgstr "" + +msgid "Yes and save in movie dir" +msgstr "" + +msgid "Yes to all" +msgstr "" + +msgid "Yes, always" +msgstr "" + +msgid "Yes, and delete this movie" +msgstr "Da si sterge acest film" + +msgid "Yes, backup my settings!" +msgstr "Da, salveaza-mi setarile" + +msgid "Yes, delete this movie and return to movie list" +msgstr "" + +msgid "Yes, do a manual scan now" +msgstr "Da, scaneaza manual acum" + +msgid "Yes, do an automatic scan now" +msgstr "Da, scaneaza automat acum" + +msgid "Yes, do another manual scan now" +msgstr "Da, scaneaza inca odata manual" + +msgid "Yes, perform a shutdown now." +msgstr "Da, inchide acum" + +msgid "Yes, restore the settings now" +msgstr "Da, restaureaza setari acum" + +msgid "Yes, returning to movie list" +msgstr "Da, rintoarcere la lista filme" + +msgid "Yesterday" +msgstr "" + +#, python-format +msgid "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" +msgstr "" + +msgid "You can cancel the installation." +msgstr "" + +msgid "You can cancel the removal." +msgstr "" + +msgid "You can continue watching TV etc. while this is running." +msgstr "" + +msgid "You can install this plugin." +msgstr "" + +msgid "You can only burn receiver recordings!" +msgstr "" + +msgid "You can remove this plugin." +msgstr "" + +msgid "You cannot delete this!" +msgstr "Nu poti sterge asta!" + +msgid "You didn't select a channel to record from." +msgstr "" + +msgid "You have chosen to backup your settings. Please press OK to start the backup now." +msgstr "Ai ales sa faci backup la setari. Apasa OK pentru inceperea backup-uluiacum." + +msgid "You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased." +msgstr "Ai ales sa creezi un usb stick .NFI flasher bootabil. Acesta va repartitiona stickul usb asadar datele de pe el vor fi sterse." + +msgid "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." +msgstr "Ai ales sa faci restore la setari. Enigma2 se va restarta dupa restore. Apasa OK pentru a face restore acum." + +#, python-format +msgid "You have to wait %s!" +msgstr "Ai de asteptat %s!" + +msgid "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." +msgstr "" + +msgid "You system does not support ext4" +msgstr "" + +msgid "Your backup succeeded. We will now continue to explain the further upgrade process." +msgstr "A avut loc un backup. Acum vom continua sa explicam procesul de upgrade." + +msgid "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" +msgstr "Colectia ta excede marimea unui sigle layer medium, vei avea nevoie de un blank dual layer DVD!" + +msgid "Your current collection will get lost!" +msgstr "" + +msgid "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." +msgstr "" +"Firmware-ul de la procesor trebuie upgradat.\n" +"Apasa OK pentru a incepe." + +msgid "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" + +msgid "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." +msgstr "" + +#, python-format +msgid "Your internet connection is working (ip: %s)" +msgstr "" + +msgid "Your network configuration has been activated." +msgstr "Configurarea retelei a fost activata." + +msgid "Your receiver does not have an internet connection" +msgstr "" + +msgid "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" +msgstr "" + +msgid "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." +msgstr "" + +msgid "Your receiver is rebooting" +msgstr "" + +msgid "Your receiver is shutting down" +msgstr "" + +msgid "Your receiver is shutting down. Please stand by..." +msgstr "" + +msgid "Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver." +msgstr "" + +msgid "Your receiver will got to stand by due to the sleeptimer." +msgstr "" + +msgid "Your receiver will got to standby due to inactivity." +msgstr "" + +msgid "Your receiver will restart after pressing OK on your remote control." +msgstr "" + +msgid "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." +msgstr "" + +msgid "Zap" +msgstr "" + +msgid "Zap back to previously tuned service?" +msgstr "" + +msgid "Zap back to service before positioner setup?" +msgstr "Treci inapoi la serviciul inainte de setarea pozitionerului?" + +msgid "Zap back to service before tuner setup?" +msgstr "" + +msgid "Zap focus to Picture in Picture" +msgstr "" + +msgid "Zap focus to main screen" +msgstr "" + +msgid "Zap mode" +msgstr "" + +msgid "Zap to selected channel" +msgstr "" + +msgid "Zap to selected channel, or show detailed event info (depends on configuration)" +msgstr "" + +msgid "[alternative edit]" +msgstr "[editare alternativa]" + +msgid "[bouquet edit]" +msgstr "[editare bouquet]" + +msgid "[favourite edit]" +msgstr "[editare favorite]" + +msgid "[move mode]" +msgstr "[mod mutare]" + +msgid "a gui to assign services/providers to common interface modules" +msgstr "un gui sa repartizeze servicii/provideri la modulele common interface" + +msgid "a gui to assign services/providers/caids to common interface modules" +msgstr "un gui sa repartizeze servicii/provideri/caid-uri la modulele common interface" + +msgid "abort alternatives edit" +msgstr "renunta la editarea alternativelor" + +msgid "abort bouquet edit" +msgstr "renunta la editarea bouquetelor" + +msgid "abort favourites edit" +msgstr "renunta la editarea favoritelor" + +msgid "about to start" +msgstr "in curs de incepere" + +msgid "activate network adapter configuration" +msgstr "" + +msgid "add alternatives" +msgstr "adauga alternative" + +msgid "add bookmark" +msgstr "adauga bookmark" + +msgid "add bouquet" +msgstr "adauga bouquet" + +msgid "add marker" +msgstr "adauga marker" + +msgid "add service to bouquet" +msgstr "adauga serviciu la bouquet" + +msgid "add service to favourites" +msgstr "adauga serviciu la favorite" + +msgid "add to parental protection" +msgstr "adauga la protectie parentala" + +msgid "adult movie/drama" +msgstr "" + +msgid "advanced" +msgstr "avansat" + +msgid "adventure/western/war" +msgstr "" + +msgid "advertisement/shopping" +msgstr "" + +msgid "after " +msgstr "" + +#, fuzzy +msgid "alphabetic" +msgstr "sortare alfabetica" + +msgid "alphabetic reverse" +msgstr "" + +msgid "alternative" +msgstr "" + +msgid "always" +msgstr "" + +msgid "and select next channel" +msgstr "" + +msgid "and select previous channel" +msgstr "" + +msgid "arts/culture (without music, general)" +msgstr "" + +msgid "arts/culture magazine" +msgstr "" + +msgid "athletics" +msgstr "" + +msgid "audio tracks" +msgstr "track-uri audio" + +msgid "auto" +msgstr "auto" + +#, fuzzy +msgid "automatic" +msgstr "Automat" + +msgid "back" +msgstr "inapoi" + +msgid "background image" +msgstr "imagine fundal" + +msgid "ballet" +msgstr "" + +#, python-format +msgid "bc%s" +msgstr "" + +msgid "better" +msgstr "mai bine" + +msgid "black" +msgstr "negru" + +msgid "black & white" +msgstr "" + +msgid "blacklist" +msgstr "lista neagra" + +msgid "blue" +msgstr "albastru" + +msgid "broadcasting/press" +msgstr "" + +#, fuzzy +msgid "by date" +msgstr "sorteaza dupa data" + +msgid "cartoon/puppets" +msgstr "" + +msgid "center" +msgstr "" + +msgid "centered" +msgstr "" + +msgid "centered, wrapped" +msgstr "" + +msgid "chapters" +msgstr "capitole" + +msgid "childrens's/youth program (general)" +msgstr "" + +msgid "circular left" +msgstr "circular stanga" + +msgid "circular right" +msgstr "circular dreapta" + +msgid "comedy" +msgstr "" + +msgid "complex" +msgstr "complex" + +msgid "config menu" +msgstr "meniu configurari" + +msgid "confirmed" +msgstr "confirmat" + +msgid "connected" +msgstr "conectat" + +msgid "continue" +msgstr "continua" + +msgid "cooking" +msgstr "" + +msgid "copy to bouquets" +msgstr "copiaza in bouquete" + +msgid "create directory" +msgstr "creaza director" + +#, python-format +msgid "currently installed image: %s" +msgstr "" + +msgid "daily" +msgstr "zilnic" + +msgid "day" +msgstr "ziua" + +msgid "default" +msgstr "" + +msgid "delete cut" +msgstr "sterge decupare" + +msgid "delete..." +msgstr "" + +msgid "descramble and record ecm" +msgstr "" + +msgid "detective/thriller" +msgstr "" + +msgid "disable" +msgstr "dezactiveaza" + +msgid "disable move mode" +msgstr "dezactiveaza mod mutare" + +msgid "disabled" +msgstr "dezactivat" + +msgid "disconnected" +msgstr "deconectat" + +msgid "discussion/interview/debate" +msgstr "" + +msgid "do nothing" +msgstr "nu face nimic" + +msgid "documentary" +msgstr "" + +msgid "don't descramble, record ecm" +msgstr "" + +msgid "done!" +msgstr "gata!" + +msgid "east" +msgstr "" + +msgid "economics/social advisory" +msgstr "" + +msgid "edit alternatives" +msgstr "editeaza alternative" + +msgid "education/science/factual topics (general)" +msgstr "" + +msgid "empty" +msgstr "gol" + +msgid "enable" +msgstr "activeaza" + +msgid "enable bouquet edit" +msgstr "activeaza editare bouquet" + +msgid "enable favourite edit" +msgstr "activeaza editare favorite" + +msgid "enable move mode" +msgstr "activeaza mod mutare" + +msgid "enabled" +msgstr "activat" + +msgid "end alternatives edit" +msgstr "sfarsit editare alternative" + +msgid "end bouquet edit" +msgstr "sfarsit editare bouquet" + +msgid "end cut here" +msgstr "sfarsit decupare aici" + +msgid "end favourites edit" +msgstr "sfarsit editare favorite" + +msgid "entertainment (10-16 year old)" +msgstr "" + +msgid "entertainment (6-14 year old)" +msgstr "" + +msgid "equal to" +msgstr "egal cu" + +msgid "equestrian" +msgstr "" + +msgid "exit DVD player or return to file browser" +msgstr "iesire DVD player sau inapoi la file browser" + +msgid "exit movielist" +msgstr "" + +msgid "exit network adapter configuration" +msgstr "iesire configurare retea" + +msgid "exit networkadapter setup menu" +msgstr "iesire meniu setari adaptor retea" + +msgid "experimental film/video" +msgstr "" + +msgid "false" +msgstr "" + +msgid "fashion" +msgstr "" + +msgid "fileformats (BMP, PNG, JPG, GIF)" +msgstr "file formaturi (BMP, PNG, JPG, GIF)" + +msgid "filename" +msgstr "filename" + +msgid "film/cinema" +msgstr "" + +msgid "fine arts" +msgstr "" + +msgid "fine-tune your display" +msgstr "reglati fin display-ul" + +msgid "fitness & health" +msgstr "" + +#, fuzzy +msgid "flat alphabetic" +msgstr "sortare alfabetica" + +#, fuzzy +msgid "flat alphabetic reverse" +msgstr "sortare alfabetica" + +msgid "folk/traditional music" +msgstr "" + +msgid "football/soccer" +msgstr "" + +msgid "foreign countries/expeditions" +msgstr "" + +msgid "forward to the next chapter" +msgstr "inainte la capitolul urmator" + +msgid "free" +msgstr "liber" + +msgid "from" +msgstr "" + +msgid "further education" +msgstr "" + +msgid "game show/quiz/contest" +msgstr "" + +msgid "gardening" +msgstr "" + +msgid "go to deep standby" +msgstr "treci la deep standby" + +msgid "go to standby" +msgstr "intra in standby" + +msgid "grab this frame as bitmap" +msgstr "capteaza imaginea ca bitmap" + +msgid "green" +msgstr "verde" + +msgid "handicraft" +msgstr "" + +msgid "height" +msgstr "" + +msgid "help..." +msgstr "ajutor..." + +msgid "horizontal" +msgstr "orizontal" + +msgid "information/education/school program" +msgstr "" + +msgid "init module" +msgstr "init modul" + +msgid "init modules" +msgstr "init module" + +msgid "insert mark here" +msgstr "introdu semn aici" + +msgid "invalid type" +msgstr "" + +msgid "jazz" +msgstr "" + +msgid "jump back to the previous title" +msgstr "inapoi la titlul anterior" + +msgid "jump forward to the next title" +msgstr "inainte la urmatorul titlu " + +msgid "languages" +msgstr "" + +msgid "leave movie player..." +msgstr "iesi din movie player" + +msgid "left" +msgstr "stanga" + +msgid "left, wrapped" +msgstr "" + +msgid "leisure hobbies (general)" +msgstr "" + +msgid "length" +msgstr "lungime" + +msgid "limit ..., aborting !" +msgstr "" + +msgid "list style compact" +msgstr "listeaza stilul compact" + +msgid "list style compact with description" +msgstr "listeaza stilul compact cu descriere" + +msgid "list style default" +msgstr "listeaza stilul default" + +msgid "list style single line" +msgstr "listeaza stilul cu linie singura" + +msgid "literature" +msgstr "" + +msgid "live broadcast" +msgstr "" + +msgid "locked" +msgstr "inchis" + +msgid "loopthrough to" +msgstr "treci la" + +msgid "magazines/reports/documentary" +msgstr "" + +msgid "manual" +msgstr "manual" + +msgid "martial sports" +msgstr "" + +msgid "medicine/physiology/psychology" +msgstr "" + +msgid "menu" +msgstr "meniu" + +msgid "mins" +msgstr "min" + +msgid "minutes" +msgstr "minute" + +msgid "month" +msgstr "luna" + +msgid "motor sport" +msgstr "" + +msgid "motoring" +msgstr "" + +msgid "move down to last entry" +msgstr "muta jos la ultima intrare" + +msgid "move down to next entry" +msgstr "muta jos la urmatoarea intrare" + +msgid "move up to first entry" +msgstr "muta sus la prima intrare" + +msgid "move up to previous entry" +msgstr "muta sus la anterioara intrare" + +msgid "movie/drama (general)" +msgstr "" + +msgid "multinorm" +msgstr "multinorma" + +msgid "music/ballet/dance (general)" +msgstr "" + +msgid "musical/opera" +msgstr "" + +msgid "nature/animals/environment" +msgstr "" + +msgid "never" +msgstr "niciodata" + +msgid "new media" +msgstr "" + +msgid "news magazine" +msgstr "" + +msgid "news/current affairs (general)" +msgstr "" + +msgid "news/weather report" +msgstr "" + +msgid "no" +msgstr "nu" + +msgid "no CAId selected" +msgstr "niciun CAID selectat" + +msgid "no CI slots found" +msgstr "niciun slot CI gasit" + +msgid "no module found" +msgstr "niciun modul gasit" + +msgid "no storage devices found" +msgstr "" + +msgid "none" +msgstr "nimic" + +msgid "normal" +msgstr "" + +msgid "not configured" +msgstr "" + +msgid "not locked" +msgstr "neinchis" + +msgid "not supported" +msgstr "" + +msgid "not used" +msgstr "nefolosit" + +msgid "nothing connected" +msgstr "nimic conectat" + +msgid "of a DUAL layer medium used." +msgstr "la un DUAL layer folosit mediu" + +msgid "of a SINGLE layer medium used." +msgstr "la un SINGLE layer folosit mediu" + +msgid "off" +msgstr "oprit" + +msgid "offset is" +msgstr "" + +msgid "on" +msgstr "pornit" + +msgid "on READ ONLY medium." +msgstr "la READ ONLY mediu" + +msgid "on end of movie" +msgstr "" + +msgid "once" +msgstr "odata" + +msgid "only from deep standby" +msgstr "" + +msgid "only from standby" +msgstr "" + +msgid "open EPG..." +msgstr "" + +msgid "open Info..." +msgstr "" + +msgid "open nameserver configuration" +msgstr "deschide configurarea nameserverului" + +msgid "original" +msgstr "" + +msgid "original language" +msgstr "" + +msgid "pass" +msgstr "pass" + +msgid "performing arts" +msgstr "" + +msgid "play as picture in picture" +msgstr "" + +msgid "play in mainwindow" +msgstr "" + +msgid "please press OK when ready" +msgstr "te rog apasa OK cand esti gata" + +msgid "please wait, loading picture..." +msgstr "te rog asteapta, se incarca imagine" + +msgid "popular culture/traditional arts" +msgstr "" + +msgid "pre-school children's program" +msgstr "" + +msgid "receiver software because updates are available." +msgstr "" + +msgid "record" +msgstr "inregistrare" + +msgid "recording..." +msgstr "se inregistreaza" + +msgid "red" +msgstr "rosu" + +msgid "religion" +msgstr "" + +msgid "remarkable people" +msgstr "" + +msgid "remove after this position" +msgstr "elimina dupa aceasta pozitie" + +msgid "remove all alternatives" +msgstr "elimina toate alternativele" + +msgid "remove all new found flags" +msgstr "elimina toate steagurile nou gasite" + +msgid "remove before this position" +msgstr "elimina inainte de aceasta pozitie" + +msgid "remove bookmark" +msgstr "elimina bookmark-ul" + +msgid "remove directory" +msgstr "elimina directorul" + +msgid "remove entry" +msgstr "elimina intrarea" + +msgid "remove from parental protection" +msgstr "elimina din protectie parentala" + +msgid "remove new found flag" +msgstr "elimina insemnul nou" + +msgid "remove selected satellite" +msgstr "elimina satelitul selectat" + +msgid "remove this mark" +msgstr "elimina aceasta marcare" + +msgid "rename entry" +msgstr "" + +msgid "repeat playlist" +msgstr "repeta playlist" + +msgid "repeated" +msgstr "repetat" + +msgid "reverse by date" +msgstr "" + +msgid "rewind to the previous chapter" +msgstr "deruleaza la capitolul anterior" + +msgid "right" +msgstr "dreapta" + +msgid "right, wrapped" +msgstr "" + +msgid "rock/pop" +msgstr "" + +msgid "romance" +msgstr "" + +msgid "save last directory on exit" +msgstr "salveaza ultimul director la iesire" + +msgid "save playlist on exit" +msgstr "salveaza playlist la iesire" + +msgid "scan state" +msgstr "starea scanarii" + +msgid "science fiction/fantasy/horror" +msgstr "" + +msgid "second cable of motorized LNB" +msgstr "cablul secund de la LNB motorizat" + +msgid "seconds" +msgstr "secunde" + +msgid "select" +msgstr "selectat" + +msgid "select CAId's" +msgstr "selecteaza CAId-uri" + +msgid "select EPG..." +msgstr "" + +msgid "select Info..." +msgstr "" + +msgid "select menu entry" +msgstr "selecteaza intrarea meniu" + +msgid "select movie" +msgstr "selecteaza film" + +msgid "select the movie path" +msgstr "" + +msgid "serious music/classic music" +msgstr "" + +msgid "serious/classical/religious/historical movie/drama" +msgstr "" + +msgid "service PIN" +msgstr "" + +msgid "set as startup service" +msgstr "" + +msgid "setup PIN" +msgstr "" + +msgid "show DVD main menu" +msgstr "arata meniul principal DVD" + +msgid "show all tags" +msgstr "" + +msgid "show alternatives" +msgstr "arata alternative" + +msgid "show event details" +msgstr "arata detaliile evenimentului" + +msgid "show extended description" +msgstr "" + +msgid "show mediaplayer on mainmenu" +msgstr "" + +msgid "show softwaremanager in setup menu" +msgstr "" + +msgid "show softwaremanager on blue button" +msgstr "" + +msgid "show tag menu" +msgstr "" + +msgid "show transponder info" +msgstr "arata info despre transponder" + +msgid "show/game show (general)" +msgstr "" + +msgid "shuffle" +msgstr "" + +msgid "shut down" +msgstr "" + +msgid "simple" +msgstr "simplu" + +msgid "skip backward" +msgstr "skin inapoi" + +msgid "skip forward" +msgstr "skin inainte" + +msgid "soap/melodram/folkloric" +msgstr "" + +msgid "social/political issues/economics (general)" +msgstr "" + +msgid "social/spiritual science" +msgstr "" + +msgid "sorting of playlists" +msgstr "" + +msgid "special characters" +msgstr "" + +msgid "special events" +msgstr "" + +msgid "special format data DVD (HDTV compatible)" +msgstr "" + +msgid "sports (general)" +msgstr "" + +msgid "sports magazine" +msgstr "" + +msgid "standard" +msgstr "standard" + +msgid "start cut here" +msgstr "incepe decupare aici" + +msgid "start directory" +msgstr "start director" + +msgid "stepsize" +msgstr "" + +msgid "stereo" +msgstr "stereo" + +msgid "stop using as startup service" +msgstr "" + +msgid "switch to bookmarks" +msgstr "mergi la bookmarks" + +msgid "switch to filelist" +msgstr "mergi la filelist" + +msgid "switch to the next angle" +msgstr "mergi la urmatorul unghi" + +msgid "switch to the next audio track" +msgstr "mergi la urmatorul track audio" + +msgid "switch to the next subtitle language" +msgstr "mergi la urmatoarea limba pentru subtitrari" + +msgid "talk show" +msgstr "" + +msgid "team sports" +msgstr "" + +msgid "technology/natural science" +msgstr "" + +msgid "template file" +msgstr "fisier template" + +msgid "tennis/squash" +msgstr "" + +msgid "this recording" +msgstr "aceasta inregistrare" + +msgid "this service is protected by a parental control pin" +msgstr "acest serviciu este protejat de pin pentru control parental" + +msgid "toggle time, chapter, audio, subtitle info" +msgstr "schimba ceas, capitol, audio, info sutitrari" + +msgid "top" +msgstr "" + +msgid "tourism/travel" +msgstr "" + +msgid "true" +msgstr "" + +msgid "unavailable" +msgstr "" + +msgid "unconfirmed" +msgstr "neconfirmat" + +msgid "undefined" +msgstr "" + +msgid "unknown" +msgstr "necunoscut" + +msgid "unknown service" +msgstr "serviciu necunoscut" + +msgid "unpublished" +msgstr "" + +msgid "until standby/restart" +msgstr "" + +msgid "user defined" +msgstr "user definit" + +msgid "variety show" +msgstr "" + +msgid "vertical" +msgstr "vertical" + +msgid "wait for ci..." +msgstr "asteapta ci..." + +msgid "wait for mmi..." +msgstr "asteapta mmi..." + +msgid "waiting" +msgstr "in asteptare" + +msgid "water sport" +msgstr "" + +msgid "weekly" +msgstr "saptamanal" + +msgid "west" +msgstr "" + +msgid "when PiPzap enabled zap channel down..." +msgstr "" + +msgid "when PiPzap enabled zap channel up..." +msgstr "" + +msgid "white" +msgstr "" + +msgid "whitelist" +msgstr "lista alba" + +msgid "width" +msgstr "" + +msgid "winter sport" +msgstr "" + +msgid "wireless network interface" +msgstr "" + +#, python-format +msgid "with %d error" +msgid_plural "with %d errors" +msgstr[0] "" +msgstr[1] "" + +msgid "working" +msgstr "lucreaza" + +msgid "yellow" +msgstr "galben" + +msgid "yes" +msgstr "da" + +msgid "yes (keep feeds)" +msgstr "da (pastreaza feed-uri)" + +msgid "zap" +msgstr "zap" + +msgid "zap and record" +msgstr "" + +msgid "zapped" +msgstr "zapped" + +#, fuzzy +#~ msgid "Activate PiP" +#~ msgstr "Activeaza PIP" + +#, fuzzy +#~ msgid "Add/remove timer for current event" +#~ msgstr "adauga inregistrare (opreste dupa evenimentul curent)" + +#, fuzzy +#~ msgid "All satellites" +#~ msgstr "Toti Sateliti" + +#~ msgid "BA" +#~ msgstr "BA" + +#~ msgid "BB" +#~ msgstr "BB" + +#~ msgid "Behavior of 'pause' when paused" +#~ msgstr "Efectul butonului 'pauza' cand e pe pauza" + +#~ msgid "Committed DiSEqC command" +#~ msgstr "Comanda DiSEqC-ului selectat" + +#~ msgid "DiSEqC repeats" +#~ msgstr "DiSEqC in cascada" + +#~ msgid "No satellite frontend found!!" +#~ msgstr "Nu a fost gasit niciun satelit!" + +#~ msgid "Remove timer" +#~ msgstr "Eliminare timer" + +#~ msgid "Send DiSEqC" +#~ msgstr "Trimite DiSEqC" + +#, fuzzy +#~ msgid "Switch next channel" +#~ msgstr "canalul urmator" + +#~ msgid "Uncommitted DiSEqC command" +#~ msgstr "Uncommitted DiSEqC command" + +#~ msgid "Zap back to service before satfinder?" +#~ msgstr "Treci inapoi la serviciul inainte de satfinder?" diff --git a/po/ru.po b/po/ru.po new file mode 100644 index 0000000..5a93b35 --- /dev/null +++ b/po/ru.po @@ -0,0 +1,8111 @@ +msgid "" +msgstr "" +"Project-Id-Version: enigma2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-07-21 19:08+0200\n" +"PO-Revision-Date: 2013-10-05 09:57+0200\n" +"Last-Translator: Dima73 <Dima-73@inbox.lv>\n" +"Language-Team: Dima73 <Dima-73@inbox.lv>\n" +"Language: ru\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"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" +"X-Generator: Poedit 1.5.5\n" +"X-Poedit-SourceCharset: iso-8859-5\n" + +msgid "" +"\n" +"Advanced options and settings." +msgstr "" +"\n" +"Дополнительные параметры и настройки." + +msgid "" +"\n" +"After pressing OK, please wait!" +msgstr "" +"\n" +"После нажатия кнопки ОК, пожалуйста подождите!" + +msgid "" +"\n" +"Backup your receiver settings." +msgstr "" +"\n" +"Бэкап настроек вашего ресивера." + +msgid "" +"\n" +"Edit the upgrade source address." +msgstr "" +"\n" +"Редактировать адрес источника обновления." + +msgid "" +"\n" +"Manage extensions or plugins for your receiver" +msgstr "" +"\n" +"Управление дополнениями и плагинами вашего ресивера" + +msgid "" +"\n" +"Online update of your receiver software." +msgstr "" +"\n" +"Онлайн обновление софта вашего ресивера." + +msgid "" +"\n" +"Press OK on your remote control to continue." +msgstr "" +"\n" +"Нажмите ОК на пульте для продолжения." + +msgid "" +"\n" +"Restore your backups by date." +msgstr "" +"\n" +"Восстановить резервные копии по дате." + +msgid "" +"\n" +"Restore your receiver settings." +msgstr "" +"\n" +"Восстановить настройки вашего ресивера." + +msgid "" +"\n" +"Restore your receiver with a new firmware." +msgstr "" +"\n" +"Восстановить ваш ресивер с новой прошивкой." + +msgid "" +"\n" +"Scan for local extensions and install them." +msgstr "" +"\n" +"Сканирование и установка локальных дополнений." + +msgid "" +"\n" +"Select your backup device.\n" +"Current device: " +msgstr "" +"\n" +"Выберите устройство для резервного копирования.\n" +"Текущее устройство: " + +msgid "" +"\n" +"View, install and remove available or installed packages." +msgstr "" +"\n" +"Просмотр, установка и удаление доступных или установленных пакетов." + +msgid " (PiP)" +msgstr " (PiP)" + +msgid " (Radio)" +msgstr " (Радио)" + +msgid " (TV)" +msgstr " (ТВ)" + +msgid " (disabled)" +msgstr "" + +msgid " (higher than any auto)" +msgstr "" + +msgid " (higher than rotor any auto)" +msgstr "" + +msgid " (lower than any auto)" +msgstr "" + +msgid " extensions." +msgstr " дополнений." + +msgid " ms" +msgstr " мс" + +msgid " packages selected." +msgstr " пакетов выбрано." + +msgid " updates available." +msgstr " доступных обновлений." + +#. TRANSLATORS: short time representation hour:minute +#, python-format +msgid "%2d:%02d" +msgstr "%2d:%02d" + +#. TRANSLATORS: full time representation hour:minute:seconds +#, python-format +msgid "%2d:%02d:%02d" +msgstr "%2d:%02d:%02d" + +msgid "%A %d %B" +msgstr "%A %d %B" + +#. TRANSLATORS: long date representations dayname daynum monthname in strftime() format! See 'man strftime' +msgid "%A %e %B" +msgstr "%A %d %B" + +#. TRANSLATORS: full date representation dayname daynum monthname year in strftime() format! See 'man strftime' +msgid "%A %e %B %Y" +msgstr "%A %e %B %Y" + +msgid "%H:%M" +msgstr "%H:%M" + +#. TRANSLATORS: short date representation short dayname daynum short monthname in strftime() format! See 'man strftime' +msgid "%a %e/%m" +msgstr "%a %e/%m" + +#. TRANSLATORS: long date representation short dayname daynum short monthname hour:minute in strftime() format! See 'man strftime' +msgid "%a %e/%m %-H:%M" +msgstr "%a %e/%m %-H:%M" + +#. TRANSLATORS: Intermediate scanning result, '%d' channel(s) have been found so far +#, python-format +msgid "%d channel found" +msgid_plural "%d channels found" +msgstr[0] "%d канал найден" +msgstr[1] "%d канала найдено" +msgstr[2] "%d каналов найдено" + +#, python-format +msgid "%d file" +msgid_plural "%d files" +msgstr[0] "%d файл" +msgstr[1] "%d файла" +msgstr[2] "%d файлов" + +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d час" +msgstr[1] "%d часа" +msgstr[2] "%d часов" + +#, python-format +msgid "%d job is running in the background!" +msgid_plural "%d jobs are running in the background!" +msgstr[0] "%d процесс запущен в фоновом режиме!" +msgstr[1] "%d процесса запущено в фоновом режиме!" +msgstr[2] "%d процессов запущено в фоновом режиме!" + +#, python-format +msgid "%d min" +msgstr "%d мин" + +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d минута" +msgstr[1] "%d минуты" +msgstr[2] "%d минут" + +#, python-format +msgid "%d minutes" +msgstr "%d минут" + +#, python-format +msgid "%d pixel wide" +msgid_plural "%d pixels wide" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "%d секунда" +msgstr[1] "%d секунды" +msgstr[2] "%d секунд" + +#, python-format +msgid "%d subdirectory" +msgid_plural "%d subdirectories" +msgstr[0] "%d директория" +msgstr[1] "%d директории" +msgstr[2] "%d директорий" + +#, python-format +msgid "%d wireless network found!" +msgid_plural "%d wireless networks found!" +msgstr[0] "%d беспроводная сеть найдена!" +msgstr[1] "%d беспроводные сети найдены!" +msgstr[2] "%d беспроводных сетей найдено!" + +msgid "%d-%b-%Y %-H:%M" +msgstr "%d-%b-%Y %-H:%M" + +msgid "%d-%m" +msgstr "%d-%m" + +msgid "%d.%B %Y" +msgstr "%d.%B %Y" + +#. TRANSLATORS: VFD hour:minute daynum short monthname in strftime() format! See 'man strftime' +msgid "%k:%M %e/%m" +msgstr "%k:%M %e/%m" + +#, python-format +msgid "%s %s free disk space" +msgstr "%s %s свободное место на диске" + +#, python-format +msgid "%s (%s)\n" +msgstr "%s (%s)\n" + +#. TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. +#, python-format +msgid "%s is no longer used. Should it be deleted?" +msgstr "%s больше не используется. Должен ли он быть удален?" + +#, python-format +msgid "%s updated package available" +msgid_plural "%s updated packages available" +msgstr[0] "%s обновленный пакет доступен" +msgstr[1] "%s обновленных пакета доступно" +msgstr[2] "%s обновленных пакетов доступно" + +#, python-format +msgid "%s%d min" +msgstr "%s%d мин" + +#, python-format +msgid "%s/%s: %s" +msgstr "%s/%s: %s" + +msgid "(ZAP)" +msgstr "(Перейти)" + +msgid "(empty)" +msgstr "(пусто)" + +msgid "(show optional DVD audio menu)" +msgstr "(показать опцион. DVD аудио меню)" + +msgid "* Only available if more than one interface is active." +msgstr "* Доступно если активно более одного интерфейса." + +msgid "/s" +msgstr "/с" + +msgid "0" +msgstr "0" + +msgid "1" +msgstr "1" + +msgid "1.0" +msgstr "1.0" + +msgid "1.1" +msgstr "1.1" + +msgid "1.2" +msgstr "1.2" + +msgid "12V output" +msgstr "12V выход" + +msgid "13 V" +msgstr "13 V" + +msgid "16:10" +msgstr "16:10" + +msgid "16:10 Letterbox" +msgstr "16:10 Letterbox" + +msgid "16:10 PanScan" +msgstr "16:10 PanScan" + +msgid "16:9" +msgstr "16:9" + +msgid "16:9 Letterbox" +msgstr "16:9 Letterbox" + +msgid "16:9 always" +msgstr "16:9 всегда" + +msgid "18 V" +msgstr "18 V" + +msgid "2" +msgstr "2" + +msgid "23.976" +msgstr "" + +msgid "24" +msgstr "" + +msgid "25" +msgstr "" + +msgid "29.97" +msgstr "" + +msgid "3" +msgstr "3" + +msgid "30" +msgstr "" + +msgid "3d mode" +msgstr "Режим 3D" + +msgid "4" +msgstr "4" + +msgid "4:3" +msgstr "4:3" + +msgid "4:3 Letterbox" +msgstr "4:3 Letterbox" + +msgid "4:3 PanScan" +msgstr "4:3 PanScan" + +msgid "5" +msgstr "5" + +msgid "6" +msgstr "6" + +msgid "7" +msgstr "7" + +msgid "8" +msgstr "8" + +msgid "9" +msgstr "9" + +#, python-format +msgid ": %s" +msgstr "" + +msgid "<Current movielist location>" +msgstr "<Текущее место списка видео>" + +msgid "<Default movie location>" +msgstr "<Место видео по дефолту>" + +msgid "<Last timer location>" +msgstr "<Место последнего таймера>" + +msgid "<unknown>" +msgstr "<неизвестный>" + +msgid "??" +msgstr "??" + +msgid "A" +msgstr "A" + +#, python-format +msgid "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" +msgstr "" +"Конфигурационный файл (%s) был изменен в процессе установки.\n" +"Сохранить вашу модификацию?" + +#, python-format +msgid "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" +msgstr "" +"Конфигурационный файл (%s) был изменен в процессе установки.\n" +"Сохранить вашу версию?" + +msgid "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"Запись по таймеру завершена, ресивер будет переведен в режим ожидания.\n" +"Сделать это сейчас?" + +msgid "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"Запись по таймеру закончена, ваш ресивер будет выключен.\n" +"Выключить сейчас?" + +msgid "A graphical EPG for all services of an specific bouquet" +msgstr "Графический EPG для всех сервисов в выбранных фаворитах" + +#, python-format +msgid "" +"A record has been started:\n" +"%s" +msgstr "" +"Запись была начата:\n" +"%s" + +msgid "" +"A recording is currently running.\n" +"What do you want to do?" +msgstr "" +"В текущее время идет запись.\n" +"Что вы хотите сделать?" + +msgid "A recording is currently running. Please stop the recording before trying to configure the positioner." +msgstr "В текущее время идет запись. Пожалуйста остановите запись перед попыткой настроить позиционер." + +msgid "A recording is currently running. Please stop the recording before trying to scan." +msgstr "В текущее время идет запись.Пожалуйста, остановите запись, прежде чем попытаться сканировать." + +msgid "A recording is currently running. Please stop the recording before trying to start the satfinder." +msgstr "В текущее время идет запись. Остановите запись перед поиском спутника." + +#, python-format +msgid "A required tool (%s) was not found." +msgstr "Нужный инструмент (%s), не найден." + +msgid "A search for available updates is currently in progress." +msgstr "Поиск доступных обновлений. Пожалуйста, подождите ..." + +msgid "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" +msgstr "" +"Второй настроенный интерфейс был найден.\n" +"\n" +"Вы хотите отключить второй сетевой интерфейс?" + +msgid "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"Таймер сна хочет перевести ваш\n" +"ресивер в режим ожидания. Сделать это сейчас?" + +msgid "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"Таймер сна хочет выключить\n" +"ваш ресивер. Выключить сейчас?" + +msgid "A small overview of the available icon states and actions." +msgstr "Небольшой обзор доступных состояний иконок и действий." + +msgid "" +"A timer failed to record!\n" +"Disable TV and try again?\n" +msgstr "" +"Таймер не может начать запись!\n" +"Отключить текущий сервис и попробовать еще раз?\n" + +msgid "A/V settings" +msgstr "Аудио/Видео настройки" + +msgid "AC3/DTS downmix" +msgstr "AC3/DTS микширование" + +msgid "Abort" +msgstr "Прервать" + +msgid "About" +msgstr "Информация" + +msgid "About..." +msgstr "Информация..." + +msgid "Accesspoint:" +msgstr "Точка доступа:" + +msgid "Action on long powerbutton press" +msgstr "Длительное нажатие кнопки питания" + +msgid "Action on short powerbutton press" +msgstr "Короткое нажатие кнопки питания" + +msgid "Activate Picture in Picture" +msgstr "Включить картинку в картинке" + +msgid "Activate current configuration" +msgstr "Активировать текущие настройки" + +msgid "Activate network settings" +msgstr "Активировать сетевые установки" + +msgid "Activate the configured network settings." +msgstr "Активировать выбранные настройки сети." + +msgid "Adapter settings" +msgstr "Настройка адаптера" + +msgid "Add" +msgstr "Добавить" + +msgid "Add Bookmark" +msgstr "Добавить закладку" + +msgid "Add a mark" +msgstr "Добавить метку" + +msgid "Add a nameserver entry" +msgstr "Добавить DNS сервер" + +msgid "Add a new title" +msgstr "Добавить новое название" + +msgid "Add bookmark" +msgstr "добавить закладку" + +msgid "Add directory to playlist" +msgstr "добавить папку к списку воспроизведения" + +msgid "Add file to playlist" +msgstr "добавить файл к списку воспроизведения" + +msgid "Add files to playlist" +msgstr "добавить файлы в плейлист" + +msgid "Add more details to the crash log" +msgstr "Добавить подробности в крэш-лог" + +msgid "Add provider" +msgstr "Добавить провайдера" + +msgid "Add recording (enter recording duration)" +msgstr "Начать запись (введите длительность записи)" + +msgid "Add recording (enter recording endtime)" +msgstr "Начать запись (введите время окончания)" + +msgid "Add recording (indefinitely)" +msgstr "Начать запись (окончание неопределено)" + +msgid "Add recording (stop after current event)" +msgstr "Начать запись (стоп после текущего события)" + +msgid "Add service" +msgstr "Добавить сервис" + +msgid "Add timer" +msgstr "Добавить таймер" + +msgid "Add title" +msgstr "Добавить название" + +msgid "Add to bouquet" +msgstr "Добавить в пакет" + +msgid "Add to favourites" +msgstr "Добавить в фавориты" + +msgid "Add/remove change timer for current event" +msgstr "" + +msgid "Adjust 3D settings" +msgstr "Выставите настройки 3D" + +msgid "Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens." +msgstr "Настройте параметры цвета, так чтобы все оттенки цветов были максимально видны, насколько это возможно. Если вы довольны результатом, нажмите кнопку ОК для закрытия видео настроек, или используйте цифровые клавиши для выбора других тестов экрана " + +msgid "Advanced" +msgstr "" + +msgid "Advanced options" +msgstr "Расширенные опции" + +msgid "Advanced restore" +msgstr "Расширенное восстановление" + +msgid "Advanced software" +msgstr "Расширенное восстановление" + +msgid "Advanced software plugin" +msgstr "Расширенный плагин софта" + +msgid "Advanced video enhancement setup" +msgstr "Меню дополнительных видео настроек" + +msgid "Advanced video setup" +msgstr "Расширенная настройка видео" + +msgid "After event" +msgstr "После события" + +msgid "Album" +msgstr "Альбом" + +msgid "Alignment of events" +msgstr "Выравнивание событий" + +msgid "Alignment of service names" +msgstr "Выравнивание имени сервиса" + +msgid "All" +msgstr "Все" + +msgid "All ages" +msgstr "Все категории" + +msgid "All satellites 1 (USALS)" +msgstr "" + +msgid "All satellites 2 (USALS)" +msgstr "" + +msgid "All satellites 3 (USALS)" +msgstr "" + +msgid "All satellites 4 (USALS)" +msgstr "" + +msgid "Allocate" +msgstr "Выделить" + +msgid "Allocate unused memory index" +msgstr "Выделить неиспользуемый номер памяти" + +msgid "Allow quit movieplayer with exit" +msgstr "Разрешить выйти из видеоплеера кнопкой выход" + +msgid "Allow subtitle language to equal audio language" +msgstr "Показывать субтитры при совпадении с языком аудио" + +msgid "Allow subtitles for hearing impaired" +msgstr "Субтитры для людей с ослабленным слухом" + +msgid "Alpha" +msgstr "Прозрачность" + +msgid "Alternative" +msgstr "Альтернативный ДНС" + +msgid "Alternative numbering mode" +msgstr "Альтернативный режим нумерации каналов" + +msgid "Alternative services tuner priority" +msgstr "Приоритет тюнера в альтернативных сервисах" + +msgid "Always ask" +msgstr "Всегда спрашивать" + +msgid "Always hide infobar" +msgstr "" + +msgid "An empty filename is illegal." +msgstr "Пустое имя недопустимо." + +msgid "An error occurred while downloading the packetlist. Please try again." +msgstr "Ошибка загрузки списка пакетов. Пожалуйста, попробуйте еще раз." + +msgid "An unknown error occurred!" +msgstr "Неизвестная ошибка!" + +msgid "And will put your receiver in standby over " +msgstr "И переведет ваш ресивер в режим ожидания через " + +msgid "Any activity" +msgstr "Любая активность" + +msgid "Arabic" +msgstr "Арабский" + +msgid "Are you sure to remove this entry?" +msgstr "" + +msgid "" +"Are you sure you want to activate this network configuration?\n" +"\n" +msgstr "" +"Вы уверены, что хотите активировать эту конфигурацию сети?\n" +"\n" + +msgid "" +"Are you sure you want to delete\n" +"the following backup:\n" +msgstr "" +"Вы уверены, что хотите удалить\n" +"следующий бекап:\n" + +msgid "Are you sure you want to exit this wizard?" +msgstr "Вы уверены, что хотите выйти из этого мастера?" + +msgid "" +"Are you sure you want to restart your network interfaces?\n" +"\n" +msgstr "" +"Вы уверены, что хотите перезагрузить сетевые интерфейсы?\n" +"\n" + +#, python-format +msgid "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Вы уверены, что хотите восстановить этот бэкап:\n" +"%s\n" +"Ваш ресивер будет перезагружен после восстановления!" + +msgid "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Вы уверены, что хотите восстановить бэкап?\n" +"Ваш ресивер будет перезагружен после восстановления!" + +msgid "Artist" +msgstr "Артист" + +msgid "Arts/Culture" +msgstr "Искусство/Культура" + +msgid "Ask user" +msgstr "Спросить пользователя" + +msgid "Aspect ratio" +msgstr "Соотношение сторон" + +msgid "Assigned CAIds:" +msgstr "Назначены CAID:" + +msgid "Assigned services/provider:" +msgstr "Назначены каналы/провайдеры:" + +msgid "At beginning" +msgstr "в начале" + +msgid "At end" +msgstr "в конце" + +msgid "Audio" +msgstr "Аудио" + +msgid "Audio PID" +msgstr "Аудио PID" + +msgid "Audio language selection 1" +msgstr "Выбор языка аудио 1" + +msgid "Audio language selection 2" +msgstr "Выбор языка аудио 2" + +msgid "Audio language selection 3" +msgstr "Выбор языка аудио 3" + +msgid "Audio language selection 4" +msgstr "Выбор языка аудио 4" + +msgid "Audio options..." +msgstr "Настройки аудио..." + +#, python-format +msgid "Audio track (%s) format" +msgstr "Звуковая дорожка (%s) формат" + +#, python-format +msgid "Audio track (%s) language" +msgstr "звуковая дорожка (%s) язык" + +msgid "Author: " +msgstr "Автор: " + +msgid "Authoring mode" +msgstr "Режим авторизации" + +#. TRANSLATORS: (aspect ratio policy: always try to display as fullscreen, when there is no content (black bars) on left/right, even if this breaks the aspect. +msgid "Auto" +msgstr "Авто" + +msgid "Auto chapter split every ? minutes (0=never)" +msgstr "Автоматически разделять на главы каждые ? минут (0 =никогда)" + +msgid "Auto flesh" +msgstr "Авто flesh" + +msgid "Auto focus" +msgstr "Автофокусировка" + +msgid "Auto focus commencing ..." +msgstr "Автофокусировка началась ..." + +msgid "Auto language selection" +msgstr "Авто выбор языка" + +msgid "Auto scart switching" +msgstr "Автоматическое переключение SCART" + +msgid "Automatic" +msgstr "Автоматически" + +msgid "Automatic scan" +msgstr "Автоматический поиск" + +msgid "Automatically start timeshift after" +msgstr "Автоматический старт таймшифта через" + +msgid "Automatically turn on external subtitles" +msgstr "Автоматическое включение внешних субтитров" + +msgid "Available format variables" +msgstr "Доступные форматы переменных" + +msgid "B" +msgstr "B" + +msgid "BER" +msgstr "BER" + +msgid "BER:" +msgstr "BER:" + +msgid "Back" +msgstr "Назад" + +msgid "Background" +msgstr "Фон" + +msgid "Background color" +msgstr "Цвет фона" + +msgid "Background delete option" +msgstr "Удаление в фоновом режиме" + +msgid "Background delete speed" +msgstr "Скорость удаления в фоновом режиме" + +msgid "Backup completed." +msgstr "Бекап завершен." + +msgid "Backup failed." +msgstr "Сохранение не удалось." + +msgid "Backup is running..." +msgstr "Выполняется сохранение настроек..." + +msgid "Backup system settings" +msgstr "Бэкап системных настроек" + +msgid "Band" +msgstr "Диапазон" + +msgid "Bandwidth" +msgstr "Пропускная способность" + +msgid "Basque" +msgstr "Баскский" + +msgid "Begin time" +msgstr "Время начала" + +msgid "Behavior of 'pause and ok' when paused" +msgstr "" + +msgid "Behavior of 0 key in PiP-mode" +msgstr "Поведение кнопки 0 в режиме PiP" + +msgid "Behavior when a movie is started" +msgstr "Поведение при начале воспр. видео" + +msgid "Behavior when a movie is stopped" +msgstr "Поведение при остановке воспр. видео" + +msgid "Behavior when a movie reaches the end" +msgstr "Поведение при окончании видео" + +msgid "Big PiP" +msgstr "" + +msgid "Bitrate:" +msgstr "Битрейт:" + +msgid "Black screen" +msgstr "Черный экран" + +msgid "Black screen till locked" +msgstr "Черный экран-заблокировано" + +msgid "Block noise reduction" +msgstr "Понижение блочных шумов" + +msgid "Blue boost" +msgstr "Добавить синий" + +msgid "Bookmarks" +msgstr "Закладки" + +msgid "Brightness" +msgstr "Яркость" + +msgid "Bulgarian" +msgstr "Венгерский" + +msgid "Burn DVD" +msgstr "Прожечь DVD" + +#, python-format +msgid "Burn audio track (%s)" +msgstr "прожечь аудио дорожку (%s)" + +msgid "Burn existing image to DVD" +msgstr "Прожечь существующий образ на DVD" + +msgid "Burn to DVD" +msgstr "Прожечь на DVD" + +msgid "Bus: " +msgstr "Шина:" + +msgid "By default, SNR will be shown in dB (when supported by the tuner). This setting forces SNR to be shown as a percentage instead." +msgstr "По умолчанию, SNR показывается в дБ (если поддерживает тюнер). При включении параметра SNR будет показываться в процентах." + +msgid "C" +msgstr "С" + +msgid "C-Band" +msgstr "C-Диапазон" + +msgid "CH" +msgstr "" + +msgid "CI assignment" +msgstr "Назначение CI" + +msgid "CVBS" +msgstr "CVBS" + +msgid "Cable" +msgstr "Кабельное тв" + +msgid "Cable Scan" +msgstr "Кабельное сканирование" + +msgid "Cache thumbnails" +msgstr "Кешировать Эскизы" + +msgid "Calculate" +msgstr "Расчет" + +msgid "Calculate all positions" +msgstr "Рассчитать все позиции" + +msgid "Calculation complete" +msgstr "Расчет окончен" + +msgid "Calibrate" +msgstr "Калибровка" + +msgid "Can be used for different fps between external subtitles and video." +msgstr "Может быть использован для набора кадров в секунду между внешними субтитрами и видео." + +msgid "Cancel" +msgstr "Отмена" + +msgid "Cannot determine" +msgstr "Невозможно определить" + +msgid "Cannot find any signal ..., aborting !" +msgstr "Не могу найти любой сигнал ...,прерываем !" + +msgid "Cannot move files on a different disk or system to the trash can" +msgstr "Невозможно переместить файлы на различных дисках или в системе в корзину" + +msgid "Cannot move to trash can" +msgstr "Невозможно переместить в корзину" + +msgid "Capacity: " +msgstr "Емкость: " + +msgid "Card" +msgstr "Карта" + +msgid "Cascade PiP" +msgstr "" + +msgid "Center DVB subtitles" +msgstr "Субтитры DVB по центру" + +msgid "Center time-labels and remove date" +msgstr "Отметка времени по центру без даты" + +msgid "Change bouquets in quickzap" +msgstr "Сменить букеты при быстром переключении" + +msgid "Change pin code" +msgstr "Сменить PIN-код" + +msgid "Change recording (duration)" +msgstr "Изменить запись (продолжительность)" + +msgid "Change recording (endtime)" +msgstr "Изменить запись (окончание)" + +msgid "Change repeat and delay settings?" +msgstr "Изменить настройки задержки и повтора?" + +msgid "Change service PIN" +msgstr "Изменить PIN-код сервиса" + +msgid "Change service PINs" +msgstr "Изменить PIN-коды сервисов" + +msgid "Change setup PIN" +msgstr "Изменить PIN-код настроек" + +msgid "Change step size" +msgstr "Изменение размера шага" + +msgid "Change timer" +msgstr "" + +msgid "Changelog" +msgstr "лог изменений" + +msgid "Channel" +msgstr "Канал" + +msgid "Channel list type" +msgstr "Тип списка каналов" + +msgid "Channel not in services list" +msgstr "Канала нет в списке сервисов" + +msgid "Channel selection" +msgstr "Селектор каналов" + +msgid "Channel:" +msgstr "Канал:" + +msgid "Channellist menu" +msgstr "Меню списка каналов" + +msgid "Chap." +msgstr "Глава." + +msgid "Chapter" +msgstr "Раздел" + +msgid "Chapter:" +msgstr "Раздел:" + +msgid "Check" +msgstr "Проверка" + +msgid "Check the internet connection" +msgstr "Проверьте интернет-соединение" + +msgid "Check the internet connection again" +msgstr "Проверьте интернет-соединение снова" + +msgid "Checking filesystem..." +msgstr "проверка Файловой система..." + +msgid "Checking the internet connection" +msgstr "Проверка интернет соединения" + +#, python-format +msgid "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" +msgstr "" +"Проверка тюнера %d\n" +"DiSEqC порт %s для %s" + +msgid "Children/Youth" +msgstr "Дети/Молодежь" + +msgid "Choose which tuner to configure." +msgstr "Выберите тюнер для настройки." + +msgid "Circular left" +msgstr "Круговая левая" + +msgid "Circular right" +msgstr "Круговая правая" + +msgid "Cleanup" +msgstr "Очистить" + +msgid "Clear" +msgstr "Очистка" + +msgid "Clear before scan" +msgstr "Очистка перед сканированием" + +msgid "Clear fixed" +msgstr "Очистка Фиксированного" + +msgid "Clear log" +msgstr "Очистить лог" + +msgid "Clear playlist" +msgstr "очистить список воспроизведения" + +msgid "Close" +msgstr "Закрыть" + +msgid "Close PiP on exit" +msgstr "Закрыть PiP кнопкой выход" + +msgid "Close title selection" +msgstr "Закрыть выбор названий" + +msgid "Code rate HP" +msgstr "Скорость кодирования HP" + +msgid "Code rate LP" +msgstr "Скорость кодирования LP" + +msgid "Coderate HP" +msgstr "Скорость кодирования HP" + +msgid "Coderate LP" +msgstr "Скорость кодирования LP" + +msgid "Collection name" +msgstr "Название коллекции" + +msgid "Collection settings" +msgstr "Настройки коллекции" + +msgid "Color format" +msgstr "Формат цвета" + +msgid "Command execution..." +msgstr "Выполнение команды..." + +msgid "Command order" +msgstr "Последовательность команд" + +msgid "Common Interface" +msgstr "Интерфейс модулей" + +msgid "Common Interface assignment" +msgstr "Интерфейс настроек модулей" + +msgid "Communication" +msgstr "Связь" + +msgid "Compact flash" +msgstr "Компакт-флэш" + +msgid "Complete" +msgstr "Полное" + +msgid "Complex (allows mixing audio tracks and aspects)" +msgstr "Комплекс (микширование звуковых дорожек и разрешения видео)" + +msgid "Composition of the recording filenames" +msgstr "Содержание названий файлов записей" + +msgid "Configuration mode" +msgstr "Режим конфигурации" + +#, python-format +msgid "Configuration mode: %s" +msgstr "Режим конфигурации: %s" + +msgid "Configuration..." +msgstr "Конфигурация..." + +msgid "Configure an additional delay to improve external subtitle synchronisation." +msgstr "Настройка дополнительной задержки для улучшения синхронизации внешних субтитров." + +msgid "Configure an additional delay to improve subtitle synchronisation." +msgstr "Настройка дополнительной задержки для улучшения синхронизации субтитров." + +msgid "Configure for how long the infobar will remain visible after activation." +msgstr "Укажите, как долго инфобар будет оставаться видимым после его активации." + +msgid "Configure for how many minutes finished events should remain visible in the EPG. Useful when you need information about an event which has just finished, or has been delayed." +msgstr "Позволяет показать данные EPG о прошедших событиях. Удобно когда хотите знать что-то о передаче, которая вот-вот закончится либо только что закончилась (в минутах)." + +msgid "Configure how recording filenames are constructed." +msgstr "Настройка способа составления имен записываемых файлов." + +msgid "Configure how the fan should operate" +msgstr "" + +msgid "Configure if and how crypto icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how long the latest service in the PiP will be remembered." +msgstr "" + +msgid "Configure if and how service type icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how wide columns will be shown in the channel selection list." +msgstr "" + +msgid "Configure if service picons will be shown in the channel selection list." +msgstr "" + +msgid "Configure interface" +msgstr "Настройка интерфейса" + +msgid "Configure nameservers" +msgstr "Настройка DNS" + +msgid "Configure on which devices the background delete option should be used." +msgstr "Укажите, на каких устройствах следует использовать опцию фонового удаления." + +msgid "Configure remote control type" +msgstr "Выбор пульта Д/У" + +msgid "Configure the DiSEqC mode for this LNB." +msgstr "Настройте режим DiSEqC для этой LNB." + +msgid "Configure the IP address." +msgstr "Настройка IP-адреса." + +msgid "Configure the aspect ratio of the screen." +msgstr "Настройка соотношения сторон экрана." + +msgid "Configure the behavior of the 'pause and ok' key when movie playback is already paused." +msgstr "" + +msgid "Configure the behavior when movie playback is manually stopped." +msgstr "Укажите, что делать когда воспроизведение остановлено вручную." + +msgid "Configure the behavior when movie playback is started." +msgstr "Укажите, что делать при начале воспроизведения." + +msgid "Configure the behavior when reaching the end of a movie, during movie playback." +msgstr "Укажите, что делать при окончании воспроизведения." + +msgid "Configure the border width of the subtitles. The dark border makes the subtitles easier to read on a light background." +msgstr "Настройте ширину границы субтитров. Темная грань делает субтитры легко читаемыми на светлом фоне." + +msgid "Configure the brightness level of the front panel display during standby." +msgstr "Установите уровень яркости дисплея в режиме ожидания." + +msgid "Configure the brightness level of the front panel display." +msgstr "Установите уровень яркости для нормальной работы дисплея." + +msgid "Configure the color of the external subtitles, alternative (normal in white, italic in yellow, bold in cyan, underscore in green), white or yellow." +msgstr "Настройте цвет внешних субтитров, альтернативный (нормальный белый, желтый курсив, отчетливо голубой, подчеркнутый зеленый), белый или желтый." + +msgid "Configure the color of the teletext subtitles." +msgstr "Настройка цвета телетекста субтитров." + +msgid "Configure the contrast level of the front panel display." +msgstr "Установите уровень контрастности для дисплея." + +msgid "Configure the cursor behaviour in the channel selection list. When opening the channel selection list you can keep on the current service or already select up/down and you are able to revert the B+/B- buttons." +msgstr "" + +msgid "Configure the duration in hours the receiver should go to standby when the receiver is not controlled." +msgstr "" + +msgid "Configure the duration in minutes for the screensaver." +msgstr "Настройка продолжительности в минутах для заставки(хранитель экрана)." + +msgid "Configure the duration in minutes for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +msgstr "" + +msgid "Configure the duration when the receiver should go to shut down in case the receiver is in standby mode." +msgstr "Настройте продолжительность времени для выключения ресивера, если ресивер находится в режиме ожидания." + +msgid "Configure the first audio language (highest priority)." +msgstr "Настройка первого языка аудио (наивысший приоритет)" + +msgid "Configure the first subtitle language (highest priority)." +msgstr "Настройка первого языка субтитров(наивысший приоритет)" + +msgid "Configure the font size of the subtitles." +msgstr "Настройка размера шрифта субтитров." + +msgid "Configure the fourth audio language." +msgstr "Настройка четвертого языка аудио." + +msgid "Configure the fourth subtitle language." +msgstr "Настройка четвертого языка субтитров." + +msgid "Configure the function of a long press on the power button." +msgstr "Настройка функции длинного нажатия кнопки питания." + +msgid "Configure the function of a short press on the power button." +msgstr "Настройка функции короткого нажатия кнопки питания." + +msgid "Configure the function of the '0' button do when PIP is active." +msgstr "Настройте функцию кнопки '0' когда окно PIP активно." + +msgid "Configure the gateway." +msgstr "Вы можете настроить шлюз." + +msgid "Configure the general audio delay of Dolby Digital sound tracks." +msgstr "Настройка общей задержки звуковых дорожек со звуком Dolby Digital." + +msgid "Configure the general audio delay of stereo sound tracks." +msgstr "Настройка общей задержки звуковых дорожек со стереозвуком." + +msgid "Configure the hard disk drive to go to standby after the specified idle time." +msgstr "Настройка жесткого диска, чтобы перевести в режим ожидания после определенного времени простоя." + +msgid "Configure the horizontal alignment of the subtitles." +msgstr "Настройка горизонтального выравнивания субтитров." + +msgid "Configure the initial fast forward speed. When you press the fast forward button, winding will start at this speed." +msgstr "Выберите начальную скорость перемотки вперед." + +msgid "Configure the initial rewind speed. When you press the rewind button, winding will start at this speed." +msgstr "Выберите начальную скорость перемотки назад." + +msgid "Configure the latitude of your location." +msgstr "Установите долготу вашего местоположения." + +msgid "Configure the longitude of your location." +msgstr "Установить широту вашего местоположения." + +msgid "Configure the minimum amount of disk space to be available for recordings. When the amount of space drops below this value, deleted items will be removed from the trash can." +msgstr "Настройка минимального объема дискового пространства, которое должно быть доступно для записи. Когда количество пространства падает ниже этого значения, записи будут удалены из корзины." + +msgid "Configure the nameserver (DNS)." +msgstr "Вы можете установить имя сервера." + +msgid "Configure the netmask." +msgstr "Вы можете задать сетевую маску." + +msgid "Configure the number of days after which items are automaticaly removed from the trash can." +msgstr "Настройка количества дней, через которые записи будут автоматически удалены из корзины" + +msgid "Configure the number of days old timers are kept before they are automatically removed from the timer list." +msgstr "Настройка количества дней, для хранения старых таймеров и затем автоматического удаления из списка таймеров." + +msgid "Configure the offline decoding delay in milliseconds. The configured delay is observed at each control word parity change." +msgstr "Настройка задержки оффлайн-декодирования в миллисекундах" + +msgid "Configure the possible fast forward speeds." +msgstr "Настройка возможных скоростей при быстрой перемотке вперед." + +msgid "Configure the possible rewind speeds." +msgstr "Настройка возможных скоростей при перемотке назад." + +msgid "Configure the primary EPG language." +msgstr "Настройка основного языка EPG." + +msgid "Configure the refresh rate of the screen." +msgstr "Настройка частоты обновления экрана." + +msgid "Configure the screen resolution in PC output mode." +msgstr "Настройка разрешения экрана в режиме ПК выход." + +msgid "Configure the second audio language." +msgstr "Настройка второго языка аудио" + +msgid "Configure the second subtitle language." +msgstr "Настройка второго языка субтитров" + +msgid "Configure the secondary EPG language." +msgstr "Настройка вторичного языка EPG." + +msgid "Configure the sharpness of the video scaling." +msgstr "Настройка резкости масштабирования видео." + +msgid "Configure the skip time interval for the '1'/'3' buttons." +msgstr "Настройте время пропуска при нажатии клавиш '1'/'3'" + +msgid "Configure the skip time interval for the '4'/'6' buttons." +msgstr "Настройте время пропуска при нажатии клавиш '4'/'6'" + +msgid "Configure the skip time interval for the '7'/'9' buttons." +msgstr "Настройте время пропуска при нажатии клавиш '7'/'9'" + +msgid "Configure the slow motion speeds." +msgstr "Настройка низких скоростей." + +msgid "Configure the source of the frontend data as shown on the infobars. 'Settings' is as stored on the settings. 'Tuner' is as reported by the tuner." +msgstr "" + +msgid "Configure the speed of the background deletion process. Lower speed will consume less hard disk drive performance." +msgstr "Настройка скорости процесса удаления в фоновом режиме. Низкая скорость будет иметь меньшее влияние на производительность жесткого диска." + +msgid "Configure the speed of the fan" +msgstr "" + +msgid "Configure the subtitle delay when timing information is not available." +msgstr "Настройте задержку субтитров, когда информация о времени не доступна." + +msgid "Configure the third audio language." +msgstr "Настройка третьего языка аудио" + +msgid "Configure the third subtitle language." +msgstr "Настройка третьего языка субтитров" + +msgid "Configure the transparency of the OSD." +msgstr "Настройка прозрачности экранного меню." + +msgid "Configure the transparency of the black background of graphical DVB subtitles." +msgstr "Настройка прозрачности на черном фоне графических субтитров DVB." + +msgid "Configure the tuner mode." +msgstr "Установите режим тюнера." + +msgid "Configure the type of status indication icons shown in the movielist." +msgstr "Настройка вида значков индикации состояния, при показе в списке фильмов." + +msgid "Configure the vertical position of the subtitles, measured from the bottom of the screen." +msgstr "Настройка вертикального положения субтитров, измеряется от нижней части экрана." + +msgid "Configure the video output mode (or resolution)." +msgstr "Настройка режима видеовыхода (или разрешение)." + +# -------------------------------------------------------------------------- +msgid "Configure the way in which the receiver changes channels." +msgstr "Настройте поведение ресивера при переключении каналов." + +msgid "Configure where completed timers show up in the timer list." +msgstr "Укажите, в каком месте списка таймеров должны находиться завершенные задачи." + +msgid "Configure whether (and for how long) a second infobar will be shown when OK is pressed twice. The second infobar contains additional information about the current channel." +msgstr "Нужно ли показать(и как долго) второй инфобар при нажатии кнопки OK дважды. Второй инфобар содержит дополнительную информацию о текущем канале." + +msgid "Configure whether multi channel sound tracks should be downmixed to stereo." +msgstr "Выберите, следует ли многоканальную звуковую дорожку декодировать в стереозвук." + +msgid "Configure whether or not an icon should be shown when your motorized dish is moving." +msgstr "Выберите, нужно ли показать иконку при движении антенны с мотоподвесом." + +msgid "Configure which access level to use for the configuration menu. Expert level gives access to all items." +msgstr "Настройка уровня доступа для использования в меню конфигурации. Экспертный уровень дает доступ к другим элементам." + +msgid "Configure which color format should be used on the SCART output." +msgstr "Укажите, какой формат цвета должен использоваться на выходе SCART." + +msgid "Configure which tuner for recordings will be preferred, when more than one tuner is available." +msgstr "" + +msgid "Configure which tuner type will be preferred, when the same service is available on different types of tuners." +msgstr "Укажите, какой тип тюнера предпочтительнее, если сервис доступен на различных типах тюнеров." + +msgid "Configure which tuner will be preferred, when more than one tuner is available. If set to 'auto' the system will give priority to the tuner having the lowest number of channels/satellites." +msgstr "Укажите, какой тюнер предпочтительнее, если доступны несколько тюнеров. Если установлено значение 'Авто', то система будет отдавать приоритет тюнеру с наименьшим числом каналов/спутников." + +msgid "Configure your internal LAN" +msgstr "Настройка LAN" + +msgid "Configure your network again" +msgstr "Повторить настройку сети" + +msgid "Configure your network settings, and press OK to start the scan" +msgstr "Настройте параметры сети, а затем нажмите OK, чтобы начать поиск" + +msgid "Configure your wireless LAN again" +msgstr "Повторить настройку беспроводной сети" + +msgid "Configures which video output connector will be used." +msgstr "Укажите, какой разъем видеовыхода будет использован." + +msgid "Configuring" +msgstr "Настройка" + +msgid "Conflicting timer" +msgstr "Конфликт таймеров" + +msgid "Connect" +msgstr "Подключить" + +msgid "Connect to a wireless network" +msgstr "" + +msgid "Connected satellites" +msgstr "" + +msgid "Connected to" +msgstr "Подключено к" + +msgid "Connected!" +msgstr "Подключено!" + +msgid "Constellation" +msgstr "Созвездие" + +msgid "Content does not fit on DVD!" +msgstr "Содержание не помещается на DVD!" + +msgid "Continue" +msgstr "Продолжить" + +msgid "Continue in background" +msgstr "Продолжить в фоновом режиме" + +msgid "Continue playback" +msgstr "Продолжить воспроизведение" + +msgid "Continue playing" +msgstr "Продолжить воспроизведение" + +msgid "Continues play (loop)" +msgstr "Продолжить воспр. (цикл)" + +msgid "Contrast" +msgstr "Контрастность" + +msgid "Convert ext3 filesystem to ext4" +msgstr "Конвертер ext3 в ext4" + +msgid "Convert ext3 to ext4" +msgstr "Конвертер ext3 в ext4" + +msgid "Converting ext3 to ext4..." +msgstr "Конвертер ext3 в ext4..." + +msgid "Copy" +msgstr "Копирование" + +msgid "Could not connect to receiver .NFI image feed server:" +msgstr "Не удалось подключиться к ресиверу. NFI имидж сервер фида:" + +msgid "Could not find installed channel list." +msgstr "Невозможно открыть список каналов." + +msgid "Could not load medium! No disc inserted?" +msgstr "Не удалось загрузить носитель! Проверьте, вставлен ли диск?" + +msgid "Could not open Picture in Picture" +msgstr "Невозможно открыть картинку в картинке" + +#, python-format +msgid "Could not record due to conflicting timer %s" +msgstr "Запись невозможна - конфликт таймеров %s" + +#, python-format +msgid "Could not record due to invalid service %s" +msgstr "Запись невозможна - недействительный сервис %s" + +msgid "Create DVD-ISO" +msgstr "Создать DVD-ISO" + +msgid "Create more detailed crash log" +msgstr "Записывать детали в крэш-лог" + +#, python-format +msgid "Creating directory %s failed." +msgstr "Не удалось создать каталог %s" + +msgid "Creating filesystem" +msgstr "Создание файловой системы" + +msgid "Creating partition" +msgstr "Создание разделов" + +msgid "Croatian" +msgstr "Хорватский" + +msgid "Current CEC address" +msgstr "" + +msgid "Current device: " +msgstr "Текущее устр-во:" + +msgid "Current event EPG" +msgstr "Текущее событие EPG" + +#, python-format +msgid "Current mode: %s \n" +msgstr "" + +msgid "Current settings:" +msgstr "Текущие настройки:" + +msgid "Current transponder" +msgstr "Текущий транспондер" + +msgid "Current value: " +msgstr "Текущее значение: " + +msgid "Current version:" +msgstr "Текущая версия:" + +msgid "Currently installed image" +msgstr "Текущий установленный имидж" + +msgid "Currently the commit log cannot be retrieved - please try later again" +msgstr "" + +msgid "Custom skip time for '1'/'3' buttons" +msgstr "Время пропуска для кнопок '1'/'3'" + +msgid "Custom skip time for '4'/'6' buttons" +msgstr "Время пропуска для кнопок '4'/'6'" + +msgid "Custom skip time for '7'/'9' buttons" +msgstr "Время пропуска для кнопок '7'/'9'" + +msgid "Customize" +msgstr "Индивидуальные настройки" + +msgid "Customize channel list cursor behavior" +msgstr "" + +msgid "Cut" +msgstr "Урезать" + +msgid "Cutlist editor..." +msgstr "Видео редактор..." + +msgid "Czech" +msgstr "Чешский" + +msgid "D" +msgstr "D" + +msgid "DHCP" +msgstr "DHCP" + +msgid "DMM advanced" +msgstr "DMM расширенный" + +msgid "DMM normal" +msgstr "DMM нормальный" + +msgid "DUAL LAYER DVD" +msgstr "Двухслойный ДВД" + +msgid "DVB subtitle black transparency" +msgstr "Черная прозрачность DVB субтитров" + +msgid "DVB-C" +msgstr "DVB-C" + +msgid "DVB-C ANNEX C" +msgstr "DVB-C ANNEX C" + +msgid "DVB-S" +msgstr "DVB-S" + +msgid "DVB-S2" +msgstr "DVB-S2" + +msgid "DVB-T" +msgstr "DVB-T" + +msgid "DVB-T2" +msgstr "DVB-T2" + +msgid "DVD data format" +msgstr "Видеоформат" + +msgid "DVD file browser" +msgstr "Вернуться в проводник" + +msgid "DVD media toolbox" +msgstr "DVD медиа-инструменты" + +msgid "DVD player" +msgstr "DVD плеер" + +msgid "DVD titlelist" +msgstr "белый список" + +msgid "Danish" +msgstr "Датский" + +msgid "Date" +msgstr "Дата" + +msgid "Date/time input" +msgstr "Ввод Время/Дата " + +msgid "Deep standby" +msgstr "Глубокий режим ожидания" + +msgid "Default" +msgstr "По умолчанию" + +msgid "Default movie location" +msgstr "Дефолтное место записей" + +msgid "Default settings" +msgstr "Дефолтные настройки" + +msgid "Delay before key repeat starts:" +msgstr "Задержка между стартом повтора:" + +msgid "Delay for external subtitles" +msgstr "Задержка для внешних субтитров" + +msgid "Delete" +msgstr "Удалить" + +msgid "Delete entry" +msgstr "удалить выбранное" + +msgid "Delete failed!" +msgstr "Нельзя удалить!" + +msgid "Delete file" +msgstr "удалить файл" + +msgid "Delete playlist entry" +msgstr "удалить запись из плейлиста" + +msgid "Delete saved playlist" +msgstr "удалить сохраненный плейлист" + +msgid "Delete timer" +msgstr "" + +msgid "Delete..." +msgstr "удалить..." + +msgid "Deleted" +msgstr "Удалено" + +msgid "Deleted items" +msgstr "Удаленные" + +msgid "Depth" +msgstr "Глубина" + +msgid "Descramble http streams" +msgstr "Декодировать http стрим" + +msgid "Description" +msgstr "Описание" + +msgid "Deselect" +msgstr "Отменить" + +msgid "Details for plugin: " +msgstr "Подробнее о плагине: " + +msgid "Detected HDD:" +msgstr "Найден HDD:" + +msgid "Detected NIMs:" +msgstr "Найден тюнер:" + +msgid "Devicename:" +msgstr "Имя устройства:" + +msgid "Devide" +msgstr "" + +msgid "DiSEqC" +msgstr "DiSEqC" + +msgid "DiSEqC 1.0 command" +msgstr "" + +msgid "DiSEqC 1.1 command" +msgstr "" + +msgid "DiSEqC 1.1 repeats" +msgstr "" + +msgid "DiSEqC A/B" +msgstr "DiSEqC A/B" + +msgid "DiSEqC A/B/C/D" +msgstr "DiSEqC A/B/C/D" + +msgid "DiSEqC mode" +msgstr "DiSEqC режим" + +#, python-format +msgid "DiSEqC port %s: %s" +msgstr "DiSEqC порт %s: %s" + +msgid "DiSEqC-tester settings" +msgstr "Тест настроек DiSEqC" + +msgid "Dialing:" +msgstr "Набор номера:" + +msgid "Digital contour removal" +msgstr "Цифровое удаление контура" + +msgid "Direct playback of linked titles without menu" +msgstr "Воспроизводить связанные названия без меню" + +msgid "Directory" +msgstr "Каталог" + +#, python-format +msgid "Directory %s does not exist." +msgstr "Каталог %s отсутствует." + +#, python-format +msgid "Directory %s nonexistent." +msgstr "" + +msgid "Directory browser" +msgstr "Дирктория браузера" + +#, python-format +msgid "Directory contains %d file(s) and %d sub-directories.\n" +msgstr "" + +#, python-format +msgid "Directory contains %s and %s." +msgstr " Директория содержит %s и %s." + +msgid "Disable" +msgstr "Отключить" + +msgid "Disable Picture in Picture" +msgstr "Отключить картинку в картинке" + +msgid "Disable background scanning" +msgstr "Отключить фоновое сканирование" + +msgid "Disable timer" +msgstr "" + +msgid "Disabled" +msgstr "Отключен" + +msgid "Disconnect" +msgstr "Отключить" + +msgid "Disk space to reserve for recordings (in GB)" +msgstr "Резервировать место на диске для записей (в GB)" + +msgid "Display 16:9 content as" +msgstr "Показывать 16:9 контент как" + +msgid "Display 4:3 content as" +msgstr "Показывать 4:3 контент как" + +msgid "Display >16:9 content as" +msgstr "Показывать >16:9 контент как" + +msgid "Display and userinterface" +msgstr "Экран и интерфейс" + +msgid "Display message before playing next movie" +msgstr "Сообщение перед воспр. следующей записи" + +msgid "Display setup" +msgstr "Настройка дисплея" + +msgid "Do not change" +msgstr "не изменять" + +msgid "Do not record" +msgstr "Не записывать" + +msgid "Do nothing" +msgstr "Ничего не делать" + +msgid "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" +msgstr "" +"Вы действительно хотите проверить файловую систему на ошибки?\n" +"Это займет некоторое время!" + +msgid "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" +msgstr "" +"Вы действительно хотите преобразовать файловую систему?\n" +"Вы не сможете вернуться назад!" + +#, python-format +msgid "Do you really want to delete %s?" +msgstr "Вы действительно хотите удалить %s?" + +#, python-format +msgid "" +"Do you really want to download\n" +"the plugin \"%s\"?" +msgstr "" +"Вы действительно хотите загрузить\n" +"плагин \"%s\"?" + +msgid "Do you really want to exit?" +msgstr "Вы действительно хотите выйти?" + +msgid "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" +msgstr "" +"Вы действительно хотите инициализировать устройство?\n" +"Все данные на диске будут потеряны!" + +#, python-format +msgid "" +"Do you really want to remove\n" +"the plugin \"%s\"?" +msgstr "" +"Вы действительно хотите удалить\n" +"плагин \"%s\"?" + +#, python-format +msgid "Do you really want to remove directory %s from the disk?" +msgstr "Вы действительно хотите удалить каталог %s с диска?" + +#, python-format +msgid "Do you really want to remove your bookmark of %s?" +msgstr "Вы действительно хотите удалить закладку %s?" + +msgid "Do you want this?" +msgstr "" + +msgid "Do you want to burn this collection to DVD medium?" +msgstr "Вы хотите прожечь эту коллекцию на DVD носитель?" + +msgid "Do you want to do a service scan?" +msgstr "Вы хотите начать сканирование?" + +msgid "Do you want to do another manual service scan?" +msgstr "Вы хотитесделать еще одно ручное сканирование?" + +#, python-format +msgid "Do you want to download the image to %s ?" +msgstr "Вы действительно хотите загрузить имидж %s ?" + +msgid "Do you want to install a channel list?" +msgstr "Вы действительно хотите установить список каналов?" + +msgid "Do you want to install the package:\n" +msgstr "Вы хотите установить пакет:\n" + +msgid "Do you want to play DVD in drive?" +msgstr "Вы хотите воспроизвести DVD в приводе?" + +msgid "Do you want to preview this DVD before burning?" +msgstr "Вы хотите просмотреть DVD перед прожигом?" + +msgid "Do you want to reboot your receiver?" +msgstr "Вы хотите перезагрузить ваш ресивер?" + +msgid "Do you want to remove the package:\n" +msgstr "Вы хотите удалить пакет:\n" + +msgid "Do you want to restore your settings?" +msgstr "Вы хотите восстановить ваши установки?" + +msgid "Do you want to resume this playback?" +msgstr "Вы хотите продолжить воспроизведение?" + +#, python-format +msgid "Do you want to update your receiver to %s?" +msgstr "Вы хотите обновить ваш ресивер от %s?" + +msgid "Do you want to update your receiver?" +msgstr "Вы хотите обновить ваш ресивер?" + +msgid "Do you want to upgrade the package:\n" +msgstr "Вы хотите обновить пакеты:\n" + +msgid "Don't stop current event but disable coming events" +msgstr "Не останавливать текущее событие, но отключить следующие события" + +#, python-format +msgid "Done - Installed, upgraded or removed %d package (%s)" +msgid_plural "Done - Installed, upgraded or removed %d packages (%s)" +msgstr[0] "Выполнено - Установлен, обновлен или удален %d пакет (%s)" +msgstr[1] "Выполнено - Установлено, обновлено или удалено %d пакета (%s)" +msgstr[2] "Выполнено - Установлено, обновлено или удалено %d пакетов (%s)" + +msgid "Download" +msgstr "Загрузить" + +#, python-format +msgid "Download %s from server" +msgstr "Загрузить %s с сервера" + +msgid "Download .NFI-files for USB-flasher" +msgstr "Загрузить .NFI-файлы для USB-флешера" + +msgid "Download plugins" +msgstr "Скачать плагины" + +msgid "Downloadable new plugins" +msgstr "Доступные новые плагины" + +msgid "Downloadable plugins" +msgstr "Доступные плагины" + +msgid "Downloading" +msgstr "Загрузка" + +msgid "Downloading plugin information. Please wait..." +msgstr "Загрузка информации о плагинах. Ждите..." + +msgid "Dutch" +msgstr "Нидерландский" + +msgid "Dynamic contrast" +msgstr "Динамическая контрастность" + +msgid "E" +msgstr "E" + +msgid "EPG" +msgstr "EPG" + +msgid "EPG language selection 1" +msgstr "Выбор языка EPG 1" + +msgid "EPG language selection 2" +msgstr "Выбор языка EPG 2" + +msgid "EPG selection" +msgstr "Выбор EPG" + +msgid "EPG settings" +msgstr "Настройки EPG" + +#, python-format +msgid "ERROR - failed to scan (%s)!" +msgstr "Ошибка - невозможно сканирование (%s)!" + +msgid "East" +msgstr "Восток" + +msgid "East limit set" +msgstr "Включить ограничение на восток" + +msgid "Edit" +msgstr "Редактировать" + +msgid "Edit DNS" +msgstr "Изменить DNS" + +msgid "Edit bouquets list" +msgstr "Редактировать список фаворитов" + +msgid "Edit chapters of current title" +msgstr "Редактировать главы текущего заголовка" + +msgid "Edit services list" +msgstr "Редактировать список сервисов" + +msgid "Edit settings" +msgstr "Изменить настройки" + +msgid "Edit the nameserver configuration of your receiver.\n" +msgstr "Редактировать сервер DNS вашего ресивера.\n" + +msgid "Edit the network configuration of your receiver.\n" +msgstr "Редактировать конфигурацию сети вашего ресивера.\n" + +msgid "Edit timer" +msgstr "" + +msgid "Edit title" +msgstr "Редактировать заголовок" + +msgid "Edit upgrade source url." +msgstr "Изменить URL-адрес источника обновления" + +msgid "Education/Science/..." +msgstr "Образование/Наука/..." + +msgid "Electronic Program Guide" +msgstr "Электронный программный гид" + +msgid "Enable" +msgstr "Включить" + +msgid "Enable 'neutrino' style channel select controlling" +msgstr "" + +msgid "Enable 'neutrino' style zap controlling" +msgstr "" + +msgid "Enable 5V for active antenna" +msgstr "Включить 5V для активной антенны" + +msgid "Enable EIT EPG" +msgstr "Включить EIT EPG" + +msgid "Enable MHW EPG" +msgstr "Включить MHW EPG" + +msgid "Enable Netmed EPG" +msgstr "Включить Netmed EPG" + +msgid "Enable OK for channel selection" +msgstr "" + +msgid "Enable ViaSat EPG" +msgstr "Включить ViaSat EPG" + +msgid "Enable Virgin EPG" +msgstr "" + +msgid "Enable Wake On LAN" +msgstr "" + +msgid "Enable auto fast scan" +msgstr "" + +msgid "Enable bouquet selection in multi-EPG" +msgstr "Включить выбор букетов при запуске мульти-ЕПГ" + +msgid "Enable freesat EPG" +msgstr "Включить freesat EPG" + +msgid "Enable multiple bouquets" +msgstr "Разрешить мульти-букеты" + +msgid "Enable parental control" +msgstr "Включить родительский контроль" + +msgid "Enable teletext caching" +msgstr "Включить кэширование телетекста" + +msgid "Enable zapping with CH+/-, B+/-, P+/-" +msgstr "" + +msgid "Enabled" +msgstr "Включен" + +msgid "Encrypted: " +msgstr "Шифрование:" + +msgid "Encryption" +msgstr "Кодировка" + +msgid "Encryption key" +msgstr "Ключ шифрования" + +msgid "Encryption key type" +msgstr "Тип ключа шифрования" + +msgid "Encryption:" +msgstr "Шифрование:" + +msgid "End time" +msgstr "Время окончания" + +msgid "End time to ignore inactivity sleeptimer" +msgstr "Окончание периода игнорирования таймера неактивности" + +msgid "End time to ignore shutdown in standby" +msgstr "" + +msgid "English" +msgstr "Английский" + +msgid "Enigma2 skin selector" +msgstr "Селектор скинов Enigma2" + +msgid "Enter main menu..." +msgstr "Войти в главное меню..." + +msgid "Enter pin code" +msgstr "Сменить PIN-код" + +msgid "Enter the service pin" +msgstr "Введите PIN-код для сервиса" + +msgid "Equal to" +msgstr "" + +msgid "Error" +msgstr "Ошибка" + +msgid "Error code" +msgstr "Код ошибки" + +msgid "Error executing plugin" +msgstr "Ошибка запуска плагина" + +#, python-format +msgid "" +"Error: %s\n" +"Retry?" +msgstr "" +"Ошибка: %s\n" +"Повторить?" + +msgid "Estonian" +msgstr "Эстонский" + +msgid "Ethernet network interface" +msgstr "Интернет сетевой интерфейс" + +msgid "Event font size (relative to skin size)" +msgstr "Размер шрифта событий (по отношению к скину)" + +msgid "Event view" +msgstr "Обзор события" + +msgid "Event view menu" +msgstr "Меню обзора события..." + +msgid "Everywhere" +msgstr "Везде" + +msgid "Exceeds dual layer medium!" +msgstr "превышает двухслойный носитель" + +msgid "Execution finished!!" +msgstr "Выполнение закончено!" + +msgid "Execution progress:" +msgstr "Процесс выполнения:" + +msgid "Exif" +msgstr "Exif" + +msgid "Exit" +msgstr "Выйти" + +msgid "Exit EPG" +msgstr "Выход из EPG" + +msgid "Exit editor" +msgstr "Выйти из редактора" + +msgid "Exit input device selection." +msgstr "Выход из выбора устройства ввода" + +msgid "Exit media player?" +msgstr "Выход из медиаплеера?" + +msgid "Exit mediaplayer" +msgstr "закрыть медиаплеер" + +msgid "Exit movie list" +msgstr "закрыть список фильмов" + +msgid "Exit movie player?" +msgstr "Выйти из видеоплеера?" + +msgid "Exit nameserver configuration" +msgstr "закрыть конфигуратор DNS" + +msgid "Exit network interface list" +msgstr "закрыть список сетевых интерфейсов" + +msgid "Exit network wizard" +msgstr "Выйти из мастера" + +msgid "Exit the wizard" +msgstr "Выйти из мастера настроек" + +msgid "Expert" +msgstr "Эксперт" + +msgid "Extend sleeptimer 15 minutes" +msgstr "Добавить к таймеру сна 15 минут" + +msgid "Extended Software" +msgstr "Расширенный лог" + +msgid "Extended Software Plugin" +msgstr "Расширенный плагин настроек сети..." + +msgid "Extended network setup plugin..." +msgstr "Расширенный плагин настроек сети..." + +msgid "Extended setup..." +msgstr "Расширенные настройки..." + +msgid "Extensions" +msgstr "Расширения" + +msgid "Extensions management" +msgstr "Управление дополнениями" + +msgid "External PiP" +msgstr "" + +msgid "External subtitle color" +msgstr "Цвет внешних субтитров" + +msgid "Extra motor options" +msgstr "" + +msgid "FEC" +msgstr "FEC" + +msgid "FTA" +msgstr "FTA" + +msgid "Factory reset" +msgstr "Заводские установки" + +msgid "Failed" +msgstr "Неудачный" + +msgid "Failed to write /tmp/positionersetup.log: " +msgstr "Не удалось записать /tmp/positionersetup.log: " + +#, python-format +msgid "Fan %d" +msgstr "Вентилятор %d" + +#, python-format +msgid "Fan %d PWM" +msgstr "Вентилятор %d PWM" + +#, python-format +msgid "Fan %d voltage" +msgstr "Вентилятор %d напряжение" + +msgid "Fan operation" +msgstr "" + +msgid "Fan speed" +msgstr "" + +msgid "Fast" +msgstr "Быстро" + +msgid "Fast DiSEqC" +msgstr "Быстрый DiSEqC" + +msgid "Fast Scan" +msgstr "Быстрый поиск по провайдеру" + +msgid "Fast epoch" +msgstr "Время для быстрой скорости" + +msgid "Fast forward speeds" +msgstr "Скорость перемотки вперед" + +msgid "Favourites" +msgstr "Фавориты" + +msgid "File appears to be busy.\n" +msgstr "Файл оказался занятым.\n" + +msgid "Filesystem check" +msgstr "Проверка файловой системы" + +msgid "Final position at" +msgstr "Итоговая позиция" + +msgid "Final position at index" +msgstr "Номер итоговой позиции" + +msgid "Fine movement" +msgstr "Тонкое перемещение" + +msgid "Finetune" +msgstr "Точно" + +msgid "Finished" +msgstr "Завершено" + +msgid "Finished configuring your network" +msgstr "Настройка сети закончена" + +msgid "Finished restarting your network" +msgstr "Перезагрузка вашей сети завершена" + +msgid "Finnish" +msgstr "Финский" + +msgid "Fixed" +msgstr "фиксированная" + +msgid "Flash" +msgstr "Прошивка" + +msgid "Flashing failed" +msgstr "Прошивка не удалась" + +msgid "Following tasks will be done after you press OK!" +msgstr "Выполнение начнется после того, как вы нажмете ОК!" + +msgid "Format" +msgstr "Формат" + +msgid "Forward volume keys" +msgstr "Передать кнопки звука" + +msgid "Frame size in full view" +msgstr "Размер рамки при просмотре во весь экран" + +msgid "French" +msgstr "Французский" + +msgid "Frequency" +msgstr "Частота" + +msgid "Frequency bands" +msgstr "Частотные диапазоны" + +msgid "Frequency scan step size(khz)" +msgstr "Шаг частоты сканирования(khz)" + +msgid "Frequency steps" +msgstr "Шаг частоты" + +msgid "Frequency:" +msgstr "Частота:" + +msgid "Fri" +msgstr "Пт" + +msgid "Friday" +msgstr "Пятница" + +msgid "From :" +msgstr "От :" + +#, python-format +msgid "Frontprocessor version: %d" +msgstr "Версия фронтпроцессора: %d" + +msgid "Full transparency" +msgstr "Полная прозрачность" + +msgid "Fulview resulution" +msgstr "Полное разрешение просмотра" + +msgid "Function of OK button" +msgstr "Функция кнопки OK" + +msgid "Further Options" +msgstr "" + +msgid "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" +msgstr "" +"Для активации нового скина необходим рестарт GUI.\n" +"Вы хотите сделать это сейчас?" + +msgid "Gateway" +msgstr "Шлюз" + +msgid "General AC3 delay" +msgstr "Общая задержка AC3" + +msgid "General PCM delay" +msgstr "Общая задержка PCM" + +msgid "Genre" +msgstr "Жанр" + +msgid "German" +msgstr "Немецкий" + +msgid "Get latest experimental image" +msgstr "" + +msgid "Get latest release image" +msgstr "Получить последний выпущенный имидж" + +msgid "Getting plugin information. Please wait..." +msgstr "Получение информации о плагине. Пожалуйста ждите..." + +msgid "Go down the list" +msgstr "переместить вниз к последней записи" + +msgid "Go to first movie or last item" +msgstr "Перейти к первому видео или к последней строке" + +msgid "Go to first movie or top of list" +msgstr "Перейти к первому видео или на вверх списка" + +msgid "Go to first service" +msgstr "Перейти на первый сервис" + +msgid "Go to last service" +msgstr "Перейти на последний сервис" + +msgid "Go to next event" +msgstr "Перейти на след. событие" + +msgid "Go to next page of service" +msgstr "Перейти на след. страницу сервисов" + +msgid "Go to previous event" +msgstr "Перейти на пред. событие" + +msgid "Go to previous page of service" +msgstr "Перейти на пред. страницу сервисов" + +msgid "Go up the list" +msgstr "перейти в конец списка" + +msgid "Goto" +msgstr "Переход" + +msgid "Goto 0" +msgstr "Переход на позицию 0" + +msgid "Goto :" +msgstr "Куда :" + +msgid "Goto X" +msgstr "Переход на позицию Х" + +msgid "Goto index position" +msgstr "Номер позиции" + +msgid "Goto next day of events" +msgstr "Перейти на следущий день событий" + +msgid "Goto next page of events" +msgstr "Перейти на след. страницу событий" + +msgid "Goto position" +msgstr "Перейти на позицию" + +msgid "Goto previous day of events" +msgstr "Перейти на предыдущий день событий" + +msgid "Goto previous page of events" +msgstr "Перейти на пред. страницу событий" + +msgid "Goto specific date/time" +msgstr "" + +msgid "GotoX calibration" +msgstr "Калибровка позиции Х" + +msgid "GraphMultiEpg Settings" +msgstr "Настройки графического мульти-EPG" + +msgid "Graphical Multi EPG" +msgstr "Графический мульти-EPG" + +msgid "Greek" +msgstr "Греческий" + +msgid "Green boost" +msgstr "Повышение зеленого" + +msgid "Guard interval" +msgstr "Интервал защиты" + +msgid "HD list" +msgstr "HD лист" + +msgid "HDMI-CEC setup" +msgstr "" + +msgid "Handle standby from TV" +msgstr "Режим ожидания при выключении ТВ" + +msgid "Handle wakeup from TV" +msgstr "Включить при включении ТВ" + +msgid "Hard disk" +msgstr "Жесткий диск" + +msgid "Hard disk setup" +msgstr "Настройка диска" + +msgid "Hard disk standby after" +msgstr "Отключение HDD через" + +msgid "Harddisk" +msgstr "Жесткий диск" + +msgid "Hardware: " +msgstr "Аппаратура: " + +msgid "Hebrew" +msgstr "Иврит" + +msgid "Helps setting up your dish" +msgstr "" + +msgid "Hidden network" +msgstr "Скрытая сеть" + +msgid "Hide CI messages" +msgstr "Спрятать сообщения CI" + +msgid "Hide channel list in radio mode" +msgstr "Скрыть список каналов в режиме радио" + +msgid "Hide known extensions" +msgstr "Скрыть известные расширения" + +msgid "Hide number markers" +msgstr "Скрывать номера маркеров" + +msgid "Hide player" +msgstr "Скрыть проигрыватель" + +msgid "Hide zap errors" +msgstr "Спрятать ошибки при переключении каналов" + +msgid "Hierarchy info" +msgstr "Иерархия информации" + +msgid "Hierarchy information" +msgstr "Иерархия информации" + +msgid "High bitrate support" +msgstr "Поддержка высокого битрейта" + +msgid "Hold screen" +msgstr "Сохранять экран" + +msgid "Hold till locked" +msgstr "Сохранять экран-заблокировано" + +msgid "Home" +msgstr "Домашняя" + +msgid "Horizontal" +msgstr "Горизонтальная" + +msgid "Horizontal turning speed" +msgstr "Поляризация (H) - скорость поворота" + +msgid "How many minutes do you want to record?" +msgstr "Сколько минут вы хотите записать?" + +msgid "Hue" +msgstr "Оттенок" + +msgid "Hungarian" +msgstr "Венгерский" + +msgid "IP address" +msgstr "IP адрес" + +msgid "ISO file is too large for this filesystem!" +msgstr "ISO файл слишком велик для этой файловой системы!" + +msgid "ISO path" +msgstr "ISO путь" + +msgid "Icons" +msgstr "Иконка" + +msgid "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." +msgstr "" +"Если вы видите это, то что-то не так с вашим\n" +"SCART соединением. Нажмите кнопку ОК, чтобы вернуться." + +msgid "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." +msgstr "" +"Если в Вашем телевизоре наблюдается превышение яркости или контрастности, устраните это. Если в Вашем TB выбран один из режимов настроек изображения,например \"динамичный\", сбросьте настройки в стандартные .Уменьшите контрастность Вашего ТВ на максимально возможное значение.\n" +"Теперь уменьшите яркость на максимально низкое значение, на сколько это возможно, но при этом следите, чтобы два самых нижних оттенка былиразличимы.\n" +"Не беспокойтесь о ярких оттенках, они будут настроены на следующем этапе.\n" +"Если Вас устраивает результат, нажмите OK." + +msgid "Image: " +msgstr "Имидж: " + +msgid "Immediate shutdown" +msgstr "глубокий режим ожидания" + +msgid "In order to record a timer, the TV was switched to the recording service!\n" +msgstr "" +"Для старта записи по таймеру,\n" +" переключаем на записываемый сервис!\n" + +msgid "In progress" +msgstr "В прогрессе" + +msgid "Inactivity Sleeptimer" +msgstr "Таймер неактивности" + +msgid "Include AIT in http streams" +msgstr "Включать AIT в http стрим" + +msgid "Include ECM in http streams" +msgstr "Включать ECM в http стрим" + +msgid "Include EIT in http streams" +msgstr "Включать EIT в http стрим" + +msgid "Incorrect type service for PiP!" +msgstr "" + +msgid "Increased voltage" +msgstr "Повышенное напряжение" + +msgid "Index" +msgstr "Индекс" + +msgid "Index allocated:" +msgstr "Выделен номер:" + +msgid "Info" +msgstr "Инфо" + +msgid "Info bar" +msgstr "Инфобар" + +msgid "Info bar timeout" +msgstr "Время показа инфобара" + +msgid "Infobar frontend data source" +msgstr "" + +msgid "Information" +msgstr "Информация" + +msgid "Init" +msgstr "Инициализация" + +msgid "Initial fast forward speed" +msgstr "Первоначальная скорость перемотки вперед" + +msgid "Initial location in new timers" +msgstr "Начальное место новых таймеров" + +msgid "Initial lock ratio" +msgstr "Начальное соотношение захвата" + +msgid "Initial rewind speed" +msgstr "Первоначальная скорость перемотки назад" + +msgid "Initial signal quality" +msgstr "Начальное качество сигнала" + +msgid "Initial signal quality:" +msgstr "Начальное качество сигнала:" + +msgid "Initialization" +msgstr "Инициализация (формат.)" + +msgid "Initialize" +msgstr "Инициализация" + +msgid "Initializing storage device..." +msgstr "Инициализация жесткого диска..." + +msgid "Input" +msgstr "Вход" + +msgid "Input device setup" +msgstr "Настройки устройства ввода" + +msgid "Input devices" +msgstr "Настройки пульта" + +msgid "Install" +msgstr "Установить" + +msgid "Install a new image with a USB stick" +msgstr "Установить новый имидж с USB стика" + +msgid "Install a new image with your web browser" +msgstr "Установить новый имидж через web браузер" + +msgid "Install channel list" +msgstr "Инсталлировать список каналов" + +msgid "Install extensions" +msgstr "" + +msgid "Install extensions." +msgstr "Установить дополнения." + +msgid "Install local extension" +msgstr "Инсталляция локал. пакетов" + +msgid "Install picons on" +msgstr "Установка пиконов в" + +msgid "Install softcam" +msgstr "Инсталляция эмулятора" + +msgid "Installation has completed." +msgstr "Инсталляция завершена." + +msgid "Installation or removal has completed." +msgstr "Инсталляция или удаление завершено." + +msgid "Installing" +msgstr "Инсталляция" + +msgid "Installing software..." +msgstr "Инсталляция пакетов..." + +msgid "Instant recording location" +msgstr "Место немедленной записи" + +msgid "Instant recording..." +msgstr "Меню немедленной записи..." + +msgid "Interface: " +msgstr "Интерфейс: " + +msgid "Intermediate" +msgstr "Промежуточный" + +msgid "Internal flash" +msgstr "Внутренняя флешь" + +msgid "Internal hdd only" +msgstr "Только внутр. жесткий диск" + +msgid "Interval between keys when repeating:" +msgstr "Интервал между повторами кнопок:" + +#, python-format +msgid "Invalid directory selected: %s" +msgstr "Выбран неправильный каталог: %s" + +msgid "Invalid location" +msgstr "Неправильное расположение" + +msgid "Invalid transponder data" +msgstr "" + +msgid "Inversion" +msgstr "Инверсия" + +msgid "Invert" +msgstr "Выбрать все" + +msgid "Ipkg" +msgstr "Ipkg" + +msgid "Is this setting ok?" +msgstr "Этот вариант настройки вас устраивает?" + +msgid "Is this video mode ok?" +msgstr "Установить данный видеорежим?" + +msgid "Italian" +msgstr "Итальянский" + +msgid "Items per page " +msgstr "Кол-во сервисов на страницу " + +msgid "Items per page for list screen" +msgstr "Кол-во сервисов на страницу в режиме списка" + +msgid "Job overview" +msgstr "Просмотр задания" + +msgid "Jump to beginning of list" +msgstr "Перейти в начало списка" + +msgid "Jump to end of list" +msgstr "перейти в конец списка" + +msgid "Jump to next marked position" +msgstr "Перейти к следующей метке" + +msgid "Jump to previous marked position" +msgstr "Перейти к предыдущей метке" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect) +msgid "Just scale" +msgstr "Только масштаб" + +msgid "Keep service" +msgstr "" + +msgid "Kernel version: " +msgstr "Версия ядра: " + +msgid "Keyboard" +msgstr "Клавиатура" + +msgid "Keyboard map" +msgstr "Раскладка клавиатуры" + +msgid "Keyboard setup" +msgstr "Настройки клавиатуры" + +msgid "LAN adapter" +msgstr "LAN адаптер" + +msgid "LAN connection" +msgstr "LAN соединение" + +msgid "LNB" +msgstr "LNB" + +msgid "Language" +msgstr "Выбор языка" + +msgid "Language selection" +msgstr "Список языков" + +msgid "Last config" +msgstr "Последнии настройки" + +msgid "Last speed" +msgstr "Последняя скорость" + +msgid "Last upgrade: " +msgstr "Последнее обновление: " + +msgid "Latest Commits" +msgstr "" + +msgid "Latitude" +msgstr "Широта" + +msgid "Latvian" +msgstr "Латвийский" + +msgid "Leave DVD player?" +msgstr "Выйти из DVD плеера?" + +msgid "Left" +msgstr "Левый" + +msgid "Left from servicename" +msgstr "слева от названия сервиса" + +msgid "Leisure hobbies" +msgstr "Хобби на отдыхе" + +#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term. +msgid "Letterbox" +msgstr "Letterbox" + +msgid "Letterbox zoom" +msgstr "" + +msgid "Limit character set for recording filenames" +msgstr "Ограничить набор символов в именах записей" + +msgid "Limit east" +msgstr "Ограничение на восток" + +msgid "Limit the characters that can be used in recording filenames to (7 bit) ascii. This ensures compatibility with operating systems or file systems with limited character sets." +msgstr "Ограничьте знаки, которые могут использоваться в записи имен файлов (7 бит) ASCII. Это обеспечивает совместимость с операционными системами или файловыми системами с ограниченным набором символов." + +msgid "Limit west" +msgstr "Ограничение на запад" + +msgid "Limits cancelled" +msgstr "Ограничения отменены" + +msgid "Limits enabled" +msgstr "Ограничения включены" + +msgid "Limits off" +msgstr "Выключить ограничения" + +msgid "Limits on" +msgstr "Включить ограничения" + +msgid "Link quality:" +msgstr "Качество связи:" + +msgid "Link:" +msgstr "Ссылка:" + +msgid "Linked titles with a DVD menu" +msgstr "Заголовки связанные с DVD меню" + +msgid "List EPG functions..." +msgstr "Список функций EPG..." + +msgid "List available networks" +msgstr "Просмотр списка доступных сетей" + +msgid "List mode" +msgstr "Режим списка" + +msgid "List of storage devices" +msgstr "Список устройств хранения" + +msgid "List type" +msgstr "Вид списка" + +#, python-format +msgid "List version %d, found %d channel" +msgid_plural "List version %d, found %d channels" +msgstr[0] "Список версии %d, найден %d канал" +msgstr[1] "Список версии %d, найдено %d канала" +msgstr[2] "Список версии %d, найдено %d каналов" + +msgid "Listen to the radio..." +msgstr "Слушать радио..." + +msgid "Lists reloaded!" +msgstr "" + +msgid "Lithuanian" +msgstr "Литовский" + +msgid "Load" +msgstr "Загрузить" + +msgid "Load Length of Movies in Movielist" +msgstr "" + +msgid "Load length of movies in movie list" +msgstr "Загружать длительность видео в списке видео" + +msgid "Load playlist" +msgstr "загрузить плейлист" + +msgid "Local network" +msgstr "Локальная сеть" + +msgid "Location" +msgstr "Расположение" + +msgid "Location for instant recordings" +msgstr "Расположение моментальных записей" + +msgid "Lock ratio" +msgstr "Качество захвата" + +msgid "Lock:" +msgstr "Захват:" + +msgid "Log results to harddisk" +msgstr "Записывать журнал на диск" + +msgid "Long filenames" +msgstr "Длинное название" + +msgid "Long key press" +msgstr "Длинное нажатие" + +msgid "Longitude" +msgstr "Долгота" + +msgid "Loop through to" +msgstr "" + +msgid "Luxembourgish" +msgstr "Люксембургский" + +msgid "MMC card" +msgstr "MMC карта" + +msgid "MORE" +msgstr "ЗАТЕМ" + +msgid "Main menu" +msgstr "Главное меню" + +msgid "Maintain old EPG data for" +msgstr "Сохранять прошедшие данные EPG для (мин)" + +msgid "Make this mark an 'in' point" +msgstr "Отметить эту точку как 'начало'" + +msgid "Make this mark an 'out' point" +msgstr "Отметить эту точку как 'конец'" + +msgid "Make this mark just a mark" +msgstr "Создать простую метку" + +msgid "Manage extensions" +msgstr "Менеджер дополнений" + +msgid "Manage your receiver's software" +msgstr "Менеджер ПО ресивера" + +msgid "Manual" +msgstr "" + +msgid "Manual Scan" +msgstr "Ручной поиск" + +msgid "Manual configuration" +msgstr "Ручная настройка" + +msgid "Manual scan" +msgstr "Ручной поиск" + +msgid "Manual transponder" +msgstr "Транспондер вручную" + +msgid "Manufacturer" +msgstr "Производитель" + +msgid "Margin after recording (minutes)" +msgstr "Объединить после записи (в минутах)" + +msgid "Margin before recording (minutes)" +msgstr "Объединить перед записью (в минутах)" + +msgid "Max memory positions" +msgstr "" + +msgid "Max. bitrate: " +msgstr "Макс. битрейт:" + +msgid "Media player" +msgstr "Медиаплеер" + +msgid "Media scanner" +msgstr "Медиа сканнер" + +msgid "Medium is not a writeable DVD!" +msgstr "Носитель не записываемый DVD!" + +msgid "Medium is not empty!" +msgstr "Носитель не пустой!" + +msgid "Memory" +msgstr "Память" + +msgid "Memory index" +msgstr "Номер в памяти" + +msgid "Menu" +msgstr "Меню" + +msgid "Message" +msgstr "Сообщение" + +msgid "Message..." +msgstr "Сообщение..." + +#, python-format +msgid "Minimum age %d years" +msgstr "Категория минимум %d лет" + +msgid "Minimum send interval" +msgstr "Минимальный интервал отправки" + +msgid "Missing " +msgstr "Отсутствует " + +msgctxt "Satellite configuration mode" +msgid "Mode" +msgstr "Режим" + +msgctxt "Video output mode" +msgid "Mode" +msgstr "Режим" + +msgid "Model: " +msgstr "Модель: " + +msgid "Modulation" +msgstr "Модуляция" + +msgid "Modulator" +msgstr "Модулятор" + +msgid "Mon" +msgstr "Пн" + +msgid "Mon-Fri" +msgstr "Пн-Пт" + +msgid "Monday" +msgstr "Понедельник" + +msgid "Mosquito noise reduction" +msgstr "Подавление москитного шума" + +msgid "Mount" +msgstr "Просмотр подключений" + +msgid "Move" +msgstr "Перемещение" + +msgid "Move PiP to main picture" +msgstr "Переместить PiP на основной экран" + +msgid "Move Picture in Picture" +msgstr "Переместить картинку в картинке" + +msgid "Move east" +msgstr "Перемещение на восток" + +msgid "Move to other directory" +msgstr "Выбор начального каталога" + +msgid "Move to position X" +msgstr "Перемещение к позиции Х" + +msgid "Move west" +msgstr "Перемещение на запад" + +msgid "Moved to position 0" +msgstr "Перемещение к позиции Х" + +msgid "Moved to position at index" +msgstr "Перемещение к позиции номера" + +msgid "Movement" +msgstr "Перемещение" + +msgid "Movie List Configuration" +msgstr "" + +msgid "Movie Selection" +msgstr "" + +msgid "Movie list configuration" +msgstr "Конфигурация списка видео" + +msgid "Movie location" +msgstr "Расположение видео" + +msgid "Movie selection" +msgstr "Выбор видео" + +msgid "Movie/Drama" +msgstr "Фильмы/Драма" + +msgid "Movielist menu" +msgstr "Меню списка видео" + +msgid "Moving" +msgstr "Перемещаем" + +msgid "Moving east ..." +msgstr "Перемещаем на восток ..." + +msgid "Moving to position" +msgstr "Перемещаем на позицию" + +msgid "Moving west ..." +msgstr "Перемещаем на запад ..." + +msgid "Multi EPG" +msgstr "Мульти EPG" + +msgid "Multi-EPG bouquet selection" +msgstr "Выбор букетов при старте мульти-EPG" + +msgid "Multimedia" +msgstr "Мультмедиа" + +msgid "Multiple service support" +msgstr "Поддержка мультисервисов" + +msgid "Multiplex" +msgstr "Мультиплекс" + +msgid "Multisat" +msgstr "Несколько спутников" + +msgid "Multisat all select" +msgstr "" + +msgid "Music/Ballet/Dance" +msgstr "Музыка/Балет/Танец" + +msgid "Mute" +msgstr "без зыука" + +msgid "N/A" +msgstr "N/A" + +msgid "NEXT" +msgstr "ДАЛЕЕ" + +msgid "NFI image flashing" +msgstr "Установка прошивки NFI" + +msgid "NFI image flashing completed. Press Yellow to Reboot!" +msgstr "NFI имидж удачно установлен. Нажмите ЖЕЛТЫЙ для перезагрузки!" + +msgid "NIM" +msgstr "Тюнер" + +msgid "NOW" +msgstr "СЕЙЧАС" + +msgid "NTSC" +msgstr "NTSC" + +msgid "Name" +msgstr "Имя" + +msgid "Nameserver" +msgstr "DNS сервер" + +#, python-format +msgid "Nameserver %d" +msgstr "DNS сервер %d" + +msgid "Nameserver settings" +msgstr "Настройки DNS" + +msgid "Nameserver setup" +msgstr "" + +msgid "Namespace" +msgstr "Namespace" + +msgid "Netmask" +msgstr "Маска подсети" + +msgid "Network" +msgstr "Сеть и сетевые подключения" + +msgid "Network ID" +msgstr "ID сети" + +msgid "Network configuration..." +msgstr "Конфигурация сети..." + +msgid "Network mount" +msgstr "Сетевые подключения" + +#, python-format +msgid "Network mount %s" +msgstr "Сетевые подключения %s" + +msgid "Network name (SSID)" +msgstr "Сетевое имя (SSID)" + +msgid "Network scan" +msgstr "Сканирование сети" + +msgid "Network setup" +msgstr "Настройка сети" + +msgid "Network test" +msgstr "Тест сети" + +msgid "Network test..." +msgstr "Тест сети..." + +msgid "Network test: " +msgstr "Тест сети: " + +msgid "Network wizard" +msgstr "Мастер настройки сети" + +msgid "Network:" +msgstr "Сеть:" + +msgid "New" +msgstr "Новый" + +msgid "New PIN" +msgstr "Новый PIN-код" + +msgid "New version:" +msgstr "Новая версия:" + +msgid "News Current Affairs" +msgstr "Новости текущего события" + +msgctxt "button label, 'next screen'" +msgid "Next" +msgstr "Далее" + +msgctxt "now/next: 'next' event label" +msgid "Next" +msgstr "Далее" + +msgid "No" +msgstr "Нет" + +msgid "No (supported) DVDROM found!" +msgstr "Не найден (поддерживаемый) DVDROM!" + +msgid "No Connection" +msgstr "Нет соединения" + +msgid "No HDD found or HDD not initialized!" +msgstr "HDD не найден или HDD не установлен!" + +msgid "No backup needed" +msgstr "Резервное копирование не требуется" + +msgid "No cable tuner found!" +msgstr "Не найден кабельный тюнер!" + +msgid "" +"No data on transponder!\n" +"(Timeout reading PAT)" +msgstr "" +"Нет данных на транспондер!\n" +"(Тайм-аут чтения PAT)" + +msgid "No delay" +msgstr "без задержки" + +msgid "No description available." +msgstr "Обновлений пока нет." + +msgid "No details for this image file" +msgstr "Нет деталей об этом файле имиджа" + +msgid "No displayable files on this medium found!" +msgstr "Нет отображаемых файлов на этом носителе!" + +msgid "No event info found, recording indefinitely." +msgstr "Информация о событии не найдена, запись на неопределенное время." + +msgid "No fast winding possible yet.. but you can use the number buttons to skip forward/backward!" +msgstr "Нет быстрой перемотки возможно еще... но вы можете использовать цифровые кнопки для перехода вперед/назад!" + +msgid "No free index available" +msgstr "Нет свободного номера памяти" + +msgid "No free tuner!" +msgstr "Нет свободного тюнера!" + +msgid "No network connection available." +msgstr "Нет доступного сетевого подключения." + +msgid "No networks found" +msgstr "Сети не найдены" + +msgid "No new plugins found" +msgstr "Не найдены новые плагины" + +msgid "No positioner capable frontend found." +msgstr "Нет фронтэнда с позиционером" + +msgid "No satellites configured. Plese check your tuner setup." +msgstr "" + +msgid "No service" +msgstr "" + +msgid "No services/providers selected" +msgstr "Не выбраны каналы/провайдеры" + +msgid "No standby" +msgstr "не переходить в режим ожидания" + +msgid "No suitable sat tuner found!" +msgstr "" + +msgid "No tags are set on these movies." +msgstr "Нет тегов для этого видео." + +msgid "No timeout" +msgstr "нет таймаута" + +msgid "No to all" +msgstr "Нет - для всех" + +msgid "No transparency" +msgstr "нет прозрачности" + +msgid "No tuner is configured for use with a diseqc positioner!" +msgstr "Нет тюнера, настроенного для использования с diseqc позиционером!" + +msgid "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Нет включенного тюнера!\n" +"Пожалуйста настройте ваш тюнер перед поиском каналов." + +msgid "No updates available" +msgstr "Обновлений пока нет" + +msgid "No updates available. Please try again later." +msgstr "Обновлений пока нет. Пожалуйста попробуйте позже." + +msgid "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" +msgstr "" +"Не валидный PIN сервиса!\n" +"Вы хотите изменить PIN-код сервиса сейчас?\n" +"Если вы ответите 'НЕТ', то защита сервиса \n" +"не будет включена!" + +msgid "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" +msgstr "" +"Не валидный PIN настроек!\n" +"Вы хотите изменить PIN-код настроек сейчас?\n" +"Если вы ответите 'НЕТ', то защита настроек \n" +"не будет включена!" + +msgid "No wireless networks found! Searching..." +msgstr "Не обнаружены беспроводные сети! Идет поиск..." + +msgid "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." +msgstr "" +"Нет рабочего локального сетевого адаптера.\n" +"Пожалуйста, убедитесь, что сетевой кабель подключен и ваша сеть настроена правильно." + +msgid "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." +msgstr "" +"Не найден рабочий беспроводный адаптер.\n" +"Пожалуйста, убедитесь, что совместимый беспроводной адаптер подключен и ваша сеть настроена правильно." + +msgid "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." +msgstr "" +"Не найден рабочий беспроводный интерфейс.\n" +" Убедитесь что вы подключили совместимое устройство WLAN или включите локальный сетевой интерфейс." + +msgid "No, but restart from begin" +msgstr "Нет, рестарт и начать сначала" + +msgid "No, do nothing." +msgstr "Нет, ничего не делать." + +msgid "No, just start my receiver" +msgstr "Нет, включить мой ресивер" + +msgid "No, never" +msgstr "Нет, никогда" + +msgid "None" +msgstr "нет" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right) +msgid "Nonlinear" +msgstr "Нелинейный" + +msgid "Normal mode" +msgstr "Стандарт" + +msgid "North" +msgstr "Север" + +msgid "Norwegian" +msgstr "Норвежский" + +msgid "Not associated" +msgstr "Нет ассоциаций" + +msgid "Not configured" +msgstr "" + +#, python-format +msgid "Not enough disk space. Please free up some disk space and try again. (%d MB required, %d MB available)" +msgstr "Нет места на диске. Пожалуйста освободите немного места и попробуйте снова. (%d MB требуется, %d MB доступно)" + +msgid "Nothing connected" +msgstr "" + +msgid "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Нечего сканировать!\n" +"Пожалуйста, настройте ваш тюнер перед началом сканирования." + +msgctxt "now/next: 'now' event label" +msgid "Now" +msgstr "Сейчас" + +msgid "Now playing" +msgstr "Воспроизвести" + +msgid "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." +msgstr "Теперь используйте настройки контрастности для поднятия фона в максимально возможный уровень, но при этом необходимо следить,чтобы Вы могли видеть различия между двумя самыми яркими уровнями оттенков.Если все нормально нажмите OK." + +msgid "OK" +msgstr "OK" + +msgid "OK, guide me through the upgrade process" +msgstr "OK, подсказывать мне в процессе обновления" + +msgid "ONID" +msgstr "ONID" + +msgid "OSD name request" +msgstr "OSD имя запроса" + +msgid "OSD settings" +msgstr "OSD установки" + +msgid "OSD transparency" +msgstr "Прозрачность OSD" + +msgid "Off" +msgstr "Выкл." + +msgid "Offline decode delay (ms)" +msgstr "Задержка отложенного декодирования (мс)" + +msgid "Ok" +msgstr "Ок" + +msgid "On" +msgstr "Вкл." + +msgid "On end of movie" +msgstr "В конце фильма" + +msgid "On end of movie (as menu)" +msgstr "" + +msgid "One" +msgstr "Один" + +msgid "Only extensions." +msgstr "Только дополнения." + +msgid "Only free scan" +msgstr "Только бесплатные" + +msgid "Open service list" +msgstr "Открыть список сервисов" + +msgid "Open the movie list" +msgstr "Открыть список видео" + +msgid "Orbital position" +msgstr "Орбит. позиция" + +msgid "Original" +msgstr "Оригинал" + +msgid "Other" +msgstr "Другая" + +msgid "Output" +msgstr "Видеовыход" + +msgid "Overwrite configuration files during software upgrade?" +msgstr "Перезаписать конф. файлы во время обновления ПО?" + +msgid "Overwrite configuration files?" +msgstr "Переписать файлы конфигурации " + +msgid "PAL" +msgstr "PAL" + +msgid "PCR PID" +msgstr "PCR PID" + +msgid "PIDs" +msgstr "ПИДы" + +msgid "PIN code needed" +msgstr "Необходим PIN-код" + +msgid "PLP ID" +msgstr "" + +msgid "PMT PID" +msgstr "РМТ PID" + +msgid "Package list update" +msgstr "Список пакетов обновления" + +msgid "Packet management" +msgstr "Управление пакетами" + +msgid "Packet manager" +msgstr "Менеджер пакетов" + +#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term +msgid "Pan&scan" +msgstr "Pan&Scan" + +msgid "Parent directory" +msgstr "Родительский каталог" + +msgid "Parental control" +msgstr "Родительский контроль" + +msgid "Parental control services editor" +msgstr "Редактор сервисов родительского контроля" + +msgid "Parental control setup" +msgstr "Установки родительского контроля" + +msgid "Parental control type" +msgstr "Тип родительского контроля" + +msgid "Password" +msgstr "Пароль" + +msgid "Pause" +msgstr "Пауза" + +msgid "Pause movie at end" +msgstr "Пауза в конце фильма" + +msgid "Pause playback" +msgstr "Пауза воспроизведения" + +msgid "Pauze/Continue playback" +msgstr "" + +msgid "Percentage left" +msgstr "проценты слева" + +msgid "Percentage right" +msgstr "проценты справа" + +msgid "Permanently delete all recordings in the trash can?" +msgstr "Окончательное удаление всех записей в корзине?" + +msgid "Permanently remove all deleted items" +msgstr "Очистка корзины" + +msgid "Persian" +msgstr "Фризский" + +msgid "Phone number" +msgstr "Номер набора" + +msgid "PiP setup" +msgstr "Настройки PiP" + +msgid "Picon" +msgstr "Пикон" + +msgid "Picon and service name" +msgstr "Пикон и название сервиса" + +msgid "Picture player" +msgstr "Просмотр фото" + +#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term. +msgid "Pillarbox" +msgstr "Pillarbox" + +msgid "Pilot" +msgstr "Пилот" + +msgid "Play" +msgstr "Воспроизвести" + +msgid "Play DVD" +msgstr "Воспроизвести DVD" + +msgid "Play audio in background" +msgstr "Воспр. аудио в фоновом режиме" + +msgid "Play audio-CD..." +msgstr "Воспроизвести аудио-CD" + +msgid "Play back media files" +msgstr "Проигрыватель медиа файлов" + +msgid "Play entry" +msgstr "воспроизвести запись" + +msgid "Play from next mark or playlist entry" +msgstr "воспроизвести начиная со следующей метки или записи в плейлисте" + +msgid "Play from previous mark or playlist entry" +msgstr "воспроизвести начиная с предыдущей метки или записи в плейлисте" + +msgid "Play music..." +msgstr "Воспроизвести музыку..." + +msgid "Play next" +msgstr "Играть следующее видео" + +msgid "Play next (return to movie list)" +msgstr "След. воспр.(возврат к списку видео)" + +msgid "Play next (return to previous service)" +msgstr "След. воспр.(возврат на пред. сервис)" + +msgid "Play previous" +msgstr "Играть следующее видео" + +msgid "Play recorded movies..." +msgstr "Воспроизвести записанное видео..." + +msgid "Please add titles to the compilation." +msgstr "Пожалуйста добавьте названия к компиляции" + +msgid "Please change recording endtime" +msgstr "Пожалуйста, измените время окончания записи" + +msgid "Please check your network settings!" +msgstr "Пожалуйста, проверьте настройки сети!" + +msgid "Please choose an extension..." +msgstr "Пожалуйста, выберите дополнение..." + +msgid "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Пожалуйста, настройте или проверьте конфигурацию DNS заполнив нужные данные\n" +"Когда будете готовы - нажмите ОК для продолжения." + +msgid "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Пожалуйста, настройте интернет соединение заполнив нужные данные\n" +"Когда будете готовы - нажмите ОК для продолжения." + +msgid "Please connect your receiver to the internet" +msgstr "Пожалуйста, подключите ваш ресивер к интернету" + +msgid "Please do not change any values unless you know what you are doing!" +msgstr "Пожалуйста, не изменяйте любые параметры, пока не знаете что делаете!" + +msgid "Please enter a name for the new bouquet" +msgstr "Пожалуйста, введите имя для нового пакета" + +msgid "Please enter a name for the new marker" +msgstr "Пожалуйста, введите имя для нового маркера" + +msgid "Please enter a new filename" +msgstr "Пожалуйста, введите новое имя файла" + +msgid "Please enter filename (empty = use current date)" +msgstr "Пожалуйста, введите имя файла(пусто = текущая дата)" + +msgid "Please enter name of the new directory" +msgstr "Пожалуйста, введите имя нового каталога" + +msgid "Please enter new name:" +msgstr "Пожалуйста, введите новое имя:" + +msgid "Please enter the correct pin code" +msgstr "Пожалуйста, введите правильный PIN-код" + +msgid "Please enter the old PIN code" +msgstr "Пожалуйста, введите старый PIN-код" + +msgid "Please follow the instructions on the TV" +msgstr "Пожалуйста, следуйте инструкциям на ТВ" + +msgid "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." +msgstr "Пожалуйста, обратите внимание, что ранее выбранный носитель недоступен, и вместо него будет использован каталог по умолчанию" + +msgid "Please press OK to continue." +msgstr "Пожалуйста, нажмите ОК для продолжения." + +msgid "Please select a default EPG type..." +msgstr "Пожалуйста, выберите тип EPG по умолчанию..." + +msgid "Please select a playlist to delete..." +msgstr "Пожалуйста, выберите плейлист для удаления..." + +msgid "Please select a playlist..." +msgstr "Пожалуйста, выберите плейлист..." + +msgid "Please select a sub service..." +msgstr "Пожалуйста, выберите подсервис..." + +msgid "Please select a subservice to record..." +msgstr "Пожалуйста, выберите подсервис для записи..." + +msgid "Please select a subservice..." +msgstr "Пожалуйста, выберите подсервис..." + +msgid "Please select an NFI file and press green key to flash!" +msgstr "Пожалуйста, выберите файл NFI, и нажмите зеленую кнопку!" + +msgid "Please select medium to be scanned" +msgstr "Пожалуйста, выберите директорию для сканирования" + +msgid "Please select medium to use as backup location" +msgstr "Пожалуйста, выберите директорию для резерного копирования" + +msgid "Please select tag to filter..." +msgstr "Пожалуйста, выберите тэг для фильтра..." + +msgid "Please select the movie path..." +msgstr "Пожалуйста, выберите путь для видео ..." + +msgid "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Пожалуйста, выберите сетевой интерфейс который будет использован для выхода в интернет\n" +"\n" +"Нажмите ОК для продолжения." + +msgid "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Пожалуйста, выберите беспроводную сеть для подключения.\n" +"\n" +"Нажмите ОК для продолжения." + +msgid "Please set up tuner A" +msgstr "Настройте тюнер А" + +msgid "Please set up tuner B" +msgstr "Настройте тюнер B" + +msgid "Please set up tuner C" +msgstr "Настройте тюнер C" + +msgid "Please set up tuner D" +msgstr "Настройте тюнер D" + +msgid "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." +msgstr "" +"Пожалуйста, используйте клавиши навигации для перемещения экрана PiP.\n" +"Нажмите Bouquet +/- для изменения размеров экрана.\n" +"Нажмите ОК для подверждения и перехода в режим TV или EXIT для отмены." + +msgid "Please use the UP and DOWN keys to select your language. Afterwards press the OK button." +msgstr "Пожалуйста, используйте кнопки ВВЕРХ и ВНИЗ для выбора языка. Далее нажмите ОК." + +msgid "Please wait" +msgstr "" + +msgid "Please wait (downloading channel list)" +msgstr "Подождите (загружается список каналов)" + +msgid "Please wait (downloading softcam)" +msgstr "Подождите (загружаем эмулятор)" + +msgid "Please wait (updating packages)" +msgstr "Подождите (обновляем пакеты)" + +msgid "Please wait for activation of your network configuration..." +msgstr "Подождите, идет активация вашей сетевой конфигурации ..." + +msgid "Please wait while scanning is in progress..." +msgstr "Пожалуйста подождите, пока идет сканирование..." + +msgid "Please wait while we configure your network..." +msgstr "Пожалуйста подождите, пока мы настроим сеть ..." + +msgid "Please wait while we prepare your network interfaces..." +msgstr "Подождите, подготовка сетевых интерфейсов..." + +msgid "Please wait while we test your network..." +msgstr "Подождите пока идет проверка вашей сети..." + +msgid "Please wait while your network is restarting..." +msgstr "Пожалуйста подождите, пока идет перезагрузка сети..." + +msgid "Please wait..." +msgstr "Пожалуйста подождите..." + +msgid "Please wait... Loading list..." +msgstr "Пожалуйста подождите...Загружается список" + +msgid "Plugin browser" +msgstr "Браузер плагинов" + +msgid "Plugin manager activity information" +msgstr "Менеджер плагинов - информация" + +msgid "Plugin manager help" +msgstr "Менеджер плагинов - помощь" + +msgid "Plugins" +msgstr "Плагины" + +msgid "Polarisation" +msgstr "Поляризация" + +msgid "Polarisation:" +msgstr "" + +msgid "Polarization" +msgstr "Поляризация" + +msgid "Polish" +msgstr "Польский" + +msgid "Port A" +msgstr "Порт А" + +msgid "Port B" +msgstr "Порт B" + +msgid "Port C" +msgstr "Порт C" + +msgid "Port D" +msgstr "Порт D" + +msgid "Portuguese" +msgstr "Португальский" + +msgid "Position of completed timers in timerlist" +msgstr "Позиция завершенных таймеров в списке таймеров" + +msgid "Position stored at index" +msgstr "Сохраненный номер позиции" + +msgid "Positioner" +msgstr "Позиционер" + +msgid "Positioner (selecting satellites)" +msgstr "" + +msgid "Positioner Setup" +msgstr "" + +msgid "Positioner setup" +msgstr "Настройка позиционера" + +msgid "Power threshold in mA" +msgstr "Порог тока в mA" + +msgid "Predefined transponder" +msgstr "Предопределенный транспондер" + +msgid "Prefer AC3 track" +msgstr "Приоритет аудио дорожки AC3" + +msgid "Prefer AC3+ track" +msgstr "" + +msgid "Prefer audio track stored by service" +msgstr "Приоритетная аудио дорожка сервиса" + +msgid "Prefer graphical DVB subtitles" +msgstr "Приоритет графических DVB субтитров" + +msgid "Prefer subtitles for hearing impaired" +msgstr "Приоритет субтитров для людей с нарушениями слуха" + +msgid "Prefer subtitles stored by service" +msgstr "Приоритет субтитров, сохраненных сервисом" + +msgid "Preferred tuner" +msgstr "Приоритетный тюнер" + +msgid "Preferred tuner for recordings" +msgstr "" + +msgid "Prepare another USB stick for image flashing" +msgstr "Подготовка другогой USB-флешки для инсталляции системы" + +msgid "Preparing... Please wait" +msgstr "Подготовка ... Пожалуйста, подождите" + +msgid "Press '0' to toggle PiP mode" +msgstr "" + +msgid "Press INFO on your remote control for additional information." +msgstr "Нажмите кнопку INFO на пульте для дополнительной информации." + +msgid "Press MENU on your remote control for additional options." +msgstr "Нажмите кнопку MENU на пульте для дополнительной информации." + +msgid "Press OK on your remote control to continue." +msgstr "Нажмите OK на пульте, чтобы продолжить." + +msgid "Press OK to activate the selected skin." +msgstr "Нажмите OK для активации выбранного скина." + +msgid "Press OK to activate the settings." +msgstr "Нажмите OK для активации настроек." + +msgid "Press OK to edit the settings." +msgstr "Нажмите OK, чтобы изменить настройки." + +#, python-format +msgid "Press OK to get further details for %s" +msgstr "Нажмите ОК, чтобы получить подробную информацию для %s" + +msgid "Press OK to scan" +msgstr "Нажмите OK для поиска." + +msgid "Press OK to select a provider." +msgstr "Нажмите ОК для выбора провайдера." + +msgid "Press OK to select satellites" +msgstr "" + +msgid "Press OK to select/deselect a CAId." +msgstr "Нажмите OK, чтобы выбрать/отменить CAId." + +msgid "Press OK to start the scan" +msgstr "Нажмите OK для начала поиска." + +msgid "Press OK to toggle the selection" +msgstr "" + +msgid "Press OK to toggle the selection." +msgstr "Нажмите ОК для подтверждения или отмены." + +msgid "Press yellow to set this interface as default interface." +msgstr "Установка интерфейса по умолчанию - желтая кнопка." + +msgctxt "button label, 'previous screen'" +msgid "Prev" +msgstr "Предыдущий" + +msgid "Preview" +msgstr "Превью" + +msgid "Preview menu" +msgstr "Меню превью" + +msgid "Preview selected channel" +msgstr "Превью выбранного канала" + +msgid "Primary DNS" +msgstr "Первичный DNS" + +msgid "Priority" +msgstr "Очередность" + +msgid "Process" +msgstr "Процесс" + +msgid "Progress" +msgstr "Прогресс" + +msgid "Progress bar left" +msgstr "прогресс-бар слева" + +msgid "Progress bar right" +msgstr "прогресс-бар справа" + +msgid "Properties of current title" +msgstr "Свойства текущего названия" + +msgid "Protect services" +msgstr "Защитить сервисы" + +msgid "Protect setup" +msgstr "Защитить установки" + +msgid "Provider" +msgstr "Провайдер" + +msgid "Provider to scan" +msgstr "Провайдер для поиска" + +msgid "Providers" +msgstr "Провайдеры" + +msgid "Put TV in standby" +msgstr "Переход ТВ в режим ожидания" + +msgid "Put receiver in standby" +msgstr "Переход ресивера в режим ожидания" + +msgid "Python frontend for /tmp/mmi.socket" +msgstr "Python интерфейс для /tmp/mmi.socket" + +msgid "Quick" +msgstr "Быстро" + +msgid "Quick zap" +msgstr "Быстрое переключение" + +msgid "RF output" +msgstr "RF выход" + +msgid "RGB" +msgstr "RGB" + +msgid "Radio" +msgstr "Радио" + +msgid "Ram disk" +msgstr "Ram диск" + +msgid "Random" +msgstr "Случайно" + +#, python-format +msgid "Rating defined by broadcaster - %d" +msgstr "Рейтинг определен - %d" + +msgid "Rating undefined" +msgstr "Рейтинг неопределен" + +msgid "Really close without saving settings?" +msgstr "Действительно закрыть без сохранения настроек?" + +msgid "Really delete done timers?" +msgstr "Действительно удалить выполненные таймеры?" + +msgid "Really exit the subservices quickzap?" +msgstr "Действительно выйти из меню субсервисов?" + +msgid "Really reboot now?" +msgstr "Действительно перезагрузить сейчас?" + +msgid "Really restart now?" +msgstr "Действительно рестарт сейчас?" + +msgid "Really shutdown now?" +msgstr "Действительно выключить сейчас?" + +msgid "Really upgrade the frontprocessor and reboot now?" +msgstr "Обновить фронтпроцессор и перезагрузить сейчас?" + +msgid "Really upgrade your settop box and reboot now?" +msgstr "Обновить ваш ресивер и перезагрузить сейчас?" + +msgid "Reboot" +msgstr "Перезагрузка" + +msgid "Rec" +msgstr "Запись" + +msgid "Reception settings" +msgstr "" + +msgid "Record" +msgstr "Запись" + +#, python-format +msgid "Record time limited due to conflicting timer %s" +msgstr "Время записи ограничено из-за конфликта таймера %s" + +msgid "Recorded files..." +msgstr "Записанные файлы..." + +msgid "Recording" +msgstr "Запись" + +msgid "Recording in progress" +msgstr "Идет запись" + +msgid "Recording paths" +msgstr "Место записей, таймшифта" + +msgid "Recording type" +msgstr "Тип записи" + +msgid "Recording(s) are in progress or coming up in few seconds!" +msgstr "Запись(и) идет или начнется в ближайшие несколько секунд!" + +msgid "Recordings" +msgstr "Записи" + +msgid "Recordings always have priority" +msgstr "Записи всегда имеют приоритет" + +msgid "Red button..." +msgstr "Красная кнопка..." + +msgid "Reenter new PIN" +msgstr "Повторите новый PIN-код" + +msgid "Refresh rate" +msgstr "Частота обновления" + +msgid "Refresh rate selection." +msgstr "Выбор частоты обновления" + +msgid "Regard deep standby as standby" +msgstr "Считать выключение как режим ожидания" + +msgid "Relative" +msgstr "относительная" + +msgid "Reload" +msgstr "Обновить" + +msgid "Reload black-/white lists" +msgstr "Обновить черный-/белый список" + +msgid "Reloading bouquets and services..." +msgstr "Обновление фаворитов и сервисов...." + +msgid "Remember last service in PiP" +msgstr "" + +msgid "Remember service PIN" +msgstr "Помнить PIN-код сервиса" + +msgid "Remember these settings for each folder" +msgstr "Помнить эти настройки для каждой папки" + +msgid "Reminder, you have chosen to save timeshift file." +msgstr "Напоминаем, вы выбрали сохранение файла таймшифта." + +msgid "Remote control type" +msgstr "Тип пульта ДУ" + +msgid "Removal has completed." +msgstr "Обновление завершено." + +msgid "Remove" +msgstr "Удаление" + +msgid "Remove a mark" +msgstr "Удалить метку" + +msgid "Remove a nameserver entry" +msgstr "удалить данные DNS" + +msgid "Remove bookmark" +msgstr "удалить закладку" + +msgid "Remove completed timers after (days)" +msgstr "Удаление завершенных таймеров через (в днях)" + +msgid "Remove currently selected title" +msgstr "Удалить выбранный заголовок" + +msgid "Remove items from trash can after (days)" +msgstr "Удалять записи из корзины через (в днях)" + +msgid "Remove plugins" +msgstr "Удаление плагинов" + +msgid "Remove title" +msgstr "Удалить описание" + +msgid "Removing" +msgstr "Удаление" + +#, python-format +msgid "Removing directory %s failed. (Maybe not empty.)" +msgstr "Ошибка удаления %s каталога. (Возможно он не пуст.)" + +msgid "Removing partition table" +msgstr "Не удалось создать раздел" + +msgid "Rename" +msgstr "Переименовать" + +msgid "Repeat" +msgstr "Повтор" + +msgid "Repeat type" +msgstr "Тип повтора" + +msgid "Repeating event currently recording... What do you want to do?" +msgstr "Повторяющееся событие сейчас записывается... Что вы хотите сделать?" + +msgid "Repeats" +msgstr "Повторы" + +msgid "Require authentication for http streams" +msgstr "" + +msgid "Required medium type:" +msgstr "Требуемый тип носителя:" + +msgid "Rereading partition table" +msgstr "Не удалось создать раздел" + +msgid "Reserved" +msgstr "Зарезервировано" + +msgid "Reset" +msgstr "Сброс" + +msgid "Reset and renumerate title names" +msgstr "Сбросить и перенумеровать имена названий" + +msgid "Reset playback position" +msgstr "Сброс позиции воспроизведения" + +msgid "Reset video enhancement settings to system defaults?" +msgstr "Сброс настроек видео по умолчанию?" + +msgid "Reset video enhancement settings to your last configuration?" +msgstr "Сброс настроек видео к последней конфигурации?" + +msgid "Resolution" +msgstr "Разрешение" + +msgid "Restart" +msgstr "Перезагрузка" + +msgid "Restart GUI now?" +msgstr "Рестарт GUI сейчас?" + +msgid "Restart enigma" +msgstr "Рестарт энигма" + +msgid "Restart network" +msgstr "Перезапустить сеть" + +msgid "Restart test" +msgstr "Перезапустить тест" + +msgid "Restart your network connection and interfaces.\n" +msgstr "Перезагрузка сетевых подключений и интерфейсов.\n" + +msgid "Restore" +msgstr "Восстановить" + +msgid "Restore backups" +msgstr "Востановление резрвных копий" + +msgid "Restore is running..." +msgstr "Выполняется восстановление..." + +msgid "Restore system settings" +msgstr "Восстановить системные настройки" + +msgid "Restoring..." +msgstr "Востановление..." + +msgid "Resume from last position" +msgstr "Возобновить с последней позиции" + +#, python-format +msgid "Resume position at %s" +msgstr "Текущая позиция %s" + +#. TRANSLATORS: The string "Resuming playback" flashes for a moment +#. TRANSLATORS: at the start of a movie, when the user has selected +#. TRANSLATORS: "Resume from last position" as start behavior. +#. TRANSLATORS: The purpose is to notify the user that the movie starts +#. TRANSLATORS: in the middle somewhere and not from the beginning. +#. TRANSLATORS: (Some translators seem to have interpreted it as a +#. TRANSLATORS: question or a choice, but it is a statement.) +msgid "Resuming playback" +msgstr "Возобновление воспроизведения" + +msgid "Return to movie list" +msgstr "Вернуться к списку фильмов" + +msgid "Return to previous service" +msgstr "Вернуться на предыдущий сервис" + +msgid "Reverse bouquet buttons" +msgstr "" + +msgid "Reverse list" +msgstr "" + +msgid "Rewind speeds" +msgstr "Скорость перемотки назад" + +msgid "Rewrap teletext subtitles" +msgstr "Перепаковать телетекст субтитров" + +msgid "Right" +msgstr "Правый" + +msgid "Right from servicename" +msgstr "справа от названия сервиса" + +msgid "Roll-off" +msgstr "Roll-off фактор" + +msgid "Romanian" +msgstr "Румынский" + +msgid "Root directory" +msgstr "Корневой каталог" + +msgid "Rotor step position:" +msgstr "Шаг позиции ротора:" + +msgid "Rotor turning speed" +msgstr "Скорость вращения мотора" + +msgid "Round start time on" +msgstr "Вокруг времени начала на" + +msgid "Russian" +msgstr "Русский" + +msgid "S-Video" +msgstr "S-Видео" + +msgid "SID" +msgstr "SID" + +msgid "SINGLE LAYER DVD" +msgstr "Однослойный ДВД" + +msgid "SNR" +msgstr "SNR" + +msgid "SNR:" +msgstr "SNR:" + +msgid "SSID:" +msgstr "SSID:" + +msgid "Same resolution as skin" +msgstr "разрешение как в скине" + +msgid "Sat" +msgstr "Сб" + +msgid "Satellite" +msgstr "Спутник" + +msgid "Satellite dish setup" +msgstr "Настройки спут. оборудования" + +msgid "Satellite equipment" +msgstr "Спутниковое оборудование" + +msgid "Satellite equipment setup" +msgstr "Настройки спут. оборудования" + +msgid "Satellite longitude:" +msgstr "Долгота спутника:" + +msgid "Satellites" +msgstr "Спутники" + +msgid "Satfinder" +msgstr "Поиск спутника" + +msgid "Sats" +msgstr "Спутники" + +msgid "Saturation" +msgstr "Насыщеность" + +msgid "Saturday" +msgstr "Суббота" + +msgid "Save" +msgstr "Сохранить" + +msgid "Save playlist" +msgstr "сохранить плейлист" + +msgid "Save timeshift file" +msgstr "Сохранить файл таймшифта" + +msgid "Save timeshift file in movie directory" +msgstr "Сохранить файл таймшифта в каталог movie" + +msgid "Scaler sharpness" +msgstr "Чёткость" + +msgid "Scaling mode" +msgstr "Режим вычисления" + +msgid "Scan" +msgstr "Сканирование" + +msgid "Scan " +msgstr "Сканирование " + +#. TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' +#, python-format +msgid "Scan %s" +msgstr "Сканирование %s" + +#. TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' +#, python-format +msgid "Scan %s band" +msgstr "Диапазон %s сканирования" + +msgid "Scan additional SR" +msgstr "Сканировать дополн. SR" + +msgid "Scan files..." +msgstr "Сканировать файлы..." + +msgid "Scan wireless networks" +msgstr "Сканировать беспроводные сети" + +msgid "Scan your network for wireless access points and connect to them using your selected wireless device.\n" +msgstr "Сканирование сети для поиска беспроводных точек доступа и подключения к выбранному устройству.\n" + +#, python-format +msgid "Scanning %s..." +msgstr "Сканирование %s..." + +#. TRANSLATORS: The stb is performing a channel scan, progress percentage is printed in '%d' (and '%%' will show a single '%' symbol) +#, python-format +msgid "Scanning - %d%% completed" +msgid_plural "Scanning - %d%% completed" +msgstr[0] "Сканирование - %d%% завершено" +msgstr[1] "Сканирование - %d%% завершено" +msgstr[2] "Сканирование - %d%% завершено" + +#, python-format +msgid "Scanning completed, %d channel found" +msgid_plural "Scanning completed, %d channels found" +msgstr[0] "Сканирование завершено, %d канал найден" +msgstr[1] "Сканирование завершено, %d канала найдено" +msgstr[2] "Сканирование завершено, %d каналов найдено" + +msgid "Scanning failed!" +msgstr "Ошибка сканирования!" + +msgid "Scanning..." +msgstr "Сканирование..." + +msgid "Scans default lamedbs sorted by satellite with a connected dish positioner" +msgstr "Сканировать lamedb по спутникам с подключенным мотоподвесом" + +msgid "Search east" +msgstr "Поиск на востоке" + +msgid "Search west" +msgstr "Поиск на западе" + +msgid "Searching" +msgstr "Поиск" + +msgid "Searching east ..." +msgstr "Поиск на востоке ..." + +msgid "Searching for available updates. Please wait..." +msgstr "Поиск доступных обновлений. Пожалуйста подождите ..." + +msgid "Searching for new installed or removed packages. Please wait..." +msgstr "Поиск новых пакетов,установки или удаления. Пожалуйста подождите ..." + +msgid "Searching west ..." +msgstr "Поиск на западе ..." + +msgid "Second cable of motorized LNB" +msgstr "" + +msgid "Secondary DNS" +msgstr "Вторичный DNS" + +msgid "Seek" +msgstr "Перемотка" + +msgid "Seek backward" +msgstr "Перемотка назад" + +msgid "Seek backward (enter time)" +msgstr "Перемотать назад (введите время)" + +msgid "Seek forward" +msgstr "Перемотка вперед" + +msgid "Seek forward (enter time)" +msgstr "Перемотать вперед (введите время)" + +msgid "Select" +msgstr "Выбрать" + +msgid "Select CAId" +msgstr "Выбор CAId" + +msgid "Select HDD" +msgstr "Выбрать HDD" + +msgid "Select a bouquet" +msgstr "Выбрать букет" + +msgid "Select a movie" +msgstr "Выбрать видео" + +msgid "Select a network adapter" +msgstr "Выбор сетевого адаптера" + +msgid "Select a skin" +msgstr "Выбрать скин" + +msgid "Select a tuner" +msgstr "Выбрать тюнер" + +msgid "Select a wireless network" +msgstr "Выберите беспроводную сеть" + +msgid "Select action" +msgstr "" + +#, python-format +msgid "Select action for timer %s:" +msgstr "" + +msgid "Select all" +msgstr "" + +msgid "Select an image to be downloaded" +msgstr "Выберите прошивку для загрузки" + +msgid "Select audio track" +msgstr "Выбор аудио дорожки" + +msgid "Select backup files" +msgstr "Выбрать файлы бэкапа" + +msgid "Select backup location" +msgstr "Выбрать расположение бэкапа" + +msgid "Select channel to record from" +msgstr "Выбрать канал для записи с" + +msgid "Select copy destination for:" +msgstr "Выбор места для копии:" + +msgid "Select default EPG type..." +msgstr "Выбор типа EPG по умолчанию..." + +msgid "Select desired image from feed list" +msgstr "Выберите желаемый имидж из списка" + +msgid "Select destination for:" +msgstr "Выбор места для:" + +msgid "Select files for backup." +msgstr "Выбор файлов для резервного копирования." + +msgid "Select files/folders to backup" +msgstr "Выбор файлов/папок для резервного копирования." + +msgid "Select input device" +msgstr "Выберите устройства ввода" + +msgid "Select input device." +msgstr "Выбор устройства ввода" + +msgid "Select interface" +msgstr "Выберите интерфейс" + +msgid "Select location" +msgstr "Выбор расположения" + +msgid "Select movie" +msgstr "Выбор видео" + +msgid "Select provider to add..." +msgstr "Выбор провайдера для добавления..." + +msgid "Select refresh rate" +msgstr "Выберите частоту обновления" + +msgid "Select satellites" +msgstr "" + +msgid "Select service to add..." +msgstr "Выбор сервиса для добавления..." + +msgid "Select sort method:" +msgstr "" + +msgid "Select target folder" +msgstr "Выбрать целевую папку" + +msgid "Select the movie path" +msgstr "выбрать путь к видео" + +msgid "Select upgrade source" +msgstr "Выбор источника обновления" + +msgid "Select upgrade source to edit." +msgstr "Выбор источника обновления для редактирования." + +msgid "Select video input with up/down buttons" +msgstr "Выберите видеовход кнопками вверх/вниз" + +msgid "Select video mode" +msgstr "Выберите видеорежим" + +msgid "Select wireless network" +msgstr "Выберите беспроводную сеть" + +msgid "Select your provider, and press OK to start the scan" +msgstr "Выберите провайдера и нажмите ОК для сканирования" + +msgid "Selecting satellites 1 (USALS)" +msgstr "" + +msgid "Selecting satellites 2 (USALS)" +msgstr "" + +msgid "Send DiSEqC only on satellite change" +msgstr "Отправить DiSEqC только при смене спутника" + +msgid "Separate titles with a main menu" +msgstr "Отдельные главы в главном меню" + +msgid "Sequence repeat" +msgstr "Последовательность повторения" + +msgid "Serbian" +msgstr "Сербский" + +msgid "Service" +msgstr "Сервис" + +msgid "Service has been added to the favourites." +msgstr "Сервис был добавлен в фавориты." + +msgid "Service has been added to the selected bouquet." +msgstr "Сервис был добавлен в выбранный пакет." + +msgid "Service info" +msgstr "Информация о сервисе" + +msgid "" +"Service invalid!\n" +"(Timeout reading PMT)" +msgstr "" +"Недействительный сервис!\n" +"(Тайм-аут чтения PMT)" + +msgid "Service name" +msgstr "Название сервиса" + +msgid "" +"Service not found!\n" +"(SID not found in PAT)" +msgstr "" +"Сервис не найден!\n" +"(SID не найден в PAT)" + +msgid "Service reference" +msgstr "Референс" + +msgid "Service scan" +msgstr "Сканирование сервисов" + +msgid "Service searching" +msgstr "Поиск сервисов" + +msgid "Service title mode" +msgstr "Режим названия сервиса" + +msgid "" +"Service unavailable!\n" +"Check tuner configuration!" +msgstr "" +"Сервис не доступен!\n" +"Проверьте настройки тюнера!" + +msgid "Services" +msgstr "Сервисы" + +msgid "Set default" +msgstr "" + +msgid "Set end time" +msgstr "Установить время окончания" + +msgid "Set fixed" +msgstr "Фиксировать" + +msgid "Set fps for external subtitles" +msgstr "Набор кадров в секунду для внешних субтитров" + +msgid "Set interface as default Interface" +msgstr "Установить интерфейс как дефолтный" + +msgid "Set limits" +msgstr "Набор ограничений" + +msgid "Set the type of the progress indication in the channel selection screen." +msgstr "Установите тип отображения прогресса в меню выбора каналов." + +msgid "Set time window to 1 hour" +msgstr "Установка времени окна на 1 час" + +msgid "Set time window to 2 hours" +msgstr "Установка времени окна на 2 часа" + +msgid "Set time window to 3 hours" +msgstr "Установка времени окна на 3 часа" + +msgid "Set time window to 4 hours" +msgstr "Установка времени окна на 4 часа" + +msgid "Set time window to 5 hours" +msgstr "Установка времени окна на 5 часов" + +msgid "Set time window to 6 hours" +msgstr "Установка времени окна на 6 часов" + +msgid "Set voltage and 22KHz" +msgstr "Установить напряжение и 22КГц" + +msgid "Settings" +msgstr "Установки" + +msgid "Setup" +msgstr "Настройка" + +msgid "Setup menu" +msgstr "Меню настроек" + +msgid "Setup mode" +msgstr "Режим настроек" + +msgid "Setup your positioner" +msgstr "Настройки вашего позиционера" + +msgid "Setup your satellite equipment" +msgstr "Настройки спутникового оборудования" + +#, python-format +msgid "Shall the USB stick wizard proceed and program the image file %s into flash memory?" +msgstr "Должен ли мастер USB-флеша установить имидж %s во внутреннюю флеш-память?" + +msgid "Sharpness" +msgstr "Резкость" + +msgid "Short filenames" +msgstr "Короткое название" + +msgid "Show EIT now/next in infobar" +msgstr "Показать EIT сейчас/далее в инфобаре" + +msgid "Show EPG for current channel..." +msgstr "Показать EPG текущего канала..." + +msgid "Show EPG..." +msgstr "Показать EPG..." + +msgid "Show Games show" +msgstr "Показ игровых шоу" + +msgid "Show SNR percentage instead of dB value" +msgstr "Показать проценты SNR вместо значения dB в инфобаре" + +msgid "Show VCR scart on main menu" +msgstr "Показать 'Видеомагнитофон' в главном меню" + +msgid "Show WLAN status" +msgstr "Показать состояние WLAN" + +msgid "Show animation while busy" +msgstr "Показывать анимацию(спиннер), когда система занята" + +msgid "Show background in radio mode" +msgstr "Показать фоновую заставку в режиме радио" + +msgid "Show bouquet selection menu" +msgstr "Показать меню выбора фаворитов" + +msgid "Show busy indicator when the system is busy." +msgstr "Показывать индикатор на экране при занятости системы." + +msgid "Show channel numbers in channel selection" +msgstr "Показать номер канала в селекторе каналов" + +msgid "Show columns" +msgstr "" + +msgid "Show crypto icons" +msgstr "" + +msgid "Show crypto info in infobar" +msgstr "Показать крипто данные эмулятора в инфобаре" + +msgid "Show detailed event info" +msgstr "Показать детально инфо события" + +msgid "Show event details" +msgstr "Показать детали события" + +msgid "Show event-progress in channel selection" +msgstr "Вид прогресса события в селекторе каналов" + +msgid "Show extended description" +msgstr "показать расширенное описание" + +msgid "Show extensions..." +msgstr "Показать дополнения..." + +msgid "Show icon for new/unseen items" +msgstr "Показ иконки для новых/невидимых элементов" + +msgid "Show in extensions menu" +msgstr "Показать плагин в меню дополнений" + +msgid "Show info" +msgstr "Показать инфо" + +msgid "Show info line" +msgstr "показать инфолинию" + +msgid "Show infobar on channel change" +msgstr "Показать инфобар при смене каналов" + +msgid "Show infobar on event change" +msgstr "Показать инфобар при смене событий" + +msgid "Show infobar on skip forward/backward" +msgstr "Показать инфобар при перемотке вперед/назад" + +msgid "Show latest commits on sourceforge" +msgstr "" + +msgid "Show message when recording starts" +msgstr "Показать сообщение при начале записи" + +msgid "Show movie lengths in movielist" +msgstr "Показать длительность видео в списке видео" + +msgid "Show multi channel EPG" +msgstr "" + +msgid "Show picons in channel list" +msgstr "" + +msgid "Show positioner movement" +msgstr "Показать движение позиционера" + +msgid "Show screensaver" +msgstr "Запустить хранитель экрана через" + +msgid "Show second infobar" +msgstr "Показать второй инфобар" + +msgid "Show service type icons" +msgstr "Показать иконки типа сервиса" + +msgid "Show services beginning with" +msgstr "Показывать сервисы начинающиеся с" + +msgid "Show shutdown menu" +msgstr "показать меню выключения" + +msgid "Show single service EPG" +msgstr "" + +msgid "Show status icons in Movielist" +msgstr "Показать иконку статуса в списке видео" + +msgid "Show status icons in movie list" +msgstr "Показать иконку статуса в списке видео" + +msgid "Show status icons in movielist" +msgstr "Показать иконку статуса в списке видео" + +msgid "Show tag menu" +msgstr "показать меню тегов" + +msgid "Show the radio player..." +msgstr "Перейти на радио плеер..." + +msgid "Show the tv player..." +msgstr "Перейти на тв плеер..." + +msgid "Show warning when timeshift is stopped" +msgstr "Показать предупреждение при остановке таймшифта" + +msgid "Shows the state of your wireless LAN connection.\n" +msgstr "Показывает состояние вашего беспроводного соединения.\n" + +msgid "Shuffle playlist" +msgstr "перемешать плейлист" + +msgid "Shutdown" +msgstr "Выключить" + +msgid "Shutdown when in Standby" +msgstr "Выключение в режиме ожидания" + +msgid "Side by side" +msgstr "Лево и право" + +msgid "Signal OK, proceeding" +msgstr "Сигнал ОК,в процессе" + +msgid "Signal quality" +msgstr "Качество сигнала" + +msgid "Signal strength:" +msgstr "Сила сигнала:" + +msgid "Signal: " +msgstr "Сигнал: " + +msgid "Similar" +msgstr "Аналогичный" + +msgid "Similar broadcasts:" +msgstr "Аналогичные передачи:" + +msgid "Simple" +msgstr "Простой" + +msgid "Simple titleset (compatibility for legacy players)" +msgstr "Простой заголовок (совместимость с DVD плеерами)" + +msgid "Single" +msgstr "Одиночный" + +msgid "Single EPG" +msgstr "Одиночное EPG" + +msgid "Single satellite" +msgstr "Один спутник" + +msgid "Single step (GOP)" +msgstr "Один шаг (GOP)" + +msgid "Single transponder" +msgstr "Один транспондер" + +msgid "Site latitude" +msgstr "Широта по сайту" + +msgid "Site longitude" +msgstr "Долгота по сайту" + +msgid "Skin" +msgstr "Выбор скина" + +msgid "Skins" +msgstr "Скины" + +msgid "Skip empty services" +msgstr "Пропускать пустые сервисы" + +msgid "Skip internet connection check (disables automatic package installation)" +msgstr "Пропустить проверку интернет соединения (отключает автоматическую установку пакетов)" + +msgid "Sleep timer" +msgstr "Таймер сна" + +msgid "SleepTimer Configuration" +msgstr "Настройки таймера сна" + +msgid "Sleeptimer" +msgstr "Таймер сна" + +msgid "Slide picture in loop" +msgstr "циклический показ слайдов" + +msgid "Slide show interval (sec.)" +msgstr "Интервал слайдшоу (сек.)" + +#, python-format +msgid "Slot %d" +msgstr "Слот %d" + +msgid "Slovak" +msgstr "Словацкий" + +msgid "Slovenian" +msgstr "Словенский" + +msgid "Slow" +msgstr "Медленно" + +msgid "Slow motion speeds" +msgstr "Низкая скорость" + +msgid "Small progress" +msgstr "маленький прогресс" + +msgid "Social/Political/Economics" +msgstr "Социальное/Политика/Экономика" + +msgid "SoftCam / CI" +msgstr "Эму менеджер / CI" + +msgid "Softcam type" +msgstr "Тип эмулятора" + +msgid "Software" +msgstr "Софт" + +msgid "Software management" +msgstr "Менеджер управления софтом" + +msgid "Software manager setup" +msgstr "Настройки менеджера софта" + +msgid "Software restore" +msgstr "Восстановление софта" + +msgid "Software update" +msgstr "Обновление софта" + +msgid "Softwaremanager information" +msgstr "Информация менеджера софта" + +msgid "Some plugins are not available:\n" +msgstr "Некоторые плагины недоступны:\n" + +#, python-format +msgid "Sorry, %s has not been installed!" +msgstr "Извините, %s не установлен!" + +msgid "Sorry, deleting directories can (for now) only be done through the trash can." +msgstr "Извините, удаление директорий может (пока) быть сделано только через корзину," + +msgid "Sorry, no backups found!" +msgstr "Не найдены резервные копии!" + +msgid "Sorry, no details available!" +msgstr "Извините, нет детального описания!" + +msgid "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." +msgstr "" +"Место сохранения не доступно к записи.\n" +"Пожалуйста,выберите другое." + +msgid "Sort" +msgstr "Сортировка" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort A-Z" +msgstr "Сортировка А-Я" + +msgid "Sort by" +msgstr "" + +msgid "Sort list:" +msgstr "" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort time" +msgstr "По времени" + +msgid "Sound" +msgstr "Звук" + +msgid "Sound carrier" +msgstr "Звук носителя" + +msgid "Source request" +msgstr "запрос источника" + +msgid "South" +msgstr "Юг" + +msgid "Spanish" +msgstr "Испанский" + +msgid "Specify the end time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the end time until the inactivity sleeptimer should be ignored" +msgstr "Установите окончание периода для игнорирования действия таймера неактивности." + +msgid "Specify the start time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the start time when the inactivity sleeptimer should be ignored" +msgstr "Установите начало периода для игнорирования действия таймера неактивности." + +msgid "Specify timeframe to ignore inactivity sleeptimer" +msgstr "Период времени игнорирования таймера неактивности" + +msgid "Specify timeframe to ignore the shutdown in standby" +msgstr "" + +msgid "Split preview mode" +msgstr "Режим предварительного просмотра" + +msgid "Splitscreen" +msgstr "" + +msgid "Sports" +msgstr "Спорт" + +msgid "Standard" +msgstr "Cтандарт" + +msgid "Standart list" +msgstr "" + +msgid "Standby" +msgstr "Режим ожидания" + +msgid "Standby / restart" +msgstr "Меню выключения" + +msgid "Standby after current event" +msgstr "Режим ожидания после текущего события" + +#, python-format +msgid "Standby fan %d PWM" +msgstr "Режим ожидания вентилятора %d PWM" + +#, python-format +msgid "Standby fan %d voltage" +msgstr "" + +msgid "Standby in " +msgstr "Режим ожидания через " + +msgid "StandbyLED" +msgstr "" + +msgid "Start from the beginning" +msgstr "Начать с самого начала" + +msgid "Start offline decode" +msgstr "Старт отложенного декодирования" + +msgid "Start recording?" +msgstr "Начать запись?" + +msgid "Start test" +msgstr "Начать тест" + +msgid "Start time" +msgstr "Время начала" + +msgid "Start time to ignore inactivity sleeptimer" +msgstr "Начало периода игнорирования таймера неактивности" + +msgid "Start time to ignore shutdown in standby" +msgstr "" + +msgid "Start timeshift" +msgstr "Начать таймшифт" + +msgid "Start with list screen" +msgstr "Начало с режима списка" + +msgid "Starting on" +msgstr "Начиная с" + +msgid "Startup the set top box in standby" +msgstr "" + +msgid "Startup to Standby" +msgstr "" + +msgid "Step east" +msgstr "Шаг на восток" + +msgid "Step west" +msgstr "Шаг на запад" + +msgid "Stepped east" +msgstr "Шаг на восток" + +msgid "Stepped west" +msgstr "Шаг на запад" + +msgid "Stop" +msgstr "Стоп" + +msgid "Stop PiP" +msgstr "отключить PiP" + +msgid "Stop current event and disable coming events" +msgstr "Остановить текущее событие и отключить следующие события" + +msgid "Stop current event but not coming events" +msgstr "Остановить текущее событие, но не следующие события" + +msgid "Stop entry" +msgstr "остановить вход" + +msgid "Stop playing this movie?" +msgstr "Остановить воспроизведение этого видео?" + +msgid "Stop recording" +msgstr "Остановить запись" + +msgid "Stop recording and delete" +msgstr "Остановить и удалить запись" + +msgid "Stop service on return to movie list" +msgstr "" + +msgid "Stop test" +msgstr "Остановить тест" + +msgid "Stop testing plane after # failed transponders" +msgstr "Остановить тестирование после # ошибки транспондера" + +msgid "Stop testing plane after # successful transponders" +msgstr "Остановить тестирование после # исправного транспондера" + +msgid "Stop timer recording" +msgstr "Остановка записей по таймеру" + +msgid "Stop timeshift" +msgstr "Остановить таймшифт" + +msgid "Stop timeshift?" +msgstr "Остановить таймшифт?" + +msgid "Stopped" +msgstr "Остановлено" + +msgid "Store at index" +msgstr "Сохранить номер" + +msgid "Store position" +msgstr "Сохранить позицию" + +msgid "Stored position" +msgstr "Сохраненное положение" + +msgid "Stream" +msgstr "Порт стриминга" + +msgid "Stream request" +msgstr "Порт стриминга" + +msgid "Strongest position" +msgstr "Лучшая позиция" + +msgid "Subservice list..." +msgstr "Список суб сервисов..." + +msgid "Subservices" +msgstr "Суб сервисы" + +msgid "Subtitle Quickmenu" +msgstr "Настройки субтитров" + +msgid "Subtitle alignment" +msgstr "Выравнивание субтитров" + +msgid "Subtitle border width" +msgstr "Ширина каемки субтитров" + +msgid "Subtitle delay when timing is bad" +msgstr "Задержка субтитров при неправильном времени" + +msgid "Subtitle delay when timing lacks" +msgstr "Задержка субтитров при нехватке времени" + +msgid "Subtitle font size" +msgstr "Размер шрифта субтитров" + +msgid "Subtitle language selection 1" +msgstr "Выбор языка субтитров 1" + +msgid "Subtitle language selection 2" +msgstr "Выбор языка субтитров 2" + +msgid "Subtitle language selection 3" +msgstr "Выбор языка субтитров 3" + +msgid "Subtitle language selection 4" +msgstr "Выбор языка субтитров 4" + +msgid "Subtitle position" +msgstr "Позиция субтитров" + +msgid "Subtitle selection" +msgstr "Выбор субтитров" + +msgid "Subtitle selection..." +msgstr "Выбор субтитров" + +msgid "Subtitle settings" +msgstr "Меню настройки субтитров" + +msgid "Subtitles" +msgstr "Субтитры" + +msgid "Sun" +msgstr "Вс" + +msgid "Sunday" +msgstr "Воскресенье" + +msgid "Swap PiP and main picture" +msgstr "Поменять PiP и основное изображение" + +msgid "Swap services" +msgstr "Поменять местами сервисы" + +msgid "Swedish" +msgstr "Шведский" + +msgid "Switch TV to correct input" +msgstr "Переключить ТВ на корректный вход" + +msgid "Switch between filelist/playlist" +msgstr "Сменить список файлов/плейлист" + +msgid "Switch between normal mode and list mode" +msgstr "Переход от нормального режима к списку" + +msgid "Switch to HDMI in mode" +msgstr "" + +msgid "Switch to filelist" +msgstr "переключить на список файлов" + +msgid "Switch to next channel" +msgstr "" + +msgid "Switch to next channel in history" +msgstr "Переключить на следующий канал в истории" + +msgid "Switch to next sub service" +msgstr "Перейти на следующий суб сервис" + +msgid "Switch to playlist" +msgstr "переключить на плейлист" + +msgid "Switch to previous channel" +msgstr "Переключить на предыдущий канал" + +msgid "Switch to previous channel in history" +msgstr "Переключить на предыдущий канал в истории" + +msgid "Switch to previous sub service" +msgstr "Перейти на предыдущий суб сервис" + +msgid "Switchable tuner types:" +msgstr "Переключаемые типы тюнеров:" + +msgid "Symbol rate" +msgstr "Скорость потока" + +msgid "Symbol rate:" +msgstr "" + +msgid "Sync failure moving back to origin !" +msgstr "Сбой синхронизации,возврат к оригиналу!" + +msgid "System" +msgstr "Система" + +#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) +msgid "TRANSLATOR_INFO" +msgstr "Dima-73 <Dima-73@inbox.lv>" + +msgid "TS file is too large for ISO9660 level 1!" +msgstr "TS файл слишком большой для ISO9660 level 1!" + +msgid "TSID" +msgstr "TSID" + +msgid "TV physical address report" +msgstr "Оповещение физического адреса ТВ" + +msgid "TXT PID" +msgstr "TXT ПИД" + +msgid "Table of contents for collection" +msgstr "Содержание коллекции" + +msgid "Tags" +msgstr "Теги" + +msgid "Teletext subtitle color" +msgstr "Цвет телетекста субтитров" + +msgid "Temperature and fan control" +msgstr "Родительский контроль" + +msgid "Terrestrial" +msgstr "Наземный" + +msgid "Terrestrial provider" +msgstr "Наземный провайдер" + +msgid "Test DiSEqC settings" +msgstr "Тест настроек DiSEqC" + +msgid "Test mode" +msgstr "Режим теста" + +msgid "Test the network configuration of your receiver.\n" +msgstr "Тест сетевой конфигурации вашего ресивера.\n" + +msgid "Test type" +msgstr "Тип теста" + +msgid "Text color" +msgstr "цвет текста" + +msgid "Thai" +msgstr "Тайский" + +msgid "" +"Thank you for using the wizard.\n" +"Please press OK to continue." +msgstr "" +"Спасибо Вам за использование мастера.\n" +"Нажмите ОК для продолжения." + +msgid "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." +msgstr "" +"Спасибо Вам за использование мастера. Ваш ресивер готов к работе.\n" +"Пожалуйста, нажмите OK для начала работы вашего ресивера." + +msgid "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?" +msgstr "DVD стандарт не поддерживает H.264 (HDTV) видео потоков. Вы хотите создать специальный формат DVD (который возможно не будет проигрываться в стационарных DVD проигрывателях)?" + +msgid "The PIN code has been changed successfully." +msgstr "ПИН-код успешно изменен." + +msgid "The PIN codes you entered are different." +msgstr "Введенный PIN код не верный" + +msgid "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" +msgstr "" +"USB-флеш подготовлен как загрузочный.\n" +"Теперь Вы можете установить NFI образ!" + +msgid "The backup failed. Please choose a different backup location." +msgstr "Сохранение не выполнено. Выберите другое место ресположения. " + +#, fuzzy, python-format +msgid "" +"The current beta image might not be stable.\n" +"For more information see %s." +msgstr "Текущая бета версия может быть не стабильна" + +#, python-format +msgid "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." +msgstr "" +"В эту папку %s записать нельзя.\n" +"Убедитесь, что взамен выбрали нужную папку." + +#, python-format +msgid "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" +msgstr "" +"Найдено устройство:\n" +"\n" +"%s\n" +"\n" +"Хотите установить USB flasher на это устройство?" + +msgid "The following files were found..." +msgstr "Следующие файлы были найдены ..." + +msgid "The md5sum validation failed, the file may be corrupted!" +msgstr "MD5 сумма файла неверна, файл вероятно поврежден!" + +msgid "" +"The network wizard extension is not installed!\n" +"Please install it." +msgstr "" +"Плагин Witeless LAN не установлен!\n" +"Пожалуйста, установите его." + +#, python-format +msgid "The path %s already exists." +msgstr "Этот путь %s уже существует." + +msgid "The pin code you entered is wrong." +msgstr "Введенный PIN-код неверный." + +#, python-format +msgid "The results have been written to %s." +msgstr "Результаты были записаны в %s." + +msgid "The sleep timer has been activated." +msgstr "Таймер сна был включен." + +msgid "The sleep timer has been disabled." +msgstr "Таймер сна был выключен." + +msgid "" +"The software management extension is not installed!\n" +"Please install it." +msgstr "" +"Плагин Witeless LAN не установлен!\n" +"Пожалуйста, установите его." + +#, fuzzy, python-format +msgid "The status of the current beta image could not be checked because %s can not be reached." +msgstr "Статус текущей бета версии не может быть проверен,одна из причин,www.pli-images.org не отвечает" + +msgid "The timer file (timers.xml) is corrupt and could not be loaded." +msgstr "Файл таймеров (timers.xml) поврежден и не может быть загружен." + +msgid "The user interface of your receiver is restarting" +msgstr "Рестарт GUI ресивера" + +msgid "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" +msgstr "" +"Рестарт GUI ресивера\n" +"из-за ошибки в mytest.py" + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." +msgstr "" +"Плагин Wireless LAN не установлен!\n" +"Пожалуйста, установите его и выберите, что делать далее." + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it." +msgstr "" +"Плагин Witeless LAN не установлен!\n" +"Пожалуйста, установите его." + +msgid "The wizard can backup your current settings. Do you want to do a backup now?" +msgstr "Мастер может сохранить Ваши текущие настройки. Вы хотите сделать это сейчас?" + +#, python-format +msgid "The wizard found a configuration backup. Do you want to restore your old settings from %s?" +msgstr "" + +msgid "The wizard is finished now." +msgstr "Мастер закончил работу." + +msgid "There are at least " +msgstr "Найдено по крайней мере " + +#, python-format +msgid "There are at least %s updates available." +msgstr "%s доступных обновлений для вашего ресивера." + +msgid "There are currently no outstanding actions." +msgstr "В текущий момент нет новых обновлений." + +msgid "There are no updates available." +msgstr " доступных обновлений." + +msgid "There is no signal to lock on !" +msgstr "Нет сигнала по этому захвату!" + +msgid "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" +msgstr "" +"Возможно недостаточно места на выбранном разделе. \n" +"Вы действительно хотите продолжить?" + +msgid "This DVD RW medium is already formatted - reformatting will erase all content on the disc." +msgstr "Этот DVD RW уже отформатирован - переформатирование может удалить все содержимое диска." + +msgid "" +"This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!" +msgstr "" +"Этот плагин создает USB-флеш, который может использоваться, чтобы обновить прошивку вашего ресивера без подключения к интернету.\n" +"Во-первых, USB должен быть самозагрузочным.\n" +"Затем файл имиджа NFI нужно загрузить с сервера обновления и сохранить на USB.\n" +"Если у Вас уже есть загрузочный USB, пожалуйста, вставьте. Обьем USB должен быть не менее 64 Мб!" + +msgid "This plugin is installed." +msgstr "Плагин установлен." + +msgid "This plugin is not installed." +msgstr "" +"Плагин Witeless LAN не установлен!\n" +"Пожалуйста, установите его." + +msgid "This plugin will be installed." +msgstr "Плагин будет установлен." + +msgid "This plugin will be removed." +msgstr "Плагин будет удален." + +#, python-format +msgid "This receiver cannot decode %s streams!" +msgstr "Этот ресивер не может декодировать %s потоки!" + +msgid "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration" +msgstr "" +"Этот тест проверяет конфигурацию DNS серверов.\n" +"При появлении сообщения \"не присвоен\":\n" +"- пожалуйста проверьте настройки DHCP, сетевого адаптера и состояние сетевого кабеля\n" +"- Если Вы прописали вручную DNS сервера, пожалуйста проверьте конфигурацию \"DNS сервер\"" + +msgid "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" +msgstr "" +"Этот тест проверяет наличие подключения сетевого кабеля к сетевому адаптеру.\n" +"При появлении сообщения \" нет соединения\":\n" +"- проверьте, что сетевой кабель подключен\n" +"- проверьте, что сетевой кабель не оборван" + +msgid "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" +msgstr "" +"Этот тест проверяет присвоен ли IP адрес сетевому адаптеру..\n" +"При появлении сообщения \" не присвоен\":\n" +"- IP адрес не был найден\n" +"- пожалуйста проверьте настройки DHCP, сетевого адаптера и состояние сетевого кабеля" + +msgid "" +"This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." +msgstr "" +"Этот тест проверяет,включен ли DHCP в настройках сетевого адаптера, для присвоения автоматического IP.\n" +"При появлении сообщения \" отключен\":\n" +"- введите вручную IP адрес при настройке сетевого адаптера .\n" +"- проверьте,что Вы ввели корректную информацию в меню настройка сети.\n" +"При появлении сообщения \" подключен\":\n" +"- это подтверждает, что сформирован рабочий DHCP сервер в Вашей сети." + +msgid "This test detects your configured LAN adapter." +msgstr "Данный тест определит ваш сетевой-адаптер." + +msgid "" +"This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\n" +"Are you sure?" +msgstr "" +"Произойдет (пере-)расчет всех позиций позиционера и все сохранненые позиции и настройки могут быть утеряны!\n" +"Вы уверены в продолжении?" + +msgid "Three" +msgstr "Три" + +msgid "Threshold" +msgstr "Гетеродин" + +msgid "Thu" +msgstr "Чт" + +msgid "Thumbnails" +msgstr "Эскизы" + +msgid "Thursday" +msgstr "Четверг" + +msgid "Time" +msgstr "Время" + +msgid "Time scale" +msgstr "Временной масштаб сетки" + +msgid "Timer" +msgstr "Таймер" + +msgid "Timer Overview" +msgstr "" + +msgid "Timer edit" +msgstr "Редактирование таймера" + +msgid "Timer editor" +msgstr "Редактор таймеров" + +msgid "Timer entry" +msgstr "Ввод таймера" + +msgid "Timer log" +msgstr "Лог таймера" + +msgid "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" +msgstr "" +"Конфликт таймеров обнаружен в timers.xml!\n" +"Пожалуйста, перепроверьте это!" + +msgid "Timer overview" +msgstr "Обзор таймеров" + +msgid "Timer recording location" +msgstr "Место записи по таймеру" + +msgid "Timer sanity error" +msgstr "Ошибка состояния таймера" + +msgid "Timer selection" +msgstr "Выбор таймера" + +msgid "Timer selection..." +msgstr "Выбор таймера..." + +msgid "Timer type" +msgstr "Тип таймера" + +msgid "Timeshift" +msgstr "Таймшифт" + +msgid "Timeshift Live" +msgstr "" + +msgid "Timeshift location" +msgstr "Расположение таймшифта" + +msgid "Timeshift not possible!" +msgstr "Таймшифт не возможен!" + +msgid "Timezone" +msgstr "Часовой пояс" + +msgid "Title" +msgstr "Название" + +msgid "Title properties" +msgstr "Свойства заголовка" + +msgid "Titleset mode" +msgstr "Режим установки заголовка" + +msgid "To audio selection" +msgstr "Выбор звука" + +msgid "To subtitle selection" +msgstr "Выбор субтитров" + +msgid "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." +msgstr "" +"Чтобы обновить ваш ресивер, пожалуйста выполните следующие действия:\n" +"1) Выключите ресивер тумблером сзади и убедитесь, что загрузочный USB подключен.\n" +"2) Включите ресивер и нажмите кнопку ВНИЗ на передней панели ресивера около 10 секунд.\n" +"Дождитесь загрузки и следуйте указаниям Мастера." + +msgid "Today" +msgstr "Сегодня" + +msgid "Toggle a cut mark at the current position" +msgstr "Расположить метку обработки в текущей позиции" + +msgid "Tone amplitude" +msgstr "Тоновый режим" + +msgid "Tone mode" +msgstr "Тоновый режим" + +msgid "Toneburst" +msgstr "Тоновый сигнал" + +msgid "Toneburst A/B" +msgstr "тоновый сигнал A/B" + +msgid "Top and bottom" +msgstr "Верх и низ" + +msgid "Track" +msgstr "Дорожка" + +msgid "Translation" +msgstr "Перевод" + +msgid "Translation:" +msgstr "Перевод:" + +msgid "Translations" +msgstr "" + +msgid "Transmission mode" +msgstr "Режим передачи" + +msgid "Transponder" +msgstr "Транспондер" + +msgid "Transponder type" +msgstr "Тип транспондера" + +msgid "Trash can" +msgstr "Корзина" + +msgid "Tries left:" +msgstr "Осталось попыток:" + +msgid "Try to find used transponders in cable network.. please wait..." +msgstr "Пытаемся найти транспондеры, используемые в кабельной сети .. Пожалуйста, подождите ..." + +msgid "Trying to download a new packetlist. Please wait..." +msgstr "Пытаемся загрузить новый список пакетов. Пожалуйста, подождите..." + +msgid "Tue" +msgstr "Вт" + +msgid "Tuesday" +msgstr "Вторник" + +msgid "Tune" +msgstr "Настройка" + +msgid "Tune and focus" +msgstr "Настройка и фокусировка" + +msgid "Tune failed!" +msgstr "Сбой вещания!" + +msgid "Tuner" +msgstr "Тюнер" + +msgid "Tuner configuration" +msgstr "Настройка тюнера" + +msgid "Tuner is not supported" +msgstr "" + +msgid "Tuner slot" +msgstr "Слот тюнера" + +msgid "Tuner status" +msgstr "Статус тюнера" + +#, python-format +msgid "Tuner status %s" +msgstr "Статус тюнера %s" + +msgid "Tuner type" +msgstr "Тюнер" + +msgid "Turkish" +msgstr "Турецкий" + +msgid "Turn on the power LED during standby." +msgstr "" + +msgid "Turning step size" +msgstr "" + +msgid "Two" +msgstr "Два" + +msgid "Type" +msgstr "Тип" + +msgid "Type of scan" +msgstr "Тип сканирования" + +msgid "USALS" +msgstr "USALS" + +msgid "USALS calibration" +msgstr "Калибровка USALS" + +msgid "USB stick" +msgstr "USB флешь" + +msgid "USB stick wizard" +msgstr "Мастер USB" + +msgid "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Автоматическое обновление в процессе\n" +"Дождитесь перезагрузки ресивера\n" +"Это может занять несколько минут" + +msgid "Undo install" +msgstr "Отмена установки" + +msgid "Undo uninstall" +msgstr "Отмена удаления" + +msgid "Unencrypted" +msgstr "Декодирован" + +msgid "UnhandledKey" +msgstr "Не обработанный ключ" + +msgid "Unicable" +msgstr "Unicable" + +msgid "Unicable LNB" +msgstr "Unicable LNB" + +msgid "Unicable Martix" +msgstr "Unicable Martix" + +msgid "Uninstall" +msgstr "Удалить" + +msgid "Universal LNB" +msgstr "универсальный-LNB" + +msgid "Unknown" +msgstr "<неизвестный>" + +msgid "Unmount" +msgstr "Ошибка отключения" + +msgid "Unsupported" +msgstr "Неизвестная" + +msgid "Update" +msgstr "Обновление" + +msgid "Update and ask to reboot" +msgstr "Обновить и спросить о перезагрузке" + +msgid "Update and reboot (recommended)" +msgstr "Обновить и перезагрузить (рекомендуется)" + +msgid "Update channel list only" +msgstr "Обновить только список каналов" + +#, python-format +msgid "Update completed, %d package was installed." +msgid_plural "Update completed, %d packages were installed." +msgstr[0] "Обновление завершено, %d пакет установлен." +msgstr[1] "Обновление завершено, %d пакета установлено." +msgstr[2] "Обновление завершено, %d пакетов установлено." + +msgid "Update completed. Do you want to reboot your receiver?" +msgstr "Обновление завершено. Хотите перезагрузить ресивер?" + +msgid "Update failed. Your receiver does not have a working internet connection." +msgstr "Обновление не удалось. В вашем ресивере нет работающего интернет-соединения." + +msgid "Update has completed." +msgstr "Обновление завершено." + +msgid "Updatefeed not available." +msgstr "Обновления с фида недоступны." + +msgid "Updating software catalog" +msgstr "Обновление каталога софта" + +msgid "Upgrading" +msgstr "Обновление" + +msgid "Use" +msgstr "Использовать" + +msgid "Use DHCP" +msgstr "Использовать DHCP" + +msgid "Use EIT EPG information when it is available." +msgstr "Использовать информацию EIT EPG, когда она существует." + +msgid "Use FreeSat EPG information when it is available." +msgstr "Использовать информацию FreeSat EPG, когда она существует." + +msgid "Use MHW EPG information when it is available." +msgstr "Использовать информацию MHW EPG, когда она существует." + +msgid "Use Netmed EPG information when it is available." +msgstr "Использовать информацию Netmed EPG, когда она существует." + +msgid "Use TV remote control" +msgstr "Тип пульта ДУ" + +msgid "Use USALS for this sat" +msgstr "Использовать USALS для этого спутника" + +msgid "Use ViaSat EPG information when it is available." +msgstr "Использовать информацию ViaSat EPG, когда она существует." + +msgid "Use Virgin EPG information when it is available." +msgstr "" + +msgid "Use a gateway" +msgstr "Использовать шлюз" + +msgid "Use fastscan channel names" +msgstr "Названия каналов из быстрого поиска" + +msgid "Use fastscan channel numbering" +msgstr "Нумерация каналов из быстрого поиска" + +msgid "Use frequency or channel" +msgstr "" + +msgid "Use individual settings for each directory" +msgstr "Индивид. настройки для каждого каталога" + +msgid "Use interface" +msgstr "Использовать интерфейс" + +msgid "Use official channel numbering" +msgstr "Официальная нумерация каналов" + +msgid "Use original DVB subtitle position" +msgstr "Использовать оригинальную позицию DVB субтитров" + +msgid "Use original teletext position" +msgstr "Использовать исходное положение телетекста" + +msgid "Use power measurement" +msgstr "Использовать измерение мощности" + +msgid "Use the network wizard to configure selected network adapter" +msgstr "Использовать мастер для настройки сети" + +msgid "Use the network wizard to configure your network\n" +msgstr "Использовать мастер для настройки сети\n" + +msgid "Use the up/down keys on your remote control to select an option. After that, press OK." +msgstr "Используйте кнопки вверх и вниз на пульте для выбора опций. После этого нажмите OK." + +msgid "Use the wizard to set up basic features" +msgstr "Пользуйтесь мастером для настройки основных параметров" + +msgid "Use these input device settings?" +msgstr "Использовать эти параметры устройства ввода?" + +msgid "Use these settings?" +msgstr "Использовать эти настройки?" + +msgid "Use this video enhancement settings?" +msgstr "Использовать эти видео настройки?" + +msgid "Use trash can in movielist" +msgstr "Использование корзины в списке фильмов" + +msgid "Used service scan type" +msgstr "Используемый тип сканирования" + +msgid "User - bouquets" +msgstr "Список фаворитов" + +msgid "User defined" +msgstr "Определены пользователем" + +msgid "User defined transponder" +msgstr "" + +msgid "User interface" +msgstr "Интерфейс пользователя" + +msgid "Username" +msgstr "Имя пользователя" + +#, python-format +msgid "Using LNB %d" +msgstr "Используемый LNB %d" + +msgid "Using fixed address" +msgstr "Использовать фиксированнный адрес" + +#, python-format +msgid "Using tuner %s" +msgstr "Используемый тюнер %s" + +msgid "Usually when the subtitle language is the same as the audio language, the subtitles will not be used. Enable this option to allow these subtitles to be used." +msgstr "Обычно когда язык субтитров совпадает с языком аудио, субтитры не показываются. Этот выбор позволяет показывать субтитры, когда они совпадают." + +msgid "VCR scart" +msgstr "Видеомагнитофон" + +msgid "VMGM (intro trailer)" +msgstr "VMGM (трейлер)" + +msgid "Vertical" +msgstr "Вертикальная" + +msgid "Vertical turning speed" +msgstr "Поляризация (V) - скорость поворота" + +msgid "Video PID" +msgstr "Видео PID" + +msgid "Video enhancement preview" +msgstr "Предпросмотр видео настроек" + +msgid "Video enhancement settings" +msgstr "Тонкие настройки видео" + +msgid "Video enhancement setup" +msgstr "Меню видео настроек" + +msgid "Video fine tuning" +msgstr "Настройка экрана" + +msgid "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." +msgstr "" +"Выбор видео входа\n" +"\n" +"Нажмите ОК если вы видите эту страницу на экране ТВ (или выберите другой вход).\n" +"\n" +"Следующий вход будет автоматически выбран через 10 сек." + +msgid "Video mode selection." +msgstr "Выбор режима видео" + +msgid "Video output" +msgstr "Видеовыход" + +msgid "Video setup" +msgstr "Настройка видео" + +msgid "Video wizard" +msgstr "Мастер видеонастроек" + +#, python-format +msgid "Video: %s fps" +msgstr "Видео: %s fps" + +msgid "VideoMode" +msgstr "" + +msgid "Videocodec" +msgstr "Видеокодек" + +msgid "Videoformat" +msgstr "Видеоформат" + +msgid "Videosize" +msgstr "Видеоразмер" + +msgid "View Rass interactive..." +msgstr "Интерактивный просмотр RASS" + +msgid "View details" +msgstr "Показать детали" + +msgid "View list of available " +msgstr "Просмотр списка доступных " + +msgid "View list of available CommonInterface extensions" +msgstr "Просмотр списка доступных дополнений картридера" + +msgid "View list of available EPG extensions." +msgstr "Просмотр списка доступных дополнений EPG" + +msgid "View list of available Satellite equipment extensions." +msgstr "Просмотр списка доступных дополнений спутниковых настроек" + +msgid "View list of available communication extensions." +msgstr "Просмотр списка доступных дополнений связи" + +msgid "View list of available default settings" +msgstr "Просмотр списка доступных дефолтных настроек" + +msgid "View list of available display and userinterface extensions." +msgstr "Просмотр списка доступных дополнений настроек экрана и интерфейса" + +msgid "View list of available multimedia extensions." +msgstr "Просмотр списка доступных дополнений мультимедиа" + +msgid "View list of available networking extensions" +msgstr "Просмотр списка доступных сетевых дополнений" + +msgid "View list of available recording extensions" +msgstr "Просмотр списка доступных дополнений для записи" + +msgid "View list of available skins" +msgstr "Просмотр списка доступных скинов" + +msgid "View list of available software extensions" +msgstr "Просмотр списока доступных программных дополнений" + +msgid "View list of available system extensions" +msgstr "Просмотр списока доступных системных дополнений" + +msgid "View photos..." +msgstr "Просмотр фотографий..." + +msgid "View teletext..." +msgstr "Смотреть телетекст" + +msgid "View video CD..." +msgstr "Смотреть Video CD..." + +msgid "Virtual keyboard" +msgstr "Виртуальная клавиатура" + +msgid "Voltage mode" +msgstr "Режим напряжения" + +msgid "Volume" +msgstr "Громкость" + +msgid "W" +msgstr "W" + +msgid "WEP" +msgstr "WEP" + +msgid "WLAN connection" +msgstr "WLAN соединение" + +msgid "WPA" +msgstr "WPA" + +msgid "WPA or WPA2" +msgstr "WPA или WPA2" + +msgid "WPA2" +msgstr "WPA2" + +msgid "WSS on 4:3" +msgstr "WSS on 4:3" + +msgid "Waiting" +msgstr "Ожидание" + +msgid "Waiting for mount" +msgstr "Ожидание монтирования" + +msgid "Waiting for partition" +msgstr "Не удалось создать раздел" + +msgid "Wakeup" +msgstr "Включение ТВ" + +msgid "Wakeup TV from standby" +msgstr "Пробудить ТВ из режима ожидания" + +msgid "Wakeup receiver for start timer" +msgstr "" + +msgid "Wakeup receiver from standby" +msgstr "Поднять ресивер из режима ожидания" + +msgid "Wakeup signal from TV" +msgstr "Сигнал просыпания от телевизора" + +msgid "Wakeup type" +msgstr "" + +msgid "Warning: no LNB; using factory defaults." +msgstr "Предупреждение: нет LNB; используются заводские настройки." + +msgid "Watch movies..." +msgstr "Воспроизвести записанное видео..." + +msgid "Watch recordings..." +msgstr "запись..." + +msgid "Wed" +msgstr "Ср" + +msgid "Wednesday" +msgstr "Среда" + +msgid "Weekday" +msgstr "День недели" + +msgid "Weighted position" +msgstr "Анализируем позицию" + +msgid "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." +msgstr "" +"Добро пожаловать в редактор видео.\n" +"\n" +"Отметьте место с которого вы хотите начать редактирование. Нажмите OK, выберите 'начало редактирования'.\n" +"\"\n" +"\"После, отметьте точку окончания редактирования, нажмите OK, выберите 'конец редактирования'. Вот и все;)" + +msgid "Welcome to the image upgrade wizard. The wizard will assist you in upgrading the firmware of your receiver by providing a backup facility for your current settings and a short explanation of how to upgrade your firmware." +msgstr "Добро пожаловать в мастер обновления имиджа. Мастер поможет вам в обновлении программного обеспечения вашего ресивера путем сохранения ваших текущих настроек и коротких подсказок по процессу обновления." + +msgid "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" +msgstr "" +"Добро пожаловать.\n" +"\n" +"Если вы хотите подключить ваш ресивер к интернету, этот мастер проведет вас через основные настройки сети вашего ресивера.\n" +"\n" +"Нажмите ОК для начала настройки сети." + +msgid "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." +msgstr "" +"Добро пожаловать.\n" +"\n" +"Этот мастер поможет Вам настроить основные параметры вашего ресивера.\n" +"Нажмите OK на пульте управления для перехода к следующему шагу." + +msgid "Welcome..." +msgstr "Добро пожаловать..." + +msgid "West" +msgstr "Запад" + +msgid "West limit set" +msgstr "Включить ограничение на запад" + +msgid "What do you want to scan?" +msgstr "Что Вы хотите найти?" + +msgid "When enabled the PiP can be closed by the exit button." +msgstr "Если включено, то можно закрыть экран PiP с помощью кнопки выход." + +msgid "When enabled the arrow buttons around the OK button will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled the left, right, CH+/-, B+/-, P+/- buttons will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled you can specify a timeframe to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "When enabled you can specify a timeframe were the inactivity sleeptimer is ignored. Not the detection is disabled during this timeframe but the inactivity timeout is disabled" +msgstr "Если включено, то установите период времени игнорирования действия для таймера неактивности." + +msgid "When enabled you can zap channels with the CH+/-, B+/-, P+/- buttons instead of opening the channel selection list." +msgstr "" + +msgid "When enabled you get the channel selection list via the OK button, the infobar toggle is then transfered to exit button" +msgstr "" + +msgid "When enabled, AIT data will be included in http streams. This allows a client receiver to use HbbTV." +msgstr "Когда эта функция включена, AIT данные будут включены в в http стрим. Это позволит оборудованию клиента использовать HbbTV." + +msgid "When enabled, ECM data will be included in http streams. This allows a client receiver to do the descrambling." +msgstr "Когда эта функция включена, ECM данные будут включены в http стрим. Это позволит оборудованию клиента выполнять декодирование." + +msgid "When enabled, EIT data will be included in http streams. This allows a client receiver to show EPG." +msgstr "Когда эта функция включена, EIT данные будут включены в http стрим. Это позволит оборудованию клиента увидеть даннные EPG." + +msgid "When enabled, a popup message will be shown when a movie has finished and the next one will start." +msgstr "Показать всплывающее окно, когда видео закончилось, а следующее начинается." + +msgid "When enabled, a popup message will be shown when a recording starts." +msgstr "Если включено, то появится уведомление при начале записи." + +msgid "When enabled, a radio background image will be visible while listening to a radio channel." +msgstr "Показать фоновое изображение и список каналов, во время прослушивания радио каналов." + +msgid "When enabled, a recording is allowed to interrupt live tv, when there are no free tuners." +msgstr "Если включено, то при старте таймера записи, передача в прямом эфире будет прервана, если нет свободных тюнеров." + +msgid "When enabled, a warning will be displayed and the user will get an option to stop or to continue the timeshift." +msgstr "Если включено, будет показано предупреждение и пользователь получит возможность остановить или продолжить таймшифт." + +msgid "When enabled, authentication is required to watch http streams." +msgstr "" + +msgid "When enabled, channel numbering will start at '1' for each bouquet." +msgstr "Если включено, нумерация каналов в каждом фаворитном списке будет начинатся с '1' номера" + +msgid "When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen." +msgstr "Когда изображение на канале имеет соотношение сторон 4:3, выберите, будет ли растянута картинка на весь экран." + +msgid "When enabled, continue to the next bouquet when the last channel of the current bouquet is reached while changing channels." +msgstr "Если включено, при переключении каналов будет переход к следующему фавориту, когда последний канал текущего фаворита будет достигнут." + +msgid "When enabled, deleted recordings are moved to the trash can, instead of being deleted immediately." +msgstr "Когда эта функция включена, удаленные записи будут перемещены в корзину, вместо безвозратного удаления." + +msgid "When enabled, display the EIT now/next eventdata in infobar. When disabled, display now/next eventdata from the EPG cache instead." +msgstr "Если включено, события сейчас/далее из DVB EPG будут показаны в инфобаре. При отключении, данные события будут показываться из файла кеша EPG." + +msgid "When enabled, encryption info will be shown in the infobar (when supported by the skin)." +msgstr "Показать информацию о декодировании на инфобаре (если это поддерживается скином)." + +msgid "When enabled, error messages related to the Common Interface module will not be shown." +msgstr "Скрыть сообщения об ошибках от CI модуля." + +msgid "When enabled, error messages related to zapping will not be shown." +msgstr "Не показывать любые сообщения об ошибках при переключении каналов." + +msgid "When enabled, external subtitles will be always turned on for playback movie." +msgstr "Если это активировано, то внешние субтитры будут всегда включены для воспроизведения видео." + +msgid "When enabled, graphical DVB subtitles are preferred over teletext subtitles, when both types are available." +msgstr "Предпочтение графическим субтитрам DVB, чем телетекст-субтитрам, когда оба типа имеются." + +msgid "When enabled, graphical DVB subtitles will be centered horizontally." +msgstr "Если включено, графические DVB субтитры будут сосредоточены горизонтально." + +msgid "When enabled, graphical DVB subtitles will be displayed at their original position." +msgstr "Если включено, графические DVB субтитры будут показаны в их исходном положении." + +msgid "When enabled, graphical DVB subtitles will be displayed in yellow, instead of the original color." +msgstr "Если включено, графические DVB субтитры будут отображаться желтым, а не исходным цветом." + +msgid "When enabled, http streams are descrambled on the server side. The (remote) client receiver does not have to do descrambling." +msgstr "Когда эта функция включена, http стрим декодируется на стороне сервера. Оборудованию удаленного клиента не надо выполнять декодирование." + +msgid "When enabled, it is possible to leave the movieplayer with exit." +msgstr "Если включено, то можно закрыть видеоплеер с помощью кнопки выход." + +msgid "When enabled, measure power consumption to detect when the rotor stops turning (when supported by the tuner)." +msgstr "Если включено, используется измерение мощности для обнаружения, когда ротор перестал поворачиваться (если есть поддержка в ресивере)." + +msgid "When enabled, number markers will be hiden." +msgstr "Если включено, то номера маркеров не будут показаны в списке каналов." + +msgid "When enabled, services may be grouped in multiple bouquets." +msgstr "Если включено, сервисы могут быть сгруппированы в несколько букетов." + +msgid "When enabled, show channel numbers in the channel selection screen." +msgstr "Если включено, показывается номер канала в окне выбора каналов." + +msgid "When enabled, subtitles for the hearing impaired can be used." +msgstr "Включение субтитров для людей с нарушениями слуха" + +msgid "When enabled, subtitles for the hearing impaired will be preferred over normal subtitles, when both types are available." +msgstr "Предпочтение субтитрам для людей с нарушениями слуха, чем обычным субтитрам, когда оба типа имеются." + +msgid "When enabled, teletext pages will be cached, allowing faster access." +msgstr "Когда эта функция включена, страницы телетекста будет храниться в кэше, что позволяет ускорить доступ." + +msgid "When enabled, teletext subtitles will be displayed at their original position." +msgstr "Если включено, телетекст субтитров будет отображаться в исходном положении." + +msgid "When enabled, the VCR scart option will be shown on the main menu" +msgstr "При включении этой опции 'Видеомагнитофон' будет показан в главном меню." + +msgid "When enabled, the channel selection list will be hidden while listening to a radio channel" +msgstr "Если установлено значение 'да', то список выбора каналов будет скрыт во время прослушивания радио каналов" + +msgid "When enabled, the infobar will be displayed when a new event starts." +msgstr "Если включено, при начале нового события EPG на текущем канале, появится инфобар." + +msgid "When enabled, the infobar will be displayed when changing channels." +msgstr "Если включено, инфобар будет появлятся при переключении каналов." + +msgid "When enabled, the infobar will be displayed when skipping forwards/backwards during media playback." +msgstr "Если включено, инфобар будет появлятся во время перемотке медиафайлов вперед/назад." + +msgid "When enabled, the lenght of each recording will be shown in the movielist (this might cause some additional loading time)." +msgstr "Показать длину записей в списке фильмов (может понадобиться дополнительное время для загрузки списка)" + +msgid "When enabled, the original line breaks will be removed from the teletext subtitles." +msgstr "Если включено, оригинальные разрывы строки будут удалены из телетекста субтитров." + +msgid "When enabled, the receiver will automatically use the audio track which you selected before." +msgstr "Если включено, ресивер будет использовать субтитры, которые были выбраны ранее" + +msgid "When enabled, the receiver will automatically use the subtitles which you selected before." +msgstr "Если включено, ресивер будет использовать субтитры, которые были выбраны ранее" + +msgid "When enabled, the receiver will no longer monitor the tuned transponder for possible changes. Do not use this option unless you know what you are doing." +msgstr "При включении, ресивер больше не будет следить за возможными изменениями на транспондере. Не изменяйте эту опцию, если не знаете, что делаете." + +msgid "When enabled, the receiver will select an AC3 track (when available)." +msgstr "Если установлено значение 'да', то ресивер будет использовать AC3 звук (если доступно)." + +msgid "When enabled, the receiver will select an AC3+ track (when available)." +msgstr "" + +msgid "When enabled, timeshift starts automatically in background after specified time." +msgstr "Если эта функция включена, таймшифт запускается автоматически в фоновом режиме после указанного времени." + +msgid "When enabled, use DHCP for the IP configuration." +msgstr "Выберите, чтобы включить или отключить DHCP." + +msgid "When enabled, your receiver will detect activity on the VCR SCART input." +msgstr "Если это включено, Ваш ресивер будет определять активность на входе VCR SCART." + +msgid "When nonzero, a recording will start earlier than the starting time indicated by the EPG." +msgstr "Укажите на сколько минут раньше начинать запись, чем время начала записи по EPG." + +msgid "When nonzero, a recording will stop later than the ending time indicated by the EPG." +msgstr "Укажите на сколько минут позже закончить запись, чем время окончания записи по EPG." + +msgid "When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture." +msgstr "Когда изображение на канале имеет соотношение сторон 16:9, выберите, следует ли масштабировать/растянуть картинку." + +msgid "When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture." +msgstr "Когда изображение на канале имеет соотношение сторон 4:3, выберите, следует ли масштабировать/растянуть картинку." + +msgid "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" +msgstr "" +"При сбросе на заводские установки будут удалены все конфигурационные данные\n" +"(включая пакеты, каналы, данные спутников...)\n" +"После завершения сброса, ваш ресивер будет автоматически перезагружен!\n" +"\n" +"Действительно выполнить сброс на заводские установки?" + +msgid "Where do you want to backup your settings?" +msgstr "Где вы хотите сохранить установки?" + +msgid "Where to save temporary timeshift recordings?" +msgstr "Куда сохранить временные файлы отложенного просмотра?" + +msgid "Wireless LAN" +msgstr "Беспроводная сеть" + +msgid "Wireless network" +msgstr "Беспроводная сеть" + +msgid "Wireless network configuration..." +msgstr "Конфигурация сети..." + +msgid "Wireless network connection setup" +msgstr "Статистика беспроводной сети" + +msgid "Wireless network connection setup." +msgstr "Статистика беспроводной сети" + +msgid "Wireless network state" +msgstr "Статистика беспроводной сети" + +msgid "With popup" +msgstr "с сообщением" + +msgid "Without popup" +msgstr "без сообщения" + +msgid "Would you like to install a softcam?" +msgstr "Вы хотите установить эмулятор??" + +msgid "Write error while recording. Disk full?\n" +msgstr "Ошибка во время записи. Диск переполнен?\n" + +msgid "Write failed!" +msgstr "Запись неудачна!" + +msgid "YPbPr" +msgstr "YPbPr" + +msgid "Year" +msgstr "Год" + +msgid "Yellow DVB subtitles" +msgstr "Желтые DVB субтитры" + +msgid "Yes" +msgstr "Да" + +msgid "Yes and save" +msgstr "да и сохранить" + +msgid "Yes and save in movie dir" +msgstr "да и сохранить в каталог movie" + +msgid "Yes to all" +msgstr "Да - для всех" + +msgid "Yes, always" +msgstr "Да, всегда" + +msgid "Yes, and delete this movie" +msgstr "Да, удалить эту запись" + +msgid "Yes, backup my settings!" +msgstr "Да, сохранить мои установки!" + +msgid "Yes, delete this movie and return to movie list" +msgstr "" + +msgid "Yes, do a manual scan now" +msgstr "Да, выполнить ручной поиск" + +msgid "Yes, do an automatic scan now" +msgstr "Да, выполнить автоматический поиск" + +msgid "Yes, do another manual scan now" +msgstr "Да, выполнить еще ручной поиск" + +msgid "Yes, perform a shutdown now." +msgstr "Да, выключить сейчас." + +msgid "Yes, restore the settings now" +msgstr "Да, восстановить установки сейчас" + +msgid "Yes, returning to movie list" +msgstr "Да, вернуться к списку записей" + +msgid "Yesterday" +msgstr "Вчера" + +#, python-format +msgid "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" +msgstr "" +"Список каналов уже установлен,\n" +"Удалить\n" +"\"%s\"?" + +msgid "You can cancel the installation." +msgstr "Вы можете отменить установку." + +msgid "You can cancel the removal." +msgstr "Вы можете отменить удаление." + +msgid "You can continue watching TV etc. while this is running." +msgstr "Вы можете продолжить просмотр ТВ и т.д., пока процесс выполняется." + +msgid "You can install this plugin." +msgstr "Вы можете установить этот плагин." + +msgid "You can only burn receiver recordings!" +msgstr "Вы можете прожечь только записи ресивера!" + +msgid "You can remove this plugin." +msgstr "Вы можете удалить это плагин." + +msgid "You cannot delete this!" +msgstr "Вы не можете удалить это!" + +msgid "You didn't select a channel to record from." +msgstr "Ввы не выбрали канал записи." + +msgid "You have chosen to backup your settings. Please press OK to start the backup now." +msgstr "Вы выбрали резервное копирование настроек. Пожалуйста, нажмите кнопку ОК для начала резервного копирования." + +msgid "You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased." +msgstr "Вы выбрали создание нового загрузочного внешнего USB накопителя. USB накопитель будет отформатирован и все данные будут утеряны." + +msgid "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." +msgstr "Вы выбрали восстановление настроек. Enigma2 будет перезапущена сразу после восстановления. Нажмите ОК для восстановления." + +#, python-format +msgid "You have to wait %s!" +msgstr "Необходимо подождать %s!" + +msgid "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." +msgstr "" +"Вам потребуется компьютер подсоединенный к вашему ресиверу. Если вам необходимы дополнительные инструкции, пожалуйста, посетите сайт http://www.dm7025.de.\n" +"Ваш ресивер должен быть остановлен. После выполнения Вами инструкций по обновлению с сайта, новое ПО запросит восстановление Ваших установок. " + +msgid "You system does not support ext4" +msgstr "Ваша система не поддерживает ext4" + +msgid "Your backup succeeded. We will now continue to explain the further upgrade process." +msgstr "Резервная копия создана. Теперь мы продолжим процесс обновления. " + +msgid "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" +msgstr "Ваша коллекция превышает размер однослойного диска. Вам нужен чистый двухслойный DVD!" + +msgid "Your current collection will get lost!" +msgstr "Ваша текущая коллекция будет утеряна!" + +msgid "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." +msgstr "" +"Требуется обновление фронтпроцессора.\n" +"Нажмите OK для начала обновления." + +msgid "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Ваш фронтпроцессор обновляется​​\n" +"Дождитесь перезагрузки ресивера\n" +"Это может занять несколько минут" + +msgid "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." +msgstr "" +"Ваше интернет соединение не работает.\n" +"Выберите, что будете делать дальше." + +#, python-format +msgid "Your internet connection is working (ip: %s)" +msgstr "Ваше интернет соединение работает (ip: %s)" + +msgid "Your network configuration has been activated." +msgstr "Ваши сетевые настройки активированы." + +msgid "Your receiver does not have an internet connection" +msgstr "Обновление не удалось. В вашем ресивере нет работающего интернет-соединения." + +msgid "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" +msgstr "" +" Ваш ресивер готов к работе.\n" +"\n" +"Интернет соединение уже работает.\n" +"\n" +"Нажмите ОК для продолжения.\n" + +msgid "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." +msgstr "" +" Ваш ресивер готов к работе.\n" +"\n" +"Интернет соединение уже работает.\n" +"\n" +"Нажмите ОК для продолжения." + +msgid "Your receiver is rebooting" +msgstr "Перезагрузка ресивера" + +msgid "Your receiver is shutting down" +msgstr "Ваш ресивер переходит в глубокий режим ожидания" + +msgid "Your receiver is shutting down. Please stand by..." +msgstr "Ваш ресивер выключается. Пожалуйста, подождите..." + +msgid "Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver." +msgstr "Сейчас ваш ресивер может быть непригодным для использования. Обратитесь к руководству для получения дополнительной помощи до его перезагрузки." + +msgid "Your receiver will got to stand by due to the sleeptimer." +msgstr "Ваш ресивер будет выключен по таймеру сна." + +msgid "Your receiver will got to standby due to inactivity." +msgstr "Ваш ресивер будет переведен в режим ожидания из-за бездействия." + +msgid "Your receiver will restart after pressing OK on your remote control." +msgstr "Ваш ресивер будет перезагружен после нажатия кнопки OK на пульте." + +msgid "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." +msgstr "" +"Ваше беспроводное интернет соединение не может быть активировано.\n" +"Вы подключили USB WLAN адаптер?\n" +"\n" +"Выберите, что будете делать дальше." + +msgid "Zap" +msgstr "Переключение" + +msgid "Zap back to previously tuned service?" +msgstr "Переключиться на предыдущий сервис?" + +msgid "Zap back to service before positioner setup?" +msgstr "Вернутся на предыдущий сервис ?" + +msgid "Zap back to service before tuner setup?" +msgstr "Вернутся обратно к настройкам тюнер?" + +msgid "Zap focus to Picture in Picture" +msgstr "Переключение в экране PiP" + +msgid "Zap focus to main screen" +msgstr "Переключение в главном экране" + +msgid "Zap mode" +msgstr "Режимы экрана при переключении" + +msgid "Zap to selected channel" +msgstr "Переключение на выбраный канал" + +msgid "Zap to selected channel, or show detailed event info (depends on configuration)" +msgstr "Переключить на выбранный канал, или показать подробный ЕПГ (зависит от конфигурации)" + +msgid "[alternative edit]" +msgstr "[редактирование альтернативы]" + +msgid "[bouquet edit]" +msgstr "[редактирование букетов]" + +msgid "[favourite edit]" +msgstr "[редактирование фаворитов]" + +msgid "[move mode]" +msgstr "[режим перемещения]" + +msgid "a gui to assign services/providers to common interface modules" +msgstr "Скрыть сообщения об ошибках от CI модуля." + +msgid "a gui to assign services/providers/caids to common interface modules" +msgstr "Интерфейс для назначения сервисов/провайдеров/идентов на CAM-модули" + +msgid "abort alternatives edit" +msgstr "прервать редактирование альтернативы" + +msgid "abort bouquet edit" +msgstr "прервать редактирование букета" + +msgid "abort favourites edit" +msgstr "прервать редактирование фаворитов" + +msgid "about to start" +msgstr "начинается" + +msgid "activate network adapter configuration" +msgstr "закрыть конфигуратор сети" + +msgid "add alternatives" +msgstr "добавить альтернативу" + +msgid "add bookmark" +msgstr "добавить закладку" + +msgid "add bouquet" +msgstr "добавить фаворит" + +msgid "add marker" +msgstr "добавить маркер" + +msgid "add service to bouquet" +msgstr "добавить сервис в фаворит" + +msgid "add service to favourites" +msgstr "добавить сервис в фавориты" + +msgid "add to parental protection" +msgstr "добавить в родительский контроль" + +msgid "adult movie/drama" +msgstr "эротический фтльм/драма" + +msgid "advanced" +msgstr "Расширенный" + +msgid "adventure/western/war" +msgstr "приключения/вестерн/военный" + +msgid "advertisement/shopping" +msgstr "реклама/шоппинг" + +msgid "after " +msgstr "через " + +msgid "alphabetic" +msgstr "сортировать по алфавиту" + +msgid "alphabetic reverse" +msgstr "по обратному алфавиту" + +msgid "alternative" +msgstr "альтернативный" + +msgid "always" +msgstr "" + +msgid "and select next channel" +msgstr "" + +msgid "and select previous channel" +msgstr "" + +msgid "arts/culture (without music, general)" +msgstr "искусство/культура (без музыки, общее)" + +msgid "arts/culture magazine" +msgstr "искусство/культура журнал" + +msgid "athletics" +msgstr "атлетика" + +msgid "audio tracks" +msgstr "звуковая дорожки" + +msgid "auto" +msgstr "авто" + +msgid "automatic" +msgstr "автоматически" + +msgid "back" +msgstr "назад" + +msgid "background image" +msgstr "фоновое изображение" + +msgid "ballet" +msgstr "балет" + +#, python-format +msgid "bc%s" +msgstr "bc%s" + +msgid "better" +msgstr "лучше" + +msgid "black" +msgstr "черный" + +msgid "black & white" +msgstr "черное & белое" + +msgid "blacklist" +msgstr "черный список" + +msgid "blue" +msgstr "синий" + +msgid "broadcasting/press" +msgstr "вещание/пресса" + +msgid "by date" +msgstr "сортировать по дате" + +msgid "cartoon/puppets" +msgstr "мультфильм/куклы" + +msgid "center" +msgstr "центр" + +msgid "centered" +msgstr "центр" + +msgid "centered, wrapped" +msgstr "центр, завернутый" + +msgid "chapters" +msgstr "разделы" + +msgid "childrens's/youth program (general)" +msgstr "детские/молодежные программы (общее)" + +msgid "circular left" +msgstr "круговая левая" + +msgid "circular right" +msgstr "круговая правая" + +msgid "comedy" +msgstr "комедия" + +msgid "complex" +msgstr "комплекс" + +msgid "config menu" +msgstr "меню конфигурации" + +msgid "confirmed" +msgstr "присвоен" + +msgid "connected" +msgstr "подключено" + +msgid "continue" +msgstr "Продолжить" + +msgid "cooking" +msgstr "приготовление" + +msgid "copy to bouquets" +msgstr "копировать в пакет" + +msgid "create directory" +msgstr "создать каталог" + +#, python-format +msgid "currently installed image: %s" +msgstr "текущий установленный имидж: %s" + +msgid "daily" +msgstr "ежедневно" + +msgid "day" +msgstr "день" + +msgid "default" +msgstr "По умолчанию" + +msgid "delete cut" +msgstr "удалить вырезанное" + +msgid "delete..." +msgstr "" + +msgid "descramble and record ecm" +msgstr "декодирование и запись ECM (отл. декодирование)" + +msgid "detective/thriller" +msgstr "детектив/триллер" + +msgid "disable" +msgstr "выключить" + +msgid "disable move mode" +msgstr "выключить режим перемещения" + +msgid "disabled" +msgstr "отключено" + +msgid "disconnected" +msgstr "отключено" + +msgid "discussion/interview/debate" +msgstr "обсуждение/интервью/дискуссии" + +msgid "do nothing" +msgstr "не делать ничего" + +msgid "documentary" +msgstr "документальный фильм" + +msgid "don't descramble, record ecm" +msgstr "не декодировать, только запись ECM (отл. декодирование)" + +msgid "done!" +msgstr "выполнено!" + +msgid "east" +msgstr "Перемещение на восток" + +msgid "economics/social advisory" +msgstr "экономика/социальная консультация" + +msgid "edit alternatives" +msgstr "изменить альтернативу" + +msgid "education/science/factual topics (general)" +msgstr "образование/наука/факты (общее)" + +msgid "empty" +msgstr "пустой" + +msgid "enable" +msgstr "включить" + +msgid "enable bouquet edit" +msgstr "включить редактирование фаворита" + +msgid "enable favourite edit" +msgstr "включить редактирование фаворитов" + +msgid "enable move mode" +msgstr "включить режим перемещения" + +msgid "enabled" +msgstr "включено" + +msgid "end alternatives edit" +msgstr "закончить редактирование альтернативы" + +msgid "end bouquet edit" +msgstr "закончить редактирование букета" + +msgid "end cut here" +msgstr "конец редактирования" + +msgid "end favourites edit" +msgstr "закончить редактирование фаворитов" + +msgid "entertainment (10-16 year old)" +msgstr "развлечения (10-16 лет)" + +msgid "entertainment (6-14 year old)" +msgstr "развлечения (6-14 лет)" + +msgid "equal to" +msgstr "также как" + +msgid "equestrian" +msgstr "конный спорт" + +msgid "exit DVD player or return to file browser" +msgstr "Закрыть DVD плеер и вернуться в проводник" + +msgid "exit movielist" +msgstr "" + +msgid "exit network adapter configuration" +msgstr "закрыть конфигуратор сети" + +msgid "exit networkadapter setup menu" +msgstr "закрыть настройки сетевого адаптера" + +msgid "experimental film/video" +msgstr "экспериментальный фильм/видео" + +msgid "false" +msgstr "нет" + +msgid "fashion" +msgstr "мода" + +msgid "fileformats (BMP, PNG, JPG, GIF)" +msgstr "формат файла (BMP, PNG, JPG, GIF)" + +msgid "filename" +msgstr "имя файла" + +msgid "film/cinema" +msgstr "фильм/кино" + +msgid "fine arts" +msgstr "изобразительные искусства" + +msgid "fine-tune your display" +msgstr "точная настройка дисплея" + +msgid "fitness & health" +msgstr "фитнес & здоровье" + +msgid "flat alphabetic" +msgstr "сортировать по алфавиту" + +msgid "flat alphabetic reverse" +msgstr "по обратному алфавиту" + +msgid "folk/traditional music" +msgstr "народная/традиционная музыка" + +msgid "football/soccer" +msgstr "футбол" + +msgid "foreign countries/expeditions" +msgstr "зарубежные страны/экспедиции" + +msgid "forward to the next chapter" +msgstr "вперед к следующему разделу" + +msgid "free" +msgstr "свободно" + +msgid "from" +msgstr "" + +msgid "further education" +msgstr "дальнейшее образование" + +msgid "game show/quiz/contest" +msgstr "игра шоу/викторина/конкурс" + +msgid "gardening" +msgstr "садоводство" + +msgid "go to deep standby" +msgstr "перейти в глубокий режим ожидания" + +msgid "go to standby" +msgstr "перейти в режим ожидания" + +msgid "grab this frame as bitmap" +msgstr "сохранить фрейм как растровое изображение" + +msgid "green" +msgstr "зеленый" + +msgid "handicraft" +msgstr "ремесло" + +msgid "height" +msgstr "высота" + +msgid "help..." +msgstr "помощь..." + +msgid "horizontal" +msgstr "горизонтальная" + +msgid "information/education/school program" +msgstr "информация/образование/школьная программа" + +msgid "init module" +msgstr "init модуль" + +msgid "init modules" +msgstr "init модуль" + +msgid "insert mark here" +msgstr "вставить метку" + +msgid "invalid type" +msgstr "недействительный тип" + +msgid "jazz" +msgstr "джаз" + +msgid "jump back to the previous title" +msgstr "перейти к предыдущей главе" + +msgid "jump forward to the next title" +msgstr "перейти к следующей главе" + +msgid "languages" +msgstr "языки" + +msgid "leave movie player..." +msgstr "выйти из видеоплеера..." + +msgid "left" +msgstr "слево" + +msgid "left, wrapped" +msgstr "слево, завернутый" + +msgid "leisure hobbies (general)" +msgstr "досуг/хобби (общее)" + +msgid "length" +msgstr "длина" + +msgid "limit ..., aborting !" +msgstr "лимит ..., прерван !" + +msgid "list style compact" +msgstr "компактный список" + +msgid "list style compact with description" +msgstr "компактный список описанием" + +msgid "list style default" +msgstr "список по умолчанию" + +msgid "list style single line" +msgstr "список в одну строку" + +msgid "literature" +msgstr "литература" + +msgid "live broadcast" +msgstr "прямая трансляция" + +msgid "locked" +msgstr "захвачено" + +msgid "loopthrough to" +msgstr "петля к" + +msgid "magazines/reports/documentary" +msgstr "журналы/репортажы/документальный" + +msgid "manual" +msgstr "ручной" + +msgid "martial sports" +msgstr "единоборство" + +msgid "medicine/physiology/psychology" +msgstr "медицина/физиология/психология" + +msgid "menu" +msgstr "меню" + +msgid "mins" +msgstr "мин" + +msgid "minutes" +msgstr "минут" + +msgid "month" +msgstr "месяц" + +msgid "motor sport" +msgstr "мотоспорт" + +msgid "motoring" +msgstr "автомобили" + +msgid "move down to last entry" +msgstr "переместить вниз к последней записи" + +msgid "move down to next entry" +msgstr "переместить вниз к следующей записи" + +msgid "move up to first entry" +msgstr "переместить вверх к первой записи" + +msgid "move up to previous entry" +msgstr "переместить вверх к предыдущей записи" + +msgid "movie/drama (general)" +msgstr "фильмы/драма (общее)" + +msgid "multinorm" +msgstr "мультинорм" + +msgid "music/ballet/dance (general)" +msgstr "музыка/балет/танец (общее)" + +msgid "musical/opera" +msgstr "музыка/опера" + +msgid "nature/animals/environment" +msgstr "природа/животные/окружающая среда" + +msgid "never" +msgstr "никогда" + +msgid "new media" +msgstr "новые media" + +msgid "news magazine" +msgstr "новостной журнал" + +msgid "news/current affairs (general)" +msgstr "новости/текущие события (общее)" + +msgid "news/weather report" +msgstr "новости/прогноз погоды" + +msgid "no" +msgstr "нет" + +msgid "no CAId selected" +msgstr "показать вторую выбранную метку" + +msgid "no CI slots found" +msgstr "не найден модуль" + +msgid "no module found" +msgstr "не найден модуль" + +msgid "no storage devices found" +msgstr "Сетевые устройства не обнаружены!" + +msgid "none" +msgstr "никакой" + +msgid "normal" +msgstr "нормальная (декодирование)" + +msgid "not configured" +msgstr "нет конфигурации" + +msgid "not locked" +msgstr "не захвачен" + +msgid "not supported" +msgstr "Неизвестная" + +msgid "not used" +msgstr "не использовано" + +msgid "nothing connected" +msgstr "ничего не подключено" + +msgid "of a DUAL layer medium used." +msgstr "используемого двухслойного носителя." + +msgid "of a SINGLE layer medium used." +msgstr "используемого однослойного носителя." + +msgid "off" +msgstr "выкл." + +msgid "offset is" +msgstr "смещение" + +msgid "on" +msgstr "вкл." + +msgid "on READ ONLY medium." +msgstr "на диск только для чтения." + +msgid "on end of movie" +msgstr "в конце фильма" + +msgid "once" +msgstr "один раз" + +msgid "only from deep standby" +msgstr "" + +msgid "only from standby" +msgstr "" + +msgid "open EPG..." +msgstr "" + +msgid "open Info..." +msgstr "" + +msgid "open nameserver configuration" +msgstr "открыть конфигуратор DNS" + +msgid "original" +msgstr "оригинал" + +msgid "original language" +msgstr "язык оригинала" + +msgid "pass" +msgstr "передать" + +msgid "performing arts" +msgstr "исполнительские виды искусства" + +msgid "play as picture in picture" +msgstr "включить как картинку в картинке" + +msgid "play in mainwindow" +msgstr "включить на основном экране" + +msgid "please press OK when ready" +msgstr "пожалуйста, нажмите OK когда будете готовы" + +msgid "please wait, loading picture..." +msgstr "Подождите, загрузка изображений..." + +msgid "popular culture/traditional arts" +msgstr "популярные культура/традиции искусства" + +msgid "pre-school children's program" +msgstr "дошкольные детские программы" + +msgid "receiver software because updates are available." +msgstr "доступно обновление для вашего ресивера." + +msgid "record" +msgstr "запись" + +msgid "recording..." +msgstr "запись..." + +msgid "red" +msgstr "красный" + +msgid "religion" +msgstr "религия" + +msgid "remarkable people" +msgstr "замечательные люди" + +msgid "remove after this position" +msgstr "удалить после этой позиции" + +msgid "remove all alternatives" +msgstr "удалить все альтернативы" + +msgid "remove all new found flags" +msgstr "удалить все новые найденные флаги" + +msgid "remove before this position" +msgstr "удалить перед этой позицией" + +msgid "remove bookmark" +msgstr "удалить закладку" + +msgid "remove directory" +msgstr "удалить каталог" + +msgid "remove entry" +msgstr "удалить выбранное" + +msgid "remove from parental protection" +msgstr "удалить из родительского контроля" + +msgid "remove new found flag" +msgstr "удалить флаг новый найденный " + +msgid "remove selected satellite" +msgstr "удалить выбранный спутник" + +msgid "remove this mark" +msgstr "удалить метку" + +msgid "rename entry" +msgstr "переименовать выбранное" + +msgid "repeat playlist" +msgstr "повторить плейлист" + +msgid "repeated" +msgstr "повторный" + +msgid "reverse by date" +msgstr "по обратной дате" + +msgid "rewind to the previous chapter" +msgstr "назад на предыдущую главу" + +msgid "right" +msgstr "право" + +msgid "right, wrapped" +msgstr "право, завернутый" + +msgid "rock/pop" +msgstr "рок/поп" + +msgid "romance" +msgstr "романс" + +msgid "save last directory on exit" +msgstr "сохранить последний каталог при выходе" + +msgid "save playlist on exit" +msgstr "сохранить плейлист при выходе" + +msgid "scan state" +msgstr "состояние поиска" + +msgid "science fiction/fantasy/horror" +msgstr "научная фантастика/фэнтези/ужасы" + +msgid "second cable of motorized LNB" +msgstr "второй кабель от ЛНБ на моторе" + +msgid "seconds" +msgstr "секунд" + +msgid "select" +msgstr "выбрать" + +msgid "select CAId's" +msgstr "выбрать" + +msgid "select EPG..." +msgstr "" + +msgid "select Info..." +msgstr "" + +msgid "select menu entry" +msgstr "выбрать из меню" + +msgid "select movie" +msgstr "выбрать фильм" + +msgid "select the movie path" +msgstr "" + +msgid "serious music/classic music" +msgstr "классическая музыка" + +msgid "serious/classical/religious/historical movie/drama" +msgstr "серьезный/классический/религиозный/исторический фильм/драма" + +msgid "service PIN" +msgstr "Изменить PIN-код сервиса" + +msgid "set as startup service" +msgstr "сделать сервис стартовым" + +msgid "setup PIN" +msgstr "Изменить PIN-код настроек" + +msgid "show DVD main menu" +msgstr "показать DVD в главном меню" + +msgid "show all tags" +msgstr "показать все теги" + +msgid "show alternatives" +msgstr "показать альтернативу" + +msgid "show event details" +msgstr "показать детали события" + +msgid "show extended description" +msgstr "" + +msgid "show mediaplayer on mainmenu" +msgstr "Показать медиаплеер в главном меню" + +msgid "show softwaremanager in setup menu" +msgstr "Показать менеджер софта в меню настроек" + +msgid "show softwaremanager on blue button" +msgstr "Показать менеджер софта в меню дополнений" + +msgid "show tag menu" +msgstr "" + +msgid "show transponder info" +msgstr "показать инфо транспондера" + +msgid "show/game show (general)" +msgstr "показ/игровых шоу (общее)" + +msgid "shuffle" +msgstr "случайный порядок" + +msgid "shut down" +msgstr "Выключить" + +msgid "simple" +msgstr "простой" + +msgid "skip backward" +msgstr "Перемотка назад" + +msgid "skip forward" +msgstr "Перемотка вперед" + +msgid "soap/melodram/folkloric" +msgstr "мыльная опера/мелодрама/фольклор" + +msgid "social/political issues/economics (general)" +msgstr "социальные/политические вопросы/экономика (общее)" + +msgid "social/spiritual science" +msgstr "социальная/духовная наука" + +msgid "sorting of playlists" +msgstr "сортировка плейлистов" + +msgid "special characters" +msgstr "специальное событие" + +msgid "special events" +msgstr "специальное событие" + +msgid "special format data DVD (HDTV compatible)" +msgstr "спецмальный формат данных DVD (совместимый с HDTV)" + +msgid "sports (general)" +msgstr "спорт (общее)" + +msgid "sports magazine" +msgstr "спортивный магазин" + +msgid "standard" +msgstr "стандарт" + +msgid "start cut here" +msgstr "начало редактирования" + +msgid "start directory" +msgstr "начальный каталог" + +msgid "stepsize" +msgstr "размер шага" + +msgid "stereo" +msgstr "стерео" + +msgid "stop using as startup service" +msgstr "отключить от автостарта сервис" + +msgid "switch to bookmarks" +msgstr "перейти на закладки" + +msgid "switch to filelist" +msgstr "переключить на список файлов" + +msgid "switch to the next angle" +msgstr "перейти в следующей угол" + +msgid "switch to the next audio track" +msgstr "перейти к следующей звуковой дорожке" + +msgid "switch to the next subtitle language" +msgstr "переключиться на следующий язык субтитров" + +msgid "talk show" +msgstr "шоу беседа" + +msgid "team sports" +msgstr "командные виды спорта" + +msgid "technology/natural science" +msgstr "технологии/естествознание" + +msgid "template file" +msgstr "Шаблон файла" + +msgid "tennis/squash" +msgstr "теннис/сквош" + +msgid "this recording" +msgstr "это записано" + +msgid "this service is protected by a parental control pin" +msgstr "этот сервис защищен PIN-кодом родительского контроля" + +msgid "toggle time, chapter, audio, subtitle info" +msgstr "время переключения, разделы, аудио, информация субтитров" + +msgid "top" +msgstr "вверх" + +msgid "tourism/travel" +msgstr "туризм/путешествия" + +msgid "true" +msgstr "да" + +msgid "unavailable" +msgstr "недоступно" + +msgid "unconfirmed" +msgstr "не присвоен" + +msgid "undefined" +msgstr "определен пользователем" + +msgid "unknown" +msgstr "<неизвестный>" + +msgid "unknown service" +msgstr "неизвестный сервис" + +msgid "unpublished" +msgstr "неопубликованное" + +msgid "until standby/restart" +msgstr "до режима ожидания/перезагрузки" + +msgid "user defined" +msgstr "определен пользователем" + +msgid "variety show" +msgstr "шоу варьете" + +msgid "vertical" +msgstr "вертикальная" + +msgid "wait for ci..." +msgstr "ожидание ci..." + +msgid "wait for mmi..." +msgstr "ожидание mmi..." + +msgid "waiting" +msgstr "ожидание" + +msgid "water sport" +msgstr "водный спорт" + +msgid "weekly" +msgstr "Еженедельно" + +msgid "west" +msgstr "Перемещение на запад" + +msgid "when PiPzap enabled zap channel down..." +msgstr "" + +msgid "when PiPzap enabled zap channel up..." +msgstr "" + +msgid "white" +msgstr "белый" + +msgid "whitelist" +msgstr "белый список" + +msgid "width" +msgstr "ширина" + +msgid "winter sport" +msgstr "зимний спорт" + +msgid "wireless network interface" +msgstr "интерфейс беспроводной сети" + +#, python-format +msgid "with %d error" +msgid_plural "with %d errors" +msgstr[0] "с %d ошибкой" +msgstr[1] "с %d ошибками" +msgstr[2] "с %d ошибками" + +msgid "working" +msgstr "работающий" + +msgid "yellow" +msgstr "желтый" + +msgid "yes" +msgstr "да" + +msgid "yes (keep feeds)" +msgstr "да (хранить каналы)" + +msgid "zap" +msgstr "перейти" + +msgid "zap and record" +msgstr "перейти и записать" + +msgid "zapped" +msgstr "переключено" + +#~ msgid "AA" +#~ msgstr "AA" + +#~ msgid "AB" +#~ msgstr "AB" + +#~ msgid "Activate PiP" +#~ msgstr "Активировать PIP" + +#~ msgid "Add/remove timer for current event" +#~ msgstr "Добавить/удалить таймер для текущего события" + +#~ msgid "Adjust HDMI CEC settings" +#~ msgstr "Выставите настройки 3D" + +#~ msgid "All satellites" +#~ msgstr "Все спутники" + +#~ msgid "And will shutdown your receiver over " +#~ msgstr "И выключит ваш ресивер через " + +#~ msgid "BA" +#~ msgstr "BA" + +#~ msgid "BB" +#~ msgstr "BB" + +#~ msgid "Behavior of 'pause' when paused" +#~ msgstr "Поведение 'пауза' во время паузы" + +#~ msgid "Committed DiSEqC command" +#~ msgstr "Команда переключения DiSEqC" + +#~ msgid "Configure if and how service type icons will be shown." +#~ msgstr "Настройка для показа иконок типа сервиса в списке сервисов." + +#~ msgid "Configure if service picons will be shown in the servicelist." +#~ msgstr "Настройка для показа пиконов сервисов в списке сервисов." + +#~ msgid "Configure the behavior of the 'pause' key when movie playback is already paused." +#~ msgstr "Настройка поведения кнопки 'пауза', когда видео уже стоит на паузе." + +#~ msgid "Configure the duration in hours and action, which could be shut down or standby, when the receiver is not controlled." +#~ msgstr "Настройка продолжительности в часах и действия, выключение или режим ожидания, когда ресивер без управления." + +#~ msgid "Configure the duration in minutes and action, which could be shut down or standby, for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +#~ msgstr "Настройка продолжительности в минутах и действия (выключение или режим ожидания) для таймера сна. Выберите эту строку и нажмите ОК или зеленую кнопку для запуска/остановки таймера сна." + +#~ msgid "DiSEqC repeats" +#~ msgstr "DiSEqC повтор" + +#~ msgid "Goto specific data/time" +#~ msgstr "Перейти на конкретное дата/время" + +#~ msgid "Memory positions" +#~ msgstr "Позиция памяти" + +#~ msgid "No satellite frontend found!!" +#~ msgstr "Не найден спутниковый интерфейс!" + +#~ msgid "Open service list and select next channel" +#~ msgstr "Открыть список сервисов и выбрать следующий канал" + +# ----------------------------------------- +#~ msgid "Open service list and select previous channel" +#~ msgstr "Открыть список сервисов и выбрать предыдущий канал" + +#~ msgid "Press '0' to toggle internal/external PiP." +#~ msgstr "Нажмите '0' для смены внутреннего/внешнего PiP." + +#~ msgid "Remove timer" +#~ msgstr "Удалить таймер" + +#~ msgid "Send DiSEqC" +#~ msgstr "Отправить DiSEqC" + +#~ msgid "Show picons in servicelist" +#~ msgstr "Показать пиконы в списке сервисов" + +#~ msgid "Shutdown after current event" +#~ msgstr "Выключение после текущего события" + +#~ msgid "Shutdown in " +#~ msgstr "Выключение через " + +#~ msgid "Switch next channel" +#~ msgstr "Переключить на следующий канал" + +#~ msgid "Tuning step size" +#~ msgstr "Размер шага поворота" + +#~ msgid "Uncommitted DiSEqC command" +#~ msgstr "Команда переключения DiSEqC" + +#~ msgid "Your receiver will shutdown due to inactivity." +#~ msgstr "Ваш ресивер будет выключен из-за бездействия." + +#~ msgid "Your receiver will shutdown due to the sleeptimer." +#~ msgstr "Ваш ресивер будет переведен в режим ожидания по таймеру сна." + +#~ msgid "Zap back to service before satfinder?" +#~ msgstr "Переключить на предыдущий сервис?" + +#~ msgid "tuner is not supported" +#~ msgstr "Неизвестная" diff --git a/po/sk.po b/po/sk.po new file mode 100644 index 0000000..a3712c2 --- /dev/null +++ b/po/sk.po @@ -0,0 +1,8351 @@ +# Slovak translations for Enigma2. +# +msgid "" +msgstr "" +"Project-Id-Version: enigma2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-07-21 19:08+0200\n" +"PO-Revision-Date: 2010-05-12 13:09+0200\n" +"Last-Translator: acid-burn <>\n" +"Language-Team: none\n" +"Language: sk\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" +"X-Generator: Pootle 2.0.3\n" +"X-Poedit-Language: Slovak\n" +"X-Poedit-Country: SLOVAKIA\n" + +# +msgid "" +"\n" +"Advanced options and settings." +msgstr "" +"\n" +"Rozšírené voľby a nastavenia." + +# +msgid "" +"\n" +"After pressing OK, please wait!" +msgstr "" +"\n" +"Po stlačení tlačidla OK počkajte!" + +msgid "" +"\n" +"Backup your receiver settings." +msgstr "" + +# +msgid "" +"\n" +"Edit the upgrade source address." +msgstr "" +"\n" +"Upraviť adresu zdroja aktualizácií." + +msgid "" +"\n" +"Manage extensions or plugins for your receiver" +msgstr "" + +msgid "" +"\n" +"Online update of your receiver software." +msgstr "" + +# +msgid "" +"\n" +"Press OK on your remote control to continue." +msgstr "" +"\n" +"Pre pokračovanie stlačte tlačidlo OK na diaľkovom ovládači." + +# +msgid "" +"\n" +"Restore your backups by date." +msgstr "" +"\n" +"Obnoviť zo zálohy podľa dátumu." + +msgid "" +"\n" +"Restore your receiver settings." +msgstr "" + +msgid "" +"\n" +"Restore your receiver with a new firmware." +msgstr "" + +# +msgid "" +"\n" +"Scan for local extensions and install them." +msgstr "" +"\n" +"Prehľadať miestne balíčky a nainštalovať ich." + +# +msgid "" +"\n" +"Select your backup device.\n" +"Current device: " +msgstr "" +"\n" +"Zvoľte zariadenie pre zálohovanie.\n" +"Aktuálne zariadenie: " + +msgid "" +"\n" +"View, install and remove available or installed packages." +msgstr "" +"\n" +"Zobraziť, nainštalovať a odstrániť dostupné alebo nainštalované balíčky." + +msgid " (PiP)" +msgstr "" + +msgid " (Radio)" +msgstr "" + +msgid " (TV)" +msgstr "" + +msgid " (disabled)" +msgstr "" + +msgid " (higher than any auto)" +msgstr "" + +msgid " (higher than rotor any auto)" +msgstr "" + +msgid " (lower than any auto)" +msgstr "" + +msgid " extensions." +msgstr " rozšírenia." + +msgid " ms" +msgstr " ms" + +msgid " packages selected." +msgstr " balíčkov zvolených." + +msgid " updates available." +msgstr " aktualizácie k dispozícii." + +#. TRANSLATORS: short time representation hour:minute +#, python-format +msgid "%2d:%02d" +msgstr "" + +#. TRANSLATORS: full time representation hour:minute:seconds +#, python-format +msgid "%2d:%02d:%02d" +msgstr "" + +msgid "%A %d %B" +msgstr "" + +#. TRANSLATORS: long date representations dayname daynum monthname in strftime() format! See 'man strftime' +msgid "%A %e %B" +msgstr "" + +#. TRANSLATORS: full date representation dayname daynum monthname year in strftime() format! See 'man strftime' +msgid "%A %e %B %Y" +msgstr "" + +msgid "%H:%M" +msgstr "%H:%M" + +#. TRANSLATORS: short date representation short dayname daynum short monthname in strftime() format! See 'man strftime' +msgid "%a %e/%m" +msgstr "" + +#. TRANSLATORS: long date representation short dayname daynum short monthname hour:minute in strftime() format! See 'man strftime' +msgid "%a %e/%m %-H:%M" +msgstr "" + +#. TRANSLATORS: Intermediate scanning result, '%d' channel(s) have been found so far +#, fuzzy, python-format +msgid "%d channel found" +msgid_plural "%d channels found" +msgstr[0] "Nájdených %d staníc!" +msgstr[1] "Nájdených %d staníc!" +msgstr[2] "Nájdených %d staníc!" + +#, python-format +msgid "%d file" +msgid_plural "%d files" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +#, fuzzy, python-format +msgid "%d job is running in the background!" +msgid_plural "%d jobs are running in the background!" +msgstr[0] "%d úloh beží na pozadí!" +msgstr[1] "%d úloh beží na pozadí!" +msgstr[2] "%d úloh beží na pozadí!" + +#, python-format +msgid "%d min" +msgstr "%d min" + +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +#, python-format +msgid "%d minutes" +msgstr "" + +#, python-format +msgid "%d pixel wide" +msgid_plural "%d pixels wide" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +#, fuzzy, python-format +msgid "%d subdirectory" +msgid_plural "%d subdirectories" +msgstr[0] "počiatočný adresár" +msgstr[1] "počiatočný adresár" +msgstr[2] "počiatočný adresár" + +#, fuzzy, python-format +msgid "%d wireless network found!" +msgid_plural "%d wireless networks found!" +msgstr[0] "Nájdená 1 bezdrôtová sieť." +msgstr[1] "Nájdená 1 bezdrôtová sieť." +msgstr[2] "Nájdená 1 bezdrôtová sieť." + +msgid "%d-%b-%Y %-H:%M" +msgstr "" + +msgid "%d-%m" +msgstr "" + +msgid "%d.%B %Y" +msgstr "%d.%B %Y" + +#. TRANSLATORS: VFD hour:minute daynum short monthname in strftime() format! See 'man strftime' +msgid "%k:%M %e/%m" +msgstr "" + +#, fuzzy, python-format +msgid "%s %s free disk space" +msgstr "voľného miesta na disku" + +#, python-format +msgid "%s (%s)\n" +msgstr "%s (%s)\n" + +#. TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. +#, python-format +msgid "%s is no longer used. Should it be deleted?" +msgstr "" + +#, fuzzy, python-format +msgid "%s updated package available" +msgid_plural "%s updated packages available" +msgstr[0] " aktualizácie k dispozícii." +msgstr[1] " aktualizácie k dispozícii." +msgstr[2] " aktualizácie k dispozícii." + +#, python-format +msgid "%s%d min" +msgstr "" + +#, python-format +msgid "%s/%s: %s" +msgstr "" + +msgid "(ZAP)" +msgstr "(Prepnúť)" + +msgid "(empty)" +msgstr "(prázdne)" + +msgid "(show optional DVD audio menu)" +msgstr "(zobraziť voliteľné menu zvuku DVD)" + +msgid "* Only available if more than one interface is active." +msgstr "* Dostupné, len ak je aktívnych viac rozhraní než jedno." + +msgid "/s" +msgstr "" + +msgid "0" +msgstr "0" + +msgid "1" +msgstr "1" + +msgid "1.0" +msgstr "1,0" + +msgid "1.1" +msgstr "1,1" + +msgid "1.2" +msgstr "1,2" + +msgid "12V output" +msgstr "12 V výstup" + +msgid "13 V" +msgstr "13 V" + +msgid "16:10" +msgstr "16:10" + +msgid "16:10 Letterbox" +msgstr "16:10 Letterbox" + +msgid "16:10 PanScan" +msgstr "16:10 PanScan" + +msgid "16:9" +msgstr "16:9" + +msgid "16:9 Letterbox" +msgstr "16:9 Letterbox" + +msgid "16:9 always" +msgstr "vždy 16:9" + +msgid "18 V" +msgstr "18 V" + +msgid "2" +msgstr "2" + +msgid "23.976" +msgstr "" + +msgid "24" +msgstr "" + +msgid "25" +msgstr "" + +msgid "29.97" +msgstr "" + +msgid "3" +msgstr "3" + +msgid "30" +msgstr "" + +msgid "3d mode" +msgstr "" + +msgid "4" +msgstr "4" + +msgid "4:3" +msgstr "4:3" + +msgid "4:3 Letterbox" +msgstr "4:3 Letterbox" + +msgid "4:3 PanScan" +msgstr "4:3 PanScan" + +msgid "5" +msgstr "5" + +msgid "6" +msgstr "6" + +msgid "7" +msgstr "7" + +msgid "8" +msgstr "8" + +msgid "9" +msgstr "9" + +#, python-format +msgid ": %s" +msgstr "" + +msgid "<Current movielist location>" +msgstr "<Aktuálne umiestnenie zoznamu filmov>" + +msgid "<Default movie location>" +msgstr "<Predvolené umiestnenie filmov>" + +msgid "<Last timer location>" +msgstr "<Umiestnenie poslednej časovej nahrávky>" + +msgid "<unknown>" +msgstr "<neznámy>" + +msgid "??" +msgstr "??" + +msgid "A" +msgstr "A" + +#, fuzzy, python-format +msgid "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" +msgstr "" +"Konfiguračný súbor (%s) bol od inštalácie zmenený.\n" +"Chcete zachovať svoju verziu?" + +#, python-format +msgid "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" +msgstr "" +"Konfiguračný súbor (%s) bol od inštalácie zmenený.\n" +"Chcete zachovať svoju verziu?" + +msgid "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" + +msgid "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" + +msgid "A graphical EPG for all services of an specific bouquet" +msgstr "Grafické EPG pre všetky stanice určitého buketu" + +#, python-format +msgid "" +"A record has been started:\n" +"%s" +msgstr "" +"Nahrávanie začalo:\n" +"%s" + +msgid "" +"A recording is currently running.\n" +"What do you want to do?" +msgstr "" +"Práve sa nahráva.\n" +"Čo chcete urobiť?" + +msgid "A recording is currently running. Please stop the recording before trying to configure the positioner." +msgstr "Práve sa nahráva. Zastavte nahrávanie pred nastavovaním motora." + +msgid "A recording is currently running. Please stop the recording before trying to scan." +msgstr "" + +msgid "A recording is currently running. Please stop the recording before trying to start the satfinder." +msgstr "Práve sa nahráva. Zastavte nahrávanie pred spustením vyhľadávača satelitov." + +#, python-format +msgid "A required tool (%s) was not found." +msgstr "Požadovaný nástroj (%s) sa nenašiel." + +msgid "A search for available updates is currently in progress." +msgstr "Práve prebieha vyhľadávanie dostupných aktualizácií." + +msgid "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" +msgstr "" +"Bolo nájdené druhé nakonfigurované rozhranie.\n" +"Chcete vypnúť druhé sieťové rozhranie?" + +msgid "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" + +msgid "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" + +msgid "A small overview of the available icon states and actions." +msgstr "Tu je malý prehľad dostupných ikon štátov a činností." + +msgid "" +"A timer failed to record!\n" +"Disable TV and try again?\n" +msgstr "" +"Zlyhalo časovanie nahrávania!\n" +"Vypnúť TV a skúsiť znova?\n" + +#, fuzzy +msgid "A/V settings" +msgstr "Nastavenia A/V" + +msgid "AC3/DTS downmix" +msgstr "" + +msgid "Abort" +msgstr "Zrušiť" + +msgid "About" +msgstr "O Dreamboxe" + +msgid "About..." +msgstr "O Dreamboxe..." + +msgid "Accesspoint:" +msgstr "Prístupový bod:" + +msgid "Action on long powerbutton press" +msgstr "Činnosť pri dlhom stlačení vypínača" + +msgid "Action on short powerbutton press" +msgstr "Činnosť po krátkom stlačení sieťového vypínača" + +msgid "Activate Picture in Picture" +msgstr "Zapnúť obraz v obraze" + +#, fuzzy +msgid "Activate current configuration" +msgstr "aktivovať aktuálne nastavenie" + +msgid "Activate network settings" +msgstr "Aktivovať nastavenia siete" + +#, fuzzy +msgid "Activate the configured network settings." +msgstr "Aktivovať nastavenia siete" + +msgid "Adapter settings" +msgstr "Nastavenia adaptéra" + +msgid "Add" +msgstr "Pridať" + +msgid "Add Bookmark" +msgstr "Pridať záložku" + +msgid "Add a mark" +msgstr "Pridať značku" + +#, fuzzy +msgid "Add a nameserver entry" +msgstr "pridať DNS" + +msgid "Add a new title" +msgstr "Pridať nový titul" + +#, fuzzy +msgid "Add bookmark" +msgstr "pridať záložku" + +#, fuzzy +msgid "Add directory to playlist" +msgstr "pridať adresár do zoznamu prehrávok" + +#, fuzzy +msgid "Add file to playlist" +msgstr "pridať súbor do zoznamu prehrávok" + +#, fuzzy +msgid "Add files to playlist" +msgstr "pridať súbory do zoznamu prehrávok" + +msgid "Add more details to the crash log" +msgstr "" + +#, fuzzy +msgid "Add provider" +msgstr "pridať poskytovateľa" + +#, fuzzy +msgid "Add recording (enter recording duration)" +msgstr "pridať nahrávanie (zadajte dobu záznamu)" + +#, fuzzy +msgid "Add recording (enter recording endtime)" +msgstr "pridať nahrávanie (zadajte čas ukončenia)" + +#, fuzzy +msgid "Add recording (indefinitely)" +msgstr "pridať nahrávanie (nekonečné)" + +#, fuzzy +msgid "Add recording (stop after current event)" +msgstr "pridať nahrávanie (zastaviť po aktuálnom programe)" + +#, fuzzy +msgid "Add service" +msgstr "pridať stanicu" + +msgid "Add timer" +msgstr "Pridať časovač" + +msgid "Add title" +msgstr "Pridať titul" + +msgid "Add to bouquet" +msgstr "Pridať do buketu" + +msgid "Add to favourites" +msgstr "Pridať do obľúbených" + +msgid "Add/remove change timer for current event" +msgstr "" + +msgid "Adjust 3D settings" +msgstr "" + +msgid "Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens." +msgstr "Nastavte farby tak, aby boli jednotlivé odtiene dobre rozlíšiteľné, ale zároveň čo najsýtejšie. Ak ste s výsledkom spokojní, stlačením tlačidla OK ukončite jemné ladenie obrazu alebo číslicovými tlačidlami zvoľte iný testovací obrazec." + +msgid "Advanced" +msgstr "" + +#, fuzzy +msgid "Advanced options" +msgstr "Rozšírené voľby" + +msgid "Advanced restore" +msgstr "Rozšírené obnovenie" + +#, fuzzy +msgid "Advanced software" +msgstr "Vylepšený softvér" + +#, fuzzy +msgid "Advanced software plugin" +msgstr "Modul vylepšeného softvéru" + +#, fuzzy +msgid "Advanced video enhancement setup" +msgstr "Rozšírené nastavenie obrazu" + +#, fuzzy +msgid "Advanced video setup" +msgstr "Rozšírené nastavenie obrazu" + +msgid "After event" +msgstr "Po udalosti" + +msgid "Album" +msgstr "Album" + +msgid "Alignment of events" +msgstr "" + +msgid "Alignment of service names" +msgstr "" + +msgid "All" +msgstr "Všetky" + +msgid "All ages" +msgstr "" + +msgid "All satellites 1 (USALS)" +msgstr "" + +msgid "All satellites 2 (USALS)" +msgstr "" + +msgid "All satellites 3 (USALS)" +msgstr "" + +msgid "All satellites 4 (USALS)" +msgstr "" + +msgid "Allocate" +msgstr "" + +msgid "Allocate unused memory index" +msgstr "" + +msgid "Allow quit movieplayer with exit" +msgstr "" + +msgid "Allow subtitle language to equal audio language" +msgstr "" + +msgid "Allow subtitles for hearing impaired" +msgstr "" + +msgid "Alpha" +msgstr "Alfa" + +#, fuzzy +msgid "Alternative" +msgstr "pridať alternatívy" + +#, fuzzy +msgid "Alternative numbering mode" +msgstr "Alternatívny režim rádia" + +msgid "Alternative services tuner priority" +msgstr "Priorita tunera pri alternatívnych staniciach" + +msgid "Always ask" +msgstr "Vždy sa spýtať" + +msgid "Always hide infobar" +msgstr "" + +msgid "An empty filename is illegal." +msgstr "Prázdny názov súboru je neplatný." + +#, fuzzy +msgid "An error occurred while downloading the packetlist. Please try again." +msgstr "Chyba pri sťahovaní zoznamu paketov. Zopakujte." + +msgid "An unknown error occurred!" +msgstr "Objavila sa neznáma chyba!" + +msgid "And will put your receiver in standby over " +msgstr "" + +msgid "Any activity" +msgstr "" + +msgid "Arabic" +msgstr "Arabčina" + +msgid "Are you sure to remove this entry?" +msgstr "" + +msgid "" +"Are you sure you want to activate this network configuration?\n" +"\n" +msgstr "" +"Naozaj chcete aktivovať túto konfiguráciu siete?\n" +"\n" + +#, fuzzy +msgid "" +"Are you sure you want to delete\n" +"the following backup:\n" +msgstr "" +"Naozaj chcete zmazať\n" +"túto zálohu:\n" + +msgid "Are you sure you want to exit this wizard?" +msgstr "Naozaj chcete ukončiť tohto spirevodcu?" + +msgid "" +"Are you sure you want to restart your network interfaces?\n" +"\n" +msgstr "" +"Naozaj chcete reštartovať sieťové rozhrania?\n" +"\n" + +#, fuzzy, python-format +msgid "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Naozaj chcete obnoviť Enigma2 zo zálohy?\n" +"Enigma2 sa po obnovení reštartuje" + +#, fuzzy +msgid "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Naozaj chcete obnoviť Enigma2 zo zálohy?\n" +"Enigma2 sa po obnovení reštartuje" + +msgid "Artist" +msgstr "Umelec" + +msgid "Arts/Culture" +msgstr "" + +msgid "Ask user" +msgstr "opýtať sa" + +#, fuzzy +msgid "Aspect ratio" +msgstr "Pomer strán" + +#, fuzzy +msgid "Assigned CAIds:" +msgstr "Priradené CAIdy:" + +#, fuzzy +msgid "Assigned services/provider:" +msgstr "Priradené služby a poskytovatelia:" + +#, fuzzy +msgid "At beginning" +msgstr "Na začiatku" + +#, fuzzy +msgid "At end" +msgstr "Na konci" + +msgid "Audio" +msgstr "Zvuk" + +msgid "Audio PID" +msgstr "Zvukový PID" + +msgid "Audio language selection 1" +msgstr "" + +msgid "Audio language selection 2" +msgstr "" + +msgid "Audio language selection 3" +msgstr "" + +msgid "Audio language selection 4" +msgstr "" + +#, fuzzy +msgid "Audio options..." +msgstr "Voľby zvuku ..." + +#, fuzzy, python-format +msgid "Audio track (%s) format" +msgstr "formát zvukovej stopy (%s)" + +#, fuzzy, python-format +msgid "Audio track (%s) language" +msgstr "jazyk zvukovej stopy (%s)" + +msgid "Author: " +msgstr "Autor: " + +msgid "Authoring mode" +msgstr "Režim autorizácie" + +#. TRANSLATORS: (aspect ratio policy: always try to display as fullscreen, when there is no content (black bars) on left/right, even if this breaks the aspect. +msgid "Auto" +msgstr "Auto" + +msgid "Auto chapter split every ? minutes (0=never)" +msgstr "Automaticky rozdeľovať kapitoly každých ? minút (0 = nikdy)" + +msgid "Auto flesh" +msgstr "Automatické flešovanie" + +msgid "Auto focus" +msgstr "" + +msgid "Auto focus commencing ..." +msgstr "" + +msgid "Auto language selection" +msgstr "" + +msgid "Auto scart switching" +msgstr "Automatické prepnutie scartu" + +msgid "Automatic" +msgstr "Automaticky" + +#, fuzzy +msgid "Automatic scan" +msgstr "Automatické vyhľadávanie" + +msgid "Automatically start timeshift after" +msgstr "" + +msgid "Automatically turn on external subtitles" +msgstr "" + +msgid "Available format variables" +msgstr "Dostupné premenné formátu" + +msgid "B" +msgstr "B" + +msgid "BER" +msgstr "BER" + +msgid "BER:" +msgstr "BER:" + +msgid "Back" +msgstr "Späť" + +msgid "Background" +msgstr "Pozadie" + +#, fuzzy +msgid "Background color" +msgstr "farba pozadia" + +msgid "Background delete option" +msgstr "" + +msgid "Background delete speed" +msgstr "" + +#, fuzzy +msgid "Backup completed." +msgstr "Zálohovanie zlyhalo." + +msgid "Backup failed." +msgstr "Zálohovanie zlyhalo." + +msgid "Backup is running..." +msgstr "Zálohovanie beží..." + +msgid "Backup system settings" +msgstr "Zálohovať nastavenia systému" + +msgid "Band" +msgstr "Pásmo" + +msgid "Bandwidth" +msgstr "Šírka pásma" + +msgid "Basque" +msgstr "" + +msgid "Begin time" +msgstr "Čas začiatku" + +msgid "Behavior of 'pause and ok' when paused" +msgstr "" + +msgid "Behavior of 0 key in PiP-mode" +msgstr "Funkcia tlačidla 0 v režime obraz v obraze" + +msgid "Behavior when a movie is started" +msgstr "Činnosť po spustení filmu" + +msgid "Behavior when a movie is stopped" +msgstr "Činnosť po zastavení filmu" + +msgid "Behavior when a movie reaches the end" +msgstr "Činnosť po skončení filmu" + +msgid "Big PiP" +msgstr "" + +msgid "Bitrate:" +msgstr "Dátový tok:" + +msgid "Black screen" +msgstr "" + +msgid "Black screen till locked" +msgstr "" + +msgid "Block noise reduction" +msgstr "Potlačenie blokového šumu" + +msgid "Blue boost" +msgstr "Zosilniť modrú" + +msgid "Bookmarks" +msgstr "Záložky" + +msgid "Brightness" +msgstr "Jas" + +msgid "Bulgarian" +msgstr "" + +msgid "Burn DVD" +msgstr "Napáliť DVD" + +#, fuzzy, python-format +msgid "Burn audio track (%s)" +msgstr "napáliť zvukovú stopu (%s)" + +msgid "Burn existing image to DVD" +msgstr "Napáliť existujúci image na DVD" + +msgid "Burn to DVD" +msgstr "Napáliť na DVD..." + +msgid "Bus: " +msgstr "Zbernica:" + +msgid "By default, SNR will be shown in dB (when supported by the tuner). This setting forces SNR to be shown as a percentage instead." +msgstr "" + +msgid "C" +msgstr "C" + +msgid "C-Band" +msgstr "Pásmo C" + +msgid "CH" +msgstr "" + +msgid "CI assignment" +msgstr "Priradenie CI" + +msgid "CVBS" +msgstr "CVBS" + +msgid "Cable" +msgstr "Kábel" + +msgid "Cable Scan" +msgstr "" + +#, fuzzy +msgid "Cache thumbnails" +msgstr "Uchovať zmenšeniny" + +msgid "Calculate" +msgstr "" + +msgid "Calculate all positions" +msgstr "" + +msgid "Calculation complete" +msgstr "" + +msgid "Calibrate" +msgstr "" + +msgid "Can be used for different fps between external subtitles and video." +msgstr "" + +msgid "Cancel" +msgstr "Zrušiť" + +msgid "Cannot determine" +msgstr "" + +msgid "Cannot find any signal ..., aborting !" +msgstr "" + +msgid "Cannot move files on a different disk or system to the trash can" +msgstr "" + +msgid "Cannot move to trash can" +msgstr "" + +msgid "Capacity: " +msgstr "Kapacita:" + +msgid "Card" +msgstr "Karta" + +msgid "Cascade PiP" +msgstr "" + +msgid "Center DVB subtitles" +msgstr "" + +msgid "Center time-labels and remove date" +msgstr "" + +msgid "Change bouquets in quickzap" +msgstr "Zmeniť bukety pri rýchlom prepínaní" + +msgid "Change pin code" +msgstr "Zmeniť kód PIN" + +#, fuzzy +msgid "Change recording (duration)" +msgstr "zmeniť nahrávanie (trvanie)" + +#, fuzzy +msgid "Change recording (endtime)" +msgstr "zmeniť nahrávanie (čas ukončenia)" + +msgid "Change repeat and delay settings?" +msgstr "" + +msgid "Change service PIN" +msgstr "Zmeniť PIN stanice" + +msgid "Change service PINs" +msgstr "Zmeniť PINy staníc" + +msgid "Change setup PIN" +msgstr "Zmeniť PIN nastavení" + +msgid "Change step size" +msgstr "Zmeniť veľkosť kroku" + +msgid "Change timer" +msgstr "" + +msgid "Changelog" +msgstr "Protokol zmien" + +msgid "Channel" +msgstr "Stanica" + +#, fuzzy +msgid "Channel list type" +msgstr "Menu zoznamu staníc" + +msgid "Channel not in services list" +msgstr "Stanica nie je v zozname staníc" + +#, fuzzy +msgid "Channel selection" +msgstr "Voľba stanice" + +msgid "Channel:" +msgstr "Stanica:" + +msgid "Channellist menu" +msgstr "Menu zoznamu staníc" + +msgid "Chap." +msgstr "Kap." + +msgid "Chapter" +msgstr "Kapitola" + +msgid "Chapter:" +msgstr "Kapitola:" + +msgid "Check" +msgstr "Skontrolovať" + +msgid "Check the internet connection" +msgstr "" + +msgid "Check the internet connection again" +msgstr "" + +#, fuzzy +msgid "Checking filesystem..." +msgstr "Kontrolujem systém súborov..." + +msgid "Checking the internet connection" +msgstr "" + +#, python-format +msgid "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" +msgstr "" + +msgid "Children/Youth" +msgstr "" + +msgid "Choose which tuner to configure." +msgstr "" + +msgid "Circular left" +msgstr "Kruhová ľavá" + +msgid "Circular right" +msgstr "Kruhová pravá" + +msgid "Cleanup" +msgstr "Vyčistiť" + +msgid "Clear" +msgstr "" + +msgid "Clear before scan" +msgstr "Vymazať pred skenovaním" + +msgid "Clear fixed" +msgstr "" + +msgid "Clear log" +msgstr "Vymazať log" + +#, fuzzy +msgid "Clear playlist" +msgstr "vymazať zoznam prehrávok" + +msgid "Close" +msgstr "Zatvoriť" + +msgid "Close PiP on exit" +msgstr "" + +msgid "Close title selection" +msgstr "Zatvoriť výber titulkov" + +msgid "Code rate HP" +msgstr "" + +msgid "Code rate LP" +msgstr "" + +msgid "Coderate HP" +msgstr "Rýchlosť HP" + +msgid "Coderate LP" +msgstr "Rýchlosť LP" + +msgid "Collection name" +msgstr "Názov zostavy" + +msgid "Collection settings" +msgstr "Nastavenia zostavy" + +#, fuzzy +msgid "Color format" +msgstr "Formát farby" + +msgid "Command execution..." +msgstr "Vykonávanie príkazu..." + +msgid "Command order" +msgstr "Poradie príkazov" + +msgid "Common Interface" +msgstr "Common Interface" + +#, fuzzy +msgid "Common Interface assignment" +msgstr "Priradenie CI" + +msgid "Communication" +msgstr "Komunikácia" + +#, fuzzy +msgid "Compact flash" +msgstr "Compact Flash" + +msgid "Complete" +msgstr "Kompletné" + +msgid "Complex (allows mixing audio tracks and aspects)" +msgstr "Komplexné (umožňuje miešanie rôznych zvukových a obrazových formátov)" + +msgid "Composition of the recording filenames" +msgstr "Zloženie názvov súborov nahrávok" + +#, fuzzy +msgid "Configuration mode" +msgstr "Možnosti nastavenia" + +#, fuzzy, python-format +msgid "Configuration mode: %s" +msgstr "Možnosti nastavenia" + +#, fuzzy +msgid "Configuration..." +msgstr "Konfigurácia siete..." + +msgid "Configure an additional delay to improve external subtitle synchronisation." +msgstr "" + +msgid "Configure an additional delay to improve subtitle synchronisation." +msgstr "" + +msgid "Configure for how long the infobar will remain visible after activation." +msgstr "" + +msgid "Configure for how many minutes finished events should remain visible in the EPG. Useful when you need information about an event which has just finished, or has been delayed." +msgstr "" + +msgid "Configure how recording filenames are constructed." +msgstr "" + +msgid "Configure how the fan should operate" +msgstr "" + +msgid "Configure if and how crypto icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how long the latest service in the PiP will be remembered." +msgstr "" + +msgid "Configure if and how service type icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how wide columns will be shown in the channel selection list." +msgstr "" + +msgid "Configure if service picons will be shown in the channel selection list." +msgstr "" + +msgid "Configure interface" +msgstr "Nakonfigurujte rozhranie" + +msgid "Configure nameservers" +msgstr "Nastavte názvy serverov" + +msgid "Configure on which devices the background delete option should be used." +msgstr "" + +#, fuzzy +msgid "Configure remote control type" +msgstr "Typ rodičovskej zámky" + +msgid "Configure the DiSEqC mode for this LNB." +msgstr "" + +#, fuzzy +msgid "Configure the IP address." +msgstr "Nakonfigurujte rozhranie" + +msgid "Configure the aspect ratio of the screen." +msgstr "" + +msgid "Configure the behavior of the 'pause and ok' key when movie playback is already paused." +msgstr "" + +#, fuzzy +msgid "Configure the behavior when movie playback is manually stopped." +msgstr "Činnosť po zastavení filmu" + +#, fuzzy +msgid "Configure the behavior when movie playback is started." +msgstr "Činnosť po spustení filmu" + +msgid "Configure the behavior when reaching the end of a movie, during movie playback." +msgstr "" + +msgid "Configure the border width of the subtitles. The dark border makes the subtitles easier to read on a light background." +msgstr "" + +msgid "Configure the brightness level of the front panel display during standby." +msgstr "" + +msgid "Configure the brightness level of the front panel display." +msgstr "" + +msgid "Configure the color of the external subtitles, alternative (normal in white, italic in yellow, bold in cyan, underscore in green), white or yellow." +msgstr "" + +msgid "Configure the color of the teletext subtitles." +msgstr "" + +msgid "Configure the contrast level of the front panel display." +msgstr "" + +msgid "Configure the cursor behaviour in the channel selection list. When opening the channel selection list you can keep on the current service or already select up/down and you are able to revert the B+/B- buttons." +msgstr "" + +msgid "Configure the duration in hours the receiver should go to standby when the receiver is not controlled." +msgstr "" + +msgid "Configure the duration in minutes for the screensaver." +msgstr "" + +msgid "Configure the duration in minutes for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +msgstr "" + +msgid "Configure the duration when the receiver should go to shut down in case the receiver is in standby mode." +msgstr "" + +msgid "Configure the first audio language (highest priority)." +msgstr "" + +msgid "Configure the first subtitle language (highest priority)." +msgstr "" + +msgid "Configure the font size of the subtitles." +msgstr "" + +msgid "Configure the fourth audio language." +msgstr "" + +#, fuzzy +msgid "Configure the fourth subtitle language." +msgstr "prepnúť na nasledujúci jazyk podtitulkov" + +msgid "Configure the function of a long press on the power button." +msgstr "" + +msgid "Configure the function of a short press on the power button." +msgstr "" + +msgid "Configure the function of the '0' button do when PIP is active." +msgstr "" + +#, fuzzy +msgid "Configure the gateway." +msgstr "Nakonfigurujte rozhranie" + +msgid "Configure the general audio delay of Dolby Digital sound tracks." +msgstr "" + +msgid "Configure the general audio delay of stereo sound tracks." +msgstr "" + +msgid "Configure the hard disk drive to go to standby after the specified idle time." +msgstr "" + +msgid "Configure the horizontal alignment of the subtitles." +msgstr "" + +msgid "Configure the initial fast forward speed. When you press the fast forward button, winding will start at this speed." +msgstr "" + +msgid "Configure the initial rewind speed. When you press the rewind button, winding will start at this speed." +msgstr "" + +msgid "Configure the latitude of your location." +msgstr "" + +msgid "Configure the longitude of your location." +msgstr "" + +msgid "Configure the minimum amount of disk space to be available for recordings. When the amount of space drops below this value, deleted items will be removed from the trash can." +msgstr "" + +#, fuzzy +msgid "Configure the nameserver (DNS)." +msgstr "Nastavte názvy serverov" + +#, fuzzy +msgid "Configure the netmask." +msgstr "Nakonfigurujte rozhranie" + +msgid "Configure the number of days after which items are automaticaly removed from the trash can." +msgstr "" + +msgid "Configure the number of days old timers are kept before they are automatically removed from the timer list." +msgstr "" + +msgid "Configure the offline decoding delay in milliseconds. The configured delay is observed at each control word parity change." +msgstr "" + +#, fuzzy +msgid "Configure the possible fast forward speeds." +msgstr "Počiatočná rýchlosť prevíjania vpred" + +msgid "Configure the possible rewind speeds." +msgstr "" + +msgid "Configure the primary EPG language." +msgstr "" + +msgid "Configure the refresh rate of the screen." +msgstr "" + +msgid "Configure the screen resolution in PC output mode." +msgstr "" + +msgid "Configure the second audio language." +msgstr "" + +#, fuzzy +msgid "Configure the second subtitle language." +msgstr "prepnúť na nasledujúci jazyk podtitulkov" + +msgid "Configure the secondary EPG language." +msgstr "" + +msgid "Configure the sharpness of the video scaling." +msgstr "" + +msgid "Configure the skip time interval for the '1'/'3' buttons." +msgstr "" + +msgid "Configure the skip time interval for the '4'/'6' buttons." +msgstr "" + +msgid "Configure the skip time interval for the '7'/'9' buttons." +msgstr "" + +#, fuzzy +msgid "Configure the slow motion speeds." +msgstr "Rýchlosti časovej lupy" + +msgid "Configure the source of the frontend data as shown on the infobars. 'Settings' is as stored on the settings. 'Tuner' is as reported by the tuner." +msgstr "" + +msgid "Configure the speed of the background deletion process. Lower speed will consume less hard disk drive performance." +msgstr "" + +msgid "Configure the speed of the fan" +msgstr "" + +msgid "Configure the subtitle delay when timing information is not available." +msgstr "" + +msgid "Configure the third audio language." +msgstr "" + +#, fuzzy +msgid "Configure the third subtitle language." +msgstr "prepnúť na nasledujúci jazyk podtitulkov" + +msgid "Configure the transparency of the OSD." +msgstr "" + +msgid "Configure the transparency of the black background of graphical DVB subtitles." +msgstr "" + +#, fuzzy +msgid "Configure the tuner mode." +msgstr "Možnosti nastavenia" + +msgid "Configure the type of status indication icons shown in the movielist." +msgstr "" + +msgid "Configure the vertical position of the subtitles, measured from the bottom of the screen." +msgstr "" + +msgid "Configure the video output mode (or resolution)." +msgstr "" + +msgid "Configure the way in which the receiver changes channels." +msgstr "" + +msgid "Configure where completed timers show up in the timer list." +msgstr "" + +msgid "Configure whether (and for how long) a second infobar will be shown when OK is pressed twice. The second infobar contains additional information about the current channel." +msgstr "" + +msgid "Configure whether multi channel sound tracks should be downmixed to stereo." +msgstr "" + +msgid "Configure whether or not an icon should be shown when your motorized dish is moving." +msgstr "" + +msgid "Configure which access level to use for the configuration menu. Expert level gives access to all items." +msgstr "" + +msgid "Configure which color format should be used on the SCART output." +msgstr "" + +msgid "Configure which tuner for recordings will be preferred, when more than one tuner is available." +msgstr "" + +msgid "Configure which tuner type will be preferred, when the same service is available on different types of tuners." +msgstr "" + +msgid "Configure which tuner will be preferred, when more than one tuner is available. If set to 'auto' the system will give priority to the tuner having the lowest number of channels/satellites." +msgstr "" + +msgid "Configure your internal LAN" +msgstr "Nakonfigurujte internú LAN" + +msgid "Configure your network again" +msgstr "Znova nakonfigurujte sieť" + +msgid "Configure your network settings, and press OK to start the scan" +msgstr "" + +msgid "Configure your wireless LAN again" +msgstr "Znova nakonfigurujte bezdrôtovú sieť" + +msgid "Configures which video output connector will be used." +msgstr "" + +msgid "Configuring" +msgstr "Konfigurujem" + +msgid "Conflicting timer" +msgstr "Časovanie sa prekrýva" + +msgid "Connect" +msgstr "Pripojiť" + +#, fuzzy +msgid "Connect to a wireless network" +msgstr "Pripojiť k bezdrôtovej sieti" + +msgid "Connected satellites" +msgstr "" + +msgid "Connected to" +msgstr "Pripojené k " + +msgid "Connected!" +msgstr "Pripojené!" + +msgid "Constellation" +msgstr "Zostava" + +msgid "Content does not fit on DVD!" +msgstr "Obsah sa nezmestí na DVD!" + +msgid "Continue" +msgstr "Pokračovať" + +msgid "Continue in background" +msgstr "Pokračovať v pozadí" + +#, fuzzy +msgid "Continue playback" +msgstr "Pokračovať v prehrávaní" + +msgid "Continue playing" +msgstr "Pokračovať v prehrávaní" + +msgid "Continues play (loop)" +msgstr "" + +msgid "Contrast" +msgstr "Kontrast" + +msgid "Convert ext3 filesystem to ext4" +msgstr "" + +msgid "Convert ext3 to ext4" +msgstr "" + +msgid "Converting ext3 to ext4..." +msgstr "" + +msgid "Copy" +msgstr "" + +msgid "Could not connect to receiver .NFI image feed server:" +msgstr "" + +msgid "Could not find installed channel list." +msgstr "" + +#, fuzzy +msgid "Could not load medium! No disc inserted?" +msgstr "Nemôžem použiť médium. Je vložený disk?" + +msgid "Could not open Picture in Picture" +msgstr "Nedá sa otvoriť obraz v obraze" + +#, fuzzy, python-format +msgid "Could not record due to conflicting timer %s" +msgstr "Nedalo sa nahrávať - prekrýva sa časovanie %s" + +#, fuzzy, python-format +msgid "Could not record due to invalid service %s" +msgstr "Nedalo sa nahrať pre neplatnú stanicu %s" + +msgid "Create DVD-ISO" +msgstr "Vytvoriť disk DVD-ISO" + +msgid "Create more detailed crash log" +msgstr "" + +#, python-format +msgid "Creating directory %s failed." +msgstr "Nepodarilo sa vytvoriť adresár %s." + +#, fuzzy +msgid "Creating filesystem" +msgstr "Kontrolujem systém súborov..." + +msgid "Creating partition" +msgstr "" + +msgid "Croatian" +msgstr "Chorvátčina" + +msgid "Current CEC address" +msgstr "" + +msgid "Current device: " +msgstr "Aktuálne zariadenie:" + +msgid "Current event EPG" +msgstr "" + +#, python-format +msgid "Current mode: %s \n" +msgstr "" + +msgid "Current settings:" +msgstr "Aktuálne nastavenia:" + +#, fuzzy +msgid "Current transponder" +msgstr "Aktuálny transpondér" + +msgid "Current value: " +msgstr "Aktuálna hodnota:" + +msgid "Current version:" +msgstr "Aktuálna verzia:" + +msgid "Currently installed image" +msgstr "Aktuálne nainštalovaný image" + +msgid "Currently the commit log cannot be retrieved - please try later again" +msgstr "" + +#, fuzzy +msgid "Custom skip time for '1'/'3' buttons" +msgstr "Vlastný posun času pre tlačidlá 1 a 3" + +#, fuzzy +msgid "Custom skip time for '4'/'6' buttons" +msgstr "Vlastný posun času pre tlačidlá 4 a 6" + +#, fuzzy +msgid "Custom skip time for '7'/'9' buttons" +msgstr "Vlastný posun času pre tlačidlá 7 a 9" + +msgid "Customize" +msgstr "Upraviť" + +msgid "Customize channel list cursor behavior" +msgstr "" + +msgid "Cut" +msgstr "Strih" + +msgid "Cutlist editor..." +msgstr "Editor strihov..." + +msgid "Czech" +msgstr "Čeština" + +msgid "D" +msgstr "D" + +msgid "DHCP" +msgstr "DHCP" + +#, fuzzy +msgid "DMM advanced" +msgstr "rozšírené" + +msgid "DMM normal" +msgstr "" + +msgid "DUAL LAYER DVD" +msgstr "DVOJVRSTVOVÉ DVD" + +msgid "DVB subtitle black transparency" +msgstr "" + +msgid "DVB-C" +msgstr "" + +msgid "DVB-C ANNEX C" +msgstr "" + +msgid "DVB-S" +msgstr "DVB-S" + +msgid "DVB-S2" +msgstr "DVB-S2" + +msgid "DVB-T" +msgstr "" + +msgid "DVB-T2" +msgstr "" + +msgid "DVD data format" +msgstr "" + +#, fuzzy +msgid "DVD file browser" +msgstr "Prehliadač súborov DVD" + +msgid "DVD media toolbox" +msgstr "Nástroje pre DVD" + +#, fuzzy +msgid "DVD player" +msgstr "Prehrávač DVD" + +#, fuzzy +msgid "DVD titlelist" +msgstr "Zoznam titulov DVD" + +msgid "Danish" +msgstr "Dánčina" + +msgid "Date" +msgstr "Dátum" + +#, fuzzy +msgid "Date/time input" +msgstr "Nastavenie dátumu a času" + +#, fuzzy +msgid "Deep standby" +msgstr "Vypnúť" + +msgid "Default" +msgstr "Predvolené" + +msgid "Default movie location" +msgstr "Predvolené umiestnenie filmov" + +#, fuzzy +msgid "Default settings" +msgstr "Predvolené nastavenia" + +msgid "Delay before key repeat starts:" +msgstr "" + +msgid "Delay for external subtitles" +msgstr "" + +msgid "Delete" +msgstr "Vymazať" + +msgid "Delete entry" +msgstr "Vymazať zadanie" + +msgid "Delete failed!" +msgstr "Vymazanie zlyhalo!" + +#, fuzzy +msgid "Delete file" +msgstr "zmazať súbor" + +#, fuzzy +msgid "Delete playlist entry" +msgstr "zmazať položku zoznamu prehrávok" + +#, fuzzy +msgid "Delete saved playlist" +msgstr "zmazať uložený zoznam prehrávok" + +msgid "Delete timer" +msgstr "" + +#, fuzzy +msgid "Delete..." +msgstr "zmazať..." + +msgid "Deleted" +msgstr "" + +msgid "Deleted items" +msgstr "" + +msgid "Depth" +msgstr "" + +msgid "Descramble http streams" +msgstr "" + +msgid "Description" +msgstr "Opis" + +msgid "Deselect" +msgstr "Zrušiť výber" + +msgid "Details for plugin: " +msgstr "Údaje o module:" + +msgid "Detected HDD:" +msgstr "Zistený pevný disk:" + +msgid "Detected NIMs:" +msgstr "Zistené tunery:" + +msgid "Devicename:" +msgstr "" + +msgid "Devide" +msgstr "" + +msgid "DiSEqC" +msgstr "DiSEqC" + +msgid "DiSEqC 1.0 command" +msgstr "" + +msgid "DiSEqC 1.1 command" +msgstr "" + +msgid "DiSEqC 1.1 repeats" +msgstr "" + +msgid "DiSEqC A/B" +msgstr "DiSEqC A/B" + +msgid "DiSEqC A/B/C/D" +msgstr "DiSEqC A/B/C/D" + +msgid "DiSEqC mode" +msgstr "Režim DiSEqC" + +#, fuzzy, python-format +msgid "DiSEqC port %s: %s" +msgstr "Opakovania DiSEqC" + +#, fuzzy +msgid "DiSEqC-tester settings" +msgstr "Nastavenia testovača DiSEqC" + +msgid "Dialing:" +msgstr "Vytáčam:" + +msgid "Digital contour removal" +msgstr "Odstránenie digitálnych obrysov" + +msgid "Direct playback of linked titles without menu" +msgstr "Priame prehrávanie prepojených titulov bez menu" + +msgid "Directory" +msgstr "" + +#, fuzzy, python-format +msgid "Directory %s does not exist." +msgstr "Adresár %s neexistuje." + +#, python-format +msgid "Directory %s nonexistent." +msgstr "" + +msgid "Directory browser" +msgstr "Prehľadávač adresárov" + +#, python-format +msgid "Directory contains %d file(s) and %d sub-directories.\n" +msgstr "" + +#, fuzzy, python-format +msgid "Directory contains %s and %s." +msgstr "Adresár %s neexistuje." + +msgid "Disable" +msgstr "Vypnúť" + +msgid "Disable Picture in Picture" +msgstr "Vypnúť obraz v obraze" + +msgid "Disable background scanning" +msgstr "" + +msgid "Disable timer" +msgstr "" + +msgid "Disabled" +msgstr "Vypnuté" + +msgid "Disconnect" +msgstr "Odpojiť" + +msgid "Disk space to reserve for recordings (in GB)" +msgstr "" + +msgid "Display 16:9 content as" +msgstr "Obraz 16:9 zobraziť ako" + +msgid "Display 4:3 content as" +msgstr "Obraz 4:3 zobraziť ako" + +msgid "Display >16:9 content as" +msgstr "Obraz >16:9 zobraziť ako" + +#, fuzzy +msgid "Display and userinterface" +msgstr "Displej a užívateľské rozhranie" + +msgid "Display message before playing next movie" +msgstr "" + +#, fuzzy +msgid "Display setup" +msgstr "Nastavenie displeja" + +#, fuzzy +msgid "Do not change" +msgstr "nemeniť" + +#, fuzzy +msgid "Do not record" +msgstr "nenahrávať" + +#, fuzzy +msgid "Do nothing" +msgstr "nič nerobiť" + +msgid "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" +msgstr "" +"Naozaj chcete skontrolovať systém súborov?\n" +"Môže to trvať dosť dlho!" + +msgid "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" +msgstr "" + +#, python-format +msgid "Do you really want to delete %s?" +msgstr "Naozaj chcete zmazať %s?" + +#, python-format +msgid "" +"Do you really want to download\n" +"the plugin \"%s\"?" +msgstr "" +"Naozaj chcete stiahnuť\n" +"modul \"%s\"?" + +msgid "Do you really want to exit?" +msgstr "Naozaj chcete skončiť?" + +msgid "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" +msgstr "" + +#, fuzzy, python-format +msgid "" +"Do you really want to remove\n" +"the plugin \"%s\"?" +msgstr "" +"Naozaj chcete stiahnuť\n" +"modul \"%s\"?" + +#, python-format +msgid "Do you really want to remove directory %s from the disk?" +msgstr "Naozaj chcete z disku odstrániť adresár %s?" + +#, python-format +msgid "Do you really want to remove your bookmark of %s?" +msgstr "Naozaj chcete odstrániť záložku %s?" + +msgid "Do you want this?" +msgstr "" + +msgid "Do you want to burn this collection to DVD medium?" +msgstr "Chcete túto zostavu napáliť na DVD?" + +msgid "Do you want to do a service scan?" +msgstr "Chcete vyhľadať stanice?" + +msgid "Do you want to do another manual service scan?" +msgstr "Chcete urobiť ďalšie ručné vyhľadávanie staníc?" + +#, python-format +msgid "Do you want to download the image to %s ?" +msgstr "Chcete stiahnuť image na %s?" + +#, fuzzy +msgid "Do you want to install a channel list?" +msgstr "Chcete nainštalovať balíček:\n" + +msgid "Do you want to install the package:\n" +msgstr "Chcete nainštalovať balíček:\n" + +msgid "Do you want to play DVD in drive?" +msgstr "Chcete prehrať DVD v mechanike?" + +msgid "Do you want to preview this DVD before burning?" +msgstr "Chcete si toto DVD prezrieť pred napálením?" + +msgid "Do you want to reboot your receiver?" +msgstr "" + +msgid "Do you want to remove the package:\n" +msgstr "Chcete odstrániť balíček:\n" + +msgid "Do you want to restore your settings?" +msgstr "Chcete obnoviť nastavenia?" + +msgid "Do you want to resume this playback?" +msgstr "Chcete pokračovať v prehrávaní?" + +#, fuzzy, python-format +msgid "Do you want to update your receiver to %s?" +msgstr "Chcete stiahnuť image na %s?" + +msgid "Do you want to update your receiver?" +msgstr "" + +msgid "Do you want to upgrade the package:\n" +msgstr "Chcete aktualizovať balíček:\n" + +msgid "Don't stop current event but disable coming events" +msgstr "Nezastaviť aktuálny záznam, ale vypnúť nasledujúce záznamy." + +#, fuzzy, python-format +msgid "Done - Installed, upgraded or removed %d package (%s)" +msgid_plural "Done - Installed, upgraded or removed %d packages (%s)" +msgstr[0] "Hotovo - %d nainštalovaných, aktualizovaných alebo odstránených balíčkov s %d chybami" +msgstr[1] "Hotovo - %d nainštalovaných, aktualizovaných alebo odstránených balíčkov s %d chybami" +msgstr[2] "Hotovo - %d nainštalovaných, aktualizovaných alebo odstránených balíčkov s %d chybami" + +msgid "Download" +msgstr "Stiahnuť" + +#, fuzzy, python-format +msgid "Download %s from server" +msgstr "Stiahnuť %s zo servera" + +msgid "Download .NFI-files for USB-flasher" +msgstr "Stiahnuť súbory .NFI pre USB-Flasher" + +#, fuzzy +msgid "Download plugins" +msgstr "Stiahnuť prídavné moduly" + +msgid "Downloadable new plugins" +msgstr "Nové moduly na stiahnutie" + +msgid "Downloadable plugins" +msgstr "Moduly na stiahnutie" + +msgid "Downloading" +msgstr "Sťahovanie" + +msgid "Downloading plugin information. Please wait..." +msgstr "Sťahujem informácie o moduloch. Čakajte..." + +msgid "Dutch" +msgstr "Holandčina" + +msgid "Dynamic contrast" +msgstr "Dynamický kontrast" + +msgid "E" +msgstr "V" + +msgid "EPG" +msgstr "" + +msgid "EPG language selection 1" +msgstr "" + +msgid "EPG language selection 2" +msgstr "" + +#, fuzzy +msgid "EPG selection" +msgstr "Voľba EPG" + +msgid "EPG settings" +msgstr "" + +#, python-format +msgid "ERROR - failed to scan (%s)!" +msgstr "CHYBA - zlyhalo vyhľadávanie (%s)!" + +msgid "East" +msgstr "východne" + +msgid "East limit set" +msgstr "" + +msgid "Edit" +msgstr "Upraviť" + +msgid "Edit DNS" +msgstr "Upraviť DNS" + +msgid "Edit bouquets list" +msgstr "Upraviť zoznam buketov" + +msgid "Edit chapters of current title" +msgstr "Upraviť kapitoly aktuálneho titulu" + +msgid "Edit services list" +msgstr "Upraviť zoznam staníc" + +msgid "Edit settings" +msgstr "Upraviť nastavenia" + +#, fuzzy +msgid "Edit the nameserver configuration of your receiver.\n" +msgstr "zatvoriť nastavovanie DNS" + +msgid "Edit the network configuration of your receiver.\n" +msgstr "" + +msgid "Edit timer" +msgstr "" + +msgid "Edit title" +msgstr "Upraviť titul" + +msgid "Edit upgrade source url." +msgstr "Upraviť URL zdroja aktualizácie." + +msgid "Education/Science/..." +msgstr "" + +msgid "Electronic Program Guide" +msgstr "Elektronický programový sprievodca" + +msgid "Enable" +msgstr "Zapnúť" + +msgid "Enable 'neutrino' style channel select controlling" +msgstr "" + +msgid "Enable 'neutrino' style zap controlling" +msgstr "" + +msgid "Enable 5V for active antenna" +msgstr "Zapnúť 5 V pre aktívnu anténu" + +msgid "Enable EIT EPG" +msgstr "" + +msgid "Enable MHW EPG" +msgstr "" + +msgid "Enable Netmed EPG" +msgstr "" + +msgid "Enable OK for channel selection" +msgstr "" + +msgid "Enable ViaSat EPG" +msgstr "" + +msgid "Enable Virgin EPG" +msgstr "" + +msgid "Enable Wake On LAN" +msgstr "" + +msgid "Enable auto fast scan" +msgstr "" + +#, fuzzy +msgid "Enable bouquet selection in multi-EPG" +msgstr "zapnúť úpravu buketu" + +msgid "Enable freesat EPG" +msgstr "" + +msgid "Enable multiple bouquets" +msgstr "Zapnúť viacnásobné bukety" + +msgid "Enable parental control" +msgstr "Zapnúť rodičovskú zámku" + +msgid "Enable teletext caching" +msgstr "" + +msgid "Enable zapping with CH+/-, B+/-, P+/-" +msgstr "" + +msgid "Enabled" +msgstr "Zapnuté" + +msgid "Encrypted: " +msgstr "Šifrované:" + +msgid "Encryption" +msgstr "Šifrovanie" + +#, fuzzy +msgid "Encryption key" +msgstr "Šifrovací kľúč WLAN" + +#, fuzzy +msgid "Encryption key type" +msgstr "Druh šifrovacieho kľúča" + +msgid "Encryption:" +msgstr "Šifrovanie:" + +msgid "End time" +msgstr "Čas ukončenia" + +msgid "End time to ignore inactivity sleeptimer" +msgstr "" + +msgid "End time to ignore shutdown in standby" +msgstr "" + +msgid "English" +msgstr "Angličtina" + +msgid "Enigma2 skin selector" +msgstr "" + +msgid "Enter main menu..." +msgstr "Otvoriť hlavné menu..." + +msgid "Enter pin code" +msgstr "Zadajte kód PIN" + +msgid "Enter the service pin" +msgstr "Zadajte PIN stanice" + +msgid "Equal to" +msgstr "" + +msgid "Error" +msgstr "Chyba" + +msgid "Error code" +msgstr "" + +msgid "Error executing plugin" +msgstr "Chyba pri spustení modulu" + +#, python-format +msgid "" +"Error: %s\n" +"Retry?" +msgstr "" +"Chyba: %s\n" +"Zopakovať?" + +msgid "Estonian" +msgstr "Estónčina" + +msgid "Ethernet network interface" +msgstr "Rozhranie siete Eternet" + +msgid "Event font size (relative to skin size)" +msgstr "" + +#, fuzzy +msgid "Event view" +msgstr "Prehľad programov" + +#, fuzzy +msgid "Event view menu" +msgstr "Prehľad programov" + +msgid "Everywhere" +msgstr "" + +msgid "Exceeds dual layer medium!" +msgstr "Presahuje kapacitu dvojvrstvového DVD!" + +msgid "Execution finished!!" +msgstr "Skončené!!" + +#, fuzzy +msgid "Execution progress:" +msgstr "Priebeh vykonávania:" + +msgid "Exif" +msgstr "Exif" + +msgid "Exit" +msgstr "Ukončiť" + +msgid "Exit EPG" +msgstr "" + +msgid "Exit editor" +msgstr "Ukončiť editor" + +msgid "Exit input device selection." +msgstr "Ukončiť výber vstupného zariadenia." + +msgid "Exit media player?" +msgstr "" + +#, fuzzy +msgid "Exit mediaplayer" +msgstr "zatvoriť prehrávač médií" + +#, fuzzy +msgid "Exit movie list" +msgstr "zatvoriť zoznam filmov" + +#, fuzzy +msgid "Exit movie player?" +msgstr "zatvoriť prehrávač médií" + +#, fuzzy +msgid "Exit nameserver configuration" +msgstr "zatvoriť nastavovanie DNS" + +#, fuzzy +msgid "Exit network interface list" +msgstr "zatvoriť zoznam sieťových rozhraní" + +msgid "Exit network wizard" +msgstr "Ukončiť sprievodcu sieťou" + +msgid "Exit the wizard" +msgstr "Ukončiť sprievodcu" + +msgid "Expert" +msgstr "expertný" + +msgid "Extend sleeptimer 15 minutes" +msgstr "" + +msgid "Extended Software" +msgstr "Rozšírený softvér" + +msgid "Extended Software Plugin" +msgstr "Modul rozšíreného softvéru" + +#, fuzzy +msgid "Extended network setup plugin..." +msgstr "Modul rozšíreného nastavenia siete..." + +#, fuzzy +msgid "Extended setup..." +msgstr "Rozšírené nastavenie..." + +msgid "Extensions" +msgstr "Rozšírenia" + +msgid "Extensions management" +msgstr "Správa rozšírení" + +msgid "External PiP" +msgstr "" + +msgid "External subtitle color" +msgstr "" + +msgid "Extra motor options" +msgstr "" + +msgid "FEC" +msgstr "FEC" + +msgid "FTA" +msgstr "" + +msgid "Factory reset" +msgstr "Továrenské nastavenia" + +msgid "Failed" +msgstr "Zlyhalo" + +msgid "Failed to write /tmp/positionersetup.log: " +msgstr "" + +#, python-format +msgid "Fan %d" +msgstr "Ventilítor %d" + +#, python-format +msgid "Fan %d PWM" +msgstr "PWM ventilátora %d" + +#, fuzzy, python-format +msgid "Fan %d voltage" +msgstr "Napätie na ventilátore %d" + +msgid "Fan operation" +msgstr "" + +msgid "Fan speed" +msgstr "" + +msgid "Fast" +msgstr "rýchlo" + +msgid "Fast DiSEqC" +msgstr "Rýchly DiSEqC" + +msgid "Fast Scan" +msgstr "" + +msgid "Fast epoch" +msgstr "rýchla doba" + +#, fuzzy +msgid "Fast forward speeds" +msgstr "Rýchlosti prevíjania vpred" + +msgid "Favourites" +msgstr "Obľúbené" + +msgid "File appears to be busy.\n" +msgstr "" + +#, fuzzy +msgid "Filesystem check" +msgstr "Kontrola systému súborov" + +msgid "Final position at" +msgstr "" + +msgid "Final position at index" +msgstr "" + +msgid "Fine movement" +msgstr "" + +msgid "Finetune" +msgstr "Jemné nastavenie" + +msgid "Finished" +msgstr "Skončené" + +msgid "Finished configuring your network" +msgstr "Nastavenie siete je skončené" + +msgid "Finished restarting your network" +msgstr "Reštartovanie siete je skončené" + +msgid "Finnish" +msgstr "Fínčina" + +msgid "Fixed" +msgstr "" + +msgid "Flash" +msgstr "Flešovať" + +msgid "Flashing failed" +msgstr "Flešovanie zlyhalo" + +msgid "Following tasks will be done after you press OK!" +msgstr "Po stlačení OK sa vykonajú tieto úlohy." + +msgid "Format" +msgstr "Formát" + +msgid "Forward volume keys" +msgstr "" + +msgid "Frame size in full view" +msgstr "Veľkosť obrazu pri plnom zobrazení" + +msgid "French" +msgstr "Francúzština" + +msgid "Frequency" +msgstr "Kmitočet" + +msgid "Frequency bands" +msgstr "Kmitočtové pásma" + +msgid "Frequency scan step size(khz)" +msgstr "Kmitočtový krok pri vyhľadávaní (kHz)" + +msgid "Frequency steps" +msgstr "Kmitočtové kroky" + +msgid "Frequency:" +msgstr "" + +msgid "Fri" +msgstr "Pi" + +msgid "Friday" +msgstr "Piatok" + +msgid "From :" +msgstr "" + +#, python-format +msgid "Frontprocessor version: %d" +msgstr "Verzia frontprocesora: %d" + +msgid "Full transparency" +msgstr "" + +msgid "Fulview resulution" +msgstr "" + +msgid "Function of OK button" +msgstr "" + +msgid "Further Options" +msgstr "" + +msgid "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" +msgstr "" +"Pre použitie nového vzhľadu sa musí reštartovať GUI\n" +"Chcete teraz reštartovať GUI?" + +msgid "Gateway" +msgstr "Brána" + +#, fuzzy +msgid "General AC3 delay" +msgstr "Oneskorenie AC3" + +#, fuzzy +msgid "General PCM delay" +msgstr "Oneskorenie PCM" + +msgid "Genre" +msgstr "Žáner" + +msgid "German" +msgstr "Nemčina" + +msgid "Get latest experimental image" +msgstr "Získať najnovší experimentálny image" + +msgid "Get latest release image" +msgstr "Získať najnovší hotový image" + +msgid "Getting plugin information. Please wait..." +msgstr "Získavam informácie o module. Čakajte..." + +msgid "Go down the list" +msgstr "" + +msgid "Go to first movie or last item" +msgstr "" + +msgid "Go to first movie or top of list" +msgstr "" + +#, fuzzy +msgid "Go to first service" +msgstr "nahor na prvú položku" + +#, fuzzy +msgid "Go to last service" +msgstr "Ochrániť stanice" + +#, fuzzy +msgid "Go to next event" +msgstr "nadol na nasledujúcu položku" + +#, fuzzy +msgid "Go to next page of service" +msgstr "Prepnúť na nasledujúci podkanál" + +#, fuzzy +msgid "Go to previous event" +msgstr "nahor na predchádzajúcu položku" + +#, fuzzy +msgid "Go to previous page of service" +msgstr "Návrat na predchádzajúcu stanicu" + +msgid "Go up the list" +msgstr "" + +msgid "Goto" +msgstr "" + +msgid "Goto 0" +msgstr "Otočiť na 0" + +msgid "Goto :" +msgstr "" + +msgid "Goto X" +msgstr "" + +msgid "Goto index position" +msgstr "" + +msgid "Goto next day of events" +msgstr "" + +msgid "Goto next page of events" +msgstr "" + +msgid "Goto position" +msgstr "Otočiť do pozície" + +msgid "Goto previous day of events" +msgstr "" + +msgid "Goto previous page of events" +msgstr "" + +msgid "Goto specific date/time" +msgstr "" + +msgid "GotoX calibration" +msgstr "" + +msgid "GraphMultiEpg Settings" +msgstr "" + +msgid "Graphical Multi EPG" +msgstr "Grafický Multi EPG" + +msgid "Greek" +msgstr "Gréčtina" + +msgid "Green boost" +msgstr "Zosilniť zelenú" + +msgid "Guard interval" +msgstr "Interval ochrany" + +msgid "HD list" +msgstr "" + +msgid "HDMI-CEC setup" +msgstr "" + +msgid "Handle standby from TV" +msgstr "" + +msgid "Handle wakeup from TV" +msgstr "" + +#, fuzzy +msgid "Hard disk" +msgstr "Pevný disk" + +#, fuzzy +msgid "Hard disk setup" +msgstr "Nastavenie pevného disku" + +#, fuzzy +msgid "Hard disk standby after" +msgstr "Uspať disk po" + +msgid "Harddisk" +msgstr "Pevný disk" + +msgid "Hardware: " +msgstr "" + +msgid "Hebrew" +msgstr "" + +msgid "Helps setting up your dish" +msgstr "" + +msgid "Hidden network" +msgstr "Skrytá sieť" + +msgid "Hide CI messages" +msgstr "" + +msgid "Hide channel list in radio mode" +msgstr "" + +msgid "Hide known extensions" +msgstr "" + +msgid "Hide number markers" +msgstr "" + +#, fuzzy +msgid "Hide player" +msgstr "skryť prehrávač" + +msgid "Hide zap errors" +msgstr "" + +msgid "Hierarchy info" +msgstr "" + +#, fuzzy +msgid "Hierarchy information" +msgstr "Hierarchické informácie" + +msgid "High bitrate support" +msgstr "Spracuje vysoký dátový tok" + +msgid "Hold screen" +msgstr "" + +msgid "Hold till locked" +msgstr "" + +msgid "Home" +msgstr "" + +msgid "Horizontal" +msgstr "Vodorovná" + +msgid "Horizontal turning speed" +msgstr "" + +msgid "How many minutes do you want to record?" +msgstr "Koľko minút chcete nahrávať?" + +msgid "Hue" +msgstr "Odtieň" + +msgid "Hungarian" +msgstr "Maďarčina" + +#, fuzzy +msgid "IP address" +msgstr "Adresa IP" + +msgid "ISO file is too large for this filesystem!" +msgstr "Súbor ISO je pre tento súborový systém príliš veľký!" + +msgid "ISO path" +msgstr "Cesta ISO" + +msgid "Icons" +msgstr "" + +msgid "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." +msgstr "" +"Ak vidíte toto, niečo nie je v poriadku\n" +"s pripojením scart. Vráťte sa stlačením tlačidla OK." + +msgid "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." +msgstr "" +"Ak máte na televízore zdôraznenie jasu alebo kontrastu, zrušte ho. Ak je v nastaveniach niečo ako „dynamický režim“, nastavte ho na štandardnú hodnotu. Podsvietenie nastavte na hodnotu, ktorá vám vyhovuje. Stiahnite kontrast televízora na najnižšiu hodnotu.\n" +"Potom nastavte jas na najnižšiu možnú hodnotu, ale tak, aby dva najtmavšie odtiene sivej zostali rozlíšiteľné.\n" +"V tejto chvíli sa nestarajte o svetlé odtiene. Tie nastavíte v ďalšom kroku.\n" +"Ak ste spokojní s výsledkom, stlačte tlačidlo OK." + +msgid "Image: " +msgstr "" + +#, fuzzy +msgid "Immediate shutdown" +msgstr "ihneď vypnúť" + +msgid "In order to record a timer, the TV was switched to the recording service!\n" +msgstr "Aby sa mohol nahrať načasovaný program, preplo sa na nahrávanú stanicu!\n" + +#, fuzzy +msgid "In progress" +msgstr "Prebieha" + +msgid "Inactivity Sleeptimer" +msgstr "" + +msgid "Include AIT in http streams" +msgstr "" + +msgid "Include ECM in http streams" +msgstr "" + +msgid "Include EIT in http streams" +msgstr "" + +msgid "Incorrect type service for PiP!" +msgstr "" + +msgid "Increased voltage" +msgstr "Zvýšené napätie" + +msgid "Index" +msgstr "Index" + +msgid "Index allocated:" +msgstr "" + +msgid "Info" +msgstr "Informačná lišta" + +#, fuzzy +msgid "Info bar" +msgstr "Informačná lišta" + +#, fuzzy +msgid "Info bar timeout" +msgstr "Doba zobrazovania informačnej lišty" + +msgid "Infobar frontend data source" +msgstr "" + +msgid "Information" +msgstr "Informácie" + +msgid "Init" +msgstr "Inic." + +#, fuzzy +msgid "Initial fast forward speed" +msgstr "Počiatočná rýchlosť prevíjania vpred" + +msgid "Initial location in new timers" +msgstr "Úvodné umiestnenie nových časových nahrávok" + +msgid "Initial lock ratio" +msgstr "" + +#, fuzzy +msgid "Initial rewind speed" +msgstr "Počiatočná rýchlosť prevíjania vzad" + +msgid "Initial signal quality" +msgstr "" + +msgid "Initial signal quality:" +msgstr "" + +msgid "Initialization" +msgstr "Inicializácia" + +msgid "Initialize" +msgstr "Inicializovať" + +msgid "Initializing storage device..." +msgstr "" + +msgid "Input" +msgstr "Vstup" + +msgid "Input device setup" +msgstr "Nastavenie vstupného zariadenia" + +msgid "Input devices" +msgstr "Vstupné zariadenia" + +msgid "Install" +msgstr "Inštalovať" + +msgid "Install a new image with a USB stick" +msgstr "Inštalovať nový image z kľúča USB" + +msgid "Install a new image with your web browser" +msgstr "Inštalovať nový image cez webový prehliadač" + +#, fuzzy +msgid "Install channel list" +msgstr "Nasledujúca stanica v histórii" + +msgid "Install extensions" +msgstr "" + +msgid "Install extensions." +msgstr "Inštalovať rozšírenia." + +msgid "Install local extension" +msgstr "Inštalovať miestne rozšírenie" + +msgid "Install picons on" +msgstr "" + +#, fuzzy +msgid "Install softcam" +msgstr "Inštalujem softvér..." + +#, fuzzy +msgid "Installation has completed." +msgstr "Inštalácia je skončená." + +#, fuzzy +msgid "Installation or removal has completed." +msgstr "Inštalácia alebo odstránenie skončené." + +msgid "Installing" +msgstr "Inštalujem" + +#, fuzzy +msgid "Installing software..." +msgstr "Inštalujem softvér..." + +#, fuzzy +msgid "Instant recording location" +msgstr "Umiestnenie okamžitého záznamu" + +#, fuzzy +msgid "Instant recording..." +msgstr "Okamžité nahrávanie..." + +msgid "Interface: " +msgstr "Rozhranie:" + +msgid "Intermediate" +msgstr "stredný" + +#, fuzzy +msgid "Internal flash" +msgstr "Interná pamäť flash" + +msgid "Internal hdd only" +msgstr "" + +msgid "Interval between keys when repeating:" +msgstr "" + +#, python-format +msgid "Invalid directory selected: %s" +msgstr "Zvolený neplatný adresár: %s" + +#, fuzzy +msgid "Invalid location" +msgstr "Neplatné umiestnenie" + +msgid "Invalid transponder data" +msgstr "" + +msgid "Inversion" +msgstr "Inverzia" + +msgid "Invert" +msgstr "" + +msgid "Ipkg" +msgstr "Ipkg" + +#, fuzzy +msgid "Is this setting ok?" +msgstr "Použiť toto nastavenie?" + +#, fuzzy +msgid "Is this video mode ok?" +msgstr "Je tento režim obrazu OK?" + +msgid "Italian" +msgstr "Taliančina" + +msgid "Items per page " +msgstr "" + +msgid "Items per page for list screen" +msgstr "" + +#, fuzzy +msgid "Job overview" +msgstr "Prehľad úloh" + +msgid "Jump to beginning of list" +msgstr "" + +#, fuzzy +msgid "Jump to end of list" +msgstr "skok na koniec zoznamu" + +#, fuzzy +msgid "Jump to next marked position" +msgstr "skok na nasledujúce označené miesto" + +#, fuzzy +msgid "Jump to previous marked position" +msgstr "skok na predchádzajúce označené miesto" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect) +#, fuzzy +msgid "Just scale" +msgstr "Na celú obrazovku (bez pomeru strán)" + +msgid "Keep service" +msgstr "" + +#, fuzzy +msgid "Kernel version: " +msgstr "Nová verzia:" + +msgid "Keyboard" +msgstr "Klávesnica" + +#, fuzzy +msgid "Keyboard map" +msgstr "Rozloženie klávesov" + +#, fuzzy +msgid "Keyboard setup" +msgstr "Nastavenie klávesnice" + +#, fuzzy +msgid "LAN adapter" +msgstr "Adaptér LAN" + +msgid "LAN connection" +msgstr "Pripojenie LAN" + +msgid "LNB" +msgstr "LNB" + +msgid "Language" +msgstr "Jazyk" + +msgid "Language selection" +msgstr "Voľba jazyka" + +msgid "Last config" +msgstr "Posledné nastavenie" + +msgid "Last speed" +msgstr "Posledná rýchlosť" + +msgid "Last upgrade: " +msgstr "" + +msgid "Latest Commits" +msgstr "" + +msgid "Latitude" +msgstr "Zem. šírka" + +msgid "Latvian" +msgstr "Lotyščina" + +#, fuzzy +msgid "Leave DVD player?" +msgstr "Ukončiť DVD prehrávač?" + +msgid "Left" +msgstr "Doľava" + +msgid "Left from servicename" +msgstr "" + +msgid "Leisure hobbies" +msgstr "" + +#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term. +msgid "Letterbox" +msgstr "Letterbox" + +msgid "Letterbox zoom" +msgstr "" + +#, fuzzy +msgid "Limit character set for recording filenames" +msgstr "Obmedzená znaková sada pre názvy záznamov" + +msgid "Limit east" +msgstr "Východný limit" + +msgid "Limit the characters that can be used in recording filenames to (7 bit) ascii. This ensures compatibility with operating systems or file systems with limited character sets." +msgstr "" + +msgid "Limit west" +msgstr "Západný limit" + +msgid "Limits cancelled" +msgstr "" + +msgid "Limits enabled" +msgstr "" + +msgid "Limits off" +msgstr "Vypnúť limity" + +msgid "Limits on" +msgstr "Zapnúť limity" + +#, fuzzy +msgid "Link quality:" +msgstr "Kvalita spojenia:" + +msgid "Link:" +msgstr "Spojenie:" + +msgid "Linked titles with a DVD menu" +msgstr "Tituly prepojené s menu DVD" + +#, fuzzy +msgid "List EPG functions..." +msgstr "Zoznam zobrazení EPG..." + +msgid "List available networks" +msgstr "Zoznam dostupných sietí" + +msgid "List mode" +msgstr "" + +#, fuzzy +msgid "List of storage devices" +msgstr "Zoznam záznamových zariadení" + +msgid "List type" +msgstr "" + +#, python-format +msgid "List version %d, found %d channel" +msgid_plural "List version %d, found %d channels" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +#, fuzzy +msgid "Listen to the radio..." +msgstr "Počúvať rádio..." + +msgid "Lists reloaded!" +msgstr "" + +msgid "Lithuanian" +msgstr "Litovčina" + +msgid "Load" +msgstr "Natiahnuť" + +msgid "Load Length of Movies in Movielist" +msgstr "" + +#, fuzzy +msgid "Load length of movies in movie list" +msgstr "Prevziať dĺžku filmov do zoznamu filmov" + +#, fuzzy +msgid "Load playlist" +msgstr "otvoriť zoznam prehrávok" + +#, fuzzy +msgid "Local network" +msgstr "Miestna sieť" + +msgid "Location" +msgstr "Umiestnenie" + +msgid "Location for instant recordings" +msgstr "Umiestnenie okamžitých záznamov" + +msgid "Lock ratio" +msgstr "" + +msgid "Lock:" +msgstr "Signál:" + +msgid "Log results to harddisk" +msgstr "Zaznamenať výsledky na pevný disk" + +msgid "Long filenames" +msgstr "Dlhé názvy súborov" + +#, fuzzy +msgid "Long key press" +msgstr "Dlhé stlačenie tlačidla" + +msgid "Longitude" +msgstr "Zem. dĺžka" + +msgid "Loop through to" +msgstr "" + +msgid "Luxembourgish" +msgstr "" + +#, fuzzy +msgid "MMC card" +msgstr "Karta MMC" + +msgid "MORE" +msgstr "VIAC" + +msgid "Main menu" +msgstr "Hlavné menu" + +msgid "Maintain old EPG data for" +msgstr "" + +msgid "Make this mark an 'in' point" +msgstr "Urobiť z tejto značky vstupný bod („in“)" + +msgid "Make this mark an 'out' point" +msgstr "Urobiť z tejto značky výstupný bod („out“)" + +msgid "Make this mark just a mark" +msgstr "Urobiť z tejto značky len značku." + +msgid "Manage extensions" +msgstr "Spravovať rozšírenia" + +msgid "Manage your receiver's software" +msgstr "Spravovať softvér ptijímača" + +msgid "Manual" +msgstr "" + +msgid "Manual Scan" +msgstr "Ručné vyhľadávanie" + +msgid "Manual configuration" +msgstr "Ručná konfigurácia" + +#, fuzzy +msgid "Manual scan" +msgstr "Ručné vyhľadávanie" + +msgid "Manual transponder" +msgstr "Transpondér ručne" + +msgid "Manufacturer" +msgstr "Výrobca" + +#, fuzzy +msgid "Margin after recording (minutes)" +msgstr "Rezerva pred začiatkom programu (min)" + +#, fuzzy +msgid "Margin before recording (minutes)" +msgstr "Rezerva pred začiatkom programu (min)" + +msgid "Max memory positions" +msgstr "" + +#, fuzzy +msgid "Max. bitrate: " +msgstr "Max. dátový tok:" + +msgid "Media player" +msgstr "Prehrávač médií" + +#, fuzzy +msgid "Media scanner" +msgstr "Prehrávač médií" + +msgid "Medium is not a writeable DVD!" +msgstr "Médium nie je zapisovateľný disk DVD!" + +msgid "Medium is not empty!" +msgstr "Médium nie je prázdne!" + +msgid "Memory" +msgstr "" + +msgid "Memory index" +msgstr "" + +msgid "Menu" +msgstr "Menu" + +msgid "Message" +msgstr "Správa" + +msgid "Message..." +msgstr "Správa..." + +#, python-format +msgid "Minimum age %d years" +msgstr "" + +#, fuzzy +msgid "Minimum send interval" +msgstr "Interval ochrany" + +msgid "Missing " +msgstr "" + +#, fuzzy +msgctxt "Satellite configuration mode" +msgid "Mode" +msgstr "Režim" + +#, fuzzy +msgctxt "Video output mode" +msgid "Mode" +msgstr "Režim" + +msgid "Model: " +msgstr "Model: " + +msgid "Modulation" +msgstr "Modulácia" + +msgid "Modulator" +msgstr "Modulátor" + +msgid "Mon" +msgstr "Po" + +msgid "Mon-Fri" +msgstr "Po-Pi" + +msgid "Monday" +msgstr "Pondelok" + +msgid "Mosquito noise reduction" +msgstr "Potlačenie šumu na hranách" + +msgid "Mount" +msgstr "" + +msgid "Move" +msgstr "" + +#, fuzzy +msgid "Move PiP to main picture" +msgstr "presunúť PiP do hlavného obrazu" + +msgid "Move Picture in Picture" +msgstr "Premiestniť obraz v obraze" + +msgid "Move east" +msgstr "Pootočiť východne" + +msgid "Move to other directory" +msgstr "" + +msgid "Move to position X" +msgstr "" + +msgid "Move west" +msgstr "Pootočiť západne" + +msgid "Moved to position 0" +msgstr "" + +msgid "Moved to position at index" +msgstr "" + +msgid "Movement" +msgstr "" + +msgid "Movie List Configuration" +msgstr "" + +msgid "Movie Selection" +msgstr "" + +#, fuzzy +msgid "Movie list configuration" +msgstr "Ručná konfigurácia" + +msgid "Movie location" +msgstr "Umiestenie filmu" + +#, fuzzy +msgid "Movie selection" +msgstr "Umiestenie filmu" + +msgid "Movie/Drama" +msgstr "" + +msgid "Movielist menu" +msgstr "Menu filmov" + +msgid "Moving" +msgstr "" + +msgid "Moving east ..." +msgstr "" + +msgid "Moving to position" +msgstr "" + +msgid "Moving west ..." +msgstr "" + +msgid "Multi EPG" +msgstr "Multi EPG" + +msgid "Multi-EPG bouquet selection" +msgstr "" + +msgid "Multimedia" +msgstr "Multimédiá" + +msgid "Multiple service support" +msgstr "Dekóduje viac staníc" + +msgid "Multiplex" +msgstr "" + +msgid "Multisat" +msgstr "viac satelitov" + +msgid "Multisat all select" +msgstr "" + +msgid "Music/Ballet/Dance" +msgstr "" + +msgid "Mute" +msgstr "Umlčovač" + +msgid "N/A" +msgstr "Nie je k dispozícii" + +msgid "NEXT" +msgstr "NASLED." + +#, fuzzy +msgid "NFI image flashing" +msgstr "Flešovanie image NFI" + +msgid "NFI image flashing completed. Press Yellow to Reboot!" +msgstr "Flešovanie image .NFI skončené. Stlačením žltého tlačidla reštartujte." + +msgid "NIM" +msgstr "Tuner" + +msgid "NOW" +msgstr "TERAZ" + +msgid "NTSC" +msgstr "NTSC" + +msgid "Name" +msgstr "Názov" + +msgid "Nameserver" +msgstr "Nameserver" + +#, python-format +msgid "Nameserver %d" +msgstr "DNS (nameserver) %d" + +msgid "Nameserver settings" +msgstr "Nastavenie DNS" + +#, fuzzy +msgid "Nameserver setup" +msgstr "Nastavenie DNS" + +msgid "Namespace" +msgstr "" + +msgid "Netmask" +msgstr "Maska siete" + +msgid "Network" +msgstr "Sieť" + +msgid "Network ID" +msgstr "" + +#, fuzzy +msgid "Network configuration..." +msgstr "Konfigurácia siete..." + +#, fuzzy +msgid "Network mount" +msgstr "Sieťový prístup" + +#, fuzzy, python-format +msgid "Network mount %s" +msgstr "Sieťový prístup" + +#, fuzzy +msgid "Network name (SSID)" +msgstr "Názov siete (SSID)" + +msgid "Network scan" +msgstr "Vyhľadať sieť" + +msgid "Network setup" +msgstr "Nastavenie siete" + +msgid "Network test" +msgstr "Test siete" + +msgid "Network test..." +msgstr "Test siete..." + +msgid "Network test: " +msgstr "Test siete:" + +#, fuzzy +msgid "Network wizard" +msgstr "Sprievodca sieťou" + +msgid "Network:" +msgstr "Sieť:" + +msgid "New" +msgstr "Nové" + +msgid "New PIN" +msgstr "Nový PIN" + +msgid "New version:" +msgstr "Nová verzia:" + +msgid "News Current Affairs" +msgstr "" + +msgctxt "button label, 'next screen'" +msgid "Next" +msgstr "" + +msgctxt "now/next: 'next' event label" +msgid "Next" +msgstr "" + +msgid "No" +msgstr "Nie" + +msgid "No (supported) DVDROM found!" +msgstr "Nenájdený (podporovaný) DVDROM!" + +msgid "No Connection" +msgstr "Nie je spojenie" + +msgid "No HDD found or HDD not initialized!" +msgstr "Pevný disk nebol nájdený alebo nebol inicializovaný." + +msgid "No backup needed" +msgstr "Nie je treba zálohovať" + +msgid "No cable tuner found!" +msgstr "" + +msgid "" +"No data on transponder!\n" +"(Timeout reading PAT)" +msgstr "" +"Žiadne dáta na transpondéri!\n" +"(Čas vypršal pri čítaní PAT)" + +msgid "No delay" +msgstr "" + +msgid "No description available." +msgstr "Opis nie je k dispozícii." + +msgid "No details for this image file" +msgstr "Žiadne podrobnosti k tomuto súboru image" + +msgid "No displayable files on this medium found!" +msgstr "Na tomto médiu sa nenašli žiadne zobraziteľné súbory!" + +msgid "No event info found, recording indefinitely." +msgstr "Žiadne informácie EPG, spúšťam nekonečné nahrávanie." + +msgid "No fast winding possible yet.. but you can use the number buttons to skip forward/backward!" +msgstr "Ešte nie je možné prevíjanie, ale pomocou číselných tlačidiel môžete skočiť dopredu alebo dozadu." + +msgid "No free index available" +msgstr "" + +msgid "No free tuner!" +msgstr "Nie je voľný tuner!" + +msgid "No network connection available." +msgstr "Nie je dostupné sieťové pripojenie." + +msgid "No networks found" +msgstr "Nenájdená žiadna sieť" + +msgid "No new plugins found" +msgstr "" + +msgid "No positioner capable frontend found." +msgstr "Nebol nájdený tuner vhodný pre motor." + +msgid "No satellites configured. Plese check your tuner setup." +msgstr "" + +msgid "No service" +msgstr "" + +#, fuzzy +msgid "No services/providers selected" +msgstr "Žiadne služby a poskytovatelia nie sú zvolené" + +#, fuzzy +msgid "No standby" +msgstr "žiadny pohotovostný režim" + +msgid "No suitable sat tuner found!" +msgstr "" + +msgid "No tags are set on these movies." +msgstr "Na týchto filmoch nie sú nastavené žiadne štítky." + +#, fuzzy +msgid "No timeout" +msgstr "žiadny časový limit" + +msgid "No to all" +msgstr "Nie pre všetky" + +msgid "No transparency" +msgstr "" + +msgid "No tuner is configured for use with a diseqc positioner!" +msgstr "Žiadny tuner nie je nastavený na použitie motora DiSEqC." + +msgid "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Žiadny tuner nie je zapnutý!\n" +"Nastavte tuner pred spustením vyhľadávania staníc." + +#, fuzzy +msgid "No updates available" +msgstr " aktualizácie k dispozícii." + +msgid "No updates available. Please try again later." +msgstr "" + +msgid "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" +msgstr "" +"Nenájdený platný PIN stanice!\n" +"Chcete teraz zmeniť PIN stanice?\n" +"Keď zvolíte „Nie“, ochrana stanice zostane vypnutá!" + +msgid "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" +msgstr "" +"Nenájdený platný PIN nastavení!\n" +"Chcete teraz zmeniť PIN nastavení?\n" +"Keď zvolíte „Nie“, ochrana nastavení zostane vypnutá!" + +msgid "No wireless networks found! Searching..." +msgstr "Nenájdená bezdrôtová sieť. Hľadám ..." + +msgid "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." +msgstr "" +"Nenájdená funkčný miestny sieťový adaptér.\n" +"Skontrolujte, či máte pripojený sieťový kábel a či máte sieť správne nastavenú." + +msgid "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." +msgstr "" +"Nenájdený funkčný bezdrôtový sieťový adaptér.\n" +"Skontrolujte, či máte pripojené kompatibilné zariadenie WLAN a či máte sieť správne nastavenú." + +msgid "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." +msgstr "" +"Nenájdené funkčné bezdrôtové sieťové rozhranie.\n" +"Skontrolujte, či máte pripojené kompatibilné zariadenie WLAN alebo zapnite miestne sieťové rozhranie." + +msgid "No, but restart from begin" +msgstr "Nie, ale začať od začiatku." + +msgid "No, do nothing." +msgstr "Nie, nič neurobiť." + +msgid "No, just start my receiver" +msgstr "" + +msgid "No, never" +msgstr "Nie, nikdy" + +msgid "None" +msgstr "Žiadne" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right) +msgid "Nonlinear" +msgstr "Nelineárne" + +msgid "Normal mode" +msgstr "" + +msgid "North" +msgstr "severne" + +msgid "Norwegian" +msgstr "Nórčina" + +msgid "Not associated" +msgstr "" + +msgid "Not configured" +msgstr "" + +#, fuzzy, python-format +msgid "Not enough disk space. Please free up some disk space and try again. (%d MB required, %d MB available)" +msgstr "Nie je dosť miesta na disku. Uvoľnite miesto a skúste znova. (Je treba %d MB, ale je len %d MB.)" + +msgid "Nothing connected" +msgstr "" + +msgid "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Nič na vyhľadávanie!\n" +"Pred začatím vyhľadávania nastavte tuner ." + +msgctxt "now/next: 'now' event label" +msgid "Now" +msgstr "" + +#, fuzzy +msgid "Now playing" +msgstr "Beží prehrávanie" + +msgid "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." +msgstr "Teraz kontrastom zvýšte svetlosť pozadia čo najviac, ale tak, aby ste stále rozlíšili dva najjasnejšie prúžky sivej. Keď skončíte, stlačte tlačidlo OK." + +msgid "OK" +msgstr "OK" + +msgid "OK, guide me through the upgrade process" +msgstr "OK, poveď ma procesom aktualizácie." + +msgid "ONID" +msgstr "" + +msgid "OSD name request" +msgstr "" + +#, fuzzy +msgid "OSD settings" +msgstr "Nastavenia OSD" + +msgid "OSD transparency" +msgstr "" + +msgid "Off" +msgstr "Vypnúť" + +msgid "Offline decode delay (ms)" +msgstr "" + +msgid "Ok" +msgstr "" + +msgid "On" +msgstr "Zapnúť" + +msgid "On end of movie" +msgstr "" + +msgid "On end of movie (as menu)" +msgstr "" + +msgid "One" +msgstr "Jeden" + +msgid "Only extensions." +msgstr "Len rozšírenia." + +#, fuzzy +msgid "Only free scan" +msgstr "Vyhľadať len FTA" + +#, fuzzy +msgid "Open service list" +msgstr "Otvoriť zoznam staníc" + +#, fuzzy +msgid "Open the movie list" +msgstr "Návrat do zoznamu filmov" + +msgid "Orbital position" +msgstr "Orbitálna pozícia" + +msgid "Original" +msgstr "" + +msgid "Other" +msgstr "" + +msgid "Output" +msgstr "" + +msgid "Overwrite configuration files during software upgrade?" +msgstr "Prepísať konfiguračné súbory pri aktualizácii softvéru? " + +#, fuzzy +msgid "Overwrite configuration files?" +msgstr "Prepísať konfiguračné súbory?" + +msgid "PAL" +msgstr "PAL" + +msgid "PCR PID" +msgstr "" + +msgid "PIDs" +msgstr "PIDy" + +#, fuzzy +msgid "PIN code needed" +msgstr "Treba kód PIN" + +msgid "PLP ID" +msgstr "" + +msgid "PMT PID" +msgstr "" + +msgid "Package list update" +msgstr "Aktualizovať zoznam balíčkov" + +msgid "Packet management" +msgstr "Správa balíčkov" + +msgid "Packet manager" +msgstr "Správca balíčkov" + +#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term +#, fuzzy +msgid "Pan&scan" +msgstr "Pan&Scan" + +#, fuzzy +msgid "Parent directory" +msgstr "Vyšší adresár" + +msgid "Parental control" +msgstr "Rodičovská zámka" + +#, fuzzy +msgid "Parental control services editor" +msgstr "Editor staníc rodičovskej zámky" + +msgid "Parental control setup" +msgstr "Nastavenie rodičovskej zámky" + +msgid "Parental control type" +msgstr "Typ rodičovskej zámky" + +msgid "Password" +msgstr "Heslo" + +#, fuzzy +msgid "Pause" +msgstr "pauza" + +msgid "Pause movie at end" +msgstr "Na konci filmu pozastaviť" + +#, fuzzy +msgid "Pause playback" +msgstr "Pokračujem v prehrávaní" + +msgid "Pauze/Continue playback" +msgstr "" + +msgid "Percentage left" +msgstr "" + +#, fuzzy +msgid "Percentage right" +msgstr "Kruhová pravá" + +msgid "Permanently delete all recordings in the trash can?" +msgstr "" + +msgid "Permanently remove all deleted items" +msgstr "" + +msgid "Persian" +msgstr "Perzština" + +msgid "Phone number" +msgstr "Telefónne číslo" + +#, fuzzy +msgid "PiP setup" +msgstr "Nastavenie obrazu v obraze" + +msgid "Picon" +msgstr "" + +msgid "Picon and service name" +msgstr "" + +#, fuzzy +msgid "Picture player" +msgstr "Prehrávač obrázkov" + +#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term. +msgid "Pillarbox" +msgstr "Pillarbox" + +msgid "Pilot" +msgstr "" + +msgid "Play" +msgstr "Prehrať" + +msgid "Play DVD" +msgstr "Prehrať DVD" + +msgid "Play audio in background" +msgstr "" + +#, fuzzy +msgid "Play audio-CD..." +msgstr "Prehrať Audio-CD..." + +msgid "Play back media files" +msgstr "" + +#, fuzzy +msgid "Play entry" +msgstr "prehrať" + +#, fuzzy +msgid "Play from next mark or playlist entry" +msgstr "Prehrať od nasledujúcej značky alebo položky zoznamu prehrávok" + +#, fuzzy +msgid "Play from previous mark or playlist entry" +msgstr "Prehrať od predchádzajúcej značky alebo položky zoznamu prehrávok" + +#, fuzzy +msgid "Play music..." +msgstr "Prehrať hudbu..." + +msgid "Play next" +msgstr "" + +msgid "Play next (return to movie list)" +msgstr "" + +msgid "Play next (return to previous service)" +msgstr "" + +msgid "Play previous" +msgstr "" + +msgid "Play recorded movies..." +msgstr "Prehrať nahrané filmy..." + +msgid "Please add titles to the compilation." +msgstr "Pridajte titulky do kompilácie." + +msgid "Please change recording endtime" +msgstr "Zmeňte koniec nahrávania" + +msgid "Please check your network settings!" +msgstr "Skontrolujte nastavenia siete!" + +msgid "Please choose an extension..." +msgstr "Zvoľte rozšírenie..." + +msgid "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Nakonfigurujte alebo skontrolujte názvy serverov vyplnením požadovaných hodnôt.\n" +"Po skončení stlačte OK a pokračujte." + +msgid "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Nakonfigurujte si internetové pripojenie vyplnením požadovaných hodnôt.\n" +"Po skončení stlačte OK a pokračujte." + +msgid "Please connect your receiver to the internet" +msgstr "" + +msgid "Please do not change any values unless you know what you are doing!" +msgstr "Nemeňte žiadne hodnoty, ak neviete, čo tým spôsobíte!" + +msgid "Please enter a name for the new bouquet" +msgstr "Zadajte názov nového buketu." + +msgid "Please enter a name for the new marker" +msgstr "Zadajte názov novej značky." + +msgid "Please enter a new filename" +msgstr "Zadajte nový názov súboru" + +msgid "Please enter filename (empty = use current date)" +msgstr "Zadajte názov súboru (prázdny = dnešný dátum)" + +msgid "Please enter name of the new directory" +msgstr "Zadajte názov nového adresára" + +msgid "Please enter new name:" +msgstr "" + +msgid "Please enter the correct pin code" +msgstr "Zadajte správny kód PIN" + +msgid "Please enter the old PIN code" +msgstr "Zadajte starý kód PIN" + +msgid "Please follow the instructions on the TV" +msgstr "Riaďte sa pokynmi na televíznej obrazovke" + +msgid "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." +msgstr "Nie je prístup k predtým zvolenému médiu, preto sa namiesto neho použije predvolený adresár." + +msgid "Please press OK to continue." +msgstr "Pre pokračovanie stlačte tlačidlo OK." + +msgid "Please select a default EPG type..." +msgstr "" + +msgid "Please select a playlist to delete..." +msgstr "Zvoľte zoznam prehrávok, ktorý sa má zmazať..." + +msgid "Please select a playlist..." +msgstr "Zvoľte zoznam prehrávok..." + +#, fuzzy +msgid "Please select a sub service..." +msgstr "Zvoľte podkanál..." + +msgid "Please select a subservice to record..." +msgstr "Zvoľte podkanál pre nahrávanie..." + +msgid "Please select a subservice..." +msgstr "Zvoľte podkanál..." + +msgid "Please select an NFI file and press green key to flash!" +msgstr "Zvoľte súbor NFI a stlačením zeleného tlačidla spusťte flash!" + +#, fuzzy +msgid "Please select medium to be scanned" +msgstr "Vyberte médium na prehľadanie" + +msgid "Please select medium to use as backup location" +msgstr "Zvoľte médium, ktoré sa použije ako umiestnenie zálohy" + +msgid "Please select tag to filter..." +msgstr "Zvoľte štítok na filtrovanie..." + +msgid "Please select the movie path..." +msgstr "Zvoľte cestu k filmu..." + +msgid "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Zvoľte sieťové rozhranie, ktoré chcete použiť na pripojenie do internetu.\n" +"\n" +"Pokračujte stlačením OK." + +msgid "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Zvoľte bezdrôtovú sieť, ku ktorej sa chcete pripojiť.\n" +"\n" +"Pokračujte stlačením OK." + +#, fuzzy +msgid "Please set up tuner A" +msgstr "Nastavte tuner B" + +msgid "Please set up tuner B" +msgstr "Nastavte tuner B" + +msgid "Please set up tuner C" +msgstr "Nastavte tuner C" + +msgid "Please set up tuner D" +msgstr "Nastavte tuner D" + +msgid "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." +msgstr "" +"Na presúvanie okna PiP použite kurzorové tlačidlá.\n" +"Stlačením tlačidla Bouquet +/- zmeníte veľkosť okna.\n" +"Stlačením OK sa vrátite do režimu TV alebo stlačením EXIT zrušíte presúvanie." + +msgid "Please use the UP and DOWN keys to select your language. Afterwards press the OK button." +msgstr "Tlačidlami NAHOR alebo NADOL zvoľte jazyk. Potom stlačte tlačidlo OK." + +msgid "Please wait" +msgstr "" + +#, fuzzy +msgid "Please wait (downloading channel list)" +msgstr "Čakajte... Otvára sa zoznam..." + +#, fuzzy +msgid "Please wait (downloading softcam)" +msgstr "Čakajte... Otvára sa zoznam..." + +#, fuzzy +msgid "Please wait (updating packages)" +msgstr "Čakajte, nahrávam obraz..." + +msgid "Please wait for activation of your network configuration..." +msgstr "Vyčkajte na aktivovanie nastavenia siete..." + +msgid "Please wait while scanning is in progress..." +msgstr "Čakajte, kým prebieha vyhľadávanie..." + +msgid "Please wait while we configure your network..." +msgstr "Čakajte, kým sa nastavuje sieť..." + +msgid "Please wait while we prepare your network interfaces..." +msgstr "Čakajte, kým sa pripravujú sieťové rozhrania..." + +msgid "Please wait while we test your network..." +msgstr "Čakajte, kým sa testuje sieť..." + +msgid "Please wait while your network is restarting..." +msgstr "Čakajte, kým sa sieť reštartuje..." + +msgid "Please wait..." +msgstr "Čakajte..." + +msgid "Please wait... Loading list..." +msgstr "Čakajte... Otvára sa zoznam..." + +msgid "Plugin browser" +msgstr "Prehliadač modulov" + +msgid "Plugin manager activity information" +msgstr "Informácie o činnosti správcu modulov" + +msgid "Plugin manager help" +msgstr "Pomocník správcu modulov" + +msgid "Plugins" +msgstr "Moduly" + +msgid "Polarisation" +msgstr "" + +msgid "Polarisation:" +msgstr "" + +msgid "Polarization" +msgstr "Polarizácia" + +msgid "Polish" +msgstr "Poľština" + +msgid "Port A" +msgstr "Port A" + +msgid "Port B" +msgstr "Port B" + +msgid "Port C" +msgstr "Port C" + +msgid "Port D" +msgstr "Port D" + +msgid "Portuguese" +msgstr "Portugalčina" + +#, fuzzy +msgid "Position of completed timers in timerlist" +msgstr "Umiestnenie skončených časovačov v zozname časovačov" + +msgid "Position stored at index" +msgstr "" + +msgid "Positioner" +msgstr "motor" + +msgid "Positioner (selecting satellites)" +msgstr "" + +msgid "Positioner Setup" +msgstr "" + +msgid "Positioner setup" +msgstr "Nastavenie motora" + +msgid "Power threshold in mA" +msgstr "Prah prúdu v mA" + +msgid "Predefined transponder" +msgstr "Preddefinovaný transpondér" + +msgid "Prefer AC3 track" +msgstr "" + +msgid "Prefer AC3+ track" +msgstr "" + +msgid "Prefer audio track stored by service" +msgstr "" + +msgid "Prefer graphical DVB subtitles" +msgstr "" + +msgid "Prefer subtitles for hearing impaired" +msgstr "" + +msgid "Prefer subtitles stored by service" +msgstr "" + +msgid "Preferred tuner" +msgstr "" + +msgid "Preferred tuner for recordings" +msgstr "" + +msgid "Prepare another USB stick for image flashing" +msgstr "Pripravte si iný kľúč USB na flashovanie image" + +msgid "Preparing... Please wait" +msgstr "Pripravujem... Čakajte..." + +msgid "Press '0' to toggle PiP mode" +msgstr "" + +msgid "Press INFO on your remote control for additional information." +msgstr "Stlačením INFO na DO si zobrazíte ďalšie informácie." + +msgid "Press MENU on your remote control for additional options." +msgstr "Stlačením MENU na DO si zobrazíte ďalšie možnosti." + +msgid "Press OK on your remote control to continue." +msgstr "Ak chcete pokračovať, stlačte tlačidlo OK na diaľkovom ovládači." + +msgid "Press OK to activate the selected skin." +msgstr "Stlačením OK zapnete zvolený vzhľad." + +msgid "Press OK to activate the settings." +msgstr "Stlačením OK aktivujte nastavenia." + +msgid "Press OK to edit the settings." +msgstr "Stlačte OK pre zmenu nastavení." + +#, python-format +msgid "Press OK to get further details for %s" +msgstr "Pre ďalšie informácie o %s stlačte tlačidlo OK." + +msgid "Press OK to scan" +msgstr "Pre vyhľadávanie stlačte OK." + +#, fuzzy +msgid "Press OK to select a provider." +msgstr "Stlačením OK zvolíte poskytovateľa." + +msgid "Press OK to select satellites" +msgstr "" + +msgid "Press OK to select/deselect a CAId." +msgstr "Stlačením OK zvoľte alebo zrušte CAId." + +msgid "Press OK to start the scan" +msgstr "Stlačením tlačidla OK spustíte vyhľadávanie" + +msgid "Press OK to toggle the selection" +msgstr "" + +msgid "Press OK to toggle the selection." +msgstr "Stlačte OK pre prepnutie výberu." + +msgid "Press yellow to set this interface as default interface." +msgstr "Stlačením žltého tlačidla nastavíte toto rozhranie ako predvolené." + +msgctxt "button label, 'previous screen'" +msgid "Prev" +msgstr "" + +msgid "Preview" +msgstr "Náhľad" + +msgid "Preview menu" +msgstr "Prezrieť menu" + +msgid "Preview selected channel" +msgstr "" + +msgid "Primary DNS" +msgstr "Primárny DNS" + +msgid "Priority" +msgstr "Priorita" + +msgid "Process" +msgstr "Procesy" + +msgid "Progress" +msgstr "" + +msgid "Progress bar left" +msgstr "" + +msgid "Progress bar right" +msgstr "" + +msgid "Properties of current title" +msgstr "Vlastnosti aktuálneho titulu" + +msgid "Protect services" +msgstr "Ochrániť stanice" + +msgid "Protect setup" +msgstr "Ochrániť nastavenia" + +msgid "Provider" +msgstr "Poskytovateľ" + +msgid "Provider to scan" +msgstr "Poskytovatelia na vyhľadávanie" + +msgid "Providers" +msgstr "Poskytovatelia" + +msgid "Put TV in standby" +msgstr "" + +msgid "Put receiver in standby" +msgstr "" + +msgid "Python frontend for /tmp/mmi.socket" +msgstr "Python frontend pre /tmp/mmi.socket" + +msgid "Quick" +msgstr "Rýchlo" + +#, fuzzy +msgid "Quick zap" +msgstr "Rýchle prepínanie" + +msgid "RF output" +msgstr "VF výstup" + +msgid "RGB" +msgstr "RGB" + +msgid "Radio" +msgstr "Rádio" + +#, fuzzy +msgid "Ram disk" +msgstr "Ram Disk" + +msgid "Random" +msgstr "Náhodne" + +#, python-format +msgid "Rating defined by broadcaster - %d" +msgstr "" + +msgid "Rating undefined" +msgstr "" + +msgid "Really close without saving settings?" +msgstr "Naozaj zatvoriť bez uloženia nastavení?" + +msgid "Really delete done timers?" +msgstr "Naozaj zmazať dokončené časovače?" + +msgid "Really exit the subservices quickzap?" +msgstr "Naozaj ukončiť rýchle prepínanie podkanálov?" + +msgid "Really reboot now?" +msgstr "Naozaj mám teraz reštartovať?" + +msgid "Really restart now?" +msgstr "Naozaj mám teraz reštartovať?" + +msgid "Really shutdown now?" +msgstr "Naozaj teraz vypnúť?" + +msgid "Really upgrade the frontprocessor and reboot now?" +msgstr "" + +msgid "Really upgrade your settop box and reboot now?" +msgstr "" + +msgid "Reboot" +msgstr "Reštartovať" + +msgid "Rec" +msgstr "" + +#, fuzzy +msgid "Reception settings" +msgstr "Nastavenia príjmu" + +msgid "Record" +msgstr "Nahrať" + +#, python-format +msgid "Record time limited due to conflicting timer %s" +msgstr "Doba nahrávania je obmedzená, lebo sa prekrývajú časovače %s" + +msgid "Recorded files..." +msgstr "Nahrané súbory..." + +msgid "Recording" +msgstr "Nahrávanie" + +msgid "Recording in progress" +msgstr "" + +msgid "Recording paths" +msgstr "Záznamové cesty" + +msgid "Recording type" +msgstr "" + +msgid "Recording(s) are in progress or coming up in few seconds!" +msgstr "Nahrávanie prebieha alebo o pár sekúnd začne!" + +msgid "Recordings" +msgstr "Nahrávky" + +msgid "Recordings always have priority" +msgstr "Nahrávanie má vždy prednosť" + +msgid "Red button..." +msgstr "" + +msgid "Reenter new PIN" +msgstr "Znova zadajte nový PIN." + +#, fuzzy +msgid "Refresh rate" +msgstr "Obnovovací kmitočet" + +msgid "Refresh rate selection." +msgstr "Voľba obnovovacieho kmitočtu." + +msgid "Regard deep standby as standby" +msgstr "" + +msgid "Relative" +msgstr "" + +msgid "Reload" +msgstr "Znova natiahnuť" + +#, fuzzy +msgid "Reload black-/white lists" +msgstr "Znova natiahnuť čierne a biele listiny" + +msgid "Reloading bouquets and services..." +msgstr "" + +msgid "Remember last service in PiP" +msgstr "" + +msgid "Remember service PIN" +msgstr "Zapamätať PIN stanice" + +msgid "Remember these settings for each folder" +msgstr "" + +msgid "Reminder, you have chosen to save timeshift file." +msgstr "" + +#, fuzzy +msgid "Remote control type" +msgstr "Typ rodičovskej zámky" + +#, fuzzy +msgid "Removal has completed." +msgstr "Odstraňovanie zlyhalo." + +msgid "Remove" +msgstr "Odstrániť" + +msgid "Remove a mark" +msgstr "Odstrániť značku" + +#, fuzzy +msgid "Remove a nameserver entry" +msgstr "Odstrániť DNS" + +#, fuzzy +msgid "Remove bookmark" +msgstr "odstrániť záložku" + +msgid "Remove completed timers after (days)" +msgstr "" + +msgid "Remove currently selected title" +msgstr "Odstrániť aktuálne zvolený titul" + +msgid "Remove items from trash can after (days)" +msgstr "" + +msgid "Remove plugins" +msgstr "Odstrániť moduly" + +msgid "Remove title" +msgstr "Odstrániť titul" + +msgid "Removing" +msgstr "Odstraňujem" + +#, python-format +msgid "Removing directory %s failed. (Maybe not empty.)" +msgstr "Vymazanie adresára %s zlyhalo. (Možno nie je prázdny.)" + +#, fuzzy +msgid "Removing partition table" +msgstr "Odstrániť titul" + +msgid "Rename" +msgstr "Premenovať" + +msgid "Repeat" +msgstr "" + +#, fuzzy +msgid "Repeat type" +msgstr "Druh opakovania" + +msgid "Repeating event currently recording... What do you want to do?" +msgstr "Práve sa nahráva opakovaná udalosť... Čo chcete urobiť?" + +msgid "Repeats" +msgstr "Opakovania" + +msgid "Require authentication for http streams" +msgstr "" + +msgid "Required medium type:" +msgstr "Požadovaný druh média:" + +msgid "Rereading partition table" +msgstr "" + +msgid "Reserved" +msgstr "" + +msgid "Reset" +msgstr "Resetovať" + +msgid "Reset and renumerate title names" +msgstr "Resetovať a prečíslovať názvy titulov" + +msgid "Reset playback position" +msgstr "" + +msgid "Reset video enhancement settings to system defaults?" +msgstr "Vrátiť rozšírené nastavenia obrazu na systémové predvolené hodnoty?" + +msgid "Reset video enhancement settings to your last configuration?" +msgstr "Vrátiť rozšírené nastavenia obrazu na poslednú konfiguráciu?" + +msgid "Resolution" +msgstr "Rozlíšenie" + +msgid "Restart" +msgstr "Reštartovať" + +msgid "Restart GUI now?" +msgstr "Teraz reštartovať GUI?" + +msgid "Restart enigma" +msgstr "" + +msgid "Restart network" +msgstr "Reštartovať sieť" + +msgid "Restart test" +msgstr "Zopakovať test" + +msgid "Restart your network connection and interfaces.\n" +msgstr "Reštartujte sieťové pripojenie a rozhrania.\n" + +msgid "Restore" +msgstr "Obnoviť" + +msgid "Restore backups" +msgstr "Obnoviť zálohy" + +msgid "Restore is running..." +msgstr "Prebieha obnova..." + +msgid "Restore system settings" +msgstr "Obnoviť systémové nastavenia" + +#, fuzzy +msgid "Restoring..." +msgstr "nahrávam..." + +msgid "Resume from last position" +msgstr "Pokračovať od poslednej pozície" + +#, python-format +msgid "Resume position at %s" +msgstr "Pokračovať v polohe %s" + +#. TRANSLATORS: The string "Resuming playback" flashes for a moment +#. TRANSLATORS: at the start of a movie, when the user has selected +#. TRANSLATORS: "Resume from last position" as start behavior. +#. TRANSLATORS: The purpose is to notify the user that the movie starts +#. TRANSLATORS: in the middle somewhere and not from the beginning. +#. TRANSLATORS: (Some translators seem to have interpreted it as a +#. TRANSLATORS: question or a choice, but it is a statement.) +msgid "Resuming playback" +msgstr "Pokračujem v prehrávaní" + +msgid "Return to movie list" +msgstr "Návrat do zoznamu filmov" + +msgid "Return to previous service" +msgstr "Návrat na predchádzajúcu stanicu" + +msgid "Reverse bouquet buttons" +msgstr "" + +msgid "Reverse list" +msgstr "" + +msgid "Rewind speeds" +msgstr "Rýchlosti prevíjania vzad" + +msgid "Rewrap teletext subtitles" +msgstr "" + +msgid "Right" +msgstr "Doprava" + +msgid "Right from servicename" +msgstr "" + +msgid "Roll-off" +msgstr "" + +msgid "Romanian" +msgstr "" + +msgid "Root directory" +msgstr "" + +msgid "Rotor step position:" +msgstr "" + +msgid "Rotor turning speed" +msgstr "Rýchlosť otáčania motora" + +msgid "Round start time on" +msgstr "" + +msgid "Russian" +msgstr "Ruština" + +msgid "S-Video" +msgstr "S-Video" + +msgid "SID" +msgstr "" + +msgid "SINGLE LAYER DVD" +msgstr "JEDNOVRSTVOVÉ DVD" + +msgid "SNR" +msgstr "SNR" + +msgid "SNR:" +msgstr "SNR:" + +msgid "SSID:" +msgstr "SSID:" + +msgid "Same resolution as skin" +msgstr "" + +msgid "Sat" +msgstr "So" + +msgid "Satellite" +msgstr "Satelit" + +#, fuzzy +msgid "Satellite dish setup" +msgstr "Nastavenia satelitného zariadenia" + +msgid "Satellite equipment" +msgstr "Satelitné zariadenie" + +#, fuzzy +msgid "Satellite equipment setup" +msgstr "Nastavenia satelitného zariadenia" + +msgid "Satellite longitude:" +msgstr "" + +msgid "Satellites" +msgstr "Satelity" + +msgid "Satfinder" +msgstr "Hľadač satelitov" + +msgid "Sats" +msgstr "" + +msgid "Saturation" +msgstr "Sýtosť" + +msgid "Saturday" +msgstr "Sobota" + +msgid "Save" +msgstr "Uložiť" + +#, fuzzy +msgid "Save playlist" +msgstr "uložiť zoznam prehrávok" + +msgid "Save timeshift file" +msgstr "" + +msgid "Save timeshift file in movie directory" +msgstr "" + +msgid "Scaler sharpness" +msgstr "Ostrosť škálovania" + +#, fuzzy +msgid "Scaling mode" +msgstr "Škálovací režim" + +msgid "Scan" +msgstr "" + +msgid "Scan " +msgstr "Vyhľadať" + +#. TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' +#, fuzzy, python-format +msgid "Scan %s" +msgstr "Vyhľadať" + +#. TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' +#, fuzzy, python-format +msgid "Scan %s band" +msgstr "Prehľadať pásmo EU MID" + +msgid "Scan additional SR" +msgstr "Prehľadať ďalšie SR" + +#, fuzzy +msgid "Scan files..." +msgstr "Vyhľadať súbory..." + +#, fuzzy +msgid "Scan wireless networks" +msgstr "Vyhľadať bezdrôt. siete" + +msgid "Scan your network for wireless access points and connect to them using your selected wireless device.\n" +msgstr "Vyhľadať v sieti bezdrôtové prístupové body a pripojiť ich zvoleným bezdrôtovýmn zariadením\n" + +#, python-format +msgid "Scanning %s..." +msgstr "" + +#. TRANSLATORS: The stb is performing a channel scan, progress percentage is printed in '%d' (and '%%' will show a single '%' symbol) +#, python-format +msgid "Scanning - %d%% completed" +msgid_plural "Scanning - %d%% completed" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +#, python-format +msgid "Scanning completed, %d channel found" +msgid_plural "Scanning completed, %d channels found" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +msgid "Scanning failed!" +msgstr "" + +msgid "Scanning..." +msgstr "" + +msgid "Scans default lamedbs sorted by satellite with a connected dish positioner" +msgstr "Prehľadať predvolené lamedb zotriedené podľa satelitov a pripojeného motora" + +msgid "Search east" +msgstr "Hľadať východne" + +msgid "Search west" +msgstr "Hľadať západne" + +msgid "Searching" +msgstr "" + +msgid "Searching east ..." +msgstr "" + +msgid "Searching for available updates. Please wait..." +msgstr "Hľadám dostupné aktualizácie. Čakajte..." + +msgid "Searching for new installed or removed packages. Please wait..." +msgstr "Hľadám novoinštalované alebo odstránené balíčky. Čakajte..." + +msgid "Searching west ..." +msgstr "" + +msgid "Second cable of motorized LNB" +msgstr "" + +msgid "Secondary DNS" +msgstr "Sekundárny DNS" + +msgid "Seek" +msgstr "Hľadanie" + +#, fuzzy +msgid "Seek backward" +msgstr "skok vzad" + +#, fuzzy +msgid "Seek backward (enter time)" +msgstr "skok vzad (zadajte čas)" + +#, fuzzy +msgid "Seek forward" +msgstr "skok vpred" + +#, fuzzy +msgid "Seek forward (enter time)" +msgstr "skok vpred (zadajte čas)" + +msgid "Select" +msgstr "Zvoliť" + +#, fuzzy +msgid "Select CAId" +msgstr "zvoliť CAId" + +msgid "Select HDD" +msgstr "Zvoľte pevný disk" + +#, fuzzy +msgid "Select a bouquet" +msgstr "Zvoľte film" + +msgid "Select a movie" +msgstr "Zvoľte film" + +#, fuzzy +msgid "Select a network adapter" +msgstr "Zvoľte sieťový adaptér" + +#, fuzzy +msgid "Select a skin" +msgstr "Zvoľte film" + +#, fuzzy +msgid "Select a tuner" +msgstr "Zvoľte film" + +#, fuzzy +msgid "Select a wireless network" +msgstr "Zvoľte bezdrôtovú sieť" + +msgid "Select action" +msgstr "" + +#, python-format +msgid "Select action for timer %s:" +msgstr "" + +msgid "Select all" +msgstr "" + +#, fuzzy +msgid "Select an image to be downloaded" +msgstr "Zvoľte image na stiahnutie" + +msgid "Select audio track" +msgstr "Zvoľte zvukovú stopu" + +#, fuzzy +msgid "Select backup files" +msgstr "Zvoliť súbory zálohy" + +#, fuzzy +msgid "Select backup location" +msgstr "Zvoliť umiestnenie zálohy" + +msgid "Select channel to record from" +msgstr "Zvoľte stanicu na nahrávanie" + +msgid "Select copy destination for:" +msgstr "" + +msgid "Select default EPG type..." +msgstr "" + +msgid "Select desired image from feed list" +msgstr "Zvoľte požadovaný image zo zoznamu" + +msgid "Select destination for:" +msgstr "" + +msgid "Select files for backup." +msgstr "Zvoľte súbory na zálohovanie" + +msgid "Select files/folders to backup" +msgstr "Zvoľte súbory a adresáre na zálohovanie" + +msgid "Select input device" +msgstr "Zvoľte vstupné zariadenie" + +msgid "Select input device." +msgstr "Zvoľte vstupné zariadenie." + +msgid "Select interface" +msgstr "Zvoľte rozhranie" + +#, fuzzy +msgid "Select location" +msgstr "Zvoľte umiestnenie" + +#, fuzzy +msgid "Select movie" +msgstr "Zvoľte film" + +msgid "Select provider to add..." +msgstr "Zvoľte poskytovateľa, ktorého chcete pridať..." + +msgid "Select refresh rate" +msgstr "Zvoľte obnovovací kmitočet" + +msgid "Select satellites" +msgstr "" + +msgid "Select service to add..." +msgstr "Zvoľte stanicu, ktorú chcete pridať..." + +msgid "Select sort method:" +msgstr "" + +#, fuzzy +msgid "Select target folder" +msgstr "Zvoliť cieľový adresár" + +#, fuzzy +msgid "Select the movie path" +msgstr "zvoliť cestu k filmu" + +#, fuzzy +msgid "Select upgrade source" +msgstr "Zvoľte zdroj aktualizácie, ktorý chcete upraviť." + +msgid "Select upgrade source to edit." +msgstr "Zvoľte zdroj aktualizácie, ktorý chcete upraviť." + +msgid "Select video input with up/down buttons" +msgstr "Tlačidlami nahor a nadol zvoľte vstup obrazu" + +msgid "Select video mode" +msgstr "Zvoľte režim obrazu" + +msgid "Select wireless network" +msgstr "Zvoľte bezdrôtovú sieť" + +msgid "Select your provider, and press OK to start the scan" +msgstr "" + +msgid "Selecting satellites 1 (USALS)" +msgstr "" + +msgid "Selecting satellites 2 (USALS)" +msgstr "" + +msgid "Send DiSEqC only on satellite change" +msgstr "Poslať DiSEqC len pri zmene satelitu" + +msgid "Separate titles with a main menu" +msgstr "Samostatné tituly s hlavným menu" + +msgid "Sequence repeat" +msgstr "Opakovanie sekvencie" + +msgid "Serbian" +msgstr "Srbčina" + +msgid "Service" +msgstr "Stanica" + +msgid "Service has been added to the favourites." +msgstr "Stanica bola pridaná do obľúbených" + +msgid "Service has been added to the selected bouquet." +msgstr "Stanica bola pridaná do zvoleného buketu" + +#, fuzzy +msgid "Service info" +msgstr "Informácie o stanici" + +msgid "" +"Service invalid!\n" +"(Timeout reading PMT)" +msgstr "" +"Stanica je neplatná!\n" +"(Čas vypršal pri čítaní PMT)" + +#, fuzzy +msgid "Service name" +msgstr "Vyhľadávanie staníc" + +msgid "" +"Service not found!\n" +"(SID not found in PAT)" +msgstr "" +"Stanica nebola nájdená!\n" +"(SID nenájdený v PAT)" + +msgid "Service reference" +msgstr "" + +msgid "Service scan" +msgstr "Vyhľadávanie staníc" + +#, fuzzy +msgid "Service searching" +msgstr "Vyhľadávanie staníc" + +#, fuzzy +msgid "Service title mode" +msgstr "Zvoľte režim obrazu" + +msgid "" +"Service unavailable!\n" +"Check tuner configuration!" +msgstr "" +"Stanica je nedostupná!\n" +"Skontrolujte nastavenie tunera!" + +msgid "Services" +msgstr "Stanice" + +msgid "Set default" +msgstr "" + +#, fuzzy +msgid "Set end time" +msgstr "Nastavte čas konca" + +msgid "Set fixed" +msgstr "" + +msgid "Set fps for external subtitles" +msgstr "" + +msgid "Set interface as default Interface" +msgstr "Nastaviť rozhranie ako predvolené" + +msgid "Set limits" +msgstr "" + +#, fuzzy +msgid "Set the type of the progress indication in the channel selection screen." +msgstr "Vo výbere staníc zobraziť priebeh programu" + +msgid "Set time window to 1 hour" +msgstr "" + +msgid "Set time window to 2 hours" +msgstr "" + +msgid "Set time window to 3 hours" +msgstr "" + +msgid "Set time window to 4 hours" +msgstr "" + +msgid "Set time window to 5 hours" +msgstr "" + +msgid "Set time window to 6 hours" +msgstr "" + +#, fuzzy +msgid "Set voltage and 22KHz" +msgstr "Nastaviť napätie a 22 kHz" + +msgid "Settings" +msgstr "Nastavenia" + +msgid "Setup" +msgstr "Nastavenia" + +msgid "Setup menu" +msgstr "" + +#, fuzzy +msgid "Setup mode" +msgstr "Režim nastavení" + +msgid "Setup your positioner" +msgstr "" + +#, fuzzy +msgid "Setup your satellite equipment" +msgstr "Satelitné zariadenie" + +#, python-format +msgid "Shall the USB stick wizard proceed and program the image file %s into flash memory?" +msgstr "Má sorievodca kľúčom USB pokračovať a naprogramovať súbor image %s do pamäte flash?" + +msgid "Sharpness" +msgstr "Ostrosť" + +msgid "Short filenames" +msgstr "Krátke názvy súborov" + +msgid "Show EIT now/next in infobar" +msgstr "" + +#, fuzzy +msgid "Show EPG for current channel..." +msgstr "Zobraziť informácie pri zmene programu" + +#, fuzzy +msgid "Show EPG..." +msgstr "zobraziť EPG..." + +msgid "Show Games show" +msgstr "" + +msgid "Show SNR percentage instead of dB value" +msgstr "" + +msgid "Show VCR scart on main menu" +msgstr "" + +#, fuzzy +msgid "Show WLAN status" +msgstr "Zobraziť stav WLAN" + +msgid "Show animation while busy" +msgstr "" + +#, fuzzy +msgid "Show background in radio mode" +msgstr "obraz v pozadí" + +msgid "Show bouquet selection menu" +msgstr "" + +msgid "Show busy indicator when the system is busy." +msgstr "" + +msgid "Show channel numbers in channel selection" +msgstr "" + +msgid "Show columns" +msgstr "" + +msgid "Show crypto icons" +msgstr "" + +msgid "Show crypto info in infobar" +msgstr "" + +msgid "Show detailed event info" +msgstr "" + +#, fuzzy +msgid "Show event details" +msgstr "zobraziť údaje o programe" + +msgid "Show event-progress in channel selection" +msgstr "Vo výbere staníc zobraziť priebeh programu" + +#, fuzzy +msgid "Show extended description" +msgstr "zobraziť rozšírený opis" + +#, fuzzy +msgid "Show extensions..." +msgstr "zobraziť rozšírenia..." + +msgid "Show icon for new/unseen items" +msgstr "" + +msgid "Show in extensions menu" +msgstr "" + +#, fuzzy +msgid "Show info" +msgstr "Zobraziť informácie" + +#, fuzzy +msgid "Show info line" +msgstr "zobraziť informácie" + +msgid "Show infobar on channel change" +msgstr "Zobraziť informácie pri zmene stanice" + +msgid "Show infobar on event change" +msgstr "Zobraziť informácie pri zmene programu" + +msgid "Show infobar on skip forward/backward" +msgstr "Zobraziť informácie pri skoku vpred, vzad" + +msgid "Show latest commits on sourceforge" +msgstr "" + +#, fuzzy +msgid "Show message when recording starts" +msgstr "Zobraziť správu pri začatí nahrávania." + +#, fuzzy +msgid "Show movie lengths in movielist" +msgstr "Prevziať dĺžku filmov do zoznamu filmov" + +msgid "Show multi channel EPG" +msgstr "" + +msgid "Show picons in channel list" +msgstr "" + +msgid "Show positioner movement" +msgstr "Zobraziť otáčanie motora" + +msgid "Show screensaver" +msgstr "" + +msgid "Show second infobar" +msgstr "" + +msgid "Show service type icons" +msgstr "" + +msgid "Show services beginning with" +msgstr "Zobraziť stanice začínajúce na" + +#, fuzzy +msgid "Show shutdown menu" +msgstr "zobraziť menu vypnutia" + +msgid "Show single service EPG" +msgstr "" + +msgid "Show status icons in Movielist" +msgstr "" + +msgid "Show status icons in movie list" +msgstr "" + +msgid "Show status icons in movielist" +msgstr "" + +#, fuzzy +msgid "Show tag menu" +msgstr "zobraziť menu štítkov" + +msgid "Show the radio player..." +msgstr "Prehrávanie rádia..." + +msgid "Show the tv player..." +msgstr "Prehrávanie TV..." + +msgid "Show warning when timeshift is stopped" +msgstr "" + +msgid "Shows the state of your wireless LAN connection.\n" +msgstr "Zobrazuje stav pripojenia bezdrôtovej LAN.\n" + +#, fuzzy +msgid "Shuffle playlist" +msgstr "premiešať zoznam prehrávok" + +msgid "Shutdown" +msgstr "Vypnúť" + +msgid "Shutdown when in Standby" +msgstr "" + +msgid "Side by side" +msgstr "" + +msgid "Signal OK, proceeding" +msgstr "" + +msgid "Signal quality" +msgstr "" + +#, fuzzy +msgid "Signal strength:" +msgstr "Sila signálu:" + +msgid "Signal: " +msgstr "Signál:" + +msgid "Similar" +msgstr "Podobné" + +msgid "Similar broadcasts:" +msgstr "Podobné programy:" + +msgid "Simple" +msgstr "jednoduchý" + +msgid "Simple titleset (compatibility for legacy players)" +msgstr "Jednoduchá sada titulov (kompatibilita so staršími prehrávačmi)" + +msgid "Single" +msgstr "Jeden" + +msgid "Single EPG" +msgstr "Jeden EPG" + +msgid "Single satellite" +msgstr "jeden satelit" + +#, fuzzy +msgid "Single step (GOP)" +msgstr "Jeden krok (GOP)" + +msgid "Single transponder" +msgstr "jeden transpondér" + +msgid "Site latitude" +msgstr "" + +msgid "Site longitude" +msgstr "" + +msgid "Skin" +msgstr "Vzhľad" + +msgid "Skins" +msgstr "Vzhľady" + +#, fuzzy +msgid "Skip empty services" +msgstr "Ochrániť stanice" + +msgid "Skip internet connection check (disables automatic package installation)" +msgstr "" + +#, fuzzy +msgid "Sleep timer" +msgstr "Časovač vypnutia" + +msgid "SleepTimer Configuration" +msgstr "" + +msgid "Sleeptimer" +msgstr "" + +#, fuzzy +msgid "Slide picture in loop" +msgstr "premietať obrázky v slučke" + +#, fuzzy +msgid "Slide show interval (sec.)" +msgstr "Interval prezentácie (s)" + +#, python-format +msgid "Slot %d" +msgstr "Slot %d" + +msgid "Slovak" +msgstr "" + +msgid "Slovenian" +msgstr "Slovinčina" + +msgid "Slow" +msgstr "pomaly" + +#, fuzzy +msgid "Slow motion speeds" +msgstr "Rýchlosti časovej lupy" + +#, fuzzy +msgid "Small progress" +msgstr "Prebieha" + +msgid "Social/Political/Economics" +msgstr "" + +msgid "SoftCam / CI" +msgstr "" + +#, fuzzy +msgid "Softcam type" +msgstr "Softvér" + +msgid "Software" +msgstr "Softvér" + +msgid "Software management" +msgstr "Správa softvéru" + +msgid "Software manager setup" +msgstr "Nastavenie správcu softvéru" + +msgid "Software restore" +msgstr "Obnoviť softvér" + +msgid "Software update" +msgstr "Aktualizovať softvér" + +msgid "Softwaremanager information" +msgstr "Informácie správcu softvéru" + +msgid "Some plugins are not available:\n" +msgstr "Niektoré moduly nie sú dostupné:\n" + +#, fuzzy, python-format +msgid "Sorry, %s has not been installed!" +msgstr "Ľutujem, MediaScanner nie je nainštalovaný!" + +msgid "Sorry, deleting directories can (for now) only be done through the trash can." +msgstr "" + +#, fuzzy +msgid "Sorry, no backups found!" +msgstr "Neboli nájdené žiadne zálohy!" + +#, fuzzy +msgid "Sorry, no details available!" +msgstr "Nie sú dostupné žiadne údaje!" + +#, fuzzy +msgid "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." +msgstr "" +"Umiestnenie zálohy nie je zapisovateľné\n" +"Zvoľte si iné umiestnenie." + +msgid "Sort" +msgstr "" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort A-Z" +msgstr "Triediť A-Z" + +msgid "Sort by" +msgstr "" + +msgid "Sort list:" +msgstr "" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +#, fuzzy +msgid "Sort time" +msgstr "Triediť podľa času" + +msgid "Sound" +msgstr "Zvuk" + +#, fuzzy +msgid "Sound carrier" +msgstr "Nosný kmitočet zvuku" + +msgid "Source request" +msgstr "" + +msgid "South" +msgstr "južne" + +msgid "Spanish" +msgstr "Španielčina" + +msgid "Specify the end time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the end time until the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify the start time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the start time when the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify timeframe to ignore inactivity sleeptimer" +msgstr "" + +msgid "Specify timeframe to ignore the shutdown in standby" +msgstr "" + +msgid "Split preview mode" +msgstr "Režim rozdelenia náhľadu" + +msgid "Splitscreen" +msgstr "" + +msgid "Sports" +msgstr "" + +#, fuzzy +msgid "Standard" +msgstr "štand." + +msgid "Standart list" +msgstr "" + +msgid "Standby" +msgstr "Pohotovostný režim" + +#, fuzzy +msgid "Standby / restart" +msgstr "Vypnúť, reštartovať" + +msgid "Standby after current event" +msgstr "" + +#, fuzzy, python-format +msgid "Standby fan %d PWM" +msgstr "Pohotovosť, PWM ventilátora %d" + +#, fuzzy, python-format +msgid "Standby fan %d voltage" +msgstr "Pohotovosť, napätie ventilátora %d" + +msgid "Standby in " +msgstr "" + +msgid "StandbyLED" +msgstr "" + +msgid "Start from the beginning" +msgstr "Spustiť od začiatku" + +msgid "Start offline decode" +msgstr "" + +msgid "Start recording?" +msgstr "Spustiť nahrávanie?" + +msgid "Start test" +msgstr "Spustiť test" + +#, fuzzy +msgid "Start time" +msgstr "Začiatok" + +msgid "Start time to ignore inactivity sleeptimer" +msgstr "" + +msgid "Start time to ignore shutdown in standby" +msgstr "" + +#, fuzzy +msgid "Start timeshift" +msgstr "začať časový posun" + +msgid "Start with list screen" +msgstr "" + +msgid "Starting on" +msgstr "Začína od" + +msgid "Startup the set top box in standby" +msgstr "" + +msgid "Startup to Standby" +msgstr "" + +msgid "Step east" +msgstr "Krok východne" + +msgid "Step west" +msgstr "Krok západne" + +msgid "Stepped east" +msgstr "" + +msgid "Stepped west" +msgstr "" + +msgid "Stop" +msgstr "Zastaviť" + +#, fuzzy +msgid "Stop PiP" +msgstr "zastaviť PiP" + +msgid "Stop current event and disable coming events" +msgstr "Zastaviť aktuálnu udalosť a zrušiť nasledujúce udalosti" + +msgid "Stop current event but not coming events" +msgstr "Zastaviť aktuálnu udalosť, ale nezrušiť nasledujúce udalosti" + +#, fuzzy +msgid "Stop entry" +msgstr "zastaviť" + +msgid "Stop playing this movie?" +msgstr "Zastaviť prehrávanie tohto filmu?" + +msgid "Stop recording" +msgstr "" + +msgid "Stop recording and delete" +msgstr "" + +msgid "Stop service on return to movie list" +msgstr "" + +msgid "Stop test" +msgstr "Zastaviť test" + +msgid "Stop testing plane after # failed transponders" +msgstr "Zastaviť testovanie po # zlyhaných transpondéroch" + +msgid "Stop testing plane after # successful transponders" +msgstr "Zastaviť testovanie po # úspešných transpondéroch" + +msgid "Stop timer recording" +msgstr "" + +#, fuzzy +msgid "Stop timeshift" +msgstr "zastaviť časový posun" + +#, fuzzy +msgid "Stop timeshift?" +msgstr "Zastaviť časový posun?" + +msgid "Stopped" +msgstr "" + +msgid "Store at index" +msgstr "" + +msgid "Store position" +msgstr "Uložiť pozíciu" + +msgid "Stored position" +msgstr "Uložená pozícia" + +msgid "Stream" +msgstr "" + +msgid "Stream request" +msgstr "" + +msgid "Strongest position" +msgstr "" + +msgid "Subservice list..." +msgstr "Zoznam podkanálov..." + +msgid "Subservices" +msgstr "Podkanály" + +msgid "Subtitle Quickmenu" +msgstr "" + +#, fuzzy +msgid "Subtitle alignment" +msgstr "Výber titulkov" + +msgid "Subtitle border width" +msgstr "" + +msgid "Subtitle delay when timing is bad" +msgstr "" + +msgid "Subtitle delay when timing lacks" +msgstr "" + +#, fuzzy +msgid "Subtitle font size" +msgstr "Titulky" + +msgid "Subtitle language selection 1" +msgstr "" + +msgid "Subtitle language selection 2" +msgstr "" + +msgid "Subtitle language selection 3" +msgstr "" + +msgid "Subtitle language selection 4" +msgstr "" + +#, fuzzy +msgid "Subtitle position" +msgstr "Výber titulkov" + +msgid "Subtitle selection" +msgstr "Výber titulkov" + +msgid "Subtitle selection..." +msgstr "" + +msgid "Subtitle settings" +msgstr "" + +msgid "Subtitles" +msgstr "Titulky" + +msgid "Sun" +msgstr "Ne" + +msgid "Sunday" +msgstr "Nedeľa" + +#, fuzzy +msgid "Swap PiP and main picture" +msgstr "vymeniť PiP a hlavný obraz" + +#, fuzzy +msgid "Swap services" +msgstr "Vymeniť stanice" + +msgid "Swedish" +msgstr "Švédčina" + +msgid "Switch TV to correct input" +msgstr "" + +msgid "Switch between filelist/playlist" +msgstr "" + +msgid "Switch between normal mode and list mode" +msgstr "" + +msgid "Switch to HDMI in mode" +msgstr "" + +#, fuzzy +msgid "Switch to filelist" +msgstr "prepnúť na zoznam súborov" + +msgid "Switch to next channel" +msgstr "" + +#, fuzzy +msgid "Switch to next channel in history" +msgstr "Nasledujúca stanica v histórii" + +#, fuzzy +msgid "Switch to next sub service" +msgstr "Prepnúť na nasledujúci podkanál" + +#, fuzzy +msgid "Switch to playlist" +msgstr "prepnúť na zoznam prehrávok" + +#, fuzzy +msgid "Switch to previous channel" +msgstr "Prepnúť na predchádzajúci podkanál" + +#, fuzzy +msgid "Switch to previous channel in history" +msgstr "Predchádzajúca stanica v histórii" + +#, fuzzy +msgid "Switch to previous sub service" +msgstr "Prepnúť na predchádzajúci podkanál" + +msgid "Switchable tuner types:" +msgstr "Prepínateľné typy tunerov:" + +msgid "Symbol rate" +msgstr "Symbolová rýchlosť" + +msgid "Symbol rate:" +msgstr "" + +msgid "Sync failure moving back to origin !" +msgstr "" + +msgid "System" +msgstr "Systém" + +#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) +msgid "TRANSLATOR_INFO" +msgstr "PREKLADATEĽ" + +msgid "TS file is too large for ISO9660 level 1!" +msgstr "Súbor TS je príliš veľký pre úroveň 1 ISO9660!" + +msgid "TSID" +msgstr "" + +msgid "TV physical address report" +msgstr "" + +msgid "TXT PID" +msgstr "" + +#, fuzzy +msgid "Table of contents for collection" +msgstr "Obsah zostavy" + +msgid "Tags" +msgstr "Štítky" + +msgid "Teletext subtitle color" +msgstr "" + +#, fuzzy +msgid "Temperature and fan control" +msgstr "Teplota a ventilátor" + +msgid "Terrestrial" +msgstr "Pozemné" + +msgid "Terrestrial provider" +msgstr "Poskytovateľ pozemných služieb" + +msgid "Test DiSEqC settings" +msgstr "Vyskúšať nastavenia DiSEqC" + +msgid "Test mode" +msgstr "Testovací režim" + +msgid "Test the network configuration of your receiver.\n" +msgstr "" + +#, fuzzy +msgid "Test type" +msgstr "Druh testu" + +#, fuzzy +msgid "Text color" +msgstr "farba textu" + +msgid "Thai" +msgstr "" + +msgid "" +"Thank you for using the wizard.\n" +"Please press OK to continue." +msgstr "" +"Ďakujeme, že ste použili sprievodcu.\n" +"Pokračujte stlačením OK." + +#, fuzzy +msgid "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." +msgstr "" +"Ďakujeme, že ste použili sprievodcu.\n" +"Pokračujte stlačením OK." + +msgid "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?" +msgstr "" + +msgid "The PIN code has been changed successfully." +msgstr "Kód PIN bol úspešne zmenený." + +msgid "The PIN codes you entered are different." +msgstr "Kódy PIN, ktoré ste zadali, sú rôzne." + +msgid "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" +msgstr "" +"Kľúč USB je pripravený ako bootovateľný.\n" +"Teraz môžete stiahnuť súbor NFI." + +msgid "The backup failed. Please choose a different backup location." +msgstr "Zálohovanie zlyhalo. Zvoľte iné umiestnenie zálohy." + +#, python-format +msgid "" +"The current beta image might not be stable.\n" +"For more information see %s." +msgstr "" + +#, python-format +msgid "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." +msgstr "" +"Do adresára %s sa nedá zapisovať.\n" +"Zvoľte taký adresár, do ktorého sa dá zapisovať." + +#, python-format +msgid "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" +msgstr "" +"Bolo nájdené toto zariadenie:\n" +"\n" +"%s\n" +"\n" +"Chcete zapísať USB flasher na tento kľúč?" + +msgid "The following files were found..." +msgstr "Boli nájdené tieto súbory..." + +msgid "The md5sum validation failed, the file may be corrupted!" +msgstr "Overovanie md5sum zlyhalo. Súbor je asi porušený!" + +#, fuzzy +msgid "" +"The network wizard extension is not installed!\n" +"Please install it." +msgstr "" +"Rozšírenie Sprievodca sieťou nie je nainštalované.\n" +"Nainštalujte si ho." + +#, python-format +msgid "The path %s already exists." +msgstr "Cesta %s už existuje." + +msgid "The pin code you entered is wrong." +msgstr "Zadaný kód PIN je nesprávny." + +#, python-format +msgid "The results have been written to %s." +msgstr "Výsledky boli zapísané do súboru %s." + +msgid "The sleep timer has been activated." +msgstr "Časovač vypnutia bol zapnutý." + +msgid "The sleep timer has been disabled." +msgstr "Časovač vypnutia bol vypnutý." + +#, fuzzy +msgid "" +"The software management extension is not installed!\n" +"Please install it." +msgstr "" +"Rozšírenie Správa softvéru nie je nainštalované!\n" +"Nainštalujte si ho." + +#, python-format +msgid "The status of the current beta image could not be checked because %s can not be reached." +msgstr "" + +msgid "The timer file (timers.xml) is corrupt and could not be loaded." +msgstr "Súbor časovača (timers.xml) je porušený a nedá sa otvoriť." + +#, fuzzy +msgid "The user interface of your receiver is restarting" +msgstr "Čakajte, kým sa sieť reštartuje..." + +msgid "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" +msgstr "" + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." +msgstr "" +"Modul bezdrôtovej LAN nie je nainštalovaný.\n" +"Nainštalujte ho a zvoľte, čo chcete robiť ďalej." + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it." +msgstr "" +"Modul bezdrôtovej LAN nie je nainštalovaný!\n" +"Nainštalujte ho." + +msgid "The wizard can backup your current settings. Do you want to do a backup now?" +msgstr "Sprievodca môže zálohovať aktuálne nastavenia. Chcete teraz zálohovať?" + +#, python-format +msgid "The wizard found a configuration backup. Do you want to restore your old settings from %s?" +msgstr "Sprievodca našiel zálohu nastavení. Chcete obnoviť staré nastavenia z %s?" + +msgid "The wizard is finished now." +msgstr "Sprievodca teraz skončil." + +msgid "There are at least " +msgstr "Je aspoň" + +#, fuzzy, python-format +msgid "There are at least %s updates available." +msgstr "Nie sú dostupné žiadne aktualizácie." + +msgid "There are currently no outstanding actions." +msgstr "Žiadne činnosti na vykonanie." + +msgid "There are no updates available." +msgstr "Nie sú dostupné žiadne aktualizácie." + +msgid "There is no signal to lock on !" +msgstr "" + +msgid "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" +msgstr "" +"Vo zvolenej partícii nemusí byť dostatok miesta.\n" +"Naozaj chcete pokračovať?" + +msgid "This DVD RW medium is already formatted - reformatting will erase all content on the disc." +msgstr "Toto médium DVD RW je už naformátované - opätovným formátovaním sa vymaže celý obsah disku." + +msgid "" +"This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!" +msgstr "" + +msgid "This plugin is installed." +msgstr "Tento modul je nainštalovaný." + +msgid "This plugin is not installed." +msgstr "Tento modul nie je nainštalovaný." + +msgid "This plugin will be installed." +msgstr "Tento modul sa nainštaluje." + +msgid "This plugin will be removed." +msgstr "Tento modul sa odstráni." + +#, python-format +msgid "This receiver cannot decode %s streams!" +msgstr "" + +#, fuzzy +msgid "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration" +msgstr "" +"Tento test hľadá nakonfigurované DNS.\n" +"Ak dostanete hlásenie „nepotvrdené“:\n" +"- skontrolujte DHCP, kabeláž a nastavenie adaptéra\n" +"- ak ste DNS konfigurovali ručne, skontrolujte údaje v nastavení „konfigurácia servera DNS“" + +#, fuzzy +msgid "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" +msgstr "" +"Tento test overuje, či je sieťový kábel pripojený k sieťovej karte.\n" +"Ak dostanete hlásenie „odpojené“:\n" +"- skontrolujte, či je pripojený sieťový kábel\n" +"- skontrolujte, či kábel nie je prerušený" + +#, fuzzy +msgid "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" +msgstr "" +"Tento test overuje, či je platná IP adresa sieťovej karty.\n" +"Ak dostanete hlásenie „nepotvrdené“:\n" +"- nebola nájdená platná IP adresa\n" +"- skontrolujte DHCP, kabeláž a nastavenie karty" + +#, fuzzy +msgid "" +"This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." +msgstr "" +"Tento test overuje, či máte sieťovú kartu nastavenú na automatické nastavenie IP adresy z DHCP.\n" +"Ak dostanete hlásenie „vypnuté“:\n" +" - máte sieťovú kartu nakonfigurovanú na ručné nastavenie IP adresy\n" +"- skontrolujte, či ste zadali správne IP údaje v nastavovacom dialógu karty.\n" +"Ak dostanete hlásenie „zapnuté“:\n" +"- skontrolujte, či máte v sieti nakonfigurovaný a fungujúci server DHCP." + +#, fuzzy +msgid "This test detects your configured LAN adapter." +msgstr "Tento test zisťuje nakonfigurovanú sieťovú kartu." + +msgid "" +"This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\n" +"Are you sure?" +msgstr "" + +msgid "Three" +msgstr "Tri" + +msgid "Threshold" +msgstr "Prah" + +msgid "Thu" +msgstr "Št" + +msgid "Thumbnails" +msgstr "Zmenšeniny" + +msgid "Thursday" +msgstr "Štvrtok" + +msgid "Time" +msgstr "Čas" + +#, fuzzy +msgid "Time scale" +msgstr "Voľba časovača" + +msgid "Timer" +msgstr "Časovač" + +msgid "Timer Overview" +msgstr "" + +#, fuzzy +msgid "Timer edit" +msgstr "Úprava časovača" + +#, fuzzy +msgid "Timer editor" +msgstr "Editor časovača" + +msgid "Timer entry" +msgstr "Položka časovača" + +msgid "Timer log" +msgstr "Záznam časovača" + +msgid "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" +msgstr "" +"Zistené prekrývanie časovačov v súbore timers.xml!\n" +"Skontrolujte to!" + +#, fuzzy +msgid "Timer overview" +msgstr "Položka časovača" + +#, fuzzy +msgid "Timer recording location" +msgstr "Umiestnenie nahrávky časovača" + +msgid "Timer sanity error" +msgstr "Nerozumné časovanie" + +msgid "Timer selection" +msgstr "Voľba časovača" + +msgid "Timer selection..." +msgstr "" + +#, fuzzy +msgid "Timer type" +msgstr "Úloha časovača" + +msgid "Timeshift" +msgstr "Časový posun" + +msgid "Timeshift Live" +msgstr "" + +msgid "Timeshift location" +msgstr "Umiestnenie časového posunu" + +msgid "Timeshift not possible!" +msgstr "Časový posun nie je možný!" + +msgid "Timezone" +msgstr "Časové pásmo" + +msgid "Title" +msgstr "Titul" + +msgid "Title properties" +msgstr "Vlastnosti titulu" + +msgid "Titleset mode" +msgstr "Režim sady titulov" + +msgid "To audio selection" +msgstr "" + +msgid "To subtitle selection" +msgstr "" + +msgid "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." +msgstr "" + +msgid "Today" +msgstr "Dnes" + +#, fuzzy +msgid "Toggle a cut mark at the current position" +msgstr "prepnúť značku strihu na aktuálnom mieste" + +#, fuzzy +msgid "Tone amplitude" +msgstr "Amplitúda zvuku" + +msgid "Tone mode" +msgstr "Tónový režim" + +msgid "Toneburst" +msgstr "Tónový impulz" + +msgid "Toneburst A/B" +msgstr "Tónový impulz A/B" + +msgid "Top and bottom" +msgstr "" + +msgid "Track" +msgstr "Stopa" + +msgid "Translation" +msgstr "Preklad" + +msgid "Translation:" +msgstr "Preklad:" + +msgid "Translations" +msgstr "" + +msgid "Transmission mode" +msgstr "Režim prenosu" + +msgid "Transponder" +msgstr "Transpondér" + +#, fuzzy +msgid "Transponder type" +msgstr "Typ transpondéra" + +msgid "Trash can" +msgstr "" + +msgid "Tries left:" +msgstr "Zostávajúce pokusy:" + +msgid "Try to find used transponders in cable network.. please wait..." +msgstr "Pokúšam sa nájsť použité transpondéry v káblovej sieti... čakajte..." + +msgid "Trying to download a new packetlist. Please wait..." +msgstr "Pokúšam sa stiahnuť nový zoznam paketov. Čakajte..." + +msgid "Tue" +msgstr "Ut" + +msgid "Tuesday" +msgstr "Utorok" + +msgid "Tune" +msgstr "Naladiť" + +#, fuzzy +msgid "Tune and focus" +msgstr "Stav tunera" + +msgid "Tune failed!" +msgstr "Ladenie zlyhalo!" + +msgid "Tuner" +msgstr "Tuner" + +msgid "Tuner configuration" +msgstr "Nastavenie tunera" + +msgid "Tuner is not supported" +msgstr "" + +#, fuzzy +msgid "Tuner slot" +msgstr "Otvor pre tuner" + +msgid "Tuner status" +msgstr "Stav tunera" + +#, fuzzy, python-format +msgid "Tuner status %s" +msgstr "Stav tunera" + +msgid "Tuner type" +msgstr "Typ tunera" + +msgid "Turkish" +msgstr "Turečtina" + +msgid "Turn on the power LED during standby." +msgstr "" + +msgid "Turning step size" +msgstr "" + +msgid "Two" +msgstr "Dva" + +msgid "Type" +msgstr "Typ" + +msgid "Type of scan" +msgstr "Druh vyhľadávania" + +msgid "USALS" +msgstr "USALS" + +msgid "USALS calibration" +msgstr "" + +#, fuzzy +msgid "USB stick" +msgstr "Kľúč USB" + +msgid "USB stick wizard" +msgstr "Sprievodca pre kľúč USB" + +msgid "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" + +msgid "Undo install" +msgstr "Späť inštalácia" + +msgid "Undo uninstall" +msgstr "Späť odinštalácia" + +msgid "Unencrypted" +msgstr "Nešifrované" + +msgid "UnhandledKey" +msgstr "" + +msgid "Unicable" +msgstr "Unicable" + +msgid "Unicable LNB" +msgstr "Unicable LNB" + +msgid "Unicable Martix" +msgstr "" + +msgid "Uninstall" +msgstr "Odinštalovať" + +msgid "Universal LNB" +msgstr "Univerzálny LNB" + +msgid "Unknown" +msgstr "Neznáme" + +msgid "Unmount" +msgstr "" + +msgid "Unsupported" +msgstr "Nepodporované" + +msgid "Update" +msgstr "Aktualizovať" + +msgid "Update and ask to reboot" +msgstr "" + +msgid "Update and reboot (recommended)" +msgstr "" + +#, fuzzy +msgid "Update channel list only" +msgstr "Nasledujúca stanica v histórii" + +#, python-format +msgid "Update completed, %d package was installed." +msgid_plural "Update completed, %d packages were installed." +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +msgid "Update completed. Do you want to reboot your receiver?" +msgstr "" + +msgid "Update failed. Your receiver does not have a working internet connection." +msgstr "" + +msgid "Update has completed." +msgstr "" + +msgid "Updatefeed not available." +msgstr "Aktualizačný feed je nedostupný." + +msgid "Updating software catalog" +msgstr "Aktualizácia katalógu softvéru" + +msgid "Upgrading" +msgstr "Aktualizujem" + +msgid "Use" +msgstr "Použiť" + +msgid "Use DHCP" +msgstr "Použiť DHCP" + +msgid "Use EIT EPG information when it is available." +msgstr "" + +msgid "Use FreeSat EPG information when it is available." +msgstr "" + +msgid "Use MHW EPG information when it is available." +msgstr "" + +msgid "Use Netmed EPG information when it is available." +msgstr "" + +msgid "Use TV remote control" +msgstr "" + +#, fuzzy +msgid "Use USALS for this sat" +msgstr "Pre tento satelit použiť USALS" + +msgid "Use ViaSat EPG information when it is available." +msgstr "" + +msgid "Use Virgin EPG information when it is available." +msgstr "" + +msgid "Use a gateway" +msgstr "Použiť bránu" + +msgid "Use fastscan channel names" +msgstr "" + +msgid "Use fastscan channel numbering" +msgstr "" + +msgid "Use frequency or channel" +msgstr "" + +msgid "Use individual settings for each directory" +msgstr "" + +#, fuzzy +msgid "Use interface" +msgstr "Použiť sieťový adaptér" + +msgid "Use official channel numbering" +msgstr "" + +msgid "Use original DVB subtitle position" +msgstr "" + +msgid "Use original teletext position" +msgstr "" + +msgid "Use power measurement" +msgstr "Použiť meranie spotreby" + +#, fuzzy +msgid "Use the network wizard to configure selected network adapter" +msgstr "Použiť Sprievodcu nastavením siete na nastavenie zvoleného sieťového adaptéra" + +#, fuzzy +msgid "Use the network wizard to configure your network\n" +msgstr "Na nastavenie siete použiť sprievodcu sieťou\n" + +msgid "Use the up/down keys on your remote control to select an option. After that, press OK." +msgstr "Šípkami nahor alebo nadol na diaľkovom ovládači vyberte voľbu. Potom stlačte tlačidlo OK." + +#, fuzzy +msgid "Use the wizard to set up basic features" +msgstr "Použiť sprievodcu pre nastavenie základných funkcií" + +#, fuzzy +msgid "Use these input device settings?" +msgstr "Použiť nastavenia vstupného zariadenia?" + +#, fuzzy +msgid "Use these settings?" +msgstr "Použiť toto nastavenie?" + +msgid "Use this video enhancement settings?" +msgstr "Použiť toto rozšírené nastavenie obrazu?" + +#, fuzzy +msgid "Use trash can in movielist" +msgstr "Návrat do zoznamu filmov" + +msgid "Used service scan type" +msgstr "Typ vyhľadávania staníc" + +msgid "User - bouquets" +msgstr "" + +msgid "User defined" +msgstr "Užívateľsky definované" + +msgid "User defined transponder" +msgstr "" + +#, fuzzy +msgid "User interface" +msgstr "Použiť sieťový adaptér" + +msgid "Username" +msgstr "Užívateľské meno" + +#, python-format +msgid "Using LNB %d" +msgstr "" + +msgid "Using fixed address" +msgstr "" + +#, python-format +msgid "Using tuner %s" +msgstr "" + +msgid "Usually when the subtitle language is the same as the audio language, the subtitles will not be used. Enable this option to allow these subtitles to be used." +msgstr "" + +msgid "VCR scart" +msgstr "Scart - videorekordér" + +msgid "VMGM (intro trailer)" +msgstr "" + +msgid "Vertical" +msgstr "Zvislá" + +msgid "Vertical turning speed" +msgstr "" + +msgid "Video PID" +msgstr "Obrazový PID" + +msgid "Video enhancement preview" +msgstr "Náhľad rozšíreného nastavenia obrazu" + +msgid "Video enhancement settings" +msgstr "Rozšírené nastavenia obrazu" + +msgid "Video enhancement setup" +msgstr "Rozšírené nastavenie obrazu" + +#, fuzzy +msgid "Video fine tuning" +msgstr "Jemné nastavenie obrazu" + +#, fuzzy +msgid "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." +msgstr "" +"Voľba obrazového vstupu\n" +"\n" +"Stlačte tlačidlo OK, ak na televízore vidíte túto stranu (alebo zvoľte iný vstup).\n" +"\n" +"Nasledujúci vstup sa automaticky vyskúša o 10 sekúnd." + +msgid "Video mode selection." +msgstr "Voľba režimu obrazu." + +#, fuzzy +msgid "Video output" +msgstr "Výstup obrazu" + +#, fuzzy +msgid "Video setup" +msgstr "Nastavenie obrazu" + +#, fuzzy +msgid "Video wizard" +msgstr "Sprievodca k obrazu" + +#, python-format +msgid "Video: %s fps" +msgstr "" + +msgid "VideoMode" +msgstr "" + +msgid "Videocodec" +msgstr "" + +msgid "Videoformat" +msgstr "" + +msgid "Videosize" +msgstr "" + +msgid "View Rass interactive..." +msgstr "Zobraziť RASS interaktívne..." + +msgid "View details" +msgstr "Zobraziť podrobnosti" + +msgid "View list of available " +msgstr "Zobraziť zoznam dostupných" + +msgid "View list of available CommonInterface extensions" +msgstr "Zobraziť zoznam dostupných rozšírení CommonInterface" + +msgid "View list of available EPG extensions." +msgstr "Zobraziť zoznam dostupných rozšírení EPG." + +msgid "View list of available Satellite equipment extensions." +msgstr "Zobraziť zoznam dostupných rozšírení satelitného zariadenia." + +msgid "View list of available communication extensions." +msgstr "Zobraziť zoznam dostupných komunikačných rozšírení." + +msgid "View list of available default settings" +msgstr "Zobraziť zoznam dostupných predvolených nastavení" + +#, fuzzy +msgid "View list of available display and userinterface extensions." +msgstr "Zobraziť zoznam dostupných rozšírení zobrazenia a užívateľského rozhrania" + +msgid "View list of available multimedia extensions." +msgstr "Zobraziť zoznam dostupných multimediálnych rozšírení." + +msgid "View list of available networking extensions" +msgstr "Zobraziť zoznam dostupných sieťových rozšírení" + +msgid "View list of available recording extensions" +msgstr "Zobraziť zoznam dostupných rozšírení pre nahrávanie" + +msgid "View list of available skins" +msgstr "Zobraziť zoznam dostupných vzhľadov" + +msgid "View list of available software extensions" +msgstr "Zobraziť zoznam dostupných softvérových rozšírení" + +msgid "View list of available system extensions" +msgstr "Zobraziť zoznam dostupných systémových rozšírení" + +#, fuzzy +msgid "View photos..." +msgstr "Zobraziť fotografie..." + +msgid "View teletext..." +msgstr "Zobraziť teletext..." + +#, fuzzy +msgid "View video CD..." +msgstr "Zobraziť Video CD..." + +#, fuzzy +msgid "Virtual keyboard" +msgstr "Virtuálna klávesnica" + +msgid "Voltage mode" +msgstr "Napäťový režim" + +msgid "Volume" +msgstr "Hlasitosť" + +msgid "W" +msgstr "Z" + +msgid "WEP" +msgstr "WEP" + +msgid "WLAN connection" +msgstr "Spojenie WLAN" + +msgid "WPA" +msgstr "WPA" + +msgid "WPA or WPA2" +msgstr "WPA alebo WPA2" + +msgid "WPA2" +msgstr "WPA2" + +msgid "WSS on 4:3" +msgstr "WSS pri 4:3" + +msgid "Waiting" +msgstr "Čakám" + +msgid "Waiting for mount" +msgstr "" + +msgid "Waiting for partition" +msgstr "" + +msgid "Wakeup" +msgstr "" + +msgid "Wakeup TV from standby" +msgstr "" + +msgid "Wakeup receiver for start timer" +msgstr "" + +msgid "Wakeup receiver from standby" +msgstr "" + +msgid "Wakeup signal from TV" +msgstr "" + +msgid "Wakeup type" +msgstr "" + +msgid "Warning: no LNB; using factory defaults." +msgstr "" + +#, fuzzy +msgid "Watch movies..." +msgstr "Prehrať nahrané filmy..." + +#, fuzzy +msgid "Watch recordings..." +msgstr "nahrávam..." + +msgid "Wed" +msgstr "St" + +msgid "Wednesday" +msgstr "Streda" + +msgid "Weekday" +msgstr "Pracovný deň" + +msgid "Weighted position" +msgstr "" + +#, fuzzy +msgid "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." +msgstr "" +"Vitajte v strihovom editore.\n" +"\n" +"Nájdite začiatok materiálu, ktorý chcete vystrihnúť. Stlačte OK, zvoľte „začiatok strihu“\n" +"\n" +"Potom nájdite koniec, stlačte OK, zvoľte „koniec strihu“ To je všetko." + +msgid "Welcome to the image upgrade wizard. The wizard will assist you in upgrading the firmware of your receiver by providing a backup facility for your current settings and a short explanation of how to upgrade your firmware." +msgstr "" + +msgid "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" +msgstr "" + +msgid "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." +msgstr "" + +msgid "Welcome..." +msgstr "Vitajte..." + +msgid "West" +msgstr "západne" + +msgid "West limit set" +msgstr "" + +msgid "What do you want to scan?" +msgstr "Čo chcete vyhľadať?" + +msgid "When enabled the PiP can be closed by the exit button." +msgstr "" + +msgid "When enabled the arrow buttons around the OK button will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled the left, right, CH+/-, B+/-, P+/- buttons will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled you can specify a timeframe to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "When enabled you can specify a timeframe were the inactivity sleeptimer is ignored. Not the detection is disabled during this timeframe but the inactivity timeout is disabled" +msgstr "" + +msgid "When enabled you can zap channels with the CH+/-, B+/-, P+/- buttons instead of opening the channel selection list." +msgstr "" + +msgid "When enabled you get the channel selection list via the OK button, the infobar toggle is then transfered to exit button" +msgstr "" + +msgid "When enabled, AIT data will be included in http streams. This allows a client receiver to use HbbTV." +msgstr "" + +msgid "When enabled, ECM data will be included in http streams. This allows a client receiver to do the descrambling." +msgstr "" + +msgid "When enabled, EIT data will be included in http streams. This allows a client receiver to show EPG." +msgstr "" + +msgid "When enabled, a popup message will be shown when a movie has finished and the next one will start." +msgstr "" + +msgid "When enabled, a popup message will be shown when a recording starts." +msgstr "" + +msgid "When enabled, a radio background image will be visible while listening to a radio channel." +msgstr "" + +msgid "When enabled, a recording is allowed to interrupt live tv, when there are no free tuners." +msgstr "" + +msgid "When enabled, a warning will be displayed and the user will get an option to stop or to continue the timeshift." +msgstr "" + +msgid "When enabled, authentication is required to watch http streams." +msgstr "" + +msgid "When enabled, channel numbering will start at '1' for each bouquet." +msgstr "" + +msgid "When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen." +msgstr "" + +msgid "When enabled, continue to the next bouquet when the last channel of the current bouquet is reached while changing channels." +msgstr "" + +msgid "When enabled, deleted recordings are moved to the trash can, instead of being deleted immediately." +msgstr "" + +msgid "When enabled, display the EIT now/next eventdata in infobar. When disabled, display now/next eventdata from the EPG cache instead." +msgstr "" + +msgid "When enabled, encryption info will be shown in the infobar (when supported by the skin)." +msgstr "" + +msgid "When enabled, error messages related to the Common Interface module will not be shown." +msgstr "" + +msgid "When enabled, error messages related to zapping will not be shown." +msgstr "" + +msgid "When enabled, external subtitles will be always turned on for playback movie." +msgstr "" + +msgid "When enabled, graphical DVB subtitles are preferred over teletext subtitles, when both types are available." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be centered horizontally." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be displayed at their original position." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be displayed in yellow, instead of the original color." +msgstr "" + +msgid "When enabled, http streams are descrambled on the server side. The (remote) client receiver does not have to do descrambling." +msgstr "" + +msgid "When enabled, it is possible to leave the movieplayer with exit." +msgstr "" + +msgid "When enabled, measure power consumption to detect when the rotor stops turning (when supported by the tuner)." +msgstr "" + +msgid "When enabled, number markers will be hiden." +msgstr "" + +msgid "When enabled, services may be grouped in multiple bouquets." +msgstr "" + +msgid "When enabled, show channel numbers in the channel selection screen." +msgstr "" + +msgid "When enabled, subtitles for the hearing impaired can be used." +msgstr "" + +msgid "When enabled, subtitles for the hearing impaired will be preferred over normal subtitles, when both types are available." +msgstr "" + +msgid "When enabled, teletext pages will be cached, allowing faster access." +msgstr "" + +msgid "When enabled, teletext subtitles will be displayed at their original position." +msgstr "" + +msgid "When enabled, the VCR scart option will be shown on the main menu" +msgstr "" + +msgid "When enabled, the channel selection list will be hidden while listening to a radio channel" +msgstr "" + +msgid "When enabled, the infobar will be displayed when a new event starts." +msgstr "" + +msgid "When enabled, the infobar will be displayed when changing channels." +msgstr "" + +msgid "When enabled, the infobar will be displayed when skipping forwards/backwards during media playback." +msgstr "" + +msgid "When enabled, the lenght of each recording will be shown in the movielist (this might cause some additional loading time)." +msgstr "" + +msgid "When enabled, the original line breaks will be removed from the teletext subtitles." +msgstr "" + +msgid "When enabled, the receiver will automatically use the audio track which you selected before." +msgstr "" + +msgid "When enabled, the receiver will automatically use the subtitles which you selected before." +msgstr "" + +msgid "When enabled, the receiver will no longer monitor the tuned transponder for possible changes. Do not use this option unless you know what you are doing." +msgstr "" + +msgid "When enabled, the receiver will select an AC3 track (when available)." +msgstr "" + +msgid "When enabled, the receiver will select an AC3+ track (when available)." +msgstr "" + +msgid "When enabled, timeshift starts automatically in background after specified time." +msgstr "" + +#, fuzzy +msgid "When enabled, use DHCP for the IP configuration." +msgstr "Otvoriť nastavenia DNS" + +msgid "When enabled, your receiver will detect activity on the VCR SCART input." +msgstr "" + +msgid "When nonzero, a recording will start earlier than the starting time indicated by the EPG." +msgstr "" + +msgid "When nonzero, a recording will stop later than the ending time indicated by the EPG." +msgstr "" + +msgid "When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture." +msgstr "" + +msgid "When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture." +msgstr "" + +msgid "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" +msgstr "" +"Keď resetujete na továrenské nastavenia, stratíte všetky konfiguračné dáta\n" +"(vrátane buketov, staníc, údajov o satelitoch...)\n" +"Po skončení prechodu na továrenské nastavenia sa prijímač automaticky reštartuje!\n" +"\n" +"Naozaj chcete resetovať na továrenské nastavenia?" + +msgid "Where do you want to backup your settings?" +msgstr "Kam chcete zálohovať svoje nastavenia?" + +msgid "Where to save temporary timeshift recordings?" +msgstr "Kam uložiť dočasné záznamy s posunom času?" + +msgid "Wireless LAN" +msgstr "Bezdrôtová LAN" + +#, fuzzy +msgid "Wireless network" +msgstr "Bezdrôtová sieť" + +#, fuzzy +msgid "Wireless network configuration..." +msgstr "Nastavenie bezdrôtovej siete." + +msgid "Wireless network connection setup" +msgstr "Nastavenie bezdrôtovej siete" + +msgid "Wireless network connection setup." +msgstr "Nastavenie bezdrôtovej siete." + +msgid "Wireless network state" +msgstr "Stav bezdrôtovej siete" + +msgid "With popup" +msgstr "" + +msgid "Without popup" +msgstr "" + +msgid "Would you like to install a softcam?" +msgstr "" + +msgid "Write error while recording. Disk full?\n" +msgstr "Chyba zápisu pri nahrávaní. Plný disk?\n" + +msgid "Write failed!" +msgstr "Zápis zlyhal!" + +msgid "YPbPr" +msgstr "YPbPr" + +msgid "Year" +msgstr "Rok" + +msgid "Yellow DVB subtitles" +msgstr "" + +msgid "Yes" +msgstr "Áno" + +msgid "Yes and save" +msgstr "" + +msgid "Yes and save in movie dir" +msgstr "" + +msgid "Yes to all" +msgstr "Áno pre všetky" + +msgid "Yes, always" +msgstr "Áno, vždy" + +msgid "Yes, and delete this movie" +msgstr "Áno, a zmazať tento film" + +msgid "Yes, backup my settings!" +msgstr "Áno, zálohovať nastavenia!" + +msgid "Yes, delete this movie and return to movie list" +msgstr "" + +msgid "Yes, do a manual scan now" +msgstr "Áno, teraz vyhľadávať ručne" + +msgid "Yes, do an automatic scan now" +msgstr "Áno, teraz vyhľadávať automaticky" + +msgid "Yes, do another manual scan now" +msgstr "Áno, urobiť ďalšie ručné vyhľadávanie" + +msgid "Yes, perform a shutdown now." +msgstr "Áno, teraz vypnúť." + +msgid "Yes, restore the settings now" +msgstr "Áno, teraz obnoviť nastavenia" + +msgid "Yes, returning to movie list" +msgstr "Áno, vrátiť sa do zoznamu filmov" + +msgid "Yesterday" +msgstr "" + +#, python-format +msgid "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" +msgstr "" + +msgid "You can cancel the installation." +msgstr "Môžete zrušiť inštaláciu." + +msgid "You can cancel the removal." +msgstr "Môžete zrušiť odstránenie." + +msgid "You can continue watching TV etc. while this is running." +msgstr "" + +msgid "You can install this plugin." +msgstr "Môžete nainštalovať tento modul." + +msgid "You can only burn receiver recordings!" +msgstr "" + +msgid "You can remove this plugin." +msgstr "Tento modul môžete odstrániť!" + +msgid "You cannot delete this!" +msgstr "Toto nemôžete zmazať!" + +msgid "You didn't select a channel to record from." +msgstr "Nezvolili ste stanicu, z ktorej sa má nahrávať." + +msgid "You have chosen to backup your settings. Please press OK to start the backup now." +msgstr "Vybrali ste si zálohovanie nastavení. Stlačením tlačidla OK spustíte zálohovanie." + +msgid "You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased." +msgstr "Zvolili ste si vytvorenie nového bootovateľného USB kľúča pre zápis .NFI. Pritom sa vytvorí nová partícia na kľúči a stratíte všetky dáta, ktoré sú na ňom." + +msgid "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." +msgstr "Vybrali ste si obnovu nastavení. Po obnovení sa Enigma2 reštartuje. Stlačením tlačidla OK spustíte obnovu." + +#, python-format +msgid "You have to wait %s!" +msgstr "Musíte čakať %s!" + +msgid "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." +msgstr "" + +msgid "You system does not support ext4" +msgstr "" + +msgid "Your backup succeeded. We will now continue to explain the further upgrade process." +msgstr "Zálohovanie sa podarilo.Teraz vysvetlíme ďalší postup pri aktualizácii." + +msgid "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" +msgstr "Zostava presahuje kapacitu jednovrstvového média. Potrebujete prázdny dvojvrstvový disk DVD!" + +msgid "Your current collection will get lost!" +msgstr "Vaša aktuálna zostava sa stratí." + +msgid "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." +msgstr "" +"Firmvér frontprocesora sa musí aktualizovať.\n" +"Stlačením tlačidla OK spustíte aktualizáciu." + +msgid "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" + +msgid "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." +msgstr "" +"Internetové pripojenie nefunguje!\n" +"Zvoľte, čo chcete robiť ďalej." + +#, python-format +msgid "Your internet connection is working (ip: %s)" +msgstr "" + +msgid "Your network configuration has been activated." +msgstr "Nastavenie siete bolo aktivované." + +msgid "Your receiver does not have an internet connection" +msgstr "" + +#, fuzzy +msgid "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" +msgstr "" +"Váš Dreambox je teraz pripravený na používanie.\n" +"\n" +"Internetové pripojenie funguje.\n" +"\n" + +msgid "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." +msgstr "" + +msgid "Your receiver is rebooting" +msgstr "" + +msgid "Your receiver is shutting down" +msgstr "" + +msgid "Your receiver is shutting down. Please stand by..." +msgstr "" + +msgid "Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver." +msgstr "" + +msgid "Your receiver will got to stand by due to the sleeptimer." +msgstr "" + +msgid "Your receiver will got to standby due to inactivity." +msgstr "" + +msgid "Your receiver will restart after pressing OK on your remote control." +msgstr "" + +msgid "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." +msgstr "" +"Internetové pripojenie bezdrôtovou LAN sa nedá spustiť!\n" +"Pripojili ste kľúč USB WLAN?\n" +"\n" +"Zvoľte, čo chcete robiť ďalej." + +msgid "Zap" +msgstr "" + +msgid "Zap back to previously tuned service?" +msgstr "Prepnúť späť na predtým naladenú stanicu?" + +msgid "Zap back to service before positioner setup?" +msgstr "Prepnúť späť na stanicu spred nastavovania motora?" + +msgid "Zap back to service before tuner setup?" +msgstr "Prepnúť späť na stanicu spred nastavovania tunera?" + +msgid "Zap focus to Picture in Picture" +msgstr "" + +msgid "Zap focus to main screen" +msgstr "" + +msgid "Zap mode" +msgstr "" + +msgid "Zap to selected channel" +msgstr "" + +msgid "Zap to selected channel, or show detailed event info (depends on configuration)" +msgstr "" + +msgid "[alternative edit]" +msgstr "[úprava alternatív]" + +msgid "[bouquet edit]" +msgstr "[úprava buketu]" + +msgid "[favourite edit]" +msgstr "[úprava obľúbených]" + +msgid "[move mode]" +msgstr "[presun]" + +msgid "a gui to assign services/providers to common interface modules" +msgstr "GUI na priradenie staníc a poskytovateľov k modulom CI" + +msgid "a gui to assign services/providers/caids to common interface modules" +msgstr "GUI na priradenie staníc, poskytovateľov a CAId k modulom CI" + +msgid "abort alternatives edit" +msgstr "zrušiť úpravu alternatív" + +msgid "abort bouquet edit" +msgstr "zrušiť úpravu buketu" + +msgid "abort favourites edit" +msgstr "zrušiť úpravu obľúbených" + +msgid "about to start" +msgstr "hneď začne" + +msgid "activate network adapter configuration" +msgstr "aktivovať konfiguráciu sieťového adaptéra" + +msgid "add alternatives" +msgstr "pridať alternatívy" + +msgid "add bookmark" +msgstr "pridať záložku" + +msgid "add bouquet" +msgstr "pridať buket" + +msgid "add marker" +msgstr "pridať značku" + +msgid "add service to bouquet" +msgstr "pridať stanicu do buketu" + +msgid "add service to favourites" +msgstr "pridať stanicu do obľúbených" + +msgid "add to parental protection" +msgstr "pridať k rodičovskej zámke" + +msgid "adult movie/drama" +msgstr "" + +msgid "advanced" +msgstr "rozšírené" + +msgid "adventure/western/war" +msgstr "" + +msgid "advertisement/shopping" +msgstr "" + +msgid "after " +msgstr "" + +#, fuzzy +msgid "alphabetic" +msgstr "triediť podľa abecedy" + +msgid "alphabetic reverse" +msgstr "" + +msgid "alternative" +msgstr "" + +msgid "always" +msgstr "" + +msgid "and select next channel" +msgstr "" + +msgid "and select previous channel" +msgstr "" + +msgid "arts/culture (without music, general)" +msgstr "" + +msgid "arts/culture magazine" +msgstr "" + +msgid "athletics" +msgstr "" + +msgid "audio tracks" +msgstr "zvukové stopy" + +msgid "auto" +msgstr "auto" + +#, fuzzy +msgid "automatic" +msgstr "Automaticky" + +msgid "back" +msgstr "späť" + +msgid "background image" +msgstr "obraz v pozadí" + +msgid "ballet" +msgstr "" + +#, python-format +msgid "bc%s" +msgstr "" + +msgid "better" +msgstr "lepšie" + +msgid "black" +msgstr "čierna" + +msgid "black & white" +msgstr "" + +msgid "blacklist" +msgstr "čierna listina" + +msgid "blue" +msgstr "modrá" + +msgid "broadcasting/press" +msgstr "" + +#, fuzzy +msgid "by date" +msgstr "triediť podľa dátumu" + +msgid "cartoon/puppets" +msgstr "" + +msgid "center" +msgstr "" + +msgid "centered" +msgstr "" + +msgid "centered, wrapped" +msgstr "" + +msgid "chapters" +msgstr "kapitoly" + +msgid "childrens's/youth program (general)" +msgstr "" + +msgid "circular left" +msgstr "kruhová ľavá" + +msgid "circular right" +msgstr "kruhová pravá" + +msgid "comedy" +msgstr "" + +msgid "complex" +msgstr "komplexné" + +msgid "config menu" +msgstr "menu nast." + +msgid "confirmed" +msgstr "potvrdené" + +msgid "connected" +msgstr "pripojené" + +msgid "continue" +msgstr "pokrač." + +msgid "cooking" +msgstr "" + +msgid "copy to bouquets" +msgstr "skopírovať do buketov" + +msgid "create directory" +msgstr "vytvoriť adresár" + +#, python-format +msgid "currently installed image: %s" +msgstr "Aktuálne nainštalovaný image: %s" + +msgid "daily" +msgstr "denne" + +msgid "day" +msgstr "deň" + +#, fuzzy +msgid "default" +msgstr "Predvolené" + +msgid "delete cut" +msgstr "zmazať strih" + +msgid "delete..." +msgstr "" + +msgid "descramble and record ecm" +msgstr "" + +msgid "detective/thriller" +msgstr "" + +msgid "disable" +msgstr "zrušiť" + +msgid "disable move mode" +msgstr "zrušiť presun" + +msgid "disabled" +msgstr "zrušené" + +msgid "disconnected" +msgstr "odpojené" + +msgid "discussion/interview/debate" +msgstr "" + +msgid "do nothing" +msgstr "nič nerobiť" + +msgid "documentary" +msgstr "" + +msgid "don't descramble, record ecm" +msgstr "" + +msgid "done!" +msgstr "Hotovo!" + +msgid "east" +msgstr "" + +msgid "economics/social advisory" +msgstr "" + +msgid "edit alternatives" +msgstr "Upraviť alternatívy" + +msgid "education/science/factual topics (general)" +msgstr "" + +msgid "empty" +msgstr "prázdne" + +msgid "enable" +msgstr "zapnúť" + +msgid "enable bouquet edit" +msgstr "zapnúť úpravu buketu" + +msgid "enable favourite edit" +msgstr "zapnúť úpravu obľúbených" + +msgid "enable move mode" +msgstr "zapnúť presun" + +msgid "enabled" +msgstr "zapnuté" + +msgid "end alternatives edit" +msgstr "skončiť úpravu alternatív" + +msgid "end bouquet edit" +msgstr "skončiť úpravu buketu" + +msgid "end cut here" +msgstr "strih končí tu" + +msgid "end favourites edit" +msgstr "skončiť úpravu obľúbených" + +msgid "entertainment (10-16 year old)" +msgstr "" + +msgid "entertainment (6-14 year old)" +msgstr "" + +msgid "equal to" +msgstr "rovná sa" + +msgid "equestrian" +msgstr "" + +msgid "exit DVD player or return to file browser" +msgstr "zatvoriť prehrávač DVD alebo sa vrátiť do správcu súborov" + +msgid "exit movielist" +msgstr "" + +msgid "exit network adapter configuration" +msgstr "zatvoriť nastavovanie sieťového adaptéra" + +msgid "exit networkadapter setup menu" +msgstr "zatvoriť menu nastavení sieťových rozhraní" + +msgid "experimental film/video" +msgstr "" + +msgid "false" +msgstr "" + +msgid "fashion" +msgstr "" + +msgid "fileformats (BMP, PNG, JPG, GIF)" +msgstr "formáty súborov (BMP, PNG, JPG, GIF)" + +msgid "filename" +msgstr "názov súboru" + +msgid "film/cinema" +msgstr "" + +msgid "fine arts" +msgstr "" + +msgid "fine-tune your display" +msgstr "jemné nastavenie obrazu" + +msgid "fitness & health" +msgstr "" + +#, fuzzy +msgid "flat alphabetic" +msgstr "triediť podľa abecedy" + +#, fuzzy +msgid "flat alphabetic reverse" +msgstr "triediť podľa abecedy" + +msgid "folk/traditional music" +msgstr "" + +msgid "football/soccer" +msgstr "" + +msgid "foreign countries/expeditions" +msgstr "" + +msgid "forward to the next chapter" +msgstr "preskočiť na ďalšiu kapitolu" + +msgid "free" +msgstr "voľných" + +msgid "from" +msgstr "" + +msgid "further education" +msgstr "" + +msgid "game show/quiz/contest" +msgstr "" + +msgid "gardening" +msgstr "" + +msgid "go to deep standby" +msgstr "prejsť do vypnutia" + +msgid "go to standby" +msgstr "prejsť do pohotovostného režimu" + +msgid "grab this frame as bitmap" +msgstr "Zachytiť toto políčko ako bitmapu" + +msgid "green" +msgstr "zelená" + +msgid "handicraft" +msgstr "" + +msgid "height" +msgstr "" + +msgid "help..." +msgstr "Pomoc..." + +msgid "horizontal" +msgstr "vodorovná" + +msgid "information/education/school program" +msgstr "" + +msgid "init module" +msgstr "inic. modul" + +msgid "init modules" +msgstr "inic. moduly" + +msgid "insert mark here" +msgstr "sem vložiť značku" + +msgid "invalid type" +msgstr "" + +msgid "jazz" +msgstr "" + +msgid "jump back to the previous title" +msgstr "skok vzad na predchádzajúci titul" + +msgid "jump forward to the next title" +msgstr "skok vpred na nasledujúci titul" + +msgid "languages" +msgstr "" + +msgid "leave movie player..." +msgstr "ukončiť prehrávač médií..." + +msgid "left" +msgstr "doľava" + +msgid "left, wrapped" +msgstr "" + +msgid "leisure hobbies (general)" +msgstr "" + +msgid "length" +msgstr "dĺžka" + +msgid "limit ..., aborting !" +msgstr "" + +msgid "list style compact" +msgstr "kompaktný zoznam" + +msgid "list style compact with description" +msgstr "kompaktný zoznam s opisom" + +msgid "list style default" +msgstr "predvolený zoznam" + +msgid "list style single line" +msgstr "jednoriadkový zoznam" + +msgid "literature" +msgstr "" + +msgid "live broadcast" +msgstr "" + +msgid "locked" +msgstr "zachytený" + +msgid "loopthrough to" +msgstr "prepojiť s" + +msgid "magazines/reports/documentary" +msgstr "" + +msgid "manual" +msgstr "ručne" + +msgid "martial sports" +msgstr "" + +msgid "medicine/physiology/psychology" +msgstr "" + +msgid "menu" +msgstr "menu" + +msgid "mins" +msgstr "min" + +msgid "minutes" +msgstr "minút" + +msgid "month" +msgstr "mesiac" + +msgid "motor sport" +msgstr "" + +msgid "motoring" +msgstr "" + +msgid "move down to last entry" +msgstr "nadol na poslednú položku" + +msgid "move down to next entry" +msgstr "nadol na nasledujúcu položku" + +msgid "move up to first entry" +msgstr "nahor na prvú položku" + +msgid "move up to previous entry" +msgstr "nahor na predchádzajúcu položku" + +msgid "movie/drama (general)" +msgstr "" + +msgid "multinorm" +msgstr "viacnormový" + +msgid "music/ballet/dance (general)" +msgstr "" + +msgid "musical/opera" +msgstr "" + +msgid "nature/animals/environment" +msgstr "" + +msgid "never" +msgstr "nikdy" + +msgid "new media" +msgstr "" + +msgid "news magazine" +msgstr "" + +msgid "news/current affairs (general)" +msgstr "" + +msgid "news/weather report" +msgstr "" + +msgid "no" +msgstr "nie" + +msgid "no CAId selected" +msgstr "nie je zvolený CAId" + +msgid "no CI slots found" +msgstr "nenájdené otvory CI" + +msgid "no module found" +msgstr "Nenájdený modul" + +msgid "no storage devices found" +msgstr "" + +msgid "none" +msgstr "žiadne" + +msgid "normal" +msgstr "" + +msgid "not configured" +msgstr "nenakonfigurované" + +msgid "not locked" +msgstr "nie je signál" + +msgid "not supported" +msgstr "nepodporované" + +msgid "not used" +msgstr "nepoužité" + +msgid "nothing connected" +msgstr "nič nie je pripojené" + +msgid "of a DUAL layer medium used." +msgstr "dvojvrstvového média využitých." + +msgid "of a SINGLE layer medium used." +msgstr "jednovrstvového média využitých." + +msgid "off" +msgstr "vyp." + +msgid "offset is" +msgstr "" + +msgid "on" +msgstr "zap." + +msgid "on READ ONLY medium." +msgstr "na nezapisovateľné médium." + +msgid "on end of movie" +msgstr "" + +msgid "once" +msgstr "raz" + +msgid "only from deep standby" +msgstr "" + +msgid "only from standby" +msgstr "" + +msgid "open EPG..." +msgstr "" + +msgid "open Info..." +msgstr "" + +msgid "open nameserver configuration" +msgstr "Otvoriť nastavenia DNS" + +msgid "original" +msgstr "" + +msgid "original language" +msgstr "" + +msgid "pass" +msgstr "prechod" + +msgid "performing arts" +msgstr "" + +msgid "play as picture in picture" +msgstr "" + +msgid "play in mainwindow" +msgstr "" + +msgid "please press OK when ready" +msgstr "Keď budete pripravení, stlačte tlačidlo OK." + +msgid "please wait, loading picture..." +msgstr "Čakajte, nahrávam obraz..." + +msgid "popular culture/traditional arts" +msgstr "" + +msgid "pre-school children's program" +msgstr "" + +msgid "receiver software because updates are available." +msgstr "" + +msgid "record" +msgstr "nahrať" + +msgid "recording..." +msgstr "nahrávam..." + +msgid "red" +msgstr "červená" + +msgid "religion" +msgstr "" + +msgid "remarkable people" +msgstr "" + +msgid "remove after this position" +msgstr "odstrániť za touto pozíciou" + +msgid "remove all alternatives" +msgstr "odstrániť všetky alternatívy" + +msgid "remove all new found flags" +msgstr "odstrániť všetky značky pre novonájdené" + +msgid "remove before this position" +msgstr "odstrániť pred touto pozíciou" + +msgid "remove bookmark" +msgstr "odstrániť záložku" + +msgid "remove directory" +msgstr "odstrániť adresár" + +msgid "remove entry" +msgstr "odstrániť položku" + +msgid "remove from parental protection" +msgstr "odstrániť z rodičovskej zámky" + +msgid "remove new found flag" +msgstr "odstrániť značku novonájdenej stanice" + +msgid "remove selected satellite" +msgstr "odstrániť zvolený satelit" + +msgid "remove this mark" +msgstr "odstrániť túto značku" + +msgid "rename entry" +msgstr "" + +msgid "repeat playlist" +msgstr "zopakovať zoznam prehrávok" + +msgid "repeated" +msgstr "opakované" + +msgid "reverse by date" +msgstr "" + +msgid "rewind to the previous chapter" +msgstr "previnúť na predchádzajúcu kapitolu" + +msgid "right" +msgstr "doprava" + +msgid "right, wrapped" +msgstr "" + +msgid "rock/pop" +msgstr "" + +msgid "romance" +msgstr "" + +msgid "save last directory on exit" +msgstr "pri ukončení uložiť posledný adresár" + +msgid "save playlist on exit" +msgstr "pri ukončení uložiť zoznam prehrávok" + +msgid "scan state" +msgstr "stav vyhľadávania" + +msgid "science fiction/fantasy/horror" +msgstr "" + +msgid "second cable of motorized LNB" +msgstr "druhý kábel motorizovaného LNB" + +msgid "seconds" +msgstr "sekúnd" + +msgid "select" +msgstr "zvoliť" + +msgid "select CAId's" +msgstr "zvoliť CAIdy" + +msgid "select EPG..." +msgstr "" + +msgid "select Info..." +msgstr "" + +msgid "select menu entry" +msgstr "zvoliť položku menu" + +msgid "select movie" +msgstr "zvoliť film" + +msgid "select the movie path" +msgstr "" + +msgid "serious music/classic music" +msgstr "" + +msgid "serious/classical/religious/historical movie/drama" +msgstr "" + +msgid "service PIN" +msgstr "PIN stanice" + +msgid "set as startup service" +msgstr "" + +msgid "setup PIN" +msgstr "PIN nastavení" + +msgid "show DVD main menu" +msgstr "zobraziť hlavné menu DVD" + +msgid "show all tags" +msgstr "" + +msgid "show alternatives" +msgstr "zobraziť alternatívy" + +msgid "show event details" +msgstr "zobraziť údaje o programe" + +msgid "show extended description" +msgstr "" + +msgid "show mediaplayer on mainmenu" +msgstr "" + +msgid "show softwaremanager in setup menu" +msgstr "" + +msgid "show softwaremanager on blue button" +msgstr "" + +msgid "show tag menu" +msgstr "" + +msgid "show transponder info" +msgstr "zobraziť infor. o transpondéri" + +msgid "show/game show (general)" +msgstr "" + +msgid "shuffle" +msgstr "" + +msgid "shut down" +msgstr "vypnúť" + +msgid "simple" +msgstr "jednoduché" + +msgid "skip backward" +msgstr "skok vzad" + +msgid "skip forward" +msgstr "skok vpred" + +msgid "soap/melodram/folkloric" +msgstr "" + +msgid "social/political issues/economics (general)" +msgstr "" + +msgid "social/spiritual science" +msgstr "" + +msgid "sorting of playlists" +msgstr "" + +msgid "special characters" +msgstr "zvláštne znaky" + +msgid "special events" +msgstr "" + +msgid "special format data DVD (HDTV compatible)" +msgstr "" + +msgid "sports (general)" +msgstr "" + +msgid "sports magazine" +msgstr "" + +msgid "standard" +msgstr "štand." + +msgid "start cut here" +msgstr "začiatok strihu tu" + +msgid "start directory" +msgstr "počiatočný adresár" + +msgid "stepsize" +msgstr "" + +msgid "stereo" +msgstr "stereo" + +msgid "stop using as startup service" +msgstr "" + +msgid "switch to bookmarks" +msgstr "prepnúť na záložky" + +msgid "switch to filelist" +msgstr "prepnúť na zoznam súborov" + +msgid "switch to the next angle" +msgstr "prepnúť na nasledujúci uhol kamery" + +msgid "switch to the next audio track" +msgstr "prepnúť na nasledujúcu zvukovú stopu" + +msgid "switch to the next subtitle language" +msgstr "prepnúť na nasledujúci jazyk podtitulkov" + +msgid "talk show" +msgstr "" + +msgid "team sports" +msgstr "" + +msgid "technology/natural science" +msgstr "" + +msgid "template file" +msgstr "šablóna" + +msgid "tennis/squash" +msgstr "" + +msgid "this recording" +msgstr "táto nahrávka" + +msgid "this service is protected by a parental control pin" +msgstr "táto stanica je chránená rodičovskou zámkou" + +msgid "toggle time, chapter, audio, subtitle info" +msgstr "prepnúť informácie o čase, kapitole, zvuku a podtitulkoch" + +msgid "top" +msgstr "" + +msgid "tourism/travel" +msgstr "" + +msgid "true" +msgstr "" + +msgid "unavailable" +msgstr "nedostupné" + +msgid "unconfirmed" +msgstr "nepotvrdené" + +msgid "undefined" +msgstr "" + +msgid "unknown" +msgstr "neznáme" + +msgid "unknown service" +msgstr "neznáma stanica" + +msgid "unpublished" +msgstr "" + +msgid "until standby/restart" +msgstr "do vypnutia alebo reštartu" + +msgid "user defined" +msgstr "užívateľsky definované" + +msgid "variety show" +msgstr "" + +msgid "vertical" +msgstr "zvislá" + +msgid "wait for ci..." +msgstr "čakať na ci..." + +msgid "wait for mmi..." +msgstr "čakať na mmi..." + +msgid "waiting" +msgstr "čakám" + +msgid "water sport" +msgstr "" + +msgid "weekly" +msgstr "týždenne" + +msgid "west" +msgstr "" + +msgid "when PiPzap enabled zap channel down..." +msgstr "" + +msgid "when PiPzap enabled zap channel up..." +msgstr "" + +msgid "white" +msgstr "" + +msgid "whitelist" +msgstr "biela listina" + +msgid "width" +msgstr "" + +msgid "winter sport" +msgstr "" + +msgid "wireless network interface" +msgstr "rozhranie bezdrôtovej siete" + +#, python-format +msgid "with %d error" +msgid_plural "with %d errors" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +msgid "working" +msgstr "pracujem" + +msgid "yellow" +msgstr "žltá" + +msgid "yes" +msgstr "áno" + +msgid "yes (keep feeds)" +msgstr "áno (zachovať feedy)" + +msgid "zap" +msgstr "prepnúť" + +msgid "zap and record" +msgstr "" + +msgid "zapped" +msgstr "prepnuté" + +#~ msgid "AA" +#~ msgstr "AA" + +#~ msgid "AB" +#~ msgstr "AB" + +#, fuzzy +#~ msgid "Activate PiP" +#~ msgstr "Zapnúť obraz v obraze" + +#, fuzzy +#~ msgid "Add/remove timer for current event" +#~ msgstr "pridať nahrávanie (zastaviť po aktuálnom programe)" + +#, fuzzy +#~ msgid "All satellites" +#~ msgstr "Všetky satelity" + +#~ msgid "BA" +#~ msgstr "BA" + +#~ msgid "BB" +#~ msgstr "BB" + +#~ msgid "Behavior of 'pause' when paused" +#~ msgstr "Funkcia tlačidla Pauza počas pauzy" + +#~ msgid "Committed DiSEqC command" +#~ msgstr "Potvrdený príkaz DiSEqC" + +#~ msgid "DiSEqC repeats" +#~ msgstr "Opakovania DiSEqC" + +#~ msgid "No satellite frontend found!!" +#~ msgstr "Nebol nájdený satelitný tuner!" + +#~ msgid "Remove timer" +#~ msgstr "Zmazať časovač" + +#~ msgid "Send DiSEqC" +#~ msgstr "Poslať DiSEqC" + +#, fuzzy +#~ msgid "Switch next channel" +#~ msgstr "Nasledujúca stanica" + +#~ msgid "Uncommitted DiSEqC command" +#~ msgstr "Nepotvrdený príkaz DiSEqC" + +#~ msgid "Zap back to service before satfinder?" +#~ msgstr "Prepnúť späť na stanicu spred hľadania satelitu?" + +#~ msgid "tuner is not supported" +#~ msgstr "tuner nie je podporovaný" diff --git a/po/sl.po b/po/sl.po new file mode 100644 index 0000000..c32e756 --- /dev/null +++ b/po/sl.po @@ -0,0 +1,9590 @@ +msgid "" +msgstr "" +"Project-Id-Version: ENIGMA 2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-07-21 19:08+0200\n" +"PO-Revision-Date: 2012-12-02 18:21+0100\n" +"Last-Translator: Taykun345 <podpora@linux-sprejemniki.info>\n" +"Language-Team: OldSkul <podpora@linux-sprejemniki.info>\n" +"Language: sl_SI\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=4; plural=n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3;\n" +"X-Generator: Poedit 1.5.4\n" + +# +msgid "" +"\n" +"Advanced options and settings." +msgstr "" +"\n" +"Napredne nastavitve." + +# +msgid "" +"\n" +"After pressing OK, please wait!" +msgstr "" +"\n" +"Po pritisku na OK, počakajte!" + +msgid "" +"\n" +"Backup your receiver settings." +msgstr "" +"\n" +"Varnostno kopiranje nastavitev sprejemnika." + +# +msgid "" +"\n" +"Edit the upgrade source address." +msgstr "" +"\n" +"Sprememba vira za nadgradnjo sprejemnika." + +msgid "" +"\n" +"Manage extensions or plugins for your receiver" +msgstr "" +"\n" +"Upravljanje z razširitvami in vtičniki sprejemnika." + +msgid "" +"\n" +"Online update of your receiver software." +msgstr "" +"\n" +"Nadgradnja sprejemnika preko interneta." + +# +msgid "" +"\n" +"Press OK on your remote control to continue." +msgstr "" +"\n" +"Za nadaljevanje pritisnite OK." + +# +msgid "" +"\n" +"Restore your backups by date." +msgstr "" +"\n" +"Obnova varnostne kopije glede na datum." + +msgid "" +"\n" +"Restore your receiver settings." +msgstr "" +"\n" +"Obnovitev nastavitev sprejemnika." + +msgid "" +"\n" +"Restore your receiver with a new firmware." +msgstr "" +"\n" +"Obnovitev sprejemnika z novo sliko." + +# +msgid "" +"\n" +"Scan for local extensions and install them." +msgstr "" +"\n" +"Iskanje in nameščanje lokalnih razširitev." + +# +msgid "" +"\n" +"Select your backup device.\n" +"Current device: " +msgstr "" +"\n" +"Izberite lokacijo za shranitev nastavitev sprejemnika. \n" +"Trenutna lokacija:" + +# +msgid "" +"\n" +"View, install and remove available or installed packages." +msgstr "" +"\n" +"Poglejte, namestite in odstranite pakete, ki so nameščeni oz. so na voljo." + +msgid " (PiP)" +msgstr " (PiP)" + +msgid " (Radio)" +msgstr " (Radio)" + +msgid " (TV)" +msgstr " (TV)" + +msgid " (disabled)" +msgstr "" + +msgid " (higher than any auto)" +msgstr "" + +msgid " (higher than rotor any auto)" +msgstr "" + +msgid " (lower than any auto)" +msgstr "" + +msgid " extensions." +msgstr "razširitve." + +msgid " ms" +msgstr " ms" + +msgid " packages selected." +msgstr " izbranih paketov." + +msgid " updates available." +msgstr " nadgradenj na voljo." + +#. TRANSLATORS: short time representation hour:minute +#, python-format +msgid "%2d:%02d" +msgstr "%2d:%02d" + +#. TRANSLATORS: full time representation hour:minute:seconds +#, python-format +msgid "%2d:%02d:%02d" +msgstr "%2d:%02d:%02d" + +msgid "%A %d %B" +msgstr "%A %d %B" + +#. TRANSLATORS: long date representations dayname daynum monthname in strftime() format! See 'man strftime' +msgid "%A %e %B" +msgstr "%A %e %B" + +#. TRANSLATORS: full date representation dayname daynum monthname year in strftime() format! See 'man strftime' +msgid "%A %e %B %Y" +msgstr "%A %e %B %Y" + +# +msgid "%H:%M" +msgstr "%S:%M" + +#. TRANSLATORS: short date representation short dayname daynum short monthname in strftime() format! See 'man strftime' +msgid "%a %e/%m" +msgstr "%a %e/%m" + +#. TRANSLATORS: long date representation short dayname daynum short monthname hour:minute in strftime() format! See 'man strftime' +msgid "%a %e/%m %-H:%M" +msgstr "%a %e/%m %-H:%M" + +#. TRANSLATORS: Intermediate scanning result, '%d' channel(s) have been found so far +#, python-format +msgid "%d channel found" +msgid_plural "%d channels found" +msgstr[0] "Trenutno je najden %d kanal" +msgstr[1] "Trenutno sta najdena %d kanala" +msgstr[2] "Trenutno so najdeni %d kanali" +msgstr[3] "Trenutno je najdenih %d kanalov" + +#, python-format +msgid "%d file" +msgid_plural "%d files" +msgstr[0] "%d datoteka" +msgstr[1] "%d datoteki" +msgstr[2] "%d datoteke" +msgstr[3] "%d datotek" + +# +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d ura" +msgstr[1] "%d uri" +msgstr[2] "%d ure" +msgstr[3] "%d ure" + +# +#, python-format +msgid "%d job is running in the background!" +msgid_plural "%d jobs are running in the background!" +msgstr[0] "%d opravilo teče v ozadju!" +msgstr[1] "%d opravili tečeta v ozadju!" +msgstr[2] "%d opravila tečejo v ozadju!" +msgstr[3] "%d opravil teče v ozadju!" + +# +#, python-format +msgid "%d min" +msgstr "%d min" + +# +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d minuta" +msgstr[1] "%d minuti" +msgstr[2] "%d minute" +msgstr[3] "%d minut" + +# +#, python-format +msgid "%d minutes" +msgstr "%d minut" + +#, python-format +msgid "%d pixel wide" +msgid_plural "%d pixels wide" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" +msgstr[3] "" + +# +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "%d sekunda" +msgstr[1] "%d sekundi" +msgstr[2] "%d sekunde" +msgstr[3] "%d sekund" + +#, python-format +msgid "%d subdirectory" +msgid_plural "%d subdirectories" +msgstr[0] "%d pod-mapa" +msgstr[1] "%d pod-mapi" +msgstr[2] "%d pod-mape" +msgstr[3] "%d pod-map" + +# +#, python-format +msgid "%d wireless network found!" +msgid_plural "%d wireless networks found!" +msgstr[0] "Najdeno je %d brezzično omrežje!" +msgstr[1] "Najdena sta %d brezzična omrežja!" +msgstr[2] "Najdena so %d brezzična omrežja!" +msgstr[3] "Najdenih je %d brezzičnih omrežij!" + +msgid "%d-%b-%Y %-H:%M" +msgstr "%a %e/%m %-H:%M" + +msgid "%d-%m" +msgstr "%d-%m" + +# +msgid "%d.%B %Y" +msgstr "%d.%B %Y" + +#. TRANSLATORS: VFD hour:minute daynum short monthname in strftime() format! See 'man strftime' +msgid "%k:%M %e/%m" +msgstr "%k:%M %e/%m" + +# +#, python-format +msgid "%s %s free disk space" +msgstr "%s %s praznega prostora na disku" + +# +#, python-format +msgid "%s (%s)\n" +msgstr "%s (%s)\n" + +#. TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. +#, python-format +msgid "%s is no longer used. Should it be deleted?" +msgstr "%s ni več v uporabi. Želite, da izvedem izbris?" + +#, python-format +msgid "%s updated package available" +msgid_plural "%s updated packages available" +msgstr[0] "%s nadgradnja na voljo." +msgstr[1] "%s nadgradnji na voljo." +msgstr[2] "%s nadgradenje na voljo." +msgstr[3] "%s nadgradenj na voljo." + +#, python-format +msgid "%s%d min" +msgstr "" + +#, python-format +msgid "%s/%s: %s" +msgstr "%s/%s: %s" + +# +msgid "(ZAP)" +msgstr "(preklop)" + +# +msgid "(empty)" +msgstr "(prazno)" + +# +msgid "(show optional DVD audio menu)" +msgstr "(prikaz opcijskega DVD avdio menija)" + +# +msgid "* Only available if more than one interface is active." +msgstr "* Na voljo samo kadar je hkrati aktivnih več vmesnikov." + +msgid "/s" +msgstr "" + +# +msgid "0" +msgstr "0" + +# +msgid "1" +msgstr "1" + +# +msgid "1.0" +msgstr "1.0" + +# +msgid "1.1" +msgstr "1.1" + +# +msgid "1.2" +msgstr "1.2" + +# +msgid "12V output" +msgstr "12V izhod" + +# +msgid "13 V" +msgstr "13 V" + +# +msgid "16:10" +msgstr "16:10" + +# +msgid "16:10 Letterbox" +msgstr "16:10 Letterbox" + +# +msgid "16:10 PanScan" +msgstr "16:10 PanScan" + +# +msgid "16:9" +msgstr "16:9" + +# +msgid "16:9 Letterbox" +msgstr "16:9 Letterbox" + +# +msgid "16:9 always" +msgstr "vedno 16:9 " + +# +msgid "18 V" +msgstr "18 V" + +# +msgid "2" +msgstr "2" + +msgid "23.976" +msgstr "" + +msgid "24" +msgstr "" + +msgid "25" +msgstr "" + +msgid "29.97" +msgstr "" + +# +msgid "3" +msgstr "3" + +msgid "30" +msgstr "" + +msgid "3d mode" +msgstr "3D način" + +# +msgid "4" +msgstr "4" + +# +msgid "4:3" +msgstr "4:3" + +# +msgid "4:3 Letterbox" +msgstr "4:3 Letterbox" + +# +msgid "4:3 PanScan" +msgstr "4:3 PanScan" + +# +msgid "5" +msgstr "5" + +# +msgid "6" +msgstr "6" + +# +msgid "7" +msgstr "7" + +# +msgid "8" +msgstr "8" + +# +msgid "9" +msgstr "9" + +#, python-format +msgid ": %s" +msgstr "" + +# +msgid "<Current movielist location>" +msgstr "<Trenutna \"movielist\" lokacija>" + +# +msgid "<Default movie location>" +msgstr "<Privzeta \"movie\" lokacija>" + +# +msgid "<Last timer location>" +msgstr "<Prejšnja \"timer\" lokacija>" + +# +msgid "<unknown>" +msgstr "<nepoznano>" + +# +msgid "??" +msgstr "??" + +# +msgid "A" +msgstr "A" + +# +#, python-format +msgid "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" +msgstr "" +"Nastavitvena datoteka (%s) je bila po namestitvi spremenjena.\n" +"Želite obdržati vašo različico datoteke?" + +# +#, python-format +msgid "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" +msgstr "" +"Datoteka nastavitev (%s) je po namestitvi bila spremenjena.\n" +"Želite obdržati vašo različico datoteke?" + +msgid "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"Zaključen časovnik želi vaš sprejemnik\n" +"poslati v stanje pripravljenosti. Naj to stori sedaj?" + +msgid "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"Zaključen časovnik želi vaš sprejemnik\n" +"poslati v globoko spanje. Naj to stori sedaj?" + +# +msgid "A graphical EPG for all services of an specific bouquet" +msgstr "Grafični EPG za vse kanale izbranega paketa" + +#, python-format +msgid "" +"A record has been started:\n" +"%s" +msgstr "" +"Pričelo se je snemanje kanala:\n" +"%s" + +# +msgid "" +"A recording is currently running.\n" +"What do you want to do?" +msgstr "" +"Trenutno poteka snemanje kanala.\n" +"Kaj želite storiti?" + +# +msgid "A recording is currently running. Please stop the recording before trying to configure the positioner." +msgstr "Trenutno poteka snemanje. Če želite spreminjati nastavitve, ustavite snemanje trenutnega kanala!" + +msgid "A recording is currently running. Please stop the recording before trying to scan." +msgstr "Trenutno v ozadju poteka snemanje. Če želite pričeti s pregledovanjem, ustavite snemanje." + +# +msgid "A recording is currently running. Please stop the recording before trying to start the satfinder." +msgstr "Trenutno poteka snemanje. Če želite iskati satelite, ustavite snemanje trenutnega kanala!" + +# +#, python-format +msgid "A required tool (%s) was not found." +msgstr "Zahtevanega orodja (%s) ni mogoče najti." + +# +msgid "A search for available updates is currently in progress." +msgstr "Trenutno poteka iskanje nadgradenj ..." + +# +msgid "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" +msgstr "" +"Najden je bil še en vmesnik.\n" +"Ga želite izključiti?" + +msgid "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"Časovnik spanja želi vaš sprejemnik\n" +"poslati v stanje pripravljenosti. Naj to stori sedaj?" + +msgid "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"Časovnik spanja želi vaš sprejemnik\n" +"poslati v globoko spanje. Naj to stori sedaj?" + +# +msgid "A small overview of the available icon states and actions." +msgstr "" + +# +msgid "" +"A timer failed to record!\n" +"Disable TV and try again?\n" +msgstr "" +"Časovnik ni uspel zagnati snemanja.\n" +"Poskusim ponovno?\n" + +# +msgid "A/V settings" +msgstr "Zvok/Slika" + +# +msgid "AC3/DTS downmix" +msgstr "Pretvorba AC3/DTS zvoka v stereo" + +# +msgid "Abort" +msgstr "Prekliči" + +# +msgid "About" +msgstr "Informacije o OpenPLi sliki" + +# +msgid "About..." +msgstr "O programu" + +# +msgid "Accesspoint:" +msgstr "Dostopna točka:" + +# +msgid "Action on long powerbutton press" +msgstr "Dogodek pri dolgem držanju tipke za vklop" + +# +msgid "Action on short powerbutton press" +msgstr "Dogodek pri kratkem držanju tipke za vklop" + +# +msgid "Activate Picture in Picture" +msgstr "Aktivacija Slike v Sliki" + +# +msgid "Activate current configuration" +msgstr "Aktiviranje trenutnih nastavitev" + +# +msgid "Activate network settings" +msgstr "Aktiviranje omrežnih nastavitev" + +# +msgid "Activate the configured network settings." +msgstr "Aktiviranje omrežnih nastavitev" + +# +msgid "Adapter settings" +msgstr "Nastavitve mrežnega vmesnika" + +# +msgid "Add" +msgstr "Dodajanje" + +msgid "Add Bookmark" +msgstr "" + +# +msgid "Add a mark" +msgstr "Nov zaznamek" + +# +msgid "Add a nameserver entry" +msgstr "Nov imenski strežnik" + +# +msgid "Add a new title" +msgstr "Nov naslov" + +# +msgid "Add bookmark" +msgstr "Nov zaznamek" + +# +msgid "Add directory to playlist" +msgstr "Dodajanje mape v seznam za predvajanje" + +# +msgid "Add file to playlist" +msgstr "Dodajanje datoteke v seznam za predvajanje" + +# +msgid "Add files to playlist" +msgstr "Dodajanje datoteke v seznam za predvajanje" + +# +msgid "Add more details to the crash log" +msgstr "Bolj podroben dnevnik napak" + +# +msgid "Add provider" +msgstr "Nov ponudnik" + +# +msgid "Add recording (enter recording duration)" +msgstr "Novo snemanje (potreben je vnos dolžine snemanja)" + +# +msgid "Add recording (enter recording endtime)" +msgstr "Novo snemanje (potreben je vnos časa konca snemanja)" + +# +msgid "Add recording (indefinitely)" +msgstr "Novo snemanje (čas je nedoločen)" + +# +msgid "Add recording (stop after current event)" +msgstr "Novo snemanje (snemanje se zaključi po koncu trenutnega dogodka)" + +# +msgid "Add service" +msgstr "Nov kanal" + +# +msgid "Add timer" +msgstr "Nov časovnik" + +# +msgid "Add title" +msgstr "Dodajanje naslova" + +# +msgid "Add to bouquet" +msgstr "Dodajanje v paket" + +# +msgid "Add to favourites" +msgstr "Dodajanje med priljubljene" + +msgid "Add/remove change timer for current event" +msgstr "" + +msgid "Adjust 3D settings" +msgstr "" + +msgid "Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens." +msgstr "" + +msgid "Advanced" +msgstr "" + +# +msgid "Advanced options" +msgstr "Napredne nastavitve" + +# +msgid "Advanced restore" +msgstr "Napredna obnovitev" + +# +msgid "Advanced software" +msgstr "Napredna programska oprema" + +# +msgid "Advanced software plugin" +msgstr "Advanced Software vtičnik" + +# +msgid "Advanced video enhancement setup" +msgstr "Napredne video nastavitve" + +# +msgid "Advanced video setup" +msgstr "Napredne video nastavitve" + +# +msgid "After event" +msgstr "Po dogodku" + +# +msgid "Album" +msgstr "Album" + +msgid "Alignment of events" +msgstr "" + +msgid "Alignment of service names" +msgstr "" + +# +msgid "All" +msgstr "Vse" + +msgid "All ages" +msgstr "" + +msgid "All satellites 1 (USALS)" +msgstr "" + +msgid "All satellites 2 (USALS)" +msgstr "" + +msgid "All satellites 3 (USALS)" +msgstr "" + +msgid "All satellites 4 (USALS)" +msgstr "" + +msgid "Allocate" +msgstr "" + +msgid "Allocate unused memory index" +msgstr "" + +msgid "Allow quit movieplayer with exit" +msgstr "" + +# +msgid "Allow subtitle language to equal audio language" +msgstr "Podnapisi naj se ujemajo z zvočno sledjo" + +# +msgid "Allow subtitles for hearing impaired" +msgstr "Dovoli podnapise za gluhe osebe" + +# +msgid "Alpha" +msgstr "Alpha" + +# +msgid "Alternative" +msgstr "Dodajanje alternativ" + +# +msgid "Alternative numbering mode" +msgstr "Alternativno številčenje kanalov" + +# +msgid "Alternative services tuner priority" +msgstr "Vrstni red kanalnikov" + +msgid "Always ask" +msgstr "Vedno vprašaj" + +msgid "Always hide infobar" +msgstr "" + +# +msgid "An empty filename is illegal." +msgstr "Prazno ime datoteke ni dovoljeno." + +# +msgid "An error occurred while downloading the packetlist. Please try again." +msgstr "Prišlo je do napake pri prenosu seznama paketov. Poskusite ponovno." + +# +msgid "An unknown error occurred!" +msgstr "Pojavila se je neznana napaka!" + +msgid "And will put your receiver in standby over " +msgstr "" + +msgid "Any activity" +msgstr "" + +# +msgid "Arabic" +msgstr "Arabsko" + +msgid "Are you sure to remove this entry?" +msgstr "" + +# +msgid "" +"Are you sure you want to activate this network configuration?\n" +"\n" +msgstr "" +"Ste prepričani da želite aktivirati te omrežne nastavitve?\n" +"\n" + +# +msgid "" +"Are you sure you want to delete\n" +"the following backup:\n" +msgstr "" +"Ste prepričani, da želite izbrisati\n" +"izbrano varnostno kopijo:\n" + +# +msgid "Are you sure you want to exit this wizard?" +msgstr "Ste prepričani, da želite zapreti čarovnik?" + +# +msgid "" +"Are you sure you want to restart your network interfaces?\n" +"\n" +msgstr "" +"Ste prepričani, da želite ponovno zagnati vaše omrežne vmesnike? \n" +"\n" + +# +#, python-format +msgid "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Ste prepričani, da želite obnoviti\n" +"izbrano varnostno kopijo:\n" +"%s\n" +"Po obnovitvi se bo sprejemnik ponovno zagnal!" + +# +msgid "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Ste prepričani, da želite obnoviti izbrano varnostno kopijo?\n" +"Po obnovitvi se bo sprejemnik ponovno zagnal!" + +# +msgid "Artist" +msgstr "Izvajalec" + +msgid "Arts/Culture" +msgstr "" + +# +msgid "Ask user" +msgstr "Vprašajte uporabnika" + +# +msgid "Aspect ratio" +msgstr "Razmerje slike" + +# +msgid "Assigned CAIds:" +msgstr "Dodeljeni CAIdi:" + +# +msgid "Assigned services/provider:" +msgstr "Dodeljeni kanali/ponudniki:" + +# +msgid "At beginning" +msgstr "Na začetku" + +# +msgid "At end" +msgstr "Na koncu" + +# +msgid "Audio" +msgstr "Zvok" + +msgid "Audio PID" +msgstr "Avdio PID" + +# +msgid "Audio language selection 1" +msgstr "Jezik zvočne sledi - 1 " + +msgid "Audio language selection 2" +msgstr "Jezik zvočne sledi - 2" + +# +msgid "Audio language selection 3" +msgstr "Jezik zvočne sledi - 3" + +# +msgid "Audio language selection 4" +msgstr "Jezik zvočne sledi - 4" + +# +msgid "Audio options..." +msgstr "Nastavitve zvoka" + +# +#, python-format +msgid "Audio track (%s) format" +msgstr "Tip zvočnega zapisa (%s)" + +# +#, python-format +msgid "Audio track (%s) language" +msgstr "Jezik zvočnega zapisa (%s)" + +# +msgid "Author: " +msgstr "Avtor:" + +# +msgid "Authoring mode" +msgstr "Odobritveni način" + +# +#. TRANSLATORS: (aspect ratio policy: always try to display as fullscreen, when there is no content (black bars) on left/right, even if this breaks the aspect. +msgid "Auto" +msgstr "Samodejno" + +# +msgid "Auto chapter split every ? minutes (0=never)" +msgstr "Samodejna delitev poglavja vsakih ? minut (0=vedno)" + +# +msgid "Auto flesh" +msgstr "" + +msgid "Auto focus" +msgstr "" + +msgid "Auto focus commencing ..." +msgstr "" + +# +msgid "Auto language selection" +msgstr "Samodejna izbira zvoka in podn." + +# +msgid "Auto scart switching" +msgstr "Samodejno preklapljanje SCART" + +# +msgid "Automatic" +msgstr "Samodejno" + +# +msgid "Automatic scan" +msgstr "Samodejno iskanje " + +msgid "Automatically start timeshift after" +msgstr "" + +msgid "Automatically turn on external subtitles" +msgstr "" + +# +msgid "Available format variables" +msgstr "Razpoložljive oblike" + +# +msgid "B" +msgstr "B" + +# +msgid "BER" +msgstr "BER" + +# +msgid "BER:" +msgstr "BER:" + +# +msgid "Back" +msgstr "Nazaj" + +# +msgid "Background" +msgstr "Ozadje" + +# +msgid "Background color" +msgstr "Barva ozadja" + +msgid "Background delete option" +msgstr "Nastavitev brisanja v ozadju" + +msgid "Background delete speed" +msgstr "Hitrost brisanja v ozadju" + +# +msgid "Backup completed." +msgstr "Varnostno kopiranje je zaključeno." + +# +msgid "Backup failed." +msgstr "Varnostno kopiranje ni uspelo." + +# +msgid "Backup is running..." +msgstr "Poteka varnostno kopiranje ..." + +# +msgid "Backup system settings" +msgstr "Shrani glavne nastavitve" + +# +msgid "Band" +msgstr "Skupina" + +# +msgid "Bandwidth" +msgstr "Prepustnost" + +msgid "Basque" +msgstr "" + +# +msgid "Begin time" +msgstr "Začetek" + +msgid "Behavior of 'pause and ok' when paused" +msgstr "" + +# +msgid "Behavior of 0 key in PiP-mode" +msgstr "Odziv tipke 0 v načinu \"slika v sliki\"" + +# +msgid "Behavior when a movie is started" +msgstr "Odziv ob predvajanju filma" + +# +msgid "Behavior when a movie is stopped" +msgstr "Odziv ob ustavljenem filmu" + +# +msgid "Behavior when a movie reaches the end" +msgstr "Odziv ob koncu filma" + +msgid "Big PiP" +msgstr "" + +# +msgid "Bitrate:" +msgstr "Bitrate:" + +# +msgid "Black screen" +msgstr "Črni zaslon" + +msgid "Black screen till locked" +msgstr "" + +# +msgid "Block noise reduction" +msgstr "" + +# +msgid "Blue boost" +msgstr "" + +# +msgid "Bookmarks" +msgstr "Zaznamki" + +# +msgid "Brightness" +msgstr "Svetlost" + +msgid "Bulgarian" +msgstr "" + +# +msgid "Burn DVD" +msgstr "Posnemi DVD" + +# +#, python-format +msgid "Burn audio track (%s)" +msgstr "Zapiši zvočni zapis (%s)" + +# +msgid "Burn existing image to DVD" +msgstr "Zapis obstoječe slike (image) na DVD" + +# +msgid "Burn to DVD" +msgstr "" + +# +msgid "Bus: " +msgstr "Vodilo:" + +msgid "By default, SNR will be shown in dB (when supported by the tuner). This setting forces SNR to be shown as a percentage instead." +msgstr "V osnovi je SNR vrednost prikazana v dB (če je to podprto). Ta nastavitev pa omogoči, da se SNR vrednost prikazuje v odstotkih." + +# +msgid "C" +msgstr "C" + +# +msgid "C-Band" +msgstr "C-Band" + +msgid "CH" +msgstr "" + +# +msgid "CI assignment" +msgstr "CI dodelitev" + +# +msgid "CVBS" +msgstr "CVBS" + +# +msgid "Cable" +msgstr "Kabel" + +msgid "Cable Scan" +msgstr "Iskanje DVBC kanalov" + +# +msgid "Cache thumbnails" +msgstr "Predpolnjenje sličic (thumbnails)" + +msgid "Calculate" +msgstr "Izračun" + +msgid "Calculate all positions" +msgstr "Izračun vseh položajev" + +msgid "Calculation complete" +msgstr "Izračun je končan" + +msgid "Calibrate" +msgstr "Kalibracija" + +msgid "Can be used for different fps between external subtitles and video." +msgstr "" + +# +msgid "Cancel" +msgstr "Izhod" + +msgid "Cannot determine" +msgstr "Ni možno določiti" + +msgid "Cannot find any signal ..., aborting !" +msgstr "Signala ni možno najti ..., preklicujem!" + +msgid "Cannot move files on a different disk or system to the trash can" +msgstr "Premik datotek na drugo napravo za shranjevanje ni možen!" + +msgid "Cannot move to trash can" +msgstr "Prenos v smetnjak ni možen!" + +# +msgid "Capacity: " +msgstr "Kapaciteta:" + +# +msgid "Card" +msgstr "Kartica" + +msgid "Cascade PiP" +msgstr "" + +# +msgid "Center DVB subtitles" +msgstr "Centrirani DVB podnapisi" + +msgid "Center time-labels and remove date" +msgstr "" + +# +msgid "Change bouquets in quickzap" +msgstr "Menjava paketov pri hitrem preklapljanju" + +# +msgid "Change pin code" +msgstr "Sprememba PIN kode" + +# +msgid "Change recording (duration)" +msgstr "Sprememba dolžine snemanja (v minutah)" + +# +msgid "Change recording (endtime)" +msgstr "Sprememba zaključka snemanja" + +msgid "Change repeat and delay settings?" +msgstr "Sprememba nastavitve ponavljanja in zamika?" + +msgid "Change service PIN" +msgstr "Spremenite PIN kodo kanala" + +msgid "Change service PINs" +msgstr "Spremenite PIN kode kanala" + +msgid "Change setup PIN" +msgstr "Sprememba nastavitve PIN kode" + +# +msgid "Change step size" +msgstr "" + +msgid "Change timer" +msgstr "" + +# +msgid "Changelog" +msgstr "Dnevnik sprememb" + +# +msgid "Channel" +msgstr "Kanal" + +# +msgid "Channel list type" +msgstr "Tip seznama kanalov" + +# +msgid "Channel not in services list" +msgstr "Kanala ni v seznamu programov" + +# +msgid "Channel selection" +msgstr "Seznam kanalov" + +# +msgid "Channel:" +msgstr "Kanal:" + +# +msgid "Channellist menu" +msgstr "Seznam" + +# +msgid "Chap." +msgstr "Pogl." + +# +msgid "Chapter" +msgstr "Poglavje" + +# +msgid "Chapter:" +msgstr "Poglavje:" + +# +msgid "Check" +msgstr "Preveri" + +msgid "Check the internet connection" +msgstr "Preverite vašo internetno povezavo" + +msgid "Check the internet connection again" +msgstr "Ponovno preverite vašo internetno povezavo" + +# +msgid "Checking filesystem..." +msgstr "Poteka preverjanje datotečnega sistema ..." + +msgid "Checking the internet connection" +msgstr "Poteka preverjanje internetne povezave ..." + +#, python-format +msgid "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" +msgstr "" +"Poteka preverjanje kanalnika %d\n" +"DiSEqC vrata %s za %s" + +msgid "Children/Youth" +msgstr "" + +msgid "Choose which tuner to configure." +msgstr "Izberite ustrezen kanalnik za nastavljanje." + +# +msgid "Circular left" +msgstr "Krožno - levo" + +# +msgid "Circular right" +msgstr "Krožno - desno" + +# +msgid "Cleanup" +msgstr "Čiščenje" + +# +msgid "Clear" +msgstr "Izbris" + +# +msgid "Clear before scan" +msgstr "Pred iskanjem naj se izvede izbris obstoječih kanalov" + +msgid "Clear fixed" +msgstr "" + +# +msgid "Clear log" +msgstr "Izbris dnevnika" + +# +msgid "Clear playlist" +msgstr "Počisti seznam predvajanja" + +# +msgid "Close" +msgstr "Izhod" + +msgid "Close PiP on exit" +msgstr "" + +# +msgid "Close title selection" +msgstr "Zapri izbirnik imena" + +msgid "Code rate HP" +msgstr "" + +msgid "Code rate LP" +msgstr "" + +# +msgid "Coderate HP" +msgstr "Kodiranje HP" + +# +msgid "Coderate LP" +msgstr "Kodiranje LP" + +# +msgid "Collection name" +msgstr "Ime zbirke" + +# +msgid "Collection settings" +msgstr "Nastavitve zbirke" + +# +msgid "Color format" +msgstr "Barvni format" + +# +msgid "Command execution..." +msgstr "Poteka izvajanje zahteve ..." + +# +msgid "Command order" +msgstr "Zaporedje ukazov" + +# +msgid "Common Interface" +msgstr "Stanje CI vmesnika" + +# +msgid "Common Interface assignment" +msgstr "Stanje CI vmesnika" + +# +msgid "Communication" +msgstr "Komunikacija" + +# +msgid "Compact flash" +msgstr "Compact Flash" + +# +msgid "Complete" +msgstr "Končano" + +# +msgid "Complex (allows mixing audio tracks and aspects)" +msgstr "Kompleksno (omogoča mešanje audio sledi in pogledov)" + +# +msgid "Composition of the recording filenames" +msgstr "Struktura imena posnetih datotek" + +msgid "Configuration mode" +msgstr "Nastavitveni način: " + +#, python-format +msgid "Configuration mode: %s" +msgstr "Nastavitveni način: %s" + +# +msgid "Configuration..." +msgstr "Nastavitve omrežja" + +msgid "Configure an additional delay to improve external subtitle synchronisation." +msgstr "" + +msgid "Configure an additional delay to improve subtitle synchronisation." +msgstr "" + +msgid "Configure for how long the infobar will remain visible after activation." +msgstr "Nastavitev dolžine vidnosti informacije vrstice, ki se sicer pojavi po pritisku tipke OK med gledanjem televizije." + +msgid "Configure for how many minutes finished events should remain visible in the EPG. Useful when you need information about an event which has just finished, or has been delayed." +msgstr "Nastavitev dolžine vidnosti končanih dogodkov v EPG sistemu. To je uporabno takrat, ko zamudite neko oddajo ali film, a bi vseeno želeli izvedeti določene informacije o tem dogodku za nazaj (npr. angleško ime filma)." + +msgid "Configure how recording filenames are constructed." +msgstr "Nastavitev omogoča, da določite, kako je sestavljeno ime posnetkov." + +msgid "Configure how the fan should operate" +msgstr "" + +msgid "Configure if and how crypto icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how long the latest service in the PiP will be remembered." +msgstr "" + +msgid "Configure if and how service type icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how wide columns will be shown in the channel selection list." +msgstr "" + +msgid "Configure if service picons will be shown in the channel selection list." +msgstr "" + +# +msgid "Configure interface" +msgstr "Nastavi vmesnik" + +# +msgid "Configure nameservers" +msgstr "Nastavite imenske strežnike" + +msgid "Configure on which devices the background delete option should be used." +msgstr "Nastavitev omogoča, da določite, na katerih napravah naj bo uporabljeno možnost \"izbrisa v ozadju\"." + +msgid "Configure remote control type" +msgstr "Nastavitve Dreambox daljinskega upravljalnika" + +msgid "Configure the DiSEqC mode for this LNB." +msgstr "Nastavitev DiSEqC načina za ta LNB." + +# +msgid "Configure the IP address." +msgstr "Nastavitev IP naslova." + +msgid "Configure the aspect ratio of the screen." +msgstr "Nastavitev razmerja slike za zaslon." + +msgid "Configure the behavior of the 'pause and ok' key when movie playback is already paused." +msgstr "" + +# +msgid "Configure the behavior when movie playback is manually stopped." +msgstr "Nastavitev obnašanja pri ročno ustavljeni video datoteki." + +# +msgid "Configure the behavior when movie playback is started." +msgstr "Nastavitev obnašanja, ko se prične predvajanje video datoteke." + +msgid "Configure the behavior when reaching the end of a movie, during movie playback." +msgstr "Določitev obnašanja sprejemnika, ko se video posnetek približuje koncu." + +msgid "Configure the border width of the subtitles. The dark border makes the subtitles easier to read on a light background." +msgstr "Določitev širine obrobe pisave pri podnapisih. Temnejša obroba omogoči lažje branje podnapisov na svetlejši podlagi." + +msgid "Configure the brightness level of the front panel display during standby." +msgstr "Določitev ravni svetlosti sprednjega zaslona sprejemnika, ko se le-ta nahaja v stanju pripravljenosti." + +msgid "Configure the brightness level of the front panel display." +msgstr "Določitev ravni svetlosti sprednjega zaslona sprejemnika." + +msgid "Configure the color of the external subtitles, alternative (normal in white, italic in yellow, bold in cyan, underscore in green), white or yellow." +msgstr "" + +msgid "Configure the color of the teletext subtitles." +msgstr "Določitev barve teletekst podnapisov." + +msgid "Configure the contrast level of the front panel display." +msgstr "Določitev kontrasta sprednjega zaslona sprejemnika." + +msgid "Configure the cursor behaviour in the channel selection list. When opening the channel selection list you can keep on the current service or already select up/down and you are able to revert the B+/B- buttons." +msgstr "" + +msgid "Configure the duration in hours the receiver should go to standby when the receiver is not controlled." +msgstr "" + +msgid "Configure the duration in minutes for the screensaver." +msgstr "" + +msgid "Configure the duration in minutes for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +msgstr "" + +msgid "Configure the duration when the receiver should go to shut down in case the receiver is in standby mode." +msgstr "" + +msgid "Configure the first audio language (highest priority)." +msgstr "Določitev prve zvočne sledi (najvišja prioriteta)." + +msgid "Configure the first subtitle language (highest priority)." +msgstr "Določitev prvega jezika podnapisov (najvišja prioriteta)." + +msgid "Configure the font size of the subtitles." +msgstr "Določitev velikosti pisave podnapisov." + +msgid "Configure the fourth audio language." +msgstr "Določitev četrte zvočne sledi." + +# +msgid "Configure the fourth subtitle language." +msgstr "Nastavitev četrtega jezika podnapisov." + +msgid "Configure the function of a long press on the power button." +msgstr "Določitev funkcije dolgega pritiska tipke za vklop sprejemnika na daljinskem upravljalcu." + +msgid "Configure the function of a short press on the power button." +msgstr "Določitev funkcije kratkega pritiska tipke za vklop sprejemnika na daljinskem upravljalcu." + +msgid "Configure the function of the '0' button do when PIP is active." +msgstr "Določitev funkcije tipke '0', ko je aktivna funkcija Slika v Sliki." + +# +msgid "Configure the gateway." +msgstr "Nastavitev prehoda." + +msgid "Configure the general audio delay of Dolby Digital sound tracks." +msgstr "Določitev zamika zvoka pri Dolby Digital zvočnih sledeh." + +msgid "Configure the general audio delay of stereo sound tracks." +msgstr "Določitev zamika zvoka pri stereo zvočnih sledeh." + +msgid "Configure the hard disk drive to go to standby after the specified idle time." +msgstr "Določitev časa po katerem naj bi trdi disk prešel v stanje pripravljenosti." + +msgid "Configure the horizontal alignment of the subtitles." +msgstr "Določitev horizontalne poravnave podnapisov." + +msgid "Configure the initial fast forward speed. When you press the fast forward button, winding will start at this speed." +msgstr "Določitev začetne hitrosti hitrega predvajanje. Ko pritisnete gumb za hitro predvajanja, se bo le-to pričelo z izbrano hitrostjo." + +msgid "Configure the initial rewind speed. When you press the rewind button, winding will start at this speed." +msgstr "Določitev začetne hitrosti predvajanja nazaj. Ko pritisnite tipko za \"previjanje\", se bo le-to pričelo z izbrano hitrostjo." + +msgid "Configure the latitude of your location." +msgstr "Določitev zemljepisne širine glede na vaš trenutni položaj." + +msgid "Configure the longitude of your location." +msgstr "Določitev zamljepisne širine glede na vaš trenutni položaj." + +msgid "Configure the minimum amount of disk space to be available for recordings. When the amount of space drops below this value, deleted items will be removed from the trash can." +msgstr "Določitev najmanjšega prostora na shranjevalni napravi, ki je namenjena snemanju. Ko se velikost prostora približa določeni meji, pride do samodejnega izbrisa datotek, ki se nahajajo v smetnjaku." + +# +msgid "Configure the nameserver (DNS)." +msgstr "Nastavitev imenskega strežnika." + +# +msgid "Configure the netmask." +msgstr "Nastavitev omrežne maske." + +msgid "Configure the number of days after which items are automaticaly removed from the trash can." +msgstr "Določitev števila dni po katerem se datoteke samodejno izbrišejo iz smetnjaka." + +msgid "Configure the number of days old timers are kept before they are automatically removed from the timer list." +msgstr "Določitev števila dni ko so stari časovniki zadržani. Po tem obdobju se samodejno izbrišejo iz seznama." + +msgid "Configure the offline decoding delay in milliseconds. The configured delay is observed at each control word parity change." +msgstr "Določitev zamika offline dekodiranja v milisekundah. Ta nastavitev ni bistvena za delovanje vašega sprejemnika." + +# +msgid "Configure the possible fast forward speeds." +msgstr "Nastavitev možne hitrosti hitrega predvajanja naprej." + +msgid "Configure the possible rewind speeds." +msgstr "Določitev hitrosti predvajanja nazaj (previjanje)." + +msgid "Configure the primary EPG language." +msgstr "Določitev primarnega jezika za EPG sistem. Priporočena nastavitev je \"Prazno\"." + +msgid "Configure the refresh rate of the screen." +msgstr "Določitev hitrosti osveževanja zaslona. Evropa uporablja PAL sistem, kar pomeni, da je pravilna nastavitev 50Hz." + +msgid "Configure the screen resolution in PC output mode." +msgstr "Določitev ločljivosti slike kadar se uporablja povezava z računalnikom." + +msgid "Configure the second audio language." +msgstr "Določitev druge zvočne sledi. Prva sled ima prednost pred drugo." + +# +msgid "Configure the second subtitle language." +msgstr "Nastavitev drugega jezika podnapisov." + +msgid "Configure the secondary EPG language." +msgstr "Določitev sekundarnega jezika za EPG sistem. Priporočena nastavitev je \"Prazno\"." + +msgid "Configure the sharpness of the video scaling." +msgstr "Določitev ostrine slike. Osnovna nastavitev zadostuje za večino potreb." + +msgid "Configure the skip time interval for the '1'/'3' buttons." +msgstr "Določitev dolžine preskoka če se uporabi tipke 1 ali 3." + +msgid "Configure the skip time interval for the '4'/'6' buttons." +msgstr "Določitev dolžine preskoka če se uporabi tipke 4 ali 6." + +msgid "Configure the skip time interval for the '7'/'9' buttons." +msgstr "Določitev dolžine preskoka če se uporabi tipke 7 ali 9." + +# +msgid "Configure the slow motion speeds." +msgstr "Nastavitev hitrosti počasnega predvajanja." + +msgid "Configure the source of the frontend data as shown on the infobars. 'Settings' is as stored on the settings. 'Tuner' is as reported by the tuner." +msgstr "" + +msgid "Configure the speed of the background deletion process. Lower speed will consume less hard disk drive performance." +msgstr "Določitev hitrosti funkcije \"Brisanje v ozadju\". Nižja hitrost omogoči večjo zmogljivost shranjevalne naprave (npr. trdi disk)." + +msgid "Configure the speed of the fan" +msgstr "" + +msgid "Configure the subtitle delay when timing information is not available." +msgstr "Določitev zamika podnapisov v primeru, da manjkajo potrebne informacije za točnost pojavljanja podnapisov." + +msgid "Configure the third audio language." +msgstr "Določitev tretje zvočne sledi. Prva in druga zvočna sled imata prednost pred tretjo." + +# +msgid "Configure the third subtitle language." +msgstr "Nastavitev tretjega jezika podnapisov." + +msgid "Configure the transparency of the OSD." +msgstr "Določitev prosojnosti menijev oz. uporabniškega vmesnika." + +msgid "Configure the transparency of the black background of graphical DVB subtitles." +msgstr "Določitev prosojnosti črne podlage pri DVB podnapisih." + +msgid "Configure the tuner mode." +msgstr "Nastavitev načina, v katerem se naj nahaja kanalnik." + +msgid "Configure the type of status indication icons shown in the movielist." +msgstr "Doložitev tipa statusne ikone, ki se sicer prikazuje v seznamu (video) datotek." + +msgid "Configure the vertical position of the subtitles, measured from the bottom of the screen." +msgstr "Določitev navpičnega položaja podnapisov, merjeno od spodnjega dela zaslona." + +msgid "Configure the video output mode (or resolution)." +msgstr "Določitev ločljivosti. Če imate FULL HD televizijo uporabite 1080i, če pa imate HD Ready televizijo uporabite 720p." + +msgid "Configure the way in which the receiver changes channels." +msgstr "Določitev načina preklopa med posameznimi kanali." + +msgid "Configure where completed timers show up in the timer list." +msgstr "Določitev položaja končanih časovnikov v seznamu le-teh." + +msgid "Configure whether (and for how long) a second infobar will be shown when OK is pressed twice. The second infobar contains additional information about the current channel." +msgstr "Določitev prikaza razširjene informacijske vrstice pri drugem pritisku na tipko OK. Prikazane informacije se razlikujejo od uporabljene preobleke. Nekatere preobleke razširjene info. vrstice ne podpirajo!" + +msgid "Configure whether multi channel sound tracks should be downmixed to stereo." +msgstr "Nastavitev omogoča pretvorbo večkanalnega tvoka v stereo zvok." + +msgid "Configure whether or not an icon should be shown when your motorized dish is moving." +msgstr "Določitev prikaza simbolične slike pri premikanju motoriziranega satelitskega krožnika." + +msgid "Configure which access level to use for the configuration menu. Expert level gives access to all items." +msgstr "Določitev ravni prikaza različnih nastavitev v nastavitvenih menijih. Raven \"Expert\" (priporočena)omogoča, da dostopate do vseh nastavitev." + +msgid "Configure which color format should be used on the SCART output." +msgstr "Določitev barvnega formata pri uporabi SCART izhoda." + +msgid "Configure which tuner for recordings will be preferred, when more than one tuner is available." +msgstr "" + +msgid "Configure which tuner type will be preferred, when the same service is available on different types of tuners." +msgstr "Kateri kanalnik naj ima prednost pred drugimi kanalniki (če jih je več). To velja takrat, ko je enak kanal dostopen na več dazličnih kanalnikih." + +msgid "Configure which tuner will be preferred, when more than one tuner is available. If set to 'auto' the system will give priority to the tuner having the lowest number of channels/satellites." +msgstr "Kateri kanalnik naj ima prednost pred drugimi kanalniki. Če je uporabljena vrednost \"samodejno\", potem bo sistem dodelil prednost tistemu kanalniku, na katerega je priklopljeno najmanj satelitov oz. ima najmanj kanalov." + +# +msgid "Configure your internal LAN" +msgstr "Nastavite LAN omrežje" + +# +msgid "Configure your network again" +msgstr "Ponovno nastavite omrežje" + +msgid "Configure your network settings, and press OK to start the scan" +msgstr "Nastavite mrežne nastavitve in za pričetek pregledovanja, pritisnite tipko OK." + +# +msgid "Configure your wireless LAN again" +msgstr "Ponovno nastavite brezzični vmesnik" + +msgid "Configures which video output connector will be used." +msgstr "Nastavitev omogoča izbiro željenega video izhoda. V večini primerov je v uporabi HDMI izhod, zatorej je potrebno izbrati \"HDMI\"." + +# +msgid "Configuring" +msgstr "Poteka nastavljanje ..." + +# +msgid "Conflicting timer" +msgstr "Konflikt časovnikov" + +# +msgid "Connect" +msgstr "Poveži se" + +# +msgid "Connect to a wireless network" +msgstr "Povezava z brezzičnim omrežjem" + +msgid "Connected satellites" +msgstr "" + +# +msgid "Connected to" +msgstr "Povezan s" + +# +msgid "Connected!" +msgstr "Povezan!" + +# +msgid "Constellation" +msgstr "Konstalacija" + +# +msgid "Content does not fit on DVD!" +msgstr "Vsebina se ne prilega na DVD!" + +msgid "Continue" +msgstr "Naprej" + +# +msgid "Continue in background" +msgstr "Nadaljuj v ozadju" + +# +msgid "Continue playback" +msgstr "Nadaljevanje predvajanja" + +# +msgid "Continue playing" +msgstr "Nadaljuj predvajanje" + +msgid "Continues play (loop)" +msgstr "" + +# +msgid "Contrast" +msgstr "Kontrast" + +# +msgid "Convert ext3 filesystem to ext4" +msgstr "Pretvorba ext3 datot. sistem v ext4" + +msgid "Convert ext3 to ext4" +msgstr "Pretvorba ext3 v ext4" + +msgid "Converting ext3 to ext4..." +msgstr "Poteka pretvorba ext3 v ext4 ..." + +# +msgid "Copy" +msgstr "Kopiranje" + +# +msgid "Could not connect to receiver .NFI image feed server:" +msgstr "Povezava z .NFI izvornim strežnikom ni uspela:" + +msgid "Could not find installed channel list." +msgstr "" + +# +msgid "Could not load medium! No disc inserted?" +msgstr "Medija ni mogoče prebrati! Je v pogon vstavljen ustrezen medij?" + +# +msgid "Could not open Picture in Picture" +msgstr "Ne morem odpreti Slike v Sliki" + +# +#, python-format +msgid "Could not record due to conflicting timer %s" +msgstr "Snemanje ni mogoče pričeti zaradi konflikta s časovnikom %s" + +#, python-format +msgid "Could not record due to invalid service %s" +msgstr "Snemanje ni možno zaradi napake kanala %s" + +# +msgid "Create DVD-ISO" +msgstr "Kreiraj DVD-ISO" + +# +msgid "Create more detailed crash log" +msgstr "Bolj podroben dnevnik napak" + +# +#, python-format +msgid "Creating directory %s failed." +msgstr "Ustvarjanje mape %s ni uspelo." + +msgid "Creating filesystem" +msgstr "Izdelava datotečnega sistema ..." + +msgid "Creating partition" +msgstr "Izdelava particije ..." + +# +msgid "Croatian" +msgstr "Hrvaško" + +msgid "Current CEC address" +msgstr "" + +msgid "Current device: " +msgstr "Trenutna naprava:" + +msgid "Current event EPG" +msgstr "" + +#, python-format +msgid "Current mode: %s \n" +msgstr "" + +# +msgid "Current settings:" +msgstr "Trenutne nastavitve:" + +# +msgid "Current transponder" +msgstr "Trenutni transponder" + +# +msgid "Current value: " +msgstr "Trenutna vrednost:" + +# +msgid "Current version:" +msgstr "Trenutna različica:" + +msgid "Currently installed image" +msgstr "Trenutna nameščena slika" + +msgid "Currently the commit log cannot be retrieved - please try later again" +msgstr "" + +# +msgid "Custom skip time for '1'/'3' buttons" +msgstr "Časovni preskok za tipke '1'/'3' (v sekundah)" + +# +msgid "Custom skip time for '4'/'6' buttons" +msgstr "Časovni preskok za tipke '4'/'6' (v sekundah)" + +# +msgid "Custom skip time for '7'/'9' buttons" +msgstr "Časovni preskok za tipke '7'/'9' (v sekundah)" + +# +msgid "Customize" +msgstr "Ostale nastavitve" + +msgid "Customize channel list cursor behavior" +msgstr "" + +# +msgid "Cut" +msgstr "Izreži" + +# +msgid "Cutlist editor..." +msgstr "Cutlist urejevalnik" + +# +msgid "Czech" +msgstr "Češko" + +# +msgid "D" +msgstr "D" + +# +msgid "DHCP" +msgstr "DHCP" + +# +msgid "DMM advanced" +msgstr "DMM napredno" + +msgid "DMM normal" +msgstr "DMM normalno" + +# +msgid "DUAL LAYER DVD" +msgstr "Dvo-slojni DVD" + +# +msgid "DVB subtitle black transparency" +msgstr "Prozornost podlage DVB podnapisov" + +msgid "DVB-C" +msgstr "DVB-C" + +msgid "DVB-C ANNEX C" +msgstr "DVB-C ANNEX C" + +msgid "DVB-S" +msgstr "DVB-S" + +msgid "DVB-S2" +msgstr "DVB-S2" + +msgid "DVB-T" +msgstr "DVB-T" + +msgid "DVB-T2" +msgstr "DVB-T2" + +msgid "DVD data format" +msgstr "" + +# +msgid "DVD file browser" +msgstr "Raziskovalec" + +# +msgid "DVD media toolbox" +msgstr "DVD medijska orodja" + +# +msgid "DVD player" +msgstr "DVD predvajalnik" + +# +msgid "DVD titlelist" +msgstr "DVD seznam naslovov" + +# +msgid "Danish" +msgstr "Dansko" + +# +msgid "Date" +msgstr "Datum" + +# +msgid "Date/time input" +msgstr "Vnos Časa/Datuma" + +# +msgid "Deep standby" +msgstr "Globoko spanje" + +# +msgid "Default" +msgstr "Privzeto" + +# +msgid "Default movie location" +msgstr "Privzeta \"movie\" lokacija" + +# +msgid "Default settings" +msgstr "Privzete nastavitve" + +msgid "Delay before key repeat starts:" +msgstr "" + +msgid "Delay for external subtitles" +msgstr "" + +# +msgid "Delete" +msgstr "Izbris" + +# +msgid "Delete entry" +msgstr "Izbris vnosa" + +# +msgid "Delete failed!" +msgstr "Brisanje neuspešno!" + +# +msgid "Delete file" +msgstr "izbris datoteke" + +# +msgid "Delete playlist entry" +msgstr "Izbris vnosov v seznamu predvajanja" + +# +msgid "Delete saved playlist" +msgstr "Izbris shranjenega seznama predvajanja" + +msgid "Delete timer" +msgstr "" + +# +msgid "Delete..." +msgstr "Izbris" + +msgid "Deleted" +msgstr "Izbrisano" + +msgid "Deleted items" +msgstr "Izbrisani" + +msgid "Depth" +msgstr "Globina" + +# +msgid "Descramble http streams" +msgstr "Dekodiranje HTTP tokov" + +# +msgid "Description" +msgstr "Opis" + +# +msgid "Deselect" +msgstr "Preklic" + +msgid "Details for plugin: " +msgstr "Dodatne informacije:" + +# +msgid "Detected HDD:" +msgstr "Zaznani pogoni:" + +# +msgid "Detected NIMs:" +msgstr "Zaznani kanalniki:" + +msgid "Devicename:" +msgstr "Ime naprave:" + +msgid "Devide" +msgstr "" + +# +msgid "DiSEqC" +msgstr "DiSEqC" + +msgid "DiSEqC 1.0 command" +msgstr "" + +msgid "DiSEqC 1.1 command" +msgstr "" + +msgid "DiSEqC 1.1 repeats" +msgstr "" + +# +msgid "DiSEqC A/B" +msgstr "DiSEqC A/B" + +# +msgid "DiSEqC A/B/C/D" +msgstr "DiSEqC A/B/C/D" + +# +msgid "DiSEqC mode" +msgstr "DiSEqC način" + +# +#, python-format +msgid "DiSEqC port %s: %s" +msgstr "DiSEqC vrata %s: %s" + +# +msgid "DiSEqC-tester settings" +msgstr "DiSEqC-tester nastavitve" + +# +msgid "Dialing:" +msgstr "" + +# +msgid "Digital contour removal" +msgstr "" + +# +msgid "Direct playback of linked titles without menu" +msgstr "Neposredno predvajanje povezanih naslovov" + +msgid "Directory" +msgstr "Mapa" + +# +#, python-format +msgid "Directory %s does not exist." +msgstr "Mapa %s ne obstaja." + +#, python-format +msgid "Directory %s nonexistent." +msgstr "" + +# +msgid "Directory browser" +msgstr "Raziskovalec" + +#, python-format +msgid "Directory contains %d file(s) and %d sub-directories.\n" +msgstr "Mapa vsebuje %d datotek in %d pod-map.\n" + +#, python-format +msgid "Directory contains %s and %s." +msgstr "" + +# +msgid "Disable" +msgstr "Izklop" + +# +msgid "Disable Picture in Picture" +msgstr "Izklop Slike v Sliki" + +# +msgid "Disable background scanning" +msgstr "Izklop pregledovanja (skeniranja) v ozadju" + +msgid "Disable timer" +msgstr "" + +# +msgid "Disabled" +msgstr "Onemogočeno" + +# +msgid "Disconnect" +msgstr "Prekini" + +# +msgid "Disk space to reserve for recordings (in GB)" +msgstr "Prostor na disku rezerviran za snemanje (v GB)" + +# +msgid "Display 16:9 content as" +msgstr "Prikaz 16:9 razmerj slike kot" + +# +msgid "Display 4:3 content as" +msgstr "Prikaz 4:3 razmerja slike" + +# +msgid "Display >16:9 content as" +msgstr "Prikaz >16:9 razmerja slike" + +msgid "Display and userinterface" +msgstr "" + +msgid "Display message before playing next movie" +msgstr "Prikaz obvestila pred začetkom predvajanja video datoteke" + +# +msgid "Display setup" +msgstr "Zaslon sprejemnika" + +# +msgid "Do not change" +msgstr "Ne spreminjaj" + +# +msgid "Do not record" +msgstr "Ne snemaj" + +# +msgid "Do nothing" +msgstr "Izhod" + +# +msgid "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" +msgstr "" +"Res želite preveriti datotečni sistem?\n" +"Opravilo lahko traja zelo dolgo!" + +msgid "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" +msgstr "" +"Res želite pretvoriti datotečni sistem?\n" +"Pot nazaj ne obstaja!" + +# +#, python-format +msgid "Do you really want to delete %s?" +msgstr "Res želite odstraniti: %s?" + +# +#, python-format +msgid "" +"Do you really want to download\n" +"the plugin \"%s\"?" +msgstr "" +"Res želite namestiti\n" +"vtičnik \"%s\"?" + +# +msgid "Do you really want to exit?" +msgstr "Ali res želite odditi?" + +msgid "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" +msgstr "" +"Želite pripraviti novo napravo?\n" +"Vsi podatki na napravi bodo izbrisani!" + +# +#, python-format +msgid "" +"Do you really want to remove\n" +"the plugin \"%s\"?" +msgstr "" +"Res želite odstraniti\n" +"vtičnik \"%s\"?" + +# +#, python-format +msgid "Do you really want to remove directory %s from the disk?" +msgstr "Ali res želite odstraniti mapo: %s iz trdega diska?" + +# +#, python-format +msgid "Do you really want to remove your bookmark of %s?" +msgstr "Ali res želite odstraniti zaznamek: %s?" + +msgid "Do you want this?" +msgstr "" + +# +msgid "Do you want to burn this collection to DVD medium?" +msgstr "Ali želite zapisati izbrano zbirko na DVD medij?" + +# +msgid "Do you want to do a service scan?" +msgstr "Želite iskati kanale?" + +# +msgid "Do you want to do another manual service scan?" +msgstr "Želite ponovno ročno iskati kanale?" + +#, python-format +msgid "Do you want to download the image to %s ?" +msgstr "Želite presneti sliko k %s?" + +# +msgid "Do you want to install a channel list?" +msgstr "Želite namestiti seznam kanalov?" + +# +msgid "Do you want to install the package:\n" +msgstr "Želite namestiti ta paket?:\n" + +# +msgid "Do you want to play DVD in drive?" +msgstr "Ali želite predvajati DVD?" + +# +msgid "Do you want to preview this DVD before burning?" +msgstr "Ali želite predogled zbirke pred zapisom na DVD?" + +msgid "Do you want to reboot your receiver?" +msgstr "Želite izvesti ponovni zagon sprejemnika?" + +# +msgid "Do you want to remove the package:\n" +msgstr "Želite odstraniti ta paket:\n" + +# +msgid "Do you want to restore your settings?" +msgstr "Želite povrniti vaše nastavitve?" + +# +msgid "Do you want to resume this playback?" +msgstr "Želite nadaljevati s predvajanjem?" + +# +#, python-format +msgid "Do you want to update your receiver to %s?" +msgstr "Želite nadgraditi vaš sprejemnik na verzijo %s?" + +msgid "Do you want to update your receiver?" +msgstr "Želite posodobiti vaš sprejemnik na zadnjo verzijo OpenPLi slike?" + +# +msgid "Do you want to upgrade the package:\n" +msgstr "Želite nadgraditi paket:\n" + +# +msgid "Don't stop current event but disable coming events" +msgstr "Ne ustavi trenutnega dogodka. Onemogoči pa prihodnje dogodke" + +# +#, python-format +msgid "Done - Installed, upgraded or removed %d package (%s)" +msgid_plural "Done - Installed, upgraded or removed %d packages (%s)" +msgstr[0] "Končano! Nameščen, nadgrajen ali izbrisan je bil %d paket (%s)" +msgstr[1] "Končano! Nameščena, nadgrajena ali izbrisana sta bila %d paketa (%s)" +msgstr[2] "Končano! Nameščeni, nadgrajeni ali izbrisani so bili %d paketi (%s)" +msgstr[3] "Končano! Nameščenih, nadgrajenih ali izbrisanih je bilo %d paketov (%s)" + +# +msgid "Download" +msgstr "Prenesi" + +#, python-format +msgid "Download %s from server" +msgstr "Prenesi %s iz serverja" + +# +msgid "Download .NFI-files for USB-flasher" +msgstr "Prenesi .NFI-datoteke za programsko nadgradnjo preko USB" + +# +msgid "Download plugins" +msgstr "Prenos" + +# +msgid "Downloadable new plugins" +msgstr "Seznam vtičnikov" + +# +msgid "Downloadable plugins" +msgstr "Razpoložljivi vtičniki" + +# +msgid "Downloading" +msgstr "Nalaganje ..." + +# +msgid "Downloading plugin information. Please wait..." +msgstr "Poteka pridobivanje seznama vtičnikov ... Prosim počakajte!" + +# +msgid "Dutch" +msgstr "Nizozemsko" + +# +msgid "Dynamic contrast" +msgstr "Dinamični kontrast" + +# +msgid "E" +msgstr "E" + +msgid "EPG" +msgstr "EPG" + +# +msgid "EPG language selection 1" +msgstr "Primarni jezik za EPG sistem" + +# +msgid "EPG language selection 2" +msgstr "Sekundarni jezik za EPG sistem" + +# +msgid "EPG selection" +msgstr "EPG izbira" + +msgid "EPG settings" +msgstr "Elektronski programski vodič" + +# +#, python-format +msgid "ERROR - failed to scan (%s)!" +msgstr "NAPAKA - neuspešno iskanje (%s)!" + +# +msgid "East" +msgstr "Vzhod" + +msgid "East limit set" +msgstr "Meja na vzhodu" + +# +msgid "Edit" +msgstr "Spremeni" + +# +msgid "Edit DNS" +msgstr "Urejanje DNS" + +# +msgid "Edit bouquets list" +msgstr "Urejanje paketov priljubljenih kanalov" + +# +msgid "Edit chapters of current title" +msgstr "Urejanje poglavja trenutnega naslova" + +# +msgid "Edit services list" +msgstr "Urejanje seznam kanalov" + +# +msgid "Edit settings" +msgstr "Spreminjanje nastavitev" + +# +msgid "Edit the nameserver configuration of your receiver.\n" +msgstr "Spremenite nastavitve imenskega strežnika sprejemnika.\n" + +msgid "Edit the network configuration of your receiver.\n" +msgstr "Spremenitve mrežne nastavitve sprejemnika.\n" + +msgid "Edit timer" +msgstr "" + +# +msgid "Edit title" +msgstr "Spremenite naslov" + +# +msgid "Edit upgrade source url." +msgstr "Uredite povezavo vira za nadgradnjo." + +msgid "Education/Science/..." +msgstr "" + +# +msgid "Electronic Program Guide" +msgstr "Elektronski spored programov (EPG)" + +# +msgid "Enable" +msgstr "omogoči" + +msgid "Enable 'neutrino' style channel select controlling" +msgstr "" + +msgid "Enable 'neutrino' style zap controlling" +msgstr "" + +# +msgid "Enable 5V for active antenna" +msgstr "Omogoči 5V za potrebe aktivne antene" + +# +msgid "Enable EIT EPG" +msgstr "EIT EPG sistem" + +# +msgid "Enable MHW EPG" +msgstr "MHW EPG sistem" + +# +msgid "Enable Netmed EPG" +msgstr "Netmed EPG sistem" + +msgid "Enable OK for channel selection" +msgstr "" + +# +msgid "Enable ViaSat EPG" +msgstr "ViaSat EPG sistem" + +msgid "Enable Virgin EPG" +msgstr "" + +msgid "Enable Wake On LAN" +msgstr "" + +msgid "Enable auto fast scan" +msgstr "" + +msgid "Enable bouquet selection in multi-EPG" +msgstr "Vklop izbire seznamov priljubljenih kanalov v Multi-EPG načinu" + +# +msgid "Enable freesat EPG" +msgstr "Freesat EPG sistem" + +# +msgid "Enable multiple bouquets" +msgstr "Omogoči sezname priljubljenih kanalov" + +# +msgid "Enable parental control" +msgstr "Vključitev starševskega nadzora" + +# +msgid "Enable teletext caching" +msgstr "Predpolnjenje teleteksta" + +msgid "Enable zapping with CH+/-, B+/-, P+/-" +msgstr "" + +# +msgid "Enabled" +msgstr "Omogočeno" + +# +msgid "Encrypted: " +msgstr "Kodirano: " + +# +msgid "Encryption" +msgstr "Šifriranje" + +# +msgid "Encryption key" +msgstr "Šifrirni ključ" + +# +msgid "Encryption key type" +msgstr "Vrsta ključa za šifriranje" + +# +msgid "Encryption:" +msgstr "Kodiranje:" + +# +msgid "End time" +msgstr "Zaključek" + +msgid "End time to ignore inactivity sleeptimer" +msgstr "" + +msgid "End time to ignore shutdown in standby" +msgstr "" + +# +msgid "English" +msgstr "Angleško" + +msgid "Enigma2 skin selector" +msgstr "Izbirnik Enigma2 preoblek" + +# +msgid "Enter main menu..." +msgstr "Vstop v glavni meni" + +# +msgid "Enter pin code" +msgstr "Vnesite PIN kodo" + +# +msgid "Enter the service pin" +msgstr "Vnesite PIN kodo za kanale" + +msgid "Equal to" +msgstr "" + +# +msgid "Error" +msgstr "Napaka" + +msgid "Error code" +msgstr "Koda napake" + +# +msgid "Error executing plugin" +msgstr "Napaka pri zagonu vtičnika" + +# +#, python-format +msgid "" +"Error: %s\n" +"Retry?" +msgstr "" +"Napaka: %s\n" +"Ponovno?" + +# +msgid "Estonian" +msgstr "Estonsko" + +msgid "Ethernet network interface" +msgstr "Omrežni vmesnik" + +msgid "Event font size (relative to skin size)" +msgstr "Velikost pisave dogodka (v odvisnosti od velikosti preobleke)" + +# +msgid "Event view" +msgstr "Pregled dogodkov" + +# +msgid "Event view menu" +msgstr "Dodatne možnosti" + +msgid "Everywhere" +msgstr "Povsod" + +# +msgid "Exceeds dual layer medium!" +msgstr "" + +# +msgid "Execution finished!!" +msgstr "Izvajanje zaključeno!!" + +# +msgid "Execution progress:" +msgstr "Potek izvajanja:" + +# +msgid "Exif" +msgstr "Exif" + +# +msgid "Exit" +msgstr "Izhod" + +msgid "Exit EPG" +msgstr "Izhod iz EPG" + +# +msgid "Exit editor" +msgstr "Izhod iz urejevalnika" + +msgid "Exit input device selection." +msgstr "Izhod iz izbirnika vhodne naprave" + +msgid "Exit media player?" +msgstr "" + +# +msgid "Exit mediaplayer" +msgstr "Izhod iz predvajalnika vsebin" + +# +msgid "Exit movie list" +msgstr "Izhod iz seznama datotek" + +# +msgid "Exit movie player?" +msgstr "Izhod iz predvajalnika vsebin" + +# +msgid "Exit nameserver configuration" +msgstr "Izhod iz nastavitev imenskega strežnika" + +# +msgid "Exit network interface list" +msgstr "Izhod iz seznama mrežnih vmesnikov" + +# +msgid "Exit network wizard" +msgstr "Izhod iz omrežnega čarovnika" + +# +msgid "Exit the wizard" +msgstr "Izhod iz čarovnika" + +# +msgid "Expert" +msgstr "Napredno" + +msgid "Extend sleeptimer 15 minutes" +msgstr "" + +# +msgid "Extended Software" +msgstr "Razširjena programska oprema" + +# +msgid "Extended Software Plugin" +msgstr "Vtičnik Extended Software" + +# +msgid "Extended network setup plugin..." +msgstr "Vtičnik Extended Networksetup" + +# +msgid "Extended setup..." +msgstr "Napredne nastavitve" + +# +msgid "Extensions" +msgstr "Dodatki" + +# +msgid "Extensions management" +msgstr "Upravljanje vtičnikov" + +msgid "External PiP" +msgstr "" + +msgid "External subtitle color" +msgstr "" + +msgid "Extra motor options" +msgstr "" + +# +msgid "FEC" +msgstr "FEC" + +msgid "FTA" +msgstr "FTA" + +# +msgid "Factory reset" +msgstr "Ponastavitev nastavitev" + +# +msgid "Failed" +msgstr "Ni uspelo" + +msgid "Failed to write /tmp/positionersetup.log: " +msgstr "" + +# +#, python-format +msgid "Fan %d" +msgstr "Ventilator %d" + +# +#, python-format +msgid "Fan %d PWM" +msgstr "Ventilator %d PWM" + +# +#, python-format +msgid "Fan %d voltage" +msgstr "Ventilator %d napetost" + +msgid "Fan operation" +msgstr "" + +msgid "Fan speed" +msgstr "" + +# +msgid "Fast" +msgstr "Hitro" + +# +msgid "Fast DiSEqC" +msgstr "Hiter DiSEqC" + +# +msgid "Fast Scan" +msgstr "Hitro iskanje" + +# +msgid "Fast epoch" +msgstr "Hiter del" + +# +msgid "Fast forward speeds" +msgstr "Hitrosti hitrega predvajanja naprej" + +# +msgid "Favourites" +msgstr "Priljubljene" + +msgid "File appears to be busy.\n" +msgstr "Datoteka je v uporabi.\n" + +# +msgid "Filesystem check" +msgstr "Pregled datotečnega sistema" + +msgid "Final position at" +msgstr "" + +msgid "Final position at index" +msgstr "" + +msgid "Fine movement" +msgstr "Natančni premiki" + +# +msgid "Finetune" +msgstr "Podrobne nastavitve" + +# +msgid "Finished" +msgstr "Zaključeno" + +# +msgid "Finished configuring your network" +msgstr "Nastavljanje omrežja je zaključeno!" + +msgid "Finished restarting your network" +msgstr "Ponovni zagon omrežja je opravljen" + +# +msgid "Finnish" +msgstr "Finsko" + +msgid "Fixed" +msgstr "Popravljeno" + +# +msgid "Flash" +msgstr "Nadgradi" + +# +msgid "Flashing failed" +msgstr "Nadgradnja ni uspela" + +# +msgid "Following tasks will be done after you press OK!" +msgstr "Sledeče naloge bodo opravljene, ko pritisnete OK!" + +# +msgid "Format" +msgstr "Formatiraj" + +msgid "Forward volume keys" +msgstr "" + +# +msgid "Frame size in full view" +msgstr "Velikost okvirja v polnem pogledu" + +# +msgid "French" +msgstr "Francosko" + +# +msgid "Frequency" +msgstr "Frekvenca" + +# +msgid "Frequency bands" +msgstr "Frekvenčni pasovi" + +# +msgid "Frequency scan step size(khz)" +msgstr "Koraki iskanja frekvenc (khz)" + +# +msgid "Frequency steps" +msgstr "Frekvenčni koraki" + +msgid "Frequency:" +msgstr "" + +# +msgid "Fri" +msgstr "Pet" + +# +msgid "Friday" +msgstr "Petek" + +msgid "From :" +msgstr "Od:" + +# +#, python-format +msgid "Frontprocessor version: %d" +msgstr "Različica Frontprocesorja: %d" + +msgid "Full transparency" +msgstr "Popolna prosojnost" + +msgid "Fulview resulution" +msgstr "" + +msgid "Function of OK button" +msgstr "Funkcija tipke OK" + +msgid "Further Options" +msgstr "" + +# +msgid "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" +msgstr "" +"Za spremembo predloge je potrebno ponovno zagnati uporabniški vmesnik (GUI)!\n" +"Želite to storiti sedaj?" + +# +msgid "Gateway" +msgstr "Prehod" + +# +msgid "General AC3 delay" +msgstr "Zamik AC3 zvoka" + +# +msgid "General PCM delay" +msgstr "Zamik PCM zvoka" + +# +msgid "Genre" +msgstr "Žanr" + +# +msgid "German" +msgstr "Nemško" + +msgid "Get latest experimental image" +msgstr "Prenesi zadnjo eksperimentalno sliko" + +msgid "Get latest release image" +msgstr "Prenesi zadnjo stabilno sliko" + +# +msgid "Getting plugin information. Please wait..." +msgstr "Poteka pridobivanje informacij o vtičniku ... Prosim počakajte!" + +msgid "Go down the list" +msgstr "Pojdi dol po seznamu" + +msgid "Go to first movie or last item" +msgstr "Pojdi na prvi posnetek ali zadnjo datoteko" + +msgid "Go to first movie or top of list" +msgstr "Pojdi na prvi posnetek ali na začetek seznama" + +# +msgid "Go to first service" +msgstr "Pojdi na prvi kanal" + +# +msgid "Go to last service" +msgstr "Pojdi na zadnji kanal" + +# +msgid "Go to next event" +msgstr "Pojdi na naslednji dogodek" + +# +msgid "Go to next page of service" +msgstr "Pojdi na naslednjo stran storitve" + +# +msgid "Go to previous event" +msgstr "Pojdi na prejšnji dogodek" + +# +msgid "Go to previous page of service" +msgstr "Pojdi na prejšnjo stran storitve" + +msgid "Go up the list" +msgstr "Pojdi gor po seznamu" + +msgid "Goto" +msgstr "Pojdi na" + +# +msgid "Goto 0" +msgstr "Pojdi na 0" + +msgid "Goto :" +msgstr "Pojdi na:" + +msgid "Goto X" +msgstr "Pojdi na X" + +msgid "Goto index position" +msgstr "Pojdi na izbirni položaj" + +msgid "Goto next day of events" +msgstr "" + +msgid "Goto next page of events" +msgstr "Pojdi na naslednjo stran dogodkov" + +# +msgid "Goto position" +msgstr "Pojdi na" + +msgid "Goto previous day of events" +msgstr "" + +msgid "Goto previous page of events" +msgstr "Pojdi na prejšnjo stran dogodkov" + +msgid "Goto specific date/time" +msgstr "" + +msgid "GotoX calibration" +msgstr "PojdiNaX kalibracija" + +msgid "GraphMultiEpg Settings" +msgstr "GraphMultiEPG nastavitve" + +# +msgid "Graphical Multi EPG" +msgstr "Grafični Multi-EPG sistem" + +# +msgid "Greek" +msgstr "Grško" + +# +msgid "Green boost" +msgstr "" + +msgid "Guard interval" +msgstr "" + +msgid "HD list" +msgstr "HD seznam" + +msgid "HDMI-CEC setup" +msgstr "" + +msgid "Handle standby from TV" +msgstr "" + +msgid "Handle wakeup from TV" +msgstr "" + +# +msgid "Hard disk" +msgstr "Trdi disk" + +# +msgid "Hard disk setup" +msgstr "Nastavitve trdega diska" + +# +msgid "Hard disk standby after" +msgstr "Prehod v stanje pripravljenosti (mirovanje) po" + +# +msgid "Harddisk" +msgstr "Trdi disk" + +msgid "Hardware: " +msgstr "Strojna oprema:" + +msgid "Hebrew" +msgstr "" + +msgid "Helps setting up your dish" +msgstr "" + +msgid "Hidden network" +msgstr "Skrito omrežje" + +# +msgid "Hide CI messages" +msgstr "Skrij napake povezane z naročniškimi karticami" + +msgid "Hide channel list in radio mode" +msgstr "Skrij seznam kanalov v načinu RADIO" + +msgid "Hide known extensions" +msgstr "" + +msgid "Hide number markers" +msgstr "" + +# +msgid "Hide player" +msgstr "Skrij predvajalnik" + +# +msgid "Hide zap errors" +msgstr "Skrij napake pri preklapljanju kanalov" + +msgid "Hierarchy info" +msgstr "" + +# +msgid "Hierarchy information" +msgstr "Hierarhične informacije" + +# +msgid "High bitrate support" +msgstr "Podpora visokim bitnim hitrostim" + +# +msgid "Hold screen" +msgstr "Ostanek prejšnje slike" + +msgid "Hold till locked" +msgstr "" + +msgid "Home" +msgstr "Domov" + +# +msgid "Horizontal" +msgstr "Horizontalno" + +msgid "Horizontal turning speed" +msgstr "" + +# +msgid "How many minutes do you want to record?" +msgstr "Koliko minut želite snemati?" + +# +msgid "Hue" +msgstr "Barva" + +# +msgid "Hungarian" +msgstr "Madžarščina" + +msgid "IP address" +msgstr "IP naslov" + +# +msgid "ISO file is too large for this filesystem!" +msgstr "ISO datoteka je prevelika za ta datotečni sistem!" + +# +msgid "ISO path" +msgstr "ISO pot" + +# +msgid "Icons" +msgstr "Ikone" + +# +msgid "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." +msgstr "" +"Če vidite naslednje opozorilo, je nekaj narobe\n" +"z vašim SCART priključkom. Pritisnite tipko OK!" + +# +msgid "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." +msgstr "" +"Onemogočite poudarjanje svetlosti in kontrasta v kolikor ima vaš TV to funkcionalnost. V kolikor vsebuje nastavitev \"dinamično\", jo spremenite na standardno. Nastavite osvetlitev ozadja po vaši želji. Zmanšajte kontrast TV sprejemnika na najnižjo možno raven.\n" +"Zmanšajte nastavitev svetlosti na najnižjo možno raven, tako da bodo najnižji odtenki sive ostali razločni.\n" +"V tem trenutku ne skrbite za svetle sence na zaslonu, ponastavili jih boste v naslednjih korakih.\n" +"Če ste zadovoljni z nastavitvami, pritisnite OK." + +msgid "Image: " +msgstr "Slika" + +# +msgid "Immediate shutdown" +msgstr "Takojšen izklop" + +# +msgid "In order to record a timer, the TV was switched to the recording service!\n" +msgstr "Da bi se lahko izvedlo snemanje določeno s časovnikom, je bil TV prestavljen v način snemanja!\n" + +# +msgid "In progress" +msgstr "Se izvaja" + +msgid "Inactivity Sleeptimer" +msgstr "" + +# +msgid "Include AIT in http streams" +msgstr "Prisotnost AIT podatkov v HTTP toku" + +# +msgid "Include ECM in http streams" +msgstr "Prisotnost ECM paketkov v HTTP toku" + +# +msgid "Include EIT in http streams" +msgstr "Prisotnost EIT podatkov v HTTP toku" + +msgid "Incorrect type service for PiP!" +msgstr "" + +# +msgid "Increased voltage" +msgstr "Povečana napetost" + +# +msgid "Index" +msgstr "Indeks" + +msgid "Index allocated:" +msgstr "" + +# +msgid "Info" +msgstr "Info" + +# +msgid "Info bar" +msgstr "Informacijska vrstica" + +# +msgid "Info bar timeout" +msgstr "Trajanje prikaza informacijske vrstice" + +msgid "Infobar frontend data source" +msgstr "" + +# +msgid "Information" +msgstr "Informacije" + +# +msgid "Init" +msgstr "Inicializacija" + +# +msgid "Initial fast forward speed" +msgstr "Začetna hitrost hitrega predvajanja naprej" + +# +msgid "Initial location in new timers" +msgstr "" + +msgid "Initial lock ratio" +msgstr "" + +# +msgid "Initial rewind speed" +msgstr "Začetna hitrost predvajanja nazaj" + +msgid "Initial signal quality" +msgstr "Začetna kakovost signala" + +msgid "Initial signal quality:" +msgstr "Začetna kakovost signala:" + +# +msgid "Initialization" +msgstr "Ponastavitev diska" + +# +msgid "Initialize" +msgstr "Ponastavitev" + +msgid "Initializing storage device..." +msgstr "Poteka pripravljanje naprave za shranjevanje podatkov ..." + +# +msgid "Input" +msgstr "Seznam" + +msgid "Input device setup" +msgstr "Nastavi vhodne naprave" + +msgid "Input devices" +msgstr "Vhodne naprave" + +# +msgid "Install" +msgstr "Namesti" + +# +msgid "Install a new image with a USB stick" +msgstr "Namestite novo sliko (image) z uporabo USB ključka" + +# +msgid "Install a new image with your web browser" +msgstr "Namestite novo sliko z vašim brskalnikom" + +# +msgid "Install channel list" +msgstr "Namestitev seznama kanalov" + +msgid "Install extensions" +msgstr "" + +# +msgid "Install extensions." +msgstr "Namestite razširitve." + +# +msgid "Install local extension" +msgstr "Namestitev lokalne razširitve" + +msgid "Install picons on" +msgstr "Namestitev piconsev na" + +# +msgid "Install softcam" +msgstr "Namestitev emulatorja" + +msgid "Installation has completed." +msgstr "Namestitev je zaključena." + +# +msgid "Installation or removal has completed." +msgstr "Namestitev ali odstranitev je zaključena." + +# +msgid "Installing" +msgstr "Nameščam ..." + +# +msgid "Installing software..." +msgstr "Poteka nameščanje programske opreme ..." + +# +msgid "Instant recording location" +msgstr "Lokacija takojšnjega snemanja" + +# +msgid "Instant recording..." +msgstr "Takojšnje snemanje" + +# +msgid "Interface: " +msgstr "Vmesnik:" + +# +msgid "Intermediate" +msgstr "Srednje" + +# +msgid "Internal flash" +msgstr "Notranji pomnilnik" + +msgid "Internal hdd only" +msgstr "Samo notranji HDD" + +msgid "Interval between keys when repeating:" +msgstr "Interval med tipkami v primeru ponavljanja:" + +# +#, python-format +msgid "Invalid directory selected: %s" +msgstr "Izbrana neveljavna mapa: %s" + +# +msgid "Invalid location" +msgstr "Neveljavna lokacija" + +msgid "Invalid transponder data" +msgstr "" + +# +msgid "Inversion" +msgstr "Inverzija" + +msgid "Invert" +msgstr "Inverzija" + +# +msgid "Ipkg" +msgstr "Ipkg" + +msgid "Is this setting ok?" +msgstr "Uporabim te nastavitve?" + +# +msgid "Is this video mode ok?" +msgstr "Je izbrana ločljivost ustrezna?" + +# +msgid "Italian" +msgstr "Italjansko" + +msgid "Items per page " +msgstr "Št. datotek na stran" + +msgid "Items per page for list screen" +msgstr "Št. datotek na stran" + +# +msgid "Job overview" +msgstr "Ogled opravila" + +msgid "Jump to beginning of list" +msgstr "Skoči na začetek seznama" + +# +msgid "Jump to end of list" +msgstr "Skoči na konec seznama" + +# +msgid "Jump to next marked position" +msgstr "Skoči do naslednjega označenega položaja" + +# +msgid "Jump to previous marked position" +msgstr "Skoči do prejšnjega označenega položaja" + +# +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect) +msgid "Just scale" +msgstr "Samodejno" + +msgid "Keep service" +msgstr "" + +msgid "Kernel version: " +msgstr "Verzija jedra:" + +# +msgid "Keyboard" +msgstr "Jezik tipkovnice" + +# +msgid "Keyboard map" +msgstr "Jezik tipkovnice" + +# +msgid "Keyboard setup" +msgstr "Nastavitve tipkovnice" + +# +msgid "LAN adapter" +msgstr "Mrežni vmesnik" + +msgid "LAN connection" +msgstr "Mrežna povezava" + +# +msgid "LNB" +msgstr "LNB" + +# +msgid "Language" +msgstr "Jezik menija" + +# +msgid "Language selection" +msgstr "Izbira jezik" + +# +msgid "Last config" +msgstr "Prejšnje nastavitve" + +# +msgid "Last speed" +msgstr "Zadnja hitrost" + +msgid "Last upgrade: " +msgstr "Zadnja nadg.:" + +msgid "Latest Commits" +msgstr "" + +# +msgid "Latitude" +msgstr "Zemljepisna širina [Lat]" + +# +msgid "Latvian" +msgstr "Latvian" + +# +msgid "Leave DVD player?" +msgstr "Želite zapustiti DVD predvajalnik?" + +# +msgid "Left" +msgstr "Levo" + +msgid "Left from servicename" +msgstr "" + +msgid "Leisure hobbies" +msgstr "" + +# +#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term. +msgid "Letterbox" +msgstr "Letterbox" + +msgid "Letterbox zoom" +msgstr "" + +# +msgid "Limit character set for recording filenames" +msgstr "Omejen nabor znakov za imena posnetih datotek" + +# +msgid "Limit east" +msgstr "Omejitev vzhod" + +msgid "Limit the characters that can be used in recording filenames to (7 bit) ascii. This ensures compatibility with operating systems or file systems with limited character sets." +msgstr "Omeji znake, ki so uporabljeni v imenih posnetih datotek (7bit ascii). To zagotavlja ustrezno kompatibilnost z operacijskimi sistemi, ki podpirajo samo določen nabor znakov." + +# +msgid "Limit west" +msgstr "Omejitev zahod" + +msgid "Limits cancelled" +msgstr "Omejitve preklicane" + +msgid "Limits enabled" +msgstr "Omejitve vključene" + +# +msgid "Limits off" +msgstr "Izklop omejitev" + +# +msgid "Limits on" +msgstr "Omejitve vklopljene" + +# +msgid "Link quality:" +msgstr "Kvaliteta povezave:" + +# +msgid "Link:" +msgstr "Stanje:" + +# +msgid "Linked titles with a DVD menu" +msgstr "Povezani naslovi z DVD menujem" + +# +msgid "List EPG functions..." +msgstr "Seznam EPG načinov" + +msgid "List available networks" +msgstr "Prikaz razpoložljivih omrežij" + +msgid "List mode" +msgstr "Seznam - način" + +# +msgid "List of storage devices" +msgstr "Seznam naprav za shranjevanje" + +msgid "List type" +msgstr "Tip seznama" + +#, python-format +msgid "List version %d, found %d channel" +msgid_plural "List version %d, found %d channels" +msgstr[0] "Verzija seznama %d, najden je %d kanal" +msgstr[1] "Verzija seznama %d, najdena sta %d kanala" +msgstr[2] "Verzija seznama %d, najdeni so %d kanali" +msgstr[3] "Verzija seznama %d, najdenih je %d kanalov" + +# +msgid "Listen to the radio..." +msgstr "Poslušanje radia" + +msgid "Lists reloaded!" +msgstr "" + +# +msgid "Lithuanian" +msgstr "Litvansko" + +# +msgid "Load" +msgstr "Naloži" + +msgid "Load Length of Movies in Movielist" +msgstr "" + +# +msgid "Load length of movies in movie list" +msgstr "Prikaz dolžine posnetkov v seznamu datotek" + +# +msgid "Load playlist" +msgstr "Naloži seznam za predvajanje" + +# +msgid "Local network" +msgstr "Lokalno omrežje" + +# +msgid "Location" +msgstr "Lokacija" + +# +msgid "Location for instant recordings" +msgstr "Lokacija takojšnjih posnetkov" + +msgid "Lock ratio" +msgstr "" + +# +msgid "Lock:" +msgstr "Zakleni:" + +# +msgid "Log results to harddisk" +msgstr "Shrani rezultate na trdi disk" + +msgid "Long filenames" +msgstr "Dolga imena datotek" + +# +msgid "Long key press" +msgstr "Dolgi pritisk tipke" + +# +msgid "Longitude" +msgstr "Zemljepisna dolžina [Lon]" + +msgid "Loop through to" +msgstr "" + +msgid "Luxembourgish" +msgstr "" + +# +msgid "MMC card" +msgstr "MMC kartica" + +# +msgid "MORE" +msgstr "VEČ" + +# +msgid "Main menu" +msgstr "Glavni meni" + +# +msgid "Maintain old EPG data for" +msgstr "Pretekli EPG podatki naj bodo dostopni še X minut" + +# +msgid "Make this mark an 'in' point" +msgstr "Naredi oznako kot 'vhodno' točko" + +# +msgid "Make this mark an 'out' point" +msgstr "Naredi oznako kot 'izhodno' točko" + +# +msgid "Make this mark just a mark" +msgstr "Naredi oznako samo kot oznako" + +# +msgid "Manage extensions" +msgstr "Upravljanje vtičnikov" + +# +msgid "Manage your receiver's software" +msgstr "Upravljaj s programsko opremo sprejemnika" + +msgid "Manual" +msgstr "" + +# +msgid "Manual Scan" +msgstr "Ročno iskanje" + +msgid "Manual configuration" +msgstr "Ročna nastavitev" + +# +msgid "Manual scan" +msgstr "Ročno iskanje" + +# +msgid "Manual transponder" +msgstr "Ročno vnešeni transponder" + +# +msgid "Manufacturer" +msgstr "Proizvajalec" + +# +msgid "Margin after recording (minutes)" +msgstr "Meja pred snemanjem (v minutah)" + +# +msgid "Margin before recording (minutes)" +msgstr "Meja pred snemanjem (v minutah)" + +msgid "Max memory positions" +msgstr "" + +# +msgid "Max. bitrate: " +msgstr "Največja bitna hitrost: " + +# +msgid "Media player" +msgstr "Predvajalnik vsebin" + +# +msgid "Media scanner" +msgstr "Iskalnik datotek" + +# +msgid "Medium is not a writeable DVD!" +msgstr "Medij ni zapisljiv DVD!" + +# +msgid "Medium is not empty!" +msgstr "Medij ni prazen!" + +msgid "Memory" +msgstr "Spomin" + +msgid "Memory index" +msgstr "" + +# +msgid "Menu" +msgstr "Meni" + +# +msgid "Message" +msgstr "Obvestilo" + +# +msgid "Message..." +msgstr "Obestilo" + +#, python-format +msgid "Minimum age %d years" +msgstr "" + +msgid "Minimum send interval" +msgstr "" + +msgid "Missing " +msgstr "Manjkajoče" + +# +msgctxt "Satellite configuration mode" +msgid "Mode" +msgstr "Način" + +# +msgctxt "Video output mode" +msgid "Mode" +msgstr "Ločljivost slike" + +# +msgid "Model: " +msgstr "Model:" + +# +msgid "Modulation" +msgstr "Modulacija" + +# +msgid "Modulator" +msgstr "Modulator" + +# +msgid "Mon" +msgstr "Pon" + +# +msgid "Mon-Fri" +msgstr "Pon-Pet" + +# +msgid "Monday" +msgstr "Ponedeljek" + +# +msgid "Mosquito noise reduction" +msgstr "" + +msgid "Mount" +msgstr "Pripenjanje" + +# +msgid "Move" +msgstr "Premik" + +# +msgid "Move PiP to main picture" +msgstr "Premik Slike v Sliki v glavno sliko" + +# +msgid "Move Picture in Picture" +msgstr "Prestavi Sliko v Sliki" + +# +msgid "Move east" +msgstr "Premikanje proti vzhodu" + +# +msgid "Move to other directory" +msgstr "Premaknite se v drugo mapo" + +msgid "Move to position X" +msgstr "Premik na položaj X" + +# +msgid "Move west" +msgstr "Premikajte proti zahodu" + +msgid "Moved to position 0" +msgstr "Premik na položaj 0" + +msgid "Moved to position at index" +msgstr "" + +msgid "Movement" +msgstr "Premik" + +msgid "Movie List Configuration" +msgstr "" + +msgid "Movie Selection" +msgstr "" + +msgid "Movie list configuration" +msgstr "Nastavitve seznama posnetkov" + +# +msgid "Movie location" +msgstr "Movie lokacija" + +msgid "Movie selection" +msgstr "Izbirnik posnetkov" + +msgid "Movie/Drama" +msgstr "" + +# +msgid "Movielist menu" +msgstr "Seznam datotek" + +msgid "Moving" +msgstr "Premikanje" + +msgid "Moving east ..." +msgstr "Premikanje na vzhod ..." + +msgid "Moving to position" +msgstr "Premikanje na položaj" + +msgid "Moving west ..." +msgstr "Premikanje na zahod ..." + +# +msgid "Multi EPG" +msgstr "Multi-EPG" + +msgid "Multi-EPG bouquet selection" +msgstr "" + +# +msgid "Multimedia" +msgstr "Multimedija" + +# +msgid "Multiple service support" +msgstr "Podpora več storitvam" + +msgid "Multiplex" +msgstr "Multiplex" + +# +msgid "Multisat" +msgstr "Multisat" + +msgid "Multisat all select" +msgstr "" + +msgid "Music/Ballet/Dance" +msgstr "" + +# +msgid "Mute" +msgstr "Mute" + +# +msgid "N/A" +msgstr "N/A" + +# +msgid "NEXT" +msgstr "NASLEDNJI" + +msgid "NFI image flashing" +msgstr "" + +# +msgid "NFI image flashing completed. Press Yellow to Reboot!" +msgstr "NFI nadgradnja programske opreme je končana. Za ponovni zagon pritisnite rumeno tipko!" + +msgid "NIM" +msgstr "NIM" + +# +msgid "NOW" +msgstr "SEDAJ" + +# +msgid "NTSC" +msgstr "NTSC" + +# +msgid "Name" +msgstr "Ime" + +# +msgid "Nameserver" +msgstr "Imenski strežnik" + +# +#, python-format +msgid "Nameserver %d" +msgstr "Imenski strežnik %d" + +# +msgid "Nameserver settings" +msgstr "Nastavitve imenskega strežnika" + +# +msgid "Nameserver setup" +msgstr "Nastavitve imenskega strežnika" + +msgid "Namespace" +msgstr "Namespace" + +# +msgid "Netmask" +msgstr "Omrežna maska" + +# +msgid "Network" +msgstr "Mreža" + +msgid "Network ID" +msgstr "Ident. številka omrežja" + +# +msgid "Network configuration..." +msgstr "Nastavitve omrežja" + +# +msgid "Network mount" +msgstr "Dodajanje mrežne naprave" + +# +#, python-format +msgid "Network mount %s" +msgstr "Dodajanje mrežne naprave %s" + +msgid "Network name (SSID)" +msgstr "Ime omrežja (SSID)" + +# +msgid "Network scan" +msgstr "Preverjanje omrežja" + +# +msgid "Network setup" +msgstr "Omrežne nastavitve " + +# +msgid "Network test" +msgstr "Omrežni test" + +# +msgid "Network test..." +msgstr "Omrežni test" + +msgid "Network test: " +msgstr "Test mreže:" + +# +msgid "Network wizard" +msgstr "Čarovnik za mrežo" + +# +msgid "Network:" +msgstr "Omrežje:" + +# +msgid "New" +msgstr "Novo" + +msgid "New PIN" +msgstr "Nova PIN koda" + +# +msgid "New version:" +msgstr "Nova verzija:" + +msgid "News Current Affairs" +msgstr "" + +msgctxt "button label, 'next screen'" +msgid "Next" +msgstr "Naprej" + +msgctxt "now/next: 'next' event label" +msgid "Next" +msgstr "Potem" + +# +msgid "No" +msgstr "Ne" + +# +msgid "No (supported) DVDROM found!" +msgstr "Ne najdem (podprte oblike) DVDROM!" + +# +msgid "No Connection" +msgstr "Ni povezave" + +# +msgid "No HDD found or HDD not initialized!" +msgstr "Trdega diska ni mogoče dodati!" + +# +msgid "No backup needed" +msgstr "Varnostna kopija ni potrebna" + +msgid "No cable tuner found!" +msgstr "Ni možno najti DVB-C kanalnika!" + +# +msgid "" +"No data on transponder!\n" +"(Timeout reading PAT)" +msgstr "" +"Ni podatkov o transponderju!\n" +"(Potekel čas branja PAT)" + +msgid "No delay" +msgstr "Brez zamika" + +# +msgid "No description available." +msgstr "Opis ni na voljo." + +# +msgid "No details for this image file" +msgstr "Ni podrobnih podatkov o programski opremi" + +# +msgid "No displayable files on this medium found!" +msgstr "Na pogonu ni datotek, ki jih lahko prikažem!" + +# +msgid "No event info found, recording indefinitely." +msgstr "Ne najdem informacije o dogodku. Trajanje snemanja bo neomejeno." + +# +msgid "No fast winding possible yet.. but you can use the number buttons to skip forward/backward!" +msgstr "Hitro previjanje še ni mogoče. Namesto tega lahko uporabite številske tipke (npr. 6 ali 9) na vašem daljinskem upravljalcu." + +msgid "No free index available" +msgstr "" + +# +msgid "No free tuner!" +msgstr "Ni prostega kanalnika!" + +# +msgid "No network connection available." +msgstr "Mrežna povezava ni na voljo." + +# +msgid "No networks found" +msgstr "Nobeno omrežje ni najdeno" + +msgid "No new plugins found" +msgstr "" + +# +msgid "No positioner capable frontend found." +msgstr "Ne najdem združljive pozicionirne naprave." + +msgid "No satellites configured. Plese check your tuner setup." +msgstr "" + +msgid "No service" +msgstr "" + +# +msgid "No services/providers selected" +msgstr "Ni izbranih kanalov ali ponudnikov" + +# +msgid "No standby" +msgstr "Ni stanja pripravljenosti" + +msgid "No suitable sat tuner found!" +msgstr "" + +# +msgid "No tags are set on these movies." +msgstr "Ni postavljenih oznak na prikazanih filmih." + +# +msgid "No timeout" +msgstr "Ni časovne omejitve" + +# +msgid "No to all" +msgstr "Ne za vse" + +# +msgid "No transparency" +msgstr "Brez prosojnosti" + +# +msgid "No tuner is configured for use with a diseqc positioner!" +msgstr "Kanalnik ni nastavljen za delo z DiSEqC rotorjem!" + +# +msgid "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Ni možno najti aktivnega kanalnika!\n" +"Preden ponovno zaženete iskanje kanalov, spremenite nastavitve kanalnika." + +msgid "No updates available" +msgstr "Posodobitve niso na voljo!" + +msgid "No updates available. Please try again later." +msgstr "Posodobitve niso na voljo. Prosim, če poizkusite kasneje!" + +# +msgid "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" +msgstr "" +"Ne najdem pravilnega PIN za kanale!\n" +"Želite spremeniti PIN?\n" +"Če izberete 'Ne', bodo kanali ostali nezaščiteni!" + +# +msgid "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" +msgstr "" +"Pravilnega PINa za nastavitve ne najdem\n" +"Želite spremeniti PIN?\n" +"Če izberete 'Ne', bodo nastavitve ostale nezaščitene!" + +msgid "No wireless networks found! Searching..." +msgstr "Ni najdene nobene brezzične mreže! Iskanje ..." + +# +msgid "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." +msgstr "" +"Ne najdem delujočega omrežnega vmesnika.\n" +"Preverite ali ste pravilno priključili omrežni kabel in nastavili omrežne nastavitve." + +# +msgid "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." +msgstr "" +"Ne najdem delujočega brezžičnega omrežnega vmesnika.\n" +"Preverite ali je brezžična naprava kompatibilna s sprejemnikom in ali ste pravilno nastavili omrežne nastavitve." + +# +msgid "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." +msgstr "" +"Ne najdem delujočega brezžičnega omrežnega vmesnika.\n" +"Preverite ali je brezžična naprava kompatibilna s sprejemnikom in ali ste pravilno nastavili omrežne nastavitve." + +# +msgid "No, but restart from begin" +msgstr "Ne, zaženi ponovno od začetka" + +# +msgid "No, do nothing." +msgstr "Ne stori ničesar." + +msgid "No, just start my receiver" +msgstr "Ne, samo zaženi sprejemnik" + +msgid "No, never" +msgstr "Ne, nikoli" + +# +msgid "None" +msgstr "Prazno" + +# +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right) +msgid "Nonlinear" +msgstr "Nelinearno" + +msgid "Normal mode" +msgstr "Normalni način" + +# +msgid "North" +msgstr "Sever" + +# +msgid "Norwegian" +msgstr "Norveško" + +msgid "Not associated" +msgstr "Ni povezano" + +msgid "Not configured" +msgstr "" + +# +#, python-format +msgid "Not enough disk space. Please free up some disk space and try again. (%d MB required, %d MB available)" +msgstr "Ni dovolj prostora! Sprostite prostor na disku in poizkusite ponovno (%d MB zahtevano, %d MB na voljo)" + +msgid "Nothing connected" +msgstr "" + +# +msgid "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Iskanje ni možno!\n" +"Pred začetkom iskanja preverite nastavitve kanalnika." + +msgctxt "now/next: 'now' event label" +msgid "Now" +msgstr "Zdaj" + +# +msgid "Now playing" +msgstr "Trenutno se predvaja" + +# +msgid "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." +msgstr "Sedaj spremenite nastavitve kontrasta za zvišanje svetlosti ozadja kolikor je možno, vendar se prepričajte da lahko opazite razliko med dvema nivojema svetlosti. Ko boste zadovoljni z nastavitvami, pritisnite OK. " + +# +msgid "OK" +msgstr "Potrditev" + +# +msgid "OK, guide me through the upgrade process" +msgstr "Prav, vodi me skozi postopek nadgradnje" + +msgid "ONID" +msgstr "ONID" + +msgid "OSD name request" +msgstr "" + +# +msgid "OSD settings" +msgstr "Nastavitve OSD" + +# +msgid "OSD transparency" +msgstr "OSD prosojnost" + +# +msgid "Off" +msgstr "Izklop" + +msgid "Offline decode delay (ms)" +msgstr "Zamik offline dekodiranja (v ms)" + +# +msgid "Ok" +msgstr "Potrdi" + +# +msgid "On" +msgstr "Vklop" + +msgid "On end of movie" +msgstr "Na koncu posnetka" + +msgid "On end of movie (as menu)" +msgstr "" + +# +msgid "One" +msgstr "En" + +# +msgid "Only extensions." +msgstr "Samo razširitve." + +# +msgid "Only free scan" +msgstr "Iskanje samo prosto dostopnih kanalov (FTA)" + +# +msgid "Open service list" +msgstr "Odprtje seznama kanalov" + +# +msgid "Open the movie list" +msgstr "Odprtje seznama posnetkov" + +msgid "Orbital position" +msgstr "Položaj satelita" + +msgid "Original" +msgstr "Original" + +msgid "Other" +msgstr "Ostalo" + +msgid "Output" +msgstr "Učinek" + +msgid "Overwrite configuration files during software upgrade?" +msgstr "Prepis nastavitvenih datotek pri nadgradnji programske opreme?" + +msgid "Overwrite configuration files?" +msgstr "Prepis nastavitvenih datotek?" + +# +msgid "PAL" +msgstr "PAL" + +msgid "PCR PID" +msgstr "PCR PID" + +# +msgid "PIDs" +msgstr "PIDs" + +# +msgid "PIN code needed" +msgstr "Vpišite PIN kodo" + +msgid "PLP ID" +msgstr "" + +msgid "PMT PID" +msgstr "PMT PID" + +# +msgid "Package list update" +msgstr "Iskanje posodobitev ..." + +# +msgid "Packet management" +msgstr "Upravljanje paketov" + +# +msgid "Packet manager" +msgstr "Upravljanje paketkov." + +# +#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term +msgid "Pan&scan" +msgstr "Pan&Scan" + +# +msgid "Parent directory" +msgstr "Prvotna mapa" + +# +msgid "Parental control" +msgstr "Starševska zaščita" + +# +msgid "Parental control services editor" +msgstr "Urejanje storitve starševske zaščite" + +# +msgid "Parental control setup" +msgstr "Nastavitve starševske zaščite" + +# +msgid "Parental control type" +msgstr "Vrsta starševske zaščite" + +# +msgid "Password" +msgstr "Geslo" + +# +msgid "Pause" +msgstr "Premor" + +# +msgid "Pause movie at end" +msgstr "Ustavite film na koncu" + +# +msgid "Pause playback" +msgstr "Pavzirajte predvajanje" + +msgid "Pauze/Continue playback" +msgstr "" + +msgid "Percentage left" +msgstr "Odstotek na levi strani" + +# +msgid "Percentage right" +msgstr "Odstotek na desni strani" + +msgid "Permanently delete all recordings in the trash can?" +msgstr "Trajno izbrišem vse posnetke, ki se nahajajo v smetnjaku?" + +msgid "Permanently remove all deleted items" +msgstr "Trajni izbris vseh izbrisanih datotek" + +msgid "Persian" +msgstr "" + +# +msgid "Phone number" +msgstr "Telefonska številka" + +# +msgid "PiP setup" +msgstr "Nastavitve PiP - Slika v Sliki" + +msgid "Picon" +msgstr "Sličica" + +msgid "Picon and service name" +msgstr "Sličica in ime kanala" + +# +msgid "Picture player" +msgstr "Prikazovalnik slik" + +# +#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term. +msgid "Pillarbox" +msgstr "Pillarbox" + +# +msgid "Pilot" +msgstr "Daljinec" + +# +msgid "Play" +msgstr "Predvajaj" + +# +msgid "Play DVD" +msgstr "Predvajajte DVD" + +msgid "Play audio in background" +msgstr "Predvajanje zvoka v ozadju" + +# +msgid "Play audio-CD..." +msgstr "Predvajajte zvočni CD" + +msgid "Play back media files" +msgstr "Predvajanje multimedijskih datotek" + +# +msgid "Play entry" +msgstr "Predvajanje vnosa" + +# +msgid "Play from next mark or playlist entry" +msgstr "Predvajanje od naslednje oznake ali vnosa v seznamu" + +# +msgid "Play from previous mark or playlist entry" +msgstr "Predvajanje od prejšne oznake ali vnosa v seznamu" + +# +msgid "Play music..." +msgstr "Predvajanje glasbe" + +msgid "Play next" +msgstr "Predvajaj naslednje" + +msgid "Play next (return to movie list)" +msgstr "Predvajaj naslednje (vrni se na seznam datotek)" + +msgid "Play next (return to previous service)" +msgstr "Predvajaj naslednje (vrni se na prejšnji kanal)" + +msgid "Play previous" +msgstr "Predvajaj prejšnje" + +# +msgid "Play recorded movies..." +msgstr "Predvajanje posnetkov" + +# +msgid "Please add titles to the compilation." +msgstr "" + +# +msgid "Please change recording endtime" +msgstr "Spremenite čas konca snemanja" + +# +msgid "Please check your network settings!" +msgstr "Preverite vaše omrežne nastavitve!" + +# +msgid "Please choose an extension..." +msgstr "Izberite razširitev:" + +# +msgid "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Preverite vaše imenske strežnike.\n" +"Ko boste pripravljeni, pritisnite tipko OK." + +# +msgid "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Nastavite vašo internetno povezavo.\n" +"Po vnosu vseh podatkov, pritisnite OK." + +msgid "Please connect your receiver to the internet" +msgstr "Prosim, povežite vaš sprejemnik z internetom!" + +# +msgid "Please do not change any values unless you know what you are doing!" +msgstr "Ne spreminjajte vrednosti če niste prepričani o rezultatu!" + +# +msgid "Please enter a name for the new bouquet" +msgstr "Vnesite ime za novi paket:" + +# +msgid "Please enter a name for the new marker" +msgstr "Vnesite ime za novo oznako:" + +# +msgid "Please enter a new filename" +msgstr "Vnesite novo ime datoteke:" + +# +msgid "Please enter filename (empty = use current date)" +msgstr "Prosim, da vnesete ime datoteke (prazno = uporabi današnji dan)" + +# +msgid "Please enter name of the new directory" +msgstr "Vnesite ime nove mape:" + +msgid "Please enter new name:" +msgstr "" + +# +msgid "Please enter the correct pin code" +msgstr "Vnesite pravilno PIN kodo;" + +msgid "Please enter the old PIN code" +msgstr "Vnesite prejšnjo PIN kodo" + +# +msgid "Please follow the instructions on the TV" +msgstr "Prosim, da sledite navodilom na TV zaslonu" + +# +msgid "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." +msgstr "Prejšnji izbran medij ni dostopen, uporabljena je privzeta mapa." + +# +msgid "Please press OK to continue." +msgstr "Za nadaljevanje pritisnite tipko OK." + +msgid "Please select a default EPG type..." +msgstr "Prosim, izberite osnovni EPG način!" + +# +msgid "Please select a playlist to delete..." +msgstr "Prosim, da izberete seznam za brisanje." + +# +msgid "Please select a playlist..." +msgstr "Izberite seznam za predvajanje." + +# +msgid "Please select a sub service..." +msgstr "Izbor pod-storitve:" + +# +msgid "Please select a subservice to record..." +msgstr "Izberite snemanje pod-storitve." + +# +msgid "Please select a subservice..." +msgstr "Izberite pod-storitev:" + +msgid "Please select an NFI file and press green key to flash!" +msgstr "Izberite .NFI datoteko in pritisnite zeleno tipko za začetek postopka!" + +# +msgid "Please select medium to be scanned" +msgstr "Izberite medij, ki se ga bo v nadaljevanju pregledalo" + +# +msgid "Please select medium to use as backup location" +msgstr "Izberite ustrezen medij za varnostno kopiranje:" + +# +msgid "Please select tag to filter..." +msgstr "Izberite oznako za filtriranje:" + +# +msgid "Please select the movie path..." +msgstr "Izberite pot do datotek:" + +# +msgid "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Izberite mrežni vmesnik, ki ga želite uporabiti za internetno povezavo.\n" +"\n" +"Za nadaljevanje pritisnite OK." + +# +msgid "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Izberite brezzično mrežo, kamor se želite povezati.\n" +"\n" +"Za nadaljevanje pritisnite OK." + +# +msgid "Please set up tuner A" +msgstr "Nastavite kanalnik B" + +# +msgid "Please set up tuner B" +msgstr "Nastavite kanalnik B" + +# +msgid "Please set up tuner C" +msgstr "Nastavite kanalnik C" + +# +msgid "Please set up tuner D" +msgstr "Nastavite kanalnik D" + +# +msgid "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." +msgstr "" +"Za prestavljanje okna Slika v Sliki uporabite smerne tipke.\n" +"Za spreminjanje velikosti okna uporabite tipke +/-.\n" +"Pritisnite OK za izhod v TV način ali tipko EXIT za prekinitev premikanja okna." + +# +msgid "Please use the UP and DOWN keys to select your language. Afterwards press the OK button." +msgstr "Prosim, da za izbiro jezika uporabite tipke GOR in DOL. Za potrditev pritisnite OK tipko ." + +msgid "Please wait" +msgstr "" + +# +msgid "Please wait (downloading channel list)" +msgstr "Prosim počakajte, poteka snemanje seznama kanalov" + +# +msgid "Please wait (downloading softcam)" +msgstr "Prosim počakajte, poteka nalaganje emulatorja ..." + +# +msgid "Please wait (updating packages)" +msgstr "Prosim počakajte, poteka nalaganje paketov ..." + +# +msgid "Please wait for activation of your network configuration..." +msgstr "Počakajte na aktivacijo omrežnih nastavitev ..." + +# +msgid "Please wait while scanning is in progress..." +msgstr "Izvaja se iskanje ... Prosim počakajte!" + +# +msgid "Please wait while we configure your network..." +msgstr "Poteka nastavljanje vašega omrežja ... Prosim počakajte." + +# +msgid "Please wait while we prepare your network interfaces..." +msgstr "Poteka nastavljanje omrežja ... Prosim počakajte!" + +msgid "Please wait while we test your network..." +msgstr "Počakajte, da sprejemnik zaključi s testiranjem mreže ..." + +msgid "Please wait while your network is restarting..." +msgstr "Počakajte, da se mreža ponovno zažene ..." + +# +msgid "Please wait..." +msgstr "Prosim počakajte!" + +# +msgid "Please wait... Loading list..." +msgstr "Nalaganje seznama datotek ..." + +# +msgid "Plugin browser" +msgstr "Seznam vtičnikov" + +# +msgid "Plugin manager activity information" +msgstr "" + +# +msgid "Plugin manager help" +msgstr "" + +# +msgid "Plugins" +msgstr "Vtičniki" + +msgid "Polarisation" +msgstr "Polarizacija" + +msgid "Polarisation:" +msgstr "" + +# +msgid "Polarization" +msgstr "Polarizacija" + +# +msgid "Polish" +msgstr "Poljsko" + +# +msgid "Port A" +msgstr "Vrata A" + +# +msgid "Port B" +msgstr "Vrata B" + +# +msgid "Port C" +msgstr "Vrata C" + +# +msgid "Port D" +msgstr "Vrata D" + +# +msgid "Portuguese" +msgstr "Portugalsko" + +# +msgid "Position of completed timers in timerlist" +msgstr "Položaj končanih snemanj v seznamu časovnikov" + +msgid "Position stored at index" +msgstr "" + +# +msgid "Positioner" +msgstr "Rotor" + +msgid "Positioner (selecting satellites)" +msgstr "" + +msgid "Positioner Setup" +msgstr "" + +# +msgid "Positioner setup" +msgstr "Nastavitve rotorja" + +# +msgid "Power threshold in mA" +msgstr "Prag moči v mA" + +# +msgid "Predefined transponder" +msgstr "Predefinirani transponder" + +# +msgid "Prefer AC3 track" +msgstr "AC3 zvok naj ima prednost" + +msgid "Prefer AC3+ track" +msgstr "" + +# +msgid "Prefer audio track stored by service" +msgstr "Ročno izbrana zvočna sled naj ima prednost" + +# +msgid "Prefer graphical DVB subtitles" +msgstr "DVB podnapisi naj imajo prednost" + +# +msgid "Prefer subtitles for hearing impaired" +msgstr "Podnapisi za gluhe naj imajo prednost" + +# +msgid "Prefer subtitles stored by service" +msgstr "Ročno izbran podnapis naj ima prednost" + +# +msgid "Preferred tuner" +msgstr "Prednostni kanalnik" + +msgid "Preferred tuner for recordings" +msgstr "" + +msgid "Prepare another USB stick for image flashing" +msgstr "" + +# +msgid "Preparing... Please wait" +msgstr "Pripravljam ... Prosim počakajte!" + +msgid "Press '0' to toggle PiP mode" +msgstr "" + +msgid "Press INFO on your remote control for additional information." +msgstr "Za več informacij pritisnite tipko INFO." + +msgid "Press MENU on your remote control for additional options." +msgstr "Za dodatne nastavitve pritisnite tipko INFO." + +# +msgid "Press OK on your remote control to continue." +msgstr "Za nadaljevanje pritisnite OK." + +# +msgid "Press OK to activate the selected skin." +msgstr "Za aktiviranje izbrane predloge pritisnite OK." + +# +msgid "Press OK to activate the settings." +msgstr "Za aktiviranje nastavitev pritisnite OK." + +# +msgid "Press OK to edit the settings." +msgstr "Za spreminjanje nastavitev pritisnite OK." + +# +#, python-format +msgid "Press OK to get further details for %s" +msgstr "Za podrobnejše informacije o %s pritisnite OK." + +# +msgid "Press OK to scan" +msgstr "Za začetek iskanja pritisnite OK" + +# +msgid "Press OK to select a provider." +msgstr "Za izbiro ponudnika pritisnite OK." + +msgid "Press OK to select satellites" +msgstr "" + +# +msgid "Press OK to select/deselect a CAId." +msgstr "Za izbiro/opustitev CAId pritisnite tipko OK." + +# +msgid "Press OK to start the scan" +msgstr "Za začetek iskanja pritisnite OK" + +msgid "Press OK to toggle the selection" +msgstr "" + +# +msgid "Press OK to toggle the selection." +msgstr "Za preklapljanje med izbiro pritisnite tipko OK." + +# +msgid "Press yellow to set this interface as default interface." +msgstr "Pritisnite rumeno tipko za izbor izbranega vmesnika kot privzetega." + +msgctxt "button label, 'previous screen'" +msgid "Prev" +msgstr "Prejšnje" + +# +msgid "Preview" +msgstr "Predogled" + +# +msgid "Preview menu" +msgstr "Predogled meni" + +msgid "Preview selected channel" +msgstr "Predogled izbranega kanala" + +# +msgid "Primary DNS" +msgstr "Primarni DNS" + +# +msgid "Priority" +msgstr "Prioriteta" + +# +msgid "Process" +msgstr "Proces" + +# +msgid "Progress" +msgstr "Napredek" + +# +msgid "Progress bar left" +msgstr "Grafični prikaz napredka na levi" + +# +msgid "Progress bar right" +msgstr "Grafični prikaz napredka na desni" + +# +msgid "Properties of current title" +msgstr "Lastnosti trenutnega naslova" + +# +msgid "Protect services" +msgstr "Zaščiti kanale" + +# +msgid "Protect setup" +msgstr "Zaščiti nastavitve" + +# +msgid "Provider" +msgstr "Ponudniki" + +# +msgid "Provider to scan" +msgstr "Iskanje ponudnika" + +# +msgid "Providers" +msgstr "Ponudniki" + +msgid "Put TV in standby" +msgstr "" + +msgid "Put receiver in standby" +msgstr "" + +# +msgid "Python frontend for /tmp/mmi.socket" +msgstr "" + +# +msgid "Quick" +msgstr "Hitro" + +# +msgid "Quick zap" +msgstr "Hitri preklop" + +# +msgid "RF output" +msgstr "RF Izhod" + +# +msgid "RGB" +msgstr "RGB" + +# +msgid "Radio" +msgstr "Radio" + +# +msgid "Ram disk" +msgstr "Ram Disk" + +# +msgid "Random" +msgstr "Naključno" + +#, python-format +msgid "Rating defined by broadcaster - %d" +msgstr "" + +msgid "Rating undefined" +msgstr "" + +# +msgid "Really close without saving settings?" +msgstr "Želite zapreti ne da bi shranili nastavitve?" + +# +msgid "Really delete done timers?" +msgstr "Želite izbrisati končane časovnike?" + +# +msgid "Really exit the subservices quickzap?" +msgstr "Res želite zapustiti hitri preklop pod-storitev?" + +# +msgid "Really reboot now?" +msgstr "Res želite ponovno zagnati sprejemnik?" + +# +msgid "Really restart now?" +msgstr "Res želite ponovno zagnati sprejemnik?" + +# +msgid "Really shutdown now?" +msgstr "Res želite izklopiti sprejemnik?" + +msgid "Really upgrade the frontprocessor and reboot now?" +msgstr "Resnično želite nadgraditi frontprocessor in ponovno zagnati sprejemnik?" + +msgid "Really upgrade your settop box and reboot now?" +msgstr "Res želite nadgraditi vaš sprejemnik in ponovno zagnati sprejemnik?" + +# +msgid "Reboot" +msgstr "Ponovni zagon" + +msgid "Rec" +msgstr "Rec" + +# +msgid "Reception settings" +msgstr "Nastavitve sprejema" + +# +msgid "Record" +msgstr "Snemanje in seznam datotek" + +# +#, python-format +msgid "Record time limited due to conflicting timer %s" +msgstr "Čas snemanja je omejen zaradi konflikta s časovnikom %s" + +# +msgid "Recorded files..." +msgstr "Pot do datotek:" + +# +msgid "Recording" +msgstr "Snemanje" + +msgid "Recording in progress" +msgstr "Trenutno poteka snemanje!" + +# +msgid "Recording paths" +msgstr "Poti snemanja datotek" + +msgid "Recording type" +msgstr "Vrsta snemanja" + +# +msgid "Recording(s) are in progress or coming up in few seconds!" +msgstr "Snemanje se izvaja ali se bo začelo izvajati v nekaj sekundah!" + +# +msgid "Recordings" +msgstr "Posnetki" + +# +msgid "Recordings always have priority" +msgstr "Snemanje ima vedno višjo prioriteto" + +msgid "Red button..." +msgstr "Rdeča tipka" + +msgid "Reenter new PIN" +msgstr "Ponovni vnos PIN kode" + +# +msgid "Refresh rate" +msgstr "Hitrost osveževanja" + +# +msgid "Refresh rate selection." +msgstr "Izbira osveževanja." + +msgid "Regard deep standby as standby" +msgstr "Obravnavaj globoko spanje kot stanje pripravljenosti" + +msgid "Relative" +msgstr "" + +# +msgid "Reload" +msgstr "Ponovno naloži" + +msgid "Reload black-/white lists" +msgstr "" + +msgid "Reloading bouquets and services..." +msgstr "Poteka ponovno nalaganje priljubljenih seznamov in kanalov ..." + +msgid "Remember last service in PiP" +msgstr "" + +msgid "Remember service PIN" +msgstr "Zapomni si PIN kodo kanala" + +msgid "Remember these settings for each folder" +msgstr "Enake nastavitve za vse mape" + +msgid "Reminder, you have chosen to save timeshift file." +msgstr "" + +# +msgid "Remote control type" +msgstr "Vrsta starševske zaščite" + +# +msgid "Removal has completed." +msgstr "Odstranitev je bila uspešna." + +# +msgid "Remove" +msgstr "Odstrani" + +# +msgid "Remove a mark" +msgstr "Odstrani oznako" + +# +msgid "Remove a nameserver entry" +msgstr "Odstranitev imenskega strežnika" + +# +msgid "Remove bookmark" +msgstr "Odstranitev zaznamka" + +# +msgid "Remove completed timers after (days)" +msgstr "Odstranitev datotek iz smetnjaka po X dnevih" + +# +msgid "Remove currently selected title" +msgstr "Odstrani izbrane naslove" + +# +msgid "Remove items from trash can after (days)" +msgstr "Odstranitev datotek iz smetnjaka po X dnevih" + +# +msgid "Remove plugins" +msgstr "Odstranitev" + +# +msgid "Remove title" +msgstr "Odstrani naslov" + +# +msgid "Removing" +msgstr "Brišem ..." + +# +#, python-format +msgid "Removing directory %s failed. (Maybe not empty.)" +msgstr "Odstranjevanje mape %s ni uspelo. (Obstaja možnost, da ni prazna.)" + +msgid "Removing partition table" +msgstr "Odstranjevanje particijske tabele" + +# +msgid "Rename" +msgstr "Preimenovanje" + +msgid "Repeat" +msgstr "" + +# +msgid "Repeat type" +msgstr "Vrsta ponavljanja" + +# +msgid "Repeating event currently recording... What do you want to do?" +msgstr "Snemanje ponavljajočega dogodka je v teku ... Kaj želite storiti?" + +# +msgid "Repeats" +msgstr "Ponovitve" + +msgid "Require authentication for http streams" +msgstr "" + +# +msgid "Required medium type:" +msgstr "Zahtevana vrsta medija:" + +msgid "Rereading partition table" +msgstr "Ponovno branje particijske tabele" + +msgid "Reserved" +msgstr "Rezervirano" + +# +msgid "Reset" +msgstr "Ponovno zaženi" + +# +msgid "Reset and renumerate title names" +msgstr "Preuredi imena naslovov od začetka" + +# +msgid "Reset playback position" +msgstr "Ponastavitev lokacije predvajanja" + +# +msgid "Reset video enhancement settings to system defaults?" +msgstr "Želite ponastaviti napredne video nastavitve?" + +# +msgid "Reset video enhancement settings to your last configuration?" +msgstr "Želite uporabiti video nastavitve, ki ste jih uporabljali nazadnje?" + +# +msgid "Resolution" +msgstr "Ločljivost" + +# +msgid "Restart" +msgstr "Ponovni zagon" + +# +msgid "Restart GUI now?" +msgstr "Ponoven zagon uporabniškega vmesnika?" + +# +msgid "Restart enigma" +msgstr "Ponovni zagon Enigme" + +# +msgid "Restart network" +msgstr "Ponovni zagon omrežja" + +# +msgid "Restart test" +msgstr "Test ponovnega zagona" + +# +msgid "Restart your network connection and interfaces.\n" +msgstr "Ponovno zaženite omrežno povezavo in vmesnike.\n" + +# +msgid "Restore" +msgstr "Povrnitev prejšnjega stanja" + +# +msgid "Restore backups" +msgstr "Povrnitev varnostne kopije" + +# +msgid "Restore is running..." +msgstr "Poteka obnavljanje ..." + +# +msgid "Restore system settings" +msgstr "Obnovitev glavnih nastavitev" + +# +msgid "Restoring..." +msgstr "Obnavljanje ..." + +# +msgid "Resume from last position" +msgstr "Nadaljevanje iz zadnje znane lokacije" + +# +#, python-format +msgid "Resume position at %s" +msgstr "Nadaljevanje iz položaja %s" + +# +#. TRANSLATORS: The string "Resuming playback" flashes for a moment +#. TRANSLATORS: at the start of a movie, when the user has selected +#. TRANSLATORS: "Resume from last position" as start behavior. +#. TRANSLATORS: The purpose is to notify the user that the movie starts +#. TRANSLATORS: in the middle somewhere and not from the beginning. +#. TRANSLATORS: (Some translators seem to have interpreted it as a +#. TRANSLATORS: question or a choice, but it is a statement.) +msgid "Resuming playback" +msgstr "Nadaljevanje predvajanja ..." + +# +msgid "Return to movie list" +msgstr "Nazaj na seznam datotek" + +# +msgid "Return to previous service" +msgstr "Nazaj na prejšnji kanal" + +msgid "Reverse bouquet buttons" +msgstr "" + +msgid "Reverse list" +msgstr "" + +# +msgid "Rewind speeds" +msgstr "Hitrosti predvajanja nazaj" + +# +msgid "Rewrap teletext subtitles" +msgstr "Rewrap teletekst podnapise" + +# +msgid "Right" +msgstr "Desno" + +msgid "Right from servicename" +msgstr "" + +msgid "Roll-off" +msgstr "" + +msgid "Romanian" +msgstr "" + +msgid "Root directory" +msgstr "Izvorni direktorij" + +msgid "Rotor step position:" +msgstr "" + +# +msgid "Rotor turning speed" +msgstr "Hitrost premikanja rotorja" + +msgid "Round start time on" +msgstr "" + +# +msgid "Russian" +msgstr "Rusko" + +# +msgid "S-Video" +msgstr "S-Video" + +msgid "SID" +msgstr "SID" + +# +msgid "SINGLE LAYER DVD" +msgstr "Enoslojni DVD" + +# +msgid "SNR" +msgstr "SNR" + +# +msgid "SNR:" +msgstr "SNR:" + +# +msgid "SSID:" +msgstr "SSID:" + +msgid "Same resolution as skin" +msgstr "" + +# +msgid "Sat" +msgstr "Sat" + +# +msgid "Satellite" +msgstr "Satelit" + +# +msgid "Satellite dish setup" +msgstr "Nastavitve satelitskega krožnika" + +# +msgid "Satellite equipment" +msgstr "Satelitska oprema" + +# +msgid "Satellite equipment setup" +msgstr "Nastavitve satelitske opreme" + +msgid "Satellite longitude:" +msgstr "Sat. zemljepisna dolžina:" + +# +msgid "Satellites" +msgstr "Sateliti" + +# +msgid "Satfinder" +msgstr "Iskanje satelitov" + +# +msgid "Sats" +msgstr "Sateliti" + +# +msgid "Saturation" +msgstr "Zasičenost" + +# +msgid "Saturday" +msgstr "Sobota" + +# +msgid "Save" +msgstr "Potrditev" + +# +msgid "Save playlist" +msgstr "Shranitev seznama za predvajanje" + +msgid "Save timeshift file" +msgstr "" + +msgid "Save timeshift file in movie directory" +msgstr "" + +# +msgid "Scaler sharpness" +msgstr "Ostrina" + +# +msgid "Scaling mode" +msgstr "Način skaliranja" + +msgid "Scan" +msgstr "" + +# +msgid "Scan " +msgstr "Iskanje" + +# +#. TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' +#, python-format +msgid "Scan %s" +msgstr "Iskanje %s" + +# +#. TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' +#, python-format +msgid "Scan %s band" +msgstr "Iskanje pasa %s" + +# +msgid "Scan additional SR" +msgstr "Iskanje dodatnih SR" + +# +msgid "Scan files..." +msgstr "Iskanje datotek" + +# +msgid "Scan wireless networks" +msgstr "Iskanje brezžičnih omrežij" + +msgid "Scan your network for wireless access points and connect to them using your selected wireless device.\n" +msgstr "V vašem omrežju poiščite brezzične dostopne točke in se povežite na želeno točko.\n" + +#, python-format +msgid "Scanning %s..." +msgstr "Pregledovanje %s ..." + +#. TRANSLATORS: The stb is performing a channel scan, progress percentage is printed in '%d' (and '%%' will show a single '%' symbol) +#, python-format +msgid "Scanning - %d%% completed" +msgid_plural "Scanning - %d%% completed" +msgstr[0] "Pregledovanje - zaključeno je %d%% pregleda!" +msgstr[1] "Pregledovanje - zaključeno je %d%% pregleda!" +msgstr[2] "Pregledovanje - zaključeno je %d%% pregleda!" +msgstr[3] "Pregledovanje - zaključeno je %d%% pregleda!" + +#, python-format +msgid "Scanning completed, %d channel found" +msgid_plural "Scanning completed, %d channels found" +msgstr[0] "Pregledovanje je uspešno zaključeno! Najdeno je bilo %d kanalov." +msgstr[1] "Pregledovanje je uspešno zaključeno! Najdeno je bilo %d kanalov." +msgstr[2] "Pregledovanje je uspešno zaključeno! Najdeno je bilo %d kanalov." +msgstr[3] "Pregledovanje je uspešno zaključeno! Najdeno je bilo %d kanalov." + +msgid "Scanning failed!" +msgstr "Pregledovanje ni uspelo!" + +msgid "Scanning..." +msgstr "Pregledovanje ..." + +# +msgid "Scans default lamedbs sorted by satellite with a connected dish positioner" +msgstr "Iskanje privzetih lamedbs razvrščenih po satelitih s povezanimi pozicionerji." + +# +msgid "Search east" +msgstr "Iskanje Vzhod-a" + +# +msgid "Search west" +msgstr "Iskanje Zahod-a" + +msgid "Searching" +msgstr "Iskanje" + +msgid "Searching east ..." +msgstr "Iskanje na vzhodu ..." + +# +msgid "Searching for available updates. Please wait..." +msgstr "Iskanje posodobitev ... Prosim počakajte!" + +# +msgid "Searching for new installed or removed packages. Please wait..." +msgstr "Iskanje na novo nameščenih ali odstranjenih paketkov ... Prosim počakajte!" + +msgid "Searching west ..." +msgstr "Iskanje na zahodu ..." + +msgid "Second cable of motorized LNB" +msgstr "" + +# +msgid "Secondary DNS" +msgstr "Sekundarni DNS" + +# +msgid "Seek" +msgstr "Iskanje" + +# +msgid "Seek backward" +msgstr "Preskok nazaj" + +# +msgid "Seek backward (enter time)" +msgstr "Preskok nazaj (vnos časa)" + +# +msgid "Seek forward" +msgstr "Preskok naprej" + +# +msgid "Seek forward (enter time)" +msgstr "Preskok naprej (vnos časa)" + +# +msgid "Select" +msgstr "Izberite" + +# +msgid "Select CAId" +msgstr "Izberite CAId" + +# +msgid "Select HDD" +msgstr "Izberite trdi disk" + +# +msgid "Select a bouquet" +msgstr "Izberite seznam priljubljenih kanalov" + +# +msgid "Select a movie" +msgstr "Izberite posnetek" + +# +msgid "Select a network adapter" +msgstr "Izberite omrežni vmesnik" + +# +msgid "Select a skin" +msgstr "Izberite preobleko" + +# +msgid "Select a tuner" +msgstr "Izberite kanalnik" + +# +msgid "Select a wireless network" +msgstr "Izberite brezzično omrežje" + +msgid "Select action" +msgstr "" + +#, python-format +msgid "Select action for timer %s:" +msgstr "" + +msgid "Select all" +msgstr "" + +msgid "Select an image to be downloaded" +msgstr "Izberite sliko za prenos" + +# +msgid "Select audio track" +msgstr "Izberite zvočni nosilec" + +# +msgid "Select backup files" +msgstr "Izberite datoteke, ki jih boste varnostno kopirali" + +# +msgid "Select backup location" +msgstr "Izberite lokacijo varnostnih kopij" + +# +msgid "Select channel to record from" +msgstr "Izberite kanal za snemanje" + +msgid "Select copy destination for:" +msgstr "Izberite končni cilj za:" + +msgid "Select default EPG type..." +msgstr "Izberite osnovni EPG tip!" + +# +msgid "Select desired image from feed list" +msgstr "Izberite željeno sliko (image) iz liste" + +# +msgid "Select destination for:" +msgstr "Izberite končno pot za:" + +# +msgid "Select files for backup." +msgstr "Izberite datoteke za varnostno kopiranje." + +# +msgid "Select files/folders to backup" +msgstr "Izberite datoteke za varnostno kopijo" + +# +msgid "Select input device" +msgstr "Izberite vhodno napravo" + +# +msgid "Select input device." +msgstr "Izberite vhodno napravo." + +# +msgid "Select interface" +msgstr "Izberite vmesnik" + +# +msgid "Select location" +msgstr "Izberite lokacijo" + +# +msgid "Select movie" +msgstr "Izberite posnetek" + +# +msgid "Select provider to add..." +msgstr "Izberite ponudnika, ki ga želite dodati." + +# +msgid "Select refresh rate" +msgstr "Izberite hitrost osveževanja" + +msgid "Select satellites" +msgstr "" + +# +msgid "Select service to add..." +msgstr "Izberite kanal, ki ga želite dodati." + +msgid "Select sort method:" +msgstr "" + +# +msgid "Select target folder" +msgstr "Izberite ciljno mapo" + +# +msgid "Select the movie path" +msgstr "Izberite pot do posnetka" + +# +msgid "Select upgrade source" +msgstr "Izberite vir nadgradnje" + +# +msgid "Select upgrade source to edit." +msgstr "Izberite vir, ki ga boste urejali." + +# +msgid "Select video input with up/down buttons" +msgstr "Z gor in dol tipkami izberite video vhod" + +# +msgid "Select video mode" +msgstr "Izberite video način" + +# +msgid "Select wireless network" +msgstr "Izberite brezzično omrežje" + +msgid "Select your provider, and press OK to start the scan" +msgstr "Izberite vašega operaterja in za začetek iskanja pritisnite OK!" + +msgid "Selecting satellites 1 (USALS)" +msgstr "" + +msgid "Selecting satellites 2 (USALS)" +msgstr "" + +# +msgid "Send DiSEqC only on satellite change" +msgstr "Pošlji DiSEqC signal samo ob menjavi satelita" + +# +msgid "Separate titles with a main menu" +msgstr "Razdeljeni naslovi z glavnim menijem" + +# +msgid "Sequence repeat" +msgstr "Ponovi zaporedje" + +# +msgid "Serbian" +msgstr "Srbsko" + +# +msgid "Service" +msgstr "Informacije o trenutnem kanalu" + +# +msgid "Service has been added to the favourites." +msgstr "Kanal je dodan med priljubljene." + +# +msgid "Service has been added to the selected bouquet." +msgstr "Kanal je dodan v izbran paket." + +# +msgid "Service info" +msgstr "Info. o kanalu" + +# +msgid "" +"Service invalid!\n" +"(Timeout reading PMT)" +msgstr "" +"Kanal neveljaven!\n" +"(Potekel čas branja PMT)" + +msgid "Service name" +msgstr "Ime kanala" + +# +msgid "" +"Service not found!\n" +"(SID not found in PAT)" +msgstr "" +"Kanala ni moč najti!\n" +"(SID ni v PAT)" + +msgid "Service reference" +msgstr "Referenca kanala" + +# +msgid "Service scan" +msgstr "Iskanje kanalov" + +# +msgid "Service searching" +msgstr "Iskanje kanalov" + +# +msgid "Service title mode" +msgstr "Način naslova kanala" + +# +msgid "" +"Service unavailable!\n" +"Check tuner configuration!" +msgstr "" +"Kanal ni dostopen!\n" +"Preverite nastavitve kanalnika." + +# +msgid "Services" +msgstr "Kanali" + +msgid "Set default" +msgstr "" + +# +msgid "Set end time" +msgstr "Določite čas konca" + +msgid "Set fixed" +msgstr "Določi fiksno" + +msgid "Set fps for external subtitles" +msgstr "" + +# +msgid "Set interface as default Interface" +msgstr "Nastavite kot privzet vmesnik" + +msgid "Set limits" +msgstr "Določitev meja" + +# +msgid "Set the type of the progress indication in the channel selection screen." +msgstr "Grafični prikaz poteka TV kanala - v seznamu kanalov" + +msgid "Set time window to 1 hour" +msgstr "Določi časovno okno na 1 uro" + +msgid "Set time window to 2 hours" +msgstr "Določi časovno okno na 2 uri" + +msgid "Set time window to 3 hours" +msgstr "Določi časovno okno na 3 ure" + +msgid "Set time window to 4 hours" +msgstr "Določi časovno okno na 4 ure" + +msgid "Set time window to 5 hours" +msgstr "Določi časovno okno na 5 ur" + +msgid "Set time window to 6 hours" +msgstr "" + +# +msgid "Set voltage and 22KHz" +msgstr "Nastavi napetost in 22KHz " + +# +msgid "Settings" +msgstr "Nastavitve" + +# +msgid "Setup" +msgstr "Nastavitve" + +msgid "Setup menu" +msgstr "Nastavitve" + +# +msgid "Setup mode" +msgstr "Nastavitveni način" + +msgid "Setup your positioner" +msgstr "Nastavitev pozicionerja" + +# +msgid "Setup your satellite equipment" +msgstr "Nastavljanje satelitske opreme" + +# +#, python-format +msgid "Shall the USB stick wizard proceed and program the image file %s into flash memory?" +msgstr "" + +# +msgid "Sharpness" +msgstr "Ostrina" + +msgid "Short filenames" +msgstr "Kratka imena datotek" + +# +msgid "Show EIT now/next in infobar" +msgstr "Prikaz EIT trenutnega/naslednjega dogodka v info. vrstici" + +# +msgid "Show EPG for current channel..." +msgstr "Prikaz EPG za trenutni kanal" + +# +msgid "Show EPG..." +msgstr "Prikaz EPG" + +msgid "Show Games show" +msgstr "" + +msgid "Show SNR percentage instead of dB value" +msgstr "Prikaz SNR vrednosti v odstotkih, namesto v dB" + +msgid "Show VCR scart on main menu" +msgstr "" + +# +msgid "Show WLAN status" +msgstr "Prikaz stanja brezzične mreže" + +# +msgid "Show animation while busy" +msgstr "Ko je sprejemnik zaposlen, naj se prikazuje animacija" + +# +msgid "Show background in radio mode" +msgstr "Prikaz ozadja v radio načinu" + +msgid "Show bouquet selection menu" +msgstr "Prikaz izbirnika priljubljenih seznamov kanalov" + +msgid "Show busy indicator when the system is busy." +msgstr "Kadar je sprejemnik zaposlen, naj se prikazuje ustrezen indikator" + +# +msgid "Show channel numbers in channel selection" +msgstr "Številčenje posameznih kanalov - v seznamu kanalov" + +msgid "Show columns" +msgstr "" + +msgid "Show crypto icons" +msgstr "" + +# +msgid "Show crypto info in infobar" +msgstr "Prikaz kodiranja kanala v informacijski vrstici" + +msgid "Show detailed event info" +msgstr "Prikaz podrobnih informacij o dogodku" + +# +msgid "Show event details" +msgstr "Prikaz informacij o dogodku" + +# +msgid "Show event-progress in channel selection" +msgstr "Grafični prikaz poteka TV kanala - v seznamu kanalov" + +# +msgid "Show extended description" +msgstr "Prikaz razširjenih informacij" + +# +msgid "Show extensions..." +msgstr "Seznam vtičnikov" + +msgid "Show icon for new/unseen items" +msgstr "Prikaz ikone za nove/neogledane datoteke" + +msgid "Show in extensions menu" +msgstr "" + +# +msgid "Show info" +msgstr "Prikaz informacij" + +# +msgid "Show info line" +msgstr "Prikaz info. vrstice" + +# +msgid "Show infobar on channel change" +msgstr "Prikaz info. vrstice med prehajanjem po kanalih" + +# +msgid "Show infobar on event change" +msgstr "Prikaz info. vrstice ob spremembi dogodka" + +# +msgid "Show infobar on skip forward/backward" +msgstr "Prikaz info. vrstice med predvajanjem naprej/nazaj" + +msgid "Show latest commits on sourceforge" +msgstr "" + +# +msgid "Show message when recording starts" +msgstr "Prikaz obvestila ob začetku snemanja" + +# +msgid "Show movie lengths in movielist" +msgstr "Prikaz dolžine posnetkov v seznamu datotek" + +msgid "Show multi channel EPG" +msgstr "" + +msgid "Show picons in channel list" +msgstr "" + +# +msgid "Show positioner movement" +msgstr "Prikaz premikanja rotorja" + +msgid "Show screensaver" +msgstr "" + +# +msgid "Show second infobar" +msgstr "Prikaz razširjene informacijske vrstice" + +msgid "Show service type icons" +msgstr "" + +# +msgid "Show services beginning with" +msgstr "Prikaz kanalov, ki se začnejo z" + +# +msgid "Show shutdown menu" +msgstr "Prikaz menija za izklop" + +msgid "Show single service EPG" +msgstr "" + +msgid "Show status icons in Movielist" +msgstr "" + +# +msgid "Show status icons in movie list" +msgstr "Prikaz statusnih ikon v seznamu datotek" + +# +msgid "Show status icons in movielist" +msgstr "Prikaz statusnih ikon v seznamu datotek" + +# +msgid "Show tag menu" +msgstr "Prikaz menija oznak (tags)" + +# +msgid "Show the radio player..." +msgstr "Prikaz radio predvajalnika" + +# +msgid "Show the tv player..." +msgstr "Prikaz TV predvajalnika" + +msgid "Show warning when timeshift is stopped" +msgstr "" + +# +msgid "Shows the state of your wireless LAN connection.\n" +msgstr "Prikaz stanja brezžične mrežne povezave.\n" + +# +msgid "Shuffle playlist" +msgstr "Naključni izbor datotek iz seznama za predvajanje" + +# +msgid "Shutdown" +msgstr "Izklop" + +msgid "Shutdown when in Standby" +msgstr "" + +msgid "Side by side" +msgstr "" + +msgid "Signal OK, proceeding" +msgstr "Signal je zadovoljiv, nadaljujem ..." + +msgid "Signal quality" +msgstr "Kakovost signala" + +# +msgid "Signal strength:" +msgstr "Moč signala:" + +# +msgid "Signal: " +msgstr "Signal:" + +# +msgid "Similar" +msgstr "Podobno" + +# +msgid "Similar broadcasts:" +msgstr "Sorodne oddaje:" + +# +msgid "Simple" +msgstr "Enostavno" + +# +msgid "Simple titleset (compatibility for legacy players)" +msgstr "Enostavna oblika (združljivost s starejšimi predvajalniki)" + +# +msgid "Single" +msgstr "Posamezen" + +# +msgid "Single EPG" +msgstr "Enostavni EPG" + +# +msgid "Single satellite" +msgstr "Posamezni satelit" + +# +msgid "Single step (GOP)" +msgstr "Po korakih (GOP)" + +# +msgid "Single transponder" +msgstr "Posamezni transponder" + +msgid "Site latitude" +msgstr "" + +msgid "Site longitude" +msgstr "" + +# +msgid "Skin" +msgstr "Izbor predloge" + +# +msgid "Skins" +msgstr "Predloge" + +msgid "Skip empty services" +msgstr "Preskoči kanale brez sporeda" + +msgid "Skip internet connection check (disables automatic package installation)" +msgstr "Preskoči preverbo internetne povezave (izklop samodejne namestitve paketov)" + +# +msgid "Sleep timer" +msgstr "Časovnik spanja" + +msgid "SleepTimer Configuration" +msgstr "" + +msgid "Sleeptimer" +msgstr "" + +# +msgid "Slide picture in loop" +msgstr "Prikaz slike v zanki" + +# +msgid "Slide show interval (sec.)" +msgstr "Interval prikazovanja (v sekundah)" + +# +#, python-format +msgid "Slot %d" +msgstr "Slot %d" + +msgid "Slovak" +msgstr "" + +# +msgid "Slovenian" +msgstr "Slovenščina" + +# +msgid "Slow" +msgstr "Počasi" + +# +msgid "Slow motion speeds" +msgstr "Hitrosti počasnega predvajanja" + +# +msgid "Small progress" +msgstr "Se izvaja" + +msgid "Social/Political/Economics" +msgstr "" + +# +msgid "SoftCam / CI" +msgstr "Emulatorji" + +# +msgid "Softcam type" +msgstr "Vrsta emulatorja" + +# +msgid "Software" +msgstr "Program. oprema" + +# +msgid "Software management" +msgstr "Posodobitev sprejemnika" + +# +msgid "Software manager setup" +msgstr "Software Manager nastavitve" + +# +msgid "Software restore" +msgstr "Obnova prog. opreme" + +# +msgid "Software update" +msgstr "Nadgradnja OpenPLi slike" + +msgid "Softwaremanager information" +msgstr "Softwaremanager informacije" + +# +msgid "Some plugins are not available:\n" +msgstr "Nekateri vtičniki niso na voljo:\n" + +# +#, python-format +msgid "Sorry, %s has not been installed!" +msgstr "Oprostite, %s ni bil nameščen!" + +msgid "Sorry, deleting directories can (for now) only be done through the trash can." +msgstr "Oprostite, brisanje map je možno samo preko smetnjaka." + +# +msgid "Sorry, no backups found!" +msgstr "Varnostne kopije ne obstajajo!" + +# +msgid "Sorry, no details available!" +msgstr "Oprostite, dodatne informacije niso na voljo!" + +# +msgid "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." +msgstr "Prostor na katerega želite zapisati varnostno kopijo ni zapisljiv!" + +msgid "Sort" +msgstr "Razvrščanje" + +# +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort A-Z" +msgstr "Razvrstitev A-Z" + +msgid "Sort by" +msgstr "" + +msgid "Sort list:" +msgstr "" + +# +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort time" +msgstr "Čas urejanja" + +# +msgid "Sound" +msgstr "Zvok" + +# +msgid "Sound carrier" +msgstr "Zvočni nosilec" + +msgid "Source request" +msgstr "" + +# +msgid "South" +msgstr "Jug" + +# +msgid "Spanish" +msgstr "Špansko" + +msgid "Specify the end time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the end time until the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify the start time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the start time when the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify timeframe to ignore inactivity sleeptimer" +msgstr "" + +msgid "Specify timeframe to ignore the shutdown in standby" +msgstr "" + +# +msgid "Split preview mode" +msgstr "" + +msgid "Splitscreen" +msgstr "" + +msgid "Sports" +msgstr "" + +# +msgid "Standard" +msgstr "Standardno" + +msgid "Standart list" +msgstr "" + +# +msgid "Standby" +msgstr "Stanje pripravljenosti" + +# +msgid "Standby / restart" +msgstr "Možnosti izklopa sprejemnika" + +msgid "Standby after current event" +msgstr "" + +# +#, python-format +msgid "Standby fan %d PWM" +msgstr "Ventilator v stanju pripravljenosti %d PWM" + +# +#, python-format +msgid "Standby fan %d voltage" +msgstr "Ventilator v stanju pripravljenosti %d voltaža" + +msgid "Standby in " +msgstr "" + +msgid "StandbyLED" +msgstr "" + +# +msgid "Start from the beginning" +msgstr "Začnite od začetku" + +msgid "Start offline decode" +msgstr "Prični z offline dekodiranjem" + +# +msgid "Start recording?" +msgstr "Začnem snemanje?" + +# +msgid "Start test" +msgstr "Zaženite test" + +# +msgid "Start time" +msgstr "Čas začetka" + +msgid "Start time to ignore inactivity sleeptimer" +msgstr "" + +msgid "Start time to ignore shutdown in standby" +msgstr "" + +# +msgid "Start timeshift" +msgstr "Pričetek časovnega zamika" + +msgid "Start with list screen" +msgstr "" + +# +msgid "Starting on" +msgstr "Začnem ob" + +msgid "Startup the set top box in standby" +msgstr "" + +msgid "Startup to Standby" +msgstr "" + +# +msgid "Step east" +msgstr "Korak na Vzhod" + +# +msgid "Step west" +msgstr "Korak na Zahod" + +msgid "Stepped east" +msgstr "" + +msgid "Stepped west" +msgstr "" + +# +msgid "Stop" +msgstr "Zaustavitev" + +# +msgid "Stop PiP" +msgstr "Ustavitev Slike v Sliki" + +# +msgid "Stop current event and disable coming events" +msgstr "Ustavite trenutni dogodek in onemogočite prihodnje dogodke." + +# +msgid "Stop current event but not coming events" +msgstr "Ustavite trenutni dogodek, ne pa prihodnjih dogodkov" + +# +msgid "Stop entry" +msgstr "Ustavitev vnosa" + +# +msgid "Stop playing this movie?" +msgstr "Ustavim predvajanje filma?" + +msgid "Stop recording" +msgstr "Zaključi s snemanjem" + +msgid "Stop recording and delete" +msgstr "Zaključi s snemanjem in izbriši" + +msgid "Stop service on return to movie list" +msgstr "" + +# +msgid "Stop test" +msgstr "Ustavim test" + +# +msgid "Stop testing plane after # failed transponders" +msgstr "Ustavite testiranje po # napačnih transponderjih" + +# +msgid "Stop testing plane after # successful transponders" +msgstr "Ustavite testiranje po # uspelih transponderjih" + +msgid "Stop timer recording" +msgstr "" + +# +msgid "Stop timeshift" +msgstr "Ustavitev časovnega zamika" + +# +msgid "Stop timeshift?" +msgstr "Ustavim časovni zamik?" + +# +msgid "Stopped" +msgstr "Ustavljeno" + +msgid "Store at index" +msgstr "" + +# +msgid "Store position" +msgstr "Shranite položaj" + +# +msgid "Stored position" +msgstr "Shranjeni položaji" + +msgid "Stream" +msgstr "Pretok" + +msgid "Stream request" +msgstr "Zahtevek za pričetek pretakanja" + +msgid "Strongest position" +msgstr "" + +# +msgid "Subservice list..." +msgstr "Seznam pod-storitev" + +# +msgid "Subservices" +msgstr "Pod-storitve" + +msgid "Subtitle Quickmenu" +msgstr "" + +# +msgid "Subtitle alignment" +msgstr "Poravnava podnapisov" + +# +msgid "Subtitle border width" +msgstr "Širina obrobe pisave" + +msgid "Subtitle delay when timing is bad" +msgstr "" + +# +msgid "Subtitle delay when timing lacks" +msgstr "Zamik podnapisov, ko je to potrebno" + +# +msgid "Subtitle font size" +msgstr "Velikost podnapisov" + +# +msgid "Subtitle language selection 1" +msgstr "Jezik podnapisa - 1" + +# +msgid "Subtitle language selection 2" +msgstr "Jezik podnapisa - 2" + +# +msgid "Subtitle language selection 3" +msgstr "Jezik podnapisa - 3" + +# +msgid "Subtitle language selection 4" +msgstr "Jezik podnapisa - 4" + +# +msgid "Subtitle position" +msgstr "Položaj podnapisov" + +# +msgid "Subtitle selection" +msgstr "Izbira podnapisov" + +msgid "Subtitle selection..." +msgstr "Izbira podnapisov" + +# +msgid "Subtitle settings" +msgstr "Napredni OpenPLi podnapisi" + +# +msgid "Subtitles" +msgstr "Podnapisi" + +# +msgid "Sun" +msgstr "Ned" + +# +msgid "Sunday" +msgstr "Nedelja" + +# +msgid "Swap PiP and main picture" +msgstr "Menjava Slike v Sliki z glavno sliko" + +# +msgid "Swap services" +msgstr "Zamenjava kanala" + +# +msgid "Swedish" +msgstr "Švedsko" + +msgid "Switch TV to correct input" +msgstr "Preklop TVja na pravilni vhod" + +msgid "Switch between filelist/playlist" +msgstr "" + +msgid "Switch between normal mode and list mode" +msgstr "" + +msgid "Switch to HDMI in mode" +msgstr "" + +# +msgid "Switch to filelist" +msgstr "Preklop na seznam datotek" + +msgid "Switch to next channel" +msgstr "" + +# +msgid "Switch to next channel in history" +msgstr "Naslednji kanal v zgodovini" + +# +msgid "Switch to next sub service" +msgstr "Preklop na naslednjo pod-storitev" + +# +msgid "Switch to playlist" +msgstr "Preklop na seznam datotek" + +# +msgid "Switch to previous channel" +msgstr "Preklop na prejšnji kanal" + +# +msgid "Switch to previous channel in history" +msgstr "Predhodni kanal v zgodovini" + +# +msgid "Switch to previous sub service" +msgstr "Preklop na prejšnjo pod-storitev" + +# +msgid "Switchable tuner types:" +msgstr "Preklopljive vrste kanalnikov:" + +# +msgid "Symbol rate" +msgstr "Razmerje simbolov" + +msgid "Symbol rate:" +msgstr "" + +msgid "Sync failure moving back to origin !" +msgstr "" + +# +msgid "System" +msgstr "Sistem " + +# +#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) +msgid "TRANSLATOR_INFO" +msgstr "" +"slovenski prevod za OpenPLi - @Taykun345\n" +"http://www.linux-sprejemniki.info\n" +"datum prevoda - 1.12.2012" + +# +msgid "TS file is too large for ISO9660 level 1!" +msgstr "TS datoteka prevelika za ISO9660 level 1!" + +msgid "TSID" +msgstr "TSID" + +msgid "TV physical address report" +msgstr "" + +msgid "TXT PID" +msgstr "TXT PID" + +# +msgid "Table of contents for collection" +msgstr "Kazalo vsebine zbirke" + +# +msgid "Tags" +msgstr "Zaznamki" + +# +msgid "Teletext subtitle color" +msgstr "Barva teletekst podnapisov" + +# +msgid "Temperature and fan control" +msgstr "Nadzor ventilatorja in temperature" + +# +msgid "Terrestrial" +msgstr "Zemeljski" + +# +msgid "Terrestrial provider" +msgstr "Zemeljski ponudnik" + +# +msgid "Test DiSEqC settings" +msgstr "Testiranje DiSEqC nastavitev" + +# +msgid "Test mode" +msgstr "Testni način" + +msgid "Test the network configuration of your receiver.\n" +msgstr "Preizkušanje mrežnih nastavitev vašega sprejemnika.\n" + +# +msgid "Test type" +msgstr "Vrsta testa" + +# +msgid "Text color" +msgstr "barva besedila" + +msgid "Thai" +msgstr "" + +# +msgid "" +"Thank you for using the wizard.\n" +"Please press OK to continue." +msgstr "Hvala, da ste uporabili čarovnik. Za nadaljevanje pritisnite OK!" + +# +msgid "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." +msgstr "" +"Hvala, da ste uporabili čarovnik. Sprejemnik je sedaj pripravljen za uporabo.\n" +"Za nadaljevanje pritisnite OK!" + +msgid "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?" +msgstr "" + +msgid "The PIN code has been changed successfully." +msgstr "PIN koda je spremenjena." + +msgid "The PIN codes you entered are different." +msgstr "Napačna PIN koda." + +msgid "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" +msgstr "" + +# +msgid "The backup failed. Please choose a different backup location." +msgstr "Izdelava varnostne kopije ni uspela. Prosim, da izberite drugo lokacijo." + +# +#, python-format +msgid "" +"The current beta image might not be stable.\n" +"For more information see %s." +msgstr "" +"Trenutna verzija OpenPLi slike ni stabilna.\n" +"Za več informacij obiščite %s." + +#, python-format +msgid "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." +msgstr "" +"Mapa %s ni zapisljiva.\n" +"Poskrbite, da izberite zapisljivo mapo." + +# +#, python-format +msgid "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" +msgstr "" +"Najdene naprave:\n" +"\n" +"%s\n" +"\n" +"Ali želite zapisati orodje za USB programsko nadgradnjo na ključ?" + +# +msgid "The following files were found..." +msgstr "Najdene datoteke:" + +msgid "The md5sum validation failed, the file may be corrupted!" +msgstr "md5sum preverba ni uspela. Obstaja verjetnost, da je datoteka okvarjena." + +# +msgid "" +"The network wizard extension is not installed!\n" +"Please install it." +msgstr "NetworkWizard vtičnik ni nameščen. Prosim, da ga namestite!" + +# +#, python-format +msgid "The path %s already exists." +msgstr "Pot %s že obstaja." + +# +msgid "The pin code you entered is wrong." +msgstr "Napačna PIN koda." + +# +#, python-format +msgid "The results have been written to %s." +msgstr "Rezultati so bili zapisani na %s." + +# +msgid "The sleep timer has been activated." +msgstr "Časovnik spanja je omogočen." + +# +msgid "The sleep timer has been disabled." +msgstr "Časovnik spanja je onemogočen." + +# +msgid "" +"The software management extension is not installed!\n" +"Please install it." +msgstr "Vtičnik SoftwareManagement ni nameščen. Prosim za namestitev!" + +#, python-format +msgid "The status of the current beta image could not be checked because %s can not be reached." +msgstr "Ni možno preveriti statusa trenutne beta OpenPLi slike, ker je spletna stran %s nedosegljiva!" + +# +msgid "The timer file (timers.xml) is corrupt and could not be loaded." +msgstr "Datoteka s časovniki (timers.xml) je okvarjena in je ni možno namestiti." + +msgid "The user interface of your receiver is restarting" +msgstr "Poteka ponovni zagon uporabniškega vmesnika (GUI) ..." + +msgid "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" +msgstr "" +"Uporabniški vmesnik sprejemnika se bo v kratkem ponovno zagnal!\n" +"Razlog je napaka v datoteki mytest.py" + +# +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." +msgstr "Vtičnik za brezzično mrežo ni nameščen! Prosim, da ga namestite!" + +# +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it." +msgstr "" +"Vtičnik za brezžično mrežo ni nameščen!\n" +"Prosim, da ga namestite." + +# +msgid "The wizard can backup your current settings. Do you want to do a backup now?" +msgstr "Čarovnik bo kreiral varnostno kopijo vaših trenutnih nastavitev. Želite to storiti sedaj?" + +#, python-format +msgid "The wizard found a configuration backup. Do you want to restore your old settings from %s?" +msgstr "Čarovnik je našel shranjene nastavitve. Želite obnoviti te nastavitve iz %s?" + +# +msgid "The wizard is finished now." +msgstr "Čarovnik je končan." + +# +msgid "There are at least " +msgstr "Obstaja vsaj" + +# +#, python-format +msgid "There are at least %s updates available." +msgstr "Na voljo je %s posodobitev." + +# +msgid "There are currently no outstanding actions." +msgstr "" + +# +msgid "There are no updates available." +msgstr "Posodobitev ni na voljo." + +msgid "There is no signal to lock on !" +msgstr "Ni signala!" + +# +msgid "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" +msgstr "" +"Na izbranem delu trdega diska morda ni dovolj prostora.\n" +"Ali želite nadaljevati?" + +# +msgid "This DVD RW medium is already formatted - reformatting will erase all content on the disc." +msgstr "DVD RW medij je že formatiran-ponovno formatiranje bo izbrisalo vso vsebino na mediju!" + +msgid "" +"This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!" +msgstr "" + +# +msgid "This plugin is installed." +msgstr "Ta vtičnik je nameščen." + +# +msgid "This plugin is not installed." +msgstr "Ta vtičnik ni nameščen." + +# +msgid "This plugin will be installed." +msgstr "Ta vtičnik bo nameščen." + +# +msgid "This plugin will be removed." +msgstr "Ta vtičnik bo odstranjen." + +# +#, python-format +msgid "This receiver cannot decode %s streams!" +msgstr "Sprejemnik ne more odkleniti %s tokov!" + +# +msgid "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration" +msgstr "" +"Preverja se nastavitev imenskih strežnikov.\n" +"V kolikor se pojavi opozorilo \"nepotrjeno\":\n" +"- preverite vaš DHCP, kable in nastavitve vmesnika\n" +"- preverite nastavitve pri ročno nastavljenih imenskih strežnikih - \"Imenski strežnik\"" + +# +msgid "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" +msgstr "" +"Preverja se povezanost omrežnega kabla v vaš omrežni vmesnik. \n" +"V kolikor se pojavi opozorilo \"ni povezave\":\n" +"- preverite ali je omrežni kabel priključen\n" +"- preverite ali je omrežni kabel nepoškodovan" + +# +msgid "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" +msgstr "" +"Preverja se veljavnost izbranega IP naslova vašega omrežnega vmesnika.\n" +"V kolikor se pojavi obvestilo \"nepotrjen\":\n" +"- ni veljavnega IP naslova\n" +"- preverite DHCP nastavitve, omrežni kabel in nastavitve mrežnega vmesnika" + +# +msgid "" +"This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." +msgstr "" +"Preverja se nastavitev samodejnega IP naslavljanja vašega LAN vmesnika z DHCP.\n" +"V kolikor se pojavi opozorilo \"onemogočeno\":\n" +"- LAN vmesnik je nastavljen na ročno IP naslavljanje\n" +"- preverite pravilnost vnešenih IP informacij v oknu Nastavitev vmesnika.\n" +"V kolikor se pojavi opozorilo \"omogočeno\":\n" +"- preverite delovanje DHCP strežnika v vašem omrežju." + +# +msgid "This test detects your configured LAN adapter." +msgstr "Ta test preveri nastavljene omrežne vmesnike. " + +msgid "" +"This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\n" +"Are you sure?" +msgstr "" + +# +msgid "Three" +msgstr "Tri" + +# +msgid "Threshold" +msgstr "Prag" + +# +msgid "Thu" +msgstr "Čet" + +# +msgid "Thumbnails" +msgstr "Sličice" + +# +msgid "Thursday" +msgstr "Četrtek" + +# +msgid "Time" +msgstr "Čas" + +# +msgid "Time scale" +msgstr "Izbira časovnika" + +# +msgid "Timer" +msgstr "Časovnik" + +msgid "Timer Overview" +msgstr "" + +# +msgid "Timer edit" +msgstr "Urejanje časovnika" + +# +msgid "Timer editor" +msgstr "Urejevalnik časovnikov" + +# +msgid "Timer entry" +msgstr "Vnos časovnika" + +# +msgid "Timer log" +msgstr "Dnevnik časovnika" + +# +msgid "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" +msgstr "" +"Zaznano je bilo prekrivanje časovnikov v timers.xml!\n" +"Prosim, ponovno preverite!" + +msgid "Timer overview" +msgstr "Pregled časovnikov" + +# +msgid "Timer recording location" +msgstr "Lokacija \"timer\" snemanja" + +# +msgid "Timer sanity error" +msgstr "Napaka časovnika" + +# +msgid "Timer selection" +msgstr "Izbira časovnika" + +msgid "Timer selection..." +msgstr "" + +# +msgid "Timer type" +msgstr "Vrsta časovnika" + +# +msgid "Timeshift" +msgstr "Časovni zamik" + +msgid "Timeshift Live" +msgstr "" + +# +msgid "Timeshift location" +msgstr "Lokacija časovnega zamika" + +# +msgid "Timeshift not possible!" +msgstr "Časovni zamik ni možen!" + +# +msgid "Timezone" +msgstr "Časovni pas" + +# +msgid "Title" +msgstr "Naslov" + +# +msgid "Title properties" +msgstr "Lastnosti naslova" + +# +msgid "Titleset mode" +msgstr "Način za določanje naslovov" + +# +msgid "To audio selection" +msgstr "Pojdite na izbiro zvočne sledi" + +# +msgid "To subtitle selection" +msgstr "Pojdite na izbiro podnapisa" + +msgid "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." +msgstr "" +"Če želite nadgraditi vaš sprejemnik na najnovejšo verzijo slike, sledite naslednjim navodilom:\n" +"1) Izklopite sprejemnik z uporabo stikala na zadnji strani sprejemnika in v njega vtaknite USB ključek. Uporabite zadnje USB priklope!\n" +"2) Sprejemnik vklopite in obenem pritisnite in tiščite tipko \"DOL\", ki se nahaja na sprednji strani sprejemnika. Tipko je potrebno tiščati približno 10 sekund.\n" +"3)Počakajte, da se sprejemnik zažene in sledite navodilom na TV ekranu." + +# +msgid "Today" +msgstr "Danes" + +# +msgid "Toggle a cut mark at the current position" +msgstr "Aktiviranje rezanja na trenutno označenem položaju" + +# +msgid "Tone amplitude" +msgstr "Tonska amplituda" + +# +msgid "Tone mode" +msgstr "Način zvoka" + +# +msgid "Toneburst" +msgstr "Toneburst" + +# +msgid "Toneburst A/B" +msgstr "Toneburst A/B" + +msgid "Top and bottom" +msgstr "Zgoraj in spodaj" + +# +msgid "Track" +msgstr "Zapis" + +# +msgid "Translation" +msgstr "Prevod" + +# +msgid "Translation:" +msgstr "Prevod:" + +msgid "Translations" +msgstr "" + +# +msgid "Transmission mode" +msgstr "Način posredovanja" + +# +msgid "Transponder" +msgstr "Transponder" + +# +msgid "Transponder type" +msgstr "Vrsta transponderja" + +msgid "Trash can" +msgstr "Smetnjak" + +# +msgid "Tries left:" +msgstr "Preostalo št. poskusov:" + +# +msgid "Try to find used transponders in cable network.. please wait..." +msgstr "Poteka iskanje transponderjev v kabelskem omrežju ... Prosim počakajte!" + +# +msgid "Trying to download a new packetlist. Please wait..." +msgstr "Poteka nalaganje novega seznama paketov ... Prosim počakajte!" + +# +msgid "Tue" +msgstr "Tor" + +# +msgid "Tuesday" +msgstr "Torek" + +# +msgid "Tune" +msgstr "Nastavi" + +# +msgid "Tune and focus" +msgstr "" + +# +msgid "Tune failed!" +msgstr "Napaka v sprejemu!" + +# +msgid "Tuner" +msgstr "Kanalnik" + +# +msgid "Tuner configuration" +msgstr "Nastavitev kanalnikov" + +msgid "Tuner is not supported" +msgstr "" + +# +msgid "Tuner slot" +msgstr "Reža kanalnika" + +# +msgid "Tuner status" +msgstr "Stanje kanalnika" + +# +#, python-format +msgid "Tuner status %s" +msgstr "Stanje kanalnika %s" + +# +msgid "Tuner type" +msgstr "Vrsta kanalnika" + +# +msgid "Turkish" +msgstr "Turško" + +msgid "Turn on the power LED during standby." +msgstr "" + +msgid "Turning step size" +msgstr "" + +# +msgid "Two" +msgstr "Dva" + +# +msgid "Type" +msgstr "Vrsta" + +# +msgid "Type of scan" +msgstr "Vrsta iskanja" + +# +msgid "USALS" +msgstr "USALS" + +msgid "USALS calibration" +msgstr "USALS kalibracija" + +# +msgid "USB stick" +msgstr "USB ključek" + +# +msgid "USB stick wizard" +msgstr "Čarovnik USB ključa" + +msgid "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Izvaja se nadgradnja sprejemnika ...\n" +"Po nadgradnji se bo sprejemnik ponovno zagnal.\n" +"POZOR! Nadgradnja lahko traja tudi več minut." + +# +msgid "Undo install" +msgstr "" + +# +msgid "Undo uninstall" +msgstr "" + +msgid "Unencrypted" +msgstr "" + +# +msgid "UnhandledKey" +msgstr "" + +# +msgid "Unicable" +msgstr "Unicable " + +# +msgid "Unicable LNB" +msgstr "Unicable LNB" + +# +msgid "Unicable Martix" +msgstr "Unicable Matrix" + +# +msgid "Uninstall" +msgstr "Odstranitev" + +# +msgid "Universal LNB" +msgstr "Univerzalni LNB" + +msgid "Unknown" +msgstr "Neznano" + +msgid "Unmount" +msgstr "Izklop" + +# +msgid "Unsupported" +msgstr "Nepodprto" + +# +msgid "Update" +msgstr "Posodobi" + +msgid "Update and ask to reboot" +msgstr "Nadgradi in vprašaj za ponovni zagon" + +msgid "Update and reboot (recommended)" +msgstr "Nadgradnja in takojšnji ponovni zagon" + +# +msgid "Update channel list only" +msgstr "Nadgradnja seznama kanalov" + +#, python-format +msgid "Update completed, %d package was installed." +msgid_plural "Update completed, %d packages were installed." +msgstr[0] "Posodobitev je zaključena. Posodobljen je bil samo %d paket." +msgstr[1] "Posodobitev je zaključena. Posodobljen sta bila samo %d paketa." +msgstr[2] "Posodobitev je zaključena. Posodobljeni so bili %d paketi." +msgstr[3] "Posodobitev je zaključena. Posodobljenih je bilo %d paketov." + +msgid "Update completed. Do you want to reboot your receiver?" +msgstr "Nadgradnja je končana. Želite izvesti ponovni zagon sprejemnika?" + +msgid "Update failed. Your receiver does not have a working internet connection." +msgstr "Posodobitev ni bila uspešna. Sprejemnik nima delujoče internetne povezave." + +msgid "Update has completed." +msgstr "Posodobitev se je uspešno zaključina." + +# +msgid "Updatefeed not available." +msgstr "Server je trenutno nedosegljiv." + +# +msgid "Updating software catalog" +msgstr "Posodabljanje kataloga programov ..." + +# +msgid "Upgrading" +msgstr "Nadgrajujem" + +# +msgid "Use" +msgstr "Uporaba" + +# +msgid "Use DHCP" +msgstr "Uporaba DHCP" + +msgid "Use EIT EPG information when it is available." +msgstr "EIT EPG se uporablja v primerih, ko TV postaje oddajajo tudi spored. En tak primer so slovenski kanali v DVB-T." + +msgid "Use FreeSat EPG information when it is available." +msgstr "FreeSat EPG se uporablja v primerih, ko TV postaje oddajajo tudi spored. FreeSat sistem uporabljajo nekatere TV postaje iz Velike Britanije." + +msgid "Use MHW EPG information when it is available." +msgstr "Freesat MHW se uporablja v primerih, ko TV postaje oddajajo tudi spored. MHW sistem uporabljajo nekatere TV postaje iz Nizozemske." + +msgid "Use Netmed EPG information when it is available." +msgstr "Netmed EPG se uporablja v primerih, ko TV postaje oddajajo tudi spored. Netmed sistem uporabljajo nekatere TV postaje iz Grčije." + +msgid "Use TV remote control" +msgstr "Uporabite daljinski upravljalnik" + +# +msgid "Use USALS for this sat" +msgstr "Uporaba sistema USALS za ta satelit" + +msgid "Use ViaSat EPG information when it is available." +msgstr "ViaSat EPG se uporablja v primerih, ko TV postaje oddajajo tudi spored. Že ime nam pove, da je ta nasatvitev uporabna za TV kanale iz paketa VIASAT (Skandinavija)." + +msgid "Use Virgin EPG information when it is available." +msgstr "" + +# +msgid "Use a gateway" +msgstr "Uporaba prehoda" + +msgid "Use fastscan channel names" +msgstr "Uporaba \"fastscan\" poimenovanje kanalov" + +msgid "Use fastscan channel numbering" +msgstr "Uporava \"fastscan\" številčenje kanalov" + +msgid "Use frequency or channel" +msgstr "" + +msgid "Use individual settings for each directory" +msgstr "" + +# +msgid "Use interface" +msgstr "Uporaba mrežnega vmesnika" + +msgid "Use official channel numbering" +msgstr "Uporaba uradnega številčenja kanalov" + +# +msgid "Use original DVB subtitle position" +msgstr "Uporaba originalnega položaja DVB podnapisov" + +# +msgid "Use original teletext position" +msgstr "Originalen položaj teletekst podn." + +# +msgid "Use power measurement" +msgstr "Uporaba merjenja moči" + +# +msgid "Use the network wizard to configure selected network adapter" +msgstr "Za nastavljanje izbranega mrežnega vmesnika, izberite omrežni čarovnik." + +# +msgid "Use the network wizard to configure your network\n" +msgstr "Za nastavljanje vašega omrežja, uporabite omrežni čarovnik.\n" + +# +msgid "Use the up/down keys on your remote control to select an option. After that, press OK." +msgstr "Za izbiranje uporabite tipke gor/dol na vašem upravljalniku. Nato pritisnite OK." + +# +msgid "Use the wizard to set up basic features" +msgstr "Čarovnik za nastavitev osnovnih funkcionalnosti" + +msgid "Use these input device settings?" +msgstr "Uporabim nastavitve te vhodne naprave?" + +msgid "Use these settings?" +msgstr "Uporabim te nastavitve?" + +# +msgid "Use this video enhancement settings?" +msgstr "Uporabim izbrane video nastavitve?" + +# +msgid "Use trash can in movielist" +msgstr "Uporaba smetnjaka v seznamu datotek" + +# +msgid "Used service scan type" +msgstr "Uporabljena vrsta iskanja kanalov" + +msgid "User - bouquets" +msgstr "Uporabnik - seznam paketov" + +# +msgid "User defined" +msgstr "Določeno s strani uporabnika" + +msgid "User defined transponder" +msgstr "" + +msgid "User interface" +msgstr "Uporabniški vmesnik" + +# +msgid "Username" +msgstr "Uporabniško ime" + +#, python-format +msgid "Using LNB %d" +msgstr "V uporabi je LNB %d" + +msgid "Using fixed address" +msgstr "" + +#, python-format +msgid "Using tuner %s" +msgstr "V uporabi je kanalnik %s" + +msgid "Usually when the subtitle language is the same as the audio language, the subtitles will not be used. Enable this option to allow these subtitles to be used." +msgstr "Če je nastavljen jezik podnapisov enak zvočni sledi (primer je angleški zvok in angleški podnapisi), se podnapisi ne bodo prikazovali. Vklopite omenjeno možnost, če želite, da se podnapisi vseeno prikazujejo." + +# +msgid "VCR scart" +msgstr "Preklop na SCART vhod" + +# +msgid "VMGM (intro trailer)" +msgstr "VMGM (v trailer)" + +# +msgid "Vertical" +msgstr "Navpično" + +msgid "Vertical turning speed" +msgstr "" + +msgid "Video PID" +msgstr "Video PID" + +# +msgid "Video enhancement preview" +msgstr "Predogled nastavitev slike" + +# +msgid "Video enhancement settings" +msgstr "Napredne nastavitve slike" + +# +msgid "Video enhancement setup" +msgstr "Nastavitve slike" + +# +msgid "Video fine tuning" +msgstr "Pomoč pri nastavitvi TVja" + +# +msgid "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." +msgstr "" +"Izbira video vira\n" +"\n" +"Če vidite to sliko na zaslonu vašega TVja, pritisnite tipko OK ali pa izberite drugi vir.\n" +"\n" +"Naslednji video vir bo samodejno preverjen čez 10 sekund." + +# +msgid "Video mode selection." +msgstr "Izbira video načina." + +# +msgid "Video output" +msgstr "Video izhod" + +# +msgid "Video setup" +msgstr "Video nastavitve" + +# +msgid "Video wizard" +msgstr "Video čarovnik" + +#, python-format +msgid "Video: %s fps" +msgstr "" + +msgid "VideoMode" +msgstr "" + +msgid "Videocodec" +msgstr "Video kodek" + +msgid "Videoformat" +msgstr "Format videa" + +msgid "Videosize" +msgstr "Velikost videa" + +# +msgid "View Rass interactive..." +msgstr "Glejte Rass interaktivno" + +# +msgid "View details" +msgstr "Ogled podrobnosti" + +# +msgid "View list of available " +msgstr "Ogled seznama razpoložljivih" + +# +msgid "View list of available CommonInterface extensions" +msgstr "Seznam obstoječih CommonInterface vtičnikov." + +# +msgid "View list of available EPG extensions." +msgstr "Ogled seznama obstoječih EPG vtičnikov." + +# +msgid "View list of available Satellite equipment extensions." +msgstr "Ogled seznama obstoječih Satellite equipment vtičnikov." + +# +msgid "View list of available communication extensions." +msgstr "Ogled seznama obstoječih komunikacijskih vtičnikov." + +# +msgid "View list of available default settings" +msgstr "Ogled seznama obstoječih osnovnih nastavitev." + +# +msgid "View list of available display and userinterface extensions." +msgstr "Ogled seznama obstoječih Display in UserInterface vtičnikov." + +# +msgid "View list of available multimedia extensions." +msgstr "Ogled seznama obstoječih multimedijskih vtičnikov." + +# +msgid "View list of available networking extensions" +msgstr "Ogled seznama obstoječih mrežnih vtičnikov." + +# +msgid "View list of available recording extensions" +msgstr "Ogled seznama vtičnikov za snemanje." + +# +msgid "View list of available skins" +msgstr "Ogled seznama razpoložljivih predlog" + +# +msgid "View list of available software extensions" +msgstr "Ogled seznama software vtičnikov." + +# +msgid "View list of available system extensions" +msgstr "Ogeld seznama obstoječih sistemskih vtičnikov." + +# +msgid "View photos..." +msgstr "Ogled fotografij" + +# +msgid "View teletext..." +msgstr "Ogled teleteksta" + +# +msgid "View video CD..." +msgstr "Ogled posnetkov" + +# +msgid "Virtual keyboard" +msgstr "Navidezna tipkovnica" + +# +msgid "Voltage mode" +msgstr "Način \"Napetost\"" + +# +msgid "Volume" +msgstr "Glasnost" + +# +msgid "W" +msgstr "W" + +# +msgid "WEP" +msgstr "WEP" + +msgid "WLAN connection" +msgstr "Brezzična povezava" + +# +msgid "WPA" +msgstr "WPA" + +# +msgid "WPA or WPA2" +msgstr "WPA ali WPA2" + +# +msgid "WPA2" +msgstr "WPA2" + +# +msgid "WSS on 4:3" +msgstr "WSS na 4:3" + +# +msgid "Waiting" +msgstr "Čakam" + +msgid "Waiting for mount" +msgstr "Počakajte na izvršitev pripenjanja" + +msgid "Waiting for partition" +msgstr "Počakajte na particijo" + +msgid "Wakeup" +msgstr "" + +msgid "Wakeup TV from standby" +msgstr "" + +msgid "Wakeup receiver for start timer" +msgstr "" + +msgid "Wakeup receiver from standby" +msgstr "" + +msgid "Wakeup signal from TV" +msgstr "" + +msgid "Wakeup type" +msgstr "" + +msgid "Warning: no LNB; using factory defaults." +msgstr "Opozorilo: ni LNBjev; uporaba privzetih nastavitev." + +# +msgid "Watch movies..." +msgstr "Predvajanje posnetkov" + +# +msgid "Watch recordings..." +msgstr "Predvajanje posnetkov" + +# +msgid "Wed" +msgstr "Sre" + +# +msgid "Wednesday" +msgstr "Sreda" + +# +msgid "Weekday" +msgstr "Delovni dan" + +msgid "Weighted position" +msgstr "" + +# +msgid "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." +msgstr "" +"Dobrodošli v urejevalniku.\n" +"\n" +"Poiščite začetek dela, ki ga želite izrezati. Pritisnite OK, izberite 'Začni brisati'.\n" +"\n" +"Nato poiščite konec in pritisnite OK, izberite 'Končaj brisanje'." + +# +msgid "Welcome to the image upgrade wizard. The wizard will assist you in upgrading the firmware of your receiver by providing a backup facility for your current settings and a short explanation of how to upgrade your firmware." +msgstr "Dobrodošli v čarovniku za nadgradnjo. Čarovnik vam bo pomagal pri nadgradnji sprejemnika in nudil varno hrambo vaših trenutnih nastavitev ter kratko razlago postopka nadgradnje vašega firmware-a." + +msgid "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" +msgstr "" +"Dobrodošli.\n" +"\n" +"Če želite sprejemnik povezati na internet, vas bo omenjeni čarovnik vodil skozi vse potrebne nastavitve, ki so potrebne za delovanje internetne povezave na vašem sprejemniku!\n" +"\n" +"Za nadaljevanje pritisnite tipko OK." + +msgid "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." +msgstr "" +"Dobrodošli.\n" +"\n" +"Začetni čarovnik vas bo vodil skozi osnovne nastavitve vašega sprejemnika.\n" +"Za nadaljevanje pritisnite tipko OK." + +# +msgid "Welcome..." +msgstr "Dobrodošli" + +# +msgid "West" +msgstr "Zahod" + +msgid "West limit set" +msgstr "" + +# +msgid "What do you want to scan?" +msgstr "Kaj želite iskati?" + +msgid "When enabled the PiP can be closed by the exit button." +msgstr "" + +msgid "When enabled the arrow buttons around the OK button will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled the left, right, CH+/-, B+/-, P+/- buttons will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled you can specify a timeframe to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "When enabled you can specify a timeframe were the inactivity sleeptimer is ignored. Not the detection is disabled during this timeframe but the inactivity timeout is disabled" +msgstr "" + +msgid "When enabled you can zap channels with the CH+/-, B+/-, P+/- buttons instead of opening the channel selection list." +msgstr "" + +msgid "When enabled you get the channel selection list via the OK button, the infobar toggle is then transfered to exit button" +msgstr "" + +msgid "When enabled, AIT data will be included in http streams. This allows a client receiver to use HbbTV." +msgstr "Če je nastavitev vključena, potem so AIT podatki vključeni v HTTP tokove. Če uporabljate storitev HbbTV, potem je ta nastavitev bistvenega pomena." + +msgid "When enabled, ECM data will be included in http streams. This allows a client receiver to do the descrambling." +msgstr "Če je nastavitev vključena, potem so ECM paketki vključeni v HTTP tokove. To omogoča sprejemnikom, da dekodirajo prejete podatke." + +msgid "When enabled, EIT data will be included in http streams. This allows a client receiver to show EPG." +msgstr "Če je nastavitev vključena, potem so EIT podatki vključeni v HTTP tokove. To omogoča, da se na sprejemniku prikazuje okrnjen spored (samo za trenutni in naslednji dogodek)." + +msgid "When enabled, a popup message will be shown when a movie has finished and the next one will start." +msgstr "Če je nastavitev vklopljena, se ob prehodu iz enega filma na drugi film, prikaže posebno obvestilo." + +msgid "When enabled, a popup message will be shown when a recording starts." +msgstr "Če je nastavitev vklopljena, se pred začetkom snemanja prikaže posebno obvestilo." + +msgid "When enabled, a radio background image will be visible while listening to a radio channel." +msgstr "Če je nastavitev vklopljena, se pri poslušanju radia, v ozadju prikazuje posebna slika." + +msgid "When enabled, a recording is allowed to interrupt live tv, when there are no free tuners." +msgstr "Če je nastavitev vklopljena, potem ima snemanje dovoljenje za prekinitev žive TV slike, kadar ni na razpolago prostih kanalnikov." + +msgid "When enabled, a warning will be displayed and the user will get an option to stop or to continue the timeshift." +msgstr "" + +msgid "When enabled, authentication is required to watch http streams." +msgstr "" + +msgid "When enabled, channel numbering will start at '1' for each bouquet." +msgstr "Če je nastavitev vključena, potem so kanali vedno številčeni od številke 1 naprej, ne glede na to, v katerem seznamu priljubljenih kanalov se nahajate." + +msgid "When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen." +msgstr "Če je nastavitev vključena, potem se vsebina, ki ima 4:3 razmerje slike, vedno razširi čez celoten zaslon." + +msgid "When enabled, continue to the next bouquet when the last channel of the current bouquet is reached while changing channels." +msgstr "Ko pridete do konca seznama kanalov, sprejemnik samodejno preide na naslednji seznam kanalov." + +msgid "When enabled, deleted recordings are moved to the trash can, instead of being deleted immediately." +msgstr "Če je nastavitev vključena, potem so izbrisani posnetki premaknjeni v smetnjak, namesto da bi bili takoj izbrisani," + +msgid "When enabled, display the EIT now/next eventdata in infobar. When disabled, display now/next eventdata from the EPG cache instead." +msgstr "Če je nastavitev vključena, potem se v informacijski vrstici prikazujejo EIT podatki. Gre za okrnjen spored, ki je navoljo samo za trenutni in naslednji dogodek." + +msgid "When enabled, encryption info will be shown in the infobar (when supported by the skin)." +msgstr "Če je nastavitev vključena, potem se v informacijski vrstici prikazujejo informacije o uporabljeni enkripciji kanala (odvisno od podpore preobleke)." + +msgid "When enabled, error messages related to the Common Interface module will not be shown." +msgstr "Če je nastavitev vključena, potem se napake, ki so povezane z CI vmesnikom, na zaslonu ne prikazujejo." + +msgid "When enabled, error messages related to zapping will not be shown." +msgstr "Če je nastavitev vključena, potem se napake, ki so povezane z preklapljanjem kanalov, ne prikazujejo." + +msgid "When enabled, external subtitles will be always turned on for playback movie." +msgstr "" + +msgid "When enabled, graphical DVB subtitles are preferred over teletext subtitles, when both types are available." +msgstr "Če je nastavitev vključena, potem imajo DVB podnapisi prednost pred teletekst podnapisi, ampak samo v primeru, da sta istočasno na voljo oba tipa podnapisov." + +msgid "When enabled, graphical DVB subtitles will be centered horizontally." +msgstr "Če je nastavitev vključena, potem so DVB podnapisi prečno osredinjeni." + +msgid "When enabled, graphical DVB subtitles will be displayed at their original position." +msgstr "Če je nastavitev vključena, potem se DVB podnapisi prikazujejo na njihovem izvirnem položaju." + +msgid "When enabled, graphical DVB subtitles will be displayed in yellow, instead of the original color." +msgstr "Če je nastavitev vključena, potem se DVB podnapisi prikazujejo v rumeni barvi." + +msgid "When enabled, http streams are descrambled on the server side. The (remote) client receiver does not have to do descrambling." +msgstr "Če je nastavitev vključena ... Nastavitev ni ključnega pomena za delovanje vašega sprejemnika." + +msgid "When enabled, it is possible to leave the movieplayer with exit." +msgstr "" + +msgid "When enabled, measure power consumption to detect when the rotor stops turning (when supported by the tuner)." +msgstr "Če je nastavitev vključena, potem se meri porabo električne energije, da bi se zaznal trenutek, ko se rotor neha premikati. Potrebna je podpora kanalnika." + +msgid "When enabled, number markers will be hiden." +msgstr "" + +msgid "When enabled, services may be grouped in multiple bouquets." +msgstr "Če je nastavitev vključena, potem so lahko nekateri kanali združeni v več seznamih priljubljenih kanalov." + +# +msgid "When enabled, show channel numbers in the channel selection screen." +msgstr "Ko je vključeno, prikaži številke kanalov v izbirniku kanalov" + +msgid "When enabled, subtitles for the hearing impaired can be used." +msgstr "Če je nastavitev vključena, potem se lahko prikazujejo tudi podnapisi za gluhe in naglušne. Kanal mora seveda podpirate take podnapise." + +msgid "When enabled, subtitles for the hearing impaired will be preferred over normal subtitles, when both types are available." +msgstr "Če je nastavitev vključena, potem imajo podnapisi za gluhe in naglušne prednost pred normalnimi podnapisi, ampak samo v primeru, če sta istočasno na voljo oba tipa podnapisov." + +msgid "When enabled, teletext pages will be cached, allowing faster access." +msgstr "Če je nastavitev vključena, potem se pri teletekstu uporablja predpolnjenje, kar povzroči hitrejše delovanje te storitve." + +msgid "When enabled, teletext subtitles will be displayed at their original position." +msgstr "Če je nastavitev vključena, potem se teletekst podnapisi prikazujejo na njihovih izvirnih položajih." + +msgid "When enabled, the VCR scart option will be shown on the main menu" +msgstr "" + +msgid "When enabled, the channel selection list will be hidden while listening to a radio channel" +msgstr "Če je nastavitev vklučena, potem je pri poslušanju radio kanalov izbirnik kanalov skrit." + +msgid "When enabled, the infobar will be displayed when a new event starts." +msgstr "Če je nastavitev vključena, potem se informacijska vrstica prikaže vedno, ko pride do spremembe dogodka (npr. naslednja oddaja)." + +msgid "When enabled, the infobar will be displayed when changing channels." +msgstr "Če je nastavitev vključena, potem se informacijska vrstica prikaže vedno, ko pride do preklopa na drug kanal." + +msgid "When enabled, the infobar will be displayed when skipping forwards/backwards during media playback." +msgstr "Če je nastavitev vključena, potem se informacijska vrstica pokaže vedno, ko med gledanjem multimedijskih datotek preskakujete nazaj ali naprej." + +msgid "When enabled, the lenght of each recording will be shown in the movielist (this might cause some additional loading time)." +msgstr "Če je nastavitev vključena, potem je dolžina vsakega posnetka prikazana v seznamu datotek oz. posnetkov. To lahko povzroči malo daljši nalagalni čas." + +msgid "When enabled, the original line breaks will be removed from the teletext subtitles." +msgstr "Če je nastavitev vključena, potem so izvirni presledki v teletekst podnapisih ignorirani." + +msgid "When enabled, the receiver will automatically use the audio track which you selected before." +msgstr "Če je nastavitev vključena, potem sprejemnik samodejno uporabi zvočno sled, ki ste jjo izbrali pred tem." + +msgid "When enabled, the receiver will automatically use the subtitles which you selected before." +msgstr "Če je nastavitev vključena, potem sprejemnik samodejno uporabi podnapise, ki ste jih izbrali pred tem." + +msgid "When enabled, the receiver will no longer monitor the tuned transponder for possible changes. Do not use this option unless you know what you are doing." +msgstr "Če je nastavitev vključena, potem sprejemnik ne spremlja morebitnih sprememb trenutno uporabljenega transponderja ali frekvence. Te nastavitve ne spreminjajte, razen če veste kaj delate!" + +msgid "When enabled, the receiver will select an AC3 track (when available)." +msgstr "Če je nastavitev vključena, potem sprejemnik samodejno izbere AC3 zvok (če je na voljo)." + +msgid "When enabled, the receiver will select an AC3+ track (when available)." +msgstr "" + +msgid "When enabled, timeshift starts automatically in background after specified time." +msgstr "" + +# +msgid "When enabled, use DHCP for the IP configuration." +msgstr "Ko je vključeno, uporabi samodejno pridobivanje IP naslova (DHCP)" + +msgid "When enabled, your receiver will detect activity on the VCR SCART input." +msgstr "" + +msgid "When nonzero, a recording will start earlier than the starting time indicated by the EPG." +msgstr "Če je nastavitev vključena, potem se snemanje začne prej, kot je to določeno z samim sporedom. Če se po sporedu oddaja prične ob 10:00, lahko sprejemnik (odvisno od nastavitve) prične snemati že ob 09:50." + +msgid "When nonzero, a recording will stop later than the ending time indicated by the EPG." +msgstr "Če je nastavitev vključena, potem se snemanje začne kasneje, kot je to določeno z samim sporedom. Če se po sporedu oddaja prične ob 10:00, lahko sprejemnik (odvisno od nastavitve) prične snemati že ob 10:10." + +msgid "When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture." +msgstr "Če ima vsebina razmerje slike 16:9, potem se lahko tu odločite, kako naj se slika prilagaja zaslonu." + +msgid "When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture." +msgstr "Če ima vsebina razmerje slike 4:3, potem se lahko tu odločite, kako naj se slika prilagaja zaslonu." + +# +msgid "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" +msgstr "" +"POZOR! Izbrana funkcija izbriše vse nastavitve vašega sprejemnika!\n" +"Po zaključku brisanja se bo sprejemnik ponovno zagnal.\n" +"Želite nadaljevati?" + +# +msgid "Where do you want to backup your settings?" +msgstr "Kam želite shraniti varnostno kopijo vaših nastavitev?" + +# +msgid "Where to save temporary timeshift recordings?" +msgstr "Kam naj shranjujem začasne posnetke časovnega zamika?" + +# +msgid "Wireless LAN" +msgstr "Brezzični mreža" + +# +msgid "Wireless network" +msgstr "Brezžično omrežje" + +msgid "Wireless network configuration..." +msgstr "Nastavitve brezzične povezave." + +msgid "Wireless network connection setup" +msgstr "Nastavitve brezzične povezave" + +msgid "Wireless network connection setup." +msgstr "Nastavitve brezzične povezave." + +msgid "Wireless network state" +msgstr "Stanje brezzičnega omrežja" + +msgid "With popup" +msgstr "" + +msgid "Without popup" +msgstr "" + +msgid "Would you like to install a softcam?" +msgstr "Želite namestiti emulator?" + +# +msgid "Write error while recording. Disk full?\n" +msgstr "Napaka med snemanjem. Je disk poln?\n" + +# +msgid "Write failed!" +msgstr "Zapisovanje neuspešno!" + +# +msgid "YPbPr" +msgstr "YPbPr" + +# +msgid "Year" +msgstr "Leto" + +# +msgid "Yellow DVB subtitles" +msgstr "Rumeni DVB podnapisi" + +# +msgid "Yes" +msgstr "Da" + +msgid "Yes and save" +msgstr "" + +msgid "Yes and save in movie dir" +msgstr "" + +# +msgid "Yes to all" +msgstr "Da za vse" + +msgid "Yes, always" +msgstr "Da, vedno" + +# +msgid "Yes, and delete this movie" +msgstr "Da. Izbriši ta film." + +# +msgid "Yes, backup my settings!" +msgstr "Da, ustvari varnostno kopijo mojih nastavitev!" + +msgid "Yes, delete this movie and return to movie list" +msgstr "" + +# +msgid "Yes, do a manual scan now" +msgstr "Da, začni ročno iskanje" + +# +msgid "Yes, do an automatic scan now" +msgstr "Da, začni samodejno iskanje" + +# +msgid "Yes, do another manual scan now" +msgstr "Da, začni drugo ročno iskanje" + +# +msgid "Yes, perform a shutdown now." +msgstr "Da, izvedi izklop sistema." + +# +msgid "Yes, restore the settings now" +msgstr "Da, povrni shranjene nastavitve" + +# +msgid "Yes, returning to movie list" +msgstr "Nazaj na seznam datotek" + +msgid "Yesterday" +msgstr "Včeraj" + +#, python-format +msgid "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" +msgstr "" +"Seznam kanalov je že nameščen!\n" +"Bi ga radi odstranili\n" +"\"%s\"?" + +# +msgid "You can cancel the installation." +msgstr "Lahko prekličete namestitev." + +# +msgid "You can cancel the removal." +msgstr "Lahko prekličete izbris." + +msgid "You can continue watching TV etc. while this is running." +msgstr "Med izvajanjem trenutne naloge, lahko nadaljujete z gledanjem trenutnega dogodka." + +# +msgid "You can install this plugin." +msgstr "Izbrani vtičnik lahko izbrišete." + +msgid "You can only burn receiver recordings!" +msgstr "" + +# +msgid "You can remove this plugin." +msgstr "Ta vtičnik lahko izbrišete." + +# +msgid "You cannot delete this!" +msgstr "Tega ne morete izbrisati!" + +msgid "You didn't select a channel to record from." +msgstr "Niste izbrali kanala za snemanje." + +# +msgid "You have chosen to backup your settings. Please press OK to start the backup now." +msgstr "Izbrali ste si opcijo shranitve vaših nastavitev. Za začetek procesa pritisnite OK!" + +# +msgid "You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased." +msgstr "Izbrali ste opcijo kreiranja novega .NFI zagonskega USB ključa. Iz ključa bodo izbrisani vsi podatki!" + +# +msgid "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." +msgstr "Izbrali ste si opcijo obnove vaših nastavitev. Enigma 2 se bo po opravljenem procesu ponovno zagnala. Za začetek procesa pritisnite OK!" + +# +#, python-format +msgid "You have to wait %s!" +msgstr "Počakati morate %s!" + +msgid "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." +msgstr "" + +msgid "You system does not support ext4" +msgstr "Vaš sprejemnik ne podpira ext4 datotečni sistem." + +# +msgid "Your backup succeeded. We will now continue to explain the further upgrade process." +msgstr "Varnostna kopija je bila uspešno ustvarjena. Nadaljevali bomo z naslednjimi koraki nadgradnje." + +# +msgid "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" +msgstr "" + +# +msgid "Your current collection will get lost!" +msgstr "" + +# +msgid "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." +msgstr "" +"Programska oprema mora biti nadgrajena.\n" +"Za začetek nadgradnje pritistite tipko OK." + +msgid "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" + +# +msgid "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." +msgstr "" +"Vaša internetna povezava ne deluje!\n" +"Prosim, da izberete kaj želite storiti v nadaljevanju." + +#, python-format +msgid "Your internet connection is working (ip: %s)" +msgstr "Internetna povezava deluje (IP naslov: %s)" + +# +msgid "Your network configuration has been activated." +msgstr "Vaše omrežne nastavitve so omogočene." + +msgid "Your receiver does not have an internet connection" +msgstr "Vaš sprejemnik nima delujoče internetne povezave" + +# +msgid "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" +msgstr "" +"Vaš sprejemnik je sedaj pripravljen za uporabo.\n" +"\n" +"Vaša internetna povezava sedaj deluje.\n" +"\n" + +msgid "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Sprejemnik je sedaj pripravljen za uporabo.\n" +"\n" +"Internetna povezava sedaj deluje.\n" +"\n" +"Za nadaljevanje pritisnite tipko OK." + +msgid "Your receiver is rebooting" +msgstr "Poteka ponovni zagon vašega sprejemnika ..." + +msgid "Your receiver is shutting down" +msgstr "Poteka izklapljanje vašega sprejemnika ..." + +msgid "Your receiver is shutting down. Please stand by..." +msgstr "Sprejemnik prehaja v stanje globokega spanja ... Prosim počakajte!" + +# +msgid "Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver." +msgstr "Vaš sprejemnik je pripravljen za uporabo. Pred ponovnim zagonom sprejemnika preverite uporabniška navodila!" + +msgid "Your receiver will got to stand by due to the sleeptimer." +msgstr "" + +msgid "Your receiver will got to standby due to inactivity." +msgstr "" + +msgid "Your receiver will restart after pressing OK on your remote control." +msgstr "Sprejemnik se bo po pritisku tipke OK ponovno zagnal." + +# +msgid "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." +msgstr "" +"Vaše brezzične internet povezave ni mogoče omogočiti!\n" +"Ste priključili vaš brezzični USB vmesnik?\n" +"\n" +"Izberite, kaj želite storiti v nadaljevanju." + +msgid "Zap" +msgstr "Preklop" + +# +msgid "Zap back to previously tuned service?" +msgstr "Prestavim na kanal, ki ste ga gledali pred tem?" + +# +msgid "Zap back to service before positioner setup?" +msgstr "Prestavim na kanal, ki ste ga gledali pred tem?" + +# +msgid "Zap back to service before tuner setup?" +msgstr "Prestavim na kanal, ki ste ga gledali pred spreminjanjem nastavitev?" + +msgid "Zap focus to Picture in Picture" +msgstr "" + +msgid "Zap focus to main screen" +msgstr "" + +# +msgid "Zap mode" +msgstr "Način preklapljanja" + +msgid "Zap to selected channel" +msgstr "Preklop na izbrani kanal" + +msgid "Zap to selected channel, or show detailed event info (depends on configuration)" +msgstr "Preklop na izbran kanal ali prikaz razširjene informacije o dogodku (odvisno od nastavitve)" + +# +msgid "[alternative edit]" +msgstr "[alternativno urejanje]" + +# +msgid "[bouquet edit]" +msgstr "[urejanje paketov]" + +# +msgid "[favourite edit]" +msgstr "[urejanje priljubljenih]" + +# +msgid "[move mode]" +msgstr "[način premeščanja]" + +# +msgid "a gui to assign services/providers to common interface modules" +msgstr "" + +# +msgid "a gui to assign services/providers/caids to common interface modules" +msgstr "" + +# +msgid "abort alternatives edit" +msgstr "Prekinitev alternativnega urejanja" + +# +msgid "abort bouquet edit" +msgstr "Prekinitev urejanja paketa" + +# +msgid "abort favourites edit" +msgstr "Prekinitev urejanja priljubljenih" + +# +msgid "about to start" +msgstr "se bo zagnalo" + +# +msgid "activate network adapter configuration" +msgstr "aktiviranje omrežnih nastavitev" + +# +msgid "add alternatives" +msgstr "Dodajanje alternativ" + +# +msgid "add bookmark" +msgstr "Nov zaznamek" + +# +msgid "add bouquet" +msgstr "Nov paket" + +# +msgid "add marker" +msgstr "Dodajanje oznak (tags)" + +# +msgid "add service to bouquet" +msgstr "Premik kanala v drug paket" + +# +msgid "add service to favourites" +msgstr "Prenos kanala med priljubljene" + +# +msgid "add to parental protection" +msgstr "Dodajte starševsko zaščito" + +msgid "adult movie/drama" +msgstr "" + +# +msgid "advanced" +msgstr "napredno" + +msgid "adventure/western/war" +msgstr "" + +msgid "advertisement/shopping" +msgstr "" + +msgid "after " +msgstr "" + +# +msgid "alphabetic" +msgstr "razvrščanje po abecedi" + +msgid "alphabetic reverse" +msgstr "razvrščanje po abecedi (obratno)" + +msgid "alternative" +msgstr "" + +msgid "always" +msgstr "" + +msgid "and select next channel" +msgstr "" + +msgid "and select previous channel" +msgstr "" + +msgid "arts/culture (without music, general)" +msgstr "" + +msgid "arts/culture magazine" +msgstr "" + +msgid "athletics" +msgstr "" + +# +msgid "audio tracks" +msgstr "zvočni zapisi" + +# +msgid "auto" +msgstr "Samodejno" + +# +msgid "automatic" +msgstr "Samodejno" + +# +msgid "back" +msgstr "Nazaj" + +# +msgid "background image" +msgstr "slika ozadja" + +msgid "ballet" +msgstr "" + +#, python-format +msgid "bc%s" +msgstr "bc%s" + +# +msgid "better" +msgstr "boljše" + +# +msgid "black" +msgstr "črno" + +msgid "black & white" +msgstr "črno/belo" + +# +msgid "blacklist" +msgstr "črni seznam" + +# +msgid "blue" +msgstr "Modra tipka" + +msgid "broadcasting/press" +msgstr "" + +# +msgid "by date" +msgstr "razvrsčanje po datumu" + +msgid "cartoon/puppets" +msgstr "" + +# +msgid "center" +msgstr "na sredini" + +msgid "centered" +msgstr "" + +msgid "centered, wrapped" +msgstr "" + +# +msgid "chapters" +msgstr "poglavja" + +msgid "childrens's/youth program (general)" +msgstr "" + +# +msgid "circular left" +msgstr "Cirkularna - levo" + +# +msgid "circular right" +msgstr "Cirkularna - desno" + +msgid "comedy" +msgstr "" + +# +msgid "complex" +msgstr "kompleksno" + +# +msgid "config menu" +msgstr "konfiguracijski meni" + +# +msgid "confirmed" +msgstr "potrjeno" + +# +msgid "connected" +msgstr "povezano" + +# +msgid "continue" +msgstr "Nadaljevanje" + +msgid "cooking" +msgstr "" + +# +msgid "copy to bouquets" +msgstr "kopiraj v priljubljene pakete" + +# +msgid "create directory" +msgstr "Ustvarite mapo" + +#, python-format +msgid "currently installed image: %s" +msgstr "trenutno nameščena slika (image): %s" + +# +msgid "daily" +msgstr "vsak dan" + +# +msgid "day" +msgstr "dan" + +# +msgid "default" +msgstr "Privzeto" + +# +msgid "delete cut" +msgstr "Izbrišite del" + +msgid "delete..." +msgstr "" + +msgid "descramble and record ecm" +msgstr "odkodiraj in snemaj ECM paketke" + +msgid "detective/thriller" +msgstr "" + +# +msgid "disable" +msgstr "onemogoči" + +# +msgid "disable move mode" +msgstr "Onemogoči način prenosa" + +# +msgid "disabled" +msgstr "onemogočeno" + +# +msgid "disconnected" +msgstr "prekinjeno" + +msgid "discussion/interview/debate" +msgstr "" + +# +msgid "do nothing" +msgstr "Izhod" + +msgid "documentary" +msgstr "" + +msgid "don't descramble, record ecm" +msgstr "ne odkodiran, snemaj ECM paketke" + +# +msgid "done!" +msgstr "Storjeno!" + +msgid "east" +msgstr "vzhod" + +msgid "economics/social advisory" +msgstr "" + +# +msgid "edit alternatives" +msgstr "Urejanje alternativ" + +msgid "education/science/factual topics (general)" +msgstr "" + +# +msgid "empty" +msgstr "prazno" + +# +msgid "enable" +msgstr "omogoči" + +# +msgid "enable bouquet edit" +msgstr "Urejanje paketa" + +# +msgid "enable favourite edit" +msgstr "Urejanje priljubljenih paketov" + +# +msgid "enable move mode" +msgstr "Premik kanalov znotraj paketa" + +# +msgid "enabled" +msgstr "vključeno" + +# +msgid "end alternatives edit" +msgstr "Konec urejanja alternativ" + +# +msgid "end bouquet edit" +msgstr "Konec urejanja paketa" + +# +msgid "end cut here" +msgstr "zaključi del tukaj" + +# +msgid "end favourites edit" +msgstr "končaj urejanje priljubljenih" + +msgid "entertainment (10-16 year old)" +msgstr "" + +msgid "entertainment (6-14 year old)" +msgstr "" + +# +msgid "equal to" +msgstr "enako kot" + +msgid "equestrian" +msgstr "" + +# +msgid "exit DVD player or return to file browser" +msgstr "Izhod iz DVD predvajalnika aku vrnitev v pregledovalnik datotek" + +msgid "exit movielist" +msgstr "" + +# +msgid "exit network adapter configuration" +msgstr "izhod iz nastavitev mrežnega vmesnika" + +# +msgid "exit networkadapter setup menu" +msgstr "izhod iz nastavitvenega menija mrežnega vmesnika" + +msgid "experimental film/video" +msgstr "" + +msgid "false" +msgstr "napačno" + +msgid "fashion" +msgstr "" + +# +msgid "fileformats (BMP, PNG, JPG, GIF)" +msgstr "oblika datoteke (BMP, PNG, JPG, GIF)" + +# +msgid "filename" +msgstr "ime datoteke" + +msgid "film/cinema" +msgstr "" + +msgid "fine arts" +msgstr "" + +# +msgid "fine-tune your display" +msgstr "podrobne nastavitve zaslona" + +msgid "fitness & health" +msgstr "" + +# +msgid "flat alphabetic" +msgstr "razvrščanje po abecedi" + +msgid "flat alphabetic reverse" +msgstr "razvrščanje po abecedi (obratno)" + +msgid "folk/traditional music" +msgstr "" + +msgid "football/soccer" +msgstr "" + +msgid "foreign countries/expeditions" +msgstr "" + +# +msgid "forward to the next chapter" +msgstr "preskok na naslednje poglavje" + +# +msgid "free" +msgstr "prosto" + +msgid "from" +msgstr "" + +msgid "further education" +msgstr "" + +msgid "game show/quiz/contest" +msgstr "" + +msgid "gardening" +msgstr "" + +# +msgid "go to deep standby" +msgstr "pojdi v globoko spanje" + +# +msgid "go to standby" +msgstr "pojdi v pripravljenost" + +# +msgid "grab this frame as bitmap" +msgstr "" + +# +msgid "green" +msgstr "Zelena tipka" + +msgid "handicraft" +msgstr "" + +msgid "height" +msgstr "višina" + +# +msgid "help..." +msgstr "Pomoč" + +# +msgid "horizontal" +msgstr "Horizontalna" + +msgid "information/education/school program" +msgstr "" + +# +msgid "init module" +msgstr "zagon modula" + +# +msgid "init modules" +msgstr "" + +# +msgid "insert mark here" +msgstr "vnesite oznako tukaj" + +msgid "invalid type" +msgstr "napačen tip" + +msgid "jazz" +msgstr "" + +# +msgid "jump back to the previous title" +msgstr "skoči nazaj na prejšnji naslov" + +# +msgid "jump forward to the next title" +msgstr "preskoči na naslednji naslov" + +msgid "languages" +msgstr "jeziki" + +# +msgid "leave movie player..." +msgstr "zapustite multimedijski predvajalnik." + +# +msgid "left" +msgstr "levo" + +msgid "left, wrapped" +msgstr "" + +msgid "leisure hobbies (general)" +msgstr "" + +# +msgid "length" +msgstr "dolžina" + +msgid "limit ..., aborting !" +msgstr "meja je dosežena ..., preklicujem!" + +# +msgid "list style compact" +msgstr "kompaktni način seznama" + +# +msgid "list style compact with description" +msgstr "kompaktni način z opisom" + +# +msgid "list style default" +msgstr "privzet način seznama" + +# +msgid "list style single line" +msgstr "enovrstični način seznama" + +msgid "literature" +msgstr "" + +msgid "live broadcast" +msgstr "" + +# +msgid "locked" +msgstr "zaklenjen" + +# +msgid "loopthrough to" +msgstr "preskoči na" + +msgid "magazines/reports/documentary" +msgstr "" + +# +msgid "manual" +msgstr "prenos" + +msgid "martial sports" +msgstr "" + +msgid "medicine/physiology/psychology" +msgstr "" + +# +msgid "menu" +msgstr "meni" + +# +msgid "mins" +msgstr "mins" + +# +msgid "minutes" +msgstr "minute" + +# +msgid "month" +msgstr "mesec" + +msgid "motor sport" +msgstr "" + +msgid "motoring" +msgstr "" + +# +msgid "move down to last entry" +msgstr "premik dol, na zadnji vnos" + +# +msgid "move down to next entry" +msgstr "premaik dol, na naslednji vnos" + +# +msgid "move up to first entry" +msgstr "premik gor, na prvi vnos" + +# +msgid "move up to previous entry" +msgstr "premik gor, prejšnji vnos" + +msgid "movie/drama (general)" +msgstr "" + +# +msgid "multinorm" +msgstr "multinorm" + +msgid "music/ballet/dance (general)" +msgstr "" + +msgid "musical/opera" +msgstr "" + +msgid "nature/animals/environment" +msgstr "" + +# +msgid "never" +msgstr "nikoli" + +msgid "new media" +msgstr "" + +msgid "news magazine" +msgstr "" + +msgid "news/current affairs (general)" +msgstr "" + +msgid "news/weather report" +msgstr "" + +# +msgid "no" +msgstr "Ne" + +# +msgid "no CAId selected" +msgstr "ni izbran nobeden CAId" + +# +msgid "no CI slots found" +msgstr "ni najdene nobene CI vrate" + +# +msgid "no module found" +msgstr "ni modula " + +msgid "no storage devices found" +msgstr "ne najdem naprav za shranjevanje" + +# +msgid "none" +msgstr "prazno" + +msgid "normal" +msgstr "normalno" + +# +msgid "not configured" +msgstr "ni nastavljeno" + +# +msgid "not locked" +msgstr "ni zaklenjeno" + +msgid "not supported" +msgstr "ni podprto" + +# +msgid "not used" +msgstr "ni uporabljeno" + +# +msgid "nothing connected" +msgstr "nič ni povezano" + +# +msgid "of a DUAL layer medium used." +msgstr "od uporabljenega DVOPLASTNEGA medija" + +# +msgid "of a SINGLE layer medium used." +msgstr "od uporabljenega ENOPLASTNEGA medija." + +# +msgid "off" +msgstr "izklopi" + +msgid "offset is" +msgstr "" + +# +msgid "on" +msgstr "vklop" + +# +msgid "on READ ONLY medium." +msgstr "na NEZAPISLJIV medij." + +msgid "on end of movie" +msgstr "" + +# +msgid "once" +msgstr "enkrat" + +msgid "only from deep standby" +msgstr "" + +msgid "only from standby" +msgstr "" + +msgid "open EPG..." +msgstr "" + +msgid "open Info..." +msgstr "" + +# +msgid "open nameserver configuration" +msgstr "Odprtje nastavitev imenskega strežnika" + +msgid "original" +msgstr "originalno" + +msgid "original language" +msgstr "originalni jezik" + +# +msgid "pass" +msgstr "Geslo" + +msgid "performing arts" +msgstr "" + +# +msgid "play as picture in picture" +msgstr "Aktivacija Slike v Sliki" + +msgid "play in mainwindow" +msgstr "predvajj v glavnem oknu" + +# +msgid "please press OK when ready" +msgstr "pritisnite OK" + +# +msgid "please wait, loading picture..." +msgstr "poteka nalaganje slike, prosim počakajte ..." + +msgid "popular culture/traditional arts" +msgstr "" + +msgid "pre-school children's program" +msgstr "" + +msgid "receiver software because updates are available." +msgstr "" + +# +msgid "record" +msgstr "snemanje" + +# +msgid "recording..." +msgstr "snemanje ..." + +# +msgid "red" +msgstr "Rdeči gumb" + +msgid "religion" +msgstr "" + +msgid "remarkable people" +msgstr "" + +# +msgid "remove after this position" +msgstr "izbris za tem položajem" + +# +msgid "remove all alternatives" +msgstr "Izbris vseh alternativ" + +# +msgid "remove all new found flags" +msgstr "izbris vseh novih zastav (flags)" + +# +msgid "remove before this position" +msgstr "izbris pred tem položajem" + +# +msgid "remove bookmark" +msgstr "odstranitev zaznamka" + +# +msgid "remove directory" +msgstr "odstranitev mape" + +# +msgid "remove entry" +msgstr "Izbris vnosa" + +# +msgid "remove from parental protection" +msgstr "izbris iz starševske zaščite" + +# +msgid "remove new found flag" +msgstr "izbris nove zastave (flag)" + +# +msgid "remove selected satellite" +msgstr "odstranitev izbranega satelita" + +# +msgid "remove this mark" +msgstr "izbris oznake" + +msgid "rename entry" +msgstr "" + +# +msgid "repeat playlist" +msgstr "ponovitev seznama predvjanja" + +# +msgid "repeated" +msgstr "ponavljam" + +msgid "reverse by date" +msgstr "razvrščanje po datumu (obratno)" + +# +msgid "rewind to the previous chapter" +msgstr "previjanje na prejšnje poglavje" + +# +msgid "right" +msgstr "desno" + +msgid "right, wrapped" +msgstr "" + +msgid "rock/pop" +msgstr "" + +msgid "romance" +msgstr "" + +# +msgid "save last directory on exit" +msgstr "ob izhodu se naj shrani zadnja mapa" + +# +msgid "save playlist on exit" +msgstr "ob izhodu se naj shrani seznam predvajanja" + +# +msgid "scan state" +msgstr "stanje iskanja" + +msgid "science fiction/fantasy/horror" +msgstr "" + +# +msgid "second cable of motorized LNB" +msgstr "drugi kabel motoriziranega LNB-a" + +msgid "seconds" +msgstr "sekund" + +# +msgid "select" +msgstr "izberite" + +# +msgid "select CAId's" +msgstr "izberite CAidse" + +msgid "select EPG..." +msgstr "" + +msgid "select Info..." +msgstr "" + +# +msgid "select menu entry" +msgstr "izberite vnos" + +msgid "select movie" +msgstr "" + +msgid "select the movie path" +msgstr "" + +msgid "serious music/classic music" +msgstr "" + +msgid "serious/classical/religious/historical movie/drama" +msgstr "" + +msgid "service PIN" +msgstr "PIN koda kanala" + +# +msgid "set as startup service" +msgstr "Izbira zagonskega kanala" + +msgid "setup PIN" +msgstr "Nastavitev PIN" + +# +msgid "show DVD main menu" +msgstr "Prikaz glavnega DVD menija" + +# +msgid "show all tags" +msgstr "Prikaz vseh oznak" + +# +msgid "show alternatives" +msgstr "Prikaz alternativ" + +# +msgid "show event details" +msgstr "Prikaz informacij o dogodku" + +msgid "show extended description" +msgstr "" + +msgid "show mediaplayer on mainmenu" +msgstr "" + +msgid "show softwaremanager in setup menu" +msgstr "Prikaz softwaremanager vtičnika v nastavitvenem meniju" + +msgid "show softwaremanager on blue button" +msgstr "Prikaz softwaremanager vtičnika po pritisku na modro tipko" + +msgid "show tag menu" +msgstr "" + +# +msgid "show transponder info" +msgstr "Informacije o frekvenci kanala" + +msgid "show/game show (general)" +msgstr "" + +msgid "shuffle" +msgstr "naključni izbor" + +# +msgid "shut down" +msgstr "izklop" + +# +msgid "simple" +msgstr "enostavno" + +# +msgid "skip backward" +msgstr "Preskok nazaj" + +# +msgid "skip forward" +msgstr "Preskok naprej" + +msgid "soap/melodram/folkloric" +msgstr "" + +msgid "social/political issues/economics (general)" +msgstr "" + +msgid "social/spiritual science" +msgstr "" + +msgid "sorting of playlists" +msgstr "razvrščanje seznamov" + +# +msgid "special characters" +msgstr "posebni znaki" + +msgid "special events" +msgstr "" + +msgid "special format data DVD (HDTV compatible)" +msgstr "" + +msgid "sports (general)" +msgstr "" + +msgid "sports magazine" +msgstr "" + +# +msgid "standard" +msgstr "Standardno" + +# +msgid "start cut here" +msgstr "pričetek rezanja tukaj" + +# +msgid "start directory" +msgstr "začetna mapa" + +msgid "stepsize" +msgstr "" + +# +msgid "stereo" +msgstr "stereo" + +# +msgid "stop using as startup service" +msgstr "Sprememba nastavitve začetnega kanala" + +# +msgid "switch to bookmarks" +msgstr "preklop na zaznamke" + +# +msgid "switch to filelist" +msgstr "preklop na seznam datotek" + +# +msgid "switch to the next angle" +msgstr "preklop na naslednji pogled" + +# +msgid "switch to the next audio track" +msgstr "preklop na naslednji zvočni zapis" + +# +msgid "switch to the next subtitle language" +msgstr "preklop na naslednji jezik podnapisov" + +msgid "talk show" +msgstr "" + +msgid "team sports" +msgstr "" + +msgid "technology/natural science" +msgstr "" + +# +msgid "template file" +msgstr "predloga" + +msgid "tennis/squash" +msgstr "" + +# +msgid "this recording" +msgstr "to snemanje" + +# +msgid "this service is protected by a parental control pin" +msgstr "kanal je zaščiten s PIN kodo" + +# +msgid "toggle time, chapter, audio, subtitle info" +msgstr "izbira med prikazom časa, poglavja, zvoka in podnapisi" + +msgid "top" +msgstr "na vrh" + +msgid "tourism/travel" +msgstr "" + +msgid "true" +msgstr "pravilno" + +msgid "unavailable" +msgstr "ni na voljo" + +# +msgid "unconfirmed" +msgstr "nepotrjeno" + +msgid "undefined" +msgstr "nedoločeno" + +# +msgid "unknown" +msgstr "neznano" + +# +msgid "unknown service" +msgstr "neznan kanal" + +msgid "unpublished" +msgstr "" + +# +msgid "until standby/restart" +msgstr "do stanja pripravljenosti/resetiranja" + +# +msgid "user defined" +msgstr "uporabniško določeno" + +msgid "variety show" +msgstr "" + +# +msgid "vertical" +msgstr "Vertikalna" + +# +msgid "wait for ci..." +msgstr "počakajte na ci ..." + +# +msgid "wait for mmi..." +msgstr "čakam mmi ..." + +# +msgid "waiting" +msgstr "čakam" + +msgid "water sport" +msgstr "vodni športi" + +# +msgid "weekly" +msgstr "vsak teden" + +msgid "west" +msgstr "zahod" + +msgid "when PiPzap enabled zap channel down..." +msgstr "" + +msgid "when PiPzap enabled zap channel up..." +msgstr "" + +# +msgid "white" +msgstr "bela" + +# +msgid "whitelist" +msgstr "dovoljen seznam" + +msgid "width" +msgstr "širina" + +msgid "winter sport" +msgstr "zimski športi" + +msgid "wireless network interface" +msgstr "brezzični omrežni vmesnik" + +#, python-format +msgid "with %d error" +msgid_plural "with %d errors" +msgstr[0] "z %d napako" +msgstr[1] "z %d napakama" +msgstr[2] "s %d napakami" +msgstr[3] "s %d napakami" + +# +msgid "working" +msgstr "deluje" + +# +msgid "yellow" +msgstr "Rumena tipka" + +# +msgid "yes" +msgstr "Da" + +# +msgid "yes (keep feeds)" +msgstr "Da (obdrži feed-e)" + +# +msgid "zap" +msgstr "preklop" + +msgid "zap and record" +msgstr "" + +# +msgid "zapped" +msgstr "preklopljen" + +# +#~ msgid "AA" +#~ msgstr "AA" + +# +#~ msgid "AB" +#~ msgstr "AB" + +#~ msgid "Activate PiP" +#~ msgstr "Aktivacija Slike v Sliki" + +#~ msgid "Add/remove timer for current event" +#~ msgstr "Dodaj/Izbriši časovnik za trenutni dogodek" + +# +#~ msgid "All satellites" +#~ msgstr "Vsi sateliti" + +# +#~ msgid "BA" +#~ msgstr "BA" + +# +#~ msgid "BB" +#~ msgstr "BB" + +# +#~ msgid "Behavior of 'pause' when paused" +#~ msgstr "Odziv tipke \"premor\"" + +# +#~ msgid "Committed DiSEqC command" +#~ msgstr "Commited DiSEqC ukaz" + +#~ msgid "Configure the behavior of the 'pause' key when movie playback is already paused." +#~ msgstr "Določitev obnašanja tipke \"premor\", ko je video posnetek že zamrznjen." + +# +#~ msgid "DiSEqC repeats" +#~ msgstr "DiSEqC ponavljanja" + +#~ msgid "Goto specific data/time" +#~ msgstr "Pojdi na točno določen čas" + +# +#~ msgid "No satellite frontend found!!" +#~ msgstr "Ni satelitske naprave!" + +#~ msgid "Open service list and select next channel" +#~ msgstr "Odpri seznam kanalov in izberi naslednji kanal" + +#~ msgid "Open service list and select previous channel" +#~ msgstr "Odpri seznam kanalov in izberi prejšnji kanal" + +#~ msgid "Press '0' to toggle internal/external PiP." +#~ msgstr "Pritisnite '0' za preklop med notranjim in zunanjim PiP." + +# +#~ msgid "Remove timer" +#~ msgstr "Odstrani časovnik" + +# +#~ msgid "Send DiSEqC" +#~ msgstr "Pošlji DiSEqC signal" + +# +#~ msgid "Switch next channel" +#~ msgstr "Naslednji kanal" + +# +#~ msgid "Uncommitted DiSEqC command" +#~ msgstr "Uncommitted DiSEqC command" + +# +#~ msgid "Zap back to service before satfinder?" +#~ msgstr "Prestavim na kanal, ki ste ga gledali pred tem?" + +#~ msgid "tuner is not supported" +#~ msgstr "kanalnik ni podprt" diff --git a/po/sr.po b/po/sr.po new file mode 100644 index 0000000..fe2093c --- /dev/null +++ b/po/sr.po @@ -0,0 +1,9811 @@ +# Serbian translations for Enigma2. +# +msgid "" +msgstr "" +"Project-Id-Version: enigma2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-07-21 19:08+0200\n" +"PO-Revision-Date: 2011-04-14 00:02+0200\n" +"Last-Translator: majevica <jovanovic@gmx.ch>\n" +"Language-Team: veselin & majevica CRNABERZA <jovanovic@gmx.ch>\n" +"Language: sr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"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" +"X-Generator: Pootle 2.0.3\n" +"X-Poedit-Language: Serbian\n" +"X-Poedit-SourceCharset: utf-8\n" +"X-Poedit-Country: SERBIA\n" + +# +msgid "" +"\n" +"Advanced options and settings." +msgstr "" +"\n" +"Napredne opcije i podešavanja." + +# +msgid "" +"\n" +"After pressing OK, please wait!" +msgstr "" +"\n" +"Posle stiskanja OK,molim pričekajte" + +msgid "" +"\n" +"Backup your receiver settings." +msgstr "" + +# +msgid "" +"\n" +"Edit the upgrade source address." +msgstr "" +"\n" +"Uredi poboljšanu izvornu adresu" + +msgid "" +"\n" +"Manage extensions or plugins for your receiver" +msgstr "" + +msgid "" +"\n" +"Online update of your receiver software." +msgstr "" + +# +msgid "" +"\n" +"Press OK on your remote control to continue." +msgstr "" +"\n" +"Pritisni OK na tvom daljinskom da nastaviš" + +# +msgid "" +"\n" +"Restore your backups by date." +msgstr "" +"\n" +"Vrati svoje snimljene kopije po datumu" + +msgid "" +"\n" +"Restore your receiver settings." +msgstr "" + +msgid "" +"\n" +"Restore your receiver with a new firmware." +msgstr "" + +# +msgid "" +"\n" +"Scan for local extensions and install them." +msgstr "" +"\n" +"Traži lokalna proširenja i instaliraj ih. " + +# +msgid "" +"\n" +"Select your backup device.\n" +"Current device: " +msgstr "" +"\n" +"Izaberi svoj rezervni uredjaj.\n" +"Aktuelni uređaj:" + +# +msgid "" +"\n" +"View, install and remove available or installed packages." +msgstr "" +"\n" +"Pogledaj,instaliraj i ukloni pristupačne ili instalirane pakete" + +msgid " (PiP)" +msgstr "" + +msgid " (Radio)" +msgstr "" + +msgid " (TV)" +msgstr "" + +msgid " (disabled)" +msgstr "" + +msgid " (higher than any auto)" +msgstr "" + +msgid " (higher than rotor any auto)" +msgstr "" + +msgid " (lower than any auto)" +msgstr "" + +# +msgid " extensions." +msgstr "proširenja." + +msgid " ms" +msgstr "ms" + +# +msgid " packages selected." +msgstr "Paketa izabrano" + +# +msgid " updates available." +msgstr "ažuriranja dostupna." + +#. TRANSLATORS: short time representation hour:minute +#, python-format +msgid "%2d:%02d" +msgstr "" + +#. TRANSLATORS: full time representation hour:minute:seconds +#, python-format +msgid "%2d:%02d:%02d" +msgstr "" + +msgid "%A %d %B" +msgstr "" + +#. TRANSLATORS: long date representations dayname daynum monthname in strftime() format! See 'man strftime' +msgid "%A %e %B" +msgstr "" + +#. TRANSLATORS: full date representation dayname daynum monthname year in strftime() format! See 'man strftime' +msgid "%A %e %B %Y" +msgstr "" + +# +msgid "%H:%M" +msgstr "%H:%M" + +#. TRANSLATORS: short date representation short dayname daynum short monthname in strftime() format! See 'man strftime' +msgid "%a %e/%m" +msgstr "" + +#. TRANSLATORS: long date representation short dayname daynum short monthname hour:minute in strftime() format! See 'man strftime' +msgid "%a %e/%m %-H:%M" +msgstr "" + +# +#. TRANSLATORS: Intermediate scanning result, '%d' channel(s) have been found so far +#, fuzzy, python-format +msgid "%d channel found" +msgid_plural "%d channels found" +msgstr[0] "%d kanala pronađeno!" +msgstr[1] "%d kanala pronađeno!" +msgstr[2] "%d kanala pronađeno!" + +#, python-format +msgid "%d file" +msgid_plural "%d files" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +# +#, fuzzy, python-format +msgid "%d job is running in the background!" +msgid_plural "%d jobs are running in the background!" +msgstr[0] "%d radnje se obavljaju u pozadini" +msgstr[1] "%d radnje se obavljaju u pozadini" +msgstr[2] "%d radnje se obavljaju u pozadini" + +# +#, python-format +msgid "%d min" +msgstr "%d min" + +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +#, python-format +msgid "%d minutes" +msgstr "" + +#, python-format +msgid "%d pixel wide" +msgid_plural "%d pixels wide" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +# +#, fuzzy, python-format +msgid "%d subdirectory" +msgid_plural "%d subdirectories" +msgstr[0] "/var direktorijum" +msgstr[1] "/var direktorijum" +msgstr[2] "/var direktorijum" + +# +#, fuzzy, python-format +msgid "%d wireless network found!" +msgid_plural "%d wireless networks found!" +msgstr[0] "1 bežična mreža pronađena!" +msgstr[1] "1 bežična mreža pronađena!" +msgstr[2] "1 bežična mreža pronađena!" + +msgid "%d-%b-%Y %-H:%M" +msgstr "" + +msgid "%d-%m" +msgstr "" + +# +msgid "%d.%B %Y" +msgstr "%d.%B %Y" + +#. TRANSLATORS: VFD hour:minute daynum short monthname in strftime() format! See 'man strftime' +msgid "%k:%M %e/%m" +msgstr "" + +# +#, fuzzy, python-format +msgid "%s %s free disk space" +msgstr "slobodan prostor na disku" + +# +#, python-format +msgid "%s (%s)\n" +msgstr "%s (%s)\n" + +#. TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. +#, python-format +msgid "%s is no longer used. Should it be deleted?" +msgstr "" + +# +#, fuzzy, python-format +msgid "%s updated package available" +msgid_plural "%s updated packages available" +msgstr[0] "ažuriranja dostupna." +msgstr[1] "ažuriranja dostupna." +msgstr[2] "ažuriranja dostupna." + +#, python-format +msgid "%s%d min" +msgstr "" + +#, python-format +msgid "%s/%s: %s" +msgstr "" + +# +msgid "(ZAP)" +msgstr "(ZAP)" + +# +msgid "(empty)" +msgstr "(prazno)" + +# +msgid "(show optional DVD audio menu)" +msgstr "(prikaži alternativni DVD audio meni)" + +# +msgid "* Only available if more than one interface is active." +msgstr "* Dostupan samo ako je više interfejsa aktivno." + +msgid "/s" +msgstr "" + +# +msgid "0" +msgstr "0" + +# +msgid "1" +msgstr "1" + +# +msgid "1.0" +msgstr "1.0" + +# +msgid "1.1" +msgstr "1.1" + +# +msgid "1.2" +msgstr "1.2" + +# +msgid "12V output" +msgstr "12V izlaz" + +# +msgid "13 V" +msgstr "13 V" + +# +msgid "16:10" +msgstr "16:10" + +# +msgid "16:10 Letterbox" +msgstr "16:10 Letterbox" + +# +msgid "16:10 PanScan" +msgstr "16:10 PanScan" + +# +msgid "16:9" +msgstr "16:9" + +# +msgid "16:9 Letterbox" +msgstr "16:9 Letterbox" + +# +msgid "16:9 always" +msgstr "16:9 uvek" + +# +msgid "18 V" +msgstr "18 V" + +# +msgid "2" +msgstr "2" + +msgid "23.976" +msgstr "" + +msgid "24" +msgstr "" + +msgid "25" +msgstr "" + +msgid "29.97" +msgstr "" + +# +msgid "3" +msgstr "3" + +msgid "30" +msgstr "" + +msgid "3d mode" +msgstr "" + +msgid "4" +msgstr "4" + +# +msgid "4:3" +msgstr "4:3" + +# +msgid "4:3 Letterbox" +msgstr "4:3 Letterbox" + +# +msgid "4:3 PanScan" +msgstr "4:3 PanScan" + +# +msgid "5" +msgstr "5" + +# +msgid "6" +msgstr "6" + +# +msgid "7" +msgstr "7" + +# +msgid "8" +msgstr "8" + +# +msgid "9" +msgstr "9" + +#, python-format +msgid ": %s" +msgstr "" + +# +msgid "<Current movielist location>" +msgstr "<Trenutna lokacija liste filmova>" + +# +msgid "<Default movie location>" +msgstr "<Standardna lokacija filmova>" + +# +msgid "<Last timer location>" +msgstr "<Zadnja lokacija tajmera> " + +# +msgid "<unknown>" +msgstr "<nepoznato>" + +# +msgid "??" +msgstr "??" + +# +msgid "A" +msgstr "A" + +# +#, fuzzy, python-format +msgid "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" +msgstr "" +"Konfiguracioni fajl (%s) je promenjen posle instalacije.\n" +"Želite li zadržati vašu verziju?" + +# +#, python-format +msgid "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" +msgstr "" +"Konfiguracioni fajl (%s) je promenjen posle instalacije.\n" +"Želite li zadržati vašu verziju?" + +msgid "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" + +msgid "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" + +# +msgid "A graphical EPG for all services of an specific bouquet" +msgstr "Grafički EPG za sve kanale od specifičnog buketa" + +# +#, python-format +msgid "" +"A record has been started:\n" +"%s" +msgstr "" +"Snimanje je započeto:\n" +"%s" + +# +msgid "" +"A recording is currently running.\n" +"What do you want to do?" +msgstr "" +"Snimanje je trenutno u toku.\n" +"Šta želite da uradte?" + +# +msgid "A recording is currently running. Please stop the recording before trying to configure the positioner." +msgstr "Snimanje je u toku. Molim zaustavite snimanje pre nego što pokušate konfigurisati pozicioner." + +msgid "A recording is currently running. Please stop the recording before trying to scan." +msgstr "" + +# +msgid "A recording is currently running. Please stop the recording before trying to start the satfinder." +msgstr "Snimanje je trenutno u toku. Molim zaustavite snimanje pre nego što pokrenete satelitski pretraživač." + +# +#, python-format +msgid "A required tool (%s) was not found." +msgstr "Potrebni alat (%s) nije pronađen." + +# +msgid "A search for available updates is currently in progress." +msgstr "Traženje za moguća ažuriranja je trenutno u toku." + +# +msgid "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" +msgstr "" +"Drugi konfigurisani interfejs je pronađen.\n" +"\n" +"Da li želite da onemogućite drugi mrežni interfejs?" + +msgid "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" + +msgid "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" + +# +msgid "A small overview of the available icon states and actions." +msgstr "Mali pregled dostupnih stanja i aktivnosti ikonica." + +# +msgid "" +"A timer failed to record!\n" +"Disable TV and try again?\n" +msgstr "" +"Tajmer je neuspešno pokušao snimiti!\n" +"Onemogućite TV i pokušajte ponovo?\n" + +# +#, fuzzy +msgid "A/V settings" +msgstr "A/V Postavke " + +msgid "AC3/DTS downmix" +msgstr "" + +# +msgid "Abort" +msgstr "Prekini" + +# +msgid "About" +msgstr "O programu" + +# +msgid "About..." +msgstr "O programu..." + +# +msgid "Accesspoint:" +msgstr "Pristupna tačka:" + +# +msgid "Action on long powerbutton press" +msgstr "Dejstvo za dugo pritisnutu tipku paljenja" + +# +msgid "Action on short powerbutton press" +msgstr "Akcija za kratko pritisnuto dugme paljenja" + +# +msgid "Activate Picture in Picture" +msgstr "Aktiviraj Sliku u Slici" + +# +#, fuzzy +msgid "Activate current configuration" +msgstr "Aktivirajte aktuelnu konfiguraciju" + +# +msgid "Activate network settings" +msgstr "Aktiviraj mrežne postavke" + +# +#, fuzzy +msgid "Activate the configured network settings." +msgstr "Aktiviraj mrežne postavke" + +# +msgid "Adapter settings" +msgstr "Postavke adaptera" + +# +msgid "Add" +msgstr "Dodaj" + +# +msgid "Add Bookmark" +msgstr "Dodaj obeležje" + +# +msgid "Add a mark" +msgstr "Dodaj oznaku" + +# +#, fuzzy +msgid "Add a nameserver entry" +msgstr "Dodaj nejmserver" + +# +msgid "Add a new title" +msgstr "Dodaj novi titl" + +# +#, fuzzy +msgid "Add bookmark" +msgstr "Dodaj oznaku" + +# +#, fuzzy +msgid "Add directory to playlist" +msgstr "dodaj direktorijum u plejlistu" + +# +#, fuzzy +msgid "Add file to playlist" +msgstr "dodaj datoteku u plejlistu" + +# +#, fuzzy +msgid "Add files to playlist" +msgstr "dodaj datoteke u plejlistu" + +msgid "Add more details to the crash log" +msgstr "" + +# +#, fuzzy +msgid "Add provider" +msgstr "Dodaj provajdera" + +# +#, fuzzy +msgid "Add recording (enter recording duration)" +msgstr "dodaj snimanje (unesite dužinu snimanja)" + +# +#, fuzzy +msgid "Add recording (enter recording endtime)" +msgstr "dodaj snimanje (unesi završno vreme snimanja)" + +# +#, fuzzy +msgid "Add recording (indefinitely)" +msgstr "dodaj snimanje (nedefinisano)" + +# +#, fuzzy +msgid "Add recording (stop after current event)" +msgstr "dodaj snimanje (zaustavi posle trenutnog događaja)" + +# +#, fuzzy +msgid "Add service" +msgstr "Dodaj kanal" + +# +msgid "Add timer" +msgstr "Dodaj Tajmer" + +# +msgid "Add title" +msgstr "Dodaj naslov" + +# +msgid "Add to bouquet" +msgstr "Dodaj u buket" + +# +msgid "Add to favourites" +msgstr "Dodaj u favorite" + +msgid "Add/remove change timer for current event" +msgstr "" + +msgid "Adjust 3D settings" +msgstr "" + +# +msgid "Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens." +msgstr "Podesi postavke boje,tako da su sve senke boja raspoznatljive,ali izgledaju maksimalno zasićene.Ako ste zadovoljni rezultatom,pritisnite OK da zatvorite fino video-podešavanje,ili koristite numeričke tipke da izaberete druge test ekrane. " + +msgid "Advanced" +msgstr "" + +# +#, fuzzy +msgid "Advanced options" +msgstr "Napredne opcije" + +# +msgid "Advanced restore" +msgstr "Napredno vraćanje" + +# +#, fuzzy +msgid "Advanced software" +msgstr "Napredni softver" + +# +#, fuzzy +msgid "Advanced software plugin" +msgstr "Napredni softver dodatak" + +# +#, fuzzy +msgid "Advanced video enhancement setup" +msgstr "Napredne postavke video poboljšavanja " + +# +#, fuzzy +msgid "Advanced video setup" +msgstr "Napredne video postavke" + +# +msgid "After event" +msgstr "Posle dešavanja" + +# +msgid "Album" +msgstr "Album" + +msgid "Alignment of events" +msgstr "" + +msgid "Alignment of service names" +msgstr "" + +# +msgid "All" +msgstr "Svi" + +msgid "All ages" +msgstr "" + +msgid "All satellites 1 (USALS)" +msgstr "" + +msgid "All satellites 2 (USALS)" +msgstr "" + +msgid "All satellites 3 (USALS)" +msgstr "" + +msgid "All satellites 4 (USALS)" +msgstr "" + +msgid "Allocate" +msgstr "" + +msgid "Allocate unused memory index" +msgstr "" + +msgid "Allow quit movieplayer with exit" +msgstr "" + +msgid "Allow subtitle language to equal audio language" +msgstr "" + +msgid "Allow subtitles for hearing impaired" +msgstr "" + +# +msgid "Alpha" +msgstr "Alfa" + +# +#, fuzzy +msgid "Alternative" +msgstr "dodaj alternative" + +# +#, fuzzy +msgid "Alternative numbering mode" +msgstr "Alternativni radio mod" + +# +msgid "Alternative services tuner priority" +msgstr "Prioritet alternativnih kanala tjunera" + +msgid "Always ask" +msgstr "Uvek pitaj" + +msgid "Always hide infobar" +msgstr "" + +# +msgid "An empty filename is illegal." +msgstr "Prazno ime datoteke je nelegalno." + +# +#, fuzzy +msgid "An error occurred while downloading the packetlist. Please try again." +msgstr "Greška kod skidanja liste paketa. Molimo pokušajte ponovo." + +# +msgid "An unknown error occurred!" +msgstr "Nepoznata greška se desila" + +msgid "And will put your receiver in standby over " +msgstr "" + +msgid "Any activity" +msgstr "" + +# +msgid "Arabic" +msgstr "Arapski" + +msgid "Are you sure to remove this entry?" +msgstr "" + +# +msgid "" +"Are you sure you want to activate this network configuration?\n" +"\n" +msgstr "" +"Da li ste sigurni da želite aktivirati ovu mrežnu konfiguraciju?\n" +"\n" + +# +#, fuzzy +msgid "" +"Are you sure you want to delete\n" +"the following backup:\n" +msgstr "" +"Da li ste sigurni da želite da izbrišete\n" +"sledeću rezervnu kopiju:\n" + +# +msgid "Are you sure you want to exit this wizard?" +msgstr "Da li ste sigurni da želite izaći iz ovog čarobnjaka?" + +# +msgid "" +"Are you sure you want to restart your network interfaces?\n" +"\n" +msgstr "" +"Da li ste sigurni da želite da restartujete vaše mrežne interfejse?\n" +"\n" + +# +#, fuzzy, python-format +msgid "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Da li ste sigurni da vratite vašu Enigma2 rezervnu kopiju?\n" +"Enigma2 će ponovo startovati posle vraćanja" + +# +#, fuzzy +msgid "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Da li ste sigurni da vratite vašu Enigma2 rezervnu kopiju?\n" +"Enigma2 će ponovo startovati posle vraćanja" + +# +msgid "Artist" +msgstr "Izvođač" + +msgid "Arts/Culture" +msgstr "" + +# +msgid "Ask user" +msgstr "Pitaj korisnika" + +# +#, fuzzy +msgid "Aspect ratio" +msgstr "Odnos slike" + +# +#, fuzzy +msgid "Assigned CAIds:" +msgstr "dodeljeni CAIdi:" + +# +#, fuzzy +msgid "Assigned services/provider:" +msgstr "Dodeljeni kanali/Provajder:" + +#, fuzzy +msgid "At beginning" +msgstr "na početku" + +#, fuzzy +msgid "At end" +msgstr "na kraju" + +# +msgid "Audio" +msgstr "Zvuk" + +msgid "Audio PID" +msgstr "Zvučni PID" + +msgid "Audio language selection 1" +msgstr "" + +msgid "Audio language selection 2" +msgstr "" + +msgid "Audio language selection 3" +msgstr "" + +msgid "Audio language selection 4" +msgstr "" + +# +#, fuzzy +msgid "Audio options..." +msgstr "Zvučne opcije..." + +# +#, fuzzy, python-format +msgid "Audio track (%s) format" +msgstr "Audio zapis(%s) format" + +# +#, fuzzy, python-format +msgid "Audio track (%s) language" +msgstr "Audio zapis (%s) jezik" + +# +msgid "Author: " +msgstr "Autor" + +# +msgid "Authoring mode" +msgstr "Autorski način" + +# +#. TRANSLATORS: (aspect ratio policy: always try to display as fullscreen, when there is no content (black bars) on left/right, even if this breaks the aspect. +msgid "Auto" +msgstr "Auto" + +# +msgid "Auto chapter split every ? minutes (0=never)" +msgstr "Automatska podela delova svakih ? minuta (0=nikad)" + +# +msgid "Auto flesh" +msgstr "Auto fleš" + +msgid "Auto focus" +msgstr "" + +msgid "Auto focus commencing ..." +msgstr "" + +msgid "Auto language selection" +msgstr "" + +# +msgid "Auto scart switching" +msgstr "Automatsko uključenje skarta" + +# +msgid "Automatic" +msgstr "Automatski" + +# +#, fuzzy +msgid "Automatic scan" +msgstr "Automatsko skeniranje " + +msgid "Automatically start timeshift after" +msgstr "" + +msgid "Automatically turn on external subtitles" +msgstr "" + +# +msgid "Available format variables" +msgstr "Mogući promenljivi format " + +# +msgid "B" +msgstr "B" + +# +msgid "BER" +msgstr "BER" + +# +msgid "BER:" +msgstr "BER:" + +# +msgid "Back" +msgstr "Iza" + +# +msgid "Background" +msgstr "Pozadina" + +# +#, fuzzy +msgid "Background color" +msgstr "Boja pozadine" + +msgid "Background delete option" +msgstr "" + +msgid "Background delete speed" +msgstr "" + +# +#, fuzzy +msgid "Backup completed." +msgstr "Rezervna kopija nije uspela" + +# +msgid "Backup failed." +msgstr "Rezervna kopija nije uspela" + +# +msgid "Backup is running..." +msgstr "Bekap u toku..." + +# +msgid "Backup system settings" +msgstr "Snimanje sistemskih postavki" + +# +msgid "Band" +msgstr "Band" + +# +msgid "Bandwidth" +msgstr "Propusnost" + +msgid "Basque" +msgstr "" + +# +msgid "Begin time" +msgstr "Početno vreme" + +msgid "Behavior of 'pause and ok' when paused" +msgstr "" + +# +msgid "Behavior of 0 key in PiP-mode" +msgstr "Uloga tipke 0 u SuS-modu" + +# +msgid "Behavior when a movie is started" +msgstr "Način rada kad je film startovan" + +# +msgid "Behavior when a movie is stopped" +msgstr "Način rada kad je film zaustavljen" + +# +msgid "Behavior when a movie reaches the end" +msgstr "Način rada kad je film stigao do kraja" + +msgid "Big PiP" +msgstr "" + +# +msgid "Bitrate:" +msgstr "Bit rata:" + +msgid "Black screen" +msgstr "" + +msgid "Black screen till locked" +msgstr "" + +# +msgid "Block noise reduction" +msgstr "Blokiraj smanjenje šuma" + +# +msgid "Blue boost" +msgstr "Plavo pojačanje" + +# +msgid "Bookmarks" +msgstr "Oznake" + +# +msgid "Brightness" +msgstr "Osvetljenje" + +msgid "Bulgarian" +msgstr "" + +# +msgid "Burn DVD" +msgstr "Prži DVD" + +# +#, fuzzy, python-format +msgid "Burn audio track (%s)" +msgstr "Nareži audio zapis (%s)" + +# +msgid "Burn existing image to DVD" +msgstr "Nareži postojeći imidž na DVD" + +# +msgid "Burn to DVD" +msgstr "Nareži na DVD" + +# +msgid "Bus: " +msgstr "Bus:" + +msgid "By default, SNR will be shown in dB (when supported by the tuner). This setting forces SNR to be shown as a percentage instead." +msgstr "" + +# +msgid "C" +msgstr "C" + +msgid "C-Band" +msgstr "C-Opseg" + +msgid "CH" +msgstr "" + +# +msgid "CI assignment" +msgstr "CI dodela" + +# +msgid "CVBS" +msgstr "CVBS" + +# +msgid "Cable" +msgstr "Kabel" + +msgid "Cable Scan" +msgstr "" + +# +#, fuzzy +msgid "Cache thumbnails" +msgstr "Učitaj sličice" + +msgid "Calculate" +msgstr "" + +msgid "Calculate all positions" +msgstr "" + +msgid "Calculation complete" +msgstr "" + +msgid "Calibrate" +msgstr "" + +msgid "Can be used for different fps between external subtitles and video." +msgstr "" + +# +msgid "Cancel" +msgstr "Odustani" + +msgid "Cannot determine" +msgstr "" + +msgid "Cannot find any signal ..., aborting !" +msgstr "" + +msgid "Cannot move files on a different disk or system to the trash can" +msgstr "" + +msgid "Cannot move to trash can" +msgstr "" + +# +msgid "Capacity: " +msgstr "Kapacitet:" + +# +msgid "Card" +msgstr "Kartica" + +msgid "Cascade PiP" +msgstr "" + +msgid "Center DVB subtitles" +msgstr "" + +msgid "Center time-labels and remove date" +msgstr "" + +# +msgid "Change bouquets in quickzap" +msgstr "Promeni bukete u brzom prebacivanju" + +# +msgid "Change pin code" +msgstr "Promeni pin kod" + +# +#, fuzzy +msgid "Change recording (duration)" +msgstr "promeni dužinu snimanja" + +# +#, fuzzy +msgid "Change recording (endtime)" +msgstr "promeni snimanje (završno vreme)" + +msgid "Change repeat and delay settings?" +msgstr "" + +msgid "Change service PIN" +msgstr "Promeni servisni PIN" + +msgid "Change service PINs" +msgstr "Promeni servisne PINove" + +msgid "Change setup PIN" +msgstr "Promeni PIN za podešavanje" + +# +msgid "Change step size" +msgstr "Promeni veličinu koraka" + +msgid "Change timer" +msgstr "" + +msgid "Changelog" +msgstr "Zapis izmena" + +# +msgid "Channel" +msgstr "Kanal" + +# +#, fuzzy +msgid "Channel list type" +msgstr "Meni liste kanala" + +# +msgid "Channel not in services list" +msgstr "Kanal nije u listi kanala" + +# +#, fuzzy +msgid "Channel selection" +msgstr "Izbor kanala" + +# +msgid "Channel:" +msgstr "Kanal:" + +# +msgid "Channellist menu" +msgstr "Meni liste kanala" + +# +msgid "Chap." +msgstr "Pog." + +# +msgid "Chapter" +msgstr "Poglavlje" + +# +msgid "Chapter:" +msgstr "Poglavlje:" + +# +msgid "Check" +msgstr "Kontrola" + +msgid "Check the internet connection" +msgstr "" + +msgid "Check the internet connection again" +msgstr "" + +# +#, fuzzy +msgid "Checking filesystem..." +msgstr "Kontrola sistema datoteka" + +msgid "Checking the internet connection" +msgstr "" + +#, python-format +msgid "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" +msgstr "" + +msgid "Children/Youth" +msgstr "" + +msgid "Choose which tuner to configure." +msgstr "" + +# +msgid "Circular left" +msgstr "Kružna leva" + +# +msgid "Circular right" +msgstr "Kružna desna" + +# +msgid "Cleanup" +msgstr "Čišćenje" + +msgid "Clear" +msgstr "" + +# +msgid "Clear before scan" +msgstr "Obriši pre skeniranja" + +msgid "Clear fixed" +msgstr "" + +# +msgid "Clear log" +msgstr "Obriši log" + +# +#, fuzzy +msgid "Clear playlist" +msgstr "očisti Plejlistu" + +# +msgid "Close" +msgstr "Zatvori" + +msgid "Close PiP on exit" +msgstr "" + +# +msgid "Close title selection" +msgstr "Zatvori zbor naslova" + +msgid "Code rate HP" +msgstr "Kod rata HP" + +msgid "Code rate LP" +msgstr "Kod rata LP" + +# +msgid "Coderate HP" +msgstr "Kodrata HP" + +# +msgid "Coderate LP" +msgstr "Kodrata LP" + +# +msgid "Collection name" +msgstr "Ime kolekcije" + +# +msgid "Collection settings" +msgstr "Postavke kolekcije" + +# +#, fuzzy +msgid "Color format" +msgstr "Kolor format" + +# +msgid "Command execution..." +msgstr "Izvršenje komandi" + +# +msgid "Command order" +msgstr "Redosled komandi" + +# +msgid "Common Interface" +msgstr "Opšti interfejs" + +# +#, fuzzy +msgid "Common Interface assignment" +msgstr "Dodeljivanje opšteg interfejsa" + +# +msgid "Communication" +msgstr "Komunikacija" + +# +#, fuzzy +msgid "Compact flash" +msgstr "Kompakt fleš" + +# +msgid "Complete" +msgstr "Kompletno" + +# +msgid "Complex (allows mixing audio tracks and aspects)" +msgstr "Složen (dozvoljava miksovanje audio zapisa i aspekta)" + +msgid "Composition of the recording filenames" +msgstr "Sklapanje imena snimljenih datoteka" + +# +#, fuzzy +msgid "Configuration mode" +msgstr "Mod konfiguracije" + +# +#, fuzzy, python-format +msgid "Configuration mode: %s" +msgstr "Mod konfiguracije" + +# +#, fuzzy +msgid "Configuration..." +msgstr "Mrežna konfiguracija..." + +msgid "Configure an additional delay to improve external subtitle synchronisation." +msgstr "" + +msgid "Configure an additional delay to improve subtitle synchronisation." +msgstr "" + +msgid "Configure for how long the infobar will remain visible after activation." +msgstr "" + +msgid "Configure for how many minutes finished events should remain visible in the EPG. Useful when you need information about an event which has just finished, or has been delayed." +msgstr "" + +msgid "Configure how recording filenames are constructed." +msgstr "" + +msgid "Configure how the fan should operate" +msgstr "" + +msgid "Configure if and how crypto icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how long the latest service in the PiP will be remembered." +msgstr "" + +msgid "Configure if and how service type icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how wide columns will be shown in the channel selection list." +msgstr "" + +msgid "Configure if service picons will be shown in the channel selection list." +msgstr "" + +# +msgid "Configure interface" +msgstr "Konfiguriši interfejs" + +# +msgid "Configure nameservers" +msgstr "Konfiguriši nejmservere" + +msgid "Configure on which devices the background delete option should be used." +msgstr "" + +# +#, fuzzy +msgid "Configure remote control type" +msgstr "Tip roditeljske zaštite" + +msgid "Configure the DiSEqC mode for this LNB." +msgstr "" + +# +#, fuzzy +msgid "Configure the IP address." +msgstr "Konfiguriši interfejs" + +msgid "Configure the aspect ratio of the screen." +msgstr "" + +msgid "Configure the behavior of the 'pause and ok' key when movie playback is already paused." +msgstr "" + +# +#, fuzzy +msgid "Configure the behavior when movie playback is manually stopped." +msgstr "Način rada kad je film zaustavljen" + +# +#, fuzzy +msgid "Configure the behavior when movie playback is started." +msgstr "Način rada kad je film startovan" + +msgid "Configure the behavior when reaching the end of a movie, during movie playback." +msgstr "" + +msgid "Configure the border width of the subtitles. The dark border makes the subtitles easier to read on a light background." +msgstr "" + +msgid "Configure the brightness level of the front panel display during standby." +msgstr "" + +msgid "Configure the brightness level of the front panel display." +msgstr "" + +msgid "Configure the color of the external subtitles, alternative (normal in white, italic in yellow, bold in cyan, underscore in green), white or yellow." +msgstr "" + +msgid "Configure the color of the teletext subtitles." +msgstr "" + +msgid "Configure the contrast level of the front panel display." +msgstr "" + +msgid "Configure the cursor behaviour in the channel selection list. When opening the channel selection list you can keep on the current service or already select up/down and you are able to revert the B+/B- buttons." +msgstr "" + +msgid "Configure the duration in hours the receiver should go to standby when the receiver is not controlled." +msgstr "" + +msgid "Configure the duration in minutes for the screensaver." +msgstr "" + +msgid "Configure the duration in minutes for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +msgstr "" + +msgid "Configure the duration when the receiver should go to shut down in case the receiver is in standby mode." +msgstr "" + +msgid "Configure the first audio language (highest priority)." +msgstr "" + +msgid "Configure the first subtitle language (highest priority)." +msgstr "" + +msgid "Configure the font size of the subtitles." +msgstr "" + +msgid "Configure the fourth audio language." +msgstr "" + +# +#, fuzzy +msgid "Configure the fourth subtitle language." +msgstr "Prebaci na sledeći jezik titla" + +msgid "Configure the function of a long press on the power button." +msgstr "" + +msgid "Configure the function of a short press on the power button." +msgstr "" + +msgid "Configure the function of the '0' button do when PIP is active." +msgstr "" + +# +#, fuzzy +msgid "Configure the gateway." +msgstr "Konfiguriši interfejs" + +msgid "Configure the general audio delay of Dolby Digital sound tracks." +msgstr "" + +msgid "Configure the general audio delay of stereo sound tracks." +msgstr "" + +msgid "Configure the hard disk drive to go to standby after the specified idle time." +msgstr "" + +msgid "Configure the horizontal alignment of the subtitles." +msgstr "" + +msgid "Configure the initial fast forward speed. When you press the fast forward button, winding will start at this speed." +msgstr "" + +msgid "Configure the initial rewind speed. When you press the rewind button, winding will start at this speed." +msgstr "" + +msgid "Configure the latitude of your location." +msgstr "" + +msgid "Configure the longitude of your location." +msgstr "" + +msgid "Configure the minimum amount of disk space to be available for recordings. When the amount of space drops below this value, deleted items will be removed from the trash can." +msgstr "" + +# +#, fuzzy +msgid "Configure the nameserver (DNS)." +msgstr "Konfiguriši nejmservere" + +# +#, fuzzy +msgid "Configure the netmask." +msgstr "Konfiguriši interfejs" + +msgid "Configure the number of days after which items are automaticaly removed from the trash can." +msgstr "" + +msgid "Configure the number of days old timers are kept before they are automatically removed from the timer list." +msgstr "" + +msgid "Configure the offline decoding delay in milliseconds. The configured delay is observed at each control word parity change." +msgstr "" + +#, fuzzy +msgid "Configure the possible fast forward speeds." +msgstr "Početna brzina premotavanja napred" + +msgid "Configure the possible rewind speeds." +msgstr "" + +msgid "Configure the primary EPG language." +msgstr "" + +msgid "Configure the refresh rate of the screen." +msgstr "" + +msgid "Configure the screen resolution in PC output mode." +msgstr "" + +msgid "Configure the second audio language." +msgstr "" + +# +#, fuzzy +msgid "Configure the second subtitle language." +msgstr "Prebaci na sledeći jezik titla" + +msgid "Configure the secondary EPG language." +msgstr "" + +msgid "Configure the sharpness of the video scaling." +msgstr "" + +msgid "Configure the skip time interval for the '1'/'3' buttons." +msgstr "" + +msgid "Configure the skip time interval for the '4'/'6' buttons." +msgstr "" + +msgid "Configure the skip time interval for the '7'/'9' buttons." +msgstr "" + +# +#, fuzzy +msgid "Configure the slow motion speeds." +msgstr "Brzine usporene reprodukcije" + +msgid "Configure the source of the frontend data as shown on the infobars. 'Settings' is as stored on the settings. 'Tuner' is as reported by the tuner." +msgstr "" + +msgid "Configure the speed of the background deletion process. Lower speed will consume less hard disk drive performance." +msgstr "" + +msgid "Configure the speed of the fan" +msgstr "" + +msgid "Configure the subtitle delay when timing information is not available." +msgstr "" + +msgid "Configure the third audio language." +msgstr "" + +# +#, fuzzy +msgid "Configure the third subtitle language." +msgstr "Prebaci na sledeći jezik titla" + +msgid "Configure the transparency of the OSD." +msgstr "" + +msgid "Configure the transparency of the black background of graphical DVB subtitles." +msgstr "" + +# +#, fuzzy +msgid "Configure the tuner mode." +msgstr "Mod konfiguracije" + +msgid "Configure the type of status indication icons shown in the movielist." +msgstr "" + +msgid "Configure the vertical position of the subtitles, measured from the bottom of the screen." +msgstr "" + +msgid "Configure the video output mode (or resolution)." +msgstr "" + +msgid "Configure the way in which the receiver changes channels." +msgstr "" + +msgid "Configure where completed timers show up in the timer list." +msgstr "" + +msgid "Configure whether (and for how long) a second infobar will be shown when OK is pressed twice. The second infobar contains additional information about the current channel." +msgstr "" + +msgid "Configure whether multi channel sound tracks should be downmixed to stereo." +msgstr "" + +msgid "Configure whether or not an icon should be shown when your motorized dish is moving." +msgstr "" + +msgid "Configure which access level to use for the configuration menu. Expert level gives access to all items." +msgstr "" + +msgid "Configure which color format should be used on the SCART output." +msgstr "" + +msgid "Configure which tuner for recordings will be preferred, when more than one tuner is available." +msgstr "" + +msgid "Configure which tuner type will be preferred, when the same service is available on different types of tuners." +msgstr "" + +msgid "Configure which tuner will be preferred, when more than one tuner is available. If set to 'auto' the system will give priority to the tuner having the lowest number of channels/satellites." +msgstr "" + +# +msgid "Configure your internal LAN" +msgstr "Konfiguriši svoj interni LAN" + +# +msgid "Configure your network again" +msgstr "Konfigurišite vašu mrežu ponovo" + +msgid "Configure your network settings, and press OK to start the scan" +msgstr "" + +# +msgid "Configure your wireless LAN again" +msgstr "Konfiguriši svoj bežični LAN ponovo" + +msgid "Configures which video output connector will be used." +msgstr "" + +# +msgid "Configuring" +msgstr "Konfigurišem" + +# +msgid "Conflicting timer" +msgstr "Konflikt tajmera" + +# +msgid "Connect" +msgstr "Spojiti" + +# +#, fuzzy +msgid "Connect to a wireless network" +msgstr "Spojite se na bežičnu mrežu" + +msgid "Connected satellites" +msgstr "" + +# +msgid "Connected to" +msgstr "Povezan sa" + +# +msgid "Connected!" +msgstr "Povezano!" + +# +msgid "Constellation" +msgstr "Konstelacija" + +# +msgid "Content does not fit on DVD!" +msgstr "Sadržaj ne staje na DVD!" + +# +msgid "Continue" +msgstr "Nastaviti" + +# +msgid "Continue in background" +msgstr "Nastaviti u pozadini " + +# +#, fuzzy +msgid "Continue playback" +msgstr "Nastaviti reprodukciju" + +# +msgid "Continue playing" +msgstr "Nastaviti reprodukciju" + +msgid "Continues play (loop)" +msgstr "" + +# +msgid "Contrast" +msgstr "Kontrast" + +msgid "Convert ext3 filesystem to ext4" +msgstr "" + +msgid "Convert ext3 to ext4" +msgstr "" + +msgid "Converting ext3 to ext4..." +msgstr "" + +msgid "Copy" +msgstr "" + +msgid "Could not connect to receiver .NFI image feed server:" +msgstr "" + +msgid "Could not find installed channel list." +msgstr "" + +# +#, fuzzy +msgid "Could not load medium! No disc inserted?" +msgstr "Ne može se ubaciti medij.Disk nije ubačen?" + +# +msgid "Could not open Picture in Picture" +msgstr "Ne mogu otvoriti sliku u slici" + +# +#, fuzzy, python-format +msgid "Could not record due to conflicting timer %s" +msgstr "Snimanje nije moguće zbog konflikta tajmera %s" + +#, fuzzy, python-format +msgid "Could not record due to invalid service %s" +msgstr "Snimanje nemoguće zbog nevaljanog kanala %s" + +# +msgid "Create DVD-ISO" +msgstr "Napravi DVD-ISO" + +msgid "Create more detailed crash log" +msgstr "" + +# +#, python-format +msgid "Creating directory %s failed." +msgstr "Pravljenje direktorijuma %s nije uspelo" + +# +#, fuzzy +msgid "Creating filesystem" +msgstr "Kontrola sistema datoteka" + +msgid "Creating partition" +msgstr "" + +# +msgid "Croatian" +msgstr "Hrvatski" + +msgid "Current CEC address" +msgstr "" + +msgid "Current device: " +msgstr "Aktuelni uređaj:" + +msgid "Current event EPG" +msgstr "" + +#, python-format +msgid "Current mode: %s \n" +msgstr "" + +# +msgid "Current settings:" +msgstr "Trenutne postavke" + +# +#, fuzzy +msgid "Current transponder" +msgstr "Trenutni transponder" + +# +msgid "Current value: " +msgstr "Trenutna vrednost:" + +# +msgid "Current version:" +msgstr "Trenutna verzija:" + +msgid "Currently installed image" +msgstr "Aktuelno instalirani imidž" + +msgid "Currently the commit log cannot be retrieved - please try later again" +msgstr "" + +# +#, fuzzy +msgid "Custom skip time for '1'/'3' buttons" +msgstr "Podesivo vreme preskoka za '1'/'3'-tipke" + +# +#, fuzzy +msgid "Custom skip time for '4'/'6' buttons" +msgstr "Podesivo vreme preskoka za '4'/'6'-tipke" + +# +#, fuzzy +msgid "Custom skip time for '7'/'9' buttons" +msgstr "Podesivo vreme preskoka za '7'/'9'-tipke" + +# +msgid "Customize" +msgstr "Prilagodi" + +msgid "Customize channel list cursor behavior" +msgstr "" + +# +msgid "Cut" +msgstr "Odreži" + +# +msgid "Cutlist editor..." +msgstr "Uređivač liste..." + +# +msgid "Czech" +msgstr "Češki" + +# +msgid "D" +msgstr "D" + +# +msgid "DHCP" +msgstr "DHCP" + +# +#, fuzzy +msgid "DMM advanced" +msgstr "napredno" + +msgid "DMM normal" +msgstr "" + +# +msgid "DUAL LAYER DVD" +msgstr "DVOSLOJNI DVDi " + +msgid "DVB subtitle black transparency" +msgstr "" + +msgid "DVB-C" +msgstr "" + +msgid "DVB-C ANNEX C" +msgstr "" + +# +msgid "DVB-S" +msgstr "DVB-S" + +# +msgid "DVB-S2" +msgstr "DVB-S2" + +msgid "DVB-T" +msgstr "" + +msgid "DVB-T2" +msgstr "" + +msgid "DVD data format" +msgstr "" + +# +#, fuzzy +msgid "DVD file browser" +msgstr "DVD pretraživač datoteka" + +# +msgid "DVD media toolbox" +msgstr "DVD medij alati" + +# +#, fuzzy +msgid "DVD player" +msgstr "DVD plejer" + +# +#, fuzzy +msgid "DVD titlelist" +msgstr "DVD lista naslova" + +# +msgid "Danish" +msgstr "Danski" + +# +msgid "Date" +msgstr "Datum" + +# +#, fuzzy +msgid "Date/time input" +msgstr "Unos Vremena/Datuma" + +# +#, fuzzy +msgid "Deep standby" +msgstr "Isključi Drimbox" + +msgid "Default" +msgstr "Standardno" + +# +msgid "Default movie location" +msgstr "Standardna lokacija filmova" + +# +#, fuzzy +msgid "Default settings" +msgstr "Standardne postavke" + +msgid "Delay before key repeat starts:" +msgstr "" + +msgid "Delay for external subtitles" +msgstr "" + +# +msgid "Delete" +msgstr "Obriši" + +# +msgid "Delete entry" +msgstr "Obriši unos" + +# +msgid "Delete failed!" +msgstr "Brisanje neuspešno!" + +# +#, fuzzy +msgid "Delete file" +msgstr "Obriši datoteku" + +# +#, fuzzy +msgid "Delete playlist entry" +msgstr "obriši unos plejliste" + +# +#, fuzzy +msgid "Delete saved playlist" +msgstr "obriši sačuvanu plejlistu" + +msgid "Delete timer" +msgstr "" + +# +#, fuzzy +msgid "Delete..." +msgstr "Obriši..." + +msgid "Deleted" +msgstr "" + +msgid "Deleted items" +msgstr "" + +msgid "Depth" +msgstr "" + +msgid "Descramble http streams" +msgstr "" + +# +msgid "Description" +msgstr "Opis" + +# +msgid "Deselect" +msgstr "Deselektuj" + +msgid "Details for plugin: " +msgstr "Detalji dodatka:" + +# +msgid "Detected HDD:" +msgstr "Primećeni hard disk:" + +# +msgid "Detected NIMs:" +msgstr "Primećeni NIMs:" + +msgid "Devicename:" +msgstr "" + +msgid "Devide" +msgstr "" + +# +msgid "DiSEqC" +msgstr "DiSEqC" + +msgid "DiSEqC 1.0 command" +msgstr "" + +msgid "DiSEqC 1.1 command" +msgstr "" + +msgid "DiSEqC 1.1 repeats" +msgstr "" + +# +msgid "DiSEqC A/B" +msgstr "DiSEqC A/B" + +# +msgid "DiSEqC A/B/C/D" +msgstr "DiSEqC A/B/C/D" + +# +msgid "DiSEqC mode" +msgstr "DiSEqC mod" + +# +#, fuzzy, python-format +msgid "DiSEqC port %s: %s" +msgstr "DiSEqC ponavljanja" + +# +#, fuzzy +msgid "DiSEqC-tester settings" +msgstr "podešavanje DISEqC testera" + +# +msgid "Dialing:" +msgstr "Zovem:" + +# +msgid "Digital contour removal" +msgstr "Uklanjanje digitalnih obrisa" + +# +msgid "Direct playback of linked titles without menu" +msgstr "Direktna reprodukcija vezanih naslova bez menia" + +msgid "Directory" +msgstr "" + +# +#, fuzzy, python-format +msgid "Directory %s does not exist." +msgstr "Direktorijum %s ne postoji" + +#, python-format +msgid "Directory %s nonexistent." +msgstr "" + +# +msgid "Directory browser" +msgstr "Pretraživač direktorijuma" + +#, python-format +msgid "Directory contains %d file(s) and %d sub-directories.\n" +msgstr "" + +# +#, fuzzy, python-format +msgid "Directory contains %s and %s." +msgstr "Direktorijum %s ne postoji" + +# +msgid "Disable" +msgstr "Onemogući" + +# +msgid "Disable Picture in Picture" +msgstr "Isključi Sliku u Slici" + +msgid "Disable background scanning" +msgstr "" + +msgid "Disable timer" +msgstr "" + +# +msgid "Disabled" +msgstr "Onemogućeno" + +# +msgid "Disconnect" +msgstr "Odspojiti" + +msgid "Disk space to reserve for recordings (in GB)" +msgstr "" + +# +msgid "Display 16:9 content as" +msgstr "Prikaži 16:9 sadržaj kao" + +# +msgid "Display 4:3 content as" +msgstr "Prikaži 4:3 sadržaj kao" + +# +msgid "Display >16:9 content as" +msgstr "Prikaži >16:9 sadržaj kao" + +# +#, fuzzy +msgid "Display and userinterface" +msgstr "Displej i korisnički interfejs" + +msgid "Display message before playing next movie" +msgstr "" + +# +#, fuzzy +msgid "Display setup" +msgstr "Postavke displeja" + +# +#, fuzzy +msgid "Do not change" +msgstr "ne menjaj" + +# +#, fuzzy +msgid "Do not record" +msgstr "ne snimaj" + +# +#, fuzzy +msgid "Do nothing" +msgstr "ne čini ništa " + +# +msgid "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" +msgstr "" +"Da li stvarno želite da proverite sistem datoteka?\n" +"To može potrajati dosta vremena!" + +msgid "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" +msgstr "" + +# +#, python-format +msgid "Do you really want to delete %s?" +msgstr "Jeste li sigurni da želite obrisati %s?" + +# +#, python-format +msgid "" +"Do you really want to download\n" +"the plugin \"%s\"?" +msgstr "" +"Da li stvarno želite da skinete\n" +"dodatak \"%s\"?" + +# +msgid "Do you really want to exit?" +msgstr "Želite li stvarno izaći?" + +msgid "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" +msgstr "" + +# +#, fuzzy, python-format +msgid "" +"Do you really want to remove\n" +"the plugin \"%s\"?" +msgstr "" +"Da li stvarno želite da skinete\n" +"dodatak \"%s\"?" + +# +#, python-format +msgid "Do you really want to remove directory %s from the disk?" +msgstr "Da li stvarno želite da uklonite direktorijum %s sa diska?" + +# +#, python-format +msgid "Do you really want to remove your bookmark of %s?" +msgstr "Da li stvarno želite da uklonite vaše oznake sa %s?" + +msgid "Do you want this?" +msgstr "" + +# +msgid "Do you want to burn this collection to DVD medium?" +msgstr "Da li želite da narežete ovu kolekciju na DVD medij?" + +# +msgid "Do you want to do a service scan?" +msgstr "Želite li napraviti skeniranje kanala?" + +# +msgid "Do you want to do another manual service scan?" +msgstr "Želite li sada započeti drugu ručnu pretragu kanala?" + +#, python-format +msgid "Do you want to download the image to %s ?" +msgstr "Da li želite da skinete imidž u %s ?" + +# +#, fuzzy +msgid "Do you want to install a channel list?" +msgstr "Da li želite da instalirate paket:\n" + +# +msgid "Do you want to install the package:\n" +msgstr "Da li želite da instalirate paket:\n" + +# +msgid "Do you want to play DVD in drive?" +msgstr "Da li želite da reprodukujete DVD u drajvu?" + +# +msgid "Do you want to preview this DVD before burning?" +msgstr "Da li želite da pregledate ovaj DVD pre rezanja?" + +msgid "Do you want to reboot your receiver?" +msgstr "" + +# +msgid "Do you want to remove the package:\n" +msgstr "Da li želite da uklonite paket:\n" + +# +msgid "Do you want to restore your settings?" +msgstr "Želite li vratiti vaše postavke iz sigurnosne kopije?" + +# +msgid "Do you want to resume this playback?" +msgstr "Želite li nastaviti snimak?" + +#, fuzzy, python-format +msgid "Do you want to update your receiver to %s?" +msgstr "Da li želite da skinete imidž u %s ?" + +msgid "Do you want to update your receiver?" +msgstr "" + +# +msgid "Do you want to upgrade the package:\n" +msgstr "Da li želite da nadogradite paket:\n" + +# +msgid "Don't stop current event but disable coming events" +msgstr "Ne zaustavljaj trenutni događaj ali onemogući nadolazeće događaje" + +# +#, fuzzy, python-format +msgid "Done - Installed, upgraded or removed %d package (%s)" +msgid_plural "Done - Installed, upgraded or removed %d packages (%s)" +msgstr[0] "Učinjeno,instalisano,nadograđeno ili uklonjeno %d paketa sa %d grešaka" +msgstr[1] "Učinjeno,instalisano,nadograđeno ili uklonjeno %d paketa sa %d grešaka" +msgstr[2] "Učinjeno,instalisano,nadograđeno ili uklonjeno %d paketa sa %d grešaka" + +# +msgid "Download" +msgstr "Skidanje" + +#, fuzzy, python-format +msgid "Download %s from server" +msgstr "Skidanje %s sa servera" + +msgid "Download .NFI-files for USB-flasher" +msgstr "Skidanje .NFI datoteka za USB-Flešer" + +# +#, fuzzy +msgid "Download plugins" +msgstr "Skini dodatke" + +# +msgid "Downloadable new plugins" +msgstr "Novi dodaci za skidanje" + +# +msgid "Downloadable plugins" +msgstr "Dodaci koji se mogu skidati" + +# +msgid "Downloading" +msgstr "Skidanje" + +# +msgid "Downloading plugin information. Please wait..." +msgstr "Skidanje informacija o dodacima. Molim pričekajte..." + +# +msgid "Dutch" +msgstr "Holandski" + +# +msgid "Dynamic contrast" +msgstr "Dinamički kontrast" + +# +msgid "E" +msgstr "E" + +msgid "EPG" +msgstr "" + +msgid "EPG language selection 1" +msgstr "" + +msgid "EPG language selection 2" +msgstr "" + +# +#, fuzzy +msgid "EPG selection" +msgstr "EPG selektor " + +msgid "EPG settings" +msgstr "" + +# +#, python-format +msgid "ERROR - failed to scan (%s)!" +msgstr "GREŠKA - neuspešno skeniranje (%s)!" + +# +msgid "East" +msgstr "Istok" + +msgid "East limit set" +msgstr "" + +# +msgid "Edit" +msgstr "Urediti" + +# +msgid "Edit DNS" +msgstr "Urediti DNS" + +# +msgid "Edit bouquets list" +msgstr "Uredi listi buketa" + +# +msgid "Edit chapters of current title" +msgstr "Urediti poglavlja sadašnjeg naslova" + +# +msgid "Edit services list" +msgstr "Urediti listu kanala" + +# +msgid "Edit settings" +msgstr "Urediti postavke" + +# +#, fuzzy +msgid "Edit the nameserver configuration of your receiver.\n" +msgstr "Napustite konfiguraciju nejmservera" + +msgid "Edit the network configuration of your receiver.\n" +msgstr "" + +msgid "Edit timer" +msgstr "" + +# +msgid "Edit title" +msgstr "Urediti naslov" + +# +msgid "Edit upgrade source url." +msgstr "Uredi url izvora nadogradnje." + +msgid "Education/Science/..." +msgstr "" + +# +msgid "Electronic Program Guide" +msgstr "Elektronski Programski Vodič" + +# +msgid "Enable" +msgstr "Omogući" + +msgid "Enable 'neutrino' style channel select controlling" +msgstr "" + +msgid "Enable 'neutrino' style zap controlling" +msgstr "" + +# +msgid "Enable 5V for active antenna" +msgstr "Uključi 5V za aktivnu antenu" + +msgid "Enable EIT EPG" +msgstr "" + +msgid "Enable MHW EPG" +msgstr "" + +msgid "Enable Netmed EPG" +msgstr "" + +msgid "Enable OK for channel selection" +msgstr "" + +msgid "Enable ViaSat EPG" +msgstr "" + +msgid "Enable Virgin EPG" +msgstr "" + +msgid "Enable Wake On LAN" +msgstr "" + +msgid "Enable auto fast scan" +msgstr "" + +# +#, fuzzy +msgid "Enable bouquet selection in multi-EPG" +msgstr "omogući uređivanje paketa" + +msgid "Enable freesat EPG" +msgstr "" + +# +msgid "Enable multiple bouquets" +msgstr "Uključi višestruke bukete" + +# +msgid "Enable parental control" +msgstr "Uključi roditeljsku zaštitu" + +msgid "Enable teletext caching" +msgstr "" + +msgid "Enable zapping with CH+/-, B+/-, P+/-" +msgstr "" + +# +msgid "Enabled" +msgstr "Omogućeno" + +# +msgid "Encrypted: " +msgstr "Kodirano:" + +# +msgid "Encryption" +msgstr "Šifrovanje" + +# +#, fuzzy +msgid "Encryption key" +msgstr "Ključ za šifrovanje" + +# +#, fuzzy +msgid "Encryption key type" +msgstr "Tip ključa za šifrovanje" + +# +msgid "Encryption:" +msgstr "Kodiranje:" + +# +msgid "End time" +msgstr "Završno vreme" + +msgid "End time to ignore inactivity sleeptimer" +msgstr "" + +msgid "End time to ignore shutdown in standby" +msgstr "" + +# +msgid "English" +msgstr "Engleski" + +# +#, fuzzy +msgid "Enigma2 skin selector" +msgstr "Enigma2 i mreža" + +# +msgid "Enter main menu..." +msgstr "Uđi u glavni meni" + +# +msgid "Enter pin code" +msgstr "Unesi PIN kod" + +# +msgid "Enter the service pin" +msgstr "Unesite pin kanala" + +msgid "Equal to" +msgstr "" + +# +msgid "Error" +msgstr "Greška" + +msgid "Error code" +msgstr "" + +# +msgid "Error executing plugin" +msgstr "Greška u izvršenju dodatka" + +# +#, python-format +msgid "" +"Error: %s\n" +"Retry?" +msgstr "" +"Greška: %s\n" +"Pokušati ponovo?" + +# +msgid "Estonian" +msgstr "Estonski" + +msgid "Ethernet network interface" +msgstr "" + +msgid "Event font size (relative to skin size)" +msgstr "" + +# +#, fuzzy +msgid "Event view" +msgstr "Pregled događaja" + +# +#, fuzzy +msgid "Event view menu" +msgstr "Pregled događaja" + +msgid "Everywhere" +msgstr "" + +# +msgid "Exceeds dual layer medium!" +msgstr "Prevazilazi dvoslojni medij!" + +# +msgid "Execution finished!!" +msgstr "Izvođenje završeno!!" + +# +#, fuzzy +msgid "Execution progress:" +msgstr "Tok izvođenja:" + +# +msgid "Exif" +msgstr "Exif" + +# +msgid "Exit" +msgstr "Izaći" + +msgid "Exit EPG" +msgstr "" + +# +msgid "Exit editor" +msgstr "Izađi iz editora" + +msgid "Exit input device selection." +msgstr "Napusti izbor ulaznog uređaja." + +msgid "Exit media player?" +msgstr "" + +# +#, fuzzy +msgid "Exit mediaplayer" +msgstr "Izađi iz medija plejera" + +# +#, fuzzy +msgid "Exit movie list" +msgstr "izađi iz liste filmova" + +# +#, fuzzy +msgid "Exit movie player?" +msgstr "Izađi iz medija plejera" + +# +#, fuzzy +msgid "Exit nameserver configuration" +msgstr "Napustite konfiguraciju nejmservera" + +# +#, fuzzy +msgid "Exit network interface list" +msgstr "Napustite listu mrežnih interfejsa" + +# +msgid "Exit network wizard" +msgstr "Napusti mrežnog čarobnjaka" + +# +msgid "Exit the wizard" +msgstr "Izađite iz čarobnjaka" + +# +msgid "Expert" +msgstr "Ekspert" + +msgid "Extend sleeptimer 15 minutes" +msgstr "" + +# +msgid "Extended Software" +msgstr "Prošireni softver" + +# +msgid "Extended Software Plugin" +msgstr "Prošireni softver dodatak " + +# +#, fuzzy +msgid "Extended network setup plugin..." +msgstr "Prošireni dodatak za postavke mreže..." + +# +#, fuzzy +msgid "Extended setup..." +msgstr "Proširene postavke..." + +# +msgid "Extensions" +msgstr "Proširenja" + +# +msgid "Extensions management" +msgstr "Rukovanje proširenjima" + +msgid "External PiP" +msgstr "" + +msgid "External subtitle color" +msgstr "" + +msgid "Extra motor options" +msgstr "" + +# +msgid "FEC" +msgstr "FEC" + +msgid "FTA" +msgstr "" + +# +msgid "Factory reset" +msgstr "Fabrički reset" + +# +msgid "Failed" +msgstr "Neuspeh" + +msgid "Failed to write /tmp/positionersetup.log: " +msgstr "" + +# +#, python-format +msgid "Fan %d" +msgstr "Vent. %d " + +# +#, python-format +msgid "Fan %d PWM" +msgstr "Ventil. %d PWM" + +# +#, fuzzy, python-format +msgid "Fan %d voltage" +msgstr "Ventil. %d Napona" + +msgid "Fan operation" +msgstr "" + +msgid "Fan speed" +msgstr "" + +# +msgid "Fast" +msgstr "Brzo" + +# +msgid "Fast DiSEqC" +msgstr "Brzi DiSEqC" + +msgid "Fast Scan" +msgstr "" + +# +msgid "Fast epoch" +msgstr "Brza epoha" + +# +#, fuzzy +msgid "Fast forward speeds" +msgstr "Brzine premotavanja unapred" + +# +msgid "Favourites" +msgstr "Favoriti" + +msgid "File appears to be busy.\n" +msgstr "" + +# +#, fuzzy +msgid "Filesystem check" +msgstr "Provera sistema datoteka" + +msgid "Final position at" +msgstr "" + +msgid "Final position at index" +msgstr "" + +msgid "Fine movement" +msgstr "" + +# +msgid "Finetune" +msgstr "Fino podešavanje" + +# +msgid "Finished" +msgstr "Završeno" + +# +msgid "Finished configuring your network" +msgstr "Završena konfiguracija vaše mreže" + +# +msgid "Finished restarting your network" +msgstr "Završeno je restartovanje vaše mreže" + +# +msgid "Finnish" +msgstr "Finski" + +msgid "Fixed" +msgstr "" + +# +msgid "Flash" +msgstr "Fleš" + +# +msgid "Flashing failed" +msgstr "Fleš nije uspeo" + +# +msgid "Following tasks will be done after you press OK!" +msgstr "Sledeći zadaci će biti urađeni kad pritisnete OK!" + +# +msgid "Format" +msgstr "Formatiranje" + +msgid "Forward volume keys" +msgstr "" + +# +msgid "Frame size in full view" +msgstr "Veličina frejma u punom izgledu" + +# +msgid "French" +msgstr "Francuski" + +# +msgid "Frequency" +msgstr "Frekvencija" + +# +msgid "Frequency bands" +msgstr "Band frekvencije" + +# +msgid "Frequency scan step size(khz)" +msgstr "Veličina frekvencijskih koraka (khz)" + +# +msgid "Frequency steps" +msgstr "Frekvencijski koraci" + +msgid "Frequency:" +msgstr "" + +# +msgid "Fri" +msgstr "Pet" + +# +msgid "Friday" +msgstr "Petak" + +msgid "From :" +msgstr "" + +# +#, python-format +msgid "Frontprocessor version: %d" +msgstr "Verzija frontprocesora: %d" + +msgid "Full transparency" +msgstr "" + +msgid "Fulview resulution" +msgstr "" + +msgid "Function of OK button" +msgstr "" + +msgid "Further Options" +msgstr "" + +# +msgid "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" +msgstr "" +"GUI se treba restartovati da se primeni nova maska\n" +" Želite li restartovati GUI sada ?" + +# +msgid "Gateway" +msgstr "Mrežni čvor" + +# +#, fuzzy +msgid "General AC3 delay" +msgstr "Opšte AC3 kašnjenje" + +# +#, fuzzy +msgid "General PCM delay" +msgstr "Opšte PCM kašnjenje" + +# +msgid "Genre" +msgstr "Žanrovi" + +# +msgid "German" +msgstr "Nemački" + +msgid "Get latest experimental image" +msgstr "Uzmi poslednji eksperimentalni imidž" + +msgid "Get latest release image" +msgstr "Uzmi poslednji predstavljeni imidž" + +# +msgid "Getting plugin information. Please wait..." +msgstr "Skidanje informacije o dodatku. Molim pričekajte..." + +msgid "Go down the list" +msgstr "" + +msgid "Go to first movie or last item" +msgstr "" + +msgid "Go to first movie or top of list" +msgstr "" + +# +#, fuzzy +msgid "Go to first service" +msgstr "Pomeri gore na prvi unos" + +# +#, fuzzy +msgid "Go to last service" +msgstr "Zaštiti kanale" + +# +#, fuzzy +msgid "Go to next event" +msgstr "Pomeri dole na naredni unos" + +# +#, fuzzy +msgid "Go to next page of service" +msgstr "prebaci na sledeći podkanal " + +# +#, fuzzy +msgid "Go to previous event" +msgstr "Pomeri gore na prethodni unos" + +# +#, fuzzy +msgid "Go to previous page of service" +msgstr "Vratite se na prethodni kanal" + +msgid "Go up the list" +msgstr "" + +msgid "Goto" +msgstr "" + +# +msgid "Goto 0" +msgstr "Pođi do 0" + +msgid "Goto :" +msgstr "" + +msgid "Goto X" +msgstr "" + +msgid "Goto index position" +msgstr "" + +msgid "Goto next day of events" +msgstr "" + +msgid "Goto next page of events" +msgstr "" + +# +msgid "Goto position" +msgstr "Idi na poziciju" + +msgid "Goto previous day of events" +msgstr "" + +msgid "Goto previous page of events" +msgstr "" + +msgid "Goto specific date/time" +msgstr "" + +msgid "GotoX calibration" +msgstr "" + +msgid "GraphMultiEpg Settings" +msgstr "" + +# +msgid "Graphical Multi EPG" +msgstr "Grafički Multi EPG" + +# +msgid "Greek" +msgstr "Grčki" + +# +msgid "Green boost" +msgstr "Zeleno pojačanje" + +msgid "Guard interval" +msgstr "Zaštitni interval" + +msgid "HD list" +msgstr "" + +msgid "HDMI-CEC setup" +msgstr "" + +msgid "Handle standby from TV" +msgstr "" + +msgid "Handle wakeup from TV" +msgstr "" + +# +#, fuzzy +msgid "Hard disk" +msgstr "Hard disk" + +# +#, fuzzy +msgid "Hard disk setup" +msgstr "Postavke hard diska" + +# +#, fuzzy +msgid "Hard disk standby after" +msgstr "Isključi hard disk posle" + +# +msgid "Harddisk" +msgstr "Hard disk" + +msgid "Hardware: " +msgstr "" + +msgid "Hebrew" +msgstr "" + +msgid "Helps setting up your dish" +msgstr "" + +msgid "Hidden network" +msgstr "" + +msgid "Hide CI messages" +msgstr "" + +msgid "Hide channel list in radio mode" +msgstr "" + +msgid "Hide known extensions" +msgstr "" + +msgid "Hide number markers" +msgstr "" + +# +#, fuzzy +msgid "Hide player" +msgstr "sakrij plejer" + +msgid "Hide zap errors" +msgstr "" + +msgid "Hierarchy info" +msgstr "Rangiranje info" + +# +#, fuzzy +msgid "Hierarchy information" +msgstr "Informacije hijerarhije" + +# +msgid "High bitrate support" +msgstr "Podrška za visoki bitrejt" + +msgid "Hold screen" +msgstr "" + +msgid "Hold till locked" +msgstr "" + +msgid "Home" +msgstr "" + +# +msgid "Horizontal" +msgstr "Horizontalno" + +msgid "Horizontal turning speed" +msgstr "" + +# +msgid "How many minutes do you want to record?" +msgstr "Koliko minuta želite snimati ?" + +# +msgid "Hue" +msgstr "Nijansa" + +# +msgid "Hungarian" +msgstr "Mađarski" + +# +#, fuzzy +msgid "IP address" +msgstr "IP Adresa" + +# +msgid "ISO file is too large for this filesystem!" +msgstr "ISO datoteka je prevelika za ovaj sistem?" + +# +msgid "ISO path" +msgstr "ISO putanja" + +msgid "Icons" +msgstr "" + +# +msgid "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." +msgstr "" +"Ukoliko vidite ovu poruku, nešto je pogrešno sa\n" +"vašim skart priključkom. Pritisnite OK za povratak." + +# +msgid "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." +msgstr "" +"Ako vaš TV ima poboljšavanje osvetljenja ili kontrasta,isključite ga.Ako imate nešto zvano \"dynamic \",postavite na standarno.Podesite nivo pozadinskog osvetljenja na vrednosti po vašem ukusu.Smanjite kontrast na vašem TV koliko je moguće.\n" +"Zatim smanjite do minimuma osvetljenje,ali budite sigurni da se najniže senke sive razaznaju.\n" +"Ne brinite sada za svetle senke.One će biti postavljene u sledećem koraku.\n" +"Ako ste zadovoljni rezultatom,stisnite OK." + +msgid "Image: " +msgstr "" + +# +#, fuzzy +msgid "Immediate shutdown" +msgstr "odmah isključi" + +# +msgid "In order to record a timer, the TV was switched to the recording service!\n" +msgstr "Da bi počelo snimanje po tajmeru,TV je prebačen na kanal za snimanje!\n" + +# +#, fuzzy +msgid "In progress" +msgstr "U toku" + +msgid "Inactivity Sleeptimer" +msgstr "" + +msgid "Include AIT in http streams" +msgstr "" + +msgid "Include ECM in http streams" +msgstr "" + +msgid "Include EIT in http streams" +msgstr "" + +msgid "Incorrect type service for PiP!" +msgstr "" + +# +msgid "Increased voltage" +msgstr "Povećani napon" + +# +msgid "Index" +msgstr "Indeks" + +msgid "Index allocated:" +msgstr "" + +# +msgid "Info" +msgstr "Info" + +# +#, fuzzy +msgid "Info bar" +msgstr "Info traka" + +# +#, fuzzy +msgid "Info bar timeout" +msgstr "Vreme trajanja info trake" + +msgid "Infobar frontend data source" +msgstr "" + +# +msgid "Information" +msgstr "Informacije" + +# +msgid "Init" +msgstr "Init" + +#, fuzzy +msgid "Initial fast forward speed" +msgstr "Početna brzina premotavanja napred" + +# +msgid "Initial location in new timers" +msgstr "Početna lokacija u novim tajmerima." + +msgid "Initial lock ratio" +msgstr "" + +#, fuzzy +msgid "Initial rewind speed" +msgstr "Početna brzina premotavanja nazad" + +msgid "Initial signal quality" +msgstr "" + +msgid "Initial signal quality:" +msgstr "" + +# +msgid "Initialization" +msgstr "Inicijalizacija" + +# +msgid "Initialize" +msgstr "Inicijaliziraj" + +msgid "Initializing storage device..." +msgstr "" + +# +msgid "Input" +msgstr "Ulaz " + +msgid "Input device setup" +msgstr "Podešavanje ulaznog uređaja " + +msgid "Input devices" +msgstr "Ulazni uređaji" + +# +msgid "Install" +msgstr "Instalisati" + +# +msgid "Install a new image with a USB stick" +msgstr "Instalisati novi imidž sa USB stika" + +# +msgid "Install a new image with your web browser" +msgstr "Instalisati novi imidž vašim web pretraživačem" + +# +#, fuzzy +msgid "Install channel list" +msgstr "sledeći kanal u istoriji" + +msgid "Install extensions" +msgstr "" + +# +msgid "Install extensions." +msgstr "Instaliraj proširenja." + +# +msgid "Install local extension" +msgstr "Instaliraj lokalno proširenje" + +msgid "Install picons on" +msgstr "" + +# +#, fuzzy +msgid "Install softcam" +msgstr "Instaliram softver..." + +# +#, fuzzy +msgid "Installation has completed." +msgstr "Instalacija završena." + +# +#, fuzzy +msgid "Installation or removal has completed." +msgstr "Instalacija ili uklanjanje završeno." + +# +msgid "Installing" +msgstr "Instaliram" + +# +#, fuzzy +msgid "Installing software..." +msgstr "Instaliram softver..." + +# +#, fuzzy +msgid "Instant recording location" +msgstr "Lokacija instant snimanja" + +# +#, fuzzy +msgid "Instant recording..." +msgstr "Trenutno snimanje..." + +# +msgid "Interface: " +msgstr "Iinterfejs:" + +# +msgid "Intermediate" +msgstr "Srednje" + +# +#, fuzzy +msgid "Internal flash" +msgstr "Interni fleš" + +msgid "Internal hdd only" +msgstr "" + +msgid "Interval between keys when repeating:" +msgstr "" + +# +#, python-format +msgid "Invalid directory selected: %s" +msgstr "Izabran je nevažeči direktorijum: %s" + +# +#, fuzzy +msgid "Invalid location" +msgstr "Nevažeća lokacija" + +msgid "Invalid transponder data" +msgstr "" + +# +msgid "Inversion" +msgstr "Inverzija" + +# +msgid "Invert" +msgstr "Invertni" + +# +msgid "Ipkg" +msgstr "Ipkg" + +#, fuzzy +msgid "Is this setting ok?" +msgstr "Koristi ove postavke?" + +# +#, fuzzy +msgid "Is this video mode ok?" +msgstr "Da li je ovaj video mod OK?" + +# +msgid "Italian" +msgstr "Italijanski" + +msgid "Items per page " +msgstr "" + +msgid "Items per page for list screen" +msgstr "" + +# +#, fuzzy +msgid "Job overview" +msgstr "Pregled poslova" + +msgid "Jump to beginning of list" +msgstr "" + +# +#, fuzzy +msgid "Jump to end of list" +msgstr "skoči na kraj liste" + +# +#, fuzzy +msgid "Jump to next marked position" +msgstr "skoči do sledeće označene pozicije" + +# +#, fuzzy +msgid "Jump to previous marked position" +msgstr "skoči do predhodne označene pozicije" + +# +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect) +#, fuzzy +msgid "Just scale" +msgstr "Samo razmeri" + +msgid "Keep service" +msgstr "" + +# +#, fuzzy +msgid "Kernel version: " +msgstr "Nova verzija:" + +# +msgid "Keyboard" +msgstr "Tastatura" + +# +#, fuzzy +msgid "Keyboard map" +msgstr "Mapa tastature" + +# +#, fuzzy +msgid "Keyboard setup" +msgstr "Postavke tastature" + +# +#, fuzzy +msgid "LAN adapter" +msgstr "LAN adapter" + +msgid "LAN connection" +msgstr "LAN veza" + +# +msgid "LNB" +msgstr "LNB" + +# +msgid "Language" +msgstr "Jezik" + +# +msgid "Language selection" +msgstr "Izbor jezika" + +# +msgid "Last config" +msgstr "Zadnji konfig" + +# +msgid "Last speed" +msgstr "Poslednja brzina" + +msgid "Last upgrade: " +msgstr "" + +msgid "Latest Commits" +msgstr "" + +# +msgid "Latitude" +msgstr "Geografska širina" + +# +msgid "Latvian" +msgstr "Letonski" + +# +#, fuzzy +msgid "Leave DVD player?" +msgstr "Napustiti DVD plejer" + +# +msgid "Left" +msgstr "Levo" + +msgid "Left from servicename" +msgstr "" + +msgid "Leisure hobbies" +msgstr "" + +# +#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term. +msgid "Letterbox" +msgstr "Letterbox" + +msgid "Letterbox zoom" +msgstr "" + +# +#, fuzzy +msgid "Limit character set for recording filenames" +msgstr "Ograničeni znakovi za imena snimljenih datoteka" + +# +msgid "Limit east" +msgstr "Istočni limit" + +msgid "Limit the characters that can be used in recording filenames to (7 bit) ascii. This ensures compatibility with operating systems or file systems with limited character sets." +msgstr "" + +# +msgid "Limit west" +msgstr "Zapadni limit" + +msgid "Limits cancelled" +msgstr "" + +msgid "Limits enabled" +msgstr "" + +# +msgid "Limits off" +msgstr "Isključi limite" + +# +msgid "Limits on" +msgstr "Limite na" + +# +#, fuzzy +msgid "Link quality:" +msgstr "Kvalitet linka:" + +# +msgid "Link:" +msgstr "Link:" + +# +msgid "Linked titles with a DVD menu" +msgstr "Vezani naslovi sa DVD meniem" + +# +#, fuzzy +msgid "List EPG functions..." +msgstr "lista EPG pregleda..." + +msgid "List available networks" +msgstr "" + +msgid "List mode" +msgstr "" + +# +#, fuzzy +msgid "List of storage devices" +msgstr "Lista uređaja za odlaganje" + +msgid "List type" +msgstr "" + +#, python-format +msgid "List version %d, found %d channel" +msgid_plural "List version %d, found %d channels" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +# +#, fuzzy +msgid "Listen to the radio..." +msgstr "slušaj radio..." + +msgid "Lists reloaded!" +msgstr "" + +# +msgid "Lithuanian" +msgstr "Litvanski" + +# +msgid "Load" +msgstr "Ubaciti" + +msgid "Load Length of Movies in Movielist" +msgstr "" + +# +#, fuzzy +msgid "Load length of movies in movie list" +msgstr "Ubaciti dužinu filma u listi filmova" + +# +#, fuzzy +msgid "Load playlist" +msgstr "učitaj plejlistu" + +# +#, fuzzy +msgid "Local network" +msgstr "Lokalna mreža" + +# +msgid "Location" +msgstr "Lokacija" + +# +msgid "Location for instant recordings" +msgstr "Lokacija za instant snimanja" + +msgid "Lock ratio" +msgstr "" + +# +msgid "Lock:" +msgstr "Zaključaj:" + +# +msgid "Log results to harddisk" +msgstr "Rezultati izveštaja na hard disk" + +msgid "Long filenames" +msgstr "Dugačka imena datoteka" + +# +#, fuzzy +msgid "Long key press" +msgstr "Dugi pritisak tipke" + +# +msgid "Longitude" +msgstr "Geografska dužina" + +msgid "Loop through to" +msgstr "" + +msgid "Luxembourgish" +msgstr "" + +# +#, fuzzy +msgid "MMC card" +msgstr "MMC Kartica" + +# +msgid "MORE" +msgstr "VIŠE" + +# +msgid "Main menu" +msgstr "Glavni meni" + +msgid "Maintain old EPG data for" +msgstr "" + +# +msgid "Make this mark an 'in' point" +msgstr "Napravi ovu oznaku kao 'ulaznu' tačku" + +# +msgid "Make this mark an 'out' point" +msgstr "Napravi ovu oznaku kao 'izlaznu' tačku" + +# +msgid "Make this mark just a mark" +msgstr "Napravi ovu oznaku samo kao oznaku" + +# +msgid "Manage extensions" +msgstr "Rukuj proširenjima" + +# +msgid "Manage your receiver's software" +msgstr "Upravljanje softverom vašeg prijemnika" + +msgid "Manual" +msgstr "" + +# +msgid "Manual Scan" +msgstr "Ručno skeniranje" + +msgid "Manual configuration" +msgstr "" + +# +#, fuzzy +msgid "Manual scan" +msgstr "Ručno skeniranje" + +# +msgid "Manual transponder" +msgstr "Ručno uneseni transponder" + +# +msgid "Manufacturer" +msgstr "Proizvođač" + +# +#, fuzzy +msgid "Margin after recording (minutes)" +msgstr "Margina pre snimanja (minuti)" + +# +#, fuzzy +msgid "Margin before recording (minutes)" +msgstr "Margina pre snimanja (minuti)" + +msgid "Max memory positions" +msgstr "" + +# +#, fuzzy +msgid "Max. bitrate: " +msgstr "Maks. Bit rata:" + +# +msgid "Media player" +msgstr "Medija plejer" + +# +#, fuzzy +msgid "Media scanner" +msgstr "Medija plejer" + +# +msgid "Medium is not a writeable DVD!" +msgstr "Medij nije upisivi DVD!" + +# +msgid "Medium is not empty!" +msgstr "Medij nije prazan!" + +msgid "Memory" +msgstr "" + +msgid "Memory index" +msgstr "" + +# +msgid "Menu" +msgstr "Meni" + +# +msgid "Message" +msgstr "Poruka" + +# +msgid "Message..." +msgstr "Poruka..." + +#, python-format +msgid "Minimum age %d years" +msgstr "" + +#, fuzzy +msgid "Minimum send interval" +msgstr "Zaštitni interval" + +msgid "Missing " +msgstr "" + +# +#, fuzzy +msgctxt "Satellite configuration mode" +msgid "Mode" +msgstr "Način" + +# +#, fuzzy +msgctxt "Video output mode" +msgid "Mode" +msgstr "Način" + +# +msgid "Model: " +msgstr "Model:" + +# +msgid "Modulation" +msgstr "Modulacija" + +# +msgid "Modulator" +msgstr "Modulator" + +# +msgid "Mon" +msgstr "Pon" + +# +msgid "Mon-Fri" +msgstr "Pon-Pet" + +# +msgid "Monday" +msgstr "Ponedeljak" + +# +msgid "Mosquito noise reduction" +msgstr "Moskito smanjenje šuma" + +msgid "Mount" +msgstr "" + +msgid "Move" +msgstr "" + +# +#, fuzzy +msgid "Move PiP to main picture" +msgstr "premesti SuS na glavnu sliku" + +# +msgid "Move Picture in Picture" +msgstr "Pomerite sliku u slici" + +# +msgid "Move east" +msgstr "Pokreći na istok" + +msgid "Move to other directory" +msgstr "" + +msgid "Move to position X" +msgstr "" + +# +msgid "Move west" +msgstr "Pokreći na zapad" + +msgid "Moved to position 0" +msgstr "" + +msgid "Moved to position at index" +msgstr "" + +msgid "Movement" +msgstr "" + +msgid "Movie List Configuration" +msgstr "" + +msgid "Movie Selection" +msgstr "" + +# +#, fuzzy +msgid "Movie list configuration" +msgstr "Konfiguracija tjunera" + +# +msgid "Movie location" +msgstr "Lokacija filmova" + +# +#, fuzzy +msgid "Movie selection" +msgstr "Lokacija filmova" + +msgid "Movie/Drama" +msgstr "" + +# +msgid "Movielist menu" +msgstr "Meni liste filmova" + +msgid "Moving" +msgstr "" + +msgid "Moving east ..." +msgstr "" + +msgid "Moving to position" +msgstr "" + +msgid "Moving west ..." +msgstr "" + +# +msgid "Multi EPG" +msgstr "Multi EPG" + +msgid "Multi-EPG bouquet selection" +msgstr "Multi EPG izbor buketa" + +# +msgid "Multimedia" +msgstr "Multimedija" + +# +msgid "Multiple service support" +msgstr "Podrška za višestruke kanale" + +msgid "Multiplex" +msgstr "Multipleks" + +# +msgid "Multisat" +msgstr "Multisat" + +msgid "Multisat all select" +msgstr "" + +msgid "Music/Ballet/Dance" +msgstr "" + +# +msgid "Mute" +msgstr "Isključi zvuk" + +# +msgid "N/A" +msgstr "N/A" + +# +msgid "NEXT" +msgstr "SLEDEĆE" + +# +#, fuzzy +msgid "NFI image flashing" +msgstr "NFI imidž flešovanje" + +# +msgid "NFI image flashing completed. Press Yellow to Reboot!" +msgstr "Flešovanje NFI imidža završeno.Pritisni žuto za novo podizanje" + +msgid "NIM" +msgstr "NIM" + +# +msgid "NOW" +msgstr "SADA" + +# +msgid "NTSC" +msgstr "NTSC" + +# +msgid "Name" +msgstr "Ime" + +# +msgid "Nameserver" +msgstr "Nejmserver" + +# +#, python-format +msgid "Nameserver %d" +msgstr "Nejmserver %d" + +# +msgid "Nameserver settings" +msgstr "Postavke nejmservera" + +# +#, fuzzy +msgid "Nameserver setup" +msgstr "Postavke nejmservera" + +msgid "Namespace" +msgstr "Prostor za ime" + +# +msgid "Netmask" +msgstr "Mrežna maska" + +# +msgid "Network" +msgstr "Mreža" + +msgid "Network ID" +msgstr "" + +# +#, fuzzy +msgid "Network configuration..." +msgstr "Mrežna konfiguracija..." + +# +#, fuzzy +msgid "Network mount" +msgstr "Montiranje mreže" + +# +#, fuzzy, python-format +msgid "Network mount %s" +msgstr "Montiranje mreže" + +#, fuzzy +msgid "Network name (SSID)" +msgstr "Test mreže:" + +# +msgid "Network scan" +msgstr "Pretraga mreže" + +# +msgid "Network setup" +msgstr "Mrežne postavke " + +# +msgid "Network test" +msgstr "Test mreže" + +# +msgid "Network test..." +msgstr "Test mreže..." + +msgid "Network test: " +msgstr "Test mreže:" + +# +#, fuzzy +msgid "Network wizard" +msgstr "Mrežni čarobnjak" + +# +msgid "Network:" +msgstr "Mreža:" + +# +msgid "New" +msgstr "Novo" + +msgid "New PIN" +msgstr "Novi PIN" + +# +msgid "New version:" +msgstr "Nova verzija:" + +msgid "News Current Affairs" +msgstr "" + +msgctxt "button label, 'next screen'" +msgid "Next" +msgstr "" + +msgctxt "now/next: 'next' event label" +msgid "Next" +msgstr "" + +# +msgid "No" +msgstr "Ne" + +# +msgid "No (supported) DVDROM found!" +msgstr "Nije pronađen (podržan) DVDROM!" + +# +msgid "No Connection" +msgstr "Nema veze" + +# +msgid "No HDD found or HDD not initialized!" +msgstr "Disk nije pronađen ili nije inicijaliziran!" + +# +msgid "No backup needed" +msgstr "Sigurnosna kopija nije potrebna" + +msgid "No cable tuner found!" +msgstr "" + +# +msgid "" +"No data on transponder!\n" +"(Timeout reading PAT)" +msgstr "" +"Nema podataka na transponderu!\n" +"(Isteklo vreme čitanja PAT)" + +msgid "No delay" +msgstr "" + +# +msgid "No description available." +msgstr "Opis nije dostupan." + +# +msgid "No details for this image file" +msgstr "Nema detalja za ovu imidž datoteku" + +# +msgid "No displayable files on this medium found!" +msgstr "Nisu pronađene vidljive datoteke na ovom mediju!" + +# +msgid "No event info found, recording indefinitely." +msgstr "Informacije o događaju nisu pronađene, snimanje beskrajno." + +# +msgid "No fast winding possible yet.. but you can use the number buttons to skip forward/backward!" +msgstr "Još uvek nije moguće brzo premotavanje.. ali možeš koristiti num. tipke za skok napred/nazad!" + +msgid "No free index available" +msgstr "" + +# +msgid "No free tuner!" +msgstr "Nema slobodnog tjunera!" + +# +msgid "No network connection available." +msgstr "Nijedna mrežna veza nije dostupna." + +# +msgid "No networks found" +msgstr "Nijedna mreža nije nađena" + +msgid "No new plugins found" +msgstr "" + +# +msgid "No positioner capable frontend found." +msgstr "Nijedan sposoban čeoni pozicioner nije pronađen." + +msgid "No satellites configured. Plese check your tuner setup." +msgstr "" + +msgid "No service" +msgstr "" + +# +#, fuzzy +msgid "No services/providers selected" +msgstr "nijedni kanali/provajderi nisu izabrani" + +# +#, fuzzy +msgid "No standby" +msgstr "ne stanje pripravnosti" + +msgid "No suitable sat tuner found!" +msgstr "" + +# +msgid "No tags are set on these movies." +msgstr "Nema postavljenih oznaka na ovim filmovima." + +# +#, fuzzy +msgid "No timeout" +msgstr "nema vremenskog ograničenja" + +# +msgid "No to all" +msgstr "Ne za sve" + +msgid "No transparency" +msgstr "" + +# +msgid "No tuner is configured for use with a diseqc positioner!" +msgstr "Niedan tjuner nije konfigurisan za rad s DiSEqC pozicionerom!" + +# +msgid "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Nijedan tjuner nije uključen!\n" +"Molim podesite postavke tjunera pre nego počnete pretraživanje kanala." + +# +#, fuzzy +msgid "No updates available" +msgstr "ažuriranja dostupna." + +msgid "No updates available. Please try again later." +msgstr "" + +# +msgid "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" +msgstr "" +"Ispravan PIN za kanal nije pronađen!\n" +"Želite li sada promeniti PIN kanala?\n" +"Ukoliko kažete 'Ne' ovde,kanali ostaju nezaštićeni." + +# +msgid "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" +msgstr "" +"Ispravan PIN za 'Postavke' nije pronađen!\n" +"Želite li promeniti PIN sada?\n" +"Ukoliko kažete 'Ne' ovde, postavke uređaja ostaju nezaštićene!" + +msgid "No wireless networks found! Searching..." +msgstr "" + +# +msgid "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." +msgstr "" +"Nije pronađen lokalni mrežni adapter u radu.\n" +"Molimo proverite da li ste uključili mrežni kabl i da li je mreža ispravno konfigurisana." + +# +msgid "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." +msgstr "" +"Nije pronađen adapter za bežičnu mrežu u radu.\n" +"Molimo proverite da ste prikačili kompatibilan WLAN uređaj i da je mreža ispravno konfigurisana." + +# +msgid "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." +msgstr "" +"Nije pronađen interfejs za bežičnu mrežu.\n" +"Molimo proverite da li ste priključili kompatibilan WLAN uređaj ili omogućili vaš lokalni mrežni interfejs." + +# +msgid "No, but restart from begin" +msgstr "Ne, ali restartuj od početka" + +# +msgid "No, do nothing." +msgstr "Ne, ništa ne čini " + +msgid "No, just start my receiver" +msgstr "" + +msgid "No, never" +msgstr "ne,nikad" + +# +msgid "None" +msgstr "Nijedan" + +# +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right) +msgid "Nonlinear" +msgstr "Nelinearno" + +msgid "Normal mode" +msgstr "" + +# +msgid "North" +msgstr "Sever" + +# +msgid "Norwegian" +msgstr "Norveški" + +msgid "Not associated" +msgstr "" + +msgid "Not configured" +msgstr "" + +# +#, fuzzy, python-format +msgid "Not enough disk space. Please free up some disk space and try again. (%d MB required, %d MB available)" +msgstr "Nedovoljno prostora na disku. Molimo oslobodite nešto prostora i probajte ponovo. (%d MB potrebno,%d MB omogućeno)" + +msgid "Nothing connected" +msgstr "" + +# +msgid "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Ništa za skeniranje!\n" +"Molim podesite postavke tjunera pre početka skeniranja kanala." + +msgctxt "now/next: 'now' event label" +msgid "Now" +msgstr "" + +# +#, fuzzy +msgid "Now playing" +msgstr "Trenutno pokrenuto" + +# +msgid "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." +msgstr "Sada koristite postavke kontrasta,da pojačate pozadinsko svetlo najviše moguće,ali budite sigurni da još uvek možete videti razliku između dva najsvetlija nivoa senki.Ako ste ovo učinili,pritisnite OK." + +# +msgid "OK" +msgstr "OK" + +# +msgid "OK, guide me through the upgrade process" +msgstr "OK, vodi me kroz postupak nadogradnje" + +msgid "ONID" +msgstr "ONID" + +msgid "OSD name request" +msgstr "" + +# +#, fuzzy +msgid "OSD settings" +msgstr "Postavke OSD" + +msgid "OSD transparency" +msgstr "" + +# +msgid "Off" +msgstr "Isključi" + +msgid "Offline decode delay (ms)" +msgstr "" + +# +# +msgid "Ok" +msgstr "Ok" + +# +msgid "On" +msgstr "Uključeno" + +msgid "On end of movie" +msgstr "" + +msgid "On end of movie (as menu)" +msgstr "" + +# +msgid "One" +msgstr "Jedan" + +# +msgid "Only extensions." +msgstr "Samo proširenja:" + +# +#, fuzzy +msgid "Only free scan" +msgstr "Samo slobodno traženje" + +# +#, fuzzy +msgid "Open service list" +msgstr "otvori listu kanala" + +# +#, fuzzy +msgid "Open the movie list" +msgstr "Vratite se na listu filmova" + +msgid "Orbital position" +msgstr "Orbitalna pozicija" + +msgid "Original" +msgstr "" + +msgid "Other" +msgstr "" + +msgid "Output" +msgstr "" + +msgid "Overwrite configuration files during software upgrade?" +msgstr "Prepiši konfiguracione datoteke za vreme nadograđivanja softvera?" + +#, fuzzy +msgid "Overwrite configuration files?" +msgstr "Prepiši konfiguracione datoteke?" + +# +msgid "PAL" +msgstr "PAL" + +msgid "PCR PID" +msgstr "PCR PID" + +# +msgid "PIDs" +msgstr "PIDs" + +# +#, fuzzy +msgid "PIN code needed" +msgstr "Pin kod je potreban" + +msgid "PLP ID" +msgstr "" + +msgid "PMT PID" +msgstr "PMT PID" + +# +msgid "Package list update" +msgstr "Nadogradnja liste paketa" + +# +msgid "Packet management" +msgstr "Rukovanje paketima" + +# +msgid "Packet manager" +msgstr "Menadžer paketa" + +# +#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term +#, fuzzy +msgid "Pan&scan" +msgstr "Pan&Scan" + +# +#, fuzzy +msgid "Parent directory" +msgstr "Polazni direktorijum" + +# +msgid "Parental control" +msgstr "Roditeljska zaštita" + +# +#, fuzzy +msgid "Parental control services editor" +msgstr "Urednik za roditeljsku zaštitu kanala" + +# +msgid "Parental control setup" +msgstr "Postavke roditeljske zaštite" + +# +msgid "Parental control type" +msgstr "Tip roditeljske zaštite" + +# +msgid "Password" +msgstr "Lozinka" + +# +#, fuzzy +msgid "Pause" +msgstr "pauza" + +# +msgid "Pause movie at end" +msgstr "Pauziraj film na kraju" + +# +#, fuzzy +msgid "Pause playback" +msgstr "Nastavite reprodukciju" + +msgid "Pauze/Continue playback" +msgstr "" + +msgid "Percentage left" +msgstr "" + +# +#, fuzzy +msgid "Percentage right" +msgstr "Kružna desna" + +msgid "Permanently delete all recordings in the trash can?" +msgstr "" + +msgid "Permanently remove all deleted items" +msgstr "" + +msgid "Persian" +msgstr "Persijski" + +# +msgid "Phone number" +msgstr "Telefonski broj" + +# +#, fuzzy +msgid "PiP setup" +msgstr "SuS postavke" + +msgid "Picon" +msgstr "" + +msgid "Picon and service name" +msgstr "" + +# +#, fuzzy +msgid "Picture player" +msgstr "Pregledač slika" + +# +#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term. +msgid "Pillarbox" +msgstr "Pillarbox" + +# +msgid "Pilot" +msgstr "Pilot" + +# +msgid "Play" +msgstr "Reprodukuj" + +# +msgid "Play DVD" +msgstr "Reprodukuj DVD" + +msgid "Play audio in background" +msgstr "" + +# +#, fuzzy +msgid "Play audio-CD..." +msgstr "Reprodukuj audio CD" + +msgid "Play back media files" +msgstr "" + +# +#, fuzzy +msgid "Play entry" +msgstr "reprodukuj unos" + +# +#, fuzzy +msgid "Play from next mark or playlist entry" +msgstr "Reprodukuj od sledeće oznake ili naslova sa liste za reprodukciju" + +# +#, fuzzy +msgid "Play from previous mark or playlist entry" +msgstr "Reprodukuj od prethodne oznake ili naslova sa liste za reprodukciju" + +# +#, fuzzy +msgid "Play music..." +msgstr "Reprodukuj muziku" + +msgid "Play next" +msgstr "" + +msgid "Play next (return to movie list)" +msgstr "" + +msgid "Play next (return to previous service)" +msgstr "" + +msgid "Play previous" +msgstr "" + +# +msgid "Play recorded movies..." +msgstr "Pokreni snimljene filmove..." + +# +msgid "Please add titles to the compilation." +msgstr "Molim,dodaj naziv kompilaciji." + +# +msgid "Please change recording endtime" +msgstr "Molim promenite završno vreme snimanja" + +# +msgid "Please check your network settings!" +msgstr "Molim proverite vaše mrežne postavke" + +# +msgid "Please choose an extension..." +msgstr "Molim odaberite proširenje..." + +# +msgid "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Molim konfiguriši ili verifikuj svoje nejmservere popunjavajući tražene vrednosti.\n" +"Kad si spreman pritisni OK da nastaviš." + +# +msgid "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Molim konfiguriši svoju internet vezu popunjavajući tražene vrednosti.\n" +"Kad si spreman pritisni OK da nastaviš." + +msgid "Please connect your receiver to the internet" +msgstr "" + +# +msgid "Please do not change any values unless you know what you are doing!" +msgstr "Molim ne menjate vrednosti ukoliko ne znate šta radite!" + +# +msgid "Please enter a name for the new bouquet" +msgstr "Molim unesite ime za novi buket " + +# +msgid "Please enter a name for the new marker" +msgstr "Molim unesite ime za novu oznaku" + +# +msgid "Please enter a new filename" +msgstr "Molim unesite novo ime datoteke" + +# +msgid "Please enter filename (empty = use current date)" +msgstr "Molim unesite ime datoteke (prazno = koristi današnji datum)" + +# +msgid "Please enter name of the new directory" +msgstr "Molimo unesite ime novog direktorijuma" + +msgid "Please enter new name:" +msgstr "" + +# +msgid "Please enter the correct pin code" +msgstr "Molim unesite ispravan pin kod" + +msgid "Please enter the old PIN code" +msgstr "Molim unesite stari PIN kod" + +# +msgid "Please follow the instructions on the TV" +msgstr "Molim,pratite uputstva na TV-u" + +# +msgid "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." +msgstr "Molim primetite da prethodno odabrani medij ne može biti dostupan i zbog toga se koristi standardni direktorijum." + +# +msgid "Please press OK to continue." +msgstr "Molim pritisnite OK za nastavak" + +msgid "Please select a default EPG type..." +msgstr "" + +# +msgid "Please select a playlist to delete..." +msgstr "Molim odaberite plejlistu za brisanje..." + +# +msgid "Please select a playlist..." +msgstr "Molim odaberite plejlistu..." + +# +#, fuzzy +msgid "Please select a sub service..." +msgstr "Molim odaberite podkanal..." + +# +msgid "Please select a subservice to record..." +msgstr "Molim odaberite podkanal za snimanje..." + +# +msgid "Please select a subservice..." +msgstr "Molim odaberite podkanal..." + +msgid "Please select an NFI file and press green key to flash!" +msgstr "Molim izaberite NFI datoteku i pritisnite zeleno dugme da flešujete!" + +# +#, fuzzy +msgid "Please select medium to be scanned" +msgstr "Molim izaberite medij za traženje" + +# +msgid "Please select medium to use as backup location" +msgstr "Molim izaberite medij da se koristi kao lokacija za sigurnosnu kopiju" + +# +msgid "Please select tag to filter..." +msgstr "Molim izaberite oznaku za filter" + +# +msgid "Please select the movie path..." +msgstr "Molim izaberite putanju filma..." + +# +msgid "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Molim izaberi mrežni interfejs koji želiš da koristiš za svoju internet vezu.\n" +"\n" +"Molim pritisni OK da nastaviš." + +# +msgid "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Molim izaberi bežičnu mrežu na koju želiš da se spojiš.\n" +"\n" +"Molim pritisni OK da nastaviš." + +# +#, fuzzy +msgid "Please set up tuner A" +msgstr "Molim podesite tuner B" + +# +msgid "Please set up tuner B" +msgstr "Molim podesite tuner B" + +# +msgid "Please set up tuner C" +msgstr "Molim podesite tuner C" + +# +msgid "Please set up tuner D" +msgstr "Molim podesite tuner D" + +# +msgid "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." +msgstr "" +"Molim koristite tipke sa strelicama za premeštanje SuS prozora.\n" +"Pritisnite Bouquet +/- tipke za promenu veličine prozora.\n" +"Pritisnite OK za povratak u TV mod ili EXIT za prekid premeštanja." + +# +msgid "Please use the UP and DOWN keys to select your language. Afterwards press the OK button." +msgstr "Molim koristite UP i DOWN tipke da izaberete jezik.Posle toga pritisnite OK dugme." + +msgid "Please wait" +msgstr "" + +# +#, fuzzy +msgid "Please wait (downloading channel list)" +msgstr "Molim pričekajte... Učitavam listu..." + +# +#, fuzzy +msgid "Please wait (downloading softcam)" +msgstr "Molim pričekajte... Učitavam listu..." + +# +#, fuzzy +msgid "Please wait (updating packages)" +msgstr "molim pričekajte, učitavam sliku..." + +# +msgid "Please wait for activation of your network configuration..." +msgstr "Molim sačekajte za aktiviranje vaše mrežne konfiguracije..." + +# +msgid "Please wait while scanning is in progress..." +msgstr "Molim sačekajte dok je pretraživanje u toku..." + +# +msgid "Please wait while we configure your network..." +msgstr "Molim sačekajte dok konfigurišemo vašu mrežu..." + +# +msgid "Please wait while we prepare your network interfaces..." +msgstr "Molim sačekajte dok pripremimo vaše mrežne interfejse..." + +# +msgid "Please wait while we test your network..." +msgstr "Molim sačekajte dok testiramo vašu mrežu..." + +# +msgid "Please wait while your network is restarting..." +msgstr "Molim sačekajte dok se vaša mreža ponovo startuje" + +# +msgid "Please wait..." +msgstr "Molim sačekajte" + +# +msgid "Please wait... Loading list..." +msgstr "Molim pričekajte... Učitavam listu..." + +# +msgid "Plugin browser" +msgstr "Pretraživač dodataka" + +# +msgid "Plugin manager activity information" +msgstr "Info o aktivnosti menadžera dodataka" + +# +msgid "Plugin manager help" +msgstr "Menadžer dodataka,pomoć" + +# +msgid "Plugins" +msgstr "Dodaci" + +msgid "Polarisation" +msgstr "" + +msgid "Polarisation:" +msgstr "" + +# +msgid "Polarization" +msgstr "Polarizacija" + +# +msgid "Polish" +msgstr "Poljski" + +# +msgid "Port A" +msgstr "Port A" + +# +msgid "Port B" +msgstr "Port B" + +# +msgid "Port C" +msgstr "Port C" + +# +msgid "Port D" +msgstr "Port D" + +# +msgid "Portuguese" +msgstr "Portugalski" + +#, fuzzy +msgid "Position of completed timers in timerlist" +msgstr "Pozicija završenog tajmera u listi tajmera" + +msgid "Position stored at index" +msgstr "" + +# +msgid "Positioner" +msgstr "Pozicioner" + +msgid "Positioner (selecting satellites)" +msgstr "" + +msgid "Positioner Setup" +msgstr "" + +# +msgid "Positioner setup" +msgstr "Postavke motora" + +# +msgid "Power threshold in mA" +msgstr "Granica snage u mA" + +# +msgid "Predefined transponder" +msgstr "Predefinisani transponder" + +msgid "Prefer AC3 track" +msgstr "" + +msgid "Prefer AC3+ track" +msgstr "" + +msgid "Prefer audio track stored by service" +msgstr "" + +msgid "Prefer graphical DVB subtitles" +msgstr "" + +msgid "Prefer subtitles for hearing impaired" +msgstr "" + +msgid "Prefer subtitles stored by service" +msgstr "" + +msgid "Preferred tuner" +msgstr "" + +msgid "Preferred tuner for recordings" +msgstr "" + +msgid "Prepare another USB stick for image flashing" +msgstr "Pripremi drugi USB stik za flešovanje imidža" + +# +msgid "Preparing... Please wait" +msgstr "Pripremam... Molim pričekajte" + +msgid "Press '0' to toggle PiP mode" +msgstr "" + +msgid "Press INFO on your remote control for additional information." +msgstr "Pritisni INFO na svom daljinskom za dodatne informacije." + +msgid "Press MENU on your remote control for additional options." +msgstr "Pritisni MENI na svom daljinskom za dodatne opcije." + +# +msgid "Press OK on your remote control to continue." +msgstr "Pritisnite OK na daljinskom upravljaču da nastavite." + +# +msgid "Press OK to activate the selected skin." +msgstr "Pritisnite OK za aktiviranje izabrane maske." + +# +msgid "Press OK to activate the settings." +msgstr "Pritisnite OK za aktiviranje postavki." + +# +msgid "Press OK to edit the settings." +msgstr "Pritisnite OK da uredite postavke." + +# +#, python-format +msgid "Press OK to get further details for %s" +msgstr "Pritisnite OK da dobijete dodatne detalje za %s" + +# +msgid "Press OK to scan" +msgstr "Pritisnite OK za skeniranje" + +# +#, fuzzy +msgid "Press OK to select a provider." +msgstr "Pritisnite OK da izaberete provajdera." + +msgid "Press OK to select satellites" +msgstr "" + +# +msgid "Press OK to select/deselect a CAId." +msgstr "Pritisni OK da izabereš/odbaciš CAId" + +# +msgid "Press OK to start the scan" +msgstr "Pritisnite OK za početak skeniranja" + +msgid "Press OK to toggle the selection" +msgstr "" + +# +msgid "Press OK to toggle the selection." +msgstr "Pritisnite OK da prebacite izbor." + +# +msgid "Press yellow to set this interface as default interface." +msgstr "Pritisni žuto da postaviš ovaj interfejs kao osnovni interfejs." + +msgctxt "button label, 'previous screen'" +msgid "Prev" +msgstr "" + +# +msgid "Preview" +msgstr "Pregled" + +# +msgid "Preview menu" +msgstr "Pregled menia" + +msgid "Preview selected channel" +msgstr "" + +# +msgid "Primary DNS" +msgstr "Primarni DNS" + +# +msgid "Priority" +msgstr "Prioritet" + +# +msgid "Process" +msgstr "Izvođenje" + +msgid "Progress" +msgstr "" + +msgid "Progress bar left" +msgstr "" + +msgid "Progress bar right" +msgstr "" + +# +msgid "Properties of current title" +msgstr "Svojstva tekućeg naziva" + +# +msgid "Protect services" +msgstr "Zaštiti kanale" + +# +msgid "Protect setup" +msgstr "Zaštitite postavke" + +# +msgid "Provider" +msgstr "Provajder" + +# +msgid "Provider to scan" +msgstr "Provajderi za skeniranje" + +# +msgid "Providers" +msgstr "Provajderi" + +msgid "Put TV in standby" +msgstr "" + +msgid "Put receiver in standby" +msgstr "" + +# +msgid "Python frontend for /tmp/mmi.socket" +msgstr "Čeoni python za /tmp/mmi.socket" + +# +msgid "Quick" +msgstr "Brzo" + +# +#, fuzzy +msgid "Quick zap" +msgstr "Brzizap" + +# +msgid "RF output" +msgstr "RF Izlaz" + +# +msgid "RGB" +msgstr "RGB" + +# +msgid "Radio" +msgstr "Radio" + +# +#, fuzzy +msgid "Ram disk" +msgstr "Ram Disk" + +# +msgid "Random" +msgstr "Slučajan" + +#, python-format +msgid "Rating defined by broadcaster - %d" +msgstr "" + +msgid "Rating undefined" +msgstr "" + +# +msgid "Really close without saving settings?" +msgstr "Želite li stvarno zatvoriti bez čuvanja postavki ?" + +# +msgid "Really delete done timers?" +msgstr "Želite li stvarno obrisati završene tajmere?" + +# +msgid "Really exit the subservices quickzap?" +msgstr "Želite li stvarno izaći iz brzog zapa podkanala?" + +# +msgid "Really reboot now?" +msgstr "Stvarno ponovo podići sada?" + +# +msgid "Really restart now?" +msgstr "Stvarno restartovati sada?" + +# +msgid "Really shutdown now?" +msgstr "Stvarno ugasiti sada?" + +msgid "Really upgrade the frontprocessor and reboot now?" +msgstr "" + +msgid "Really upgrade your settop box and reboot now?" +msgstr "" + +# +msgid "Reboot" +msgstr "Podići" + +msgid "Rec" +msgstr "" + +# +#, fuzzy +msgid "Reception settings" +msgstr "Postavke prijema" + +msgid "Record" +msgstr "Snimanje " + +# +#, python-format +msgid "Record time limited due to conflicting timer %s" +msgstr "Vreme snimanja ograničeno zbog tajmer konflikta %s" + +# +msgid "Recorded files..." +msgstr "Snimljene datoteke..." + +# +msgid "Recording" +msgstr "Snimanje" + +msgid "Recording in progress" +msgstr "" + +# +msgid "Recording paths" +msgstr "Putanje snimanja" + +msgid "Recording type" +msgstr "" + +# +msgid "Recording(s) are in progress or coming up in few seconds!" +msgstr "Snimanje u toku ili počinje za nekoliko sekundi!" + +# +msgid "Recordings" +msgstr "Snimanja" + +# +msgid "Recordings always have priority" +msgstr "Snimanje uvek ima prioritet" + +msgid "Red button..." +msgstr "" + +msgid "Reenter new PIN" +msgstr "Ponovo unesi novi PIN" + +# +#, fuzzy +msgid "Refresh rate" +msgstr "Brzina osvježavanja" + +# +msgid "Refresh rate selection." +msgstr "Izbor vremena osvežavanja" + +msgid "Regard deep standby as standby" +msgstr "" + +msgid "Relative" +msgstr "" + +# +msgid "Reload" +msgstr "Ponovo ubaciti" + +# +#, fuzzy +msgid "Reload black-/white lists" +msgstr "Ponovo učitaj Black-/Whitelists" + +msgid "Reloading bouquets and services..." +msgstr "" + +msgid "Remember last service in PiP" +msgstr "" + +msgid "Remember service PIN" +msgstr "Zapamti PIN kanala" + +msgid "Remember these settings for each folder" +msgstr "" + +msgid "Reminder, you have chosen to save timeshift file." +msgstr "" + +# +#, fuzzy +msgid "Remote control type" +msgstr "Tip roditeljske zaštite" + +# +#, fuzzy +msgid "Removal has completed." +msgstr "Uklanjanje nije uspelo." + +# +msgid "Remove" +msgstr "Ukloniti" + +# +msgid "Remove a mark" +msgstr "Obriši oznaku" + +# +#, fuzzy +msgid "Remove a nameserver entry" +msgstr "Uklonite unos nejmservera" + +# +#, fuzzy +msgid "Remove bookmark" +msgstr "uklonite oznaku" + +msgid "Remove completed timers after (days)" +msgstr "" + +# +msgid "Remove currently selected title" +msgstr "Ukloni trenutno odabrani titl" + +msgid "Remove items from trash can after (days)" +msgstr "" + +# +msgid "Remove plugins" +msgstr "Obriši dodatke" + +# +msgid "Remove title" +msgstr "Ukloni titl" + +# +msgid "Removing" +msgstr "Uklanjanje" + +# +#, python-format +msgid "Removing directory %s failed. (Maybe not empty.)" +msgstr "Uklanjanje direktorijuma %s nije uspelo.(Možda nije prazan.)" + +# +#, fuzzy +msgid "Removing partition table" +msgstr "Ukloni titl" + +# +msgid "Rename" +msgstr "Preimenovati" + +msgid "Repeat" +msgstr "" + +# +#, fuzzy +msgid "Repeat type" +msgstr "Tip ponavljanja" + +# +msgid "Repeating event currently recording... What do you want to do?" +msgstr "Snimanje ponovljenog događaja je u toku...Šta želite da učinite?" + +# +msgid "Repeats" +msgstr "Ponavljanja" + +msgid "Require authentication for http streams" +msgstr "" + +# +msgid "Required medium type:" +msgstr "Potrebni tip medija:" + +msgid "Rereading partition table" +msgstr "" + +msgid "Reserved" +msgstr "" + +# +msgid "Reset" +msgstr "Resetujte" + +# +msgid "Reset and renumerate title names" +msgstr "Resetujte i prebrojte imena naslova" + +msgid "Reset playback position" +msgstr "" + +# +msgid "Reset video enhancement settings to system defaults?" +msgstr "Resetuj postavke video poboljšavanja na osnovne sistema?" + +# +msgid "Reset video enhancement settings to your last configuration?" +msgstr "Resetuj postavke video poboljšavanja na tvoju zadnju konfiguraciju?" + +# +msgid "Resolution" +msgstr "Rezolucija" + +# +msgid "Restart" +msgstr "Restart" + +# +msgid "Restart GUI now?" +msgstr "Restart GUI sada?" + +msgid "Restart enigma" +msgstr "" + +# +msgid "Restart network" +msgstr "Restartujte mrežu" + +# +msgid "Restart test" +msgstr "Ponovite test" + +# +msgid "Restart your network connection and interfaces.\n" +msgstr "Restartujte vašu mrežnu vezu i interfejse.\n" + +# +msgid "Restore" +msgstr "Vrati " + +# +msgid "Restore backups" +msgstr "Vrati bekape" + +# +msgid "Restore is running..." +msgstr "Vraćanje u toku..." + +# +msgid "Restore system settings" +msgstr "Vratite sistemske postavke" + +# +#, fuzzy +msgid "Restoring..." +msgstr "snimanje..." + +# +msgid "Resume from last position" +msgstr "Nastavite sa poslednje pozicije" + +# +#, python-format +msgid "Resume position at %s" +msgstr "Nastavi poziciju od %s" + +# +#. TRANSLATORS: The string "Resuming playback" flashes for a moment +#. TRANSLATORS: at the start of a movie, when the user has selected +#. TRANSLATORS: "Resume from last position" as start behavior. +#. TRANSLATORS: The purpose is to notify the user that the movie starts +#. TRANSLATORS: in the middle somewhere and not from the beginning. +#. TRANSLATORS: (Some translators seem to have interpreted it as a +#. TRANSLATORS: question or a choice, but it is a statement.) +msgid "Resuming playback" +msgstr "Nastavite reprodukciju" + +# +msgid "Return to movie list" +msgstr "Vratite se na listu filmova" + +# +msgid "Return to previous service" +msgstr "Vratite se na prethodni kanal" + +msgid "Reverse bouquet buttons" +msgstr "" + +msgid "Reverse list" +msgstr "" + +# +msgid "Rewind speeds" +msgstr "Brzine premotavanja nazad" + +msgid "Rewrap teletext subtitles" +msgstr "" + +# +msgid "Right" +msgstr "Desno" + +msgid "Right from servicename" +msgstr "" + +msgid "Roll-off" +msgstr "Kotrljanje" + +msgid "Romanian" +msgstr "" + +msgid "Root directory" +msgstr "" + +msgid "Rotor step position:" +msgstr "" + +# +msgid "Rotor turning speed" +msgstr "Brzina okretanja rotora" + +msgid "Round start time on" +msgstr "" + +# +msgid "Russian" +msgstr "Ruski" + +# +msgid "S-Video" +msgstr "S-Video" + +msgid "SID" +msgstr "SID" + +# +msgid "SINGLE LAYER DVD" +msgstr "JEDNOSLOJNI DVD" + +# +msgid "SNR" +msgstr "SNR" + +# +msgid "SNR:" +msgstr "SNR:" + +# +msgid "SSID:" +msgstr "SSID:" + +msgid "Same resolution as skin" +msgstr "" + +# +msgid "Sat" +msgstr "Sat" + +# +msgid "Satellite" +msgstr "Satelit" + +# +#, fuzzy +msgid "Satellite dish setup" +msgstr "Postavke satelitske opreme" + +# +msgid "Satellite equipment" +msgstr "Satelitska oprema" + +# +#, fuzzy +msgid "Satellite equipment setup" +msgstr "Postavke satelitske opreme" + +msgid "Satellite longitude:" +msgstr "" + +# +msgid "Satellites" +msgstr "Sateliti" + +# +msgid "Satfinder" +msgstr "Sat tražitelj" + +# +msgid "Sats" +msgstr "Sats" + +# +msgid "Saturation" +msgstr "Zasićenje" + +# +msgid "Saturday" +msgstr "Subota" + +# +msgid "Save" +msgstr "Sačuvajte" + +# +#, fuzzy +msgid "Save playlist" +msgstr "sačuvaj plejlistu" + +msgid "Save timeshift file" +msgstr "" + +msgid "Save timeshift file in movie directory" +msgstr "" + +# +msgid "Scaler sharpness" +msgstr "Brojač oštrine" + +# +#, fuzzy +msgid "Scaling mode" +msgstr "Mod skaliranja" + +msgid "Scan" +msgstr "" + +# +msgid "Scan " +msgstr "Skeniraj" + +# +#. TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' +#, fuzzy, python-format +msgid "Scan %s" +msgstr "Skeniraj" + +# +#. TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' +#, fuzzy, python-format +msgid "Scan %s band" +msgstr "Skeniraj band EU MID" + +# +msgid "Scan additional SR" +msgstr "Skeniraj dodatne SR" + +# +#, fuzzy +msgid "Scan files..." +msgstr "Pretraži datoteke" + +# +#, fuzzy +msgid "Scan wireless networks" +msgstr "Pretražite bežičnu mrežu" + +msgid "Scan your network for wireless access points and connect to them using your selected wireless device.\n" +msgstr "Pretraži svoju mrežu za bežične pristupne tačke i poveži se s njima koristeći svoj izabrani bežični uređaj.\n" + +#, python-format +msgid "Scanning %s..." +msgstr "" + +#. TRANSLATORS: The stb is performing a channel scan, progress percentage is printed in '%d' (and '%%' will show a single '%' symbol) +#, python-format +msgid "Scanning - %d%% completed" +msgid_plural "Scanning - %d%% completed" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +#, python-format +msgid "Scanning completed, %d channel found" +msgid_plural "Scanning completed, %d channels found" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +msgid "Scanning failed!" +msgstr "" + +msgid "Scanning..." +msgstr "" + +# +msgid "Scans default lamedbs sorted by satellite with a connected dish positioner" +msgstr "Pretražuje osnovne lamedbs razvrstane po satelitima sa povezanim antenskim pozicionerom" + +# +msgid "Search east" +msgstr "Pretraži istok" + +# +msgid "Search west" +msgstr "Pretraži zapad" + +msgid "Searching" +msgstr "" + +msgid "Searching east ..." +msgstr "" + +# +msgid "Searching for available updates. Please wait..." +msgstr "Traženje dostupnih ažuriranja.Molim sačekajte..." + +# +msgid "Searching for new installed or removed packages. Please wait..." +msgstr "Traženje novih instaliranih ili uklonjenih paketa.Molim sačekajte..." + +msgid "Searching west ..." +msgstr "" + +msgid "Second cable of motorized LNB" +msgstr "" + +# +msgid "Secondary DNS" +msgstr "Sekundarni DNS" + +# +msgid "Seek" +msgstr "Traži" + +#, fuzzy +msgid "Seek backward" +msgstr "preskoči unazad" + +# +#, fuzzy +msgid "Seek backward (enter time)" +msgstr "preskoči unazad (unesi vreme)" + +# +#, fuzzy +msgid "Seek forward" +msgstr "preskoči unapred" + +# +#, fuzzy +msgid "Seek forward (enter time)" +msgstr "preskoči napred (unesi vreme)" + +# +msgid "Select" +msgstr "Izaberi" + +# +#, fuzzy +msgid "Select CAId" +msgstr "Izaberite CAId" + +# +msgid "Select HDD" +msgstr "Odaberi hard disk" + +# +#, fuzzy +msgid "Select a bouquet" +msgstr "Odaberi film" + +# +msgid "Select a movie" +msgstr "Odaberi film" + +# +#, fuzzy +msgid "Select a network adapter" +msgstr "Odaberi mrežni adapter" + +# +#, fuzzy +msgid "Select a skin" +msgstr "Odaberi film" + +# +#, fuzzy +msgid "Select a tuner" +msgstr "Odaberi film" + +# +#, fuzzy +msgid "Select a wireless network" +msgstr "Izaberite bežičnu mrežu" + +msgid "Select action" +msgstr "" + +#, python-format +msgid "Select action for timer %s:" +msgstr "" + +msgid "Select all" +msgstr "" + +#, fuzzy +msgid "Select an image to be downloaded" +msgstr "Izaberi imidž za skidanje" + +# +msgid "Select audio track" +msgstr "Odaberite zvučni zapis" + +# +#, fuzzy +msgid "Select backup files" +msgstr "Izaberite snimljene datoteke " + +# +#, fuzzy +msgid "Select backup location" +msgstr "Izaberite snimljenu lokaciju" + +# +msgid "Select channel to record from" +msgstr "Odaberite kanal za snimanje od" + +msgid "Select copy destination for:" +msgstr "" + +msgid "Select default EPG type..." +msgstr "" + +msgid "Select desired image from feed list" +msgstr "Izaberi željeni imidž sa fid liste" + +msgid "Select destination for:" +msgstr "" + +msgid "Select files for backup." +msgstr "Izaberi datoteke za bekap." + +# +msgid "Select files/folders to backup" +msgstr "Izaberi datoteke/fascikle za bekap" + +msgid "Select input device" +msgstr "Izaberi ulazni uređaj" + +msgid "Select input device." +msgstr "Izaberi ulazni uređaj." + +# +msgid "Select interface" +msgstr "Izaberite interfejs " + +# +#, fuzzy +msgid "Select location" +msgstr "Izaberi lokaciju" + +# +#, fuzzy +msgid "Select movie" +msgstr "Odaberi film" + +# +msgid "Select provider to add..." +msgstr "Izaberi provajdera za dodavanje" + +# +msgid "Select refresh rate" +msgstr "Izaberi vreme osvežavanja" + +msgid "Select satellites" +msgstr "" + +# +msgid "Select service to add..." +msgstr "Izaberi kanal za dodavanje..." + +msgid "Select sort method:" +msgstr "" + +# +#, fuzzy +msgid "Select target folder" +msgstr "Izaberite ciljnu fasciklu" + +# +#, fuzzy +msgid "Select the movie path" +msgstr "Izaberite putanju filma" + +# +#, fuzzy +msgid "Select upgrade source" +msgstr "Izaberi izvor nadodradnje za uređivanje." + +# +msgid "Select upgrade source to edit." +msgstr "Izaberi izvor nadodradnje za uređivanje." + +# +msgid "Select video input with up/down buttons" +msgstr "Izaberi video ulaz sa UP/DOWN tipkama" + +# +msgid "Select video mode" +msgstr "Izaberi video mod" + +# +msgid "Select wireless network" +msgstr "Izaberite bežičnu mrežu" + +msgid "Select your provider, and press OK to start the scan" +msgstr "" + +msgid "Selecting satellites 1 (USALS)" +msgstr "" + +msgid "Selecting satellites 2 (USALS)" +msgstr "" + +# +msgid "Send DiSEqC only on satellite change" +msgstr "Poslati DISEqC samo kod promene satelita" + +# +msgid "Separate titles with a main menu" +msgstr "Odvojite naslove sa glavnim meniem" + +# +msgid "Sequence repeat" +msgstr "Ponovi redosled" + +# +msgid "Serbian" +msgstr "Srpski" + +# +msgid "Service" +msgstr "Kanal" + +# +msgid "Service has been added to the favourites." +msgstr "Kanal je dodat u listu favorita." + +# +msgid "Service has been added to the selected bouquet." +msgstr "Kanal je dodat u odabrani buket." + +# +#, fuzzy +msgid "Service info" +msgstr "Info kanala" + +# +msgid "" +"Service invalid!\n" +"(Timeout reading PMT)" +msgstr "" +"Neispravan kanal!\n" +"(Isteklo čitanje PMT)" + +# +#, fuzzy +msgid "Service name" +msgstr "Skeniranje Kanala" + +# +msgid "" +"Service not found!\n" +"(SID not found in PAT)" +msgstr "" +"Kanal nije pronađen!\n" +"(SID nije pronađen u PAT)" + +msgid "Service reference" +msgstr "Kanal referenca" + +# +msgid "Service scan" +msgstr "Skeniranje kanala" + +# +#, fuzzy +msgid "Service searching" +msgstr "Pretraživanje kanala" + +# +#, fuzzy +msgid "Service title mode" +msgstr "Izaberi video mod" + +# +msgid "" +"Service unavailable!\n" +"Check tuner configuration!" +msgstr "" +"Kanal nije dostupan!\n" +"Proverite konfiguraciju tjunera" + +# +msgid "Services" +msgstr "Kanali" + +msgid "Set default" +msgstr "" + +# +#, fuzzy +msgid "Set end time" +msgstr "Podesi završno vreme" + +msgid "Set fixed" +msgstr "" + +msgid "Set fps for external subtitles" +msgstr "" + +# +msgid "Set interface as default Interface" +msgstr "Postavi interfejs kao osnovni interfejs" + +msgid "Set limits" +msgstr "" + +# +#, fuzzy +msgid "Set the type of the progress indication in the channel selection screen." +msgstr "Pokaži napredak događaja u izboru kanala" + +msgid "Set time window to 1 hour" +msgstr "" + +msgid "Set time window to 2 hours" +msgstr "" + +msgid "Set time window to 3 hours" +msgstr "" + +msgid "Set time window to 4 hours" +msgstr "" + +msgid "Set time window to 5 hours" +msgstr "" + +msgid "Set time window to 6 hours" +msgstr "" + +# +#, fuzzy +msgid "Set voltage and 22KHz" +msgstr "Podesi napon i 22Khz" + +# +msgid "Settings" +msgstr "Postavke" + +# +msgid "Setup" +msgstr "Podešavanje" + +msgid "Setup menu" +msgstr "" + +# +#, fuzzy +msgid "Setup mode" +msgstr "Mod postavki" + +msgid "Setup your positioner" +msgstr "" + +# +#, fuzzy +msgid "Setup your satellite equipment" +msgstr "Satelitska oprema" + +# +#, python-format +msgid "Shall the USB stick wizard proceed and program the image file %s into flash memory?" +msgstr "Da li da USB stik čarobnjak nastavi i programira imidž datoteku %s u fleš memoriju?" + +# +msgid "Sharpness" +msgstr "Oštrina" + +msgid "Short filenames" +msgstr "Kratka imena datoteka" + +msgid "Show EIT now/next in infobar" +msgstr "" + +# +#, fuzzy +msgid "Show EPG for current channel..." +msgstr "Prikaži info traku pri promeni događaja" + +# +#, fuzzy +msgid "Show EPG..." +msgstr "prikaži EPG..." + +msgid "Show Games show" +msgstr "" + +msgid "Show SNR percentage instead of dB value" +msgstr "" + +msgid "Show VCR scart on main menu" +msgstr "" + +# +#, fuzzy +msgid "Show WLAN status" +msgstr "Prikaži status WLAN-a" + +msgid "Show animation while busy" +msgstr "" + +# +#, fuzzy +msgid "Show background in radio mode" +msgstr "Pozadinska slika" + +msgid "Show bouquet selection menu" +msgstr "" + +msgid "Show busy indicator when the system is busy." +msgstr "" + +msgid "Show channel numbers in channel selection" +msgstr "" + +msgid "Show columns" +msgstr "" + +msgid "Show crypto icons" +msgstr "" + +msgid "Show crypto info in infobar" +msgstr "" + +msgid "Show detailed event info" +msgstr "" + +# +#, fuzzy +msgid "Show event details" +msgstr "prikaži proširene infor. " + +# +msgid "Show event-progress in channel selection" +msgstr "Pokaži napredak događaja u izboru kanala" + +# +#, fuzzy +msgid "Show extended description" +msgstr "prikaži proširene informacije" + +# +#, fuzzy +msgid "Show extensions..." +msgstr "gledaj ekstenzije..." + +msgid "Show icon for new/unseen items" +msgstr "" + +msgid "Show in extensions menu" +msgstr "" + +# +#, fuzzy +msgid "Show info" +msgstr "Prikaži info" + +# +#, fuzzy +msgid "Show info line" +msgstr "Pokaži Info liniju " + +# +msgid "Show infobar on channel change" +msgstr "Prikaži info traku na promeni kanala" + +# +msgid "Show infobar on event change" +msgstr "Prikaži info traku pri promeni događaja" + +# +msgid "Show infobar on skip forward/backward" +msgstr "Prikaži info traku na preskakanju napred/nazad" + +msgid "Show latest commits on sourceforge" +msgstr "" + +# +#, fuzzy +msgid "Show message when recording starts" +msgstr "Pokaži poruku kad snimanje počne" + +# +#, fuzzy +msgid "Show movie lengths in movielist" +msgstr "Ubaciti dužinu filma u listi filmova" + +msgid "Show multi channel EPG" +msgstr "" + +msgid "Show picons in channel list" +msgstr "" + +# +msgid "Show positioner movement" +msgstr "Prikaži kretanje motora" + +msgid "Show screensaver" +msgstr "" + +msgid "Show second infobar" +msgstr "" + +msgid "Show service type icons" +msgstr "" + +# +msgid "Show services beginning with" +msgstr "Prikaži kanale koji počinju sa" + +# +#, fuzzy +msgid "Show shutdown menu" +msgstr "prikaži meni isključivanja" + +msgid "Show single service EPG" +msgstr "" + +msgid "Show status icons in Movielist" +msgstr "" + +msgid "Show status icons in movie list" +msgstr "" + +msgid "Show status icons in movielist" +msgstr "" + +# +#, fuzzy +msgid "Show tag menu" +msgstr "prikaži citat menia" + +# +msgid "Show the radio player..." +msgstr "Prikaži radio plejer ..." + +# +msgid "Show the tv player..." +msgstr "Prikaži tv plejer..." + +msgid "Show warning when timeshift is stopped" +msgstr "" + +# +msgid "Shows the state of your wireless LAN connection.\n" +msgstr "Prikaži stanje vaše bežične LAN veze.\n" + +# +#, fuzzy +msgid "Shuffle playlist" +msgstr "sam biraj iz plejliste" + +# +msgid "Shutdown" +msgstr "Isključivanje" + +msgid "Shutdown when in Standby" +msgstr "" + +msgid "Side by side" +msgstr "" + +msgid "Signal OK, proceeding" +msgstr "" + +msgid "Signal quality" +msgstr "" + +# +#, fuzzy +msgid "Signal strength:" +msgstr "Jačina signala:" + +# +msgid "Signal: " +msgstr "Signal: " + +# +msgid "Similar" +msgstr "Slično" + +# +msgid "Similar broadcasts:" +msgstr "Slične emisije:" + +# +msgid "Simple" +msgstr "Jednostavno" + +# +msgid "Simple titleset (compatibility for legacy players)" +msgstr "Jednostavne postavke naslova (kompatibilnost za legacy plejere)" + +# +msgid "Single" +msgstr "Jedan" + +# +msgid "Single EPG" +msgstr "Jedan EPG" + +# +msgid "Single satellite" +msgstr "Jedan satelit" + +# +#, fuzzy +msgid "Single step (GOP)" +msgstr "Korak po korak" + +# +msgid "Single transponder" +msgstr "Jedan Transponder" + +msgid "Site latitude" +msgstr "" + +msgid "Site longitude" +msgstr "" + +# +msgid "Skin" +msgstr "Maska" + +# +msgid "Skins" +msgstr "Maska" + +# +#, fuzzy +msgid "Skip empty services" +msgstr "Zaštiti kanale" + +msgid "Skip internet connection check (disables automatic package installation)" +msgstr "" + +# +#, fuzzy +msgid "Sleep timer" +msgstr "Tajmer spavanja" + +msgid "SleepTimer Configuration" +msgstr "" + +msgid "Sleeptimer" +msgstr "" + +# +#, fuzzy +msgid "Slide picture in loop" +msgstr "Pomeraj sliku u okviru" + +# +#, fuzzy +msgid "Slide show interval (sec.)" +msgstr "Interval pokaz.prezentacije(sek.)" + +# +#, python-format +msgid "Slot %d" +msgstr "Otvor %d" + +msgid "Slovak" +msgstr "" + +# +msgid "Slovenian" +msgstr "Slovenački" + +# +msgid "Slow" +msgstr "Sporo" + +# +#, fuzzy +msgid "Slow motion speeds" +msgstr "Brzine usporene reprodukcije" + +# +#, fuzzy +msgid "Small progress" +msgstr "U toku" + +msgid "Social/Political/Economics" +msgstr "" + +msgid "SoftCam / CI" +msgstr "" + +# +#, fuzzy +msgid "Softcam type" +msgstr "Softver" + +# +msgid "Software" +msgstr "Softver" + +# +msgid "Software management" +msgstr "Upravljač softvera " + +msgid "Software manager setup" +msgstr "Podešavanje upravljača softvera" + +# +msgid "Software restore" +msgstr "Vraćanje softvera" + +# +msgid "Software update" +msgstr "Nadogradnja softvera" + +msgid "Softwaremanager information" +msgstr "Informacije upravljača softvera" + +# +msgid "Some plugins are not available:\n" +msgstr "Neki dodaci nisu dostupni:\n" + +# +#, fuzzy, python-format +msgid "Sorry, %s has not been installed!" +msgstr "Žao mi je,MediaScanner nije instalisan" + +msgid "Sorry, deleting directories can (for now) only be done through the trash can." +msgstr "" + +# +#, fuzzy +msgid "Sorry, no backups found!" +msgstr "Žao mi je,nema rezervnih kopija" + +# +#, fuzzy +msgid "Sorry, no details available!" +msgstr "Žao mi je,nema dostupnih detalja" + +# +#, fuzzy +msgid "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." +msgstr "" +"Žao mi je,vaša destinacija za snimanje nije upisiva.\n" +"Molim izaberite drugu." + +msgid "Sort" +msgstr "" + +# +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort A-Z" +msgstr "Sortiraj A-Z" + +msgid "Sort by" +msgstr "" + +msgid "Sort list:" +msgstr "" + +# +#. TRANSLATORS: This must fit into the header button in the EPG-List +#, fuzzy +msgid "Sort time" +msgstr "Vreme sortiranja" + +# +msgid "Sound" +msgstr "Zvuk" + +# +#, fuzzy +msgid "Sound carrier" +msgstr "Zvučni nosilac" + +msgid "Source request" +msgstr "" + +# +msgid "South" +msgstr "Jug" + +# +msgid "Spanish" +msgstr "Španski" + +msgid "Specify the end time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the end time until the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify the start time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the start time when the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify timeframe to ignore inactivity sleeptimer" +msgstr "" + +msgid "Specify timeframe to ignore the shutdown in standby" +msgstr "" + +# +msgid "Split preview mode" +msgstr "Podeli mod pregleda" + +msgid "Splitscreen" +msgstr "" + +msgid "Sports" +msgstr "" + +# +#, fuzzy +msgid "Standard" +msgstr "standardno" + +msgid "Standart list" +msgstr "" + +# +msgid "Standby" +msgstr "Spreman" + +# +#, fuzzy +msgid "Standby / restart" +msgstr "Spreman / restart" + +msgid "Standby after current event" +msgstr "" + +# +#, fuzzy, python-format +msgid "Standby fan %d PWM" +msgstr "Ventilator spreman %d PWM" + +# +#, fuzzy, python-format +msgid "Standby fan %d voltage" +msgstr "Ventilator spreman %d Voltage" + +msgid "Standby in " +msgstr "" + +msgid "StandbyLED" +msgstr "" + +# +msgid "Start from the beginning" +msgstr "Počnite od početka" + +msgid "Start offline decode" +msgstr "" + +# +msgid "Start recording?" +msgstr "Započeti snimanje?" + +# +msgid "Start test" +msgstr "Počnite test" + +# +#, fuzzy +msgid "Start time" +msgstr "Početno vreme " + +msgid "Start time to ignore inactivity sleeptimer" +msgstr "" + +msgid "Start time to ignore shutdown in standby" +msgstr "" + +# +#, fuzzy +msgid "Start timeshift" +msgstr "pokreni vrem.pomak" + +msgid "Start with list screen" +msgstr "" + +# +msgid "Starting on" +msgstr "Pokrećem" + +msgid "Startup the set top box in standby" +msgstr "" + +msgid "Startup to Standby" +msgstr "" + +# +msgid "Step east" +msgstr "Korak na istok" + +# +msgid "Step west" +msgstr "Korak na zapad" + +msgid "Stepped east" +msgstr "" + +msgid "Stepped west" +msgstr "" + +# +msgid "Stop" +msgstr "Zaustavi " + +# +#, fuzzy +msgid "Stop PiP" +msgstr "zaustavi PiP" + +# +msgid "Stop current event and disable coming events" +msgstr "Zaustavi trenutni događaj i onemogući ostale dolazeće." + +# +msgid "Stop current event but not coming events" +msgstr "Zaustavi trenutni događaj ali ne i ostale dolazeće" + +# +#, fuzzy +msgid "Stop entry" +msgstr "zaustavi unos" + +# +msgid "Stop playing this movie?" +msgstr "Zaustaviti ovaj film?" + +msgid "Stop recording" +msgstr "" + +msgid "Stop recording and delete" +msgstr "" + +msgid "Stop service on return to movie list" +msgstr "" + +# +msgid "Stop test" +msgstr "Zaustavite test" + +# +msgid "Stop testing plane after # failed transponders" +msgstr "Zaustavite testiranje matrice posle # neuspešnih transpondera" + +# +msgid "Stop testing plane after # successful transponders" +msgstr "Zaustavite testiranje matrice posle#uspelih transpondera" + +msgid "Stop timer recording" +msgstr "" + +# +#, fuzzy +msgid "Stop timeshift" +msgstr "zaustavi vrem.pomak" + +# +#, fuzzy +msgid "Stop timeshift?" +msgstr "Zaustaviti vrem. pomak?" + +msgid "Stopped" +msgstr "" + +msgid "Store at index" +msgstr "" + +# +msgid "Store position" +msgstr "Snimi poziciju" + +# +msgid "Stored position" +msgstr "Snimljene pozicije" + +msgid "Stream" +msgstr "" + +msgid "Stream request" +msgstr "" + +msgid "Strongest position" +msgstr "" + +# +msgid "Subservice list..." +msgstr "lista podkanala..." + +# +msgid "Subservices" +msgstr "Podkanali " + +msgid "Subtitle Quickmenu" +msgstr "" + +# +#, fuzzy +msgid "Subtitle alignment" +msgstr "Izbor subtitlova" + +msgid "Subtitle border width" +msgstr "" + +msgid "Subtitle delay when timing is bad" +msgstr "" + +msgid "Subtitle delay when timing lacks" +msgstr "" + +# +#, fuzzy +msgid "Subtitle font size" +msgstr "Subtitlovi" + +msgid "Subtitle language selection 1" +msgstr "" + +msgid "Subtitle language selection 2" +msgstr "" + +msgid "Subtitle language selection 3" +msgstr "" + +msgid "Subtitle language selection 4" +msgstr "" + +# +#, fuzzy +msgid "Subtitle position" +msgstr "Izbor subtitlova" + +# +msgid "Subtitle selection" +msgstr "Izbor subtitlova" + +msgid "Subtitle selection..." +msgstr "" + +msgid "Subtitle settings" +msgstr "" + +# +msgid "Subtitles" +msgstr "Subtitlovi" + +# +msgid "Sun" +msgstr "Ned" + +# +msgid "Sunday" +msgstr "Nedelja" + +# +#, fuzzy +msgid "Swap PiP and main picture" +msgstr "zameni SuS sa glavnom slikom" + +# +#, fuzzy +msgid "Swap services" +msgstr "Zameni kanale" + +# +msgid "Swedish" +msgstr "Švedski" + +msgid "Switch TV to correct input" +msgstr "" + +msgid "Switch between filelist/playlist" +msgstr "" + +msgid "Switch between normal mode and list mode" +msgstr "" + +msgid "Switch to HDMI in mode" +msgstr "" + +# +#, fuzzy +msgid "Switch to filelist" +msgstr "prebaci u listu datoteka" + +msgid "Switch to next channel" +msgstr "" + +# +#, fuzzy +msgid "Switch to next channel in history" +msgstr "sledeći kanal u istoriji" + +# +#, fuzzy +msgid "Switch to next sub service" +msgstr "prebaci na sledeći podkanal " + +# +#, fuzzy +msgid "Switch to playlist" +msgstr "prebaci u plejlistu" + +# +#, fuzzy +msgid "Switch to previous channel" +msgstr "prebaci na prethodni podkanal " + +# +#, fuzzy +msgid "Switch to previous channel in history" +msgstr "predhodni kanal u istoriji" + +# +#, fuzzy +msgid "Switch to previous sub service" +msgstr "prebaci na prethodni podkanal " + +# +msgid "Switchable tuner types:" +msgstr "Zamenljivi tipovi tjunera:" + +msgid "Symbol rate" +msgstr "Simbol rata" + +msgid "Symbol rate:" +msgstr "" + +msgid "Sync failure moving back to origin !" +msgstr "" + +# +msgid "System" +msgstr "Sistem " + +# +#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) +msgid "TRANSLATOR_INFO" +msgstr "PREVODILAC_INFO" + +# +msgid "TS file is too large for ISO9660 level 1!" +msgstr "TS datoteka je prevelika za ISO9660 nivo 1!" + +msgid "TSID" +msgstr "TSID" + +msgid "TV physical address report" +msgstr "" + +msgid "TXT PID" +msgstr "TXT PID" + +# +#, fuzzy +msgid "Table of contents for collection" +msgstr "Tabela sadržaja za kolekciju" + +# +msgid "Tags" +msgstr "Oznake" + +msgid "Teletext subtitle color" +msgstr "" + +# +#, fuzzy +msgid "Temperature and fan control" +msgstr "Kontrola temperature i ventilatora" + +# +msgid "Terrestrial" +msgstr "Zemaljski" + +# +msgid "Terrestrial provider" +msgstr "Zemaljski provajder" + +# +msgid "Test DiSEqC settings" +msgstr "Testiraj DISEqC postavke" + +# +msgid "Test mode" +msgstr "Test način" + +msgid "Test the network configuration of your receiver.\n" +msgstr "" + +# +#, fuzzy +msgid "Test type" +msgstr "Testiraj tip" + +# +#, fuzzy +msgid "Text color" +msgstr "Boja teksta" + +msgid "Thai" +msgstr "" + +# +msgid "" +"Thank you for using the wizard.\n" +"Please press OK to continue." +msgstr "" +"Hvala vam na korišćenju čarobnjaka.\n" +"Molim pritisnite OK da nastavite." + +# +#, fuzzy +msgid "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." +msgstr "" +"Hvala vam na korišćenju čarobnjaka.\n" +"Molim pritisnite OK da nastavite." + +msgid "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?" +msgstr "" + +msgid "The PIN code has been changed successfully." +msgstr "PIN kod je uspešno promenjen." + +msgid "The PIN codes you entered are different." +msgstr "PIN kodovi koji ste uneli su različiti. " + +msgid "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" +msgstr "" +"USB stik je bio pripremljen da bude butabiloan.\n" +"Sada možete skinuti NFI imidž datoteku!" + +# +msgid "The backup failed. Please choose a different backup location." +msgstr "Neuspešna sigurnosna kopija. Molim odaberite drugu lokaciju." + +#, python-format +msgid "" +"The current beta image might not be stable.\n" +"For more information see %s." +msgstr "" + +# +#, python-format +msgid "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." +msgstr "" +"Direktorium %s nije za pisanje.\n" +"Budi siguran da si umesto toga izabrao moguć direktorium." + +# +#, python-format +msgid "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" +msgstr "" +"Sledeći uređaj nije pronađen:\n" +"\n" +"%s\n" +"\n" +"Da li želite da upišete USB flešer na stik?" + +# +msgid "The following files were found..." +msgstr "Sledeće datoteke su pronađene..." + +msgid "The md5sum validation failed, the file may be corrupted!" +msgstr "md5sum provera validnosti neuspela,datoteka može biti oštećena!" + +# +#, fuzzy +msgid "" +"The network wizard extension is not installed!\n" +"Please install it." +msgstr "" +"NetworkWizard proširenje nije instalirano!\n" +"molim instalirajte ga." + +# +#, python-format +msgid "The path %s already exists." +msgstr "Putanja %s već postoji." + +# +msgid "The pin code you entered is wrong." +msgstr "Uneti pin kod je pogrešan." + +# +#, python-format +msgid "The results have been written to %s." +msgstr "Rezultati su zapisani u %s." + +# +msgid "The sleep timer has been activated." +msgstr "Tajmer spavanja je aktiviran." + +# +msgid "The sleep timer has been disabled." +msgstr "Tajmer je onemogućen." + +# +#, fuzzy +msgid "" +"The software management extension is not installed!\n" +"Please install it." +msgstr "" +"Softwaremanagement proširenje nije instalirano!\n" +"molim instalirajte ga." + +#, python-format +msgid "The status of the current beta image could not be checked because %s can not be reached." +msgstr "" + +# +msgid "The timer file (timers.xml) is corrupt and could not be loaded." +msgstr "Tajmer datoteka (timers.xml) je nepravilna i ne može biti ubačena." + +# +#, fuzzy +msgid "The user interface of your receiver is restarting" +msgstr "Molim sačekajte dok se vaša mreža ponovo startuje" + +msgid "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" +msgstr "" + +# +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." +msgstr "" +"Bežični LAN dodatak nije instaliran!\n" +"Molimo instalirajte ga i izaberite šta sledeće da činite." + +# +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it." +msgstr "" +"Bežični LAN dodatak nije instaliran!\n" +"Molimo instalirajte ga." + +# +msgid "The wizard can backup your current settings. Do you want to do a backup now?" +msgstr "Čarobnjak može napraviti sigurnosnu kopiju postavki. Želite li je napraviti sada?" + +#, python-format +msgid "The wizard found a configuration backup. Do you want to restore your old settings from %s?" +msgstr "Čarobnjak je pronašao bekap konfiguracije.Da li želite da vratite vaše stare postavke sa %s?" + +# +msgid "The wizard is finished now." +msgstr "Čarobnjak je sada gotov." + +# +msgid "There are at least " +msgstr "Postoji najmanje" + +# +#, fuzzy, python-format +msgid "There are at least %s updates available." +msgstr "Nema dostupnih ažuriranja." + +# +msgid "There are currently no outstanding actions." +msgstr "Trenutno nema izrazitih dešavanja." + +# +msgid "There are no updates available." +msgstr "Nema dostupnih ažuriranja." + +msgid "There is no signal to lock on !" +msgstr "" + +# +msgid "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" +msgstr "" +"Moguće je da nema dovoljno prostora na izabranoj particiji.\n" +"Da li stvarno želite nastaviti?" + +# +msgid "This DVD RW medium is already formatted - reformatting will erase all content on the disc." +msgstr "Ovaj DVD RW medij je već formatiran-ponovno formatiranje će izbrisati ceo sadržaj diska." + +msgid "" +"This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!" +msgstr "" + +# +msgid "This plugin is installed." +msgstr "Ovaj dodatak je instaliran." + +# +msgid "This plugin is not installed." +msgstr "Ovaj dodatak nije instaliran." + +# +msgid "This plugin will be installed." +msgstr "Ovaj dodatak će biti instaliran." + +# +msgid "This plugin will be removed." +msgstr "Ovaj dodatak će biti uklonjen." + +#, python-format +msgid "This receiver cannot decode %s streams!" +msgstr "" + +# +#, fuzzy +msgid "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration" +msgstr "" +"Ovaj test proverava konfigurisane nejmservere.\n" +"Ako dobijete poruku \"nepotvrđen\":\n" +"-proverite vaš DHCP.kablove i postavke adaptera\n" +"-ako ste nejmserver ručno konfigurisali,molimo proverite vaše unose u \"Nejmserver \" konfiguraciji" + +# +#, fuzzy +msgid "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" +msgstr "" +"Ovaj test proverava da li je vaš mrežni kabal povezan sa LAN adapterom.\n" +"Ako dobijete poruku \"nepovezan\":\n" +"-proverite da je mrežni kabal uključen\n" +"-proverite da kabal nije prekinut" + +# +#, fuzzy +msgid "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" +msgstr "" +"Ovaj test proverava da li je nađena važeća IP adresa za vaš LAN adapter.\n" +"Ako dobijete poruku \"nepotvrđeno\":\n" +"-nije pronađena validna IP adresa\n" +"-molimo proverite vaš DHCP,kablove i postavke adaptera " + +# +#, fuzzy +msgid "" +"This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." +msgstr "" +"Ovaj test proverava da li je vaš adapter postavljen za automatski izbor IP adrese sa DHCP.\n" +"Ako dobijete poruku \"onemogućen \":\n" +"-onda je vaš adapter konfigurisan za manuelne IP postavke\n" +"-proverite da li ste uneli ispravne IP podatke u dijalog postavkama adaptera.\n" +"Ako ste dobili poruku \"omogućen \":\n" +"-proverite da li u vašoj mreži postoji konfigurisan i u funkciji DHCP server." + +# +#, fuzzy +msgid "This test detects your configured LAN adapter." +msgstr "Ovaj test otkriva vaš konfigurisani LAN-adapter" + +msgid "" +"This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\n" +"Are you sure?" +msgstr "" + +# +msgid "Three" +msgstr "Tri" + +# +msgid "Threshold" +msgstr "Prag" + +# +msgid "Thu" +msgstr "Čet" + +# +msgid "Thumbnails" +msgstr "Sličice" + +# +msgid "Thursday" +msgstr "Četvrtak" + +# +msgid "Time" +msgstr "Vreme" + +# +#, fuzzy +msgid "Time scale" +msgstr "Izbor tajmera " + +# +msgid "Timer" +msgstr "Tajmer" + +msgid "Timer Overview" +msgstr "" + +# +#, fuzzy +msgid "Timer edit" +msgstr "Uređivanje tajmera" + +# +#, fuzzy +msgid "Timer editor" +msgstr "Editor tajmera" + +# +msgid "Timer entry" +msgstr "Unos Tajmera" + +# +msgid "Timer log" +msgstr "Tajmer log" + +# +msgid "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" +msgstr "" +"Otkriveno preklapanje tajmera u timers.xml!\n" +"Molimo ponovo proverite!" + +# +#, fuzzy +msgid "Timer overview" +msgstr "Unos Tajmera" + +# +#, fuzzy +msgid "Timer recording location" +msgstr "Lokacija snimanja po tajmeru" + +# +msgid "Timer sanity error" +msgstr "Greška nerazumnog tajmera" + +# +msgid "Timer selection" +msgstr "Izbor tajmera " + +msgid "Timer selection..." +msgstr "" + +# +#, fuzzy +msgid "Timer type" +msgstr "Tip tajmera" + +# +msgid "Timeshift" +msgstr "Vrem. pomak" + +msgid "Timeshift Live" +msgstr "" + +# +msgid "Timeshift location" +msgstr "Lokacija vrem. pomaka" + +# +msgid "Timeshift not possible!" +msgstr "Vrem.i pomak nije moguć!" + +# +msgid "Timezone" +msgstr "Vremenska zona" + +# +msgid "Title" +msgstr "Naslov" + +# +msgid "Title properties" +msgstr "Svojstva naziva" + +# +msgid "Titleset mode" +msgstr "Način postavki naziva" + +msgid "To audio selection" +msgstr "" + +msgid "To subtitle selection" +msgstr "" + +msgid "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." +msgstr "" + +# +msgid "Today" +msgstr "Danas" + +# +#, fuzzy +msgid "Toggle a cut mark at the current position" +msgstr "aktiviraj rezanje na trenutno označenoj poziciji" + +# +#, fuzzy +msgid "Tone amplitude" +msgstr "Ton amplituda" + +# +msgid "Tone mode" +msgstr "Ton mod" + +# +msgid "Toneburst" +msgstr "Toneburst" + +# +msgid "Toneburst A/B" +msgstr "Toneburst A/B" + +msgid "Top and bottom" +msgstr "" + +# +msgid "Track" +msgstr "Trag" + +# +msgid "Translation" +msgstr "Prevod" + +# +msgid "Translation:" +msgstr "Prevod:" + +msgid "Translations" +msgstr "" + +# +msgid "Transmission mode" +msgstr "Mod transmisije" + +# +msgid "Transponder" +msgstr "Transponder" + +# +#, fuzzy +msgid "Transponder type" +msgstr "Tip Transpondera" + +msgid "Trash can" +msgstr "" + +# +msgid "Tries left:" +msgstr "Pokušaja ostalo:" + +# +msgid "Try to find used transponders in cable network.. please wait..." +msgstr "Pokušavam pronaći korišćene transpondere u kablovskoj mreži.. molim pričekajte..." + +# +msgid "Trying to download a new packetlist. Please wait..." +msgstr "Pokušavam skinuti novu listu paketa.Molim sačekajte..." + +# +msgid "Tue" +msgstr "Uto" + +# +msgid "Tuesday" +msgstr "Utorak" + +# +msgid "Tune" +msgstr "Uskladiti" + +# +#, fuzzy +msgid "Tune and focus" +msgstr "Status tjunera" + +# +msgid "Tune failed!" +msgstr "Greška tjunera!" + +# +msgid "Tuner" +msgstr "Tjuner" + +# +msgid "Tuner configuration" +msgstr "Konfiguracija tjunera" + +msgid "Tuner is not supported" +msgstr "" + +# +#, fuzzy +msgid "Tuner slot" +msgstr "Otvor tjunera" + +# +msgid "Tuner status" +msgstr "Status tjunera" + +# +#, fuzzy, python-format +msgid "Tuner status %s" +msgstr "Status tjunera" + +# +msgid "Tuner type" +msgstr "Tip tjunera" + +# +msgid "Turkish" +msgstr "Turski" + +msgid "Turn on the power LED during standby." +msgstr "" + +msgid "Turning step size" +msgstr "" + +# +msgid "Two" +msgstr "Dva" + +# +msgid "Type" +msgstr "Tip" + +# +msgid "Type of scan" +msgstr "Tip skeniranja" + +# +msgid "USALS" +msgstr "USALS" + +msgid "USALS calibration" +msgstr "" + +# +#, fuzzy +msgid "USB stick" +msgstr "USB stik" + +# +msgid "USB stick wizard" +msgstr "Čarobnjak za USB stik" + +msgid "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" + +# +msgid "Undo install" +msgstr "Poništi instaliranje" + +# +msgid "Undo uninstall" +msgstr "Poništi deinstalaciju" + +msgid "Unencrypted" +msgstr "" + +# +msgid "UnhandledKey" +msgstr "Neupravljan ključ" + +# +msgid "Unicable" +msgstr "Unikabl" + +# +msgid "Unicable LNB" +msgstr "Unikabl LNB" + +# +msgid "Unicable Martix" +msgstr "Unikabl Matrix" + +# +msgid "Uninstall" +msgstr "Deinstaliraj" + +# +msgid "Universal LNB" +msgstr "Univerzalni LNB" + +msgid "Unknown" +msgstr "" + +msgid "Unmount" +msgstr "" + +# +msgid "Unsupported" +msgstr "Nepodržano" + +# +msgid "Update" +msgstr "Ažuriranje" + +msgid "Update and ask to reboot" +msgstr "" + +msgid "Update and reboot (recommended)" +msgstr "" + +# +#, fuzzy +msgid "Update channel list only" +msgstr "sledeći kanal u istoriji" + +#, python-format +msgid "Update completed, %d package was installed." +msgid_plural "Update completed, %d packages were installed." +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +msgid "Update completed. Do you want to reboot your receiver?" +msgstr "" + +msgid "Update failed. Your receiver does not have a working internet connection." +msgstr "" + +msgid "Update has completed." +msgstr "" + +# +msgid "Updatefeed not available." +msgstr "Fid ažuriranja nije dostupan." + +# +msgid "Updating software catalog" +msgstr "Ažuriranje kataloga softvera" + +# +msgid "Upgrading" +msgstr "Nadograđujem" + +# +msgid "Use" +msgstr "Koristi" + +# +msgid "Use DHCP" +msgstr "Koristi DHCP" + +msgid "Use EIT EPG information when it is available." +msgstr "" + +msgid "Use FreeSat EPG information when it is available." +msgstr "" + +msgid "Use MHW EPG information when it is available." +msgstr "" + +msgid "Use Netmed EPG information when it is available." +msgstr "" + +msgid "Use TV remote control" +msgstr "" + +# +#, fuzzy +msgid "Use USALS for this sat" +msgstr "Koristi USALS za ovaj satelit" + +msgid "Use ViaSat EPG information when it is available." +msgstr "" + +msgid "Use Virgin EPG information when it is available." +msgstr "" + +# +msgid "Use a gateway" +msgstr "Koristi prolaz" + +msgid "Use fastscan channel names" +msgstr "" + +msgid "Use fastscan channel numbering" +msgstr "" + +msgid "Use frequency or channel" +msgstr "" + +msgid "Use individual settings for each directory" +msgstr "" + +# +#, fuzzy +msgid "Use interface" +msgstr "Koristi interfejs" + +msgid "Use official channel numbering" +msgstr "" + +msgid "Use original DVB subtitle position" +msgstr "" + +msgid "Use original teletext position" +msgstr "" + +# +msgid "Use power measurement" +msgstr "Koristi merenje snage" + +# +#, fuzzy +msgid "Use the network wizard to configure selected network adapter" +msgstr "Koristi mrežni čarobnjak da konfigurišeš izabrani mrežni adapter" + +# +#, fuzzy +msgid "Use the network wizard to configure your network\n" +msgstr "Koristite mrežni čarobnjak da konfigurišete vašu mrežu\n" + +# +msgid "Use the up/down keys on your remote control to select an option. After that, press OK." +msgstr "Koristite gore/dole tipke na vašem daljinskom upravljaču za izbor opcije. Posle toga, pritisnite OK." + +# +#, fuzzy +msgid "Use the wizard to set up basic features" +msgstr "Koristite čarobnjaka za postavljanje osnovnih postavki" + +#, fuzzy +msgid "Use these input device settings?" +msgstr "Koristi postavke ovog ulaznog uređaja?" + +#, fuzzy +msgid "Use these settings?" +msgstr "Koristi ove postavke?" + +# +msgid "Use this video enhancement settings?" +msgstr "Koristi postavke ovog video poboljšavanja?" + +# +#, fuzzy +msgid "Use trash can in movielist" +msgstr "Vratite se na listu filmova" + +# +msgid "Used service scan type" +msgstr "Korišćeni tip skeniranja kanala" + +msgid "User - bouquets" +msgstr "" + +# +msgid "User defined" +msgstr "Definisano od korisnika" + +msgid "User defined transponder" +msgstr "" + +# +#, fuzzy +msgid "User interface" +msgstr "Koristi interfejs" + +# +msgid "Username" +msgstr "Korisn. ime" + +#, python-format +msgid "Using LNB %d" +msgstr "" + +msgid "Using fixed address" +msgstr "" + +#, python-format +msgid "Using tuner %s" +msgstr "" + +msgid "Usually when the subtitle language is the same as the audio language, the subtitles will not be used. Enable this option to allow these subtitles to be used." +msgstr "" + +# +msgid "VCR scart" +msgstr "VCR skart" + +# +msgid "VMGM (intro trailer)" +msgstr "VMGM (unutrašnji trejler)" + +# +msgid "Vertical" +msgstr "Vertikalno" + +msgid "Vertical turning speed" +msgstr "" + +msgid "Video PID" +msgstr "Video PID" + +# +msgid "Video enhancement preview" +msgstr "Pregled video poboljšavanja" + +# +msgid "Video enhancement settings" +msgstr "Postavke video poboljšavanja" + +# +msgid "Video enhancement setup" +msgstr "Podešavanje video poboljšavanja" + +# +#, fuzzy +msgid "Video fine tuning" +msgstr "Video fino podešavanje" + +# +#, fuzzy +msgid "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." +msgstr "" +"Izbor video ulaza\n" +"\n" +"Molim pritisnite OK ako možete da vidite ovu stranu na vašem TV (ili izaberite različit ulazni port).\n" +"\n" +"Sledeći ulazni port će biti automatski proban za 10 sekundi" + +# +msgid "Video mode selection." +msgstr "Izbor video načina" + +# +#, fuzzy +msgid "Video output" +msgstr "Video izlaz" + +# +#, fuzzy +msgid "Video setup" +msgstr "Video postavke" + +# +#, fuzzy +msgid "Video wizard" +msgstr "Video čarobnjak" + +#, python-format +msgid "Video: %s fps" +msgstr "" + +msgid "VideoMode" +msgstr "" + +msgid "Videocodec" +msgstr "" + +msgid "Videoformat" +msgstr "" + +msgid "Videosize" +msgstr "" + +# +msgid "View Rass interactive..." +msgstr "Gledaj Rass interaktivno..." + +# +msgid "View details" +msgstr "Vidi detalje" + +# +msgid "View list of available " +msgstr "Vidi listu mogućih" + +# +msgid "View list of available CommonInterface extensions" +msgstr "Vidi listu mogućih proširenja za opšti interfejs" + +# +msgid "View list of available EPG extensions." +msgstr "Vidi listu mogućih EPG proširenja" + +# +msgid "View list of available Satellite equipment extensions." +msgstr "Vidi listu mogućih proširenja satelitske opreme." + +# +msgid "View list of available communication extensions." +msgstr "Vidi listu mogućih proširenja za povezivanje." + +# +msgid "View list of available default settings" +msgstr "Vidi listu mogućih osnovnih postavki" + +# +#, fuzzy +msgid "View list of available display and userinterface extensions." +msgstr "Vidi listu mogućih proširenja za displej i korisnički interfejs" + +# +msgid "View list of available multimedia extensions." +msgstr "Vidi listu mogućih multimedija proširenja" + +# +msgid "View list of available networking extensions" +msgstr "Vidi listu mogućih mrežnih proširenja " + +# +msgid "View list of available recording extensions" +msgstr "Vidi listu mogućih proširenja za snimanje" + +# +msgid "View list of available skins" +msgstr "Vidi listu mogućih maski" + +# +msgid "View list of available software extensions" +msgstr "Vidi listu mogućih softverskih proširenja" + +# +msgid "View list of available system extensions" +msgstr "Vidi listu mogućih sistemskih proširenja" + +# +#, fuzzy +msgid "View photos..." +msgstr "Vidi fotografije..." + +# +msgid "View teletext..." +msgstr "Pregled teleteksta..." + +# +#, fuzzy +msgid "View video CD..." +msgstr "Vidi video CD" + +# +#, fuzzy +msgid "Virtual keyboard" +msgstr "Virtuelna tastatura" + +# +msgid "Voltage mode" +msgstr "Mod Napona" + +# +msgid "Volume" +msgstr "Volumen" + +# +msgid "W" +msgstr "W" + +# +msgid "WEP" +msgstr "WEP" + +msgid "WLAN connection" +msgstr "WLAN veza" + +# +msgid "WPA" +msgstr "WPA" + +# +msgid "WPA or WPA2" +msgstr "WPA ili WPA2" + +# +msgid "WPA2" +msgstr "WPA2" + +# +msgid "WSS on 4:3" +msgstr "WSS na 4:3" + +# +msgid "Waiting" +msgstr "Čekanje" + +msgid "Waiting for mount" +msgstr "" + +msgid "Waiting for partition" +msgstr "" + +msgid "Wakeup" +msgstr "" + +msgid "Wakeup TV from standby" +msgstr "" + +msgid "Wakeup receiver for start timer" +msgstr "" + +msgid "Wakeup receiver from standby" +msgstr "" + +msgid "Wakeup signal from TV" +msgstr "" + +msgid "Wakeup type" +msgstr "" + +msgid "Warning: no LNB; using factory defaults." +msgstr "" + +# +#, fuzzy +msgid "Watch movies..." +msgstr "Pokreni snimljene filmove..." + +# +#, fuzzy +msgid "Watch recordings..." +msgstr "snimanje..." + +# +msgid "Wed" +msgstr "Sre" + +# +msgid "Wednesday" +msgstr "Sreda" + +# +msgid "Weekday" +msgstr "Nedeljnii dan" + +msgid "Weighted position" +msgstr "" + +# +#, fuzzy +msgid "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." +msgstr "" +"Dobrodošli na uređivač liste.\n" +"\n" +"Tražite početak onoga što želite da odbacite.Pritisnite OK,izaberite \"počni isecanje\".\n" +"\n" +"Zatim tražite kraj,pritisnite OK,izaberite \"završi isecanje\".To je to." + +msgid "Welcome to the image upgrade wizard. The wizard will assist you in upgrading the firmware of your receiver by providing a backup facility for your current settings and a short explanation of how to upgrade your firmware." +msgstr "" + +msgid "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" +msgstr "" + +msgid "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." +msgstr "" + +# +msgid "Welcome..." +msgstr "Dobrodošli..." + +# +msgid "West" +msgstr "Zapad" + +msgid "West limit set" +msgstr "" + +# +msgid "What do you want to scan?" +msgstr "Šta želite skenirati?" + +msgid "When enabled the PiP can be closed by the exit button." +msgstr "" + +msgid "When enabled the arrow buttons around the OK button will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled the left, right, CH+/-, B+/-, P+/- buttons will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled you can specify a timeframe to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "When enabled you can specify a timeframe were the inactivity sleeptimer is ignored. Not the detection is disabled during this timeframe but the inactivity timeout is disabled" +msgstr "" + +msgid "When enabled you can zap channels with the CH+/-, B+/-, P+/- buttons instead of opening the channel selection list." +msgstr "" + +msgid "When enabled you get the channel selection list via the OK button, the infobar toggle is then transfered to exit button" +msgstr "" + +msgid "When enabled, AIT data will be included in http streams. This allows a client receiver to use HbbTV." +msgstr "" + +msgid "When enabled, ECM data will be included in http streams. This allows a client receiver to do the descrambling." +msgstr "" + +msgid "When enabled, EIT data will be included in http streams. This allows a client receiver to show EPG." +msgstr "" + +msgid "When enabled, a popup message will be shown when a movie has finished and the next one will start." +msgstr "" + +msgid "When enabled, a popup message will be shown when a recording starts." +msgstr "" + +msgid "When enabled, a radio background image will be visible while listening to a radio channel." +msgstr "" + +msgid "When enabled, a recording is allowed to interrupt live tv, when there are no free tuners." +msgstr "" + +msgid "When enabled, a warning will be displayed and the user will get an option to stop or to continue the timeshift." +msgstr "" + +msgid "When enabled, authentication is required to watch http streams." +msgstr "" + +msgid "When enabled, channel numbering will start at '1' for each bouquet." +msgstr "" + +msgid "When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen." +msgstr "" + +msgid "When enabled, continue to the next bouquet when the last channel of the current bouquet is reached while changing channels." +msgstr "" + +msgid "When enabled, deleted recordings are moved to the trash can, instead of being deleted immediately." +msgstr "" + +msgid "When enabled, display the EIT now/next eventdata in infobar. When disabled, display now/next eventdata from the EPG cache instead." +msgstr "" + +msgid "When enabled, encryption info will be shown in the infobar (when supported by the skin)." +msgstr "" + +msgid "When enabled, error messages related to the Common Interface module will not be shown." +msgstr "" + +msgid "When enabled, error messages related to zapping will not be shown." +msgstr "" + +msgid "When enabled, external subtitles will be always turned on for playback movie." +msgstr "" + +msgid "When enabled, graphical DVB subtitles are preferred over teletext subtitles, when both types are available." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be centered horizontally." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be displayed at their original position." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be displayed in yellow, instead of the original color." +msgstr "" + +msgid "When enabled, http streams are descrambled on the server side. The (remote) client receiver does not have to do descrambling." +msgstr "" + +msgid "When enabled, it is possible to leave the movieplayer with exit." +msgstr "" + +msgid "When enabled, measure power consumption to detect when the rotor stops turning (when supported by the tuner)." +msgstr "" + +msgid "When enabled, number markers will be hiden." +msgstr "" + +msgid "When enabled, services may be grouped in multiple bouquets." +msgstr "" + +msgid "When enabled, show channel numbers in the channel selection screen." +msgstr "" + +msgid "When enabled, subtitles for the hearing impaired can be used." +msgstr "" + +msgid "When enabled, subtitles for the hearing impaired will be preferred over normal subtitles, when both types are available." +msgstr "" + +msgid "When enabled, teletext pages will be cached, allowing faster access." +msgstr "" + +msgid "When enabled, teletext subtitles will be displayed at their original position." +msgstr "" + +msgid "When enabled, the VCR scart option will be shown on the main menu" +msgstr "" + +msgid "When enabled, the channel selection list will be hidden while listening to a radio channel" +msgstr "" + +msgid "When enabled, the infobar will be displayed when a new event starts." +msgstr "" + +msgid "When enabled, the infobar will be displayed when changing channels." +msgstr "" + +msgid "When enabled, the infobar will be displayed when skipping forwards/backwards during media playback." +msgstr "" + +msgid "When enabled, the lenght of each recording will be shown in the movielist (this might cause some additional loading time)." +msgstr "" + +msgid "When enabled, the original line breaks will be removed from the teletext subtitles." +msgstr "" + +msgid "When enabled, the receiver will automatically use the audio track which you selected before." +msgstr "" + +msgid "When enabled, the receiver will automatically use the subtitles which you selected before." +msgstr "" + +msgid "When enabled, the receiver will no longer monitor the tuned transponder for possible changes. Do not use this option unless you know what you are doing." +msgstr "" + +msgid "When enabled, the receiver will select an AC3 track (when available)." +msgstr "" + +msgid "When enabled, the receiver will select an AC3+ track (when available)." +msgstr "" + +msgid "When enabled, timeshift starts automatically in background after specified time." +msgstr "" + +# +#, fuzzy +msgid "When enabled, use DHCP for the IP configuration." +msgstr "Otvori konfiguraciju nejmservera " + +msgid "When enabled, your receiver will detect activity on the VCR SCART input." +msgstr "" + +msgid "When nonzero, a recording will start earlier than the starting time indicated by the EPG." +msgstr "" + +msgid "When nonzero, a recording will stop later than the ending time indicated by the EPG." +msgstr "" + +msgid "When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture." +msgstr "" + +msgid "When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture." +msgstr "" + +# +msgid "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" +msgstr "" +"Kad radite resetovanje na fabričke vrednosti,izgubićete sve konfiguracijske podatke\n" +"(uključujući bukete,kanale,podatke o satelitima...)\n" +"Posle kompletnog resetovanja,vaš risiver će automatski restartovati!\n" +"\n" +"Stvarno uraditi reset na fabričke vrednosti?" + +# +msgid "Where do you want to backup your settings?" +msgstr "Gdje želite sačuvati ovu sigurnosnu kopiju liste kanala?" + +# +msgid "Where to save temporary timeshift recordings?" +msgstr "Gde sačuvati privrem. snimanja uz pomoć vrem. pomaka?" + +# +msgid "Wireless LAN" +msgstr "Bežični LAN" + +# +#, fuzzy +msgid "Wireless network" +msgstr "Bežična mreža" + +# +#, fuzzy +msgid "Wireless network configuration..." +msgstr "Mrežna konfiguracija..." + +msgid "Wireless network connection setup" +msgstr "" + +msgid "Wireless network connection setup." +msgstr "" + +msgid "Wireless network state" +msgstr "" + +msgid "With popup" +msgstr "" + +msgid "Without popup" +msgstr "" + +msgid "Would you like to install a softcam?" +msgstr "" + +# +msgid "Write error while recording. Disk full?\n" +msgstr "Greška tokom snimanja. Disk Pun?\n" + +# +msgid "Write failed!" +msgstr "Upisivanje nije uspelo!" + +# +msgid "YPbPr" +msgstr "YPbPr" + +# +msgid "Year" +msgstr "Godina" + +msgid "Yellow DVB subtitles" +msgstr "" + +# +msgid "Yes" +msgstr "Da" + +msgid "Yes and save" +msgstr "" + +msgid "Yes and save in movie dir" +msgstr "" + +# +msgid "Yes to all" +msgstr "Da za sve" + +msgid "Yes, always" +msgstr "Da,uvek" + +# +msgid "Yes, and delete this movie" +msgstr "Da i izbrišite ovaj film" + +# +msgid "Yes, backup my settings!" +msgstr "Da, napravi sigurnosnu kopiju mojih postavki." + +msgid "Yes, delete this movie and return to movie list" +msgstr "" + +# +msgid "Yes, do a manual scan now" +msgstr "Da, započeti ručnu pretragu sada" + +# +msgid "Yes, do an automatic scan now" +msgstr "Da, započni automatsko pretraživanje sada" + +# +msgid "Yes, do another manual scan now" +msgstr "Da, započni drugu ručnu pretragu sada" + +# +msgid "Yes, perform a shutdown now." +msgstr "Da, započni isključivanje sada" + +# +msgid "Yes, restore the settings now" +msgstr "Da, vrati sačuvane postavke sada" + +# +msgid "Yes, returning to movie list" +msgstr "Da,vratiti se na listu filmova" + +msgid "Yesterday" +msgstr "" + +#, python-format +msgid "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" +msgstr "" + +# +msgid "You can cancel the installation." +msgstr "Možete otkazati instaliranje." + +# +msgid "You can cancel the removal." +msgstr "Možete otkazati uklanjanje." + +msgid "You can continue watching TV etc. while this is running." +msgstr "" + +# +msgid "You can install this plugin." +msgstr "Možete instalirati ovaj dodatak." + +msgid "You can only burn receiver recordings!" +msgstr "" + +# +msgid "You can remove this plugin." +msgstr "Možete ukloniti ovaj dodatak." + +# +msgid "You cannot delete this!" +msgstr "Ne možete ovo obrisati!" + +msgid "You didn't select a channel to record from." +msgstr "Niste odabrali kanal sa koga ćete snimati." + +# +msgid "You have chosen to backup your settings. Please press OK to start the backup now." +msgstr "Izabrali ste da snimite svoje postavke.Molimo pritisnite OK da sada počnete snimanje." + +# +msgid "You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased." +msgstr "Izabrali ste da kreirate novi .NFI flešer butabilni USB stik.Ovo će ponovo particirati USB stik i svi podaci će biti izbrisani.i " + +# +msgid "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." +msgstr "Izabrali ste da povratite vaše postavke.Enigma2 će ponovo startovati posle vraćanja.Molim sada pritisnite OK da počnete vraćanje." + +# +#, python-format +msgid "You have to wait %s!" +msgstr "Morate pričekati %s!" + +msgid "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." +msgstr "" + +msgid "You system does not support ext4" +msgstr "" + +# +msgid "Your backup succeeded. We will now continue to explain the further upgrade process." +msgstr "Sigurnosna kopija je uspešno napravljena. Sada ćemo dalje objasniti za sljedeći proces nadogradnje." + +# +msgid "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" +msgstr "Vaša kolekcija prelazi veličinu jednoslojnog medija,trebate prazan dvoslojni DVD! " + +# +msgid "Your current collection will get lost!" +msgstr "Vaša aktuelna kolekcija će biti izgubljena!" + +# +msgid "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." +msgstr "" +"Vaš softver frontprocesora mora biti nadograđen.\n" +"Pritisnite OK za početak nadogradnje." + +msgid "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" + +# +msgid "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." +msgstr "" +"Vaša internet veza ne radi!\n" +"Molim izaberite šta želite sledeće učiniti." + +#, python-format +msgid "Your internet connection is working (ip: %s)" +msgstr "" + +# +msgid "Your network configuration has been activated." +msgstr "Vaša mrežna konfiguracija je aktivirana." + +msgid "Your receiver does not have an internet connection" +msgstr "" + +# +#, fuzzy +msgid "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" +msgstr "" +"Vaš drimboks je sada spreman za upotrebu.\n" +"\n" +"Vaša internet veza sada radi.\n" +"\n" + +msgid "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." +msgstr "" + +msgid "Your receiver is rebooting" +msgstr "" + +msgid "Your receiver is shutting down" +msgstr "" + +msgid "Your receiver is shutting down. Please stand by..." +msgstr "" + +msgid "Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver." +msgstr "" + +msgid "Your receiver will got to stand by due to the sleeptimer." +msgstr "" + +msgid "Your receiver will got to standby due to inactivity." +msgstr "" + +msgid "Your receiver will restart after pressing OK on your remote control." +msgstr "" + +# +msgid "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." +msgstr "" +"Vaša bežična LAN internet veza ne može biti pokrenuta!\n" +"Da li ste spojili vaš USB WLAN stik?\n" +"\n" +"Molim izaberite šta želite sledeće da učinite." + +msgid "Zap" +msgstr "" + +# +msgid "Zap back to previously tuned service?" +msgstr "Vratiti se nazad na prethodni kanal?" + +# +msgid "Zap back to service before positioner setup?" +msgstr "Prebaciti na zadnji kanal pre podešavanja motora?" + +# +msgid "Zap back to service before tuner setup?" +msgstr "Vratiti se nazad na kanal pre podešavanja tjunera?" + +msgid "Zap focus to Picture in Picture" +msgstr "" + +msgid "Zap focus to main screen" +msgstr "" + +msgid "Zap mode" +msgstr "" + +msgid "Zap to selected channel" +msgstr "" + +msgid "Zap to selected channel, or show detailed event info (depends on configuration)" +msgstr "" + +# +msgid "[alternative edit]" +msgstr "[uređivanje alternative]" + +# +msgid "[bouquet edit]" +msgstr "[uređivanje buketa]" + +# +msgid "[favourite edit]" +msgstr "[uređivanje favorita]" + +# +msgid "[move mode]" +msgstr "[mod premeštanja]" + +# +msgid "a gui to assign services/providers to common interface modules" +msgstr "Gui da dodeli kanale/provajdere modulima opšteg interfejsa" + +# +msgid "a gui to assign services/providers/caids to common interface modules" +msgstr "Gui da dodeli kanale/provajdere/kaide modulima opšteg interfejsa" + +# +msgid "abort alternatives edit" +msgstr "odustani od uređivanja alternative" + +# +msgid "abort bouquet edit" +msgstr "prekini uređivanje buketa" + +# +msgid "abort favourites edit" +msgstr "odustani od uređivanja favorita" + +# +msgid "about to start" +msgstr "spremni za početak" + +# +msgid "activate network adapter configuration" +msgstr "Aktivirajte konfiguraciju mrežnog adaptera" + +# +msgid "add alternatives" +msgstr "dodaj alternative" + +# +msgid "add bookmark" +msgstr "Dodaj oznaku" + +# +msgid "add bouquet" +msgstr "dodaj buket" + +# +msgid "add marker" +msgstr "dodaj oznaku" + +# +msgid "add service to bouquet" +msgstr "dodaj kanal u buket " + +# +msgid "add service to favourites" +msgstr "dodaj kanal u favorite" + +# +msgid "add to parental protection" +msgstr "dodaj u roditeljsku zaštitu" + +msgid "adult movie/drama" +msgstr "" + +# +msgid "advanced" +msgstr "napredno" + +msgid "adventure/western/war" +msgstr "" + +msgid "advertisement/shopping" +msgstr "" + +msgid "after " +msgstr "" + +# +#, fuzzy +msgid "alphabetic" +msgstr "sortiraj abecedno" + +msgid "alphabetic reverse" +msgstr "" + +msgid "alternative" +msgstr "" + +msgid "always" +msgstr "" + +msgid "and select next channel" +msgstr "" + +msgid "and select previous channel" +msgstr "" + +msgid "arts/culture (without music, general)" +msgstr "" + +msgid "arts/culture magazine" +msgstr "" + +msgid "athletics" +msgstr "" + +# +msgid "audio tracks" +msgstr "Audio zapisi" + +# +msgid "auto" +msgstr "Auto" + +# +#, fuzzy +msgid "automatic" +msgstr "Automatski" + +# +msgid "back" +msgstr "natrag" + +# +msgid "background image" +msgstr "Pozadinska slika" + +msgid "ballet" +msgstr "" + +#, python-format +msgid "bc%s" +msgstr "" + +# +msgid "better" +msgstr "bolje" + +# +msgid "black" +msgstr "Crno " + +msgid "black & white" +msgstr "" + +# +msgid "blacklist" +msgstr "crna lista" + +# +msgid "blue" +msgstr "Plavo" + +msgid "broadcasting/press" +msgstr "" + +# +#, fuzzy +msgid "by date" +msgstr "sortiraj po datumu" + +msgid "cartoon/puppets" +msgstr "" + +msgid "center" +msgstr "" + +msgid "centered" +msgstr "" + +msgid "centered, wrapped" +msgstr "" + +# +msgid "chapters" +msgstr "Poglavlja" + +msgid "childrens's/youth program (general)" +msgstr "" + +# +msgid "circular left" +msgstr "leva cirkularna" + +# +msgid "circular right" +msgstr "desna cirkularna" + +msgid "comedy" +msgstr "" + +# +msgid "complex" +msgstr "kompleksno" + +# +msgid "config menu" +msgstr "konfig meni" + +# +msgid "confirmed" +msgstr "Potvrđeno" + +# +msgid "connected" +msgstr "Povezano" + +# +msgid "continue" +msgstr "nastavi" + +msgid "cooking" +msgstr "" + +# +msgid "copy to bouquets" +msgstr "kopiraj u bukete" + +# +msgid "create directory" +msgstr "Kreiraj direktorijum" + +#, python-format +msgid "currently installed image: %s" +msgstr "Trenutno instalisani imidž: %s" + +# +msgid "daily" +msgstr "dnevno" + +# +msgid "day" +msgstr "Dan" + +#, fuzzy +msgid "default" +msgstr "Standardno" + +# +msgid "delete cut" +msgstr "obriši rez" + +msgid "delete..." +msgstr "" + +msgid "descramble and record ecm" +msgstr "" + +msgid "detective/thriller" +msgstr "" + +# +msgid "disable" +msgstr "onemogući" + +# +msgid "disable move mode" +msgstr "onemoguće mod premeštanja" + +# +msgid "disabled" +msgstr "onemogućeno" + +# +msgid "disconnected" +msgstr "nepovezan" + +msgid "discussion/interview/debate" +msgstr "" + +# +msgid "do nothing" +msgstr "ne čini ništa " + +msgid "documentary" +msgstr "" + +msgid "don't descramble, record ecm" +msgstr "" + +# +msgid "done!" +msgstr "Učinjeno!" + +msgid "east" +msgstr "" + +msgid "economics/social advisory" +msgstr "" + +# +msgid "edit alternatives" +msgstr "Uredi alternative" + +msgid "education/science/factual topics (general)" +msgstr "" + +# +msgid "empty" +msgstr "prazno" + +# +msgid "enable" +msgstr "omogući" + +# +msgid "enable bouquet edit" +msgstr "omogući uređivanje paketa" + +# +msgid "enable favourite edit" +msgstr "omogući uređivanje favorita" + +# +msgid "enable move mode" +msgstr "uključi mod za premeštanje" + +# +msgid "enabled" +msgstr "omogućeno" + +# +msgid "end alternatives edit" +msgstr "kraj uređivanja alternativa" + +# +msgid "end bouquet edit" +msgstr "završi uređivanje buketa" + +# +msgid "end cut here" +msgstr "završi rez ovde" + +# +msgid "end favourites edit" +msgstr "završi uređivanje favorita" + +msgid "entertainment (10-16 year old)" +msgstr "" + +msgid "entertainment (6-14 year old)" +msgstr "" + +# +msgid "equal to" +msgstr "jednako" + +msgid "equestrian" +msgstr "" + +# +msgid "exit DVD player or return to file browser" +msgstr "Napustite DVD plejer ili se vratite na pretraživač datoteka" + +msgid "exit movielist" +msgstr "" + +# +msgid "exit network adapter configuration" +msgstr "Napustite konfiguraciju mrežnog adaptera" + +# +msgid "exit networkadapter setup menu" +msgstr "Napustite meni postavki mrežnog adaptera" + +msgid "experimental film/video" +msgstr "" + +msgid "false" +msgstr "" + +msgid "fashion" +msgstr "" + +# +msgid "fileformats (BMP, PNG, JPG, GIF)" +msgstr "Formati datoteka (BMP,PNG,JPG,GIF)" + +# +msgid "filename" +msgstr "Ime datoteke" + +msgid "film/cinema" +msgstr "" + +msgid "fine arts" +msgstr "" + +# +msgid "fine-tune your display" +msgstr "Fino podesite vaš displej" + +msgid "fitness & health" +msgstr "" + +# +#, fuzzy +msgid "flat alphabetic" +msgstr "sortiraj abecedno" + +# +#, fuzzy +msgid "flat alphabetic reverse" +msgstr "sortiraj abecedno" + +msgid "folk/traditional music" +msgstr "" + +msgid "football/soccer" +msgstr "" + +msgid "foreign countries/expeditions" +msgstr "" + +# +msgid "forward to the next chapter" +msgstr "Napred na sledeće poglavlje" + +# +msgid "free" +msgstr "slobodno" + +msgid "from" +msgstr "" + +msgid "further education" +msgstr "" + +msgid "game show/quiz/contest" +msgstr "" + +msgid "gardening" +msgstr "" + +# +msgid "go to deep standby" +msgstr "pokreni isključivanje drimboxa" + +# +msgid "go to standby" +msgstr "pođi u pripravnost" + +# +msgid "grab this frame as bitmap" +msgstr "Postavite ovaj frejm kao bitmapu" + +# +msgid "green" +msgstr "zeleno" + +msgid "handicraft" +msgstr "" + +msgid "height" +msgstr "" + +# +msgid "help..." +msgstr "pomoć..." + +# +msgid "horizontal" +msgstr "horizontalno" + +msgid "information/education/school program" +msgstr "" + +# +msgid "init module" +msgstr "Iniciraj blok" + +# +msgid "init modules" +msgstr "iniciraj blokove" + +# +msgid "insert mark here" +msgstr "unesi oznaku ovdje" + +msgid "invalid type" +msgstr "" + +msgid "jazz" +msgstr "" + +# +msgid "jump back to the previous title" +msgstr "Skoči nazad na prethodni naslov" + +# +msgid "jump forward to the next title" +msgstr "Skoči napred na naredni naslov" + +msgid "languages" +msgstr "" + +# +msgid "leave movie player..." +msgstr "napusti video plejer" + +# +msgid "left" +msgstr "levi" + +msgid "left, wrapped" +msgstr "" + +msgid "leisure hobbies (general)" +msgstr "" + +# +msgid "length" +msgstr "dužina" + +msgid "limit ..., aborting !" +msgstr "" + +# +msgid "list style compact" +msgstr "kompaktni stil liste" + +# +msgid "list style compact with description" +msgstr "kompaktni stil liste sa opisom" + +# +msgid "list style default" +msgstr "standardne postavke stila liste" + +# +msgid "list style single line" +msgstr "kompaktni jednostruki stil liste" + +msgid "literature" +msgstr "" + +msgid "live broadcast" +msgstr "" + +# +msgid "locked" +msgstr "zaključan" + +# +msgid "loopthrough to" +msgstr "Prolaz do" + +msgid "magazines/reports/documentary" +msgstr "" + +# +msgid "manual" +msgstr "ručno" + +msgid "martial sports" +msgstr "" + +msgid "medicine/physiology/psychology" +msgstr "" + +# +msgid "menu" +msgstr "meni" + +# +msgid "mins" +msgstr "mins" + +# +msgid "minutes" +msgstr "minuti" + +# +msgid "month" +msgstr "Mesec" + +msgid "motor sport" +msgstr "" + +msgid "motoring" +msgstr "" + +# +msgid "move down to last entry" +msgstr "Pomeri dole na poslednji unos" + +# +msgid "move down to next entry" +msgstr "Pomeri dole na naredni unos" + +# +msgid "move up to first entry" +msgstr "Pomeri gore na prvi unos" + +# +msgid "move up to previous entry" +msgstr "Pomeri gore na prethodni unos" + +msgid "movie/drama (general)" +msgstr "" + +# +msgid "multinorm" +msgstr "multinorm" + +msgid "music/ballet/dance (general)" +msgstr "" + +msgid "musical/opera" +msgstr "" + +msgid "nature/animals/environment" +msgstr "" + +# +msgid "never" +msgstr "nikad" + +msgid "new media" +msgstr "" + +msgid "news magazine" +msgstr "" + +msgid "news/current affairs (general)" +msgstr "" + +msgid "news/weather report" +msgstr "" + +# +msgid "no" +msgstr "Ne" + +# +msgid "no CAId selected" +msgstr "CAId nije izabran" + +# +msgid "no CI slots found" +msgstr "CI otvor nije nađen" + +# +msgid "no module found" +msgstr "nema modula " + +msgid "no storage devices found" +msgstr "" + +# +msgid "none" +msgstr "prazno" + +msgid "normal" +msgstr "" + +# +msgid "not configured" +msgstr "nije konfigurisano" + +# +msgid "not locked" +msgstr "nije prihvaćen" + +msgid "not supported" +msgstr "nije podržano" + +# +msgid "not used" +msgstr "nije u upotrebi" + +# +msgid "nothing connected" +msgstr "ništa nije spojeno" + +# +msgid "of a DUAL layer medium used." +msgstr "Dvoslojni medij se koristi" + +# +msgid "of a SINGLE layer medium used." +msgstr "Jednoslojni medij se koristi" + +# +msgid "off" +msgstr "isključi" + +msgid "offset is" +msgstr "" + +# +msgid "on" +msgstr "uključi" + +# +msgid "on READ ONLY medium." +msgstr "na mediju samo za čitanje" + +msgid "on end of movie" +msgstr "" + +# +msgid "once" +msgstr "jednom" + +msgid "only from deep standby" +msgstr "" + +msgid "only from standby" +msgstr "" + +msgid "open EPG..." +msgstr "" + +msgid "open Info..." +msgstr "" + +# +msgid "open nameserver configuration" +msgstr "Otvori konfiguraciju nejmservera " + +msgid "original" +msgstr "" + +msgid "original language" +msgstr "" + +# +msgid "pass" +msgstr "lozinka" + +msgid "performing arts" +msgstr "" + +msgid "play as picture in picture" +msgstr "" + +msgid "play in mainwindow" +msgstr "" + +# +msgid "please press OK when ready" +msgstr "pritisni OK kada si spreman" + +# +msgid "please wait, loading picture..." +msgstr "molim pričekajte, učitavam sliku..." + +msgid "popular culture/traditional arts" +msgstr "" + +msgid "pre-school children's program" +msgstr "" + +msgid "receiver software because updates are available." +msgstr "" + +# +msgid "record" +msgstr "Snimi" + +# +msgid "recording..." +msgstr "snimanje..." + +# +msgid "red" +msgstr "Crveno" + +msgid "religion" +msgstr "" + +msgid "remarkable people" +msgstr "" + +# +msgid "remove after this position" +msgstr "obriši posle ove pozicije" + +# +msgid "remove all alternatives" +msgstr "obriši sve alternative" + +# +msgid "remove all new found flags" +msgstr "obriši sve novo nađene zastave" + +# +msgid "remove before this position" +msgstr "obriši pre ove pozicije" + +# +msgid "remove bookmark" +msgstr "uklonite oznaku" + +# +msgid "remove directory" +msgstr "Uklonite direktorijum" + +# +msgid "remove entry" +msgstr "obriši unos" + +# +msgid "remove from parental protection" +msgstr "obriši iz roditeljske zaštite" + +# +msgid "remove new found flag" +msgstr "obriši novo nađenu zastavu" + +# +msgid "remove selected satellite" +msgstr "Uklonite izabrani satelit" + +# +msgid "remove this mark" +msgstr "obriši ovu oznaku" + +msgid "rename entry" +msgstr "" + +# +msgid "repeat playlist" +msgstr "Ponovite listu za reprodukciju" + +# +msgid "repeated" +msgstr "ponavljam" + +msgid "reverse by date" +msgstr "" + +# +msgid "rewind to the previous chapter" +msgstr "Premotaj na prethodno poglavlje" + +# +msgid "right" +msgstr "desno" + +msgid "right, wrapped" +msgstr "" + +msgid "rock/pop" +msgstr "" + +msgid "romance" +msgstr "" + +# +msgid "save last directory on exit" +msgstr "Sačuvajte poslednji direktorijum kod izlaska" + +# +msgid "save playlist on exit" +msgstr "Sačuvajte listu za reprodukciju kod izlaska " + +# +msgid "scan state" +msgstr "status skeniranja" + +msgid "science fiction/fantasy/horror" +msgstr "" + +# +msgid "second cable of motorized LNB" +msgstr "drugi kabal od motorizovanog LNB-a" + +# +msgid "seconds" +msgstr "sekundi" + +# +msgid "select" +msgstr "Izaberite" + +# +msgid "select CAId's" +msgstr "Izaberite CAId-e" + +msgid "select EPG..." +msgstr "" + +msgid "select Info..." +msgstr "" + +# +msgid "select menu entry" +msgstr "Izaberite meni ulaz" + +# +msgid "select movie" +msgstr "odaberi film" + +msgid "select the movie path" +msgstr "" + +msgid "serious music/classic music" +msgstr "" + +msgid "serious/classical/religious/historical movie/drama" +msgstr "" + +msgid "service PIN" +msgstr "PIN kanala" + +msgid "set as startup service" +msgstr "" + +msgid "setup PIN" +msgstr "podesi PIN" + +# +msgid "show DVD main menu" +msgstr "Pokaži glavni DVD meni" + +msgid "show all tags" +msgstr "" + +# +msgid "show alternatives" +msgstr "prikaži alternative" + +# +msgid "show event details" +msgstr "prikaži proširene infor. " + +msgid "show extended description" +msgstr "" + +msgid "show mediaplayer on mainmenu" +msgstr "" + +msgid "show softwaremanager in setup menu" +msgstr "" + +msgid "show softwaremanager on blue button" +msgstr "" + +msgid "show tag menu" +msgstr "" + +# +msgid "show transponder info" +msgstr "prikaži info transpondera" + +msgid "show/game show (general)" +msgstr "" + +msgid "shuffle" +msgstr "" + +# +msgid "shut down" +msgstr "isključi " + +# +msgid "simple" +msgstr "jednostavno" + +msgid "skip backward" +msgstr "preskoči unazad" + +# +msgid "skip forward" +msgstr "preskoči unapred" + +msgid "soap/melodram/folkloric" +msgstr "" + +msgid "social/political issues/economics (general)" +msgstr "" + +msgid "social/spiritual science" +msgstr "" + +msgid "sorting of playlists" +msgstr "" + +# +msgid "special characters" +msgstr "posebni karakteri" + +msgid "special events" +msgstr "" + +msgid "special format data DVD (HDTV compatible)" +msgstr "" + +msgid "sports (general)" +msgstr "" + +msgid "sports magazine" +msgstr "" + +# +msgid "standard" +msgstr "standardno" + +# +msgid "start cut here" +msgstr "počni rez ovde" + +# +msgid "start directory" +msgstr "Početni direktorijum" + +msgid "stepsize" +msgstr "" + +# +msgid "stereo" +msgstr "stereo" + +msgid "stop using as startup service" +msgstr "" + +# +msgid "switch to bookmarks" +msgstr "Prebaci na oznake" + +# +msgid "switch to filelist" +msgstr "prebaci u listu datoteka" + +# +msgid "switch to the next angle" +msgstr "Prebaci na sledeći ugao" + +# +msgid "switch to the next audio track" +msgstr "Prebaci na sledeći audio zapis" + +# +msgid "switch to the next subtitle language" +msgstr "Prebaci na sledeći jezik titla" + +msgid "talk show" +msgstr "" + +msgid "team sports" +msgstr "" + +msgid "technology/natural science" +msgstr "" + +# +msgid "template file" +msgstr "Šablon datoteka" + +msgid "tennis/squash" +msgstr "" + +# +msgid "this recording" +msgstr "ovo snimanje" + +# +msgid "this service is protected by a parental control pin" +msgstr "kanal je zaštićen s pin kodom roditeljske kontrole" + +# +msgid "toggle time, chapter, audio, subtitle info" +msgstr "Prebacuj vreme,poglavlje,audio,subtitl informacije" + +msgid "top" +msgstr "" + +msgid "tourism/travel" +msgstr "" + +msgid "true" +msgstr "" + +# +msgid "unavailable" +msgstr "nedostupno" + +# +msgid "unconfirmed" +msgstr "Nepotvrđeno" + +msgid "undefined" +msgstr "" + +# +msgid "unknown" +msgstr "Nepoznato" + +# +msgid "unknown service" +msgstr "Nepoznat kanal" + +msgid "unpublished" +msgstr "" + +# +msgid "until standby/restart" +msgstr "do spreman/restart" + +# +msgid "user defined" +msgstr "korisnički definisano" + +msgid "variety show" +msgstr "" + +# +msgid "vertical" +msgstr "vertikalno" + +# +msgid "wait for ci..." +msgstr "čekaj ci..." + +# +msgid "wait for mmi..." +msgstr "čekam mmi..." + +# +msgid "waiting" +msgstr "čekam" + +msgid "water sport" +msgstr "" + +# +msgid "weekly" +msgstr "nedeljno" + +msgid "west" +msgstr "" + +msgid "when PiPzap enabled zap channel down..." +msgstr "" + +msgid "when PiPzap enabled zap channel up..." +msgstr "" + +msgid "white" +msgstr "" + +# +msgid "whitelist" +msgstr "bela lista" + +msgid "width" +msgstr "" + +msgid "winter sport" +msgstr "" + +msgid "wireless network interface" +msgstr "" + +#, python-format +msgid "with %d error" +msgid_plural "with %d errors" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +# +msgid "working" +msgstr "U radu" + +# +msgid "yellow" +msgstr "Žuto" + +# +msgid "yes" +msgstr "Da " + +# +msgid "yes (keep feeds)" +msgstr "Da ( zadrži fidove)" + +# +msgid "zap" +msgstr "zap" + +msgid "zap and record" +msgstr "" + +# +msgid "zapped" +msgstr "prebačen" + +# +#~ msgid "AA" +#~ msgstr "AA" + +# +#~ msgid "AB" +#~ msgstr "AB" + +# +#, fuzzy +#~ msgid "Activate PiP" +#~ msgstr "Aktiviraj Sliku u Slici" + +# +#, fuzzy +#~ msgid "Add/remove timer for current event" +#~ msgstr "dodaj snimanje (zaustavi posle trenutnog događaja)" + +# +#, fuzzy +#~ msgid "All satellites" +#~ msgstr "Svi sateliti" + +# +#~ msgid "BA" +#~ msgstr "BA" + +# +#~ msgid "BB" +#~ msgstr "BB" + +# +#~ msgid "Behavior of 'pause' when paused" +#~ msgstr "Način rada \"pauza\" kad je zaustavljen" + +# +#~ msgid "Committed DiSEqC command" +#~ msgstr "Upravljačka DISEqC komanda" + +# +#~ msgid "DiSEqC repeats" +#~ msgstr "DiSEqC ponavljanja" + +# +#~ msgid "No satellite frontend found!!" +#~ msgstr "Nije pronađen čeoni satelit!!" + +# +#~ msgid "Remove timer" +#~ msgstr "Ukloniti tajmer" + +# +#~ msgid "Send DiSEqC" +#~ msgstr "Poslati DISEqC" + +# +#, fuzzy +#~ msgid "Switch next channel" +#~ msgstr "sjedeći kanal" + +# +#~ msgid "Uncommitted DiSEqC command" +#~ msgstr "Nedodeljena DiSEqC komanda" + +# +#~ msgid "Zap back to service before satfinder?" +#~ msgstr "Prebaciti natrag na kanal pre sat. tražitelja?" + +#~ msgid "tuner is not supported" +#~ msgstr "tjuner nije podržan" diff --git a/po/sv.po b/po/sv.po new file mode 100644 index 0000000..d37cb2e --- /dev/null +++ b/po/sv.po @@ -0,0 +1,9456 @@ +# Swedish translations for Enigma2. +# +msgid "" +msgstr "" +"Project-Id-Version: enigma2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-07-21 19:08+0200\n" +"PO-Revision-Date: 2013-10-12 20:56+0100\n" +"Last-Translator: Magnus Nilsson <mag_nilsson@hotmail.com>\n" +"Language-Team: \n" +"Language: sv\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Poedit 1.5.4\n" +"X-Poedit-SourceCharset: utf-8\n" + +# +msgid "" +"\n" +"Advanced options and settings." +msgstr "" +"\n" +"Avancerade val och inställningar." + +msgid "" +"\n" +"After pressing OK, please wait!" +msgstr "" +"\n" +"Efter tryckt OK, vänligen vänta!" + +msgid "" +"\n" +"Backup your receiver settings." +msgstr "" +"\n" +"Backup av din mottagares inställningar." + +# +msgid "" +"\n" +"Edit the upgrade source address." +msgstr "" +"\n" +"Ändra uppgraderingskällans adress." + +msgid "" +"\n" +"Manage extensions or plugins for your receiver" +msgstr "" +"\n" +"Hantera utökningar eller plugins för din mottagare" + +msgid "" +"\n" +"Online update of your receiver software." +msgstr "" +"\n" +"Online uppdatering av din mottagares mjukvara." + +# +msgid "" +"\n" +"Press OK on your remote control to continue." +msgstr "" +"\n" +"Tryck OK på fjärrkontrollen för att forsätta." + +# +msgid "" +"\n" +"Restore your backups by date." +msgstr "" +"\n" +"Återskapa med datum på backup." + +msgid "" +"\n" +"Restore your receiver settings." +msgstr "" +"\n" +"Återställ din mottagares inställningar." + +msgid "" +"\n" +"Restore your receiver with a new firmware." +msgstr "" +"\n" +"Återställ din mottagare med en ny firmware." + +# +msgid "" +"\n" +"Scan for local extensions and install them." +msgstr "" +"\n" +"Sök efter lokala utökningar och installera dem." + +# +msgid "" +"\n" +"Select your backup device.\n" +"Current device: " +msgstr "" +"\n" +"Välj din backupenhet.\n" +"Nuvarande enhet: " + +# +msgid "" +"\n" +"View, install and remove available or installed packages." +msgstr "" +"\n" +"Visa, installera och ta bort tillgängliga eller installerade paket." + +msgid " (PiP)" +msgstr " (BiB)" + +msgid " (Radio)" +msgstr " (Radio)" + +msgid " (TV)" +msgstr " (TV)" + +msgid " (disabled)" +msgstr "" + +msgid " (higher than any auto)" +msgstr "" + +msgid " (higher than rotor any auto)" +msgstr "" + +msgid " (lower than any auto)" +msgstr "" + +# +msgid " extensions." +msgstr " utökningar." + +msgid " ms" +msgstr " ms" + +# +msgid " packages selected." +msgstr " valda paket." + +msgid " updates available." +msgstr " uppdateringar tillgängliga." + +#. TRANSLATORS: short time representation hour:minute +#, python-format +msgid "%2d:%02d" +msgstr "%2d:%02d" + +#. TRANSLATORS: full time representation hour:minute:seconds +#, python-format +msgid "%2d:%02d:%02d" +msgstr "%2d:%02d:%02d" + +msgid "%A %d %B" +msgstr "%A %d %B" + +#. TRANSLATORS: long date representations dayname daynum monthname in strftime() format! See 'man strftime' +msgid "%A %e %B" +msgstr "%A %e %B" + +#. TRANSLATORS: full date representation dayname daynum monthname year in strftime() format! See 'man strftime' +msgid "%A %e %B %Y" +msgstr "%A %e %B %Y" + +# +msgid "%H:%M" +msgstr "%H:%M" + +#. TRANSLATORS: short date representation short dayname daynum short monthname in strftime() format! See 'man strftime' +msgid "%a %e/%m" +msgstr "%a %e/%m" + +#. TRANSLATORS: long date representation short dayname daynum short monthname hour:minute in strftime() format! See 'man strftime' +msgid "%a %e/%m %-H:%M" +msgstr "%a %e/%m %-H:%M" + +#. TRANSLATORS: Intermediate scanning result, '%d' channel(s) have been found so far +#, python-format +msgid "%d channel found" +msgid_plural "%d channels found" +msgstr[0] "%d kanal hittad" +msgstr[1] "%d kanaler hittade" + +#, python-format +msgid "%d file" +msgid_plural "%d files" +msgstr[0] "%d fil" +msgstr[1] "%d filer" + +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d timme" +msgstr[1] "%d timmar" + +# +#, python-format +msgid "%d job is running in the background!" +msgid_plural "%d jobs are running in the background!" +msgstr[0] "%d jobb körs i bakgrunden!" +msgstr[1] "%d jobb körs i bakgrunden!" + +#, python-format +msgid "%d min" +msgstr "%d min" + +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d minut" +msgstr[1] "%d minuter" + +#, python-format +msgid "%d minutes" +msgstr "%d minuter" + +#, python-format +msgid "%d pixel wide" +msgid_plural "%d pixels wide" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "%d sekund" +msgstr[1] "%d sekunder" + +#, python-format +msgid "%d subdirectory" +msgid_plural "%d subdirectories" +msgstr[0] "%d underkatalog" +msgstr[1] "%d underkataloger" + +# +#, python-format +msgid "%d wireless network found!" +msgid_plural "%d wireless networks found!" +msgstr[0] "%d trådlöst nätverk hittat!" +msgstr[1] "%d trådlösa nätverk hittade!" + +msgid "%d-%b-%Y %-H:%M" +msgstr "%d-%b-%Y %-H:%M" + +msgid "%d-%m" +msgstr "%d-%m" + +msgid "%d.%B %Y" +msgstr "%d.%B %Y" + +#. TRANSLATORS: VFD hour:minute daynum short monthname in strftime() format! See 'man strftime' +msgid "%k:%M %e/%m" +msgstr "%k:%M %e/%m" + +# +#, python-format +msgid "%s %s free disk space" +msgstr "%s %s ledigt utrymme" + +#, python-format +msgid "%s (%s)\n" +msgstr "%s (%s)\n" + +#. TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. +#, python-format +msgid "%s is no longer used. Should it be deleted?" +msgstr "%s används inte längre. Skall den tas bort?" + +#, python-format +msgid "%s updated package available" +msgid_plural "%s updated packages available" +msgstr[0] "%s uppdatering tillgänglig." +msgstr[1] "%s uppdateringar tillgängliga." + +#, python-format +msgid "%s%d min" +msgstr "%s%d min" + +#, python-format +msgid "%s/%s: %s" +msgstr "%s/%s: %s" + +# +msgid "(ZAP)" +msgstr "(ZAP)" + +# +msgid "(empty)" +msgstr "(tom)" + +# +msgid "(show optional DVD audio menu)" +msgstr "(visa utökad DVD ljudmeny)" + +# +msgid "* Only available if more than one interface is active." +msgstr "* Enbart tillgänglig om mer än ett kort är aktivt." + +msgid "/s" +msgstr "/s" + +# +msgid "0" +msgstr "0" + +# +msgid "1" +msgstr "1" + +# +msgid "1.0" +msgstr "1.0" + +# +msgid "1.1" +msgstr "1.1" + +# +msgid "1.2" +msgstr "1.2" + +# +msgid "12V output" +msgstr "12V utgång" + +# +msgid "13 V" +msgstr "13 V" + +# +msgid "16:10" +msgstr "16:10" + +msgid "16:10 Letterbox" +msgstr "16:10 Letterbox" + +msgid "16:10 PanScan" +msgstr "16:10 PanScan" + +# +msgid "16:9" +msgstr "16:9" + +msgid "16:9 Letterbox" +msgstr "16:9 Letterbox" + +# +msgid "16:9 always" +msgstr "16:9 alltid" + +# +msgid "18 V" +msgstr "18 V" + +# +msgid "2" +msgstr "2" + +msgid "23.976" +msgstr "23.976" + +msgid "24" +msgstr "24" + +msgid "25" +msgstr "25" + +msgid "29.97" +msgstr "29.97" + +# +msgid "3" +msgstr "3" + +msgid "30" +msgstr "30" + +msgid "3d mode" +msgstr "3d läge" + +# +msgid "4" +msgstr "4" + +# +msgid "4:3" +msgstr "4:3" + +# +msgid "4:3 Letterbox" +msgstr "4:3 Letterbox" + +# +msgid "4:3 PanScan" +msgstr "4:3 PanScan" + +# +msgid "5" +msgstr "5" + +# +msgid "6" +msgstr "6" + +# +msgid "7" +msgstr "7" + +# +msgid "8" +msgstr "8" + +# +msgid "9" +msgstr "9" + +#, python-format +msgid ": %s" +msgstr "" + +# +msgid "<Current movielist location>" +msgstr "<Filmlistans aktuella plats>" + +# +msgid "<Default movie location>" +msgstr "<Filmlistans grundplats>" + +# +msgid "<Last timer location>" +msgstr "<Timerns senaste filmplats>" + +# +msgid "<unknown>" +msgstr "<okänd>" + +# +msgid "??" +msgstr "??" + +# +msgid "A" +msgstr "A" + +# +#, python-format +msgid "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" +msgstr "" +"En konfigurationsfil (%s) har ändrats sedan installationen.\n" +"Vill du behålla din ändring?" + +# +#, python-format +msgid "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" +msgstr "" +"En konfigurationsfil (%s) har ändrats sedan installationen.\n" +"Vill du behålla din version?" + +msgid "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"En utförd inspelningstimer vill försätta din\n" +"mottagare i viloläge. Utföra det nu?" + +msgid "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"En utförd inspelningstimer vill stänga av\n" +"din mottagare. Stänga av nu?" + +# +msgid "A graphical EPG for all services of an specific bouquet" +msgstr "En grafisk EPG för alla kanaler i en vald favoritlista" + +# +#, python-format +msgid "" +"A record has been started:\n" +"%s" +msgstr "" +"En inspelning har påbörjats:\n" +"%s" + +# +msgid "" +"A recording is currently running.\n" +"What do you want to do?" +msgstr "" +"En inspelning pågår redan.\n" +"Vad vill du göra?" + +# +msgid "A recording is currently running. Please stop the recording before trying to configure the positioner." +msgstr "En inspelning pågår. Vänligen avbryt den innan du försöker konfigurera motorn." + +msgid "A recording is currently running. Please stop the recording before trying to scan." +msgstr "En inspelning pågår för närvarande. Avsluta inspelningen innan du försöker skanna." + +# +msgid "A recording is currently running. Please stop the recording before trying to start the satfinder." +msgstr "En inspelning pågår. Vänligen avbryt den före du försöker starta satfinder." + +# +#, python-format +msgid "A required tool (%s) was not found." +msgstr "Ett verktyg (%s) som behövs kunde inte hittas." + +# +msgid "A search for available updates is currently in progress." +msgstr "En sökning efter tillgängliga uppdateringar utförs för tillfället." + +# +msgid "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" +msgstr "" +"Ett andra konfigurerat nätverkskort har hittats.\n" +"\n" +"Vill du avaktivera sekundärt nätverkskort?" + +msgid "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"En insomningstimer vill försätta din\n" +"mottagare i viloläge. Utföra det?" + +msgid "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"En insomningstimer vill stänga av\n" +"din mottagare. Stänga av nu?" + +# +msgid "A small overview of the available icon states and actions." +msgstr "En liten översikt av tillgängliga ikoner status och åtgärder." + +# +msgid "" +"A timer failed to record!\n" +"Disable TV and try again?\n" +msgstr "" +"En timerinspelning misslyckades!\n" +"Inaktivera TV och försök igen?\n" + +# +msgid "A/V settings" +msgstr "A / V inställningar" + +msgid "AC3/DTS downmix" +msgstr "AC3 / DTS nedmixning" + +# +msgid "Abort" +msgstr "Avbryt" + +# +msgid "About" +msgstr "Om" + +# +msgid "About..." +msgstr "Om..." + +# +msgid "Accesspoint:" +msgstr "Accespunkt:" + +# +msgid "Action on long powerbutton press" +msgstr "Beteende vid långt tryck på powerknappen" + +msgid "Action on short powerbutton press" +msgstr "Beteende vid kort tryck på powerknappen" + +# +msgid "Activate Picture in Picture" +msgstr "Aktivera Bild i Bild" + +# +msgid "Activate current configuration" +msgstr "Aktivera nuvarande konfiguration" + +# +msgid "Activate network settings" +msgstr "Aktivera nätverksinställningar" + +# +msgid "Activate the configured network settings." +msgstr "Aktivera nätverksinställningar" + +# +msgid "Adapter settings" +msgstr "Adapterinställningar" + +# +msgid "Add" +msgstr "Lägg till" + +msgid "Add Bookmark" +msgstr "Lägg till bokmärke" + +# +msgid "Add a mark" +msgstr "Lägg till markör" + +# +msgid "Add a nameserver entry" +msgstr "Lägg till en namnserver post" + +# +msgid "Add a new title" +msgstr "Lägg till ny titel" + +# +msgid "Add bookmark" +msgstr "Lägg till bokmärke" + +# +msgid "Add directory to playlist" +msgstr "Lägg till bibliotek till spellista" + +# +msgid "Add file to playlist" +msgstr "Lägg till fil i spellista" + +# +msgid "Add files to playlist" +msgstr "Lägg till fil i spellista" + +msgid "Add more details to the crash log" +msgstr "Vid aktiverad, skapa en mer detaljerad krasch-logg." + +# +msgid "Add provider" +msgstr "Lägg till Provider" + +# +msgid "Add recording (enter recording duration)" +msgstr "Lägg till inspelning (ange inspelningslängd)" + +# +msgid "Add recording (enter recording endtime)" +msgstr "Lägg till inspelning (ange inspelningssluttid)" + +# +msgid "Add recording (indefinitely)" +msgstr "Lägg till inspelning (oändlig)" + +# +msgid "Add recording (stop after current event)" +msgstr "Lägg till inspelning (avsluta efter nuvarande program)" + +# +msgid "Add service" +msgstr "Lägg till service" + +# +msgid "Add timer" +msgstr "Lägg till timer" + +# +msgid "Add title" +msgstr "Lägg till titel" + +# +msgid "Add to bouquet" +msgstr "Lägg till i favoritlista" + +# +msgid "Add to favourites" +msgstr "Lägg till i favoriter" + +msgid "Add/remove change timer for current event" +msgstr "" + +msgid "Adjust 3D settings" +msgstr "Justera 3D-inställningar" + +# +msgid "Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens." +msgstr "Justera färginställningarna så att alla färgnivåer är urskiljningsbara, men de ska vara så färgfulla som möjligt. När du är nöjd med resultatet, tryck OK för att stänga videoinställningarna eller tryck på nummerknapp för att välja annan testbild." + +msgid "Advanced" +msgstr "" + +# +msgid "Advanced options" +msgstr "Avancerade inställningar" + +# +msgid "Advanced restore" +msgstr "Avancerad återskapning" + +# +msgid "Advanced software" +msgstr "Avancerad mjukvara" + +# +msgid "Advanced software plugin" +msgstr "Avancerad mjukvaruplugin" + +msgid "Advanced video enhancement setup" +msgstr "Avancerad videoförbättringsinställning" + +# +msgid "Advanced video setup" +msgstr "Avancerad videoinställning" + +# +msgid "After event" +msgstr "Efter program" + +# +msgid "Album" +msgstr "Album" + +msgid "Alignment of events" +msgstr "Placering av program" + +msgid "Alignment of service names" +msgstr "Placering av kanalnamn" + +# +msgid "All" +msgstr "Alla" + +msgid "All ages" +msgstr "Alla åldersgrupper" + +msgid "All satellites 1 (USALS)" +msgstr "" + +msgid "All satellites 2 (USALS)" +msgstr "" + +msgid "All satellites 3 (USALS)" +msgstr "" + +msgid "All satellites 4 (USALS)" +msgstr "" + +msgid "Allocate" +msgstr "Allokera" + +msgid "Allocate unused memory index" +msgstr "Allokera oanvänt minne" + +msgid "Allow quit movieplayer with exit" +msgstr "Avsluta movieplayer med exitknappen" + +msgid "Allow subtitle language to equal audio language" +msgstr "Tillåt att undertextspråk är detsamma som ljudspråk" + +msgid "Allow subtitles for hearing impaired" +msgstr "Tillåt undertexter för hörselskadade" + +# +msgid "Alpha" +msgstr "Alpha" + +# +msgid "Alternative" +msgstr "Lägg till alternativ" + +# +msgid "Alternative numbering mode" +msgstr "Alternativt numreringsläge" + +# +msgid "Alternative services tuner priority" +msgstr "Alternativ tunerprioritering" + +msgid "Always ask" +msgstr "Fråga alltid" + +msgid "Always hide infobar" +msgstr "" + +# +msgid "An empty filename is illegal." +msgstr "Ett tomt filnamn är inte tillåtet." + +# +msgid "An error occurred while downloading the packetlist. Please try again." +msgstr "Ett fel uppstod vid nedladdning av paketlistan. Vänligen prova igen." + +# +msgid "An unknown error occurred!" +msgstr "Ett okänt fel uppstod!" + +msgid "And will put your receiver in standby over " +msgstr "Din mottagare kommer att sättas i viloläge om" + +msgid "Any activity" +msgstr "Vilken aktivitet som helst" + +# +msgid "Arabic" +msgstr "Arabiska" + +msgid "Are you sure to remove this entry?" +msgstr "" + +# +msgid "" +"Are you sure you want to activate this network configuration?\n" +"\n" +msgstr "" +"Är du säker på att du vill aktivera den här nätverkskonfigurationen?\n" +"\n" + +# +msgid "" +"Are you sure you want to delete\n" +"the following backup:\n" +msgstr "" +"Är du säker att du vill ta bort\n" +"följande backup:\n" + +# +msgid "Are you sure you want to exit this wizard?" +msgstr "Är du säker på att du vill avsluta den här guiden?" + +# +msgid "" +"Are you sure you want to restart your network interfaces?\n" +"\n" +msgstr "" +"Är du säker på att du vill starta om dina nätverkskort?\n" +"\n" + +# +#, python-format +msgid "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Är du säker på att du vill återskapa\n" +" från backup:\n" +"%s\n" +"Din mottagare kommer starta om efter återskapningen!" + +# +msgid "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Är du säker på att du vill återskapa från backup?\n" +"Din mottagare kommer starta om efter återskapningen" + +# +msgid "Artist" +msgstr "Artist" + +msgid "Arts/Culture" +msgstr "konst/kultur" + +# +msgid "Ask user" +msgstr "Fråga användare" + +# +msgid "Aspect ratio" +msgstr "Bildformat" + +msgid "Assigned CAIds:" +msgstr "Tilldelade CAIds:" + +# +msgid "Assigned services/provider:" +msgstr "Tilldelade kanaler/operatörer:" + +msgid "At beginning" +msgstr "I början" + +msgid "At end" +msgstr "I slutet" + +# +msgid "Audio" +msgstr "Ljud" + +msgid "Audio PID" +msgstr "Ljud PID" + +msgid "Audio language selection 1" +msgstr "Audio språkval 1" + +msgid "Audio language selection 2" +msgstr "Audio språkval 2" + +msgid "Audio language selection 3" +msgstr "Audio språkval 3" + +msgid "Audio language selection 4" +msgstr "Audio språkval 4" + +# +msgid "Audio options..." +msgstr "Ljudval..." + +# +#, python-format +msgid "Audio track (%s) format" +msgstr "Ljudspår (%s) format" + +# +#, python-format +msgid "Audio track (%s) language" +msgstr "Ljudspår (%s) språk" + +# +msgid "Author: " +msgstr "Författare: " + +# +msgid "Authoring mode" +msgstr "Authoring läge" + +# +#. TRANSLATORS: (aspect ratio policy: always try to display as fullscreen, when there is no content (black bars) on left/right, even if this breaks the aspect. +msgid "Auto" +msgstr "Auto" + +# +msgid "Auto chapter split every ? minutes (0=never)" +msgstr "Auto kapitelsplit varje ? minut (0=aldrig)" + +# +msgid "Auto flesh" +msgstr "Auto hudfärg" + +msgid "Auto focus" +msgstr "Autofokus" + +msgid "Auto focus commencing ..." +msgstr "Autofokus startar..." + +msgid "Auto language selection" +msgstr "Automatiskt språk och ljudval" + +# +msgid "Auto scart switching" +msgstr "Auto scart byte" + +# +msgid "Automatic" +msgstr "Automatisk" + +# +msgid "Automatic scan" +msgstr "Automatisk sökning" + +msgid "Automatically start timeshift after" +msgstr "Starta automatiskt timeshift efter" + +msgid "Automatically turn on external subtitles" +msgstr "Automatisk aktivering av externa undertexter" + +# +msgid "Available format variables" +msgstr "Tillgängliga format variabler" + +# +msgid "B" +msgstr "B" + +# +msgid "BER" +msgstr "BER" + +# +msgid "BER:" +msgstr "BER:" + +# +msgid "Back" +msgstr "Tillbaka" + +# +msgid "Background" +msgstr "Bakgrund" + +# +msgid "Background color" +msgstr "Bakgrundsfärg" + +msgid "Background delete option" +msgstr "Alternativ för radering i bakgrunden" + +msgid "Background delete speed" +msgstr "Hastighet för radering i bakgrunden" + +# +msgid "Backup completed." +msgstr "Backup klar." + +# +msgid "Backup failed." +msgstr "Backup misslyckades." + +# +msgid "Backup is running..." +msgstr "Backup pågår..." + +# +msgid "Backup system settings" +msgstr "Backup av systeminställningar" + +# +msgid "Band" +msgstr "Band" + +# +msgid "Bandwidth" +msgstr "Bandbredd" + +msgid "Basque" +msgstr "Baskiska" + +# +msgid "Begin time" +msgstr "Starttid" + +msgid "Behavior of 'pause and ok' when paused" +msgstr "" + +# +msgid "Behavior of 0 key in PiP-mode" +msgstr "Beteende av '0' knappen i BiB-läge" + +# +msgid "Behavior when a movie is started" +msgstr "Beteende när en film startas" + +# +msgid "Behavior when a movie is stopped" +msgstr "Beteende när en film stoppas" + +# +msgid "Behavior when a movie reaches the end" +msgstr "Beteende när en film slutar" + +msgid "Big PiP" +msgstr "" + +# +msgid "Bitrate:" +msgstr "Bitrate:" + +msgid "Black screen" +msgstr "Svart skärm" + +msgid "Black screen till locked" +msgstr "Svart skärm tills låsning" + +# +msgid "Block noise reduction" +msgstr "Blockera brusreducering" + +# +msgid "Blue boost" +msgstr "Blå förstärkning" + +# +msgid "Bookmarks" +msgstr "Bokmärken" + +# +msgid "Brightness" +msgstr "Ljusstyrka" + +msgid "Bulgarian" +msgstr "Bulgariska" + +msgid "Burn DVD" +msgstr "Bränn DVD" + +# +#, python-format +msgid "Burn audio track (%s)" +msgstr "Bränn ljudspår (%s)" + +# +msgid "Burn existing image to DVD" +msgstr "Bränn existerande image till DVD" + +msgid "Burn to DVD" +msgstr "Bränn till DVD" + +# +msgid "Bus: " +msgstr "Bus: " + +msgid "By default, SNR will be shown in dB (when supported by the tuner). This setting forces SNR to be shown as a percentage instead." +msgstr "Som standard, kommer SNR att visas i dB (om det stöds av tunern). Denna inställning tvingar SNR att visas som en procentsats i stället." + +# +msgid "C" +msgstr "C" + +# +msgid "C-Band" +msgstr "C-Band" + +msgid "CH" +msgstr "" + +# +msgid "CI assignment" +msgstr "CI tilldelning" + +# +msgid "CVBS" +msgstr "CVBS" + +# +msgid "Cable" +msgstr "Kabel" + +msgid "Cable Scan" +msgstr "Kabelskanning" + +# +msgid "Cache thumbnails" +msgstr "Buffra miniatyrer" + +msgid "Calculate" +msgstr "Beräkna" + +msgid "Calculate all positions" +msgstr "Beräkna alla positioner" + +msgid "Calculation complete" +msgstr "Beräkning klar" + +msgid "Calibrate" +msgstr "Kalibrera" + +msgid "Can be used for different fps between external subtitles and video." +msgstr "Kan användas för olika fps mellan externa undertexter och video." + +# +msgid "Cancel" +msgstr "Avbryt" + +msgid "Cannot determine" +msgstr "Kan inte avgöra" + +msgid "Cannot find any signal ..., aborting !" +msgstr "Hittar ingen signal ..., avbryter!" + +msgid "Cannot move files on a different disk or system to the trash can" +msgstr "Kan inte flytta filer på en annan disk eller system till papperskorgen" + +msgid "Cannot move to trash can" +msgstr "Kan inte flytta till papperskorgen" + +# +msgid "Capacity: " +msgstr "Kapacitet: " + +# +msgid "Card" +msgstr "Kort" + +msgid "Cascade PiP" +msgstr "" + +msgid "Center DVB subtitles" +msgstr "Centrera DVB-undertexter" + +msgid "Center time-labels and remove date" +msgstr "Centrera tidsmärken och ta bort datum" + +# +msgid "Change bouquets in quickzap" +msgstr "Byt favoritlista med snabbzap" + +msgid "Change pin code" +msgstr "Ändra pin kod" + +# +msgid "Change recording (duration)" +msgstr "Ändra inspelning (längd)" + +# +msgid "Change recording (endtime)" +msgstr "Ändra inspelning (sluttid)" + +msgid "Change repeat and delay settings?" +msgstr "Ändra upprepnings och fördröjningsinställningarna?" + +msgid "Change service PIN" +msgstr "Ändra kanal PIN" + +msgid "Change service PINs" +msgstr "Ändra kanal PINs" + +msgid "Change setup PIN" +msgstr "Ändra installations PIN" + +# +msgid "Change step size" +msgstr "Ändra stegstorlek" + +msgid "Change timer" +msgstr "" + +msgid "Changelog" +msgstr "Ändringslog" + +# +msgid "Channel" +msgstr "Kanal" + +# +msgid "Channel list type" +msgstr "Typ av kanallista" + +# +msgid "Channel not in services list" +msgstr "Kanalen finns ej i kanallistan" + +# +msgid "Channel selection" +msgstr "Kanallista" + +# +msgid "Channel:" +msgstr "Kanal:" + +# +msgid "Channellist menu" +msgstr "Kanallista meny" + +# +msgid "Chap." +msgstr "Kap." + +# +msgid "Chapter" +msgstr "Kapitel" + +# +msgid "Chapter:" +msgstr "Kapitel:" + +# +msgid "Check" +msgstr "Kontrollera" + +msgid "Check the internet connection" +msgstr "Kontrollera internetanslutningen" + +msgid "Check the internet connection again" +msgstr "Kontrollera internetanslutningen igen" + +# +msgid "Checking filesystem..." +msgstr "Kontrollerar filsystem..." + +msgid "Checking the internet connection" +msgstr "Kontrollerar Internetanslutningen" + +#, python-format +msgid "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" +msgstr "" +"Kontrollerar tuner %d\n" +"DiSEqC port%s för %s" + +msgid "Children/Youth" +msgstr "barn/ungdom" + +msgid "Choose which tuner to configure." +msgstr "Välj vilken tuner som skall konfigureras." + +# +msgid "Circular left" +msgstr "Cirkulär vänster" + +# +msgid "Circular right" +msgstr "Cirkulär höger" + +# +msgid "Cleanup" +msgstr "Rensa" + +msgid "Clear" +msgstr "Rensa" + +# +msgid "Clear before scan" +msgstr "Rensa före sökning" + +msgid "Clear fixed" +msgstr "Rensning klar" + +# +msgid "Clear log" +msgstr "Rensa logg" + +# +msgid "Clear playlist" +msgstr "Rensa spellista" + +# +msgid "Close" +msgstr "Stäng" + +msgid "Close PiP on exit" +msgstr "Avsluta BiB med exitknappen" + +# +msgid "Close title selection" +msgstr "Stäng titelval" + +msgid "Code rate HP" +msgstr "Kodhastighet HP" + +msgid "Code rate LP" +msgstr "Kodhastighet LP" + +# +msgid "Coderate HP" +msgstr "Kodhastighet HP" + +# +msgid "Coderate LP" +msgstr "Kodhastighet LP" + +# +msgid "Collection name" +msgstr "Samlingsnamn" + +# +msgid "Collection settings" +msgstr "Samlingsinställning" + +# +msgid "Color format" +msgstr "Färgformat" + +# +msgid "Command execution..." +msgstr "Kommando exekvering..." + +# +msgid "Command order" +msgstr "Kommandoordning" + +# +msgid "Common Interface" +msgstr "Common Interface" + +# +msgid "Common Interface assignment" +msgstr "Common Interface" + +# +msgid "Communication" +msgstr "Kommunikation" + +# +msgid "Compact flash" +msgstr "Compact Flash" + +# +msgid "Complete" +msgstr "Komplett" + +# +msgid "Complex (allows mixing audio tracks and aspects)" +msgstr "Komplex (tillåter mixning av ljudspår och aspekt)" + +msgid "Composition of the recording filenames" +msgstr "Sammansättning av inspelningens filnamn" + +msgid "Configuration mode" +msgstr "Konfigurationsläge" + +#, python-format +msgid "Configuration mode: %s" +msgstr "Konfigurationsläge: %s" + +# +msgid "Configuration..." +msgstr "Konfiguration..." + +msgid "Configure an additional delay to improve external subtitle synchronisation." +msgstr "Konfigurera ytterligare en fördröjning för att förbättra extern undertextsynkronisering." + +msgid "Configure an additional delay to improve subtitle synchronisation." +msgstr "Konfigurera ytterligare en fördröjning för att förbättra undertextsynkronisering." + +msgid "Configure for how long the infobar will remain visible after activation." +msgstr "Konfigurera hur länge infobalken är synlig efter aktivering." + +msgid "Configure for how many minutes finished events should remain visible in the EPG. Useful when you need information about an event which has just finished, or has been delayed." +msgstr "Konfigurera hur många minuter avslutade program ska förbli synliga i EPG. Användbart när du behöver information om ett program som nyligen har avslutats eller har försenats." + +msgid "Configure how recording filenames are constructed." +msgstr "Konfigurera hur inspelningens filnamn är sammansatt." + +msgid "Configure how the fan should operate" +msgstr "" + +msgid "Configure if and how crypto icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how long the latest service in the PiP will be remembered." +msgstr "" + +msgid "Configure if and how service type icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how wide columns will be shown in the channel selection list." +msgstr "" + +msgid "Configure if service picons will be shown in the channel selection list." +msgstr "" + +# +msgid "Configure interface" +msgstr "Konfigurera kort" + +# +msgid "Configure nameservers" +msgstr "Konfigurera namnservers" + +msgid "Configure on which devices the background delete option should be used." +msgstr "Konfigurera på vilka enheter som bakgrundsradering ska användas." + +msgid "Configure remote control type" +msgstr "Konfigurera fjärrkontrolls typ" + +msgid "Configure the DiSEqC mode for this LNB." +msgstr "Konfigurera DiSEqC läget för denna LNB." + +# +msgid "Configure the IP address." +msgstr "Konfigurera IP-adressen." + +msgid "Configure the aspect ratio of the screen." +msgstr "Konfigurera bildförhållandet på skärmen." + +msgid "Configure the behavior of the 'pause and ok' key when movie playback is already paused." +msgstr "" + +# +msgid "Configure the behavior when movie playback is manually stopped." +msgstr "Konfigurera beteendet när en film stoppas." + +# +msgid "Configure the behavior when movie playback is started." +msgstr "Konfigurera beteendet när en film startas." + +msgid "Configure the behavior when reaching the end of a movie, during movie playback." +msgstr "Konfigurera beteendet när man når slutet av en film, under filmuppspelning." + +msgid "Configure the border width of the subtitles. The dark border makes the subtitles easier to read on a light background." +msgstr "Konfigurera undertextens kantbred . Den mörka gränsen gör att undertexter är lättare att läsa på en ljus bakgrund." + +msgid "Configure the brightness level of the front panel display during standby." +msgstr "Konfigurera ljusstyrkan på frontpanelens display i viloläge." + +msgid "Configure the brightness level of the front panel display." +msgstr "Konfigurera ljusstyrkan på frontpanelens display." + +msgid "Configure the color of the external subtitles, alternative (normal in white, italic in yellow, bold in cyan, underscore in green), white or yellow." +msgstr "Konfigurera färgen på externa undertexter, alternativ (normalt i vitt, italic i gult, bold i cyan, understreck i grönt), vit eller gul." + +msgid "Configure the color of the teletext subtitles." +msgstr "Konfigurera färgen på Teletextens undertexter." + +msgid "Configure the contrast level of the front panel display." +msgstr "Konfigurera kontrastnivån på frontpanelens display." + +msgid "Configure the cursor behaviour in the channel selection list. When opening the channel selection list you can keep on the current service or already select up/down and you are able to revert the B+/B- buttons." +msgstr "" + +msgid "Configure the duration in hours the receiver should go to standby when the receiver is not controlled." +msgstr "" + +msgid "Configure the duration in minutes for the screensaver." +msgstr "Konfigurera varaktighet i minuter för skärmsläckaren." + +msgid "Configure the duration in minutes for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +msgstr "" + +msgid "Configure the duration when the receiver should go to shut down in case the receiver is in standby mode." +msgstr "Konfigurera varaktigheten när mottagaren bör stängas av om mottagaren är i viloläge." + +msgid "Configure the first audio language (highest priority)." +msgstr "Konfigurera det första ljudspråket (högsta prioritet)." + +msgid "Configure the first subtitle language (highest priority)." +msgstr "Konfigurera det första undertextspråket (högsta prioritet)." + +msgid "Configure the font size of the subtitles." +msgstr "Konfigurera fontstorleken på undertexter." + +msgid "Configure the fourth audio language." +msgstr "Konfigurera det fjärde ljudspråket." + +# +msgid "Configure the fourth subtitle language." +msgstr "Konfigurera det fjärde undertextspråket." + +msgid "Configure the function of a long press on the power button." +msgstr "Konfigurera beteendet vid ett långt tryck på powerknappen." + +msgid "Configure the function of a short press on the power button." +msgstr "Konfigurera beteendet vid ett kort tryck på powerknappen." + +msgid "Configure the function of the '0' button do when PIP is active." +msgstr "Konfigurera beteendet på '0' knappen när BiB är aktiv." + +# +msgid "Configure the gateway." +msgstr "Konfigurera gatewayen." + +msgid "Configure the general audio delay of Dolby Digital sound tracks." +msgstr "Konfigurera den generella ljudfördröjningen av Dolby Digital ljudspår." + +msgid "Configure the general audio delay of stereo sound tracks." +msgstr "Konfigurera den generella ljudfördröjningen av stereo ljudspår." + +msgid "Configure the hard disk drive to go to standby after the specified idle time." +msgstr "Konfigurera när hårddisken ska gå i viloläge efter angiven tid." + +msgid "Configure the horizontal alignment of the subtitles." +msgstr "Konfigurera den horisontella placeringen av undertexter." + +msgid "Configure the initial fast forward speed. When you press the fast forward button, winding will start at this speed." +msgstr "Konfigurera den första framåthastigheten. När du trycker på framåtknappen, kommer snabbspolning starta vid denna hastighet." + +msgid "Configure the initial rewind speed. When you press the rewind button, winding will start at this speed." +msgstr "Konfigurera den första bakåthastigheten. När du trycker på bakåtknappen, kommer snabbspolning starta vid denna hastighet." + +msgid "Configure the latitude of your location." +msgstr "Konfigurera latituden för din plats." + +msgid "Configure the longitude of your location." +msgstr "Konfigurera longituden för din plats." + +msgid "Configure the minimum amount of disk space to be available for recordings. When the amount of space drops below this value, deleted items will be removed from the trash can." +msgstr "Konfigurera det minsta diskutrymmet som ska vara tillgänglig för inspelning. När utrymmet sjunker under detta värde, kommer raderade objekt tas bort från papperskorgen." + +# +msgid "Configure the nameserver (DNS)." +msgstr "Konfigurera namnservern (DNS)." + +# +msgid "Configure the netmask." +msgstr "Konfigurera nätmasken." + +msgid "Configure the number of days after which items are automaticaly removed from the trash can." +msgstr "Konfigurera det antal dagar objekt är kvar i papperskorgen innan de automatiskt tas bort." + +msgid "Configure the number of days old timers are kept before they are automatically removed from the timer list." +msgstr "Konfigurera det antal dagar gamla timers sparas innan de automatiskt tas bort från timerlistan." + +msgid "Configure the offline decoding delay in milliseconds. The configured delay is observed at each control word parity change." +msgstr "Konfigurera avkodningsfördröjningen i millisekunder (offline). Den konfigurerade fördröjningen iakttas vid varje paritetändring." + +msgid "Configure the possible fast forward speeds." +msgstr "Konfigurera hastigheterna för snabbspolning framåt." + +msgid "Configure the possible rewind speeds." +msgstr "Konfigurera hastigheterna för snabbspolning bakåt." + +msgid "Configure the primary EPG language." +msgstr "Konfigurera det primära EPG språket." + +msgid "Configure the refresh rate of the screen." +msgstr "Konfigurera uppdateringsfrekvensen på skärmen." + +msgid "Configure the screen resolution in PC output mode." +msgstr "Konfigurera skärmupplösningen i PC läge." + +msgid "Configure the second audio language." +msgstr "Konfigurera det andra ljudspråket." + +# +msgid "Configure the second subtitle language." +msgstr "Konfigurera det andra undertextspråket." + +msgid "Configure the secondary EPG language." +msgstr "Konfigurera det sekundära EPG språket." + +msgid "Configure the sharpness of the video scaling." +msgstr "Konfigurera skärpan i videoskalningen." + +msgid "Configure the skip time interval for the '1'/'3' buttons." +msgstr "Konfigurera hopptidsintervallet för '1'/'3' knapparna." + +msgid "Configure the skip time interval for the '4'/'6' buttons." +msgstr "Konfigurera hopptidsintervallet för '4'/'6' knapparna." + +msgid "Configure the skip time interval for the '7'/'9' buttons." +msgstr "Konfigurera hopptidsintervallet för '7'/'9' knapparna." + +# +msgid "Configure the slow motion speeds." +msgstr "Konfigurera hastigheterna för slowmotion." + +msgid "Configure the source of the frontend data as shown on the infobars. 'Settings' is as stored on the settings. 'Tuner' is as reported by the tuner." +msgstr "" + +msgid "Configure the speed of the background deletion process. Lower speed will consume less hard disk drive performance." +msgstr "Konfigurera borttagningshastigheten i bakgrunden. Lägre hastighet kommer att förbruka mindre hårddiskprestanda." + +msgid "Configure the speed of the fan" +msgstr "" + +msgid "Configure the subtitle delay when timing information is not available." +msgstr "Konfigurera fördröjningen på undertexten när timinginformation inte är tillgänglig." + +msgid "Configure the third audio language." +msgstr "Konfigurera det tredje ljudspråket." + +# +msgid "Configure the third subtitle language." +msgstr "Konfigurera det tredje undertextspråket." + +msgid "Configure the transparency of the OSD." +msgstr "Konfigurera transparensen för OSD." + +msgid "Configure the transparency of the black background of graphical DVB subtitles." +msgstr "Konfigurera transparensen på den svarta bakgrunden för grafiska DVB-undertexter." + +msgid "Configure the tuner mode." +msgstr "Konfigurera tunerläget." + +msgid "Configure the type of status indication icons shown in the movielist." +msgstr "Konfigurera den typ av ikon statusindikeringen visar i filmlistan." + +msgid "Configure the vertical position of the subtitles, measured from the bottom of the screen." +msgstr "Konfigurera den vertikala positionen för undertexterna, uppmätt från botten av skärmen." + +msgid "Configure the video output mode (or resolution)." +msgstr "Konfigurera videoutgångsläget eller upplösningen." + +msgid "Configure the way in which the receiver changes channels." +msgstr "Konfigurera hur mottagaren ändrar kanalerna." + +msgid "Configure where completed timers show up in the timer list." +msgstr "Konfigurera var färdiga timers visas i timerlistan." + +msgid "Configure whether (and for how long) a second infobar will be shown when OK is pressed twice. The second infobar contains additional information about the current channel." +msgstr "Konfigurera om (och hur länge) den andra infobalken visas när du trycker på OK två gånger. Den andra infobalken innehåller ytterligare information om den aktuella kanalen." + +msgid "Configure whether multi channel sound tracks should be downmixed to stereo." +msgstr "Konfigurera om flerkanals ljudspår ska mixas ned till stereo." + +msgid "Configure whether or not an icon should be shown when your motorized dish is moving." +msgstr "Vid aktiverad, kommer en ikon att visas när motoriserad parabol är i rörelse." + +msgid "Configure which access level to use for the configuration menu. Expert level gives access to all items." +msgstr "Konfigurera vilken behörighetsnivå som ska användas för konfigurationsmenyn. Expertnivå ger tillgång till alla objekt." + +msgid "Configure which color format should be used on the SCART output." +msgstr "Konfigurera vilket färgformat som ska användas på SCART-utgången." + +msgid "Configure which tuner for recordings will be preferred, when more than one tuner is available." +msgstr "" + +msgid "Configure which tuner type will be preferred, when the same service is available on different types of tuners." +msgstr "Konfigurera vilken tunertyp som kommer att föredras, när samma kanal är tillgänglig på olika typer av tuners." + +msgid "Configure which tuner will be preferred, when more than one tuner is available. If set to 'auto' the system will give priority to the tuner having the lowest number of channels/satellites." +msgstr "Konfigurera vilken tuner som kommer att föredras, då mer än en tuner är tillgänglig. Om du väljer 'auto' kommer systemet att prioritera tunern som har det lägsta antalet kanaler/satelliter." + +# +msgid "Configure your internal LAN" +msgstr "Konfigurera ditt interna LAN" + +# +msgid "Configure your network again" +msgstr "Konfigurera ditt nätverk igen" + +msgid "Configure your network settings, and press OK to start the scan" +msgstr "Konfigurera dina nätverksinställningar, och tryck OK för att starta skanningen" + +# +msgid "Configure your wireless LAN again" +msgstr "Konfigurera ditt trådlösa LAN igen" + +msgid "Configures which video output connector will be used." +msgstr "Konfigurera vilken videoutgång som ska användas." + +# +msgid "Configuring" +msgstr "Konfigurering" + +# +msgid "Conflicting timer" +msgstr "Timerkonflikt" + +# +msgid "Connect" +msgstr "Anslut" + +# +msgid "Connect to a wireless network" +msgstr "Anslut till ett Trådlöst nätverk" + +msgid "Connected satellites" +msgstr "" + +# +msgid "Connected to" +msgstr "Ansluten till" + +# +msgid "Connected!" +msgstr "Ansluten!" + +# +msgid "Constellation" +msgstr "Konstellation" + +# +msgid "Content does not fit on DVD!" +msgstr "Innehållet för stort för en DVD!" + +msgid "Continue" +msgstr "Forsätt" + +# +msgid "Continue in background" +msgstr "Fortsätta i bakgrund" + +# +msgid "Continue playback" +msgstr "Fortsätt spela" + +# +msgid "Continue playing" +msgstr "Fortsätt spela" + +msgid "Continues play (loop)" +msgstr "Kontinuerlig uppspelning (loop)" + +# +msgid "Contrast" +msgstr "Kontrast" + +msgid "Convert ext3 filesystem to ext4" +msgstr "Konvertera filsystemet ext3 till ext4" + +msgid "Convert ext3 to ext4" +msgstr "Konvertera ext3 till ext4" + +msgid "Converting ext3 to ext4..." +msgstr "Konverterar ext3 till ext4..." + +msgid "Copy" +msgstr "Kopiera" + +msgid "Could not connect to receiver .NFI image feed server:" +msgstr "Kunde inte ansluta till mottagare .NFI image feed Server:" + +msgid "Could not find installed channel list." +msgstr "Det gick inte att hitta den installerade kanallistan." + +# +msgid "Could not load medium! No disc inserted?" +msgstr "Kunde inte ladda media! Ingen disk istoppad?" + +# +msgid "Could not open Picture in Picture" +msgstr "Gick inte att öppna Bild i Bild" + +# +#, python-format +msgid "Could not record due to conflicting timer %s" +msgstr "Kunde inte spela in på grund av timerkonflikt med %s" + +#, python-format +msgid "Could not record due to invalid service %s" +msgstr "Kunde inte spela in på grund av ogiltig kanal %s" + +# +msgid "Create DVD-ISO" +msgstr "Skapa DVD-ISO" + +msgid "Create more detailed crash log" +msgstr "Skapa en mer detaljerad krasch-logg" + +# +#, python-format +msgid "Creating directory %s failed." +msgstr "Skapande av katalogen %s misslyckades." + +msgid "Creating filesystem" +msgstr "Skapar filsystem" + +msgid "Creating partition" +msgstr "Skapar partition" + +# +msgid "Croatian" +msgstr "Kroatiska" + +msgid "Current CEC address" +msgstr "Nuvarande CEC adress" + +msgid "Current device: " +msgstr "Nuvarande enhet: " + +msgid "Current event EPG" +msgstr "Nuvarande program EPG" + +#, python-format +msgid "Current mode: %s \n" +msgstr "" + +# +msgid "Current settings:" +msgstr "Nuvarande inställningar:" + +# +msgid "Current transponder" +msgstr "Nuvarande transponder" + +# +msgid "Current value: " +msgstr "Nuvarande värde: " + +# +msgid "Current version:" +msgstr "Nuvarande version:" + +msgid "Currently installed image" +msgstr "Nuvarande installerade image" + +msgid "Currently the commit log cannot be retrieved - please try later again" +msgstr "" + +# +msgid "Custom skip time for '1'/'3' buttons" +msgstr "Valfri hopptid för '1'/'3' knapparna" + +# +msgid "Custom skip time for '4'/'6' buttons" +msgstr "Valfri hopptid för '4'/'6' knapparna" + +# +msgid "Custom skip time for '7'/'9' buttons" +msgstr "Valfri hopptid för '7'/'9' knapparna" + +# +msgid "Customize" +msgstr "Anpassningar" + +msgid "Customize channel list cursor behavior" +msgstr "" + +# +msgid "Cut" +msgstr "Klipp" + +# +msgid "Cutlist editor..." +msgstr "Klipplist editor..." + +# +msgid "Czech" +msgstr "Tjeckiska" + +# +msgid "D" +msgstr "D" + +# +msgid "DHCP" +msgstr "DHCP" + +# +msgid "DMM advanced" +msgstr "avancerad" + +msgid "DMM normal" +msgstr "normal" + +# +msgid "DUAL LAYER DVD" +msgstr "DUAL LAYER DVD" + +msgid "DVB subtitle black transparency" +msgstr "Svart transparens för DVB-undertexter" + +msgid "DVB-C" +msgstr "DVB-C" + +msgid "DVB-C ANNEX C" +msgstr "DVB-C ANNEX C" + +# +msgid "DVB-S" +msgstr "DVB-S" + +# +msgid "DVB-S2" +msgstr "DVB-S2" + +msgid "DVB-T" +msgstr "DVB-T" + +msgid "DVB-T2" +msgstr "DVB-T2" + +msgid "DVD data format" +msgstr "DVD data format" + +# +msgid "DVD file browser" +msgstr "DVD Filutforskare" + +# +msgid "DVD media toolbox" +msgstr "DVD media verktyg" + +# +msgid "DVD player" +msgstr "DVD Spelare" + +msgid "DVD titlelist" +msgstr "DVD Titellista" + +# +msgid "Danish" +msgstr "Danska" + +# +msgid "Date" +msgstr "Datum" + +# +msgid "Date/time input" +msgstr "Tid/Datum inmatning" + +# +msgid "Deep standby" +msgstr "Stäng av" + +# +msgid "Default" +msgstr "Grund" + +# +msgid "Default movie location" +msgstr "Normal filmplats" + +# +msgid "Default settings" +msgstr "Grundinställningar" + +msgid "Delay before key repeat starts:" +msgstr "Fördröjning innan tangentrepetitionen startar:" + +msgid "Delay for external subtitles" +msgstr "Fördröjning av externa undertexter" + +# +msgid "Delete" +msgstr "Ta bort" + +# +msgid "Delete entry" +msgstr "Ta bort post" + +# +msgid "Delete failed!" +msgstr "Borttagning misslyckades!" + +# +msgid "Delete file" +msgstr "Ta bort fil" + +# +msgid "Delete playlist entry" +msgstr "Ta bort post i spellista" + +# +msgid "Delete saved playlist" +msgstr "Ta bort sparad spellista" + +msgid "Delete timer" +msgstr "" + +# +msgid "Delete..." +msgstr "Ta bort..." + +msgid "Deleted" +msgstr "Raderad" + +msgid "Deleted items" +msgstr "Raderade objekt" + +msgid "Depth" +msgstr "Djup" + +msgid "Descramble http streams" +msgstr "Avkoda http-strömmar" + +# +msgid "Description" +msgstr "Beskrivning" + +# +msgid "Deselect" +msgstr "Avmarkera" + +msgid "Details for plugin: " +msgstr "Detaljer för plugin: " + +msgid "Detected HDD:" +msgstr "Hittad HDD:" + +# +msgid "Detected NIMs:" +msgstr "Hittade tuners:" + +msgid "Devicename:" +msgstr "Enhetens namn:" + +msgid "Devide" +msgstr "" + +# +msgid "DiSEqC" +msgstr "DiSEqC" + +msgid "DiSEqC 1.0 command" +msgstr "" + +msgid "DiSEqC 1.1 command" +msgstr "" + +msgid "DiSEqC 1.1 repeats" +msgstr "" + +# +msgid "DiSEqC A/B" +msgstr "DiSEqC A/B" + +# +msgid "DiSEqC A/B/C/D" +msgstr "DiSEqC A/B/C/D" + +# +msgid "DiSEqC mode" +msgstr "DiSEqC läge" + +# +#, python-format +msgid "DiSEqC port %s: %s" +msgstr "DiSEqC port %s: %s" + +# +msgid "DiSEqC-tester settings" +msgstr "DiSEqC-Tester inställningar" + +# +msgid "Dialing:" +msgstr "Ringer upp:" + +# +msgid "Digital contour removal" +msgstr "Digital contour borttagning" + +# +msgid "Direct playback of linked titles without menu" +msgstr "Direkt playback av länkade titlar utan meny" + +msgid "Directory" +msgstr "Katalog" + +# +#, python-format +msgid "Directory %s does not exist." +msgstr "Bibliotek %s finns ej." + +#, python-format +msgid "Directory %s nonexistent." +msgstr "Katalogen %s existerar inte." + +# +msgid "Directory browser" +msgstr "Biblioteksbläddrare" + +#, python-format +msgid "Directory contains %d file(s) and %d sub-directories.\n" +msgstr "Katalogen innehåller %d fil(er) och %d underkataloger.\n" + +#, python-format +msgid "Directory contains %s and %s." +msgstr "Katalogen innehåller %s och %s." + +# +msgid "Disable" +msgstr "Avaktivera" + +# +msgid "Disable Picture in Picture" +msgstr "Avaktivera Bild i Bild" + +msgid "Disable background scanning" +msgstr "Avaktivera skanning i bakgrunden" + +msgid "Disable timer" +msgstr "" + +# +msgid "Disabled" +msgstr "Avaktivera" + +# +msgid "Disconnect" +msgstr "Bryt anslutning" + +msgid "Disk space to reserve for recordings (in GB)" +msgstr "Diskutrymme att reservera för inspelningar (i GB)" + +# +msgid "Display 16:9 content as" +msgstr "Visa 16:9 sändning som" + +# +msgid "Display 4:3 content as" +msgstr "Visa 4:3 sändning som" + +# +msgid "Display >16:9 content as" +msgstr "Visa 16:9 sändning som" + +# +msgid "Display and userinterface" +msgstr "Display och Användargränssnitt" + +msgid "Display message before playing next movie" +msgstr "Visa meddelande innan nästa film spelas" + +# +msgid "Display setup" +msgstr "Displayinställningar" + +# +msgid "Do not change" +msgstr "ändra inte" + +# +msgid "Do not record" +msgstr "spela inte in" + +# +msgid "Do nothing" +msgstr "Gör inget" + +# +msgid "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" +msgstr "" +"Vill du verkligen kontrollera filsystemet?\n" +"Detta kan ta lång tid!" + +msgid "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" +msgstr "" +"Vill du verkligen konvertera filsystemet?\n" +"Du kan inte gå tillbaka!" + +# +#, python-format +msgid "Do you really want to delete %s?" +msgstr "Vill du verkligen ta bort %s?" + +# +#, python-format +msgid "" +"Do you really want to download\n" +"the plugin \"%s\"?" +msgstr "" +"Vill du verkligen ladda ner\n" +"pluginet \"%s\"?" + +# +msgid "Do you really want to exit?" +msgstr "Vill du verkligen avsluta?" + +msgid "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" +msgstr "" +"Vill du verkligen initiera enheten?\n" +"All data på disken kommer att raderas!" + +# +#, python-format +msgid "" +"Do you really want to remove\n" +"the plugin \"%s\"?" +msgstr "" +"Vill du verkligen ta bort\n" +"pluginet \"%s\"?" + +# +#, python-format +msgid "Do you really want to remove directory %s from the disk?" +msgstr "Vill du verkligen ta bort bibliotek %s från disken?" + +# +#, python-format +msgid "Do you really want to remove your bookmark of %s?" +msgstr "Vill du verkligen ta bort bokmärket från %s?" + +msgid "Do you want this?" +msgstr "Vill du göra detta?" + +# +msgid "Do you want to burn this collection to DVD medium?" +msgstr "Vill du bränna denna samlig till ett DVD media?" + +# +msgid "Do you want to do a service scan?" +msgstr "Vill du söka efter kanaler?" + +# +msgid "Do you want to do another manual service scan?" +msgstr "Vill du göra en ny manuell kanalsökning?" + +#, python-format +msgid "Do you want to download the image to %s ?" +msgstr "Vill du ladda ner image till %s ?" + +# +msgid "Do you want to install a channel list?" +msgstr "Vill du installera en kanallista?" + +# +msgid "Do you want to install the package:\n" +msgstr "Vill du installera paketet:\n" + +# +msgid "Do you want to play DVD in drive?" +msgstr "Vill du spela upp DVD i spelaren?" + +# +msgid "Do you want to preview this DVD before burning?" +msgstr "Vill du förhandsvisa denna DVD innan bränning?" + +msgid "Do you want to reboot your receiver?" +msgstr "Vill du starta om din mottagare?" + +# +msgid "Do you want to remove the package:\n" +msgstr "Vill du avinstallera paketet:\n" + +# +msgid "Do you want to restore your settings?" +msgstr "Vill du återställa dina inställningar?" + +# +msgid "Do you want to resume this playback?" +msgstr "Vill du återuppta uppspelningen?" + +#, python-format +msgid "Do you want to update your receiver to %s?" +msgstr "Vill du uppdatera din mottagare till %s?" + +msgid "Do you want to update your receiver?" +msgstr "Vill du uppdatera din mottagare?" + +# +msgid "Do you want to upgrade the package:\n" +msgstr "Vill du uppgradera paketet:\n" + +# +msgid "Don't stop current event but disable coming events" +msgstr "Avsluta inte pågående program men avaktivera följande" + +# +#, python-format +msgid "Done - Installed, upgraded or removed %d package (%s)" +msgid_plural "Done - Installed, upgraded or removed %d packages (%s)" +msgstr[0] "Klar - installerat, uppgraderat eller avinstallerat %d paket (%s)" +msgstr[1] "Klar - installerat, uppgraderat eller avinstallerat %d paket (%s)" + +# +msgid "Download" +msgstr "Nedladdning" + +#, python-format +msgid "Download %s from server" +msgstr "Ladda %s från Server" + +# +msgid "Download .NFI-files for USB-flasher" +msgstr "Ladda ner .NFI filer för USB-flasher" + +# +msgid "Download plugins" +msgstr "Ladda ner plugins" + +# +msgid "Downloadable new plugins" +msgstr "Nerladdningsbara nya plugins" + +# +msgid "Downloadable plugins" +msgstr "Nerladdningsbara plugins" + +# +msgid "Downloading" +msgstr "Laddar ner" + +# +msgid "Downloading plugin information. Please wait..." +msgstr "Hämtar plugininformation. Var vänlig vänta..." + +# +msgid "Dutch" +msgstr "Holländska" + +# +msgid "Dynamic contrast" +msgstr "Dynamisk kontrast" + +# +msgid "E" +msgstr "E" + +msgid "EPG" +msgstr "EPG" + +msgid "EPG language selection 1" +msgstr "EPG språkval 1" + +msgid "EPG language selection 2" +msgstr "EPG språkval 2" + +# +msgid "EPG selection" +msgstr "EPG val" + +msgid "EPG settings" +msgstr "EPG-inställningar" + +#, python-format +msgid "ERROR - failed to scan (%s)!" +msgstr "FEL - misslyckades söka (%s)!" + +# +msgid "East" +msgstr "Öst" + +msgid "East limit set" +msgstr "Östra gränsen satt" + +# +msgid "Edit" +msgstr "Ändra" + +# +msgid "Edit DNS" +msgstr "Ändra DNS" + +# +msgid "Edit bouquets list" +msgstr "Ändra favoritlistor" + +# +msgid "Edit chapters of current title" +msgstr "Ändra kapitel i nuvarande titel" + +# +msgid "Edit services list" +msgstr "Ändra kanallista" + +# +msgid "Edit settings" +msgstr "Ändra inställningar" + +msgid "Edit the nameserver configuration of your receiver.\n" +msgstr "Ändra namnserverkonfigurationen för din mottagare.\n" + +msgid "Edit the network configuration of your receiver.\n" +msgstr "Ändra nätverkskonfigurationen för din mottagare.\n" + +msgid "Edit timer" +msgstr "" + +# +msgid "Edit title" +msgstr "Ändra titel" + +msgid "Edit upgrade source url." +msgstr "Ändra url till uppgraderingskälla." + +msgid "Education/Science/..." +msgstr "Utbildning/Vetenskap/..." + +# +msgid "Electronic Program Guide" +msgstr "Elektronisk Program Guide" + +# +msgid "Enable" +msgstr "Aktivera" + +msgid "Enable 'neutrino' style channel select controlling" +msgstr "" + +msgid "Enable 'neutrino' style zap controlling" +msgstr "" + +# +msgid "Enable 5V for active antenna" +msgstr "Aktivera 5V för aktiv antenn" + +msgid "Enable EIT EPG" +msgstr "Aktivera EIT EPG" + +msgid "Enable MHW EPG" +msgstr "Aktivera MHW EPG" + +msgid "Enable Netmed EPG" +msgstr "Aktivera Netmed EPG" + +msgid "Enable OK for channel selection" +msgstr "" + +msgid "Enable ViaSat EPG" +msgstr "Aktivera ViaSat EPG" + +msgid "Enable Virgin EPG" +msgstr "" + +msgid "Enable Wake On LAN" +msgstr "" + +msgid "Enable auto fast scan" +msgstr "" + +msgid "Enable bouquet selection in multi-EPG" +msgstr "Aktivera multi-EPG favoritlisteval." + +msgid "Enable freesat EPG" +msgstr "Aktivera freeSat EPG" + +# +msgid "Enable multiple bouquets" +msgstr "Aktivera flera favoritlistor" + +# +msgid "Enable parental control" +msgstr "Aktivera föräldrakontroll" + +msgid "Enable teletext caching" +msgstr "Aktivera teletext cache" + +msgid "Enable zapping with CH+/-, B+/-, P+/-" +msgstr "" + +# +msgid "Enabled" +msgstr "Aktiverad" + +# +msgid "Encrypted: " +msgstr "Krypterad: " + +# +msgid "Encryption" +msgstr "Kryptering" + +# +msgid "Encryption key" +msgstr "Krypteringsnyckel" + +# +msgid "Encryption key type" +msgstr "Krypterings Nyckelvariant" + +# +msgid "Encryption:" +msgstr "Kryptering:" + +# +msgid "End time" +msgstr "Sluttid" + +msgid "End time to ignore inactivity sleeptimer" +msgstr "Sluttid för att ignorera inaktiv insomningstimer" + +msgid "End time to ignore shutdown in standby" +msgstr "" + +# +msgid "English" +msgstr "Engelska" + +msgid "Enigma2 skin selector" +msgstr "enigma2 skin väljare" + +# +msgid "Enter main menu..." +msgstr "Gå till huvudmeny..." + +# +msgid "Enter pin code" +msgstr "Ange pin kod" + +msgid "Enter the service pin" +msgstr "Ange kanal pin" + +msgid "Equal to" +msgstr "" + +# +msgid "Error" +msgstr "Fel" + +msgid "Error code" +msgstr "Felkod" + +# +msgid "Error executing plugin" +msgstr "Fel vid körning av plugin" + +# +#, python-format +msgid "" +"Error: %s\n" +"Retry?" +msgstr "" +"Fel: %s\n" +"Försöka igen?" + +# +msgid "Estonian" +msgstr "Estniska" + +msgid "Ethernet network interface" +msgstr "Ethernet nätverkskort" + +msgid "Event font size (relative to skin size)" +msgstr "Programmets fontstorlek (relativt till utseendets storlek)" + +# +msgid "Event view" +msgstr "Programöversikt" + +msgid "Event view menu" +msgstr "Meny för programöversikt" + +msgid "Everywhere" +msgstr "Överallt" + +msgid "Exceeds dual layer medium!" +msgstr "Överskrider dual layer media!" + +msgid "Execution finished!!" +msgstr "Exekvering färdig!!" + +msgid "Execution progress:" +msgstr "Exekvering pågår:" + +# +msgid "Exif" +msgstr "Exif" + +# +msgid "Exit" +msgstr "Avsluta" + +msgid "Exit EPG" +msgstr "Avsluta EPG" + +# +msgid "Exit editor" +msgstr "Avsluta editor" + +msgid "Exit input device selection." +msgstr "Avsluta val av inmatningsenhet." + +msgid "Exit media player?" +msgstr "Avsluta mediaspelare?" + +# +msgid "Exit mediaplayer" +msgstr "Avsluta mediaspelare" + +# +msgid "Exit movie list" +msgstr "Avsluta filmlista" + +# +msgid "Exit movie player?" +msgstr "Avsluta movieplayer?" + +# +msgid "Exit nameserver configuration" +msgstr "Avsluta namnserverkonfiguration" + +# +msgid "Exit network interface list" +msgstr "Avsluta nätverkskorts lista" + +# +msgid "Exit network wizard" +msgstr "Avsluta nätverksguiden" + +# +msgid "Exit the wizard" +msgstr "Avsluta guiden" + +# +msgid "Expert" +msgstr "Expert" + +msgid "Extend sleeptimer 15 minutes" +msgstr "Förläng insomningstimer 15 minuter" + +# +msgid "Extended Software" +msgstr "Utökad Mjukvaru" + +# +msgid "Extended Software Plugin" +msgstr "Utökad Mjukvaruplugin" + +# +msgid "Extended network setup plugin..." +msgstr "Utökad Nätverksinstallations plugin..." + +# +msgid "Extended setup..." +msgstr "Utökad installation..." + +# +msgid "Extensions" +msgstr "Utökningar" + +# +msgid "Extensions management" +msgstr "Utökningshanterare" + +msgid "External PiP" +msgstr "" + +msgid "External subtitle color" +msgstr "Extern undertextfärg" + +msgid "Extra motor options" +msgstr "" + +# +msgid "FEC" +msgstr "FEC" + +msgid "FTA" +msgstr "FTA" + +# +msgid "Factory reset" +msgstr "Fabriksåterställning" + +# +msgid "Failed" +msgstr "Misslyckades" + +msgid "Failed to write /tmp/positionersetup.log: " +msgstr "Misslyckades med att skriva /tmp/positionersetup.log:" + +# +#, python-format +msgid "Fan %d" +msgstr "Fläkt %d" + +# +#, python-format +msgid "Fan %d PWM" +msgstr "Fläkt %d PWM" + +# +#, python-format +msgid "Fan %d voltage" +msgstr "Fläkt %d Volt" + +msgid "Fan operation" +msgstr "" + +msgid "Fan speed" +msgstr "" + +# +msgid "Fast" +msgstr "Snabb" + +# +msgid "Fast DiSEqC" +msgstr "Snabb DiSEqC" + +msgid "Fast Scan" +msgstr "Snabbskanning" + +# +msgid "Fast epoch" +msgstr "Snabb epoch" + +# +msgid "Fast forward speeds" +msgstr "Hastigheter för snabbspolning framåt" + +# +msgid "Favourites" +msgstr "Favoriter" + +msgid "File appears to be busy.\n" +msgstr "Filen verkar vara låst.\n" + +# +msgid "Filesystem check" +msgstr "Filsystemskontroll" + +msgid "Final position at" +msgstr "Slutgiltig position vid" + +msgid "Final position at index" +msgstr "Slutgiltig position vid index" + +msgid "Fine movement" +msgstr "Finjustering" + +msgid "Finetune" +msgstr "Fininställning" + +# +msgid "Finished" +msgstr "Klart" + +# +msgid "Finished configuring your network" +msgstr "Klar med konfigureringen av ditt nätverk" + +# +msgid "Finished restarting your network" +msgstr "Klar med omstarten av ditt nätverk" + +# +msgid "Finnish" +msgstr "Finska" + +msgid "Fixed" +msgstr "Fixerad" + +# +msgid "Flash" +msgstr "Flash" + +# +msgid "Flashing failed" +msgstr "Flashning misslyckades" + +# +msgid "Following tasks will be done after you press OK!" +msgstr "Följande saker kommer utföras efter du tryckt på OK!" + +# +msgid "Format" +msgstr "Format" + +msgid "Forward volume keys" +msgstr "Volymknappar framåt" + +# +msgid "Frame size in full view" +msgstr "Ramstorlek i fullskärm" + +# +msgid "French" +msgstr "Franska" + +# +msgid "Frequency" +msgstr "Frekvens" + +# +msgid "Frequency bands" +msgstr "Frekvensband" + +# +msgid "Frequency scan step size(khz)" +msgstr "Frekvenssökningssteg (khz)" + +# +msgid "Frequency steps" +msgstr "Frekvenssteg" + +msgid "Frequency:" +msgstr "Frekvens:" + +# +msgid "Fri" +msgstr "Fre" + +# +msgid "Friday" +msgstr "Fredag" + +msgid "From :" +msgstr "Från :" + +# +#, python-format +msgid "Frontprocessor version: %d" +msgstr "Frontprocessor version: %d" + +msgid "Full transparency" +msgstr "Helt transparent" + +msgid "Fulview resulution" +msgstr "Fullbildsupplösning" + +msgid "Function of OK button" +msgstr "Funktion på OK knappen" + +msgid "Further Options" +msgstr "" + +# +msgid "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" +msgstr "" +"GUI måste startas om för nytt utseende\n" +"Vill du starta om GUI nu?" + +# +msgid "Gateway" +msgstr "Gateway" + +# +msgid "General AC3 delay" +msgstr "Generell AC3 fördröjning" + +# +msgid "General PCM delay" +msgstr "Generell PCM fördröjning" + +# +msgid "Genre" +msgstr "Genre" + +# +msgid "German" +msgstr "Tyska" + +msgid "Get latest experimental image" +msgstr "Tag senaste experimentella image" + +msgid "Get latest release image" +msgstr "Tag senaste release image" + +# +msgid "Getting plugin information. Please wait..." +msgstr "Hämtar plugininformation. Var vänlig vänta..." + +msgid "Go down the list" +msgstr "Gå ner i listan" + +msgid "Go to first movie or last item" +msgstr "Gå till första filmen eller sista objektet" + +msgid "Go to first movie or top of list" +msgstr "Gå till första filmen eller längst upp i listan" + +msgid "Go to first service" +msgstr "Gå till första tjänsten" + +msgid "Go to last service" +msgstr "Gå till senaste tjänsten" + +msgid "Go to next event" +msgstr "Gå till nästa program" + +msgid "Go to next page of service" +msgstr "Gå till nästa sidas tjänster" + +msgid "Go to previous event" +msgstr "Gå till föregående program" + +msgid "Go to previous page of service" +msgstr "Gå till föregående sidas tjänster" + +msgid "Go up the list" +msgstr "Gå upp i listan" + +msgid "Goto" +msgstr "Gå till" + +# +msgid "Goto 0" +msgstr "Gå till 0" + +msgid "Goto :" +msgstr "Gå till :" + +msgid "Goto X" +msgstr "Gå till X" + +msgid "Goto index position" +msgstr "Gå till indexpositionen" + +msgid "Goto next day of events" +msgstr "Gå till nästa dags program" + +msgid "Goto next page of events" +msgstr "Gå till nästa program sida" + +# +msgid "Goto position" +msgstr "Gå till position" + +msgid "Goto previous day of events" +msgstr "Gå till föregående dags program" + +msgid "Goto previous page of events" +msgstr "Gå till föregående program sida" + +msgid "Goto specific date/time" +msgstr "" + +msgid "GotoX calibration" +msgstr "Gå till X-kalibrering" + +msgid "GraphMultiEpg Settings" +msgstr "GraphMultiEpg inställningar" + +# +msgid "Graphical Multi EPG" +msgstr "Grafisk Multi EPG" + +# +msgid "Greek" +msgstr "Grekiska" + +# +msgid "Green boost" +msgstr "Grön förstärkning" + +msgid "Guard interval" +msgstr "Guard intervall" + +msgid "HD list" +msgstr "HD-lista" + +msgid "HDMI-CEC setup" +msgstr "" + +msgid "Handle standby from TV" +msgstr "Hantera standby från TV" + +msgid "Handle wakeup from TV" +msgstr "Hantera wakeup från TV" + +# +msgid "Hard disk" +msgstr "Hårddisk" + +# +msgid "Hard disk setup" +msgstr "Inställningar för hårddisk" + +# +msgid "Hard disk standby after" +msgstr "Viloläge för hårddisk efter" + +# +msgid "Harddisk" +msgstr "Hårddisk" + +msgid "Hardware: " +msgstr "Hårdvara:" + +msgid "Hebrew" +msgstr "Hebreiska" + +msgid "Helps setting up your dish" +msgstr "Hjälper dig att ställa in parabolen" + +msgid "Hidden network" +msgstr "Dolt nätverk" + +msgid "Hide CI messages" +msgstr "Dölj CI-meddelanden" + +msgid "Hide channel list in radio mode" +msgstr "Dölj kanallistan i radioläge" + +msgid "Hide known extensions" +msgstr "Dölj kända utökningar" + +msgid "Hide number markers" +msgstr "Dölj nummermarkörer" + +# +msgid "Hide player" +msgstr "Dölj spelare" + +msgid "Hide zap errors" +msgstr "Dölj ZAP-felmeddelanden" + +msgid "Hierarchy info" +msgstr "Hierarkisk info" + +msgid "Hierarchy information" +msgstr "Hierarkisk information" + +# +msgid "High bitrate support" +msgstr "Hög bitrate stöd" + +msgid "Hold screen" +msgstr "Stoppa bild" + +msgid "Hold till locked" +msgstr "Håll tills låst" + +msgid "Home" +msgstr "Hem" + +msgid "Horizontal" +msgstr "Horisontal" + +msgid "Horizontal turning speed" +msgstr "Horisontell svänghastighet" + +# +msgid "How many minutes do you want to record?" +msgstr "Hur många minuter vill du spela in?" + +# +msgid "Hue" +msgstr "Färgton" + +# +msgid "Hungarian" +msgstr "Ungerska" + +# +msgid "IP address" +msgstr "IP adress" + +# +msgid "ISO file is too large for this filesystem!" +msgstr "ISO-fil är för stor för använt filsystem!" + +# +msgid "ISO path" +msgstr "ISO sökväg" + +msgid "Icons" +msgstr "Ikoner" + +# +msgid "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." +msgstr "" +"Om du ser detta, är det något fel med\n" +"din scartanslutning. Tryck OK för återgå." + +msgid "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." +msgstr "" +"Om din TV har ljusstyrke eller kontrastförbättrare, stänga av den. Om det finns något som heter \"dynamic\", använd standard. Justera ljusstyrkan till en inställning som du tycker är bra. Använd så lite kontrast som möjligt.\n" +"Sätt ljusstyrkan till så låg som möjligt, men säkerställ att de två lägsta nivåerna av grå är urskiljningsbara.\n" +"Ta inte hänsyn till de ljusa nivåerna nu. De kommer justeras i nästa steg.\n" +"När du är nöjd med resultatet, tryck OK." + +msgid "Image: " +msgstr "Image: " + +# +msgid "Immediate shutdown" +msgstr "Omedelbar avstängning" + +# +msgid "In order to record a timer, the TV was switched to the recording service!\n" +msgstr "För att göra en timerinspelning, växlade TV:n till inspelande kanal!\n" + +# +msgid "In progress" +msgstr "Liten tidslinje" + +msgid "Inactivity Sleeptimer" +msgstr "Inaktiv Insomningstimer" + +msgid "Include AIT in http streams" +msgstr "Inkludera AIT i http-strömmar" + +msgid "Include ECM in http streams" +msgstr "Inkludera ECM i http-strömmar" + +msgid "Include EIT in http streams" +msgstr "Inkludera EIT i http-strömmar" + +msgid "Incorrect type service for PiP!" +msgstr "" + +# +msgid "Increased voltage" +msgstr "Ökad spänning" + +# +msgid "Index" +msgstr "Index" + +msgid "Index allocated:" +msgstr "Index tilldelas:" + +# +msgid "Info" +msgstr "Info" + +# +msgid "Info bar" +msgstr "Infobalk" + +# +msgid "Info bar timeout" +msgstr "Infobalk timeout" + +msgid "Infobar frontend data source" +msgstr "" + +# +msgid "Information" +msgstr "Information" + +# +msgid "Init" +msgstr "Initiera" + +msgid "Initial fast forward speed" +msgstr "Initial snabbspolningshastighet framåt" + +# +msgid "Initial location in new timers" +msgstr "Initial filmplats för nya timers" + +msgid "Initial lock ratio" +msgstr "Initial låst ratio" + +msgid "Initial rewind speed" +msgstr "Initial snabbspolningshastighet bakåt" + +msgid "Initial signal quality" +msgstr "Initial signalkvalitet" + +msgid "Initial signal quality:" +msgstr "Initial signalkvalitet:" + +# +msgid "Initialization" +msgstr "Initieringen" + +# +msgid "Initialize" +msgstr "Initiera" + +msgid "Initializing storage device..." +msgstr "Initierar lagringsenhet..." + +# +msgid "Input" +msgstr "Ingång" + +msgid "Input device setup" +msgstr "Inställningar för inmatningsenhet" + +msgid "Input devices" +msgstr "Inmatningsenheter" + +# +msgid "Install" +msgstr "Installera" + +# +msgid "Install a new image with a USB stick" +msgstr "Installera ny image med hjälp av en USB-sticka" + +# +msgid "Install a new image with your web browser" +msgstr "Installera ny image med hjälp av din webläsare" + +# +msgid "Install channel list" +msgstr "Installera kanallistan" + +msgid "Install extensions" +msgstr "" + +# +msgid "Install extensions." +msgstr "Installera utökningar." + +# +msgid "Install local extension" +msgstr "Installera lokala utökningar" + +msgid "Install picons on" +msgstr "Installera picons på" + +# +msgid "Install softcam" +msgstr "Installera softcam" + +msgid "Installation has completed." +msgstr "Installationen är klar." + +# +msgid "Installation or removal has completed." +msgstr "Installation eller borttagning klar." + +# +msgid "Installing" +msgstr "Installerar" + +# +msgid "Installing software..." +msgstr "Installerar mjukvara..." + +# +msgid "Instant recording location" +msgstr "Direktinspelningens plats" + +# +msgid "Instant recording..." +msgstr "Direktinspelning..." + +# +msgid "Interface: " +msgstr "Gränssnitt: " + +# +msgid "Intermediate" +msgstr "Normal" + +# +msgid "Internal flash" +msgstr "Intern Flash" + +msgid "Internal hdd only" +msgstr "Intern HDD bara" + +msgid "Interval between keys when repeating:" +msgstr "Intervall mellan tangenttryckningar vid upprepning:" + +# +#, python-format +msgid "Invalid directory selected: %s" +msgstr "Ogiltigt bibliotek valt: %s" + +# +msgid "Invalid location" +msgstr "Ogiltig sökväg" + +msgid "Invalid transponder data" +msgstr "" + +# +msgid "Inversion" +msgstr "Inversion" + +msgid "Invert" +msgstr "Invertera" + +# +msgid "Ipkg" +msgstr "Ipkg" + +msgid "Is this setting ok?" +msgstr "Använd dessa inställningar?" + +# +msgid "Is this video mode ok?" +msgstr "Är detta videoläge ok?" + +# +msgid "Italian" +msgstr "Italienska" + +msgid "Items per page " +msgstr "Kanaler per sida vid Normalt läge (PiG)" + +msgid "Items per page for list screen" +msgstr "Kanaler per sida vid Listläge" + +# +msgid "Job overview" +msgstr "Arbets Vy" + +msgid "Jump to beginning of list" +msgstr "Gå till början av listan" + +# +msgid "Jump to end of list" +msgstr "Gå till slutet av listan" + +# +msgid "Jump to next marked position" +msgstr "Gå till nästa markerade position" + +# +msgid "Jump to previous marked position" +msgstr "Gå till föregående markerade position" + +# +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect) +msgid "Just scale" +msgstr "Bara skala" + +msgid "Keep service" +msgstr "" + +msgid "Kernel version: " +msgstr "Kernel Version: " + +# +msgid "Keyboard" +msgstr "Tangentbord" + +# +msgid "Keyboard map" +msgstr "Tangentbordslayout" + +# +msgid "Keyboard setup" +msgstr "Tangentbordsinställning" + +# +msgid "LAN adapter" +msgstr "LAN adapter" + +msgid "LAN connection" +msgstr "LAN-anslutning" + +# +msgid "LNB" +msgstr "LNB" + +# +msgid "Language" +msgstr "Språk" + +# +msgid "Language selection" +msgstr "Välj språk" + +# +msgid "Last config" +msgstr "Senaste konfiguration" + +# +msgid "Last speed" +msgstr "Föregående hastighet" + +msgid "Last upgrade: " +msgstr "Senaste uppgradering:" + +msgid "Latest Commits" +msgstr "" + +# +msgid "Latitude" +msgstr "Latitud" + +# +msgid "Latvian" +msgstr "Lettiska" + +# +msgid "Leave DVD player?" +msgstr "Avsluta DVD Spelare?" + +# +msgid "Left" +msgstr "Vänster" + +msgid "Left from servicename" +msgstr "Vänster om kanalnamn" + +msgid "Leisure hobbies" +msgstr "Fritidsintressen" + +# +#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term. +msgid "Letterbox" +msgstr "Letterbox" + +msgid "Letterbox zoom" +msgstr "Letterbox zoom" + +# +msgid "Limit character set for recording filenames" +msgstr "Begränsad teckenuppsättning för inspelningens filnamn" + +# +msgid "Limit east" +msgstr "Östlig gräns" + +msgid "Limit the characters that can be used in recording filenames to (7 bit) ascii. This ensures compatibility with operating systems or file systems with limited character sets." +msgstr "Begränsa de tecken som kan användas i inspelningens filnamn till (7 bitar) ascii. Detta garanterar kompatibilitet med operativsystem eller filsystem med begränsade teckenuppsättningar." + +# +msgid "Limit west" +msgstr "Västlig gräns" + +msgid "Limits cancelled" +msgstr "Gränser avaktiverade" + +msgid "Limits enabled" +msgstr "Gränser aktiverade" + +# +msgid "Limits off" +msgstr "Gränser av" + +# +msgid "Limits on" +msgstr "Gränser på" + +# +msgid "Link quality:" +msgstr "Länkkvalitet:" + +# +msgid "Link:" +msgstr "Länk:" + +# +msgid "Linked titles with a DVD menu" +msgstr "Länkade titlar med en DVD meny" + +# +msgid "List EPG functions..." +msgstr "Lista över EPG funktioner..." + +msgid "List available networks" +msgstr "Lista tillgängliga nätverk" + +msgid "List mode" +msgstr "Listläge" + +# +msgid "List of storage devices" +msgstr "Lista på lagringsenheter" + +msgid "List type" +msgstr "Listtyp" + +#, python-format +msgid "List version %d, found %d channel" +msgid_plural "List version %d, found %d channels" +msgstr[0] "Listversion %d, hittade %d kanal" +msgstr[1] "Listversion %d, hittade %d kanaler" + +# +msgid "Listen to the radio..." +msgstr "Lyssna på radio..." + +msgid "Lists reloaded!" +msgstr "" + +# +msgid "Lithuanian" +msgstr "Litauiska" + +# +msgid "Load" +msgstr "Ladda" + +msgid "Load Length of Movies in Movielist" +msgstr "Ladda längd på filmer i filmlistan." + +# +msgid "Load length of movies in movie list" +msgstr "Ladda filmens längd i Filmlistan" + +# +msgid "Load playlist" +msgstr "Ladda spellista" + +# +msgid "Local network" +msgstr "Lokalt Nätverk" + +# +msgid "Location" +msgstr "Sökväg" + +# +msgid "Location for instant recordings" +msgstr "Plats för direktinspelningar" + +msgid "Lock ratio" +msgstr "Lås ratio" + +# +msgid "Lock:" +msgstr "Lås:" + +# +msgid "Log results to harddisk" +msgstr "Logga resultatet till hårddisk" + +msgid "Long filenames" +msgstr "Långa filnamn" + +# +msgid "Long key press" +msgstr "Lång knapptryckning" + +# +msgid "Longitude" +msgstr "Longitud" + +msgid "Loop through to" +msgstr "" + +msgid "Luxembourgish" +msgstr "Luxemburgiska" + +# +msgid "MMC card" +msgstr "MMC kort" + +msgid "MORE" +msgstr "MER" + +# +msgid "Main menu" +msgstr "Huvudmeny" + +msgid "Maintain old EPG data for" +msgstr "Behåll gammal EPG-data i" + +msgid "Make this mark an 'in' point" +msgstr "Gör denna markör till en 'in' punkt" + +msgid "Make this mark an 'out' point" +msgstr "Gör denna markör till en 'ut' punkt" + +# +msgid "Make this mark just a mark" +msgstr "Behåll denna markör som vanlig markör" + +# +msgid "Manage extensions" +msgstr "Hantera utökningar" + +# +msgid "Manage your receiver's software" +msgstr "Hantera din mottagares mjukvara" + +msgid "Manual" +msgstr "" + +# +msgid "Manual Scan" +msgstr "Manuell sökning" + +msgid "Manual configuration" +msgstr "Manuell konfiguration" + +# +msgid "Manual scan" +msgstr "Manuell sökning" + +# +msgid "Manual transponder" +msgstr "Manuell transponder" + +# +msgid "Manufacturer" +msgstr "Tillverkare" + +# +msgid "Margin after recording (minutes)" +msgstr "Marginal efter inspelning (i minuter)" + +# +msgid "Margin before recording (minutes)" +msgstr "Marginal innan inspelning (i minuter)" + +msgid "Max memory positions" +msgstr "" + +# +msgid "Max. bitrate: " +msgstr "Max. Bitrate: " + +# +msgid "Media player" +msgstr "Mediaspelare" + +# +msgid "Media scanner" +msgstr "Mediaspelare" + +# +msgid "Medium is not a writeable DVD!" +msgstr "Media är inte en skrivbar DVD!" + +# +msgid "Medium is not empty!" +msgstr "Media är inte tomt!" + +msgid "Memory" +msgstr "Minne" + +msgid "Memory index" +msgstr "Minnesindex" + +# +msgid "Menu" +msgstr "Meny" + +# +msgid "Message" +msgstr "Meddelande" + +# +msgid "Message..." +msgstr "Meddelande..." + +#, python-format +msgid "Minimum age %d years" +msgstr "Minimum ålder %d år" + +msgid "Minimum send interval" +msgstr "Minsta sändintervall" + +msgid "Missing " +msgstr "Saknad" + +# +msgctxt "Satellite configuration mode" +msgid "Mode" +msgstr "Läge" + +# +msgctxt "Video output mode" +msgid "Mode" +msgstr "Läge" + +# +msgid "Model: " +msgstr "Modell: " + +# +msgid "Modulation" +msgstr "Modulering" + +# +msgid "Modulator" +msgstr "Modulator" + +# +msgid "Mon" +msgstr "Mån" + +# +msgid "Mon-Fri" +msgstr "Mån-Fre" + +# +msgid "Monday" +msgstr "Måndag" + +# +msgid "Mosquito noise reduction" +msgstr "Mosquito brus minskning" + +msgid "Mount" +msgstr "Montera" + +msgid "Move" +msgstr "Flytta" + +# +msgid "Move PiP to main picture" +msgstr "Flytta BiB till huvudbild" + +# +msgid "Move Picture in Picture" +msgstr "Flytta Bild i Bild" + +# +msgid "Move east" +msgstr "Flytta öst" + +msgid "Move to other directory" +msgstr "Flytta till en annan katalog" + +msgid "Move to position X" +msgstr "Flytta till position X" + +# +msgid "Move west" +msgstr "Flytta väst" + +msgid "Moved to position 0" +msgstr "Flyttade till position 0" + +msgid "Moved to position at index" +msgstr "Flyttade till position vid index" + +msgid "Movement" +msgstr "Rörelse" + +msgid "Movie List Configuration" +msgstr "Konfiguration av filmlista" + +msgid "Movie Selection" +msgstr "Filmval" + +msgid "Movie list configuration" +msgstr "Konfiguration av filmlista" + +# +msgid "Movie location" +msgstr "Filmplats" + +msgid "Movie selection" +msgstr "Filmval" + +msgid "Movie/Drama" +msgstr "film/drama" + +# +msgid "Movielist menu" +msgstr "Meny för filmlista" + +msgid "Moving" +msgstr "Flyttar" + +msgid "Moving east ..." +msgstr "Flyttar öst..." + +msgid "Moving to position" +msgstr "Flyttar till position" + +msgid "Moving west ..." +msgstr "Flyttar väst..." + +# +msgid "Multi EPG" +msgstr "Multi EPG" + +msgid "Multi-EPG bouquet selection" +msgstr "Multi-EPG favoritlisteval" + +# +msgid "Multimedia" +msgstr "Multimedia" + +# +msgid "Multiple service support" +msgstr "Multipla kanaler stöds" + +msgid "Multiplex" +msgstr "Multiplex" + +# +msgid "Multisat" +msgstr "Multisat" + +msgid "Multisat all select" +msgstr "" + +msgid "Music/Ballet/Dance" +msgstr "Musik/Ballett/Dans" + +# +msgid "Mute" +msgstr "Ljud av" + +msgid "N/A" +msgstr "N/A" + +msgid "NEXT" +msgstr "NÄSTA" + +# +msgid "NFI image flashing" +msgstr "NFI image Flashning" + +# +msgid "NFI image flashing completed. Press Yellow to Reboot!" +msgstr "NFI image flashning klar. Tryck Gul för omstart!" + +msgid "NIM" +msgstr "NIM" + +msgid "NOW" +msgstr "NU" + +# +msgid "NTSC" +msgstr "NTSC" + +# +msgid "Name" +msgstr "Namn" + +# +msgid "Nameserver" +msgstr "Namnserver" + +# +#, python-format +msgid "Nameserver %d" +msgstr "Namnserver %d" + +# +msgid "Nameserver settings" +msgstr "Namnserverinställningar" + +# +msgid "Nameserver setup" +msgstr "Namnserverinstallation" + +msgid "Namespace" +msgstr "Namnrymd" + +# +msgid "Netmask" +msgstr "Nätmask" + +# +msgid "Network" +msgstr "Nätverk" + +msgid "Network ID" +msgstr "Nätverks-ID" + +# +msgid "Network configuration..." +msgstr "Nätverkskonfiguration..." + +# +msgid "Network mount" +msgstr "Nätverksmonteringar" + +# +#, python-format +msgid "Network mount %s" +msgstr "Nätverksmonteringar %s" + +msgid "Network name (SSID)" +msgstr "Nätverksnamn (SSID)" + +# +msgid "Network scan" +msgstr "Sök nätverk" + +# +msgid "Network setup" +msgstr "Nätverksinställningar" + +# +msgid "Network test" +msgstr "Nätverktest" + +# +msgid "Network test..." +msgstr "Nätverktest..." + +msgid "Network test: " +msgstr "Nätverkstest: " + +# +msgid "Network wizard" +msgstr "Nätverksguide" + +# +msgid "Network:" +msgstr "Nätverk:" + +# +msgid "New" +msgstr "Ny" + +msgid "New PIN" +msgstr "Ny PIN" + +# +msgid "New version:" +msgstr "Ny version:" + +msgid "News Current Affairs" +msgstr "Nyheter/aktuella frågor" + +msgctxt "button label, 'next screen'" +msgid "Next" +msgstr "Nästa" + +msgctxt "now/next: 'next' event label" +msgid "Next" +msgstr "Nästa" + +# +msgid "No" +msgstr "Nej" + +# +msgid "No (supported) DVDROM found!" +msgstr "Ingen (supporterad) DVDROM hittad!" + +# +msgid "No Connection" +msgstr "Ingen anslutning" + +msgid "No HDD found or HDD not initialized!" +msgstr "Ingen HDD hittad eller HDD inte initierad!" + +# +msgid "No backup needed" +msgstr "Ingen backup behövs" + +msgid "No cable tuner found!" +msgstr "Ingen kabel-tuner hittad!" + +# +msgid "" +"No data on transponder!\n" +"(Timeout reading PAT)" +msgstr "" +"Ingen data på transponder!\n" +"(Timeout vid läsning av PAT)" + +msgid "No delay" +msgstr "Ingen fördröjning" + +# +msgid "No description available." +msgstr "Ingen beskrivning tillgänglig." + +# +msgid "No details for this image file" +msgstr "Inga detaljer för denna imagefil" + +# +msgid "No displayable files on this medium found!" +msgstr "Inga visningsbara filer hittade på detta media!" + +# +msgid "No event info found, recording indefinitely." +msgstr "Ingen programinfo hittades, inspelning oändlig." + +msgid "No fast winding possible yet.. but you can use the number buttons to skip forward/backward!" +msgstr "Ingen snabbspolning tillgänglig än... men du kan använda nummerknapparna för att hoppa framåt/bakåt!" + +msgid "No free index available" +msgstr "Ingen ledig index är tillgänglig" + +# +msgid "No free tuner!" +msgstr "Ingen ledig tuner!" + +# +msgid "No network connection available." +msgstr "Ingen nätverksanslutning tillgänglig." + +# +msgid "No networks found" +msgstr "Inget nätverk hittat" + +msgid "No new plugins found" +msgstr "Inga nya plugins hittade" + +# +msgid "No positioner capable frontend found." +msgstr "Ingen motorkapabel frontend hittad." + +msgid "No satellites configured. Plese check your tuner setup." +msgstr "" + +msgid "No service" +msgstr "Ingen kanal" + +# +msgid "No services/providers selected" +msgstr "Ingen kanal/operatör vald" + +# +msgid "No standby" +msgstr "Inget viloläge" + +msgid "No suitable sat tuner found!" +msgstr "Ingen passande sat tuner hittad!" + +# +msgid "No tags are set on these movies." +msgstr "Ingen märkning är gjord på dessa filmer." + +# +msgid "No timeout" +msgstr "Ingen timeout" + +# +msgid "No to all" +msgstr "Nej till alla" + +msgid "No transparency" +msgstr "Ingen transparens" + +# +msgid "No tuner is configured for use with a diseqc positioner!" +msgstr "Ingen tuner är konfigurerad för motor diseqc!" + +# +msgid "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Ingen tuner är aktiverad!\n" +"Vänligen konfigurera tuner före scanning efter kanaler." + +msgid "No updates available" +msgstr "Inga uppdateringar tillgängliga." + +msgid "No updates available. Please try again later." +msgstr "Inga uppdateringar tillgängliga. Försök igen senare." + +# +msgid "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" +msgstr "" +"Ingen giltig kanal PIN hittad!\n" +"Vill du ändra kanal PIN nu?\n" +"Om du anger 'Nej' här kommer kanalskyddet vara avaktiverat!" + +# +msgid "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" +msgstr "" +"Ingen giltig installations PIN hittad!\n" +"Vill du ändra installations PIN nu?\n" +"Om du anger 'Nej' här kommer installationsskyddet vara avaktiverat!" + +msgid "No wireless networks found! Searching..." +msgstr "Inga trådlösa nätverk funna! Söker..." + +# +msgid "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." +msgstr "" +"Inget fungerandes lokalt nätverkskort funnet.\n" +"Vänligen bekräfta att du har anslutit en nätverkskabel och att ditt nätverk är korrekt konfigurerat." + +# +msgid "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." +msgstr "" +"Inget fungerandes trådlöst nätverkskort funnet.\n" +"Vänligen bekräfta att du har anslutit ett kompatibelt WLAN enhet och att din nätverkskonfiguration är korrekt." + +# +msgid "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." +msgstr "" +"Inget fungerandes trådlöst nätverkskort funnet.\n" +"Vänligen bekräfta att du har anslutit ett kompatibelt WLAN enhet eller aktiverat ditt lokala nätverkskort." + +# +msgid "No, but restart from begin" +msgstr "Nej, men starta om från början" + +# +msgid "No, do nothing." +msgstr "Nej, gör inget." + +msgid "No, just start my receiver" +msgstr "Nej, starta bara mottagaren" + +msgid "No, never" +msgstr "Nej, aldrig" + +# +msgid "None" +msgstr "Inga" + +# +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right) +msgid "Nonlinear" +msgstr "Ej linjär" + +msgid "Normal mode" +msgstr "Normalt läge" + +# +msgid "North" +msgstr "Nord" + +# +msgid "Norwegian" +msgstr "Norska" + +msgid "Not associated" +msgstr "Ej associerad" + +msgid "Not configured" +msgstr "" + +# +#, python-format +msgid "Not enough disk space. Please free up some disk space and try again. (%d MB required, %d MB available)" +msgstr "Inte tillräckligt med diskutrymme. Vänligen frigör diskutrymme och försök igen. (%d MB krävs, %d MB tillgängligt)" + +msgid "Nothing connected" +msgstr "" + +# +msgid "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Inget att scanna!\n" +"Vänligen konfigurera tuner före scanning efter kanaler." + +msgctxt "now/next: 'now' event label" +msgid "Now" +msgstr "Nu" + +# +msgid "Now playing" +msgstr "Spelas nu" + +msgid "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." +msgstr "Nu, använd kontrastinställningen för att öka ljusstyrka på bakgrunden så mycket som möjligt, men säkerställ att du fortfarande kan se skillnaden mellan de två ljusaste nivåerna av skuggor på skalan.När du har gjort det, vänligen tryck OK för att fortsätta." + +# +msgid "OK" +msgstr "OK" + +# +msgid "OK, guide me through the upgrade process" +msgstr "OK, guida mig genom uppgraderingen" + +msgid "ONID" +msgstr "ONID" + +msgid "OSD name request" +msgstr "OSD namnförfrågan" + +# +msgid "OSD settings" +msgstr "OSD inställning" + +msgid "OSD transparency" +msgstr "OSD transparens" + +# +msgid "Off" +msgstr "Av" + +msgid "Offline decode delay (ms)" +msgstr "Avkodningsfördröjning offline (ms)" + +msgid "Ok" +msgstr "Ok" + +# +msgid "On" +msgstr "På" + +msgid "On end of movie" +msgstr "I slutet på filmen" + +msgid "On end of movie (as menu)" +msgstr "" + +# +msgid "One" +msgstr "En" + +# +msgid "Only extensions." +msgstr "Endast utökningar." + +# +msgid "Only free scan" +msgstr "Bara Fri sökning" + +# +msgid "Open service list" +msgstr "Öppna kanallista" + +# +msgid "Open the movie list" +msgstr "Öppna filmlistan" + +msgid "Orbital position" +msgstr "Banposition" + +msgid "Original" +msgstr "Original" + +msgid "Other" +msgstr "Annan" + +msgid "Output" +msgstr "Utsignal" + +msgid "Overwrite configuration files during software upgrade?" +msgstr "Skriva över konfigurationsfilerna vid mjukvaruuppgradering?" + +msgid "Overwrite configuration files?" +msgstr "Skriva över konfigurationsfilerna ?" + +# +msgid "PAL" +msgstr "PAL" + +msgid "PCR PID" +msgstr "PCR PID" + +# +msgid "PIDs" +msgstr "PIDs" + +msgid "PIN code needed" +msgstr "PIN-kod behövs" + +msgid "PLP ID" +msgstr "PLP ID" + +msgid "PMT PID" +msgstr "PMT PID" + +# +msgid "Package list update" +msgstr "Söker efter uppdateringar" + +# +msgid "Packet management" +msgstr "Pakethantering" + +# +msgid "Packet manager" +msgstr "Pakethanterare" + +# +#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term +msgid "Pan&scan" +msgstr "Pan&Scan" + +# +msgid "Parent directory" +msgstr "Föräldrarbibliotek" + +# +msgid "Parental control" +msgstr "Föräldrakontroll" + +# +msgid "Parental control services editor" +msgstr "Kanaleditor för föräldrakontroll" + +# +msgid "Parental control setup" +msgstr "Inställningar för föräldrakontroll" + +# +msgid "Parental control type" +msgstr "Typ av föräldrakontroll" + +# +msgid "Password" +msgstr "Lösenord" + +# +msgid "Pause" +msgstr "Paus" + +# +msgid "Pause movie at end" +msgstr "Pausa filmen vid slutet" + +# +msgid "Pause playback" +msgstr "Pausa uppspelning" + +msgid "Pauze/Continue playback" +msgstr "" + +msgid "Percentage left" +msgstr "Procent Vänster" + +# +msgid "Percentage right" +msgstr "Procent höger" + +msgid "Permanently delete all recordings in the trash can?" +msgstr "Är du säker på att du vill radera inspelningarna i papperskorgen permanent?" + +msgid "Permanently remove all deleted items" +msgstr "Radera alla borttagna objekt permanent" + +msgid "Persian" +msgstr "Persiska" + +# +msgid "Phone number" +msgstr "Telefonnummer" + +# +msgid "PiP setup" +msgstr "BiB konfiguration" + +msgid "Picon" +msgstr "Picon" + +msgid "Picon and service name" +msgstr "Picon och kanalnamn" + +# +msgid "Picture player" +msgstr "Bildspelare" + +# +#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term. +msgid "Pillarbox" +msgstr "Svarta kanter" + +# +msgid "Pilot" +msgstr "Pilot" + +# +msgid "Play" +msgstr "Spela upp" + +# +msgid "Play DVD" +msgstr "Spela DVD" + +msgid "Play audio in background" +msgstr "Spela audio i bakgrunden" + +# +msgid "Play audio-CD..." +msgstr "Spela Audio-CD..." + +msgid "Play back media files" +msgstr "Uppspelning av mediefiler" + +# +msgid "Play entry" +msgstr "Spela angivet" + +msgid "Play from next mark or playlist entry" +msgstr "Spela upp från nästa markering eller post i spellista" + +msgid "Play from previous mark or playlist entry" +msgstr "Spela upp från föregående markering eller post i spellista" + +# +msgid "Play music..." +msgstr "Spela Musik..." + +msgid "Play next" +msgstr "Spela nästa" + +msgid "Play next (return to movie list)" +msgstr "Spela nästa (återgå till filmlista)" + +msgid "Play next (return to previous service)" +msgstr "Spela nästa (återgå till föregående service)" + +msgid "Play previous" +msgstr "Spela föregående" + +# +msgid "Play recorded movies..." +msgstr "Spela inspelade filmer..." + +# +msgid "Please add titles to the compilation." +msgstr "Vänligen lägg till titel till sammanställningen." + +# +msgid "Please change recording endtime" +msgstr "Vänligen ändra inspelnings sluttid" + +# +msgid "Please check your network settings!" +msgstr "Vänligen kontrollera dina nätverksinställningar!" + +# +msgid "Please choose an extension..." +msgstr "Vänligen välj en utökning..." + +msgid "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Vänligen konfigurera eller bekräfta din namnserver med att fylla i de begärda fälten.\n" +"När du är klar tryck OK för att fortsätta." + +# +msgid "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Vänligen konfigurera din Internetanslutning med att fylla i begärda fält.\n" +"När du är klar tryck OK för att forsätta." + +msgid "Please connect your receiver to the internet" +msgstr "Vänligen anslut din mottagare till Internet" + +# +msgid "Please do not change any values unless you know what you are doing!" +msgstr "Vänligen ändra inte om du inte vet vad du gör!" + +# +msgid "Please enter a name for the new bouquet" +msgstr "Ange namn för den nya favoritlistan" + +# +msgid "Please enter a name for the new marker" +msgstr "Vänligen ange namn för ny markör" + +# +msgid "Please enter a new filename" +msgstr "Vänligen ange nytt filnamn" + +# +msgid "Please enter filename (empty = use current date)" +msgstr "Vänligen ange filnamn (tomt = använd dagens datum)" + +# +msgid "Please enter name of the new directory" +msgstr "Vänligen ange namn till det nya biblioteket" + +msgid "Please enter new name:" +msgstr "Ange nytt namn:" + +msgid "Please enter the correct pin code" +msgstr "Vänligen ange korrekt pin kod" + +msgid "Please enter the old PIN code" +msgstr "Ange den gamla PIN-koden" + +# +msgid "Please follow the instructions on the TV" +msgstr "Vänligen följ instruktionerna på TVn" + +# +msgid "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." +msgstr "Vänligen notera att föregående valda mediat var inte åtkomstbart och därför är nu default bibliotek valt." + +# +msgid "Please press OK to continue." +msgstr "Vänligen tryck OK för att försätta." + +msgid "Please select a default EPG type..." +msgstr "Vänligen välj en standard EPG typ..." + +# +msgid "Please select a playlist to delete..." +msgstr "Vänligen välj en spellista för borttagning..." + +# +msgid "Please select a playlist..." +msgstr "Vänligen välj en spellista..." + +# +msgid "Please select a sub service..." +msgstr "Vänligen välj en sub tjänst..." + +# +msgid "Please select a subservice to record..." +msgstr "Vänligen välj en underkanal för inspelning..." + +# +msgid "Please select a subservice..." +msgstr "Vänligen välj en underkanal..." + +msgid "Please select an NFI file and press green key to flash!" +msgstr "Vänligen välj en NFI fil och tryck på grön knapp för att flasha!" + +# +msgid "Please select medium to be scanned" +msgstr "Vänligen ange media som ska undersökas" + +# +msgid "Please select medium to use as backup location" +msgstr "Vänligen välj media som ska användas som backupdestination" + +# +msgid "Please select tag to filter..." +msgstr "Vänligen välj märke för filtrering..." + +# +msgid "Please select the movie path..." +msgstr "Vänligen ange filmens sökväg..." + +msgid "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Vänligen välj nätverkskort som du vill använda för anslutning till Internet.\n" +"\n" +"Vänligen tryck OK för att fortsätta." + +# +msgid "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Vänligen välj det trådlösa nätverk du vill ansluta till.\n" +"\n" +"Vänligen tryck OK för att forsätta." + +# +msgid "Please set up tuner A" +msgstr "Vänligen installera tuner A" + +# +msgid "Please set up tuner B" +msgstr "Vänligen installera tuner B" + +# +msgid "Please set up tuner C" +msgstr "Vänligen installera tuner C" + +# +msgid "Please set up tuner D" +msgstr "Vänligen installera tuner D" + +# +msgid "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." +msgstr "" +"Använd piltangenterna för att flytta BiB fönstret.\n" +"Tryck Favoritlista +/- för ändra storleken på fönstret.\n" +"Tryck OK för att gå tillbaka till TV läge eller EXIT för att avbryta flyttning." + +msgid "Please use the UP and DOWN keys to select your language. Afterwards press the OK button." +msgstr "Vänligen använd UPP och NER pil för att välja språk. Efter val tryck på OK knappen." + +msgid "Please wait" +msgstr "" + +# +msgid "Please wait (downloading channel list)" +msgstr "Vänligen vänta (Laddar ner kanallista)" + +# +msgid "Please wait (downloading softcam)" +msgstr "Vänligen vänta (Laddar ner softcam)" + +# +msgid "Please wait (updating packages)" +msgstr "Vänligen vänta (uppdaterar paket)" + +# +msgid "Please wait for activation of your network configuration..." +msgstr "Vänligen vänta för aktivering av din nätverkskonfiguration..." + +# +msgid "Please wait while scanning is in progress..." +msgstr "Vänligen vänta medan sökning pågår..." + +# +msgid "Please wait while we configure your network..." +msgstr "Vänligen vänta medan ditt nätverk konfigureras..." + +# +msgid "Please wait while we prepare your network interfaces..." +msgstr "Vänligen vänta medan vi förbereder dina nätverkskort..." + +# +msgid "Please wait while we test your network..." +msgstr "Vänligen vänta medan vi testar ditt nätverk..." + +# +msgid "Please wait while your network is restarting..." +msgstr "Vänligen vänta medan ditt nätverk startas om..." + +# +msgid "Please wait..." +msgstr "Vänligen vänta..." + +# +msgid "Please wait... Loading list..." +msgstr "Vänligen vänta... Laddar lista..." + +# +msgid "Plugin browser" +msgstr "Pluginhanterare" + +# +msgid "Plugin manager activity information" +msgstr "Pluginhanterare aktiviteksinformation" + +# +msgid "Plugin manager help" +msgstr "Pluginhanterare hjälp" + +# +msgid "Plugins" +msgstr "Plugins" + +msgid "Polarisation" +msgstr "Polarisation" + +msgid "Polarisation:" +msgstr "Polarisation:" + +# +msgid "Polarization" +msgstr "Polarisation" + +# +msgid "Polish" +msgstr "Polska" + +# +msgid "Port A" +msgstr "Port A" + +# +msgid "Port B" +msgstr "Port B" + +# +msgid "Port C" +msgstr "Port C" + +# +msgid "Port D" +msgstr "Port D" + +# +msgid "Portuguese" +msgstr "Portugisiska" + +msgid "Position of completed timers in timerlist" +msgstr "Position för färdiga timers i timerlistan" + +msgid "Position stored at index" +msgstr "Position sparad vid index" + +# +msgid "Positioner" +msgstr "Motor" + +msgid "Positioner (selecting satellites)" +msgstr "" + +msgid "Positioner Setup" +msgstr "Motorinstallation" + +# +msgid "Positioner setup" +msgstr "Motorinstallation" + +# +msgid "Power threshold in mA" +msgstr "Ström gränsvärde i mA" + +# +msgid "Predefined transponder" +msgstr "Fördefinerad transponder" + +msgid "Prefer AC3 track" +msgstr "Föredra AC3 spår" + +msgid "Prefer AC3+ track" +msgstr "" + +msgid "Prefer audio track stored by service" +msgstr "Föredra ljudspår sparad av kanal" + +msgid "Prefer graphical DVB subtitles" +msgstr "Föredra grafiska DVB-undertexter" + +msgid "Prefer subtitles for hearing impaired" +msgstr "Föredra undertexter för hörselskadade" + +msgid "Prefer subtitles stored by service" +msgstr "Föredra undertexter sparade av kanal" + +msgid "Preferred tuner" +msgstr "Vilken tuner skall användas först?" + +msgid "Preferred tuner for recordings" +msgstr "" + +msgid "Prepare another USB stick for image flashing" +msgstr "Förbered ytterligare en USB-sticka för image flashning" + +# +msgid "Preparing... Please wait" +msgstr "Förbereder... Vänligen vänta" + +msgid "Press '0' to toggle PiP mode" +msgstr "" + +msgid "Press INFO on your remote control for additional information." +msgstr "Tryck INFO på din fjärrkontroll för ytterligare information." + +msgid "Press MENU on your remote control for additional options." +msgstr "Tryck MENU på din fjärrkontroll för ytterligare valmöjligheter." + +# +msgid "Press OK on your remote control to continue." +msgstr "Tryck OK på din fjärrkontroll för att fortsätta." + +# +msgid "Press OK to activate the selected skin." +msgstr "Tryck OK för aktivera valt utseende." + +# +msgid "Press OK to activate the settings." +msgstr "Tryck OK för aktivera inställningarna." + +# +msgid "Press OK to edit the settings." +msgstr "Tryck OK för att ändra inställningar." + +# +#, python-format +msgid "Press OK to get further details for %s" +msgstr "Tryck OK för att få utförligare information om %s" + +# +msgid "Press OK to scan" +msgstr "Tryck OK för sökning" + +# +msgid "Press OK to select a provider." +msgstr "Tryck OK för att välja en operatör." + +msgid "Press OK to select satellites" +msgstr "" + +# +msgid "Press OK to select/deselect a CAId." +msgstr "Tryck OK för att aktivera/avaktivera en CAId." + +# +msgid "Press OK to start the scan" +msgstr "Tryck OK för att starta sökning" + +msgid "Press OK to toggle the selection" +msgstr "" + +# +msgid "Press OK to toggle the selection." +msgstr "Tryck OK för att växla val." + +# +msgid "Press yellow to set this interface as default interface." +msgstr "Tryck gul knapp för att ange detta interface som grundinterface." + +msgctxt "button label, 'previous screen'" +msgid "Prev" +msgstr "Föregående" + +# +msgid "Preview" +msgstr "Förhandsgranskning" + +# +msgid "Preview menu" +msgstr "Förvisningsmeny" + +msgid "Preview selected channel" +msgstr "Förhandsgranska vald kanal" + +# +msgid "Primary DNS" +msgstr "Primär DNS" + +# +msgid "Priority" +msgstr "Prioritet" + +# +msgid "Process" +msgstr "Process" + +msgid "Progress" +msgstr "Stor tidslinje" + +msgid "Progress bar left" +msgstr "Tidslinje vänster" + +msgid "Progress bar right" +msgstr "Tidslinje Höger" + +# +msgid "Properties of current title" +msgstr "Egenskaper för vald titel" + +# +msgid "Protect services" +msgstr "Skydda kanaler" + +# +msgid "Protect setup" +msgstr "Skydda inställningar" + +# +msgid "Provider" +msgstr "Leverantör" + +# +msgid "Provider to scan" +msgstr "Leverantör att skanna" + +# +msgid "Providers" +msgstr "Leverantörer" + +msgid "Put TV in standby" +msgstr "Sätt TV:n i viloläge" + +msgid "Put receiver in standby" +msgstr "Sätt mottagaren i viloläge" + +# +msgid "Python frontend for /tmp/mmi.socket" +msgstr "Python frontend för /tmp/mmi.socket" + +# +msgid "Quick" +msgstr "Snabb" + +# +msgid "Quick zap" +msgstr "Snabbzap" + +# +msgid "RF output" +msgstr "RF ut" + +# +msgid "RGB" +msgstr "RGB" + +# +msgid "Radio" +msgstr "Radio" + +# +msgid "Ram disk" +msgstr "Ram Disk" + +# +msgid "Random" +msgstr "Slumpmässig" + +#, python-format +msgid "Rating defined by broadcaster - %d" +msgstr "Ranking definerad av sändaren - %d" + +msgid "Rating undefined" +msgstr "Betyg odefinierat" + +# +msgid "Really close without saving settings?" +msgstr "Verkligen stänga utan att spara inställningarna?" + +# +msgid "Really delete done timers?" +msgstr "Verkligen ta bort färdiga timerinspelningar?" + +# +msgid "Really exit the subservices quickzap?" +msgstr "Verkligen avsluta underkanals snabbzap?" + +# +msgid "Really reboot now?" +msgstr "Verkligen starta om nu?" + +# +msgid "Really restart now?" +msgstr "Verkligen starta om nu?" + +# +msgid "Really shutdown now?" +msgstr "Verkligen stänga av nu?" + +msgid "Really upgrade the frontprocessor and reboot now?" +msgstr "Vill du verkligen uppgradera frontprocessorn och starta om nu?" + +msgid "Really upgrade your settop box and reboot now?" +msgstr "Vill du verkligen uppdatera din mottagare och starta om?" + +# +msgid "Reboot" +msgstr "Omstart" + +msgid "Rec" +msgstr "Rec" + +# +msgid "Reception settings" +msgstr "Inställningar för mottagning" + +# +msgid "Record" +msgstr "Spela in" + +# +#, python-format +msgid "Record time limited due to conflicting timer %s" +msgstr "Inspelningstid begränsad på grund av timerkonflikt med %s" + +# +msgid "Recorded files..." +msgstr "Inspelade filer..." + +# +msgid "Recording" +msgstr "Spelar in" + +msgid "Recording in progress" +msgstr "Inspelning pågår" + +# +msgid "Recording paths" +msgstr "Sökvägar till inspelningar" + +msgid "Recording type" +msgstr "Inpelningstyp" + +msgid "Recording(s) are in progress or coming up in few seconds!" +msgstr "Inspelning(ar) pågår eller ska påbörjas inom några sekunder!" + +# +msgid "Recordings" +msgstr "Inspelningar" + +# +msgid "Recordings always have priority" +msgstr "Inspelningar har alltid prioritet" + +msgid "Red button..." +msgstr "Röd knapp..." + +msgid "Reenter new PIN" +msgstr "Ange den nya PIN-koden igen" + +# +msgid "Refresh rate" +msgstr "Uppdateringsfrekvens" + +# +msgid "Refresh rate selection." +msgstr "Val av uppdateringsfrekvens." + +msgid "Regard deep standby as standby" +msgstr "Deep standby anses vara samma som standby" + +msgid "Relative" +msgstr "Relativ" + +# +msgid "Reload" +msgstr "Uppdatera" + +# +msgid "Reload black-/white lists" +msgstr "Ladda om svart / vitlistor" + +msgid "Reloading bouquets and services..." +msgstr "Laddar om favoritlistor och kanaler..." + +msgid "Remember last service in PiP" +msgstr "" + +msgid "Remember service PIN" +msgstr "Kom ihåg service-PIN" + +msgid "Remember these settings for each folder" +msgstr "Kom ihåg dessa inställningar för varje katalog" + +msgid "Reminder, you have chosen to save timeshift file." +msgstr "Påminnelse, du har valt att spara timeshiftfilen." + +# +msgid "Remote control type" +msgstr "Fjärrkontrolls typ" + +# +msgid "Removal has completed." +msgstr "Borttagning har slutförts." + +# +msgid "Remove" +msgstr "Ta bort" + +# +msgid "Remove a mark" +msgstr "Ta bort en markör" + +# +msgid "Remove a nameserver entry" +msgstr "Ta bort en namnserver post" + +# +msgid "Remove bookmark" +msgstr "Ta bort bokmärke" + +msgid "Remove completed timers after (days)" +msgstr "Ta bort färdiga timers efter (dagar)" + +# +msgid "Remove currently selected title" +msgstr "Ta bort vald titel" + +msgid "Remove items from trash can after (days)" +msgstr "Ta bort objekt från papperskorgen efter (dagar)" + +# +msgid "Remove plugins" +msgstr "Ta bort plugins" + +# +msgid "Remove title" +msgstr "Ta bort titel" + +# +msgid "Removing" +msgstr "Tar bort" + +# +#, python-format +msgid "Removing directory %s failed. (Maybe not empty.)" +msgstr "Ta bort biblioteket %s misslyckades. (Troligen ej tomt.)" + +msgid "Removing partition table" +msgstr "Ta bort partitionstabellen" + +# +msgid "Rename" +msgstr "Byt namn" + +msgid "Repeat" +msgstr "Repetera" + +# +msgid "Repeat type" +msgstr "Upprepningstyp" + +# +msgid "Repeating event currently recording... What do you want to do?" +msgstr "Ett upprepande program spelas in... Vad vill du göra?" + +# +msgid "Repeats" +msgstr "Upprepningar" + +msgid "Require authentication for http streams" +msgstr "" + +# +msgid "Required medium type:" +msgstr "Nödvändig mediatyp:" + +msgid "Rereading partition table" +msgstr "Läser om partitionstabellen igen" + +msgid "Reserved" +msgstr "Reserverad" + +# +msgid "Reset" +msgstr "Nollställ" + +# +msgid "Reset and renumerate title names" +msgstr "Återställ och omnumrera titelnamnen" + +msgid "Reset playback position" +msgstr "Återställ visningsläget" + +# +msgid "Reset video enhancement settings to system defaults?" +msgstr "Återställ videoförbättringarna till grundinställningarna?" + +# +msgid "Reset video enhancement settings to your last configuration?" +msgstr "Återställ videoförbättringarna till föregående inställning?" + +# +msgid "Resolution" +msgstr "Upplösning" + +# +msgid "Restart" +msgstr "Omstart" + +# +msgid "Restart GUI now?" +msgstr "Omstart av GUI nu?" + +msgid "Restart enigma" +msgstr "Starta om Enigma" + +# +msgid "Restart network" +msgstr "Omstart nätverk" + +# +msgid "Restart test" +msgstr "Omstart test" + +# +msgid "Restart your network connection and interfaces.\n" +msgstr "Omstart av din nätverksanslutning och adaptrar.\n" + +# +msgid "Restore" +msgstr "Återställ" + +# +msgid "Restore backups" +msgstr "Återställ backuper" + +# +msgid "Restore is running..." +msgstr "Återställning pågår..." + +# +msgid "Restore system settings" +msgstr "Återskapa systeminställningar" + +# +msgid "Restoring..." +msgstr "Återställer..." + +# +msgid "Resume from last position" +msgstr "Återuppspela från senaste position" + +# +#, python-format +msgid "Resume position at %s" +msgstr "Återuppta vid position %s" + +# +#. TRANSLATORS: The string "Resuming playback" flashes for a moment +#. TRANSLATORS: at the start of a movie, when the user has selected +#. TRANSLATORS: "Resume from last position" as start behavior. +#. TRANSLATORS: The purpose is to notify the user that the movie starts +#. TRANSLATORS: in the middle somewhere and not from the beginning. +#. TRANSLATORS: (Some translators seem to have interpreted it as a +#. TRANSLATORS: question or a choice, but it is a statement.) +msgid "Resuming playback" +msgstr "Återupptar uppspelning" + +# +msgid "Return to movie list" +msgstr "Återvänd till filmlista" + +# +msgid "Return to previous service" +msgstr "Återvänd till föregående tjänst" + +msgid "Reverse bouquet buttons" +msgstr "" + +msgid "Reverse list" +msgstr "" + +# +msgid "Rewind speeds" +msgstr "Hastigheter för snabbspolning bakåt" + +msgid "Rewrap teletext subtitles" +msgstr "Ta bort radbrytningen på teletext undertexter" + +# +msgid "Right" +msgstr "Höger" + +msgid "Right from servicename" +msgstr "Höger om kanalnamn" + +msgid "Roll-off" +msgstr "Roll-off" + +msgid "Romanian" +msgstr "Rumänska" + +msgid "Root directory" +msgstr "Rotkatalog" + +msgid "Rotor step position:" +msgstr "Rotorns stegposition:" + +# +msgid "Rotor turning speed" +msgstr "Rotor rotationsfart" + +msgid "Round start time on" +msgstr "Avrunda starttid till" + +# +msgid "Russian" +msgstr "Ryska" + +# +msgid "S-Video" +msgstr "S-Video" + +msgid "SID" +msgstr "SID" + +# +msgid "SINGLE LAYER DVD" +msgstr "SINGLE LAYER DVD" + +# +msgid "SNR" +msgstr "SNR" + +# +msgid "SNR:" +msgstr "SNR:" + +# +msgid "SSID:" +msgstr "SSID:" + +msgid "Same resolution as skin" +msgstr "Samma upplösning som utseendet" + +# +msgid "Sat" +msgstr "Lör" + +# +msgid "Satellite" +msgstr "Satellit" + +# +msgid "Satellite dish setup" +msgstr "Satellit utrustningsinstallation" + +# +msgid "Satellite equipment" +msgstr "Satellitutrustning" + +# +msgid "Satellite equipment setup" +msgstr "Satellit utrustningsinstallation" + +msgid "Satellite longitude:" +msgstr "Satellit longitud:" + +# +msgid "Satellites" +msgstr "Satelliter" + +# +msgid "Satfinder" +msgstr "Satfinder" + +# +msgid "Sats" +msgstr "Sats" + +# +msgid "Saturation" +msgstr "Mättnad" + +# +msgid "Saturday" +msgstr "Lördag" + +# +msgid "Save" +msgstr "Spara" + +# +msgid "Save playlist" +msgstr "spara spellista" + +msgid "Save timeshift file" +msgstr "Spara timeshift filen" + +msgid "Save timeshift file in movie directory" +msgstr "Spara timeshift fil i filmkatalog" + +# +msgid "Scaler sharpness" +msgstr "Scaler skärpa" + +# +msgid "Scaling mode" +msgstr "Scalingläge" + +msgid "Scan" +msgstr "Sök" + +# +msgid "Scan " +msgstr "Sök " + +# +#. TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' +#, python-format +msgid "Scan %s" +msgstr "Sök %s" + +# +#. TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' +#, python-format +msgid "Scan %s band" +msgstr "Sök %s band" + +# +msgid "Scan additional SR" +msgstr "Sök ytterligare SR" + +# +msgid "Scan files..." +msgstr "Sök Filer..." + +# +msgid "Scan wireless networks" +msgstr "Sök efter trådlösa nätverk" + +msgid "Scan your network for wireless access points and connect to them using your selected wireless device.\n" +msgstr "Sök ditt nätverk efter trådlös acccesspunkt och anslut till den med din valda trådlösa enhet.\n" + +#, python-format +msgid "Scanning %s..." +msgstr "Söker %s..." + +#. TRANSLATORS: The stb is performing a channel scan, progress percentage is printed in '%d' (and '%%' will show a single '%' symbol) +#, python-format +msgid "Scanning - %d%% completed" +msgid_plural "Scanning - %d%% completed" +msgstr[0] "Söker - %d%% färdig" +msgstr[1] "Söker - %d%% färdiga" + +#, python-format +msgid "Scanning completed, %d channel found" +msgid_plural "Scanning completed, %d channels found" +msgstr[0] "Sökning klar, %d kanal hittad" +msgstr[1] "Sökning klar, %d kanaler hittade" + +msgid "Scanning failed!" +msgstr "Sökning misslyckades!" + +msgid "Scanning..." +msgstr "Söker..." + +msgid "Scans default lamedbs sorted by satellite with a connected dish positioner" +msgstr "Sök grund lamedbs sorterat på satellit med en ansluten parabolmotor" + +# +msgid "Search east" +msgstr "Sök öst" + +# +msgid "Search west" +msgstr "Sök väst" + +msgid "Searching" +msgstr "Söker" + +msgid "Searching east ..." +msgstr "Söker öst..." + +# +msgid "Searching for available updates. Please wait..." +msgstr "Söker efter tillgängliga uppdateringar. Vänligen vänta..." + +# +msgid "Searching for new installed or removed packages. Please wait..." +msgstr "Sök efter nyinstallerade eller borttagna paket. Vänligen vänta..." + +msgid "Searching west ..." +msgstr "Söker väst..." + +msgid "Second cable of motorized LNB" +msgstr "" + +# +msgid "Secondary DNS" +msgstr "Sekundär DNS" + +# +msgid "Seek" +msgstr "Sök" + +# +msgid "Seek backward" +msgstr "Hoppa bakåt" + +# +msgid "Seek backward (enter time)" +msgstr "Hoppa bakåt (ange tid)" + +# +msgid "Seek forward" +msgstr "Hoppa framåt" + +# +msgid "Seek forward (enter time)" +msgstr "Hoppa framåt (ange tid)" + +# +msgid "Select" +msgstr "Välj" + +# +msgid "Select CAId" +msgstr "Välj CAId" + +msgid "Select HDD" +msgstr "Välj HDD" + +# +msgid "Select a bouquet" +msgstr "Välj en favoritlista" + +# +msgid "Select a movie" +msgstr "Välj en film" + +# +msgid "Select a network adapter" +msgstr "Välj en nätverksadapter" + +# +msgid "Select a skin" +msgstr "Välj ett utseende" + +# +msgid "Select a tuner" +msgstr "Välj en tuner" + +# +msgid "Select a wireless network" +msgstr "Välj ett trådlöst nätverk" + +msgid "Select action" +msgstr "" + +#, python-format +msgid "Select action for timer %s:" +msgstr "" + +msgid "Select all" +msgstr "" + +msgid "Select an image to be downloaded" +msgstr "Välj image för nedladdning" + +# +msgid "Select audio track" +msgstr "Välj ljudspår" + +# +msgid "Select backup files" +msgstr "Välj backupfil" + +# +msgid "Select backup location" +msgstr "Välj backupdestination" + +# +msgid "Select channel to record from" +msgstr "Välj kanal att spela in från" + +msgid "Select copy destination for:" +msgstr "Välj destination att kopiera till för:" + +msgid "Select default EPG type..." +msgstr "Välj en standard EPG typ..." + +msgid "Select desired image from feed list" +msgstr "Välj önskad image från feedlistan" + +msgid "Select destination for:" +msgstr "Välj destination för:" + +msgid "Select files for backup." +msgstr "Väl fil för backup." + +# +msgid "Select files/folders to backup" +msgstr "Ange filer/bibliotek att ta backup på" + +msgid "Select input device" +msgstr "Välj inmatningsenhet" + +msgid "Select input device." +msgstr "Välj inmatningsenhet." + +# +msgid "Select interface" +msgstr "Välj kort" + +# +msgid "Select location" +msgstr "Välj Sökväg" + +# +msgid "Select movie" +msgstr "Välj en film" + +# +msgid "Select provider to add..." +msgstr "Välj operatör att lägga till..." + +# +msgid "Select refresh rate" +msgstr "Välj uppdateringsfrekvens" + +msgid "Select satellites" +msgstr "" + +# +msgid "Select service to add..." +msgstr "Välj kanal att lägga till..." + +msgid "Select sort method:" +msgstr "" + +# +msgid "Select target folder" +msgstr "Välj målkatalog" + +# +msgid "Select the movie path" +msgstr "Välj film sökväg" + +# +msgid "Select upgrade source" +msgstr "Ange uppgraderingskälla." + +# +msgid "Select upgrade source to edit." +msgstr "Ange uppgraderingskälla att ändra." + +# +msgid "Select video input with up/down buttons" +msgstr "Välj videoingång med upp/ner knapparna" + +# +msgid "Select video mode" +msgstr "Välj videoläge" + +# +msgid "Select wireless network" +msgstr "Välj trådlöst nätverk" + +msgid "Select your provider, and press OK to start the scan" +msgstr "Välj din leverantör och tryck OK för att starta sökningen" + +msgid "Selecting satellites 1 (USALS)" +msgstr "" + +msgid "Selecting satellites 2 (USALS)" +msgstr "" + +# +msgid "Send DiSEqC only on satellite change" +msgstr "Skicka enbart DiSEqC vid ändrad satellit" + +# +msgid "Separate titles with a main menu" +msgstr "Separera titlar med en huvudmeny" + +# +msgid "Sequence repeat" +msgstr "Repetera sekvens" + +# +msgid "Serbian" +msgstr "Serbiska" + +# +msgid "Service" +msgstr "Kanal" + +# +msgid "Service has been added to the favourites." +msgstr "Kanalen har lagts till i favoriter." + +# +msgid "Service has been added to the selected bouquet." +msgstr "Kanalen har lagts till i vald favoritlista." + +# +msgid "Service info" +msgstr "Kanalinfo" + +# +msgid "" +"Service invalid!\n" +"(Timeout reading PMT)" +msgstr "" +"Service ogiltig!\n" +"(Timeout vid läsning av PMT)" + +msgid "Service name" +msgstr "Kanalnamn" + +# +msgid "" +"Service not found!\n" +"(SID not found in PAT)" +msgstr "" +"Service inte funnen!\n" +"(SID inte funnen i PAT)" + +msgid "Service reference" +msgstr "Servicereferens" + +# +msgid "Service scan" +msgstr "Kanalsökning" + +# +msgid "Service searching" +msgstr "Kanalsökning" + +msgid "Service title mode" +msgstr "Kanalens utseende" + +msgid "" +"Service unavailable!\n" +"Check tuner configuration!" +msgstr "" +"Tjänsten kunde inte hittas!\n" +"Kontrollera tunerinställningar!" + +# +msgid "Services" +msgstr "Kanaler" + +msgid "Set default" +msgstr "" + +# +msgid "Set end time" +msgstr "Sätt sluttid" + +msgid "Set fixed" +msgstr "Fixera" + +msgid "Set fps for external subtitles" +msgstr "Ställ in fps för externa undertexter" + +# +msgid "Set interface as default Interface" +msgstr "Använd kort som standard kort" + +msgid "Set limits" +msgstr "Sätt gränserna" + +# +msgid "Set the type of the progress indication in the channel selection screen." +msgstr "Ange vilken typ av förloppsindikator som ska användas i kanallistan." + +msgid "Set time window to 1 hour" +msgstr "Sätt tidsfönster till 1 timme" + +msgid "Set time window to 2 hours" +msgstr "Sätt tidsfönster till 2 timmar" + +msgid "Set time window to 3 hours" +msgstr "Sätt tidsfönster till 3 timmar" + +msgid "Set time window to 4 hours" +msgstr "Sätt tidsfönster till 4 timmar" + +msgid "Set time window to 5 hours" +msgstr "Sätt tidsfönster till 5 timmar" + +msgid "Set time window to 6 hours" +msgstr "Ange tidsfönster till 6 timmar" + +# +msgid "Set voltage and 22KHz" +msgstr "Ange Volt och 22KHz" + +# +msgid "Settings" +msgstr "Inställningar" + +# +msgid "Setup" +msgstr "Inställningar" + +msgid "Setup menu" +msgstr "Installationsmeny" + +# +msgid "Setup mode" +msgstr "Installationsläge" + +msgid "Setup your positioner" +msgstr "Ställ in din position" + +# +msgid "Setup your satellite equipment" +msgstr "Satellitutrustning" + +# +#, python-format +msgid "Shall the USB stick wizard proceed and program the image file %s into flash memory?" +msgstr "Ska guiden för USB-stickan fortsätta och programmera imagefilen %s i flashminnet?" + +# +msgid "Sharpness" +msgstr "Skärpa" + +msgid "Short filenames" +msgstr "Korta filnamn" + +msgid "Show EIT now/next in infobar" +msgstr "Visa EIT nu/nästa i infobalken" + +# +msgid "Show EPG for current channel..." +msgstr "Visa EPG för aktuell kanal ..." + +# +msgid "Show EPG..." +msgstr "Visa EPG..." + +msgid "Show Games show" +msgstr "Visa Spel show" + +msgid "Show SNR percentage instead of dB value" +msgstr "Visa SNR procent istället för dB värde" + +msgid "Show VCR scart on main menu" +msgstr "Visa VCR SCART i huvudmenyn" + +# +msgid "Show WLAN status" +msgstr "Visa WLAN Status" + +msgid "Show animation while busy" +msgstr "Visa ikon när mottagaren är upptagen" + +msgid "Show background in radio mode" +msgstr "Visa bakgrundsbild vid radioläge" + +msgid "Show bouquet selection menu" +msgstr "Visa favoritlistemenyn" + +msgid "Show busy indicator when the system is busy." +msgstr "Vid aktiverad, kommer en ikon att visas när mottagaren är upptagen." + +msgid "Show channel numbers in channel selection" +msgstr "Visa kanalnummer i kanallistan" + +msgid "Show columns" +msgstr "" + +msgid "Show crypto icons" +msgstr "" + +msgid "Show crypto info in infobar" +msgstr "Visa krypteringsinfo i infobalken" + +msgid "Show detailed event info" +msgstr "Visa detaljerad programinfo" + +# +msgid "Show event details" +msgstr "Visa programdetaljer" + +# +msgid "Show event-progress in channel selection" +msgstr "Visa programutveckling i kanallistan" + +# +msgid "Show extended description" +msgstr "Visa utökad beskrivning" + +# +msgid "Show extensions..." +msgstr "Visa utökningar..." + +msgid "Show icon for new/unseen items" +msgstr "Visa ikoner för nya/osedda objekt" + +msgid "Show in extensions menu" +msgstr "Visa i utökningsmeny" + +# +msgid "Show info" +msgstr "Visa Info" + +# +msgid "Show info line" +msgstr "Visa Infolinje" + +# +msgid "Show infobar on channel change" +msgstr "Visa infobalk vid kanalbyte" + +# +msgid "Show infobar on event change" +msgstr "Visa infobalk vid programändring" + +# +msgid "Show infobar on skip forward/backward" +msgstr "Visa infobalk vid hopp framåt/bakåt" + +msgid "Show latest commits on sourceforge" +msgstr "" + +msgid "Show message when recording starts" +msgstr "Visa meddelande när inspelning startar" + +msgid "Show movie lengths in movielist" +msgstr "Visa filmens längd i filmlistan" + +msgid "Show multi channel EPG" +msgstr "Visa multikanal EPG" + +msgid "Show picons in channel list" +msgstr "" + +# +msgid "Show positioner movement" +msgstr "Visa ikon vid positionsrörelse" + +msgid "Show screensaver" +msgstr "Visa skärmsläckare" + +msgid "Show second infobar" +msgstr "Visa andra infobalken" + +msgid "Show service type icons" +msgstr "Visa typ av serviceikon" + +# +msgid "Show services beginning with" +msgstr "Visa kanal som börjar med" + +# +msgid "Show shutdown menu" +msgstr "Visa avstängningsmeny" + +msgid "Show single service EPG" +msgstr "Visa singel kanal-EPG" + +msgid "Show status icons in Movielist" +msgstr "Visa statusikoner i filmlistan" + +msgid "Show status icons in movie list" +msgstr "Visa statusikoner i filmlistan" + +msgid "Show status icons in movielist" +msgstr "Visa statusikoner i filmlistan" + +# +msgid "Show tag menu" +msgstr "Visa märkningsmeny" + +# +msgid "Show the radio player..." +msgstr "Visa radiospelaren..." + +# +msgid "Show the tv player..." +msgstr "Visa tv spelare..." + +msgid "Show warning when timeshift is stopped" +msgstr "Visa varning när timeshift avslutas" + +# +msgid "Shows the state of your wireless LAN connection.\n" +msgstr "Visa status på ditt trådlösa LAN anslutning.\n" + +# +msgid "Shuffle playlist" +msgstr "Blanda spellista" + +# +msgid "Shutdown" +msgstr "Stäng av" + +msgid "Shutdown when in Standby" +msgstr "Stäng av vid viloläge" + +msgid "Side by side" +msgstr "Sida vid sida" + +msgid "Signal OK, proceeding" +msgstr "Signal OK, fortsätter" + +msgid "Signal quality" +msgstr "Signalkvalitet" + +# +msgid "Signal strength:" +msgstr "Signalstyrka:" + +msgid "Signal: " +msgstr "Signal: " + +# +msgid "Similar" +msgstr "Liknande" + +# +msgid "Similar broadcasts:" +msgstr "Liknande sändningar:" + +# +msgid "Simple" +msgstr "Enkel" + +# +msgid "Simple titleset (compatibility for legacy players)" +msgstr "Enkelt titelset (kompabilitet för äldre spelare)" + +# +msgid "Single" +msgstr "Singel" + +# +msgid "Single EPG" +msgstr "Singel EPG" + +# +msgid "Single satellite" +msgstr "Singel satellit" + +# +msgid "Single step (GOP)" +msgstr "Enkelsteg (GOP)" + +# +msgid "Single transponder" +msgstr "Singel transponder" + +msgid "Site latitude" +msgstr "Platsens latitud" + +msgid "Site longitude" +msgstr "Platsens longitud" + +# +msgid "Skin" +msgstr "Utseende" + +# +msgid "Skins" +msgstr "Utseenden" + +msgid "Skip empty services" +msgstr "Hoppa över tomma kanaler" + +msgid "Skip internet connection check (disables automatic package installation)" +msgstr "Hoppa över kontroll av internetanslutning (inaktiverar automatisk paketinstallation)" + +# +msgid "Sleep timer" +msgstr "Insomningstimer" + +msgid "SleepTimer Configuration" +msgstr "Konfiguration av insomningstimer" + +msgid "Sleeptimer" +msgstr "Insomningstimer" + +# +msgid "Slide picture in loop" +msgstr "bildspel i loop" + +# +msgid "Slide show interval (sec.)" +msgstr "Slideshow intervall (sec.)" + +# +#, python-format +msgid "Slot %d" +msgstr "Slot %d" + +msgid "Slovak" +msgstr "Slovakiska" + +# +msgid "Slovenian" +msgstr "Slovenska" + +# +msgid "Slow" +msgstr "Sakta" + +# +msgid "Slow motion speeds" +msgstr "Hastigheter för slowmotion" + +# +msgid "Small progress" +msgstr "Liten tidslinje" + +msgid "Social/Political/Economics" +msgstr "Social/Politisk/Ekonomisk" + +msgid "SoftCam / CI" +msgstr "SoftCam / CI" + +# +msgid "Softcam type" +msgstr "Mjukvara" + +# +msgid "Software" +msgstr "Mjukvara" + +# +msgid "Software management" +msgstr "Mjukvaruhantering" + +msgid "Software manager setup" +msgstr "Mjukvaruhanterare installation" + +# +msgid "Software restore" +msgstr "Mjukvaruåterskapa" + +# +msgid "Software update" +msgstr "Mjukvaruuppdatera" + +msgid "Softwaremanager information" +msgstr "Mjukvaruhanterare information" + +# +msgid "Some plugins are not available:\n" +msgstr "Några plugins är inte tillgängliga:\n" + +# +#, python-format +msgid "Sorry, %s has not been installed!" +msgstr "Ledsen, %s har inte blivit installerad!" + +msgid "Sorry, deleting directories can (for now) only be done through the trash can." +msgstr "Ledsen, radera kataloger kan (för tillfället) endast göras i papperskorgen." + +# +msgid "Sorry, no backups found!" +msgstr "Ledsen, inga backuper hittades!" + +# +msgid "Sorry, no details available!" +msgstr "Tyvärr, inga Detaljer tillgängliga!" + +# +msgid "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." +msgstr "" +"Ledsen din backupdestination är inte skrivbar.\n" +"Vänligen välj en annan destination." + +msgid "Sort" +msgstr "Sortera" + +# +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort A-Z" +msgstr "Sortera A-Z" + +msgid "Sort by" +msgstr "" + +msgid "Sort list:" +msgstr "" + +# +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort time" +msgstr "Sortera tid" + +# +msgid "Sound" +msgstr "Ljud" + +# +msgid "Sound carrier" +msgstr "Ljudbärare" + +msgid "Source request" +msgstr "Källbegäran" + +# +msgid "South" +msgstr "Syd" + +# +msgid "Spanish" +msgstr "Spanska" + +msgid "Specify the end time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the end time until the inactivity sleeptimer should be ignored" +msgstr "Ange sluttid när inaktiv insomningstimer ska ignoreras" + +msgid "Specify the start time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the start time when the inactivity sleeptimer should be ignored" +msgstr "Ange Starttid när inaktiv insomningstimer ska ignoreras" + +msgid "Specify timeframe to ignore inactivity sleeptimer" +msgstr "Ange tidsperiod för att ignorera inaktiv insomningstimer" + +msgid "Specify timeframe to ignore the shutdown in standby" +msgstr "" + +# +msgid "Split preview mode" +msgstr "Delat förvisningaläge" + +msgid "Splitscreen" +msgstr "" + +msgid "Sports" +msgstr "Sport" + +# +msgid "Standard" +msgstr "standard" + +msgid "Standart list" +msgstr "" + +# +msgid "Standby" +msgstr "Viloläge" + +# +msgid "Standby / restart" +msgstr "Viloläge / Omstart" + +msgid "Standby after current event" +msgstr "Viloläge efter aktuellt program" + +# +#, python-format +msgid "Standby fan %d PWM" +msgstr "Standby fläkt %d PWM" + +# +#, python-format +msgid "Standby fan %d voltage" +msgstr "Standby fläkt %d Volt" + +msgid "Standby in " +msgstr "Viloläge om" + +msgid "StandbyLED" +msgstr "" + +# +msgid "Start from the beginning" +msgstr "Spela upp från början" + +msgid "Start offline decode" +msgstr "Starta avkodning offline" + +# +msgid "Start recording?" +msgstr "Starta inspelning?" + +# +msgid "Start test" +msgstr "Starta test" + +# +msgid "Start time" +msgstr "Starttid" + +msgid "Start time to ignore inactivity sleeptimer" +msgstr "Starttid för att ignorera inaktiv insomningstimer" + +msgid "Start time to ignore shutdown in standby" +msgstr "" + +# +msgid "Start timeshift" +msgstr "Starta timeshift" + +msgid "Start with list screen" +msgstr "Börja med listskärmen" + +# +msgid "Starting on" +msgstr "Startar på" + +msgid "Startup the set top box in standby" +msgstr "" + +msgid "Startup to Standby" +msgstr "" + +# +msgid "Step east" +msgstr "Stega öst" + +# +msgid "Step west" +msgstr "Stega väst" + +msgid "Stepped east" +msgstr "Stegade mot öster" + +msgid "Stepped west" +msgstr "Stegade mot väster" + +# +msgid "Stop" +msgstr "Avsluta" + +# +msgid "Stop PiP" +msgstr "Avsluta BiB" + +# +msgid "Stop current event and disable coming events" +msgstr "Avsluta nuvarande och avaktivera kommande program" + +# +msgid "Stop current event but not coming events" +msgstr "Avsluta nuvarande program men inte kommande" + +# +msgid "Stop entry" +msgstr "Slutpost" + +# +msgid "Stop playing this movie?" +msgstr "Avsluta uppspelningen?" + +msgid "Stop recording" +msgstr "Stoppa inspelning" + +msgid "Stop recording and delete" +msgstr "Stoppa inspelning och radera" + +msgid "Stop service on return to movie list" +msgstr "" + +# +msgid "Stop test" +msgstr "Stoppa test" + +# +msgid "Stop testing plane after # failed transponders" +msgstr "Sluta testa efter # misslyckade transponders" + +# +msgid "Stop testing plane after # successful transponders" +msgstr "Sluta testa efter # lyckade transponders" + +msgid "Stop timer recording" +msgstr "Stoppa timerinspelning" + +# +msgid "Stop timeshift" +msgstr "Avsluta timeshift" + +# +msgid "Stop timeshift?" +msgstr "Avsluta timeshift?" + +msgid "Stopped" +msgstr "Stoppad" + +msgid "Store at index" +msgstr "Spara vid index" + +# +msgid "Store position" +msgstr "Lagra position" + +# +msgid "Stored position" +msgstr "Lagrad position" + +msgid "Stream" +msgstr "Strömmningsförfrågan" + +msgid "Stream request" +msgstr "Strömmningsförfrågan" + +msgid "Strongest position" +msgstr "Starkaste positionen" + +# +msgid "Subservice list..." +msgstr "Underkanalslista..." + +# +msgid "Subservices" +msgstr "Underkanaler" + +msgid "Subtitle Quickmenu" +msgstr "Snabbmeny för undertext" + +msgid "Subtitle alignment" +msgstr "Undertextens placering" + +msgid "Subtitle border width" +msgstr "Undertextens kantbredd" + +msgid "Subtitle delay when timing is bad" +msgstr "Undertextfördröjning när timing är dålig" + +msgid "Subtitle delay when timing lacks" +msgstr "Fördröjning av undertext när timing saknas" + +msgid "Subtitle font size" +msgstr "Undertextens fontstorlek" + +msgid "Subtitle language selection 1" +msgstr "Undertext språkval 1" + +msgid "Subtitle language selection 2" +msgstr "Undertext språkval 2" + +msgid "Subtitle language selection 3" +msgstr "Undertext språkval 3" + +msgid "Subtitle language selection 4" +msgstr "Undertext språkval 4" + +# +msgid "Subtitle position" +msgstr "Undertextens position" + +# +msgid "Subtitle selection" +msgstr "Undertext val" + +msgid "Subtitle selection..." +msgstr "Undertext val..." + +msgid "Subtitle settings" +msgstr "Undertextinställningar" + +# +msgid "Subtitles" +msgstr "Undertexter" + +# +msgid "Sun" +msgstr "Sön" + +# +msgid "Sunday" +msgstr "Söndag" + +# +msgid "Swap PiP and main picture" +msgstr "Skifta BiB och huvudbild" + +# +msgid "Swap services" +msgstr "Byt kanal" + +# +msgid "Swedish" +msgstr "Svenska" + +msgid "Switch TV to correct input" +msgstr "Växla till korrekt ingång på TV:n" + +msgid "Switch between filelist/playlist" +msgstr "Växla mellan fillista / spellista" + +msgid "Switch between normal mode and list mode" +msgstr "Växla från normalt läge till listläge" + +msgid "Switch to HDMI in mode" +msgstr "" + +# +msgid "Switch to filelist" +msgstr "Byt till fillista" + +msgid "Switch to next channel" +msgstr "" + +# +msgid "Switch to next channel in history" +msgstr "Nästa kanal i historiken" + +# +msgid "Switch to next sub service" +msgstr "Byt till nästa underkanal" + +# +msgid "Switch to playlist" +msgstr "Byt till spellista" + +# +msgid "Switch to previous channel" +msgstr "Byt till föregående underkanal" + +# +msgid "Switch to previous channel in history" +msgstr "Växla till föregående kanal i historiken" + +# +msgid "Switch to previous sub service" +msgstr "Växla till föregående underkanal" + +# +msgid "Switchable tuner types:" +msgstr "Växlingbara tunertyper:" + +msgid "Symbol rate" +msgstr "Symbolhastighet" + +msgid "Symbol rate:" +msgstr "Symbolhastighet:" + +msgid "Sync failure moving back to origin !" +msgstr "Synkfel, flyttar tillbaks till ursprungsläget!" + +# +msgid "System" +msgstr "System" + +#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) +msgid "TRANSLATOR_INFO" +msgstr "ÖVERSÄTTNINGS_INFO" + +# +msgid "TS file is too large for ISO9660 level 1!" +msgstr "TS fil för stor för ISO9660 level 1!" + +msgid "TSID" +msgstr "TSID" + +msgid "TV physical address report" +msgstr "TV fysisk adress rapport" + +msgid "TXT PID" +msgstr "TXT PID" + +# +msgid "Table of contents for collection" +msgstr "Index över innehållet av samligen" + +# +msgid "Tags" +msgstr "Märken" + +msgid "Teletext subtitle color" +msgstr "Teletextens undertextfärg" + +# +msgid "Temperature and fan control" +msgstr "Temperatur och Fläktkontroll" + +# +msgid "Terrestrial" +msgstr "Marksänd" + +# +msgid "Terrestrial provider" +msgstr "Marksänd leverantör" + +# +msgid "Test DiSEqC settings" +msgstr "Testa DiSEqC-inställningarna" + +# +msgid "Test mode" +msgstr "Testläge" + +msgid "Test the network configuration of your receiver.\n" +msgstr "Testa nätverkskonfigurationen för din mottagare.\n" + +# +msgid "Test type" +msgstr "Testtyp" + +# +msgid "Text color" +msgstr "textfärg" + +msgid "Thai" +msgstr "Thailändska" + +# +msgid "" +"Thank you for using the wizard.\n" +"Please press OK to continue." +msgstr "" +"Tack för att du använde guiden.\n" +"Vänligen tryck OK för att forsätta." + +msgid "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." +msgstr "" +"Tack för att du använde guiden. Din mottagare är nu konfigurerad.\n" +"Tryck OK för att börja använda din mottagare." + +msgid "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?" +msgstr "DVD standarden stödjer inte H.264 (HDTV) videoströmmar. Vill du skapa en format data DVD (kommer ej kunnas spelas i vanlig DVD spelare) istället?" + +msgid "The PIN code has been changed successfully." +msgstr "PIN-koden har ändrats!" + +msgid "The PIN codes you entered are different." +msgstr "PIN-koden matchar inte." + +msgid "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" +msgstr "" +"USB-stickan förbereddes för att vara bootbar.\n" +"Nu kan du ladda ner en NFI imagefil!" + +msgid "The backup failed. Please choose a different backup location." +msgstr "Backupen misslyckades. Välj en annan plats för din backup." + +#, python-format +msgid "" +"The current beta image might not be stable.\n" +"For more information see %s." +msgstr "" +"Aktuell Beta-image är kanske inte stabil.\n" +"För mer information se %s." + +# +#, python-format +msgid "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." +msgstr "" +"Biblioteket %s är inte skrivbart.\n" +"Säkerställ att du har valt ett skrivbart bibliotek." + +# +#, python-format +msgid "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" +msgstr "" +"Följande enhet hittades:\n" +"\n" +"%s\n" +"\n" +"Vill du skriva USB flasher till den stickan?" + +# +msgid "The following files were found..." +msgstr "Följande filer hittades..." + +msgid "The md5sum validation failed, the file may be corrupted!" +msgstr "Validering av md5sum misslyckades, filen kan vara korrupt!" + +# +msgid "" +"The network wizard extension is not installed!\n" +"Please install it." +msgstr "" +"Utökningen Nätverksguiden är inte installerad!\n" +"Vänligen installera den." + +# +#, python-format +msgid "The path %s already exists." +msgstr "Sökvägen %s existerar redan." + +msgid "The pin code you entered is wrong." +msgstr "Pin koden du angav var fel." + +# +#, python-format +msgid "The results have been written to %s." +msgstr "Resultatet har skrivits till %s." + +# +msgid "The sleep timer has been activated." +msgstr "Insomningstimern har aktiverats." + +# +msgid "The sleep timer has been disabled." +msgstr "Insomningstimern är deaktiverad." + +# +msgid "" +"The software management extension is not installed!\n" +"Please install it." +msgstr "" +"Utökningen Mjukvaruhanterare är inte installerad!\n" +"Vänligen installera den." + +#, python-format +msgid "The status of the current beta image could not be checked because %s can not be reached." +msgstr "Statusen för den aktuella beta-imagen kunde inte kontrolleras eftersom %s inte kunde nås." + +# +msgid "The timer file (timers.xml) is corrupt and could not be loaded." +msgstr "Timerfilen (timers.xml) är skadad och kan inte läsas." + +msgid "The user interface of your receiver is restarting" +msgstr "Användargränssnittet för din mottagare startas om" + +msgid "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" +msgstr "" +"Användargränssnittet för din mottagare startas om\n" +"på grund av ett fel i mytest.py" + +# +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." +msgstr "" +"Pluginet för trådlöst LAN är inte installerad!\n" +"Vänligen installera den och välj vad du vill göra härnäst." + +# +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it." +msgstr "" +"Pluginet för trådlöst LAN är inte installerad!\n" +"Vänligen installera den." + +# +msgid "The wizard can backup your current settings. Do you want to do a backup now?" +msgstr "Guiden kan ta en backup på nuvarande inställningar. Vill du ta en backup nu?" + +#, python-format +msgid "The wizard found a configuration backup. Do you want to restore your old settings from %s?" +msgstr "Guiden hittade en konfigurationsbackup. Vill du återställla dina gamla inställningar från %s?" + +# +msgid "The wizard is finished now." +msgstr "Guiden är nu färdig." + +# +msgid "There are at least " +msgstr "Det finns minst " + +# +#, python-format +msgid "There are at least %s updates available." +msgstr "Det finns minst %s uppdateringar tillgängliga." + +# +msgid "There are currently no outstanding actions." +msgstr "För tillfället är det inga åtgärder att utföra." + +# +msgid "There are no updates available." +msgstr "Inga uppdateringar tillgängliga." + +msgid "There is no signal to lock on !" +msgstr "Det finns ingen signal att låsa på!" + +# +msgid "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" +msgstr "" +"Det är inte säkert att det finns tillräckligt med utrymme på vald partition.\n" +"Vill du verkligen fortsätta?" + +# +msgid "This DVD RW medium is already formatted - reformatting will erase all content on the disc." +msgstr "Detta DVD RW media är redan formaterat - omformatering kommer ta bort all data på skivan." + +msgid "" +"This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!" +msgstr "" +"Detta plugin skapar en USB-sticka som kan användas för att uppdatera firmware i din mottagare utan behovet av nätverks eller WLAN anslutning.\n" +"Först, en USB-sticka måste förberedas så att den blir bootbar.\n" +"Nästa steg, en NFI-imagefil ska laddas ner från uppdateringsservern och sparas till USB-stickan.\n" +"Om du redan har en förberedd bootbar USB-sticka, vänligen sätt in den nu. Annars anslut en USB-sticka med minsta storlek på 64 MB!" + +# +msgid "This plugin is installed." +msgstr "Detta plugin är installerat." + +# +msgid "This plugin is not installed." +msgstr "Detta plugin är inte installerat." + +# +msgid "This plugin will be installed." +msgstr "Detta plugin kommer att installeras." + +# +msgid "This plugin will be removed." +msgstr "Detta plugin kommer att tas bort." + +#, python-format +msgid "This receiver cannot decode %s streams!" +msgstr "Den här mottagaren kan inte avkoda %s strömmar!" + +# +msgid "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration" +msgstr "" +"Detta test kontrollerar konfigurationen för Namnservrar.\n" +"Om du får ett \"obekräftat\" meddelande:\n" +"- vänligen kontrollera din DHCP, kablar och adapter installation\n" +"- om du har konfigurerat din Namnserver manuellt vänligen bekräfta dina inställningar i \"Namnserver\" INstallation" + +# +msgid "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" +msgstr "" +"Detta test kontrollerar om en nätverkskablen är ansluten till din LAN adapter.\n" +"Om du får ett \"Ej ansluten\" meddelande:\n" +"- bekräfta att nätverkskabel är ansluten\n" +"- bekräfta att kabeln inte är trasig" + +# +msgid "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" +msgstr "" +"Detta test kontrollerar om du har en giltig IP adress på din LAN adapter.\n" +"Om du får ett \"obekräftat\" meddelande:\n" +"- ingen giltig IP hittades\n" +"- vänlig kontrollera din DHCP, kablar och nätverkskorts installation" + +msgid "" +"This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." +msgstr "" +"Detta test kontrollerar om din LAN adapter är konfigurerad för automatisk IP adress tilldelning med DHCP.\n" +"Om du får en \"deaktiverad\" meddelande:\n" +" - ditt LAN är konfigurerat för manuell IP tilldelning\n" +"- bekräfta att du har angivit korrekt IP information i Adapterinstallation dialogen.\n" +"Om du får ett \"aktiverat\" meddelande:\n" +"-bekräfta att du har konfigurerad och fungerandes DHCP server på ditt nätverk." + +# +msgid "This test detects your configured LAN adapter." +msgstr "Detta test upptäcker konfigurerad LAN adapter." + +msgid "" +"This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\n" +"Are you sure?" +msgstr "" +"Detta kommer att räkna ut alla rotorns positioner igen och kan kanske ta bort alla tidigare sparade inställningar!\n" +"Är du säker?" + +# +msgid "Three" +msgstr "Tre" + +# +msgid "Threshold" +msgstr "Gränsvärde" + +# +msgid "Thu" +msgstr "Tors" + +# +msgid "Thumbnails" +msgstr "Thumbnails" + +# +msgid "Thursday" +msgstr "Torsdag" + +# +msgid "Time" +msgstr "Tid" + +msgid "Time scale" +msgstr "Tidsskala" + +# +msgid "Timer" +msgstr "Timer" + +msgid "Timer Overview" +msgstr "" + +# +msgid "Timer edit" +msgstr "Ändra Timer" + +# +msgid "Timer editor" +msgstr "Timereditor" + +# +msgid "Timer entry" +msgstr "Timerinmatning" + +# +msgid "Timer log" +msgstr "Timer log" + +# +msgid "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" +msgstr "" +"Timer överlappning upptäckt i timers.xml!\n" +"Vänligen kontrollera!" + +msgid "Timer overview" +msgstr "Översikt av timer(s)" + +# +msgid "Timer recording location" +msgstr "Timerinspelningens plats" + +# +msgid "Timer sanity error" +msgstr "Timerfel" + +# +msgid "Timer selection" +msgstr "Timerval" + +msgid "Timer selection..." +msgstr "Timerval..." + +# +msgid "Timer type" +msgstr "Timertyp" + +# +msgid "Timeshift" +msgstr "Timeshift" + +msgid "Timeshift Live" +msgstr "" + +# +msgid "Timeshift location" +msgstr "Timeshifts filmplats" + +# +msgid "Timeshift not possible!" +msgstr "Timeshift inte möjligt!" + +# +msgid "Timezone" +msgstr "Tidszon" + +# +msgid "Title" +msgstr "Titel" + +# +msgid "Title properties" +msgstr "Titel egenskaper" + +# +msgid "Titleset mode" +msgstr "Titelset läge" + +msgid "To audio selection" +msgstr "Till ljudval" + +msgid "To subtitle selection" +msgstr "Till undertextval" + +msgid "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." +msgstr "" +"För att uppdatera din mottagare, vänligen följ dessa anvisningar:\n" +"1) Stäng av din box med strömbrytaren på baksidan och säkerställ att bootbar USB-sticka är ansluten.\n" +"2) Slå på strömmen och håll NER-knappen på framsidan intryckt i cirka 10 sekunder.\n" +"3) Vänta på uppstart och följ instruktionerna från guiden." + +# +msgid "Today" +msgstr "Idag" + +# +msgid "Toggle a cut mark at the current position" +msgstr "Skifta en klippmarkering på nuvarande position" + +# +msgid "Tone amplitude" +msgstr "Ton Amplitud" + +# +msgid "Tone mode" +msgstr "Tonläge" + +# +msgid "Toneburst" +msgstr "Toneburst" + +# +msgid "Toneburst A/B" +msgstr "Toneburst A/B" + +msgid "Top and bottom" +msgstr "Längst upp och längst ner" + +# +msgid "Track" +msgstr "Spår" + +# +msgid "Translation" +msgstr "Översättning" + +# +msgid "Translation:" +msgstr "Översättning:" + +msgid "Translations" +msgstr "Översättningar" + +# +msgid "Transmission mode" +msgstr "Sändningstyp" + +# +msgid "Transponder" +msgstr "Transponder" + +# +msgid "Transponder type" +msgstr "Transponder Typ" + +msgid "Trash can" +msgstr "Papperskorg" + +# +msgid "Tries left:" +msgstr "Försök kvar:" + +# +msgid "Try to find used transponders in cable network.. please wait..." +msgstr "Försöker hitta transponders i kabelnätverket... vänligen vänta..." + +# +msgid "Trying to download a new packetlist. Please wait..." +msgstr "Försöker ladda ner ny paketlista. Vänligen vänta..." + +# +msgid "Tue" +msgstr "Tis" + +# +msgid "Tuesday" +msgstr "Tisdag" + +# +msgid "Tune" +msgstr "Ställ in" + +msgid "Tune and focus" +msgstr "Ställ in och fokusera" + +# +msgid "Tune failed!" +msgstr "Tuning misslyckades!" + +# +msgid "Tuner" +msgstr "Tuner" + +# +msgid "Tuner configuration" +msgstr "Tunerkonfiguration" + +msgid "Tuner is not supported" +msgstr "" + +# +msgid "Tuner slot" +msgstr "Tuner Slot" + +# +msgid "Tuner status" +msgstr "Tunerstatus" + +# +#, python-format +msgid "Tuner status %s" +msgstr "Tunerstatus %s" + +# +msgid "Tuner type" +msgstr "Tuner typ" + +# +msgid "Turkish" +msgstr "Turkiska" + +msgid "Turn on the power LED during standby." +msgstr "" + +msgid "Turning step size" +msgstr "" + +# +msgid "Two" +msgstr "Två" + +# +msgid "Type" +msgstr "Typ" + +# +msgid "Type of scan" +msgstr "Typ av sökning" + +# +msgid "USALS" +msgstr "USALS" + +msgid "USALS calibration" +msgstr "USALS Kalibrering" + +# +msgid "USB stick" +msgstr "USB sticka" + +# +msgid "USB stick wizard" +msgstr "Guide för USB sticka" + +msgid "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Obevakad uppgradering pågår!\n" +"Vänta tills din mottagare startar om\n" +"Detta kan ta några minuter!" + +# +msgid "Undo install" +msgstr "Ångra installation" + +# +msgid "Undo uninstall" +msgstr "Ångra avinstallation" + +msgid "Unencrypted" +msgstr "Okrypterad" + +# +msgid "UnhandledKey" +msgstr "Okänd knapp" + +# +msgid "Unicable" +msgstr "Unicable" + +# +msgid "Unicable LNB" +msgstr "Unicable LNB" + +# +msgid "Unicable Martix" +msgstr "Unicable Martix" + +# +msgid "Uninstall" +msgstr "Avinstallera" + +# +msgid "Universal LNB" +msgstr "Universal LNB" + +msgid "Unknown" +msgstr "Okänd" + +msgid "Unmount" +msgstr "Avmontera" + +# +msgid "Unsupported" +msgstr "Osupporterat" + +# +msgid "Update" +msgstr "Uppdatera" + +msgid "Update and ask to reboot" +msgstr "Uppdatera och du får själv välja om du vill starta om" + +msgid "Update and reboot (recommended)" +msgstr "Uppdatera och starta om (rekommenderas)" + +# +msgid "Update channel list only" +msgstr "Uppdatera endast kanallistan" + +#, python-format +msgid "Update completed, %d package was installed." +msgid_plural "Update completed, %d packages were installed." +msgstr[0] "Uppdatering klar, %d packet installerat." +msgstr[1] "Uppdatering klar, %d packet installerade." + +msgid "Update completed. Do you want to reboot your receiver?" +msgstr "Uppdatering färdig, vill du starta om din mottagare?" + +msgid "Update failed. Your receiver does not have a working internet connection." +msgstr "Uppdatering misslyckades. Din mottagare har inte en fungerande internetanslutning." + +msgid "Update has completed." +msgstr "Uppdatering har slutförts." + +# +msgid "Updatefeed not available." +msgstr "Uppdateringsfeed ej tillgänglig." + +# +msgid "Updating software catalog" +msgstr "Uppdaterar mjukvarukatalogen" + +# +msgid "Upgrading" +msgstr "Uppgradering" + +# +msgid "Use" +msgstr "Använd" + +# +msgid "Use DHCP" +msgstr "Använd DHCP" + +msgid "Use EIT EPG information when it is available." +msgstr "Använd EIT EPG-information när den är tillgänglig." + +msgid "Use FreeSat EPG information when it is available." +msgstr "Använd FreeSat EPG-information när den är tillgänglig." + +msgid "Use MHW EPG information when it is available." +msgstr "Använd MHW EPG-information när den är tillgänglig." + +msgid "Use Netmed EPG information when it is available." +msgstr "Använd Netmed EPG-information när den är tillgänglig." + +msgid "Use TV remote control" +msgstr "Använd TV:ns fjärrkontroll" + +msgid "Use USALS for this sat" +msgstr "Använd usals för denna sat" + +msgid "Use ViaSat EPG information when it is available." +msgstr "Använd ViaSat EPG-information när den är tillgänglig." + +msgid "Use Virgin EPG information when it is available." +msgstr "" + +# +msgid "Use a gateway" +msgstr "Använd en gateway" + +msgid "Use fastscan channel names" +msgstr "Använd snabbskanningens kanalnamn" + +msgid "Use fastscan channel numbering" +msgstr "Använd snabbskanningens kanalnumrering" + +msgid "Use frequency or channel" +msgstr "" + +msgid "Use individual settings for each directory" +msgstr "Använd individuella inställningar för varje katalog" + +# +msgid "Use interface" +msgstr "Använd Interface" + +msgid "Use official channel numbering" +msgstr "Använd den officiella kanalnumreringen" + +msgid "Use original DVB subtitle position" +msgstr "Använd DVB-undertextens originalposition" + +msgid "Use original teletext position" +msgstr "Använd teletextens originalposition" + +# +msgid "Use power measurement" +msgstr "Använd strömmätning" + +# +msgid "Use the network wizard to configure selected network adapter" +msgstr "Använd Nätverksguiden för att konfigurera vald nätverksadapter" + +# +msgid "Use the network wizard to configure your network\n" +msgstr "Använd Nätverksguiden för att konfigurera ditt nätverk\n" + +# +msgid "Use the up/down keys on your remote control to select an option. After that, press OK." +msgstr "Använd upp/ner pilarna på din fjärrkontroll för att välja. Tryck sedan OK." + +# +msgid "Use the wizard to set up basic features" +msgstr "Använd guiden för grundinställningarna" + +msgid "Use these input device settings?" +msgstr "Använd dessa inställningar för inmatningsenhet?" + +msgid "Use these settings?" +msgstr "Använd dessa inställningar?" + +# +msgid "Use this video enhancement settings?" +msgstr "Använd denna videoförbättringskonfiguration?" + +msgid "Use trash can in movielist" +msgstr "Använd papperskorgen i filmlistan" + +# +msgid "Used service scan type" +msgstr "Använd kanalsökningstyp" + +msgid "User - bouquets" +msgstr "Användare - favoritlistor" + +# +msgid "User defined" +msgstr "Användardefinierat" + +msgid "User defined transponder" +msgstr "Användardefinerad transponder" + +msgid "User interface" +msgstr "Användargränssnitt" + +# +msgid "Username" +msgstr "Användarnamn" + +#, python-format +msgid "Using LNB %d" +msgstr "Använder LNB %d" + +msgid "Using fixed address" +msgstr "Använder fixerad adress" + +#, python-format +msgid "Using tuner %s" +msgstr "Använder Tuner %s" + +msgid "Usually when the subtitle language is the same as the audio language, the subtitles will not be used. Enable this option to allow these subtitles to be used." +msgstr "När undertextspråket är samma som ljudspråket, kommer undertexter inte användas. Aktivera det här alternativet för att tillåta dessa undertexter." + +# +msgid "VCR scart" +msgstr "VCR SCART" + +# +msgid "VMGM (intro trailer)" +msgstr "VMGM (intro trailer)" + +# +msgid "Vertical" +msgstr "Vertikal" + +msgid "Vertical turning speed" +msgstr "Vertikal vändningshastighet" + +msgid "Video PID" +msgstr "Video PID" + +# +msgid "Video enhancement preview" +msgstr "Förhandsvisning av videoförbättring" + +# +msgid "Video enhancement settings" +msgstr "Videoförbättringskonfiguration" + +# +msgid "Video enhancement setup" +msgstr "Videoförbättringsinstallation" + +# +msgid "Video fine tuning" +msgstr "Fininställning av video" + +# +msgid "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." +msgstr "" +"Video ingångsval\n" +"\n" +"Vänligen tryck OK om du kan se denna bild på din TV (eller välj annan ingångsport).\n" +"\n" +"Nästa ingångsport kommer automatiskt provas om 20 sekunder." + +# +msgid "Video mode selection." +msgstr "Videoläges val." + +# +msgid "Video output" +msgstr "Videoutgång" + +# +msgid "Video setup" +msgstr "Videoinställning" + +# +msgid "Video wizard" +msgstr "Video Guide" + +#, python-format +msgid "Video: %s fps" +msgstr "Video: %s fps" + +msgid "VideoMode" +msgstr "Videoläge" + +msgid "Videocodec" +msgstr "Videocodec" + +msgid "Videoformat" +msgstr "Videoformat" + +msgid "Videosize" +msgstr "Videostorlek" + +# +msgid "View Rass interactive..." +msgstr "Visa Rass interaktivitet..." + +# +msgid "View details" +msgstr "Visa detaljer" + +# +msgid "View list of available " +msgstr "Visa lista över tillgängliga " + +# +msgid "View list of available CommonInterface extensions" +msgstr "Visa lista över tillgängliga CommonInterface utökningar" + +# +msgid "View list of available EPG extensions." +msgstr "Visa lista över tillgängliga EPG utökningar." + +msgid "View list of available Satellite equipment extensions." +msgstr "Visa lista över tillgängliga Satellitutrustnings utökningar." + +# +msgid "View list of available communication extensions." +msgstr "Visa lista över tillgängliga kommunikations utökningar." + +# +msgid "View list of available default settings" +msgstr "Visa lista över tillgängliga grundinställningar" + +# +msgid "View list of available display and userinterface extensions." +msgstr "Visa lista över tillgängliga Display och Användargränssnitt utökningar." + +# +msgid "View list of available multimedia extensions." +msgstr "Visa lista över tillgängliga multimedia utökningar." + +# +msgid "View list of available networking extensions" +msgstr "Visa lista över tillgängliga nätverks utökningar" + +# +msgid "View list of available recording extensions" +msgstr "Visa lista över tillgängliga inspelnings utökningar" + +# +msgid "View list of available skins" +msgstr "Visa lista över tillgängliga utseenden" + +# +msgid "View list of available software extensions" +msgstr "Visa lista över tillgängliga mjukvaru utökningar" + +# +msgid "View list of available system extensions" +msgstr "Visa lista över tillgängliga system utökningar" + +# +msgid "View photos..." +msgstr "Visa Foton..." + +# +msgid "View teletext..." +msgstr "Visa teletext..." + +# +msgid "View video CD..." +msgstr "Visa Video CD..." + +# +msgid "Virtual keyboard" +msgstr "Virtuellt tangentbord" + +# +msgid "Voltage mode" +msgstr "Spännings läge" + +# +msgid "Volume" +msgstr "Volym" + +# +msgid "W" +msgstr "V" + +# +msgid "WEP" +msgstr "WEP" + +msgid "WLAN connection" +msgstr "WLAN anslutning" + +# +msgid "WPA" +msgstr "WPA" + +# +msgid "WPA or WPA2" +msgstr "WPA eller WPA2" + +# +msgid "WPA2" +msgstr "WPA2" + +# +msgid "WSS on 4:3" +msgstr "WSS på 4:3" + +# +msgid "Waiting" +msgstr "Väntar" + +msgid "Waiting for mount" +msgstr "Vänta på montering" + +msgid "Waiting for partition" +msgstr "Vänta på partition" + +msgid "Wakeup" +msgstr "Väck" + +msgid "Wakeup TV from standby" +msgstr "Väck TV från viloläge" + +msgid "Wakeup receiver for start timer" +msgstr "" + +msgid "Wakeup receiver from standby" +msgstr "Väck mottagaren från viloläge" + +msgid "Wakeup signal from TV" +msgstr "Väcknings signal från TV:n" + +msgid "Wakeup type" +msgstr "" + +msgid "Warning: no LNB; using factory defaults." +msgstr "Varning: ingen LNB; använder fabriksinställningarna." + +# +msgid "Watch movies..." +msgstr "Titta på filmer..." + +# +msgid "Watch recordings..." +msgstr "Titta på inspelningar..." + +# +msgid "Wed" +msgstr "Ons" + +# +msgid "Wednesday" +msgstr "Onsdag" + +# +msgid "Weekday" +msgstr "Veckodag" + +msgid "Weighted position" +msgstr "Uppskattad position" + +# +msgid "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." +msgstr "" +"Välkommen till Cutlist editor.\n" +"\n" +"Sök början på det innehåll du vill klippa bort. Tryck OK, välj 'start cut'.\n" +"\n" +"Sök därefter slutet på det innehåll du vill klippa bort, tryck OK, välj 'end cut'. Det var allt." + +msgid "Welcome to the image upgrade wizard. The wizard will assist you in upgrading the firmware of your receiver by providing a backup facility for your current settings and a short explanation of how to upgrade your firmware." +msgstr "Välkommen till uppgraderingsguiden för image. Guiden hjälper dig med uppgraderingen av mjukvaran i din mottagare genom att tillgodose en backupmöjlighet av dina aktuella inställningar och en kort förklaring hur du uppgraderar mjukvaran." + +msgid "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" +msgstr "" +"Välkommen.\n" +"\n" +"Om du vill ansluta din mottagare till Internet, då kommer den här guiden hjälpa dig genom grundläggande konfiguration av din mottagare.\n" +"\n" +"Tryck OK för att starta konfigurationen av ditt nätverk" + +msgid "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." +msgstr "" +"Välkommen.\n" +"\n" +"Den här guiden hjälper dig med grundinställningarna av din mottagare.\n" +"Tryck OK på din fjärrkontroll för att komma till nästa steg." + +# +msgid "Welcome..." +msgstr "Välkommen..." + +# +msgid "West" +msgstr "Väst" + +msgid "West limit set" +msgstr "Västra gränsen satt" + +# +msgid "What do you want to scan?" +msgstr "Vad vill du söka efter?" + +msgid "When enabled the PiP can be closed by the exit button." +msgstr "Vid aktiverad, kan BIB stängas med exitknappen." + +msgid "When enabled the arrow buttons around the OK button will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled the left, right, CH+/-, B+/-, P+/- buttons will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled you can specify a timeframe to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "When enabled you can specify a timeframe were the inactivity sleeptimer is ignored. Not the detection is disabled during this timeframe but the inactivity timeout is disabled" +msgstr "Vid aktiverad, kan du ange en tidsperiod när inaktiv insomningstimer är ignorerad. Detektering är inte avstängd under denna tidsperiod, men den inaktiva timeouten är avstängd." + +msgid "When enabled you can zap channels with the CH+/-, B+/-, P+/- buttons instead of opening the channel selection list." +msgstr "" + +msgid "When enabled you get the channel selection list via the OK button, the infobar toggle is then transfered to exit button" +msgstr "" + +msgid "When enabled, AIT data will be included in http streams. This allows a client receiver to use HbbTV." +msgstr "Vid aktiverad, kommer AIT data inkluderas i http-strömmar. Detta tillåter en klientmottagare att använda HbbTV." + +msgid "When enabled, ECM data will be included in http streams. This allows a client receiver to do the descrambling." +msgstr "Vid aktiverad, kommer ECM data inkluderas i http-strömmar. Detta tillåter en klientmottagare att göra avkodningen." + +msgid "When enabled, EIT data will be included in http streams. This allows a client receiver to show EPG." +msgstr "Vid aktiverad, kommer EIT data inkluderas i http-strömmar. Detta tillåter en klientmottagare att visa EPG." + +msgid "When enabled, a popup message will be shown when a movie has finished and the next one will start." +msgstr "Vid aktiverad, kommer ett meddelande visas när en film har slutat och nästa kommer att starta." + +msgid "When enabled, a popup message will be shown when a recording starts." +msgstr "Vid aktiverad, kommer ett meddelande visas när en inspelning startar." + +msgid "When enabled, a radio background image will be visible while listening to a radio channel." +msgstr "Vid aktiverad, kommer en bakgrundsbild vara synlig medan du lyssnar på en radiokanal." + +msgid "When enabled, a recording is allowed to interrupt live tv, when there are no free tuners." +msgstr "Vid aktiverad, kommer en inspelning avbryta direktsänd TV, när det inte finns några lediga tuners." + +msgid "When enabled, a warning will be displayed and the user will get an option to stop or to continue the timeshift." +msgstr "Vid aktiverad , kommer en varning att visas och användaren får ett val att avsluta eller fortsätta med timeshift." + +msgid "When enabled, authentication is required to watch http streams." +msgstr "" + +msgid "When enabled, channel numbering will start at '1' for each bouquet." +msgstr "Vid aktiverad, kommer kanalnumreringen starta på '1' för varje favoritlista." + +msgid "When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen." +msgstr "Vid aktiverad, kommer innehåll med ett bildförhållande på 4:3 sträckas för att passa skärmen." + +msgid "When enabled, continue to the next bouquet when the last channel of the current bouquet is reached while changing channels." +msgstr "Vid aktiverad, byts favoritlistan till nästa när man nått sista kanalen i nuvarande favoritlistan." + +msgid "When enabled, deleted recordings are moved to the trash can, instead of being deleted immediately." +msgstr "Vid aktiverad, kommer raderade inspelningar flyttas till papperskorgen, istället för att raderas omedelbart." + +msgid "When enabled, display the EIT now/next eventdata in infobar. When disabled, display now/next eventdata from the EPG cache instead." +msgstr "Vid aktiverad, kommer EIT nu/nästa programdata visas i infobalken. När den är avaktiverad visas nu/nästa programdata från EPG cachen istället." + +msgid "When enabled, encryption info will be shown in the infobar (when supported by the skin)." +msgstr "Vid aktiverad, kommer krypteringsinfo att visas i infobalken (om det stöds av utseendet)." + +msgid "When enabled, error messages related to the Common Interface module will not be shown." +msgstr "Vid aktiverad, kommer felmeddelande relaterade till Common Interface modulen inte visas." + +msgid "When enabled, error messages related to zapping will not be shown." +msgstr "Vid aktiverad, kommer felmeddelanden relaterade till zappning inte visas." + +msgid "When enabled, external subtitles will be always turned on for playback movie." +msgstr "Vid aktiverad, kommer externa undertexter alltid att vara aktiverade för uppspelning av film." + +msgid "When enabled, graphical DVB subtitles are preferred over teletext subtitles, when both types are available." +msgstr "Vid aktiverad, kommer grafiska DVB-undertexter föredras före teletextens undertexter, när båda är tillgängliga." + +msgid "When enabled, graphical DVB subtitles will be centered horizontally." +msgstr "Vid aktiverad, kommer grafiska DVB-undertexter centreras horisontellt." + +msgid "When enabled, graphical DVB subtitles will be displayed at their original position." +msgstr "Vid aktiverad, kommer grafiska DVB-undertexter visas vid originalpositionen." + +msgid "When enabled, graphical DVB subtitles will be displayed in yellow, instead of the original color." +msgstr "Vid aktiverad, kommer grafiska DVB-undertexter att visas i gult, i stället för originalfärgen." + +msgid "When enabled, http streams are descrambled on the server side. The (remote) client receiver does not have to do descrambling." +msgstr "Vid aktiverad, kommer http-strömmar avkodas på serversidan. (Fjärr) Klientmottagaren behöver inte göra avkodningen." + +msgid "When enabled, it is possible to leave the movieplayer with exit." +msgstr "Vid aktiverad, kan man avsluta movieplayer med exitknappen." + +msgid "When enabled, measure power consumption to detect when the rotor stops turning (when supported by the tuner)." +msgstr "Vid aktiverad, kommer energiförbrukningen mätas för att upptäcka när rotorn slutar vrida (när det stöds av tunern)." + +msgid "When enabled, number markers will be hiden." +msgstr "Vid aktiverad, kommer nummermarkörer att döljas." + +msgid "When enabled, services may be grouped in multiple bouquets." +msgstr "Vid aktiverad, kommer kanaler grupperas i flera favoritlistor." + +msgid "When enabled, show channel numbers in the channel selection screen." +msgstr "Vid aktiverad, kommer kanalnummer visas i kanallistan." + +msgid "When enabled, subtitles for the hearing impaired can be used." +msgstr "Vid aktiverad, kommer undertexter för hörselskadade användas." + +msgid "When enabled, subtitles for the hearing impaired will be preferred over normal subtitles, when both types are available." +msgstr "Vid aktiverad, kommer undertexter för hörselskadade föredras framför vanliga undertexter, när båda typer är tillgängliga." + +msgid "When enabled, teletext pages will be cached, allowing faster access." +msgstr "Vid aktiverad, kommer teletextsidor cachas, tillåter snabbare åtkomst." + +msgid "When enabled, teletext subtitles will be displayed at their original position." +msgstr "Vid aktiverad, kommer teletextens undertexter visas på originalpositionen." + +msgid "When enabled, the VCR scart option will be shown on the main menu" +msgstr "Vid aktiverad, kommer VCR SCART alternativet visas i huvudmenyn" + +msgid "When enabled, the channel selection list will be hidden while listening to a radio channel" +msgstr "Vid aktiverad, kommer kanallistan döljas när du lyssnar på en radiokanal." + +msgid "When enabled, the infobar will be displayed when a new event starts." +msgstr "Vid aktiverad, kommer infobalken visas när ett nytt program startar." + +msgid "When enabled, the infobar will be displayed when changing channels." +msgstr "Vid aktiverad, kommer infobalken att visas när du byter kanal." + +msgid "When enabled, the infobar will be displayed when skipping forwards/backwards during media playback." +msgstr "Vid aktiverad, kommer infobalken visas när man hoppar framåt/bakåt under uppspelning av media." + +msgid "When enabled, the lenght of each recording will be shown in the movielist (this might cause some additional loading time)." +msgstr "Vid aktiverad, kommer längden på varje inspelning att visas i filmlistan (detta kan orsaka ytterligare laddningstid)." + +msgid "When enabled, the original line breaks will be removed from the teletext subtitles." +msgstr "Vid aktiverad, kommer den ursprungliga radbrytningen tas bort från Teletextens undertexter." + +msgid "When enabled, the receiver will automatically use the audio track which you selected before." +msgstr "Vid aktiverad, kommer mottagaren automatiskt använda ljudspåret som du valt tidigare." + +msgid "When enabled, the receiver will automatically use the subtitles which you selected before." +msgstr "Vid aktiverad, kommer mottagaren automatiskt använda undertexter som du valt tidigare." + +msgid "When enabled, the receiver will no longer monitor the tuned transponder for possible changes. Do not use this option unless you know what you are doing." +msgstr "Vid aktiverad, kommer mottagaren inte längre övervaka transpondern för eventuella ändringar. Använd endast detta alternativ om du vet vad du gör." + +msgid "When enabled, the receiver will select an AC3 track (when available)." +msgstr "Vid aktiverad, kommer mottagaren välja ett AC3 spår (när det är tillgängligt)." + +msgid "When enabled, the receiver will select an AC3+ track (when available)." +msgstr "" + +msgid "When enabled, timeshift starts automatically in background after specified time." +msgstr "Vid aktiverad, startas timeshift automatiskt i bakgrunden vid en angiven tid." + +# +msgid "When enabled, use DHCP for the IP configuration." +msgstr "Vid aktiverad, använd DHCP för IP konfiguration." + +msgid "When enabled, your receiver will detect activity on the VCR SCART input." +msgstr "Vid aktiverad, kommer din mottagare känna av aktivitet på VCR SCART ingången." + +msgid "When nonzero, a recording will start earlier than the starting time indicated by the EPG." +msgstr "Vid icke noll, kommer en inspelning starta tidigare än starttiden som anges av EPG." + +msgid "When nonzero, a recording will stop later than the ending time indicated by the EPG." +msgstr "Vid icke noll, kommer en inspelning stanna senare än sluttiden som anges av EPG." + +msgid "When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture." +msgstr "När innehållet har ett bildförhållande på 16:9, välj om man ska skala/sträcka bilden." + +msgid "When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture." +msgstr "När innehållet har ett bildförhållande på 4:3, välj om man ska skala/sträcka bilden." + +# +msgid "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" +msgstr "" +"När du utför en fabriksreset, kommer du att förlora ALL konfigurationsdata\n" +"(inkl favoritlistor, kanaler, satellit data ...)\n" +"När fabriksreset är klar kommer din mottagare automatiskt starta om!\n" +"\n" +"Vill du utföra en fabriksreset?" + +# +msgid "Where do you want to backup your settings?" +msgstr "Var vill du spara dina inställningar?" + +# +msgid "Where to save temporary timeshift recordings?" +msgstr "Var ska temporära timeshiftinspelningar sparas?" + +# +msgid "Wireless LAN" +msgstr "Trådlöst LAN" + +# +msgid "Wireless network" +msgstr "Trådlöst Nätverk" + +msgid "Wireless network configuration..." +msgstr "Trådlös nätverksinställning..." + +msgid "Wireless network connection setup" +msgstr "Trådlös nätverksinställning" + +msgid "Wireless network connection setup." +msgstr "Trådlös nätverksinställning." + +msgid "Wireless network state" +msgstr "Trådlöst nätverkstillstånd" + +msgid "With popup" +msgstr "Med popup" + +msgid "Without popup" +msgstr "Utan popup" + +msgid "Would you like to install a softcam?" +msgstr "Vill du installera en softcam?" + +# +msgid "Write error while recording. Disk full?\n" +msgstr "Skrivfel under inspelning. Disken full?\n" + +# +msgid "Write failed!" +msgstr "Skrivning misslyckades!" + +# +msgid "YPbPr" +msgstr "YPbPr" + +# +msgid "Year" +msgstr "År" + +msgid "Yellow DVB subtitles" +msgstr "Gula DVB-undertexter" + +# +msgid "Yes" +msgstr "Ja" + +msgid "Yes and save" +msgstr "Ja och spara" + +msgid "Yes and save in movie dir" +msgstr "Ja och spara i filmkatalog" + +# +msgid "Yes to all" +msgstr "Ja till alla" + +msgid "Yes, always" +msgstr "Ja, alltid" + +msgid "Yes, and delete this movie" +msgstr "Ja, och ta bort den här filmen" + +# +msgid "Yes, backup my settings!" +msgstr "Ja, ta backup på inställningar!" + +msgid "Yes, delete this movie and return to movie list" +msgstr "" + +# +msgid "Yes, do a manual scan now" +msgstr "Ja, utför manuell sökning nu" + +# +msgid "Yes, do an automatic scan now" +msgstr "Ja, utför automatisk sökning nu" + +# +msgid "Yes, do another manual scan now" +msgstr "Ja, utför manuell sökning igen" + +# +msgid "Yes, perform a shutdown now." +msgstr "Ja, utför avstängning nu." + +# +msgid "Yes, restore the settings now" +msgstr "Ja, återställ inställningarna nu" + +# +msgid "Yes, returning to movie list" +msgstr "Ja, återvänd till filmlistan" + +msgid "Yesterday" +msgstr "Igår" + +#, python-format +msgid "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" +msgstr "" +"Du har redan en kanallista installerad,\n" +"vill du ta bort\n" +"\"%s\"?" + +# +msgid "You can cancel the installation." +msgstr "Du kan avbryta installationen." + +# +msgid "You can cancel the removal." +msgstr "Du kan avbryta borttagningen." + +msgid "You can continue watching TV etc. while this is running." +msgstr "Du kan fortsätta titta på TV etc, medan detta körs" + +# +msgid "You can install this plugin." +msgstr "Du kan installera detta plugin." + +msgid "You can only burn receiver recordings!" +msgstr "Du kan bara bränna mottagarens inspelningar!" + +# +msgid "You can remove this plugin." +msgstr "Du kan ta bort detta plugin." + +# +msgid "You cannot delete this!" +msgstr "Du kan inte ta bort detta!" + +msgid "You didn't select a channel to record from." +msgstr "Du valde ingen kanal att spela in från." + +# +msgid "You have chosen to backup your settings. Please press OK to start the backup now." +msgstr "Du har valt att ta backup på dina inställningar. Vänligen tryck OK för att starta backup nu." + +# +msgid "You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased." +msgstr "Du har valt att skapa en ny .NFI flash startbar USB-sticka. Detta kommer att repartitionera USB-stickan och efter det kommer all data på den vara borta." + +# +msgid "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." +msgstr "Du har valt att återskapa dina inställningar. Enigma2 kommer starta om efter återskapningen. Vänligen tryck OK för att starta återskapningen nu." + +# +#, python-format +msgid "You have to wait %s!" +msgstr "Du måste vänta %s!" + +msgid "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." +msgstr "" +"Du behöver ha en PC kopplad till din mottagare. Behöver du ytterligare instruktioner vänligen gå till websidan http://www.dm7025.de.\n" +"Din mottagare kommer nu att stoppas. När du har genomfört uppdateringen enligt instruktionerna från websidan, kommer din nya mjukvara att fråga dig om du vill återställa dina inställningar." + +msgid "You system does not support ext4" +msgstr "Ditt system stödjer inte ext4" + +# +msgid "Your backup succeeded. We will now continue to explain the further upgrade process." +msgstr "Backupen lyckades. Vi kommer nu att fortsätta förklara uppgraderingsprocessen." + +# +msgid "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" +msgstr "Din samling överstiger storleken på single layer media, du kommer behöva en tom dual layer DVD!" + +# +msgid "Your current collection will get lost!" +msgstr "Din nuvarande samling kommer försvinna!" + +# +msgid "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." +msgstr "" +"Din frontprocessors mjukvara måste uppgraderas.\n" +"Tryck OK för att starta." + +msgid "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Din frontprocessor kommer att uppgraderas\n" +"Vänta tills din mottagare startat om\n" +"Detta kan ta några minuter!" + +# +msgid "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." +msgstr "" +"Din Internetanslutning fungerar inte!\n" +"Vänligen välj vad du vill göra härnäst." + +#, python-format +msgid "Your internet connection is working (ip: %s)" +msgstr "Din Internetanslutning fungerar (ip: %s)" + +# +msgid "Your network configuration has been activated." +msgstr "Din nätverkskonfiguration har aktiverats." + +msgid "Your receiver does not have an internet connection" +msgstr "Din mottagare har inte någon internetanslutning" + +# +msgid "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" +msgstr "" +"Din mottagare är nu klar för att användas.\n" +"\n" +"Din Internetanslutning fungerar.\n" +"\n" + +msgid "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Din mottagare är nu klar för användning.\n" +"\n" +"Din Internetanslutning fungerar nu.\n" +"\n" +"Vänligen tryck OK för att forsätta." + +msgid "Your receiver is rebooting" +msgstr "Din mottagare startar om" + +msgid "Your receiver is shutting down" +msgstr "Din mottagare stängs av" + +msgid "Your receiver is shutting down. Please stand by..." +msgstr "Din mottagare håller på att stängas av. Vänligen vänta..." + +msgid "Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver." +msgstr "Din mottagare kanske inte fungerar längre. Vänligen läs manualen hur du får hjälp innan du startar om din mottagare." + +msgid "Your receiver will got to stand by due to the sleeptimer." +msgstr "Din mottagare går i viloläge på grund av insomningstimer." + +msgid "Your receiver will got to standby due to inactivity." +msgstr "Din mottagare går i viloläge på grund av inaktivitet." + +msgid "Your receiver will restart after pressing OK on your remote control." +msgstr "Din mottagare kommer att starta om när du trycker på OK på din fjärrkontroll." + +# +msgid "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." +msgstr "" +"Ditt trådlösa LAN Internetanslutning kunde inte startas!\n" +"Har du anslutit ditt USB WLAN-sticka?\n" +"\n" +"Vänligen välj vad du vill göra härnäst." + +msgid "Zap" +msgstr "Zap" + +msgid "Zap back to previously tuned service?" +msgstr "Zappa tillbaka till föregående kanal?" + +# +msgid "Zap back to service before positioner setup?" +msgstr "Gå till föregående kanal före motorinstallation?" + +# +msgid "Zap back to service before tuner setup?" +msgstr "Zappa tillbaka till kanalen som användes innan tunerinstallation?" + +msgid "Zap focus to Picture in Picture" +msgstr "Zappa till Bild i Bild" + +msgid "Zap focus to main screen" +msgstr "Zappa till huvudskärmen" + +msgid "Zap mode" +msgstr "Zap läge" + +msgid "Zap to selected channel" +msgstr "Zappa till vald kanal" + +msgid "Zap to selected channel, or show detailed event info (depends on configuration)" +msgstr "Zappa till vald kanal, eller visa detaljerad programinfo (beroende på konfiguration)" + +# +msgid "[alternative edit]" +msgstr "[ändra alternativ]" + +# +msgid "[bouquet edit]" +msgstr "[favoritlists editor]" + +# +msgid "[favourite edit]" +msgstr "[favorit editor]" + +# +msgid "[move mode]" +msgstr "[flyttläge]" + +# +msgid "a gui to assign services/providers to common interface modules" +msgstr "ett gränssnitt för att tilldela kanaler/providers till ett Common Interface modul" + +# +msgid "a gui to assign services/providers/caids to common interface modules" +msgstr "ett gränssnitt för att tilldela kanaler/providers/caids till ett Common Interface modul" + +# +msgid "abort alternatives edit" +msgstr "avbryt ändra alternativ" + +# +msgid "abort bouquet edit" +msgstr "avbryt editera favoritlista" + +# +msgid "abort favourites edit" +msgstr "avbryt editera favoriter" + +# +msgid "about to start" +msgstr "håller på att starta" + +# +msgid "activate network adapter configuration" +msgstr "aktivera nätverkskorts konfiguration" + +# +msgid "add alternatives" +msgstr "lägg till alternativ" + +# +msgid "add bookmark" +msgstr "lägg till bokmärke" + +# +msgid "add bouquet" +msgstr "lägg till favoritlista" + +# +msgid "add marker" +msgstr "lägg till markör" + +# +msgid "add service to bouquet" +msgstr "lägg till kanal i favoritlista" + +# +msgid "add service to favourites" +msgstr "lägg till kanal i favoriter" + +# +msgid "add to parental protection" +msgstr "lägg till föräldraskydd" + +msgid "adult movie/drama" +msgstr "vuxenfilm/drama" + +# +msgid "advanced" +msgstr "avancerad" + +msgid "adventure/western/war" +msgstr "äventyr/västern/krig" + +msgid "advertisement/shopping" +msgstr "reklam/shopping" + +msgid "after " +msgstr "Efter" + +# +msgid "alphabetic" +msgstr "sortera alfabetiskt" + +msgid "alphabetic reverse" +msgstr "Omvänd alfabetisk ordning" + +msgid "alternative" +msgstr "alternativ" + +msgid "always" +msgstr "" + +msgid "and select next channel" +msgstr "" + +msgid "and select previous channel" +msgstr "" + +msgid "arts/culture (without music, general)" +msgstr "konst/kultur (utan musik, allmänt)" + +msgid "arts/culture magazine" +msgstr "konst/kulturmagasin" + +msgid "athletics" +msgstr "idrott" + +# +msgid "audio tracks" +msgstr "ljudspår" + +# +msgid "auto" +msgstr "auto" + +# +msgid "automatic" +msgstr "Automatisk" + +# +msgid "back" +msgstr "tillbaka" + +# +msgid "background image" +msgstr "bakgrundsbild" + +msgid "ballet" +msgstr "balett" + +#, python-format +msgid "bc%s" +msgstr "bc%s" + +# +msgid "better" +msgstr "bättre" + +# +msgid "black" +msgstr "svart" + +msgid "black & white" +msgstr "svart & vit" + +# +msgid "blacklist" +msgstr "svartlista" + +# +msgid "blue" +msgstr "blå" + +msgid "broadcasting/press" +msgstr "tv/press" + +# +msgid "by date" +msgstr "sortera efter datum" + +msgid "cartoon/puppets" +msgstr "tecknat/dockor" + +msgid "center" +msgstr "centrera" + +msgid "centered" +msgstr "centrerad" + +msgid "centered, wrapped" +msgstr "Centrerad, radbrytning" + +# +msgid "chapters" +msgstr "kapitel" + +msgid "childrens's/youth program (general)" +msgstr "barn/ungdomsprogram (allmänt)" + +# +msgid "circular left" +msgstr "cirkulär vänster" + +# +msgid "circular right" +msgstr "circulär höger" + +msgid "comedy" +msgstr "komedi" + +# +msgid "complex" +msgstr "komplex" + +# +msgid "config menu" +msgstr "konfigurationsmeny" + +# +msgid "confirmed" +msgstr "bekräftad" + +# +msgid "connected" +msgstr "ansluten" + +# +msgid "continue" +msgstr "fortsätt" + +msgid "cooking" +msgstr "matlagning" + +# +msgid "copy to bouquets" +msgstr "kopiera till favoritlista" + +# +msgid "create directory" +msgstr "skapa bibliotek" + +#, python-format +msgid "currently installed image: %s" +msgstr "nuvarande installerad image: %s" + +# +msgid "daily" +msgstr "daglig" + +# +msgid "day" +msgstr "dag" + +# +msgid "default" +msgstr "grund" + +# +msgid "delete cut" +msgstr "ta bort klipp" + +msgid "delete..." +msgstr "ta bort..." + +msgid "descramble and record ecm" +msgstr "avkoda och spela in ecm" + +msgid "detective/thriller" +msgstr "detektiv/thriller" + +# +msgid "disable" +msgstr "avaktivera" + +# +msgid "disable move mode" +msgstr "avaktivera flyttläge" + +# +msgid "disabled" +msgstr "avaktiverad" + +# +msgid "disconnected" +msgstr "bortkopplad" + +msgid "discussion/interview/debate" +msgstr "diskussion/intervju/debatt" + +# +msgid "do nothing" +msgstr "gör inget" + +msgid "documentary" +msgstr "dockumentär" + +msgid "don't descramble, record ecm" +msgstr "avkoda inte, spela in ecm" + +# +msgid "done!" +msgstr "klar!" + +msgid "east" +msgstr "öst" + +msgid "economics/social advisory" +msgstr "ekonomi/social rådgivning" + +# +msgid "edit alternatives" +msgstr "ändra alternativ" + +msgid "education/science/factual topics (general)" +msgstr "utbildning/forskning/faktaämnen (allmänt)" + +# +msgid "empty" +msgstr "tom" + +# +msgid "enable" +msgstr "aktivera" + +# +msgid "enable bouquet edit" +msgstr "aktivera favoritlists editor" + +# +msgid "enable favourite edit" +msgstr "aktivera favoriter editor" + +# +msgid "enable move mode" +msgstr "aktivera flyttläge" + +# +msgid "enabled" +msgstr "aktiverad" + +# +msgid "end alternatives edit" +msgstr "avsluta ändra alternativ" + +# +msgid "end bouquet edit" +msgstr "avsluta favoritlists editor" + +# +msgid "end cut here" +msgstr "slutklipp här" + +# +msgid "end favourites edit" +msgstr "avsluta favoriter editor" + +msgid "entertainment (10-16 year old)" +msgstr "underhållning (10-16 år)" + +msgid "entertainment (6-14 year old)" +msgstr "underhållning (6-14 år)" + +# +msgid "equal to" +msgstr "lika med" + +msgid "equestrian" +msgstr "hästsport" + +# +msgid "exit DVD player or return to file browser" +msgstr "avsluta DVD spelare eller återvänd till fil utforskare" + +msgid "exit movielist" +msgstr "Avsluta filmlista" + +# +msgid "exit network adapter configuration" +msgstr "avsluta nätverkskorts konfiguration" + +# +msgid "exit networkadapter setup menu" +msgstr "avsluta nätverkskortets installationsmeny" + +msgid "experimental film/video" +msgstr "experimentell film/video" + +msgid "false" +msgstr "falskt" + +msgid "fashion" +msgstr "mode" + +# +msgid "fileformats (BMP, PNG, JPG, GIF)" +msgstr "filformat (BMP, PNG, JPG, GIF)" + +# +msgid "filename" +msgstr "filnamn" + +msgid "film/cinema" +msgstr "film/bio" + +msgid "fine arts" +msgstr "konst" + +# +msgid "fine-tune your display" +msgstr "fininställ din skärm" + +msgid "fitness & health" +msgstr "fitness & hälsa" + +# +msgid "flat alphabetic" +msgstr "sortera alfabetiskt" + +msgid "flat alphabetic reverse" +msgstr "Omvänd alfabetisk ordning" + +msgid "folk/traditional music" +msgstr "folk/traditionell musik" + +msgid "football/soccer" +msgstr "amerikansk fotboll/fotboll" + +msgid "foreign countries/expeditions" +msgstr "främmande länder/expeditioner" + +# +msgid "forward to the next chapter" +msgstr "framåt till nästa kapitel" + +# +msgid "free" +msgstr "fri" + +msgid "from" +msgstr "" + +msgid "further education" +msgstr "vidareutbildning" + +msgid "game show/quiz/contest" +msgstr "speltävling/frågetävling/tävling" + +msgid "gardening" +msgstr "trädgård" + +# +msgid "go to deep standby" +msgstr "stäng av mottagaren" + +# +msgid "go to standby" +msgstr "inta viloläge" + +# +msgid "grab this frame as bitmap" +msgstr "grab den här framen som bitmap" + +# +msgid "green" +msgstr "grön" + +msgid "handicraft" +msgstr "hantverk" + +msgid "height" +msgstr "höjd" + +# +msgid "help..." +msgstr "hjälp..." + +# +msgid "horizontal" +msgstr "horisontal" + +msgid "information/education/school program" +msgstr "information/utbildning/skolprogram" + +# +msgid "init module" +msgstr "initiera modul" + +# +msgid "init modules" +msgstr "initiera moduler" + +# +msgid "insert mark here" +msgstr "infoga markör här" + +msgid "invalid type" +msgstr "ogiltig typ" + +msgid "jazz" +msgstr "jazz" + +# +msgid "jump back to the previous title" +msgstr "hoppa bakåt till föregående titel" + +# +msgid "jump forward to the next title" +msgstr "hoppa framåt till nästa titel" + +msgid "languages" +msgstr "språk" + +# +msgid "leave movie player..." +msgstr "lämna movieplayer..." + +# +msgid "left" +msgstr "vänster" + +msgid "left, wrapped" +msgstr "Vänster, radbrytning" + +msgid "leisure hobbies (general)" +msgstr "fritidsintressen (allmänt)" + +# +msgid "length" +msgstr "längd" + +msgid "limit ..., aborting !" +msgstr "gräns...., avbryter!" + +# +msgid "list style compact" +msgstr "liststil kompakt" + +# +msgid "list style compact with description" +msgstr "liststil kompakt med beskrivning" + +# +msgid "list style default" +msgstr "liststil grundläge" + +# +msgid "list style single line" +msgstr "liststil enkel linje" + +msgid "literature" +msgstr "litteratur" + +msgid "live broadcast" +msgstr "direktsändning" + +# +msgid "locked" +msgstr "låst" + +# +msgid "loopthrough to" +msgstr "loopthrough till" + +msgid "magazines/reports/documentary" +msgstr "tidningar/rapporter/dokumentär" + +# +msgid "manual" +msgstr "manuell" + +msgid "martial sports" +msgstr "kampsport" + +msgid "medicine/physiology/psychology" +msgstr "medicin/fysiologi/psykologi" + +# +msgid "menu" +msgstr "meny" + +# +msgid "mins" +msgstr "min" + +# +msgid "minutes" +msgstr "minuter" + +# +msgid "month" +msgstr "månad" + +msgid "motor sport" +msgstr "motorsport" + +msgid "motoring" +msgstr "motor" + +# +msgid "move down to last entry" +msgstr "flytta ner till sista posten" + +# +msgid "move down to next entry" +msgstr "flytta ner till nästa post" + +# +msgid "move up to first entry" +msgstr "flytta upp till första posten" + +# +msgid "move up to previous entry" +msgstr "flytta upp till föregående post" + +msgid "movie/drama (general)" +msgstr "film/drama (allmänt)" + +# +msgid "multinorm" +msgstr "multinorm" + +msgid "music/ballet/dance (general)" +msgstr "musik/balett/dans (allmänt)" + +msgid "musical/opera" +msgstr "musikal/opera" + +msgid "nature/animals/environment" +msgstr "natur/djur/miljö" + +# +msgid "never" +msgstr "aldrig" + +msgid "new media" +msgstr "nya medier" + +msgid "news magazine" +msgstr "nyhetsmagasin" + +msgid "news/current affairs (general)" +msgstr "nyheter/aktuella frågor (allmänt)" + +msgid "news/weather report" +msgstr "nyheter/väderprognos" + +# +msgid "no" +msgstr "nej" + +# +msgid "no CAId selected" +msgstr "ingen CAId vald" + +# +msgid "no CI slots found" +msgstr "ingen CI slot hittad" + +# +msgid "no module found" +msgstr "ingen modul hittad" + +msgid "no storage devices found" +msgstr "inga lagringsenheter hittades" + +# +msgid "none" +msgstr "ingen" + +msgid "normal" +msgstr "normal" + +# +msgid "not configured" +msgstr "ej konfigurerad" + +# +msgid "not locked" +msgstr "inte låst" + +msgid "not supported" +msgstr "stöds ej" + +# +msgid "not used" +msgstr "ej använd" + +# +msgid "nothing connected" +msgstr "inget anslutet" + +# +msgid "of a DUAL layer medium used." +msgstr "av DUAL layer media använt." + +# +msgid "of a SINGLE layer medium used." +msgstr "av SINGLE layer media använt." + +# +msgid "off" +msgstr "av" + +msgid "offset is" +msgstr "förskjutningen är" + +# +msgid "on" +msgstr "på" + +# +msgid "on READ ONLY medium." +msgstr "på READ ONLY media." + +msgid "on end of movie" +msgstr "vid slutet av filmen" + +# +msgid "once" +msgstr "en gång" + +msgid "only from deep standby" +msgstr "" + +msgid "only from standby" +msgstr "" + +msgid "open EPG..." +msgstr "" + +msgid "open Info..." +msgstr "" + +# +msgid "open nameserver configuration" +msgstr "öppna namnserver konfiguration" + +msgid "original" +msgstr "original" + +msgid "original language" +msgstr "originalspråk" + +# +# +msgid "pass" +msgstr "klart" + +msgid "performing arts" +msgstr "scenkonst" + +msgid "play as picture in picture" +msgstr "spela som bild i bild" + +msgid "play in mainwindow" +msgstr "spela i huvudfönster" + +# +msgid "please press OK when ready" +msgstr "tryck OK när du är klar" + +# +msgid "please wait, loading picture..." +msgstr "vänligen vänta, laddar bild..." + +msgid "popular culture/traditional arts" +msgstr "populärkultur/traditionell konst" + +msgid "pre-school children's program" +msgstr "barnprogram förskola" + +msgid "receiver software because updates are available." +msgstr "mottagarens programvara för att uppdateringar finns tillgängliga." + +# +msgid "record" +msgstr "spela in" + +# +msgid "recording..." +msgstr "spelar in..." + +# +msgid "red" +msgstr "röd" + +msgid "religion" +msgstr "religion" + +msgid "remarkable people" +msgstr "enastående människor" + +# +msgid "remove after this position" +msgstr "ta bort efter denna position" + +# +msgid "remove all alternatives" +msgstr "ta bort alla alternativ" + +msgid "remove all new found flags" +msgstr "ta bort alla ny funnen flaggor" + +# +msgid "remove before this position" +msgstr "ta bort före denna position" + +# +msgid "remove bookmark" +msgstr "ta bort bokmärke" + +# +msgid "remove directory" +msgstr "ta bort bibliotek" + +# +msgid "remove entry" +msgstr "ta bort post" + +# +msgid "remove from parental protection" +msgstr "ta bort från föräldraskydd" + +msgid "remove new found flag" +msgstr "ta bort ny funnen flagga" + +# +msgid "remove selected satellite" +msgstr "ta bort vald satellit" + +# +msgid "remove this mark" +msgstr "ta bort denna markör" + +msgid "rename entry" +msgstr "döp om post" + +# +msgid "repeat playlist" +msgstr "upprepa spellista" + +# +msgid "repeated" +msgstr "repeterande" + +msgid "reverse by date" +msgstr "omvänd datumordning" + +# +msgid "rewind to the previous chapter" +msgstr "spola bakåt till föregående kapitel" + +# +msgid "right" +msgstr "höger" + +msgid "right, wrapped" +msgstr "Höger, radbrytning" + +msgid "rock/pop" +msgstr "rock/pop" + +msgid "romance" +msgstr "romantik" + +# +msgid "save last directory on exit" +msgstr "spara sista biblioteket vid avslut" + +# +msgid "save playlist on exit" +msgstr "spara spellista vid avslut" + +# +msgid "scan state" +msgstr "sökningsstatus" + +msgid "science fiction/fantasy/horror" +msgstr "science fiction/fantasi/skräck" + +# +msgid "second cable of motorized LNB" +msgstr "andra kabeln från motorstyrt LNB" + +# +msgid "seconds" +msgstr "sekunder" + +# +msgid "select" +msgstr "välj" + +# +msgid "select CAId's" +msgstr "välj CAIds" + +msgid "select EPG..." +msgstr "" + +msgid "select Info..." +msgstr "" + +# +msgid "select menu entry" +msgstr "välj meny post" + +msgid "select movie" +msgstr "Välj film" + +msgid "select the movie path" +msgstr "Välj sökväg för film" + +msgid "serious music/classic music" +msgstr "seriös musik/klassisk musik" + +msgid "serious/classical/religious/historical movie/drama" +msgstr "seriös/klassisk/religiös/historisk film/drama" + +msgid "service PIN" +msgstr "kanal PIN" + +msgid "set as startup service" +msgstr "använd som startkanal" + +msgid "setup PIN" +msgstr "ange PIN" + +# +msgid "show DVD main menu" +msgstr "visa DVD huvudmeny" + +msgid "show all tags" +msgstr "visa alla taggar" + +# +msgid "show alternatives" +msgstr "visa alternativ" + +# +msgid "show event details" +msgstr "visa programdetaljer" + +msgid "show extended description" +msgstr "Visa utökad beskrivning" + +msgid "show mediaplayer on mainmenu" +msgstr "Visa mediaspelaren i huvudmenyn" + +msgid "show softwaremanager in setup menu" +msgstr "visar mjukvaruhanterare i inställningsmenyn" + +msgid "show softwaremanager on blue button" +msgstr "visar mjukvaruhanterare vid blå knapp" + +msgid "show tag menu" +msgstr "Visa tag meny" + +# +msgid "show transponder info" +msgstr "visa transponder info" + +msgid "show/game show (general)" +msgstr "show/spelunderhållning (allmänt)" + +msgid "shuffle" +msgstr "blanda" + +# +msgid "shut down" +msgstr "stäng av" + +# +msgid "simple" +msgstr "enkelt" + +# +msgid "skip backward" +msgstr "hoppa bakåt" + +# +msgid "skip forward" +msgstr "hoppa framåt" + +msgid "soap/melodram/folkloric" +msgstr "såpa/melodrama/folkloristisk" + +msgid "social/political issues/economics (general)" +msgstr "sociala/politiska frågor/ekonomi (allmänt)" + +msgid "social/spiritual science" +msgstr "social/andlig vetenskap" + +msgid "sorting of playlists" +msgstr "sortering av spellistor" + +msgid "special characters" +msgstr "speciella tecken" + +msgid "special events" +msgstr "speciella evenemang" + +msgid "special format data DVD (HDTV compatible)" +msgstr "speciell format data-DVD (HDTV kompatibel)" + +msgid "sports (general)" +msgstr "sport (allmänt)" + +msgid "sports magazine" +msgstr "sportmagasin" + +# +msgid "standard" +msgstr "standard" + +# +msgid "start cut here" +msgstr "startklipp här" + +# +msgid "start directory" +msgstr "startbibliotek" + +msgid "stepsize" +msgstr "stegstorlek" + +# +msgid "stereo" +msgstr "stereo" + +msgid "stop using as startup service" +msgstr "sluta använd som startkanal" + +# +msgid "switch to bookmarks" +msgstr "byt till bokmärke" + +# +msgid "switch to filelist" +msgstr "byt till fillista" + +# +msgid "switch to the next angle" +msgstr "byt till nästa position" + +# +msgid "switch to the next audio track" +msgstr "byt till nästa ljudspår" + +# +msgid "switch to the next subtitle language" +msgstr "byt till nästa undertextspråk" + +msgid "talk show" +msgstr "intervjuprogram" + +msgid "team sports" +msgstr "lagsporter" + +msgid "technology/natural science" +msgstr "teknik/naturvetenskap" + +# +msgid "template file" +msgstr "mallfil" + +msgid "tennis/squash" +msgstr "tennis/squash" + +# +msgid "this recording" +msgstr "denna inspelning" + +# +msgid "this service is protected by a parental control pin" +msgstr "denna kanal är föräldraskyddad" + +# +msgid "toggle time, chapter, audio, subtitle info" +msgstr "skifta tid, kapitel, ljud, undertext info" + +msgid "top" +msgstr "längst upp" + +msgid "tourism/travel" +msgstr "turism/resor" + +msgid "true" +msgstr "sann" + +# +msgid "unavailable" +msgstr "ej tillgänglig" + +# +msgid "unconfirmed" +msgstr "obekräftad" + +msgid "undefined" +msgstr "Odefinierad" + +# +msgid "unknown" +msgstr "okänd" + +# +msgid "unknown service" +msgstr "okänd kanal" + +msgid "unpublished" +msgstr "opublicerad" + +# +msgid "until standby/restart" +msgstr "tills viloläge/omstart" + +# +msgid "user defined" +msgstr "användardefinierad" + +msgid "variety show" +msgstr "varite" + +# +msgid "vertical" +msgstr "vertikal" + +# +msgid "wait for ci..." +msgstr "vänta på ci..." + +# +msgid "wait for mmi..." +msgstr "vänta på mmi..." + +# +msgid "waiting" +msgstr "väntar" + +msgid "water sport" +msgstr "vattensport" + +# +msgid "weekly" +msgstr "veckovis" + +msgid "west" +msgstr "väst" + +msgid "when PiPzap enabled zap channel down..." +msgstr "" + +msgid "when PiPzap enabled zap channel up..." +msgstr "" + +msgid "white" +msgstr "vit" + +# +msgid "whitelist" +msgstr "vitlista" + +msgid "width" +msgstr "bredd" + +msgid "winter sport" +msgstr "vintersport" + +msgid "wireless network interface" +msgstr "Trådlöst nätverkskort" + +#, python-format +msgid "with %d error" +msgid_plural "with %d errors" +msgstr[0] "med %d fel" +msgstr[1] "med %d fel" + +# +msgid "working" +msgstr "arbetar" + +# +msgid "yellow" +msgstr "gul" + +# +msgid "yes" +msgstr "ja" + +# +msgid "yes (keep feeds)" +msgstr "ja (behåll feeds)" + +# +msgid "zap" +msgstr "zap" + +msgid "zap and record" +msgstr "zappa och spela in" + +# +msgid "zapped" +msgstr "zapped" + +# +#~ msgid "AA" +#~ msgstr "AA" + +# +#~ msgid "AB" +#~ msgstr "AB" + +#~ msgid "Activate PiP" +#~ msgstr "Aktivera BiB" + +#~ msgid "Add/remove timer for current event" +#~ msgstr "Lägg till / Ta bort timer för aktuellt program" + +#~ msgid "Adjust HDMI CEC settings" +#~ msgstr "Justera HDMI-CEC inställningar" + +# +#~ msgid "All satellites" +#~ msgstr "Alla Satelliter" + +#~ msgid "And will shutdown your receiver over " +#~ msgstr "Din mottagare kommer att stängas av om" + +# +#~ msgid "BA" +#~ msgstr "BA" + +# +#~ msgid "BB" +#~ msgstr "BB" + +# +#~ msgid "Behavior of 'pause' when paused" +#~ msgstr "Beteende av 'paus' vid paus" + +# +#~ msgid "Committed DiSEqC command" +#~ msgstr "Committed DiSEqC kommando" + +#~ msgid "Configure if and how service type icons will be shown." +#~ msgstr "Konfigurera om och hur serviceikonerna skall visas." + +#~ msgid "Configure if service picons will be shown in the servicelist." +#~ msgstr "Konfigurera om kanalpicon skall visas i kanallistan." + +#~ msgid "Configure the behavior of the 'pause' key when movie playback is already paused." +#~ msgstr "Konfigurera beteendet på 'paus' knappen när filmuppspelning redan är pausad." + +#~ msgid "Configure the duration in hours and action, which could be shut down or standby, when the receiver is not controlled." +#~ msgstr "Konfigurera längden i timmar och händelsen, som kan vara avstängning eller viloläge, när inte mottagaren kontrolleras." + +#~ msgid "Configure the duration in minutes and action, which could be shut down or standby, for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +#~ msgstr "Konfigurera varaktighet i minuter samt åtgärd som kan vara avstängning eller viloläge för insomningstimer. Välj och klicka på OK eller grön knapp för att starta / stoppa insomningstimer" + +# +#~ msgid "DiSEqC repeats" +#~ msgstr "DISEqC repetitioner" + +#~ msgid "Goto specific data/time" +#~ msgstr "Gå till specifik data/tid" + +#~ msgid "Memory positions" +#~ msgstr "Minnesplatser" + +# +#~ msgid "No satellite frontend found!!" +#~ msgstr "Ingen satellit frontend funnen!!" + +#~ msgid "Open service list and select next channel" +#~ msgstr "Öppna kanallistan och välj nästa kanal" + +#~ msgid "Open service list and select previous channel" +#~ msgstr "Öppna kanallistan och välj föregående kanal" + +#~ msgid "Press '0' to toggle internal/external PiP." +#~ msgstr "Tryck '0' för att växla mellan intern/extern BiB" + +# +#~ msgid "Remove timer" +#~ msgstr "Ta bort timer" + +# +#~ msgid "Send DiSEqC" +#~ msgstr "Skicka DiSEqC" + +#~ msgid "Show picons in servicelist" +#~ msgstr "Visa picon i kanallistan" + +#~ msgid "Shutdown after current event" +#~ msgstr "Stäng av efter aktuellt program" + +#~ msgid "Shutdown in " +#~ msgstr "Stäng av om" + +# +#~ msgid "Switch next channel" +#~ msgstr "Nästa kanal" + +#~ msgid "Tuning step size" +#~ msgstr "Inställningens stegstorlek" + +# +#~ msgid "Uncommitted DiSEqC command" +#~ msgstr "Uncommitted DiSEqC kommando" + +#~ msgid "Your receiver will shutdown due to inactivity." +#~ msgstr "Din mottagare stängs av på grund av inaktivitet" + +#~ msgid "Your receiver will shutdown due to the sleeptimer." +#~ msgstr "Din mottagare stängs av på grund av insomningstimer." + +# +#~ msgid "Zap back to service before satfinder?" +#~ msgstr "Gå till föregående kanal före satfinder?" + +#~ msgid "tuner is not supported" +#~ msgstr "tuner stöds inte" diff --git a/po/th.po b/po/th.po new file mode 100644 index 0000000..dc3fe4c --- /dev/null +++ b/po/th.po @@ -0,0 +1,8298 @@ +# English translations for tuxbox-enigma package. +# Copyright (C) 2005 THE tuxbox-enigma'S COPYRIGHT HOLDER +# This file is distributed under the same license as the tuxbox-enigma package. +# Automatically generated, 2005. +# +msgid "" +msgstr "" +"Project-Id-Version: tuxbox-enigma 0.0.1-En-Th\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-07-21 19:08+0200\n" +"PO-Revision-Date: 2010-04-08 18:13+0700\n" +"Last-Translator: Tony - Thaidreambox\n" +"Language-Team: Tony @ Thai Dreambox <tonyboyth@gmail.com>\n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Poedit-Language: Thai\n" +"X-Poedit-Country: THAILAND\n" + +msgid "" +"\n" +"Advanced options and settings." +msgstr "" +"\n" +"ตั้งค่าขั้นสูง" + +msgid "" +"\n" +"After pressing OK, please wait!" +msgstr "" +"\n" +"กดปุ่ม OK แล้วรอสักครู่" + +msgid "" +"\n" +"Backup your receiver settings." +msgstr "" + +msgid "" +"\n" +"Edit the upgrade source address." +msgstr "" +"\n" +"แก้ไขที่อยู่เพื่อโหลดส่วนปรับปรุง" + +msgid "" +"\n" +"Manage extensions or plugins for your receiver" +msgstr "" + +msgid "" +"\n" +"Online update of your receiver software." +msgstr "" + +msgid "" +"\n" +"Press OK on your remote control to continue." +msgstr "" +"\n" +"กดปุ่ม OK ที่รีโมท เพื่อทำต่อ" + +msgid "" +"\n" +"Restore your backups by date." +msgstr "" +"\n" +"นำสำรองกลับมาใช้ตามวันที่" + +msgid "" +"\n" +"Restore your receiver settings." +msgstr "" + +msgid "" +"\n" +"Restore your receiver with a new firmware." +msgstr "" + +msgid "" +"\n" +"Scan for local extensions and install them." +msgstr "" + +msgid "" +"\n" +"Select your backup device.\n" +"Current device: " +msgstr "" +"\n" +"เลือกอุปกรณ์\n" +"อุปกรณ์ปัจจุบันคือ: " + +msgid "" +"\n" +"View, install and remove available or installed packages." +msgstr "" +"\n" +"ตรวจดู ติดตั้งหรือลบส่วนประกอบ" + +msgid " (PiP)" +msgstr "" + +msgid " (Radio)" +msgstr "" + +msgid " (TV)" +msgstr "" + +msgid " (disabled)" +msgstr "" + +msgid " (higher than any auto)" +msgstr "" + +msgid " (higher than rotor any auto)" +msgstr "" + +msgid " (lower than any auto)" +msgstr "" + +msgid " extensions." +msgstr " ส่วนเพิ่มเติม" + +msgid " ms" +msgstr "" + +msgid " packages selected." +msgstr " ส่วนประกอบที่เลือกไว้" + +msgid " updates available." +msgstr " มีรายการปรับปรุง" + +#. TRANSLATORS: short time representation hour:minute +#, python-format +msgid "%2d:%02d" +msgstr "" + +#. TRANSLATORS: full time representation hour:minute:seconds +#, python-format +msgid "%2d:%02d:%02d" +msgstr "" + +msgid "%A %d %B" +msgstr "" + +#. TRANSLATORS: long date representations dayname daynum monthname in strftime() format! See 'man strftime' +msgid "%A %e %B" +msgstr "" + +#. TRANSLATORS: full date representation dayname daynum monthname year in strftime() format! See 'man strftime' +msgid "%A %e %B %Y" +msgstr "" + +msgid "%H:%M" +msgstr "%H:%M" + +#. TRANSLATORS: short date representation short dayname daynum short monthname in strftime() format! See 'man strftime' +msgid "%a %e/%m" +msgstr "" + +#. TRANSLATORS: long date representation short dayname daynum short monthname hour:minute in strftime() format! See 'man strftime' +msgid "%a %e/%m %-H:%M" +msgstr "" + +#. TRANSLATORS: Intermediate scanning result, '%d' channel(s) have been found so far +#, fuzzy, python-format +msgid "%d channel found" +msgid_plural "%d channels found" +msgstr[0] "บริการนี้ %d ไม่มี!" +msgstr[1] "บริการนี้ %d ไม่มี!" + +#, python-format +msgid "%d file" +msgid_plural "%d files" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "" +msgstr[1] "" + +#, fuzzy, python-format +msgid "%d job is running in the background!" +msgid_plural "%d jobs are running in the background!" +msgstr[0] "กำลังมีงานแบบฉากหลัง %d งาน" +msgstr[1] "กำลังมีงานแบบฉากหลัง %d งาน" + +#, python-format +msgid "%d min" +msgstr "%d นาที" + +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d minutes" +msgstr "" + +#, python-format +msgid "%d pixel wide" +msgid_plural "%d pixels wide" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "" +msgstr[1] "" + +#, fuzzy, python-format +msgid "%d subdirectory" +msgid_plural "%d subdirectories" +msgstr[0] "/var โฟล์เดอร์" +msgstr[1] "/var โฟล์เดอร์" + +#, fuzzy, python-format +msgid "%d wireless network found!" +msgid_plural "%d wireless networks found!" +msgstr[0] "พบ 1 เครือข่ายไร้สาย" +msgstr[1] "พบ 1 เครือข่ายไร้สาย" + +msgid "%d-%b-%Y %-H:%M" +msgstr "" + +msgid "%d-%m" +msgstr "" + +msgid "%d.%B %Y" +msgstr "%d.%B %Y" + +#. TRANSLATORS: VFD hour:minute daynum short monthname in strftime() format! See 'man strftime' +msgid "%k:%M %e/%m" +msgstr "" + +#, fuzzy, python-format +msgid "%s %s free disk space" +msgstr "เนื้อที่เหลือยู่" + +#, python-format +msgid "%s (%s)\n" +msgstr "%s (%s)\n" + +#. TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. +#, python-format +msgid "%s is no longer used. Should it be deleted?" +msgstr "" + +#, fuzzy, python-format +msgid "%s updated package available" +msgid_plural "%s updated packages available" +msgstr[0] " มีรายการปรับปรุง" +msgstr[1] " มีรายการปรับปรุง" + +#, python-format +msgid "%s%d min" +msgstr "" + +#, python-format +msgid "%s/%s: %s" +msgstr "" + +msgid "(ZAP)" +msgstr "(ย้ายช่อง)" + +msgid "(empty)" +msgstr "(ว่าง)" + +msgid "(show optional DVD audio menu)" +msgstr "(เมนูเสียงของดีวีดี)" + +msgid "* Only available if more than one interface is active." +msgstr "* ต้องมีอย่างน้อย 1 อินเตอร์เฟซใช้งานอยู่" + +msgid "/s" +msgstr "" + +msgid "0" +msgstr "0" + +msgid "1" +msgstr "1" + +msgid "1.0" +msgstr "1.0" + +msgid "1.1" +msgstr "1.1" + +msgid "1.2" +msgstr "1.2" + +msgid "12V output" +msgstr "12V output" + +msgid "13 V" +msgstr "13 V" + +msgid "16:10" +msgstr "16:10" + +msgid "16:10 Letterbox" +msgstr "16:10 Letterbox" + +msgid "16:10 PanScan" +msgstr "16:10 PanScan" + +msgid "16:9" +msgstr "16:9" + +msgid "16:9 Letterbox" +msgstr "16:9 Letterbox" + +msgid "16:9 always" +msgstr "16:9 ตลอดเวลา" + +msgid "18 V" +msgstr "18 V" + +msgid "2" +msgstr "2" + +msgid "23.976" +msgstr "" + +msgid "24" +msgstr "" + +msgid "25" +msgstr "" + +msgid "29.97" +msgstr "" + +msgid "3" +msgstr "3" + +msgid "30" +msgstr "" + +msgid "3d mode" +msgstr "" + +msgid "4" +msgstr "4" + +msgid "4:3" +msgstr "4:3" + +msgid "4:3 Letterbox" +msgstr "4:3 Letterbox" + +msgid "4:3 PanScan" +msgstr "4:3 PanScan" + +msgid "5" +msgstr "5" + +msgid "6" +msgstr "6" + +msgid "7" +msgstr "7" + +msgid "8" +msgstr "8" + +msgid "9" +msgstr "9" + +#, python-format +msgid ": %s" +msgstr "" + +msgid "<Current movielist location>" +msgstr "" + +msgid "<Default movie location>" +msgstr "" + +msgid "<Last timer location>" +msgstr "" + +msgid "<unknown>" +msgstr "<ไม่ทราบ>" + +msgid "??" +msgstr "??" + +msgid "A" +msgstr "A" + +#, fuzzy, python-format +msgid "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" +msgstr "" +"ไฟล์เก็บค่า (%s) ถูกแก้ไขช่วงติดตั้ง\n" +"ต้องการใช้เวอร์ชั่นที่ถูกแก้ไขหรือไม่?" + +#, python-format +msgid "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" +msgstr "" +"ไฟล์เก็บค่า (%s) ถูกแก้ไขช่วงติดตั้ง\n" +"ต้องการใช้เวอร์ชั่นที่ถูกแก้ไขหรือไม่?" + +msgid "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" + +msgid "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" + +msgid "A graphical EPG for all services of an specific bouquet" +msgstr "แสดงผังรายการแบบกราฟิกของกลุ่มรายการที่เลือก" + +#, python-format +msgid "" +"A record has been started:\n" +"%s" +msgstr "" +"เริ่มบันทึกรายการ:\n" +"%s" + +msgid "" +"A recording is currently running.\n" +"What do you want to do?" +msgstr "" +"กำลังบันทึกรายการอยู่\n" +"ท่านต้องการที่จะทำอะไร?" + +msgid "A recording is currently running. Please stop the recording before trying to configure the positioner." +msgstr "กำลังบันทึกรายการอยู่ ให้หยุดการบันทึกก่อนตั้งค่าตัวขับจาน" + +msgid "A recording is currently running. Please stop the recording before trying to scan." +msgstr "" + +msgid "A recording is currently running. Please stop the recording before trying to start the satfinder." +msgstr "กำลังบันทึกรายอยู่ หยุดการบันทึกก่อนค้นหาดาวเทียม" + +#, python-format +msgid "A required tool (%s) was not found." +msgstr "ไม่พบเครื่องมือที่ต้องใช้ (%s)" + +msgid "A search for available updates is currently in progress." +msgstr "" + +msgid "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" +msgstr "" + +msgid "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" + +msgid "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" + +msgid "A small overview of the available icon states and actions." +msgstr "ไอคอนแสดงสถานะและการทำงานต่างๆ" + +msgid "" +"A timer failed to record!\n" +"Disable TV and try again?\n" +msgstr "" +"ไม่สามารถบันทึกรายการได้\n" +"ต้องการยกเลิกรายการโทรทัศน์แล้วลองอีกครั้งหรือไม่?\n" + +#, fuzzy +msgid "A/V settings" +msgstr "ตั้งค่าภาพและเสียง" + +msgid "AC3/DTS downmix" +msgstr "" + +msgid "Abort" +msgstr "ยกเลิก" + +msgid "About" +msgstr "เกี่ยวกับ" + +msgid "About..." +msgstr "เกี่ยวกับ..." + +msgid "Accesspoint:" +msgstr "Accesspoint:" + +msgid "Action on long powerbutton press" +msgstr "เมื่อกดปุ่ม Power ค้างไว้ให้" + +msgid "Action on short powerbutton press" +msgstr "" + +msgid "Activate Picture in Picture" +msgstr "ภาพซ้อนภาพ" + +#, fuzzy +msgid "Activate current configuration" +msgstr "สั่งใช้งานการตั้งค่าปัจจุบัน" + +msgid "Activate network settings" +msgstr "ตั้งค่าเครือข่าย" + +#, fuzzy +msgid "Activate the configured network settings." +msgstr "ตั้งค่าเครือข่าย" + +msgid "Adapter settings" +msgstr "ตั้งค่าอะแด๊ปเตอร์" + +msgid "Add" +msgstr "เพิ่ม" + +msgid "Add Bookmark" +msgstr "เพิ่มบุ๊คมาร์ค" + +msgid "Add a mark" +msgstr "เพิ่มจุด" + +#, fuzzy +msgid "Add a nameserver entry" +msgstr "เพิ่ม Nameserver" + +msgid "Add a new title" +msgstr "เพิ่มเรื่องใหม่" + +#, fuzzy +msgid "Add bookmark" +msgstr "เพิ่มบุ๊คมาร์ค" + +#, fuzzy +msgid "Add directory to playlist" +msgstr "เพิ่มทั้งโฟล์เดอร์เข้าสารบัญ" + +#, fuzzy +msgid "Add file to playlist" +msgstr "เพิ่มไฟล์นี้ในสารบัญ" + +#, fuzzy +msgid "Add files to playlist" +msgstr "เพิ่มไฟล์ในสารบัญ" + +msgid "Add more details to the crash log" +msgstr "" + +#, fuzzy +msgid "Add provider" +msgstr "เพิ่มผู้ให้บริการ" + +#, fuzzy +msgid "Add recording (enter recording duration)" +msgstr "บันทึกรายการ (ป้อนช่วงเวลาที่บันทึก)" + +#, fuzzy +msgid "Add recording (enter recording endtime)" +msgstr "บันทึกรายการ (ป้อนช่วงเวลาหยุดบันทึก)" + +#, fuzzy +msgid "Add recording (indefinitely)" +msgstr "บันทึกรายการ (จนกว่าจะสั่งหยุด)" + +#, fuzzy +msgid "Add recording (stop after current event)" +msgstr "บันทึกรายการ (หยุดเมื่อจบรายการ)" + +#, fuzzy +msgid "Add service" +msgstr "เพิ่มบริการ" + +msgid "Add timer" +msgstr "เพิ่มลงตารางเวลา" + +msgid "Add title" +msgstr "เพิ่มเรื่อง" + +msgid "Add to bouquet" +msgstr "เพิ่มเข้ากลุ่ม (Bouquet)" + +msgid "Add to favourites" +msgstr "เพิ่มเข้ารายการโปรด (Favourites)" + +msgid "Add/remove change timer for current event" +msgstr "" + +msgid "Adjust 3D settings" +msgstr "" + +msgid "Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens." +msgstr "ตั้งค่าสีเพื่อแสดงความต่างของสี แต่ยังคงมีความอิ่มตัวอยู่ ถ้าพอใจกับการตั้งค่านี้ให้กดปุ่ม OK เพื่อออกจากตั้งค่าหรือกดปุ่มตัวเลขเพื่อตั้งค่าส่วนอื่นๆ ของหน้าจอ" + +msgid "Advanced" +msgstr "" + +#, fuzzy +msgid "Advanced options" +msgstr "ตัวเลือกขั้นสูง" + +msgid "Advanced restore" +msgstr "นำข้อมูลกลับมาใช้แบบขั้นสูง" + +#, fuzzy +msgid "Advanced software" +msgstr "นำข้อมูลกลับมาใช้แบบขั้นสูง" + +#, fuzzy +msgid "Advanced software plugin" +msgstr "นำข้อมูลกลับมาใช้แบบขั้นสูง" + +#, fuzzy +msgid "Advanced video enhancement setup" +msgstr "ตั้งค่าตัวปรับภาพวิดีโอแบบขั้นสูง" + +#, fuzzy +msgid "Advanced video setup" +msgstr "ตั้งค่าวิดีโอแบบขั้นสูง" + +msgid "After event" +msgstr "หลังจากจบรายการ" + +msgid "Album" +msgstr "อัลบัม" + +msgid "Alignment of events" +msgstr "" + +msgid "Alignment of service names" +msgstr "" + +msgid "All" +msgstr "ทั้งหมด" + +msgid "All ages" +msgstr "" + +msgid "All satellites 1 (USALS)" +msgstr "" + +msgid "All satellites 2 (USALS)" +msgstr "" + +msgid "All satellites 3 (USALS)" +msgstr "" + +msgid "All satellites 4 (USALS)" +msgstr "" + +msgid "Allocate" +msgstr "" + +msgid "Allocate unused memory index" +msgstr "" + +msgid "Allow quit movieplayer with exit" +msgstr "" + +msgid "Allow subtitle language to equal audio language" +msgstr "" + +msgid "Allow subtitles for hearing impaired" +msgstr "" + +msgid "Alpha" +msgstr "อัลฟ่า" + +#, fuzzy +msgid "Alternative" +msgstr "เพิ่มทางเลือกอื่น" + +#, fuzzy +msgid "Alternative numbering mode" +msgstr "โหมดวิทยุแบบทางเลือก" + +msgid "Alternative services tuner priority" +msgstr "ลำดับของ Tuner เพื่อใช้งาน" + +msgid "Always ask" +msgstr "" + +msgid "Always hide infobar" +msgstr "" + +msgid "An empty filename is illegal." +msgstr "ชื่อไฟล์ห้ามเป็นช่องว่าง" + +#, fuzzy +msgid "An error occurred while downloading the packetlist. Please try again." +msgstr "พบข้อผิดพลาด ไม่สามารถดาวน์โหลดรายการของส่วนประกอบได้ กรุณาลองซ้ำอีกครั้ง...." + +msgid "An unknown error occurred!" +msgstr "เกิดข้อผิดพลาดขึ้น!" + +msgid "And will put your receiver in standby over " +msgstr "" + +msgid "Any activity" +msgstr "" + +msgid "Arabic" +msgstr "ภาษาอาหรับ" + +msgid "Are you sure to remove this entry?" +msgstr "" + +msgid "" +"Are you sure you want to activate this network configuration?\n" +"\n" +msgstr "" +"ท่านจะให้ค่าเครื่อข่ายที่ตั้งใหม่ทำงานหรือไม่\n" +"\n" + +#, fuzzy +msgid "" +"Are you sure you want to delete\n" +"the following backup:\n" +msgstr "" +"ท่านแน่หรือไม่ที่จะลบ\n" +"ชุดสำรองข้อมูล:\n" + +msgid "Are you sure you want to exit this wizard?" +msgstr "ท่านต้องการที่ออกจากตัวช่วยหรือไม่?" + +msgid "" +"Are you sure you want to restart your network interfaces?\n" +"\n" +msgstr "" +"ท่านจะให้ระบบเครือข่ายเริ่มทำงานใหม่หรือไม่?\n" +"\n" + +#, fuzzy, python-format +msgid "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"ท่านจะนำสำรอง Enigma2 กลับมาใช้หรือไม่?\n" +"Enigma2 จะเริ่มระบบใหม่ (Restart) หลังจากทำงานเสร็จ" + +#, fuzzy +msgid "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"ท่านจะนำสำรอง Enigma2 กลับมาใช้หรือไม่?\n" +"Enigma2 จะเริ่มระบบใหม่ (Restart) หลังจากทำงานเสร็จ" + +msgid "Artist" +msgstr "ศิลปิน" + +msgid "Arts/Culture" +msgstr "" + +msgid "Ask user" +msgstr "ถามผู้ใช้" + +#, fuzzy +msgid "Aspect ratio" +msgstr "สัดส่วนภาพ" + +#, fuzzy +msgid "Assigned CAIds:" +msgstr "ตั้งค่า CAIds:" + +#, fuzzy +msgid "Assigned services/provider:" +msgstr "กำหนดบริการ/ผู้ให้บริการr:" + +#, fuzzy +msgid "At beginning" +msgstr "เริ่มตั้งแต่ต้น" + +msgid "At end" +msgstr "" + +msgid "Audio" +msgstr "เสียง" + +msgid "Audio PID" +msgstr "" + +msgid "Audio language selection 1" +msgstr "" + +msgid "Audio language selection 2" +msgstr "" + +msgid "Audio language selection 3" +msgstr "" + +msgid "Audio language selection 4" +msgstr "" + +#, fuzzy +msgid "Audio options..." +msgstr "ตั้งค่าเสียง..." + +#, fuzzy, python-format +msgid "Audio track (%s) format" +msgstr "ร่องเสียง (%s) รูปแบบ" + +#, fuzzy, python-format +msgid "Audio track (%s) language" +msgstr "ร่องเสียง (%s) ภาษา" + +msgid "Author: " +msgstr "ผู้แต่ง: " + +msgid "Authoring mode" +msgstr "โหมดแต่ง" + +#. TRANSLATORS: (aspect ratio policy: always try to display as fullscreen, when there is no content (black bars) on left/right, even if this breaks the aspect. +msgid "Auto" +msgstr "อัตโนมัติ" + +msgid "Auto chapter split every ? minutes (0=never)" +msgstr "แยกเป็นตอนๆ ในทุกๆ กี่ ? นาที (0=ไม่แยก)" + +msgid "Auto flesh" +msgstr "ปรับอัตโนมัติ" + +msgid "Auto focus" +msgstr "" + +msgid "Auto focus commencing ..." +msgstr "" + +msgid "Auto language selection" +msgstr "" + +msgid "Auto scart switching" +msgstr "เปลี่ยน scart อัตโนมัติ" + +msgid "Automatic" +msgstr "อัตโนมัติ" + +#, fuzzy +msgid "Automatic scan" +msgstr "ค้นหาอัตโนมัติ" + +msgid "Automatically start timeshift after" +msgstr "" + +msgid "Automatically turn on external subtitles" +msgstr "" + +msgid "Available format variables" +msgstr "รูปแบบที่ใช้งานได้" + +msgid "B" +msgstr "B" + +msgid "BER" +msgstr "BER" + +msgid "BER:" +msgstr "BER:" + +msgid "Back" +msgstr "ย้อนกลับ" + +msgid "Background" +msgstr "ฉากหลัง" + +#, fuzzy +msgid "Background color" +msgstr "สีพื้นหลัง" + +msgid "Background delete option" +msgstr "" + +msgid "Background delete speed" +msgstr "" + +#, fuzzy +msgid "Backup completed." +msgstr "สำรองข้อมูลล้มเหลว" + +msgid "Backup failed." +msgstr "สำรองข้อมูลล้มเหลว" + +msgid "Backup is running..." +msgstr "กำลังสำรองข้อมูล..." + +msgid "Backup system settings" +msgstr "ตั้งค่าสำรองข้อมูลระบบ" + +msgid "Band" +msgstr "แถบ" + +msgid "Bandwidth" +msgstr "แบนด์วิดธ์" + +msgid "Basque" +msgstr "" + +msgid "Begin time" +msgstr "เวลาเริ่ม" + +msgid "Behavior of 'pause and ok' when paused" +msgstr "" + +msgid "Behavior of 0 key in PiP-mode" +msgstr "เมื่อกด 0 ใน PiP ให้" + +msgid "Behavior when a movie is started" +msgstr "เมื่อภาพยนต์เริ่มเล่นให้" + +msgid "Behavior when a movie is stopped" +msgstr "เมื่อภาพยนต์หยุดเล่นให้" + +msgid "Behavior when a movie reaches the end" +msgstr "เมื่อเมื่อภาพยนต์จบ ให้" + +msgid "Big PiP" +msgstr "" + +msgid "Bitrate:" +msgstr "บิทเรท:" + +msgid "Black screen" +msgstr "" + +msgid "Black screen till locked" +msgstr "" + +msgid "Block noise reduction" +msgstr "Block noise reduction" + +msgid "Blue boost" +msgstr "Blue boost" + +msgid "Bookmarks" +msgstr "บุ๊คมาร์ค" + +msgid "Brightness" +msgstr "ความสว่าง" + +msgid "Bulgarian" +msgstr "" + +msgid "Burn DVD" +msgstr "เขียนแผ่นดีวีดี" + +#, fuzzy, python-format +msgid "Burn audio track (%s)" +msgstr "บันทึกเสียง (%s)" + +msgid "Burn existing image to DVD" +msgstr "เขียนอิมเมจลงแผ่นดีวีดี" + +msgid "Burn to DVD" +msgstr "" + +msgid "Bus: " +msgstr "Bus: " + +msgid "By default, SNR will be shown in dB (when supported by the tuner). This setting forces SNR to be shown as a percentage instead." +msgstr "" + +msgid "C" +msgstr "C" + +msgid "C-Band" +msgstr "C-Band" + +msgid "CH" +msgstr "" + +msgid "CI assignment" +msgstr "CI assignment" + +msgid "CVBS" +msgstr "CVBS" + +msgid "Cable" +msgstr "เคเบิ้ล" + +msgid "Cable Scan" +msgstr "" + +#, fuzzy +msgid "Cache thumbnails" +msgstr "เก็บภาพเล็กแคช" + +msgid "Calculate" +msgstr "" + +msgid "Calculate all positions" +msgstr "" + +msgid "Calculation complete" +msgstr "" + +msgid "Calibrate" +msgstr "" + +msgid "Can be used for different fps between external subtitles and video." +msgstr "" + +msgid "Cancel" +msgstr "ยกเลิก" + +msgid "Cannot determine" +msgstr "" + +msgid "Cannot find any signal ..., aborting !" +msgstr "" + +msgid "Cannot move files on a different disk or system to the trash can" +msgstr "" + +msgid "Cannot move to trash can" +msgstr "" + +msgid "Capacity: " +msgstr "ความจุ:" + +msgid "Card" +msgstr "การ์ด" + +msgid "Cascade PiP" +msgstr "" + +msgid "Center DVB subtitles" +msgstr "" + +msgid "Center time-labels and remove date" +msgstr "" + +msgid "Change bouquets in quickzap" +msgstr "เปลี่ยนกลุ่มรายการเมื่อย้ายช่อง" + +msgid "Change pin code" +msgstr "เปลี่ยนรหัส" + +#, fuzzy +msgid "Change recording (duration)" +msgstr "เปลี่ยนแปลงการบันทึก (ช่วงเวลา)" + +#, fuzzy +msgid "Change recording (endtime)" +msgstr "เปลี่ยนแปลงการบันทึก (เวลาสิ้นสุด)" + +msgid "Change repeat and delay settings?" +msgstr "" + +msgid "Change service PIN" +msgstr "" + +msgid "Change service PINs" +msgstr "" + +msgid "Change setup PIN" +msgstr "" + +msgid "Change step size" +msgstr "เปลี่ยน Step" + +msgid "Change timer" +msgstr "" + +msgid "Changelog" +msgstr "" + +msgid "Channel" +msgstr "ช่อง" + +#, fuzzy +msgid "Channel list type" +msgstr "เมนูช่องรายการ" + +msgid "Channel not in services list" +msgstr "ช่องนี้ไม่มีการให้บริการ" + +#, fuzzy +msgid "Channel selection" +msgstr "เลือกช่องรายการ" + +msgid "Channel:" +msgstr "ช่องรายการ:" + +msgid "Channellist menu" +msgstr "เมนูช่องรายการ" + +msgid "Chap." +msgstr "ตอน" + +msgid "Chapter" +msgstr "ตอนที่" + +msgid "Chapter:" +msgstr "ตอนที่:" + +msgid "Check" +msgstr "ตรวจสอบ" + +msgid "Check the internet connection" +msgstr "" + +msgid "Check the internet connection again" +msgstr "" + +#, fuzzy +msgid "Checking filesystem..." +msgstr "กำลังตรวจสอบระบบไฟล์..." + +msgid "Checking the internet connection" +msgstr "" + +#, python-format +msgid "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" +msgstr "" + +msgid "Children/Youth" +msgstr "" + +msgid "Choose which tuner to configure." +msgstr "" + +msgid "Circular left" +msgstr "วนซ้าย" + +msgid "Circular right" +msgstr "วนขวา" + +msgid "Cleanup" +msgstr "Cleanup" + +msgid "Clear" +msgstr "" + +msgid "Clear before scan" +msgstr "ลบข้อมูลเดิมก่อนค้นหา" + +msgid "Clear fixed" +msgstr "" + +msgid "Clear log" +msgstr "Clear log" + +#, fuzzy +msgid "Clear playlist" +msgstr "ล้างสารบัญรายการ" + +msgid "Close" +msgstr "ปิด" + +msgid "Close PiP on exit" +msgstr "" + +msgid "Close title selection" +msgstr "ปิดหน้าเลือกชื่อเรื่อง" + +msgid "Code rate HP" +msgstr "" + +msgid "Code rate LP" +msgstr "" + +msgid "Coderate HP" +msgstr "Coderate HP" + +msgid "Coderate LP" +msgstr "Coderate LP" + +msgid "Collection name" +msgstr "ชื่อคอลเลคชั่น" + +msgid "Collection settings" +msgstr "ตั้งค่าคอลเลคชั่น" + +#, fuzzy +msgid "Color format" +msgstr "ระบบสี" + +msgid "Command execution..." +msgstr "กำลังทำตามสั่ง..." + +msgid "Command order" +msgstr "เรียงลำดับคำสั่ง" + +msgid "Common Interface" +msgstr "อินเตอร์เฟซพื้นฐาน" + +#, fuzzy +msgid "Common Interface assignment" +msgstr "กำหนดอินเตอร์เฟซพื้นฐาน" + +msgid "Communication" +msgstr "ติดต่อสื่อสาร" + +#, fuzzy +msgid "Compact flash" +msgstr "Compact Flash" + +msgid "Complete" +msgstr "สำเร็จ" + +msgid "Complex (allows mixing audio tracks and aspects)" +msgstr "ซับซ้อน (ยอมให้มีเสียงและสัดส่วนภาพที่หลากหลาย)" + +msgid "Composition of the recording filenames" +msgstr "" + +#, fuzzy +msgid "Configuration mode" +msgstr "โหมดการตั้งค่า" + +#, fuzzy, python-format +msgid "Configuration mode: %s" +msgstr "โหมดการตั้งค่า" + +#, fuzzy +msgid "Configuration..." +msgstr "ตั้งค่าเครือข่าย..." + +msgid "Configure an additional delay to improve external subtitle synchronisation." +msgstr "" + +msgid "Configure an additional delay to improve subtitle synchronisation." +msgstr "" + +msgid "Configure for how long the infobar will remain visible after activation." +msgstr "" + +msgid "Configure for how many minutes finished events should remain visible in the EPG. Useful when you need information about an event which has just finished, or has been delayed." +msgstr "" + +msgid "Configure how recording filenames are constructed." +msgstr "" + +msgid "Configure how the fan should operate" +msgstr "" + +msgid "Configure if and how crypto icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how long the latest service in the PiP will be remembered." +msgstr "" + +msgid "Configure if and how service type icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how wide columns will be shown in the channel selection list." +msgstr "" + +msgid "Configure if service picons will be shown in the channel selection list." +msgstr "" + +msgid "Configure interface" +msgstr "ตั้งค่าอินเตอร์เฟซ" + +msgid "Configure nameservers" +msgstr "ตั้งค่า Nameservers" + +msgid "Configure on which devices the background delete option should be used." +msgstr "" + +#, fuzzy +msgid "Configure remote control type" +msgstr "ชนิดการควบคุมอายุ" + +msgid "Configure the DiSEqC mode for this LNB." +msgstr "" + +#, fuzzy +msgid "Configure the IP address." +msgstr "ตั้งค่าอินเตอร์เฟซ" + +msgid "Configure the aspect ratio of the screen." +msgstr "" + +msgid "Configure the behavior of the 'pause and ok' key when movie playback is already paused." +msgstr "" + +#, fuzzy +msgid "Configure the behavior when movie playback is manually stopped." +msgstr "เมื่อภาพยนต์หยุดเล่นให้" + +#, fuzzy +msgid "Configure the behavior when movie playback is started." +msgstr "เมื่อภาพยนต์เริ่มเล่นให้" + +msgid "Configure the behavior when reaching the end of a movie, during movie playback." +msgstr "" + +msgid "Configure the border width of the subtitles. The dark border makes the subtitles easier to read on a light background." +msgstr "" + +msgid "Configure the brightness level of the front panel display during standby." +msgstr "" + +msgid "Configure the brightness level of the front panel display." +msgstr "" + +msgid "Configure the color of the external subtitles, alternative (normal in white, italic in yellow, bold in cyan, underscore in green), white or yellow." +msgstr "" + +msgid "Configure the color of the teletext subtitles." +msgstr "" + +msgid "Configure the contrast level of the front panel display." +msgstr "" + +msgid "Configure the cursor behaviour in the channel selection list. When opening the channel selection list you can keep on the current service or already select up/down and you are able to revert the B+/B- buttons." +msgstr "" + +msgid "Configure the duration in hours the receiver should go to standby when the receiver is not controlled." +msgstr "" + +msgid "Configure the duration in minutes for the screensaver." +msgstr "" + +msgid "Configure the duration in minutes for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +msgstr "" + +msgid "Configure the duration when the receiver should go to shut down in case the receiver is in standby mode." +msgstr "" + +msgid "Configure the first audio language (highest priority)." +msgstr "" + +msgid "Configure the first subtitle language (highest priority)." +msgstr "" + +msgid "Configure the font size of the subtitles." +msgstr "" + +msgid "Configure the fourth audio language." +msgstr "" + +#, fuzzy +msgid "Configure the fourth subtitle language." +msgstr "เลือกซับไตเติ้ลต่อไป" + +msgid "Configure the function of a long press on the power button." +msgstr "" + +msgid "Configure the function of a short press on the power button." +msgstr "" + +msgid "Configure the function of the '0' button do when PIP is active." +msgstr "" + +#, fuzzy +msgid "Configure the gateway." +msgstr "ตั้งค่าอินเตอร์เฟซ" + +msgid "Configure the general audio delay of Dolby Digital sound tracks." +msgstr "" + +msgid "Configure the general audio delay of stereo sound tracks." +msgstr "" + +msgid "Configure the hard disk drive to go to standby after the specified idle time." +msgstr "" + +msgid "Configure the horizontal alignment of the subtitles." +msgstr "" + +msgid "Configure the initial fast forward speed. When you press the fast forward button, winding will start at this speed." +msgstr "" + +msgid "Configure the initial rewind speed. When you press the rewind button, winding will start at this speed." +msgstr "" + +msgid "Configure the latitude of your location." +msgstr "" + +msgid "Configure the longitude of your location." +msgstr "" + +msgid "Configure the minimum amount of disk space to be available for recordings. When the amount of space drops below this value, deleted items will be removed from the trash can." +msgstr "" + +#, fuzzy +msgid "Configure the nameserver (DNS)." +msgstr "ตั้งค่า Nameservers" + +#, fuzzy +msgid "Configure the netmask." +msgstr "ตั้งค่าอินเตอร์เฟซ" + +msgid "Configure the number of days after which items are automaticaly removed from the trash can." +msgstr "" + +msgid "Configure the number of days old timers are kept before they are automatically removed from the timer list." +msgstr "" + +msgid "Configure the offline decoding delay in milliseconds. The configured delay is observed at each control word parity change." +msgstr "" + +msgid "Configure the possible fast forward speeds." +msgstr "" + +msgid "Configure the possible rewind speeds." +msgstr "" + +msgid "Configure the primary EPG language." +msgstr "" + +msgid "Configure the refresh rate of the screen." +msgstr "" + +msgid "Configure the screen resolution in PC output mode." +msgstr "" + +msgid "Configure the second audio language." +msgstr "" + +#, fuzzy +msgid "Configure the second subtitle language." +msgstr "เลือกซับไตเติ้ลต่อไป" + +msgid "Configure the secondary EPG language." +msgstr "" + +msgid "Configure the sharpness of the video scaling." +msgstr "" + +msgid "Configure the skip time interval for the '1'/'3' buttons." +msgstr "" + +msgid "Configure the skip time interval for the '4'/'6' buttons." +msgstr "" + +msgid "Configure the skip time interval for the '7'/'9' buttons." +msgstr "" + +#, fuzzy +msgid "Configure the slow motion speeds." +msgstr "ระดับของความช้า" + +msgid "Configure the source of the frontend data as shown on the infobars. 'Settings' is as stored on the settings. 'Tuner' is as reported by the tuner." +msgstr "" + +msgid "Configure the speed of the background deletion process. Lower speed will consume less hard disk drive performance." +msgstr "" + +msgid "Configure the speed of the fan" +msgstr "" + +msgid "Configure the subtitle delay when timing information is not available." +msgstr "" + +msgid "Configure the third audio language." +msgstr "" + +#, fuzzy +msgid "Configure the third subtitle language." +msgstr "เลือกซับไตเติ้ลต่อไป" + +msgid "Configure the transparency of the OSD." +msgstr "" + +msgid "Configure the transparency of the black background of graphical DVB subtitles." +msgstr "" + +#, fuzzy +msgid "Configure the tuner mode." +msgstr "โหมดการตั้งค่า" + +msgid "Configure the type of status indication icons shown in the movielist." +msgstr "" + +msgid "Configure the vertical position of the subtitles, measured from the bottom of the screen." +msgstr "" + +msgid "Configure the video output mode (or resolution)." +msgstr "" + +msgid "Configure the way in which the receiver changes channels." +msgstr "" + +msgid "Configure where completed timers show up in the timer list." +msgstr "" + +msgid "Configure whether (and for how long) a second infobar will be shown when OK is pressed twice. The second infobar contains additional information about the current channel." +msgstr "" + +msgid "Configure whether multi channel sound tracks should be downmixed to stereo." +msgstr "" + +msgid "Configure whether or not an icon should be shown when your motorized dish is moving." +msgstr "" + +msgid "Configure which access level to use for the configuration menu. Expert level gives access to all items." +msgstr "" + +msgid "Configure which color format should be used on the SCART output." +msgstr "" + +msgid "Configure which tuner for recordings will be preferred, when more than one tuner is available." +msgstr "" + +msgid "Configure which tuner type will be preferred, when the same service is available on different types of tuners." +msgstr "" + +msgid "Configure which tuner will be preferred, when more than one tuner is available. If set to 'auto' the system will give priority to the tuner having the lowest number of channels/satellites." +msgstr "" + +msgid "Configure your internal LAN" +msgstr "ตั้งค่าการ์แลนในเครื่อง" + +msgid "Configure your network again" +msgstr "ตั้งเครือข่ายอีกครั้ง" + +msgid "Configure your network settings, and press OK to start the scan" +msgstr "" + +msgid "Configure your wireless LAN again" +msgstr "ตั้งค่าเครือข่ายไร้สายอีกครั้ง" + +msgid "Configures which video output connector will be used." +msgstr "" + +msgid "Configuring" +msgstr "กำลังตั้งค่า" + +msgid "Conflicting timer" +msgstr "ตารางเวลาซ้ำ" + +msgid "Connect" +msgstr "เชื่อมต่อ" + +#, fuzzy +msgid "Connect to a wireless network" +msgstr "เชื่อมต่อกับเครือข่ายไร้สาย" + +msgid "Connected satellites" +msgstr "" + +msgid "Connected to" +msgstr "เชื่อมต่อแล้วกับ" + +msgid "Connected!" +msgstr "เชื่อมต่อแล้ว!" + +msgid "Constellation" +msgstr "Constellation" + +msgid "Content does not fit on DVD!" +msgstr "เนื้อหาเกินความจุแผ่นดีวีดี" + +msgid "Continue" +msgstr "ทำต่อ" + +msgid "Continue in background" +msgstr "ทำต่อแบบฉากหลัง" + +#, fuzzy +msgid "Continue playback" +msgstr "เล่นต่อเนื่อง" + +msgid "Continue playing" +msgstr "เล่นต่อเนื่อง" + +msgid "Continues play (loop)" +msgstr "" + +msgid "Contrast" +msgstr "ความเข้ม" + +msgid "Convert ext3 filesystem to ext4" +msgstr "" + +msgid "Convert ext3 to ext4" +msgstr "" + +msgid "Converting ext3 to ext4..." +msgstr "" + +msgid "Copy" +msgstr "" + +msgid "Could not connect to receiver .NFI image feed server:" +msgstr "" + +msgid "Could not find installed channel list." +msgstr "" + +#, fuzzy +msgid "Could not load medium! No disc inserted?" +msgstr "โหลดไม่ได้ ยังไม่ได้ใส่แผ่นหรือเปล่า?" + +msgid "Could not open Picture in Picture" +msgstr "" + +#, fuzzy, python-format +msgid "Could not record due to conflicting timer %s" +msgstr "ไม่สามารถบันทึกได้ เนื่องจากเวลาซ้อนกับรายการ %s" + +#, fuzzy, python-format +msgid "Could not record due to invalid service %s" +msgstr "ไม่สามารถบันทึกได้ เนื่องจากเวลาซ้อนกับรายการ %s" + +msgid "Create DVD-ISO" +msgstr "สร้างแผ่นดีวีดีแบบ ISO" + +msgid "Create more detailed crash log" +msgstr "" + +#, python-format +msgid "Creating directory %s failed." +msgstr "ไม่สามารถสร้างโฟลเดอร์ %s ได้" + +#, fuzzy +msgid "Creating filesystem" +msgstr "กำลังตรวจสอบระบบไฟล์..." + +msgid "Creating partition" +msgstr "" + +msgid "Croatian" +msgstr "ภาษาโคเอเชีย" + +msgid "Current CEC address" +msgstr "" + +msgid "Current device: " +msgstr "" + +msgid "Current event EPG" +msgstr "" + +#, python-format +msgid "Current mode: %s \n" +msgstr "" + +msgid "Current settings:" +msgstr "ตั้งค่าปัจจุบัน:" + +#, fuzzy +msgid "Current transponder" +msgstr "ทรานสปอนเดอร์ปัจจุบัน" + +msgid "Current value: " +msgstr "ค่าปัจจุบัน:" + +msgid "Current version:" +msgstr "เวอร์ชั่นปัจจุบัน:" + +msgid "Currently installed image" +msgstr "" + +msgid "Currently the commit log cannot be retrieved - please try later again" +msgstr "" + +#, fuzzy +msgid "Custom skip time for '1'/'3' buttons" +msgstr "ตั้งเวลาข้ามสำหรับปุ่ม '1'/'3'" + +#, fuzzy +msgid "Custom skip time for '4'/'6' buttons" +msgstr "ตั้งเวลาข้ามสำหรับปุ่ม '4'/'6'" + +#, fuzzy +msgid "Custom skip time for '7'/'9' buttons" +msgstr "ตั้งเวลาข้ามสำหรับปุ่ม '7'/'9'" + +msgid "Customize" +msgstr "ปรับแต่ง" + +msgid "Customize channel list cursor behavior" +msgstr "" + +msgid "Cut" +msgstr "ตัด" + +msgid "Cutlist editor..." +msgstr "ตัดต่อรายการ..." + +msgid "Czech" +msgstr "ภาษาเชค" + +msgid "D" +msgstr "D" + +msgid "DHCP" +msgstr "DHCP" + +#, fuzzy +msgid "DMM advanced" +msgstr "ขั้นสูง" + +msgid "DMM normal" +msgstr "" + +msgid "DUAL LAYER DVD" +msgstr "" + +msgid "DVB subtitle black transparency" +msgstr "" + +msgid "DVB-C" +msgstr "" + +msgid "DVB-C ANNEX C" +msgstr "" + +msgid "DVB-S" +msgstr "DVB-S" + +msgid "DVB-S2" +msgstr "DVB-S2" + +msgid "DVB-T" +msgstr "" + +msgid "DVB-T2" +msgstr "" + +msgid "DVD data format" +msgstr "" + +#, fuzzy +msgid "DVD file browser" +msgstr "ดูแฟ้มในดีวีดี" + +msgid "DVD media toolbox" +msgstr "เครื่องมือจัดการดีวีดี" + +#, fuzzy +msgid "DVD player" +msgstr "เครื่องเล่นดีวีดี" + +#, fuzzy +msgid "DVD titlelist" +msgstr "รายการบนแผ่นดีวีดี" + +msgid "Danish" +msgstr "ภาษาเดนมาร์ก" + +msgid "Date" +msgstr "วันที่" + +#, fuzzy +msgid "Date/time input" +msgstr "ป้อนวัน/เวลา" + +#, fuzzy +msgid "Deep standby" +msgstr "Deep Standby" + +msgid "Default" +msgstr "ค่าเริ่มต้น" + +msgid "Default movie location" +msgstr "" + +#, fuzzy +msgid "Default settings" +msgstr "ตั้งค่าเริ่มต้น" + +msgid "Delay before key repeat starts:" +msgstr "" + +msgid "Delay for external subtitles" +msgstr "" + +msgid "Delete" +msgstr "ลบ" + +msgid "Delete entry" +msgstr "ลบรายการ" + +msgid "Delete failed!" +msgstr "ลบไม่ได้!" + +#, fuzzy +msgid "Delete file" +msgstr "ลบไฟล์" + +#, fuzzy +msgid "Delete playlist entry" +msgstr "ลบรายการนี้" + +#, fuzzy +msgid "Delete saved playlist" +msgstr "ลบรายการสารบัญ" + +msgid "Delete timer" +msgstr "" + +#, fuzzy +msgid "Delete..." +msgstr "ลบ..." + +msgid "Deleted" +msgstr "" + +msgid "Deleted items" +msgstr "" + +msgid "Depth" +msgstr "" + +msgid "Descramble http streams" +msgstr "" + +msgid "Description" +msgstr "รายละเอียด" + +msgid "Deselect" +msgstr "ไม่เลือก" + +msgid "Details for plugin: " +msgstr "" + +msgid "Detected HDD:" +msgstr "ฮาร์ดไดรฟ์ที่พบ:" + +msgid "Detected NIMs:" +msgstr "NIMs ที่พบ:" + +msgid "Devicename:" +msgstr "" + +msgid "Devide" +msgstr "" + +msgid "DiSEqC" +msgstr "DiSEqC" + +msgid "DiSEqC 1.0 command" +msgstr "" + +msgid "DiSEqC 1.1 command" +msgstr "" + +msgid "DiSEqC 1.1 repeats" +msgstr "" + +msgid "DiSEqC A/B" +msgstr "DiSEqC A/B" + +msgid "DiSEqC A/B/C/D" +msgstr "DiSEqC A/B/C/D" + +msgid "DiSEqC mode" +msgstr "DiSEqC mode" + +#, fuzzy, python-format +msgid "DiSEqC port %s: %s" +msgstr "DiSEqC repeats" + +#, fuzzy +msgid "DiSEqC-tester settings" +msgstr "ตั้งค่า DiSEqC-Tester" + +msgid "Dialing:" +msgstr "กำลังโทร:" + +msgid "Digital contour removal" +msgstr "Digital contour removal" + +msgid "Direct playback of linked titles without menu" +msgstr "เล่นทันที ไม่ต้องแสดงเมนู" + +msgid "Directory" +msgstr "" + +#, fuzzy, python-format +msgid "Directory %s does not exist." +msgstr "ไม่พบโฟล์เดอร์ %s ในระบบ" + +#, python-format +msgid "Directory %s nonexistent." +msgstr "" + +msgid "Directory browser" +msgstr "ดูโฟล์เดอร์" + +#, python-format +msgid "Directory contains %d file(s) and %d sub-directories.\n" +msgstr "" + +#, fuzzy, python-format +msgid "Directory contains %s and %s." +msgstr "ไม่พบโฟล์เดอร์ %s ในระบบ" + +msgid "Disable" +msgstr "ไม่ใช้งาน" + +msgid "Disable Picture in Picture" +msgstr "ไม่ใช้งานภาพซ้อนภาพ" + +msgid "Disable background scanning" +msgstr "" + +msgid "Disable timer" +msgstr "" + +msgid "Disabled" +msgstr "ไม่ใช้งาน" + +msgid "Disconnect" +msgstr "ตัดการเชื่อมต่อ" + +msgid "Disk space to reserve for recordings (in GB)" +msgstr "" + +msgid "Display 16:9 content as" +msgstr "แสดงรายการ 16:9 แบบ" + +msgid "Display 4:3 content as" +msgstr "แสดงรายการ 4:3 แบบ" + +msgid "Display >16:9 content as" +msgstr "แสดงรายการ >16:9 แบบ" + +#, fuzzy +msgid "Display and userinterface" +msgstr "การแสดงผลและส่วนติดต่อผู้ใช้" + +msgid "Display message before playing next movie" +msgstr "" + +#, fuzzy +msgid "Display setup" +msgstr "ตั้งค่าการแสดงผล" + +#, fuzzy +msgid "Do not change" +msgstr "ไม่ต้องเปลี่ยน" + +#, fuzzy +msgid "Do not record" +msgstr "ไม่ต้องบันทึก" + +#, fuzzy +msgid "Do nothing" +msgstr "ไม่ต้องทำอะไร" + +msgid "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" +msgstr "" +"ท่านแน่ใจหรือไม่ที่จะตรวจสอบระบบไฟล์?\n" +"เนื่องจากจะใช้เวลานานมากกว่าจะแล้วเสร็จ!" + +msgid "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" +msgstr "" + +#, python-format +msgid "Do you really want to delete %s?" +msgstr "ท่านต้องการที่จะลบ %s ออกจากระบบหรือไม่?" + +#, python-format +msgid "" +"Do you really want to download\n" +"the plugin \"%s\"?" +msgstr "" +"ท่านต้องการที่จะโหลด\n" +"Plugin \"%s\" นี้หรือไม่?" + +msgid "Do you really want to exit?" +msgstr "" + +msgid "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" +msgstr "" + +#, fuzzy, python-format +msgid "" +"Do you really want to remove\n" +"the plugin \"%s\"?" +msgstr "" +"ท่านต้องการที่จะโหลด\n" +"Plugin \"%s\" นี้หรือไม่?" + +#, python-format +msgid "Do you really want to remove directory %s from the disk?" +msgstr "ท่านต้องการที่จะลบโฟล์เดอร์ %s ออกจากระบบหรือไม่?" + +#, python-format +msgid "Do you really want to remove your bookmark of %s?" +msgstr "ท่านต้องการที่ลบบุ๊คมาร์ค %s ออกไปหรือไม่?" + +msgid "Do you want this?" +msgstr "" + +msgid "Do you want to burn this collection to DVD medium?" +msgstr "ท่านต้องการที่จะเขียนคอลเล็คชั่นนี้ลงแผ่นดีวีดีหรือไม่?" + +msgid "Do you want to do a service scan?" +msgstr "ท่านต้องการค้นหารายการหรือไม่?" + +msgid "Do you want to do another manual service scan?" +msgstr "ท่านต้องการที่จะทำการค้นหารายการอื่นๆ ต่อหรือไม่?" + +#, python-format +msgid "Do you want to download the image to %s ?" +msgstr "" + +#, fuzzy +msgid "Do you want to install a channel list?" +msgstr "ท่านต้องการที่จะติดตั้งส่วนประกอบนี้:\n" + +msgid "Do you want to install the package:\n" +msgstr "ท่านต้องการที่จะติดตั้งส่วนประกอบนี้:\n" + +msgid "Do you want to play DVD in drive?" +msgstr "ท่านต้องการที่จะเล่นแผ่นดีวีดีนี้หรือไม่?" + +msgid "Do you want to preview this DVD before burning?" +msgstr "ดูเนื้อหาดีวีดีก่อนเขียนลงแผ่นหรือไม่?" + +msgid "Do you want to reboot your receiver?" +msgstr "" + +msgid "Do you want to remove the package:\n" +msgstr "ท่านต้องการที่จะลบส่วนประกอบนี้:\n" + +msgid "Do you want to restore your settings?" +msgstr "ท่านต้องการที่จะนำการตั้งค่าต่างๆ กลับมาใช้หรือไม่?" + +msgid "Do you want to resume this playback?" +msgstr "ต้องการเล่นต่อจากที่เดิมหรือไม่?" + +#, fuzzy, python-format +msgid "Do you want to update your receiver to %s?" +msgstr "ท่านต้องการที่จะนำการตั้งค่าต่างๆ กลับมาใช้หรือไม่?" + +msgid "Do you want to update your receiver?" +msgstr "" + +msgid "Do you want to upgrade the package:\n" +msgstr "ยืนยันจะปรับปรุงส่วนประกอบนี้:\n" + +msgid "Don't stop current event but disable coming events" +msgstr "คงรายการปัจจุบันไว้ แต่ให้ยกเลิกรายการต่อไปแทน" + +#, fuzzy, python-format +msgid "Done - Installed, upgraded or removed %d package (%s)" +msgid_plural "Done - Installed, upgraded or removed %d packages (%s)" +msgstr[0] "เสร็จแล้ว - ติดตั้งปรับปรุงหรือลบ %d รายการ พบข้อผิดพลาด %d รายการ" +msgstr[1] "เสร็จแล้ว - ติดตั้งปรับปรุงหรือลบ %d รายการ พบข้อผิดพลาด %d รายการ" + +msgid "Download" +msgstr "ดาวน์โหลด" + +#, python-format +msgid "Download %s from server" +msgstr "" + +msgid "Download .NFI-files for USB-flasher" +msgstr "ดาวน์โหลด .NFI สำหรับ USB-Flasher" + +#, fuzzy +msgid "Download plugins" +msgstr "ดาวน์โหลด Plugins" + +msgid "Downloadable new plugins" +msgstr "Plugin ใหม่ที่ดาวน์โหลดได้" + +msgid "Downloadable plugins" +msgstr "Plugin ที่ดาวน์โหลดได้" + +msgid "Downloading" +msgstr "กำลังดาวน์โหลด" + +msgid "Downloading plugin information. Please wait..." +msgstr "กำลังดาวน์โหลดข้อมูล Plugin กรุณารอสักครู่..." + +msgid "Dutch" +msgstr "ภาษาดัช" + +msgid "Dynamic contrast" +msgstr "Dynamic contrast" + +msgid "E" +msgstr "E" + +msgid "EPG" +msgstr "" + +msgid "EPG language selection 1" +msgstr "" + +msgid "EPG language selection 2" +msgstr "" + +#, fuzzy +msgid "EPG selection" +msgstr "เลือกผังรายการ" + +msgid "EPG settings" +msgstr "" + +#, python-format +msgid "ERROR - failed to scan (%s)!" +msgstr "ผิดพลาด - การค้นหา (%s) ล้มเหลว" + +msgid "East" +msgstr "ตะวันออก" + +msgid "East limit set" +msgstr "" + +msgid "Edit" +msgstr "แก้ไข" + +msgid "Edit DNS" +msgstr "แก้ไข DNS" + +msgid "Edit bouquets list" +msgstr "" + +msgid "Edit chapters of current title" +msgstr "แก้ไขตอนที่ของเรื่องปัจจุบัน" + +msgid "Edit services list" +msgstr "แก้ไขสารบัญบริการ" + +msgid "Edit settings" +msgstr "แก้ไขการตั้งค่า" + +#, fuzzy +msgid "Edit the nameserver configuration of your receiver.\n" +msgstr "ออกจากการตั้งค่า Nameserver" + +msgid "Edit the network configuration of your receiver.\n" +msgstr "" + +msgid "Edit timer" +msgstr "" + +msgid "Edit title" +msgstr "แก้ไขชื่อเรื่อง" + +msgid "Edit upgrade source url." +msgstr "แก้ไข URL ของเซอร์พเวอร์เพื่อปรับปรุง" + +msgid "Education/Science/..." +msgstr "" + +msgid "Electronic Program Guide" +msgstr "ผังรายการ (EPG)" + +msgid "Enable" +msgstr "เปิดใช้" + +msgid "Enable 'neutrino' style channel select controlling" +msgstr "" + +msgid "Enable 'neutrino' style zap controlling" +msgstr "" + +msgid "Enable 5V for active antenna" +msgstr "เปิดใช้งาน 5V สำหรับเสาอากาศนี้" + +msgid "Enable EIT EPG" +msgstr "" + +msgid "Enable MHW EPG" +msgstr "" + +msgid "Enable Netmed EPG" +msgstr "" + +msgid "Enable OK for channel selection" +msgstr "" + +msgid "Enable ViaSat EPG" +msgstr "" + +msgid "Enable Virgin EPG" +msgstr "" + +msgid "Enable Wake On LAN" +msgstr "" + +msgid "Enable auto fast scan" +msgstr "" + +#, fuzzy +msgid "Enable bouquet selection in multi-EPG" +msgstr "แก้ไขกลุ่มรายการ" + +msgid "Enable freesat EPG" +msgstr "" + +msgid "Enable multiple bouquets" +msgstr "เปิดใช้หลายกลุ่มรายการ" + +msgid "Enable parental control" +msgstr "เปิดใช้ส่วนควบคุมอายุรับชม" + +msgid "Enable teletext caching" +msgstr "" + +msgid "Enable zapping with CH+/-, B+/-, P+/-" +msgstr "" + +msgid "Enabled" +msgstr "เปิดใช้งาน" + +msgid "Encrypted: " +msgstr "" + +msgid "Encryption" +msgstr "การเข้ารหัส" + +#, fuzzy +msgid "Encryption key" +msgstr "คีย์สำหรับเข้ารหัส" + +#, fuzzy +msgid "Encryption key type" +msgstr "ชนิดคีย์" + +msgid "Encryption:" +msgstr "การเข้ารหัส:" + +msgid "End time" +msgstr "เวลาสิ้นสุด" + +msgid "End time to ignore inactivity sleeptimer" +msgstr "" + +msgid "End time to ignore shutdown in standby" +msgstr "" + +msgid "English" +msgstr "ภาษาอังกฤษ" + +#, fuzzy +msgid "Enigma2 skin selector" +msgstr "Enigma 2 และเครือข่าย" + +msgid "Enter main menu..." +msgstr "เข้าสู่เมนูหลัก..." + +msgid "Enter pin code" +msgstr "" + +msgid "Enter the service pin" +msgstr "ป้อนรหัสบริการ" + +msgid "Equal to" +msgstr "" + +msgid "Error" +msgstr "ผิดพลาด" + +msgid "Error code" +msgstr "" + +msgid "Error executing plugin" +msgstr "เรียกใช้งาน Plugin ผิดพลาด" + +#, python-format +msgid "" +"Error: %s\n" +"Retry?" +msgstr "" +"ผิดพลาด: %s\n" +"ทำอีกครั้งหรือไม่?" + +msgid "Estonian" +msgstr "ภาษาเอสโตเนี่ยน" + +msgid "Ethernet network interface" +msgstr "" + +msgid "Event font size (relative to skin size)" +msgstr "" + +#, fuzzy +msgid "Event view" +msgstr "แสดงรายการ" + +#, fuzzy +msgid "Event view menu" +msgstr "แสดงรายการ" + +msgid "Everywhere" +msgstr "" + +msgid "Exceeds dual layer medium!" +msgstr "" + +msgid "Execution finished!!" +msgstr "เสร็จแล้ว!" + +#, fuzzy +msgid "Execution progress:" +msgstr "ความคืบหน้า:" + +msgid "Exif" +msgstr "Exif" + +msgid "Exit" +msgstr "ออก" + +msgid "Exit EPG" +msgstr "" + +msgid "Exit editor" +msgstr "ออกจากการแก้ไข" + +msgid "Exit input device selection." +msgstr "" + +msgid "Exit media player?" +msgstr "" + +#, fuzzy +msgid "Exit mediaplayer" +msgstr "ออกจากส่วนเล่นไฟล์" + +#, fuzzy +msgid "Exit movie list" +msgstr "ออกจากสารบัญภาพยนต์" + +#, fuzzy +msgid "Exit movie player?" +msgstr "ออกจากส่วนเล่นไฟล์" + +#, fuzzy +msgid "Exit nameserver configuration" +msgstr "ออกจากการตั้งค่า Nameserver" + +#, fuzzy +msgid "Exit network interface list" +msgstr "ออกจากรายการเครือข่าย" + +msgid "Exit network wizard" +msgstr "ออกจากตัวช่วยเครือข่าย" + +msgid "Exit the wizard" +msgstr "ออกจากตัวช่วย" + +msgid "Expert" +msgstr "ชำนาญ" + +msgid "Extend sleeptimer 15 minutes" +msgstr "" + +msgid "Extended Software" +msgstr "" + +msgid "Extended Software Plugin" +msgstr "" + +#, fuzzy +msgid "Extended network setup plugin..." +msgstr "Plugin สำหรับตั้งค่าเครือข่าย..." + +#, fuzzy +msgid "Extended setup..." +msgstr "ตั้งค่าส่วนเพิ่มเติม..." + +msgid "Extensions" +msgstr "ส่วนเพิ่มเติม" + +msgid "Extensions management" +msgstr "" + +msgid "External PiP" +msgstr "" + +msgid "External subtitle color" +msgstr "" + +msgid "Extra motor options" +msgstr "" + +msgid "FEC" +msgstr "FEC" + +msgid "FTA" +msgstr "" + +msgid "Factory reset" +msgstr "ตั้งค่าจากโรงงาน" + +msgid "Failed" +msgstr "ล้มเหลว" + +msgid "Failed to write /tmp/positionersetup.log: " +msgstr "" + +#, python-format +msgid "Fan %d" +msgstr "" + +#, python-format +msgid "Fan %d PWM" +msgstr "" + +#, fuzzy, python-format +msgid "Fan %d voltage" +msgstr "เพิ่ม Voltage" + +msgid "Fan operation" +msgstr "" + +msgid "Fan speed" +msgstr "" + +msgid "Fast" +msgstr "เร็ว" + +msgid "Fast DiSEqC" +msgstr "Fast DiSEqC" + +msgid "Fast Scan" +msgstr "" + +msgid "Fast epoch" +msgstr "Fast epoch" + +#, fuzzy +msgid "Fast forward speeds" +msgstr "ความเร็วในการกรอเดินหน้า" + +msgid "Favourites" +msgstr "รายการโปรด" + +msgid "File appears to be busy.\n" +msgstr "" + +msgid "Filesystem check" +msgstr "" + +msgid "Final position at" +msgstr "" + +msgid "Final position at index" +msgstr "" + +msgid "Fine movement" +msgstr "" + +msgid "Finetune" +msgstr "ปรับแบบละเอียด" + +msgid "Finished" +msgstr "จบการทำงาน" + +msgid "Finished configuring your network" +msgstr "จบการตั้งค่าเครือข่าย" + +msgid "Finished restarting your network" +msgstr "ระบบเครือข่ายพร้อมใช้งานแล้ว" + +msgid "Finnish" +msgstr "จบการทำงาน" + +msgid "Fixed" +msgstr "" + +msgid "Flash" +msgstr "แฟรช" + +msgid "Flashing failed" +msgstr "การลงอิมเมจล้มเหลว" + +msgid "Following tasks will be done after you press OK!" +msgstr "" + +msgid "Format" +msgstr "ฟอร์แมท" + +msgid "Forward volume keys" +msgstr "" + +msgid "Frame size in full view" +msgstr "เต็มหน้าจอ" + +msgid "French" +msgstr "ภาษาฝรั่งเศษ" + +msgid "Frequency" +msgstr "ความถี่" + +msgid "Frequency bands" +msgstr "แถบของความถี่" + +msgid "Frequency scan step size(khz)" +msgstr "ช่วง (step) ในการค้นหา (khz)" + +msgid "Frequency steps" +msgstr "ช่วงความถี่ (step)" + +msgid "Frequency:" +msgstr "" + +msgid "Fri" +msgstr "ศุก." + +msgid "Friday" +msgstr "วันศุกร์" + +msgid "From :" +msgstr "" + +#, python-format +msgid "Frontprocessor version: %d" +msgstr "Frontprocessor version: %d" + +msgid "Full transparency" +msgstr "" + +msgid "Fulview resulution" +msgstr "" + +msgid "Function of OK button" +msgstr "" + +msgid "Further Options" +msgstr "" + +msgid "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" +msgstr "" +"ต้องเริ่มงานโปรแกรม (GUI) ใหม่ จึงจะใช้สกินนี้ได้\n" +"ต้องการเริ่มโปรแกรมใหม่หรือไม่?" + +msgid "Gateway" +msgstr "Gateway" + +#, fuzzy +msgid "General AC3 delay" +msgstr "General AC3 Delay" + +#, fuzzy +msgid "General PCM delay" +msgstr "General PCM Delay" + +msgid "Genre" +msgstr "ชนิด" + +msgid "German" +msgstr "ภาษาเยอรมัน" + +msgid "Get latest experimental image" +msgstr "" + +msgid "Get latest release image" +msgstr "" + +msgid "Getting plugin information. Please wait..." +msgstr "กำลังโหลดข้อมูล Plugin กรุณารอสักครู่..." + +msgid "Go down the list" +msgstr "" + +msgid "Go to first movie or last item" +msgstr "" + +msgid "Go to first movie or top of list" +msgstr "" + +#, fuzzy +msgid "Go to first service" +msgstr "ย้ายไปบนสุด" + +#, fuzzy +msgid "Go to last service" +msgstr "ป้องกันบริการ" + +#, fuzzy +msgid "Go to next event" +msgstr "ย้ายลงไป" + +#, fuzzy +msgid "Go to next page of service" +msgstr "ไปบริการย่อยถัดไป" + +#, fuzzy +msgid "Go to previous event" +msgstr "ย้ายไปก่อนหน้านี้" + +#, fuzzy +msgid "Go to previous page of service" +msgstr "กลับไปยังบริการก่อนหน้า" + +msgid "Go up the list" +msgstr "" + +msgid "Goto" +msgstr "" + +msgid "Goto 0" +msgstr "ไปยัง 0" + +msgid "Goto :" +msgstr "" + +msgid "Goto X" +msgstr "" + +msgid "Goto index position" +msgstr "" + +msgid "Goto next day of events" +msgstr "" + +msgid "Goto next page of events" +msgstr "" + +msgid "Goto position" +msgstr "ไปยังตำแหน่ง" + +msgid "Goto previous day of events" +msgstr "" + +msgid "Goto previous page of events" +msgstr "" + +msgid "Goto specific date/time" +msgstr "" + +msgid "GotoX calibration" +msgstr "" + +msgid "GraphMultiEpg Settings" +msgstr "" + +msgid "Graphical Multi EPG" +msgstr "กลุ่มผังรายการหลากหลายแบบกราฟิค" + +msgid "Greek" +msgstr "ภาษากรีก" + +msgid "Green boost" +msgstr "Green boost" + +msgid "Guard interval" +msgstr "" + +msgid "HD list" +msgstr "" + +msgid "HDMI-CEC setup" +msgstr "" + +msgid "Handle standby from TV" +msgstr "" + +msgid "Handle wakeup from TV" +msgstr "" + +#, fuzzy +msgid "Hard disk" +msgstr "ฮาร์ดดิสก์" + +#, fuzzy +msgid "Hard disk setup" +msgstr "ตั้งค่าฮาร์ดดิสก์" + +#, fuzzy +msgid "Hard disk standby after" +msgstr "ให้ฮาร์ดดิสก์ standby หลังจาก" + +msgid "Harddisk" +msgstr "ฮาร์ดดิสก์" + +msgid "Hardware: " +msgstr "" + +msgid "Hebrew" +msgstr "" + +msgid "Helps setting up your dish" +msgstr "" + +msgid "Hidden network" +msgstr "" + +msgid "Hide CI messages" +msgstr "" + +msgid "Hide channel list in radio mode" +msgstr "" + +msgid "Hide known extensions" +msgstr "" + +msgid "Hide number markers" +msgstr "" + +#, fuzzy +msgid "Hide player" +msgstr "ซ่อนตัวเล่น" + +msgid "Hide zap errors" +msgstr "" + +msgid "Hierarchy info" +msgstr "" + +#, fuzzy +msgid "Hierarchy information" +msgstr "ข้อมูลลำดับชั้น" + +msgid "High bitrate support" +msgstr "รองรับข้อมูลขนาดใหญ่" + +msgid "Hold screen" +msgstr "" + +msgid "Hold till locked" +msgstr "" + +msgid "Home" +msgstr "" + +msgid "Horizontal" +msgstr "แนวนอน (H)" + +msgid "Horizontal turning speed" +msgstr "" + +msgid "How many minutes do you want to record?" +msgstr "บันทึกรายต่อไปอีกกี่นาที?" + +msgid "Hue" +msgstr "Hue" + +msgid "Hungarian" +msgstr "ภาษาฮังการี่" + +#, fuzzy +msgid "IP address" +msgstr "IP Address" + +msgid "ISO file is too large for this filesystem!" +msgstr "ไฟล์แบบ ISO มีขนาดใหญ่เกินไป!" + +msgid "ISO path" +msgstr "ISO path" + +msgid "Icons" +msgstr "" + +msgid "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." +msgstr "" +"เกิดข้อผิดพลาดในการเชื่อมต่อ\n" +"สาย scart กรุณากดปุ่ม OK " + +msgid "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." +msgstr "" +"ให้เปิดใช้งานความสว่างหรือความเข้มแบบพิเศษ เช่น ค่า \"dynamic\" ให้เปลี่ยนเป็นมาตรฐานก่อน จากนั้นปรับระดับ backlight ให้เหมาะสม รวมทั้งปรับค่าความเข้ม (contrast) ให้มากที่สุดเท่าที่จะทำได้\n" +"จากนั้นปรับค่าความสว่าง (Brightness) ให้ต่ำที่สุดเท่าที่จะเห็นความแตกต่างระหว่างสีเทาที่อยู่ติดกัน\n" +"ตอนนี้ยังไม่ต้องกังวลในส่วนของแถบสว่าง ส่วนของแถบสว่างจะถูกปรับแต่งภายหลัง\n" +"หากท่านพอใจแล้วให้กดปุ่ม OK เพื่อเข้าส่วนต่อไป" + +msgid "Image: " +msgstr "" + +#, fuzzy +msgid "Immediate shutdown" +msgstr "ปิดเครื่องทันที (Shutdown)" + +msgid "In order to record a timer, the TV was switched to the recording service!\n" +msgstr "ต้องย้ายไปยังข่องรายการอื่นเพื่อที่จะบันทึกรายการตามที่ได้ตั้งไว้\n" + +#, fuzzy +msgid "In progress" +msgstr "กำลังทำงาน" + +msgid "Inactivity Sleeptimer" +msgstr "" + +msgid "Include AIT in http streams" +msgstr "" + +msgid "Include ECM in http streams" +msgstr "" + +msgid "Include EIT in http streams" +msgstr "" + +msgid "Incorrect type service for PiP!" +msgstr "" + +msgid "Increased voltage" +msgstr "เพิ่ม Voltage" + +msgid "Index" +msgstr "อินเด็กซ์" + +msgid "Index allocated:" +msgstr "" + +msgid "Info" +msgstr "ข้อมูล" + +#, fuzzy +msgid "Info bar" +msgstr "แถบรายการ" + +#, fuzzy +msgid "Info bar timeout" +msgstr "เวลาแสดงแถบรายการ" + +msgid "Infobar frontend data source" +msgstr "" + +msgid "Information" +msgstr "ข้อมูล" + +msgid "Init" +msgstr "เตรียม" + +#, fuzzy +msgid "Initial fast forward speed" +msgstr "ความเร็วในการกรอเดินหน้า" + +msgid "Initial location in new timers" +msgstr "" + +msgid "Initial lock ratio" +msgstr "" + +#, fuzzy +msgid "Initial rewind speed" +msgstr "ความเร็วในการย้อน" + +msgid "Initial signal quality" +msgstr "" + +msgid "Initial signal quality:" +msgstr "" + +msgid "Initialization" +msgstr "" + +msgid "Initialize" +msgstr "เตรียมการ" + +msgid "Initializing storage device..." +msgstr "" + +msgid "Input" +msgstr "นำเข้า (Input)" + +msgid "Input device setup" +msgstr "" + +msgid "Input devices" +msgstr "" + +msgid "Install" +msgstr "ติดตั้ง" + +msgid "Install a new image with a USB stick" +msgstr "ติดตั้งอิมเมจจาก USB เมมโมรี่" + +msgid "Install a new image with your web browser" +msgstr "ติดตั้งอิมเมจผ่านเวบ" + +#, fuzzy +msgid "Install channel list" +msgstr "รายการต่อไปในหน่วยความจำ" + +msgid "Install extensions" +msgstr "" + +msgid "Install extensions." +msgstr "ติดตั้งส่วนเพิ่มเติม" + +msgid "Install local extension" +msgstr "ติดตั้งส่วนเพิ่มเติมจากในเครื่อง" + +msgid "Install picons on" +msgstr "" + +#, fuzzy +msgid "Install softcam" +msgstr "กำลังติดตั้งซอพท์แวร์..." + +#, fuzzy +msgid "Installation has completed." +msgstr "การติดตั้งเสร็จแล้ว" + +#, fuzzy +msgid "Installation or removal has completed." +msgstr "ติดตั้งหรือลบออกเสร็จแล้ว" + +msgid "Installing" +msgstr "กำลังติดตั้ง" + +#, fuzzy +msgid "Installing software..." +msgstr "กำลังติดตั้งซอพท์แวร์..." + +#, fuzzy +msgid "Instant recording location" +msgstr "เปลี่ยนแปลงการบันทึก (ช่วงเวลา)" + +#, fuzzy +msgid "Instant recording..." +msgstr "บันทึกรายการ..." + +msgid "Interface: " +msgstr "" + +msgid "Intermediate" +msgstr "ปานกลาง" + +#, fuzzy +msgid "Internal flash" +msgstr "หน่วยความจำภายใน" + +msgid "Internal hdd only" +msgstr "" + +msgid "Interval between keys when repeating:" +msgstr "" + +#, python-format +msgid "Invalid directory selected: %s" +msgstr "โฟล์เดอร์นี้: %s ไม่ถูกต้อง" + +#, fuzzy +msgid "Invalid location" +msgstr "ปลายทางไม่ถูกต้อง" + +msgid "Invalid transponder data" +msgstr "" + +msgid "Inversion" +msgstr "Inversion" + +msgid "Invert" +msgstr "" + +msgid "Ipkg" +msgstr "Ipkg" + +#, fuzzy +msgid "Is this setting ok?" +msgstr "วิดีโอโหมดนี้ถูกต้องหรือไม่?" + +#, fuzzy +msgid "Is this video mode ok?" +msgstr "วิดีโอโหมดนี้ถูกต้องหรือไม่?" + +msgid "Italian" +msgstr "ภาษาอิตาลี่" + +msgid "Items per page " +msgstr "" + +msgid "Items per page for list screen" +msgstr "" + +#, fuzzy +msgid "Job overview" +msgstr "ดูงาน" + +msgid "Jump to beginning of list" +msgstr "" + +#, fuzzy +msgid "Jump to end of list" +msgstr "ไปส่วนรายการสุดท้าย" + +#, fuzzy +msgid "Jump to next marked position" +msgstr "ไปส่วนต่อไป" + +#, fuzzy +msgid "Jump to previous marked position" +msgstr "ไปส่วนก่อนหน้า" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect) +#, fuzzy +msgid "Just scale" +msgstr "ขยายเต็มจอ" + +msgid "Keep service" +msgstr "" + +#, fuzzy +msgid "Kernel version: " +msgstr "เวอร์ชั่นใหม่:" + +msgid "Keyboard" +msgstr "แป้นพิมพ์" + +#, fuzzy +msgid "Keyboard map" +msgstr "การวางแป้นพิมพ์" + +#, fuzzy +msgid "Keyboard setup" +msgstr "ตั้งค่าแป้นพิมพ์" + +#, fuzzy +msgid "LAN adapter" +msgstr "แลนอะแด๊ปเตอร์" + +msgid "LAN connection" +msgstr "" + +msgid "LNB" +msgstr "LNB" + +msgid "Language" +msgstr "ภาษา" + +msgid "Language selection" +msgstr "เลือกภาษา" + +msgid "Last config" +msgstr "ค่าที่ตั้งล่าสุด" + +msgid "Last speed" +msgstr "ความเร็วล่าสุด" + +msgid "Last upgrade: " +msgstr "" + +msgid "Latest Commits" +msgstr "" + +msgid "Latitude" +msgstr "ละติจูด" + +msgid "Latvian" +msgstr "ภาษาลัทเวีย" + +#, fuzzy +msgid "Leave DVD player?" +msgstr "ออกจากการเล่นดีวีดี" + +msgid "Left" +msgstr "ซ้าย" + +msgid "Left from servicename" +msgstr "" + +msgid "Leisure hobbies" +msgstr "" + +#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term. +msgid "Letterbox" +msgstr "Letterbox" + +msgid "Letterbox zoom" +msgstr "" + +#, fuzzy +msgid "Limit character set for recording filenames" +msgstr "จำกัดความยาวของไฟล์" + +msgid "Limit east" +msgstr "จำกัดทางตะวันออก" + +msgid "Limit the characters that can be used in recording filenames to (7 bit) ascii. This ensures compatibility with operating systems or file systems with limited character sets." +msgstr "" + +msgid "Limit west" +msgstr "จำกัดทางตะวันตก" + +msgid "Limits cancelled" +msgstr "" + +msgid "Limits enabled" +msgstr "" + +msgid "Limits off" +msgstr "ไม่จำกัด" + +msgid "Limits on" +msgstr "จำกัดที่" + +#, fuzzy +msgid "Link quality:" +msgstr "คุณภาพการเชื่อมต่อ:" + +msgid "Link:" +msgstr "เชื่อมต่อ:" + +msgid "Linked titles with a DVD menu" +msgstr "เชื่อมโดยชื่อเรื่องกับเมนูดีวีดี" + +msgid "List EPG functions..." +msgstr "" + +msgid "List available networks" +msgstr "" + +msgid "List mode" +msgstr "" + +#, fuzzy +msgid "List of storage devices" +msgstr "อุปกรณ์สำหรับบันทึก" + +msgid "List type" +msgstr "" + +#, python-format +msgid "List version %d, found %d channel" +msgid_plural "List version %d, found %d channels" +msgstr[0] "" +msgstr[1] "" + +#, fuzzy +msgid "Listen to the radio..." +msgstr "ฟังวิทยุ..." + +msgid "Lists reloaded!" +msgstr "" + +msgid "Lithuanian" +msgstr "ภาษาลิธูเนี่ยน" + +msgid "Load" +msgstr "โหลด" + +msgid "Load Length of Movies in Movielist" +msgstr "" + +#, fuzzy +msgid "Load length of movies in movie list" +msgstr "โหลดความยาวของภาพยนต์" + +#, fuzzy +msgid "Load playlist" +msgstr "โหลดสารบัญรายการ" + +#, fuzzy +msgid "Local network" +msgstr "Local Network" + +msgid "Location" +msgstr "สถานที่" + +msgid "Location for instant recordings" +msgstr "" + +msgid "Lock ratio" +msgstr "" + +msgid "Lock:" +msgstr "Lock:" + +msgid "Log results to harddisk" +msgstr "บันทึกผลลัพธ์ลงฮาร์ดไดรฟ์" + +msgid "Long filenames" +msgstr "" + +#, fuzzy +msgid "Long key press" +msgstr "กดปุ่มนานนาน" + +msgid "Longitude" +msgstr "ลองจิจูด" + +msgid "Loop through to" +msgstr "" + +msgid "Luxembourgish" +msgstr "" + +#, fuzzy +msgid "MMC card" +msgstr "MMC Card" + +msgid "MORE" +msgstr "เพิ่ม" + +msgid "Main menu" +msgstr "เมนูหลัก" + +msgid "Maintain old EPG data for" +msgstr "" + +msgid "Make this mark an 'in' point" +msgstr "สร้างตัวคั่นสำหรับจุด 'in'" + +msgid "Make this mark an 'out' point" +msgstr "สร้างตัวคั่นสำหรับจุด 'out'" + +msgid "Make this mark just a mark" +msgstr "ทำเป็นแค่ตัวคั่น" + +msgid "Manage extensions" +msgstr "" + +msgid "Manage your receiver's software" +msgstr "จัดการซอพท์แวร์เครื่องรับของท่าน" + +msgid "Manual" +msgstr "" + +msgid "Manual Scan" +msgstr "ค้นหาเอง" + +msgid "Manual configuration" +msgstr "" + +#, fuzzy +msgid "Manual scan" +msgstr "ค้นหาเอง" + +msgid "Manual transponder" +msgstr "ป้อนทรานสปอนเดอร์เอง" + +msgid "Manufacturer" +msgstr "ผู้ผลิต" + +#, fuzzy +msgid "Margin after recording (minutes)" +msgstr "บันทึกก่อนเวลาจริง (นาที)" + +#, fuzzy +msgid "Margin before recording (minutes)" +msgstr "บันทึกก่อนเวลาจริง (นาที)" + +msgid "Max memory positions" +msgstr "" + +#, fuzzy +msgid "Max. bitrate: " +msgstr "บิทเรท:" + +msgid "Media player" +msgstr "เล่นไฟล์" + +#, fuzzy +msgid "Media scanner" +msgstr "เล่นไฟล์" + +msgid "Medium is not a writeable DVD!" +msgstr "แผ่นดีวีดีนี้เขียนไม่ได้" + +msgid "Medium is not empty!" +msgstr "มีข้อมูลในสื่อบันทึก!" + +msgid "Memory" +msgstr "" + +msgid "Memory index" +msgstr "" + +msgid "Menu" +msgstr "เมนู" + +msgid "Message" +msgstr "ข้อความ" + +msgid "Message..." +msgstr "ข้อความ..." + +#, python-format +msgid "Minimum age %d years" +msgstr "" + +msgid "Minimum send interval" +msgstr "" + +msgid "Missing " +msgstr "" + +#, fuzzy +msgctxt "Satellite configuration mode" +msgid "Mode" +msgstr "โหมด" + +#, fuzzy +msgctxt "Video output mode" +msgid "Mode" +msgstr "โหมด" + +msgid "Model: " +msgstr "รุ่น:" + +msgid "Modulation" +msgstr "Modulation" + +msgid "Modulator" +msgstr "Modulator" + +msgid "Mon" +msgstr "จัน." + +msgid "Mon-Fri" +msgstr "จันทร์-ศุกร์" + +msgid "Monday" +msgstr "วันจันทร์" + +msgid "Mosquito noise reduction" +msgstr "Mosquito noise reduction" + +msgid "Mount" +msgstr "" + +msgid "Move" +msgstr "" + +#, fuzzy +msgid "Move PiP to main picture" +msgstr "สลับให้ PIP เต็มจอ" + +msgid "Move Picture in Picture" +msgstr "ย้ายภาพซ้อนภาพ" + +msgid "Move east" +msgstr "เคลื่อนไปทางทิศตะวันออก" + +msgid "Move to other directory" +msgstr "" + +msgid "Move to position X" +msgstr "" + +msgid "Move west" +msgstr "เคลื่อนไปทางทิศตะวันตก" + +msgid "Moved to position 0" +msgstr "" + +msgid "Moved to position at index" +msgstr "" + +msgid "Movement" +msgstr "" + +msgid "Movie List Configuration" +msgstr "" + +msgid "Movie Selection" +msgstr "" + +#, fuzzy +msgid "Movie list configuration" +msgstr "ตั้งค่า Tuner" + +msgid "Movie location" +msgstr "" + +#, fuzzy +msgid "Movie selection" +msgstr "เลือกการตั้งเวลา" + +msgid "Movie/Drama" +msgstr "" + +msgid "Movielist menu" +msgstr "เมนูรายการภาพยนต์" + +msgid "Moving" +msgstr "" + +msgid "Moving east ..." +msgstr "" + +msgid "Moving to position" +msgstr "" + +msgid "Moving west ..." +msgstr "" + +msgid "Multi EPG" +msgstr "ผังรายการแบบหลากหลาย" + +msgid "Multi-EPG bouquet selection" +msgstr "" + +msgid "Multimedia" +msgstr "มัลติมีเดีย" + +msgid "Multiple service support" +msgstr "รองรับ Multiple service" + +msgid "Multiplex" +msgstr "" + +msgid "Multisat" +msgstr "Multisat" + +msgid "Multisat all select" +msgstr "" + +msgid "Music/Ballet/Dance" +msgstr "" + +msgid "Mute" +msgstr "ปิดเสียง" + +msgid "N/A" +msgstr "ไม่ทราบ" + +msgid "NEXT" +msgstr "ต่อไป" + +msgid "NFI image flashing" +msgstr "" + +msgid "NFI image flashing completed. Press Yellow to Reboot!" +msgstr "ลงอิมเมจ NFI เรียบร้อยแล้ว กดปุ่มเหลืองเพื่อเริ่มระบบใหม่ (Reboot)" + +msgid "NIM" +msgstr "" + +msgid "NOW" +msgstr "ตอนนี้" + +msgid "NTSC" +msgstr "NTSC" + +msgid "Name" +msgstr "ชื่อ" + +msgid "Nameserver" +msgstr "Nameserver" + +#, python-format +msgid "Nameserver %d" +msgstr "Nameserver %d" + +msgid "Nameserver settings" +msgstr "ตั้งค่า Nameserver" + +#, fuzzy +msgid "Nameserver setup" +msgstr "ตั้งค่า Nameserver" + +msgid "Namespace" +msgstr "" + +msgid "Netmask" +msgstr "Netmask" + +msgid "Network" +msgstr "เครือข่าย" + +msgid "Network ID" +msgstr "" + +#, fuzzy +msgid "Network configuration..." +msgstr "ตั้งค่าเครือข่าย..." + +#, fuzzy +msgid "Network mount" +msgstr "Network Mount" + +#, fuzzy, python-format +msgid "Network mount %s" +msgstr "Network Mount" + +msgid "Network name (SSID)" +msgstr "" + +msgid "Network scan" +msgstr "ค้นหาเครือข่าย" + +msgid "Network setup" +msgstr "ตั้งค่าเครือข่าย" + +msgid "Network test" +msgstr "ทดสอบเครือข่าย" + +msgid "Network test..." +msgstr "ทดสอบเครือข่าย..." + +msgid "Network test: " +msgstr "" + +#, fuzzy +msgid "Network wizard" +msgstr "ตัวช่วยเครือข่าย" + +msgid "Network:" +msgstr "เครือข่าย:" + +msgid "New" +msgstr "ใหม่" + +msgid "New PIN" +msgstr "" + +msgid "New version:" +msgstr "เวอร์ชั่นใหม่:" + +msgid "News Current Affairs" +msgstr "" + +msgctxt "button label, 'next screen'" +msgid "Next" +msgstr "" + +msgctxt "now/next: 'next' event label" +msgid "Next" +msgstr "" + +msgid "No" +msgstr "ไม่" + +msgid "No (supported) DVDROM found!" +msgstr "ไม่พบดีวีดีรอมที่ใช้งานได้!" + +msgid "No Connection" +msgstr "ไม่พบการเชื่อมต่อ" + +msgid "No HDD found or HDD not initialized!" +msgstr "ไม่พบฮาร์ดดิสก์ (HDD) หรือยังไม่ได้เตรียมเพื่อให้ใช้งานได้" + +msgid "No backup needed" +msgstr "ไม่จำเป็นต้องสำรองข้อมูล" + +msgid "No cable tuner found!" +msgstr "" + +msgid "" +"No data on transponder!\n" +"(Timeout reading PAT)" +msgstr "" +"ไม่พบข้อมูลในทรานสปอนเดอร์!\n" +"(Timeout reading PAT)" + +msgid "No delay" +msgstr "" + +msgid "No description available." +msgstr "ไม่มีรายละเอียดเพิ่มเติม" + +msgid "No details for this image file" +msgstr "ไม่มีรายละเอียดของอิมเมจนี้" + +msgid "No displayable files on this medium found!" +msgstr "ไม่พบชนิดไฟล์ที่สามารถเล่นได้ในสื่อบันทีกนี้!" + +msgid "No event info found, recording indefinitely." +msgstr "ไม่พบข้อมูลเวลากำกับ บันทึกรายโดยไม่มีข้อกำหนด" + +msgid "No fast winding possible yet.. but you can use the number buttons to skip forward/backward!" +msgstr "" + +msgid "No free index available" +msgstr "" + +msgid "No free tuner!" +msgstr "ไม่มี Tuner ว่างที่จะใช้งานได้" + +msgid "No network connection available." +msgstr "" + +msgid "No networks found" +msgstr "ไม่พบเครือข่าย" + +msgid "No new plugins found" +msgstr "" + +msgid "No positioner capable frontend found." +msgstr "ไม่พบตัวขับจานที่ใช้ได้" + +msgid "No satellites configured. Plese check your tuner setup." +msgstr "" + +msgid "No service" +msgstr "" + +#, fuzzy +msgid "No services/providers selected" +msgstr "ยังไม่ได้เลือกบริการหรือผู้ให้บริการ" + +#, fuzzy +msgid "No standby" +msgstr "ไม่ Standby" + +msgid "No suitable sat tuner found!" +msgstr "" + +msgid "No tags are set on these movies." +msgstr "ไม่พบป้ายใดๆ กับภาพยนต์ชุดนี้" + +#, fuzzy +msgid "No timeout" +msgstr "ไม่มีการหมดเวลา" + +msgid "No to all" +msgstr "" + +msgid "No transparency" +msgstr "" + +msgid "No tuner is configured for use with a diseqc positioner!" +msgstr "ไม่พบ Tuner ใดๆ ที่ใช้กับตัวขับจาน!" + +msgid "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"ไม่มี Tuner ใดๆ สำหรับใช้งาน!\n" +"กรุณาตั้งค่า Tuner แล้วทำการค้นหารายการที่ให้บริการก่อน" + +#, fuzzy +msgid "No updates available" +msgstr " มีรายการปรับปรุง" + +msgid "No updates available. Please try again later." +msgstr "" + +msgid "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" +msgstr "" +"ไม่พบรหัสผ่านใดๆ สำหรับบริการ!\n" +"ท่านต้องการตั้งรหัสผ่านตอนนี้เลยหรือไม่?\n" +"หากตอบ 'ไม่' หมายถืงท่านไม่ต้องการควบคุมการรับชม" + +msgid "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" +msgstr "" +"ไม่พบรหัสผ่านสำหรับตั้งค่าเครื่อง!\n" +"ต้องการเปลี่ยนรหัสตอนนี้หรือไม่?\n" +"หากตอบ 'ไม่' หมายถึงยกเลิกการป้องกันด้วยรหัสผ่าน" + +msgid "No wireless networks found! Searching..." +msgstr "" + +msgid "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." +msgstr "" +"ไม่พบอุปกรณ์เครือข่าย\n" +"กรุณตรวจสอบว่าท่านได้เชื่อมต่ออุปกรณ์และตั้งค่าที่ถูกต้อง" + +msgid "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." +msgstr "" +"ไม่พบอุปกรณ์ไร้สาย\n" +"กรุณาตรวจสอบว่า ได้ต่ออุปกรณ์ไร้สายที่ใช้ WLAN และได้ตั้งค่าอุปกรณ์อย่างถูกต้อง" + +msgid "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." +msgstr "" +"ไม่พบอุปกรณ์ไร้สาย\n" +" กรุณาตรวจสอบว่า ได้ต่ออุปกรณ์ไร้สายและทำให้ระบบ WLAN พร้อมใช้งานแล้ว" + +msgid "No, but restart from begin" +msgstr "ไม่ - กลับไปเริ่มต้นใหม่" + +msgid "No, do nothing." +msgstr "ไม่ - ไม่ต้องการทำ" + +msgid "No, just start my receiver" +msgstr "" + +msgid "No, never" +msgstr "" + +msgid "None" +msgstr "ไม่มี" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right) +msgid "Nonlinear" +msgstr "ไม่เป็นเส้นตรง" + +msgid "Normal mode" +msgstr "" + +msgid "North" +msgstr "เหนือ" + +msgid "Norwegian" +msgstr "ภาษานอร์เว" + +msgid "Not associated" +msgstr "" + +msgid "Not configured" +msgstr "" + +#, fuzzy, python-format +msgid "Not enough disk space. Please free up some disk space and try again. (%d MB required, %d MB available)" +msgstr "เนื้อที่ไม่เพียงพอ ลบไฟล์ที่ไม่ต้องการออกแล้วลองใหม่ (ต้องการ %d MB แต่เหลืออยู่ %d)" + +msgid "Nothing connected" +msgstr "" + +msgid "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"ไม่มีรายการให้ค้นหา\n" +"กรุณาตั้งค่า Tuner ก่อนการค้นหาช่องรายการใหม่" + +msgctxt "now/next: 'now' event label" +msgid "Now" +msgstr "" + +#, fuzzy +msgid "Now playing" +msgstr "กำลังเล่น" + +msgid "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." +msgstr "ตอนนี้.. ให้ปรับความชัดของหน้าจอโดยการเพิ่มความสว่างให้มากที่สุด แต่ต้องแน่ใจว่าเห็นความแตกต่างของสีที่สว่างที่สุด หากจบกระบวนการแล้วให้กดปุ่ม OK" + +msgid "OK" +msgstr "ตกลง" + +msgid "OK, guide me through the upgrade process" +msgstr "ตกลง - ช่วยแนะนำขั้นตอนการปรับปรุงด้วย" + +msgid "ONID" +msgstr "" + +msgid "OSD name request" +msgstr "" + +#, fuzzy +msgid "OSD settings" +msgstr "ตั้งค่า OSD" + +msgid "OSD transparency" +msgstr "" + +msgid "Off" +msgstr "ปิด" + +msgid "Offline decode delay (ms)" +msgstr "" + +msgid "Ok" +msgstr "" + +msgid "On" +msgstr "เปิด" + +msgid "On end of movie" +msgstr "" + +msgid "On end of movie (as menu)" +msgstr "" + +msgid "One" +msgstr "หนึ่ง" + +msgid "Only extensions." +msgstr "" + +#, fuzzy +msgid "Only free scan" +msgstr "ค้นหาเฉพาะรายการฟรี" + +#, fuzzy +msgid "Open service list" +msgstr "เปิดสารบัญบริการ" + +#, fuzzy +msgid "Open the movie list" +msgstr "กลับไปยังสารบัญภาพยนต์" + +msgid "Orbital position" +msgstr "" + +msgid "Original" +msgstr "" + +msgid "Other" +msgstr "" + +msgid "Output" +msgstr "" + +msgid "Overwrite configuration files during software upgrade?" +msgstr "" + +#, fuzzy +msgid "Overwrite configuration files?" +msgstr "ตั้งค่า Tuner" + +msgid "PAL" +msgstr "PAL" + +msgid "PCR PID" +msgstr "" + +msgid "PIDs" +msgstr "PIDs" + +#, fuzzy +msgid "PIN code needed" +msgstr "ต้องการรหัสผ่าน" + +msgid "PLP ID" +msgstr "" + +msgid "PMT PID" +msgstr "" + +msgid "Package list update" +msgstr "ปรับปรุงรายการของส่วนประกอบ" + +msgid "Packet management" +msgstr "จัดการส่วนประกอบ" + +msgid "Packet manager" +msgstr "ตัวจัดการส่วนประกอบ" + +#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term +#, fuzzy +msgid "Pan&scan" +msgstr "Pan&Scan" + +#, fuzzy +msgid "Parent directory" +msgstr "โฟล์เดอร์ก่อนหน้า" + +msgid "Parental control" +msgstr "ควบคุมอายุ" + +#, fuzzy +msgid "Parental control services editor" +msgstr "แก้ไขบริการที่ต้องควบคุมอายุผู้ชม" + +msgid "Parental control setup" +msgstr "ตั้งค่าการควบคุมอายุ" + +msgid "Parental control type" +msgstr "ชนิดการควบคุมอายุ" + +msgid "Password" +msgstr "รหัสผ่าน" + +#, fuzzy +msgid "Pause" +msgstr "หยุดชั่วคราว" + +msgid "Pause movie at end" +msgstr "หยุดการเล่นชั่วคราว (Pause) เมื่อเล่นจบ" + +#, fuzzy +msgid "Pause playback" +msgstr "กำลังกลับมาเล่นที่เดิม" + +msgid "Pauze/Continue playback" +msgstr "" + +msgid "Percentage left" +msgstr "" + +#, fuzzy +msgid "Percentage right" +msgstr "วนขวา" + +msgid "Permanently delete all recordings in the trash can?" +msgstr "" + +msgid "Permanently remove all deleted items" +msgstr "" + +msgid "Persian" +msgstr "" + +msgid "Phone number" +msgstr "เลขหมาย" + +#, fuzzy +msgid "PiP setup" +msgstr "ตั้งค่า PIP" + +msgid "Picon" +msgstr "" + +msgid "Picon and service name" +msgstr "" + +#, fuzzy +msgid "Picture player" +msgstr "ดูภาพ" + +#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term. +msgid "Pillarbox" +msgstr "Pillarbox" + +msgid "Pilot" +msgstr "Pilot" + +msgid "Play" +msgstr "เล่น" + +msgid "Play DVD" +msgstr "เล่นดีวีดี" + +msgid "Play audio in background" +msgstr "" + +#, fuzzy +msgid "Play audio-CD..." +msgstr "เล่นซีดีเสียง..." + +msgid "Play back media files" +msgstr "" + +#, fuzzy +msgid "Play entry" +msgstr "เล่นไฟล์นี้" + +#, fuzzy +msgid "Play from next mark or playlist entry" +msgstr "เล่นไฟล์ต่อไป หรือจากสารบัญรายการ" + +#, fuzzy +msgid "Play from previous mark or playlist entry" +msgstr "เล่นไฟล์ก่อนหน้าหรือเล่นจากสารบัญรายการ" + +#, fuzzy +msgid "Play music..." +msgstr "เล่นเพลง..." + +msgid "Play next" +msgstr "" + +msgid "Play next (return to movie list)" +msgstr "" + +msgid "Play next (return to previous service)" +msgstr "" + +msgid "Play previous" +msgstr "" + +msgid "Play recorded movies..." +msgstr "เล่นภาพยนต์ที่ได้บันทึกไว้..." + +msgid "Please add titles to the compilation." +msgstr "" + +msgid "Please change recording endtime" +msgstr "กรุณาเปลี่ยนเวลาสิ้นสุดการบันทึกรายการ" + +msgid "Please check your network settings!" +msgstr "กรุณตรวจสอบการตั้งค่าเครือข่าย" + +msgid "Please choose an extension..." +msgstr "กรุณาเลือกส่วนเพิ่มเติม..." + +msgid "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"กรุณาป้อนค่าที่จำเป็น และตรวจสอบความถูกต้องของ Nameserver\n" +"จากนั้นกดปุ่ม OK เพื่อทำงานต่อ" + +msgid "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"กรุณาตั้งค่าอินเตอร์เน็ตโดยการป้อนข้อมูลที่จำเป็น\n" +"หากป้อนแล้วให้กดปุ่ม OK เพื่อทำงานต่อ" + +msgid "Please connect your receiver to the internet" +msgstr "" + +msgid "Please do not change any values unless you know what you are doing!" +msgstr "ห้ามเปลี่ยนค่าใดๆ หากท่านไม่ทราบความหมาย!" + +msgid "Please enter a name for the new bouquet" +msgstr "กรุณาป้อนชื่อกลุ่มรายการใหม่" + +msgid "Please enter a name for the new marker" +msgstr "กรุณาป้อนชื่อตัวคั่นใหม่" + +msgid "Please enter a new filename" +msgstr "กรุณป้อนชื่อไฟล์ใหม่" + +msgid "Please enter filename (empty = use current date)" +msgstr "กรุณาป้อนชื่อไฟล์ (เป็นช่องว่าง = ใช้วันที่ปัจจุบันแทน)" + +msgid "Please enter name of the new directory" +msgstr "กรุณาป้อนชื่อโฟล์เดอร์ใหม่" + +msgid "Please enter new name:" +msgstr "" + +msgid "Please enter the correct pin code" +msgstr "กรุณาป้อนรหัสที่ถูกต้องด้วย" + +msgid "Please enter the old PIN code" +msgstr "" + +msgid "Please follow the instructions on the TV" +msgstr "กรุณาทำตามขั้นตอนที่ปรากฏบนจอโทรทัศน์" + +msgid "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." +msgstr "เนื่องจากไม่สามารถเข้าถึงสื่อบันทึกข้อมูลที่ท่านเลือกได้ โฟล์เดอร์เริ่มต้นจะถูกเรียกใช้งาน" + +msgid "Please press OK to continue." +msgstr "กรุณากดปุ่ม OK เพื่อทำงานต่อ" + +msgid "Please select a default EPG type..." +msgstr "" + +msgid "Please select a playlist to delete..." +msgstr "กรุณาเลือกสารบัญรายการที่จะลบ..." + +msgid "Please select a playlist..." +msgstr "กรุณาเลือกสารบัญรายการ..." + +#, fuzzy +msgid "Please select a sub service..." +msgstr "กรุณาเลือกบริการย่อย..." + +msgid "Please select a subservice to record..." +msgstr "กรุณาเลือกบริการย่อยที่ต้องการบันทึก..." + +msgid "Please select a subservice..." +msgstr "กรุณาเลือกบริการย่อย..." + +msgid "Please select an NFI file and press green key to flash!" +msgstr "" + +#, fuzzy +msgid "Please select medium to be scanned" +msgstr "เลือกสื่อบันทึกที่ต้องการค้นหา..." + +msgid "Please select medium to use as backup location" +msgstr "กรุณาเลือกสื่อบันทึกปลายทางที่จะสำรองข้อมูล" + +msgid "Please select tag to filter..." +msgstr "กรุณาเลือกป้ายที่จะกรอง..." + +msgid "Please select the movie path..." +msgstr "กรุณาเลือกตำแหน่งของภาพยนต์" + +msgid "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." +msgstr "" +"เลือกอุปกรณ์เครือข่ายที่ต้องกใช้เชื่อมต่ออินเตอร์เน็ต\n" +"\n" +"จากนั้นกดปุ่ม OK เพื่อทำงานต่อ" + +msgid "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." +msgstr "" +"กรุณาเลือกเครือข่ายไร้สายที่ต้องการเชื่อมต่อ\n" +"\n" +"จากนั้นกดปุ่ม OK เพื่อทำงานต่อ" + +#, fuzzy +msgid "Please set up tuner A" +msgstr "กรุณาตั้งค่า Tuner B" + +msgid "Please set up tuner B" +msgstr "กรุณาตั้งค่า Tuner B" + +msgid "Please set up tuner C" +msgstr "กรุณาตั้งค่า Tuner C" + +msgid "Please set up tuner D" +msgstr "กรุณาตั้งค่า Tuner D" + +msgid "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." +msgstr "" +"ใช้ปุ่มกำหนดทิศทางเพื่อเลื่อนหน้าต่าง PiP \n" +"กดปุ่ม Bouquet +/- เพื่อเปลี่ยนขนาดหน้าต่าง\n" +"กดปุ่ม OK เพื่อดูรายการโทรทัศน์ หรือกด EXIT เพื่อยกเลิกการย้ายหน้าต่าง" + +msgid "Please use the UP and DOWN keys to select your language. Afterwards press the OK button." +msgstr "ใช้ปุ่มขึ้นหรือลงเพื่อเลือกภาษาที่ต้องการ จากนั้นให้กดปุ่ม OK เพื่อเลือก" + +msgid "Please wait" +msgstr "" + +#, fuzzy +msgid "Please wait (downloading channel list)" +msgstr "กำลังโหลด... รอสักครู่..." + +#, fuzzy +msgid "Please wait (downloading softcam)" +msgstr "กำลังโหลด... รอสักครู่..." + +#, fuzzy +msgid "Please wait (updating packages)" +msgstr "กำลังโหลดภาพ กรุณารอสักครู่..." + +msgid "Please wait for activation of your network configuration..." +msgstr "กำลังเริ่มใช้งานเครือข่ายที่ตั้ง... กรุณารอสักครู่" + +msgid "Please wait while scanning is in progress..." +msgstr "กำลังค้นหา... รอสักครู่" + +msgid "Please wait while we configure your network..." +msgstr "กรุณารอสักครู่... กำลังตั้งค่าเครือข่ายของท่าน" + +msgid "Please wait while we prepare your network interfaces..." +msgstr "กรุณารอสักครู่.. กำลังเตรียมระบบเครือข่าย" + +msgid "Please wait while we test your network..." +msgstr "กรุณารอสักครู่... กำลังตรวจสอบเครือข่าย" + +msgid "Please wait while your network is restarting..." +msgstr "กรุณารอสักครู่... กำลังเริ่มระบบเครือข่าย..." + +msgid "Please wait..." +msgstr "กรุณารอสักครู่..." + +msgid "Please wait... Loading list..." +msgstr "กำลังโหลด... รอสักครู่..." + +msgid "Plugin browser" +msgstr "แสดงปลั๊กอิน" + +msgid "Plugin manager activity information" +msgstr "ข้อมูลการทำงานของตัวจัดการปลั๊กอิน" + +msgid "Plugin manager help" +msgstr "ช่วยเหลือตัวจัดการปลั๊กอิน" + +msgid "Plugins" +msgstr "ปลั๊กอิน" + +msgid "Polarisation" +msgstr "" + +msgid "Polarisation:" +msgstr "" + +msgid "Polarization" +msgstr "ค่าทิศทาง" + +msgid "Polish" +msgstr "ภาษาโปแลนด์" + +msgid "Port A" +msgstr "พอร์ต A" + +msgid "Port B" +msgstr "พอร์ต B" + +msgid "Port C" +msgstr "พอร์ต C" + +msgid "Port D" +msgstr "พอร์ต D" + +msgid "Portuguese" +msgstr "ภาษาโปตุเกส" + +msgid "Position of completed timers in timerlist" +msgstr "" + +msgid "Position stored at index" +msgstr "" + +msgid "Positioner" +msgstr "ตัวขับจาน" + +msgid "Positioner (selecting satellites)" +msgstr "" + +msgid "Positioner Setup" +msgstr "" + +msgid "Positioner setup" +msgstr "ตั้งค่าตัวขับจาน" + +msgid "Power threshold in mA" +msgstr "กำลังไฟฟ้า (mA)" + +msgid "Predefined transponder" +msgstr "ทรานสปอนเดอร์ที่ตั้งไว้แล้ว" + +msgid "Prefer AC3 track" +msgstr "" + +msgid "Prefer AC3+ track" +msgstr "" + +msgid "Prefer audio track stored by service" +msgstr "" + +msgid "Prefer graphical DVB subtitles" +msgstr "" + +msgid "Prefer subtitles for hearing impaired" +msgstr "" + +msgid "Prefer subtitles stored by service" +msgstr "" + +msgid "Preferred tuner" +msgstr "" + +msgid "Preferred tuner for recordings" +msgstr "" + +msgid "Prepare another USB stick for image flashing" +msgstr "" + +msgid "Preparing... Please wait" +msgstr "กำลังเตรียมงาน... รอสักครู่" + +msgid "Press '0' to toggle PiP mode" +msgstr "" + +msgid "Press INFO on your remote control for additional information." +msgstr "" + +msgid "Press MENU on your remote control for additional options." +msgstr "" + +msgid "Press OK on your remote control to continue." +msgstr "กดปุ่ม OK ที่รีโมทเพื่อทำงานต่อ" + +msgid "Press OK to activate the selected skin." +msgstr "กดปุ่ม OK เพื่อเริ่มใช้สกินที่เลือกไว้" + +msgid "Press OK to activate the settings." +msgstr "กดปุ่ม OK เพื่อเริ่มใช้งาน" + +msgid "Press OK to edit the settings." +msgstr "กดปุ่ม OK เพื่อแก้ไข" + +#, python-format +msgid "Press OK to get further details for %s" +msgstr "กดปุ่ม OK เพื่อดูข้อมูลอื่นของ %s เพิ่มเติม" + +msgid "Press OK to scan" +msgstr "กดปุ่ม OK เพื่อเริ่มค้นหา" + +#, fuzzy +msgid "Press OK to select a provider." +msgstr "กดปุ่ม OK เพื่อเลือกผู้ให้บริการ" + +msgid "Press OK to select satellites" +msgstr "" + +msgid "Press OK to select/deselect a CAId." +msgstr "กดปุ่ม OK เพื่อเลือกหรือยกเลิก CAId" + +msgid "Press OK to start the scan" +msgstr "กดปุ่ม OK เพื่อเริ่มค้นหา" + +msgid "Press OK to toggle the selection" +msgstr "" + +msgid "Press OK to toggle the selection." +msgstr "กดปุ่ม OK เพื่อเปลี่ยน" + +msgid "Press yellow to set this interface as default interface." +msgstr "กดปุ่มเหลืองเพื่อให้อินเตอร์เฟซนี้ค่าเริ่มต้น" + +msgctxt "button label, 'previous screen'" +msgid "Prev" +msgstr "" + +msgid "Preview" +msgstr "" + +msgid "Preview menu" +msgstr "เมนูดูตัวอย่าง" + +msgid "Preview selected channel" +msgstr "" + +msgid "Primary DNS" +msgstr "DNS หลัก" + +msgid "Priority" +msgstr "สำคัญ" + +msgid "Process" +msgstr "โพรเซส" + +msgid "Progress" +msgstr "" + +msgid "Progress bar left" +msgstr "" + +msgid "Progress bar right" +msgstr "" + +msgid "Properties of current title" +msgstr "รายละเอียดเรื่องนี้" + +msgid "Protect services" +msgstr "ป้องกันบริการ" + +msgid "Protect setup" +msgstr "ป้องกันการตั้งค่า" + +msgid "Provider" +msgstr "ผู้ให้บริการ" + +msgid "Provider to scan" +msgstr "ผู้ให้บริการที่จะค้น" + +msgid "Providers" +msgstr "ผู้ให้บริการ" + +msgid "Put TV in standby" +msgstr "" + +msgid "Put receiver in standby" +msgstr "" + +msgid "Python frontend for /tmp/mmi.socket" +msgstr "Python frontend for /tmp/mmi.socket" + +msgid "Quick" +msgstr "เร็ว" + +#, fuzzy +msgid "Quick zap" +msgstr "เปลี่ยนช่องเร็ว (Quickzap)" + +msgid "RF output" +msgstr "RF output" + +msgid "RGB" +msgstr "RGB" + +msgid "Radio" +msgstr "วิทยุ" + +#, fuzzy +msgid "Ram disk" +msgstr "Ram Disk" + +msgid "Random" +msgstr "แบบสุ่ม" + +#, python-format +msgid "Rating defined by broadcaster - %d" +msgstr "" + +msgid "Rating undefined" +msgstr "" + +msgid "Really close without saving settings?" +msgstr "ยกเลิกโดยไม่จัดเก็บข้อมูล?" + +msgid "Really delete done timers?" +msgstr "ต้องการลบตารางเวลาที่เสร็จแล้วหรือไม่?" + +msgid "Really exit the subservices quickzap?" +msgstr "ต้องการออกจากส่วนย่อยของ Quickzap หรือไม่?" + +msgid "Really reboot now?" +msgstr "ต้องการบูทเครื่องใหม่หรือไม่?" + +msgid "Really restart now?" +msgstr "ต้องการเริ่มระบบใหม่หรือไม่ (Restart)?" + +msgid "Really shutdown now?" +msgstr "ต้องการปิดเครื่องตอนนี้หรือไม่ (Shutdown)?" + +msgid "Really upgrade the frontprocessor and reboot now?" +msgstr "" + +msgid "Really upgrade your settop box and reboot now?" +msgstr "" + +msgid "Reboot" +msgstr "เริ่มระบบใหม่ (Reboot)" + +msgid "Rec" +msgstr "" + +#, fuzzy +msgid "Reception settings" +msgstr "ตั้งค่าการรับ" + +msgid "Record" +msgstr "บันทึก" + +#, python-format +msgid "Record time limited due to conflicting timer %s" +msgstr "การบันทึกถูกจำกัด เนื่องจากซ้ำซ้อนกับ %s" + +msgid "Recorded files..." +msgstr "ชื่อไฟล์ที่บันทึก..." + +msgid "Recording" +msgstr "กำลังบันทึกรายการ" + +msgid "Recording in progress" +msgstr "" + +msgid "Recording paths" +msgstr "" + +msgid "Recording type" +msgstr "" + +msgid "Recording(s) are in progress or coming up in few seconds!" +msgstr "กำลังบันทึกรายการ (หรือจะบันทึกใน 2-3 วินาทีนี้)" + +msgid "Recordings" +msgstr "กำลังบันทึกรายการ" + +msgid "Recordings always have priority" +msgstr "บันทึกรายการสำคัญมากกว่า" + +msgid "Red button..." +msgstr "" + +msgid "Reenter new PIN" +msgstr "" + +#, fuzzy +msgid "Refresh rate" +msgstr "ความถี่หน้าจอ" + +msgid "Refresh rate selection." +msgstr "เลือกความถี่หน้าจอ" + +msgid "Regard deep standby as standby" +msgstr "" + +msgid "Relative" +msgstr "" + +msgid "Reload" +msgstr "โหลดใหม่" + +msgid "Reload black-/white lists" +msgstr "" + +msgid "Reloading bouquets and services..." +msgstr "" + +msgid "Remember last service in PiP" +msgstr "" + +msgid "Remember service PIN" +msgstr "" + +msgid "Remember these settings for each folder" +msgstr "" + +msgid "Reminder, you have chosen to save timeshift file." +msgstr "" + +#, fuzzy +msgid "Remote control type" +msgstr "ชนิดการควบคุมอายุ" + +#, fuzzy +msgid "Removal has completed." +msgstr "การลบล้มเหลว" + +msgid "Remove" +msgstr "ลบออก" + +msgid "Remove a mark" +msgstr "เอาที่คั่นออก" + +#, fuzzy +msgid "Remove a nameserver entry" +msgstr "ลบ Nameserver นี้ออก" + +#, fuzzy +msgid "Remove bookmark" +msgstr "ลบบุ๊คมาร์ค" + +msgid "Remove completed timers after (days)" +msgstr "" + +msgid "Remove currently selected title" +msgstr "ลบเชื่อเรื่องที่เลือกออก" + +msgid "Remove items from trash can after (days)" +msgstr "" + +msgid "Remove plugins" +msgstr "ลบ Plugin ออก" + +msgid "Remove title" +msgstr "ลบเรื่อง" + +msgid "Removing" +msgstr "กำลังลบออก" + +#, python-format +msgid "Removing directory %s failed. (Maybe not empty.)" +msgstr "การลบโฟล์เดอร์ %s ล้มเหลว (อาจมีข้อมูลอยู่)" + +#, fuzzy +msgid "Removing partition table" +msgstr "ลบเรื่อง" + +msgid "Rename" +msgstr "เปลี่ยนชื่อ" + +msgid "Repeat" +msgstr "" + +#, fuzzy +msgid "Repeat type" +msgstr "ทำซ้ำแบบ" + +msgid "Repeating event currently recording... What do you want to do?" +msgstr "กำลังบันทึกรายการซ้ำอยู่... ท่านต้องที่จะทำอะไร?" + +msgid "Repeats" +msgstr "ทำซ้ำ" + +msgid "Require authentication for http streams" +msgstr "" + +msgid "Required medium type:" +msgstr "" + +msgid "Rereading partition table" +msgstr "" + +msgid "Reserved" +msgstr "" + +msgid "Reset" +msgstr "ตั้งค่าใหม่" + +msgid "Reset and renumerate title names" +msgstr "ยกเลิกและเรียงลำดับชื่อเรื่องใหม่" + +msgid "Reset playback position" +msgstr "" + +msgid "Reset video enhancement settings to system defaults?" +msgstr "ยกเลิกการตั้งค่าวิดีโอแบบละเอียดและกลับไปใช้ค่าเริ่มต้น?" + +msgid "Reset video enhancement settings to your last configuration?" +msgstr "ยกเลิกการตั้งค่าวิดีโอแบบละเอียดและกลับไปใช้ค่าก่อนหน้า?" + +msgid "Resolution" +msgstr "ความละเอียดจอ" + +msgid "Restart" +msgstr "เริ่มระบบใหม่" + +msgid "Restart GUI now?" +msgstr "เริ่มทำงานใหม่ (GUI) ตอนนี้หรือไม่?" + +msgid "Restart enigma" +msgstr "" + +msgid "Restart network" +msgstr "เริ่มการทำงานเครือข่ายใหม่" + +msgid "Restart test" +msgstr "เริ่มทดสอบใหม่" + +msgid "Restart your network connection and interfaces.\n" +msgstr "สั่งให้เชื่อมต่อเครื่องใหม่อีกครั้ง\n" + +msgid "Restore" +msgstr "นำกลับมาใช้" + +msgid "Restore backups" +msgstr "นำสำรองกลับมาใช้" + +msgid "Restore is running..." +msgstr "กำลังนำสำรองกลับมาใช้..." + +msgid "Restore system settings" +msgstr "นำสำรองการตั้งค่าต่างๆ กลับมาใช้" + +#, fuzzy +msgid "Restoring..." +msgstr "กำลังบันทึกรายการ..." + +msgid "Resume from last position" +msgstr "เล่นต่อจากตำแหน่งเดิม" + +#, python-format +msgid "Resume position at %s" +msgstr "" + +#. TRANSLATORS: The string "Resuming playback" flashes for a moment +#. TRANSLATORS: at the start of a movie, when the user has selected +#. TRANSLATORS: "Resume from last position" as start behavior. +#. TRANSLATORS: The purpose is to notify the user that the movie starts +#. TRANSLATORS: in the middle somewhere and not from the beginning. +#. TRANSLATORS: (Some translators seem to have interpreted it as a +#. TRANSLATORS: question or a choice, but it is a statement.) +msgid "Resuming playback" +msgstr "กำลังกลับมาเล่นที่เดิม" + +msgid "Return to movie list" +msgstr "กลับไปยังสารบัญภาพยนต์" + +msgid "Return to previous service" +msgstr "กลับไปยังบริการก่อนหน้า" + +msgid "Reverse bouquet buttons" +msgstr "" + +msgid "Reverse list" +msgstr "" + +msgid "Rewind speeds" +msgstr "ความเร็วในการย้อน" + +msgid "Rewrap teletext subtitles" +msgstr "" + +msgid "Right" +msgstr "ขวา" + +msgid "Right from servicename" +msgstr "" + +msgid "Roll-off" +msgstr "" + +msgid "Romanian" +msgstr "" + +msgid "Root directory" +msgstr "" + +msgid "Rotor step position:" +msgstr "" + +msgid "Rotor turning speed" +msgstr "ความเร็วในการหมุนของ Rotor" + +msgid "Round start time on" +msgstr "" + +msgid "Russian" +msgstr "ภาษารัสเซีย" + +msgid "S-Video" +msgstr "S-Video" + +msgid "SID" +msgstr "" + +msgid "SINGLE LAYER DVD" +msgstr "" + +msgid "SNR" +msgstr "SNR" + +msgid "SNR:" +msgstr "SNR:" + +msgid "SSID:" +msgstr "SSID:" + +msgid "Same resolution as skin" +msgstr "" + +msgid "Sat" +msgstr "เสา." + +msgid "Satellite" +msgstr "ดาวเทียม" + +#, fuzzy +msgid "Satellite dish setup" +msgstr "ตั้งค่าอุปกรณ์ดาวเทียม" + +msgid "Satellite equipment" +msgstr "" + +#, fuzzy +msgid "Satellite equipment setup" +msgstr "ตั้งค่าอุปกรณ์ดาวเทียม" + +msgid "Satellite longitude:" +msgstr "" + +msgid "Satellites" +msgstr "ดาวเทียม" + +msgid "Satfinder" +msgstr "ค้นหาดาวเทียม" + +msgid "Sats" +msgstr "ดาว" + +msgid "Saturation" +msgstr "ความอิ่มตัว" + +msgid "Saturday" +msgstr "วันเสาร์" + +msgid "Save" +msgstr "บันทึก" + +#, fuzzy +msgid "Save playlist" +msgstr "บันทึกสารบัญรายการ" + +msgid "Save timeshift file" +msgstr "" + +msgid "Save timeshift file in movie directory" +msgstr "" + +msgid "Scaler sharpness" +msgstr "Scaler sharpness" + +#, fuzzy +msgid "Scaling mode" +msgstr "Scaling Mode" + +msgid "Scan" +msgstr "" + +msgid "Scan " +msgstr "ค้นหา" + +#. TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' +#, fuzzy, python-format +msgid "Scan %s" +msgstr "ค้นหา" + +#. TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' +#, fuzzy, python-format +msgid "Scan %s band" +msgstr "ค้นหา band EU MID" + +msgid "Scan additional SR" +msgstr "ค้นหา additional SR" + +#, fuzzy +msgid "Scan files..." +msgstr "ค้นหาไฟล์..." + +#, fuzzy +msgid "Scan wireless networks" +msgstr "ค้นหาเครือข่ายไร้สาย" + +msgid "Scan your network for wireless access points and connect to them using your selected wireless device.\n" +msgstr "" + +#, python-format +msgid "Scanning %s..." +msgstr "" + +#. TRANSLATORS: The stb is performing a channel scan, progress percentage is printed in '%d' (and '%%' will show a single '%' symbol) +#, python-format +msgid "Scanning - %d%% completed" +msgid_plural "Scanning - %d%% completed" +msgstr[0] "" +msgstr[1] "" + +#, python-format +msgid "Scanning completed, %d channel found" +msgid_plural "Scanning completed, %d channels found" +msgstr[0] "" +msgstr[1] "" + +msgid "Scanning failed!" +msgstr "" + +msgid "Scanning..." +msgstr "" + +msgid "Scans default lamedbs sorted by satellite with a connected dish positioner" +msgstr "ค้นหาจาก Lamedbs และโดยเรียงดาวเทียมตามที่ต่อไว้กับตัวขับจาน" + +msgid "Search east" +msgstr "ค้นหาทางทิศตะวันออก" + +msgid "Search west" +msgstr "ค้นหาทางทิศตะวันตก" + +msgid "Searching" +msgstr "" + +msgid "Searching east ..." +msgstr "" + +msgid "Searching for available updates. Please wait..." +msgstr "" + +msgid "Searching for new installed or removed packages. Please wait..." +msgstr "กำลังค้นหาส่วนประกอบใหม่หรือลบส่วนประกอบที่ติดตั้งแล้ว กรุณารอสักครู่..." + +msgid "Searching west ..." +msgstr "" + +msgid "Second cable of motorized LNB" +msgstr "" + +msgid "Secondary DNS" +msgstr "DNS สำรอง" + +msgid "Seek" +msgstr "ค้นหา" + +#, fuzzy +msgid "Seek backward" +msgstr "ย้อนหลัง" + +#, fuzzy +msgid "Seek backward (enter time)" +msgstr "ย้อนหลัง (ป้อนเวลา)" + +#, fuzzy +msgid "Seek forward" +msgstr "ข้ามไป" + +#, fuzzy +msgid "Seek forward (enter time)" +msgstr "ข้ามไปข้างหน้า (ป้อนเวลา)" + +msgid "Select" +msgstr "เลือก" + +#, fuzzy +msgid "Select CAId" +msgstr "เลือก CAId" + +msgid "Select HDD" +msgstr "เลือกฮาร์ดดิสก์ (HDD)" + +#, fuzzy +msgid "Select a bouquet" +msgstr "เลือกภาพยนต์" + +msgid "Select a movie" +msgstr "เลือกภาพยนต์" + +#, fuzzy +msgid "Select a network adapter" +msgstr "เลือกการ์ดเครือข่าย" + +#, fuzzy +msgid "Select a skin" +msgstr "เลือกภาพยนต์" + +#, fuzzy +msgid "Select a tuner" +msgstr "เลือกภาพยนต์" + +#, fuzzy +msgid "Select a wireless network" +msgstr "เลือกเครือข่ายไร้สาย" + +msgid "Select action" +msgstr "" + +#, python-format +msgid "Select action for timer %s:" +msgstr "" + +msgid "Select all" +msgstr "" + +msgid "Select an image to be downloaded" +msgstr "" + +msgid "Select audio track" +msgstr "เลือกช่องเสียง" + +#, fuzzy +msgid "Select backup files" +msgstr "เลือกไฟล์ที่จะสำรอง" + +#, fuzzy +msgid "Select backup location" +msgstr "เลือกที่ที่จะสำรอง" + +msgid "Select channel to record from" +msgstr "เลือกบันทึกรายการจาก" + +msgid "Select copy destination for:" +msgstr "" + +msgid "Select default EPG type..." +msgstr "" + +msgid "Select desired image from feed list" +msgstr "" + +msgid "Select destination for:" +msgstr "" + +msgid "Select files for backup." +msgstr "" + +msgid "Select files/folders to backup" +msgstr "เลือกไฟล์/โฟล์เดอร์ที่จะสำรอง" + +msgid "Select input device" +msgstr "" + +msgid "Select input device." +msgstr "" + +msgid "Select interface" +msgstr "เลือกอินเตอร์เฟซ" + +#, fuzzy +msgid "Select location" +msgstr "เลือกตำแหน่ง" + +#, fuzzy +msgid "Select movie" +msgstr "เลือกภาพยนต์" + +msgid "Select provider to add..." +msgstr "เลือกผู้ให้บริการที่ต้องการเพิ่ม..." + +msgid "Select refresh rate" +msgstr "เลือกอัตราการปรับหน้าจอ" + +msgid "Select satellites" +msgstr "" + +msgid "Select service to add..." +msgstr "เลือกบริการที่ต้องการเพิ่ม..." + +msgid "Select sort method:" +msgstr "" + +#, fuzzy +msgid "Select target folder" +msgstr "เลือกโฟล์เดอร์ปลายทาง" + +#, fuzzy +msgid "Select the movie path" +msgstr "เลือกพาธของภาพยนต์" + +#, fuzzy +msgid "Select upgrade source" +msgstr "เลือกที่มาเพื่อปรับปรุง" + +msgid "Select upgrade source to edit." +msgstr "เลือกที่มาเพื่อปรับปรุง" + +msgid "Select video input with up/down buttons" +msgstr "เลือกช่องต่อสัญญาณวิดีโอโดยกดปุ่มขึ้น/ลง" + +msgid "Select video mode" +msgstr "เลือกโหมดวีดีโอ" + +msgid "Select wireless network" +msgstr "เลือกเครือข่ายไร้สาย" + +msgid "Select your provider, and press OK to start the scan" +msgstr "" + +msgid "Selecting satellites 1 (USALS)" +msgstr "" + +msgid "Selecting satellites 2 (USALS)" +msgstr "" + +msgid "Send DiSEqC only on satellite change" +msgstr "ส่งคำสั่ง DiSEqC เฉพาะตอนเปลี่ยนช่อง" + +msgid "Separate titles with a main menu" +msgstr "แยกเรื่องนี้ออกจากเมนูหลัก" + +msgid "Sequence repeat" +msgstr "Sequence repeat" + +msgid "Serbian" +msgstr "ภาษาเซอร์เบี่ยน" + +msgid "Service" +msgstr "บริการ" + +msgid "Service has been added to the favourites." +msgstr "บริการนี้ถูกเพิ่มเข้ารายการโปรดแล้ว" + +msgid "Service has been added to the selected bouquet." +msgstr "บริการนี้ถูกเพิ่มเข้ากลุ่มรายการแล้ว" + +#, fuzzy +msgid "Service info" +msgstr "รายละเอียดของบริการ" + +msgid "" +"Service invalid!\n" +"(Timeout reading PMT)" +msgstr "" +"บริการนี้ไม่ถูกต้อง!\n" +"(Timeout reading PMT)" + +#, fuzzy +msgid "Service name" +msgstr "ค้นหาบริการ" + +msgid "" +"Service not found!\n" +"(SID not found in PAT)" +msgstr "" +"ไม่พบบริการใดๆ !\n" +"(ไม่พบ SID ใน PAT)" + +msgid "Service reference" +msgstr "" + +msgid "Service scan" +msgstr "ค้นหาบริการ" + +#, fuzzy +msgid "Service searching" +msgstr "กำลังค้นหาบริการ" + +#, fuzzy +msgid "Service title mode" +msgstr "เลือกโหมดวีดีโอ" + +msgid "" +"Service unavailable!\n" +"Check tuner configuration!" +msgstr "" +"ไม่พบบริการนี้!\n" +"กรุณาตรวจสอบการตั้งค่า Tuner" + +msgid "Services" +msgstr "บริการต่างๆ" + +msgid "Set default" +msgstr "" + +#, fuzzy +msgid "Set end time" +msgstr "เวลาสิ้นสุด" + +msgid "Set fixed" +msgstr "" + +msgid "Set fps for external subtitles" +msgstr "" + +msgid "Set interface as default Interface" +msgstr "ตั้งให้อินเตอร์เฟซนี้เป็นค่าเริ่มต้น" + +msgid "Set limits" +msgstr "" + +msgid "Set the type of the progress indication in the channel selection screen." +msgstr "" + +msgid "Set time window to 1 hour" +msgstr "" + +msgid "Set time window to 2 hours" +msgstr "" + +msgid "Set time window to 3 hours" +msgstr "" + +msgid "Set time window to 4 hours" +msgstr "" + +msgid "Set time window to 5 hours" +msgstr "" + +msgid "Set time window to 6 hours" +msgstr "" + +#, fuzzy +msgid "Set voltage and 22KHz" +msgstr "ตั้งค่า Voltage และ 22KHz" + +msgid "Settings" +msgstr "การตั้งค่า" + +msgid "Setup" +msgstr "ตั้งค่า" + +msgid "Setup menu" +msgstr "" + +#, fuzzy +msgid "Setup mode" +msgstr "โหมดการตั้งค่า" + +msgid "Setup your positioner" +msgstr "" + +#, fuzzy +msgid "Setup your satellite equipment" +msgstr "ตั้งค่าอุปกรณ์ดาวเทียม" + +#, python-format +msgid "Shall the USB stick wizard proceed and program the image file %s into flash memory?" +msgstr "" + +msgid "Sharpness" +msgstr "ความคม" + +msgid "Short filenames" +msgstr "" + +msgid "Show EIT now/next in infobar" +msgstr "" + +#, fuzzy +msgid "Show EPG for current channel..." +msgstr "แสดงแถบรายการเมื่อมีการเปลี่ยนรายการ" + +#, fuzzy +msgid "Show EPG..." +msgstr "แสดงผังรายการ (EPG)" + +msgid "Show Games show" +msgstr "" + +msgid "Show SNR percentage instead of dB value" +msgstr "" + +msgid "Show VCR scart on main menu" +msgstr "" + +#, fuzzy +msgid "Show WLAN status" +msgstr "แสดงสถานะของ WLAN" + +msgid "Show animation while busy" +msgstr "" + +#, fuzzy +msgid "Show background in radio mode" +msgstr "รูปพื้นหลัง" + +msgid "Show bouquet selection menu" +msgstr "" + +msgid "Show busy indicator when the system is busy." +msgstr "" + +msgid "Show channel numbers in channel selection" +msgstr "" + +msgid "Show columns" +msgstr "" + +msgid "Show crypto icons" +msgstr "" + +msgid "Show crypto info in infobar" +msgstr "" + +msgid "Show detailed event info" +msgstr "" + +#, fuzzy +msgid "Show event details" +msgstr "แสดงรายละเอียดรายการ" + +msgid "Show event-progress in channel selection" +msgstr "" + +#, fuzzy +msgid "Show extended description" +msgstr "แสดงคำอธิบายรายการเพิ่มเติม" + +#, fuzzy +msgid "Show extensions..." +msgstr "ดูส่วนเพิ่มเติม..." + +msgid "Show icon for new/unseen items" +msgstr "" + +msgid "Show in extensions menu" +msgstr "" + +#, fuzzy +msgid "Show info" +msgstr "แสดงข้อมูล" + +#, fuzzy +msgid "Show info line" +msgstr "แสดง Infoline" + +msgid "Show infobar on channel change" +msgstr "แสดงแถบรายการเมื่อเปลี่ยนช่อง" + +msgid "Show infobar on event change" +msgstr "แสดงแถบรายการเมื่อมีการเปลี่ยนรายการ" + +msgid "Show infobar on skip forward/backward" +msgstr "แสดงแถบรายการเมื่อเลือกเดินหน้า/ถอยหลัง" + +msgid "Show latest commits on sourceforge" +msgstr "" + +#, fuzzy +msgid "Show message when recording starts" +msgstr "แสดงข้อความเริ่มเมื่อบับทึกรายการ" + +#, fuzzy +msgid "Show movie lengths in movielist" +msgstr "โหลดความยาวของภาพยนต์" + +msgid "Show multi channel EPG" +msgstr "" + +msgid "Show picons in channel list" +msgstr "" + +msgid "Show positioner movement" +msgstr "แสดงตำแหน่งตัวขับจาน" + +msgid "Show screensaver" +msgstr "" + +msgid "Show second infobar" +msgstr "" + +msgid "Show service type icons" +msgstr "" + +msgid "Show services beginning with" +msgstr "แสดงบริการที่เริ่มต้นด้วย" + +#, fuzzy +msgid "Show shutdown menu" +msgstr "แสดงเมนูปิดเครื่อง" + +msgid "Show single service EPG" +msgstr "" + +msgid "Show status icons in Movielist" +msgstr "" + +msgid "Show status icons in movie list" +msgstr "" + +msgid "Show status icons in movielist" +msgstr "" + +#, fuzzy +msgid "Show tag menu" +msgstr "แสดงเมนูป้าย" + +msgid "Show the radio player..." +msgstr "แสดงเครื่องเล่นวิทยุ..." + +msgid "Show the tv player..." +msgstr "แสดงเครื่องเล่นโทรทัศน์..." + +msgid "Show warning when timeshift is stopped" +msgstr "" + +msgid "Shows the state of your wireless LAN connection.\n" +msgstr "แสดงสถานะการเชื่อมต่อเครือข่ายไร้สาย\n" + +#, fuzzy +msgid "Shuffle playlist" +msgstr "สลับรายการในสารบัญ" + +msgid "Shutdown" +msgstr "" + +msgid "Shutdown when in Standby" +msgstr "" + +msgid "Side by side" +msgstr "" + +msgid "Signal OK, proceeding" +msgstr "" + +msgid "Signal quality" +msgstr "" + +#, fuzzy +msgid "Signal strength:" +msgstr "ความเข้มสัญญาณ:" + +msgid "Signal: " +msgstr "สัญญาณ:" + +msgid "Similar" +msgstr "เหมือน" + +msgid "Similar broadcasts:" +msgstr "ออกอากาศซ้ำ:" + +msgid "Simple" +msgstr "แบบง่าย" + +msgid "Simple titleset (compatibility for legacy players)" +msgstr "ใช้ชื่อเรื่องแบบง่าย (ใช้ได้กับเครื่องเล่นรุ่นเก่า)" + +msgid "Single" +msgstr "เดี่ยว" + +msgid "Single EPG" +msgstr "ผังรายการเดี่ยว" + +msgid "Single satellite" +msgstr "ดาวเทียวเดียว" + +#, fuzzy +msgid "Single step (GOP)" +msgstr "Singlestep (GOP)" + +msgid "Single transponder" +msgstr "ทรานสปอนเดอร์เดียว" + +msgid "Site latitude" +msgstr "" + +msgid "Site longitude" +msgstr "" + +msgid "Skin" +msgstr "สกิน" + +msgid "Skins" +msgstr "สกิน" + +#, fuzzy +msgid "Skip empty services" +msgstr "ป้องกันบริการ" + +msgid "Skip internet connection check (disables automatic package installation)" +msgstr "" + +#, fuzzy +msgid "Sleep timer" +msgstr "ตั้งเวลาปิดเครื่อง" + +msgid "SleepTimer Configuration" +msgstr "" + +msgid "Sleeptimer" +msgstr "" + +#, fuzzy +msgid "Slide picture in loop" +msgstr "วนภาพไปเรื่อยๆ" + +#, fuzzy +msgid "Slide show interval (sec.)" +msgstr "ความเร็วของสไลด์ (วินาที)" + +#, python-format +msgid "Slot %d" +msgstr "ช่อง %d" + +msgid "Slovak" +msgstr "" + +msgid "Slovenian" +msgstr "ภาษาสโลเวเนี่ยน" + +msgid "Slow" +msgstr "ช้า" + +#, fuzzy +msgid "Slow motion speeds" +msgstr "ระดับของความช้า" + +#, fuzzy +msgid "Small progress" +msgstr "กำลังทำงาน" + +msgid "Social/Political/Economics" +msgstr "" + +msgid "SoftCam / CI" +msgstr "" + +#, fuzzy +msgid "Softcam type" +msgstr "ซอพท์แวร์" + +msgid "Software" +msgstr "ซอพท์แวร์" + +msgid "Software management" +msgstr "" + +msgid "Software manager setup" +msgstr "" + +msgid "Software restore" +msgstr "นำสำรองกลับมาใช้" + +msgid "Software update" +msgstr "ปรับปรุงซอพท์แวร์" + +msgid "Softwaremanager information" +msgstr "" + +msgid "Some plugins are not available:\n" +msgstr "Plugin บางตัวยังไม่สามารถใช้งานได้:\n" + +#, fuzzy, python-format +msgid "Sorry, %s has not been installed!" +msgstr "ท่านยังไม่ได้ติดตั้งตัว MediaScanner!" + +msgid "Sorry, deleting directories can (for now) only be done through the trash can." +msgstr "" + +#, fuzzy +msgid "Sorry, no backups found!" +msgstr "ไม่พบชุดสำรองข้อมูล" + +#, fuzzy +msgid "Sorry, no details available!" +msgstr "ไม่พบรายละเอียดที่ต้องการ" + +#, fuzzy +msgid "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." +msgstr "" +"ปลายทางที่เลือกไม่สามารถบันทืกได้\n" +"กรุณาเลือกแหล่งอื่น" + +msgid "Sort" +msgstr "" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort A-Z" +msgstr "เรียง A-Z" + +msgid "Sort by" +msgstr "" + +msgid "Sort list:" +msgstr "" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +#, fuzzy +msgid "Sort time" +msgstr "จัดเรียงเวลา" + +msgid "Sound" +msgstr "เสียง" + +#, fuzzy +msgid "Sound carrier" +msgstr "Soundcarrier" + +msgid "Source request" +msgstr "" + +msgid "South" +msgstr "ทิศใต้" + +msgid "Spanish" +msgstr "ภาษาสเปน" + +msgid "Specify the end time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the end time until the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify the start time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the start time when the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify timeframe to ignore inactivity sleeptimer" +msgstr "" + +msgid "Specify timeframe to ignore the shutdown in standby" +msgstr "" + +msgid "Split preview mode" +msgstr "แยกโหมดตัวอย่าง" + +msgid "Splitscreen" +msgstr "" + +msgid "Sports" +msgstr "" + +#, fuzzy +msgid "Standard" +msgstr "มาตรฐาน" + +msgid "Standart list" +msgstr "" + +msgid "Standby" +msgstr "Standby" + +#, fuzzy +msgid "Standby / restart" +msgstr "ปิดเครื่อง" + +msgid "Standby after current event" +msgstr "" + +#, python-format +msgid "Standby fan %d PWM" +msgstr "" + +#, python-format +msgid "Standby fan %d voltage" +msgstr "" + +msgid "Standby in " +msgstr "" + +msgid "StandbyLED" +msgstr "" + +msgid "Start from the beginning" +msgstr "เริ่มตั้งแต่ต้น" + +msgid "Start offline decode" +msgstr "" + +msgid "Start recording?" +msgstr "เริ่มบันทึก?" + +msgid "Start test" +msgstr "เริ่มทดสอบ" + +#, fuzzy +msgid "Start time" +msgstr "เวลาเริ่ม" + +msgid "Start time to ignore inactivity sleeptimer" +msgstr "" + +msgid "Start time to ignore shutdown in standby" +msgstr "" + +#, fuzzy +msgid "Start timeshift" +msgstr "เริ่มควบคุมรายการสด" + +msgid "Start with list screen" +msgstr "" + +msgid "Starting on" +msgstr "เริ่มตอน" + +msgid "Startup the set top box in standby" +msgstr "" + +msgid "Startup to Standby" +msgstr "" + +msgid "Step east" +msgstr "ไปทางทิศตะวันออก" + +msgid "Step west" +msgstr "ไปทางทิศตะวันตก" + +msgid "Stepped east" +msgstr "" + +msgid "Stepped west" +msgstr "" + +msgid "Stop" +msgstr "หยุด" + +#, fuzzy +msgid "Stop PiP" +msgstr "ยกเลิกภาพซ้อนภาพ" + +msgid "Stop current event and disable coming events" +msgstr "หยุดรายการปัจจุบัน และไม่ให้รายการต่อไปทำงาน" + +msgid "Stop current event but not coming events" +msgstr "หยุดรายการปัจจุบัน แต่ไม่หยุดกับรายการต่อไป" + +#, fuzzy +msgid "Stop entry" +msgstr "เลิกป้อน" + +msgid "Stop playing this movie?" +msgstr "หยุดเล่นภาพยนต์นี้หรือไม่?" + +msgid "Stop recording" +msgstr "" + +msgid "Stop recording and delete" +msgstr "" + +msgid "Stop service on return to movie list" +msgstr "" + +msgid "Stop test" +msgstr "หยุดทดสอบ" + +msgid "Stop testing plane after # failed transponders" +msgstr "หยุดทดสอบแนวเมื่อมี # ทรานสปอนเดอร์ ไม่ผ่านการทดสอบ" + +msgid "Stop testing plane after # successful transponders" +msgstr "หยุดการตรวจสอบแนวเมื่อพบ # ทรานสปอนเดอร์" + +msgid "Stop timer recording" +msgstr "" + +#, fuzzy +msgid "Stop timeshift" +msgstr "หยุดควบคุมรายการสด" + +#, fuzzy +msgid "Stop timeshift?" +msgstr "หยุดควบคุมรายการสด?" + +msgid "Stopped" +msgstr "" + +msgid "Store at index" +msgstr "" + +msgid "Store position" +msgstr "บันทึกตำแหน่ง" + +msgid "Stored position" +msgstr "บันทึกตำแหน่งแล้ว" + +msgid "Stream" +msgstr "" + +msgid "Stream request" +msgstr "" + +msgid "Strongest position" +msgstr "" + +msgid "Subservice list..." +msgstr "บริการย่อย..." + +msgid "Subservices" +msgstr "บริการย่อย" + +msgid "Subtitle Quickmenu" +msgstr "" + +#, fuzzy +msgid "Subtitle alignment" +msgstr "เลือกซับไตเติ้ล" + +msgid "Subtitle border width" +msgstr "" + +msgid "Subtitle delay when timing is bad" +msgstr "" + +msgid "Subtitle delay when timing lacks" +msgstr "" + +#, fuzzy +msgid "Subtitle font size" +msgstr "ซับไตเติ้ล" + +msgid "Subtitle language selection 1" +msgstr "" + +msgid "Subtitle language selection 2" +msgstr "" + +msgid "Subtitle language selection 3" +msgstr "" + +msgid "Subtitle language selection 4" +msgstr "" + +#, fuzzy +msgid "Subtitle position" +msgstr "เลือกซับไตเติ้ล" + +msgid "Subtitle selection" +msgstr "เลือกซับไตเติ้ล" + +msgid "Subtitle selection..." +msgstr "" + +msgid "Subtitle settings" +msgstr "" + +msgid "Subtitles" +msgstr "ซับไตเติ้ล" + +msgid "Sun" +msgstr "อา." + +msgid "Sunday" +msgstr "วันอาทิตย์" + +#, fuzzy +msgid "Swap PiP and main picture" +msgstr "สลับภาพรายการ" + +#, fuzzy +msgid "Swap services" +msgstr "สลับบริการ" + +msgid "Swedish" +msgstr "ภาษาสวีเดน" + +msgid "Switch TV to correct input" +msgstr "" + +msgid "Switch between filelist/playlist" +msgstr "" + +msgid "Switch between normal mode and list mode" +msgstr "" + +msgid "Switch to HDMI in mode" +msgstr "" + +#, fuzzy +msgid "Switch to filelist" +msgstr "เข้าสู่สารบัญไฟล์" + +msgid "Switch to next channel" +msgstr "" + +#, fuzzy +msgid "Switch to next channel in history" +msgstr "รายการต่อไปในหน่วยความจำ" + +#, fuzzy +msgid "Switch to next sub service" +msgstr "ไปบริการย่อยถัดไป" + +#, fuzzy +msgid "Switch to playlist" +msgstr "เข้าสู่สารบัญรายการ" + +#, fuzzy +msgid "Switch to previous channel" +msgstr "ไปบริการย่อยก่อนหน้า" + +#, fuzzy +msgid "Switch to previous channel in history" +msgstr "รายการก่อนหน้าที่จำไว้" + +#, fuzzy +msgid "Switch to previous sub service" +msgstr "ไปบริการย่อยก่อนหน้า" + +msgid "Switchable tuner types:" +msgstr "" + +msgid "Symbol rate" +msgstr "" + +msgid "Symbol rate:" +msgstr "" + +msgid "Sync failure moving back to origin !" +msgstr "" + +msgid "System" +msgstr "ระบบ" + +#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) +msgid "TRANSLATOR_INFO" +msgstr "TRANSLATOR_INFO" + +msgid "TS file is too large for ISO9660 level 1!" +msgstr "ชื่อไฟล์ TS ยาวเกินไปสำหรับ ISO9660 level 1!" + +msgid "TSID" +msgstr "" + +msgid "TV physical address report" +msgstr "" + +msgid "TXT PID" +msgstr "" + +#, fuzzy +msgid "Table of contents for collection" +msgstr "สารบัญของคอลเล็คชั่น" + +msgid "Tags" +msgstr "ป้าย" + +msgid "Teletext subtitle color" +msgstr "" + +#, fuzzy +msgid "Temperature and fan control" +msgstr "ควบคุมอายุ" + +msgid "Terrestrial" +msgstr "ภาคพื้นดิน" + +msgid "Terrestrial provider" +msgstr "ผู้ให้บริการภาคพื้นดิน" + +msgid "Test DiSEqC settings" +msgstr "ทดสอบการตั้งค่า DiSEqC" + +msgid "Test mode" +msgstr "โหมดทดสอบ" + +msgid "Test the network configuration of your receiver.\n" +msgstr "" + +#, fuzzy +msgid "Test type" +msgstr "ประเภทการทดสอบ" + +#, fuzzy +msgid "Text color" +msgstr "สีตัวอักษร" + +msgid "Thai" +msgstr "" + +msgid "" +"Thank you for using the wizard.\n" +"Please press OK to continue." +msgstr "" +"ขอบคุณที่ท่านใช้บริการตัวช่วยติดตั้ง\n" +"กรุณากดปุ่ม OK เพื่อทำงานต่อ" + +#, fuzzy +msgid "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." +msgstr "" +"ขอบคุณที่ท่านใช้บริการตัวช่วยติดตั้ง\n" +"กรุณากดปุ่ม OK เพื่อทำงานต่อ" + +msgid "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?" +msgstr "" + +msgid "The PIN code has been changed successfully." +msgstr "" + +msgid "The PIN codes you entered are different." +msgstr "" + +msgid "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" +msgstr "" + +msgid "The backup failed. Please choose a different backup location." +msgstr "การสำรองข้อมูลล้มเหลว กรุณาเลือกแหล่งจัดเก็บข้อมูลอื่น" + +#, python-format +msgid "" +"The current beta image might not be stable.\n" +"For more information see %s." +msgstr "" + +#, python-format +msgid "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." +msgstr "" + +#, python-format +msgid "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" +msgstr "" +"พบอุปกรณ์ดังนี้:\n" +"\n" +"%s\n" +"\n" +"ท่านต้องการที่จะเขียน USB flasher ลงเมโมรี่นี้หรือไม่?" + +msgid "The following files were found..." +msgstr "พบไฟล์เหล่านี้..." + +msgid "The md5sum validation failed, the file may be corrupted!" +msgstr "" + +#, fuzzy +msgid "" +"The network wizard extension is not installed!\n" +"Please install it." +msgstr "ยังไม่ได้ติดตั้งปลั๊กอินสำหรับเครือข่ายไร้สาย กรุณาติดตั้งก่อน" + +#, python-format +msgid "The path %s already exists." +msgstr "พาธ %s นี้มีแล้วในระบบ" + +msgid "The pin code you entered is wrong." +msgstr "รหัสที่ป้อนผิด" + +#, python-format +msgid "The results have been written to %s." +msgstr "ผลลัพธ์ถูกเขียนลง %s." + +msgid "The sleep timer has been activated." +msgstr "เวลาปิดเครื่องเริ่มทำงานแล้ว" + +msgid "The sleep timer has been disabled." +msgstr "เวลาปิดเครื่องถูกยกเลิกแล้ว" + +#, fuzzy +msgid "" +"The software management extension is not installed!\n" +"Please install it." +msgstr "ยังไม่ได้ติดตั้งปลั๊กอินสำหรับเครือข่ายไร้สาย กรุณาติดตั้งก่อน" + +#, python-format +msgid "The status of the current beta image could not be checked because %s can not be reached." +msgstr "" + +msgid "The timer file (timers.xml) is corrupt and could not be loaded." +msgstr "ไฟล์ข้อมูลการตารางเวลา (timers.xml) เสียหาย ไม่โหลดได้" + +#, fuzzy +msgid "The user interface of your receiver is restarting" +msgstr "กรุณารอสักครู่... กำลังเริ่มระบบเครือข่าย..." + +msgid "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" +msgstr "" + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." +msgstr "" +"ยังไม่ได้ติดตั้งปลั๊กอินสำหรับเครือข่ายไร้สาย\n" +"กรุณาติดตั้งก่อน ทั้งนี้กรุณาเลือกว่า ท่านจะทำอะไรต่อไป" + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it." +msgstr "ยังไม่ได้ติดตั้งปลั๊กอินสำหรับเครือข่ายไร้สาย กรุณาติดตั้งก่อน" + +msgid "The wizard can backup your current settings. Do you want to do a backup now?" +msgstr "ตัวช่วยเหลือสามารถสำรองข้อมูลการตั้งค่าให้ท่านได้ ท่านต้องการที่จะสำรองข้อมูลตอนนี้หรือไม่?" + +#, python-format +msgid "The wizard found a configuration backup. Do you want to restore your old settings from %s?" +msgstr "" + +msgid "The wizard is finished now." +msgstr "จบการทำงานของตัวช่วยเหลือ" + +msgid "There are at least " +msgstr "อย่างน้อยต้องมี" + +#, fuzzy, python-format +msgid "There are at least %s updates available." +msgstr " มีรายการปรับปรุง" + +msgid "There are currently no outstanding actions." +msgstr "" + +msgid "There are no updates available." +msgstr "" + +msgid "There is no signal to lock on !" +msgstr "" + +msgid "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" +msgstr "" +"เนื้อที่บนพาร์ทิชั่นที่เลือกไม่พอ\n" +"ต้องการทำต่อหรือไม่?" + +msgid "This DVD RW medium is already formatted - reformatting will erase all content on the disc." +msgstr "แผ่น DVD-RW นี้ได้รับการฟอร์แมทมาแล้ว หากทำซ้ำจะเป็นการลบข้อมูลออกทั้งหมด" + +msgid "" +"This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!" +msgstr "" + +msgid "This plugin is installed." +msgstr "ปลั๊กอินตัวนี้ได้ติดตั้งแล้ว" + +msgid "This plugin is not installed." +msgstr "ปลั๊กอินตัวนี้ยังไม่ได้ติดตั้ง" + +msgid "This plugin will be installed." +msgstr "ปลั๊กอินตัวนี้จะถูกติดตั้ง" + +msgid "This plugin will be removed." +msgstr "ปลั๊กอินตัวนี้จะถูกลบออก" + +#, python-format +msgid "This receiver cannot decode %s streams!" +msgstr "" + +#, fuzzy +msgid "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration" +msgstr "" +"การทดสอบนี้จะเป็นการตรวจสอบการตั้งค่า Nameservers.\n" +"หากผลลัพธ์เป็น \"ไม่ยืนยัน\":\n" +"- ให้ทำการตรวจสอบ DHCP สายสัญญาณ และอะแด๊ปเตอร์\n" +"- หากท่านป้อนข้อมูล Nameservers ด้วยตัวเองให้ทำการตรวจสอบความถูกต้องของ \"Nameserver\"" + +#, fuzzy +msgid "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" +msgstr "" +"รายการทดสอบนี้จะทำการตรวจสอบสายสัญญาณ\n" +"หากผลลัพธ์เป็น \"ถูกตัดสัญญาณ\" :\n" +"- ให้ตรวจสอบการเสียบสายสัญญาณ\n" +"- สายสัญญาณอาจขาดให้ตรวจสอบ" + +#, fuzzy +msgid "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" +msgstr "" +"การทดสอบนี้จะทำการตรวจสอบว่า IP Address ที่ได้สามารถใช้งานจริงได้หรือไม่\n" +"หากพบผลลัพธ์เป็น \"ไม่ยืนยัน\":\n" +"- ไม่พบ IP Address ที่สามารถใช้งานได้\n" +"- แนะนำให้ตรวจสอบการตั้งค่า DHCP ตรวจสอบสายสัญญาญ" + +#, fuzzy +msgid "" +"This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." +msgstr "" +"การตรวจสอบนี้จะทดสอบว่า เครือข่ายของท่านใช้ DHCP หรือไม่\n" +"หากท่านเห็น \"ไม่ได้ใช้\" ปรากฏ:\n" +"- แสดงว่า IP Address ถูกป้อนเองด้วยมือ\n" +"- ให้ตรวจสอบความถูกต้องของ IP Address และทำงานได้หรือไม่\n" +"หากท่านเห็น \"ใช้\" ปรากฏ:\n" +"- จะทำการตรวจสอบต่อด้วยว่า การตั้งค่า DHCP ถูกต้องหรือไม่" + +#, fuzzy +msgid "This test detects your configured LAN adapter." +msgstr "ทดสอบการตั้งเครือข่าย" + +msgid "" +"This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\n" +"Are you sure?" +msgstr "" + +msgid "Three" +msgstr "สาม" + +msgid "Threshold" +msgstr "ระดับ" + +msgid "Thu" +msgstr "พฤ." + +msgid "Thumbnails" +msgstr "ภาพเล็ก" + +msgid "Thursday" +msgstr "วันพฤหัสบดี" + +msgid "Time" +msgstr "เวลา" + +#, fuzzy +msgid "Time scale" +msgstr "เลือกการตั้งเวลา" + +msgid "Timer" +msgstr "ตั้งเวลา" + +msgid "Timer Overview" +msgstr "" + +#, fuzzy +msgid "Timer edit" +msgstr "แก้ไขการตั้งเวลา" + +#, fuzzy +msgid "Timer editor" +msgstr "ตัวแก้ไขการตั้งเวลา" + +msgid "Timer entry" +msgstr "ตั้งเวลา" + +msgid "Timer log" +msgstr "ข้อมูลการตั้งเวลา" + +msgid "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" +msgstr "" +"พบเวลาที่ตั้งในไฟล์ timers.xml ซ้อนกัน !\n" +"กรุณาตรวจสอบ!" + +#, fuzzy +msgid "Timer overview" +msgstr "ตั้งเวลา" + +#, fuzzy +msgid "Timer recording location" +msgstr "เปลี่ยนแปลงการบันทึก (ช่วงเวลา)" + +msgid "Timer sanity error" +msgstr "การตั้งเวลามีปัญหา" + +msgid "Timer selection" +msgstr "เลือกการตั้งเวลา" + +msgid "Timer selection..." +msgstr "" + +#, fuzzy +msgid "Timer type" +msgstr "ประเภทการตั้งเวลา" + +msgid "Timeshift" +msgstr "ควบคุมรายการสด" + +msgid "Timeshift Live" +msgstr "" + +msgid "Timeshift location" +msgstr "" + +msgid "Timeshift not possible!" +msgstr "ไม่สามารถใช้งานควบคุมรายการสดได้!" + +msgid "Timezone" +msgstr "เส้นแบ่งเวลา" + +msgid "Title" +msgstr "ชื่อเรื่อง" + +msgid "Title properties" +msgstr "คุณลักษณะของเรื่อง" + +msgid "Titleset mode" +msgstr "โหมดตั้งชื่อเรื่อง" + +msgid "To audio selection" +msgstr "" + +msgid "To subtitle selection" +msgstr "" + +msgid "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." +msgstr "" + +msgid "Today" +msgstr "วันนี้" + +#, fuzzy +msgid "Toggle a cut mark at the current position" +msgstr "สลับการเลือกจุดสำหรับตัดต่อตรงนี้" + +#, fuzzy +msgid "Tone amplitude" +msgstr "Tone mode" + +msgid "Tone mode" +msgstr "Tone mode" + +msgid "Toneburst" +msgstr "Toneburst" + +msgid "Toneburst A/B" +msgstr "Toneburst A/B" + +msgid "Top and bottom" +msgstr "" + +msgid "Track" +msgstr "ร่องเสียง" + +msgid "Translation" +msgstr "การแปล" + +msgid "Translation:" +msgstr "การแปล:" + +msgid "Translations" +msgstr "" + +msgid "Transmission mode" +msgstr "โหมดการถ่ายทอด" + +msgid "Transponder" +msgstr "ทรานสปอนเดอร์" + +#, fuzzy +msgid "Transponder type" +msgstr "ประเภทของทรานสปอนเดอร์" + +msgid "Trash can" +msgstr "" + +msgid "Tries left:" +msgstr "เหลืออยู่:" + +msgid "Try to find used transponders in cable network.. please wait..." +msgstr "กำลังค้นหาทรานสปอนเดอร์ในเน็ทเวอร์ก กรุณารอสักครู่" + +msgid "Trying to download a new packetlist. Please wait..." +msgstr "กำลังดาวน์โหลดข้อมูลติดตั้งใหม่ กรุณารอสักครู่..." + +msgid "Tue" +msgstr "อัง." + +msgid "Tuesday" +msgstr "วันอังคาร" + +msgid "Tune" +msgstr "ปรับค่า" + +#, fuzzy +msgid "Tune and focus" +msgstr "สถานะของ Tuner" + +msgid "Tune failed!" +msgstr "ปรับค่าล้มเหลว!" + +msgid "Tuner" +msgstr "Tuner" + +msgid "Tuner configuration" +msgstr "ตั้งค่า Tuner" + +msgid "Tuner is not supported" +msgstr "" + +#, fuzzy +msgid "Tuner slot" +msgstr "Tuner Slot" + +msgid "Tuner status" +msgstr "สถานะของ Tuner" + +#, fuzzy, python-format +msgid "Tuner status %s" +msgstr "สถานะของ Tuner" + +msgid "Tuner type" +msgstr "" + +msgid "Turkish" +msgstr "ภาษาตูรกี" + +msgid "Turn on the power LED during standby." +msgstr "" + +msgid "Turning step size" +msgstr "" + +msgid "Two" +msgstr "สอง" + +msgid "Type" +msgstr "ประเภท" + +msgid "Type of scan" +msgstr "ประเภทการค้นหา" + +msgid "USALS" +msgstr "USALS" + +msgid "USALS calibration" +msgstr "" + +#, fuzzy +msgid "USB stick" +msgstr "USB เมมโมรี่" + +msgid "USB stick wizard" +msgstr "ตัวช่วยสำหรับ USB" + +msgid "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" + +msgid "Undo install" +msgstr "" + +msgid "Undo uninstall" +msgstr "" + +msgid "Unencrypted" +msgstr "" + +msgid "UnhandledKey" +msgstr "" + +msgid "Unicable" +msgstr "" + +msgid "Unicable LNB" +msgstr "Unicable LNB" + +msgid "Unicable Martix" +msgstr "Unicable Martix" + +msgid "Uninstall" +msgstr "" + +msgid "Universal LNB" +msgstr "Universal LNB" + +msgid "Unknown" +msgstr "" + +msgid "Unmount" +msgstr "" + +msgid "Unsupported" +msgstr "ไม่รองรับ" + +msgid "Update" +msgstr "ปรุบปรุง" + +msgid "Update and ask to reboot" +msgstr "" + +msgid "Update and reboot (recommended)" +msgstr "" + +#, fuzzy +msgid "Update channel list only" +msgstr "รายการต่อไปในหน่วยความจำ" + +#, python-format +msgid "Update completed, %d package was installed." +msgid_plural "Update completed, %d packages were installed." +msgstr[0] "" +msgstr[1] "" + +msgid "Update completed. Do you want to reboot your receiver?" +msgstr "" + +msgid "Update failed. Your receiver does not have a working internet connection." +msgstr "" + +msgid "Update has completed." +msgstr "" + +msgid "Updatefeed not available." +msgstr "" + +msgid "Updating software catalog" +msgstr "" + +msgid "Upgrading" +msgstr "กำลังอัพเกรด" + +msgid "Use" +msgstr "ใช้" + +msgid "Use DHCP" +msgstr "เลือกใช้ DHCP" + +msgid "Use EIT EPG information when it is available." +msgstr "" + +msgid "Use FreeSat EPG information when it is available." +msgstr "" + +msgid "Use MHW EPG information when it is available." +msgstr "" + +msgid "Use Netmed EPG information when it is available." +msgstr "" + +msgid "Use TV remote control" +msgstr "" + +#, fuzzy +msgid "Use USALS for this sat" +msgstr "ใช้ USALS กับดาวเทียมนี้" + +msgid "Use ViaSat EPG information when it is available." +msgstr "" + +msgid "Use Virgin EPG information when it is available." +msgstr "" + +msgid "Use a gateway" +msgstr "ใช้ Gateway" + +msgid "Use fastscan channel names" +msgstr "" + +msgid "Use fastscan channel numbering" +msgstr "" + +msgid "Use frequency or channel" +msgstr "" + +msgid "Use individual settings for each directory" +msgstr "" + +#, fuzzy +msgid "Use interface" +msgstr "เลือกใช้อินเตอร์เฟซนี้" + +msgid "Use official channel numbering" +msgstr "" + +msgid "Use original DVB subtitle position" +msgstr "" + +msgid "Use original teletext position" +msgstr "" + +msgid "Use power measurement" +msgstr "ใช้ power measurement" + +#, fuzzy +msgid "Use the network wizard to configure selected network adapter" +msgstr "ใช้ตัวช่วยสำหรับตั้งค่าเครือข่าวย\n" + +#, fuzzy +msgid "Use the network wizard to configure your network\n" +msgstr "ใช้ตัวช่วยสำหรับตั้งค่าเครือข่าวย\n" + +msgid "Use the up/down keys on your remote control to select an option. After that, press OK." +msgstr "ใช้ปุ่มขึ้นหรือลงบนรีโมทเพื่อเลือก จากนั้นกดปุ่ม OK" + +#, fuzzy +msgid "Use the wizard to set up basic features" +msgstr "ใช่ตัวช่วยเพื่อตั้งค่าพื้นฐาน" + +#, fuzzy +msgid "Use these input device settings?" +msgstr "ยอมรับการตั้งค่านี้?" + +#, fuzzy +msgid "Use these settings?" +msgstr "นำสำรองการตั้งค่าต่างๆ กลับมาใช้" + +msgid "Use this video enhancement settings?" +msgstr "ยอมรับการตั้งค่านี้?" + +#, fuzzy +msgid "Use trash can in movielist" +msgstr "กลับไปยังสารบัญภาพยนต์" + +msgid "Used service scan type" +msgstr "ประเภทของการค้นหา" + +msgid "User - bouquets" +msgstr "" + +msgid "User defined" +msgstr "ผู้ใช้กำหนด" + +msgid "User defined transponder" +msgstr "" + +#, fuzzy +msgid "User interface" +msgstr "เลือกใช้อินเตอร์เฟซนี้" + +msgid "Username" +msgstr "ชื่อผู้ใช้" + +#, python-format +msgid "Using LNB %d" +msgstr "" + +msgid "Using fixed address" +msgstr "" + +#, python-format +msgid "Using tuner %s" +msgstr "" + +msgid "Usually when the subtitle language is the same as the audio language, the subtitles will not be used. Enable this option to allow these subtitles to be used." +msgstr "" + +msgid "VCR scart" +msgstr "VCR scart" + +msgid "VMGM (intro trailer)" +msgstr "VMGM (intro trailer)" + +msgid "Vertical" +msgstr "แนวตั้ง (V)" + +msgid "Vertical turning speed" +msgstr "" + +msgid "Video PID" +msgstr "" + +msgid "Video enhancement preview" +msgstr "แสดงตัวอย่างวิดีโอ" + +msgid "Video enhancement settings" +msgstr "ตั้งค่าวิดีโอขั้นสูง" + +msgid "Video enhancement setup" +msgstr "ตั้งค่าวิดีโอชั้นสูง" + +#, fuzzy +msgid "Video fine tuning" +msgstr "ปรับวิดีโอแบบละเอียด" + +#, fuzzy +msgid "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." +msgstr "" +"เลือกช่องทางแสดงวีดีโอ\n" +"\n" +"หลังจากกดปุ่ม OK หากยังมีการแสดงผลที่จอโทรทัศน์ให้กด OK ซ้ำอีกครั้ง หากไม่เห็นภาพให้รอสักครู่\n" +"\n" +"ช่องทางแสดงผลอื่นๆ จะถูกเลือกใน 10 วินาที" + +msgid "Video mode selection." +msgstr "เลือกโหมดวีดีโอ" + +#, fuzzy +msgid "Video output" +msgstr "ช่องวีดีโอ" + +#, fuzzy +msgid "Video setup" +msgstr "ตั้งค่าวีดีโอ" + +#, fuzzy +msgid "Video wizard" +msgstr "ตัวช่วยตั้งค่าวีดีโอ" + +#, python-format +msgid "Video: %s fps" +msgstr "" + +msgid "VideoMode" +msgstr "" + +msgid "Videocodec" +msgstr "" + +msgid "Videoformat" +msgstr "" + +msgid "Videosize" +msgstr "" + +msgid "View Rass interactive..." +msgstr "แสดง RASS แบบ Interactive" + +msgid "View details" +msgstr "แสดงรายละเอียด" + +msgid "View list of available " +msgstr "แสดงรายการที่ใช้ได้" + +msgid "View list of available CommonInterface extensions" +msgstr "แสดงรายการส่วนเพิ่มเติมสำหรับอินเตอร์เฟซพื้นฐาน" + +msgid "View list of available EPG extensions." +msgstr "แสดงผังรายการเพิ่มเติม" + +msgid "View list of available Satellite equipment extensions." +msgstr "" + +msgid "View list of available communication extensions." +msgstr "แสดงรายการส่วนเพิ่มเติมสำหรับการสื่อสาร" + +msgid "View list of available default settings" +msgstr "แสดงการตั้งค่าเริ่มต้นที่ใช้ได้" + +#, fuzzy +msgid "View list of available display and userinterface extensions." +msgstr "แสดงรายการส่วนเพิ่มเติมสำหรับส่วนติดต่อผู้ใช้" + +msgid "View list of available multimedia extensions." +msgstr "แสดงรายการส่วนเพิ่มเติมสำหรับมัลติมีเดีย" + +msgid "View list of available networking extensions" +msgstr "แสดงรายการส่วนเพิ่มเติมสำหรับเครือข่าย" + +msgid "View list of available recording extensions" +msgstr "แสดงรายการส่วนเพิ่มเติมช่วยบันทึกรายการ" + +msgid "View list of available skins" +msgstr "แสดงรายการของสกินที่ใช้งานได้" + +msgid "View list of available software extensions" +msgstr "แสดงรายการซอพท์แวร์ที่สามารถติดตั้งเพิ่มเติมได้" + +msgid "View list of available system extensions" +msgstr "แสดงรายการส่วนเพิ่มเติมระบบที่สามารถติดตั้งได้" + +#, fuzzy +msgid "View photos..." +msgstr "ดูภาพ" + +msgid "View teletext..." +msgstr "อ่านเทเลเท็กซ์..." + +#, fuzzy +msgid "View video CD..." +msgstr "ดูวีซีดี" + +#, fuzzy +msgid "Virtual keyboard" +msgstr "แป้นพิมพ์จำลอง" + +msgid "Voltage mode" +msgstr "Voltage mode" + +msgid "Volume" +msgstr "ระดับเสียง" + +msgid "W" +msgstr "W" + +msgid "WEP" +msgstr "WEP" + +msgid "WLAN connection" +msgstr "" + +msgid "WPA" +msgstr "WPA" + +msgid "WPA or WPA2" +msgstr "WPA หรือ WPA2" + +msgid "WPA2" +msgstr "WPA2" + +msgid "WSS on 4:3" +msgstr "WSS บน 4:3" + +msgid "Waiting" +msgstr "กำลังคอย..." + +msgid "Waiting for mount" +msgstr "" + +msgid "Waiting for partition" +msgstr "" + +msgid "Wakeup" +msgstr "" + +msgid "Wakeup TV from standby" +msgstr "" + +msgid "Wakeup receiver for start timer" +msgstr "" + +msgid "Wakeup receiver from standby" +msgstr "" + +msgid "Wakeup signal from TV" +msgstr "" + +msgid "Wakeup type" +msgstr "" + +msgid "Warning: no LNB; using factory defaults." +msgstr "" + +#, fuzzy +msgid "Watch movies..." +msgstr "เล่นภาพยนต์ที่ได้บันทึกไว้..." + +#, fuzzy +msgid "Watch recordings..." +msgstr "กำลังบันทึกรายการ..." + +msgid "Wed" +msgstr "พุธ" + +msgid "Wednesday" +msgstr "วันพุธ" + +msgid "Weekday" +msgstr "วันธรรมดา" + +msgid "Weighted position" +msgstr "" + +#, fuzzy +msgid "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." +msgstr "" +"ยินดีต้อนรับสู่ ตัวตัดต่อรายการ\n" +"\n" +"ทำการค้นหาจุดที่ท่านต้องการที่จะตัดทิ้งแล้วกดปุ่ม OK เพื่อเริ่มตัด('start cut')\n" +"\n" +"จากนั้นทำค้นหาจุดสุดท้ายแล้วกดปุ่ม OK เพื่อกำหนดจุดสุดท้าย ('end cut') เท่านั้นเอง (That's it)" + +msgid "Welcome to the image upgrade wizard. The wizard will assist you in upgrading the firmware of your receiver by providing a backup facility for your current settings and a short explanation of how to upgrade your firmware." +msgstr "" + +msgid "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" +msgstr "" + +msgid "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." +msgstr "" + +msgid "Welcome..." +msgstr "ยินดีต้อนรับ..." + +msgid "West" +msgstr "ตะวันตก" + +msgid "West limit set" +msgstr "" + +msgid "What do you want to scan?" +msgstr "ท่านต้องการค้นหาอะไร?" + +msgid "When enabled the PiP can be closed by the exit button." +msgstr "" + +msgid "When enabled the arrow buttons around the OK button will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled the left, right, CH+/-, B+/-, P+/- buttons will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled you can specify a timeframe to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "When enabled you can specify a timeframe were the inactivity sleeptimer is ignored. Not the detection is disabled during this timeframe but the inactivity timeout is disabled" +msgstr "" + +msgid "When enabled you can zap channels with the CH+/-, B+/-, P+/- buttons instead of opening the channel selection list." +msgstr "" + +msgid "When enabled you get the channel selection list via the OK button, the infobar toggle is then transfered to exit button" +msgstr "" + +msgid "When enabled, AIT data will be included in http streams. This allows a client receiver to use HbbTV." +msgstr "" + +msgid "When enabled, ECM data will be included in http streams. This allows a client receiver to do the descrambling." +msgstr "" + +msgid "When enabled, EIT data will be included in http streams. This allows a client receiver to show EPG." +msgstr "" + +msgid "When enabled, a popup message will be shown when a movie has finished and the next one will start." +msgstr "" + +msgid "When enabled, a popup message will be shown when a recording starts." +msgstr "" + +msgid "When enabled, a radio background image will be visible while listening to a radio channel." +msgstr "" + +msgid "When enabled, a recording is allowed to interrupt live tv, when there are no free tuners." +msgstr "" + +msgid "When enabled, a warning will be displayed and the user will get an option to stop or to continue the timeshift." +msgstr "" + +msgid "When enabled, authentication is required to watch http streams." +msgstr "" + +msgid "When enabled, channel numbering will start at '1' for each bouquet." +msgstr "" + +msgid "When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen." +msgstr "" + +msgid "When enabled, continue to the next bouquet when the last channel of the current bouquet is reached while changing channels." +msgstr "" + +msgid "When enabled, deleted recordings are moved to the trash can, instead of being deleted immediately." +msgstr "" + +msgid "When enabled, display the EIT now/next eventdata in infobar. When disabled, display now/next eventdata from the EPG cache instead." +msgstr "" + +msgid "When enabled, encryption info will be shown in the infobar (when supported by the skin)." +msgstr "" + +msgid "When enabled, error messages related to the Common Interface module will not be shown." +msgstr "" + +msgid "When enabled, error messages related to zapping will not be shown." +msgstr "" + +msgid "When enabled, external subtitles will be always turned on for playback movie." +msgstr "" + +msgid "When enabled, graphical DVB subtitles are preferred over teletext subtitles, when both types are available." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be centered horizontally." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be displayed at their original position." +msgstr "" + +msgid "When enabled, graphical DVB subtitles will be displayed in yellow, instead of the original color." +msgstr "" + +msgid "When enabled, http streams are descrambled on the server side. The (remote) client receiver does not have to do descrambling." +msgstr "" + +msgid "When enabled, it is possible to leave the movieplayer with exit." +msgstr "" + +msgid "When enabled, measure power consumption to detect when the rotor stops turning (when supported by the tuner)." +msgstr "" + +msgid "When enabled, number markers will be hiden." +msgstr "" + +msgid "When enabled, services may be grouped in multiple bouquets." +msgstr "" + +msgid "When enabled, show channel numbers in the channel selection screen." +msgstr "" + +msgid "When enabled, subtitles for the hearing impaired can be used." +msgstr "" + +msgid "When enabled, subtitles for the hearing impaired will be preferred over normal subtitles, when both types are available." +msgstr "" + +msgid "When enabled, teletext pages will be cached, allowing faster access." +msgstr "" + +msgid "When enabled, teletext subtitles will be displayed at their original position." +msgstr "" + +msgid "When enabled, the VCR scart option will be shown on the main menu" +msgstr "" + +msgid "When enabled, the channel selection list will be hidden while listening to a radio channel" +msgstr "" + +msgid "When enabled, the infobar will be displayed when a new event starts." +msgstr "" + +msgid "When enabled, the infobar will be displayed when changing channels." +msgstr "" + +msgid "When enabled, the infobar will be displayed when skipping forwards/backwards during media playback." +msgstr "" + +msgid "When enabled, the lenght of each recording will be shown in the movielist (this might cause some additional loading time)." +msgstr "" + +msgid "When enabled, the original line breaks will be removed from the teletext subtitles." +msgstr "" + +msgid "When enabled, the receiver will automatically use the audio track which you selected before." +msgstr "" + +msgid "When enabled, the receiver will automatically use the subtitles which you selected before." +msgstr "" + +msgid "When enabled, the receiver will no longer monitor the tuned transponder for possible changes. Do not use this option unless you know what you are doing." +msgstr "" + +msgid "When enabled, the receiver will select an AC3 track (when available)." +msgstr "" + +msgid "When enabled, the receiver will select an AC3+ track (when available)." +msgstr "" + +msgid "When enabled, timeshift starts automatically in background after specified time." +msgstr "" + +#, fuzzy +msgid "When enabled, use DHCP for the IP configuration." +msgstr "ตั้งค่า Nameserver" + +msgid "When enabled, your receiver will detect activity on the VCR SCART input." +msgstr "" + +msgid "When nonzero, a recording will start earlier than the starting time indicated by the EPG." +msgstr "" + +msgid "When nonzero, a recording will stop later than the ending time indicated by the EPG." +msgstr "" + +msgid "When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture." +msgstr "" + +msgid "When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture." +msgstr "" + +msgid "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" +msgstr "" +"หากท่านทำการตั้งค่าใหม่ตามโรงงาน ข้อมูลทั้งหมดของท่านจะหายไปทันที\n" +"(ทั้งนี้รวมทั้ง กลุ่มรายการ รายการต่างๆ ข้อมูลดาวเทียม เป็นต้น...)\n" +"หลังกระบวนตั้งค่าใหม่เสร็จสิ้น เครื่องจะทำการบูทให้โดยอัตโนมัติ!\n" +"\n" +"ยืนการตั้งค่าใหม่ตามโรงงาน หรือไม่?" + +msgid "Where do you want to backup your settings?" +msgstr "ท่านต้องบันทึกข้อมูลที่สำรองไว้ที่ไหน?" + +msgid "Where to save temporary timeshift recordings?" +msgstr "ท่านต้องบันทึกไฟล์สำหรับควบคุมรายการสดไว้ที่ไหน?" + +msgid "Wireless LAN" +msgstr "แลนแบบไร้สาย" + +#, fuzzy +msgid "Wireless network" +msgstr "เครือข่ายไร้สาย" + +#, fuzzy +msgid "Wireless network configuration..." +msgstr "ตั้งค่าเครือข่าย..." + +msgid "Wireless network connection setup" +msgstr "" + +msgid "Wireless network connection setup." +msgstr "" + +msgid "Wireless network state" +msgstr "" + +msgid "With popup" +msgstr "" + +msgid "Without popup" +msgstr "" + +msgid "Would you like to install a softcam?" +msgstr "" + +msgid "Write error while recording. Disk full?\n" +msgstr "เกิดข้อผิดพลาดในการบันทึกรายการ ไดรฟ์เต็มหรือไม่?\n" + +msgid "Write failed!" +msgstr "พบข้อผิดพลาดในการเขียนข้อมูล!" + +msgid "YPbPr" +msgstr "YPbPr" + +msgid "Year" +msgstr "ปี" + +msgid "Yellow DVB subtitles" +msgstr "" + +msgid "Yes" +msgstr "ใช่" + +msgid "Yes and save" +msgstr "" + +msgid "Yes and save in movie dir" +msgstr "" + +msgid "Yes to all" +msgstr "" + +msgid "Yes, always" +msgstr "" + +msgid "Yes, and delete this movie" +msgstr "ใช่ - ต้องการที่จะลบภาพยนต์นี้" + +msgid "Yes, backup my settings!" +msgstr "ใช่ - ทำสำรองข้อมูลการตั้งค่าตอนนี้" + +msgid "Yes, delete this movie and return to movie list" +msgstr "" + +msgid "Yes, do a manual scan now" +msgstr "ใช่ - ทำการค้นหาเองตอนนี้เลย" + +msgid "Yes, do an automatic scan now" +msgstr "ใช่ - ทำการค้นหาแบบอัตโนมัติตอนนี้เลย" + +msgid "Yes, do another manual scan now" +msgstr "ใช่ - ทำการค้นหาอีกครั้งตอนนี้เลย" + +msgid "Yes, perform a shutdown now." +msgstr "ใช่ - ปิดเครื่องตอนนี้เลย (Shutdonw)" + +msgid "Yes, restore the settings now" +msgstr "ใช่ - นำสำรองการตั้งค่ากลับมาใช้ตอนนี้เลย" + +msgid "Yes, returning to movie list" +msgstr "ใช่ - กลับไปที่สารบัญ Movie" + +msgid "Yesterday" +msgstr "" + +#, python-format +msgid "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" +msgstr "" + +msgid "You can cancel the installation." +msgstr "ท่านสามารถยกเลิกการติดตั้งได้" + +msgid "You can cancel the removal." +msgstr "ท่านสามารถยกเลิกการลบได้" + +msgid "You can continue watching TV etc. while this is running." +msgstr "" + +msgid "You can install this plugin." +msgstr "ท่านสามารถติดตั้งปลั๊กอินตัวนี้ได้" + +msgid "You can only burn receiver recordings!" +msgstr "" + +msgid "You can remove this plugin." +msgstr "ท่านสามารถลบปลั๊กอินตัวนี้ได้" + +msgid "You cannot delete this!" +msgstr "ท่านไม่สามารถลบรายการนี้ได้!" + +msgid "You didn't select a channel to record from." +msgstr "" + +msgid "You have chosen to backup your settings. Please press OK to start the backup now." +msgstr "ท่านได้เลือกสำรองข้อมูลการตั้งค่าระบบ กรุณากดปุ่ม OK เพื่อเริ่มทำงาน" + +msgid "You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased." +msgstr "ท่าได้เลือก สร้างไฟล์ .NFI ที่ USB ซึ่งระบบสร้างพาร์ทิชั่นใหม่ทำให้ข้อมูลทั้งหมดหายไป" + +msgid "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." +msgstr "ท่านได้เลือกที่จะนำสำรองกลับมาใช้ เครื่องจะบูทให้เมื่อเสร็จสิ้นกระบวนการ กรุณากดปุ่ม OK เพื่อเริ่มทำงาน" + +#, python-format +msgid "You have to wait %s!" +msgstr "ต้องรอประมาณ %s!" + +msgid "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." +msgstr "" + +msgid "You system does not support ext4" +msgstr "" + +msgid "Your backup succeeded. We will now continue to explain the further upgrade process." +msgstr "การสำรองข้อมูลเสร็จสิ้น และจะต่อด้วยขั้ตอนในการปรับปรุงซอพท์แวร์" + +msgid "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" +msgstr "ข้อมูลที่เลือกใหญ่กว่าดีวีดีแบบชั้นเดียว ท่านต้องใช้ดีวีดีแบบ 2 ชั้น" + +msgid "Your current collection will get lost!" +msgstr "" + +msgid "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." +msgstr "" +"เครื่องของท่านต้องการการปรับปรุง\n" +"กดปุ่ม OK เพิ่มเริ่มการปรับปรุง" + +msgid "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" + +msgid "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." +msgstr "" +"ไม่สามรถเชื่อต่ออินเตอร์เน็ตได้!\n" +"โปรดเลือกว่า จะทำอะไรต่อไป" + +#, python-format +msgid "Your internet connection is working (ip: %s)" +msgstr "" + +msgid "Your network configuration has been activated." +msgstr "เครือข่ายของท่านสามารถใช้งานได้แล้ว" + +msgid "Your receiver does not have an internet connection" +msgstr "" + +msgid "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" +msgstr "" + +msgid "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." +msgstr "" + +msgid "Your receiver is rebooting" +msgstr "" + +msgid "Your receiver is shutting down" +msgstr "" + +msgid "Your receiver is shutting down. Please stand by..." +msgstr "" + +msgid "Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver." +msgstr "" + +msgid "Your receiver will got to stand by due to the sleeptimer." +msgstr "" + +msgid "Your receiver will got to standby due to inactivity." +msgstr "" + +msgid "Your receiver will restart after pressing OK on your remote control." +msgstr "" + +msgid "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." +msgstr "" +"เครือข่ายไร้สายของท่านไม่ทำงาน!\n" +"ตรวจสอบก่อนว่า ท่านได้เสียบ USB WLAN แล้วหรือยัง?\n" +"\n" +"โปรดเลือกว่าท่านจะทำอะไรต่อไป" + +msgid "Zap" +msgstr "" + +msgid "Zap back to previously tuned service?" +msgstr "" + +msgid "Zap back to service before positioner setup?" +msgstr "ย้ายไปยังช่องบริการก่อนตั้งค่าตัวขับจาน" + +msgid "Zap back to service before tuner setup?" +msgstr "" + +msgid "Zap focus to Picture in Picture" +msgstr "" + +msgid "Zap focus to main screen" +msgstr "" + +msgid "Zap mode" +msgstr "" + +msgid "Zap to selected channel" +msgstr "" + +msgid "Zap to selected channel, or show detailed event info (depends on configuration)" +msgstr "" + +msgid "[alternative edit]" +msgstr "[แก้ไขอื่น]" + +msgid "[bouquet edit]" +msgstr "[แก้ไขกลุ่มรายการ]" + +msgid "[favourite edit]" +msgstr "[แก้ไขรายการโปรด]" + +msgid "[move mode]" +msgstr "[โหมดย้าย]" + +msgid "a gui to assign services/providers to common interface modules" +msgstr "ส่วนนี้จะกำหนดบริการ/ผู้ให้บริการให้กับอินเตอร์เฟซพื้นฐาน" + +msgid "a gui to assign services/providers/caids to common interface modules" +msgstr "ส่วนนี้จะกำหนดบริการ/ผู้ให้บริการ/caids ให้กับอินเตอร์เฟซพื้นฐาน" + +msgid "abort alternatives edit" +msgstr "ยกเลิกการแก้ไขอื่น" + +msgid "abort bouquet edit" +msgstr "ยกเลิกการแก้ไขกลุ่มรายการ" + +msgid "abort favourites edit" +msgstr "ยกเลิกการแก้ไขรายการโปรด" + +msgid "about to start" +msgstr "กำลังจะเริ่ม" + +msgid "activate network adapter configuration" +msgstr "" + +msgid "add alternatives" +msgstr "เพิ่มทางเลือกอื่น" + +msgid "add bookmark" +msgstr "เพิ่มบุ๊คมาร์ค" + +msgid "add bouquet" +msgstr "เพิ่มกลุ่มรายการ" + +msgid "add marker" +msgstr "เพิ่มจุดทำเครื่องหมาย" + +msgid "add service to bouquet" +msgstr "เพิ่มบริการเข้าสู่กลุ่มรายการ" + +msgid "add service to favourites" +msgstr "เพิ่มบริการเข้าสู่รายการโปรด" + +msgid "add to parental protection" +msgstr "เพิ่มรายการเข้าสู่กลุ่มจำกัดอายุ" + +msgid "adult movie/drama" +msgstr "" + +msgid "advanced" +msgstr "ขั้นสูง" + +msgid "adventure/western/war" +msgstr "" + +msgid "advertisement/shopping" +msgstr "" + +msgid "after " +msgstr "" + +#, fuzzy +msgid "alphabetic" +msgstr "เรียงตามอักษร" + +msgid "alphabetic reverse" +msgstr "" + +msgid "alternative" +msgstr "" + +msgid "always" +msgstr "" + +msgid "and select next channel" +msgstr "" + +msgid "and select previous channel" +msgstr "" + +msgid "arts/culture (without music, general)" +msgstr "" + +msgid "arts/culture magazine" +msgstr "" + +msgid "athletics" +msgstr "" + +msgid "audio tracks" +msgstr "ร่องเสียง" + +msgid "auto" +msgstr "อัตโนมัติ" + +#, fuzzy +msgid "automatic" +msgstr "อัตโนมัติ" + +msgid "back" +msgstr "กลับ" + +msgid "background image" +msgstr "รูปพื้นหลัง" + +msgid "ballet" +msgstr "" + +#, python-format +msgid "bc%s" +msgstr "" + +msgid "better" +msgstr "ดีขึ้น" + +msgid "black" +msgstr "ดำ" + +msgid "black & white" +msgstr "" + +msgid "blacklist" +msgstr "รายการต้องห้าม" + +msgid "blue" +msgstr "น้ำเงิน" + +msgid "broadcasting/press" +msgstr "" + +#, fuzzy +msgid "by date" +msgstr "เรียงตามวันที่" + +msgid "cartoon/puppets" +msgstr "" + +msgid "center" +msgstr "" + +msgid "centered" +msgstr "" + +msgid "centered, wrapped" +msgstr "" + +msgid "chapters" +msgstr "บทที่" + +msgid "childrens's/youth program (general)" +msgstr "" + +msgid "circular left" +msgstr "วนไปทางซ้าย" + +msgid "circular right" +msgstr "วนไปทางขวา" + +msgid "comedy" +msgstr "" + +msgid "complex" +msgstr "ซับซ้อน" + +msgid "config menu" +msgstr "เมนูตั้งค่า" + +msgid "confirmed" +msgstr "ยืนยันแล้ว" + +msgid "connected" +msgstr "เชื่อมต่อแล้ว" + +msgid "continue" +msgstr "ต่อไป" + +msgid "cooking" +msgstr "" + +msgid "copy to bouquets" +msgstr "คัดลอกเข้าสู่กลุ่มรายการ" + +msgid "create directory" +msgstr "สร้างโฟล์เดอร์" + +#, python-format +msgid "currently installed image: %s" +msgstr "" + +msgid "daily" +msgstr "รายวัน" + +msgid "day" +msgstr "วัน" + +#, fuzzy +msgid "default" +msgstr "ค่าเริ่มต้น" + +msgid "delete cut" +msgstr "ลบส่วนตัดต่อ" + +msgid "delete..." +msgstr "" + +msgid "descramble and record ecm" +msgstr "" + +msgid "detective/thriller" +msgstr "" + +msgid "disable" +msgstr "ไม่ใช้" + +msgid "disable move mode" +msgstr "เลิกโหมดเคลื่อนย้าย" + +msgid "disabled" +msgstr "ไม่ใช้แล้ว" + +msgid "disconnected" +msgstr "เชื่อมต่อถูกตัดแล้ว" + +msgid "discussion/interview/debate" +msgstr "" + +msgid "do nothing" +msgstr "ไม่ต้องทำอะไร" + +msgid "documentary" +msgstr "" + +msgid "don't descramble, record ecm" +msgstr "" + +msgid "done!" +msgstr "เสร็จแล้ว!!" + +msgid "east" +msgstr "" + +msgid "economics/social advisory" +msgstr "" + +msgid "edit alternatives" +msgstr "แก้ไขแบบอื่น" + +msgid "education/science/factual topics (general)" +msgstr "" + +msgid "empty" +msgstr "ว่าง" + +msgid "enable" +msgstr "ใช้งาน" + +msgid "enable bouquet edit" +msgstr "แก้ไขกลุ่มรายการ" + +msgid "enable favourite edit" +msgstr "แก้ไขรายการโปรด" + +msgid "enable move mode" +msgstr "ทำการเคลื่อนย้าย" + +msgid "enabled" +msgstr "ใช้งานแล้ว" + +msgid "end alternatives edit" +msgstr "จบการแก้ไขแบบอื่น" + +msgid "end bouquet edit" +msgstr "จบการแก้ไขกลุ่มรายการ" + +msgid "end cut here" +msgstr "สิ้นสุดการตัดตรงนี้" + +msgid "end favourites edit" +msgstr "จบรายการโปรด" + +msgid "entertainment (10-16 year old)" +msgstr "" + +msgid "entertainment (6-14 year old)" +msgstr "" + +msgid "equal to" +msgstr "เท่ากับ" + +msgid "equestrian" +msgstr "" + +msgid "exit DVD player or return to file browser" +msgstr "ออกจากโหมดเครื่องเล่นดีวีดี หรือกลับไปดูไฟล์ข้อมูล" + +msgid "exit movielist" +msgstr "" + +msgid "exit network adapter configuration" +msgstr "ออกจากการตั้งค่าระบบเครือข่าย" + +msgid "exit networkadapter setup menu" +msgstr "ออกจากเมนูตั้งค่าระบบเครือข่าย" + +msgid "experimental film/video" +msgstr "" + +msgid "false" +msgstr "" + +msgid "fashion" +msgstr "" + +msgid "fileformats (BMP, PNG, JPG, GIF)" +msgstr "ชนิดไฟล์ (BMP, PNG, JPG, GIF)" + +msgid "filename" +msgstr "ชื่อไฟล์" + +msgid "film/cinema" +msgstr "" + +msgid "fine arts" +msgstr "" + +msgid "fine-tune your display" +msgstr "ปรับหน้าจอแบบละเอียด" + +msgid "fitness & health" +msgstr "" + +#, fuzzy +msgid "flat alphabetic" +msgstr "เรียงตามอักษร" + +#, fuzzy +msgid "flat alphabetic reverse" +msgstr "เรียงตามอักษร" + +msgid "folk/traditional music" +msgstr "" + +msgid "football/soccer" +msgstr "" + +msgid "foreign countries/expeditions" +msgstr "" + +msgid "forward to the next chapter" +msgstr "ข้ามไปตอนต่อไป" + +msgid "free" +msgstr "เหลืออยู่" + +msgid "from" +msgstr "" + +msgid "further education" +msgstr "" + +msgid "game show/quiz/contest" +msgstr "" + +msgid "gardening" +msgstr "" + +msgid "go to deep standby" +msgstr "เข้าสู่โหมด Deep standby" + +msgid "go to standby" +msgstr "เข้าสู้โหมด Standby" + +msgid "grab this frame as bitmap" +msgstr "เก็บหน้าจอนี้ลงแฟ้ม" + +msgid "green" +msgstr "เขียว" + +msgid "handicraft" +msgstr "" + +msgid "height" +msgstr "" + +msgid "help..." +msgstr "ช่วยเหลือ..." + +msgid "horizontal" +msgstr "แนวนอน (H)" + +msgid "information/education/school program" +msgstr "" + +msgid "init module" +msgstr "เริ่มต้นโมดูล" + +msgid "init modules" +msgstr "เริ่มต้นโมดูล" + +msgid "insert mark here" +msgstr "แทรกตรงตำแหน่งนี้" + +msgid "invalid type" +msgstr "" + +msgid "jazz" +msgstr "" + +msgid "jump back to the previous title" +msgstr "กลับไปเรื่องก่อนหน้า" + +msgid "jump forward to the next title" +msgstr "ข้ามไปยังเรื่องต่อไป" + +msgid "languages" +msgstr "" + +msgid "leave movie player..." +msgstr "ออกจากส่วนเล่นภาพยนต์..." + +msgid "left" +msgstr "ซ้าย" + +msgid "left, wrapped" +msgstr "" + +msgid "leisure hobbies (general)" +msgstr "" + +msgid "length" +msgstr "ความยาว" + +msgid "limit ..., aborting !" +msgstr "" + +msgid "list style compact" +msgstr "แสดงรายการแบบสั้น" + +msgid "list style compact with description" +msgstr "แสดงรายการแบบสั้นพร้อมคำอธิบาย" + +msgid "list style default" +msgstr "แสดงรูปแบบเริ่มต้น" + +msgid "list style single line" +msgstr "แสดงแบบบรรทัดเดียว" + +msgid "literature" +msgstr "" + +msgid "live broadcast" +msgstr "" + +msgid "locked" +msgstr "ล๊อคแล้ว" + +msgid "loopthrough to" +msgstr "ปล่อยผ่านไปที่" + +msgid "magazines/reports/documentary" +msgstr "" + +msgid "manual" +msgstr "ทำเอง" + +msgid "martial sports" +msgstr "" + +msgid "medicine/physiology/psychology" +msgstr "" + +msgid "menu" +msgstr "เมนู" + +msgid "mins" +msgstr "น." + +msgid "minutes" +msgstr "นาที" + +msgid "month" +msgstr "เดือน" + +msgid "motor sport" +msgstr "" + +msgid "motoring" +msgstr "" + +msgid "move down to last entry" +msgstr "ย้ายลงไปท้ายสุด" + +msgid "move down to next entry" +msgstr "ย้ายลงไป" + +msgid "move up to first entry" +msgstr "ย้ายไปบนสุด" + +msgid "move up to previous entry" +msgstr "ย้ายไปก่อนหน้านี้" + +msgid "movie/drama (general)" +msgstr "" + +msgid "multinorm" +msgstr "multinorm" + +msgid "music/ballet/dance (general)" +msgstr "" + +msgid "musical/opera" +msgstr "" + +msgid "nature/animals/environment" +msgstr "" + +msgid "never" +msgstr "ไม่เลย" + +msgid "new media" +msgstr "" + +msgid "news magazine" +msgstr "" + +msgid "news/current affairs (general)" +msgstr "" + +msgid "news/weather report" +msgstr "" + +msgid "no" +msgstr "ไม่" + +msgid "no CAId selected" +msgstr "ไม่มี CAId ใดๆ ถูกเลือก" + +msgid "no CI slots found" +msgstr "ไม่พบ CI" + +msgid "no module found" +msgstr "ไม่พบโมดูลใดๆ เลย" + +msgid "no storage devices found" +msgstr "" + +msgid "none" +msgstr "ไม่มี" + +msgid "normal" +msgstr "" + +msgid "not configured" +msgstr "" + +msgid "not locked" +msgstr "ไม่ล๊อค" + +msgid "not supported" +msgstr "" + +msgid "not used" +msgstr "ไม่ถูกใช้" + +msgid "nothing connected" +msgstr "ไม่พบการเชื่อมต่อ" + +msgid "of a DUAL layer medium used." +msgstr "ของสื่อบันทึกสองชั้น" + +msgid "of a SINGLE layer medium used." +msgstr "ของสื่อบันทึกแบบชั้นเดียว" + +msgid "off" +msgstr "ปิด" + +msgid "offset is" +msgstr "" + +msgid "on" +msgstr "เปิด" + +msgid "on READ ONLY medium." +msgstr "บนสื่อบันทึกอ่านได้อย่างเดียว" + +msgid "on end of movie" +msgstr "" + +msgid "once" +msgstr "ครั้งเดียว" + +msgid "only from deep standby" +msgstr "" + +msgid "only from standby" +msgstr "" + +msgid "open EPG..." +msgstr "" + +msgid "open Info..." +msgstr "" + +msgid "open nameserver configuration" +msgstr "ตั้งค่า Nameserver" + +msgid "original" +msgstr "" + +msgid "original language" +msgstr "" + +msgid "pass" +msgstr "ผ่าน" + +msgid "performing arts" +msgstr "" + +msgid "play as picture in picture" +msgstr "" + +msgid "play in mainwindow" +msgstr "" + +msgid "please press OK when ready" +msgstr "กดปุ่ม OK เมื่อพร้อม" + +msgid "please wait, loading picture..." +msgstr "กำลังโหลดภาพ กรุณารอสักครู่..." + +msgid "popular culture/traditional arts" +msgstr "" + +msgid "pre-school children's program" +msgstr "" + +msgid "receiver software because updates are available." +msgstr "" + +msgid "record" +msgstr "บันทึก" + +msgid "recording..." +msgstr "กำลังบันทึกรายการ..." + +msgid "red" +msgstr "แดง" + +msgid "religion" +msgstr "" + +msgid "remarkable people" +msgstr "" + +msgid "remove after this position" +msgstr "ลบหลังจากตำแหน่งนี้ออก" + +msgid "remove all alternatives" +msgstr "ลบทางเลือกอื่นออกทั้งหมด" + +msgid "remove all new found flags" +msgstr "ลบเครื่องหมาย\"ใหม่\" ออกทั้งหมด" + +msgid "remove before this position" +msgstr "ลบก่อนหน้าตำแหน่งนี้ออก" + +msgid "remove bookmark" +msgstr "ลบบุ๊คมาร์ค" + +msgid "remove directory" +msgstr "ลบโฟล์เดอร์ออก" + +msgid "remove entry" +msgstr "ลบรายการนี้ออก" + +msgid "remove from parental protection" +msgstr "ยกเลิกข้อจำกัดอายุ" + +msgid "remove new found flag" +msgstr "ลบเครื่องหมาย \"ใหม่\" ออก" + +msgid "remove selected satellite" +msgstr "ลบดาวเทียมนี้ออก" + +msgid "remove this mark" +msgstr "ลบรายการนี้ออก" + +msgid "rename entry" +msgstr "" + +msgid "repeat playlist" +msgstr "กลับไปที่สารบัญ" + +msgid "repeated" +msgstr "เล่นซ้ำ" + +msgid "reverse by date" +msgstr "" + +msgid "rewind to the previous chapter" +msgstr "กลับไปตอนที่แล้ว" + +msgid "right" +msgstr "ขวา" + +msgid "right, wrapped" +msgstr "" + +msgid "rock/pop" +msgstr "" + +msgid "romance" +msgstr "" + +msgid "save last directory on exit" +msgstr "บันทึกโฟล์เดอร์ปัจจุบันเมื่อออก" + +msgid "save playlist on exit" +msgstr "บันทึกสารบัญเมื่อออก" + +msgid "scan state" +msgstr "สถานะการค้นหา" + +msgid "science fiction/fantasy/horror" +msgstr "" + +msgid "second cable of motorized LNB" +msgstr "เลือกสายบังคับ LNB" + +msgid "seconds" +msgstr "วินาที" + +msgid "select" +msgstr "เลือก" + +msgid "select CAId's" +msgstr "เลือก CAId's" + +msgid "select EPG..." +msgstr "" + +msgid "select Info..." +msgstr "" + +msgid "select menu entry" +msgstr "เลือกเมนูจากรายการ" + +msgid "select movie" +msgstr "เลือกภาพยนต์" + +msgid "select the movie path" +msgstr "" + +msgid "serious music/classic music" +msgstr "" + +msgid "serious/classical/religious/historical movie/drama" +msgstr "" + +msgid "service PIN" +msgstr "" + +msgid "set as startup service" +msgstr "" + +msgid "setup PIN" +msgstr "" + +msgid "show DVD main menu" +msgstr "แสดงเมนูหลักของดีวีดี" + +msgid "show all tags" +msgstr "" + +msgid "show alternatives" +msgstr "แสดงทางเลือกอื่น" + +msgid "show event details" +msgstr "แสดงรายละเอียดรายการ" + +msgid "show extended description" +msgstr "" + +msgid "show mediaplayer on mainmenu" +msgstr "" + +msgid "show softwaremanager in setup menu" +msgstr "" + +msgid "show softwaremanager on blue button" +msgstr "" + +msgid "show tag menu" +msgstr "" + +msgid "show transponder info" +msgstr "แสดงข้อมูล Transponder" + +msgid "show/game show (general)" +msgstr "" + +msgid "shuffle" +msgstr "" + +msgid "shut down" +msgstr "" + +msgid "simple" +msgstr "แบบง่าย" + +msgid "skip backward" +msgstr "ย้อนหลัง" + +msgid "skip forward" +msgstr "ข้ามไป" + +msgid "soap/melodram/folkloric" +msgstr "" + +msgid "social/political issues/economics (general)" +msgstr "" + +msgid "social/spiritual science" +msgstr "" + +msgid "sorting of playlists" +msgstr "" + +msgid "special characters" +msgstr "" + +msgid "special events" +msgstr "" + +msgid "special format data DVD (HDTV compatible)" +msgstr "" + +msgid "sports (general)" +msgstr "" + +msgid "sports magazine" +msgstr "" + +msgid "standard" +msgstr "มาตรฐาน" + +msgid "start cut here" +msgstr "ตัดตรงนี้" + +msgid "start directory" +msgstr "โฟล์เดอร์เริ่มต้น" + +msgid "stepsize" +msgstr "" + +msgid "stereo" +msgstr "สเตอริโอ" + +msgid "stop using as startup service" +msgstr "" + +msgid "switch to bookmarks" +msgstr "เข้าสู่บุ๊คมาร์ค" + +msgid "switch to filelist" +msgstr "เข้าสู่สารบัญไฟล์" + +msgid "switch to the next angle" +msgstr "เลือกมุมมองอันต่อไป" + +msgid "switch to the next audio track" +msgstr "เลือกร่องเสียงอันต่อไป" + +msgid "switch to the next subtitle language" +msgstr "เลือกซับไตเติ้ลต่อไป" + +msgid "talk show" +msgstr "" + +msgid "team sports" +msgstr "" + +msgid "technology/natural science" +msgstr "" + +msgid "template file" +msgstr "ไฟล์ต้นฉบับ" + +msgid "tennis/squash" +msgstr "" + +msgid "this recording" +msgstr "กำลังถูกบันทึก" + +msgid "this service is protected by a parental control pin" +msgstr "บริการนี้ถูกควบคุมอายุรับชม" + +msgid "toggle time, chapter, audio, subtitle info" +msgstr "สลับช่วงเวลา ตอนที่ เสียง หรือซับไตเติ้ล" + +msgid "top" +msgstr "" + +msgid "tourism/travel" +msgstr "" + +msgid "true" +msgstr "" + +msgid "unavailable" +msgstr "ไม่สามารถใช้ได้" + +msgid "unconfirmed" +msgstr "ยังไม่ยืนยัน" + +msgid "undefined" +msgstr "" + +msgid "unknown" +msgstr "ไม่มีข้อมูล" + +msgid "unknown service" +msgstr "ไม่ทราบชนิดบริการ" + +msgid "unpublished" +msgstr "" + +msgid "until standby/restart" +msgstr "" + +msgid "user defined" +msgstr "ผู้ใช้ระบุ" + +msgid "variety show" +msgstr "" + +msgid "vertical" +msgstr "แนวตั้ง (V)" + +msgid "wait for ci..." +msgstr "รอ CI" + +msgid "wait for mmi..." +msgstr "รอ MMI..." + +msgid "waiting" +msgstr "กำลังรอ" + +msgid "water sport" +msgstr "" + +msgid "weekly" +msgstr "รายสัปดาห์" + +msgid "west" +msgstr "" + +msgid "when PiPzap enabled zap channel down..." +msgstr "" + +msgid "when PiPzap enabled zap channel up..." +msgstr "" + +msgid "white" +msgstr "" + +msgid "whitelist" +msgstr "รายการที่อนุญาต" + +msgid "width" +msgstr "" + +msgid "winter sport" +msgstr "" + +msgid "wireless network interface" +msgstr "" + +#, python-format +msgid "with %d error" +msgid_plural "with %d errors" +msgstr[0] "" +msgstr[1] "" + +msgid "working" +msgstr "กำลังทำงาน" + +msgid "yellow" +msgstr "เหลือง" + +msgid "yes" +msgstr "ใช่" + +msgid "yes (keep feeds)" +msgstr "ใช่ (เก็บฟีดนี้ไว้)" + +msgid "zap" +msgstr "เปลี่ยนช่อง" + +msgid "zap and record" +msgstr "" + +msgid "zapped" +msgstr "เปลี่ยนช่องแล้ว" + +#~ msgid "AA" +#~ msgstr "AA" + +#~ msgid "AB" +#~ msgstr "AB" + +#, fuzzy +#~ msgid "Activate PiP" +#~ msgstr "ภาพซ้อนภาพ" + +#, fuzzy +#~ msgid "Add/remove timer for current event" +#~ msgstr "บันทึกรายการ (หยุดเมื่อจบรายการ)" + +#, fuzzy +#~ msgid "All satellites" +#~ msgstr "ดาวเทียมทั้งหมด" + +#~ msgid "BA" +#~ msgstr "BA" + +#~ msgid "BB" +#~ msgstr "BB" + +#~ msgid "Behavior of 'pause' when paused" +#~ msgstr "เมื่อกด 'หยุดเล่นชั่วคราว' ให้" + +#~ msgid "Committed DiSEqC command" +#~ msgstr "คำสั่ง Committed DiSEqC" + +#~ msgid "DiSEqC repeats" +#~ msgstr "DiSEqC repeats" + +#~ msgid "No satellite frontend found!!" +#~ msgstr "ไม่พบอุปกรณ์ดาวเทียม" + +#~ msgid "Remove timer" +#~ msgstr "เอาตารางเวลานี้ออก" + +#~ msgid "Send DiSEqC" +#~ msgstr "ส่งคำสั่ง DiSEqC" + +#, fuzzy +#~ msgid "Switch next channel" +#~ msgstr "รายการต่อไป" + +#~ msgid "Uncommitted DiSEqC command" +#~ msgstr "คำสั่ง Uncommitted DiSEqC" + +#~ msgid "Zap back to service before satfinder?" +#~ msgstr "ย้ายไปยังช่องบริกการก่อนที่ค้นหาดาวเทียม" diff --git a/po/tr.po b/po/tr.po new file mode 100644 index 0000000..7cda868 --- /dev/null +++ b/po/tr.po @@ -0,0 +1,8041 @@ +msgid "" +msgstr "" +"Project-Id-Version: enigma2 OPLi-3.0.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-07-21 19:08+0200\n" +"PO-Revision-Date: 2013-09-03 19:48+0200\n" +"Last-Translator: Yetkin AYDIN <yetkina@gmail.com>\n" +"Language-Team: Yetkin AYDIN <yetkina@gmail.com>\n" +"Language: tr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural= (1 != 1);\n" +"X-Generator: Poedit 1.5.4\n" +"X-Poedit-SourceCharset: UTF-8\n" + +msgid "" +"\n" +"Advanced options and settings." +msgstr "" +"\n" +"Gelişmiş seçenekler ve ayarlar." + +msgid "" +"\n" +"After pressing OK, please wait!" +msgstr "" +"\n" +"Lütfen OK'a bastıktan sonra bekleyin!" + +msgid "" +"\n" +"Backup your receiver settings." +msgstr "" +"\n" +"Alıcı ayarlarını Yedekle." + +msgid "" +"\n" +"Edit the upgrade source address." +msgstr "" +"\n" +"Güncelleme sunucusu adresini düzenleyin." + +msgid "" +"\n" +"Manage extensions or plugins for your receiver" +msgstr "" +"\n" +"Alıcınız için uzantıları veya eklentileri yönetin" + +msgid "" +"\n" +"Online update of your receiver software." +msgstr "" +"\n" +"Alıcının yazılımı online güncelle...." + +msgid "" +"\n" +"Press OK on your remote control to continue." +msgstr "" +"\n" +"Devam etmek için kumandanızın OK tuşuna basın." + +msgid "" +"\n" +"Restore your backups by date." +msgstr "" +"\n" +"Yedeklerinizi tarihe göre geri yükleyin." + +msgid "" +"\n" +"Restore your receiver settings." +msgstr "" +"\n" +"Alıcının ayarlarını geri yükle." + +msgid "" +"\n" +"Restore your receiver with a new firmware." +msgstr "" +"\n" +"Yeni bir yazılım ile alıcıyı Geri yükleyin." + +msgid "" +"\n" +"Scan for local extensions and install them." +msgstr "" +"\n" +"Yereldeki eklentileri arayın ve kurun" + +msgid "" +"\n" +"Select your backup device.\n" +"Current device: " +msgstr "" +"\n" +"Yedekleme aygıtını seçin.\n" +"Mevcut aygıt: " + +msgid "" +"\n" +"View, install and remove available or installed packages." +msgstr "" +"\n" +"Paketleri görün, yükleyin veya yüklü paketleri kaldırın." + +msgid " (PiP)" +msgstr " (RiR)" + +msgid " (Radio)" +msgstr " (Radyo)" + +msgid " (TV)" +msgstr " (TV)" + +msgid " (disabled)" +msgstr "" + +msgid " (higher than any auto)" +msgstr "" + +msgid " (higher than rotor any auto)" +msgstr "" + +msgid " (lower than any auto)" +msgstr "" + +msgid " extensions." +msgstr " eklentileri." + +msgid " ms" +msgstr " ms" + +msgid " packages selected." +msgstr " paket seçildi." + +msgid " updates available." +msgstr " güncelleme mevcut." + +#. TRANSLATORS: short time representation hour:minute +#, python-format +msgid "%2d:%02d" +msgstr "%2d:%02d" + +#. TRANSLATORS: full time representation hour:minute:seconds +#, python-format +msgid "%2d:%02d:%02d" +msgstr "%2d:%02d:%02d" + +msgid "%A %d %B" +msgstr "%A %d %B" + +#. TRANSLATORS: long date representations dayname daynum monthname in strftime() format! See 'man strftime' +msgid "%A %e %B" +msgstr "%A %e %B" + +#. TRANSLATORS: full date representation dayname daynum monthname year in strftime() format! See 'man strftime' +msgid "%A %e %B %Y" +msgstr "%A %e %B %Y" + +msgid "%H:%M" +msgstr "%H:%M" + +#. TRANSLATORS: short date representation short dayname daynum short monthname in strftime() format! See 'man strftime' +msgid "%a %e/%m" +msgstr "%a %e/%m" + +#. TRANSLATORS: long date representation short dayname daynum short monthname hour:minute in strftime() format! See 'man strftime' +msgid "%a %e/%m %-H:%M" +msgstr "%a %e/%m %-H:%M" + +#. TRANSLATORS: Intermediate scanning result, '%d' channel(s) have been found so far +#, python-format +msgid "%d channel found" +msgid_plural "%d channels found" +msgstr[0] "" + +#, python-format +msgid "%d file" +msgid_plural "%d files" +msgstr[0] "" + +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d saat" + +#, python-format +msgid "%d job is running in the background!" +msgid_plural "%d jobs are running in the background!" +msgstr[0] "" + +#, python-format +msgid "%d min" +msgstr "%d dk" + +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d dakika" + +#, python-format +msgid "%d minutes" +msgstr "%d dakika" + +#, python-format +msgid "%d pixel wide" +msgid_plural "%d pixels wide" +msgstr[0] "" + +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "%d saniye" + +#, python-format +msgid "%d subdirectory" +msgid_plural "%d subdirectories" +msgstr[0] "" + +#, python-format +msgid "%d wireless network found!" +msgid_plural "%d wireless networks found!" +msgstr[0] "%d kablosuz ağlar bulundu!" + +msgid "%d-%b-%Y %-H:%M" +msgstr "%d-%b-%Y %-H:%M" + +msgid "%d-%m" +msgstr "%d-%m" + +msgid "%d.%B %Y" +msgstr "%d.%B %Y" + +#. TRANSLATORS: VFD hour:minute daynum short monthname in strftime() format! See 'man strftime' +msgid "%k:%M %e/%m" +msgstr "%k:%M %e/%m" + +#, python-format +msgid "%s %s free disk space" +msgstr "%s %s boş disk alanı" + +#, python-format +msgid "%s (%s)\n" +msgstr "%s (%s)\n" + +#. TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. +#, python-format +msgid "%s is no longer used. Should it be deleted?" +msgstr "Artık %s kullanılmaktadır. Bu silinmelidir?" + +#, python-format +msgid "%s updated package available" +msgid_plural "%s updated packages available" +msgstr[0] "%s mevcut paket güncellendi" + +#, python-format +msgid "%s%d min" +msgstr "" + +#, python-format +msgid "%s/%s: %s" +msgstr "%s/%s: %s" + +msgid "(ZAP)" +msgstr "(ZAP)" + +msgid "(empty)" +msgstr "(boş)" + +msgid "(show optional DVD audio menu)" +msgstr "(opsiyonel DVD ses menüsünü göster)" + +msgid "* Only available if more than one interface is active." +msgstr "* Yalnızca birden fazla arayüz olduğunda kullanılabilir." + +msgid "/s" +msgstr "" + +msgid "0" +msgstr "0" + +msgid "1" +msgstr "1" + +msgid "1.0" +msgstr "1.0" + +msgid "1.1" +msgstr "1.1" + +msgid "1.2" +msgstr "1.2" + +msgid "12V output" +msgstr "12V çıkış" + +msgid "13 V" +msgstr "13 V" + +msgid "16:10" +msgstr "16:10" + +msgid "16:10 Letterbox" +msgstr "16:10 Sinemaskop" + +msgid "16:10 PanScan" +msgstr "16:10 PanScan" + +msgid "16:9" +msgstr "16:9" + +msgid "16:9 Letterbox" +msgstr "16:9 Sinemaskop" + +msgid "16:9 always" +msgstr "16:9 sürekli" + +msgid "18 V" +msgstr "18 V" + +msgid "2" +msgstr "2" + +msgid "23.976" +msgstr "" + +msgid "24" +msgstr "" + +msgid "25" +msgstr "" + +msgid "29.97" +msgstr "" + +msgid "3" +msgstr "3" + +msgid "30" +msgstr "" + +msgid "3d mode" +msgstr "3d mode" + +msgid "4" +msgstr "4" + +msgid "4:3" +msgstr "4:3" + +msgid "4:3 Letterbox" +msgstr "4:3 Sinemaskop" + +msgid "4:3 PanScan" +msgstr "4:3 PanScan" + +msgid "5" +msgstr "5" + +msgid "6" +msgstr "6" + +msgid "7" +msgstr "7" + +msgid "8" +msgstr "8" + +msgid "9" +msgstr "9" + +#, python-format +msgid ": %s" +msgstr "" + +msgid "<Current movielist location>" +msgstr "<Mevcut film listesi konumu>" + +msgid "<Default movie location>" +msgstr "<Varsayılan film konumu>" + +msgid "<Last timer location>" +msgstr "<Son zamanlayıcı konumu>" + +msgid "<unknown>" +msgstr "<bilinmiyor>" + +msgid "??" +msgstr "??" + +msgid "A" +msgstr "A" + +#, python-format +msgid "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" +msgstr "" +"Yüklendikten bu yana yapılandırma dosyası (% s) değiştirilmiştir.\n" +"Değişiklikleri korumak istiyor musunuz?" + +#, python-format +msgid "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" +msgstr "" +"Kurulumdan sonra (%s) konfigürasyon dosyası değiştirilmiş.\n" +"Kendi dosyanızı tutmak istiyor musunuz?" + +msgid "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"Kayıt süresi dolmuş. Alıcı bekleme konumuna\n" +"geçecek. Şimdi yapılsın mı?" + +msgid "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"Kayıt süresi dolmuş. Alıcı kapatılacak\n" +"Şimdi Kapatılsın mı?" + +msgid "A graphical EPG for all services of an specific bouquet" +msgstr "Belirtilen buketteki tüm kanallar için görsel EPG" + +#, python-format +msgid "" +"A record has been started:\n" +"%s" +msgstr "" +"Kayıt başlatıldı:\n" +"%s" + +msgid "" +"A recording is currently running.\n" +"What do you want to do?" +msgstr "" +"Kayıt devam ediyor.\n" +"Ne yapmak istiyorsunuz?" + +msgid "A recording is currently running. Please stop the recording before trying to configure the positioner." +msgstr "Kayıt devam ediyor. Lütfen pozisyoner yapılandırmasını denemeden önce kaydı durdurun." + +msgid "A recording is currently running. Please stop the recording before trying to scan." +msgstr "Bir kayıt şu anda çalışıyor. Tarama yapmayı denemeden önce Kaydı durdurunuz." + +msgid "A recording is currently running. Please stop the recording before trying to start the satfinder." +msgstr "Kayıt devam ediyor. Lütfen uydu arayıcıyı başlatmadan önce kaydı durdurun." + +#, python-format +msgid "A required tool (%s) was not found." +msgstr "İhtiyaç duyulan (%s) aracı bulunamadı." + +msgid "A search for available updates is currently in progress." +msgstr "Güncelleştirmeler kontrol ediliyor." + +msgid "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" +msgstr "" +"Yapılandırılmış ikinci bir arayüz bulundu.\n" +"\n" +"İkinci ağ arayüzünü devre dışı bırakmak istiyor musunuz?" + +msgid "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"Uyku zamanlayıcı Alıcıyı hazırda bekleme\n" +"moduna ayarlamak istiyor. Şimdi yap?" + +msgid "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"Uyku zamanlayıcı Alıcıyı kapatacak.\n" +"Şimdi Kapat?" + +msgid "A small overview of the available icon states and actions." +msgstr "İkonların anlamlarını ve görevlerini burada görebilirsiniz." + +msgid "" +"A timer failed to record!\n" +"Disable TV and try again?\n" +msgstr "" +"Kayıt zamanlayıcı başarısız!\n" +"TV fonksiyonu devre dışı bırakılıp tekrar denensin mi?\n" + +msgid "A/V settings" +msgstr "A/V ayarları" + +msgid "AC3/DTS downmix" +msgstr "AC3/DTS downmix" + +msgid "Abort" +msgstr "Vazgeç" + +msgid "About" +msgstr "Hakkında" + +msgid "About..." +msgstr "Hakkında..." + +msgid "Accesspoint:" +msgstr "Erişim noktası:" + +msgid "Action on long powerbutton press" +msgstr "Kapatma düğmesine uzun süre basılınca" + +msgid "Action on short powerbutton press" +msgstr "Kapatma düğmesine kısa süre basılınca" + +msgid "Activate Picture in Picture" +msgstr "Resim içinde resim (RiR) 'i etkinleştir" + +msgid "Activate current configuration" +msgstr "Geçerli yapılandırmayı etkinleştirin" + +msgid "Activate network settings" +msgstr "Ağ ayarlarını etkinleştir" + +msgid "Activate the configured network settings." +msgstr "Yapılandırılmış ağ ayarlarını etkinleştirin." + +msgid "Adapter settings" +msgstr "Ağ donanım ayarları" + +msgid "Add" +msgstr "Ekle" + +msgid "Add Bookmark" +msgstr "" + +msgid "Add a mark" +msgstr "İşaret ekle" + +msgid "Add a nameserver entry" +msgstr "Bir isim sunucusu ekleyin" + +msgid "Add a new title" +msgstr "Yeni başlık ekle" + +msgid "Add bookmark" +msgstr "Yer imi ekle" + +msgid "Add directory to playlist" +msgstr "Çalma listesine dizin ekle" + +msgid "Add file to playlist" +msgstr "Çalma listesine dosya ekle" + +msgid "Add files to playlist" +msgstr "Çalma listesine dosyaları ekle" + +msgid "Add more details to the crash log" +msgstr "Kilitlenme günlüğüne daha fazla ayrıntı eklensin" + +msgid "Add provider" +msgstr "Sağlayıcı ekle" + +msgid "Add recording (enter recording duration)" +msgstr "Kayıt ekleyin (Kayıt süresi girin)" + +msgid "Add recording (enter recording endtime)" +msgstr "Kayıt ekleyin (Kaydın bitiş süresini gir)" + +msgid "Add recording (indefinitely)" +msgstr "Kayıt Ekle (süresiz)" + +msgid "Add recording (stop after current event)" +msgstr "Kayıt Ekle (geçerli olaydan sonra dur)" + +msgid "Add service" +msgstr "Servis Ekle" + +msgid "Add timer" +msgstr "Zamanlayıcı Ekle" + +msgid "Add title" +msgstr "Başlık ekle" + +msgid "Add to bouquet" +msgstr "Bukete ekle" + +msgid "Add to favourites" +msgstr "Favorilere ekle" + +msgid "Add/remove change timer for current event" +msgstr "" + +msgid "Adjust 3D settings" +msgstr "3D Ayarları" + +msgid "Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens." +msgstr "Tüm renk tonları ayırt edilebilir, ama mümkün olduğunca doymuş görünür böylece renk ayarlarını yapın. Eğer sonuçtan memnun değilseniz, video ince ayarını kapatmak için OK tuşuna basın, ya da diğer test ekranlarını seçmek için sayı tuşlarını kullanın." + +msgid "Advanced" +msgstr "" + +msgid "Advanced options" +msgstr "Gelişmiş seçenekler" + +msgid "Advanced restore" +msgstr "Gelişmiş Geri Yükleme" + +msgid "Advanced software" +msgstr "Gelişmiş yazılım" + +msgid "Advanced software plugin" +msgstr "Gelişmiş yazılım eklentisini" + +msgid "Advanced video enhancement setup" +msgstr "Gelişmiş görüntü iyileştirme ayarları" + +msgid "Advanced video setup" +msgstr "Gelişmiş video ayarları" + +msgid "After event" +msgstr "Eylem bittikten sonra" + +msgid "Album" +msgstr "Albüm" + +msgid "Alignment of events" +msgstr "" + +msgid "Alignment of service names" +msgstr "" + +msgid "All" +msgstr "Tümü" + +msgid "All ages" +msgstr "Her yaştan" + +msgid "All satellites 1 (USALS)" +msgstr "" + +msgid "All satellites 2 (USALS)" +msgstr "" + +msgid "All satellites 3 (USALS)" +msgstr "" + +msgid "All satellites 4 (USALS)" +msgstr "" + +msgid "Allocate" +msgstr "Paylaşım" + +msgid "Allocate unused memory index" +msgstr "Kullanılmayan bellek indeksi ayır" + +msgid "Allow quit movieplayer with exit" +msgstr "" + +msgid "Allow subtitle language to equal audio language" +msgstr "Aynı ses dili için altyazı dili sağlar" + +msgid "Allow subtitles for hearing impaired" +msgstr "Işitme engelliler için altyazı sağlar" + +msgid "Alpha" +msgstr "Saydamlık" + +msgid "Alternative" +msgstr "Alternatif" + +msgid "Alternative numbering mode" +msgstr "Alternatif numaralandırma modu" + +msgid "Alternative services tuner priority" +msgstr "Alternatifli kanallarda tuner önceliği" + +msgid "Always ask" +msgstr "Her zaman sor" + +msgid "Always hide infobar" +msgstr "" + +msgid "An empty filename is illegal." +msgstr "Boş dosya adı geçersiz." + +msgid "An error occurred while downloading the packetlist. Please try again." +msgstr "Paket listesi indirilirken bir hata oluştu. Lütfen tekrar deneyiniz." + +msgid "An unknown error occurred!" +msgstr "Bilinmeyen bir hata oluştu!" + +msgid "And will put your receiver in standby over " +msgstr "" + +msgid "Any activity" +msgstr "Bir etkinlik" + +msgid "Arabic" +msgstr "Arapça" + +msgid "Are you sure to remove this entry?" +msgstr "" + +msgid "" +"Are you sure you want to activate this network configuration?\n" +"\n" +msgstr "" +"Bu ağ yapılandırmasını etkinleştirmek istiyor musunuz?\n" +"\n" + +msgid "" +"Are you sure you want to delete\n" +"the following backup:\n" +msgstr "" +"Aşağıdaki yedeği\n" +"silmek istiyor musun?:\n" + +msgid "Are you sure you want to exit this wizard?" +msgstr "Sihirbazdan çıkmak istiyor musunuz?" + +msgid "" +"Are you sure you want to restart your network interfaces?\n" +"\n" +msgstr "" +"Ağ arabirimlerini yeniden başlatmak istediğinizden emin misiniz?\n" +"\n" + +#, python-format +msgid "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Şu yedeğini geri yüklemek istediğinizden\n" +"emin misiniz:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" + +msgid "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Yedek geri yüklensin mi?\n" +"Yedek geri yüklendikten sonra alıcıyı yeniden başlatılacak!" + +msgid "Artist" +msgstr "Sanatçı" + +msgid "Arts/Culture" +msgstr "GzlSntlr/Kültür" + +msgid "Ask user" +msgstr "Sor" + +msgid "Aspect ratio" +msgstr "En-Boy oranı" + +msgid "Assigned CAIds:" +msgstr "Atanan CalDS:" + +msgid "Assigned services/provider:" +msgstr "Atanan servisler/sağlayıcılar:" + +msgid "At beginning" +msgstr "Başlangıçta" + +msgid "At end" +msgstr "Sonunda" + +msgid "Audio" +msgstr "Ses" + +msgid "Audio PID" +msgstr "Ses PID" + +msgid "Audio language selection 1" +msgstr "Ses dili seçimi 1" + +msgid "Audio language selection 2" +msgstr "Ses dili seçimi 2" + +msgid "Audio language selection 3" +msgstr "Ses dili seçimi 3" + +msgid "Audio language selection 4" +msgstr "Ses dili seçimi 4" + +msgid "Audio options..." +msgstr "Ses seçenekleri ..." + +#, python-format +msgid "Audio track (%s) format" +msgstr "Ses formatı (%s)" + +#, python-format +msgid "Audio track (%s) language" +msgstr "Ses formatı dili (%s)" + +msgid "Author: " +msgstr "Yazar: " + +msgid "Authoring mode" +msgstr "Yayınlama kipi" + +#. TRANSLATORS: (aspect ratio policy: always try to display as fullscreen, when there is no content (black bars) on left/right, even if this breaks the aspect. +msgid "Auto" +msgstr "Otomatik" + +msgid "Auto chapter split every ? minutes (0=never)" +msgstr "Belirtilen sürelerde otomatik bölümlere ayrılsın mı? dakika (0=ayırma)" + +msgid "Auto flesh" +msgstr "Otomatik" + +msgid "Auto focus" +msgstr "Otomatik netleme" + +msgid "Auto focus commencing ..." +msgstr "Otomatik netleme başlamadan ..." + +msgid "Auto language selection" +msgstr "Otomatik dil seçimi" + +msgid "Auto scart switching" +msgstr "Otomatik scart değiştirme" + +msgid "Automatic" +msgstr "Otomatik" + +msgid "Automatic scan" +msgstr "Otomatik arama" + +msgid "Automatically start timeshift after" +msgstr "" + +msgid "Automatically turn on external subtitles" +msgstr "" + +msgid "Available format variables" +msgstr "Kullanılabilir format değişkenleri" + +msgid "B" +msgstr "B" + +msgid "BER" +msgstr "BER" + +msgid "BER:" +msgstr "BER:" + +msgid "Back" +msgstr "Geri" + +msgid "Background" +msgstr "Arkaplan" + +msgid "Background color" +msgstr "Arkaplan rengi" + +msgid "Background delete option" +msgstr "Arka planda silme seçeneği" + +msgid "Background delete speed" +msgstr "Arka planda silme hızı" + +msgid "Backup completed." +msgstr "Yedek oluşturuldu." + +msgid "Backup failed." +msgstr "Yedekleme başarısız oldu." + +msgid "Backup is running..." +msgstr "Yedekleme çalışıyor..." + +msgid "Backup system settings" +msgstr "Sistem ayarlarını yedekle" + +msgid "Band" +msgstr "Bant" + +msgid "Bandwidth" +msgstr "Bant genişliği" + +msgid "Basque" +msgstr "Bask" + +msgid "Begin time" +msgstr "Başlama zamanı" + +msgid "Behavior of 'pause and ok' when paused" +msgstr "" + +msgid "Behavior of 0 key in PiP-mode" +msgstr "RiR kipinde 0 tuşu görevi" + +msgid "Behavior when a movie is started" +msgstr "Film başlatıldığı zaman" + +msgid "Behavior when a movie is stopped" +msgstr "Film durdurulduğu zaman" + +msgid "Behavior when a movie reaches the end" +msgstr "Filmin sonuna ulaşıldığında" + +msgid "Big PiP" +msgstr "" + +msgid "Bitrate:" +msgstr "Hız:" + +msgid "Black screen" +msgstr "Siyah ekran" + +msgid "Black screen till locked" +msgstr "Siyah ekrana kadar kilitli" + +msgid "Block noise reduction" +msgstr "Blok gürültü azaltma" + +msgid "Blue boost" +msgstr "Mavi doygunluğu" + +msgid "Bookmarks" +msgstr "Yer imleri" + +msgid "Brightness" +msgstr "Parlaklık" + +msgid "Bulgarian" +msgstr "Bulgar" + +msgid "Burn DVD" +msgstr "DVD yaz" + +#, python-format +msgid "Burn audio track (%s)" +msgstr "Yazılan ses izi (%s)" + +msgid "Burn existing image to DVD" +msgstr "Varolan imajı DVD'ye yaz" + +msgid "Burn to DVD" +msgstr "DVD'ye yaz" + +msgid "Bus: " +msgstr "Yol: " + +msgid "By default, SNR will be shown in dB (when supported by the tuner). This setting forces SNR to be shown as a percentage instead." +msgstr "Varsayılan olarak; SNR, dB olarak (Tuner tarafından destekleniyorsa) gösterilecektir. Bu ayar SNR yerine yüzde işareti gösterir." + +msgid "C" +msgstr "C" + +msgid "C-Band" +msgstr "C-Bant" + +msgid "CH" +msgstr "" + +msgid "CI assignment" +msgstr "CI ataması" + +msgid "CVBS" +msgstr "CVBS" + +msgid "Cable" +msgstr "Kablo" + +msgid "Cable Scan" +msgstr "Kablo Arama" + +msgid "Cache thumbnails" +msgstr "Küçük resim önbelleği" + +msgid "Calculate" +msgstr "Hesapla" + +msgid "Calculate all positions" +msgstr "Her pozisyonda Hesapla" + +msgid "Calculation complete" +msgstr "Hesaplandı" + +msgid "Calibrate" +msgstr "Kalibrasyon" + +msgid "Can be used for different fps between external subtitles and video." +msgstr "" + +msgid "Cancel" +msgstr "Vazgeç" + +msgid "Cannot determine" +msgstr "Belirlenemiyor" + +msgid "Cannot find any signal ..., aborting !" +msgstr "Herhangi bir sinyal bulunamadı... İptal!" + +msgid "Cannot move files on a different disk or system to the trash can" +msgstr "Çöp kutusuna farklı bir disk veya sistem dosyaları taşıyamazsınız" + +msgid "Cannot move to trash can" +msgstr "Çöp kutusuna taşıyamazsınız" + +msgid "Capacity: " +msgstr "Kapasite: " + +msgid "Card" +msgstr "Kart" + +msgid "Cascade PiP" +msgstr "" + +msgid "Center DVB subtitles" +msgstr "DVB altyazı Ortada" + +msgid "Center time-labels and remove date" +msgstr "" + +msgid "Change bouquets in quickzap" +msgstr "Kanal değiştirirken buketler arası geçişe izin" + +msgid "Change pin code" +msgstr "Şifre değiştir" + +msgid "Change recording (duration)" +msgstr "Kayıt değiştirme (süre)" + +msgid "Change recording (endtime)" +msgstr "Kayıt değiştirme (bitiş zamanı)" + +msgid "Change repeat and delay settings?" +msgstr "Tekrarlama ve gecikme ayarlarını değiştirin?" + +msgid "Change service PIN" +msgstr "Servis PIN'ini değiştir" + +msgid "Change service PINs" +msgstr "Servis PIN'ini değiştir" + +msgid "Change setup PIN" +msgstr "Kurulum PIN'ini değiştir" + +msgid "Change step size" +msgstr "Ayar yapılırken atlama boyutu" + +msgid "Change timer" +msgstr "" + +msgid "Changelog" +msgstr "Adım boyutunu değiştirme" + +msgid "Channel" +msgstr "Kanal" + +msgid "Channel list type" +msgstr "Kanal listesi tipi" + +msgid "Channel not in services list" +msgstr "Kanal, servis listesinde mevcut değil" + +msgid "Channel selection" +msgstr "Kanal seçimi" + +msgid "Channel:" +msgstr "Kanal:" + +msgid "Channellist menu" +msgstr "Kanal listesi menüsü" + +msgid "Chap." +msgstr "Bölüm" + +msgid "Chapter" +msgstr "Bölüm" + +msgid "Chapter:" +msgstr "Bölüm:" + +msgid "Check" +msgstr "Kontrol et" + +msgid "Check the internet connection" +msgstr "İnternet bağlantısını kontrol et" + +msgid "Check the internet connection again" +msgstr "İnternet bağlantısını tekrar kontrol et" + +msgid "Checking filesystem..." +msgstr "Dosya sistemi kontrol ediliyor..." + +msgid "Checking the internet connection" +msgstr "İnternet bağlantısı kontrol ediliyor..." + +#, python-format +msgid "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" +msgstr "" +"Tuner kontrolü%d\n" +"DiSEqC port %s için %s" + +msgid "Children/Youth" +msgstr "Çocuklar/Gençler" + +msgid "Choose which tuner to configure." +msgstr "Yapılandırmak için tuner seçimi." + +msgid "Circular left" +msgstr "Dairesel sola" + +msgid "Circular right" +msgstr "Dairesel sağa" + +msgid "Cleanup" +msgstr "Temizle" + +msgid "Clear" +msgstr "Temizle" + +msgid "Clear before scan" +msgstr "Arama öncesi kanal listesini temizle" + +msgid "Clear fixed" +msgstr "Temizle" + +msgid "Clear log" +msgstr "Kayıt günlüğünü sil" + +msgid "Clear playlist" +msgstr "Çalma listesini temizle" + +msgid "Close" +msgstr "Kapat" + +msgid "Close PiP on exit" +msgstr "" + +msgid "Close title selection" +msgstr "Başlık seçimini kapat" + +msgid "Code rate HP" +msgstr "HP Kod oranı" + +msgid "Code rate LP" +msgstr "LP Kod oranı" + +msgid "Coderate HP" +msgstr "HP Kod oranı" + +msgid "Coderate LP" +msgstr "LP Kod oranı" + +msgid "Collection name" +msgstr "Koleksiyon adı" + +msgid "Collection settings" +msgstr "Koleksiyon ayarları" + +msgid "Color format" +msgstr "Renk formatı" + +msgid "Command execution..." +msgstr "Komut çalıştırılıyor..." + +msgid "Command order" +msgstr "Komut sırası" + +msgid "Common Interface" +msgstr "Ortak Arayüz" + +msgid "Common Interface assignment" +msgstr "Ortak Arabirim ataması" + +msgid "Communication" +msgstr "İletişim" + +msgid "Compact flash" +msgstr "Kompakt flaş" + +msgid "Complete" +msgstr "Tamamı" + +msgid "Complex (allows mixing audio tracks and aspects)" +msgstr "Kompleks (karışık ses izlerine ve açılara izin verir)" + +msgid "Composition of the recording filenames" +msgstr "Kayıt işleminde dosya adı düzeni" + +msgid "Configuration mode" +msgstr "Yapılandırma modu" + +#, python-format +msgid "Configuration mode: %s" +msgstr "Yapılandırma modu: %s" + +msgid "Configuration..." +msgstr "Yapılandırma..." + +msgid "Configure an additional delay to improve external subtitle synchronisation." +msgstr "" + +msgid "Configure an additional delay to improve subtitle synchronisation." +msgstr "" + +msgid "Configure for how long the infobar will remain visible after activation." +msgstr "Bilgi çubuğu gözünme süresini ayarla." + +msgid "Configure for how many minutes finished events should remain visible in the EPG. Useful when you need information about an event which has just finished, or has been delayed." +msgstr "Biten olaylar EPG de kaç dakika görünmeli. Kullanışlı, biten veya ertelenmişti bir olay hakkında bilgi gerektiğinde." + +msgid "Configure how recording filenames are constructed." +msgstr "Kayıt dosyaları nasıl isimlerdirilmeli" + +msgid "Configure how the fan should operate" +msgstr "" + +msgid "Configure if and how crypto icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how long the latest service in the PiP will be remembered." +msgstr "" + +msgid "Configure if and how service type icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how wide columns will be shown in the channel selection list." +msgstr "" + +msgid "Configure if service picons will be shown in the channel selection list." +msgstr "" + +msgid "Configure interface" +msgstr "Arayüz yapılandırması" + +msgid "Configure nameservers" +msgstr "İsim sunucu yapılandırması" + +msgid "Configure on which devices the background delete option should be used." +msgstr "Arka plan silme seçeneği kullanılması gereken aygıtları yapılandırın." + +msgid "Configure remote control type" +msgstr "Uzaktan kumanda türünü yapılandırın" + +msgid "Configure the DiSEqC mode for this LNB." +msgstr "Bu LNB için DiSEqC modunu yapılandırın." + +msgid "Configure the IP address." +msgstr "IP adresini yapılandırın." + +msgid "Configure the aspect ratio of the screen." +msgstr "Ekranın en boy oranını yapılandırın." + +msgid "Configure the behavior of the 'pause and ok' key when movie playback is already paused." +msgstr "" + +msgid "Configure the behavior when movie playback is manually stopped." +msgstr "Film oyntılırken el ile durdurulduğunda davranışı yapılandırın." + +msgid "Configure the behavior when movie playback is started." +msgstr "Kayıttan film oynatma başlatıldığında davranışını yapılandırın." + +msgid "Configure the behavior when reaching the end of a movie, during movie playback." +msgstr "Kayıttan film oynatma sırasında, film sonuna ulaşıldığında davranışını yapılandırın." + +msgid "Configure the border width of the subtitles. The dark border makes the subtitles easier to read on a light background." +msgstr "Altyazı sınır genişliğini yapılandırın. Karanlık kenarlık hafif bir arka plan üzerinde altyazıları okumayı kolaylaştırır." + +msgid "Configure the brightness level of the front panel display during standby." +msgstr "Bekleme sırasında ön panel ekranının parlaklık seviyesini yapılandırın." + +msgid "Configure the brightness level of the front panel display." +msgstr "Ön panel ekranının parlaklık seviyesini yapılandırın." + +msgid "Configure the color of the external subtitles, alternative (normal in white, italic in yellow, bold in cyan, underscore in green), white or yellow." +msgstr "" + +msgid "Configure the color of the teletext subtitles." +msgstr "Teletext altyazı rengini yapılandırın." + +msgid "Configure the contrast level of the front panel display." +msgstr "Ön panel ekranın kontrast seviyesini yapılandırın." + +msgid "Configure the cursor behaviour in the channel selection list. When opening the channel selection list you can keep on the current service or already select up/down and you are able to revert the B+/B- buttons." +msgstr "" + +msgid "Configure the duration in hours the receiver should go to standby when the receiver is not controlled." +msgstr "" + +msgid "Configure the duration in minutes for the screensaver." +msgstr "" + +msgid "Configure the duration in minutes for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +msgstr "" + +msgid "Configure the duration when the receiver should go to shut down in case the receiver is in standby mode." +msgstr "" + +msgid "Configure the first audio language (highest priority)." +msgstr "Birinci ses dilini (en yüksek öncelik) yapılandırın." + +msgid "Configure the first subtitle language (highest priority)." +msgstr "Birinci alt yazı dili (en yüksek öncelik) yapılandırın." + +msgid "Configure the font size of the subtitles." +msgstr "Altyazı yazı tipi boyutunu yapılandırın." + +msgid "Configure the fourth audio language." +msgstr "Dördüncü ses dilini yapılandırın." + +msgid "Configure the fourth subtitle language." +msgstr "Dördüncü altyazı dili yapılandırın." + +msgid "Configure the function of a long press on the power button." +msgstr "Güç düğmesine uzun süre basma işlevini yapılandırın." + +msgid "Configure the function of a short press on the power button." +msgstr "Güç düğmesine kısa süre basma işlevini yapılandırın." + +msgid "Configure the function of the '0' button do when PIP is active." +msgstr "PIP aktif olduğunda '0 'düğmesinin işlevini yapılandırın." + +msgid "Configure the gateway." +msgstr "Ağ geçidini yapılandırın." + +msgid "Configure the general audio delay of Dolby Digital sound tracks." +msgstr "Dolby Digital ses parçalarını genel ses gecikmesini yapılandırın." + +msgid "Configure the general audio delay of stereo sound tracks." +msgstr "Stereo ses parçalarını genel ses gecikmesini yapılandırın." + +msgid "Configure the hard disk drive to go to standby after the specified idle time." +msgstr "Bekleme modunda HDD boşta kalma süresi ayarla" + +msgid "Configure the horizontal alignment of the subtitles." +msgstr "Altyazıları yatay hizalamayı yapılandırın." + +msgid "Configure the initial fast forward speed. When you press the fast forward button, winding will start at this speed." +msgstr "İlk hızlı ileri sarma hızını yapılandırın. Hızlı ileri sarma düğmesine bastığınızda, sarma bu hızda başlayacak." + +msgid "Configure the initial rewind speed. When you press the rewind button, winding will start at this speed." +msgstr "İlk geri sarma hızını yapılandırın. Geri sarma düğmesine bastığınızda, sarma bu hızda başlayacak." + +msgid "Configure the latitude of your location." +msgstr "Bulunduğunuz konumun enlemini yapılandırın." + +msgid "Configure the longitude of your location." +msgstr "Bulunduğunuz konumu boylamı yapılandırın." + +msgid "Configure the minimum amount of disk space to be available for recordings. When the amount of space drops below this value, deleted items will be removed from the trash can." +msgstr "Kayıtların kullanacağı minimum disk miktarını yapılandırın. Alan miktarını bu değerin altına düştüğünde, silinmiş öğeler çöp kutusundan kaldırılacaktır." + +msgid "Configure the nameserver (DNS)." +msgstr "İsim sunucusunu (DNS) yapılandırın." + +msgid "Configure the netmask." +msgstr "Ağ maskesini yapılandırın." + +msgid "Configure the number of days after which items are automaticaly removed from the trash can." +msgstr "Öğeleri otomatik olarak çöp kutusundan kaldırmak için gün sayısını yapılandırın." + +msgid "Configure the number of days old timers are kept before they are automatically removed from the timer list." +msgstr "Otomatik olarak zaman listesini silmek için eski kayıtların tutulacağı gün sayısını yapılandırın." + +msgid "Configure the offline decoding delay in milliseconds. The configured delay is observed at each control word parity change." +msgstr "Milisaniye cinsinden çevrimdışı şifre çözme gecikmesini yapılandırın. Yapılandırılan gecikme her bir control word eşlik değişikliğini görülür." + +msgid "Configure the possible fast forward speeds." +msgstr "Mümkün olan hızlı ileri sarma hızını yapılandırın." + +msgid "Configure the possible rewind speeds." +msgstr "Mümkün olan hızlı geri sarma hızını yapılandırın." + +msgid "Configure the primary EPG language." +msgstr "Ana EPG dili yapılandırın." + +msgid "Configure the refresh rate of the screen." +msgstr "Ekranın yenileme hızını yapılandırın." + +msgid "Configure the screen resolution in PC output mode." +msgstr "PC çıkış modundayken ekran çözünürlüğünü yapılandırın." + +msgid "Configure the second audio language." +msgstr "Ikinci ses dilini yapılandırın." + +msgid "Configure the second subtitle language." +msgstr "Ikinci altyazı dilini yapılandırın." + +msgid "Configure the secondary EPG language." +msgstr "Ikinci EPG dilini yapılandırın." + +msgid "Configure the sharpness of the video scaling." +msgstr "Video ölçekleme keskinliğini yapılandırın." + +msgid "Configure the skip time interval for the '1'/'3' buttons." +msgstr "'1'/'3' Düğmeleri için atlama zaman aralığını yapılandırın." + +msgid "Configure the skip time interval for the '4'/'6' buttons." +msgstr "'4'/'6' Düğmeleri için atlama zaman aralığını yapılandırın." + +msgid "Configure the skip time interval for the '7'/'9' buttons." +msgstr "'7'/'9' Düğmeleri için atlama zaman aralığını yapılandırın." + +msgid "Configure the slow motion speeds." +msgstr "Yavaş oynatma hızını yapılandırın." + +msgid "Configure the source of the frontend data as shown on the infobars. 'Settings' is as stored on the settings. 'Tuner' is as reported by the tuner." +msgstr "" + +msgid "Configure the speed of the background deletion process. Lower speed will consume less hard disk drive performance." +msgstr "Arka planda silme işleminin hızını yapılandırın. Düşük hız sabit disk sürücüsünün performansını daha az kullanacaktır." + +msgid "Configure the speed of the fan" +msgstr "" + +msgid "Configure the subtitle delay when timing information is not available." +msgstr "Zaman bilgisi mevcut değilken altyazı gecikmesini yapılandırın." + +msgid "Configure the third audio language." +msgstr "Üçüncü ses dilini yapılandırın." + +msgid "Configure the third subtitle language." +msgstr "Üçüncü altyazı dili yapılandırın." + +msgid "Configure the transparency of the OSD." +msgstr "OSD'nin saydamlığını yapılandırın." + +msgid "Configure the transparency of the black background of graphical DVB subtitles." +msgstr "Grafik DVB altyazılarının siyah arka plan saydamlığını yapılandırın." + +msgid "Configure the tuner mode." +msgstr "Tuner modunda yapılandırın." + +msgid "Configure the type of status indication icons shown in the movielist." +msgstr "Film listesinde gösterilen durum göstergesi simgelerinin türünü yapılandırın." + +msgid "Configure the vertical position of the subtitles, measured from the bottom of the screen." +msgstr "Ekranın altından altyazılarının arasındaki ölçüyü yapılandırın." + +msgid "Configure the video output mode (or resolution)." +msgstr "Video çıkış modunu (veya çözünürlüğü) yapılandırın." + +msgid "Configure the way in which the receiver changes channels." +msgstr "Alıcı kanal değiştirme yolunu yapılandırın." + +msgid "Configure where completed timers show up in the timer list." +msgstr "Tamamlanmış zamanları, zaman listesinde nedere görüneceğini yapılandırın." + +msgid "Configure whether (and for how long) a second infobar will be shown when OK is pressed twice. The second infobar contains additional information about the current channel." +msgstr "OK iki kez basıldığında, ikinci bilgi çubuğu (ne kadar süre için) gösterilir . İkinci bilgi çubuğu mevcut kanal hakkında ek bilgi içerir." + +msgid "Configure whether multi channel sound tracks should be downmixed to stereo." +msgstr "Çok kanallı ses parçalarını stereo downmix olup olmayacağını yapılandırın." + +msgid "Configure whether or not an icon should be shown when your motorized dish is moving." +msgstr "Motorlu çanak hareket halindeyken bir simge gösterilmesinin gereken olup olmadığını yapılandırın." + +msgid "Configure which access level to use for the configuration menu. Expert level gives access to all items." +msgstr "Hangi erişim seviyesinde yapılandırma menüsü ayarlansın. Uzman düzeyinde tüm öğelere erişim sağlanır." + +msgid "Configure which color format should be used on the SCART output." +msgstr "SCART çıkışında kullanılması gereken renk formatını yapılandırın." + +msgid "Configure which tuner for recordings will be preferred, when more than one tuner is available." +msgstr "" + +msgid "Configure which tuner type will be preferred, when the same service is available on different types of tuners." +msgstr "Tercih edilen tuner tipini yapılandırın, değişik tunerlerde aynı servis kullanıldığında." + +msgid "Configure which tuner will be preferred, when more than one tuner is available. If set to 'auto' the system will give priority to the tuner having the lowest number of channels/satellites." +msgstr "Birden fazla tuner varken, tercih edilen tuneri yapılandırın. 'Otomatik' olarak ayarlanırsa, sistem kanal/uydu en küçük numaralı tunere öncelik verecektir." + +msgid "Configure your internal LAN" +msgstr "Yerel ağ ayarlarınızı yapılandırın" + +msgid "Configure your network again" +msgstr "Kablosuz ağınızı yeniden yapılandırın" + +msgid "Configure your network settings, and press OK to start the scan" +msgstr "Ağ ayarlarınızı yapılandırmak ve taramayı başlatmak için OK tuşuna basın" + +msgid "Configure your wireless LAN again" +msgstr "Kablosuz ağ ayarlarınızı yeniden yapılandırın" + +msgid "Configures which video output connector will be used." +msgstr "Kullanılacak video çıkışını yapılandırın." + +msgid "Configuring" +msgstr "Ayarlanıyor" + +msgid "Conflicting timer" +msgstr "Zamanlama çakışması" + +msgid "Connect" +msgstr "Bağlan" + +msgid "Connect to a wireless network" +msgstr "Bir Kablosuz ağa bağlanın" + +msgid "Connected satellites" +msgstr "" + +msgid "Connected to" +msgstr "Bağlanılıyor" + +msgid "Connected!" +msgstr "Bağlandı!" + +msgid "Constellation" +msgstr "Takımyıldız" + +msgid "Content does not fit on DVD!" +msgstr "İçerik DVD'ye sığmıyor!" + +msgid "Continue" +msgstr "İlerle" + +msgid "Continue in background" +msgstr "Arkaplanda devam et" + +msgid "Continue playback" +msgstr "Oynatmaya devam" + +msgid "Continue playing" +msgstr "Oynatmaya devam et" + +msgid "Continues play (loop)" +msgstr "Sürekli oynat (döngü)" + +msgid "Contrast" +msgstr "Kontrast" + +msgid "Convert ext3 filesystem to ext4" +msgstr "ext3 dosya sistemini ext4 e dönüştür." + +msgid "Convert ext3 to ext4" +msgstr "Dönüştür ext3'ü ext4'e" + +msgid "Converting ext3 to ext4..." +msgstr "Dönüştürülüyor ext3 - ext4'e..." + +msgid "Copy" +msgstr "Kopyala" + +msgid "Could not connect to receiver .NFI image feed server:" +msgstr "Alıcı .NFI besleme sunucusuna bağlanamıyor:" + +msgid "Could not find installed channel list." +msgstr "Yüklü kanal listesi bulunamadı." + +msgid "Could not load medium! No disc inserted?" +msgstr "Ortam yüklenemedi! Takılı disk yok?" + +msgid "Could not open Picture in Picture" +msgstr "Resim içinde resim açılamıyor" + +#, python-format +msgid "Could not record due to conflicting timer %s" +msgstr "Çakışan zamanlama %s kayıt yapılamıyor." + +#, python-format +msgid "Could not record due to invalid service %s" +msgstr "Geçersiz hizmet %s nedeniyle kayıt bulunamadı" + +msgid "Create DVD-ISO" +msgstr "DVD-ISO oluştur" + +msgid "Create more detailed crash log" +msgstr "Daha ayrıntılı çökme günlüğü oluştur" + +#, python-format +msgid "Creating directory %s failed." +msgstr "%s klasörü oluşturulamadı." + +msgid "Creating filesystem" +msgstr "Dosya sistemi oluşturma" + +msgid "Creating partition" +msgstr "Bölüm oluşturma" + +msgid "Croatian" +msgstr "Hırvatça" + +msgid "Current CEC address" +msgstr "Güncel CEC adresi" + +msgid "Current device: " +msgstr "Geçerli aygıt:" + +msgid "Current event EPG" +msgstr "Geçerli EPG etkinliği" + +#, python-format +msgid "Current mode: %s \n" +msgstr "" + +msgid "Current settings:" +msgstr "Geçerli ayarlar:" + +msgid "Current transponder" +msgstr "Geçerli transponder" + +msgid "Current value: " +msgstr "Mevcut değer: " + +msgid "Current version:" +msgstr "Geçerli sürüm:" + +msgid "Currently installed image" +msgstr "Yüklü image" + +msgid "Currently the commit log cannot be retrieved - please try later again" +msgstr "" + +msgid "Custom skip time for '1'/'3' buttons" +msgstr "'1'/'3' Düğmeleri için özel atlama süresi" + +msgid "Custom skip time for '4'/'6' buttons" +msgstr "'4'/'6' Düğmeleri için özel atlama süresi" + +msgid "Custom skip time for '7'/'9' buttons" +msgstr "'7'/'9' Düğmeleri için özel atlama süresi" + +msgid "Customize" +msgstr "Özelleştir" + +msgid "Customize channel list cursor behavior" +msgstr "" + +msgid "Cut" +msgstr "Kes" + +msgid "Cutlist editor..." +msgstr "Film düzenleyici..." + +msgid "Czech" +msgstr "Çekçe" + +msgid "D" +msgstr "D" + +msgid "DHCP" +msgstr "DHCP" + +msgid "DMM advanced" +msgstr "DMM gelişmiş" + +msgid "DMM normal" +msgstr "DMM normal" + +msgid "DUAL LAYER DVD" +msgstr "ÇİFT KATMAN DVD" + +msgid "DVB subtitle black transparency" +msgstr "DVB altyazı siyah saydamlığı" + +msgid "DVB-C" +msgstr "DVB-C" + +msgid "DVB-C ANNEX C" +msgstr "DVB-C EK C" + +msgid "DVB-S" +msgstr "DVB-S" + +msgid "DVB-S2" +msgstr "DVB-S2" + +msgid "DVB-T" +msgstr "DVB-T" + +msgid "DVB-T2" +msgstr "DVB-T2" + +msgid "DVD data format" +msgstr "DVD veri biçimi" + +msgid "DVD file browser" +msgstr "DVD dosya gezgini" + +msgid "DVD media toolbox" +msgstr "DVD medya araçları" + +msgid "DVD player" +msgstr "DVD oynatıcı" + +msgid "DVD titlelist" +msgstr "DVD parça listesi" + +msgid "Danish" +msgstr "Danca" + +msgid "Date" +msgstr "Tarih" + +msgid "Date/time input" +msgstr "Tarih/Saat girişi" + +msgid "Deep standby" +msgstr "Derin bekleme" + +msgid "Default" +msgstr "Varsayılan" + +msgid "Default movie location" +msgstr "Varsayılan film konumu" + +msgid "Default settings" +msgstr "Varsayılan ayarlar" + +msgid "Delay before key repeat starts:" +msgstr "Key (şifre) beklemeden önce tekrar süresi:" + +msgid "Delay for external subtitles" +msgstr "" + +msgid "Delete" +msgstr "Sil" + +msgid "Delete entry" +msgstr "Seçimi sil" + +msgid "Delete failed!" +msgstr "Silme işlemi başarısız!" + +msgid "Delete file" +msgstr "Dosy Sil" + +msgid "Delete playlist entry" +msgstr "Çalma listesi girdisini silin" + +msgid "Delete saved playlist" +msgstr "Kayıtlı çalma listesini silin" + +msgid "Delete timer" +msgstr "" + +msgid "Delete..." +msgstr "Sil..." + +msgid "Deleted" +msgstr "Silinmiş" + +msgid "Deleted items" +msgstr "Silinmiş öğeler" + +msgid "Depth" +msgstr "Derinlik" + +msgid "Descramble http streams" +msgstr "http akış çözücü" + +msgid "Description" +msgstr "Açıklama" + +msgid "Deselect" +msgstr "Seçimi Kaldır" + +msgid "Details for plugin: " +msgstr "Eklenti detayları:" + +msgid "Detected HDD:" +msgstr "Tanınan HDD:" + +msgid "Detected NIMs:" +msgstr "Tanınan NIM:" + +msgid "Devicename:" +msgstr "Aygıt Adı​​:" + +msgid "Devide" +msgstr "" + +msgid "DiSEqC" +msgstr "DiSEqC" + +msgid "DiSEqC 1.0 command" +msgstr "" + +msgid "DiSEqC 1.1 command" +msgstr "" + +msgid "DiSEqC 1.1 repeats" +msgstr "" + +msgid "DiSEqC A/B" +msgstr "DiSEqC A/B" + +msgid "DiSEqC A/B/C/D" +msgstr "DiSEqC A/B/C/D" + +msgid "DiSEqC mode" +msgstr "DiSEqC tipi" + +#, python-format +msgid "DiSEqC port %s: %s" +msgstr "DiSEqC portu %s: %s" + +msgid "DiSEqC-tester settings" +msgstr "DiSEqC-test ayarları" + +msgid "Dialing:" +msgstr "Aranıyor:" + +msgid "Digital contour removal" +msgstr "Sayısal çerçeve kaldırma" + +msgid "Direct playback of linked titles without menu" +msgstr "Linklenmiş başlıkları menü olmadan hemen oynat." + +msgid "Directory" +msgstr "Klasör" + +#, python-format +msgid "Directory %s does not exist." +msgstr "%s klasörü yok." + +#, python-format +msgid "Directory %s nonexistent." +msgstr "" + +msgid "Directory browser" +msgstr "Klasör gezgini" + +#, python-format +msgid "Directory contains %d file(s) and %d sub-directories.\n" +msgstr "" + +#, python-format +msgid "Directory contains %s and %s." +msgstr "" + +msgid "Disable" +msgstr "Pasif" + +msgid "Disable Picture in Picture" +msgstr "Resim içinde resim (RiR) 'i kapat" + +msgid "Disable background scanning" +msgstr "Arka plan taramasını devre dışı bırak" + +msgid "Disable timer" +msgstr "" + +msgid "Disabled" +msgstr "Devre dışı" + +msgid "Disconnect" +msgstr "Bağlı değil" + +msgid "Disk space to reserve for recordings (in GB)" +msgstr "Kayıtlar için ayrılacak disk alanı (GB)" + +msgid "Display 16:9 content as" +msgstr "16:9 içeriği şu şekilde göster" + +msgid "Display 4:3 content as" +msgstr "4:3 içeriği şu şekilde göster" + +msgid "Display >16:9 content as" +msgstr ">16:9 içeriği şu şekilde göster" + +msgid "Display and userinterface" +msgstr "Görüntüleme ve kullanıcı arayüzü" + +msgid "Display message before playing next movie" +msgstr "Sonraki filmi oynamadan önce mesaj görüntüler" + +msgid "Display setup" +msgstr "Ekran kurulumu" + +msgid "Do not change" +msgstr "Değiştirme" + +msgid "Do not record" +msgstr "Kayıt etmeyin" + +msgid "Do nothing" +msgstr "Hiçbir şey yapma" + +msgid "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" +msgstr "" +"Dosya sistemini kontrol etmek istiyor musunuz?\n" +"Bu işlem çok uzun sürebilir!" + +msgid "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" +msgstr "" +"Gerçekten dosya sistemi dönüştürmek istiyor musunuz?\n" +"Geri dönüşü yok!" + +#, python-format +msgid "Do you really want to delete %s?" +msgstr "%s 'i silmek istediğinizden emin misiniz?" + +#, python-format +msgid "" +"Do you really want to download\n" +"the plugin \"%s\"?" +msgstr "" +"\"%s\" eklentisini indirmek\n" +"istiyor musunuz?" + +msgid "Do you really want to exit?" +msgstr "Çıkmak istediğinizden emin misiniz?" + +msgid "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" +msgstr "" +"Gerçekten aygıtın başlatılmasını istiyor musunuz?\n" +"Diskteki tüm veriler kaybolacak!" + +#, python-format +msgid "" +"Do you really want to remove\n" +"the plugin \"%s\"?" +msgstr "" +"\"%s\"eklentisini silmek\n" +"istiyor musun?" + +#, python-format +msgid "Do you really want to remove directory %s from the disk?" +msgstr "%s klasörünü silmek istiyor musunuz?" + +#, python-format +msgid "Do you really want to remove your bookmark of %s?" +msgstr "%s isimli yer imini silmek istiyor musunuz?" + +msgid "Do you want this?" +msgstr "" + +msgid "Do you want to burn this collection to DVD medium?" +msgstr "Bu koleksiyonu DVD medyasına yazmak istiyor musunuz?" + +msgid "Do you want to do a service scan?" +msgstr "Kanal araması yapmak ister misiniz?" + +msgid "Do you want to do another manual service scan?" +msgstr "Başka kanal araması yapacak mısınız?" + +#, python-format +msgid "Do you want to download the image to %s ?" +msgstr "%s bellenimini indirmek istiyor musunuz?" + +msgid "Do you want to install a channel list?" +msgstr "Bir kanal listesi yüklemek istiyor musunuz?" + +msgid "Do you want to install the package:\n" +msgstr "Seçilen paketi yüklemek istiyor musunuz?:\n" + +msgid "Do you want to play DVD in drive?" +msgstr "DVD'yi oynatmak istiyor musunuz?" + +msgid "Do you want to preview this DVD before burning?" +msgstr "DVD'yi yazmadan önce önizleme yapmak istiyor musunuz?" + +msgid "Do you want to reboot your receiver?" +msgstr "Alıcıyı yeniden başlatmak istiyor musunuz?" + +msgid "Do you want to remove the package:\n" +msgstr "Seçilen paketi kaldırmak istiyor musunuz?:\n" + +msgid "Do you want to restore your settings?" +msgstr "Ayarlarınızı geri yüklemek istiyor musunuz?" + +msgid "Do you want to resume this playback?" +msgstr "Oynatmaya kaldığınız yerden devam etmek istiyor musunuz?" + +#, python-format +msgid "Do you want to update your receiver to %s?" +msgstr "Alıcıyı %s 'ye güncellemek istiyor musunuz?" + +msgid "Do you want to update your receiver?" +msgstr "Alıcı güncellensin mi?" + +msgid "Do you want to upgrade the package:\n" +msgstr "Seçilen paketi güncellemek istiyor musunuz?:\n" + +msgid "Don't stop current event but disable coming events" +msgstr "Geçerli olayı devre dışı bırakmayın ancak gelecek olayları durdur" + +#, python-format +msgid "Done - Installed, upgraded or removed %d package (%s)" +msgid_plural "Done - Installed, upgraded or removed %d packages (%s)" +msgstr[0] "" + +msgid "Download" +msgstr "İndir" + +#, python-format +msgid "Download %s from server" +msgstr "Sunucudan %s indir" + +msgid "Download .NFI-files for USB-flasher" +msgstr "USB yükleyici için .NFI dosyası indir" + +msgid "Download plugins" +msgstr "Eklentileri indir" + +msgid "Downloadable new plugins" +msgstr "İndirilebilir yeni eklentiler" + +msgid "Downloadable plugins" +msgstr "İndirilebilir eklentiler" + +msgid "Downloading" +msgstr "İndiriliyor..." + +msgid "Downloading plugin information. Please wait..." +msgstr "Downloading plugin information. Please wait..." + +msgid "Dutch" +msgstr "Flemenkçe" + +msgid "Dynamic contrast" +msgstr "Dinamik kontrast" + +msgid "E" +msgstr "E" + +msgid "EPG" +msgstr "EPG" + +msgid "EPG language selection 1" +msgstr "EPG Dil seçimi 1" + +msgid "EPG language selection 2" +msgstr "EPG Dil seçimi 2" + +msgid "EPG selection" +msgstr "EPG Dil seçimi" + +msgid "EPG settings" +msgstr "EPG ayarları" + +#, python-format +msgid "ERROR - failed to scan (%s)!" +msgstr "HATA - arama başarısız (%s)!" + +msgid "East" +msgstr "Doğu" + +msgid "East limit set" +msgstr "Doğu limit ayarı" + +msgid "Edit" +msgstr "Düzenle" + +msgid "Edit DNS" +msgstr "DNS Düzenle" + +msgid "Edit bouquets list" +msgstr "Buket listesini düzenle" + +msgid "Edit chapters of current title" +msgstr "Geçerli başlık için bölümleri düzenle" + +msgid "Edit services list" +msgstr "Kanal listesini düzenle" + +msgid "Edit settings" +msgstr "Ayarları düzenle" + +msgid "Edit the nameserver configuration of your receiver.\n" +msgstr "Alıcınızın isim sunucusunu yapılandırın..\n" + +msgid "Edit the network configuration of your receiver.\n" +msgstr "Uydu alıcınızın ağ yapılandırmasını düzenleyin.\n" + +msgid "Edit timer" +msgstr "" + +msgid "Edit title" +msgstr "Başlığı düzenle" + +msgid "Edit upgrade source url." +msgstr "Güncelleme sunucusu adresini düzenleyin." + +msgid "Education/Science/..." +msgstr "Eğitim/Bilim/..." + +msgid "Electronic Program Guide" +msgstr "Elektronik Televizyon Rehberi" + +msgid "Enable" +msgstr "Etkinleştir" + +msgid "Enable 'neutrino' style channel select controlling" +msgstr "" + +msgid "Enable 'neutrino' style zap controlling" +msgstr "" + +msgid "Enable 5V for active antenna" +msgstr "Aktif anten için 5V etkinleştir" + +msgid "Enable EIT EPG" +msgstr "EIT EPG Aktif" + +msgid "Enable MHW EPG" +msgstr "MHW EPG Aktif" + +msgid "Enable Netmed EPG" +msgstr "Netmed EPG Aktif" + +msgid "Enable OK for channel selection" +msgstr "" + +msgid "Enable ViaSat EPG" +msgstr "ViaSat EPG Aktif" + +msgid "Enable Virgin EPG" +msgstr "" + +msgid "Enable Wake On LAN" +msgstr "" + +msgid "Enable auto fast scan" +msgstr "" + +msgid "Enable bouquet selection in multi-EPG" +msgstr "Çoklu-EPG içinde buket seçimini etkinleştir" + +msgid "Enable freesat EPG" +msgstr "Freesat EPG Aktif" + +msgid "Enable multiple bouquets" +msgstr "Çoklu buket kullanımını etkinleştir" + +msgid "Enable parental control" +msgstr "Aile korumasını aç" + +msgid "Enable teletext caching" +msgstr "Teletext önbelleğini etkinleştir" + +msgid "Enable zapping with CH+/-, B+/-, P+/-" +msgstr "" + +msgid "Enabled" +msgstr "Etkin" + +msgid "Encrypted: " +msgstr "Şifrelenmiş: " + +msgid "Encryption" +msgstr "Şifreleme" + +msgid "Encryption key" +msgstr "Şifre" + +msgid "Encryption key type" +msgstr "Şifreleme tipi" + +msgid "Encryption:" +msgstr "Şifreleme:" + +msgid "End time" +msgstr "Bitiş zamanı" + +msgid "End time to ignore inactivity sleeptimer" +msgstr "" + +msgid "End time to ignore shutdown in standby" +msgstr "" + +msgid "English" +msgstr "İngilizce" + +msgid "Enigma2 skin selector" +msgstr "Enigma2 arayüz seçici" + +msgid "Enter main menu..." +msgstr "Ana menüye gir..." + +msgid "Enter pin code" +msgstr "Şifreyi girin" + +msgid "Enter the service pin" +msgstr "Kanal şifresini girin" + +msgid "Equal to" +msgstr "" + +msgid "Error" +msgstr "Hata" + +msgid "Error code" +msgstr "Hata kodu" + +msgid "Error executing plugin" +msgstr "Eklentinin çalıştırılması sırasında hata oluştu" + +#, python-format +msgid "" +"Error: %s\n" +"Retry?" +msgstr "" +"Hata: %s\n" +"Tekrar denensin mi?" + +msgid "Estonian" +msgstr "Estçe" + +msgid "Ethernet network interface" +msgstr "Ağ arayüzü" + +msgid "Event font size (relative to skin size)" +msgstr "Olay yazı tipi boyutu (arayüz ayarlarıyla aynı)" + +msgid "Event view" +msgstr "Olay görüntüleme" + +msgid "Event view menu" +msgstr "Olay görüntüleme menüsü" + +msgid "Everywhere" +msgstr "Heryerde" + +msgid "Exceeds dual layer medium!" +msgstr "Çift katman orta ölçeği aşıyor!" + +msgid "Execution finished!!" +msgstr "Uygulama bitti!!" + +msgid "Execution progress:" +msgstr "Uygulama ilerlemesi:" + +msgid "Exif" +msgstr "Çıkış" + +msgid "Exit" +msgstr "Çıkış" + +msgid "Exit EPG" +msgstr "EPG'den Çık" + +msgid "Exit editor" +msgstr "Editörden çık" + +msgid "Exit input device selection." +msgstr "Giriş aygıtı seçiminden çık." + +msgid "Exit media player?" +msgstr "" + +msgid "Exit mediaplayer" +msgstr "Ortam Oynatıcı'dan Çık" + +msgid "Exit movie list" +msgstr "Film listesinden çık" + +msgid "Exit movie player?" +msgstr "Film oynatıcısından Çık?" + +msgid "Exit nameserver configuration" +msgstr "İsim sunucusu ayarlarından Çık" + +msgid "Exit network interface list" +msgstr "Ağ arabirimi listesinden Çık" + +msgid "Exit network wizard" +msgstr "Ağ sihirbazından çık" + +msgid "Exit the wizard" +msgstr "Sihirbazdan çık" + +msgid "Expert" +msgstr "Uzman" + +msgid "Extend sleeptimer 15 minutes" +msgstr "" + +msgid "Extended Software" +msgstr "Geliştirilmiş Yazılım" + +msgid "Extended Software Plugin" +msgstr "Geliştirilmiş Yazılım Eklentisi" + +msgid "Extended network setup plugin..." +msgstr "Gelişmiş ağ kurulum eklentisi ..." + +msgid "Extended setup..." +msgstr "Gelişmiş kurulum..." + +msgid "Extensions" +msgstr "İlaveler" + +msgid "Extensions management" +msgstr "İlaveler yöneticisi" + +msgid "External PiP" +msgstr "" + +msgid "External subtitle color" +msgstr "" + +msgid "Extra motor options" +msgstr "" + +msgid "FEC" +msgstr "FEC" + +msgid "FTA" +msgstr "FTA" + +msgid "Factory reset" +msgstr "Fabrika ayarlarına dön" + +msgid "Failed" +msgstr "Başarısız" + +msgid "Failed to write /tmp/positionersetup.log: " +msgstr "Yazma başarısız /tmp/positionersetup.log: " + +#, python-format +msgid "Fan %d" +msgstr "Fan %d" + +#, python-format +msgid "Fan %d PWM" +msgstr "Fan %d PWM" + +#, python-format +msgid "Fan %d voltage" +msgstr "Fan %d voltaj" + +msgid "Fan operation" +msgstr "" + +msgid "Fan speed" +msgstr "" + +msgid "Fast" +msgstr "Hızlı" + +msgid "Fast DiSEqC" +msgstr "Hızlı DiSEqC" + +msgid "Fast Scan" +msgstr "Hızlı Tarama" + +msgid "Fast epoch" +msgstr "Hızlı tur" + +msgid "Fast forward speeds" +msgstr "Hızlı ileri sarma hızı" + +msgid "Favourites" +msgstr "Favoriler" + +msgid "File appears to be busy.\n" +msgstr "Dosya meşgul gibi görünüyor.\n" + +msgid "Filesystem check" +msgstr "Dosya sistemi kontrolü" + +msgid "Final position at" +msgstr "Son pozisyonunda" + +msgid "Final position at index" +msgstr "Dizindeki son pozisyonda" + +msgid "Fine movement" +msgstr "Ince hareket" + +msgid "Finetune" +msgstr "İnce ayar" + +msgid "Finished" +msgstr "Tamamlandı" + +msgid "Finished configuring your network" +msgstr "Ağ yapılandırması tamamlandı." + +msgid "Finished restarting your network" +msgstr "Ağ yeniden başlatıldı" + +msgid "Finnish" +msgstr "Fince" + +msgid "Fixed" +msgstr "Sabit" + +msgid "Flash" +msgstr "Flaş" + +msgid "Flashing failed" +msgstr "Flaşa yazma başarısız" + +msgid "Following tasks will be done after you press OK!" +msgstr "Belirtilen görevler OK'a basmanızın ardından işleme alınacak!" + +msgid "Format" +msgstr "Biçimlendir" + +msgid "Forward volume keys" +msgstr "Ses tuşları İleri" + +msgid "Frame size in full view" +msgstr "Tam ekranda çerçeve boyutu" + +msgid "French" +msgstr "Fransızca" + +msgid "Frequency" +msgstr "Frekans" + +msgid "Frequency bands" +msgstr "Frekans bantları" + +msgid "Frequency scan step size(khz)" +msgstr "Frekans arama adımı (khz)" + +msgid "Frequency steps" +msgstr "Frekans adımları" + +msgid "Frequency:" +msgstr "" + +msgid "Fri" +msgstr "Cuma" + +msgid "Friday" +msgstr "Cuma" + +msgid "From :" +msgstr "Gönderen :" + +#, python-format +msgid "Frontprocessor version: %d" +msgstr "Önişlemci sürümü: %d" + +msgid "Full transparency" +msgstr "Tam saydamlık" + +msgid "Fulview resulution" +msgstr "" + +msgid "Function of OK button" +msgstr "OK tuşu fonksiyonu" + +msgid "Further Options" +msgstr "" + +msgid "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" +msgstr "" +"Yeni arayüzü etkinleştirmek için yeniden başlatma gerekiyor\n" +"Grafik arayüzünü (GUI) yeniden başlatmak istiyor musunuz?" + +msgid "Gateway" +msgstr "Ağ geçidi" + +msgid "General AC3 delay" +msgstr "Genel AC3 gecikmesi" + +msgid "General PCM delay" +msgstr "Genel PCM gecikmesi" + +msgid "Genre" +msgstr "Tür" + +msgid "German" +msgstr "Almanca" + +msgid "Get latest experimental image" +msgstr "Son experimental (deneme) IMAJ'ı al" + +msgid "Get latest release image" +msgstr "Son sürüm IMAJ'ı al" + +msgid "Getting plugin information. Please wait..." +msgstr "Eklenti bilgisi getiriliyor. Lütfen bekleyin..." + +msgid "Go down the list" +msgstr "Listede aşağı git" + +msgid "Go to first movie or last item" +msgstr "İlk film ya da son öğeye git" + +msgid "Go to first movie or top of list" +msgstr "İlk film ya da listenin en üstüne git" + +msgid "Go to first service" +msgstr "İlk servise git" + +msgid "Go to last service" +msgstr "Son servise git" + +msgid "Go to next event" +msgstr "Sonraki olaya git" + +msgid "Go to next page of service" +msgstr "Sonraki Servis sayfasına git" + +msgid "Go to previous event" +msgstr "Önceki olay" + +msgid "Go to previous page of service" +msgstr "Önceki Servis sayfasına git" + +msgid "Go up the list" +msgstr "Listenin başına git" + +msgid "Goto" +msgstr "Git" + +msgid "Goto 0" +msgstr "0 a git" + +msgid "Goto :" +msgstr "Git :" + +msgid "Goto X" +msgstr "X e git" + +msgid "Goto index position" +msgstr "Index pozisyonuna git" + +msgid "Goto next day of events" +msgstr "" + +msgid "Goto next page of events" +msgstr "Sonraki olay sayfası" + +msgid "Goto position" +msgstr "Pozisyona git" + +msgid "Goto previous day of events" +msgstr "" + +msgid "Goto previous page of events" +msgstr "Önceki olay sayfası" + +msgid "Goto specific date/time" +msgstr "" + +msgid "GotoX calibration" +msgstr "GotoX kalibrasyonu" + +msgid "GraphMultiEpg Settings" +msgstr "Grafik arayüzlü çoklu Epg Ayarları" + +msgid "Graphical Multi EPG" +msgstr "Grafik arayüzlü çoklu EPG'yi göster" + +msgid "Greek" +msgstr "Yunanca" + +msgid "Green boost" +msgstr "Yeşil doygunluğu" + +msgid "Guard interval" +msgstr "Koruma aralığı" + +msgid "HD list" +msgstr "HD listesi" + +msgid "HDMI-CEC setup" +msgstr "" + +msgid "Handle standby from TV" +msgstr "TV den bekleme konumuna" + +msgid "Handle wakeup from TV" +msgstr "TV den uyandırma" + +msgid "Hard disk" +msgstr "HDD" + +msgid "Hard disk setup" +msgstr "HDD Ayarı" + +msgid "Hard disk standby after" +msgstr "HDD bekleme modundan sonra" + +msgid "Harddisk" +msgstr "Sabitdisk" + +msgid "Hardware: " +msgstr "Donanım: " + +msgid "Hebrew" +msgstr "İbranice" + +msgid "Helps setting up your dish" +msgstr "" + +msgid "Hidden network" +msgstr "Gizlenmiş ağ" + +msgid "Hide CI messages" +msgstr "CI mesejlarını sakla" + +msgid "Hide channel list in radio mode" +msgstr "Radyo modunda kanal listesini gizle" + +msgid "Hide known extensions" +msgstr "" + +msgid "Hide number markers" +msgstr "" + +msgid "Hide player" +msgstr "Oynatıcı gizle" + +msgid "Hide zap errors" +msgstr "Kanal değiştirme hatalarını gizle" + +msgid "Hierarchy info" +msgstr "Hiyerarşi bilgisi" + +msgid "Hierarchy information" +msgstr "Hiyerarşi bilgisi" + +msgid "High bitrate support" +msgstr "Yüksek bit oranı desteği" + +msgid "Hold screen" +msgstr "Ekranı dondur" + +msgid "Hold till locked" +msgstr "Kilitlenene kadar bekle" + +msgid "Home" +msgstr "Ev" + +msgid "Horizontal" +msgstr "Yatay" + +msgid "Horizontal turning speed" +msgstr "Yatay tarama hızı" + +msgid "How many minutes do you want to record?" +msgstr "Kaç dakikalık kayıt başlatmak istiyorsunuz?" + +msgid "Hue" +msgstr "Renk tonu" + +msgid "Hungarian" +msgstr "Macarca" + +msgid "IP address" +msgstr "IP adresi" + +msgid "ISO file is too large for this filesystem!" +msgstr "ISO dosyası bu dosya sistemi için çok büyük!" + +msgid "ISO path" +msgstr "ISO yol adı" + +msgid "Icons" +msgstr "Simgeler" + +msgid "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." +msgstr "" +"Eğer bunu görüyorsanız, scart bağlantınızla\n" +"ilgili bazı hatalar var. Geri dönmek için OK tuşuna basın." + +msgid "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." +msgstr "" +"Eğer TV'nizde parlaklık ve kontrast geliştirme özelliğini kullanıyorsanız, devre dışı bırakın. TV ayarlarınızda \"dinamik\" ismiyle adlandırılan ayar aktifse, standart'a getirin. Zemin ışıklandırma (backlight) seviyesini ayarlayın.\n" +"Kontrast oranını olabildiğince düşürün. Parlaklık seviyesini mümkün olduğunca düşürün, en alttaki iki gri tonuda ayırt edebilecek şekilde ayarlarınızı yapın.\n" +"Parlak tonları şuan için dert etmeyin. Onları bir sonraki adımda ayarlayabilirsiniz.\n" +"Sonuçtan memnunsanız, OK tuşuna basın." + +msgid "Image: " +msgstr "Imaj: " + +msgid "Immediate shutdown" +msgstr "Hemen Kapat" + +msgid "In order to record a timer, the TV was switched to the recording service!\n" +msgstr "Zamanlanmış kayıt görevi başlatıldı, TV fonksiyonundan kayıt fonksiyonuna geçildi!\n" + +msgid "In progress" +msgstr "Devam ediyor" + +msgid "Inactivity Sleeptimer" +msgstr "" + +msgid "Include AIT in http streams" +msgstr "http akışlarında AIT dahil" + +msgid "Include ECM in http streams" +msgstr "Http akışlarında ECM dahil" + +msgid "Include EIT in http streams" +msgstr "Http akışlarında EIT dahil" + +msgid "Incorrect type service for PiP!" +msgstr "" + +msgid "Increased voltage" +msgstr "Arttırılmış voltaj" + +msgid "Index" +msgstr "Indeks" + +msgid "Index allocated:" +msgstr "Ayrılan Endeks:" + +msgid "Info" +msgstr "Bilgi" + +msgid "Info bar" +msgstr "Bilgi Çubuğu" + +msgid "Info bar timeout" +msgstr "Bilgi çubuğu zaman aşımı" + +msgid "Infobar frontend data source" +msgstr "" + +msgid "Information" +msgstr "Bilgi" + +msgid "Init" +msgstr "Başlat" + +msgid "Initial fast forward speed" +msgstr "İlk hızlı ileri sarma hızlı" + +msgid "Initial location in new timers" +msgstr "Yeni zamanlayıcı içinde ilk konum" + +msgid "Initial lock ratio" +msgstr "İlk kilitleme oranı" + +msgid "Initial rewind speed" +msgstr "İlk geri sarma hızı" + +msgid "Initial signal quality" +msgstr "İlk sinyal kalitesi" + +msgid "Initial signal quality:" +msgstr "İlk sinyal kalitesi:" + +msgid "Initialization" +msgstr "Başlatma" + +msgid "Initialize" +msgstr "Başlat" + +msgid "Initializing storage device..." +msgstr "Depolama aygıtı başlatılıyor..." + +msgid "Input" +msgstr "Giriş" + +msgid "Input device setup" +msgstr "Giriş aygıtı kurulumu" + +msgid "Input devices" +msgstr "Giriş aygıtları" + +msgid "Install" +msgstr "Yükle" + +msgid "Install a new image with a USB stick" +msgstr "Yeni IMAJ'ı USB bellekten yükle" + +msgid "Install a new image with your web browser" +msgstr "Yeni IMAJ'ı İnternet Tarayıcı ile yükle" + +msgid "Install channel list" +msgstr "Kanal listesi yükle" + +msgid "Install extensions" +msgstr "" + +msgid "Install extensions." +msgstr "Eklentileri yükle." + +msgid "Install local extension" +msgstr "Yerel (lokal)'den eklenti yükle" + +msgid "Install picons on" +msgstr "Pikon yükle" + +msgid "Install softcam" +msgstr "SoftCam yükle" + +msgid "Installation has completed." +msgstr "Kurulum tamamlandı." + +msgid "Installation or removal has completed." +msgstr "Yükleme veya Kaldırma tamamlandı" + +msgid "Installing" +msgstr "Kuruluyor" + +msgid "Installing software..." +msgstr "Yazılım yükleniyor.." + +msgid "Instant recording location" +msgstr "Hızlı kayıt yeri" + +msgid "Instant recording..." +msgstr "Hızlı kayıt..." + +msgid "Interface: " +msgstr "Arayüz: " + +msgid "Intermediate" +msgstr "Orta" + +msgid "Internal flash" +msgstr "Dahili hafıza" + +msgid "Internal hdd only" +msgstr "Yanlız dahili HDD" + +msgid "Interval between keys when repeating:" +msgstr "Interval between keys when repeating:" + +#, python-format +msgid "Invalid directory selected: %s" +msgstr "Seçilen klasör geçersiz: %s" + +msgid "Invalid location" +msgstr "Geçersiz konum" + +msgid "Invalid transponder data" +msgstr "" + +msgid "Inversion" +msgstr "Tersine çevir" + +msgid "Invert" +msgstr "Ters" + +msgid "Ipkg" +msgstr "Ipkg" + +msgid "Is this setting ok?" +msgstr "Bu ayar Tamam mı?" + +msgid "Is this video mode ok?" +msgstr "Bu video modu iyi mi?" + +msgid "Italian" +msgstr "İtalyanca" + +msgid "Items per page " +msgstr "Sayfa başına görüntüle" + +msgid "Items per page for list screen" +msgstr "Sayfa başına görüntüleme listesi ekranı" + +msgid "Job overview" +msgstr "İş özeti" + +msgid "Jump to beginning of list" +msgstr "Listenin başına atlar" + +msgid "Jump to end of list" +msgstr "Listenin sonuna atlar" + +msgid "Jump to next marked position" +msgstr "Sonraki işaretli pozisyona atla" + +msgid "Jump to previous marked position" +msgstr "Önceki işaretli pozisyona atla" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect) +msgid "Just scale" +msgstr "Sadece ölçek" + +msgid "Keep service" +msgstr "" + +msgid "Kernel version: " +msgstr "Çekirdek sürümü:" + +msgid "Keyboard" +msgstr "Klavye" + +msgid "Keyboard map" +msgstr "Klavye haritası" + +msgid "Keyboard setup" +msgstr "Klavye ayarı" + +msgid "LAN adapter" +msgstr "LAN adaptörü" + +msgid "LAN connection" +msgstr "LAN bağlantısı" + +msgid "LNB" +msgstr "LNB" + +msgid "Language" +msgstr "Dil" + +msgid "Language selection" +msgstr "Dil seçimi" + +msgid "Last config" +msgstr "Son ayar" + +msgid "Last speed" +msgstr "Son hız" + +msgid "Last upgrade: " +msgstr "Son güncelleme: " + +msgid "Latest Commits" +msgstr "" + +msgid "Latitude" +msgstr "Enlem" + +msgid "Latvian" +msgstr "Letonca" + +msgid "Leave DVD player?" +msgstr "DVD oynatıcıyı ayır?" + +msgid "Left" +msgstr "Sol" + +msgid "Left from servicename" +msgstr "" + +msgid "Leisure hobbies" +msgstr "Eğlence hobiler" + +#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term. +msgid "Letterbox" +msgstr "Sinemaskop" + +msgid "Letterbox zoom" +msgstr "" + +msgid "Limit character set for recording filenames" +msgstr "Kayıt dosya adları için karakter kümesi sınırı" + +msgid "Limit east" +msgstr "Doğu limiti" + +msgid "Limit the characters that can be used in recording filenames to (7 bit) ascii. This ensures compatibility with operating systems or file systems with limited character sets." +msgstr "Kayıt dosya adlarını (7 bit) ASCII karakterle sınırlayın. Bu sınırlı karakter setleri işletim sistemleri veya dosya sistemleri ile uyumu sağlamakta." + +msgid "Limit west" +msgstr "Batı limiti" + +msgid "Limits cancelled" +msgstr "Limit iptal edildi" + +msgid "Limits enabled" +msgstr "Limit etkin" + +msgid "Limits off" +msgstr "Limitler kapalı" + +msgid "Limits on" +msgstr "Limitler açık" + +msgid "Link quality:" +msgstr "Bağlantı kalitesi:" + +msgid "Link:" +msgstr "Bağlantı:" + +msgid "Linked titles with a DVD menu" +msgstr "DVD Menüsü ile bağlı başlıklar" + +msgid "List EPG functions..." +msgstr "EPG listesi fonksiyonları.." + +msgid "List available networks" +msgstr "Kullanılabilir ağ listesi" + +msgid "List mode" +msgstr "Liste modu" + +msgid "List of storage devices" +msgstr "Depolama aygıtları listesi" + +msgid "List type" +msgstr "Liste tipi" + +#, python-format +msgid "List version %d, found %d channel" +msgid_plural "List version %d, found %d channels" +msgstr[0] "" + +msgid "Listen to the radio..." +msgstr "Radyo dinleme..." + +msgid "Lists reloaded!" +msgstr "" + +msgid "Lithuanian" +msgstr "Litvanyaca" + +msgid "Load" +msgstr "Yükle" + +msgid "Load Length of Movies in Movielist" +msgstr "" + +msgid "Load length of movies in movie list" +msgstr "Film listesindeki film uzunluğu" + +msgid "Load playlist" +msgstr "Çalma listesi yükle" + +msgid "Local network" +msgstr "Yerel ağ" + +msgid "Location" +msgstr "Konum" + +msgid "Location for instant recordings" +msgstr "Anlık kayıt konumu" + +msgid "Lock ratio" +msgstr "Oranı kilitleyin" + +msgid "Lock:" +msgstr "Kilitli:" + +msgid "Log results to harddisk" +msgstr "Sonuçlara ilişkin sabitdiskte günlük tut" + +msgid "Long filenames" +msgstr "Uzun dosya adı" + +msgid "Long key press" +msgstr "Tuşa uzun basarak" + +msgid "Longitude" +msgstr "Boylam" + +msgid "Loop through to" +msgstr "" + +msgid "Luxembourgish" +msgstr "Lüksemburgca" + +msgid "MMC card" +msgstr "MMC kart" + +msgid "MORE" +msgstr "DAHA SONRA" + +msgid "Main menu" +msgstr "Ana menü" + +msgid "Maintain old EPG data for" +msgstr "Eski EPG verilerini şunun için koru" + +msgid "Make this mark an 'in' point" +msgstr "'içinde' noktası olarak işaretle" + +msgid "Make this mark an 'out' point" +msgstr "'dışında' noktası olarak işaretle" + +msgid "Make this mark just a mark" +msgstr "Bu işareti sadece bir işaret olarak kullan" + +msgid "Manage extensions" +msgstr "Eklentileri yönet" + +msgid "Manage your receiver's software" +msgstr "Uydu alıcınızın sistem yazılımımı yönetin" + +msgid "Manual" +msgstr "" + +msgid "Manual Scan" +msgstr "Elle Arama" + +msgid "Manual configuration" +msgstr "El ile yapılandırma" + +msgid "Manual scan" +msgstr "Elle Arama" + +msgid "Manual transponder" +msgstr "Transponder bilgilerini elle gir" + +msgid "Manufacturer" +msgstr "Üretici" + +msgid "Margin after recording (minutes)" +msgstr "Kayıttan sonra Marj (dakika)" + +msgid "Margin before recording (minutes)" +msgstr "Kayıttan önce Marj (dakika)" + +msgid "Max memory positions" +msgstr "" + +msgid "Max. bitrate: " +msgstr "Max. bit hızı:" + +msgid "Media player" +msgstr "Ortam oynatıcı" + +msgid "Media scanner" +msgstr "Ortam tarama" + +msgid "Medium is not a writeable DVD!" +msgstr "DVD medyası yazılabilir değil!" + +msgid "Medium is not empty!" +msgstr "DVD medyası boş değil!" + +msgid "Memory" +msgstr "Hafıza" + +msgid "Memory index" +msgstr "Hafıza indeksi" + +msgid "Menu" +msgstr "Menü" + +msgid "Message" +msgstr "Mesaj" + +msgid "Message..." +msgstr "Mesaj..." + +#, python-format +msgid "Minimum age %d years" +msgstr "Yaş sınırı %d yaşında" + +msgid "Minimum send interval" +msgstr "" + +msgid "Missing " +msgstr "Kayıp " + +msgctxt "Satellite configuration mode" +msgid "Mode" +msgstr "Kip" + +msgctxt "Video output mode" +msgid "Mode" +msgstr "Kip" + +msgid "Model: " +msgstr "Model: " + +msgid "Modulation" +msgstr "Modülasyon" + +msgid "Modulator" +msgstr "Modülatör" + +msgid "Mon" +msgstr "Ptesi" + +msgid "Mon-Fri" +msgstr "Pzt-Cum" + +msgid "Monday" +msgstr "Pazartesi" + +msgid "Mosquito noise reduction" +msgstr "Sivrisinek Parazit Azaltma" + +msgid "Mount" +msgstr "Bağla" + +msgid "Move" +msgstr "Taşı" + +msgid "Move PiP to main picture" +msgstr "Resim içinde resimi (RiR) ana ekrana taşı" + +msgid "Move Picture in Picture" +msgstr "Resim içinde resim (RiR)'i taşı" + +msgid "Move east" +msgstr "Doğuya taşı" + +msgid "Move to other directory" +msgstr "Diğer dizine taşı" + +msgid "Move to position X" +msgstr "'X' pozisyonuna taşı" + +msgid "Move west" +msgstr "Batıya taşı" + +msgid "Moved to position 0" +msgstr "'0' pozisyonuna taşı" + +msgid "Moved to position at index" +msgstr "Dizinindeki konuma taşınır" + +msgid "Movement" +msgstr "Hareket" + +msgid "Movie List Configuration" +msgstr "" + +msgid "Movie Selection" +msgstr "" + +msgid "Movie list configuration" +msgstr "Film Listesi yapılandırması" + +msgid "Movie location" +msgstr "Film konumu" + +msgid "Movie selection" +msgstr "Film Seçimi" + +msgid "Movie/Drama" +msgstr "Film/Dram" + +msgid "Movielist menu" +msgstr "Film Listesi Menüsü" + +msgid "Moving" +msgstr "Taşınıyor" + +msgid "Moving east ..." +msgstr "Doğuya hareket ..." + +msgid "Moving to position" +msgstr "Hareket pozisyonu" + +msgid "Moving west ..." +msgstr "Batıya hareket ..." + +msgid "Multi EPG" +msgstr "Çoklu EPG" + +msgid "Multi-EPG bouquet selection" +msgstr "Çoklu EPG buket seçimi" + +msgid "Multimedia" +msgstr "Çoklu ortam" + +msgid "Multiple service support" +msgstr "Çoklu kanal desteği" + +msgid "Multiplex" +msgstr "Çoklandırıcı" + +msgid "Multisat" +msgstr "Çoklu uydu" + +msgid "Multisat all select" +msgstr "" + +msgid "Music/Ballet/Dance" +msgstr "Müzik/Bale/Dans" + +msgid "Mute" +msgstr "Sesi Kapat" + +msgid "N/A" +msgstr "Kullanılamaz" + +msgid "NEXT" +msgstr "SONRA" + +msgid "NFI image flashing" +msgstr "NFI imaj yükleniyor" + +msgid "NFI image flashing completed. Press Yellow to Reboot!" +msgstr "NFI imaj yüklenmesi tamamlandı. Sarı tuşa basarak yeniden başlatın!" + +msgid "NIM" +msgstr "NIM" + +msgid "NOW" +msgstr "ŞİMDİ" + +msgid "NTSC" +msgstr "NTSC" + +msgid "Name" +msgstr "İsim" + +msgid "Nameserver" +msgstr "İsim sunucusu (DNS)" + +#, python-format +msgid "Nameserver %d" +msgstr "İsim sunucusu (DNS) %d" + +msgid "Nameserver settings" +msgstr "İsim sunucusu (DNS) ayarları" + +msgid "Nameserver setup" +msgstr "İsim sunucusu (DNS) kurulumu" + +msgid "Namespace" +msgstr "Alan adı" + +msgid "Netmask" +msgstr "Alt ağ maskesi" + +msgid "Network" +msgstr "Ağ" + +msgid "Network ID" +msgstr "Ağ Kimliği ID" + +msgid "Network configuration..." +msgstr "Ağ yapılandırması ..." + +msgid "Network mount" +msgstr "Ağ bağlantısı" + +#, python-format +msgid "Network mount %s" +msgstr "Ağ bağlantısı %s" + +msgid "Network name (SSID)" +msgstr "Ağ adı(SSID)" + +msgid "Network scan" +msgstr "Ağ arama" + +msgid "Network setup" +msgstr "Ağ kurulumu" + +msgid "Network test" +msgstr "Ağ yapılandırmasını test et" + +msgid "Network test..." +msgstr "Ağ testi..." + +msgid "Network test: " +msgstr "Ağ testi: " + +msgid "Network wizard" +msgstr "Ağ kurulum sihirbazı" + +msgid "Network:" +msgstr "Ağ:" + +msgid "New" +msgstr "Yeni" + +msgid "New PIN" +msgstr "Yeni Şifre" + +msgid "New version:" +msgstr "Yeni sürüm:" + +msgid "News Current Affairs" +msgstr "Haberler Güncel Olaylar" + +msgctxt "button label, 'next screen'" +msgid "Next" +msgstr "Sonraki" + +msgctxt "now/next: 'next' event label" +msgid "Next" +msgstr "Sonraki" + +msgid "No" +msgstr "Hayır" + +msgid "No (supported) DVDROM found!" +msgstr "Desteklenen DVDROM bulunamadı!" + +msgid "No Connection" +msgstr "Bağlantı yok" + +msgid "No HDD found or HDD not initialized!" +msgstr "HDD bulunamadı veya HDD ilişkilendirilemedi!" + +msgid "No backup needed" +msgstr "Yedekleme gerekmiyor" + +msgid "No cable tuner found!" +msgstr "Hiçbir kablo tuner bulunamadı!" + +msgid "" +"No data on transponder!\n" +"(Timeout reading PAT)" +msgstr "" +"Transponder'da yayın yok!\n" +"(PAT okunurken zaman aşımı oluştu)" + +msgid "No delay" +msgstr "Gecikmesiz" + +msgid "No description available." +msgstr "Açıklayıcı bilgi yok." + +msgid "No details for this image file" +msgstr "Bu bellenim dosyasının detay bilgisi yok" + +msgid "No displayable files on this medium found!" +msgstr "Bu medyada gösterilecek dosya bulunamadı!" + +msgid "No event info found, recording indefinitely." +msgstr "EPG bilgisi bulunamadı, süresiz kaydediliyor." + +msgid "No fast winding possible yet.. but you can use the number buttons to skip forward/backward!" +msgstr "İleri/geri hızlı sardırmayı kullanabilmek için rakam tuşlarını kullanınız." + +msgid "No free index available" +msgstr "Boş yer yok" + +msgid "No free tuner!" +msgstr "Boş tuner yok!" + +msgid "No network connection available." +msgstr "Uygun ağ bağlantısı yok." + +msgid "No networks found" +msgstr "Ağ bulunamadı" + +msgid "No new plugins found" +msgstr "" + +msgid "No positioner capable frontend found." +msgstr "Pozisyoner uyumlu uç ekipman bulunamadı." + +msgid "No satellites configured. Plese check your tuner setup." +msgstr "" + +msgid "No service" +msgstr "" + +msgid "No services/providers selected" +msgstr "Servis/Sağlayıcı seçilmedi" + +msgid "No standby" +msgstr "Beklemede değil" + +msgid "No suitable sat tuner found!" +msgstr "" + +msgid "No tags are set on these movies." +msgstr "Bu filmler için etiket tanımlanmamış" + +msgid "No timeout" +msgstr "Zamandışı" + +msgid "No to all" +msgstr "Tümüne hayır" + +msgid "No transparency" +msgstr "Şeffaflık yok" + +msgid "No tuner is configured for use with a diseqc positioner!" +msgstr "DiSEqC pozisyoner kullanımı için tuner ayarı yapılmamış!" + +msgid "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Tuner ayarları yapılmamış!\n" +"Lütfen kanal aramasına başlamadan önce tuner ayarlarınızı yapınız." + +msgid "No updates available" +msgstr "Güncelleme yok" + +msgid "No updates available. Please try again later." +msgstr "Güncelleme yok. Lütfen daha sonra tekrar deneyin." + +msgid "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" +msgstr "" +"Tanımlanmış kanal şifresi (PIN) bulunamadı!\n" +"Kanal şifresini (PIN) şimdi değiştirmek ister misiniz?\n" +"'Hayır' derseniz kanal koruması devredışı kalacaktır." + +msgid "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" +msgstr "" +"Tanımlanmış kurulum şifresi (PIN) bulunamadı!\n" +"Kurulum şifresini (PIN) şimdi değiştirmek ister misiniz?\n" +"'Hayır' derseniz kurulum koruması devredışı kalacaktır." + +msgid "No wireless networks found! Searching..." +msgstr "Kablosuz ağ bulunamadı! Aranıyor..." + +msgid "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." +msgstr "" +"Çalışan yerel ağ donanımı bulunamadı.\n" +"Lütfen ağ kablonuzun bağlı olduğundan ve ağ ayarlarınızın doğru yapılandırıldığından emin olun." + +msgid "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." +msgstr "" +"Çalışan kablosuz ağ donanımı bulunamadı.\n" +"Uyumlu WLAN USB donanımının takılı olduğundan emin olun ve ağ yapılandırmanızı doğru yaptığınızdan emin olun." + +msgid "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." +msgstr "" +"Çalışan kablosuz ağ arayüzü bulunamadı.\n" +" Uyumlu WLAN USB donanımının takılı olduğundan emin olun veya yerel ağ arayüzünü etkinleştirin." + +msgid "No, but restart from begin" +msgstr "Hayır, ama en başından başlat" + +msgid "No, do nothing." +msgstr "Hayır, birşey yapma" + +msgid "No, just start my receiver" +msgstr "Hayır, sadece benim alıcım başlasın" + +msgid "No, never" +msgstr "Hayır, hiçbir zaman" + +msgid "None" +msgstr "Yok" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right) +msgid "Nonlinear" +msgstr "Doğrusal olmayan" + +msgid "Normal mode" +msgstr "Normal mod" + +msgid "North" +msgstr "Kuzey" + +msgid "Norwegian" +msgstr "Norveççe" + +msgid "Not associated" +msgstr "İlişkili değil" + +msgid "Not configured" +msgstr "" + +#, python-format +msgid "Not enough disk space. Please free up some disk space and try again. (%d MB required, %d MB available)" +msgstr "Yetersiz disk alanı. Disk alanı boşaltarak tekrar deneyin. (%d MB gerekli, kullanılabilir %d MB)" + +msgid "Nothing connected" +msgstr "" + +msgid "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Kanal araması yapılmadı!\n" +"Lütfen kanal araması yapmadan önce tuner kurulumunuzu tamamlayın." + +msgctxt "now/next: 'now' event label" +msgid "Now" +msgstr "Şimdi" + +msgid "Now playing" +msgstr "Şimdi çalan" + +msgid "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." +msgstr "Şimdi, kontrast ayarlarını kullanarak arkazemin üzerinde, ekrandaki iki parlaklık tonunu ayırt edebilecek şekilde ve mümkün olduğunca parlaklık seviyesini arttırın. İşlemi tamamladıktan sonra OK tuşuna basın." + +msgid "OK" +msgstr "Tamam" + +msgid "OK, guide me through the upgrade process" +msgstr "Tamam, güncelleme işleminde bana rehberlik yap." + +msgid "ONID" +msgstr "ONID" + +msgid "OSD name request" +msgstr "OSD adı isteği" + +msgid "OSD settings" +msgstr "OSD ayarları" + +msgid "OSD transparency" +msgstr "OSD şeffaflığı" + +msgid "Off" +msgstr "Kapalı" + +msgid "Offline decode delay (ms)" +msgstr "Çevrimdışı kod çözme gecikmesi (ms)" + +msgid "Ok" +msgstr "Tamam" + +msgid "On" +msgstr "Açık" + +msgid "On end of movie" +msgstr "Filmin sonu" + +msgid "On end of movie (as menu)" +msgstr "" + +msgid "One" +msgstr "Bir" + +msgid "Only extensions." +msgstr "Yalnızca eklentiler" + +msgid "Only free scan" +msgstr "Yanlızca şifresiz arama" + +msgid "Open service list" +msgstr "Kanal listesini aç" + +msgid "Open the movie list" +msgstr "Film listesinden aç" + +msgid "Orbital position" +msgstr "Yörüngesel pozisyon" + +msgid "Original" +msgstr "Orjinal" + +msgid "Other" +msgstr "Diğer" + +msgid "Output" +msgstr "Çıkış" + +msgid "Overwrite configuration files during software upgrade?" +msgstr "Yazılım yükseltme sırasında konfigürasyon dosyaları üzerine yazılsın mı?" + +msgid "Overwrite configuration files?" +msgstr "Konfigürasyon dosyaları üzerine yaz?" + +msgid "PAL" +msgstr "PAL" + +msgid "PCR PID" +msgstr "PCR PID" + +msgid "PIDs" +msgstr "PIDs" + +msgid "PIN code needed" +msgstr "PIN kodu gerekli" + +msgid "PLP ID" +msgstr "" + +msgid "PMT PID" +msgstr "PMT PID" + +msgid "Package list update" +msgstr "Paket listesi güncelleniyor" + +msgid "Packet management" +msgstr "Paket yönetimi" + +msgid "Packet manager" +msgstr "Paket yönetimi" + +#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term +msgid "Pan&scan" +msgstr "Pan&scan" + +msgid "Parent directory" +msgstr "Üst Dizin" + +msgid "Parental control" +msgstr "Ebeveyn kontrolü" + +msgid "Parental control services editor" +msgstr "Ebeveyn kontrol servislerini düzenle" + +msgid "Parental control setup" +msgstr "Ebeveyn kontrolü kurulumu" + +msgid "Parental control type" +msgstr "Ebeveyn kontrolü tipi" + +msgid "Password" +msgstr "Parola" + +msgid "Pause" +msgstr "Duraklat" + +msgid "Pause movie at end" +msgstr "Bittiğinde filmi duraklat" + +msgid "Pause playback" +msgstr "Yürütmeyi duraklat" + +msgid "Pauze/Continue playback" +msgstr "" + +msgid "Percentage left" +msgstr "Sol oran" + +msgid "Percentage right" +msgstr "Sağ oran" + +msgid "Permanently delete all recordings in the trash can?" +msgstr "Çöp kutusundaki tüm kayıtları silecekmisin?" + +msgid "Permanently remove all deleted items" +msgstr "Kalıcı olarak silinmiş tüm öğeleri kaldır" + +msgid "Persian" +msgstr "Farsça" + +msgid "Phone number" +msgstr "Telefon numarası" + +msgid "PiP setup" +msgstr "RiR kurulumu" + +msgid "Picon" +msgstr "Pikon" + +msgid "Picon and service name" +msgstr "Pikon ve servis ismi" + +msgid "Picture player" +msgstr "Resim oynatıcı" + +#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term. +msgid "Pillarbox" +msgstr "Posta Kutusu" + +msgid "Pilot" +msgstr "Pilot" + +msgid "Play" +msgstr "Oynat" + +msgid "Play DVD" +msgstr "DVD Oynat" + +msgid "Play audio in background" +msgstr "Müziği arka planda çal" + +msgid "Play audio-CD..." +msgstr "Müzik-CD si çal..." + +msgid "Play back media files" +msgstr "Medya dosyalarını oynat" + +msgid "Play entry" +msgstr "Girişi Çal" + +msgid "Play from next mark or playlist entry" +msgstr "Sonraki işatten veya çalma listesi girişinden oynat" + +msgid "Play from previous mark or playlist entry" +msgstr "Önceki işatten veya çalma listesi girişinden oynat" + +msgid "Play music..." +msgstr "Müzik çal..." + +msgid "Play next" +msgstr "Sonrakini Oynat" + +msgid "Play next (return to movie list)" +msgstr "Sonrakini Oynat (film listesine dön)" + +msgid "Play next (return to previous service)" +msgstr "Sonrakini Oynat (önceki servise dön)" + +msgid "Play previous" +msgstr "Öncekini oynat" + +msgid "Play recorded movies..." +msgstr "Kayıtlı video dosyalarını göster..." + +msgid "Please add titles to the compilation." +msgstr "Derleme için başlık ekleyin." + +msgid "Please change recording endtime" +msgstr "Lütfen kayıt bitiş saatini değiştirin" + +msgid "Please check your network settings!" +msgstr "Lütfen ağ ayarlarını kontrol edin!" + +msgid "Please choose an extension..." +msgstr "Lütfen kullanmak istediğiniz eklentiyi seçin..." + +msgid "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Lütfen isim sunucu ayarlarınızı, gerekli alanları doldurarak yapılandırın veya mevcut bilgileri doğrulayın.\n" +"Devam etmek için hazır olduğunuzda, OK tuşuna basın." + +msgid "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Lütfen internet bağlantı ayarlarınızı, gerekli alanları doldurarak yapılandırın.\n" +"Devam etmek için hazır olduğunuzda, OK tuşuna basın." + +msgid "Please connect your receiver to the internet" +msgstr "Uydu alıcınızı internete bağlayın" + +msgid "Please do not change any values unless you know what you are doing!" +msgstr "Lütfen ne yaptığınızı bilmiyorsanız hiçbir değeri değiştirmeyin!" + +msgid "Please enter a name for the new bouquet" +msgstr "Yeni buket için isim girin" + +msgid "Please enter a name for the new marker" +msgstr "Yeni işaretleyici için isim girin" + +msgid "Please enter a new filename" +msgstr "Lütfen yeni dosya adını girin" + +msgid "Please enter filename (empty = use current date)" +msgstr "Lütfen dosya adı girin (boş = geçerli tarih)" + +msgid "Please enter name of the new directory" +msgstr "Lütfen klasör için bir isim girin" + +msgid "Please enter new name:" +msgstr "" + +msgid "Please enter the correct pin code" +msgstr "Lütfen doğru şifreyi girin" + +msgid "Please enter the old PIN code" +msgstr "Lütfen eşki şifreyi girin" + +msgid "Please follow the instructions on the TV" +msgstr "Lütfen Televizyonunuzdaki yönlendirmeleri takip edin." + +msgid "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." +msgstr "Seçtiğiniz medyaya erişilemedi, yerine varsayılan klasör kullanılıyor." + +msgid "Please press OK to continue." +msgstr "Devam etmek için lütfen OK'a basın" + +msgid "Please select a default EPG type..." +msgstr "Varsayılan bir EPG türü seçin ..." + +msgid "Please select a playlist to delete..." +msgstr "Seçili oynatma listesini sil..." + +msgid "Please select a playlist..." +msgstr "Lütfen bir oynatma listesi seçin..." + +msgid "Please select a sub service..." +msgstr "Bir alt servis seçin ..." + +msgid "Please select a subservice to record..." +msgstr "Lütfen kaydetmek istediğiniz alt servisi seçin..." + +msgid "Please select a subservice..." +msgstr "Lütfen bir alt servis seçin..." + +msgid "Please select an NFI file and press green key to flash!" +msgstr "Lütfen NFI dosyasını seçtikten sonra yüklemek için yeşil tuşa basın!" + +msgid "Please select medium to be scanned" +msgstr "Lütfen ortam seçin ve tarayın" + +msgid "Please select medium to use as backup location" +msgstr "Lütfen yedekleme konumu için medya seçin" + +msgid "Please select tag to filter..." +msgstr "Lütfen filtreleme için etiket seçin ..." + +msgid "Please select the movie path..." +msgstr "Filmlerin bulunduğu klasörü seçin..." + +msgid "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Lütfen internet bağlantınızı kullanmak için bir ağ arayüzü seçin.\n" +"\n" +"Devam etmek için OK tuşuna basın." + +msgid "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Bağlanmak istediğiniz kablosuz ağı seçin.\n" +"\n" +"Devam etmek için lütfen OK'a basın." + +msgid "Please set up tuner A" +msgstr "Lütfen tuner A yı ayarlayın" + +msgid "Please set up tuner B" +msgstr "Lütfen tuner B yi ayarlayın" + +msgid "Please set up tuner C" +msgstr "Lütfen tuner C yi ayarlayın" + +msgid "Please set up tuner D" +msgstr "Lütfen tuner d yi ayarlayın" + +msgid "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." +msgstr "" +"Lütfen yönlendirme tuşlarını kullanarak PiP ekranını taşıyın.\n" +"PiP penceresini boyutlandırmak için Buket +/- tuşlarını kullanın.\n" +"TV kipine dönmek için OK'a veya taşımayı iptal etmek için EXIT tuşuna basın." + +msgid "Please use the UP and DOWN keys to select your language. Afterwards press the OK button." +msgstr "Dil seçiminizi, yapmak için YUKARI ve AŞAĞI tuşlarını, onaylamak için OK tuşunu kullanın." + +msgid "Please wait" +msgstr "" + +msgid "Please wait (downloading channel list)" +msgstr "Lütfen bekleyin(kanal listesi indiriliyor)" + +msgid "Please wait (downloading softcam)" +msgstr "Lütfen bekleyin(SoftCam indiriliyor)" + +msgid "Please wait (updating packages)" +msgstr "Lütfen bekleyin(paket listesi güncelleniyor)" + +msgid "Please wait for activation of your network configuration..." +msgstr "Ağ yapılandırmanızın etkinleştirilmesi için lütfen bekleyin..." + +msgid "Please wait while scanning is in progress..." +msgstr "Lütfen arama yapılırken bekleyin..." + +msgid "Please wait while we configure your network..." +msgstr "Lütfen ağınız yapılandırılırken bekleyin..." + +msgid "Please wait while we prepare your network interfaces..." +msgstr "Lütfen biz ağ arayüzlerinizi hazırlarken bekleyin..." + +msgid "Please wait while we test your network..." +msgstr "Lütfen biz ağ yapılandırmanızı test ederken bekleyin..." + +msgid "Please wait while your network is restarting..." +msgstr "Ağ diski yeniden başlatılırken lütfen bekleyin..." + +msgid "Please wait..." +msgstr "Lütfen bekleyin..." + +msgid "Please wait... Loading list..." +msgstr "Lütfen bekleyin... Liste yükleniyor..." + +msgid "Plugin browser" +msgstr "Eklenti listesi" + +msgid "Plugin manager activity information" +msgstr "Eklenti yönetimi aktivite bilgisi" + +msgid "Plugin manager help" +msgstr "Eklenti yönetimi yardımı" + +msgid "Plugins" +msgstr "Eklentiler" + +msgid "Polarisation" +msgstr "Polarizasyon" + +msgid "Polarisation:" +msgstr "" + +msgid "Polarization" +msgstr "Polarizasyon" + +msgid "Polish" +msgstr "Lehçe" + +msgid "Port A" +msgstr "Port A" + +msgid "Port B" +msgstr "Port B" + +msgid "Port C" +msgstr "Port C" + +msgid "Port D" +msgstr "Port D" + +msgid "Portuguese" +msgstr "Portekizce" + +msgid "Position of completed timers in timerlist" +msgstr "Zamanlayıcı listesinde tamamlanan zamanlayıcı konumu" + +msgid "Position stored at index" +msgstr "Pozisyon dizininde depolanan" + +msgid "Positioner" +msgstr "Pozisyoner" + +msgid "Positioner (selecting satellites)" +msgstr "" + +msgid "Positioner Setup" +msgstr "" + +msgid "Positioner setup" +msgstr "Pozisyoner kurulumu" + +msgid "Power threshold in mA" +msgstr "Güç eşiği (mA)" + +msgid "Predefined transponder" +msgstr "Önceden tanımlanmış transponder" + +msgid "Prefer AC3 track" +msgstr " AC3 tercihen" + +msgid "Prefer AC3+ track" +msgstr "" + +msgid "Prefer audio track stored by service" +msgstr "Servis tarafından saklanan ses tercihi" + +msgid "Prefer graphical DVB subtitles" +msgstr "Tercih edilen grafiksel DVB altyazıları" + +msgid "Prefer subtitles for hearing impaired" +msgstr "İşitme engelliler için tercih edilen altyazılar" + +msgid "Prefer subtitles stored by service" +msgstr "Servis tanımlı altyazı tercihi" + +msgid "Preferred tuner" +msgstr "Seçili tuner" + +msgid "Preferred tuner for recordings" +msgstr "" + +msgid "Prepare another USB stick for image flashing" +msgstr "Imaj yüklemek için başka bir USB bellek hazırlayın" + +msgid "Preparing... Please wait" +msgstr "Hazırlanıyor... Lütfen bekleyin" + +msgid "Press '0' to toggle PiP mode" +msgstr "" + +msgid "Press INFO on your remote control for additional information." +msgstr "Ek bilgi için uzaktan kumanda üzerindeki INFO (EPG) tuşuna basın." + +msgid "Press MENU on your remote control for additional options." +msgstr "Ek seçenekler için uzaktan kumanda üzerindeki MENU düğmesine basın." + +msgid "Press OK on your remote control to continue." +msgstr "Devam etmek için kumandanızın OK tuşuna basın." + +msgid "Press OK to activate the selected skin." +msgstr "Arayüzü etkinleştirmek için OK'a basın." + +msgid "Press OK to activate the settings." +msgstr "Onaylamak için OK tuşuna basın." + +msgid "Press OK to edit the settings." +msgstr "Düzenlemek için OK tuşuna basın." + +#, python-format +msgid "Press OK to get further details for %s" +msgstr "%s detayları için OK tuşuna basın" + +msgid "Press OK to scan" +msgstr "Arama için OK'a basın" + +msgid "Press OK to select a provider." +msgstr "Bir sağlayıcı seçmek için OK tuşuna basın." + +msgid "Press OK to select satellites" +msgstr "" + +msgid "Press OK to select/deselect a CAId." +msgstr "CAId seçmek/bırakmak için OK'a basın." + +msgid "Press OK to start the scan" +msgstr "Aramayı başlatmak için OK'a basın" + +msgid "Press OK to toggle the selection" +msgstr "" + +msgid "Press OK to toggle the selection." +msgstr "Seçiminde geçiş yapmak için OK tuşuna basın." + +msgid "Press yellow to set this interface as default interface." +msgstr "Bu arayüzü varsayılan arayüz olarak atamak için sarı tuşa basın." + +msgctxt "button label, 'previous screen'" +msgid "Prev" +msgstr "Önceki" + +msgid "Preview" +msgstr "Önizleme" + +msgid "Preview menu" +msgstr "Önizleme menüsü" + +msgid "Preview selected channel" +msgstr "Seçili kanalı Izle" + +msgid "Primary DNS" +msgstr "Birincil DNS" + +msgid "Priority" +msgstr "Öncelik" + +msgid "Process" +msgstr "İşlemler" + +msgid "Progress" +msgstr "İlerleme" + +msgid "Progress bar left" +msgstr "Sol ilerleme çubuğu" + +msgid "Progress bar right" +msgstr "Sağ ilerleme çubuğu" + +msgid "Properties of current title" +msgstr "Mevcut başlığın özellikleri" + +msgid "Protect services" +msgstr "Kanallar korunsun mu?" + +msgid "Protect setup" +msgstr "Koruma ayarları" + +msgid "Provider" +msgstr "Yayıncı" + +msgid "Provider to scan" +msgstr "Yayıncıya göre ara" + +msgid "Providers" +msgstr "Yayıncılar" + +msgid "Put TV in standby" +msgstr "TV yi bekleme konumuna al" + +msgid "Put receiver in standby" +msgstr "Alıcıyı bekleme konumuna al" + +msgid "Python frontend for /tmp/mmi.socket" +msgstr "/tmp/mmi.socket için Python uç birimi" + +msgid "Quick" +msgstr "Hızlı" + +msgid "Quick zap" +msgstr "Hızlı kanal değiştirme" + +msgid "RF output" +msgstr "RF çıkışı" + +msgid "RGB" +msgstr "RGB" + +msgid "Radio" +msgstr "Raydo" + +msgid "Ram disk" +msgstr "Ram disk" + +msgid "Random" +msgstr "Rasgele" + +#, python-format +msgid "Rating defined by broadcaster - %d" +msgstr "Yayıncı tarafından tanımlanan Değerlendirme - %d" + +msgid "Rating undefined" +msgstr "Değerlendirme tanımlanmamış" + +msgid "Really close without saving settings?" +msgstr "Ayarlarınızı kaydetmeden çıkmak istediğinizden emin misiniz?" + +msgid "Really delete done timers?" +msgstr "Tamamlanan zamanlayıcıları silmek istiyor musunuz?" + +msgid "Really exit the subservices quickzap?" +msgstr "Alt servislerde hızlı kanal değiştirme iptal olsun mu?" + +msgid "Really reboot now?" +msgstr "Yeniden başlatmak istiyor musunuz?" + +msgid "Really restart now?" +msgstr "Yeniden başlatmak istiyor musunuz?" + +msgid "Really shutdown now?" +msgstr "STB'ı şimdi kapatmak istiyor musunuz?" + +msgid "Really upgrade the frontprocessor and reboot now?" +msgstr "Şimdi ön işlemci güncellensin ve cihaz yeniden başlatılsın mı?" + +msgid "Really upgrade your settop box and reboot now?" +msgstr "Uydu alıcınız güncellensin ve yeniden başlatılsın mı?" + +msgid "Reboot" +msgstr "Yeniden başlat" + +msgid "Rec" +msgstr "Kayıt" + +msgid "Reception settings" +msgstr "Resepsiyon ayarları" + +msgid "Record" +msgstr "Kayıt" + +#, python-format +msgid "Record time limited due to conflicting timer %s" +msgstr "%s zamanlayıcısı ile çakışmadan dolayı kayıt süresi sınırlandırılmış" + +msgid "Recorded files..." +msgstr "Kaydedilmiş dosyalar..." + +msgid "Recording" +msgstr "Kaydediliyor" + +msgid "Recording in progress" +msgstr "Kayıt devam ediyor" + +msgid "Recording paths" +msgstr "Kayıt yeri" + +msgid "Recording type" +msgstr "Kayıt tipi" + +msgid "Recording(s) are in progress or coming up in few seconds!" +msgstr "Kayıt işlemi devam ediyor veya birkaç saniye içinde başlayacak!" + +msgid "Recordings" +msgstr "Kayıt" + +msgid "Recordings always have priority" +msgstr "Kayıt işlemine öncelik ver" + +msgid "Red button..." +msgstr "Kırmızı tuş..." + +msgid "Reenter new PIN" +msgstr "Yeni PIN'i tekrar gir" + +msgid "Refresh rate" +msgstr "Tazeleme hızı" + +msgid "Refresh rate selection." +msgstr "Tazeleme hızı seçimi." + +msgid "Regard deep standby as standby" +msgstr "Derin bekleme modu, bekleme modu olsun" + +msgid "Relative" +msgstr "İlgili" + +msgid "Reload" +msgstr "Yeniden Yükle" + +msgid "Reload black-/white lists" +msgstr "Kara/Beyaz Listeyi yeniden yükle" + +msgid "Reloading bouquets and services..." +msgstr "Buketler ve kanallar yeniden yükleniyor..." + +msgid "Remember last service in PiP" +msgstr "" + +msgid "Remember service PIN" +msgstr "Kanal Şifresini hatırla" + +msgid "Remember these settings for each folder" +msgstr "Her klasör için bu ayarları hatırla" + +msgid "Reminder, you have chosen to save timeshift file." +msgstr "" + +msgid "Remote control type" +msgstr "Uzaktan kumanda tipi" + +msgid "Removal has completed." +msgstr "Kaldırma tamamladı." + +msgid "Remove" +msgstr "Sil" + +msgid "Remove a mark" +msgstr "İşaret Kaldır" + +msgid "Remove a nameserver entry" +msgstr "İsim sunucusu girişini sil" + +msgid "Remove bookmark" +msgstr "Kısayolu sil" + +msgid "Remove completed timers after (days)" +msgstr "Tamamlanmış zamanlayıcıları kaldırın (gün) sonra" + +msgid "Remove currently selected title" +msgstr "Seçilen geçerli başlığı sil" + +msgid "Remove items from trash can after (days)" +msgstr "Çöp Kutusu öğelerini (gün) sonra kaldır" + +msgid "Remove plugins" +msgstr "Eklentileri kaldır" + +msgid "Remove title" +msgstr "Başlığı sil" + +msgid "Removing" +msgstr "Kaldırılıyor" + +#, python-format +msgid "Removing directory %s failed. (Maybe not empty.)" +msgstr "%s klasörü silinemedi. (Klasör boş olmayabilir.)" + +msgid "Removing partition table" +msgstr "Bölümleme tablosu kaldırılıyor" + +msgid "Rename" +msgstr "Ad değiştir " + +msgid "Repeat" +msgstr "" + +msgid "Repeat type" +msgstr "Çeşidi yineleyin" + +msgid "Repeating event currently recording... What do you want to do?" +msgstr "Tekrarlama görevi verilmiş kayıt işlemi yapılıyor. Ne yapmak istersiniz?" + +msgid "Repeats" +msgstr "Tekrarlama" + +msgid "Require authentication for http streams" +msgstr "" + +msgid "Required medium type:" +msgstr "İhtiyaç duyulan medya tipi:" + +msgid "Rereading partition table" +msgstr "Bölümleme tablosu okunuyor" + +msgid "Reserved" +msgstr "Ayrılmış" + +msgid "Reset" +msgstr "Sıfırla" + +msgid "Reset and renumerate title names" +msgstr "Başlık ve adları sıfırla ve yeniden numarala" + +msgid "Reset playback position" +msgstr "Kayıttan yürütme pozisyonunu sıfırlayın" + +msgid "Reset video enhancement settings to system defaults?" +msgstr "Görüntü iyileştirme ayarınız, sistem varsayılanına döndürülsün mü?" + +msgid "Reset video enhancement settings to your last configuration?" +msgstr "Görüntü iyileştirme ayarlarınız, en son yapılandırmanıza döndürülsün mü?" + +msgid "Resolution" +msgstr "Çözünürlük" + +msgid "Restart" +msgstr "Yeniden Başlat" + +msgid "Restart GUI now?" +msgstr "GUI'yi yeniden başlatmak istiyor musunuz?" + +msgid "Restart enigma" +msgstr "Enigma'yı yeniden başlat" + +msgid "Restart network" +msgstr "Ağı yeniden başlat" + +msgid "Restart test" +msgstr "Test'i yenile" + +msgid "Restart your network connection and interfaces.\n" +msgstr "Ağ bağlantısını ve ağ arayüzlerini yeniden başlatın.\n" + +msgid "Restore" +msgstr "Geri Yükle" + +msgid "Restore backups" +msgstr "Yedekten geri yükle" + +msgid "Restore is running..." +msgstr "Geri yükleme çalışıyor..." + +msgid "Restore system settings" +msgstr "Sistem ayarlarını geri yükle" + +msgid "Restoring..." +msgstr "Geri yükleniyor ..." + +msgid "Resume from last position" +msgstr "Kaldığı yerden devam et" + +#, python-format +msgid "Resume position at %s" +msgstr "%s pozisyonundan devam et" + +#. TRANSLATORS: The string "Resuming playback" flashes for a moment +#. TRANSLATORS: at the start of a movie, when the user has selected +#. TRANSLATORS: "Resume from last position" as start behavior. +#. TRANSLATORS: The purpose is to notify the user that the movie starts +#. TRANSLATORS: in the middle somewhere and not from the beginning. +#. TRANSLATORS: (Some translators seem to have interpreted it as a +#. TRANSLATORS: question or a choice, but it is a statement.) +msgid "Resuming playback" +msgstr "Oynatmaya devam ediliyor" + +msgid "Return to movie list" +msgstr "Film listesine geri dön" + +msgid "Return to previous service" +msgstr "Önceki kanala dön" + +msgid "Reverse bouquet buttons" +msgstr "" + +msgid "Reverse list" +msgstr "" + +msgid "Rewind speeds" +msgstr "Geri sarma hızları" + +msgid "Rewrap teletext subtitles" +msgstr "Teletext altyazısını sar" + +msgid "Right" +msgstr "Sağ" + +msgid "Right from servicename" +msgstr "" + +msgid "Roll-off" +msgstr "Roll-off" + +msgid "Romanian" +msgstr "Romence" + +msgid "Root directory" +msgstr "Root dizini" + +msgid "Rotor step position:" +msgstr "Rotorun adım pozisyonu:" + +msgid "Rotor turning speed" +msgstr "Motor dönüş hızı" + +msgid "Round start time on" +msgstr "Zamanında dön" + +msgid "Russian" +msgstr "Rusça" + +msgid "S-Video" +msgstr "S-Video" + +msgid "SID" +msgstr "SID" + +msgid "SINGLE LAYER DVD" +msgstr "TEK KATMAN DVD" + +msgid "SNR" +msgstr "SNR" + +msgid "SNR:" +msgstr "SNR:" + +msgid "SSID:" +msgstr "SSID:" + +msgid "Same resolution as skin" +msgstr "" + +msgid "Sat" +msgstr "Ctesi" + +msgid "Satellite" +msgstr "Uydu" + +msgid "Satellite dish setup" +msgstr "Çanak anten kurulumu" + +msgid "Satellite equipment" +msgstr "Uydu ekipmanı" + +msgid "Satellite equipment setup" +msgstr "Uydu ekipmanının kurulumu" + +msgid "Satellite longitude:" +msgstr "Uydu Boylam:" + +msgid "Satellites" +msgstr "Uydular" + +msgid "Satfinder" +msgstr "Uydu Bulucu" + +msgid "Sats" +msgstr "Uydular" + +msgid "Saturation" +msgstr "Doygunluk" + +msgid "Saturday" +msgstr "Cumartesi" + +msgid "Save" +msgstr "Kaydet" + +msgid "Save playlist" +msgstr "Çalma listesini Kaydet" + +msgid "Save timeshift file" +msgstr "" + +msgid "Save timeshift file in movie directory" +msgstr "" + +msgid "Scaler sharpness" +msgstr "Netlik Ölçeği" + +msgid "Scaling mode" +msgstr "Ölçekleme modu" + +msgid "Scan" +msgstr "" + +msgid "Scan " +msgstr "Ara" + +#. TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' +#, python-format +msgid "Scan %s" +msgstr "%s Tara" + +#. TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' +#, python-format +msgid "Scan %s band" +msgstr "%s bant Tarama" + +msgid "Scan additional SR" +msgstr "Eklenen SR'leri ara" + +msgid "Scan files..." +msgstr "Dosyaları Tara..." + +msgid "Scan wireless networks" +msgstr "Kablosuz ağları Tara" + +msgid "Scan your network for wireless access points and connect to them using your selected wireless device.\n" +msgstr "Kablosuz erişim noktaları için ağ tara ve seçtiğiniz kablosuz cihaz kullanarak bunlara bağlan.\n" + +#, python-format +msgid "Scanning %s..." +msgstr "%s Taranıyor..." + +#. TRANSLATORS: The stb is performing a channel scan, progress percentage is printed in '%d' (and '%%' will show a single '%' symbol) +#, python-format +msgid "Scanning - %d%% completed" +msgid_plural "Scanning - %d%% completed" +msgstr[0] "" + +#, python-format +msgid "Scanning completed, %d channel found" +msgid_plural "Scanning completed, %d channels found" +msgstr[0] "" + +msgid "Scanning failed!" +msgstr "Tarama başarısız!" + +msgid "Scanning..." +msgstr "Taranıyor..." + +msgid "Scans default lamedbs sorted by satellite with a connected dish positioner" +msgstr "Bağlı pozisyoner üzerinden varsayılan lamedb dosyasıyla uydu sıralı arama yapar" + +msgid "Search east" +msgstr "Doğu'yu ara" + +msgid "Search west" +msgstr "Batı'yı ara" + +msgid "Searching" +msgstr "Aranıyor" + +msgid "Searching east ..." +msgstr "Doğu aranıyor ..." + +msgid "Searching for available updates. Please wait..." +msgstr "Güncellemeler kontrol ediliyor. Lütfen bekleyin..." + +msgid "Searching for new installed or removed packages. Please wait..." +msgstr "Yeni yüklenen veya kaldırılan paketler aranıyor. Lütfen bekleyin..." + +msgid "Searching west ..." +msgstr "Batı aranıyor ..." + +msgid "Second cable of motorized LNB" +msgstr "" + +msgid "Secondary DNS" +msgstr "İkincil DNS" + +msgid "Seek" +msgstr "Ara" + +msgid "Seek backward" +msgstr "Geride ara" + +msgid "Seek backward (enter time)" +msgstr "Geride ara (zaman girerek)" + +msgid "Seek forward" +msgstr "İleride ara" + +msgid "Seek forward (enter time)" +msgstr "İleride ara (zaman girerek)" + +msgid "Select" +msgstr "Seç" + +msgid "Select CAId" +msgstr "CAId Seç" + +msgid "Select HDD" +msgstr "HDD Seç" + +msgid "Select a bouquet" +msgstr "Bir Buket seçin" + +msgid "Select a movie" +msgstr "Bir film seçin" + +msgid "Select a network adapter" +msgstr "Bir ağ bağdaştırıcısı seçin" + +msgid "Select a skin" +msgstr "Bir Arayüz seçin" + +msgid "Select a tuner" +msgstr "Bir Tuner seçin" + +msgid "Select a wireless network" +msgstr "Bir Kablosuz Bağlantı seçin" + +msgid "Select action" +msgstr "" + +#, python-format +msgid "Select action for timer %s:" +msgstr "" + +msgid "Select all" +msgstr "" + +msgid "Select an image to be downloaded" +msgstr "İndirmek için IMAJ seçin" + +msgid "Select audio track" +msgstr "Kullanmak istediğiniz ses izini seçin" + +msgid "Select backup files" +msgstr "Yedekleme dosyalarını seçin" + +msgid "Select backup location" +msgstr "Yedekleme konumu seçin" + +msgid "Select channel to record from" +msgstr "Kaydın yapılacağı kanalı seçin" + +msgid "Select copy destination for:" +msgstr "Kopyalamak için hedef seçin:" + +msgid "Select default EPG type..." +msgstr "Varsayılan EPG türü seçin ..." + +msgid "Select desired image from feed list" +msgstr "Besleme listeden istediğiniz Imajı seçin" + +msgid "Select destination for:" +msgstr "Hedef seç. Bunun için:" + +msgid "Select files for backup." +msgstr "Yedekleme dosyalarını seçin." + +msgid "Select files/folders to backup" +msgstr "Yedeklenecek dosya/klasörleri seç" + +msgid "Select input device" +msgstr "Giriş aygıtı seç" + +msgid "Select input device." +msgstr "Giriş aygıtı seç." + +msgid "Select interface" +msgstr "Arayüz seçin" + +msgid "Select location" +msgstr "Yer seçin" + +msgid "Select movie" +msgstr "Film seç" + +msgid "Select provider to add..." +msgstr "Eklenecek yayıncıyı seçin..." + +msgid "Select refresh rate" +msgstr "Tazeleme hızı seçin" + +msgid "Select satellites" +msgstr "" + +msgid "Select service to add..." +msgstr "Eklenecek kanalı seçin..." + +msgid "Select sort method:" +msgstr "" + +msgid "Select target folder" +msgstr "Hedef klasörü seçin" + +msgid "Select the movie path" +msgstr "Film yolunu seçin" + +msgid "Select upgrade source" +msgstr "Güncelleme kaynağı seçin" + +msgid "Select upgrade source to edit." +msgstr "Düzenlemek istediğiniz güncelleme kaynağını seçin." + +msgid "Select video input with up/down buttons" +msgstr "Yukarı/aşağı tuşlarıyla Video girişini seçin" + +msgid "Select video mode" +msgstr "Görüntü kipini seç" + +msgid "Select wireless network" +msgstr "Kablosuz ağ seç" + +msgid "Select your provider, and press OK to start the scan" +msgstr "Sağlayıcı seçin ve taramayı başlatmak için OK tuşuna basın" + +msgid "Selecting satellites 1 (USALS)" +msgstr "" + +msgid "Selecting satellites 2 (USALS)" +msgstr "" + +msgid "Send DiSEqC only on satellite change" +msgstr "Yalnızca uydu değiştiğinde DiSEqC gönder" + +msgid "Separate titles with a main menu" +msgstr "Ana menü ile başlıkları ayır" + +msgid "Sequence repeat" +msgstr "Sıralama tekrarı" + +msgid "Serbian" +msgstr "Sırpça" + +msgid "Service" +msgstr "Kanal" + +msgid "Service has been added to the favourites." +msgstr "Kanal favorilere eklendi." + +msgid "Service has been added to the selected bouquet." +msgstr "Kanal seçilen bukete eklendi." + +msgid "Service info" +msgstr "Kanal bilgisi" + +msgid "" +"Service invalid!\n" +"(Timeout reading PMT)" +msgstr "" +"Kanal geçersiz!\n" +"(PMT okumasında zaman aşımı oluştu)" + +msgid "Service name" +msgstr "Kanal adı" + +msgid "" +"Service not found!\n" +"(SID not found in PAT)" +msgstr "" +"Kanal bulunamadı!\n" +"(SID, PAT içerisinde bulunamadı)" + +msgid "Service reference" +msgstr "Kanal referansı" + +msgid "Service scan" +msgstr "Kanal arama" + +msgid "Service searching" +msgstr "Kanal aranıyor" + +msgid "Service title mode" +msgstr "Kanal başlığı modu" + +msgid "" +"Service unavailable!\n" +"Check tuner configuration!" +msgstr "" +"Kanal kullanılamaz!\n" +"Tuner ayarlarınızı kontrol edin!" + +msgid "Services" +msgstr "Kanallar" + +msgid "Set default" +msgstr "" + +msgid "Set end time" +msgstr "Bitiş zamanını ayarla" + +msgid "Set fixed" +msgstr "Sabitle" + +msgid "Set fps for external subtitles" +msgstr "" + +msgid "Set interface as default Interface" +msgstr "Arayüzü varsayılan arayüz olarak ata" + +msgid "Set limits" +msgstr "Limitleri belirle" + +msgid "Set the type of the progress indication in the channel selection screen." +msgstr "Kanal seçimi ekranında ilerleme göstergesi türünü ayarlayın." + +msgid "Set time window to 1 hour" +msgstr "Zaman penceresini 1 saat olarak ayarlayın" + +msgid "Set time window to 2 hours" +msgstr "Zaman penceresini 2 saat olarak ayarlayın" + +msgid "Set time window to 3 hours" +msgstr "Zaman penceresini 3 saat olarak ayarlayın" + +msgid "Set time window to 4 hours" +msgstr "Zaman penceresini 4 saat olarak ayarlayın" + +msgid "Set time window to 5 hours" +msgstr "Zaman penceresini 5 saat olarak ayarlayın" + +msgid "Set time window to 6 hours" +msgstr "" + +msgid "Set voltage and 22KHz" +msgstr "Voltaj ayarı ve 22KHz" + +msgid "Settings" +msgstr "Ayarlar" + +msgid "Setup" +msgstr "Kurulum" + +msgid "Setup menu" +msgstr "Kurulum Menüsü" + +msgid "Setup mode" +msgstr "Kurulum Modu" + +msgid "Setup your positioner" +msgstr "Pozisyoner kurulumu" + +msgid "Setup your satellite equipment" +msgstr "Uydu ekipmanları kurulumu" + +#, python-format +msgid "Shall the USB stick wizard proceed and program the image file %s into flash memory?" +msgstr "USB bellek sihirbazı devam etsin ve %s imaj flaşlansın mı?" + +msgid "Sharpness" +msgstr "Keskinlik" + +msgid "Short filenames" +msgstr "Kısa dosya adları" + +msgid "Show EIT now/next in infobar" +msgstr "Şimdi/Sonraki bilgi çubuğunda EIT'yi göster." + +msgid "Show EPG for current channel..." +msgstr "Mevcut kanal için EPG göster..." + +msgid "Show EPG..." +msgstr "EPG Göster..." + +msgid "Show Games show" +msgstr "Gösteri Oyunlarını göster" + +msgid "Show SNR percentage instead of dB value" +msgstr "SNR yüzdesi yerine dB değeri göster" + +msgid "Show VCR scart on main menu" +msgstr "" + +msgid "Show WLAN status" +msgstr "WLAN durumunu göster" + +msgid "Show animation while busy" +msgstr "Meşgulken Animasyon Göster" + +msgid "Show background in radio mode" +msgstr "Radyo modunda arka planı gösterir" + +msgid "Show bouquet selection menu" +msgstr "Buket seçim menüsü gösterir." + +msgid "Show busy indicator when the system is busy." +msgstr "Sistem meşgul olduğunda meşgul göstergesi göster." + +msgid "Show channel numbers in channel selection" +msgstr "Kanal seçiminde kanal numaralarını göster." + +msgid "Show columns" +msgstr "" + +msgid "Show crypto icons" +msgstr "" + +msgid "Show crypto info in infobar" +msgstr "Bilgi çubuğunda şifreleme bilgisi göster." + +msgid "Show detailed event info" +msgstr "Ayrıntılı olay bilgisi göster" + +msgid "Show event details" +msgstr "Olay ayrıntılarını göster" + +msgid "Show event-progress in channel selection" +msgstr "Kanal seçim ekranında EPG sürelerini göster" + +msgid "Show extended description" +msgstr "Geniş açıklama göster" + +msgid "Show extensions..." +msgstr "Eklentileri göster..." + +msgid "Show icon for new/unseen items" +msgstr "Yeni/Görünmeyen öğeler için simge göster" + +msgid "Show in extensions menu" +msgstr "" + +msgid "Show info" +msgstr "Bilgisi göster" + +msgid "Show info line" +msgstr "Bilgi satırı göster" + +msgid "Show infobar on channel change" +msgstr "Kanal değiştirildiğinde bilgi çubuğunu göster" + +msgid "Show infobar on event change" +msgstr "EPG değişikliklerinde bilgi çubuğunu göster" + +msgid "Show infobar on skip forward/backward" +msgstr "İleri/geri sardırmada bilgi çubuğunu göster" + +msgid "Show latest commits on sourceforge" +msgstr "" + +msgid "Show message when recording starts" +msgstr "Kayıt başladığında mesajı göster" + +msgid "Show movie lengths in movielist" +msgstr "Film listesinde film uzunluğunu göster" + +msgid "Show multi channel EPG" +msgstr "" + +msgid "Show picons in channel list" +msgstr "" + +msgid "Show positioner movement" +msgstr "Pozisyoner haraketini göster" + +msgid "Show screensaver" +msgstr "" + +msgid "Show second infobar" +msgstr "İkinci bilgi çubuğunu göster" + +msgid "Show service type icons" +msgstr "" + +msgid "Show services beginning with" +msgstr "Ile başlayan kanalları göster." + +msgid "Show shutdown menu" +msgstr "Kapatma menüsünü göster" + +msgid "Show single service EPG" +msgstr "" + +msgid "Show status icons in Movielist" +msgstr "" + +msgid "Show status icons in movie list" +msgstr "Film listesinde durum simgeleri göster" + +msgid "Show status icons in movielist" +msgstr "Film listesinde durumu simgesi göster" + +msgid "Show tag menu" +msgstr "Etiket menüsünü göster" + +msgid "Show the radio player..." +msgstr "Radyo kanal listesini göster..." + +msgid "Show the tv player..." +msgstr "TV kanal listesini göster..." + +msgid "Show warning when timeshift is stopped" +msgstr "" + +msgid "Shows the state of your wireless LAN connection.\n" +msgstr "Kablosuz ağ bağlantısı durumunu gösterir.\n" + +msgid "Shuffle playlist" +msgstr "Karışık çalma listesi" + +msgid "Shutdown" +msgstr "Kapat" + +msgid "Shutdown when in Standby" +msgstr "" + +msgid "Side by side" +msgstr "Yan yana" + +msgid "Signal OK, proceeding" +msgstr "Sinyal Tamam, sürekli" + +msgid "Signal quality" +msgstr "Sinyal kalitesi" + +msgid "Signal strength:" +msgstr "Sinyal gücü:" + +msgid "Signal: " +msgstr "Sinyal:" + +msgid "Similar" +msgstr "Benzer" + +msgid "Similar broadcasts:" +msgstr "Benzer yayınlar:" + +msgid "Simple" +msgstr "Basit" + +msgid "Simple titleset (compatibility for legacy players)" +msgstr "Basit başlıkseti (klasik oynatıcılarla uyumlu)" + +msgid "Single" +msgstr "Tek" + +msgid "Single EPG" +msgstr "Tekli EPG" + +msgid "Single satellite" +msgstr "Tek uydu" + +msgid "Single step (GOP)" +msgstr "Tek adım (GOP)" + +msgid "Single transponder" +msgstr "Tek transponder" + +msgid "Site latitude" +msgstr "Sayfa enlemi" + +msgid "Site longitude" +msgstr "Sayfa boylamı" + +msgid "Skin" +msgstr "Arayüz" + +msgid "Skins" +msgstr "Görsel Arayüzler" + +msgid "Skip empty services" +msgstr "Boş kanalları atla" + +msgid "Skip internet connection check (disables automatic package installation)" +msgstr "İnternet bağlantısı kontrolünü atla. (Otomatik paket yükleme devre dışı kalır)" + +msgid "Sleep timer" +msgstr "Uyku zamanlayıcı" + +msgid "SleepTimer Configuration" +msgstr "" + +msgid "Sleeptimer" +msgstr "" + +msgid "Slide picture in loop" +msgstr "Döngüde resim slaytı" + +msgid "Slide show interval (sec.)" +msgstr "Slayt gösterisi aralığı (sn)" + +#, python-format +msgid "Slot %d" +msgstr "Yuva (slot) %d" + +msgid "Slovak" +msgstr "Slovakca" + +msgid "Slovenian" +msgstr "Slovence" + +msgid "Slow" +msgstr "Yavaş" + +msgid "Slow motion speeds" +msgstr "Ağır çekim hızları" + +msgid "Small progress" +msgstr "Küçük ilerlemeler" + +msgid "Social/Political/Economics" +msgstr "Sosyal/Politik/Ekonomi" + +msgid "SoftCam / CI" +msgstr "SoftCam / CI" + +msgid "Softcam type" +msgstr "SoftCam tipi" + +msgid "Software" +msgstr "Yazılım" + +msgid "Software management" +msgstr "Yazılım yönetimi" + +msgid "Software manager setup" +msgstr "Yazılım yöneticisi kurulumu" + +msgid "Software restore" +msgstr "Yazılım yedekle" + +msgid "Software update" +msgstr "Yazılım güncelle" + +msgid "Softwaremanager information" +msgstr "Yazılım Yöneticisi bilgileri" + +msgid "Some plugins are not available:\n" +msgstr "Bazı eklentiler kullanılabilir değil:\n" + +#, python-format +msgid "Sorry, %s has not been installed!" +msgstr "Üzgünüm, %s yüklü değil!" + +msgid "Sorry, deleting directories can (for now) only be done through the trash can." +msgstr "Üzgünüm, dizinleri silme (şimdilik) sadece çöp kutusu üzerinden yapılabilmektedir." + +msgid "Sorry, no backups found!" +msgstr "Ne yazık ki yedekleme bulunamadı!" + +msgid "Sorry, no details available!" +msgstr "Üzgünüm, ayrıntı yok!" + +msgid "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." +msgstr "" +"Maalesef yedekleme hedefine yazılamaz.\n" +"Lütfen başka birtane seçin." + +msgid "Sort" +msgstr "Sırala" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort A-Z" +msgstr "A-Z ye" + +msgid "Sort by" +msgstr "" + +msgid "Sort list:" +msgstr "" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort time" +msgstr "Sıralama zamanı" + +msgid "Sound" +msgstr "Ses" + +msgid "Sound carrier" +msgstr "Ses taşıyıcı" + +msgid "Source request" +msgstr "Kaynak talebi" + +msgid "South" +msgstr "Güney" + +msgid "Spanish" +msgstr "İspanyolca" + +msgid "Specify the end time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the end time until the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify the start time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the start time when the inactivity sleeptimer should be ignored" +msgstr "" + +msgid "Specify timeframe to ignore inactivity sleeptimer" +msgstr "" + +msgid "Specify timeframe to ignore the shutdown in standby" +msgstr "" + +msgid "Split preview mode" +msgstr "Önizleme penceresini böl" + +msgid "Splitscreen" +msgstr "" + +msgid "Sports" +msgstr "Spor" + +msgid "Standard" +msgstr "Standart" + +msgid "Standart list" +msgstr "" + +msgid "Standby" +msgstr "Hazırda beklet" + +msgid "Standby / restart" +msgstr "Yeniden Başlat / Bekleme modu" + +msgid "Standby after current event" +msgstr "" + +#, python-format +msgid "Standby fan %d PWM" +msgstr "Fan bekleme modu %d PWM" + +#, python-format +msgid "Standby fan %d voltage" +msgstr "Fan bekleme modu %d voltaj" + +msgid "Standby in " +msgstr "" + +msgid "StandbyLED" +msgstr "" + +msgid "Start from the beginning" +msgstr "En baştan başla" + +msgid "Start offline decode" +msgstr "Çevrimdışı kod çözmeyi başlat" + +msgid "Start recording?" +msgstr "Kayıt başlatılsın mı?" + +msgid "Start test" +msgstr "Test'i başlat" + +msgid "Start time" +msgstr "Başlangıç ​​saati" + +msgid "Start time to ignore inactivity sleeptimer" +msgstr "" + +msgid "Start time to ignore shutdown in standby" +msgstr "" + +msgid "Start timeshift" +msgstr "Zaman kaydırmayı Başlat" + +msgid "Start with list screen" +msgstr "Listesi ekranıyla başla" + +msgid "Starting on" +msgstr "Başlangıç" + +msgid "Startup the set top box in standby" +msgstr "" + +msgid "Startup to Standby" +msgstr "" + +msgid "Step east" +msgstr "Doğu adımı" + +msgid "Step west" +msgstr "Batı adımı" + +msgid "Stepped east" +msgstr "Kademeli doğu" + +msgid "Stepped west" +msgstr "Kademeli batı" + +msgid "Stop" +msgstr "Durdur" + +msgid "Stop PiP" +msgstr "Durdur RiR (Resim içinde Resim)." + +msgid "Stop current event and disable coming events" +msgstr "Geçerli programı durdur ve gelecek programları devre dışı bırak" + +msgid "Stop current event but not coming events" +msgstr "Geçerli eylemi durdur ama gelecek eylemlere dokunma" + +msgid "Stop entry" +msgstr "Durdur" + +msgid "Stop playing this movie?" +msgstr "Film durdurulsun mu?" + +msgid "Stop recording" +msgstr "Kaydı durdur" + +msgid "Stop recording and delete" +msgstr "Kaydı durdur ve sil" + +msgid "Stop service on return to movie list" +msgstr "" + +msgid "Stop test" +msgstr "Testi durdur" + +msgid "Stop testing plane after # failed transponders" +msgstr "Hatalı transponder sayısına ulaşıldığında bitir" + +msgid "Stop testing plane after # successful transponders" +msgstr "Başarılı transponder sayısına ulaşıldığında bitir" + +msgid "Stop timer recording" +msgstr "" + +msgid "Stop timeshift" +msgstr "Zaman kaydırmayı durdur" + +msgid "Stop timeshift?" +msgstr "Zaman kaydırma dursun mu?" + +msgid "Stopped" +msgstr "Durduruldu" + +msgid "Store at index" +msgstr "İndeksteki depo" + +msgid "Store position" +msgstr "Pozisyonu kaydet" + +msgid "Stored position" +msgstr "Kaydedilen pozisyonlar" + +msgid "Stream" +msgstr "Akış" + +msgid "Stream request" +msgstr "Akış isteği" + +msgid "Strongest position" +msgstr "Güçlü konumda" + +msgid "Subservice list..." +msgstr "Alt servis listesi" + +msgid "Subservices" +msgstr "Alt servisler" + +msgid "Subtitle Quickmenu" +msgstr "" + +msgid "Subtitle alignment" +msgstr "Altyazı hizalama" + +msgid "Subtitle border width" +msgstr "Altyazı kenar genişliği" + +msgid "Subtitle delay when timing is bad" +msgstr "" + +msgid "Subtitle delay when timing lacks" +msgstr "Zaman yoksa altyazı gecikmesi" + +msgid "Subtitle font size" +msgstr "Altyazı Yazı Tipi Boyutu" + +msgid "Subtitle language selection 1" +msgstr "Altyazı dil seçimi 1" + +msgid "Subtitle language selection 2" +msgstr "Altyazı dil seçimi 2" + +msgid "Subtitle language selection 3" +msgstr "Altyazı dil seçimi 3" + +msgid "Subtitle language selection 4" +msgstr "Altyazı dil seçimi 4" + +msgid "Subtitle position" +msgstr "Altyazı pozisyonu" + +msgid "Subtitle selection" +msgstr "Altyazı seçimi" + +msgid "Subtitle selection..." +msgstr "Altyazı seçimi ..." + +msgid "Subtitle settings" +msgstr "Altyazı ayarları" + +msgid "Subtitles" +msgstr "Altyazı" + +msgid "Sun" +msgstr "Pazar" + +msgid "Sunday" +msgstr "Pazar" + +msgid "Swap PiP and main picture" +msgstr "Ana penceredeki görüntüyü RiR içindekini değiştir." + +msgid "Swap services" +msgstr "Takas (swap) hizmetleri" + +msgid "Swedish" +msgstr "İsveççe" + +msgid "Switch TV to correct input" +msgstr "Doğru giriş için TV'de değiştir" + +msgid "Switch between filelist/playlist" +msgstr "" + +msgid "Switch between normal mode and list mode" +msgstr "Normal mod ve liste modu arasında geçiş yap" + +msgid "Switch to HDMI in mode" +msgstr "" + +msgid "Switch to filelist" +msgstr "Dosya listesine geç" + +msgid "Switch to next channel" +msgstr "" + +msgid "Switch to next channel in history" +msgstr "Geçmiş. Sonraki kanal" + +msgid "Switch to next sub service" +msgstr "Sonraki alt servise geç" + +msgid "Switch to playlist" +msgstr "Oynatma listesine geç" + +msgid "Switch to previous channel" +msgstr "Önceki kanala geç" + +msgid "Switch to previous channel in history" +msgstr "Geçmişteki önceki kanal" + +msgid "Switch to previous sub service" +msgstr "Önceki alt servise geç" + +msgid "Switchable tuner types:" +msgstr "Seçilebilir tuner tipleri:" + +msgid "Symbol rate" +msgstr "Sembol oranı" + +msgid "Symbol rate:" +msgstr "" + +msgid "Sync failure moving back to origin !" +msgstr "Senkronizasyon hatası geriye orjine hareket !" + +msgid "System" +msgstr "Sistem" + +#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) +msgid "TRANSLATOR_INFO" +msgstr "ÇEVİRMEN HAKKINDA" + +msgid "TS file is too large for ISO9660 level 1!" +msgstr "TS dosyası ISO9660 level 1 standartları için çok büyük!" + +msgid "TSID" +msgstr "TSID" + +msgid "TV physical address report" +msgstr "TV fiziksel adres raporu" + +msgid "TXT PID" +msgstr "TXT PID" + +msgid "Table of contents for collection" +msgstr "Toplananlar tablosunun içeriği" + +msgid "Tags" +msgstr "Etiketler" + +msgid "Teletext subtitle color" +msgstr "Teletext alt yazı rengi" + +msgid "Temperature and fan control" +msgstr "Sıcaklık ve fan kontrolü" + +msgid "Terrestrial" +msgstr "Karasal" + +msgid "Terrestrial provider" +msgstr "Karasal servis yayınlayıcı" + +msgid "Test DiSEqC settings" +msgstr "DiSEqC ayarlarınızı test edin" + +msgid "Test mode" +msgstr "Test kipi" + +msgid "Test the network configuration of your receiver.\n" +msgstr "Alıcınızın ağ yapılandırmasını test edin.\n" + +msgid "Test type" +msgstr "Test tipi" + +msgid "Text color" +msgstr "Yazı rengi" + +msgid "Thai" +msgstr "Tay Dili" + +msgid "" +"Thank you for using the wizard.\n" +"Please press OK to continue." +msgstr "" +"Sihirbazı kullandığınız için teşekkür ederiz.\n" +"Devam etmek için lütfen OK tuşuna basın." + +msgid "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." +msgstr "" +"Sihirbazı kullandığınız için teşekkür ederiz. Cihazınız artık kullanıma hazırdır..\n" +"Cıhazınızı kullanmaya başlamak için OK tuşuna basın." + +msgid "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?" +msgstr "DVD standardı H.264 (HDTV) video akışını desteklemiyor. Bunun yerine özel bir biçimde veri DVD (standar DVD oynatıcılarda oynatılamayabilir) oluşturmak istiyor musunuz?" + +msgid "The PIN code has been changed successfully." +msgstr "PIN kodu başarıyla değiştirildi." + +msgid "The PIN codes you entered are different." +msgstr "Girdiğiniz PIN kodları farklı." + +msgid "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" +msgstr "" +"USB çubuğu önyüklenebilir olması için hazırlanmıştır.\n" +"Şimdi bir NFI imaj dosyası indirebilirsiniz!" + +msgid "The backup failed. Please choose a different backup location." +msgstr "Yedek alınamadı. Lütfen başka bir yedekleme konumu seçin." + +#, python-format +msgid "" +"The current beta image might not be stable.\n" +"For more information see %s." +msgstr "" +"Mevcut beta imaj kararlı olmayabilir.\n" +"Daha fazla bilgi için %s bakın." + +#, python-format +msgid "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." +msgstr "" +"%s klasörüne yazma hakkı yok.\n" +"Seçtiğiniz klasörün yazılabilir olduğuna emin olunuz." + +#, python-format +msgid "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" +msgstr "" +"Aşağıdaki aygıt bulundu:\n" +"\n" +"%s\n" +"\n" +"USB flaşlayıcıyı bu USB belleğe yazmak istiyor musunuz?" + +msgid "The following files were found..." +msgstr "Aşağıdaki dosyalar bulundu..." + +msgid "The md5sum validation failed, the file may be corrupted!" +msgstr "md5sum doğrulaması başarısız oldu, Dosya bozuk olabilir!" + +msgid "" +"The network wizard extension is not installed!\n" +"Please install it." +msgstr "" +"Ağ sihirbazı eklentisi yüklü değil!\n" +"Lütfen yükleyin." + +#, python-format +msgid "The path %s already exists." +msgstr "%s yolu zaten var." + +msgid "The pin code you entered is wrong." +msgstr "Girdiğiniz şifre yanlış." + +#, python-format +msgid "The results have been written to %s." +msgstr "Test sonuçları %s dosyasına yazıldı." + +msgid "The sleep timer has been activated." +msgstr "Uyku zamanlayıcı etkinleştirildi." + +msgid "The sleep timer has been disabled." +msgstr "Uyku zamanlayıcı kapatıldı." + +msgid "" +"The software management extension is not installed!\n" +"Please install it." +msgstr "" +"Yazılım yönetimi eklentisi yüklü değil!\n" +"Lütfen yükleyin." + +#, python-format +msgid "The status of the current beta image could not be checked because %s can not be reached." +msgstr "%s erişilemiyor çünkü mevcut beta imaj durumu kontrol edilemedi." + +msgid "The timer file (timers.xml) is corrupt and could not be loaded." +msgstr "Zamanlayıcı dosyası (timers.xml) bozuk ve yüklenemiyor." + +msgid "The user interface of your receiver is restarting" +msgstr "Alıcınızın kullanıcı arayüzü yeniden başlatılıyor..." + +msgid "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" +msgstr "" +"mytest.py deki bir hata nedeniyle\n" +"Alıcınızın kullanıcı arayüzü yeniden başlatılıyor..." + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." +msgstr "" +"Kablosuz ağ (WLAN) eklentisi yüklenmemiş!\n" +"Lütfen yükleyin ve sonraki adımda seçiminizi yapın" + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it." +msgstr "" +"Kablosuz ağ (WLAN) eklentisi yüklenmemiş!\n" +"Lütfen yükleyin." + +msgid "The wizard can backup your current settings. Do you want to do a backup now?" +msgstr "Bu sihirbaz geçerli ayarlarınızın yedeğini alacaktır. Yedeği şimdi almak istiyor musunuz?" + +#, python-format +msgid "The wizard found a configuration backup. Do you want to restore your old settings from %s?" +msgstr "Sihirbaz bir yapılandırma yedeğini bulundu. Eski ayarları geri yüklemek istiyor musunuz. %s den.?" + +msgid "The wizard is finished now." +msgstr "Sihirbaz tamamlandı." + +msgid "There are at least " +msgstr "En az " + +#, python-format +msgid "There are at least %s updates available." +msgstr "Yeni %s güncellemeler bulundu." + +msgid "There are currently no outstanding actions." +msgstr "Seçilmiş bir görev yok." + +msgid "There are no updates available." +msgstr "Yeni güncelleme yok." + +msgid "There is no signal to lock on !" +msgstr "Kilitlenecek hiçbir sinyal yok!" + +msgid "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" +msgstr "" +"Seçtiğiniz disk bölümü (partition) yeterli boş alana sahip olmayabilir.\n" +"Devam etmek istiyor musunuz?" + +msgid "This DVD RW medium is already formatted - reformatting will erase all content on the disc." +msgstr "DVD-RW medyası zaten biçimlendirilmiş - yeniden biçimlendirme tüm disk içeriğini silecektir." + +msgid "" +"This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!" +msgstr "" +"Bu eklenti bir ağ veya WLAN bağlantısına gerek kalmadan alıcınızın yazılımını güncellemek için kullanılabilecek bir USB bellek oluşturur.\n" +"İlk olarak, bir USB bellek bootable olacak şekilde hazırlanmış olması gerek.\n" +"Bir sonraki adımda, bir NFI imaj dosyası güncelleme sunucusundan indirilebilir ve USB belleğe kaydedilir.\n" +"Önceden hazırlanmış bir önyüklenebilir USB bellek varsa, şimdi takın lütfen. USB çubuğun boyutu 64 MB dan az olmamalı!" + +msgid "This plugin is installed." +msgstr "Bu eklenti yüklü." + +msgid "This plugin is not installed." +msgstr "Bu eklenti yüklü değil." + +msgid "This plugin will be installed." +msgstr "Bu eklenti yüklenebilir." + +msgid "This plugin will be removed." +msgstr "Bu eklenti kaldırılabilir." + +#, python-format +msgid "This receiver cannot decode %s streams!" +msgstr "Bu alıcı %s akışları çözelemiyor!" + +msgid "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration" +msgstr "" +"Bu test yapılandırılmış isim sunucularını kontrol eder.\n" +"\"doğrulanmamış\" mesajı varsa:\n" +"- DHCP, kablolama ve adaptör kurulumu kontrol edin\n" +"- eğer sunucu isimlerini elle ayarladıysanız, yazdığınız \"isim sunucusu\" nu kontrol edin." + +msgid "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" +msgstr "" +"Bu test, ağ kablosunun bir LAN adaptörüne bağlı olup olmadığını kontrol eder.\n" +"\"bağlantı yok\" mesajı varsa:\n" +"- Bir ağ kablosunun takılı olduğundan emin olun.\n" +"- Kablonun kırık/kesik/kopuk olmadığını doğrulayın" + +msgid "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" +msgstr "" +"Bu test oluşturulan IP adresi ile LAN adaptörünü doğrular.\n" +"\"doğrulanmamış\" mesajı varsa:\n" +"- Geçerli bir IP adresi bulunamadı\n" +"- DHCP, kablolama ve adaptör kurulumu kontrol edin" + +msgid "" +"This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." +msgstr "" +"Bu test LAN adaptörü DHCP ile otomatik IP adresi yapılandırması için ayarlanmış olup olmadığını kontrol eder.\n" +"\"devre dışı\" mesajı varsa:\n" +"- LAN adaptörü manuel IP için ayarlanmış olabilir\n" +"- LAN adaptörü kurulum iletişim kutusunda doğru IP bilgileri girdiğinizden emin olun.\n" +"\"etkin\" mesajı varsa:\n" +"- ağınızda yapılandırılmış ve çalışan bir DHCP sunucu var." + +msgid "This test detects your configured LAN adapter." +msgstr "Bu test yapılandırılmış LAN bağdaştırıcısı tespit eder." + +msgid "" +"This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\n" +"Are you sure?" +msgstr "" +"Tüm rotor pozisyonları (yeniden)hesaplanacak ve daha önce hafızaya pozisyonlara ince ayar yapılacak!\n" +"Emin misiniz?" + +msgid "Three" +msgstr "Üç" + +msgid "Threshold" +msgstr "Eşik" + +msgid "Thu" +msgstr "Perş" + +msgid "Thumbnails" +msgstr "Küçük Resimler" + +msgid "Thursday" +msgstr "Perşembe" + +msgid "Time" +msgstr "Zaman" + +msgid "Time scale" +msgstr "Zaman cetveli" + +msgid "Timer" +msgstr "Zamanlayıcı" + +msgid "Timer Overview" +msgstr "" + +msgid "Timer edit" +msgstr "Zamanlayıcı ayarı" + +msgid "Timer editor" +msgstr "Zamanlayıcı düzenle" + +msgid "Timer entry" +msgstr "Zamanlayıcı girişi" + +msgid "Timer log" +msgstr "Zamanlayıcı günlüğü" + +msgid "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" +msgstr "" +"timers.xml zamanlayıcı çakışması saptanmıştır!\n" +"Bunu tekrar kontrol edin!" + +msgid "Timer overview" +msgstr "Zamanlayıcı çakışması" + +msgid "Timer recording location" +msgstr "Zamanlayıcı kayıt yeri" + +msgid "Timer sanity error" +msgstr "Zamanlayıcı hatası" + +msgid "Timer selection" +msgstr "Zamanlayıcı seçimi" + +msgid "Timer selection..." +msgstr "" + +msgid "Timer type" +msgstr "Zamanlayıcı tipi" + +msgid "Timeshift" +msgstr "Zaman kaydırıcı" + +msgid "Timeshift Live" +msgstr "" + +msgid "Timeshift location" +msgstr "Zaman kaydırıcı kayıt konumu" + +msgid "Timeshift not possible!" +msgstr "Zaman kaydırıcı kullanılamaz!" + +msgid "Timezone" +msgstr "Zaman dilimi" + +msgid "Title" +msgstr "Başlık" + +msgid "Title properties" +msgstr "Başlık özellikleri" + +msgid "Titleset mode" +msgstr "Başlıkseti kipi" + +msgid "To audio selection" +msgstr "Ses seçimi için" + +msgid "To subtitle selection" +msgstr "Altyazı seçimi için" + +msgid "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." +msgstr "" +"Alıcınızın yazılımını güncellemek için aşağıdaki adımları takip edin:\n" +"1) Cihazın arka güç düğmesinin kapalı ve önyüklenebilir bir USB belleğin takılı olduğundan emin olun\n" +"2) Arka güç düğmesini açın ve ön paneldeki DOWN tuşuna 10 sn. basın\n" +"3) Önyükleme sihirbazının başlamasını bekleyin." + +msgid "Today" +msgstr "Bugün" + +msgid "Toggle a cut mark at the current position" +msgstr "Mevcut konuma Kesme işareti koyun" + +msgid "Tone amplitude" +msgstr "Ses genliği" + +msgid "Tone mode" +msgstr "Ton modu" + +msgid "Toneburst" +msgstr "Toneburst" + +msgid "Toneburst A/B" +msgstr "Toneburst A/B" + +msgid "Top and bottom" +msgstr "Üst ve alt" + +msgid "Track" +msgstr "İz" + +msgid "Translation" +msgstr "Çeviri" + +msgid "Translation:" +msgstr "Çeviri:" + +msgid "Translations" +msgstr "" + +msgid "Transmission mode" +msgstr "İletim (transmisyon) modu" + +msgid "Transponder" +msgstr "Transponder" + +msgid "Transponder type" +msgstr "Transponder tipi" + +msgid "Trash can" +msgstr "Çöp kutusu" + +msgid "Tries left:" +msgstr "Sol denendi:" + +msgid "Try to find used transponders in cable network.. please wait..." +msgstr "Kullanılan transponderlar kablolu yayın ağında aranıyor.. lütfen bekleyin..." + +msgid "Trying to download a new packetlist. Please wait..." +msgstr "Paket listesi indiriliyor. Lütfen bekleyin..." + +msgid "Tue" +msgstr "Salı" + +msgid "Tuesday" +msgstr "Salı" + +msgid "Tune" +msgstr "Ayar" + +msgid "Tune and focus" +msgstr "Ayarlama ve odaklanma" + +msgid "Tune failed!" +msgstr "Kanal geçişi başarısız!" + +msgid "Tuner" +msgstr "Tuner" + +msgid "Tuner configuration" +msgstr "Tuner ayarları" + +msgid "Tuner is not supported" +msgstr "" + +msgid "Tuner slot" +msgstr "Tuner yuvası" + +msgid "Tuner status" +msgstr "Tuner durumu" + +#, python-format +msgid "Tuner status %s" +msgstr "Tuner durumu %s" + +msgid "Tuner type" +msgstr "Tuner tipi" + +msgid "Turkish" +msgstr "Türkçe" + +msgid "Turn on the power LED during standby." +msgstr "" + +msgid "Turning step size" +msgstr "" + +msgid "Two" +msgstr "İki" + +msgid "Type" +msgstr "Tip" + +msgid "Type of scan" +msgstr "Tarama tipi" + +msgid "USALS" +msgstr "DiSEqC 1.3 (USALS)" + +msgid "USALS calibration" +msgstr "DiSEqC 1.3 (USALS) kalibrasyonu" + +msgid "USB stick" +msgstr "USB bellek" + +msgid "USB stick wizard" +msgstr "USB bellek sihirbazı" + +msgid "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Gözetimsiz güncelleme devam ediyor.\n" +"Alıcınız yeniden başlatılana kadar bekleyin\n" +"Bu işlem birkaç dakika sürebilir" + +msgid "Undo install" +msgstr "Yüklemeyi geri al" + +msgid "Undo uninstall" +msgstr "Kaldırmayı geri al" + +msgid "Unencrypted" +msgstr "Şifresiz" + +msgid "UnhandledKey" +msgstr "Tanımsız Özel Şifre" + +msgid "Unicable" +msgstr "Unicable" + +msgid "Unicable LNB" +msgstr "Unicable LNB" + +msgid "Unicable Martix" +msgstr "Unicable Martix" + +msgid "Uninstall" +msgstr "Kaldır" + +msgid "Universal LNB" +msgstr "Universal LNB" + +msgid "Unknown" +msgstr "Bilinmeyen" + +msgid "Unmount" +msgstr "Bağı kaldır" + +msgid "Unsupported" +msgstr "Desteklenmiyor" + +msgid "Update" +msgstr "Güncelle" + +msgid "Update and ask to reboot" +msgstr "Güncelle ve yeniden başlatmak için sor" + +msgid "Update and reboot (recommended)" +msgstr "Güncelle ve yeniden başlat (önerilen)" + +msgid "Update channel list only" +msgstr "Sadece kanal listesini güncelle" + +#, python-format +msgid "Update completed, %d package was installed." +msgid_plural "Update completed, %d packages were installed." +msgstr[0] "Güncelleme tamamlandı, %d paket yüklendi." + +msgid "Update completed. Do you want to reboot your receiver?" +msgstr "Güncelleme tamamlandı. Alıcınızı yeniden başlatmak istiyor musunuz?" + +msgid "Update failed. Your receiver does not have a working internet connection." +msgstr "Güncelleme başarısız oldu. Alıcınızda bir İnternet bağlantısı yok." + +msgid "Update has completed." +msgstr "Güncelleme tamamladı." + +msgid "Updatefeed not available." +msgstr "Güncelleme sunucusu kullanılamıyor." + +msgid "Updating software catalog" +msgstr "Yazılım kataloğu güncelleniyor" + +msgid "Upgrading" +msgstr "Güncelleme" + +msgid "Use" +msgstr "Kullan" + +msgid "Use DHCP" +msgstr "DHCP Kullan" + +msgid "Use EIT EPG information when it is available." +msgstr "Uygun olduğunda EPG EIT bilgilerini kullan." + +msgid "Use FreeSat EPG information when it is available." +msgstr "Uygun olduğunda FreeSat EPG bilgilerini kullan." + +msgid "Use MHW EPG information when it is available." +msgstr "Uygun olduğunda MHW EPG bilgilerini kullan." + +msgid "Use Netmed EPG information when it is available." +msgstr "Uygun olduğunda Netmed EPG bilgilerini kullan." + +msgid "Use TV remote control" +msgstr "TV uzaktan kumandasını kullan" + +msgid "Use USALS for this sat" +msgstr "Bu Uydu için DiSEqC 1.3 (USALS) kullan" + +msgid "Use ViaSat EPG information when it is available." +msgstr "Uygun olduğunda ViaSat EPG bilgilerini kullan." + +msgid "Use Virgin EPG information when it is available." +msgstr "" + +msgid "Use a gateway" +msgstr "Ağ geçidi kullan" + +msgid "Use fastscan channel names" +msgstr "Hızlı Tarama kanal isimlerini kullanın" + +msgid "Use fastscan channel numbering" +msgstr "Hızlı Tarama kanal numaralarını kullanın" + +msgid "Use frequency or channel" +msgstr "" + +msgid "Use individual settings for each directory" +msgstr "" + +msgid "Use interface" +msgstr "Arayüz kullan" + +msgid "Use official channel numbering" +msgstr "Resmi kanal numaralamasını kullanın" + +msgid "Use original DVB subtitle position" +msgstr "Orijinal DVB altyazı konumunu kullan" + +msgid "Use original teletext position" +msgstr "Orijinal teletext konumunu kullan" + +msgid "Use power measurement" +msgstr "Güç kullanımını ölç" + +msgid "Use the network wizard to configure selected network adapter" +msgstr "Seçilen ağ bağdaştırıcısını yapılandırmak için ağ sihirbazını kullan" + +msgid "Use the network wizard to configure your network\n" +msgstr "Ağ yapılandırmak için ağ sihirbazını kullan\n" + +msgid "Use the up/down keys on your remote control to select an option. After that, press OK." +msgstr "Seçiminizi yapmak için kumandanızın yukarı/aşağı tuşlarını kullanın. Sonrasında OK tuşuna bas." + +msgid "Use the wizard to set up basic features" +msgstr "Temel kurulum özellikleri için sihirbazı kullan." + +msgid "Use these input device settings?" +msgstr "Bu giriş cihazının ayarlarını kullan?" + +msgid "Use these settings?" +msgstr "Bu ayarları kullan?" + +msgid "Use this video enhancement settings?" +msgstr "Düzenlediğiniz görüntü iyileştirme ayarları kullanılsın mı?" + +msgid "Use trash can in movielist" +msgstr "Film listesinde çöp kutusu kullanın." + +msgid "Used service scan type" +msgstr "Kullanılan kanal arama tipi" + +msgid "User - bouquets" +msgstr "Kullanıcı - Buketleri" + +msgid "User defined" +msgstr "Kullanıcı tanımlı" + +msgid "User defined transponder" +msgstr "" + +msgid "User interface" +msgstr "Kullanıcı arayüzü" + +msgid "Username" +msgstr "Kullanıcı adı" + +#, python-format +msgid "Using LNB %d" +msgstr "LNB %d kullanarak" + +msgid "Using fixed address" +msgstr "Sabit adres kullan" + +#, python-format +msgid "Using tuner %s" +msgstr "Tuner %s kullanarak" + +msgid "Usually when the subtitle language is the same as the audio language, the subtitles will not be used. Enable this option to allow these subtitles to be used." +msgstr "Genellikle altyazı dili ses diliyle aynı olduğu zaman, alt yazı kullanılmayacaktır. Altyazı kullanımı etkin olduğunda bu seçeneği etkinleştirin." + +msgid "VCR scart" +msgstr "VCR scart" + +msgid "VMGM (intro trailer)" +msgstr "VMGM (tanıtım filmi)" + +msgid "Vertical" +msgstr "Düşey (V)" + +msgid "Vertical turning speed" +msgstr "Dikey dönüş hızı" + +msgid "Video PID" +msgstr "Video PID" + +msgid "Video enhancement preview" +msgstr "Görüntü iyileştirme önizleme" + +msgid "Video enhancement settings" +msgstr "Görüntü iyileştirme ayarları" + +msgid "Video enhancement setup" +msgstr "Görüntü iyileştirme kurulumu" + +msgid "Video fine tuning" +msgstr "Görüntü ince ayarı" + +msgid "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." +msgstr "" +"Video girişi seçimi\n" +"\n" +"Eeğer TV'nizde bu sayfayı görünüyorsa lütfen OK tuşuna basın (veya farklı bir giriş noktasını seçin).\n" +"\n" +"Bir sonraki girişi bağlantı noktasına otomatik olarak 20 saniye içinde geçilecektir." + +msgid "Video mode selection." +msgstr "Görüntü kipi seçimi." + +msgid "Video output" +msgstr "Video çıkışı" + +msgid "Video setup" +msgstr "Video ayarları" + +msgid "Video wizard" +msgstr "Görüntü sihirbazı" + +#, python-format +msgid "Video: %s fps" +msgstr "" + +msgid "VideoMode" +msgstr "" + +msgid "Videocodec" +msgstr "Video Çözücü (Codec)" + +msgid "Videoformat" +msgstr "Video formatı" + +msgid "Videosize" +msgstr "Video Boyutu" + +msgid "View Rass interactive..." +msgstr "Etkileşimli RASS'ı göster" + +msgid "View details" +msgstr "Detayları incele" + +msgid "View list of available " +msgstr "Kullanılabilir " + +msgid "View list of available CommonInterface extensions" +msgstr "Ortak arayüz eklentileri" + +msgid "View list of available EPG extensions." +msgstr "EPG eklentileri listesini görüntüle" + +msgid "View list of available Satellite equipment extensions." +msgstr "Uydu ekipman eklentilerini listele" + +msgid "View list of available communication extensions." +msgstr "İletişim eklentilerini listele" + +msgid "View list of available default settings" +msgstr "Varsayılan ayarları listele" + +msgid "View list of available display and userinterface extensions." +msgstr "Ekran ve kullanıcı arayüzü eklentilerini listele." + +msgid "View list of available multimedia extensions." +msgstr "Çoklu ortam eklentilerini listele" + +msgid "View list of available networking extensions" +msgstr "Ağ eklentilerini listele" + +msgid "View list of available recording extensions" +msgstr "Kayıt eklentilerini listele" + +msgid "View list of available skins" +msgstr "Arayüz eklentilerini listele" + +msgid "View list of available software extensions" +msgstr "Yazılım eklentilerini listele" + +msgid "View list of available system extensions" +msgstr "Sistem eklentilerini listele" + +msgid "View photos..." +msgstr "Fotoğrafları göster ..." + +msgid "View teletext..." +msgstr "Teletekst bilgileri ..." + +msgid "View video CD..." +msgstr "Video CD bilgileri ..." + +msgid "Virtual keyboard" +msgstr "Sanal klavye" + +msgid "Voltage mode" +msgstr "Voltaj kipi" + +msgid "Volume" +msgstr "Ses" + +msgid "W" +msgstr "W" + +msgid "WEP" +msgstr "WEP" + +msgid "WLAN connection" +msgstr "WLAN bağlantısı" + +msgid "WPA" +msgstr "WPA" + +msgid "WPA or WPA2" +msgstr "WPA veya WPA2" + +msgid "WPA2" +msgstr "WPA2" + +msgid "WSS on 4:3" +msgstr "WSS 4:3" + +msgid "Waiting" +msgstr "Bekleniyor" + +msgid "Waiting for mount" +msgstr "Bağlama bekleniyor" + +msgid "Waiting for partition" +msgstr "Bölümleme bekleniyor" + +msgid "Wakeup" +msgstr "Wake Up" + +msgid "Wakeup TV from standby" +msgstr "TV'nin bekleme modundan açılması bekleniyor" + +msgid "Wakeup receiver for start timer" +msgstr "" + +msgid "Wakeup receiver from standby" +msgstr "Alıcının bekleme modundan açılması bekleniyor." + +msgid "Wakeup signal from TV" +msgstr "TV'den Uyandırma sinyali" + +msgid "Wakeup type" +msgstr "" + +msgid "Warning: no LNB; using factory defaults." +msgstr "Uyarı: Fabrika ayarlarını kullanan LNB yok" + +msgid "Watch movies..." +msgstr "Film izleyin ..." + +msgid "Watch recordings..." +msgstr "Kayıtları izleyin ..." + +msgid "Wed" +msgstr "Çarş" + +msgid "Wednesday" +msgstr "Çarşamba" + +msgid "Weekday" +msgstr "Haftaiçi" + +msgid "Weighted position" +msgstr "Ağırlıklı pozisyon" + +msgid "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." +msgstr "" +"Kesime listesi düzenleyicisine hoş geldiniz.\n" +"\n" +"Gördüğünüz yerden başlayabilirsiniz. OK tuşuna basın ve seçin 'kesme başlangıçı'\n" +"\n" +"Daha sonra kesmek istediğiniz yedere kadak bekleyin ve OK basın 'kesme sonu'. Bu kadar basit." + +msgid "Welcome to the image upgrade wizard. The wizard will assist you in upgrading the firmware of your receiver by providing a backup facility for your current settings and a short explanation of how to upgrade your firmware." +msgstr "Yazılım yükseltme sihirbazına hoş geldiniz. Sihirbaz, geçerli ayarlarınız için yedekleme olanağı sağlayarak alıcınızın yazılımını yükseltmede size yardımcı olacaktır." + +msgid "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" +msgstr "" +"Hoşgeldiniz.\n" +"\n" +"Eğer alıcınızı Internete bağlamak istiyorsanız, bu sihirbazın alıcınızın temel ağ kurulumunda size yol gösterecektir.\n" +"\n" +"Ağ yapılandırılmasını başlatmak için OK tuşuna basın" + +msgid "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." +msgstr "" +"Hoşgeldiniz.\n" +"\n" +"Bu başlangıç ​​sihirbazı Uydu alıcınızın temel ayarları sürecinde size yol gösterecektir.\n" +"Bir sonraki adıma geçmek için uzaktan kumanda üzerindeki OK düğmesine basın." + +msgid "Welcome..." +msgstr "Hoşgeldiniz..." + +msgid "West" +msgstr "Batı" + +msgid "West limit set" +msgstr "Batı limit ayarı" + +msgid "What do you want to scan?" +msgstr "Neleri aramak istiyorsunuz?" + +msgid "When enabled the PiP can be closed by the exit button." +msgstr "" + +msgid "When enabled the arrow buttons around the OK button will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled the left, right, CH+/-, B+/-, P+/- buttons will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled you can specify a timeframe to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "When enabled you can specify a timeframe were the inactivity sleeptimer is ignored. Not the detection is disabled during this timeframe but the inactivity timeout is disabled" +msgstr "" + +msgid "When enabled you can zap channels with the CH+/-, B+/-, P+/- buttons instead of opening the channel selection list." +msgstr "" + +msgid "When enabled you get the channel selection list via the OK button, the infobar toggle is then transfered to exit button" +msgstr "" + +msgid "When enabled, AIT data will be included in http streams. This allows a client receiver to use HbbTV." +msgstr "AIT veri http akışlarına dahil edilecektir. Bu işlem alıcının HbbTV kullanmasını sağlar." + +msgid "When enabled, ECM data will be included in http streams. This allows a client receiver to do the descrambling." +msgstr "ECM veri http akışları dahil edilecektir. Bu istemci alıcının şifre çözme işlemini sağlar." + +msgid "When enabled, EIT data will be included in http streams. This allows a client receiver to show EPG." +msgstr "EIT veri http akışına dahil edilecektir. Bu istemci alıcının EPG göstermesini sağlar." + +msgid "When enabled, a popup message will be shown when a movie has finished and the next one will start." +msgstr "Açılan bir iletiyle bir film bittiğini gösterilir ve bir sonraki programı gösterir." + +msgid "When enabled, a popup message will be shown when a recording starts." +msgstr "Bir kayıt başladığında, mesaj gösterilir." + +msgid "When enabled, a radio background image will be visible while listening to a radio channel." +msgstr "Bir radyo kanalını dinlerken radyo arka plan resmi görünecektir." + +# Çeviriden emin değilim... +msgid "When enabled, a recording is allowed to interrupt live tv, when there are no free tuners." +msgstr "Yayını kaydetmek için baş tunere ihtiyaç duymaz..." + +msgid "When enabled, a warning will be displayed and the user will get an option to stop or to continue the timeshift." +msgstr "" + +msgid "When enabled, authentication is required to watch http streams." +msgstr "" + +msgid "When enabled, channel numbering will start at '1' for each bouquet." +msgstr "Kanal numaralandırması her buket için '1 'den başlayacak." + +msgid "When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen." +msgstr "4:3 en boy oranı ile içerik ekrana sığacak şekilde uzatılır." + +msgid "When enabled, continue to the next bouquet when the last channel of the current bouquet is reached while changing channels." +msgstr "Kanal değiştirme sırasında geçerli bukette son kanal ulaşıldığında bir sonraki buketten devam eder." + +msgid "When enabled, deleted recordings are moved to the trash can, instead of being deleted immediately." +msgstr "Silinen kayıtları, çöp kutusuna taşınır." + +msgid "When enabled, display the EIT now/next eventdata in infobar. When disabled, display now/next eventdata from the EPG cache instead." +msgstr "Etkinleştirildiğinde, şimdi / sonraki EIT geçmişini bilgi çubuğunda görüntüler. Devre dışı bırakıldığında, şimdi / sonraki geçmiş yerine EPG önbelleğinden görüntüler." + +msgid "When enabled, encryption info will be shown in the infobar (when supported by the skin)." +msgstr "Şifreleme bilgisi bilgi çubuğunda gösterilir (arayüz tarafından destekleniyorsa)." + +msgid "When enabled, error messages related to the Common Interface module will not be shown." +msgstr "Ortak Arayüz modülü ile ilgili hata iletileri gösterilmeyecektir." + +msgid "When enabled, error messages related to zapping will not be shown." +msgstr "Zap ile ilgili hata iletileri gösterilmez." + +msgid "When enabled, external subtitles will be always turned on for playback movie." +msgstr "" + +msgid "When enabled, graphical DVB subtitles are preferred over teletext subtitles, when both types are available." +msgstr "Her iki tür de mevcut olduğunda grafik DVB altyazı yerine teleteks altyazısı tercih edilir." + +msgid "When enabled, graphical DVB subtitles will be centered horizontally." +msgstr "Grafik DVB altyazı yatayda ortala." + +msgid "When enabled, graphical DVB subtitles will be displayed at their original position." +msgstr "Grafik DVB altyazıyı orijinal konumunda görüntülenir." + +msgid "When enabled, graphical DVB subtitles will be displayed in yellow, instead of the original color." +msgstr "Grafik DVB altyazı orjinal renginin yerine sarı renk içinde gösterilir." + +msgid "When enabled, http streams are descrambled on the server side. The (remote) client receiver does not have to do descrambling." +msgstr "http akışları sunucu tarafında kodlanabilir. (Uzak) istemci alıcının akışı çözülmesine yardımcı olmak zorunda değildir." + +msgid "When enabled, it is possible to leave the movieplayer with exit." +msgstr "" + +msgid "When enabled, measure power consumption to detect when the rotor stops turning (when supported by the tuner)." +msgstr "Rotorun dönüşünün bittiği anı algılamak, çekilen güç ölçülerek anlaşılabilir. (tuner tarafından destekleniyorsa)" + +msgid "When enabled, number markers will be hiden." +msgstr "" + +msgid "When enabled, services may be grouped in multiple bouquets." +msgstr "Kanallar, çoklu buketler halinde gruplandırılmış olabilir." + +msgid "When enabled, show channel numbers in the channel selection screen." +msgstr "Kanal seçimi ekranında kanal numaraları gösterir." + +msgid "When enabled, subtitles for the hearing impaired can be used." +msgstr "İşitme engelliler için altyazı kullanılabilir." + +msgid "When enabled, subtitles for the hearing impaired will be preferred over normal subtitles, when both types are available." +msgstr "Her iki tür de altyazı mevcut olduğunda (işitme engelliler ve normal), normal bir altyazı tercih edilecektir." + +msgid "When enabled, teletext pages will be cached, allowing faster access." +msgstr "Teletekst sayfalarına daha hızlı erişim sağlamak için, önbellek kullanılır." + +msgid "When enabled, teletext subtitles will be displayed at their original position." +msgstr "Teletext altyazıları orijinal konumunda görüntülenir." + +msgid "When enabled, the VCR scart option will be shown on the main menu" +msgstr "" + +msgid "When enabled, the channel selection list will be hidden while listening to a radio channel" +msgstr "Bir radyo kanalını dinlerken kanal seçim listesi gizlenecektir" + +msgid "When enabled, the infobar will be displayed when a new event starts." +msgstr "Yeni bir etkinlik başladığında bilgi çubuğu görüntülenir." + +msgid "When enabled, the infobar will be displayed when changing channels." +msgstr "Kanalları değiştirirken bilgi çubuğu görüntülenir." + +msgid "When enabled, the infobar will be displayed when skipping forwards/backwards during media playback." +msgstr "Medya oynatma sırasında ileri / geri atlama zamanı bilgi çubuğunda görüntülenir." + +msgid "When enabled, the lenght of each recording will be shown in the movielist (this might cause some additional loading time)." +msgstr "Her kayıt uzunluğu Film listesinde gösterilecektir (bu bazı ek yükleme süresine neden olabilir)" + +msgid "When enabled, the original line breaks will be removed from the teletext subtitles." +msgstr "Orijinal satır sonlarındaki teleteks altyazıları kaldırılacaktır." + +msgid "When enabled, the receiver will automatically use the audio track which you selected before." +msgstr "Alıcı otomatik olarak önceden seçilen sesi izini kullanır." + +msgid "When enabled, the receiver will automatically use the subtitles which you selected before." +msgstr "Alıcı otomatik olarak önceden seçilen altyazıları kullanacaktır." + +msgid "When enabled, the receiver will no longer monitor the tuned transponder for possible changes. Do not use this option unless you know what you are doing." +msgstr "Alıcı bundan böyle olası değişiklikler olduğunda ayarlı transponderi takip edecek. Eğer ne yaptığınızı bilmiyorsanız bu seçeneği kullanmayın." + +msgid "When enabled, the receiver will select an AC3 track (when available)." +msgstr "AC3 ses izi (varsa) seçilecektir." + +msgid "When enabled, the receiver will select an AC3+ track (when available)." +msgstr "" + +msgid "When enabled, timeshift starts automatically in background after specified time." +msgstr "" + +msgid "When enabled, use DHCP for the IP configuration." +msgstr "IP yapılandırması için DHCP kullan." + +msgid "When enabled, your receiver will detect activity on the VCR SCART input." +msgstr "" + +msgid "When nonzero, a recording will start earlier than the starting time indicated by the EPG." +msgstr "Boş değilse, kayıt başlangıç ​​zamanı EPG ile gösterilenden daha erken başlayacak." + +msgid "When nonzero, a recording will stop later than the ending time indicated by the EPG." +msgstr "Boş değilse, kayıt EPG zamanından önce tamamlanır." + +msgid "When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture." +msgstr "16:9 en boy oranı varsa, resmi büyütme/uzatma için seçebilirsiniz." + +msgid "When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture." +msgstr "4:3 en boy oranı varsa, resmi büyütme/uzatma için seçebilirsiniz." + +msgid "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" +msgstr "" +"Fabrika ayarlarına geri döndüğünüzde, yapılandırma dosyalarınızın tamamını KAYBEDEBİLİRSİNİZ\n" +"(buketler, kanallar, uydu verileri ve özel ayar dosyalarınız ...)\n" +"Fabrika ayarlarına geri dönüldükten sonra, uydu alıcınız otomatik olarak yeniden başlatılacaktır!\n" +"\n" +"Fabrika ayarlarına geri dönmek istediğinizden emin misiniz?" + +msgid "Where do you want to backup your settings?" +msgstr "Ayarlarınızın yedeğini nereye almak istiyorsunuz?" + +msgid "Where to save temporary timeshift recordings?" +msgstr "Geçici zaman bükücü kayıtları nereye yapılsın?" + +msgid "Wireless LAN" +msgstr "Kablosuz ağ WLAN" + +msgid "Wireless network" +msgstr "Kablosuz ağ" + +msgid "Wireless network configuration..." +msgstr "Kablosuz ağ yapılandırması ..." + +msgid "Wireless network connection setup" +msgstr "Kablosuz ağ bağlantısı kurulumu" + +msgid "Wireless network connection setup." +msgstr "Kablosuz ağ bağlantısı kurulumu." + +msgid "Wireless network state" +msgstr "Kablosuz ağ durumu" + +msgid "With popup" +msgstr "" + +msgid "Without popup" +msgstr "" + +msgid "Would you like to install a softcam?" +msgstr "Would you like to install a softcam?" + +msgid "Write error while recording. Disk full?\n" +msgstr "Kaydederken hata oluştu. Disk dolu mu?\n" + +msgid "Write failed!" +msgstr "Yazma başarısız!" + +msgid "YPbPr" +msgstr "YPbPr" + +msgid "Year" +msgstr "Yıl" + +msgid "Yellow DVB subtitles" +msgstr "Sarı DVB altyazı" + +msgid "Yes" +msgstr "Evet" + +msgid "Yes and save" +msgstr "" + +msgid "Yes and save in movie dir" +msgstr "" + +msgid "Yes to all" +msgstr "Tümüne evet" + +msgid "Yes, always" +msgstr "Evet, her zaman" + +msgid "Yes, and delete this movie" +msgstr "Evet, ve bu filmi sil" + +msgid "Yes, backup my settings!" +msgstr "Evet, ayarlarımın yedeğini al!" + +msgid "Yes, delete this movie and return to movie list" +msgstr "" + +msgid "Yes, do a manual scan now" +msgstr "Evet, elle kanal aramayı başlat" + +msgid "Yes, do an automatic scan now" +msgstr "Evet, otomatik kanal aramayı başlat" + +msgid "Yes, do another manual scan now" +msgstr "Evet, yeni bir elle kanal araması başlat" + +msgid "Yes, perform a shutdown now." +msgstr "Evet, cihazı şimdi kapat." + +msgid "Yes, restore the settings now" +msgstr "Evet, ayarlarımı geri yükle" + +msgid "Yes, returning to movie list" +msgstr "Evet, film listesine dön" + +msgid "Yesterday" +msgstr "Dün" + +#, python-format +msgid "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" +msgstr "" +"Zaten bir kanal listesi, yüklü\n" +"Silmek istiyorsunuz\n" +"\"%s\"?" + +msgid "You can cancel the installation." +msgstr "Eklenti yüklemeyi iptal edebilirsiniz." + +msgid "You can cancel the removal." +msgstr "Eklenti kaldırmayı iptal edebilirsiniz." + +msgid "You can continue watching TV etc. while this is running." +msgstr "Bu çalışırken tv vb izlemeye devam edebilirsiniz." + +msgid "You can install this plugin." +msgstr "Bu eklentiyi yükleyebilirsiniz." + +msgid "You can only burn receiver recordings!" +msgstr "Sadece alıcıdaki kayıtlarını yazabilirsiniz!" + +msgid "You can remove this plugin." +msgstr "Bu eklentiyi kaldırabilirsiniz." + +msgid "You cannot delete this!" +msgstr "Bunu silemezsiniz!" + +msgid "You didn't select a channel to record from." +msgstr "Kayıt için bir kanal seçmediniz." + +msgid "You have chosen to backup your settings. Please press OK to start the backup now." +msgstr "Ayarlarınızı yedeklemeyi seçtiniz. Yedeklemeyi başlatmak için OK tuşuna basın..." + +msgid "You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased." +msgstr "Önyükleme yapabilir .NFI flaşlayıcı USB bellek oluşturmayı seçtiniz. Bu işlem USB belleğin yeniden bölümlendirmesini gerektirdiğinden içeriğindeki tüm veriler silinecektir." + +msgid "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." +msgstr "Ayarlarınızı geri yüklemeyi seçtiniz. Geri yükleme işleminin ardından Enigma2 yeniden başlayacaktır. Geri yüklemeyi başlatmak için OK tuşuna basın..." + +#, python-format +msgid "You have to wait %s!" +msgstr "Bekleme süresi : %s!" + +msgid "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." +msgstr "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." + +msgid "You system does not support ext4" +msgstr "Sisteminiz Ext4 dosya sistemi desteklemiyor" + +msgid "Your backup succeeded. We will now continue to explain the further upgrade process." +msgstr "Yedek başarıyla alındı. Şimdi güncelleme işlemine devam edeceğiz." + +msgid "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" +msgstr "Koleksiyonunuz tek katman DVD'ye sığmıyor, çift katman DVD kullanmanız gerekiyor!" + +msgid "Your current collection will get lost!" +msgstr "Geçerli seçimi kaybetmiş olacaksınız!" + +msgid "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." +msgstr "" +"Ön işlemci yazılım güncellenmesi gerekiyor.\n" +"Güncellemeye başlamak için OK tuşuna basın." + +msgid "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Yazılımınız güncellenecek\n" +"Alını yeniden başlatılana kadar bekleyi\n" +"Bu işlem birkaç dakika sürebilir" + +msgid "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." +msgstr "" +"İnternet bağlantınız çalışmıyor!\n" +"Sonraki aşamada yapmak istediğiniz işlemi seçiniz." + +#, python-format +msgid "Your internet connection is working (ip: %s)" +msgstr "Internet bağlantısı çalışıyor (IP: %s)" + +msgid "Your network configuration has been activated." +msgstr "Ağ yapılandırmanız etkinleştirildi." + +msgid "Your receiver does not have an internet connection" +msgstr "Alıcıda kurulu bir internet bağlantısı yok." + +msgid "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" +msgstr "" +"Alıcınız artık kullanıma hazır.\n" +"\n" +"Internet bağlantısı çalışıyor..\n" +"\n" + +msgid "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Alıcınız artık kullanıma hazır.\n" +"\n" +"Internet bağlantısı da çalışıyor.\n" +"\n" +"Devam etmek için OK tuşuna basınız." + +msgid "Your receiver is rebooting" +msgstr "Uydu Alıcınız yeniden baştatılıyor." + +msgid "Your receiver is shutting down" +msgstr "YoUydu Alıcınız kapanıyor." + +msgid "Your receiver is shutting down. Please stand by..." +msgstr "Uydu Alıcınız kapatılıyor. Lütfen bekleyin ..." + +msgid "Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver." +msgstr "Cihazınız artık kullanılmaz olabilir. Alıcınızın yeniden başlatmadan önce daha fazla yardım için kılavuzuna bakınız." + +msgid "Your receiver will got to stand by due to the sleeptimer." +msgstr "" + +msgid "Your receiver will got to standby due to inactivity." +msgstr "" + +msgid "Your receiver will restart after pressing OK on your remote control." +msgstr "Uydu alıcınız, uzaktan kumandadaki OK bastıktan sonra yeniden başlatıcak." + +msgid "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." +msgstr "" +"Kablosuz ağ bağlantısı başlatılamadı!\n" +"USB WLAN çubuğunu taktığınızdan emin olun?\n" +"\n" +"Lütfen sonraki adımda yapmak istediğiniz işlemi seçin." + +msgid "Zap" +msgstr "Kanal Değiştirme" + +msgid "Zap back to previously tuned service?" +msgstr "Ayarlı kanala geri dönmek istiyor musunuz?" + +msgid "Zap back to service before positioner setup?" +msgstr "Pozisyoner kurulumundan çıktıktan sonra seyrettiğiniz kanala dönmek istiyor musunuz?" + +msgid "Zap back to service before tuner setup?" +msgstr "Tuner ayarlarından çıktıktan sonra seyrettiğiniz kanala dönmek istiyor musunuz?" + +msgid "Zap focus to Picture in Picture" +msgstr "Resim içinde Resim (RiR) kanal değiştir." + +msgid "Zap focus to main screen" +msgstr "Ana ekranda kanal değiştir" + +msgid "Zap mode" +msgstr "Kanal Değş. Modu" + +msgid "Zap to selected channel" +msgstr "Seçilen kanalı aç" + +msgid "Zap to selected channel, or show detailed event info (depends on configuration)" +msgstr "Seçilen kanal, ya da gösteren EPG bilgisine göre (yapılandırmasına göre değişir) Kanal Değiştir" + +msgid "[alternative edit]" +msgstr "[alternatif düzenle]" + +msgid "[bouquet edit]" +msgstr "[buket düzenle]" + +msgid "[favourite edit]" +msgstr "[favori düzenle]" + +msgid "[move mode]" +msgstr "[taşıma kipi]" + +msgid "a gui to assign services/providers to common interface modules" +msgstr "ortak arayüz modüllerine kanal/yayıncı atama arayüzü" + +msgid "a gui to assign services/providers/caids to common interface modules" +msgstr "ortak arayüz modüllerine kanal/yayıncı/caid atama arayüzü" + +msgid "abort alternatives edit" +msgstr "alternatif düzenlemekten vazgeç" + +msgid "abort bouquet edit" +msgstr "buket düzenlemekten vazgeç" + +msgid "abort favourites edit" +msgstr "favori düzenlemekten vazgeç" + +msgid "about to start" +msgstr "başlamak üzere" + +msgid "activate network adapter configuration" +msgstr "ağ adaptör ayarlarını etkinleştir" + +msgid "add alternatives" +msgstr "Alternatiflere ekle" + +msgid "add bookmark" +msgstr "Yer imi ekle" + +msgid "add bouquet" +msgstr "Buket oluştur" + +msgid "add marker" +msgstr "İşaretçi Ekle" + +msgid "add service to bouquet" +msgstr "Kanalı bukete ekle" + +msgid "add service to favourites" +msgstr "Kanalı favorilere ekle" + +msgid "add to parental protection" +msgstr "Aile koruması ekle" + +msgid "adult movie/drama" +msgstr "Yetişkin Film/Drama" + +msgid "advanced" +msgstr "Gelişmiş" + +msgid "adventure/western/war" +msgstr "macera/western/savaş" + +msgid "advertisement/shopping" +msgstr "reklam/alışveriş" + +msgid "after " +msgstr "" + +msgid "alphabetic" +msgstr "alfabetik" + +msgid "alphabetic reverse" +msgstr "alfabetik ters" + +msgid "alternative" +msgstr "" + +msgid "always" +msgstr "" + +msgid "and select next channel" +msgstr "" + +msgid "and select previous channel" +msgstr "" + +msgid "arts/culture (without music, general)" +msgstr "sanat/kültür (müziksiz, genel)" + +msgid "arts/culture magazine" +msgstr "sanat/kültür magazin" + +msgid "athletics" +msgstr "atletizm" + +msgid "audio tracks" +msgstr "ses izleri" + +msgid "auto" +msgstr "otomatik" + +msgid "automatic" +msgstr "otomatik" + +msgid "back" +msgstr "back" + +msgid "background image" +msgstr "arkaplan resmi" + +msgid "ballet" +msgstr "balet" + +#, python-format +msgid "bc%s" +msgstr "bc%s" + +msgid "better" +msgstr "better" + +msgid "black" +msgstr "siyah" + +msgid "black & white" +msgstr "kara & beyaz" + +msgid "blacklist" +msgstr "kara liste" + +msgid "blue" +msgstr "mavi" + +msgid "broadcasting/press" +msgstr "yayıncılık/basın" + +msgid "by date" +msgstr "tarihe göre" + +msgid "cartoon/puppets" +msgstr "çizgi film/kukla" + +msgid "center" +msgstr "center" + +msgid "centered" +msgstr "" + +msgid "centered, wrapped" +msgstr "" + +msgid "chapters" +msgstr "bölümler" + +msgid "childrens's/youth program (general)" +msgstr "Çocuklar için / gençlik programı (genel)" + +msgid "circular left" +msgstr "dairesel sola" + +msgid "circular right" +msgstr "dairesel sağa" + +msgid "comedy" +msgstr "komedi" + +msgid "complex" +msgstr "karmaşık (kompleks)" + +msgid "config menu" +msgstr "ayar menüsü" + +msgid "confirmed" +msgstr "onaylandı" + +msgid "connected" +msgstr "bağlı" + +msgid "continue" +msgstr "devam et" + +msgid "cooking" +msgstr "yemek" + +msgid "copy to bouquets" +msgstr "buketlere kopyala" + +msgid "create directory" +msgstr "klasör oluştur" + +#, python-format +msgid "currently installed image: %s" +msgstr "Yüklü yazılım: %s" + +msgid "daily" +msgstr "günlük" + +msgid "day" +msgstr "gün" + +msgid "default" +msgstr "öntanımlı" + +msgid "delete cut" +msgstr "kesimi sil" + +msgid "delete..." +msgstr "" + +msgid "descramble and record ecm" +msgstr "çöz ve ecm kaydet" + +msgid "detective/thriller" +msgstr "dedektif / gerilim" + +msgid "disable" +msgstr "kapat" + +msgid "disable move mode" +msgstr "taşıma kipini kapat" + +msgid "disabled" +msgstr "devre dışı" + +msgid "disconnected" +msgstr "bağlı değil" + +msgid "discussion/interview/debate" +msgstr "tartışma / röportaj / tartışmaları" + +msgid "do nothing" +msgstr "birşey yapma" + +msgid "documentary" +msgstr "belgesel" + +msgid "don't descramble, record ecm" +msgstr "ezülmüyorcm kaydı çö" + +msgid "done!" +msgstr "Tamamlandı!" + +msgid "east" +msgstr "east" + +msgid "economics/social advisory" +msgstr "ekonomi / sosyal tavsiye" + +msgid "edit alternatives" +msgstr "alternatifleri düzenle" + +msgid "education/science/factual topics (general)" +msgstr "eğitim / bilim / gerçeklere dayanan konular (genel)" + +msgid "empty" +msgstr "boş" + +msgid "enable" +msgstr "etkinleştir" + +msgid "enable bouquet edit" +msgstr "Buket düzenlemeyi aç" + +msgid "enable favourite edit" +msgstr "Favori düzenlemeyi aç" + +msgid "enable move mode" +msgstr "Taşıma kipini aç" + +msgid "enabled" +msgstr "Etkin" + +msgid "end alternatives edit" +msgstr "alternatif düzenlemeyi bitir" + +msgid "end bouquet edit" +msgstr "buket düzenlemeyi bitir" + +msgid "end cut here" +msgstr "kesimi burada bitir" + +msgid "end favourites edit" +msgstr "favori düzenlemeyi bitir" + +msgid "entertainment (10-16 year old)" +msgstr "eğlence (10-16 yaş arası)" + +msgid "entertainment (6-14 year old)" +msgstr "eğlence (10-16 yaş arası)" + +msgid "equal to" +msgstr "eşittir" + +msgid "equestrian" +msgstr "binicilik" + +msgid "exit DVD player or return to file browser" +msgstr "DVD oynatıcıdan çık yada dosya yöneticisine geri dön" + +msgid "exit movielist" +msgstr "" + +msgid "exit network adapter configuration" +msgstr "ağ donanımı yapılandırmasından çık" + +msgid "exit networkadapter setup menu" +msgstr "ağ donanımı kurulum menüsünden çık" + +msgid "experimental film/video" +msgstr "deneysel film / video" + +msgid "false" +msgstr "yanlış" + +msgid "fashion" +msgstr "moda" + +msgid "fileformats (BMP, PNG, JPG, GIF)" +msgstr "dosya biçimi (BMP, PNG, JPG, GIF)" + +msgid "filename" +msgstr "dosyaadı" + +msgid "film/cinema" +msgstr "film/sinema" + +msgid "fine arts" +msgstr "güzel sanatlar" + +msgid "fine-tune your display" +msgstr "Ekran ince ayar" + +msgid "fitness & health" +msgstr "spor ve sağlık" + +msgid "flat alphabetic" +msgstr "A-Z" + +msgid "flat alphabetic reverse" +msgstr "A-Z->Z-A" + +msgid "folk/traditional music" +msgstr "halk müziği / geleneksel müzik" + +msgid "football/soccer" +msgstr "futbol / Maç" + +msgid "foreign countries/expeditions" +msgstr "yabancı ülkelere / keşif" + +msgid "forward to the next chapter" +msgstr "sonraki bölüme ilerle" + +msgid "free" +msgstr "boş" + +msgid "from" +msgstr "" + +msgid "further education" +msgstr "ileri eğitim" + +msgid "game show/quiz/contest" +msgstr "oyun gösterisi / sınav / Yarışma" + +msgid "gardening" +msgstr "bahçıvanlık" + +msgid "go to deep standby" +msgstr "derin uyku kipine geç" + +msgid "go to standby" +msgstr "uyku kipine geç" + +msgid "grab this frame as bitmap" +msgstr "bu çerçeveyi bitmap olarak yakala" + +msgid "green" +msgstr "yeşil" + +msgid "handicraft" +msgstr "handicraft" + +msgid "height" +msgstr "yükseklik" + +msgid "help..." +msgstr "yardım..." + +msgid "horizontal" +msgstr "yatay (h)" + +msgid "information/education/school program" +msgstr "bilgi / eğitim / okul programı" + +msgid "init module" +msgstr "modülü başlat" + +msgid "init modules" +msgstr "modülleri başlat" + +msgid "insert mark here" +msgstr "buraya işaret koy" + +msgid "invalid type" +msgstr "geçersiz tür" + +msgid "jazz" +msgstr "jazz" + +msgid "jump back to the previous title" +msgstr "önceki başlığa git" + +msgid "jump forward to the next title" +msgstr "sonraki başlığa git" + +msgid "languages" +msgstr "dil" + +msgid "leave movie player..." +msgstr "ortam oynatıcıdan çık..." + +msgid "left" +msgstr "sol" + +msgid "left, wrapped" +msgstr "" + +msgid "leisure hobbies (general)" +msgstr "eğlence hobiler (genel)" + +msgid "length" +msgstr "uzunluk" + +msgid "limit ..., aborting !" +msgstr "limit ..., iptal ediliyor!" + +msgid "list style compact" +msgstr "Kompakt liste biçimi" + +msgid "list style compact with description" +msgstr "Kompakt ve açıklamalı liste biçimi" + +msgid "list style default" +msgstr "Varsayılan liste biçimi" + +msgid "list style single line" +msgstr "Tek satır halinde liste biçimi" + +msgid "literature" +msgstr "literatur" + +msgid "live broadcast" +msgstr "canlı yayın" + +msgid "locked" +msgstr "kilitli" + +msgid "loopthrough to" +msgstr "üzerinden bağla" + +msgid "magazines/reports/documentary" +msgstr "magazin/rapor/belgesel" + +msgid "manual" +msgstr "elle" + +msgid "martial sports" +msgstr "dövüş sporları" + +msgid "medicine/physiology/psychology" +msgstr "tıp / fizyoloji / psikoloji" + +msgid "menu" +msgstr "menu" + +msgid "mins" +msgstr "dakika" + +msgid "minutes" +msgstr "dakika" + +msgid "month" +msgstr "ay" + +msgid "motor sport" +msgstr "motor sporları" + +msgid "motoring" +msgstr "otomobil" + +msgid "move down to last entry" +msgstr "en sona taşı" + +msgid "move down to next entry" +msgstr "bir alta taşı" + +msgid "move up to first entry" +msgstr "en üste taşı" + +msgid "move up to previous entry" +msgstr "bir üste taşı" + +msgid "movie/drama (general)" +msgstr "movie/drama (general)" + +msgid "multinorm" +msgstr "PAL/NTSC" + +msgid "music/ballet/dance (general)" +msgstr "müzik/bale/dans (genel)" + +msgid "musical/opera" +msgstr "müzikal/opera" + +msgid "nature/animals/environment" +msgstr "doğa / hayvan / çevre" + +msgid "never" +msgstr "hiç" + +msgid "new media" +msgstr "yeni medya" + +msgid "news magazine" +msgstr "haber magazin" + +msgid "news/current affairs (general)" +msgstr "haber / güncel olaylar (genel)" + +msgid "news/weather report" +msgstr "Haber / hava raporu" + +msgid "no" +msgstr "hayır" + +msgid "no CAId selected" +msgstr "CAId seçilmedi" + +msgid "no CI slots found" +msgstr "CI yuvası bulunamadı" + +msgid "no module found" +msgstr "modül bulunamadı" + +msgid "no storage devices found" +msgstr "hiçbir depolama aygıtı bulunamadı" + +msgid "none" +msgstr "yok" + +msgid "normal" +msgstr "normal" + +msgid "not configured" +msgstr "henüz yapılandırılmamış" + +msgid "not locked" +msgstr "kilitlenmedi" + +msgid "not supported" +msgstr "desteklenmiyor" + +msgid "not used" +msgstr "kullanılmıyor" + +msgid "nothing connected" +msgstr "bağlı değil" + +msgid "of a DUAL layer medium used." +msgstr "ÇİFT katmanlı medya kullanıldığında." + +msgid "of a SINGLE layer medium used." +msgstr "TEK katmanlı medya kullanıldığında." + +msgid "off" +msgstr "kapalı" + +msgid "offset is" +msgstr "ofset" + +msgid "on" +msgstr "açık" + +msgid "on READ ONLY medium." +msgstr "yalnızca okunabilir (READ ONLY) medya" + +msgid "on end of movie" +msgstr "" + +msgid "once" +msgstr "birkez" + +msgid "only from deep standby" +msgstr "" + +msgid "only from standby" +msgstr "" + +msgid "open EPG..." +msgstr "" + +msgid "open Info..." +msgstr "" + +msgid "open nameserver configuration" +msgstr "isim sunucu yapılandırmasını aç" + +msgid "original" +msgstr "orjinal" + +msgid "original language" +msgstr "orjinal dil" + +msgid "pass" +msgstr "pass" + +msgid "performing arts" +msgstr "sahne sanatları" + +msgid "play as picture in picture" +msgstr "Resim içinde resim olarak göster" + +msgid "play in mainwindow" +msgstr "Ana pencerede oynat" + +msgid "please press OK when ready" +msgstr "Lütfen hazır olduğunuzda OK' a basın." + +msgid "please wait, loading picture..." +msgstr "fotoğraf yükleniyor, lütfen bekleyin..." + +msgid "popular culture/traditional arts" +msgstr "popüler kültür / geleneksel sanatlar" + +msgid "pre-school children's program" +msgstr "Okul öncesi çocuk programı" + +msgid "receiver software because updates are available." +msgstr "alıcı yazılım güncellemesi var." + +msgid "record" +msgstr "kaydet" + +msgid "recording..." +msgstr "kaydediliyor..." + +msgid "red" +msgstr "kırmızı" + +msgid "religion" +msgstr "dini" + +msgid "remarkable people" +msgstr "önemli insanlar" + +msgid "remove after this position" +msgstr "bu noktadan sonrasını kaldır" + +msgid "remove all alternatives" +msgstr "alternatiflerin tümünü kaldır" + +msgid "remove all new found flags" +msgstr "yeni bulundu işaretlerinin tümünü kaldır" + +msgid "remove before this position" +msgstr "bu noktadan öncekileri kaldır" + +msgid "remove bookmark" +msgstr "yer imini sil" + +msgid "remove directory" +msgstr "klasörü sil" + +msgid "remove entry" +msgstr "Seçili Kanalı/Buketi Sil" + +msgid "remove from parental protection" +msgstr "Aile korumasından çıkar" + +msgid "remove new found flag" +msgstr "yeni bulundu işaretini kaldır" + +msgid "remove selected satellite" +msgstr "seçili uyduyu kaldır" + +msgid "remove this mark" +msgstr "bu işareti kaldır" + +msgid "rename entry" +msgstr "" + +msgid "repeat playlist" +msgstr "oynatma listesini tekrarla" + +msgid "repeated" +msgstr "tekrarla" + +msgid "reverse by date" +msgstr "tarihe göre tersine" + +msgid "rewind to the previous chapter" +msgstr "önceki bölüme geri git" + +msgid "right" +msgstr "sağ" + +msgid "right, wrapped" +msgstr "" + +msgid "rock/pop" +msgstr "rok/pop" + +msgid "romance" +msgstr "romantik" + +msgid "save last directory on exit" +msgstr "çıkışta, son klasörü kaydet" + +msgid "save playlist on exit" +msgstr "çıkışta, oynatma listesini kaydet" + +msgid "scan state" +msgstr "kanal arama durumu" + +msgid "science fiction/fantasy/horror" +msgstr "bilim kurgu/fantastik/korku" + +msgid "second cable of motorized LNB" +msgstr "Motorlu LNB'nin ikinci kablosu" + +msgid "seconds" +msgstr "saniye" + +msgid "select" +msgstr "seç" + +msgid "select CAId's" +msgstr "CAId' leri seç" + +msgid "select EPG..." +msgstr "" + +msgid "select Info..." +msgstr "" + +msgid "select menu entry" +msgstr "menü girişini seçin" + +msgid "select movie" +msgstr "" + +msgid "select the movie path" +msgstr "" + +msgid "serious music/classic music" +msgstr "önemli/klasik müzik" + +msgid "serious/classical/religious/historical movie/drama" +msgstr "seri/clasik/dini/tarihi film/dram" + +msgid "service PIN" +msgstr "Servis PIN" + +msgid "set as startup service" +msgstr "Başlangıç kanalı yap." + +msgid "setup PIN" +msgstr "PIN ayarları" + +msgid "show DVD main menu" +msgstr "DVD ana menüsünü göster" + +msgid "show all tags" +msgstr "Tüm etiketleri göster" + +msgid "show alternatives" +msgstr "alternatifleri göster" + +msgid "show event details" +msgstr "EPG detaylarını göster" + +msgid "show extended description" +msgstr "" + +msgid "show mediaplayer on mainmenu" +msgstr "Ana menüde Media Player'ı gösterir" + +msgid "show softwaremanager in setup menu" +msgstr "kurulum menüsünde yazılım yöneticisini gösterir" + +msgid "show softwaremanager on blue button" +msgstr "mavi düğme, yazılım yöneticisini gösterir" + +msgid "show tag menu" +msgstr "" + +msgid "show transponder info" +msgstr "Transponder bilgisini göster" + +msgid "show/game show (general)" +msgstr "gösteri/oyun gösterisi (genel)" + +msgid "shuffle" +msgstr "karışık" + +msgid "shut down" +msgstr "kapat" + +msgid "simple" +msgstr "basit" + +msgid "skip backward" +msgstr "Önceki kanala atla" + +msgid "skip forward" +msgstr "Sonraki kanala atla" + +msgid "soap/melodram/folkloric" +msgstr "soap/melodram/folkloric" + +msgid "social/political issues/economics (general)" +msgstr "sosyal/siyasi konular/ekonomi (genel)" + +msgid "social/spiritual science" +msgstr "sosyal/ruhasal bilim" + +msgid "sorting of playlists" +msgstr "çalma listelerini sırala" + +msgid "special characters" +msgstr "özel karakterler" + +msgid "special events" +msgstr "özel etkinlikler" + +msgid "special format data DVD (HDTV compatible)" +msgstr "özel format veri DVD (HDTV uyumlu)" + +msgid "sports (general)" +msgstr "spor (genel)" + +msgid "sports magazine" +msgstr "spor dergisi" + +msgid "standard" +msgstr "standart" + +msgid "start cut here" +msgstr "buradan kes" + +msgid "start directory" +msgstr "başlangıç klasörü" + +msgid "stepsize" +msgstr "adım sayısı" + +msgid "stereo" +msgstr "steryo" + +msgid "stop using as startup service" +msgstr "başlangıç servislerini durdurun" + +msgid "switch to bookmarks" +msgstr "Yer imlerine geç" + +msgid "switch to filelist" +msgstr "dosya listesine geç" + +msgid "switch to the next angle" +msgstr "sonraki açıyı seç" + +msgid "switch to the next audio track" +msgstr "sonraki ses izini seç" + +msgid "switch to the next subtitle language" +msgstr "sonraki alt yazı dilini seç" + +msgid "talk show" +msgstr "sohbet programı" + +msgid "team sports" +msgstr "takım sporları" + +msgid "technology/natural science" +msgstr "teknoloji/doğa bilimleri" + +msgid "template file" +msgstr "taslak dosya" + +msgid "tennis/squash" +msgstr "tenis/squash" + +msgid "this recording" +msgstr "bu kaydın" + +msgid "this service is protected by a parental control pin" +msgstr "bu kanal ebeveyn kontrol şifresiyle korunuyor" + +msgid "toggle time, chapter, audio, subtitle info" +msgstr "geçiş süresi, bölüm, ses, altyazı bilgileri" + +msgid "top" +msgstr "üst" + +msgid "tourism/travel" +msgstr "Turizm/Seyahat" + +msgid "true" +msgstr "doğru" + +msgid "unavailable" +msgstr "kullanılamaz" + +msgid "unconfirmed" +msgstr "doğrulanamadı" + +msgid "undefined" +msgstr "tanımsız" + +msgid "unknown" +msgstr "bilinmiyor" + +msgid "unknown service" +msgstr "bilinmeyen kanal" + +msgid "unpublished" +msgstr "yayınlanmamış" + +msgid "until standby/restart" +msgstr "h.bekle/y.başlatana kadar" + +msgid "user defined" +msgstr "kullanıcı tanımlı" + +msgid "variety show" +msgstr "çeşitli gösteri" + +msgid "vertical" +msgstr "düşey (v)" + +msgid "wait for ci..." +msgstr "ci bekleniyor..." + +msgid "wait for mmi..." +msgstr "mmi bekleniyor..." + +msgid "waiting" +msgstr "bekleniyor" + +msgid "water sport" +msgstr "su sporları" + +msgid "weekly" +msgstr "haftalık" + +msgid "west" +msgstr "batı" + +msgid "when PiPzap enabled zap channel down..." +msgstr "" + +msgid "when PiPzap enabled zap channel up..." +msgstr "" + +msgid "white" +msgstr "beyaz" + +msgid "whitelist" +msgstr "beyaz liste" + +msgid "width" +msgstr "genişlik" + +msgid "winter sport" +msgstr "kış sporları" + +msgid "wireless network interface" +msgstr "kablosuz ağ arayüzü" + +#, python-format +msgid "with %d error" +msgid_plural "with %d errors" +msgstr[0] "" + +msgid "working" +msgstr "çalışıyor" + +msgid "yellow" +msgstr "sarı" + +msgid "yes" +msgstr "evet" + +msgid "yes (keep feeds)" +msgstr "evet (beslemeleri tut)" + +msgid "zap" +msgstr "değiştir" + +msgid "zap and record" +msgstr "" + +msgid "zapped" +msgstr "kanal değiştirildi" + +#~ msgid "AA" +#~ msgstr "AA" + +#~ msgid "AB" +#~ msgstr "AB" + +#~ msgid "Activate PiP" +#~ msgstr "RiR Etkinleştir" + +#~ msgid "Add/remove timer for current event" +#~ msgstr "Geçerli olay için zamanlayıcı Ekle / Kaldır" + +#~ msgid "Adjust HDMI CEC settings" +#~ msgstr "HDMI CEC Ayarlar" + +#~ msgid "All satellites" +#~ msgstr "Tüm uydular" + +#~ msgid "BA" +#~ msgstr "BA" + +#~ msgid "BB" +#~ msgstr "BB" + +#~ msgid "Behavior of 'pause' when paused" +#~ msgstr "Duraklama kipinde 'duraklat' tuşu görevi" + +#~ msgid "Committed DiSEqC command" +#~ msgstr "Bağlı DiSEqC emri" + +#~ msgid "Configure the behavior of the 'pause' key when movie playback is already paused." +#~ msgstr "'PAUSE' tuşunu yapılandırın. Normalde film oynarken durdurmaya yarar." + +#~ msgid "DiSEqC repeats" +#~ msgstr "DiSEqC tekrarı" + +#~ msgid "Goto specific data/time" +#~ msgstr "Özel Tarih/Zaman'a git" + +#~ msgid "No satellite frontend found!!" +#~ msgstr "Uydu arayüzü bulunamadı!!" + +#~ msgid "Open service list and select next channel" +#~ msgstr "Kanal listesinde sonraki kanalı seç" + +#~ msgid "Open service list and select previous channel" +#~ msgstr "Kanal listesinde önceki kanalı seç" + +#~ msgid "Press '0' to toggle internal/external PiP." +#~ msgstr "Iç/Dış PiP arasında geçiş yapmak için '0' tuşuna basın." + +#~ msgid "Remove timer" +#~ msgstr "Zamanl. kaldır" + +#~ msgid "Send DiSEqC" +#~ msgstr "DiSEqC komutu gönder" + +#~ msgid "Switch next channel" +#~ msgstr "Sonraki kanala geç" + +#~ msgid "Tuning step size" +#~ msgstr "Adım boyu ayarlama" + +#~ msgid "Uncommitted DiSEqC command" +#~ msgstr "Bağımsız DiSEqC tekrarı" + +#~ msgid "Zap back to service before satfinder?" +#~ msgstr "Uydu arayıcıdan çıktıktan sonra seyrettiğiniz kanala dönmek istiyor musunuz?" + +#~ msgid "tuner is not supported" +#~ msgstr "tuner desteklenmiyor" diff --git a/po/uk.po b/po/uk.po new file mode 100644 index 0000000..66a27d5 --- /dev/null +++ b/po/uk.po @@ -0,0 +1,10629 @@ +msgid "" +msgstr "" +"Project-Id-Version: enigma2\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2014-07-21 19:08+0200\n" +"PO-Revision-Date: 2014-03-07 18:30+0200\n" +"Last-Translator: Irkoff <irkoff@gmail.com>\n" +"Language-Team: Dima73 <Dima-73@inbox.lv>\n" +"Language: uk_UA\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"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" +"X-Generator: Poedit 1.6.4\n" +"X-Poedit-SourceCharset: iso-8859-5\n" + +msgid "" +"\n" +"Advanced options and settings." +msgstr "" +"\n" +"Додаткові параметри і налаштування." + +msgid "" +"\n" +"After pressing OK, please wait!" +msgstr "" +"\n" +"Після натискання ОК, зачекайте!" + +msgid "" +"\n" +"Backup your receiver settings." +msgstr "" +"\n" +"Бэкап налаштувань вашого ресиверу." + +msgid "" +"\n" +"Edit the upgrade source address." +msgstr "" +"\n" +"Редагувати адресу джерела обновлення." + +msgid "" +"\n" +"Manage extensions or plugins for your receiver" +msgstr "" +"\n" +"Управління розширеннями і плагінами вашого ресивера" + +msgid "" +"\n" +"Online update of your receiver software." +msgstr "" +"\n" +"Онлайн оновлення софта вашого ресивера." + +msgid "" +"\n" +"Press OK on your remote control to continue." +msgstr "" +"\n" +"Натисніть ОК на пульті для продовження." + +msgid "" +"\n" +"Restore your backups by date." +msgstr "" +"\n" +"Відновити резервні копії за датою." + +msgid "" +"\n" +"Restore your receiver settings." +msgstr "" +"\n" +"Відновити налаштування вашого ресивера." + +msgid "" +"\n" +"Restore your receiver with a new firmware." +msgstr "" +"\n" +"Відновити ваш ресивер з новою прошивкою." + +msgid "" +"\n" +"Scan for local extensions and install them." +msgstr "" +"\n" +"Сканування і установка локальних доповнень." + +msgid "" +"\n" +"Select your backup device.\n" +"Current device: " +msgstr "" +"\n" +"Виберіть пристрій для резервного копіювання.\n" +"Поточний пристрій: " + +msgid "" +"\n" +"View, install and remove available or installed packages." +msgstr "" +"\n" +"Перегляд, установка і видалення доступних або встановлених пакетів." + +msgid " (PiP)" +msgstr " (PiP)" + +msgid " (Radio)" +msgstr " (Радіо)" + +msgid " (TV)" +msgstr " (ТБ)" + +msgid " (disabled)" +msgstr "" + +msgid " (higher than any auto)" +msgstr "" + +msgid " (higher than rotor any auto)" +msgstr "" + +msgid " (lower than any auto)" +msgstr "" + +msgid " extensions." +msgstr " Доповнень." + +msgid " ms" +msgstr " мс" + +msgid " packages selected." +msgstr " пакетів вибрано." + +msgid " updates available." +msgstr " доступних оновлень." + +#. TRANSLATORS: short time representation hour:minute +#, python-format +msgid "%2d:%02d" +msgstr "%2d:%02d" + +#. TRANSLATORS: full time representation hour:minute:seconds +#, python-format +msgid "%2d:%02d:%02d" +msgstr "%2d:%02d:%02d" + +msgid "%A %d %B" +msgstr "%A %d %B" + +#. TRANSLATORS: long date representations dayname daynum monthname in strftime() format! See 'man strftime' +msgid "%A %e %B" +msgstr "%A %d %B" + +#. TRANSLATORS: full date representation dayname daynum monthname year in strftime() format! See 'man strftime' +msgid "%A %e %B %Y" +msgstr "%A %e %B %Y" + +msgid "%H:%M" +msgstr "%H:%M" + +#. TRANSLATORS: short date representation short dayname daynum short monthname in strftime() format! See 'man strftime' +msgid "%a %e/%m" +msgstr "%a %e/%m" + +#. TRANSLATORS: long date representation short dayname daynum short monthname hour:minute in strftime() format! See 'man strftime' +msgid "%a %e/%m %-H:%M" +msgstr "%a %e/%m %-H:%M" + +#. TRANSLATORS: Intermediate scanning result, '%d' channel(s) have been found so far +#, python-format +msgid "%d channel found" +msgid_plural "%d channels found" +msgstr[0] "%d канал знайдений" +msgstr[1] "%d канала знайдено" +msgstr[2] "%d каналів знайдено" + +#, python-format +msgid "%d file" +msgid_plural "%d files" +msgstr[0] "%d файл" +msgstr[1] "%d файла" +msgstr[2] "%d файлів" + +#, python-format +msgid "%d hour" +msgid_plural "%d hours" +msgstr[0] "%d година" +msgstr[1] "%d годин" +msgstr[2] "%d годин" + +#, python-format +msgid "%d job is running in the background!" +msgid_plural "%d jobs are running in the background!" +msgstr[0] "%d процес запущений у фоновому режимі!" +msgstr[1] "%d процеси запущено у фоновому режимі!" +msgstr[2] "%d процесів запущено у фоновому режимі!" + +#, python-format +msgid "%d min" +msgstr "%d хв" + +#, python-format +msgid "%d minute" +msgid_plural "%d minutes" +msgstr[0] "%d хвилина" +msgstr[1] "%d хвилини" +msgstr[2] "%d хвилин" + +#, python-format +msgid "%d minutes" +msgstr "%d хвилин" + +#, python-format +msgid "%d pixel wide" +msgid_plural "%d pixels wide" +msgstr[0] "" +msgstr[1] "" +msgstr[2] "" + +#, python-format +msgid "%d second" +msgid_plural "%d seconds" +msgstr[0] "%d секунда" +msgstr[1] "%d секунди" +msgstr[2] "%d секунд" + +#, python-format +msgid "%d subdirectory" +msgid_plural "%d subdirectories" +msgstr[0] "%d директорія" +msgstr[1] "%d директорії" +msgstr[2] "%d директорій" + +#, python-format +msgid "%d wireless network found!" +msgid_plural "%d wireless networks found!" +msgstr[0] "%d бездротова мережа знайдена!" +msgstr[1] "%d бездротові мережі знайдені!" +msgstr[2] "%d бездротових мереж знайдено!" + +msgid "%d-%b-%Y %-H:%M" +msgstr "%d-%b-%Y %-H:%M" + +msgid "%d-%m" +msgstr "%d-%m" + +msgid "%d.%B %Y" +msgstr "%d.%B %Y" + +#. TRANSLATORS: VFD hour:minute daynum short monthname in strftime() format! See 'man strftime' +msgid "%k:%M %e/%m" +msgstr "%k:%M %e/%m" + +#, python-format +msgid "%s %s free disk space" +msgstr "%s %s вільне місце на диску" + +#, python-format +msgid "%s (%s)\n" +msgstr "%s (%s)\n" + +#. TRANSLATORS: The satellite with name '%s' is no longer used after a configuration change. The user is asked whether or not the satellite should be deleted. +#, python-format +msgid "%s is no longer used. Should it be deleted?" +msgstr "%s більше не використовується. Чи повинен він бути видалений?" + +#, python-format +msgid "%s updated package available" +msgid_plural "%s updated packages available" +msgstr[0] "%s оновлений пакет доступний" +msgstr[1] "%s оновлених пакета доступно" +msgstr[2] "%s оновлених пакетів доступно" + +#, python-format +msgid "%s%d min" +msgstr "%s%d хв" + +#, python-format +msgid "%s/%s: %s" +msgstr "%s/%s: %s" + +msgid "(ZAP)" +msgstr "(Перейти)" + +msgid "(empty)" +msgstr "(пусто)" + +msgid "(show optional DVD audio menu)" +msgstr "(показати опції. DVD аудіо меню)" + +msgid "* Only available if more than one interface is active." +msgstr "* Доступно якщо активно більше одного інтерфейсу." + +msgid "/s" +msgstr "/с" + +msgid "0" +msgstr "0" + +msgid "1" +msgstr "1" + +msgid "1.0" +msgstr "1.0" + +msgid "1.1" +msgstr "1.1" + +msgid "1.2" +msgstr "1.2" + +msgid "12V output" +msgstr "12V вихід" + +msgid "13 V" +msgstr "13 V" + +msgid "16:10" +msgstr "16:10" + +msgid "16:10 Letterbox" +msgstr "16:10 Letterbox" + +msgid "16:10 PanScan" +msgstr "16:10 PanScan" + +msgid "16:9" +msgstr "16:9" + +msgid "16:9 Letterbox" +msgstr "16:9 Letterbox" + +msgid "16:9 always" +msgstr "16:9 завжди" + +msgid "18 V" +msgstr "18 V" + +msgid "2" +msgstr "2" + +msgid "23.976" +msgstr "" + +msgid "24" +msgstr "" + +msgid "25" +msgstr "" + +msgid "29.97" +msgstr "" + +msgid "3" +msgstr "3" + +msgid "30" +msgstr "" + +msgid "3d mode" +msgstr "Режим 3D" + +msgid "4" +msgstr "4" + +msgid "4:3" +msgstr "4:3" + +msgid "4:3 Letterbox" +msgstr "4:3 Letterbox" + +msgid "4:3 PanScan" +msgstr "4:3 PanScan" + +msgid "5" +msgstr "5" + +msgid "6" +msgstr "6" + +msgid "7" +msgstr "7" + +msgid "8" +msgstr "8" + +msgid "9" +msgstr "9" + +#, python-format +msgid ": %s" +msgstr "" + +msgid "<Current movielist location>" +msgstr "<Поточне місце списку відео>" + +msgid "<Default movie location>" +msgstr "<Місце відео по дефолту>" + +msgid "<Last timer location>" +msgstr "<Місце останнього таймера>" + +msgid "<unknown>" +msgstr "<невідомий>" + +msgid "??" +msgstr "??" + +msgid "A" +msgstr "A" + +#, python-format +msgid "" +"A configuration file (%s) has been modified since it was installed.\n" +"Do you want to keep your modifications?" +msgstr "" +"Конфігураційний файл (%s) був змінений в процесі установки.\n" +"Зберегти вашу модифікацію?" + +#, python-format +msgid "" +"A configuration file (%s) was modified since Installation.\n" +"Do you want to keep your version?" +msgstr "" +"Файл конфігурації (%s) був змінений в процесі установки..\n" +"Зберегти вашу версію?" + +msgid "" +"A finished record timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"Запис за таймером завершено, ресивер буде переведений в режим очікування.\n" +"Зробити це зараз?" + +msgid "" +"A finished record timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"Запис за таймером закінчена, ваш ресивер буде вимкнений.\n" +"Вимкнути зараз?" + +msgid "A graphical EPG for all services of an specific bouquet" +msgstr "Графічний EPG для всіх сервісів в обраних фаворитах" + +#, python-format +msgid "" +"A record has been started:\n" +"%s" +msgstr "" +"Запис було розпочато:\n" +"%s" + +msgid "" +"A recording is currently running.\n" +"What do you want to do?" +msgstr "" +"У поточний час йде запис.\n" +"Що ви хочете зробити?" + +msgid "A recording is currently running. Please stop the recording before trying to configure the positioner." +msgstr "У поточний час йде запис. Будь ласка зупиніть запис перед спробоюНалаштувати позиціонер." + +msgid "A recording is currently running. Please stop the recording before trying to scan." +msgstr "У поточний час йде запис. Будь ласка, зупиніть запис, перш ніжспробувати сканувати." + +msgid "A recording is currently running. Please stop the recording before trying to start the satfinder." +msgstr "У поточний час йде запис. Зупиніть запис перед пошуком супутника." + +#, python-format +msgid "A required tool (%s) was not found." +msgstr "Потрібний інструмент (%s), не знайдений." + +msgid "A search for available updates is currently in progress." +msgstr "Пошук доступних оновлень. Будь ласка, почекайте ..." + +msgid "" +"A second configured interface has been found.\n" +"\n" +"Do you want to disable the second network interface?" +msgstr "" +"Другий налаштований інтерфейс був знайдений.\n" +"\n" +"Ви хочете відключити другий мережний інтерфейс?" + +msgid "" +"A sleep timer wants to set your\n" +"receiver to standby. Do that now?" +msgstr "" +"Таймер сну хоче перевести ваш\n" +"ресивер в Режим Очікування. Зробити це зараз?" + +msgid "" +"A sleep timer wants to shut down\n" +"your receiver. Shutdown now?" +msgstr "" +"Таймер сну хоче вимкнути\n" +"ваш ресивер. Вимкнути зараз?" + +msgid "A small overview of the available icon states and actions." +msgstr "Невеликий огляд доступних станів, іконок та дій." + +msgid "" +"A timer failed to record!\n" +"Disable TV and try again?\n" +msgstr "" +"Таймер не може почати запис!\n" +"Відключити поточний сервіс і спробувати ще раз?\n" + +msgid "A/V settings" +msgstr "Аудіо/Відео налаштування" + +msgid "AC3/DTS downmix" +msgstr "AC3/DTS мікшування" + +msgid "Abort" +msgstr "Перервати" + +msgid "About" +msgstr "Информація" + +msgid "About..." +msgstr "Информація..." + +msgid "Accesspoint:" +msgstr "Точка доступа:" + +msgid "Action on long powerbutton press" +msgstr "Тривале натискання кнопки живлення" + +msgid "Action on short powerbutton press" +msgstr "Коротке натискання кнопки живлення" + +msgid "Activate Picture in Picture" +msgstr "Включити картинку в картинці" + +msgid "Activate current configuration" +msgstr "Активувати поточні налаштування" + +msgid "Activate network settings" +msgstr "Активувати мережеві установки" + +msgid "Activate the configured network settings." +msgstr "Активувати вибрані настройки мережі." + +msgid "Adapter settings" +msgstr "Налаштування адаптера" + +msgid "Add" +msgstr "Додати" + +msgid "Add Bookmark" +msgstr "Додати закладку" + +msgid "Add a mark" +msgstr "Додати мітку" + +msgid "Add a nameserver entry" +msgstr "Додати DNS сервер" + +msgid "Add a new title" +msgstr "Додати нову назву" + +msgid "Add bookmark" +msgstr "Додати закладку" + +msgid "Add directory to playlist" +msgstr "Додати папку до списку відтворення" + +msgid "Add file to playlist" +msgstr "Додати файл до списку відтворення" + +msgid "Add files to playlist" +msgstr "Додати файли в плейлист" + +msgid "Add more details to the crash log" +msgstr "Додати подробиці до крэш-логу" + +msgid "Add provider" +msgstr "Додати провайдера" + +msgid "Add recording (enter recording duration)" +msgstr "Почати запис (введіть тривалість запису)" + +msgid "Add recording (enter recording endtime)" +msgstr "Почати запис (Введіть час закінчення)" + +msgid "Add recording (indefinitely)" +msgstr "Почати запис (закінчення не визначено)" + +msgid "Add recording (stop after current event)" +msgstr "Почати запис (стоп після поточного події)" + +msgid "Add service" +msgstr "Додати сервіс" + +msgid "Add timer" +msgstr "Додати таймер" + +msgid "Add title" +msgstr "Додати назву" + +msgid "Add to bouquet" +msgstr "Додати в пакет" + +msgid "Add to favourites" +msgstr "Додати в фаворити" + +msgid "Add/remove change timer for current event" +msgstr "" + +msgid "Adjust 3D settings" +msgstr "Встоновіть налаштування 3D" + +msgid "Adjust the color settings so that all the color shades are distinguishable, but appear as saturated as possible. If you are happy with the result, press OK to close the video fine-tuning, or use the number keys to select other test screens." +msgstr "Налаштуйте параметри кольору, так щоб всі відтінки кольорів були максимально видно, наскільки це можливо. Якщо ви задоволені результатом, натисніть кнопкуОК для закриття відео налаштувань, або використовуйте цифрові клавіші для виборуінших тестів екрану " + +msgid "Advanced" +msgstr "" + +msgid "Advanced options" +msgstr "Розширені опції" + +msgid "Advanced restore" +msgstr "Розширене відновлення" + +msgid "Advanced software" +msgstr "Розширене відновлення" + +msgid "Advanced software plugin" +msgstr "Розширений плагін софта" + +msgid "Advanced video enhancement setup" +msgstr "Меню додаткових відео налаштувань" + +msgid "Advanced video setup" +msgstr "Розширена настройка відео" + +msgid "After event" +msgstr "Після події" + +msgid "Album" +msgstr "Альбом" + +msgid "Alignment of events" +msgstr "Вирівнювання подій" + +msgid "Alignment of service names" +msgstr "Вирівнювання імені сервісу" + +msgid "All" +msgstr "Все" + +msgid "All ages" +msgstr "Всі категорії" + +msgid "All satellites 1 (USALS)" +msgstr "" + +msgid "All satellites 2 (USALS)" +msgstr "" + +msgid "All satellites 3 (USALS)" +msgstr "" + +msgid "All satellites 4 (USALS)" +msgstr "" + +msgid "Allocate" +msgstr "Виділити" + +msgid "Allocate unused memory index" +msgstr "Виділити невикористовуваний номер пам'яті" + +msgid "Allow quit movieplayer with exit" +msgstr "Дозволити вийти з відеоплеєра кнопкою вихід" + +msgid "Allow subtitle language to equal audio language" +msgstr "Показувати субтитри при збігу з мовою Аудіо" + +msgid "Allow subtitles for hearing impaired" +msgstr "Субтитри для людей з ослабленим слухом" + +msgid "Alpha" +msgstr "Прозорість" + +msgid "Alternative" +msgstr "Альтернативний DNS" + +msgid "Alternative numbering mode" +msgstr "Альтернативний режим нумерації каналів" + +msgid "Alternative services tuner priority" +msgstr "Пріоритет тюнера в альтернативних сервісах" + +msgid "Always ask" +msgstr "Завжди питати" + +msgid "Always hide infobar" +msgstr "" + +msgid "An empty filename is illegal." +msgstr "Порожнє ім'я неприпустимо." + +msgid "An error occurred while downloading the packetlist. Please try again." +msgstr "Помилка завантаження списку пакетів. Будь ласка, спробуйте ще раз." + +msgid "An unknown error occurred!" +msgstr "Невідома помилка!" + +msgid "And will put your receiver in standby over " +msgstr "І переведе ваш ресивер в Режим Очікування через " + +msgid "Any activity" +msgstr "Будь яка активність" + +msgid "Arabic" +msgstr "Арабський" + +msgid "Are you sure to remove this entry?" +msgstr "" + +msgid "" +"Are you sure you want to activate this network configuration?\n" +"\n" +msgstr "" +"Ви впевнені, що хочете активувати цю конфігурацію мережі?\n" +"\n" + +msgid "" +"Are you sure you want to delete\n" +"the following backup:\n" +msgstr "" +"Ви впевнені, що хочете видалити\n" +"следующий бекап:\n" + +msgid "Are you sure you want to exit this wizard?" +msgstr "Ви впевнені, що хочете вийти з цього майстра?" + +msgid "" +"Are you sure you want to restart your network interfaces?\n" +"\n" +msgstr "" +"Ви впевнені, що хочете перезавантажити мережеві інтерфейси?\n" +"\n" + +#, python-format +msgid "" +"Are you sure you want to restore\n" +"the following backup:\n" +"%s\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Ви впевнені, що хочете відновити цей бекап:\n" +"%s\n" +"Ваш ресивер буде перезавантажений після відновлення!" + +msgid "" +"Are you sure you want to restore the backup?\n" +"Your receiver will restart after the backup has been restored!" +msgstr "" +"Ви впевнені, що хочете відновити бекап?\n" +"Ваш ресивер буде перезавантажений після відновлення!" + +msgid "Artist" +msgstr "Артист" + +msgid "Arts/Culture" +msgstr "Мистецтво / Культура" + +msgid "Ask user" +msgstr "Запитати користувача" + +msgid "Aspect ratio" +msgstr "Співвідношення сторін" + +msgid "Assigned CAIds:" +msgstr "Призначено CAID:" + +msgid "Assigned services/provider:" +msgstr "Призначено канали / провайдери:" + +msgid "At beginning" +msgstr "На початку" + +msgid "At end" +msgstr "В кінці" + +msgid "Audio" +msgstr "Аудіо" + +msgid "Audio PID" +msgstr "Аудіо PID" + +msgid "Audio language selection 1" +msgstr "Вибір мови Аудіо 1" + +msgid "Audio language selection 2" +msgstr "Вибір мови Аудіо 2" + +msgid "Audio language selection 3" +msgstr "Вибір мови Аудіо 3" + +msgid "Audio language selection 4" +msgstr "Вибір мови Аудіо 4" + +msgid "Audio options..." +msgstr "Налаштування Аудіо..." + +#, python-format +msgid "Audio track (%s) format" +msgstr "Звукова доріжка (%s) формат" + +#, python-format +msgid "Audio track (%s) language" +msgstr "Звукова доріжка (%s) мова" + +msgid "Author: " +msgstr "Автор: " + +msgid "Authoring mode" +msgstr "Режим авторизації" + +#. TRANSLATORS: (aspect ratio policy: always try to display as fullscreen, when there is no content (black bars) on left/right, even if this breaks the aspect. +msgid "Auto" +msgstr "Авто" + +msgid "Auto chapter split every ? minutes (0=never)" +msgstr "Автоматично розділяти на розділи кожні ? хвилин (0 = ніколи)" + +msgid "Auto flesh" +msgstr "Авто flesh" + +msgid "Auto focus" +msgstr "Автофокусування" + +msgid "Auto focus commencing ..." +msgstr "Автофокусування почалося ..." + +msgid "Auto language selection" +msgstr "Авто вибір мови" + +msgid "Auto scart switching" +msgstr "Автоматичне перемикання SCART" + +msgid "Automatic" +msgstr "Автоматично" + +msgid "Automatic scan" +msgstr "Автоматичний пошук" + +msgid "Automatically start timeshift after" +msgstr "Автоматический старт таймшифта через" + +msgid "Automatically turn on external subtitles" +msgstr "Автоматичне включення зовнішніх субтитрів" + +msgid "Available format variables" +msgstr "Доступні формати перемінних" + +msgid "B" +msgstr "B" + +msgid "BER" +msgstr "BER" + +msgid "BER:" +msgstr "BER:" + +msgid "Back" +msgstr "Назад" + +msgid "Background" +msgstr "Фон" + +msgid "Background color" +msgstr "Колір фону" + +msgid "Background delete option" +msgstr "Видалення у фоновому режимі" + +msgid "Background delete speed" +msgstr "Швидкість видалення у фоновому режимі" + +msgid "Backup completed." +msgstr "Бекап завершено." + +msgid "Backup failed." +msgstr "Збереження не вдалося." + +msgid "Backup is running..." +msgstr "Виконується збереження налаштувань..." + +msgid "Backup system settings" +msgstr "Бекап системних налаштувань" + +msgid "Band" +msgstr "Діапазон" + +msgid "Bandwidth" +msgstr "Пропускна здатність" + +msgid "Basque" +msgstr "Баскський" + +msgid "Begin time" +msgstr "Час початку" + +msgid "Behavior of 'pause and ok' when paused" +msgstr "" + +msgid "Behavior of 0 key in PiP-mode" +msgstr "Поведінка кнопки 0 в режимі PiP" + +msgid "Behavior when a movie is started" +msgstr "Поведінка при початку відтв. відео" + +msgid "Behavior when a movie is stopped" +msgstr "Поведінка при зупинці відтв. відео" + +msgid "Behavior when a movie reaches the end" +msgstr "Поведінка при закінченні відео" + +msgid "Big PiP" +msgstr "" + +msgid "Bitrate:" +msgstr "Бітрейт:" + +msgid "Black screen" +msgstr "Чорний екран" + +msgid "Black screen till locked" +msgstr "Чорний екран-заблоковано" + +msgid "Block noise reduction" +msgstr "Зниження блокових шумів" + +msgid "Blue boost" +msgstr "Додати синій" + +msgid "Bookmarks" +msgstr "Закладки" + +msgid "Brightness" +msgstr "Яскравість" + +msgid "Bulgarian" +msgstr "Угорська" + +msgid "Burn DVD" +msgstr "Пропалити DVD" + +#, python-format +msgid "Burn audio track (%s)" +msgstr "Пропалити Аудіо дорожку (%s)" + +msgid "Burn existing image to DVD" +msgstr "Пропалити існуючий образ на DVD" + +msgid "Burn to DVD" +msgstr "Пропалити на DVD" + +msgid "Bus: " +msgstr "Шина:" + +msgid "By default, SNR will be shown in dB (when supported by the tuner). This setting forces SNR to be shown as a percentage instead." +msgstr "За замовчуванням, SNR показується в дБ (якщо підтримує тюнер). при включенні параметра SNR буде показуватися у відсотках." + +msgid "C" +msgstr "С" + +msgid "C-Band" +msgstr "C-Діапазон" + +msgid "CH" +msgstr "" + +msgid "CI assignment" +msgstr "Призначення CI" + +msgid "CVBS" +msgstr "CVBS" + +msgid "Cable" +msgstr "Кабельне ТБ" + +msgid "Cable Scan" +msgstr "Кабельне сканування" + +msgid "Cache thumbnails" +msgstr "Кешувати Ескізи" + +msgid "Calculate" +msgstr "Розрахунок" + +msgid "Calculate all positions" +msgstr "Розрахувати всі позиції" + +msgid "Calculation complete" +msgstr "Розрахунок закінчено" + +msgid "Calibrate" +msgstr "Калібрування" + +msgid "Can be used for different fps between external subtitles and video." +msgstr "Може бути використаний для набору кадрів в секунду між зовнішніми субтитрами і відео." + +msgid "Cancel" +msgstr "Відмінити" + +msgid "Cannot determine" +msgstr "Неможливо визначити" + +msgid "Cannot find any signal ..., aborting !" +msgstr "Не можу знайти будь-який сигнал ..., перериваємо !" + +msgid "Cannot move files on a different disk or system to the trash can" +msgstr "Неможливо перемістити файли на різних дисках або в системі в кошик" + +msgid "Cannot move to trash can" +msgstr "Неможливо перемістити в кошик" + +msgid "Capacity: " +msgstr "Ємність: " + +msgid "Card" +msgstr "Карта" + +msgid "Cascade PiP" +msgstr "" + +msgid "Center DVB subtitles" +msgstr "Субтитри DVB по центру" + +msgid "Center time-labels and remove date" +msgstr "Відмітка часу по центру без дати" + +msgid "Change bouquets in quickzap" +msgstr "Змінити букети при швидкому перемиканні" + +msgid "Change pin code" +msgstr "Змінити PIN-код" + +msgid "Change recording (duration)" +msgstr "Змінити запис (тривалість)" + +msgid "Change recording (endtime)" +msgstr "Змінити запис (закінчення)" + +msgid "Change repeat and delay settings?" +msgstr "Змінити налаштування затримки і повтору?" + +msgid "Change service PIN" +msgstr "Змінити PIN-код сервісу" + +msgid "Change service PINs" +msgstr "Змінити PIN-коди сервісів" + +msgid "Change setup PIN" +msgstr "Змінити PIN-код налаштувань" + +msgid "Change step size" +msgstr "Зміна розміру кроку" + +msgid "Change timer" +msgstr "" + +msgid "Changelog" +msgstr "Зміни" + +msgid "Channel" +msgstr "Канал" + +msgid "Channel list type" +msgstr "Тип списку каналів" + +msgid "Channel not in services list" +msgstr "Каналу немає в списку сервісів" + +msgid "Channel selection" +msgstr "Селектор каналів" + +msgid "Channel:" +msgstr "Канал:" + +msgid "Channellist menu" +msgstr "Меню списка каналів" + +msgid "Chap." +msgstr "Розділ." + +msgid "Chapter" +msgstr "Розділ" + +msgid "Chapter:" +msgstr "Розділ:" + +msgid "Check" +msgstr "Перевірка" + +msgid "Check the internet connection" +msgstr "Перевірте інтернет-з'єднання" + +msgid "Check the internet connection again" +msgstr "Перевірте інтернет-з'єднання знову" + +msgid "Checking filesystem..." +msgstr "Перевірка Файлової системи..." + +msgid "Checking the internet connection" +msgstr "Перевірка інтернет з'єднання" + +#, python-format +msgid "" +"Checking tuner %d\n" +"DiSEqC port %s for %s" +msgstr "" +"Перевірка тюнера %d\n" +"DiSEqC порт %s для %s" + +msgid "Children/Youth" +msgstr "Діти / Молодь" + +msgid "Choose which tuner to configure." +msgstr "Виберіть тюнер для налаштування." + +msgid "Circular left" +msgstr "Кругова ліва" + +msgid "Circular right" +msgstr "Кругова права" + +msgid "Cleanup" +msgstr "Очистити" + +msgid "Clear" +msgstr "Очистка" + +msgid "Clear before scan" +msgstr "Очистка перед скануванням" + +msgid "Clear fixed" +msgstr "Очистка Фіксованого" + +msgid "Clear log" +msgstr "Очистити лог" + +msgid "Clear playlist" +msgstr "Очистити список відтворення" + +msgid "Close" +msgstr "Закрити" + +msgid "Close PiP on exit" +msgstr "Закрити PiP кнопкою вихід" + +msgid "Close title selection" +msgstr "Закрити вибір назв" + +msgid "Code rate HP" +msgstr "Швидкість кодування HP" + +msgid "Code rate LP" +msgstr "Швидкість кодування LP" + +msgid "Coderate HP" +msgstr "Швидкість кодування HP" + +msgid "Coderate LP" +msgstr "Швидкість кодування LP" + +msgid "Collection name" +msgstr "Назва колекції" + +msgid "Collection settings" +msgstr "Налаштування колекції" + +msgid "Color format" +msgstr "Формат кольору" + +msgid "Command execution..." +msgstr "Виконання команди..." + +msgid "Command order" +msgstr "Послідовність команд" + +msgid "Common Interface" +msgstr "Інтерфейс модулів" + +msgid "Common Interface assignment" +msgstr "Інтерфейс налаштувань модулів" + +msgid "Communication" +msgstr "Зв'язок" + +msgid "Compact flash" +msgstr "Компакт-флэш" + +msgid "Complete" +msgstr "Повний" + +msgid "Complex (allows mixing audio tracks and aspects)" +msgstr "Комплекс (мікш звук. доріжок і розд.здатн. відео)" + +msgid "Composition of the recording filenames" +msgstr "Зміст назв файлів записів" + +msgid "Configuration mode" +msgstr "Режим конфігурації" + +#, python-format +msgid "Configuration mode: %s" +msgstr "Режим конфігурації: %s" + +msgid "Configuration..." +msgstr "Конфігурація..." + +msgid "Configure an additional delay to improve external subtitle synchronisation." +msgstr "Налаштування додаткової затримки для поліпшення синхронізації зовнішніхсубтитрів." + +msgid "Configure an additional delay to improve subtitle synchronisation." +msgstr "Налаштування додаткової затримки для поліпшення синхронізації субтитрів." + +msgid "Configure for how long the infobar will remain visible after activation." +msgstr "Вкажіть, як довго інфобар залишатиметься видимим після його активації." + +msgid "Configure for how many minutes finished events should remain visible in the EPG. Useful when you need information about an event which has just finished, or has been delayed." +msgstr "Дозволяє показати дані EPG про минулі події. Зручно коли хочетезнати щось про передачу, яка ось-ось закінчиться або тільки щозакінчилася (у хвилинах)." + +msgid "Configure how recording filenames are constructed." +msgstr "Налаштування способу складання імен записуваних файлів." + +msgid "Configure how the fan should operate" +msgstr "" + +msgid "Configure if and how crypto icons will be shown in the channel selection list." +msgstr "" + +msgid "Configure if and how long the latest service in the PiP will be remembered." +msgstr "" + +msgid "Configure if and how service type icons will be shown in the channel selection list." +msgstr "" +"Налаштування відображення іконки типу сервісу в\n" +"списку каналів" + +msgid "Configure if and how wide columns will be shown in the channel selection list." +msgstr "" + +msgid "Configure if service picons will be shown in the channel selection list." +msgstr "Налаштування відображення піконів в списку каналів " + +msgid "Configure interface" +msgstr "Налаштування інтерфейсу" + +msgid "Configure nameservers" +msgstr "Налаштування DNS" + +msgid "Configure on which devices the background delete option should be used." +msgstr "Вкажіть, на яких пристроях слід використовувати опцію фонового видалення." + +msgid "Configure remote control type" +msgstr "Вибір пульта Д/У" + +msgid "Configure the DiSEqC mode for this LNB." +msgstr "Налаштуйте режим DiSEqC для этой LNB." + +msgid "Configure the IP address." +msgstr "Налаштування IP-адреси." + +msgid "Configure the aspect ratio of the screen." +msgstr "Налаштування співвідношення сторін екрану." + +msgid "Configure the behavior of the 'pause and ok' key when movie playback is already paused." +msgstr "" + +msgid "Configure the behavior when movie playback is manually stopped." +msgstr "Вкажіть, що робити коли відтворення зупинено вручну." + +msgid "Configure the behavior when movie playback is started." +msgstr "Вкажіть, що робити при початку відтворення." + +msgid "Configure the behavior when reaching the end of a movie, during movie playback." +msgstr "Вкажіть, що робити при закінченні відтворення." + +msgid "Configure the border width of the subtitles. The dark border makes the subtitles easier to read on a light background." +msgstr "Налаштуйте ширину кордону субтитрів. Темна грань робить субтитри легкочитаються на світлому фоні." + +msgid "Configure the brightness level of the front panel display during standby." +msgstr "Встановіть рівень яскравості дисплея в режимі очікування." + +msgid "Configure the brightness level of the front panel display." +msgstr "Встановіть рівень яскравості для нормальної роботи дисплея." + +msgid "Configure the color of the external subtitles, alternative (normal in white, italic in yellow, bold in cyan, underscore in green), white or yellow." +msgstr "Налаштуйте колір зовнішніх субтитрів, альтернативний (нормальний білий, жовтийкурсив, чітко блакитний, підкреслений зелений), білий або жовтий." + +msgid "Configure the color of the teletext subtitles." +msgstr "Налаштування кольору телетексту субтитрів." + +msgid "Configure the contrast level of the front panel display." +msgstr "Встановіть рівень контрастності для дисплея." + +msgid "Configure the cursor behaviour in the channel selection list. When opening the channel selection list you can keep on the current service or already select up/down and you are able to revert the B+/B- buttons." +msgstr "ПОТРІБЕН ПЕРЕКЛАД Configure the cursor behaviour in the channel selection list. When opening the channel selection list you can keep on the current service or already select up/down and you are able to revert the B+/B- buttons." + +msgid "Configure the duration in hours the receiver should go to standby when the receiver is not controlled." +msgstr "" + +msgid "Configure the duration in minutes for the screensaver." +msgstr "Налаштування тривалості в хвилинах для заставки (хранитель екрану)." + +msgid "Configure the duration in minutes for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +msgstr "" + +msgid "Configure the duration when the receiver should go to shut down in case the receiver is in standby mode." +msgstr "Налаштуйте тривалість часу для виключення ресивера, якщо ресиверзнаходиться в режимі очікування." + +msgid "Configure the first audio language (highest priority)." +msgstr "Налаштування першої мови Аудіо (найвищий пріоритет)" + +msgid "Configure the first subtitle language (highest priority)." +msgstr "Налаштування першої мови субтитрів (найвищий пріоритет)" + +msgid "Configure the font size of the subtitles." +msgstr "Налаштування розміру шрифту субтитрів." + +msgid "Configure the fourth audio language." +msgstr "Налаштування четвертої мови Аудіо." + +msgid "Configure the fourth subtitle language." +msgstr "Налаштування четвертої мови субтитрів." + +msgid "Configure the function of a long press on the power button." +msgstr "Встановлення функції довгого натискання кнопки живлення." + +msgid "Configure the function of a short press on the power button." +msgstr "Встановлення функції короткого натискання кнопки живлення." + +msgid "Configure the function of the '0' button do when PIP is active." +msgstr "Налаштуйте функцію кнопки '0 'коли вікно PIP активно." + +msgid "Configure the gateway." +msgstr "Ви можете налаштувати шлюз." + +msgid "Configure the general audio delay of Dolby Digital sound tracks." +msgstr "Налаштування загальної затримки звукових доріжок зі звуком Dolby Digital." + +msgid "Configure the general audio delay of stereo sound tracks." +msgstr "Налаштування загальної затримки звукових доріжок зі стереозвуком." + +msgid "Configure the hard disk drive to go to standby after the specified idle time." +msgstr "Налаштування жорсткого диска, щоб перевести в Режим Очікування післяпевного часу простою." + +msgid "Configure the horizontal alignment of the subtitles." +msgstr "Налаштування горизонтального вирівнювання субтитрів." + +msgid "Configure the initial fast forward speed. When you press the fast forward button, winding will start at this speed." +msgstr "Виберіть початкову швидкість перемотування вперед." + +msgid "Configure the initial rewind speed. When you press the rewind button, winding will start at this speed." +msgstr "Виберіть початкову швидкість перемотування назад." + +msgid "Configure the latitude of your location." +msgstr "Встановіть довготу вашого місця розташування." + +msgid "Configure the longitude of your location." +msgstr "Встановити широту вашого місця розташування." + +msgid "Configure the minimum amount of disk space to be available for recordings. When the amount of space drops below this value, deleted items will be removed from the trash can." +msgstr "Налаштування мінімального обсягу дискового простору, що має бутидоступно для запису. Коли кількість простору падає нижче цьогозначення, записи будуть видалені з корзини." + +msgid "Configure the nameserver (DNS)." +msgstr "Ви можете встановити ім'я сервера." + +msgid "Configure the netmask." +msgstr "Ви можете задати мережеву маску." + +msgid "Configure the number of days after which items are automaticaly removed from the trash can." +msgstr "Встановлення кількості днів, через які записи будуть автоматично видаленіз кошика" + +msgid "Configure the number of days old timers are kept before they are automatically removed from the timer list." +msgstr "Встановлення кількості днів, для зберігання старих таймерів і потімавтоматичного видалення зі списку таймерів." + +msgid "Configure the offline decoding delay in milliseconds. The configured delay is observed at each control word parity change." +msgstr "Налаштування затримки оффлайн-декодування в мілісекундах" + +msgid "Configure the possible fast forward speeds." +msgstr "Налаштування можливих швидкостей при перемотці вперед." + +msgid "Configure the possible rewind speeds." +msgstr "Налаштування можливих швидкостей при перемотуванню назад." + +msgid "Configure the primary EPG language." +msgstr "Налаштування основної мови EPG." + +msgid "Configure the refresh rate of the screen." +msgstr "Налаштування частоти оновлення екрану." + +msgid "Configure the screen resolution in PC output mode." +msgstr "Налаштування роздільної здатності екрану в режимі ПК вихід." + +msgid "Configure the second audio language." +msgstr "Налаштування другої мови Аудіо" + +msgid "Configure the second subtitle language." +msgstr "Налаштування другої мови субтитрів" + +msgid "Configure the secondary EPG language." +msgstr "Налаштування другої мови EPG." + +msgid "Configure the sharpness of the video scaling." +msgstr "Налаштування різкості масштабування відео." + +msgid "Configure the skip time interval for the '1'/'3' buttons." +msgstr "Налаштуйте час пропуску при натисканні клавіш '1'/'3'" + +msgid "Configure the skip time interval for the '4'/'6' buttons." +msgstr "Налаштуйте час пропуску при натисканні клавіш'4'/'6'" + +msgid "Configure the skip time interval for the '7'/'9' buttons." +msgstr "Налаштуйте час пропуску при натисканні клавіш '7'/'9'" + +msgid "Configure the slow motion speeds." +msgstr "Налаштування низьких швидкостей." + +msgid "Configure the source of the frontend data as shown on the infobars. 'Settings' is as stored on the settings. 'Tuner' is as reported by the tuner." +msgstr "" + +msgid "Configure the speed of the background deletion process. Lower speed will consume less hard disk drive performance." +msgstr "Налаштування швидкості процесу видалення у фоновому режимі. Низька швидкість будемати менший вплив на продуктивність жорсткого диска." + +msgid "Configure the speed of the fan" +msgstr "" + +msgid "Configure the subtitle delay when timing information is not available." +msgstr "Налаштуйте затримку субтитрів, коли Информація про час недоступна." + +msgid "Configure the third audio language." +msgstr "Налаштування третьої мови Аудіо" + +msgid "Configure the third subtitle language." +msgstr "Налаштування третьої мови субтитрів" + +msgid "Configure the transparency of the OSD." +msgstr "Налаштування прозорості екранного меню." + +msgid "Configure the transparency of the black background of graphical DVB subtitles." +msgstr "Налаштування прозорості на чорному фоні графічних субтитрів DVB." + +msgid "Configure the tuner mode." +msgstr "Встановіть режим тюнера." + +msgid "Configure the type of status indication icons shown in the movielist." +msgstr "Налаштування виду значків індикації стану, при показі в списку фільмів." + +msgid "Configure the vertical position of the subtitles, measured from the bottom of the screen." +msgstr "Налаштування вертикального положення субтитрів, вимірюється від нижньої частиниекрану." + +msgid "Configure the video output mode (or resolution)." +msgstr "Налаштування режиму відеовиходу (або роздільної здатності)." + +msgid "Configure the way in which the receiver changes channels." +msgstr "Налаштуйте поведінку ресивера при перемиканні каналів." + +msgid "Configure where completed timers show up in the timer list." +msgstr "Вкажіть, в якому місці списку таймерів повинні знаходитися завершені завдання." + +msgid "Configure whether (and for how long) a second infobar will be shown when OK is pressed twice. The second infobar contains additional information about the current channel." +msgstr "Чи потрібно показати (і як довго) другий інфобар при натисканні кнопки OK двічі.Другий інфобар містить додаткову інформацію про поточний канал." + +msgid "Configure whether multi channel sound tracks should be downmixed to stereo." +msgstr "Виберіть, чи слід багатоканальну звукову доріжку декодувати в стереозвук." + +msgid "Configure whether or not an icon should be shown when your motorized dish is moving." +msgstr "Виберіть, чи потрібно показати іконку при русі антени з мотопідвісом." + +msgid "Configure which access level to use for the configuration menu. Expert level gives access to all items." +msgstr "Налаштування рівня доступу для використання в меню конфігурації. Експертний рівень дає доступ до інших елементів." + +msgid "Configure which color format should be used on the SCART output." +msgstr "Вкажіть, який формат кольору повинен використовуватися на виході SCART." + +msgid "Configure which tuner for recordings will be preferred, when more than one tuner is available." +msgstr "Вкажіть який тюнер буде переважнішим для запису, коли більше ніж один тюнер доступний." + +msgid "Configure which tuner type will be preferred, when the same service is available on different types of tuners." +msgstr "Вкажіть, який тип тюнера переважніший, якщо сервіс доступний нарізних типах тюнерів." + +msgid "Configure which tuner will be preferred, when more than one tuner is available. If set to 'auto' the system will give priority to the tuner having the lowest number of channels/satellites." +msgstr "Вкажіть, який тюнер переважніший, якщо доступні кілька тюнерів. Якщовстановлено значення 'Авто', то система буде віддавати пріоритет тюнера з найменшим числом каналів / супутників." + +msgid "Configure your internal LAN" +msgstr "Налаштування LAN" + +msgid "Configure your network again" +msgstr "Повторити настройку мережі" + +msgid "Configure your network settings, and press OK to start the scan" +msgstr "Налаштуйте параметри мережі, а потім натисніть OK, щоб почати пошук" + +msgid "Configure your wireless LAN again" +msgstr "Повторити налаштування бездротової мережі" + +msgid "Configures which video output connector will be used." +msgstr "Вкажіть, який роз'єм відеовиходу буде використаний." + +msgid "Configuring" +msgstr "Налаштування" + +msgid "Conflicting timer" +msgstr "Конфлікт таймерів" + +msgid "Connect" +msgstr "Підключити" + +msgid "Connect to a wireless network" +msgstr "" + +msgid "Connected satellites" +msgstr "" + +msgid "Connected to" +msgstr "Підключено до" + +msgid "Connected!" +msgstr "Підключено!" + +msgid "Constellation" +msgstr "Сузір'я" + +msgid "Content does not fit on DVD!" +msgstr "Зміст не поміщається на DVD!" + +msgid "Continue" +msgstr "Продовжити" + +msgid "Continue in background" +msgstr "Продовжити у фоновому режимі" + +msgid "Continue playback" +msgstr "Продовжити відтворення" + +msgid "Continue playing" +msgstr "Продовжити відтворення" + +msgid "Continues play (loop)" +msgstr "Продовжити відтв. (цикл)" + +msgid "Contrast" +msgstr "Контрастність" + +msgid "Convert ext3 filesystem to ext4" +msgstr "Конвертер з ext3 в ext4" + +msgid "Convert ext3 to ext4" +msgstr "Конвертер з ext3 в ext4" + +msgid "Converting ext3 to ext4..." +msgstr "Конвертер з ext3 в ext4..." + +msgid "Copy" +msgstr "Копіювання" + +msgid "Could not connect to receiver .NFI image feed server:" +msgstr "Не вдалося підключитися до ресивера. NFI імідж сервер фіду:" + +msgid "Could not find installed channel list." +msgstr "Неможливо відкрити список каналів." + +msgid "Could not load medium! No disc inserted?" +msgstr "Не вдалося завантажити носій! Перевірте, чи вставлений диск?" + +msgid "Could not open Picture in Picture" +msgstr "Неможливо відкрити картинку в картинці" + +#, python-format +msgid "Could not record due to conflicting timer %s" +msgstr "Ззапис неможливий - конфлікт таймерів %s" + +#, python-format +msgid "Could not record due to invalid service %s" +msgstr "Запис неможливий - недійсний сервіс %s" + +msgid "Create DVD-ISO" +msgstr "Створити DVD-ISO" + +msgid "Create more detailed crash log" +msgstr "Записувати деталі в креш-лог" + +#, python-format +msgid "Creating directory %s failed." +msgstr "Не вдалося створити каталог %s" + +msgid "Creating filesystem" +msgstr "Створення файлової системи" + +msgid "Creating partition" +msgstr "Створення розділів" + +msgid "Croatian" +msgstr "Хорватський" + +msgid "Current CEC address" +msgstr "" + +msgid "Current device: " +msgstr "Поточний пристрій:" + +msgid "Current event EPG" +msgstr "Поточна подія EPG" + +#, python-format +msgid "Current mode: %s \n" +msgstr "" + +msgid "Current settings:" +msgstr "Поточні налаштування:" + +msgid "Current transponder" +msgstr "Поточний транспондер" + +msgid "Current value: " +msgstr "Поточне значення: " + +msgid "Current version:" +msgstr "Поточна версія:" + +msgid "Currently installed image" +msgstr "Поточний встановлений імідж" + +msgid "Currently the commit log cannot be retrieved - please try later again" +msgstr "" + +msgid "Custom skip time for '1'/'3' buttons" +msgstr "Час пропуску для кнопок '1'/'3'" + +msgid "Custom skip time for '4'/'6' buttons" +msgstr "Час пропуску для кнопок '4'/'6'" + +msgid "Custom skip time for '7'/'9' buttons" +msgstr "Час пропуску для кнопок '7'/'9'" + +msgid "Customize" +msgstr "Індивідуальні налаштування" + +msgid "Customize channel list cursor behavior" +msgstr "Поведінк курсора списку каналів " + +msgid "Cut" +msgstr "Урізати" + +msgid "Cutlist editor..." +msgstr "Відео редактор..." + +msgid "Czech" +msgstr "Чешський" + +msgid "D" +msgstr "D" + +msgid "DHCP" +msgstr "DHCP" + +msgid "DMM advanced" +msgstr "DMM розширений" + +msgid "DMM normal" +msgstr "DMM нормальний" + +msgid "DUAL LAYER DVD" +msgstr "Двошаровий DVD" + +msgid "DVB subtitle black transparency" +msgstr "Чорна прозорість DVB субтитрів" + +msgid "DVB-C" +msgstr "DVB-C" + +msgid "DVB-C ANNEX C" +msgstr "DVB-C ANNEX C" + +msgid "DVB-S" +msgstr "DVB-S" + +msgid "DVB-S2" +msgstr "DVB-S2" + +msgid "DVB-T" +msgstr "DVB-T" + +msgid "DVB-T2" +msgstr "DVB-T2" + +msgid "DVD data format" +msgstr "Відеоформат" + +msgid "DVD file browser" +msgstr "Повернутися в провідник" + +msgid "DVD media toolbox" +msgstr "DVD медіа-інструменти" + +msgid "DVD player" +msgstr "DVD плеєр" + +msgid "DVD titlelist" +msgstr "білий список" + +msgid "Danish" +msgstr "Датський" + +msgid "Date" +msgstr "Дата" + +msgid "Date/time input" +msgstr "Введення Час/Дата " + +msgid "Deep standby" +msgstr "Глубокий Режим очікування" + +msgid "Default" +msgstr "За замовчуванням" + +msgid "Default movie location" +msgstr "Місце записів за замовчуванням" + +msgid "Default settings" +msgstr "Налаштування за замовчуванням" + +msgid "Delay before key repeat starts:" +msgstr "Затримка між стартом повтору:" + +msgid "Delay for external subtitles" +msgstr "Затримка для зовнішніх субтитрів" + +msgid "Delete" +msgstr "Видалити" + +msgid "Delete entry" +msgstr "Видалити вибране" + +msgid "Delete failed!" +msgstr "Неможливо видалити!" + +msgid "Delete file" +msgstr "Видалити файл" + +msgid "Delete playlist entry" +msgstr "Видалити запис з плейлиста" + +msgid "Delete saved playlist" +msgstr "Видалити збережений плейлист" + +msgid "Delete timer" +msgstr "" + +msgid "Delete..." +msgstr "Видалити..." + +msgid "Deleted" +msgstr "Видалено" + +msgid "Deleted items" +msgstr "Видалені" + +msgid "Depth" +msgstr "Глубина" + +msgid "Descramble http streams" +msgstr "Декодувати http стрім" + +msgid "Description" +msgstr "Опис" + +msgid "Deselect" +msgstr "Скасувати" + +msgid "Details for plugin: " +msgstr "Детальніше про плагін: " + +msgid "Detected HDD:" +msgstr "Знайдено HDD:" + +msgid "Detected NIMs:" +msgstr "Знайдено тюнер:" + +msgid "Devicename:" +msgstr "Ім'я пристрою:" + +msgid "Devide" +msgstr "" + +msgid "DiSEqC" +msgstr "DiSEqC" + +msgid "DiSEqC 1.0 command" +msgstr "" + +msgid "DiSEqC 1.1 command" +msgstr "" + +msgid "DiSEqC 1.1 repeats" +msgstr "" + +msgid "DiSEqC A/B" +msgstr "DiSEqC A/B" + +msgid "DiSEqC A/B/C/D" +msgstr "DiSEqC A/B/C/D" + +msgid "DiSEqC mode" +msgstr "DiSEqC режим" + +#, python-format +msgid "DiSEqC port %s: %s" +msgstr "DiSEqC порт %s: %s" + +msgid "DiSEqC-tester settings" +msgstr "Тест налаштувань DiSEqC" + +msgid "Dialing:" +msgstr "Набір номеру:" + +msgid "Digital contour removal" +msgstr "Цифрове видалення контуру" + +msgid "Direct playback of linked titles without menu" +msgstr "Відтворювати пов'язані назви без меню" + +msgid "Directory" +msgstr "Каталог" + +#, python-format +msgid "Directory %s does not exist." +msgstr "Каталог %s відсутній." + +#, python-format +msgid "Directory %s nonexistent." +msgstr "" + +msgid "Directory browser" +msgstr "Директорія браузера" + +#, python-format +msgid "Directory contains %d file(s) and %d sub-directories.\n" +msgstr "" + +#, python-format +msgid "Directory contains %s and %s." +msgstr " Директорія містить %s и %s." + +msgid "Disable" +msgstr "Відключити" + +msgid "Disable Picture in Picture" +msgstr "Відключити картинку в картинці" + +msgid "Disable background scanning" +msgstr "Відключити фонове сканування" + +msgid "Disable timer" +msgstr "" + +msgid "Disabled" +msgstr "Відключений" + +msgid "Disconnect" +msgstr "Відключити" + +msgid "Disk space to reserve for recordings (in GB)" +msgstr "Резервувати місце на диску для записів (в GB)" + +msgid "Display 16:9 content as" +msgstr "Показувати 16:9 контент як" + +msgid "Display 4:3 content as" +msgstr "Показувати 4:3 контент як" + +msgid "Display >16:9 content as" +msgstr "Показувати >16:9 контент як" + +msgid "Display and userinterface" +msgstr "Екран і інтерфейс" + +msgid "Display message before playing next movie" +msgstr "Повідомлення перед відтв. наступного запису" + +msgid "Display setup" +msgstr "Налаштування дисплея" + +msgid "Do not change" +msgstr "Не змінювати" + +msgid "Do not record" +msgstr "Не записувати" + +msgid "Do nothing" +msgstr "Нічого не робити" + +msgid "" +"Do you really want to check the filesystem?\n" +"This could take lots of time!" +msgstr "" +"Ви дійсно хочете перевірити файлову систему на помилки?\n" +"Це займе деякий час!" + +msgid "" +"Do you really want to convert the filesystem?\n" +"You cannot go back!" +msgstr "" +"Ви дійсно хочете перетворити файлову систему?\n" +"Ви не зможете повернутися назад!" + +#, python-format +msgid "Do you really want to delete %s?" +msgstr "Ви дійсно хочете видалити %s?" + +#, python-format +msgid "" +"Do you really want to download\n" +"the plugin \"%s\"?" +msgstr "" +"Ви дійсно бажаєте завантажити\n" +"плагін \"%s\"?" + +msgid "Do you really want to exit?" +msgstr "Ви дійсно хочете вийти?" + +msgid "" +"Do you really want to initialize the device?\n" +"All data on the disk will be lost!" +msgstr "" +"Ви дійсно хочете ініціалізувати пристрій?\n" +"Всі дані на диску будуть втрачені!" + +#, python-format +msgid "" +"Do you really want to remove\n" +"the plugin \"%s\"?" +msgstr "" +"Ви дійсно хочете видалити\n" +"плагін \"%s\"?" + +#, python-format +msgid "Do you really want to remove directory %s from the disk?" +msgstr "Ви дійсно хочете видалити каталог %s с диска?" + +#, python-format +msgid "Do you really want to remove your bookmark of %s?" +msgstr "Ви дійсно хочете видалити закладку %s?" + +msgid "Do you want this?" +msgstr "" + +msgid "Do you want to burn this collection to DVD medium?" +msgstr "Ви хочете пропалити цю колекцію на DVD носій?" + +msgid "Do you want to do a service scan?" +msgstr "Ви хочете почати сканування?" + +msgid "Do you want to do another manual service scan?" +msgstr "Ви хочете зробити ще одне ручне сканування?" + +#, python-format +msgid "Do you want to download the image to %s ?" +msgstr "Ви дійсно бажаєте завантажити імідж %s ?" + +msgid "Do you want to install a channel list?" +msgstr "Ви дійсно хочете встановити список каналів?" + +msgid "Do you want to install the package:\n" +msgstr "Ви хочете встановити пакет:\n" + +msgid "Do you want to play DVD in drive?" +msgstr "Ви хочете відтворити DVD в приводі?" + +msgid "Do you want to preview this DVD before burning?" +msgstr "Ви хочете переглянути DVD перед пропаленням?" + +msgid "Do you want to reboot your receiver?" +msgstr "Ви хочете перезавантажити ваш ресивер?" + +msgid "Do you want to remove the package:\n" +msgstr "Ви хочете видалити пакет:\n" + +msgid "Do you want to restore your settings?" +msgstr "Ви хочете відновити ваші установки?" + +msgid "Do you want to resume this playback?" +msgstr "Ви хочете продовжити відтворення?" + +#, python-format +msgid "Do you want to update your receiver to %s?" +msgstr "Ви хочете оновити ваш ресивер від %s?" + +msgid "Do you want to update your receiver?" +msgstr "Ви хочете оновити ваш ресивер?" + +msgid "Do you want to upgrade the package:\n" +msgstr "Ви хочете оновити пакети:\n" + +msgid "Don't stop current event but disable coming events" +msgstr "Не зупиняти поточну подію, але відключити наступні події" + +#, python-format +msgid "Done - Installed, upgraded or removed %d package (%s)" +msgid_plural "Done - Installed, upgraded or removed %d packages (%s)" +msgstr[0] "Виконано - Встановлено, оновлений або видалений %d пакет (%s)" +msgstr[1] "Виконано - Встановлено, оновлено або видалено %d пакета (%s)" +msgstr[2] "Виконано - Встановлено, оновлено або видалено %d пакетів (%s)" + +msgid "Download" +msgstr "Завантажити" + +#, python-format +msgid "Download %s from server" +msgstr "Завантажити %s з серверу" + +msgid "Download .NFI-files for USB-flasher" +msgstr "Завантажити .NFI-файли для USB-флешера" + +msgid "Download plugins" +msgstr "Завантажити плагіни" + +msgid "Downloadable new plugins" +msgstr "Доступні нові плагіни" + +msgid "Downloadable plugins" +msgstr "Доступні плагіни" + +msgid "Downloading" +msgstr "Завантаження" + +msgid "Downloading plugin information. Please wait..." +msgstr "Завантаження інформації про плагіни. чекайте..." + +msgid "Dutch" +msgstr "Нідерландський" + +msgid "Dynamic contrast" +msgstr "Динамічна контрастність" + +msgid "E" +msgstr "E" + +msgid "EPG" +msgstr "EPG" + +msgid "EPG language selection 1" +msgstr "Вибір мови EPG 1" + +msgid "EPG language selection 2" +msgstr "Вибір мови EPG 2" + +msgid "EPG selection" +msgstr "Вибір EPG" + +msgid "EPG settings" +msgstr "Налаштування EPG" + +#, python-format +msgid "ERROR - failed to scan (%s)!" +msgstr "Помилка - неможливе сканування (%s)!" + +msgid "East" +msgstr "Схід" + +msgid "East limit set" +msgstr "Включити обмеження на схід" + +msgid "Edit" +msgstr "Редагувати" + +msgid "Edit DNS" +msgstr "Змінити DNS" + +msgid "Edit bouquets list" +msgstr "Редагувати список фаворитів" + +msgid "Edit chapters of current title" +msgstr "Редагувати розділи поточного заголовка" + +msgid "Edit services list" +msgstr "Редагувати список сервісів" + +msgid "Edit settings" +msgstr "Змінити налаштування" + +msgid "Edit the nameserver configuration of your receiver.\n" +msgstr "Редагувати сервер DNS вашого ресивера.\n" + +msgid "Edit the network configuration of your receiver.\n" +msgstr "Редагувати конфігурацію мережі вашого ресивера.\n" + +msgid "Edit timer" +msgstr "" + +msgid "Edit title" +msgstr "Редагувати заголовок" + +msgid "Edit upgrade source url." +msgstr "Змінити URL-адресу джерела оновлення" + +msgid "Education/Science/..." +msgstr "Освіта / Наука /..." + +msgid "Electronic Program Guide" +msgstr "Електронний програмний гід" + +msgid "Enable" +msgstr "Увімкнути" + +msgid "Enable 'neutrino' style channel select controlling" +msgstr "" + +msgid "Enable 'neutrino' style zap controlling" +msgstr "" + +msgid "Enable 5V for active antenna" +msgstr "Увімкнути 5V для активної антени" + +msgid "Enable EIT EPG" +msgstr "Увімкнути EIT EPG" + +msgid "Enable MHW EPG" +msgstr "Увімкнути MHW EPG" + +msgid "Enable Netmed EPG" +msgstr "Увімкнути Netmed EPG" + +msgid "Enable OK for channel selection" +msgstr "" + +msgid "Enable ViaSat EPG" +msgstr "Увімкнути ViaSat EPG" + +msgid "Enable Virgin EPG" +msgstr "" + +msgid "Enable Wake On LAN" +msgstr "" + +msgid "Enable auto fast scan" +msgstr "" + +msgid "Enable bouquet selection in multi-EPG" +msgstr "Увімкнути вибір букетів при запуску мульти-ЕПГ" + +msgid "Enable freesat EPG" +msgstr "Увімкнути freesat EPG" + +msgid "Enable multiple bouquets" +msgstr "Дозволити мульти-букети" + +msgid "Enable parental control" +msgstr "Включити батьківський контроль" + +msgid "Enable teletext caching" +msgstr "Включити кешування телетексту" + +msgid "Enable zapping with CH+/-, B+/-, P+/-" +msgstr "" + +msgid "Enabled" +msgstr "Увімкнено" + +msgid "Encrypted: " +msgstr "Шифрування:" + +msgid "Encryption" +msgstr "Кодування" + +msgid "Encryption key" +msgstr "Ключ шифрування" + +msgid "Encryption key type" +msgstr "Тип ключа шифрування" + +msgid "Encryption:" +msgstr "Шифрование:" + +msgid "End time" +msgstr "Час закінчення" + +msgid "End time to ignore inactivity sleeptimer" +msgstr "Закінчення періоду ігнорування таймера неактивності" + +msgid "End time to ignore shutdown in standby" +msgstr "" + +msgid "English" +msgstr "Англійський" + +msgid "Enigma2 skin selector" +msgstr "селектор скінів Enigma2" + +msgid "Enter main menu..." +msgstr "Увійти в головне меню..." + +msgid "Enter pin code" +msgstr "Змінити PIN-код" + +msgid "Enter the service pin" +msgstr "Введіть PIN-код для сервісу" + +msgid "Equal to" +msgstr "" + +msgid "Error" +msgstr "Помилка" + +msgid "Error code" +msgstr "Код помилки" + +msgid "Error executing plugin" +msgstr "Помилка запуску плагіна" + +#, python-format +msgid "" +"Error: %s\n" +"Retry?" +msgstr "" +"Помилка: %s\n" +"Повторити?" + +msgid "Estonian" +msgstr "Эстонський" + +msgid "Ethernet network interface" +msgstr "Інтернет мережевий інтерфейс" + +msgid "Event font size (relative to skin size)" +msgstr "Розмір шрифту подій (стосовно скіну)" + +msgid "Event view" +msgstr "Огляд події" + +msgid "Event view menu" +msgstr "Меню огляду події..." + +msgid "Everywhere" +msgstr "Скрізь" + +msgid "Exceeds dual layer medium!" +msgstr "Перевищує двошаровий носій" + +msgid "Execution finished!!" +msgstr "Виконання закінчено!" + +msgid "Execution progress:" +msgstr "Процес виконання:" + +msgid "Exif" +msgstr "Exif" + +msgid "Exit" +msgstr "Вийти" + +msgid "Exit EPG" +msgstr "Вихід із EPG" + +msgid "Exit editor" +msgstr "Вийти из редактора" + +msgid "Exit input device selection." +msgstr "Вихід з вибору пристрою введення" + +msgid "Exit media player?" +msgstr "Вихід з медіаплеєру?" + +msgid "Exit mediaplayer" +msgstr "Закрити медіаплеєр" + +msgid "Exit movie list" +msgstr "Закрити список фільмів" + +msgid "Exit movie player?" +msgstr "Вийти з відеоплеєра?" + +msgid "Exit nameserver configuration" +msgstr "Закрити конфігуратор DNS" + +msgid "Exit network interface list" +msgstr "Закрити список мережевих інтерфейсів" + +msgid "Exit network wizard" +msgstr "Вийти з майстра" + +msgid "Exit the wizard" +msgstr "Вийти з майстра установок" + +msgid "Expert" +msgstr "Експерт" + +msgid "Extend sleeptimer 15 minutes" +msgstr "Додати до таймера сну 15 хвилин" + +msgid "Extended Software" +msgstr "Розширений лог" + +msgid "Extended Software Plugin" +msgstr "Розширений плагін налаштувань мережі..." + +msgid "Extended network setup plugin..." +msgstr "Розширений плагін налаштувань мережі..." + +msgid "Extended setup..." +msgstr "Розширені налаштування..." + +msgid "Extensions" +msgstr "Плагіни та Додатки" + +msgid "Extensions management" +msgstr "Управління доповненнями" + +msgid "External PiP" +msgstr "" + +msgid "External subtitle color" +msgstr "Колір зовнішніх субтитрів" + +msgid "Extra motor options" +msgstr "" + +msgid "FEC" +msgstr "FEC" + +msgid "FTA" +msgstr "FTA" + +msgid "Factory reset" +msgstr "Заводські установки" + +msgid "Failed" +msgstr "Невдалий" + +msgid "Failed to write /tmp/positionersetup.log: " +msgstr "Не вдалося записати /tmp/positionersetup.log: " + +#, python-format +msgid "Fan %d" +msgstr "Вентилятор %d" + +#, python-format +msgid "Fan %d PWM" +msgstr "Вентилятор %d PWM" + +#, python-format +msgid "Fan %d voltage" +msgstr "Вентилятор %d напруга" + +msgid "Fan operation" +msgstr "" + +msgid "Fan speed" +msgstr "" + +msgid "Fast" +msgstr "Швидко" + +msgid "Fast DiSEqC" +msgstr "Швидкий DiSEqC" + +msgid "Fast Scan" +msgstr "Швидкий пошук по провайдеру" + +msgid "Fast epoch" +msgstr "Час для прискоренної швидкості" + +msgid "Fast forward speeds" +msgstr "Швидкість перемотування вперед" + +msgid "Favourites" +msgstr "Фаворити" + +msgid "File appears to be busy.\n" +msgstr "Файл виявився зайнятим.\n" + +msgid "Filesystem check" +msgstr "Перевірка файлової системи" + +msgid "Final position at" +msgstr "Підсумкова позиція" + +msgid "Final position at index" +msgstr "Номер підсумкової позиції" + +msgid "Fine movement" +msgstr "Тонке переміщення" + +msgid "Finetune" +msgstr "Точно" + +msgid "Finished" +msgstr "Завершено" + +msgid "Finished configuring your network" +msgstr "Налаштування мережі закінчена" + +msgid "Finished restarting your network" +msgstr "Перезавантаження вашої мережі завершена" + +msgid "Finnish" +msgstr "Фінський" + +msgid "Fixed" +msgstr "Фіксована" + +msgid "Flash" +msgstr "Прошивка" + +msgid "Flashing failed" +msgstr "Прошивка не вдалася" + +msgid "Following tasks will be done after you press OK!" +msgstr "Виконання почнеться після того, як ви натиснете ОК!" + +msgid "Format" +msgstr "Формат" + +msgid "Forward volume keys" +msgstr "Передати кнопки звуку" + +msgid "Frame size in full view" +msgstr "Розмір рамки при перегляді на весь екран" + +msgid "French" +msgstr "Французський" + +msgid "Frequency" +msgstr "Частота" + +msgid "Frequency bands" +msgstr "Частотні діапазони" + +msgid "Frequency scan step size(khz)" +msgstr "Крок частоти сканування(khz)" + +msgid "Frequency steps" +msgstr "Крок частоти" + +msgid "Frequency:" +msgstr "Частота:" + +msgid "Fri" +msgstr "Пт" + +msgid "Friday" +msgstr "П'ятниця" + +msgid "From :" +msgstr "Від :" + +#, python-format +msgid "Frontprocessor version: %d" +msgstr "Версія фронтпроцессора: %d" + +msgid "Full transparency" +msgstr "Повна прозорість" + +msgid "Fulview resulution" +msgstr "Повна роздільна здатність перегляду" + +msgid "Function of OK button" +msgstr "Функція кнопки OK" + +msgid "Further Options" +msgstr "" + +msgid "" +"GUI needs a restart to apply a new skin\n" +"Do you want to restart the GUI now?" +msgstr "" +"Для активації нового скіна необхідний рестарт GUI.\n" +"Ви хочете зробити це зараз?" + +msgid "Gateway" +msgstr "Шлюз" + +msgid "General AC3 delay" +msgstr "Загальна затримка AC3" + +msgid "General PCM delay" +msgstr "Загальна затримка PCM" + +msgid "Genre" +msgstr "Жанр" + +msgid "German" +msgstr "Німецький" + +msgid "Get latest experimental image" +msgstr "" + +msgid "Get latest release image" +msgstr "Отримати останній випущений імідж" + +msgid "Getting plugin information. Please wait..." +msgstr "Отримання інформації про плагін. Будь ласка чекайте..." + +msgid "Go down the list" +msgstr "Перемістити вниз до останнього запису" + +msgid "Go to first movie or last item" +msgstr "Перейти до першого відео або до останнього рядка" + +msgid "Go to first movie or top of list" +msgstr "Перейти до першого відео або на вгору списку" + +msgid "Go to first service" +msgstr "Перейти на перший сервіс" + +msgid "Go to last service" +msgstr "Перейти на останній сервіс" + +msgid "Go to next event" +msgstr "Перейти на наступну подію" + +msgid "Go to next page of service" +msgstr "Перейти на наступну сторінку сервісів" + +msgid "Go to previous event" +msgstr "Перейти на попередню подію" + +msgid "Go to previous page of service" +msgstr "Перейти на попередню сторінку сервісів" + +msgid "Go up the list" +msgstr "Перейти в кінець списку" + +msgid "Goto" +msgstr "Перехід" + +msgid "Goto 0" +msgstr "Перехід на позицію 0" + +msgid "Goto :" +msgstr "Куди :" + +msgid "Goto X" +msgstr "Перехід на позицію Х" + +msgid "Goto index position" +msgstr "Номер позиції" + +msgid "Goto next day of events" +msgstr "Перейти на наступний день подій" + +msgid "Goto next page of events" +msgstr "Перейти на попередню сторінку подій" + +msgid "Goto position" +msgstr "Перейти на позицію" + +msgid "Goto previous day of events" +msgstr "Перейти на попередній день подій" + +msgid "Goto previous page of events" +msgstr "Перейти на попередню сторінку подій" + +msgid "Goto specific date/time" +msgstr "" + +msgid "GotoX calibration" +msgstr "Калібрування позиції Х" + +msgid "GraphMultiEpg Settings" +msgstr "Налаштування графічного мульти-EPG" + +msgid "Graphical Multi EPG" +msgstr "Графічний мульти-EPG" + +msgid "Greek" +msgstr "Гречеський" + +msgid "Green boost" +msgstr "Підвищення зеленого" + +msgid "Guard interval" +msgstr "Інтервал захисту" + +msgid "HD list" +msgstr "HD лист" + +msgid "HDMI-CEC setup" +msgstr "" + +msgid "Handle standby from TV" +msgstr "Режим очікування при вимкненню ТБ" + +msgid "Handle wakeup from TV" +msgstr "Увімкнути при включенні ТВ" + +msgid "Hard disk" +msgstr "Жорсткий диск" + +msgid "Hard disk setup" +msgstr "Налаштування диска" + +msgid "Hard disk standby after" +msgstr "Відключення HDD через" + +msgid "Harddisk" +msgstr "Жорсткий диск" + +msgid "Hardware: " +msgstr "Апаратура: " + +msgid "Hebrew" +msgstr "Іврит" + +msgid "Helps setting up your dish" +msgstr "" + +msgid "Hidden network" +msgstr "Прихована мережа" + +msgid "Hide CI messages" +msgstr "Приховати повідомлення CI" + +msgid "Hide channel list in radio mode" +msgstr "Приховати список каналів в режимі радіо" + +msgid "Hide known extensions" +msgstr "Приховати відомі роздільні здатності" + +msgid "Hide number markers" +msgstr "Приховувати номера маркерів" + +msgid "Hide player" +msgstr "Приховати програвач" + +msgid "Hide zap errors" +msgstr "Заховати помилки при перемиканні каналів" + +msgid "Hierarchy info" +msgstr "Ієрархія інформації" + +msgid "Hierarchy information" +msgstr "Ієрархія інформації" + +msgid "High bitrate support" +msgstr "Підтримка високого бітрейта" + +msgid "Hold screen" +msgstr "Зберігати екран" + +msgid "Hold till locked" +msgstr "Зберігати екран-заблоковано" + +msgid "Home" +msgstr "Домашня" + +msgid "Horizontal" +msgstr "Горизонтальна" + +msgid "Horizontal turning speed" +msgstr "Поляризація (H) - швидкість повороту" + +msgid "How many minutes do you want to record?" +msgstr "Скільки хвилин ви хочете записати?" + +msgid "Hue" +msgstr "Відтінок" + +msgid "Hungarian" +msgstr "Угорський" + +msgid "IP address" +msgstr "IP адреса" + +msgid "ISO file is too large for this filesystem!" +msgstr "ISO файл занадто великий для цієї файлової системи!" + +msgid "ISO path" +msgstr "ISO шлях" + +msgid "Icons" +msgstr "Іконка" + +msgid "" +"If you see this, something is wrong with\n" +"your scart connection. Press OK to return." +msgstr "" +"Якщо ви бачите це, то щось не так з вашим\n" +"SCART з'єднанням. Натисніть кнопку ОК, щоб повернутися." + +msgid "" +"If your TV has a brightness or contrast enhancement, disable it. If there is something called \"dynamic\", set it to standard. Adjust the backlight level to a value suiting your taste. Turn down contrast on your TV as much as possible.\n" +"Then turn the brightness setting as low as possible, but make sure that the two lowermost shades of gray stay distinguishable.\n" +"Do not care about the bright shades now. They will be set up in the next step.\n" +"If you are happy with the result, press OK." +msgstr "" + +msgid "Image: " +msgstr "Імідж: " + +msgid "Immediate shutdown" +msgstr "глибокий Режим очікування" + +msgid "In order to record a timer, the TV was switched to the recording service!\n" +msgstr "" +"Для старту запису за таймером,\n" +" перемикаємо на записуваний сервіс!\n" + +msgid "In progress" +msgstr "У прогресі" + +msgid "Inactivity Sleeptimer" +msgstr "Таймер неактивності" + +msgid "Include AIT in http streams" +msgstr "Вмикати AIT в http стрім" + +msgid "Include ECM in http streams" +msgstr "Вмикати ECM в http стрім" + +msgid "Include EIT in http streams" +msgstr "Вмикати EIT в http стрім" + +msgid "Incorrect type service for PiP!" +msgstr "" + +msgid "Increased voltage" +msgstr "Підвищена напруга" + +msgid "Index" +msgstr "Індекс" + +msgid "Index allocated:" +msgstr "Виділено номер:" + +msgid "Info" +msgstr "Інфо" + +msgid "Info bar" +msgstr "Інфобар" + +msgid "Info bar timeout" +msgstr "Час показу інфобара" + +msgid "Infobar frontend data source" +msgstr "" + +msgid "Information" +msgstr "Информація" + +msgid "Init" +msgstr "Ініціалізація" + +msgid "Initial fast forward speed" +msgstr "Первісна швидкість перемотування вперед" + +msgid "Initial location in new timers" +msgstr "Початкове місце нових таймерів" + +msgid "Initial lock ratio" +msgstr "Початкове співвідношення захоплення" + +msgid "Initial rewind speed" +msgstr "Первісна швидкість перемотування назад" + +msgid "Initial signal quality" +msgstr "Початкова якість сигналу" + +msgid "Initial signal quality:" +msgstr "Початкова якість сигналу:" + +msgid "Initialization" +msgstr "Ініціалізація (формат.)" + +msgid "Initialize" +msgstr "Ініціалізація" + +msgid "Initializing storage device..." +msgstr "Ініціалізація жесткого диска..." + +msgid "Input" +msgstr "Вхід" + +msgid "Input device setup" +msgstr "Налаштування пристрою введення" + +msgid "Input devices" +msgstr "Налаштування пульта" + +msgid "Install" +msgstr "Встановити" + +msgid "Install a new image with a USB stick" +msgstr "Встановити новий імідж з USB" + +msgid "Install a new image with your web browser" +msgstr "Встановити новий імідж через web браузер" + +msgid "Install channel list" +msgstr "Інсталювати список каналів" + +msgid "Install extensions" +msgstr "" + +msgid "Install extensions." +msgstr "Встановити доповнення." + +msgid "Install local extension" +msgstr "Інсталяція локал. пакетів" + +msgid "Install picons on" +msgstr "Інсталяція Піконів в" + +msgid "Install softcam" +msgstr "Інсталяція Емулятора" + +msgid "Installation has completed." +msgstr "Інсталяцію завершено." + +msgid "Installation or removal has completed." +msgstr "Інсталяцію або видалення завершено." + +msgid "Installing" +msgstr "Інсталяція" + +msgid "Installing software..." +msgstr "Інсталяція пакетів..." + +msgid "Instant recording location" +msgstr "Місце негайного запису" + +msgid "Instant recording..." +msgstr "Меню негайного запису..." + +msgid "Interface: " +msgstr "Інтерфейс: " + +msgid "Intermediate" +msgstr "Проміжний" + +msgid "Internal flash" +msgstr "Внутрішня флеш" + +msgid "Internal hdd only" +msgstr "Тільки внутр. жорсткий диск" + +msgid "Interval between keys when repeating:" +msgstr "Інтервал між повторами кнопок:" + +#, python-format +msgid "Invalid directory selected: %s" +msgstr "Вибрано неправильний каталог: %s" + +msgid "Invalid location" +msgstr "Неправильне розташування" + +msgid "Invalid transponder data" +msgstr "" + +msgid "Inversion" +msgstr "Інверсія" + +msgid "Invert" +msgstr "Вибрати всі" + +msgid "Ipkg" +msgstr "Ipkg" + +msgid "Is this setting ok?" +msgstr "Цей варіант налаштування вас влаштовує?" + +msgid "Is this video mode ok?" +msgstr "Встановити даний відеорежим?" + +msgid "Italian" +msgstr "Італійський" + +msgid "Items per page " +msgstr "Кількість сервісів на сторінку " + +msgid "Items per page for list screen" +msgstr "Кількість сервісів на сторінку в режимі списку" + +msgid "Job overview" +msgstr "Перегляд завдання" + +msgid "Jump to beginning of list" +msgstr "Перейти в початок списку" + +msgid "Jump to end of list" +msgstr "Перейти в кінець списку" + +msgid "Jump to next marked position" +msgstr "Перейти до наступної мітки" + +msgid "Jump to previous marked position" +msgstr "Перейти до наступної мітки" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, even if this breaks the aspect) +msgid "Just scale" +msgstr "Тільки маштаб" + +msgid "Keep service" +msgstr "Затримати сервіс" + +msgid "Kernel version: " +msgstr "Версія ядра: " + +msgid "Keyboard" +msgstr "Клавіатура" + +msgid "Keyboard map" +msgstr "Розкладка клавіатури" + +msgid "Keyboard setup" +msgstr "Налаштування клавіатури" + +msgid "LAN adapter" +msgstr "LAN адаптер" + +msgid "LAN connection" +msgstr "LAN з'єднання" + +msgid "LNB" +msgstr "LNB" + +msgid "Language" +msgstr "Вибір мови" + +msgid "Language selection" +msgstr "Список мов" + +msgid "Last config" +msgstr "Останні налаштування" + +msgid "Last speed" +msgstr "Остання швидкість" + +msgid "Last upgrade: " +msgstr "Останнє оновлення: " + +msgid "Latest Commits" +msgstr "Зміни" + +msgid "Latitude" +msgstr "Широта" + +msgid "Latvian" +msgstr "Латвійський" + +msgid "Leave DVD player?" +msgstr "Вийти з DVD плеєра?" + +msgid "Left" +msgstr "Лівий" + +msgid "Left from servicename" +msgstr "ліворуч від назви сервісу" + +msgid "Leisure hobbies" +msgstr "Хоббі на відпочинку" + +#. TRANSLATORS: (aspect ratio policy: black bars on top/bottom) in doubt, keep english term. +msgid "Letterbox" +msgstr "Letterbox" + +msgid "Letterbox zoom" +msgstr "" + +msgid "Limit character set for recording filenames" +msgstr "Обмежити набір символів в іменах записів" + +msgid "Limit east" +msgstr "Обмеження на схід" + +msgid "Limit the characters that can be used in recording filenames to (7 bit) ascii. This ensures compatibility with operating systems or file systems with limited character sets." +msgstr "Обмежте знаки, які можуть використовуватися в записі імен файлів (7 біт)ASCII. Це забезпечує сумісність з операційними системами абофайловими системами з обмеженим набором символів." + +msgid "Limit west" +msgstr "Обмеження на захід" + +msgid "Limits cancelled" +msgstr "Обмеження скасовані" + +msgid "Limits enabled" +msgstr "Обмеження увімкнено" + +msgid "Limits off" +msgstr "Вимкнути обмеження" + +msgid "Limits on" +msgstr "Активувати обмеження" + +msgid "Link quality:" +msgstr "Якість зв'язку:" + +msgid "Link:" +msgstr "Посилання:" + +msgid "Linked titles with a DVD menu" +msgstr "Заголовки пов'язані з DVD меню" + +msgid "List EPG functions..." +msgstr "Список функцій EPG..." + +msgid "List available networks" +msgstr "Перегляд списку доступних мереж" + +msgid "List mode" +msgstr "Режим списку" + +msgid "List of storage devices" +msgstr "Список пристроїв зберігання" + +msgid "List type" +msgstr "Вигляд списку" + +#, python-format +msgid "List version %d, found %d channel" +msgid_plural "List version %d, found %d channels" +msgstr[0] "Список версії %d, знайдений %d канал" +msgstr[1] "Список версії %d, знайдено %d канала" +msgstr[2] "Список версії %d, знайдено %d каналів" + +msgid "Listen to the radio..." +msgstr "Слухати радіо..." + +msgid "Lists reloaded!" +msgstr "" + +msgid "Lithuanian" +msgstr "Литовський" + +msgid "Load" +msgstr "Завантажити" + +msgid "Load Length of Movies in Movielist" +msgstr "" + +msgid "Load length of movies in movie list" +msgstr "Загружать длительность видео в списке видео" + +msgid "Load playlist" +msgstr "Завантажити плейлист" + +msgid "Local network" +msgstr "Локальна мережа" + +msgid "Location" +msgstr "Розташування" + +msgid "Location for instant recordings" +msgstr "Розташування моментальних записів" + +msgid "Lock ratio" +msgstr "Якість захоплення" + +msgid "Lock:" +msgstr "Захоплення:" + +msgid "Log results to harddisk" +msgstr "Записувати журнал на диск" + +msgid "Long filenames" +msgstr "Довга назва" + +msgid "Long key press" +msgstr "Довге натиснення" + +msgid "Longitude" +msgstr "Довгота" + +msgid "Loop through to" +msgstr "" + +msgid "Luxembourgish" +msgstr "Люксембургський" + +msgid "MMC card" +msgstr "MMC карта" + +msgid "MORE" +msgstr "ПОТІМ" + +msgid "Main menu" +msgstr "Головне меню" + +msgid "Maintain old EPG data for" +msgstr "Зберігати минулі дані EPG для (хв)" + +msgid "Make this mark an 'in' point" +msgstr "Відзначити цю точку як 'початок'" + +msgid "Make this mark an 'out' point" +msgstr "Відзначити цю точку як 'кінець'" + +msgid "Make this mark just a mark" +msgstr "Створити просту мітку" + +msgid "Manage extensions" +msgstr "Менеджер доповнень" + +msgid "Manage your receiver's software" +msgstr "Менеджер ПО ресивера" + +msgid "Manual" +msgstr "Вручну" + +msgid "Manual Scan" +msgstr "Ручний пошук" + +msgid "Manual configuration" +msgstr "Ручне Налаштування" + +msgid "Manual scan" +msgstr "Ручний пошук" + +msgid "Manual transponder" +msgstr "Транспондер в ручну" + +msgid "Manufacturer" +msgstr "Виробник" + +msgid "Margin after recording (minutes)" +msgstr "Об'єднати після запису (у хвилинах)" + +msgid "Margin before recording (minutes)" +msgstr "Об'єднати перед записом (у хвилинах)" + +msgid "Max memory positions" +msgstr "" + +msgid "Max. bitrate: " +msgstr "Макс. бітрейт:" + +msgid "Media player" +msgstr "Медіаплеєр" + +msgid "Media scanner" +msgstr "Медіа сканнер" + +msgid "Medium is not a writeable DVD!" +msgstr "Носій не записуємий DVD!" + +msgid "Medium is not empty!" +msgstr "Носій не порожній!" + +msgid "Memory" +msgstr "Память" + +msgid "Memory index" +msgstr "Номер в пам'яті" + +msgid "Menu" +msgstr "Меню" + +msgid "Message" +msgstr "Повідомлення" + +msgid "Message..." +msgstr "Повідомлення..." + +#, python-format +msgid "Minimum age %d years" +msgstr "Категорія мінімум %d років" + +msgid "Minimum send interval" +msgstr "Мінімальний інтервал відправки" + +msgid "Missing " +msgstr "Відсутній " + +msgctxt "Satellite configuration mode" +msgid "Mode" +msgstr "" + +msgctxt "Video output mode" +msgid "Mode" +msgstr "" + +msgid "Model: " +msgstr "Модель: " + +msgid "Modulation" +msgstr "Модуляція" + +msgid "Modulator" +msgstr "Модулятор" + +msgid "Mon" +msgstr "Пн" + +msgid "Mon-Fri" +msgstr "Пн-Пт" + +msgid "Monday" +msgstr "Понеділок" + +msgid "Mosquito noise reduction" +msgstr "Придушення москітного шуму" + +msgid "Mount" +msgstr "Перегляд підключень" + +msgid "Move" +msgstr "Переміщення" + +msgid "Move PiP to main picture" +msgstr "Перемістити PiP на основний екран" + +msgid "Move Picture in Picture" +msgstr "Перемістити картинку в картинці" + +msgid "Move east" +msgstr "Переміщення на схід" + +msgid "Move to other directory" +msgstr "Вибір початкового каталогу" + +msgid "Move to position X" +msgstr "Переміщення до позиції Х" + +msgid "Move west" +msgstr "Переміщення на захід" + +msgid "Moved to position 0" +msgstr "Переміщення до позиції Х" + +msgid "Moved to position at index" +msgstr "Переміщення до позиції номера" + +msgid "Movement" +msgstr "Переміщення" + +msgid "Movie List Configuration" +msgstr "" + +msgid "Movie Selection" +msgstr "" + +msgid "Movie list configuration" +msgstr "Конфігурація списку відео" + +msgid "Movie location" +msgstr "Розташування відео" + +msgid "Movie selection" +msgstr "Вибір відео" + +msgid "Movie/Drama" +msgstr "Фільми / Драма" + +msgid "Movielist menu" +msgstr "Меню списку відео" + +msgid "Moving" +msgstr "Переміщуємо" + +msgid "Moving east ..." +msgstr "Переміщаємо на схід ..." + +msgid "Moving to position" +msgstr "Переміщаємо на позицію" + +msgid "Moving west ..." +msgstr "Переміщаємо на захід ..." + +msgid "Multi EPG" +msgstr "Мульти EPG" + +msgid "Multi-EPG bouquet selection" +msgstr "Вибір фаворитів при старті мульти-EPG" + +msgid "Multimedia" +msgstr "Мультмедіа" + +msgid "Multiple service support" +msgstr "Підтримка мультисервісів" + +msgid "Multiplex" +msgstr "Мультиплекс" + +msgid "Multisat" +msgstr "Декілька супутників" + +msgid "Multisat all select" +msgstr "" + +msgid "Music/Ballet/Dance" +msgstr "Музика/Балет/Танець" + +msgid "Mute" +msgstr "без звуку" + +msgid "N/A" +msgstr "N/A" + +msgid "NEXT" +msgstr "ДАЛІ" + +msgid "NFI image flashing" +msgstr "Установка прошивки NFI" + +msgid "NFI image flashing completed. Press Yellow to Reboot!" +msgstr "NFI імідж вдало встановлений. Натисніть ЖОВТИЙ для перезавантаження!" + +msgid "NIM" +msgstr "Тюнер" + +msgid "NOW" +msgstr "ЗАРАЗ" + +msgid "NTSC" +msgstr "NTSC" + +msgid "Name" +msgstr "Ім'я" + +msgid "Nameserver" +msgstr "DNS сервер" + +#, python-format +msgid "Nameserver %d" +msgstr "DNS сервер %d" + +msgid "Nameserver settings" +msgstr "Налаштування DNS" + +msgid "Nameserver setup" +msgstr "" + +msgid "Namespace" +msgstr "Namespace" + +msgid "Netmask" +msgstr "Маска підмережі" + +msgid "Network" +msgstr "Мережа" + +msgid "Network ID" +msgstr "ID мережі" + +msgid "Network configuration..." +msgstr "Конфігурація мережі..." + +msgid "Network mount" +msgstr "Мережеві підключення" + +#, python-format +msgid "Network mount %s" +msgstr "Мережеві підключення %s" + +msgid "Network name (SSID)" +msgstr "Мережеве ім'я (SSID)" + +msgid "Network scan" +msgstr "Сканування мережі" + +msgid "Network setup" +msgstr "Налаштування мережі" + +msgid "Network test" +msgstr "Тест мережі" + +msgid "Network test..." +msgstr "Тест мережі..." + +msgid "Network test: " +msgstr "Тест мережі: " + +msgid "Network wizard" +msgstr "Майстер налаштування мережі" + +msgid "Network:" +msgstr "Мережа:" + +msgid "New" +msgstr "Новий" + +msgid "New PIN" +msgstr "Новий PIN-код" + +msgid "New version:" +msgstr "Нова версія:" + +msgid "News Current Affairs" +msgstr "Новини поточної події" + +msgctxt "button label, 'next screen'" +msgid "Next" +msgstr "" + +msgctxt "now/next: 'next' event label" +msgid "Next" +msgstr "" + +msgid "No" +msgstr "Ні" + +msgid "No (supported) DVDROM found!" +msgstr "Не знайдено (підтримуваний) DVDROM!" + +msgid "No Connection" +msgstr "Немає з'єднання" + +msgid "No HDD found or HDD not initialized!" +msgstr "HDD не знайдений або не встановлений!" + +msgid "No backup needed" +msgstr "Резервне копіювання не потрібно" + +msgid "No cable tuner found!" +msgstr "Не знайдено кабельний тюнер!" + +msgid "" +"No data on transponder!\n" +"(Timeout reading PAT)" +msgstr "" +"Немає даних на транспондер!\n" +"(Тайм-аут читання PAT)" + +msgid "No delay" +msgstr "без затримки" + +msgid "No description available." +msgstr "Оновлень поки немає." + +msgid "No details for this image file" +msgstr "Немає деталей про цей файл іміджу" + +msgid "No displayable files on this medium found!" +msgstr "Немає відображуваних файлів на цьому носії!" + +msgid "No event info found, recording indefinitely." +msgstr "Информація про подію не знайдена, запис на невизначений час." + +msgid "No fast winding possible yet.. but you can use the number buttons to skip forward/backward!" +msgstr "Немає швидкого перемотування можливо ще ... але ви можете використовувати цифровікнопки для переходу вперед / назад!" + +msgid "No free index available" +msgstr "Немає вільного номера пам'яті" + +msgid "No free tuner!" +msgstr "Немає вільного тюнера!" + +msgid "No network connection available." +msgstr "Немає доступного мережевого підключення." + +msgid "No networks found" +msgstr "Мережі не знайдені" + +msgid "No new plugins found" +msgstr "Не знайдені нові плагіни" + +msgid "No positioner capable frontend found." +msgstr "Немає фронтенда з позіционером" + +msgid "No satellites configured. Plese check your tuner setup." +msgstr "" + +msgid "No service" +msgstr "" + +msgid "No services/providers selected" +msgstr "Не вибрані канали/провайдери" + +msgid "No standby" +msgstr "Не переходить в Режим очікування" + +msgid "No suitable sat tuner found!" +msgstr "" + +msgid "No tags are set on these movies." +msgstr "Немає тегів для цього відео." + +msgid "No timeout" +msgstr "Немає таймаута" + +msgid "No to all" +msgstr "Ні - для всіх" + +msgid "No transparency" +msgstr "Немає прозорості" + +msgid "No tuner is configured for use with a diseqc positioner!" +msgstr "Немає тюнера, налаштованого для використання з diseqc позіционером!" + +msgid "" +"No tuner is enabled!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Немає увімкненого тюнера!\n" +"Будь ласка налаштуйте ваш тюнер перед пошуком каналів." + +msgid "No updates available" +msgstr "Оновлень поки немає" + +msgid "No updates available. Please try again later." +msgstr "Оновлень поки немає. Будь ласка спробуйте пізніше." + +msgid "" +"No valid service PIN found!\n" +"Do you like to change the service PIN now?\n" +"When you say 'No' here the service protection stay disabled!" +msgstr "" +"Не пройшов стандартизацію PIN сервісу!\n" +"Ви хочете змінити PIN-код сервісу тепер?\n" +"Якщо ви відповісте 'НІ', то захист сервісу \n" +"не буде активована!" + +msgid "" +"No valid setup PIN found!\n" +"Do you like to change the setup PIN now?\n" +"When you say 'No' here the setup protection stay disabled!" +msgstr "" +"Не пройшов стандартизацію PIN налаштувань!\n" +"Ви хочете змінити PIN-код сервісу тепер?\n" +"Якщо ви відповісте 'НІ', то захист сервісу \n" +"не буде активована!" + +msgid "No wireless networks found! Searching..." +msgstr "Не виявлені бездротові мережі! йде пошук..." + +msgid "" +"No working local network adapter found.\n" +"Please verify that you have attached a network cable and your network is configured correctly." +msgstr "" +"Немає робочого локального мережевого адаптера.\n" +"Будь ласка, переконайтеся, що мережевий кабель підключений і ваша мережа налаштована вірно." + +msgid "" +"No working wireless network adapter found.\n" +"Please verify that you have attached a compatible WLAN device and your network is configured correctly." +msgstr "" +"Не знайдено робочий бездротовий адаптер.\n" +"Будь ласка, переконайтеся, що сумісний бездротовий адаптер підключений і ваша мережа налаштована вірно." + +msgid "" +"No working wireless network interface found.\n" +" Please verify that you have attached a compatible WLAN device or enable your local network interface." +msgstr "" +"Не знайдено робочий бездротовий інтерфейс.\n" +" Переконайтесь, що ви підключили сумісний пристрій WLAN або увімкніть локальний мережний інтерфейс." + +msgid "No, but restart from begin" +msgstr "Ні, рестарт і почати спочатку" + +msgid "No, do nothing." +msgstr "Ні, нічого не робити." + +msgid "No, just start my receiver" +msgstr "Ні, включити ресивер" + +msgid "No, never" +msgstr "Ні, ніколи" + +msgid "None" +msgstr "Ні" + +#. TRANSLATORS: (aspect ratio policy: display as fullscreen, with stretching the left/right) +msgid "Nonlinear" +msgstr "Нелінійний" + +msgid "Normal mode" +msgstr "Стандарт" + +msgid "North" +msgstr "Північ" + +msgid "Norwegian" +msgstr "Норвезька" + +msgid "Not associated" +msgstr "Немає асоціацій" + +msgid "Not configured" +msgstr "" + +#, python-format +msgid "Not enough disk space. Please free up some disk space and try again. (%d MB required, %d MB available)" +msgstr "Немає місця на диску. Будь ласка звільніть трохи місця і спробуйте знову. (%d MB потрібно, %d MB доступно)" + +msgid "Nothing connected" +msgstr "" + +msgid "" +"Nothing to scan!\n" +"Please setup your tuner settings before you start a service scan." +msgstr "" +"Нема чого сканувати!\n" +"Будь ласка, налаштуйте ваш тюнер перед початком сканування." + +msgctxt "now/next: 'now' event label" +msgid "Now" +msgstr "" + +msgid "Now playing" +msgstr "Відтворити" + +msgid "Now, use the contrast setting to turn up the brightness of the background as much as possible, but make sure that you can still see the difference between the two brightest levels of shades.If you have done that, press OK." +msgstr "Тепер використовуйте налаштування контрастності для підняття фону в максимально Можливий рівень, але при цьому необхідно стежити, щоб Ви могли бачити відмінності між двома найяскравішими рівнями відтінків. Якщо все нормально натисніть OK." + +msgid "OK" +msgstr "OK" + +msgid "OK, guide me through the upgrade process" +msgstr "OK, підказувати мені в процесі оновлення" + +msgid "ONID" +msgstr "ONID" + +msgid "OSD name request" +msgstr "OSD ім'я запиту" + +msgid "OSD settings" +msgstr "OSD установки" + +msgid "OSD transparency" +msgstr "Прозорість OSD" + +msgid "Off" +msgstr "Вимкн." + +msgid "Offline decode delay (ms)" +msgstr "Затримка відкладеного декодування (мс)" + +msgid "Ok" +msgstr "Ок" + +msgid "On" +msgstr "Вкл." + +msgid "On end of movie" +msgstr "Наприкінці фільму" + +msgid "On end of movie (as menu)" +msgstr "" + +msgid "One" +msgstr "Один" + +msgid "Only extensions." +msgstr "Тільки доповнення." + +msgid "Only free scan" +msgstr "Тільки безкоштовні" + +msgid "Open service list" +msgstr "Відкрити список сервісів" + +msgid "Open the movie list" +msgstr "Відкрити список відео" + +msgid "Orbital position" +msgstr "Орбіт. позиція" + +msgid "Original" +msgstr "Оригінал" + +msgid "Other" +msgstr "Інша" + +msgid "Output" +msgstr "Відеовихід" + +msgid "Overwrite configuration files during software upgrade?" +msgstr "Перезаписати конф. файли під час оновлення ПО?" + +msgid "Overwrite configuration files?" +msgstr "Переписати файли конфігурації" + +msgid "PAL" +msgstr "PAL" + +msgid "PCR PID" +msgstr "PCR PID" + +msgid "PIDs" +msgstr "ПІДи" + +msgid "PIN code needed" +msgstr "Необхідний PIN-код" + +msgid "PLP ID" +msgstr "" + +msgid "PMT PID" +msgstr "РМТ PID" + +msgid "Package list update" +msgstr "Список пакетів оновлення" + +msgid "Packet management" +msgstr "Управління пакетами" + +msgid "Packet manager" +msgstr "Менеджер пакетів" + +#. TRANSLATORS: (aspect ratio policy: cropped content on left/right) in doubt, keep english term +msgid "Pan&scan" +msgstr "Pan&Scan" + +msgid "Parent directory" +msgstr "Батьківський каталог" + +msgid "Parental control" +msgstr "Батьківський контроль" + +msgid "Parental control services editor" +msgstr "Редактор сервісів батьківського контролю" + +msgid "Parental control setup" +msgstr "Установки батьківського контролю" + +msgid "Parental control type" +msgstr "Тип батьківського контролю" + +msgid "Password" +msgstr "Пароль" + +msgid "Pause" +msgstr "Пауза" + +msgid "Pause movie at end" +msgstr "Пауза в кінці фільму" + +msgid "Pause playback" +msgstr "Пауза відтворення" + +msgid "Pauze/Continue playback" +msgstr "" + +msgid "Percentage left" +msgstr "Відсотки зліва" + +msgid "Percentage right" +msgstr "Відсотки справа" + +msgid "Permanently delete all recordings in the trash can?" +msgstr "Остаточне видалення всіх записів в кошику?" + +msgid "Permanently remove all deleted items" +msgstr "Очищення кошика" + +msgid "Persian" +msgstr "Персидський" + +msgid "Phone number" +msgstr "Номер набору" + +msgid "PiP setup" +msgstr "Налаштування PiP" + +msgid "Picon" +msgstr "Пікон" + +msgid "Picon and service name" +msgstr "Пікон і назва сервісу" + +msgid "Picture player" +msgstr "Перегляд фото" + +#. TRANSLATORS: (aspect ratio policy: black bars on left/right) in doubt, keep english term. +msgid "Pillarbox" +msgstr "Pillarbox" + +msgid "Pilot" +msgstr "Пілот" + +msgid "Play" +msgstr "Відтворити" + +msgid "Play DVD" +msgstr "Відтворити DVD" + +msgid "Play audio in background" +msgstr "Відтворити аудіо у фоновому режимі" + +msgid "Play audio-CD..." +msgstr "Відтворити аудіо-CD" + +msgid "Play back media files" +msgstr "Програвач медіа файлів" + +msgid "Play entry" +msgstr "Відтворити запис" + +msgid "Play from next mark or playlist entry" +msgstr "Відтворити починаючи з наступної мітки або запису в плейлисті" + +msgid "Play from previous mark or playlist entry" +msgstr "Відтворити починаючи з попередньою мітки або запису в плейлисті" + +msgid "Play music..." +msgstr "Відтворити музику..." + +msgid "Play next" +msgstr "Відтворити наступне відео" + +msgid "Play next (return to movie list)" +msgstr "Наступне відтв. (повернення до списку відео)" + +msgid "Play next (return to previous service)" +msgstr "Наступне відтв. (повернення на попередній сервіс)" + +msgid "Play previous" +msgstr "Відігравати наступне відео" + +msgid "Play recorded movies..." +msgstr "Відтворити записане відео..." + +msgid "Please add titles to the compilation." +msgstr "Будь ласка додайте назви до компіляції" + +msgid "Please change recording endtime" +msgstr "Будь ласка, поміняйте час закінчення запису" + +msgid "Please check your network settings!" +msgstr "Будь ласка, перевірте налаштування мережі!" + +msgid "Please choose an extension..." +msgstr "Будь ласка, виберіть додаток..." + +msgid "" +"Please configure or verify your Nameservers by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Будь ласка, налаштуйте або перевірте конфігурацію DNS заповнивши потрібні дані\n" +"Коли будете готові - натисніть ОК для продовження." + +msgid "" +"Please configure your internet connection by filling out the required values.\n" +"When you are ready press OK to continue." +msgstr "" +"Будь ласка, налаштуйте інтернет з'єднання заповнивши потрібні дані\n" +"Коли будете готові - натисніть ОК для продовження." + +msgid "Please connect your receiver to the internet" +msgstr "Будь ласка, підключіть ваш ресивер до інтернету" + +msgid "Please do not change any values unless you know what you are doing!" +msgstr "Будь ласка, не змінюйте будь-які параметри, поки не знаєте що робите!" + +msgid "Please enter a name for the new bouquet" +msgstr "Будь ласка, введіть ім'я для нового пакету" + +msgid "Please enter a name for the new marker" +msgstr "Будь ласка, введіть ім'я для нового пакета" + +msgid "Please enter a new filename" +msgstr "Будь ласка, введіть нове ім'я файлу" + +msgid "Please enter filename (empty = use current date)" +msgstr "Будь ласка, введіть ім'я файлу (порожньо = поточна дата)" + +msgid "Please enter name of the new directory" +msgstr "Будь ласка, введіть ім'я нового каталогу" + +msgid "Please enter new name:" +msgstr "Будь ласка, введіть нове ім'я:" + +msgid "Please enter the correct pin code" +msgstr "Будь ласка, введіть правильний PIN-код" + +msgid "Please enter the old PIN code" +msgstr "Будь ласка, введіть старий PIN-код" + +msgid "Please follow the instructions on the TV" +msgstr "Будь ласка, дотримуйтесь інструкцій на ТБ" + +msgid "Please note that the previously selected media could not be accessed and therefore the default directory is being used instead." +msgstr "Будь ласка, зверніть увагу, що раніше обраний носій недоступний, и замість нього буде використаний каталог за замовчуванням" + +msgid "Please press OK to continue." +msgstr "Будь ласка, натисніть ОК для продовження." + +msgid "Please select a default EPG type..." +msgstr "Будь ласка, виберіть тип EPG за замовчуванням..." + +msgid "Please select a playlist to delete..." +msgstr "Будь ласка, виберіть плейлист для видалення..." + +msgid "Please select a playlist..." +msgstr "Будь ласка, виберіть плейлист..." + +msgid "Please select a sub service..." +msgstr "Будь ласка, виберіть підсервіс..." + +msgid "Please select a subservice to record..." +msgstr "Будь ласка, виберіть підсервіс для запису..." + +msgid "Please select a subservice..." +msgstr "Будь ласка, виберіть підсервіс..." + +msgid "Please select an NFI file and press green key to flash!" +msgstr "Будь ласка, виберіть файл NFI, і натисніть зелену кнопку!" + +msgid "Please select medium to be scanned" +msgstr "Будь ласка, виберіть директорію для сканування" + +msgid "Please select medium to use as backup location" +msgstr "Будь ласка, виберіть директорію для резерного копіювання" + +msgid "Please select tag to filter..." +msgstr "Будь ласка, виберіть тег для фільтра..." + +msgid "Please select the movie path..." +msgstr "Будь ласка, виберіть шлях для відео ..." + +msgid "" +"Please select the network interface that you want to use for your internet connection.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Будь ласка, виберіть мережевий інтерфейс який буде використаний для виходу в інтернет\n" +"\n" +"Натисніть ОК для продовження." + +msgid "" +"Please select the wireless network that you want to connect to.\n" +"\n" +"Please press OK to continue." +msgstr "" +"Будь ласка, виберіть бездротову мережу для підключення.\n" +"\n" +"Натисніть ОК для продовження." + +msgid "Please set up tuner A" +msgstr "Налаштуйте тюнер А" + +msgid "Please set up tuner B" +msgstr "Налаштуйте тюнер B" + +msgid "Please set up tuner C" +msgstr "Налаштуйте тюнер C" + +msgid "Please set up tuner D" +msgstr "Налаштуйте тюнер D" + +msgid "" +"Please use direction keys to move the PiP window.\n" +"Press Bouquet +/- to resize the window.\n" +"Press OK to go back to the TV mode or EXIT to cancel the moving." +msgstr "" +"Будь ласка, використовуйте клавіші навігації для переміщення екрана PiP.\n" +"Нажмите Bouquet +/- для зміни розмірів екрану.\n" +"Натисніть ОК для підтвержденя і переходу в режим TV або EXIT для відміни." + +msgid "Please use the UP and DOWN keys to select your language. Afterwards press the OK button." +msgstr "Будь ласка, використовуйте кнопки ВГОРУ і ВНИЗ для вибору мови. далі натисніть ОК." + +msgid "Please wait" +msgstr "Очікуйте..." + +msgid "Please wait (downloading channel list)" +msgstr "Зачекайте (Завантажується список каналів)" + +msgid "Please wait (downloading softcam)" +msgstr "Зачекайте (завантажуємо емулятор)" + +msgid "Please wait (updating packages)" +msgstr "Зачекайте (оновлюємо пакети)" + +msgid "Please wait for activation of your network configuration..." +msgstr "Зачекайте, йде активація вашої мережевої конфігурації ..." + +msgid "Please wait while scanning is in progress..." +msgstr "Будь ласка почекайте, поки йде сканування..." + +msgid "Please wait while we configure your network..." +msgstr "Будь ласка почекайте, поки ми налаштуємо мережу ..." + +msgid "Please wait while we prepare your network interfaces..." +msgstr "Зачекайте, підготовка мережевих інтерфейсів..." + +msgid "Please wait while we test your network..." +msgstr "Зачекайте поки йде перевірка вашої мережі..." + +msgid "Please wait while your network is restarting..." +msgstr "Будь ласка почекайте, поки йде перезавантаження мережі..." + +msgid "Please wait..." +msgstr "Будь ласка зачекайте..." + +msgid "Please wait... Loading list..." +msgstr "Будь ласка зачекайте ... Завантажується список" + +msgid "Plugin browser" +msgstr "Браузер плагінів" + +msgid "Plugin manager activity information" +msgstr "Менеджер плагинов - Информація" + +msgid "Plugin manager help" +msgstr "Менеджер плагінів - допомога" + +msgid "Plugins" +msgstr "Плагіни" + +msgid "Polarisation" +msgstr "Поляризація" + +msgid "Polarisation:" +msgstr "" + +msgid "Polarization" +msgstr "Поляризація" + +msgid "Polish" +msgstr "Польский" + +msgid "Port A" +msgstr "Порт А" + +msgid "Port B" +msgstr "Порт B" + +msgid "Port C" +msgstr "Порт C" + +msgid "Port D" +msgstr "Порт D" + +msgid "Portuguese" +msgstr "Португальський" + +msgid "Position of completed timers in timerlist" +msgstr "Позиція завершених таймерів в списку таймерів" + +msgid "Position stored at index" +msgstr "Збережений номер позиції" + +msgid "Positioner" +msgstr "Позіционер" + +msgid "Positioner (selecting satellites)" +msgstr "" + +msgid "Positioner Setup" +msgstr "" + +msgid "Positioner setup" +msgstr "Налаштування позіционеру" + +msgid "Power threshold in mA" +msgstr "Поріг струму в mA" + +msgid "Predefined transponder" +msgstr "Зумовлений транспондер" + +msgid "Prefer AC3 track" +msgstr "Пріоритет Аудіо доріжки AC3" + +msgid "Prefer AC3+ track" +msgstr "" + +msgid "Prefer audio track stored by service" +msgstr "Пріоритетна Аудіо доріжка сервісу" + +msgid "Prefer graphical DVB subtitles" +msgstr "Пріоритет графічних DVB субтитрів" + +msgid "Prefer subtitles for hearing impaired" +msgstr "Пріоритет субтитрів для людей з порушеннями слуху" + +msgid "Prefer subtitles stored by service" +msgstr "Пріоритет субтитрів, збережених сервісом" + +msgid "Preferred tuner" +msgstr "Пріоритетний тюнер" + +msgid "Preferred tuner for recordings" +msgstr "Віддається перевага тюнеру для запису" + +msgid "Prepare another USB stick for image flashing" +msgstr "Підготовка другої USB-флешки для інсталяції системи" + +msgid "Preparing... Please wait" +msgstr "Підготовка ... Будь ласка, почекайте" + +msgid "Press '0' to toggle PiP mode" +msgstr "" + +msgid "Press INFO on your remote control for additional information." +msgstr "Натисніть кнопку INFO на пульті для додаткової інформації." + +msgid "Press MENU on your remote control for additional options." +msgstr "Натисніть кнопку MENU на пульті для додаткової інформації." + +msgid "Press OK on your remote control to continue." +msgstr "Натисніть OK на пульті, щоб продовжити." + +msgid "Press OK to activate the selected skin." +msgstr "Натисніть OK для активації вибраного скіна." + +msgid "Press OK to activate the settings." +msgstr "Натисніть OK для активації налаштувань." + +msgid "Press OK to edit the settings." +msgstr "Натисніть OK, щоб змінити настройки." + +#, python-format +msgid "Press OK to get further details for %s" +msgstr "Натисніть ОК, щоб отримати детальну інформацію для %s" + +msgid "Press OK to scan" +msgstr "Натисніть OK для пошуку." + +msgid "Press OK to select a provider." +msgstr "Натисніть ОК для вибору провайдера." + +msgid "Press OK to select satellites" +msgstr "" + +msgid "Press OK to select/deselect a CAId." +msgstr "Натисніть OK, щоб вибрати/відмінити CAId." + +msgid "Press OK to start the scan" +msgstr "Натисніть OK для початку пошуку." + +msgid "Press OK to toggle the selection" +msgstr "" + +msgid "Press OK to toggle the selection." +msgstr "Натисніть ОК для підтвердження або скасування." + +msgid "Press yellow to set this interface as default interface." +msgstr "Установка інтерфейсу за замовчуванням - жовта кнопка." + +msgctxt "button label, 'previous screen'" +msgid "Prev" +msgstr "" + +msgid "Preview" +msgstr "Прев'ю" + +msgid "Preview menu" +msgstr "Меню прев'ю" + +msgid "Preview selected channel" +msgstr "Прев'ю обраного каналу" + +msgid "Primary DNS" +msgstr "Первинний DNS" + +msgid "Priority" +msgstr "Черговість" + +msgid "Process" +msgstr "Процес" + +msgid "Progress" +msgstr "Прогрес" + +msgid "Progress bar left" +msgstr "прогрес-бар ліворуч" + +msgid "Progress bar right" +msgstr "прогрес-бар праворуч" + +msgid "Properties of current title" +msgstr "Властивості поточного назви" + +msgid "Protect services" +msgstr "Захистити сервіси" + +msgid "Protect setup" +msgstr "Захистити установки" + +msgid "Provider" +msgstr "Провайдер" + +msgid "Provider to scan" +msgstr "Провайдер для пошуку" + +msgid "Providers" +msgstr "Провайдери" + +msgid "Put TV in standby" +msgstr "Перехід ТБ в Режим Очікування" + +msgid "Put receiver in standby" +msgstr "Перехід ресивера в Режим Очікування" + +msgid "Python frontend for /tmp/mmi.socket" +msgstr "Python інтерфейс для /tmp/mmi.socket" + +msgid "Quick" +msgstr "Швидко" + +msgid "Quick zap" +msgstr "Швидке перемикання" + +msgid "RF output" +msgstr "RF вихід" + +msgid "RGB" +msgstr "RGB" + +msgid "Radio" +msgstr "Радіо" + +msgid "Ram disk" +msgstr "Ram диск" + +msgid "Random" +msgstr "випадково" + +#, python-format +msgid "Rating defined by broadcaster - %d" +msgstr "Рейтинг визначено - %d" + +msgid "Rating undefined" +msgstr "Рейтинг невизначений" + +msgid "Really close without saving settings?" +msgstr "Дійсно вийти без збереження налаштувань??" + +msgid "Really delete done timers?" +msgstr "Дійсно видалити виконані таймери?" + +msgid "Really exit the subservices quickzap?" +msgstr "Дійсно вийти з меню субсервісов?" + +msgid "Really reboot now?" +msgstr "Дійсно вийти з меню субсервісов?" + +msgid "Really restart now?" +msgstr "Дійсно рестарт зараз?" + +msgid "Really shutdown now?" +msgstr "Дійсно вимкнути зараз?" + +msgid "Really upgrade the frontprocessor and reboot now?" +msgstr "Оновити фронтпроцессор і перезавантажити зараз?" + +msgid "Really upgrade your settop box and reboot now?" +msgstr "Оновити ваш ресивер і перезавантажити зараз?" + +msgid "Reboot" +msgstr "Перезавантаження" + +msgid "Rec" +msgstr "Запис" + +msgid "Reception settings" +msgstr "" + +msgid "Record" +msgstr "Запис" + +#, python-format +msgid "Record time limited due to conflicting timer %s" +msgstr "Час запису обмежений через конфлікт таймера %s" + +msgid "Recorded files..." +msgstr "Записанні файли..." + +msgid "Recording" +msgstr "Запис" + +msgid "Recording in progress" +msgstr "Іде запис" + +msgid "Recording paths" +msgstr "Місце записів, таймшифта" + +msgid "Recording type" +msgstr "Тип запису" + +msgid "Recording(s) are in progress or coming up in few seconds!" +msgstr "Запис (іи) йде або розпочнеться в найближчі кілька секунд!" + +msgid "Recordings" +msgstr "Записи" + +msgid "Recordings always have priority" +msgstr "Записи завжди мають пріоритет" + +msgid "Red button..." +msgstr "Червона кнопка..." + +msgid "Reenter new PIN" +msgstr "Повторіть новий PIN-код" + +msgid "Refresh rate" +msgstr "Частота оновлення" + +msgid "Refresh rate selection." +msgstr "Вибір частоти оновлення" + +msgid "Regard deep standby as standby" +msgstr "Вважати вимкнення як Режим Очікування" + +msgid "Relative" +msgstr "Відносна" + +msgid "Reload" +msgstr "Оновити" + +msgid "Reload black-/white lists" +msgstr "Оновити чорний/білий список" + +msgid "Reloading bouquets and services..." +msgstr "Оновлення фаворитів і сервісів...." + +msgid "Remember last service in PiP" +msgstr "" + +msgid "Remember service PIN" +msgstr "Пам'ятати PIN-код сервісу" + +msgid "Remember these settings for each folder" +msgstr "Пам'ятати ці налаштування для кожної папки" + +msgid "Reminder, you have chosen to save timeshift file." +msgstr "Нагадуємо, ви вибрали збереження файлу timeshift." + +msgid "Remote control type" +msgstr "Тип пульта ДУ" + +msgid "Removal has completed." +msgstr "Оновлення завершено." + +msgid "Remove" +msgstr "Видалення" + +msgid "Remove a mark" +msgstr "Удалить метку" + +msgid "Remove a nameserver entry" +msgstr "Видалити дані DNS" + +msgid "Remove bookmark" +msgstr "Видалити закладку" + +msgid "Remove completed timers after (days)" +msgstr "Видалення завершених таймерів через (в днях)" + +msgid "Remove currently selected title" +msgstr "Видалити вибраний заголовок" + +msgid "Remove items from trash can after (days)" +msgstr "Видаляти записи з кошика через (в днях)" + +msgid "Remove plugins" +msgstr "Видалення плагінів" + +msgid "Remove title" +msgstr "Видалити опис" + +msgid "Removing" +msgstr "Видалення" + +#, python-format +msgid "Removing directory %s failed. (Maybe not empty.)" +msgstr "Помилка видалення %s каталогу. (Можливо він не пустий)" + +msgid "Removing partition table" +msgstr "Не вдалося створити розділ" + +msgid "Rename" +msgstr "Перейменувати" + +msgid "Repeat" +msgstr "Повторення" + +msgid "Repeat type" +msgstr "Тип повторення" + +msgid "Repeating event currently recording... What do you want to do?" +msgstr "Повторювальна подія зараз записується ... Що ви хочете зробити?" + +msgid "Repeats" +msgstr "Повторення" + +msgid "Require authentication for http streams" +msgstr "" + +msgid "Required medium type:" +msgstr "Необхідний тип носія:" + +msgid "Rereading partition table" +msgstr "Не вдалося створити розділ" + +msgid "Reserved" +msgstr "Зарезервовано" + +msgid "Reset" +msgstr "Скидання" + +msgid "Reset and renumerate title names" +msgstr "Скинути і перенумерувати імена назв" + +msgid "Reset playback position" +msgstr "Скидання позиції відтворення" + +msgid "Reset video enhancement settings to system defaults?" +msgstr "Скидання налаштувань відео за замовчуванням?" + +msgid "Reset video enhancement settings to your last configuration?" +msgstr "Скидання налаштувань відео до останньої конфігурації?" + +msgid "Resolution" +msgstr "Роздільна здатність" + +msgid "Restart" +msgstr "Перезавантаження" + +msgid "Restart GUI now?" +msgstr "Рестарт GUI почати?" + +msgid "Restart enigma" +msgstr "Рестарт E2" + +msgid "Restart network" +msgstr "Перезапустити мережу" + +msgid "Restart test" +msgstr "Перезапустити тест" + +msgid "Restart your network connection and interfaces.\n" +msgstr "Перезавантаження мережевих підключень і інтерфейсів.\n" + +msgid "Restore" +msgstr "Відновити" + +msgid "Restore backups" +msgstr "Відновлення резрвних копій" + +msgid "Restore is running..." +msgstr "Виконується відновлення..." + +msgid "Restore system settings" +msgstr "Відновлення системних налаштувань" + +msgid "Restoring..." +msgstr "Відновлення..." + +msgid "Resume from last position" +msgstr "Відновити з останньої позиції" + +#, python-format +msgid "Resume position at %s" +msgstr "Поточна позиція %s" + +#. TRANSLATORS: The string "Resuming playback" flashes for a moment +#. TRANSLATORS: at the start of a movie, when the user has selected +#. TRANSLATORS: "Resume from last position" as start behavior. +#. TRANSLATORS: The purpose is to notify the user that the movie starts +#. TRANSLATORS: in the middle somewhere and not from the beginning. +#. TRANSLATORS: (Some translators seem to have interpreted it as a +#. TRANSLATORS: question or a choice, but it is a statement.) +msgid "Resuming playback" +msgstr "Відновлення відтворення" + +msgid "Return to movie list" +msgstr "Повернутися до списку фільмів" + +msgid "Return to previous service" +msgstr "Повернутися на попередній сервіс" + +msgid "Reverse bouquet buttons" +msgstr "Поміняти місцями кнопку" + +msgid "Reverse list" +msgstr "" + +msgid "Rewind speeds" +msgstr "Швидкість перемотування назад" + +msgid "Rewrap teletext subtitles" +msgstr "Перепакувати телетекст субтитрів" + +msgid "Right" +msgstr "Правий" + +msgid "Right from servicename" +msgstr "Праворуч від назви сервісу" + +msgid "Roll-off" +msgstr "Roll-off фактор" + +msgid "Romanian" +msgstr "Румунський" + +msgid "Root directory" +msgstr "Кореневий каталог" + +msgid "Rotor step position:" +msgstr "Крок позиції ротора:" + +msgid "Rotor turning speed" +msgstr "Швидкість обертання мотора" + +msgid "Round start time on" +msgstr "Круглий час початку на" + +msgid "Russian" +msgstr "Російський" + +msgid "S-Video" +msgstr "S-Video" + +msgid "SID" +msgstr "SID" + +msgid "SINGLE LAYER DVD" +msgstr "Одношаровий DVD" + +msgid "SNR" +msgstr "SNR" + +msgid "SNR:" +msgstr "SNR:" + +msgid "SSID:" +msgstr "SSID:" + +msgid "Same resolution as skin" +msgstr "Роздільна здатність як в скін" + +msgid "Sat" +msgstr "Сб" + +msgid "Satellite" +msgstr "Супутник" + +msgid "Satellite dish setup" +msgstr "Налаштування супутн. обладнання" + +msgid "Satellite equipment" +msgstr "Супутникове обладнання" + +msgid "Satellite equipment setup" +msgstr "Налаштування супутн. обладнання" + +msgid "Satellite longitude:" +msgstr "Довгота супутника:" + +msgid "Satellites" +msgstr "Супутники" + +msgid "Satfinder" +msgstr "Пошук супутника" + +msgid "Sats" +msgstr "Супутники" + +msgid "Saturation" +msgstr "Насиченість" + +msgid "Saturday" +msgstr "Субота" + +msgid "Save" +msgstr "Зберегти" + +msgid "Save playlist" +msgstr "Зберегти плейлист" + +msgid "Save timeshift file" +msgstr "Зберегти файл timeshift" + +msgid "Save timeshift file in movie directory" +msgstr "Зберегти файл timeshift в каталог movie" + +msgid "Scaler sharpness" +msgstr "Чіткість" + +msgid "Scaling mode" +msgstr "Режим масштабування" + +msgid "Scan" +msgstr "Сканування" + +msgid "Scan " +msgstr "Сканування " + +#. TRANSLATORS: option name, indicating which type of (DVB-C) modulation should be scanned. The modulation type is printed in '%s'. E.g.: 'Scan QAM16' +#, python-format +msgid "Scan %s" +msgstr "Сканування %s" + +#. TRANSLATORS: option name, indicating which type of (DVB-C) band should be scanned. The name of the band is printed in '%s'. E.g.: 'Scan EU MID band' +#, python-format +msgid "Scan %s band" +msgstr "Діапазон %s Сканування" + +msgid "Scan additional SR" +msgstr "Сканувати додатково SR" + +msgid "Scan files..." +msgstr "Сканувати файли..." + +msgid "Scan wireless networks" +msgstr "Сканувати бездротові мережі" + +msgid "Scan your network for wireless access points and connect to them using your selected wireless device.\n" +msgstr "Сканування мережі для пошуку бездротових точок доступу і підключення до вибраного пристрою.\n" + +#, python-format +msgid "Scanning %s..." +msgstr "Сканування %s..." + +#. TRANSLATORS: The stb is performing a channel scan, progress percentage is printed in '%d' (and '%%' will show a single '%' symbol) +#, python-format +msgid "Scanning - %d%% completed" +msgid_plural "Scanning - %d%% completed" +msgstr[0] "Сканування - %d%% завершено" +msgstr[1] "Сканування - %d%% завершено" +msgstr[2] "Сканування - %d%% завершено" + +#, python-format +msgid "Scanning completed, %d channel found" +msgid_plural "Scanning completed, %d channels found" +msgstr[0] "Сканування завершено, %d канал знайдено" +msgstr[1] "Сканування завершено, %d канала знайдено" +msgstr[2] "Сканування завершено, %d каналів знайдено" + +msgid "Scanning failed!" +msgstr "Помилка сканування!" + +msgid "Scanning..." +msgstr "Сканування..." + +msgid "Scans default lamedbs sorted by satellite with a connected dish positioner" +msgstr "Сканувати lamedb по супутниках з підключеним мотопідвісом" + +msgid "Search east" +msgstr "Пошук на сході" + +msgid "Search west" +msgstr "Пошук на заході" + +msgid "Searching" +msgstr "Пошук" + +msgid "Searching east ..." +msgstr "Пошук на сході ..." + +msgid "Searching for available updates. Please wait..." +msgstr "Пошук доступних оновлень. Будь ласка зачекайте ..." + +msgid "Searching for new installed or removed packages. Please wait..." +msgstr "Пошук нових пакетів, встановлення або видалення. Будь ласка зачекайте ..." + +msgid "Searching west ..." +msgstr "Пошук на заході ..." + +msgid "Second cable of motorized LNB" +msgstr "" + +msgid "Secondary DNS" +msgstr "Вторинний DNS" + +msgid "Seek" +msgstr "Перемотка" + +msgid "Seek backward" +msgstr "Перемотка назад" + +msgid "Seek backward (enter time)" +msgstr "Перемотати назад (введіть час)" + +msgid "Seek forward" +msgstr "Перемотка вперед" + +msgid "Seek forward (enter time)" +msgstr "Перемотати вперед (введіть час)" + +msgid "Select" +msgstr "Вибрати" + +msgid "Select CAId" +msgstr "Вибір CAId" + +msgid "Select HDD" +msgstr "Вибрати HDD" + +msgid "Select a bouquet" +msgstr "Вибрати фаворит (букет)" + +msgid "Select a movie" +msgstr "Вибрати відео" + +msgid "Select a network adapter" +msgstr "Вибір мережевого адаптера" + +msgid "Select a skin" +msgstr "Вибрати скін" + +msgid "Select a tuner" +msgstr "Вибрати тюнер" + +msgid "Select a wireless network" +msgstr "Виберіть бездротову мережу" + +msgid "Select action" +msgstr "" + +#, python-format +msgid "Select action for timer %s:" +msgstr "" + +msgid "Select all" +msgstr "" + +msgid "Select an image to be downloaded" +msgstr "Виберіть прошивку для завантаження" + +msgid "Select audio track" +msgstr "Вибір Аудіо доріжки" + +msgid "Select backup files" +msgstr "Вибрати файли бекапа" + +msgid "Select backup location" +msgstr "Вибрати розташування бекапа" + +msgid "Select channel to record from" +msgstr "Вибрати канал для запису з" + +msgid "Select copy destination for:" +msgstr "Вибір місця для копії:" + +msgid "Select default EPG type..." +msgstr "Вибір типу EPG за замовчуванням..." + +msgid "Select desired image from feed list" +msgstr "Оберіть бажаний імідж зі списку" + +msgid "Select destination for:" +msgstr "Вибір місця для:" + +msgid "Select files for backup." +msgstr "Вибір файлів для резервного копіювання." + +msgid "Select files/folders to backup" +msgstr "Вибір файлів/папок для резервного копіювання." + +msgid "Select input device" +msgstr "Виберіть пристрої введення" + +msgid "Select input device." +msgstr "Вибір пристрою введення" + +msgid "Select interface" +msgstr "Виберіть інтерфейс" + +msgid "Select location" +msgstr "Вибір розташування" + +msgid "Select movie" +msgstr "Вибір відео" + +msgid "Select provider to add..." +msgstr "Вибір провайдера для додавання..." + +msgid "Select refresh rate" +msgstr "Виберіть частоту оновлення" + +msgid "Select satellites" +msgstr "" + +msgid "Select service to add..." +msgstr "Вибір сервісу для додавання..." + +msgid "Select sort method:" +msgstr "" + +msgid "Select target folder" +msgstr "Вибрати цільову папку" + +msgid "Select the movie path" +msgstr "Вибрати шлях до відео" + +msgid "Select upgrade source" +msgstr "Вибір джерела оновлення" + +msgid "Select upgrade source to edit." +msgstr "Вибір джерела оновлення для редагування." + +msgid "Select video input with up/down buttons" +msgstr "Виберіть відеовхід кнопками вгору/вниз" + +msgid "Select video mode" +msgstr "Виберіть відеорежим" + +msgid "Select wireless network" +msgstr "Виберіть бездротову мережу" + +msgid "Select your provider, and press OK to start the scan" +msgstr "Виберіть провайдера і натисніть ОК для сканування" + +msgid "Selecting satellites 1 (USALS)" +msgstr "" + +msgid "Selecting satellites 2 (USALS)" +msgstr "" + +msgid "Send DiSEqC only on satellite change" +msgstr "Надіслати DiSEqC тільки при зміні супутника" + +msgid "Separate titles with a main menu" +msgstr "Окремі розділи в головному меню" + +msgid "Sequence repeat" +msgstr "Послідовність повторення" + +msgid "Serbian" +msgstr "Сербський" + +msgid "Service" +msgstr "Сервіс" + +msgid "Service has been added to the favourites." +msgstr "Сервіс був доданий в фаворити." + +msgid "Service has been added to the selected bouquet." +msgstr "Сервіс був доданий в обраний пакет." + +msgid "Service info" +msgstr "Информація про сервіс" + +msgid "" +"Service invalid!\n" +"(Timeout reading PMT)" +msgstr "" +"Недійсний сервіс!\n" +"(Тайм-аут читання PMT)" + +msgid "Service name" +msgstr "Назва сервісу" + +msgid "" +"Service not found!\n" +"(SID not found in PAT)" +msgstr "" +"Сервіс не знайдений!\n" +"(SID не найден в PAT)" + +msgid "Service reference" +msgstr "Референс" + +msgid "Service scan" +msgstr "Сканування сервісів" + +msgid "Service searching" +msgstr "Пошук сервісів" + +msgid "Service title mode" +msgstr "Режим названия сервиса" + +msgid "" +"Service unavailable!\n" +"Check tuner configuration!" +msgstr "" +"Сервіс не доступний!\n" +"Перевірте налаштування тюнера!" + +msgid "Services" +msgstr "Сервиси" + +msgid "Set default" +msgstr "" + +msgid "Set end time" +msgstr "Встановити час закінчення" + +msgid "Set fixed" +msgstr "Фіксувати" + +msgid "Set fps for external subtitles" +msgstr "Набір кадрів в секунду для зовнішніх субтитрів" + +msgid "Set interface as default Interface" +msgstr "Встановити інтерфейс як дефолтний" + +msgid "Set limits" +msgstr "Набір обмежень" + +msgid "Set the type of the progress indication in the channel selection screen." +msgstr "Встановіть тип відображення прогресу в меню вибору каналів." + +msgid "Set time window to 1 hour" +msgstr "Установка часу вікна на 1 годину" + +msgid "Set time window to 2 hours" +msgstr "Установка часу вікна на 2 години" + +msgid "Set time window to 3 hours" +msgstr "Установка часу вікна на 3 години" + +msgid "Set time window to 4 hours" +msgstr "Установка часу вікна на4 години" + +msgid "Set time window to 5 hours" +msgstr "Установка часу вікна на 5 годин" + +msgid "Set time window to 6 hours" +msgstr "Установка часу вікна на 6 годин" + +msgid "Set voltage and 22KHz" +msgstr "Встановити напругу и 22КГц" + +msgid "Settings" +msgstr "Налаштування" + +msgid "Setup" +msgstr "Налаштування" + +msgid "Setup menu" +msgstr "Меню налаштувань" + +msgid "Setup mode" +msgstr "Режим налаштувань" + +msgid "Setup your positioner" +msgstr "Настройки вашего позиционера" + +msgid "Setup your satellite equipment" +msgstr "Настройки спутникового оборудования" + +#, python-format +msgid "Shall the USB stick wizard proceed and program the image file %s into flash memory?" +msgstr "Чи повинен майстер USB-флеша встановити імідж %s у внутрішню флеш-пам'ять?" + +msgid "Sharpness" +msgstr "Різкість" + +msgid "Short filenames" +msgstr "Коротка назва" + +msgid "Show EIT now/next in infobar" +msgstr "Показати EIT зараз/далі в інфобарі" + +msgid "Show EPG for current channel..." +msgstr "Показати EPG поточного каналу..." + +msgid "Show EPG..." +msgstr "Показати EPG..." + +msgid "Show Games show" +msgstr "Показ ігрових шоу" + +msgid "Show SNR percentage instead of dB value" +msgstr "Показати відсотки SNR замість значення dB в інфобарі" + +msgid "Show VCR scart on main menu" +msgstr "Показати 'VCR scart' в головному меню" + +msgid "Show WLAN status" +msgstr "Показати стан WLAN" + +msgid "Show animation while busy" +msgstr "Показувати анімацію (спиннер), коли система зайнята" + +msgid "Show background in radio mode" +msgstr "Показати фонову заставку в режимі радіо" + +msgid "Show bouquet selection menu" +msgstr "Показати меню вибору фаворитів" + +msgid "Show busy indicator when the system is busy." +msgstr "Показувати індикатор на екрані при зайнятості системи." + +msgid "Show channel numbers in channel selection" +msgstr "Показати номер каналу в селекторі каналів" + +msgid "Show columns" +msgstr "" + +msgid "Show crypto icons" +msgstr "" + +msgid "Show crypto info in infobar" +msgstr "Показати крипто дані емулятора в інфобарі" + +msgid "Show detailed event info" +msgstr "Показати детально інфо події" + +msgid "Show event details" +msgstr "Показати деталі події" + +msgid "Show event-progress in channel selection" +msgstr "Вид прогресу події в селекторі каналів" + +msgid "Show extended description" +msgstr "Показати розширений опис" + +msgid "Show extensions..." +msgstr "Показати доповнення..." + +msgid "Show icon for new/unseen items" +msgstr "Показ іконки для нових/невидимих ​​елементів" + +msgid "Show in extensions menu" +msgstr "Показати плагіни в меню доповнень" + +msgid "Show info" +msgstr "Показати інфо" + +msgid "Show info line" +msgstr "показати інфолінію" + +msgid "Show infobar on channel change" +msgstr "Показати інфобар при зміні каналів" + +msgid "Show infobar on event change" +msgstr "Показати інфобар при зміні подій" + +msgid "Show infobar on skip forward/backward" +msgstr "Показати інфобар при перемотуванню вперед/назад" + +msgid "Show latest commits on sourceforge" +msgstr "" + +msgid "Show message when recording starts" +msgstr "Показати повідомлення при початку запису" + +msgid "Show movie lengths in movielist" +msgstr "Показати тривалість відео в списку відео" + +msgid "Show multi channel EPG" +msgstr "" + +msgid "Show picons in channel list" +msgstr "Показати Пікони в списку каналів" + +msgid "Show positioner movement" +msgstr "Показати рух позіционеру" + +msgid "Show screensaver" +msgstr "Запустити зберігач екрану через" + +msgid "Show second infobar" +msgstr "Показати другий інфобар" + +msgid "Show service type icons" +msgstr "Показати іконки типу сервісу" + +msgid "Show services beginning with" +msgstr "Показувати сервіси що починаються з" + +msgid "Show shutdown menu" +msgstr "показати меню вимкнення" + +msgid "Show single service EPG" +msgstr "" + +msgid "Show status icons in Movielist" +msgstr "Показати іконку статусу в списку відео" + +msgid "Show status icons in movie list" +msgstr "Показати іконку статусу в списку відео" + +msgid "Show status icons in movielist" +msgstr "Показати іконку статусу в списку відео" + +msgid "Show tag menu" +msgstr "Показати меню тегів" + +msgid "Show the radio player..." +msgstr "Перейти на радіо плеєр..." + +msgid "Show the tv player..." +msgstr "Перейти на тв плеєр..." + +msgid "Show warning when timeshift is stopped" +msgstr "Показати попередження при зупинці timeshift" + +msgid "Shows the state of your wireless LAN connection.\n" +msgstr "Показує стан вашого бездротового з'єднання.\n" + +msgid "Shuffle playlist" +msgstr "Перемішати плейлист" + +msgid "Shutdown" +msgstr "Виключити" + +msgid "Shutdown when in Standby" +msgstr "Виключення в режимі очікування" + +msgid "Side by side" +msgstr "Ліво і право" + +msgid "Signal OK, proceeding" +msgstr "Сигнал ОК, в процесі" + +msgid "Signal quality" +msgstr "Якість сигналу" + +msgid "Signal strength:" +msgstr "Сила сигналу:" + +msgid "Signal: " +msgstr "Сигнал: " + +msgid "Similar" +msgstr "Аналогічний" + +msgid "Similar broadcasts:" +msgstr "Аналогічні передачі:" + +msgid "Simple" +msgstr "Простий" + +msgid "Simple titleset (compatibility for legacy players)" +msgstr "Простий заголовок (сумісність с DVD плеєрами)" + +msgid "Single" +msgstr "Одиночний" + +msgid "Single EPG" +msgstr "Одиночне EPG" + +msgid "Single satellite" +msgstr "Один супутник" + +msgid "Single step (GOP)" +msgstr "Один крок (GOP)" + +msgid "Single transponder" +msgstr "Один транспондер" + +msgid "Site latitude" +msgstr "Широта по сайту" + +msgid "Site longitude" +msgstr "Довгота по сайту" + +msgid "Skin" +msgstr "Вибір графічної оболочки" + +msgid "Skins" +msgstr "Графічні оболочки" + +msgid "Skip empty services" +msgstr "Пропускати порожні сервіси" + +msgid "Skip internet connection check (disables automatic package installation)" +msgstr "Пропустити перевірку інтернет з'єднання (відключає автоматичну установку пакетів)" + +msgid "Sleep timer" +msgstr "Таймер сну" + +msgid "SleepTimer Configuration" +msgstr "Налаштування таймера сну" + +msgid "Sleeptimer" +msgstr "Таймер сну" + +msgid "Slide picture in loop" +msgstr "Циклічний показ слайдів" + +msgid "Slide show interval (sec.)" +msgstr "Інтервал слайдшоу (сек.)" + +#, python-format +msgid "Slot %d" +msgstr "Слот %d" + +msgid "Slovak" +msgstr "Словацький" + +msgid "Slovenian" +msgstr "Словенський" + +msgid "Slow" +msgstr "Повільно" + +msgid "Slow motion speeds" +msgstr "Низька швидкість" + +msgid "Small progress" +msgstr "Маленький прогресс" + +msgid "Social/Political/Economics" +msgstr "Соціальне/Політика/Економіка" + +msgid "SoftCam / CI" +msgstr "ЕМУ менеджер / CI" + +msgid "Softcam type" +msgstr "Тип емулятора" + +msgid "Software" +msgstr "Софт" + +msgid "Software management" +msgstr "Менеджер управіння софтом" + +msgid "Software manager setup" +msgstr "Налаштування менеджера софта" + +msgid "Software restore" +msgstr "Відновлення софта" + +msgid "Software update" +msgstr "Оновлення софта" + +msgid "Softwaremanager information" +msgstr "Информація менеджера софта" + +msgid "Some plugins are not available:\n" +msgstr "Деякі плагіни недоступні:\n" + +#, python-format +msgid "Sorry, %s has not been installed!" +msgstr "Вибачте, %s не встановлений!" + +msgid "Sorry, deleting directories can (for now) only be done through the trash can." +msgstr "Вибачте, видалення директорій може (поки) бути зроблено тільки через кошик," + +msgid "Sorry, no backups found!" +msgstr "Не знайдені резервні копії!" + +msgid "Sorry, no details available!" +msgstr "Вибачте, немає детального опису!" + +msgid "" +"Sorry, your backup destination is not writeable.\n" +"Please select a different one." +msgstr "" +"Місце збереження не доступно до запису.\n" +"Будь ласка, виберіть інше." + +msgid "Sort" +msgstr "Сортування" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort A-Z" +msgstr "Сортування А-Я" + +msgid "Sort by" +msgstr "" + +msgid "Sort list:" +msgstr "" + +#. TRANSLATORS: This must fit into the header button in the EPG-List +msgid "Sort time" +msgstr "За часом" + +msgid "Sound" +msgstr "Звук" + +msgid "Sound carrier" +msgstr "Звук носія" + +msgid "Source request" +msgstr "Запит джерела" + +msgid "South" +msgstr "Південь" + +msgid "Spanish" +msgstr "Іспанський" + +msgid "Specify the end time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the end time until the inactivity sleeptimer should be ignored" +msgstr "Встановіть закінчення періоду для ігнорування дії таймера неактивності." + +msgid "Specify the start time to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "Specify the start time when the inactivity sleeptimer should be ignored" +msgstr "Встановіть початок періоду для ігнорування дії таймера неактивності." + +msgid "Specify timeframe to ignore inactivity sleeptimer" +msgstr "Період часу ігнорування таймера неактивності" + +msgid "Specify timeframe to ignore the shutdown in standby" +msgstr "" + +msgid "Split preview mode" +msgstr "Режим предварительного просмотра" + +msgid "Splitscreen" +msgstr "" + +msgid "Sports" +msgstr "Спорт" + +msgid "Standard" +msgstr "Cтандарт" + +msgid "Standart list" +msgstr "" + +msgid "Standby" +msgstr "Режим очікування" + +msgid "Standby / restart" +msgstr "Меню вимкнення" + +msgid "Standby after current event" +msgstr "Режим очікування після поточного події" + +#, python-format +msgid "Standby fan %d PWM" +msgstr "Режим очікування вентилятора %d PWM" + +#, python-format +msgid "Standby fan %d voltage" +msgstr "" + +msgid "Standby in " +msgstr "Режим очікування через " + +msgid "StandbyLED" +msgstr "" + +msgid "Start from the beginning" +msgstr "Почати з самого початку" + +msgid "Start offline decode" +msgstr "Старт відкладеного декодування" + +msgid "Start recording?" +msgstr "Почати запис?" + +msgid "Start test" +msgstr "Почати тест" + +msgid "Start time" +msgstr "Час початку" + +msgid "Start time to ignore inactivity sleeptimer" +msgstr "Початок періоду ігнорування таймера неактивності" + +msgid "Start time to ignore shutdown in standby" +msgstr "" + +msgid "Start timeshift" +msgstr "Почати таймшифт" + +msgid "Start with list screen" +msgstr "Початок з режиму списку" + +msgid "Starting on" +msgstr "Починаючи з" + +msgid "Startup the set top box in standby" +msgstr "" + +msgid "Startup to Standby" +msgstr "" + +msgid "Step east" +msgstr "Крок на схід" + +msgid "Step west" +msgstr "Крок на захід" + +msgid "Stepped east" +msgstr "Крок на схід" + +msgid "Stepped west" +msgstr "Крок на захід" + +msgid "Stop" +msgstr "Стоп" + +msgid "Stop PiP" +msgstr "Відключити PiP" + +msgid "Stop current event and disable coming events" +msgstr "Зупинити поточну подію і відключити наступні події" + +msgid "Stop current event but not coming events" +msgstr "Зупинити поточну подію, але не наступні події" + +msgid "Stop entry" +msgstr "Зупинити вхід" + +msgid "Stop playing this movie?" +msgstr "Зупинити відтворення цього відео?" + +msgid "Stop recording" +msgstr "Зупинити запис" + +msgid "Stop recording and delete" +msgstr "Зупинити і видалити запис" + +msgid "Stop service on return to movie list" +msgstr "" + +msgid "Stop test" +msgstr "Зупинити тест" + +msgid "Stop testing plane after # failed transponders" +msgstr "Зупинити тестування після # помилки транспондера" + +msgid "Stop testing plane after # successful transponders" +msgstr "Зупинити тестування після # справного транспондера" + +msgid "Stop timer recording" +msgstr "Зупинка записів за таймером" + +msgid "Stop timeshift" +msgstr "Зупинити timeshift" + +msgid "Stop timeshift?" +msgstr "Зупинити timeshift?" + +msgid "Stopped" +msgstr "Зупинено" + +msgid "Store at index" +msgstr "Зберегти номер" + +msgid "Store position" +msgstr "Зберегти позицію" + +msgid "Stored position" +msgstr "Збережене положення" + +msgid "Stream" +msgstr "Порт стрімінгу" + +msgid "Stream request" +msgstr "Порт стрімінгу" + +msgid "Strongest position" +msgstr "Краща позиція" + +msgid "Subservice list..." +msgstr "Список суб сервісів..." + +msgid "Subservices" +msgstr "Суб сервіси" + +msgid "Subtitle Quickmenu" +msgstr "Налаштування субтитрів" + +msgid "Subtitle alignment" +msgstr "Вирівнювання субтитрів" + +msgid "Subtitle border width" +msgstr "Ширина кайми субтитрів" + +msgid "Subtitle delay when timing is bad" +msgstr "Затримка субтитрів при неправильному часі" + +msgid "Subtitle delay when timing lacks" +msgstr "Затримка субтитрів при браку часу" + +msgid "Subtitle font size" +msgstr "Розмір шрифту субтитрів" + +msgid "Subtitle language selection 1" +msgstr "Вибір мови субтитрів 1" + +msgid "Subtitle language selection 2" +msgstr "Вибір мови субтитрів 2" + +msgid "Subtitle language selection 3" +msgstr "Вибір мови субтитрів 3" + +msgid "Subtitle language selection 4" +msgstr "Вибір мови субтитрів 4" + +msgid "Subtitle position" +msgstr "Позиція субтитрів" + +msgid "Subtitle selection" +msgstr "Вибір субтитрів" + +msgid "Subtitle selection..." +msgstr "Вибір субтитрів" + +msgid "Subtitle settings" +msgstr "Меню налаштування субтитрів" + +msgid "Subtitles" +msgstr "Субтитри" + +msgid "Sun" +msgstr "Нд" + +msgid "Sunday" +msgstr "Неділя" + +msgid "Swap PiP and main picture" +msgstr "Поміняти PiP і основне зображення" + +msgid "Swap services" +msgstr "Поміняти місцями сервіси" + +msgid "Swedish" +msgstr "Шведська" + +msgid "Switch TV to correct input" +msgstr "Переключити ТБ на коректний вхід" + +msgid "Switch between filelist/playlist" +msgstr "Змінити список файлів / плейлист" + +msgid "Switch between normal mode and list mode" +msgstr "Перехід від нормального режиму до списку" + +msgid "Switch to HDMI in mode" +msgstr "" + +msgid "Switch to filelist" +msgstr "Переключити на список файлів" + +msgid "Switch to next channel" +msgstr "" + +msgid "Switch to next channel in history" +msgstr "Переключити на наступний канал в історії" + +msgid "Switch to next sub service" +msgstr "Перейти на наступний суб сервіс" + +msgid "Switch to playlist" +msgstr "Переключити на плейлист" + +msgid "Switch to previous channel" +msgstr "Переключити на попередній канал" + +msgid "Switch to previous channel in history" +msgstr "Переключити на попередній канал в історії" + +msgid "Switch to previous sub service" +msgstr "Перейти на попередній суб сервіс" + +msgid "Switchable tuner types:" +msgstr "Перемикані типи тюнерів:" + +msgid "Symbol rate" +msgstr "Швидкість потоку" + +msgid "Symbol rate:" +msgstr "" + +msgid "Sync failure moving back to origin !" +msgstr "Збій синхронізації, повернення до оригіналу!" + +msgid "System" +msgstr "Система" + +#. TRANSLATORS: Add here whatever should be shown in the "translator" about screen, up to 6 lines (use \n for newline) +msgid "TRANSLATOR_INFO" +msgstr "Irkoff <irkoff@gmail.com>" + +msgid "TS file is too large for ISO9660 level 1!" +msgstr "TS файл занадто великий для ISO9660 level 1!" + +msgid "TSID" +msgstr "TSID" + +msgid "TV physical address report" +msgstr "Оповіщення фізичної адреси ТВ" + +msgid "TXT PID" +msgstr "TXT ПІД" + +msgid "Table of contents for collection" +msgstr "Зміст колекції" + +msgid "Tags" +msgstr "Теги" + +msgid "Teletext subtitle color" +msgstr "Колір телетексту субтитрів" + +msgid "Temperature and fan control" +msgstr "Батьківський контроль" + +msgid "Terrestrial" +msgstr "Наземний" + +msgid "Terrestrial provider" +msgstr "Наземний провайдер" + +msgid "Test DiSEqC settings" +msgstr "Тест налаштувань DiSEqC" + +msgid "Test mode" +msgstr "Режим теста" + +msgid "Test the network configuration of your receiver.\n" +msgstr "Тест мережевої конфігурації вашого ресивера.\n" + +msgid "Test type" +msgstr "Тип теста" + +msgid "Text color" +msgstr "Колір текста" + +msgid "Thai" +msgstr "Тайський" + +msgid "" +"Thank you for using the wizard.\n" +"Please press OK to continue." +msgstr "" +"Спасибі Вам за використання майстра.\n" +"Натисніть ОК для продовження." + +msgid "" +"Thank you for using the wizard. Your receiver is now ready for use.\n" +"Press OK to start using your receiver." +msgstr "" +"Спасибі Вам за використання майстра. Ваш ресивер готовий до роботи.\n" +"Будь ласка, натисніть OK для початку роботи вашого ресивера." + +msgid "The DVD standard doesn't support H.264 (HDTV) video streams. Do you want to create a special format data DVD (which will not play in stand-alone DVD players) instead?" +msgstr "DVD стандарт не підтримує H.264 (HDTV) відео потоків. Ви хочете створити спеціальний формат DVD (який можливо не програватиметься в стаціонарних DVD програвачах)?" + +msgid "The PIN code has been changed successfully." +msgstr "PIN-код успішно змінений." + +msgid "The PIN codes you entered are different." +msgstr "Введений PIN код не вірний" + +msgid "" +"The USB stick was prepared to be bootable.\n" +"Now you can download an NFI image file!" +msgstr "" +"USB-флеш підготовлений як завантажувальний.\n" +"Тепер Ви можете встановити NFI образ!" + +msgid "The backup failed. Please choose a different backup location." +msgstr "Збереження не виконано. Виберіть інше місце розташування. " + +#, python-format +msgid "" +"The current beta image might not be stable.\n" +"For more information see %s." +msgstr "" + +#, python-format +msgid "" +"The directory %s is not writable.\n" +"Make sure you select a writable directory instead." +msgstr "" +"У цю папку %s записати не можна.\n" +"Переконайтеся, що натомість вибрали потрібну папку." + +#, python-format +msgid "" +"The following device was found:\n" +"\n" +"%s\n" +"\n" +"Do you want to write the USB flasher to this stick?" +msgstr "" +"Знайдено пристрій:\n" +"\n" +"%s\n" +"\n" +"Хочете встановити USB flasher на цей пристрій?" + +msgid "The following files were found..." +msgstr "Наступні файли були знайдені ..." + +msgid "The md5sum validation failed, the file may be corrupted!" +msgstr "MD5 сума файла невірна, файл ймовірно пошкоджений!" + +msgid "" +"The network wizard extension is not installed!\n" +"Please install it." +msgstr "" +"Плагін Witeless LAN не встановлений!\n" +"Будь ласка, встановіть його." + +#, python-format +msgid "The path %s already exists." +msgstr "Цей шлях %s вже існує." + +msgid "The pin code you entered is wrong." +msgstr "Введений PIN-код невірний." + +#, python-format +msgid "The results have been written to %s." +msgstr "Результати були записані в %s." + +msgid "The sleep timer has been activated." +msgstr "Таймер сну був включений." + +msgid "The sleep timer has been disabled." +msgstr "Таймер сну був вимкнений." + +msgid "" +"The software management extension is not installed!\n" +"Please install it." +msgstr "" +"Плагін Witeless LAN не встановлений!\n" +"Будь ласка, встановіть його." + +#, python-format +msgid "The status of the current beta image could not be checked because %s can not be reached." +msgstr "" + +msgid "The timer file (timers.xml) is corrupt and could not be loaded." +msgstr "Файл таймерів (timers.xml) пошкоджений і не може бути завантажений." + +msgid "The user interface of your receiver is restarting" +msgstr "Рестарт GUI ресивера" + +msgid "" +"The user interface of your receiver is restarting\n" +"due to an error in mytest.py" +msgstr "" +"Рестарт GUI ресивера\n" +"через помилку в mytest.py" + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it and choose what you want to do next." +msgstr "" +"Плагін Wireless LAN не встановлений!\n" +"Будь ласка, встановіть його і виберіть, що робити далі." + +msgid "" +"The wireless LAN plugin is not installed!\n" +"Please install it." +msgstr "" +"Плагін Witeless LAN не встановлений!\n" +"Будь ласка, встановіть його." + +msgid "The wizard can backup your current settings. Do you want to do a backup now?" +msgstr "Майстер може зберегти Ваші поточні настройки. Ви хочете зробити це зараз?" + +#, python-format +msgid "The wizard found a configuration backup. Do you want to restore your old settings from %s?" +msgstr "" + +msgid "The wizard is finished now." +msgstr "Майстер закінчив роботу." + +msgid "There are at least " +msgstr "Знайдено принаймні " + +#, python-format +msgid "There are at least %s updates available." +msgstr "%s доступних оновлень для вашого ресивера." + +msgid "There are currently no outstanding actions." +msgstr "У поточний момент немає нових оновлень." + +msgid "There are no updates available." +msgstr " доступних оновлень." + +msgid "There is no signal to lock on !" +msgstr "Немає сигналу з цього захвату!" + +msgid "" +"There might not be enough Space on the selected Partition.\n" +"Do you really want to continue?" +msgstr "" +"Можливо недостатньо місця на вибраному розділі. \n" +"Ви дійсно хочете продовжити?" + +msgid "This DVD RW medium is already formatted - reformatting will erase all content on the disc." +msgstr "Цей DVD RW вже відформатований - переформатування може видалити всі вміст диску." + +msgid "" +"This plugin creates a USB stick which can be used to update the firmware of your receiver without the need for a network or WLAN connection.\n" +"First, a USB stick needs to be prepared so that it becomes bootable.\n" +"In the next step, an NFI image file can be downloaded from the update server and saved on the USB stick.\n" +"If you already have a prepared bootable USB stick, please insert it now. Otherwise plug in a USB stick with a minimum size of 64 MB!" +msgstr "" +"Цей плагін створює USB-флеш, який може використовуватися, щоб оновити прошивку вашого ресивера без підключення до інтернету.\n" +"По перше, USB повинен бути самозавантажувальний.\n" +"Потім файл іміджу NFI потрібно завантажити з сервера оновлення і зберегти на USB.\n" +"Якщо у Вас вже є завантажувальний USB, будь ласка, вставте. Об'єм USB повинен бути не менше 64 Мб!" + +msgid "This plugin is installed." +msgstr "Плагін встановлений." + +msgid "This plugin is not installed." +msgstr "" +"Плагін Witeless LAN не встановлений!\n" +"Будь ласка, встановіть його." + +msgid "This plugin will be installed." +msgstr "Плагін буде встановлений." + +msgid "This plugin will be removed." +msgstr "Плагін буде видалений." + +#, python-format +msgid "This receiver cannot decode %s streams!" +msgstr "Цей ресівер не може декодувати %s потоки!" + +msgid "" +"This test checks for configured nameservers.\n" +"If you get a \"unconfirmed\" message:\n" +"- please check your DHCP, cabling and adapter setup\n" +"- if you configured your nameservers manually please verify your entries in the \"Nameserver\" configuration" +msgstr "" +"Цей тест перевіряє конфігурацію DNS серверів.\n" +"При появі повідомлення \"не присвоєно\":\n" +"- будь ласка перевірте налаштування DHCP, мережевого адаптера і стан сетевого кабеля\n" +"- Якщо Ви прописали вручну DNS сервера, будь ласка перевірте конфігурацію \"DNS сервер\"" + +msgid "" +"This test checks whether a network cable is connected to your LAN adapter.\n" +"If you get a \"disconnected\" message:\n" +"- verify that a network cable is attached\n" +"- verify that the cable is not broken" +msgstr "" +"Цей тест перевіряє наявність підключення мережевого кабелю до мережевого адаптеру.\n" +"При появі повідомлення \" немає з'єднання\":\n" +"- перевірте, що мережевий кабель підключений\n" +"- перевірте, що мережевий кабель не обірваний" + +msgid "" +"This test checks whether a valid IP address is found for your LAN adapter.\n" +"If you get a \"unconfirmed\" message:\n" +"- no valid IP address was found\n" +"- please check your DHCP, cabling and adapter setup" +msgstr "" +"Цей тест перевіряє чи присвоєно IP адресу мережевого адаптера..\n" +"При появі повідомлення \" не присвоєно\":\n" +"- IP адресу не було знайдено\n" +"- будь ласка перевірте налаштування DHCP, мережевого адаптера і стан мережевого кабелю" + +msgid "" +"This test checks whether your LAN adapter is set up for automatic IP address configuration with DHCP.\n" +"If you get a \"disabled\" message:\n" +" - then your LAN adapter is configured for manual IP setup\n" +"- verify thay you have entered correct IP informations in the adapter setup dialog.\n" +"If you get an \"enabeld\" message:\n" +"-verify that you have a configured and working DHCP server in your network." +msgstr "" +"Цей тест перевіряє, чи включений DHCP в настройках мережевого адаптера, для присвоєння автоматичного IP.\n" +"При появі повідомлення \" відключений\":\n" +"- введіть вручну IP адресу при налаштуванні мережевого адаптера .\n" +"- перевірте, що Ви ввели коректну інформацію в меню налаштування мережі.\n" +"При появі повідомлення \" під'єднано\":\n" +"- це підтверджує, що сформований робочий DHCP сервер у Вашій мережі." + +msgid "This test detects your configured LAN adapter." +msgstr "Даний тест визначить ваш мережевий-адаптер." + +msgid "" +"This will (re-)calculate all positions of your rotor and may remove previously memorised positions and fine-tuning!\n" +"Are you sure?" +msgstr "" +"Відбудеться (пере-) розрахунок всіх позицій позіционеру і всі збережені позиції і настройки можуть бути загублені!\n" +"Ви впевнені в продовженні?" + +msgid "Three" +msgstr "Три" + +msgid "Threshold" +msgstr "Гетеродин" + +msgid "Thu" +msgstr "Чт" + +msgid "Thumbnails" +msgstr "Эскізи" + +msgid "Thursday" +msgstr "Четвер" + +msgid "Time" +msgstr "Час" + +msgid "Time scale" +msgstr "Тимчасовий масштаб сітки" + +msgid "Timer" +msgstr "Таймер" + +msgid "Timer Overview" +msgstr "" + +msgid "Timer edit" +msgstr "Редагування таймера" + +msgid "Timer editor" +msgstr "Редактор таймерів" + +msgid "Timer entry" +msgstr "Введення таймера" + +msgid "Timer log" +msgstr "Лог таймера" + +msgid "" +"Timer overlap in timers.xml detected!\n" +"Please recheck it!" +msgstr "" +"Конфлікт таймерів виявлений в timers.xml!\n" +"Будь ласка, перевірте це!" + +msgid "Timer overview" +msgstr "Огляд таймерів" + +msgid "Timer recording location" +msgstr "Місце запису за таймером" + +msgid "Timer sanity error" +msgstr "Помилка стану таймера" + +msgid "Timer selection" +msgstr "Вибір таймера" + +msgid "Timer selection..." +msgstr "Вибір таймера..." + +msgid "Timer type" +msgstr "Тип таймера" + +msgid "Timeshift" +msgstr "Таймшифт" + +msgid "Timeshift Live" +msgstr "" + +msgid "Timeshift location" +msgstr "Розташування таймшифта" + +msgid "Timeshift not possible!" +msgstr "Таймшифт не можливий!" + +msgid "Timezone" +msgstr "Часовий пояс" + +msgid "Title" +msgstr "Назва" + +msgid "Title properties" +msgstr "Властивості заголовка" + +msgid "Titleset mode" +msgstr "Режим установки заголовка" + +msgid "To audio selection" +msgstr "Вибір звуку" + +msgid "To subtitle selection" +msgstr "Вибір субтитрів" + +msgid "" +"To update your receiver firmware, please follow these steps:\n" +"1) Turn off your box with the rear power switch and make sure the bootable USB stick is plugged in.\n" +"2) Turn mains back on and hold the DOWN button on the front panel pressed for 10 seconds.\n" +"3) Wait for bootup and follow instructions of the wizard." +msgstr "" +"Щоб оновити ваш ресивер, будь ласка, виконайте такі дії:\n" +"1) Вимкніть ресівер тумблером ззаду і переконайтеся, що завантажувальний USB під'єднано.\n" +"2) Увімкніть ресівер і натисніть кнопку ВНИЗ на передній панелі ресивера близько 10 секунд.\n" +"Дочекайтеся завантаження і дотримуйтесь вказівок Майстра." + +msgid "Today" +msgstr "Сьогодні" + +msgid "Toggle a cut mark at the current position" +msgstr "Розташувати мітку обробки в поточній позиції" + +msgid "Tone amplitude" +msgstr "Тоновий режим" + +msgid "Tone mode" +msgstr "Тоновий режим" + +msgid "Toneburst" +msgstr "Тоновий сигнал" + +msgid "Toneburst A/B" +msgstr "тоновий сигнал A/B" + +msgid "Top and bottom" +msgstr "Верх і низ" + +msgid "Track" +msgstr "Доріжка" + +msgid "Translation" +msgstr "Переклад" + +msgid "Translation:" +msgstr "Переклад:" + +msgid "Translations" +msgstr "" + +msgid "Transmission mode" +msgstr "Режим передачі" + +msgid "Transponder" +msgstr "Транспондер" + +msgid "Transponder type" +msgstr "Тип транспондера" + +msgid "Trash can" +msgstr "Кошик" + +msgid "Tries left:" +msgstr "Залишилося спроб:" + +msgid "Try to find used transponders in cable network.. please wait..." +msgstr "Намагаємося знайти транспондери, використовувані в кабельній мережі .. Будь ласка, зачекайте ..." + +msgid "Trying to download a new packetlist. Please wait..." +msgstr "Намагаємося завантажити новий список пакетів. Будь ласка, зачекайте..." + +msgid "Tue" +msgstr "Вівт" + +msgid "Tuesday" +msgstr "Вівторок" + +msgid "Tune" +msgstr "Налаштування" + +msgid "Tune and focus" +msgstr "Налагодження та фокусування" + +msgid "Tune failed!" +msgstr "Збій мовлення!" + +msgid "Tuner" +msgstr "Тюнер" + +msgid "Tuner configuration" +msgstr "Налаштування тюнера" + +msgid "Tuner is not supported" +msgstr "" + +msgid "Tuner slot" +msgstr "Слот тюнера" + +msgid "Tuner status" +msgstr "Статус тюнера" + +#, python-format +msgid "Tuner status %s" +msgstr "Статус тюнера %s" + +msgid "Tuner type" +msgstr "Тюнер" + +msgid "Turkish" +msgstr "Турецький" + +msgid "Turn on the power LED during standby." +msgstr "" + +msgid "Turning step size" +msgstr "" + +msgid "Two" +msgstr "Два" + +msgid "Type" +msgstr "Тип" + +msgid "Type of scan" +msgstr "Тип сканування" + +msgid "USALS" +msgstr "USALS" + +msgid "USALS calibration" +msgstr "Калібрування USALS" + +msgid "USB stick" +msgstr "USB флеш" + +msgid "USB stick wizard" +msgstr "Майстер USB" + +msgid "" +"Unattended upgrade in progress\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Автоматичне оновлення в процесі\n" +"Дочекайтеся перезавантаження ресивера\n" +"Це може тривати кілька хвилин" + +msgid "Undo install" +msgstr "Скасування установки" + +msgid "Undo uninstall" +msgstr "Скасування видалення" + +msgid "Unencrypted" +msgstr "Декодований" + +msgid "UnhandledKey" +msgstr "Не оброблений ключ" + +msgid "Unicable" +msgstr "Unicable" + +msgid "Unicable LNB" +msgstr "Unicable LNB" + +msgid "Unicable Martix" +msgstr "Unicable Martix" + +msgid "Uninstall" +msgstr "Видалити" + +msgid "Universal LNB" +msgstr "універсальний-LNB" + +msgid "Unknown" +msgstr "<невідомий>" + +msgid "Unmount" +msgstr "Помилка відключення" + +msgid "Unsupported" +msgstr "Невідома" + +msgid "Update" +msgstr "Оновлення" + +msgid "Update and ask to reboot" +msgstr "Оновити і запитати про перезавантаження" + +msgid "Update and reboot (recommended)" +msgstr "Оновити і перезавантажити (рекомендується)" + +msgid "Update channel list only" +msgstr "Оновити тільки список каналів" + +#, python-format +msgid "Update completed, %d package was installed." +msgid_plural "Update completed, %d packages were installed." +msgstr[0] "Оновлення закінчено, %d пакет встановлений." +msgstr[1] "Оновлення закінчено, %d пакета встановлено." +msgstr[2] "Оновлення закінчено, %d пакетов встановлено." + +msgid "Update completed. Do you want to reboot your receiver?" +msgstr "Оновлення закінчено. Хочете перезавантажити ресивер?" + +msgid "Update failed. Your receiver does not have a working internet connection." +msgstr "Оновлення не вдалося. У вашому ресівері немає працюючого інтернет-з'єднання." + +msgid "Update has completed." +msgstr "Оновлення закінчено." + +msgid "Updatefeed not available." +msgstr "Оновлення з фида недоступні." + +msgid "Updating software catalog" +msgstr "Оновлення каталогу софта" + +msgid "Upgrading" +msgstr "Оновлення" + +msgid "Use" +msgstr "Використовувати" + +msgid "Use DHCP" +msgstr "Використовувати DHCP" + +msgid "Use EIT EPG information when it is available." +msgstr "Використовувати інформацію EIT EPG, коли вона існує." + +msgid "Use FreeSat EPG information when it is available." +msgstr "Використовувати інформацію FreeSat EPG, коли вона існує." + +msgid "Use MHW EPG information when it is available." +msgstr "Використовувати інформацію MHW EPG, коли вона існує." + +msgid "Use Netmed EPG information when it is available." +msgstr "Використовувати інформацію Netmed EPG, коли вона існує." + +msgid "Use TV remote control" +msgstr "Тип пульта ДУ" + +msgid "Use USALS for this sat" +msgstr "Використовувати USALS для цього супутника" + +msgid "Use ViaSat EPG information when it is available." +msgstr "Використовувати інформацію ViaSat EPG, коли вона існує." + +msgid "Use Virgin EPG information when it is available." +msgstr "" + +msgid "Use a gateway" +msgstr "Використовувати шлюз" + +msgid "Use fastscan channel names" +msgstr "Назви каналів з ​​швидкого пошуку" + +msgid "Use fastscan channel numbering" +msgstr "Нумерація каналів з ​​швидкого пошуку" + +msgid "Use frequency or channel" +msgstr "" + +msgid "Use individual settings for each directory" +msgstr "Індивід. налаштування для кожного каталогу" + +msgid "Use interface" +msgstr "Використовувати інтерфейс" + +msgid "Use official channel numbering" +msgstr "Офіційна нумерація каналів" + +msgid "Use original DVB subtitle position" +msgstr "Використовувати оригінальну позицію DVB субтитрів" + +msgid "Use original teletext position" +msgstr "Використовувати початкове положення телетексту" + +msgid "Use power measurement" +msgstr "Використовувати вимірювання потужності" + +msgid "Use the network wizard to configure selected network adapter" +msgstr "Використовувати майстер для налаштування мережі" + +msgid "Use the network wizard to configure your network\n" +msgstr "Використовувати майстер для налаштування мережі\n" + +msgid "Use the up/down keys on your remote control to select an option. After that, press OK." +msgstr "Використовуйте кнопки вгору і вниз на пульті для вибору опцій. після цього натисніть OK." + +msgid "Use the wizard to set up basic features" +msgstr "Користуйтеся майстром для налаштування основних параметрів" + +msgid "Use these input device settings?" +msgstr "Використовувати ці параметри пристрою введення?" + +msgid "Use these settings?" +msgstr "Використовувати ці налаштування?" + +msgid "Use this video enhancement settings?" +msgstr "Використовувати ці відео налаштування?" + +msgid "Use trash can in movielist" +msgstr "Використання кошика в списку фільмів" + +msgid "Used service scan type" +msgstr "Використовуваний тип сканування" + +msgid "User - bouquets" +msgstr "Список фаворитів" + +msgid "User defined" +msgstr "Визначено користувачем" + +msgid "User defined transponder" +msgstr "" + +msgid "User interface" +msgstr "Інтерфейс користувача" + +msgid "Username" +msgstr "Ім'я користувача" + +#, python-format +msgid "Using LNB %d" +msgstr "Використовуваний LNB %d" + +msgid "Using fixed address" +msgstr "Використовувати фіксірованнний адресу" + +#, python-format +msgid "Using tuner %s" +msgstr "Використовується тюнер %s" + +msgid "Usually when the subtitle language is the same as the audio language, the subtitles will not be used. Enable this option to allow these subtitles to be used." +msgstr "Зазвичай коли мова субтитрів збігається з мовою Аудіо, субтитри НЕ показуються. Цей вибір дозволяє показувати субтитри, коли вони збігаються." + +msgid "VCR scart" +msgstr "Відеомагнітофон" + +msgid "VMGM (intro trailer)" +msgstr "VMGM (трейлер)" + +msgid "Vertical" +msgstr "Вертикальна" + +msgid "Vertical turning speed" +msgstr "Поляризація (V) - швидкість повороту" + +msgid "Video PID" +msgstr "Відео PID" + +msgid "Video enhancement preview" +msgstr "Попередній перегляд відео налаштувань" + +msgid "Video enhancement settings" +msgstr "Попередній перегляд відео налаштувань" + +msgid "Video enhancement setup" +msgstr "Меню відео налаштувань" + +msgid "Video fine tuning" +msgstr "Налаштування екрану" + +msgid "" +"Video input selection\n" +"\n" +"Please press OK if you can see this page on your TV (or select a different input port).\n" +"\n" +"The next input port will be automatically probed in 20 seconds." +msgstr "" +"Вибір відео входу\n" +"\n" +"Натисніть ОК якщо ви бачите цю сторінку на екрані ТВ (або виберіть інший вход).\n" +"\n" +"Наступний вхід буде автоматично обраний через 10 сек." + +msgid "Video mode selection." +msgstr "Вибір режиму відео" + +msgid "Video output" +msgstr "Відеовихід" + +msgid "Video setup" +msgstr "Налаштування відео" + +msgid "Video wizard" +msgstr "Мастер видеонастроек" + +#, python-format +msgid "Video: %s fps" +msgstr "Відео: %s fps" + +msgid "VideoMode" +msgstr "" + +msgid "Videocodec" +msgstr "Відеокодек" + +msgid "Videoformat" +msgstr "Відеоформат" + +msgid "Videosize" +msgstr "Відеоразмер" + +msgid "View Rass interactive..." +msgstr "Інтерактивний перегляд RASS" + +msgid "View details" +msgstr "Показати деталі" + +msgid "View list of available " +msgstr "Перегляд списку доступних " + +msgid "View list of available CommonInterface extensions" +msgstr "Перегляд списку доступних доповнень картрідера" + +msgid "View list of available EPG extensions." +msgstr "Перегляд списку доступних доповнень EPG" + +msgid "View list of available Satellite equipment extensions." +msgstr "Перегляд списку доступних доповнень супутникових налаштувань" + +msgid "View list of available communication extensions." +msgstr "Перегляд списку доступних доповнень зв'язку" + +msgid "View list of available default settings" +msgstr "Перегляд списку доступних дефолтних налаштувань" + +msgid "View list of available display and userinterface extensions." +msgstr "Перегляд списку доступних доповнень налаштувань екрану і інтерфейсу" + +msgid "View list of available multimedia extensions." +msgstr "Перегляд списку доступних доповнень мультимедіа" + +msgid "View list of available networking extensions" +msgstr "Перегляд списку доступних мережевих доповнень" + +msgid "View list of available recording extensions" +msgstr "Перегляд списку доступних доповнень для запису" + +msgid "View list of available skins" +msgstr "Перегляд списку доступних скінів" + +msgid "View list of available software extensions" +msgstr "Перегляньте список доступних програмних доповнень" + +msgid "View list of available system extensions" +msgstr "Перегляньте список доступних системних доповнень" + +msgid "View photos..." +msgstr "Перегляд фотографій..." + +msgid "View teletext..." +msgstr "Переглянути телетекст" + +msgid "View video CD..." +msgstr "Переглянути Video CD..." + +msgid "Virtual keyboard" +msgstr "Віртуальна клавіатура" + +msgid "Voltage mode" +msgstr "Режим напруги" + +msgid "Volume" +msgstr "Гучність" + +msgid "W" +msgstr "W" + +msgid "WEP" +msgstr "WEP" + +msgid "WLAN connection" +msgstr "WLAN з'єднання" + +msgid "WPA" +msgstr "WPA" + +msgid "WPA or WPA2" +msgstr "WPA або WPA2" + +msgid "WPA2" +msgstr "WPA2" + +msgid "WSS on 4:3" +msgstr "WSS on 4:3" + +msgid "Waiting" +msgstr "Очікування" + +msgid "Waiting for mount" +msgstr "Очікування монтування" + +msgid "Waiting for partition" +msgstr "Не вдалося створити розділ" + +msgid "Wakeup" +msgstr "Увімкнення ТБ" + +msgid "Wakeup TV from standby" +msgstr "Пробудити ТБ з режиму очікування" + +msgid "Wakeup receiver for start timer" +msgstr "" + +msgid "Wakeup receiver from standby" +msgstr "Підняти ресивер з режиму очікування" + +msgid "Wakeup signal from TV" +msgstr "Сигнал прокидання від телевізора" + +msgid "Wakeup type" +msgstr "" + +msgid "Warning: no LNB; using factory defaults." +msgstr "Попередження: немає LNB; використовуються заводські налаштування." + +msgid "Watch movies..." +msgstr "Відтворити записане відео..." + +msgid "Watch recordings..." +msgstr "запис..." + +msgid "Wed" +msgstr "Середа" + +msgid "Wednesday" +msgstr "Середа" + +msgid "Weekday" +msgstr "День тижня" + +msgid "Weighted position" +msgstr "Аналізуємо позицію" + +msgid "" +"Welcome to the cutlist editor.\n" +"\n" +"Seek to the start of the stuff you want to cut away. Press OK, select 'start cut'.\n" +"\n" +"Then seek to the end, press OK, select 'end cut'. That's it." +msgstr "" +"Ласкаво просимо в редактор відео.\n" +"\n" +"Відзначте місце з якого ви хочете почати редагування. Натисність OK, виберіть 'початок редагування'.\n" +"\"\n" +"\"Після, відзначте точку закінчення редагування, натисніть OK, виберіть'кінець редагування'. От і все;)" + +msgid "Welcome to the image upgrade wizard. The wizard will assist you in upgrading the firmware of your receiver by providing a backup facility for your current settings and a short explanation of how to upgrade your firmware." +msgstr "Ласкаво просимо в майстер оновлення іміджу. Майстер допоможе вам в оновленні програмного забезпечення вашого ресивера шляхом збереження ваших поточних налаштувань і коротких підказок щодо процесу оновлення." + +msgid "" +"Welcome.\n" +"\n" +"If you want to connect your receiver to the Internet, this wizard will guide you through the basic network setup of your receiver.\n" +"\n" +"Press OK to start configuring your network" +msgstr "" +"Ласкаво просимо.\n" +"\n" +"Якщо ви хочете підключити ваш ресивер до інтернету, цей майстер проведе вас через основні налаштування мережі вашого ресивера.\n" +"\n" +"Натисність ОК для початку налаштування мережі." + +msgid "" +"Welcome.\n" +"\n" +"This start wizard will guide you through the basic setup of your receiver.\n" +"Press the OK button on your remote control to move to the next step." +msgstr "" +"Ласкаво просимо.\n" +"\n" +"Цей майстер допоможе Вам налаштувати основні параметри вашого ресивера.\n" +"Натисність OK на пульті управління для переходу до наступного кроку." + +msgid "Welcome..." +msgstr "Ласкаво просимо..." + +msgid "West" +msgstr "Захід" + +msgid "West limit set" +msgstr "Увімкнути обмеження на захід" + +msgid "What do you want to scan?" +msgstr "Що Ви хочете знайти?" + +msgid "When enabled the PiP can be closed by the exit button." +msgstr "Якщо увімкнено, то можна закрити екран PiP за допомогою кнопки вихід." + +msgid "When enabled the arrow buttons around the OK button will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled the left, right, CH+/-, B+/-, P+/- buttons will follow the 'neutrino' style zap controls instead of the enigma2 style." +msgstr "" + +msgid "When enabled you can specify a timeframe to ignore the shutdown timer when the receiver is in standby mode" +msgstr "" + +msgid "When enabled you can specify a timeframe were the inactivity sleeptimer is ignored. Not the detection is disabled during this timeframe but the inactivity timeout is disabled" +msgstr "Якщо увімкнено, то встановіть період часу ігнорування дії для таймера неактивності." + +msgid "When enabled you can zap channels with the CH+/-, B+/-, P+/- buttons instead of opening the channel selection list." +msgstr "" + +msgid "When enabled you get the channel selection list via the OK button, the infobar toggle is then transfered to exit button" +msgstr "" + +msgid "When enabled, AIT data will be included in http streams. This allows a client receiver to use HbbTV." +msgstr "Коли ця функція включена, AIT дані будуть включені в в http стрім. це дозволить обладнанню клієнта використовувати HbbTV." + +msgid "When enabled, ECM data will be included in http streams. This allows a client receiver to do the descrambling." +msgstr "Коли ця функція включена, ECM дані будуть включені в http стрім. це дозволить обладнанню клієнта виконувати декодування." + +msgid "When enabled, EIT data will be included in http streams. This allows a client receiver to show EPG." +msgstr "Коли ця функція увімкнена, EIT дані будуть включені в http стрім. це дозволить обладнанню клієнта побачити дані EPG." + +msgid "When enabled, a popup message will be shown when a movie has finished and the next one will start." +msgstr "Показати спливаюче вікно, коли відео закінчилося, а наступне починається." + +msgid "When enabled, a popup message will be shown when a recording starts." +msgstr "Якщо увімкнено, то з'явиться повідомлення при початку запису." + +msgid "When enabled, a radio background image will be visible while listening to a radio channel." +msgstr "Показати фонове зображення і список каналів, під час прослуховування радіо каналів." + +msgid "When enabled, a recording is allowed to interrupt live tv, when there are no free tuners." +msgstr "Якщо увімкнено, то при старті таймера запису, передача в прямому ефірі буде перервана, якщо немає вільних тюнерів." + +msgid "When enabled, a warning will be displayed and the user will get an option to stop or to continue the timeshift." +msgstr "Якщо увімкнено, буде показано попередження і користувач отримає можливість зупинити або продовжити таймшифт." + +msgid "When enabled, authentication is required to watch http streams." +msgstr "" + +msgid "When enabled, channel numbering will start at '1' for each bouquet." +msgstr "Якщо увімкнено, нумерація каналів в кожному Фаворитному списку буде починатися з '1' номера" + +msgid "When enabled, content with an aspect ratio of 4:3 will be stretched to fit the screen." +msgstr "Коли зображення на каналі має співвідношення сторін 4:3, виберіть, чи буде розтягнута картинка на весь екран." + +msgid "When enabled, continue to the next bouquet when the last channel of the current bouquet is reached while changing channels." +msgstr "Якщо увімкнено, при перемиканні каналів буде перехід до наступного фавориту, коли останній канал поточного фаворита буде досягнутий." + +msgid "When enabled, deleted recordings are moved to the trash can, instead of being deleted immediately." +msgstr "Колі ця функція включена, відалені записи будуть переміщені в кошик, замість безповоротного видалення." + +msgid "When enabled, display the EIT now/next eventdata in infobar. When disabled, display now/next eventdata from the EPG cache instead." +msgstr "Якщо увімкнено, події зараз/далі з DVB EPG будуть показані в інфобарі. При відключенні, дані події будуть показуватися з файлу кеша EPG." + +msgid "When enabled, encryption info will be shown in the infobar (when supported by the skin)." +msgstr "Показати інформацію про декодуванні в інфобарі (якщо це підтримується скіном)." + +msgid "When enabled, error messages related to the Common Interface module will not be shown." +msgstr "Приховати повідомлення про помилки від CI модуля." + +msgid "When enabled, error messages related to zapping will not be shown." +msgstr "Не показувати будь-які повідомлення про помилки при перемиканні каналів." + +msgid "When enabled, external subtitles will be always turned on for playback movie." +msgstr "Якщо це активовано, то зовнішні субтитри будуть завжди включені для Відтворення відео." + +msgid "When enabled, graphical DVB subtitles are preferred over teletext subtitles, when both types are available." +msgstr "Перевагу графічним субтитрам DVB, ніж телетекст-субтитрам, коли обидва типи наявні." + +msgid "When enabled, graphical DVB subtitles will be centered horizontally." +msgstr "Якщо увімкнено, графічні DVB субтитри будуть зосереджені горизонтально." + +msgid "When enabled, graphical DVB subtitles will be displayed at their original position." +msgstr "Якщо увімкнено, графічні DVB субтитри будуть показані в їх попередньому положенні." + +msgid "When enabled, graphical DVB subtitles will be displayed in yellow, instead of the original color." +msgstr "Якщо увімкнено, графічні DVB субтитри будуть відображатися жовтим, а не початковим кольором." + +msgid "When enabled, http streams are descrambled on the server side. The (remote) client receiver does not have to do descrambling." +msgstr "Коли ця функція включена, http стрім декодується на стороні сервера. Обладнанню віддаленого клієнта не треба виконувати декодування." + +msgid "When enabled, it is possible to leave the movieplayer with exit." +msgstr "Якщо увімкнено, то можна закрити відеоплеєр з допомогою кнопки вихід." + +msgid "When enabled, measure power consumption to detect when the rotor stops turning (when supported by the tuner)." +msgstr "Якщо увімкнено, використовується вимірювання потужності для виявлення, коли ротор перестав повертатися (якщо є підтримка в ресівері)." + +msgid "When enabled, number markers will be hiden." +msgstr "Якщо увімкнено, то номери маркерів не відображатимуться в списку каналів." + +msgid "When enabled, services may be grouped in multiple bouquets." +msgstr "Якщо увімкнено, сервіси можуть бути згруповані в кілька букетів." + +msgid "When enabled, show channel numbers in the channel selection screen." +msgstr "Якщо увімкнено, показується номер каналу у вікні вибору каналів." + +msgid "When enabled, subtitles for the hearing impaired can be used." +msgstr "Включення субтитрів для людей з порушеннями слуху" + +msgid "When enabled, subtitles for the hearing impaired will be preferred over normal subtitles, when both types are available." +msgstr "Перевагу субтитрам для людей з порушеннями слуху, ніж звичайним субтитрам, коли обидва типи наявні." + +msgid "When enabled, teletext pages will be cached, allowing faster access." +msgstr "Коли ця функція включена, сторінки телетексту будуть зберігатися в кеші, що дозволяє прискорити доступ." + +msgid "When enabled, teletext subtitles will be displayed at their original position." +msgstr "Якщо увімкнено, телетекст субтитрів буде відображатися в початковому положенні." + +msgid "When enabled, the VCR scart option will be shown on the main menu" +msgstr "При включенні цієї опції 'Відеомагнітофон' буде показаний в головному меню." + +msgid "When enabled, the channel selection list will be hidden while listening to a radio channel" +msgstr "Якщо встановлено значення 'так', то список вибору каналів буде приховано під час прослуховування радіо каналів" + +msgid "When enabled, the infobar will be displayed when a new event starts." +msgstr "Якщо увімкнено, при початку нової події EPG на поточному каналі, з'явиться інфобар." + +msgid "When enabled, the infobar will be displayed when changing channels." +msgstr "Якщо увімкнено, інфобар буде з'являтися при перемиканні каналів." + +msgid "When enabled, the infobar will be displayed when skipping forwards/backwards during media playback." +msgstr "" +"Якщо увімкнено, інфобар буде з'являтися під час перемотування\n" +"медіафайлів вперед/назад." + +msgid "When enabled, the lenght of each recording will be shown in the movielist (this might cause some additional loading time)." +msgstr "Показати довжину записів в списку фільмів (може знадобитися додатковий час для завантаження списку)" + +msgid "When enabled, the original line breaks will be removed from the teletext subtitles." +msgstr "Якщо увімкнено, оригінальні розриви рядків будуть видалені з телетексту субтитрів." + +msgid "When enabled, the receiver will automatically use the audio track which you selected before." +msgstr "Якщо увімкнено, ресивер буде використовувати субтитри, які були обрані раніше" + +msgid "When enabled, the receiver will automatically use the subtitles which you selected before." +msgstr "Якщо увімкнено, ресивер буде використовувати субтитри, які були обрані раніше" + +msgid "When enabled, the receiver will no longer monitor the tuned transponder for possible changes. Do not use this option unless you know what you are doing." +msgstr "При включенні, ресивер більше не буде стежити за можливими змінами на транспондері. Не змінюйте цю опцію, якщо не знаєте, що робите." + +msgid "When enabled, the receiver will select an AC3 track (when available)." +msgstr "Якщо встановлено значення 'так', то ресивер буде використовувати AC3 звук (якщодоступно)." + +msgid "When enabled, the receiver will select an AC3+ track (when available)." +msgstr "" + +msgid "When enabled, timeshift starts automatically in background after specified time." +msgstr "Якщо ця функція увімкнена, таймшифт запускається автоматично у фоновомурежимі після зазначеного часу." + +msgid "When enabled, use DHCP for the IP configuration." +msgstr "Оберіть, щоб включити або відключити DHCP." + +msgid "When enabled, your receiver will detect activity on the VCR SCART input." +msgstr "Якщо це включено, Ваш ресивер визначатиме активність на вході VCR SCART." + +msgid "When nonzero, a recording will start earlier than the starting time indicated by the EPG." +msgstr "Вкажіть на скільки хвилин раніше починати запис, ніж час початку запису по EPG." + +msgid "When nonzero, a recording will stop later than the ending time indicated by the EPG." +msgstr "Вкажіть на скільки хвилин пізніше закінчити запис, ніж час закінчення запису по EPG." + +msgid "When the content has an aspect ratio of 16:9, choose whether to scale/stretch the picture." +msgstr "Коли зображення на каналі має співвідношення сторін 16:9, виберіть, числід масштабувати / розтягнути картинку." + +msgid "When the content has an aspect ratio of 4:3, choose whether to scale/stretch the picture." +msgstr "Коли зображення на каналі має співвідношення сторін 4:3, виберіть, чи слід масштабувати / розтягнути картинку." + +msgid "" +"When you do a factory reset, you will lose ALL your configuration data\n" +"(including bouquets, services, satellite data ...)\n" +"After completion of factory reset, your receiver will restart automatically!\n" +"\n" +"Really do a factory reset?" +msgstr "" +"При скиданні на заводські установки будуть видалені всі конфігураційні дані\n" +"(включаючи пакети, канали, дані супутників...)\n" +"Після завершення скидання, ваш ресивер буде автоматично перезавантажений!\n" +"\n" +"Дійсно виконати скидання на заводські установки?" + +msgid "Where do you want to backup your settings?" +msgstr "Де ви хочете зберегти установки?" + +msgid "Where to save temporary timeshift recordings?" +msgstr "Куди зберегти тимчасові файли відкладеного перегляду?" + +msgid "Wireless LAN" +msgstr "Бездротова мережа" + +msgid "Wireless network" +msgstr "Бездротова мережа" + +msgid "Wireless network configuration..." +msgstr "Конфігурація мережі..." + +msgid "Wireless network connection setup" +msgstr "Статистика бездротової мережі" + +msgid "Wireless network connection setup." +msgstr "Статистика бездротової мережі" + +msgid "Wireless network state" +msgstr "Статистика бездротової мережі" + +msgid "With popup" +msgstr "З повідомленням" + +msgid "Without popup" +msgstr "Без повідомлення" + +msgid "Would you like to install a softcam?" +msgstr "Ви хочете встановити Емулятор??" + +msgid "Write error while recording. Disk full?\n" +msgstr "Помилка під час запису. Диск переповнений?\n" + +msgid "Write failed!" +msgstr "Запис невдалий!" + +msgid "YPbPr" +msgstr "YPbPr" + +msgid "Year" +msgstr "Рік" + +msgid "Yellow DVB subtitles" +msgstr "Жовті DVB субтитри" + +msgid "Yes" +msgstr "Так" + +msgid "Yes and save" +msgstr "Так і зберегти" + +msgid "Yes and save in movie dir" +msgstr "Так і зберегти в каталог movie" + +msgid "Yes to all" +msgstr "Так - для всіх" + +msgid "Yes, always" +msgstr "Так, завжди" + +msgid "Yes, and delete this movie" +msgstr "Так, видалити цей запис" + +msgid "Yes, backup my settings!" +msgstr "Так, зберегти мої установки!" + +msgid "Yes, delete this movie and return to movie list" +msgstr "" + +msgid "Yes, do a manual scan now" +msgstr "Так, виконати ручний пошук" + +msgid "Yes, do an automatic scan now" +msgstr "Так, виконати автоматичний пошук" + +msgid "Yes, do another manual scan now" +msgstr "Так, виконати ще ручний пошук" + +msgid "Yes, perform a shutdown now." +msgstr "Так, вимкнути зараз." + +msgid "Yes, restore the settings now" +msgstr "Так, відновити установки зараз" + +msgid "Yes, returning to movie list" +msgstr "Так,повернутися до списку записів" + +msgid "Yesterday" +msgstr "Вчора" + +#, python-format +msgid "" +"You already have a channel list installed,\n" +"would you like to remove\n" +"\"%s\"?" +msgstr "" +"Список каналів вже встановлений,\n" +"Удалить\n" +"\"%s\"?" + +msgid "You can cancel the installation." +msgstr "Ви можете скасувати установку." + +msgid "You can cancel the removal." +msgstr "Ви можете скасувати видалення." + +msgid "You can continue watching TV etc. while this is running." +msgstr "Ви можете продовжити перегляд ТБ і т.д., поки процес виконується." + +msgid "You can install this plugin." +msgstr "Ви можете встановити цей плагін." + +msgid "You can only burn receiver recordings!" +msgstr "Ви можете пропалити тільки записи ресивера!" + +msgid "You can remove this plugin." +msgstr "Ви можете видалити це плагін." + +msgid "You cannot delete this!" +msgstr "Ви не можете видалити це!" + +msgid "You didn't select a channel to record from." +msgstr "Ви не обрали канал запису." + +msgid "You have chosen to backup your settings. Please press OK to start the backup now." +msgstr "Ви вибрали резервне копіювання налаштувань. Будь ласка, натисніть кнопку ОК для початку резервного копіювання." + +msgid "You have chosen to create a new .NFI flasher bootable USB stick. This will repartition the USB stick and therefore all data on it will be erased." +msgstr "Ви вибрали створення нового завантажувального зовнішнього USB накопичувача. USB накопичувач буде відформатований і всі дані будуть втрачені." + +msgid "You have chosen to restore your settings. Enigma2 will restart after restore. Please press OK to start the restore now." +msgstr "Ви вибрали відновлення налаштувань. Enigma2 буде перезапущено відразу після відновлення. Натисніть ОК для відновлення." + +#, python-format +msgid "You have to wait %s!" +msgstr "Необходимо подождать %s!" + +msgid "" +"You need a PC connected to your receiver. If you need further instructions, please visit the website http://www.dm7025.de.\n" +"Your receiver will now be halted. After you have performed the update instructions from the website, your new firmware will ask you to restore your settings." +msgstr "" +"Вам потрібно комп'ютер приєднаний до вашого ресивера. Якщо вам необхідні додаткові інструкції, будь ласка, відвідайте сайт http://www.dm7025.de.\n" +"Ваш ресивер повинен бути зупинений. Після виконання Вами інструкцій по оновленню з сайту, нове ПЗ запросить відновлення Ваших установок. " + +msgid "You system does not support ext4" +msgstr "Ваша система не підтримує ext4" + +msgid "Your backup succeeded. We will now continue to explain the further upgrade process." +msgstr "Резервна копія створена. Тепер ми продовжимо процес оновлення. " + +msgid "Your collection exceeds the size of a single layer medium, you will need a blank dual layer DVD!" +msgstr "Ваша колекція перевищує розмір одношарового диска. Вам потрібен чистий двошаровий DVD!" + +msgid "Your current collection will get lost!" +msgstr "Ваша поточна колекція буде загублена!" + +msgid "" +"Your frontprocessor firmware must be upgraded.\n" +"Press OK to start upgrade." +msgstr "" +"Потрібне оновлення фронтпроцессора.\n" +"Натисніть OK для початку поновлення." + +msgid "" +"Your frontprocessor will be upgraded\n" +"Please wait until your receiver reboots\n" +"This may take a few minutes" +msgstr "" +"Ваш фронтпроцессор оновлюється\n" +"Дочекайтеся перезавантаження ресивера\n" +"Це може зайняти кілька хвилин" + +msgid "" +"Your internet connection is not working!\n" +"Please choose what you want to do next." +msgstr "" +"Ваше інтернет з'єднання не працює.\n" +"Оберіть, що будете робити далі." + +#, python-format +msgid "Your internet connection is working (ip: %s)" +msgstr "Ваше інтернет з'єднання працює (ip: %s)" + +msgid "Your network configuration has been activated." +msgstr "Ваші мережеві настройки активовані." + +msgid "Your receiver does not have an internet connection" +msgstr "Оновлення не вдалося. У вашому ресивері немає працюючого інтернет-з'єднання." + +msgid "" +"Your receiver is now ready to be used.\n" +"\n" +"Your internet connection is working.\n" +"\n" +msgstr "" +" Ваш ресивер готовий до роботи.\n" +"\n" +"Інтернет з'єднання вже працює.\n" +"\n" +"Натисніть ОК для продовження.\n" + +msgid "" +"Your receiver is now ready to use.\n" +"\n" +"Your internet connection is working now.\n" +"\n" +"Please press OK to continue." +msgstr "" +" Ваш ресивер готовий до роботи.\n" +"\n" +"Інтернет з'єднання вже працює.\n" +"\n" +"Натисніть ОК для продовження." + +msgid "Your receiver is rebooting" +msgstr "Перезавантаження ресивера" + +msgid "Your receiver is shutting down" +msgstr "Ваш ресивер переходить в глибокий режим Очікування" + +msgid "Your receiver is shutting down. Please stand by..." +msgstr "Ваш ресивер виключаеться. Будь ласка, почекайте..." + +msgid "Your receiver might be unusable now. Please consult the manual for further assistance before rebooting your receiver." +msgstr "Зараз ваш ресивер може бути непридатним для використання. Зверніться доінструкції для отримання додаткової допомоги до його перезавантаження." + +msgid "Your receiver will got to stand by due to the sleeptimer." +msgstr "Ваш ресивер буде вимкнений за таймером сну." + +msgid "Your receiver will got to standby due to inactivity." +msgstr "Ваш ресивер буде переведений в Режим Очікування через бездіяльність." + +msgid "Your receiver will restart after pressing OK on your remote control." +msgstr "Ваш ресивер буде перезавантажений після натискання кнопки OK на пульті." + +msgid "" +"Your wireless LAN internet connection could not be started!\n" +"Have you attached your USB WLAN Stick?\n" +"\n" +"Please choose what you want to do next." +msgstr "" +"Ваше бездротове інтернет з'єднання не може бути активовано.\n" +"Ви підключили USB WLAN адаптер?\n" +"\n" +"Оберіть, що будете робити далі." + +msgid "Zap" +msgstr "Переключитись" + +msgid "Zap back to previously tuned service?" +msgstr "Переключитися на попередній сервіс?" + +msgid "Zap back to service before positioner setup?" +msgstr "Повернуться на попередній сервіс ?" + +msgid "Zap back to service before tuner setup?" +msgstr "Вернутся обратно к настройкам тюнер?" + +msgid "Zap focus to Picture in Picture" +msgstr "Переключитись в екрані PiP" + +msgid "Zap focus to main screen" +msgstr "Переключитись в головному екрані" + +msgid "Zap mode" +msgstr "Режими екрана при перемиканні" + +msgid "Zap to selected channel" +msgstr "Переключитись на вибраний канал" + +msgid "Zap to selected channel, or show detailed event info (depends on configuration)" +msgstr "Переключити на обраний канал, або показати докладний ЕПГ (залежить від конфигурації)" + +msgid "[alternative edit]" +msgstr "[редагування альтернативи]" + +msgid "[bouquet edit]" +msgstr "[редагування букетів]" + +msgid "[favourite edit]" +msgstr "[редагування фаворитів]" + +msgid "[move mode]" +msgstr "[режим переміщення]" + +msgid "a gui to assign services/providers to common interface modules" +msgstr "Приховати повідомлення про помилки від CI модуля." + +msgid "a gui to assign services/providers/caids to common interface modules" +msgstr "Інтерфейс для призначення сервісів/провайдерів/ідентів на CAM-модулі" + +msgid "abort alternatives edit" +msgstr "перервати редагування альтернативи" + +msgid "abort bouquet edit" +msgstr "перервати редагування букета" + +msgid "abort favourites edit" +msgstr "перервати редагування фаворитів" + +msgid "about to start" +msgstr "починається" + +msgid "activate network adapter configuration" +msgstr "закрити конфігуратор мережі" + +msgid "add alternatives" +msgstr "додати альтернативу" + +msgid "add bookmark" +msgstr "додати закладку" + +msgid "add bouquet" +msgstr "додати фаворит" + +msgid "add marker" +msgstr "додати маркер" + +msgid "add service to bouquet" +msgstr "додати сервіс в фаворит" + +msgid "add service to favourites" +msgstr "додати сервіс в фаворити" + +msgid "add to parental protection" +msgstr "Додати в батьківський контроль" + +msgid "adult movie/drama" +msgstr "еротичний фільм/драма" + +msgid "advanced" +msgstr "Розширений" + +msgid "adventure/western/war" +msgstr "пригоди/вестерн/військовий" + +msgid "advertisement/shopping" +msgstr "реклама/шопінг" + +msgid "after " +msgstr "через " + +msgid "alphabetic" +msgstr "сортувати за алфавітом" + +msgid "alphabetic reverse" +msgstr "за зворотнім алфавітом" + +msgid "alternative" +msgstr "альтернативний" + +msgid "always" +msgstr "" + +msgid "and select next channel" +msgstr "" + +msgid "and select previous channel" +msgstr "" + +msgid "arts/culture (without music, general)" +msgstr "мистецтво/культура (без музики, загальне)" + +msgid "arts/culture magazine" +msgstr "мистецтво/культура журнал" + +msgid "athletics" +msgstr "атлетика" + +msgid "audio tracks" +msgstr "звукові доріжки" + +msgid "auto" +msgstr "авто" + +msgid "automatic" +msgstr "автоматично" + +msgid "back" +msgstr "назад" + +msgid "background image" +msgstr "фонове зображення" + +msgid "ballet" +msgstr "балет" + +#, python-format +msgid "bc%s" +msgstr "bc%s" + +msgid "better" +msgstr "краще" + +msgid "black" +msgstr "чорний" + +msgid "black & white" +msgstr "чорне & біле" + +msgid "blacklist" +msgstr "чорний список" + +msgid "blue" +msgstr "синій" + +msgid "broadcasting/press" +msgstr "мовлення/преса" + +msgid "by date" +msgstr "сортувати по даті" + +msgid "cartoon/puppets" +msgstr "мультфільм/кукли" + +msgid "center" +msgstr "центр" + +msgid "centered" +msgstr "центр" + +msgid "centered, wrapped" +msgstr "центр, загорнутий" + +msgid "chapters" +msgstr "розділи" + +msgid "childrens's/youth program (general)" +msgstr "дитячі/молодіжні(загальне)" + +msgid "circular left" +msgstr "кругова ліва" + +msgid "circular right" +msgstr "кругова права" + +msgid "comedy" +msgstr "комедія" + +msgid "complex" +msgstr "комплекс" + +msgid "config menu" +msgstr "меню конфігурації" + +msgid "confirmed" +msgstr "присвоєно" + +msgid "connected" +msgstr "підключено" + +msgid "continue" +msgstr "Продовжити" + +msgid "cooking" +msgstr "риготування" + +msgid "copy to bouquets" +msgstr "копіювати в пакет" + +msgid "create directory" +msgstr "створити каталог" + +#, python-format +msgid "currently installed image: %s" +msgstr "поточний встановлений імідж: %s" + +msgid "daily" +msgstr "щодня" + +msgid "day" +msgstr "день" + +msgid "default" +msgstr "за замовчуванням" + +msgid "delete cut" +msgstr "видалити вирізане" + +msgid "delete..." +msgstr "" + +msgid "descramble and record ecm" +msgstr "декодування і запис ECM (відкл. декодування)" + +msgid "detective/thriller" +msgstr "детектив/трилер" + +msgid "disable" +msgstr "вимкнути" + +msgid "disable move mode" +msgstr "вимкнути режим переміщення" + +msgid "disabled" +msgstr "вимкнено" + +msgid "disconnected" +msgstr "вимкнено" + +msgid "discussion/interview/debate" +msgstr "обговорення/інтерв'ю/дискусії" + +msgid "do nothing" +msgstr "не робити нічого" + +msgid "documentary" +msgstr "документальний фільм" + +msgid "don't descramble, record ecm" +msgstr "НЕ декодувати, тільки запис ECM (відкл. декодування)" + +msgid "done!" +msgstr "виконано!" + +msgid "east" +msgstr "Переміщення на схід" + +msgid "economics/social advisory" +msgstr "економіка/соціальна консультація" + +msgid "edit alternatives" +msgstr "змінити альтернативу" + +msgid "education/science/factual topics (general)" +msgstr "освіта/наука/факти(загальне)" + +msgid "empty" +msgstr "порожній" + +msgid "enable" +msgstr "увімкнути" + +msgid "enable bouquet edit" +msgstr "увімкнути редагування фаворита" + +msgid "enable favourite edit" +msgstr "увімкнути редагування фаворитів" + +msgid "enable move mode" +msgstr "увімкнути режим переміщення" + +msgid "enabled" +msgstr "увімкнено" + +msgid "end alternatives edit" +msgstr "закінчити редагування альтернативи" + +msgid "end bouquet edit" +msgstr "закінчити редагування букета" + +msgid "end cut here" +msgstr "кінець редагування" + +msgid "end favourites edit" +msgstr "закінчити редагування фаворитів" + +msgid "entertainment (10-16 year old)" +msgstr "розваги (10-16 років)" + +msgid "entertainment (6-14 year old)" +msgstr "розваги (6-14 років)" + +msgid "equal to" +msgstr "також як" + +msgid "equestrian" +msgstr "кінний спорт" + +msgid "exit DVD player or return to file browser" +msgstr "Закрити DVD плеєр і повернутися в провідник" + +msgid "exit movielist" +msgstr "" + +msgid "exit network adapter configuration" +msgstr "закрити конфігуратор мережі" + +msgid "exit networkadapter setup menu" +msgstr "закрити налаштування мережевого адаптера" + +msgid "experimental film/video" +msgstr "експериментальний фільм/відео" + +msgid "false" +msgstr "Ні" + +msgid "fashion" +msgstr "мода" + +msgid "fileformats (BMP, PNG, JPG, GIF)" +msgstr "формат файла (BMP, PNG, JPG, GIF)" + +msgid "filename" +msgstr "ім'я файлу" + +msgid "film/cinema" +msgstr "фільм/кіно" + +msgid "fine arts" +msgstr "образотворчі мистецтва" + +msgid "fine-tune your display" +msgstr "точна настройка дисплея" + +msgid "fitness & health" +msgstr "фітнес & здоров'я" + +msgid "flat alphabetic" +msgstr "сортувати за алфавітом" + +msgid "flat alphabetic reverse" +msgstr "за зворотнім алфавітом" + +msgid "folk/traditional music" +msgstr "народна/традиційна музика" + +msgid "football/soccer" +msgstr "футбол" + +msgid "foreign countries/expeditions" +msgstr "зарубіжні країни/експедиції" + +msgid "forward to the next chapter" +msgstr "вперед до наступного розділу" + +msgid "free" +msgstr "вільно" + +msgid "from" +msgstr "" + +msgid "further education" +msgstr "дальнейшее образование" + +msgid "game show/quiz/contest" +msgstr "гра шоу/вікторина/конкурс" + +msgid "gardening" +msgstr "садівництво" + +msgid "go to deep standby" +msgstr "перейти в глибокий Режим очікування" + +msgid "go to standby" +msgstr "перейти в Режим очікування" + +msgid "grab this frame as bitmap" +msgstr "зберегти фрейм як растрове зображення" + +msgid "green" +msgstr "зелений" + +msgid "handicraft" +msgstr "ремесло" + +msgid "height" +msgstr "висота" + +msgid "help..." +msgstr "допомога..." + +msgid "horizontal" +msgstr "горизонтальна" + +msgid "information/education/school program" +msgstr "Информація/освіта/шкільна програма" + +msgid "init module" +msgstr "init модуль" + +msgid "init modules" +msgstr "init модуль" + +msgid "insert mark here" +msgstr "вставити мітку" + +msgid "invalid type" +msgstr "недійсний тип" + +msgid "jazz" +msgstr "джаз" + +msgid "jump back to the previous title" +msgstr "перейти до попереднього розділу" + +msgid "jump forward to the next title" +msgstr "перейти до наступного розділу" + +msgid "languages" +msgstr "мови" + +msgid "leave movie player..." +msgstr "вийти з відеоплеєра..." + +msgid "left" +msgstr "зліва" + +msgid "left, wrapped" +msgstr "зліва, загорнутий" + +msgid "leisure hobbies (general)" +msgstr "дозвілля/хобі (загальне)" + +msgid "length" +msgstr "довжина" + +msgid "limit ..., aborting !" +msgstr "ліміт ..., перерваний !" + +msgid "list style compact" +msgstr "компактний список" + +msgid "list style compact with description" +msgstr "компактний список з описом" + +msgid "list style default" +msgstr "список за замовчуванням" + +msgid "list style single line" +msgstr "список в один рядок" + +msgid "literature" +msgstr "література" + +msgid "live broadcast" +msgstr "пряма трансляція" + +msgid "locked" +msgstr "захоплено" + +msgid "loopthrough to" +msgstr "петля до" + +msgid "magazines/reports/documentary" +msgstr "журнали/репортажі/документальний" + +msgid "manual" +msgstr "ручний" + +msgid "martial sports" +msgstr "єдиноборство" + +msgid "medicine/physiology/psychology" +msgstr "медицина/физиология/психология" + +msgid "menu" +msgstr "меню" + +msgid "mins" +msgstr "хв" + +msgid "minutes" +msgstr "хвилин" + +msgid "month" +msgstr "місяц" + +msgid "motor sport" +msgstr "мотоспорт" + +msgid "motoring" +msgstr "автомобілі" + +msgid "move down to last entry" +msgstr "перемістити вниз до останнього запису" + +msgid "move down to next entry" +msgstr "перемістити вниз до наступного запису" + +msgid "move up to first entry" +msgstr "перемістити вгору до першого запису" + +msgid "move up to previous entry" +msgstr "перемістити вгору до попереднього запису" + +msgid "movie/drama (general)" +msgstr "фільми/драма (загальне)" + +msgid "multinorm" +msgstr "мультинорм" + +msgid "music/ballet/dance (general)" +msgstr "музика/балет/танець (загальне)" + +msgid "musical/opera" +msgstr "музика/опера" + +msgid "nature/animals/environment" +msgstr "природа/тварини/навколишнє середовище" + +msgid "never" +msgstr "ніколи" + +msgid "new media" +msgstr "нові media" + +msgid "news magazine" +msgstr "новинний журнал" + +msgid "news/current affairs (general)" +msgstr "новини/поточні події (загальне)" + +msgid "news/weather report" +msgstr "новини/прогноз погоди" + +msgid "no" +msgstr "Ні" + +msgid "no CAId selected" +msgstr "показати другу вибрану позначку" + +msgid "no CI slots found" +msgstr "не знайдено модуль" + +msgid "no module found" +msgstr "не знайдено модуль" + +msgid "no storage devices found" +msgstr "Мережеві пристрої не виявлені!" + +msgid "none" +msgstr "ніякої" + +msgid "normal" +msgstr "нормальна (декодування)" + +msgid "not configured" +msgstr "немає конфігурації" + +msgid "not locked" +msgstr "не захоплено" + +msgid "not supported" +msgstr "Невідома" + +msgid "not used" +msgstr "не використано" + +msgid "nothing connected" +msgstr "нічого не підключено" + +msgid "of a DUAL layer medium used." +msgstr "використовуваного двошарового носія." + +msgid "of a SINGLE layer medium used." +msgstr "використовуваного одношарового носія." + +msgid "off" +msgstr "вимкн." + +msgid "offset is" +msgstr "зсув" + +msgid "on" +msgstr "увімкн." + +msgid "on READ ONLY medium." +msgstr "на диск тільки для читання." + +msgid "on end of movie" +msgstr "в кінці фільму" + +msgid "once" +msgstr "один раз" + +msgid "only from deep standby" +msgstr "" + +msgid "only from standby" +msgstr "" + +msgid "open EPG..." +msgstr "" + +msgid "open Info..." +msgstr "" + +msgid "open nameserver configuration" +msgstr "відкрити конфігуратор DNS" + +msgid "original" +msgstr "орігинал" + +msgid "original language" +msgstr "мова оригіналу" + +msgid "pass" +msgstr "передати" + +msgid "performing arts" +msgstr "виконавські види мистецтва" + +msgid "play as picture in picture" +msgstr "увімкнути як картинку в картинці" + +msgid "play in mainwindow" +msgstr "включити на основному екрані" + +msgid "please press OK when ready" +msgstr "будь ласка, натисніть OK коли будете готові" + +msgid "please wait, loading picture..." +msgstr "Зачекайте, завантаження зображень..." + +msgid "popular culture/traditional arts" +msgstr "популярні культура/традиції мистецтва" + +msgid "pre-school children's program" +msgstr "дошкільні дитячі програми" + +msgid "receiver software because updates are available." +msgstr "доступне оновлення для вашого ресивера." + +msgid "record" +msgstr "запис" + +msgid "recording..." +msgstr "запис..." + +msgid "red" +msgstr "Червоний" + +msgid "religion" +msgstr "релігія" + +msgid "remarkable people" +msgstr "чудові люди" + +msgid "remove after this position" +msgstr "видалити після цієї позиції" + +msgid "remove all alternatives" +msgstr "видалити всі альтернативи" + +msgid "remove all new found flags" +msgstr "видалити всі нові знайдені прапори" + +msgid "remove before this position" +msgstr "видалити перед цією позицією" + +msgid "remove bookmark" +msgstr "видалити закладку" + +msgid "remove directory" +msgstr "видалити каталог" + +msgid "remove entry" +msgstr "видалити обране" + +msgid "remove from parental protection" +msgstr "видалити з батьківського контролю" + +msgid "remove new found flag" +msgstr "видалити прапор новий знайдений " + +msgid "remove selected satellite" +msgstr "видалити вибраний супутник" + +msgid "remove this mark" +msgstr "видалити мітку" + +msgid "rename entry" +msgstr "перейменувати обране" + +msgid "repeat playlist" +msgstr "" + +msgid "repeated" +msgstr "повторний" + +msgid "reverse by date" +msgstr "повторний" + +msgid "rewind to the previous chapter" +msgstr "назад на попередній розділ" + +msgid "right" +msgstr "право" + +msgid "right, wrapped" +msgstr "право, загорнутий" + +msgid "rock/pop" +msgstr "рок/поп" + +msgid "romance" +msgstr "романс" + +msgid "save last directory on exit" +msgstr "зберегти останній каталог при виході" + +msgid "save playlist on exit" +msgstr "Зберегти плейлист при виході" + +msgid "scan state" +msgstr "стан пошуку" + +msgid "science fiction/fantasy/horror" +msgstr "наукова фантастика/фентезі/жахи" + +msgid "second cable of motorized LNB" +msgstr "другий кабель від LNB на моторі" + +msgid "seconds" +msgstr "секунд" + +msgid "select" +msgstr "вибрати" + +msgid "select CAId's" +msgstr "вибрати CAId's" + +msgid "select EPG..." +msgstr "" + +msgid "select Info..." +msgstr "" + +msgid "select menu entry" +msgstr "вибрати із меню" + +msgid "select movie" +msgstr "вибрати фільм" + +msgid "select the movie path" +msgstr "" + +msgid "serious music/classic music" +msgstr "класична музика" + +msgid "serious/classical/religious/historical movie/drama" +msgstr "серйозний/класичний/релігійний/історичний фільм/драма" + +msgid "service PIN" +msgstr "Змінити PIN-код сервісу" + +msgid "set as startup service" +msgstr "зробити сервіс стартовим" + +msgid "setup PIN" +msgstr "Змінити PIN-код налаштувань" + +msgid "show DVD main menu" +msgstr "показати DVD в головному меню" + +msgid "show all tags" +msgstr "показати всі теги" + +msgid "show alternatives" +msgstr "показати альтернативу" + +msgid "show event details" +msgstr "показати деталі події" + +msgid "show extended description" +msgstr "" + +msgid "show mediaplayer on mainmenu" +msgstr "Показати медіаплеєр у головному меню" + +msgid "show softwaremanager in setup menu" +msgstr "Показати менеджер софта в меню налаштувань" + +msgid "show softwaremanager on blue button" +msgstr "Показати менеджер софта в меню доповнень" + +msgid "show tag menu" +msgstr "" + +msgid "show transponder info" +msgstr "показати інфо транспондера" + +msgid "show/game show (general)" +msgstr "показ ігрових шоу (загальне)" + +msgid "shuffle" +msgstr "випадковий порядок" + +msgid "shut down" +msgstr "Вимкнути" + +msgid "simple" +msgstr "простий" + +msgid "skip backward" +msgstr "Перемотка назад" + +msgid "skip forward" +msgstr "Перемотка вперед" + +msgid "soap/melodram/folkloric" +msgstr "мильна опера/мелодрама/фольклор" + +msgid "social/political issues/economics (general)" +msgstr "соціальні/політичні питання/Економіка (загальне)" + +msgid "social/spiritual science" +msgstr "соціальна/духовна наука" + +msgid "sorting of playlists" +msgstr "сортировка плейлистов" + +msgid "special characters" +msgstr "спеціальна подія" + +msgid "special events" +msgstr "спеціальна подія" + +msgid "special format data DVD (HDTV compatible)" +msgstr "спеціальний формат даних DVD (сумісний з HDTV)" + +msgid "sports (general)" +msgstr "спорт (загальне)" + +msgid "sports magazine" +msgstr "спортивний магазин" + +msgid "standard" +msgstr "стандарт" + +msgid "start cut here" +msgstr "початок редагування" + +msgid "start directory" +msgstr "початковий каталог" + +msgid "stepsize" +msgstr "розмір кроку" + +msgid "stereo" +msgstr "стерео" + +msgid "stop using as startup service" +msgstr "відключити від автостарту сервіс" + +msgid "switch to bookmarks" +msgstr "перейти на закладки" + +msgid "switch to filelist" +msgstr "переключити на список файлів" + +msgid "switch to the next angle" +msgstr "перейти в наступній кут" + +msgid "switch to the next audio track" +msgstr "перейти до наступної звукової доріжки" + +msgid "switch to the next subtitle language" +msgstr "переключитися на наступний мову субтитрів" + +msgid "talk show" +msgstr "шоу бесіда" + +msgid "team sports" +msgstr "командні види спорту" + +msgid "technology/natural science" +msgstr "технології/природознавство" + +msgid "template file" +msgstr "Шаблон файла" + +msgid "tennis/squash" +msgstr "теніс/сквош" + +msgid "this recording" +msgstr "це записано" + +msgid "this service is protected by a parental control pin" +msgstr "цей сервіс захищений PIN-кодом батьківського контролю" + +msgid "toggle time, chapter, audio, subtitle info" +msgstr "час перемикання, розділи, Аудіо, Информація субтитрів" + +msgid "top" +msgstr "вверх" + +msgid "tourism/travel" +msgstr "туризм/подорожі" + +msgid "true" +msgstr "Так" + +msgid "unavailable" +msgstr "недоступно" + +msgid "unconfirmed" +msgstr "не присвоєно" + +msgid "undefined" +msgstr "визначений користувачем" + +msgid "unknown" +msgstr "<невідомий>" + +msgid "unknown service" +msgstr "невідомий сервіс" + +msgid "unpublished" +msgstr "неопублікований" + +msgid "until standby/restart" +msgstr "до режиму очікування/перезавантаження" + +msgid "user defined" +msgstr "визначений користувачем" + +msgid "variety show" +msgstr "шоу вар'єте" + +msgid "vertical" +msgstr "вертикальна" + +msgid "wait for ci..." +msgstr "очікування ci..." + +msgid "wait for mmi..." +msgstr "очікування mmi..." + +msgid "waiting" +msgstr "очікування" + +msgid "water sport" +msgstr "водний спорт" + +msgid "weekly" +msgstr "Щотижня" + +msgid "west" +msgstr "Переміщення на захід" + +msgid "when PiPzap enabled zap channel down..." +msgstr "" + +msgid "when PiPzap enabled zap channel up..." +msgstr "" + +msgid "white" +msgstr "білий" + +msgid "whitelist" +msgstr "білий список" + +msgid "width" +msgstr "ширина" + +msgid "winter sport" +msgstr "зимовий спорт" + +msgid "wireless network interface" +msgstr "інтерфейс бездротової мережі" + +#, python-format +msgid "with %d error" +msgid_plural "with %d errors" +msgstr[0] "с %d помилкою" +msgstr[1] "с %d помилками" +msgstr[2] "с %d помилками" + +msgid "working" +msgstr "працюючий" + +msgid "yellow" +msgstr "жовтий" + +msgid "yes" +msgstr "Так" + +msgid "yes (keep feeds)" +msgstr "так (зберігати канали)" + +msgid "zap" +msgstr "перейти" + +msgid "zap and record" +msgstr "перейти і записати" + +msgid "zapped" +msgstr "переключено" + +#~ msgid " (%s times)\n" +#~ msgstr " (%s разів)\n" + +#~ msgid " (%s votes)\n" +#~ msgstr " (%s разів)\n" + +#~ msgid " User Rating" +#~ msgstr " Рейтинг" + +#~ msgid " User Rating: " +#~ msgstr " Рейтинг: " + +#~ msgid " min." +#~ msgstr " хв." + +#~ msgid " newcamd.list" +#~ msgstr " newcamd.list" + +# message04 +#~ msgid " size to be backed up: " +#~ msgstr " розмір резервної копії: " + +#~ msgid " times" +#~ msgstr " разів" + +#~ msgid " еееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееЕ-Панель ПОЧАТОК" +#~ msgstr " еееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееЕЕ-Панель ПОЧАТОК" + +#~ msgid " еееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееЕ-Панель кінець" +#~ msgstr " еееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееЕЕ-Панель кінець" + +#~ msgid "\"TMBD Details: current event\" quick button" +#~ msgstr "Швидка кнопка для \"TMBD пошук: поточну подію\"" + +#~ msgid "%3.02f m/s" +#~ msgstr "%3.02f м/с" + +#~ msgid "%d bytes" +#~ msgstr "%d байт" + +#~ msgid "%d mmHg" +#~ msgstr "%d мм рт.ст." + +#~ msgid "" +#~ "%s\n" +#~ "Profile: %s\n" +#~ "Select event for search:" +#~ msgstr "" +#~ "%s\n" +#~ "Профиль: %s\n" +#~ "Виберіть подію для пошуку:" + +#~ msgid "" +#~ "%s\n" +#~ "Select event for search:" +#~ msgstr "" +#~ "%s\n" +#~ "Виберіть подію для пошуку:" + +#~ msgid "%s %s %s (%s free %s used)" +#~ msgstr "%s %s %s (%s свободно %s занято)" + +#~ msgid "%s %s (%03d MB free)\n" +#~ msgstr "%s %s (%03d MB свободно)\n" + +#~ msgid "%s %s (%d.%03d GB free)\n" +#~ msgstr "%s %s (%d.%03d GB свободно)\n" + +#~ msgid "%s Switcher: - %s" +#~ msgstr "%s перемикач: - %s" + +#~ msgid "%s downloaded Successfull" +#~ msgstr "%s завантажено" + +#~ msgid "%s downloaded UnSuccessfull" +#~ msgstr "%s не завантажено" + +#~ msgid "%s hours" +#~ msgstr "%s час." + +#~ msgid "%s is UnInstalled" +#~ msgstr "%s видалено" + +#~ msgid "%s is downloaded" +#~ msgstr "%s завантажено" + +#~ msgid "%s is installed" +#~ msgstr "%s встановлено" + +#~ msgid "%s km" +#~ msgstr "%s км" + +#~ msgid "%s mb" +#~ msgstr "%s мб" + +#~ msgid "%s min" +#~ msgstr "%s хв" + +#~ msgid "%s%% humidity" +#~ msgstr "%s%% вологість" + +#~ msgid "%s.gz created in /tmp" +#~ msgstr "%s.gz створений в /tmp" + +#~ msgid "*.tar.gz & *.bh.tgz & *.ipk removed" +#~ msgstr "*.tar.gz, *.bh.tgz, *.ipk видалені" + +#~ msgid "/ Duration: " +#~ msgstr "/ Тривалість: " + +#~ msgid "0 min." +#~ msgstr "0 хв." + +#~ msgid "120 min" +#~ msgstr "120 хв" + +#~ msgid "180 min" +#~ msgstr "180 хв" + +#~ msgid "240 min" +#~ msgstr "240 хв" + +#~ msgid "2boom's Yahoo! Weather" +#~ msgstr "Погода Yahoo!" + +#~ msgid "30 min" +#~ msgstr "30 хв" + +#~ msgid "60 min" +#~ msgstr "60 хв" + +#~ msgid "< Event View buttons: TV, RADIO, TEXT >" +#~ msgstr "< Кнопки для перегляду деталей: TV, RADIO, TEXT >" + +#~ msgid "< Single/Multi EPG buttons: HELP, RADIO, TEXT >" +#~ msgstr "< Кнопки в одиночному/мульти EPG: HELP, RADIO, TEXT >" + +#~ msgid "< empty >" +#~ msgstr "< порожньо >" + +#~ msgid "< text >" +#~ msgstr "< текст >" + +#~ msgid "A new version of the plugin. recommend that you upgrade. Click OK to update" +#~ msgstr "Є нова версія плагіна. Радимо вам оновити. Натисніть кнопку ОК,щоб оновити" + +#~ msgid "AA" +#~ msgstr "AA" + +#~ msgid "AB" +#~ msgstr "AB" + +#~ msgid "Action for inactivity:" +#~ msgstr "Дія при бездіяльності " + +#~ msgid "Activate PiP" +#~ msgstr "Активувати PIP" + +#~ msgid "Activate Poster Preview" +#~ msgstr "Активувати прев'ю постерів" + +#~ msgid "Active Profile:" +#~ msgstr "Активний Профіль:" + +#~ msgid "Active SoftCam:" +#~ msgstr "Активний SoftCam:" + +#~ msgid "Actors" +#~ msgstr "В ролях" + +#~ msgid "Actors:" +#~ msgstr "Актори:" + +#~ msgid "Add \"Lookup in TMBD\" Info Button to GraphMultiEpg" +#~ msgstr "\"Пошук в TMBD\" на кнопці інфо в графічному EPG" + +#~ msgid "Add \"Lookup in TMBD\" Info Button to multi-EPG" +#~ msgstr "\"Пошук в TMBD\" на кнопці інфо в мульти-EPG" + +#~ msgid "Add \"Lookup in TMBD\" Info Button to single-EPG" +#~ msgstr "\"Пошук в TMBD\" на кнопці інфо в одинарному EPG" + +#~ msgid "Add \"open plugin VCS\" Info/EPG Button to nStreamVOD" +#~ msgstr "\"відкрити плагін VCS\" на кнопці Info/EPG в nStreamVOD" + +#~ msgid "Add \"search in TMBD\" Info/EPG Button to nStreamVOD" +#~ msgstr "\"Пошук в TMBD\" на кнопці Info/EPG в nStreamVOD" + +#~ msgid "Add directory to Bookmarks" +#~ msgstr "Додати каталог в закладки" + +#~ msgid "Add own biss in keyfile" +#~ msgstr "Додавати власний файл ключів" + +#~ msgid "Add tabs" +#~ msgstr "Додати" + +#~ msgid "Add/remove timer for current event" +#~ msgstr "Додати/видалити таймер для поточної події" + +# message09 +#~ msgid "Additional backup -> " +#~ msgstr "Додаткова резервна копія -> " + +#~ msgid "Adjust HDMI CEC settings" +#~ msgstr "Встоновіть налаштування 3D" + +#~ msgid "Adv. UnInstall" +#~ msgstr "Продв. видалення" + +#~ msgid "Age" +#~ msgstr "Віковий ценз" + +#~ msgid "Age:" +#~ msgstr "Ценз:" + +#~ msgid "All posters for movie" +#~ msgstr "Всі постери до записів" + +#~ msgid "All posters removed!" +#~ msgstr "Всі постери видалені!" + +#~ msgid "All satellites" +#~ msgstr "Всі супутники" + +#~ msgid "Allready running %s" +#~ msgstr "Вже запущено %s" + +# message08 +#~ msgid "Almost there... Now building the USB-Image!" +#~ msgstr "Майже готово ... Тепер створюємо прошивку на USB!" + +#~ msgid "And will shutdown your receiver over " +#~ msgstr "І вимкне ваш ресивер через " + +#~ msgid "Angola" +#~ msgstr "Ангола" + +#~ msgid "Appeared" +#~ msgstr "Рік випуску" + +#~ msgid "Appeared:" +#~ msgstr "Рік випуску:" + +#~ msgid "Apply the new System time?" +#~ msgstr "Застосувати новий системний час?" + +#~ msgid "Applying" +#~ msgstr "Застосовуємо" + +#~ msgid "Apr." +#~ msgstr "Апр." + +#~ msgid "Argentina" +#~ msgstr "Аргентина" + +#~ msgid "AspectRatioSwitch Setup" +#~ msgstr "AspectRatioSwitch Налаштування" + +#~ msgid "Aug." +#~ msgstr "Авг." + +#~ msgid "Australia" +#~ msgstr "Австралія" + +#~ msgid "Austria" +#~ msgstr "Австрія" + +#~ msgid "AutoDownload epg.dat" +#~ msgstr "Автозавантаження epg.dat" + +#~ msgid "AutoDownload time" +#~ msgstr "Час автозавантаження" + +#~ msgid "AutoDownload weekday" +#~ msgstr "День тижня автозавантаження" + +#~ msgid "AutoShutDown Setup" +#~ msgstr "Встановлення Автовимкнення" + +#~ msgid "AutoShutDown settings" +#~ msgstr "AutoShutDown Налаштування Автовимкнення" + +#~ msgid "AutoShutDown: %s ?" +#~ msgstr "Автовимкнення: %s ?" + +#~ msgid "Autobackup to ../epgtmp.gz" +#~ msgstr "Автоматичне збереження в ../epgtmp.gz" + +#~ msgid "Automatic save/load EPG" +#~ msgstr "Автоматичне збереження і завантаження EPG" + +#~ msgid "Available in this version:" +#~ msgstr "Що нового в цій версії:" + +#~ msgid "Available version:" +#~ msgstr "Доступна версія:" + +#~ msgid "Azerbaidjan" +#~ msgstr "Азербайджан" + +#~ msgid "BA" +#~ msgstr "BA" + +# message02 +#~ msgid "BACK-UP TOOL, FOR MAKING A COMPLETE BACK-UP" +#~ msgstr "УТИЛІТА BACK-UP, ДЛЯ СТВОРЕННЯ ПОВНОЇ РЕЗЕРВНОЇ КОПІЇ" + +#~ msgid "BB" +#~ msgstr "BB" + +#~ msgid "BackUp" +#~ msgstr "Зберегти" + +# message26 +#~ msgid "Backup done with: " +#~ msgstr "Резервна копія зроблена зі швидкістю: " + +# message19 +#~ msgid "Backup finished and copied to your USB-flashdrive." +#~ msgstr "Резервне копіювання закінчено і тепер копіюються файли на USB носій." + +#~ msgid "Bahamas" +#~ msgstr "Багами" + +#~ msgid "Bangladesh" +#~ msgstr "Бангладеш" + +#~ msgid "Begin of excluded interval (hh:mm):" +#~ msgstr "Початок часового інтервалу (hh:mm):" + +#~ msgid "Behavior of 'pause' when paused" +#~ msgstr "Поведінка 'пауза' під час паузи" + +#~ msgid "Belarus" +#~ msgstr "Білорусь" + +#~ msgid "Belgium" +#~ msgstr "Бельгія" + +#~ msgid "Best resolution for first found" +#~ msgstr "Краща розд. здатність для першого знайденого" + +#~ msgid "Big poster" +#~ msgstr "Великий постер" + +#~ msgid "Blowing snow" +#~ msgstr "Низова хуртовина" + +#~ msgid "Blustery" +#~ msgstr "Буйний вітер" + +#~ msgid "Brazil" +#~ msgstr "Бразилія" + +#~ msgid "Bulgaria" +#~ msgstr "Болгарія" + +#~ msgid "CCcam config filename" +#~ msgstr "CCсam ім'я основного файлу конфігурації" + +#~ msgid "CCcam config switcher" +#~ msgstr "CCсam перемикач" + +#~ msgid "CCcam configfile extention" +#~ msgstr "CCсam розширення файлу конфігурації" + +#~ msgid "CCcam configpath" +#~ msgstr "CCсam шлях до конфігурації" + +#~ msgid "Canada" +#~ msgstr "Канада" + +#~ msgid "Cannot poster %s saved - data error!" +#~ msgstr "Не можу зберегти %s - помилка даних!" + +#~ msgid "Cannot poster %s saved as background - data error!" +#~ msgstr "Не можу зберегти %s в якості фону - помилки даних!" + +#~ msgid "Cardserver:" +#~ msgstr "Кардсервер:" + +#~ msgid "Certification" +#~ msgstr "Віковий ценз" + +#~ msgid "Change Poster Preview position" +#~ msgstr "Змінити позицію/розмір постерів" + +#~ msgid "Change profile" +#~ msgstr "Змінити профіль" + +#~ msgid "Change system time was canceled, because %s" +#~ msgstr "Системний час не змінено, так як%s" + +#~ msgid "Channel Selection" +#~ msgstr "Список каналів" + +#~ msgid "Check if epg.dat exists" +#~ msgstr "Перевіряти наявність epg.dat" + +#~ msgid "Check status Internet" +#~ msgstr "Перевірка стану інтернету" + +#~ msgid "Check your internet connection" +#~ msgstr "Перевірте інтернет-з'єднання" + +#~ msgid "Check your system and reboot" +#~ msgstr "Перезавантажте систему" + +#~ msgid "Chile" +#~ msgstr "Чилі" + +#~ msgid "China" +#~ msgstr "Китай" + +#~ msgid "Choice database to search" +#~ msgstr "Вибір бази даних для пошуку" + +#~ msgid "Choice profile in search" +#~ msgstr "Вибір профілю для пошуку" + +#~ msgid "Choice profile in search:" +#~ msgstr "Виберіть профіль для пошуку:" + +#~ msgid "Choose action:" +#~ msgstr "Вибір дії:" + +#~ msgid "Choose information:" +#~ msgstr "Вибір інформації:" + +#~ msgid "Choose media file" +#~ msgstr "Виберіть медіа-файл ...OK... " + +#~ msgid "City code" +#~ msgstr "Код населеного пункту" + +#~ msgid "City name" +#~ msgstr "Назва населеного пункту" + +#~ msgid "Clear (night)" +#~ msgstr "Безхмарно (в ночі)" + +#~ msgid "Clear /tmp" +#~ msgstr "Очищення /tmp" + +#~ msgid "Close Player with exit-key" +#~ msgstr "Закривати плеєр кнопкою EXIT" + +#~ msgid "Close plugin EXIT Button" +#~ msgstr "Вихід з плагіна кнопкою EXIT" + +#~ msgid "Close plugin?" +#~ msgstr "Вийти з плагіна?" + +#~ msgid "Cloudy" +#~ msgstr "Хмарність" + +#~ msgid "Cold" +#~ msgstr "Холод" + +#~ msgid "Command" +#~ msgstr "Завдання" + +#~ msgid "Committed DiSEqC command" +#~ msgstr "Команда перемикання DiSEqC" + +#~ msgid "Common configuration" +#~ msgstr "Загальні конфігурації" + +#~ msgid "Components for TMBD" +#~ msgstr "TMBD Компоненти для плагіну" + +#~ msgid "Config" +#~ msgstr "Конфігурація" + +#~ msgid "Config script Executer" +#~ msgstr "Конфігурація скрипт менеджера" + +#~ msgid "Configuration for automatic power off in standby" +#~ msgstr "Конф. авто.вимкнення ресиверу в режимі очікування" + +#~ msgid "Configuration for inactivity actions" +#~ msgstr "Конф. для переходу в режим очікування при бездіяльності" + +#~ msgid "Configure if service picons will be shown in the servicelist." +#~ msgstr "Налаштування для показу Пікон сервісів в списку сервісів." + +#~ msgid "Configure the behavior of the 'pause' key when movie playback is already paused." +#~ msgstr "Налаштування поведінки кнопки 'пауза', коли відео вже стоїть на паузі." + +#~ msgid "Configure the duration in hours and action, which could be shut down or standby, when the receiver is not controlled." +#~ msgstr "Налаштування тривалості у годинах і дії, вимикання або режимочікування, коли ресивер без управління." + +#~ msgid "Configure the duration in minutes and action, which could be shut down or standby, for the sleeptimer. Select this entry and click OK or green to start/stop the sleeptimer" +#~ msgstr "Налаштування тривалості в хвилинах і дії (вимкнення або режимочікування) для таймера сну. Виберіть цей рядочок та натисніть ОК або зеленукнопку для запуску / зупинки таймера сну." + +#~ msgid "Country" +#~ msgstr "Країна виробництва" + +#~ msgid "Country:" +#~ msgstr "Країна:" + +#~ msgid "Crashlog viewer" +#~ msgstr "Переглядач файлів крешлогу" + +#~ msgid "Crashlog viewer path" +#~ msgstr "Вибір шляху для перегляду крешлога" + +#~ msgid "Create new directory" +#~ msgstr "Створити нову папку" + +#~ msgid "Create new file" +#~ msgstr "Створити новий файл" + +# message07 +#~ msgid "Create: kerneldump" +#~ msgstr "Створюємо: kerneldump" + +# message06a +#~ msgid "Create: root.ubifs" +#~ msgstr "Створюємо: root.ubifs" + +#~ msgid "Cron Manager" +#~ msgstr "Управління Cron" + +#~ msgid "CtronTab Manager - %s" +#~ msgstr "Управління Cron - %s" + +#~ msgid "Current poster and info" +#~ msgstr "Поточний постер і опис" + +#~ msgid "Czech Republic" +#~ msgstr "Чехія" + +#~ msgid "Data processing method for Kinopoisk.ru" +#~ msgstr "Метод отримання даних з Kinopoisk.ru" + +#~ msgid "Day of month" +#~ msgstr "Число" + +#~ msgid "Day of week" +#~ msgstr "День тижня" + +#~ msgid "Deactivate Poster Preview" +#~ msgstr "Деактивувати прев'ю постерів" + +#~ msgid "Dec." +#~ msgstr "Груд." + +#~ msgid "Deepstandby" +#~ msgstr "Глибокий режим очікування" + +#~ msgid "Denmark" +#~ msgstr "Данія" + +#~ msgid "Details for: %s" +#~ msgstr "Детально для: %s" + +#~ msgid "Devices:" +#~ msgstr "Пристрої:" + +#~ msgid "DiSEqC repeats" +#~ msgstr "DiSEqC повтор" + +#~ msgid "Director" +#~ msgstr "Режисер" + +#~ msgid "Director:" +#~ msgstr "Режисер:" + +#~ msgid "Disable Media-filter" +#~ msgstr "Вимкнути Медіа фільтр" + +#~ msgid "Disable inactivity action at timeshift:" +#~ msgstr "Відключення при бездіяльності на Тimeshift" + +#~ msgid "Disable inactivity action for given interval:" +#~ msgstr "Ігнорувати бездіяльності управління заданого інтервалу: " + +#~ msgid "Disable power off for given interval:" +#~ msgstr "Вимкнути відключення живлення для даного інтервалу: " + +#~ msgid "Disable power off in EPGRefresh interval:" +#~ msgstr "Вимкнути відключення живлення при EPG Refresh:" + +#~ msgid "Disable power off until a given device is pingable:" +#~ msgstr "Вимкнути відключення живлення при обмініінформаціїї:" + +#~ msgid "Disable power off until a hard disk is active:" +#~ msgstr "Вимкнути відключення живлення доки HDD активний:" + +#~ msgid "Disable shutdown in EPGRefresh time span:" +#~ msgstr "Вимкнути відключення в EPG Refresh проміжок часу:" + +#~ msgid "Do you have the latest version of the plugin. No update needed. Click exit" +#~ msgstr "У вас остання версія плагіну. Ніяких змін не потрібно. Натисніть вихід" + +# plugin USB 3 +#~ msgid "" +#~ "Do you want to make a back-up on USB?\n" +#~ "\n" +#~ "This only takes a few minutes depending on the used filesystem and is fully automatic.\n" +#~ "\n" +#~ "Make sure you first insert an USB flash drive before you select Yes." +#~ msgstr "" +#~ "Ви хочете зробити резервну копію прошивки на USB?\n" +#~ "\n" +#~ "Це займе всього кілька хвилин залежно від файлової системи і процес повністю автоматизований.\n" +#~ "\n" +#~ "Переконайтеся, що ви спочатку вставили USB флеш носій, перш ніж вибрати ТАК." + +# plugin HDD 4 +#~ msgid "" +#~ "Do you want to make an USB-back-up image on HDD? \n" +#~ "\n" +#~ "This only takes a few minutes and is fully automatic.\n" +#~ msgstr "" +#~ "Ви хочете зробити резервну копію прошивки на HDD? \n" +#~ "\n" +#~ "Це займе всього кілька хвилин і процес повністю автоматизований.\n" + +#~ msgid "Do you want to restart the GUI now?" +#~ msgstr "Ви хочете перезавантажити GUI зараз?" + +#~ msgid "Download -deps" +#~ msgstr "Завантаження -deps" + +#~ msgid "Download -nodeps" +#~ msgstr "Завантаження -nodeps" + +#~ msgid "Download EPG" +#~ msgstr "Завантаження EPG" + +#~ msgid "Download EPG from linux-sat.tv (exUSSR)" +#~ msgstr "Завантаження EPG з linux-sat.tv (ex-USSR)" + +#~ msgid "Download extensions from feed" +#~ msgstr "Завантаження плагінів" + +#~ msgid "Driver Version:" +#~ msgstr "Версія драйвера:" + +#~ msgid "Drizzle" +#~ msgstr "Мряка" + +#~ msgid "Duration" +#~ msgstr "Тривалість" + +#~ msgid "Dust" +#~ msgstr "Пил" + +#~ msgid "E, %3.02f m/s" +#~ msgstr "Сх, %3.02f м/с" + +#~ msgid "E-CCcam.Cfg switcher" +#~ msgstr "E-Панель CCcam.Cfg перемикач" + +#~ msgid "E-Crashlog viewer" +#~ msgstr "E-Панель перегляд крешлога" + +#~ msgid "E-EPG Downloader" +#~ msgstr "E-EPG Завантажувач" + +#~ msgid "E-Installer" +#~ msgstr "E-Панель інсталятор" + +#~ msgid "E-Installer: Selection mode" +#~ msgstr "E-Інсталятор: Режим" + +#~ msgid "E-Installer: User directory on mount device" +#~ msgstr "E-Інсталятор: Директорія на монтованих дисках" + +#~ msgid "E-Ipk Installer" +#~ msgstr "E-Панель .ipk інсталятор" + +#~ msgid "E-Newcamd.list switcher" +#~ msgstr "E-Панель newcamd.list перемикач" + +#~ msgid "E-Oscam.conf switcher" +#~ msgstr "E-Панель oscam.conf перемикач" + +#~ msgid "E-Panel" +#~ msgstr "E-Панель" + +#~ msgid "E-Panel Config" +#~ msgstr "Конфігурація E-Панелі" + +#~ msgid "E-Panel Menu/Extensionmenu config" +#~ msgstr "Конфігурація меню/розширене меню" + +#~ msgid "E-Panel for OpenPli" +#~ msgstr "E-Панель" + +#~ msgid "E-Panel for OpenPli Ver:" +#~ msgstr "Е-Панель для OpenPli Вер." + +#~ msgid "E-Panel for Pli" +#~ msgstr "E-Пaнель" + +#~ msgid "E-Reload epg.dat" +#~ msgstr "E-Панель перезавантаження epg.dat" + +#~ msgid "E-Script Executer" +#~ msgstr "E-Панель скрипт менеджер" + +#~ msgid "E-SoftCam manager" +#~ msgstr "E-Панель Емулятори" + +#~ msgid "E-Tar.gz Installer" +#~ msgstr "E-Панель tar.gz інсталятор" + +#~ msgid "E-Unmount USB" +#~ msgstr "E-Панель демонтування USB" + +#~ msgid "E-Wicardd.conf switcher" +#~ msgstr "E-Панель wicardd.conf перемикач" + +#~ msgid "E-script path" +#~ msgstr "Вибір шляху для скриптів" + +#~ msgid "ENE, %3.02f m/s" +#~ msgstr "Сх,ПнСх, %3.02f м/с" + +#~ msgid "EPG Downloader" +#~ msgstr "Завантажувач EPG" + +#~ msgid "EPG downloaded" +#~ msgstr "EPG завантажений" + +#~ msgid "EPG from linux-sat.tv/piconload.ru (exUSSR)" +#~ msgstr "Завантажувач EPG" + +#~ msgid "ESE, %3.02f m/s" +#~ msgstr "Сх,ПвСх, %3.02f м/с" + +#~ msgid "Edit text to search for" +#~ msgstr "Відредагуйте текст для пошуку" + +#~ msgid "Enable AutoShutDown:" +#~ msgstr "Увімкнути AutoShutdown:" + +#~ msgid "Enable Media-filter" +#~ msgstr "Увімкнути Медіа фільтр" + +#~ msgid "Enable action after inactivity:" +#~ msgstr "Дозволити заходи після бездіяльності:" + +#~ msgid "Enable automatic power off in standby:" +#~ msgstr "Дозволити авто. відкл. живлення в режимі очікування: " + +#~ msgid "End of excluded interval (hh:mm):" +#~ msgstr "Закінчення тимчасового інтервалу (год:хв):" + +#~ msgid "Enter or choose event for search ..." +#~ msgstr "Введіть або виберіть подію для пошуку ..." + +#~ msgid "Enter text to search for" +#~ msgstr "Введіть текст для пошуку" + +#~ msgid "Error dowload CardServer list" +#~ msgstr "Помилка завантаження списку кардсерверу" + +#~ msgid "Error dowload SoftCam list" +#~ msgstr "Помилка завантаження списку емуляторів" + +#~ msgid "Error list ipk aviable" +#~ msgstr "Помилка створення списку .ipk пакетів" + +#~ msgid "Estonia" +#~ msgstr "Эстонія" + +#~ msgid "Event mode for search" +#~ msgstr "Режим події для пошуку" + +#~ msgid "Every" +#~ msgstr "Кожен період" + +#~ msgid "Extended search filter" +#~ msgstr "Розширений фільтр пошуку" + +#~ msgid "F i l e l i s t" +#~ msgstr "Список файлів" + +#~ msgid "Failed remove" +#~ msgstr "Помилка видалення" + +#~ msgid "Failed to download the update from the site! Manually download the archive from the site and install it yourself!" +#~ msgstr "Не вдалося завантажити оновлення з сайту! Вручну скачайте архів з сайту івстановіть його самостійно!" + +#~ msgid "Failure..." +#~ msgstr "Помилка..." + +#~ msgid "Fair (day)" +#~ msgstr "Ясно (в день)" + +#~ msgid "Fair (night)" +#~ msgstr "Ясно (в ночі)" + +#~ msgid "Feb." +#~ msgstr "Лют." + +#~ msgid "Feels: %s" +#~ msgstr "По відчуттю: %s" + +#~ msgid "Filter by Name in download extentions" +#~ msgstr "Фільтр імен в меню завантаження розширень" + +#~ msgid "Finland" +#~ msgstr "Фінляндія" + +#~ msgid "Flash:" +#~ msgstr "Осн. память:" + +#~ msgid "Foggy" +#~ msgstr "Туман" + +# message12-3 +#~ msgid "Follow the instructions on the front-display." +#~ msgstr "Дотримуйтесь інструкцій на фронтальній панелі супутникового тюнера." + +#~ msgid "Forced Install" +#~ msgstr "Примусова установка" + +#~ msgid "Fr" +#~ msgstr "Пт" + +#~ msgid "France" +#~ msgstr "Франція" + +#~ msgid "Freezing drizzle" +#~ msgstr "Паморозь" + +#~ msgid "Freezing rain" +#~ msgstr "Крижаний дощ" + +# plugin USB 1 +#~ msgid "Full 1:1 back-up direct on USB" +#~ msgstr "Повна (1:1) резервна копія безпосередньо на USB" + +# plugin HDD 2 +#~ msgid "Full 1:1 back-up in USB format" +#~ msgstr "Повна (1:1) резервна копія у форматі USB" + +# message22 +#~ msgid "Full back-up direct to USB" +#~ msgstr "Повна резервна копія безпосередньо на USB" + +# plugin HDD 3 +#~ msgid "Full back-up on HDD" +#~ msgstr "Повна резервна копія на HDD" + +# plugin HDD 1 +#~ msgid "Full back-up on HDD/USB" +#~ msgstr "Повна резервна копія на HDD/USB" + +# plugin USB 2 +#~ msgid "Full back-up to USB" +#~ msgstr "Повна резервна копія на USB" + +# message20 +#~ msgid "Full back-up to the harddisk" +#~ msgstr "Повна резервна копія на жорсткий диск" + +#~ msgid "Full view" +#~ msgstr "Повний вид" + +#~ msgid "GUI needs a reboot to apply the changes!" +#~ msgstr "GUI потребує перезавантаження, щоб застосувати зміни!" + +#~ msgid "Genre:" +#~ msgstr "Жанр:" + +#~ msgid "Germany" +#~ msgstr "Германія" + +#~ msgid "Go to standby" +#~ msgstr "Увага! Перейти в режим очікування" + +#~ msgid "Goto specific data/time" +#~ msgstr "Перейти на конкретний дата/час" + +#~ msgid "Greece" +#~ msgstr "Греція" + +#~ msgid "Guatemala" +#~ msgstr "Гватемала" + +#~ msgid "HDD go sleep" +#~ msgstr "HDD зупинений" + +#~ msgid "HDD sleep" +#~ msgstr "Стоп HDD" + +#~ msgid "Hail" +#~ msgstr "Град" + +#~ msgid "Hardware:" +#~ msgstr "Пристрій:" + +#~ msgid "Haze" +#~ msgstr "Легкий туман" + +#~ msgid "Heavy snow" +#~ msgstr "Сильна хуртовина" + +#~ msgid "Hide the names of the items in movieInfo" +#~ msgstr "Ховати назви пунктів в movieInfo" + +#~ msgid "Hong Kong" +#~ msgstr "Гонконг" + +#~ msgid "Hot" +#~ msgstr "Спека" + +#~ msgid "Hour" +#~ msgstr "Годинник" + +#~ msgid "Hungary" +#~ msgstr "Угорщина" + +#~ msgid "Hurricane" +#~ msgstr "Ураган" + +#~ msgid "IP address of network device:" +#~ msgstr "IP адреса мережевого пристрою:" + +#~ msgid "IPK Tools" +#~ msgstr "Ручна установка і видалення пакетів" + +# message21-6 +#~ msgid "If you place an USB-stick containing this file then the back-up will be automatically made onto the USB-stick and can be used to restore the current image if necessary." +#~ msgstr "Якщо підключити USB-флешку, що містить цей файл, то резервна копія буде автоматично зроблена на USB-флешку і, якщо це буде необхідно, може бути використана для відновлення прошивки." + +# message15 +#~ msgid "Image creation FAILED!" +#~ msgstr "Створення прошивки завершилося НЕВДАЧЕЮ!" + +#~ msgid "Image:" +#~ msgstr "Імідж:" + +#~ msgid "Include %s" +#~ msgstr "Вмикати %s" + +#~ msgid "India" +#~ msgstr "Индія" + +#~ msgid "Indonesia" +#~ msgstr "Індонезія" + +#~ msgid "Insatall extensions from feed" +#~ msgstr "Інсталяція розширень з фіду" + +#~ msgid "Instal Tmbd components Settings" +#~ msgstr "Меню установки компонентів для плагіна Tmbd" + +#~ msgid "Install & Remove Plugins, Addons, Softcams" +#~ msgstr "Інсталяція і видалення плагінів, доповнень, емуляторів" + +#~ msgid "Install All" +#~ msgstr "Інсталювати все" + +#~ msgid "Install YTTrailer..." +#~ msgstr "Інсталяція YTTrailer..." + +#~ msgid "Install packages library lmxl" +#~ msgstr "Інсталяція пакетів бібліотеки lmxl" + +#~ msgid "Install packets" +#~ msgstr "Інсталяція пакетів" + +#~ msgid "Install tar.gz, bh.tgz, nab.tgz" +#~ msgstr "Інсталяція tar.gz, bh.tgz, nab.tgz" + +#~ msgid "Installing alternative MovieSelection" +#~ msgstr "Інсталяція альтернативного MovieSelection" + +#~ msgid "Installing alternative MovieSelection for old pli" +#~ msgstr "Інсталяція альтернативного MovieSelection для старої бази pli" + +#~ msgid "Installing components" +#~ msgstr "Інсталяція компонентів" + +#~ msgid "Installing components for TMBD" +#~ msgstr "TMBD Інсталяція компонентів для плагіну" + +#~ msgid "Invalid Choice" +#~ msgstr "Неправильний вибір" + +#~ msgid "Ipk remove" +#~ msgstr "Видалення .ipk пакетів" + +#~ msgid "Iran" +#~ msgstr "Іран" + +#~ msgid "Ireland" +#~ msgstr "Ірландія" + +#~ msgid "Is a time-based job scheduler" +#~ msgstr "Планувальник завдань за розкладом" + +#~ msgid "Isolated thundershowers" +#~ msgstr "Ізольовані грози" + +#~ msgid "Isolated thunderstorms" +#~ msgstr "Ізольовані грози" + +#~ msgid "Italy" +#~ msgstr "Італія" + +#~ msgid "Jan." +#~ msgstr "Січ." + +#~ msgid "Japan" +#~ msgstr "Японія" + +#~ msgid "Jul" +#~ msgstr "Липень" + +#~ msgid "Jul." +#~ msgstr "Липень" + +#~ msgid "Jun" +#~ msgstr "Червень" + +#~ msgid "Jun." +#~ msgstr "Червень" + +# message27 +#~ msgid "KB per second" +#~ msgstr "Кб в секунду" + +#~ msgid "Kazakhstan" +#~ msgstr "Казахстан" + +#~ msgid "Kernel Modules Manager" +#~ msgstr "Управління драйверами" + +#~ msgid "Kernel Version:" +#~ msgstr "Версія ядра:" + +#~ msgid "Key mapping" +#~ msgstr "Призначення клавіши" + +#~ msgid "" +#~ "Kinopoisk.ru\n" +#~ "Developer: Dima73\n" +#~ "(c)2012" +#~ msgstr "" +#~ "Kinopoisk.ru\n" +#~ "Розробник: Dima73\n" +#~ "(c)2012" + +#~ msgid "" +#~ "Kinopoisk.ru\n" +#~ "Developer: Dima73 (c)2012\n" +#~ "\n" +#~ "Donate:\n" +#~ "WMZ Z305015597712" +#~ msgstr "" +#~ "Kinopoisk.ru\n" +#~ "Розробник: Dima73 (c)2012\n" +#~ "\n" +#~ "Подяка:\n" +#~ "WMZ Z305015597712" + +#~ msgid "Korea" +#~ msgstr "Корея" + +#~ msgid "Large poster" +#~ msgstr "Великий постер" + +#~ msgid "Last Upgrade:" +#~ msgstr "Оновлення:" + +#~ msgid "Latvia" +#~ msgstr "Латвія" + +#~ msgid "Light snow showers" +#~ msgstr "Легкий снігопад" + +#~ msgid "List: kinopoisk.ru / themoviedb.org" +#~ msgstr "Список: kinopoisk.ru / themoviedb.org" + +#~ msgid "List: themoviedb.org / kinopoisk.ru" +#~ msgstr "Список: themoviedb.org / kinopoisk.ru" + +#~ msgid "Lithuania" +#~ msgstr "Литва" + +#~ msgid "Load/UnLoad" +#~ msgstr "Вкл./Відкл." + +#~ msgid "Loaded %s.ko" +#~ msgstr "Завантажений %s.ko" + +#~ msgid "Lookup in TMBD" +#~ msgstr "Пошук в TMBD" + +#~ msgid "LsMod" +#~ msgstr "Драйвери" + +#~ msgid "Luxembourg" +#~ msgstr "Люксембург" + +#~ msgid "Macedonia" +#~ msgstr "Македонія" + +#~ msgid "Madagascar" +#~ msgstr "Мадагаскар" + +#~ msgid "Make swap" +#~ msgstr "Створити файл підкачки" + +#~ msgid "Make swap on %s (128MB)" +#~ msgstr "Створити файл підкачки на %s (128MB)" + +#~ msgid "Make swap on %s (256MB)" +#~ msgstr "Створити файл підкачки на %s (256MB)" + +#~ msgid "Make swap on %s (512MB)" +#~ msgstr "Створити файл підкачки на %s (512MB)" + +#~ msgid "Malaysia" +#~ msgstr "Малайзія" + +#~ msgid "Manage BusyBox-Cron service" +#~ msgstr "Управління сервісом BusyBox-Cron" + +#~ msgid "Manage Dropbear SSH service" +#~ msgstr "Управління сервісом Dropbear SSH" + +#~ msgid "Manage Ftp service" +#~ msgstr "Управління сервісом Ftp" + +#~ msgid "Manage Internet superserver (inetd)" +#~ msgstr "Управління суперсервером Інтернет (inetd)" + +#~ msgid "Manage Networking service" +#~ msgstr "Управління сервісом Network" + +#~ msgid "Manage Samba service" +#~ msgstr "Управління сервісом Samba" + +#~ msgid "Manage Swap" +#~ msgstr "Управління файлом підкачки " + +#~ msgid "Manage Swap on %s" +#~ msgstr "Управління файлом підкачки на %s" + +#~ msgid "Manage Syslog/klogd service" +#~ msgstr "Управління сервісом Syslog/klogd" + +#~ msgid "Manage epg, ntp, unmount, script, info ..." +#~ msgstr "Синхронізація часу, EPG, скрипти, інфо ..." + +#~ msgid "Manual Installer/Uninstaller" +#~ msgstr "Ручна установка і видалення пакетів" + +#~ msgid "Manual input" +#~ msgstr "Ручне введення" + +#~ msgid "Mar." +#~ msgstr "Березень" + +#~ msgid "March" +#~ msgstr "Березеня" + +#~ msgid "Max. results in list-mode" +#~ msgstr "Макс. результат пошуку в режимі списку" + +#~ msgid "May" +#~ msgstr "Травень" + +#~ msgid "Memory positions" +#~ msgstr "Позиція пам'яті" + +#~ msgid "Memory:" +#~ msgstr "Пам'ять:" + +#~ msgid "Message timeout (sec):" +#~ msgstr "Тайм-аут повідомлення (сек) " + +#~ msgid "Mexico" +#~ msgstr "Мексика" + +#~ msgid "MgCamd Restarted" +#~ msgstr "MgCamd перезапущений" + +#~ msgid "Mgcamd config filename" +#~ msgstr "Mgcamd ім'я основного файлу конфігурації" + +#~ msgid "Mgcamd config switcher" +#~ msgstr "Mgcamd перемикач" + +#~ msgid "Mgcamd configfile extention" +#~ msgstr "Mgcamd розширення файлу конфігурації" + +#~ msgid "Mgcamd configpath" +#~ msgstr "Mgcamd шлях до конфігурації" + +#~ msgid "Min" +#~ msgstr "Хвилини" + +#~ msgid "Mixed rain and hail" +#~ msgstr "Дощ з градом" + +#~ msgid "Mixed rain and sleet" +#~ msgstr "Дощ і слякоть" + +#~ msgid "Mixed rain and snow" +#~ msgstr "Дощ зі снігом" + +#~ msgid "Mixed snow and sleet" +#~ msgstr "Сніг і слякоть" + +#~ msgid "Mo" +#~ msgstr "Пн" + +#~ msgid "Mode" +#~ msgstr "Режим" + +#~ msgid "Moldova" +#~ msgstr "Молдова" + +#~ msgid "Month" +#~ msgstr "Місяць" + +# message28 +#~ msgid "Most likely this back-up can't be restored because of it's size, it's simply too big to restore. This is a limitation of the bootloader not of the back-up or the BackupSuite." +#~ msgstr "Швидше за все, ця резервна копія прошивки не зможе бути відновлена ​​через розмір, тому що він занадто великий. Це обмеження завантажувача, а не прошивки або BackupSuite." + +#~ msgid "Mostly cloudy (day)" +#~ msgstr "Сильна хмарність (в день)" + +#~ msgid "Mostly cloudy (night)" +#~ msgstr "Сильна хмарність (в ночь)" + +#~ msgid "Move/Copy" +#~ msgstr "Переміст/Копіювати" + +#~ msgid "Multi files" +#~ msgstr "Багатофайловий" + +#~ msgid "MultiSelect Mode" +#~ msgstr "Багатофайловий режим" + +#~ msgid "N, %3.02f m/s" +#~ msgstr "Пн, %3.02f м/с" + +#~ msgid "NE, %3.02f m/s" +#~ msgstr "Пн,Сх, %3.02f м/с" + +#~ msgid "NNE, %3.02f m/s" +#~ msgstr "Пн,ПнСх, %3.02f м/с" + +#~ msgid "NNW, %3.02f m/s" +#~ msgstr "Пн,ПнЗх, %3.02f м/с" + +#~ msgid "NONE" +#~ msgstr "немає кнопки" + +#~ msgid "NW, %3.02f m/s" +#~ msgstr "ПнЗх, %3.02f м/с" + +#~ msgid "Name of keyfile" +#~ msgstr "Назва файлу ключів" + +#~ msgid "Netherlands" +#~ msgstr "Голландія" + +#~ msgid "New Zealand" +#~ msgstr "Нова Зеландія" + +#~ msgid "Next: %s" +#~ msgstr "Далі: %s" + +#~ msgid "No HD streaming" +#~ msgstr "Без HD стримінгу" + +#~ msgid "No connect to kinopoisk.ru..." +#~ msgstr "Немає з'єднання з kinopoisk.ru..." + +#~ msgid "No connect to www.themoviedb.org" +#~ msgstr "Немає з'єднання з www.themoviedb.org" + +#~ msgid "No description available" +#~ msgstr "Немає опису" + +#~ msgid "No posters found for: %s" +#~ msgstr "Не знайдений постерів для: %s" + +#~ msgid "No satellite frontend found!!" +#~ msgstr "Не знайдено супутниковий інтерфейс!" + +# message01 +#~ msgid "No supported receiver found!" +#~ msgstr "Знайдений не підтримуваний супутниковий ресивер!" + +#~ msgid "Norway" +#~ msgstr "Норвегія" + +#~ msgid "Not Active" +#~ msgstr "Не активний" + +#~ msgid "Not Installed" +#~ msgstr "Не встановлений" + +#~ msgid "Not available" +#~ msgstr "Немає даних" + +#~ msgid "Not available...\n" +#~ msgstr "Немає опису...\n" + +#~ msgid "Not found network connection..." +#~ msgstr "Не знайдено підключення до мережі..." + +#~ msgid "Nothing found for: %s" +#~ msgstr "Нічого не знайдено для: %s" + +#~ msgid "Nothing found for: %s or no answer in kinopoisk.ru" +#~ msgstr "Нічого не знайдено для: %s або немає відповіді від kinopoisk.ru" + +#~ msgid "Nov." +#~ msgstr "Листопад" + +#~ msgid "Now: %s" +#~ msgstr "Зараз: %s" + +#~ msgid "NtpTime Updater" +#~ msgstr "Синхронізація часу" + +#~ msgid "Oct." +#~ msgstr "Жовтень" + +#~ msgid "Only current info" +#~ msgstr "Тільки поточний опис" + +#~ msgid "Only current poster" +#~ msgstr "Тільки поточний постер" + +#~ msgid "Only poster" +#~ msgstr "Тільки постер" + +#~ msgid "Open VirtualKeyBoard" +#~ msgstr "Відкрити віртуальну клавіатуру" + +#~ msgid "Open plugin if there is no event" +#~ msgstr "Відкрити плагін, навіть якщо немає події" + +#~ msgid "Open service list and select next channel" +#~ msgstr "Відкрити список сервісів і вибрати інший канал" + +#~ msgid "Open service list and select previous channel" +#~ msgstr "Відкрити список сервісів і вибрати попередній канал" + +#~ msgid "Option for all images" +#~ msgstr "Варіант для всіх іміджів" + +#~ msgid "Option only python 2.7 images" +#~ msgstr "Варіант тільки для іміджів на python 2.7" + +#~ msgid "Options" +#~ msgstr "Опції" + +#~ msgid "Oscam config filename" +#~ msgstr "Oscam ім'я основного файлу конфігурації" + +#~ msgid "Oscam config switcher" +#~ msgstr "Oscam перемикач" + +#~ msgid "Oscam configfile extention" +#~ msgstr "Oscam розширення файлу конфігурації" + +#~ msgid "Oscam configpath" +#~ msgstr "Oscam шлях до конфігурації" + +#~ msgid "P l a y l i s t" +#~ msgstr "Список відтворення" + +# message21-2 +#~ msgid "PLEASE READ THIS:" +#~ msgstr "БУДЬ ЛАСКА ПРОЧИТАЙТЕ ЦЕ:" + +#~ msgid "Pack my bootlogo" +#~ msgstr "Pack my bootlogo" + +#~ msgid "Pakistan" +#~ msgstr "Пакістан" + +#~ msgid "Panama" +#~ msgstr "Панама" + +#~ msgid "Partly cloudy" +#~ msgstr "Часткова хмарність" + +#~ msgid "Partly cloudy (day)" +#~ msgstr "Часткова хмарність (в день)" + +#~ msgid "Partly cloudy (night)" +#~ msgstr "Часткова хмарність (в ночі)" + +#~ msgid "Patch enigma2.sh (need restart enigma2)" +#~ msgstr "Правка enigma2.sh (потрібне перезавантаження enigma2)" + +#~ msgid "Path to save keyfile" +#~ msgstr "Шлях збереження файлу ключів" + +#~ msgid "Philippines" +#~ msgstr "Філіппіни" + +# message12-2 +#~ msgid "Place the USB-flash drive in the (front) USB-port and switch the receiver off and on with the powerswitch on the back of the receiver." +#~ msgstr "Підключіть USB накопичувач в USB-порт (спереду), вимкніть і увімкніть супутниковий тюнер тумблером (якщо такий присутній) на задній панелі ресивера." + +#~ msgid "Play media file before inactivity action:" +#~ msgstr "Відігравати мультимедійний файл перед бездіяльностю дії:" + +# message03 +#~ msgid "Please be patient, a backup will now be made, this will take about: " +#~ msgstr "Будь ласка, будьте терплячі, створення резервної копії почалося, це займе близько: " + +# message14 +#~ msgid "Please check the manual of the receiver on how to restore the image." +#~ msgstr "Будь ласка, зверніться до керівництва супутникового тюнера, про те, як відновити прошивку." + +#~ msgid "Please select the matching entry:" +#~ msgstr "Будь ласка, виберіть зі списку:" + +#~ msgid "Please wait, downloading epg.dat" +#~ msgstr "Очікуйте, завантажується epg.dat" + +#~ msgid "Please wait, restarting %s" +#~ msgstr "Чекайте, перезапускається %s" + +#~ msgid "Please wait, starting %s" +#~ msgstr "Чекайте, запускається %s" + +#~ msgid "Please wait, stoping softcam or cardserver" +#~ msgstr "Чекайте, зупиняється емулятор чи кардсервер" + +# message12-4 +#~ msgid "Please wait.... almost ready!" +#~ msgstr "Будь ласка, зачекайте .... майже готове!" + +#~ msgid "Poland" +#~ msgstr "Польща" + +#~ msgid "Port(s) (single xxxxx or range xxxxx:xxxxx)" +#~ msgstr "Порт(и) (одиночний xxxxx або діапазон xxxxx:xxxxx)" + +#~ msgid "Portugal" +#~ msgstr "Португалія" + +#~ msgid "Position posters in the full menu" +#~ msgstr "Позиція постерів в повному меню" + +#~ msgid "Poster %s saved as background!" +#~ msgstr "Постер %s збережений в якості фону!" + +#~ msgid "Poster %s saved!" +#~ msgstr "Постер %s збережений!" + +#~ msgid "Poster Preview" +#~ msgstr "Прев'ю постерів" + +#~ msgid "Posters for: %s" +#~ msgstr "Постери для: %s" + +#~ msgid "Power off STB" +#~ msgstr "Вимкнути ресівер" + +#~ msgid "Press '0' to toggle internal/external PiP." +#~ msgstr "Натисніть '0 'для зміни внутрішнього/зовнішнього PiP." + +#~ msgid "Press OK" +#~ msgstr "Натисніть ОК" + +# message13 +#~ msgid "Press arrow up from frontpanel to start loading." +#~ msgstr "Натисніть стрілку ВГОРУ на фронтальній панелі супутникового тюнера, щоб почати завантаження." + +#~ msgid "Producers" +#~ msgstr "Продюсери" + +#~ msgid "Profile movielist context menu" +#~ msgstr "Профіль контекстного меню списку медіа" + +#~ msgid "Profile: kinopoisk.ru" +#~ msgstr "Профіль: kinopoisk.ru" + +#~ msgid "Profile: themoviedb.org" +#~ msgstr "Профіль: themoviedb.org" + +#~ msgid "Query details from the Internet Movie Database" +#~ msgstr "Пошук описів фільмів в базах даних інтернету" + +#~ msgid "Quick switching via remote control" +#~ msgstr "Швидке перемикання за допомогою ПД керування" + +#~ msgid "ReStart" +#~ msgstr "Перезапуск" + +#~ msgid "ReStart Both" +#~ msgstr "Перезапуск" + +#~ msgid "Reload epg.dat" +#~ msgstr "Перезав. epg.dat" + +#~ msgid "Remove All" +#~ msgstr "Видалити все" + +#~ msgid "Remove all posters for movie" +#~ msgstr "Видалення всіх збережених постерів" + +#~ msgid "Remove all posters?" +#~ msgstr "Видалити всі постери?" + +#~ msgid "Remove poster / info" +#~ msgstr "Видалення постеру / опису" + +#~ msgid "Remove swap" +#~ msgstr "Видалити файл підкачки" + +#~ msgid "Remove swap on %s (%s)" +#~ msgstr "Видалити файл підкачки на %s (%s)" + +#~ msgid "Remove tabs" +#~ msgstr "Видалити завдання" + +#~ msgid "Remove timer" +#~ msgstr "Видалити таймер" + +#~ msgid "Removed %s" +#~ msgstr "Видалено %s" + +#~ msgid "Removed All Crashlog Files" +#~ msgstr "Всі файли видалені" + +#~ msgid "Reset AutoShutDown settings to defaults?" +#~ msgstr "Скинути налаштування AutoShutdown до значень за замовчуванням?" + +#~ msgid "Restart GUI" +#~ msgstr "Перезапуск Enigma" + +#~ msgid "Restart MgCamd" +#~ msgstr "Перезапуск MgCamd" + +#~ msgid "Restart Softcam" +#~ msgstr "Перезапуск Емулятора" + +#~ msgid "Restarting %s service" +#~ msgstr "Перезапуск сервіса %s" + +#~ msgid "Restarting ..." +#~ msgstr "Перезапуск ..." + +#~ msgid "Restore epg.dat" +#~ msgstr "Відновити epg.dat" + +#~ msgid "Restoring a backup MovieSelection" +#~ msgstr "Відновлення бекапу MovieSelection" + +#~ msgid "Roles duplicated" +#~ msgstr "Ролі дублювали" + +#~ msgid "Roles duplicated:" +#~ msgstr "Ролі дублювали:" + +#~ msgid "Romania" +#~ msgstr "Румунія" + +#~ msgid "Russian Federation" +#~ msgstr "Російська Федерація" + +#~ msgid "S, %3.02f m/s" +#~ msgstr "Пв, %3.02f м/с" + +#~ msgid "SE, %3.02f m/s" +#~ msgstr "ПвСх, %3.02f м/с" + +#~ msgid "SSE, %3.02f m/s" +#~ msgstr "Пв,ПвСх, %3.02f м/с" + +#~ msgid "SSW, %3.02f m/s" +#~ msgstr "Пв,ПвЗх, %3.02f м/с" + +#~ msgid "SW, %3.02f m/s" +#~ msgstr "Пв,Зх, %3.02f м/с" + +#~ msgid "Sa" +#~ msgstr "Сб" + +#~ msgid "Satellite configuration mode Mode" +#~ msgstr "Режим" + +#~ msgid "Save as background" +#~ msgstr "Зберегти як фон" + +#~ msgid "Save as poster" +#~ msgstr "Зберегти як постер" + +#~ msgid "Save epg.dat" +#~ msgstr "Зберегти epg.dat" + +#~ msgid "Save info / poster" +#~ msgstr "Зберегти інфо / постер" + +#~ msgid "Save location descriptions" +#~ msgstr "Вибір папки для збереження опису" + +#~ msgid "" +#~ "Save poster and info for:\n" +#~ " %s ?" +#~ msgstr "" +#~ "Зберегти постер і опис для:\n" +#~ " %s ?" + +#~ msgid "Save poster/info for movie" +#~ msgstr "Зберегти постер/опис до запису" + +#~ msgid "Saved" +#~ msgstr "Збережено" + +#~ msgid "Scattered showers" +#~ msgstr "Рідкісні дощі" + +#~ msgid "Scattered snow showers" +#~ msgstr "Рідкісний зливовий сніг" + +#~ msgid "Scattered thunderstorms" +#~ msgstr "Рідкісні грози" + +#~ msgid "Script Executer" +#~ msgstr "Скрипти користувача" + +#~ msgid "Scripts" +#~ msgstr "Скрипти" + +#~ msgid "Search Trailer" +#~ msgstr "Пошук трейлерів" + +#~ msgid "Search in kinopoisk.ru" +#~ msgstr "Пошук в kinopoisk.ru" + +#~ msgid "Search in kinopoisk.ru ,please wait ..." +#~ msgstr "Йде пошук в kinopoisk.ru ,будь ласка зачекайте ..." + +#~ msgid "Search in themoviedb.org" +#~ msgstr "Пошук в themoviedb.org" + +#~ msgid "Search in themoviedb.org ,please wait ..." +#~ msgstr "Пошук в themoviedb.org ,пожалуйста подождите ..." + +#~ msgid "Search results for: %s" +#~ msgstr "Результати пошуку для: %s" + +#~ msgid "Select EPG language" +#~ msgstr "Вибір мови EPG" + +#~ msgid "Select Profile" +#~ msgstr "Вибір профілю" + +#~ msgid "Select SoftCam or CardServer: - %s" +#~ msgstr "Виберіть Емулятор: - %s" + +#~ msgid "Select a media file for AutoShutDown" +#~ msgstr "Виберіть мультимедійний файл для AutoShutdown" + +#~ msgid "Select action:" +#~ msgstr "Виберіть дію:" + +#~ msgid "Select colors for name in simple menu" +#~ msgstr "Вибір кольору назви для стандартного вигляду меню" + +#~ msgid "Select from Favourites" +#~ msgstr "Вибір з фаворитів" + +#~ msgid "Select install files" +#~ msgstr "Виберіть пакети для інсталяції" + +#~ msgid "Select path to save epg.dat" +#~ msgstr "Вибір шляху збереження epg.dat" + +#~ msgid "Select plugin key" +#~ msgstr "Оберіть кнопку виклику плагіну" + +#~ msgid "Select size poster" +#~ msgstr "Вибір розміру постера" + +#~ msgid "Select source epg.dat" +#~ msgstr "Вибір джерела завантаження epg.dat" + +#~ msgid "Select the desired changed..." +#~ msgstr "Виберіть потрібний пункт меню і натисніть клавішу ок" + +#~ msgid "Select the search language" +#~ msgstr "Виберіть мову пошуку" + +#~ msgid "Select the type of save the description" +#~ msgstr "Вибір типу збереження опису" + +#~ msgid "Select your kinopoisk menu" +#~ msgstr "Вибір виду меню Кинопоиск" + +#~ msgid "Select your skins" +#~ msgstr "Виберіть формат скіну" + +#~ msgid "Selecting poster" +#~ msgstr "Вибір постерів" + +#~ msgid "Selecting poster TMBD" +#~ msgstr "Вибір постерів з сайту TMBD" + +#~ msgid "Send DiSEqC" +#~ msgstr "Надіслати DiSEqC" + +#~ msgid "Sep." +#~ msgstr "Вер." + +#~ msgid "Server (ip or name)" +#~ msgstr "Сервер (ip-адрес або ім'я)" + +#~ msgid "Service Manager" +#~ msgstr "Управління сервісами" + +#~ msgid "Service Tools" +#~ msgstr "Сервісні утиліти" + +#~ msgid "Set Transponder time update" +#~ msgstr "Синхронізувати час з транспондера" + +#~ msgid "Set choice server mode" +#~ msgstr "Встановіть спосіб вибору сервера" + +#~ msgid "Set manual ntp server address" +#~ msgstr "Введіть адресу ntp сервера" + +#~ msgid "Set script path" +#~ msgstr "Встановіть директорію" + +#~ msgid "Set start directory" +#~ msgstr "Встановити початкову папку" + +#~ msgid "Set time to update" +#~ msgstr "Встановити період оновлення" + +#~ msgid "Set your country" +#~ msgstr "Встановіть місцерозташування" + +#~ msgid "Settings TMBD Details Plugin..." +#~ msgstr "Налаштування плагіну TMBD..." + +#~ msgid "Severe thunderstorms" +#~ msgstr "Сильна гроза" + +#~ msgid "Show \"TMBD Details: current event\" in extensions menu" +#~ msgstr "Показати \"TMBD пошук: поточну подію\" в меню доповнень" + +#~ msgid "Show E-CrashLog viewr in ExtensionMenu" +#~ msgstr "Показати перегляд крешлога в розширеному меню" + +#~ msgid "Show E-EPG Downloader in ExtensionMenu" +#~ msgstr "Показати завантажувач EPG в розширеному меню" + +#~ msgid "Show E-Installer in ExtensionMenu" +#~ msgstr "Показати E-Інсталятор в розширеному меню" + +#~ msgid "Show E-NewCamd.list switcher in ExtensionMenu" +#~ msgstr "Показати newcamd.list перемикач у розширеному меню" + +#~ msgid "Show E-Panel in ExtensionMenu" +#~ msgstr "Показати E-Панель в розширеному меню" + +#~ msgid "Show E-Panel in MainMenu" +#~ msgstr "Показати E-Панель в основному меню" + +#~ msgid "Show E-Script Executter in ExtensionMenu" +#~ msgstr "Показати скрипт менеджер в розширеному меню" + +#~ msgid "Show E-SoftCam manager in ExtensionMenu" +#~ msgstr "Показати емулятори в розширеному меню" + +#~ msgid "Show E-Usb Unmount in ExtensionMenu" +#~ msgstr "Показати демонтування USB в розширеному меню" + +#~ msgid "Show E-Wicardd.conf switcher in ExtensionMenu" +#~ msgstr "Показати wicardd.conf перемикач в розширеному меню" + +#~ msgid "Show PluginBrowser in E-Panel MainMenu" +#~ msgstr "Показати Плагіни в меню Е-Панелі" + +#~ msgid "Show current mode" +#~ msgstr "Показати поточний режим" + +#~ msgid "Show in Extensions/Plugins:" +#~ msgstr "Показати в Extensions/Плагіни:" + +#~ msgid "Show info for all types of movies" +#~ msgstr "Показати опис для всіх типів записів" + +#~ msgid "Show message before inactivity action:" +#~ msgstr "Показати повідомлення перед вимиканням:" + +#~ msgid "Show movie details" +#~ msgstr "Показати деталі" + +#~ msgid "Show picons in servicelist" +#~ msgstr "Показати Пікони в списку сервісів" + +#~ msgid "Show plugin in channel selection context menu" +#~ msgstr "Показати плагін в контекстному меню селектора каналів" + +#~ msgid "Show reload epg.dat in ExtensionMenu" +#~ msgstr "Показати перезавантаження epg.dat в розширеному меню" + +#~ msgid "Show search results" +#~ msgstr "Результати пошуку" + +#~ msgid "Showers" +#~ msgstr "Злива" + +#~ msgid "Shutdown after current event" +#~ msgstr "Вимкнення після поточної події" + +#~ msgid "Shutdown in " +#~ msgstr "Вимкнення через " + +#~ msgid "Simple Cardserver" +#~ msgstr "Управління кардсервером" + +#~ msgid "Simple Softcam" +#~ msgstr "Управління Емуляторами" + +#~ msgid "Simple Softcam/Cardserver" +#~ msgstr "Управління Емуляторами і Кардсервером" + +#~ msgid "Simple view" +#~ msgstr "Стандартний вигляд" + +#~ msgid "Singapore" +#~ msgstr "Сингапур" + +#~ msgid "Single file" +#~ msgstr "Одинарний" + +#~ msgid "SingleSelect Mode" +#~ msgstr "Одинарний режим" + +#~ msgid "Sleet" +#~ msgstr "Мокрий сніг" + +#~ msgid "Slovakia" +#~ msgstr "Словаччина" + +#~ msgid "Slovenia" +#~ msgstr "Словенія" + +#~ msgid "Small poster" +#~ msgstr "невеликий постер" + +#~ msgid "Smoky" +#~ msgstr "Димка" + +#~ msgid "Snow" +#~ msgstr "Хуртовина" + +#~ msgid "Snow flurries" +#~ msgstr "Снігопад" + +#~ msgid "Snow showers" +#~ msgstr "Зливовий сніг" + +#~ msgid "SoftCam.Key Updater" +#~ msgstr "Завантажувач SoftCam.Key" + +#~ msgid "SoftCam.Key server" +#~ msgstr "SoftCam.Key сервер" + +#~ msgid "SoftCam/CardServer Panel" +#~ msgstr "Панель управління емуляторами і кардсервером" + +#~ msgid "Softcam" +#~ msgstr "Емулятор" + +#~ msgid "Softcam Restarted" +#~ msgstr "Емулятор перезавантажений" + +#~ msgid "Softcam:" +#~ msgstr "Емулятор:" + +#~ msgid "Software update preview" +#~ msgstr "Перегляд оновлення" + +# message06 +#~ msgid "Some information about the task" +#~ msgstr "Некоторая информация о задании" + +#~ msgid "Sorry, ftp connection is not available" +#~ msgstr "На жаль, FTP з'єднання не доступно" + +#~ msgid "Sorry, the EPG download error" +#~ msgstr "Вибачте, помилка завантаження EPG" + +#~ msgid "Sort by date (bouquet-)" +#~ msgstr "Сортувати по даті (bouquet-)" + +#~ msgid "Sort by name (bouquet+)" +#~ msgstr "Сортувати по алфавіту (bouquet+)" + +#~ msgid "South Africa" +#~ msgstr "Південна Африка" + +#~ msgid "Spain" +#~ msgstr "Іспанія" + +#~ msgid "Standart" +#~ msgstr "Стандартний" + +#~ msgid "Start" +#~ msgstr "Старт" + +#~ msgid "Start Samba" +#~ msgstr "Старт Samba" + +#~ msgid "Start scripts from /usr/script" +#~ msgstr "Запуск скриптів із /usr/script" + +#~ msgid "Start, Stop, Create, Remove Swap file" +#~ msgstr "Запуск, зупинка, створення, видалення файлу підкачки" + +#~ msgid "Start, Stop, Restart Cardserver" +#~ msgstr "Запуск, зупинка і перезапуск кардсервера" + +#~ msgid "Start, Stop, Restart Sofcam" +#~ msgstr "Запуск, зупинка і перезапуск емулятора" + +#~ msgid "Start, Stop, Restart Sofcam/Cardserver" +#~ msgstr "Запуск, зупинка і перезапуск емуляторів і кардсерверів" + +#~ msgid "Start, Stop, Restart system services" +#~ msgstr "Запуск, зупинка, перезапуск системних сервісів" + +#~ msgid "StartUp synchronization" +#~ msgstr "Синхронізувати час при старті системи" + +#~ msgid "Starting %s service" +#~ msgstr "Запуск сервісу %s" + +#~ msgid "Status:" +#~ msgstr "Статус:" + +#~ msgid "Stoping %s service" +#~ msgstr "Зупинка сервісу %s" + +#~ msgid "Storage of icons for the full menu" +#~ msgstr "Місце зберігання іконок для повного меню" + +#~ msgid "Studios" +#~ msgstr "Студія" + +#~ msgid "Su" +#~ msgstr "Неділя" + +#~ msgid "Sunny" +#~ msgstr "Сонячно" + +#~ msgid "Swap Manager" +#~ msgstr "Управління файлом підкачки" + +#~ msgid "Swap file created" +#~ msgstr "Файл підкачки створений" + +#~ msgid "Swap file removed" +#~ msgstr "Файл підкачки видалений" + +#~ msgid "Swap file started" +#~ msgstr "Файл підкачки запущено" + +#~ msgid "Swap file stoped" +#~ msgstr "Файл підкачки зупинений" + +#~ msgid "Swap off" +#~ msgstr "Відключити файл підкачки" + +#~ msgid "Swap on" +#~ msgstr "Включити файл підкачки" + +#~ msgid "Swap on %s off (%s)" +#~ msgstr "Відключити файл підкачки на %s (%s)" + +#~ msgid "Swap on %s on (%s)" +#~ msgstr "Включити файл підкачки на %s (%s)" + +#~ msgid "Swap on USB/HDD" +#~ msgstr "Управління файлом підкачки" + +#~ msgid "Swap:" +#~ msgstr "Підкачка:" + +#~ msgid "Sweden" +#~ msgstr "Швеція" + +#~ msgid "Switch newcamd.list with remote conrol" +#~ msgstr "Ручне перемикання newcamd.list" + +#~ msgid "Switch next channel" +#~ msgstr "Переключити на наступний канал" + +#~ msgid "Switch wicardd.conf with remote conrol" +#~ msgstr "Ручне перемикання wiccard.conf" + +#~ msgid "Switcher" +#~ msgstr "Перемикач" + +#~ msgid "Switzerland" +#~ msgstr "Швейцарія" + +#~ msgid "Synchronization NTP" +#~ msgstr "Синхронізація часу" + +#~ msgid "Synchronization NTP time" +#~ msgstr "Синхронізація часу через інтернет" + +#~ msgid "Synchronization Now" +#~ msgstr "Синхронізую" + +#~ msgid "Synchronization activated" +#~ msgstr "Синхронізація увімкнена" + +#~ msgid "Synchronization ntp every 30 min,60 min,120 min, 240 min and Now" +#~ msgstr "Синхронізація часу відразу і кожні 30, 60, 120, 240 хв." + +#~ msgid "Synchronized" +#~ msgstr "Синхронізовано" + +#~ msgid "System Info" +#~ msgstr "Системна інформація" + +#~ msgid "System Tools" +#~ msgstr "Системні утиліти" + +#~ msgid "System info" +#~ msgstr "Системна інформація" + +#~ msgid "TMBD Details" +#~ msgstr "TMBD пошук" + +#~ msgid "" +#~ "TMBD Details Plugin\n" +#~ "Developer: Nikolasi,vlamo,Dima73\n" +#~ "(c)2012" +#~ msgstr "" +#~ "Плагін пошуку TMBD\n" +#~ "Розробники: Nikolasi,vlamo,Dima73\n" +#~ "(c)2012" + +#~ msgid "TMBD Details:current event" +#~ msgstr "TMBD пошук: поточну подію" + +#~ msgid "TMBD Plugin" +#~ msgstr "плагін TMBD" + +#~ msgid "Taiwan" +#~ msgstr "Тайвань" + +#~ msgid "Tanzania" +#~ msgstr "Танзанія" + +#~ msgid "Text editing" +#~ msgstr "Редагувати текст" + +#~ msgid "Th" +#~ msgstr "Чт" + +#~ msgid "Thailand" +#~ msgstr "Тайланд" + +#~ msgid "The Internet Movie Database" +#~ msgstr "База даних фільмів в інтернеті" + +# message23 +#~ msgid "The content of the folder is:" +#~ msgstr "Зміст папки:" + +#~ msgid "The frame around the posters in the full menu" +#~ msgstr "Рамка навколо постерів в повному меню" + +# message21-7 +#~ msgid "The program will exit now." +#~ msgstr "Програма буде закрита." + +#~ msgid "" +#~ "The selected settings are installed\n" +#~ "\n" +#~ "GUI needs a reboot to apply the changes.\n" +#~ "Do you want to restart the GUI now? " +#~ msgstr "" +#~ "Вибрані налаштування встановлені\n" +#~ "\n" +#~ "GUI потребує перезавантаження, щоб застосувати зміни. \n" +#~ "Ви хочете перезавантажити GUI зараз? " + +# message29 +#~ msgid "There COULD be a problem with restoring this back-up because the size of the back-up comes close to the maximum size. This is a limitation of the bootloader not of the back-up or the BackupSuite." +#~ msgstr "Може виникнути проблема з відновленням цієї резервної копії, тому що її розмір наближається до максимального можливого розміру. Це обмеження завантажувача, а не прошивки або BackupSuite.ggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg" + +# message21-1 +#~ msgid "There is NO valid USB-stick found, so I've got nothing to do." +#~ msgstr "Виявлено НЕ підтримуваний USB-накопичувач, тому резервну копію не можна зробити." + +# message17-1 +#~ msgid "There is a valid USB-flashdrive detected in one of the USB-ports, therefore an extra copy of the back-up image will now be copied to that USB-flashdrive." +#~ msgstr "Виявлено підтримуваний USB-накопичувач в одному з USB-портів, тому додаткова резервна копія прошивки буде скопійована на цей USB-накопичувач." + +# message17-2 +#~ msgid "This only takes about 20 seconds....." +#~ msgstr "Це займе близько 20 секунд ....." + +#~ msgid "Thundershowers" +#~ msgstr "Грози" + +#~ msgid "Thunderstorms" +#~ msgstr "Гроза" + +#~ msgid "Time for inactivity (min):" +#~ msgstr "Час для бездіяльності(мин) " + +#~ msgid "Time in standby for power off (min):" +#~ msgstr "Час в режимі очікування для відключення живлення (хв)" + +# message24 +#~ msgid "Time required for this process: " +#~ msgstr "Час, необхідний для цієї процедури: " + +#~ msgid "Timer Editor" +#~ msgstr "Редагування Таймеру " + +# message21-3 +#~ msgid "To back-up directly to the USB-stick, the USB-stick MUST contain a file with the name:" +#~ msgstr "Для прямого копіювання на USB-флешку, вона повинна містити файл з ім'ям:" + +# message12-1 +#~ msgid "To restore the image:" +#~ msgstr "Для відновлення прошивки:" + +#~ msgid "Tomorrow" +#~ msgstr "Завтра" + +#~ msgid "Tools" +#~ msgstr "Утиліти" + +#~ msgid "Tornado" +#~ msgstr "Торнадо" + +#~ msgid "Total posters found: %s" +#~ msgstr "Знайдених постерів: %s" + +#~ msgid "Total results: %s" +#~ msgstr "Всього результатів: %s" + +#~ msgid "Total: %s Kb Free: %s Kb" +#~ msgstr "Всього: %s Kb Вільно: %s Kb" + +#~ msgid "Tropical storm" +#~ msgstr "Тропічний шторм" + +#~ msgid "Tu" +#~ msgstr "Вт" + +#~ msgid "Tuning step size" +#~ msgstr "Розмір кроку повороту" + +#~ msgid "Turkey" +#~ msgstr "Турція" + +# message10 +#~ msgid "USB Image created in: " +#~ msgstr "USB прошивка створена в: " + +#~ msgid "Ukraine" +#~ msgstr "Україна" + +#~ msgid "Ukrainian" +#~ msgstr "Українська" + +#~ msgid "UnInstall" +#~ msgstr "Видалення" + +#~ msgid "UnInstall Ipk" +#~ msgstr "Видалення .ipk пакетів" + +#~ msgid "UnLoaded %s.ko" +#~ msgstr "%s.ko не завантажений" + +#~ msgid "UnMount" +#~ msgstr "Демонтувати" + +#~ msgid "UnMount USB" +#~ msgstr "Демонтувати USB" + +#~ msgid "UnSuccessfull" +#~ msgstr "Не виконано" + +#~ msgid "Unable to determine the current version" +#~ msgstr "Неможливо визначити поточну версію" + +#~ msgid "Uncommitted DiSEqC command" +#~ msgstr "Команда перемикання DiSEqC" + +#~ msgid "United Arab Emirates" +#~ msgstr "Об'єднані Арабські Емірати" + +#~ msgid "United Kingdom" +#~ msgstr "Великобританія" + +#~ msgid "United States" +#~ msgstr "США" + +#~ msgid "Universal Switcher" +#~ msgstr "Універсальний перемикач" + +#~ msgid "Unknown error!" +#~ msgstr "Невідома помилка!" + +#~ msgid "Unmount manager" +#~ msgstr "Демонтування USB" + +#~ msgid "Unmount usb devices" +#~ msgstr "Вилучення пристроїв USB" + +#~ msgid "Unmounted %s" +#~ msgstr "Демонтовано %s" + +#~ msgid "Unmounted %s Unsucessfull" +#~ msgstr "Демонтування USB не виконане" + +#~ msgid "Update Now" +#~ msgstr "Синхронізувати " + +#~ msgid "Update failed! Manually download the archive from the site and install it yourself!" +#~ msgstr "Не вдалося виконати оновлення! Вручну скачайте архів з сайту і встановіть його самостійно!" + +#~ msgid "Update plugin" +#~ msgstr "оновлення плагіну" + +#~ msgid "Update preview: %s updates aviable" +#~ msgstr "Оновлення: %s доступне" + +#~ msgid "Update to plugin list" +#~ msgstr "Оновлення списку плагінів" + +#~ msgid "Updating..." +#~ msgstr "Оновлення..." + +#~ msgid "Use the configured key(s) on your remote control to switch between aspect ratio modes. Usual functionality of these keys is not available as long as this plugin is enabled!" +#~ msgstr "" +#~ "Використовуйте клавішу налаштовану на пульті ДУ для\n" +#~ "перемик. між режимами співвідн. сторін. Звичайна\n" +#~ "функц клавіши не доступна, поки цей плагін увімкнено!" + +#~ msgid "User Rating" +#~ msgstr "Рейтинг" + +#~ msgid "User Scripts" +#~ msgstr "Скрипти користувача " + +#~ msgid "Uzbekistan" +#~ msgstr "Узбекістан" + +#~ msgid "Video output mode Mode" +#~ msgstr "Режим" + +#~ msgid "Vietnam" +#~ msgstr "В'єтнам" + +#~ msgid "View" +#~ msgstr "Переглянути" + +#~ msgid "View System Settings (/etc/enigma2/settings)" +#~ msgstr "Перегляд Установок системи (/etc/enigma2/settings)" + +#~ msgid "View or Remove Crashlog files" +#~ msgstr "Переглядач файлів крешлога" + +#~ msgid "View settings" +#~ msgstr "Перегляд установок" + +#~ msgid "Votes" +#~ msgstr "Проголосували" + +#~ msgid "W, %3.02f m/s" +#~ msgstr "Зх, %3.02f м/с" + +#~ msgid "WNW, %3.02f m/s" +#~ msgstr "Зх,ПнЗх, %3.02f м/с" + +#~ msgid "WSW, %3.02f m/s" +#~ msgstr "Зх,ПвЗх, %3.02f м/с" + +#~ msgid "We" +#~ msgstr "Ср" + +#~ msgid "What exactly do you want to delete?" +#~ msgstr "Що саме ви хочете видалити?" + +#~ msgid "Wicardd config filename" +#~ msgstr "Wicardd ім'я основного файлу конфігурації" + +#~ msgid "Wicardd config switcher" +#~ msgstr "Wicardd перемикач" + +#~ msgid "Wicardd configfile extention" +#~ msgstr "Wicardd розширення файлу конфігурації" + +#~ msgid "Wicardd configpath" +#~ msgstr "Wicardd щлях до конфігурації" + +#~ msgid "Windy" +#~ msgstr "Вітер" + +#~ msgid "Write event to new eit-file:\n" +#~ msgstr "Створюємо опис в eit-файл:\n" + +#~ msgid "Write to new meta-file for:\n" +#~ msgstr "Створено новий meta-файл для:\n" + +#~ msgid "YT Trailer-List" +#~ msgstr "Список трейлерів" + +#~ msgid "YT-Trailer Setup" +#~ msgstr "Налаштування YT-Trailer" + +#~ msgid "YT-Trailer in Event View" +#~ msgstr "YT-Trailer в перегляді деталей події" + +#~ msgid "YT-Trailer in Single/Multi EPG" +#~ msgstr "YT-Trailer в одиночному/мульти EPG" + +#~ msgid "" +#~ "YTTrailer is not installed.\n" +#~ "Install YTTrailer now?" +#~ msgstr "" +#~ "YTTrailer не встановлений.\n" +#~ "Хочете встановити YTTrailer тепер?" + +#~ msgid "YTTrailer is not installed. Please install YTTrailer." +#~ msgstr "YTTrailer не встановлений. Встановіть плагін YTTrailer." + +#~ msgid "YWeather.py not found" +#~ msgstr "YWeather.py не знайдено" + +#~ msgid "Yes,but write new meta-file" +#~ msgstr "Так, але створити новий meta-файл" + +#~ msgid "Your current version: %s" +#~ msgstr "Ваша версія: %s" + +#~ msgid "Your receiver will shutdown due to inactivity." +#~ msgstr "Ваш ресивер буде вимкнений через бездіяльність." + +#~ msgid "Your receiver will shutdown due to the sleeptimer." +#~ msgstr "Ваш ресивер буде переведений в Режим Очікування за таймером сну." + +#~ msgid "Zap back to service before satfinder?" +#~ msgstr "Переключити на попередній сервіс?" + +#~ msgid "Zram swap is on" +#~ msgstr "Zram файл підкачки включений" + +#~ msgid "add tabs - %s" +#~ msgstr "Додати завдання - %s" + +# message11 +#~ msgid "and there is made an extra copy in: " +#~ msgstr "У цьому місці розташована додаткова резервна копію: " + +#~ msgid "ask user" +#~ msgstr "запитати користувача" + +# message16 +#~ msgid "available " +#~ msgstr "доступний " + +# message21-4 +#~ msgid "backupstick or" +#~ msgstr "backupstick або" + +# message21-5 +#~ msgid "backupstick.txt" +#~ msgstr "backupstick.txt" + +#~ msgid "bad day %s" +#~ msgstr "Некоректно введений день місяця %s" + +#~ msgid "bad format" +#~ msgstr "некоректний формат" + +#~ msgid "bad hour %s" +#~ msgstr "некоректно введені годинник %s" + +#~ msgid "bad minute %s" +#~ msgstr "некоректно введені хвилини %s" + +#~ msgid "bad month %s" +#~ msgstr "некоректно введений місяць %s" + +#~ msgid "bad year %s" +#~ msgstr "некоректно введений рік %s" + +#~ msgid "button label, 'next screen'Next" +#~ msgstr "Далі" + +#~ msgid "button label, 'previous screen'Prev" +#~ msgstr "Попередній" + +#~ msgid "choice now/next event" +#~ msgstr "вибір зараз/далі" + +#~ msgid "clear /tmp" +#~ msgstr "Очистка /tmp" + +#~ msgid "close" +#~ msgstr "закрити" + +#~ msgid "config menu and extentionsmenu foe E-Panel items" +#~ msgstr "Конфігурація меню і розширеного меню E-Панелі" + +#~ msgid "configuration is saved" +#~ msgstr "Конфігурація збережена" + +#~ msgid "configure automated power off / standby" +#~ msgstr "налаштувати автоматичне відключення живлення/очікування" + +#~ msgid "dowmload extensions from feed" +#~ msgstr "Завантаження розширень з сервера іміджу" + +#~ msgid "download extensions" +#~ msgstr "Завантаження розширень" + +#~ msgid "download from: %s" +#~ msgstr "Завантажити з: %s" + +#~ msgid "ecm.info Viewer" +#~ msgstr "Переглядач ecm.info" + +#~ msgid "ecm.info file viewer" +#~ msgstr "Перегляд файла ecm.info" + +#~ msgid "ecm.info viewer" +#~ msgstr "Переглядач ecm.info" + +#~ msgid "epg.dat reloaded" +#~ msgstr "epg.dat перазавантажений" + +#~ msgid "epg.dat restored" +#~ msgstr "epg.dat відновлений" + +#~ msgid "epg.dat saved" +#~ msgstr "epg.dat збережений" + +#~ msgid "install & forced install ipk, bh.tgz, tar.gz, nab.tgz from /tmp" +#~ msgstr "Інсталяція і примусова інсталяція ipk, bh.tgz, tar.gz, nab.tgz из /tmp" + +#~ msgid "install & remove ipk, tar.gz, bh.tgz packets" +#~ msgstr "Інсталяція і видалення .ipk, .tar.gz, .bh.tgz, .nab.tgz пакетов" + +#~ msgid "install extensions" +#~ msgstr "Інсталяція додатків" + +#~ msgid "install extensions from feed" +#~ msgstr "Інсталяція додатків з сервера іміджу" + +#~ msgid "install/uninstall local .ipk & .tar.gz files from /tmp" +#~ msgstr "Локальна інсталяція і видалення пакетів из /tmp" + +#~ msgid "ipk packets remover" +#~ msgstr "Інсталяція .ipk пакетів" + +#~ msgid "ipk packets, bh.tgz, tar.gz, nab.tgz installer" +#~ msgstr "Інсталяція ipk bh.tgz, tar.gz, nab.tgz" + +#~ msgid "kernel modules manager, manage swap, ftp, samba, unmount USB" +#~ msgstr "Управління драйверами, Ftp, Samba, Cron, Swap, демонтування USB" + +#~ msgid "kinopoisk.ru (only russian language)" +#~ msgstr "kinopoisk.ru (тільки російська мова)" + +#~ msgid "load & unload kernel modules" +#~ msgstr "Завантаження і видалення драйверів" + +#~ msgid "login" +#~ msgstr "Логін" + +#~ msgid "new list style with poster" +#~ msgstr "новий вид списку з постером" + +#~ msgid "new time not available" +#~ msgstr "новий час не введено" + +#~ msgid "newcamd.list Editor" +#~ msgstr "Редактор newcamd.list " + +#~ msgid "newcamd.list Switcher" +#~ msgstr "Перемикач newcamd.list " + +#~ msgid "newcamd.list Switcher: - %s" +#~ msgstr "Перемикач newcamd.list: - %s" + +#~ msgid "newcamd.list editor" +#~ msgstr "Редактор newcamd.list" + +#~ msgid "no user rating yet" +#~ msgstr "Немає рейтингу" + +#~ msgid "no votes" +#~ msgstr "немає голосування" + +#~ msgid "not confirmed" +#~ msgstr "Немає підтвердження" + +# message05 +#~ msgid "not found, the backup process will be aborted!" +#~ msgstr "не знайдений, процес резервного копіювання буде перерваний" + +#~ msgid "now/next: 'next' event label Next" +#~ msgstr "Далі" + +#~ msgid "now/next: 'now' event label Now" +#~ msgstr "Тепер" + +#~ msgid "only current event" +#~ msgstr "тільки поточну подію" + +#~ msgid "only current profile" +#~ msgstr "тільки поточний профіль" + +#~ msgid "open plugin VCS" +#~ msgstr "відкрити плагін VCS" + +#~ msgid "press Close for Exit" +#~ msgstr "натисніть Закрити для виходу" + +#~ msgid "press OK to enable/disable server" +#~ msgstr "Натисніть OK для включення / відключення сервера" + +#~ msgid "quick newcamd.list editor" +#~ msgstr "Швидке редагування newcamd.list" + +#~ msgid "reFresh" +#~ msgstr "Оновити" + +#~ msgid "red " +#~ msgstr "Червоний" + +#~ msgid "reload epg.dat failed" +#~ msgstr "Помилка перезавантаження epg.dat" + +#~ msgid "remove & advanced remove ipk packets" +#~ msgstr "Видалення і просунуте видалення .ipk пакетов" + +#~ msgid "remove *.ipk & *.tar.gz & *.bh.tgz & *.nab.tgz from /tmp" +#~ msgstr "Очищення /tmp, видалення *.ipk, *.tar.gz, *.bh.tgz и *.nab.tgz" + +#~ msgid "remove *.ipk & *.tar.gz from /tmp" +#~ msgstr "Видалення *.ipk и *.tar.gz пакетов из /tmp" + +#~ msgid "running" +#~ msgstr "Працює" + +#~ msgid "search in TMBD" +#~ msgstr "пошук в TMBDтттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттттТМДБ кінець" + +#~ msgid "server: %s" +#~ msgstr "Сервер: %s" + +#~ msgid "set of utilities for enigma2" +#~ msgstr "набір утиліт для enigma2" + +# start HDD version +#~ msgid "sh '/usr/lib/enigma2/python/Plugins/Extensions/BackupSuite-HDD/backup.sh' en_EN" +#~ msgstr "sh '/usr/lib/enigma2/python/Plugins/Extensions/BackupSuite-HDD/backup.sh' ru_RU" + +# start USB version +#~ msgid "sh '/usr/lib/enigma2/python/Plugins/Extensions/BackupSuite-USB/backup.sh' en_EN" +#~ msgstr "sh '/usr/lib/enigma2/python/Plugins/Extensions/BackupSuite-USB/backup.sh' ru_RU" + +#~ msgid "show VCS..." +#~ msgstr "відкрити VCS..." + +#~ msgid "simple tools for Pli image" +#~ msgstr "Панель керування, утиліти, інструменти" + +#~ msgid "size: %s %s" +#~ msgstr "Розмір: %s %s" + +#~ msgid "stopping" +#~ msgstr "Зупинений" + +#~ msgid "switch config files mgcamd, oscam, wicardd, cccam with remote conrol" +#~ msgstr "Перемикач конфігурацій mgcamd, oscam, wicardd, cccam" + +#~ msgid "system info (free, dh -f)" +#~ msgstr "Системна інформація (free, dh -f)" + +#~ msgid "tuner is not supported" +#~ msgstr "Невідома" + +#~ msgid "update Softcam.key from internet" +#~ msgstr "Завантаження SoftCam.Key з інтернету" + +#~ msgid "update time from internet" +#~ msgstr "Синхронізувати час через інтернет" + +#~ msgid "view & remove crashlog files" +#~ msgstr "Перегляд і видалення файлів крешлога" + +#~ msgid "view system settings" +#~ msgstr "перегляд установок системи" + +#~ msgid "yahoo! weather plugin config" +#~ msgstr "погода yahoo! конфігуратор" + +#~ msgid "ПппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппПОГОДА" +#~ msgstr "ппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппппп" diff --git a/po/xml2po.py b/po/xml2po.py new file mode 100644 index 0000000..7eeebc2 --- /dev/null +++ b/po/xml2po.py @@ -0,0 +1,67 @@ +#!/usr/bin/python +import sys +import os +import string +import re +from xml.sax import make_parser +from xml.sax.handler import ContentHandler, property_lexical_handler +try: + from _xmlplus.sax.saxlib import LexicalHandler + no_comments = False +except ImportError: + class LexicalHandler: + pass + no_comments = True + +class parseXML(ContentHandler, LexicalHandler): + def __init__(self, attrlist): + self.isPointsElement, self.isReboundsElement = 0, 0 + self.attrlist = attrlist + self.last_comment = None + self.ishex = re.compile('#[0-9a-fA-F]+\Z') + + def comment(self, comment): + if "TRANSLATORS:" in comment: + self.last_comment = comment + + def startElement(self, name, attrs): + for x in ["text", "title", "value", "caption", "description"]: + try: + k = str(attrs[x]) + if k.strip() != "" and not self.ishex.match(k): + attrlist.add((attrs[x], self.last_comment)) + self.last_comment = None + except KeyError: + pass + +parser = make_parser() + +attrlist = set() + +contentHandler = parseXML(attrlist) +parser.setContentHandler(contentHandler) +if not no_comments: + parser.setProperty(property_lexical_handler, contentHandler) + +for arg in sys.argv[1:]: + if os.path.isdir(arg): + for file in os.listdir(arg): + if (file.endswith(".xml")): + parser.parse(os.path.join(arg, file)) + else: + parser.parse(arg) + + attrlist = list(attrlist) + attrlist.sort(key=lambda a: a[0]) + + for (k,c) in attrlist: + print + print '#: ' + arg + string.replace(k, "\\n", "\"\n\"") + if c: + for l in c.split('\n'): + print "#. ", l + print 'msgid "' + str(k) + '"' + print 'msgstr ""' + + attrlist = set() diff --git a/skin.py b/skin.py new file mode 100644 index 0000000..4e1e7d4 --- /dev/null +++ b/skin.py @@ -0,0 +1,955 @@ +from Tools.Profile import profile +profile("LOAD:ElementTree") +import xml.etree.cElementTree +import os + +profile("LOAD:enigma_skin") +from enigma import eSize, ePoint, eRect, gFont, eWindow, eLabel, ePixmap, eWindowStyleManager, \ + addFont, gRGB, eWindowStyleSkinned, getDesktop +from Components.config import ConfigSubsection, ConfigText, config +from Components.Converter.Converter import Converter +from Components.Sources.Source import Source, ObsoleteSource +from Tools.Directories import resolveFilename, SCOPE_SKIN, SCOPE_SKIN_IMAGE, SCOPE_FONTS, SCOPE_CURRENT_SKIN, SCOPE_CONFIG, fileExists +from Tools.Import import my_import +from Tools.LoadPixmap import LoadPixmap +from Components.RcModel import rc_model + +colorNames = {} +# Predefined fonts, typically used in built-in screens and for components like +# the movie list and so. +fonts = { + "Body": ("Regular", 18, 22, 16), + "ChoiceList": ("Regular", 20, 24, 18), +} + +def dump(x, i=0): + print " " * i + str(x) + try: + for n in x.childNodes: + dump(n, i + 1) + except: + None + +class SkinError(Exception): + def __init__(self, message): + self.msg = message + + def __str__(self): + return "{%s}: %s. Please contact the skin's author!" % (config.skin.primary_skin.value, self.msg) + +dom_skins = [ ] + +def addSkin(name, scope = SCOPE_SKIN): + # read the skin + filename = resolveFilename(scope, name) + if fileExists(filename): + mpath = os.path.dirname(filename) + "/" + dom_skins.append((mpath, xml.etree.cElementTree.parse(filename).getroot())) + return True + return False + +# get own skin_user_skinname.xml file, if exist +def skin_user_skinname(): + name = "skin_user_" + config.skin.primary_skin.value[:config.skin.primary_skin.value.rfind('/')] + ".xml" + filename = resolveFilename(SCOPE_CONFIG, name) + if fileExists(filename): + return name + return None + +# we do our best to always select the "right" value +# skins are loaded in order of priority: skin with +# highest priority is loaded last, usually the user-provided +# skin. + +# currently, loadSingleSkinData (colors, bordersets etc.) +# are applied one-after-each, in order of ascending priority. +# the dom_skin will keep all screens in descending priority, +# so the first screen found will be used. + +# example: loadSkin("nemesis_greenline/skin.xml") +config.skin = ConfigSubsection() +DEFAULT_SKIN = "PLi-HD/skin.xml" +# on SD hardware, PLi-HD will not be available +if not fileExists(resolveFilename(SCOPE_SKIN, DEFAULT_SKIN)): + # in that case, fallback to Magic (which is an SD skin) + DEFAULT_SKIN = "GigabluePax/skin.xml" +config.skin.primary_skin = ConfigText(default=DEFAULT_SKIN) + +profile("LoadSkin") +try: + name = skin_user_skinname() + if name is not None: + addSkin(name, SCOPE_CONFIG) + else: + addSkin('skin_user.xml', SCOPE_CONFIG) +except (SkinError, IOError, AssertionError), err: + print "not loading user skin: ", err + +# some boxes lie about their dimensions +addSkin('skin_box.xml') +# add optional discrete second infobar +addSkin('skin_second_infobar.xml') +# Only one of these is present, compliments of AM_CONDITIONAL +display_skin_id = 1 +addSkin('skin_display.xml') +if addSkin('skin_display96.xml'): + # Color OLED + display_skin_id = 2 +addSkin('skin_text.xml') + +addSkin('skin_subtitles.xml') + +try: + if not addSkin(config.skin.primary_skin.value): + raise SkinError, "primary skin not found" +except Exception, err: + print "SKIN ERROR:", err + skin = DEFAULT_SKIN + if config.skin.primary_skin.value == skin: + skin = 'skin.xml' + print "defaulting to standard skin...", skin + config.skin.primary_skin.value = skin + addSkin(skin) + del skin + +addSkin('skin_default.xml') +profile("LoadSkinDefaultDone") + +def parseCoordinate(s, e, size=0, font=None): + s = s.strip() + if s == "center": + val = (e - size)/2 + elif s == '*': + return None + else: + if s[0] is 'e': + val = e + s = s[1:] + elif s[0] is 'c': + val = e/2 + s = s[1:] + else: + val = 0; + if s: + if s[-1] is '%': + val += e * int(s[:-1]) / 100 + elif s[-1] is 'w': + val += fonts[font][3] * int(s[:-1]); + elif s[-1] is 'h': + val += fonts[font][2] * int(s[:-1]); + else: + val += int(s) + if val < 0: + val = 0 + return val + + +def getParentSize(object, desktop): + size = eSize() + if object: + parent = object.getParent() + # For some widgets (e.g. ScrollLabel) the skin attributes are applied to + # a child widget, instead of to the widget itself. In that case, the parent + # we have here is not the real parent, but it is the main widget. + # We have to go one level higher to get the actual parent. + # We can detect this because the 'parent' will not have a size yet + # (the main widget's size will be calculated internally, as soon as the child + # widget has parsed the skin attributes) + if parent and parent.size().isEmpty(): + parent = parent.getParent() + if parent: + size = parent.size() + elif desktop: + #widget has no parent, use desktop size instead for relative coordinates + size = desktop.size() + return size + +def parsePosition(s, scale, object = None, desktop = None, size = None): + x, y = s.split(',') + parentsize = eSize() + if object and (x[0] in ('c', 'e') or y[0] in ('c', 'e')): + parentsize = getParentSize(object, desktop) + xval = parseCoordinate(x, parentsize.width(), size and size.width()) + yval = parseCoordinate(y, parentsize.height(), size and size.height()) + return ePoint(xval * scale[0][0] / scale[0][1], yval * scale[1][0] / scale[1][1]) + +def parseSize(s, scale, object = None, desktop = None): + x, y = s.split(',') + parentsize = eSize() + if object and (x[0] in ('c', 'e') or y[0] in ('c', 'e')): + parentsize = getParentSize(object, desktop) + xval = parseCoordinate(x, parentsize.width()) + yval = parseCoordinate(y, parentsize.height()) + return eSize(xval * scale[0][0] / scale[0][1], yval * scale[1][0] / scale[1][1]) + +def parseFont(s, scale): + try: + f = fonts[s] + name = f[0] + size = f[1] + except: + name, size = s.split(';') + return gFont(name, int(size) * scale[0][0] / scale[0][1]) + +def parseColor(s): + if s[0] != '#': + try: + return colorNames[s] + except: + raise SkinError("color '%s' must be #aarrggbb or valid named color" % (s)) + return gRGB(int(s[1:], 0x10)) + +def collectAttributes(skinAttributes, node, context, skin_path_prefix=None, ignore=(), filenames=frozenset(("pixmap", "pointer", "seek_pointer", "backgroundPixmap", "selectionPixmap", "sliderPixmap", "scrollbarbackgroundPixmap"))): + # walk all attributes + size = None + pos = None + font = None + for attrib, value in node.items(): + if attrib not in ignore: + if attrib in filenames: + value = resolveFilename(SCOPE_SKIN_IMAGE, value, path_prefix=skin_path_prefix) + # Bit of a hack this, really. When a window has a flag (e.g. wfNoBorder) + # it needs to be set at least before the size is set, in order for the + # window dimensions to be calculated correctly in all situations. + # If wfNoBorder is applied after the size has been set, the window will fail to clear the title area. + # Similar situation for a scrollbar in a listbox; when the scrollbar setting is applied after + # the size, a scrollbar will not be shown until the selection moves for the first time + if attrib == 'size': + size = value.encode("utf-8") + elif attrib == 'position': + pos = value.encode("utf-8") + elif attrib == 'font': + font = value.encode("utf-8") + skinAttributes.append((attrib, font)) + else: + skinAttributes.append((attrib, value.encode("utf-8"))) + if pos is not None: + pos, size = context.parse(pos, size, font) + skinAttributes.append(('position', pos)) + if size is not None: + skinAttributes.append(('size', size)) + +def morphRcImagePath(value): + if rc_model.rcIsDefault() is False: + if value == '/usr/share/enigma2/skin_default/rc.png' or value == '/usr/share/enigma2/skin_default/rcold.png': + value = rc_model.getRcImg() + return value + +def loadPixmap(path, desktop): + option = path.find("#") + if option != -1: + path = path[:option] + ptr = LoadPixmap(morphRcImagePath(path), desktop) + if ptr is None: + raise SkinError("pixmap file %s not found!" % (path)) + return ptr + +class AttributeParser: + def __init__(self, guiObject, desktop, scale = ((1,1),(1,1))): + self.guiObject = guiObject + self.desktop = desktop + self.scale = scale + def applyOne(self, attrib, value): + try: + getattr(self, attrib)(value) + except AttributeError: + print "[Skin] Attribute not implemented:", attrib, "value:", value + except SkinError, ex: + print "[Skin] Error:", ex + def applyAll(self, attrs): + for attrib, value in attrs: + try: + getattr(self, attrib)(value) + except AttributeError: + print "[Skin] Attribute not implemented:", attrib, "value:", value + except SkinError, ex: + print "[Skin] Error:", ex + def conditional(self, value): + pass + def position(self, value): + if isinstance(value, tuple): + self.guiObject.move(ePoint(*value)) + else: + self.guiObject.move(parsePosition(value, self.scale, self.guiObject, self.desktop, self.guiObject.csize())) + def size(self, value): + if isinstance(value, tuple): + self.guiObject.resize(eSize(*value)) + else: + self.guiObject.resize(parseSize(value, self.scale, self.guiObject, self.desktop)) + def title(self, value): + self.guiObject.setTitle(_(value)) + def text(self, value): + self.guiObject.setText(_(value)) + def font(self, value): + self.guiObject.setFont(parseFont(value, self.scale)) + def zPosition(self, value): + self.guiObject.setZPosition(int(value)) + def itemHeight(self, value): + self.guiObject.setItemHeight(int(value)) + def pixmap(self, value): + ptr = loadPixmap(value, self.desktop) + self.guiObject.setPixmap(ptr) + def backgroundPixmap(self, value): + ptr = loadPixmap(value, self.desktop) + self.guiObject.setBackgroundPicture(ptr) + def selectionPixmap(self, value): + ptr = loadPixmap(value, self.desktop) + self.guiObject.setSelectionPicture(ptr) + def sliderPixmap(self, value): + ptr = loadPixmap(value, self.desktop) + self.guiObject.setSliderPicture(ptr) + def scrollbarbackgroundPixmap(self, value): + ptr = loadPixmap(value, self.desktop) + self.guiObject.setScrollbarBackgroundPicture(ptr) + def alphatest(self, value): + self.guiObject.setAlphatest( + { "on": 1, + "off": 0, + "blend": 2, + }[value]) + def scale(self, value): + self.guiObject.setScale(1) + def orientation(self, value): # used by eSlider + try: + self.guiObject.setOrientation(* + { "orVertical": (self.guiObject.orVertical, False), + "orTopToBottom": (self.guiObject.orVertical, False), + "orBottomToTop": (self.guiObject.orVertical, True), + "orHorizontal": (self.guiObject.orHorizontal, False), + "orLeftToRight": (self.guiObject.orHorizontal, False), + "orRightToLeft": (self.guiObject.orHorizontal, True), + }[value]) + except KeyError: + print "oprientation must be either orVertical or orHorizontal!" + def valign(self, value): + try: + self.guiObject.setVAlign( + { "top": self.guiObject.alignTop, + "center": self.guiObject.alignCenter, + "bottom": self.guiObject.alignBottom + }[value]) + except KeyError: + print "valign must be either top, center or bottom!" + def halign(self, value): + try: + self.guiObject.setHAlign( + { "left": self.guiObject.alignLeft, + "center": self.guiObject.alignCenter, + "right": self.guiObject.alignRight, + "block": self.guiObject.alignBlock + }[value]) + except KeyError: + print "halign must be either left, center, right or block!" + def textOffset(self, value): + x, y = value.split(',') + self.guiObject.setTextOffset(ePoint(int(x) * self.scale[0][0] / self.scale[0][1], int(y) * self.scale[1][0] / self.scale[1][1])) + def flags(self, value): + flags = value.split(',') + for f in flags: + try: + fv = eWindow.__dict__[f] + self.guiObject.setFlag(fv) + except KeyError: + print "illegal flag %s!" % f + def backgroundColor(self, value): + self.guiObject.setBackgroundColor(parseColor(value)) + def backgroundColorSelected(self, value): + self.guiObject.setBackgroundColorSelected(parseColor(value)) + def foregroundColor(self, value): + self.guiObject.setForegroundColor(parseColor(value)) + def foregroundColorSelected(self, value): + self.guiObject.setForegroundColorSelected(parseColor(value)) + def shadowColor(self, value): + self.guiObject.setShadowColor(parseColor(value)) + def selectionDisabled(self, value): + self.guiObject.setSelectionEnable(0) + def transparent(self, value): + self.guiObject.setTransparent(int(value)) + def borderColor(self, value): + self.guiObject.setBorderColor(parseColor(value)) + def borderWidth(self, value): + self.guiObject.setBorderWidth(int(value)) + def scrollbarMode(self, value): + self.guiObject.setScrollbarMode(getattr(self.guiObject, value)) + # { "showOnDemand": self.guiObject.showOnDemand, + # "showAlways": self.guiObject.showAlways, + # "showNever": self.guiObject.showNever, + # "showLeft": self.guiObject.showLeft + # }[value]) + def enableWrapAround(self, value): + self.guiObject.setWrapAround(True) + def itemHeight(self, value): + self.guiObject.setItemHeight(int(value)) + def pointer(self, value): + (name, pos) = value.split(':') + pos = parsePosition(pos, self.scale) + ptr = loadPixmap(name, self.desktop) + self.guiObject.setPointer(0, ptr, pos) + def seek_pointer(self, value): + (name, pos) = value.split(':') + pos = parsePosition(pos, self.scale) + ptr = loadPixmap(name, self.desktop) + self.guiObject.setPointer(1, ptr, pos) + def shadowOffset(self, value): + self.guiObject.setShadowOffset(parsePosition(value, self.scale)) + def noWrap(self, value): + self.guiObject.setNoWrap(1) + +def applySingleAttribute(guiObject, desktop, attrib, value, scale = ((1,1),(1,1))): + # Someone still using applySingleAttribute? + AttributeParser(guiObject, desktop, scale).applyOne(attrib, value) + +def applyAllAttributes(guiObject, desktop, attributes, scale): + AttributeParser(guiObject, desktop, scale).applyAll(attributes) + +def loadSingleSkinData(desktop, skin, path_prefix): + """loads skin data like colors, windowstyle etc.""" + assert skin.tag == "skin", "root element in skin must be 'skin'!" + for c in skin.findall("output"): + id = c.attrib.get('id') + if id: + id = int(id) + else: + id = 0 + if id == 0: # framebuffer + for res in c.findall("resolution"): + get_attr = res.attrib.get + xres = get_attr("xres") + if xres: + xres = int(xres) + else: + xres = 720 + yres = get_attr("yres") + if yres: + yres = int(yres) + else: + yres = 576 + bpp = get_attr("bpp") + if bpp: + bpp = int(bpp) + else: + bpp = 32 + #print "Resolution:", xres,yres,bpp + from enigma import gMainDC + gMainDC.getInstance().setResolution(xres, yres) + desktop.resize(eSize(xres, yres)) + if bpp != 32: + # load palette (not yet implemented) + pass + + for skininclude in skin.findall("include"): + filename = skininclude.attrib.get("filename") + if filename: + skinfile = resolveFilename(SCOPE_CURRENT_SKIN, filename, path_prefix=path_prefix) + if not fileExists(skinfile): + skinfile = resolveFilename(SCOPE_SKIN_IMAGE, filename, path_prefix=path_prefix) + if fileExists(skinfile): + print "[SKIN] loading include:", skinfile + loadSkin(skinfile) + + for c in skin.findall("colors"): + for color in c.findall("color"): + get_attr = color.attrib.get + name = get_attr("name") + color = get_attr("value") + if name and color: + colorNames[name] = parseColor(color) + #print "Color:", name, color + else: + raise SkinError("need color and name, got %s %s" % (name, color)) + + for c in skin.findall("fonts"): + for font in c.findall("font"): + get_attr = font.attrib.get + filename = get_attr("filename", "<NONAME>") + name = get_attr("name", "Regular") + scale = get_attr("scale") + if scale: + scale = int(scale) + else: + scale = 100 + is_replacement = get_attr("replacement") and True or False + render = get_attr("render") + if render: + render = int(render) + else: + render = 0 + resolved_font = resolveFilename(SCOPE_FONTS, filename, path_prefix=path_prefix) + if not fileExists(resolved_font): #when font is not available look at current skin path + skin_path = resolveFilename(SCOPE_CURRENT_SKIN, filename) + if fileExists(skin_path): + resolved_font = skin_path + addFont(resolved_font, name, scale, is_replacement, render) + #print "Font: ", resolved_font, name, scale, is_replacement + for alias in c.findall("alias"): + get = alias.attrib.get + try: + name = get("name") + font = get("font") + size = int(get("size")) + height = int(get("height", size)) # to be calculated some day + width = int(get("width", size)) + global fonts + fonts[name] = (font, size, height, width) + except Exception, ex: + print "[SKIN] bad font alias", ex + + + for c in skin.findall("subtitles"): + from enigma import eWidget, eSubtitleWidget + scale = ((1,1),(1,1)) + for substyle in c.findall("sub"): + get_attr = substyle.attrib.get + font = parseFont(get_attr("font"), scale) + col = get_attr("foregroundColor") + if col: + foregroundColor = parseColor(col) + haveColor = 1 + else: + foregroundColor = gRGB(0xFFFFFF) + haveColor = 0 + col = get_attr("borderColor") + if col: + borderColor = parseColor(col) + else: + borderColor = gRGB(0) + borderwidth = get_attr("borderWidth") + if borderwidth is None: + # default: use a subtitle border + borderWidth = 3 + else: + borderWidth = int(borderwidth) + face = eSubtitleWidget.__dict__[get_attr("name")] + eSubtitleWidget.setFontStyle(face, font, haveColor, foregroundColor, borderColor, borderWidth) + + for windowstyle in skin.findall("windowstyle"): + style = eWindowStyleSkinned() + style_id = windowstyle.attrib.get("id") + if style_id: + style_id = int(style_id) + else: + style_id = 0 + # defaults + font = gFont("Regular", 20) + offset = eSize(20, 5) + for title in windowstyle.findall("title"): + get_attr = title.attrib.get + offset = parseSize(get_attr("offset"), ((1,1),(1,1))) + font = parseFont(get_attr("font"), ((1,1),(1,1))) + + style.setTitleFont(font); + style.setTitleOffset(offset) + #print " ", font, offset + for borderset in windowstyle.findall("borderset"): + bsName = str(borderset.attrib.get("name")) + for pixmap in borderset.findall("pixmap"): + get_attr = pixmap.attrib.get + bpName = get_attr("pos") + filename = get_attr("filename") + if filename and bpName: + png = loadPixmap(resolveFilename(SCOPE_SKIN_IMAGE, filename, path_prefix=path_prefix), desktop) + style.setPixmap(eWindowStyleSkinned.__dict__[bsName], eWindowStyleSkinned.__dict__[bpName], png) + #print " borderset:", bpName, filename + for color in windowstyle.findall("color"): + get_attr = color.attrib.get + colorType = get_attr("name") + color = parseColor(get_attr("color")) + try: + style.setColor(eWindowStyleSkinned.__dict__["col" + colorType], color) + except: + raise SkinError("Unknown color %s" % (colorType)) + #pass + #print " color:", type, color + x = eWindowStyleManager.getInstance() + x.setStyle(style_id, style) + for margin in skin.findall("margin"): + style_id = margin.attrib.get("id") + if style_id: + style_id = int(style_id) + else: + style_id = 0 + r = eRect(0,0,0,0) + v = margin.attrib.get("left") + if v: + r.setLeft(int(v)) + v = margin.attrib.get("top") + if v: + r.setTop(int(v)) + v = margin.attrib.get("right") + if v: + r.setRight(int(v)) + v = margin.attrib.get("bottom") + if v: + r.setBottom(int(v)) + # the "desktop" parameter is hardcoded to the UI screen, so we must ask + # for the one that this actually applies to. + getDesktop(style_id).setMargins(r) + +dom_screens = {} + +def loadSkin(name, scope = SCOPE_SKIN): + # Now a utility for plugins to add skin data to the screens + global dom_screens, display_skin_id + filename = resolveFilename(scope, name) + if fileExists(filename): + path = os.path.dirname(filename) + "/" + for elem in xml.etree.cElementTree.parse(filename).getroot(): + if elem.tag == 'screen': + name = elem.attrib.get('name', None) + if name: + sid = elem.attrib.get('id', None) + if sid and (sid != display_skin_id): + # not for this display + elem.clear() + continue + if name in dom_screens: + print "loadSkin: Screen already defined elsewhere:", name + elem.clear() + else: + dom_screens[name] = (elem, path) + else: + elem.clear() + else: + elem.clear() + +def loadSkinData(desktop): + # Kinda hackish, but this is called once by mytest.py + global dom_skins + skins = dom_skins[:] + skins.reverse() + for (path, dom_skin) in skins: + loadSingleSkinData(desktop, dom_skin, path) + for elem in dom_skin: + if elem.tag == 'screen': + name = elem.attrib.get('name', None) + if name: + sid = elem.attrib.get('id', None) + if sid and (sid != display_skin_id): + # not for this display + elem.clear() + continue + if name in dom_screens: + # Kill old versions, save memory + dom_screens[name][0].clear() + dom_screens[name] = (elem, path) + else: + # without name, it's useless! + elem.clear() + else: + # non-screen element, no need for it any longer + elem.clear() + # no longer needed, we know where the screens are now. + del dom_skins + +class additionalWidget: + pass + +# Class that makes a tuple look like something else. Some plugins just assume +# that size is a string and try to parse it. This class makes that work. +class SizeTuple(tuple): + def split(self, *args): + return (str(self[0]), str(self[1])) + def strip(self, *args): + return '%s,%s' % self + def __str__(self): + return '%s,%s' % self + +class SkinContext: + def __init__(self, parent=None, pos=None, size=None, font=None): + if parent is not None: + if pos is not None: + pos, size = parent.parse(pos, size, font) + self.x, self.y = pos + self.w, self.h = size + else: + self.x = None + self.y = None + self.w = None + self.h = None + def __str__(self): + return "Context (%s,%s)+(%s,%s) " % (self.x, self.y, self.w, self.h) + def parse(self, pos, size, font): + if pos == "fill": + pos = (self.x, self.y) + size = (self.w, self.h) + self.w = 0 + self.h = 0 + else: + w,h = size.split(',') + w = parseCoordinate(w, self.w, 0, font) + h = parseCoordinate(h, self.h, 0, font) + if pos == "bottom": + pos = (self.x, self.y + self.h - h) + size = (self.w, h) + self.h -= h + elif pos == "top": + pos = (self.x, self.y) + size = (self.w, h) + self.h -= h + self.y += h + elif pos == "left": + pos = (self.x, self.y) + size = (w, self.h) + self.x += w + self.w -= w + elif pos == "right": + pos = (self.x + self.w - w, self.y) + size = (w, self.h) + self.w -= w + else: + size = (w, h) + pos = pos.split(',') + pos = (self.x + parseCoordinate(pos[0], self.w, size[0], font), self.y + parseCoordinate(pos[1], self.h, size[1], font)) + return (SizeTuple(pos), SizeTuple(size)) + +class SkinContextStack(SkinContext): + # A context that stacks things instead of aligning them + def parse(self, pos, size, font): + if pos == "fill": + pos = (self.x, self.y) + size = (self.w, self.h) + else: + w,h = size.split(',') + w = parseCoordinate(w, self.w, 0, font) + h = parseCoordinate(h, self.h, 0, font) + if pos == "bottom": + pos = (self.x, self.y + self.h - h) + size = (self.w, h) + elif pos == "top": + pos = (self.x, self.y) + size = (self.w, h) + elif pos == "left": + pos = (self.x, self.y) + size = (w, self.h) + elif pos == "right": + pos = (self.x + self.w - w, self.y) + size = (w, self.h) + else: + size = (w, h) + pos = pos.split(',') + pos = (self.x + parseCoordinate(pos[0], self.w, size[0], font), self.y + parseCoordinate(pos[1], self.h, size[1], font)) + return (SizeTuple(pos), SizeTuple(size)) + +def readSkin(screen, skin, names, desktop): + if not isinstance(names, list): + names = [names] + + # try all skins, first existing one have priority + global dom_screens + for n in names: + myscreen, path = dom_screens.get(n, (None,None)) + if myscreen is not None: + # use this name for debug output + name = n + break + else: + name = "<embedded-in-'%s'>" % screen.__class__.__name__ + + # otherwise try embedded skin + if myscreen is None: + myscreen = getattr(screen, "parsedSkin", None) + + # try uncompiled embedded skin + if myscreen is None and getattr(screen, "skin", None): + skin = screen.skin + print "[SKIN] Parsing embedded skin", name + if (isinstance(skin, tuple)): + for s in skin: + candidate = xml.etree.cElementTree.fromstring(s) + if candidate.tag == 'screen': + sid = candidate.attrib.get('id', None) + if (not sid) or (int(sid) == display_skin_id): + myscreen = candidate + break; + else: + print "[SKIN] Hey, no suitable screen!" + else: + myscreen = xml.etree.cElementTree.fromstring(skin) + if myscreen: + screen.parsedSkin = myscreen + if myscreen is None: + print "[SKIN] No skin to read..." + myscreen = screen.parsedSkin = xml.etree.cElementTree.fromstring("<screen></screen>") + + screen.skinAttributes = [ ] + skin_path_prefix = getattr(screen, "skin_path", path) + + context = SkinContextStack() + s = desktop.bounds() + context.x = s.left() + context.y = s.top() + context.w = s.width() + context.h = s.height() + del s + collectAttributes(screen.skinAttributes, myscreen, context, skin_path_prefix, ignore=("name",)) + context = SkinContext(context, myscreen.attrib.get('position'), myscreen.attrib.get('size')) + + screen.additionalWidgets = [ ] + screen.renderer = [ ] + visited_components = set() + + # now walk all widgets and stuff + def process_none(widget, context): + pass + + def process_widget(widget, context): + get_attr = widget.attrib.get + # ok, we either have 1:1-mapped widgets ('old style'), or 1:n-mapped + # widgets (source->renderer). + wname = get_attr('name') + wsource = get_attr('source') + if wname is None and wsource is None: + print "widget has no name and no source!" + return + if wname: + #print "Widget name=", wname + visited_components.add(wname) + # get corresponding 'gui' object + try: + attributes = screen[wname].skinAttributes = [ ] + except: + raise SkinError("component with name '" + wname + "' was not found in skin of screen '" + name + "'!") + # assert screen[wname] is not Source + collectAttributes(attributes, widget, context, skin_path_prefix, ignore=('name',)) + elif wsource: + # get corresponding source + #print "Widget source=", wsource + while True: # until we found a non-obsolete source + # parse our current "wsource", which might specifiy a "related screen" before the dot, + # for example to reference a parent, global or session-global screen. + scr = screen + # resolve all path components + path = wsource.split('.') + while len(path) > 1: + scr = screen.getRelatedScreen(path[0]) + if scr is None: + #print wsource + #print name + raise SkinError("specified related screen '" + wsource + "' was not found in screen '" + name + "'!") + path = path[1:] + # resolve the source. + source = scr.get(path[0]) + if isinstance(source, ObsoleteSource): + # however, if we found an "obsolete source", issue warning, and resolve the real source. + print "WARNING: SKIN '%s' USES OBSOLETE SOURCE '%s', USE '%s' INSTEAD!" % (name, wsource, source.new_source) + print "OBSOLETE SOURCE WILL BE REMOVED %s, PLEASE UPDATE!" % (source.removal_date) + if source.description: + print source.description + wsource = source.new_source + else: + # otherwise, use that source. + break + + if source is None: + raise SkinError("source '" + wsource + "' was not found in screen '" + name + "'!") + + wrender = get_attr('render') + if not wrender: + raise SkinError("you must define a renderer with render= for source '%s'" % (wsource)) + for converter in widget.findall("convert"): + ctype = converter.get('type') + assert ctype, "'convert'-tag needs a 'type'-attribute" + #print "Converter:", ctype + try: + parms = converter.text.strip() + except: + parms = "" + #print "Params:", parms + converter_class = my_import('.'.join(("Components", "Converter", ctype))).__dict__.get(ctype) + c = None + for i in source.downstream_elements: + if isinstance(i, converter_class) and i.converter_arguments == parms: + c = i + if c is None: + c = converter_class(parms) + c.connect(source) + source = c + + renderer_class = my_import('.'.join(("Components", "Renderer", wrender))).__dict__.get(wrender) + renderer = renderer_class() # instantiate renderer + renderer.connect(source) # connect to source + attributes = renderer.skinAttributes = [ ] + collectAttributes(attributes, widget, context, skin_path_prefix, ignore=('render', 'source')) + screen.renderer.append(renderer) + + def process_applet(widget, context): + try: + codeText = widget.text.strip() + widgetType = widget.attrib.get('type') + code = compile(codeText, "skin applet", "exec") + except Exception, ex: + raise SkinError("applet failed to compile: " + str(ex)) + if widgetType == "onLayoutFinish": + screen.onLayoutFinish.append(code) + else: + raise SkinError("applet type '%s' unknown!" % widgetType) + + def process_elabel(widget, context): + w = additionalWidget() + w.widget = eLabel + w.skinAttributes = [ ] + collectAttributes(w.skinAttributes, widget, context, skin_path_prefix, ignore=('name',)) + screen.additionalWidgets.append(w) + + def process_epixmap(widget, context): + w = additionalWidget() + w.widget = ePixmap + w.skinAttributes = [ ] + collectAttributes(w.skinAttributes, widget, context, skin_path_prefix, ignore=('name',)) + screen.additionalWidgets.append(w) + + def process_screen(widget, context): + for w in widget.getchildren(): + conditional = w.attrib.get('conditional') + if conditional and not [i for i in conditional.split(",") if i in screen.keys()]: + continue + p = processors.get(w.tag, process_none) + try: + p(w, context) + except SkinError, e: + print "[Skin] SKIN ERROR in screen '%s' widget '%s':" % (name, w.tag), e + + def process_panel(widget, context): + n = widget.attrib.get('name') + if n: + try: + s = dom_screens[n] + except KeyError: + print "[SKIN] Unable to find screen '%s' referred in screen '%s'" % (n, name) + else: + process_screen(s[0], context) + layout = widget.attrib.get('layout') + if layout == 'stack': + cc = SkinContextStack + else: + cc = SkinContext + try: + c = cc(context, widget.attrib.get('position'), widget.attrib.get('size'), widget.attrib.get('font')) + except Exception, ex: + raise SkinError("Failed to create skincontext (%s,%s,%s) in %s: %s" % (widget.attrib.get('position'), widget.attrib.get('size'), widget.attrib.get('font'), context, ex) ) + process_screen(widget, c) + + processors = { + None: process_none, + "widget": process_widget, + "applet": process_applet, + "eLabel": process_elabel, + "ePixmap": process_epixmap, + "panel": process_panel + } + + try: + context.x = 0 # reset offsets, all components are relative to screen + context.y = 0 # coordinates. + process_screen(myscreen, context) + except Exception, e: + print "[Skin] SKIN ERROR in %s:" % name, e + + from Components.GUIComponent import GUIComponent + nonvisited_components = [x for x in set(screen.keys()) - visited_components if isinstance(x, GUIComponent)] + assert not nonvisited_components, "the following components in %s don't have a skin entry: %s" % (name, ', '.join(nonvisited_components)) + # This may look pointless, but it unbinds 'screen' from the nested scope. A better + # solution is to avoid the nested scope above and use the context object to pass + # things around. + screen = None + visited_components = None diff --git a/stamp-h.in b/stamp-h.in new file mode 100644 index 0000000..9788f70 --- /dev/null +++ b/stamp-h.in @@ -0,0 +1 @@ +timestamp diff --git a/tests/FakeNotifications.py b/tests/FakeNotifications.py new file mode 100644 index 0000000..d289e09 --- /dev/null +++ b/tests/FakeNotifications.py @@ -0,0 +1,2 @@ + +pass diff --git a/tests/README b/tests/README new file mode 100644 index 0000000..63f8369 --- /dev/null +++ b/tests/README @@ -0,0 +1,42 @@ +enigma2 test environment + + +The goal is to test as much components of enigma2 with as less dependencies +as possible. So we create an environment which emulates "all" runtime +dependencies with fixed value. + +Only python is tested, all c++ stuff is re-implemented in python (usually as +dummy functions). + +When testing components, they should be kept seperated. If this is not +possible, you can try overriding imports, for example you can replace +Notification support with dummy notifications to prevent the whole GUI from +loading... + +If even that doesn't help, the component is bad, and should be fixed. Please +try to seperate changes to the test system from changes from components. +Please don't add specific test functionality into the components. If they +are not remote controllable, the component is badly writen anyway. + +Usually, all dummy functions are implemented to not fail. They emit special +events to signal what has been done. These results will be compared to the +expected test results, so they should be consistent with each run. If you +want to test failures, you need to install "fault hooks", where you can +inject faults. + +For example: + +The timer test initializes + - the "real" navigation stuff, + - the real record config, + - the real parental control, + - inserts a fake null-notification handler, + +then it installs a timer, and runs the enigma mainloop (enigma.run()). +Core events happening during the duration of the test (like "record prepare, +record start, record stop") will be recorded, and compared after the test. + +(compare is not yet implemented) + +Starting these tests must currently done with +PYTHONPATH=.:..:../lib/python/ python test_timer.py diff --git a/tests/enigma.py b/tests/enigma.py new file mode 100644 index 0000000..16031a0 --- /dev/null +++ b/tests/enigma.py @@ -0,0 +1,364 @@ +# fake-enigma + +import fake_time + +class slot: + def __init__(self): + self.list = [ ] + + def get(self): + return self.list + + def __call__(self): + for x in self.list: + x() + +timers = set() + +import time + +from events import eventfnc + +##################### ENIGMA BASE + +class eTimer: + def __init__(self): + self.timeout = slot() + self.next_activation = None + print "NEW TIMER" + + def start(self, msec, singleshot = False): + print "start timer", msec + self.next_activation = time.time() + msec / 1000.0 + self.msec = msec + self.singleshot = singleshot + timers.add(self) + + def stop(self): + timers.remove(self) + + def __repr__(self): + return "<eTimer timeout=%s next_activation=%s singleshot=%s>" % (repr(self.timeout), repr(self.next_activation), repr(self.singleshot)) + + def do(self): + if self.singleshot: + self.stop() + self.next_activation += self.msec / 1000.0 + self.timeout() + +def runIteration(): + running_timers = list(timers) + assert len(running_timers), "no running timers, so nothing will ever happen!" + running_timers.sort(key=lambda x: x.next_activation) + + print "running:", running_timers + + next_timer = running_timers[0] + + now = time.time() + delay = next_timer.next_activation - now + + if delay > 0: + time.sleep(delay) + now += delay + + while len(running_timers) and running_timers[0].next_activation <= now: + running_timers[0].do() + running_timers = running_timers[1:] + +stopped = False + +def stop(): + global stopped + stopped = True + +def run(duration = 1000): + stoptimer = eTimer() + stoptimer.start(duration * 1000.0) + stoptimer.callback.append(stop) + while not stopped: + runIteration() + + +##################### ENIGMA GUI + +eSize = None +ePoint = None +gFont = None +eWindow = None +eLabel = None +ePixmap = None +eWindowStyleManager = None +loadPNG = None +addFont = None +gRGB = None +eWindowStyleSkinned = None +eButton = None +eListboxPythonStringContent = None +eListbox = None +eSubtitleWidget = None + +class eEPGCache: + @classmethod + def getInstance(self): + return self.instance + + instance = None + + def __init__(self): + eEPGCache.instance = self + + def lookupEventTime(self, ref, query): + return None + +eEPGCache() + +getBestPlayableServiceReference = None + +class pNavigation: + def __init__(self): + self.m_event = slot() + self.m_record_event = slot() + + @eventfnc + def recordService(self, service): + return iRecordableService(service) + + @eventfnc + def stopRecordService(self, service): + service.stop() + + @eventfnc + def playService(self, service): + return None + + def __repr__(self): + return "pNavigation" + +eRCInput = None +getPrevAsciiCode = None + +class eServiceReference: + + isDirectory=1 + mustDescent=2 + canDescent=4 + flagDirectory=isDirectory|mustDescent|canDescent + shouldSort=8 + hasSortKey=16 + sort1=32 + isMarker=64 + isGroup=128 + + def __init__(self, ref): + self.ref = ref + self.flags = 0 + + def toString(self): + return self.ref + + def __repr__(self): + return self.toString() + +class iRecordableService: + def __init__(self, ref): + self.ref = ref + + @eventfnc + def prepare(self, filename, begin, end, event_id): + return 0 + + @eventfnc + def start(self): + return 0 + + @eventfnc + def stop(self): + return 0 + + def __repr__(self): + return "iRecordableService(%s)" % repr(self.ref) + +quitMainloop = None + +class eAVSwitch: + @classmethod + def getInstance(self): + return self.instance + + instance = None + + def __init__(self): + eAVSwitch.instance = self + + def setColorFormat(self, value): + print "[eAVSwitch] color format set to %d" % value + + def setAspectRatio(self, value): + print "[eAVSwitch] aspect ratio set to %d" % value + + def setWSS(self, value): + print "[eAVSwitch] wss set to %d" % value + + def setSlowblank(self, value): + print "[eAVSwitch] wss set to %d" % value + + def setVideomode(self, value): + print "[eAVSwitch] wss set to %d" % value + + def setInput(self, value): + print "[eAVSwitch] wss set to %d" % value + +eAVSwitch() + +eDVBVolumecontrol = None + +class eRFmod: + @classmethod + def getInstance(self): + return self.instance + + instance = None + + def __init__(self): + eRFmod.instance = self + + def setFunction(self, value): + print "[eRFmod] set function to %d" % value + + def setTestmode(self, value): + print "[eRFmod] set testmode to %d" % value + + def setSoundFunction(self, value): + print "[eRFmod] set sound function to %d" % value + + def setSoundCarrier(self, value): + print "[eRFmod] set sound carrier to %d" % value + + def setChannel(self, value): + print "[eRFmod] set channel to %d" % value + + def setFinetune(self, value): + print "[eRFmod] set finetune to %d" % value + +eRFmod() + + +class eDBoxLCD: + @classmethod + def getInstance(self): + return self.instance + + instance = None + + def __init__(self): + eDBoxLCD.instance = self + + def setLCDBrightness(self, value): + print "[eDBoxLCD] set brightness to %d" % value + + def setLCDContrast(self, value): + print "[eDBoxLCD] set contrast to %d" % value + + def setInverted(self, value): + print "[eDBoxLCD] set inverted to %d" % value + +eDBoxLCD(); + +Misc_Options = None + +class eServiceCenter: + @classmethod + def getInstance(self): + return self.instance + + instance = None + + def __init__(self): + eServiceCenter.instance = self + + def info(self, ref): + return None + +eServiceCenter() + +##################### ENIGMA CHROOT + +print "import directories" +import Tools.Directories +print "done" + +chroot="." + +for (x, (y, z)) in Tools.Directories.defaultPaths.items(): + Tools.Directories.defaultPaths[x] = (chroot + y, z) + +Tools.Directories.defaultPaths[Tools.Directories.SCOPE_SKIN] = ("../data/", Tools.Directories.PATH_DONTCREATE) +Tools.Directories.defaultPaths[Tools.Directories.SCOPE_CONFIG] = ("/etc/enigma2/", Tools.Directories.PATH_DONTCREATE) + +##################### ENIGMA CONFIG + +print "import config" +import Components.config +print "done" + +my_config = [ +"config.skin.primary_skin=None\n" +] + +Components.config.config.unpickle(my_config) + +##################### ENIGMA ACTIONS + +class eActionMap: + def __init__(self): + pass + + +##################### ENIGMA STARTUP: + +def init_nav(): + print "init nav" + import Navigation, NavigationInstance + NavigationInstance.instance = Navigation.Navigation() + +def init_record_config(): + print "init recording" + import Components.RecordingConfig + Components.RecordingConfig.InitRecordingConfig() + +def init_parental_control(): + print "init parental" + from Components.ParentalControl import InitParentalControl + InitParentalControl() + +def init_all(): + # this is stuff from mytest.py + init_nav() + + init_record_config() + init_parental_control() + + import Components.InputDevice + Components.InputDevice.InitInputDevices() + + import Components.AVSwitch + Components.AVSwitch.InitAVSwitch() + + import Components.UsageConfig + Components.UsageConfig.InitUsageConfig() + + import Components.Network + Components.Network.InitNetwork() + + import Components.Lcd + Components.Lcd.InitLcd() + + import Components.SetupDevices + Components.SetupDevices.InitSetupDevices() + + import Components.RFmod + Components.RFmod.InitRFmod() + + import Screens.Ci + Screens.Ci.InitCiConfig() diff --git a/tests/events.py b/tests/events.py new file mode 100644 index 0000000..da082d4 --- /dev/null +++ b/tests/events.py @@ -0,0 +1,70 @@ +import time +import tests + +recorded_events = [ ] + +def event(self, name, args, kwargs): + global recorded_events + print "*EVENT*", time.time(), self, name, args, kwargs + recorded_events.append((time.time(), self, name, args, kwargs)) + +def eventfnc(f): + name = f.__name__ + def wrapper(self, *args, **kwargs): + event(self, name, args, kwargs) + return f(self, *args, **kwargs) + return wrapper + +def get_events(): + global recorded_events + r = recorded_events + recorded_events = [ ] + return r + +def start_log(): + global base_time + base_time = time.time() + +def end_log(test_name): + global base_time + + results = "" + + for (t, self, method, args, kwargs) in get_events(): + results += "%s T+%f: %s::%s(%s, *%s, *%s)\n" % (time.ctime(t), t - base_time, str(self.__class__), method, self, args, kwargs) + + expected = None + + try: + f = open(test_name + ".results", "rb") + expected = f.read() + f.close() + except: + print "NO TEST RESULT FOUND, creating new" + f = open(test_name + ".new_results", "wb") + f.write(results) + f.close() + + print results + + if expected is not None: + print "expected:" + if expected != results: + open(test_name + ".bogus_results", "wb").write(results) + raise tests.TestError("test data does not match") + else: + print "test compared ok" + else: + print "no test data to compare with." + +def log(fnc, base_time = 0, test_name = "test", *args, **kwargs): + import fake_time + fake_time.setTime(base_time) + + start_log() + try: + fnc(*args, **kwargs) + event(None, "test_completed", [], {"test_name": test_name}) + except tests.TestError,c: + event(None, "test_failed", [], {"test_name": test_name, "reason": str(c)}) + end_log(test_name) diff --git a/tests/fake_time.py b/tests/fake_time.py new file mode 100644 index 0000000..3c77ded --- /dev/null +++ b/tests/fake_time.py @@ -0,0 +1,31 @@ +import time + +real_time = None +time_offset = 0 + +def setRealtime(): + global real_time + real_time = time.time + +def setIdealtime(): + global real_time + real_time = lambda: 0 + +def setTime(now): + global time_offset + time_offset = real_time() - now + +setIdealtime() +setTime(0) + +def my_time(): + return real_time() - time_offset + +time.time = my_time + +def my_sleep(sleep): + global time_offset + time_offset -= sleep + print "(faking %f seconds)" % sleep + +time.sleep = my_sleep diff --git a/tests/hdd/movie/dummy b/tests/hdd/movie/dummy new file mode 100644 index 0000000..e69de29 diff --git a/tests/test_timer.py b/tests/test_timer.py new file mode 100644 index 0000000..7234727 --- /dev/null +++ b/tests/test_timer.py @@ -0,0 +1,96 @@ +import enigma +import sys +import time + +import tests + +#enigma.reset() +def test_timer(repeat = 0, timer_start = 3600, timer_length = 1000, sim_length = 86400 * 7): + + import NavigationInstance + + at = time.time() + + t = NavigationInstance.instance.RecordTimer + print t + print "old mwt:", t.MaxWaitTime + t.MaxWaitTime = 86400 * 1000 + + # hack: + NavigationInstance.instance.SleepTimer.MaxWaitTime = 86400 * 1000 + + t.processed_timers = [ ] + t.timer_list = [ ] + + + # generate a timer to test + import xml.etree.cElementTree + import RecordTimer + + timer = RecordTimer.createTimer(xml.etree.cElementTree.fromstring( + """ + <timer + begin="%d" + end="%d" + serviceref="1:0:1:6DD2:44D:1:C00000:0:0:0:" + repeated="%d" + name="Test Event Name" + description="Test Event Description" + afterevent="nothing" + eit="56422" + disabled="0" + justplay="0"> + </timer>""" % (at + timer_start, at + timer_start + timer_length, repeat) + )) + + t.record(timer) + + # run virtual environment + enigma.run(sim_length) + + print "done." + + timers = t.processed_timers + t.timer_list + + print "start: %s" % (time.ctime(at + 10)) + + assert len(timers) == 1 + + for t in timers: + print "begin=%d, end=%d, repeated=%d, state=%d" % (t.begin - at, t.end - at, t.repeated, t.state) + print "begin: %s" % (time.ctime(t.begin)) + print "end: %s" % (time.ctime(t.end)) + + # if repeat, check if the calculated repeated time of day matches the initial time of day + if repeat: + t_initial = time.localtime(at + timer_start) + t_repeated = time.localtime(timers[0].begin) + print t_initial + print t_repeated + + if t_initial[3:6] != t_repeated[3:6]: + raise tests.TestError("repeated timer time of day does not match") + +import FakeNotifications +#sys.modules["Tools.Notifications"] = FakeNotifications +#sys.modules["Tools.NumericalTextInput.NumericalTextInput"] = FakeNotifications + +# required stuff for timer (we try to keep this minimal) +enigma.init_nav() +enigma.init_record_config() +enigma.init_parental_control() + + +from events import log + +import calendar + + +import os +# we are operating in CET/CEST +os.environ['TZ'] = 'CET' +time.tzset() + +#log(test_timer, test_name = "test_timer_repeating", base_time = calendar.timegm((2007, 3, 1, 12, 0, 0)), repeat=0x7f, sim_length = 86400 * 7) +log(test_timer, test_name = "test_timer_repeating_dst_skip", base_time = calendar.timegm((2007, 03, 20, 0, 0, 0)), timer_start = 3600, repeat=0x7f, sim_length = 86400 * 7) +#log(test_timer, test_name = "test_timer_repeating_dst_start", base_time = calendar.timegm((2007, 03, 20, 0, 0, 0)), timer_start = 10000, repeat=0x7f, sim_length = 86400 * 7) diff --git a/tests/test_timer_repeating.results b/tests/test_timer_repeating.results new file mode 100644 index 0000000..f9ce751 --- /dev/null +++ b/tests/test_timer_repeating.results @@ -0,0 +1,36 @@ +Thu Mar 1 13:59:40 2007 T+3580.000000: enigma.pNavigation::recordService(pNavigation, *(1:0:1:6DD2:44D:1:C00000:0:0:0:,), *{}) +Thu Mar 1 13:59:40 2007 T+3580.000000: enigma.iRecordableService::prepare(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *('./hdd/movie/20070301 1400 - - Test Event Name.ts', 1172754000, 1172755001, 56422L), *{}) +Thu Mar 1 14:00:00 2007 T+3600.000000: enigma.iRecordableService::start(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Thu Mar 1 14:16:41 2007 T+4601.000000: enigma.pNavigation::stopRecordService(pNavigation, *(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:),), *{}) +Thu Mar 1 14:16:41 2007 T+4601.000000: enigma.iRecordableService::stop(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Fri Mar 2 13:59:40 2007 T+89980.000000: enigma.pNavigation::recordService(pNavigation, *(1:0:1:6DD2:44D:1:C00000:0:0:0:,), *{}) +Fri Mar 2 13:59:40 2007 T+89980.000000: enigma.iRecordableService::prepare(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *('./hdd/movie/20070302 1400 - - Test Event Name.ts', 1172840400, 1172841403, 56422L), *{}) +Fri Mar 2 14:00:00 2007 T+90000.000000: enigma.iRecordableService::start(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Fri Mar 2 14:16:43 2007 T+91003.000000: enigma.pNavigation::stopRecordService(pNavigation, *(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:),), *{}) +Fri Mar 2 14:16:43 2007 T+91003.000000: enigma.iRecordableService::stop(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Sat Mar 3 13:59:40 2007 T+176380.000000: enigma.pNavigation::recordService(pNavigation, *(1:0:1:6DD2:44D:1:C00000:0:0:0:,), *{}) +Sat Mar 3 13:59:40 2007 T+176380.000000: enigma.iRecordableService::prepare(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *('./hdd/movie/20070303 1400 - - Test Event Name.ts', 1172926800, 1172927805, 56422L), *{}) +Sat Mar 3 14:00:00 2007 T+176400.000000: enigma.iRecordableService::start(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Sat Mar 3 14:16:45 2007 T+177405.000000: enigma.pNavigation::stopRecordService(pNavigation, *(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:),), *{}) +Sat Mar 3 14:16:45 2007 T+177405.000000: enigma.iRecordableService::stop(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Sun Mar 4 13:59:40 2007 T+262780.000000: enigma.pNavigation::recordService(pNavigation, *(1:0:1:6DD2:44D:1:C00000:0:0:0:,), *{}) +Sun Mar 4 13:59:40 2007 T+262780.000000: enigma.iRecordableService::prepare(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *('./hdd/movie/20070304 1400 - - Test Event Name.ts', 1173013200, 1173014207, 56422L), *{}) +Sun Mar 4 14:00:00 2007 T+262800.000000: enigma.iRecordableService::start(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Sun Mar 4 14:16:47 2007 T+263807.000000: enigma.pNavigation::stopRecordService(pNavigation, *(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:),), *{}) +Sun Mar 4 14:16:47 2007 T+263807.000000: enigma.iRecordableService::stop(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Mon Mar 5 13:59:40 2007 T+349180.000000: enigma.pNavigation::recordService(pNavigation, *(1:0:1:6DD2:44D:1:C00000:0:0:0:,), *{}) +Mon Mar 5 13:59:40 2007 T+349180.000000: enigma.iRecordableService::prepare(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *('./hdd/movie/20070305 1400 - - Test Event Name.ts', 1173099600, 1173100609, 56422L), *{}) +Mon Mar 5 14:00:00 2007 T+349200.000000: enigma.iRecordableService::start(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Mon Mar 5 14:16:49 2007 T+350209.000000: enigma.pNavigation::stopRecordService(pNavigation, *(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:),), *{}) +Mon Mar 5 14:16:49 2007 T+350209.000000: enigma.iRecordableService::stop(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Tue Mar 6 13:59:40 2007 T+435580.000000: enigma.pNavigation::recordService(pNavigation, *(1:0:1:6DD2:44D:1:C00000:0:0:0:,), *{}) +Tue Mar 6 13:59:40 2007 T+435580.000000: enigma.iRecordableService::prepare(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *('./hdd/movie/20070306 1400 - - Test Event Name.ts', 1173186000, 1173187011, 56422L), *{}) +Tue Mar 6 14:00:00 2007 T+435600.000000: enigma.iRecordableService::start(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Tue Mar 6 14:16:51 2007 T+436611.000000: enigma.pNavigation::stopRecordService(pNavigation, *(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:),), *{}) +Tue Mar 6 14:16:51 2007 T+436611.000000: enigma.iRecordableService::stop(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Wed Mar 7 13:59:40 2007 T+521980.000000: enigma.pNavigation::recordService(pNavigation, *(1:0:1:6DD2:44D:1:C00000:0:0:0:,), *{}) +Wed Mar 7 13:59:40 2007 T+521980.000000: enigma.iRecordableService::prepare(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *('./hdd/movie/20070307 1400 - - Test Event Name.ts', 1173272400, 1173273413, 56422L), *{}) +Wed Mar 7 14:00:00 2007 T+522000.000000: enigma.iRecordableService::start(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Wed Mar 7 14:16:53 2007 T+523013.000000: enigma.pNavigation::stopRecordService(pNavigation, *(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:),), *{}) +Wed Mar 7 14:16:53 2007 T+523013.000000: enigma.iRecordableService::stop(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Thu Mar 8 13:00:00 2007 T+604800.000000: <type 'NoneType'>::test_completed(None, *[], *{'test_name': 'test_timer_repeating'}) diff --git a/tests/test_timer_repeating_dst_skip.results b/tests/test_timer_repeating_dst_skip.results new file mode 100644 index 0000000..bcd7014 --- /dev/null +++ b/tests/test_timer_repeating_dst_skip.results @@ -0,0 +1,34 @@ +Tue Mar 20 01:59:40 2007 T+3580.000000: enigma.pNavigation::recordService(pNavigation, *(1:0:1:6DD2:44D:1:C00000:0:0:0:,), *{}) +Tue Mar 20 01:59:40 2007 T+3580.000000: enigma.iRecordableService::prepare(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *('./hdd/movie/20070320 0200 - - Test Event Name.ts', 1174352400, 1174353401, 56422L), *{}) +Tue Mar 20 02:00:00 2007 T+3600.000000: enigma.iRecordableService::start(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Tue Mar 20 02:16:41 2007 T+4601.000000: enigma.pNavigation::stopRecordService(pNavigation, *(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:),), *{}) +Tue Mar 20 02:16:41 2007 T+4601.000000: enigma.iRecordableService::stop(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Wed Mar 21 01:59:40 2007 T+89980.000000: enigma.pNavigation::recordService(pNavigation, *(1:0:1:6DD2:44D:1:C00000:0:0:0:,), *{}) +Wed Mar 21 01:59:40 2007 T+89980.000000: enigma.iRecordableService::prepare(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *('./hdd/movie/20070321 0200 - - Test Event Name.ts', 1174438800, 1174439803, 56422L), *{}) +Wed Mar 21 02:00:00 2007 T+90000.000000: enigma.iRecordableService::start(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Wed Mar 21 02:16:43 2007 T+91003.000000: enigma.pNavigation::stopRecordService(pNavigation, *(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:),), *{}) +Wed Mar 21 02:16:43 2007 T+91003.000000: enigma.iRecordableService::stop(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Thu Mar 22 01:59:40 2007 T+176380.000000: enigma.pNavigation::recordService(pNavigation, *(1:0:1:6DD2:44D:1:C00000:0:0:0:,), *{}) +Thu Mar 22 01:59:40 2007 T+176380.000000: enigma.iRecordableService::prepare(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *('./hdd/movie/20070322 0200 - - Test Event Name.ts', 1174525200, 1174526205, 56422L), *{}) +Thu Mar 22 02:00:00 2007 T+176400.000000: enigma.iRecordableService::start(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Thu Mar 22 02:16:45 2007 T+177405.000000: enigma.pNavigation::stopRecordService(pNavigation, *(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:),), *{}) +Thu Mar 22 02:16:45 2007 T+177405.000000: enigma.iRecordableService::stop(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Fri Mar 23 01:59:40 2007 T+262780.000000: enigma.pNavigation::recordService(pNavigation, *(1:0:1:6DD2:44D:1:C00000:0:0:0:,), *{}) +Fri Mar 23 01:59:40 2007 T+262780.000000: enigma.iRecordableService::prepare(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *('./hdd/movie/20070323 0200 - - Test Event Name.ts', 1174611600, 1174612607, 56422L), *{}) +Fri Mar 23 02:00:00 2007 T+262800.000000: enigma.iRecordableService::start(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Fri Mar 23 02:16:47 2007 T+263807.000000: enigma.pNavigation::stopRecordService(pNavigation, *(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:),), *{}) +Fri Mar 23 02:16:47 2007 T+263807.000000: enigma.iRecordableService::stop(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Sat Mar 24 01:59:40 2007 T+349180.000000: enigma.pNavigation::recordService(pNavigation, *(1:0:1:6DD2:44D:1:C00000:0:0:0:,), *{}) +Sat Mar 24 01:59:40 2007 T+349180.000000: enigma.iRecordableService::prepare(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *('./hdd/movie/20070324 0200 - - Test Event Name.ts', 1174698000, 1174699009, 56422L), *{}) +Sat Mar 24 02:00:00 2007 T+349200.000000: enigma.iRecordableService::start(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Sat Mar 24 02:16:49 2007 T+350209.000000: enigma.pNavigation::stopRecordService(pNavigation, *(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:),), *{}) +Sat Mar 24 02:16:49 2007 T+350209.000000: enigma.iRecordableService::stop(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Mon Mar 26 01:59:40 2007 T+518380.000000: enigma.pNavigation::recordService(pNavigation, *(1:0:1:6DD2:44D:1:C00000:0:0:0:,), *{}) +Mon Mar 26 01:59:40 2007 T+518380.000000: enigma.iRecordableService::prepare(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *('./hdd/movie/20070326 0200 - - Test Event Name.ts', 1174867200, 1174868211, 56422L), *{}) +Mon Mar 26 02:00:00 2007 T+518400.000000: enigma.iRecordableService::start(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Mon Mar 26 02:16:51 2007 T+519411.000000: enigma.pNavigation::stopRecordService(pNavigation, *(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:),), *{}) +Mon Mar 26 02:16:51 2007 T+519411.000000: enigma.iRecordableService::stop(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Tue Mar 27 01:59:40 2007 T+604780.000000: enigma.pNavigation::recordService(pNavigation, *(1:0:1:6DD2:44D:1:C00000:0:0:0:,), *{}) +Tue Mar 27 01:59:40 2007 T+604780.000000: enigma.iRecordableService::prepare(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *('./hdd/movie/20070327 0200 - - Test Event Name.ts', 1174953600, 1174954613, 56422L), *{}) +Tue Mar 27 02:00:00 2007 T+604800.000000: enigma.iRecordableService::start(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Tue Mar 27 02:00:00 2007 T+604800.000000: <type 'NoneType'>::test_completed(None, *[], *{'test_name': 'test_timer_repeating_dst_skip'}) diff --git a/tests/test_timer_repeating_dst_start.results b/tests/test_timer_repeating_dst_start.results new file mode 100644 index 0000000..80e3e2d --- /dev/null +++ b/tests/test_timer_repeating_dst_start.results @@ -0,0 +1,36 @@ +Tue Mar 20 03:46:20 2007 T+9980.000000: enigma.pNavigation::recordService(pNavigation, *(1:0:1:6DD2:44D:1:C00000:0:0:0:,), *{}) +Tue Mar 20 03:46:20 2007 T+9980.000000: enigma.iRecordableService::prepare(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *('./hdd/movie/20070320 0346 - - Test Event Name.ts', 1174358800, 1174359801, 56422L), *{}) +Tue Mar 20 03:46:40 2007 T+10000.000000: enigma.iRecordableService::start(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Tue Mar 20 04:03:21 2007 T+11001.000000: enigma.pNavigation::stopRecordService(pNavigation, *(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:),), *{}) +Tue Mar 20 04:03:21 2007 T+11001.000000: enigma.iRecordableService::stop(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Wed Mar 21 03:46:20 2007 T+96380.000000: enigma.pNavigation::recordService(pNavigation, *(1:0:1:6DD2:44D:1:C00000:0:0:0:,), *{}) +Wed Mar 21 03:46:20 2007 T+96380.000000: enigma.iRecordableService::prepare(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *('./hdd/movie/20070321 0346 - - Test Event Name.ts', 1174445200, 1174446203, 56422L), *{}) +Wed Mar 21 03:46:40 2007 T+96400.000000: enigma.iRecordableService::start(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Wed Mar 21 04:03:23 2007 T+97403.000000: enigma.pNavigation::stopRecordService(pNavigation, *(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:),), *{}) +Wed Mar 21 04:03:23 2007 T+97403.000000: enigma.iRecordableService::stop(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Thu Mar 22 03:46:20 2007 T+182780.000000: enigma.pNavigation::recordService(pNavigation, *(1:0:1:6DD2:44D:1:C00000:0:0:0:,), *{}) +Thu Mar 22 03:46:20 2007 T+182780.000000: enigma.iRecordableService::prepare(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *('./hdd/movie/20070322 0346 - - Test Event Name.ts', 1174531600, 1174532605, 56422L), *{}) +Thu Mar 22 03:46:40 2007 T+182800.000000: enigma.iRecordableService::start(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Thu Mar 22 04:03:25 2007 T+183805.000000: enigma.pNavigation::stopRecordService(pNavigation, *(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:),), *{}) +Thu Mar 22 04:03:25 2007 T+183805.000000: enigma.iRecordableService::stop(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Fri Mar 23 03:46:20 2007 T+269180.000000: enigma.pNavigation::recordService(pNavigation, *(1:0:1:6DD2:44D:1:C00000:0:0:0:,), *{}) +Fri Mar 23 03:46:20 2007 T+269180.000000: enigma.iRecordableService::prepare(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *('./hdd/movie/20070323 0346 - - Test Event Name.ts', 1174618000, 1174619007, 56422L), *{}) +Fri Mar 23 03:46:40 2007 T+269200.000000: enigma.iRecordableService::start(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Fri Mar 23 04:03:27 2007 T+270207.000000: enigma.pNavigation::stopRecordService(pNavigation, *(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:),), *{}) +Fri Mar 23 04:03:27 2007 T+270207.000000: enigma.iRecordableService::stop(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Sat Mar 24 03:46:20 2007 T+355580.000000: enigma.pNavigation::recordService(pNavigation, *(1:0:1:6DD2:44D:1:C00000:0:0:0:,), *{}) +Sat Mar 24 03:46:20 2007 T+355580.000000: enigma.iRecordableService::prepare(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *('./hdd/movie/20070324 0346 - - Test Event Name.ts', 1174704400, 1174705409, 56422L), *{}) +Sat Mar 24 03:46:40 2007 T+355600.000000: enigma.iRecordableService::start(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Sat Mar 24 04:03:29 2007 T+356609.000000: enigma.pNavigation::stopRecordService(pNavigation, *(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:),), *{}) +Sat Mar 24 04:03:29 2007 T+356609.000000: enigma.iRecordableService::stop(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Sun Mar 25 03:46:20 2007 T+438380.000000: enigma.pNavigation::recordService(pNavigation, *(1:0:1:6DD2:44D:1:C00000:0:0:0:,), *{}) +Sun Mar 25 03:46:20 2007 T+438380.000000: enigma.iRecordableService::prepare(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *('./hdd/movie/20070325 0346 - - Test Event Name.ts', 1174787200, 1174788211, 56422L), *{}) +Sun Mar 25 03:46:40 2007 T+438400.000000: enigma.iRecordableService::start(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Sun Mar 25 04:03:31 2007 T+439411.000000: enigma.pNavigation::stopRecordService(pNavigation, *(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:),), *{}) +Sun Mar 25 04:03:31 2007 T+439411.000000: enigma.iRecordableService::stop(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Mon Mar 26 03:46:20 2007 T+524780.000000: enigma.pNavigation::recordService(pNavigation, *(1:0:1:6DD2:44D:1:C00000:0:0:0:,), *{}) +Mon Mar 26 03:46:20 2007 T+524780.000000: enigma.iRecordableService::prepare(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *('./hdd/movie/20070326 0346 - - Test Event Name.ts', 1174873600, 1174874613, 56422L), *{}) +Mon Mar 26 03:46:40 2007 T+524800.000000: enigma.iRecordableService::start(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Mon Mar 26 04:03:33 2007 T+525813.000000: enigma.pNavigation::stopRecordService(pNavigation, *(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:),), *{}) +Mon Mar 26 04:03:33 2007 T+525813.000000: enigma.iRecordableService::stop(iRecordableService(1:0:1:6DD2:44D:1:C00000:0:0:0:), *(), *{}) +Tue Mar 27 02:00:00 2007 T+604800.000000: <type 'NoneType'>::test_completed(None, *[], *{'test_name': 'test_timer_repeating_dst_start'}) diff --git a/tests/tests.py b/tests/tests.py new file mode 100644 index 0000000..869af84 --- /dev/null +++ b/tests/tests.py @@ -0,0 +1,3 @@ +class TestError(Exception): + def __init__(self, error): + Exception.__init__(self, error) diff --git a/timer.py b/timer.py new file mode 100644 index 0000000..9727abf --- /dev/null +++ b/timer.py @@ -0,0 +1,268 @@ +from bisect import insort +from time import strftime, time, localtime, mktime +from enigma import eTimer +import datetime + +class TimerEntry: + StateWaiting = 0 + StatePrepared = 1 + StateRunning = 2 + StateEnded = 3 + + def __init__(self, begin, end): + self.begin = begin + self.prepare_time = 20 + self.end = end + self.state = 0 + self.resetRepeated() + #begindate = localtime(self.begin) + #newdate = datetime.datetime(begindate.tm_year, begindate.tm_mon, begindate.tm_mday 0, 0, 0); + self.repeatedbegindate = begin + self.backoff = 0 + + self.disabled = False + + def resetState(self): + self.state = self.StateWaiting + self.cancelled = False + self.first_try_prepare = True + self.timeChanged() + + def resetRepeated(self): + self.repeated = int(0) + + def setRepeated(self, day): + self.repeated |= (2 ** day) + + def isRunning(self): + return self.state == self.StateRunning + + def addOneDay(self, timedatestruct): + oldHour = timedatestruct.tm_hour + newdate = (datetime.datetime(timedatestruct.tm_year, timedatestruct.tm_mon, timedatestruct.tm_mday, timedatestruct.tm_hour, timedatestruct.tm_min, timedatestruct.tm_sec) + datetime.timedelta(days=1)).timetuple() + if localtime(mktime(newdate)).tm_hour != oldHour: + return (datetime.datetime(timedatestruct.tm_year, timedatestruct.tm_mon, timedatestruct.tm_mday, timedatestruct.tm_hour, timedatestruct.tm_min, timedatestruct.tm_sec) + datetime.timedelta(days=2)).timetuple() + return newdate + + # update self.begin and self.end according to the self.repeated-flags + def processRepeated(self, findRunningEvent = True): + if (self.repeated != 0): + now = int(time()) + 1 + + #to avoid problems with daylight saving, we need to calculate with localtime, in struct_time representation + localrepeatedbegindate = localtime(self.repeatedbegindate) + localbegin = localtime(self.begin) + localend = localtime(self.end) + localnow = localtime(now) + + day = [] + flags = self.repeated + for x in (0, 1, 2, 3, 4, 5, 6): + if (flags & 1 == 1): + day.append(0) + else: + day.append(1) + flags = flags >> 1 + + # if day is NOT in the list of repeated days + # OR if the day IS in the list of the repeated days, check, if event is currently running... then if findRunningEvent is false, go to the next event + while ((day[localbegin.tm_wday] != 0) or (mktime(localrepeatedbegindate) > mktime(localbegin)) or + ((day[localbegin.tm_wday] == 0) and ((findRunningEvent and localend < localnow) or ((not findRunningEvent) and localbegin < localnow)))): + localbegin = self.addOneDay(localbegin) + localend = self.addOneDay(localend) + + #we now have a struct_time representation of begin and end in localtime, but we have to calculate back to (gmt) seconds since epoch + self.begin = int(mktime(localbegin)) + self.end = int(mktime(localend)) + if self.begin == self.end: + self.end += 1 + + self.timeChanged() + + def __lt__(self, o): + return self.getNextActivation() < o.getNextActivation() + + # must be overridden + def activate(self): + pass + + # can be overridden + def timeChanged(self): + pass + + # check if a timer entry must be skipped + def shouldSkip(self): + return self.end <= time() and self.state == TimerEntry.StateWaiting + + def abort(self): + self.end = time() + + # in case timer has not yet started, but gets aborted (so it's preparing), + # set begin to now. + if self.begin > self.end: + self.begin = self.end + + self.cancelled = True + + # must be overridden! + def getNextActivation(): + pass + + def disable(self): + self.disabled = True + + def enable(self): + self.disabled = False + +class Timer: + # the time between "polls". We do this because + # we want to account for time jumps etc. + # of course if they occur <100s before starting, + # it's not good. thus, you have to repoll when + # you change the time. + # + # this is just in case. We don't want the timer + # hanging. we use this "edge-triggered-polling-scheme" + # anyway, so why don't make it a bit more fool-proof? + MaxWaitTime = 100 + + def __init__(self): + self.timer_list = [ ] + self.processed_timers = [ ] + + self.timer = eTimer() + self.timer.callback.append(self.calcNextActivation) + self.lastActivation = time() + + self.calcNextActivation() + self.on_state_change = [ ] + + def stateChanged(self, entry): + for f in self.on_state_change: + f(entry) + + def cleanup(self): + self.processed_timers = [entry for entry in self.processed_timers if entry.disabled] + + def cleanupDaily(self, days): + limit = time() - (days * 3600 * 24) + self.processed_timers = [entry for entry in self.processed_timers if (entry.disabled and entry.repeated) or (entry.end and (entry.end > limit))] + + def addTimerEntry(self, entry, noRecalc=0): + entry.processRepeated() + + # when the timer has not yet started, and is already passed, + # don't go trough waiting/running/end-states, but sort it + # right into the processedTimers. + if entry.shouldSkip() or entry.state == TimerEntry.StateEnded or (entry.state == TimerEntry.StateWaiting and entry.disabled): + insort(self.processed_timers, entry) + entry.state = TimerEntry.StateEnded + else: + insort(self.timer_list, entry) + if not noRecalc: + self.calcNextActivation() + +# small piece of example code to understand how to use record simulation +# if NavigationInstance.instance: +# lst = [ ] +# cnt = 0 +# for timer in self.timer_list: +# print "timer", cnt +# cnt += 1 +# if timer.state == 0: #waiting +# lst.append(NavigationInstance.instance.recordService(timer.service_ref)) +# else: +# print "STATE: ", timer.state +# +# for rec in lst: +# if rec.start(True): #simulate +# print "FAILED!!!!!!!!!!!!" +# else: +# print "OK!!!!!!!!!!!!!!" +# NavigationInstance.instance.stopRecordService(rec) +# else: +# print "no NAV" + + def setNextActivation(self, now, when): + delay = int((when - now) * 1000) + self.timer.start(delay, 1) + self.next = when + + def calcNextActivation(self): + now = time() + if self.lastActivation > now: + print "[timer.py] timewarp - re-evaluating all processed timers." + tl = self.processed_timers + self.processed_timers = [ ] + for x in tl: + # simulate a "waiting" state to give them a chance to re-occure + x.resetState() + self.addTimerEntry(x, noRecalc=1) + + self.processActivation() + self.lastActivation = now + + min = int(now) + self.MaxWaitTime + + # calculate next activation point + if self.timer_list: + w = self.timer_list[0].getNextActivation() + if w < min: + min = w + + if int(now) < 1072224000 and min > now + 5: + # system time has not yet been set (before 01.01.2004), keep a short poll interval + min = now + 5 + + self.setNextActivation(now, min) + + def timeChanged(self, timer): + print "time changed" + timer.timeChanged() + if timer.state == TimerEntry.StateEnded: + self.processed_timers.remove(timer) + else: + try: + self.timer_list.remove(timer) + except: + print "[timer] Failed to remove, not in list" + return + # give the timer a chance to re-enqueue + if timer.state == TimerEntry.StateEnded: + timer.state = TimerEntry.StateWaiting + self.addTimerEntry(timer) + + def doActivate(self, w): + self.timer_list.remove(w) + + # when activating a timer which has already passed, + # simply abort the timer. don't run trough all the stages. + if w.shouldSkip(): + w.state = TimerEntry.StateEnded + else: + # when active returns true, this means "accepted". + # otherwise, the current state is kept. + # the timer entry itself will fix up the delay then. + if w.activate(): + w.state += 1 + + # did this timer reached the last state? + if w.state < TimerEntry.StateEnded: + # no, sort it into active list + insort(self.timer_list, w) + else: + # yes. Process repeated, and re-add. + if w.repeated: + w.processRepeated() + w.state = TimerEntry.StateWaiting + self.addTimerEntry(w) + else: + insort(self.processed_timers, w) + + self.stateChanged(w) + + def processActivation(self): + t = int(time()) + 1 + # we keep on processing the first entry until it goes into the future. + while self.timer_list and self.timer_list[0].getNextActivation() < t: + self.doActivate(self.timer_list[0]) diff --git a/timers.xml b/timers.xml new file mode 100644 index 0000000..cc4c50d --- /dev/null +++ b/timers.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" ?> +<timers> + <timer begin="2938" description="Kleiner Test" end="2999" serviceref="1:0:1:6DCA:44D:1:C00000:0:0:0:"/> + <timer begin="1131390236" description="instant record" end="1131490236" serviceref="1:0:1:6DCA:44D:1:C00000:0:0:0:"/> +</timers> \ No newline at end of file diff --git a/tools/Makefile.am b/tools/Makefile.am new file mode 100644 index 0000000..9e69b46 --- /dev/null +++ b/tools/Makefile.am @@ -0,0 +1,7 @@ +bin_SCRIPTS = enigma2.sh +lib_LTLIBRARIES = libopen.la + +libopen_la_SOURCES = libopen.c +libopen_la_LIBADD = @LIBDL_LIBS@ + +EXTRA_DIST = enigma2.sh.in diff --git a/tools/convert_argb_png.c b/tools/convert_argb_png.c new file mode 100644 index 0000000..9c2c0e5 --- /dev/null +++ b/tools/convert_argb_png.c @@ -0,0 +1,190 @@ +/* + convert_argb_png.c + + compile with: + + gcc convert_argb_png.c -o convert_argb_png -lpng -ljpeg + + this tool takes a 32bit RGB+A PNG file, for example produced by photoshop, + and splits the data into RGB and A. The RGB data is then lossy compressed with JPEG, + the alpha channel is lossless compressed as PNG. + + enigma2 can then pickup those two files, and combine them on load. This gives + the possibilty to use truecolor RGB pictures without storing them lossless + (which would be inefficient). + */ + +#include <stdio.h> +#include <stdlib.h> +#include <png.h> +#include <assert.h> +#include <jpeglib.h> + +int main(int argc, char **argv) +{ + if (argc != 4) + { + fprintf(stderr, "usage: %s <input.png> <output_basename> <jpeg-quality>\n", *argv); + return 1; + } + + const char *infile = argv[1]; + const char *outfile = argv[2]; + int jpeg_quality = atoi(argv[3]); + + FILE *fpin = fopen(infile, "rb"); + if (!fpin) + { + perror(infile); + return 1; + } + + unsigned char header[8]; + fread(header, 1, 8, fpin); + if (png_sig_cmp(header, 0, 8)) + { + fprintf(stderr, "this is not a PNG file\n"); + fclose(fpin); + return 1; + } + png_structp png_ptr = png_create_read_struct + (PNG_LIBPNG_VER_STRING, 0, 0, 0); + assert(png_ptr); + + png_infop info_ptr = png_create_info_struct(png_ptr); + assert(info_ptr); + + png_infop end_info = png_create_info_struct(png_ptr); + assert (end_info); + + if (setjmp(png_jmpbuf(png_ptr))) + { + png_destroy_read_struct(&png_ptr, &info_ptr, &end_info); + fclose(fpin); + fprintf(stderr, "failed.\n"); + return 1; + } + + png_init_io(png_ptr, fpin); + png_set_sig_bytes(png_ptr, 8); + png_read_png(png_ptr, info_ptr, PNG_TRANSFORM_IDENTITY, 0); + png_bytep * row_pointers = png_get_rows(png_ptr, info_ptr); + + png_uint_32 width, height; + int bit_depth, color_type; + png_get_IHDR(png_ptr, info_ptr, &width, &height, + &bit_depth, &color_type, 0, 0, 0); + + if (color_type != PNG_COLOR_TYPE_RGB_ALPHA) + { + fprintf(stderr, "input PNG must be RGB+Alpha\n"); + fclose(fpin); + return 1; + } + if (bit_depth != 8) + { + fprintf(stderr, "input bit depth must be 8bit!\n"); + fclose(fpin); + return 1; + } + printf("png is %ldx%ld\n", width, height); + int channels = png_get_channels(png_ptr, info_ptr); + if (channels != 4) + { + fprintf(stderr, "channels must be 4.\n"); + fclose(fpin); + return 1; + } + + fclose(fpin); + + /* now write jpeg */ + struct jpeg_compress_struct cinfo; + struct jpeg_error_mgr jerr; + JSAMPROW jrow_pointer[1]; + FILE *outfp; + + char filename[strlen(outfile) + 10]; + strcpy(filename, outfile); + strcat(filename, ".rgb.jpg"); + + outfp = fopen(filename, "wb"); + if (!outfp) + { + perror(filename); + return 1; + } + + cinfo.err = jpeg_std_error(&jerr); + jpeg_create_compress(&cinfo); + jpeg_stdio_dest(&cinfo, outfp); + + cinfo.image_width = width; + cinfo.image_height = height; + cinfo.input_components = 3; + cinfo.in_color_space = JCS_RGB; + jpeg_set_defaults(&cinfo); + jpeg_set_quality(&cinfo, jpeg_quality, 1); + jpeg_start_compress(&cinfo, 1); + + unsigned char *row = malloc(width * 3); + while (cinfo.next_scanline < cinfo.image_height) + { + int x; + jrow_pointer[0] = row; + unsigned char *source = row_pointers[cinfo.next_scanline]; + for (x = 0; x < width; ++x) + { + row[x * 3 + 0] = source[0]; + row[x * 3 + 1] = source[1]; + row[x * 3 + 2] = source[2]; + source += 4; + } + jpeg_write_scanlines(&cinfo, jrow_pointer, 1); + } + + jpeg_finish_compress(&cinfo); + fclose(outfp); + jpeg_destroy_compress(&cinfo); + + /* and write png */ + strcpy(filename, outfile); + strcat(filename, ".a.png"); + + outfp = fopen(filename, "wb"); + if (!outfp) + { + perror(filename); + return 1; + } + + png_structp png_ptr_w = png_create_write_struct(PNG_LIBPNG_VER_STRING, 0, 0, 0); + png_infop info_ptr_w = png_create_info_struct(png_ptr_w); + if (setjmp(png_jmpbuf(png_ptr_w))) + { + png_destroy_write_struct(&png_ptr_w, &info_ptr_w); + fclose(outfp); + return 1; + } + png_init_io(png_ptr_w, outfp); + png_set_IHDR(png_ptr_w, info_ptr_w, width, height, 8, PNG_COLOR_TYPE_GRAY, PNG_INTERLACE_NONE, PNG_COMPRESSION_TYPE_DEFAULT, PNG_FILTER_TYPE_DEFAULT); + + /* turn RGBA into A, in-place */ + int x, y; + for (y=0; y < height; ++y) + { + unsigned char *source = row_pointers[y]; + unsigned char *dst = source; + for (x=0; x < width; ++x) + { + *dst++ = source[3]; + source += 4; + } + } + png_set_rows(png_ptr_w, info_ptr_w, row_pointers); + png_write_png(png_ptr_w, info_ptr_w, PNG_TRANSFORM_IDENTITY, 0); + png_write_end(png_ptr_w, info_ptr_w); + png_destroy_write_struct(&png_ptr_w, &info_ptr_w); + fclose(outfp); + return 0; +} diff --git a/tools/create_picon_e1_to_e2.py b/tools/create_picon_e1_to_e2.py new file mode 100644 index 0000000..a28dc76 --- /dev/null +++ b/tools/create_picon_e1_to_e2.py @@ -0,0 +1,80 @@ +# +# create links for picon +# usage: create_picon_providers lamedb +# run in picon directory. +# It will read the servicenames from the lamedb and create symlinks +# for the servicereference names. + +import os, sys + +f = open(sys.argv[1]).readlines() + +f = f[f.index("services\n")+1:-3] + +while len(f) > 2: + ref = [int(x, 0x10) for x in f[0][:-1].split(':')] + name = f[1][:-1] + name = name.replace('\xc2\x87', '').replace('\xc2\x86', '') + + fields = f[2].split(',') + if len(fields) and fields[0][0] is 'p': + provider = fields[0].split(':')[1] + else: + provider = 'unknown' + + if ref[4] == 1: + servicetype = 'tv' + elif ref[4] == 2: + servicetype = 'radio' + else: + servicetype = 'unknown' + + sat = str(ref[1]/16/16/16/16) + +# SID:NS:TSID:ONID:STYPE:UNUSED(channelnumber in enigma1) +# X X X X D D + +# REFTYPE:FLAGS:STYPE:SID:TSID:ONID:NS:PARENT_SID:PARENT_TSID:UNUSED +# D D X X X X X X X X + + refstr = "1:0:%X:%X:%X:%X:%X:0:0:0" % (ref[4], ref[0], ref[2], ref[3], ref[1]) + refstr = refstr.replace(':', '_') + + filename = name + ".png" + linkname = refstr + ".png" + + filename = filename.replace('/', '_').replace('\\', '_').replace('&', '_').replace('\'', '').replace('"', '').replace('`', '').replace('*', '_').replace('?', '_').replace(' ', '_').replace('(', '_').replace(')', '_') + provider = provider.replace('/', '_').replace('\\', '_').replace('&', '_').replace('\'', '').replace('"', '').replace('`', '').replace('*', '_').replace('?', '_').replace(' ', '_').replace('(', '_').replace(')', '_') + filename = filename.replace('\n', '') + provider = provider.replace('\n', '') + + for i in range(len(filename)): + if ord(filename[i]) > 127: + filename = filename[0:i] + '_' + filename[i + 1:] + + for i in range(len(provider)): + if ord(provider[i]) > 127: + provider = provider[0:i] + '_' + provider[i + 1:] + + filename = sat + "_" + provider + "_" + servicetype + "_" + filename + + sat = sat[0:2] + '.' + sat[-1:] + 'e' + #TODO: west + + try: + os.makedirs(sat + '/' + servicetype) + except: + pass + + print sat[0:2] + '.' + sat[-1:] + 'E' + '_' + "%X" % ref[0] + '.png' + try: + os.rename(sat[0:-1] + 'E' + '_' + "%X" % ref[0] + '.png', sat + '/' + servicetype + '/' + filename) + except: + pass + + try: + os.symlink(filename, sat + '/' + servicetype + '/' + linkname) + except: + pass + + f =f[3:] diff --git a/tools/create_picon_links.py b/tools/create_picon_links.py new file mode 100644 index 0000000..8a92286 --- /dev/null +++ b/tools/create_picon_links.py @@ -0,0 +1,43 @@ +# +# create links for picon +# usage: create_picon_links lamedb +# run in picon directory. +# It will read the servicenames from the lamedb and create symlinks +# for the servicereference names. + +import os, sys + +f = open(sys.argv[1]).readlines() + +f = f[f.index("services\n")+1:-3] + +while len(f): + ref = [int(x, 0x10) for x in f[0][:-1].split(':')] + name = f[1][:-1] + + name = name.replace('\xc2\x87', '').replace('\xc2\x86', '') + +# SID:NS:TSID:ONID:STYPE:UNUSED(channelnumber in enigma1) +# X X X X D D + +# REFTYPE:FLAGS:STYPE:SID:TSID:ONID:NS:PARENT_SID:PARENT_TSID:UNUSED +# D D X X X X X X X X + + refstr = "1:0:%X:%X:%X:%X:%X:0:0:0" % (ref[4], ref[0], ref[2], ref[3], ref[1]) + refstr = refstr.replace(':', '_') + + filename = name + ".png" + linkname = refstr + ".png" + + filename = filename.replace('/', '_').replace('\\', '_').replace('&', '_').replace('\'', '').replace('"', '').replace('`', '') + filename = filename.replace('\n', '') + + for i in range(len(filename)): + if ord(filename[i]) > 127: + filename = filename[0:i] + '_' + filename[i + 1:] + + if os.access(filename, os.F_OK) and not os.access(linkname, os.F_OK): + os.symlink(filename, linkname) + else: + print "could not find %s (%s)" % (filename, name) + f =f[3:] diff --git a/tools/create_picon_providers.py b/tools/create_picon_providers.py new file mode 100644 index 0000000..ef8bd83 --- /dev/null +++ b/tools/create_picon_providers.py @@ -0,0 +1,71 @@ +# +# create links for picon +# usage: create_picon_providers lamedb +# run in picon directory. +# It will read the servicenames from the lamedb and create symlinks +# for the servicereference names. + +import os, sys + +f = open(sys.argv[1]).readlines() + +f = f[f.index("services\n")+1:-3] + +while len(f) > 2: + ref = [int(x, 0x10) for x in f[0][:-1].split(':')] + name = f[1][:-1] + name = name.replace('\xc2\x87', '').replace('\xc2\x86', '') + + fields = f[2].split(',') + if len(fields) and fields[0][0] is 'p': + provider = fields[0].split(':')[1] + else: + provider = 'unknown' + + if ref[4] == 1: + servicetype = 'tv' + elif ref[4] == 2: + servicetype = 'radio' + else: + servicetype = 'unknown' + + sat = str(ref[1]/16/16/16/16) + +# SID:NS:TSID:ONID:STYPE:UNUSED(channelnumber in enigma1) +# X X X X D D + +# REFTYPE:FLAGS:STYPE:SID:TSID:ONID:NS:PARENT_SID:PARENT_TSID:UNUSED +# D D X X X X X X X X + + refstr = "1:0:%X:%X:%X:%X:%X:0:0:0" % (ref[4], ref[0], ref[2], ref[3], ref[1]) + refstr = refstr.replace(':', '_') + + filename = name + ".png" + linkname = refstr + ".png" + + filename = filename.replace('/', '_').replace('\\', '_').replace('&', '_').replace('\'', '').replace('"', '').replace('`', '').replace('*', '_').replace('?', '_').replace(' ', '_').replace('(', '_').replace(')', '_') + provider = provider.replace('/', '_').replace('\\', '_').replace('&', '_').replace('\'', '').replace('"', '').replace('`', '').replace('*', '_').replace('?', '_').replace(' ', '_').replace('(', '_').replace(')', '_') + filename = filename.replace('\n', '') + provider = provider.replace('\n', '') + + for i in range(len(filename)): + if ord(filename[i]) > 127: + filename = filename[0:i] + '_' + filename[i + 1:] + + for i in range(len(provider)): + if ord(provider[i]) > 127: + provider = provider[0:i] + '_' + provider[i + 1:] + + filename = sat + "_" + provider + "_" + servicetype + "_" + filename + + try: + os.makedirs(sat + '/' + servicetype + '/' + provider) + except: + pass + + try: + os.symlink(filename, sat + '/' + servicetype + '/' + provider + '/' + linkname) + except: + pass + + f =f[3:] diff --git a/tools/create_picon_sats.py b/tools/create_picon_sats.py new file mode 100644 index 0000000..290700f --- /dev/null +++ b/tools/create_picon_sats.py @@ -0,0 +1,84 @@ +# +# create symlinks for picons +# usage: create_picon_sats lamedb +# run in picon directory. +# It will read the servicenames from the lamedb and create symlinks +# for the servicereference names. +# +# by pieterg, 2008 + +import os, sys + +f = open(sys.argv[1]).readlines() + +f = f[f.index("services\n")+1:-3] + +while len(f) > 2: + ref = [int(x, 0x10) for x in f[0][:-1].split(':')] + name = f[1][:-1] + name = name.replace('\xc2\x87', '').replace('\xc2\x86', '') + + fields = f[2].split(',') + if len(fields) and fields[0][0] is 'p': + provider = fields[0].split(':')[1] + else: + provider = 'unknown' + + if ref[4] == 2: + servicetype = 'radio' + else: + ref[4] = 1 + servicetype = 'tv' + + sat = str(ref[1]/16/16/16/16) + +# SID:NS:TSID:ONID:STYPE:UNUSED(channelnumber in enigma1) +# X X X X D D + +# REFTYPE:FLAGS:STYPE:SID:TSID:ONID:NS:PARENT_SID:PARENT_TSID:UNUSED +# D D X X X X X X X X + + refstr = "1:0:%X:%X:%X:%X:%X:0:0:0" % (ref[4], ref[0], ref[2], ref[3], ref[1]) + refstr = refstr.replace(':', '_') + + filename = name + ".png" + linkname = refstr + ".png" + + filename = filename.replace('/', '_').replace('\\', '_').replace('&', '_').replace('\'', '').replace('"', '').replace('`', '').replace('*', '_').replace('?', '_').replace(' ', '_').replace('(', '_').replace(')', '_').replace('|', '_') + provider = provider.replace('/', '_').replace('\\', '_').replace('&', '_').replace('\'', '').replace('"', '').replace('`', '').replace('*', '_').replace('?', '_').replace(' ', '_').replace('(', '_').replace(')', '_').replace('|', '_') + filename = filename.replace('\n', '') + provider = provider.replace('\n', '') + + for i in range(len(filename)): + if ord(filename[i]) > 127: + filename = filename[0:i] + '_' + filename[i + 1:] + + for i in range(len(provider)): + if ord(provider[i]) > 127: + provider = provider[0:i] + '_' + provider[i + 1:] + + if sat == "65535": + sat = "cable" + filename = sat + "_" + provider + "_" + servicetype + "_" + filename + else: + filename = sat + "_" + provider + "_" + servicetype + "_" + filename + + sat = sat[0:2] + '.' + sat[-1:] + 'e' + #TODO: west + + try: + os.makedirs(sat + '/' + servicetype) + except: + pass + + try: + os.rename(linkname, sat + '/' + servicetype + '/' + filename) + except: + pass + + try: + os.symlink(filename, sat + '/' + servicetype + '/' + linkname) + except: + pass + + f =f[3:] diff --git a/tools/enigma2.sh.in b/tools/enigma2.sh.in new file mode 100644 index 0000000..35a972c --- /dev/null +++ b/tools/enigma2.sh.in @@ -0,0 +1,71 @@ +#!/bin/sh + +prefix=@prefix@ +exec_prefix=@exec_prefix@ +datarootdir=@datarootdir@ + +if [ -x @bindir@/showiframe ]; then + if [ -f @sysconfdir@/enigma2/backdrop.mvi ]; then + @bindir@/showiframe @sysconfdir@/enigma2/backdrop.mvi + elif [ -f @sysconfdir@/enigma2/bootlogo.mvi ]; then + @bindir@/showiframe @sysconfdir@/enigma2/bootlogo.mvi + elif [ -f @datadir@/bootlogo.mvi ]; then + @bindir@/showiframe @datadir@/bootlogo.mvi + fi +fi + +# hook to execute scripts always before enigma2 start +if [ -x @bindir@/enigma2_pre_start.sh ]; then + @bindir@/enigma2_pre_start.sh +fi + +if [ -d /home/root ]; then + cd /home/root +fi + +LIBS=@libdir@/libopen.so.0.0.0 + +sync +LD_PRELOAD=$LIBS @bindir@/enigma2 + +# enigma2 exit codes: +# +# 1 - halt +# 2 - reboot +# 3 - restart enigma +# +# >128 signal + +ret=$? +case $ret in + 1) + /sbin/halt + ;; + 2) + /sbin/reboot + ;; + 3) + rm -fR /home/root/.gstreamer-0.10 + ;; + 4) + /sbin/rmmod lcd + /usr/sbin/fpupgrade --upgrade 2>&1 | tee /home/root/fpupgrade.log + sleep 1; + /sbin/rmmod fp + /sbin/modprobe fp + /sbin/reboot + ;; + 5) + if ! grep -q config.misc.RestartUI /etc/enigma2/settings; then + echo "config.misc.RestartUI=true" >>/etc/enigma2/settings + fi + ;; + 42) + # bind the console (when available) + [ -f /sys/class/vtconsole/vtcon1/bind ] && echo 1 > /sys/class/vtconsole/vtcon1/bind + opkg upgrade 2>&1 | tee /home/root/ipkgupgrade.log + /sbin/reboot + ;; + *) + ;; +esac diff --git a/tools/genmetaindex.py b/tools/genmetaindex.py new file mode 100644 index 0000000..2d186db --- /dev/null +++ b/tools/genmetaindex.py @@ -0,0 +1,50 @@ +# usage: genmetaindex.py <xml-files> > index.xml +import sys, os +from xml.etree.ElementTree import ElementTree, Element + +root = Element("index") + +for file in sys.argv[1:]: + p = ElementTree() + p.parse(file) + + package = Element("package") + package.set("details", os.path.basename(file)) + + # we need all prerequisites + package.append(p.find("prerequisites")) + + info = None + # we need some of the info, but not all + for i in p.findall("info"): + if not info: + info = i + assert info + + for i in info[:]: + if i.tag not in ["name", "packagename", "packagetype", "shortdescription"]: + info.remove(i) + + for i in info[:]: + package.set(i.tag, i.text) + + root.append(package) + +def indent(elem, level=0): + i = "\n" + level*"\t" + if len(elem): + if not elem.text or not elem.text.strip(): + elem.text = i + "\t" + if not elem.tail or not elem.tail.strip(): + elem.tail = i + for elem in elem: + indent(elem, level+1) + if not elem.tail or not elem.tail.strip(): + elem.tail = i + else: + if level and (not elem.tail or not elem.tail.strip()): + elem.tail = i + +indent(root) + +ElementTree(root).write(sys.stdout) diff --git a/tools/host_tools/FormatConverter/README b/tools/host_tools/FormatConverter/README new file mode 100644 index 0000000..8584b59 --- /dev/null +++ b/tools/host_tools/FormatConverter/README @@ -0,0 +1,7 @@ +extendable format converter + +Can be used to convert lamedb to a satellites.xml file, including TSID/ONID entries for example to check diseqc setups with the enigma2 diseqc checker plugin. + +Just start lamedb2satxml for usage information. + +A more general usage interface is present in main.py, where you can call the different modules directly via a console user interface. diff --git a/tools/host_tools/FormatConverter/datasource.py b/tools/host_tools/FormatConverter/datasource.py new file mode 100644 index 0000000..1255d42 --- /dev/null +++ b/tools/host_tools/FormatConverter/datasource.py @@ -0,0 +1,109 @@ +from input import inputChoices + +class datasource: + def __init__(self): + self.clear() + + def setDatasources(self, datasources): + self.datasources = datasources + + def getCapabilities(self): + return [] + + def getName(self): + return "N/A" + + def getStatus(self): + text = str(len(self.transponderlist.keys())) + " Satellites" + "\n" + return text + + def printAll(self): + for sat in self.transponderlist.keys(): + print "***********" + print "sat:", sat, self.satnames[sat] + for transponder in self.transponderlist[sat]: + print transponder + + def clear(self): + self.transponderlist = {} + self.satnames = {} + + def read(self): + pass + + def write(self): + pass + + def addSat(self, satname, satpos): + if not self.transponderlist.has_key(satpos): + self.transponderlist[satpos] = [] + self.satnames[satpos] = satname + + def addTransponder(self, satpos, transponder): + if len(transponder.keys()) >= 6: + self.transponderlist[satpos].append(transponder) + +class genericdatasource(datasource): + def __init__(self): + datasource.__init__(self) + self.source = self.destination = None + + def getName(self): + return "Generic Datasource" + + def getCapabilities(self): + return [("copy data from one source to another", self.copy), ("merge data from one source into another", self.merge)] + + def copy(self): + self.copymerge(action = "copy") + + def merge(self): + self.copymerge(action = "merge") + + def copymerge(self, action = "copy"): + choice = -1 + while choice is not None: + choice = inputChoices(["select source", "select destination", "copy now!"]) + if choice == 0: + print "\nselect source:" + self.source = self.selectDatasource() + elif choice == 1: + print "\nselect destination" + self.destination = self.selectDatasource() + elif choice == 2: + self.docopymerge(action) + + def docopymerge(self, action = "copy"): + if self.source is None: + print "select a source first!" + elif self.destination is None: + print "select a destination first!" + else: + if action == "copy": + print "copying ", + elif action == "merge": + print "merging ", + print "from %s to %s" % (self.source.getName(), self.destination.getName()) + countsat = 0 + counttransponder = 0 + if action == "copy": + self.destination.clear() + for satpos in self.source.transponderlist.keys(): + countsat += 1 + self.destination.addSat(self.source.satnames[satpos], satpos) + for transponder in self.source.transponderlist[satpos]: + counttransponder += 1 + self.destination.addTransponder(satpos, transponder) + print "copied %d sats with %d transponders" % (countsat, counttransponder) + + def selectDatasource(self): + list = [] + sources = [] + for source in self.datasources: + if source != self: + list.append(source.getName() + (" (%d sats)" % len(source.transponderlist.keys()))) + sources.append(source) + choice = inputChoices(list) + if choice is None: + return None + return sources[choice] \ No newline at end of file diff --git a/tools/host_tools/FormatConverter/input.py b/tools/host_tools/FormatConverter/input.py new file mode 100644 index 0000000..fd11348 --- /dev/null +++ b/tools/host_tools/FormatConverter/input.py @@ -0,0 +1,23 @@ +import sys + +def inputText(): + input = sys.stdin.readline() + return input.strip() + +def inputChoices(list, backcmd = "b", backtext = "back"): + repeat = True + while(repeat): + repeat = False + count = 0 + for item in list: + print count, "-", item + count += 1 + print backcmd, "-", backtext + input = inputText() + if input == backcmd: + return None + + action = int(input) + if action >= len(list): + repeat = True + return action \ No newline at end of file diff --git a/tools/host_tools/FormatConverter/lamedb.py b/tools/host_tools/FormatConverter/lamedb.py new file mode 100644 index 0000000..d328f0f --- /dev/null +++ b/tools/host_tools/FormatConverter/lamedb.py @@ -0,0 +1,80 @@ +from datasource import datasource + +class lamedb(datasource): + def __init__(self, filename = "lamedb"): + datasource.__init__(self) + self.setFilename(filename) + + def setFilename(self, filename): + self.filename = filename + + def getName(self): + return "lamedb" + + def getCapabilities(self): + return [("read file", self.read), ("print all", self.printAll)] + + def read(self): + inputfile = open(self.filename, "r") + lines = inputfile.readlines() + inputfile.close() + + versionstring = lines[0].split('/') + version = int(versionstring[1]) + if 3 > version or 4 < version: + print "unsupported lamedb version" + return + + transpondersreading = False + sats = {} + transponders = {} + for line in lines: + if line.strip() == "transponders": + transpondersreading = True + continue + if line.strip() == "services": + transpondersreading = False + continue + if transpondersreading: + if ord(line[0]) == 9: + transponder = line.strip().split(' ')[1].split(':') + sat = transponder[4] + if not sats.has_key(sat): + sats[sat] = [] + sats[sat].append((transponder, tsid, onid)) + tsid = None + onid = None + elif line.strip() != "/" and line.strip() != "end": + data = line.strip().split(":") + tsid = str(int(data[1], 16)) + onid = str(int(data[2], 16)) + satlist = sats.keys() + satlist.sort() + + for sat in satlist: + print sat + self.addSat(sat, sat) + transponders = sats[sat] + transponders.sort(key = lambda a: a[0]) + for transpondertuple in transponders: + transponder = transpondertuple[0] + tsid = transpondertuple[1] + onid = transpondertuple[2] + print transponder, tsid, onid + tmp_transponder = {} + tmp_transponder["frequency"] = transponder[0] + tmp_transponder["symbol_rate"] = transponder[1] + tmp_transponder["polarization"] = transponder[2] + tmp_transponder["fec"] = transponder[3] + if version == 3: + if len(transponder) > 6: + tmp_transponder["system"] = transponder[6] + tmp_transponder["modulation"] = transponder[7] + elif version == 4: + if len(transponder) > 7: + tmp_transponder["system"] = transponder[7] + tmp_transponder["modulation"] = transponder[8] + if (tsid != "1" or onid != "1"): + tmp_transponder["tsid"] = transponder[0] + tmp_transponder["onid"] = transponder[0] + self.addTransponder(sat, tmp_transponder) diff --git a/tools/host_tools/FormatConverter/lamedb2satxml.py b/tools/host_tools/FormatConverter/lamedb2satxml.py new file mode 100644 index 0000000..d6adc1f --- /dev/null +++ b/tools/host_tools/FormatConverter/lamedb2satxml.py @@ -0,0 +1,21 @@ +#!/usr/bin/python +from datasource import genericdatasource +from satxml import satxml +from lamedb import lamedb + +import sys + +if len(sys.argv) != 3: + print "usage: %s <lamedb> <satellites.xml>" % sys.argv[0] + sys.exit() + +gen = genericdatasource() +db = lamedb(sys.argv[1]) +xml = satxml(sys.argv[2]) + +db.read() +gen.source = db +gen.destination = xml +gen.docopymerge(action = "copy") +xml.write() + diff --git a/tools/host_tools/FormatConverter/main.py b/tools/host_tools/FormatConverter/main.py new file mode 100644 index 0000000..d3cc985 --- /dev/null +++ b/tools/host_tools/FormatConverter/main.py @@ -0,0 +1,43 @@ +#!/usr/bin/python +from datasource import genericdatasource +from satxml import satxml +from lamedb import lamedb +from input import * +import sys +import os + +maindata = genericdatasource() + +sources = [satxml, lamedb] + +datasources = [maindata] + +for source in sources: + datasources.append(source()) + +for source in datasources: + source.setDatasources(datasources) + +while(True): + os.system("/usr/bin/clear") + list = [] + for index in range(len(datasources)): + list.append(datasources[index].getName() + (" (%d sats)" % len(datasources[index].transponderlist.keys()))) + index = inputChoices(list, "q", "quit") + if index is None: + break + + while(True): + print datasources[index].getStatus() + list = [] + for action in datasources[index].getCapabilities(): + list.append(action[0]) + action = inputChoices(list) + if action is None: + break + + datasources[index].getCapabilities()[action][1]() + #except: + # print sys.exc_info() + # print "sorry, could not execute that command" + diff --git a/tools/host_tools/FormatConverter/satxml.py b/tools/host_tools/FormatConverter/satxml.py new file mode 100644 index 0000000..9f79c57 --- /dev/null +++ b/tools/host_tools/FormatConverter/satxml.py @@ -0,0 +1,86 @@ +import os +from datasource import datasource +from xml.dom import minidom +from xml.dom.minidom import Document +from input import inputText + +class satxml(datasource): + def __init__(self, filename = "satellites.xml"): + self.filename = filename + datasource.__init__(self) + + if not os.path.isfile(filename): + print "File %s doesn't exist. Creating it." % filename + + def getStatus(self): + text = datasource.getStatus(self) + return text + + def getCapabilities(self): + return [("set filename", self.setFilename), ("read file", self.read), ("write file", self.write), ("print all", self.printAll)] + + def getName(self): + return "satellites.xml" + + def setFilename(self): + print "Please give a filename <satellites.xml>:" + filename = inputText() + if filename == "": + self.filename = "satellites.xml" + else: + self.filename = filename + print "Filename set to %s" % self.filename + + def read(self): + basicsatxml = minidom.parse(self.filename) + + for sat in basicsatxml.firstChild.childNodes: + if sat.nodeType == sat.ELEMENT_NODE and sat.localName == "sat": + print sat.localName + satname = str(sat.getAttribute("name")) + satpos = str(sat.getAttribute("position")) + self.addSat(satname, satpos) + for transponder in sat.childNodes: + if transponder.nodeType == transponder.ELEMENT_NODE and transponder.localName == "transponder": + parameters = {} + paramlist = ["frequency", "symbol_rate", "polarization", "fec", "system", "modulation", "tsid", "onid"] + for param in paramlist: + entry = str(transponder.getAttribute(param)) + if entry != "": + parameters[param] = entry + if len(parameters.keys()) > 1: + self.addTransponder(satpos, parameters) + print self.transponderlist + + def write(self): + satxml = Document() + satellites = satxml.createElement("satellites") + satxml.appendChild(satellites) + satlist = self.transponderlist.keys() + print self.transponderlist + satlist.sort() + + for sat in satlist: + xmlsat = satxml.createElement("sat") + xmlsat.setAttribute("name", self.satnames[sat]) + xmlsat.setAttribute("flags", "1") + xmlsat.setAttribute("position", sat) + satellites.appendChild(xmlsat) + transponders = self.transponderlist[sat] + transponders.sort(key = lambda a: a["frequency"]) + + for transponder in transponders: + xmltransponder = satxml.createElement("transponder") + paramlist = ["frequency", "symbol_rate", "polarization", "fec", "system", "modulation", "tsid", "onid"] + for param in paramlist: + if transponder.has_key(param): + xmltransponder.setAttribute(param, transponder[param]) + xmlsat.appendChild(xmltransponder) + prettyxml = satxml.toprettyxml() + print prettyxml + file = open(self.filename, "w") + file.write(prettyxml) + file.close() + + + diff --git a/tools/libopen.c b/tools/libopen.c new file mode 100644 index 0000000..f6b935e --- /dev/null +++ b/tools/libopen.c @@ -0,0 +1,287 @@ +#include <sys/types.h> +#include <sys/stat.h> +#include <sys/socket.h> +#include <fcntl.h> +#include <dlfcn.h> +#include <stdio.h> +#include <stdlib.h> + +#undef DEBUG + +int open64(const char *pathname, int flags, ...) +{ + typedef int (*FUNC_PTR) (const char* pathname, int flags, ...); + static FUNC_PTR libc_open64; + int fd=-1; + if (!libc_open64) + { + void *handle; + char *error; + handle = dlopen("/lib/libc.so.6", RTLD_LAZY); + if (!handle) + { + fputs(dlerror(), stderr); + exit(1); + } + libc_open64 = (FUNC_PTR) dlsym(handle, "open64"); + if ((error = dlerror()) != NULL) { + fprintf(stderr, "%s\n", error); + exit(1); + } + } + fd = libc_open64(pathname, flags); + if (fd >= 0) + { + int fd_flags = fcntl(fd, F_GETFD, 0); + if (fd_flags >= 0) + { + fd_flags |= FD_CLOEXEC; + fcntl(fd, F_SETFD, fd_flags); + } +#ifdef DEBUG + fprintf(stdout, "open64 %s, flags %d returned fd %d\n", pathname, flags, fd); +#endif + } + return fd; +} + +#if _FILE_OFFSET_BITS != 64 +int open(const char *pathname, int flags, ...) +{ + typedef int (*FUNC_PTR) (const char* pathname, int flags, ...); + static FUNC_PTR libc_open; + int fd=-1; + if (!libc_open) + { + void *handle; + char *error; + handle = dlopen("/lib/libc.so.6", RTLD_LAZY); + if (!handle) + { + fputs(dlerror(), stderr); + exit(1); + } + libc_open = (FUNC_PTR) dlsym(handle, "open"); + if ((error = dlerror()) != NULL) { + fprintf(stderr, "%s\n", error); + exit(1); + } + } + fd = libc_open(pathname, flags); + if (fd >= 0) + { + int fd_flags = fcntl(fd, F_GETFD, 0); + if (fd_flags >= 0) + { + fd_flags |= FD_CLOEXEC; + fcntl(fd, F_SETFD, fd_flags); + } +#ifdef DEBUG + fprintf(stdout, "open %s, flags %d returned fd %d\n", pathname, flags, fd); +#endif + } + return fd; +} +#endif + +FILE *fopen64(const char *pathname, const char *mode) +{ + typedef FILE *(*FUNC_PTR) (const char* pathname, const char *mode); + static FUNC_PTR libc_fopen64; + FILE *f=0; + if (!libc_fopen64) + { + void *handle; + char *error; + handle = dlopen("/lib/libc.so.6", RTLD_LAZY); + if (!handle) + { + fputs(dlerror(), stderr); + exit(1); + } + libc_fopen64 = (FUNC_PTR) dlsym(handle, "fopen64"); + if ((error = dlerror()) != NULL) { + fprintf(stderr, "%s\n", error); + exit(1); + } + } + f = libc_fopen64(pathname, mode); + if (f) + { + int fd = fileno(f); + int fd_flags = fcntl(fd, F_GETFD, 0); + if (fd_flags >= 0) + { + fd_flags |= FD_CLOEXEC; + fcntl(fd, F_SETFD, fd_flags); + } +#ifdef DEBUG + fprintf(stdout, "fopen64 %s, mode %s returned FILE* %p fd %d\n", pathname, mode, f, fd); +#endif + } + return f; +} + +#if _FILE_OFFSET_BITS != 64 +FILE *fopen(const char *pathname, const char *mode) +{ + typedef FILE *(*FUNC_PTR) (const char* pathname, const char *mode); + static FUNC_PTR libc_fopen; + FILE *f=0; + if (!libc_fopen) + { + void *handle; + char *error; + handle = dlopen("/lib/libc.so.6", RTLD_LAZY); + if (!handle) + { + fputs(dlerror(), stderr); + exit(1); + } + libc_fopen = (FUNC_PTR) dlsym(handle, "fopen"); + if ((error = dlerror()) != NULL) { + fprintf(stderr, "%s\n", error); + exit(1); + } + } + f = libc_fopen(pathname, mode); + if (f) + { + int fd = fileno(f); + int fd_flags = fcntl(fd, F_GETFD, 0); + if (fd_flags >= 0) + { + fd_flags |= FD_CLOEXEC; + fcntl(fd, F_SETFD, fd_flags); + } +#ifdef DEBUG + fprintf(stdout, "fopen %s, mode %s returned FILE* %p fd %d\n", pathname, mode, f, fd); +#endif + } + return f; +} +#endif + +int socket(int domain, int type, int protocol) +{ + typedef int (*FUNC_PTR) (int domain, int type, int protocol); + static FUNC_PTR libc_socket; + int fd=-1; + if (!libc_socket) + { + void *handle; + char *error; + handle = dlopen("/lib/libc.so.6", RTLD_LAZY); + if (!handle) + { + fputs(dlerror(), stderr); + exit(1); + } + libc_socket = (FUNC_PTR) dlsym(handle, "socket"); + if ((error = dlerror()) != NULL) { + fprintf(stderr, "%s\n", error); + exit(1); + } + } + fd = libc_socket(domain, type, protocol); + if (fd >= 0) + { + int fd_flags = fcntl(fd, F_GETFD, 0); + if (fd_flags >= 0) + { + fd_flags |= FD_CLOEXEC; + fcntl(fd, F_SETFD, fd_flags); + } +#ifdef DEBUG + fprintf(stdout, "socket fd %d\n", fd); +#endif + } + return fd; +} + +int socketpair(int d, int type, int protocol, int sv[2]) +{ + typedef int (*FUNC_PTR) (int d, int type, int protocol, int sv[2]); + static FUNC_PTR libc_socketpair; + int ret=-1; + if (!libc_socketpair) + { + void *handle; + char *error; + handle = dlopen("/lib/libc.so.6", RTLD_LAZY); + if (!handle) + { + fputs(dlerror(), stderr); + exit(1); + } + libc_socketpair = (FUNC_PTR) dlsym(handle, "socketpair"); + if ((error = dlerror()) != NULL) { + fprintf(stderr, "%s\n", error); + exit(1); + } + } + ret = libc_socketpair(d, type, protocol, sv); + if (!ret) + { + int fd_flags = fcntl(sv[0], F_GETFD, 0); + if (fd_flags >= 0) + { + fd_flags |= FD_CLOEXEC; + fcntl(sv[0], F_SETFD, fd_flags); + } + fd_flags = fcntl(sv[1], F_GETFD, 0); + if (fd_flags >= 0) + { + fd_flags |= FD_CLOEXEC; + fcntl(sv[1], F_SETFD, fd_flags); + } +#ifdef DEBUG + fprintf(stdout, "socketpair fd %d %d\n", sv[0], sv[1]); +#endif + } + return ret; +} + +int pipe(int modus[2]) +{ + typedef int (*FUNC_PTR) (int modus[2]); + static FUNC_PTR libc_pipe; + int ret=-1; + if (!libc_pipe) + { + void *handle; + char *error; + handle = dlopen("/lib/libc.so.6", RTLD_LAZY); + if (!handle) + { + fputs(dlerror(), stderr); + exit(1); + } + libc_pipe = (FUNC_PTR) dlsym(handle, "pipe"); + if ((error = dlerror()) != NULL) { + fprintf(stderr, "%s\n", error); + exit(1); + } + } + ret = libc_pipe(modus); + if (!ret) + { + int fd_flags = fcntl(modus[0], F_GETFD, 0); + if (fd_flags >= 0) + { + fd_flags |= FD_CLOEXEC; + fcntl(modus[0], F_SETFD, fd_flags); + } + fd_flags = fcntl(modus[1], F_GETFD, 0); + if (fd_flags >= 0) + { + fd_flags |= FD_CLOEXEC; + fcntl(modus[1], F_SETFD, fd_flags); + } +#ifdef DEBUG + fprintf(stdout, "pipe fds[%d, %d]\n", modus[0], modus[1]); +#endif + } + return ret; +} + diff --git a/tools/svg2skin.py b/tools/svg2skin.py new file mode 100644 index 0000000..dfb47b5 --- /dev/null +++ b/tools/svg2skin.py @@ -0,0 +1,93 @@ +#!/usr/bin/python +# don't expect too much. +# this is a really simple&stupid svg parser, which will use rectangles +# and text fields to produce <widget> snippets for a skin. +# use object "id" fields for source names if you want. +# extracting font information is buggy. +# if you want text fields, please use flow text regions, instead of simple +# text. otherwise, width and height are unknown. +# +# tested only with a single inkscape-generated SVG. + +import sys +import os +import string +from xml.sax import make_parser +from xml.sax.handler import ContentHandler + +def getattrs(attrs, *a): + res = [] + for x in a: + res.append(float(attrs[x])) + return res + +def parsedict(attrs): + if not attrs: + return [] + d = attrs.split(';') + r = { } + for x in d: + (key, val) = x.split(':') + r[key] = val + return r + +def px(x): + return int(float(x[:-2]) + .5) + +def contains(box_o, box_i): + return box_o[0] <= box_i[0] and box_o[1] <= box_i[1] and box_o[2] >= box_i[2] and box_o[3] >= box_i[3] + +class parseXML(ContentHandler): + def __init__(self): + self.isPointsElement, self.isReboundsElement = 0, 0 + self.bbox = None + self.find_bbox = False + self.flow = None + + def startElement(self, name, attrs): + if self.find_bbox: + if name != "rect": + return + box = getattrs(attrs, "x", "y", "width", "height") + if not self.bbox or contains(box, self.bbox): + self.bbox = box + return + + if name == "rect": + (x, y, width, height) = getattrs(attrs, "x", "y", "width", "height") + x -= self.bbox[0] + y -= self.bbox[1] + id = attrs["id"] + if self.flow: + id = self.flow + self.flow = None + styles = parsedict(attrs.get("style", "")) + elif name == "text": + (x, y) = getattrs(attrs, "x", "y") + x -= self.bbox[0] + y -= self.bbox[1] + width, height = 0, 0 + styles = parsedict(attrs["style"]) + id = attrs["id"] + elif name == "flowRoot": + self.flow = attrs["id"] + return + else: + return + + if "font-size" in styles: + font = ' font="Regular;%d"' % px(styles["font-size"]) + else: + font = "" + print """\t\t<widget source="%s" render="Label" position="%d,%d" size="%d,%d" %s />""" % (id, x, y, width, height, font) + +parser = make_parser() +contentHandler = parseXML() +parser.setContentHandler(contentHandler) +contentHandler.find_bbox = True +parser.parse(sys.argv[1]) +bboxi = tuple([int(x) for x in contentHandler.bbox]) +contentHandler.find_bbox = False +print '\t<screen name="" position="%d,%d" size="%d,%d" title="">' % bboxi +parser.parse(sys.argv[1]) +print '\t</screen>' diff --git a/userbouquet.orf.tv b/userbouquet.orf.tv new file mode 100644 index 0000000..d9c22c5 --- /dev/null +++ b/userbouquet.orf.tv @@ -0,0 +1,15 @@ +#NAME ORF +#SERVICE: 1:0:1:32d4:45d:1:c00000:0:0:0: +#SERVICE: 1:0:1:32c9:45d:1:c00000:0:0:0: +#SERVICE: 1:0:1:32ca:45d:1:c00000:0:0:0: +#SERVICE: 1:0:1:32cd:45d:1:c00000:0:0:0: +#SERVICE: 1:0:1:32d3:45d:1:c00000:0:0:0: +#SERVICE: 1:0:1:32cc:45d:1:c00000:0:0:0: +#SERVICE: 1:0:1:32ce:45d:1:c00000:0:0:0: +#SERVICE: 1:0:1:32cf:45d:1:c00000:0:0:0: +#SERVICE: 1:0:1:32d2:45d:1:c00000:0:0:0: +#SERVICE: 1:0:1:32d0:45d:1:c00000:0:0:0: +#SERVICE: 1:0:1:32d1:45d:1:c00000:0:0:0: +#SERVICE: 1:0:1:32cb:45d:1:c00000:0:0:0: +#SERVICE: 1:0:1:32d6:45d:1:c00000:0:0:0: +#SERVICE: 1:0:1:332d:45b:1:c00000:0:0:0: diff --git a/userbouquet.premiere.tv b/userbouquet.premiere.tv new file mode 100644 index 0000000..7142fb1 --- /dev/null +++ b/userbouquet.premiere.tv @@ -0,0 +1,36 @@ +#NAME PREMIERE +#SERVICE: 1:0:1:2a:4:85:c00000:0:0:0: +#SERVICE: 1:0:1:c:11:85:c00000:0:0:0: +#SERVICE: 1:0:1:15:11:85:c00000:0:0:0: +#SERVICE: 1:0:1:32:1:85:c00000:0:0:0: +#SERVICE: 1:0:1:298:4:85:c00000:0:0:0: +#SERVICE: 1:0:1:34:7:85:c00000:0:0:0: +#SERVICE: 1:0:1:18:1:85:c00000:0:0:0: +#SERVICE: 1:0:1:201:4:85:c00000:0:0:0: +#SERVICE: 1:0:1:e:11:85:c00000:0:0:0: +#SERVICE: 1:0:1:d:11:85:c00000:0:0:0: +#SERVICE: 1:0:1:22:11:85:c00000:0:0:0: +#SERVICE: 1:0:1:f:11:85:c00000:0:0:0: +#SERVICE: 1:0:1:1c:11:85:c00000:0:0:0: +#SERVICE: 1:0:1:206:1:85:c00000:0:0:0: +#SERVICE: 1:0:1:16:1:85:c00000:0:0:0: +#SERVICE: 1:0:1:a8:1:85:c00000:0:0:0: +#SERVICE: 1:0:1:13:11:85:c00000:0:0:0: +#SERVICE: 1:0:1:203:11:85:c00000:0:0:0: +#SERVICE: 1:0:1:24:11:85:c00000:0:0:0: +#SERVICE: 1:0:1:a:2:85:c00000:0:0:0: +#SERVICE: 1:0:1:b:2:85:c00000:0:0:0: +#SERVICE: 1:0:1:2b:2:85:c00000:0:0:0: +#SERVICE: 1:0:1:9:2:85:c00000:0:0:0: +#SERVICE: 1:0:1:1d:2:85:c00000:0:0:0: +#SERVICE: 1:0:1:29:2:85:c00000:0:0:0: +#SERVICE: 1:0:1:14:2:85:c00000:0:0:0: +#SERVICE: 1:0:1:35:7:85:c00000:0:0:0: +#SERVICE: 1:0:1:12:4:85:c00000:0:0:0: +#SERVICE: 1:0:1:17:4:85:c00000:0:0:0: +#SERVICE: 1:0:1:204:4:85:c00000:0:0:0: +#SERVICE: 1:0:1:10:4:85:c00000:0:0:0: +#SERVICE: 1:0:1:11:3:85:c00000:0:0:0: +#SERVICE: 1:0:1:8:2:85:c00000:0:0:0: +#SERVICE: 1:0:1:1b:4:85:c00000:0:0:0: +#SERVICE: 1:0:1:20:21:85:c00000:0:0:0: diff --git a/userbouquet.srgssr.tv b/userbouquet.srgssr.tv new file mode 100644 index 0000000..aa445f7 --- /dev/null +++ b/userbouquet.srgssr.tv @@ -0,0 +1,9 @@ +#NAME SRG SSR IDEE SUISSE +#SERVICE: 1:0:1:38e:2134:13e:820000:0:0:0: +#SERVICE: 1:0:1:385:2134:13e:820000:0:0:0: +#SERVICE: 1:0:1:38b:2134:13e:820000:0:0:0: +#SERVICE: 1:0:1:38f:2134:13e:820000:0:0:0: +#SERVICE: 1:0:1:387:2134:13e:820000:0:0:0: +#SERVICE: 1:0:1:38d:2134:13e:820000:0:0:0: +#SERVICE: 1:0:1:386:2134:13e:820000:0:0:0: +#SERVICE: 1:0:1:38c:2134:13e:820000:0:0:0: